summaryrefslogtreecommitdiff
path: root/asm/code_8023D008.s
blob: 00ffbb884753c7a98dff0e5e2a2b1ec33e27d182 (plain)
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
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global func_8023D008
func_8023D008:
/* 8023D008 00238C68  28 03 00 02 */	cmplwi r3, 2
/* 8023D00C 00238C6C  40 80 00 0C */	bge lbl_8023D018
/* 8023D010 00238C70  38 60 00 00 */	li r3, 0
/* 8023D014 00238C74  4E 80 00 20 */	blr
lbl_8023D018:
/* 8023D018 00238C78  38 00 00 0E */	li r0, 0xe
/* 8023D01C 00238C7C  38 C0 00 0F */	li r6, 0xf
/* 8023D020 00238C80  38 80 00 01 */	li r4, 1
/* 8023D024 00238C84  7C 09 03 A6 */	mtctr r0
lbl_8023D028:
/* 8023D028 00238C88  7C 85 30 30 */	slw r5, r4, r6
/* 8023D02C 00238C8C  7C 60 28 39 */	and. r0, r3, r5
/* 8023D030 00238C90  41 82 00 18 */	beq lbl_8023D048
/* 8023D034 00238C94  7C 60 28 78 */	andc r0, r3, r5
/* 8023D038 00238C98  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 8023D03C 00238C9C  7C 00 00 34 */	cntlzw r0, r0
/* 8023D040 00238CA0  54 03 D9 7E */	srwi r3, r0, 5
/* 8023D044 00238CA4  4E 80 00 20 */	blr
lbl_8023D048:
/* 8023D048 00238CA8  38 C6 FF FF */	addi r6, r6, -1
/* 8023D04C 00238CAC  42 00 FF DC */	bdnz lbl_8023D028
/* 8023D050 00238CB0  38 60 00 00 */	li r3, 0
/* 8023D054 00238CB4  4E 80 00 20 */	blr

.global func_8023D058
func_8023D058:
/* 8023D058 00238CB8  80 0D A4 AC */	lwz r0, lbl_8063F76C-_SDA_BASE_(r13)
/* 8023D05C 00238CBC  80 6D A4 A8 */	lwz r3, lbl_8063F768-_SDA_BASE_(r13)
/* 8023D060 00238CC0  7C 09 03 A6 */	mtctr r0
/* 8023D064 00238CC4  28 00 00 00 */	cmplwi r0, 0
/* 8023D068 00238CC8  40 81 00 18 */	ble lbl_8023D080
lbl_8023D06C:
/* 8023D06C 00238CCC  88 03 00 06 */	lbz r0, 6(r3)
/* 8023D070 00238CD0  2C 00 00 00 */	cmpwi r0, 0
/* 8023D074 00238CD4  4D 82 00 20 */	beqlr
/* 8023D078 00238CD8  38 63 00 80 */	addi r3, r3, 0x80
/* 8023D07C 00238CDC  42 00 FF F0 */	bdnz lbl_8023D06C
lbl_8023D080:
/* 8023D080 00238CE0  38 60 00 00 */	li r3, 0
/* 8023D084 00238CE4  4E 80 00 20 */	blr

.global func_8023D088
func_8023D088:
/* 8023D088 00238CE8  2C 03 00 90 */	cmpwi r3, 0x90
/* 8023D08C 00238CEC  41 82 01 00 */	beq lbl_8023D18C
/* 8023D090 00238CF0  40 80 00 5C */	bge lbl_8023D0EC
/* 8023D094 00238CF4  2C 03 00 40 */	cmpwi r3, 0x40
/* 8023D098 00238CF8  41 82 00 C4 */	beq lbl_8023D15C
/* 8023D09C 00238CFC  40 80 00 28 */	bge lbl_8023D0C4
/* 8023D0A0 00238D00  2C 03 00 01 */	cmpwi r3, 1
/* 8023D0A4 00238D04  41 82 00 A8 */	beq lbl_8023D14C
/* 8023D0A8 00238D08  40 80 00 10 */	bge lbl_8023D0B8
/* 8023D0AC 00238D0C  2C 03 00 00 */	cmpwi r3, 0
/* 8023D0B0 00238D10  40 80 00 94 */	bge lbl_8023D144
/* 8023D0B4 00238D14  48 00 01 9C */	b lbl_8023D250
lbl_8023D0B8:
/* 8023D0B8 00238D18  2C 03 00 30 */	cmpwi r3, 0x30
/* 8023D0BC 00238D1C  41 82 00 98 */	beq lbl_8023D154
/* 8023D0C0 00238D20  48 00 01 90 */	b lbl_8023D250
lbl_8023D0C4:
/* 8023D0C4 00238D24  2C 03 00 44 */	cmpwi r3, 0x44
/* 8023D0C8 00238D28  41 82 00 B4 */	beq lbl_8023D17C
/* 8023D0CC 00238D2C  40 80 00 14 */	bge lbl_8023D0E0
/* 8023D0D0 00238D30  2C 03 00 42 */	cmpwi r3, 0x42
/* 8023D0D4 00238D34  41 82 00 98 */	beq lbl_8023D16C
/* 8023D0D8 00238D38  40 80 00 9C */	bge lbl_8023D174
/* 8023D0DC 00238D3C  48 00 00 88 */	b lbl_8023D164
lbl_8023D0E0:
/* 8023D0E0 00238D40  2C 03 00 46 */	cmpwi r3, 0x46
/* 8023D0E4 00238D44  40 80 01 6C */	bge lbl_8023D250
/* 8023D0E8 00238D48  48 00 00 9C */	b lbl_8023D184
lbl_8023D0EC:
/* 8023D0EC 00238D4C  2C 03 00 A5 */	cmpwi r3, 0xa5
/* 8023D0F0 00238D50  41 82 01 24 */	beq lbl_8023D214
/* 8023D0F4 00238D54  40 80 00 2C */	bge lbl_8023D120
/* 8023D0F8 00238D58  2C 03 00 A2 */	cmpwi r3, 0xa2
/* 8023D0FC 00238D5C  41 82 00 DC */	beq lbl_8023D1D8
/* 8023D100 00238D60  40 80 00 14 */	bge lbl_8023D114
/* 8023D104 00238D64  2C 03 00 A0 */	cmpwi r3, 0xa0
/* 8023D108 00238D68  41 82 00 A8 */	beq lbl_8023D1B0
/* 8023D10C 00238D6C  40 80 00 B8 */	bge lbl_8023D1C4
/* 8023D110 00238D70  48 00 01 40 */	b lbl_8023D250
lbl_8023D114:
/* 8023D114 00238D74  2C 03 00 A4 */	cmpwi r3, 0xa4
/* 8023D118 00238D78  40 80 00 E8 */	bge lbl_8023D200
/* 8023D11C 00238D7C  48 00 00 D0 */	b lbl_8023D1EC
lbl_8023D120:
/* 8023D120 00238D80  2C 03 00 A8 */	cmpwi r3, 0xa8
/* 8023D124 00238D84  41 82 00 78 */	beq lbl_8023D19C
/* 8023D128 00238D88  40 80 00 10 */	bge lbl_8023D138
/* 8023D12C 00238D8C  2C 03 00 A7 */	cmpwi r3, 0xa7
/* 8023D130 00238D90  40 80 01 0C */	bge lbl_8023D23C
/* 8023D134 00238D94  48 00 00 F4 */	b lbl_8023D228
lbl_8023D138:
/* 8023D138 00238D98  2C 03 00 B0 */	cmpwi r3, 0xb0
/* 8023D13C 00238D9C  41 82 00 58 */	beq lbl_8023D194
/* 8023D140 00238DA0  48 00 01 10 */	b lbl_8023D250
lbl_8023D144:
/* 8023D144 00238DA4  38 60 00 08 */	li r3, 8
/* 8023D148 00238DA8  4E 80 00 20 */	blr
lbl_8023D14C:
/* 8023D14C 00238DAC  38 60 00 09 */	li r3, 9
/* 8023D150 00238DB0  4E 80 00 20 */	blr
lbl_8023D154:
/* 8023D154 00238DB4  38 60 00 0A */	li r3, 0xa
/* 8023D158 00238DB8  4E 80 00 20 */	blr
lbl_8023D15C:
/* 8023D15C 00238DBC  38 60 00 00 */	li r3, 0
/* 8023D160 00238DC0  4E 80 00 20 */	blr
lbl_8023D164:
/* 8023D164 00238DC4  38 60 00 02 */	li r3, 2
/* 8023D168 00238DC8  4E 80 00 20 */	blr
lbl_8023D16C:
/* 8023D16C 00238DCC  38 60 00 01 */	li r3, 1
/* 8023D170 00238DD0  4E 80 00 20 */	blr
lbl_8023D174:
/* 8023D174 00238DD4  38 60 00 03 */	li r3, 3
/* 8023D178 00238DD8  4E 80 00 20 */	blr
lbl_8023D17C:
/* 8023D17C 00238DDC  38 60 00 04 */	li r3, 4
/* 8023D180 00238DE0  4E 80 00 20 */	blr
lbl_8023D184:
/* 8023D184 00238DE4  38 60 00 06 */	li r3, 6
/* 8023D188 00238DE8  4E 80 00 20 */	blr
lbl_8023D18C:
/* 8023D18C 00238DEC  38 60 00 05 */	li r3, 5
/* 8023D190 00238DF0  4E 80 00 20 */	blr
lbl_8023D194:
/* 8023D194 00238DF4  38 60 00 0E */	li r3, 0xe
/* 8023D198 00238DF8  4E 80 00 20 */	blr
lbl_8023D19C:
/* 8023D19C 00238DFC  2C 04 00 00 */	cmpwi r4, 0
/* 8023D1A0 00238E00  38 60 00 20 */	li r3, 0x20
/* 8023D1A4 00238E04  4D 82 00 20 */	beqlr
/* 8023D1A8 00238E08  38 60 00 00 */	li r3, 0
/* 8023D1AC 00238E0C  4E 80 00 20 */	blr
lbl_8023D1B0:
/* 8023D1B0 00238E10  2C 04 00 00 */	cmpwi r4, 0
/* 8023D1B4 00238E14  38 60 00 27 */	li r3, 0x27
/* 8023D1B8 00238E18  4D 82 00 20 */	beqlr
/* 8023D1BC 00238E1C  38 60 00 01 */	li r3, 1
/* 8023D1C0 00238E20  4E 80 00 20 */	blr
lbl_8023D1C4:
/* 8023D1C4 00238E24  2C 04 00 00 */	cmpwi r4, 0
/* 8023D1C8 00238E28  38 60 00 28 */	li r3, 0x28
/* 8023D1CC 00238E2C  4D 82 00 20 */	beqlr
/* 8023D1D0 00238E30  38 60 00 01 */	li r3, 1
/* 8023D1D4 00238E34  4E 80 00 20 */	blr
lbl_8023D1D8:
/* 8023D1D8 00238E38  2C 04 00 00 */	cmpwi r4, 0
/* 8023D1DC 00238E3C  38 60 00 29 */	li r3, 0x29
/* 8023D1E0 00238E40  4D 82 00 20 */	beqlr
/* 8023D1E4 00238E44  38 60 00 01 */	li r3, 1
/* 8023D1E8 00238E48  4E 80 00 20 */	blr
lbl_8023D1EC:
/* 8023D1EC 00238E4C  2C 04 00 00 */	cmpwi r4, 0
/* 8023D1F0 00238E50  38 60 00 2A */	li r3, 0x2a
/* 8023D1F4 00238E54  4D 82 00 20 */	beqlr
/* 8023D1F8 00238E58  38 60 00 01 */	li r3, 1
/* 8023D1FC 00238E5C  4E 80 00 20 */	blr
lbl_8023D200:
/* 8023D200 00238E60  2C 04 00 00 */	cmpwi r4, 0
/* 8023D204 00238E64  38 60 00 11 */	li r3, 0x11
/* 8023D208 00238E68  4D 82 00 20 */	beqlr
/* 8023D20C 00238E6C  38 60 00 01 */	li r3, 1
/* 8023D210 00238E70  4E 80 00 20 */	blr
lbl_8023D214:
/* 8023D214 00238E74  2C 04 00 00 */	cmpwi r4, 0
/* 8023D218 00238E78  38 60 00 39 */	li r3, 0x39
/* 8023D21C 00238E7C  4D 82 00 20 */	beqlr
/* 8023D220 00238E80  38 60 00 01 */	li r3, 1
/* 8023D224 00238E84  4E 80 00 20 */	blr
lbl_8023D228:
/* 8023D228 00238E88  2C 04 00 00 */	cmpwi r4, 0
/* 8023D22C 00238E8C  38 60 00 13 */	li r3, 0x13
/* 8023D230 00238E90  4D 82 00 20 */	beqlr
/* 8023D234 00238E94  38 60 00 03 */	li r3, 3
/* 8023D238 00238E98  4E 80 00 20 */	blr
lbl_8023D23C:
/* 8023D23C 00238E9C  2C 04 00 00 */	cmpwi r4, 0
/* 8023D240 00238EA0  38 60 00 16 */	li r3, 0x16
/* 8023D244 00238EA4  4D 82 00 20 */	beqlr
/* 8023D248 00238EA8  38 60 00 06 */	li r3, 6
/* 8023D24C 00238EAC  4E 80 00 20 */	blr
lbl_8023D250:
/* 8023D250 00238EB0  38 60 FF FF */	li r3, -1
/* 8023D254 00238EB4  4E 80 00 20 */	blr

.global func_8023D258
func_8023D258:
/* 8023D258 00238EB8  2C 03 00 01 */	cmpwi r3, 1
/* 8023D25C 00238EBC  41 82 00 28 */	beq lbl_8023D284
/* 8023D260 00238EC0  40 80 00 10 */	bge lbl_8023D270
/* 8023D264 00238EC4  2C 03 00 00 */	cmpwi r3, 0
/* 8023D268 00238EC8  40 80 00 14 */	bge lbl_8023D27C
/* 8023D26C 00238ECC  48 00 00 28 */	b lbl_8023D294
lbl_8023D270:
/* 8023D270 00238ED0  2C 03 00 30 */	cmpwi r3, 0x30
/* 8023D274 00238ED4  41 82 00 18 */	beq lbl_8023D28C
/* 8023D278 00238ED8  48 00 00 1C */	b lbl_8023D294
lbl_8023D27C:
/* 8023D27C 00238EDC  38 60 00 08 */	li r3, 8
/* 8023D280 00238EE0  4E 80 00 20 */	blr
lbl_8023D284:
/* 8023D284 00238EE4  38 60 00 09 */	li r3, 9
/* 8023D288 00238EE8  4E 80 00 20 */	blr
lbl_8023D28C:
/* 8023D28C 00238EEC  38 60 00 0A */	li r3, 0xa
/* 8023D290 00238EF0  4E 80 00 20 */	blr
lbl_8023D294:
/* 8023D294 00238EF4  38 60 FF FF */	li r3, -1
/* 8023D298 00238EF8  4E 80 00 20 */	blr

.global func_8023D29C
func_8023D29C:
/* 8023D29C 00238EFC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8023D2A0 00238F00  7C 08 02 A6 */	mflr r0
/* 8023D2A4 00238F04  90 01 00 34 */	stw r0, 0x34(r1)
/* 8023D2A8 00238F08  39 61 00 30 */	addi r11, r1, 0x30
/* 8023D2AC 00238F0C  4B F8 9E 7D */	bl _savegpr_27
/* 8023D2B0 00238F10  88 03 00 05 */	lbz r0, 5(r3)
/* 8023D2B4 00238F14  7C 7B 1B 78 */	mr r27, r3
/* 8023D2B8 00238F18  3B A0 00 00 */	li r29, 0
/* 8023D2BC 00238F1C  20 00 00 01 */	subfic r0, r0, 1
/* 8023D2C0 00238F20  54 1C 0F FF */	rlwinm. r28, r0, 1, 0x1f, 0x1f
/* 8023D2C4 00238F24  41 82 00 3C */	beq lbl_8023D300
/* 8023D2C8 00238F28  A0 63 00 00 */	lhz r3, 0(r3)
/* 8023D2CC 00238F2C  4B FF FD 3D */	bl func_8023D008
/* 8023D2D0 00238F30  2C 03 00 00 */	cmpwi r3, 0
/* 8023D2D4 00238F34  40 82 00 10 */	bne lbl_8023D2E4
/* 8023D2D8 00238F38  38 00 00 01 */	li r0, 1
/* 8023D2DC 00238F3C  3B 80 00 00 */	li r28, 0
/* 8023D2E0 00238F40  98 1B 00 05 */	stb r0, 5(r27)
lbl_8023D2E4:
/* 8023D2E4 00238F44  A0 7B 00 02 */	lhz r3, 2(r27)
/* 8023D2E8 00238F48  4B FF FD 21 */	bl func_8023D008
/* 8023D2EC 00238F4C  2C 03 00 00 */	cmpwi r3, 0
/* 8023D2F0 00238F50  40 82 00 10 */	bne lbl_8023D300
/* 8023D2F4 00238F54  38 00 00 01 */	li r0, 1
/* 8023D2F8 00238F58  3B 80 00 00 */	li r28, 0
/* 8023D2FC 00238F5C  98 1B 00 05 */	stb r0, 5(r27)
lbl_8023D300:
/* 8023D300 00238F60  80 1B 00 48 */	lwz r0, 0x48(r27)
/* 8023D304 00238F64  2C 00 00 00 */	cmpwi r0, 0
/* 8023D308 00238F68  41 82 00 D0 */	beq lbl_8023D3D8
/* 8023D30C 00238F6C  80 7B 00 08 */	lwz r3, 8(r27)
/* 8023D310 00238F70  38 80 00 01 */	li r4, 1
/* 8023D314 00238F74  4B FF FF 45 */	bl func_8023D258
/* 8023D318 00238F78  80 1B 00 08 */	lwz r0, 8(r27)
/* 8023D31C 00238F7C  7C 7F 1B 78 */	mr r31, r3
/* 8023D320 00238F80  2C 00 00 01 */	cmpwi r0, 1
/* 8023D324 00238F84  41 82 00 28 */	beq lbl_8023D34C
/* 8023D328 00238F88  40 80 00 10 */	bge lbl_8023D338
/* 8023D32C 00238F8C  2C 00 00 00 */	cmpwi r0, 0
/* 8023D330 00238F90  40 80 00 14 */	bge lbl_8023D344
/* 8023D334 00238F94  48 00 00 24 */	b lbl_8023D358
lbl_8023D338:
/* 8023D338 00238F98  2C 00 00 30 */	cmpwi r0, 0x30
/* 8023D33C 00238F9C  41 82 00 18 */	beq lbl_8023D354
/* 8023D340 00238FA0  48 00 00 18 */	b lbl_8023D358
lbl_8023D344:
/* 8023D344 00238FA4  3B A0 00 10 */	li r29, 0x10
/* 8023D348 00238FA8  48 00 00 10 */	b lbl_8023D358
lbl_8023D34C:
/* 8023D34C 00238FAC  3B A0 01 00 */	li r29, 0x100
/* 8023D350 00238FB0  48 00 00 08 */	b lbl_8023D358
lbl_8023D354:
/* 8023D354 00238FB4  3B A0 04 00 */	li r29, 0x400
lbl_8023D358:
/* 8023D358 00238FB8  80 1B 00 0C */	lwz r0, 0xc(r27)
/* 8023D35C 00238FBC  2C 00 00 02 */	cmpwi r0, 2
/* 8023D360 00238FC0  41 82 00 28 */	beq lbl_8023D388
/* 8023D364 00238FC4  40 80 00 10 */	bge lbl_8023D374
/* 8023D368 00238FC8  2C 00 00 01 */	cmpwi r0, 1
/* 8023D36C 00238FCC  40 80 00 14 */	bge lbl_8023D380
/* 8023D370 00238FD0  48 00 00 24 */	b lbl_8023D394
lbl_8023D374:
/* 8023D374 00238FD4  2C 00 00 04 */	cmpwi r0, 4
/* 8023D378 00238FD8  40 80 00 1C */	bge lbl_8023D394
/* 8023D37C 00238FDC  48 00 00 14 */	b lbl_8023D390
lbl_8023D380:
/* 8023D380 00238FE0  3B C0 00 00 */	li r30, 0
/* 8023D384 00238FE4  48 00 00 10 */	b lbl_8023D394
lbl_8023D388:
/* 8023D388 00238FE8  3B C0 00 01 */	li r30, 1
/* 8023D38C 00238FEC  48 00 00 08 */	b lbl_8023D394
lbl_8023D390:
/* 8023D390 00238FF0  3B C0 00 02 */	li r30, 2
lbl_8023D394:
/* 8023D394 00238FF4  80 9B 00 48 */	lwz r4, 0x48(r27)
/* 8023D398 00238FF8  7F C5 F3 78 */	mr r5, r30
/* 8023D39C 00238FFC  7F A6 EB 78 */	mr r6, r29
/* 8023D3A0 00239000  38 7B 00 74 */	addi r3, r27, 0x74
/* 8023D3A4 00239004  48 04 58 75 */	bl GXInitTlutObj
/* 8023D3A8 00239008  38 00 00 00 */	li r0, 0
/* 8023D3AC 0023900C  7F E7 FB 78 */	mr r7, r31
/* 8023D3B0 00239010  90 01 00 08 */	stw r0, 8(r1)
/* 8023D3B4 00239014  38 7B 00 54 */	addi r3, r27, 0x54
/* 8023D3B8 00239018  57 8A 06 3E */	clrlwi r10, r28, 0x18
/* 8023D3BC 0023901C  39 00 00 00 */	li r8, 0
/* 8023D3C0 00239020  80 9B 00 28 */	lwz r4, 0x28(r27)
/* 8023D3C4 00239024  39 20 00 00 */	li r9, 0
/* 8023D3C8 00239028  A0 BB 00 00 */	lhz r5, 0(r27)
/* 8023D3CC 0023902C  A0 DB 00 02 */	lhz r6, 2(r27)
/* 8023D3D0 00239030  48 04 55 0D */	bl GXInitTexObjCI
/* 8023D3D4 00239034  48 00 00 34 */	b lbl_8023D408
lbl_8023D3D8:
/* 8023D3D8 00239038  80 7B 00 08 */	lwz r3, 8(r27)
/* 8023D3DC 0023903C  38 80 00 01 */	li r4, 1
/* 8023D3E0 00239040  4B FF FC A9 */	bl func_8023D088
/* 8023D3E4 00239044  80 9B 00 28 */	lwz r4, 0x28(r27)
/* 8023D3E8 00239048  7C 67 1B 78 */	mr r7, r3
/* 8023D3EC 0023904C  A0 BB 00 00 */	lhz r5, 0(r27)
/* 8023D3F0 00239050  38 7B 00 54 */	addi r3, r27, 0x54
/* 8023D3F4 00239054  A0 DB 00 02 */	lhz r6, 2(r27)
/* 8023D3F8 00239058  57 8A 06 3E */	clrlwi r10, r28, 0x18
/* 8023D3FC 0023905C  39 00 00 00 */	li r8, 0
/* 8023D400 00239060  39 20 00 00 */	li r9, 0
/* 8023D404 00239064  48 04 52 CD */	bl GXInitTexObj
lbl_8023D408:
/* 8023D408 00239068  39 61 00 30 */	addi r11, r1, 0x30
/* 8023D40C 0023906C  4B F8 9D 69 */	bl _restgpr_27
/* 8023D410 00239070  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8023D414 00239074  7C 08 03 A6 */	mtlr r0
/* 8023D418 00239078  38 21 00 30 */	addi r1, r1, 0x30
/* 8023D41C 0023907C  4E 80 00 20 */	blr

.global func_8023D420
func_8023D420:
/* 8023D420 00239080  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8023D424 00239084  7C 08 02 A6 */	mflr r0
/* 8023D428 00239088  90 01 00 24 */	stw r0, 0x24(r1)
/* 8023D42C 0023908C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8023D430 00239090  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8023D434 00239094  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8023D438 00239098  7C 7D 1B 78 */	mr r29, r3
/* 8023D43C 0023909C  80 03 00 10 */	lwz r0, 0x10(r3)
/* 8023D440 002390A0  2C 00 00 01 */	cmpwi r0, 1
/* 8023D444 002390A4  41 82 00 28 */	beq lbl_8023D46C
/* 8023D448 002390A8  40 80 00 10 */	bge lbl_8023D458
/* 8023D44C 002390AC  2C 00 00 00 */	cmpwi r0, 0
/* 8023D450 002390B0  40 80 00 14 */	bge lbl_8023D464
/* 8023D454 002390B4  48 00 00 4C */	b lbl_8023D4A0
lbl_8023D458:
/* 8023D458 002390B8  2C 00 00 03 */	cmpwi r0, 3
/* 8023D45C 002390BC  40 80 00 44 */	bge lbl_8023D4A0
/* 8023D460 002390C0  48 00 00 28 */	b lbl_8023D488
lbl_8023D464:
/* 8023D464 002390C4  3B E0 00 00 */	li r31, 0
/* 8023D468 002390C8  48 00 00 38 */	b lbl_8023D4A0
lbl_8023D46C:
/* 8023D46C 002390CC  A0 63 00 00 */	lhz r3, 0(r3)
/* 8023D470 002390D0  3B E0 00 01 */	li r31, 1
/* 8023D474 002390D4  4B FF FB 95 */	bl func_8023D008
/* 8023D478 002390D8  2C 03 00 00 */	cmpwi r3, 0
/* 8023D47C 002390DC  40 82 00 24 */	bne lbl_8023D4A0
/* 8023D480 002390E0  3B E0 00 00 */	li r31, 0
/* 8023D484 002390E4  48 00 00 1C */	b lbl_8023D4A0
lbl_8023D488:
/* 8023D488 002390E8  A0 63 00 00 */	lhz r3, 0(r3)
/* 8023D48C 002390EC  3B E0 00 02 */	li r31, 2
/* 8023D490 002390F0  4B FF FB 79 */	bl func_8023D008
/* 8023D494 002390F4  2C 03 00 00 */	cmpwi r3, 0
/* 8023D498 002390F8  40 82 00 08 */	bne lbl_8023D4A0
/* 8023D49C 002390FC  3B E0 00 00 */	li r31, 0
lbl_8023D4A0:
/* 8023D4A0 00239100  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8023D4A4 00239104  2C 00 00 01 */	cmpwi r0, 1
/* 8023D4A8 00239108  41 82 00 28 */	beq lbl_8023D4D0
/* 8023D4AC 0023910C  40 80 00 10 */	bge lbl_8023D4BC
/* 8023D4B0 00239110  2C 00 00 00 */	cmpwi r0, 0
/* 8023D4B4 00239114  40 80 00 14 */	bge lbl_8023D4C8
/* 8023D4B8 00239118  48 00 00 4C */	b lbl_8023D504
lbl_8023D4BC:
/* 8023D4BC 0023911C  2C 00 00 03 */	cmpwi r0, 3
/* 8023D4C0 00239120  40 80 00 44 */	bge lbl_8023D504
/* 8023D4C4 00239124  48 00 00 28 */	b lbl_8023D4EC
lbl_8023D4C8:
/* 8023D4C8 00239128  3B C0 00 00 */	li r30, 0
/* 8023D4CC 0023912C  48 00 00 38 */	b lbl_8023D504
lbl_8023D4D0:
/* 8023D4D0 00239130  A0 7D 00 02 */	lhz r3, 2(r29)
/* 8023D4D4 00239134  3B C0 00 01 */	li r30, 1
/* 8023D4D8 00239138  4B FF FB 31 */	bl func_8023D008
/* 8023D4DC 0023913C  2C 03 00 00 */	cmpwi r3, 0
/* 8023D4E0 00239140  40 82 00 24 */	bne lbl_8023D504
/* 8023D4E4 00239144  3B C0 00 00 */	li r30, 0
/* 8023D4E8 00239148  48 00 00 1C */	b lbl_8023D504
lbl_8023D4EC:
/* 8023D4EC 0023914C  A0 7D 00 02 */	lhz r3, 2(r29)
/* 8023D4F0 00239150  3B C0 00 02 */	li r30, 2
/* 8023D4F4 00239154  4B FF FB 15 */	bl func_8023D008
/* 8023D4F8 00239158  2C 03 00 00 */	cmpwi r3, 0
/* 8023D4FC 0023915C  40 82 00 08 */	bne lbl_8023D504
/* 8023D500 00239160  3B C0 00 00 */	li r30, 0
lbl_8023D504:
/* 8023D504 00239164  7F E4 FB 78 */	mr r4, r31
/* 8023D508 00239168  7F C5 F3 78 */	mr r5, r30
/* 8023D50C 0023916C  38 7D 00 54 */	addi r3, r29, 0x54
/* 8023D510 00239170  48 04 55 19 */	bl GXInitTexObjWrapMode
/* 8023D514 00239174  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8023D518 00239178  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8023D51C 0023917C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8023D520 00239180  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8023D524 00239184  7C 08 03 A6 */	mtlr r0
/* 8023D528 00239188  38 21 00 20 */	addi r1, r1, 0x20
/* 8023D52C 0023918C  4E 80 00 20 */	blr

.global func_8023D530
func_8023D530:
/* 8023D530 00239190  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023D534 00239194  7C 08 02 A6 */	mflr r0
/* 8023D538 00239198  38 E0 00 00 */	li r7, 0
/* 8023D53C 0023919C  39 00 00 00 */	li r8, 0
/* 8023D540 002391A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023D544 002391A4  80 83 00 20 */	lwz r4, 0x20(r3)
/* 8023D548 002391A8  54 80 05 AF */	rlwinm. r0, r4, 0, 0x16, 0x17
/* 8023D54C 002391AC  41 82 00 28 */	beq lbl_8023D574
/* 8023D550 002391B0  54 80 05 EF */	rlwinm. r0, r4, 0, 0x17, 0x17
/* 8023D554 002391B4  41 82 00 10 */	beq lbl_8023D564
/* 8023D558 002391B8  38 E0 00 01 */	li r7, 1
/* 8023D55C 002391BC  39 00 00 01 */	li r8, 1
/* 8023D560 002391C0  48 00 00 14 */	b lbl_8023D574
lbl_8023D564:
/* 8023D564 002391C4  54 80 05 AD */	rlwinm. r0, r4, 0, 0x16, 0x16
/* 8023D568 002391C8  41 82 00 0C */	beq lbl_8023D574
/* 8023D56C 002391CC  38 E0 00 01 */	li r7, 1
/* 8023D570 002391D0  39 00 00 02 */	li r8, 2
lbl_8023D574:
/* 8023D574 002391D4  88 A3 00 05 */	lbz r5, 5(r3)
/* 8023D578 002391D8  28 05 00 01 */	cmplwi r5, 1
/* 8023D57C 002391DC  40 81 00 78 */	ble lbl_8023D5F4
/* 8023D580 002391E0  54 80 06 2A */	rlwinm r0, r4, 0, 0x18, 0x15
/* 8023D584 002391E4  2C 00 00 01 */	cmpwi r0, 1
/* 8023D588 002391E8  41 82 00 18 */	beq lbl_8023D5A0
/* 8023D58C 002391EC  40 80 00 08 */	bge lbl_8023D594
/* 8023D590 002391F0  48 00 00 48 */	b lbl_8023D5D8
lbl_8023D594:
/* 8023D594 002391F4  2C 00 00 03 */	cmpwi r0, 3
/* 8023D598 002391F8  40 80 00 40 */	bge lbl_8023D5D8
/* 8023D59C 002391FC  48 00 00 20 */	b lbl_8023D5BC
lbl_8023D5A0:
/* 8023D5A0 00239200  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8023D5A4 00239204  2C 00 00 02 */	cmpwi r0, 2
/* 8023D5A8 00239208  40 82 00 0C */	bne lbl_8023D5B4
/* 8023D5AC 0023920C  38 80 00 03 */	li r4, 3
/* 8023D5B0 00239210  48 00 00 54 */	b lbl_8023D604
lbl_8023D5B4:
/* 8023D5B4 00239214  38 80 00 02 */	li r4, 2
/* 8023D5B8 00239218  48 00 00 4C */	b lbl_8023D604
lbl_8023D5BC:
/* 8023D5BC 0023921C  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8023D5C0 00239220  2C 00 00 02 */	cmpwi r0, 2
/* 8023D5C4 00239224  40 82 00 0C */	bne lbl_8023D5D0
/* 8023D5C8 00239228  38 80 00 05 */	li r4, 5
/* 8023D5CC 0023922C  48 00 00 38 */	b lbl_8023D604
lbl_8023D5D0:
/* 8023D5D0 00239230  38 80 00 04 */	li r4, 4
/* 8023D5D4 00239234  48 00 00 30 */	b lbl_8023D604
lbl_8023D5D8:
/* 8023D5D8 00239238  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8023D5DC 0023923C  2C 00 00 02 */	cmpwi r0, 2
/* 8023D5E0 00239240  40 82 00 0C */	bne lbl_8023D5EC
/* 8023D5E4 00239244  38 80 00 01 */	li r4, 1
/* 8023D5E8 00239248  48 00 00 1C */	b lbl_8023D604
lbl_8023D5EC:
/* 8023D5EC 0023924C  38 80 00 00 */	li r4, 0
/* 8023D5F0 00239250  48 00 00 14 */	b lbl_8023D604
lbl_8023D5F4:
/* 8023D5F4 00239254  80 83 00 18 */	lwz r4, 0x18(r3)
/* 8023D5F8 00239258  38 04 FF FE */	addi r0, r4, -2
/* 8023D5FC 0023925C  7C 00 00 34 */	cntlzw r0, r0
/* 8023D600 00239260  54 04 D9 7E */	srwi r4, r0, 5
lbl_8023D604:
/* 8023D604 00239264  2C 04 00 05 */	cmpwi r4, 5
/* 8023D608 00239268  41 82 00 0C */	beq lbl_8023D614
/* 8023D60C 0023926C  38 E0 00 00 */	li r7, 0
/* 8023D610 00239270  39 00 00 00 */	li r8, 0
lbl_8023D614:
/* 8023D614 00239274  38 05 FF FF */	addi r0, r5, -1
/* 8023D618 00239278  80 C3 00 1C */	lwz r6, 0x1c(r3)
/* 8023D61C 0023927C  6C 05 80 00 */	xoris r5, r0, 0x8000
/* 8023D620 00239280  C0 22 9D D8 */	lfs f1, lbl_806423D8-_SDA2_BASE_(r2)
/* 8023D624 00239284  3C 00 43 30 */	lis r0, 0x4330
/* 8023D628 00239288  90 A1 00 0C */	stw r5, 0xc(r1)
/* 8023D62C 0023928C  38 A6 FF FE */	addi r5, r6, -2
/* 8023D630 00239290  C8 42 9D E0 */	lfd f2, lbl_806423E0-_SDA2_BASE_(r2)
/* 8023D634 00239294  90 01 00 08 */	stw r0, 8(r1)
/* 8023D638 00239298  7C A5 00 34 */	cntlzw r5, r5
/* 8023D63C 0023929C  FC 60 08 90 */	fmr f3, f1
/* 8023D640 002392A0  54 A5 D9 7E */	srwi r5, r5, 5
/* 8023D644 002392A4  C8 01 00 08 */	lfd f0, 8(r1)
/* 8023D648 002392A8  38 C0 00 00 */	li r6, 0
/* 8023D64C 002392AC  38 63 00 54 */	addi r3, r3, 0x54
/* 8023D650 002392B0  EC 40 10 28 */	fsubs f2, f0, f2
/* 8023D654 002392B4  48 04 52 D1 */	bl GXInitTexObjLOD
/* 8023D658 002392B8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023D65C 002392BC  7C 08 03 A6 */	mtlr r0
/* 8023D660 002392C0  38 21 00 10 */	addi r1, r1, 0x10
/* 8023D664 002392C4  4E 80 00 20 */	blr

.global func_8023D668
func_8023D668:
/* 8023D668 002392C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023D66C 002392CC  7C 08 02 A6 */	mflr r0
/* 8023D670 002392D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023D674 002392D4  90 6D A4 AC */	stw r3, lbl_8063F76C-_SDA_BASE_(r13)
/* 8023D678 002392D8  54 63 38 30 */	slwi r3, r3, 7
/* 8023D67C 002392DC  4B F9 D6 E9 */	bl func_801DAD64
/* 8023D680 002392E0  2C 03 00 00 */	cmpwi r3, 0
/* 8023D684 002392E4  90 6D A4 A8 */	stw r3, lbl_8063F768-_SDA_BASE_(r13)
/* 8023D688 002392E8  41 82 00 34 */	beq lbl_8023D6BC
/* 8023D68C 002392EC  38 C0 00 00 */	li r6, 0
/* 8023D690 002392F0  38 A0 00 00 */	li r5, 0
/* 8023D694 002392F4  38 80 00 00 */	li r4, 0
/* 8023D698 002392F8  48 00 00 18 */	b lbl_8023D6B0
lbl_8023D69C:
/* 8023D69C 002392FC  80 0D A4 A8 */	lwz r0, lbl_8063F768-_SDA_BASE_(r13)
/* 8023D6A0 00239300  38 C6 00 01 */	addi r6, r6, 1
/* 8023D6A4 00239304  7C 60 2A 14 */	add r3, r0, r5
/* 8023D6A8 00239308  38 A5 00 80 */	addi r5, r5, 0x80
/* 8023D6AC 0023930C  98 83 00 06 */	stb r4, 6(r3)
lbl_8023D6B0:
/* 8023D6B0 00239310  80 0D A4 AC */	lwz r0, lbl_8063F76C-_SDA_BASE_(r13)
/* 8023D6B4 00239314  7C 06 00 40 */	cmplw r6, r0
/* 8023D6B8 00239318  41 80 FF E4 */	blt lbl_8023D69C
lbl_8023D6BC:
/* 8023D6BC 0023931C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023D6C0 00239320  7C 08 03 A6 */	mtlr r0
/* 8023D6C4 00239324  38 21 00 10 */	addi r1, r1, 0x10
/* 8023D6C8 00239328  4E 80 00 20 */	blr

.global func_8023D6CC
func_8023D6CC:
/* 8023D6CC 0023932C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023D6D0 00239330  7C 08 02 A6 */	mflr r0
/* 8023D6D4 00239334  38 C0 00 00 */	li r6, 0
/* 8023D6D8 00239338  3C 80 80 00 */	lis r4, 0x8000
/* 8023D6DC 0023933C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023D6E0 00239340  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8023D6E4 00239344  7C 7F 1B 78 */	mr r31, r3
/* 8023D6E8 00239348  7F E5 FB 78 */	mr r5, r31
/* 8023D6EC 0023934C  48 00 00 30 */	b lbl_8023D71C
lbl_8023D6F0:
/* 8023D6F0 00239350  2C 03 00 00 */	cmpwi r3, 0
/* 8023D6F4 00239354  41 82 00 20 */	beq lbl_8023D714
/* 8023D6F8 00239358  80 05 00 28 */	lwz r0, 0x28(r5)
/* 8023D6FC 0023935C  2C 00 00 00 */	cmpwi r0, 0
/* 8023D700 00239360  41 82 00 14 */	beq lbl_8023D714
/* 8023D704 00239364  7C 00 20 40 */	cmplw r0, r4
/* 8023D708 00239368  40 80 00 0C */	bge lbl_8023D714
/* 8023D70C 0023936C  7C 00 1A 14 */	add r0, r0, r3
/* 8023D710 00239370  90 05 00 28 */	stw r0, 0x28(r5)
lbl_8023D714:
/* 8023D714 00239374  38 A5 00 04 */	addi r5, r5, 4
/* 8023D718 00239378  38 C6 00 01 */	addi r6, r6, 1
lbl_8023D71C:
/* 8023D71C 0023937C  89 03 00 05 */	lbz r8, 5(r3)
/* 8023D720 00239380  7C 06 40 00 */	cmpw r6, r8
/* 8023D724 00239384  41 80 FF CC */	blt lbl_8023D6F0
/* 8023D728 00239388  2C 88 00 08 */	cmpwi cr1, r8, 8
/* 8023D72C 0023938C  40 84 01 04 */	bge cr1, lbl_8023D830
/* 8023D730 00239390  20 08 00 08 */	subfic r0, r8, 8
/* 8023D734 00239394  2C 00 00 08 */	cmpwi r0, 8
/* 8023D738 00239398  40 81 00 D0 */	ble lbl_8023D808
/* 8023D73C 0023939C  38 A0 00 00 */	li r5, 0
/* 8023D740 002393A0  38 C0 00 00 */	li r6, 0
/* 8023D744 002393A4  38 E0 00 00 */	li r7, 0
/* 8023D748 002393A8  41 85 00 18 */	bgt cr1, lbl_8023D760
/* 8023D74C 002393AC  3C 80 80 00 */	lis r4, 0x7FFFFFFE@ha
/* 8023D750 002393B0  38 04 FF FE */	addi r0, r4, 0x7FFFFFFE@l
/* 8023D754 002393B4  7C 08 00 00 */	cmpw r8, r0
/* 8023D758 002393B8  41 81 00 08 */	bgt lbl_8023D760
/* 8023D75C 002393BC  38 E0 00 01 */	li r7, 1
lbl_8023D760:
/* 8023D760 002393C0  2C 07 00 00 */	cmpwi r7, 0
/* 8023D764 002393C4  41 82 00 18 */	beq lbl_8023D77C
/* 8023D768 002393C8  88 83 00 05 */	lbz r4, 5(r3)
/* 8023D76C 002393CC  3C 04 80 00 */	addis r0, r4, 0x8000
/* 8023D770 002393D0  28 00 00 00 */	cmplwi r0, 0
/* 8023D774 002393D4  41 82 00 08 */	beq lbl_8023D77C
/* 8023D778 002393D8  38 C0 00 01 */	li r6, 1
lbl_8023D77C:
/* 8023D77C 002393DC  2C 06 00 00 */	cmpwi r6, 0
/* 8023D780 002393E0  41 82 00 34 */	beq lbl_8023D7B4
/* 8023D784 002393E4  88 C3 00 05 */	lbz r6, 5(r3)
/* 8023D788 002393E8  38 80 00 01 */	li r4, 1
/* 8023D78C 002393EC  7C 06 00 D0 */	neg r0, r6
/* 8023D790 002393F0  54 00 00 01 */	rlwinm. r0, r0, 0, 0, 0
/* 8023D794 002393F4  40 82 00 14 */	bne lbl_8023D7A8
/* 8023D798 002393F8  20 06 00 08 */	subfic r0, r6, 8
/* 8023D79C 002393FC  54 00 00 01 */	rlwinm. r0, r0, 0, 0, 0
/* 8023D7A0 00239400  41 82 00 08 */	beq lbl_8023D7A8
/* 8023D7A4 00239404  38 80 00 00 */	li r4, 0
lbl_8023D7A8:
/* 8023D7A8 00239408  2C 04 00 00 */	cmpwi r4, 0
/* 8023D7AC 0023940C  41 82 00 08 */	beq lbl_8023D7B4
/* 8023D7B0 00239410  38 A0 00 01 */	li r5, 1
lbl_8023D7B4:
/* 8023D7B4 00239414  2C 05 00 00 */	cmpwi r5, 0
/* 8023D7B8 00239418  41 82 00 50 */	beq lbl_8023D808
/* 8023D7BC 0023941C  20 08 00 07 */	subfic r0, r8, 7
/* 8023D7C0 00239420  55 05 10 3A */	slwi r5, r8, 2
/* 8023D7C4 00239424  54 00 E8 FE */	srwi r0, r0, 3
/* 8023D7C8 00239428  38 80 00 00 */	li r4, 0
/* 8023D7CC 0023942C  7C A3 2A 14 */	add r5, r3, r5
/* 8023D7D0 00239430  7C 09 03 A6 */	mtctr r0
/* 8023D7D4 00239434  2C 08 00 00 */	cmpwi r8, 0
/* 8023D7D8 00239438  40 80 00 30 */	bge lbl_8023D808
lbl_8023D7DC:
/* 8023D7DC 0023943C  90 85 00 28 */	stw r4, 0x28(r5)
/* 8023D7E0 00239440  39 08 00 08 */	addi r8, r8, 8
/* 8023D7E4 00239444  90 85 00 2C */	stw r4, 0x2c(r5)
/* 8023D7E8 00239448  90 85 00 30 */	stw r4, 0x30(r5)
/* 8023D7EC 0023944C  90 85 00 34 */	stw r4, 0x34(r5)
/* 8023D7F0 00239450  90 85 00 38 */	stw r4, 0x38(r5)
/* 8023D7F4 00239454  90 85 00 3C */	stw r4, 0x3c(r5)
/* 8023D7F8 00239458  90 85 00 40 */	stw r4, 0x40(r5)
/* 8023D7FC 0023945C  90 85 00 44 */	stw r4, 0x44(r5)
/* 8023D800 00239460  38 A5 00 20 */	addi r5, r5, 0x20
/* 8023D804 00239464  42 00 FF D8 */	bdnz lbl_8023D7DC
lbl_8023D808:
/* 8023D808 00239468  55 04 10 3A */	slwi r4, r8, 2
/* 8023D80C 0023946C  20 08 00 08 */	subfic r0, r8, 8
/* 8023D810 00239470  7C A3 22 14 */	add r5, r3, r4
/* 8023D814 00239474  38 80 00 00 */	li r4, 0
/* 8023D818 00239478  7C 09 03 A6 */	mtctr r0
/* 8023D81C 0023947C  2C 08 00 08 */	cmpwi r8, 8
/* 8023D820 00239480  40 80 00 10 */	bge lbl_8023D830
lbl_8023D824:
/* 8023D824 00239484  90 85 00 28 */	stw r4, 0x28(r5)
/* 8023D828 00239488  38 A5 00 04 */	addi r5, r5, 4
/* 8023D82C 0023948C  42 00 FF F8 */	bdnz lbl_8023D824
lbl_8023D830:
/* 8023D830 00239490  80 83 00 48 */	lwz r4, 0x48(r3)
/* 8023D834 00239494  2C 84 00 00 */	cmpwi cr1, r4, 0
/* 8023D838 00239498  41 86 00 24 */	beq cr1, lbl_8023D85C
/* 8023D83C 0023949C  2C 03 00 00 */	cmpwi r3, 0
/* 8023D840 002394A0  41 82 00 1C */	beq lbl_8023D85C
/* 8023D844 002394A4  41 86 00 18 */	beq cr1, lbl_8023D85C
/* 8023D848 002394A8  3C 00 80 00 */	lis r0, 0x8000
/* 8023D84C 002394AC  7C 04 00 40 */	cmplw r4, r0
/* 8023D850 002394B0  40 80 00 0C */	bge lbl_8023D85C
/* 8023D854 002394B4  7C 04 1A 14 */	add r0, r4, r3
/* 8023D858 002394B8  90 03 00 48 */	stw r0, 0x48(r3)
lbl_8023D85C:
/* 8023D85C 002394BC  7F E3 FB 78 */	mr r3, r31
/* 8023D860 002394C0  4B FF FA 3D */	bl func_8023D29C
/* 8023D864 002394C4  7F E3 FB 78 */	mr r3, r31
/* 8023D868 002394C8  4B FF FB B9 */	bl func_8023D420
/* 8023D86C 002394CC  7F E3 FB 78 */	mr r3, r31
/* 8023D870 002394D0  4B FF FC C1 */	bl func_8023D530
/* 8023D874 002394D4  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 8023D878 002394D8  38 60 00 00 */	li r3, 0
/* 8023D87C 002394DC  38 80 00 01 */	li r4, 1
/* 8023D880 002394E0  90 7F 00 50 */	stw r3, 0x50(r31)
/* 8023D884 002394E4  2C 00 00 00 */	cmpwi r0, 0
/* 8023D888 002394E8  98 9F 00 07 */	stb r4, 7(r31)
/* 8023D88C 002394EC  90 7F 00 24 */	stw r3, 0x24(r31)
/* 8023D890 002394F0  40 82 00 C0 */	bne lbl_8023D950
/* 8023D894 002394F4  A0 7F 00 00 */	lhz r3, 0(r31)
/* 8023D898 002394F8  38 A0 00 00 */	li r5, 0
/* 8023D89C 002394FC  A0 1F 00 02 */	lhz r0, 2(r31)
/* 8023D8A0 00239500  88 9F 00 04 */	lbz r4, 4(r31)
/* 8023D8A4 00239504  7C 03 01 D6 */	mullw r0, r3, r0
/* 8023D8A8 00239508  7C 04 01 D6 */	mullw r0, r4, r0
/* 8023D8AC 0023950C  54 04 E8 FE */	srwi r4, r0, 3
/* 8023D8B0 00239510  48 00 00 20 */	b lbl_8023D8D0
lbl_8023D8B4:
/* 8023D8B4 00239514  38 04 00 1F */	addi r0, r4, 0x1f
/* 8023D8B8 00239518  80 7F 00 4C */	lwz r3, 0x4c(r31)
/* 8023D8BC 0023951C  54 00 00 34 */	rlwinm r0, r0, 0, 0, 0x1a
/* 8023D8C0 00239520  54 84 F0 BE */	srwi r4, r4, 2
/* 8023D8C4 00239524  7C 03 02 14 */	add r0, r3, r0
/* 8023D8C8 00239528  38 A5 00 01 */	addi r5, r5, 1
/* 8023D8CC 0023952C  90 1F 00 4C */	stw r0, 0x4c(r31)
lbl_8023D8D0:
/* 8023D8D0 00239530  88 1F 00 05 */	lbz r0, 5(r31)
/* 8023D8D4 00239534  7C 05 00 00 */	cmpw r5, r0
/* 8023D8D8 00239538  41 80 FF DC */	blt lbl_8023D8B4
/* 8023D8DC 0023953C  80 1F 00 08 */	lwz r0, 8(r31)
/* 8023D8E0 00239540  38 60 00 00 */	li r3, 0
/* 8023D8E4 00239544  2C 00 00 01 */	cmpwi r0, 1
/* 8023D8E8 00239548  41 82 00 28 */	beq lbl_8023D910
/* 8023D8EC 0023954C  40 80 00 10 */	bge lbl_8023D8FC
/* 8023D8F0 00239550  2C 00 00 00 */	cmpwi r0, 0
/* 8023D8F4 00239554  40 80 00 14 */	bge lbl_8023D908
/* 8023D8F8 00239558  48 00 00 24 */	b lbl_8023D91C
lbl_8023D8FC:
/* 8023D8FC 0023955C  2C 00 00 30 */	cmpwi r0, 0x30
/* 8023D900 00239560  41 82 00 18 */	beq lbl_8023D918
/* 8023D904 00239564  48 00 00 18 */	b lbl_8023D91C
lbl_8023D908:
/* 8023D908 00239568  38 60 00 10 */	li r3, 0x10
/* 8023D90C 0023956C  48 00 00 10 */	b lbl_8023D91C
lbl_8023D910:
/* 8023D910 00239570  38 60 01 00 */	li r3, 0x100
/* 8023D914 00239574  48 00 00 08 */	b lbl_8023D91C
lbl_8023D918:
/* 8023D918 00239578  38 60 04 00 */	li r3, 0x400
lbl_8023D91C:
/* 8023D91C 0023957C  2C 03 00 00 */	cmpwi r3, 0
/* 8023D920 00239580  41 82 00 30 */	beq lbl_8023D950
/* 8023D924 00239584  80 1F 00 0C */	lwz r0, 0xc(r31)
/* 8023D928 00239588  2C 00 00 00 */	cmpwi r0, 0
/* 8023D92C 0023958C  41 82 00 24 */	beq lbl_8023D950
/* 8023D930 00239590  41 80 00 20 */	blt lbl_8023D950
/* 8023D934 00239594  2C 00 00 04 */	cmpwi r0, 4
/* 8023D938 00239598  40 80 00 18 */	bge lbl_8023D950
/* 8023D93C 0023959C  54 60 20 36 */	slwi r0, r3, 4
/* 8023D940 002395A0  80 7F 00 4C */	lwz r3, 0x4c(r31)
/* 8023D944 002395A4  7C 00 1E 70 */	srawi r0, r0, 3
/* 8023D948 002395A8  7C 03 02 14 */	add r0, r3, r0
/* 8023D94C 002395AC  90 1F 00 4C */	stw r0, 0x4c(r31)
lbl_8023D950:
/* 8023D950 002395B0  80 7F 00 28 */	lwz r3, 0x28(r31)
/* 8023D954 002395B4  80 9F 00 4C */	lwz r4, 0x4c(r31)
/* 8023D958 002395B8  48 02 CD 2D */	bl DCStoreRange
/* 8023D95C 002395BC  7F E3 FB 78 */	mr r3, r31
/* 8023D960 002395C0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8023D964 002395C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023D968 002395C8  7C 08 03 A6 */	mtlr r0
/* 8023D96C 002395CC  38 21 00 10 */	addi r1, r1, 0x10
/* 8023D970 002395D0  4E 80 00 20 */	blr

.global func_8023D974
func_8023D974:
/* 8023D974 002395D4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8023D978 002395D8  7C 08 02 A6 */	mflr r0
/* 8023D97C 002395DC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8023D980 002395E0  39 61 00 30 */	addi r11, r1, 0x30
/* 8023D984 002395E4  4B F8 97 A5 */	bl _savegpr_27
/* 8023D988 002395E8  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 8023D98C 002395EC  B0 61 00 08 */	sth r3, 8(r1)
/* 8023D990 002395F0  7C BB 2B 78 */	mr r27, r5
/* 8023D994 002395F4  7C DC 33 78 */	mr r28, r6
/* 8023D998 002395F8  B0 81 00 0A */	sth r4, 0xa(r1)
/* 8023D99C 002395FC  7C FD 3B 78 */	mr r29, r7
/* 8023D9A0 00239600  7D 1E 43 78 */	mr r30, r8
/* 8023D9A4 00239604  40 82 00 2C */	bne lbl_8023D9D0
/* 8023D9A8 00239608  54 80 04 3F */	clrlwi. r0, r4, 0x10
/* 8023D9AC 0023960C  40 82 00 24 */	bne lbl_8023D9D0
/* 8023D9B0 00239610  34 01 00 08 */	addic. r0, r1, 8
/* 8023D9B4 00239614  80 CD A4 C8 */	lwz r6, lbl_8063F788-_SDA_BASE_(r13)
/* 8023D9B8 00239618  41 82 00 0C */	beq lbl_8023D9C4
/* 8023D9BC 0023961C  A0 66 00 04 */	lhz r3, 4(r6)
/* 8023D9C0 00239620  B0 61 00 08 */	sth r3, 8(r1)
lbl_8023D9C4:
/* 8023D9C4 00239624  34 01 00 0A */	addic. r0, r1, 0xa
/* 8023D9C8 00239628  41 82 00 08 */	beq lbl_8023D9D0
/* 8023D9CC 0023962C  A0 86 00 06 */	lhz r4, 6(r6)
lbl_8023D9D0:
/* 8023D9D0 00239630  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8023D9D4 00239634  28 00 04 00 */	cmplwi r0, 0x400
/* 8023D9D8 00239638  41 81 00 20 */	bgt lbl_8023D9F8
/* 8023D9DC 0023963C  54 83 04 3E */	clrlwi r3, r4, 0x10
/* 8023D9E0 00239640  28 03 04 00 */	cmplwi r3, 0x400
/* 8023D9E4 00239644  41 81 00 14 */	bgt lbl_8023D9F8
/* 8023D9E8 00239648  28 00 00 04 */	cmplwi r0, 4
/* 8023D9EC 0023964C  41 80 00 0C */	blt lbl_8023D9F8
/* 8023D9F0 00239650  28 03 00 04 */	cmplwi r3, 4
/* 8023D9F4 00239654  40 80 00 0C */	bge lbl_8023DA00
lbl_8023D9F8:
/* 8023D9F8 00239658  38 60 00 00 */	li r3, 0
/* 8023D9FC 0023965C  48 00 05 10 */	b lbl_8023DF0C
lbl_8023DA00:
/* 8023DA00 00239660  2C 05 00 90 */	cmpwi r5, 0x90
/* 8023DA04 00239664  41 82 00 A4 */	beq lbl_8023DAA8
/* 8023DA08 00239668  40 80 00 4C */	bge lbl_8023DA54
/* 8023DA0C 0023966C  2C 05 00 30 */	cmpwi r5, 0x30
/* 8023DA10 00239670  41 82 00 98 */	beq lbl_8023DAA8
/* 8023DA14 00239674  40 80 00 1C */	bge lbl_8023DA30
/* 8023DA18 00239678  2C 05 00 01 */	cmpwi r5, 1
/* 8023DA1C 0023967C  41 82 00 80 */	beq lbl_8023DA9C
/* 8023DA20 00239680  40 80 00 94 */	bge lbl_8023DAB4
/* 8023DA24 00239684  2C 05 00 00 */	cmpwi r5, 0
/* 8023DA28 00239688  40 80 00 68 */	bge lbl_8023DA90
/* 8023DA2C 0023968C  48 00 00 88 */	b lbl_8023DAB4
lbl_8023DA30:
/* 8023DA30 00239690  2C 05 00 43 */	cmpwi r5, 0x43
/* 8023DA34 00239694  40 80 00 14 */	bge lbl_8023DA48
/* 8023DA38 00239698  2C 05 00 40 */	cmpwi r5, 0x40
/* 8023DA3C 0023969C  41 82 00 54 */	beq lbl_8023DA90
/* 8023DA40 002396A0  40 80 00 5C */	bge lbl_8023DA9C
/* 8023DA44 002396A4  48 00 00 70 */	b lbl_8023DAB4
lbl_8023DA48:
/* 8023DA48 002396A8  2C 05 00 46 */	cmpwi r5, 0x46
/* 8023DA4C 002396AC  40 80 00 68 */	bge lbl_8023DAB4
/* 8023DA50 002396B0  48 00 00 58 */	b lbl_8023DAA8
lbl_8023DA54:
/* 8023DA54 002396B4  2C 05 00 A8 */	cmpwi r5, 0xa8
/* 8023DA58 002396B8  41 82 00 38 */	beq lbl_8023DA90
/* 8023DA5C 002396BC  40 80 00 28 */	bge lbl_8023DA84
/* 8023DA60 002396C0  2C 05 00 A4 */	cmpwi r5, 0xa4
/* 8023DA64 002396C4  40 80 00 14 */	bge lbl_8023DA78
/* 8023DA68 002396C8  2C 05 00 A0 */	cmpwi r5, 0xa0
/* 8023DA6C 002396CC  41 82 00 30 */	beq lbl_8023DA9C
/* 8023DA70 002396D0  40 80 00 20 */	bge lbl_8023DA90
/* 8023DA74 002396D4  48 00 00 40 */	b lbl_8023DAB4
lbl_8023DA78:
/* 8023DA78 002396D8  2C 05 00 A6 */	cmpwi r5, 0xa6
/* 8023DA7C 002396DC  40 80 00 2C */	bge lbl_8023DAA8
/* 8023DA80 002396E0  48 00 00 1C */	b lbl_8023DA9C
lbl_8023DA84:
/* 8023DA84 002396E4  2C 05 00 B0 */	cmpwi r5, 0xb0
/* 8023DA88 002396E8  41 82 00 08 */	beq lbl_8023DA90
/* 8023DA8C 002396EC  48 00 00 28 */	b lbl_8023DAB4
lbl_8023DA90:
/* 8023DA90 002396F0  38 A0 00 08 */	li r5, 8
/* 8023DA94 002396F4  38 C0 00 08 */	li r6, 8
/* 8023DA98 002396F8  48 00 00 24 */	b lbl_8023DABC
lbl_8023DA9C:
/* 8023DA9C 002396FC  38 A0 00 04 */	li r5, 4
/* 8023DAA0 00239700  38 C0 00 08 */	li r6, 8
/* 8023DAA4 00239704  48 00 00 18 */	b lbl_8023DABC
lbl_8023DAA8:
/* 8023DAA8 00239708  38 A0 00 04 */	li r5, 4
/* 8023DAAC 0023970C  38 C0 00 04 */	li r6, 4
/* 8023DAB0 00239710  48 00 00 0C */	b lbl_8023DABC
lbl_8023DAB4:
/* 8023DAB4 00239714  38 60 00 00 */	li r3, 0
/* 8023DAB8 00239718  48 00 04 54 */	b lbl_8023DF0C
lbl_8023DABC:
/* 8023DABC 0023971C  7C 85 02 14 */	add r4, r5, r0
/* 8023DAC0 00239720  7C 66 1A 14 */	add r3, r6, r3
/* 8023DAC4 00239724  38 05 FF FF */	addi r0, r5, -1
/* 8023DAC8 00239728  38 A0 00 00 */	li r5, 0
/* 8023DACC 0023972C  38 84 FF FF */	addi r4, r4, -1
/* 8023DAD0 00239730  38 63 FF FF */	addi r3, r3, -1
/* 8023DAD4 00239734  7C 84 00 78 */	andc r4, r4, r0
/* 8023DAD8 00239738  38 06 FF FF */	addi r0, r6, -1
/* 8023DADC 0023973C  7C 60 00 78 */	andc r0, r3, r0
/* 8023DAE0 00239740  B0 81 00 08 */	sth r4, 8(r1)
/* 8023DAE4 00239744  54 83 04 3E */	clrlwi r3, r4, 0x10
/* 8023DAE8 00239748  B0 01 00 0A */	sth r0, 0xa(r1)
/* 8023DAEC 0023974C  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8023DAF0 00239750  48 00 00 10 */	b lbl_8023DB00
lbl_8023DAF4:
/* 8023DAF4 00239754  54 63 FC 7E */	rlwinm r3, r3, 0x1f, 0x11, 0x1f
/* 8023DAF8 00239758  54 84 FC 7E */	rlwinm r4, r4, 0x1f, 0x11, 0x1f
/* 8023DAFC 0023975C  38 A5 00 01 */	addi r5, r5, 1
lbl_8023DB00:
/* 8023DB00 00239760  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8023DB04 00239764  28 00 00 04 */	cmplwi r0, 4
/* 8023DB08 00239768  40 81 00 1C */	ble lbl_8023DB24
/* 8023DB0C 0023976C  54 80 04 3E */	clrlwi r0, r4, 0x10
/* 8023DB10 00239770  28 00 00 04 */	cmplwi r0, 4
/* 8023DB14 00239774  40 81 00 10 */	ble lbl_8023DB24
/* 8023DB18 00239778  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8023DB1C 0023977C  28 00 00 07 */	cmplwi r0, 7
/* 8023DB20 00239780  41 80 FF D4 */	blt lbl_8023DAF4
lbl_8023DB24:
/* 8023DB24 00239784  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8023DB28 00239788  7C 07 00 40 */	cmplw r7, r0
/* 8023DB2C 0023978C  40 81 00 08 */	ble lbl_8023DB34
/* 8023DB30 00239790  7C BD 2B 78 */	mr r29, r5
lbl_8023DB34:
/* 8023DB34 00239794  3B BD 00 01 */	addi r29, r29, 1
/* 8023DB38 00239798  4B FF F5 21 */	bl func_8023D058
/* 8023DB3C 0023979C  2C 03 00 00 */	cmpwi r3, 0
/* 8023DB40 002397A0  7C 7F 1B 78 */	mr r31, r3
/* 8023DB44 002397A4  40 82 00 0C */	bne lbl_8023DB50
/* 8023DB48 002397A8  38 60 00 00 */	li r3, 0
/* 8023DB4C 002397AC  48 00 03 C0 */	b lbl_8023DF0C
lbl_8023DB50:
/* 8023DB50 002397B0  2C 1B 00 45 */	cmpwi r27, 0x45
/* 8023DB54 002397B4  38 00 00 00 */	li r0, 0
/* 8023DB58 002397B8  41 82 00 B8 */	beq lbl_8023DC10
/* 8023DB5C 002397BC  40 80 00 40 */	bge lbl_8023DB9C
/* 8023DB60 002397C0  2C 1B 00 30 */	cmpwi r27, 0x30
/* 8023DB64 002397C4  41 82 00 9C */	beq lbl_8023DC00
/* 8023DB68 002397C8  40 80 00 1C */	bge lbl_8023DB84
/* 8023DB6C 002397CC  2C 1B 00 01 */	cmpwi r27, 1
/* 8023DB70 002397D0  41 82 00 80 */	beq lbl_8023DBF0
/* 8023DB74 002397D4  40 80 00 A8 */	bge lbl_8023DC1C
/* 8023DB78 002397D8  2C 1B 00 00 */	cmpwi r27, 0
/* 8023DB7C 002397DC  40 80 00 64 */	bge lbl_8023DBE0
/* 8023DB80 002397E0  48 00 00 9C */	b lbl_8023DC1C
lbl_8023DB84:
/* 8023DB84 002397E4  2C 1B 00 40 */	cmpwi r27, 0x40
/* 8023DB88 002397E8  41 82 00 5C */	beq lbl_8023DBE4
/* 8023DB8C 002397EC  41 80 00 90 */	blt lbl_8023DC1C
/* 8023DB90 002397F0  2C 1B 00 43 */	cmpwi r27, 0x43
/* 8023DB94 002397F4  40 80 00 70 */	bge lbl_8023DC04
/* 8023DB98 002397F8  48 00 00 5C */	b lbl_8023DBF4
lbl_8023DB9C:
/* 8023DB9C 002397FC  2C 1B 00 A7 */	cmpwi r27, 0xa7
/* 8023DBA0 00239800  41 82 00 70 */	beq lbl_8023DC10
/* 8023DBA4 00239804  40 80 00 24 */	bge lbl_8023DBC8
/* 8023DBA8 00239808  2C 1B 00 A0 */	cmpwi r27, 0xa0
/* 8023DBAC 0023980C  40 80 00 10 */	bge lbl_8023DBBC
/* 8023DBB0 00239810  2C 1B 00 90 */	cmpwi r27, 0x90
/* 8023DBB4 00239814  41 82 00 50 */	beq lbl_8023DC04
/* 8023DBB8 00239818  48 00 00 64 */	b lbl_8023DC1C
lbl_8023DBBC:
/* 8023DBBC 0023981C  2C 1B 00 A6 */	cmpwi r27, 0xa6
/* 8023DBC0 00239820  40 80 00 44 */	bge lbl_8023DC04
/* 8023DBC4 00239824  48 00 00 30 */	b lbl_8023DBF4
lbl_8023DBC8:
/* 8023DBC8 00239828  2C 1B 00 B0 */	cmpwi r27, 0xb0
/* 8023DBCC 0023982C  41 82 00 18 */	beq lbl_8023DBE4
/* 8023DBD0 00239830  40 80 00 4C */	bge lbl_8023DC1C
/* 8023DBD4 00239834  2C 1B 00 A9 */	cmpwi r27, 0xa9
/* 8023DBD8 00239838  40 80 00 44 */	bge lbl_8023DC1C
/* 8023DBDC 0023983C  48 00 00 08 */	b lbl_8023DBE4
lbl_8023DBE0:
/* 8023DBE0 00239840  38 00 00 10 */	li r0, 0x10
lbl_8023DBE4:
/* 8023DBE4 00239844  38 80 00 04 */	li r4, 4
/* 8023DBE8 00239848  98 83 00 04 */	stb r4, 4(r3)
/* 8023DBEC 0023984C  48 00 00 38 */	b lbl_8023DC24
lbl_8023DBF0:
/* 8023DBF0 00239850  38 00 01 00 */	li r0, 0x100
lbl_8023DBF4:
/* 8023DBF4 00239854  38 80 00 08 */	li r4, 8
/* 8023DBF8 00239858  98 83 00 04 */	stb r4, 4(r3)
/* 8023DBFC 0023985C  48 00 00 28 */	b lbl_8023DC24
lbl_8023DC00:
/* 8023DC00 00239860  38 00 04 00 */	li r0, 0x400
lbl_8023DC04:
/* 8023DC04 00239864  38 80 00 10 */	li r4, 0x10
/* 8023DC08 00239868  98 83 00 04 */	stb r4, 4(r3)
/* 8023DC0C 0023986C  48 00 00 18 */	b lbl_8023DC24
lbl_8023DC10:
/* 8023DC10 00239870  38 80 00 20 */	li r4, 0x20
/* 8023DC14 00239874  98 83 00 04 */	stb r4, 4(r3)
/* 8023DC18 00239878  48 00 00 0C */	b lbl_8023DC24
lbl_8023DC1C:
/* 8023DC1C 0023987C  38 60 00 00 */	li r3, 0
/* 8023DC20 00239880  48 00 02 EC */	b lbl_8023DF0C
lbl_8023DC24:
/* 8023DC24 00239884  A0 C1 00 08 */	lhz r6, 8(r1)
/* 8023DC28 00239888  57 A7 06 3E */	clrlwi r7, r29, 0x18
/* 8023DC2C 0023988C  A0 A1 00 0A */	lhz r5, 0xa(r1)
/* 8023DC30 00239890  38 80 00 00 */	li r4, 0
/* 8023DC34 00239894  89 03 00 04 */	lbz r8, 4(r3)
/* 8023DC38 00239898  2C 87 00 00 */	cmpwi cr1, r7, 0
/* 8023DC3C 0023989C  7C C6 29 D6 */	mullw r6, r6, r5
/* 8023DC40 002398A0  38 A0 00 00 */	li r5, 0
/* 8023DC44 002398A4  90 83 00 4C */	stw r4, 0x4c(r3)
/* 8023DC48 002398A8  7C 88 31 D6 */	mullw r4, r8, r6
/* 8023DC4C 002398AC  54 84 E8 FE */	srwi r4, r4, 3
/* 8023DC50 002398B0  40 85 01 08 */	ble cr1, lbl_8023DD58
/* 8023DC54 002398B4  2C 07 00 08 */	cmpwi r7, 8
/* 8023DC58 002398B8  39 07 FF F8 */	addi r8, r7, -8
/* 8023DC5C 002398BC  40 81 00 CC */	ble lbl_8023DD28
/* 8023DC60 002398C0  39 20 00 00 */	li r9, 0
/* 8023DC64 002398C4  41 84 00 18 */	blt cr1, lbl_8023DC7C
/* 8023DC68 002398C8  3C C0 80 00 */	lis r6, 0x7FFFFFFE@ha
/* 8023DC6C 002398CC  38 C6 FF FE */	addi r6, r6, 0x7FFFFFFE@l
/* 8023DC70 002398D0  7C 07 30 00 */	cmpw r7, r6
/* 8023DC74 002398D4  41 81 00 08 */	bgt lbl_8023DC7C
/* 8023DC78 002398D8  39 20 00 01 */	li r9, 1
lbl_8023DC7C:
/* 8023DC7C 002398DC  2C 09 00 00 */	cmpwi r9, 0
/* 8023DC80 002398E0  41 82 00 A8 */	beq lbl_8023DD28
/* 8023DC84 002398E4  38 C8 00 07 */	addi r6, r8, 7
/* 8023DC88 002398E8  54 C6 E8 FE */	srwi r6, r6, 3
/* 8023DC8C 002398EC  7C C9 03 A6 */	mtctr r6
/* 8023DC90 002398F0  2C 08 00 00 */	cmpwi r8, 0
/* 8023DC94 002398F4  40 81 00 94 */	ble lbl_8023DD28
lbl_8023DC98:
/* 8023DC98 002398F8  38 E4 00 1F */	addi r7, r4, 0x1f
/* 8023DC9C 002398FC  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DCA0 00239900  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023DCA4 00239904  81 43 00 4C */	lwz r10, 0x4c(r3)
/* 8023DCA8 00239908  54 E9 00 34 */	rlwinm r9, r7, 0, 0, 0x1a
/* 8023DCAC 0023990C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DCB0 00239910  38 E4 00 1F */	addi r7, r4, 0x1f
/* 8023DCB4 00239914  54 C8 00 34 */	rlwinm r8, r6, 0, 0, 0x1a
/* 8023DCB8 00239918  7D 4A 4A 14 */	add r10, r10, r9
/* 8023DCBC 0023991C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DCC0 00239920  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023DCC4 00239924  54 E9 00 34 */	rlwinm r9, r7, 0, 0, 0x1a
/* 8023DCC8 00239928  7D 4A 42 14 */	add r10, r10, r8
/* 8023DCCC 0023992C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DCD0 00239930  38 E4 00 1F */	addi r7, r4, 0x1f
/* 8023DCD4 00239934  54 C8 00 34 */	rlwinm r8, r6, 0, 0, 0x1a
/* 8023DCD8 00239938  7D 4A 4A 14 */	add r10, r10, r9
/* 8023DCDC 0023993C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DCE0 00239940  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023DCE4 00239944  54 E9 00 34 */	rlwinm r9, r7, 0, 0, 0x1a
/* 8023DCE8 00239948  7D 4A 42 14 */	add r10, r10, r8
/* 8023DCEC 0023994C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DCF0 00239950  38 E4 00 1F */	addi r7, r4, 0x1f
/* 8023DCF4 00239954  54 C8 00 34 */	rlwinm r8, r6, 0, 0, 0x1a
/* 8023DCF8 00239958  7D 2A 4A 14 */	add r9, r10, r9
/* 8023DCFC 0023995C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DD00 00239960  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023DD04 00239964  54 E7 00 34 */	rlwinm r7, r7, 0, 0, 0x1a
/* 8023DD08 00239968  7D 09 42 14 */	add r8, r9, r8
/* 8023DD0C 0023996C  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DD10 00239970  7C E8 3A 14 */	add r7, r8, r7
/* 8023DD14 00239974  54 C6 00 34 */	rlwinm r6, r6, 0, 0, 0x1a
/* 8023DD18 00239978  7C C7 32 14 */	add r6, r7, r6
/* 8023DD1C 0023997C  38 A5 00 08 */	addi r5, r5, 8
/* 8023DD20 00239980  90 C3 00 4C */	stw r6, 0x4c(r3)
/* 8023DD24 00239984  42 00 FF 74 */	bdnz lbl_8023DC98
lbl_8023DD28:
/* 8023DD28 00239988  57 A7 06 3E */	clrlwi r7, r29, 0x18
/* 8023DD2C 0023998C  7C C5 38 50 */	subf r6, r5, r7
/* 8023DD30 00239990  7C C9 03 A6 */	mtctr r6
/* 8023DD34 00239994  7C 05 38 00 */	cmpw r5, r7
/* 8023DD38 00239998  40 80 00 20 */	bge lbl_8023DD58
lbl_8023DD3C:
/* 8023DD3C 0023999C  38 A4 00 1F */	addi r5, r4, 0x1f
/* 8023DD40 002399A0  80 C3 00 4C */	lwz r6, 0x4c(r3)
/* 8023DD44 002399A4  54 A5 00 34 */	rlwinm r5, r5, 0, 0, 0x1a
/* 8023DD48 002399A8  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DD4C 002399AC  7C A6 2A 14 */	add r5, r6, r5
/* 8023DD50 002399B0  90 A3 00 4C */	stw r5, 0x4c(r3)
/* 8023DD54 002399B4  42 00 FF E8 */	bdnz lbl_8023DD3C
lbl_8023DD58:
/* 8023DD58 002399B8  2C 00 00 00 */	cmpwi r0, 0
/* 8023DD5C 002399BC  41 82 00 38 */	beq lbl_8023DD94
/* 8023DD60 002399C0  2C 1C 00 00 */	cmpwi r28, 0
/* 8023DD64 002399C4  41 82 00 28 */	beq lbl_8023DD8C
/* 8023DD68 002399C8  41 80 00 24 */	blt lbl_8023DD8C
/* 8023DD6C 002399CC  2C 1C 00 04 */	cmpwi r28, 4
/* 8023DD70 002399D0  40 80 00 1C */	bge lbl_8023DD8C
/* 8023DD74 002399D4  54 00 20 36 */	slwi r0, r0, 4
/* 8023DD78 002399D8  80 83 00 4C */	lwz r4, 0x4c(r3)
/* 8023DD7C 002399DC  7C 00 1E 70 */	srawi r0, r0, 3
/* 8023DD80 002399E0  7C 04 02 14 */	add r0, r4, r0
/* 8023DD84 002399E4  90 03 00 4C */	stw r0, 0x4c(r3)
/* 8023DD88 002399E8  48 00 00 0C */	b lbl_8023DD94
lbl_8023DD8C:
/* 8023DD8C 002399EC  38 60 00 00 */	li r3, 0
/* 8023DD90 002399F0  48 00 01 7C */	b lbl_8023DF0C
lbl_8023DD94:
/* 8023DD94 002399F4  2C 1E 00 00 */	cmpwi r30, 0
/* 8023DD98 002399F8  41 82 00 1C */	beq lbl_8023DDB4
/* 8023DD9C 002399FC  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8023DDA0 00239A00  38 A0 00 20 */	li r5, 0x20
/* 8023DDA4 00239A04  80 9F 00 4C */	lwz r4, 0x4c(r31)
/* 8023DDA8 00239A08  4B F9 CF 61 */	bl func_801DAD08
/* 8023DDAC 00239A0C  90 7F 00 24 */	stw r3, 0x24(r31)
/* 8023DDB0 00239A10  48 00 00 18 */	b lbl_8023DDC8
lbl_8023DDB4:
/* 8023DDB4 00239A14  80 6D 96 28 */	lwz r3, lbl_8063E8E8-_SDA_BASE_(r13)
/* 8023DDB8 00239A18  38 A0 00 20 */	li r5, 0x20
/* 8023DDBC 00239A1C  80 9F 00 4C */	lwz r4, 0x4c(r31)
/* 8023DDC0 00239A20  4B F9 CF 49 */	bl func_801DAD08
/* 8023DDC4 00239A24  90 7F 00 24 */	stw r3, 0x24(r31)
lbl_8023DDC8:
/* 8023DDC8 00239A28  80 7F 00 24 */	lwz r3, 0x24(r31)
/* 8023DDCC 00239A2C  2C 03 00 00 */	cmpwi r3, 0
/* 8023DDD0 00239A30  40 82 00 0C */	bne lbl_8023DDDC
/* 8023DDD4 00239A34  38 60 00 00 */	li r3, 0
/* 8023DDD8 00239A38  48 00 01 34 */	b lbl_8023DF0C
lbl_8023DDDC:
/* 8023DDDC 00239A3C  90 7F 00 28 */	stw r3, 0x28(r31)
/* 8023DDE0 00239A40  80 9F 00 4C */	lwz r4, 0x4c(r31)
/* 8023DDE4 00239A44  48 02 C8 A1 */	bl DCStoreRange
/* 8023DDE8 00239A48  38 00 00 01 */	li r0, 1
/* 8023DDEC 00239A4C  38 80 00 00 */	li r4, 0
/* 8023DDF0 00239A50  98 1F 00 06 */	stb r0, 6(r31)
/* 8023DDF4 00239A54  57 A0 06 3E */	clrlwi r0, r29, 0x18
/* 8023DDF8 00239A58  28 00 00 01 */	cmplwi r0, 1
/* 8023DDFC 00239A5C  38 60 00 02 */	li r3, 2
/* 8023DE00 00239A60  A0 A1 00 08 */	lhz r5, 8(r1)
/* 8023DE04 00239A64  B0 BF 00 00 */	sth r5, 0(r31)
/* 8023DE08 00239A68  A0 01 00 0A */	lhz r0, 0xa(r1)
/* 8023DE0C 00239A6C  B0 1F 00 02 */	sth r0, 2(r31)
/* 8023DE10 00239A70  9B BF 00 05 */	stb r29, 5(r31)
/* 8023DE14 00239A74  93 7F 00 08 */	stw r27, 8(r31)
/* 8023DE18 00239A78  93 9F 00 0C */	stw r28, 0xc(r31)
/* 8023DE1C 00239A7C  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8023DE20 00239A80  90 9F 00 14 */	stw r4, 0x14(r31)
/* 8023DE24 00239A84  90 7F 00 18 */	stw r3, 0x18(r31)
/* 8023DE28 00239A88  90 7F 00 1C */	stw r3, 0x1c(r31)
/* 8023DE2C 00239A8C  40 81 00 08 */	ble lbl_8023DE34
/* 8023DE30 00239A90  7C 64 1B 78 */	mr r4, r3
lbl_8023DE34:
/* 8023DE34 00239A94  90 9F 00 20 */	stw r4, 0x20(r31)
/* 8023DE38 00239A98  38 C0 00 00 */	li r6, 0
/* 8023DE3C 00239A9C  38 00 00 07 */	li r0, 7
/* 8023DE40 00239AA0  38 FF 00 04 */	addi r7, r31, 4
/* 8023DE44 00239AA4  90 DF 00 50 */	stw r6, 0x50(r31)
/* 8023DE48 00239AA8  39 00 00 01 */	li r8, 1
/* 8023DE4C 00239AAC  A0 81 00 08 */	lhz r4, 8(r1)
/* 8023DE50 00239AB0  A0 61 00 0A */	lhz r3, 0xa(r1)
/* 8023DE54 00239AB4  88 BF 00 04 */	lbz r5, 4(r31)
/* 8023DE58 00239AB8  7C 64 19 D6 */	mullw r3, r4, r3
/* 8023DE5C 00239ABC  7C 65 19 D6 */	mullw r3, r5, r3
/* 8023DE60 00239AC0  54 64 E8 FE */	srwi r4, r3, 3
/* 8023DE64 00239AC4  7C 09 03 A6 */	mtctr r0
lbl_8023DE68:
/* 8023DE68 00239AC8  88 1F 00 05 */	lbz r0, 5(r31)
/* 8023DE6C 00239ACC  7C 08 00 00 */	cmpw r8, r0
/* 8023DE70 00239AD0  40 80 00 18 */	bge lbl_8023DE88
/* 8023DE74 00239AD4  80 07 00 24 */	lwz r0, 0x24(r7)
/* 8023DE78 00239AD8  7C 04 02 14 */	add r0, r4, r0
/* 8023DE7C 00239ADC  54 84 F0 BE */	srwi r4, r4, 2
/* 8023DE80 00239AE0  90 07 00 28 */	stw r0, 0x28(r7)
/* 8023DE84 00239AE4  48 00 00 08 */	b lbl_8023DE8C
lbl_8023DE88:
/* 8023DE88 00239AE8  90 C7 00 28 */	stw r6, 0x28(r7)
lbl_8023DE8C:
/* 8023DE8C 00239AEC  38 E7 00 04 */	addi r7, r7, 4
/* 8023DE90 00239AF0  39 08 00 01 */	addi r8, r8, 1
/* 8023DE94 00239AF4  42 00 FF D4 */	bdnz lbl_8023DE68
/* 8023DE98 00239AF8  2C 1C 00 04 */	cmpwi r28, 4
/* 8023DE9C 00239AFC  40 80 00 30 */	bge lbl_8023DECC
/* 8023DEA0 00239B00  2C 1C 00 01 */	cmpwi r28, 1
/* 8023DEA4 00239B04  40 80 00 08 */	bge lbl_8023DEAC
/* 8023DEA8 00239B08  48 00 00 24 */	b lbl_8023DECC
lbl_8023DEAC:
/* 8023DEAC 00239B0C  88 7F 00 05 */	lbz r3, 5(r31)
/* 8023DEB0 00239B10  38 03 FF FF */	addi r0, r3, -1
/* 8023DEB4 00239B14  54 00 10 3A */	slwi r0, r0, 2
/* 8023DEB8 00239B18  7C 7F 02 14 */	add r3, r31, r0
/* 8023DEBC 00239B1C  80 03 00 28 */	lwz r0, 0x28(r3)
/* 8023DEC0 00239B20  7C 04 02 14 */	add r0, r4, r0
/* 8023DEC4 00239B24  90 1F 00 48 */	stw r0, 0x48(r31)
/* 8023DEC8 00239B28  48 00 00 0C */	b lbl_8023DED4
lbl_8023DECC:
/* 8023DECC 00239B2C  38 00 00 00 */	li r0, 0
/* 8023DED0 00239B30  90 1F 00 48 */	stw r0, 0x48(r31)
lbl_8023DED4:
/* 8023DED4 00239B34  7F E3 FB 78 */	mr r3, r31
/* 8023DED8 00239B38  4B FF F3 C5 */	bl func_8023D29C
/* 8023DEDC 00239B3C  7F E3 FB 78 */	mr r3, r31
/* 8023DEE0 00239B40  4B FF F5 41 */	bl func_8023D420
/* 8023DEE4 00239B44  7F E3 FB 78 */	mr r3, r31
/* 8023DEE8 00239B48  4B FF F6 49 */	bl func_8023D530
/* 8023DEEC 00239B4C  38 00 00 01 */	li r0, 1
/* 8023DEF0 00239B50  2C 1E 00 00 */	cmpwi r30, 0
/* 8023DEF4 00239B54  98 1F 00 07 */	stb r0, 7(r31)
/* 8023DEF8 00239B58  41 82 00 10 */	beq lbl_8023DF08
/* 8023DEFC 00239B5C  88 1F 00 07 */	lbz r0, 7(r31)
/* 8023DF00 00239B60  60 00 00 02 */	ori r0, r0, 2
/* 8023DF04 00239B64  98 1F 00 07 */	stb r0, 7(r31)
lbl_8023DF08:
/* 8023DF08 00239B68  7F E3 FB 78 */	mr r3, r31
lbl_8023DF0C:
/* 8023DF0C 00239B6C  39 61 00 30 */	addi r11, r1, 0x30
/* 8023DF10 00239B70  4B F8 92 65 */	bl _restgpr_27
/* 8023DF14 00239B74  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8023DF18 00239B78  7C 08 03 A6 */	mtlr r0
/* 8023DF1C 00239B7C  38 21 00 30 */	addi r1, r1, 0x30
/* 8023DF20 00239B80  4E 80 00 20 */	blr

.global func_8023DF24
func_8023DF24:
/* 8023DF24 00239B84  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8023DF28 00239B88  7C 08 02 A6 */	mflr r0
/* 8023DF2C 00239B8C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8023DF30 00239B90  39 61 00 30 */	addi r11, r1, 0x30
/* 8023DF34 00239B94  4B F8 91 E9 */	bl _savegpr_24
/* 8023DF38 00239B98  7C 98 23 78 */	mr r24, r4
/* 8023DF3C 00239B9C  7C B9 2B 78 */	mr r25, r5
/* 8023DF40 00239BA0  7C 7B 1B 78 */	mr r27, r3
/* 8023DF44 00239BA4  7C DC 33 78 */	mr r28, r6
/* 8023DF48 00239BA8  7C FA 3B 78 */	mr r26, r7
/* 8023DF4C 00239BAC  7D 1D 43 78 */	mr r29, r8
/* 8023DF50 00239BB0  7D 3E 4B 78 */	mr r30, r9
/* 8023DF54 00239BB4  3B E0 00 00 */	li r31, 0
/* 8023DF58 00239BB8  38 80 00 00 */	li r4, 0
/* 8023DF5C 00239BBC  38 A0 00 80 */	li r5, 0x80
/* 8023DF60 00239BC0  4B DC 61 A5 */	bl memset
/* 8023DF64 00239BC4  2C 1A 00 45 */	cmpwi r26, 0x45
/* 8023DF68 00239BC8  B3 1B 00 00 */	sth r24, 0(r27)
/* 8023DF6C 00239BCC  B3 3B 00 02 */	sth r25, 2(r27)
/* 8023DF70 00239BD0  41 82 00 B8 */	beq lbl_8023E028
/* 8023DF74 00239BD4  40 80 00 40 */	bge lbl_8023DFB4
/* 8023DF78 00239BD8  2C 1A 00 30 */	cmpwi r26, 0x30
/* 8023DF7C 00239BDC  41 82 00 9C */	beq lbl_8023E018
/* 8023DF80 00239BE0  40 80 00 1C */	bge lbl_8023DF9C
/* 8023DF84 00239BE4  2C 1A 00 01 */	cmpwi r26, 1
/* 8023DF88 00239BE8  41 82 00 80 */	beq lbl_8023E008
/* 8023DF8C 00239BEC  40 80 00 A8 */	bge lbl_8023E034
/* 8023DF90 00239BF0  2C 1A 00 00 */	cmpwi r26, 0
/* 8023DF94 00239BF4  40 80 00 64 */	bge lbl_8023DFF8
/* 8023DF98 00239BF8  48 00 00 9C */	b lbl_8023E034
lbl_8023DF9C:
/* 8023DF9C 00239BFC  2C 1A 00 40 */	cmpwi r26, 0x40
/* 8023DFA0 00239C00  41 82 00 5C */	beq lbl_8023DFFC
/* 8023DFA4 00239C04  41 80 00 90 */	blt lbl_8023E034
/* 8023DFA8 00239C08  2C 1A 00 43 */	cmpwi r26, 0x43
/* 8023DFAC 00239C0C  40 80 00 70 */	bge lbl_8023E01C
/* 8023DFB0 00239C10  48 00 00 5C */	b lbl_8023E00C
lbl_8023DFB4:
/* 8023DFB4 00239C14  2C 1A 00 A7 */	cmpwi r26, 0xa7
/* 8023DFB8 00239C18  41 82 00 70 */	beq lbl_8023E028
/* 8023DFBC 00239C1C  40 80 00 24 */	bge lbl_8023DFE0
/* 8023DFC0 00239C20  2C 1A 00 A0 */	cmpwi r26, 0xa0
/* 8023DFC4 00239C24  40 80 00 10 */	bge lbl_8023DFD4
/* 8023DFC8 00239C28  2C 1A 00 90 */	cmpwi r26, 0x90
/* 8023DFCC 00239C2C  41 82 00 50 */	beq lbl_8023E01C
/* 8023DFD0 00239C30  48 00 00 64 */	b lbl_8023E034
lbl_8023DFD4:
/* 8023DFD4 00239C34  2C 1A 00 A6 */	cmpwi r26, 0xa6
/* 8023DFD8 00239C38  40 80 00 44 */	bge lbl_8023E01C
/* 8023DFDC 00239C3C  48 00 00 30 */	b lbl_8023E00C
lbl_8023DFE0:
/* 8023DFE0 00239C40  2C 1A 00 B0 */	cmpwi r26, 0xb0
/* 8023DFE4 00239C44  41 82 00 18 */	beq lbl_8023DFFC
/* 8023DFE8 00239C48  40 80 00 4C */	bge lbl_8023E034
/* 8023DFEC 00239C4C  2C 1A 00 A9 */	cmpwi r26, 0xa9
/* 8023DFF0 00239C50  40 80 00 44 */	bge lbl_8023E034
/* 8023DFF4 00239C54  48 00 00 08 */	b lbl_8023DFFC
lbl_8023DFF8:
/* 8023DFF8 00239C58  3B E0 00 10 */	li r31, 0x10
lbl_8023DFFC:
/* 8023DFFC 00239C5C  38 00 00 04 */	li r0, 4
/* 8023E000 00239C60  98 1B 00 04 */	stb r0, 4(r27)
/* 8023E004 00239C64  48 00 00 38 */	b lbl_8023E03C
lbl_8023E008:
/* 8023E008 00239C68  3B E0 01 00 */	li r31, 0x100
lbl_8023E00C:
/* 8023E00C 00239C6C  38 00 00 08 */	li r0, 8
/* 8023E010 00239C70  98 1B 00 04 */	stb r0, 4(r27)
/* 8023E014 00239C74  48 00 00 28 */	b lbl_8023E03C
lbl_8023E018:
/* 8023E018 00239C78  3B E0 04 00 */	li r31, 0x400
lbl_8023E01C:
/* 8023E01C 00239C7C  38 00 00 10 */	li r0, 0x10
/* 8023E020 00239C80  98 1B 00 04 */	stb r0, 4(r27)
/* 8023E024 00239C84  48 00 00 18 */	b lbl_8023E03C
lbl_8023E028:
/* 8023E028 00239C88  38 00 00 20 */	li r0, 0x20
/* 8023E02C 00239C8C  98 1B 00 04 */	stb r0, 4(r27)
/* 8023E030 00239C90  48 00 00 0C */	b lbl_8023E03C
lbl_8023E034:
/* 8023E034 00239C94  38 60 00 00 */	li r3, 0
/* 8023E038 00239C98  48 00 02 80 */	b lbl_8023E2B8
lbl_8023E03C:
/* 8023E03C 00239C9C  3B DE 00 01 */	addi r30, r30, 1
/* 8023E040 00239CA0  38 E0 00 00 */	li r7, 0
/* 8023E044 00239CA4  57 C0 06 3E */	clrlwi r0, r30, 0x18
/* 8023E048 00239CA8  38 60 00 02 */	li r3, 2
/* 8023E04C 00239CAC  38 80 00 01 */	li r4, 1
/* 8023E050 00239CB0  9B DB 00 05 */	stb r30, 5(r27)
/* 8023E054 00239CB4  28 00 00 01 */	cmplwi r0, 1
/* 8023E058 00239CB8  98 9B 00 06 */	stb r4, 6(r27)
/* 8023E05C 00239CBC  93 5B 00 08 */	stw r26, 8(r27)
/* 8023E060 00239CC0  93 BB 00 0C */	stw r29, 0xc(r27)
/* 8023E064 00239CC4  90 FB 00 10 */	stw r7, 0x10(r27)
/* 8023E068 00239CC8  90 FB 00 14 */	stw r7, 0x14(r27)
/* 8023E06C 00239CCC  90 7B 00 18 */	stw r3, 0x18(r27)
/* 8023E070 00239CD0  90 7B 00 1C */	stw r3, 0x1c(r27)
/* 8023E074 00239CD4  40 81 00 08 */	ble lbl_8023E07C
/* 8023E078 00239CD8  7C 67 1B 78 */	mr r7, r3
lbl_8023E07C:
/* 8023E07C 00239CDC  7C 18 C9 D6 */	mullw r0, r24, r25
/* 8023E080 00239CE0  38 A0 00 00 */	li r5, 0
/* 8023E084 00239CE4  88 9B 00 04 */	lbz r4, 4(r27)
/* 8023E088 00239CE8  57 C6 06 3E */	clrlwi r6, r30, 0x18
/* 8023E08C 00239CEC  90 FB 00 20 */	stw r7, 0x20(r27)
/* 8023E090 00239CF0  38 60 00 00 */	li r3, 0
/* 8023E094 00239CF4  7C 84 01 D6 */	mullw r4, r4, r0
/* 8023E098 00239CF8  2C 86 00 00 */	cmpwi cr1, r6, 0
/* 8023E09C 00239CFC  90 BB 00 24 */	stw r5, 0x24(r27)
/* 8023E0A0 00239D00  93 9B 00 28 */	stw r28, 0x28(r27)
/* 8023E0A4 00239D04  90 BB 00 2C */	stw r5, 0x2c(r27)
/* 8023E0A8 00239D08  54 84 E8 FE */	srwi r4, r4, 3
/* 8023E0AC 00239D0C  90 BB 00 48 */	stw r5, 0x48(r27)
/* 8023E0B0 00239D10  90 BB 00 50 */	stw r5, 0x50(r27)
/* 8023E0B4 00239D14  90 BB 00 4C */	stw r5, 0x4c(r27)
/* 8023E0B8 00239D18  40 85 01 08 */	ble cr1, lbl_8023E1C0
/* 8023E0BC 00239D1C  2C 06 00 08 */	cmpwi r6, 8
/* 8023E0C0 00239D20  38 E6 FF F8 */	addi r7, r6, -8
/* 8023E0C4 00239D24  40 81 00 CC */	ble lbl_8023E190
/* 8023E0C8 00239D28  39 00 00 00 */	li r8, 0
/* 8023E0CC 00239D2C  41 84 00 18 */	blt cr1, lbl_8023E0E4
/* 8023E0D0 00239D30  3C A0 80 00 */	lis r5, 0x7FFFFFFE@ha
/* 8023E0D4 00239D34  38 A5 FF FE */	addi r5, r5, 0x7FFFFFFE@l
/* 8023E0D8 00239D38  7C 06 28 00 */	cmpw r6, r5
/* 8023E0DC 00239D3C  41 81 00 08 */	bgt lbl_8023E0E4
/* 8023E0E0 00239D40  39 00 00 01 */	li r8, 1
lbl_8023E0E4:
/* 8023E0E4 00239D44  2C 08 00 00 */	cmpwi r8, 0
/* 8023E0E8 00239D48  41 82 00 A8 */	beq lbl_8023E190
/* 8023E0EC 00239D4C  38 A7 00 07 */	addi r5, r7, 7
/* 8023E0F0 00239D50  54 A5 E8 FE */	srwi r5, r5, 3
/* 8023E0F4 00239D54  7C A9 03 A6 */	mtctr r5
/* 8023E0F8 00239D58  2C 07 00 00 */	cmpwi r7, 0
/* 8023E0FC 00239D5C  40 81 00 94 */	ble lbl_8023E190
lbl_8023E100:
/* 8023E100 00239D60  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023E104 00239D64  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E108 00239D68  38 A4 00 1F */	addi r5, r4, 0x1f
/* 8023E10C 00239D6C  81 3B 00 4C */	lwz r9, 0x4c(r27)
/* 8023E110 00239D70  54 C8 00 34 */	rlwinm r8, r6, 0, 0, 0x1a
/* 8023E114 00239D74  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E118 00239D78  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023E11C 00239D7C  54 A7 00 34 */	rlwinm r7, r5, 0, 0, 0x1a
/* 8023E120 00239D80  7D 29 42 14 */	add r9, r9, r8
/* 8023E124 00239D84  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E128 00239D88  38 A4 00 1F */	addi r5, r4, 0x1f
/* 8023E12C 00239D8C  54 C8 00 34 */	rlwinm r8, r6, 0, 0, 0x1a
/* 8023E130 00239D90  7D 29 3A 14 */	add r9, r9, r7
/* 8023E134 00239D94  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E138 00239D98  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023E13C 00239D9C  54 A7 00 34 */	rlwinm r7, r5, 0, 0, 0x1a
/* 8023E140 00239DA0  7D 29 42 14 */	add r9, r9, r8
/* 8023E144 00239DA4  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E148 00239DA8  38 A4 00 1F */	addi r5, r4, 0x1f
/* 8023E14C 00239DAC  54 C8 00 34 */	rlwinm r8, r6, 0, 0, 0x1a
/* 8023E150 00239DB0  7D 29 3A 14 */	add r9, r9, r7
/* 8023E154 00239DB4  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E158 00239DB8  38 C4 00 1F */	addi r6, r4, 0x1f
/* 8023E15C 00239DBC  54 A7 00 34 */	rlwinm r7, r5, 0, 0, 0x1a
/* 8023E160 00239DC0  7D 09 42 14 */	add r8, r9, r8
/* 8023E164 00239DC4  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E168 00239DC8  38 A4 00 1F */	addi r5, r4, 0x1f
/* 8023E16C 00239DCC  54 C6 00 34 */	rlwinm r6, r6, 0, 0, 0x1a
/* 8023E170 00239DD0  7C E8 3A 14 */	add r7, r8, r7
/* 8023E174 00239DD4  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E178 00239DD8  7C C7 32 14 */	add r6, r7, r6
/* 8023E17C 00239DDC  54 A5 00 34 */	rlwinm r5, r5, 0, 0, 0x1a
/* 8023E180 00239DE0  7C A6 2A 14 */	add r5, r6, r5
/* 8023E184 00239DE4  38 63 00 08 */	addi r3, r3, 8
/* 8023E188 00239DE8  90 BB 00 4C */	stw r5, 0x4c(r27)
/* 8023E18C 00239DEC  42 00 FF 74 */	bdnz lbl_8023E100
lbl_8023E190:
/* 8023E190 00239DF0  57 C6 06 3E */	clrlwi r6, r30, 0x18
/* 8023E194 00239DF4  7C A3 30 50 */	subf r5, r3, r6
/* 8023E198 00239DF8  7C A9 03 A6 */	mtctr r5
/* 8023E19C 00239DFC  7C 03 30 00 */	cmpw r3, r6
/* 8023E1A0 00239E00  40 80 00 20 */	bge lbl_8023E1C0
lbl_8023E1A4:
/* 8023E1A4 00239E04  38 64 00 1F */	addi r3, r4, 0x1f
/* 8023E1A8 00239E08  80 BB 00 4C */	lwz r5, 0x4c(r27)
/* 8023E1AC 00239E0C  54 63 00 34 */	rlwinm r3, r3, 0, 0, 0x1a
/* 8023E1B0 00239E10  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E1B4 00239E14  7C 65 1A 14 */	add r3, r5, r3
/* 8023E1B8 00239E18  90 7B 00 4C */	stw r3, 0x4c(r27)
/* 8023E1BC 00239E1C  42 00 FF E8 */	bdnz lbl_8023E1A4
lbl_8023E1C0:
/* 8023E1C0 00239E20  2C 1F 00 00 */	cmpwi r31, 0
/* 8023E1C4 00239E24  41 82 00 38 */	beq lbl_8023E1FC
/* 8023E1C8 00239E28  2C 1D 00 00 */	cmpwi r29, 0
/* 8023E1CC 00239E2C  41 82 00 28 */	beq lbl_8023E1F4
/* 8023E1D0 00239E30  41 80 00 24 */	blt lbl_8023E1F4
/* 8023E1D4 00239E34  2C 1D 00 04 */	cmpwi r29, 4
/* 8023E1D8 00239E38  40 80 00 1C */	bge lbl_8023E1F4
/* 8023E1DC 00239E3C  57 E3 20 36 */	slwi r3, r31, 4
/* 8023E1E0 00239E40  80 9B 00 4C */	lwz r4, 0x4c(r27)
/* 8023E1E4 00239E44  7C 63 1E 70 */	srawi r3, r3, 3
/* 8023E1E8 00239E48  7C 64 1A 14 */	add r3, r4, r3
/* 8023E1EC 00239E4C  90 7B 00 4C */	stw r3, 0x4c(r27)
/* 8023E1F0 00239E50  48 00 00 0C */	b lbl_8023E1FC
lbl_8023E1F4:
/* 8023E1F4 00239E54  38 60 00 00 */	li r3, 0
/* 8023E1F8 00239E58  48 00 00 C0 */	b lbl_8023E2B8
lbl_8023E1FC:
/* 8023E1FC 00239E5C  88 9B 00 04 */	lbz r4, 4(r27)
/* 8023E200 00239E60  38 60 00 07 */	li r3, 7
/* 8023E204 00239E64  38 BB 00 04 */	addi r5, r27, 4
/* 8023E208 00239E68  38 C0 00 01 */	li r6, 1
/* 8023E20C 00239E6C  7C 84 01 D6 */	mullw r4, r4, r0
/* 8023E210 00239E70  38 00 00 00 */	li r0, 0
/* 8023E214 00239E74  54 84 E8 FE */	srwi r4, r4, 3
/* 8023E218 00239E78  7C 69 03 A6 */	mtctr r3
lbl_8023E21C:
/* 8023E21C 00239E7C  88 7B 00 05 */	lbz r3, 5(r27)
/* 8023E220 00239E80  7C 06 18 00 */	cmpw r6, r3
/* 8023E224 00239E84  40 80 00 18 */	bge lbl_8023E23C
/* 8023E228 00239E88  80 65 00 24 */	lwz r3, 0x24(r5)
/* 8023E22C 00239E8C  7C 64 1A 14 */	add r3, r4, r3
/* 8023E230 00239E90  54 84 F0 BE */	srwi r4, r4, 2
/* 8023E234 00239E94  90 65 00 28 */	stw r3, 0x28(r5)
/* 8023E238 00239E98  48 00 00 08 */	b lbl_8023E240
lbl_8023E23C:
/* 8023E23C 00239E9C  90 05 00 28 */	stw r0, 0x28(r5)
lbl_8023E240:
/* 8023E240 00239EA0  38 A5 00 04 */	addi r5, r5, 4
/* 8023E244 00239EA4  38 C6 00 01 */	addi r6, r6, 1
/* 8023E248 00239EA8  42 00 FF D4 */	bdnz lbl_8023E21C
/* 8023E24C 00239EAC  2C 1D 00 04 */	cmpwi r29, 4
/* 8023E250 00239EB0  40 80 00 30 */	bge lbl_8023E280
/* 8023E254 00239EB4  2C 1D 00 01 */	cmpwi r29, 1
/* 8023E258 00239EB8  40 80 00 08 */	bge lbl_8023E260
/* 8023E25C 00239EBC  48 00 00 24 */	b lbl_8023E280
lbl_8023E260:
/* 8023E260 00239EC0  88 7B 00 05 */	lbz r3, 5(r27)
/* 8023E264 00239EC4  38 03 FF FF */	addi r0, r3, -1
/* 8023E268 00239EC8  54 00 10 3A */	slwi r0, r0, 2
/* 8023E26C 00239ECC  7C 7B 02 14 */	add r3, r27, r0
/* 8023E270 00239ED0  80 03 00 28 */	lwz r0, 0x28(r3)
/* 8023E274 00239ED4  7C 04 02 14 */	add r0, r4, r0
/* 8023E278 00239ED8  90 1B 00 48 */	stw r0, 0x48(r27)
/* 8023E27C 00239EDC  48 00 00 0C */	b lbl_8023E288
lbl_8023E280:
/* 8023E280 00239EE0  38 00 00 00 */	li r0, 0
/* 8023E284 00239EE4  90 1B 00 48 */	stw r0, 0x48(r27)
lbl_8023E288:
/* 8023E288 00239EE8  7F 63 DB 78 */	mr r3, r27
/* 8023E28C 00239EEC  4B FF F0 11 */	bl func_8023D29C
/* 8023E290 00239EF0  7F 63 DB 78 */	mr r3, r27
/* 8023E294 00239EF4  4B FF F1 8D */	bl func_8023D420
/* 8023E298 00239EF8  7F 63 DB 78 */	mr r3, r27
/* 8023E29C 00239EFC  4B FF F2 95 */	bl func_8023D530
/* 8023E2A0 00239F00  38 00 00 01 */	li r0, 1
/* 8023E2A4 00239F04  80 7B 00 28 */	lwz r3, 0x28(r27)
/* 8023E2A8 00239F08  98 1B 00 07 */	stb r0, 7(r27)
/* 8023E2AC 00239F0C  80 9B 00 4C */	lwz r4, 0x4c(r27)
/* 8023E2B0 00239F10  48 02 C3 D5 */	bl DCStoreRange
/* 8023E2B4 00239F14  38 60 00 01 */	li r3, 1
lbl_8023E2B8:
/* 8023E2B8 00239F18  39 61 00 30 */	addi r11, r1, 0x30
/* 8023E2BC 00239F1C  4B F8 8E AD */	bl _restgpr_24
/* 8023E2C0 00239F20  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8023E2C4 00239F24  7C 08 03 A6 */	mtlr r0
/* 8023E2C8 00239F28  38 21 00 30 */	addi r1, r1, 0x30
/* 8023E2CC 00239F2C  4E 80 00 20 */	blr

.global func_8023E2D0
func_8023E2D0:
/* 8023E2D0 00239F30  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E2D4 00239F34  7C 08 02 A6 */	mflr r0
/* 8023E2D8 00239F38  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E2DC 00239F3C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8023E2E0 00239F40  93 C1 00 08 */	stw r30, 8(r1)
/* 8023E2E4 00239F44  7C 7E 1B 78 */	mr r30, r3
/* 8023E2E8 00239F48  88 03 00 06 */	lbz r0, 6(r3)
/* 8023E2EC 00239F4C  2C 00 00 00 */	cmpwi r0, 0
/* 8023E2F0 00239F50  41 82 00 64 */	beq lbl_8023E354
/* 8023E2F4 00239F54  80 03 00 24 */	lwz r0, 0x24(r3)
/* 8023E2F8 00239F58  3B E0 00 00 */	li r31, 0
/* 8023E2FC 00239F5C  9B E3 00 06 */	stb r31, 6(r3)
/* 8023E300 00239F60  2C 00 00 00 */	cmpwi r0, 0
/* 8023E304 00239F64  41 82 00 50 */	beq lbl_8023E354
/* 8023E308 00239F68  80 83 00 50 */	lwz r4, 0x50(r3)
/* 8023E30C 00239F6C  2C 04 00 00 */	cmpwi r4, 0
/* 8023E310 00239F70  41 82 00 10 */	beq lbl_8023E320
/* 8023E314 00239F74  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8023E318 00239F78  4B FF D5 75 */	bl func_8023B88C
/* 8023E31C 00239F7C  93 FE 00 50 */	stw r31, 0x50(r30)
lbl_8023E320:
/* 8023E320 00239F80  88 1E 00 07 */	lbz r0, 7(r30)
/* 8023E324 00239F84  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8023E328 00239F88  41 82 00 14 */	beq lbl_8023E33C
/* 8023E32C 00239F8C  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8023E330 00239F90  80 9E 00 24 */	lwz r4, 0x24(r30)
/* 8023E334 00239F94  4B F9 CA 15 */	bl func_801DAD48
/* 8023E338 00239F98  48 00 00 10 */	b lbl_8023E348
lbl_8023E33C:
/* 8023E33C 00239F9C  80 6D 96 28 */	lwz r3, lbl_8063E8E8-_SDA_BASE_(r13)
/* 8023E340 00239FA0  80 9E 00 24 */	lwz r4, 0x24(r30)
/* 8023E344 00239FA4  4B F9 CA 05 */	bl func_801DAD48
lbl_8023E348:
/* 8023E348 00239FA8  38 00 00 00 */	li r0, 0
/* 8023E34C 00239FAC  90 1E 00 24 */	stw r0, 0x24(r30)
/* 8023E350 00239FB0  98 1E 00 07 */	stb r0, 7(r30)
lbl_8023E354:
/* 8023E354 00239FB4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E358 00239FB8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8023E35C 00239FBC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8023E360 00239FC0  7C 08 03 A6 */	mtlr r0
/* 8023E364 00239FC4  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E368 00239FC8  4E 80 00 20 */	blr

.global func_8023E36C
func_8023E36C:
/* 8023E36C 00239FCC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E370 00239FD0  7C 08 02 A6 */	mflr r0
/* 8023E374 00239FD4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E378 00239FD8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8023E37C 00239FDC  7C 7F 1B 78 */	mr r31, r3
/* 8023E380 00239FE0  80 03 00 10 */	lwz r0, 0x10(r3)
/* 8023E384 00239FE4  7C 00 20 00 */	cmpw r0, r4
/* 8023E388 00239FE8  40 82 00 10 */	bne lbl_8023E398
/* 8023E38C 00239FEC  80 03 00 14 */	lwz r0, 0x14(r3)
/* 8023E390 00239FF0  7C 00 28 00 */	cmpw r0, r5
/* 8023E394 00239FF4  41 82 00 20 */	beq lbl_8023E3B4
lbl_8023E398:
/* 8023E398 00239FF8  90 83 00 10 */	stw r4, 0x10(r3)
/* 8023E39C 00239FFC  90 A3 00 14 */	stw r5, 0x14(r3)
/* 8023E3A0 0023A000  7F E3 FB 78 */	mr r3, r31
/* 8023E3A4 0023A004  4B FF F0 7D */	bl func_8023D420
/* 8023E3A8 0023A008  88 1F 00 07 */	lbz r0, 7(r31)
/* 8023E3AC 0023A00C  60 00 00 01 */	ori r0, r0, 1
/* 8023E3B0 0023A010  98 1F 00 07 */	stb r0, 7(r31)
lbl_8023E3B4:
/* 8023E3B4 0023A014  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E3B8 0023A018  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8023E3BC 0023A01C  7C 08 03 A6 */	mtlr r0
/* 8023E3C0 0023A020  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E3C4 0023A024  4E 80 00 20 */	blr

.global func_8023E3C8
func_8023E3C8:
/* 8023E3C8 0023A028  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E3CC 0023A02C  7C 08 02 A6 */	mflr r0
/* 8023E3D0 0023A030  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E3D4 0023A034  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8023E3D8 0023A038  7C 7F 1B 78 */	mr r31, r3
/* 8023E3DC 0023A03C  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8023E3E0 0023A040  7C 00 20 00 */	cmpw r0, r4
/* 8023E3E4 0023A044  40 82 00 1C */	bne lbl_8023E400
/* 8023E3E8 0023A048  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 8023E3EC 0023A04C  7C 00 28 00 */	cmpw r0, r5
/* 8023E3F0 0023A050  40 82 00 10 */	bne lbl_8023E400
/* 8023E3F4 0023A054  80 03 00 20 */	lwz r0, 0x20(r3)
/* 8023E3F8 0023A058  7C 00 30 00 */	cmpw r0, r6
/* 8023E3FC 0023A05C  41 82 00 24 */	beq lbl_8023E420
lbl_8023E400:
/* 8023E400 0023A060  90 83 00 18 */	stw r4, 0x18(r3)
/* 8023E404 0023A064  90 A3 00 1C */	stw r5, 0x1c(r3)
/* 8023E408 0023A068  90 C3 00 20 */	stw r6, 0x20(r3)
/* 8023E40C 0023A06C  7F E3 FB 78 */	mr r3, r31
/* 8023E410 0023A070  4B FF F1 21 */	bl func_8023D530
/* 8023E414 0023A074  88 1F 00 07 */	lbz r0, 7(r31)
/* 8023E418 0023A078  60 00 00 01 */	ori r0, r0, 1
/* 8023E41C 0023A07C  98 1F 00 07 */	stb r0, 7(r31)
lbl_8023E420:
/* 8023E420 0023A080  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E424 0023A084  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8023E428 0023A088  7C 08 03 A6 */	mtlr r0
/* 8023E42C 0023A08C  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E430 0023A090  4E 80 00 20 */	blr

.global func_8023E434
func_8023E434:
/* 8023E434 0023A094  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E438 0023A098  7C 08 02 A6 */	mflr r0
/* 8023E43C 0023A09C  28 04 00 08 */	cmplwi r4, 8
/* 8023E440 0023A0A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E444 0023A0A4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8023E448 0023A0A8  7C 9F 23 78 */	mr r31, r4
/* 8023E44C 0023A0AC  93 C1 00 08 */	stw r30, 8(r1)
/* 8023E450 0023A0B0  7C 7E 1B 78 */	mr r30, r3
/* 8023E454 0023A0B4  41 80 00 0C */	blt lbl_8023E460
/* 8023E458 0023A0B8  38 60 00 00 */	li r3, 0
/* 8023E45C 0023A0BC  48 00 00 2C */	b lbl_8023E488
lbl_8023E460:
/* 8023E460 0023A0C0  80 83 00 50 */	lwz r4, 0x50(r3)
/* 8023E464 0023A0C4  2C 04 00 00 */	cmpwi r4, 0
/* 8023E468 0023A0C8  41 82 00 14 */	beq lbl_8023E47C
/* 8023E46C 0023A0CC  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8023E470 0023A0D0  4B FF D4 1D */	bl func_8023B88C
/* 8023E474 0023A0D4  38 00 00 00 */	li r0, 0
/* 8023E478 0023A0D8  90 1E 00 50 */	stw r0, 0x50(r30)
lbl_8023E47C:
/* 8023E47C 0023A0DC  57 E0 15 BA */	rlwinm r0, r31, 2, 0x16, 0x1d
/* 8023E480 0023A0E0  7C 7E 02 14 */	add r3, r30, r0
/* 8023E484 0023A0E4  80 63 00 28 */	lwz r3, 0x28(r3)
lbl_8023E488:
/* 8023E488 0023A0E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E48C 0023A0EC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8023E490 0023A0F0  83 C1 00 08 */	lwz r30, 8(r1)
/* 8023E494 0023A0F4  7C 08 03 A6 */	mtlr r0
/* 8023E498 0023A0F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E49C 0023A0FC  4E 80 00 20 */	blr

.global func_8023E4A0
func_8023E4A0:
/* 8023E4A0 0023A100  28 04 00 08 */	cmplwi r4, 8
/* 8023E4A4 0023A104  41 80 00 0C */	blt lbl_8023E4B0
/* 8023E4A8 0023A108  38 60 00 00 */	li r3, 0
/* 8023E4AC 0023A10C  4E 80 00 20 */	blr
lbl_8023E4B0:
/* 8023E4B0 0023A110  54 80 15 BA */	rlwinm r0, r4, 2, 0x16, 0x1d
/* 8023E4B4 0023A114  7C 63 02 14 */	add r3, r3, r0
/* 8023E4B8 0023A118  80 63 00 28 */	lwz r3, 0x28(r3)
/* 8023E4BC 0023A11C  4E 80 00 20 */	blr

.global func_8023E4C0
func_8023E4C0:
/* 8023E4C0 0023A120  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E4C4 0023A124  7C 08 02 A6 */	mflr r0
/* 8023E4C8 0023A128  7C 64 1B 78 */	mr r4, r3
/* 8023E4CC 0023A12C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E4D0 0023A130  80 63 00 28 */	lwz r3, 0x28(r3)
/* 8023E4D4 0023A134  80 84 00 4C */	lwz r4, 0x4c(r4)
/* 8023E4D8 0023A138  48 02 C1 AD */	bl DCStoreRange
/* 8023E4DC 0023A13C  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8023E4E0 0023A140  A0 03 16 FE */	lhz r0, 0x16fe(r3)
/* 8023E4E4 0023A144  60 00 00 02 */	ori r0, r0, 2
/* 8023E4E8 0023A148  B0 03 16 FE */	sth r0, 0x16fe(r3)
/* 8023E4EC 0023A14C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E4F0 0023A150  7C 08 03 A6 */	mtlr r0
/* 8023E4F4 0023A154  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E4F8 0023A158  4E 80 00 20 */	blr

.global func_8023E4FC
func_8023E4FC:
/* 8023E4FC 0023A15C  80 63 00 48 */	lwz r3, 0x48(r3)
/* 8023E500 0023A160  4E 80 00 20 */	blr

.global func_8023E504
func_8023E504:
/* 8023E504 0023A164  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E508 0023A168  7C 08 02 A6 */	mflr r0
/* 8023E50C 0023A16C  7C 64 1B 78 */	mr r4, r3
/* 8023E510 0023A170  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E514 0023A174  80 63 00 28 */	lwz r3, 0x28(r3)
/* 8023E518 0023A178  80 84 00 4C */	lwz r4, 0x4c(r4)
/* 8023E51C 0023A17C  48 02 C1 69 */	bl DCStoreRange
/* 8023E520 0023A180  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8023E524 0023A184  A0 03 16 FE */	lhz r0, 0x16fe(r3)
/* 8023E528 0023A188  60 00 00 02 */	ori r0, r0, 2
/* 8023E52C 0023A18C  B0 03 16 FE */	sth r0, 0x16fe(r3)
/* 8023E530 0023A190  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E534 0023A194  7C 08 03 A6 */	mtlr r0
/* 8023E538 0023A198  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E53C 0023A19C  4E 80 00 20 */	blr

.global func_8023E540
func_8023E540:
/* 8023E540 0023A1A0  A0 63 00 00 */	lhz r3, 0(r3)
/* 8023E544 0023A1A4  4E 80 00 20 */	blr

.global func_8023E548
func_8023E548:
/* 8023E548 0023A1A8  A0 63 00 02 */	lhz r3, 2(r3)
/* 8023E54C 0023A1AC  4E 80 00 20 */	blr

.global func_8023E550
func_8023E550:
/* 8023E550 0023A1B0  88 63 00 05 */	lbz r3, 5(r3)
/* 8023E554 0023A1B4  38 03 FF FF */	addi r0, r3, -1
/* 8023E558 0023A1B8  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 8023E55C 0023A1BC  4E 80 00 20 */	blr

.global func_8023E560
func_8023E560:
/* 8023E560 0023A1C0  80 03 00 08 */	lwz r0, 8(r3)
/* 8023E564 0023A1C4  7C 00 20 00 */	cmpw r0, r4
/* 8023E568 0023A1C8  40 82 00 0C */	bne lbl_8023E574
/* 8023E56C 0023A1CC  38 60 00 01 */	li r3, 1
/* 8023E570 0023A1D0  4E 80 00 20 */	blr
lbl_8023E574:
/* 8023E574 0023A1D4  2C 00 00 30 */	cmpwi r0, 0x30
/* 8023E578 0023A1D8  41 82 00 28 */	beq lbl_8023E5A0
/* 8023E57C 0023A1DC  40 80 00 18 */	bge lbl_8023E594
/* 8023E580 0023A1E0  2C 00 00 02 */	cmpwi r0, 2
/* 8023E584 0023A1E4  40 80 00 24 */	bge lbl_8023E5A8
/* 8023E588 0023A1E8  2C 00 00 00 */	cmpwi r0, 0
/* 8023E58C 0023A1EC  40 80 00 14 */	bge lbl_8023E5A0
/* 8023E590 0023A1F0  48 00 00 18 */	b lbl_8023E5A8
lbl_8023E594:
/* 8023E594 0023A1F4  2C 00 00 B0 */	cmpwi r0, 0xb0
/* 8023E598 0023A1F8  41 82 00 08 */	beq lbl_8023E5A0
/* 8023E59C 0023A1FC  48 00 00 0C */	b lbl_8023E5A8
lbl_8023E5A0:
/* 8023E5A0 0023A200  38 60 00 00 */	li r3, 0
/* 8023E5A4 0023A204  4E 80 00 20 */	blr
lbl_8023E5A8:
/* 8023E5A8 0023A208  2C 04 00 90 */	cmpwi r4, 0x90
/* 8023E5AC 0023A20C  41 82 00 AC */	beq lbl_8023E658
/* 8023E5B0 0023A210  40 80 00 48 */	bge lbl_8023E5F8
/* 8023E5B4 0023A214  2C 04 00 40 */	cmpwi r4, 0x40
/* 8023E5B8 0023A218  41 82 00 78 */	beq lbl_8023E630
/* 8023E5BC 0023A21C  40 80 00 24 */	bge lbl_8023E5E0
/* 8023E5C0 0023A220  2C 04 00 30 */	cmpwi r4, 0x30
/* 8023E5C4 0023A224  41 82 00 64 */	beq lbl_8023E628
/* 8023E5C8 0023A228  40 80 00 B8 */	bge lbl_8023E680
/* 8023E5CC 0023A22C  2C 04 00 02 */	cmpwi r4, 2
/* 8023E5D0 0023A230  40 80 00 B0 */	bge lbl_8023E680
/* 8023E5D4 0023A234  2C 04 00 00 */	cmpwi r4, 0
/* 8023E5D8 0023A238  40 80 00 50 */	bge lbl_8023E628
/* 8023E5DC 0023A23C  48 00 00 A4 */	b lbl_8023E680
lbl_8023E5E0:
/* 8023E5E0 0023A240  2C 04 00 45 */	cmpwi r4, 0x45
/* 8023E5E4 0023A244  41 82 00 88 */	beq lbl_8023E66C
/* 8023E5E8 0023A248  40 80 00 98 */	bge lbl_8023E680
/* 8023E5EC 0023A24C  2C 04 00 43 */	cmpwi r4, 0x43
/* 8023E5F0 0023A250  40 80 00 68 */	bge lbl_8023E658
/* 8023E5F4 0023A254  48 00 00 50 */	b lbl_8023E644
lbl_8023E5F8:
/* 8023E5F8 0023A258  2C 04 00 A8 */	cmpwi r4, 0xa8
/* 8023E5FC 0023A25C  41 82 00 34 */	beq lbl_8023E630
/* 8023E600 0023A260  40 80 00 1C */	bge lbl_8023E61C
/* 8023E604 0023A264  2C 04 00 A6 */	cmpwi r4, 0xa6
/* 8023E608 0023A268  41 82 00 50 */	beq lbl_8023E658
/* 8023E60C 0023A26C  40 80 00 60 */	bge lbl_8023E66C
/* 8023E610 0023A270  2C 04 00 A0 */	cmpwi r4, 0xa0
/* 8023E614 0023A274  40 80 00 30 */	bge lbl_8023E644
/* 8023E618 0023A278  48 00 00 68 */	b lbl_8023E680
lbl_8023E61C:
/* 8023E61C 0023A27C  2C 04 00 B0 */	cmpwi r4, 0xb0
/* 8023E620 0023A280  41 82 00 08 */	beq lbl_8023E628
/* 8023E624 0023A284  48 00 00 5C */	b lbl_8023E680
lbl_8023E628:
/* 8023E628 0023A288  38 60 00 00 */	li r3, 0
/* 8023E62C 0023A28C  4E 80 00 20 */	blr
lbl_8023E630:
/* 8023E630 0023A290  88 63 00 04 */	lbz r3, 4(r3)
/* 8023E634 0023A294  38 03 FF FC */	addi r0, r3, -4
/* 8023E638 0023A298  7C 00 00 34 */	cntlzw r0, r0
/* 8023E63C 0023A29C  54 03 D9 7E */	srwi r3, r0, 5
/* 8023E640 0023A2A0  4E 80 00 20 */	blr
lbl_8023E644:
/* 8023E644 0023A2A4  88 63 00 04 */	lbz r3, 4(r3)
/* 8023E648 0023A2A8  38 03 FF F8 */	addi r0, r3, -8
/* 8023E64C 0023A2AC  7C 00 00 34 */	cntlzw r0, r0
/* 8023E650 0023A2B0  54 03 D9 7E */	srwi r3, r0, 5
/* 8023E654 0023A2B4  4E 80 00 20 */	blr
lbl_8023E658:
/* 8023E658 0023A2B8  88 63 00 04 */	lbz r3, 4(r3)
/* 8023E65C 0023A2BC  38 03 FF F0 */	addi r0, r3, -16
/* 8023E660 0023A2C0  7C 00 00 34 */	cntlzw r0, r0
/* 8023E664 0023A2C4  54 03 D9 7E */	srwi r3, r0, 5
/* 8023E668 0023A2C8  4E 80 00 20 */	blr
lbl_8023E66C:
/* 8023E66C 0023A2CC  88 63 00 04 */	lbz r3, 4(r3)
/* 8023E670 0023A2D0  38 03 FF E0 */	addi r0, r3, -32
/* 8023E674 0023A2D4  7C 00 00 34 */	cntlzw r0, r0
/* 8023E678 0023A2D8  54 03 D9 7E */	srwi r3, r0, 5
/* 8023E67C 0023A2DC  4E 80 00 20 */	blr
lbl_8023E680:
/* 8023E680 0023A2E0  38 60 00 00 */	li r3, 0
/* 8023E684 0023A2E4  4E 80 00 20 */	blr

.global func_8023E688
func_8023E688:
/* 8023E688 0023A2E8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8023E68C 0023A2EC  7C 08 02 A6 */	mflr r0
/* 8023E690 0023A2F0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8023E694 0023A2F4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8023E698 0023A2F8  7C 9F 23 78 */	mr r31, r4
/* 8023E69C 0023A2FC  93 C1 00 08 */	stw r30, 8(r1)
/* 8023E6A0 0023A300  7C 7E 1B 78 */	mr r30, r3
/* 8023E6A4 0023A304  4B FF FE BD */	bl func_8023E560
/* 8023E6A8 0023A308  2C 03 00 00 */	cmpwi r3, 0
/* 8023E6AC 0023A30C  40 82 00 0C */	bne lbl_8023E6B8
/* 8023E6B0 0023A310  38 60 00 00 */	li r3, 0
/* 8023E6B4 0023A314  48 00 00 0C */	b lbl_8023E6C0
lbl_8023E6B8:
/* 8023E6B8 0023A318  93 FE 00 08 */	stw r31, 8(r30)
/* 8023E6BC 0023A31C  38 60 00 01 */	li r3, 1
lbl_8023E6C0:
/* 8023E6C0 0023A320  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8023E6C4 0023A324  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8023E6C8 0023A328  83 C1 00 08 */	lwz r30, 8(r1)
/* 8023E6CC 0023A32C  7C 08 03 A6 */	mtlr r0
/* 8023E6D0 0023A330  38 21 00 10 */	addi r1, r1, 0x10
/* 8023E6D4 0023A334  4E 80 00 20 */	blr

.global func_8023E6D8
func_8023E6D8:
/* 8023E6D8 0023A338  80 63 00 08 */	lwz r3, 8(r3)
/* 8023E6DC 0023A33C  4E 80 00 20 */	blr

.global func_8023E6E0
func_8023E6E0:
/* 8023E6E0 0023A340  80 63 00 0C */	lwz r3, 0xc(r3)
/* 8023E6E4 0023A344  4E 80 00 20 */	blr

.global func_8023E6E8
func_8023E6E8:
/* 8023E6E8 0023A348  80 63 00 08 */	lwz r3, 8(r3)
/* 8023E6EC 0023A34C  4B FF E9 9C */	b func_8023D088

.global func_8023E6F0
func_8023E6F0:
/* 8023E6F0 0023A350  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8023E6F4 0023A354  7C 08 02 A6 */	mflr r0
/* 8023E6F8 0023A358  90 01 00 24 */	stw r0, 0x24(r1)
/* 8023E6FC 0023A35C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8023E700 0023A360  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8023E704 0023A364  7C 7E 1B 78 */	mr r30, r3
/* 8023E708 0023A368  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8023E70C 0023A36C  93 81 00 10 */	stw r28, 0x10(r1)
/* 8023E710 0023A370  80 03 00 08 */	lwz r0, 8(r3)
/* 8023E714 0023A374  2C 00 00 44 */	cmpwi r0, 0x44
/* 8023E718 0023A378  41 82 00 0C */	beq lbl_8023E724
/* 8023E71C 0023A37C  2C 00 00 90 */	cmpwi r0, 0x90
/* 8023E720 0023A380  40 82 01 4C */	bne lbl_8023E86C
lbl_8023E724:
/* 8023E724 0023A384  A0 03 00 00 */	lhz r0, 0(r3)
/* 8023E728 0023A388  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8023E72C 0023A38C  40 82 01 40 */	bne lbl_8023E86C
/* 8023E730 0023A390  A0 03 00 02 */	lhz r0, 2(r3)
/* 8023E734 0023A394  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8023E738 0023A398  41 82 00 08 */	beq lbl_8023E740
/* 8023E73C 0023A39C  48 00 01 30 */	b lbl_8023E86C
lbl_8023E740:
/* 8023E740 0023A3A0  7F C3 F3 78 */	mr r3, r30
/* 8023E744 0023A3A4  38 80 00 00 */	li r4, 0
/* 8023E748 0023A3A8  4B FF FC ED */	bl func_8023E434
/* 8023E74C 0023A3AC  7C 7C 1B 78 */	mr r28, r3
/* 8023E750 0023A3B0  3B E0 00 00 */	li r31, 0
/* 8023E754 0023A3B4  3F A0 80 49 */	lis r29, 0x8049
/* 8023E758 0023A3B8  48 00 01 00 */	b lbl_8023E858
lbl_8023E75C:
/* 8023E75C 0023A3BC  A0 DE 00 00 */	lhz r6, 0(r30)
/* 8023E760 0023A3C0  38 BD 6B A0 */	addi r5, r29, 0x6ba0
/* 8023E764 0023A3C4  39 00 00 00 */	li r8, 0
/* 8023E768 0023A3C8  7C 1F 31 D6 */	mullw r0, r31, r6
/* 8023E76C 0023A3CC  54 00 08 3C */	slwi r0, r0, 1
/* 8023E770 0023A3D0  7C FC 02 14 */	add r7, r28, r0
/* 8023E774 0023A3D4  48 00 00 BC */	b lbl_8023E830
lbl_8023E778:
/* 8023E778 0023A3D8  A0 87 00 00 */	lhz r4, 0(r7)
/* 8023E77C 0023A3DC  38 65 00 08 */	addi r3, r5, 8
/* 8023E780 0023A3E0  39 08 00 04 */	addi r8, r8, 4
/* 8023E784 0023A3E4  B0 85 00 00 */	sth r4, 0(r5)
/* 8023E788 0023A3E8  A0 07 00 02 */	lhz r0, 2(r7)
/* 8023E78C 0023A3EC  B0 05 00 02 */	sth r0, 2(r5)
/* 8023E790 0023A3F0  A0 07 00 04 */	lhz r0, 4(r7)
/* 8023E794 0023A3F4  B0 05 00 04 */	sth r0, 4(r5)
/* 8023E798 0023A3F8  A0 07 00 06 */	lhz r0, 6(r7)
/* 8023E79C 0023A3FC  B0 05 00 06 */	sth r0, 6(r5)
/* 8023E7A0 0023A400  38 A5 00 08 */	addi r5, r5, 8
/* 8023E7A4 0023A404  A0 DE 00 00 */	lhz r6, 0(r30)
/* 8023E7A8 0023A408  A0 87 00 08 */	lhz r4, 8(r7)
/* 8023E7AC 0023A40C  54 C0 08 3C */	slwi r0, r6, 1
/* 8023E7B0 0023A410  7C 63 02 14 */	add r3, r3, r0
/* 8023E7B4 0023A414  B0 83 FF F8 */	sth r4, -8(r3)
/* 8023E7B8 0023A418  A0 07 00 0A */	lhz r0, 0xa(r7)
/* 8023E7BC 0023A41C  B0 03 FF FA */	sth r0, -6(r3)
/* 8023E7C0 0023A420  A0 07 00 0C */	lhz r0, 0xc(r7)
/* 8023E7C4 0023A424  B0 03 FF FC */	sth r0, -4(r3)
/* 8023E7C8 0023A428  A0 07 00 0E */	lhz r0, 0xe(r7)
/* 8023E7CC 0023A42C  B0 03 FF FE */	sth r0, -2(r3)
/* 8023E7D0 0023A430  A0 DE 00 00 */	lhz r6, 0(r30)
/* 8023E7D4 0023A434  A0 87 00 10 */	lhz r4, 0x10(r7)
/* 8023E7D8 0023A438  54 C0 08 3C */	slwi r0, r6, 1
/* 8023E7DC 0023A43C  7C 63 02 14 */	add r3, r3, r0
/* 8023E7E0 0023A440  B0 83 FF F8 */	sth r4, -8(r3)
/* 8023E7E4 0023A444  A0 07 00 12 */	lhz r0, 0x12(r7)
/* 8023E7E8 0023A448  B0 03 FF FA */	sth r0, -6(r3)
/* 8023E7EC 0023A44C  A0 07 00 14 */	lhz r0, 0x14(r7)
/* 8023E7F0 0023A450  B0 03 FF FC */	sth r0, -4(r3)
/* 8023E7F4 0023A454  A0 07 00 16 */	lhz r0, 0x16(r7)
/* 8023E7F8 0023A458  B0 03 FF FE */	sth r0, -2(r3)
/* 8023E7FC 0023A45C  A0 DE 00 00 */	lhz r6, 0(r30)
/* 8023E800 0023A460  A0 87 00 18 */	lhz r4, 0x18(r7)
/* 8023E804 0023A464  54 C0 08 3C */	slwi r0, r6, 1
/* 8023E808 0023A468  7C 63 02 14 */	add r3, r3, r0
/* 8023E80C 0023A46C  B0 83 FF F8 */	sth r4, -8(r3)
/* 8023E810 0023A470  A0 07 00 1A */	lhz r0, 0x1a(r7)
/* 8023E814 0023A474  B0 03 FF FA */	sth r0, -6(r3)
/* 8023E818 0023A478  A0 07 00 1C */	lhz r0, 0x1c(r7)
/* 8023E81C 0023A47C  B0 03 FF FC */	sth r0, -4(r3)
/* 8023E820 0023A480  A0 07 00 1E */	lhz r0, 0x1e(r7)
/* 8023E824 0023A484  38 E7 00 20 */	addi r7, r7, 0x20
/* 8023E828 0023A488  B0 03 FF FE */	sth r0, -2(r3)
/* 8023E82C 0023A48C  A0 DE 00 00 */	lhz r6, 0(r30)
lbl_8023E830:
/* 8023E830 0023A490  54 C0 04 3E */	clrlwi r0, r6, 0x10
/* 8023E834 0023A494  7C 08 00 00 */	cmpw r8, r0
/* 8023E838 0023A498  41 80 FF 40 */	blt lbl_8023E778
/* 8023E83C 0023A49C  7C 1F 31 D6 */	mullw r0, r31, r6
/* 8023E840 0023A4A0  38 9D 6B A0 */	addi r4, r29, 0x6ba0
/* 8023E844 0023A4A4  54 C5 1B 78 */	rlwinm r5, r6, 3, 0xd, 0x1c
/* 8023E848 0023A4A8  54 00 08 3C */	slwi r0, r0, 1
/* 8023E84C 0023A4AC  7C 7C 02 14 */	add r3, r28, r0
/* 8023E850 0023A4B0  4B DC 57 B1 */	bl memcpy
/* 8023E854 0023A4B4  3B FF 00 04 */	addi r31, r31, 4
lbl_8023E858:
/* 8023E858 0023A4B8  A0 1E 00 02 */	lhz r0, 2(r30)
/* 8023E85C 0023A4BC  7C 1F 00 00 */	cmpw r31, r0
/* 8023E860 0023A4C0  41 80 FE FC */	blt lbl_8023E75C
/* 8023E864 0023A4C4  7F C3 F3 78 */	mr r3, r30
/* 8023E868 0023A4C8  4B FF FC 59 */	bl func_8023E4C0
lbl_8023E86C:
/* 8023E86C 0023A4CC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8023E870 0023A4D0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8023E874 0023A4D4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8023E878 0023A4D8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8023E87C 0023A4DC  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8023E880 0023A4E0  7C 08 03 A6 */	mtlr r0
/* 8023E884 0023A4E4  38 21 00 20 */	addi r1, r1, 0x20
/* 8023E888 0023A4E8  4E 80 00 20 */	blr

.global func_8023E88C
func_8023E88C:
/* 8023E88C 0023A4EC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8023E890 0023A4F0  7C 08 02 A6 */	mflr r0
/* 8023E894 0023A4F4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8023E898 0023A4F8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8023E89C 0023A4FC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8023E8A0 0023A500  7C 7E 1B 78 */	mr r30, r3
/* 8023E8A4 0023A504  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8023E8A8 0023A508  93 81 00 10 */	stw r28, 0x10(r1)
/* 8023E8AC 0023A50C  80 03 00 08 */	lwz r0, 8(r3)
/* 8023E8B0 0023A510  2C 00 00 44 */	cmpwi r0, 0x44
/* 8023E8B4 0023A514  41 82 00 0C */	beq lbl_8023E8C0
/* 8023E8B8 0023A518  2C 00 00 90 */	cmpwi r0, 0x90
/* 8023E8BC 0023A51C  40 82 01 48 */	bne lbl_8023EA04
lbl_8023E8C0:
/* 8023E8C0 0023A520  A0 03 00 00 */	lhz r0, 0(r3)
/* 8023E8C4 0023A524  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8023E8C8 0023A528  40 82 01 3C */	bne lbl_8023EA04
/* 8023E8CC 0023A52C  A0 03 00 02 */	lhz r0, 2(r3)
/* 8023E8D0 0023A530  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8023E8D4 0023A534  41 82 00 08 */	beq lbl_8023E8DC
/* 8023E8D8 0023A538  48 00 01 2C */	b lbl_8023EA04
lbl_8023E8DC:
/* 8023E8DC 0023A53C  7F C3 F3 78 */	mr r3, r30
/* 8023E8E0 0023A540  38 80 00 00 */	li r4, 0
/* 8023E8E4 0023A544  4B FF FB 51 */	bl func_8023E434
/* 8023E8E8 0023A548  7C 7C 1B 78 */	mr r28, r3
/* 8023E8EC 0023A54C  3B E0 00 00 */	li r31, 0
/* 8023E8F0 0023A550  3F A0 80 49 */	lis r29, 0x8049
/* 8023E8F4 0023A554  48 00 00 FC */	b lbl_8023E9F0
lbl_8023E8F8:
/* 8023E8F8 0023A558  38 BD 6B A0 */	addi r5, r29, 0x6ba0
/* 8023E8FC 0023A55C  38 C0 00 00 */	li r6, 0
/* 8023E900 0023A560  38 80 00 00 */	li r4, 0
/* 8023E904 0023A564  48 00 00 C4 */	b lbl_8023E9C8
lbl_8023E908:
/* 8023E908 0023A568  7C 7F 19 D6 */	mullw r3, r31, r3
/* 8023E90C 0023A56C  7C 04 E2 14 */	add r0, r4, r28
/* 8023E910 0023A570  38 84 00 08 */	addi r4, r4, 8
/* 8023E914 0023A574  38 C6 00 04 */	addi r6, r6, 4
/* 8023E918 0023A578  54 63 08 3C */	slwi r3, r3, 1
/* 8023E91C 0023A57C  7C 03 02 6E */	lhzux r0, r3, r0
/* 8023E920 0023A580  B0 05 00 00 */	sth r0, 0(r5)
/* 8023E924 0023A584  A0 03 00 02 */	lhz r0, 2(r3)
/* 8023E928 0023A588  B0 05 00 02 */	sth r0, 2(r5)
/* 8023E92C 0023A58C  A0 03 00 04 */	lhz r0, 4(r3)
/* 8023E930 0023A590  B0 05 00 04 */	sth r0, 4(r5)
/* 8023E934 0023A594  A0 03 00 06 */	lhz r0, 6(r3)
/* 8023E938 0023A598  38 63 00 08 */	addi r3, r3, 8
/* 8023E93C 0023A59C  B0 05 00 06 */	sth r0, 6(r5)
/* 8023E940 0023A5A0  A0 1E 00 00 */	lhz r0, 0(r30)
/* 8023E944 0023A5A4  54 00 08 3C */	slwi r0, r0, 1
/* 8023E948 0023A5A8  7C 63 02 14 */	add r3, r3, r0
/* 8023E94C 0023A5AC  A0 03 FF F8 */	lhz r0, -8(r3)
/* 8023E950 0023A5B0  B0 05 00 08 */	sth r0, 8(r5)
/* 8023E954 0023A5B4  A0 03 FF FA */	lhz r0, -6(r3)
/* 8023E958 0023A5B8  B0 05 00 0A */	sth r0, 0xa(r5)
/* 8023E95C 0023A5BC  A0 03 FF FC */	lhz r0, -4(r3)
/* 8023E960 0023A5C0  B0 05 00 0C */	sth r0, 0xc(r5)
/* 8023E964 0023A5C4  A0 03 FF FE */	lhz r0, -2(r3)
/* 8023E968 0023A5C8  B0 05 00 0E */	sth r0, 0xe(r5)
/* 8023E96C 0023A5CC  A0 1E 00 00 */	lhz r0, 0(r30)
/* 8023E970 0023A5D0  54 00 08 3C */	slwi r0, r0, 1
/* 8023E974 0023A5D4  7C 63 02 14 */	add r3, r3, r0
/* 8023E978 0023A5D8  A0 03 FF F8 */	lhz r0, -8(r3)
/* 8023E97C 0023A5DC  B0 05 00 10 */	sth r0, 0x10(r5)
/* 8023E980 0023A5E0  A0 03 FF FA */	lhz r0, -6(r3)
/* 8023E984 0023A5E4  B0 05 00 12 */	sth r0, 0x12(r5)
/* 8023E988 0023A5E8  A0 03 FF FC */	lhz r0, -4(r3)
/* 8023E98C 0023A5EC  B0 05 00 14 */	sth r0, 0x14(r5)
/* 8023E990 0023A5F0  A0 03 FF FE */	lhz r0, -2(r3)
/* 8023E994 0023A5F4  B0 05 00 16 */	sth r0, 0x16(r5)
/* 8023E998 0023A5F8  A0 1E 00 00 */	lhz r0, 0(r30)
/* 8023E99C 0023A5FC  54 00 08 3C */	slwi r0, r0, 1
/* 8023E9A0 0023A600  7C 63 02 14 */	add r3, r3, r0
/* 8023E9A4 0023A604  A0 03 FF F8 */	lhz r0, -8(r3)
/* 8023E9A8 0023A608  B0 05 00 18 */	sth r0, 0x18(r5)
/* 8023E9AC 0023A60C  A0 03 FF FA */	lhz r0, -6(r3)
/* 8023E9B0 0023A610  B0 05 00 1A */	sth r0, 0x1a(r5)
/* 8023E9B4 0023A614  A0 03 FF FC */	lhz r0, -4(r3)
/* 8023E9B8 0023A618  B0 05 00 1C */	sth r0, 0x1c(r5)
/* 8023E9BC 0023A61C  A0 03 FF FE */	lhz r0, -2(r3)
/* 8023E9C0 0023A620  B0 05 00 1E */	sth r0, 0x1e(r5)
/* 8023E9C4 0023A624  38 A5 00 20 */	addi r5, r5, 0x20
lbl_8023E9C8:
/* 8023E9C8 0023A628  A0 7E 00 00 */	lhz r3, 0(r30)
/* 8023E9CC 0023A62C  7C 06 18 00 */	cmpw r6, r3
/* 8023E9D0 0023A630  41 80 FF 38 */	blt lbl_8023E908
/* 8023E9D4 0023A634  7C 1F 19 D6 */	mullw r0, r31, r3
/* 8023E9D8 0023A638  38 9D 6B A0 */	addi r4, r29, 0x6ba0
/* 8023E9DC 0023A63C  54 65 1B 78 */	rlwinm r5, r3, 3, 0xd, 0x1c
/* 8023E9E0 0023A640  54 00 08 3C */	slwi r0, r0, 1
/* 8023E9E4 0023A644  7C 7C 02 14 */	add r3, r28, r0
/* 8023E9E8 0023A648  4B DC 56 19 */	bl memcpy
/* 8023E9EC 0023A64C  3B FF 00 04 */	addi r31, r31, 4
lbl_8023E9F0:
/* 8023E9F0 0023A650  A0 1E 00 02 */	lhz r0, 2(r30)
/* 8023E9F4 0023A654  7C 1F 00 00 */	cmpw r31, r0
/* 8023E9F8 0023A658  41 80 FF 00 */	blt lbl_8023E8F8
/* 8023E9FC 0023A65C  7F C3 F3 78 */	mr r3, r30
/* 8023EA00 0023A660  4B FF FA C1 */	bl func_8023E4C0
lbl_8023EA04:
/* 8023EA04 0023A664  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8023EA08 0023A668  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8023EA0C 0023A66C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8023EA10 0023A670  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8023EA14 0023A674  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8023EA18 0023A678  7C 08 03 A6 */	mtlr r0
/* 8023EA1C 0023A67C  38 21 00 20 */	addi r1, r1, 0x20
/* 8023EA20 0023A680  4E 80 00 20 */	blr

.global func_8023EA24
func_8023EA24:
/* 8023EA24 0023A684  38 A0 00 01 */	li r5, 1
/* 8023EA28 0023A688  38 6D A4 A0 */	addi r3, r13, lbl_8063F760-_SDA_BASE_
/* 8023EA2C 0023A68C  38 80 00 04 */	li r4, 4
/* 8023EA30 0023A690  38 00 00 00 */	li r0, 0
/* 8023EA34 0023A694  98 AD A4 A0 */	stb r5, lbl_8063F760-_SDA_BASE_(r13)
/* 8023EA38 0023A698  B0 83 00 02 */	sth r4, 2(r3)
/* 8023EA3C 0023A69C  98 03 00 04 */	stb r0, 4(r3)
/* 8023EA40 0023A6A0  4E 80 00 20 */	blr