summaryrefslogtreecommitdiff
path: root/asm/SDK
diff options
context:
space:
mode:
Diffstat (limited to 'asm/SDK')
-rw-r--r--asm/SDK/AXFX/AXFXChorus.s107
-rw-r--r--asm/SDK/AXFX/AXFXChorusExp.s753
-rw-r--r--asm/SDK/AXFX/AXFXDelay.s (renamed from asm/SDK/AX/AXFXDelay.s)0
-rw-r--r--asm/SDK/AXFX/AXFXHooks.s27
-rw-r--r--asm/SDK/AXFX/AXFXLfoTable.s9
-rw-r--r--asm/SDK/AXFX/AXFXReverbHi.s (renamed from asm/SDK/AX/AXFXReverbHi.s)0
-rw-r--r--asm/SDK/AXFX/AXFXReverbHiDpl2.s99
-rw-r--r--asm/SDK/AXFX/AXFXReverbHiExp.s (renamed from asm/SDK/AX/AXFXReverbHiExp.s)3
-rw-r--r--asm/SDK/AXFX/AXFXReverbHiExpDpl2.s1125
-rw-r--r--asm/SDK/AXFX/AXFXReverbStd.s77
-rw-r--r--asm/SDK/AXFX/AXFXReverbStdExp.s881
-rw-r--r--asm/SDK/AXFX/AXFXSrcCoef.s11
-rw-r--r--asm/SDK/GX/GXDraw.s1676
-rw-r--r--asm/SDK/HBM/HBMBase.s6
-rw-r--r--asm/SDK/OS/OS.s4
-rw-r--r--asm/SDK/OS/OSReset.s4
-rw-r--r--asm/SDK/SC/scsystem.s1856
-rw-r--r--asm/SDK/WPAD/WPAD.s10
-rw-r--r--asm/SDK/WUD/WUD.s16
19 files changed, 6641 insertions, 23 deletions
diff --git a/asm/SDK/AXFX/AXFXChorus.s b/asm/SDK/AXFX/AXFXChorus.s
new file mode 100644
index 0000000..9e10570
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXChorus.s
@@ -0,0 +1,107 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AXFXChorusGetMemSize
+AXFXChorusGetMemSize:
+/* 80295894 002914F4 48 00 01 64 */ b AXFXChorusExpGetMemSize
+
+.global AXFXChorusInit
+AXFXChorusInit:
+/* 80295898 002914F8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8029589C 002914FC 7C 08 02 A6 */ mflr r0
+/* 802958A0 00291500 3C C0 43 30 */ lis r6, 0x4330
+/* 802958A4 00291504 C8 C2 A3 30 */ lfd f6, lbl_80642930-_SDA2_BASE_(r2)
+/* 802958A8 00291508 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802958AC 0029150C 38 00 00 00 */ li r0, 0
+/* 802958B0 00291510 C0 22 A3 24 */ lfs f1, lbl_80642924-_SDA2_BASE_(r2)
+/* 802958B4 00291514 80 E3 00 A0 */ lwz r7, 0xa0(r3)
+/* 802958B8 00291518 80 A3 00 A4 */ lwz r5, 0xa4(r3)
+/* 802958BC 0029151C 80 83 00 A8 */ lwz r4, 0xa8(r3)
+/* 802958C0 00291520 90 E1 00 0C */ stw r7, 0xc(r1)
+/* 802958C4 00291524 C0 42 A3 20 */ lfs f2, lbl_80642920-_SDA2_BASE_(r2)
+/* 802958C8 00291528 90 C1 00 08 */ stw r6, 8(r1)
+/* 802958CC 0029152C C8 01 00 08 */ lfd f0, 8(r1)
+/* 802958D0 00291530 90 A1 00 14 */ stw r5, 0x14(r1)
+/* 802958D4 00291534 EC A0 30 28 */ fsubs f5, f0, f6
+/* 802958D8 00291538 C0 02 A3 28 */ lfs f0, lbl_80642928-_SDA2_BASE_(r2)
+/* 802958DC 0029153C 90 C1 00 10 */ stw r6, 0x10(r1)
+/* 802958E0 00291540 C8 61 00 10 */ lfd f3, 0x10(r1)
+/* 802958E4 00291544 90 81 00 1C */ stw r4, 0x1c(r1)
+/* 802958E8 00291548 EC 83 30 28 */ fsubs f4, f3, f6
+/* 802958EC 0029154C 90 C1 00 18 */ stw r6, 0x18(r1)
+/* 802958F0 00291550 EC 84 28 24 */ fdivs f4, f4, f5
+/* 802958F4 00291554 C8 61 00 18 */ lfd f3, 0x18(r1)
+/* 802958F8 00291558 D0 03 00 98 */ stfs f0, 0x98(r3)
+/* 802958FC 0029155C D0 A3 00 80 */ stfs f5, 0x80(r3)
+/* 80295900 00291560 D0 23 00 8C */ stfs f1, 0x8c(r3)
+/* 80295904 00291564 90 03 00 90 */ stw r0, 0x90(r3)
+/* 80295908 00291568 EC 03 30 28 */ fsubs f0, f3, f6
+/* 8029590C 0029156C 90 03 00 94 */ stw r0, 0x94(r3)
+/* 80295910 00291570 D0 83 00 84 */ stfs f4, 0x84(r3)
+/* 80295914 00291574 EC 02 00 24 */ fdivs f0, f2, f0
+/* 80295918 00291578 D0 23 00 9C */ stfs f1, 0x9c(r3)
+/* 8029591C 0029157C D0 03 00 88 */ stfs f0, 0x88(r3)
+/* 80295920 00291580 48 00 00 E5 */ bl AXFXChorusExpInit
+/* 80295924 00291584 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80295928 00291588 7C 08 03 A6 */ mtlr r0
+/* 8029592C 0029158C 38 21 00 20 */ addi r1, r1, 0x20
+/* 80295930 00291590 4E 80 00 20 */ blr
+
+.global AXFXChorusShutdown
+AXFXChorusShutdown:
+/* 80295934 00291594 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80295938 00291598 7C 08 02 A6 */ mflr r0
+/* 8029593C 0029159C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80295940 002915A0 48 00 04 49 */ bl AXFXChorusExpShutdown
+/* 80295944 002915A4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80295948 002915A8 38 60 00 01 */ li r3, 1
+/* 8029594C 002915AC 7C 08 03 A6 */ mtlr r0
+/* 80295950 002915B0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80295954 002915B4 4E 80 00 20 */ blr
+
+.global AXFXChorusSettings
+AXFXChorusSettings:
+/* 80295958 002915B8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8029595C 002915BC 7C 08 02 A6 */ mflr r0
+/* 80295960 002915C0 3C C0 43 30 */ lis r6, 0x4330
+/* 80295964 002915C4 C8 C2 A3 30 */ lfd f6, lbl_80642930-_SDA2_BASE_(r2)
+/* 80295968 002915C8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8029596C 002915CC 38 00 00 00 */ li r0, 0
+/* 80295970 002915D0 C0 22 A3 24 */ lfs f1, lbl_80642924-_SDA2_BASE_(r2)
+/* 80295974 002915D4 80 E3 00 A0 */ lwz r7, 0xa0(r3)
+/* 80295978 002915D8 80 A3 00 A4 */ lwz r5, 0xa4(r3)
+/* 8029597C 002915DC 80 83 00 A8 */ lwz r4, 0xa8(r3)
+/* 80295980 002915E0 90 E1 00 0C */ stw r7, 0xc(r1)
+/* 80295984 002915E4 C0 42 A3 20 */ lfs f2, lbl_80642920-_SDA2_BASE_(r2)
+/* 80295988 002915E8 90 C1 00 08 */ stw r6, 8(r1)
+/* 8029598C 002915EC C8 01 00 08 */ lfd f0, 8(r1)
+/* 80295990 002915F0 90 A1 00 14 */ stw r5, 0x14(r1)
+/* 80295994 002915F4 EC A0 30 28 */ fsubs f5, f0, f6
+/* 80295998 002915F8 C0 02 A3 28 */ lfs f0, lbl_80642928-_SDA2_BASE_(r2)
+/* 8029599C 002915FC 90 C1 00 10 */ stw r6, 0x10(r1)
+/* 802959A0 00291600 C8 61 00 10 */ lfd f3, 0x10(r1)
+/* 802959A4 00291604 90 81 00 1C */ stw r4, 0x1c(r1)
+/* 802959A8 00291608 EC 83 30 28 */ fsubs f4, f3, f6
+/* 802959AC 0029160C 90 C1 00 18 */ stw r6, 0x18(r1)
+/* 802959B0 00291610 EC 84 28 24 */ fdivs f4, f4, f5
+/* 802959B4 00291614 C8 61 00 18 */ lfd f3, 0x18(r1)
+/* 802959B8 00291618 D0 03 00 98 */ stfs f0, 0x98(r3)
+/* 802959BC 0029161C D0 A3 00 80 */ stfs f5, 0x80(r3)
+/* 802959C0 00291620 D0 23 00 8C */ stfs f1, 0x8c(r3)
+/* 802959C4 00291624 90 03 00 90 */ stw r0, 0x90(r3)
+/* 802959C8 00291628 EC 03 30 28 */ fsubs f0, f3, f6
+/* 802959CC 0029162C 90 03 00 94 */ stw r0, 0x94(r3)
+/* 802959D0 00291630 D0 83 00 84 */ stfs f4, 0x84(r3)
+/* 802959D4 00291634 EC 02 00 24 */ fdivs f0, f2, f0
+/* 802959D8 00291638 D0 23 00 9C */ stfs f1, 0x9c(r3)
+/* 802959DC 0029163C D0 03 00 88 */ stfs f0, 0x88(r3)
+/* 802959E0 00291640 48 00 02 81 */ bl AXFXChorusExpSettings
+/* 802959E4 00291644 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802959E8 00291648 7C 08 03 A6 */ mtlr r0
+/* 802959EC 0029164C 38 21 00 20 */ addi r1, r1, 0x20
+/* 802959F0 00291650 4E 80 00 20 */ blr
+
+.global AXFXChorusCallback
+AXFXChorusCallback:
+/* 802959F4 00291654 48 00 04 24 */ b AXFXChorusExpCallback
diff --git a/asm/SDK/AXFX/AXFXChorusExp.s b/asm/SDK/AXFX/AXFXChorusExp.s
new file mode 100644
index 0000000..524aee1
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXChorusExp.s
@@ -0,0 +1,753 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AXFXChorusExpGetMemSize
+AXFXChorusExpGetMemSize:
+/* 802959F8 00291658 3C 60 00 01 */ lis r3, 0x00009600@ha
+/* 802959FC 0029165C 38 63 96 00 */ addi r3, r3, 0x00009600@l
+/* 80295A00 00291660 4E 80 00 20 */ blr
+
+.global AXFXChorusExpInit
+AXFXChorusExpInit:
+/* 80295A04 00291664 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80295A08 00291668 7C 08 02 A6 */ mflr r0
+/* 80295A0C 0029166C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80295A10 00291670 39 61 00 20 */ addi r11, r1, 0x20
+/* 80295A14 00291674 4B F3 17 15 */ bl _savegpr_27
+/* 80295A18 00291678 7C 7E 1B 78 */ mr r30, r3
+/* 80295A1C 0029167C 4B FD 8D 41 */ bl OSDisableInterrupts
+/* 80295A20 00291680 80 9E 00 7C */ lwz r4, 0x7c(r30)
+/* 80295A24 00291684 38 00 0C 80 */ li r0, 0xc80
+/* 80295A28 00291688 90 1E 00 1C */ stw r0, 0x1c(r30)
+/* 80295A2C 0029168C 7C 7F 1B 78 */ mr r31, r3
+/* 80295A30 00291690 60 80 00 01 */ ori r0, r4, 1
+/* 80295A34 00291694 7F DB F3 78 */ mr r27, r30
+/* 80295A38 00291698 90 1E 00 7C */ stw r0, 0x7c(r30)
+/* 80295A3C 0029169C 3B A0 00 00 */ li r29, 0
+lbl_80295A40:
+/* 80295A40 002916A0 80 1E 00 1C */ lwz r0, 0x1c(r30)
+/* 80295A44 002916A4 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80295A48 002916A8 54 03 10 3A */ slwi r3, r0, 2
+/* 80295A4C 002916AC 7D 89 03 A6 */ mtctr r12
+/* 80295A50 002916B0 4E 80 04 21 */ bctrl
+/* 80295A54 002916B4 2C 03 00 00 */ cmpwi r3, 0
+/* 80295A58 002916B8 90 7B 00 00 */ stw r3, 0(r27)
+/* 80295A5C 002916BC 40 82 00 0C */ bne lbl_80295A68
+/* 80295A60 002916C0 38 00 00 00 */ li r0, 0
+/* 80295A64 002916C4 48 00 00 18 */ b lbl_80295A7C
+lbl_80295A68:
+/* 80295A68 002916C8 3B BD 00 01 */ addi r29, r29, 1
+/* 80295A6C 002916CC 3B 7B 00 04 */ addi r27, r27, 4
+/* 80295A70 002916D0 28 1D 00 03 */ cmplwi r29, 3
+/* 80295A74 002916D4 41 80 FF CC */ blt lbl_80295A40
+/* 80295A78 002916D8 38 00 00 01 */ li r0, 1
+lbl_80295A7C:
+/* 80295A7C 002916DC 2C 00 00 00 */ cmpwi r0, 0
+/* 80295A80 002916E0 40 82 00 64 */ bne lbl_80295AE4
+/* 80295A84 002916E4 4B FD 8C D9 */ bl OSDisableInterrupts
+/* 80295A88 002916E8 80 1E 00 7C */ lwz r0, 0x7c(r30)
+/* 80295A8C 002916EC 7C 7B 1B 78 */ mr r27, r3
+/* 80295A90 002916F0 3B 80 00 00 */ li r28, 0
+/* 80295A94 002916F4 3B A0 00 00 */ li r29, 0
+/* 80295A98 002916F8 60 00 00 01 */ ori r0, r0, 1
+/* 80295A9C 002916FC 90 1E 00 7C */ stw r0, 0x7c(r30)
+lbl_80295AA0:
+/* 80295AA0 00291700 80 7E 00 00 */ lwz r3, 0(r30)
+/* 80295AA4 00291704 2C 03 00 00 */ cmpwi r3, 0
+/* 80295AA8 00291708 41 82 00 10 */ beq lbl_80295AB8
+/* 80295AAC 0029170C 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295AB0 00291710 7D 89 03 A6 */ mtctr r12
+/* 80295AB4 00291714 4E 80 04 21 */ bctrl
+lbl_80295AB8:
+/* 80295AB8 00291718 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295ABC 0029171C 93 BE 00 00 */ stw r29, 0(r30)
+/* 80295AC0 00291720 28 1C 00 03 */ cmplwi r28, 3
+/* 80295AC4 00291724 3B DE 00 04 */ addi r30, r30, 4
+/* 80295AC8 00291728 41 80 FF D8 */ blt lbl_80295AA0
+/* 80295ACC 0029172C 7F 63 DB 78 */ mr r3, r27
+/* 80295AD0 00291730 4B FD 8C B5 */ bl OSRestoreInterrupts
+/* 80295AD4 00291734 7F E3 FB 78 */ mr r3, r31
+/* 80295AD8 00291738 4B FD 8C AD */ bl OSRestoreInterrupts
+/* 80295ADC 0029173C 38 60 00 00 */ li r3, 0
+/* 80295AE0 00291740 48 00 01 68 */ b lbl_80295C48
+lbl_80295AE4:
+/* 80295AE4 00291744 7F DC F3 78 */ mr r28, r30
+/* 80295AE8 00291748 3B 60 00 00 */ li r27, 0
+lbl_80295AEC:
+/* 80295AEC 0029174C 80 7C 00 00 */ lwz r3, 0(r28)
+/* 80295AF0 00291750 2C 03 00 00 */ cmpwi r3, 0
+/* 80295AF4 00291754 40 82 00 0C */ bne lbl_80295B00
+/* 80295AF8 00291758 38 80 00 00 */ li r4, 0
+/* 80295AFC 0029175C 48 00 00 5C */ b lbl_80295B58
+lbl_80295B00:
+/* 80295B00 00291760 80 1E 00 1C */ lwz r0, 0x1c(r30)
+/* 80295B04 00291764 38 80 00 00 */ li r4, 0
+/* 80295B08 00291768 54 05 10 3A */ slwi r5, r0, 2
+/* 80295B0C 0029176C 4B D6 E5 F9 */ bl memset
+/* 80295B10 00291770 3B 7B 00 01 */ addi r27, r27, 1
+/* 80295B14 00291774 3B 9C 00 04 */ addi r28, r28, 4
+/* 80295B18 00291778 28 1B 00 03 */ cmplwi r27, 3
+/* 80295B1C 0029177C 41 80 FF D0 */ blt lbl_80295AEC
+/* 80295B20 00291780 C0 22 A3 38 */ lfs f1, lbl_80642938-_SDA2_BASE_(r2)
+/* 80295B24 00291784 38 00 00 00 */ li r0, 0
+/* 80295B28 00291788 C0 1E 00 80 */ lfs f0, 0x80(r30)
+/* 80295B2C 0029178C 90 1E 00 0C */ stw r0, 0xc(r30)
+/* 80295B30 00291790 EC 21 00 32 */ fmuls f1, f1, f0
+/* 80295B34 00291794 4B F3 14 CD */ bl __cvt_fp2unsigned
+/* 80295B38 00291798 80 1E 00 1C */ lwz r0, 0x1c(r30)
+/* 80295B3C 0029179C 38 80 00 01 */ li r4, 1
+/* 80295B40 002917A0 7C 63 00 50 */ subf r3, r3, r0
+/* 80295B44 002917A4 54 00 80 1E */ slwi r0, r0, 0x10
+/* 80295B48 002917A8 54 63 80 1E */ slwi r3, r3, 0x10
+/* 80295B4C 002917AC 90 1E 00 18 */ stw r0, 0x18(r30)
+/* 80295B50 002917B0 90 7E 00 10 */ stw r3, 0x10(r30)
+/* 80295B54 002917B4 90 7E 00 14 */ stw r3, 0x14(r30)
+lbl_80295B58:
+/* 80295B58 002917B8 2C 04 00 00 */ cmpwi r4, 0
+/* 80295B5C 002917BC 40 82 00 64 */ bne lbl_80295BC0
+/* 80295B60 002917C0 4B FD 8B FD */ bl OSDisableInterrupts
+/* 80295B64 002917C4 80 1E 00 7C */ lwz r0, 0x7c(r30)
+/* 80295B68 002917C8 7C 7C 1B 78 */ mr r28, r3
+/* 80295B6C 002917CC 3B 60 00 00 */ li r27, 0
+/* 80295B70 002917D0 3B A0 00 00 */ li r29, 0
+/* 80295B74 002917D4 60 00 00 01 */ ori r0, r0, 1
+/* 80295B78 002917D8 90 1E 00 7C */ stw r0, 0x7c(r30)
+lbl_80295B7C:
+/* 80295B7C 002917DC 80 7E 00 00 */ lwz r3, 0(r30)
+/* 80295B80 002917E0 2C 03 00 00 */ cmpwi r3, 0
+/* 80295B84 002917E4 41 82 00 10 */ beq lbl_80295B94
+/* 80295B88 002917E8 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295B8C 002917EC 7D 89 03 A6 */ mtctr r12
+/* 80295B90 002917F0 4E 80 04 21 */ bctrl
+lbl_80295B94:
+/* 80295B94 002917F4 3B 7B 00 01 */ addi r27, r27, 1
+/* 80295B98 002917F8 93 BE 00 00 */ stw r29, 0(r30)
+/* 80295B9C 002917FC 28 1B 00 03 */ cmplwi r27, 3
+/* 80295BA0 00291800 3B DE 00 04 */ addi r30, r30, 4
+/* 80295BA4 00291804 41 80 FF D8 */ blt lbl_80295B7C
+/* 80295BA8 00291808 7F 83 E3 78 */ mr r3, r28
+/* 80295BAC 0029180C 4B FD 8B D9 */ bl OSRestoreInterrupts
+/* 80295BB0 00291810 7F E3 FB 78 */ mr r3, r31
+/* 80295BB4 00291814 4B FD 8B D1 */ bl OSRestoreInterrupts
+/* 80295BB8 00291818 38 60 00 00 */ li r3, 0
+/* 80295BBC 0029181C 48 00 00 8C */ b lbl_80295C48
+lbl_80295BC0:
+/* 80295BC0 00291820 7F C3 F3 78 */ mr r3, r30
+/* 80295BC4 00291824 48 00 05 B5 */ bl __InitParams
+/* 80295BC8 00291828 2C 03 00 00 */ cmpwi r3, 0
+/* 80295BCC 0029182C 40 82 00 64 */ bne lbl_80295C30
+/* 80295BD0 00291830 4B FD 8B 8D */ bl OSDisableInterrupts
+/* 80295BD4 00291834 80 1E 00 7C */ lwz r0, 0x7c(r30)
+/* 80295BD8 00291838 7C 7C 1B 78 */ mr r28, r3
+/* 80295BDC 0029183C 3B 60 00 00 */ li r27, 0
+/* 80295BE0 00291840 3B A0 00 00 */ li r29, 0
+/* 80295BE4 00291844 60 00 00 01 */ ori r0, r0, 1
+/* 80295BE8 00291848 90 1E 00 7C */ stw r0, 0x7c(r30)
+lbl_80295BEC:
+/* 80295BEC 0029184C 80 7E 00 00 */ lwz r3, 0(r30)
+/* 80295BF0 00291850 2C 03 00 00 */ cmpwi r3, 0
+/* 80295BF4 00291854 41 82 00 10 */ beq lbl_80295C04
+/* 80295BF8 00291858 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295BFC 0029185C 7D 89 03 A6 */ mtctr r12
+/* 80295C00 00291860 4E 80 04 21 */ bctrl
+lbl_80295C04:
+/* 80295C04 00291864 3B 7B 00 01 */ addi r27, r27, 1
+/* 80295C08 00291868 93 BE 00 00 */ stw r29, 0(r30)
+/* 80295C0C 0029186C 28 1B 00 03 */ cmplwi r27, 3
+/* 80295C10 00291870 3B DE 00 04 */ addi r30, r30, 4
+/* 80295C14 00291874 41 80 FF D8 */ blt lbl_80295BEC
+/* 80295C18 00291878 7F 83 E3 78 */ mr r3, r28
+/* 80295C1C 0029187C 4B FD 8B 69 */ bl OSRestoreInterrupts
+/* 80295C20 00291880 7F E3 FB 78 */ mr r3, r31
+/* 80295C24 00291884 4B FD 8B 61 */ bl OSRestoreInterrupts
+/* 80295C28 00291888 38 60 00 00 */ li r3, 0
+/* 80295C2C 0029188C 48 00 00 1C */ b lbl_80295C48
+lbl_80295C30:
+/* 80295C30 00291890 80 1E 00 7C */ lwz r0, 0x7c(r30)
+/* 80295C34 00291894 7F E3 FB 78 */ mr r3, r31
+/* 80295C38 00291898 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
+/* 80295C3C 0029189C 90 1E 00 7C */ stw r0, 0x7c(r30)
+/* 80295C40 002918A0 4B FD 8B 45 */ bl OSRestoreInterrupts
+/* 80295C44 002918A4 38 60 00 01 */ li r3, 1
+lbl_80295C48:
+/* 80295C48 002918A8 39 61 00 20 */ addi r11, r1, 0x20
+/* 80295C4C 002918AC 4B F3 15 29 */ bl _restgpr_27
+/* 80295C50 002918B0 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80295C54 002918B4 7C 08 03 A6 */ mtlr r0
+/* 80295C58 002918B8 38 21 00 20 */ addi r1, r1, 0x20
+/* 80295C5C 002918BC 4E 80 00 20 */ blr
+
+.global AXFXChorusExpSettings
+AXFXChorusExpSettings:
+/* 80295C60 002918C0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80295C64 002918C4 7C 08 02 A6 */ mflr r0
+/* 80295C68 002918C8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80295C6C 002918CC 39 61 00 20 */ addi r11, r1, 0x20
+/* 80295C70 002918D0 4B F3 14 B5 */ bl _savegpr_26
+/* 80295C74 002918D4 7C 7F 1B 78 */ mr r31, r3
+/* 80295C78 002918D8 4B FD 8A E5 */ bl OSDisableInterrupts
+/* 80295C7C 002918DC 80 1F 00 7C */ lwz r0, 0x7c(r31)
+/* 80295C80 002918E0 7C 7A 1B 78 */ mr r26, r3
+/* 80295C84 002918E4 60 00 00 01 */ ori r0, r0, 1
+/* 80295C88 002918E8 90 1F 00 7C */ stw r0, 0x7c(r31)
+/* 80295C8C 002918EC 4B FD 8A D1 */ bl OSDisableInterrupts
+/* 80295C90 002918F0 80 1F 00 7C */ lwz r0, 0x7c(r31)
+/* 80295C94 002918F4 7C 7C 1B 78 */ mr r28, r3
+/* 80295C98 002918F8 7F FB FB 78 */ mr r27, r31
+/* 80295C9C 002918FC 3B A0 00 00 */ li r29, 0
+/* 80295CA0 00291900 60 00 00 01 */ ori r0, r0, 1
+/* 80295CA4 00291904 3B C0 00 00 */ li r30, 0
+/* 80295CA8 00291908 90 1F 00 7C */ stw r0, 0x7c(r31)
+lbl_80295CAC:
+/* 80295CAC 0029190C 80 7B 00 00 */ lwz r3, 0(r27)
+/* 80295CB0 00291910 2C 03 00 00 */ cmpwi r3, 0
+/* 80295CB4 00291914 41 82 00 10 */ beq lbl_80295CC4
+/* 80295CB8 00291918 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295CBC 0029191C 7D 89 03 A6 */ mtctr r12
+/* 80295CC0 00291920 4E 80 04 21 */ bctrl
+lbl_80295CC4:
+/* 80295CC4 00291924 3B BD 00 01 */ addi r29, r29, 1
+/* 80295CC8 00291928 93 DB 00 00 */ stw r30, 0(r27)
+/* 80295CCC 0029192C 28 1D 00 03 */ cmplwi r29, 3
+/* 80295CD0 00291930 3B 7B 00 04 */ addi r27, r27, 4
+/* 80295CD4 00291934 41 80 FF D8 */ blt lbl_80295CAC
+/* 80295CD8 00291938 7F 83 E3 78 */ mr r3, r28
+/* 80295CDC 0029193C 4B FD 8A A9 */ bl OSRestoreInterrupts
+/* 80295CE0 00291940 7F E3 FB 78 */ mr r3, r31
+/* 80295CE4 00291944 4B FF FD 21 */ bl AXFXChorusExpInit
+/* 80295CE8 00291948 2C 03 00 00 */ cmpwi r3, 0
+/* 80295CEC 0029194C 7C 7B 1B 78 */ mr r27, r3
+/* 80295CF0 00291950 40 82 00 64 */ bne lbl_80295D54
+/* 80295CF4 00291954 4B FD 8A 69 */ bl OSDisableInterrupts
+/* 80295CF8 00291958 80 1F 00 7C */ lwz r0, 0x7c(r31)
+/* 80295CFC 0029195C 7C 7D 1B 78 */ mr r29, r3
+/* 80295D00 00291960 3B 80 00 00 */ li r28, 0
+/* 80295D04 00291964 3B C0 00 00 */ li r30, 0
+/* 80295D08 00291968 60 00 00 01 */ ori r0, r0, 1
+/* 80295D0C 0029196C 90 1F 00 7C */ stw r0, 0x7c(r31)
+lbl_80295D10:
+/* 80295D10 00291970 80 7F 00 00 */ lwz r3, 0(r31)
+/* 80295D14 00291974 2C 03 00 00 */ cmpwi r3, 0
+/* 80295D18 00291978 41 82 00 10 */ beq lbl_80295D28
+/* 80295D1C 0029197C 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295D20 00291980 7D 89 03 A6 */ mtctr r12
+/* 80295D24 00291984 4E 80 04 21 */ bctrl
+lbl_80295D28:
+/* 80295D28 00291988 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295D2C 0029198C 93 DF 00 00 */ stw r30, 0(r31)
+/* 80295D30 00291990 28 1C 00 03 */ cmplwi r28, 3
+/* 80295D34 00291994 3B FF 00 04 */ addi r31, r31, 4
+/* 80295D38 00291998 41 80 FF D8 */ blt lbl_80295D10
+/* 80295D3C 0029199C 7F A3 EB 78 */ mr r3, r29
+/* 80295D40 002919A0 4B FD 8A 45 */ bl OSRestoreInterrupts
+/* 80295D44 002919A4 7F 43 D3 78 */ mr r3, r26
+/* 80295D48 002919A8 4B FD 8A 3D */ bl OSRestoreInterrupts
+/* 80295D4C 002919AC 38 60 00 00 */ li r3, 0
+/* 80295D50 002919B0 48 00 00 20 */ b lbl_80295D70
+lbl_80295D54:
+/* 80295D54 002919B4 80 1F 00 7C */ lwz r0, 0x7c(r31)
+/* 80295D58 002919B8 7F 43 D3 78 */ mr r3, r26
+/* 80295D5C 002919BC 60 00 00 02 */ ori r0, r0, 2
+/* 80295D60 002919C0 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
+/* 80295D64 002919C4 90 1F 00 7C */ stw r0, 0x7c(r31)
+/* 80295D68 002919C8 4B FD 8A 1D */ bl OSRestoreInterrupts
+/* 80295D6C 002919CC 7F 63 DB 78 */ mr r3, r27
+lbl_80295D70:
+/* 80295D70 002919D0 39 61 00 20 */ addi r11, r1, 0x20
+/* 80295D74 002919D4 4B F3 13 FD */ bl _restgpr_26
+/* 80295D78 002919D8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80295D7C 002919DC 7C 08 03 A6 */ mtlr r0
+/* 80295D80 002919E0 38 21 00 20 */ addi r1, r1, 0x20
+/* 80295D84 002919E4 4E 80 00 20 */ blr
+
+.global AXFXChorusExpShutdown
+AXFXChorusExpShutdown:
+/* 80295D88 002919E8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80295D8C 002919EC 7C 08 02 A6 */ mflr r0
+/* 80295D90 002919F0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80295D94 002919F4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80295D98 002919F8 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80295D9C 002919FC 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80295DA0 00291A00 93 81 00 10 */ stw r28, 0x10(r1)
+/* 80295DA4 00291A04 7C 7C 1B 78 */ mr r28, r3
+/* 80295DA8 00291A08 4B FD 89 B5 */ bl OSDisableInterrupts
+/* 80295DAC 00291A0C 80 1C 00 7C */ lwz r0, 0x7c(r28)
+/* 80295DB0 00291A10 7C 7D 1B 78 */ mr r29, r3
+/* 80295DB4 00291A14 3B C0 00 00 */ li r30, 0
+/* 80295DB8 00291A18 3B E0 00 00 */ li r31, 0
+/* 80295DBC 00291A1C 60 00 00 01 */ ori r0, r0, 1
+/* 80295DC0 00291A20 90 1C 00 7C */ stw r0, 0x7c(r28)
+lbl_80295DC4:
+/* 80295DC4 00291A24 80 7C 00 00 */ lwz r3, 0(r28)
+/* 80295DC8 00291A28 2C 03 00 00 */ cmpwi r3, 0
+/* 80295DCC 00291A2C 41 82 00 10 */ beq lbl_80295DDC
+/* 80295DD0 00291A30 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295DD4 00291A34 7D 89 03 A6 */ mtctr r12
+/* 80295DD8 00291A38 4E 80 04 21 */ bctrl
+lbl_80295DDC:
+/* 80295DDC 00291A3C 3B DE 00 01 */ addi r30, r30, 1
+/* 80295DE0 00291A40 93 FC 00 00 */ stw r31, 0(r28)
+/* 80295DE4 00291A44 28 1E 00 03 */ cmplwi r30, 3
+/* 80295DE8 00291A48 3B 9C 00 04 */ addi r28, r28, 4
+/* 80295DEC 00291A4C 41 80 FF D8 */ blt lbl_80295DC4
+/* 80295DF0 00291A50 7F A3 EB 78 */ mr r3, r29
+/* 80295DF4 00291A54 4B FD 89 91 */ bl OSRestoreInterrupts
+/* 80295DF8 00291A58 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80295DFC 00291A5C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80295E00 00291A60 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80295E04 00291A64 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80295E08 00291A68 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 80295E0C 00291A6C 7C 08 03 A6 */ mtlr r0
+/* 80295E10 00291A70 38 21 00 20 */ addi r1, r1, 0x20
+/* 80295E14 00291A74 4E 80 00 20 */ blr
+
+.global AXFXChorusExpCallback
+AXFXChorusExpCallback:
+/* 80295E18 00291A78 94 21 FE 00 */ stwu r1, -0x200(r1)
+/* 80295E1C 00291A7C 7C 08 02 A6 */ mflr r0
+/* 80295E20 00291A80 90 01 02 04 */ stw r0, 0x204(r1)
+/* 80295E24 00291A84 DB E1 01 F0 */ stfd f31, 0x1f0(r1)
+/* 80295E28 00291A88 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0
+/* 80295E2C 00291A8C 39 61 01 F0 */ addi r11, r1, 0x1f0
+/* 80295E30 00291A90 4B F3 12 F1 */ bl _savegpr_25
+/* 80295E34 00291A94 80 04 00 7C */ lwz r0, 0x7c(r4)
+/* 80295E38 00291A98 7C 9B 23 78 */ mr r27, r4
+/* 80295E3C 00291A9C 2C 00 00 00 */ cmpwi r0, 0
+/* 80295E40 00291AA0 41 82 00 10 */ beq lbl_80295E50
+/* 80295E44 00291AA4 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
+/* 80295E48 00291AA8 90 04 00 7C */ stw r0, 0x7c(r4)
+/* 80295E4C 00291AAC 48 00 03 0C */ b lbl_80296158
+lbl_80295E50:
+/* 80295E50 00291AB0 80 E4 00 90 */ lwz r7, 0x90(r4)
+/* 80295E54 00291AB4 80 C3 00 00 */ lwz r6, 0(r3)
+/* 80295E58 00291AB8 80 A3 00 04 */ lwz r5, 4(r3)
+/* 80295E5C 00291ABC 2C 07 00 00 */ cmpwi r7, 0
+/* 80295E60 00291AC0 80 03 00 08 */ lwz r0, 8(r3)
+/* 80295E64 00291AC4 90 C1 00 20 */ stw r6, 0x20(r1)
+/* 80295E68 00291AC8 90 A1 00 24 */ stw r5, 0x24(r1)
+/* 80295E6C 00291ACC 90 01 00 28 */ stw r0, 0x28(r1)
+/* 80295E70 00291AD0 41 82 00 1C */ beq lbl_80295E8C
+/* 80295E74 00291AD4 80 A7 00 00 */ lwz r5, 0(r7)
+/* 80295E78 00291AD8 80 67 00 04 */ lwz r3, 4(r7)
+/* 80295E7C 00291ADC 80 07 00 08 */ lwz r0, 8(r7)
+/* 80295E80 00291AE0 90 A1 00 14 */ stw r5, 0x14(r1)
+/* 80295E84 00291AE4 90 61 00 18 */ stw r3, 0x18(r1)
+/* 80295E88 00291AE8 90 01 00 1C */ stw r0, 0x1c(r1)
+lbl_80295E8C:
+/* 80295E8C 00291AEC 80 C4 00 94 */ lwz r6, 0x94(r4)
+/* 80295E90 00291AF0 2C 06 00 00 */ cmpwi r6, 0
+/* 80295E94 00291AF4 41 82 00 1C */ beq lbl_80295EB0
+/* 80295E98 00291AF8 80 A6 00 00 */ lwz r5, 0(r6)
+/* 80295E9C 00291AFC 80 66 00 04 */ lwz r3, 4(r6)
+/* 80295EA0 00291B00 80 06 00 08 */ lwz r0, 8(r6)
+/* 80295EA4 00291B04 90 A1 00 08 */ stw r5, 8(r1)
+/* 80295EA8 00291B08 90 61 00 0C */ stw r3, 0xc(r1)
+/* 80295EAC 00291B0C 90 01 00 10 */ stw r0, 0x10(r1)
+lbl_80295EB0:
+/* 80295EB0 00291B10 38 61 00 30 */ addi r3, r1, 0x30
+/* 80295EB4 00291B14 38 84 00 20 */ addi r4, r4, 0x20
+/* 80295EB8 00291B18 48 00 04 B9 */ bl __CalcLFO
+/* 80295EBC 00291B1C CB E2 A3 40 */ lfd f31, lbl_80642940-_SDA2_BASE_(r2)
+/* 80295EC0 00291B20 3B C1 00 30 */ addi r30, r1, 0x30
+/* 80295EC4 00291B24 3B A0 00 00 */ li r29, 0
+/* 80295EC8 00291B28 3F E0 43 30 */ lis r31, 0x4330
+/* 80295ECC 00291B2C 3B 20 00 00 */ li r25, 0
+/* 80295ED0 00291B30 3B 40 00 03 */ li r26, 3
+lbl_80295ED4:
+/* 80295ED4 00291B34 80 7B 00 10 */ lwz r3, 0x10(r27)
+/* 80295ED8 00291B38 80 1E 00 00 */ lwz r0, 0(r30)
+/* 80295EDC 00291B3C 80 9B 00 18 */ lwz r4, 0x18(r27)
+/* 80295EE0 00291B40 7C C3 02 14 */ add r6, r3, r0
+/* 80295EE4 00291B44 7C 06 20 00 */ cmpw r6, r4
+/* 80295EE8 00291B48 41 80 00 0C */ blt lbl_80295EF4
+/* 80295EEC 00291B4C 7C C4 30 50 */ subf r6, r4, r6
+/* 80295EF0 00291B50 48 00 00 10 */ b lbl_80295F00
+lbl_80295EF4:
+/* 80295EF4 00291B54 2C 06 00 00 */ cmpwi r6, 0
+/* 80295EF8 00291B58 40 80 00 08 */ bge lbl_80295F00
+/* 80295EFC 00291B5C 7C C6 22 14 */ add r6, r6, r4
+lbl_80295F00:
+/* 80295F00 00291B60 80 1B 00 14 */ lwz r0, 0x14(r27)
+/* 80295F04 00291B64 7C 60 30 51 */ subf. r3, r0, r6
+/* 80295F08 00291B68 40 80 00 08 */ bge lbl_80295F10
+/* 80295F0C 00291B6C 7C 63 22 14 */ add r3, r3, r4
+lbl_80295F10:
+/* 80295F10 00291B70 54 67 84 3F */ rlwinm. r7, r3, 0x10, 0x10, 0x1f
+/* 80295F14 00291B74 54 68 04 3E */ clrlwi r8, r3, 0x10
+/* 80295F18 00291B78 54 09 84 3E */ srwi r9, r0, 0x10
+/* 80295F1C 00291B7C 83 9B 00 78 */ lwz r28, 0x78(r27)
+/* 80295F20 00291B80 7C E9 03 A6 */ mtctr r7
+/* 80295F24 00291B84 41 82 00 58 */ beq lbl_80295F7C
+lbl_80295F28:
+/* 80295F28 00291B88 80 7B 00 00 */ lwz r3, 0(r27)
+/* 80295F2C 00291B8C 55 24 10 3A */ slwi r4, r9, 2
+/* 80295F30 00291B90 57 80 10 3A */ slwi r0, r28, 2
+/* 80295F34 00291B94 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295F38 00291B98 7C 03 24 2E */ lfsx f0, r3, r4
+/* 80295F3C 00291B9C 7C BB 02 14 */ add r5, r27, r0
+/* 80295F40 00291BA0 39 29 00 01 */ addi r9, r9, 1
+/* 80295F44 00291BA4 57 9C 07 BE */ clrlwi r28, r28, 0x1e
+/* 80295F48 00291BA8 D0 05 00 48 */ stfs f0, 0x48(r5)
+/* 80295F4C 00291BAC 38 E7 FF FF */ addi r7, r7, -1
+/* 80295F50 00291BB0 80 7B 00 04 */ lwz r3, 4(r27)
+/* 80295F54 00291BB4 7C 03 24 2E */ lfsx f0, r3, r4
+/* 80295F58 00291BB8 D0 05 00 58 */ stfs f0, 0x58(r5)
+/* 80295F5C 00291BBC 80 7B 00 08 */ lwz r3, 8(r27)
+/* 80295F60 00291BC0 7C 03 24 2E */ lfsx f0, r3, r4
+/* 80295F64 00291BC4 D0 05 00 68 */ stfs f0, 0x68(r5)
+/* 80295F68 00291BC8 80 1B 00 1C */ lwz r0, 0x1c(r27)
+/* 80295F6C 00291BCC 7C 09 00 40 */ cmplw r9, r0
+/* 80295F70 00291BD0 41 80 00 08 */ blt lbl_80295F78
+/* 80295F74 00291BD4 39 20 00 00 */ li r9, 0
+lbl_80295F78:
+/* 80295F78 00291BD8 42 00 FF B0 */ bdnz lbl_80295F28
+lbl_80295F7C:
+/* 80295F7C 00291BDC 54 C0 00 1E */ rlwinm r0, r6, 0, 0, 0xf
+/* 80295F80 00291BE0 55 03 BE 7E */ rlwinm r3, r8, 0x17, 0x19, 0x1f
+/* 80295F84 00291BE4 90 1B 00 14 */ stw r0, 0x14(r27)
+/* 80295F88 00291BE8 48 00 04 F9 */ bl __AXFXGetSrcCoef
+/* 80295F8C 00291BEC 7F 64 DB 78 */ mr r4, r27
+/* 80295F90 00291BF0 7F 67 DB 78 */ mr r7, r27
+/* 80295F94 00291BF4 38 A1 00 14 */ addi r5, r1, 0x14
+/* 80295F98 00291BF8 38 C1 00 20 */ addi r6, r1, 0x20
+/* 80295F9C 00291BFC 39 01 00 08 */ addi r8, r1, 8
+/* 80295FA0 00291C00 7F 49 03 A6 */ mtctr r26
+lbl_80295FA4:
+/* 80295FA4 00291C04 57 80 10 3A */ slwi r0, r28, 2
+/* 80295FA8 00291C08 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295FAC 00291C0C 7D 44 02 14 */ add r10, r4, r0
+/* 80295FB0 00291C10 80 1B 00 90 */ lwz r0, 0x90(r27)
+/* 80295FB4 00291C14 57 9C 07 BE */ clrlwi r28, r28, 0x1e
+/* 80295FB8 00291C18 C0 23 00 00 */ lfs f1, 0(r3)
+/* 80295FBC 00291C1C 57 89 10 3A */ slwi r9, r28, 2
+/* 80295FC0 00291C20 C0 0A 00 48 */ lfs f0, 0x48(r10)
+/* 80295FC4 00291C24 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295FC8 00291C28 C0 A2 A3 3C */ lfs f5, lbl_8064293C-_SDA2_BASE_(r2)
+/* 80295FCC 00291C2C EC 41 00 32 */ fmuls f2, f1, f0
+/* 80295FD0 00291C30 7D 64 4A 14 */ add r11, r4, r9
+/* 80295FD4 00291C34 57 9C 07 BE */ clrlwi r28, r28, 0x1e
+/* 80295FD8 00291C38 C0 23 00 04 */ lfs f1, 4(r3)
+/* 80295FDC 00291C3C 57 89 10 3A */ slwi r9, r28, 2
+/* 80295FE0 00291C40 C0 0B 00 48 */ lfs f0, 0x48(r11)
+/* 80295FE4 00291C44 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295FE8 00291C48 EC 81 00 32 */ fmuls f4, f1, f0
+/* 80295FEC 00291C4C EC A5 10 2A */ fadds f5, f5, f2
+/* 80295FF0 00291C50 7D 44 4A 14 */ add r10, r4, r9
+/* 80295FF4 00291C54 57 9C 07 BE */ clrlwi r28, r28, 0x1e
+/* 80295FF8 00291C58 C0 63 00 08 */ lfs f3, 8(r3)
+/* 80295FFC 00291C5C 57 89 10 3A */ slwi r9, r28, 2
+/* 80296000 00291C60 C0 4A 00 48 */ lfs f2, 0x48(r10)
+/* 80296004 00291C64 7D 24 4A 14 */ add r9, r4, r9
+/* 80296008 00291C68 EC A5 20 2A */ fadds f5, f5, f4
+/* 8029600C 00291C6C EC 43 00 B2 */ fmuls f2, f3, f2
+/* 80296010 00291C70 C0 23 00 0C */ lfs f1, 0xc(r3)
+/* 80296014 00291C74 C0 09 00 48 */ lfs f0, 0x48(r9)
+/* 80296018 00291C78 2C 00 00 00 */ cmpwi r0, 0
+/* 8029601C 00291C7C 3B 9C 00 01 */ addi r28, r28, 1
+/* 80296020 00291C80 EC 01 00 32 */ fmuls f0, f1, f0
+/* 80296024 00291C84 EC A5 10 2A */ fadds f5, f5, f2
+/* 80296028 00291C88 57 9C 07 BE */ clrlwi r28, r28, 0x1e
+/* 8029602C 00291C8C EC A5 00 2A */ fadds f5, f5, f0
+/* 80296030 00291C90 41 82 00 38 */ beq lbl_80296068
+/* 80296034 00291C94 81 25 00 00 */ lwz r9, 0(r5)
+/* 80296038 00291C98 81 46 00 00 */ lwz r10, 0(r6)
+/* 8029603C 00291C9C 80 09 00 00 */ lwz r0, 0(r9)
+/* 80296040 00291CA0 39 29 00 04 */ addi r9, r9, 4
+/* 80296044 00291CA4 81 4A 00 00 */ lwz r10, 0(r10)
+/* 80296048 00291CA8 93 E1 01 B0 */ stw r31, 0x1b0(r1)
+/* 8029604C 00291CAC 7C 0A 02 14 */ add r0, r10, r0
+/* 80296050 00291CB0 6C 00 80 00 */ xoris r0, r0, 0x8000
+/* 80296054 00291CB4 91 25 00 00 */ stw r9, 0(r5)
+/* 80296058 00291CB8 90 01 01 B4 */ stw r0, 0x1b4(r1)
+/* 8029605C 00291CBC C8 01 01 B0 */ lfd f0, 0x1b0(r1)
+/* 80296060 00291CC0 EC 20 F8 28 */ fsubs f1, f0, f31
+/* 80296064 00291CC4 48 00 00 20 */ b lbl_80296084
+lbl_80296068:
+/* 80296068 00291CC8 81 26 00 00 */ lwz r9, 0(r6)
+/* 8029606C 00291CCC 93 E1 01 B8 */ stw r31, 0x1b8(r1)
+/* 80296070 00291CD0 80 09 00 00 */ lwz r0, 0(r9)
+/* 80296074 00291CD4 6C 00 80 00 */ xoris r0, r0, 0x8000
+/* 80296078 00291CD8 90 01 01 BC */ stw r0, 0x1bc(r1)
+/* 8029607C 00291CDC C8 01 01 B8 */ lfd f0, 0x1b8(r1)
+/* 80296080 00291CE0 EC 20 F8 28 */ fsubs f1, f0, f31
+lbl_80296084:
+/* 80296084 00291CE4 C0 1B 00 8C */ lfs f0, 0x8c(r27)
+/* 80296088 00291CE8 80 1B 00 0C */ lwz r0, 0xc(r27)
+/* 8029608C 00291CEC EC 05 00 32 */ fmuls f0, f5, f0
+/* 80296090 00291CF0 81 67 00 00 */ lwz r11, 0(r7)
+/* 80296094 00291CF4 54 0A 10 3A */ slwi r10, r0, 2
+/* 80296098 00291CF8 81 26 00 00 */ lwz r9, 0(r6)
+/* 8029609C 00291CFC EC 01 00 2A */ fadds f0, f1, f0
+/* 802960A0 00291D00 38 09 00 04 */ addi r0, r9, 4
+/* 802960A4 00291D04 90 06 00 00 */ stw r0, 0(r6)
+/* 802960A8 00291D08 7C 0B 55 2E */ stfsx f0, r11, r10
+/* 802960AC 00291D0C C0 1B 00 98 */ lfs f0, 0x98(r27)
+/* 802960B0 00291D10 EC 05 00 32 */ fmuls f0, f5, f0
+/* 802960B4 00291D14 FC 00 00 1E */ fctiwz f0, f0
+/* 802960B8 00291D18 D8 01 01 C0 */ stfd f0, 0x1c0(r1)
+/* 802960BC 00291D1C 80 01 01 C4 */ lwz r0, 0x1c4(r1)
+/* 802960C0 00291D20 90 09 00 00 */ stw r0, 0(r9)
+/* 802960C4 00291D24 80 1B 00 94 */ lwz r0, 0x94(r27)
+/* 802960C8 00291D28 2C 00 00 00 */ cmpwi r0, 0
+/* 802960CC 00291D2C 41 82 00 28 */ beq lbl_802960F4
+/* 802960D0 00291D30 C0 1B 00 9C */ lfs f0, 0x9c(r27)
+/* 802960D4 00291D34 81 28 00 00 */ lwz r9, 0(r8)
+/* 802960D8 00291D38 EC 05 00 32 */ fmuls f0, f5, f0
+/* 802960DC 00291D3C 38 09 00 04 */ addi r0, r9, 4
+/* 802960E0 00291D40 90 08 00 00 */ stw r0, 0(r8)
+/* 802960E4 00291D44 FC 00 00 1E */ fctiwz f0, f0
+/* 802960E8 00291D48 D8 01 01 C0 */ stfd f0, 0x1c0(r1)
+/* 802960EC 00291D4C 80 01 01 C4 */ lwz r0, 0x1c4(r1)
+/* 802960F0 00291D50 90 09 00 00 */ stw r0, 0(r9)
+lbl_802960F4:
+/* 802960F4 00291D54 38 84 00 10 */ addi r4, r4, 0x10
+/* 802960F8 00291D58 38 A5 00 04 */ addi r5, r5, 4
+/* 802960FC 00291D5C 38 C6 00 04 */ addi r6, r6, 4
+/* 80296100 00291D60 38 E7 00 04 */ addi r7, r7, 4
+/* 80296104 00291D64 39 08 00 04 */ addi r8, r8, 4
+/* 80296108 00291D68 42 00 FE 9C */ bdnz lbl_80295FA4
+/* 8029610C 00291D6C 80 7B 00 0C */ lwz r3, 0xc(r27)
+/* 80296110 00291D70 80 1B 00 1C */ lwz r0, 0x1c(r27)
+/* 80296114 00291D74 38 63 00 01 */ addi r3, r3, 1
+/* 80296118 00291D78 93 9B 00 78 */ stw r28, 0x78(r27)
+/* 8029611C 00291D7C 7C 03 00 40 */ cmplw r3, r0
+/* 80296120 00291D80 90 7B 00 0C */ stw r3, 0xc(r27)
+/* 80296124 00291D84 41 80 00 08 */ blt lbl_8029612C
+/* 80296128 00291D88 93 3B 00 0C */ stw r25, 0xc(r27)
+lbl_8029612C:
+/* 8029612C 00291D8C 80 7B 00 10 */ lwz r3, 0x10(r27)
+/* 80296130 00291D90 80 1B 00 18 */ lwz r0, 0x18(r27)
+/* 80296134 00291D94 3C 63 00 01 */ addis r3, r3, 1
+/* 80296138 00291D98 7C 03 00 40 */ cmplw r3, r0
+/* 8029613C 00291D9C 90 7B 00 10 */ stw r3, 0x10(r27)
+/* 80296140 00291DA0 41 80 00 08 */ blt lbl_80296148
+/* 80296144 00291DA4 93 3B 00 10 */ stw r25, 0x10(r27)
+lbl_80296148:
+/* 80296148 00291DA8 3B BD 00 01 */ addi r29, r29, 1
+/* 8029614C 00291DAC 3B DE 00 04 */ addi r30, r30, 4
+/* 80296150 00291DB0 28 1D 00 60 */ cmplwi r29, 0x60
+/* 80296154 00291DB4 41 80 FD 80 */ blt lbl_80295ED4
+lbl_80296158:
+/* 80296158 00291DB8 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0
+/* 8029615C 00291DBC 39 61 01 F0 */ addi r11, r1, 0x1f0
+/* 80296160 00291DC0 CB E1 01 F0 */ lfd f31, 0x1f0(r1)
+/* 80296164 00291DC4 4B F3 10 09 */ bl _restgpr_25
+/* 80296168 00291DC8 80 01 02 04 */ lwz r0, 0x204(r1)
+/* 8029616C 00291DCC 7C 08 03 A6 */ mtlr r0
+/* 80296170 00291DD0 38 21 02 00 */ addi r1, r1, 0x200
+/* 80296174 00291DD4 4E 80 00 20 */ blr
+
+__InitParams:
+/* 80296178 00291DD8 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 8029617C 00291DDC 7C 08 02 A6 */ mflr r0
+/* 80296180 00291DE0 C0 82 A3 48 */ lfs f4, lbl_80642948-_SDA2_BASE_(r2)
+/* 80296184 00291DE4 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80296188 00291DE8 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 8029618C 00291DEC 7C 7F 1B 78 */ mr r31, r3
+/* 80296190 00291DF0 C0 23 00 80 */ lfs f1, 0x80(r3)
+/* 80296194 00291DF4 FC 01 20 40 */ fcmpo cr0, f1, f4
+/* 80296198 00291DF8 41 80 00 10 */ blt lbl_802961A8
+/* 8029619C 00291DFC C0 02 A3 4C */ lfs f0, lbl_8064294C-_SDA2_BASE_(r2)
+/* 802961A0 00291E00 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 802961A4 00291E04 40 81 00 0C */ ble lbl_802961B0
+lbl_802961A8:
+/* 802961A8 00291E08 38 60 00 00 */ li r3, 0
+/* 802961AC 00291E0C 48 00 01 B0 */ b lbl_8029635C
+lbl_802961B0:
+/* 802961B0 00291E10 C0 03 00 84 */ lfs f0, 0x84(r3)
+/* 802961B4 00291E14 C0 62 A3 3C */ lfs f3, lbl_8064293C-_SDA2_BASE_(r2)
+/* 802961B8 00291E18 FC 00 18 40 */ fcmpo cr0, f0, f3
+/* 802961BC 00291E1C 41 80 00 10 */ blt lbl_802961CC
+/* 802961C0 00291E20 C0 42 A3 50 */ lfs f2, lbl_80642950-_SDA2_BASE_(r2)
+/* 802961C4 00291E24 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802961C8 00291E28 40 81 00 0C */ ble lbl_802961D4
+lbl_802961CC:
+/* 802961CC 00291E2C 38 60 00 00 */ li r3, 0
+/* 802961D0 00291E30 48 00 01 8C */ b lbl_8029635C
+lbl_802961D4:
+/* 802961D4 00291E34 C0 23 00 88 */ lfs f1, 0x88(r3)
+/* 802961D8 00291E38 FC 01 20 40 */ fcmpo cr0, f1, f4
+/* 802961DC 00291E3C 41 80 00 10 */ blt lbl_802961EC
+/* 802961E0 00291E40 C0 02 A3 54 */ lfs f0, lbl_80642954-_SDA2_BASE_(r2)
+/* 802961E4 00291E44 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 802961E8 00291E48 40 81 00 0C */ ble lbl_802961F4
+lbl_802961EC:
+/* 802961EC 00291E4C 38 60 00 00 */ li r3, 0
+/* 802961F0 00291E50 48 00 01 6C */ b lbl_8029635C
+lbl_802961F4:
+/* 802961F4 00291E54 C0 03 00 8C */ lfs f0, 0x8c(r3)
+/* 802961F8 00291E58 FC 00 18 40 */ fcmpo cr0, f0, f3
+/* 802961FC 00291E5C 41 80 00 10 */ blt lbl_8029620C
+/* 80296200 00291E60 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80296204 00291E64 4C 41 13 82 */ cror 2, 1, 2
+/* 80296208 00291E68 40 82 00 0C */ bne lbl_80296214
+lbl_8029620C:
+/* 8029620C 00291E6C 38 60 00 00 */ li r3, 0
+/* 80296210 00291E70 48 00 01 4C */ b lbl_8029635C
+lbl_80296214:
+/* 80296214 00291E74 C0 03 00 98 */ lfs f0, 0x98(r3)
+/* 80296218 00291E78 FC 00 18 40 */ fcmpo cr0, f0, f3
+/* 8029621C 00291E7C 41 80 00 0C */ blt lbl_80296228
+/* 80296220 00291E80 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80296224 00291E84 40 81 00 0C */ ble lbl_80296230
+lbl_80296228:
+/* 80296228 00291E88 38 60 00 00 */ li r3, 0
+/* 8029622C 00291E8C 48 00 01 30 */ b lbl_8029635C
+lbl_80296230:
+/* 80296230 00291E90 C0 03 00 9C */ lfs f0, 0x9c(r3)
+/* 80296234 00291E94 FC 00 18 40 */ fcmpo cr0, f0, f3
+/* 80296238 00291E98 41 80 00 0C */ blt lbl_80296244
+/* 8029623C 00291E9C FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80296240 00291EA0 40 81 00 0C */ ble lbl_8029624C
+lbl_80296244:
+/* 80296244 00291EA4 38 60 00 00 */ li r3, 0
+/* 80296248 00291EA8 48 00 01 14 */ b lbl_8029635C
+lbl_8029624C:
+/* 8029624C 00291EAC 48 00 02 29 */ bl __AXFXGetLfoSinTable
+/* 80296250 00291EB0 C0 42 A3 38 */ lfs f2, lbl_80642938-_SDA2_BASE_(r2)
+/* 80296254 00291EB4 C0 3F 00 80 */ lfs f1, 0x80(r31)
+/* 80296258 00291EB8 C0 1F 00 84 */ lfs f0, 0x84(r31)
+/* 8029625C 00291EBC EC 22 00 72 */ fmuls f1, f2, f1
+/* 80296260 00291EC0 90 7F 00 20 */ stw r3, 0x20(r31)
+/* 80296264 00291EC4 EC C1 00 32 */ fmuls f6, f1, f0
+/* 80296268 00291EC8 FC 06 08 40 */ fcmpo cr0, f6, f1
+/* 8029626C 00291ECC 4C 41 13 82 */ cror 2, 1, 2
+/* 80296270 00291ED0 40 82 00 1C */ bne lbl_8029628C
+/* 80296274 00291ED4 C0 22 A3 50 */ lfs f1, lbl_80642950-_SDA2_BASE_(r2)
+/* 80296278 00291ED8 C0 02 A3 3C */ lfs f0, lbl_8064293C-_SDA2_BASE_(r2)
+/* 8029627C 00291EDC EC C6 08 28 */ fsubs f6, f6, f1
+/* 80296280 00291EE0 FC 06 00 40 */ fcmpo cr0, f6, f0
+/* 80296284 00291EE4 40 80 00 08 */ bge lbl_8029628C
+/* 80296288 00291EE8 FC C0 00 90 */ fmr f6, f0
+lbl_8029628C:
+/* 8029628C 00291EEC C0 7F 00 88 */ lfs f3, 0x88(r31)
+/* 80296290 00291EF0 38 80 00 00 */ li r4, 0
+/* 80296294 00291EF4 C0 42 A3 60 */ lfs f2, lbl_80642960-_SDA2_BASE_(r2)
+/* 80296298 00291EF8 38 00 FF FF */ li r0, -1
+/* 8029629C 00291EFC C0 82 A3 5C */ lfs f4, lbl_8064295C-_SDA2_BASE_(r2)
+/* 802962A0 00291F00 38 60 00 01 */ li r3, 1
+/* 802962A4 00291F04 EC 22 18 24 */ fdivs f1, f2, f3
+/* 802962A8 00291F08 C0 02 A3 64 */ lfs f0, lbl_80642964-_SDA2_BASE_(r2)
+/* 802962AC 00291F0C C0 A2 A3 58 */ lfs f5, lbl_80642958-_SDA2_BASE_(r2)
+/* 802962B0 00291F10 90 1F 00 38 */ stw r0, 0x38(r31)
+/* 802962B4 00291F14 90 9F 00 30 */ stw r4, 0x30(r31)
+/* 802962B8 00291F18 90 9F 00 34 */ stw r4, 0x34(r31)
+/* 802962BC 00291F1C EC E1 00 32 */ fmuls f7, f1, f0
+/* 802962C0 00291F20 C0 02 A3 3C */ lfs f0, lbl_8064293C-_SDA2_BASE_(r2)
+/* 802962C4 00291F24 EC 24 00 F2 */ fmuls f1, f4, f3
+/* 802962C8 00291F28 90 9F 00 3C */ stw r4, 0x3c(r31)
+/* 802962CC 00291F2C EC 85 01 B2 */ fmuls f4, f5, f6
+/* 802962D0 00291F30 EC C6 38 24 */ fdivs f6, f6, f7
+/* 802962D4 00291F34 90 9F 00 40 */ stw r4, 0x40(r31)
+/* 802962D8 00291F38 EC 21 10 24 */ fdivs f1, f1, f2
+/* 802962DC 00291F3C EC 65 00 72 */ fmuls f3, f5, f1
+/* 802962E0 00291F40 EC 45 01 F2 */ fmuls f2, f5, f7
+/* 802962E4 00291F44 EC 25 01 B2 */ fmuls f1, f5, f6
+/* 802962E8 00291F48 FC 80 20 1E */ fctiwz f4, f4
+/* 802962EC 00291F4C FC 60 18 1E */ fctiwz f3, f3
+/* 802962F0 00291F50 FC 40 10 1E */ fctiwz f2, f2
+/* 802962F4 00291F54 FC 20 08 1E */ fctiwz f1, f1
+/* 802962F8 00291F58 D8 81 00 08 */ stfd f4, 8(r1)
+/* 802962FC 00291F5C D8 61 00 10 */ stfd f3, 0x10(r1)
+/* 80296300 00291F60 80 E1 00 0C */ lwz r7, 0xc(r1)
+/* 80296304 00291F64 D8 41 00 18 */ stfd f2, 0x18(r1)
+/* 80296308 00291F68 80 C1 00 14 */ lwz r6, 0x14(r1)
+/* 8029630C 00291F6C D8 21 00 20 */ stfd f1, 0x20(r1)
+/* 80296310 00291F70 80 A1 00 1C */ lwz r5, 0x1c(r1)
+/* 80296314 00291F74 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80296318 00291F78 90 FF 00 2C */ stw r7, 0x2c(r31)
+/* 8029631C 00291F7C 90 DF 00 24 */ stw r6, 0x24(r31)
+/* 80296320 00291F80 90 BF 00 28 */ stw r5, 0x28(r31)
+/* 80296324 00291F84 90 1F 00 44 */ stw r0, 0x44(r31)
+/* 80296328 00291F88 D0 1F 00 48 */ stfs f0, 0x48(r31)
+/* 8029632C 00291F8C D0 1F 00 4C */ stfs f0, 0x4c(r31)
+/* 80296330 00291F90 D0 1F 00 50 */ stfs f0, 0x50(r31)
+/* 80296334 00291F94 D0 1F 00 54 */ stfs f0, 0x54(r31)
+/* 80296338 00291F98 D0 1F 00 58 */ stfs f0, 0x58(r31)
+/* 8029633C 00291F9C D0 1F 00 5C */ stfs f0, 0x5c(r31)
+/* 80296340 00291FA0 D0 1F 00 60 */ stfs f0, 0x60(r31)
+/* 80296344 00291FA4 D0 1F 00 64 */ stfs f0, 0x64(r31)
+/* 80296348 00291FA8 D0 1F 00 68 */ stfs f0, 0x68(r31)
+/* 8029634C 00291FAC D0 1F 00 6C */ stfs f0, 0x6c(r31)
+/* 80296350 00291FB0 D0 1F 00 70 */ stfs f0, 0x70(r31)
+/* 80296354 00291FB4 D0 1F 00 74 */ stfs f0, 0x74(r31)
+/* 80296358 00291FB8 90 9F 00 78 */ stw r4, 0x78(r31)
+lbl_8029635C:
+/* 8029635C 00291FBC 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80296360 00291FC0 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 80296364 00291FC4 7C 08 03 A6 */ mtlr r0
+/* 80296368 00291FC8 38 21 00 30 */ addi r1, r1, 0x30
+/* 8029636C 00291FCC 4E 80 00 20 */ blr
+
+__CalcLFO:
+/* 80296370 00291FD0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80296374 00291FD4 38 00 00 60 */ li r0, 0x60
+/* 80296378 00291FD8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8029637C 00291FDC 7C 09 03 A6 */ mtctr r0
+lbl_80296380:
+/* 80296380 00291FE0 80 A4 00 10 */ lwz r5, 0x10(r4)
+/* 80296384 00291FE4 80 04 00 18 */ lwz r0, 0x18(r4)
+/* 80296388 00291FE8 54 A5 00 1E */ rlwinm r5, r5, 0, 0, 0xf
+/* 8029638C 00291FEC 7C 05 00 40 */ cmplw r5, r0
+/* 80296390 00291FF0 41 82 00 78 */ beq lbl_80296408
+/* 80296394 00291FF4 90 A4 00 18 */ stw r5, 0x18(r4)
+/* 80296398 00291FF8 54 A5 84 3E */ srwi r5, r5, 0x10
+/* 8029639C 00291FFC 38 05 00 01 */ addi r0, r5, 1
+/* 802963A0 00292000 80 C4 00 00 */ lwz r6, 0(r4)
+/* 802963A4 00292004 54 A5 10 3A */ slwi r5, r5, 2
+/* 802963A8 00292008 81 24 00 24 */ lwz r9, 0x24(r4)
+/* 802963AC 0029200C 54 00 15 FA */ rlwinm r0, r0, 2, 0x17, 0x1d
+/* 802963B0 00292010 7D 66 28 2E */ lwzx r11, r6, r5
+/* 802963B4 00292014 7C 06 00 2E */ lwzx r0, r6, r0
+/* 802963B8 00292018 80 A4 00 0C */ lwz r5, 0xc(r4)
+/* 802963BC 0029201C 7D 4B 00 50 */ subf r10, r11, r0
+/* 802963C0 00292020 7C 0B 29 D6 */ mullw r0, r11, r5
+/* 802963C4 00292024 7D 5F FE 70 */ srawi r31, r10, 0x1f
+/* 802963C8 00292028 7D 27 FE 70 */ srawi r7, r9, 0x1f
+/* 802963CC 0029202C 7C CA 49 D6 */ mullw r6, r10, r9
+/* 802963D0 00292030 54 0C 40 3E */ rotlwi r12, r0, 8
+/* 802963D4 00292034 7C 0B 28 96 */ mulhw r0, r11, r5
+/* 802963D8 00292038 54 C6 40 3E */ rotlwi r6, r6, 8
+/* 802963DC 0029203C 7D 0A 48 16 */ mulhwu r8, r10, r9
+/* 802963E0 00292040 50 0C 40 2E */ rlwimi r12, r0, 8, 0, 0x17
+/* 802963E4 00292044 7D 3F 49 D6 */ mullw r9, r31, r9
+/* 802963E8 00292048 7C AA 39 D6 */ mullw r5, r10, r7
+/* 802963EC 0029204C 7D 08 4A 14 */ add r8, r8, r9
+/* 802963F0 00292050 7D 08 2A 14 */ add r8, r8, r5
+/* 802963F4 00292054 51 06 40 2E */ rlwimi r6, r8, 8, 0, 0x17
+/* 802963F8 00292058 7D 05 C6 70 */ srawi r5, r8, 0x18
+/* 802963FC 0029205C 90 C4 00 20 */ stw r6, 0x20(r4)
+/* 80296400 00292060 7C 05 C6 70 */ srawi r5, r0, 0x18
+/* 80296404 00292064 48 00 00 14 */ b lbl_80296418
+lbl_80296408:
+/* 80296408 00292068 80 A4 00 1C */ lwz r5, 0x1c(r4)
+/* 8029640C 0029206C 80 04 00 20 */ lwz r0, 0x20(r4)
+/* 80296410 00292070 7D 85 02 14 */ add r12, r5, r0
+/* 80296414 00292074 7D 85 FE 70 */ srawi r5, r12, 0x1f
+lbl_80296418:
+/* 80296418 00292078 80 04 00 14 */ lwz r0, 0x14(r4)
+/* 8029641C 0029207C 91 84 00 1C */ stw r12, 0x1c(r4)
+/* 80296420 00292080 28 00 00 01 */ cmplwi r0, 1
+/* 80296424 00292084 41 80 00 0C */ blt lbl_80296430
+/* 80296428 00292088 21 8C 00 00 */ subfic r12, r12, 0
+/* 8029642C 0029208C 7C A5 01 90 */ subfze r5, r5
+lbl_80296430:
+/* 80296430 00292090 80 A4 00 10 */ lwz r5, 0x10(r4)
+/* 80296434 00292094 80 04 00 04 */ lwz r0, 4(r4)
+/* 80296438 00292098 7C A5 02 14 */ add r5, r5, r0
+/* 8029643C 0029209C 54 A0 00 11 */ rlwinm. r0, r5, 0, 0, 8
+/* 80296440 002920A0 90 A4 00 10 */ stw r5, 0x10(r4)
+/* 80296444 002920A4 41 82 00 18 */ beq lbl_8029645C
+/* 80296448 002920A8 80 04 00 14 */ lwz r0, 0x14(r4)
+/* 8029644C 002920AC 54 A5 02 7E */ clrlwi r5, r5, 9
+/* 80296450 002920B0 90 A4 00 10 */ stw r5, 0x10(r4)
+/* 80296454 002920B4 68 00 00 01 */ xori r0, r0, 1
+/* 80296458 002920B8 90 04 00 14 */ stw r0, 0x14(r4)
+lbl_8029645C:
+/* 8029645C 002920BC 91 83 00 00 */ stw r12, 0(r3)
+/* 80296460 002920C0 38 63 00 04 */ addi r3, r3, 4
+/* 80296464 002920C4 42 00 FF 1C */ bdnz lbl_80296380
+/* 80296468 002920C8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8029646C 002920CC 38 21 00 10 */ addi r1, r1, 0x10
+/* 80296470 002920D0 4E 80 00 20 */ blr
diff --git a/asm/SDK/AX/AXFXDelay.s b/asm/SDK/AXFX/AXFXDelay.s
index f9ba3b2..f9ba3b2 100644
--- a/asm/SDK/AX/AXFXDelay.s
+++ b/asm/SDK/AXFX/AXFXDelay.s
diff --git a/asm/SDK/AXFX/AXFXHooks.s b/asm/SDK/AXFX/AXFXHooks.s
new file mode 100644
index 0000000..d4f6340
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXHooks.s
@@ -0,0 +1,27 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+__AXFXAllocFunction:
+/* 80296494 002920F4 7C 64 1B 78 */ mr r4, r3
+/* 80296498 002920F8 80 6D 87 A8 */ lwz r3, lbl_8063DA68-_SDA_BASE_(r13)
+/* 8029649C 002920FC 4B FD 3A C0 */ b OSAllocFromHeap
+
+__AXFXFreeFunction:
+/* 802964A0 00292100 7C 64 1B 78 */ mr r4, r3
+/* 802964A4 00292104 80 6D 87 A8 */ lwz r3, lbl_8063DA68-_SDA_BASE_(r13)
+/* 802964A8 00292108 4B FD 3B AC */ b OSFreeToHeap
+
+.global AXFXSetHooks
+AXFXSetHooks:
+/* 802964AC 0029210C 90 6D 88 F8 */ stw r3, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 802964B0 00292110 90 8D 88 FC */ stw r4, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 802964B4 00292114 4E 80 00 20 */ blr
+
+.global AXFXGetHooks
+AXFXGetHooks:
+/* 802964B8 00292118 80 0D 88 F8 */ lwz r0, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 802964BC 0029211C 90 03 00 00 */ stw r0, 0(r3)
+/* 802964C0 00292120 80 0D 88 FC */ lwz r0, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 802964C4 00292124 90 04 00 00 */ stw r0, 0(r4)
+/* 802964C8 00292128 4E 80 00 20 */ blr
diff --git a/asm/SDK/AXFX/AXFXLfoTable.s b/asm/SDK/AXFX/AXFXLfoTable.s
new file mode 100644
index 0000000..dbaffe5
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXLfoTable.s
@@ -0,0 +1,9 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __AXFXGetLfoSinTable
+__AXFXGetLfoSinTable:
+/* 80296474 002920D4 3C 60 80 44 */ lis r3, lbl_8043A770@ha
+/* 80296478 002920D8 38 63 A7 70 */ addi r3, r3, lbl_8043A770@l
+/* 8029647C 002920DC 4E 80 00 20 */ blr
diff --git a/asm/SDK/AX/AXFXReverbHi.s b/asm/SDK/AXFX/AXFXReverbHi.s
index 1290e6c..1290e6c 100644
--- a/asm/SDK/AX/AXFXReverbHi.s
+++ b/asm/SDK/AXFX/AXFXReverbHi.s
diff --git a/asm/SDK/AXFX/AXFXReverbHiDpl2.s b/asm/SDK/AXFX/AXFXReverbHiDpl2.s
new file mode 100644
index 0000000..00e9124
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXReverbHiDpl2.s
@@ -0,0 +1,99 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AXFXReverbHiGetMemSizeDpl2
+AXFXReverbHiGetMemSizeDpl2:
+/* 80292460 0028E0C0 C0 03 01 88 */ lfs f0, 0x188(r3)
+/* 80292464 0028E0C4 D0 03 01 44 */ stfs f0, 0x144(r3)
+/* 80292468 0028E0C8 48 00 10 64 */ b AXFXReverbHiExpGetMemSizeDpl2
+
+.global AXFXReverbHiInitDpl2
+AXFXReverbHiInitDpl2:
+/* 8029246C 0028E0CC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80292470 0028E0D0 7C 08 02 A6 */ mflr r0
+/* 80292474 0028E0D4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80292478 0028E0D8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8029247C 0028E0DC 7C 7F 1B 78 */ mr r31, r3
+/* 80292480 0028E0E0 4B FF E3 21 */ bl AXGetMode
+/* 80292484 0028E0E4 28 03 00 02 */ cmplwi r3, 2
+/* 80292488 0028E0E8 41 82 00 0C */ beq lbl_80292494
+/* 8029248C 0028E0EC 38 60 00 00 */ li r3, 0
+/* 80292490 0028E0F0 48 00 00 6C */ b lbl_802924FC
+lbl_80292494:
+/* 80292494 0028E0F4 C0 FF 01 88 */ lfs f7, 0x188(r31)
+/* 80292498 0028E0F8 38 00 00 00 */ li r0, 0
+/* 8029249C 0028E0FC C0 42 A2 40 */ lfs f2, lbl_80642840-_SDA2_BASE_(r2)
+/* 802924A0 0028E100 38 80 00 05 */ li r4, 5
+/* 802924A4 0028E104 C0 DF 01 80 */ lfs f6, 0x180(r31)
+/* 802924A8 0028E108 7F E3 FB 78 */ mr r3, r31
+/* 802924AC 0028E10C C0 BF 01 78 */ lfs f5, 0x178(r31)
+/* 802924B0 0028E110 C0 9F 01 84 */ lfs f4, 0x184(r31)
+/* 802924B4 0028E114 C0 7F 01 8C */ lfs f3, 0x18c(r31)
+/* 802924B8 0028E118 C0 22 A2 44 */ lfs f1, lbl_80642844-_SDA2_BASE_(r2)
+/* 802924BC 0028E11C C0 1F 01 7C */ lfs f0, 0x17c(r31)
+/* 802924C0 0028E120 90 9F 01 40 */ stw r4, 0x140(r31)
+/* 802924C4 0028E124 D0 FF 01 44 */ stfs f7, 0x144(r31)
+/* 802924C8 0028E128 D0 FF 01 48 */ stfs f7, 0x148(r31)
+/* 802924CC 0028E12C 90 1F 01 4C */ stw r0, 0x14c(r31)
+/* 802924D0 0028E130 D0 DF 01 50 */ stfs f6, 0x150(r31)
+/* 802924D4 0028E134 D0 BF 01 54 */ stfs f5, 0x154(r31)
+/* 802924D8 0028E138 D0 9F 01 58 */ stfs f4, 0x158(r31)
+/* 802924DC 0028E13C D0 7F 01 5C */ stfs f3, 0x15c(r31)
+/* 802924E0 0028E140 D0 5F 01 60 */ stfs f2, 0x160(r31)
+/* 802924E4 0028E144 D0 3F 01 64 */ stfs f1, 0x164(r31)
+/* 802924E8 0028E148 90 1F 01 68 */ stw r0, 0x168(r31)
+/* 802924EC 0028E14C 90 1F 01 6C */ stw r0, 0x16c(r31)
+/* 802924F0 0028E150 D0 1F 01 70 */ stfs f0, 0x170(r31)
+/* 802924F4 0028E154 D0 5F 01 74 */ stfs f2, 0x174(r31)
+/* 802924F8 0028E158 48 00 10 61 */ bl AXFXReverbHiExpInitDpl2
+lbl_802924FC:
+/* 802924FC 0028E15C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80292500 0028E160 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80292504 0028E164 7C 08 03 A6 */ mtlr r0
+/* 80292508 0028E168 38 21 00 10 */ addi r1, r1, 0x10
+/* 8029250C 0028E16C 4E 80 00 20 */ blr
+
+.global AXFXReverbHiShutdownDpl2
+AXFXReverbHiShutdownDpl2:
+/* 80292510 0028E170 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80292514 0028E174 7C 08 02 A6 */ mflr r0
+/* 80292518 0028E178 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8029251C 0028E17C 48 00 12 CD */ bl AXFXReverbHiExpShutdownDpl2
+/* 80292520 0028E180 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80292524 0028E184 38 60 00 01 */ li r3, 1
+/* 80292528 0028E188 7C 08 03 A6 */ mtlr r0
+/* 8029252C 0028E18C 38 21 00 10 */ addi r1, r1, 0x10
+/* 80292530 0028E190 4E 80 00 20 */ blr
+
+.global AXFXReverbHiSettingsDpl2
+AXFXReverbHiSettingsDpl2:
+/* 80292534 0028E194 C0 E3 01 88 */ lfs f7, 0x188(r3)
+/* 80292538 0028E198 38 00 00 00 */ li r0, 0
+/* 8029253C 0028E19C C0 42 A2 40 */ lfs f2, lbl_80642840-_SDA2_BASE_(r2)
+/* 80292540 0028E1A0 38 80 00 05 */ li r4, 5
+/* 80292544 0028E1A4 C0 C3 01 80 */ lfs f6, 0x180(r3)
+/* 80292548 0028E1A8 C0 A3 01 78 */ lfs f5, 0x178(r3)
+/* 8029254C 0028E1AC C0 83 01 84 */ lfs f4, 0x184(r3)
+/* 80292550 0028E1B0 C0 63 01 8C */ lfs f3, 0x18c(r3)
+/* 80292554 0028E1B4 C0 22 A2 44 */ lfs f1, lbl_80642844-_SDA2_BASE_(r2)
+/* 80292558 0028E1B8 C0 03 01 7C */ lfs f0, 0x17c(r3)
+/* 8029255C 0028E1BC 90 83 01 40 */ stw r4, 0x140(r3)
+/* 80292560 0028E1C0 D0 E3 01 44 */ stfs f7, 0x144(r3)
+/* 80292564 0028E1C4 D0 E3 01 48 */ stfs f7, 0x148(r3)
+/* 80292568 0028E1C8 90 03 01 4C */ stw r0, 0x14c(r3)
+/* 8029256C 0028E1CC D0 C3 01 50 */ stfs f6, 0x150(r3)
+/* 80292570 0028E1D0 D0 A3 01 54 */ stfs f5, 0x154(r3)
+/* 80292574 0028E1D4 D0 83 01 58 */ stfs f4, 0x158(r3)
+/* 80292578 0028E1D8 D0 63 01 5C */ stfs f3, 0x15c(r3)
+/* 8029257C 0028E1DC D0 43 01 60 */ stfs f2, 0x160(r3)
+/* 80292580 0028E1E0 D0 23 01 64 */ stfs f1, 0x164(r3)
+/* 80292584 0028E1E4 90 03 01 68 */ stw r0, 0x168(r3)
+/* 80292588 0028E1E8 90 03 01 6C */ stw r0, 0x16c(r3)
+/* 8029258C 0028E1EC D0 03 01 70 */ stfs f0, 0x170(r3)
+/* 80292590 0028E1F0 D0 43 01 74 */ stfs f2, 0x174(r3)
+/* 80292594 0028E1F4 48 00 11 84 */ b AXFXReverbHiExpSettingsDpl2
+
+.global AXFXReverbHiCallbackDpl2
+AXFXReverbHiCallbackDpl2:
+/* 80292598 0028E1F8 48 00 12 A4 */ b AXFXReverbHiExpCallbackDpl2
diff --git a/asm/SDK/AX/AXFXReverbHiExp.s b/asm/SDK/AXFX/AXFXReverbHiExp.s
index bdba1e9..08b5842 100644
--- a/asm/SDK/AX/AXFXReverbHiExp.s
+++ b/asm/SDK/AXFX/AXFXReverbHiExp.s
@@ -580,7 +580,6 @@ lbl_80292DE4:
/* 80292DF4 0028EA54 38 21 00 70 */ addi r1, r1, 0x70
/* 80292DF8 0028EA58 4E 80 00 20 */ blr
-.global __AllocDelayLine
__AllocDelayLine:
/* 80292DFC 0028EA5C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80292E00 0028EA60 7C 08 02 A6 */ mflr r0
@@ -686,7 +685,6 @@ lbl_80292F58:
/* 80292F68 0028EBC8 38 21 00 30 */ addi r1, r1, 0x30
/* 80292F6C 0028EBCC 4E 80 00 20 */ blr
-.global __BzeroDelayLines
__BzeroDelayLines:
/* 80292F70 0028EBD0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80292F74 0028EBD4 7C 08 02 A6 */ mflr r0
@@ -770,7 +768,6 @@ lbl_80293064:
/* 8029308C 0028ECEC 38 21 00 30 */ addi r1, r1, 0x30
/* 80293090 0028ECF0 4E 80 00 20 */ blr
-.global __FreeDelayLine
__FreeDelayLine:
/* 80293094 0028ECF4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80293098 0028ECF8 7C 08 02 A6 */ mflr r0
diff --git a/asm/SDK/AXFX/AXFXReverbHiExpDpl2.s b/asm/SDK/AXFX/AXFXReverbHiExpDpl2.s
new file mode 100644
index 0000000..a92d28f
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXReverbHiExpDpl2.s
@@ -0,0 +1,1125 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AXFXReverbHiExpGetMemSizeDpl2
+AXFXReverbHiExpGetMemSizeDpl2:
+/* 802934CC 0028F12C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802934D0 0028F130 3C 80 80 44 */ lis r4, lbl_8043A520@ha
+/* 802934D4 0028F134 38 84 A5 20 */ addi r4, r4, lbl_8043A520@l
+/* 802934D8 0028F138 3D 20 80 44 */ lis r9, lbl_8043A5E0@ha
+/* 802934DC 0028F13C C0 22 A2 88 */ lfs f1, lbl_80642888-_SDA2_BASE_(r2)
+/* 802934E0 0028F140 39 29 A5 E0 */ addi r9, r9, lbl_8043A5E0@l
+/* 802934E4 0028F144 C0 03 01 44 */ lfs f0, 0x144(r3)
+/* 802934E8 0028F148 81 44 00 5C */ lwz r10, 0x5c(r4)
+/* 802934EC 0028F14C EC 01 00 32 */ fmuls f0, f1, f0
+/* 802934F0 0028F150 80 69 00 D8 */ lwz r3, 0xd8(r9)
+/* 802934F4 0028F154 80 09 00 DC */ lwz r0, 0xdc(r9)
+/* 802934F8 0028F158 81 09 00 E0 */ lwz r8, 0xe0(r9)
+/* 802934FC 0028F15C FC 00 00 1E */ fctiwz f0, f0
+/* 80293500 0028F160 80 E9 00 E4 */ lwz r7, 0xe4(r9)
+/* 80293504 0028F164 80 C9 00 E8 */ lwz r6, 0xe8(r9)
+/* 80293508 0028F168 80 A9 00 EC */ lwz r5, 0xec(r9)
+/* 8029350C 0028F16C D8 01 00 08 */ stfd f0, 8(r1)
+/* 80293510 0028F170 80 81 00 0C */ lwz r4, 0xc(r1)
+/* 80293514 0028F174 7D 4A 22 14 */ add r10, r10, r4
+/* 80293518 0028F178 80 89 00 F0 */ lwz r4, 0xf0(r9)
+/* 8029351C 0028F17C 7D 4A 1A 14 */ add r10, r10, r3
+/* 80293520 0028F180 80 69 00 F4 */ lwz r3, 0xf4(r9)
+/* 80293524 0028F184 7D 4A 02 14 */ add r10, r10, r0
+/* 80293528 0028F188 80 09 00 F8 */ lwz r0, 0xf8(r9)
+/* 8029352C 0028F18C 7D 4A 42 14 */ add r10, r10, r8
+/* 80293530 0028F190 7D 4A 3A 14 */ add r10, r10, r7
+/* 80293534 0028F194 7D 4A 32 14 */ add r10, r10, r6
+/* 80293538 0028F198 55 4A 10 3A */ slwi r10, r10, 2
+/* 8029353C 0028F19C 7D 4A 2A 14 */ add r10, r10, r5
+/* 80293540 0028F1A0 7D 4A 22 14 */ add r10, r10, r4
+/* 80293544 0028F1A4 7D 4A 1A 14 */ add r10, r10, r3
+/* 80293548 0028F1A8 7D 4A 02 14 */ add r10, r10, r0
+/* 8029354C 0028F1AC 55 43 10 3A */ slwi r3, r10, 2
+/* 80293550 0028F1B0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80293554 0028F1B4 4E 80 00 20 */ blr
+
+.global AXFXReverbHiExpInitDpl2
+AXFXReverbHiExpInitDpl2:
+/* 80293558 0028F1B8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8029355C 0028F1BC 7C 08 02 A6 */ mflr r0
+/* 80293560 0028F1C0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80293564 0028F1C4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80293568 0028F1C8 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8029356C 0028F1CC 7C 7E 1B 78 */ mr r30, r3
+/* 80293570 0028F1D0 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80293574 0028F1D4 4B FD B1 E9 */ bl OSDisableInterrupts
+/* 80293578 0028F1D8 7C 7F 1B 78 */ mr r31, r3
+/* 8029357C 0028F1DC 4B FF D2 25 */ bl AXGetMode
+/* 80293580 0028F1E0 28 03 00 02 */ cmplwi r3, 2
+/* 80293584 0028F1E4 41 82 00 14 */ beq lbl_80293598
+/* 80293588 0028F1E8 7F E3 FB 78 */ mr r3, r31
+/* 8029358C 0028F1EC 4B FD B1 F9 */ bl OSRestoreInterrupts
+/* 80293590 0028F1F0 38 60 00 00 */ li r3, 0
+/* 80293594 0028F1F4 48 00 01 68 */ b lbl_802936FC
+lbl_80293598:
+/* 80293598 0028F1F8 C0 3E 01 44 */ lfs f1, 0x144(r30)
+/* 8029359C 0028F1FC 38 00 00 01 */ li r0, 1
+/* 802935A0 0028F200 C0 02 A2 8C */ lfs f0, lbl_8064288C-_SDA2_BASE_(r2)
+/* 802935A4 0028F204 90 1E 01 3C */ stw r0, 0x13c(r30)
+/* 802935A8 0028F208 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 802935AC 0028F20C 40 80 00 38 */ bge lbl_802935E4
+/* 802935B0 0028F210 4B FD B1 AD */ bl OSDisableInterrupts
+/* 802935B4 0028F214 80 1E 01 3C */ lwz r0, 0x13c(r30)
+/* 802935B8 0028F218 7C 7D 1B 78 */ mr r29, r3
+/* 802935BC 0028F21C 7F C3 F3 78 */ mr r3, r30
+/* 802935C0 0028F220 60 00 00 01 */ ori r0, r0, 1
+/* 802935C4 0028F224 90 1E 01 3C */ stw r0, 0x13c(r30)
+/* 802935C8 0028F228 48 00 0A B9 */ bl __FreeDelayLine
+/* 802935CC 0028F22C 7F A3 EB 78 */ mr r3, r29
+/* 802935D0 0028F230 4B FD B1 B5 */ bl OSRestoreInterrupts
+/* 802935D4 0028F234 7F E3 FB 78 */ mr r3, r31
+/* 802935D8 0028F238 4B FD B1 AD */ bl OSRestoreInterrupts
+/* 802935DC 0028F23C 38 60 00 00 */ li r3, 0
+/* 802935E0 0028F240 48 00 01 1C */ b lbl_802936FC
+lbl_802935E4:
+/* 802935E4 0028F244 3C 60 80 44 */ lis r3, lbl_8043A520@ha
+/* 802935E8 0028F248 C0 02 A2 88 */ lfs f0, lbl_80642888-_SDA2_BASE_(r2)
+/* 802935EC 0028F24C 38 63 A5 20 */ addi r3, r3, lbl_8043A520@l
+/* 802935F0 0028F250 80 03 00 5C */ lwz r0, 0x5c(r3)
+/* 802935F4 0028F254 EC 20 00 72 */ fmuls f1, f0, f1
+/* 802935F8 0028F258 90 1E 00 20 */ stw r0, 0x20(r30)
+/* 802935FC 0028F25C 4B F3 3A 05 */ bl __cvt_fp2unsigned
+/* 80293600 0028F260 90 7E 00 48 */ stw r3, 0x48(r30)
+/* 80293604 0028F264 3C 80 80 44 */ lis r4, lbl_8043A5E0@ha
+/* 80293608 0028F268 38 84 A5 E0 */ addi r4, r4, lbl_8043A5E0@l
+/* 8029360C 0028F26C 7F C3 F3 78 */ mr r3, r30
+/* 80293610 0028F270 80 04 00 D8 */ lwz r0, 0xd8(r4)
+/* 80293614 0028F274 90 1E 00 94 */ stw r0, 0x94(r30)
+/* 80293618 0028F278 80 04 00 DC */ lwz r0, 0xdc(r4)
+/* 8029361C 0028F27C 90 1E 00 98 */ stw r0, 0x98(r30)
+/* 80293620 0028F280 80 04 00 E0 */ lwz r0, 0xe0(r4)
+/* 80293624 0028F284 90 1E 00 9C */ stw r0, 0x9c(r30)
+/* 80293628 0028F288 80 04 00 E4 */ lwz r0, 0xe4(r4)
+/* 8029362C 0028F28C 90 1E 00 DC */ stw r0, 0xdc(r30)
+/* 80293630 0028F290 80 04 00 E8 */ lwz r0, 0xe8(r4)
+/* 80293634 0028F294 90 1E 00 E0 */ stw r0, 0xe0(r30)
+/* 80293638 0028F298 80 04 00 EC */ lwz r0, 0xec(r4)
+/* 8029363C 0028F29C 90 1E 01 14 */ stw r0, 0x114(r30)
+/* 80293640 0028F2A0 80 04 00 F0 */ lwz r0, 0xf0(r4)
+/* 80293644 0028F2A4 90 1E 01 18 */ stw r0, 0x118(r30)
+/* 80293648 0028F2A8 80 04 00 F4 */ lwz r0, 0xf4(r4)
+/* 8029364C 0028F2AC 90 1E 01 1C */ stw r0, 0x11c(r30)
+/* 80293650 0028F2B0 80 04 00 F8 */ lwz r0, 0xf8(r4)
+/* 80293654 0028F2B4 90 1E 01 20 */ stw r0, 0x120(r30)
+/* 80293658 0028F2B8 48 00 07 91 */ bl __AllocDelayLine
+/* 8029365C 0028F2BC 2C 03 00 00 */ cmpwi r3, 0
+/* 80293660 0028F2C0 40 82 00 38 */ bne lbl_80293698
+/* 80293664 0028F2C4 4B FD B0 F9 */ bl OSDisableInterrupts
+/* 80293668 0028F2C8 80 1E 01 3C */ lwz r0, 0x13c(r30)
+/* 8029366C 0028F2CC 7C 7D 1B 78 */ mr r29, r3
+/* 80293670 0028F2D0 7F C3 F3 78 */ mr r3, r30
+/* 80293674 0028F2D4 60 00 00 01 */ ori r0, r0, 1
+/* 80293678 0028F2D8 90 1E 01 3C */ stw r0, 0x13c(r30)
+/* 8029367C 0028F2DC 48 00 0A 05 */ bl __FreeDelayLine
+/* 80293680 0028F2E0 7F A3 EB 78 */ mr r3, r29
+/* 80293684 0028F2E4 4B FD B1 01 */ bl OSRestoreInterrupts
+/* 80293688 0028F2E8 7F E3 FB 78 */ mr r3, r31
+/* 8029368C 0028F2EC 4B FD B0 F9 */ bl OSRestoreInterrupts
+/* 80293690 0028F2F0 38 60 00 00 */ li r3, 0
+/* 80293694 0028F2F4 48 00 00 68 */ b lbl_802936FC
+lbl_80293698:
+/* 80293698 0028F2F8 7F C3 F3 78 */ mr r3, r30
+/* 8029369C 0028F2FC 48 00 08 C1 */ bl __BzeroDelayLines
+/* 802936A0 0028F300 7F C3 F3 78 */ mr r3, r30
+/* 802936A4 0028F304 48 00 0A F1 */ bl __InitParams
+/* 802936A8 0028F308 2C 03 00 00 */ cmpwi r3, 0
+/* 802936AC 0028F30C 40 82 00 38 */ bne lbl_802936E4
+/* 802936B0 0028F310 4B FD B0 AD */ bl OSDisableInterrupts
+/* 802936B4 0028F314 80 1E 01 3C */ lwz r0, 0x13c(r30)
+/* 802936B8 0028F318 7C 7D 1B 78 */ mr r29, r3
+/* 802936BC 0028F31C 7F C3 F3 78 */ mr r3, r30
+/* 802936C0 0028F320 60 00 00 01 */ ori r0, r0, 1
+/* 802936C4 0028F324 90 1E 01 3C */ stw r0, 0x13c(r30)
+/* 802936C8 0028F328 48 00 09 B9 */ bl __FreeDelayLine
+/* 802936CC 0028F32C 7F A3 EB 78 */ mr r3, r29
+/* 802936D0 0028F330 4B FD B0 B5 */ bl OSRestoreInterrupts
+/* 802936D4 0028F334 7F E3 FB 78 */ mr r3, r31
+/* 802936D8 0028F338 4B FD B0 AD */ bl OSRestoreInterrupts
+/* 802936DC 0028F33C 38 60 00 00 */ li r3, 0
+/* 802936E0 0028F340 48 00 00 1C */ b lbl_802936FC
+lbl_802936E4:
+/* 802936E4 0028F344 80 1E 01 3C */ lwz r0, 0x13c(r30)
+/* 802936E8 0028F348 7F E3 FB 78 */ mr r3, r31
+/* 802936EC 0028F34C 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
+/* 802936F0 0028F350 90 1E 01 3C */ stw r0, 0x13c(r30)
+/* 802936F4 0028F354 4B FD B0 91 */ bl OSRestoreInterrupts
+/* 802936F8 0028F358 38 60 00 01 */ li r3, 1
+lbl_802936FC:
+/* 802936FC 0028F35C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80293700 0028F360 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80293704 0028F364 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80293708 0028F368 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8029370C 0028F36C 7C 08 03 A6 */ mtlr r0
+/* 80293710 0028F370 38 21 00 20 */ addi r1, r1, 0x20
+/* 80293714 0028F374 4E 80 00 20 */ blr
+
+.global AXFXReverbHiExpSettingsDpl2
+AXFXReverbHiExpSettingsDpl2:
+/* 80293718 0028F378 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8029371C 0028F37C 7C 08 02 A6 */ mflr r0
+/* 80293720 0028F380 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80293724 0028F384 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80293728 0028F388 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8029372C 0028F38C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80293730 0028F390 7C 7D 1B 78 */ mr r29, r3
+/* 80293734 0028F394 4B FD B0 29 */ bl OSDisableInterrupts
+/* 80293738 0028F398 80 1D 01 3C */ lwz r0, 0x13c(r29)
+/* 8029373C 0028F39C 7C 7E 1B 78 */ mr r30, r3
+/* 80293740 0028F3A0 60 00 00 01 */ ori r0, r0, 1
+/* 80293744 0028F3A4 90 1D 01 3C */ stw r0, 0x13c(r29)
+/* 80293748 0028F3A8 4B FD B0 15 */ bl OSDisableInterrupts
+/* 8029374C 0028F3AC 80 1D 01 3C */ lwz r0, 0x13c(r29)
+/* 80293750 0028F3B0 7C 7F 1B 78 */ mr r31, r3
+/* 80293754 0028F3B4 7F A3 EB 78 */ mr r3, r29
+/* 80293758 0028F3B8 60 00 00 01 */ ori r0, r0, 1
+/* 8029375C 0028F3BC 90 1D 01 3C */ stw r0, 0x13c(r29)
+/* 80293760 0028F3C0 48 00 09 21 */ bl __FreeDelayLine
+/* 80293764 0028F3C4 7F E3 FB 78 */ mr r3, r31
+/* 80293768 0028F3C8 4B FD B0 1D */ bl OSRestoreInterrupts
+/* 8029376C 0028F3CC 7F A3 EB 78 */ mr r3, r29
+/* 80293770 0028F3D0 4B FF FD E9 */ bl AXFXReverbHiExpInitDpl2
+/* 80293774 0028F3D4 2C 03 00 00 */ cmpwi r3, 0
+/* 80293778 0028F3D8 40 82 00 38 */ bne lbl_802937B0
+/* 8029377C 0028F3DC 4B FD AF E1 */ bl OSDisableInterrupts
+/* 80293780 0028F3E0 80 1D 01 3C */ lwz r0, 0x13c(r29)
+/* 80293784 0028F3E4 7C 7F 1B 78 */ mr r31, r3
+/* 80293788 0028F3E8 7F A3 EB 78 */ mr r3, r29
+/* 8029378C 0028F3EC 60 00 00 01 */ ori r0, r0, 1
+/* 80293790 0028F3F0 90 1D 01 3C */ stw r0, 0x13c(r29)
+/* 80293794 0028F3F4 48 00 08 ED */ bl __FreeDelayLine
+/* 80293798 0028F3F8 7F E3 FB 78 */ mr r3, r31
+/* 8029379C 0028F3FC 4B FD AF E9 */ bl OSRestoreInterrupts
+/* 802937A0 0028F400 7F C3 F3 78 */ mr r3, r30
+/* 802937A4 0028F404 4B FD AF E1 */ bl OSRestoreInterrupts
+/* 802937A8 0028F408 38 60 00 00 */ li r3, 0
+/* 802937AC 0028F40C 48 00 00 20 */ b lbl_802937CC
+lbl_802937B0:
+/* 802937B0 0028F410 80 1D 01 3C */ lwz r0, 0x13c(r29)
+/* 802937B4 0028F414 7F C3 F3 78 */ mr r3, r30
+/* 802937B8 0028F418 60 00 00 02 */ ori r0, r0, 2
+/* 802937BC 0028F41C 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
+/* 802937C0 0028F420 90 1D 01 3C */ stw r0, 0x13c(r29)
+/* 802937C4 0028F424 4B FD AF C1 */ bl OSRestoreInterrupts
+/* 802937C8 0028F428 38 60 00 01 */ li r3, 1
+lbl_802937CC:
+/* 802937CC 0028F42C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802937D0 0028F430 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802937D4 0028F434 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802937D8 0028F438 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802937DC 0028F43C 7C 08 03 A6 */ mtlr r0
+/* 802937E0 0028F440 38 21 00 20 */ addi r1, r1, 0x20
+/* 802937E4 0028F444 4E 80 00 20 */ blr
+
+.global AXFXReverbHiExpShutdownDpl2
+AXFXReverbHiExpShutdownDpl2:
+/* 802937E8 0028F448 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802937EC 0028F44C 7C 08 02 A6 */ mflr r0
+/* 802937F0 0028F450 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802937F4 0028F454 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802937F8 0028F458 93 C1 00 08 */ stw r30, 8(r1)
+/* 802937FC 0028F45C 7C 7E 1B 78 */ mr r30, r3
+/* 80293800 0028F460 4B FD AF 5D */ bl OSDisableInterrupts
+/* 80293804 0028F464 80 1E 01 3C */ lwz r0, 0x13c(r30)
+/* 80293808 0028F468 7C 7F 1B 78 */ mr r31, r3
+/* 8029380C 0028F46C 7F C3 F3 78 */ mr r3, r30
+/* 80293810 0028F470 60 00 00 01 */ ori r0, r0, 1
+/* 80293814 0028F474 90 1E 01 3C */ stw r0, 0x13c(r30)
+/* 80293818 0028F478 48 00 08 69 */ bl __FreeDelayLine
+/* 8029381C 0028F47C 7F E3 FB 78 */ mr r3, r31
+/* 80293820 0028F480 4B FD AF 65 */ bl OSRestoreInterrupts
+/* 80293824 0028F484 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80293828 0028F488 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8029382C 0028F48C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80293830 0028F490 7C 08 03 A6 */ mtlr r0
+/* 80293834 0028F494 38 21 00 10 */ addi r1, r1, 0x10
+/* 80293838 0028F498 4E 80 00 20 */ blr
+
+.global AXFXReverbHiExpCallbackDpl2
+AXFXReverbHiExpCallbackDpl2:
+/* 8029383C 0028F49C 94 21 FF 50 */ stwu r1, -0xb0(r1)
+/* 80293840 0028F4A0 7C 08 02 A6 */ mflr r0
+/* 80293844 0028F4A4 90 01 00 B4 */ stw r0, 0xb4(r1)
+/* 80293848 0028F4A8 DB E1 00 A0 */ stfd f31, 0xa0(r1)
+/* 8029384C 0028F4AC F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0
+/* 80293850 0028F4B0 DB C1 00 90 */ stfd f30, 0x90(r1)
+/* 80293854 0028F4B4 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0
+/* 80293858 0028F4B8 39 61 00 90 */ addi r11, r1, 0x90
+/* 8029385C 0028F4BC 4B F3 38 C1 */ bl _savegpr_24
+/* 80293860 0028F4C0 80 04 01 3C */ lwz r0, 0x13c(r4)
+/* 80293864 0028F4C4 2C 00 00 00 */ cmpwi r0, 0
+/* 80293868 0028F4C8 41 82 00 10 */ beq lbl_80293878
+/* 8029386C 0028F4CC 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
+/* 80293870 0028F4D0 90 04 01 3C */ stw r0, 0x13c(r4)
+/* 80293874 0028F4D4 48 00 05 4C */ b lbl_80293DC0
+lbl_80293878:
+/* 80293878 0028F4D8 81 04 01 68 */ lwz r8, 0x168(r4)
+/* 8029387C 0028F4DC 80 E3 00 00 */ lwz r7, 0(r3)
+/* 80293880 0028F4E0 80 C3 00 04 */ lwz r6, 4(r3)
+/* 80293884 0028F4E4 2C 08 00 00 */ cmpwi r8, 0
+/* 80293888 0028F4E8 80 A3 00 08 */ lwz r5, 8(r3)
+/* 8029388C 0028F4EC 80 03 00 0C */ lwz r0, 0xc(r3)
+/* 80293890 0028F4F0 90 E1 00 38 */ stw r7, 0x38(r1)
+/* 80293894 0028F4F4 90 C1 00 3C */ stw r6, 0x3c(r1)
+/* 80293898 0028F4F8 90 A1 00 40 */ stw r5, 0x40(r1)
+/* 8029389C 0028F4FC 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802938A0 0028F500 41 82 00 24 */ beq lbl_802938C4
+/* 802938A4 0028F504 80 C8 00 00 */ lwz r6, 0(r8)
+/* 802938A8 0028F508 80 A8 00 04 */ lwz r5, 4(r8)
+/* 802938AC 0028F50C 80 68 00 08 */ lwz r3, 8(r8)
+/* 802938B0 0028F510 80 08 00 0C */ lwz r0, 0xc(r8)
+/* 802938B4 0028F514 90 C1 00 08 */ stw r6, 8(r1)
+/* 802938B8 0028F518 90 A1 00 0C */ stw r5, 0xc(r1)
+/* 802938BC 0028F51C 90 61 00 10 */ stw r3, 0x10(r1)
+/* 802938C0 0028F520 90 01 00 14 */ stw r0, 0x14(r1)
+lbl_802938C4:
+/* 802938C4 0028F524 81 04 01 6C */ lwz r8, 0x16c(r4)
+/* 802938C8 0028F528 2C 08 00 00 */ cmpwi r8, 0
+/* 802938CC 0028F52C 41 82 00 14 */ beq lbl_802938E0
+/* 802938D0 0028F530 80 68 00 00 */ lwz r3, 0(r8)
+/* 802938D4 0028F534 80 A8 00 04 */ lwz r5, 4(r8)
+/* 802938D8 0028F538 80 C8 00 08 */ lwz r6, 8(r8)
+/* 802938DC 0028F53C 80 E8 00 0C */ lwz r7, 0xc(r8)
+lbl_802938E0:
+/* 802938E0 0028F540 C0 02 A2 90 */ lfs f0, lbl_80642890-_SDA2_BASE_(r2)
+/* 802938E4 0028F544 3B C0 00 00 */ li r30, 0
+/* 802938E8 0028F548 C0 24 01 38 */ lfs f1, 0x138(r4)
+/* 802938EC 0028F54C 3B 80 00 00 */ li r28, 0
+/* 802938F0 0028F550 C0 A2 A2 94 */ lfs f5, lbl_80642894-_SDA2_BASE_(r2)
+/* 802938F4 0028F554 3C 00 43 30 */ lis r0, 0x4330
+/* 802938F8 0028F558 C0 64 01 64 */ lfs f3, 0x164(r4)
+/* 802938FC 0028F55C EC 80 08 28 */ fsubs f4, f0, f1
+/* 80293900 0028F560 C0 42 A2 98 */ lfs f2, lbl_80642898-_SDA2_BASE_(r2)
+/* 80293904 0028F564 3B A0 00 04 */ li r29, 4
+/* 80293908 0028F568 C0 04 01 5C */ lfs f0, 0x15c(r4)
+/* 8029390C 0028F56C EC A5 00 F2 */ fmuls f5, f5, f3
+/* 80293910 0028F570 C0 64 01 24 */ lfs f3, 0x124(r4)
+/* 80293914 0028F574 EC C2 00 32 */ fmuls f6, f2, f0
+/* 80293918 0028F578 C8 02 A2 A0 */ lfd f0, lbl_806428A0-_SDA2_BASE_(r2)
+lbl_8029391C:
+/* 8029391C 0028F57C 7C 8A 23 78 */ mr r10, r4
+/* 80293920 0028F580 7C 8B 23 78 */ mr r11, r4
+/* 80293924 0028F584 7C 8C 23 78 */ mr r12, r4
+/* 80293928 0028F588 39 01 00 08 */ addi r8, r1, 8
+/* 8029392C 0028F58C 39 21 00 38 */ addi r9, r1, 0x38
+/* 80293930 0028F590 3B E1 00 18 */ addi r31, r1, 0x18
+/* 80293934 0028F594 7F A9 03 A6 */ mtctr r29
+lbl_80293938:
+/* 80293938 0028F598 83 24 01 68 */ lwz r25, 0x168(r4)
+/* 8029393C 0028F59C 2C 19 00 00 */ cmpwi r25, 0
+/* 80293940 0028F5A0 41 82 00 38 */ beq lbl_80293978
+/* 80293944 0028F5A4 83 48 00 00 */ lwz r26, 0(r8)
+/* 80293948 0028F5A8 83 69 00 00 */ lwz r27, 0(r9)
+/* 8029394C 0028F5AC 83 3A 00 00 */ lwz r25, 0(r26)
+/* 80293950 0028F5B0 3B 5A 00 04 */ addi r26, r26, 4
+/* 80293954 0028F5B4 83 7B 00 00 */ lwz r27, 0(r27)
+/* 80293958 0028F5B8 90 01 00 48 */ stw r0, 0x48(r1)
+/* 8029395C 0028F5BC 7F 3B CA 14 */ add r25, r27, r25
+/* 80293960 0028F5C0 6F 39 80 00 */ xoris r25, r25, 0x8000
+/* 80293964 0028F5C4 93 48 00 00 */ stw r26, 0(r8)
+/* 80293968 0028F5C8 93 21 00 4C */ stw r25, 0x4c(r1)
+/* 8029396C 0028F5CC C8 41 00 48 */ lfd f2, 0x48(r1)
+/* 80293970 0028F5D0 ED 42 00 28 */ fsubs f10, f2, f0
+/* 80293974 0028F5D4 48 00 00 20 */ b lbl_80293994
+lbl_80293978:
+/* 80293978 0028F5D8 83 29 00 00 */ lwz r25, 0(r9)
+/* 8029397C 0028F5DC 90 01 00 50 */ stw r0, 0x50(r1)
+/* 80293980 0028F5E0 83 39 00 00 */ lwz r25, 0(r25)
+/* 80293984 0028F5E4 6F 39 80 00 */ xoris r25, r25, 0x8000
+/* 80293988 0028F5E8 93 21 00 54 */ stw r25, 0x54(r1)
+/* 8029398C 0028F5EC C8 41 00 50 */ lfd f2, 0x50(r1)
+/* 80293990 0028F5F0 ED 42 00 28 */ fsubs f10, f2, f0
+lbl_80293994:
+/* 80293994 0028F5F4 83 64 00 10 */ lwz r27, 0x10(r4)
+/* 80293998 0028F5F8 83 44 00 14 */ lwz r26, 0x14(r4)
+/* 8029399C 0028F5FC 83 0A 00 00 */ lwz r24, 0(r10)
+/* 802939A0 0028F600 57 7B 10 3A */ slwi r27, r27, 2
+/* 802939A4 0028F604 57 5A 10 3A */ slwi r26, r26, 2
+/* 802939A8 0028F608 83 24 00 18 */ lwz r25, 0x18(r4)
+/* 802939AC 0028F60C 7D 18 DC 2E */ lfsx f8, r24, r27
+/* 802939B0 0028F610 C1 24 00 24 */ lfs f9, 0x24(r4)
+/* 802939B4 0028F614 57 3B 10 3A */ slwi r27, r25, 2
+/* 802939B8 0028F618 7C 58 D4 2E */ lfsx f2, r24, r26
+/* 802939BC 0028F61C C0 E4 00 28 */ lfs f7, 0x28(r4)
+/* 802939C0 0028F620 ED 09 02 32 */ fmuls f8, f9, f8
+/* 802939C4 0028F624 C1 24 00 2C */ lfs f9, 0x2c(r4)
+/* 802939C8 0028F628 EC 47 00 B2 */ fmuls f2, f7, f2
+/* 802939CC 0028F62C 7C F8 DC 2E */ lfsx f7, r24, r27
+/* 802939D0 0028F630 83 44 00 44 */ lwz r26, 0x44(r4)
+/* 802939D4 0028F634 EC E9 01 F2 */ fmuls f7, f9, f7
+/* 802939D8 0028F638 EC 48 10 2A */ fadds f2, f8, f2
+/* 802939DC 0028F63C 2C 1A 00 00 */ cmpwi r26, 0
+/* 802939E0 0028F640 EC 47 10 2A */ fadds f2, f7, f2
+/* 802939E4 0028F644 41 82 00 1C */ beq lbl_80293A00
+/* 802939E8 0028F648 83 44 00 40 */ lwz r26, 0x40(r4)
+/* 802939EC 0028F64C 83 6A 00 30 */ lwz r27, 0x30(r10)
+/* 802939F0 0028F650 57 5A 10 3A */ slwi r26, r26, 2
+/* 802939F4 0028F654 7D 3B D4 2E */ lfsx f9, r27, r26
+/* 802939F8 0028F658 7D 5B D5 2E */ stfsx f10, r27, r26
+/* 802939FC 0028F65C 48 00 00 08 */ b lbl_80293A04
+lbl_80293A00:
+/* 80293A00 0028F660 FD 20 50 90 */ fmr f9, f10
+lbl_80293A04:
+/* 80293A04 0028F664 83 44 00 7C */ lwz r26, 0x7c(r4)
+/* 80293A08 0028F668 83 0B 00 4C */ lwz r24, 0x4c(r11)
+/* 80293A0C 0028F66C 57 5A 10 3A */ slwi r26, r26, 2
+/* 80293A10 0028F670 C0 E4 00 A0 */ lfs f7, 0xa0(r4)
+/* 80293A14 0028F674 7D 18 D4 2E */ lfsx f8, r24, r26
+/* 80293A18 0028F678 C1 42 A2 8C */ lfs f10, lbl_8064288C-_SDA2_BASE_(r2)
+/* 80293A1C 0028F67C EC E8 01 F2 */ fmuls f7, f8, f7
+/* 80293A20 0028F680 ED 4A 40 2A */ fadds f10, f10, f8
+/* 80293A24 0028F684 EC E9 38 2A */ fadds f7, f9, f7
+/* 80293A28 0028F688 7C F8 D5 2E */ stfsx f7, r24, r26
+/* 80293A2C 0028F68C 83 44 00 80 */ lwz r26, 0x80(r4)
+/* 80293A30 0028F690 83 2B 00 50 */ lwz r25, 0x50(r11)
+/* 80293A34 0028F694 57 5A 10 3A */ slwi r26, r26, 2
+/* 80293A38 0028F698 C0 E4 00 A4 */ lfs f7, 0xa4(r4)
+/* 80293A3C 0028F69C 7D 19 D4 2E */ lfsx f8, r25, r26
+/* 80293A40 0028F6A0 EC E8 01 F2 */ fmuls f7, f8, f7
+/* 80293A44 0028F6A4 ED 4A 40 2A */ fadds f10, f10, f8
+/* 80293A48 0028F6A8 EC E9 38 2A */ fadds f7, f9, f7
+/* 80293A4C 0028F6AC 7C F9 D5 2E */ stfsx f7, r25, r26
+/* 80293A50 0028F6B0 83 44 00 84 */ lwz r26, 0x84(r4)
+/* 80293A54 0028F6B4 83 6B 00 54 */ lwz r27, 0x54(r11)
+/* 80293A58 0028F6B8 57 5A 10 3A */ slwi r26, r26, 2
+/* 80293A5C 0028F6BC C0 E4 00 A8 */ lfs f7, 0xa8(r4)
+/* 80293A60 0028F6C0 7D 1B D4 2E */ lfsx f8, r27, r26
+/* 80293A64 0028F6C4 EC E8 01 F2 */ fmuls f7, f8, f7
+/* 80293A68 0028F6C8 ED 4A 40 2A */ fadds f10, f10, f8
+/* 80293A6C 0028F6CC EC E9 38 2A */ fadds f7, f9, f7
+/* 80293A70 0028F6D0 7C FB D5 2E */ stfsx f7, r27, r26
+/* 80293A74 0028F6D4 83 44 00 CC */ lwz r26, 0xcc(r4)
+/* 80293A78 0028F6D8 83 0C 00 AC */ lwz r24, 0xac(r12)
+/* 80293A7C 0028F6DC 57 5A 10 3A */ slwi r26, r26, 2
+/* 80293A80 0028F6E0 7D 18 D4 2E */ lfsx f8, r24, r26
+/* 80293A84 0028F6E4 EC E8 00 F2 */ fmuls f7, f8, f3
+/* 80293A88 0028F6E8 EC EA 38 2A */ fadds f7, f10, f7
+/* 80293A8C 0028F6EC 7C F8 D5 2E */ stfsx f7, r24, r26
+/* 80293A90 0028F6F0 EC E7 00 F2 */ fmuls f7, f7, f3
+/* 80293A94 0028F6F4 83 44 00 D0 */ lwz r26, 0xd0(r4)
+/* 80293A98 0028F6F8 83 2C 00 B0 */ lwz r25, 0xb0(r12)
+/* 80293A9C 0028F6FC ED 08 38 28 */ fsubs f8, f8, f7
+/* 80293AA0 0028F700 57 5A 10 3A */ slwi r26, r26, 2
+/* 80293AA4 0028F704 7D 39 D4 2E */ lfsx f9, r25, r26
+/* 80293AA8 0028F708 EC E9 00 F2 */ fmuls f7, f9, f3
+/* 80293AAC 0028F70C EC E8 38 2A */ fadds f7, f8, f7
+/* 80293AB0 0028F710 ED 07 00 F2 */ fmuls f8, f7, f3
+/* 80293AB4 0028F714 7C F9 D5 2E */ stfsx f7, r25, r26
+/* 80293AB8 0028F718 C0 EA 01 28 */ lfs f7, 0x128(r10)
+/* 80293ABC 0028F71C ED 09 40 28 */ fsubs f8, f9, f8
+/* 80293AC0 0028F720 EC E1 01 F2 */ fmuls f7, f1, f7
+/* 80293AC4 0028F724 ED 04 02 32 */ fmuls f8, f4, f8
+/* 80293AC8 0028F728 ED 28 38 2A */ fadds f9, f8, f7
+/* 80293ACC 0028F72C D1 2A 01 28 */ stfs f9, 0x128(r10)
+/* 80293AD0 0028F730 83 4A 00 F4 */ lwz r26, 0xf4(r10)
+/* 80293AD4 0028F734 83 6A 00 E4 */ lwz r27, 0xe4(r10)
+/* 80293AD8 0028F738 57 5A 10 3A */ slwi r26, r26, 2
+/* 80293ADC 0028F73C 7D 1B D4 2E */ lfsx f8, r27, r26
+/* 80293AE0 0028F740 EC E8 00 F2 */ fmuls f7, f8, f3
+/* 80293AE4 0028F744 EC E9 38 2A */ fadds f7, f9, f7
+/* 80293AE8 0028F748 7C FB D5 2E */ stfsx f7, r27, r26
+/* 80293AEC 0028F74C EC E7 00 F2 */ fmuls f7, f7, f3
+/* 80293AF0 0028F750 83 4A 00 F4 */ lwz r26, 0xf4(r10)
+/* 80293AF4 0028F754 EC E8 38 28 */ fsubs f7, f8, f7
+/* 80293AF8 0028F758 3B 7A 00 01 */ addi r27, r26, 1
+/* 80293AFC 0028F75C 93 6A 00 F4 */ stw r27, 0xf4(r10)
+/* 80293B00 0028F760 83 4A 01 04 */ lwz r26, 0x104(r10)
+/* 80293B04 0028F764 D0 FF 00 00 */ stfs f7, 0(r31)
+/* 80293B08 0028F768 7C 1B D0 40 */ cmplw r27, r26
+/* 80293B0C 0028F76C 41 80 00 08 */ blt lbl_80293B14
+/* 80293B10 0028F770 93 8A 00 F4 */ stw r28, 0xf4(r10)
+lbl_80293B14:
+/* 80293B14 0028F774 C0 FF 00 00 */ lfs f7, 0(r31)
+/* 80293B18 0028F778 39 08 00 04 */ addi r8, r8, 4
+/* 80293B1C 0028F77C 39 29 00 04 */ addi r9, r9, 4
+/* 80293B20 0028F780 39 4A 00 04 */ addi r10, r10, 4
+/* 80293B24 0028F784 EC E7 01 72 */ fmuls f7, f7, f5
+/* 80293B28 0028F788 39 6B 00 0C */ addi r11, r11, 0xc
+/* 80293B2C 0028F78C 39 8C 00 08 */ addi r12, r12, 8
+/* 80293B30 0028F790 EC 47 10 2A */ fadds f2, f7, f2
+/* 80293B34 0028F794 D0 5F 00 00 */ stfs f2, 0(r31)
+/* 80293B38 0028F798 3B FF 00 04 */ addi r31, r31, 4
+/* 80293B3C 0028F79C 42 00 FD FC */ bdnz lbl_80293938
+/* 80293B40 0028F7A0 C3 E1 00 1C */ lfs f31, 0x1c(r1)
+/* 80293B44 0028F7A4 C1 A1 00 20 */ lfs f13, 0x20(r1)
+/* 80293B48 0028F7A8 C1 41 00 18 */ lfs f10, 0x18(r1)
+/* 80293B4C 0028F7AC EC FF 68 2A */ fadds f7, f31, f13
+/* 80293B50 0028F7B0 C1 81 00 24 */ lfs f12, 0x24(r1)
+/* 80293B54 0028F7B4 EC 4A 68 2A */ fadds f2, f10, f13
+/* 80293B58 0028F7B8 83 41 00 38 */ lwz r26, 0x38(r1)
+/* 80293B5C 0028F7BC ED 6A F8 2A */ fadds f11, f10, f31
+/* 80293B60 0028F7C0 81 21 00 44 */ lwz r9, 0x44(r1)
+/* 80293B64 0028F7C4 EC EC 38 2A */ fadds f7, f12, f7
+/* 80293B68 0028F7C8 3B 7A 00 04 */ addi r27, r26, 4
+/* 80293B6C 0028F7CC ED 0C 10 2A */ fadds f8, f12, f2
+/* 80293B70 0028F7D0 39 09 00 04 */ addi r8, r9, 4
+/* 80293B74 0028F7D4 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 80293B78 0028F7D8 EF CC 58 2A */ fadds f30, f12, f11
+/* 80293B7C 0028F7DC ED 27 01 B2 */ fmuls f9, f7, f6
+/* 80293B80 0028F7E0 81 61 00 40 */ lwz r11, 0x40(r1)
+/* 80293B84 0028F7E4 C0 44 01 70 */ lfs f2, 0x170(r4)
+/* 80293B88 0028F7E8 39 9F 00 04 */ addi r12, r31, 4
+/* 80293B8C 0028F7EC 39 4B 00 04 */ addi r10, r11, 4
+/* 80293B90 0028F7F0 ED 08 01 B2 */ fmuls f8, f8, f6
+/* 80293B94 0028F7F4 ED 4A 48 2A */ fadds f10, f10, f9
+/* 80293B98 0028F7F8 93 61 00 38 */ stw r27, 0x38(r1)
+/* 80293B9C 0028F7FC ED 3F 40 2A */ fadds f9, f31, f8
+/* 80293BA0 0028F800 EC FE 01 B2 */ fmuls f7, f30, f6
+/* 80293BA4 0028F804 91 01 00 44 */ stw r8, 0x44(r1)
+/* 80293BA8 0028F808 EC 4A 00 B2 */ fmuls f2, f10, f2
+/* 80293BAC 0028F80C D1 41 00 28 */ stfs f10, 0x28(r1)
+/* 80293BB0 0028F810 ED 0D 38 2A */ fadds f8, f13, f7
+/* 80293BB4 0028F814 FC 40 10 1E */ fctiwz f2, f2
+/* 80293BB8 0028F818 D1 21 00 2C */ stfs f9, 0x2c(r1)
+/* 80293BBC 0028F81C EC ED 58 2A */ fadds f7, f13, f11
+/* 80293BC0 0028F820 D1 01 00 30 */ stfs f8, 0x30(r1)
+/* 80293BC4 0028F824 D8 41 00 50 */ stfd f2, 0x50(r1)
+/* 80293BC8 0028F828 EC E7 01 B2 */ fmuls f7, f7, f6
+/* 80293BCC 0028F82C 83 61 00 54 */ lwz r27, 0x54(r1)
+/* 80293BD0 0028F830 EC EC 38 2A */ fadds f7, f12, f7
+/* 80293BD4 0028F834 91 81 00 3C */ stw r12, 0x3c(r1)
+/* 80293BD8 0028F838 93 7A 00 00 */ stw r27, 0(r26)
+/* 80293BDC 0028F83C C0 44 01 70 */ lfs f2, 0x170(r4)
+/* 80293BE0 0028F840 D0 E1 00 34 */ stfs f7, 0x34(r1)
+/* 80293BE4 0028F844 EC 49 00 B2 */ fmuls f2, f9, f2
+/* 80293BE8 0028F848 91 41 00 40 */ stw r10, 0x40(r1)
+/* 80293BEC 0028F84C FC 40 10 1E */ fctiwz f2, f2
+/* 80293BF0 0028F850 D8 41 00 48 */ stfd f2, 0x48(r1)
+/* 80293BF4 0028F854 81 01 00 4C */ lwz r8, 0x4c(r1)
+/* 80293BF8 0028F858 91 1F 00 00 */ stw r8, 0(r31)
+/* 80293BFC 0028F85C C0 44 01 70 */ lfs f2, 0x170(r4)
+/* 80293C00 0028F860 EC 48 00 B2 */ fmuls f2, f8, f2
+/* 80293C04 0028F864 FC 40 10 1E */ fctiwz f2, f2
+/* 80293C08 0028F868 D8 41 00 58 */ stfd f2, 0x58(r1)
+/* 80293C0C 0028F86C 81 01 00 5C */ lwz r8, 0x5c(r1)
+/* 80293C10 0028F870 91 0B 00 00 */ stw r8, 0(r11)
+/* 80293C14 0028F874 C0 44 01 70 */ lfs f2, 0x170(r4)
+/* 80293C18 0028F878 EC 47 00 B2 */ fmuls f2, f7, f2
+/* 80293C1C 0028F87C FC 40 10 1E */ fctiwz f2, f2
+/* 80293C20 0028F880 D8 41 00 60 */ stfd f2, 0x60(r1)
+/* 80293C24 0028F884 81 01 00 64 */ lwz r8, 0x64(r1)
+/* 80293C28 0028F888 91 09 00 00 */ stw r8, 0(r9)
+/* 80293C2C 0028F88C 81 04 01 6C */ lwz r8, 0x16c(r4)
+/* 80293C30 0028F890 2C 08 00 00 */ cmpwi r8, 0
+/* 80293C34 0028F894 41 82 00 74 */ beq lbl_80293CA8
+/* 80293C38 0028F898 C0 44 01 74 */ lfs f2, 0x174(r4)
+/* 80293C3C 0028F89C EC 4A 00 B2 */ fmuls f2, f10, f2
+/* 80293C40 0028F8A0 FC 40 10 1E */ fctiwz f2, f2
+/* 80293C44 0028F8A4 D8 41 00 60 */ stfd f2, 0x60(r1)
+/* 80293C48 0028F8A8 81 01 00 64 */ lwz r8, 0x64(r1)
+/* 80293C4C 0028F8AC 91 03 00 00 */ stw r8, 0(r3)
+/* 80293C50 0028F8B0 38 63 00 04 */ addi r3, r3, 4
+/* 80293C54 0028F8B4 C0 44 01 74 */ lfs f2, 0x174(r4)
+/* 80293C58 0028F8B8 EC 49 00 B2 */ fmuls f2, f9, f2
+/* 80293C5C 0028F8BC FC 40 10 1E */ fctiwz f2, f2
+/* 80293C60 0028F8C0 D8 41 00 58 */ stfd f2, 0x58(r1)
+/* 80293C64 0028F8C4 81 01 00 5C */ lwz r8, 0x5c(r1)
+/* 80293C68 0028F8C8 91 05 00 00 */ stw r8, 0(r5)
+/* 80293C6C 0028F8CC 38 A5 00 04 */ addi r5, r5, 4
+/* 80293C70 0028F8D0 C0 44 01 74 */ lfs f2, 0x174(r4)
+/* 80293C74 0028F8D4 EC 48 00 B2 */ fmuls f2, f8, f2
+/* 80293C78 0028F8D8 FC 40 10 1E */ fctiwz f2, f2
+/* 80293C7C 0028F8DC D8 41 00 50 */ stfd f2, 0x50(r1)
+/* 80293C80 0028F8E0 81 01 00 54 */ lwz r8, 0x54(r1)
+/* 80293C84 0028F8E4 91 06 00 00 */ stw r8, 0(r6)
+/* 80293C88 0028F8E8 38 C6 00 04 */ addi r6, r6, 4
+/* 80293C8C 0028F8EC C0 44 01 74 */ lfs f2, 0x174(r4)
+/* 80293C90 0028F8F0 EC 47 00 B2 */ fmuls f2, f7, f2
+/* 80293C94 0028F8F4 FC 40 10 1E */ fctiwz f2, f2
+/* 80293C98 0028F8F8 D8 41 00 48 */ stfd f2, 0x48(r1)
+/* 80293C9C 0028F8FC 81 01 00 4C */ lwz r8, 0x4c(r1)
+/* 80293CA0 0028F900 91 07 00 00 */ stw r8, 0(r7)
+/* 80293CA4 0028F904 38 E7 00 04 */ addi r7, r7, 4
+lbl_80293CA8:
+/* 80293CA8 0028F908 81 04 00 10 */ lwz r8, 0x10(r4)
+/* 80293CAC 0028F90C 39 28 00 01 */ addi r9, r8, 1
+/* 80293CB0 0028F910 91 24 00 10 */ stw r9, 0x10(r4)
+/* 80293CB4 0028F914 81 04 00 1C */ lwz r8, 0x1c(r4)
+/* 80293CB8 0028F918 7C 09 40 40 */ cmplw r9, r8
+/* 80293CBC 0028F91C 41 80 00 08 */ blt lbl_80293CC4
+/* 80293CC0 0028F920 93 84 00 10 */ stw r28, 0x10(r4)
+lbl_80293CC4:
+/* 80293CC4 0028F924 81 04 00 14 */ lwz r8, 0x14(r4)
+/* 80293CC8 0028F928 39 28 00 01 */ addi r9, r8, 1
+/* 80293CCC 0028F92C 91 24 00 14 */ stw r9, 0x14(r4)
+/* 80293CD0 0028F930 81 04 00 1C */ lwz r8, 0x1c(r4)
+/* 80293CD4 0028F934 7C 09 40 40 */ cmplw r9, r8
+/* 80293CD8 0028F938 41 80 00 08 */ blt lbl_80293CE0
+/* 80293CDC 0028F93C 93 84 00 14 */ stw r28, 0x14(r4)
+lbl_80293CE0:
+/* 80293CE0 0028F940 81 04 00 18 */ lwz r8, 0x18(r4)
+/* 80293CE4 0028F944 39 44 00 08 */ addi r10, r4, 8
+/* 80293CE8 0028F948 39 28 00 01 */ addi r9, r8, 1
+/* 80293CEC 0028F94C 91 24 00 18 */ stw r9, 0x18(r4)
+/* 80293CF0 0028F950 81 04 00 1C */ lwz r8, 0x1c(r4)
+/* 80293CF4 0028F954 7C 09 40 40 */ cmplw r9, r8
+/* 80293CF8 0028F958 41 80 00 08 */ blt lbl_80293D00
+/* 80293CFC 0028F95C 93 8A 00 10 */ stw r28, 0x10(r10)
+lbl_80293D00:
+/* 80293D00 0028F960 81 24 00 44 */ lwz r9, 0x44(r4)
+/* 80293D04 0028F964 2C 09 00 00 */ cmpwi r9, 0
+/* 80293D08 0028F968 41 82 00 1C */ beq lbl_80293D24
+/* 80293D0C 0028F96C 81 04 00 40 */ lwz r8, 0x40(r4)
+/* 80293D10 0028F970 39 08 00 01 */ addi r8, r8, 1
+/* 80293D14 0028F974 7C 08 48 40 */ cmplw r8, r9
+/* 80293D18 0028F978 91 04 00 40 */ stw r8, 0x40(r4)
+/* 80293D1C 0028F97C 41 80 00 08 */ blt lbl_80293D24
+/* 80293D20 0028F980 93 84 00 40 */ stw r28, 0x40(r4)
+lbl_80293D24:
+/* 80293D24 0028F984 81 04 00 7C */ lwz r8, 0x7c(r4)
+/* 80293D28 0028F988 39 28 00 01 */ addi r9, r8, 1
+/* 80293D2C 0028F98C 91 24 00 7C */ stw r9, 0x7c(r4)
+/* 80293D30 0028F990 81 04 00 88 */ lwz r8, 0x88(r4)
+/* 80293D34 0028F994 7C 09 40 40 */ cmplw r9, r8
+/* 80293D38 0028F998 41 80 00 08 */ blt lbl_80293D40
+/* 80293D3C 0028F99C 93 84 00 7C */ stw r28, 0x7c(r4)
+lbl_80293D40:
+/* 80293D40 0028F9A0 81 04 00 80 */ lwz r8, 0x80(r4)
+/* 80293D44 0028F9A4 39 28 00 01 */ addi r9, r8, 1
+/* 80293D48 0028F9A8 91 24 00 80 */ stw r9, 0x80(r4)
+/* 80293D4C 0028F9AC 81 04 00 8C */ lwz r8, 0x8c(r4)
+/* 80293D50 0028F9B0 7C 09 40 40 */ cmplw r9, r8
+/* 80293D54 0028F9B4 41 80 00 08 */ blt lbl_80293D5C
+/* 80293D58 0028F9B8 93 84 00 80 */ stw r28, 0x80(r4)
+lbl_80293D5C:
+/* 80293D5C 0028F9BC 81 04 00 84 */ lwz r8, 0x84(r4)
+/* 80293D60 0028F9C0 39 44 00 08 */ addi r10, r4, 8
+/* 80293D64 0028F9C4 39 28 00 01 */ addi r9, r8, 1
+/* 80293D68 0028F9C8 91 24 00 84 */ stw r9, 0x84(r4)
+/* 80293D6C 0028F9CC 81 04 00 90 */ lwz r8, 0x90(r4)
+/* 80293D70 0028F9D0 7C 09 40 40 */ cmplw r9, r8
+/* 80293D74 0028F9D4 41 80 00 08 */ blt lbl_80293D7C
+/* 80293D78 0028F9D8 93 8A 00 7C */ stw r28, 0x7c(r10)
+lbl_80293D7C:
+/* 80293D7C 0028F9DC 81 04 00 CC */ lwz r8, 0xcc(r4)
+/* 80293D80 0028F9E0 39 28 00 01 */ addi r9, r8, 1
+/* 80293D84 0028F9E4 91 24 00 CC */ stw r9, 0xcc(r4)
+/* 80293D88 0028F9E8 81 04 00 D4 */ lwz r8, 0xd4(r4)
+/* 80293D8C 0028F9EC 7C 09 40 40 */ cmplw r9, r8
+/* 80293D90 0028F9F0 41 80 00 08 */ blt lbl_80293D98
+/* 80293D94 0028F9F4 93 84 00 CC */ stw r28, 0xcc(r4)
+lbl_80293D98:
+/* 80293D98 0028F9F8 81 04 00 D0 */ lwz r8, 0xd0(r4)
+/* 80293D9C 0028F9FC 39 28 00 01 */ addi r9, r8, 1
+/* 80293DA0 0028FA00 91 24 00 D0 */ stw r9, 0xd0(r4)
+/* 80293DA4 0028FA04 81 04 00 D8 */ lwz r8, 0xd8(r4)
+/* 80293DA8 0028FA08 7C 09 40 40 */ cmplw r9, r8
+/* 80293DAC 0028FA0C 41 80 00 08 */ blt lbl_80293DB4
+/* 80293DB0 0028FA10 93 84 00 D0 */ stw r28, 0xd0(r4)
+lbl_80293DB4:
+/* 80293DB4 0028FA14 3B DE 00 01 */ addi r30, r30, 1
+/* 80293DB8 0028FA18 28 1E 00 60 */ cmplwi r30, 0x60
+/* 80293DBC 0028FA1C 41 80 FB 60 */ blt lbl_8029391C
+lbl_80293DC0:
+/* 80293DC0 0028FA20 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0
+/* 80293DC4 0028FA24 CB E1 00 A0 */ lfd f31, 0xa0(r1)
+/* 80293DC8 0028FA28 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0
+/* 80293DCC 0028FA2C 39 61 00 90 */ addi r11, r1, 0x90
+/* 80293DD0 0028FA30 CB C1 00 90 */ lfd f30, 0x90(r1)
+/* 80293DD4 0028FA34 4B F3 33 95 */ bl _restgpr_24
+/* 80293DD8 0028FA38 80 01 00 B4 */ lwz r0, 0xb4(r1)
+/* 80293DDC 0028FA3C 7C 08 03 A6 */ mtlr r0
+/* 80293DE0 0028FA40 38 21 00 B0 */ addi r1, r1, 0xb0
+/* 80293DE4 0028FA44 4E 80 00 20 */ blr
+
+__AllocDelayLine:
+/* 80293DE8 0028FA48 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80293DEC 0028FA4C 7C 08 02 A6 */ mflr r0
+/* 80293DF0 0028FA50 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80293DF4 0028FA54 39 61 00 30 */ addi r11, r1, 0x30
+/* 80293DF8 0028FA58 4B F3 33 21 */ bl _savegpr_23
+/* 80293DFC 0028FA5C 7C 77 1B 78 */ mr r23, r3
+/* 80293E00 0028FA60 3B 00 00 00 */ li r24, 0
+/* 80293E04 0028FA64 7E FE BB 78 */ mr r30, r23
+/* 80293E08 0028FA68 3B E0 00 00 */ li r31, 0
+/* 80293E0C 0028FA6C 7E FD BB 78 */ mr r29, r23
+/* 80293E10 0028FA70 7E FC BB 78 */ mr r28, r23
+lbl_80293E14:
+/* 80293E14 0028FA74 80 17 00 20 */ lwz r0, 0x20(r23)
+/* 80293E18 0028FA78 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80293E1C 0028FA7C 54 03 10 3A */ slwi r3, r0, 2
+/* 80293E20 0028FA80 7D 89 03 A6 */ mtctr r12
+/* 80293E24 0028FA84 4E 80 04 21 */ bctrl
+/* 80293E28 0028FA88 2C 03 00 00 */ cmpwi r3, 0
+/* 80293E2C 0028FA8C 90 7E 00 00 */ stw r3, 0(r30)
+/* 80293E30 0028FA90 40 82 00 0C */ bne lbl_80293E3C
+/* 80293E34 0028FA94 38 60 00 00 */ li r3, 0
+/* 80293E38 0028FA98 48 00 01 0C */ b lbl_80293F44
+lbl_80293E3C:
+/* 80293E3C 0028FA9C 80 17 00 48 */ lwz r0, 0x48(r23)
+/* 80293E40 0028FAA0 2C 00 00 00 */ cmpwi r0, 0
+/* 80293E44 0028FAA4 41 82 00 28 */ beq lbl_80293E6C
+/* 80293E48 0028FAA8 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80293E4C 0028FAAC 54 03 10 3A */ slwi r3, r0, 2
+/* 80293E50 0028FAB0 7D 89 03 A6 */ mtctr r12
+/* 80293E54 0028FAB4 4E 80 04 21 */ bctrl
+/* 80293E58 0028FAB8 2C 03 00 00 */ cmpwi r3, 0
+/* 80293E5C 0028FABC 90 7E 00 30 */ stw r3, 0x30(r30)
+/* 80293E60 0028FAC0 40 82 00 10 */ bne lbl_80293E70
+/* 80293E64 0028FAC4 38 60 00 00 */ li r3, 0
+/* 80293E68 0028FAC8 48 00 00 DC */ b lbl_80293F44
+lbl_80293E6C:
+/* 80293E6C 0028FACC 93 FE 00 30 */ stw r31, 0x30(r30)
+lbl_80293E70:
+/* 80293E70 0028FAD0 7E FA BB 78 */ mr r26, r23
+/* 80293E74 0028FAD4 7F BB EB 78 */ mr r27, r29
+/* 80293E78 0028FAD8 3B 20 00 00 */ li r25, 0
+lbl_80293E7C:
+/* 80293E7C 0028FADC 80 1A 00 94 */ lwz r0, 0x94(r26)
+/* 80293E80 0028FAE0 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80293E84 0028FAE4 54 03 10 3A */ slwi r3, r0, 2
+/* 80293E88 0028FAE8 7D 89 03 A6 */ mtctr r12
+/* 80293E8C 0028FAEC 4E 80 04 21 */ bctrl
+/* 80293E90 0028FAF0 2C 03 00 00 */ cmpwi r3, 0
+/* 80293E94 0028FAF4 90 7B 00 4C */ stw r3, 0x4c(r27)
+/* 80293E98 0028FAF8 40 82 00 0C */ bne lbl_80293EA4
+/* 80293E9C 0028FAFC 38 60 00 00 */ li r3, 0
+/* 80293EA0 0028FB00 48 00 00 A4 */ b lbl_80293F44
+lbl_80293EA4:
+/* 80293EA4 0028FB04 3B 39 00 01 */ addi r25, r25, 1
+/* 80293EA8 0028FB08 3B 7B 00 04 */ addi r27, r27, 4
+/* 80293EAC 0028FB0C 28 19 00 03 */ cmplwi r25, 3
+/* 80293EB0 0028FB10 3B 5A 00 04 */ addi r26, r26, 4
+/* 80293EB4 0028FB14 41 80 FF C8 */ blt lbl_80293E7C
+/* 80293EB8 0028FB18 7E FB BB 78 */ mr r27, r23
+/* 80293EBC 0028FB1C 7F 9A E3 78 */ mr r26, r28
+/* 80293EC0 0028FB20 3B 20 00 00 */ li r25, 0
+lbl_80293EC4:
+/* 80293EC4 0028FB24 80 1B 00 DC */ lwz r0, 0xdc(r27)
+/* 80293EC8 0028FB28 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80293ECC 0028FB2C 54 03 10 3A */ slwi r3, r0, 2
+/* 80293ED0 0028FB30 7D 89 03 A6 */ mtctr r12
+/* 80293ED4 0028FB34 4E 80 04 21 */ bctrl
+/* 80293ED8 0028FB38 2C 03 00 00 */ cmpwi r3, 0
+/* 80293EDC 0028FB3C 90 7A 00 AC */ stw r3, 0xac(r26)
+/* 80293EE0 0028FB40 40 82 00 0C */ bne lbl_80293EEC
+/* 80293EE4 0028FB44 38 60 00 00 */ li r3, 0
+/* 80293EE8 0028FB48 48 00 00 5C */ b lbl_80293F44
+lbl_80293EEC:
+/* 80293EEC 0028FB4C 3B 39 00 01 */ addi r25, r25, 1
+/* 80293EF0 0028FB50 3B 5A 00 04 */ addi r26, r26, 4
+/* 80293EF4 0028FB54 28 19 00 02 */ cmplwi r25, 2
+/* 80293EF8 0028FB58 3B 7B 00 04 */ addi r27, r27, 4
+/* 80293EFC 0028FB5C 41 80 FF C8 */ blt lbl_80293EC4
+/* 80293F00 0028FB60 80 1E 01 14 */ lwz r0, 0x114(r30)
+/* 80293F04 0028FB64 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80293F08 0028FB68 54 03 10 3A */ slwi r3, r0, 2
+/* 80293F0C 0028FB6C 7D 89 03 A6 */ mtctr r12
+/* 80293F10 0028FB70 4E 80 04 21 */ bctrl
+/* 80293F14 0028FB74 2C 03 00 00 */ cmpwi r3, 0
+/* 80293F18 0028FB78 90 7E 00 E4 */ stw r3, 0xe4(r30)
+/* 80293F1C 0028FB7C 40 82 00 0C */ bne lbl_80293F28
+/* 80293F20 0028FB80 38 60 00 00 */ li r3, 0
+/* 80293F24 0028FB84 48 00 00 20 */ b lbl_80293F44
+lbl_80293F28:
+/* 80293F28 0028FB88 3B 18 00 01 */ addi r24, r24, 1
+/* 80293F2C 0028FB8C 3B BD 00 0C */ addi r29, r29, 0xc
+/* 80293F30 0028FB90 28 18 00 04 */ cmplwi r24, 4
+/* 80293F34 0028FB94 3B 9C 00 08 */ addi r28, r28, 8
+/* 80293F38 0028FB98 3B DE 00 04 */ addi r30, r30, 4
+/* 80293F3C 0028FB9C 41 80 FE D8 */ blt lbl_80293E14
+/* 80293F40 0028FBA0 38 60 00 01 */ li r3, 1
+lbl_80293F44:
+/* 80293F44 0028FBA4 39 61 00 30 */ addi r11, r1, 0x30
+/* 80293F48 0028FBA8 4B F3 32 1D */ bl _restgpr_23
+/* 80293F4C 0028FBAC 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80293F50 0028FBB0 7C 08 03 A6 */ mtlr r0
+/* 80293F54 0028FBB4 38 21 00 30 */ addi r1, r1, 0x30
+/* 80293F58 0028FBB8 4E 80 00 20 */ blr
+
+__BzeroDelayLines:
+/* 80293F5C 0028FBBC 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80293F60 0028FBC0 7C 08 02 A6 */ mflr r0
+/* 80293F64 0028FBC4 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80293F68 0028FBC8 39 61 00 30 */ addi r11, r1, 0x30
+/* 80293F6C 0028FBCC 4B F3 31 B1 */ bl _savegpr_24
+/* 80293F70 0028FBD0 7C 78 1B 78 */ mr r24, r3
+/* 80293F74 0028FBD4 3B 20 00 00 */ li r25, 0
+/* 80293F78 0028FBD8 7F 1F C3 78 */ mr r31, r24
+/* 80293F7C 0028FBDC 7F 1E C3 78 */ mr r30, r24
+/* 80293F80 0028FBE0 7F 1D C3 78 */ mr r29, r24
+lbl_80293F84:
+/* 80293F84 0028FBE4 80 7F 00 00 */ lwz r3, 0(r31)
+/* 80293F88 0028FBE8 2C 03 00 00 */ cmpwi r3, 0
+/* 80293F8C 0028FBEC 41 82 00 14 */ beq lbl_80293FA0
+/* 80293F90 0028FBF0 80 18 00 20 */ lwz r0, 0x20(r24)
+/* 80293F94 0028FBF4 38 80 00 00 */ li r4, 0
+/* 80293F98 0028FBF8 54 05 10 3A */ slwi r5, r0, 2
+/* 80293F9C 0028FBFC 4B D7 01 69 */ bl memset
+lbl_80293FA0:
+/* 80293FA0 0028FC00 80 7F 00 30 */ lwz r3, 0x30(r31)
+/* 80293FA4 0028FC04 2C 03 00 00 */ cmpwi r3, 0
+/* 80293FA8 0028FC08 41 82 00 14 */ beq lbl_80293FBC
+/* 80293FAC 0028FC0C 80 18 00 48 */ lwz r0, 0x48(r24)
+/* 80293FB0 0028FC10 38 80 00 00 */ li r4, 0
+/* 80293FB4 0028FC14 54 05 10 3A */ slwi r5, r0, 2
+/* 80293FB8 0028FC18 4B D7 01 4D */ bl memset
+lbl_80293FBC:
+/* 80293FBC 0028FC1C 7F DB F3 78 */ mr r27, r30
+/* 80293FC0 0028FC20 7F 1C C3 78 */ mr r28, r24
+/* 80293FC4 0028FC24 3B 40 00 00 */ li r26, 0
+lbl_80293FC8:
+/* 80293FC8 0028FC28 80 7B 00 4C */ lwz r3, 0x4c(r27)
+/* 80293FCC 0028FC2C 2C 03 00 00 */ cmpwi r3, 0
+/* 80293FD0 0028FC30 41 82 00 14 */ beq lbl_80293FE4
+/* 80293FD4 0028FC34 80 1C 00 94 */ lwz r0, 0x94(r28)
+/* 80293FD8 0028FC38 38 80 00 00 */ li r4, 0
+/* 80293FDC 0028FC3C 54 05 10 3A */ slwi r5, r0, 2
+/* 80293FE0 0028FC40 4B D7 01 25 */ bl memset
+lbl_80293FE4:
+/* 80293FE4 0028FC44 3B 5A 00 01 */ addi r26, r26, 1
+/* 80293FE8 0028FC48 3B 9C 00 04 */ addi r28, r28, 4
+/* 80293FEC 0028FC4C 28 1A 00 03 */ cmplwi r26, 3
+/* 80293FF0 0028FC50 3B 7B 00 04 */ addi r27, r27, 4
+/* 80293FF4 0028FC54 41 80 FF D4 */ blt lbl_80293FC8
+/* 80293FF8 0028FC58 7F BC EB 78 */ mr r28, r29
+/* 80293FFC 0028FC5C 7F 1B C3 78 */ mr r27, r24
+/* 80294000 0028FC60 3B 40 00 00 */ li r26, 0
+lbl_80294004:
+/* 80294004 0028FC64 80 7C 00 AC */ lwz r3, 0xac(r28)
+/* 80294008 0028FC68 2C 03 00 00 */ cmpwi r3, 0
+/* 8029400C 0028FC6C 41 82 00 14 */ beq lbl_80294020
+/* 80294010 0028FC70 80 1B 00 DC */ lwz r0, 0xdc(r27)
+/* 80294014 0028FC74 38 80 00 00 */ li r4, 0
+/* 80294018 0028FC78 54 05 10 3A */ slwi r5, r0, 2
+/* 8029401C 0028FC7C 4B D7 00 E9 */ bl memset
+lbl_80294020:
+/* 80294020 0028FC80 3B 5A 00 01 */ addi r26, r26, 1
+/* 80294024 0028FC84 3B 7B 00 04 */ addi r27, r27, 4
+/* 80294028 0028FC88 28 1A 00 02 */ cmplwi r26, 2
+/* 8029402C 0028FC8C 3B 9C 00 04 */ addi r28, r28, 4
+/* 80294030 0028FC90 41 80 FF D4 */ blt lbl_80294004
+/* 80294034 0028FC94 80 7F 00 E4 */ lwz r3, 0xe4(r31)
+/* 80294038 0028FC98 2C 03 00 00 */ cmpwi r3, 0
+/* 8029403C 0028FC9C 41 82 00 14 */ beq lbl_80294050
+/* 80294040 0028FCA0 80 1F 01 14 */ lwz r0, 0x114(r31)
+/* 80294044 0028FCA4 38 80 00 00 */ li r4, 0
+/* 80294048 0028FCA8 54 05 10 3A */ slwi r5, r0, 2
+/* 8029404C 0028FCAC 4B D7 00 B9 */ bl memset
+lbl_80294050:
+/* 80294050 0028FCB0 3B 39 00 01 */ addi r25, r25, 1
+/* 80294054 0028FCB4 3B DE 00 0C */ addi r30, r30, 0xc
+/* 80294058 0028FCB8 28 19 00 04 */ cmplwi r25, 4
+/* 8029405C 0028FCBC 3B BD 00 08 */ addi r29, r29, 8
+/* 80294060 0028FCC0 3B FF 00 04 */ addi r31, r31, 4
+/* 80294064 0028FCC4 41 80 FF 20 */ blt lbl_80293F84
+/* 80294068 0028FCC8 39 61 00 30 */ addi r11, r1, 0x30
+/* 8029406C 0028FCCC 4B F3 30 FD */ bl _restgpr_24
+/* 80294070 0028FCD0 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80294074 0028FCD4 7C 08 03 A6 */ mtlr r0
+/* 80294078 0028FCD8 38 21 00 30 */ addi r1, r1, 0x30
+/* 8029407C 0028FCDC 4E 80 00 20 */ blr
+
+__FreeDelayLine:
+/* 80294080 0028FCE0 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80294084 0028FCE4 7C 08 02 A6 */ mflr r0
+/* 80294088 0028FCE8 90 01 00 34 */ stw r0, 0x34(r1)
+/* 8029408C 0028FCEC 39 61 00 30 */ addi r11, r1, 0x30
+/* 80294090 0028FCF0 4B F3 30 91 */ bl _savegpr_25
+/* 80294094 0028FCF4 3B 20 00 00 */ li r25, 0
+/* 80294098 0028FCF8 7C 7E 1B 78 */ mr r30, r3
+/* 8029409C 0028FCFC 3B E0 00 00 */ li r31, 0
+/* 802940A0 0028FD00 7C 7D 1B 78 */ mr r29, r3
+/* 802940A4 0028FD04 7C 7C 1B 78 */ mr r28, r3
+lbl_802940A8:
+/* 802940A8 0028FD08 80 7E 00 00 */ lwz r3, 0(r30)
+/* 802940AC 0028FD0C 2C 03 00 00 */ cmpwi r3, 0
+/* 802940B0 0028FD10 41 82 00 14 */ beq lbl_802940C4
+/* 802940B4 0028FD14 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 802940B8 0028FD18 7D 89 03 A6 */ mtctr r12
+/* 802940BC 0028FD1C 4E 80 04 21 */ bctrl
+/* 802940C0 0028FD20 93 FE 00 00 */ stw r31, 0(r30)
+lbl_802940C4:
+/* 802940C4 0028FD24 80 7E 00 30 */ lwz r3, 0x30(r30)
+/* 802940C8 0028FD28 2C 03 00 00 */ cmpwi r3, 0
+/* 802940CC 0028FD2C 41 82 00 14 */ beq lbl_802940E0
+/* 802940D0 0028FD30 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 802940D4 0028FD34 7D 89 03 A6 */ mtctr r12
+/* 802940D8 0028FD38 4E 80 04 21 */ bctrl
+/* 802940DC 0028FD3C 93 FE 00 30 */ stw r31, 0x30(r30)
+lbl_802940E0:
+/* 802940E0 0028FD40 7F BB EB 78 */ mr r27, r29
+/* 802940E4 0028FD44 3B 40 00 00 */ li r26, 0
+lbl_802940E8:
+/* 802940E8 0028FD48 80 7B 00 4C */ lwz r3, 0x4c(r27)
+/* 802940EC 0028FD4C 2C 03 00 00 */ cmpwi r3, 0
+/* 802940F0 0028FD50 41 82 00 14 */ beq lbl_80294104
+/* 802940F4 0028FD54 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 802940F8 0028FD58 7D 89 03 A6 */ mtctr r12
+/* 802940FC 0028FD5C 4E 80 04 21 */ bctrl
+/* 80294100 0028FD60 93 FB 00 4C */ stw r31, 0x4c(r27)
+lbl_80294104:
+/* 80294104 0028FD64 3B 5A 00 01 */ addi r26, r26, 1
+/* 80294108 0028FD68 3B 7B 00 04 */ addi r27, r27, 4
+/* 8029410C 0028FD6C 28 1A 00 03 */ cmplwi r26, 3
+/* 80294110 0028FD70 41 80 FF D8 */ blt lbl_802940E8
+/* 80294114 0028FD74 7F 9B E3 78 */ mr r27, r28
+/* 80294118 0028FD78 3B 40 00 00 */ li r26, 0
+lbl_8029411C:
+/* 8029411C 0028FD7C 80 7B 00 AC */ lwz r3, 0xac(r27)
+/* 80294120 0028FD80 2C 03 00 00 */ cmpwi r3, 0
+/* 80294124 0028FD84 41 82 00 14 */ beq lbl_80294138
+/* 80294128 0028FD88 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 8029412C 0028FD8C 7D 89 03 A6 */ mtctr r12
+/* 80294130 0028FD90 4E 80 04 21 */ bctrl
+/* 80294134 0028FD94 93 FB 00 AC */ stw r31, 0xac(r27)
+lbl_80294138:
+/* 80294138 0028FD98 3B 5A 00 01 */ addi r26, r26, 1
+/* 8029413C 0028FD9C 3B 7B 00 04 */ addi r27, r27, 4
+/* 80294140 0028FDA0 28 1A 00 02 */ cmplwi r26, 2
+/* 80294144 0028FDA4 41 80 FF D8 */ blt lbl_8029411C
+/* 80294148 0028FDA8 80 7E 00 E4 */ lwz r3, 0xe4(r30)
+/* 8029414C 0028FDAC 2C 03 00 00 */ cmpwi r3, 0
+/* 80294150 0028FDB0 41 82 00 14 */ beq lbl_80294164
+/* 80294154 0028FDB4 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80294158 0028FDB8 7D 89 03 A6 */ mtctr r12
+/* 8029415C 0028FDBC 4E 80 04 21 */ bctrl
+/* 80294160 0028FDC0 93 FE 00 E4 */ stw r31, 0xe4(r30)
+lbl_80294164:
+/* 80294164 0028FDC4 3B 39 00 01 */ addi r25, r25, 1
+/* 80294168 0028FDC8 3B BD 00 0C */ addi r29, r29, 0xc
+/* 8029416C 0028FDCC 28 19 00 04 */ cmplwi r25, 4
+/* 80294170 0028FDD0 3B 9C 00 08 */ addi r28, r28, 8
+/* 80294174 0028FDD4 3B DE 00 04 */ addi r30, r30, 4
+/* 80294178 0028FDD8 41 80 FF 30 */ blt lbl_802940A8
+/* 8029417C 0028FDDC 39 61 00 30 */ addi r11, r1, 0x30
+/* 80294180 0028FDE0 4B F3 2F ED */ bl _restgpr_25
+/* 80294184 0028FDE4 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80294188 0028FDE8 7C 08 03 A6 */ mtlr r0
+/* 8029418C 0028FDEC 38 21 00 30 */ addi r1, r1, 0x30
+/* 80294190 0028FDF0 4E 80 00 20 */ blr
+
+__InitParams:
+/* 80294194 0028FDF4 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 80294198 0028FDF8 7C 08 02 A6 */ mflr r0
+/* 8029419C 0028FDFC 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802941A0 0028FE00 DB E1 00 50 */ stfd f31, 0x50(r1)
+/* 802941A4 0028FE04 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
+/* 802941A8 0028FE08 DB C1 00 40 */ stfd f30, 0x40(r1)
+/* 802941AC 0028FE0C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
+/* 802941B0 0028FE10 DB A1 00 30 */ stfd f29, 0x30(r1)
+/* 802941B4 0028FE14 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0
+/* 802941B8 0028FE18 39 61 00 30 */ addi r11, r1, 0x30
+/* 802941BC 0028FE1C 4B F3 2F 61 */ bl _savegpr_24
+/* 802941C0 0028FE20 80 83 01 40 */ lwz r4, 0x140(r3)
+/* 802941C4 0028FE24 3F E0 80 44 */ lis r31, lbl_8043A520@ha
+/* 802941C8 0028FE28 7C 7E 1B 78 */ mr r30, r3
+/* 802941CC 0028FE2C 28 04 00 08 */ cmplwi r4, 8
+/* 802941D0 0028FE30 3B FF A5 20 */ addi r31, r31, lbl_8043A520@l
+/* 802941D4 0028FE34 41 80 00 0C */ blt lbl_802941E0
+/* 802941D8 0028FE38 38 60 00 00 */ li r3, 0
+/* 802941DC 0028FE3C 48 00 02 BC */ b lbl_80294498
+lbl_802941E0:
+/* 802941E0 0028FE40 C0 83 01 48 */ lfs f4, 0x148(r3)
+/* 802941E4 0028FE44 C0 42 A2 8C */ lfs f2, lbl_8064288C-_SDA2_BASE_(r2)
+/* 802941E8 0028FE48 FC 04 10 40 */ fcmpo cr0, f4, f2
+/* 802941EC 0028FE4C 41 80 00 10 */ blt lbl_802941FC
+/* 802941F0 0028FE50 C0 03 01 44 */ lfs f0, 0x144(r3)
+/* 802941F4 0028FE54 FC 04 00 40 */ fcmpo cr0, f4, f0
+/* 802941F8 0028FE58 40 81 00 0C */ ble lbl_80294204
+lbl_802941FC:
+/* 802941FC 0028FE5C 38 60 00 00 */ li r3, 0
+/* 80294200 0028FE60 48 00 02 98 */ b lbl_80294498
+lbl_80294204:
+/* 80294204 0028FE64 80 03 01 4C */ lwz r0, 0x14c(r3)
+/* 80294208 0028FE68 28 00 00 06 */ cmplwi r0, 6
+/* 8029420C 0028FE6C 41 80 00 0C */ blt lbl_80294218
+/* 80294210 0028FE70 38 60 00 00 */ li r3, 0
+/* 80294214 0028FE74 48 00 02 84 */ b lbl_80294498
+lbl_80294218:
+/* 80294218 0028FE78 C0 03 01 50 */ lfs f0, 0x150(r3)
+/* 8029421C 0028FE7C FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80294220 0028FE80 40 80 00 0C */ bge lbl_8029422C
+/* 80294224 0028FE84 38 60 00 00 */ li r3, 0
+/* 80294228 0028FE88 48 00 02 70 */ b lbl_80294498
+lbl_8029422C:
+/* 8029422C 0028FE8C C0 03 01 54 */ lfs f0, 0x154(r3)
+/* 80294230 0028FE90 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80294234 0028FE94 41 80 00 10 */ blt lbl_80294244
+/* 80294238 0028FE98 C0 22 A2 90 */ lfs f1, lbl_80642890-_SDA2_BASE_(r2)
+/* 8029423C 0028FE9C FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 80294240 0028FEA0 40 81 00 0C */ ble lbl_8029424C
+lbl_80294244:
+/* 80294244 0028FEA4 38 60 00 00 */ li r3, 0
+/* 80294248 0028FEA8 48 00 02 50 */ b lbl_80294498
+lbl_8029424C:
+/* 8029424C 0028FEAC C0 03 01 58 */ lfs f0, 0x158(r3)
+/* 80294250 0028FEB0 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80294254 0028FEB4 41 80 00 0C */ blt lbl_80294260
+/* 80294258 0028FEB8 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 8029425C 0028FEBC 40 81 00 0C */ ble lbl_80294268
+lbl_80294260:
+/* 80294260 0028FEC0 38 60 00 00 */ li r3, 0
+/* 80294264 0028FEC4 48 00 02 34 */ b lbl_80294498
+lbl_80294268:
+/* 80294268 0028FEC8 C0 03 01 5C */ lfs f0, 0x15c(r3)
+/* 8029426C 0028FECC FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80294270 0028FED0 41 80 00 0C */ blt lbl_8029427C
+/* 80294274 0028FED4 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 80294278 0028FED8 40 81 00 0C */ ble lbl_80294284
+lbl_8029427C:
+/* 8029427C 0028FEDC 38 60 00 00 */ li r3, 0
+/* 80294280 0028FEE0 48 00 02 18 */ b lbl_80294498
+lbl_80294284:
+/* 80294284 0028FEE4 C0 63 01 60 */ lfs f3, 0x160(r3)
+/* 80294288 0028FEE8 FC 03 10 40 */ fcmpo cr0, f3, f2
+/* 8029428C 0028FEEC 41 80 00 0C */ blt lbl_80294298
+/* 80294290 0028FEF0 FC 03 08 40 */ fcmpo cr0, f3, f1
+/* 80294294 0028FEF4 40 81 00 0C */ ble lbl_802942A0
+lbl_80294298:
+/* 80294298 0028FEF8 38 60 00 00 */ li r3, 0
+/* 8029429C 0028FEFC 48 00 01 FC */ b lbl_80294498
+lbl_802942A0:
+/* 802942A0 0028FF00 C0 03 01 64 */ lfs f0, 0x164(r3)
+/* 802942A4 0028FF04 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802942A8 0028FF08 41 80 00 0C */ blt lbl_802942B4
+/* 802942AC 0028FF0C FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802942B0 0028FF10 40 81 00 0C */ ble lbl_802942BC
+lbl_802942B4:
+/* 802942B4 0028FF14 38 60 00 00 */ li r3, 0
+/* 802942B8 0028FF18 48 00 01 E0 */ b lbl_80294498
+lbl_802942BC:
+/* 802942BC 0028FF1C C0 03 01 70 */ lfs f0, 0x170(r3)
+/* 802942C0 0028FF20 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802942C4 0028FF24 41 80 00 0C */ blt lbl_802942D0
+/* 802942C8 0028FF28 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802942CC 0028FF2C 40 81 00 0C */ ble lbl_802942D8
+lbl_802942D0:
+/* 802942D0 0028FF30 38 60 00 00 */ li r3, 0
+/* 802942D4 0028FF34 48 00 01 C4 */ b lbl_80294498
+lbl_802942D8:
+/* 802942D8 0028FF38 C0 03 01 74 */ lfs f0, 0x174(r3)
+/* 802942DC 0028FF3C FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802942E0 0028FF40 41 80 00 0C */ blt lbl_802942EC
+/* 802942E4 0028FF44 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802942E8 0028FF48 40 81 00 0C */ ble lbl_802942F4
+lbl_802942EC:
+/* 802942EC 0028FF4C 38 60 00 00 */ li r3, 0
+/* 802942F0 0028FF50 48 00 01 A8 */ b lbl_80294498
+lbl_802942F4:
+/* 802942F4 0028FF54 1D 04 00 0C */ mulli r8, r4, 0xc
+/* 802942F8 0028FF58 39 3F 00 00 */ addi r9, r31, 0
+/* 802942FC 0028FF5C C0 02 A2 88 */ lfs f0, lbl_80642888-_SDA2_BASE_(r2)
+/* 80294300 0028FF60 38 BF 00 60 */ addi r5, r31, 0x60
+/* 80294304 0028FF64 C0 42 A2 94 */ lfs f2, lbl_80642894-_SDA2_BASE_(r2)
+/* 80294308 0028FF68 3B 60 00 00 */ li r27, 0
+/* 8029430C 0028FF6C 7C E9 42 14 */ add r7, r9, r8
+/* 80294310 0028FF70 EC 20 01 32 */ fmuls f1, f0, f4
+/* 80294314 0028FF74 80 C7 00 08 */ lwz r6, 8(r7)
+/* 80294318 0028FF78 7C 85 42 14 */ add r4, r5, r8
+/* 8029431C 0028FF7C 90 C3 00 1C */ stw r6, 0x1c(r3)
+/* 80294320 0028FF80 7C 09 40 2E */ lwzx r0, r9, r8
+/* 80294324 0028FF84 7C 00 30 50 */ subf r0, r0, r6
+/* 80294328 0028FF88 90 03 00 10 */ stw r0, 0x10(r3)
+/* 8029432C 0028FF8C 7C 05 44 2E */ lfsx f0, r5, r8
+/* 80294330 0028FF90 EC 03 00 32 */ fmuls f0, f3, f0
+/* 80294334 0028FF94 EC 02 00 32 */ fmuls f0, f2, f0
+/* 80294338 0028FF98 D0 03 00 24 */ stfs f0, 0x24(r3)
+/* 8029433C 0028FF9C 80 07 00 04 */ lwz r0, 4(r7)
+/* 80294340 0028FFA0 7C 00 30 50 */ subf r0, r0, r6
+/* 80294344 0028FFA4 90 03 00 14 */ stw r0, 0x14(r3)
+/* 80294348 0028FFA8 C0 04 00 04 */ lfs f0, 4(r4)
+/* 8029434C 0028FFAC EC 03 00 32 */ fmuls f0, f3, f0
+/* 80294350 0028FFB0 EC 02 00 32 */ fmuls f0, f2, f0
+/* 80294354 0028FFB4 D0 03 00 28 */ stfs f0, 0x28(r3)
+/* 80294358 0028FFB8 80 07 00 08 */ lwz r0, 8(r7)
+/* 8029435C 0028FFBC 7C 00 30 50 */ subf r0, r0, r6
+/* 80294360 0028FFC0 90 03 00 18 */ stw r0, 0x18(r3)
+/* 80294364 0028FFC4 C0 04 00 08 */ lfs f0, 8(r4)
+/* 80294368 0028FFC8 EC 03 00 32 */ fmuls f0, f3, f0
+/* 8029436C 0028FFCC 93 63 00 40 */ stw r27, 0x40(r3)
+/* 80294370 0028FFD0 EC 02 00 32 */ fmuls f0, f2, f0
+/* 80294374 0028FFD4 D0 03 00 2C */ stfs f0, 0x2c(r3)
+/* 80294378 0028FFD8 4B F3 2C 89 */ bl __cvt_fp2unsigned
+/* 8029437C 0028FFDC 90 7E 00 44 */ stw r3, 0x44(r30)
+/* 80294380 0028FFE0 7F DA F3 78 */ mr r26, r30
+/* 80294384 0028FFE4 CB A2 A2 C0 */ lfd f29, lbl_806428C0-_SDA2_BASE_(r2)
+/* 80294388 0028FFE8 3B 9F 00 C0 */ addi r28, r31, 0xc0
+/* 8029438C 0028FFEC C3 C2 A2 A8 */ lfs f30, lbl_806428A8-_SDA2_BASE_(r2)
+/* 80294390 0028FFF0 3B 00 00 00 */ li r24, 0
+/* 80294394 0028FFF4 C3 E2 A2 88 */ lfs f31, lbl_80642888-_SDA2_BASE_(r2)
+/* 80294398 0028FFF8 3B 20 00 00 */ li r25, 0
+/* 8029439C 0028FFFC 3F A0 43 30 */ lis r29, 0x4330
+lbl_802943A0:
+/* 802943A0 00290000 93 7A 00 7C */ stw r27, 0x7c(r26)
+/* 802943A4 00290004 C8 22 A2 B0 */ lfd f1, lbl_806428B0-_SDA2_BASE_(r2)
+/* 802943A8 00290008 80 1E 01 4C */ lwz r0, 0x14c(r30)
+/* 802943AC 0029000C 93 A1 00 08 */ stw r29, 8(r1)
+/* 802943B0 00290010 1C 00 00 24 */ mulli r0, r0, 0x24
+/* 802943B4 00290014 7C 19 02 14 */ add r0, r25, r0
+/* 802943B8 00290018 7C 1C 00 2E */ lwzx r0, r28, r0
+/* 802943BC 0029001C 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802943C0 00290020 C8 01 00 08 */ lfd f0, 8(r1)
+/* 802943C4 00290024 90 1A 00 88 */ stw r0, 0x88(r26)
+/* 802943C8 00290028 EC 40 E8 28 */ fsubs f2, f0, f29
+/* 802943CC 0029002C C0 1E 01 50 */ lfs f0, 0x150(r30)
+/* 802943D0 00290030 EC 5E 00 B2 */ fmuls f2, f30, f2
+/* 802943D4 00290034 EC 1F 00 32 */ fmuls f0, f31, f0
+/* 802943D8 00290038 EC 42 00 24 */ fdivs f2, f2, f0
+/* 802943DC 0029003C 4B F4 02 09 */ bl pow
+/* 802943E0 00290040 FC 00 08 18 */ frsp f0, f1
+/* 802943E4 00290044 3B 18 00 01 */ addi r24, r24, 1
+/* 802943E8 00290048 28 18 00 03 */ cmplwi r24, 3
+/* 802943EC 0029004C 3B 39 00 04 */ addi r25, r25, 4
+/* 802943F0 00290050 D0 1A 00 A0 */ stfs f0, 0xa0(r26)
+/* 802943F4 00290054 3B 5A 00 04 */ addi r26, r26, 4
+/* 802943F8 00290058 41 80 FF A8 */ blt lbl_802943A0
+/* 802943FC 0029005C 80 1E 01 4C */ lwz r0, 0x14c(r30)
+/* 80294400 00290060 38 80 00 00 */ li r4, 0
+/* 80294404 00290064 90 9E 00 CC */ stw r4, 0xcc(r30)
+/* 80294408 00290068 38 7F 00 C0 */ addi r3, r31, 0xc0
+/* 8029440C 0029006C 1C 00 00 24 */ mulli r0, r0, 0x24
+/* 80294410 00290070 C0 42 A2 90 */ lfs f2, lbl_80642890-_SDA2_BASE_(r2)
+/* 80294414 00290074 C0 3E 01 58 */ lfs f1, 0x158(r30)
+/* 80294418 00290078 C0 02 A2 B8 */ lfs f0, lbl_806428B8-_SDA2_BASE_(r2)
+/* 8029441C 0029007C 7C 63 02 14 */ add r3, r3, r0
+/* 80294420 00290080 EC 22 08 28 */ fsubs f1, f2, f1
+/* 80294424 00290084 80 03 00 0C */ lwz r0, 0xc(r3)
+/* 80294428 00290088 C0 5E 01 54 */ lfs f2, 0x154(r30)
+/* 8029442C 0029008C 90 1E 00 D4 */ stw r0, 0xd4(r30)
+/* 80294430 00290090 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 80294434 00290094 90 9E 00 D0 */ stw r4, 0xd0(r30)
+/* 80294438 00290098 80 03 00 10 */ lwz r0, 0x10(r3)
+/* 8029443C 0029009C 90 1E 00 D8 */ stw r0, 0xd8(r30)
+/* 80294440 002900A0 90 9E 00 F4 */ stw r4, 0xf4(r30)
+/* 80294444 002900A4 80 03 00 14 */ lwz r0, 0x14(r3)
+/* 80294448 002900A8 90 1E 01 04 */ stw r0, 0x104(r30)
+/* 8029444C 002900AC 90 9E 00 F8 */ stw r4, 0xf8(r30)
+/* 80294450 002900B0 80 03 00 18 */ lwz r0, 0x18(r3)
+/* 80294454 002900B4 90 1E 01 08 */ stw r0, 0x108(r30)
+/* 80294458 002900B8 90 9E 00 FC */ stw r4, 0xfc(r30)
+/* 8029445C 002900BC 80 03 00 1C */ lwz r0, 0x1c(r3)
+/* 80294460 002900C0 90 1E 01 0C */ stw r0, 0x10c(r30)
+/* 80294464 002900C4 90 9E 01 00 */ stw r4, 0x100(r30)
+/* 80294468 002900C8 80 03 00 20 */ lwz r0, 0x20(r3)
+/* 8029446C 002900CC 90 1E 01 10 */ stw r0, 0x110(r30)
+/* 80294470 002900D0 D0 5E 01 24 */ stfs f2, 0x124(r30)
+/* 80294474 002900D4 D0 3E 01 38 */ stfs f1, 0x138(r30)
+/* 80294478 002900D8 40 81 00 08 */ ble lbl_80294480
+/* 8029447C 002900DC D0 1E 01 38 */ stfs f0, 0x138(r30)
+lbl_80294480:
+/* 80294480 002900E0 C0 02 A2 8C */ lfs f0, lbl_8064288C-_SDA2_BASE_(r2)
+/* 80294484 002900E4 38 60 00 01 */ li r3, 1
+/* 80294488 002900E8 D0 1E 01 28 */ stfs f0, 0x128(r30)
+/* 8029448C 002900EC D0 1E 01 2C */ stfs f0, 0x12c(r30)
+/* 80294490 002900F0 D0 1E 01 30 */ stfs f0, 0x130(r30)
+/* 80294494 002900F4 D0 1E 01 34 */ stfs f0, 0x134(r30)
+lbl_80294498:
+/* 80294498 002900F8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
+/* 8029449C 002900FC CB E1 00 50 */ lfd f31, 0x50(r1)
+/* 802944A0 00290100 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
+/* 802944A4 00290104 CB C1 00 40 */ lfd f30, 0x40(r1)
+/* 802944A8 00290108 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0
+/* 802944AC 0029010C 39 61 00 30 */ addi r11, r1, 0x30
+/* 802944B0 00290110 CB A1 00 30 */ lfd f29, 0x30(r1)
+/* 802944B4 00290114 4B F3 2C B5 */ bl _restgpr_24
+/* 802944B8 00290118 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802944BC 0029011C 7C 08 03 A6 */ mtlr r0
+/* 802944C0 00290120 38 21 00 60 */ addi r1, r1, 0x60
+/* 802944C4 00290124 4E 80 00 20 */ blr
diff --git a/asm/SDK/AXFX/AXFXReverbStd.s b/asm/SDK/AXFX/AXFXReverbStd.s
new file mode 100644
index 0000000..228d31c
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXReverbStd.s
@@ -0,0 +1,77 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AXFXReverbStdGetMemSize
+AXFXReverbStdGetMemSize:
+/* 80294B5C 002907BC C0 03 00 F8 */ lfs f0, 0xf8(r3)
+/* 80294B60 002907C0 D0 03 00 B8 */ stfs f0, 0xb8(r3)
+/* 80294B64 002907C4 48 00 00 E4 */ b AXFXReverbStdExpGetMemSize
+
+.global AXFXReverbStdInit
+AXFXReverbStdInit:
+/* 80294B68 002907C8 C0 C3 00 F8 */ lfs f6, 0xf8(r3)
+/* 80294B6C 002907CC 38 00 00 00 */ li r0, 0
+/* 80294B70 002907D0 C0 42 A2 D8 */ lfs f2, lbl_806428D8-_SDA2_BASE_(r2)
+/* 80294B74 002907D4 38 80 00 05 */ li r4, 5
+/* 80294B78 002907D8 C0 A3 00 F0 */ lfs f5, 0xf0(r3)
+/* 80294B7C 002907DC C0 83 00 E8 */ lfs f4, 0xe8(r3)
+/* 80294B80 002907E0 C0 63 00 F4 */ lfs f3, 0xf4(r3)
+/* 80294B84 002907E4 C0 22 A2 DC */ lfs f1, lbl_806428DC-_SDA2_BASE_(r2)
+/* 80294B88 002907E8 C0 03 00 EC */ lfs f0, 0xec(r3)
+/* 80294B8C 002907EC 90 83 00 B4 */ stw r4, 0xb4(r3)
+/* 80294B90 002907F0 D0 C3 00 B8 */ stfs f6, 0xb8(r3)
+/* 80294B94 002907F4 D0 C3 00 BC */ stfs f6, 0xbc(r3)
+/* 80294B98 002907F8 90 03 00 C0 */ stw r0, 0xc0(r3)
+/* 80294B9C 002907FC D0 A3 00 C4 */ stfs f5, 0xc4(r3)
+/* 80294BA0 00290800 D0 83 00 C8 */ stfs f4, 0xc8(r3)
+/* 80294BA4 00290804 D0 63 00 CC */ stfs f3, 0xcc(r3)
+/* 80294BA8 00290808 D0 43 00 D0 */ stfs f2, 0xd0(r3)
+/* 80294BAC 0029080C D0 23 00 D4 */ stfs f1, 0xd4(r3)
+/* 80294BB0 00290810 90 03 00 D8 */ stw r0, 0xd8(r3)
+/* 80294BB4 00290814 90 03 00 DC */ stw r0, 0xdc(r3)
+/* 80294BB8 00290818 D0 03 00 E0 */ stfs f0, 0xe0(r3)
+/* 80294BBC 0029081C D0 43 00 E4 */ stfs f2, 0xe4(r3)
+/* 80294BC0 00290820 48 00 00 E8 */ b AXFXReverbStdExpInit
+
+.global AXFXReverbStdShutdown
+AXFXReverbStdShutdown:
+/* 80294BC4 00290824 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80294BC8 00290828 7C 08 02 A6 */ mflr r0
+/* 80294BCC 0029082C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80294BD0 00290830 48 00 03 25 */ bl AXFXReverbStdExpShutdown
+/* 80294BD4 00290834 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80294BD8 00290838 38 60 00 01 */ li r3, 1
+/* 80294BDC 0029083C 7C 08 03 A6 */ mtlr r0
+/* 80294BE0 00290840 38 21 00 10 */ addi r1, r1, 0x10
+/* 80294BE4 00290844 4E 80 00 20 */ blr
+
+.global AXFXReverbStdSettings
+AXFXReverbStdSettings:
+/* 80294BE8 00290848 C0 C3 00 F8 */ lfs f6, 0xf8(r3)
+/* 80294BEC 0029084C 38 00 00 00 */ li r0, 0
+/* 80294BF0 00290850 C0 42 A2 D8 */ lfs f2, lbl_806428D8-_SDA2_BASE_(r2)
+/* 80294BF4 00290854 38 80 00 05 */ li r4, 5
+/* 80294BF8 00290858 C0 A3 00 F0 */ lfs f5, 0xf0(r3)
+/* 80294BFC 0029085C C0 83 00 E8 */ lfs f4, 0xe8(r3)
+/* 80294C00 00290860 C0 63 00 F4 */ lfs f3, 0xf4(r3)
+/* 80294C04 00290864 C0 22 A2 DC */ lfs f1, lbl_806428DC-_SDA2_BASE_(r2)
+/* 80294C08 00290868 C0 03 00 EC */ lfs f0, 0xec(r3)
+/* 80294C0C 0029086C 90 83 00 B4 */ stw r4, 0xb4(r3)
+/* 80294C10 00290870 D0 C3 00 B8 */ stfs f6, 0xb8(r3)
+/* 80294C14 00290874 D0 C3 00 BC */ stfs f6, 0xbc(r3)
+/* 80294C18 00290878 90 03 00 C0 */ stw r0, 0xc0(r3)
+/* 80294C1C 0029087C D0 A3 00 C4 */ stfs f5, 0xc4(r3)
+/* 80294C20 00290880 D0 83 00 C8 */ stfs f4, 0xc8(r3)
+/* 80294C24 00290884 D0 63 00 CC */ stfs f3, 0xcc(r3)
+/* 80294C28 00290888 D0 43 00 D0 */ stfs f2, 0xd0(r3)
+/* 80294C2C 0029088C D0 23 00 D4 */ stfs f1, 0xd4(r3)
+/* 80294C30 00290890 90 03 00 D8 */ stw r0, 0xd8(r3)
+/* 80294C34 00290894 90 03 00 DC */ stw r0, 0xdc(r3)
+/* 80294C38 00290898 D0 03 00 E0 */ stfs f0, 0xe0(r3)
+/* 80294C3C 0029089C D0 43 00 E4 */ stfs f2, 0xe4(r3)
+/* 80294C40 002908A0 48 00 01 E4 */ b AXFXReverbStdExpSettings
+
+.global AXFXReverbStdCallback
+AXFXReverbStdCallback:
+/* 80294C44 002908A4 48 00 03 04 */ b AXFXReverbStdExpCallback
diff --git a/asm/SDK/AXFX/AXFXReverbStdExp.s b/asm/SDK/AXFX/AXFXReverbStdExp.s
new file mode 100644
index 0000000..1e45b00
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXReverbStdExp.s
@@ -0,0 +1,881 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global AXFXReverbStdExpGetMemSize
+AXFXReverbStdExpGetMemSize:
+/* 80294C48 002908A8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80294C4C 002908AC 3C 80 80 44 */ lis r4, lbl_8043A6E0@ha
+/* 80294C50 002908B0 3C C0 80 44 */ lis r6, lbl_8043A700@ha
+/* 80294C54 002908B4 C0 22 A2 E0 */ lfs f1, lbl_806428E0-_SDA2_BASE_(r2)
+/* 80294C58 002908B8 C0 03 00 B8 */ lfs f0, 0xb8(r3)
+/* 80294C5C 002908BC 38 C6 A7 00 */ addi r6, r6, lbl_8043A700@l
+/* 80294C60 002908C0 38 84 A6 E0 */ addi r4, r4, lbl_8043A6E0@l
+/* 80294C64 002908C4 80 A6 00 60 */ lwz r5, 0x60(r6)
+/* 80294C68 002908C8 EC 01 00 32 */ fmuls f0, f1, f0
+/* 80294C6C 002908CC 80 E4 00 1C */ lwz r7, 0x1c(r4)
+/* 80294C70 002908D0 80 86 00 64 */ lwz r4, 0x64(r6)
+/* 80294C74 002908D4 80 66 00 68 */ lwz r3, 0x68(r6)
+/* 80294C78 002908D8 FC 00 00 1E */ fctiwz f0, f0
+/* 80294C7C 002908DC 80 06 00 6C */ lwz r0, 0x6c(r6)
+/* 80294C80 002908E0 D8 01 00 08 */ stfd f0, 8(r1)
+/* 80294C84 002908E4 80 C1 00 0C */ lwz r6, 0xc(r1)
+/* 80294C88 002908E8 7C C7 32 14 */ add r6, r7, r6
+/* 80294C8C 002908EC 7C C6 2A 14 */ add r6, r6, r5
+/* 80294C90 002908F0 7C C6 22 14 */ add r6, r6, r4
+/* 80294C94 002908F4 7C C6 1A 14 */ add r6, r6, r3
+/* 80294C98 002908F8 7C C6 02 14 */ add r6, r6, r0
+/* 80294C9C 002908FC 1C 66 00 0C */ mulli r3, r6, 0xc
+/* 80294CA0 00290900 38 21 00 10 */ addi r1, r1, 0x10
+/* 80294CA4 00290904 4E 80 00 20 */ blr
+
+.global AXFXReverbStdExpInit
+AXFXReverbStdExpInit:
+/* 80294CA8 00290908 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80294CAC 0029090C 7C 08 02 A6 */ mflr r0
+/* 80294CB0 00290910 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80294CB4 00290914 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80294CB8 00290918 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80294CBC 0029091C 7C 7E 1B 78 */ mr r30, r3
+/* 80294CC0 00290920 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80294CC4 00290924 4B FD 9A 99 */ bl OSDisableInterrupts
+/* 80294CC8 00290928 C0 3E 00 B8 */ lfs f1, 0xb8(r30)
+/* 80294CCC 0029092C 38 00 00 01 */ li r0, 1
+/* 80294CD0 00290930 C0 02 A2 E4 */ lfs f0, lbl_806428E4-_SDA2_BASE_(r2)
+/* 80294CD4 00290934 7C 7F 1B 78 */ mr r31, r3
+/* 80294CD8 00290938 90 1E 00 B0 */ stw r0, 0xb0(r30)
+/* 80294CDC 0029093C FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 80294CE0 00290940 40 80 00 38 */ bge lbl_80294D18
+/* 80294CE4 00290944 4B FD 9A 79 */ bl OSDisableInterrupts
+/* 80294CE8 00290948 80 1E 00 B0 */ lwz r0, 0xb0(r30)
+/* 80294CEC 0029094C 7C 7D 1B 78 */ mr r29, r3
+/* 80294CF0 00290950 7F C3 F3 78 */ mr r3, r30
+/* 80294CF4 00290954 60 00 00 01 */ ori r0, r0, 1
+/* 80294CF8 00290958 90 1E 00 B0 */ stw r0, 0xb0(r30)
+/* 80294CFC 0029095C 48 00 07 FD */ bl __FreeDelayLine
+/* 80294D00 00290960 7F A3 EB 78 */ mr r3, r29
+/* 80294D04 00290964 4B FD 9A 81 */ bl OSRestoreInterrupts
+/* 80294D08 00290968 7F E3 FB 78 */ mr r3, r31
+/* 80294D0C 0029096C 4B FD 9A 79 */ bl OSRestoreInterrupts
+/* 80294D10 00290970 38 60 00 00 */ li r3, 0
+/* 80294D14 00290974 48 00 00 F4 */ b lbl_80294E08
+lbl_80294D18:
+/* 80294D18 00290978 3C 60 80 44 */ lis r3, lbl_8043A6E0@ha
+/* 80294D1C 0029097C C0 02 A2 E0 */ lfs f0, lbl_806428E0-_SDA2_BASE_(r2)
+/* 80294D20 00290980 38 63 A6 E0 */ addi r3, r3, lbl_8043A6E0@l
+/* 80294D24 00290984 80 03 00 1C */ lwz r0, 0x1c(r3)
+/* 80294D28 00290988 EC 20 00 72 */ fmuls f1, f0, f1
+/* 80294D2C 0029098C 90 1E 00 14 */ stw r0, 0x14(r30)
+/* 80294D30 00290990 4B F3 22 D1 */ bl __cvt_fp2unsigned
+/* 80294D34 00290994 90 7E 00 30 */ stw r3, 0x30(r30)
+/* 80294D38 00290998 3C 80 80 44 */ lis r4, lbl_8043A700@ha
+/* 80294D3C 0029099C 38 84 A7 00 */ addi r4, r4, lbl_8043A700@l
+/* 80294D40 002909A0 7F C3 F3 78 */ mr r3, r30
+/* 80294D44 002909A4 80 04 00 60 */ lwz r0, 0x60(r4)
+/* 80294D48 002909A8 90 1E 00 5C */ stw r0, 0x5c(r30)
+/* 80294D4C 002909AC 80 04 00 64 */ lwz r0, 0x64(r4)
+/* 80294D50 002909B0 90 1E 00 60 */ stw r0, 0x60(r30)
+/* 80294D54 002909B4 80 04 00 68 */ lwz r0, 0x68(r4)
+/* 80294D58 002909B8 90 1E 00 94 */ stw r0, 0x94(r30)
+/* 80294D5C 002909BC 80 04 00 6C */ lwz r0, 0x6c(r4)
+/* 80294D60 002909C0 90 1E 00 98 */ stw r0, 0x98(r30)
+/* 80294D64 002909C4 48 00 05 51 */ bl __AllocDelayLine
+/* 80294D68 002909C8 2C 03 00 00 */ cmpwi r3, 0
+/* 80294D6C 002909CC 40 82 00 38 */ bne lbl_80294DA4
+/* 80294D70 002909D0 4B FD 99 ED */ bl OSDisableInterrupts
+/* 80294D74 002909D4 80 1E 00 B0 */ lwz r0, 0xb0(r30)
+/* 80294D78 002909D8 7C 7D 1B 78 */ mr r29, r3
+/* 80294D7C 002909DC 7F C3 F3 78 */ mr r3, r30
+/* 80294D80 002909E0 60 00 00 01 */ ori r0, r0, 1
+/* 80294D84 002909E4 90 1E 00 B0 */ stw r0, 0xb0(r30)
+/* 80294D88 002909E8 48 00 07 71 */ bl __FreeDelayLine
+/* 80294D8C 002909EC 7F A3 EB 78 */ mr r3, r29
+/* 80294D90 002909F0 4B FD 99 F5 */ bl OSRestoreInterrupts
+/* 80294D94 002909F4 7F E3 FB 78 */ mr r3, r31
+/* 80294D98 002909F8 4B FD 99 ED */ bl OSRestoreInterrupts
+/* 80294D9C 002909FC 38 60 00 00 */ li r3, 0
+/* 80294DA0 00290A00 48 00 00 68 */ b lbl_80294E08
+lbl_80294DA4:
+/* 80294DA4 00290A04 7F C3 F3 78 */ mr r3, r30
+/* 80294DA8 00290A08 48 00 06 51 */ bl __BzeroDelayLines
+/* 80294DAC 00290A0C 7F C3 F3 78 */ mr r3, r30
+/* 80294DB0 00290A10 48 00 08 39 */ bl __InitParams
+/* 80294DB4 00290A14 2C 03 00 00 */ cmpwi r3, 0
+/* 80294DB8 00290A18 40 82 00 38 */ bne lbl_80294DF0
+/* 80294DBC 00290A1C 4B FD 99 A1 */ bl OSDisableInterrupts
+/* 80294DC0 00290A20 80 1E 00 B0 */ lwz r0, 0xb0(r30)
+/* 80294DC4 00290A24 7C 7D 1B 78 */ mr r29, r3
+/* 80294DC8 00290A28 7F C3 F3 78 */ mr r3, r30
+/* 80294DCC 00290A2C 60 00 00 01 */ ori r0, r0, 1
+/* 80294DD0 00290A30 90 1E 00 B0 */ stw r0, 0xb0(r30)
+/* 80294DD4 00290A34 48 00 07 25 */ bl __FreeDelayLine
+/* 80294DD8 00290A38 7F A3 EB 78 */ mr r3, r29
+/* 80294DDC 00290A3C 4B FD 99 A9 */ bl OSRestoreInterrupts
+/* 80294DE0 00290A40 7F E3 FB 78 */ mr r3, r31
+/* 80294DE4 00290A44 4B FD 99 A1 */ bl OSRestoreInterrupts
+/* 80294DE8 00290A48 38 60 00 00 */ li r3, 0
+/* 80294DEC 00290A4C 48 00 00 1C */ b lbl_80294E08
+lbl_80294DF0:
+/* 80294DF0 00290A50 80 1E 00 B0 */ lwz r0, 0xb0(r30)
+/* 80294DF4 00290A54 7F E3 FB 78 */ mr r3, r31
+/* 80294DF8 00290A58 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
+/* 80294DFC 00290A5C 90 1E 00 B0 */ stw r0, 0xb0(r30)
+/* 80294E00 00290A60 4B FD 99 85 */ bl OSRestoreInterrupts
+/* 80294E04 00290A64 38 60 00 01 */ li r3, 1
+lbl_80294E08:
+/* 80294E08 00290A68 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80294E0C 00290A6C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80294E10 00290A70 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80294E14 00290A74 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80294E18 00290A78 7C 08 03 A6 */ mtlr r0
+/* 80294E1C 00290A7C 38 21 00 20 */ addi r1, r1, 0x20
+/* 80294E20 00290A80 4E 80 00 20 */ blr
+
+.global AXFXReverbStdExpSettings
+AXFXReverbStdExpSettings:
+/* 80294E24 00290A84 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80294E28 00290A88 7C 08 02 A6 */ mflr r0
+/* 80294E2C 00290A8C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80294E30 00290A90 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80294E34 00290A94 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80294E38 00290A98 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80294E3C 00290A9C 7C 7D 1B 78 */ mr r29, r3
+/* 80294E40 00290AA0 4B FD 99 1D */ bl OSDisableInterrupts
+/* 80294E44 00290AA4 80 1D 00 B0 */ lwz r0, 0xb0(r29)
+/* 80294E48 00290AA8 7C 7E 1B 78 */ mr r30, r3
+/* 80294E4C 00290AAC 60 00 00 01 */ ori r0, r0, 1
+/* 80294E50 00290AB0 90 1D 00 B0 */ stw r0, 0xb0(r29)
+/* 80294E54 00290AB4 4B FD 99 09 */ bl OSDisableInterrupts
+/* 80294E58 00290AB8 80 1D 00 B0 */ lwz r0, 0xb0(r29)
+/* 80294E5C 00290ABC 7C 7F 1B 78 */ mr r31, r3
+/* 80294E60 00290AC0 7F A3 EB 78 */ mr r3, r29
+/* 80294E64 00290AC4 60 00 00 01 */ ori r0, r0, 1
+/* 80294E68 00290AC8 90 1D 00 B0 */ stw r0, 0xb0(r29)
+/* 80294E6C 00290ACC 48 00 06 8D */ bl __FreeDelayLine
+/* 80294E70 00290AD0 7F E3 FB 78 */ mr r3, r31
+/* 80294E74 00290AD4 4B FD 99 11 */ bl OSRestoreInterrupts
+/* 80294E78 00290AD8 7F A3 EB 78 */ mr r3, r29
+/* 80294E7C 00290ADC 4B FF FE 2D */ bl AXFXReverbStdExpInit
+/* 80294E80 00290AE0 2C 03 00 00 */ cmpwi r3, 0
+/* 80294E84 00290AE4 40 82 00 38 */ bne lbl_80294EBC
+/* 80294E88 00290AE8 4B FD 98 D5 */ bl OSDisableInterrupts
+/* 80294E8C 00290AEC 80 1D 00 B0 */ lwz r0, 0xb0(r29)
+/* 80294E90 00290AF0 7C 7F 1B 78 */ mr r31, r3
+/* 80294E94 00290AF4 7F A3 EB 78 */ mr r3, r29
+/* 80294E98 00290AF8 60 00 00 01 */ ori r0, r0, 1
+/* 80294E9C 00290AFC 90 1D 00 B0 */ stw r0, 0xb0(r29)
+/* 80294EA0 00290B00 48 00 06 59 */ bl __FreeDelayLine
+/* 80294EA4 00290B04 7F E3 FB 78 */ mr r3, r31
+/* 80294EA8 00290B08 4B FD 98 DD */ bl OSRestoreInterrupts
+/* 80294EAC 00290B0C 7F C3 F3 78 */ mr r3, r30
+/* 80294EB0 00290B10 4B FD 98 D5 */ bl OSRestoreInterrupts
+/* 80294EB4 00290B14 38 60 00 00 */ li r3, 0
+/* 80294EB8 00290B18 48 00 00 20 */ b lbl_80294ED8
+lbl_80294EBC:
+/* 80294EBC 00290B1C 80 1D 00 B0 */ lwz r0, 0xb0(r29)
+/* 80294EC0 00290B20 7F C3 F3 78 */ mr r3, r30
+/* 80294EC4 00290B24 60 00 00 02 */ ori r0, r0, 2
+/* 80294EC8 00290B28 54 00 00 3C */ rlwinm r0, r0, 0, 0, 0x1e
+/* 80294ECC 00290B2C 90 1D 00 B0 */ stw r0, 0xb0(r29)
+/* 80294ED0 00290B30 4B FD 98 B5 */ bl OSRestoreInterrupts
+/* 80294ED4 00290B34 38 60 00 01 */ li r3, 1
+lbl_80294ED8:
+/* 80294ED8 00290B38 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80294EDC 00290B3C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80294EE0 00290B40 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80294EE4 00290B44 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80294EE8 00290B48 7C 08 03 A6 */ mtlr r0
+/* 80294EEC 00290B4C 38 21 00 20 */ addi r1, r1, 0x20
+/* 80294EF0 00290B50 4E 80 00 20 */ blr
+
+.global AXFXReverbStdExpShutdown
+AXFXReverbStdExpShutdown:
+/* 80294EF4 00290B54 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80294EF8 00290B58 7C 08 02 A6 */ mflr r0
+/* 80294EFC 00290B5C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80294F00 00290B60 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80294F04 00290B64 93 C1 00 08 */ stw r30, 8(r1)
+/* 80294F08 00290B68 7C 7E 1B 78 */ mr r30, r3
+/* 80294F0C 00290B6C 4B FD 98 51 */ bl OSDisableInterrupts
+/* 80294F10 00290B70 80 1E 00 B0 */ lwz r0, 0xb0(r30)
+/* 80294F14 00290B74 7C 7F 1B 78 */ mr r31, r3
+/* 80294F18 00290B78 7F C3 F3 78 */ mr r3, r30
+/* 80294F1C 00290B7C 60 00 00 01 */ ori r0, r0, 1
+/* 80294F20 00290B80 90 1E 00 B0 */ stw r0, 0xb0(r30)
+/* 80294F24 00290B84 48 00 05 D5 */ bl __FreeDelayLine
+/* 80294F28 00290B88 7F E3 FB 78 */ mr r3, r31
+/* 80294F2C 00290B8C 4B FD 98 59 */ bl OSRestoreInterrupts
+/* 80294F30 00290B90 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80294F34 00290B94 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80294F38 00290B98 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80294F3C 00290B9C 7C 08 03 A6 */ mtlr r0
+/* 80294F40 00290BA0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80294F44 00290BA4 4E 80 00 20 */ blr
+
+.global AXFXReverbStdExpCallback
+AXFXReverbStdExpCallback:
+/* 80294F48 00290BA8 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 80294F4C 00290BAC 7C 08 02 A6 */ mflr r0
+/* 80294F50 00290BB0 90 01 00 64 */ stw r0, 0x64(r1)
+/* 80294F54 00290BB4 39 61 00 60 */ addi r11, r1, 0x60
+/* 80294F58 00290BB8 4B F3 21 C5 */ bl _savegpr_24
+/* 80294F5C 00290BBC 80 04 00 B0 */ lwz r0, 0xb0(r4)
+/* 80294F60 00290BC0 2C 00 00 00 */ cmpwi r0, 0
+/* 80294F64 00290BC4 41 82 00 10 */ beq lbl_80294F74
+/* 80294F68 00290BC8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
+/* 80294F6C 00290BCC 90 04 00 B0 */ stw r0, 0xb0(r4)
+/* 80294F70 00290BD0 48 00 03 2C */ b lbl_8029529C
+lbl_80294F74:
+/* 80294F74 00290BD4 80 E4 00 D8 */ lwz r7, 0xd8(r4)
+/* 80294F78 00290BD8 80 C3 00 00 */ lwz r6, 0(r3)
+/* 80294F7C 00290BDC 80 A3 00 04 */ lwz r5, 4(r3)
+/* 80294F80 00290BE0 2C 07 00 00 */ cmpwi r7, 0
+/* 80294F84 00290BE4 80 03 00 08 */ lwz r0, 8(r3)
+/* 80294F88 00290BE8 90 C1 00 20 */ stw r6, 0x20(r1)
+/* 80294F8C 00290BEC 90 A1 00 24 */ stw r5, 0x24(r1)
+/* 80294F90 00290BF0 90 01 00 28 */ stw r0, 0x28(r1)
+/* 80294F94 00290BF4 41 82 00 1C */ beq lbl_80294FB0
+/* 80294F98 00290BF8 80 A7 00 00 */ lwz r5, 0(r7)
+/* 80294F9C 00290BFC 80 67 00 04 */ lwz r3, 4(r7)
+/* 80294FA0 00290C00 80 07 00 08 */ lwz r0, 8(r7)
+/* 80294FA4 00290C04 90 A1 00 14 */ stw r5, 0x14(r1)
+/* 80294FA8 00290C08 90 61 00 18 */ stw r3, 0x18(r1)
+/* 80294FAC 00290C0C 90 01 00 1C */ stw r0, 0x1c(r1)
+lbl_80294FB0:
+/* 80294FB0 00290C10 80 C4 00 DC */ lwz r6, 0xdc(r4)
+/* 80294FB4 00290C14 2C 06 00 00 */ cmpwi r6, 0
+/* 80294FB8 00290C18 41 82 00 1C */ beq lbl_80294FD4
+/* 80294FBC 00290C1C 80 A6 00 00 */ lwz r5, 0(r6)
+/* 80294FC0 00290C20 80 66 00 04 */ lwz r3, 4(r6)
+/* 80294FC4 00290C24 80 06 00 08 */ lwz r0, 8(r6)
+/* 80294FC8 00290C28 90 A1 00 08 */ stw r5, 8(r1)
+/* 80294FCC 00290C2C 90 61 00 0C */ stw r3, 0xc(r1)
+/* 80294FD0 00290C30 90 01 00 10 */ stw r0, 0x10(r1)
+lbl_80294FD4:
+/* 80294FD4 00290C34 C0 42 A2 E8 */ lfs f2, lbl_806428E8-_SDA2_BASE_(r2)
+/* 80294FD8 00290C38 3B 80 00 00 */ li r28, 0
+/* 80294FDC 00290C3C C0 04 00 AC */ lfs f0, 0xac(r4)
+/* 80294FE0 00290C40 3C 60 43 30 */ lis r3, 0x4330
+/* 80294FE4 00290C44 C0 62 A2 EC */ lfs f3, lbl_806428EC-_SDA2_BASE_(r2)
+/* 80294FE8 00290C48 38 00 00 00 */ li r0, 0
+/* 80294FEC 00290C4C C0 24 00 D0 */ lfs f1, 0xd0(r4)
+/* 80294FF0 00290C50 EC A2 00 28 */ fsubs f5, f2, f0
+/* 80294FF4 00290C54 C0 44 00 D4 */ lfs f2, 0xd4(r4)
+/* 80294FF8 00290C58 3B 60 00 03 */ li r27, 3
+/* 80294FFC 00290C5C EC C3 00 72 */ fmuls f6, f3, f1
+/* 80295000 00290C60 C0 24 00 18 */ lfs f1, 0x18(r4)
+/* 80295004 00290C64 EC E3 00 B2 */ fmuls f7, f3, f2
+/* 80295008 00290C68 C0 44 00 64 */ lfs f2, 0x64(r4)
+/* 8029500C 00290C6C C0 64 00 68 */ lfs f3, 0x68(r4)
+/* 80295010 00290C70 C0 84 00 9C */ lfs f4, 0x9c(r4)
+/* 80295014 00290C74 C9 62 A2 F0 */ lfd f11, lbl_806428F0-_SDA2_BASE_(r2)
+lbl_80295018:
+/* 80295018 00290C78 81 44 00 0C */ lwz r10, 0xc(r4)
+/* 8029501C 00290C7C 7C 87 23 78 */ mr r7, r4
+/* 80295020 00290C80 81 64 00 28 */ lwz r11, 0x28(r4)
+/* 80295024 00290C84 7C 88 23 78 */ mr r8, r4
+/* 80295028 00290C88 81 84 00 4C */ lwz r12, 0x4c(r4)
+/* 8029502C 00290C8C 38 A1 00 14 */ addi r5, r1, 0x14
+/* 80295030 00290C90 83 44 00 50 */ lwz r26, 0x50(r4)
+/* 80295034 00290C94 38 C1 00 20 */ addi r6, r1, 0x20
+/* 80295038 00290C98 83 24 00 84 */ lwz r25, 0x84(r4)
+/* 8029503C 00290C9C 39 21 00 08 */ addi r9, r1, 8
+/* 80295040 00290CA0 83 04 00 88 */ lwz r24, 0x88(r4)
+/* 80295044 00290CA4 55 4A 10 3A */ slwi r10, r10, 2
+/* 80295048 00290CA8 55 6B 10 3A */ slwi r11, r11, 2
+/* 8029504C 00290CAC 55 8C 10 3A */ slwi r12, r12, 2
+/* 80295050 00290CB0 57 5F 10 3A */ slwi r31, r26, 2
+/* 80295054 00290CB4 57 3E 10 3A */ slwi r30, r25, 2
+/* 80295058 00290CB8 57 1D 10 3A */ slwi r29, r24, 2
+/* 8029505C 00290CBC 7F 69 03 A6 */ mtctr r27
+lbl_80295060:
+/* 80295060 00290CC0 83 04 00 D8 */ lwz r24, 0xd8(r4)
+/* 80295064 00290CC4 2C 18 00 00 */ cmpwi r24, 0
+/* 80295068 00290CC8 41 82 00 38 */ beq lbl_802950A0
+/* 8029506C 00290CCC 83 25 00 00 */ lwz r25, 0(r5)
+/* 80295070 00290CD0 83 46 00 00 */ lwz r26, 0(r6)
+/* 80295074 00290CD4 83 19 00 00 */ lwz r24, 0(r25)
+/* 80295078 00290CD8 3B 39 00 04 */ addi r25, r25, 4
+/* 8029507C 00290CDC 83 5A 00 00 */ lwz r26, 0(r26)
+/* 80295080 00290CE0 90 61 00 30 */ stw r3, 0x30(r1)
+/* 80295084 00290CE4 7F 1A C2 14 */ add r24, r26, r24
+/* 80295088 00290CE8 6F 18 80 00 */ xoris r24, r24, 0x8000
+/* 8029508C 00290CEC 93 25 00 00 */ stw r25, 0(r5)
+/* 80295090 00290CF0 93 01 00 34 */ stw r24, 0x34(r1)
+/* 80295094 00290CF4 C9 01 00 30 */ lfd f8, 0x30(r1)
+/* 80295098 00290CF8 ED 28 58 28 */ fsubs f9, f8, f11
+/* 8029509C 00290CFC 48 00 00 20 */ b lbl_802950BC
+lbl_802950A0:
+/* 802950A0 00290D00 83 06 00 00 */ lwz r24, 0(r6)
+/* 802950A4 00290D04 90 61 00 38 */ stw r3, 0x38(r1)
+/* 802950A8 00290D08 83 18 00 00 */ lwz r24, 0(r24)
+/* 802950AC 00290D0C 6F 18 80 00 */ xoris r24, r24, 0x8000
+/* 802950B0 00290D10 93 01 00 3C */ stw r24, 0x3c(r1)
+/* 802950B4 00290D14 C9 01 00 38 */ lfd f8, 0x38(r1)
+/* 802950B8 00290D18 ED 28 58 28 */ fsubs f9, f8, f11
+lbl_802950BC:
+/* 802950BC 00290D1C 83 07 00 00 */ lwz r24, 0(r7)
+/* 802950C0 00290D20 7D 4A C4 2E */ lfsx f10, r10, r24
+/* 802950C4 00290D24 ED 0A 00 72 */ fmuls f8, f10, f1
+/* 802950C8 00290D28 ED 09 40 2A */ fadds f8, f9, f8
+/* 802950CC 00290D2C 7D 0A C5 2E */ stfsx f8, r10, r24
+/* 802950D0 00290D30 83 04 00 2C */ lwz r24, 0x2c(r4)
+/* 802950D4 00290D34 2C 18 00 00 */ cmpwi r24, 0
+/* 802950D8 00290D38 41 82 00 14 */ beq lbl_802950EC
+/* 802950DC 00290D3C 83 07 00 1C */ lwz r24, 0x1c(r7)
+/* 802950E0 00290D40 7D 8B C4 2E */ lfsx f12, r11, r24
+/* 802950E4 00290D44 7D 2B C5 2E */ stfsx f9, r11, r24
+/* 802950E8 00290D48 48 00 00 08 */ b lbl_802950F0
+lbl_802950EC:
+/* 802950EC 00290D4C FD 80 48 90 */ fmr f12, f9
+lbl_802950F0:
+/* 802950F0 00290D50 83 08 00 34 */ lwz r24, 0x34(r8)
+/* 802950F4 00290D54 ED 4A 01 B2 */ fmuls f10, f10, f6
+/* 802950F8 00290D58 83 46 00 00 */ lwz r26, 0(r6)
+/* 802950FC 00290D5C 7D 2C C4 2E */ lfsx f9, r12, r24
+/* 80295100 00290D60 3B 3A 00 04 */ addi r25, r26, 4
+/* 80295104 00290D64 ED 09 00 B2 */ fmuls f8, f9, f2
+/* 80295108 00290D68 93 26 00 00 */ stw r25, 0(r6)
+/* 8029510C 00290D6C ED 0C 40 2A */ fadds f8, f12, f8
+/* 80295110 00290D70 7D 0C C5 2E */ stfsx f8, r12, r24
+/* 80295114 00290D74 83 28 00 38 */ lwz r25, 0x38(r8)
+/* 80295118 00290D78 7D BF CC 2E */ lfsx f13, r31, r25
+/* 8029511C 00290D7C ED 0D 00 F2 */ fmuls f8, f13, f3
+/* 80295120 00290D80 ED 29 68 2A */ fadds f9, f9, f13
+/* 80295124 00290D84 ED 0C 40 2A */ fadds f8, f12, f8
+/* 80295128 00290D88 7D 1F CD 2E */ stfsx f8, r31, r25
+/* 8029512C 00290D8C 83 08 00 6C */ lwz r24, 0x6c(r8)
+/* 80295130 00290D90 7D 9E C4 2E */ lfsx f12, r30, r24
+/* 80295134 00290D94 ED 0C 01 32 */ fmuls f8, f12, f4
+/* 80295138 00290D98 ED 09 40 2A */ fadds f8, f9, f8
+/* 8029513C 00290D9C ED 28 01 32 */ fmuls f9, f8, f4
+/* 80295140 00290DA0 7D 1E C5 2E */ stfsx f8, r30, r24
+/* 80295144 00290DA4 C1 07 00 A0 */ lfs f8, 0xa0(r7)
+/* 80295148 00290DA8 ED 2C 48 28 */ fsubs f9, f12, f9
+/* 8029514C 00290DAC ED 00 02 32 */ fmuls f8, f0, f8
+/* 80295150 00290DB0 ED 25 02 72 */ fmuls f9, f5, f9
+/* 80295154 00290DB4 ED 29 40 2A */ fadds f9, f9, f8
+/* 80295158 00290DB8 D1 27 00 A0 */ stfs f9, 0xa0(r7)
+/* 8029515C 00290DBC 83 28 00 70 */ lwz r25, 0x70(r8)
+/* 80295160 00290DC0 7D 9D CC 2E */ lfsx f12, r29, r25
+/* 80295164 00290DC4 ED 0C 01 32 */ fmuls f8, f12, f4
+/* 80295168 00290DC8 ED 09 40 2A */ fadds f8, f9, f8
+/* 8029516C 00290DCC ED 28 01 32 */ fmuls f9, f8, f4
+/* 80295170 00290DD0 7D 1D CD 2E */ stfsx f8, r29, r25
+/* 80295174 00290DD4 C1 04 00 E0 */ lfs f8, 0xe0(r4)
+/* 80295178 00290DD8 ED 2C 48 28 */ fsubs f9, f12, f9
+/* 8029517C 00290DDC ED 29 01 F2 */ fmuls f9, f9, f7
+/* 80295180 00290DE0 ED 2A 48 2A */ fadds f9, f10, f9
+/* 80295184 00290DE4 ED 09 02 32 */ fmuls f8, f9, f8
+/* 80295188 00290DE8 FD 00 40 1E */ fctiwz f8, f8
+/* 8029518C 00290DEC D9 01 00 38 */ stfd f8, 0x38(r1)
+/* 80295190 00290DF0 83 21 00 3C */ lwz r25, 0x3c(r1)
+/* 80295194 00290DF4 93 3A 00 00 */ stw r25, 0(r26)
+/* 80295198 00290DF8 83 24 00 DC */ lwz r25, 0xdc(r4)
+/* 8029519C 00290DFC 2C 19 00 00 */ cmpwi r25, 0
+/* 802951A0 00290E00 41 82 00 28 */ beq lbl_802951C8
+/* 802951A4 00290E04 C1 04 00 E4 */ lfs f8, 0xe4(r4)
+/* 802951A8 00290E08 83 29 00 00 */ lwz r25, 0(r9)
+/* 802951AC 00290E0C ED 09 02 32 */ fmuls f8, f9, f8
+/* 802951B0 00290E10 3B 59 00 04 */ addi r26, r25, 4
+/* 802951B4 00290E14 93 49 00 00 */ stw r26, 0(r9)
+/* 802951B8 00290E18 FD 00 40 1E */ fctiwz f8, f8
+/* 802951BC 00290E1C D9 01 00 38 */ stfd f8, 0x38(r1)
+/* 802951C0 00290E20 83 41 00 3C */ lwz r26, 0x3c(r1)
+/* 802951C4 00290E24 93 59 00 00 */ stw r26, 0(r25)
+lbl_802951C8:
+/* 802951C8 00290E28 38 A5 00 04 */ addi r5, r5, 4
+/* 802951CC 00290E2C 38 C6 00 04 */ addi r6, r6, 4
+/* 802951D0 00290E30 38 E7 00 04 */ addi r7, r7, 4
+/* 802951D4 00290E34 39 08 00 08 */ addi r8, r8, 8
+/* 802951D8 00290E38 39 29 00 04 */ addi r9, r9, 4
+/* 802951DC 00290E3C 42 00 FE 84 */ bdnz lbl_80295060
+/* 802951E0 00290E40 80 C4 00 0C */ lwz r6, 0xc(r4)
+/* 802951E4 00290E44 80 A4 00 10 */ lwz r5, 0x10(r4)
+/* 802951E8 00290E48 38 C6 00 01 */ addi r6, r6, 1
+/* 802951EC 00290E4C 7C 06 28 40 */ cmplw r6, r5
+/* 802951F0 00290E50 90 C4 00 0C */ stw r6, 0xc(r4)
+/* 802951F4 00290E54 41 80 00 08 */ blt lbl_802951FC
+/* 802951F8 00290E58 90 04 00 0C */ stw r0, 0xc(r4)
+lbl_802951FC:
+/* 802951FC 00290E5C 80 C4 00 2C */ lwz r6, 0x2c(r4)
+/* 80295200 00290E60 2C 06 00 00 */ cmpwi r6, 0
+/* 80295204 00290E64 41 82 00 1C */ beq lbl_80295220
+/* 80295208 00290E68 80 A4 00 28 */ lwz r5, 0x28(r4)
+/* 8029520C 00290E6C 38 A5 00 01 */ addi r5, r5, 1
+/* 80295210 00290E70 7C 05 30 40 */ cmplw r5, r6
+/* 80295214 00290E74 90 A4 00 28 */ stw r5, 0x28(r4)
+/* 80295218 00290E78 41 80 00 08 */ blt lbl_80295220
+/* 8029521C 00290E7C 90 04 00 28 */ stw r0, 0x28(r4)
+lbl_80295220:
+/* 80295220 00290E80 80 C4 00 4C */ lwz r6, 0x4c(r4)
+/* 80295224 00290E84 80 A4 00 54 */ lwz r5, 0x54(r4)
+/* 80295228 00290E88 38 C6 00 01 */ addi r6, r6, 1
+/* 8029522C 00290E8C 7C 06 28 40 */ cmplw r6, r5
+/* 80295230 00290E90 90 C4 00 4C */ stw r6, 0x4c(r4)
+/* 80295234 00290E94 41 80 00 08 */ blt lbl_8029523C
+/* 80295238 00290E98 90 04 00 4C */ stw r0, 0x4c(r4)
+lbl_8029523C:
+/* 8029523C 00290E9C 80 C4 00 50 */ lwz r6, 0x50(r4)
+/* 80295240 00290EA0 80 A4 00 58 */ lwz r5, 0x58(r4)
+/* 80295244 00290EA4 38 C6 00 01 */ addi r6, r6, 1
+/* 80295248 00290EA8 7C 06 28 40 */ cmplw r6, r5
+/* 8029524C 00290EAC 90 C4 00 50 */ stw r6, 0x50(r4)
+/* 80295250 00290EB0 41 80 00 08 */ blt lbl_80295258
+/* 80295254 00290EB4 90 04 00 50 */ stw r0, 0x50(r4)
+lbl_80295258:
+/* 80295258 00290EB8 80 C4 00 84 */ lwz r6, 0x84(r4)
+/* 8029525C 00290EBC 80 A4 00 8C */ lwz r5, 0x8c(r4)
+/* 80295260 00290EC0 38 C6 00 01 */ addi r6, r6, 1
+/* 80295264 00290EC4 7C 06 28 40 */ cmplw r6, r5
+/* 80295268 00290EC8 90 C4 00 84 */ stw r6, 0x84(r4)
+/* 8029526C 00290ECC 41 80 00 08 */ blt lbl_80295274
+/* 80295270 00290ED0 90 04 00 84 */ stw r0, 0x84(r4)
+lbl_80295274:
+/* 80295274 00290ED4 80 C4 00 88 */ lwz r6, 0x88(r4)
+/* 80295278 00290ED8 80 A4 00 90 */ lwz r5, 0x90(r4)
+/* 8029527C 00290EDC 38 C6 00 01 */ addi r6, r6, 1
+/* 80295280 00290EE0 7C 06 28 40 */ cmplw r6, r5
+/* 80295284 00290EE4 90 C4 00 88 */ stw r6, 0x88(r4)
+/* 80295288 00290EE8 41 80 00 08 */ blt lbl_80295290
+/* 8029528C 00290EEC 90 04 00 88 */ stw r0, 0x88(r4)
+lbl_80295290:
+/* 80295290 00290EF0 3B 9C 00 01 */ addi r28, r28, 1
+/* 80295294 00290EF4 28 1C 00 60 */ cmplwi r28, 0x60
+/* 80295298 00290EF8 41 80 FD 80 */ blt lbl_80295018
+lbl_8029529C:
+/* 8029529C 00290EFC 39 61 00 60 */ addi r11, r1, 0x60
+/* 802952A0 00290F00 4B F3 1E C9 */ bl _restgpr_24
+/* 802952A4 00290F04 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802952A8 00290F08 7C 08 03 A6 */ mtlr r0
+/* 802952AC 00290F0C 38 21 00 60 */ addi r1, r1, 0x60
+/* 802952B0 00290F10 4E 80 00 20 */ blr
+
+__AllocDelayLine:
+/* 802952B4 00290F14 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802952B8 00290F18 7C 08 02 A6 */ mflr r0
+/* 802952BC 00290F1C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802952C0 00290F20 39 61 00 30 */ addi r11, r1, 0x30
+/* 802952C4 00290F24 4B F3 1E 59 */ bl _savegpr_24
+/* 802952C8 00290F28 7C 78 1B 78 */ mr r24, r3
+/* 802952CC 00290F2C 3B 20 00 00 */ li r25, 0
+/* 802952D0 00290F30 7F 1E C3 78 */ mr r30, r24
+/* 802952D4 00290F34 3B E0 00 00 */ li r31, 0
+/* 802952D8 00290F38 7F 1D C3 78 */ mr r29, r24
+lbl_802952DC:
+/* 802952DC 00290F3C 80 18 00 14 */ lwz r0, 0x14(r24)
+/* 802952E0 00290F40 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 802952E4 00290F44 54 03 10 3A */ slwi r3, r0, 2
+/* 802952E8 00290F48 7D 89 03 A6 */ mtctr r12
+/* 802952EC 00290F4C 4E 80 04 21 */ bctrl
+/* 802952F0 00290F50 2C 03 00 00 */ cmpwi r3, 0
+/* 802952F4 00290F54 90 7E 00 00 */ stw r3, 0(r30)
+/* 802952F8 00290F58 40 82 00 0C */ bne lbl_80295304
+/* 802952FC 00290F5C 38 60 00 00 */ li r3, 0
+/* 80295300 00290F60 48 00 00 E0 */ b lbl_802953E0
+lbl_80295304:
+/* 80295304 00290F64 80 18 00 30 */ lwz r0, 0x30(r24)
+/* 80295308 00290F68 2C 00 00 00 */ cmpwi r0, 0
+/* 8029530C 00290F6C 41 82 00 28 */ beq lbl_80295334
+/* 80295310 00290F70 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80295314 00290F74 54 03 10 3A */ slwi r3, r0, 2
+/* 80295318 00290F78 7D 89 03 A6 */ mtctr r12
+/* 8029531C 00290F7C 4E 80 04 21 */ bctrl
+/* 80295320 00290F80 2C 03 00 00 */ cmpwi r3, 0
+/* 80295324 00290F84 90 7E 00 1C */ stw r3, 0x1c(r30)
+/* 80295328 00290F88 40 82 00 10 */ bne lbl_80295338
+/* 8029532C 00290F8C 38 60 00 00 */ li r3, 0
+/* 80295330 00290F90 48 00 00 B0 */ b lbl_802953E0
+lbl_80295334:
+/* 80295334 00290F94 93 FE 00 1C */ stw r31, 0x1c(r30)
+lbl_80295338:
+/* 80295338 00290F98 7F 1B C3 78 */ mr r27, r24
+/* 8029533C 00290F9C 7F BC EB 78 */ mr r28, r29
+/* 80295340 00290FA0 3B 40 00 00 */ li r26, 0
+lbl_80295344:
+/* 80295344 00290FA4 80 1B 00 5C */ lwz r0, 0x5c(r27)
+/* 80295348 00290FA8 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 8029534C 00290FAC 54 03 10 3A */ slwi r3, r0, 2
+/* 80295350 00290FB0 7D 89 03 A6 */ mtctr r12
+/* 80295354 00290FB4 4E 80 04 21 */ bctrl
+/* 80295358 00290FB8 2C 03 00 00 */ cmpwi r3, 0
+/* 8029535C 00290FBC 90 7C 00 34 */ stw r3, 0x34(r28)
+/* 80295360 00290FC0 40 82 00 0C */ bne lbl_8029536C
+/* 80295364 00290FC4 38 60 00 00 */ li r3, 0
+/* 80295368 00290FC8 48 00 00 78 */ b lbl_802953E0
+lbl_8029536C:
+/* 8029536C 00290FCC 3B 5A 00 01 */ addi r26, r26, 1
+/* 80295370 00290FD0 3B 9C 00 04 */ addi r28, r28, 4
+/* 80295374 00290FD4 28 1A 00 02 */ cmplwi r26, 2
+/* 80295378 00290FD8 3B 7B 00 04 */ addi r27, r27, 4
+/* 8029537C 00290FDC 41 80 FF C8 */ blt lbl_80295344
+/* 80295380 00290FE0 7F 1C C3 78 */ mr r28, r24
+/* 80295384 00290FE4 7F BB EB 78 */ mr r27, r29
+/* 80295388 00290FE8 3B 40 00 00 */ li r26, 0
+lbl_8029538C:
+/* 8029538C 00290FEC 80 1C 00 94 */ lwz r0, 0x94(r28)
+/* 80295390 00290FF0 81 8D 88 F8 */ lwz r12, lbl_8063DBB8-_SDA_BASE_(r13)
+/* 80295394 00290FF4 54 03 10 3A */ slwi r3, r0, 2
+/* 80295398 00290FF8 7D 89 03 A6 */ mtctr r12
+/* 8029539C 00290FFC 4E 80 04 21 */ bctrl
+/* 802953A0 00291000 2C 03 00 00 */ cmpwi r3, 0
+/* 802953A4 00291004 90 7B 00 6C */ stw r3, 0x6c(r27)
+/* 802953A8 00291008 40 82 00 0C */ bne lbl_802953B4
+/* 802953AC 0029100C 38 60 00 00 */ li r3, 0
+/* 802953B0 00291010 48 00 00 30 */ b lbl_802953E0
+lbl_802953B4:
+/* 802953B4 00291014 3B 5A 00 01 */ addi r26, r26, 1
+/* 802953B8 00291018 3B 7B 00 04 */ addi r27, r27, 4
+/* 802953BC 0029101C 28 1A 00 02 */ cmplwi r26, 2
+/* 802953C0 00291020 3B 9C 00 04 */ addi r28, r28, 4
+/* 802953C4 00291024 41 80 FF C8 */ blt lbl_8029538C
+/* 802953C8 00291028 3B 39 00 01 */ addi r25, r25, 1
+/* 802953CC 0029102C 3B BD 00 08 */ addi r29, r29, 8
+/* 802953D0 00291030 28 19 00 03 */ cmplwi r25, 3
+/* 802953D4 00291034 3B DE 00 04 */ addi r30, r30, 4
+/* 802953D8 00291038 41 80 FF 04 */ blt lbl_802952DC
+/* 802953DC 0029103C 38 60 00 01 */ li r3, 1
+lbl_802953E0:
+/* 802953E0 00291040 39 61 00 30 */ addi r11, r1, 0x30
+/* 802953E4 00291044 4B F3 1D 85 */ bl _restgpr_24
+/* 802953E8 00291048 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802953EC 0029104C 7C 08 03 A6 */ mtlr r0
+/* 802953F0 00291050 38 21 00 30 */ addi r1, r1, 0x30
+/* 802953F4 00291054 4E 80 00 20 */ blr
+
+__BzeroDelayLines:
+/* 802953F8 00291058 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802953FC 0029105C 7C 08 02 A6 */ mflr r0
+/* 80295400 00291060 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80295404 00291064 39 61 00 30 */ addi r11, r1, 0x30
+/* 80295408 00291068 4B F3 1D 19 */ bl _savegpr_25
+/* 8029540C 0029106C 7C 79 1B 78 */ mr r25, r3
+/* 80295410 00291070 3B 40 00 00 */ li r26, 0
+/* 80295414 00291074 7F 3F CB 78 */ mr r31, r25
+/* 80295418 00291078 7F 3E CB 78 */ mr r30, r25
+lbl_8029541C:
+/* 8029541C 0029107C 80 7F 00 00 */ lwz r3, 0(r31)
+/* 80295420 00291080 2C 03 00 00 */ cmpwi r3, 0
+/* 80295424 00291084 41 82 00 14 */ beq lbl_80295438
+/* 80295428 00291088 80 19 00 14 */ lwz r0, 0x14(r25)
+/* 8029542C 0029108C 38 80 00 00 */ li r4, 0
+/* 80295430 00291090 54 05 10 3A */ slwi r5, r0, 2
+/* 80295434 00291094 4B D6 EC D1 */ bl memset
+lbl_80295438:
+/* 80295438 00291098 80 7F 00 1C */ lwz r3, 0x1c(r31)
+/* 8029543C 0029109C 2C 03 00 00 */ cmpwi r3, 0
+/* 80295440 002910A0 41 82 00 14 */ beq lbl_80295454
+/* 80295444 002910A4 80 19 00 30 */ lwz r0, 0x30(r25)
+/* 80295448 002910A8 38 80 00 00 */ li r4, 0
+/* 8029544C 002910AC 54 05 10 3A */ slwi r5, r0, 2
+/* 80295450 002910B0 4B D6 EC B5 */ bl memset
+lbl_80295454:
+/* 80295454 002910B4 7F DC F3 78 */ mr r28, r30
+/* 80295458 002910B8 7F 3D CB 78 */ mr r29, r25
+/* 8029545C 002910BC 3B 60 00 00 */ li r27, 0
+lbl_80295460:
+/* 80295460 002910C0 80 7C 00 34 */ lwz r3, 0x34(r28)
+/* 80295464 002910C4 2C 03 00 00 */ cmpwi r3, 0
+/* 80295468 002910C8 41 82 00 14 */ beq lbl_8029547C
+/* 8029546C 002910CC 80 1D 00 5C */ lwz r0, 0x5c(r29)
+/* 80295470 002910D0 38 80 00 00 */ li r4, 0
+/* 80295474 002910D4 54 05 10 3A */ slwi r5, r0, 2
+/* 80295478 002910D8 4B D6 EC 8D */ bl memset
+lbl_8029547C:
+/* 8029547C 002910DC 3B 7B 00 01 */ addi r27, r27, 1
+/* 80295480 002910E0 3B BD 00 04 */ addi r29, r29, 4
+/* 80295484 002910E4 28 1B 00 02 */ cmplwi r27, 2
+/* 80295488 002910E8 3B 9C 00 04 */ addi r28, r28, 4
+/* 8029548C 002910EC 41 80 FF D4 */ blt lbl_80295460
+/* 80295490 002910F0 7F DD F3 78 */ mr r29, r30
+/* 80295494 002910F4 7F 3C CB 78 */ mr r28, r25
+/* 80295498 002910F8 3B 60 00 00 */ li r27, 0
+lbl_8029549C:
+/* 8029549C 002910FC 80 7D 00 6C */ lwz r3, 0x6c(r29)
+/* 802954A0 00291100 2C 03 00 00 */ cmpwi r3, 0
+/* 802954A4 00291104 41 82 00 14 */ beq lbl_802954B8
+/* 802954A8 00291108 80 1C 00 94 */ lwz r0, 0x94(r28)
+/* 802954AC 0029110C 38 80 00 00 */ li r4, 0
+/* 802954B0 00291110 54 05 10 3A */ slwi r5, r0, 2
+/* 802954B4 00291114 4B D6 EC 51 */ bl memset
+lbl_802954B8:
+/* 802954B8 00291118 3B 7B 00 01 */ addi r27, r27, 1
+/* 802954BC 0029111C 3B 9C 00 04 */ addi r28, r28, 4
+/* 802954C0 00291120 28 1B 00 02 */ cmplwi r27, 2
+/* 802954C4 00291124 3B BD 00 04 */ addi r29, r29, 4
+/* 802954C8 00291128 41 80 FF D4 */ blt lbl_8029549C
+/* 802954CC 0029112C 3B 5A 00 01 */ addi r26, r26, 1
+/* 802954D0 00291130 3B DE 00 08 */ addi r30, r30, 8
+/* 802954D4 00291134 28 1A 00 03 */ cmplwi r26, 3
+/* 802954D8 00291138 3B FF 00 04 */ addi r31, r31, 4
+/* 802954DC 0029113C 41 80 FF 40 */ blt lbl_8029541C
+/* 802954E0 00291140 39 61 00 30 */ addi r11, r1, 0x30
+/* 802954E4 00291144 4B F3 1C 89 */ bl _restgpr_25
+/* 802954E8 00291148 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802954EC 0029114C 7C 08 03 A6 */ mtlr r0
+/* 802954F0 00291150 38 21 00 30 */ addi r1, r1, 0x30
+/* 802954F4 00291154 4E 80 00 20 */ blr
+
+__FreeDelayLine:
+/* 802954F8 00291158 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802954FC 0029115C 7C 08 02 A6 */ mflr r0
+/* 80295500 00291160 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80295504 00291164 39 61 00 20 */ addi r11, r1, 0x20
+/* 80295508 00291168 4B F3 1C 1D */ bl _savegpr_26
+/* 8029550C 0029116C 3B 40 00 00 */ li r26, 0
+/* 80295510 00291170 7C 7E 1B 78 */ mr r30, r3
+/* 80295514 00291174 3B E0 00 00 */ li r31, 0
+/* 80295518 00291178 7C 7D 1B 78 */ mr r29, r3
+lbl_8029551C:
+/* 8029551C 0029117C 80 7E 00 00 */ lwz r3, 0(r30)
+/* 80295520 00291180 2C 03 00 00 */ cmpwi r3, 0
+/* 80295524 00291184 41 82 00 14 */ beq lbl_80295538
+/* 80295528 00291188 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 8029552C 0029118C 7D 89 03 A6 */ mtctr r12
+/* 80295530 00291190 4E 80 04 21 */ bctrl
+/* 80295534 00291194 93 FE 00 00 */ stw r31, 0(r30)
+lbl_80295538:
+/* 80295538 00291198 80 7E 00 1C */ lwz r3, 0x1c(r30)
+/* 8029553C 0029119C 2C 03 00 00 */ cmpwi r3, 0
+/* 80295540 002911A0 41 82 00 14 */ beq lbl_80295554
+/* 80295544 002911A4 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 80295548 002911A8 7D 89 03 A6 */ mtctr r12
+/* 8029554C 002911AC 4E 80 04 21 */ bctrl
+/* 80295550 002911B0 93 FE 00 1C */ stw r31, 0x1c(r30)
+lbl_80295554:
+/* 80295554 002911B4 7F BC EB 78 */ mr r28, r29
+/* 80295558 002911B8 3B 60 00 00 */ li r27, 0
+lbl_8029555C:
+/* 8029555C 002911BC 80 7C 00 34 */ lwz r3, 0x34(r28)
+/* 80295560 002911C0 2C 03 00 00 */ cmpwi r3, 0
+/* 80295564 002911C4 41 82 00 14 */ beq lbl_80295578
+/* 80295568 002911C8 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 8029556C 002911CC 7D 89 03 A6 */ mtctr r12
+/* 80295570 002911D0 4E 80 04 21 */ bctrl
+/* 80295574 002911D4 93 FC 00 34 */ stw r31, 0x34(r28)
+lbl_80295578:
+/* 80295578 002911D8 3B 7B 00 01 */ addi r27, r27, 1
+/* 8029557C 002911DC 3B 9C 00 04 */ addi r28, r28, 4
+/* 80295580 002911E0 28 1B 00 02 */ cmplwi r27, 2
+/* 80295584 002911E4 41 80 FF D8 */ blt lbl_8029555C
+/* 80295588 002911E8 7F BC EB 78 */ mr r28, r29
+/* 8029558C 002911EC 3B 60 00 00 */ li r27, 0
+lbl_80295590:
+/* 80295590 002911F0 80 7C 00 6C */ lwz r3, 0x6c(r28)
+/* 80295594 002911F4 2C 03 00 00 */ cmpwi r3, 0
+/* 80295598 002911F8 41 82 00 14 */ beq lbl_802955AC
+/* 8029559C 002911FC 81 8D 88 FC */ lwz r12, lbl_8063DBBC-_SDA_BASE_(r13)
+/* 802955A0 00291200 7D 89 03 A6 */ mtctr r12
+/* 802955A4 00291204 4E 80 04 21 */ bctrl
+/* 802955A8 00291208 93 FC 00 6C */ stw r31, 0x6c(r28)
+lbl_802955AC:
+/* 802955AC 0029120C 3B 7B 00 01 */ addi r27, r27, 1
+/* 802955B0 00291210 3B 9C 00 04 */ addi r28, r28, 4
+/* 802955B4 00291214 28 1B 00 02 */ cmplwi r27, 2
+/* 802955B8 00291218 41 80 FF D8 */ blt lbl_80295590
+/* 802955BC 0029121C 3B 5A 00 01 */ addi r26, r26, 1
+/* 802955C0 00291220 3B BD 00 08 */ addi r29, r29, 8
+/* 802955C4 00291224 28 1A 00 03 */ cmplwi r26, 3
+/* 802955C8 00291228 3B DE 00 04 */ addi r30, r30, 4
+/* 802955CC 0029122C 41 80 FF 50 */ blt lbl_8029551C
+/* 802955D0 00291230 39 61 00 20 */ addi r11, r1, 0x20
+/* 802955D4 00291234 4B F3 1B 9D */ bl _restgpr_26
+/* 802955D8 00291238 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802955DC 0029123C 7C 08 03 A6 */ mtlr r0
+/* 802955E0 00291240 38 21 00 20 */ addi r1, r1, 0x20
+/* 802955E4 00291244 4E 80 00 20 */ blr
+
+__InitParams:
+/* 802955E8 00291248 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 802955EC 0029124C 7C 08 02 A6 */ mflr r0
+/* 802955F0 00291250 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802955F4 00291254 DB E1 00 50 */ stfd f31, 0x50(r1)
+/* 802955F8 00291258 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
+/* 802955FC 0029125C DB C1 00 40 */ stfd f30, 0x40(r1)
+/* 80295600 00291260 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
+/* 80295604 00291264 DB A1 00 30 */ stfd f29, 0x30(r1)
+/* 80295608 00291268 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0
+/* 8029560C 0029126C 39 61 00 30 */ addi r11, r1, 0x30
+/* 80295610 00291270 4B F3 1B 11 */ bl _savegpr_25
+/* 80295614 00291274 80 A3 00 B4 */ lwz r5, 0xb4(r3)
+/* 80295618 00291278 7C 7F 1B 78 */ mr r31, r3
+/* 8029561C 0029127C 28 05 00 08 */ cmplwi r5, 8
+/* 80295620 00291280 41 80 00 0C */ blt lbl_8029562C
+/* 80295624 00291284 38 60 00 00 */ li r3, 0
+/* 80295628 00291288 48 00 02 3C */ b lbl_80295864
+lbl_8029562C:
+/* 8029562C 0029128C C0 23 00 BC */ lfs f1, 0xbc(r3)
+/* 80295630 00291290 C0 42 A2 E4 */ lfs f2, lbl_806428E4-_SDA2_BASE_(r2)
+/* 80295634 00291294 FC 01 10 40 */ fcmpo cr0, f1, f2
+/* 80295638 00291298 41 80 00 10 */ blt lbl_80295648
+/* 8029563C 0029129C C0 03 00 B8 */ lfs f0, 0xb8(r3)
+/* 80295640 002912A0 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 80295644 002912A4 40 81 00 0C */ ble lbl_80295650
+lbl_80295648:
+/* 80295648 002912A8 38 60 00 00 */ li r3, 0
+/* 8029564C 002912AC 48 00 02 18 */ b lbl_80295864
+lbl_80295650:
+/* 80295650 002912B0 80 03 00 C0 */ lwz r0, 0xc0(r3)
+/* 80295654 002912B4 28 00 00 06 */ cmplwi r0, 6
+/* 80295658 002912B8 41 80 00 0C */ blt lbl_80295664
+/* 8029565C 002912BC 38 60 00 00 */ li r3, 0
+/* 80295660 002912C0 48 00 02 04 */ b lbl_80295864
+lbl_80295664:
+/* 80295664 002912C4 C0 03 00 C4 */ lfs f0, 0xc4(r3)
+/* 80295668 002912C8 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 8029566C 002912CC 40 80 00 0C */ bge lbl_80295678
+/* 80295670 002912D0 38 60 00 00 */ li r3, 0
+/* 80295674 002912D4 48 00 01 F0 */ b lbl_80295864
+lbl_80295678:
+/* 80295678 002912D8 C0 03 00 C8 */ lfs f0, 0xc8(r3)
+/* 8029567C 002912DC FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80295680 002912E0 41 80 00 10 */ blt lbl_80295690
+/* 80295684 002912E4 C0 22 A2 E8 */ lfs f1, lbl_806428E8-_SDA2_BASE_(r2)
+/* 80295688 002912E8 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 8029568C 002912EC 40 81 00 0C */ ble lbl_80295698
+lbl_80295690:
+/* 80295690 002912F0 38 60 00 00 */ li r3, 0
+/* 80295694 002912F4 48 00 01 D0 */ b lbl_80295864
+lbl_80295698:
+/* 80295698 002912F8 C0 03 00 CC */ lfs f0, 0xcc(r3)
+/* 8029569C 002912FC FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802956A0 00291300 41 80 00 0C */ blt lbl_802956AC
+/* 802956A4 00291304 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802956A8 00291308 40 81 00 0C */ ble lbl_802956B4
+lbl_802956AC:
+/* 802956AC 0029130C 38 60 00 00 */ li r3, 0
+/* 802956B0 00291310 48 00 01 B4 */ b lbl_80295864
+lbl_802956B4:
+/* 802956B4 00291314 C0 03 00 D0 */ lfs f0, 0xd0(r3)
+/* 802956B8 00291318 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802956BC 0029131C 41 80 00 0C */ blt lbl_802956C8
+/* 802956C0 00291320 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802956C4 00291324 40 81 00 0C */ ble lbl_802956D0
+lbl_802956C8:
+/* 802956C8 00291328 38 60 00 00 */ li r3, 0
+/* 802956CC 0029132C 48 00 01 98 */ b lbl_80295864
+lbl_802956D0:
+/* 802956D0 00291330 C0 03 00 D4 */ lfs f0, 0xd4(r3)
+/* 802956D4 00291334 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802956D8 00291338 41 80 00 0C */ blt lbl_802956E4
+/* 802956DC 0029133C FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802956E0 00291340 40 81 00 0C */ ble lbl_802956EC
+lbl_802956E4:
+/* 802956E4 00291344 38 60 00 00 */ li r3, 0
+/* 802956E8 00291348 48 00 01 7C */ b lbl_80295864
+lbl_802956EC:
+/* 802956EC 0029134C C0 03 00 E0 */ lfs f0, 0xe0(r3)
+/* 802956F0 00291350 FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 802956F4 00291354 41 80 00 0C */ blt lbl_80295700
+/* 802956F8 00291358 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 802956FC 0029135C 40 81 00 0C */ ble lbl_80295708
+lbl_80295700:
+/* 80295700 00291360 38 60 00 00 */ li r3, 0
+/* 80295704 00291364 48 00 01 60 */ b lbl_80295864
+lbl_80295708:
+/* 80295708 00291368 C0 03 00 E4 */ lfs f0, 0xe4(r3)
+/* 8029570C 0029136C FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 80295710 00291370 41 80 00 0C */ blt lbl_8029571C
+/* 80295714 00291374 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 80295718 00291378 40 81 00 0C */ ble lbl_80295724
+lbl_8029571C:
+/* 8029571C 0029137C 38 60 00 00 */ li r3, 0
+/* 80295720 00291380 48 00 01 44 */ b lbl_80295864
+lbl_80295724:
+/* 80295724 00291384 38 00 00 00 */ li r0, 0
+/* 80295728 00291388 3C 80 80 44 */ lis r4, lbl_8043A6E0@ha
+/* 8029572C 0029138C 90 03 00 0C */ stw r0, 0xc(r3)
+/* 80295730 00291390 54 A0 10 3A */ slwi r0, r5, 2
+/* 80295734 00291394 38 84 A6 E0 */ addi r4, r4, lbl_8043A6E0@l
+/* 80295738 00291398 28 05 00 03 */ cmplwi r5, 3
+/* 8029573C 0029139C 7C 04 00 2E */ lwzx r0, r4, r0
+/* 80295740 002913A0 90 03 00 10 */ stw r0, 0x10(r3)
+/* 80295744 002913A4 41 81 00 10 */ bgt lbl_80295754
+/* 80295748 002913A8 C0 02 A2 F8 */ lfs f0, lbl_806428F8-_SDA2_BASE_(r2)
+/* 8029574C 002913AC D0 03 00 18 */ stfs f0, 0x18(r3)
+/* 80295750 002913B0 48 00 00 0C */ b lbl_8029575C
+lbl_80295754:
+/* 80295754 002913B4 C0 02 A2 FC */ lfs f0, lbl_806428FC-_SDA2_BASE_(r2)
+/* 80295758 002913B8 D0 03 00 18 */ stfs f0, 0x18(r3)
+lbl_8029575C:
+/* 8029575C 002913BC C0 22 A2 E0 */ lfs f1, lbl_806428E0-_SDA2_BASE_(r2)
+/* 80295760 002913C0 3B 80 00 00 */ li r28, 0
+/* 80295764 002913C4 C0 03 00 BC */ lfs f0, 0xbc(r3)
+/* 80295768 002913C8 93 83 00 28 */ stw r28, 0x28(r3)
+/* 8029576C 002913CC EC 21 00 32 */ fmuls f1, f1, f0
+/* 80295770 002913D0 4B F3 18 91 */ bl __cvt_fp2unsigned
+/* 80295774 002913D4 3F A0 80 44 */ lis r29, lbl_8043A700@ha
+/* 80295778 002913D8 90 7F 00 2C */ stw r3, 0x2c(r31)
+/* 8029577C 002913DC CB A2 A3 18 */ lfd f29, lbl_80642918-_SDA2_BASE_(r2)
+/* 80295780 002913E0 7F FB FB 78 */ mr r27, r31
+/* 80295784 002913E4 C3 C2 A3 00 */ lfs f30, lbl_80642900-_SDA2_BASE_(r2)
+/* 80295788 002913E8 3B BD A7 00 */ addi r29, r29, lbl_8043A700@l
+/* 8029578C 002913EC C3 E2 A2 E0 */ lfs f31, lbl_806428E0-_SDA2_BASE_(r2)
+/* 80295790 002913F0 3B 20 00 00 */ li r25, 0
+/* 80295794 002913F4 3B 40 00 00 */ li r26, 0
+/* 80295798 002913F8 3F C0 43 30 */ lis r30, 0x4330
+lbl_8029579C:
+/* 8029579C 002913FC 93 9B 00 4C */ stw r28, 0x4c(r27)
+/* 802957A0 00291400 C8 22 A3 08 */ lfd f1, lbl_80642908-_SDA2_BASE_(r2)
+/* 802957A4 00291404 80 1F 00 C0 */ lwz r0, 0xc0(r31)
+/* 802957A8 00291408 93 C1 00 08 */ stw r30, 8(r1)
+/* 802957AC 0029140C 54 00 20 36 */ slwi r0, r0, 4
+/* 802957B0 00291410 7C 1A 02 14 */ add r0, r26, r0
+/* 802957B4 00291414 7C 1D 00 2E */ lwzx r0, r29, r0
+/* 802957B8 00291418 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802957BC 0029141C C8 01 00 08 */ lfd f0, 8(r1)
+/* 802957C0 00291420 90 1B 00 54 */ stw r0, 0x54(r27)
+/* 802957C4 00291424 EC 40 E8 28 */ fsubs f2, f0, f29
+/* 802957C8 00291428 C0 1F 00 C4 */ lfs f0, 0xc4(r31)
+/* 802957CC 0029142C EC 5E 00 B2 */ fmuls f2, f30, f2
+/* 802957D0 00291430 EC 1F 00 32 */ fmuls f0, f31, f0
+/* 802957D4 00291434 EC 42 00 24 */ fdivs f2, f2, f0
+/* 802957D8 00291438 4B F3 EE 0D */ bl pow
+/* 802957DC 0029143C FC 00 08 18 */ frsp f0, f1
+/* 802957E0 00291440 3B 39 00 01 */ addi r25, r25, 1
+/* 802957E4 00291444 28 19 00 02 */ cmplwi r25, 2
+/* 802957E8 00291448 3B 5A 00 04 */ addi r26, r26, 4
+/* 802957EC 0029144C D0 1B 00 64 */ stfs f0, 0x64(r27)
+/* 802957F0 00291450 3B 7B 00 04 */ addi r27, r27, 4
+/* 802957F4 00291454 41 80 FF A8 */ blt lbl_8029579C
+/* 802957F8 00291458 80 1F 00 C0 */ lwz r0, 0xc0(r31)
+/* 802957FC 0029145C 38 80 00 00 */ li r4, 0
+/* 80295800 00291460 3C 60 80 44 */ lis r3, lbl_8043A700@ha
+/* 80295804 00291464 90 9F 00 84 */ stw r4, 0x84(r31)
+/* 80295808 00291468 38 63 A7 00 */ addi r3, r3, lbl_8043A700@l
+/* 8029580C 0029146C 54 00 20 36 */ slwi r0, r0, 4
+/* 80295810 00291470 7C 63 02 14 */ add r3, r3, r0
+/* 80295814 00291474 C0 22 A2 E8 */ lfs f1, lbl_806428E8-_SDA2_BASE_(r2)
+/* 80295818 00291478 80 03 00 08 */ lwz r0, 8(r3)
+/* 8029581C 0029147C C0 1F 00 CC */ lfs f0, 0xcc(r31)
+/* 80295820 00291480 90 1F 00 8C */ stw r0, 0x8c(r31)
+/* 80295824 00291484 EC 21 00 28 */ fsubs f1, f1, f0
+/* 80295828 00291488 C0 02 A3 10 */ lfs f0, lbl_80642910-_SDA2_BASE_(r2)
+/* 8029582C 0029148C 90 9F 00 88 */ stw r4, 0x88(r31)
+/* 80295830 00291490 C0 5F 00 C8 */ lfs f2, 0xc8(r31)
+/* 80295834 00291494 80 03 00 0C */ lwz r0, 0xc(r3)
+/* 80295838 00291498 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8029583C 0029149C 90 1F 00 90 */ stw r0, 0x90(r31)
+/* 80295840 002914A0 D0 5F 00 9C */ stfs f2, 0x9c(r31)
+/* 80295844 002914A4 D0 3F 00 AC */ stfs f1, 0xac(r31)
+/* 80295848 002914A8 40 81 00 08 */ ble lbl_80295850
+/* 8029584C 002914AC D0 1F 00 AC */ stfs f0, 0xac(r31)
+lbl_80295850:
+/* 80295850 002914B0 C0 02 A2 E4 */ lfs f0, lbl_806428E4-_SDA2_BASE_(r2)
+/* 80295854 002914B4 38 60 00 01 */ li r3, 1
+/* 80295858 002914B8 D0 1F 00 A0 */ stfs f0, 0xa0(r31)
+/* 8029585C 002914BC D0 1F 00 A4 */ stfs f0, 0xa4(r31)
+/* 80295860 002914C0 D0 1F 00 A8 */ stfs f0, 0xa8(r31)
+lbl_80295864:
+/* 80295864 002914C4 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
+/* 80295868 002914C8 CB E1 00 50 */ lfd f31, 0x50(r1)
+/* 8029586C 002914CC E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
+/* 80295870 002914D0 CB C1 00 40 */ lfd f30, 0x40(r1)
+/* 80295874 002914D4 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0
+/* 80295878 002914D8 39 61 00 30 */ addi r11, r1, 0x30
+/* 8029587C 002914DC CB A1 00 30 */ lfd f29, 0x30(r1)
+/* 80295880 002914E0 4B F3 18 ED */ bl _restgpr_25
+/* 80295884 002914E4 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 80295888 002914E8 7C 08 03 A6 */ mtlr r0
+/* 8029588C 002914EC 38 21 00 60 */ addi r1, r1, 0x60
+/* 80295890 002914F0 4E 80 00 20 */ blr
diff --git a/asm/SDK/AXFX/AXFXSrcCoef.s b/asm/SDK/AXFX/AXFXSrcCoef.s
new file mode 100644
index 0000000..cc3debe
--- /dev/null
+++ b/asm/SDK/AXFX/AXFXSrcCoef.s
@@ -0,0 +1,11 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __AXFXGetSrcCoef
+__AXFXGetSrcCoef:
+/* 80296480 002920E0 3C 80 80 44 */ lis r4, lbl_8043A970@ha
+/* 80296484 002920E4 54 60 20 36 */ slwi r0, r3, 4
+/* 80296488 002920E8 38 84 A9 70 */ addi r4, r4, lbl_8043A970@l
+/* 8029648C 002920EC 7C 64 02 14 */ add r3, r4, r0
+/* 80296490 002920F0 4E 80 00 20 */ blr
diff --git a/asm/SDK/GX/GXDraw.s b/asm/SDK/GX/GXDraw.s
index e09b11d..81f57fb 100644
--- a/asm/SDK/GX/GXDraw.s
+++ b/asm/SDK/GX/GXDraw.s
@@ -2,6 +2,995 @@
.section .text, "ax" # 0x80006980 - 0x803E1E60
+.global Subdivide
+Subdivide:
+/* 80284950 002805B0 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 80284954 002805B4 7C 08 02 A6 */ mflr r0
+/* 80284958 002805B8 2C 03 00 00 */ cmpwi r3, 0
+/* 8028495C 002805BC 90 01 00 44 */ stw r0, 0x44(r1)
+/* 80284960 002805C0 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 80284964 002805C4 7C 7F 1B 78 */ mr r31, r3
+/* 80284968 002805C8 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 8028496C 002805CC 7C DE 33 78 */ mr r30, r6
+/* 80284970 002805D0 93 A1 00 34 */ stw r29, 0x34(r1)
+/* 80284974 002805D4 7C BD 2B 78 */ mr r29, r5
+/* 80284978 002805D8 93 81 00 30 */ stw r28, 0x30(r1)
+/* 8028497C 002805DC 7C 9C 23 78 */ mr r28, r4
+/* 80284980 002805E0 40 82 00 AC */ bne lbl_80284A2C
+/* 80284984 002805E4 38 60 00 90 */ li r3, 0x90
+/* 80284988 002805E8 38 80 00 03 */ li r4, 3
+/* 8028498C 002805EC 38 A0 00 03 */ li r5, 3
+/* 80284990 002805F0 4B FF C7 B9 */ bl GXBegin
+/* 80284994 002805F4 C0 5C 00 08 */ lfs f2, 8(r28)
+/* 80284998 002805F8 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 8028499C 002805FC C0 3C 00 04 */ lfs f1, 4(r28)
+/* 802849A0 00280600 C0 1C 00 00 */ lfs f0, 0(r28)
+/* 802849A4 00280604 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
+/* 802849A8 00280608 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802849AC 0028060C D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 802849B0 00280610 C0 5C 00 08 */ lfs f2, 8(r28)
+/* 802849B4 00280614 C0 3C 00 04 */ lfs f1, 4(r28)
+/* 802849B8 00280618 C0 1C 00 00 */ lfs f0, 0(r28)
+/* 802849BC 0028061C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802849C0 00280620 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802849C4 00280624 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 802849C8 00280628 C0 5D 00 08 */ lfs f2, 8(r29)
+/* 802849CC 0028062C C0 3D 00 04 */ lfs f1, 4(r29)
+/* 802849D0 00280630 C0 1D 00 00 */ lfs f0, 0(r29)
+/* 802849D4 00280634 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802849D8 00280638 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802849DC 0028063C D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 802849E0 00280640 C0 5D 00 08 */ lfs f2, 8(r29)
+/* 802849E4 00280644 C0 3D 00 04 */ lfs f1, 4(r29)
+/* 802849E8 00280648 C0 1D 00 00 */ lfs f0, 0(r29)
+/* 802849EC 0028064C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802849F0 00280650 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802849F4 00280654 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 802849F8 00280658 C0 5E 00 08 */ lfs f2, 8(r30)
+/* 802849FC 0028065C C0 3E 00 04 */ lfs f1, 4(r30)
+/* 80284A00 00280660 C0 1E 00 00 */ lfs f0, 0(r30)
+/* 80284A04 00280664 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284A08 00280668 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80284A0C 0028066C D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80284A10 00280670 C0 5E 00 08 */ lfs f2, 8(r30)
+/* 80284A14 00280674 C0 3E 00 04 */ lfs f1, 4(r30)
+/* 80284A18 00280678 C0 1E 00 00 */ lfs f0, 0(r30)
+/* 80284A1C 0028067C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284A20 00280680 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80284A24 00280684 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80284A28 00280688 48 00 01 C0 */ b lbl_80284BE8
+lbl_80284A2C:
+/* 80284A2C 0028068C C0 24 00 00 */ lfs f1, 0(r4)
+/* 80284A30 00280690 C0 05 00 00 */ lfs f0, 0(r5)
+/* 80284A34 00280694 EC 01 00 2A */ fadds f0, f1, f0
+/* 80284A38 00280698 D0 01 00 20 */ stfs f0, 0x20(r1)
+/* 80284A3C 0028069C EC 20 00 32 */ fmuls f1, f0, f0
+/* 80284A40 002806A0 C0 45 00 00 */ lfs f2, 0(r5)
+/* 80284A44 002806A4 C0 06 00 00 */ lfs f0, 0(r6)
+/* 80284A48 002806A8 EC 02 00 2A */ fadds f0, f2, f0
+/* 80284A4C 002806AC D0 01 00 14 */ stfs f0, 0x14(r1)
+/* 80284A50 002806B0 C0 46 00 00 */ lfs f2, 0(r6)
+/* 80284A54 002806B4 C0 04 00 00 */ lfs f0, 0(r4)
+/* 80284A58 002806B8 EC 02 00 2A */ fadds f0, f2, f0
+/* 80284A5C 002806BC D0 01 00 08 */ stfs f0, 8(r1)
+/* 80284A60 002806C0 C0 44 00 04 */ lfs f2, 4(r4)
+/* 80284A64 002806C4 C0 05 00 04 */ lfs f0, 4(r5)
+/* 80284A68 002806C8 EC 02 00 2A */ fadds f0, f2, f0
+/* 80284A6C 002806CC D0 01 00 24 */ stfs f0, 0x24(r1)
+/* 80284A70 002806D0 EC 00 00 32 */ fmuls f0, f0, f0
+/* 80284A74 002806D4 C0 65 00 04 */ lfs f3, 4(r5)
+/* 80284A78 002806D8 C0 46 00 04 */ lfs f2, 4(r6)
+/* 80284A7C 002806DC EC 01 00 2A */ fadds f0, f1, f0
+/* 80284A80 002806E0 EC 23 10 2A */ fadds f1, f3, f2
+/* 80284A84 002806E4 D0 21 00 18 */ stfs f1, 0x18(r1)
+/* 80284A88 002806E8 C0 46 00 04 */ lfs f2, 4(r6)
+/* 80284A8C 002806EC C0 24 00 04 */ lfs f1, 4(r4)
+/* 80284A90 002806F0 EC 22 08 2A */ fadds f1, f2, f1
+/* 80284A94 002806F4 D0 21 00 0C */ stfs f1, 0xc(r1)
+/* 80284A98 002806F8 C0 44 00 08 */ lfs f2, 8(r4)
+/* 80284A9C 002806FC C0 25 00 08 */ lfs f1, 8(r5)
+/* 80284AA0 00280700 EC 22 08 2A */ fadds f1, f2, f1
+/* 80284AA4 00280704 D0 21 00 28 */ stfs f1, 0x28(r1)
+/* 80284AA8 00280708 EC 21 00 72 */ fmuls f1, f1, f1
+/* 80284AAC 0028070C C0 65 00 08 */ lfs f3, 8(r5)
+/* 80284AB0 00280710 C0 46 00 08 */ lfs f2, 8(r6)
+/* 80284AB4 00280714 EC 21 00 2A */ fadds f1, f1, f0
+/* 80284AB8 00280718 EC 03 10 2A */ fadds f0, f3, f2
+/* 80284ABC 0028071C D0 01 00 1C */ stfs f0, 0x1c(r1)
+/* 80284AC0 00280720 C0 46 00 08 */ lfs f2, 8(r6)
+/* 80284AC4 00280724 C0 04 00 08 */ lfs f0, 8(r4)
+/* 80284AC8 00280728 EC 02 00 2A */ fadds f0, f2, f0
+/* 80284ACC 0028072C D0 01 00 10 */ stfs f0, 0x10(r1)
+/* 80284AD0 00280730 4B F4 FD 65 */ bl sqrt
+/* 80284AD4 00280734 FC C0 08 18 */ frsp f6, f1
+/* 80284AD8 00280738 C0 01 00 20 */ lfs f0, 0x20(r1)
+/* 80284ADC 0028073C C0 81 00 24 */ lfs f4, 0x24(r1)
+/* 80284AE0 00280740 C0 61 00 28 */ lfs f3, 0x28(r1)
+/* 80284AE4 00280744 EC A0 30 24 */ fdivs f5, f0, f6
+/* 80284AE8 00280748 C0 21 00 14 */ lfs f1, 0x14(r1)
+/* 80284AEC 0028074C C0 01 00 18 */ lfs f0, 0x18(r1)
+/* 80284AF0 00280750 C0 41 00 1C */ lfs f2, 0x1c(r1)
+/* 80284AF4 00280754 EC 84 30 24 */ fdivs f4, f4, f6
+/* 80284AF8 00280758 D0 A1 00 20 */ stfs f5, 0x20(r1)
+/* 80284AFC 0028075C EC 63 30 24 */ fdivs f3, f3, f6
+/* 80284B00 00280760 D0 81 00 24 */ stfs f4, 0x24(r1)
+/* 80284B04 00280764 EC 21 00 72 */ fmuls f1, f1, f1
+/* 80284B08 00280768 D0 61 00 28 */ stfs f3, 0x28(r1)
+/* 80284B0C 0028076C EC 00 00 32 */ fmuls f0, f0, f0
+/* 80284B10 00280770 EC 42 00 B2 */ fmuls f2, f2, f2
+/* 80284B14 00280774 EC 01 00 2A */ fadds f0, f1, f0
+/* 80284B18 00280778 EC 22 00 2A */ fadds f1, f2, f0
+/* 80284B1C 0028077C 4B F4 FD 19 */ bl sqrt
+/* 80284B20 00280780 FC C0 08 18 */ frsp f6, f1
+/* 80284B24 00280784 C0 01 00 14 */ lfs f0, 0x14(r1)
+/* 80284B28 00280788 C0 81 00 18 */ lfs f4, 0x18(r1)
+/* 80284B2C 0028078C C0 61 00 1C */ lfs f3, 0x1c(r1)
+/* 80284B30 00280790 EC A0 30 24 */ fdivs f5, f0, f6
+/* 80284B34 00280794 C0 21 00 08 */ lfs f1, 8(r1)
+/* 80284B38 00280798 C0 01 00 0C */ lfs f0, 0xc(r1)
+/* 80284B3C 0028079C C0 41 00 10 */ lfs f2, 0x10(r1)
+/* 80284B40 002807A0 EC 84 30 24 */ fdivs f4, f4, f6
+/* 80284B44 002807A4 D0 A1 00 14 */ stfs f5, 0x14(r1)
+/* 80284B48 002807A8 EC 63 30 24 */ fdivs f3, f3, f6
+/* 80284B4C 002807AC D0 81 00 18 */ stfs f4, 0x18(r1)
+/* 80284B50 002807B0 EC 21 00 72 */ fmuls f1, f1, f1
+/* 80284B54 002807B4 D0 61 00 1C */ stfs f3, 0x1c(r1)
+/* 80284B58 002807B8 EC 00 00 32 */ fmuls f0, f0, f0
+/* 80284B5C 002807BC EC 42 00 B2 */ fmuls f2, f2, f2
+/* 80284B60 002807C0 EC 01 00 2A */ fadds f0, f1, f0
+/* 80284B64 002807C4 EC 22 00 2A */ fadds f1, f2, f0
+/* 80284B68 002807C8 4B F4 FC CD */ bl sqrt
+/* 80284B6C 002807CC FC 60 08 18 */ frsp f3, f1
+/* 80284B70 002807D0 C0 41 00 08 */ lfs f2, 8(r1)
+/* 80284B74 002807D4 C0 21 00 0C */ lfs f1, 0xc(r1)
+/* 80284B78 002807D8 3B FF FF FF */ addi r31, r31, -1
+/* 80284B7C 002807DC C0 01 00 10 */ lfs f0, 0x10(r1)
+/* 80284B80 002807E0 7F 84 E3 78 */ mr r4, r28
+/* 80284B84 002807E4 EC 42 18 24 */ fdivs f2, f2, f3
+/* 80284B88 002807E8 57 E3 06 3E */ clrlwi r3, r31, 0x18
+/* 80284B8C 002807EC 38 A1 00 20 */ addi r5, r1, 0x20
+/* 80284B90 002807F0 38 C1 00 08 */ addi r6, r1, 8
+/* 80284B94 002807F4 EC 21 18 24 */ fdivs f1, f1, f3
+/* 80284B98 002807F8 D0 41 00 08 */ stfs f2, 8(r1)
+/* 80284B9C 002807FC EC 00 18 24 */ fdivs f0, f0, f3
+/* 80284BA0 00280800 D0 21 00 0C */ stfs f1, 0xc(r1)
+/* 80284BA4 00280804 D0 01 00 10 */ stfs f0, 0x10(r1)
+/* 80284BA8 00280808 4B FF FD A9 */ bl Subdivide
+/* 80284BAC 0028080C 7F A4 EB 78 */ mr r4, r29
+/* 80284BB0 00280810 57 E3 06 3E */ clrlwi r3, r31, 0x18
+/* 80284BB4 00280814 38 A1 00 14 */ addi r5, r1, 0x14
+/* 80284BB8 00280818 38 C1 00 20 */ addi r6, r1, 0x20
+/* 80284BBC 0028081C 4B FF FD 95 */ bl Subdivide
+/* 80284BC0 00280820 7F C4 F3 78 */ mr r4, r30
+/* 80284BC4 00280824 57 E3 06 3E */ clrlwi r3, r31, 0x18
+/* 80284BC8 00280828 38 A1 00 08 */ addi r5, r1, 8
+/* 80284BCC 0028082C 38 C1 00 14 */ addi r6, r1, 0x14
+/* 80284BD0 00280830 4B FF FD 81 */ bl Subdivide
+/* 80284BD4 00280834 57 E3 06 3E */ clrlwi r3, r31, 0x18
+/* 80284BD8 00280838 38 81 00 20 */ addi r4, r1, 0x20
+/* 80284BDC 0028083C 38 A1 00 14 */ addi r5, r1, 0x14
+/* 80284BE0 00280840 38 C1 00 08 */ addi r6, r1, 8
+/* 80284BE4 00280844 4B FF FD 6D */ bl Subdivide
+lbl_80284BE8:
+/* 80284BE8 00280848 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 80284BEC 0028084C 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 80284BF0 00280850 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 80284BF4 00280854 83 A1 00 34 */ lwz r29, 0x34(r1)
+/* 80284BF8 00280858 83 81 00 30 */ lwz r28, 0x30(r1)
+/* 80284BFC 0028085C 7C 08 03 A6 */ mtlr r0
+/* 80284C00 00280860 38 21 00 40 */ addi r1, r1, 0x40
+/* 80284C04 00280864 4E 80 00 20 */ blr
+
+.global GXDrawCylinder
+GXDrawCylinder:
+/* 80284C08 00280868 94 21 FC 40 */ stwu r1, -0x3c0(r1)
+/* 80284C0C 0028086C 7C 08 02 A6 */ mflr r0
+/* 80284C10 00280870 90 01 03 C4 */ stw r0, 0x3c4(r1)
+/* 80284C14 00280874 DB E1 03 B0 */ stfd f31, 0x3b0(r1)
+/* 80284C18 00280878 F3 E1 03 B8 */ psq_st f31, 952(r1), 0, qr0
+/* 80284C1C 0028087C DB C1 03 A0 */ stfd f30, 0x3a0(r1)
+/* 80284C20 00280880 F3 C1 03 A8 */ psq_st f30, 936(r1), 0, qr0
+/* 80284C24 00280884 DB A1 03 90 */ stfd f29, 0x390(r1)
+/* 80284C28 00280888 F3 A1 03 98 */ psq_st f29, 920(r1), 0, qr0
+/* 80284C2C 0028088C DB 81 03 80 */ stfd f28, 0x380(r1)
+/* 80284C30 00280890 F3 81 03 88 */ psq_st f28, 904(r1), 0, qr0
+/* 80284C34 00280894 DB 61 03 70 */ stfd f27, 0x370(r1)
+/* 80284C38 00280898 F3 61 03 78 */ psq_st f27, 888(r1), 0, qr0
+/* 80284C3C 0028089C DB 41 03 60 */ stfd f26, 0x360(r1)
+/* 80284C40 002808A0 F3 41 03 68 */ psq_st f26, 872(r1), 0, qr0
+/* 80284C44 002808A4 DB 21 03 50 */ stfd f25, 0x350(r1)
+/* 80284C48 002808A8 F3 21 03 58 */ psq_st f25, 856(r1), 0, qr0
+/* 80284C4C 002808AC 39 61 03 50 */ addi r11, r1, 0x350
+/* 80284C50 002808B0 4B F4 24 D9 */ bl _savegpr_27
+/* 80284C54 002808B4 C3 E2 A1 D0 */ lfs f31, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80284C58 002808B8 3C 80 80 51 */ lis r4, lbl_80515FF8@ha
+/* 80284C5C 002808BC 7C 7E 1B 78 */ mr r30, r3
+/* 80284C60 002808C0 FF C0 F8 50 */ fneg f30, f31
+/* 80284C64 002808C4 38 64 5F F8 */ addi r3, r4, lbl_80515FF8@l
+/* 80284C68 002808C8 4B FF AF 8D */ bl GXGetVtxDescv
+/* 80284C6C 002808CC 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80284C70 002808D0 38 60 00 03 */ li r3, 3
+/* 80284C74 002808D4 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80284C78 002808D8 4B FF B6 91 */ bl GXGetVtxAttrFmtv
+/* 80284C7C 002808DC 4B FF B0 09 */ bl GXClearVtxDesc
+/* 80284C80 002808E0 38 60 00 09 */ li r3, 9
+/* 80284C84 002808E4 38 80 00 01 */ li r4, 1
+/* 80284C88 002808E8 4B FF A7 6D */ bl GXSetVtxDesc
+/* 80284C8C 002808EC 38 60 00 0A */ li r3, 0xa
+/* 80284C90 002808F0 38 80 00 01 */ li r4, 1
+/* 80284C94 002808F4 4B FF A7 61 */ bl GXSetVtxDesc
+/* 80284C98 002808F8 38 60 00 03 */ li r3, 3
+/* 80284C9C 002808FC 38 80 00 09 */ li r4, 9
+/* 80284CA0 00280900 38 A0 00 01 */ li r5, 1
+/* 80284CA4 00280904 38 C0 00 04 */ li r6, 4
+/* 80284CA8 00280908 38 E0 00 00 */ li r7, 0
+/* 80284CAC 0028090C 4B FF B0 0D */ bl GXSetVtxAttrFmt
+/* 80284CB0 00280910 38 60 00 03 */ li r3, 3
+/* 80284CB4 00280914 38 80 00 0A */ li r4, 0xa
+/* 80284CB8 00280918 38 A0 00 00 */ li r5, 0
+/* 80284CBC 0028091C 38 C0 00 04 */ li r6, 4
+/* 80284CC0 00280920 38 E0 00 00 */ li r7, 0
+/* 80284CC4 00280924 4B FF AF F5 */ bl GXSetVtxAttrFmt
+/* 80284CC8 00280928 CB 42 A1 E8 */ lfd f26, lbl_806427E8-_SDA2_BASE_(r2)
+/* 80284CCC 0028092C 3B A1 01 98 */ addi r29, r1, 0x198
+/* 80284CD0 00280930 C3 62 A1 D8 */ lfs f27, lbl_806427D8-_SDA2_BASE_(r2)
+/* 80284CD4 00280934 3B 81 00 08 */ addi r28, r1, 8
+/* 80284CD8 00280938 C3 82 A1 D4 */ lfs f28, lbl_806427D4-_SDA2_BASE_(r2)
+/* 80284CDC 0028093C 3B 60 00 00 */ li r27, 0
+/* 80284CE0 00280940 CB A2 A1 F0 */ lfd f29, lbl_806427F0-_SDA2_BASE_(r2)
+/* 80284CE4 00280944 3F E0 43 30 */ lis r31, 0x4330
+/* 80284CE8 00280948 48 00 00 60 */ b lbl_80284D48
+lbl_80284CEC:
+/* 80284CEC 0028094C 6F 60 80 00 */ xoris r0, r27, 0x8000
+/* 80284CF0 00280950 93 E1 03 28 */ stw r31, 0x328(r1)
+/* 80284CF4 00280954 90 01 03 2C */ stw r0, 0x32c(r1)
+/* 80284CF8 00280958 C8 01 03 28 */ lfd f0, 0x328(r1)
+/* 80284CFC 0028095C 93 C1 03 34 */ stw r30, 0x334(r1)
+/* 80284D00 00280960 EC 00 D0 28 */ fsubs f0, f0, f26
+/* 80284D04 00280964 93 E1 03 30 */ stw r31, 0x330(r1)
+/* 80284D08 00280968 EC 3B 00 32 */ fmuls f1, f27, f0
+/* 80284D0C 0028096C C8 01 03 30 */ lfd f0, 0x330(r1)
+/* 80284D10 00280970 EC 00 E8 28 */ fsubs f0, f0, f29
+/* 80284D14 00280974 EC 3C 00 72 */ fmuls f1, f28, f1
+/* 80284D18 00280978 EF 21 00 24 */ fdivs f25, f1, f0
+/* 80284D1C 0028097C FC 20 C8 90 */ fmr f1, f25
+/* 80284D20 00280980 4B F4 F3 59 */ bl cos
+/* 80284D24 00280984 FC 00 08 18 */ frsp f0, f1
+/* 80284D28 00280988 FC 20 C8 90 */ fmr f1, f25
+/* 80284D2C 0028098C D0 1D 00 00 */ stfs f0, 0(r29)
+/* 80284D30 00280990 4B F4 F7 55 */ bl sin
+/* 80284D34 00280994 FC 00 08 18 */ frsp f0, f1
+/* 80284D38 00280998 3B BD 00 04 */ addi r29, r29, 4
+/* 80284D3C 0028099C 3B 7B 00 01 */ addi r27, r27, 1
+/* 80284D40 002809A0 D0 1C 00 00 */ stfs f0, 0(r28)
+/* 80284D44 002809A4 3B 9C 00 04 */ addi r28, r28, 4
+lbl_80284D48:
+/* 80284D48 002809A8 7C 1B F0 00 */ cmpw r27, r30
+/* 80284D4C 002809AC 40 81 FF A0 */ ble lbl_80284CEC
+/* 80284D50 002809B0 38 1E 00 01 */ addi r0, r30, 1
+/* 80284D54 002809B4 38 60 00 98 */ li r3, 0x98
+/* 80284D58 002809B8 54 05 0C 3C */ rlwinm r5, r0, 1, 0x10, 0x1e
+/* 80284D5C 002809BC 38 80 00 03 */ li r4, 3
+/* 80284D60 002809C0 4B FF C3 E9 */ bl GXBegin
+/* 80284D64 002809C4 2C 1E 00 00 */ cmpwi r30, 0
+/* 80284D68 002809C8 38 A1 00 08 */ addi r5, r1, 8
+/* 80284D6C 002809CC 38 C1 01 98 */ addi r6, r1, 0x198
+/* 80284D70 002809D0 38 7E 00 01 */ addi r3, r30, 1
+/* 80284D74 002809D4 3C 80 CC 01 */ lis r4, 0xcc01
+/* 80284D78 002809D8 41 80 00 F4 */ blt lbl_80284E6C
+/* 80284D7C 002809DC 54 60 F8 7F */ rlwinm. r0, r3, 0x1f, 1, 0x1f
+/* 80284D80 002809E0 7C 09 03 A6 */ mtctr r0
+/* 80284D84 002809E4 41 82 00 98 */ beq lbl_80284E1C
+lbl_80284D88:
+/* 80284D88 002809E8 C0 26 00 00 */ lfs f1, 0(r6)
+/* 80284D8C 002809EC C0 45 00 00 */ lfs f2, 0(r5)
+/* 80284D90 002809F0 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284D94 002809F4 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284D98 002809F8 D3 C4 80 00 */ stfs f30, -0x8000(r4)
+/* 80284D9C 002809FC D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284DA0 00280A00 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284DA4 00280A04 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284DA8 00280A08 D0 04 80 00 */ stfs f0, -0x8000(r4)
+/* 80284DAC 00280A0C D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284DB0 00280A10 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284DB4 00280A14 D3 E4 80 00 */ stfs f31, -0x8000(r4)
+/* 80284DB8 00280A18 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284DBC 00280A1C C0 26 00 04 */ lfs f1, 4(r6)
+/* 80284DC0 00280A20 38 C6 00 08 */ addi r6, r6, 8
+/* 80284DC4 00280A24 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284DC8 00280A28 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284DCC 00280A2C C0 45 00 04 */ lfs f2, 4(r5)
+/* 80284DD0 00280A30 38 A5 00 08 */ addi r5, r5, 8
+/* 80284DD4 00280A34 D0 04 80 00 */ stfs f0, -0x8000(r4)
+/* 80284DD8 00280A38 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284DDC 00280A3C D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284DE0 00280A40 D3 C4 80 00 */ stfs f30, -0x8000(r4)
+/* 80284DE4 00280A44 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284DE8 00280A48 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284DEC 00280A4C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284DF0 00280A50 D0 04 80 00 */ stfs f0, -0x8000(r4)
+/* 80284DF4 00280A54 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284DF8 00280A58 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284DFC 00280A5C D3 E4 80 00 */ stfs f31, -0x8000(r4)
+/* 80284E00 00280A60 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284E04 00280A64 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284E08 00280A68 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284E0C 00280A6C D0 04 80 00 */ stfs f0, -0x8000(r4)
+/* 80284E10 00280A70 42 00 FF 78 */ bdnz lbl_80284D88
+/* 80284E14 00280A74 70 63 00 01 */ andi. r3, r3, 1
+/* 80284E18 00280A78 41 82 00 54 */ beq lbl_80284E6C
+lbl_80284E1C:
+/* 80284E1C 00280A7C 7C 69 03 A6 */ mtctr r3
+lbl_80284E20:
+/* 80284E20 00280A80 C0 26 00 00 */ lfs f1, 0(r6)
+/* 80284E24 00280A84 38 C6 00 04 */ addi r6, r6, 4
+/* 80284E28 00280A88 C0 45 00 00 */ lfs f2, 0(r5)
+/* 80284E2C 00280A8C 38 A5 00 04 */ addi r5, r5, 4
+/* 80284E30 00280A90 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284E34 00280A94 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284E38 00280A98 D3 C4 80 00 */ stfs f30, -0x8000(r4)
+/* 80284E3C 00280A9C D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284E40 00280AA0 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284E44 00280AA4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284E48 00280AA8 D0 04 80 00 */ stfs f0, -0x8000(r4)
+/* 80284E4C 00280AAC D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284E50 00280AB0 D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284E54 00280AB4 D3 E4 80 00 */ stfs f31, -0x8000(r4)
+/* 80284E58 00280AB8 D0 24 80 00 */ stfs f1, -0x8000(r4)
+/* 80284E5C 00280ABC D0 44 80 00 */ stfs f2, -0x8000(r4)
+/* 80284E60 00280AC0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284E64 00280AC4 D0 04 80 00 */ stfs f0, -0x8000(r4)
+/* 80284E68 00280AC8 42 00 FF B8 */ bdnz lbl_80284E20
+lbl_80284E6C:
+/* 80284E6C 00280ACC 3B FE 00 02 */ addi r31, r30, 2
+/* 80284E70 00280AD0 38 60 00 A0 */ li r3, 0xa0
+/* 80284E74 00280AD4 57 E5 04 3E */ clrlwi r5, r31, 0x10
+/* 80284E78 00280AD8 38 80 00 03 */ li r4, 3
+/* 80284E7C 00280ADC 4B FF C2 CD */ bl GXBegin
+/* 80284E80 00280AE0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284E84 00280AE4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80284E88 00280AE8 2C 9E 00 00 */ cmpwi cr1, r30, 0
+/* 80284E8C 00280AEC 39 00 00 00 */ li r8, 0
+/* 80284E90 00280AF0 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
+/* 80284E94 00280AF4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284E98 00280AF8 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284E9C 00280AFC D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80284EA0 00280B00 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284EA4 00280B04 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284EA8 00280B08 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284EAC 00280B0C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284EB0 00280B10 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80284EB4 00280B14 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284EB8 00280B18 41 84 02 80 */ blt cr1, lbl_80285138
+/* 80284EBC 00280B1C 38 FE 00 01 */ addi r7, r30, 1
+/* 80284EC0 00280B20 38 9E FF F8 */ addi r4, r30, -8
+/* 80284EC4 00280B24 2C 07 00 08 */ cmpwi r7, 8
+/* 80284EC8 00280B28 40 81 02 08 */ ble lbl_802850D0
+/* 80284ECC 00280B2C 38 A0 00 00 */ li r5, 0
+/* 80284ED0 00280B30 38 C0 00 00 */ li r6, 0
+/* 80284ED4 00280B34 41 84 00 18 */ blt cr1, lbl_80284EEC
+/* 80284ED8 00280B38 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 80284EDC 00280B3C 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 80284EE0 00280B40 7C 1E 00 00 */ cmpw r30, r0
+/* 80284EE4 00280B44 41 81 00 08 */ bgt lbl_80284EEC
+/* 80284EE8 00280B48 38 C0 00 01 */ li r6, 1
+lbl_80284EEC:
+/* 80284EEC 00280B4C 2C 06 00 00 */ cmpwi r6, 0
+/* 80284EF0 00280B50 41 82 00 28 */ beq lbl_80284F18
+/* 80284EF4 00280B54 57 C0 00 01 */ rlwinm. r0, r30, 0, 0, 0
+/* 80284EF8 00280B58 38 60 00 01 */ li r3, 1
+/* 80284EFC 00280B5C 40 82 00 10 */ bne lbl_80284F0C
+/* 80284F00 00280B60 54 E0 00 01 */ rlwinm. r0, r7, 0, 0, 0
+/* 80284F04 00280B64 41 82 00 08 */ beq lbl_80284F0C
+/* 80284F08 00280B68 38 60 00 00 */ li r3, 0
+lbl_80284F0C:
+/* 80284F0C 00280B6C 2C 03 00 00 */ cmpwi r3, 0
+/* 80284F10 00280B70 41 82 00 08 */ beq lbl_80284F18
+/* 80284F14 00280B74 38 A0 00 01 */ li r5, 1
+lbl_80284F18:
+/* 80284F18 00280B78 2C 05 00 00 */ cmpwi r5, 0
+/* 80284F1C 00280B7C 41 82 01 B4 */ beq lbl_802850D0
+/* 80284F20 00280B80 38 04 00 08 */ addi r0, r4, 8
+/* 80284F24 00280B84 38 A1 00 08 */ addi r5, r1, 8
+/* 80284F28 00280B88 54 00 E8 FE */ srwi r0, r0, 3
+/* 80284F2C 00280B8C 38 C1 01 98 */ addi r6, r1, 0x198
+/* 80284F30 00280B90 3C 60 CC 01 */ lis r3, 0xcc01
+/* 80284F34 00280B94 7C 09 03 A6 */ mtctr r0
+/* 80284F38 00280B98 2C 04 00 00 */ cmpwi r4, 0
+/* 80284F3C 00280B9C 41 80 01 94 */ blt lbl_802850D0
+lbl_80284F40:
+/* 80284F40 00280BA0 C0 05 00 00 */ lfs f0, 0(r5)
+/* 80284F44 00280BA4 C0 26 00 00 */ lfs f1, 0(r6)
+/* 80284F48 00280BA8 FC 40 00 50 */ fneg f2, f0
+/* 80284F4C 00280BAC C0 05 00 04 */ lfs f0, 4(r5)
+/* 80284F50 00280BB0 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80284F54 00280BB4 C0 25 00 08 */ lfs f1, 8(r5)
+/* 80284F58 00280BB8 FC C0 00 50 */ fneg f6, f0
+/* 80284F5C 00280BBC D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80284F60 00280BC0 C0 05 00 0C */ lfs f0, 0xc(r5)
+/* 80284F64 00280BC4 FC A0 08 50 */ fneg f5, f1
+/* 80284F68 00280BC8 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80284F6C 00280BCC C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284F70 00280BD0 FC 80 00 50 */ fneg f4, f0
+/* 80284F74 00280BD4 C0 05 00 10 */ lfs f0, 0x10(r5)
+/* 80284F78 00280BD8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80284F7C 00280BDC C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284F80 00280BE0 FC 60 00 50 */ fneg f3, f0
+/* 80284F84 00280BE4 C0 05 00 14 */ lfs f0, 0x14(r5)
+/* 80284F88 00280BE8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80284F8C 00280BEC C0 22 A1 D0 */ lfs f1, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80284F90 00280BF0 FC 40 00 50 */ fneg f2, f0
+/* 80284F94 00280BF4 C0 06 00 04 */ lfs f0, 4(r6)
+/* 80284F98 00280BF8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80284F9C 00280BFC C1 06 00 08 */ lfs f8, 8(r6)
+/* 80284FA0 00280C00 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FA4 00280C04 C0 E6 00 0C */ lfs f7, 0xc(r6)
+/* 80284FA8 00280C08 D0 C3 80 00 */ stfs f6, -0x8000(r3)
+/* 80284FAC 00280C0C C0 C6 00 10 */ lfs f6, 0x10(r6)
+/* 80284FB0 00280C10 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80284FB4 00280C14 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284FB8 00280C18 C0 26 00 14 */ lfs f1, 0x14(r6)
+/* 80284FBC 00280C1C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FC0 00280C20 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284FC4 00280C24 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FC8 00280C28 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80284FCC 00280C2C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FD0 00280C30 D1 03 80 00 */ stfs f8, -0x8000(r3)
+/* 80284FD4 00280C34 D0 A3 80 00 */ stfs f5, -0x8000(r3)
+/* 80284FD8 00280C38 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80284FDC 00280C3C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284FE0 00280C40 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FE4 00280C44 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80284FE8 00280C48 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FEC 00280C4C C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80284FF0 00280C50 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80284FF4 00280C54 D0 E3 80 00 */ stfs f7, -0x8000(r3)
+/* 80284FF8 00280C58 D0 83 80 00 */ stfs f4, -0x8000(r3)
+/* 80284FFC 00280C5C D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80285000 00280C60 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285004 00280C64 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285008 00280C68 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 8028500C 00280C6C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285010 00280C70 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285014 00280C74 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285018 00280C78 D0 C3 80 00 */ stfs f6, -0x8000(r3)
+/* 8028501C 00280C7C D0 63 80 00 */ stfs f3, -0x8000(r3)
+/* 80285020 00280C80 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80285024 00280C84 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285028 00280C88 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028502C 00280C8C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285030 00280C90 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285034 00280C94 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285038 00280C98 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028503C 00280C9C D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80285040 00280CA0 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80285044 00280CA4 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80285048 00280CA8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 8028504C 00280CAC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285050 00280CB0 C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285054 00280CB4 39 08 00 08 */ addi r8, r8, 8
+/* 80285058 00280CB8 C0 05 00 18 */ lfs f0, 0x18(r5)
+/* 8028505C 00280CBC D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80285060 00280CC0 C0 22 A1 D0 */ lfs f1, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285064 00280CC4 FC 40 00 50 */ fneg f2, f0
+/* 80285068 00280CC8 C0 66 00 18 */ lfs f3, 0x18(r6)
+/* 8028506C 00280CCC D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80285070 00280CD0 C0 05 00 1C */ lfs f0, 0x1c(r5)
+/* 80285074 00280CD4 38 A5 00 20 */ addi r5, r5, 0x20
+/* 80285078 00280CD8 D0 63 80 00 */ stfs f3, -0x8000(r3)
+/* 8028507C 00280CDC C0 66 00 1C */ lfs f3, 0x1c(r6)
+/* 80285080 00280CE0 FC 20 00 50 */ fneg f1, f0
+/* 80285084 00280CE4 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80285088 00280CE8 38 C6 00 20 */ addi r6, r6, 0x20
+/* 8028508C 00280CEC D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 80285090 00280CF0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285094 00280CF4 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285098 00280CF8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 8028509C 00280CFC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802850A0 00280D00 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 802850A4 00280D04 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802850A8 00280D08 D0 63 80 00 */ stfs f3, -0x8000(r3)
+/* 802850AC 00280D0C D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802850B0 00280D10 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 802850B4 00280D14 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802850B8 00280D18 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802850BC 00280D1C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802850C0 00280D20 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802850C4 00280D24 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 802850C8 00280D28 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802850CC 00280D2C 42 00 FE 74 */ bdnz lbl_80284F40
+lbl_802850D0:
+/* 802850D0 00280D30 38 1E 00 01 */ addi r0, r30, 1
+/* 802850D4 00280D34 55 06 10 3A */ slwi r6, r8, 2
+/* 802850D8 00280D38 38 81 00 08 */ addi r4, r1, 8
+/* 802850DC 00280D3C 38 A1 01 98 */ addi r5, r1, 0x198
+/* 802850E0 00280D40 7C 08 00 50 */ subf r0, r8, r0
+/* 802850E4 00280D44 3C 60 CC 01 */ lis r3, 0xcc01
+/* 802850E8 00280D48 7C 84 32 14 */ add r4, r4, r6
+/* 802850EC 00280D4C 7C A5 32 14 */ add r5, r5, r6
+/* 802850F0 00280D50 7C 09 03 A6 */ mtctr r0
+/* 802850F4 00280D54 7C 08 F0 00 */ cmpw r8, r30
+/* 802850F8 00280D58 41 81 00 40 */ bgt lbl_80285138
+lbl_802850FC:
+/* 802850FC 00280D5C C0 04 00 00 */ lfs f0, 0(r4)
+/* 80285100 00280D60 38 84 00 04 */ addi r4, r4, 4
+/* 80285104 00280D64 C0 25 00 00 */ lfs f1, 0(r5)
+/* 80285108 00280D68 38 A5 00 04 */ addi r5, r5, 4
+/* 8028510C 00280D6C FC 00 00 50 */ fneg f0, f0
+/* 80285110 00280D70 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80285114 00280D74 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285118 00280D78 D3 E3 80 00 */ stfs f31, -0x8000(r3)
+/* 8028511C 00280D7C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285120 00280D80 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285124 00280D84 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285128 00280D88 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028512C 00280D8C C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285130 00280D90 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285134 00280D94 42 00 FF C8 */ bdnz lbl_802850FC
+lbl_80285138:
+/* 80285138 00280D98 57 E5 04 3E */ clrlwi r5, r31, 0x10
+/* 8028513C 00280D9C 38 60 00 A0 */ li r3, 0xa0
+/* 80285140 00280DA0 38 80 00 03 */ li r4, 3
+/* 80285144 00280DA4 4B FF C0 05 */ bl GXBegin
+/* 80285148 00280DA8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 8028514C 00280DAC 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80285150 00280DB0 2C 9E 00 00 */ cmpwi cr1, r30, 0
+/* 80285154 00280DB4 39 00 00 00 */ li r8, 0
+/* 80285158 00280DB8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
+/* 8028515C 00280DBC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285160 00280DC0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285164 00280DC4 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 80285168 00280DC8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 8028516C 00280DCC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285170 00280DD0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285174 00280DD4 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285178 00280DD8 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 8028517C 00280DDC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285180 00280DE0 41 84 02 5C */ blt cr1, lbl_802853DC
+/* 80285184 00280DE4 38 FE 00 01 */ addi r7, r30, 1
+/* 80285188 00280DE8 38 9E FF F8 */ addi r4, r30, -8
+/* 8028518C 00280DEC 2C 07 00 08 */ cmpwi r7, 8
+/* 80285190 00280DF0 40 81 01 E8 */ ble lbl_80285378
+/* 80285194 00280DF4 38 A0 00 00 */ li r5, 0
+/* 80285198 00280DF8 38 C0 00 00 */ li r6, 0
+/* 8028519C 00280DFC 41 84 00 18 */ blt cr1, lbl_802851B4
+/* 802851A0 00280E00 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 802851A4 00280E04 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 802851A8 00280E08 7C 1E 00 00 */ cmpw r30, r0
+/* 802851AC 00280E0C 41 81 00 08 */ bgt lbl_802851B4
+/* 802851B0 00280E10 38 C0 00 01 */ li r6, 1
+lbl_802851B4:
+/* 802851B4 00280E14 2C 06 00 00 */ cmpwi r6, 0
+/* 802851B8 00280E18 41 82 00 28 */ beq lbl_802851E0
+/* 802851BC 00280E1C 57 C0 00 01 */ rlwinm. r0, r30, 0, 0, 0
+/* 802851C0 00280E20 38 60 00 01 */ li r3, 1
+/* 802851C4 00280E24 40 82 00 10 */ bne lbl_802851D4
+/* 802851C8 00280E28 54 E0 00 01 */ rlwinm. r0, r7, 0, 0, 0
+/* 802851CC 00280E2C 41 82 00 08 */ beq lbl_802851D4
+/* 802851D0 00280E30 38 60 00 00 */ li r3, 0
+lbl_802851D4:
+/* 802851D4 00280E34 2C 03 00 00 */ cmpwi r3, 0
+/* 802851D8 00280E38 41 82 00 08 */ beq lbl_802851E0
+/* 802851DC 00280E3C 38 A0 00 01 */ li r5, 1
+lbl_802851E0:
+/* 802851E0 00280E40 2C 05 00 00 */ cmpwi r5, 0
+/* 802851E4 00280E44 41 82 01 94 */ beq lbl_80285378
+/* 802851E8 00280E48 38 04 00 08 */ addi r0, r4, 8
+/* 802851EC 00280E4C 38 A1 00 08 */ addi r5, r1, 8
+/* 802851F0 00280E50 54 00 E8 FE */ srwi r0, r0, 3
+/* 802851F4 00280E54 38 C1 01 98 */ addi r6, r1, 0x198
+/* 802851F8 00280E58 3C 60 CC 01 */ lis r3, 0xcc01
+/* 802851FC 00280E5C 7C 09 03 A6 */ mtctr r0
+/* 80285200 00280E60 2C 04 00 00 */ cmpwi r4, 0
+/* 80285204 00280E64 41 80 01 74 */ blt lbl_80285378
+lbl_80285208:
+/* 80285208 00280E68 C0 06 00 00 */ lfs f0, 0(r6)
+/* 8028520C 00280E6C C0 25 00 00 */ lfs f1, 0(r5)
+/* 80285210 00280E70 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285214 00280E74 C0 46 00 04 */ lfs f2, 4(r6)
+/* 80285218 00280E78 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8028521C 00280E7C C0 25 00 04 */ lfs f1, 4(r5)
+/* 80285220 00280E80 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 80285224 00280E84 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285228 00280E88 C1 06 00 08 */ lfs f8, 8(r6)
+/* 8028522C 00280E8C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285230 00280E90 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285234 00280E94 C0 85 00 08 */ lfs f4, 8(r5)
+/* 80285238 00280E98 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028523C 00280E9C C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285240 00280EA0 C0 E6 00 0C */ lfs f7, 0xc(r6)
+/* 80285244 00280EA4 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285248 00280EA8 C0 65 00 0C */ lfs f3, 0xc(r5)
+/* 8028524C 00280EAC D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80285250 00280EB0 C0 C6 00 10 */ lfs f6, 0x10(r6)
+/* 80285254 00280EB4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80285258 00280EB8 C0 45 00 10 */ lfs f2, 0x10(r5)
+/* 8028525C 00280EBC D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 80285260 00280EC0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285264 00280EC4 C0 A6 00 14 */ lfs f5, 0x14(r6)
+/* 80285268 00280EC8 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028526C 00280ECC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285270 00280ED0 C0 25 00 14 */ lfs f1, 0x14(r5)
+/* 80285274 00280ED4 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285278 00280ED8 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 8028527C 00280EDC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285280 00280EE0 D1 03 80 00 */ stfs f8, -0x8000(r3)
+/* 80285284 00280EE4 D0 83 80 00 */ stfs f4, -0x8000(r3)
+/* 80285288 00280EE8 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 8028528C 00280EEC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285290 00280EF0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285294 00280EF4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285298 00280EF8 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028529C 00280EFC C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 802852A0 00280F00 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852A4 00280F04 D0 E3 80 00 */ stfs f7, -0x8000(r3)
+/* 802852A8 00280F08 D0 63 80 00 */ stfs f3, -0x8000(r3)
+/* 802852AC 00280F0C D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 802852B0 00280F10 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802852B4 00280F14 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852B8 00280F18 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802852BC 00280F1C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852C0 00280F20 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 802852C4 00280F24 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852C8 00280F28 D0 C3 80 00 */ stfs f6, -0x8000(r3)
+/* 802852CC 00280F2C D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 802852D0 00280F30 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 802852D4 00280F34 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802852D8 00280F38 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852DC 00280F3C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802852E0 00280F40 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852E4 00280F44 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 802852E8 00280F48 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802852EC 00280F4C D0 A3 80 00 */ stfs f5, -0x8000(r3)
+/* 802852F0 00280F50 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802852F4 00280F54 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 802852F8 00280F58 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802852FC 00280F5C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285300 00280F60 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285304 00280F64 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285308 00280F68 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 8028530C 00280F6C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285310 00280F70 C0 06 00 18 */ lfs f0, 0x18(r6)
+/* 80285314 00280F74 39 08 00 08 */ addi r8, r8, 8
+/* 80285318 00280F78 C0 46 00 1C */ lfs f2, 0x1c(r6)
+/* 8028531C 00280F7C 38 C6 00 20 */ addi r6, r6, 0x20
+/* 80285320 00280F80 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285324 00280F84 C0 05 00 18 */ lfs f0, 0x18(r5)
+/* 80285328 00280F88 C0 25 00 1C */ lfs f1, 0x1c(r5)
+/* 8028532C 00280F8C 38 A5 00 20 */ addi r5, r5, 0x20
+/* 80285330 00280F90 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285334 00280F94 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 80285338 00280F98 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 8028533C 00280F9C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285340 00280FA0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285344 00280FA4 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285348 00280FA8 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 8028534C 00280FAC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285350 00280FB0 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 80285354 00280FB4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 80285358 00280FB8 D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 8028535C 00280FBC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285360 00280FC0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285364 00280FC4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285368 00280FC8 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8028536C 00280FCC C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285370 00280FD0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 80285374 00280FD4 42 00 FE 94 */ bdnz lbl_80285208
+lbl_80285378:
+/* 80285378 00280FD8 38 1E 00 01 */ addi r0, r30, 1
+/* 8028537C 00280FDC 55 06 10 3A */ slwi r6, r8, 2
+/* 80285380 00280FE0 38 81 00 08 */ addi r4, r1, 8
+/* 80285384 00280FE4 38 A1 01 98 */ addi r5, r1, 0x198
+/* 80285388 00280FE8 7C 08 00 50 */ subf r0, r8, r0
+/* 8028538C 00280FEC 3C 60 CC 01 */ lis r3, 0xcc01
+/* 80285390 00280FF0 7C 84 32 14 */ add r4, r4, r6
+/* 80285394 00280FF4 7C A5 32 14 */ add r5, r5, r6
+/* 80285398 00280FF8 7C 09 03 A6 */ mtctr r0
+/* 8028539C 00280FFC 7C 08 F0 00 */ cmpw r8, r30
+/* 802853A0 00281000 41 81 00 3C */ bgt lbl_802853DC
+lbl_802853A4:
+/* 802853A4 00281004 C0 25 00 00 */ lfs f1, 0(r5)
+/* 802853A8 00281008 38 A5 00 04 */ addi r5, r5, 4
+/* 802853AC 0028100C C0 04 00 00 */ lfs f0, 0(r4)
+/* 802853B0 00281010 38 84 00 04 */ addi r4, r4, 4
+/* 802853B4 00281014 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 802853B8 00281018 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802853BC 0028101C D3 C3 80 00 */ stfs f30, -0x8000(r3)
+/* 802853C0 00281020 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802853C4 00281024 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802853C8 00281028 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
+/* 802853CC 0028102C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802853D0 00281030 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 802853D4 00281034 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 802853D8 00281038 42 00 FF CC */ bdnz lbl_802853A4
+lbl_802853DC:
+/* 802853DC 0028103C 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 802853E0 00281040 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 802853E4 00281044 4B FF A2 75 */ bl GXSetVtxDescv
+/* 802853E8 00281048 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 802853EC 0028104C 38 60 00 03 */ li r3, 3
+/* 802853F0 00281050 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 802853F4 00281054 4B FF AA 65 */ bl GXSetVtxAttrFmtv
+/* 802853F8 00281058 E3 E1 03 B8 */ psq_l f31, 952(r1), 0, qr0
+/* 802853FC 0028105C CB E1 03 B0 */ lfd f31, 0x3b0(r1)
+/* 80285400 00281060 E3 C1 03 A8 */ psq_l f30, 936(r1), 0, qr0
+/* 80285404 00281064 CB C1 03 A0 */ lfd f30, 0x3a0(r1)
+/* 80285408 00281068 E3 A1 03 98 */ psq_l f29, 920(r1), 0, qr0
+/* 8028540C 0028106C CB A1 03 90 */ lfd f29, 0x390(r1)
+/* 80285410 00281070 E3 81 03 88 */ psq_l f28, 904(r1), 0, qr0
+/* 80285414 00281074 CB 81 03 80 */ lfd f28, 0x380(r1)
+/* 80285418 00281078 E3 61 03 78 */ psq_l f27, 888(r1), 0, qr0
+/* 8028541C 0028107C CB 61 03 70 */ lfd f27, 0x370(r1)
+/* 80285420 00281080 E3 41 03 68 */ psq_l f26, 872(r1), 0, qr0
+/* 80285424 00281084 CB 41 03 60 */ lfd f26, 0x360(r1)
+/* 80285428 00281088 E3 21 03 58 */ psq_l f25, 856(r1), 0, qr0
+/* 8028542C 0028108C 39 61 03 50 */ addi r11, r1, 0x350
+/* 80285430 00281090 CB 21 03 50 */ lfd f25, 0x350(r1)
+/* 80285434 00281094 4B F4 1D 41 */ bl _restgpr_27
+/* 80285438 00281098 80 01 03 C4 */ lwz r0, 0x3c4(r1)
+/* 8028543C 0028109C 7C 08 03 A6 */ mtlr r0
+/* 80285440 002810A0 38 21 03 C0 */ addi r1, r1, 0x3c0
+/* 80285444 002810A4 4E 80 00 20 */ blr
+
+.global GXDrawTorus
+GXDrawTorus:
+/* 80285448 002810A8 94 21 FF 20 */ stwu r1, -0xe0(r1)
+/* 8028544C 002810AC 7C 08 02 A6 */ mflr r0
+/* 80285450 002810B0 90 01 00 E4 */ stw r0, 0xe4(r1)
+/* 80285454 002810B4 DB E1 00 D0 */ stfd f31, 0xd0(r1)
+/* 80285458 002810B8 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0
+/* 8028545C 002810BC DB C1 00 C0 */ stfd f30, 0xc0(r1)
+/* 80285460 002810C0 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0
+/* 80285464 002810C4 DB A1 00 B0 */ stfd f29, 0xb0(r1)
+/* 80285468 002810C8 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0
+/* 8028546C 002810CC DB 81 00 A0 */ stfd f28, 0xa0(r1)
+/* 80285470 002810D0 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0
+/* 80285474 002810D4 DB 61 00 90 */ stfd f27, 0x90(r1)
+/* 80285478 002810D8 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0
+/* 8028547C 002810DC DB 41 00 80 */ stfd f26, 0x80(r1)
+/* 80285480 002810E0 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0
+/* 80285484 002810E4 DB 21 00 70 */ stfd f25, 0x70(r1)
+/* 80285488 002810E8 F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0
+/* 8028548C 002810EC DB 01 00 60 */ stfd f24, 0x60(r1)
+/* 80285490 002810F0 F3 01 00 68 */ psq_st f24, 104(r1), 0, qr0
+/* 80285494 002810F4 DA E1 00 50 */ stfd f23, 0x50(r1)
+/* 80285498 002810F8 F2 E1 00 58 */ psq_st f23, 88(r1), 0, qr0
+/* 8028549C 002810FC 39 61 00 50 */ addi r11, r1, 0x50
+/* 802854A0 00281100 4B F4 1C 75 */ bl _savegpr_22
+/* 802854A4 00281104 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 802854A8 00281108 3C 00 43 30 */ lis r0, 0x4330
+/* 802854AC 0028110C 7C 7B 1B 78 */ mr r27, r3
+/* 802854B0 00281110 7C 9C 23 78 */ mr r28, r4
+/* 802854B4 00281114 FF 00 08 90 */ fmr f24, f1
+/* 802854B8 00281118 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802854BC 0028111C EF 20 08 28 */ fsubs f25, f0, f1
+/* 802854C0 00281120 C3 42 A1 F8 */ lfs f26, lbl_806427F8-_SDA2_BASE_(r2)
+/* 802854C4 00281124 90 01 00 18 */ stw r0, 0x18(r1)
+/* 802854C8 00281128 38 81 00 08 */ addi r4, r1, 8
+/* 802854CC 0028112C 38 60 00 0D */ li r3, 0xd
+/* 802854D0 00281130 4B FF A5 71 */ bl GXGetVtxDesc
+/* 802854D4 00281134 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 802854D8 00281138 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 802854DC 0028113C 4B FF A7 19 */ bl GXGetVtxDescv
+/* 802854E0 00281140 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 802854E4 00281144 38 60 00 03 */ li r3, 3
+/* 802854E8 00281148 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 802854EC 0028114C 4B FF AE 1D */ bl GXGetVtxAttrFmtv
+/* 802854F0 00281150 4B FF A7 95 */ bl GXClearVtxDesc
+/* 802854F4 00281154 38 60 00 09 */ li r3, 9
+/* 802854F8 00281158 38 80 00 01 */ li r4, 1
+/* 802854FC 0028115C 4B FF 9E F9 */ bl GXSetVtxDesc
+/* 80285500 00281160 38 60 00 0A */ li r3, 0xa
+/* 80285504 00281164 38 80 00 01 */ li r4, 1
+/* 80285508 00281168 4B FF 9E ED */ bl GXSetVtxDesc
+/* 8028550C 0028116C 38 60 00 03 */ li r3, 3
+/* 80285510 00281170 38 80 00 09 */ li r4, 9
+/* 80285514 00281174 38 A0 00 01 */ li r5, 1
+/* 80285518 00281178 38 C0 00 04 */ li r6, 4
+/* 8028551C 0028117C 38 E0 00 00 */ li r7, 0
+/* 80285520 00281180 4B FF A7 99 */ bl GXSetVtxAttrFmt
+/* 80285524 00281184 38 60 00 03 */ li r3, 3
+/* 80285528 00281188 38 80 00 0A */ li r4, 0xa
+/* 8028552C 0028118C 38 A0 00 00 */ li r5, 0
+/* 80285530 00281190 38 C0 00 04 */ li r6, 4
+/* 80285534 00281194 38 E0 00 00 */ li r7, 0
+/* 80285538 00281198 4B FF A7 81 */ bl GXSetVtxAttrFmt
+/* 8028553C 0028119C 80 01 00 08 */ lwz r0, 8(r1)
+/* 80285540 002811A0 2C 00 00 00 */ cmpwi r0, 0
+/* 80285544 002811A4 41 82 00 28 */ beq lbl_8028556C
+/* 80285548 002811A8 38 60 00 0D */ li r3, 0xd
+/* 8028554C 002811AC 38 80 00 01 */ li r4, 1
+/* 80285550 002811B0 4B FF 9E A5 */ bl GXSetVtxDesc
+/* 80285554 002811B4 38 60 00 03 */ li r3, 3
+/* 80285558 002811B8 38 80 00 0D */ li r4, 0xd
+/* 8028555C 002811BC 38 A0 00 01 */ li r5, 1
+/* 80285560 002811C0 38 C0 00 04 */ li r6, 4
+/* 80285564 002811C4 38 E0 00 00 */ li r7, 0
+/* 80285568 002811C8 4B FF A7 51 */ bl GXSetVtxAttrFmt
+lbl_8028556C:
+/* 8028556C 002811CC 38 1C 00 01 */ addi r0, r28, 1
+/* 80285570 002811D0 CB C2 A1 E8 */ lfd f30, lbl_806427E8-_SDA2_BASE_(r2)
+/* 80285574 002811D4 CB E2 A1 F0 */ lfd f31, lbl_806427F0-_SDA2_BASE_(r2)
+/* 80285578 002811D8 54 18 08 3C */ slwi r24, r0, 1
+/* 8028557C 002811DC 3B E0 00 00 */ li r31, 0
+/* 80285580 002811E0 3F 40 CC 01 */ lis r26, 0xcc01
+/* 80285584 002811E4 48 00 02 24 */ b lbl_802857A8
+lbl_80285588:
+/* 80285588 002811E8 57 05 04 3E */ clrlwi r5, r24, 0x10
+/* 8028558C 002811EC 38 60 00 98 */ li r3, 0x98
+/* 80285590 002811F0 38 80 00 03 */ li r4, 3
+/* 80285594 002811F4 4B FF BB B5 */ bl GXBegin
+/* 80285598 002811F8 82 E1 00 08 */ lwz r23, 8(r1)
+/* 8028559C 002811FC 3B C0 00 00 */ li r30, 0
+/* 802855A0 00281200 48 00 01 FC */ b lbl_8028579C
+lbl_802855A4:
+/* 802855A4 00281204 7C 1E E3 D6 */ divw r0, r30, r28
+/* 802855A8 00281208 3B A0 00 01 */ li r29, 1
+/* 802855AC 0028120C 7C 00 E1 D6 */ mullw r0, r0, r28
+/* 802855B0 00281210 7C 00 F0 50 */ subf r0, r0, r30
+/* 802855B4 00281214 6C 19 80 00 */ xoris r25, r0, 0x8000
+lbl_802855B8:
+/* 802855B8 00281218 7E DF EA 14 */ add r22, r31, r29
+/* 802855BC 0028121C 93 21 00 1C */ stw r25, 0x1c(r1)
+/* 802855C0 00281220 7C 16 DB D6 */ divw r0, r22, r27
+/* 802855C4 00281224 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 802855C8 00281228 EF 60 F0 28 */ fsubs f27, f0, f30
+/* 802855CC 0028122C EC 3B 06 B2 */ fmuls f1, f27, f26
+/* 802855D0 00281230 7C 00 D9 D6 */ mullw r0, r0, r27
+/* 802855D4 00281234 7C 00 B0 50 */ subf r0, r0, r22
+/* 802855D8 00281238 6C 00 80 00 */ xoris r0, r0, 0x8000
+/* 802855DC 0028123C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802855E0 00281240 C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 802855E4 00281244 93 81 00 14 */ stw r28, 0x14(r1)
+/* 802855E8 00281248 EF 80 F0 28 */ fsubs f28, f0, f30
+/* 802855EC 0028124C C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 802855F0 00281250 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 802855F4 00281254 EC 21 00 24 */ fdivs f1, f1, f0
+/* 802855F8 00281258 4B F4 EA 81 */ bl cos
+/* 802855FC 0028125C 93 61 00 1C */ stw r27, 0x1c(r1)
+/* 80285600 00281260 EC 5C 06 B2 */ fmuls f2, f28, f26
+/* 80285604 00281264 FF A0 08 18 */ frsp f29, f1
+/* 80285608 00281268 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 8028560C 0028126C EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285610 00281270 EC 22 00 24 */ fdivs f1, f2, f0
+/* 80285614 00281274 4B F4 EA 65 */ bl cos
+/* 80285618 00281278 93 81 00 14 */ stw r28, 0x14(r1)
+/* 8028561C 0028127C FC 40 08 18 */ frsp f2, f1
+/* 80285620 00281280 EC 3B 06 B2 */ fmuls f1, f27, f26
+/* 80285624 00281284 C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 80285628 00281288 EC 58 00 B2 */ fmuls f2, f24, f2
+/* 8028562C 0028128C EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285630 00281290 EC 59 10 28 */ fsubs f2, f25, f2
+/* 80285634 00281294 EC 21 00 24 */ fdivs f1, f1, f0
+/* 80285638 00281298 EF A2 07 72 */ fmuls f29, f2, f29
+/* 8028563C 0028129C 4B F4 EE 49 */ bl sin
+/* 80285640 002812A0 93 61 00 1C */ stw r27, 0x1c(r1)
+/* 80285644 002812A4 EC 5C 06 B2 */ fmuls f2, f28, f26
+/* 80285648 002812A8 FE E0 08 18 */ frsp f23, f1
+/* 8028564C 002812AC C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 80285650 002812B0 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285654 002812B4 EC 22 00 24 */ fdivs f1, f2, f0
+/* 80285658 002812B8 4B F4 EA 21 */ bl cos
+/* 8028565C 002812BC 93 61 00 14 */ stw r27, 0x14(r1)
+/* 80285660 002812C0 FC 40 08 18 */ frsp f2, f1
+/* 80285664 002812C4 EC 3C 06 B2 */ fmuls f1, f28, f26
+/* 80285668 002812C8 C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 8028566C 002812CC EC 58 00 B2 */ fmuls f2, f24, f2
+/* 80285670 002812D0 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285674 002812D4 EC 59 10 28 */ fsubs f2, f25, f2
+/* 80285678 002812D8 EC 21 00 24 */ fdivs f1, f1, f0
+/* 8028567C 002812DC EE E2 05 F2 */ fmuls f23, f2, f23
+/* 80285680 002812E0 4B F4 EE 05 */ bl sin
+/* 80285684 002812E4 93 61 00 1C */ stw r27, 0x1c(r1)
+/* 80285688 002812E8 FC 40 08 18 */ frsp f2, f1
+/* 8028568C 002812EC EC 3C 06 B2 */ fmuls f1, f28, f26
+/* 80285690 002812F0 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 80285694 002812F4 D3 BA 80 00 */ stfs f29, -0x8000(r26)
+/* 80285698 002812F8 EC 58 00 B2 */ fmuls f2, f24, f2
+/* 8028569C 002812FC EC 00 F8 28 */ fsubs f0, f0, f31
+/* 802856A0 00281300 D2 FA 80 00 */ stfs f23, -0x8000(r26)
+/* 802856A4 00281304 EC 21 00 24 */ fdivs f1, f1, f0
+/* 802856A8 00281308 D0 5A 80 00 */ stfs f2, -0x8000(r26)
+/* 802856AC 0028130C 4B F4 E9 CD */ bl cos
+/* 802856B0 00281310 93 81 00 14 */ stw r28, 0x14(r1)
+/* 802856B4 00281314 EC 5B 06 B2 */ fmuls f2, f27, f26
+/* 802856B8 00281318 FE E0 08 18 */ frsp f23, f1
+/* 802856BC 0028131C C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 802856C0 00281320 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 802856C4 00281324 EC 22 00 24 */ fdivs f1, f2, f0
+/* 802856C8 00281328 4B F4 E9 B1 */ bl cos
+/* 802856CC 0028132C 93 61 00 1C */ stw r27, 0x1c(r1)
+/* 802856D0 00281330 FC 40 08 18 */ frsp f2, f1
+/* 802856D4 00281334 EC 3C 06 B2 */ fmuls f1, f28, f26
+/* 802856D8 00281338 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 802856DC 0028133C FC 40 10 50 */ fneg f2, f2
+/* 802856E0 00281340 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 802856E4 00281344 EF A2 05 F2 */ fmuls f29, f2, f23
+/* 802856E8 00281348 EC 21 00 24 */ fdivs f1, f1, f0
+/* 802856EC 0028134C 4B F4 E9 8D */ bl cos
+/* 802856F0 00281350 93 81 00 14 */ stw r28, 0x14(r1)
+/* 802856F4 00281354 EC 5B 06 B2 */ fmuls f2, f27, f26
+/* 802856F8 00281358 FE E0 08 18 */ frsp f23, f1
+/* 802856FC 0028135C C8 01 00 10 */ lfd f0, 0x10(r1)
+/* 80285700 00281360 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285704 00281364 EC 22 00 24 */ fdivs f1, f2, f0
+/* 80285708 00281368 4B F4 ED 7D */ bl sin
+/* 8028570C 0028136C 93 61 00 1C */ stw r27, 0x1c(r1)
+/* 80285710 00281370 FC 40 08 18 */ frsp f2, f1
+/* 80285714 00281374 EC 3C 06 B2 */ fmuls f1, f28, f26
+/* 80285718 00281378 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 8028571C 0028137C FC 40 10 50 */ fneg f2, f2
+/* 80285720 00281380 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285724 00281384 EE E2 05 F2 */ fmuls f23, f2, f23
+/* 80285728 00281388 EC 21 00 24 */ fdivs f1, f1, f0
+/* 8028572C 0028138C 4B F4 ED 59 */ bl sin
+/* 80285730 00281390 D3 BA 80 00 */ stfs f29, -0x8000(r26)
+/* 80285734 00281394 FC 00 08 18 */ frsp f0, f1
+/* 80285738 00281398 2C 17 00 00 */ cmpwi r23, 0
+/* 8028573C 0028139C D2 FA 80 00 */ stfs f23, -0x8000(r26)
+/* 80285740 002813A0 D0 1A 80 00 */ stfs f0, -0x8000(r26)
+/* 80285744 002813A4 41 82 00 4C */ beq lbl_80285790
+/* 80285748 002813A8 6E C3 80 00 */ xoris r3, r22, 0x8000
+/* 8028574C 002813AC 93 61 00 1C */ stw r27, 0x1c(r1)
+/* 80285750 002813B0 6F C0 80 00 */ xoris r0, r30, 0x8000
+/* 80285754 002813B4 90 61 00 14 */ stw r3, 0x14(r1)
+/* 80285758 002813B8 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 8028575C 002813BC C8 21 00 10 */ lfd f1, 0x10(r1)
+/* 80285760 002813C0 93 81 00 1C */ stw r28, 0x1c(r1)
+/* 80285764 002813C4 EC 40 F8 28 */ fsubs f2, f0, f31
+/* 80285768 002813C8 EC 61 F0 28 */ fsubs f3, f1, f30
+/* 8028576C 002813CC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80285770 002813D0 C8 01 00 18 */ lfd f0, 0x18(r1)
+/* 80285774 002813D4 C8 21 00 10 */ lfd f1, 0x10(r1)
+/* 80285778 002813D8 EC 43 10 24 */ fdivs f2, f3, f2
+/* 8028577C 002813DC EC 21 F0 28 */ fsubs f1, f1, f30
+/* 80285780 002813E0 D0 5A 80 00 */ stfs f2, -0x8000(r26)
+/* 80285784 002813E4 EC 00 F8 28 */ fsubs f0, f0, f31
+/* 80285788 002813E8 EC 01 00 24 */ fdivs f0, f1, f0
+/* 8028578C 002813EC D0 1A 80 00 */ stfs f0, -0x8000(r26)
+lbl_80285790:
+/* 80285790 002813F0 37 BD FF FF */ addic. r29, r29, -1
+/* 80285794 002813F4 40 80 FE 24 */ bge lbl_802855B8
+/* 80285798 002813F8 3B DE 00 01 */ addi r30, r30, 1
+lbl_8028579C:
+/* 8028579C 002813FC 7C 1E E0 00 */ cmpw r30, r28
+/* 802857A0 00281400 40 81 FE 04 */ ble lbl_802855A4
+/* 802857A4 00281404 3B FF 00 01 */ addi r31, r31, 1
+lbl_802857A8:
+/* 802857A8 00281408 7C 1F D8 00 */ cmpw r31, r27
+/* 802857AC 0028140C 41 80 FD DC */ blt lbl_80285588
+/* 802857B0 00281410 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 802857B4 00281414 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 802857B8 00281418 4B FF 9E A1 */ bl GXSetVtxDescv
+/* 802857BC 0028141C 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 802857C0 00281420 38 60 00 03 */ li r3, 3
+/* 802857C4 00281424 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 802857C8 00281428 4B FF A6 91 */ bl GXSetVtxAttrFmtv
+/* 802857CC 0028142C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0
+/* 802857D0 00281430 CB E1 00 D0 */ lfd f31, 0xd0(r1)
+/* 802857D4 00281434 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0
+/* 802857D8 00281438 CB C1 00 C0 */ lfd f30, 0xc0(r1)
+/* 802857DC 0028143C E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0
+/* 802857E0 00281440 CB A1 00 B0 */ lfd f29, 0xb0(r1)
+/* 802857E4 00281444 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0
+/* 802857E8 00281448 CB 81 00 A0 */ lfd f28, 0xa0(r1)
+/* 802857EC 0028144C E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0
+/* 802857F0 00281450 CB 61 00 90 */ lfd f27, 0x90(r1)
+/* 802857F4 00281454 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0
+/* 802857F8 00281458 CB 41 00 80 */ lfd f26, 0x80(r1)
+/* 802857FC 0028145C E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0
+/* 80285800 00281460 CB 21 00 70 */ lfd f25, 0x70(r1)
+/* 80285804 00281464 E3 01 00 68 */ psq_l f24, 104(r1), 0, qr0
+/* 80285808 00281468 CB 01 00 60 */ lfd f24, 0x60(r1)
+/* 8028580C 0028146C E2 E1 00 58 */ psq_l f23, 88(r1), 0, qr0
+/* 80285810 00281470 39 61 00 50 */ addi r11, r1, 0x50
+/* 80285814 00281474 CA E1 00 50 */ lfd f23, 0x50(r1)
+/* 80285818 00281478 4B F4 19 49 */ bl _restgpr_22
+/* 8028581C 0028147C 80 01 00 E4 */ lwz r0, 0xe4(r1)
+/* 80285820 00281480 7C 08 03 A6 */ mtlr r0
+/* 80285824 00281484 38 21 00 E0 */ addi r1, r1, 0xe0
+/* 80285828 00281488 4E 80 00 20 */ blr
+
.global GXDrawSphere
GXDrawSphere:
/* 8028582C 0028148C 94 21 FE F0 */ stwu r1, -0x110(r1)
@@ -255,3 +1244,690 @@ lbl_80285B58:
/* 80285BF0 00281850 7C 08 03 A6 */ mtlr r0
/* 80285BF4 00281854 38 21 01 10 */ addi r1, r1, 0x110
/* 80285BF8 00281858 4E 80 00 20 */ blr
+
+.global GXDrawCubeFace
+GXDrawCubeFace:
+/* 80285BFC 0028185C ED 61 20 2A */ fadds f11, f1, f4
+/* 80285C00 00281860 C1 82 A1 FC */ lfs f12, lbl_806427FC-_SDA2_BASE_(r2)
+/* 80285C04 00281864 ED 42 28 2A */ fadds f10, f2, f5
+/* 80285C08 00281868 C0 01 00 08 */ lfs f0, 8(r1)
+/* 80285C0C 0028186C ED 23 30 2A */ fadds f9, f3, f6
+/* 80285C10 00281870 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285C14 00281874 ED 67 58 2A */ fadds f11, f7, f11
+/* 80285C18 00281878 2C 03 00 00 */ cmpwi r3, 0
+/* 80285C1C 0028187C ED 48 50 2A */ fadds f10, f8, f10
+/* 80285C20 00281880 ED 20 48 2A */ fadds f9, f0, f9
+/* 80285C24 00281884 ED 6C 02 F2 */ fmuls f11, f12, f11
+/* 80285C28 00281888 ED 4C 02 B2 */ fmuls f10, f12, f10
+/* 80285C2C 0028188C ED 2C 02 72 */ fmuls f9, f12, f9
+/* 80285C30 00281890 D1 65 80 00 */ stfs f11, 0xCC008000@l(r5)
+/* 80285C34 00281894 D1 45 80 00 */ stfs f10, -0x8000(r5)
+/* 80285C38 00281898 D1 25 80 00 */ stfs f9, -0x8000(r5)
+/* 80285C3C 0028189C D0 25 80 00 */ stfs f1, -0x8000(r5)
+/* 80285C40 002818A0 D0 45 80 00 */ stfs f2, -0x8000(r5)
+/* 80285C44 002818A4 D0 65 80 00 */ stfs f3, -0x8000(r5)
+/* 80285C48 002818A8 41 82 00 1C */ beq lbl_80285C64
+/* 80285C4C 002818AC D0 85 80 00 */ stfs f4, -0x8000(r5)
+/* 80285C50 002818B0 D0 A5 80 00 */ stfs f5, -0x8000(r5)
+/* 80285C54 002818B4 D0 C5 80 00 */ stfs f6, -0x8000(r5)
+/* 80285C58 002818B8 D0 E5 80 00 */ stfs f7, -0x8000(r5)
+/* 80285C5C 002818BC D1 05 80 00 */ stfs f8, -0x8000(r5)
+/* 80285C60 002818C0 D0 05 80 00 */ stfs f0, -0x8000(r5)
+lbl_80285C64:
+/* 80285C64 002818C4 2C 04 00 00 */ cmpwi r4, 0
+/* 80285C68 002818C8 41 82 00 14 */ beq lbl_80285C7C
+/* 80285C6C 002818CC 38 00 00 01 */ li r0, 1
+/* 80285C70 002818D0 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285C74 002818D4 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
+/* 80285C78 002818D8 98 05 80 00 */ stb r0, -0x8000(r5)
+lbl_80285C7C:
+/* 80285C7C 002818DC ED 61 20 28 */ fsubs f11, f1, f4
+/* 80285C80 002818E0 C1 82 A1 FC */ lfs f12, lbl_806427FC-_SDA2_BASE_(r2)
+/* 80285C84 002818E4 ED 42 28 28 */ fsubs f10, f2, f5
+/* 80285C88 002818E8 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285C8C 002818EC ED 23 30 28 */ fsubs f9, f3, f6
+/* 80285C90 002818F0 2C 03 00 00 */ cmpwi r3, 0
+/* 80285C94 002818F4 ED 67 58 2A */ fadds f11, f7, f11
+/* 80285C98 002818F8 ED 48 50 2A */ fadds f10, f8, f10
+/* 80285C9C 002818FC ED 20 48 2A */ fadds f9, f0, f9
+/* 80285CA0 00281900 ED 6C 02 F2 */ fmuls f11, f12, f11
+/* 80285CA4 00281904 ED 4C 02 B2 */ fmuls f10, f12, f10
+/* 80285CA8 00281908 ED 2C 02 72 */ fmuls f9, f12, f9
+/* 80285CAC 0028190C D1 65 80 00 */ stfs f11, 0xCC008000@l(r5)
+/* 80285CB0 00281910 D1 45 80 00 */ stfs f10, -0x8000(r5)
+/* 80285CB4 00281914 D1 25 80 00 */ stfs f9, -0x8000(r5)
+/* 80285CB8 00281918 D0 25 80 00 */ stfs f1, -0x8000(r5)
+/* 80285CBC 0028191C D0 45 80 00 */ stfs f2, -0x8000(r5)
+/* 80285CC0 00281920 D0 65 80 00 */ stfs f3, -0x8000(r5)
+/* 80285CC4 00281924 41 82 00 1C */ beq lbl_80285CE0
+/* 80285CC8 00281928 D0 85 80 00 */ stfs f4, -0x8000(r5)
+/* 80285CCC 0028192C D0 A5 80 00 */ stfs f5, -0x8000(r5)
+/* 80285CD0 00281930 D0 C5 80 00 */ stfs f6, -0x8000(r5)
+/* 80285CD4 00281934 D0 E5 80 00 */ stfs f7, -0x8000(r5)
+/* 80285CD8 00281938 D1 05 80 00 */ stfs f8, -0x8000(r5)
+/* 80285CDC 0028193C D0 05 80 00 */ stfs f0, -0x8000(r5)
+lbl_80285CE0:
+/* 80285CE0 00281940 2C 04 00 00 */ cmpwi r4, 0
+/* 80285CE4 00281944 41 82 00 18 */ beq lbl_80285CFC
+/* 80285CE8 00281948 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285CEC 0028194C 38 00 00 00 */ li r0, 0
+/* 80285CF0 00281950 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
+/* 80285CF4 00281954 38 00 00 01 */ li r0, 1
+/* 80285CF8 00281958 98 05 80 00 */ stb r0, -0x8000(r5)
+lbl_80285CFC:
+/* 80285CFC 0028195C ED 61 20 28 */ fsubs f11, f1, f4
+/* 80285D00 00281960 C1 82 A1 FC */ lfs f12, lbl_806427FC-_SDA2_BASE_(r2)
+/* 80285D04 00281964 ED 42 28 28 */ fsubs f10, f2, f5
+/* 80285D08 00281968 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285D0C 0028196C ED 23 30 28 */ fsubs f9, f3, f6
+/* 80285D10 00281970 2C 03 00 00 */ cmpwi r3, 0
+/* 80285D14 00281974 ED 6B 38 28 */ fsubs f11, f11, f7
+/* 80285D18 00281978 ED 4A 40 28 */ fsubs f10, f10, f8
+/* 80285D1C 0028197C ED 29 00 28 */ fsubs f9, f9, f0
+/* 80285D20 00281980 ED 6C 02 F2 */ fmuls f11, f12, f11
+/* 80285D24 00281984 ED 4C 02 B2 */ fmuls f10, f12, f10
+/* 80285D28 00281988 ED 2C 02 72 */ fmuls f9, f12, f9
+/* 80285D2C 0028198C D1 65 80 00 */ stfs f11, 0xCC008000@l(r5)
+/* 80285D30 00281990 D1 45 80 00 */ stfs f10, -0x8000(r5)
+/* 80285D34 00281994 D1 25 80 00 */ stfs f9, -0x8000(r5)
+/* 80285D38 00281998 D0 25 80 00 */ stfs f1, -0x8000(r5)
+/* 80285D3C 0028199C D0 45 80 00 */ stfs f2, -0x8000(r5)
+/* 80285D40 002819A0 D0 65 80 00 */ stfs f3, -0x8000(r5)
+/* 80285D44 002819A4 41 82 00 1C */ beq lbl_80285D60
+/* 80285D48 002819A8 D0 85 80 00 */ stfs f4, -0x8000(r5)
+/* 80285D4C 002819AC D0 A5 80 00 */ stfs f5, -0x8000(r5)
+/* 80285D50 002819B0 D0 C5 80 00 */ stfs f6, -0x8000(r5)
+/* 80285D54 002819B4 D0 E5 80 00 */ stfs f7, -0x8000(r5)
+/* 80285D58 002819B8 D1 05 80 00 */ stfs f8, -0x8000(r5)
+/* 80285D5C 002819BC D0 05 80 00 */ stfs f0, -0x8000(r5)
+lbl_80285D60:
+/* 80285D60 002819C0 2C 04 00 00 */ cmpwi r4, 0
+/* 80285D64 002819C4 41 82 00 14 */ beq lbl_80285D78
+/* 80285D68 002819C8 38 00 00 00 */ li r0, 0
+/* 80285D6C 002819CC 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285D70 002819D0 98 05 80 00 */ stb r0, 0xCC008000@l(r5)
+/* 80285D74 002819D4 98 05 80 00 */ stb r0, -0x8000(r5)
+lbl_80285D78:
+/* 80285D78 002819D8 ED 61 20 2A */ fadds f11, f1, f4
+/* 80285D7C 002819DC C1 82 A1 FC */ lfs f12, lbl_806427FC-_SDA2_BASE_(r2)
+/* 80285D80 002819E0 ED 42 28 2A */ fadds f10, f2, f5
+/* 80285D84 002819E4 3C A0 CC 01 */ lis r5, 0xCC008000@ha
+/* 80285D88 002819E8 ED 23 30 2A */ fadds f9, f3, f6
+/* 80285D8C 002819EC 2C 03 00 00 */ cmpwi r3, 0
+/* 80285D90 002819F0 ED 6B 38 28 */ fsubs f11, f11, f7
+/* 80285D94 002819F4 ED 4A 40 28 */ fsubs f10, f10, f8
+/* 80285D98 002819F8 ED 29 00 28 */ fsubs f9, f9, f0
+/* 80285D9C 002819FC ED 6C 02 F2 */ fmuls f11, f12, f11
+/* 80285DA0 00281A00 ED 4C 02 B2 */ fmuls f10, f12, f10
+/* 80285DA4 00281A04 ED 2C 02 72 */ fmuls f9, f12, f9
+/* 80285DA8 00281A08 D1 65 80 00 */ stfs f11, 0xCC008000@l(r5)
+/* 80285DAC 00281A0C D1 45 80 00 */ stfs f10, -0x8000(r5)
+/* 80285DB0 00281A10 D1 25 80 00 */ stfs f9, -0x8000(r5)
+/* 80285DB4 00281A14 D0 25 80 00 */ stfs f1, -0x8000(r5)
+/* 80285DB8 00281A18 D0 45 80 00 */ stfs f2, -0x8000(r5)
+/* 80285DBC 00281A1C D0 65 80 00 */ stfs f3, -0x8000(r5)
+/* 80285DC0 00281A20 41 82 00 1C */ beq lbl_80285DDC
+/* 80285DC4 00281A24 D0 85 80 00 */ stfs f4, -0x8000(r5)
+/* 80285DC8 00281A28 D0 A5 80 00 */ stfs f5, -0x8000(r5)
+/* 80285DCC 00281A2C D0 C5 80 00 */ stfs f6, -0x8000(r5)
+/* 80285DD0 00281A30 D0 E5 80 00 */ stfs f7, -0x8000(r5)
+/* 80285DD4 00281A34 D1 05 80 00 */ stfs f8, -0x8000(r5)
+/* 80285DD8 00281A38 D0 05 80 00 */ stfs f0, -0x8000(r5)
+lbl_80285DDC:
+/* 80285DDC 00281A3C 2C 04 00 00 */ cmpwi r4, 0
+/* 80285DE0 00281A40 4D 82 00 20 */ beqlr
+/* 80285DE4 00281A44 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 80285DE8 00281A48 38 00 00 01 */ li r0, 1
+/* 80285DEC 00281A4C 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
+/* 80285DF0 00281A50 38 00 00 00 */ li r0, 0
+/* 80285DF4 00281A54 98 03 80 00 */ stb r0, -0x8000(r3)
+/* 80285DF8 00281A58 4E 80 00 20 */ blr
+
+.global GXDrawCube
+GXDrawCube:
+/* 80285DFC 00281A5C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80285E00 00281A60 7C 08 02 A6 */ mflr r0
+/* 80285E04 00281A64 38 60 00 19 */ li r3, 0x19
+/* 80285E08 00281A68 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80285E0C 00281A6C 38 81 00 14 */ addi r4, r1, 0x14
+/* 80285E10 00281A70 4B FF 9C 31 */ bl GXGetVtxDesc
+/* 80285E14 00281A74 38 81 00 10 */ addi r4, r1, 0x10
+/* 80285E18 00281A78 38 60 00 0D */ li r3, 0xd
+/* 80285E1C 00281A7C 4B FF 9C 25 */ bl GXGetVtxDesc
+/* 80285E20 00281A80 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 80285E24 00281A84 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 80285E28 00281A88 4B FF 9D CD */ bl GXGetVtxDescv
+/* 80285E2C 00281A8C 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80285E30 00281A90 38 60 00 03 */ li r3, 3
+/* 80285E34 00281A94 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80285E38 00281A98 4B FF A4 D1 */ bl GXGetVtxAttrFmtv
+/* 80285E3C 00281A9C 4B FF 9E 49 */ bl GXClearVtxDesc
+/* 80285E40 00281AA0 38 60 00 09 */ li r3, 9
+/* 80285E44 00281AA4 38 80 00 01 */ li r4, 1
+/* 80285E48 00281AA8 4B FF 95 AD */ bl GXSetVtxDesc
+/* 80285E4C 00281AAC 38 60 00 0A */ li r3, 0xa
+/* 80285E50 00281AB0 38 80 00 01 */ li r4, 1
+/* 80285E54 00281AB4 4B FF 95 A1 */ bl GXSetVtxDesc
+/* 80285E58 00281AB8 38 60 00 03 */ li r3, 3
+/* 80285E5C 00281ABC 38 80 00 09 */ li r4, 9
+/* 80285E60 00281AC0 38 A0 00 01 */ li r5, 1
+/* 80285E64 00281AC4 38 C0 00 04 */ li r6, 4
+/* 80285E68 00281AC8 38 E0 00 00 */ li r7, 0
+/* 80285E6C 00281ACC 4B FF 9E 4D */ bl GXSetVtxAttrFmt
+/* 80285E70 00281AD0 38 60 00 03 */ li r3, 3
+/* 80285E74 00281AD4 38 80 00 0A */ li r4, 0xa
+/* 80285E78 00281AD8 38 A0 00 00 */ li r5, 0
+/* 80285E7C 00281ADC 38 C0 00 04 */ li r6, 4
+/* 80285E80 00281AE0 38 E0 00 00 */ li r7, 0
+/* 80285E84 00281AE4 4B FF 9E 35 */ bl GXSetVtxAttrFmt
+/* 80285E88 00281AE8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80285E8C 00281AEC 2C 00 00 00 */ cmpwi r0, 0
+/* 80285E90 00281AF0 41 82 00 28 */ beq lbl_80285EB8
+/* 80285E94 00281AF4 38 60 00 19 */ li r3, 0x19
+/* 80285E98 00281AF8 38 80 00 01 */ li r4, 1
+/* 80285E9C 00281AFC 4B FF 95 59 */ bl GXSetVtxDesc
+/* 80285EA0 00281B00 38 60 00 03 */ li r3, 3
+/* 80285EA4 00281B04 38 80 00 19 */ li r4, 0x19
+/* 80285EA8 00281B08 38 A0 00 01 */ li r5, 1
+/* 80285EAC 00281B0C 38 C0 00 04 */ li r6, 4
+/* 80285EB0 00281B10 38 E0 00 00 */ li r7, 0
+/* 80285EB4 00281B14 4B FF 9E 05 */ bl GXSetVtxAttrFmt
+lbl_80285EB8:
+/* 80285EB8 00281B18 80 01 00 10 */ lwz r0, 0x10(r1)
+/* 80285EBC 00281B1C 2C 00 00 00 */ cmpwi r0, 0
+/* 80285EC0 00281B20 41 82 00 28 */ beq lbl_80285EE8
+/* 80285EC4 00281B24 38 60 00 0D */ li r3, 0xd
+/* 80285EC8 00281B28 38 80 00 01 */ li r4, 1
+/* 80285ECC 00281B2C 4B FF 95 29 */ bl GXSetVtxDesc
+/* 80285ED0 00281B30 38 60 00 03 */ li r3, 3
+/* 80285ED4 00281B34 38 80 00 0D */ li r4, 0xd
+/* 80285ED8 00281B38 38 A0 00 01 */ li r5, 1
+/* 80285EDC 00281B3C 38 C0 00 01 */ li r6, 1
+/* 80285EE0 00281B40 38 E0 00 00 */ li r7, 0
+/* 80285EE4 00281B44 4B FF 9D D5 */ bl GXSetVtxAttrFmt
+lbl_80285EE8:
+/* 80285EE8 00281B48 38 60 00 80 */ li r3, 0x80
+/* 80285EEC 00281B4C 38 80 00 03 */ li r4, 3
+/* 80285EF0 00281B50 38 A0 00 18 */ li r5, 0x18
+/* 80285EF4 00281B54 4B FF B2 55 */ bl GXBegin
+/* 80285EF8 00281B58 C0 42 A1 DC */ lfs f2, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285EFC 00281B5C C0 22 A1 E0 */ lfs f1, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285F00 00281B60 D0 41 00 08 */ stfs f2, 8(r1)
+/* 80285F04 00281B64 FC 60 10 90 */ fmr f3, f2
+/* 80285F08 00281B68 FC 80 10 90 */ fmr f4, f2
+/* 80285F0C 00281B6C C1 02 A1 D0 */ lfs f8, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285F10 00281B70 FC A0 10 90 */ fmr f5, f2
+/* 80285F14 00281B74 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 80285F18 00281B78 FC C0 08 90 */ fmr f6, f1
+/* 80285F1C 00281B7C FC E0 10 90 */ fmr f7, f2
+/* 80285F20 00281B80 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 80285F24 00281B84 4B FF FC D9 */ bl GXDrawCubeFace
+/* 80285F28 00281B88 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285F2C 00281B8C C0 42 A1 DC */ lfs f2, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285F30 00281B90 D0 01 00 08 */ stfs f0, 8(r1)
+/* 80285F34 00281B94 C0 22 A1 D0 */ lfs f1, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285F38 00281B98 FC 60 10 90 */ fmr f3, f2
+/* 80285F3C 00281B9C FC 80 10 90 */ fmr f4, f2
+/* 80285F40 00281BA0 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 80285F44 00281BA4 FC A0 08 90 */ fmr f5, f1
+/* 80285F48 00281BA8 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 80285F4C 00281BAC FC C0 10 90 */ fmr f6, f2
+/* 80285F50 00281BB0 FC E0 10 90 */ fmr f7, f2
+/* 80285F54 00281BB4 FD 00 10 90 */ fmr f8, f2
+/* 80285F58 00281BB8 4B FF FC A5 */ bl GXDrawCubeFace
+/* 80285F5C 00281BBC C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285F60 00281BC0 C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285F64 00281BC4 D0 01 00 08 */ stfs f0, 8(r1)
+/* 80285F68 00281BC8 C0 42 A1 E0 */ lfs f2, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285F6C 00281BCC FC 60 08 90 */ fmr f3, f1
+/* 80285F70 00281BD0 FC A0 08 90 */ fmr f5, f1
+/* 80285F74 00281BD4 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 80285F78 00281BD8 FC 80 10 90 */ fmr f4, f2
+/* 80285F7C 00281BDC 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 80285F80 00281BE0 FC C0 08 90 */ fmr f6, f1
+/* 80285F84 00281BE4 FC E0 08 90 */ fmr f7, f1
+/* 80285F88 00281BE8 FD 00 08 90 */ fmr f8, f1
+/* 80285F8C 00281BEC 4B FF FC 71 */ bl GXDrawCubeFace
+/* 80285F90 00281BF0 C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285F94 00281BF4 C0 42 A1 D0 */ lfs f2, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285F98 00281BF8 D0 21 00 08 */ stfs f1, 8(r1)
+/* 80285F9C 00281BFC FC 60 08 90 */ fmr f3, f1
+/* 80285FA0 00281C00 FC 80 08 90 */ fmr f4, f1
+/* 80285FA4 00281C04 C0 E2 A1 E0 */ lfs f7, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285FA8 00281C08 FC A0 08 90 */ fmr f5, f1
+/* 80285FAC 00281C0C 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 80285FB0 00281C10 FC C0 10 90 */ fmr f6, f2
+/* 80285FB4 00281C14 FD 00 08 90 */ fmr f8, f1
+/* 80285FB8 00281C18 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 80285FBC 00281C1C 4B FF FC 41 */ bl GXDrawCubeFace
+/* 80285FC0 00281C20 C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285FC4 00281C24 C0 62 A1 E0 */ lfs f3, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80285FC8 00281C28 D0 21 00 08 */ stfs f1, 8(r1)
+/* 80285FCC 00281C2C FC 40 08 90 */ fmr f2, f1
+/* 80285FD0 00281C30 FC 80 08 90 */ fmr f4, f1
+/* 80285FD4 00281C34 C0 E2 A1 D0 */ lfs f7, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285FD8 00281C38 FC A0 18 90 */ fmr f5, f3
+/* 80285FDC 00281C3C 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 80285FE0 00281C40 FC C0 08 90 */ fmr f6, f1
+/* 80285FE4 00281C44 FD 00 08 90 */ fmr f8, f1
+/* 80285FE8 00281C48 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 80285FEC 00281C4C 4B FF FC 11 */ bl GXDrawCubeFace
+/* 80285FF0 00281C50 C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
+/* 80285FF4 00281C54 C0 62 A1 D0 */ lfs f3, lbl_806427D0-_SDA2_BASE_(r2)
+/* 80285FF8 00281C58 D0 21 00 08 */ stfs f1, 8(r1)
+/* 80285FFC 00281C5C FC 40 08 90 */ fmr f2, f1
+/* 80286000 00281C60 FC 80 18 90 */ fmr f4, f3
+/* 80286004 00281C64 C1 02 A1 E0 */ lfs f8, lbl_806427E0-_SDA2_BASE_(r2)
+/* 80286008 00281C68 FC A0 08 90 */ fmr f5, f1
+/* 8028600C 00281C6C 80 61 00 14 */ lwz r3, 0x14(r1)
+/* 80286010 00281C70 FC C0 08 90 */ fmr f6, f1
+/* 80286014 00281C74 FC E0 08 90 */ fmr f7, f1
+/* 80286018 00281C78 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 8028601C 00281C7C 4B FF FB E1 */ bl GXDrawCubeFace
+/* 80286020 00281C80 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 80286024 00281C84 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 80286028 00281C88 4B FF 96 31 */ bl GXSetVtxDescv
+/* 8028602C 00281C8C 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80286030 00281C90 38 60 00 03 */ li r3, 3
+/* 80286034 00281C94 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286038 00281C98 4B FF 9E 21 */ bl GXSetVtxAttrFmtv
+/* 8028603C 00281C9C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80286040 00281CA0 7C 08 03 A6 */ mtlr r0
+/* 80286044 00281CA4 38 21 00 20 */ addi r1, r1, 0x20
+/* 80286048 00281CA8 4E 80 00 20 */ blr
+
+.global GXDrawDodeca
+GXDrawDodeca:
+/* 8028604C 00281CAC 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 80286050 00281CB0 7C 08 02 A6 */ mflr r0
+/* 80286054 00281CB4 90 01 00 64 */ stw r0, 0x64(r1)
+/* 80286058 00281CB8 39 61 00 60 */ addi r11, r1, 0x60
+/* 8028605C 00281CBC 4B F4 10 C5 */ bl _savegpr_25
+/* 80286060 00281CC0 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 80286064 00281CC4 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 80286068 00281CC8 4B FF 9B 8D */ bl GXGetVtxDescv
+/* 8028606C 00281CCC 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80286070 00281CD0 38 60 00 03 */ li r3, 3
+/* 80286074 00281CD4 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286078 00281CD8 4B FF A2 91 */ bl GXGetVtxAttrFmtv
+/* 8028607C 00281CDC 4B FF 9C 09 */ bl GXClearVtxDesc
+/* 80286080 00281CE0 38 60 00 09 */ li r3, 9
+/* 80286084 00281CE4 38 80 00 01 */ li r4, 1
+/* 80286088 00281CE8 4B FF 93 6D */ bl GXSetVtxDesc
+/* 8028608C 00281CEC 38 60 00 0A */ li r3, 0xa
+/* 80286090 00281CF0 38 80 00 01 */ li r4, 1
+/* 80286094 00281CF4 4B FF 93 61 */ bl GXSetVtxDesc
+/* 80286098 00281CF8 38 60 00 03 */ li r3, 3
+/* 8028609C 00281CFC 38 80 00 09 */ li r4, 9
+/* 802860A0 00281D00 38 A0 00 01 */ li r5, 1
+/* 802860A4 00281D04 38 C0 00 04 */ li r6, 4
+/* 802860A8 00281D08 38 E0 00 00 */ li r7, 0
+/* 802860AC 00281D0C 4B FF 9C 0D */ bl GXSetVtxAttrFmt
+/* 802860B0 00281D10 38 60 00 03 */ li r3, 3
+/* 802860B4 00281D14 38 80 00 0A */ li r4, 0xa
+/* 802860B8 00281D18 38 A0 00 00 */ li r5, 0
+/* 802860BC 00281D1C 38 C0 00 04 */ li r6, 4
+/* 802860C0 00281D20 38 E0 00 00 */ li r7, 0
+/* 802860C4 00281D24 4B FF 9B F5 */ bl GXSetVtxAttrFmt
+/* 802860C8 00281D28 3F A0 80 43 */ lis r29, lbl_80435968@ha
+/* 802860CC 00281D2C 3F C0 80 43 */ lis r30, lbl_80435A58@ha
+/* 802860D0 00281D30 3B BD 59 68 */ addi r29, r29, lbl_80435968@l
+/* 802860D4 00281D34 3B 80 00 00 */ li r28, 0
+/* 802860D8 00281D38 3B DE 5A 58 */ addi r30, r30, lbl_80435A58@l
+/* 802860DC 00281D3C 3F E0 CC 01 */ lis r31, 0xcc01
+lbl_802860E0:
+/* 802860E0 00281D40 80 9D 00 00 */ lwz r4, 0(r29)
+/* 802860E4 00281D44 80 7D 00 04 */ lwz r3, 4(r29)
+/* 802860E8 00281D48 1C 84 00 0C */ mulli r4, r4, 0xc
+/* 802860EC 00281D4C 80 1D 00 08 */ lwz r0, 8(r29)
+/* 802860F0 00281D50 1C 63 00 0C */ mulli r3, r3, 0xc
+/* 802860F4 00281D54 7C 5E 24 2E */ lfsx f2, r30, r4
+/* 802860F8 00281D58 7F 7E 22 14 */ add r27, r30, r4
+/* 802860FC 00281D5C C0 3B 00 04 */ lfs f1, 4(r27)
+/* 80286100 00281D60 7F 5E 1A 14 */ add r26, r30, r3
+/* 80286104 00281D64 7C BE 1C 2E */ lfsx f5, r30, r3
+/* 80286108 00281D68 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 8028610C 00281D6C C0 9A 00 04 */ lfs f4, 4(r26)
+/* 80286110 00281D70 ED 02 28 28 */ fsubs f8, f2, f5
+/* 80286114 00281D74 C0 1B 00 08 */ lfs f0, 8(r27)
+/* 80286118 00281D78 C0 7A 00 08 */ lfs f3, 8(r26)
+/* 8028611C 00281D7C EC E1 20 28 */ fsubs f7, f1, f4
+/* 80286120 00281D80 7F 3E 02 14 */ add r25, r30, r0
+/* 80286124 00281D84 EC C0 18 28 */ fsubs f6, f0, f3
+/* 80286128 00281D88 7C 5E 04 2E */ lfsx f2, r30, r0
+/* 8028612C 00281D8C C0 39 00 04 */ lfs f1, 4(r25)
+/* 80286130 00281D90 C0 19 00 08 */ lfs f0, 8(r25)
+/* 80286134 00281D94 EC A2 28 28 */ fsubs f5, f2, f5
+/* 80286138 00281D98 ED 41 20 28 */ fsubs f10, f1, f4
+/* 8028613C 00281D9C D1 01 00 20 */ stfs f8, 0x20(r1)
+/* 80286140 00281DA0 ED 20 18 28 */ fsubs f9, f0, f3
+/* 80286144 00281DA4 EC 05 01 B2 */ fmuls f0, f5, f6
+/* 80286148 00281DA8 D0 A1 00 2C */ stfs f5, 0x2c(r1)
+/* 8028614C 00281DAC EC 8A 01 B2 */ fmuls f4, f10, f6
+/* 80286150 00281DB0 EC 49 01 F2 */ fmuls f2, f9, f7
+/* 80286154 00281DB4 D1 41 00 30 */ stfs f10, 0x30(r1)
+/* 80286158 00281DB8 EC 65 01 F2 */ fmuls f3, f5, f7
+/* 8028615C 00281DBC EC 29 02 32 */ fmuls f1, f9, f8
+/* 80286160 00281DC0 D1 21 00 34 */ stfs f9, 0x34(r1)
+/* 80286164 00281DC4 EC A4 10 28 */ fsubs f5, f4, f2
+/* 80286168 00281DC8 EC 4A 02 32 */ fmuls f2, f10, f8
+/* 8028616C 00281DCC D0 E1 00 24 */ stfs f7, 0x24(r1)
+/* 80286170 00281DD0 EC 81 00 28 */ fsubs f4, f1, f0
+/* 80286174 00281DD4 EC 25 01 72 */ fmuls f1, f5, f5
+/* 80286178 00281DD8 D0 C1 00 28 */ stfs f6, 0x28(r1)
+/* 8028617C 00281DDC EC 43 10 28 */ fsubs f2, f3, f2
+/* 80286180 00281DE0 EC 04 01 32 */ fmuls f0, f4, f4
+/* 80286184 00281DE4 D0 A1 00 08 */ stfs f5, 8(r1)
+/* 80286188 00281DE8 D0 81 00 0C */ stfs f4, 0xc(r1)
+/* 8028618C 00281DEC EC 01 00 2A */ fadds f0, f1, f0
+/* 80286190 00281DF0 EC 22 00 B2 */ fmuls f1, f2, f2
+/* 80286194 00281DF4 D0 41 00 10 */ stfs f2, 0x10(r1)
+/* 80286198 00281DF8 D0 A1 00 14 */ stfs f5, 0x14(r1)
+/* 8028619C 00281DFC EC 21 00 2A */ fadds f1, f1, f0
+/* 802861A0 00281E00 D0 81 00 18 */ stfs f4, 0x18(r1)
+/* 802861A4 00281E04 D0 41 00 1C */ stfs f2, 0x1c(r1)
+/* 802861A8 00281E08 4B F4 E6 8D */ bl sqrt
+/* 802861AC 00281E0C FC 60 08 18 */ frsp f3, f1
+/* 802861B0 00281E10 C0 41 00 14 */ lfs f2, 0x14(r1)
+/* 802861B4 00281E14 C0 21 00 18 */ lfs f1, 0x18(r1)
+/* 802861B8 00281E18 38 60 00 A0 */ li r3, 0xa0
+/* 802861BC 00281E1C C0 01 00 1C */ lfs f0, 0x1c(r1)
+/* 802861C0 00281E20 38 80 00 03 */ li r4, 3
+/* 802861C4 00281E24 EC 42 18 24 */ fdivs f2, f2, f3
+/* 802861C8 00281E28 38 A0 00 05 */ li r5, 5
+/* 802861CC 00281E2C EC 21 18 24 */ fdivs f1, f1, f3
+/* 802861D0 00281E30 D0 41 00 14 */ stfs f2, 0x14(r1)
+/* 802861D4 00281E34 EC 00 18 24 */ fdivs f0, f0, f3
+/* 802861D8 00281E38 D0 21 00 18 */ stfs f1, 0x18(r1)
+/* 802861DC 00281E3C D0 01 00 1C */ stfs f0, 0x1c(r1)
+/* 802861E0 00281E40 4B FF AF 69 */ bl GXBegin
+/* 802861E4 00281E44 80 1D 00 10 */ lwz r0, 0x10(r29)
+/* 802861E8 00281E48 3B 9C 00 01 */ addi r28, r28, 1
+/* 802861EC 00281E4C C0 41 00 14 */ lfs f2, 0x14(r1)
+/* 802861F0 00281E50 28 1C 00 0C */ cmplwi r28, 0xc
+/* 802861F4 00281E54 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802861F8 00281E58 C0 21 00 18 */ lfs f1, 0x18(r1)
+/* 802861FC 00281E5C C0 01 00 1C */ lfs f0, 0x1c(r1)
+/* 80286200 00281E60 7C 7E 02 14 */ add r3, r30, r0
+/* 80286204 00281E64 7C BE 04 2E */ lfsx f5, r30, r0
+/* 80286208 00281E68 C0 63 00 08 */ lfs f3, 8(r3)
+/* 8028620C 00281E6C C0 83 00 04 */ lfs f4, 4(r3)
+/* 80286210 00281E70 D0 BF 80 00 */ stfs f5, -0x8000(r31)
+/* 80286214 00281E74 D0 9F 80 00 */ stfs f4, -0x8000(r31)
+/* 80286218 00281E78 D0 7F 80 00 */ stfs f3, -0x8000(r31)
+/* 8028621C 00281E7C D0 5F 80 00 */ stfs f2, -0x8000(r31)
+/* 80286220 00281E80 D0 3F 80 00 */ stfs f1, -0x8000(r31)
+/* 80286224 00281E84 D0 1F 80 00 */ stfs f0, -0x8000(r31)
+/* 80286228 00281E88 80 1D 00 0C */ lwz r0, 0xc(r29)
+/* 8028622C 00281E8C 3B BD 00 14 */ addi r29, r29, 0x14
+/* 80286230 00281E90 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 80286234 00281E94 7C 7E 02 14 */ add r3, r30, r0
+/* 80286238 00281E98 7C BE 04 2E */ lfsx f5, r30, r0
+/* 8028623C 00281E9C C0 63 00 08 */ lfs f3, 8(r3)
+/* 80286240 00281EA0 C0 83 00 04 */ lfs f4, 4(r3)
+/* 80286244 00281EA4 D0 BF 80 00 */ stfs f5, -0x8000(r31)
+/* 80286248 00281EA8 D0 9F 80 00 */ stfs f4, -0x8000(r31)
+/* 8028624C 00281EAC D0 7F 80 00 */ stfs f3, -0x8000(r31)
+/* 80286250 00281EB0 D0 5F 80 00 */ stfs f2, -0x8000(r31)
+/* 80286254 00281EB4 D0 3F 80 00 */ stfs f1, -0x8000(r31)
+/* 80286258 00281EB8 D0 1F 80 00 */ stfs f0, -0x8000(r31)
+/* 8028625C 00281EBC C0 79 00 08 */ lfs f3, 8(r25)
+/* 80286260 00281EC0 C0 99 00 04 */ lfs f4, 4(r25)
+/* 80286264 00281EC4 C0 B9 00 00 */ lfs f5, 0(r25)
+/* 80286268 00281EC8 D0 BF 80 00 */ stfs f5, -0x8000(r31)
+/* 8028626C 00281ECC D0 9F 80 00 */ stfs f4, -0x8000(r31)
+/* 80286270 00281ED0 D0 7F 80 00 */ stfs f3, -0x8000(r31)
+/* 80286274 00281ED4 D0 5F 80 00 */ stfs f2, -0x8000(r31)
+/* 80286278 00281ED8 D0 3F 80 00 */ stfs f1, -0x8000(r31)
+/* 8028627C 00281EDC D0 1F 80 00 */ stfs f0, -0x8000(r31)
+/* 80286280 00281EE0 C0 7A 00 08 */ lfs f3, 8(r26)
+/* 80286284 00281EE4 C0 9A 00 04 */ lfs f4, 4(r26)
+/* 80286288 00281EE8 C0 BA 00 00 */ lfs f5, 0(r26)
+/* 8028628C 00281EEC D0 BF 80 00 */ stfs f5, -0x8000(r31)
+/* 80286290 00281EF0 D0 9F 80 00 */ stfs f4, -0x8000(r31)
+/* 80286294 00281EF4 D0 7F 80 00 */ stfs f3, -0x8000(r31)
+/* 80286298 00281EF8 D0 5F 80 00 */ stfs f2, -0x8000(r31)
+/* 8028629C 00281EFC D0 3F 80 00 */ stfs f1, -0x8000(r31)
+/* 802862A0 00281F00 D0 1F 80 00 */ stfs f0, -0x8000(r31)
+/* 802862A4 00281F04 C0 7B 00 08 */ lfs f3, 8(r27)
+/* 802862A8 00281F08 C0 9B 00 04 */ lfs f4, 4(r27)
+/* 802862AC 00281F0C C0 BB 00 00 */ lfs f5, 0(r27)
+/* 802862B0 00281F10 D0 BF 80 00 */ stfs f5, -0x8000(r31)
+/* 802862B4 00281F14 D0 9F 80 00 */ stfs f4, -0x8000(r31)
+/* 802862B8 00281F18 D0 7F 80 00 */ stfs f3, -0x8000(r31)
+/* 802862BC 00281F1C D0 5F 80 00 */ stfs f2, -0x8000(r31)
+/* 802862C0 00281F20 D0 3F 80 00 */ stfs f1, -0x8000(r31)
+/* 802862C4 00281F24 D0 1F 80 00 */ stfs f0, -0x8000(r31)
+/* 802862C8 00281F28 41 80 FE 18 */ blt lbl_802860E0
+/* 802862CC 00281F2C 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 802862D0 00281F30 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 802862D4 00281F34 4B FF 93 85 */ bl GXSetVtxDescv
+/* 802862D8 00281F38 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 802862DC 00281F3C 38 60 00 03 */ li r3, 3
+/* 802862E0 00281F40 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 802862E4 00281F44 4B FF 9B 75 */ bl GXSetVtxAttrFmtv
+/* 802862E8 00281F48 39 61 00 60 */ addi r11, r1, 0x60
+/* 802862EC 00281F4C 4B F4 0E 81 */ bl _restgpr_25
+/* 802862F0 00281F50 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802862F4 00281F54 7C 08 03 A6 */ mtlr r0
+/* 802862F8 00281F58 38 21 00 60 */ addi r1, r1, 0x60
+/* 802862FC 00281F5C 4E 80 00 20 */ blr
+
+.global GXDrawOctahedron
+GXDrawOctahedron:
+/* 80286300 00281F60 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80286304 00281F64 7C 08 02 A6 */ mflr r0
+/* 80286308 00281F68 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 8028630C 00281F6C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80286310 00281F70 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 80286314 00281F74 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80286318 00281F78 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8028631C 00281F7C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80286320 00281F80 4B FF 98 D5 */ bl GXGetVtxDescv
+/* 80286324 00281F84 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80286328 00281F88 38 60 00 03 */ li r3, 3
+/* 8028632C 00281F8C 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286330 00281F90 4B FF 9F D9 */ bl GXGetVtxAttrFmtv
+/* 80286334 00281F94 4B FF 99 51 */ bl GXClearVtxDesc
+/* 80286338 00281F98 38 60 00 09 */ li r3, 9
+/* 8028633C 00281F9C 38 80 00 01 */ li r4, 1
+/* 80286340 00281FA0 4B FF 90 B5 */ bl GXSetVtxDesc
+/* 80286344 00281FA4 38 60 00 0A */ li r3, 0xa
+/* 80286348 00281FA8 38 80 00 01 */ li r4, 1
+/* 8028634C 00281FAC 4B FF 90 A9 */ bl GXSetVtxDesc
+/* 80286350 00281FB0 38 60 00 03 */ li r3, 3
+/* 80286354 00281FB4 38 80 00 09 */ li r4, 9
+/* 80286358 00281FB8 38 A0 00 01 */ li r5, 1
+/* 8028635C 00281FBC 38 C0 00 04 */ li r6, 4
+/* 80286360 00281FC0 38 E0 00 00 */ li r7, 0
+/* 80286364 00281FC4 4B FF 99 55 */ bl GXSetVtxAttrFmt
+/* 80286368 00281FC8 38 60 00 03 */ li r3, 3
+/* 8028636C 00281FCC 38 80 00 0A */ li r4, 0xa
+/* 80286370 00281FD0 38 A0 00 00 */ li r5, 0
+/* 80286374 00281FD4 38 C0 00 04 */ li r6, 4
+/* 80286378 00281FD8 38 E0 00 00 */ li r7, 0
+/* 8028637C 00281FDC 4B FF 99 3D */ bl GXSetVtxAttrFmt
+/* 80286380 00281FE0 3F C0 80 43 */ lis r30, lbl_80435B90@ha
+/* 80286384 00281FE4 3F E0 80 43 */ lis r31, lbl_80435B48@ha
+/* 80286388 00281FE8 3B DE 5B 90 */ addi r30, r30, lbl_80435B90@l
+/* 8028638C 00281FEC 3B A0 00 07 */ li r29, 7
+/* 80286390 00281FF0 3B FF 5B 48 */ addi r31, r31, lbl_80435B48@l
+lbl_80286394:
+/* 80286394 00281FF4 57 A3 06 3E */ clrlwi r3, r29, 0x18
+/* 80286398 00281FF8 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
+/* 8028639C 00281FFC 7C 03 00 50 */ subf r0, r3, r0
+/* 802863A0 00282000 7C DE 02 14 */ add r6, r30, r0
+/* 802863A4 00282004 7C BE 00 AE */ lbzx r5, r30, r0
+/* 802863A8 00282008 88 06 00 02 */ lbz r0, 2(r6)
+/* 802863AC 0028200C 38 60 00 00 */ li r3, 0
+/* 802863B0 00282010 88 86 00 01 */ lbz r4, 1(r6)
+/* 802863B4 00282014 1C C5 00 0C */ mulli r6, r5, 0xc
+/* 802863B8 00282018 1C A4 00 0C */ mulli r5, r4, 0xc
+/* 802863BC 0028201C 7C 9F 32 14 */ add r4, r31, r6
+/* 802863C0 00282020 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802863C4 00282024 7C BF 2A 14 */ add r5, r31, r5
+/* 802863C8 00282028 7C DF 02 14 */ add r6, r31, r0
+/* 802863CC 0028202C 4B FF E5 85 */ bl Subdivide
+/* 802863D0 00282030 37 BD FF FF */ addic. r29, r29, -1
+/* 802863D4 00282034 40 80 FF C0 */ bge lbl_80286394
+/* 802863D8 00282038 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 802863DC 0028203C 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 802863E0 00282040 4B FF 92 79 */ bl GXSetVtxDescv
+/* 802863E4 00282044 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 802863E8 00282048 38 60 00 03 */ li r3, 3
+/* 802863EC 0028204C 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 802863F0 00282050 4B FF 9A 69 */ bl GXSetVtxAttrFmtv
+/* 802863F4 00282054 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802863F8 00282058 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802863FC 0028205C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80286400 00282060 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80286404 00282064 7C 08 03 A6 */ mtlr r0
+/* 80286408 00282068 38 21 00 20 */ addi r1, r1, 0x20
+/* 8028640C 0028206C 4E 80 00 20 */ blr
+
+.global GXDrawIcosahedron
+GXDrawIcosahedron:
+/* 80286410 00282070 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80286414 00282074 7C 08 02 A6 */ mflr r0
+/* 80286418 00282078 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 8028641C 0028207C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80286420 00282080 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 80286424 00282084 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80286428 00282088 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8028642C 0028208C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80286430 00282090 4B FF 97 C5 */ bl GXGetVtxDescv
+/* 80286434 00282094 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80286438 00282098 38 60 00 03 */ li r3, 3
+/* 8028643C 0028209C 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286440 002820A0 4B FF 9E C9 */ bl GXGetVtxAttrFmtv
+/* 80286444 002820A4 4B FF 98 41 */ bl GXClearVtxDesc
+/* 80286448 002820A8 38 60 00 09 */ li r3, 9
+/* 8028644C 002820AC 38 80 00 01 */ li r4, 1
+/* 80286450 002820B0 4B FF 8F A5 */ bl GXSetVtxDesc
+/* 80286454 002820B4 38 60 00 0A */ li r3, 0xa
+/* 80286458 002820B8 38 80 00 01 */ li r4, 1
+/* 8028645C 002820BC 4B FF 8F 99 */ bl GXSetVtxDesc
+/* 80286460 002820C0 38 60 00 03 */ li r3, 3
+/* 80286464 002820C4 38 80 00 09 */ li r4, 9
+/* 80286468 002820C8 38 A0 00 01 */ li r5, 1
+/* 8028646C 002820CC 38 C0 00 04 */ li r6, 4
+/* 80286470 002820D0 38 E0 00 00 */ li r7, 0
+/* 80286474 002820D4 4B FF 98 45 */ bl GXSetVtxAttrFmt
+/* 80286478 002820D8 38 60 00 03 */ li r3, 3
+/* 8028647C 002820DC 38 80 00 0A */ li r4, 0xa
+/* 80286480 002820E0 38 A0 00 00 */ li r5, 0
+/* 80286484 002820E4 38 C0 00 04 */ li r6, 4
+/* 80286488 002820E8 38 E0 00 00 */ li r7, 0
+/* 8028648C 002820EC 4B FF 98 2D */ bl GXSetVtxAttrFmt
+/* 80286490 002820F0 3F C0 80 43 */ lis r30, lbl_80435C38@ha
+/* 80286494 002820F4 3F E0 80 43 */ lis r31, lbl_80435BA8@ha
+/* 80286498 002820F8 3B DE 5C 38 */ addi r30, r30, lbl_80435C38@l
+/* 8028649C 002820FC 3B A0 00 13 */ li r29, 0x13
+/* 802864A0 00282100 3B FF 5B A8 */ addi r31, r31, lbl_80435BA8@l
+lbl_802864A4:
+/* 802864A4 00282104 57 A3 06 3E */ clrlwi r3, r29, 0x18
+/* 802864A8 00282108 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
+/* 802864AC 0028210C 7C 03 00 50 */ subf r0, r3, r0
+/* 802864B0 00282110 7C DE 02 14 */ add r6, r30, r0
+/* 802864B4 00282114 7C BE 00 AE */ lbzx r5, r30, r0
+/* 802864B8 00282118 88 06 00 02 */ lbz r0, 2(r6)
+/* 802864BC 0028211C 38 60 00 00 */ li r3, 0
+/* 802864C0 00282120 88 86 00 01 */ lbz r4, 1(r6)
+/* 802864C4 00282124 1C C5 00 0C */ mulli r6, r5, 0xc
+/* 802864C8 00282128 1C A4 00 0C */ mulli r5, r4, 0xc
+/* 802864CC 0028212C 7C 9F 32 14 */ add r4, r31, r6
+/* 802864D0 00282130 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802864D4 00282134 7C BF 2A 14 */ add r5, r31, r5
+/* 802864D8 00282138 7C DF 02 14 */ add r6, r31, r0
+/* 802864DC 0028213C 4B FF E4 75 */ bl Subdivide
+/* 802864E0 00282140 37 BD FF FF */ addic. r29, r29, -1
+/* 802864E4 00282144 40 80 FF C0 */ bge lbl_802864A4
+/* 802864E8 00282148 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 802864EC 0028214C 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 802864F0 00282150 4B FF 91 69 */ bl GXSetVtxDescv
+/* 802864F4 00282154 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 802864F8 00282158 38 60 00 03 */ li r3, 3
+/* 802864FC 0028215C 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286500 00282160 4B FF 99 59 */ bl GXSetVtxAttrFmtv
+/* 80286504 00282164 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80286508 00282168 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8028650C 0028216C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80286510 00282170 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80286514 00282174 7C 08 03 A6 */ mtlr r0
+/* 80286518 00282178 38 21 00 20 */ addi r1, r1, 0x20
+/* 8028651C 0028217C 4E 80 00 20 */ blr
+
+.global GXDrawSphere1
+GXDrawSphere1:
+/* 80286520 00282180 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80286524 00282184 7C 08 02 A6 */ mflr r0
+/* 80286528 00282188 3C 80 80 51 */ lis r4, lbl_80515FF8@ha
+/* 8028652C 0028218C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80286530 00282190 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80286534 00282194 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80286538 00282198 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8028653C 0028219C 93 81 00 10 */ stw r28, 0x10(r1)
+/* 80286540 002821A0 7C 7C 1B 78 */ mr r28, r3
+/* 80286544 002821A4 38 64 5F F8 */ addi r3, r4, lbl_80515FF8@l
+/* 80286548 002821A8 4B FF 96 AD */ bl GXGetVtxDescv
+/* 8028654C 002821AC 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80286550 002821B0 38 60 00 03 */ li r3, 3
+/* 80286554 002821B4 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286558 002821B8 4B FF 9D B1 */ bl GXGetVtxAttrFmtv
+/* 8028655C 002821BC 4B FF 97 29 */ bl GXClearVtxDesc
+/* 80286560 002821C0 38 60 00 09 */ li r3, 9
+/* 80286564 002821C4 38 80 00 01 */ li r4, 1
+/* 80286568 002821C8 4B FF 8E 8D */ bl GXSetVtxDesc
+/* 8028656C 002821CC 38 60 00 0A */ li r3, 0xa
+/* 80286570 002821D0 38 80 00 01 */ li r4, 1
+/* 80286574 002821D4 4B FF 8E 81 */ bl GXSetVtxDesc
+/* 80286578 002821D8 38 60 00 03 */ li r3, 3
+/* 8028657C 002821DC 38 80 00 09 */ li r4, 9
+/* 80286580 002821E0 38 A0 00 01 */ li r5, 1
+/* 80286584 002821E4 38 C0 00 04 */ li r6, 4
+/* 80286588 002821E8 38 E0 00 00 */ li r7, 0
+/* 8028658C 002821EC 4B FF 97 2D */ bl GXSetVtxAttrFmt
+/* 80286590 002821F0 38 60 00 03 */ li r3, 3
+/* 80286594 002821F4 38 80 00 0A */ li r4, 0xa
+/* 80286598 002821F8 38 A0 00 00 */ li r5, 0
+/* 8028659C 002821FC 38 C0 00 04 */ li r6, 4
+/* 802865A0 00282200 38 E0 00 00 */ li r7, 0
+/* 802865A4 00282204 4B FF 97 15 */ bl GXSetVtxAttrFmt
+/* 802865A8 00282208 3F C0 80 43 */ lis r30, lbl_80435C38@ha
+/* 802865AC 0028220C 3F E0 80 43 */ lis r31, lbl_80435BA8@ha
+/* 802865B0 00282210 3B DE 5C 38 */ addi r30, r30, lbl_80435C38@l
+/* 802865B4 00282214 3B A0 00 13 */ li r29, 0x13
+/* 802865B8 00282218 3B FF 5B A8 */ addi r31, r31, lbl_80435BA8@l
+lbl_802865BC:
+/* 802865BC 0028221C 57 A3 06 3E */ clrlwi r3, r29, 0x18
+/* 802865C0 00282220 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
+/* 802865C4 00282224 7C 03 00 50 */ subf r0, r3, r0
+/* 802865C8 00282228 7C DE 02 14 */ add r6, r30, r0
+/* 802865CC 0028222C 7C BE 00 AE */ lbzx r5, r30, r0
+/* 802865D0 00282230 88 06 00 02 */ lbz r0, 2(r6)
+/* 802865D4 00282234 7F 83 E3 78 */ mr r3, r28
+/* 802865D8 00282238 88 86 00 01 */ lbz r4, 1(r6)
+/* 802865DC 0028223C 1C C5 00 0C */ mulli r6, r5, 0xc
+/* 802865E0 00282240 1C A4 00 0C */ mulli r5, r4, 0xc
+/* 802865E4 00282244 7C 9F 32 14 */ add r4, r31, r6
+/* 802865E8 00282248 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 802865EC 0028224C 7C BF 2A 14 */ add r5, r31, r5
+/* 802865F0 00282250 7C DF 02 14 */ add r6, r31, r0
+/* 802865F4 00282254 4B FF E3 5D */ bl Subdivide
+/* 802865F8 00282258 37 BD FF FF */ addic. r29, r29, -1
+/* 802865FC 0028225C 40 80 FF C0 */ bge lbl_802865BC
+/* 80286600 00282260 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
+/* 80286604 00282264 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
+/* 80286608 00282268 4B FF 90 51 */ bl GXSetVtxDescv
+/* 8028660C 0028226C 3C 80 80 51 */ lis r4, lbl_805160D0@ha
+/* 80286610 00282270 38 60 00 03 */ li r3, 3
+/* 80286614 00282274 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
+/* 80286618 00282278 4B FF 98 41 */ bl GXSetVtxAttrFmtv
+/* 8028661C 0028227C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80286620 00282280 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80286624 00282284 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80286628 00282288 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8028662C 0028228C 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 80286630 00282290 7C 08 03 A6 */ mtlr r0
+/* 80286634 00282294 38 21 00 20 */ addi r1, r1, 0x20
+/* 80286638 00282298 4E 80 00 20 */ blr
diff --git a/asm/SDK/HBM/HBMBase.s b/asm/SDK/HBM/HBMBase.s
index 113d31f..28aee3b 100644
--- a/asm/SDK/HBM/HBMBase.s
+++ b/asm/SDK/HBM/HBMBase.s
@@ -1861,7 +1861,7 @@ lbl_8039BA38:
/* 8039BA4C 003976AC B0 7F 05 EC */ sth r3, 0x5ec(r31)
/* 8039BA50 003976B0 38 7F 05 F0 */ addi r3, r31, 0x5f0
/* 8039BA54 003976B4 38 9F 05 F4 */ addi r4, r31, 0x5f4
-/* 8039BA58 003976B8 4B EF AA 61 */ bl func_802964B8
+/* 8039BA58 003976B8 4B EF AA 61 */ bl AXFXGetHooks
/* 8039BA5C 003976BC 38 7F 07 58 */ addi r3, r31, 0x758
/* 8039BA60 003976C0 38 9F 07 5C */ addi r4, r31, 0x75c
/* 8039BA64 003976C4 4B EF 42 C5 */ bl AXGetAuxACallback
@@ -1869,7 +1869,7 @@ lbl_8039BA38:
/* 8039BA6C 003976CC 3C 80 80 3A */ lis r4, HBMFreeMem__FPv@ha
/* 8039BA70 003976D0 38 63 A0 68 */ addi r3, r3, HBMAllocMem__FUl@l
/* 8039BA74 003976D4 38 84 A0 74 */ addi r4, r4, HBMFreeMem__FPv@l
-/* 8039BA78 003976D8 4B EF AA 35 */ bl func_802964AC
+/* 8039BA78 003976D8 4B EF AA 35 */ bl AXFXSetHooks
/* 8039BA7C 003976DC C0 62 A9 34 */ lfs f3, lbl_80642F34-_SDA2_BASE_(r2)
/* 8039BA80 003976E0 38 7F 05 F8 */ addi r3, r31, 0x5f8
/* 8039BA84 003976E4 C0 42 A9 70 */ lfs f2, lbl_80642F70-_SDA2_BASE_(r2)
@@ -3514,7 +3514,7 @@ lbl_8039D218:
/* 8039D234 00398E94 4B EF 29 C9 */ bl AXRegisterAuxACallback
/* 8039D238 00398E98 80 7D 05 F0 */ lwz r3, 0x5f0(r29)
/* 8039D23C 00398E9C 80 9D 05 F4 */ lwz r4, 0x5f4(r29)
-/* 8039D240 00398EA0 4B EF 92 6D */ bl func_802964AC
+/* 8039D240 00398EA0 4B EF 92 6D */ bl AXFXSetHooks
/* 8039D244 00398EA4 A0 7D 05 E8 */ lhz r3, 0x5e8(r29)
/* 8039D248 00398EA8 4B EF 35 91 */ bl AXSetAuxAReturnVolume
/* 8039D24C 00398EAC A0 7D 05 EA */ lhz r3, 0x5ea(r29)
diff --git a/asm/SDK/OS/OS.s b/asm/SDK/OS/OS.s
index cc70093..a546b87 100644
--- a/asm/SDK/OS/OS.s
+++ b/asm/SDK/OS/OS.s
@@ -972,9 +972,9 @@ lbl_802690DC:
/* 802690FC 00264D5C 2C 00 00 00 */ cmpwi r0, 0
/* 80269100 00264D60 40 82 00 1C */ bne lbl_8026911C
/* 80269104 00264D64 48 00 A1 F1 */ bl __OSInitSTM
-/* 80269108 00264D68 48 08 18 45 */ bl func_802EA94C
+/* 80269108 00264D68 48 08 18 45 */ bl SCInit
lbl_8026910C:
-/* 8026910C 00264D6C 48 08 18 E1 */ bl func_802EA9EC
+/* 8026910C 00264D6C 48 08 18 E1 */ bl SCCheckStatus
/* 80269110 00264D70 28 03 00 01 */ cmplwi r3, 1
/* 80269114 00264D74 41 82 FF F8 */ beq lbl_8026910C
/* 80269118 00264D78 48 00 AF F9 */ bl __OSInitNet
diff --git a/asm/SDK/OS/OSReset.s b/asm/SDK/OS/OSReset.s
index 1d6365b..eb427c6 100644
--- a/asm/SDK/OS/OSReset.s
+++ b/asm/SDK/OS/OSReset.s
@@ -277,9 +277,9 @@ OSShutdownSystem:
/* 80270010 0026BC70 90 01 00 44 */ stw r0, 0x44(r1)
/* 80270014 0026BC74 38 61 00 08 */ addi r3, r1, 8
/* 80270018 0026BC78 4B D9 40 ED */ bl memset
-/* 8027001C 0026BC7C 48 07 A9 31 */ bl func_802EA94C
+/* 8027001C 0026BC7C 48 07 A9 31 */ bl SCInit
lbl_80270020:
-/* 80270020 0026BC80 48 07 A9 CD */ bl func_802EA9EC
+/* 80270020 0026BC80 48 07 A9 CD */ bl SCCheckStatus
/* 80270024 0026BC84 28 03 00 01 */ cmplwi r3, 1
/* 80270028 0026BC88 41 82 FF F8 */ beq lbl_80270020
/* 8027002C 0026BC8C 38 61 00 08 */ addi r3, r1, 8
diff --git a/asm/SDK/SC/scsystem.s b/asm/SDK/SC/scsystem.s
new file mode 100644
index 0000000..9cd2d1a
--- /dev/null
+++ b/asm/SDK/SC/scsystem.s
@@ -0,0 +1,1856 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global SCInit
+SCInit:
+/* 802EA94C 002E65AC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EA950 002E65B0 7C 08 02 A6 */ mflr r0
+/* 802EA954 002E65B4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EA958 002E65B8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802EA95C 002E65BC 4B F8 3E 01 */ bl OSDisableInterrupts
+/* 802EA960 002E65C0 88 0D AF 26 */ lbz r0, lbl_806401E6-_SDA_BASE_(r13)
+/* 802EA964 002E65C4 2C 00 00 00 */ cmpwi r0, 0
+/* 802EA968 002E65C8 41 82 00 0C */ beq lbl_802EA974
+/* 802EA96C 002E65CC 4B F8 3E 19 */ bl OSRestoreInterrupts
+/* 802EA970 002E65D0 48 00 00 68 */ b lbl_802EA9D8
+lbl_802EA974:
+/* 802EA974 002E65D4 3B E0 00 01 */ li r31, 1
+/* 802EA978 002E65D8 9B ED AF 26 */ stb r31, lbl_806401E6-_SDA_BASE_(r13)
+/* 802EA97C 002E65DC 9B ED AF 10 */ stb r31, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EA980 002E65E0 4B F8 3E 05 */ bl OSRestoreInterrupts
+/* 802EA984 002E65E4 80 6D 8A C0 */ lwz r3, lbl_8063DD80-_SDA_BASE_(r13)
+/* 802EA988 002E65E8 4B F7 EC C9 */ bl OSRegisterVersion
+/* 802EA98C 002E65EC 3C 60 80 57 */ lis r3, lbl_80570EC0@ha
+/* 802EA990 002E65F0 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l
+/* 802EA994 002E65F4 4B F8 69 55 */ bl OSInitThreadQueue
+/* 802EA998 002E65F8 4B F7 DB 95 */ bl OSGetConsoleType
+/* 802EA99C 002E65FC 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3
+/* 802EA9A0 002E6600 41 82 00 08 */ beq lbl_802EA9A8
+/* 802EA9A4 002E6604 9B ED AF 24 */ stb r31, lbl_806401E4-_SDA_BASE_(r13)
+lbl_802EA9A8:
+/* 802EA9A8 002E6608 4B FF EC 9D */ bl NANDInit
+/* 802EA9AC 002E660C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EA9B0 002E6610 40 82 00 20 */ bne lbl_802EA9D0
+/* 802EA9B4 002E6614 3C 60 80 57 */ lis r3, lbl_80571060@ha
+/* 802EA9B8 002E6618 38 80 40 00 */ li r4, 0x4000
+/* 802EA9BC 002E661C 38 63 10 60 */ addi r3, r3, lbl_80571060@l
+/* 802EA9C0 002E6620 38 A0 00 00 */ li r5, 0
+/* 802EA9C4 002E6624 48 00 01 45 */ bl SCReloadConfFileAsync
+/* 802EA9C8 002E6628 2C 03 00 00 */ cmpwi r3, 0
+/* 802EA9CC 002E662C 41 82 00 0C */ beq lbl_802EA9D8
+lbl_802EA9D0:
+/* 802EA9D0 002E6630 38 00 00 02 */ li r0, 2
+/* 802EA9D4 002E6634 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13)
+lbl_802EA9D8:
+/* 802EA9D8 002E6638 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EA9DC 002E663C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802EA9E0 002E6640 7C 08 03 A6 */ mtlr r0
+/* 802EA9E4 002E6644 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EA9E8 002E6648 4E 80 00 20 */ blr
+
+.global SCCheckStatus
+SCCheckStatus:
+/* 802EA9EC 002E664C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802EA9F0 002E6650 7C 08 02 A6 */ mflr r0
+/* 802EA9F4 002E6654 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802EA9F8 002E6658 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802EA9FC 002E665C 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802EAA00 002E6660 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802EAA04 002E6664 4B F8 3D 59 */ bl OSDisableInterrupts
+/* 802EAA08 002E6668 8B AD AF 10 */ lbz r29, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EAA0C 002E666C 28 1D 00 03 */ cmplwi r29, 3
+/* 802EAA10 002E6670 40 82 00 D4 */ bne lbl_802EAAE4
+/* 802EAA14 002E6674 38 00 00 01 */ li r0, 1
+/* 802EAA18 002E6678 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EAA1C 002E667C 4B F8 3D 69 */ bl OSRestoreInterrupts
+/* 802EAA20 002E6680 3F E0 80 57 */ lis r31, lbl_80570EC0@ha
+/* 802EAA24 002E6684 3B FF 0E C0 */ addi r31, r31, lbl_80570EC0@l
+/* 802EAA28 002E6688 80 7F 01 68 */ lwz r3, 0x168(r31)
+/* 802EAA2C 002E668C 80 9F 01 78 */ lwz r4, 0x178(r31)
+/* 802EAA30 002E6690 48 00 05 71 */ bl ParseConfBuf
+/* 802EAA34 002E6694 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAA38 002E6698 40 82 00 40 */ bne lbl_802EAA78
+/* 802EAA3C 002E669C 4B F8 3D 21 */ bl OSDisableInterrupts
+/* 802EAA40 002E66A0 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EAA44 002E66A4 80 9F 01 68 */ lwz r4, 0x168(r31)
+/* 802EAA48 002E66A8 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EAA4C 002E66AC 7C 7D 1B 78 */ mr r29, r3
+/* 802EAA50 002E66B0 7C 05 20 40 */ cmplw r5, r4
+/* 802EAA54 002E66B4 41 82 00 10 */ beq lbl_802EAA64
+/* 802EAA58 002E66B8 7C A3 2B 78 */ mr r3, r5
+/* 802EAA5C 002E66BC 38 A0 40 00 */ li r5, 0x4000
+/* 802EAA60 002E66C0 4B D1 95 A1 */ bl memcpy
+lbl_802EAA64:
+/* 802EAA64 002E66C4 38 00 00 00 */ li r0, 0
+/* 802EAA68 002E66C8 7F A3 EB 78 */ mr r3, r29
+/* 802EAA6C 002E66CC 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+/* 802EAA70 002E66D0 4B F8 3D 15 */ bl OSRestoreInterrupts
+/* 802EAA74 002E66D4 48 00 00 64 */ b lbl_802EAAD8
+lbl_802EAA78:
+/* 802EAA78 002E66D8 4B F8 3C E5 */ bl OSDisableInterrupts
+/* 802EAA7C 002E66DC 83 FF 01 68 */ lwz r31, 0x168(r31)
+/* 802EAA80 002E66E0 7C 7D 1B 78 */ mr r29, r3
+/* 802EAA84 002E66E4 3B C0 40 00 */ li r30, 0x4000
+/* 802EAA88 002E66E8 38 80 00 00 */ li r4, 0
+/* 802EAA8C 002E66EC 7F E3 FB 78 */ mr r3, r31
+/* 802EAA90 002E66F0 38 A0 40 00 */ li r5, 0x4000
+/* 802EAA94 002E66F4 4B D1 96 71 */ bl memset
+/* 802EAA98 002E66F8 28 1E 00 0C */ cmplwi r30, 0xc
+/* 802EAA9C 002E66FC 40 81 00 2C */ ble lbl_802EAAC8
+/* 802EAAA0 002E6700 7F E3 FB 78 */ mr r3, r31
+/* 802EAAA4 002E6704 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_
+/* 802EAAA8 002E6708 38 A0 00 04 */ li r5, 4
+/* 802EAAAC 002E670C 4B D1 95 55 */ bl memcpy
+/* 802EAAB0 002E6710 38 7F 3F FC */ addi r3, r31, 0x3ffc
+/* 802EAAB4 002E6714 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_
+/* 802EAAB8 002E6718 38 A0 00 04 */ li r5, 4
+/* 802EAABC 002E671C 4B D1 95 45 */ bl memcpy
+/* 802EAAC0 002E6720 38 00 00 08 */ li r0, 8
+/* 802EAAC4 002E6724 B0 1F 00 06 */ sth r0, 6(r31)
+lbl_802EAAC8:
+/* 802EAAC8 002E6728 38 00 00 00 */ li r0, 0
+/* 802EAACC 002E672C 7F A3 EB 78 */ mr r3, r29
+/* 802EAAD0 002E6730 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+/* 802EAAD4 002E6734 4B F8 3C B1 */ bl OSRestoreInterrupts
+lbl_802EAAD8:
+/* 802EAAD8 002E6738 3B A0 00 00 */ li r29, 0
+/* 802EAADC 002E673C 9B AD AF 10 */ stb r29, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EAAE0 002E6740 48 00 00 08 */ b lbl_802EAAE8
+lbl_802EAAE4:
+/* 802EAAE4 002E6744 4B F8 3C A1 */ bl OSRestoreInterrupts
+lbl_802EAAE8:
+/* 802EAAE8 002E6748 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802EAAEC 002E674C 7F A3 EB 78 */ mr r3, r29
+/* 802EAAF0 002E6750 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802EAAF4 002E6754 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802EAAF8 002E6758 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802EAAFC 002E675C 7C 08 03 A6 */ mtlr r0
+/* 802EAB00 002E6760 38 21 00 20 */ addi r1, r1, 0x20
+/* 802EAB04 002E6764 4E 80 00 20 */ blr
+
+.global SCReloadConfFileAsync
+SCReloadConfFileAsync:
+/* 802EAB08 002E6768 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802EAB0C 002E676C 7C 08 02 A6 */ mflr r0
+/* 802EAB10 002E6770 28 04 40 00 */ cmplwi r4, 0x4000
+/* 802EAB14 002E6774 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802EAB18 002E6778 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802EAB1C 002E677C 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802EAB20 002E6780 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802EAB24 002E6784 7C 7D 1B 78 */ mr r29, r3
+/* 802EAB28 002E6788 40 80 00 0C */ bge lbl_802EAB34
+/* 802EAB2C 002E678C 38 60 FF 80 */ li r3, -128
+/* 802EAB30 002E6790 48 00 00 D0 */ b lbl_802EAC00
+lbl_802EAB34:
+/* 802EAB34 002E6794 3F C0 80 57 */ lis r30, lbl_80570EC0@ha
+/* 802EAB38 002E6798 3D 20 80 40 */ lis r9, lbl_803FE070@ha
+/* 802EAB3C 002E679C 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l
+/* 802EAB40 002E67A0 3B E0 00 00 */ li r31, 0
+/* 802EAB44 002E67A4 3D 00 80 40 */ lis r8, lbl_803FE088@ha
+/* 802EAB48 002E67A8 3C 80 80 00 */ lis r4, 0x80003800@ha
+/* 802EAB4C 002E67AC 38 E4 38 00 */ addi r7, r4, 0x80003800@l
+/* 802EAB50 002E67B0 39 29 E0 70 */ addi r9, r9, lbl_803FE070@l
+/* 802EAB54 002E67B4 39 40 00 01 */ li r10, 1
+/* 802EAB58 002E67B8 39 08 E0 88 */ addi r8, r8, lbl_803FE088@l
+/* 802EAB5C 002E67BC 38 C0 40 00 */ li r6, 0x4000
+/* 802EAB60 002E67C0 38 00 01 00 */ li r0, 0x100
+/* 802EAB64 002E67C4 90 BE 01 58 */ stw r5, 0x158(r30)
+/* 802EAB68 002E67C8 38 80 00 00 */ li r4, 0
+/* 802EAB6C 002E67CC 38 A0 40 00 */ li r5, 0x4000
+/* 802EAB70 002E67D0 99 4D AF 10 */ stb r10, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EAB74 002E67D4 93 FE 01 5C */ stw r31, 0x15c(r30)
+/* 802EAB78 002E67D8 9B FE 01 56 */ stb r31, 0x156(r30)
+/* 802EAB7C 002E67DC 93 FE 01 78 */ stw r31, 0x178(r30)
+/* 802EAB80 002E67E0 93 FE 01 7C */ stw r31, 0x17c(r30)
+/* 802EAB84 002E67E4 91 3E 01 60 */ stw r9, 0x160(r30)
+/* 802EAB88 002E67E8 91 1E 01 64 */ stw r8, 0x164(r30)
+/* 802EAB8C 002E67EC 90 7E 01 68 */ stw r3, 0x168(r30)
+/* 802EAB90 002E67F0 90 FE 01 6C */ stw r7, 0x16c(r30)
+/* 802EAB94 002E67F4 90 DE 01 70 */ stw r6, 0x170(r30)
+/* 802EAB98 002E67F8 90 1E 01 74 */ stw r0, 0x174(r30)
+/* 802EAB9C 002E67FC 4B D1 95 69 */ bl memset
+/* 802EABA0 002E6800 7F A3 EB 78 */ mr r3, r29
+/* 802EABA4 002E6804 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_
+/* 802EABA8 002E6808 38 A0 00 04 */ li r5, 4
+/* 802EABAC 002E680C 4B D1 94 55 */ bl memcpy
+/* 802EABB0 002E6810 38 7D 3F FC */ addi r3, r29, 0x3ffc
+/* 802EABB4 002E6814 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_
+/* 802EABB8 002E6818 38 A0 00 04 */ li r5, 4
+/* 802EABBC 002E681C 4B D1 94 45 */ bl memcpy
+/* 802EABC0 002E6820 38 00 00 08 */ li r0, 8
+/* 802EABC4 002E6824 3C C0 80 2F */ lis r6, OpenCallbackFromReload@ha
+/* 802EABC8 002E6828 B0 1D 00 06 */ sth r0, 6(r29)
+/* 802EABCC 002E682C 38 9E 00 08 */ addi r4, r30, 8
+/* 802EABD0 002E6830 38 C6 AC 1C */ addi r6, r6, OpenCallbackFromReload@l
+/* 802EABD4 002E6834 38 FE 00 94 */ addi r7, r30, 0x94
+/* 802EABD8 002E6838 88 1E 01 56 */ lbz r0, 0x156(r30)
+/* 802EABDC 002E683C 38 A0 00 01 */ li r5, 1
+/* 802EABE0 002E6840 9B FE 01 55 */ stb r31, 0x155(r30)
+/* 802EABE4 002E6844 54 00 10 3A */ slwi r0, r0, 2
+/* 802EABE8 002E6848 7C 7E 02 14 */ add r3, r30, r0
+/* 802EABEC 002E684C 93 ED AF 20 */ stw r31, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EABF0 002E6850 80 63 01 60 */ lwz r3, 0x160(r3)
+/* 802EABF4 002E6854 93 ED AF 18 */ stw r31, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EABF8 002E6858 93 ED AF 14 */ stw r31, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EABFC 002E685C 4B FF D9 9D */ bl NANDPrivateOpenAsync
+lbl_802EAC00:
+/* 802EAC00 002E6860 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802EAC04 002E6864 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802EAC08 002E6868 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802EAC0C 002E686C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802EAC10 002E6870 7C 08 03 A6 */ mtlr r0
+/* 802EAC14 002E6874 38 21 00 20 */ addi r1, r1, 0x20
+/* 802EAC18 002E6878 4E 80 00 20 */ blr
+
+OpenCallbackFromReload:
+/* 802EAC1C 002E687C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EAC20 002E6880 7C 08 02 A6 */ mflr r0
+/* 802EAC24 002E6884 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAC28 002E6888 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EAC2C 002E688C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802EAC30 002E6890 7C 7F 1B 78 */ mr r31, r3
+/* 802EAC34 002E6894 40 82 00 44 */ bne lbl_802EAC78
+/* 802EAC38 002E6898 3C 80 80 57 */ lis r4, lbl_80570EC0@ha
+/* 802EAC3C 002E689C 3C C0 80 2F */ lis r6, ReadCallbackFromReload@ha
+/* 802EAC40 002E68A0 38 84 0E C0 */ addi r4, r4, lbl_80570EC0@l
+/* 802EAC44 002E68A4 38 A0 00 01 */ li r5, 1
+/* 802EAC48 002E68A8 88 04 01 56 */ lbz r0, 0x156(r4)
+/* 802EAC4C 002E68AC 38 64 00 08 */ addi r3, r4, 8
+/* 802EAC50 002E68B0 98 A4 01 55 */ stb r5, 0x155(r4)
+/* 802EAC54 002E68B4 38 E4 00 94 */ addi r7, r4, 0x94
+/* 802EAC58 002E68B8 54 00 10 3A */ slwi r0, r0, 2
+/* 802EAC5C 002E68BC 38 C6 AC EC */ addi r6, r6, ReadCallbackFromReload@l
+/* 802EAC60 002E68C0 7C A4 02 14 */ add r5, r4, r0
+/* 802EAC64 002E68C4 80 85 01 68 */ lwz r4, 0x168(r5)
+/* 802EAC68 002E68C8 80 A5 01 70 */ lwz r5, 0x170(r5)
+/* 802EAC6C 002E68CC 4B FF CC BD */ bl NANDReadAsync
+/* 802EAC70 002E68D0 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAC74 002E68D4 41 82 00 64 */ beq lbl_802EACD8
+lbl_802EAC78:
+/* 802EAC78 002E68D8 3C 60 80 57 */ lis r3, lbl_80570EC0@ha
+/* 802EAC7C 002E68DC 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l
+/* 802EAC80 002E68E0 88 03 01 56 */ lbz r0, 0x156(r3)
+/* 802EAC84 002E68E4 2C 00 00 00 */ cmpwi r0, 0
+/* 802EAC88 002E68E8 40 82 00 08 */ bne lbl_802EAC90
+/* 802EAC8C 002E68EC 93 E3 01 5C */ stw r31, 0x15c(r3)
+lbl_802EAC90:
+/* 802EAC90 002E68F0 3C A0 80 57 */ lis r5, lbl_80570EC0@ha
+/* 802EAC94 002E68F4 38 80 00 00 */ li r4, 0
+/* 802EAC98 002E68F8 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l
+/* 802EAC9C 002E68FC 88 05 01 56 */ lbz r0, 0x156(r5)
+/* 802EACA0 002E6900 54 00 10 3A */ slwi r0, r0, 2
+/* 802EACA4 002E6904 7C 65 02 14 */ add r3, r5, r0
+/* 802EACA8 002E6908 90 83 01 78 */ stw r4, 0x178(r3)
+/* 802EACAC 002E690C 88 05 01 55 */ lbz r0, 0x155(r5)
+/* 802EACB0 002E6910 2C 00 00 00 */ cmpwi r0, 0
+/* 802EACB4 002E6914 41 82 00 20 */ beq lbl_802EACD4
+/* 802EACB8 002E6918 3C 80 80 2F */ lis r4, CloseCallbackFromReloadError@ha
+/* 802EACBC 002E691C 38 65 00 08 */ addi r3, r5, 8
+/* 802EACC0 002E6920 38 84 AF 9C */ addi r4, r4, CloseCallbackFromReloadError@l
+/* 802EACC4 002E6924 38 A5 00 94 */ addi r5, r5, 0x94
+/* 802EACC8 002E6928 4B FF DA 2D */ bl NANDCloseAsync
+/* 802EACCC 002E692C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EACD0 002E6930 41 82 00 08 */ beq lbl_802EACD8
+lbl_802EACD4:
+/* 802EACD4 002E6934 48 00 01 8D */ bl FinishFromReload
+lbl_802EACD8:
+/* 802EACD8 002E6938 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EACDC 002E693C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802EACE0 002E6940 7C 08 03 A6 */ mtlr r0
+/* 802EACE4 002E6944 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EACE8 002E6948 4E 80 00 20 */ blr
+
+ReadCallbackFromReload:
+/* 802EACEC 002E694C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EACF0 002E6950 7C 08 02 A6 */ mflr r0
+/* 802EACF4 002E6954 3C A0 80 57 */ lis r5, lbl_80570EC0@ha
+/* 802EACF8 002E6958 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EACFC 002E695C 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l
+/* 802EAD00 002E6960 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802EAD04 002E6964 7C 7F 1B 78 */ mr r31, r3
+/* 802EAD08 002E6968 88 05 01 56 */ lbz r0, 0x156(r5)
+/* 802EAD0C 002E696C 54 00 10 3A */ slwi r0, r0, 2
+/* 802EAD10 002E6970 7C 85 02 14 */ add r4, r5, r0
+/* 802EAD14 002E6974 80 04 01 70 */ lwz r0, 0x170(r4)
+/* 802EAD18 002E6978 7C 03 00 40 */ cmplw r3, r0
+/* 802EAD1C 002E697C 40 82 00 2C */ bne lbl_802EAD48
+/* 802EAD20 002E6980 90 64 01 78 */ stw r3, 0x178(r4)
+/* 802EAD24 002E6984 38 00 00 00 */ li r0, 0
+/* 802EAD28 002E6988 3C 80 80 2F */ lis r4, CloseCallbackFromReload@ha
+/* 802EAD2C 002E698C 38 65 00 08 */ addi r3, r5, 8
+/* 802EAD30 002E6990 98 05 01 55 */ stb r0, 0x155(r5)
+/* 802EAD34 002E6994 38 84 AD D4 */ addi r4, r4, CloseCallbackFromReload@l
+/* 802EAD38 002E6998 38 A5 00 94 */ addi r5, r5, 0x94
+/* 802EAD3C 002E699C 4B FF D9 B9 */ bl NANDCloseAsync
+/* 802EAD40 002E69A0 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAD44 002E69A4 41 82 00 7C */ beq lbl_802EADC0
+lbl_802EAD48:
+/* 802EAD48 002E69A8 3C 60 80 57 */ lis r3, lbl_80570EC0@ha
+/* 802EAD4C 002E69AC 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l
+/* 802EAD50 002E69B0 88 03 01 56 */ lbz r0, 0x156(r3)
+/* 802EAD54 002E69B4 2C 00 00 00 */ cmpwi r0, 0
+/* 802EAD58 002E69B8 40 82 00 20 */ bne lbl_802EAD78
+/* 802EAD5C 002E69BC 2C 1F 00 00 */ cmpwi r31, 0
+/* 802EAD60 002E69C0 38 00 FF 80 */ li r0, -128
+/* 802EAD64 002E69C4 41 82 00 08 */ beq lbl_802EAD6C
+/* 802EAD68 002E69C8 7F E0 FB 78 */ mr r0, r31
+lbl_802EAD6C:
+/* 802EAD6C 002E69CC 3C 60 80 57 */ lis r3, lbl_80570EC0@ha
+/* 802EAD70 002E69D0 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l
+/* 802EAD74 002E69D4 90 03 01 5C */ stw r0, 0x15c(r3)
+lbl_802EAD78:
+/* 802EAD78 002E69D8 3C A0 80 57 */ lis r5, lbl_80570EC0@ha
+/* 802EAD7C 002E69DC 38 80 00 00 */ li r4, 0
+/* 802EAD80 002E69E0 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l
+/* 802EAD84 002E69E4 88 05 01 56 */ lbz r0, 0x156(r5)
+/* 802EAD88 002E69E8 54 00 10 3A */ slwi r0, r0, 2
+/* 802EAD8C 002E69EC 7C 65 02 14 */ add r3, r5, r0
+/* 802EAD90 002E69F0 90 83 01 78 */ stw r4, 0x178(r3)
+/* 802EAD94 002E69F4 88 05 01 55 */ lbz r0, 0x155(r5)
+/* 802EAD98 002E69F8 2C 00 00 00 */ cmpwi r0, 0
+/* 802EAD9C 002E69FC 41 82 00 20 */ beq lbl_802EADBC
+/* 802EADA0 002E6A00 3C 80 80 2F */ lis r4, CloseCallbackFromReloadError@ha
+/* 802EADA4 002E6A04 38 65 00 08 */ addi r3, r5, 8
+/* 802EADA8 002E6A08 38 84 AF 9C */ addi r4, r4, CloseCallbackFromReloadError@l
+/* 802EADAC 002E6A0C 38 A5 00 94 */ addi r5, r5, 0x94
+/* 802EADB0 002E6A10 4B FF D9 45 */ bl NANDCloseAsync
+/* 802EADB4 002E6A14 2C 03 00 00 */ cmpwi r3, 0
+/* 802EADB8 002E6A18 41 82 00 08 */ beq lbl_802EADC0
+lbl_802EADBC:
+/* 802EADBC 002E6A1C 48 00 00 A5 */ bl FinishFromReload
+lbl_802EADC0:
+/* 802EADC0 002E6A20 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EADC4 002E6A24 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802EADC8 002E6A28 7C 08 03 A6 */ mtlr r0
+/* 802EADCC 002E6A2C 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EADD0 002E6A30 4E 80 00 20 */ blr
+
+CloseCallbackFromReload:
+/* 802EADD4 002E6A34 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EADD8 002E6A38 7C 08 02 A6 */ mflr r0
+/* 802EADDC 002E6A3C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EADE0 002E6A40 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EADE4 002E6A44 40 82 00 0C */ bne lbl_802EADF0
+/* 802EADE8 002E6A48 48 00 00 79 */ bl FinishFromReload
+/* 802EADEC 002E6A4C 48 00 00 64 */ b lbl_802EAE50
+lbl_802EADF0:
+/* 802EADF0 002E6A50 3C 80 80 57 */ lis r4, lbl_80570EC0@ha
+/* 802EADF4 002E6A54 38 84 0E C0 */ addi r4, r4, lbl_80570EC0@l
+/* 802EADF8 002E6A58 88 04 01 56 */ lbz r0, 0x156(r4)
+/* 802EADFC 002E6A5C 2C 00 00 00 */ cmpwi r0, 0
+/* 802EAE00 002E6A60 40 82 00 08 */ bne lbl_802EAE08
+/* 802EAE04 002E6A64 90 64 01 5C */ stw r3, 0x15c(r4)
+lbl_802EAE08:
+/* 802EAE08 002E6A68 3C A0 80 57 */ lis r5, lbl_80570EC0@ha
+/* 802EAE0C 002E6A6C 38 80 00 00 */ li r4, 0
+/* 802EAE10 002E6A70 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l
+/* 802EAE14 002E6A74 88 05 01 56 */ lbz r0, 0x156(r5)
+/* 802EAE18 002E6A78 54 00 10 3A */ slwi r0, r0, 2
+/* 802EAE1C 002E6A7C 7C 65 02 14 */ add r3, r5, r0
+/* 802EAE20 002E6A80 90 83 01 78 */ stw r4, 0x178(r3)
+/* 802EAE24 002E6A84 88 05 01 55 */ lbz r0, 0x155(r5)
+/* 802EAE28 002E6A88 2C 00 00 00 */ cmpwi r0, 0
+/* 802EAE2C 002E6A8C 41 82 00 20 */ beq lbl_802EAE4C
+/* 802EAE30 002E6A90 3C 80 80 2F */ lis r4, CloseCallbackFromReloadError@ha
+/* 802EAE34 002E6A94 38 65 00 08 */ addi r3, r5, 8
+/* 802EAE38 002E6A98 38 84 AF 9C */ addi r4, r4, CloseCallbackFromReloadError@l
+/* 802EAE3C 002E6A9C 38 A5 00 94 */ addi r5, r5, 0x94
+/* 802EAE40 002E6AA0 4B FF D8 B5 */ bl NANDCloseAsync
+/* 802EAE44 002E6AA4 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAE48 002E6AA8 41 82 00 08 */ beq lbl_802EAE50
+lbl_802EAE4C:
+/* 802EAE4C 002E6AAC 48 00 00 15 */ bl FinishFromReload
+lbl_802EAE50:
+/* 802EAE50 002E6AB0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EAE54 002E6AB4 7C 08 03 A6 */ mtlr r0
+/* 802EAE58 002E6AB8 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EAE5C 002E6ABC 4E 80 00 20 */ blr
+
+.global FinishFromReload
+FinishFromReload:
+/* 802EAE60 002E6AC0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802EAE64 002E6AC4 7C 08 02 A6 */ mflr r0
+/* 802EAE68 002E6AC8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802EAE6C 002E6ACC 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802EAE70 002E6AD0 3B E0 00 00 */ li r31, 0
+/* 802EAE74 002E6AD4 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802EAE78 002E6AD8 3F C0 80 2F */ lis r30, 0x802f
+/* 802EAE7C 002E6ADC 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802EAE80 002E6AE0 3F A0 80 57 */ lis r29, lbl_80570EC0@ha
+/* 802EAE84 002E6AE4 3B BD 0E C0 */ addi r29, r29, lbl_80570EC0@l
+/* 802EAE88 002E6AE8 93 81 00 10 */ stw r28, 0x10(r1)
+lbl_802EAE8C:
+/* 802EAE8C 002E6AEC 88 7D 01 56 */ lbz r3, 0x156(r29)
+/* 802EAE90 002E6AF0 38 63 00 01 */ addi r3, r3, 1
+/* 802EAE94 002E6AF4 54 60 06 3E */ clrlwi r0, r3, 0x18
+/* 802EAE98 002E6AF8 98 7D 01 56 */ stb r3, 0x156(r29)
+/* 802EAE9C 002E6AFC 28 00 00 02 */ cmplwi r0, 2
+/* 802EAEA0 002E6B00 40 80 00 34 */ bge lbl_802EAED4
+/* 802EAEA4 002E6B04 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d
+/* 802EAEA8 002E6B08 9B FD 01 55 */ stb r31, 0x155(r29)
+/* 802EAEAC 002E6B0C 7C 7D 02 14 */ add r3, r29, r0
+/* 802EAEB0 002E6B10 38 9D 00 08 */ addi r4, r29, 8
+/* 802EAEB4 002E6B14 80 63 01 60 */ lwz r3, 0x160(r3)
+/* 802EAEB8 002E6B18 38 DE AC 1C */ addi r6, r30, -21476
+/* 802EAEBC 002E6B1C 38 FD 00 94 */ addi r7, r29, 0x94
+/* 802EAEC0 002E6B20 38 A0 00 01 */ li r5, 1
+/* 802EAEC4 002E6B24 4B FF D6 D5 */ bl NANDPrivateOpenAsync
+/* 802EAEC8 002E6B28 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAECC 002E6B2C 40 82 FF C0 */ bne lbl_802EAE8C
+/* 802EAED0 002E6B30 48 00 00 AC */ b lbl_802EAF7C
+lbl_802EAED4:
+/* 802EAED4 002E6B34 80 1D 01 5C */ lwz r0, 0x15c(r29)
+/* 802EAED8 002E6B38 2C 00 00 00 */ cmpwi r0, 0
+/* 802EAEDC 002E6B3C 41 82 00 14 */ beq lbl_802EAEF0
+/* 802EAEE0 002E6B40 40 80 00 18 */ bge lbl_802EAEF8
+/* 802EAEE4 002E6B44 2C 00 FF F4 */ cmpwi r0, -12
+/* 802EAEE8 002E6B48 41 82 00 10 */ beq lbl_802EAEF8
+/* 802EAEEC 002E6B4C 48 00 00 0C */ b lbl_802EAEF8
+lbl_802EAEF0:
+/* 802EAEF0 002E6B50 3B 80 00 03 */ li r28, 3
+/* 802EAEF4 002E6B54 48 00 00 54 */ b lbl_802EAF48
+lbl_802EAEF8:
+/* 802EAEF8 002E6B58 3F C0 80 57 */ lis r30, lbl_80570EC0@ha
+/* 802EAEFC 002E6B5C 38 80 00 00 */ li r4, 0
+/* 802EAF00 002E6B60 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l
+/* 802EAF04 002E6B64 38 A0 40 00 */ li r5, 0x4000
+/* 802EAF08 002E6B68 83 BE 01 68 */ lwz r29, 0x168(r30)
+/* 802EAF0C 002E6B6C 7F A3 EB 78 */ mr r3, r29
+/* 802EAF10 002E6B70 4B D1 91 F5 */ bl memset
+/* 802EAF14 002E6B74 7F A3 EB 78 */ mr r3, r29
+/* 802EAF18 002E6B78 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_
+/* 802EAF1C 002E6B7C 38 A0 00 04 */ li r5, 4
+/* 802EAF20 002E6B80 4B D1 90 E1 */ bl memcpy
+/* 802EAF24 002E6B84 38 7D 3F FC */ addi r3, r29, 0x3ffc
+/* 802EAF28 002E6B88 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_
+/* 802EAF2C 002E6B8C 38 A0 00 04 */ li r5, 4
+/* 802EAF30 002E6B90 4B D1 90 D1 */ bl memcpy
+/* 802EAF34 002E6B94 38 00 00 08 */ li r0, 8
+/* 802EAF38 002E6B98 3B 80 00 03 */ li r28, 3
+/* 802EAF3C 002E6B9C B0 1D 00 06 */ sth r0, 6(r29)
+/* 802EAF40 002E6BA0 80 1E 01 70 */ lwz r0, 0x170(r30)
+/* 802EAF44 002E6BA4 90 1E 01 78 */ stw r0, 0x178(r30)
+lbl_802EAF48:
+/* 802EAF48 002E6BA8 3B C0 00 00 */ li r30, 0
+/* 802EAF4C 002E6BAC 3C 60 80 00 */ lis r3, 0x800038FF@ha
+/* 802EAF50 002E6BB0 3F E0 80 57 */ lis r31, lbl_80570EC0@ha
+/* 802EAF54 002E6BB4 9B C3 38 FF */ stb r30, 0x800038FF@l(r3)
+/* 802EAF58 002E6BB8 3B FF 0E C0 */ addi r31, r31, lbl_80570EC0@l
+/* 802EAF5C 002E6BBC 81 9F 01 58 */ lwz r12, 0x158(r31)
+/* 802EAF60 002E6BC0 2C 0C 00 00 */ cmpwi r12, 0
+/* 802EAF64 002E6BC4 41 82 00 14 */ beq lbl_802EAF78
+/* 802EAF68 002E6BC8 80 7F 01 5C */ lwz r3, 0x15c(r31)
+/* 802EAF6C 002E6BCC 7D 89 03 A6 */ mtctr r12
+/* 802EAF70 002E6BD0 4E 80 04 21 */ bctrl
+/* 802EAF74 002E6BD4 93 DF 01 58 */ stw r30, 0x158(r31)
+lbl_802EAF78:
+/* 802EAF78 002E6BD8 9B 8D AF 10 */ stb r28, lbl_806401D0-_SDA_BASE_(r13)
+lbl_802EAF7C:
+/* 802EAF7C 002E6BDC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802EAF80 002E6BE0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802EAF84 002E6BE4 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802EAF88 002E6BE8 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802EAF8C 002E6BEC 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802EAF90 002E6BF0 7C 08 03 A6 */ mtlr r0
+/* 802EAF94 002E6BF4 38 21 00 20 */ addi r1, r1, 0x20
+/* 802EAF98 002E6BF8 4E 80 00 20 */ blr
+
+CloseCallbackFromReloadError:
+/* 802EAF9C 002E6BFC 4B FF FE C4 */ b FinishFromReload
+
+.global ParseConfBuf
+ParseConfBuf:
+/* 802EAFA0 002E6C00 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 802EAFA4 002E6C04 7C 08 02 A6 */ mflr r0
+/* 802EAFA8 002E6C08 90 01 00 64 */ stw r0, 0x64(r1)
+/* 802EAFAC 002E6C0C 39 61 00 60 */ addi r11, r1, 0x60
+/* 802EAFB0 002E6C10 4B ED C1 61 */ bl _savegpr_21
+/* 802EAFB4 002E6C14 28 04 00 0C */ cmplwi r4, 0xc
+/* 802EAFB8 002E6C18 3F 60 80 44 */ lis r27, lbl_804458F8@ha
+/* 802EAFBC 002E6C1C 7C 79 1B 78 */ mr r25, r3
+/* 802EAFC0 002E6C20 7C 9A 23 78 */ mr r26, r4
+/* 802EAFC4 002E6C24 3B 7B 58 F8 */ addi r27, r27, lbl_804458F8@l
+/* 802EAFC8 002E6C28 41 80 02 08 */ blt lbl_802EB1D0
+/* 802EAFCC 002E6C2C 28 04 40 00 */ cmplwi r4, 0x4000
+/* 802EAFD0 002E6C30 41 81 02 00 */ bgt lbl_802EB1D0
+/* 802EAFD4 002E6C34 38 00 00 23 */ li r0, 0x23
+/* 802EAFD8 002E6C38 7F E3 22 14 */ add r31, r3, r4
+/* 802EAFDC 002E6C3C 90 0D AF 1C */ stw r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EAFE0 002E6C40 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_
+/* 802EAFE4 002E6C44 38 A0 00 04 */ li r5, 4
+/* 802EAFE8 002E6C48 3B FF FF FC */ addi r31, r31, -4
+/* 802EAFEC 002E6C4C 4B ED F3 AD */ bl memcmp
+/* 802EAFF0 002E6C50 2C 03 00 00 */ cmpwi r3, 0
+/* 802EAFF4 002E6C54 40 82 01 DC */ bne lbl_802EB1D0
+/* 802EAFF8 002E6C58 7F E3 FB 78 */ mr r3, r31
+/* 802EAFFC 002E6C5C 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_
+/* 802EB000 002E6C60 38 A0 00 04 */ li r5, 4
+/* 802EB004 002E6C64 4B ED F3 95 */ bl memcmp
+/* 802EB008 002E6C68 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB00C 002E6C6C 40 82 01 C4 */ bne lbl_802EB1D0
+/* 802EB010 002E6C70 28 1A 40 00 */ cmplwi r26, 0x4000
+/* 802EB014 002E6C74 40 80 00 2C */ bge lbl_802EB040
+/* 802EB018 002E6C78 22 DA 40 00 */ subfic r22, r26, 0x4000
+/* 802EB01C 002E6C7C 7F E3 FB 78 */ mr r3, r31
+/* 802EB020 002E6C80 7E C5 B3 78 */ mr r5, r22
+/* 802EB024 002E6C84 38 80 00 00 */ li r4, 0
+/* 802EB028 002E6C88 4B D1 90 DD */ bl memset
+/* 802EB02C 002E6C8C 7F FF B2 14 */ add r31, r31, r22
+/* 802EB030 002E6C90 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_
+/* 802EB034 002E6C94 7F E3 FB 78 */ mr r3, r31
+/* 802EB038 002E6C98 38 A0 00 04 */ li r5, 4
+/* 802EB03C 002E6C9C 4B D1 8F C5 */ bl memcpy
+lbl_802EB040:
+/* 802EB040 002E6CA0 38 19 00 06 */ addi r0, r25, 6
+/* 802EB044 002E6CA4 7C 00 F8 40 */ cmplw r0, r31
+/* 802EB048 002E6CA8 40 81 00 0C */ ble lbl_802EB054
+/* 802EB04C 002E6CAC 38 00 00 00 */ li r0, 0
+/* 802EB050 002E6CB0 48 00 00 14 */ b lbl_802EB064
+lbl_802EB054:
+/* 802EB054 002E6CB4 88 79 00 04 */ lbz r3, 4(r25)
+/* 802EB058 002E6CB8 38 00 00 01 */ li r0, 1
+/* 802EB05C 002E6CBC 8B D9 00 05 */ lbz r30, 5(r25)
+/* 802EB060 002E6CC0 50 7E 44 2E */ rlwimi r30, r3, 8, 0x10, 0x17
+lbl_802EB064:
+/* 802EB064 002E6CC4 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB068 002E6CC8 41 82 01 68 */ beq lbl_802EB1D0
+/* 802EB06C 002E6CCC 3B B9 00 06 */ addi r29, r25, 6
+/* 802EB070 002E6CD0 57 C0 08 3C */ slwi r0, r30, 1
+/* 802EB074 002E6CD4 7C 7D 02 14 */ add r3, r29, r0
+/* 802EB078 002E6CD8 3A E0 00 00 */ li r23, 0
+/* 802EB07C 002E6CDC 38 03 00 02 */ addi r0, r3, 2
+/* 802EB080 002E6CE0 7F B8 EB 78 */ mr r24, r29
+/* 802EB084 002E6CE4 7F 99 00 50 */ subf r28, r25, r0
+/* 802EB088 002E6CE8 48 00 00 48 */ b lbl_802EB0D0
+lbl_802EB08C:
+/* 802EB08C 002E6CEC 7C 1C D0 40 */ cmplw r28, r26
+/* 802EB090 002E6CF0 41 81 01 40 */ bgt lbl_802EB1D0
+/* 802EB094 002E6CF4 7C 19 C0 50 */ subf r0, r25, r24
+/* 802EB098 002E6CF8 7C 00 D0 40 */ cmplw r0, r26
+/* 802EB09C 002E6CFC 41 81 01 34 */ bgt lbl_802EB1D0
+/* 802EB0A0 002E6D00 A0 18 00 00 */ lhz r0, 0(r24)
+/* 802EB0A4 002E6D04 7C 1C 00 40 */ cmplw r28, r0
+/* 802EB0A8 002E6D08 40 82 01 28 */ bne lbl_802EB1D0
+/* 802EB0AC 002E6D0C 7C 79 E2 14 */ add r3, r25, r28
+/* 802EB0B0 002E6D10 38 81 00 08 */ addi r4, r1, 8
+/* 802EB0B4 002E6D14 48 00 01 39 */ bl UnpackItem
+/* 802EB0B8 002E6D18 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB0BC 002E6D1C 41 82 01 14 */ beq lbl_802EB1D0
+/* 802EB0C0 002E6D20 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802EB0C4 002E6D24 3B 18 00 02 */ addi r24, r24, 2
+/* 802EB0C8 002E6D28 3A F7 00 01 */ addi r23, r23, 1
+/* 802EB0CC 002E6D2C 7F 9C 02 14 */ add r28, r28, r0
+lbl_802EB0D0:
+/* 802EB0D0 002E6D30 7C 17 F0 40 */ cmplw r23, r30
+/* 802EB0D4 002E6D34 41 80 FF B8 */ blt lbl_802EB08C
+/* 802EB0D8 002E6D38 7C 1C D0 40 */ cmplw r28, r26
+/* 802EB0DC 002E6D3C 41 81 00 F4 */ bgt lbl_802EB1D0
+/* 802EB0E0 002E6D40 56 E0 08 3C */ slwi r0, r23, 1
+/* 802EB0E4 002E6D44 7C 1D 02 2E */ lhzx r0, r29, r0
+/* 802EB0E8 002E6D48 7C 1C 00 40 */ cmplw r28, r0
+/* 802EB0EC 002E6D4C 40 82 00 E4 */ bne lbl_802EB1D0
+/* 802EB0F0 002E6D50 38 7F FF BC */ addi r3, r31, -68
+/* 802EB0F4 002E6D54 7C 19 E2 14 */ add r0, r25, r28
+/* 802EB0F8 002E6D58 7C 00 18 40 */ cmplw r0, r3
+/* 802EB0FC 002E6D5C 41 81 00 D4 */ bgt lbl_802EB1D0
+/* 802EB100 002E6D60 7F 80 18 50 */ subf r28, r0, r3
+/* 802EB104 002E6D64 7C A3 F8 50 */ subf r5, r3, r31
+/* 802EB108 002E6D68 38 80 00 00 */ li r4, 0
+/* 802EB10C 002E6D6C 4B D1 8F F9 */ bl memset
+/* 802EB110 002E6D70 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB114 002E6D74 3B FF FF FE */ addi r31, r31, -2
+/* 802EB118 002E6D78 54 00 18 38 */ slwi r0, r0, 3
+/* 802EB11C 002E6D7C 7F 5B 02 14 */ add r26, r27, r0
+/* 802EB120 002E6D80 48 00 00 84 */ b lbl_802EB1A4
+lbl_802EB124:
+/* 802EB124 002E6D84 7E C3 B3 78 */ mr r3, r22
+/* 802EB128 002E6D88 4B ED BA 3D */ bl strlen
+/* 802EB12C 002E6D8C 7C 75 1B 78 */ mr r21, r3
+/* 802EB130 002E6D90 7F B8 EB 78 */ mr r24, r29
+/* 802EB134 002E6D94 3A E0 00 00 */ li r23, 0
+/* 802EB138 002E6D98 48 00 00 60 */ b lbl_802EB198
+lbl_802EB13C:
+/* 802EB13C 002E6D9C A0 18 00 00 */ lhz r0, 0(r24)
+/* 802EB140 002E6DA0 7C 99 02 14 */ add r4, r25, r0
+/* 802EB144 002E6DA4 7C 19 00 AE */ lbzx r0, r25, r0
+/* 802EB148 002E6DA8 54 03 06 FE */ clrlwi r3, r0, 0x1b
+/* 802EB14C 002E6DAC 38 03 00 01 */ addi r0, r3, 1
+/* 802EB150 002E6DB0 7C 15 00 40 */ cmplw r21, r0
+/* 802EB154 002E6DB4 40 82 00 3C */ bne lbl_802EB190
+/* 802EB158 002E6DB8 7E C3 B3 78 */ mr r3, r22
+/* 802EB15C 002E6DBC 7E A5 AB 78 */ mr r5, r21
+/* 802EB160 002E6DC0 38 84 00 01 */ addi r4, r4, 1
+/* 802EB164 002E6DC4 4B ED F2 35 */ bl memcmp
+/* 802EB168 002E6DC8 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB16C 002E6DCC 40 82 00 24 */ bne lbl_802EB190
+/* 802EB170 002E6DD0 80 1B 00 04 */ lwz r0, 4(r27)
+/* 802EB174 002E6DD4 56 E3 08 3C */ slwi r3, r23, 1
+/* 802EB178 002E6DD8 7C 7D 1A 14 */ add r3, r29, r3
+/* 802EB17C 002E6DDC 7C 00 00 D0 */ neg r0, r0
+/* 802EB180 002E6DE0 7C 79 18 50 */ subf r3, r25, r3
+/* 802EB184 002E6DE4 54 00 08 3C */ slwi r0, r0, 1
+/* 802EB188 002E6DE8 7C 7F 03 2E */ sthx r3, r31, r0
+/* 802EB18C 002E6DEC 48 00 00 14 */ b lbl_802EB1A0
+lbl_802EB190:
+/* 802EB190 002E6DF0 3B 18 00 02 */ addi r24, r24, 2
+/* 802EB194 002E6DF4 3A F7 00 01 */ addi r23, r23, 1
+lbl_802EB198:
+/* 802EB198 002E6DF8 7C 17 F0 40 */ cmplw r23, r30
+/* 802EB19C 002E6DFC 41 80 FF A0 */ blt lbl_802EB13C
+lbl_802EB1A0:
+/* 802EB1A0 002E6E00 3B 7B 00 08 */ addi r27, r27, 8
+lbl_802EB1A4:
+/* 802EB1A4 002E6E04 7C 1B D0 40 */ cmplw r27, r26
+/* 802EB1A8 002E6E08 40 80 00 10 */ bge lbl_802EB1B8
+/* 802EB1AC 002E6E0C 82 DB 00 00 */ lwz r22, 0(r27)
+/* 802EB1B0 002E6E10 2C 16 00 00 */ cmpwi r22, 0
+/* 802EB1B4 002E6E14 40 82 FF 70 */ bne lbl_802EB124
+lbl_802EB1B8:
+/* 802EB1B8 002E6E18 7C 19 F8 50 */ subf r0, r25, r31
+/* 802EB1BC 002E6E1C 93 CD AF 18 */ stw r30, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB1C0 002E6E20 38 60 00 00 */ li r3, 0
+/* 802EB1C4 002E6E24 90 0D AF 20 */ stw r0, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB1C8 002E6E28 93 8D AF 14 */ stw r28, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EB1CC 002E6E2C 48 00 00 08 */ b lbl_802EB1D4
+lbl_802EB1D0:
+/* 802EB1D0 002E6E30 38 60 00 02 */ li r3, 2
+lbl_802EB1D4:
+/* 802EB1D4 002E6E34 39 61 00 60 */ addi r11, r1, 0x60
+/* 802EB1D8 002E6E38 4B ED BF 85 */ bl _restgpr_21
+/* 802EB1DC 002E6E3C 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 802EB1E0 002E6E40 7C 08 03 A6 */ mtlr r0
+/* 802EB1E4 002E6E44 38 21 00 60 */ addi r1, r1, 0x60
+/* 802EB1E8 002E6E48 4E 80 00 20 */ blr
+
+.global UnpackItem
+UnpackItem:
+/* 802EB1EC 002E6E4C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EB1F0 002E6E50 7C 08 02 A6 */ mflr r0
+/* 802EB1F4 002E6E54 38 A0 00 20 */ li r5, 0x20
+/* 802EB1F8 002E6E58 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EB1FC 002E6E5C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802EB200 002E6E60 7C 9F 23 78 */ mr r31, r4
+/* 802EB204 002E6E64 38 80 00 00 */ li r4, 0
+/* 802EB208 002E6E68 93 C1 00 08 */ stw r30, 8(r1)
+/* 802EB20C 002E6E6C 7C 7E 1B 78 */ mr r30, r3
+/* 802EB210 002E6E70 7F E3 FB 78 */ mr r3, r31
+/* 802EB214 002E6E74 4B D1 8E F1 */ bl memset
+/* 802EB218 002E6E78 88 9E 00 00 */ lbz r4, 0(r30)
+/* 802EB21C 002E6E7C 38 1E 00 01 */ addi r0, r30, 1
+/* 802EB220 002E6E80 90 1F 00 14 */ stw r0, 0x14(r31)
+/* 802EB224 002E6E84 54 83 06 FE */ clrlwi r3, r4, 0x1b
+/* 802EB228 002E6E88 54 86 06 34 */ rlwinm r6, r4, 0, 0x18, 0x1a
+/* 802EB22C 002E6E8C 38 03 00 01 */ addi r0, r3, 1
+/* 802EB230 002E6E90 7C 7E 02 14 */ add r3, r30, r0
+/* 802EB234 002E6E94 2C 06 00 80 */ cmpwi r6, 0x80
+/* 802EB238 002E6E98 38 63 00 01 */ addi r3, r3, 1
+/* 802EB23C 002E6E9C 90 1F 00 0C */ stw r0, 0xc(r31)
+/* 802EB240 002E6EA0 90 7F 00 18 */ stw r3, 0x18(r31)
+/* 802EB244 002E6EA4 41 82 00 5C */ beq lbl_802EB2A0
+/* 802EB248 002E6EA8 40 80 00 28 */ bge lbl_802EB270
+/* 802EB24C 002E6EAC 2C 06 00 40 */ cmpwi r6, 0x40
+/* 802EB250 002E6EB0 41 82 00 74 */ beq lbl_802EB2C4
+/* 802EB254 002E6EB4 40 80 00 10 */ bge lbl_802EB264
+/* 802EB258 002E6EB8 2C 06 00 20 */ cmpwi r6, 0x20
+/* 802EB25C 002E6EBC 41 82 00 8C */ beq lbl_802EB2E8
+/* 802EB260 002E6EC0 48 00 00 FC */ b lbl_802EB35C
+lbl_802EB264:
+/* 802EB264 002E6EC4 2C 06 00 60 */ cmpwi r6, 0x60
+/* 802EB268 002E6EC8 41 82 00 2C */ beq lbl_802EB294
+/* 802EB26C 002E6ECC 48 00 00 F0 */ b lbl_802EB35C
+lbl_802EB270:
+/* 802EB270 002E6ED0 2C 06 00 C0 */ cmpwi r6, 0xc0
+/* 802EB274 002E6ED4 41 82 00 44 */ beq lbl_802EB2B8
+/* 802EB278 002E6ED8 40 80 00 10 */ bge lbl_802EB288
+/* 802EB27C 002E6EDC 2C 06 00 A0 */ cmpwi r6, 0xa0
+/* 802EB280 002E6EE0 41 82 00 2C */ beq lbl_802EB2AC
+/* 802EB284 002E6EE4 48 00 00 D8 */ b lbl_802EB35C
+lbl_802EB288:
+/* 802EB288 002E6EE8 2C 06 00 E0 */ cmpwi r6, 0xe0
+/* 802EB28C 002E6EEC 41 82 00 08 */ beq lbl_802EB294
+/* 802EB290 002E6EF0 48 00 00 CC */ b lbl_802EB35C
+lbl_802EB294:
+/* 802EB294 002E6EF4 38 00 00 01 */ li r0, 1
+/* 802EB298 002E6EF8 90 1F 00 10 */ stw r0, 0x10(r31)
+/* 802EB29C 002E6EFC 48 00 00 74 */ b lbl_802EB310
+lbl_802EB2A0:
+/* 802EB2A0 002E6F00 38 00 00 02 */ li r0, 2
+/* 802EB2A4 002E6F04 90 1F 00 10 */ stw r0, 0x10(r31)
+/* 802EB2A8 002E6F08 48 00 00 68 */ b lbl_802EB310
+lbl_802EB2AC:
+/* 802EB2AC 002E6F0C 38 00 00 04 */ li r0, 4
+/* 802EB2B0 002E6F10 90 1F 00 10 */ stw r0, 0x10(r31)
+/* 802EB2B4 002E6F14 48 00 00 5C */ b lbl_802EB310
+lbl_802EB2B8:
+/* 802EB2B8 002E6F18 38 00 00 08 */ li r0, 8
+/* 802EB2BC 002E6F1C 90 1F 00 10 */ stw r0, 0x10(r31)
+/* 802EB2C0 002E6F20 48 00 00 50 */ b lbl_802EB310
+lbl_802EB2C4:
+/* 802EB2C4 002E6F24 88 83 00 00 */ lbz r4, 0(r3)
+/* 802EB2C8 002E6F28 38 03 00 01 */ addi r0, r3, 1
+/* 802EB2CC 002E6F2C 80 7F 00 1C */ lwz r3, 0x1c(r31)
+/* 802EB2D0 002E6F30 38 84 00 01 */ addi r4, r4, 1
+/* 802EB2D4 002E6F34 90 1F 00 18 */ stw r0, 0x18(r31)
+/* 802EB2D8 002E6F38 38 03 00 01 */ addi r0, r3, 1
+/* 802EB2DC 002E6F3C 90 9F 00 10 */ stw r4, 0x10(r31)
+/* 802EB2E0 002E6F40 90 1F 00 1C */ stw r0, 0x1c(r31)
+/* 802EB2E4 002E6F44 48 00 00 2C */ b lbl_802EB310
+lbl_802EB2E8:
+/* 802EB2E8 002E6F48 88 A3 00 00 */ lbz r5, 0(r3)
+/* 802EB2EC 002E6F4C 38 03 00 02 */ addi r0, r3, 2
+/* 802EB2F0 002E6F50 88 83 00 01 */ lbz r4, 1(r3)
+/* 802EB2F4 002E6F54 50 A4 44 2E */ rlwimi r4, r5, 8, 0x10, 0x17
+/* 802EB2F8 002E6F58 80 7F 00 1C */ lwz r3, 0x1c(r31)
+/* 802EB2FC 002E6F5C 38 84 00 01 */ addi r4, r4, 1
+/* 802EB300 002E6F60 90 1F 00 18 */ stw r0, 0x18(r31)
+/* 802EB304 002E6F64 38 03 00 02 */ addi r0, r3, 2
+/* 802EB308 002E6F68 90 9F 00 10 */ stw r4, 0x10(r31)
+/* 802EB30C 002E6F6C 90 1F 00 1C */ stw r0, 0x1c(r31)
+lbl_802EB310:
+/* 802EB310 002E6F70 28 06 00 40 */ cmplwi r6, 0x40
+/* 802EB314 002E6F74 41 82 00 0C */ beq lbl_802EB320
+/* 802EB318 002E6F78 28 06 00 20 */ cmplwi r6, 0x20
+/* 802EB31C 002E6F7C 40 82 00 10 */ bne lbl_802EB32C
+lbl_802EB320:
+/* 802EB320 002E6F80 38 00 00 40 */ li r0, 0x40
+/* 802EB324 002E6F84 98 1F 00 09 */ stb r0, 9(r31)
+/* 802EB328 002E6F88 48 00 00 18 */ b lbl_802EB340
+lbl_802EB32C:
+/* 802EB32C 002E6F8C 98 DF 00 08 */ stb r6, 8(r31)
+/* 802EB330 002E6F90 7F E3 FB 78 */ mr r3, r31
+/* 802EB334 002E6F94 80 9F 00 18 */ lwz r4, 0x18(r31)
+/* 802EB338 002E6F98 80 BF 00 10 */ lwz r5, 0x10(r31)
+/* 802EB33C 002E6F9C 4B D1 8C C5 */ bl memcpy
+lbl_802EB340:
+/* 802EB340 002E6FA0 80 7F 00 0C */ lwz r3, 0xc(r31)
+/* 802EB344 002E6FA4 80 1F 00 10 */ lwz r0, 0x10(r31)
+/* 802EB348 002E6FA8 80 9F 00 1C */ lwz r4, 0x1c(r31)
+/* 802EB34C 002E6FAC 7C 03 02 14 */ add r0, r3, r0
+/* 802EB350 002E6FB0 7C 60 22 14 */ add r3, r0, r4
+/* 802EB354 002E6FB4 38 03 00 01 */ addi r0, r3, 1
+/* 802EB358 002E6FB8 90 1F 00 1C */ stw r0, 0x1c(r31)
+lbl_802EB35C:
+/* 802EB35C 002E6FBC 80 7F 00 10 */ lwz r3, 0x10(r31)
+/* 802EB360 002E6FC0 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802EB364 002E6FC4 7C 03 00 D0 */ neg r0, r3
+/* 802EB368 002E6FC8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802EB36C 002E6FCC 7C 00 1B 78 */ or r0, r0, r3
+/* 802EB370 002E6FD0 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 802EB374 002E6FD4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EB378 002E6FD8 7C 08 03 A6 */ mtlr r0
+/* 802EB37C 002E6FDC 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EB380 002E6FE0 4E 80 00 20 */ blr
+
+.global DeleteItemByID
+DeleteItemByID:
+/* 802EB384 002E6FE4 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802EB388 002E6FE8 7C 08 02 A6 */ mflr r0
+/* 802EB38C 002E6FEC 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802EB390 002E6FF0 39 61 00 30 */ addi r11, r1, 0x30
+/* 802EB394 002E6FF4 4B ED BD 89 */ bl _savegpr_24
+/* 802EB398 002E6FF8 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB39C 002E6FFC 3F E0 80 57 */ lis r31, lbl_80571060@ha
+/* 802EB3A0 002E7000 3B FF 10 60 */ addi r31, r31, lbl_80571060@l
+/* 802EB3A4 002E7004 7C 03 00 40 */ cmplw r3, r0
+/* 802EB3A8 002E7008 40 80 01 54 */ bge lbl_802EB4FC
+/* 802EB3AC 002E700C 80 8D AF 20 */ lwz r4, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB3B0 002E7010 2C 04 00 00 */ cmpwi r4, 0
+/* 802EB3B4 002E7014 41 82 01 48 */ beq lbl_802EB4FC
+/* 802EB3B8 002E7018 7C 03 00 D0 */ neg r0, r3
+/* 802EB3BC 002E701C 7F 9F 22 14 */ add r28, r31, r4
+/* 802EB3C0 002E7020 54 00 08 3C */ slwi r0, r0, 1
+/* 802EB3C4 002E7024 7F DC 02 2E */ lhzx r30, r28, r0
+/* 802EB3C8 002E7028 2C 1E 00 00 */ cmpwi r30, 0
+/* 802EB3CC 002E702C 41 82 01 30 */ beq lbl_802EB4FC
+/* 802EB3D0 002E7030 80 0D AF 18 */ lwz r0, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB3D4 002E7034 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB3D8 002E7038 41 82 01 24 */ beq lbl_802EB4FC
+/* 802EB3DC 002E703C 7F 7F F2 14 */ add r27, r31, r30
+/* 802EB3E0 002E7040 3B 3F 00 06 */ addi r25, r31, 6
+/* 802EB3E4 002E7044 54 00 08 3C */ slwi r0, r0, 1
+/* 802EB3E8 002E7048 7C BF F2 2E */ lhzx r5, r31, r30
+/* 802EB3EC 002E704C 7F 19 02 14 */ add r24, r25, r0
+/* 802EB3F0 002E7050 A0 7B 00 02 */ lhz r3, 2(r27)
+/* 802EB3F4 002E7054 7F 64 DB 78 */ mr r4, r27
+/* 802EB3F8 002E7058 38 1E 00 02 */ addi r0, r30, 2
+/* 802EB3FC 002E705C 7C C5 18 50 */ subf r6, r5, r3
+/* 802EB400 002E7060 A3 58 00 00 */ lhz r26, 0(r24)
+/* 802EB404 002E7064 7F 63 DB 78 */ mr r3, r27
+/* 802EB408 002E7068 7C A0 28 50 */ subf r5, r0, r5
+/* 802EB40C 002E706C 3B A6 00 02 */ addi r29, r6, 2
+/* 802EB410 002E7070 38 84 00 02 */ addi r4, r4, 2
+/* 802EB414 002E7074 4B ED EE 61 */ bl memmove
+/* 802EB418 002E7078 38 98 FF FE */ addi r4, r24, -2
+/* 802EB41C 002E707C 38 04 00 02 */ addi r0, r4, 2
+/* 802EB420 002E7080 7C 19 00 50 */ subf r0, r25, r0
+/* 802EB424 002E7084 54 00 F8 7E */ srwi r0, r0, 1
+/* 802EB428 002E7088 7C 09 03 A6 */ mtctr r0
+/* 802EB42C 002E708C 7C 04 C8 40 */ cmplw r4, r25
+/* 802EB430 002E7090 41 80 00 30 */ blt lbl_802EB460
+lbl_802EB434:
+/* 802EB434 002E7094 7C 04 D8 40 */ cmplw r4, r27
+/* 802EB438 002E7098 40 80 00 14 */ bge lbl_802EB44C
+/* 802EB43C 002E709C A0 64 00 00 */ lhz r3, 0(r4)
+/* 802EB440 002E70A0 38 03 FF FE */ addi r0, r3, -2
+/* 802EB444 002E70A4 B0 04 00 00 */ sth r0, 0(r4)
+/* 802EB448 002E70A8 48 00 00 10 */ b lbl_802EB458
+lbl_802EB44C:
+/* 802EB44C 002E70AC A0 04 00 00 */ lhz r0, 0(r4)
+/* 802EB450 002E70B0 7C 1D 00 50 */ subf r0, r29, r0
+/* 802EB454 002E70B4 B0 04 00 00 */ sth r0, 0(r4)
+lbl_802EB458:
+/* 802EB458 002E70B8 38 84 FF FE */ addi r4, r4, -2
+/* 802EB45C 002E70BC 42 00 FF D8 */ bdnz lbl_802EB434
+lbl_802EB460:
+/* 802EB460 002E70C0 A0 BB 00 00 */ lhz r5, 0(r27)
+/* 802EB464 002E70C4 7C 9F EA 14 */ add r4, r31, r29
+/* 802EB468 002E70C8 7C 05 EA 14 */ add r0, r5, r29
+/* 802EB46C 002E70CC 7C 7F 2A 14 */ add r3, r31, r5
+/* 802EB470 002E70D0 7C 85 22 14 */ add r4, r5, r4
+/* 802EB474 002E70D4 7C A0 D0 50 */ subf r5, r0, r26
+/* 802EB478 002E70D8 4B ED ED FD */ bl memmove
+/* 802EB47C 002E70DC 7C 1D D0 50 */ subf r0, r29, r26
+/* 802EB480 002E70E0 7F A5 EB 78 */ mr r5, r29
+/* 802EB484 002E70E4 7C 7F 02 14 */ add r3, r31, r0
+/* 802EB488 002E70E8 38 80 00 00 */ li r4, 0
+/* 802EB48C 002E70EC 4B D1 8C 79 */ bl memset
+/* 802EB490 002E70F0 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB494 002E70F4 38 C0 00 00 */ li r6, 0
+/* 802EB498 002E70F8 38 60 00 00 */ li r3, 0
+/* 802EB49C 002E70FC 7C 09 03 A6 */ mtctr r0
+/* 802EB4A0 002E7100 28 00 00 00 */ cmplwi r0, 0
+/* 802EB4A4 002E7104 40 81 00 34 */ ble lbl_802EB4D8
+lbl_802EB4A8:
+/* 802EB4A8 002E7108 7C 06 00 D0 */ neg r0, r6
+/* 802EB4AC 002E710C 54 05 08 3C */ slwi r5, r0, 1
+/* 802EB4B0 002E7110 7C 9C 2A 2E */ lhzx r4, r28, r5
+/* 802EB4B4 002E7114 7C 04 F0 40 */ cmplw r4, r30
+/* 802EB4B8 002E7118 41 80 00 18 */ blt lbl_802EB4D0
+/* 802EB4BC 002E711C 40 81 00 10 */ ble lbl_802EB4CC
+/* 802EB4C0 002E7120 38 04 FF FE */ addi r0, r4, -2
+/* 802EB4C4 002E7124 7C 1C 2B 2E */ sthx r0, r28, r5
+/* 802EB4C8 002E7128 48 00 00 08 */ b lbl_802EB4D0
+lbl_802EB4CC:
+/* 802EB4CC 002E712C 7C 7C 2B 2E */ sthx r3, r28, r5
+lbl_802EB4D0:
+/* 802EB4D0 002E7130 38 C6 00 01 */ addi r6, r6, 1
+/* 802EB4D4 002E7134 42 00 FF D4 */ bdnz lbl_802EB4A8
+lbl_802EB4D8:
+/* 802EB4D8 002E7138 80 8D AF 14 */ lwz r4, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EB4DC 002E713C 38 00 00 01 */ li r0, 1
+/* 802EB4E0 002E7140 80 6D AF 18 */ lwz r3, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB4E4 002E7144 7C 84 EA 14 */ add r4, r4, r29
+/* 802EB4E8 002E7148 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+/* 802EB4EC 002E714C 38 03 FF FF */ addi r0, r3, -1
+/* 802EB4F0 002E7150 90 8D AF 14 */ stw r4, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EB4F4 002E7154 90 0D AF 18 */ stw r0, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB4F8 002E7158 B0 1F 00 04 */ sth r0, 4(r31)
+lbl_802EB4FC:
+/* 802EB4FC 002E715C 39 61 00 30 */ addi r11, r1, 0x30
+/* 802EB500 002E7160 4B ED BC 69 */ bl _restgpr_24
+/* 802EB504 002E7164 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802EB508 002E7168 7C 08 03 A6 */ mtlr r0
+/* 802EB50C 002E716C 38 21 00 30 */ addi r1, r1, 0x30
+/* 802EB510 002E7170 4E 80 00 20 */ blr
+
+.global CreateItemByID
+CreateItemByID:
+/* 802EB514 002E7174 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802EB518 002E7178 7C 08 02 A6 */ mflr r0
+/* 802EB51C 002E717C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802EB520 002E7180 39 61 00 30 */ addi r11, r1, 0x30
+/* 802EB524 002E7184 4B ED BB F1 */ bl _savegpr_22
+/* 802EB528 002E7188 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB52C 002E718C 3F E0 80 57 */ lis r31, lbl_80571060@ha
+/* 802EB530 002E7190 3C E0 80 44 */ lis r7, lbl_804458F8@ha
+/* 802EB534 002E7194 7C 77 1B 78 */ mr r23, r3
+/* 802EB538 002E7198 7C 03 00 40 */ cmplw r3, r0
+/* 802EB53C 002E719C 7C 98 23 78 */ mr r24, r4
+/* 802EB540 002E71A0 7C B9 2B 78 */ mr r25, r5
+/* 802EB544 002E71A4 7C DA 33 78 */ mr r26, r6
+/* 802EB548 002E71A8 3B FF 10 60 */ addi r31, r31, lbl_80571060@l
+/* 802EB54C 002E71AC 38 E7 58 F8 */ addi r7, r7, lbl_804458F8@l
+/* 802EB550 002E71B0 3B A0 00 01 */ li r29, 1
+/* 802EB554 002E71B4 40 80 02 1C */ bge lbl_802EB770
+/* 802EB558 002E71B8 38 00 00 00 */ li r0, 0
+/* 802EB55C 002E71BC 7C 05 00 40 */ cmplw r5, r0
+/* 802EB560 002E71C0 41 82 02 10 */ beq lbl_802EB770
+/* 802EB564 002E71C4 80 0D AF 18 */ lwz r0, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB568 002E71C8 28 00 FF FF */ cmplwi r0, 0xffff
+/* 802EB56C 002E71CC 40 80 02 04 */ bge lbl_802EB770
+/* 802EB570 002E71D0 80 0D AF 20 */ lwz r0, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB574 002E71D4 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB578 002E71D8 41 82 01 F8 */ beq lbl_802EB770
+/* 802EB57C 002E71DC 2C 04 00 A0 */ cmpwi r4, 0xa0
+/* 802EB580 002E71E0 41 82 00 54 */ beq lbl_802EB5D4
+/* 802EB584 002E71E4 40 80 00 28 */ bge lbl_802EB5AC
+/* 802EB588 002E71E8 2C 04 00 60 */ cmpwi r4, 0x60
+/* 802EB58C 002E71EC 41 82 00 38 */ beq lbl_802EB5C4
+/* 802EB590 002E71F0 40 80 00 10 */ bge lbl_802EB5A0
+/* 802EB594 002E71F4 2C 04 00 40 */ cmpwi r4, 0x40
+/* 802EB598 002E71F8 41 82 00 4C */ beq lbl_802EB5E4
+/* 802EB59C 002E71FC 48 00 01 D4 */ b lbl_802EB770
+lbl_802EB5A0:
+/* 802EB5A0 002E7200 2C 04 00 80 */ cmpwi r4, 0x80
+/* 802EB5A4 002E7204 41 82 00 28 */ beq lbl_802EB5CC
+/* 802EB5A8 002E7208 48 00 01 C8 */ b lbl_802EB770
+lbl_802EB5AC:
+/* 802EB5AC 002E720C 2C 04 00 E0 */ cmpwi r4, 0xe0
+/* 802EB5B0 002E7210 41 82 00 14 */ beq lbl_802EB5C4
+/* 802EB5B4 002E7214 40 80 01 BC */ bge lbl_802EB770
+/* 802EB5B8 002E7218 2C 04 00 C0 */ cmpwi r4, 0xc0
+/* 802EB5BC 002E721C 41 82 00 20 */ beq lbl_802EB5DC
+/* 802EB5C0 002E7220 48 00 01 B0 */ b lbl_802EB770
+lbl_802EB5C4:
+/* 802EB5C4 002E7224 3B 40 00 01 */ li r26, 1
+/* 802EB5C8 002E7228 48 00 00 48 */ b lbl_802EB610
+lbl_802EB5CC:
+/* 802EB5CC 002E722C 3B 40 00 02 */ li r26, 2
+/* 802EB5D0 002E7230 48 00 00 40 */ b lbl_802EB610
+lbl_802EB5D4:
+/* 802EB5D4 002E7234 3B 40 00 04 */ li r26, 4
+/* 802EB5D8 002E7238 48 00 00 38 */ b lbl_802EB610
+lbl_802EB5DC:
+/* 802EB5DC 002E723C 3B 40 00 08 */ li r26, 8
+/* 802EB5E0 002E7240 48 00 00 30 */ b lbl_802EB610
+lbl_802EB5E4:
+/* 802EB5E4 002E7244 2C 06 00 00 */ cmpwi r6, 0
+/* 802EB5E8 002E7248 41 82 01 88 */ beq lbl_802EB770
+/* 802EB5EC 002E724C 3C 00 00 01 */ lis r0, 1
+/* 802EB5F0 002E7250 7C 06 00 40 */ cmplw r6, r0
+/* 802EB5F4 002E7254 41 81 01 7C */ bgt lbl_802EB770
+/* 802EB5F8 002E7258 28 06 01 00 */ cmplwi r6, 0x100
+/* 802EB5FC 002E725C 40 81 00 10 */ ble lbl_802EB60C
+/* 802EB600 002E7260 3B 00 00 20 */ li r24, 0x20
+/* 802EB604 002E7264 3B A0 00 03 */ li r29, 3
+/* 802EB608 002E7268 48 00 00 08 */ b lbl_802EB610
+lbl_802EB60C:
+/* 802EB60C 002E726C 3B A0 00 02 */ li r29, 2
+lbl_802EB610:
+/* 802EB610 002E7270 7F BD D2 14 */ add r29, r29, r26
+/* 802EB614 002E7274 38 00 00 00 */ li r0, 0
+/* 802EB618 002E7278 48 00 00 14 */ b lbl_802EB62C
+lbl_802EB61C:
+/* 802EB61C 002E727C 80 87 00 04 */ lwz r4, 4(r7)
+/* 802EB620 002E7280 7C 04 18 00 */ cmpw r4, r3
+/* 802EB624 002E7284 41 82 00 14 */ beq lbl_802EB638
+/* 802EB628 002E7288 38 E7 00 08 */ addi r7, r7, 8
+lbl_802EB62C:
+/* 802EB62C 002E728C 83 87 00 00 */ lwz r28, 0(r7)
+/* 802EB630 002E7290 7C 1C 00 40 */ cmplw r28, r0
+/* 802EB634 002E7294 40 82 FF E8 */ bne lbl_802EB61C
+lbl_802EB638:
+/* 802EB638 002E7298 38 00 00 00 */ li r0, 0
+/* 802EB63C 002E729C 7C 1C 00 40 */ cmplw r28, r0
+/* 802EB640 002E72A0 41 82 01 30 */ beq lbl_802EB770
+/* 802EB644 002E72A4 7F 83 E3 78 */ mr r3, r28
+/* 802EB648 002E72A8 4B ED B5 1D */ bl strlen
+/* 802EB64C 002E72AC 28 03 00 20 */ cmplwi r3, 0x20
+/* 802EB650 002E72B0 7C 7E 1B 78 */ mr r30, r3
+/* 802EB654 002E72B4 41 81 01 1C */ bgt lbl_802EB770
+/* 802EB658 002E72B8 7F BD 1A 14 */ add r29, r29, r3
+/* 802EB65C 002E72BC 80 6D AF 14 */ lwz r3, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EB660 002E72C0 38 1D 00 02 */ addi r0, r29, 2
+/* 802EB664 002E72C4 7C 03 00 40 */ cmplw r3, r0
+/* 802EB668 002E72C8 41 80 01 08 */ blt lbl_802EB770
+/* 802EB66C 002E72CC 80 6D AF 18 */ lwz r3, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB670 002E72D0 3A DF 00 06 */ addi r22, r31, 6
+/* 802EB674 002E72D4 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802EB678 002E72D8 54 63 08 3C */ slwi r3, r3, 1
+/* 802EB67C 002E72DC 7C B6 1A 2E */ lhzx r5, r22, r3
+/* 802EB680 002E72E0 7C 80 FA 14 */ add r4, r0, r31
+/* 802EB684 002E72E4 7F 76 1A 14 */ add r27, r22, r3
+/* 802EB688 002E72E8 38 64 00 02 */ addi r3, r4, 2
+/* 802EB68C 002E72EC 7C A0 28 50 */ subf r5, r0, r5
+/* 802EB690 002E72F0 4B ED EB E5 */ bl memmove
+lbl_802EB694:
+/* 802EB694 002E72F4 A0 76 00 00 */ lhz r3, 0(r22)
+/* 802EB698 002E72F8 38 03 00 02 */ addi r0, r3, 2
+/* 802EB69C 002E72FC B0 16 00 00 */ sth r0, 0(r22)
+/* 802EB6A0 002E7300 3A D6 00 02 */ addi r22, r22, 2
+/* 802EB6A4 002E7304 7C 16 D8 40 */ cmplw r22, r27
+/* 802EB6A8 002E7308 40 81 FF EC */ ble lbl_802EB694
+/* 802EB6AC 002E730C A0 BB 00 00 */ lhz r5, 0(r27)
+/* 802EB6B0 002E7310 38 1E FF FF */ addi r0, r30, -1
+/* 802EB6B4 002E7314 7F 84 E3 78 */ mr r4, r28
+/* 802EB6B8 002E7318 7F 9F 2A 14 */ add r28, r31, r5
+/* 802EB6BC 002E731C 7F 00 03 78 */ or r0, r24, r0
+/* 802EB6C0 002E7320 98 1C 00 00 */ stb r0, 0(r28)
+/* 802EB6C4 002E7324 7F C5 F3 78 */ mr r5, r30
+/* 802EB6C8 002E7328 38 7C 00 01 */ addi r3, r28, 1
+/* 802EB6CC 002E732C 4B D1 89 35 */ bl memcpy
+/* 802EB6D0 002E7330 28 18 00 40 */ cmplwi r24, 0x40
+/* 802EB6D4 002E7334 7C 7E E2 14 */ add r3, r30, r28
+/* 802EB6D8 002E7338 3B 83 00 01 */ addi r28, r3, 1
+/* 802EB6DC 002E733C 40 82 00 14 */ bne lbl_802EB6F0
+/* 802EB6E0 002E7340 38 1A FF FF */ addi r0, r26, -1
+/* 802EB6E4 002E7344 98 1C 00 00 */ stb r0, 0(r28)
+/* 802EB6E8 002E7348 3B 9C 00 01 */ addi r28, r28, 1
+/* 802EB6EC 002E734C 48 00 00 20 */ b lbl_802EB70C
+lbl_802EB6F0:
+/* 802EB6F0 002E7350 28 18 00 20 */ cmplwi r24, 0x20
+/* 802EB6F4 002E7354 40 82 00 18 */ bne lbl_802EB70C
+/* 802EB6F8 002E7358 38 7A FF FF */ addi r3, r26, -1
+/* 802EB6FC 002E735C 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f
+/* 802EB700 002E7360 98 1C 00 00 */ stb r0, 0(r28)
+/* 802EB704 002E7364 98 7C 00 01 */ stb r3, 1(r28)
+/* 802EB708 002E7368 3B 9C 00 02 */ addi r28, r28, 2
+lbl_802EB70C:
+/* 802EB70C 002E736C 7F 83 E3 78 */ mr r3, r28
+/* 802EB710 002E7370 7F 24 CB 78 */ mr r4, r25
+/* 802EB714 002E7374 7F 45 D3 78 */ mr r5, r26
+/* 802EB718 002E7378 4B D1 88 E9 */ bl memcpy
+/* 802EB71C 002E737C 80 AD AF 20 */ lwz r5, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB720 002E7380 38 00 00 01 */ li r0, 1
+/* 802EB724 002E7384 7C 97 00 D0 */ neg r4, r23
+/* 802EB728 002E7388 7C DF D8 50 */ subf r6, r31, r27
+/* 802EB72C 002E738C 7C FF 2A 14 */ add r7, r31, r5
+/* 802EB730 002E7390 80 6D AF 18 */ lwz r3, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB734 002E7394 54 85 08 3C */ slwi r5, r4, 1
+/* 802EB738 002E7398 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+/* 802EB73C 002E739C 38 83 00 01 */ addi r4, r3, 1
+/* 802EB740 002E73A0 38 60 00 01 */ li r3, 1
+/* 802EB744 002E73A4 7C C7 2B 2E */ sthx r6, r7, r5
+/* 802EB748 002E73A8 38 DD 00 02 */ addi r6, r29, 2
+/* 802EB74C 002E73AC 80 AD AF 14 */ lwz r5, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EB750 002E73B0 A0 FB 00 00 */ lhz r7, 0(r27)
+/* 802EB754 002E73B4 7C A6 28 50 */ subf r5, r6, r5
+/* 802EB758 002E73B8 90 8D AF 18 */ stw r4, lbl_806401D8-_SDA_BASE_(r13)
+/* 802EB75C 002E73BC 7C C7 EA 14 */ add r6, r7, r29
+/* 802EB760 002E73C0 B0 DB 00 02 */ sth r6, 2(r27)
+/* 802EB764 002E73C4 90 AD AF 14 */ stw r5, lbl_806401D4-_SDA_BASE_(r13)
+/* 802EB768 002E73C8 B0 9F 00 04 */ sth r4, 4(r31)
+/* 802EB76C 002E73CC 48 00 00 08 */ b lbl_802EB774
+lbl_802EB770:
+/* 802EB770 002E73D0 38 60 00 00 */ li r3, 0
+lbl_802EB774:
+/* 802EB774 002E73D4 39 61 00 30 */ addi r11, r1, 0x30
+/* 802EB778 002E73D8 4B ED B9 E9 */ bl _restgpr_22
+/* 802EB77C 002E73DC 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802EB780 002E73E0 7C 08 03 A6 */ mtlr r0
+/* 802EB784 002E73E4 38 21 00 30 */ addi r1, r1, 0x30
+/* 802EB788 002E73E8 4E 80 00 20 */ blr
+
+.global SCFindByteArrayItem
+SCFindByteArrayItem:
+/* 802EB78C 002E73EC 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802EB790 002E73F0 7C 08 02 A6 */ mflr r0
+/* 802EB794 002E73F4 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802EB798 002E73F8 39 61 00 40 */ addi r11, r1, 0x40
+/* 802EB79C 002E73FC 4B ED B9 8D */ bl _savegpr_27
+/* 802EB7A0 002E7400 7C 7B 1B 78 */ mr r27, r3
+/* 802EB7A4 002E7404 7C 9C 23 78 */ mr r28, r4
+/* 802EB7A8 002E7408 7C BD 2B 78 */ mr r29, r5
+/* 802EB7AC 002E740C 3B E0 00 00 */ li r31, 0
+/* 802EB7B0 002E7410 4B F8 2F AD */ bl OSDisableInterrupts
+/* 802EB7B4 002E7414 38 00 00 00 */ li r0, 0
+/* 802EB7B8 002E7418 7C 7E 1B 78 */ mr r30, r3
+/* 802EB7BC 002E741C 7C 1B 00 40 */ cmplw r27, r0
+/* 802EB7C0 002E7420 41 82 00 88 */ beq lbl_802EB848
+/* 802EB7C4 002E7424 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB7C8 002E7428 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EB7CC 002E742C 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EB7D0 002E7430 7C 1D 00 40 */ cmplw r29, r0
+/* 802EB7D4 002E7434 40 80 00 3C */ bge lbl_802EB810
+/* 802EB7D8 002E7438 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB7DC 002E743C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB7E0 002E7440 41 82 00 30 */ beq lbl_802EB810
+/* 802EB7E4 002E7444 7C 1D 00 D0 */ neg r0, r29
+/* 802EB7E8 002E7448 7C 65 1A 14 */ add r3, r5, r3
+/* 802EB7EC 002E744C 54 00 08 3C */ slwi r0, r0, 1
+/* 802EB7F0 002E7450 7C 03 02 2E */ lhzx r0, r3, r0
+/* 802EB7F4 002E7454 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB7F8 002E7458 41 82 00 18 */ beq lbl_802EB810
+/* 802EB7FC 002E745C 7C 05 02 2E */ lhzx r0, r5, r0
+/* 802EB800 002E7460 38 81 00 08 */ addi r4, r1, 8
+/* 802EB804 002E7464 7C 65 02 14 */ add r3, r5, r0
+/* 802EB808 002E7468 4B FF F9 E5 */ bl UnpackItem
+/* 802EB80C 002E746C 48 00 00 08 */ b lbl_802EB814
+lbl_802EB810:
+/* 802EB810 002E7470 38 60 00 00 */ li r3, 0
+lbl_802EB814:
+/* 802EB814 002E7474 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB818 002E7478 41 82 00 30 */ beq lbl_802EB848
+/* 802EB81C 002E747C 88 01 00 11 */ lbz r0, 0x11(r1)
+/* 802EB820 002E7480 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB824 002E7484 41 82 00 24 */ beq lbl_802EB848
+/* 802EB828 002E7488 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 802EB82C 002E748C 7C 00 E0 40 */ cmplw r0, r28
+/* 802EB830 002E7490 40 82 00 18 */ bne lbl_802EB848
+/* 802EB834 002E7494 80 81 00 20 */ lwz r4, 0x20(r1)
+/* 802EB838 002E7498 7F 63 DB 78 */ mr r3, r27
+/* 802EB83C 002E749C 7F 85 E3 78 */ mr r5, r28
+/* 802EB840 002E74A0 4B D1 87 C1 */ bl memcpy
+/* 802EB844 002E74A4 3B E0 00 01 */ li r31, 1
+lbl_802EB848:
+/* 802EB848 002E74A8 7F C3 F3 78 */ mr r3, r30
+/* 802EB84C 002E74AC 4B F8 2F 39 */ bl OSRestoreInterrupts
+/* 802EB850 002E74B0 39 61 00 40 */ addi r11, r1, 0x40
+/* 802EB854 002E74B4 7F E3 FB 78 */ mr r3, r31
+/* 802EB858 002E74B8 4B ED B9 1D */ bl _restgpr_27
+/* 802EB85C 002E74BC 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802EB860 002E74C0 7C 08 03 A6 */ mtlr r0
+/* 802EB864 002E74C4 38 21 00 40 */ addi r1, r1, 0x40
+/* 802EB868 002E74C8 4E 80 00 20 */ blr
+
+.global SCReplaceByteArrayItem
+SCReplaceByteArrayItem:
+/* 802EB86C 002E74CC 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802EB870 002E74D0 7C 08 02 A6 */ mflr r0
+/* 802EB874 002E74D4 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802EB878 002E74D8 39 61 00 40 */ addi r11, r1, 0x40
+/* 802EB87C 002E74DC 4B ED B8 AD */ bl _savegpr_27
+/* 802EB880 002E74E0 7C 7B 1B 78 */ mr r27, r3
+/* 802EB884 002E74E4 7C 9C 23 78 */ mr r28, r4
+/* 802EB888 002E74E8 7C BD 2B 78 */ mr r29, r5
+/* 802EB88C 002E74EC 3B E0 00 00 */ li r31, 0
+/* 802EB890 002E74F0 4B F8 2E CD */ bl OSDisableInterrupts
+/* 802EB894 002E74F4 38 00 00 00 */ li r0, 0
+/* 802EB898 002E74F8 7C 7E 1B 78 */ mr r30, r3
+/* 802EB89C 002E74FC 7C 1B 00 40 */ cmplw r27, r0
+/* 802EB8A0 002E7500 41 82 00 CC */ beq lbl_802EB96C
+/* 802EB8A4 002E7504 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB8A8 002E7508 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EB8AC 002E750C 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EB8B0 002E7510 7C 1D 00 40 */ cmplw r29, r0
+/* 802EB8B4 002E7514 40 80 00 3C */ bge lbl_802EB8F0
+/* 802EB8B8 002E7518 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB8BC 002E751C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB8C0 002E7520 41 82 00 30 */ beq lbl_802EB8F0
+/* 802EB8C4 002E7524 7C 1D 00 D0 */ neg r0, r29
+/* 802EB8C8 002E7528 7C 65 1A 14 */ add r3, r5, r3
+/* 802EB8CC 002E752C 54 00 08 3C */ slwi r0, r0, 1
+/* 802EB8D0 002E7530 7C 03 02 2E */ lhzx r0, r3, r0
+/* 802EB8D4 002E7534 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB8D8 002E7538 41 82 00 18 */ beq lbl_802EB8F0
+/* 802EB8DC 002E753C 7C 05 02 2E */ lhzx r0, r5, r0
+/* 802EB8E0 002E7540 38 81 00 08 */ addi r4, r1, 8
+/* 802EB8E4 002E7544 7C 65 02 14 */ add r3, r5, r0
+/* 802EB8E8 002E7548 4B FF F9 05 */ bl UnpackItem
+/* 802EB8EC 002E754C 48 00 00 08 */ b lbl_802EB8F4
+lbl_802EB8F0:
+/* 802EB8F0 002E7550 38 60 00 00 */ li r3, 0
+lbl_802EB8F4:
+/* 802EB8F4 002E7554 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB8F8 002E7558 41 82 00 5C */ beq lbl_802EB954
+/* 802EB8FC 002E755C 88 01 00 11 */ lbz r0, 0x11(r1)
+/* 802EB900 002E7560 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB904 002E7564 41 82 00 48 */ beq lbl_802EB94C
+/* 802EB908 002E7568 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 802EB90C 002E756C 7C 00 E0 40 */ cmplw r0, r28
+/* 802EB910 002E7570 40 82 00 3C */ bne lbl_802EB94C
+/* 802EB914 002E7574 80 61 00 20 */ lwz r3, 0x20(r1)
+/* 802EB918 002E7578 7F 64 DB 78 */ mr r4, r27
+/* 802EB91C 002E757C 7F 85 E3 78 */ mr r5, r28
+/* 802EB920 002E7580 4B ED EA 79 */ bl memcmp
+/* 802EB924 002E7584 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB928 002E7588 41 82 00 1C */ beq lbl_802EB944
+/* 802EB92C 002E758C 80 61 00 20 */ lwz r3, 0x20(r1)
+/* 802EB930 002E7590 7F 64 DB 78 */ mr r4, r27
+/* 802EB934 002E7594 7F 85 E3 78 */ mr r5, r28
+/* 802EB938 002E7598 4B D1 86 C9 */ bl memcpy
+/* 802EB93C 002E759C 38 00 00 01 */ li r0, 1
+/* 802EB940 002E75A0 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+lbl_802EB944:
+/* 802EB944 002E75A4 3B E0 00 01 */ li r31, 1
+/* 802EB948 002E75A8 48 00 00 24 */ b lbl_802EB96C
+lbl_802EB94C:
+/* 802EB94C 002E75AC 7F A3 EB 78 */ mr r3, r29
+/* 802EB950 002E75B0 4B FF FA 35 */ bl DeleteItemByID
+lbl_802EB954:
+/* 802EB954 002E75B4 7F A3 EB 78 */ mr r3, r29
+/* 802EB958 002E75B8 7F 65 DB 78 */ mr r5, r27
+/* 802EB95C 002E75BC 7F 86 E3 78 */ mr r6, r28
+/* 802EB960 002E75C0 38 80 00 40 */ li r4, 0x40
+/* 802EB964 002E75C4 4B FF FB B1 */ bl CreateItemByID
+/* 802EB968 002E75C8 7C 7F 1B 78 */ mr r31, r3
+lbl_802EB96C:
+/* 802EB96C 002E75CC 7F C3 F3 78 */ mr r3, r30
+/* 802EB970 002E75D0 4B F8 2E 15 */ bl OSRestoreInterrupts
+/* 802EB974 002E75D4 39 61 00 40 */ addi r11, r1, 0x40
+/* 802EB978 002E75D8 7F E3 FB 78 */ mr r3, r31
+/* 802EB97C 002E75DC 4B ED B7 F9 */ bl _restgpr_27
+/* 802EB980 002E75E0 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802EB984 002E75E4 7C 08 03 A6 */ mtlr r0
+/* 802EB988 002E75E8 38 21 00 40 */ addi r1, r1, 0x40
+/* 802EB98C 002E75EC 4E 80 00 20 */ blr
+
+.global SCReplaceIntegerItem
+SCReplaceIntegerItem:
+/* 802EB990 002E75F0 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802EB994 002E75F4 7C 08 02 A6 */ mflr r0
+/* 802EB998 002E75F8 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802EB99C 002E75FC 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 802EB9A0 002E7600 7C BF 2B 78 */ mr r31, r5
+/* 802EB9A4 002E7604 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 802EB9A8 002E7608 93 A1 00 34 */ stw r29, 0x34(r1)
+/* 802EB9AC 002E760C 7C 9D 23 78 */ mr r29, r4
+/* 802EB9B0 002E7610 93 81 00 30 */ stw r28, 0x30(r1)
+/* 802EB9B4 002E7614 7C 7C 1B 78 */ mr r28, r3
+/* 802EB9B8 002E7618 4B F8 2D A5 */ bl OSDisableInterrupts
+/* 802EB9BC 002E761C 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EB9C0 002E7620 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EB9C4 002E7624 7C 7E 1B 78 */ mr r30, r3
+/* 802EB9C8 002E7628 7C 1D 00 40 */ cmplw r29, r0
+/* 802EB9CC 002E762C 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EB9D0 002E7630 40 80 00 3C */ bge lbl_802EBA0C
+/* 802EB9D4 002E7634 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EB9D8 002E7638 2C 03 00 00 */ cmpwi r3, 0
+/* 802EB9DC 002E763C 41 82 00 30 */ beq lbl_802EBA0C
+/* 802EB9E0 002E7640 7C 1D 00 D0 */ neg r0, r29
+/* 802EB9E4 002E7644 7C 65 1A 14 */ add r3, r5, r3
+/* 802EB9E8 002E7648 54 00 08 3C */ slwi r0, r0, 1
+/* 802EB9EC 002E764C 7C 03 02 2E */ lhzx r0, r3, r0
+/* 802EB9F0 002E7650 2C 00 00 00 */ cmpwi r0, 0
+/* 802EB9F4 002E7654 41 82 00 18 */ beq lbl_802EBA0C
+/* 802EB9F8 002E7658 7C 05 02 2E */ lhzx r0, r5, r0
+/* 802EB9FC 002E765C 38 81 00 08 */ addi r4, r1, 8
+/* 802EBA00 002E7660 7C 65 02 14 */ add r3, r5, r0
+/* 802EBA04 002E7664 4B FF F7 E9 */ bl UnpackItem
+/* 802EBA08 002E7668 48 00 00 08 */ b lbl_802EBA10
+lbl_802EBA0C:
+/* 802EBA0C 002E766C 38 60 00 00 */ li r3, 0
+lbl_802EBA10:
+/* 802EBA10 002E7670 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBA14 002E7674 41 82 00 50 */ beq lbl_802EBA64
+/* 802EBA18 002E7678 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 802EBA1C 002E767C 7C 00 F8 40 */ cmplw r0, r31
+/* 802EBA20 002E7680 40 82 00 3C */ bne lbl_802EBA5C
+/* 802EBA24 002E7684 80 61 00 20 */ lwz r3, 0x20(r1)
+/* 802EBA28 002E7688 7F 84 E3 78 */ mr r4, r28
+/* 802EBA2C 002E768C 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 802EBA30 002E7690 4B ED E9 69 */ bl memcmp
+/* 802EBA34 002E7694 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBA38 002E7698 41 82 00 1C */ beq lbl_802EBA54
+/* 802EBA3C 002E769C 80 61 00 20 */ lwz r3, 0x20(r1)
+/* 802EBA40 002E76A0 7F 84 E3 78 */ mr r4, r28
+/* 802EBA44 002E76A4 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 802EBA48 002E76A8 4B D1 85 B9 */ bl memcpy
+/* 802EBA4C 002E76AC 38 00 00 01 */ li r0, 1
+/* 802EBA50 002E76B0 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+lbl_802EBA54:
+/* 802EBA54 002E76B4 3B E0 00 01 */ li r31, 1
+/* 802EBA58 002E76B8 48 00 00 24 */ b lbl_802EBA7C
+lbl_802EBA5C:
+/* 802EBA5C 002E76BC 7F A3 EB 78 */ mr r3, r29
+/* 802EBA60 002E76C0 4B FF F9 25 */ bl DeleteItemByID
+lbl_802EBA64:
+/* 802EBA64 002E76C4 7F A3 EB 78 */ mr r3, r29
+/* 802EBA68 002E76C8 7F E4 FB 78 */ mr r4, r31
+/* 802EBA6C 002E76CC 7F 85 E3 78 */ mr r5, r28
+/* 802EBA70 002E76D0 38 C0 00 00 */ li r6, 0
+/* 802EBA74 002E76D4 4B FF FA A1 */ bl CreateItemByID
+/* 802EBA78 002E76D8 7C 7F 1B 78 */ mr r31, r3
+lbl_802EBA7C:
+/* 802EBA7C 002E76DC 7F C3 F3 78 */ mr r3, r30
+/* 802EBA80 002E76E0 4B F8 2D 05 */ bl OSRestoreInterrupts
+/* 802EBA84 002E76E4 7F E3 FB 78 */ mr r3, r31
+/* 802EBA88 002E76E8 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 802EBA8C 002E76EC 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 802EBA90 002E76F0 83 A1 00 34 */ lwz r29, 0x34(r1)
+/* 802EBA94 002E76F4 83 81 00 30 */ lwz r28, 0x30(r1)
+/* 802EBA98 002E76F8 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802EBA9C 002E76FC 7C 08 03 A6 */ mtlr r0
+/* 802EBAA0 002E7700 38 21 00 40 */ addi r1, r1, 0x40
+/* 802EBAA4 002E7704 4E 80 00 20 */ blr
+
+.global SCFindU8Item
+SCFindU8Item:
+/* 802EBAA8 002E7708 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802EBAAC 002E770C 7C 08 02 A6 */ mflr r0
+/* 802EBAB0 002E7710 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802EBAB4 002E7714 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 802EBAB8 002E7718 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 802EBABC 002E771C 3B C0 00 00 */ li r30, 0
+/* 802EBAC0 002E7720 93 A1 00 34 */ stw r29, 0x34(r1)
+/* 802EBAC4 002E7724 7C 9D 23 78 */ mr r29, r4
+/* 802EBAC8 002E7728 93 81 00 30 */ stw r28, 0x30(r1)
+/* 802EBACC 002E772C 7C 7C 1B 78 */ mr r28, r3
+/* 802EBAD0 002E7730 4B F8 2C 8D */ bl OSDisableInterrupts
+/* 802EBAD4 002E7734 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EBAD8 002E7738 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EBADC 002E773C 7C 7F 1B 78 */ mr r31, r3
+/* 802EBAE0 002E7740 7C 1D 00 40 */ cmplw r29, r0
+/* 802EBAE4 002E7744 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EBAE8 002E7748 40 80 00 3C */ bge lbl_802EBB24
+/* 802EBAEC 002E774C 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EBAF0 002E7750 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBAF4 002E7754 41 82 00 30 */ beq lbl_802EBB24
+/* 802EBAF8 002E7758 7C 1D 00 D0 */ neg r0, r29
+/* 802EBAFC 002E775C 7C 65 1A 14 */ add r3, r5, r3
+/* 802EBB00 002E7760 54 00 08 3C */ slwi r0, r0, 1
+/* 802EBB04 002E7764 7C 03 02 2E */ lhzx r0, r3, r0
+/* 802EBB08 002E7768 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBB0C 002E776C 41 82 00 18 */ beq lbl_802EBB24
+/* 802EBB10 002E7770 7C 05 02 2E */ lhzx r0, r5, r0
+/* 802EBB14 002E7774 38 81 00 08 */ addi r4, r1, 8
+/* 802EBB18 002E7778 7C 65 02 14 */ add r3, r5, r0
+/* 802EBB1C 002E777C 4B FF F6 D1 */ bl UnpackItem
+/* 802EBB20 002E7780 48 00 00 08 */ b lbl_802EBB28
+lbl_802EBB24:
+/* 802EBB24 002E7784 38 60 00 00 */ li r3, 0
+lbl_802EBB28:
+/* 802EBB28 002E7788 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBB2C 002E778C 41 82 00 24 */ beq lbl_802EBB50
+/* 802EBB30 002E7790 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 802EBB34 002E7794 28 00 00 60 */ cmplwi r0, 0x60
+/* 802EBB38 002E7798 40 82 00 18 */ bne lbl_802EBB50
+/* 802EBB3C 002E779C 80 81 00 20 */ lwz r4, 0x20(r1)
+/* 802EBB40 002E77A0 7F 83 E3 78 */ mr r3, r28
+/* 802EBB44 002E77A4 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 802EBB48 002E77A8 4B D1 84 B9 */ bl memcpy
+/* 802EBB4C 002E77AC 3B C0 00 01 */ li r30, 1
+lbl_802EBB50:
+/* 802EBB50 002E77B0 7F E3 FB 78 */ mr r3, r31
+/* 802EBB54 002E77B4 4B F8 2C 31 */ bl OSRestoreInterrupts
+/* 802EBB58 002E77B8 7F C3 F3 78 */ mr r3, r30
+/* 802EBB5C 002E77BC 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 802EBB60 002E77C0 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 802EBB64 002E77C4 83 A1 00 34 */ lwz r29, 0x34(r1)
+/* 802EBB68 002E77C8 83 81 00 30 */ lwz r28, 0x30(r1)
+/* 802EBB6C 002E77CC 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802EBB70 002E77D0 7C 08 03 A6 */ mtlr r0
+/* 802EBB74 002E77D4 38 21 00 40 */ addi r1, r1, 0x40
+/* 802EBB78 002E77D8 4E 80 00 20 */ blr
+
+.global SCFindS8Item
+SCFindS8Item:
+/* 802EBB7C 002E77DC 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802EBB80 002E77E0 7C 08 02 A6 */ mflr r0
+/* 802EBB84 002E77E4 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802EBB88 002E77E8 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 802EBB8C 002E77EC 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 802EBB90 002E77F0 3B C0 00 00 */ li r30, 0
+/* 802EBB94 002E77F4 93 A1 00 34 */ stw r29, 0x34(r1)
+/* 802EBB98 002E77F8 7C 9D 23 78 */ mr r29, r4
+/* 802EBB9C 002E77FC 93 81 00 30 */ stw r28, 0x30(r1)
+/* 802EBBA0 002E7800 7C 7C 1B 78 */ mr r28, r3
+/* 802EBBA4 002E7804 4B F8 2B B9 */ bl OSDisableInterrupts
+/* 802EBBA8 002E7808 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EBBAC 002E780C 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EBBB0 002E7810 7C 7F 1B 78 */ mr r31, r3
+/* 802EBBB4 002E7814 7C 1D 00 40 */ cmplw r29, r0
+/* 802EBBB8 002E7818 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EBBBC 002E781C 40 80 00 3C */ bge lbl_802EBBF8
+/* 802EBBC0 002E7820 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EBBC4 002E7824 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBBC8 002E7828 41 82 00 30 */ beq lbl_802EBBF8
+/* 802EBBCC 002E782C 7C 1D 00 D0 */ neg r0, r29
+/* 802EBBD0 002E7830 7C 65 1A 14 */ add r3, r5, r3
+/* 802EBBD4 002E7834 54 00 08 3C */ slwi r0, r0, 1
+/* 802EBBD8 002E7838 7C 03 02 2E */ lhzx r0, r3, r0
+/* 802EBBDC 002E783C 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBBE0 002E7840 41 82 00 18 */ beq lbl_802EBBF8
+/* 802EBBE4 002E7844 7C 05 02 2E */ lhzx r0, r5, r0
+/* 802EBBE8 002E7848 38 81 00 08 */ addi r4, r1, 8
+/* 802EBBEC 002E784C 7C 65 02 14 */ add r3, r5, r0
+/* 802EBBF0 002E7850 4B FF F5 FD */ bl UnpackItem
+/* 802EBBF4 002E7854 48 00 00 08 */ b lbl_802EBBFC
+lbl_802EBBF8:
+/* 802EBBF8 002E7858 38 60 00 00 */ li r3, 0
+lbl_802EBBFC:
+/* 802EBBFC 002E785C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBC00 002E7860 41 82 00 24 */ beq lbl_802EBC24
+/* 802EBC04 002E7864 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 802EBC08 002E7868 28 00 00 60 */ cmplwi r0, 0x60
+/* 802EBC0C 002E786C 40 82 00 18 */ bne lbl_802EBC24
+/* 802EBC10 002E7870 80 81 00 20 */ lwz r4, 0x20(r1)
+/* 802EBC14 002E7874 7F 83 E3 78 */ mr r3, r28
+/* 802EBC18 002E7878 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 802EBC1C 002E787C 4B D1 83 E5 */ bl memcpy
+/* 802EBC20 002E7880 3B C0 00 01 */ li r30, 1
+lbl_802EBC24:
+/* 802EBC24 002E7884 7F E3 FB 78 */ mr r3, r31
+/* 802EBC28 002E7888 4B F8 2B 5D */ bl OSRestoreInterrupts
+/* 802EBC2C 002E788C 7F C3 F3 78 */ mr r3, r30
+/* 802EBC30 002E7890 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 802EBC34 002E7894 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 802EBC38 002E7898 83 A1 00 34 */ lwz r29, 0x34(r1)
+/* 802EBC3C 002E789C 83 81 00 30 */ lwz r28, 0x30(r1)
+/* 802EBC40 002E78A0 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802EBC44 002E78A4 7C 08 03 A6 */ mtlr r0
+/* 802EBC48 002E78A8 38 21 00 40 */ addi r1, r1, 0x40
+/* 802EBC4C 002E78AC 4E 80 00 20 */ blr
+
+.global SCFindU32Item
+SCFindU32Item:
+/* 802EBC50 002E78B0 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 802EBC54 002E78B4 7C 08 02 A6 */ mflr r0
+/* 802EBC58 002E78B8 90 01 00 44 */ stw r0, 0x44(r1)
+/* 802EBC5C 002E78BC 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 802EBC60 002E78C0 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 802EBC64 002E78C4 3B C0 00 00 */ li r30, 0
+/* 802EBC68 002E78C8 93 A1 00 34 */ stw r29, 0x34(r1)
+/* 802EBC6C 002E78CC 7C 9D 23 78 */ mr r29, r4
+/* 802EBC70 002E78D0 93 81 00 30 */ stw r28, 0x30(r1)
+/* 802EBC74 002E78D4 7C 7C 1B 78 */ mr r28, r3
+/* 802EBC78 002E78D8 4B F8 2A E5 */ bl OSDisableInterrupts
+/* 802EBC7C 002E78DC 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13)
+/* 802EBC80 002E78E0 3C A0 80 57 */ lis r5, lbl_80571060@ha
+/* 802EBC84 002E78E4 7C 7F 1B 78 */ mr r31, r3
+/* 802EBC88 002E78E8 7C 1D 00 40 */ cmplw r29, r0
+/* 802EBC8C 002E78EC 38 A5 10 60 */ addi r5, r5, lbl_80571060@l
+/* 802EBC90 002E78F0 40 80 00 3C */ bge lbl_802EBCCC
+/* 802EBC94 002E78F4 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13)
+/* 802EBC98 002E78F8 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBC9C 002E78FC 41 82 00 30 */ beq lbl_802EBCCC
+/* 802EBCA0 002E7900 7C 1D 00 D0 */ neg r0, r29
+/* 802EBCA4 002E7904 7C 65 1A 14 */ add r3, r5, r3
+/* 802EBCA8 002E7908 54 00 08 3C */ slwi r0, r0, 1
+/* 802EBCAC 002E790C 7C 03 02 2E */ lhzx r0, r3, r0
+/* 802EBCB0 002E7910 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBCB4 002E7914 41 82 00 18 */ beq lbl_802EBCCC
+/* 802EBCB8 002E7918 7C 05 02 2E */ lhzx r0, r5, r0
+/* 802EBCBC 002E791C 38 81 00 08 */ addi r4, r1, 8
+/* 802EBCC0 002E7920 7C 65 02 14 */ add r3, r5, r0
+/* 802EBCC4 002E7924 4B FF F5 29 */ bl UnpackItem
+/* 802EBCC8 002E7928 48 00 00 08 */ b lbl_802EBCD0
+lbl_802EBCCC:
+/* 802EBCCC 002E792C 38 60 00 00 */ li r3, 0
+lbl_802EBCD0:
+/* 802EBCD0 002E7930 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBCD4 002E7934 41 82 00 24 */ beq lbl_802EBCF8
+/* 802EBCD8 002E7938 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 802EBCDC 002E793C 28 00 00 A0 */ cmplwi r0, 0xa0
+/* 802EBCE0 002E7940 40 82 00 18 */ bne lbl_802EBCF8
+/* 802EBCE4 002E7944 80 81 00 20 */ lwz r4, 0x20(r1)
+/* 802EBCE8 002E7948 7F 83 E3 78 */ mr r3, r28
+/* 802EBCEC 002E794C 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 802EBCF0 002E7950 4B D1 83 11 */ bl memcpy
+/* 802EBCF4 002E7954 3B C0 00 01 */ li r30, 1
+lbl_802EBCF8:
+/* 802EBCF8 002E7958 7F E3 FB 78 */ mr r3, r31
+/* 802EBCFC 002E795C 4B F8 2A 89 */ bl OSRestoreInterrupts
+/* 802EBD00 002E7960 7F C3 F3 78 */ mr r3, r30
+/* 802EBD04 002E7964 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 802EBD08 002E7968 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 802EBD0C 002E796C 83 A1 00 34 */ lwz r29, 0x34(r1)
+/* 802EBD10 002E7970 83 81 00 30 */ lwz r28, 0x30(r1)
+/* 802EBD14 002E7974 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 802EBD18 002E7978 7C 08 03 A6 */ mtlr r0
+/* 802EBD1C 002E797C 38 21 00 40 */ addi r1, r1, 0x40
+/* 802EBD20 002E7980 4E 80 00 20 */ blr
+
+.global SCReplaceU8Item
+SCReplaceU8Item:
+/* 802EBD24 002E7984 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EBD28 002E7988 7C 08 02 A6 */ mflr r0
+/* 802EBD2C 002E798C 38 A0 00 60 */ li r5, 0x60
+/* 802EBD30 002E7990 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EBD34 002E7994 98 61 00 08 */ stb r3, 8(r1)
+/* 802EBD38 002E7998 38 61 00 08 */ addi r3, r1, 8
+/* 802EBD3C 002E799C 4B FF FC 55 */ bl SCReplaceIntegerItem
+/* 802EBD40 002E79A0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EBD44 002E79A4 7C 08 03 A6 */ mtlr r0
+/* 802EBD48 002E79A8 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EBD4C 002E79AC 4E 80 00 20 */ blr
+
+__SCFlushSyncCallback:
+/* 802EBD50 002E79B0 3C 60 80 57 */ lis r3, lbl_80570EC0@ha
+/* 802EBD54 002E79B4 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l
+/* 802EBD58 002E79B8 4B F8 67 08 */ b OSWakeupThread
+
+.global SCFlush
+SCFlush:
+/* 802EBD5C 002E79BC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EBD60 002E79C0 7C 08 02 A6 */ mflr r0
+/* 802EBD64 002E79C4 3C 60 80 2F */ lis r3, __SCFlushSyncCallback@ha
+/* 802EBD68 002E79C8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EBD6C 002E79CC 38 63 BD 50 */ addi r3, r3, __SCFlushSyncCallback@l
+/* 802EBD70 002E79D0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802EBD74 002E79D4 93 C1 00 08 */ stw r30, 8(r1)
+/* 802EBD78 002E79D8 48 00 00 55 */ bl SCFlushAsync
+/* 802EBD7C 002E79DC 4B F8 29 E1 */ bl OSDisableInterrupts
+/* 802EBD80 002E79E0 3F E0 80 57 */ lis r31, lbl_80570EC0@ha
+/* 802EBD84 002E79E4 7C 7E 1B 78 */ mr r30, r3
+/* 802EBD88 002E79E8 3B FF 0E C0 */ addi r31, r31, lbl_80570EC0@l
+/* 802EBD8C 002E79EC 48 00 00 0C */ b lbl_802EBD98
+lbl_802EBD90:
+/* 802EBD90 002E79F0 7F E3 FB 78 */ mr r3, r31
+/* 802EBD94 002E79F4 4B F8 65 E1 */ bl OSSleepThread
+lbl_802EBD98:
+/* 802EBD98 002E79F8 80 1F 01 80 */ lwz r0, 0x180(r31)
+/* 802EBD9C 002E79FC 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBDA0 002E7A00 40 82 FF F0 */ bne lbl_802EBD90
+/* 802EBDA4 002E7A04 83 FF 01 84 */ lwz r31, 0x184(r31)
+/* 802EBDA8 002E7A08 7F C3 F3 78 */ mr r3, r30
+/* 802EBDAC 002E7A0C 4B F8 29 D9 */ bl OSRestoreInterrupts
+/* 802EBDB0 002E7A10 7F E3 FB 78 */ mr r3, r31
+/* 802EBDB4 002E7A14 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802EBDB8 002E7A18 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802EBDBC 002E7A1C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EBDC0 002E7A20 7C 08 03 A6 */ mtlr r0
+/* 802EBDC4 002E7A24 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EBDC8 002E7A28 4E 80 00 20 */ blr
+
+.global SCFlushAsync
+SCFlushAsync:
+/* 802EBDCC 002E7A2C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802EBDD0 002E7A30 7C 08 02 A6 */ mflr r0
+/* 802EBDD4 002E7A34 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802EBDD8 002E7A38 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802EBDDC 002E7A3C 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802EBDE0 002E7A40 7C 7E 1B 78 */ mr r30, r3
+/* 802EBDE4 002E7A44 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802EBDE8 002E7A48 3F A0 80 57 */ lis r29, lbl_80570EC0@ha
+/* 802EBDEC 002E7A4C 3B BD 0E C0 */ addi r29, r29, lbl_80570EC0@l
+/* 802EBDF0 002E7A50 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802EBDF4 002E7A54 3B 9D 00 00 */ addi r28, r29, 0
+/* 802EBDF8 002E7A58 4B F8 29 65 */ bl OSDisableInterrupts
+/* 802EBDFC 002E7A5C 88 0D AF 10 */ lbz r0, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EBE00 002E7A60 7C 7F 1B 78 */ mr r31, r3
+/* 802EBE04 002E7A64 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBE08 002E7A68 40 82 01 90 */ bne lbl_802EBF98
+/* 802EBE0C 002E7A6C 38 00 00 00 */ li r0, 0
+/* 802EBE10 002E7A70 38 60 00 01 */ li r3, 1
+/* 802EBE14 002E7A74 7C 1E 00 40 */ cmplw r30, r0
+/* 802EBE18 002E7A78 98 6D AF 10 */ stb r3, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EBE1C 002E7A7C 40 82 00 0C */ bne lbl_802EBE28
+/* 802EBE20 002E7A80 3F C0 80 2F */ lis r30, __SCFlushSyncCallback@ha
+/* 802EBE24 002E7A84 3B DE BD 50 */ addi r30, r30, __SCFlushSyncCallback@l
+lbl_802EBE28:
+/* 802EBE28 002E7A88 88 0D AF 25 */ lbz r0, lbl_806401E5-_SDA_BASE_(r13)
+/* 802EBE2C 002E7A8C 38 80 00 00 */ li r4, 0
+/* 802EBE30 002E7A90 38 60 40 00 */ li r3, 0x4000
+/* 802EBE34 002E7A94 93 DC 01 80 */ stw r30, 0x180(r28)
+/* 802EBE38 002E7A98 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBE3C 002E7A9C 90 9C 01 84 */ stw r4, 0x184(r28)
+/* 802EBE40 002E7AA0 98 9C 01 55 */ stb r4, 0x155(r28)
+/* 802EBE44 002E7AA4 90 7C 01 88 */ stw r3, 0x188(r28)
+/* 802EBE48 002E7AA8 41 82 00 0C */ beq lbl_802EBE54
+/* 802EBE4C 002E7AAC 38 00 00 01 */ li r0, 1
+/* 802EBE50 002E7AB0 48 00 00 08 */ b lbl_802EBE58
+lbl_802EBE54:
+/* 802EBE54 002E7AB4 38 00 00 00 */ li r0, 0
+lbl_802EBE58:
+/* 802EBE58 002E7AB8 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBE5C 002E7ABC 40 82 00 64 */ bne lbl_802EBEC0
+/* 802EBE60 002E7AC0 7F E3 FB 78 */ mr r3, r31
+/* 802EBE64 002E7AC4 4B F8 29 21 */ bl OSRestoreInterrupts
+/* 802EBE68 002E7AC8 3B BD 00 00 */ addi r29, r29, 0
+/* 802EBE6C 002E7ACC 80 1D 01 84 */ lwz r0, 0x184(r29)
+/* 802EBE70 002E7AD0 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBE74 002E7AD4 41 82 00 0C */ beq lbl_802EBE80
+/* 802EBE78 002E7AD8 38 00 00 01 */ li r0, 1
+/* 802EBE7C 002E7ADC 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+lbl_802EBE80:
+/* 802EBE80 002E7AE0 81 9D 01 80 */ lwz r12, 0x180(r29)
+/* 802EBE84 002E7AE4 2C 0C 00 00 */ cmpwi r12, 0
+/* 802EBE88 002E7AE8 41 82 00 2C */ beq lbl_802EBEB4
+/* 802EBE8C 002E7AEC 3B C0 00 00 */ li r30, 0
+/* 802EBE90 002E7AF0 80 7D 01 84 */ lwz r3, 0x184(r29)
+/* 802EBE94 002E7AF4 93 DD 01 80 */ stw r30, 0x180(r29)
+/* 802EBE98 002E7AF8 7D 89 03 A6 */ mtctr r12
+/* 802EBE9C 002E7AFC 4E 80 04 21 */ bctrl
+/* 802EBEA0 002E7B00 80 1D 00 00 */ lwz r0, 0(r29)
+/* 802EBEA4 002E7B04 7C 00 F0 40 */ cmplw r0, r30
+/* 802EBEA8 002E7B08 41 82 00 0C */ beq lbl_802EBEB4
+/* 802EBEAC 002E7B0C 7F A3 EB 78 */ mr r3, r29
+/* 802EBEB0 002E7B10 4B F8 65 B1 */ bl OSWakeupThread
+lbl_802EBEB4:
+/* 802EBEB4 002E7B14 80 1D 01 84 */ lwz r0, 0x184(r29)
+/* 802EBEB8 002E7B18 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EBEBC 002E7B1C 48 00 01 0C */ b lbl_802EBFC8
+lbl_802EBEC0:
+/* 802EBEC0 002E7B20 3B C0 00 00 */ li r30, 0
+/* 802EBEC4 002E7B24 38 7D 41 A0 */ addi r3, r29, 0x41a0
+/* 802EBEC8 002E7B28 9B CD AF 25 */ stb r30, lbl_806401E5-_SDA_BASE_(r13)
+/* 802EBECC 002E7B2C 38 9D 01 A0 */ addi r4, r29, 0x1a0
+/* 802EBED0 002E7B30 38 A0 40 00 */ li r5, 0x4000
+/* 802EBED4 002E7B34 4B D1 81 2D */ bl memcpy
+/* 802EBED8 002E7B38 7F E3 FB 78 */ mr r3, r31
+/* 802EBEDC 002E7B3C 4B F8 28 A9 */ bl OSRestoreInterrupts
+/* 802EBEE0 002E7B40 3C 60 80 40 */ lis r3, lbl_803FE070@ha
+/* 802EBEE4 002E7B44 3F E0 80 2F */ lis r31, MyNandCallback@ha
+/* 802EBEE8 002E7B48 9B DC 01 54 */ stb r30, 0x154(r28)
+/* 802EBEEC 002E7B4C 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l
+/* 802EBEF0 002E7B50 38 9C 01 4C */ addi r4, r28, 0x14c
+/* 802EBEF4 002E7B54 38 BF BF E8 */ addi r5, r31, MyNandCallback@l
+/* 802EBEF8 002E7B58 38 DC 00 94 */ addi r6, r28, 0x94
+/* 802EBEFC 002E7B5C 4B FF E3 CD */ bl NANDPrivateGetTypeAsync
+/* 802EBF00 002E7B60 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBF04 002E7B64 41 82 00 C4 */ beq lbl_802EBFC8
+/* 802EBF08 002E7B68 38 BD 00 00 */ addi r5, r29, 0
+/* 802EBF0C 002E7B6C 38 60 00 02 */ li r3, 2
+/* 802EBF10 002E7B70 88 05 01 55 */ lbz r0, 0x155(r5)
+/* 802EBF14 002E7B74 90 65 01 84 */ stw r3, 0x184(r5)
+/* 802EBF18 002E7B78 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBF1C 002E7B7C 41 82 00 24 */ beq lbl_802EBF40
+/* 802EBF20 002E7B80 38 00 00 09 */ li r0, 9
+/* 802EBF24 002E7B84 38 65 00 08 */ addi r3, r5, 8
+/* 802EBF28 002E7B88 98 05 01 54 */ stb r0, 0x154(r5)
+/* 802EBF2C 002E7B8C 38 9F BF E8 */ addi r4, r31, -16408
+/* 802EBF30 002E7B90 38 A5 00 94 */ addi r5, r5, 0x94
+/* 802EBF34 002E7B94 4B FF C7 C1 */ bl NANDCloseAsync
+/* 802EBF38 002E7B98 2C 03 00 00 */ cmpwi r3, 0
+/* 802EBF3C 002E7B9C 41 82 00 8C */ beq lbl_802EBFC8
+lbl_802EBF40:
+/* 802EBF40 002E7BA0 3B BD 00 00 */ addi r29, r29, 0
+/* 802EBF44 002E7BA4 80 1D 01 84 */ lwz r0, 0x184(r29)
+/* 802EBF48 002E7BA8 2C 00 00 00 */ cmpwi r0, 0
+/* 802EBF4C 002E7BAC 41 82 00 0C */ beq lbl_802EBF58
+/* 802EBF50 002E7BB0 38 00 00 01 */ li r0, 1
+/* 802EBF54 002E7BB4 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+lbl_802EBF58:
+/* 802EBF58 002E7BB8 81 9D 01 80 */ lwz r12, 0x180(r29)
+/* 802EBF5C 002E7BBC 2C 0C 00 00 */ cmpwi r12, 0
+/* 802EBF60 002E7BC0 41 82 00 2C */ beq lbl_802EBF8C
+/* 802EBF64 002E7BC4 3B E0 00 00 */ li r31, 0
+/* 802EBF68 002E7BC8 80 7D 01 84 */ lwz r3, 0x184(r29)
+/* 802EBF6C 002E7BCC 93 FD 01 80 */ stw r31, 0x180(r29)
+/* 802EBF70 002E7BD0 7D 89 03 A6 */ mtctr r12
+/* 802EBF74 002E7BD4 4E 80 04 21 */ bctrl
+/* 802EBF78 002E7BD8 80 1D 00 00 */ lwz r0, 0(r29)
+/* 802EBF7C 002E7BDC 7C 00 F8 40 */ cmplw r0, r31
+/* 802EBF80 002E7BE0 41 82 00 0C */ beq lbl_802EBF8C
+/* 802EBF84 002E7BE4 7F A3 EB 78 */ mr r3, r29
+/* 802EBF88 002E7BE8 4B F8 64 D9 */ bl OSWakeupThread
+lbl_802EBF8C:
+/* 802EBF8C 002E7BEC 80 1D 01 84 */ lwz r0, 0x184(r29)
+/* 802EBF90 002E7BF0 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EBF94 002E7BF4 48 00 00 34 */ b lbl_802EBFC8
+lbl_802EBF98:
+/* 802EBF98 002E7BF8 2C 1E 00 00 */ cmpwi r30, 0
+/* 802EBF9C 002E7BFC 41 82 00 24 */ beq lbl_802EBFC0
+/* 802EBFA0 002E7C00 28 00 00 01 */ cmplwi r0, 1
+/* 802EBFA4 002E7C04 40 82 00 08 */ bne lbl_802EBFAC
+/* 802EBFA8 002E7C08 48 00 00 08 */ b lbl_802EBFB0
+lbl_802EBFAC:
+/* 802EBFAC 002E7C0C 38 00 00 02 */ li r0, 2
+lbl_802EBFB0:
+/* 802EBFB0 002E7C10 7F CC F3 78 */ mr r12, r30
+/* 802EBFB4 002E7C14 7C 03 03 78 */ mr r3, r0
+/* 802EBFB8 002E7C18 7D 89 03 A6 */ mtctr r12
+/* 802EBFBC 002E7C1C 4E 80 04 21 */ bctrl
+lbl_802EBFC0:
+/* 802EBFC0 002E7C20 7F E3 FB 78 */ mr r3, r31
+/* 802EBFC4 002E7C24 4B F8 27 C1 */ bl OSRestoreInterrupts
+lbl_802EBFC8:
+/* 802EBFC8 002E7C28 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802EBFCC 002E7C2C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802EBFD0 002E7C30 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802EBFD4 002E7C34 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802EBFD8 002E7C38 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802EBFDC 002E7C3C 7C 08 03 A6 */ mtlr r0
+/* 802EBFE0 002E7C40 38 21 00 20 */ addi r1, r1, 0x20
+/* 802EBFE4 002E7C44 4E 80 00 20 */ blr
+
+MyNandCallback:
+/* 802EBFE8 002E7C48 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802EBFEC 002E7C4C 7C 08 02 A6 */ mflr r0
+/* 802EBFF0 002E7C50 3C E0 80 57 */ lis r7, lbl_80570EC0@ha
+/* 802EBFF4 002E7C54 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802EBFF8 002E7C58 38 E7 0E C0 */ addi r7, r7, lbl_80570EC0@l
+/* 802EBFFC 002E7C5C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802EC000 002E7C60 93 C1 00 08 */ stw r30, 8(r1)
+/* 802EC004 002E7C64 88 07 01 54 */ lbz r0, 0x154(r7)
+/* 802EC008 002E7C68 28 00 00 09 */ cmplwi r0, 9
+/* 802EC00C 002E7C6C 41 81 02 FC */ bgt lbl_802EC308
+/* 802EC010 002E7C70 3C 80 80 44 */ lis r4, lbl_80445A10@ha
+/* 802EC014 002E7C74 54 00 10 3A */ slwi r0, r0, 2
+/* 802EC018 002E7C78 38 84 5A 10 */ addi r4, r4, lbl_80445A10@l
+/* 802EC01C 002E7C7C 7C 84 00 2E */ lwzx r4, r4, r0
+/* 802EC020 002E7C80 7C 89 03 A6 */ mtctr r4
+/* 802EC024 002E7C84 4E 80 04 20 */ bctr
+/* 802EC028 002E7C88 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC02C 002E7C8C 40 82 00 54 */ bne lbl_802EC080
+/* 802EC030 002E7C90 88 07 01 4C */ lbz r0, 0x14c(r7)
+/* 802EC034 002E7C94 28 00 00 01 */ cmplwi r0, 1
+/* 802EC038 002E7C98 40 82 00 48 */ bne lbl_802EC080
+/* 802EC03C 002E7C9C 38 00 00 01 */ li r0, 1
+/* 802EC040 002E7CA0 3C 60 80 40 */ lis r3, lbl_803FE070@ha
+/* 802EC044 002E7CA4 3C A0 80 2F */ lis r5, MyNandCallback@ha
+/* 802EC048 002E7CA8 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC04C 002E7CAC 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l
+/* 802EC050 002E7CB0 38 87 01 4C */ addi r4, r7, 0x14c
+/* 802EC054 002E7CB4 38 A5 BF E8 */ addi r5, r5, MyNandCallback@l
+/* 802EC058 002E7CB8 38 C7 00 94 */ addi r6, r7, 0x94
+/* 802EC05C 002E7CBC 4B FF C2 05 */ bl NANDPrivateGetStatusAsync
+/* 802EC060 002E7CC0 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC064 002E7CC4 40 82 02 0C */ bne lbl_802EC270
+/* 802EC068 002E7CC8 48 00 02 A0 */ b lbl_802EC308
+/* 802EC06C 002E7CCC 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC070 002E7CD0 40 82 00 10 */ bne lbl_802EC080
+/* 802EC074 002E7CD4 88 07 01 53 */ lbz r0, 0x153(r7)
+/* 802EC078 002E7CD8 28 00 00 3F */ cmplwi r0, 0x3f
+/* 802EC07C 002E7CDC 41 82 00 DC */ beq lbl_802EC158
+lbl_802EC080:
+/* 802EC080 002E7CE0 38 00 00 02 */ li r0, 2
+/* 802EC084 002E7CE4 3C 60 80 40 */ lis r3, lbl_803FE070@ha
+/* 802EC088 002E7CE8 3C 80 80 2F */ lis r4, MyNandCallback@ha
+/* 802EC08C 002E7CEC 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC090 002E7CF0 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l
+/* 802EC094 002E7CF4 38 A7 00 94 */ addi r5, r7, 0x94
+/* 802EC098 002E7CF8 38 84 BF E8 */ addi r4, r4, MyNandCallback@l
+/* 802EC09C 002E7CFC 4B FF B7 65 */ bl NANDPrivateDeleteAsync
+/* 802EC0A0 002E7D00 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC0A4 002E7D04 40 82 01 CC */ bne lbl_802EC270
+/* 802EC0A8 002E7D08 48 00 02 60 */ b lbl_802EC308
+/* 802EC0AC 002E7D0C 38 00 00 03 */ li r0, 3
+/* 802EC0B0 002E7D10 3C 60 80 40 */ lis r3, lbl_803FE060@ha
+/* 802EC0B4 002E7D14 3C A0 80 2F */ lis r5, MyNandCallback@ha
+/* 802EC0B8 002E7D18 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC0BC 002E7D1C 38 63 E0 60 */ addi r3, r3, lbl_803FE060@l
+/* 802EC0C0 002E7D20 38 87 01 4C */ addi r4, r7, 0x14c
+/* 802EC0C4 002E7D24 38 A5 BF E8 */ addi r5, r5, MyNandCallback@l
+/* 802EC0C8 002E7D28 38 C7 00 94 */ addi r6, r7, 0x94
+/* 802EC0CC 002E7D2C 4B FF E1 FD */ bl NANDPrivateGetTypeAsync
+/* 802EC0D0 002E7D30 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC0D4 002E7D34 40 82 01 9C */ bne lbl_802EC270
+/* 802EC0D8 002E7D38 48 00 02 30 */ b lbl_802EC308
+/* 802EC0DC 002E7D3C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC0E0 002E7D40 40 82 00 10 */ bne lbl_802EC0F0
+/* 802EC0E4 002E7D44 88 07 01 4C */ lbz r0, 0x14c(r7)
+/* 802EC0E8 002E7D48 28 00 00 02 */ cmplwi r0, 2
+/* 802EC0EC 002E7D4C 41 82 00 38 */ beq lbl_802EC124
+lbl_802EC0F0:
+/* 802EC0F0 002E7D50 38 00 00 04 */ li r0, 4
+/* 802EC0F4 002E7D54 3C 60 80 40 */ lis r3, lbl_803FE060@ha
+/* 802EC0F8 002E7D58 3C C0 80 2F */ lis r6, MyNandCallback@ha
+/* 802EC0FC 002E7D5C 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC100 002E7D60 38 63 E0 60 */ addi r3, r3, lbl_803FE060@l
+/* 802EC104 002E7D64 38 E7 00 94 */ addi r7, r7, 0x94
+/* 802EC108 002E7D68 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l
+/* 802EC10C 002E7D6C 38 80 00 3F */ li r4, 0x3f
+/* 802EC110 002E7D70 38 A0 00 00 */ li r5, 0
+/* 802EC114 002E7D74 4B FF BD 41 */ bl NANDPrivateCreateDirAsync
+/* 802EC118 002E7D78 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC11C 002E7D7C 40 82 01 54 */ bne lbl_802EC270
+/* 802EC120 002E7D80 48 00 01 E8 */ b lbl_802EC308
+lbl_802EC124:
+/* 802EC124 002E7D84 38 00 00 05 */ li r0, 5
+/* 802EC128 002E7D88 3C 60 80 40 */ lis r3, lbl_803FE070@ha
+/* 802EC12C 002E7D8C 3C C0 80 2F */ lis r6, MyNandCallback@ha
+/* 802EC130 002E7D90 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC134 002E7D94 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l
+/* 802EC138 002E7D98 38 E7 00 94 */ addi r7, r7, 0x94
+/* 802EC13C 002E7D9C 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l
+/* 802EC140 002E7DA0 38 80 00 3F */ li r4, 0x3f
+/* 802EC144 002E7DA4 38 A0 00 00 */ li r5, 0
+/* 802EC148 002E7DA8 4B FF B5 91 */ bl NANDPrivateCreateAsync
+/* 802EC14C 002E7DAC 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC150 002E7DB0 40 82 01 20 */ bne lbl_802EC270
+/* 802EC154 002E7DB4 48 00 01 B4 */ b lbl_802EC308
+lbl_802EC158:
+/* 802EC158 002E7DB8 38 00 00 06 */ li r0, 6
+/* 802EC15C 002E7DBC 3C 60 80 40 */ lis r3, lbl_803FE070@ha
+/* 802EC160 002E7DC0 3C C0 80 2F */ lis r6, MyNandCallback@ha
+/* 802EC164 002E7DC4 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC168 002E7DC8 38 87 00 08 */ addi r4, r7, 8
+/* 802EC16C 002E7DCC 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l
+/* 802EC170 002E7DD0 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l
+/* 802EC174 002E7DD4 38 E7 00 94 */ addi r7, r7, 0x94
+/* 802EC178 002E7DD8 38 A0 00 02 */ li r5, 2
+/* 802EC17C 002E7DDC 4B FF C4 1D */ bl NANDPrivateOpenAsync
+/* 802EC180 002E7DE0 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC184 002E7DE4 40 82 00 EC */ bne lbl_802EC270
+/* 802EC188 002E7DE8 48 00 01 80 */ b lbl_802EC308
+/* 802EC18C 002E7DEC 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC190 002E7DF0 40 82 00 E0 */ bne lbl_802EC270
+/* 802EC194 002E7DF4 38 60 00 01 */ li r3, 1
+/* 802EC198 002E7DF8 38 00 00 07 */ li r0, 7
+/* 802EC19C 002E7DFC 3C 80 80 57 */ lis r4, lbl_80575060@ha
+/* 802EC1A0 002E7E00 3C C0 80 2F */ lis r6, MyNandCallback@ha
+/* 802EC1A4 002E7E04 98 67 01 55 */ stb r3, 0x155(r7)
+/* 802EC1A8 002E7E08 38 67 00 08 */ addi r3, r7, 8
+/* 802EC1AC 002E7E0C 80 A7 01 88 */ lwz r5, 0x188(r7)
+/* 802EC1B0 002E7E10 38 84 50 60 */ addi r4, r4, lbl_80575060@l
+/* 802EC1B4 002E7E14 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC1B8 002E7E18 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l
+/* 802EC1BC 002E7E1C 38 E7 00 94 */ addi r7, r7, 0x94
+/* 802EC1C0 002E7E20 4B FF B8 49 */ bl NANDWriteAsync
+/* 802EC1C4 002E7E24 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC1C8 002E7E28 40 82 00 A8 */ bne lbl_802EC270
+/* 802EC1CC 002E7E2C 48 00 01 3C */ b lbl_802EC308
+/* 802EC1D0 002E7E30 80 07 01 88 */ lwz r0, 0x188(r7)
+/* 802EC1D4 002E7E34 7C 03 00 40 */ cmplw r3, r0
+/* 802EC1D8 002E7E38 40 82 00 98 */ bne lbl_802EC270
+/* 802EC1DC 002E7E3C 38 60 00 00 */ li r3, 0
+/* 802EC1E0 002E7E40 38 00 00 08 */ li r0, 8
+/* 802EC1E4 002E7E44 3C 80 80 2F */ lis r4, MyNandCallback@ha
+/* 802EC1E8 002E7E48 98 67 01 55 */ stb r3, 0x155(r7)
+/* 802EC1EC 002E7E4C 38 67 00 08 */ addi r3, r7, 8
+/* 802EC1F0 002E7E50 38 A7 00 94 */ addi r5, r7, 0x94
+/* 802EC1F4 002E7E54 98 07 01 54 */ stb r0, 0x154(r7)
+/* 802EC1F8 002E7E58 38 84 BF E8 */ addi r4, r4, MyNandCallback@l
+/* 802EC1FC 002E7E5C 4B FF C4 F9 */ bl NANDCloseAsync
+/* 802EC200 002E7E60 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC204 002E7E64 40 82 00 6C */ bne lbl_802EC270
+/* 802EC208 002E7E68 48 00 01 00 */ b lbl_802EC308
+/* 802EC20C 002E7E6C 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC210 002E7E70 40 82 00 60 */ bne lbl_802EC270
+/* 802EC214 002E7E74 3F C0 80 57 */ lis r30, lbl_80570EC0@ha
+/* 802EC218 002E7E78 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l
+/* 802EC21C 002E7E7C 80 1E 01 84 */ lwz r0, 0x184(r30)
+/* 802EC220 002E7E80 2C 00 00 00 */ cmpwi r0, 0
+/* 802EC224 002E7E84 41 82 00 0C */ beq lbl_802EC230
+/* 802EC228 002E7E88 38 00 00 01 */ li r0, 1
+/* 802EC22C 002E7E8C 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+lbl_802EC230:
+/* 802EC230 002E7E90 81 9E 01 80 */ lwz r12, 0x180(r30)
+/* 802EC234 002E7E94 2C 0C 00 00 */ cmpwi r12, 0
+/* 802EC238 002E7E98 41 82 00 2C */ beq lbl_802EC264
+/* 802EC23C 002E7E9C 3B E0 00 00 */ li r31, 0
+/* 802EC240 002E7EA0 80 7E 01 84 */ lwz r3, 0x184(r30)
+/* 802EC244 002E7EA4 93 FE 01 80 */ stw r31, 0x180(r30)
+/* 802EC248 002E7EA8 7D 89 03 A6 */ mtctr r12
+/* 802EC24C 002E7EAC 4E 80 04 21 */ bctrl
+/* 802EC250 002E7EB0 80 1E 00 00 */ lwz r0, 0(r30)
+/* 802EC254 002E7EB4 7C 00 F8 40 */ cmplw r0, r31
+/* 802EC258 002E7EB8 41 82 00 0C */ beq lbl_802EC264
+/* 802EC25C 002E7EBC 7F C3 F3 78 */ mr r3, r30
+/* 802EC260 002E7EC0 4B F8 62 01 */ bl OSWakeupThread
+lbl_802EC264:
+/* 802EC264 002E7EC4 80 1E 01 84 */ lwz r0, 0x184(r30)
+/* 802EC268 002E7EC8 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13)
+/* 802EC26C 002E7ECC 48 00 00 9C */ b lbl_802EC308
+lbl_802EC270:
+/* 802EC270 002E7ED0 3C A0 80 57 */ lis r5, lbl_80570EC0@ha
+/* 802EC274 002E7ED4 38 60 00 02 */ li r3, 2
+/* 802EC278 002E7ED8 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l
+/* 802EC27C 002E7EDC 88 05 01 55 */ lbz r0, 0x155(r5)
+/* 802EC280 002E7EE0 90 65 01 84 */ stw r3, 0x184(r5)
+/* 802EC284 002E7EE4 2C 00 00 00 */ cmpwi r0, 0
+/* 802EC288 002E7EE8 41 82 00 28 */ beq lbl_802EC2B0
+/* 802EC28C 002E7EEC 38 00 00 09 */ li r0, 9
+/* 802EC290 002E7EF0 3C 80 80 2F */ lis r4, MyNandCallback@ha
+/* 802EC294 002E7EF4 98 05 01 54 */ stb r0, 0x154(r5)
+/* 802EC298 002E7EF8 38 65 00 08 */ addi r3, r5, 8
+/* 802EC29C 002E7EFC 38 84 BF E8 */ addi r4, r4, MyNandCallback@l
+/* 802EC2A0 002E7F00 38 A5 00 94 */ addi r5, r5, 0x94
+/* 802EC2A4 002E7F04 4B FF C4 51 */ bl NANDCloseAsync
+/* 802EC2A8 002E7F08 2C 03 00 00 */ cmpwi r3, 0
+/* 802EC2AC 002E7F0C 41 82 00 5C */ beq lbl_802EC308
+lbl_802EC2B0:
+/* 802EC2B0 002E7F10 3F C0 80 57 */ lis r30, lbl_80570EC0@ha
+/* 802EC2B4 002E7F14 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l
+/* 802EC2B8 002E7F18 80 1E 01 84 */ lwz r0, 0x184(r30)
+/* 802EC2BC 002E7F1C 2C 00 00 00 */ cmpwi r0, 0
+/* 802EC2C0 002E7F20 41 82 00 0C */ beq lbl_802EC2CC
+/* 802EC2C4 002E7F24 38 00 00 01 */ li r0, 1
+/* 802EC2C8 002E7F28 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13)
+lbl_802EC2CC:
+/* 802EC2CC 002E7F2C 81 9E 01 80 */ lwz r12, 0x180(r30)
+/* 802EC2D0 002E7F30 2C 0C 00 00 */ cmpwi r12, 0
+/* 802EC2D4 002E7F34 41 82 00 2C */ beq lbl_802EC300
+/* 802EC2D8 002E7F38 3B E0 00 00 */ li r31, 0
+/* 802EC2DC 002E7F3C 80 7E 01 84 */ lwz r3, 0x184(r30)
+/* 802EC2E0 002E7F40 93 FE 01 80 */ stw r31, 0x180(r30)
+/* 802EC2E4 002E7F44 7D 89 03 A6 */ mtctr r12
+/* 802EC2E8 002E7F48 4E 80 04 21 */ bctrl
+/* 802EC2EC 002E7F4C 80 1E 00 00 */ lwz r0, 0(r30)
+/* 802EC2F0 002E7F50 7C 00 F8 40 */ cmplw r0, r31
+/* 802EC2F4 002E7F54 41 82 00 0C */ beq lbl_802EC300
+/* 802EC2F8 002E7F58 7F C3 F3 78 */ mr r3, r30
+/* 802EC2FC 002E7F5C 4B F8 61 65 */ bl OSWakeupThread
+lbl_802EC300:
+/* 802EC300 002E7F60 80 1E 01 84 */ lwz r0, 0x184(r30)
+/* 802EC304 002E7F64 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13)
+lbl_802EC308:
+/* 802EC308 002E7F68 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802EC30C 002E7F6C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802EC310 002E7F70 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802EC314 002E7F74 7C 08 03 A6 */ mtlr r0
+/* 802EC318 002E7F78 38 21 00 10 */ addi r1, r1, 0x10
+/* 802EC31C 002E7F7C 4E 80 00 20 */ blr
diff --git a/asm/SDK/WPAD/WPAD.s b/asm/SDK/WPAD/WPAD.s
index 7bae24b..0dca761 100644
--- a/asm/SDK/WPAD/WPAD.s
+++ b/asm/SDK/WPAD/WPAD.s
@@ -1788,7 +1788,7 @@ lbl_802A748C:
/* 802A74F8 002A3158 98 AD AE 3C */ stb r5, lbl_806400FC-_SDA_BASE_(r13)
/* 802A74FC 002A315C B0 6D AE 3E */ sth r3, lbl_806400FE-_SDA_BASE_(r13)
/* 802A7500 002A3160 41 82 00 34 */ beq lbl_802A7534
-/* 802A7504 002A3164 48 04 34 E9 */ bl func_802EA9EC
+/* 802A7504 002A3164 48 04 34 E9 */ bl SCCheckStatus
/* 802A7508 002A3168 2C 03 00 00 */ cmpwi r3, 0
/* 802A750C 002A316C 40 82 00 28 */ bne lbl_802A7534
/* 802A7510 002A3170 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
@@ -1797,14 +1797,14 @@ lbl_802A748C:
/* 802A751C 002A317C 2C 03 00 01 */ cmpwi r3, 1
/* 802A7520 002A3180 40 82 00 14 */ bne lbl_802A7534
/* 802A7524 002A3184 38 60 00 00 */ li r3, 0
-/* 802A7528 002A3188 48 04 48 A5 */ bl func_802EBDCC
+/* 802A7528 002A3188 48 04 48 A5 */ bl SCFlushAsync
/* 802A752C 002A318C 38 00 00 00 */ li r0, 0
/* 802A7530 002A3190 98 0D AE 59 */ stb r0, lbl_80640119-_SDA_BASE_(r13)
lbl_802A7534:
/* 802A7534 002A3194 88 0D AE 4E */ lbz r0, lbl_8064010E-_SDA_BASE_(r13)
/* 802A7538 002A3198 2C 00 00 00 */ cmpwi r0, 0
/* 802A753C 002A319C 41 82 00 94 */ beq lbl_802A75D0
-/* 802A7540 002A31A0 48 04 34 AD */ bl func_802EA9EC
+/* 802A7540 002A31A0 48 04 34 AD */ bl SCCheckStatus
/* 802A7544 002A31A4 2C 03 00 00 */ cmpwi r3, 0
/* 802A7548 002A31A8 40 82 00 88 */ bne lbl_802A75D0
/* 802A754C 002A31AC 48 04 50 CD */ bl func_802EC618
@@ -4075,7 +4075,7 @@ WPADSaveConfig:
/* 802A95D4 002A5234 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A95D8 002A5238 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A95DC 002A523C 7C 7D 1B 78 */ mr r29, r3
-/* 802A95E0 002A5240 48 04 14 0D */ bl func_802EA9EC
+/* 802A95E0 002A5240 48 04 14 0D */ bl SCCheckStatus
/* 802A95E4 002A5244 2C 03 00 00 */ cmpwi r3, 0
/* 802A95E8 002A5248 41 82 00 0C */ beq lbl_802A95F4
/* 802A95EC 002A524C 38 60 00 00 */ li r3, 0
@@ -4096,7 +4096,7 @@ lbl_802A95F4:
/* 802A9624 002A5284 7F DE 18 39 */ and. r30, r30, r3
/* 802A9628 002A5288 41 82 00 10 */ beq lbl_802A9638
/* 802A962C 002A528C 7F A3 EB 78 */ mr r3, r29
-/* 802A9630 002A5290 48 04 27 9D */ bl func_802EBDCC
+/* 802A9630 002A5290 48 04 27 9D */ bl SCFlushAsync
/* 802A9634 002A5294 48 00 00 1C */ b lbl_802A9650
lbl_802A9638:
/* 802A9638 002A5298 2C 1D 00 00 */ cmpwi r29, 0
diff --git a/asm/SDK/WUD/WUD.s b/asm/SDK/WUD/WUD.s
index 20273c7..124808a 100644
--- a/asm/SDK/WUD/WUD.s
+++ b/asm/SDK/WUD/WUD.s
@@ -246,7 +246,7 @@ WUDiSaveDeviceToNand:
/* 802B5004 002B0C64 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B5008 002B0C68 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B500C 002B0C6C 93 81 00 10 */ stw r28, 0x10(r1)
-/* 802B5010 002B0C70 48 03 59 DD */ bl func_802EA9EC
+/* 802B5010 002B0C70 48 03 59 DD */ bl SCCheckStatus
/* 802B5014 002B0C74 20 83 00 01 */ subfic r4, r3, 1
/* 802B5018 002B0C78 38 03 FF FF */ addi r0, r3, -1
/* 802B501C 002B0C7C 7C 80 03 78 */ or r0, r4, r0
@@ -926,7 +926,7 @@ lbl_802B597C:
/* 802B5988 002B15E8 4B FB 8D FD */ bl OSRestoreInterrupts
/* 802B598C 002B15EC 3C 60 80 2B */ lis r3, SyncFlushCallback@ha
/* 802B5990 002B15F0 38 63 4D 60 */ addi r3, r3, SyncFlushCallback@l
-/* 802B5994 002B15F4 48 03 64 39 */ bl func_802EBDCC
+/* 802B5994 002B15F4 48 03 64 39 */ bl SCFlushAsync
/* 802B5998 002B15F8 48 00 00 F0 */ b lbl_802B5A88
lbl_802B599C:
/* 802B599C 002B15FC 88 1D 00 0E */ lbz r0, 0xe(r29)
@@ -1147,7 +1147,7 @@ DeleteAllHandler:
/* 802B5C7C 002B18DC 4B FF FE DD */ bl WUDiDeleteDevice
/* 802B5C80 002B18E0 98 7D 00 0D */ stb r3, 0xd(r29)
/* 802B5C84 002B18E4 48 00 00 A0 */ b lbl_802B5D24
-/* 802B5C88 002B18E8 48 03 4D 65 */ bl func_802EA9EC
+/* 802B5C88 002B18E8 48 03 4D 65 */ bl SCCheckStatus
/* 802B5C8C 002B18EC 28 03 00 01 */ cmplwi r3, 1
/* 802B5C90 002B18F0 41 82 00 94 */ beq lbl_802B5D24
/* 802B5C94 002B18F4 3F E0 80 54 */ lis r31, lbl_8053AC28@ha
@@ -1163,7 +1163,7 @@ DeleteAllHandler:
/* 802B5CBC 002B191C 3C 60 80 2B */ lis r3, DeleteFlushCallback@ha
/* 802B5CC0 002B1920 98 1D 00 0D */ stb r0, 0xd(r29)
/* 802B5CC4 002B1924 38 63 4D D8 */ addi r3, r3, DeleteFlushCallback@l
-/* 802B5CC8 002B1928 48 03 61 05 */ bl func_802EBDCC
+/* 802B5CC8 002B1928 48 03 61 05 */ bl SCFlushAsync
/* 802B5CCC 002B192C 48 00 00 58 */ b lbl_802B5D24
/* 802B5CD0 002B1930 4B FB 8A 8D */ bl OSDisableInterrupts
/* 802B5CD4 002B1934 8B DD 06 EA */ lbz r30, 0x6ea(r29)
@@ -1538,7 +1538,7 @@ lbl_802B61D0:
/* 802B6200 002B1E60 20 00 01 F4 */ subfic r0, r0, 0x1f4
/* 802B6204 002B1E64 2C 00 00 00 */ cmpwi r0, 0
/* 802B6208 002B1E68 40 80 00 18 */ bge lbl_802B6220
-/* 802B620C 002B1E6C 48 03 47 E1 */ bl func_802EA9EC
+/* 802B620C 002B1E6C 48 03 47 E1 */ bl SCCheckStatus
/* 802B6210 002B1E70 28 03 00 01 */ cmplwi r3, 1
/* 802B6214 002B1E74 41 82 00 0C */ beq lbl_802B6220
/* 802B6218 002B1E78 48 00 01 1D */ bl InitCore
@@ -1593,7 +1593,7 @@ ShutdownHandler:
/* 802B62BC 002B1F1C 40 80 00 08 */ bge lbl_802B62C4
/* 802B62C0 002B1F20 48 00 00 40 */ b lbl_802B6300
lbl_802B62C4:
-/* 802B62C4 002B1F24 48 03 47 29 */ bl func_802EA9EC
+/* 802B62C4 002B1F24 48 03 47 29 */ bl SCCheckStatus
/* 802B62C8 002B1F28 28 03 00 01 */ cmplwi r3, 1
/* 802B62CC 002B1F2C 41 82 00 2C */ beq lbl_802B62F8
/* 802B62D0 002B1F30 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
@@ -1603,7 +1603,7 @@ lbl_802B62C4:
/* 802B62E0 002B1F40 41 82 00 18 */ beq lbl_802B62F8
/* 802B62E4 002B1F44 3C 60 80 2B */ lis r3, ShutFlushCallback@ha
/* 802B62E8 002B1F48 38 63 4E 30 */ addi r3, r3, ShutFlushCallback@l
-/* 802B62EC 002B1F4C 48 03 5A E1 */ bl func_802EBDCC
+/* 802B62EC 002B1F4C 48 03 5A E1 */ bl SCFlushAsync
/* 802B62F0 002B1F50 38 00 00 02 */ li r0, 2
/* 802B62F4 002B1F54 48 00 00 08 */ b lbl_802B62FC
lbl_802B62F8:
@@ -1913,7 +1913,7 @@ lbl_802B66F0:
/* 802B6740 002B23A0 90 1E 06 F0 */ stw r0, 0x6f0(r30)
/* 802B6744 002B23A4 90 1E 06 EC */ stw r0, 0x6ec(r30)
/* 802B6748 002B23A8 9B FE 00 10 */ stb r31, 0x10(r30)
-/* 802B674C 002B23AC 48 03 42 01 */ bl func_802EA94C
+/* 802B674C 002B23AC 48 03 42 01 */ bl SCInit
/* 802B6750 002B23B0 38 7E 07 10 */ addi r3, r30, 0x710
/* 802B6754 002B23B4 4B FB 2F D1 */ bl OSCreateAlarm
/* 802B6758 002B23B8 4B FB C0 61 */ bl OSGetTime