summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--asm/nw4r/snd/detail/snd_BasicSound.s16
-rw-r--r--asm/nw4r/snd/snd_SoundArchivePlayer.s18
-rw-r--r--asm/nw4r/snd/snd_SoundPlayer.s1581
-rw-r--r--asm/text_10_6.s1574
-rw-r--r--asm/text_11.s12
-rw-r--r--asm/text_7.s6
-rw-r--r--obj_files.mk1
7 files changed, 1608 insertions, 1600 deletions
diff --git a/asm/nw4r/snd/detail/snd_BasicSound.s b/asm/nw4r/snd/detail/snd_BasicSound.s
index 32ac4bc..f5408db 100644
--- a/asm/nw4r/snd/detail/snd_BasicSound.s
+++ b/asm/nw4r/snd/detail/snd_BasicSound.s
@@ -771,11 +771,11 @@ lbl_8036DA78:
/* 8036DAC4 00369724 C0 1D 00 98 */ lfs f0, 0x98(r29)
/* 8036DAC8 00369728 EF 5A 00 72 */ fmuls f26, f26, f1
/* 8036DACC 0036972C EF 7B 00 32 */ fmuls f27, f27, f0
-/* 8036DAD0 00369730 48 00 D4 CD */ bl func_8037AF9C
+/* 8036DAD0 00369730 48 00 D4 CD */ bl detail_IsEnabledOutputLine__Q34nw4r3snd11SoundPlayerCFv
/* 8036DAD4 00369734 2C 03 00 00 */ cmpwi r3, 0
/* 8036DAD8 00369738 41 82 00 10 */ beq lbl_8036DAE8
/* 8036DADC 0036973C 80 7D 00 10 */ lwz r3, 0x10(r29)
-/* 8036DAE0 00369740 48 00 D4 B5 */ bl func_8037AF94
+/* 8036DAE0 00369740 48 00 D4 B5 */ bl detail_GetOutputLine__Q34nw4r3snd11SoundPlayerCFv
/* 8036DAE4 00369744 7C 7A 1B 78 */ mr r26, r3
lbl_8036DAE8:
/* 8036DAE8 00369748 88 1D 00 9C */ lbz r0, 0x9c(r29)
@@ -791,7 +791,7 @@ lbl_8036DB08:
/* 8036DB08 00369768 D3 DC 00 00 */ stfs f30, 0(r28)
/* 8036DB0C 0036976C 7F 24 CB 78 */ mr r4, r25
/* 8036DB10 00369770 80 7D 00 10 */ lwz r3, 0x10(r29)
-/* 8036DB14 00369774 48 00 D4 91 */ bl func_8037AFA4
+/* 8036DB14 00369774 48 00 D4 91 */ bl detail_GetRemoteOutVolume__Q34nw4r3snd11SoundPlayerCFi
/* 8036DB18 00369778 C0 1C 00 00 */ lfs f0, 0(r28)
/* 8036DB1C 0036977C 3B 39 00 01 */ addi r25, r25, 1
/* 8036DB20 00369780 C0 5B 00 A8 */ lfs f2, 0xa8(r27)
@@ -953,14 +953,14 @@ lbl_8036DD58:
/* 8036DD60 003699C0 41 82 00 10 */ beq lbl_8036DD70
/* 8036DD64 003699C4 80 7E 00 10 */ lwz r3, 0x10(r30)
/* 8036DD68 003699C8 7F C4 F3 78 */ mr r4, r30
-/* 8036DD6C 003699CC 48 00 E3 1D */ bl func_8037C088
+/* 8036DD6C 003699CC 48 00 E3 1D */ bl detail_FreePlayerHeap__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
lbl_8036DD70:
/* 8036DD70 003699D0 80 7E 00 10 */ lwz r3, 0x10(r30)
/* 8036DD74 003699D4 7F C4 F3 78 */ mr r4, r30
-/* 8036DD78 003699D8 48 00 D3 6D */ bl func_8037B0E4
+/* 8036DD78 003699D8 48 00 D3 6D */ bl detail_RemovePriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
/* 8036DD7C 003699DC 80 7E 00 10 */ lwz r3, 0x10(r30)
/* 8036DD80 003699E0 7F C4 F3 78 */ mr r4, r30
-/* 8036DD84 003699E4 48 00 D2 31 */ bl func_8037AFB4
+/* 8036DD84 003699E4 48 00 D2 31 */ bl detail_RemoveSoundList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
/* 8036DD88 003699E8 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 8036DD8C 003699EC 2C 03 00 00 */ cmpwi r3, 0
/* 8036DD90 003699F0 41 82 00 0C */ beq lbl_8036DD9C
@@ -1002,10 +1002,10 @@ SetPlayerPriority__Q44nw4r3snd6detail10BasicSoundFi:
/* 8036DE0C 00369A6C 41 82 00 1C */ beq lbl_8036DE28
/* 8036DE10 00369A70 7C 03 03 78 */ mr r3, r0
/* 8036DE14 00369A74 7F E4 FB 78 */ mr r4, r31
-/* 8036DE18 00369A78 48 00 D2 CD */ bl func_8037B0E4
+/* 8036DE18 00369A78 48 00 D2 CD */ bl detail_RemovePriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
/* 8036DE1C 00369A7C 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 8036DE20 00369A80 7F E4 FB 78 */ mr r4, r31
-/* 8036DE24 00369A84 48 00 D1 F5 */ bl func_8037B018
+/* 8036DE24 00369A84 48 00 D1 F5 */ bl detail_InsertPriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
lbl_8036DE28:
/* 8036DE28 00369A88 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036DE2C 00369A8C 83 E1 00 0C */ lwz r31, 0xc(r1)
diff --git a/asm/nw4r/snd/snd_SoundArchivePlayer.s b/asm/nw4r/snd/snd_SoundArchivePlayer.s
index e125823..a0a64c4 100644
--- a/asm/nw4r/snd/snd_SoundArchivePlayer.s
+++ b/asm/nw4r/snd/snd_SoundArchivePlayer.s
@@ -368,7 +368,7 @@ lbl_80378E7C:
/* 80378E7C 00374ADC 80 1B 00 34 */ lwz r0, 0x34(r27)
/* 80378E80 00374AE0 38 80 FF FF */ li r4, -1
/* 80378E84 00374AE4 7C 60 E2 14 */ add r3, r0, r28
-/* 80378E88 00374AE8 48 00 1E 91 */ bl func_8037AD18
+/* 80378E88 00374AE8 48 00 1E 91 */ bl __dt__Q34nw4r3snd11SoundPlayerFv
/* 80378E8C 00374AEC 3B 9C 00 60 */ addi r28, r28, 0x60
/* 80378E90 00374AF0 3B BD 00 01 */ addi r29, r29, 1
lbl_80378E94:
@@ -759,7 +759,7 @@ lbl_803793F0:
/* 803793F4 00375054 7F DC F3 78 */ mr r28, r30
/* 803793F8 00375058 41 82 00 10 */ beq lbl_80379408
/* 803793FC 0037505C 7F C3 F3 78 */ mr r3, r30
-/* 80379400 00375060 48 00 17 DD */ bl func_8037ABDC
+/* 80379400 00375060 48 00 17 DD */ bl __ct__Q34nw4r3snd11SoundPlayerFv
/* 80379404 00375064 7C 7C 1B 78 */ mr r28, r3
lbl_80379408:
/* 80379408 00375068 7F 03 C3 78 */ mr r3, r24
@@ -770,10 +770,10 @@ lbl_80379408:
/* 8037941C 0037507C 41 82 00 CC */ beq lbl_803794E8
/* 80379420 00375080 80 81 00 08 */ lwz r4, 8(r1)
/* 80379424 00375084 7F 83 E3 78 */ mr r3, r28
-/* 80379428 00375088 48 00 29 A9 */ bl func_8037BDD0
+/* 80379428 00375088 48 00 29 A9 */ bl SetPlayableSoundCount__Q34nw4r3snd11SoundPlayerFi
/* 8037942C 0037508C 80 81 00 08 */ lwz r4, 8(r1)
/* 80379430 00375090 7F 83 E3 78 */ mr r3, r28
-/* 80379434 00375094 48 00 2A 3D */ bl func_8037BE70
+/* 80379434 00375094 48 00 2A 3D */ bl detail_SetPlayableSoundLimit__Q34nw4r3snd11SoundPlayerFi
/* 80379438 00375098 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8037943C 0037509C 2C 00 00 00 */ cmpwi r0, 0
/* 80379440 003750A0 41 82 00 A8 */ beq lbl_803794E8
@@ -819,7 +819,7 @@ lbl_803794BC:
lbl_803794CC:
/* 803794CC 0037512C 7F 83 E3 78 */ mr r3, r28
/* 803794D0 00375130 7E 84 A3 78 */ mr r4, r20
-/* 803794D4 00375134 48 00 2B 41 */ bl func_8037C014
+/* 803794D4 00375134 48 00 2B 41 */ bl detail_AppendPlayerHeap__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10PlayerHeap
/* 803794D8 00375138 3B 7B 00 01 */ addi r27, r27, 1
lbl_803794DC:
/* 803794DC 0037513C 80 01 00 08 */ lwz r0, 8(r1)
@@ -854,7 +854,7 @@ Update__Q34nw4r3snd18SoundArchivePlayerFv:
lbl_80379538:
/* 80379538 00375198 80 1F 00 34 */ lwz r0, 0x34(r31)
/* 8037953C 0037519C 7C 60 DA 14 */ add r3, r0, r27
-/* 80379540 003751A0 48 00 18 A1 */ bl func_8037ADE0
+/* 80379540 003751A0 48 00 18 A1 */ bl Update__Q34nw4r3snd11SoundPlayerFv
/* 80379544 003751A4 3B 7B 00 60 */ addi r27, r27, 0x60
/* 80379548 003751A8 3B 5A 00 01 */ addi r26, r26, 1
lbl_8037954C:
@@ -1399,7 +1399,7 @@ lbl_80379C94:
/* 80379CA4 00375904 7F E7 FB 78 */ mr r7, r31
/* 80379CA8 00375908 7F A8 EB 78 */ mr r8, r29
/* 80379CAC 0037590C 39 3B 00 38 */ addi r9, r27, 0x38
-/* 80379CB0 00375910 48 00 15 D5 */ bl func_8037B284
+/* 80379CB0 00375910 48 00 15 D5 */ bl detail_AllocSeqSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1
/* 80379CB4 00375914 2C 03 00 00 */ cmpwi r3, 0
/* 80379CB8 00375918 7C 78 1B 78 */ mr r24, r3
/* 80379CBC 0037591C 40 82 00 0C */ bne lbl_80379CC8
@@ -1444,7 +1444,7 @@ lbl_80379D3C:
/* 80379D4C 003759AC 7F E7 FB 78 */ mr r7, r31
/* 80379D50 003759B0 7F A8 EB 78 */ mr r8, r29
/* 80379D54 003759B4 39 3B 00 60 */ addi r9, r27, 0x60
-/* 80379D58 003759B8 48 00 18 F1 */ bl func_8037B648
+/* 80379D58 003759B8 48 00 18 F1 */ bl detail_AllocStrmSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail50SoundInstanceManager$0Q44nw4r3snd6detail9StrmSound$1
/* 80379D5C 003759BC 2C 03 00 00 */ cmpwi r3, 0
/* 80379D60 003759C0 7C 78 1B 78 */ mr r24, r3
/* 80379D64 003759C4 40 82 00 0C */ bne lbl_80379D70
@@ -1489,7 +1489,7 @@ lbl_80379DE4:
/* 80379DF4 00375A54 7F E7 FB 78 */ mr r7, r31
/* 80379DF8 00375A58 7F A8 EB 78 */ mr r8, r29
/* 80379DFC 00375A5C 39 3B 00 88 */ addi r9, r27, 0x88
-/* 80379E00 00375A60 48 00 1C 0D */ bl func_8037BA0C
+/* 80379E00 00375A60 48 00 1C 0D */ bl detail_AllocWaveSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail50SoundInstanceManager$0Q44nw4r3snd6detail9WaveSound$1
/* 80379E04 00375A64 2C 03 00 00 */ cmpwi r3, 0
/* 80379E08 00375A68 7C 78 1B 78 */ mr r24, r3
/* 80379E0C 00375A6C 40 82 00 0C */ bne lbl_80379E18
diff --git a/asm/nw4r/snd/snd_SoundPlayer.s b/asm/nw4r/snd/snd_SoundPlayer.s
new file mode 100644
index 0000000..16b2286
--- /dev/null
+++ b/asm/nw4r/snd/snd_SoundPlayer.s
@@ -0,0 +1,1581 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __ct__Q34nw4r3snd11SoundPlayerFv
+__ct__Q34nw4r3snd11SoundPlayerFv:
+/* 8037ABDC 0037683C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037ABE0 00376840 7C 08 02 A6 */ mflr r0
+/* 8037ABE4 00376844 38 83 00 04 */ addi r4, r3, 4
+/* 8037ABE8 00376848 38 A3 00 10 */ addi r5, r3, 0x10
+/* 8037ABEC 0037684C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037ABF0 00376850 38 C3 00 1C */ addi r6, r3, 0x1c
+/* 8037ABF4 00376854 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037ABF8 00376858 3B E0 00 01 */ li r31, 1
+/* 8037ABFC 0037685C 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037AC00 00376860 3B C0 00 00 */ li r30, 0
+/* 8037AC04 00376864 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037AC08 00376868 7C 7D 1B 78 */ mr r29, r3
+/* 8037AC0C 0037686C 93 C3 00 04 */ stw r30, 4(r3)
+/* 8037AC10 00376870 93 C3 00 08 */ stw r30, 8(r3)
+/* 8037AC14 00376874 93 C3 00 10 */ stw r30, 0x10(r3)
+/* 8037AC18 00376878 93 C3 00 14 */ stw r30, 0x14(r3)
+/* 8037AC1C 0037687C 93 C3 00 1C */ stw r30, 0x1c(r3)
+/* 8037AC20 00376880 93 C3 00 20 */ stw r30, 0x20(r3)
+/* 8037AC24 00376884 93 C3 00 00 */ stw r30, 0(r3)
+/* 8037AC28 00376888 90 83 00 04 */ stw r4, 4(r3)
+/* 8037AC2C 0037688C 90 83 00 08 */ stw r4, 8(r3)
+/* 8037AC30 00376890 93 C3 00 0C */ stw r30, 0xc(r3)
+/* 8037AC34 00376894 90 A3 00 10 */ stw r5, 0x10(r3)
+/* 8037AC38 00376898 90 A3 00 14 */ stw r5, 0x14(r3)
+/* 8037AC3C 0037689C 93 C3 00 18 */ stw r30, 0x18(r3)
+/* 8037AC40 003768A0 90 C3 00 1C */ stw r6, 0x1c(r3)
+/* 8037AC44 003768A4 90 C3 00 20 */ stw r6, 0x20(r3)
+/* 8037AC48 003768A8 B3 E3 00 24 */ sth r31, 0x24(r3)
+/* 8037AC4C 003768AC B3 E3 00 26 */ sth r31, 0x26(r3)
+/* 8037AC50 003768B0 9B C3 00 2D */ stb r30, 0x2d(r3)
+/* 8037AC54 003768B4 38 63 00 48 */ addi r3, r3, 0x48
+/* 8037AC58 003768B8 4B EF 4C B9 */ bl func_8026F910
+/* 8037AC5C 003768BC C0 02 A7 60 */ lfs f0, lbl_80642D60-_SDA2_BASE_(r2)
+/* 8037AC60 003768C0 7F A3 EB 78 */ mr r3, r29
+/* 8037AC64 003768C4 93 FD 00 30 */ stw r31, 0x30(r29)
+/* 8037AC68 003768C8 D0 1D 00 28 */ stfs f0, 0x28(r29)
+/* 8037AC6C 003768CC 9B DD 00 2C */ stb r30, 0x2c(r29)
+/* 8037AC70 003768D0 D0 1D 00 34 */ stfs f0, 0x34(r29)
+/* 8037AC74 003768D4 D0 1D 00 38 */ stfs f0, 0x38(r29)
+/* 8037AC78 003768D8 D0 1D 00 3C */ stfs f0, 0x3c(r29)
+/* 8037AC7C 003768DC D0 1D 00 40 */ stfs f0, 0x40(r29)
+/* 8037AC80 003768E0 D0 1D 00 44 */ stfs f0, 0x44(r29)
+/* 8037AC84 003768E4 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037AC88 003768E8 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037AC8C 003768EC 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037AC90 003768F0 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037AC94 003768F4 7C 08 03 A6 */ mtlr r0
+/* 8037AC98 003768F8 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037AC9C 003768FC 4E 80 00 20 */ blr
+
+.global __ct__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv
+__ct__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv:
+/* 8037ACA0 00376900 38 00 00 00 */ li r0, 0
+/* 8037ACA4 00376904 38 83 00 04 */ addi r4, r3, 4
+/* 8037ACA8 00376908 90 03 00 04 */ stw r0, 4(r3)
+/* 8037ACAC 0037690C 90 03 00 08 */ stw r0, 8(r3)
+/* 8037ACB0 00376910 90 03 00 00 */ stw r0, 0(r3)
+/* 8037ACB4 00376914 90 83 00 04 */ stw r4, 4(r3)
+/* 8037ACB8 00376918 90 83 00 08 */ stw r4, 8(r3)
+/* 8037ACBC 0037691C 4E 80 00 20 */ blr
+
+.global __dt__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv
+__dt__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv:
+/* 8037ACC0 00376920 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8037ACC4 00376924 7C 08 02 A6 */ mflr r0
+/* 8037ACC8 00376928 2C 03 00 00 */ cmpwi r3, 0
+/* 8037ACCC 0037692C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8037ACD0 00376930 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8037ACD4 00376934 7C 9F 23 78 */ mr r31, r4
+/* 8037ACD8 00376938 93 C1 00 08 */ stw r30, 8(r1)
+/* 8037ACDC 0037693C 7C 7E 1B 78 */ mr r30, r3
+/* 8037ACE0 00376940 41 82 00 1C */ beq lbl_8037ACFC
+/* 8037ACE4 00376944 38 80 00 00 */ li r4, 0
+/* 8037ACE8 00376948 4B FE 7E 51 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
+/* 8037ACEC 0037694C 2C 1F 00 00 */ cmpwi r31, 0
+/* 8037ACF0 00376950 40 81 00 0C */ ble lbl_8037ACFC
+/* 8037ACF4 00376954 7F C3 F3 78 */ mr r3, r30
+/* 8037ACF8 00376958 4B E5 FD C1 */ bl func_801DAAB8
+lbl_8037ACFC:
+/* 8037ACFC 0037695C 7F C3 F3 78 */ mr r3, r30
+/* 8037AD00 00376960 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8037AD04 00376964 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8037AD08 00376968 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8037AD0C 0037696C 7C 08 03 A6 */ mtlr r0
+/* 8037AD10 00376970 38 21 00 10 */ addi r1, r1, 0x10
+/* 8037AD14 00376974 4E 80 00 20 */ blr
+
+.global __dt__Q34nw4r3snd11SoundPlayerFv
+__dt__Q34nw4r3snd11SoundPlayerFv:
+/* 8037AD18 00376978 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037AD1C 0037697C 7C 08 02 A6 */ mflr r0
+/* 8037AD20 00376980 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037AD24 00376984 39 61 00 20 */ addi r11, r1, 0x20
+/* 8037AD28 00376988 4B E4 C4 01 */ bl _savegpr_27
+/* 8037AD2C 0037698C 2C 03 00 00 */ cmpwi r3, 0
+/* 8037AD30 00376990 7C 7B 1B 78 */ mr r27, r3
+/* 8037AD34 00376994 7C 9C 23 78 */ mr r28, r4
+/* 8037AD38 00376998 41 82 00 8C */ beq lbl_8037ADC4
+/* 8037AD3C 0037699C 3B A3 00 48 */ addi r29, r3, 0x48
+/* 8037AD40 003769A0 7F A3 EB 78 */ mr r3, r29
+/* 8037AD44 003769A4 4B EF 4C 05 */ bl func_8026F948
+/* 8037AD48 003769A8 83 FB 00 04 */ lwz r31, 4(r27)
+/* 8037AD4C 003769AC 3B DB 00 04 */ addi r30, r27, 4
+/* 8037AD50 003769B0 48 00 00 20 */ b lbl_8037AD70
+lbl_8037AD54:
+/* 8037AD54 003769B4 7F E3 FB 78 */ mr r3, r31
+/* 8037AD58 003769B8 85 83 FF 40 */ lwzu r12, -0xc0(r3)
+/* 8037AD5C 003769BC 83 FF 00 00 */ lwz r31, 0(r31)
+/* 8037AD60 003769C0 38 80 00 00 */ li r4, 0
+/* 8037AD64 003769C4 81 8C 00 18 */ lwz r12, 0x18(r12)
+/* 8037AD68 003769C8 7D 89 03 A6 */ mtctr r12
+/* 8037AD6C 003769CC 4E 80 04 21 */ bctrl
+lbl_8037AD70:
+/* 8037AD70 003769D0 7C 1F F0 40 */ cmplw r31, r30
+/* 8037AD74 003769D4 40 82 FF E0 */ bne lbl_8037AD54
+/* 8037AD78 003769D8 7F A3 EB 78 */ mr r3, r29
+/* 8037AD7C 003769DC 4B EF 4C A9 */ bl func_8026FA24
+/* 8037AD80 003769E0 34 7B 00 18 */ addic. r3, r27, 0x18
+/* 8037AD84 003769E4 41 82 00 0C */ beq lbl_8037AD90
+/* 8037AD88 003769E8 38 80 00 00 */ li r4, 0
+/* 8037AD8C 003769EC 4B FE 7D AD */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
+lbl_8037AD90:
+/* 8037AD90 003769F0 34 7B 00 0C */ addic. r3, r27, 0xc
+/* 8037AD94 003769F4 41 82 00 0C */ beq lbl_8037ADA0
+/* 8037AD98 003769F8 38 80 00 00 */ li r4, 0
+/* 8037AD9C 003769FC 4B FE 7D 9D */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
+lbl_8037ADA0:
+/* 8037ADA0 00376A00 2C 1B 00 00 */ cmpwi r27, 0
+/* 8037ADA4 00376A04 41 82 00 10 */ beq lbl_8037ADB4
+/* 8037ADA8 00376A08 7F 63 DB 78 */ mr r3, r27
+/* 8037ADAC 00376A0C 38 80 00 00 */ li r4, 0
+/* 8037ADB0 00376A10 4B FE 7D 89 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
+lbl_8037ADB4:
+/* 8037ADB4 00376A14 2C 1C 00 00 */ cmpwi r28, 0
+/* 8037ADB8 00376A18 40 81 00 0C */ ble lbl_8037ADC4
+/* 8037ADBC 00376A1C 7F 63 DB 78 */ mr r3, r27
+/* 8037ADC0 00376A20 4B E5 FC F9 */ bl func_801DAAB8
+lbl_8037ADC4:
+/* 8037ADC4 00376A24 39 61 00 20 */ addi r11, r1, 0x20
+/* 8037ADC8 00376A28 7F 63 DB 78 */ mr r3, r27
+/* 8037ADCC 00376A2C 4B E4 C3 A9 */ bl _restgpr_27
+/* 8037ADD0 00376A30 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037ADD4 00376A34 7C 08 03 A6 */ mtlr r0
+/* 8037ADD8 00376A38 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037ADDC 00376A3C 4E 80 00 20 */ blr
+
+.global Update__Q34nw4r3snd11SoundPlayerFv
+Update__Q34nw4r3snd11SoundPlayerFv:
+/* 8037ADE0 00376A40 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037ADE4 00376A44 7C 08 02 A6 */ mflr r0
+/* 8037ADE8 00376A48 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037ADEC 00376A4C 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037ADF0 00376A50 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037ADF4 00376A54 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037ADF8 00376A58 3B A3 00 48 */ addi r29, r3, 0x48
+/* 8037ADFC 00376A5C 93 81 00 10 */ stw r28, 0x10(r1)
+/* 8037AE00 00376A60 7C 7C 1B 78 */ mr r28, r3
+/* 8037AE04 00376A64 7F A3 EB 78 */ mr r3, r29
+/* 8037AE08 00376A68 4B EF 4B 41 */ bl func_8026F948
+/* 8037AE0C 00376A6C 83 FC 00 04 */ lwz r31, 4(r28)
+/* 8037AE10 00376A70 3B DC 00 04 */ addi r30, r28, 4
+/* 8037AE14 00376A74 48 00 00 1C */ b lbl_8037AE30
+lbl_8037AE18:
+/* 8037AE18 00376A78 7F E3 FB 78 */ mr r3, r31
+/* 8037AE1C 00376A7C 85 83 FF 40 */ lwzu r12, -0xc0(r3)
+/* 8037AE20 00376A80 83 FF 00 00 */ lwz r31, 0(r31)
+/* 8037AE24 00376A84 81 8C 00 10 */ lwz r12, 0x10(r12)
+/* 8037AE28 00376A88 7D 89 03 A6 */ mtctr r12
+/* 8037AE2C 00376A8C 4E 80 04 21 */ bctrl
+lbl_8037AE30:
+/* 8037AE30 00376A90 7C 1F F0 40 */ cmplw r31, r30
+/* 8037AE34 00376A94 40 82 FF E4 */ bne lbl_8037AE18
+/* 8037AE38 00376A98 7F 83 E3 78 */ mr r3, r28
+/* 8037AE3C 00376A9C 48 00 03 05 */ bl detail_SortPriorityList__Q34nw4r3snd11SoundPlayerFv
+/* 8037AE40 00376AA0 7F A3 EB 78 */ mr r3, r29
+/* 8037AE44 00376AA4 4B EF 4B E1 */ bl func_8026FA24
+/* 8037AE48 00376AA8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037AE4C 00376AAC 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037AE50 00376AB0 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037AE54 00376AB4 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037AE58 00376AB8 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 8037AE5C 00376ABC 7C 08 03 A6 */ mtlr r0
+/* 8037AE60 00376AC0 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037AE64 00376AC4 4E 80 00 20 */ blr
+
+.global StopAllSound__Q34nw4r3snd11SoundPlayerFi
+StopAllSound__Q34nw4r3snd11SoundPlayerFi:
+/* 8037AE68 00376AC8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037AE6C 00376ACC 7C 08 02 A6 */ mflr r0
+/* 8037AE70 00376AD0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037AE74 00376AD4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037AE78 00376AD8 7C 7F 1B 78 */ mr r31, r3
+/* 8037AE7C 00376ADC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037AE80 00376AE0 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037AE84 00376AE4 3B A3 00 48 */ addi r29, r3, 0x48
+/* 8037AE88 00376AE8 7F A3 EB 78 */ mr r3, r29
+/* 8037AE8C 00376AEC 93 81 00 10 */ stw r28, 0x10(r1)
+/* 8037AE90 00376AF0 7C 9C 23 78 */ mr r28, r4
+/* 8037AE94 00376AF4 4B EF 4A B5 */ bl func_8026F948
+/* 8037AE98 00376AF8 87 DF 00 04 */ lwzu r30, 4(r31)
+/* 8037AE9C 00376AFC 48 00 00 20 */ b lbl_8037AEBC
+lbl_8037AEA0:
+/* 8037AEA0 00376B00 38 7E FF 40 */ addi r3, r30, -192
+/* 8037AEA4 00376B04 7F 84 E3 78 */ mr r4, r28
+/* 8037AEA8 00376B08 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037AEAC 00376B0C 83 DE 00 00 */ lwz r30, 0(r30)
+/* 8037AEB0 00376B10 81 8C 00 18 */ lwz r12, 0x18(r12)
+/* 8037AEB4 00376B14 7D 89 03 A6 */ mtctr r12
+/* 8037AEB8 00376B18 4E 80 04 21 */ bctrl
+lbl_8037AEBC:
+/* 8037AEBC 00376B1C 7C 1E F8 40 */ cmplw r30, r31
+/* 8037AEC0 00376B20 40 82 FF E0 */ bne lbl_8037AEA0
+/* 8037AEC4 00376B24 7F A3 EB 78 */ mr r3, r29
+/* 8037AEC8 00376B28 4B EF 4B 5D */ bl func_8026FA24
+/* 8037AECC 00376B2C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037AED0 00376B30 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037AED4 00376B34 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037AED8 00376B38 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037AEDC 00376B3C 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 8037AEE0 00376B40 7C 08 03 A6 */ mtlr r0
+/* 8037AEE4 00376B44 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037AEE8 00376B48 4E 80 00 20 */ blr
+
+.global PauseAllSound__Q34nw4r3snd11SoundPlayerFbi
+PauseAllSound__Q34nw4r3snd11SoundPlayerFbi:
+/* 8037AEEC 00376B4C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037AEF0 00376B50 7C 08 02 A6 */ mflr r0
+/* 8037AEF4 00376B54 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037AEF8 00376B58 39 61 00 20 */ addi r11, r1, 0x20
+/* 8037AEFC 00376B5C 4B E4 C2 2D */ bl _savegpr_27
+/* 8037AF00 00376B60 3B A3 00 48 */ addi r29, r3, 0x48
+/* 8037AF04 00376B64 7C 7F 1B 78 */ mr r31, r3
+/* 8037AF08 00376B68 7C 9B 23 78 */ mr r27, r4
+/* 8037AF0C 00376B6C 7C BC 2B 78 */ mr r28, r5
+/* 8037AF10 00376B70 7F A3 EB 78 */ mr r3, r29
+/* 8037AF14 00376B74 4B EF 4A 35 */ bl func_8026F948
+/* 8037AF18 00376B78 87 DF 00 04 */ lwzu r30, 4(r31)
+/* 8037AF1C 00376B7C 48 00 00 24 */ b lbl_8037AF40
+lbl_8037AF20:
+/* 8037AF20 00376B80 81 9E FF 40 */ lwz r12, -0xc0(r30)
+/* 8037AF24 00376B84 38 7E FF 40 */ addi r3, r30, -192
+/* 8037AF28 00376B88 7F 64 DB 78 */ mr r4, r27
+/* 8037AF2C 00376B8C 7F 85 E3 78 */ mr r5, r28
+/* 8037AF30 00376B90 81 8C 00 1C */ lwz r12, 0x1c(r12)
+/* 8037AF34 00376B94 83 DE 00 00 */ lwz r30, 0(r30)
+/* 8037AF38 00376B98 7D 89 03 A6 */ mtctr r12
+/* 8037AF3C 00376B9C 4E 80 04 21 */ bctrl
+lbl_8037AF40:
+/* 8037AF40 00376BA0 7C 1E F8 40 */ cmplw r30, r31
+/* 8037AF44 00376BA4 40 82 FF DC */ bne lbl_8037AF20
+/* 8037AF48 00376BA8 7F A3 EB 78 */ mr r3, r29
+/* 8037AF4C 00376BAC 4B EF 4A D9 */ bl func_8026FA24
+/* 8037AF50 00376BB0 39 61 00 20 */ addi r11, r1, 0x20
+/* 8037AF54 00376BB4 4B E4 C2 21 */ bl _restgpr_27
+/* 8037AF58 00376BB8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037AF5C 00376BBC 7C 08 03 A6 */ mtlr r0
+/* 8037AF60 00376BC0 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037AF64 00376BC4 4E 80 00 20 */ blr
+
+.global SetVolume__Q34nw4r3snd11SoundPlayerFf
+SetVolume__Q34nw4r3snd11SoundPlayerFf:
+/* 8037AF68 00376BC8 C0 02 A7 60 */ lfs f0, lbl_80642D60-_SDA2_BASE_(r2)
+/* 8037AF6C 00376BCC FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8037AF70 00376BD0 40 81 00 08 */ ble lbl_8037AF78
+/* 8037AF74 00376BD4 48 00 00 18 */ b lbl_8037AF8C
+lbl_8037AF78:
+/* 8037AF78 00376BD8 C0 02 A7 64 */ lfs f0, lbl_80642D64-_SDA2_BASE_(r2)
+/* 8037AF7C 00376BDC FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8037AF80 00376BE0 40 80 00 08 */ bge lbl_8037AF88
+/* 8037AF84 00376BE4 48 00 00 08 */ b lbl_8037AF8C
+lbl_8037AF88:
+/* 8037AF88 00376BE8 FC 00 08 90 */ fmr f0, f1
+lbl_8037AF8C:
+/* 8037AF8C 00376BEC D0 03 00 28 */ stfs f0, 0x28(r3)
+/* 8037AF90 00376BF0 4E 80 00 20 */ blr
+
+.global detail_GetOutputLine__Q34nw4r3snd11SoundPlayerCFv
+detail_GetOutputLine__Q34nw4r3snd11SoundPlayerCFv:
+/* 8037AF94 00376BF4 80 63 00 30 */ lwz r3, 0x30(r3)
+/* 8037AF98 00376BF8 4E 80 00 20 */ blr
+
+.global detail_IsEnabledOutputLine__Q34nw4r3snd11SoundPlayerCFv
+detail_IsEnabledOutputLine__Q34nw4r3snd11SoundPlayerCFv:
+/* 8037AF9C 00376BFC 88 63 00 2C */ lbz r3, 0x2c(r3)
+/* 8037AFA0 00376C00 4E 80 00 20 */ blr
+
+.global detail_GetRemoteOutVolume__Q34nw4r3snd11SoundPlayerCFi
+detail_GetRemoteOutVolume__Q34nw4r3snd11SoundPlayerCFi:
+/* 8037AFA4 00376C04 54 80 10 3A */ slwi r0, r4, 2
+/* 8037AFA8 00376C08 7C 63 02 14 */ add r3, r3, r0
+/* 8037AFAC 00376C0C C0 23 00 38 */ lfs f1, 0x38(r3)
+/* 8037AFB0 00376C10 4E 80 00 20 */ blr
+
+.global detail_RemoveSoundList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
+detail_RemoveSoundList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound:
+/* 8037AFB4 00376C14 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037AFB8 00376C18 7C 08 02 A6 */ mflr r0
+/* 8037AFBC 00376C1C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037AFC0 00376C20 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037AFC4 00376C24 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037AFC8 00376C28 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037AFCC 00376C2C 7C 9E 23 78 */ mr r30, r4
+/* 8037AFD0 00376C30 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037AFD4 00376C34 7C 7D 1B 78 */ mr r29, r3
+/* 8037AFD8 00376C38 7F E3 FB 78 */ mr r3, r31
+/* 8037AFDC 00376C3C 4B EF 49 6D */ bl func_8026F948
+/* 8037AFE0 00376C40 7F A3 EB 78 */ mr r3, r29
+/* 8037AFE4 00376C44 38 9E 00 C0 */ addi r4, r30, 0xc0
+/* 8037AFE8 00376C48 4B FE 7C 8D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFPQ34nw4r2ut12LinkListNode
+/* 8037AFEC 00376C4C 38 00 00 00 */ li r0, 0
+/* 8037AFF0 00376C50 7F E3 FB 78 */ mr r3, r31
+/* 8037AFF4 00376C54 90 1E 00 10 */ stw r0, 0x10(r30)
+/* 8037AFF8 00376C58 4B EF 4A 2D */ bl func_8026FA24
+/* 8037AFFC 00376C5C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037B000 00376C60 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037B004 00376C64 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037B008 00376C68 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037B00C 00376C6C 7C 08 03 A6 */ mtlr r0
+/* 8037B010 00376C70 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037B014 00376C74 4E 80 00 20 */ blr
+
+.global detail_InsertPriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
+detail_InsertPriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound:
+/* 8037B018 00376C78 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037B01C 00376C7C 7C 08 02 A6 */ mflr r0
+/* 8037B020 00376C80 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037B024 00376C84 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037B028 00376C88 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037B02C 00376C8C 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037B030 00376C90 7C 9E 23 78 */ mr r30, r4
+/* 8037B034 00376C94 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037B038 00376C98 7C 7D 1B 78 */ mr r29, r3
+/* 8037B03C 00376C9C 7F E3 FB 78 */ mr r3, r31
+/* 8037B040 00376CA0 4B EF 49 09 */ bl func_8026F948
+/* 8037B044 00376CA4 80 7D 00 10 */ lwz r3, 0x10(r29)
+/* 8037B048 00376CA8 38 1D 00 10 */ addi r0, r29, 0x10
+/* 8037B04C 00376CAC 48 00 00 58 */ b lbl_8037B0A4
+lbl_8037B050:
+/* 8037B050 00376CB0 88 A3 FF AC */ lbz r5, -0x54(r3)
+/* 8037B054 00376CB4 80 83 FF 78 */ lwz r4, -0x88(r3)
+/* 8037B058 00376CB8 7C A5 22 14 */ add r5, r5, r4
+/* 8037B05C 00376CBC 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B060 00376CC0 40 81 00 0C */ ble lbl_8037B06C
+/* 8037B064 00376CC4 38 C0 00 7F */ li r6, 0x7f
+/* 8037B068 00376CC8 48 00 00 0C */ b lbl_8037B074
+lbl_8037B06C:
+/* 8037B06C 00376CCC 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B070 00376CD0 7C A6 20 78 */ andc r6, r5, r4
+lbl_8037B074:
+/* 8037B074 00376CD4 88 BE 00 74 */ lbz r5, 0x74(r30)
+/* 8037B078 00376CD8 80 9E 00 40 */ lwz r4, 0x40(r30)
+/* 8037B07C 00376CDC 7C A5 22 14 */ add r5, r5, r4
+/* 8037B080 00376CE0 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B084 00376CE4 40 81 00 0C */ ble lbl_8037B090
+/* 8037B088 00376CE8 38 80 00 7F */ li r4, 0x7f
+/* 8037B08C 00376CEC 48 00 00 0C */ b lbl_8037B098
+lbl_8037B090:
+/* 8037B090 00376CF0 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B094 00376CF4 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037B098:
+/* 8037B098 00376CF8 7C 04 30 00 */ cmpw r4, r6
+/* 8037B09C 00376CFC 41 80 00 10 */ blt lbl_8037B0AC
+/* 8037B0A0 00376D00 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037B0A4:
+/* 8037B0A4 00376D04 7C 03 00 40 */ cmplw r3, r0
+/* 8037B0A8 00376D08 40 82 FF A8 */ bne lbl_8037B050
+lbl_8037B0AC:
+/* 8037B0AC 00376D0C 90 61 00 08 */ stw r3, 8(r1)
+/* 8037B0B0 00376D10 38 7D 00 0C */ addi r3, r29, 0xc
+/* 8037B0B4 00376D14 38 81 00 08 */ addi r4, r1, 8
+/* 8037B0B8 00376D18 38 BE 00 C8 */ addi r5, r30, 0xc8
+/* 8037B0BC 00376D1C 4B FE 7B 8D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B0C0 00376D20 7F E3 FB 78 */ mr r3, r31
+/* 8037B0C4 00376D24 4B EF 49 61 */ bl func_8026FA24
+/* 8037B0C8 00376D28 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037B0CC 00376D2C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037B0D0 00376D30 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037B0D4 00376D34 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037B0D8 00376D38 7C 08 03 A6 */ mtlr r0
+/* 8037B0DC 00376D3C 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037B0E0 00376D40 4E 80 00 20 */ blr
+
+.global detail_RemovePriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
+detail_RemovePriorityList__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound:
+/* 8037B0E4 00376D44 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037B0E8 00376D48 7C 08 02 A6 */ mflr r0
+/* 8037B0EC 00376D4C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037B0F0 00376D50 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037B0F4 00376D54 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037B0F8 00376D58 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037B0FC 00376D5C 7C 9E 23 78 */ mr r30, r4
+/* 8037B100 00376D60 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037B104 00376D64 7C 7D 1B 78 */ mr r29, r3
+/* 8037B108 00376D68 7F E3 FB 78 */ mr r3, r31
+/* 8037B10C 00376D6C 4B EF 48 3D */ bl func_8026F948
+/* 8037B110 00376D70 38 7D 00 0C */ addi r3, r29, 0xc
+/* 8037B114 00376D74 38 9E 00 C8 */ addi r4, r30, 0xc8
+/* 8037B118 00376D78 4B FE 7B 5D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFPQ34nw4r2ut12LinkListNode
+/* 8037B11C 00376D7C 7F E3 FB 78 */ mr r3, r31
+/* 8037B120 00376D80 4B EF 49 05 */ bl func_8026FA24
+/* 8037B124 00376D84 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037B128 00376D88 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037B12C 00376D8C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037B130 00376D90 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037B134 00376D94 7C 08 03 A6 */ mtlr r0
+/* 8037B138 00376D98 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037B13C 00376D9C 4E 80 00 20 */ blr
+
+.global detail_SortPriorityList__Q34nw4r3snd11SoundPlayerFv
+detail_SortPriorityList__Q34nw4r3snd11SoundPlayerFv:
+/* 8037B140 00376DA0 94 21 F9 D0 */ stwu r1, -0x630(r1)
+/* 8037B144 00376DA4 7C 08 02 A6 */ mflr r0
+/* 8037B148 00376DA8 90 01 06 34 */ stw r0, 0x634(r1)
+/* 8037B14C 00376DAC 39 61 06 30 */ addi r11, r1, 0x630
+/* 8037B150 00376DB0 4B E4 BF D5 */ bl _savegpr_26
+/* 8037B154 00376DB4 3B C3 00 48 */ addi r30, r3, 0x48
+/* 8037B158 00376DB8 7C 7A 1B 78 */ mr r26, r3
+/* 8037B15C 00376DBC 7F C3 F3 78 */ mr r3, r30
+/* 8037B160 00376DC0 4B EF 47 E9 */ bl func_8026F948
+/* 8037B164 00376DC4 3C 80 80 38 */ lis r4, __ct__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv@ha
+/* 8037B168 00376DC8 3C A0 80 38 */ lis r5, __dt__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv@ha
+/* 8037B16C 00376DCC 38 61 00 18 */ addi r3, r1, 0x18
+/* 8037B170 00376DD0 38 C0 00 0C */ li r6, 0xc
+/* 8037B174 00376DD4 38 84 AC A0 */ addi r4, r4, __ct__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv@l
+/* 8037B178 00376DD8 38 A5 AC C0 */ addi r5, r5, __dt__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv@l
+/* 8037B17C 00376DDC 38 E0 00 80 */ li r7, 0x80
+/* 8037B180 00376DE0 4B E4 BC E9 */ bl __construct_array
+/* 8037B184 00376DE4 48 00 00 5C */ b lbl_8037B1E0
+lbl_8037B188:
+/* 8037B188 00376DE8 83 BA 00 10 */ lwz r29, 0x10(r26)
+/* 8037B18C 00376DEC 38 7A 00 0C */ addi r3, r26, 0xc
+/* 8037B190 00376DF0 38 81 00 14 */ addi r4, r1, 0x14
+/* 8037B194 00376DF4 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037B198 00376DF8 4B FE 7A 25 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
+/* 8037B19C 00376DFC 88 7D FF AC */ lbz r3, -0x54(r29)
+/* 8037B1A0 00376E00 80 1D FF 78 */ lwz r0, -0x88(r29)
+/* 8037B1A4 00376E04 7C 63 02 14 */ add r3, r3, r0
+/* 8037B1A8 00376E08 2C 03 00 7F */ cmpwi r3, 0x7f
+/* 8037B1AC 00376E0C 40 81 00 0C */ ble lbl_8037B1B8
+/* 8037B1B0 00376E10 38 00 00 7F */ li r0, 0x7f
+/* 8037B1B4 00376E14 48 00 00 0C */ b lbl_8037B1C0
+lbl_8037B1B8:
+/* 8037B1B8 00376E18 7C 60 FE 70 */ srawi r0, r3, 0x1f
+/* 8037B1BC 00376E1C 7C 60 00 78 */ andc r0, r3, r0
+lbl_8037B1C0:
+/* 8037B1C0 00376E20 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 8037B1C4 00376E24 38 61 00 18 */ addi r3, r1, 0x18
+/* 8037B1C8 00376E28 7F A5 EB 78 */ mr r5, r29
+/* 8037B1CC 00376E2C 38 81 00 10 */ addi r4, r1, 0x10
+/* 8037B1D0 00376E30 7C 63 02 14 */ add r3, r3, r0
+/* 8037B1D4 00376E34 38 03 00 04 */ addi r0, r3, 4
+/* 8037B1D8 00376E38 90 01 00 10 */ stw r0, 0x10(r1)
+/* 8037B1DC 00376E3C 4B FE 7A 6D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+lbl_8037B1E0:
+/* 8037B1E0 00376E40 80 1A 00 0C */ lwz r0, 0xc(r26)
+/* 8037B1E4 00376E44 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B1E8 00376E48 40 82 FF A0 */ bne lbl_8037B188
+/* 8037B1EC 00376E4C 3B A1 00 18 */ addi r29, r1, 0x18
+/* 8037B1F0 00376E50 3B FA 00 10 */ addi r31, r26, 0x10
+/* 8037B1F4 00376E54 3B 60 00 00 */ li r27, 0
+lbl_8037B1F8:
+/* 8037B1F8 00376E58 80 1D 00 00 */ lwz r0, 0(r29)
+/* 8037B1FC 00376E5C 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B200 00376E60 41 82 00 3C */ beq lbl_8037B23C
+/* 8037B204 00376E64 48 00 00 2C */ b lbl_8037B230
+lbl_8037B208:
+/* 8037B208 00376E68 83 9D 00 04 */ lwz r28, 4(r29)
+/* 8037B20C 00376E6C 7F A3 EB 78 */ mr r3, r29
+/* 8037B210 00376E70 38 81 00 0C */ addi r4, r1, 0xc
+/* 8037B214 00376E74 93 81 00 0C */ stw r28, 0xc(r1)
+/* 8037B218 00376E78 4B FE 79 A5 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
+/* 8037B21C 00376E7C 93 E1 00 08 */ stw r31, 8(r1)
+/* 8037B220 00376E80 7F 85 E3 78 */ mr r5, r28
+/* 8037B224 00376E84 38 7A 00 0C */ addi r3, r26, 0xc
+/* 8037B228 00376E88 38 81 00 08 */ addi r4, r1, 8
+/* 8037B22C 00376E8C 4B FE 7A 1D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+lbl_8037B230:
+/* 8037B230 00376E90 80 1D 00 00 */ lwz r0, 0(r29)
+/* 8037B234 00376E94 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B238 00376E98 40 82 FF D0 */ bne lbl_8037B208
+lbl_8037B23C:
+/* 8037B23C 00376E9C 3B 7B 00 01 */ addi r27, r27, 1
+/* 8037B240 00376EA0 3B BD 00 0C */ addi r29, r29, 0xc
+/* 8037B244 00376EA4 2C 1B 00 80 */ cmpwi r27, 0x80
+/* 8037B248 00376EA8 41 80 FF B0 */ blt lbl_8037B1F8
+/* 8037B24C 00376EAC 3C 80 80 38 */ lis r4, __dt__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv@ha
+/* 8037B250 00376EB0 38 61 00 18 */ addi r3, r1, 0x18
+/* 8037B254 00376EB4 38 84 AC C0 */ addi r4, r4, __dt__Q34nw4r2ut44LinkList$0Q44nw4r3snd6detail10BasicSound$4200$1Fv@l
+/* 8037B258 00376EB8 38 A0 00 0C */ li r5, 0xc
+/* 8037B25C 00376EBC 38 C0 00 80 */ li r6, 0x80
+/* 8037B260 00376EC0 4B E4 BD 01 */ bl __destroy_arr
+/* 8037B264 00376EC4 7F C3 F3 78 */ mr r3, r30
+/* 8037B268 00376EC8 4B EF 47 BD */ bl func_8026FA24
+/* 8037B26C 00376ECC 39 61 06 30 */ addi r11, r1, 0x630
+/* 8037B270 00376ED0 4B E4 BF 01 */ bl func_801C7170
+/* 8037B274 00376ED4 80 01 06 34 */ lwz r0, 0x634(r1)
+/* 8037B278 00376ED8 7C 08 03 A6 */ mtlr r0
+/* 8037B27C 00376EDC 38 21 06 30 */ addi r1, r1, 0x630
+/* 8037B280 00376EE0 4E 80 00 20 */ blr
+
+.global detail_AllocSeqSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1
+detail_AllocSeqSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1:
+/* 8037B284 00376EE4 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 8037B288 00376EE8 7C 08 02 A6 */ mflr r0
+/* 8037B28C 00376EEC 90 01 00 64 */ stw r0, 0x64(r1)
+/* 8037B290 00376EF0 39 61 00 60 */ addi r11, r1, 0x60
+/* 8037B294 00376EF4 4B E4 BE 81 */ bl _savegpr_22
+/* 8037B298 00376EF8 3B C3 00 48 */ addi r30, r3, 0x48
+/* 8037B29C 00376EFC 7C 76 1B 78 */ mr r22, r3
+/* 8037B2A0 00376F00 7C 97 23 78 */ mr r23, r4
+/* 8037B2A4 00376F04 7C BC 2B 78 */ mr r28, r5
+/* 8037B2A8 00376F08 7C D8 33 78 */ mr r24, r6
+/* 8037B2AC 00376F0C 7C F9 3B 78 */ mr r25, r7
+/* 8037B2B0 00376F10 7D 1B 43 78 */ mr r27, r8
+/* 8037B2B4 00376F14 7D 3A 4B 78 */ mr r26, r9
+/* 8037B2B8 00376F18 7F C3 F3 78 */ mr r3, r30
+/* 8037B2BC 00376F1C 4B EF 46 8D */ bl func_8026F948
+/* 8037B2C0 00376F20 2C 1A 00 00 */ cmpwi r26, 0
+/* 8037B2C4 00376F24 40 82 00 14 */ bne lbl_8037B2D8
+/* 8037B2C8 00376F28 7F C3 F3 78 */ mr r3, r30
+/* 8037B2CC 00376F2C 4B EF 47 59 */ bl func_8026FA24
+/* 8037B2D0 00376F30 38 60 00 00 */ li r3, 0
+/* 8037B2D4 00376F34 48 00 03 5C */ b lbl_8037B630
+lbl_8037B2D8:
+/* 8037B2D8 00376F38 2C 18 00 00 */ cmpwi r24, 0
+/* 8037B2DC 00376F3C 3B A0 00 00 */ li r29, 0
+/* 8037B2E0 00376F40 41 82 00 30 */ beq lbl_8037B310
+/* 8037B2E4 00376F44 80 78 00 00 */ lwz r3, 0(r24)
+/* 8037B2E8 00376F48 7F 65 DB 78 */ mr r5, r27
+/* 8037B2EC 00376F4C 38 81 00 18 */ addi r4, r1, 0x18
+/* 8037B2F0 00376F50 80 F8 00 0C */ lwz r7, 0xc(r24)
+/* 8037B2F4 00376F54 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037B2F8 00376F58 38 C0 00 00 */ li r6, 0
+/* 8037B2FC 00376F5C 39 00 00 08 */ li r8, 8
+/* 8037B300 00376F60 81 8C 00 08 */ lwz r12, 8(r12)
+/* 8037B304 00376F64 7D 89 03 A6 */ mtctr r12
+/* 8037B308 00376F68 4E 80 04 21 */ bctrl
+/* 8037B30C 00376F6C 83 A1 00 30 */ lwz r29, 0x30(r1)
+lbl_8037B310:
+/* 8037B310 00376F70 7C 7C EA 14 */ add r3, r28, r29
+/* 8037B314 00376F74 2C 03 00 7F */ cmpwi r3, 0x7f
+/* 8037B318 00376F78 40 81 00 0C */ ble lbl_8037B324
+/* 8037B31C 00376F7C 3B 80 00 7F */ li r28, 0x7f
+/* 8037B320 00376F80 48 00 00 0C */ b lbl_8037B32C
+lbl_8037B324:
+/* 8037B324 00376F84 7C 60 FE 70 */ srawi r0, r3, 0x1f
+/* 8037B328 00376F88 7C 7C 00 78 */ andc r28, r3, r0
+lbl_8037B32C:
+/* 8037B32C 00376F8C 7E C3 B3 78 */ mr r3, r22
+/* 8037B330 00376F90 7F 84 E3 78 */ mr r4, r28
+/* 8037B334 00376F94 7F 25 CB 78 */ mr r5, r25
+/* 8037B338 00376F98 48 00 0B 41 */ bl CheckPlayableSoundCount__Q34nw4r3snd11SoundPlayerFiPQ44nw4r3snd6detail19ExternalSoundPlayer
+/* 8037B33C 00376F9C 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B340 00376FA0 40 82 00 14 */ bne lbl_8037B354
+/* 8037B344 00376FA4 7F C3 F3 78 */ mr r3, r30
+/* 8037B348 00376FA8 4B EF 46 DD */ bl func_8026FA24
+/* 8037B34C 00376FAC 38 60 00 00 */ li r3, 0
+/* 8037B350 00376FB0 48 00 02 E0 */ b lbl_8037B630
+lbl_8037B354:
+/* 8037B354 00376FB4 3B FA 00 10 */ addi r31, r26, 0x10
+/* 8037B358 00376FB8 7F E3 FB 78 */ mr r3, r31
+/* 8037B35C 00376FBC 4B EF 45 ED */ bl func_8026F948
+/* 8037B360 00376FC0 7F 43 D3 78 */ mr r3, r26
+/* 8037B364 00376FC4 4B FF 67 F5 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
+/* 8037B368 00376FC8 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B36C 00376FCC 41 82 00 1C */ beq lbl_8037B388
+/* 8037B370 00376FD0 7C 7B 1B 78 */ mr r27, r3
+/* 8037B374 00376FD4 41 82 00 B4 */ beq lbl_8037B428
+/* 8037B378 00376FD8 7F 44 D3 78 */ mr r4, r26
+/* 8037B37C 00376FDC 4B FF 98 B5 */ bl __ct__Q44nw4r3snd6detail8SeqSoundFPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1
+/* 8037B380 00376FE0 7C 7B 1B 78 */ mr r27, r3
+/* 8037B384 00376FE4 48 00 00 A4 */ b lbl_8037B428
+lbl_8037B388:
+/* 8037B388 00376FE8 80 1A 00 04 */ lwz r0, 4(r26)
+/* 8037B38C 00376FEC 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B390 00376FF0 40 82 00 0C */ bne lbl_8037B39C
+/* 8037B394 00376FF4 38 60 00 00 */ li r3, 0
+/* 8037B398 00376FF8 48 00 00 0C */ b lbl_8037B3A4
+lbl_8037B39C:
+/* 8037B39C 00376FFC 80 7A 00 08 */ lwz r3, 8(r26)
+/* 8037B3A0 00377000 38 63 FF 48 */ addi r3, r3, -184
+lbl_8037B3A4:
+/* 8037B3A4 00377004 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B3A8 00377008 40 82 00 14 */ bne lbl_8037B3BC
+/* 8037B3AC 0037700C 7F E3 FB 78 */ mr r3, r31
+/* 8037B3B0 00377010 4B EF 46 75 */ bl func_8026FA24
+/* 8037B3B4 00377014 3B 60 00 00 */ li r27, 0
+/* 8037B3B8 00377018 48 00 00 D0 */ b lbl_8037B488
+lbl_8037B3BC:
+/* 8037B3BC 0037701C 88 83 00 74 */ lbz r4, 0x74(r3)
+/* 8037B3C0 00377020 80 03 00 40 */ lwz r0, 0x40(r3)
+/* 8037B3C4 00377024 7C 84 02 14 */ add r4, r4, r0
+/* 8037B3C8 00377028 2C 04 00 7F */ cmpwi r4, 0x7f
+/* 8037B3CC 0037702C 40 81 00 0C */ ble lbl_8037B3D8
+/* 8037B3D0 00377030 38 00 00 7F */ li r0, 0x7f
+/* 8037B3D4 00377034 48 00 00 0C */ b lbl_8037B3E0
+lbl_8037B3D8:
+/* 8037B3D8 00377038 7C 80 FE 70 */ srawi r0, r4, 0x1f
+/* 8037B3DC 0037703C 7C 80 00 78 */ andc r0, r4, r0
+lbl_8037B3E0:
+/* 8037B3E0 00377040 7C 1C 00 00 */ cmpw r28, r0
+/* 8037B3E4 00377044 40 80 00 14 */ bge lbl_8037B3F8
+/* 8037B3E8 00377048 7F E3 FB 78 */ mr r3, r31
+/* 8037B3EC 0037704C 4B EF 46 39 */ bl func_8026FA24
+/* 8037B3F0 00377050 3B 60 00 00 */ li r27, 0
+/* 8037B3F4 00377054 48 00 00 94 */ b lbl_8037B488
+lbl_8037B3F8:
+/* 8037B3F8 00377058 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037B3FC 0037705C 38 80 00 00 */ li r4, 0
+/* 8037B400 00377060 81 8C 00 18 */ lwz r12, 0x18(r12)
+/* 8037B404 00377064 7D 89 03 A6 */ mtctr r12
+/* 8037B408 00377068 4E 80 04 21 */ bctrl
+/* 8037B40C 0037706C 7F 43 D3 78 */ mr r3, r26
+/* 8037B410 00377070 4B FF 67 49 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
+/* 8037B414 00377074 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B418 00377078 41 82 00 0C */ beq lbl_8037B424
+/* 8037B41C 0037707C 7F 44 D3 78 */ mr r4, r26
+/* 8037B420 00377080 4B FF 98 11 */ bl __ct__Q44nw4r3snd6detail8SeqSoundFPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1
+lbl_8037B424:
+/* 8037B424 00377084 7C 7B 1B 78 */ mr r27, r3
+lbl_8037B428:
+/* 8037B428 00377088 80 7A 00 08 */ lwz r3, 8(r26)
+/* 8037B42C 0037708C 38 1A 00 08 */ addi r0, r26, 8
+/* 8037B430 00377090 48 00 00 34 */ b lbl_8037B464
+lbl_8037B434:
+/* 8037B434 00377094 88 A3 FF BC */ lbz r5, -0x44(r3)
+/* 8037B438 00377098 80 83 FF 88 */ lwz r4, -0x78(r3)
+/* 8037B43C 0037709C 7C A5 22 14 */ add r5, r5, r4
+/* 8037B440 003770A0 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B444 003770A4 40 81 00 0C */ ble lbl_8037B450
+/* 8037B448 003770A8 38 80 00 7F */ li r4, 0x7f
+/* 8037B44C 003770AC 48 00 00 0C */ b lbl_8037B458
+lbl_8037B450:
+/* 8037B450 003770B0 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B454 003770B4 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037B458:
+/* 8037B458 003770B8 7C 1C 20 00 */ cmpw r28, r4
+/* 8037B45C 003770BC 41 80 00 10 */ blt lbl_8037B46C
+/* 8037B460 003770C0 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037B464:
+/* 8037B464 003770C4 7C 03 00 40 */ cmplw r3, r0
+/* 8037B468 003770C8 40 82 FF CC */ bne lbl_8037B434
+lbl_8037B46C:
+/* 8037B46C 003770CC 90 61 00 14 */ stw r3, 0x14(r1)
+/* 8037B470 003770D0 38 7A 00 04 */ addi r3, r26, 4
+/* 8037B474 003770D4 38 81 00 14 */ addi r4, r1, 0x14
+/* 8037B478 003770D8 38 BB 00 B8 */ addi r5, r27, 0xb8
+/* 8037B47C 003770DC 4B FE 77 CD */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B480 003770E0 7F E3 FB 78 */ mr r3, r31
+/* 8037B484 003770E4 4B EF 45 A1 */ bl func_8026FA24
+lbl_8037B488:
+/* 8037B488 003770E8 2C 1B 00 00 */ cmpwi r27, 0
+/* 8037B48C 003770EC 40 82 00 14 */ bne lbl_8037B4A0
+/* 8037B490 003770F0 7F C3 F3 78 */ mr r3, r30
+/* 8037B494 003770F4 4B EF 45 91 */ bl func_8026FA24
+/* 8037B498 003770F8 38 60 00 00 */ li r3, 0
+/* 8037B49C 003770FC 48 00 01 94 */ b lbl_8037B630
+lbl_8037B4A0:
+/* 8037B4A0 00377100 3B 96 00 48 */ addi r28, r22, 0x48
+/* 8037B4A4 00377104 7F 83 E3 78 */ mr r3, r28
+/* 8037B4A8 00377108 4B EF 44 A1 */ bl func_8026F948
+/* 8037B4AC 0037710C 80 16 00 18 */ lwz r0, 0x18(r22)
+/* 8037B4B0 00377110 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B4B4 00377114 40 82 00 10 */ bne lbl_8037B4C4
+/* 8037B4B8 00377118 7F 83 E3 78 */ mr r3, r28
+/* 8037B4BC 0037711C 4B EF 45 69 */ bl func_8026FA24
+/* 8037B4C0 00377120 48 00 00 48 */ b lbl_8037B508
+lbl_8037B4C4:
+/* 8037B4C4 00377124 80 B6 00 1C */ lwz r5, 0x1c(r22)
+/* 8037B4C8 00377128 38 76 00 18 */ addi r3, r22, 0x18
+/* 8037B4CC 0037712C 38 81 00 10 */ addi r4, r1, 0x10
+/* 8037B4D0 00377130 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 8037B4D4 00377134 3B E5 FF D4 */ addi r31, r5, -44
+/* 8037B4D8 00377138 4B FE 76 E5 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
+/* 8037B4DC 0037713C 93 7F 00 34 */ stw r27, 0x34(r31)
+/* 8037B4E0 00377140 3B 5F 00 04 */ addi r26, r31, 4
+/* 8037B4E4 00377144 7F 43 D3 78 */ mr r3, r26
+/* 8037B4E8 00377148 93 FB 00 04 */ stw r31, 4(r27)
+/* 8037B4EC 0037714C 4B EF 44 5D */ bl func_8026F948
+/* 8037B4F0 00377150 38 7F 00 1C */ addi r3, r31, 0x1c
+/* 8037B4F4 00377154 4B FF 4F 2D */ bl Clear__Q44nw4r3snd6detail9FrameHeapFv
+/* 8037B4F8 00377158 7F 43 D3 78 */ mr r3, r26
+/* 8037B4FC 0037715C 4B EF 45 29 */ bl func_8026FA24
+/* 8037B500 00377160 7F 83 E3 78 */ mr r3, r28
+/* 8037B504 00377164 4B EF 45 21 */ bl func_8026FA24
+lbl_8037B508:
+/* 8037B508 00377168 2C 18 00 00 */ cmpwi r24, 0
+/* 8037B50C 0037716C 41 82 00 50 */ beq lbl_8037B55C
+/* 8037B510 00377170 41 82 00 4C */ beq lbl_8037B55C
+/* 8037B514 00377174 80 78 00 08 */ lwz r3, 8(r24)
+/* 8037B518 00377178 80 98 00 10 */ lwz r4, 0x10(r24)
+/* 8037B51C 0037717C 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037B520 00377180 81 8C 00 08 */ lwz r12, 8(r12)
+/* 8037B524 00377184 7D 89 03 A6 */ mtctr r12
+/* 8037B528 00377188 4E 80 04 21 */ bctrl
+/* 8037B52C 0037718C 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B530 00377190 7C 7A 1B 78 */ mr r26, r3
+/* 8037B534 00377194 41 82 00 28 */ beq lbl_8037B55C
+/* 8037B538 00377198 80 98 00 0C */ lwz r4, 0xc(r24)
+/* 8037B53C 0037719C 80 B8 00 10 */ lwz r5, 0x10(r24)
+/* 8037B540 003771A0 4B C8 8A C1 */ bl memcpy
+/* 8037B544 003771A4 80 98 00 00 */ lwz r4, 0(r24)
+/* 8037B548 003771A8 7F 63 DB 78 */ mr r3, r27
+/* 8037B54C 003771AC 80 B8 00 04 */ lwz r5, 4(r24)
+/* 8037B550 003771B0 7F 47 D3 78 */ mr r7, r26
+/* 8037B554 003771B4 80 D8 00 08 */ lwz r6, 8(r24)
+/* 8037B558 003771B8 4B FF 2B 61 */ bl SetAmbientParamCallback__Q44nw4r3snd6detail10BasicSoundFPQ54nw4r3snd6detail10BasicSound26AmbientParamUpdateCallbackPQ54nw4r3snd6detail10BasicSound24AmbientArgUpdateCallbackPQ54nw4r3snd6detail10BasicSound27AmbientArgAllocaterCallbackPv
+lbl_8037B55C:
+/* 8037B55C 003771BC 9A FB 00 74 */ stb r23, 0x74(r27)
+/* 8037B560 003771C0 38 16 00 04 */ addi r0, r22, 4
+/* 8037B564 003771C4 7E C3 B3 78 */ mr r3, r22
+/* 8037B568 003771C8 38 81 00 0C */ addi r4, r1, 0xc
+/* 8037B56C 003771CC 93 BB 00 40 */ stw r29, 0x40(r27)
+/* 8037B570 003771D0 38 BB 00 C0 */ addi r5, r27, 0xc0
+/* 8037B574 003771D4 90 01 00 0C */ stw r0, 0xc(r1)
+/* 8037B578 003771D8 4B FE 76 D1 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B57C 003771DC 2C 19 00 00 */ cmpwi r25, 0
+/* 8037B580 003771E0 92 DB 00 10 */ stw r22, 0x10(r27)
+/* 8037B584 003771E4 41 82 00 10 */ beq lbl_8037B594
+/* 8037B588 003771E8 7F 23 CB 78 */ mr r3, r25
+/* 8037B58C 003771EC 7F 64 DB 78 */ mr r4, r27
+/* 8037B590 003771F0 4B FF 49 ED */ bl InsertSoundList__Q44nw4r3snd6detail19ExternalSoundPlayerFPQ44nw4r3snd6detail10BasicSound
+lbl_8037B594:
+/* 8037B594 003771F4 3A F6 00 48 */ addi r23, r22, 0x48
+/* 8037B598 003771F8 7E E3 BB 78 */ mr r3, r23
+/* 8037B59C 003771FC 4B EF 43 AD */ bl func_8026F948
+/* 8037B5A0 00377200 80 76 00 10 */ lwz r3, 0x10(r22)
+/* 8037B5A4 00377204 38 16 00 10 */ addi r0, r22, 0x10
+/* 8037B5A8 00377208 48 00 00 58 */ b lbl_8037B600
+lbl_8037B5AC:
+/* 8037B5AC 0037720C 88 A3 FF AC */ lbz r5, -0x54(r3)
+/* 8037B5B0 00377210 80 83 FF 78 */ lwz r4, -0x88(r3)
+/* 8037B5B4 00377214 7C A5 22 14 */ add r5, r5, r4
+/* 8037B5B8 00377218 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B5BC 0037721C 40 81 00 0C */ ble lbl_8037B5C8
+/* 8037B5C0 00377220 38 C0 00 7F */ li r6, 0x7f
+/* 8037B5C4 00377224 48 00 00 0C */ b lbl_8037B5D0
+lbl_8037B5C8:
+/* 8037B5C8 00377228 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B5CC 0037722C 7C A6 20 78 */ andc r6, r5, r4
+lbl_8037B5D0:
+/* 8037B5D0 00377230 88 BB 00 74 */ lbz r5, 0x74(r27)
+/* 8037B5D4 00377234 80 9B 00 40 */ lwz r4, 0x40(r27)
+/* 8037B5D8 00377238 7C A5 22 14 */ add r5, r5, r4
+/* 8037B5DC 0037723C 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B5E0 00377240 40 81 00 0C */ ble lbl_8037B5EC
+/* 8037B5E4 00377244 38 80 00 7F */ li r4, 0x7f
+/* 8037B5E8 00377248 48 00 00 0C */ b lbl_8037B5F4
+lbl_8037B5EC:
+/* 8037B5EC 0037724C 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B5F0 00377250 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037B5F4:
+/* 8037B5F4 00377254 7C 04 30 00 */ cmpw r4, r6
+/* 8037B5F8 00377258 41 80 00 10 */ blt lbl_8037B608
+/* 8037B5FC 0037725C 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037B600:
+/* 8037B600 00377260 7C 03 00 40 */ cmplw r3, r0
+/* 8037B604 00377264 40 82 FF A8 */ bne lbl_8037B5AC
+lbl_8037B608:
+/* 8037B608 00377268 90 61 00 08 */ stw r3, 8(r1)
+/* 8037B60C 0037726C 38 76 00 0C */ addi r3, r22, 0xc
+/* 8037B610 00377270 38 81 00 08 */ addi r4, r1, 8
+/* 8037B614 00377274 38 BB 00 C8 */ addi r5, r27, 0xc8
+/* 8037B618 00377278 4B FE 76 31 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B61C 0037727C 7E E3 BB 78 */ mr r3, r23
+/* 8037B620 00377280 4B EF 44 05 */ bl func_8026FA24
+/* 8037B624 00377284 7F C3 F3 78 */ mr r3, r30
+/* 8037B628 00377288 4B EF 43 FD */ bl func_8026FA24
+/* 8037B62C 0037728C 7F 63 DB 78 */ mr r3, r27
+lbl_8037B630:
+/* 8037B630 00377290 39 61 00 60 */ addi r11, r1, 0x60
+/* 8037B634 00377294 4B E4 BB 2D */ bl func_801C7160
+/* 8037B638 00377298 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 8037B63C 0037729C 7C 08 03 A6 */ mtlr r0
+/* 8037B640 003772A0 38 21 00 60 */ addi r1, r1, 0x60
+/* 8037B644 003772A4 4E 80 00 20 */ blr
+
+.global detail_AllocStrmSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail50SoundInstanceManager$0Q44nw4r3snd6detail9StrmSound$1
+detail_AllocStrmSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail50SoundInstanceManager$0Q44nw4r3snd6detail9StrmSound$1:
+/* 8037B648 003772A8 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 8037B64C 003772AC 7C 08 02 A6 */ mflr r0
+/* 8037B650 003772B0 90 01 00 64 */ stw r0, 0x64(r1)
+/* 8037B654 003772B4 39 61 00 60 */ addi r11, r1, 0x60
+/* 8037B658 003772B8 4B E4 BA BD */ bl _savegpr_22
+/* 8037B65C 003772BC 3B C3 00 48 */ addi r30, r3, 0x48
+/* 8037B660 003772C0 7C 76 1B 78 */ mr r22, r3
+/* 8037B664 003772C4 7C 97 23 78 */ mr r23, r4
+/* 8037B668 003772C8 7C BC 2B 78 */ mr r28, r5
+/* 8037B66C 003772CC 7C D8 33 78 */ mr r24, r6
+/* 8037B670 003772D0 7C F9 3B 78 */ mr r25, r7
+/* 8037B674 003772D4 7D 1B 43 78 */ mr r27, r8
+/* 8037B678 003772D8 7D 3A 4B 78 */ mr r26, r9
+/* 8037B67C 003772DC 7F C3 F3 78 */ mr r3, r30
+/* 8037B680 003772E0 4B EF 42 C9 */ bl func_8026F948
+/* 8037B684 003772E4 2C 1A 00 00 */ cmpwi r26, 0
+/* 8037B688 003772E8 40 82 00 14 */ bne lbl_8037B69C
+/* 8037B68C 003772EC 7F C3 F3 78 */ mr r3, r30
+/* 8037B690 003772F0 4B EF 43 95 */ bl func_8026FA24
+/* 8037B694 003772F4 38 60 00 00 */ li r3, 0
+/* 8037B698 003772F8 48 00 03 5C */ b lbl_8037B9F4
+lbl_8037B69C:
+/* 8037B69C 003772FC 2C 18 00 00 */ cmpwi r24, 0
+/* 8037B6A0 00377300 3B A0 00 00 */ li r29, 0
+/* 8037B6A4 00377304 41 82 00 30 */ beq lbl_8037B6D4
+/* 8037B6A8 00377308 80 78 00 00 */ lwz r3, 0(r24)
+/* 8037B6AC 0037730C 7F 65 DB 78 */ mr r5, r27
+/* 8037B6B0 00377310 38 81 00 18 */ addi r4, r1, 0x18
+/* 8037B6B4 00377314 80 F8 00 0C */ lwz r7, 0xc(r24)
+/* 8037B6B8 00377318 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037B6BC 0037731C 38 C0 00 00 */ li r6, 0
+/* 8037B6C0 00377320 39 00 00 08 */ li r8, 8
+/* 8037B6C4 00377324 81 8C 00 08 */ lwz r12, 8(r12)
+/* 8037B6C8 00377328 7D 89 03 A6 */ mtctr r12
+/* 8037B6CC 0037732C 4E 80 04 21 */ bctrl
+/* 8037B6D0 00377330 83 A1 00 30 */ lwz r29, 0x30(r1)
+lbl_8037B6D4:
+/* 8037B6D4 00377334 7C 7C EA 14 */ add r3, r28, r29
+/* 8037B6D8 00377338 2C 03 00 7F */ cmpwi r3, 0x7f
+/* 8037B6DC 0037733C 40 81 00 0C */ ble lbl_8037B6E8
+/* 8037B6E0 00377340 3B 80 00 7F */ li r28, 0x7f
+/* 8037B6E4 00377344 48 00 00 0C */ b lbl_8037B6F0
+lbl_8037B6E8:
+/* 8037B6E8 00377348 7C 60 FE 70 */ srawi r0, r3, 0x1f
+/* 8037B6EC 0037734C 7C 7C 00 78 */ andc r28, r3, r0
+lbl_8037B6F0:
+/* 8037B6F0 00377350 7E C3 B3 78 */ mr r3, r22
+/* 8037B6F4 00377354 7F 84 E3 78 */ mr r4, r28
+/* 8037B6F8 00377358 7F 25 CB 78 */ mr r5, r25
+/* 8037B6FC 0037735C 48 00 07 7D */ bl CheckPlayableSoundCount__Q34nw4r3snd11SoundPlayerFiPQ44nw4r3snd6detail19ExternalSoundPlayer
+/* 8037B700 00377360 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B704 00377364 40 82 00 14 */ bne lbl_8037B718
+/* 8037B708 00377368 7F C3 F3 78 */ mr r3, r30
+/* 8037B70C 0037736C 4B EF 43 19 */ bl func_8026FA24
+/* 8037B710 00377370 38 60 00 00 */ li r3, 0
+/* 8037B714 00377374 48 00 02 E0 */ b lbl_8037B9F4
+lbl_8037B718:
+/* 8037B718 00377378 3B FA 00 10 */ addi r31, r26, 0x10
+/* 8037B71C 0037737C 7F E3 FB 78 */ mr r3, r31
+/* 8037B720 00377380 4B EF 42 29 */ bl func_8026F948
+/* 8037B724 00377384 7F 43 D3 78 */ mr r3, r26
+/* 8037B728 00377388 4B FF 64 31 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
+/* 8037B72C 0037738C 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B730 00377390 41 82 00 1C */ beq lbl_8037B74C
+/* 8037B734 00377394 7C 7B 1B 78 */ mr r27, r3
+/* 8037B738 00377398 41 82 00 B4 */ beq lbl_8037B7EC
+/* 8037B73C 0037739C 7F 44 D3 78 */ mr r4, r26
+/* 8037B740 003773A0 48 00 3E 91 */ bl func_8037F5D0
+/* 8037B744 003773A4 7C 7B 1B 78 */ mr r27, r3
+/* 8037B748 003773A8 48 00 00 A4 */ b lbl_8037B7EC
+lbl_8037B74C:
+/* 8037B74C 003773AC 80 1A 00 04 */ lwz r0, 4(r26)
+/* 8037B750 003773B0 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B754 003773B4 40 82 00 0C */ bne lbl_8037B760
+/* 8037B758 003773B8 38 60 00 00 */ li r3, 0
+/* 8037B75C 003773BC 48 00 00 0C */ b lbl_8037B768
+lbl_8037B760:
+/* 8037B760 003773C0 80 7A 00 08 */ lwz r3, 8(r26)
+/* 8037B764 003773C4 38 63 FF 48 */ addi r3, r3, -184
+lbl_8037B768:
+/* 8037B768 003773C8 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B76C 003773CC 40 82 00 14 */ bne lbl_8037B780
+/* 8037B770 003773D0 7F E3 FB 78 */ mr r3, r31
+/* 8037B774 003773D4 4B EF 42 B1 */ bl func_8026FA24
+/* 8037B778 003773D8 3B 60 00 00 */ li r27, 0
+/* 8037B77C 003773DC 48 00 00 D0 */ b lbl_8037B84C
+lbl_8037B780:
+/* 8037B780 003773E0 88 83 00 74 */ lbz r4, 0x74(r3)
+/* 8037B784 003773E4 80 03 00 40 */ lwz r0, 0x40(r3)
+/* 8037B788 003773E8 7C 84 02 14 */ add r4, r4, r0
+/* 8037B78C 003773EC 2C 04 00 7F */ cmpwi r4, 0x7f
+/* 8037B790 003773F0 40 81 00 0C */ ble lbl_8037B79C
+/* 8037B794 003773F4 38 00 00 7F */ li r0, 0x7f
+/* 8037B798 003773F8 48 00 00 0C */ b lbl_8037B7A4
+lbl_8037B79C:
+/* 8037B79C 003773FC 7C 80 FE 70 */ srawi r0, r4, 0x1f
+/* 8037B7A0 00377400 7C 80 00 78 */ andc r0, r4, r0
+lbl_8037B7A4:
+/* 8037B7A4 00377404 7C 1C 00 00 */ cmpw r28, r0
+/* 8037B7A8 00377408 40 80 00 14 */ bge lbl_8037B7BC
+/* 8037B7AC 0037740C 7F E3 FB 78 */ mr r3, r31
+/* 8037B7B0 00377410 4B EF 42 75 */ bl func_8026FA24
+/* 8037B7B4 00377414 3B 60 00 00 */ li r27, 0
+/* 8037B7B8 00377418 48 00 00 94 */ b lbl_8037B84C
+lbl_8037B7BC:
+/* 8037B7BC 0037741C 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037B7C0 00377420 38 80 00 00 */ li r4, 0
+/* 8037B7C4 00377424 81 8C 00 18 */ lwz r12, 0x18(r12)
+/* 8037B7C8 00377428 7D 89 03 A6 */ mtctr r12
+/* 8037B7CC 0037742C 4E 80 04 21 */ bctrl
+/* 8037B7D0 00377430 7F 43 D3 78 */ mr r3, r26
+/* 8037B7D4 00377434 4B FF 63 85 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
+/* 8037B7D8 00377438 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B7DC 0037743C 41 82 00 0C */ beq lbl_8037B7E8
+/* 8037B7E0 00377440 7F 44 D3 78 */ mr r4, r26
+/* 8037B7E4 00377444 48 00 3D ED */ bl func_8037F5D0
+lbl_8037B7E8:
+/* 8037B7E8 00377448 7C 7B 1B 78 */ mr r27, r3
+lbl_8037B7EC:
+/* 8037B7EC 0037744C 80 7A 00 08 */ lwz r3, 8(r26)
+/* 8037B7F0 00377450 38 1A 00 08 */ addi r0, r26, 8
+/* 8037B7F4 00377454 48 00 00 34 */ b lbl_8037B828
+lbl_8037B7F8:
+/* 8037B7F8 00377458 88 A3 FF BC */ lbz r5, -0x44(r3)
+/* 8037B7FC 0037745C 80 83 FF 88 */ lwz r4, -0x78(r3)
+/* 8037B800 00377460 7C A5 22 14 */ add r5, r5, r4
+/* 8037B804 00377464 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B808 00377468 40 81 00 0C */ ble lbl_8037B814
+/* 8037B80C 0037746C 38 80 00 7F */ li r4, 0x7f
+/* 8037B810 00377470 48 00 00 0C */ b lbl_8037B81C
+lbl_8037B814:
+/* 8037B814 00377474 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B818 00377478 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037B81C:
+/* 8037B81C 0037747C 7C 1C 20 00 */ cmpw r28, r4
+/* 8037B820 00377480 41 80 00 10 */ blt lbl_8037B830
+/* 8037B824 00377484 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037B828:
+/* 8037B828 00377488 7C 03 00 40 */ cmplw r3, r0
+/* 8037B82C 0037748C 40 82 FF CC */ bne lbl_8037B7F8
+lbl_8037B830:
+/* 8037B830 00377490 90 61 00 14 */ stw r3, 0x14(r1)
+/* 8037B834 00377494 38 7A 00 04 */ addi r3, r26, 4
+/* 8037B838 00377498 38 81 00 14 */ addi r4, r1, 0x14
+/* 8037B83C 0037749C 38 BB 00 B8 */ addi r5, r27, 0xb8
+/* 8037B840 003774A0 4B FE 74 09 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B844 003774A4 7F E3 FB 78 */ mr r3, r31
+/* 8037B848 003774A8 4B EF 41 DD */ bl func_8026FA24
+lbl_8037B84C:
+/* 8037B84C 003774AC 2C 1B 00 00 */ cmpwi r27, 0
+/* 8037B850 003774B0 40 82 00 14 */ bne lbl_8037B864
+/* 8037B854 003774B4 7F C3 F3 78 */ mr r3, r30
+/* 8037B858 003774B8 4B EF 41 CD */ bl func_8026FA24
+/* 8037B85C 003774BC 38 60 00 00 */ li r3, 0
+/* 8037B860 003774C0 48 00 01 94 */ b lbl_8037B9F4
+lbl_8037B864:
+/* 8037B864 003774C4 3B 96 00 48 */ addi r28, r22, 0x48
+/* 8037B868 003774C8 7F 83 E3 78 */ mr r3, r28
+/* 8037B86C 003774CC 4B EF 40 DD */ bl func_8026F948
+/* 8037B870 003774D0 80 16 00 18 */ lwz r0, 0x18(r22)
+/* 8037B874 003774D4 2C 00 00 00 */ cmpwi r0, 0
+/* 8037B878 003774D8 40 82 00 10 */ bne lbl_8037B888
+/* 8037B87C 003774DC 7F 83 E3 78 */ mr r3, r28
+/* 8037B880 003774E0 4B EF 41 A5 */ bl func_8026FA24
+/* 8037B884 003774E4 48 00 00 48 */ b lbl_8037B8CC
+lbl_8037B888:
+/* 8037B888 003774E8 80 B6 00 1C */ lwz r5, 0x1c(r22)
+/* 8037B88C 003774EC 38 76 00 18 */ addi r3, r22, 0x18
+/* 8037B890 003774F0 38 81 00 10 */ addi r4, r1, 0x10
+/* 8037B894 003774F4 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 8037B898 003774F8 3B E5 FF D4 */ addi r31, r5, -44
+/* 8037B89C 003774FC 4B FE 73 21 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
+/* 8037B8A0 00377500 93 7F 00 34 */ stw r27, 0x34(r31)
+/* 8037B8A4 00377504 3B 5F 00 04 */ addi r26, r31, 4
+/* 8037B8A8 00377508 7F 43 D3 78 */ mr r3, r26
+/* 8037B8AC 0037750C 93 FB 00 04 */ stw r31, 4(r27)
+/* 8037B8B0 00377510 4B EF 40 99 */ bl func_8026F948
+/* 8037B8B4 00377514 38 7F 00 1C */ addi r3, r31, 0x1c
+/* 8037B8B8 00377518 4B FF 4B 69 */ bl Clear__Q44nw4r3snd6detail9FrameHeapFv
+/* 8037B8BC 0037751C 7F 43 D3 78 */ mr r3, r26
+/* 8037B8C0 00377520 4B EF 41 65 */ bl func_8026FA24
+/* 8037B8C4 00377524 7F 83 E3 78 */ mr r3, r28
+/* 8037B8C8 00377528 4B EF 41 5D */ bl func_8026FA24
+lbl_8037B8CC:
+/* 8037B8CC 0037752C 2C 18 00 00 */ cmpwi r24, 0
+/* 8037B8D0 00377530 41 82 00 50 */ beq lbl_8037B920
+/* 8037B8D4 00377534 41 82 00 4C */ beq lbl_8037B920
+/* 8037B8D8 00377538 80 78 00 08 */ lwz r3, 8(r24)
+/* 8037B8DC 0037753C 80 98 00 10 */ lwz r4, 0x10(r24)
+/* 8037B8E0 00377540 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037B8E4 00377544 81 8C 00 08 */ lwz r12, 8(r12)
+/* 8037B8E8 00377548 7D 89 03 A6 */ mtctr r12
+/* 8037B8EC 0037754C 4E 80 04 21 */ bctrl
+/* 8037B8F0 00377550 2C 03 00 00 */ cmpwi r3, 0
+/* 8037B8F4 00377554 7C 7A 1B 78 */ mr r26, r3
+/* 8037B8F8 00377558 41 82 00 28 */ beq lbl_8037B920
+/* 8037B8FC 0037755C 80 98 00 0C */ lwz r4, 0xc(r24)
+/* 8037B900 00377560 80 B8 00 10 */ lwz r5, 0x10(r24)
+/* 8037B904 00377564 4B C8 86 FD */ bl memcpy
+/* 8037B908 00377568 80 98 00 00 */ lwz r4, 0(r24)
+/* 8037B90C 0037756C 7F 63 DB 78 */ mr r3, r27
+/* 8037B910 00377570 80 B8 00 04 */ lwz r5, 4(r24)
+/* 8037B914 00377574 7F 47 D3 78 */ mr r7, r26
+/* 8037B918 00377578 80 D8 00 08 */ lwz r6, 8(r24)
+/* 8037B91C 0037757C 4B FF 27 9D */ bl SetAmbientParamCallback__Q44nw4r3snd6detail10BasicSoundFPQ54nw4r3snd6detail10BasicSound26AmbientParamUpdateCallbackPQ54nw4r3snd6detail10BasicSound24AmbientArgUpdateCallbackPQ54nw4r3snd6detail10BasicSound27AmbientArgAllocaterCallbackPv
+lbl_8037B920:
+/* 8037B920 00377580 9A FB 00 74 */ stb r23, 0x74(r27)
+/* 8037B924 00377584 38 16 00 04 */ addi r0, r22, 4
+/* 8037B928 00377588 7E C3 B3 78 */ mr r3, r22
+/* 8037B92C 0037758C 38 81 00 0C */ addi r4, r1, 0xc
+/* 8037B930 00377590 93 BB 00 40 */ stw r29, 0x40(r27)
+/* 8037B934 00377594 38 BB 00 C0 */ addi r5, r27, 0xc0
+/* 8037B938 00377598 90 01 00 0C */ stw r0, 0xc(r1)
+/* 8037B93C 0037759C 4B FE 73 0D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B940 003775A0 2C 19 00 00 */ cmpwi r25, 0
+/* 8037B944 003775A4 92 DB 00 10 */ stw r22, 0x10(r27)
+/* 8037B948 003775A8 41 82 00 10 */ beq lbl_8037B958
+/* 8037B94C 003775AC 7F 23 CB 78 */ mr r3, r25
+/* 8037B950 003775B0 7F 64 DB 78 */ mr r4, r27
+/* 8037B954 003775B4 4B FF 46 29 */ bl InsertSoundList__Q44nw4r3snd6detail19ExternalSoundPlayerFPQ44nw4r3snd6detail10BasicSound
+lbl_8037B958:
+/* 8037B958 003775B8 3A F6 00 48 */ addi r23, r22, 0x48
+/* 8037B95C 003775BC 7E E3 BB 78 */ mr r3, r23
+/* 8037B960 003775C0 4B EF 3F E9 */ bl func_8026F948
+/* 8037B964 003775C4 80 76 00 10 */ lwz r3, 0x10(r22)
+/* 8037B968 003775C8 38 16 00 10 */ addi r0, r22, 0x10
+/* 8037B96C 003775CC 48 00 00 58 */ b lbl_8037B9C4
+lbl_8037B970:
+/* 8037B970 003775D0 88 A3 FF AC */ lbz r5, -0x54(r3)
+/* 8037B974 003775D4 80 83 FF 78 */ lwz r4, -0x88(r3)
+/* 8037B978 003775D8 7C A5 22 14 */ add r5, r5, r4
+/* 8037B97C 003775DC 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B980 003775E0 40 81 00 0C */ ble lbl_8037B98C
+/* 8037B984 003775E4 38 C0 00 7F */ li r6, 0x7f
+/* 8037B988 003775E8 48 00 00 0C */ b lbl_8037B994
+lbl_8037B98C:
+/* 8037B98C 003775EC 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B990 003775F0 7C A6 20 78 */ andc r6, r5, r4
+lbl_8037B994:
+/* 8037B994 003775F4 88 BB 00 74 */ lbz r5, 0x74(r27)
+/* 8037B998 003775F8 80 9B 00 40 */ lwz r4, 0x40(r27)
+/* 8037B99C 003775FC 7C A5 22 14 */ add r5, r5, r4
+/* 8037B9A0 00377600 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037B9A4 00377604 40 81 00 0C */ ble lbl_8037B9B0
+/* 8037B9A8 00377608 38 80 00 7F */ li r4, 0x7f
+/* 8037B9AC 0037760C 48 00 00 0C */ b lbl_8037B9B8
+lbl_8037B9B0:
+/* 8037B9B0 00377610 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037B9B4 00377614 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037B9B8:
+/* 8037B9B8 00377618 7C 04 30 00 */ cmpw r4, r6
+/* 8037B9BC 0037761C 41 80 00 10 */ blt lbl_8037B9CC
+/* 8037B9C0 00377620 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037B9C4:
+/* 8037B9C4 00377624 7C 03 00 40 */ cmplw r3, r0
+/* 8037B9C8 00377628 40 82 FF A8 */ bne lbl_8037B970
+lbl_8037B9CC:
+/* 8037B9CC 0037762C 90 61 00 08 */ stw r3, 8(r1)
+/* 8037B9D0 00377630 38 76 00 0C */ addi r3, r22, 0xc
+/* 8037B9D4 00377634 38 81 00 08 */ addi r4, r1, 8
+/* 8037B9D8 00377638 38 BB 00 C8 */ addi r5, r27, 0xc8
+/* 8037B9DC 0037763C 4B FE 72 6D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037B9E0 00377640 7E E3 BB 78 */ mr r3, r23
+/* 8037B9E4 00377644 4B EF 40 41 */ bl func_8026FA24
+/* 8037B9E8 00377648 7F C3 F3 78 */ mr r3, r30
+/* 8037B9EC 0037764C 4B EF 40 39 */ bl func_8026FA24
+/* 8037B9F0 00377650 7F 63 DB 78 */ mr r3, r27
+lbl_8037B9F4:
+/* 8037B9F4 00377654 39 61 00 60 */ addi r11, r1, 0x60
+/* 8037B9F8 00377658 4B E4 B7 69 */ bl func_801C7160
+/* 8037B9FC 0037765C 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 8037BA00 00377660 7C 08 03 A6 */ mtlr r0
+/* 8037BA04 00377664 38 21 00 60 */ addi r1, r1, 0x60
+/* 8037BA08 00377668 4E 80 00 20 */ blr
+
+.global detail_AllocWaveSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail50SoundInstanceManager$0Q44nw4r3snd6detail9WaveSound$1
+detail_AllocWaveSound__Q34nw4r3snd11SoundPlayerFiiPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerUlPQ44nw4r3snd6detail50SoundInstanceManager$0Q44nw4r3snd6detail9WaveSound$1:
+/* 8037BA0C 0037766C 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 8037BA10 00377670 7C 08 02 A6 */ mflr r0
+/* 8037BA14 00377674 90 01 00 64 */ stw r0, 0x64(r1)
+/* 8037BA18 00377678 39 61 00 60 */ addi r11, r1, 0x60
+/* 8037BA1C 0037767C 4B E4 B6 F9 */ bl _savegpr_22
+/* 8037BA20 00377680 3B C3 00 48 */ addi r30, r3, 0x48
+/* 8037BA24 00377684 7C 76 1B 78 */ mr r22, r3
+/* 8037BA28 00377688 7C 97 23 78 */ mr r23, r4
+/* 8037BA2C 0037768C 7C BC 2B 78 */ mr r28, r5
+/* 8037BA30 00377690 7C D8 33 78 */ mr r24, r6
+/* 8037BA34 00377694 7C F9 3B 78 */ mr r25, r7
+/* 8037BA38 00377698 7D 1B 43 78 */ mr r27, r8
+/* 8037BA3C 0037769C 7D 3A 4B 78 */ mr r26, r9
+/* 8037BA40 003776A0 7F C3 F3 78 */ mr r3, r30
+/* 8037BA44 003776A4 4B EF 3F 05 */ bl func_8026F948
+/* 8037BA48 003776A8 2C 1A 00 00 */ cmpwi r26, 0
+/* 8037BA4C 003776AC 40 82 00 14 */ bne lbl_8037BA60
+/* 8037BA50 003776B0 7F C3 F3 78 */ mr r3, r30
+/* 8037BA54 003776B4 4B EF 3F D1 */ bl func_8026FA24
+/* 8037BA58 003776B8 38 60 00 00 */ li r3, 0
+/* 8037BA5C 003776BC 48 00 03 5C */ b lbl_8037BDB8
+lbl_8037BA60:
+/* 8037BA60 003776C0 2C 18 00 00 */ cmpwi r24, 0
+/* 8037BA64 003776C4 3B A0 00 00 */ li r29, 0
+/* 8037BA68 003776C8 41 82 00 30 */ beq lbl_8037BA98
+/* 8037BA6C 003776CC 80 78 00 00 */ lwz r3, 0(r24)
+/* 8037BA70 003776D0 7F 65 DB 78 */ mr r5, r27
+/* 8037BA74 003776D4 38 81 00 18 */ addi r4, r1, 0x18
+/* 8037BA78 003776D8 80 F8 00 0C */ lwz r7, 0xc(r24)
+/* 8037BA7C 003776DC 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037BA80 003776E0 38 C0 00 00 */ li r6, 0
+/* 8037BA84 003776E4 39 00 00 08 */ li r8, 8
+/* 8037BA88 003776E8 81 8C 00 08 */ lwz r12, 8(r12)
+/* 8037BA8C 003776EC 7D 89 03 A6 */ mtctr r12
+/* 8037BA90 003776F0 4E 80 04 21 */ bctrl
+/* 8037BA94 003776F4 83 A1 00 30 */ lwz r29, 0x30(r1)
+lbl_8037BA98:
+/* 8037BA98 003776F8 7C 7C EA 14 */ add r3, r28, r29
+/* 8037BA9C 003776FC 2C 03 00 7F */ cmpwi r3, 0x7f
+/* 8037BAA0 00377700 40 81 00 0C */ ble lbl_8037BAAC
+/* 8037BAA4 00377704 3B 80 00 7F */ li r28, 0x7f
+/* 8037BAA8 00377708 48 00 00 0C */ b lbl_8037BAB4
+lbl_8037BAAC:
+/* 8037BAAC 0037770C 7C 60 FE 70 */ srawi r0, r3, 0x1f
+/* 8037BAB0 00377710 7C 7C 00 78 */ andc r28, r3, r0
+lbl_8037BAB4:
+/* 8037BAB4 00377714 7E C3 B3 78 */ mr r3, r22
+/* 8037BAB8 00377718 7F 84 E3 78 */ mr r4, r28
+/* 8037BABC 0037771C 7F 25 CB 78 */ mr r5, r25
+/* 8037BAC0 00377720 48 00 03 B9 */ bl CheckPlayableSoundCount__Q34nw4r3snd11SoundPlayerFiPQ44nw4r3snd6detail19ExternalSoundPlayer
+/* 8037BAC4 00377724 2C 03 00 00 */ cmpwi r3, 0
+/* 8037BAC8 00377728 40 82 00 14 */ bne lbl_8037BADC
+/* 8037BACC 0037772C 7F C3 F3 78 */ mr r3, r30
+/* 8037BAD0 00377730 4B EF 3F 55 */ bl func_8026FA24
+/* 8037BAD4 00377734 38 60 00 00 */ li r3, 0
+/* 8037BAD8 00377738 48 00 02 E0 */ b lbl_8037BDB8
+lbl_8037BADC:
+/* 8037BADC 0037773C 3B FA 00 10 */ addi r31, r26, 0x10
+/* 8037BAE0 00377740 7F E3 FB 78 */ mr r3, r31
+/* 8037BAE4 00377744 4B EF 3E 65 */ bl func_8026F948
+/* 8037BAE8 00377748 7F 43 D3 78 */ mr r3, r26
+/* 8037BAEC 0037774C 4B FF 60 6D */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
+/* 8037BAF0 00377750 2C 03 00 00 */ cmpwi r3, 0
+/* 8037BAF4 00377754 41 82 00 1C */ beq lbl_8037BB10
+/* 8037BAF8 00377758 7C 7B 1B 78 */ mr r27, r3
+/* 8037BAFC 0037775C 41 82 00 B4 */ beq lbl_8037BBB0
+/* 8037BB00 00377760 7F 44 D3 78 */ mr r4, r26
+/* 8037BB04 00377764 48 00 7B 49 */ bl func_8038364C
+/* 8037BB08 00377768 7C 7B 1B 78 */ mr r27, r3
+/* 8037BB0C 0037776C 48 00 00 A4 */ b lbl_8037BBB0
+lbl_8037BB10:
+/* 8037BB10 00377770 80 1A 00 04 */ lwz r0, 4(r26)
+/* 8037BB14 00377774 2C 00 00 00 */ cmpwi r0, 0
+/* 8037BB18 00377778 40 82 00 0C */ bne lbl_8037BB24
+/* 8037BB1C 0037777C 38 60 00 00 */ li r3, 0
+/* 8037BB20 00377780 48 00 00 0C */ b lbl_8037BB2C
+lbl_8037BB24:
+/* 8037BB24 00377784 80 7A 00 08 */ lwz r3, 8(r26)
+/* 8037BB28 00377788 38 63 FF 48 */ addi r3, r3, -184
+lbl_8037BB2C:
+/* 8037BB2C 0037778C 2C 03 00 00 */ cmpwi r3, 0
+/* 8037BB30 00377790 40 82 00 14 */ bne lbl_8037BB44
+/* 8037BB34 00377794 7F E3 FB 78 */ mr r3, r31
+/* 8037BB38 00377798 4B EF 3E ED */ bl func_8026FA24
+/* 8037BB3C 0037779C 3B 60 00 00 */ li r27, 0
+/* 8037BB40 003777A0 48 00 00 D0 */ b lbl_8037BC10
+lbl_8037BB44:
+/* 8037BB44 003777A4 88 83 00 74 */ lbz r4, 0x74(r3)
+/* 8037BB48 003777A8 80 03 00 40 */ lwz r0, 0x40(r3)
+/* 8037BB4C 003777AC 7C 84 02 14 */ add r4, r4, r0
+/* 8037BB50 003777B0 2C 04 00 7F */ cmpwi r4, 0x7f
+/* 8037BB54 003777B4 40 81 00 0C */ ble lbl_8037BB60
+/* 8037BB58 003777B8 38 00 00 7F */ li r0, 0x7f
+/* 8037BB5C 003777BC 48 00 00 0C */ b lbl_8037BB68
+lbl_8037BB60:
+/* 8037BB60 003777C0 7C 80 FE 70 */ srawi r0, r4, 0x1f
+/* 8037BB64 003777C4 7C 80 00 78 */ andc r0, r4, r0
+lbl_8037BB68:
+/* 8037BB68 003777C8 7C 1C 00 00 */ cmpw r28, r0
+/* 8037BB6C 003777CC 40 80 00 14 */ bge lbl_8037BB80
+/* 8037BB70 003777D0 7F E3 FB 78 */ mr r3, r31
+/* 8037BB74 003777D4 4B EF 3E B1 */ bl func_8026FA24
+/* 8037BB78 003777D8 3B 60 00 00 */ li r27, 0
+/* 8037BB7C 003777DC 48 00 00 94 */ b lbl_8037BC10
+lbl_8037BB80:
+/* 8037BB80 003777E0 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037BB84 003777E4 38 80 00 00 */ li r4, 0
+/* 8037BB88 003777E8 81 8C 00 18 */ lwz r12, 0x18(r12)
+/* 8037BB8C 003777EC 7D 89 03 A6 */ mtctr r12
+/* 8037BB90 003777F0 4E 80 04 21 */ bctrl
+/* 8037BB94 003777F4 7F 43 D3 78 */ mr r3, r26
+/* 8037BB98 003777F8 4B FF 5F C1 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
+/* 8037BB9C 003777FC 2C 03 00 00 */ cmpwi r3, 0
+/* 8037BBA0 00377800 41 82 00 0C */ beq lbl_8037BBAC
+/* 8037BBA4 00377804 7F 44 D3 78 */ mr r4, r26
+/* 8037BBA8 00377808 48 00 7A A5 */ bl func_8038364C
+lbl_8037BBAC:
+/* 8037BBAC 0037780C 7C 7B 1B 78 */ mr r27, r3
+lbl_8037BBB0:
+/* 8037BBB0 00377810 80 7A 00 08 */ lwz r3, 8(r26)
+/* 8037BBB4 00377814 38 1A 00 08 */ addi r0, r26, 8
+/* 8037BBB8 00377818 48 00 00 34 */ b lbl_8037BBEC
+lbl_8037BBBC:
+/* 8037BBBC 0037781C 88 A3 FF BC */ lbz r5, -0x44(r3)
+/* 8037BBC0 00377820 80 83 FF 88 */ lwz r4, -0x78(r3)
+/* 8037BBC4 00377824 7C A5 22 14 */ add r5, r5, r4
+/* 8037BBC8 00377828 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037BBCC 0037782C 40 81 00 0C */ ble lbl_8037BBD8
+/* 8037BBD0 00377830 38 80 00 7F */ li r4, 0x7f
+/* 8037BBD4 00377834 48 00 00 0C */ b lbl_8037BBE0
+lbl_8037BBD8:
+/* 8037BBD8 00377838 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037BBDC 0037783C 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037BBE0:
+/* 8037BBE0 00377840 7C 1C 20 00 */ cmpw r28, r4
+/* 8037BBE4 00377844 41 80 00 10 */ blt lbl_8037BBF4
+/* 8037BBE8 00377848 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037BBEC:
+/* 8037BBEC 0037784C 7C 03 00 40 */ cmplw r3, r0
+/* 8037BBF0 00377850 40 82 FF CC */ bne lbl_8037BBBC
+lbl_8037BBF4:
+/* 8037BBF4 00377854 90 61 00 14 */ stw r3, 0x14(r1)
+/* 8037BBF8 00377858 38 7A 00 04 */ addi r3, r26, 4
+/* 8037BBFC 0037785C 38 81 00 14 */ addi r4, r1, 0x14
+/* 8037BC00 00377860 38 BB 00 B8 */ addi r5, r27, 0xb8
+/* 8037BC04 00377864 4B FE 70 45 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037BC08 00377868 7F E3 FB 78 */ mr r3, r31
+/* 8037BC0C 0037786C 4B EF 3E 19 */ bl func_8026FA24
+lbl_8037BC10:
+/* 8037BC10 00377870 2C 1B 00 00 */ cmpwi r27, 0
+/* 8037BC14 00377874 40 82 00 14 */ bne lbl_8037BC28
+/* 8037BC18 00377878 7F C3 F3 78 */ mr r3, r30
+/* 8037BC1C 0037787C 4B EF 3E 09 */ bl func_8026FA24
+/* 8037BC20 00377880 38 60 00 00 */ li r3, 0
+/* 8037BC24 00377884 48 00 01 94 */ b lbl_8037BDB8
+lbl_8037BC28:
+/* 8037BC28 00377888 3B 96 00 48 */ addi r28, r22, 0x48
+/* 8037BC2C 0037788C 7F 83 E3 78 */ mr r3, r28
+/* 8037BC30 00377890 4B EF 3D 19 */ bl func_8026F948
+/* 8037BC34 00377894 80 16 00 18 */ lwz r0, 0x18(r22)
+/* 8037BC38 00377898 2C 00 00 00 */ cmpwi r0, 0
+/* 8037BC3C 0037789C 40 82 00 10 */ bne lbl_8037BC4C
+/* 8037BC40 003778A0 7F 83 E3 78 */ mr r3, r28
+/* 8037BC44 003778A4 4B EF 3D E1 */ bl func_8026FA24
+/* 8037BC48 003778A8 48 00 00 48 */ b lbl_8037BC90
+lbl_8037BC4C:
+/* 8037BC4C 003778AC 80 B6 00 1C */ lwz r5, 0x1c(r22)
+/* 8037BC50 003778B0 38 76 00 18 */ addi r3, r22, 0x18
+/* 8037BC54 003778B4 38 81 00 10 */ addi r4, r1, 0x10
+/* 8037BC58 003778B8 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 8037BC5C 003778BC 3B E5 FF D4 */ addi r31, r5, -44
+/* 8037BC60 003778C0 4B FE 6F 5D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
+/* 8037BC64 003778C4 93 7F 00 34 */ stw r27, 0x34(r31)
+/* 8037BC68 003778C8 3B 5F 00 04 */ addi r26, r31, 4
+/* 8037BC6C 003778CC 7F 43 D3 78 */ mr r3, r26
+/* 8037BC70 003778D0 93 FB 00 04 */ stw r31, 4(r27)
+/* 8037BC74 003778D4 4B EF 3C D5 */ bl func_8026F948
+/* 8037BC78 003778D8 38 7F 00 1C */ addi r3, r31, 0x1c
+/* 8037BC7C 003778DC 4B FF 47 A5 */ bl Clear__Q44nw4r3snd6detail9FrameHeapFv
+/* 8037BC80 003778E0 7F 43 D3 78 */ mr r3, r26
+/* 8037BC84 003778E4 4B EF 3D A1 */ bl func_8026FA24
+/* 8037BC88 003778E8 7F 83 E3 78 */ mr r3, r28
+/* 8037BC8C 003778EC 4B EF 3D 99 */ bl func_8026FA24
+lbl_8037BC90:
+/* 8037BC90 003778F0 2C 18 00 00 */ cmpwi r24, 0
+/* 8037BC94 003778F4 41 82 00 50 */ beq lbl_8037BCE4
+/* 8037BC98 003778F8 41 82 00 4C */ beq lbl_8037BCE4
+/* 8037BC9C 003778FC 80 78 00 08 */ lwz r3, 8(r24)
+/* 8037BCA0 00377900 80 98 00 10 */ lwz r4, 0x10(r24)
+/* 8037BCA4 00377904 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037BCA8 00377908 81 8C 00 08 */ lwz r12, 8(r12)
+/* 8037BCAC 0037790C 7D 89 03 A6 */ mtctr r12
+/* 8037BCB0 00377910 4E 80 04 21 */ bctrl
+/* 8037BCB4 00377914 2C 03 00 00 */ cmpwi r3, 0
+/* 8037BCB8 00377918 7C 7A 1B 78 */ mr r26, r3
+/* 8037BCBC 0037791C 41 82 00 28 */ beq lbl_8037BCE4
+/* 8037BCC0 00377920 80 98 00 0C */ lwz r4, 0xc(r24)
+/* 8037BCC4 00377924 80 B8 00 10 */ lwz r5, 0x10(r24)
+/* 8037BCC8 00377928 4B C8 83 39 */ bl memcpy
+/* 8037BCCC 0037792C 80 98 00 00 */ lwz r4, 0(r24)
+/* 8037BCD0 00377930 7F 63 DB 78 */ mr r3, r27
+/* 8037BCD4 00377934 80 B8 00 04 */ lwz r5, 4(r24)
+/* 8037BCD8 00377938 7F 47 D3 78 */ mr r7, r26
+/* 8037BCDC 0037793C 80 D8 00 08 */ lwz r6, 8(r24)
+/* 8037BCE0 00377940 4B FF 23 D9 */ bl SetAmbientParamCallback__Q44nw4r3snd6detail10BasicSoundFPQ54nw4r3snd6detail10BasicSound26AmbientParamUpdateCallbackPQ54nw4r3snd6detail10BasicSound24AmbientArgUpdateCallbackPQ54nw4r3snd6detail10BasicSound27AmbientArgAllocaterCallbackPv
+lbl_8037BCE4:
+/* 8037BCE4 00377944 9A FB 00 74 */ stb r23, 0x74(r27)
+/* 8037BCE8 00377948 38 16 00 04 */ addi r0, r22, 4
+/* 8037BCEC 0037794C 7E C3 B3 78 */ mr r3, r22
+/* 8037BCF0 00377950 38 81 00 0C */ addi r4, r1, 0xc
+/* 8037BCF4 00377954 93 BB 00 40 */ stw r29, 0x40(r27)
+/* 8037BCF8 00377958 38 BB 00 C0 */ addi r5, r27, 0xc0
+/* 8037BCFC 0037795C 90 01 00 0C */ stw r0, 0xc(r1)
+/* 8037BD00 00377960 4B FE 6F 49 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037BD04 00377964 2C 19 00 00 */ cmpwi r25, 0
+/* 8037BD08 00377968 92 DB 00 10 */ stw r22, 0x10(r27)
+/* 8037BD0C 0037796C 41 82 00 10 */ beq lbl_8037BD1C
+/* 8037BD10 00377970 7F 23 CB 78 */ mr r3, r25
+/* 8037BD14 00377974 7F 64 DB 78 */ mr r4, r27
+/* 8037BD18 00377978 4B FF 42 65 */ bl InsertSoundList__Q44nw4r3snd6detail19ExternalSoundPlayerFPQ44nw4r3snd6detail10BasicSound
+lbl_8037BD1C:
+/* 8037BD1C 0037797C 3A F6 00 48 */ addi r23, r22, 0x48
+/* 8037BD20 00377980 7E E3 BB 78 */ mr r3, r23
+/* 8037BD24 00377984 4B EF 3C 25 */ bl func_8026F948
+/* 8037BD28 00377988 80 76 00 10 */ lwz r3, 0x10(r22)
+/* 8037BD2C 0037798C 38 16 00 10 */ addi r0, r22, 0x10
+/* 8037BD30 00377990 48 00 00 58 */ b lbl_8037BD88
+lbl_8037BD34:
+/* 8037BD34 00377994 88 A3 FF AC */ lbz r5, -0x54(r3)
+/* 8037BD38 00377998 80 83 FF 78 */ lwz r4, -0x88(r3)
+/* 8037BD3C 0037799C 7C A5 22 14 */ add r5, r5, r4
+/* 8037BD40 003779A0 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037BD44 003779A4 40 81 00 0C */ ble lbl_8037BD50
+/* 8037BD48 003779A8 38 C0 00 7F */ li r6, 0x7f
+/* 8037BD4C 003779AC 48 00 00 0C */ b lbl_8037BD58
+lbl_8037BD50:
+/* 8037BD50 003779B0 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037BD54 003779B4 7C A6 20 78 */ andc r6, r5, r4
+lbl_8037BD58:
+/* 8037BD58 003779B8 88 BB 00 74 */ lbz r5, 0x74(r27)
+/* 8037BD5C 003779BC 80 9B 00 40 */ lwz r4, 0x40(r27)
+/* 8037BD60 003779C0 7C A5 22 14 */ add r5, r5, r4
+/* 8037BD64 003779C4 2C 05 00 7F */ cmpwi r5, 0x7f
+/* 8037BD68 003779C8 40 81 00 0C */ ble lbl_8037BD74
+/* 8037BD6C 003779CC 38 80 00 7F */ li r4, 0x7f
+/* 8037BD70 003779D0 48 00 00 0C */ b lbl_8037BD7C
+lbl_8037BD74:
+/* 8037BD74 003779D4 7C A4 FE 70 */ srawi r4, r5, 0x1f
+/* 8037BD78 003779D8 7C A4 20 78 */ andc r4, r5, r4
+lbl_8037BD7C:
+/* 8037BD7C 003779DC 7C 04 30 00 */ cmpw r4, r6
+/* 8037BD80 003779E0 41 80 00 10 */ blt lbl_8037BD90
+/* 8037BD84 003779E4 80 63 00 00 */ lwz r3, 0(r3)
+lbl_8037BD88:
+/* 8037BD88 003779E8 7C 03 00 40 */ cmplw r3, r0
+/* 8037BD8C 003779EC 40 82 FF A8 */ bne lbl_8037BD34
+lbl_8037BD90:
+/* 8037BD90 003779F0 90 61 00 08 */ stw r3, 8(r1)
+/* 8037BD94 003779F4 38 76 00 0C */ addi r3, r22, 0xc
+/* 8037BD98 003779F8 38 81 00 08 */ addi r4, r1, 8
+/* 8037BD9C 003779FC 38 BB 00 C8 */ addi r5, r27, 0xc8
+/* 8037BDA0 00377A00 4B FE 6E A9 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037BDA4 00377A04 7E E3 BB 78 */ mr r3, r23
+/* 8037BDA8 00377A08 4B EF 3C 7D */ bl func_8026FA24
+/* 8037BDAC 00377A0C 7F C3 F3 78 */ mr r3, r30
+/* 8037BDB0 00377A10 4B EF 3C 75 */ bl func_8026FA24
+/* 8037BDB4 00377A14 7F 63 DB 78 */ mr r3, r27
+lbl_8037BDB8:
+/* 8037BDB8 00377A18 39 61 00 60 */ addi r11, r1, 0x60
+/* 8037BDBC 00377A1C 4B E4 B3 A5 */ bl func_801C7160
+/* 8037BDC0 00377A20 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 8037BDC4 00377A24 7C 08 03 A6 */ mtlr r0
+/* 8037BDC8 00377A28 38 21 00 60 */ addi r1, r1, 0x60
+/* 8037BDCC 00377A2C 4E 80 00 20 */ blr
+
+.global SetPlayableSoundCount__Q34nw4r3snd11SoundPlayerFi
+SetPlayableSoundCount__Q34nw4r3snd11SoundPlayerFi:
+/* 8037BDD0 00377A30 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037BDD4 00377A34 7C 08 02 A6 */ mflr r0
+/* 8037BDD8 00377A38 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037BDDC 00377A3C 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037BDE0 00377A40 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037BDE4 00377A44 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037BDE8 00377A48 7C 9E 23 78 */ mr r30, r4
+/* 8037BDEC 00377A4C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037BDF0 00377A50 7C 7D 1B 78 */ mr r29, r3
+/* 8037BDF4 00377A54 7F E3 FB 78 */ mr r3, r31
+/* 8037BDF8 00377A58 4B EF 3B 51 */ bl func_8026F948
+/* 8037BDFC 00377A5C 88 1D 00 2D */ lbz r0, 0x2d(r29)
+/* 8037BE00 00377A60 B3 DD 00 24 */ sth r30, 0x24(r29)
+/* 8037BE04 00377A64 2C 00 00 00 */ cmpwi r0, 0
+/* 8037BE08 00377A68 41 82 00 34 */ beq lbl_8037BE3C
+/* 8037BE0C 00377A6C A0 7D 00 26 */ lhz r3, 0x26(r29)
+/* 8037BE10 00377A70 57 C0 04 3E */ clrlwi r0, r30, 0x10
+/* 8037BE14 00377A74 7C 00 18 40 */ cmplw r0, r3
+/* 8037BE18 00377A78 40 81 00 08 */ ble lbl_8037BE20
+/* 8037BE1C 00377A7C 7C 60 1B 78 */ mr r0, r3
+lbl_8037BE20:
+/* 8037BE20 00377A80 B0 1D 00 24 */ sth r0, 0x24(r29)
+/* 8037BE24 00377A84 48 00 00 18 */ b lbl_8037BE3C
+lbl_8037BE28:
+/* 8037BE28 00377A88 80 7D 00 10 */ lwz r3, 0x10(r29)
+/* 8037BE2C 00377A8C 85 83 FF 38 */ lwzu r12, -0xc8(r3)
+/* 8037BE30 00377A90 81 8C 00 28 */ lwz r12, 0x28(r12)
+/* 8037BE34 00377A94 7D 89 03 A6 */ mtctr r12
+/* 8037BE38 00377A98 4E 80 04 21 */ bctrl
+lbl_8037BE3C:
+/* 8037BE3C 00377A9C 80 7D 00 00 */ lwz r3, 0(r29)
+/* 8037BE40 00377AA0 A0 1D 00 24 */ lhz r0, 0x24(r29)
+/* 8037BE44 00377AA4 7C 03 00 00 */ cmpw r3, r0
+/* 8037BE48 00377AA8 41 81 FF E0 */ bgt lbl_8037BE28
+/* 8037BE4C 00377AAC 7F E3 FB 78 */ mr r3, r31
+/* 8037BE50 00377AB0 4B EF 3B D5 */ bl func_8026FA24
+/* 8037BE54 00377AB4 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037BE58 00377AB8 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037BE5C 00377ABC 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037BE60 00377AC0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037BE64 00377AC4 7C 08 03 A6 */ mtlr r0
+/* 8037BE68 00377AC8 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037BE6C 00377ACC 4E 80 00 20 */ blr
+
+.global detail_SetPlayableSoundLimit__Q34nw4r3snd11SoundPlayerFi
+detail_SetPlayableSoundLimit__Q34nw4r3snd11SoundPlayerFi:
+/* 8037BE70 00377AD0 B0 83 00 26 */ sth r4, 0x26(r3)
+/* 8037BE74 00377AD4 4E 80 00 20 */ blr
+
+.global CheckPlayableSoundCount__Q34nw4r3snd11SoundPlayerFiPQ44nw4r3snd6detail19ExternalSoundPlayer
+CheckPlayableSoundCount__Q34nw4r3snd11SoundPlayerFiPQ44nw4r3snd6detail19ExternalSoundPlayer:
+/* 8037BE78 00377AD8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037BE7C 00377ADC 7C 08 02 A6 */ mflr r0
+/* 8037BE80 00377AE0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037BE84 00377AE4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037BE88 00377AE8 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037BE8C 00377AEC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037BE90 00377AF0 7C BE 2B 78 */ mr r30, r5
+/* 8037BE94 00377AF4 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037BE98 00377AF8 7C 9D 23 78 */ mr r29, r4
+/* 8037BE9C 00377AFC 93 81 00 10 */ stw r28, 0x10(r1)
+/* 8037BEA0 00377B00 7C 7C 1B 78 */ mr r28, r3
+/* 8037BEA4 00377B04 7F E3 FB 78 */ mr r3, r31
+/* 8037BEA8 00377B08 4B EF 3A A1 */ bl func_8026F948
+/* 8037BEAC 00377B0C A0 1C 00 24 */ lhz r0, 0x24(r28)
+/* 8037BEB0 00377B10 2C 00 00 00 */ cmpwi r0, 0
+/* 8037BEB4 00377B14 40 82 00 80 */ bne lbl_8037BF34
+/* 8037BEB8 00377B18 7F E3 FB 78 */ mr r3, r31
+/* 8037BEBC 00377B1C 4B EF 3B 69 */ bl func_8026FA24
+/* 8037BEC0 00377B20 38 60 00 00 */ li r3, 0
+/* 8037BEC4 00377B24 48 00 01 30 */ b lbl_8037BFF4
+/* 8037BEC8 00377B28 48 00 00 6C */ b lbl_8037BF34
+lbl_8037BECC:
+/* 8037BECC 00377B2C 80 1C 00 10 */ lwz r0, 0x10(r28)
+/* 8037BED0 00377B30 34 60 FF 38 */ addic. r3, r0, -200
+/* 8037BED4 00377B34 40 82 00 14 */ bne lbl_8037BEE8
+/* 8037BED8 00377B38 7F E3 FB 78 */ mr r3, r31
+/* 8037BEDC 00377B3C 4B EF 3B 49 */ bl func_8026FA24
+/* 8037BEE0 00377B40 38 60 00 00 */ li r3, 0
+/* 8037BEE4 00377B44 48 00 01 10 */ b lbl_8037BFF4
+lbl_8037BEE8:
+/* 8037BEE8 00377B48 88 83 00 74 */ lbz r4, 0x74(r3)
+/* 8037BEEC 00377B4C 80 03 00 40 */ lwz r0, 0x40(r3)
+/* 8037BEF0 00377B50 7C 84 02 14 */ add r4, r4, r0
+/* 8037BEF4 00377B54 2C 04 00 7F */ cmpwi r4, 0x7f
+/* 8037BEF8 00377B58 40 81 00 0C */ ble lbl_8037BF04
+/* 8037BEFC 00377B5C 38 00 00 7F */ li r0, 0x7f
+/* 8037BF00 00377B60 48 00 00 0C */ b lbl_8037BF0C
+lbl_8037BF04:
+/* 8037BF04 00377B64 7C 80 FE 70 */ srawi r0, r4, 0x1f
+/* 8037BF08 00377B68 7C 80 00 78 */ andc r0, r4, r0
+lbl_8037BF0C:
+/* 8037BF0C 00377B6C 7C 1D 00 00 */ cmpw r29, r0
+/* 8037BF10 00377B70 40 80 00 14 */ bge lbl_8037BF24
+/* 8037BF14 00377B74 7F E3 FB 78 */ mr r3, r31
+/* 8037BF18 00377B78 4B EF 3B 0D */ bl func_8026FA24
+/* 8037BF1C 00377B7C 38 60 00 00 */ li r3, 0
+/* 8037BF20 00377B80 48 00 00 D4 */ b lbl_8037BFF4
+lbl_8037BF24:
+/* 8037BF24 00377B84 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037BF28 00377B88 81 8C 00 28 */ lwz r12, 0x28(r12)
+/* 8037BF2C 00377B8C 7D 89 03 A6 */ mtctr r12
+/* 8037BF30 00377B90 4E 80 04 21 */ bctrl
+lbl_8037BF34:
+/* 8037BF34 00377B94 80 7C 00 00 */ lwz r3, 0(r28)
+/* 8037BF38 00377B98 A0 1C 00 24 */ lhz r0, 0x24(r28)
+/* 8037BF3C 00377B9C 7C 03 00 00 */ cmpw r3, r0
+/* 8037BF40 00377BA0 40 80 FF 8C */ bge lbl_8037BECC
+/* 8037BF44 00377BA4 2C 1E 00 00 */ cmpwi r30, 0
+/* 8037BF48 00377BA8 41 82 00 A0 */ beq lbl_8037BFE8
+/* 8037BF4C 00377BAC A0 1E 00 0C */ lhz r0, 0xc(r30)
+/* 8037BF50 00377BB0 2C 00 00 00 */ cmpwi r0, 0
+/* 8037BF54 00377BB4 40 82 00 84 */ bne lbl_8037BFD8
+/* 8037BF58 00377BB8 7F E3 FB 78 */ mr r3, r31
+/* 8037BF5C 00377BBC 4B EF 3A C9 */ bl func_8026FA24
+/* 8037BF60 00377BC0 38 60 00 00 */ li r3, 0
+/* 8037BF64 00377BC4 48 00 00 90 */ b lbl_8037BFF4
+/* 8037BF68 00377BC8 48 00 00 70 */ b lbl_8037BFD8
+lbl_8037BF6C:
+/* 8037BF6C 00377BCC 7F C3 F3 78 */ mr r3, r30
+/* 8037BF70 00377BD0 4B FF 40 91 */ bl GetLowestPrioritySound__Q44nw4r3snd6detail19ExternalSoundPlayerFv
+/* 8037BF74 00377BD4 2C 03 00 00 */ cmpwi r3, 0
+/* 8037BF78 00377BD8 40 82 00 14 */ bne lbl_8037BF8C
+/* 8037BF7C 00377BDC 7F E3 FB 78 */ mr r3, r31
+/* 8037BF80 00377BE0 4B EF 3A A5 */ bl func_8026FA24
+/* 8037BF84 00377BE4 38 60 00 00 */ li r3, 0
+/* 8037BF88 00377BE8 48 00 00 6C */ b lbl_8037BFF4
+lbl_8037BF8C:
+/* 8037BF8C 00377BEC 88 83 00 74 */ lbz r4, 0x74(r3)
+/* 8037BF90 00377BF0 80 03 00 40 */ lwz r0, 0x40(r3)
+/* 8037BF94 00377BF4 7C 84 02 14 */ add r4, r4, r0
+/* 8037BF98 00377BF8 2C 04 00 7F */ cmpwi r4, 0x7f
+/* 8037BF9C 00377BFC 40 81 00 0C */ ble lbl_8037BFA8
+/* 8037BFA0 00377C00 38 00 00 7F */ li r0, 0x7f
+/* 8037BFA4 00377C04 48 00 00 0C */ b lbl_8037BFB0
+lbl_8037BFA8:
+/* 8037BFA8 00377C08 7C 80 FE 70 */ srawi r0, r4, 0x1f
+/* 8037BFAC 00377C0C 7C 80 00 78 */ andc r0, r4, r0
+lbl_8037BFB0:
+/* 8037BFB0 00377C10 7C 1D 00 00 */ cmpw r29, r0
+/* 8037BFB4 00377C14 40 80 00 14 */ bge lbl_8037BFC8
+/* 8037BFB8 00377C18 7F E3 FB 78 */ mr r3, r31
+/* 8037BFBC 00377C1C 4B EF 3A 69 */ bl func_8026FA24
+/* 8037BFC0 00377C20 38 60 00 00 */ li r3, 0
+/* 8037BFC4 00377C24 48 00 00 30 */ b lbl_8037BFF4
+lbl_8037BFC8:
+/* 8037BFC8 00377C28 81 83 00 00 */ lwz r12, 0(r3)
+/* 8037BFCC 00377C2C 81 8C 00 28 */ lwz r12, 0x28(r12)
+/* 8037BFD0 00377C30 7D 89 03 A6 */ mtctr r12
+/* 8037BFD4 00377C34 4E 80 04 21 */ bctrl
+lbl_8037BFD8:
+/* 8037BFD8 00377C38 80 7E 00 00 */ lwz r3, 0(r30)
+/* 8037BFDC 00377C3C A0 1E 00 0C */ lhz r0, 0xc(r30)
+/* 8037BFE0 00377C40 7C 03 00 00 */ cmpw r3, r0
+/* 8037BFE4 00377C44 40 80 FF 88 */ bge lbl_8037BF6C
+lbl_8037BFE8:
+/* 8037BFE8 00377C48 7F E3 FB 78 */ mr r3, r31
+/* 8037BFEC 00377C4C 4B EF 3A 39 */ bl func_8026FA24
+/* 8037BFF0 00377C50 38 60 00 01 */ li r3, 1
+lbl_8037BFF4:
+/* 8037BFF4 00377C54 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037BFF8 00377C58 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037BFFC 00377C5C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037C000 00377C60 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037C004 00377C64 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 8037C008 00377C68 7C 08 03 A6 */ mtlr r0
+/* 8037C00C 00377C6C 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037C010 00377C70 4E 80 00 20 */ blr
+
+.global detail_AppendPlayerHeap__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10PlayerHeap
+detail_AppendPlayerHeap__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10PlayerHeap:
+/* 8037C014 00377C74 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037C018 00377C78 7C 08 02 A6 */ mflr r0
+/* 8037C01C 00377C7C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037C020 00377C80 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037C024 00377C84 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037C028 00377C88 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037C02C 00377C8C 7C 9E 23 78 */ mr r30, r4
+/* 8037C030 00377C90 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037C034 00377C94 7C 7D 1B 78 */ mr r29, r3
+/* 8037C038 00377C98 7F E3 FB 78 */ mr r3, r31
+/* 8037C03C 00377C9C 4B EF 39 0D */ bl func_8026F948
+/* 8037C040 00377CA0 93 BE 00 38 */ stw r29, 0x38(r30)
+/* 8037C044 00377CA4 38 1D 00 1C */ addi r0, r29, 0x1c
+/* 8037C048 00377CA8 38 7D 00 18 */ addi r3, r29, 0x18
+/* 8037C04C 00377CAC 38 81 00 08 */ addi r4, r1, 8
+/* 8037C050 00377CB0 90 01 00 08 */ stw r0, 8(r1)
+/* 8037C054 00377CB4 38 BE 00 2C */ addi r5, r30, 0x2c
+/* 8037C058 00377CB8 4B FE 6B F1 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+/* 8037C05C 00377CBC 38 00 00 01 */ li r0, 1
+/* 8037C060 00377CC0 7F E3 FB 78 */ mr r3, r31
+/* 8037C064 00377CC4 98 1D 00 2D */ stb r0, 0x2d(r29)
+/* 8037C068 00377CC8 4B EF 39 BD */ bl func_8026FA24
+/* 8037C06C 00377CCC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037C070 00377CD0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037C074 00377CD4 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037C078 00377CD8 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037C07C 00377CDC 7C 08 03 A6 */ mtlr r0
+/* 8037C080 00377CE0 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037C084 00377CE4 4E 80 00 20 */ blr
+
+.global detail_FreePlayerHeap__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound
+detail_FreePlayerHeap__Q34nw4r3snd11SoundPlayerFPQ44nw4r3snd6detail10BasicSound:
+/* 8037C088 00377CE8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8037C08C 00377CEC 7C 08 02 A6 */ mflr r0
+/* 8037C090 00377CF0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8037C094 00377CF4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8037C098 00377CF8 3B E3 00 48 */ addi r31, r3, 0x48
+/* 8037C09C 00377CFC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8037C0A0 00377D00 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8037C0A4 00377D04 7C 9D 23 78 */ mr r29, r4
+/* 8037C0A8 00377D08 93 81 00 10 */ stw r28, 0x10(r1)
+/* 8037C0AC 00377D0C 7C 7C 1B 78 */ mr r28, r3
+/* 8037C0B0 00377D10 7F E3 FB 78 */ mr r3, r31
+/* 8037C0B4 00377D14 4B EF 38 95 */ bl func_8026F948
+/* 8037C0B8 00377D18 83 DD 00 04 */ lwz r30, 4(r29)
+/* 8037C0BC 00377D1C 2C 1E 00 00 */ cmpwi r30, 0
+/* 8037C0C0 00377D20 41 82 00 1C */ beq lbl_8037C0DC
+/* 8037C0C4 00377D24 38 1C 00 1C */ addi r0, r28, 0x1c
+/* 8037C0C8 00377D28 38 7C 00 18 */ addi r3, r28, 0x18
+/* 8037C0CC 00377D2C 90 01 00 08 */ stw r0, 8(r1)
+/* 8037C0D0 00377D30 38 81 00 08 */ addi r4, r1, 8
+/* 8037C0D4 00377D34 38 BE 00 2C */ addi r5, r30, 0x2c
+/* 8037C0D8 00377D38 4B FE 6B 71 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
+lbl_8037C0DC:
+/* 8037C0DC 00377D3C 2C 1E 00 00 */ cmpwi r30, 0
+/* 8037C0E0 00377D40 41 82 00 0C */ beq lbl_8037C0EC
+/* 8037C0E4 00377D44 38 00 00 00 */ li r0, 0
+/* 8037C0E8 00377D48 90 1E 00 34 */ stw r0, 0x34(r30)
+lbl_8037C0EC:
+/* 8037C0EC 00377D4C 38 00 00 00 */ li r0, 0
+/* 8037C0F0 00377D50 7F E3 FB 78 */ mr r3, r31
+/* 8037C0F4 00377D54 90 1D 00 04 */ stw r0, 4(r29)
+/* 8037C0F8 00377D58 4B EF 39 2D */ bl func_8026FA24
+/* 8037C0FC 00377D5C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8037C100 00377D60 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8037C104 00377D64 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8037C108 00377D68 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8037C10C 00377D6C 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 8037C110 00377D70 7C 08 03 A6 */ mtlr r0
+/* 8037C114 00377D74 38 21 00 20 */ addi r1, r1, 0x20
+/* 8037C118 00377D78 4E 80 00 20 */ blr
diff --git a/asm/text_10_6.s b/asm/text_10_6.s
index 05fa746..2144cee 100644
--- a/asm/text_10_6.s
+++ b/asm/text_10_6.s
@@ -2,1580 +2,6 @@
.section .text, "ax" # 0x80006980 - 0x803E1E60
-.global func_8037ABDC
-func_8037ABDC:
-/* 8037ABDC 0037683C 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037ABE0 00376840 7C 08 02 A6 */ mflr r0
-/* 8037ABE4 00376844 38 83 00 04 */ addi r4, r3, 4
-/* 8037ABE8 00376848 38 A3 00 10 */ addi r5, r3, 0x10
-/* 8037ABEC 0037684C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037ABF0 00376850 38 C3 00 1C */ addi r6, r3, 0x1c
-/* 8037ABF4 00376854 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037ABF8 00376858 3B E0 00 01 */ li r31, 1
-/* 8037ABFC 0037685C 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037AC00 00376860 3B C0 00 00 */ li r30, 0
-/* 8037AC04 00376864 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037AC08 00376868 7C 7D 1B 78 */ mr r29, r3
-/* 8037AC0C 0037686C 93 C3 00 04 */ stw r30, 4(r3)
-/* 8037AC10 00376870 93 C3 00 08 */ stw r30, 8(r3)
-/* 8037AC14 00376874 93 C3 00 10 */ stw r30, 0x10(r3)
-/* 8037AC18 00376878 93 C3 00 14 */ stw r30, 0x14(r3)
-/* 8037AC1C 0037687C 93 C3 00 1C */ stw r30, 0x1c(r3)
-/* 8037AC20 00376880 93 C3 00 20 */ stw r30, 0x20(r3)
-/* 8037AC24 00376884 93 C3 00 00 */ stw r30, 0(r3)
-/* 8037AC28 00376888 90 83 00 04 */ stw r4, 4(r3)
-/* 8037AC2C 0037688C 90 83 00 08 */ stw r4, 8(r3)
-/* 8037AC30 00376890 93 C3 00 0C */ stw r30, 0xc(r3)
-/* 8037AC34 00376894 90 A3 00 10 */ stw r5, 0x10(r3)
-/* 8037AC38 00376898 90 A3 00 14 */ stw r5, 0x14(r3)
-/* 8037AC3C 0037689C 93 C3 00 18 */ stw r30, 0x18(r3)
-/* 8037AC40 003768A0 90 C3 00 1C */ stw r6, 0x1c(r3)
-/* 8037AC44 003768A4 90 C3 00 20 */ stw r6, 0x20(r3)
-/* 8037AC48 003768A8 B3 E3 00 24 */ sth r31, 0x24(r3)
-/* 8037AC4C 003768AC B3 E3 00 26 */ sth r31, 0x26(r3)
-/* 8037AC50 003768B0 9B C3 00 2D */ stb r30, 0x2d(r3)
-/* 8037AC54 003768B4 38 63 00 48 */ addi r3, r3, 0x48
-/* 8037AC58 003768B8 4B EF 4C B9 */ bl func_8026F910
-/* 8037AC5C 003768BC C0 02 A7 60 */ lfs f0, lbl_80642D60-_SDA2_BASE_(r2)
-/* 8037AC60 003768C0 7F A3 EB 78 */ mr r3, r29
-/* 8037AC64 003768C4 93 FD 00 30 */ stw r31, 0x30(r29)
-/* 8037AC68 003768C8 D0 1D 00 28 */ stfs f0, 0x28(r29)
-/* 8037AC6C 003768CC 9B DD 00 2C */ stb r30, 0x2c(r29)
-/* 8037AC70 003768D0 D0 1D 00 34 */ stfs f0, 0x34(r29)
-/* 8037AC74 003768D4 D0 1D 00 38 */ stfs f0, 0x38(r29)
-/* 8037AC78 003768D8 D0 1D 00 3C */ stfs f0, 0x3c(r29)
-/* 8037AC7C 003768DC D0 1D 00 40 */ stfs f0, 0x40(r29)
-/* 8037AC80 003768E0 D0 1D 00 44 */ stfs f0, 0x44(r29)
-/* 8037AC84 003768E4 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037AC88 003768E8 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037AC8C 003768EC 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037AC90 003768F0 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037AC94 003768F4 7C 08 03 A6 */ mtlr r0
-/* 8037AC98 003768F8 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037AC9C 003768FC 4E 80 00 20 */ blr
-lbl_8037ACA0:
-/* 8037ACA0 00376900 38 00 00 00 */ li r0, 0
-/* 8037ACA4 00376904 38 83 00 04 */ addi r4, r3, 4
-/* 8037ACA8 00376908 90 03 00 04 */ stw r0, 4(r3)
-/* 8037ACAC 0037690C 90 03 00 08 */ stw r0, 8(r3)
-/* 8037ACB0 00376910 90 03 00 00 */ stw r0, 0(r3)
-/* 8037ACB4 00376914 90 83 00 04 */ stw r4, 4(r3)
-/* 8037ACB8 00376918 90 83 00 08 */ stw r4, 8(r3)
-/* 8037ACBC 0037691C 4E 80 00 20 */ blr
-lbl_8037ACC0:
-/* 8037ACC0 00376920 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8037ACC4 00376924 7C 08 02 A6 */ mflr r0
-/* 8037ACC8 00376928 2C 03 00 00 */ cmpwi r3, 0
-/* 8037ACCC 0037692C 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8037ACD0 00376930 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 8037ACD4 00376934 7C 9F 23 78 */ mr r31, r4
-/* 8037ACD8 00376938 93 C1 00 08 */ stw r30, 8(r1)
-/* 8037ACDC 0037693C 7C 7E 1B 78 */ mr r30, r3
-/* 8037ACE0 00376940 41 82 00 1C */ beq lbl_8037ACFC
-/* 8037ACE4 00376944 38 80 00 00 */ li r4, 0
-/* 8037ACE8 00376948 4B FE 7E 51 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
-/* 8037ACEC 0037694C 2C 1F 00 00 */ cmpwi r31, 0
-/* 8037ACF0 00376950 40 81 00 0C */ ble lbl_8037ACFC
-/* 8037ACF4 00376954 7F C3 F3 78 */ mr r3, r30
-/* 8037ACF8 00376958 4B E5 FD C1 */ bl func_801DAAB8
-lbl_8037ACFC:
-/* 8037ACFC 0037695C 7F C3 F3 78 */ mr r3, r30
-/* 8037AD00 00376960 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 8037AD04 00376964 83 C1 00 08 */ lwz r30, 8(r1)
-/* 8037AD08 00376968 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 8037AD0C 0037696C 7C 08 03 A6 */ mtlr r0
-/* 8037AD10 00376970 38 21 00 10 */ addi r1, r1, 0x10
-/* 8037AD14 00376974 4E 80 00 20 */ blr
-
-.global func_8037AD18
-func_8037AD18:
-/* 8037AD18 00376978 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037AD1C 0037697C 7C 08 02 A6 */ mflr r0
-/* 8037AD20 00376980 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037AD24 00376984 39 61 00 20 */ addi r11, r1, 0x20
-/* 8037AD28 00376988 4B E4 C4 01 */ bl _savegpr_27
-/* 8037AD2C 0037698C 2C 03 00 00 */ cmpwi r3, 0
-/* 8037AD30 00376990 7C 7B 1B 78 */ mr r27, r3
-/* 8037AD34 00376994 7C 9C 23 78 */ mr r28, r4
-/* 8037AD38 00376998 41 82 00 8C */ beq lbl_8037ADC4
-/* 8037AD3C 0037699C 3B A3 00 48 */ addi r29, r3, 0x48
-/* 8037AD40 003769A0 7F A3 EB 78 */ mr r3, r29
-/* 8037AD44 003769A4 4B EF 4C 05 */ bl func_8026F948
-/* 8037AD48 003769A8 83 FB 00 04 */ lwz r31, 4(r27)
-/* 8037AD4C 003769AC 3B DB 00 04 */ addi r30, r27, 4
-/* 8037AD50 003769B0 48 00 00 20 */ b lbl_8037AD70
-lbl_8037AD54:
-/* 8037AD54 003769B4 7F E3 FB 78 */ mr r3, r31
-/* 8037AD58 003769B8 85 83 FF 40 */ lwzu r12, -0xc0(r3)
-/* 8037AD5C 003769BC 83 FF 00 00 */ lwz r31, 0(r31)
-/* 8037AD60 003769C0 38 80 00 00 */ li r4, 0
-/* 8037AD64 003769C4 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 8037AD68 003769C8 7D 89 03 A6 */ mtctr r12
-/* 8037AD6C 003769CC 4E 80 04 21 */ bctrl
-lbl_8037AD70:
-/* 8037AD70 003769D0 7C 1F F0 40 */ cmplw r31, r30
-/* 8037AD74 003769D4 40 82 FF E0 */ bne lbl_8037AD54
-/* 8037AD78 003769D8 7F A3 EB 78 */ mr r3, r29
-/* 8037AD7C 003769DC 4B EF 4C A9 */ bl func_8026FA24
-/* 8037AD80 003769E0 34 7B 00 18 */ addic. r3, r27, 0x18
-/* 8037AD84 003769E4 41 82 00 0C */ beq lbl_8037AD90
-/* 8037AD88 003769E8 38 80 00 00 */ li r4, 0
-/* 8037AD8C 003769EC 4B FE 7D AD */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
-lbl_8037AD90:
-/* 8037AD90 003769F0 34 7B 00 0C */ addic. r3, r27, 0xc
-/* 8037AD94 003769F4 41 82 00 0C */ beq lbl_8037ADA0
-/* 8037AD98 003769F8 38 80 00 00 */ li r4, 0
-/* 8037AD9C 003769FC 4B FE 7D 9D */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
-lbl_8037ADA0:
-/* 8037ADA0 00376A00 2C 1B 00 00 */ cmpwi r27, 0
-/* 8037ADA4 00376A04 41 82 00 10 */ beq lbl_8037ADB4
-/* 8037ADA8 00376A08 7F 63 DB 78 */ mr r3, r27
-/* 8037ADAC 00376A0C 38 80 00 00 */ li r4, 0
-/* 8037ADB0 00376A10 4B FE 7D 89 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
-lbl_8037ADB4:
-/* 8037ADB4 00376A14 2C 1C 00 00 */ cmpwi r28, 0
-/* 8037ADB8 00376A18 40 81 00 0C */ ble lbl_8037ADC4
-/* 8037ADBC 00376A1C 7F 63 DB 78 */ mr r3, r27
-/* 8037ADC0 00376A20 4B E5 FC F9 */ bl func_801DAAB8
-lbl_8037ADC4:
-/* 8037ADC4 00376A24 39 61 00 20 */ addi r11, r1, 0x20
-/* 8037ADC8 00376A28 7F 63 DB 78 */ mr r3, r27
-/* 8037ADCC 00376A2C 4B E4 C3 A9 */ bl _restgpr_27
-/* 8037ADD0 00376A30 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037ADD4 00376A34 7C 08 03 A6 */ mtlr r0
-/* 8037ADD8 00376A38 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037ADDC 00376A3C 4E 80 00 20 */ blr
-
-.global func_8037ADE0
-func_8037ADE0:
-/* 8037ADE0 00376A40 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037ADE4 00376A44 7C 08 02 A6 */ mflr r0
-/* 8037ADE8 00376A48 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037ADEC 00376A4C 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037ADF0 00376A50 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037ADF4 00376A54 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037ADF8 00376A58 3B A3 00 48 */ addi r29, r3, 0x48
-/* 8037ADFC 00376A5C 93 81 00 10 */ stw r28, 0x10(r1)
-/* 8037AE00 00376A60 7C 7C 1B 78 */ mr r28, r3
-/* 8037AE04 00376A64 7F A3 EB 78 */ mr r3, r29
-/* 8037AE08 00376A68 4B EF 4B 41 */ bl func_8026F948
-/* 8037AE0C 00376A6C 83 FC 00 04 */ lwz r31, 4(r28)
-/* 8037AE10 00376A70 3B DC 00 04 */ addi r30, r28, 4
-/* 8037AE14 00376A74 48 00 00 1C */ b lbl_8037AE30
-lbl_8037AE18:
-/* 8037AE18 00376A78 7F E3 FB 78 */ mr r3, r31
-/* 8037AE1C 00376A7C 85 83 FF 40 */ lwzu r12, -0xc0(r3)
-/* 8037AE20 00376A80 83 FF 00 00 */ lwz r31, 0(r31)
-/* 8037AE24 00376A84 81 8C 00 10 */ lwz r12, 0x10(r12)
-/* 8037AE28 00376A88 7D 89 03 A6 */ mtctr r12
-/* 8037AE2C 00376A8C 4E 80 04 21 */ bctrl
-lbl_8037AE30:
-/* 8037AE30 00376A90 7C 1F F0 40 */ cmplw r31, r30
-/* 8037AE34 00376A94 40 82 FF E4 */ bne lbl_8037AE18
-/* 8037AE38 00376A98 7F 83 E3 78 */ mr r3, r28
-/* 8037AE3C 00376A9C 48 00 03 05 */ bl func_8037B140
-/* 8037AE40 00376AA0 7F A3 EB 78 */ mr r3, r29
-/* 8037AE44 00376AA4 4B EF 4B E1 */ bl func_8026FA24
-/* 8037AE48 00376AA8 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037AE4C 00376AAC 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037AE50 00376AB0 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037AE54 00376AB4 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037AE58 00376AB8 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 8037AE5C 00376ABC 7C 08 03 A6 */ mtlr r0
-/* 8037AE60 00376AC0 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037AE64 00376AC4 4E 80 00 20 */ blr
-
-.global func_8037AE68
-func_8037AE68:
-/* 8037AE68 00376AC8 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037AE6C 00376ACC 7C 08 02 A6 */ mflr r0
-/* 8037AE70 00376AD0 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037AE74 00376AD4 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037AE78 00376AD8 7C 7F 1B 78 */ mr r31, r3
-/* 8037AE7C 00376ADC 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037AE80 00376AE0 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037AE84 00376AE4 3B A3 00 48 */ addi r29, r3, 0x48
-/* 8037AE88 00376AE8 7F A3 EB 78 */ mr r3, r29
-/* 8037AE8C 00376AEC 93 81 00 10 */ stw r28, 0x10(r1)
-/* 8037AE90 00376AF0 7C 9C 23 78 */ mr r28, r4
-/* 8037AE94 00376AF4 4B EF 4A B5 */ bl func_8026F948
-/* 8037AE98 00376AF8 87 DF 00 04 */ lwzu r30, 4(r31)
-/* 8037AE9C 00376AFC 48 00 00 20 */ b lbl_8037AEBC
-lbl_8037AEA0:
-/* 8037AEA0 00376B00 38 7E FF 40 */ addi r3, r30, -192
-/* 8037AEA4 00376B04 7F 84 E3 78 */ mr r4, r28
-/* 8037AEA8 00376B08 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037AEAC 00376B0C 83 DE 00 00 */ lwz r30, 0(r30)
-/* 8037AEB0 00376B10 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 8037AEB4 00376B14 7D 89 03 A6 */ mtctr r12
-/* 8037AEB8 00376B18 4E 80 04 21 */ bctrl
-lbl_8037AEBC:
-/* 8037AEBC 00376B1C 7C 1E F8 40 */ cmplw r30, r31
-/* 8037AEC0 00376B20 40 82 FF E0 */ bne lbl_8037AEA0
-/* 8037AEC4 00376B24 7F A3 EB 78 */ mr r3, r29
-/* 8037AEC8 00376B28 4B EF 4B 5D */ bl func_8026FA24
-/* 8037AECC 00376B2C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037AED0 00376B30 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037AED4 00376B34 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037AED8 00376B38 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037AEDC 00376B3C 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 8037AEE0 00376B40 7C 08 03 A6 */ mtlr r0
-/* 8037AEE4 00376B44 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037AEE8 00376B48 4E 80 00 20 */ blr
-
-.global func_8037AEEC
-func_8037AEEC:
-/* 8037AEEC 00376B4C 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037AEF0 00376B50 7C 08 02 A6 */ mflr r0
-/* 8037AEF4 00376B54 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037AEF8 00376B58 39 61 00 20 */ addi r11, r1, 0x20
-/* 8037AEFC 00376B5C 4B E4 C2 2D */ bl _savegpr_27
-/* 8037AF00 00376B60 3B A3 00 48 */ addi r29, r3, 0x48
-/* 8037AF04 00376B64 7C 7F 1B 78 */ mr r31, r3
-/* 8037AF08 00376B68 7C 9B 23 78 */ mr r27, r4
-/* 8037AF0C 00376B6C 7C BC 2B 78 */ mr r28, r5
-/* 8037AF10 00376B70 7F A3 EB 78 */ mr r3, r29
-/* 8037AF14 00376B74 4B EF 4A 35 */ bl func_8026F948
-/* 8037AF18 00376B78 87 DF 00 04 */ lwzu r30, 4(r31)
-/* 8037AF1C 00376B7C 48 00 00 24 */ b lbl_8037AF40
-lbl_8037AF20:
-/* 8037AF20 00376B80 81 9E FF 40 */ lwz r12, -0xc0(r30)
-/* 8037AF24 00376B84 38 7E FF 40 */ addi r3, r30, -192
-/* 8037AF28 00376B88 7F 64 DB 78 */ mr r4, r27
-/* 8037AF2C 00376B8C 7F 85 E3 78 */ mr r5, r28
-/* 8037AF30 00376B90 81 8C 00 1C */ lwz r12, 0x1c(r12)
-/* 8037AF34 00376B94 83 DE 00 00 */ lwz r30, 0(r30)
-/* 8037AF38 00376B98 7D 89 03 A6 */ mtctr r12
-/* 8037AF3C 00376B9C 4E 80 04 21 */ bctrl
-lbl_8037AF40:
-/* 8037AF40 00376BA0 7C 1E F8 40 */ cmplw r30, r31
-/* 8037AF44 00376BA4 40 82 FF DC */ bne lbl_8037AF20
-/* 8037AF48 00376BA8 7F A3 EB 78 */ mr r3, r29
-/* 8037AF4C 00376BAC 4B EF 4A D9 */ bl func_8026FA24
-/* 8037AF50 00376BB0 39 61 00 20 */ addi r11, r1, 0x20
-/* 8037AF54 00376BB4 4B E4 C2 21 */ bl _restgpr_27
-/* 8037AF58 00376BB8 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037AF5C 00376BBC 7C 08 03 A6 */ mtlr r0
-/* 8037AF60 00376BC0 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037AF64 00376BC4 4E 80 00 20 */ blr
-
-.global func_8037AF68
-func_8037AF68:
-/* 8037AF68 00376BC8 C0 02 A7 60 */ lfs f0, lbl_80642D60-_SDA2_BASE_(r2)
-/* 8037AF6C 00376BCC FC 01 00 40 */ fcmpo cr0, f1, f0
-/* 8037AF70 00376BD0 40 81 00 08 */ ble lbl_8037AF78
-/* 8037AF74 00376BD4 48 00 00 18 */ b lbl_8037AF8C
-lbl_8037AF78:
-/* 8037AF78 00376BD8 C0 02 A7 64 */ lfs f0, lbl_80642D64-_SDA2_BASE_(r2)
-/* 8037AF7C 00376BDC FC 01 00 40 */ fcmpo cr0, f1, f0
-/* 8037AF80 00376BE0 40 80 00 08 */ bge lbl_8037AF88
-/* 8037AF84 00376BE4 48 00 00 08 */ b lbl_8037AF8C
-lbl_8037AF88:
-/* 8037AF88 00376BE8 FC 00 08 90 */ fmr f0, f1
-lbl_8037AF8C:
-/* 8037AF8C 00376BEC D0 03 00 28 */ stfs f0, 0x28(r3)
-/* 8037AF90 00376BF0 4E 80 00 20 */ blr
-
-.global func_8037AF94
-func_8037AF94:
-/* 8037AF94 00376BF4 80 63 00 30 */ lwz r3, 0x30(r3)
-/* 8037AF98 00376BF8 4E 80 00 20 */ blr
-
-.global func_8037AF9C
-func_8037AF9C:
-/* 8037AF9C 00376BFC 88 63 00 2C */ lbz r3, 0x2c(r3)
-/* 8037AFA0 00376C00 4E 80 00 20 */ blr
-
-.global func_8037AFA4
-func_8037AFA4:
-/* 8037AFA4 00376C04 54 80 10 3A */ slwi r0, r4, 2
-/* 8037AFA8 00376C08 7C 63 02 14 */ add r3, r3, r0
-/* 8037AFAC 00376C0C C0 23 00 38 */ lfs f1, 0x38(r3)
-/* 8037AFB0 00376C10 4E 80 00 20 */ blr
-
-.global func_8037AFB4
-func_8037AFB4:
-/* 8037AFB4 00376C14 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037AFB8 00376C18 7C 08 02 A6 */ mflr r0
-/* 8037AFBC 00376C1C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037AFC0 00376C20 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037AFC4 00376C24 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037AFC8 00376C28 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037AFCC 00376C2C 7C 9E 23 78 */ mr r30, r4
-/* 8037AFD0 00376C30 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037AFD4 00376C34 7C 7D 1B 78 */ mr r29, r3
-/* 8037AFD8 00376C38 7F E3 FB 78 */ mr r3, r31
-/* 8037AFDC 00376C3C 4B EF 49 6D */ bl func_8026F948
-/* 8037AFE0 00376C40 7F A3 EB 78 */ mr r3, r29
-/* 8037AFE4 00376C44 38 9E 00 C0 */ addi r4, r30, 0xc0
-/* 8037AFE8 00376C48 4B FE 7C 8D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFPQ34nw4r2ut12LinkListNode
-/* 8037AFEC 00376C4C 38 00 00 00 */ li r0, 0
-/* 8037AFF0 00376C50 7F E3 FB 78 */ mr r3, r31
-/* 8037AFF4 00376C54 90 1E 00 10 */ stw r0, 0x10(r30)
-/* 8037AFF8 00376C58 4B EF 4A 2D */ bl func_8026FA24
-/* 8037AFFC 00376C5C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037B000 00376C60 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037B004 00376C64 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037B008 00376C68 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037B00C 00376C6C 7C 08 03 A6 */ mtlr r0
-/* 8037B010 00376C70 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037B014 00376C74 4E 80 00 20 */ blr
-
-.global func_8037B018
-func_8037B018:
-/* 8037B018 00376C78 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037B01C 00376C7C 7C 08 02 A6 */ mflr r0
-/* 8037B020 00376C80 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037B024 00376C84 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037B028 00376C88 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037B02C 00376C8C 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037B030 00376C90 7C 9E 23 78 */ mr r30, r4
-/* 8037B034 00376C94 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037B038 00376C98 7C 7D 1B 78 */ mr r29, r3
-/* 8037B03C 00376C9C 7F E3 FB 78 */ mr r3, r31
-/* 8037B040 00376CA0 4B EF 49 09 */ bl func_8026F948
-/* 8037B044 00376CA4 80 7D 00 10 */ lwz r3, 0x10(r29)
-/* 8037B048 00376CA8 38 1D 00 10 */ addi r0, r29, 0x10
-/* 8037B04C 00376CAC 48 00 00 58 */ b lbl_8037B0A4
-lbl_8037B050:
-/* 8037B050 00376CB0 88 A3 FF AC */ lbz r5, -0x54(r3)
-/* 8037B054 00376CB4 80 83 FF 78 */ lwz r4, -0x88(r3)
-/* 8037B058 00376CB8 7C A5 22 14 */ add r5, r5, r4
-/* 8037B05C 00376CBC 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B060 00376CC0 40 81 00 0C */ ble lbl_8037B06C
-/* 8037B064 00376CC4 38 C0 00 7F */ li r6, 0x7f
-/* 8037B068 00376CC8 48 00 00 0C */ b lbl_8037B074
-lbl_8037B06C:
-/* 8037B06C 00376CCC 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B070 00376CD0 7C A6 20 78 */ andc r6, r5, r4
-lbl_8037B074:
-/* 8037B074 00376CD4 88 BE 00 74 */ lbz r5, 0x74(r30)
-/* 8037B078 00376CD8 80 9E 00 40 */ lwz r4, 0x40(r30)
-/* 8037B07C 00376CDC 7C A5 22 14 */ add r5, r5, r4
-/* 8037B080 00376CE0 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B084 00376CE4 40 81 00 0C */ ble lbl_8037B090
-/* 8037B088 00376CE8 38 80 00 7F */ li r4, 0x7f
-/* 8037B08C 00376CEC 48 00 00 0C */ b lbl_8037B098
-lbl_8037B090:
-/* 8037B090 00376CF0 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B094 00376CF4 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037B098:
-/* 8037B098 00376CF8 7C 04 30 00 */ cmpw r4, r6
-/* 8037B09C 00376CFC 41 80 00 10 */ blt lbl_8037B0AC
-/* 8037B0A0 00376D00 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037B0A4:
-/* 8037B0A4 00376D04 7C 03 00 40 */ cmplw r3, r0
-/* 8037B0A8 00376D08 40 82 FF A8 */ bne lbl_8037B050
-lbl_8037B0AC:
-/* 8037B0AC 00376D0C 90 61 00 08 */ stw r3, 8(r1)
-/* 8037B0B0 00376D10 38 7D 00 0C */ addi r3, r29, 0xc
-/* 8037B0B4 00376D14 38 81 00 08 */ addi r4, r1, 8
-/* 8037B0B8 00376D18 38 BE 00 C8 */ addi r5, r30, 0xc8
-/* 8037B0BC 00376D1C 4B FE 7B 8D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B0C0 00376D20 7F E3 FB 78 */ mr r3, r31
-/* 8037B0C4 00376D24 4B EF 49 61 */ bl func_8026FA24
-/* 8037B0C8 00376D28 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037B0CC 00376D2C 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037B0D0 00376D30 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037B0D4 00376D34 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037B0D8 00376D38 7C 08 03 A6 */ mtlr r0
-/* 8037B0DC 00376D3C 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037B0E0 00376D40 4E 80 00 20 */ blr
-
-.global func_8037B0E4
-func_8037B0E4:
-/* 8037B0E4 00376D44 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037B0E8 00376D48 7C 08 02 A6 */ mflr r0
-/* 8037B0EC 00376D4C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037B0F0 00376D50 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037B0F4 00376D54 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037B0F8 00376D58 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037B0FC 00376D5C 7C 9E 23 78 */ mr r30, r4
-/* 8037B100 00376D60 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037B104 00376D64 7C 7D 1B 78 */ mr r29, r3
-/* 8037B108 00376D68 7F E3 FB 78 */ mr r3, r31
-/* 8037B10C 00376D6C 4B EF 48 3D */ bl func_8026F948
-/* 8037B110 00376D70 38 7D 00 0C */ addi r3, r29, 0xc
-/* 8037B114 00376D74 38 9E 00 C8 */ addi r4, r30, 0xc8
-/* 8037B118 00376D78 4B FE 7B 5D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFPQ34nw4r2ut12LinkListNode
-/* 8037B11C 00376D7C 7F E3 FB 78 */ mr r3, r31
-/* 8037B120 00376D80 4B EF 49 05 */ bl func_8026FA24
-/* 8037B124 00376D84 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037B128 00376D88 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037B12C 00376D8C 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037B130 00376D90 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037B134 00376D94 7C 08 03 A6 */ mtlr r0
-/* 8037B138 00376D98 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037B13C 00376D9C 4E 80 00 20 */ blr
-
-.global func_8037B140
-func_8037B140:
-/* 8037B140 00376DA0 94 21 F9 D0 */ stwu r1, -0x630(r1)
-/* 8037B144 00376DA4 7C 08 02 A6 */ mflr r0
-/* 8037B148 00376DA8 90 01 06 34 */ stw r0, 0x634(r1)
-/* 8037B14C 00376DAC 39 61 06 30 */ addi r11, r1, 0x630
-/* 8037B150 00376DB0 4B E4 BF D5 */ bl _savegpr_26
-/* 8037B154 00376DB4 3B C3 00 48 */ addi r30, r3, 0x48
-/* 8037B158 00376DB8 7C 7A 1B 78 */ mr r26, r3
-/* 8037B15C 00376DBC 7F C3 F3 78 */ mr r3, r30
-/* 8037B160 00376DC0 4B EF 47 E9 */ bl func_8026F948
-/* 8037B164 00376DC4 3C 80 80 38 */ lis r4, lbl_8037ACA0@ha
-/* 8037B168 00376DC8 3C A0 80 38 */ lis r5, lbl_8037ACC0@ha
-/* 8037B16C 00376DCC 38 61 00 18 */ addi r3, r1, 0x18
-/* 8037B170 00376DD0 38 C0 00 0C */ li r6, 0xc
-/* 8037B174 00376DD4 38 84 AC A0 */ addi r4, r4, lbl_8037ACA0@l
-/* 8037B178 00376DD8 38 A5 AC C0 */ addi r5, r5, lbl_8037ACC0@l
-/* 8037B17C 00376DDC 38 E0 00 80 */ li r7, 0x80
-/* 8037B180 00376DE0 4B E4 BC E9 */ bl __construct_array
-/* 8037B184 00376DE4 48 00 00 5C */ b lbl_8037B1E0
-lbl_8037B188:
-/* 8037B188 00376DE8 83 BA 00 10 */ lwz r29, 0x10(r26)
-/* 8037B18C 00376DEC 38 7A 00 0C */ addi r3, r26, 0xc
-/* 8037B190 00376DF0 38 81 00 14 */ addi r4, r1, 0x14
-/* 8037B194 00376DF4 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037B198 00376DF8 4B FE 7A 25 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
-/* 8037B19C 00376DFC 88 7D FF AC */ lbz r3, -0x54(r29)
-/* 8037B1A0 00376E00 80 1D FF 78 */ lwz r0, -0x88(r29)
-/* 8037B1A4 00376E04 7C 63 02 14 */ add r3, r3, r0
-/* 8037B1A8 00376E08 2C 03 00 7F */ cmpwi r3, 0x7f
-/* 8037B1AC 00376E0C 40 81 00 0C */ ble lbl_8037B1B8
-/* 8037B1B0 00376E10 38 00 00 7F */ li r0, 0x7f
-/* 8037B1B4 00376E14 48 00 00 0C */ b lbl_8037B1C0
-lbl_8037B1B8:
-/* 8037B1B8 00376E18 7C 60 FE 70 */ srawi r0, r3, 0x1f
-/* 8037B1BC 00376E1C 7C 60 00 78 */ andc r0, r3, r0
-lbl_8037B1C0:
-/* 8037B1C0 00376E20 1C 00 00 0C */ mulli r0, r0, 0xc
-/* 8037B1C4 00376E24 38 61 00 18 */ addi r3, r1, 0x18
-/* 8037B1C8 00376E28 7F A5 EB 78 */ mr r5, r29
-/* 8037B1CC 00376E2C 38 81 00 10 */ addi r4, r1, 0x10
-/* 8037B1D0 00376E30 7C 63 02 14 */ add r3, r3, r0
-/* 8037B1D4 00376E34 38 03 00 04 */ addi r0, r3, 4
-/* 8037B1D8 00376E38 90 01 00 10 */ stw r0, 0x10(r1)
-/* 8037B1DC 00376E3C 4B FE 7A 6D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-lbl_8037B1E0:
-/* 8037B1E0 00376E40 80 1A 00 0C */ lwz r0, 0xc(r26)
-/* 8037B1E4 00376E44 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B1E8 00376E48 40 82 FF A0 */ bne lbl_8037B188
-/* 8037B1EC 00376E4C 3B A1 00 18 */ addi r29, r1, 0x18
-/* 8037B1F0 00376E50 3B FA 00 10 */ addi r31, r26, 0x10
-/* 8037B1F4 00376E54 3B 60 00 00 */ li r27, 0
-lbl_8037B1F8:
-/* 8037B1F8 00376E58 80 1D 00 00 */ lwz r0, 0(r29)
-/* 8037B1FC 00376E5C 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B200 00376E60 41 82 00 3C */ beq lbl_8037B23C
-/* 8037B204 00376E64 48 00 00 2C */ b lbl_8037B230
-lbl_8037B208:
-/* 8037B208 00376E68 83 9D 00 04 */ lwz r28, 4(r29)
-/* 8037B20C 00376E6C 7F A3 EB 78 */ mr r3, r29
-/* 8037B210 00376E70 38 81 00 0C */ addi r4, r1, 0xc
-/* 8037B214 00376E74 93 81 00 0C */ stw r28, 0xc(r1)
-/* 8037B218 00376E78 4B FE 79 A5 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
-/* 8037B21C 00376E7C 93 E1 00 08 */ stw r31, 8(r1)
-/* 8037B220 00376E80 7F 85 E3 78 */ mr r5, r28
-/* 8037B224 00376E84 38 7A 00 0C */ addi r3, r26, 0xc
-/* 8037B228 00376E88 38 81 00 08 */ addi r4, r1, 8
-/* 8037B22C 00376E8C 4B FE 7A 1D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-lbl_8037B230:
-/* 8037B230 00376E90 80 1D 00 00 */ lwz r0, 0(r29)
-/* 8037B234 00376E94 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B238 00376E98 40 82 FF D0 */ bne lbl_8037B208
-lbl_8037B23C:
-/* 8037B23C 00376E9C 3B 7B 00 01 */ addi r27, r27, 1
-/* 8037B240 00376EA0 3B BD 00 0C */ addi r29, r29, 0xc
-/* 8037B244 00376EA4 2C 1B 00 80 */ cmpwi r27, 0x80
-/* 8037B248 00376EA8 41 80 FF B0 */ blt lbl_8037B1F8
-/* 8037B24C 00376EAC 3C 80 80 38 */ lis r4, lbl_8037ACC0@ha
-/* 8037B250 00376EB0 38 61 00 18 */ addi r3, r1, 0x18
-/* 8037B254 00376EB4 38 84 AC C0 */ addi r4, r4, lbl_8037ACC0@l
-/* 8037B258 00376EB8 38 A0 00 0C */ li r5, 0xc
-/* 8037B25C 00376EBC 38 C0 00 80 */ li r6, 0x80
-/* 8037B260 00376EC0 4B E4 BD 01 */ bl __destroy_arr
-/* 8037B264 00376EC4 7F C3 F3 78 */ mr r3, r30
-/* 8037B268 00376EC8 4B EF 47 BD */ bl func_8026FA24
-/* 8037B26C 00376ECC 39 61 06 30 */ addi r11, r1, 0x630
-/* 8037B270 00376ED0 4B E4 BF 01 */ bl func_801C7170
-/* 8037B274 00376ED4 80 01 06 34 */ lwz r0, 0x634(r1)
-/* 8037B278 00376ED8 7C 08 03 A6 */ mtlr r0
-/* 8037B27C 00376EDC 38 21 06 30 */ addi r1, r1, 0x630
-/* 8037B280 00376EE0 4E 80 00 20 */ blr
-
-.global func_8037B284
-func_8037B284:
-/* 8037B284 00376EE4 94 21 FF A0 */ stwu r1, -0x60(r1)
-/* 8037B288 00376EE8 7C 08 02 A6 */ mflr r0
-/* 8037B28C 00376EEC 90 01 00 64 */ stw r0, 0x64(r1)
-/* 8037B290 00376EF0 39 61 00 60 */ addi r11, r1, 0x60
-/* 8037B294 00376EF4 4B E4 BE 81 */ bl _savegpr_22
-/* 8037B298 00376EF8 3B C3 00 48 */ addi r30, r3, 0x48
-/* 8037B29C 00376EFC 7C 76 1B 78 */ mr r22, r3
-/* 8037B2A0 00376F00 7C 97 23 78 */ mr r23, r4
-/* 8037B2A4 00376F04 7C BC 2B 78 */ mr r28, r5
-/* 8037B2A8 00376F08 7C D8 33 78 */ mr r24, r6
-/* 8037B2AC 00376F0C 7C F9 3B 78 */ mr r25, r7
-/* 8037B2B0 00376F10 7D 1B 43 78 */ mr r27, r8
-/* 8037B2B4 00376F14 7D 3A 4B 78 */ mr r26, r9
-/* 8037B2B8 00376F18 7F C3 F3 78 */ mr r3, r30
-/* 8037B2BC 00376F1C 4B EF 46 8D */ bl func_8026F948
-/* 8037B2C0 00376F20 2C 1A 00 00 */ cmpwi r26, 0
-/* 8037B2C4 00376F24 40 82 00 14 */ bne lbl_8037B2D8
-/* 8037B2C8 00376F28 7F C3 F3 78 */ mr r3, r30
-/* 8037B2CC 00376F2C 4B EF 47 59 */ bl func_8026FA24
-/* 8037B2D0 00376F30 38 60 00 00 */ li r3, 0
-/* 8037B2D4 00376F34 48 00 03 5C */ b lbl_8037B630
-lbl_8037B2D8:
-/* 8037B2D8 00376F38 2C 18 00 00 */ cmpwi r24, 0
-/* 8037B2DC 00376F3C 3B A0 00 00 */ li r29, 0
-/* 8037B2E0 00376F40 41 82 00 30 */ beq lbl_8037B310
-/* 8037B2E4 00376F44 80 78 00 00 */ lwz r3, 0(r24)
-/* 8037B2E8 00376F48 7F 65 DB 78 */ mr r5, r27
-/* 8037B2EC 00376F4C 38 81 00 18 */ addi r4, r1, 0x18
-/* 8037B2F0 00376F50 80 F8 00 0C */ lwz r7, 0xc(r24)
-/* 8037B2F4 00376F54 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037B2F8 00376F58 38 C0 00 00 */ li r6, 0
-/* 8037B2FC 00376F5C 39 00 00 08 */ li r8, 8
-/* 8037B300 00376F60 81 8C 00 08 */ lwz r12, 8(r12)
-/* 8037B304 00376F64 7D 89 03 A6 */ mtctr r12
-/* 8037B308 00376F68 4E 80 04 21 */ bctrl
-/* 8037B30C 00376F6C 83 A1 00 30 */ lwz r29, 0x30(r1)
-lbl_8037B310:
-/* 8037B310 00376F70 7C 7C EA 14 */ add r3, r28, r29
-/* 8037B314 00376F74 2C 03 00 7F */ cmpwi r3, 0x7f
-/* 8037B318 00376F78 40 81 00 0C */ ble lbl_8037B324
-/* 8037B31C 00376F7C 3B 80 00 7F */ li r28, 0x7f
-/* 8037B320 00376F80 48 00 00 0C */ b lbl_8037B32C
-lbl_8037B324:
-/* 8037B324 00376F84 7C 60 FE 70 */ srawi r0, r3, 0x1f
-/* 8037B328 00376F88 7C 7C 00 78 */ andc r28, r3, r0
-lbl_8037B32C:
-/* 8037B32C 00376F8C 7E C3 B3 78 */ mr r3, r22
-/* 8037B330 00376F90 7F 84 E3 78 */ mr r4, r28
-/* 8037B334 00376F94 7F 25 CB 78 */ mr r5, r25
-/* 8037B338 00376F98 48 00 0B 41 */ bl func_8037BE78
-/* 8037B33C 00376F9C 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B340 00376FA0 40 82 00 14 */ bne lbl_8037B354
-/* 8037B344 00376FA4 7F C3 F3 78 */ mr r3, r30
-/* 8037B348 00376FA8 4B EF 46 DD */ bl func_8026FA24
-/* 8037B34C 00376FAC 38 60 00 00 */ li r3, 0
-/* 8037B350 00376FB0 48 00 02 E0 */ b lbl_8037B630
-lbl_8037B354:
-/* 8037B354 00376FB4 3B FA 00 10 */ addi r31, r26, 0x10
-/* 8037B358 00376FB8 7F E3 FB 78 */ mr r3, r31
-/* 8037B35C 00376FBC 4B EF 45 ED */ bl func_8026F948
-/* 8037B360 00376FC0 7F 43 D3 78 */ mr r3, r26
-/* 8037B364 00376FC4 4B FF 67 F5 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
-/* 8037B368 00376FC8 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B36C 00376FCC 41 82 00 1C */ beq lbl_8037B388
-/* 8037B370 00376FD0 7C 7B 1B 78 */ mr r27, r3
-/* 8037B374 00376FD4 41 82 00 B4 */ beq lbl_8037B428
-/* 8037B378 00376FD8 7F 44 D3 78 */ mr r4, r26
-/* 8037B37C 00376FDC 4B FF 98 B5 */ bl __ct__Q44nw4r3snd6detail8SeqSoundFPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1
-/* 8037B380 00376FE0 7C 7B 1B 78 */ mr r27, r3
-/* 8037B384 00376FE4 48 00 00 A4 */ b lbl_8037B428
-lbl_8037B388:
-/* 8037B388 00376FE8 80 1A 00 04 */ lwz r0, 4(r26)
-/* 8037B38C 00376FEC 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B390 00376FF0 40 82 00 0C */ bne lbl_8037B39C
-/* 8037B394 00376FF4 38 60 00 00 */ li r3, 0
-/* 8037B398 00376FF8 48 00 00 0C */ b lbl_8037B3A4
-lbl_8037B39C:
-/* 8037B39C 00376FFC 80 7A 00 08 */ lwz r3, 8(r26)
-/* 8037B3A0 00377000 38 63 FF 48 */ addi r3, r3, -184
-lbl_8037B3A4:
-/* 8037B3A4 00377004 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B3A8 00377008 40 82 00 14 */ bne lbl_8037B3BC
-/* 8037B3AC 0037700C 7F E3 FB 78 */ mr r3, r31
-/* 8037B3B0 00377010 4B EF 46 75 */ bl func_8026FA24
-/* 8037B3B4 00377014 3B 60 00 00 */ li r27, 0
-/* 8037B3B8 00377018 48 00 00 D0 */ b lbl_8037B488
-lbl_8037B3BC:
-/* 8037B3BC 0037701C 88 83 00 74 */ lbz r4, 0x74(r3)
-/* 8037B3C0 00377020 80 03 00 40 */ lwz r0, 0x40(r3)
-/* 8037B3C4 00377024 7C 84 02 14 */ add r4, r4, r0
-/* 8037B3C8 00377028 2C 04 00 7F */ cmpwi r4, 0x7f
-/* 8037B3CC 0037702C 40 81 00 0C */ ble lbl_8037B3D8
-/* 8037B3D0 00377030 38 00 00 7F */ li r0, 0x7f
-/* 8037B3D4 00377034 48 00 00 0C */ b lbl_8037B3E0
-lbl_8037B3D8:
-/* 8037B3D8 00377038 7C 80 FE 70 */ srawi r0, r4, 0x1f
-/* 8037B3DC 0037703C 7C 80 00 78 */ andc r0, r4, r0
-lbl_8037B3E0:
-/* 8037B3E0 00377040 7C 1C 00 00 */ cmpw r28, r0
-/* 8037B3E4 00377044 40 80 00 14 */ bge lbl_8037B3F8
-/* 8037B3E8 00377048 7F E3 FB 78 */ mr r3, r31
-/* 8037B3EC 0037704C 4B EF 46 39 */ bl func_8026FA24
-/* 8037B3F0 00377050 3B 60 00 00 */ li r27, 0
-/* 8037B3F4 00377054 48 00 00 94 */ b lbl_8037B488
-lbl_8037B3F8:
-/* 8037B3F8 00377058 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037B3FC 0037705C 38 80 00 00 */ li r4, 0
-/* 8037B400 00377060 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 8037B404 00377064 7D 89 03 A6 */ mtctr r12
-/* 8037B408 00377068 4E 80 04 21 */ bctrl
-/* 8037B40C 0037706C 7F 43 D3 78 */ mr r3, r26
-/* 8037B410 00377070 4B FF 67 49 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
-/* 8037B414 00377074 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B418 00377078 41 82 00 0C */ beq lbl_8037B424
-/* 8037B41C 0037707C 7F 44 D3 78 */ mr r4, r26
-/* 8037B420 00377080 4B FF 98 11 */ bl __ct__Q44nw4r3snd6detail8SeqSoundFPQ44nw4r3snd6detail49SoundInstanceManager$0Q44nw4r3snd6detail8SeqSound$1
-lbl_8037B424:
-/* 8037B424 00377084 7C 7B 1B 78 */ mr r27, r3
-lbl_8037B428:
-/* 8037B428 00377088 80 7A 00 08 */ lwz r3, 8(r26)
-/* 8037B42C 0037708C 38 1A 00 08 */ addi r0, r26, 8
-/* 8037B430 00377090 48 00 00 34 */ b lbl_8037B464
-lbl_8037B434:
-/* 8037B434 00377094 88 A3 FF BC */ lbz r5, -0x44(r3)
-/* 8037B438 00377098 80 83 FF 88 */ lwz r4, -0x78(r3)
-/* 8037B43C 0037709C 7C A5 22 14 */ add r5, r5, r4
-/* 8037B440 003770A0 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B444 003770A4 40 81 00 0C */ ble lbl_8037B450
-/* 8037B448 003770A8 38 80 00 7F */ li r4, 0x7f
-/* 8037B44C 003770AC 48 00 00 0C */ b lbl_8037B458
-lbl_8037B450:
-/* 8037B450 003770B0 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B454 003770B4 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037B458:
-/* 8037B458 003770B8 7C 1C 20 00 */ cmpw r28, r4
-/* 8037B45C 003770BC 41 80 00 10 */ blt lbl_8037B46C
-/* 8037B460 003770C0 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037B464:
-/* 8037B464 003770C4 7C 03 00 40 */ cmplw r3, r0
-/* 8037B468 003770C8 40 82 FF CC */ bne lbl_8037B434
-lbl_8037B46C:
-/* 8037B46C 003770CC 90 61 00 14 */ stw r3, 0x14(r1)
-/* 8037B470 003770D0 38 7A 00 04 */ addi r3, r26, 4
-/* 8037B474 003770D4 38 81 00 14 */ addi r4, r1, 0x14
-/* 8037B478 003770D8 38 BB 00 B8 */ addi r5, r27, 0xb8
-/* 8037B47C 003770DC 4B FE 77 CD */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B480 003770E0 7F E3 FB 78 */ mr r3, r31
-/* 8037B484 003770E4 4B EF 45 A1 */ bl func_8026FA24
-lbl_8037B488:
-/* 8037B488 003770E8 2C 1B 00 00 */ cmpwi r27, 0
-/* 8037B48C 003770EC 40 82 00 14 */ bne lbl_8037B4A0
-/* 8037B490 003770F0 7F C3 F3 78 */ mr r3, r30
-/* 8037B494 003770F4 4B EF 45 91 */ bl func_8026FA24
-/* 8037B498 003770F8 38 60 00 00 */ li r3, 0
-/* 8037B49C 003770FC 48 00 01 94 */ b lbl_8037B630
-lbl_8037B4A0:
-/* 8037B4A0 00377100 3B 96 00 48 */ addi r28, r22, 0x48
-/* 8037B4A4 00377104 7F 83 E3 78 */ mr r3, r28
-/* 8037B4A8 00377108 4B EF 44 A1 */ bl func_8026F948
-/* 8037B4AC 0037710C 80 16 00 18 */ lwz r0, 0x18(r22)
-/* 8037B4B0 00377110 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B4B4 00377114 40 82 00 10 */ bne lbl_8037B4C4
-/* 8037B4B8 00377118 7F 83 E3 78 */ mr r3, r28
-/* 8037B4BC 0037711C 4B EF 45 69 */ bl func_8026FA24
-/* 8037B4C0 00377120 48 00 00 48 */ b lbl_8037B508
-lbl_8037B4C4:
-/* 8037B4C4 00377124 80 B6 00 1C */ lwz r5, 0x1c(r22)
-/* 8037B4C8 00377128 38 76 00 18 */ addi r3, r22, 0x18
-/* 8037B4CC 0037712C 38 81 00 10 */ addi r4, r1, 0x10
-/* 8037B4D0 00377130 90 A1 00 10 */ stw r5, 0x10(r1)
-/* 8037B4D4 00377134 3B E5 FF D4 */ addi r31, r5, -44
-/* 8037B4D8 00377138 4B FE 76 E5 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
-/* 8037B4DC 0037713C 93 7F 00 34 */ stw r27, 0x34(r31)
-/* 8037B4E0 00377140 3B 5F 00 04 */ addi r26, r31, 4
-/* 8037B4E4 00377144 7F 43 D3 78 */ mr r3, r26
-/* 8037B4E8 00377148 93 FB 00 04 */ stw r31, 4(r27)
-/* 8037B4EC 0037714C 4B EF 44 5D */ bl func_8026F948
-/* 8037B4F0 00377150 38 7F 00 1C */ addi r3, r31, 0x1c
-/* 8037B4F4 00377154 4B FF 4F 2D */ bl Clear__Q44nw4r3snd6detail9FrameHeapFv
-/* 8037B4F8 00377158 7F 43 D3 78 */ mr r3, r26
-/* 8037B4FC 0037715C 4B EF 45 29 */ bl func_8026FA24
-/* 8037B500 00377160 7F 83 E3 78 */ mr r3, r28
-/* 8037B504 00377164 4B EF 45 21 */ bl func_8026FA24
-lbl_8037B508:
-/* 8037B508 00377168 2C 18 00 00 */ cmpwi r24, 0
-/* 8037B50C 0037716C 41 82 00 50 */ beq lbl_8037B55C
-/* 8037B510 00377170 41 82 00 4C */ beq lbl_8037B55C
-/* 8037B514 00377174 80 78 00 08 */ lwz r3, 8(r24)
-/* 8037B518 00377178 80 98 00 10 */ lwz r4, 0x10(r24)
-/* 8037B51C 0037717C 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037B520 00377180 81 8C 00 08 */ lwz r12, 8(r12)
-/* 8037B524 00377184 7D 89 03 A6 */ mtctr r12
-/* 8037B528 00377188 4E 80 04 21 */ bctrl
-/* 8037B52C 0037718C 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B530 00377190 7C 7A 1B 78 */ mr r26, r3
-/* 8037B534 00377194 41 82 00 28 */ beq lbl_8037B55C
-/* 8037B538 00377198 80 98 00 0C */ lwz r4, 0xc(r24)
-/* 8037B53C 0037719C 80 B8 00 10 */ lwz r5, 0x10(r24)
-/* 8037B540 003771A0 4B C8 8A C1 */ bl memcpy
-/* 8037B544 003771A4 80 98 00 00 */ lwz r4, 0(r24)
-/* 8037B548 003771A8 7F 63 DB 78 */ mr r3, r27
-/* 8037B54C 003771AC 80 B8 00 04 */ lwz r5, 4(r24)
-/* 8037B550 003771B0 7F 47 D3 78 */ mr r7, r26
-/* 8037B554 003771B4 80 D8 00 08 */ lwz r6, 8(r24)
-/* 8037B558 003771B8 4B FF 2B 61 */ bl SetAmbientParamCallback__Q44nw4r3snd6detail10BasicSoundFPQ54nw4r3snd6detail10BasicSound26AmbientParamUpdateCallbackPQ54nw4r3snd6detail10BasicSound24AmbientArgUpdateCallbackPQ54nw4r3snd6detail10BasicSound27AmbientArgAllocaterCallbackPv
-lbl_8037B55C:
-/* 8037B55C 003771BC 9A FB 00 74 */ stb r23, 0x74(r27)
-/* 8037B560 003771C0 38 16 00 04 */ addi r0, r22, 4
-/* 8037B564 003771C4 7E C3 B3 78 */ mr r3, r22
-/* 8037B568 003771C8 38 81 00 0C */ addi r4, r1, 0xc
-/* 8037B56C 003771CC 93 BB 00 40 */ stw r29, 0x40(r27)
-/* 8037B570 003771D0 38 BB 00 C0 */ addi r5, r27, 0xc0
-/* 8037B574 003771D4 90 01 00 0C */ stw r0, 0xc(r1)
-/* 8037B578 003771D8 4B FE 76 D1 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B57C 003771DC 2C 19 00 00 */ cmpwi r25, 0
-/* 8037B580 003771E0 92 DB 00 10 */ stw r22, 0x10(r27)
-/* 8037B584 003771E4 41 82 00 10 */ beq lbl_8037B594
-/* 8037B588 003771E8 7F 23 CB 78 */ mr r3, r25
-/* 8037B58C 003771EC 7F 64 DB 78 */ mr r4, r27
-/* 8037B590 003771F0 4B FF 49 ED */ bl InsertSoundList__Q44nw4r3snd6detail19ExternalSoundPlayerFPQ44nw4r3snd6detail10BasicSound
-lbl_8037B594:
-/* 8037B594 003771F4 3A F6 00 48 */ addi r23, r22, 0x48
-/* 8037B598 003771F8 7E E3 BB 78 */ mr r3, r23
-/* 8037B59C 003771FC 4B EF 43 AD */ bl func_8026F948
-/* 8037B5A0 00377200 80 76 00 10 */ lwz r3, 0x10(r22)
-/* 8037B5A4 00377204 38 16 00 10 */ addi r0, r22, 0x10
-/* 8037B5A8 00377208 48 00 00 58 */ b lbl_8037B600
-lbl_8037B5AC:
-/* 8037B5AC 0037720C 88 A3 FF AC */ lbz r5, -0x54(r3)
-/* 8037B5B0 00377210 80 83 FF 78 */ lwz r4, -0x88(r3)
-/* 8037B5B4 00377214 7C A5 22 14 */ add r5, r5, r4
-/* 8037B5B8 00377218 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B5BC 0037721C 40 81 00 0C */ ble lbl_8037B5C8
-/* 8037B5C0 00377220 38 C0 00 7F */ li r6, 0x7f
-/* 8037B5C4 00377224 48 00 00 0C */ b lbl_8037B5D0
-lbl_8037B5C8:
-/* 8037B5C8 00377228 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B5CC 0037722C 7C A6 20 78 */ andc r6, r5, r4
-lbl_8037B5D0:
-/* 8037B5D0 00377230 88 BB 00 74 */ lbz r5, 0x74(r27)
-/* 8037B5D4 00377234 80 9B 00 40 */ lwz r4, 0x40(r27)
-/* 8037B5D8 00377238 7C A5 22 14 */ add r5, r5, r4
-/* 8037B5DC 0037723C 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B5E0 00377240 40 81 00 0C */ ble lbl_8037B5EC
-/* 8037B5E4 00377244 38 80 00 7F */ li r4, 0x7f
-/* 8037B5E8 00377248 48 00 00 0C */ b lbl_8037B5F4
-lbl_8037B5EC:
-/* 8037B5EC 0037724C 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B5F0 00377250 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037B5F4:
-/* 8037B5F4 00377254 7C 04 30 00 */ cmpw r4, r6
-/* 8037B5F8 00377258 41 80 00 10 */ blt lbl_8037B608
-/* 8037B5FC 0037725C 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037B600:
-/* 8037B600 00377260 7C 03 00 40 */ cmplw r3, r0
-/* 8037B604 00377264 40 82 FF A8 */ bne lbl_8037B5AC
-lbl_8037B608:
-/* 8037B608 00377268 90 61 00 08 */ stw r3, 8(r1)
-/* 8037B60C 0037726C 38 76 00 0C */ addi r3, r22, 0xc
-/* 8037B610 00377270 38 81 00 08 */ addi r4, r1, 8
-/* 8037B614 00377274 38 BB 00 C8 */ addi r5, r27, 0xc8
-/* 8037B618 00377278 4B FE 76 31 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B61C 0037727C 7E E3 BB 78 */ mr r3, r23
-/* 8037B620 00377280 4B EF 44 05 */ bl func_8026FA24
-/* 8037B624 00377284 7F C3 F3 78 */ mr r3, r30
-/* 8037B628 00377288 4B EF 43 FD */ bl func_8026FA24
-/* 8037B62C 0037728C 7F 63 DB 78 */ mr r3, r27
-lbl_8037B630:
-/* 8037B630 00377290 39 61 00 60 */ addi r11, r1, 0x60
-/* 8037B634 00377294 4B E4 BB 2D */ bl func_801C7160
-/* 8037B638 00377298 80 01 00 64 */ lwz r0, 0x64(r1)
-/* 8037B63C 0037729C 7C 08 03 A6 */ mtlr r0
-/* 8037B640 003772A0 38 21 00 60 */ addi r1, r1, 0x60
-/* 8037B644 003772A4 4E 80 00 20 */ blr
-
-.global func_8037B648
-func_8037B648:
-/* 8037B648 003772A8 94 21 FF A0 */ stwu r1, -0x60(r1)
-/* 8037B64C 003772AC 7C 08 02 A6 */ mflr r0
-/* 8037B650 003772B0 90 01 00 64 */ stw r0, 0x64(r1)
-/* 8037B654 003772B4 39 61 00 60 */ addi r11, r1, 0x60
-/* 8037B658 003772B8 4B E4 BA BD */ bl _savegpr_22
-/* 8037B65C 003772BC 3B C3 00 48 */ addi r30, r3, 0x48
-/* 8037B660 003772C0 7C 76 1B 78 */ mr r22, r3
-/* 8037B664 003772C4 7C 97 23 78 */ mr r23, r4
-/* 8037B668 003772C8 7C BC 2B 78 */ mr r28, r5
-/* 8037B66C 003772CC 7C D8 33 78 */ mr r24, r6
-/* 8037B670 003772D0 7C F9 3B 78 */ mr r25, r7
-/* 8037B674 003772D4 7D 1B 43 78 */ mr r27, r8
-/* 8037B678 003772D8 7D 3A 4B 78 */ mr r26, r9
-/* 8037B67C 003772DC 7F C3 F3 78 */ mr r3, r30
-/* 8037B680 003772E0 4B EF 42 C9 */ bl func_8026F948
-/* 8037B684 003772E4 2C 1A 00 00 */ cmpwi r26, 0
-/* 8037B688 003772E8 40 82 00 14 */ bne lbl_8037B69C
-/* 8037B68C 003772EC 7F C3 F3 78 */ mr r3, r30
-/* 8037B690 003772F0 4B EF 43 95 */ bl func_8026FA24
-/* 8037B694 003772F4 38 60 00 00 */ li r3, 0
-/* 8037B698 003772F8 48 00 03 5C */ b lbl_8037B9F4
-lbl_8037B69C:
-/* 8037B69C 003772FC 2C 18 00 00 */ cmpwi r24, 0
-/* 8037B6A0 00377300 3B A0 00 00 */ li r29, 0
-/* 8037B6A4 00377304 41 82 00 30 */ beq lbl_8037B6D4
-/* 8037B6A8 00377308 80 78 00 00 */ lwz r3, 0(r24)
-/* 8037B6AC 0037730C 7F 65 DB 78 */ mr r5, r27
-/* 8037B6B0 00377310 38 81 00 18 */ addi r4, r1, 0x18
-/* 8037B6B4 00377314 80 F8 00 0C */ lwz r7, 0xc(r24)
-/* 8037B6B8 00377318 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037B6BC 0037731C 38 C0 00 00 */ li r6, 0
-/* 8037B6C0 00377320 39 00 00 08 */ li r8, 8
-/* 8037B6C4 00377324 81 8C 00 08 */ lwz r12, 8(r12)
-/* 8037B6C8 00377328 7D 89 03 A6 */ mtctr r12
-/* 8037B6CC 0037732C 4E 80 04 21 */ bctrl
-/* 8037B6D0 00377330 83 A1 00 30 */ lwz r29, 0x30(r1)
-lbl_8037B6D4:
-/* 8037B6D4 00377334 7C 7C EA 14 */ add r3, r28, r29
-/* 8037B6D8 00377338 2C 03 00 7F */ cmpwi r3, 0x7f
-/* 8037B6DC 0037733C 40 81 00 0C */ ble lbl_8037B6E8
-/* 8037B6E0 00377340 3B 80 00 7F */ li r28, 0x7f
-/* 8037B6E4 00377344 48 00 00 0C */ b lbl_8037B6F0
-lbl_8037B6E8:
-/* 8037B6E8 00377348 7C 60 FE 70 */ srawi r0, r3, 0x1f
-/* 8037B6EC 0037734C 7C 7C 00 78 */ andc r28, r3, r0
-lbl_8037B6F0:
-/* 8037B6F0 00377350 7E C3 B3 78 */ mr r3, r22
-/* 8037B6F4 00377354 7F 84 E3 78 */ mr r4, r28
-/* 8037B6F8 00377358 7F 25 CB 78 */ mr r5, r25
-/* 8037B6FC 0037735C 48 00 07 7D */ bl func_8037BE78
-/* 8037B700 00377360 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B704 00377364 40 82 00 14 */ bne lbl_8037B718
-/* 8037B708 00377368 7F C3 F3 78 */ mr r3, r30
-/* 8037B70C 0037736C 4B EF 43 19 */ bl func_8026FA24
-/* 8037B710 00377370 38 60 00 00 */ li r3, 0
-/* 8037B714 00377374 48 00 02 E0 */ b lbl_8037B9F4
-lbl_8037B718:
-/* 8037B718 00377378 3B FA 00 10 */ addi r31, r26, 0x10
-/* 8037B71C 0037737C 7F E3 FB 78 */ mr r3, r31
-/* 8037B720 00377380 4B EF 42 29 */ bl func_8026F948
-/* 8037B724 00377384 7F 43 D3 78 */ mr r3, r26
-/* 8037B728 00377388 4B FF 64 31 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
-/* 8037B72C 0037738C 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B730 00377390 41 82 00 1C */ beq lbl_8037B74C
-/* 8037B734 00377394 7C 7B 1B 78 */ mr r27, r3
-/* 8037B738 00377398 41 82 00 B4 */ beq lbl_8037B7EC
-/* 8037B73C 0037739C 7F 44 D3 78 */ mr r4, r26
-/* 8037B740 003773A0 48 00 3E 91 */ bl func_8037F5D0
-/* 8037B744 003773A4 7C 7B 1B 78 */ mr r27, r3
-/* 8037B748 003773A8 48 00 00 A4 */ b lbl_8037B7EC
-lbl_8037B74C:
-/* 8037B74C 003773AC 80 1A 00 04 */ lwz r0, 4(r26)
-/* 8037B750 003773B0 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B754 003773B4 40 82 00 0C */ bne lbl_8037B760
-/* 8037B758 003773B8 38 60 00 00 */ li r3, 0
-/* 8037B75C 003773BC 48 00 00 0C */ b lbl_8037B768
-lbl_8037B760:
-/* 8037B760 003773C0 80 7A 00 08 */ lwz r3, 8(r26)
-/* 8037B764 003773C4 38 63 FF 48 */ addi r3, r3, -184
-lbl_8037B768:
-/* 8037B768 003773C8 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B76C 003773CC 40 82 00 14 */ bne lbl_8037B780
-/* 8037B770 003773D0 7F E3 FB 78 */ mr r3, r31
-/* 8037B774 003773D4 4B EF 42 B1 */ bl func_8026FA24
-/* 8037B778 003773D8 3B 60 00 00 */ li r27, 0
-/* 8037B77C 003773DC 48 00 00 D0 */ b lbl_8037B84C
-lbl_8037B780:
-/* 8037B780 003773E0 88 83 00 74 */ lbz r4, 0x74(r3)
-/* 8037B784 003773E4 80 03 00 40 */ lwz r0, 0x40(r3)
-/* 8037B788 003773E8 7C 84 02 14 */ add r4, r4, r0
-/* 8037B78C 003773EC 2C 04 00 7F */ cmpwi r4, 0x7f
-/* 8037B790 003773F0 40 81 00 0C */ ble lbl_8037B79C
-/* 8037B794 003773F4 38 00 00 7F */ li r0, 0x7f
-/* 8037B798 003773F8 48 00 00 0C */ b lbl_8037B7A4
-lbl_8037B79C:
-/* 8037B79C 003773FC 7C 80 FE 70 */ srawi r0, r4, 0x1f
-/* 8037B7A0 00377400 7C 80 00 78 */ andc r0, r4, r0
-lbl_8037B7A4:
-/* 8037B7A4 00377404 7C 1C 00 00 */ cmpw r28, r0
-/* 8037B7A8 00377408 40 80 00 14 */ bge lbl_8037B7BC
-/* 8037B7AC 0037740C 7F E3 FB 78 */ mr r3, r31
-/* 8037B7B0 00377410 4B EF 42 75 */ bl func_8026FA24
-/* 8037B7B4 00377414 3B 60 00 00 */ li r27, 0
-/* 8037B7B8 00377418 48 00 00 94 */ b lbl_8037B84C
-lbl_8037B7BC:
-/* 8037B7BC 0037741C 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037B7C0 00377420 38 80 00 00 */ li r4, 0
-/* 8037B7C4 00377424 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 8037B7C8 00377428 7D 89 03 A6 */ mtctr r12
-/* 8037B7CC 0037742C 4E 80 04 21 */ bctrl
-/* 8037B7D0 00377430 7F 43 D3 78 */ mr r3, r26
-/* 8037B7D4 00377434 4B FF 63 85 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
-/* 8037B7D8 00377438 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B7DC 0037743C 41 82 00 0C */ beq lbl_8037B7E8
-/* 8037B7E0 00377440 7F 44 D3 78 */ mr r4, r26
-/* 8037B7E4 00377444 48 00 3D ED */ bl func_8037F5D0
-lbl_8037B7E8:
-/* 8037B7E8 00377448 7C 7B 1B 78 */ mr r27, r3
-lbl_8037B7EC:
-/* 8037B7EC 0037744C 80 7A 00 08 */ lwz r3, 8(r26)
-/* 8037B7F0 00377450 38 1A 00 08 */ addi r0, r26, 8
-/* 8037B7F4 00377454 48 00 00 34 */ b lbl_8037B828
-lbl_8037B7F8:
-/* 8037B7F8 00377458 88 A3 FF BC */ lbz r5, -0x44(r3)
-/* 8037B7FC 0037745C 80 83 FF 88 */ lwz r4, -0x78(r3)
-/* 8037B800 00377460 7C A5 22 14 */ add r5, r5, r4
-/* 8037B804 00377464 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B808 00377468 40 81 00 0C */ ble lbl_8037B814
-/* 8037B80C 0037746C 38 80 00 7F */ li r4, 0x7f
-/* 8037B810 00377470 48 00 00 0C */ b lbl_8037B81C
-lbl_8037B814:
-/* 8037B814 00377474 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B818 00377478 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037B81C:
-/* 8037B81C 0037747C 7C 1C 20 00 */ cmpw r28, r4
-/* 8037B820 00377480 41 80 00 10 */ blt lbl_8037B830
-/* 8037B824 00377484 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037B828:
-/* 8037B828 00377488 7C 03 00 40 */ cmplw r3, r0
-/* 8037B82C 0037748C 40 82 FF CC */ bne lbl_8037B7F8
-lbl_8037B830:
-/* 8037B830 00377490 90 61 00 14 */ stw r3, 0x14(r1)
-/* 8037B834 00377494 38 7A 00 04 */ addi r3, r26, 4
-/* 8037B838 00377498 38 81 00 14 */ addi r4, r1, 0x14
-/* 8037B83C 0037749C 38 BB 00 B8 */ addi r5, r27, 0xb8
-/* 8037B840 003774A0 4B FE 74 09 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B844 003774A4 7F E3 FB 78 */ mr r3, r31
-/* 8037B848 003774A8 4B EF 41 DD */ bl func_8026FA24
-lbl_8037B84C:
-/* 8037B84C 003774AC 2C 1B 00 00 */ cmpwi r27, 0
-/* 8037B850 003774B0 40 82 00 14 */ bne lbl_8037B864
-/* 8037B854 003774B4 7F C3 F3 78 */ mr r3, r30
-/* 8037B858 003774B8 4B EF 41 CD */ bl func_8026FA24
-/* 8037B85C 003774BC 38 60 00 00 */ li r3, 0
-/* 8037B860 003774C0 48 00 01 94 */ b lbl_8037B9F4
-lbl_8037B864:
-/* 8037B864 003774C4 3B 96 00 48 */ addi r28, r22, 0x48
-/* 8037B868 003774C8 7F 83 E3 78 */ mr r3, r28
-/* 8037B86C 003774CC 4B EF 40 DD */ bl func_8026F948
-/* 8037B870 003774D0 80 16 00 18 */ lwz r0, 0x18(r22)
-/* 8037B874 003774D4 2C 00 00 00 */ cmpwi r0, 0
-/* 8037B878 003774D8 40 82 00 10 */ bne lbl_8037B888
-/* 8037B87C 003774DC 7F 83 E3 78 */ mr r3, r28
-/* 8037B880 003774E0 4B EF 41 A5 */ bl func_8026FA24
-/* 8037B884 003774E4 48 00 00 48 */ b lbl_8037B8CC
-lbl_8037B888:
-/* 8037B888 003774E8 80 B6 00 1C */ lwz r5, 0x1c(r22)
-/* 8037B88C 003774EC 38 76 00 18 */ addi r3, r22, 0x18
-/* 8037B890 003774F0 38 81 00 10 */ addi r4, r1, 0x10
-/* 8037B894 003774F4 90 A1 00 10 */ stw r5, 0x10(r1)
-/* 8037B898 003774F8 3B E5 FF D4 */ addi r31, r5, -44
-/* 8037B89C 003774FC 4B FE 73 21 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
-/* 8037B8A0 00377500 93 7F 00 34 */ stw r27, 0x34(r31)
-/* 8037B8A4 00377504 3B 5F 00 04 */ addi r26, r31, 4
-/* 8037B8A8 00377508 7F 43 D3 78 */ mr r3, r26
-/* 8037B8AC 0037750C 93 FB 00 04 */ stw r31, 4(r27)
-/* 8037B8B0 00377510 4B EF 40 99 */ bl func_8026F948
-/* 8037B8B4 00377514 38 7F 00 1C */ addi r3, r31, 0x1c
-/* 8037B8B8 00377518 4B FF 4B 69 */ bl Clear__Q44nw4r3snd6detail9FrameHeapFv
-/* 8037B8BC 0037751C 7F 43 D3 78 */ mr r3, r26
-/* 8037B8C0 00377520 4B EF 41 65 */ bl func_8026FA24
-/* 8037B8C4 00377524 7F 83 E3 78 */ mr r3, r28
-/* 8037B8C8 00377528 4B EF 41 5D */ bl func_8026FA24
-lbl_8037B8CC:
-/* 8037B8CC 0037752C 2C 18 00 00 */ cmpwi r24, 0
-/* 8037B8D0 00377530 41 82 00 50 */ beq lbl_8037B920
-/* 8037B8D4 00377534 41 82 00 4C */ beq lbl_8037B920
-/* 8037B8D8 00377538 80 78 00 08 */ lwz r3, 8(r24)
-/* 8037B8DC 0037753C 80 98 00 10 */ lwz r4, 0x10(r24)
-/* 8037B8E0 00377540 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037B8E4 00377544 81 8C 00 08 */ lwz r12, 8(r12)
-/* 8037B8E8 00377548 7D 89 03 A6 */ mtctr r12
-/* 8037B8EC 0037754C 4E 80 04 21 */ bctrl
-/* 8037B8F0 00377550 2C 03 00 00 */ cmpwi r3, 0
-/* 8037B8F4 00377554 7C 7A 1B 78 */ mr r26, r3
-/* 8037B8F8 00377558 41 82 00 28 */ beq lbl_8037B920
-/* 8037B8FC 0037755C 80 98 00 0C */ lwz r4, 0xc(r24)
-/* 8037B900 00377560 80 B8 00 10 */ lwz r5, 0x10(r24)
-/* 8037B904 00377564 4B C8 86 FD */ bl memcpy
-/* 8037B908 00377568 80 98 00 00 */ lwz r4, 0(r24)
-/* 8037B90C 0037756C 7F 63 DB 78 */ mr r3, r27
-/* 8037B910 00377570 80 B8 00 04 */ lwz r5, 4(r24)
-/* 8037B914 00377574 7F 47 D3 78 */ mr r7, r26
-/* 8037B918 00377578 80 D8 00 08 */ lwz r6, 8(r24)
-/* 8037B91C 0037757C 4B FF 27 9D */ bl SetAmbientParamCallback__Q44nw4r3snd6detail10BasicSoundFPQ54nw4r3snd6detail10BasicSound26AmbientParamUpdateCallbackPQ54nw4r3snd6detail10BasicSound24AmbientArgUpdateCallbackPQ54nw4r3snd6detail10BasicSound27AmbientArgAllocaterCallbackPv
-lbl_8037B920:
-/* 8037B920 00377580 9A FB 00 74 */ stb r23, 0x74(r27)
-/* 8037B924 00377584 38 16 00 04 */ addi r0, r22, 4
-/* 8037B928 00377588 7E C3 B3 78 */ mr r3, r22
-/* 8037B92C 0037758C 38 81 00 0C */ addi r4, r1, 0xc
-/* 8037B930 00377590 93 BB 00 40 */ stw r29, 0x40(r27)
-/* 8037B934 00377594 38 BB 00 C0 */ addi r5, r27, 0xc0
-/* 8037B938 00377598 90 01 00 0C */ stw r0, 0xc(r1)
-/* 8037B93C 0037759C 4B FE 73 0D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B940 003775A0 2C 19 00 00 */ cmpwi r25, 0
-/* 8037B944 003775A4 92 DB 00 10 */ stw r22, 0x10(r27)
-/* 8037B948 003775A8 41 82 00 10 */ beq lbl_8037B958
-/* 8037B94C 003775AC 7F 23 CB 78 */ mr r3, r25
-/* 8037B950 003775B0 7F 64 DB 78 */ mr r4, r27
-/* 8037B954 003775B4 4B FF 46 29 */ bl InsertSoundList__Q44nw4r3snd6detail19ExternalSoundPlayerFPQ44nw4r3snd6detail10BasicSound
-lbl_8037B958:
-/* 8037B958 003775B8 3A F6 00 48 */ addi r23, r22, 0x48
-/* 8037B95C 003775BC 7E E3 BB 78 */ mr r3, r23
-/* 8037B960 003775C0 4B EF 3F E9 */ bl func_8026F948
-/* 8037B964 003775C4 80 76 00 10 */ lwz r3, 0x10(r22)
-/* 8037B968 003775C8 38 16 00 10 */ addi r0, r22, 0x10
-/* 8037B96C 003775CC 48 00 00 58 */ b lbl_8037B9C4
-lbl_8037B970:
-/* 8037B970 003775D0 88 A3 FF AC */ lbz r5, -0x54(r3)
-/* 8037B974 003775D4 80 83 FF 78 */ lwz r4, -0x88(r3)
-/* 8037B978 003775D8 7C A5 22 14 */ add r5, r5, r4
-/* 8037B97C 003775DC 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B980 003775E0 40 81 00 0C */ ble lbl_8037B98C
-/* 8037B984 003775E4 38 C0 00 7F */ li r6, 0x7f
-/* 8037B988 003775E8 48 00 00 0C */ b lbl_8037B994
-lbl_8037B98C:
-/* 8037B98C 003775EC 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B990 003775F0 7C A6 20 78 */ andc r6, r5, r4
-lbl_8037B994:
-/* 8037B994 003775F4 88 BB 00 74 */ lbz r5, 0x74(r27)
-/* 8037B998 003775F8 80 9B 00 40 */ lwz r4, 0x40(r27)
-/* 8037B99C 003775FC 7C A5 22 14 */ add r5, r5, r4
-/* 8037B9A0 00377600 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037B9A4 00377604 40 81 00 0C */ ble lbl_8037B9B0
-/* 8037B9A8 00377608 38 80 00 7F */ li r4, 0x7f
-/* 8037B9AC 0037760C 48 00 00 0C */ b lbl_8037B9B8
-lbl_8037B9B0:
-/* 8037B9B0 00377610 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037B9B4 00377614 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037B9B8:
-/* 8037B9B8 00377618 7C 04 30 00 */ cmpw r4, r6
-/* 8037B9BC 0037761C 41 80 00 10 */ blt lbl_8037B9CC
-/* 8037B9C0 00377620 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037B9C4:
-/* 8037B9C4 00377624 7C 03 00 40 */ cmplw r3, r0
-/* 8037B9C8 00377628 40 82 FF A8 */ bne lbl_8037B970
-lbl_8037B9CC:
-/* 8037B9CC 0037762C 90 61 00 08 */ stw r3, 8(r1)
-/* 8037B9D0 00377630 38 76 00 0C */ addi r3, r22, 0xc
-/* 8037B9D4 00377634 38 81 00 08 */ addi r4, r1, 8
-/* 8037B9D8 00377638 38 BB 00 C8 */ addi r5, r27, 0xc8
-/* 8037B9DC 0037763C 4B FE 72 6D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037B9E0 00377640 7E E3 BB 78 */ mr r3, r23
-/* 8037B9E4 00377644 4B EF 40 41 */ bl func_8026FA24
-/* 8037B9E8 00377648 7F C3 F3 78 */ mr r3, r30
-/* 8037B9EC 0037764C 4B EF 40 39 */ bl func_8026FA24
-/* 8037B9F0 00377650 7F 63 DB 78 */ mr r3, r27
-lbl_8037B9F4:
-/* 8037B9F4 00377654 39 61 00 60 */ addi r11, r1, 0x60
-/* 8037B9F8 00377658 4B E4 B7 69 */ bl func_801C7160
-/* 8037B9FC 0037765C 80 01 00 64 */ lwz r0, 0x64(r1)
-/* 8037BA00 00377660 7C 08 03 A6 */ mtlr r0
-/* 8037BA04 00377664 38 21 00 60 */ addi r1, r1, 0x60
-/* 8037BA08 00377668 4E 80 00 20 */ blr
-
-.global func_8037BA0C
-func_8037BA0C:
-/* 8037BA0C 0037766C 94 21 FF A0 */ stwu r1, -0x60(r1)
-/* 8037BA10 00377670 7C 08 02 A6 */ mflr r0
-/* 8037BA14 00377674 90 01 00 64 */ stw r0, 0x64(r1)
-/* 8037BA18 00377678 39 61 00 60 */ addi r11, r1, 0x60
-/* 8037BA1C 0037767C 4B E4 B6 F9 */ bl _savegpr_22
-/* 8037BA20 00377680 3B C3 00 48 */ addi r30, r3, 0x48
-/* 8037BA24 00377684 7C 76 1B 78 */ mr r22, r3
-/* 8037BA28 00377688 7C 97 23 78 */ mr r23, r4
-/* 8037BA2C 0037768C 7C BC 2B 78 */ mr r28, r5
-/* 8037BA30 00377690 7C D8 33 78 */ mr r24, r6
-/* 8037BA34 00377694 7C F9 3B 78 */ mr r25, r7
-/* 8037BA38 00377698 7D 1B 43 78 */ mr r27, r8
-/* 8037BA3C 0037769C 7D 3A 4B 78 */ mr r26, r9
-/* 8037BA40 003776A0 7F C3 F3 78 */ mr r3, r30
-/* 8037BA44 003776A4 4B EF 3F 05 */ bl func_8026F948
-/* 8037BA48 003776A8 2C 1A 00 00 */ cmpwi r26, 0
-/* 8037BA4C 003776AC 40 82 00 14 */ bne lbl_8037BA60
-/* 8037BA50 003776B0 7F C3 F3 78 */ mr r3, r30
-/* 8037BA54 003776B4 4B EF 3F D1 */ bl func_8026FA24
-/* 8037BA58 003776B8 38 60 00 00 */ li r3, 0
-/* 8037BA5C 003776BC 48 00 03 5C */ b lbl_8037BDB8
-lbl_8037BA60:
-/* 8037BA60 003776C0 2C 18 00 00 */ cmpwi r24, 0
-/* 8037BA64 003776C4 3B A0 00 00 */ li r29, 0
-/* 8037BA68 003776C8 41 82 00 30 */ beq lbl_8037BA98
-/* 8037BA6C 003776CC 80 78 00 00 */ lwz r3, 0(r24)
-/* 8037BA70 003776D0 7F 65 DB 78 */ mr r5, r27
-/* 8037BA74 003776D4 38 81 00 18 */ addi r4, r1, 0x18
-/* 8037BA78 003776D8 80 F8 00 0C */ lwz r7, 0xc(r24)
-/* 8037BA7C 003776DC 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037BA80 003776E0 38 C0 00 00 */ li r6, 0
-/* 8037BA84 003776E4 39 00 00 08 */ li r8, 8
-/* 8037BA88 003776E8 81 8C 00 08 */ lwz r12, 8(r12)
-/* 8037BA8C 003776EC 7D 89 03 A6 */ mtctr r12
-/* 8037BA90 003776F0 4E 80 04 21 */ bctrl
-/* 8037BA94 003776F4 83 A1 00 30 */ lwz r29, 0x30(r1)
-lbl_8037BA98:
-/* 8037BA98 003776F8 7C 7C EA 14 */ add r3, r28, r29
-/* 8037BA9C 003776FC 2C 03 00 7F */ cmpwi r3, 0x7f
-/* 8037BAA0 00377700 40 81 00 0C */ ble lbl_8037BAAC
-/* 8037BAA4 00377704 3B 80 00 7F */ li r28, 0x7f
-/* 8037BAA8 00377708 48 00 00 0C */ b lbl_8037BAB4
-lbl_8037BAAC:
-/* 8037BAAC 0037770C 7C 60 FE 70 */ srawi r0, r3, 0x1f
-/* 8037BAB0 00377710 7C 7C 00 78 */ andc r28, r3, r0
-lbl_8037BAB4:
-/* 8037BAB4 00377714 7E C3 B3 78 */ mr r3, r22
-/* 8037BAB8 00377718 7F 84 E3 78 */ mr r4, r28
-/* 8037BABC 0037771C 7F 25 CB 78 */ mr r5, r25
-/* 8037BAC0 00377720 48 00 03 B9 */ bl func_8037BE78
-/* 8037BAC4 00377724 2C 03 00 00 */ cmpwi r3, 0
-/* 8037BAC8 00377728 40 82 00 14 */ bne lbl_8037BADC
-/* 8037BACC 0037772C 7F C3 F3 78 */ mr r3, r30
-/* 8037BAD0 00377730 4B EF 3F 55 */ bl func_8026FA24
-/* 8037BAD4 00377734 38 60 00 00 */ li r3, 0
-/* 8037BAD8 00377738 48 00 02 E0 */ b lbl_8037BDB8
-lbl_8037BADC:
-/* 8037BADC 0037773C 3B FA 00 10 */ addi r31, r26, 0x10
-/* 8037BAE0 00377740 7F E3 FB 78 */ mr r3, r31
-/* 8037BAE4 00377744 4B EF 3E 65 */ bl func_8026F948
-/* 8037BAE8 00377748 7F 43 D3 78 */ mr r3, r26
-/* 8037BAEC 0037774C 4B FF 60 6D */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
-/* 8037BAF0 00377750 2C 03 00 00 */ cmpwi r3, 0
-/* 8037BAF4 00377754 41 82 00 1C */ beq lbl_8037BB10
-/* 8037BAF8 00377758 7C 7B 1B 78 */ mr r27, r3
-/* 8037BAFC 0037775C 41 82 00 B4 */ beq lbl_8037BBB0
-/* 8037BB00 00377760 7F 44 D3 78 */ mr r4, r26
-/* 8037BB04 00377764 48 00 7B 49 */ bl func_8038364C
-/* 8037BB08 00377768 7C 7B 1B 78 */ mr r27, r3
-/* 8037BB0C 0037776C 48 00 00 A4 */ b lbl_8037BBB0
-lbl_8037BB10:
-/* 8037BB10 00377770 80 1A 00 04 */ lwz r0, 4(r26)
-/* 8037BB14 00377774 2C 00 00 00 */ cmpwi r0, 0
-/* 8037BB18 00377778 40 82 00 0C */ bne lbl_8037BB24
-/* 8037BB1C 0037777C 38 60 00 00 */ li r3, 0
-/* 8037BB20 00377780 48 00 00 0C */ b lbl_8037BB2C
-lbl_8037BB24:
-/* 8037BB24 00377784 80 7A 00 08 */ lwz r3, 8(r26)
-/* 8037BB28 00377788 38 63 FF 48 */ addi r3, r3, -184
-lbl_8037BB2C:
-/* 8037BB2C 0037778C 2C 03 00 00 */ cmpwi r3, 0
-/* 8037BB30 00377790 40 82 00 14 */ bne lbl_8037BB44
-/* 8037BB34 00377794 7F E3 FB 78 */ mr r3, r31
-/* 8037BB38 00377798 4B EF 3E ED */ bl func_8026FA24
-/* 8037BB3C 0037779C 3B 60 00 00 */ li r27, 0
-/* 8037BB40 003777A0 48 00 00 D0 */ b lbl_8037BC10
-lbl_8037BB44:
-/* 8037BB44 003777A4 88 83 00 74 */ lbz r4, 0x74(r3)
-/* 8037BB48 003777A8 80 03 00 40 */ lwz r0, 0x40(r3)
-/* 8037BB4C 003777AC 7C 84 02 14 */ add r4, r4, r0
-/* 8037BB50 003777B0 2C 04 00 7F */ cmpwi r4, 0x7f
-/* 8037BB54 003777B4 40 81 00 0C */ ble lbl_8037BB60
-/* 8037BB58 003777B8 38 00 00 7F */ li r0, 0x7f
-/* 8037BB5C 003777BC 48 00 00 0C */ b lbl_8037BB68
-lbl_8037BB60:
-/* 8037BB60 003777C0 7C 80 FE 70 */ srawi r0, r4, 0x1f
-/* 8037BB64 003777C4 7C 80 00 78 */ andc r0, r4, r0
-lbl_8037BB68:
-/* 8037BB68 003777C8 7C 1C 00 00 */ cmpw r28, r0
-/* 8037BB6C 003777CC 40 80 00 14 */ bge lbl_8037BB80
-/* 8037BB70 003777D0 7F E3 FB 78 */ mr r3, r31
-/* 8037BB74 003777D4 4B EF 3E B1 */ bl func_8026FA24
-/* 8037BB78 003777D8 3B 60 00 00 */ li r27, 0
-/* 8037BB7C 003777DC 48 00 00 94 */ b lbl_8037BC10
-lbl_8037BB80:
-/* 8037BB80 003777E0 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037BB84 003777E4 38 80 00 00 */ li r4, 0
-/* 8037BB88 003777E8 81 8C 00 18 */ lwz r12, 0x18(r12)
-/* 8037BB8C 003777EC 7D 89 03 A6 */ mtctr r12
-/* 8037BB90 003777F0 4E 80 04 21 */ bctrl
-/* 8037BB94 003777F4 7F 43 D3 78 */ mr r3, r26
-/* 8037BB98 003777F8 4B FF 5F C1 */ bl AllocImpl__Q44nw4r3snd6detail8PoolImplFv
-/* 8037BB9C 003777FC 2C 03 00 00 */ cmpwi r3, 0
-/* 8037BBA0 00377800 41 82 00 0C */ beq lbl_8037BBAC
-/* 8037BBA4 00377804 7F 44 D3 78 */ mr r4, r26
-/* 8037BBA8 00377808 48 00 7A A5 */ bl func_8038364C
-lbl_8037BBAC:
-/* 8037BBAC 0037780C 7C 7B 1B 78 */ mr r27, r3
-lbl_8037BBB0:
-/* 8037BBB0 00377810 80 7A 00 08 */ lwz r3, 8(r26)
-/* 8037BBB4 00377814 38 1A 00 08 */ addi r0, r26, 8
-/* 8037BBB8 00377818 48 00 00 34 */ b lbl_8037BBEC
-lbl_8037BBBC:
-/* 8037BBBC 0037781C 88 A3 FF BC */ lbz r5, -0x44(r3)
-/* 8037BBC0 00377820 80 83 FF 88 */ lwz r4, -0x78(r3)
-/* 8037BBC4 00377824 7C A5 22 14 */ add r5, r5, r4
-/* 8037BBC8 00377828 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037BBCC 0037782C 40 81 00 0C */ ble lbl_8037BBD8
-/* 8037BBD0 00377830 38 80 00 7F */ li r4, 0x7f
-/* 8037BBD4 00377834 48 00 00 0C */ b lbl_8037BBE0
-lbl_8037BBD8:
-/* 8037BBD8 00377838 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037BBDC 0037783C 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037BBE0:
-/* 8037BBE0 00377840 7C 1C 20 00 */ cmpw r28, r4
-/* 8037BBE4 00377844 41 80 00 10 */ blt lbl_8037BBF4
-/* 8037BBE8 00377848 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037BBEC:
-/* 8037BBEC 0037784C 7C 03 00 40 */ cmplw r3, r0
-/* 8037BBF0 00377850 40 82 FF CC */ bne lbl_8037BBBC
-lbl_8037BBF4:
-/* 8037BBF4 00377854 90 61 00 14 */ stw r3, 0x14(r1)
-/* 8037BBF8 00377858 38 7A 00 04 */ addi r3, r26, 4
-/* 8037BBFC 0037785C 38 81 00 14 */ addi r4, r1, 0x14
-/* 8037BC00 00377860 38 BB 00 B8 */ addi r5, r27, 0xb8
-/* 8037BC04 00377864 4B FE 70 45 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037BC08 00377868 7F E3 FB 78 */ mr r3, r31
-/* 8037BC0C 0037786C 4B EF 3E 19 */ bl func_8026FA24
-lbl_8037BC10:
-/* 8037BC10 00377870 2C 1B 00 00 */ cmpwi r27, 0
-/* 8037BC14 00377874 40 82 00 14 */ bne lbl_8037BC28
-/* 8037BC18 00377878 7F C3 F3 78 */ mr r3, r30
-/* 8037BC1C 0037787C 4B EF 3E 09 */ bl func_8026FA24
-/* 8037BC20 00377880 38 60 00 00 */ li r3, 0
-/* 8037BC24 00377884 48 00 01 94 */ b lbl_8037BDB8
-lbl_8037BC28:
-/* 8037BC28 00377888 3B 96 00 48 */ addi r28, r22, 0x48
-/* 8037BC2C 0037788C 7F 83 E3 78 */ mr r3, r28
-/* 8037BC30 00377890 4B EF 3D 19 */ bl func_8026F948
-/* 8037BC34 00377894 80 16 00 18 */ lwz r0, 0x18(r22)
-/* 8037BC38 00377898 2C 00 00 00 */ cmpwi r0, 0
-/* 8037BC3C 0037789C 40 82 00 10 */ bne lbl_8037BC4C
-/* 8037BC40 003778A0 7F 83 E3 78 */ mr r3, r28
-/* 8037BC44 003778A4 4B EF 3D E1 */ bl func_8026FA24
-/* 8037BC48 003778A8 48 00 00 48 */ b lbl_8037BC90
-lbl_8037BC4C:
-/* 8037BC4C 003778AC 80 B6 00 1C */ lwz r5, 0x1c(r22)
-/* 8037BC50 003778B0 38 76 00 18 */ addi r3, r22, 0x18
-/* 8037BC54 003778B4 38 81 00 10 */ addi r4, r1, 0x10
-/* 8037BC58 003778B8 90 A1 00 10 */ stw r5, 0x10(r1)
-/* 8037BC5C 003778BC 3B E5 FF D4 */ addi r31, r5, -44
-/* 8037BC60 003778C0 4B FE 6F 5D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
-/* 8037BC64 003778C4 93 7F 00 34 */ stw r27, 0x34(r31)
-/* 8037BC68 003778C8 3B 5F 00 04 */ addi r26, r31, 4
-/* 8037BC6C 003778CC 7F 43 D3 78 */ mr r3, r26
-/* 8037BC70 003778D0 93 FB 00 04 */ stw r31, 4(r27)
-/* 8037BC74 003778D4 4B EF 3C D5 */ bl func_8026F948
-/* 8037BC78 003778D8 38 7F 00 1C */ addi r3, r31, 0x1c
-/* 8037BC7C 003778DC 4B FF 47 A5 */ bl Clear__Q44nw4r3snd6detail9FrameHeapFv
-/* 8037BC80 003778E0 7F 43 D3 78 */ mr r3, r26
-/* 8037BC84 003778E4 4B EF 3D A1 */ bl func_8026FA24
-/* 8037BC88 003778E8 7F 83 E3 78 */ mr r3, r28
-/* 8037BC8C 003778EC 4B EF 3D 99 */ bl func_8026FA24
-lbl_8037BC90:
-/* 8037BC90 003778F0 2C 18 00 00 */ cmpwi r24, 0
-/* 8037BC94 003778F4 41 82 00 50 */ beq lbl_8037BCE4
-/* 8037BC98 003778F8 41 82 00 4C */ beq lbl_8037BCE4
-/* 8037BC9C 003778FC 80 78 00 08 */ lwz r3, 8(r24)
-/* 8037BCA0 00377900 80 98 00 10 */ lwz r4, 0x10(r24)
-/* 8037BCA4 00377904 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037BCA8 00377908 81 8C 00 08 */ lwz r12, 8(r12)
-/* 8037BCAC 0037790C 7D 89 03 A6 */ mtctr r12
-/* 8037BCB0 00377910 4E 80 04 21 */ bctrl
-/* 8037BCB4 00377914 2C 03 00 00 */ cmpwi r3, 0
-/* 8037BCB8 00377918 7C 7A 1B 78 */ mr r26, r3
-/* 8037BCBC 0037791C 41 82 00 28 */ beq lbl_8037BCE4
-/* 8037BCC0 00377920 80 98 00 0C */ lwz r4, 0xc(r24)
-/* 8037BCC4 00377924 80 B8 00 10 */ lwz r5, 0x10(r24)
-/* 8037BCC8 00377928 4B C8 83 39 */ bl memcpy
-/* 8037BCCC 0037792C 80 98 00 00 */ lwz r4, 0(r24)
-/* 8037BCD0 00377930 7F 63 DB 78 */ mr r3, r27
-/* 8037BCD4 00377934 80 B8 00 04 */ lwz r5, 4(r24)
-/* 8037BCD8 00377938 7F 47 D3 78 */ mr r7, r26
-/* 8037BCDC 0037793C 80 D8 00 08 */ lwz r6, 8(r24)
-/* 8037BCE0 00377940 4B FF 23 D9 */ bl SetAmbientParamCallback__Q44nw4r3snd6detail10BasicSoundFPQ54nw4r3snd6detail10BasicSound26AmbientParamUpdateCallbackPQ54nw4r3snd6detail10BasicSound24AmbientArgUpdateCallbackPQ54nw4r3snd6detail10BasicSound27AmbientArgAllocaterCallbackPv
-lbl_8037BCE4:
-/* 8037BCE4 00377944 9A FB 00 74 */ stb r23, 0x74(r27)
-/* 8037BCE8 00377948 38 16 00 04 */ addi r0, r22, 4
-/* 8037BCEC 0037794C 7E C3 B3 78 */ mr r3, r22
-/* 8037BCF0 00377950 38 81 00 0C */ addi r4, r1, 0xc
-/* 8037BCF4 00377954 93 BB 00 40 */ stw r29, 0x40(r27)
-/* 8037BCF8 00377958 38 BB 00 C0 */ addi r5, r27, 0xc0
-/* 8037BCFC 0037795C 90 01 00 0C */ stw r0, 0xc(r1)
-/* 8037BD00 00377960 4B FE 6F 49 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037BD04 00377964 2C 19 00 00 */ cmpwi r25, 0
-/* 8037BD08 00377968 92 DB 00 10 */ stw r22, 0x10(r27)
-/* 8037BD0C 0037796C 41 82 00 10 */ beq lbl_8037BD1C
-/* 8037BD10 00377970 7F 23 CB 78 */ mr r3, r25
-/* 8037BD14 00377974 7F 64 DB 78 */ mr r4, r27
-/* 8037BD18 00377978 4B FF 42 65 */ bl InsertSoundList__Q44nw4r3snd6detail19ExternalSoundPlayerFPQ44nw4r3snd6detail10BasicSound
-lbl_8037BD1C:
-/* 8037BD1C 0037797C 3A F6 00 48 */ addi r23, r22, 0x48
-/* 8037BD20 00377980 7E E3 BB 78 */ mr r3, r23
-/* 8037BD24 00377984 4B EF 3C 25 */ bl func_8026F948
-/* 8037BD28 00377988 80 76 00 10 */ lwz r3, 0x10(r22)
-/* 8037BD2C 0037798C 38 16 00 10 */ addi r0, r22, 0x10
-/* 8037BD30 00377990 48 00 00 58 */ b lbl_8037BD88
-lbl_8037BD34:
-/* 8037BD34 00377994 88 A3 FF AC */ lbz r5, -0x54(r3)
-/* 8037BD38 00377998 80 83 FF 78 */ lwz r4, -0x88(r3)
-/* 8037BD3C 0037799C 7C A5 22 14 */ add r5, r5, r4
-/* 8037BD40 003779A0 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037BD44 003779A4 40 81 00 0C */ ble lbl_8037BD50
-/* 8037BD48 003779A8 38 C0 00 7F */ li r6, 0x7f
-/* 8037BD4C 003779AC 48 00 00 0C */ b lbl_8037BD58
-lbl_8037BD50:
-/* 8037BD50 003779B0 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037BD54 003779B4 7C A6 20 78 */ andc r6, r5, r4
-lbl_8037BD58:
-/* 8037BD58 003779B8 88 BB 00 74 */ lbz r5, 0x74(r27)
-/* 8037BD5C 003779BC 80 9B 00 40 */ lwz r4, 0x40(r27)
-/* 8037BD60 003779C0 7C A5 22 14 */ add r5, r5, r4
-/* 8037BD64 003779C4 2C 05 00 7F */ cmpwi r5, 0x7f
-/* 8037BD68 003779C8 40 81 00 0C */ ble lbl_8037BD74
-/* 8037BD6C 003779CC 38 80 00 7F */ li r4, 0x7f
-/* 8037BD70 003779D0 48 00 00 0C */ b lbl_8037BD7C
-lbl_8037BD74:
-/* 8037BD74 003779D4 7C A4 FE 70 */ srawi r4, r5, 0x1f
-/* 8037BD78 003779D8 7C A4 20 78 */ andc r4, r5, r4
-lbl_8037BD7C:
-/* 8037BD7C 003779DC 7C 04 30 00 */ cmpw r4, r6
-/* 8037BD80 003779E0 41 80 00 10 */ blt lbl_8037BD90
-/* 8037BD84 003779E4 80 63 00 00 */ lwz r3, 0(r3)
-lbl_8037BD88:
-/* 8037BD88 003779E8 7C 03 00 40 */ cmplw r3, r0
-/* 8037BD8C 003779EC 40 82 FF A8 */ bne lbl_8037BD34
-lbl_8037BD90:
-/* 8037BD90 003779F0 90 61 00 08 */ stw r3, 8(r1)
-/* 8037BD94 003779F4 38 76 00 0C */ addi r3, r22, 0xc
-/* 8037BD98 003779F8 38 81 00 08 */ addi r4, r1, 8
-/* 8037BD9C 003779FC 38 BB 00 C8 */ addi r5, r27, 0xc8
-/* 8037BDA0 00377A00 4B FE 6E A9 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037BDA4 00377A04 7E E3 BB 78 */ mr r3, r23
-/* 8037BDA8 00377A08 4B EF 3C 7D */ bl func_8026FA24
-/* 8037BDAC 00377A0C 7F C3 F3 78 */ mr r3, r30
-/* 8037BDB0 00377A10 4B EF 3C 75 */ bl func_8026FA24
-/* 8037BDB4 00377A14 7F 63 DB 78 */ mr r3, r27
-lbl_8037BDB8:
-/* 8037BDB8 00377A18 39 61 00 60 */ addi r11, r1, 0x60
-/* 8037BDBC 00377A1C 4B E4 B3 A5 */ bl func_801C7160
-/* 8037BDC0 00377A20 80 01 00 64 */ lwz r0, 0x64(r1)
-/* 8037BDC4 00377A24 7C 08 03 A6 */ mtlr r0
-/* 8037BDC8 00377A28 38 21 00 60 */ addi r1, r1, 0x60
-/* 8037BDCC 00377A2C 4E 80 00 20 */ blr
-
-.global func_8037BDD0
-func_8037BDD0:
-/* 8037BDD0 00377A30 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037BDD4 00377A34 7C 08 02 A6 */ mflr r0
-/* 8037BDD8 00377A38 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037BDDC 00377A3C 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037BDE0 00377A40 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037BDE4 00377A44 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037BDE8 00377A48 7C 9E 23 78 */ mr r30, r4
-/* 8037BDEC 00377A4C 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037BDF0 00377A50 7C 7D 1B 78 */ mr r29, r3
-/* 8037BDF4 00377A54 7F E3 FB 78 */ mr r3, r31
-/* 8037BDF8 00377A58 4B EF 3B 51 */ bl func_8026F948
-/* 8037BDFC 00377A5C 88 1D 00 2D */ lbz r0, 0x2d(r29)
-/* 8037BE00 00377A60 B3 DD 00 24 */ sth r30, 0x24(r29)
-/* 8037BE04 00377A64 2C 00 00 00 */ cmpwi r0, 0
-/* 8037BE08 00377A68 41 82 00 34 */ beq lbl_8037BE3C
-/* 8037BE0C 00377A6C A0 7D 00 26 */ lhz r3, 0x26(r29)
-/* 8037BE10 00377A70 57 C0 04 3E */ clrlwi r0, r30, 0x10
-/* 8037BE14 00377A74 7C 00 18 40 */ cmplw r0, r3
-/* 8037BE18 00377A78 40 81 00 08 */ ble lbl_8037BE20
-/* 8037BE1C 00377A7C 7C 60 1B 78 */ mr r0, r3
-lbl_8037BE20:
-/* 8037BE20 00377A80 B0 1D 00 24 */ sth r0, 0x24(r29)
-/* 8037BE24 00377A84 48 00 00 18 */ b lbl_8037BE3C
-lbl_8037BE28:
-/* 8037BE28 00377A88 80 7D 00 10 */ lwz r3, 0x10(r29)
-/* 8037BE2C 00377A8C 85 83 FF 38 */ lwzu r12, -0xc8(r3)
-/* 8037BE30 00377A90 81 8C 00 28 */ lwz r12, 0x28(r12)
-/* 8037BE34 00377A94 7D 89 03 A6 */ mtctr r12
-/* 8037BE38 00377A98 4E 80 04 21 */ bctrl
-lbl_8037BE3C:
-/* 8037BE3C 00377A9C 80 7D 00 00 */ lwz r3, 0(r29)
-/* 8037BE40 00377AA0 A0 1D 00 24 */ lhz r0, 0x24(r29)
-/* 8037BE44 00377AA4 7C 03 00 00 */ cmpw r3, r0
-/* 8037BE48 00377AA8 41 81 FF E0 */ bgt lbl_8037BE28
-/* 8037BE4C 00377AAC 7F E3 FB 78 */ mr r3, r31
-/* 8037BE50 00377AB0 4B EF 3B D5 */ bl func_8026FA24
-/* 8037BE54 00377AB4 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037BE58 00377AB8 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037BE5C 00377ABC 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037BE60 00377AC0 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037BE64 00377AC4 7C 08 03 A6 */ mtlr r0
-/* 8037BE68 00377AC8 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037BE6C 00377ACC 4E 80 00 20 */ blr
-
-.global func_8037BE70
-func_8037BE70:
-/* 8037BE70 00377AD0 B0 83 00 26 */ sth r4, 0x26(r3)
-/* 8037BE74 00377AD4 4E 80 00 20 */ blr
-
-.global func_8037BE78
-func_8037BE78:
-/* 8037BE78 00377AD8 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037BE7C 00377ADC 7C 08 02 A6 */ mflr r0
-/* 8037BE80 00377AE0 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037BE84 00377AE4 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037BE88 00377AE8 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037BE8C 00377AEC 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037BE90 00377AF0 7C BE 2B 78 */ mr r30, r5
-/* 8037BE94 00377AF4 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037BE98 00377AF8 7C 9D 23 78 */ mr r29, r4
-/* 8037BE9C 00377AFC 93 81 00 10 */ stw r28, 0x10(r1)
-/* 8037BEA0 00377B00 7C 7C 1B 78 */ mr r28, r3
-/* 8037BEA4 00377B04 7F E3 FB 78 */ mr r3, r31
-/* 8037BEA8 00377B08 4B EF 3A A1 */ bl func_8026F948
-/* 8037BEAC 00377B0C A0 1C 00 24 */ lhz r0, 0x24(r28)
-/* 8037BEB0 00377B10 2C 00 00 00 */ cmpwi r0, 0
-/* 8037BEB4 00377B14 40 82 00 80 */ bne lbl_8037BF34
-/* 8037BEB8 00377B18 7F E3 FB 78 */ mr r3, r31
-/* 8037BEBC 00377B1C 4B EF 3B 69 */ bl func_8026FA24
-/* 8037BEC0 00377B20 38 60 00 00 */ li r3, 0
-/* 8037BEC4 00377B24 48 00 01 30 */ b lbl_8037BFF4
-/* 8037BEC8 00377B28 48 00 00 6C */ b lbl_8037BF34
-lbl_8037BECC:
-/* 8037BECC 00377B2C 80 1C 00 10 */ lwz r0, 0x10(r28)
-/* 8037BED0 00377B30 34 60 FF 38 */ addic. r3, r0, -200
-/* 8037BED4 00377B34 40 82 00 14 */ bne lbl_8037BEE8
-/* 8037BED8 00377B38 7F E3 FB 78 */ mr r3, r31
-/* 8037BEDC 00377B3C 4B EF 3B 49 */ bl func_8026FA24
-/* 8037BEE0 00377B40 38 60 00 00 */ li r3, 0
-/* 8037BEE4 00377B44 48 00 01 10 */ b lbl_8037BFF4
-lbl_8037BEE8:
-/* 8037BEE8 00377B48 88 83 00 74 */ lbz r4, 0x74(r3)
-/* 8037BEEC 00377B4C 80 03 00 40 */ lwz r0, 0x40(r3)
-/* 8037BEF0 00377B50 7C 84 02 14 */ add r4, r4, r0
-/* 8037BEF4 00377B54 2C 04 00 7F */ cmpwi r4, 0x7f
-/* 8037BEF8 00377B58 40 81 00 0C */ ble lbl_8037BF04
-/* 8037BEFC 00377B5C 38 00 00 7F */ li r0, 0x7f
-/* 8037BF00 00377B60 48 00 00 0C */ b lbl_8037BF0C
-lbl_8037BF04:
-/* 8037BF04 00377B64 7C 80 FE 70 */ srawi r0, r4, 0x1f
-/* 8037BF08 00377B68 7C 80 00 78 */ andc r0, r4, r0
-lbl_8037BF0C:
-/* 8037BF0C 00377B6C 7C 1D 00 00 */ cmpw r29, r0
-/* 8037BF10 00377B70 40 80 00 14 */ bge lbl_8037BF24
-/* 8037BF14 00377B74 7F E3 FB 78 */ mr r3, r31
-/* 8037BF18 00377B78 4B EF 3B 0D */ bl func_8026FA24
-/* 8037BF1C 00377B7C 38 60 00 00 */ li r3, 0
-/* 8037BF20 00377B80 48 00 00 D4 */ b lbl_8037BFF4
-lbl_8037BF24:
-/* 8037BF24 00377B84 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037BF28 00377B88 81 8C 00 28 */ lwz r12, 0x28(r12)
-/* 8037BF2C 00377B8C 7D 89 03 A6 */ mtctr r12
-/* 8037BF30 00377B90 4E 80 04 21 */ bctrl
-lbl_8037BF34:
-/* 8037BF34 00377B94 80 7C 00 00 */ lwz r3, 0(r28)
-/* 8037BF38 00377B98 A0 1C 00 24 */ lhz r0, 0x24(r28)
-/* 8037BF3C 00377B9C 7C 03 00 00 */ cmpw r3, r0
-/* 8037BF40 00377BA0 40 80 FF 8C */ bge lbl_8037BECC
-/* 8037BF44 00377BA4 2C 1E 00 00 */ cmpwi r30, 0
-/* 8037BF48 00377BA8 41 82 00 A0 */ beq lbl_8037BFE8
-/* 8037BF4C 00377BAC A0 1E 00 0C */ lhz r0, 0xc(r30)
-/* 8037BF50 00377BB0 2C 00 00 00 */ cmpwi r0, 0
-/* 8037BF54 00377BB4 40 82 00 84 */ bne lbl_8037BFD8
-/* 8037BF58 00377BB8 7F E3 FB 78 */ mr r3, r31
-/* 8037BF5C 00377BBC 4B EF 3A C9 */ bl func_8026FA24
-/* 8037BF60 00377BC0 38 60 00 00 */ li r3, 0
-/* 8037BF64 00377BC4 48 00 00 90 */ b lbl_8037BFF4
-/* 8037BF68 00377BC8 48 00 00 70 */ b lbl_8037BFD8
-lbl_8037BF6C:
-/* 8037BF6C 00377BCC 7F C3 F3 78 */ mr r3, r30
-/* 8037BF70 00377BD0 4B FF 40 91 */ bl GetLowestPrioritySound__Q44nw4r3snd6detail19ExternalSoundPlayerFv
-/* 8037BF74 00377BD4 2C 03 00 00 */ cmpwi r3, 0
-/* 8037BF78 00377BD8 40 82 00 14 */ bne lbl_8037BF8C
-/* 8037BF7C 00377BDC 7F E3 FB 78 */ mr r3, r31
-/* 8037BF80 00377BE0 4B EF 3A A5 */ bl func_8026FA24
-/* 8037BF84 00377BE4 38 60 00 00 */ li r3, 0
-/* 8037BF88 00377BE8 48 00 00 6C */ b lbl_8037BFF4
-lbl_8037BF8C:
-/* 8037BF8C 00377BEC 88 83 00 74 */ lbz r4, 0x74(r3)
-/* 8037BF90 00377BF0 80 03 00 40 */ lwz r0, 0x40(r3)
-/* 8037BF94 00377BF4 7C 84 02 14 */ add r4, r4, r0
-/* 8037BF98 00377BF8 2C 04 00 7F */ cmpwi r4, 0x7f
-/* 8037BF9C 00377BFC 40 81 00 0C */ ble lbl_8037BFA8
-/* 8037BFA0 00377C00 38 00 00 7F */ li r0, 0x7f
-/* 8037BFA4 00377C04 48 00 00 0C */ b lbl_8037BFB0
-lbl_8037BFA8:
-/* 8037BFA8 00377C08 7C 80 FE 70 */ srawi r0, r4, 0x1f
-/* 8037BFAC 00377C0C 7C 80 00 78 */ andc r0, r4, r0
-lbl_8037BFB0:
-/* 8037BFB0 00377C10 7C 1D 00 00 */ cmpw r29, r0
-/* 8037BFB4 00377C14 40 80 00 14 */ bge lbl_8037BFC8
-/* 8037BFB8 00377C18 7F E3 FB 78 */ mr r3, r31
-/* 8037BFBC 00377C1C 4B EF 3A 69 */ bl func_8026FA24
-/* 8037BFC0 00377C20 38 60 00 00 */ li r3, 0
-/* 8037BFC4 00377C24 48 00 00 30 */ b lbl_8037BFF4
-lbl_8037BFC8:
-/* 8037BFC8 00377C28 81 83 00 00 */ lwz r12, 0(r3)
-/* 8037BFCC 00377C2C 81 8C 00 28 */ lwz r12, 0x28(r12)
-/* 8037BFD0 00377C30 7D 89 03 A6 */ mtctr r12
-/* 8037BFD4 00377C34 4E 80 04 21 */ bctrl
-lbl_8037BFD8:
-/* 8037BFD8 00377C38 80 7E 00 00 */ lwz r3, 0(r30)
-/* 8037BFDC 00377C3C A0 1E 00 0C */ lhz r0, 0xc(r30)
-/* 8037BFE0 00377C40 7C 03 00 00 */ cmpw r3, r0
-/* 8037BFE4 00377C44 40 80 FF 88 */ bge lbl_8037BF6C
-lbl_8037BFE8:
-/* 8037BFE8 00377C48 7F E3 FB 78 */ mr r3, r31
-/* 8037BFEC 00377C4C 4B EF 3A 39 */ bl func_8026FA24
-/* 8037BFF0 00377C50 38 60 00 01 */ li r3, 1
-lbl_8037BFF4:
-/* 8037BFF4 00377C54 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037BFF8 00377C58 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037BFFC 00377C5C 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037C000 00377C60 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037C004 00377C64 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 8037C008 00377C68 7C 08 03 A6 */ mtlr r0
-/* 8037C00C 00377C6C 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037C010 00377C70 4E 80 00 20 */ blr
-
-.global func_8037C014
-func_8037C014:
-/* 8037C014 00377C74 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037C018 00377C78 7C 08 02 A6 */ mflr r0
-/* 8037C01C 00377C7C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037C020 00377C80 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037C024 00377C84 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037C028 00377C88 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037C02C 00377C8C 7C 9E 23 78 */ mr r30, r4
-/* 8037C030 00377C90 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037C034 00377C94 7C 7D 1B 78 */ mr r29, r3
-/* 8037C038 00377C98 7F E3 FB 78 */ mr r3, r31
-/* 8037C03C 00377C9C 4B EF 39 0D */ bl func_8026F948
-/* 8037C040 00377CA0 93 BE 00 38 */ stw r29, 0x38(r30)
-/* 8037C044 00377CA4 38 1D 00 1C */ addi r0, r29, 0x1c
-/* 8037C048 00377CA8 38 7D 00 18 */ addi r3, r29, 0x18
-/* 8037C04C 00377CAC 38 81 00 08 */ addi r4, r1, 8
-/* 8037C050 00377CB0 90 01 00 08 */ stw r0, 8(r1)
-/* 8037C054 00377CB4 38 BE 00 2C */ addi r5, r30, 0x2c
-/* 8037C058 00377CB8 4B FE 6B F1 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-/* 8037C05C 00377CBC 38 00 00 01 */ li r0, 1
-/* 8037C060 00377CC0 7F E3 FB 78 */ mr r3, r31
-/* 8037C064 00377CC4 98 1D 00 2D */ stb r0, 0x2d(r29)
-/* 8037C068 00377CC8 4B EF 39 BD */ bl func_8026FA24
-/* 8037C06C 00377CCC 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037C070 00377CD0 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037C074 00377CD4 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037C078 00377CD8 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037C07C 00377CDC 7C 08 03 A6 */ mtlr r0
-/* 8037C080 00377CE0 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037C084 00377CE4 4E 80 00 20 */ blr
-
-.global func_8037C088
-func_8037C088:
-/* 8037C088 00377CE8 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 8037C08C 00377CEC 7C 08 02 A6 */ mflr r0
-/* 8037C090 00377CF0 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8037C094 00377CF4 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 8037C098 00377CF8 3B E3 00 48 */ addi r31, r3, 0x48
-/* 8037C09C 00377CFC 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 8037C0A0 00377D00 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 8037C0A4 00377D04 7C 9D 23 78 */ mr r29, r4
-/* 8037C0A8 00377D08 93 81 00 10 */ stw r28, 0x10(r1)
-/* 8037C0AC 00377D0C 7C 7C 1B 78 */ mr r28, r3
-/* 8037C0B0 00377D10 7F E3 FB 78 */ mr r3, r31
-/* 8037C0B4 00377D14 4B EF 38 95 */ bl func_8026F948
-/* 8037C0B8 00377D18 83 DD 00 04 */ lwz r30, 4(r29)
-/* 8037C0BC 00377D1C 2C 1E 00 00 */ cmpwi r30, 0
-/* 8037C0C0 00377D20 41 82 00 1C */ beq lbl_8037C0DC
-/* 8037C0C4 00377D24 38 1C 00 1C */ addi r0, r28, 0x1c
-/* 8037C0C8 00377D28 38 7C 00 18 */ addi r3, r28, 0x18
-/* 8037C0CC 00377D2C 90 01 00 08 */ stw r0, 8(r1)
-/* 8037C0D0 00377D30 38 81 00 08 */ addi r4, r1, 8
-/* 8037C0D4 00377D34 38 BE 00 2C */ addi r5, r30, 0x2c
-/* 8037C0D8 00377D38 4B FE 6B 71 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
-lbl_8037C0DC:
-/* 8037C0DC 00377D3C 2C 1E 00 00 */ cmpwi r30, 0
-/* 8037C0E0 00377D40 41 82 00 0C */ beq lbl_8037C0EC
-/* 8037C0E4 00377D44 38 00 00 00 */ li r0, 0
-/* 8037C0E8 00377D48 90 1E 00 34 */ stw r0, 0x34(r30)
-lbl_8037C0EC:
-/* 8037C0EC 00377D4C 38 00 00 00 */ li r0, 0
-/* 8037C0F0 00377D50 7F E3 FB 78 */ mr r3, r31
-/* 8037C0F4 00377D54 90 1D 00 04 */ stw r0, 4(r29)
-/* 8037C0F8 00377D58 4B EF 39 2D */ bl func_8026FA24
-/* 8037C0FC 00377D5C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8037C100 00377D60 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8037C104 00377D64 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 8037C108 00377D68 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8037C10C 00377D6C 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 8037C110 00377D70 7C 08 03 A6 */ mtlr r0
-/* 8037C114 00377D74 38 21 00 20 */ addi r1, r1, 0x20
-/* 8037C118 00377D78 4E 80 00 20 */ blr
-
.global func_8037C11C
func_8037C11C:
/* 8037C11C 00377D7C 94 21 FF F0 */ stwu r1, -0x10(r1)
diff --git a/asm/text_11.s b/asm/text_11.s
index c18d46f..1f9183e 100644
--- a/asm/text_11.s
+++ b/asm/text_11.s
@@ -31448,7 +31448,7 @@ lbl_8039B780:
/* 8039B780 003973E0 7F 84 E3 78 */ mr r4, r28
/* 8039B784 003973E4 4B FD E1 29 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 8039B788 003973E8 C0 22 A9 38 */ lfs f1, lbl_80642F38-_SDA2_BASE_(r2)
-/* 8039B78C 003973EC 4B FD F7 DD */ bl func_8037AF68
+/* 8039B78C 003973EC 4B FD F7 DD */ bl SetVolume__Q34nw4r3snd11SoundPlayerFf
/* 8039B790 003973F0 3B 9C 00 01 */ addi r28, r28, 1
lbl_8039B794:
/* 8039B794 003973F4 80 7E 05 D0 */ lwz r3, 0x5d0(r30)
@@ -33211,7 +33211,7 @@ lbl_8039D0E8:
/* 8039D0E8 00398D48 7F 24 CB 78 */ mr r4, r25
/* 8039D0EC 00398D4C 4B FD C7 C1 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 8039D0F0 00398D50 C0 22 A9 34 */ lfs f1, lbl_80642F34-_SDA2_BASE_(r2)
-/* 8039D0F4 00398D54 4B FD DE 75 */ bl func_8037AF68
+/* 8039D0F4 00398D54 4B FD DE 75 */ bl SetVolume__Q34nw4r3snd11SoundPlayerFf
/* 8039D0F8 00398D58 3B 39 00 01 */ addi r25, r25, 1
lbl_8039D0FC:
/* 8039D0FC 00398D5C 80 7D 05 D0 */ lwz r3, 0x5d0(r29)
@@ -33254,7 +33254,7 @@ lbl_8039D184:
/* 8039D184 00398DE4 7F 24 CB 78 */ mr r4, r25
/* 8039D188 00398DE8 4B FD C7 25 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 8039D18C 00398DEC FC 20 F0 90 */ fmr f1, f30
-/* 8039D190 00398DF0 4B FD DD D9 */ bl func_8037AF68
+/* 8039D190 00398DF0 4B FD DD D9 */ bl SetVolume__Q34nw4r3snd11SoundPlayerFf
/* 8039D194 00398DF4 3B 39 00 01 */ addi r25, r25, 1
lbl_8039D198:
/* 8039D198 00398DF8 80 7D 05 D0 */ lwz r3, 0x5d0(r29)
@@ -33282,7 +33282,7 @@ lbl_8039D1EC:
/* 8039D1EC 00398E4C 7F 24 CB 78 */ mr r4, r25
/* 8039D1F0 00398E50 4B FD C6 BD */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 8039D1F4 00398E54 38 80 00 00 */ li r4, 0
-/* 8039D1F8 00398E58 4B FD DC 71 */ bl func_8037AE68
+/* 8039D1F8 00398E58 4B FD DC 71 */ bl StopAllSound__Q34nw4r3snd11SoundPlayerFi
/* 8039D1FC 00398E5C 3B 39 00 01 */ addi r25, r25, 1
lbl_8039D200:
/* 8039D200 00398E60 80 7D 05 D0 */ lwz r3, 0x5d0(r29)
@@ -33619,7 +33619,7 @@ lbl_8039D6B0:
/* 8039D6B0 00399310 7F 24 CB 78 */ mr r4, r25
/* 8039D6B4 00399314 4B FD C1 F9 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 8039D6B8 00399318 C0 22 A9 34 */ lfs f1, lbl_80642F34-_SDA2_BASE_(r2)
-/* 8039D6BC 0039931C 4B FD D8 AD */ bl func_8037AF68
+/* 8039D6BC 0039931C 4B FD D8 AD */ bl SetVolume__Q34nw4r3snd11SoundPlayerFf
/* 8039D6C0 00399320 3B 39 00 01 */ addi r25, r25, 1
lbl_8039D6C4:
/* 8039D6C4 00399324 80 7D 05 D0 */ lwz r3, 0x5d0(r29)
@@ -33667,7 +33667,7 @@ lbl_8039D760:
/* 8039D760 003993C0 7F 24 CB 78 */ mr r4, r25
/* 8039D764 003993C4 4B FD C1 49 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 8039D768 003993C8 FC 20 F0 90 */ fmr f1, f30
-/* 8039D76C 003993CC 4B FD D7 FD */ bl func_8037AF68
+/* 8039D76C 003993CC 4B FD D7 FD */ bl SetVolume__Q34nw4r3snd11SoundPlayerFf
/* 8039D770 003993D0 3B 39 00 01 */ addi r25, r25, 1
lbl_8039D774:
/* 8039D774 003993D4 80 7D 05 D0 */ lwz r3, 0x5d0(r29)
diff --git a/asm/text_7.s b/asm/text_7.s
index ecf2ed3..4507719 100644
--- a/asm/text_7.s
+++ b/asm/text_7.s
@@ -58396,7 +58396,7 @@ func_802554A0:
/* 802554B4 00251114 80 63 00 04 */ lwz r3, 4(r3)
/* 802554B8 00251118 48 12 43 F5 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 802554BC 0025111C 7F E4 FB 78 */ mr r4, r31
-/* 802554C0 00251120 48 12 59 A9 */ bl func_8037AE68
+/* 802554C0 00251120 48 12 59 A9 */ bl StopAllSound__Q34nw4r3snd11SoundPlayerFi
/* 802554C4 00251124 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802554C8 00251128 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802554CC 0025112C 7C 08 03 A6 */ mtlr r0
@@ -58416,7 +58416,7 @@ func_802554D8:
/* 802554F8 00251158 48 12 43 B5 */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 802554FC 0025115C 7F C4 F3 78 */ mr r4, r30
/* 80255500 00251160 7F E5 FB 78 */ mr r5, r31
-/* 80255504 00251164 48 12 59 E9 */ bl func_8037AEEC
+/* 80255504 00251164 48 12 59 E9 */ bl PauseAllSound__Q34nw4r3snd11SoundPlayerFbi
/* 80255508 00251168 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8025550C 0025116C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80255510 00251170 83 C1 00 08 */ lwz r30, 8(r1)
@@ -58436,7 +58436,7 @@ func_80255520:
/* 8025553C 0025119C 41 82 00 10 */ beq lbl_8025554C
/* 80255540 002511A0 48 12 43 6D */ bl GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
/* 80255544 002511A4 FC 20 F8 90 */ fmr f1, f31
-/* 80255548 002511A8 48 12 5A 21 */ bl func_8037AF68
+/* 80255548 002511A8 48 12 5A 21 */ bl SetVolume__Q34nw4r3snd11SoundPlayerFf
lbl_8025554C:
/* 8025554C 002511AC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80255550 002511B0 CB E1 00 08 */ lfd f31, 8(r1)
diff --git a/obj_files.mk b/obj_files.mk
index 83ceac4..7f69b70 100644
--- a/obj_files.mk
+++ b/obj_files.mk
@@ -145,6 +145,7 @@ TEXT_O_FILES := \
$(BUILD_DIR)/asm/nw4r/snd/snd_SoundArchivePlayer.o \
$(BUILD_DIR)/asm/nw4r/snd/snd_SoundHandle.o \
$(BUILD_DIR)/asm/nw4r/snd/snd_SoundHeap.o \
+ $(BUILD_DIR)/asm/nw4r/snd/snd_SoundPlayer.o \
$(BUILD_DIR)/asm/text_10_6.o \
$(BUILD_DIR)/asm/text_11.o