1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global __ct__Q34nw4r3snd18SoundArchivePlayerFv
__ct__Q34nw4r3snd18SoundArchivePlayerFv:
/* 803789A0 00374600 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803789A4 00374604 7C 08 02 A6 */ mflr r0
/* 803789A8 00374608 3C E0 80 45 */ lis r7, lbl_8044CE68@ha
/* 803789AC 0037460C 3C A0 80 45 */ lis r5, lbl_8044CEA8@ha
/* 803789B0 00374610 90 01 00 14 */ stw r0, 0x14(r1)
/* 803789B4 00374614 38 E7 CE 68 */ addi r7, r7, lbl_8044CE68@l
/* 803789B8 00374618 3C 80 80 45 */ lis r4, lbl_8044CE98@ha
/* 803789BC 0037461C 39 03 00 40 */ addi r8, r3, 0x40
/* 803789C0 00374620 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803789C4 00374624 3B E0 00 00 */ li r31, 0
/* 803789C8 00374628 38 C7 00 14 */ addi r6, r7, 0x14
/* 803789CC 0037462C 38 03 00 B0 */ addi r0, r3, 0xb0
/* 803789D0 00374630 93 C1 00 08 */ stw r30, 8(r1)
/* 803789D4 00374634 38 A5 CE A8 */ addi r5, r5, lbl_8044CEA8@l
/* 803789D8 00374638 38 84 CE 98 */ addi r4, r4, lbl_8044CE98@l
/* 803789DC 0037463C 7C 7E 1B 78 */ mr r30, r3
/* 803789E0 00374640 93 E3 00 40 */ stw r31, 0x40(r3)
/* 803789E4 00374644 93 E3 00 44 */ stw r31, 0x44(r3)
/* 803789E8 00374648 93 E3 00 00 */ stw r31, 0(r3)
/* 803789EC 0037464C 93 E3 00 04 */ stw r31, 4(r3)
/* 803789F0 00374650 90 E3 00 08 */ stw r7, 8(r3)
/* 803789F4 00374654 90 C3 00 0C */ stw r6, 0xc(r3)
/* 803789F8 00374658 93 E3 00 10 */ stw r31, 0x10(r3)
/* 803789FC 0037465C 93 E3 00 14 */ stw r31, 0x14(r3)
/* 80378A00 00374660 93 E3 00 18 */ stw r31, 0x18(r3)
/* 80378A04 00374664 90 03 00 1C */ stw r0, 0x1c(r3)
/* 80378A08 00374668 90 A3 00 20 */ stw r5, 0x20(r3)
/* 80378A0C 0037466C 90 63 00 24 */ stw r3, 0x24(r3)
/* 80378A10 00374670 90 83 00 28 */ stw r4, 0x28(r3)
/* 80378A14 00374674 90 63 00 2C */ stw r3, 0x2c(r3)
/* 80378A18 00374678 93 E3 00 30 */ stw r31, 0x30(r3)
/* 80378A1C 0037467C 93 E3 00 34 */ stw r31, 0x34(r3)
/* 80378A20 00374680 93 E3 00 38 */ stw r31, 0x38(r3)
/* 80378A24 00374684 93 E3 00 3C */ stw r31, 0x3c(r3)
/* 80378A28 00374688 91 03 00 40 */ stw r8, 0x40(r3)
/* 80378A2C 0037468C 91 03 00 44 */ stw r8, 0x44(r3)
/* 80378A30 00374690 38 63 00 48 */ addi r3, r3, 0x48
/* 80378A34 00374694 4B EF 6E DD */ bl OSInitMutex
/* 80378A38 00374698 93 FE 00 68 */ stw r31, 0x68(r30)
/* 80378A3C 0037469C 38 9E 00 68 */ addi r4, r30, 0x68
/* 80378A40 003746A0 38 7E 00 70 */ addi r3, r30, 0x70
/* 80378A44 003746A4 93 FE 00 6C */ stw r31, 0x6c(r30)
/* 80378A48 003746A8 93 FE 00 60 */ stw r31, 0x60(r30)
/* 80378A4C 003746AC 93 FE 00 64 */ stw r31, 0x64(r30)
/* 80378A50 003746B0 90 9E 00 68 */ stw r4, 0x68(r30)
/* 80378A54 003746B4 90 9E 00 6C */ stw r4, 0x6c(r30)
/* 80378A58 003746B8 4B EF 6E B9 */ bl OSInitMutex
/* 80378A5C 003746BC 93 FE 00 90 */ stw r31, 0x90(r30)
/* 80378A60 003746C0 38 9E 00 90 */ addi r4, r30, 0x90
/* 80378A64 003746C4 38 7E 00 98 */ addi r3, r30, 0x98
/* 80378A68 003746C8 93 FE 00 94 */ stw r31, 0x94(r30)
/* 80378A6C 003746CC 93 FE 00 88 */ stw r31, 0x88(r30)
/* 80378A70 003746D0 93 FE 00 8C */ stw r31, 0x8c(r30)
/* 80378A74 003746D4 90 9E 00 90 */ stw r4, 0x90(r30)
/* 80378A78 003746D8 90 9E 00 94 */ stw r4, 0x94(r30)
/* 80378A7C 003746DC 4B EF 6E 95 */ bl OSInitMutex
/* 80378A80 003746E0 3C 80 80 45 */ lis r4, lbl_8044CD08@ha
/* 80378A84 003746E4 3C 60 80 45 */ lis r3, lbl_8044CCE8@ha
/* 80378A88 003746E8 38 84 CD 08 */ addi r4, r4, lbl_8044CD08@l
/* 80378A8C 003746EC 38 1E 00 D4 */ addi r0, r30, 0xd4
/* 80378A90 003746F0 38 63 CC E8 */ addi r3, r3, lbl_8044CCE8@l
/* 80378A94 003746F4 90 9E 00 B0 */ stw r4, 0xb0(r30)
/* 80378A98 003746F8 90 1E 00 B4 */ stw r0, 0xb4(r30)
/* 80378A9C 003746FC 93 FE 00 B8 */ stw r31, 0xb8(r30)
/* 80378AA0 00374700 90 7E 00 D4 */ stw r3, 0xd4(r30)
/* 80378AA4 00374704 93 FE 00 D8 */ stw r31, 0xd8(r30)
/* 80378AA8 00374708 93 FE 00 DC */ stw r31, 0xdc(r30)
/* 80378AAC 0037470C 4B FF 67 AD */ bl GetInstance__Q44nw4r3snd6detail22DisposeCallbackManagerFv
/* 80378AB0 00374710 7F C4 F3 78 */ mr r4, r30
/* 80378AB4 00374714 4B FF 68 A1 */ bl __dt__Q34nw4r2ut47LinkList$0Q44nw4r3snd6detail15DisposeCallback$40$1Fv
/* 80378AB8 00374718 7F C3 F3 78 */ mr r3, r30
/* 80378ABC 0037471C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378AC0 00374720 83 C1 00 08 */ lwz r30, 8(r1)
/* 80378AC4 00374724 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378AC8 00374728 7C 08 03 A6 */ mtlr r0
/* 80378ACC 0037472C 38 21 00 10 */ addi r1, r1, 0x10
/* 80378AD0 00374730 4E 80 00 20 */ blr
.global __dt__Q44nw4r3snd6detail14NoteOnCallbackFv
__dt__Q44nw4r3snd6detail14NoteOnCallbackFv:
/* 80378AD4 00374734 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80378AD8 00374738 7C 08 02 A6 */ mflr r0
/* 80378ADC 0037473C 2C 03 00 00 */ cmpwi r3, 0
/* 80378AE0 00374740 90 01 00 14 */ stw r0, 0x14(r1)
/* 80378AE4 00374744 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80378AE8 00374748 7C 7F 1B 78 */ mr r31, r3
/* 80378AEC 0037474C 41 82 00 10 */ beq lbl_80378AFC
/* 80378AF0 00374750 2C 04 00 00 */ cmpwi r4, 0
/* 80378AF4 00374754 40 81 00 08 */ ble lbl_80378AFC
/* 80378AF8 00374758 4B E6 1F C1 */ bl __dl__FPv
lbl_80378AFC:
/* 80378AFC 0037475C 7F E3 FB 78 */ mr r3, r31
/* 80378B00 00374760 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378B04 00374764 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378B08 00374768 7C 08 03 A6 */ mtlr r0
/* 80378B0C 0037476C 38 21 00 10 */ addi r1, r1, 0x10
/* 80378B10 00374770 4E 80 00 20 */ blr
.global __dt__Q54nw4r3snd6detail9WsdPlayer11WsdCallbackFv
__dt__Q54nw4r3snd6detail9WsdPlayer11WsdCallbackFv:
/* 80378B14 00374774 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80378B18 00374778 7C 08 02 A6 */ mflr r0
/* 80378B1C 0037477C 2C 03 00 00 */ cmpwi r3, 0
/* 80378B20 00374780 90 01 00 14 */ stw r0, 0x14(r1)
/* 80378B24 00374784 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80378B28 00374788 7C 7F 1B 78 */ mr r31, r3
/* 80378B2C 0037478C 41 82 00 10 */ beq lbl_80378B3C
/* 80378B30 00374790 2C 04 00 00 */ cmpwi r4, 0
/* 80378B34 00374794 40 81 00 08 */ ble lbl_80378B3C
/* 80378B38 00374798 4B E6 1F 81 */ bl __dl__FPv
lbl_80378B3C:
/* 80378B3C 0037479C 7F E3 FB 78 */ mr r3, r31
/* 80378B40 003747A0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378B44 003747A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378B48 003747A8 7C 08 03 A6 */ mtlr r0
/* 80378B4C 003747AC 38 21 00 10 */ addi r1, r1, 0x10
/* 80378B50 003747B0 4E 80 00 20 */ blr
.global __ct__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv
__ct__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv:
/* 80378B54 003747B4 38 00 00 00 */ li r0, 0
/* 80378B58 003747B8 38 83 00 04 */ addi r4, r3, 4
/* 80378B5C 003747BC 90 03 00 04 */ stw r0, 4(r3)
/* 80378B60 003747C0 90 03 00 08 */ stw r0, 8(r3)
/* 80378B64 003747C4 90 03 00 00 */ stw r0, 0(r3)
/* 80378B68 003747C8 90 83 00 04 */ stw r4, 4(r3)
/* 80378B6C 003747CC 90 83 00 08 */ stw r4, 8(r3)
/* 80378B70 003747D0 4E 80 00 20 */ blr
.global __dt__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv
__dt__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv:
/* 80378B74 003747D4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80378B78 003747D8 7C 08 02 A6 */ mflr r0
/* 80378B7C 003747DC 2C 03 00 00 */ cmpwi r3, 0
/* 80378B80 003747E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80378B84 003747E4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80378B88 003747E8 7C 9F 23 78 */ mr r31, r4
/* 80378B8C 003747EC 93 C1 00 08 */ stw r30, 8(r1)
/* 80378B90 003747F0 7C 7E 1B 78 */ mr r30, r3
/* 80378B94 003747F4 41 82 00 1C */ beq lbl_80378BB0
/* 80378B98 003747F8 38 80 00 00 */ li r4, 0
/* 80378B9C 003747FC 4B FE 9F 9D */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
/* 80378BA0 00374800 2C 1F 00 00 */ cmpwi r31, 0
/* 80378BA4 00374804 40 81 00 0C */ ble lbl_80378BB0
/* 80378BA8 00374808 7F C3 F3 78 */ mr r3, r30
/* 80378BAC 0037480C 4B E6 1F 0D */ bl __dl__FPv
lbl_80378BB0:
/* 80378BB0 00374810 7F C3 F3 78 */ mr r3, r30
/* 80378BB4 00374814 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378BB8 00374818 83 C1 00 08 */ lwz r30, 8(r1)
/* 80378BBC 0037481C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378BC0 00374820 7C 08 03 A6 */ mtlr r0
/* 80378BC4 00374824 38 21 00 10 */ addi r1, r1, 0x10
/* 80378BC8 00374828 4E 80 00 20 */ blr
.global __ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv
__ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv:
/* 80378BCC 0037482C 38 00 00 00 */ li r0, 0
/* 80378BD0 00374830 38 83 00 04 */ addi r4, r3, 4
/* 80378BD4 00374834 90 03 00 04 */ stw r0, 4(r3)
/* 80378BD8 00374838 90 03 00 08 */ stw r0, 8(r3)
/* 80378BDC 0037483C 90 03 00 00 */ stw r0, 0(r3)
/* 80378BE0 00374840 90 83 00 04 */ stw r4, 4(r3)
/* 80378BE4 00374844 90 83 00 08 */ stw r4, 8(r3)
/* 80378BE8 00374848 4E 80 00 20 */ blr
.global __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv
__dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv:
/* 80378BEC 0037484C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80378BF0 00374850 7C 08 02 A6 */ mflr r0
/* 80378BF4 00374854 2C 03 00 00 */ cmpwi r3, 0
/* 80378BF8 00374858 90 01 00 14 */ stw r0, 0x14(r1)
/* 80378BFC 0037485C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80378C00 00374860 7C 9F 23 78 */ mr r31, r4
/* 80378C04 00374864 93 C1 00 08 */ stw r30, 8(r1)
/* 80378C08 00374868 7C 7E 1B 78 */ mr r30, r3
/* 80378C0C 0037486C 41 82 00 1C */ beq lbl_80378C28
/* 80378C10 00374870 38 80 00 00 */ li r4, 0
/* 80378C14 00374874 4B FE 9F 25 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
/* 80378C18 00374878 2C 1F 00 00 */ cmpwi r31, 0
/* 80378C1C 0037487C 40 81 00 0C */ ble lbl_80378C28
/* 80378C20 00374880 7F C3 F3 78 */ mr r3, r30
/* 80378C24 00374884 4B E6 1E 95 */ bl __dl__FPv
lbl_80378C28:
/* 80378C28 00374888 7F C3 F3 78 */ mr r3, r30
/* 80378C2C 0037488C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378C30 00374890 83 C1 00 08 */ lwz r30, 8(r1)
/* 80378C34 00374894 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378C38 00374898 7C 08 03 A6 */ mtlr r0
/* 80378C3C 0037489C 38 21 00 10 */ addi r1, r1, 0x10
/* 80378C40 003748A0 4E 80 00 20 */ blr
.global __ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv
__ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv:
/* 80378C44 003748A4 38 00 00 00 */ li r0, 0
/* 80378C48 003748A8 38 83 00 04 */ addi r4, r3, 4
/* 80378C4C 003748AC 90 03 00 04 */ stw r0, 4(r3)
/* 80378C50 003748B0 90 03 00 08 */ stw r0, 8(r3)
/* 80378C54 003748B4 90 03 00 00 */ stw r0, 0(r3)
/* 80378C58 003748B8 90 83 00 04 */ stw r4, 4(r3)
/* 80378C5C 003748BC 90 83 00 08 */ stw r4, 8(r3)
/* 80378C60 003748C0 4E 80 00 20 */ blr
.global __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv
__dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv:
/* 80378C64 003748C4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80378C68 003748C8 7C 08 02 A6 */ mflr r0
/* 80378C6C 003748CC 2C 03 00 00 */ cmpwi r3, 0
/* 80378C70 003748D0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80378C74 003748D4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80378C78 003748D8 7C 9F 23 78 */ mr r31, r4
/* 80378C7C 003748DC 93 C1 00 08 */ stw r30, 8(r1)
/* 80378C80 003748E0 7C 7E 1B 78 */ mr r30, r3
/* 80378C84 003748E4 41 82 00 1C */ beq lbl_80378CA0
/* 80378C88 003748E8 38 80 00 00 */ li r4, 0
/* 80378C8C 003748EC 4B FE 9E AD */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
/* 80378C90 003748F0 2C 1F 00 00 */ cmpwi r31, 0
/* 80378C94 003748F4 40 81 00 0C */ ble lbl_80378CA0
/* 80378C98 003748F8 7F C3 F3 78 */ mr r3, r30
/* 80378C9C 003748FC 4B E6 1E 1D */ bl __dl__FPv
lbl_80378CA0:
/* 80378CA0 00374900 7F C3 F3 78 */ mr r3, r30
/* 80378CA4 00374904 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378CA8 00374908 83 C1 00 08 */ lwz r30, 8(r1)
/* 80378CAC 0037490C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378CB0 00374910 7C 08 03 A6 */ mtlr r0
/* 80378CB4 00374914 38 21 00 10 */ addi r1, r1, 0x10
/* 80378CB8 00374918 4E 80 00 20 */ blr
.global __dt__Q34nw4r3snd18SoundArchivePlayerFv
__dt__Q34nw4r3snd18SoundArchivePlayerFv:
/* 80378CBC 0037491C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80378CC0 00374920 7C 08 02 A6 */ mflr r0
/* 80378CC4 00374924 2C 03 00 00 */ cmpwi r3, 0
/* 80378CC8 00374928 90 01 00 14 */ stw r0, 0x14(r1)
/* 80378CCC 0037492C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80378CD0 00374930 7C 9F 23 78 */ mr r31, r4
/* 80378CD4 00374934 93 C1 00 08 */ stw r30, 8(r1)
/* 80378CD8 00374938 7C 7E 1B 78 */ mr r30, r3
/* 80378CDC 0037493C 41 82 00 7C */ beq lbl_80378D58
/* 80378CE0 00374940 3C 80 80 45 */ lis r4, lbl_8044CE68@ha
/* 80378CE4 00374944 38 84 CE 68 */ addi r4, r4, lbl_8044CE68@l
/* 80378CE8 00374948 38 04 00 14 */ addi r0, r4, 0x14
/* 80378CEC 0037494C 90 83 00 08 */ stw r4, 8(r3)
/* 80378CF0 00374950 90 03 00 0C */ stw r0, 0xc(r3)
/* 80378CF4 00374954 4B FF 65 65 */ bl GetInstance__Q44nw4r3snd6detail22DisposeCallbackManagerFv
/* 80378CF8 00374958 7F C4 F3 78 */ mr r4, r30
/* 80378CFC 0037495C 4B FF 66 B1 */ bl __ct__Q44nw4r3snd6detail22DisposeCallbackManagerFv
/* 80378D00 00374960 34 1E 00 88 */ addic. r0, r30, 0x88
/* 80378D04 00374964 41 82 00 14 */ beq lbl_80378D18
/* 80378D08 00374968 34 7E 00 8C */ addic. r3, r30, 0x8c
/* 80378D0C 0037496C 41 82 00 0C */ beq lbl_80378D18
/* 80378D10 00374970 38 80 00 00 */ li r4, 0
/* 80378D14 00374974 4B FE 9E 25 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
lbl_80378D18:
/* 80378D18 00374978 34 1E 00 60 */ addic. r0, r30, 0x60
/* 80378D1C 0037497C 41 82 00 14 */ beq lbl_80378D30
/* 80378D20 00374980 34 7E 00 64 */ addic. r3, r30, 0x64
/* 80378D24 00374984 41 82 00 0C */ beq lbl_80378D30
/* 80378D28 00374988 38 80 00 00 */ li r4, 0
/* 80378D2C 0037498C 4B FE 9E 0D */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
lbl_80378D30:
/* 80378D30 00374990 34 1E 00 38 */ addic. r0, r30, 0x38
/* 80378D34 00374994 41 82 00 14 */ beq lbl_80378D48
/* 80378D38 00374998 34 7E 00 3C */ addic. r3, r30, 0x3c
/* 80378D3C 0037499C 41 82 00 0C */ beq lbl_80378D48
/* 80378D40 003749A0 38 80 00 00 */ li r4, 0
/* 80378D44 003749A4 4B FE 9D F5 */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
lbl_80378D48:
/* 80378D48 003749A8 2C 1F 00 00 */ cmpwi r31, 0
/* 80378D4C 003749AC 40 81 00 0C */ ble lbl_80378D58
/* 80378D50 003749B0 7F C3 F3 78 */ mr r3, r30
/* 80378D54 003749B4 4B E6 1D 65 */ bl __dl__FPv
lbl_80378D58:
/* 80378D58 003749B8 7F C3 F3 78 */ mr r3, r30
/* 80378D5C 003749BC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80378D60 003749C0 83 C1 00 08 */ lwz r30, 8(r1)
/* 80378D64 003749C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80378D68 003749C8 7C 08 03 A6 */ mtlr r0
/* 80378D6C 003749CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80378D70 003749D0 4E 80 00 20 */ blr
.global Setup__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePvUlPvUl
Setup__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePvUlPvUl:
/* 80378D74 003749D4 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80378D78 003749D8 7C 08 02 A6 */ mflr r0
/* 80378D7C 003749DC 90 01 00 64 */ stw r0, 0x64(r1)
/* 80378D80 003749E0 39 61 00 60 */ addi r11, r1, 0x60
/* 80378D84 003749E4 4B E4 E3 A5 */ bl _savegpr_27
/* 80378D88 003749E8 7C 7B 1B 78 */ mr r27, r3
/* 80378D8C 003749EC 7C 9C 23 78 */ mr r28, r4
/* 80378D90 003749F0 7C FD 3B 78 */ mr r29, r7
/* 80378D94 003749F4 7D 1E 43 78 */ mr r30, r8
/* 80378D98 003749F8 48 00 03 4D */ bl SetupMram__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePvUl
/* 80378D9C 003749FC 2C 03 00 00 */ cmpwi r3, 0
/* 80378DA0 00374A00 40 82 00 0C */ bne lbl_80378DAC
/* 80378DA4 00374A04 38 60 00 00 */ li r3, 0
/* 80378DA8 00374A08 48 00 00 84 */ b lbl_80378E2C
lbl_80378DAC:
/* 80378DAC 00374A0C 7F 83 E3 78 */ mr r3, r28
/* 80378DB0 00374A10 38 81 00 24 */ addi r4, r1, 0x24
/* 80378DB4 00374A14 3B E0 00 00 */ li r31, 0
/* 80378DB8 00374A18 4B FF E2 C5 */ bl func_8037707C
/* 80378DBC 00374A1C 2C 03 00 00 */ cmpwi r3, 0
/* 80378DC0 00374A20 41 82 00 08 */ beq lbl_80378DC8
/* 80378DC4 00374A24 83 E1 00 34 */ lwz r31, 0x34(r1)
lbl_80378DC8:
/* 80378DC8 00374A28 3C 60 00 01 */ lis r3, 0x0000A000@ha
/* 80378DCC 00374A2C 38 03 A0 00 */ addi r0, r3, 0x0000A000@l
/* 80378DD0 00374A30 7C 1F 01 D6 */ mullw r0, r31, r0
/* 80378DD4 00374A34 7C 1E 00 40 */ cmplw r30, r0
/* 80378DD8 00374A38 40 80 00 0C */ bge lbl_80378DE4
/* 80378DDC 00374A3C 38 00 00 00 */ li r0, 0
/* 80378DE0 00374A40 48 00 00 38 */ b lbl_80378E18
lbl_80378DE4:
/* 80378DE4 00374A44 7F 83 E3 78 */ mr r3, r28
/* 80378DE8 00374A48 38 81 00 08 */ addi r4, r1, 8
/* 80378DEC 00374A4C 3B E0 00 00 */ li r31, 0
/* 80378DF0 00374A50 4B FF E2 8D */ bl func_8037707C
/* 80378DF4 00374A54 2C 03 00 00 */ cmpwi r3, 0
/* 80378DF8 00374A58 41 82 00 08 */ beq lbl_80378E00
/* 80378DFC 00374A5C 83 E1 00 18 */ lwz r31, 0x18(r1)
lbl_80378E00:
/* 80378E00 00374A60 7F A4 EB 78 */ mr r4, r29
/* 80378E04 00374A64 7F C5 F3 78 */ mr r5, r30
/* 80378E08 00374A68 7F E6 FB 78 */ mr r6, r31
/* 80378E0C 00374A6C 38 7B 00 BC */ addi r3, r27, 0xbc
/* 80378E10 00374A70 48 00 3C B5 */ bl Setup__Q44nw4r3snd6detail14StrmBufferPoolFPvUli
/* 80378E14 00374A74 38 00 00 01 */ li r0, 1
lbl_80378E18:
/* 80378E18 00374A78 2C 00 00 00 */ cmpwi r0, 0
/* 80378E1C 00374A7C 40 82 00 0C */ bne lbl_80378E28
/* 80378E20 00374A80 38 60 00 00 */ li r3, 0
/* 80378E24 00374A84 48 00 00 08 */ b lbl_80378E2C
lbl_80378E28:
/* 80378E28 00374A88 38 60 00 01 */ li r3, 1
lbl_80378E2C:
/* 80378E2C 00374A8C 39 61 00 60 */ addi r11, r1, 0x60
/* 80378E30 00374A90 4B E4 E3 45 */ bl _restgpr_27
/* 80378E34 00374A94 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80378E38 00374A98 7C 08 03 A6 */ mtlr r0
/* 80378E3C 00374A9C 38 21 00 60 */ addi r1, r1, 0x60
/* 80378E40 00374AA0 4E 80 00 20 */ blr
.global Shutdown__Q34nw4r3snd18SoundArchivePlayerFv
Shutdown__Q34nw4r3snd18SoundArchivePlayerFv:
/* 80378E44 00374AA4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80378E48 00374AA8 7C 08 02 A6 */ mflr r0
/* 80378E4C 00374AAC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80378E50 00374AB0 39 61 00 20 */ addi r11, r1, 0x20
/* 80378E54 00374AB4 4B E4 E2 D5 */ bl _savegpr_27
/* 80378E58 00374AB8 38 00 00 00 */ li r0, 0
/* 80378E5C 00374ABC 7C 7B 1B 78 */ mr r27, r3
/* 80378E60 00374AC0 90 03 00 10 */ stw r0, 0x10(r3)
/* 80378E64 00374AC4 3B A0 00 00 */ li r29, 0
/* 80378E68 00374AC8 3B 80 00 00 */ li r28, 0
/* 80378E6C 00374ACC 90 03 00 14 */ stw r0, 0x14(r3)
/* 80378E70 00374AD0 90 03 00 18 */ stw r0, 0x18(r3)
/* 80378E74 00374AD4 90 03 00 1C */ stw r0, 0x1c(r3)
/* 80378E78 00374AD8 48 00 00 1C */ b lbl_80378E94
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 __dt__Q34nw4r3snd11SoundPlayerFv
/* 80378E8C 00374AEC 3B 9C 00 60 */ addi r28, r28, 0x60
/* 80378E90 00374AF0 3B BD 00 01 */ addi r29, r29, 1
lbl_80378E94:
/* 80378E94 00374AF4 80 1B 00 30 */ lwz r0, 0x30(r27)
/* 80378E98 00374AF8 7C 1D 00 40 */ cmplw r29, r0
/* 80378E9C 00374AFC 41 80 FF E0 */ blt lbl_80378E7C
/* 80378EA0 00374B00 3B C0 00 00 */ li r30, 0
/* 80378EA4 00374B04 3B FB 00 48 */ addi r31, r27, 0x48
/* 80378EA8 00374B08 93 DB 00 30 */ stw r30, 0x30(r27)
/* 80378EAC 00374B0C 7F E3 FB 78 */ mr r3, r31
/* 80378EB0 00374B10 83 9B 00 DC */ lwz r28, 0xdc(r27)
/* 80378EB4 00374B14 93 DB 00 34 */ stw r30, 0x34(r27)
/* 80378EB8 00374B18 83 BB 00 D8 */ lwz r29, 0xd8(r27)
/* 80378EBC 00374B1C 4B EF 6A 8D */ bl OSLockMutex
/* 80378EC0 00374B20 7F A4 EB 78 */ mr r4, r29
/* 80378EC4 00374B24 7F 85 E3 78 */ mr r5, r28
/* 80378EC8 00374B28 38 7B 00 38 */ addi r3, r27, 0x38
/* 80378ECC 00374B2C 4B FF 8B BD */ bl DestroyImpl__Q44nw4r3snd6detail8PoolImplFPvUl
/* 80378ED0 00374B30 7F E3 FB 78 */ mr r3, r31
/* 80378ED4 00374B34 4B EF 6B 51 */ bl OSUnlockMutex
/* 80378ED8 00374B38 3B FB 00 70 */ addi r31, r27, 0x70
/* 80378EDC 00374B3C 83 BB 00 DC */ lwz r29, 0xdc(r27)
/* 80378EE0 00374B40 83 9B 00 D8 */ lwz r28, 0xd8(r27)
/* 80378EE4 00374B44 7F E3 FB 78 */ mr r3, r31
/* 80378EE8 00374B48 4B EF 6A 61 */ bl OSLockMutex
/* 80378EEC 00374B4C 7F 84 E3 78 */ mr r4, r28
/* 80378EF0 00374B50 7F A5 EB 78 */ mr r5, r29
/* 80378EF4 00374B54 38 7B 00 60 */ addi r3, r27, 0x60
/* 80378EF8 00374B58 4B FF 8B 91 */ bl DestroyImpl__Q44nw4r3snd6detail8PoolImplFPvUl
/* 80378EFC 00374B5C 7F E3 FB 78 */ mr r3, r31
/* 80378F00 00374B60 4B EF 6B 25 */ bl OSUnlockMutex
/* 80378F04 00374B64 3B FB 00 98 */ addi r31, r27, 0x98
/* 80378F08 00374B68 83 BB 00 DC */ lwz r29, 0xdc(r27)
/* 80378F0C 00374B6C 83 9B 00 D8 */ lwz r28, 0xd8(r27)
/* 80378F10 00374B70 7F E3 FB 78 */ mr r3, r31
/* 80378F14 00374B74 4B EF 6A 35 */ bl OSLockMutex
/* 80378F18 00374B78 7F 84 E3 78 */ mr r4, r28
/* 80378F1C 00374B7C 7F A5 EB 78 */ mr r5, r29
/* 80378F20 00374B80 38 7B 00 88 */ addi r3, r27, 0x88
/* 80378F24 00374B84 4B FF 8B 65 */ bl DestroyImpl__Q44nw4r3snd6detail8PoolImplFPvUl
/* 80378F28 00374B88 7F E3 FB 78 */ mr r3, r31
/* 80378F2C 00374B8C 4B EF 6A F9 */ bl OSUnlockMutex
/* 80378F30 00374B90 80 9B 00 D8 */ lwz r4, 0xd8(r27)
/* 80378F34 00374B94 38 7B 00 B0 */ addi r3, r27, 0xb0
/* 80378F38 00374B98 80 BB 00 DC */ lwz r5, 0xdc(r27)
/* 80378F3C 00374B9C 4B FF 9F BD */ bl Destroy__Q44nw4r3snd6detail20MmlSeqTrackAllocatorFPvUl
/* 80378F40 00374BA0 38 7B 00 BC */ addi r3, r27, 0xbc
/* 80378F44 00374BA4 48 00 3C 01 */ bl Shutdown__Q44nw4r3snd6detail14StrmBufferPoolFv
/* 80378F48 00374BA8 93 DB 00 D8 */ stw r30, 0xd8(r27)
/* 80378F4C 00374BAC 39 61 00 20 */ addi r11, r1, 0x20
/* 80378F50 00374BB0 93 DB 00 DC */ stw r30, 0xdc(r27)
/* 80378F54 00374BB4 4B E4 E2 21 */ bl _restgpr_27
/* 80378F58 00374BB8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80378F5C 00374BBC 7C 08 03 A6 */ mtlr r0
/* 80378F60 00374BC0 38 21 00 20 */ addi r1, r1, 0x20
/* 80378F64 00374BC4 4E 80 00 20 */ blr
.global GetRequiredMemSize__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchive
GetRequiredMemSize__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchive:
/* 80378F68 00374BC8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80378F6C 00374BCC 7C 08 02 A6 */ mflr r0
/* 80378F70 00374BD0 90 01 00 44 */ stw r0, 0x44(r1)
/* 80378F74 00374BD4 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80378F78 00374BD8 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80378F7C 00374BDC 93 A1 00 34 */ stw r29, 0x34(r1)
/* 80378F80 00374BE0 93 81 00 30 */ stw r28, 0x30(r1)
/* 80378F84 00374BE4 7C 9C 23 78 */ mr r28, r4
/* 80378F88 00374BE8 7F 83 E3 78 */ mr r3, r28
/* 80378F8C 00374BEC 4B FF E0 A1 */ bl func_8037702C
/* 80378F90 00374BF0 1C 83 00 60 */ mulli r4, r3, 0x60
/* 80378F94 00374BF4 7C 7E 1B 78 */ mr r30, r3
/* 80378F98 00374BF8 3B A0 00 00 */ li r29, 0
/* 80378F9C 00374BFC 38 04 00 03 */ addi r0, r4, 3
/* 80378FA0 00374C00 54 1F 00 3A */ rlwinm r31, r0, 0, 0, 0x1d
/* 80378FA4 00374C04 48 00 00 4C */ b lbl_80378FF0
lbl_80378FA8:
/* 80378FA8 00374C08 7F 83 E3 78 */ mr r3, r28
/* 80378FAC 00374C0C 7F A4 EB 78 */ mr r4, r29
/* 80378FB0 00374C10 38 A1 00 08 */ addi r5, r1, 8
/* 80378FB4 00374C14 4B FF E0 C1 */ bl func_80377074
/* 80378FB8 00374C18 2C 03 00 00 */ cmpwi r3, 0
/* 80378FBC 00374C1C 41 82 00 30 */ beq lbl_80378FEC
/* 80378FC0 00374C20 80 61 00 0C */ lwz r3, 0xc(r1)
/* 80378FC4 00374C24 80 81 00 08 */ lwz r4, 8(r1)
/* 80378FC8 00374C28 38 03 00 3F */ addi r0, r3, 0x3f
/* 80378FCC 00374C2C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 80378FD0 00374C30 7C 89 03 A6 */ mtctr r4
/* 80378FD4 00374C34 2C 04 00 00 */ cmpwi r4, 0
/* 80378FD8 00374C38 40 81 00 14 */ ble lbl_80378FEC
lbl_80378FDC:
/* 80378FDC 00374C3C 2C 03 00 00 */ cmpwi r3, 0
/* 80378FE0 00374C40 41 82 00 08 */ beq lbl_80378FE8
/* 80378FE4 00374C44 7F FF 02 14 */ add r31, r31, r0
lbl_80378FE8:
/* 80378FE8 00374C48 42 00 FF F4 */ bdnz lbl_80378FDC
lbl_80378FEC:
/* 80378FEC 00374C4C 3B BD 00 01 */ addi r29, r29, 1
lbl_80378FF0:
/* 80378FF0 00374C50 7C 1D F0 40 */ cmplw r29, r30
/* 80378FF4 00374C54 41 80 FF B4 */ blt lbl_80378FA8
/* 80378FF8 00374C58 7F 83 E3 78 */ mr r3, r28
/* 80378FFC 00374C5C 4B FF E0 39 */ bl func_80377034
/* 80379000 00374C60 54 64 18 38 */ slwi r4, r3, 3
/* 80379004 00374C64 7F 83 E3 78 */ mr r3, r28
/* 80379008 00374C68 38 04 00 07 */ addi r0, r4, 7
/* 8037900C 00374C6C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 80379010 00374C70 38 81 00 10 */ addi r4, r1, 0x10
/* 80379014 00374C74 7F FF 02 14 */ add r31, r31, r0
/* 80379018 00374C78 4B FF E0 65 */ bl func_8037707C
/* 8037901C 00374C7C 2C 03 00 00 */ cmpwi r3, 0
/* 80379020 00374C80 41 82 00 54 */ beq lbl_80379074
/* 80379024 00374C84 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80379028 00374C88 80 81 00 18 */ lwz r4, 0x18(r1)
/* 8037902C 00374C8C 1C C0 04 64 */ mulli r6, r0, 0x464
/* 80379030 00374C90 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80379034 00374C94 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80379038 00374C98 1C A4 0B 54 */ mulli r5, r4, 0xb54
/* 8037903C 00374C9C 38 C6 00 03 */ addi r6, r6, 3
/* 80379040 00374CA0 1C 83 01 D4 */ mulli r4, r3, 0x1d4
/* 80379044 00374CA4 54 C3 00 3A */ rlwinm r3, r6, 0, 0, 0x1d
/* 80379048 00374CA8 38 A5 00 03 */ addi r5, r5, 3
/* 8037904C 00374CAC 7F FF 1A 14 */ add r31, r31, r3
/* 80379050 00374CB0 1C 60 00 F0 */ mulli r3, r0, 0xf0
/* 80379054 00374CB4 54 A5 00 3A */ rlwinm r5, r5, 0, 0, 0x1d
/* 80379058 00374CB8 38 04 00 03 */ addi r0, r4, 3
/* 8037905C 00374CBC 7F FF 2A 14 */ add r31, r31, r5
/* 80379060 00374CC0 54 04 00 3A */ rlwinm r4, r0, 0, 0, 0x1d
/* 80379064 00374CC4 38 03 00 03 */ addi r0, r3, 3
/* 80379068 00374CC8 7F FF 22 14 */ add r31, r31, r4
/* 8037906C 00374CCC 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 80379070 00374CD0 7F FF 02 14 */ add r31, r31, r0
lbl_80379074:
/* 80379074 00374CD4 7F E3 FB 78 */ mr r3, r31
/* 80379078 00374CD8 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 8037907C 00374CDC 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80379080 00374CE0 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 80379084 00374CE4 83 81 00 30 */ lwz r28, 0x30(r1)
/* 80379088 00374CE8 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8037908C 00374CEC 7C 08 03 A6 */ mtlr r0
/* 80379090 00374CF0 38 21 00 40 */ addi r1, r1, 0x40
/* 80379094 00374CF4 4E 80 00 20 */ blr
.global GetRequiredStrmBufferSize__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchive
GetRequiredStrmBufferSize__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchive:
/* 80379098 00374CF8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8037909C 00374CFC 7C 08 02 A6 */ mflr r0
/* 803790A0 00374D00 7C 83 23 78 */ mr r3, r4
/* 803790A4 00374D04 90 01 00 34 */ stw r0, 0x34(r1)
/* 803790A8 00374D08 38 81 00 08 */ addi r4, r1, 8
/* 803790AC 00374D0C 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 803790B0 00374D10 3B E0 00 00 */ li r31, 0
/* 803790B4 00374D14 4B FF DF C9 */ bl func_8037707C
/* 803790B8 00374D18 2C 03 00 00 */ cmpwi r3, 0
/* 803790BC 00374D1C 41 82 00 08 */ beq lbl_803790C4
/* 803790C0 00374D20 83 E1 00 18 */ lwz r31, 0x18(r1)
lbl_803790C4:
/* 803790C4 00374D24 3C 60 00 01 */ lis r3, 0x0000A000@ha
/* 803790C8 00374D28 38 03 A0 00 */ addi r0, r3, 0x0000A000@l
/* 803790CC 00374D2C 7C 7F 01 D6 */ mullw r3, r31, r0
/* 803790D0 00374D30 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 803790D4 00374D34 80 01 00 34 */ lwz r0, 0x34(r1)
/* 803790D8 00374D38 7C 08 03 A6 */ mtlr r0
/* 803790DC 00374D3C 38 21 00 30 */ addi r1, r1, 0x30
/* 803790E0 00374D40 4E 80 00 20 */ blr
.global SetupMram__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePvUl
SetupMram__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePvUl:
/* 803790E4 00374D44 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 803790E8 00374D48 7C 08 02 A6 */ mflr r0
/* 803790EC 00374D4C 90 01 00 54 */ stw r0, 0x54(r1)
/* 803790F0 00374D50 39 61 00 50 */ addi r11, r1, 0x50
/* 803790F4 00374D54 4B E4 E0 25 */ bl _savegpr_23
/* 803790F8 00374D58 90 A1 00 08 */ stw r5, 8(r1)
/* 803790FC 00374D5C 7F E5 32 14 */ add r31, r5, r6
/* 80379100 00374D60 7C BD 2B 78 */ mr r29, r5
/* 80379104 00374D64 7C DE 33 78 */ mr r30, r6
/* 80379108 00374D68 7C 7B 1B 78 */ mr r27, r3
/* 8037910C 00374D6C 7C 9C 23 78 */ mr r28, r4
/* 80379110 00374D70 7F E6 FB 78 */ mr r6, r31
/* 80379114 00374D74 38 A1 00 08 */ addi r5, r1, 8
/* 80379118 00374D78 48 00 02 65 */ bl SetupSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePPvPv
/* 8037911C 00374D7C 2C 03 00 00 */ cmpwi r3, 0
/* 80379120 00374D80 40 82 00 0C */ bne lbl_8037912C
/* 80379124 00374D84 38 60 00 00 */ li r3, 0
/* 80379128 00374D88 48 00 02 3C */ b lbl_80379364
lbl_8037912C:
/* 8037912C 00374D8C 7F 83 E3 78 */ mr r3, r28
/* 80379130 00374D90 4B FF DF 05 */ bl func_80377034
/* 80379134 00374D94 54 63 18 38 */ slwi r3, r3, 3
/* 80379138 00374D98 80 A1 00 08 */ lwz r5, 8(r1)
/* 8037913C 00374D9C 38 03 00 04 */ addi r0, r3, 4
/* 80379140 00374DA0 7C 60 2A 14 */ add r3, r0, r5
/* 80379144 00374DA4 38 03 00 03 */ addi r0, r3, 3
/* 80379148 00374DA8 54 04 00 3A */ rlwinm r4, r0, 0, 0, 0x1d
/* 8037914C 00374DAC 7C 1F 20 51 */ subf. r0, r31, r4
/* 80379150 00374DB0 40 81 00 0C */ ble lbl_8037915C
/* 80379154 00374DB4 38 00 00 00 */ li r0, 0
/* 80379158 00374DB8 48 00 00 5C */ b lbl_803791B4
lbl_8037915C:
/* 8037915C 00374DBC 90 BB 00 14 */ stw r5, 0x14(r27)
/* 80379160 00374DC0 7F 83 E3 78 */ mr r3, r28
/* 80379164 00374DC4 90 81 00 08 */ stw r4, 8(r1)
/* 80379168 00374DC8 4B FF DE CD */ bl func_80377034
/* 8037916C 00374DCC 80 BB 00 14 */ lwz r5, 0x14(r27)
/* 80379170 00374DD0 38 C0 00 00 */ li r6, 0
/* 80379174 00374DD4 38 E0 00 00 */ li r7, 0
/* 80379178 00374DD8 38 80 00 00 */ li r4, 0
/* 8037917C 00374DDC 90 65 00 00 */ stw r3, 0(r5)
/* 80379180 00374DE0 48 00 00 20 */ b lbl_803791A0
lbl_80379184:
/* 80379184 00374DE4 7C 63 3A 14 */ add r3, r3, r7
/* 80379188 00374DE8 38 C6 00 01 */ addi r6, r6, 1
/* 8037918C 00374DEC 90 83 00 04 */ stw r4, 4(r3)
/* 80379190 00374DF0 80 1B 00 14 */ lwz r0, 0x14(r27)
/* 80379194 00374DF4 7C 60 3A 14 */ add r3, r0, r7
/* 80379198 00374DF8 38 E7 00 08 */ addi r7, r7, 8
/* 8037919C 00374DFC 90 83 00 08 */ stw r4, 8(r3)
lbl_803791A0:
/* 803791A0 00374E00 80 7B 00 14 */ lwz r3, 0x14(r27)
/* 803791A4 00374E04 80 03 00 00 */ lwz r0, 0(r3)
/* 803791A8 00374E08 7C 06 00 40 */ cmplw r6, r0
/* 803791AC 00374E0C 41 80 FF D8 */ blt lbl_80379184
/* 803791B0 00374E10 38 00 00 01 */ li r0, 1
lbl_803791B4:
/* 803791B4 00374E14 2C 00 00 00 */ cmpwi r0, 0
/* 803791B8 00374E18 40 82 00 0C */ bne lbl_803791C4
/* 803791BC 00374E1C 38 60 00 00 */ li r3, 0
/* 803791C0 00374E20 48 00 01 A4 */ b lbl_80379364
lbl_803791C4:
/* 803791C4 00374E24 7F 83 E3 78 */ mr r3, r28
/* 803791C8 00374E28 38 81 00 0C */ addi r4, r1, 0xc
/* 803791CC 00374E2C 4B FF DE B1 */ bl func_8037707C
/* 803791D0 00374E30 2C 03 00 00 */ cmpwi r3, 0
/* 803791D4 00374E34 41 82 01 80 */ beq lbl_80379354
/* 803791D8 00374E38 80 01 00 0C */ lwz r0, 0xc(r1)
/* 803791DC 00374E3C 82 E1 00 08 */ lwz r23, 8(r1)
/* 803791E0 00374E40 1F 20 04 64 */ mulli r25, r0, 0x464
/* 803791E4 00374E44 7C 79 BA 14 */ add r3, r25, r23
/* 803791E8 00374E48 38 03 00 03 */ addi r0, r3, 3
/* 803791EC 00374E4C 54 18 00 3A */ rlwinm r24, r0, 0, 0, 0x1d
/* 803791F0 00374E50 7C 1F C0 51 */ subf. r0, r31, r24
/* 803791F4 00374E54 40 81 00 0C */ ble lbl_80379200
/* 803791F8 00374E58 38 00 00 00 */ li r0, 0
/* 803791FC 00374E5C 48 00 00 34 */ b lbl_80379230
lbl_80379200:
/* 80379200 00374E60 3B 5B 00 48 */ addi r26, r27, 0x48
/* 80379204 00374E64 7F 43 D3 78 */ mr r3, r26
/* 80379208 00374E68 4B EF 67 41 */ bl OSLockMutex
/* 8037920C 00374E6C 7E E4 BB 78 */ mr r4, r23
/* 80379210 00374E70 7F 25 CB 78 */ mr r5, r25
/* 80379214 00374E74 38 7B 00 38 */ addi r3, r27, 0x38
/* 80379218 00374E78 38 C0 04 64 */ li r6, 0x464
/* 8037921C 00374E7C 4B FF 87 29 */ bl CreateImpl__Q44nw4r3snd6detail8PoolImplFPvUlUl
/* 80379220 00374E80 7F 43 D3 78 */ mr r3, r26
/* 80379224 00374E84 4B EF 68 01 */ bl OSUnlockMutex
/* 80379228 00374E88 93 01 00 08 */ stw r24, 8(r1)
/* 8037922C 00374E8C 38 00 00 01 */ li r0, 1
lbl_80379230:
/* 80379230 00374E90 2C 00 00 00 */ cmpwi r0, 0
/* 80379234 00374E94 40 82 00 0C */ bne lbl_80379240
/* 80379238 00374E98 38 60 00 00 */ li r3, 0
/* 8037923C 00374E9C 48 00 01 28 */ b lbl_80379364
lbl_80379240:
/* 80379240 00374EA0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80379244 00374EA4 82 E1 00 08 */ lwz r23, 8(r1)
/* 80379248 00374EA8 1F 20 0B 54 */ mulli r25, r0, 0xb54
/* 8037924C 00374EAC 7C 79 BA 14 */ add r3, r25, r23
/* 80379250 00374EB0 38 03 00 03 */ addi r0, r3, 3
/* 80379254 00374EB4 54 18 00 3A */ rlwinm r24, r0, 0, 0, 0x1d
/* 80379258 00374EB8 7C 1F C0 51 */ subf. r0, r31, r24
/* 8037925C 00374EBC 40 81 00 0C */ ble lbl_80379268
/* 80379260 00374EC0 38 00 00 00 */ li r0, 0
/* 80379264 00374EC4 48 00 00 34 */ b lbl_80379298
lbl_80379268:
/* 80379268 00374EC8 3B 5B 00 70 */ addi r26, r27, 0x70
/* 8037926C 00374ECC 7F 43 D3 78 */ mr r3, r26
/* 80379270 00374ED0 4B EF 66 D9 */ bl OSLockMutex
/* 80379274 00374ED4 7E E4 BB 78 */ mr r4, r23
/* 80379278 00374ED8 7F 25 CB 78 */ mr r5, r25
/* 8037927C 00374EDC 38 7B 00 60 */ addi r3, r27, 0x60
/* 80379280 00374EE0 38 C0 0B 54 */ li r6, 0xb54
/* 80379284 00374EE4 4B FF 86 C1 */ bl CreateImpl__Q44nw4r3snd6detail8PoolImplFPvUlUl
/* 80379288 00374EE8 7F 43 D3 78 */ mr r3, r26
/* 8037928C 00374EEC 4B EF 67 99 */ bl OSUnlockMutex
/* 80379290 00374EF0 93 01 00 08 */ stw r24, 8(r1)
/* 80379294 00374EF4 38 00 00 01 */ li r0, 1
lbl_80379298:
/* 80379298 00374EF8 2C 00 00 00 */ cmpwi r0, 0
/* 8037929C 00374EFC 40 82 00 0C */ bne lbl_803792A8
/* 803792A0 00374F00 38 60 00 00 */ li r3, 0
/* 803792A4 00374F04 48 00 00 C0 */ b lbl_80379364
lbl_803792A8:
/* 803792A8 00374F08 80 01 00 20 */ lwz r0, 0x20(r1)
/* 803792AC 00374F0C 82 E1 00 08 */ lwz r23, 8(r1)
/* 803792B0 00374F10 1F 20 01 D4 */ mulli r25, r0, 0x1d4
/* 803792B4 00374F14 7C 79 BA 14 */ add r3, r25, r23
/* 803792B8 00374F18 38 03 00 03 */ addi r0, r3, 3
/* 803792BC 00374F1C 54 18 00 3A */ rlwinm r24, r0, 0, 0, 0x1d
/* 803792C0 00374F20 7C 1F C0 51 */ subf. r0, r31, r24
/* 803792C4 00374F24 40 81 00 0C */ ble lbl_803792D0
/* 803792C8 00374F28 38 00 00 00 */ li r0, 0
/* 803792CC 00374F2C 48 00 00 34 */ b lbl_80379300
lbl_803792D0:
/* 803792D0 00374F30 3B 5B 00 98 */ addi r26, r27, 0x98
/* 803792D4 00374F34 7F 43 D3 78 */ mr r3, r26
/* 803792D8 00374F38 4B EF 66 71 */ bl OSLockMutex
/* 803792DC 00374F3C 7E E4 BB 78 */ mr r4, r23
/* 803792E0 00374F40 7F 25 CB 78 */ mr r5, r25
/* 803792E4 00374F44 38 7B 00 88 */ addi r3, r27, 0x88
/* 803792E8 00374F48 38 C0 01 D4 */ li r6, 0x1d4
/* 803792EC 00374F4C 4B FF 86 59 */ bl CreateImpl__Q44nw4r3snd6detail8PoolImplFPvUlUl
/* 803792F0 00374F50 7F 43 D3 78 */ mr r3, r26
/* 803792F4 00374F54 4B EF 67 31 */ bl OSUnlockMutex
/* 803792F8 00374F58 93 01 00 08 */ stw r24, 8(r1)
/* 803792FC 00374F5C 38 00 00 01 */ li r0, 1
lbl_80379300:
/* 80379300 00374F60 2C 00 00 00 */ cmpwi r0, 0
/* 80379304 00374F64 40 82 00 0C */ bne lbl_80379310
/* 80379308 00374F68 38 60 00 00 */ li r3, 0
/* 8037930C 00374F6C 48 00 00 58 */ b lbl_80379364
lbl_80379310:
/* 80379310 00374F70 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80379314 00374F74 80 81 00 08 */ lwz r4, 8(r1)
/* 80379318 00374F78 1C A0 00 F0 */ mulli r5, r0, 0xf0
/* 8037931C 00374F7C 7C 65 22 14 */ add r3, r5, r4
/* 80379320 00374F80 38 03 00 03 */ addi r0, r3, 3
/* 80379324 00374F84 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d
/* 80379328 00374F88 7C 1F 00 51 */ subf. r0, r31, r0
/* 8037932C 00374F8C 40 81 00 0C */ ble lbl_80379338
/* 80379330 00374F90 38 00 00 00 */ li r0, 0
/* 80379334 00374F94 48 00 00 10 */ b lbl_80379344
lbl_80379338:
/* 80379338 00374F98 38 7B 00 B0 */ addi r3, r27, 0xb0
/* 8037933C 00374F9C 4B FF 9B B1 */ bl Create__Q44nw4r3snd6detail20MmlSeqTrackAllocatorFPvUl
/* 80379340 00374FA0 38 00 00 01 */ li r0, 1
lbl_80379344:
/* 80379344 00374FA4 2C 00 00 00 */ cmpwi r0, 0
/* 80379348 00374FA8 40 82 00 0C */ bne lbl_80379354
/* 8037934C 00374FAC 38 60 00 00 */ li r3, 0
/* 80379350 00374FB0 48 00 00 14 */ b lbl_80379364
lbl_80379354:
/* 80379354 00374FB4 93 9B 00 10 */ stw r28, 0x10(r27)
/* 80379358 00374FB8 38 60 00 01 */ li r3, 1
/* 8037935C 00374FBC 93 BB 00 D8 */ stw r29, 0xd8(r27)
/* 80379360 00374FC0 93 DB 00 DC */ stw r30, 0xdc(r27)
lbl_80379364:
/* 80379364 00374FC4 39 61 00 50 */ addi r11, r1, 0x50
/* 80379368 00374FC8 4B E4 DD FD */ bl _restgpr_23
/* 8037936C 00374FCC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80379370 00374FD0 7C 08 03 A6 */ mtlr r0
/* 80379374 00374FD4 38 21 00 50 */ addi r1, r1, 0x50
/* 80379378 00374FD8 4E 80 00 20 */ blr
.global SetupSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePPvPv
SetupSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFPCQ34nw4r3snd12SoundArchivePPvPv:
/* 8037937C 00374FDC 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80379380 00374FE0 7C 08 02 A6 */ mflr r0
/* 80379384 00374FE4 90 01 00 44 */ stw r0, 0x44(r1)
/* 80379388 00374FE8 39 61 00 40 */ addi r11, r1, 0x40
/* 8037938C 00374FEC 4B E4 DD 81 */ bl _savegpr_20
/* 80379390 00374FF0 7C 98 23 78 */ mr r24, r4
/* 80379394 00374FF4 7C 74 1B 78 */ mr r20, r3
/* 80379398 00374FF8 7C B9 2B 78 */ mr r25, r5
/* 8037939C 00374FFC 7C DA 33 78 */ mr r26, r6
/* 803793A0 00375000 7F 03 C3 78 */ mr r3, r24
/* 803793A4 00375004 4B FF DC 89 */ bl func_8037702C
/* 803793A8 00375008 1C 03 00 60 */ mulli r0, r3, 0x60
/* 803793AC 0037500C 83 D9 00 00 */ lwz r30, 0(r25)
/* 803793B0 00375010 7C 7F 1B 78 */ mr r31, r3
/* 803793B4 00375014 7C 80 F2 14 */ add r4, r0, r30
/* 803793B8 00375018 38 04 00 03 */ addi r0, r4, 3
/* 803793BC 0037501C 54 04 00 3A */ rlwinm r4, r0, 0, 0, 0x1d
/* 803793C0 00375020 7C 1A 20 51 */ subf. r0, r26, r4
/* 803793C4 00375024 40 81 00 0C */ ble lbl_803793D0
/* 803793C8 00375028 38 60 00 00 */ li r3, 0
/* 803793CC 0037502C 48 00 01 30 */ b lbl_803794FC
lbl_803793D0:
/* 803793D0 00375030 90 99 00 00 */ stw r4, 0(r25)
/* 803793D4 00375034 3E C0 80 45 */ lis r22, lbl_8044CEB8@ha
/* 803793D8 00375038 3B A0 00 00 */ li r29, 0
/* 803793DC 0037503C 3A E0 00 00 */ li r23, 0
/* 803793E0 00375040 93 D4 00 34 */ stw r30, 0x34(r20)
/* 803793E4 00375044 3A D6 CE B8 */ addi r22, r22, lbl_8044CEB8@l
/* 803793E8 00375048 90 74 00 30 */ stw r3, 0x30(r20)
/* 803793EC 0037504C 48 00 01 04 */ b lbl_803794F0
lbl_803793F0:
/* 803793F0 00375050 2C 1E 00 00 */ cmpwi r30, 0
/* 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 __ct__Q34nw4r3snd11SoundPlayerFv
/* 80379404 00375064 7C 7C 1B 78 */ mr r28, r3
lbl_80379408:
/* 80379408 00375068 7F 03 C3 78 */ mr r3, r24
/* 8037940C 0037506C 7F A4 EB 78 */ mr r4, r29
/* 80379410 00375070 38 A1 00 08 */ addi r5, r1, 8
/* 80379414 00375074 4B FF DC 61 */ bl func_80377074
/* 80379418 00375078 2C 03 00 00 */ cmpwi r3, 0
/* 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 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 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
/* 80379444 003750A4 3B 60 00 00 */ li r27, 0
/* 80379448 003750A8 48 00 00 94 */ b lbl_803794DC
lbl_8037944C:
/* 8037944C 003750AC 82 99 00 00 */ lwz r20, 0(r25)
/* 80379450 003750B0 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80379454 003750B4 7C 74 02 14 */ add r3, r20, r0
/* 80379458 003750B8 38 03 00 3F */ addi r0, r3, 0x3f
/* 8037945C 003750BC 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d
/* 80379460 003750C0 7C 1A 18 51 */ subf. r0, r26, r3
/* 80379464 003750C4 40 81 00 0C */ ble lbl_80379470
/* 80379468 003750C8 38 60 00 00 */ li r3, 0
/* 8037946C 003750CC 48 00 00 90 */ b lbl_803794FC
lbl_80379470:
/* 80379470 003750D0 90 79 00 00 */ stw r3, 0(r25)
/* 80379474 003750D4 2C 14 00 00 */ cmpwi r20, 0
/* 80379478 003750D8 82 A1 00 0C */ lwz r21, 0xc(r1)
/* 8037947C 003750DC 41 82 00 20 */ beq lbl_8037949C
/* 80379480 003750E0 7E 83 A3 78 */ mr r3, r20
/* 80379484 003750E4 48 00 15 B9 */ bl __ct__Q34nw4r3snd9SoundHeapFv
/* 80379488 003750E8 92 D4 00 00 */ stw r22, 0(r20)
/* 8037948C 003750EC 92 F4 00 2C */ stw r23, 0x2c(r20)
/* 80379490 003750F0 92 F4 00 30 */ stw r23, 0x30(r20)
/* 80379494 003750F4 92 F4 00 34 */ stw r23, 0x34(r20)
/* 80379498 003750F8 92 F4 00 38 */ stw r23, 0x38(r20)
lbl_8037949C:
/* 8037949C 003750FC 7E 83 A3 78 */ mr r3, r20
/* 803794A0 00375100 7E A5 AB 78 */ mr r5, r21
/* 803794A4 00375104 38 94 00 3C */ addi r4, r20, 0x3c
/* 803794A8 00375108 48 00 16 4D */ bl Create__Q34nw4r3snd9SoundHeapFPvUl
/* 803794AC 0037510C 2C 03 00 00 */ cmpwi r3, 0
/* 803794B0 00375110 41 82 00 08 */ beq lbl_803794B8
/* 803794B4 00375114 48 00 00 08 */ b lbl_803794BC
lbl_803794B8:
/* 803794B8 00375118 3A 80 00 00 */ li r20, 0
lbl_803794BC:
/* 803794BC 0037511C 2C 14 00 00 */ cmpwi r20, 0
/* 803794C0 00375120 40 82 00 0C */ bne lbl_803794CC
/* 803794C4 00375124 38 60 00 00 */ li r3, 0
/* 803794C8 00375128 48 00 00 34 */ b lbl_803794FC
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 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)
/* 803794E0 00375140 7C 1B 00 00 */ cmpw r27, r0
/* 803794E4 00375144 41 80 FF 68 */ blt lbl_8037944C
lbl_803794E8:
/* 803794E8 00375148 3B BD 00 01 */ addi r29, r29, 1
/* 803794EC 0037514C 3B DE 00 60 */ addi r30, r30, 0x60
lbl_803794F0:
/* 803794F0 00375150 7C 1D F8 40 */ cmplw r29, r31
/* 803794F4 00375154 41 80 FE FC */ blt lbl_803793F0
/* 803794F8 00375158 38 60 00 01 */ li r3, 1
lbl_803794FC:
/* 803794FC 0037515C 39 61 00 40 */ addi r11, r1, 0x40
/* 80379500 00375160 4B E4 DC 59 */ bl _restgpr_20
/* 80379504 00375164 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80379508 00375168 7C 08 03 A6 */ mtlr r0
/* 8037950C 0037516C 38 21 00 40 */ addi r1, r1, 0x40
/* 80379510 00375170 4E 80 00 20 */ blr
.global Update__Q34nw4r3snd18SoundArchivePlayerFv
Update__Q34nw4r3snd18SoundArchivePlayerFv:
/* 80379514 00375174 94 21 ED B0 */ stwu r1, -0x1250(r1)
/* 80379518 00375178 7C 08 02 A6 */ mflr r0
/* 8037951C 0037517C 90 01 12 54 */ stw r0, 0x1254(r1)
/* 80379520 00375180 39 61 12 50 */ addi r11, r1, 0x1250
/* 80379524 00375184 4B E4 DC 01 */ bl _savegpr_26
/* 80379528 00375188 7C 7F 1B 78 */ mr r31, r3
/* 8037952C 0037518C 3B 40 00 00 */ li r26, 0
/* 80379530 00375190 3B 60 00 00 */ li r27, 0
/* 80379534 00375194 48 00 00 18 */ b lbl_8037954C
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 Update__Q34nw4r3snd11SoundPlayerFv
/* 80379544 003751A4 3B 7B 00 60 */ addi r27, r27, 0x60
/* 80379548 003751A8 3B 5A 00 01 */ addi r26, r26, 1
lbl_8037954C:
/* 8037954C 003751AC 80 1F 00 30 */ lwz r0, 0x30(r31)
/* 80379550 003751B0 7C 1A 00 40 */ cmplw r26, r0
/* 80379554 003751B4 41 80 FF E4 */ blt lbl_80379538
/* 80379558 003751B8 3C 80 80 38 */ lis r4, __ct__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv@ha
/* 8037955C 003751BC 3C A0 80 38 */ lis r5, __dt__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv@ha
/* 80379560 003751C0 38 61 0C 38 */ addi r3, r1, 0xc38
/* 80379564 003751C4 38 C0 00 0C */ li r6, 0xc
/* 80379568 003751C8 38 84 8B 54 */ addi r4, r4, __ct__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv@l
/* 8037956C 003751CC 38 A5 8B 74 */ addi r5, r5, __dt__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv@l
/* 80379570 003751D0 38 E0 00 80 */ li r7, 0x80
/* 80379574 003751D4 4B E4 D8 F5 */ bl __construct_array
/* 80379578 003751D8 3B BF 00 48 */ addi r29, r31, 0x48
/* 8037957C 003751DC 7F A3 EB 78 */ mr r3, r29
/* 80379580 003751E0 4B EF 63 C9 */ bl OSLockMutex
/* 80379584 003751E4 48 00 00 5C */ b lbl_803795E0
lbl_80379588:
/* 80379588 003751E8 83 7F 00 40 */ lwz r27, 0x40(r31)
/* 8037958C 003751EC 38 7F 00 3C */ addi r3, r31, 0x3c
/* 80379590 003751F0 38 81 00 28 */ addi r4, r1, 0x28
/* 80379594 003751F4 93 61 00 28 */ stw r27, 0x28(r1)
/* 80379598 003751F8 4B FE 96 25 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 8037959C 003751FC 88 7B FF BC */ lbz r3, -0x44(r27)
/* 803795A0 00375200 80 1B FF 88 */ lwz r0, -0x78(r27)
/* 803795A4 00375204 7C 63 02 14 */ add r3, r3, r0
/* 803795A8 00375208 2C 03 00 7F */ cmpwi r3, 0x7f
/* 803795AC 0037520C 40 81 00 0C */ ble lbl_803795B8
/* 803795B0 00375210 38 00 00 7F */ li r0, 0x7f
/* 803795B4 00375214 48 00 00 0C */ b lbl_803795C0
lbl_803795B8:
/* 803795B8 00375218 7C 60 FE 70 */ srawi r0, r3, 0x1f
/* 803795BC 0037521C 7C 60 00 78 */ andc r0, r3, r0
lbl_803795C0:
/* 803795C0 00375220 1C 00 00 0C */ mulli r0, r0, 0xc
/* 803795C4 00375224 38 61 0C 38 */ addi r3, r1, 0xc38
/* 803795C8 00375228 7F 65 DB 78 */ mr r5, r27
/* 803795CC 0037522C 38 81 00 2C */ addi r4, r1, 0x2c
/* 803795D0 00375230 7C 63 02 14 */ add r3, r3, r0
/* 803795D4 00375234 38 03 00 04 */ addi r0, r3, 4
/* 803795D8 00375238 90 01 00 2C */ stw r0, 0x2c(r1)
/* 803795DC 0037523C 4B FE 96 6D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
lbl_803795E0:
/* 803795E0 00375240 80 1F 00 3C */ lwz r0, 0x3c(r31)
/* 803795E4 00375244 2C 00 00 00 */ cmpwi r0, 0
/* 803795E8 00375248 40 82 FF A0 */ bne lbl_80379588
/* 803795EC 0037524C 3B 61 0C 38 */ addi r27, r1, 0xc38
/* 803795F0 00375250 3B DF 00 40 */ addi r30, r31, 0x40
/* 803795F4 00375254 3B 80 00 00 */ li r28, 0
lbl_803795F8:
/* 803795F8 00375258 80 1B 00 00 */ lwz r0, 0(r27)
/* 803795FC 0037525C 2C 00 00 00 */ cmpwi r0, 0
/* 80379600 00375260 41 82 00 3C */ beq lbl_8037963C
/* 80379604 00375264 48 00 00 2C */ b lbl_80379630
lbl_80379608:
/* 80379608 00375268 83 5B 00 04 */ lwz r26, 4(r27)
/* 8037960C 0037526C 7F 63 DB 78 */ mr r3, r27
/* 80379610 00375270 38 81 00 30 */ addi r4, r1, 0x30
/* 80379614 00375274 93 41 00 30 */ stw r26, 0x30(r1)
/* 80379618 00375278 4B FE 95 A5 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 8037961C 0037527C 93 C1 00 34 */ stw r30, 0x34(r1)
/* 80379620 00375280 7F 45 D3 78 */ mr r5, r26
/* 80379624 00375284 38 7F 00 3C */ addi r3, r31, 0x3c
/* 80379628 00375288 38 81 00 34 */ addi r4, r1, 0x34
/* 8037962C 0037528C 4B FE 96 1D */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
lbl_80379630:
/* 80379630 00375290 80 1B 00 00 */ lwz r0, 0(r27)
/* 80379634 00375294 2C 00 00 00 */ cmpwi r0, 0
/* 80379638 00375298 40 82 FF D0 */ bne lbl_80379608
lbl_8037963C:
/* 8037963C 0037529C 3B 9C 00 01 */ addi r28, r28, 1
/* 80379640 003752A0 3B 7B 00 0C */ addi r27, r27, 0xc
/* 80379644 003752A4 2C 1C 00 80 */ cmpwi r28, 0x80
/* 80379648 003752A8 41 80 FF B0 */ blt lbl_803795F8
/* 8037964C 003752AC 7F A3 EB 78 */ mr r3, r29
/* 80379650 003752B0 4B EF 63 D5 */ bl OSUnlockMutex
/* 80379654 003752B4 3C 80 80 38 */ lis r4, __dt__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv@ha
/* 80379658 003752B8 38 61 0C 38 */ addi r3, r1, 0xc38
/* 8037965C 003752BC 38 84 8B 74 */ addi r4, r4, __dt__Q34nw4r2ut41LinkList$0Q44nw4r3snd6detail8SeqSound$4184$1Fv@l
/* 80379660 003752C0 38 A0 00 0C */ li r5, 0xc
/* 80379664 003752C4 38 C0 00 80 */ li r6, 0x80
/* 80379668 003752C8 4B E4 D8 F9 */ bl __destroy_arr
/* 8037966C 003752CC 3C 80 80 38 */ lis r4, __ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv@ha
/* 80379670 003752D0 3C A0 80 38 */ lis r5, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv@ha
/* 80379674 003752D4 38 61 06 38 */ addi r3, r1, 0x638
/* 80379678 003752D8 38 C0 00 0C */ li r6, 0xc
/* 8037967C 003752DC 38 84 8B CC */ addi r4, r4, __ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv@l
/* 80379680 003752E0 38 A5 8B EC */ addi r5, r5, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv@l
/* 80379684 003752E4 38 E0 00 80 */ li r7, 0x80
/* 80379688 003752E8 4B E4 D7 E1 */ bl __construct_array
/* 8037968C 003752EC 3B BF 00 70 */ addi r29, r31, 0x70
/* 80379690 003752F0 7F A3 EB 78 */ mr r3, r29
/* 80379694 003752F4 4B EF 62 B5 */ bl OSLockMutex
/* 80379698 003752F8 48 00 00 5C */ b lbl_803796F4
lbl_8037969C:
/* 8037969C 003752FC 83 5F 00 68 */ lwz r26, 0x68(r31)
/* 803796A0 00375300 38 7F 00 64 */ addi r3, r31, 0x64
/* 803796A4 00375304 38 81 00 18 */ addi r4, r1, 0x18
/* 803796A8 00375308 93 41 00 18 */ stw r26, 0x18(r1)
/* 803796AC 0037530C 4B FE 95 11 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 803796B0 00375310 88 7A FF BC */ lbz r3, -0x44(r26)
/* 803796B4 00375314 80 1A FF 88 */ lwz r0, -0x78(r26)
/* 803796B8 00375318 7C 63 02 14 */ add r3, r3, r0
/* 803796BC 0037531C 2C 03 00 7F */ cmpwi r3, 0x7f
/* 803796C0 00375320 40 81 00 0C */ ble lbl_803796CC
/* 803796C4 00375324 38 00 00 7F */ li r0, 0x7f
/* 803796C8 00375328 48 00 00 0C */ b lbl_803796D4
lbl_803796CC:
/* 803796CC 0037532C 7C 60 FE 70 */ srawi r0, r3, 0x1f
/* 803796D0 00375330 7C 60 00 78 */ andc r0, r3, r0
lbl_803796D4:
/* 803796D4 00375334 1C 00 00 0C */ mulli r0, r0, 0xc
/* 803796D8 00375338 38 61 06 38 */ addi r3, r1, 0x638
/* 803796DC 0037533C 7F 45 D3 78 */ mr r5, r26
/* 803796E0 00375340 38 81 00 1C */ addi r4, r1, 0x1c
/* 803796E4 00375344 7C 63 02 14 */ add r3, r3, r0
/* 803796E8 00375348 38 03 00 04 */ addi r0, r3, 4
/* 803796EC 0037534C 90 01 00 1C */ stw r0, 0x1c(r1)
/* 803796F0 00375350 4B FE 95 59 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
lbl_803796F4:
/* 803796F4 00375354 80 1F 00 64 */ lwz r0, 0x64(r31)
/* 803796F8 00375358 2C 00 00 00 */ cmpwi r0, 0
/* 803796FC 0037535C 40 82 FF A0 */ bne lbl_8037969C
/* 80379700 00375360 3B 61 06 38 */ addi r27, r1, 0x638
/* 80379704 00375364 3B DF 00 68 */ addi r30, r31, 0x68
/* 80379708 00375368 3B 80 00 00 */ li r28, 0
lbl_8037970C:
/* 8037970C 0037536C 80 1B 00 00 */ lwz r0, 0(r27)
/* 80379710 00375370 2C 00 00 00 */ cmpwi r0, 0
/* 80379714 00375374 41 82 00 3C */ beq lbl_80379750
/* 80379718 00375378 48 00 00 2C */ b lbl_80379744
lbl_8037971C:
/* 8037971C 0037537C 83 5B 00 04 */ lwz r26, 4(r27)
/* 80379720 00375380 7F 63 DB 78 */ mr r3, r27
/* 80379724 00375384 38 81 00 20 */ addi r4, r1, 0x20
/* 80379728 00375388 93 41 00 20 */ stw r26, 0x20(r1)
/* 8037972C 0037538C 4B FE 94 91 */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 80379730 00375390 93 C1 00 24 */ stw r30, 0x24(r1)
/* 80379734 00375394 7F 45 D3 78 */ mr r5, r26
/* 80379738 00375398 38 7F 00 64 */ addi r3, r31, 0x64
/* 8037973C 0037539C 38 81 00 24 */ addi r4, r1, 0x24
/* 80379740 003753A0 4B FE 95 09 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
lbl_80379744:
/* 80379744 003753A4 80 1B 00 00 */ lwz r0, 0(r27)
/* 80379748 003753A8 2C 00 00 00 */ cmpwi r0, 0
/* 8037974C 003753AC 40 82 FF D0 */ bne lbl_8037971C
lbl_80379750:
/* 80379750 003753B0 3B 9C 00 01 */ addi r28, r28, 1
/* 80379754 003753B4 3B 7B 00 0C */ addi r27, r27, 0xc
/* 80379758 003753B8 2C 1C 00 80 */ cmpwi r28, 0x80
/* 8037975C 003753BC 41 80 FF B0 */ blt lbl_8037970C
/* 80379760 003753C0 7F A3 EB 78 */ mr r3, r29
/* 80379764 003753C4 4B EF 62 C1 */ bl OSUnlockMutex
/* 80379768 003753C8 3C 80 80 38 */ lis r4, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv@ha
/* 8037976C 003753CC 38 61 06 38 */ addi r3, r1, 0x638
/* 80379770 003753D0 38 84 8B EC */ addi r4, r4, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9StrmSound$4184$1Fv@l
/* 80379774 003753D4 38 A0 00 0C */ li r5, 0xc
/* 80379778 003753D8 38 C0 00 80 */ li r6, 0x80
/* 8037977C 003753DC 4B E4 D7 E5 */ bl __destroy_arr
/* 80379780 003753E0 3C 80 80 38 */ lis r4, __ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv@ha
/* 80379784 003753E4 3C A0 80 38 */ lis r5, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv@ha
/* 80379788 003753E8 38 61 00 38 */ addi r3, r1, 0x38
/* 8037978C 003753EC 38 C0 00 0C */ li r6, 0xc
/* 80379790 003753F0 38 84 8C 44 */ addi r4, r4, __ct__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv@l
/* 80379794 003753F4 38 A5 8C 64 */ addi r5, r5, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv@l
/* 80379798 003753F8 38 E0 00 80 */ li r7, 0x80
/* 8037979C 003753FC 4B E4 D6 CD */ bl __construct_array
/* 803797A0 00375400 3B BF 00 98 */ addi r29, r31, 0x98
/* 803797A4 00375404 7F A3 EB 78 */ mr r3, r29
/* 803797A8 00375408 4B EF 61 A1 */ bl OSLockMutex
/* 803797AC 0037540C 48 00 00 5C */ b lbl_80379808
lbl_803797B0:
/* 803797B0 00375410 83 5F 00 90 */ lwz r26, 0x90(r31)
/* 803797B4 00375414 38 7F 00 8C */ addi r3, r31, 0x8c
/* 803797B8 00375418 38 81 00 08 */ addi r4, r1, 8
/* 803797BC 0037541C 93 41 00 08 */ stw r26, 8(r1)
/* 803797C0 00375420 4B FE 93 FD */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 803797C4 00375424 88 7A FF BC */ lbz r3, -0x44(r26)
/* 803797C8 00375428 80 1A FF 88 */ lwz r0, -0x78(r26)
/* 803797CC 0037542C 7C 63 02 14 */ add r3, r3, r0
/* 803797D0 00375430 2C 03 00 7F */ cmpwi r3, 0x7f
/* 803797D4 00375434 40 81 00 0C */ ble lbl_803797E0
/* 803797D8 00375438 38 00 00 7F */ li r0, 0x7f
/* 803797DC 0037543C 48 00 00 0C */ b lbl_803797E8
lbl_803797E0:
/* 803797E0 00375440 7C 60 FE 70 */ srawi r0, r3, 0x1f
/* 803797E4 00375444 7C 60 00 78 */ andc r0, r3, r0
lbl_803797E8:
/* 803797E8 00375448 1C 00 00 0C */ mulli r0, r0, 0xc
/* 803797EC 0037544C 38 61 00 38 */ addi r3, r1, 0x38
/* 803797F0 00375450 7F 45 D3 78 */ mr r5, r26
/* 803797F4 00375454 38 81 00 0C */ addi r4, r1, 0xc
/* 803797F8 00375458 7C 63 02 14 */ add r3, r3, r0
/* 803797FC 0037545C 38 03 00 04 */ addi r0, r3, 4
/* 80379800 00375460 90 01 00 0C */ stw r0, 0xc(r1)
/* 80379804 00375464 4B FE 94 45 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
lbl_80379808:
/* 80379808 00375468 80 1F 00 8C */ lwz r0, 0x8c(r31)
/* 8037980C 0037546C 2C 00 00 00 */ cmpwi r0, 0
/* 80379810 00375470 40 82 FF A0 */ bne lbl_803797B0
/* 80379814 00375474 3B 61 00 38 */ addi r27, r1, 0x38
/* 80379818 00375478 3B DF 00 90 */ addi r30, r31, 0x90
/* 8037981C 0037547C 3B 80 00 00 */ li r28, 0
lbl_80379820:
/* 80379820 00375480 80 1B 00 00 */ lwz r0, 0(r27)
/* 80379824 00375484 2C 00 00 00 */ cmpwi r0, 0
/* 80379828 00375488 41 82 00 3C */ beq lbl_80379864
/* 8037982C 0037548C 48 00 00 2C */ b lbl_80379858
lbl_80379830:
/* 80379830 00375490 83 5B 00 04 */ lwz r26, 4(r27)
/* 80379834 00375494 7F 63 DB 78 */ mr r3, r27
/* 80379838 00375498 38 81 00 10 */ addi r4, r1, 0x10
/* 8037983C 0037549C 93 41 00 10 */ stw r26, 0x10(r1)
/* 80379840 003754A0 4B FE 93 7D */ bl Erase__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8Iterator
/* 80379844 003754A4 93 C1 00 14 */ stw r30, 0x14(r1)
/* 80379848 003754A8 7F 45 D3 78 */ mr r5, r26
/* 8037984C 003754AC 38 7F 00 8C */ addi r3, r31, 0x8c
/* 80379850 003754B0 38 81 00 14 */ addi r4, r1, 0x14
/* 80379854 003754B4 4B FE 93 F5 */ bl Insert__Q44nw4r2ut6detail12LinkListImplFQ54nw4r2ut6detail12LinkListImpl8IteratorPQ34nw4r2ut12LinkListNode
lbl_80379858:
/* 80379858 003754B8 80 1B 00 00 */ lwz r0, 0(r27)
/* 8037985C 003754BC 2C 00 00 00 */ cmpwi r0, 0
/* 80379860 003754C0 40 82 FF D0 */ bne lbl_80379830
lbl_80379864:
/* 80379864 003754C4 3B 9C 00 01 */ addi r28, r28, 1
/* 80379868 003754C8 3B 7B 00 0C */ addi r27, r27, 0xc
/* 8037986C 003754CC 2C 1C 00 80 */ cmpwi r28, 0x80
/* 80379870 003754D0 41 80 FF B0 */ blt lbl_80379820
/* 80379874 003754D4 7F A3 EB 78 */ mr r3, r29
/* 80379878 003754D8 4B EF 61 AD */ bl OSUnlockMutex
/* 8037987C 003754DC 3C 80 80 38 */ lis r4, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv@ha
/* 80379880 003754E0 38 61 00 38 */ addi r3, r1, 0x38
/* 80379884 003754E4 38 84 8C 64 */ addi r4, r4, __dt__Q34nw4r2ut42LinkList$0Q44nw4r3snd6detail9WaveSound$4184$1Fv@l
/* 80379888 003754E8 38 A0 00 0C */ li r5, 0xc
/* 8037988C 003754EC 38 C0 00 80 */ li r6, 0x80
/* 80379890 003754F0 4B E4 D6 D1 */ bl __destroy_arr
/* 80379894 003754F4 39 61 12 50 */ addi r11, r1, 0x1250
/* 80379898 003754F8 4B E4 D8 D9 */ bl _restgpr_26
/* 8037989C 003754FC 80 01 12 54 */ lwz r0, 0x1254(r1)
/* 803798A0 00375500 7C 08 03 A6 */ mtlr r0
/* 803798A4 00375504 38 21 12 50 */ addi r1, r1, 0x1250
/* 803798A8 00375508 4E 80 00 20 */ blr
.global GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl
GetSoundPlayer__Q34nw4r3snd18SoundArchivePlayerFUl:
/* 803798AC 0037550C 1C 04 00 60 */ mulli r0, r4, 0x60
/* 803798B0 00375510 80 63 00 34 */ lwz r3, 0x34(r3)
/* 803798B4 00375514 7C 63 02 14 */ add r3, r3, r0
/* 803798B8 00375518 4E 80 00 20 */ blr
.global detail_GetFileAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
detail_GetFileAddress__Q34nw4r3snd18SoundArchivePlayerCFUl:
/* 803798BC 0037551C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 803798C0 00375520 7C 08 02 A6 */ mflr r0
/* 803798C4 00375524 90 01 00 54 */ stw r0, 0x54(r1)
/* 803798C8 00375528 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 803798CC 0037552C 93 C1 00 48 */ stw r30, 0x48(r1)
/* 803798D0 00375530 93 A1 00 44 */ stw r29, 0x44(r1)
/* 803798D4 00375534 7C 9D 23 78 */ mr r29, r4
/* 803798D8 00375538 93 81 00 40 */ stw r28, 0x40(r1)
/* 803798DC 0037553C 7C 7C 1B 78 */ mr r28, r3
/* 803798E0 00375540 80 63 00 10 */ lwz r3, 0x10(r3)
/* 803798E4 00375544 81 83 00 00 */ lwz r12, 0(r3)
/* 803798E8 00375548 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 803798EC 0037554C 7D 89 03 A6 */ mtctr r12
/* 803798F0 00375550 4E 80 04 21 */ bctrl
/* 803798F4 00375554 2C 03 00 00 */ cmpwi r3, 0
/* 803798F8 00375558 41 82 00 08 */ beq lbl_80379900
/* 803798FC 0037555C 48 00 00 EC */ b lbl_803799E8
lbl_80379900:
/* 80379900 00375560 80 7C 00 18 */ lwz r3, 0x18(r28)
/* 80379904 00375564 2C 03 00 00 */ cmpwi r3, 0
/* 80379908 00375568 41 82 00 24 */ beq lbl_8037992C
/* 8037990C 0037556C 81 83 00 00 */ lwz r12, 0(r3)
/* 80379910 00375570 7F A4 EB 78 */ mr r4, r29
/* 80379914 00375574 81 8C 00 08 */ lwz r12, 8(r12)
/* 80379918 00375578 7D 89 03 A6 */ mtctr r12
/* 8037991C 0037557C 4E 80 04 21 */ bctrl
/* 80379920 00375580 2C 03 00 00 */ cmpwi r3, 0
/* 80379924 00375584 41 82 00 08 */ beq lbl_8037992C
/* 80379928 00375588 48 00 00 C0 */ b lbl_803799E8
lbl_8037992C:
/* 8037992C 0037558C 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80379930 00375590 7F A4 EB 78 */ mr r4, r29
/* 80379934 00375594 38 A1 00 10 */ addi r5, r1, 0x10
/* 80379938 00375598 4B FF D7 65 */ bl func_8037709C
/* 8037993C 0037559C 2C 03 00 00 */ cmpwi r3, 0
/* 80379940 003755A0 40 82 00 0C */ bne lbl_8037994C
/* 80379944 003755A4 38 60 00 00 */ li r3, 0
/* 80379948 003755A8 48 00 00 A0 */ b lbl_803799E8
lbl_8037994C:
/* 8037994C 003755AC 3B C0 00 00 */ li r30, 0
/* 80379950 003755B0 48 00 00 88 */ b lbl_803799D8
lbl_80379954:
/* 80379954 003755B4 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80379958 003755B8 7F A4 EB 78 */ mr r4, r29
/* 8037995C 003755BC 7F C5 F3 78 */ mr r5, r30
/* 80379960 003755C0 38 C1 00 08 */ addi r6, r1, 8
/* 80379964 003755C4 4B FF D7 41 */ bl func_803770A4
/* 80379968 003755C8 2C 03 00 00 */ cmpwi r3, 0
/* 8037996C 003755CC 41 82 00 68 */ beq lbl_803799D4
/* 80379970 003755D0 80 7C 00 14 */ lwz r3, 0x14(r28)
/* 80379974 003755D4 80 81 00 08 */ lwz r4, 8(r1)
/* 80379978 003755D8 2C 03 00 00 */ cmpwi r3, 0
/* 8037997C 003755DC 40 82 00 0C */ bne lbl_80379988
/* 80379980 003755E0 3B E0 00 00 */ li r31, 0
/* 80379984 003755E4 48 00 00 24 */ b lbl_803799A8
lbl_80379988:
/* 80379988 003755E8 80 03 00 00 */ lwz r0, 0(r3)
/* 8037998C 003755EC 7C 04 00 40 */ cmplw r4, r0
/* 80379990 003755F0 41 80 00 0C */ blt lbl_8037999C
/* 80379994 003755F4 3B E0 00 00 */ li r31, 0
/* 80379998 003755F8 48 00 00 10 */ b lbl_803799A8
lbl_8037999C:
/* 8037999C 003755FC 54 80 18 38 */ slwi r0, r4, 3
/* 803799A0 00375600 7C 63 02 14 */ add r3, r3, r0
/* 803799A4 00375604 83 E3 00 04 */ lwz r31, 4(r3)
lbl_803799A8:
/* 803799A8 00375608 2C 1F 00 00 */ cmpwi r31, 0
/* 803799AC 0037560C 41 82 00 28 */ beq lbl_803799D4
/* 803799B0 00375610 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 803799B4 00375614 38 C1 00 20 */ addi r6, r1, 0x20
/* 803799B8 00375618 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 803799BC 0037561C 4B FF D6 D9 */ bl func_80377094
/* 803799C0 00375620 2C 03 00 00 */ cmpwi r3, 0
/* 803799C4 00375624 41 82 00 10 */ beq lbl_803799D4
/* 803799C8 00375628 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803799CC 0037562C 7C 7F 02 14 */ add r3, r31, r0
/* 803799D0 00375630 48 00 00 18 */ b lbl_803799E8
lbl_803799D4:
/* 803799D4 00375634 3B DE 00 01 */ addi r30, r30, 1
lbl_803799D8:
/* 803799D8 00375638 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803799DC 0037563C 7C 1E 00 40 */ cmplw r30, r0
/* 803799E0 00375640 41 80 FF 74 */ blt lbl_80379954
/* 803799E4 00375644 38 60 00 00 */ li r3, 0
lbl_803799E8:
/* 803799E8 00375648 80 01 00 54 */ lwz r0, 0x54(r1)
/* 803799EC 0037564C 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 803799F0 00375650 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 803799F4 00375654 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 803799F8 00375658 83 81 00 40 */ lwz r28, 0x40(r1)
/* 803799FC 0037565C 7C 08 03 A6 */ mtlr r0
/* 80379A00 00375660 38 21 00 50 */ addi r1, r1, 0x50
/* 80379A04 00375664 4E 80 00 20 */ blr
.global detail_GetFileWaveDataAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
detail_GetFileWaveDataAddress__Q34nw4r3snd18SoundArchivePlayerCFUl:
/* 80379A08 00375668 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80379A0C 0037566C 7C 08 02 A6 */ mflr r0
/* 80379A10 00375670 90 01 00 54 */ stw r0, 0x54(r1)
/* 80379A14 00375674 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 80379A18 00375678 93 C1 00 48 */ stw r30, 0x48(r1)
/* 80379A1C 0037567C 93 A1 00 44 */ stw r29, 0x44(r1)
/* 80379A20 00375680 7C 9D 23 78 */ mr r29, r4
/* 80379A24 00375684 93 81 00 40 */ stw r28, 0x40(r1)
/* 80379A28 00375688 7C 7C 1B 78 */ mr r28, r3
/* 80379A2C 0037568C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80379A30 00375690 81 83 00 00 */ lwz r12, 0(r3)
/* 80379A34 00375694 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80379A38 00375698 7D 89 03 A6 */ mtctr r12
/* 80379A3C 0037569C 4E 80 04 21 */ bctrl
/* 80379A40 003756A0 2C 03 00 00 */ cmpwi r3, 0
/* 80379A44 003756A4 41 82 00 08 */ beq lbl_80379A4C
/* 80379A48 003756A8 48 00 00 EC */ b lbl_80379B34
lbl_80379A4C:
/* 80379A4C 003756AC 80 7C 00 18 */ lwz r3, 0x18(r28)
/* 80379A50 003756B0 2C 03 00 00 */ cmpwi r3, 0
/* 80379A54 003756B4 41 82 00 24 */ beq lbl_80379A78
/* 80379A58 003756B8 81 83 00 00 */ lwz r12, 0(r3)
/* 80379A5C 003756BC 7F A4 EB 78 */ mr r4, r29
/* 80379A60 003756C0 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 80379A64 003756C4 7D 89 03 A6 */ mtctr r12
/* 80379A68 003756C8 4E 80 04 21 */ bctrl
/* 80379A6C 003756CC 2C 03 00 00 */ cmpwi r3, 0
/* 80379A70 003756D0 41 82 00 08 */ beq lbl_80379A78
/* 80379A74 003756D4 48 00 00 C0 */ b lbl_80379B34
lbl_80379A78:
/* 80379A78 003756D8 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80379A7C 003756DC 7F A4 EB 78 */ mr r4, r29
/* 80379A80 003756E0 38 A1 00 10 */ addi r5, r1, 0x10
/* 80379A84 003756E4 4B FF D6 19 */ bl func_8037709C
/* 80379A88 003756E8 2C 03 00 00 */ cmpwi r3, 0
/* 80379A8C 003756EC 40 82 00 0C */ bne lbl_80379A98
/* 80379A90 003756F0 38 60 00 00 */ li r3, 0
/* 80379A94 003756F4 48 00 00 A0 */ b lbl_80379B34
lbl_80379A98:
/* 80379A98 003756F8 3B C0 00 00 */ li r30, 0
/* 80379A9C 003756FC 48 00 00 88 */ b lbl_80379B24
lbl_80379AA0:
/* 80379AA0 00375700 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80379AA4 00375704 7F A4 EB 78 */ mr r4, r29
/* 80379AA8 00375708 7F C5 F3 78 */ mr r5, r30
/* 80379AAC 0037570C 38 C1 00 08 */ addi r6, r1, 8
/* 80379AB0 00375710 4B FF D5 F5 */ bl func_803770A4
/* 80379AB4 00375714 2C 03 00 00 */ cmpwi r3, 0
/* 80379AB8 00375718 41 82 00 68 */ beq lbl_80379B20
/* 80379ABC 0037571C 80 7C 00 14 */ lwz r3, 0x14(r28)
/* 80379AC0 00375720 80 81 00 08 */ lwz r4, 8(r1)
/* 80379AC4 00375724 2C 03 00 00 */ cmpwi r3, 0
/* 80379AC8 00375728 40 82 00 0C */ bne lbl_80379AD4
/* 80379ACC 0037572C 3B E0 00 00 */ li r31, 0
/* 80379AD0 00375730 48 00 00 24 */ b lbl_80379AF4
lbl_80379AD4:
/* 80379AD4 00375734 80 03 00 00 */ lwz r0, 0(r3)
/* 80379AD8 00375738 7C 04 00 40 */ cmplw r4, r0
/* 80379ADC 0037573C 41 80 00 0C */ blt lbl_80379AE8
/* 80379AE0 00375740 3B E0 00 00 */ li r31, 0
/* 80379AE4 00375744 48 00 00 10 */ b lbl_80379AF4
lbl_80379AE8:
/* 80379AE8 00375748 54 80 18 38 */ slwi r0, r4, 3
/* 80379AEC 0037574C 7C 63 02 14 */ add r3, r3, r0
/* 80379AF0 00375750 83 E3 00 08 */ lwz r31, 8(r3)
lbl_80379AF4:
/* 80379AF4 00375754 2C 1F 00 00 */ cmpwi r31, 0
/* 80379AF8 00375758 41 82 00 28 */ beq lbl_80379B20
/* 80379AFC 0037575C 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80379B00 00375760 38 C1 00 20 */ addi r6, r1, 0x20
/* 80379B04 00375764 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 80379B08 00375768 4B FF D5 8D */ bl func_80377094
/* 80379B0C 0037576C 2C 03 00 00 */ cmpwi r3, 0
/* 80379B10 00375770 41 82 00 10 */ beq lbl_80379B20
/* 80379B14 00375774 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 80379B18 00375778 7C 7F 02 14 */ add r3, r31, r0
/* 80379B1C 0037577C 48 00 00 18 */ b lbl_80379B34
lbl_80379B20:
/* 80379B20 00375780 3B DE 00 01 */ addi r30, r30, 1
lbl_80379B24:
/* 80379B24 00375784 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 80379B28 00375788 7C 1E 00 40 */ cmplw r30, r0
/* 80379B2C 0037578C 41 80 FF 74 */ blt lbl_80379AA0
/* 80379B30 00375790 38 60 00 00 */ li r3, 0
lbl_80379B34:
/* 80379B34 00375794 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80379B38 00375798 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 80379B3C 0037579C 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 80379B40 003757A0 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 80379B44 003757A4 83 81 00 40 */ lwz r28, 0x40(r1)
/* 80379B48 003757A8 7C 08 03 A6 */ mtlr r0
/* 80379B4C 003757AC 38 21 00 50 */ addi r1, r1, 0x50
/* 80379B50 003757B0 4E 80 00 20 */ blr
.global detail_SetupSound__Q34nw4r3snd18SoundArchivePlayerFPQ34nw4r3snd11SoundHandleUlPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerbPCQ44nw4r3snd14SoundStartable9StartInfo
detail_SetupSound__Q34nw4r3snd18SoundArchivePlayerFPQ34nw4r3snd11SoundHandleUlPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerbPCQ44nw4r3snd14SoundStartable9StartInfo:
/* 80379B54 003757B4 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80379B58 003757B8 7C 08 02 A6 */ mflr r0
/* 80379B5C 003757BC 90 01 00 74 */ stw r0, 0x74(r1)
/* 80379B60 003757C0 39 61 00 70 */ addi r11, r1, 0x70
/* 80379B64 003757C4 4B E4 D5 B1 */ bl _savegpr_22
/* 80379B68 003757C8 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80379B6C 003757CC 7C 7B 1B 78 */ mr r27, r3
/* 80379B70 003757D0 7C 9C 23 78 */ mr r28, r4
/* 80379B74 003757D4 7C BD 2B 78 */ mr r29, r5
/* 80379B78 003757D8 2C 00 00 00 */ cmpwi r0, 0
/* 80379B7C 003757DC 7C DE 33 78 */ mr r30, r6
/* 80379B80 003757E0 7C FF 3B 78 */ mr r31, r7
/* 80379B84 003757E4 7D 1A 43 78 */ mr r26, r8
/* 80379B88 003757E8 7D 39 4B 78 */ mr r25, r9
/* 80379B8C 003757EC 40 82 00 0C */ bne lbl_80379B98
/* 80379B90 003757F0 38 60 00 00 */ li r3, 0
/* 80379B94 003757F4 48 00 00 0C */ b lbl_80379BA0
lbl_80379B98:
/* 80379B98 003757F8 7C 03 03 78 */ mr r3, r0
/* 80379B9C 003757FC 4B FF D4 55 */ bl IsAvailable__Q34nw4r3snd12SoundArchiveCFv
lbl_80379BA0:
/* 80379BA0 00375800 2C 03 00 00 */ cmpwi r3, 0
/* 80379BA4 00375804 40 82 00 0C */ bne lbl_80379BB0
/* 80379BA8 00375808 38 60 00 07 */ li r3, 7
/* 80379BAC 0037580C 48 00 02 D8 */ b lbl_80379E84
lbl_80379BB0:
/* 80379BB0 00375810 80 1C 00 00 */ lwz r0, 0(r28)
/* 80379BB4 00375814 2C 00 00 00 */ cmpwi r0, 0
/* 80379BB8 00375818 41 82 00 0C */ beq lbl_80379BC4
/* 80379BBC 0037581C 7F 83 E3 78 */ mr r3, r28
/* 80379BC0 00375820 48 00 0E 2D */ bl DetachSound__Q34nw4r3snd11SoundHandleFv
lbl_80379BC4:
/* 80379BC4 00375824 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 80379BC8 00375828 7F A4 EB 78 */ mr r4, r29
/* 80379BCC 0037582C 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80379BD0 00375830 4B FF D4 85 */ bl func_80377054
/* 80379BD4 00375834 2C 03 00 00 */ cmpwi r3, 0
/* 80379BD8 00375838 40 82 00 0C */ bne lbl_80379BE4
/* 80379BDC 0037583C 38 60 00 03 */ li r3, 3
/* 80379BE0 00375840 48 00 02 A4 */ b lbl_80379E84
lbl_80379BE4:
/* 80379BE4 00375844 2C 19 00 00 */ cmpwi r25, 0
/* 80379BE8 00375848 80 81 00 30 */ lwz r4, 0x30(r1)
/* 80379BEC 0037584C 83 01 00 34 */ lwz r24, 0x34(r1)
/* 80379BF0 00375850 3A E0 00 00 */ li r23, 0
/* 80379BF4 00375854 3A C0 00 00 */ li r22, 0
/* 80379BF8 00375858 41 82 00 30 */ beq lbl_80379C28
/* 80379BFC 0037585C 80 79 00 00 */ lwz r3, 0(r25)
/* 80379C00 00375860 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80379C04 00375864 41 82 00 0C */ beq lbl_80379C10
/* 80379C08 00375868 82 F9 00 04 */ lwz r23, 4(r25)
/* 80379C0C 0037586C 82 D9 00 08 */ lwz r22, 8(r25)
lbl_80379C10:
/* 80379C10 00375870 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 80379C14 00375874 41 82 00 08 */ beq lbl_80379C1C
/* 80379C18 00375878 80 99 00 0C */ lwz r4, 0xc(r25)
lbl_80379C1C:
/* 80379C1C 0037587C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 80379C20 00375880 41 82 00 08 */ beq lbl_80379C28
/* 80379C24 00375884 83 19 00 10 */ lwz r24, 0x10(r25)
lbl_80379C28:
/* 80379C28 00375888 2C 1A 00 00 */ cmpwi r26, 0
/* 80379C2C 0037588C 7F 1A C3 78 */ mr r26, r24
/* 80379C30 00375890 41 82 00 08 */ beq lbl_80379C38
/* 80379C34 00375894 3B 58 FF FF */ addi r26, r24, -1
lbl_80379C38:
/* 80379C38 00375898 1C 04 00 60 */ mulli r0, r4, 0x60
/* 80379C3C 0037589C 80 BB 00 34 */ lwz r5, 0x34(r27)
/* 80379C40 003758A0 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 80379C44 003758A4 7F A4 EB 78 */ mr r4, r29
/* 80379C48 003758A8 7F 25 02 14 */ add r25, r5, r0
/* 80379C4C 003758AC 4B FF D4 01 */ bl func_8037704C
/* 80379C50 003758B0 2C 03 00 02 */ cmpwi r3, 2
/* 80379C54 003758B4 41 82 00 C8 */ beq lbl_80379D1C
/* 80379C58 003758B8 40 80 00 10 */ bge lbl_80379C68
/* 80379C5C 003758BC 2C 03 00 01 */ cmpwi r3, 1
/* 80379C60 003758C0 40 80 00 14 */ bge lbl_80379C74
/* 80379C64 003758C4 48 00 02 08 */ b lbl_80379E6C
lbl_80379C68:
/* 80379C68 003758C8 2C 03 00 04 */ cmpwi r3, 4
/* 80379C6C 003758CC 40 80 02 00 */ bge lbl_80379E6C
/* 80379C70 003758D0 48 00 01 54 */ b lbl_80379DC4
lbl_80379C74:
/* 80379C74 003758D4 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 80379C78 003758D8 7F A4 EB 78 */ mr r4, r29
/* 80379C7C 003758DC 38 A1 00 18 */ addi r5, r1, 0x18
/* 80379C80 003758E0 4B FF D3 DD */ bl func_8037705C
/* 80379C84 003758E4 2C 03 00 00 */ cmpwi r3, 0
/* 80379C88 003758E8 40 82 00 0C */ bne lbl_80379C94
/* 80379C8C 003758EC 38 60 00 03 */ li r3, 3
/* 80379C90 003758F0 48 00 01 F4 */ b lbl_80379E84
lbl_80379C94:
/* 80379C94 003758F4 7F 23 CB 78 */ mr r3, r25
/* 80379C98 003758F8 7F 04 C3 78 */ mr r4, r24
/* 80379C9C 003758FC 7F 45 D3 78 */ mr r5, r26
/* 80379CA0 00375900 7F C6 F3 78 */ mr r6, r30
/* 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 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
/* 80379CC0 00375920 38 60 00 01 */ li r3, 1
/* 80379CC4 00375924 48 00 01 C0 */ b lbl_80379E84
lbl_80379CC8:
/* 80379CC8 00375928 7F A4 EB 78 */ mr r4, r29
/* 80379CCC 0037592C 4B FF 44 39 */ bl SetId__Q44nw4r3snd6detail10BasicSoundFUl
/* 80379CD0 00375930 7F 63 DB 78 */ mr r3, r27
/* 80379CD4 00375934 7F 04 C3 78 */ mr r4, r24
/* 80379CD8 00375938 7E E7 BB 78 */ mr r7, r23
/* 80379CDC 0037593C 7E C8 B3 78 */ mr r8, r22
/* 80379CE0 00375940 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80379CE4 00375944 38 C1 00 18 */ addi r6, r1, 0x18
/* 80379CE8 00375948 39 20 00 01 */ li r9, 1
/* 80379CEC 0037594C 48 00 01 B1 */ bl PrepareSeqImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail8SeqSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive12SeqSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii
/* 80379CF0 00375950 2C 03 00 00 */ cmpwi r3, 0
/* 80379CF4 00375954 7C 76 1B 78 */ mr r22, r3
/* 80379CF8 00375958 41 82 01 7C */ beq lbl_80379E74
/* 80379CFC 0037595C 81 98 00 00 */ lwz r12, 0(r24)
/* 80379D00 00375960 7F 03 C3 78 */ mr r3, r24
/* 80379D04 00375964 81 8C 00 28 */ lwz r12, 0x28(r12)
/* 80379D08 00375968 7D 89 03 A6 */ mtctr r12
/* 80379D0C 0037596C 4E 80 04 21 */ bctrl
/* 80379D10 00375970 7E C3 B3 78 */ mr r3, r22
/* 80379D14 00375974 48 00 01 70 */ b lbl_80379E84
/* 80379D18 00375978 48 00 01 5C */ b lbl_80379E74
lbl_80379D1C:
/* 80379D1C 0037597C 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 80379D20 00375980 7F A4 EB 78 */ mr r4, r29
/* 80379D24 00375984 38 A1 00 08 */ addi r5, r1, 8
/* 80379D28 00375988 4B FF D3 3D */ bl func_80377064
/* 80379D2C 0037598C 2C 03 00 00 */ cmpwi r3, 0
/* 80379D30 00375990 40 82 00 0C */ bne lbl_80379D3C
/* 80379D34 00375994 38 60 00 03 */ li r3, 3
/* 80379D38 00375998 48 00 01 4C */ b lbl_80379E84
lbl_80379D3C:
/* 80379D3C 0037599C 7F 23 CB 78 */ mr r3, r25
/* 80379D40 003759A0 7F 04 C3 78 */ mr r4, r24
/* 80379D44 003759A4 7F 45 D3 78 */ mr r5, r26
/* 80379D48 003759A8 7F C6 F3 78 */ mr r6, r30
/* 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 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
/* 80379D68 003759C8 38 60 00 01 */ li r3, 1
/* 80379D6C 003759CC 48 00 01 18 */ b lbl_80379E84
lbl_80379D70:
/* 80379D70 003759D0 7F A4 EB 78 */ mr r4, r29
/* 80379D74 003759D4 4B FF 43 91 */ bl SetId__Q44nw4r3snd6detail10BasicSoundFUl
/* 80379D78 003759D8 7F 63 DB 78 */ mr r3, r27
/* 80379D7C 003759DC 7F 04 C3 78 */ mr r4, r24
/* 80379D80 003759E0 7E E7 BB 78 */ mr r7, r23
/* 80379D84 003759E4 7E C8 B3 78 */ mr r8, r22
/* 80379D88 003759E8 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80379D8C 003759EC 38 C1 00 08 */ addi r6, r1, 8
/* 80379D90 003759F0 39 20 00 01 */ li r9, 1
/* 80379D94 003759F4 48 00 04 0D */ bl PrepareStrmImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail9StrmSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive13StrmSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii
/* 80379D98 003759F8 2C 03 00 00 */ cmpwi r3, 0
/* 80379D9C 003759FC 7C 76 1B 78 */ mr r22, r3
/* 80379DA0 00375A00 41 82 00 D4 */ beq lbl_80379E74
/* 80379DA4 00375A04 81 98 00 00 */ lwz r12, 0(r24)
/* 80379DA8 00375A08 7F 03 C3 78 */ mr r3, r24
/* 80379DAC 00375A0C 81 8C 00 28 */ lwz r12, 0x28(r12)
/* 80379DB0 00375A10 7D 89 03 A6 */ mtctr r12
/* 80379DB4 00375A14 4E 80 04 21 */ bctrl
/* 80379DB8 00375A18 7E C3 B3 78 */ mr r3, r22
/* 80379DBC 00375A1C 48 00 00 C8 */ b lbl_80379E84
/* 80379DC0 00375A20 48 00 00 B4 */ b lbl_80379E74
lbl_80379DC4:
/* 80379DC4 00375A24 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 80379DC8 00375A28 7F A4 EB 78 */ mr r4, r29
/* 80379DCC 00375A2C 38 A1 00 0C */ addi r5, r1, 0xc
/* 80379DD0 00375A30 4B FF D2 9D */ bl func_8037706C
/* 80379DD4 00375A34 2C 03 00 00 */ cmpwi r3, 0
/* 80379DD8 00375A38 40 82 00 0C */ bne lbl_80379DE4
/* 80379DDC 00375A3C 38 60 00 03 */ li r3, 3
/* 80379DE0 00375A40 48 00 00 A4 */ b lbl_80379E84
lbl_80379DE4:
/* 80379DE4 00375A44 7F 23 CB 78 */ mr r3, r25
/* 80379DE8 00375A48 7F 04 C3 78 */ mr r4, r24
/* 80379DEC 00375A4C 7F 45 D3 78 */ mr r5, r26
/* 80379DF0 00375A50 7F C6 F3 78 */ mr r6, r30
/* 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 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
/* 80379E10 00375A70 38 60 00 01 */ li r3, 1
/* 80379E14 00375A74 48 00 00 70 */ b lbl_80379E84
lbl_80379E18:
/* 80379E18 00375A78 7F A4 EB 78 */ mr r4, r29
/* 80379E1C 00375A7C 4B FF 42 E9 */ bl SetId__Q44nw4r3snd6detail10BasicSoundFUl
/* 80379E20 00375A80 7F 63 DB 78 */ mr r3, r27
/* 80379E24 00375A84 7F 04 C3 78 */ mr r4, r24
/* 80379E28 00375A88 7E E7 BB 78 */ mr r7, r23
/* 80379E2C 00375A8C 7E C8 B3 78 */ mr r8, r22
/* 80379E30 00375A90 38 A1 00 2C */ addi r5, r1, 0x2c
/* 80379E34 00375A94 38 C1 00 0C */ addi r6, r1, 0xc
/* 80379E38 00375A98 39 20 00 01 */ li r9, 1
/* 80379E3C 00375A9C 48 00 04 C5 */ bl PrepareWaveSoundImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail9WaveSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive13WaveSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii
/* 80379E40 00375AA0 2C 03 00 00 */ cmpwi r3, 0
/* 80379E44 00375AA4 7C 76 1B 78 */ mr r22, r3
/* 80379E48 00375AA8 41 82 00 2C */ beq lbl_80379E74
/* 80379E4C 00375AAC 81 98 00 00 */ lwz r12, 0(r24)
/* 80379E50 00375AB0 7F 03 C3 78 */ mr r3, r24
/* 80379E54 00375AB4 81 8C 00 28 */ lwz r12, 0x28(r12)
/* 80379E58 00375AB8 7D 89 03 A6 */ mtctr r12
/* 80379E5C 00375ABC 4E 80 04 21 */ bctrl
/* 80379E60 00375AC0 7E C3 B3 78 */ mr r3, r22
/* 80379E64 00375AC4 48 00 00 20 */ b lbl_80379E84
/* 80379E68 00375AC8 48 00 00 0C */ b lbl_80379E74
lbl_80379E6C:
/* 80379E6C 00375ACC 38 60 00 03 */ li r3, 3
/* 80379E70 00375AD0 48 00 00 14 */ b lbl_80379E84
lbl_80379E74:
/* 80379E74 00375AD4 7F 83 E3 78 */ mr r3, r28
/* 80379E78 00375AD8 7F 04 C3 78 */ mr r4, r24
/* 80379E7C 00375ADC 48 00 0B 25 */ bl detail_AttachSound__Q34nw4r3snd11SoundHandleFPQ44nw4r3snd6detail10BasicSound
/* 80379E80 00375AE0 38 60 00 00 */ li r3, 0
lbl_80379E84:
/* 80379E84 00375AE4 39 61 00 70 */ addi r11, r1, 0x70
/* 80379E88 00375AE8 4B E4 D2 D9 */ bl _restgpr_22
/* 80379E8C 00375AEC 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80379E90 00375AF0 7C 08 03 A6 */ mtlr r0
/* 80379E94 00375AF4 38 21 00 70 */ addi r1, r1, 0x70
/* 80379E98 00375AF8 4E 80 00 20 */ blr
.global PrepareSeqImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail8SeqSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive12SeqSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii
PrepareSeqImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail8SeqSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive12SeqSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii:
/* 80379E9C 00375AFC 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 80379EA0 00375B00 7C 08 02 A6 */ mflr r0
/* 80379EA4 00375B04 90 01 00 54 */ stw r0, 0x54(r1)
/* 80379EA8 00375B08 39 61 00 50 */ addi r11, r1, 0x50
/* 80379EAC 00375B0C 4B E4 D2 65 */ bl _savegpr_21
/* 80379EB0 00375B10 7C 96 23 78 */ mr r22, r4
/* 80379EB4 00375B14 80 85 00 00 */ lwz r4, 0(r5)
/* 80379EB8 00375B18 7C 75 1B 78 */ mr r21, r3
/* 80379EBC 00375B1C 7C B7 2B 78 */ mr r23, r5
/* 80379EC0 00375B20 7C D8 33 78 */ mr r24, r6
/* 80379EC4 00375B24 7C F9 3B 78 */ mr r25, r7
/* 80379EC8 00375B28 7D 1A 43 78 */ mr r26, r8
/* 80379ECC 00375B2C 7D 3B 4B 78 */ mr r27, r9
/* 80379ED0 00375B30 4B FF F9 ED */ bl detail_GetFileAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
/* 80379ED4 00375B34 2C 03 00 00 */ cmpwi r3, 0
/* 80379ED8 00375B38 7C 7D 1B 78 */ mr r29, r3
/* 80379EDC 00375B3C 3B 80 00 00 */ li r28, 0
/* 80379EE0 00375B40 40 82 00 98 */ bne lbl_80379F78
/* 80379EE4 00375B44 83 F6 00 04 */ lwz r31, 4(r22)
/* 80379EE8 00375B48 2C 1F 00 00 */ cmpwi r31, 0
/* 80379EEC 00375B4C 40 82 00 0C */ bne lbl_80379EF8
/* 80379EF0 00375B50 38 60 00 04 */ li r3, 4
/* 80379EF4 00375B54 48 00 02 94 */ b lbl_8037A188
lbl_80379EF8:
/* 80379EF8 00375B58 80 75 00 10 */ lwz r3, 0x10(r21)
/* 80379EFC 00375B5C 38 B6 02 28 */ addi r5, r22, 0x228
/* 80379F00 00375B60 80 97 00 00 */ lwz r4, 0(r23)
/* 80379F04 00375B64 38 C0 02 00 */ li r6, 0x200
/* 80379F08 00375B68 4B FF D1 A5 */ bl detail_OpenFileStream__Q34nw4r3snd12SoundArchiveCFUlPvi
/* 80379F0C 00375B6C 2C 03 00 00 */ cmpwi r3, 0
/* 80379F10 00375B70 7C 7C 1B 78 */ mr r28, r3
/* 80379F14 00375B74 40 82 00 0C */ bne lbl_80379F20
/* 80379F18 00375B78 38 60 00 06 */ li r3, 6
/* 80379F1C 00375B7C 48 00 02 6C */ b lbl_8037A188
lbl_80379F20:
/* 80379F20 00375B80 3B DF 00 04 */ addi r30, r31, 4
/* 80379F24 00375B84 7F C3 F3 78 */ mr r3, r30
/* 80379F28 00375B88 4B EF 5A 21 */ bl OSLockMutex
/* 80379F2C 00375B8C 38 7F 00 1C */ addi r3, r31, 0x1c
/* 80379F30 00375B90 4B FF 66 D1 */ bl GetFreeSize__Q44nw4r3snd6detail9FrameHeapCFv
/* 80379F34 00375B94 7C 7F 1B 78 */ mr r31, r3
/* 80379F38 00375B98 7F C3 F3 78 */ mr r3, r30
/* 80379F3C 00375B9C 4B EF 5A E9 */ bl OSUnlockMutex
/* 80379F40 00375BA0 81 9C 00 00 */ lwz r12, 0(r28)
/* 80379F44 00375BA4 7F 83 E3 78 */ mr r3, r28
/* 80379F48 00375BA8 81 8C 00 40 */ lwz r12, 0x40(r12)
/* 80379F4C 00375BAC 7D 89 03 A6 */ mtctr r12
/* 80379F50 00375BB0 4E 80 04 21 */ bctrl
/* 80379F54 00375BB4 7C 1F 18 40 */ cmplw r31, r3
/* 80379F58 00375BB8 40 80 00 20 */ bge lbl_80379F78
/* 80379F5C 00375BBC 81 9C 00 00 */ lwz r12, 0(r28)
/* 80379F60 00375BC0 7F 83 E3 78 */ mr r3, r28
/* 80379F64 00375BC4 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80379F68 00375BC8 7D 89 03 A6 */ mtctr r12
/* 80379F6C 00375BCC 4E 80 04 21 */ bctrl
/* 80379F70 00375BD0 38 60 00 05 */ li r3, 5
/* 80379F74 00375BD4 48 00 02 14 */ b lbl_8037A188
lbl_80379F78:
/* 80379F78 00375BD8 80 95 00 1C */ lwz r4, 0x1c(r21)
/* 80379F7C 00375BDC 7E C3 B3 78 */ mr r3, r22
/* 80379F80 00375BE0 80 B8 00 08 */ lwz r5, 8(r24)
/* 80379F84 00375BE4 7F 66 DB 78 */ mr r6, r27
/* 80379F88 00375BE8 38 F5 00 20 */ addi r7, r21, 0x20
/* 80379F8C 00375BEC 4B FF AD CD */ bl Setup__Q44nw4r3snd6detail8SeqSoundFPQ44nw4r3snd6detail17SeqTrackAllocatorUliPQ44nw4r3snd6detail14NoteOnCallback
/* 80379F90 00375BF0 48 00 00 B8 */ b lbl_8037A048
lbl_80379F94:
/* 80379F94 00375BF4 2C 03 00 01 */ cmpwi r3, 1
/* 80379F98 00375BF8 40 82 00 A8 */ bne lbl_8037A040
/* 80379F9C 00375BFC 80 15 00 3C */ lwz r0, 0x3c(r21)
/* 80379FA0 00375C00 28 00 00 01 */ cmplwi r0, 1
/* 80379FA4 00375C04 40 82 00 28 */ bne lbl_80379FCC
/* 80379FA8 00375C08 2C 1C 00 00 */ cmpwi r28, 0
/* 80379FAC 00375C0C 41 82 00 18 */ beq lbl_80379FC4
/* 80379FB0 00375C10 81 9C 00 00 */ lwz r12, 0(r28)
/* 80379FB4 00375C14 7F 83 E3 78 */ mr r3, r28
/* 80379FB8 00375C18 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 80379FBC 00375C1C 7D 89 03 A6 */ mtctr r12
/* 80379FC0 00375C20 4E 80 04 21 */ bctrl
lbl_80379FC4:
/* 80379FC4 00375C24 38 60 00 01 */ li r3, 1
/* 80379FC8 00375C28 48 00 01 C0 */ b lbl_8037A188
lbl_80379FCC:
/* 80379FCC 00375C2C 2C 00 00 00 */ cmpwi r0, 0
/* 80379FD0 00375C30 40 82 00 0C */ bne lbl_80379FDC
/* 80379FD4 00375C34 38 60 00 00 */ li r3, 0
/* 80379FD8 00375C38 48 00 00 0C */ b lbl_80379FE4
lbl_80379FDC:
/* 80379FDC 00375C3C 80 75 00 40 */ lwz r3, 0x40(r21)
/* 80379FE0 00375C40 38 63 FF 48 */ addi r3, r3, -184
lbl_80379FE4:
/* 80379FE4 00375C44 7C 16 18 40 */ cmplw r22, r3
/* 80379FE8 00375C48 40 82 00 28 */ bne lbl_8037A010
/* 80379FEC 00375C4C 2C 1C 00 00 */ cmpwi r28, 0
/* 80379FF0 00375C50 41 82 00 18 */ beq lbl_8037A008
/* 80379FF4 00375C54 81 9C 00 00 */ lwz r12, 0(r28)
/* 80379FF8 00375C58 7F 83 E3 78 */ mr r3, r28
/* 80379FFC 00375C5C 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 8037A000 00375C60 7D 89 03 A6 */ mtctr r12
/* 8037A004 00375C64 4E 80 04 21 */ bctrl
lbl_8037A008:
/* 8037A008 00375C68 38 60 00 01 */ li r3, 1
/* 8037A00C 00375C6C 48 00 01 7C */ b lbl_8037A188
lbl_8037A010:
/* 8037A010 00375C70 81 83 00 00 */ lwz r12, 0(r3)
/* 8037A014 00375C74 38 80 00 00 */ li r4, 0
/* 8037A018 00375C78 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 8037A01C 00375C7C 7D 89 03 A6 */ mtctr r12
/* 8037A020 00375C80 4E 80 04 21 */ bctrl
/* 8037A024 00375C84 80 95 00 1C */ lwz r4, 0x1c(r21)
/* 8037A028 00375C88 7E C3 B3 78 */ mr r3, r22
/* 8037A02C 00375C8C 80 B8 00 08 */ lwz r5, 8(r24)
/* 8037A030 00375C90 7F 66 DB 78 */ mr r6, r27
/* 8037A034 00375C94 38 F5 00 20 */ addi r7, r21, 0x20
/* 8037A038 00375C98 4B FF AD 21 */ bl Setup__Q44nw4r3snd6detail8SeqSoundFPQ44nw4r3snd6detail17SeqTrackAllocatorUliPQ44nw4r3snd6detail14NoteOnCallback
/* 8037A03C 00375C9C 48 00 00 0C */ b lbl_8037A048
lbl_8037A040:
/* 8037A040 00375CA0 38 60 00 FF */ li r3, 0xff
/* 8037A044 00375CA4 48 00 01 44 */ b lbl_8037A188
lbl_8037A048:
/* 8037A048 00375CA8 2C 03 00 00 */ cmpwi r3, 0
/* 8037A04C 00375CAC 40 82 FF 48 */ bne lbl_80379F94
/* 8037A050 00375CB0 80 97 00 0C */ lwz r4, 0xc(r23)
/* 8037A054 00375CB4 3C 00 43 30 */ lis r0, 0x4330
/* 8037A058 00375CB8 90 01 00 10 */ stw r0, 0x10(r1)
/* 8037A05C 00375CBC 7E C3 B3 78 */ mr r3, r22
/* 8037A060 00375CC0 6C 80 80 00 */ xoris r0, r4, 0x8000
/* 8037A064 00375CC4 81 96 00 00 */ lwz r12, 0(r22)
/* 8037A068 00375CC8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8037A06C 00375CCC C8 42 A7 58 */ lfd f2, lbl_80642D58-_SDA2_BASE_(r2)
/* 8037A070 00375CD0 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 8037A074 00375CD4 C0 02 A7 50 */ lfs f0, lbl_80642D50-_SDA2_BASE_(r2)
/* 8037A078 00375CD8 EC 21 10 28 */ fsubs f1, f1, f2
/* 8037A07C 00375CDC 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 8037A080 00375CE0 EC 21 00 24 */ fdivs f1, f1, f0
/* 8037A084 00375CE4 7D 89 03 A6 */ mtctr r12
/* 8037A088 00375CE8 4E 80 04 21 */ bctrl
/* 8037A08C 00375CEC 80 98 00 0C */ lwz r4, 0xc(r24)
/* 8037A090 00375CF0 7E C3 B3 78 */ mr r3, r22
/* 8037A094 00375CF4 4B FF B0 51 */ bl func_803750E4
/* 8037A098 00375CF8 88 98 00 10 */ lbz r4, 0x10(r24)
/* 8037A09C 00375CFC 7E C3 B3 78 */ mr r3, r22
/* 8037A0A0 00375D00 4B FF B0 4D */ bl func_803750EC
/* 8037A0A4 00375D04 81 96 00 00 */ lwz r12, 0(r22)
/* 8037A0A8 00375D08 7E C3 B3 78 */ mr r3, r22
/* 8037A0AC 00375D0C 80 97 00 10 */ lwz r4, 0x10(r23)
/* 8037A0B0 00375D10 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 8037A0B4 00375D14 7D 89 03 A6 */ mtctr r12
/* 8037A0B8 00375D18 4E 80 04 21 */ bctrl
/* 8037A0BC 00375D1C 81 96 00 00 */ lwz r12, 0(r22)
/* 8037A0C0 00375D20 7E C3 B3 78 */ mr r3, r22
/* 8037A0C4 00375D24 80 97 00 14 */ lwz r4, 0x14(r23)
/* 8037A0C8 00375D28 81 8C 00 54 */ lwz r12, 0x54(r12)
/* 8037A0CC 00375D2C 7D 89 03 A6 */ mtctr r12
/* 8037A0D0 00375D30 4E 80 04 21 */ bctrl
/* 8037A0D4 00375D34 81 96 00 00 */ lwz r12, 0(r22)
/* 8037A0D8 00375D38 7E C3 B3 78 */ mr r3, r22
/* 8037A0DC 00375D3C 80 97 00 18 */ lwz r4, 0x18(r23)
/* 8037A0E0 00375D40 81 8C 00 58 */ lwz r12, 0x58(r12)
/* 8037A0E4 00375D44 7D 89 03 A6 */ mtctr r12
/* 8037A0E8 00375D48 4E 80 04 21 */ bctrl
/* 8037A0EC 00375D4C 2C 19 00 01 */ cmpwi r25, 1
/* 8037A0F0 00375D50 41 82 00 28 */ beq lbl_8037A118
/* 8037A0F4 00375D54 40 80 00 10 */ bge lbl_8037A104
/* 8037A0F8 00375D58 2C 19 00 00 */ cmpwi r25, 0
/* 8037A0FC 00375D5C 40 80 00 14 */ bge lbl_8037A110
/* 8037A100 00375D60 48 00 00 2C */ b lbl_8037A12C
lbl_8037A104:
/* 8037A104 00375D64 2C 19 00 03 */ cmpwi r25, 3
/* 8037A108 00375D68 40 80 00 24 */ bge lbl_8037A12C
/* 8037A10C 00375D6C 48 00 00 14 */ b lbl_8037A120
lbl_8037A110:
/* 8037A110 00375D70 3B C0 00 01 */ li r30, 1
/* 8037A114 00375D74 48 00 00 20 */ b lbl_8037A134
lbl_8037A118:
/* 8037A118 00375D78 3B C0 00 00 */ li r30, 0
/* 8037A11C 00375D7C 48 00 00 18 */ b lbl_8037A134
lbl_8037A120:
/* 8037A120 00375D80 3B C0 00 00 */ li r30, 0
/* 8037A124 00375D84 3B 40 00 00 */ li r26, 0
/* 8037A128 00375D88 48 00 00 0C */ b lbl_8037A134
lbl_8037A12C:
/* 8037A12C 00375D8C 3B C0 00 00 */ li r30, 0
/* 8037A130 00375D90 3B 40 00 00 */ li r26, 0
lbl_8037A134:
/* 8037A134 00375D94 2C 1D 00 00 */ cmpwi r29, 0
/* 8037A138 00375D98 41 82 00 34 */ beq lbl_8037A16C
/* 8037A13C 00375D9C 7F A4 EB 78 */ mr r4, r29
/* 8037A140 00375DA0 38 61 00 08 */ addi r3, r1, 8
/* 8037A144 00375DA4 4B FF 98 A1 */ bl __ct__Q44nw4r3snd6detail13SeqFileReaderFPCv
/* 8037A148 00375DA8 38 61 00 08 */ addi r3, r1, 8
/* 8037A14C 00375DAC 4B FF 99 05 */ bl GetBaseAddress__Q44nw4r3snd6detail13SeqFileReaderCFv
/* 8037A150 00375DB0 80 B8 00 00 */ lwz r5, 0(r24)
/* 8037A154 00375DB4 7C 64 1B 78 */ mr r4, r3
/* 8037A158 00375DB8 7E C3 B3 78 */ mr r3, r22
/* 8037A15C 00375DBC 7F C6 F3 78 */ mr r6, r30
/* 8037A160 00375DC0 7F 47 D3 78 */ mr r7, r26
/* 8037A164 00375DC4 4B FF AC 5D */ bl Prepare__Q44nw4r3snd6detail8SeqSoundFPCvlQ54nw4r3snd6detail9SeqPlayer10OffsetTypei
/* 8037A168 00375DC8 48 00 00 1C */ b lbl_8037A184
lbl_8037A16C:
/* 8037A16C 00375DCC 80 B8 00 00 */ lwz r5, 0(r24)
/* 8037A170 00375DD0 7E C3 B3 78 */ mr r3, r22
/* 8037A174 00375DD4 7F 84 E3 78 */ mr r4, r28
/* 8037A178 00375DD8 7F C6 F3 78 */ mr r6, r30
/* 8037A17C 00375DDC 7F 47 D3 78 */ mr r7, r26
/* 8037A180 00375DE0 4B FF AC A9 */ bl Prepare__Q44nw4r3snd6detail8SeqSoundFPQ34nw4r2ut10FileStreamlQ54nw4r3snd6detail9SeqPlayer10OffsetTypei
lbl_8037A184:
/* 8037A184 00375DE4 38 60 00 00 */ li r3, 0
lbl_8037A188:
/* 8037A188 00375DE8 39 61 00 50 */ addi r11, r1, 0x50
/* 8037A18C 00375DEC 4B E4 CF D1 */ bl _restgpr_21
/* 8037A190 00375DF0 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8037A194 00375DF4 7C 08 03 A6 */ mtlr r0
/* 8037A198 00375DF8 38 21 00 50 */ addi r1, r1, 0x50
/* 8037A19C 00375DFC 4E 80 00 20 */ blr
.global PrepareStrmImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail9StrmSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive13StrmSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii
PrepareStrmImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail9StrmSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive13StrmSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii:
/* 8037A1A0 00375E00 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8037A1A4 00375E04 7C 08 02 A6 */ mflr r0
/* 8037A1A8 00375E08 90 01 00 34 */ stw r0, 0x34(r1)
/* 8037A1AC 00375E0C 39 61 00 30 */ addi r11, r1, 0x30
/* 8037A1B0 00375E10 4B E4 CF 75 */ bl _savegpr_26
/* 8037A1B4 00375E14 2C 07 00 01 */ cmpwi r7, 1
/* 8037A1B8 00375E18 7C 7A 1B 78 */ mr r26, r3
/* 8037A1BC 00375E1C 7C 9B 23 78 */ mr r27, r4
/* 8037A1C0 00375E20 7C BC 2B 78 */ mr r28, r5
/* 8037A1C4 00375E24 7D 1D 43 78 */ mr r29, r8
/* 8037A1C8 00375E28 7D 3E 4B 78 */ mr r30, r9
/* 8037A1CC 00375E2C 41 82 00 28 */ beq lbl_8037A1F4
/* 8037A1D0 00375E30 40 80 00 10 */ bge lbl_8037A1E0
/* 8037A1D4 00375E34 2C 07 00 00 */ cmpwi r7, 0
/* 8037A1D8 00375E38 40 80 00 14 */ bge lbl_8037A1EC
/* 8037A1DC 00375E3C 48 00 00 2C */ b lbl_8037A208
lbl_8037A1E0:
/* 8037A1E0 00375E40 2C 07 00 03 */ cmpwi r7, 3
/* 8037A1E4 00375E44 40 80 00 24 */ bge lbl_8037A208
/* 8037A1E8 00375E48 48 00 00 18 */ b lbl_8037A200
lbl_8037A1EC:
/* 8037A1EC 00375E4C 3B E0 00 01 */ li r31, 1
/* 8037A1F0 00375E50 48 00 00 20 */ b lbl_8037A210
lbl_8037A1F4:
/* 8037A1F4 00375E54 3B E0 00 00 */ li r31, 0
/* 8037A1F8 00375E58 3B A0 00 00 */ li r29, 0
/* 8037A1FC 00375E5C 48 00 00 14 */ b lbl_8037A210
lbl_8037A200:
/* 8037A200 00375E60 3B E0 00 00 */ li r31, 0
/* 8037A204 00375E64 48 00 00 0C */ b lbl_8037A210
lbl_8037A208:
/* 8037A208 00375E68 3B E0 00 00 */ li r31, 0
/* 8037A20C 00375E6C 3B A0 00 00 */ li r29, 0
lbl_8037A210:
/* 8037A210 00375E70 80 85 00 00 */ lwz r4, 0(r5)
/* 8037A214 00375E74 38 BB 09 54 */ addi r5, r27, 0x954
/* 8037A218 00375E78 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8037A21C 00375E7C 38 C0 02 00 */ li r6, 0x200
/* 8037A220 00375E80 4B FF CE 8D */ bl detail_OpenFileStream__Q34nw4r3snd12SoundArchiveCFUlPvi
/* 8037A224 00375E84 2C 03 00 00 */ cmpwi r3, 0
/* 8037A228 00375E88 7C 68 1B 78 */ mr r8, r3
/* 8037A22C 00375E8C 40 82 00 0C */ bne lbl_8037A238
/* 8037A230 00375E90 38 60 00 06 */ li r3, 6
/* 8037A234 00375E94 48 00 00 B4 */ b lbl_8037A2E8
lbl_8037A238:
/* 8037A238 00375E98 7F 63 DB 78 */ mr r3, r27
/* 8037A23C 00375E9C 7F E5 FB 78 */ mr r5, r31
/* 8037A240 00375EA0 7F A6 EB 78 */ mr r6, r29
/* 8037A244 00375EA4 7F C7 F3 78 */ mr r7, r30
/* 8037A248 00375EA8 38 9A 00 BC */ addi r4, r26, 0xbc
/* 8037A24C 00375EAC 48 00 53 E1 */ bl Prepare__Q44nw4r3snd6detail9StrmSoundFPQ44nw4r3snd6detail14StrmBufferPoolQ54nw4r3snd6detail10StrmPlayer15StartOffsetTypeliPQ34nw4r2ut10FileStream
/* 8037A250 00375EB0 2C 03 00 00 */ cmpwi r3, 0
/* 8037A254 00375EB4 40 82 00 0C */ bne lbl_8037A260
/* 8037A258 00375EB8 38 60 00 FF */ li r3, 0xff
/* 8037A25C 00375EBC 48 00 00 8C */ b lbl_8037A2E8
lbl_8037A260:
/* 8037A260 00375EC0 80 9C 00 0C */ lwz r4, 0xc(r28)
/* 8037A264 00375EC4 3C 00 43 30 */ lis r0, 0x4330
/* 8037A268 00375EC8 90 01 00 08 */ stw r0, 8(r1)
/* 8037A26C 00375ECC 7F 63 DB 78 */ mr r3, r27
/* 8037A270 00375ED0 6C 80 80 00 */ xoris r0, r4, 0x8000
/* 8037A274 00375ED4 81 9B 00 00 */ lwz r12, 0(r27)
/* 8037A278 00375ED8 90 01 00 0C */ stw r0, 0xc(r1)
/* 8037A27C 00375EDC C8 42 A7 58 */ lfd f2, lbl_80642D58-_SDA2_BASE_(r2)
/* 8037A280 00375EE0 C8 21 00 08 */ lfd f1, 8(r1)
/* 8037A284 00375EE4 C0 02 A7 50 */ lfs f0, lbl_80642D50-_SDA2_BASE_(r2)
/* 8037A288 00375EE8 EC 21 10 28 */ fsubs f1, f1, f2
/* 8037A28C 00375EEC 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 8037A290 00375EF0 EC 21 00 24 */ fdivs f1, f1, f0
/* 8037A294 00375EF4 7D 89 03 A6 */ mtctr r12
/* 8037A298 00375EF8 4E 80 04 21 */ bctrl
/* 8037A29C 00375EFC 81 9B 00 00 */ lwz r12, 0(r27)
/* 8037A2A0 00375F00 7F 63 DB 78 */ mr r3, r27
/* 8037A2A4 00375F04 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 8037A2A8 00375F08 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 8037A2AC 00375F0C 7D 89 03 A6 */ mtctr r12
/* 8037A2B0 00375F10 4E 80 04 21 */ bctrl
/* 8037A2B4 00375F14 81 9B 00 00 */ lwz r12, 0(r27)
/* 8037A2B8 00375F18 7F 63 DB 78 */ mr r3, r27
/* 8037A2BC 00375F1C 80 9C 00 14 */ lwz r4, 0x14(r28)
/* 8037A2C0 00375F20 81 8C 00 54 */ lwz r12, 0x54(r12)
/* 8037A2C4 00375F24 7D 89 03 A6 */ mtctr r12
/* 8037A2C8 00375F28 4E 80 04 21 */ bctrl
/* 8037A2CC 00375F2C 81 9B 00 00 */ lwz r12, 0(r27)
/* 8037A2D0 00375F30 7F 63 DB 78 */ mr r3, r27
/* 8037A2D4 00375F34 80 9C 00 18 */ lwz r4, 0x18(r28)
/* 8037A2D8 00375F38 81 8C 00 58 */ lwz r12, 0x58(r12)
/* 8037A2DC 00375F3C 7D 89 03 A6 */ mtctr r12
/* 8037A2E0 00375F40 4E 80 04 21 */ bctrl
/* 8037A2E4 00375F44 38 60 00 00 */ li r3, 0
lbl_8037A2E8:
/* 8037A2E8 00375F48 39 61 00 30 */ addi r11, r1, 0x30
/* 8037A2EC 00375F4C 4B E4 CE 85 */ bl _restgpr_26
/* 8037A2F0 00375F50 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8037A2F4 00375F54 7C 08 03 A6 */ mtlr r0
/* 8037A2F8 00375F58 38 21 00 30 */ addi r1, r1, 0x30
/* 8037A2FC 00375F5C 4E 80 00 20 */ blr
.global PrepareWaveSoundImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail9WaveSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive13WaveSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii
PrepareWaveSoundImpl__Q34nw4r3snd18SoundArchivePlayerFPQ44nw4r3snd6detail9WaveSoundPCQ44nw4r3snd12SoundArchive9SoundInfoPCQ44nw4r3snd12SoundArchive13WaveSoundInfoQ54nw4r3snd14SoundStartable9StartInfo15StartOffsetTypeii:
/* 8037A300 00375F60 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8037A304 00375F64 7C 08 02 A6 */ mflr r0
/* 8037A308 00375F68 90 01 00 34 */ stw r0, 0x34(r1)
/* 8037A30C 00375F6C 39 61 00 30 */ addi r11, r1, 0x30
/* 8037A310 00375F70 4B E4 CE 11 */ bl _savegpr_25
/* 8037A314 00375F74 7C 9A 23 78 */ mr r26, r4
/* 8037A318 00375F78 80 85 00 00 */ lwz r4, 0(r5)
/* 8037A31C 00375F7C 7C 79 1B 78 */ mr r25, r3
/* 8037A320 00375F80 7C BB 2B 78 */ mr r27, r5
/* 8037A324 00375F84 7C DC 33 78 */ mr r28, r6
/* 8037A328 00375F88 7C FD 3B 78 */ mr r29, r7
/* 8037A32C 00375F8C 7D 1E 43 78 */ mr r30, r8
/* 8037A330 00375F90 7D 3F 4B 78 */ mr r31, r9
/* 8037A334 00375F94 4B FF F5 89 */ bl detail_GetFileAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
/* 8037A338 00375F98 2C 03 00 00 */ cmpwi r3, 0
/* 8037A33C 00375F9C 7C 64 1B 78 */ mr r4, r3
/* 8037A340 00375FA0 40 82 00 0C */ bne lbl_8037A34C
/* 8037A344 00375FA4 38 60 00 04 */ li r3, 4
/* 8037A348 00375FA8 48 00 01 18 */ b lbl_8037A460
lbl_8037A34C:
/* 8037A34C 00375FAC 2C 1D 00 01 */ cmpwi r29, 1
/* 8037A350 00375FB0 41 82 00 28 */ beq lbl_8037A378
/* 8037A354 00375FB4 40 80 00 10 */ bge lbl_8037A364
/* 8037A358 00375FB8 2C 1D 00 00 */ cmpwi r29, 0
/* 8037A35C 00375FBC 40 80 00 14 */ bge lbl_8037A370
/* 8037A360 00375FC0 48 00 00 2C */ b lbl_8037A38C
lbl_8037A364:
/* 8037A364 00375FC4 2C 1D 00 03 */ cmpwi r29, 3
/* 8037A368 00375FC8 40 80 00 24 */ bge lbl_8037A38C
/* 8037A36C 00375FCC 48 00 00 18 */ b lbl_8037A384
lbl_8037A370:
/* 8037A370 00375FD0 38 C0 00 01 */ li r6, 1
/* 8037A374 00375FD4 48 00 00 20 */ b lbl_8037A394
lbl_8037A378:
/* 8037A378 00375FD8 38 C0 00 00 */ li r6, 0
/* 8037A37C 00375FDC 3B C0 00 00 */ li r30, 0
/* 8037A380 00375FE0 48 00 00 14 */ b lbl_8037A394
lbl_8037A384:
/* 8037A384 00375FE4 38 C0 00 00 */ li r6, 0
/* 8037A388 00375FE8 48 00 00 0C */ b lbl_8037A394
lbl_8037A38C:
/* 8037A38C 00375FEC 38 C0 00 00 */ li r6, 0
/* 8037A390 00375FF0 3B C0 00 00 */ li r30, 0
lbl_8037A394:
/* 8037A394 00375FF4 80 BC 00 00 */ lwz r5, 0(r28)
/* 8037A398 00375FF8 7F 43 D3 78 */ mr r3, r26
/* 8037A39C 00375FFC 81 5B 00 00 */ lwz r10, 0(r27)
/* 8037A3A0 00376000 7F C7 F3 78 */ mr r7, r30
/* 8037A3A4 00376004 7F E8 FB 78 */ mr r8, r31
/* 8037A3A8 00376008 39 39 00 28 */ addi r9, r25, 0x28
/* 8037A3AC 0037600C 48 00 93 41 */ bl Prepare__Q44nw4r3snd6detail9WaveSoundFPCvlQ54nw4r3snd6detail9WsdPlayer15StartOffsetTypeliPCQ54nw4r3snd6detail9WsdPlayer11WsdCallbackUl
/* 8037A3B0 00376010 2C 03 00 00 */ cmpwi r3, 0
/* 8037A3B4 00376014 40 82 00 0C */ bne lbl_8037A3C0
/* 8037A3B8 00376018 38 60 00 FF */ li r3, 0xff
/* 8037A3BC 0037601C 48 00 00 A4 */ b lbl_8037A460
lbl_8037A3C0:
/* 8037A3C0 00376020 80 9B 00 0C */ lwz r4, 0xc(r27)
/* 8037A3C4 00376024 3C 00 43 30 */ lis r0, 0x4330
/* 8037A3C8 00376028 90 01 00 08 */ stw r0, 8(r1)
/* 8037A3CC 0037602C 7F 43 D3 78 */ mr r3, r26
/* 8037A3D0 00376030 6C 80 80 00 */ xoris r0, r4, 0x8000
/* 8037A3D4 00376034 81 9A 00 00 */ lwz r12, 0(r26)
/* 8037A3D8 00376038 90 01 00 0C */ stw r0, 0xc(r1)
/* 8037A3DC 0037603C C8 42 A7 58 */ lfd f2, lbl_80642D58-_SDA2_BASE_(r2)
/* 8037A3E0 00376040 C8 21 00 08 */ lfd f1, 8(r1)
/* 8037A3E4 00376044 C0 02 A7 50 */ lfs f0, lbl_80642D50-_SDA2_BASE_(r2)
/* 8037A3E8 00376048 EC 21 10 28 */ fsubs f1, f1, f2
/* 8037A3EC 0037604C 81 8C 00 34 */ lwz r12, 0x34(r12)
/* 8037A3F0 00376050 EC 21 00 24 */ fdivs f1, f1, f0
/* 8037A3F4 00376054 7D 89 03 A6 */ mtctr r12
/* 8037A3F8 00376058 4E 80 04 21 */ bctrl
/* 8037A3FC 0037605C 80 9C 00 04 */ lwz r4, 4(r28)
/* 8037A400 00376060 7F 43 D3 78 */ mr r3, r26
/* 8037A404 00376064 48 00 94 61 */ bl SetChannelPriority__Q44nw4r3snd6detail9WaveSoundFi
/* 8037A408 00376068 88 9C 00 08 */ lbz r4, 8(r28)
/* 8037A40C 0037606C 7F 43 D3 78 */ mr r3, r26
/* 8037A410 00376070 48 00 94 5D */ bl SetReleasePriorityFix__Q44nw4r3snd6detail9WaveSoundFb
/* 8037A414 00376074 81 9A 00 00 */ lwz r12, 0(r26)
/* 8037A418 00376078 7F 43 D3 78 */ mr r3, r26
/* 8037A41C 0037607C 80 9B 00 10 */ lwz r4, 0x10(r27)
/* 8037A420 00376080 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 8037A424 00376084 7D 89 03 A6 */ mtctr r12
/* 8037A428 00376088 4E 80 04 21 */ bctrl
/* 8037A42C 0037608C 81 9A 00 00 */ lwz r12, 0(r26)
/* 8037A430 00376090 7F 43 D3 78 */ mr r3, r26
/* 8037A434 00376094 80 9B 00 14 */ lwz r4, 0x14(r27)
/* 8037A438 00376098 81 8C 00 54 */ lwz r12, 0x54(r12)
/* 8037A43C 0037609C 7D 89 03 A6 */ mtctr r12
/* 8037A440 003760A0 4E 80 04 21 */ bctrl
/* 8037A444 003760A4 81 9A 00 00 */ lwz r12, 0(r26)
/* 8037A448 003760A8 7F 43 D3 78 */ mr r3, r26
/* 8037A44C 003760AC 80 9B 00 18 */ lwz r4, 0x18(r27)
/* 8037A450 003760B0 81 8C 00 58 */ lwz r12, 0x58(r12)
/* 8037A454 003760B4 7D 89 03 A6 */ mtctr r12
/* 8037A458 003760B8 4E 80 04 21 */ bctrl
/* 8037A45C 003760BC 38 60 00 00 */ li r3, 0
lbl_8037A460:
/* 8037A460 003760C0 39 61 00 30 */ addi r11, r1, 0x30
/* 8037A464 003760C4 4B E4 CD 09 */ bl _restgpr_25
/* 8037A468 003760C8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8037A46C 003760CC 7C 08 03 A6 */ mtlr r0
/* 8037A470 003760D0 38 21 00 30 */ addi r1, r1, 0x30
/* 8037A474 003760D4 4E 80 00 20 */ blr
.global LoadGroup__Q34nw4r3snd18SoundArchivePlayerFUlPQ34nw4r3snd22SoundMemoryAllocatableUl
LoadGroup__Q34nw4r3snd18SoundArchivePlayerFUlPQ34nw4r3snd22SoundMemoryAllocatableUl:
/* 8037A478 003760D8 94 21 FD C0 */ stwu r1, -0x240(r1)
/* 8037A47C 003760DC 7C 08 02 A6 */ mflr r0
/* 8037A480 003760E0 90 01 02 44 */ stw r0, 0x244(r1)
/* 8037A484 003760E4 93 E1 02 3C */ stw r31, 0x23c(r1)
/* 8037A488 003760E8 7C DF 33 78 */ mr r31, r6
/* 8037A48C 003760EC 93 C1 02 38 */ stw r30, 0x238(r1)
/* 8037A490 003760F0 7C BE 2B 78 */ mr r30, r5
/* 8037A494 003760F4 93 A1 02 34 */ stw r29, 0x234(r1)
/* 8037A498 003760F8 7C 9D 23 78 */ mr r29, r4
/* 8037A49C 003760FC 93 81 02 30 */ stw r28, 0x230(r1)
/* 8037A4A0 00376100 7C 7C 1B 78 */ mr r28, r3
/* 8037A4A4 00376104 80 03 00 10 */ lwz r0, 0x10(r3)
/* 8037A4A8 00376108 2C 00 00 00 */ cmpwi r0, 0
/* 8037A4AC 0037610C 40 82 00 0C */ bne lbl_8037A4B8
/* 8037A4B0 00376110 38 60 00 00 */ li r3, 0
/* 8037A4B4 00376114 48 00 00 0C */ b lbl_8037A4C0
lbl_8037A4B8:
/* 8037A4B8 00376118 7C 03 03 78 */ mr r3, r0
/* 8037A4BC 0037611C 4B FF CB 35 */ bl IsAvailable__Q34nw4r3snd12SoundArchiveCFv
lbl_8037A4C0:
/* 8037A4C0 00376120 2C 03 00 00 */ cmpwi r3, 0
/* 8037A4C4 00376124 40 82 00 0C */ bne lbl_8037A4D0
/* 8037A4C8 00376128 38 60 00 00 */ li r3, 0
/* 8037A4CC 0037612C 48 00 00 F4 */ b lbl_8037A5C0
lbl_8037A4D0:
/* 8037A4D0 00376130 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 8037A4D4 00376134 4B FF CB 61 */ bl func_80377034
/* 8037A4D8 00376138 7C 1D 18 40 */ cmplw r29, r3
/* 8037A4DC 0037613C 41 80 00 0C */ blt lbl_8037A4E8
/* 8037A4E0 00376140 38 60 00 00 */ li r3, 0
/* 8037A4E4 00376144 48 00 00 DC */ b lbl_8037A5C0
lbl_8037A4E8:
/* 8037A4E8 00376148 80 7C 00 14 */ lwz r3, 0x14(r28)
/* 8037A4EC 0037614C 2C 03 00 00 */ cmpwi r3, 0
/* 8037A4F0 00376150 40 82 00 0C */ bne lbl_8037A4FC
/* 8037A4F4 00376154 38 00 00 00 */ li r0, 0
/* 8037A4F8 00376158 48 00 00 24 */ b lbl_8037A51C
lbl_8037A4FC:
/* 8037A4FC 0037615C 80 03 00 00 */ lwz r0, 0(r3)
/* 8037A500 00376160 7C 1D 00 40 */ cmplw r29, r0
/* 8037A504 00376164 41 80 00 0C */ blt lbl_8037A510
/* 8037A508 00376168 38 00 00 00 */ li r0, 0
/* 8037A50C 0037616C 48 00 00 10 */ b lbl_8037A51C
lbl_8037A510:
/* 8037A510 00376170 57 A0 18 38 */ slwi r0, r29, 3
/* 8037A514 00376174 7C 63 02 14 */ add r3, r3, r0
/* 8037A518 00376178 80 03 00 04 */ lwz r0, 4(r3)
lbl_8037A51C:
/* 8037A51C 0037617C 2C 00 00 00 */ cmpwi r0, 0
/* 8037A520 00376180 41 82 00 0C */ beq lbl_8037A52C
/* 8037A524 00376184 38 60 00 01 */ li r3, 1
/* 8037A528 00376188 48 00 00 98 */ b lbl_8037A5C0
lbl_8037A52C:
/* 8037A52C 0037618C 2C 1E 00 00 */ cmpwi r30, 0
/* 8037A530 00376190 40 82 00 0C */ bne lbl_8037A53C
/* 8037A534 00376194 38 60 00 00 */ li r3, 0
/* 8037A538 00376198 48 00 00 88 */ b lbl_8037A5C0
lbl_8037A53C:
/* 8037A53C 0037619C 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 8037A540 003761A0 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A544 003761A4 4B FF DE 0D */ bl __ct__Q44nw4r3snd6detail18SoundArchiveLoaderFRCQ34nw4r3snd12SoundArchive
/* 8037A548 003761A8 7F A4 EB 78 */ mr r4, r29
/* 8037A54C 003761AC 7F C5 F3 78 */ mr r5, r30
/* 8037A550 003761B0 7F E7 FB 78 */ mr r7, r31
/* 8037A554 003761B4 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A558 003761B8 38 C1 00 08 */ addi r6, r1, 8
/* 8037A55C 003761BC 4B FF DE 71 */ bl LoadGroup__Q44nw4r3snd6detail18SoundArchiveLoaderFUlPQ34nw4r3snd22SoundMemoryAllocatablePPvUl
/* 8037A560 003761C0 2C 03 00 00 */ cmpwi r3, 0
/* 8037A564 003761C4 40 82 00 18 */ bne lbl_8037A57C
/* 8037A568 003761C8 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A56C 003761CC 38 80 FF FF */ li r4, -1
/* 8037A570 003761D0 4B FF DE 1D */ bl __dt__Q44nw4r3snd6detail18SoundArchiveLoaderFv
/* 8037A574 003761D4 38 60 00 00 */ li r3, 0
/* 8037A578 003761D8 48 00 00 48 */ b lbl_8037A5C0
lbl_8037A57C:
/* 8037A57C 003761DC 80 9C 00 14 */ lwz r4, 0x14(r28)
/* 8037A580 003761E0 2C 04 00 00 */ cmpwi r4, 0
/* 8037A584 003761E4 41 82 00 10 */ beq lbl_8037A594
/* 8037A588 003761E8 57 A0 18 38 */ slwi r0, r29, 3
/* 8037A58C 003761EC 7C 84 02 14 */ add r4, r4, r0
/* 8037A590 003761F0 90 64 00 04 */ stw r3, 4(r4)
lbl_8037A594:
/* 8037A594 003761F4 80 7C 00 14 */ lwz r3, 0x14(r28)
/* 8037A598 003761F8 80 81 00 08 */ lwz r4, 8(r1)
/* 8037A59C 003761FC 2C 03 00 00 */ cmpwi r3, 0
/* 8037A5A0 00376200 41 82 00 10 */ beq lbl_8037A5B0
/* 8037A5A4 00376204 57 A0 18 38 */ slwi r0, r29, 3
/* 8037A5A8 00376208 7C 63 02 14 */ add r3, r3, r0
/* 8037A5AC 0037620C 90 83 00 08 */ stw r4, 8(r3)
lbl_8037A5B0:
/* 8037A5B0 00376210 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A5B4 00376214 38 80 FF FF */ li r4, -1
/* 8037A5B8 00376218 4B FF DD D5 */ bl __dt__Q44nw4r3snd6detail18SoundArchiveLoaderFv
/* 8037A5BC 0037621C 38 60 00 01 */ li r3, 1
lbl_8037A5C0:
/* 8037A5C0 00376220 80 01 02 44 */ lwz r0, 0x244(r1)
/* 8037A5C4 00376224 83 E1 02 3C */ lwz r31, 0x23c(r1)
/* 8037A5C8 00376228 83 C1 02 38 */ lwz r30, 0x238(r1)
/* 8037A5CC 0037622C 83 A1 02 34 */ lwz r29, 0x234(r1)
/* 8037A5D0 00376230 83 81 02 30 */ lwz r28, 0x230(r1)
/* 8037A5D4 00376234 7C 08 03 A6 */ mtlr r0
/* 8037A5D8 00376238 38 21 02 40 */ addi r1, r1, 0x240
/* 8037A5DC 0037623C 4E 80 00 20 */ blr
.global InvalidateData__Q34nw4r3snd18SoundArchivePlayerFPCvPCv
InvalidateData__Q34nw4r3snd18SoundArchivePlayerFPCvPCv:
/* 8037A5E0 00376240 80 03 00 14 */ lwz r0, 0x14(r3)
/* 8037A5E4 00376244 2C 00 00 00 */ cmpwi r0, 0
/* 8037A5E8 00376248 4D 82 00 20 */ beqlr
/* 8037A5EC 0037624C 39 20 00 00 */ li r9, 0
/* 8037A5F0 00376250 38 E0 00 00 */ li r7, 0
/* 8037A5F4 00376254 38 C0 00 00 */ li r6, 0
/* 8037A5F8 00376258 48 00 00 28 */ b lbl_8037A620
lbl_8037A5FC:
/* 8037A5FC 0037625C 7D 08 3A 14 */ add r8, r8, r7
/* 8037A600 00376260 80 08 00 04 */ lwz r0, 4(r8)
/* 8037A604 00376264 7C 04 00 40 */ cmplw r4, r0
/* 8037A608 00376268 41 81 00 10 */ bgt lbl_8037A618
/* 8037A60C 0037626C 7C 00 28 40 */ cmplw r0, r5
/* 8037A610 00376270 41 81 00 08 */ bgt lbl_8037A618
/* 8037A614 00376274 90 C8 00 04 */ stw r6, 4(r8)
lbl_8037A618:
/* 8037A618 00376278 38 E7 00 08 */ addi r7, r7, 8
/* 8037A61C 0037627C 39 29 00 01 */ addi r9, r9, 1
lbl_8037A620:
/* 8037A620 00376280 81 03 00 14 */ lwz r8, 0x14(r3)
/* 8037A624 00376284 80 08 00 00 */ lwz r0, 0(r8)
/* 8037A628 00376288 7C 09 00 40 */ cmplw r9, r0
/* 8037A62C 0037628C 41 80 FF D0 */ blt lbl_8037A5FC
/* 8037A630 00376290 4E 80 00 20 */ blr
.global InvalidateWaveData__Q34nw4r3snd18SoundArchivePlayerFPCvPCv
InvalidateWaveData__Q34nw4r3snd18SoundArchivePlayerFPCvPCv:
/* 8037A634 00376294 80 03 00 14 */ lwz r0, 0x14(r3)
/* 8037A638 00376298 2C 00 00 00 */ cmpwi r0, 0
/* 8037A63C 0037629C 4D 82 00 20 */ beqlr
/* 8037A640 003762A0 39 20 00 00 */ li r9, 0
/* 8037A644 003762A4 38 E0 00 00 */ li r7, 0
/* 8037A648 003762A8 38 C0 00 00 */ li r6, 0
/* 8037A64C 003762AC 48 00 00 28 */ b lbl_8037A674
lbl_8037A650:
/* 8037A650 003762B0 7D 08 3A 14 */ add r8, r8, r7
/* 8037A654 003762B4 80 08 00 08 */ lwz r0, 8(r8)
/* 8037A658 003762B8 7C 04 00 40 */ cmplw r4, r0
/* 8037A65C 003762BC 41 81 00 10 */ bgt lbl_8037A66C
/* 8037A660 003762C0 7C 00 28 40 */ cmplw r0, r5
/* 8037A664 003762C4 41 81 00 08 */ bgt lbl_8037A66C
/* 8037A668 003762C8 90 C8 00 08 */ stw r6, 8(r8)
lbl_8037A66C:
/* 8037A66C 003762CC 38 E7 00 08 */ addi r7, r7, 8
/* 8037A670 003762D0 39 29 00 01 */ addi r9, r9, 1
lbl_8037A674:
/* 8037A674 003762D4 81 03 00 14 */ lwz r8, 0x14(r3)
/* 8037A678 003762D8 80 08 00 00 */ lwz r0, 0(r8)
/* 8037A67C 003762DC 7C 09 00 40 */ cmplw r9, r0
/* 8037A680 003762E0 41 80 FF D0 */ blt lbl_8037A650
/* 8037A684 003762E4 4E 80 00 20 */ blr
.global NoteOn__Q44nw4r3snd18SoundArchivePlayer17SeqNoteOnCallbackFPQ44nw4r3snd6detail9SeqPlayeriRCQ44nw4r3snd6detail10NoteOnInfo
NoteOn__Q44nw4r3snd18SoundArchivePlayer17SeqNoteOnCallbackFPQ44nw4r3snd6detail9SeqPlayeriRCQ44nw4r3snd6detail10NoteOnInfo:
/* 8037A688 003762E8 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8037A68C 003762EC 7C 08 02 A6 */ mflr r0
/* 8037A690 003762F0 90 01 00 54 */ stw r0, 0x54(r1)
/* 8037A694 003762F4 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8037A698 003762F8 7C 9F 23 78 */ mr r31, r4
/* 8037A69C 003762FC 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8037A6A0 00376300 7C DE 33 78 */ mr r30, r6
/* 8037A6A4 00376304 93 A1 00 44 */ stw r29, 0x44(r1)
/* 8037A6A8 00376308 7C 7D 1B 78 */ mr r29, r3
/* 8037A6AC 0037630C 80 A3 00 04 */ lwz r5, 4(r3)
/* 8037A6B0 00376310 80 65 00 10 */ lwz r3, 0x10(r5)
/* 8037A6B4 00376314 2C 03 00 00 */ cmpwi r3, 0
/* 8037A6B8 00376318 40 82 00 0C */ bne lbl_8037A6C4
/* 8037A6BC 0037631C 38 60 00 00 */ li r3, 0
/* 8037A6C0 00376320 48 00 00 08 */ b lbl_8037A6C8
lbl_8037A6C4:
/* 8037A6C4 00376324 4B FF C9 2D */ bl IsAvailable__Q34nw4r3snd12SoundArchiveCFv
lbl_8037A6C8:
/* 8037A6C8 00376328 2C 03 00 00 */ cmpwi r3, 0
/* 8037A6CC 0037632C 40 82 00 0C */ bne lbl_8037A6D8
/* 8037A6D0 00376330 38 60 00 00 */ li r3, 0
/* 8037A6D4 00376334 48 00 00 C0 */ b lbl_8037A794
lbl_8037A6D8:
/* 8037A6D8 00376338 80 7D 00 04 */ lwz r3, 4(r29)
/* 8037A6DC 0037633C 38 A1 00 20 */ addi r5, r1, 0x20
/* 8037A6E0 00376340 80 9F 00 04 */ lwz r4, 4(r31)
/* 8037A6E4 00376344 83 E3 00 10 */ lwz r31, 0x10(r3)
/* 8037A6E8 00376348 7F E3 FB 78 */ mr r3, r31
/* 8037A6EC 0037634C 4B FF C9 71 */ bl func_8037705C
/* 8037A6F0 00376350 2C 03 00 00 */ cmpwi r3, 0
/* 8037A6F4 00376354 40 82 00 0C */ bne lbl_8037A700
/* 8037A6F8 00376358 38 60 00 00 */ li r3, 0
/* 8037A6FC 0037635C 48 00 00 98 */ b lbl_8037A794
lbl_8037A700:
/* 8037A700 00376360 80 81 00 24 */ lwz r4, 0x24(r1)
/* 8037A704 00376364 7F E3 FB 78 */ mr r3, r31
/* 8037A708 00376368 38 A1 00 08 */ addi r5, r1, 8
/* 8037A70C 0037636C 4B FF C9 79 */ bl func_80377084
/* 8037A710 00376370 2C 03 00 00 */ cmpwi r3, 0
/* 8037A714 00376374 40 82 00 0C */ bne lbl_8037A720
/* 8037A718 00376378 38 60 00 00 */ li r3, 0
/* 8037A71C 0037637C 48 00 00 78 */ b lbl_8037A794
lbl_8037A720:
/* 8037A720 00376380 80 7D 00 04 */ lwz r3, 4(r29)
/* 8037A724 00376384 80 81 00 08 */ lwz r4, 8(r1)
/* 8037A728 00376388 4B FF F1 95 */ bl detail_GetFileAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
/* 8037A72C 0037638C 2C 03 00 00 */ cmpwi r3, 0
/* 8037A730 00376390 40 82 00 0C */ bne lbl_8037A73C
/* 8037A734 00376394 38 60 00 00 */ li r3, 0
/* 8037A738 00376398 48 00 00 5C */ b lbl_8037A794
lbl_8037A73C:
/* 8037A73C 0037639C 7C 64 1B 78 */ mr r4, r3
/* 8037A740 003763A0 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A744 003763A4 4B FF 21 11 */ bl __ct__Q44nw4r3snd6detail4BankFPCv
/* 8037A748 003763A8 80 7D 00 04 */ lwz r3, 4(r29)
/* 8037A74C 003763AC 80 81 00 08 */ lwz r4, 8(r1)
/* 8037A750 003763B0 4B FF F2 B9 */ bl detail_GetFileWaveDataAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
/* 8037A754 003763B4 2C 03 00 00 */ cmpwi r3, 0
/* 8037A758 003763B8 40 82 00 18 */ bne lbl_8037A770
/* 8037A75C 003763BC 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A760 003763C0 38 80 FF FF */ li r4, -1
/* 8037A764 003763C4 4B FF 21 29 */ bl __dt__Q44nw4r3snd6detail4BankFv
/* 8037A768 003763C8 38 60 00 00 */ li r3, 0
/* 8037A76C 003763CC 48 00 00 28 */ b lbl_8037A794
lbl_8037A770:
/* 8037A770 003763D0 90 61 00 1C */ stw r3, 0x1c(r1)
/* 8037A774 003763D4 7F C4 F3 78 */ mr r4, r30
/* 8037A778 003763D8 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A77C 003763DC 4B FF 21 51 */ bl NoteOn__Q44nw4r3snd6detail4BankCFRCQ44nw4r3snd6detail10NoteOnInfo
/* 8037A780 003763E0 7C 7F 1B 78 */ mr r31, r3
/* 8037A784 003763E4 38 61 00 10 */ addi r3, r1, 0x10
/* 8037A788 003763E8 38 80 FF FF */ li r4, -1
/* 8037A78C 003763EC 4B FF 21 01 */ bl __dt__Q44nw4r3snd6detail4BankFv
/* 8037A790 003763F0 7F E3 FB 78 */ mr r3, r31
lbl_8037A794:
/* 8037A794 003763F4 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8037A798 003763F8 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8037A79C 003763FC 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8037A7A0 00376400 83 A1 00 44 */ lwz r29, 0x44(r1)
/* 8037A7A4 00376404 7C 08 03 A6 */ mtlr r0
/* 8037A7A8 00376408 38 21 00 50 */ addi r1, r1, 0x50
/* 8037A7AC 0037640C 4E 80 00 20 */ blr
.global GetWaveSoundData__Q44nw4r3snd18SoundArchivePlayer11WsdCallbackCFPQ44nw4r3snd6detail13WaveSoundInfoPQ44nw4r3snd6detail17WaveSoundNoteInfoPQ44nw4r3snd6detail8WaveDataPCviiUl
GetWaveSoundData__Q44nw4r3snd18SoundArchivePlayer11WsdCallbackCFPQ44nw4r3snd6detail13WaveSoundInfoPQ44nw4r3snd6detail17WaveSoundNoteInfoPQ44nw4r3snd6detail8WaveDataPCviiUl:
/* 8037A7B0 00376410 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8037A7B4 00376414 7C 08 02 A6 */ mflr r0
/* 8037A7B8 00376418 90 01 00 44 */ stw r0, 0x44(r1)
/* 8037A7BC 0037641C 39 61 00 40 */ addi r11, r1, 0x40
/* 8037A7C0 00376420 4B E4 C9 5D */ bl _savegpr_24
/* 8037A7C4 00376424 81 63 00 04 */ lwz r11, 4(r3)
/* 8037A7C8 00376428 7C 78 1B 78 */ mr r24, r3
/* 8037A7CC 0037642C 7C 99 23 78 */ mr r25, r4
/* 8037A7D0 00376430 7C BA 2B 78 */ mr r26, r5
/* 8037A7D4 00376434 80 6B 00 10 */ lwz r3, 0x10(r11)
/* 8037A7D8 00376438 7C DB 33 78 */ mr r27, r6
/* 8037A7DC 0037643C 7C FC 3B 78 */ mr r28, r7
/* 8037A7E0 00376440 7D 1D 43 78 */ mr r29, r8
/* 8037A7E4 00376444 2C 03 00 00 */ cmpwi r3, 0
/* 8037A7E8 00376448 7D 3E 4B 78 */ mr r30, r9
/* 8037A7EC 0037644C 7D 5F 53 78 */ mr r31, r10
/* 8037A7F0 00376450 40 82 00 0C */ bne lbl_8037A7FC
/* 8037A7F4 00376454 38 60 00 00 */ li r3, 0
/* 8037A7F8 00376458 48 00 00 08 */ b lbl_8037A800
lbl_8037A7FC:
/* 8037A7FC 0037645C 4B FF C7 F5 */ bl IsAvailable__Q34nw4r3snd12SoundArchiveCFv
lbl_8037A800:
/* 8037A800 00376460 2C 03 00 00 */ cmpwi r3, 0
/* 8037A804 00376464 40 82 00 0C */ bne lbl_8037A810
/* 8037A808 00376468 38 60 00 00 */ li r3, 0
/* 8037A80C 0037646C 48 00 00 88 */ b lbl_8037A894
lbl_8037A810:
/* 8037A810 00376470 80 78 00 04 */ lwz r3, 4(r24)
/* 8037A814 00376474 7F E4 FB 78 */ mr r4, r31
/* 8037A818 00376478 4B FF F1 F1 */ bl detail_GetFileWaveDataAddress__Q34nw4r3snd18SoundArchivePlayerCFUl
/* 8037A81C 0037647C 2C 03 00 00 */ cmpwi r3, 0
/* 8037A820 00376480 7C 7F 1B 78 */ mr r31, r3
/* 8037A824 00376484 40 82 00 0C */ bne lbl_8037A830
/* 8037A828 00376488 38 60 00 00 */ li r3, 0
/* 8037A82C 0037648C 48 00 00 68 */ b lbl_8037A894
lbl_8037A830:
/* 8037A830 00376490 7F 84 E3 78 */ mr r4, r28
/* 8037A834 00376494 38 61 00 08 */ addi r3, r1, 8
/* 8037A838 00376498 48 00 91 A5 */ bl __ct__Q44nw4r3snd6detail13WsdFileReaderFPCv
/* 8037A83C 0037649C 7F 24 CB 78 */ mr r4, r25
/* 8037A840 003764A0 7F A5 EB 78 */ mr r5, r29
/* 8037A844 003764A4 38 61 00 08 */ addi r3, r1, 8
/* 8037A848 003764A8 48 00 92 11 */ bl ReadWaveSoundInfo__Q44nw4r3snd6detail13WsdFileReaderCFPQ44nw4r3snd6detail13WaveSoundInfoi
/* 8037A84C 003764AC 2C 03 00 00 */ cmpwi r3, 0
/* 8037A850 003764B0 40 82 00 0C */ bne lbl_8037A85C
/* 8037A854 003764B4 38 60 00 00 */ li r3, 0
/* 8037A858 003764B8 48 00 00 3C */ b lbl_8037A894
lbl_8037A85C:
/* 8037A85C 003764BC 7F 44 D3 78 */ mr r4, r26
/* 8037A860 003764C0 7F A5 EB 78 */ mr r5, r29
/* 8037A864 003764C4 7F C6 F3 78 */ mr r6, r30
/* 8037A868 003764C8 38 61 00 08 */ addi r3, r1, 8
/* 8037A86C 003764CC 48 00 93 0D */ bl ReadWaveSoundNoteInfo__Q44nw4r3snd6detail13WsdFileReaderCFPQ44nw4r3snd6detail17WaveSoundNoteInfoii
/* 8037A870 003764D0 2C 03 00 00 */ cmpwi r3, 0
/* 8037A874 003764D4 40 82 00 0C */ bne lbl_8037A880
/* 8037A878 003764D8 38 60 00 00 */ li r3, 0
/* 8037A87C 003764DC 48 00 00 18 */ b lbl_8037A894
lbl_8037A880:
/* 8037A880 003764E0 80 9A 00 00 */ lwz r4, 0(r26)
/* 8037A884 003764E4 7F 65 DB 78 */ mr r5, r27
/* 8037A888 003764E8 7F E6 FB 78 */ mr r6, r31
/* 8037A88C 003764EC 38 61 00 08 */ addi r3, r1, 8
/* 8037A890 003764F0 48 00 93 F9 */ bl ReadWaveParam__Q44nw4r3snd6detail13WsdFileReaderCFiPQ44nw4r3snd6detail8WaveDataPCv
lbl_8037A894:
/* 8037A894 003764F4 39 61 00 40 */ addi r11, r1, 0x40
/* 8037A898 003764F8 4B E4 C8 D1 */ bl _restgpr_24
/* 8037A89C 003764FC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8037A8A0 00376500 7C 08 03 A6 */ mtlr r0
/* 8037A8A4 00376504 38 21 00 40 */ addi r1, r1, 0x40
/* 8037A8A8 00376508 4E 80 00 20 */ blr
.global detail_ConvertLabelStringToSoundId__Q34nw4r3snd18SoundArchivePlayerFPCc
detail_ConvertLabelStringToSoundId__Q34nw4r3snd18SoundArchivePlayerFPCc:
/* 8037A8AC 0037650C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8037A8B0 00376510 4B FF C7 8C */ b ConvertLabelStringToSoundId__Q34nw4r3snd12SoundArchiveCFPCc
.global __dt__Q44nw4r3snd6detail10PlayerHeapFv
__dt__Q44nw4r3snd6detail10PlayerHeapFv:
/* 8037A8B4 00376514 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8037A8B8 00376518 7C 08 02 A6 */ mflr r0
/* 8037A8BC 0037651C 2C 03 00 00 */ cmpwi r3, 0
/* 8037A8C0 00376520 90 01 00 14 */ stw r0, 0x14(r1)
/* 8037A8C4 00376524 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8037A8C8 00376528 7C 9F 23 78 */ mr r31, r4
/* 8037A8CC 0037652C 93 C1 00 08 */ stw r30, 8(r1)
/* 8037A8D0 00376530 7C 7E 1B 78 */ mr r30, r3
/* 8037A8D4 00376534 41 82 00 1C */ beq lbl_8037A8F0
/* 8037A8D8 00376538 38 80 00 00 */ li r4, 0
/* 8037A8DC 0037653C 48 00 01 A9 */ bl __dt__Q34nw4r3snd9SoundHeapFv
/* 8037A8E0 00376540 2C 1F 00 00 */ cmpwi r31, 0
/* 8037A8E4 00376544 40 81 00 0C */ ble lbl_8037A8F0
/* 8037A8E8 00376548 7F C3 F3 78 */ mr r3, r30
/* 8037A8EC 0037654C 4B E6 01 CD */ bl __dl__FPv
lbl_8037A8F0:
/* 8037A8F0 00376550 7F C3 F3 78 */ mr r3, r30
/* 8037A8F4 00376554 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8037A8F8 00376558 83 C1 00 08 */ lwz r30, 8(r1)
/* 8037A8FC 0037655C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8037A900 00376560 7C 08 03 A6 */ mtlr r0
/* 8037A904 00376564 38 21 00 10 */ addi r1, r1, 0x10
/* 8037A908 00376568 4E 80 00 20 */ blr
/* @12@detail_ConvertLabelStringToSoundId__Q34nw4r3snd18SoundArchivePlayerFPCc */
.global func_8037A90C
func_8037A90C:
/* 8037A90C 0037656C 38 63 FF F4 */ addi r3, r3, -12
/* 8037A910 00376570 4B FF FF 9C */ b detail_ConvertLabelStringToSoundId__Q34nw4r3snd18SoundArchivePlayerFPCc
/* 12@detail_SetupSound__Q34nw4r3snd18SoundArchivePlayerFPQ34nw4r3snd11SoundHandleUlPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerbPCQ44nw4r3snd14SoundStartable9StartInfo */
.global func_8037A914
func_8037A914:
/* 8037A914 00376574 38 63 FF F4 */ addi r3, r3, -12
/* 8037A918 00376578 4B FF F2 3C */ b detail_SetupSound__Q34nw4r3snd18SoundArchivePlayerFPQ34nw4r3snd11SoundHandleUlPQ54nw4r3snd6detail10BasicSound14AmbientArgInfoPQ44nw4r3snd6detail19ExternalSoundPlayerbPCQ44nw4r3snd14SoundStartable9StartInfo
/* @12@__dt__Q34nw4r3snd18SoundArchivePlayerFv */
.global func_8037A91C
func_8037A91C:
/* 8037A91C 0037657C 38 63 FF F4 */ addi r3, r3, -12
/* 8037A920 00376580 4B FF E3 9C */ b __dt__Q34nw4r3snd18SoundArchivePlayerFv
|