1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8016A25C
func_8016A25C:
/* 8016A25C 00165EBC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016A260 00165EC0 7C 08 02 A6 */ mflr r0
/* 8016A264 00165EC4 38 60 00 00 */ li r3, 0
/* 8016A268 00165EC8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016A26C 00165ECC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016A270 00165ED0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8016A274 00165ED4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016A278 00165ED8 48 24 25 A9 */ bl func_803AC820
/* 8016A27C 00165EDC 38 00 00 00 */ li r0, 0
/* 8016A280 00165EE0 38 60 00 08 */ li r3, 8
/* 8016A284 00165EE4 90 0D 9E A8 */ stw r0, lbl_8063F168-_SDA_BASE_(r13)
/* 8016A288 00165EE8 48 07 07 A9 */ bl __nw__FUl
/* 8016A28C 00165EEC 2C 03 00 00 */ cmpwi r3, 0
/* 8016A290 00165EF0 41 82 00 08 */ beq lbl_8016A298
/* 8016A294 00165EF4 48 00 C8 89 */ bl func_80176B1C
lbl_8016A298:
/* 8016A298 00165EF8 38 00 00 00 */ li r0, 0
/* 8016A29C 00165EFC 90 6D 9E AC */ stw r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016A2A0 00165F00 90 0D 9E B4 */ stw r0, lbl_8063F174-_SDA_BASE_(r13)
/* 8016A2A4 00165F04 4B FB 26 D1 */ bl func_8011C974
/* 8016A2A8 00165F08 7C 7F 1B 78 */ mr r31, r3
/* 8016A2AC 00165F0C 38 60 00 39 */ li r3, 0x39
/* 8016A2B0 00165F10 4B FF 87 E1 */ bl func_80162A90
/* 8016A2B4 00165F14 2C 03 00 00 */ cmpwi r3, 0
/* 8016A2B8 00165F18 40 82 00 20 */ bne lbl_8016A2D8
/* 8016A2BC 00165F1C 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 8016A2C0 00165F20 28 00 03 F1 */ cmplwi r0, 0x3f1
/* 8016A2C4 00165F24 40 82 00 0C */ bne lbl_8016A2D0
/* 8016A2C8 00165F28 3B A0 00 02 */ li r29, 2
/* 8016A2CC 00165F2C 48 00 01 34 */ b lbl_8016A400
lbl_8016A2D0:
/* 8016A2D0 00165F30 3B A0 00 00 */ li r29, 0
/* 8016A2D4 00165F34 48 00 01 2C */ b lbl_8016A400
lbl_8016A2D8:
/* 8016A2D8 00165F38 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 8016A2DC 00165F3C 38 03 FC 18 */ addi r0, r3, -1000
/* 8016A2E0 00165F40 28 00 00 09 */ cmplwi r0, 9
/* 8016A2E4 00165F44 41 81 01 18 */ bgt lbl_8016A3FC
/* 8016A2E8 00165F48 3C 60 80 42 */ lis r3, lbl_8041F7F8@ha
/* 8016A2EC 00165F4C 54 00 10 3A */ slwi r0, r0, 2
/* 8016A2F0 00165F50 38 63 F7 F8 */ addi r3, r3, lbl_8041F7F8@l
/* 8016A2F4 00165F54 7C 63 00 2E */ lwzx r3, r3, r0
/* 8016A2F8 00165F58 7C 69 03 A6 */ mtctr r3
/* 8016A2FC 00165F5C 4E 80 04 20 */ bctr
/* 8016A300 00165F60 38 60 00 3E */ li r3, 0x3e
/* 8016A304 00165F64 4B FF 87 8D */ bl func_80162A90
/* 8016A308 00165F68 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A30C 00165F6C 48 00 00 F4 */ b lbl_8016A400
/* 8016A310 00165F70 38 60 00 40 */ li r3, 0x40
/* 8016A314 00165F74 4B FF 87 7D */ bl func_80162A90
/* 8016A318 00165F78 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A31C 00165F7C 48 00 00 E4 */ b lbl_8016A400
/* 8016A320 00165F80 38 60 00 42 */ li r3, 0x42
/* 8016A324 00165F84 4B FF 87 6D */ bl func_80162A90
/* 8016A328 00165F88 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A32C 00165F8C 48 00 00 D4 */ b lbl_8016A400
/* 8016A330 00165F90 38 60 00 44 */ li r3, 0x44
/* 8016A334 00165F94 4B FF 87 5D */ bl func_80162A90
/* 8016A338 00165F98 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A33C 00165F9C 48 00 00 C4 */ b lbl_8016A400
/* 8016A340 00165FA0 38 60 00 46 */ li r3, 0x46
/* 8016A344 00165FA4 4B FF 87 4D */ bl func_80162A90
/* 8016A348 00165FA8 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A34C 00165FAC 48 00 00 B4 */ b lbl_8016A400
/* 8016A350 00165FB0 38 60 00 48 */ li r3, 0x48
/* 8016A354 00165FB4 4B FF 87 3D */ bl func_80162A90
/* 8016A358 00165FB8 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A35C 00165FBC 48 00 00 A4 */ b lbl_8016A400
/* 8016A360 00165FC0 38 60 00 4B */ li r3, 0x4b
/* 8016A364 00165FC4 4B FF 87 2D */ bl func_80162A90
/* 8016A368 00165FC8 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A36C 00165FCC 48 00 00 94 */ b lbl_8016A400
/* 8016A370 00165FD0 38 60 00 4D */ li r3, 0x4d
/* 8016A374 00165FD4 4B FF 87 1D */ bl func_80162A90
/* 8016A378 00165FD8 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A37C 00165FDC 48 00 00 84 */ b lbl_8016A400
/* 8016A380 00165FE0 38 60 00 4F */ li r3, 0x4f
/* 8016A384 00165FE4 4B FF 87 0D */ bl func_80162A90
/* 8016A388 00165FE8 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 8016A38C 00165FEC 48 00 00 74 */ b lbl_8016A400
/* 8016A390 00165FF0 38 60 02 49 */ li r3, 0x249
/* 8016A394 00165FF4 4B FF 86 FD */ bl func_80162A90
/* 8016A398 00165FF8 2C 03 00 05 */ cmpwi r3, 5
/* 8016A39C 00165FFC 40 80 00 1C */ bge lbl_8016A3B8
/* 8016A3A0 00166000 2C 03 00 00 */ cmpwi r3, 0
/* 8016A3A4 00166004 41 82 00 28 */ beq lbl_8016A3CC
/* 8016A3A8 00166008 41 80 00 4C */ blt lbl_8016A3F4
/* 8016A3AC 0016600C 2C 03 00 03 */ cmpwi r3, 3
/* 8016A3B0 00166010 40 80 00 2C */ bge lbl_8016A3DC
/* 8016A3B4 00166014 48 00 00 20 */ b lbl_8016A3D4
lbl_8016A3B8:
/* 8016A3B8 00166018 2C 03 00 09 */ cmpwi r3, 9
/* 8016A3BC 0016601C 40 80 00 38 */ bge lbl_8016A3F4
/* 8016A3C0 00166020 2C 03 00 07 */ cmpwi r3, 7
/* 8016A3C4 00166024 40 80 00 28 */ bge lbl_8016A3EC
/* 8016A3C8 00166028 48 00 00 1C */ b lbl_8016A3E4
lbl_8016A3CC:
/* 8016A3CC 0016602C 3B A0 00 03 */ li r29, 3
/* 8016A3D0 00166030 48 00 00 30 */ b lbl_8016A400
lbl_8016A3D4:
/* 8016A3D4 00166034 3B A0 00 04 */ li r29, 4
/* 8016A3D8 00166038 48 00 00 28 */ b lbl_8016A400
lbl_8016A3DC:
/* 8016A3DC 0016603C 3B A0 00 05 */ li r29, 5
/* 8016A3E0 00166040 48 00 00 20 */ b lbl_8016A400
lbl_8016A3E4:
/* 8016A3E4 00166044 3B A0 00 06 */ li r29, 6
/* 8016A3E8 00166048 48 00 00 18 */ b lbl_8016A400
lbl_8016A3EC:
/* 8016A3EC 0016604C 3B A0 00 07 */ li r29, 7
/* 8016A3F0 00166050 48 00 00 10 */ b lbl_8016A400
lbl_8016A3F4:
/* 8016A3F4 00166054 3B A0 00 07 */ li r29, 7
/* 8016A3F8 00166058 48 00 00 08 */ b lbl_8016A400
lbl_8016A3FC:
/* 8016A3FC 0016605C 3B A0 00 00 */ li r29, 0
lbl_8016A400:
/* 8016A400 00166060 28 1D 00 07 */ cmplwi r29, 7
/* 8016A404 00166064 40 81 00 08 */ ble lbl_8016A40C
/* 8016A408 00166068 3B A0 00 07 */ li r29, 7
lbl_8016A40C:
/* 8016A40C 0016606C 80 1F 00 08 */ lwz r0, 8(r31)
/* 8016A410 00166070 2C 00 00 01 */ cmpwi r0, 1
/* 8016A414 00166074 41 82 00 0C */ beq lbl_8016A420
/* 8016A418 00166078 2C 00 00 04 */ cmpwi r0, 4
/* 8016A41C 0016607C 40 82 00 0C */ bne lbl_8016A428
lbl_8016A420:
/* 8016A420 00166080 3B C0 00 01 */ li r30, 1
/* 8016A424 00166084 48 00 00 08 */ b lbl_8016A42C
lbl_8016A428:
/* 8016A428 00166088 3B C0 00 00 */ li r30, 0
lbl_8016A42C:
/* 8016A42C 0016608C 38 60 00 C8 */ li r3, 0xc8
/* 8016A430 00166090 48 0D F1 AD */ bl func_802495DC
/* 8016A434 00166094 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8016A438 00166098 2C 00 00 01 */ cmpwi r0, 1
/* 8016A43C 0016609C 40 82 00 10 */ bne lbl_8016A44C
/* 8016A440 001660A0 3C 60 27 4C */ lis r3, 0x274C2E00@ha
/* 8016A444 001660A4 38 63 2E 00 */ addi r3, r3, 0x274C2E00@l
/* 8016A448 001660A8 48 00 00 58 */ b lbl_8016A4A0
lbl_8016A44C:
/* 8016A44C 001660AC 2C 00 00 00 */ cmpwi r0, 0
/* 8016A450 001660B0 40 82 00 38 */ bne lbl_8016A488
/* 8016A454 001660B4 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 8016A458 001660B8 88 9F 01 25 */ lbz r4, 0x125(r31)
/* 8016A45C 001660BC 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 8016A460 001660C0 38 63 00 60 */ addi r3, r3, 0x60
/* 8016A464 001660C4 48 22 DE 21 */ bl func_80398284
/* 8016A468 001660C8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8016A46C 001660CC 41 82 00 1C */ beq lbl_8016A488
/* 8016A470 001660D0 80 1F 00 00 */ lwz r0, 0(r31)
/* 8016A474 001660D4 54 00 2F FF */ rlwinm. r0, r0, 5, 0x1f, 0x1f
/* 8016A478 001660D8 40 82 00 10 */ bne lbl_8016A488
/* 8016A47C 001660DC 3C 60 27 4C */ lis r3, 0x274C2E00@ha
/* 8016A480 001660E0 38 63 2E 00 */ addi r3, r3, 0x274C2E00@l
/* 8016A484 001660E4 48 00 00 1C */ b lbl_8016A4A0
lbl_8016A488:
/* 8016A488 001660E8 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 8016A48C 001660EC 88 9F 01 25 */ lbz r4, 0x125(r31)
/* 8016A490 001660F0 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 8016A494 001660F4 88 BF 01 26 */ lbz r5, 0x126(r31)
/* 8016A498 001660F8 38 63 00 60 */ addi r3, r3, 0x60
/* 8016A49C 001660FC 48 22 DD 39 */ bl func_803981D4
lbl_8016A4A0:
/* 8016A4A0 00166100 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8016A4A4 00166104 2C 00 00 01 */ cmpwi r0, 1
/* 8016A4A8 00166108 40 82 00 24 */ bne lbl_8016A4CC
/* 8016A4AC 0016610C 2C 1E 00 00 */ cmpwi r30, 0
/* 8016A4B0 00166110 40 82 00 10 */ bne lbl_8016A4C0
/* 8016A4B4 00166114 38 1D 00 08 */ addi r0, r29, 8
/* 8016A4B8 00166118 54 1E 04 3E */ clrlwi r30, r0, 0x10
/* 8016A4BC 0016611C 48 00 00 1C */ b lbl_8016A4D8
lbl_8016A4C0:
/* 8016A4C0 00166120 38 1D 00 28 */ addi r0, r29, 0x28
/* 8016A4C4 00166124 54 1E 04 3E */ clrlwi r30, r0, 0x10
/* 8016A4C8 00166128 48 00 00 10 */ b lbl_8016A4D8
lbl_8016A4CC:
/* 8016A4CC 0016612C 57 C0 0D FC */ rlwinm r0, r30, 1, 0x17, 0x1e
/* 8016A4D0 00166130 7C 9F 02 14 */ add r4, r31, r0
/* 8016A4D4 00166134 A3 C4 01 18 */ lhz r30, 0x118(r4)
lbl_8016A4D8:
/* 8016A4D8 00166138 7C 64 1B 78 */ mr r4, r3
/* 8016A4DC 0016613C 38 60 00 C8 */ li r3, 0xc8
/* 8016A4E0 00166140 48 07 0F DD */ bl func_801DB4BC
/* 8016A4E4 00166144 2C 03 00 00 */ cmpwi r3, 0
/* 8016A4E8 00166148 7C 64 1B 78 */ mr r4, r3
/* 8016A4EC 0016614C 41 82 00 44 */ beq lbl_8016A530
/* 8016A4F0 00166150 80 03 00 08 */ lwz r0, 8(r3)
/* 8016A4F4 00166154 2C 00 00 00 */ cmpwi r0, 0
/* 8016A4F8 00166158 41 82 00 38 */ beq lbl_8016A530
/* 8016A4FC 0016615C 7C 00 F0 40 */ cmplw r0, r30
/* 8016A500 00166160 41 80 00 30 */ blt lbl_8016A530
/* 8016A504 00166164 1C 1E 00 24 */ mulli r0, r30, 0x24
/* 8016A508 00166168 3F C0 80 49 */ lis r30, lbl_8048CD90@ha
/* 8016A50C 0016616C 38 A0 00 24 */ li r5, 0x24
/* 8016A510 00166170 38 7E CD 90 */ addi r3, r30, lbl_8048CD90@l
/* 8016A514 00166174 7C 84 02 14 */ add r4, r4, r0
/* 8016A518 00166178 38 84 00 10 */ addi r4, r4, 0x10
/* 8016A51C 0016617C 4B E9 9A E5 */ bl memcpy
/* 8016A520 00166180 80 1E CD 90 */ lwz r0, -0x3270(r30)
/* 8016A524 00166184 64 00 80 00 */ oris r0, r0, 0x8000
/* 8016A528 00166188 90 1E CD 90 */ stw r0, -0x3270(r30)
/* 8016A52C 0016618C 48 00 00 24 */ b lbl_8016A550
lbl_8016A530:
/* 8016A530 00166190 3F C0 80 49 */ lis r30, lbl_8048CD90@ha
/* 8016A534 00166194 38 80 00 00 */ li r4, 0
/* 8016A538 00166198 38 7E CD 90 */ addi r3, r30, lbl_8048CD90@l
/* 8016A53C 0016619C 38 A0 00 24 */ li r5, 0x24
/* 8016A540 001661A0 4B E9 9B C5 */ bl memset
/* 8016A544 001661A4 80 1E CD 90 */ lwz r0, -0x3270(r30)
/* 8016A548 001661A8 64 00 80 00 */ oris r0, r0, 0x8000
/* 8016A54C 001661AC 90 1E CD 90 */ stw r0, -0x3270(r30)
lbl_8016A550:
/* 8016A550 001661B0 38 60 00 C8 */ li r3, 0xc8
/* 8016A554 001661B4 48 07 11 21 */ bl func_801DB674
/* 8016A558 001661B8 38 60 00 C8 */ li r3, 0xc8
/* 8016A55C 001661BC 48 0D F3 35 */ bl func_80249890
/* 8016A560 001661C0 48 26 F7 BD */ bl func_803D9D1C
/* 8016A564 001661C4 90 6D 9E C8 */ stw r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A568 001661C8 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016A56C 001661CC 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016A570 001661D0 38 80 00 00 */ li r4, 0
/* 8016A574 001661D4 38 A0 00 24 */ li r5, 0x24
/* 8016A578 001661D8 4B E9 9B 8D */ bl memset
/* 8016A57C 001661DC 38 60 00 88 */ li r3, 0x88
/* 8016A580 001661E0 48 07 04 B1 */ bl __nw__FUl
/* 8016A584 001661E4 2C 03 00 00 */ cmpwi r3, 0
/* 8016A588 001661E8 41 82 00 08 */ beq lbl_8016A590
/* 8016A58C 001661EC 48 00 3E FD */ bl func_8016E488
lbl_8016A590:
/* 8016A590 001661F0 90 6D 9F 08 */ stw r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016A594 001661F4 48 00 4C 9D */ bl func_8016F230
/* 8016A598 001661F8 4B EC B8 05 */ bl func_80035D9C
/* 8016A59C 001661FC 38 80 00 04 */ li r4, 4
/* 8016A5A0 00166200 4B EC B8 A1 */ bl func_80035E40
/* 8016A5A4 00166204 48 00 54 8D */ bl func_8016FA30
/* 8016A5A8 00166208 38 00 00 01 */ li r0, 1
/* 8016A5AC 0016620C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016A5B0 00166210 98 0D 9E C4 */ stb r0, lbl_8063F184-_SDA_BASE_(r13)
/* 8016A5B4 00166214 38 80 00 01 */ li r4, 1
/* 8016A5B8 00166218 48 00 C5 5D */ bl func_80176B14
/* 8016A5BC 0016621C 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A5C0 00166220 54 60 03 5A */ rlwinm r0, r3, 0, 0xd, 0xd
/* 8016A5C4 00166224 50 60 04 A5 */ rlwimi. r0, r3, 0, 0x12, 0x12
/* 8016A5C8 00166228 41 82 00 08 */ beq lbl_8016A5D0
/* 8016A5CC 0016622C 48 01 0F 01 */ bl func_8017B4CC
lbl_8016A5D0:
/* 8016A5D0 00166230 38 80 00 00 */ li r4, 0
/* 8016A5D4 00166234 38 00 00 00 */ li r0, 0
/* 8016A5D8 00166238 90 8D 9E CC */ stw r4, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016A5DC 0016623C 90 8D 9E D0 */ stw r4, lbl_8063F190-_SDA_BASE_(r13)
/* 8016A5E0 00166240 90 8D 9E DC */ stw r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A5E4 00166244 90 8D 9E E4 */ stw r4, lbl_8063F1A4-_SDA_BASE_(r13)
/* 8016A5E8 00166248 90 8D 9E E8 */ stw r4, lbl_8063F1A8-_SDA_BASE_(r13)
/* 8016A5EC 0016624C 90 8D 9E EC */ stw r4, lbl_8063F1AC-_SDA_BASE_(r13)
/* 8016A5F0 00166250 90 8D 9E F4 */ stw r4, lbl_8063F1B4-_SDA_BASE_(r13)
/* 8016A5F4 00166254 90 8D 9E F8 */ stw r4, lbl_8063F1B8-_SDA_BASE_(r13)
/* 8016A5F8 00166258 90 8D 9E FC */ stw r4, lbl_8063F1BC-_SDA_BASE_(r13)
/* 8016A5FC 0016625C A0 7F 00 92 */ lhz r3, 0x92(r31)
/* 8016A600 00166260 2C 03 00 00 */ cmpwi r3, 0
/* 8016A604 00166264 41 82 00 0C */ beq lbl_8016A610
/* 8016A608 00166268 60 80 00 01 */ ori r0, r4, 1
/* 8016A60C 0016626C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016A610:
/* 8016A610 00166270 A0 7F 00 94 */ lhz r3, 0x94(r31)
/* 8016A614 00166274 2C 03 00 00 */ cmpwi r3, 0
/* 8016A618 00166278 41 82 00 0C */ beq lbl_8016A624
/* 8016A61C 0016627C 60 00 00 04 */ ori r0, r0, 4
/* 8016A620 00166280 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016A624:
/* 8016A624 00166284 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016A628 00166288 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8016A62C 0016628C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016A630 00166290 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016A634 00166294 7C 08 03 A6 */ mtlr r0
/* 8016A638 00166298 38 21 00 20 */ addi r1, r1, 0x20
/* 8016A63C 0016629C 4E 80 00 20 */ blr
.global func_8016A640
func_8016A640:
/* 8016A640 001662A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016A644 001662A4 7C 08 02 A6 */ mflr r0
/* 8016A648 001662A8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016A64C 001662AC 48 24 1F A5 */ bl func_803AC5F0
/* 8016A650 001662B0 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A654 001662B4 54 60 03 5A */ rlwinm r0, r3, 0, 0xd, 0xd
/* 8016A658 001662B8 50 60 04 A5 */ rlwimi. r0, r3, 0, 0x12, 0x12
/* 8016A65C 001662BC 41 82 00 08 */ beq lbl_8016A664
/* 8016A660 001662C0 48 01 0E B9 */ bl func_8017B518
lbl_8016A664:
/* 8016A664 001662C4 48 00 4C B1 */ bl func_8016F314
/* 8016A668 001662C8 48 26 F7 15 */ bl func_803D9D7C
/* 8016A66C 001662CC 4B ED AF 25 */ bl func_80045590
/* 8016A670 001662D0 2C 03 00 00 */ cmpwi r3, 0
/* 8016A674 001662D4 41 82 00 08 */ beq lbl_8016A67C
/* 8016A678 001662D8 4B ED B0 45 */ bl func_800456BC
lbl_8016A67C:
/* 8016A67C 001662DC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016A680 001662E0 2C 03 00 00 */ cmpwi r3, 0
/* 8016A684 001662E4 41 82 00 14 */ beq lbl_8016A698
/* 8016A688 001662E8 38 80 00 01 */ li r4, 1
/* 8016A68C 001662EC 48 00 C4 A9 */ bl func_80176B34
/* 8016A690 001662F0 38 00 00 00 */ li r0, 0
/* 8016A694 001662F4 90 0D 9E AC */ stw r0, lbl_8063F16C-_SDA_BASE_(r13)
lbl_8016A698:
/* 8016A698 001662F8 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016A69C 001662FC 2C 03 00 00 */ cmpwi r3, 0
/* 8016A6A0 00166300 41 82 00 0C */ beq lbl_8016A6AC
/* 8016A6A4 00166304 38 80 00 01 */ li r4, 1
/* 8016A6A8 00166308 48 00 3F 19 */ bl func_8016E5C0
lbl_8016A6AC:
/* 8016A6AC 0016630C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016A6B0 00166310 7C 08 03 A6 */ mtlr r0
/* 8016A6B4 00166314 38 21 00 10 */ addi r1, r1, 0x10
/* 8016A6B8 00166318 4E 80 00 20 */ blr
.global func_8016A6BC
func_8016A6BC:
/* 8016A6BC 0016631C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016A6C0 00166320 7C 08 02 A6 */ mflr r0
/* 8016A6C4 00166324 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016A6C8 00166328 39 61 00 20 */ addi r11, r1, 0x20
/* 8016A6CC 0016632C 48 05 CA 5D */ bl _savegpr_27
/* 8016A6D0 00166330 7C 7B 1B 78 */ mr r27, r3
/* 8016A6D4 00166334 4B ED AE BD */ bl func_80045590
/* 8016A6D8 00166338 7C 7D 1B 78 */ mr r29, r3
/* 8016A6DC 0016633C 4B EC B6 C1 */ bl func_80035D9C
/* 8016A6E0 00166340 7C 7F 1B 78 */ mr r31, r3
/* 8016A6E4 00166344 4B FB 22 91 */ bl func_8011C974
/* 8016A6E8 00166348 2C 1D 00 00 */ cmpwi r29, 0
/* 8016A6EC 0016634C 7C 7E 1B 78 */ mr r30, r3
/* 8016A6F0 00166350 41 82 00 D8 */ beq lbl_8016A7C8
/* 8016A6F4 00166354 2C 1F 00 00 */ cmpwi r31, 0
/* 8016A6F8 00166358 41 82 00 D0 */ beq lbl_8016A7C8
/* 8016A6FC 0016635C 2C 03 00 00 */ cmpwi r3, 0
/* 8016A700 00166360 40 82 00 08 */ bne lbl_8016A708
/* 8016A704 00166364 48 00 00 C4 */ b lbl_8016A7C8
lbl_8016A708:
/* 8016A708 00166368 7F E3 FB 78 */ mr r3, r31
/* 8016A70C 0016636C 4B EC B7 4D */ bl func_80035E58
/* 8016A710 00166370 7F E3 FB 78 */ mr r3, r31
/* 8016A714 00166374 4B EC B7 55 */ bl func_80035E68
/* 8016A718 00166378 2C 03 00 02 */ cmpwi r3, 2
/* 8016A71C 0016637C 3B E0 00 04 */ li r31, 4
/* 8016A720 00166380 40 82 00 08 */ bne lbl_8016A728
/* 8016A724 00166384 3B E0 00 02 */ li r31, 2
lbl_8016A728:
/* 8016A728 00166388 3B 80 00 00 */ li r28, 0
/* 8016A72C 0016638C 48 00 00 80 */ b lbl_8016A7AC
lbl_8016A730:
/* 8016A730 00166390 57 80 07 FF */ clrlwi. r0, r28, 0x1f
/* 8016A734 00166394 41 82 00 18 */ beq lbl_8016A74C
/* 8016A738 00166398 57 80 FF FE */ rlwinm r0, r28, 0x1f, 0x1f, 0x1f
/* 8016A73C 0016639C 1C 00 06 EC */ mulli r0, r0, 0x6ec
/* 8016A740 001663A0 7C 7E 02 14 */ add r3, r30, r0
/* 8016A744 001663A4 39 03 12 24 */ addi r8, r3, 0x1224
/* 8016A748 001663A8 48 00 00 14 */ b lbl_8016A75C
lbl_8016A74C:
/* 8016A74C 001663AC 57 80 FF FE */ rlwinm r0, r28, 0x1f, 0x1f, 0x1f
/* 8016A750 001663B0 1C 00 06 EC */ mulli r0, r0, 0x6ec
/* 8016A754 001663B4 7C 7E 02 14 */ add r3, r30, r0
/* 8016A758 001663B8 39 03 04 4C */ addi r8, r3, 0x44c
lbl_8016A75C:
/* 8016A75C 001663BC 88 08 05 45 */ lbz r0, 0x545(r8)
/* 8016A760 001663C0 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f
/* 8016A764 001663C4 40 82 00 24 */ bne lbl_8016A788
/* 8016A768 001663C8 7F A3 EB 78 */ mr r3, r29
/* 8016A76C 001663CC 7F 84 E3 78 */ mr r4, r28
/* 8016A770 001663D0 7F 66 DB 78 */ mr r6, r27
/* 8016A774 001663D4 38 A0 00 01 */ li r5, 1
/* 8016A778 001663D8 38 E0 00 00 */ li r7, 0
/* 8016A77C 001663DC 39 00 00 00 */ li r8, 0
/* 8016A780 001663E0 4B ED AF FD */ bl func_8004577C
/* 8016A784 001663E4 48 00 00 24 */ b lbl_8016A7A8
lbl_8016A788:
/* 8016A788 001663E8 88 08 01 EE */ lbz r0, 0x1ee(r8)
/* 8016A78C 001663EC 7F A3 EB 78 */ mr r3, r29
/* 8016A790 001663F0 A0 A8 00 20 */ lhz r5, 0x20(r8)
/* 8016A794 001663F4 7F 84 E3 78 */ mr r4, r28
/* 8016A798 001663F8 7F 66 DB 78 */ mr r6, r27
/* 8016A79C 001663FC 7C 07 07 74 */ extsb r7, r0
/* 8016A7A0 00166400 39 08 00 22 */ addi r8, r8, 0x22
/* 8016A7A4 00166404 4B ED AF D9 */ bl func_8004577C
lbl_8016A7A8:
/* 8016A7A8 00166408 3B 9C 00 01 */ addi r28, r28, 1
lbl_8016A7AC:
/* 8016A7AC 0016640C 7C 1C F8 00 */ cmpw r28, r31
/* 8016A7B0 00166410 41 80 FF 80 */ blt lbl_8016A730
/* 8016A7B4 00166414 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016A7B8 00166418 48 0B 9D D1 */ bl func_80224588
/* 8016A7BC 0016641C 7F A3 EB 78 */ mr r3, r29
/* 8016A7C0 00166420 38 80 00 01 */ li r4, 1
/* 8016A7C4 00166424 4B ED B5 39 */ bl func_80045CFC
lbl_8016A7C8:
/* 8016A7C8 00166428 39 61 00 20 */ addi r11, r1, 0x20
/* 8016A7CC 0016642C 48 05 C9 A9 */ bl _restgpr_27
/* 8016A7D0 00166430 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016A7D4 00166434 7C 08 03 A6 */ mtlr r0
/* 8016A7D8 00166438 38 21 00 20 */ addi r1, r1, 0x20
/* 8016A7DC 0016643C 4E 80 00 20 */ blr
.global lbl_8016A7E0
lbl_8016A7E0:
/* 8016A7E0 00166440 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8016A7E4 00166444 7C 08 02 A6 */ mflr r0
/* 8016A7E8 00166448 90 01 00 64 */ stw r0, 0x64(r1)
/* 8016A7EC 0016644C 39 61 00 60 */ addi r11, r1, 0x60
/* 8016A7F0 00166450 48 05 C9 05 */ bl __save_gpr
/* 8016A7F4 00166454 4B EC B5 A9 */ bl func_80035D9C
/* 8016A7F8 00166458 90 61 00 08 */ stw r3, 8(r1)
/* 8016A7FC 0016645C 38 60 00 04 */ li r3, 4
/* 8016A800 00166460 64 63 00 04 */ oris r3, r3, 4
/* 8016A804 00166464 7C 72 E3 A6 */ mtspr 0x392, r3
/* 8016A808 00166468 38 60 00 05 */ li r3, 5
/* 8016A80C 0016646C 64 63 00 05 */ oris r3, r3, 5
/* 8016A810 00166470 7C 73 E3 A6 */ mtspr 0x393, r3
/* 8016A814 00166474 38 60 00 06 */ li r3, 6
/* 8016A818 00166478 64 63 00 06 */ oris r3, r3, 6
/* 8016A81C 0016647C 7C 74 E3 A6 */ mtspr 0x394, r3
/* 8016A820 00166480 38 60 00 07 */ li r3, 7
/* 8016A824 00166484 64 63 00 07 */ oris r3, r3, 7
/* 8016A828 00166488 7C 75 E3 A6 */ mtspr 0x395, r3
/* 8016A82C 0016648C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A830 00166490 3C 80 80 49 */ lis r4, lbl_8048CDB4@ha
/* 8016A834 00166494 38 C0 00 05 */ li r6, 5
/* 8016A838 00166498 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016A83C 0016649C 38 A0 FF FF */ li r5, -1
/* 8016A840 001664A0 38 84 CD B4 */ addi r4, r4, lbl_8048CDB4@l
/* 8016A844 001664A4 90 CD 9E B0 */ stw r6, lbl_8063F170-_SDA_BASE_(r13)
/* 8016A848 001664A8 38 00 00 00 */ li r0, 0
/* 8016A84C 001664AC 90 AD 9E B8 */ stw r5, lbl_8063F178-_SDA_BASE_(r13)
/* 8016A850 001664B0 98 04 00 1A */ stb r0, 0x1a(r4)
/* 8016A854 001664B4 41 82 00 14 */ beq lbl_8016A868
/* 8016A858 001664B8 4B EE DC 91 */ bl func_800584E8
/* 8016A85C 001664BC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A860 001664C0 60 00 00 08 */ ori r0, r0, 8
/* 8016A864 001664C4 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016A868:
/* 8016A868 001664C8 3C 80 80 49 */ lis r4, lbl_8048CDB4@ha
/* 8016A86C 001664CC 39 E0 00 02 */ li r15, 2
/* 8016A870 001664D0 3B C0 00 10 */ li r30, 0x10
/* 8016A874 001664D4 3B E0 00 00 */ li r31, 0
/* 8016A878 001664D8 3B 44 CD B4 */ addi r26, r4, lbl_8048CDB4@l
/* 8016A87C 001664DC 3B A0 00 FF */ li r29, 0xff
/* 8016A880 001664E0 3B 00 00 01 */ li r24, 1
/* 8016A884 001664E4 3A C0 00 03 */ li r22, 3
/* 8016A888 001664E8 3E E0 00 01 */ lis r23, 1
/* 8016A88C 001664EC 3B 60 FD FD */ li r27, -515
/* 8016A890 001664F0 39 C0 00 08 */ li r14, 8
/* 8016A894 001664F4 3B 80 00 04 */ li r28, 4
/* 8016A898 001664F8 48 00 18 3C */ b lbl_8016C0D4
lbl_8016A89C:
/* 8016A89C 001664FC 80 0D 9E A8 */ lwz r0, lbl_8063F168-_SDA_BASE_(r13)
/* 8016A8A0 00166500 2C 00 00 00 */ cmpwi r0, 0
/* 8016A8A4 00166504 40 82 00 08 */ bne lbl_8016A8AC
/* 8016A8A8 00166508 93 0D 9E A8 */ stw r24, lbl_8063F168-_SDA_BASE_(r13)
lbl_8016A8AC:
/* 8016A8AC 0016650C 3A 40 00 00 */ li r18, 0
/* 8016A8B0 00166510 48 00 00 34 */ b lbl_8016A8E4
lbl_8016A8B4:
/* 8016A8B4 00166514 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A8B8 00166518 54 80 03 5B */ rlwinm. r0, r4, 0, 0xd, 0xd
/* 8016A8BC 0016651C 41 82 00 10 */ beq lbl_8016A8CC
/* 8016A8C0 00166520 48 00 19 85 */ bl func_8016C244
/* 8016A8C4 00166524 7C 72 1B 78 */ mr r18, r3
/* 8016A8C8 00166528 48 00 00 1C */ b lbl_8016A8E4
lbl_8016A8CC:
/* 8016A8CC 0016652C 54 80 04 A5 */ rlwinm. r0, r4, 0, 0x12, 0x12
/* 8016A8D0 00166530 41 82 00 0C */ beq lbl_8016A8DC
/* 8016A8D4 00166534 48 00 18 A5 */ bl func_8016C178
/* 8016A8D8 00166538 48 00 00 08 */ b lbl_8016A8E0
lbl_8016A8DC:
/* 8016A8DC 0016653C 48 00 18 25 */ bl func_8016C100
lbl_8016A8E0:
/* 8016A8E0 00166540 7C 72 1B 78 */ mr r18, r3
lbl_8016A8E4:
/* 8016A8E4 00166544 2C 12 00 00 */ cmpwi r18, 0
/* 8016A8E8 00166548 41 82 FF CC */ beq lbl_8016A8B4
/* 8016A8EC 0016654C 80 AD 9E DC */ lwz r5, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A8F0 00166550 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e
/* 8016A8F4 00166554 41 82 00 E0 */ beq lbl_8016A9D4
/* 8016A8F8 00166558 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A8FC 0016655C 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016A900 00166560 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016A904 00166564 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016A908 00166568 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016A90C 0016656C 41 82 00 C8 */ beq lbl_8016A9D4
/* 8016A910 00166570 2C 12 00 87 */ cmpwi r18, 0x87
/* 8016A914 00166574 41 82 00 C0 */ beq lbl_8016A9D4
/* 8016A918 00166578 2C 12 00 86 */ cmpwi r18, 0x86
/* 8016A91C 0016657C 41 82 00 B8 */ beq lbl_8016A9D4
/* 8016A920 00166580 70 A0 00 50 */ andi. r0, r5, 0x50
/* 8016A924 00166584 40 82 00 B0 */ bne lbl_8016A9D4
/* 8016A928 00166588 4B EE DD 39 */ bl func_80058660
/* 8016A92C 0016658C 2C 03 00 00 */ cmpwi r3, 0
/* 8016A930 00166590 41 82 00 A4 */ beq lbl_8016A9D4
/* 8016A934 00166594 4B EE DA C1 */ bl func_800583F4
/* 8016A938 00166598 4B EE DA D1 */ bl func_80058408
/* 8016A93C 0016659C 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A940 001665A0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A944 001665A4 54 A4 03 5A */ rlwinm r4, r5, 0, 0xd, 0xd
/* 8016A948 001665A8 50 A4 04 A5 */ rlwimi. r4, r5, 0, 0x12, 0x12
/* 8016A94C 001665AC 60 04 00 F0 */ ori r4, r0, 0xf0
/* 8016A950 001665B0 41 82 00 08 */ beq lbl_8016A958
/* 8016A954 001665B4 60 04 00 50 */ ori r4, r0, 0x50
lbl_8016A958:
/* 8016A958 001665B8 54 A0 03 5B */ rlwinm. r0, r5, 0, 0xd, 0xd
/* 8016A95C 001665BC 90 8D 9E DC */ stw r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A960 001665C0 41 82 00 28 */ beq lbl_8016A988
/* 8016A964 001665C4 38 60 00 84 */ li r3, 0x84
/* 8016A968 001665C8 48 01 1B 15 */ bl func_8017C47C
/* 8016A96C 001665CC 48 00 1F A9 */ bl func_8016C914
/* 8016A970 001665D0 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A974 001665D4 38 00 FF 0D */ li r0, -243
/* 8016A978 001665D8 93 AD 9E CC */ stw r29, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016A97C 001665DC 7C 80 00 38 */ and r0, r4, r0
/* 8016A980 001665E0 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A984 001665E4 48 00 17 50 */ b lbl_8016C0D4
lbl_8016A988:
/* 8016A988 001665E8 54 A0 04 A5 */ rlwinm. r0, r5, 0, 0x12, 0x12
/* 8016A98C 001665EC 41 82 00 18 */ beq lbl_8016A9A4
/* 8016A990 001665F0 38 60 00 83 */ li r3, 0x83
/* 8016A994 001665F4 38 80 00 00 */ li r4, 0
/* 8016A998 001665F8 38 A0 00 00 */ li r5, 0
/* 8016A99C 001665FC 48 00 32 75 */ bl func_8016DC10
/* 8016A9A0 00166600 48 00 1F 75 */ bl func_8016C914
lbl_8016A9A4:
/* 8016A9A4 00166604 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A9A8 00166608 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016A9AC 0016660C 41 82 00 28 */ beq lbl_8016A9D4
/* 8016A9B0 00166610 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A9B4 00166614 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016A9B8 00166618 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A9BC 0016661C 48 00 37 31 */ bl func_8016E0EC
/* 8016A9C0 00166620 2C 03 00 00 */ cmpwi r3, 0
/* 8016A9C4 00166624 41 82 00 0C */ beq lbl_8016A9D0
/* 8016A9C8 00166628 3A 40 00 86 */ li r18, 0x86
/* 8016A9CC 0016662C 48 00 00 08 */ b lbl_8016A9D4
lbl_8016A9D0:
/* 8016A9D0 00166630 48 00 32 BD */ bl func_8016DC8C
lbl_8016A9D4:
/* 8016A9D4 00166634 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016A9D8 00166638 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016A9DC 0016663C 41 82 00 64 */ beq lbl_8016AA40
/* 8016A9E0 00166640 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016A9E4 00166644 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016A9E8 00166648 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016A9EC 0016664C 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016A9F0 00166650 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016A9F4 00166654 40 82 00 4C */ bne lbl_8016AA40
/* 8016A9F8 00166658 4B EE DC 69 */ bl func_80058660
/* 8016A9FC 0016665C 2C 03 00 00 */ cmpwi r3, 0
/* 8016AA00 00166660 41 82 00 40 */ beq lbl_8016AA40
/* 8016AA04 00166664 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AA08 00166668 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016AA0C 0016666C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AA10 00166670 4B EE D9 E5 */ bl func_800583F4
/* 8016AA14 00166674 4B EE D9 F5 */ bl func_80058408
/* 8016AA18 00166678 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AA1C 0016667C 54 80 05 AD */ rlwinm. r0, r4, 0, 0x16, 0x16
/* 8016AA20 00166680 41 82 00 14 */ beq lbl_8016AA34
/* 8016AA24 00166684 60 80 00 50 */ ori r0, r4, 0x50
/* 8016AA28 00166688 54 00 05 EA */ rlwinm r0, r0, 0, 0x17, 0x15
/* 8016AA2C 0016668C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AA30 00166690 48 00 00 10 */ b lbl_8016AA40
lbl_8016AA34:
/* 8016AA34 00166694 60 80 00 A0 */ ori r0, r4, 0xa0
/* 8016AA38 00166698 54 00 05 A8 */ rlwinm r0, r0, 0, 0x16, 0x14
/* 8016AA3C 0016669C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016AA40:
/* 8016AA40 001666A0 2C 12 00 0C */ cmpwi r18, 0xc
/* 8016AA44 001666A4 41 82 0A F8 */ beq lbl_8016B53C
/* 8016AA48 001666A8 40 80 00 50 */ bge lbl_8016AA98
/* 8016AA4C 001666AC 2C 12 00 06 */ cmpwi r18, 6
/* 8016AA50 001666B0 41 82 00 94 */ beq lbl_8016AAE4
/* 8016AA54 001666B4 40 80 00 20 */ bge lbl_8016AA74
/* 8016AA58 001666B8 2C 12 00 03 */ cmpwi r18, 3
/* 8016AA5C 001666BC 41 82 01 B0 */ beq lbl_8016AC0C
/* 8016AA60 001666C0 40 80 00 08 */ bge lbl_8016AA68
/* 8016AA64 001666C4 48 00 13 34 */ b lbl_8016BD98
lbl_8016AA68:
/* 8016AA68 001666C8 2C 12 00 05 */ cmpwi r18, 5
/* 8016AA6C 001666CC 40 80 00 F8 */ bge lbl_8016AB64
/* 8016AA70 001666D0 48 00 13 28 */ b lbl_8016BD98
lbl_8016AA74:
/* 8016AA74 001666D4 2C 12 00 09 */ cmpwi r18, 9
/* 8016AA78 001666D8 41 82 02 40 */ beq lbl_8016ACB8
/* 8016AA7C 001666DC 40 80 00 10 */ bge lbl_8016AA8C
/* 8016AA80 001666E0 2C 12 00 08 */ cmpwi r18, 8
/* 8016AA84 001666E4 40 80 01 58 */ bge lbl_8016ABDC
/* 8016AA88 001666E8 48 00 08 8C */ b lbl_8016B314
lbl_8016AA8C:
/* 8016AA8C 001666EC 2C 12 00 0B */ cmpwi r18, 0xb
/* 8016AA90 001666F0 40 80 09 00 */ bge lbl_8016B390
/* 8016AA94 001666F4 48 00 01 30 */ b lbl_8016ABC4
lbl_8016AA98:
/* 8016AA98 001666F8 2C 12 00 82 */ cmpwi r18, 0x82
/* 8016AA9C 001666FC 41 82 12 68 */ beq lbl_8016BD04
/* 8016AAA0 00166700 40 80 00 28 */ bge lbl_8016AAC8
/* 8016AAA4 00166704 2C 12 00 0F */ cmpwi r18, 0xf
/* 8016AAA8 00166708 41 82 0C 84 */ beq lbl_8016B72C
/* 8016AAAC 0016670C 40 80 00 10 */ bge lbl_8016AABC
/* 8016AAB0 00166710 2C 12 00 0E */ cmpwi r18, 0xe
/* 8016AAB4 00166714 40 80 0E 28 */ bge lbl_8016B8DC
/* 8016AAB8 00166718 48 00 0B B8 */ b lbl_8016B670
lbl_8016AABC:
/* 8016AABC 0016671C 2C 12 00 81 */ cmpwi r18, 0x81
/* 8016AAC0 00166720 40 80 12 38 */ bge lbl_8016BCF8
/* 8016AAC4 00166724 48 00 12 D4 */ b lbl_8016BD98
lbl_8016AAC8:
/* 8016AAC8 00166728 2C 12 00 87 */ cmpwi r18, 0x87
/* 8016AACC 0016672C 41 82 12 90 */ beq lbl_8016BD5C
/* 8016AAD0 00166730 40 80 12 C8 */ bge lbl_8016BD98
/* 8016AAD4 00166734 2C 12 00 84 */ cmpwi r18, 0x84
/* 8016AAD8 00166738 41 82 12 C0 */ beq lbl_8016BD98
/* 8016AADC 0016673C 40 80 12 BC */ bge lbl_8016BD98
/* 8016AAE0 00166740 48 00 12 64 */ b lbl_8016BD44
lbl_8016AAE4:
/* 8016AAE4 00166744 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AAE8 00166748 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016AAEC 0016674C 41 82 00 30 */ beq lbl_8016AB1C
/* 8016AAF0 00166750 48 24 1D 39 */ bl func_803AC828
/* 8016AAF4 00166754 48 24 31 E5 */ bl func_803ADCD8
/* 8016AAF8 00166758 54 60 07 BE */ clrlwi r0, r3, 0x1e
/* 8016AAFC 0016675C 2C 00 00 03 */ cmpwi r0, 3
/* 8016AB00 00166760 41 82 00 0C */ beq lbl_8016AB0C
/* 8016AB04 00166764 68 60 00 03 */ xori r0, r3, 3
/* 8016AB08 00166768 54 03 06 3E */ clrlwi r3, r0, 0x18
lbl_8016AB0C:
/* 8016AB0C 0016676C 54 64 06 3E */ clrlwi r4, r3, 0x18
/* 8016AB10 00166770 38 60 00 06 */ li r3, 6
/* 8016AB14 00166774 38 A0 00 00 */ li r5, 0
/* 8016AB18 00166778 48 00 30 F9 */ bl func_8016DC10
lbl_8016AB1C:
/* 8016AB1C 0016677C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AB20 00166780 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016AB24 00166784 41 82 00 1C */ beq lbl_8016AB40
/* 8016AB28 00166788 38 60 00 00 */ li r3, 0
/* 8016AB2C 0016678C 48 01 09 F9 */ bl func_8017B524
/* 8016AB30 00166790 54 70 06 3E */ clrlwi r16, r3, 0x18
/* 8016AB34 00166794 48 24 1C F5 */ bl func_803AC828
/* 8016AB38 00166798 7E 04 83 78 */ mr r4, r16
/* 8016AB3C 0016679C 48 24 31 A5 */ bl func_803ADCE0
lbl_8016AB40:
/* 8016AB40 001667A0 80 0D 9E F8 */ lwz r0, lbl_8063F1B8-_SDA_BASE_(r13)
/* 8016AB44 001667A4 2C 00 00 00 */ cmpwi r0, 0
/* 8016AB48 001667A8 40 82 00 0C */ bne lbl_8016AB54
/* 8016AB4C 001667AC 38 60 00 00 */ li r3, 0
/* 8016AB50 001667B0 48 00 28 11 */ bl func_8016D360
lbl_8016AB54:
/* 8016AB54 001667B4 80 61 00 08 */ lwz r3, 8(r1)
/* 8016AB58 001667B8 38 80 00 05 */ li r4, 5
/* 8016AB5C 001667BC 4B EC B2 E5 */ bl func_80035E40
/* 8016AB60 001667C0 48 00 12 38 */ b lbl_8016BD98
lbl_8016AB64:
/* 8016AB64 001667C4 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016AB68 001667C8 38 60 00 00 */ li r3, 0
/* 8016AB6C 001667CC 54 00 06 3A */ rlwinm r0, r0, 0, 0x18, 0x1d
/* 8016AB70 001667D0 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016AB74 001667D4 48 00 27 ED */ bl func_8016D360
/* 8016AB78 001667D8 4B EA 1C 71 */ bl func_8000C7E8
/* 8016AB7C 001667DC 38 80 00 02 */ li r4, 2
/* 8016AB80 001667E0 38 A0 00 00 */ li r5, 0
/* 8016AB84 001667E4 4B EB 6C 49 */ bl func_800217CC
/* 8016AB88 001667E8 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AB8C 001667EC 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016AB90 001667F0 41 82 12 08 */ beq lbl_8016BD98
/* 8016AB94 001667F4 4B EE DA 7D */ bl func_80058610
/* 8016AB98 001667F8 2C 03 00 00 */ cmpwi r3, 0
/* 8016AB9C 001667FC 41 82 11 FC */ beq lbl_8016BD98
/* 8016ABA0 00166800 48 00 32 8D */ bl func_8016DE2C
/* 8016ABA4 00166804 54 70 06 3E */ clrlwi r16, r3, 0x18
/* 8016ABA8 00166808 48 24 1C 81 */ bl func_803AC828
/* 8016ABAC 0016680C 7E 04 83 78 */ mr r4, r16
/* 8016ABB0 00166810 48 24 31 31 */ bl func_803ADCE0
/* 8016ABB4 00166814 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016ABB8 00166818 60 00 01 00 */ ori r0, r0, 0x100
/* 8016ABBC 0016681C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016ABC0 00166820 48 00 11 D8 */ b lbl_8016BD98
lbl_8016ABC4:
/* 8016ABC4 00166824 38 60 00 01 */ li r3, 1
/* 8016ABC8 00166828 48 00 27 99 */ bl func_8016D360
/* 8016ABCC 0016682C 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016ABD0 00166830 60 00 00 02 */ ori r0, r0, 2
/* 8016ABD4 00166834 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016ABD8 00166838 48 00 11 C0 */ b lbl_8016BD98
lbl_8016ABDC:
/* 8016ABDC 0016683C 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016ABE0 00166840 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8016ABE4 00166844 40 82 00 1C */ bne lbl_8016AC00
/* 8016ABE8 00166848 48 25 E5 29 */ bl func_803C9110
/* 8016ABEC 0016684C 2C 03 00 00 */ cmpwi r3, 0
/* 8016ABF0 00166850 40 82 00 10 */ bne lbl_8016AC00
/* 8016ABF4 00166854 38 60 00 00 */ li r3, 0
/* 8016ABF8 00166858 48 00 27 69 */ bl func_8016D360
/* 8016ABFC 0016685C 48 00 11 9C */ b lbl_8016BD98
lbl_8016AC00:
/* 8016AC00 00166860 38 60 00 01 */ li r3, 1
/* 8016AC04 00166864 48 00 27 5D */ bl func_8016D360
/* 8016AC08 00166868 48 00 11 90 */ b lbl_8016BD98
lbl_8016AC0C:
/* 8016AC0C 0016686C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AC10 00166870 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016AC14 00166874 41 82 00 14 */ beq lbl_8016AC28
/* 8016AC18 00166878 38 60 00 81 */ li r3, 0x81
/* 8016AC1C 0016687C 38 80 00 00 */ li r4, 0
/* 8016AC20 00166880 38 A0 00 00 */ li r5, 0
/* 8016AC24 00166884 48 00 2F ED */ bl func_8016DC10
lbl_8016AC28:
/* 8016AC28 00166888 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AC2C 0016688C 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016AC30 00166890 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016AC34 00166894 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016AC38 00166898 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016AC3C 0016689C 40 82 00 10 */ bne lbl_8016AC4C
/* 8016AC40 001668A0 80 0D 9E E8 */ lwz r0, lbl_8063F1A8-_SDA_BASE_(r13)
/* 8016AC44 001668A4 2C 00 00 00 */ cmpwi r0, 0
/* 8016AC48 001668A8 40 82 11 50 */ bne lbl_8016BD98
lbl_8016AC4C:
/* 8016AC4C 001668AC 38 60 00 00 */ li r3, 0
/* 8016AC50 001668B0 48 00 27 11 */ bl func_8016D360
/* 8016AC54 001668B4 3A 20 00 00 */ li r17, 0
/* 8016AC58 001668B8 3A 00 00 00 */ li r16, 0
lbl_8016AC5C:
/* 8016AC5C 001668BC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016AC60 001668C0 7C 80 82 14 */ add r4, r0, r16
/* 8016AC64 001668C4 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8016AC68 001668C8 2C 00 00 00 */ cmpwi r0, 0
/* 8016AC6C 001668CC 41 82 00 38 */ beq lbl_8016ACA4
/* 8016AC70 001668D0 2C 00 00 80 */ cmpwi r0, 0x80
/* 8016AC74 001668D4 40 80 00 30 */ bge lbl_8016ACA4
/* 8016AC78 001668D8 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AC7C 001668DC 7F C0 88 30 */ slw r0, r30, r17
/* 8016AC80 001668E0 7C 80 00 39 */ and. r0, r4, r0
/* 8016AC84 001668E4 41 82 00 14 */ beq lbl_8016AC98
/* 8016AC88 001668E8 7E 43 93 78 */ mr r3, r18
/* 8016AC8C 001668EC 7E 24 8B 78 */ mr r4, r17
/* 8016AC90 001668F0 48 00 29 21 */ bl func_8016D5B0
/* 8016AC94 001668F4 48 00 00 10 */ b lbl_8016ACA4
lbl_8016AC98:
/* 8016AC98 001668F8 92 CD 9E B0 */ stw r22, lbl_8063F170-_SDA_BASE_(r13)
/* 8016AC9C 001668FC 56 23 06 3E */ clrlwi r3, r17, 0x18
/* 8016ACA0 00166900 48 00 1C E1 */ bl func_8016C980
lbl_8016ACA4:
/* 8016ACA4 00166904 3A 31 00 01 */ addi r17, r17, 1
/* 8016ACA8 00166908 3A 10 00 04 */ addi r16, r16, 4
/* 8016ACAC 0016690C 2C 11 00 04 */ cmpwi r17, 4
/* 8016ACB0 00166910 41 80 FF AC */ blt lbl_8016AC5C
/* 8016ACB4 00166914 48 00 10 E4 */ b lbl_8016BD98
lbl_8016ACB8:
/* 8016ACB8 00166918 48 07 5B 31 */ bl func_801E07E8
/* 8016ACBC 0016691C 2C 03 00 00 */ cmpwi r3, 0
/* 8016ACC0 00166920 41 82 00 10 */ beq lbl_8016ACD0
/* 8016ACC4 00166924 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016ACC8 00166928 48 0B 98 C1 */ bl func_80224588
/* 8016ACCC 0016692C 4B FF FF EC */ b lbl_8016ACB8
lbl_8016ACD0:
/* 8016ACD0 00166930 3A 60 00 00 */ li r19, 0
/* 8016ACD4 00166934 3A A0 00 00 */ li r21, 0
lbl_8016ACD8:
/* 8016ACD8 00166938 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016ACDC 0016693C 7F C0 98 30 */ slw r0, r30, r19
/* 8016ACE0 00166940 7C 80 00 39 */ and. r0, r4, r0
/* 8016ACE4 00166944 41 82 00 14 */ beq lbl_8016ACF8
/* 8016ACE8 00166948 7E 43 93 78 */ mr r3, r18
/* 8016ACEC 0016694C 7E 64 9B 78 */ mr r4, r19
/* 8016ACF0 00166950 48 00 28 C1 */ bl func_8016D5B0
/* 8016ACF4 00166954 48 00 06 0C */ b lbl_8016B300
lbl_8016ACF8:
/* 8016ACF8 00166958 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016ACFC 0016695C 3A 20 00 00 */ li r17, 0
/* 8016AD00 00166960 7C 80 AA 14 */ add r4, r0, r21
/* 8016AD04 00166964 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8016AD08 00166968 2C 00 00 FD */ cmpwi r0, 0xfd
/* 8016AD0C 0016696C 40 82 00 B8 */ bne lbl_8016ADC4
/* 8016AD10 00166970 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AD14 00166974 54 60 05 29 */ rlwinm. r0, r3, 0, 0x14, 0x14
/* 8016AD18 00166978 41 82 00 74 */ beq lbl_8016AD8C
/* 8016AD1C 0016697C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016AD20 00166980 48 0B 98 69 */ bl func_80224588
/* 8016AD24 00166984 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AD28 00166988 56 64 07 FE */ clrlwi r4, r19, 0x1f
/* 8016AD2C 0016698C 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016AD30 00166990 41 82 00 08 */ beq lbl_8016AD38
/* 8016AD34 00166994 7E 64 9B 78 */ mr r4, r19
lbl_8016AD38:
/* 8016AD38 00166998 54 83 06 3E */ clrlwi r3, r4, 0x18
/* 8016AD3C 0016699C 4B FF CF 11 */ bl func_80167C4C
/* 8016AD40 001669A0 28 03 00 07 */ cmplwi r3, 7
/* 8016AD44 001669A4 7C 70 1B 78 */ mr r16, r3
/* 8016AD48 001669A8 40 82 00 10 */ bne lbl_8016AD58
/* 8016AD4C 001669AC 48 24 1A DD */ bl func_803AC828
/* 8016AD50 001669B0 38 80 00 07 */ li r4, 7
/* 8016AD54 001669B4 48 24 2F 8D */ bl func_803ADCE0
lbl_8016AD58:
/* 8016AD58 001669B8 28 10 F5 FA */ cmplwi r16, 0xf5fa
/* 8016AD5C 001669BC 40 82 05 A4 */ bne lbl_8016B300
/* 8016AD60 001669C0 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016AD64 001669C4 56 63 06 3E */ clrlwi r3, r19, 0x18
/* 8016AD68 001669C8 7C 80 AA 14 */ add r4, r0, r21
/* 8016AD6C 001669CC 80 04 00 20 */ lwz r0, 0x20(r4)
/* 8016AD70 001669D0 90 04 00 10 */ stw r0, 0x10(r4)
/* 8016AD74 001669D4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016AD78 001669D8 7C 80 9A 14 */ add r4, r0, r19
/* 8016AD7C 001669DC 9B 04 00 74 */ stb r24, 0x74(r4)
/* 8016AD80 001669E0 92 CD 9E B0 */ stw r22, lbl_8063F170-_SDA_BASE_(r13)
/* 8016AD84 001669E4 48 00 1B FD */ bl func_8016C980
/* 8016AD88 001669E8 48 00 05 78 */ b lbl_8016B300
lbl_8016AD8C:
/* 8016AD8C 001669EC 56 64 06 3E */ clrlwi r4, r19, 0x18
/* 8016AD90 001669F0 48 25 E5 39 */ bl func_803C92C8
/* 8016AD94 001669F4 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8016AD98 001669F8 48 00 1B 0D */ bl func_8016C8A4
/* 8016AD9C 001669FC 28 03 F5 FA */ cmplwi r3, 0xf5fa
/* 8016ADA0 00166A00 40 82 05 60 */ bne lbl_8016B300
/* 8016ADA4 00166A04 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016ADA8 00166A08 56 63 06 3E */ clrlwi r3, r19, 0x18
/* 8016ADAC 00166A0C 7C 80 AA 14 */ add r4, r0, r21
/* 8016ADB0 00166A10 80 04 00 20 */ lwz r0, 0x20(r4)
/* 8016ADB4 00166A14 90 04 00 10 */ stw r0, 0x10(r4)
/* 8016ADB8 00166A18 92 CD 9E B0 */ stw r22, lbl_8063F170-_SDA_BASE_(r13)
/* 8016ADBC 00166A1C 48 00 1B C5 */ bl func_8016C980
/* 8016ADC0 00166A20 48 00 05 40 */ b lbl_8016B300
lbl_8016ADC4:
/* 8016ADC4 00166A24 2C 00 00 FE */ cmpwi r0, 0xfe
/* 8016ADC8 00166A28 40 82 05 38 */ bne lbl_8016B300
/* 8016ADCC 00166A2C 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016ADD0 00166A30 54 60 04 A5 */ rlwinm. r0, r3, 0, 0x12, 0x12
/* 8016ADD4 00166A34 41 82 00 A4 */ beq lbl_8016AE78
/* 8016ADD8 00166A38 56 60 07 FF */ clrlwi. r0, r19, 0x1f
/* 8016ADDC 00166A3C 41 82 00 9C */ beq lbl_8016AE78
/* 8016ADE0 00166A40 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016ADE4 00166A44 48 0B 97 A5 */ bl func_80224588
/* 8016ADE8 00166A48 48 01 17 2D */ bl func_8017C514
/* 8016ADEC 00166A4C 2C 03 00 00 */ cmpwi r3, 0
/* 8016ADF0 00166A50 41 82 05 10 */ beq lbl_8016B300
/* 8016ADF4 00166A54 2C 03 00 84 */ cmpwi r3, 0x84
/* 8016ADF8 00166A58 41 82 00 08 */ beq lbl_8016AE00
/* 8016ADFC 00166A5C 48 00 00 14 */ b lbl_8016AE10
lbl_8016AE00:
/* 8016AE00 00166A60 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AE04 00166A64 60 00 00 A0 */ ori r0, r0, 0xa0
/* 8016AE08 00166A68 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016AE0C 00166A6C 48 00 04 F4 */ b lbl_8016B300
lbl_8016AE10:
/* 8016AE10 00166A70 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016AE14 00166A74 7C 80 AA 14 */ add r4, r0, r21
/* 8016AE18 00166A78 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8016AE1C 00166A7C 2C 00 00 FF */ cmpwi r0, 0xff
/* 8016AE20 00166A80 40 82 04 E0 */ bne lbl_8016B300
/* 8016AE24 00166A84 80 04 00 20 */ lwz r0, 0x20(r4)
/* 8016AE28 00166A88 2C 00 00 04 */ cmpwi r0, 4
/* 8016AE2C 00166A8C 40 82 04 D4 */ bne lbl_8016B300
/* 8016AE30 00166A90 88 9A 00 1A */ lbz r4, 0x1a(r26)
/* 8016AE34 00166A94 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d
/* 8016AE38 00166A98 40 82 04 C8 */ bne lbl_8016B300
/* 8016AE3C 00166A9C 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c
/* 8016AE40 00166AA0 41 82 04 C0 */ beq lbl_8016B300
/* 8016AE44 00166AA4 38 60 00 00 */ li r3, 0
/* 8016AE48 00166AA8 38 80 00 13 */ li r4, 0x13
/* 8016AE4C 00166AAC 38 A0 00 0F */ li r5, 0xf
/* 8016AE50 00166AB0 38 C0 00 00 */ li r6, 0
/* 8016AE54 00166AB4 4B EF 29 39 */ bl func_8005D78C
/* 8016AE58 00166AB8 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016AE5C 00166ABC 38 60 00 85 */ li r3, 0x85
/* 8016AE60 00166AC0 38 80 00 00 */ li r4, 0
/* 8016AE64 00166AC4 38 A0 00 00 */ li r5, 0
/* 8016AE68 00166AC8 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8016AE6C 00166ACC 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016AE70 00166AD0 48 00 2D A1 */ bl func_8016DC10
/* 8016AE74 00166AD4 48 00 04 8C */ b lbl_8016B300
lbl_8016AE78:
/* 8016AE78 00166AD8 56 64 06 3E */ clrlwi r4, r19, 0x18
/* 8016AE7C 00166ADC 48 25 E4 4D */ bl func_803C92C8
/* 8016AE80 00166AE0 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8016AE84 00166AE4 48 00 1A 21 */ bl func_8016C8A4
/* 8016AE88 00166AE8 28 03 00 07 */ cmplwi r3, 7
/* 8016AE8C 00166AEC 40 82 00 14 */ bne lbl_8016AEA0
/* 8016AE90 00166AF0 48 24 19 99 */ bl func_803AC828
/* 8016AE94 00166AF4 38 80 00 07 */ li r4, 7
/* 8016AE98 00166AF8 48 24 2E 49 */ bl func_803ADCE0
/* 8016AE9C 00166AFC 48 00 0E FC */ b lbl_8016BD98
lbl_8016AEA0:
/* 8016AEA0 00166B00 34 03 00 01 */ addic. r0, r3, 1
/* 8016AEA4 00166B04 41 82 04 5C */ beq lbl_8016B300
/* 8016AEA8 00166B08 54 74 04 2E */ rlwinm r20, r3, 0, 0x10, 0x17
/* 8016AEAC 00166B0C 38 17 F2 00 */ addi r0, r23, -3584
/* 8016AEB0 00166B10 7C 14 00 00 */ cmpw r20, r0
/* 8016AEB4 00166B14 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8016AEB8 00166B18 41 82 00 D0 */ beq lbl_8016AF88
/* 8016AEBC 00166B1C 40 80 00 24 */ bge lbl_8016AEE0
/* 8016AEC0 00166B20 38 17 F1 00 */ addi r0, r23, -3840
/* 8016AEC4 00166B24 7C 14 00 00 */ cmpw r20, r0
/* 8016AEC8 00166B28 41 82 00 A8 */ beq lbl_8016AF70
/* 8016AECC 00166B2C 40 80 03 3C */ bge lbl_8016B208
/* 8016AED0 00166B30 38 17 F0 00 */ addi r0, r23, -4096
/* 8016AED4 00166B34 7C 14 00 00 */ cmpw r20, r0
/* 8016AED8 00166B38 41 82 00 28 */ beq lbl_8016AF00
/* 8016AEDC 00166B3C 48 00 03 2C */ b lbl_8016B208
lbl_8016AEE0:
/* 8016AEE0 00166B40 38 17 F4 00 */ addi r0, r23, -3072
/* 8016AEE4 00166B44 7C 14 00 00 */ cmpw r20, r0
/* 8016AEE8 00166B48 41 82 03 20 */ beq lbl_8016B208
/* 8016AEEC 00166B4C 40 80 03 1C */ bge lbl_8016B208
/* 8016AEF0 00166B50 38 17 F3 00 */ addi r0, r23, -3328
/* 8016AEF4 00166B54 7C 14 00 00 */ cmpw r20, r0
/* 8016AEF8 00166B58 41 82 01 10 */ beq lbl_8016B008
/* 8016AEFC 00166B5C 48 00 03 0C */ b lbl_8016B208
lbl_8016AF00:
/* 8016AF00 00166B60 2C 03 00 FD */ cmpwi r3, 0xfd
/* 8016AF04 00166B64 41 82 00 34 */ beq lbl_8016AF38
/* 8016AF08 00166B68 40 80 00 14 */ bge lbl_8016AF1C
/* 8016AF0C 00166B6C 2C 03 00 FB */ cmpwi r3, 0xfb
/* 8016AF10 00166B70 41 82 00 18 */ beq lbl_8016AF28
/* 8016AF14 00166B74 40 80 00 1C */ bge lbl_8016AF30
/* 8016AF18 00166B78 48 00 02 F0 */ b lbl_8016B208
lbl_8016AF1C:
/* 8016AF1C 00166B7C 2C 03 00 FF */ cmpwi r3, 0xff
/* 8016AF20 00166B80 40 80 02 E8 */ bge lbl_8016B208
/* 8016AF24 00166B84 48 00 00 1C */ b lbl_8016AF40
lbl_8016AF28:
/* 8016AF28 00166B88 3A 20 00 FF */ li r17, 0xff
/* 8016AF2C 00166B8C 48 00 02 DC */ b lbl_8016B208
lbl_8016AF30:
/* 8016AF30 00166B90 3A 20 00 01 */ li r17, 1
/* 8016AF34 00166B94 48 00 02 D4 */ b lbl_8016B208
lbl_8016AF38:
/* 8016AF38 00166B98 3A 20 00 03 */ li r17, 3
/* 8016AF3C 00166B9C 48 00 02 CC */ b lbl_8016B208
lbl_8016AF40:
/* 8016AF40 00166BA0 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AF44 00166BA4 3A 20 00 04 */ li r17, 4
/* 8016AF48 00166BA8 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016AF4C 00166BAC 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016AF50 00166BB0 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016AF54 00166BB4 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016AF58 00166BB8 40 82 00 10 */ bne lbl_8016AF68
/* 8016AF5C 00166BBC 56 60 07 FF */ clrlwi. r0, r19, 0x1f
/* 8016AF60 00166BC0 40 82 00 08 */ bne lbl_8016AF68
/* 8016AF64 00166BC4 93 0D 9E E4 */ stw r24, lbl_8063F1A4-_SDA_BASE_(r13)
lbl_8016AF68:
/* 8016AF68 00166BC8 93 0D 9E F8 */ stw r24, lbl_8063F1B8-_SDA_BASE_(r13)
/* 8016AF6C 00166BCC 48 00 02 9C */ b lbl_8016B208
lbl_8016AF70:
/* 8016AF70 00166BD0 28 03 00 FB */ cmplwi r3, 0xfb
/* 8016AF74 00166BD4 40 82 00 0C */ bne lbl_8016AF80
/* 8016AF78 00166BD8 3A 20 00 FF */ li r17, 0xff
/* 8016AF7C 00166BDC 48 00 02 8C */ b lbl_8016B208
lbl_8016AF80:
/* 8016AF80 00166BE0 3A 23 00 01 */ addi r17, r3, 1
/* 8016AF84 00166BE4 48 00 02 84 */ b lbl_8016B208
lbl_8016AF88:
/* 8016AF88 00166BE8 28 03 00 FB */ cmplwi r3, 0xfb
/* 8016AF8C 00166BEC 40 82 00 0C */ bne lbl_8016AF98
/* 8016AF90 00166BF0 3A 20 00 FF */ li r17, 0xff
/* 8016AF94 00166BF4 48 00 02 74 */ b lbl_8016B208
lbl_8016AF98:
/* 8016AF98 00166BF8 3A 20 00 00 */ li r17, 0
/* 8016AF9C 00166BFC 7F 00 88 30 */ slw r0, r24, r17
/* 8016AFA0 00166C00 7C 60 00 39 */ and. r0, r3, r0
/* 8016AFA4 00166C04 40 82 00 38 */ bne lbl_8016AFDC
/* 8016AFA8 00166C08 3A 20 00 01 */ li r17, 1
/* 8016AFAC 00166C0C 7F 00 88 30 */ slw r0, r24, r17
/* 8016AFB0 00166C10 7C 60 00 39 */ and. r0, r3, r0
/* 8016AFB4 00166C14 40 82 00 28 */ bne lbl_8016AFDC
/* 8016AFB8 00166C18 3A 20 00 02 */ li r17, 2
/* 8016AFBC 00166C1C 7F 00 88 30 */ slw r0, r24, r17
/* 8016AFC0 00166C20 7C 60 00 39 */ and. r0, r3, r0
/* 8016AFC4 00166C24 40 82 00 18 */ bne lbl_8016AFDC
/* 8016AFC8 00166C28 3A 20 00 03 */ li r17, 3
/* 8016AFCC 00166C2C 7F 00 88 30 */ slw r0, r24, r17
/* 8016AFD0 00166C30 7C 60 00 39 */ and. r0, r3, r0
/* 8016AFD4 00166C34 40 82 00 08 */ bne lbl_8016AFDC
/* 8016AFD8 00166C38 3A 20 00 04 */ li r17, 4
lbl_8016AFDC:
/* 8016AFDC 00166C3C 2C 11 00 04 */ cmpwi r17, 4
/* 8016AFE0 00166C40 41 80 00 08 */ blt lbl_8016AFE8
/* 8016AFE4 00166C44 3A 20 00 00 */ li r17, 0
lbl_8016AFE8:
/* 8016AFE8 00166C48 56 60 07 FF */ clrlwi. r0, r19, 0x1f
/* 8016AFEC 00166C4C 40 82 00 10 */ bne lbl_8016AFFC
/* 8016AFF0 00166C50 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016AFF4 00166C54 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016AFF8 00166C58 41 82 00 08 */ beq lbl_8016B000
lbl_8016AFFC:
/* 8016AFFC 00166C5C 6A 31 00 01 */ xori r17, r17, 1
lbl_8016B000:
/* 8016B000 00166C60 3A 31 00 01 */ addi r17, r17, 1
/* 8016B004 00166C64 48 00 02 04 */ b lbl_8016B208
lbl_8016B008:
/* 8016B008 00166C68 28 03 00 FB */ cmplwi r3, 0xfb
/* 8016B00C 00166C6C 40 82 00 0C */ bne lbl_8016B018
/* 8016B010 00166C70 3A 20 00 FF */ li r17, 0xff
/* 8016B014 00166C74 48 00 01 F4 */ b lbl_8016B208
lbl_8016B018:
/* 8016B018 00166C78 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B01C 00166C7C 7C 71 1B 78 */ mr r17, r3
/* 8016B020 00166C80 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B024 00166C84 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016B028 00166C88 7C 84 AA 14 */ add r4, r4, r21
/* 8016B02C 00166C8C 82 04 00 30 */ lwz r16, 0x30(r4)
/* 8016B030 00166C90 41 82 00 14 */ beq lbl_8016B044
/* 8016B034 00166C94 7E 04 83 78 */ mr r4, r16
/* 8016B038 00166C98 48 00 2A 21 */ bl func_8016DA58
/* 8016B03C 00166C9C 7C 79 1B 78 */ mr r25, r3
/* 8016B040 00166CA0 48 00 00 10 */ b lbl_8016B050
lbl_8016B044:
/* 8016B044 00166CA4 7E 04 83 78 */ mr r4, r16
/* 8016B048 00166CA8 48 00 29 01 */ bl func_8016D948
/* 8016B04C 00166CAC 7C 79 1B 78 */ mr r25, r3
lbl_8016B050:
/* 8016B050 00166CB0 2C 19 00 00 */ cmpwi r25, 0
/* 8016B054 00166CB4 41 82 00 80 */ beq lbl_8016B0D4
/* 8016B058 00166CB8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B05C 00166CBC 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016B060 00166CC0 41 82 00 58 */ beq lbl_8016B0B8
/* 8016B064 00166CC4 2C 19 50 5A */ cmpwi r25, 0x505a
/* 8016B068 00166CC8 38 C0 00 00 */ li r6, 0
/* 8016B06C 00166CCC 41 82 00 20 */ beq lbl_8016B08C
/* 8016B070 00166CD0 88 10 00 0D */ lbz r0, 0xd(r16)
/* 8016B074 00166CD4 7E 64 9B 78 */ mr r4, r19
/* 8016B078 00166CD8 80 70 00 04 */ lwz r3, 4(r16)
/* 8016B07C 00166CDC 7C B0 02 14 */ add r5, r16, r0
/* 8016B080 00166CE0 88 A5 00 20 */ lbz r5, 0x20(r5)
/* 8016B084 00166CE4 48 24 19 21 */ bl func_803AC9A4
/* 8016B088 00166CE8 7C 66 1B 78 */ mr r6, r3
lbl_8016B08C:
/* 8016B08C 00166CEC 80 70 00 04 */ lwz r3, 4(r16)
/* 8016B090 00166CF0 56 64 06 3E */ clrlwi r4, r19, 0x18
/* 8016B094 00166CF4 57 25 04 3E */ clrlwi r5, r25, 0x10
/* 8016B098 00166CF8 48 00 C9 C5 */ bl func_80177A5C
/* 8016B09C 00166CFC 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B0A0 00166D00 28 00 00 07 */ cmplwi r0, 7
/* 8016B0A4 00166D04 40 82 00 28 */ bne lbl_8016B0CC
/* 8016B0A8 00166D08 48 24 17 81 */ bl func_803AC828
/* 8016B0AC 00166D0C 38 80 00 07 */ li r4, 7
/* 8016B0B0 00166D10 48 24 2C 31 */ bl func_803ADCE0
/* 8016B0B4 00166D14 48 00 00 18 */ b lbl_8016B0CC
lbl_8016B0B8:
/* 8016B0B8 00166D18 88 D0 00 0D */ lbz r6, 0xd(r16)
/* 8016B0BC 00166D1C 56 63 07 FE */ clrlwi r3, r19, 0x1f
/* 8016B0C0 00166D20 57 25 04 3E */ clrlwi r5, r25, 0x10
/* 8016B0C4 00166D24 38 80 00 09 */ li r4, 9
/* 8016B0C8 00166D28 4B EF 26 C5 */ bl func_8005D78C
lbl_8016B0CC:
/* 8016B0CC 00166D2C 3A 20 FF FF */ li r17, -1
/* 8016B0D0 00166D30 48 00 01 38 */ b lbl_8016B208
lbl_8016B0D4:
/* 8016B0D4 00166D34 88 9A 00 1A */ lbz r4, 0x1a(r26)
/* 8016B0D8 00166D38 54 80 07 7B */ rlwinm. r0, r4, 0, 0x1d, 0x1d
/* 8016B0DC 00166D3C 40 82 00 5C */ bne lbl_8016B138
/* 8016B0E0 00166D40 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B0E4 00166D44 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016B0E8 00166D48 41 82 00 50 */ beq lbl_8016B138
/* 8016B0EC 00166D4C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B0F0 00166D50 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016B0F4 00166D54 41 82 00 30 */ beq lbl_8016B124
/* 8016B0F8 00166D58 56 60 07 FE */ clrlwi r0, r19, 0x1f
/* 8016B0FC 00166D5C 7D C0 00 30 */ slw r0, r14, r0
/* 8016B100 00166D60 7C 80 00 78 */ andc r0, r4, r0
/* 8016B104 00166D64 54 00 06 79 */ rlwinm. r0, r0, 0, 0x19, 0x1c
/* 8016B108 00166D68 40 82 00 30 */ bne lbl_8016B138
/* 8016B10C 00166D6C 4B EE D2 E9 */ bl func_800583F4
/* 8016B110 00166D70 4B EE D2 F9 */ bl func_80058408
/* 8016B114 00166D74 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B118 00166D78 7C 00 D8 38 */ and r0, r0, r27
/* 8016B11C 00166D7C 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B120 00166D80 48 00 00 18 */ b lbl_8016B138
lbl_8016B124:
/* 8016B124 00166D84 4B EE D2 D1 */ bl func_800583F4
/* 8016B128 00166D88 4B EE D2 E1 */ bl func_80058408
/* 8016B12C 00166D8C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B130 00166D90 7C 00 D8 38 */ and r0, r0, r27
/* 8016B134 00166D94 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016B138:
/* 8016B138 00166D98 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B13C 00166D9C 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14
/* 8016B140 00166DA0 41 82 00 5C */ beq lbl_8016B19C
/* 8016B144 00166DA4 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 8016B148 00166DA8 56 70 07 FE */ clrlwi r16, r19, 0x1f
/* 8016B14C 00166DAC 41 82 00 08 */ beq lbl_8016B154
/* 8016B150 00166DB0 7E 70 9B 78 */ mr r16, r19
lbl_8016B154:
/* 8016B154 00166DB4 56 03 06 3E */ clrlwi r3, r16, 0x18
/* 8016B158 00166DB8 38 80 00 00 */ li r4, 0
/* 8016B15C 00166DBC 48 00 CA 79 */ bl func_80177BD4
/* 8016B160 00166DC0 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016B164 00166DC4 54 00 06 79 */ rlwinm. r0, r0, 0, 0x19, 0x1c
/* 8016B168 00166DC8 41 82 00 A0 */ beq lbl_8016B208
/* 8016B16C 00166DCC 7E 03 83 78 */ mr r3, r16
/* 8016B170 00166DD0 48 00 2A 65 */ bl func_8016DBD4
/* 8016B174 00166DD4 7E 03 83 78 */ mr r3, r16
/* 8016B178 00166DD8 38 80 00 09 */ li r4, 9
/* 8016B17C 00166DDC 48 00 CA 61 */ bl func_80177BDC
/* 8016B180 00166DE0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B184 00166DE4 28 00 00 07 */ cmplwi r0, 7
/* 8016B188 00166DE8 40 82 00 80 */ bne lbl_8016B208
/* 8016B18C 00166DEC 48 24 16 9D */ bl func_803AC828
/* 8016B190 00166DF0 38 80 00 07 */ li r4, 7
/* 8016B194 00166DF4 48 24 2B 4D */ bl func_803ADCE0
/* 8016B198 00166DF8 48 00 00 70 */ b lbl_8016B208
lbl_8016B19C:
/* 8016B19C 00166DFC 54 A4 03 18 */ rlwinm r4, r5, 0, 0xc, 0xc
/* 8016B1A0 00166E00 50 A4 04 E6 */ rlwimi r4, r5, 0, 0x13, 0x13
/* 8016B1A4 00166E04 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016B1A8 00166E08 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016B1AC 00166E0C 40 82 00 2C */ bne lbl_8016B1D8
/* 8016B1B0 00166E10 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016B1B4 00166E14 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016B1B8 00166E18 40 82 00 20 */ bne lbl_8016B1D8
/* 8016B1BC 00166E1C 48 00 17 59 */ bl func_8016C914
/* 8016B1C0 00166E20 80 0D 9E E8 */ lwz r0, lbl_8063F1A8-_SDA_BASE_(r13)
/* 8016B1C4 00166E24 2C 00 00 00 */ cmpwi r0, 0
/* 8016B1C8 00166E28 41 82 00 40 */ beq lbl_8016B208
/* 8016B1CC 00166E2C 93 ED 9E E8 */ stw r31, lbl_8063F1A8-_SDA_BASE_(r13)
/* 8016B1D0 00166E30 93 0D 9E EC */ stw r24, lbl_8063F1AC-_SDA_BASE_(r13)
/* 8016B1D4 00166E34 48 00 00 34 */ b lbl_8016B208
lbl_8016B1D8:
/* 8016B1D8 00166E38 56 70 07 FE */ clrlwi r16, r19, 0x1f
/* 8016B1DC 00166E3C 38 80 00 0B */ li r4, 0xb
/* 8016B1E0 00166E40 7E 03 83 78 */ mr r3, r16
/* 8016B1E4 00166E44 38 A0 00 0F */ li r5, 0xf
/* 8016B1E8 00166E48 38 C0 00 00 */ li r6, 0
/* 8016B1EC 00166E4C 4B EF 25 A1 */ bl func_8005D78C
lbl_8016B1F0:
/* 8016B1F0 00166E50 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016B1F4 00166E54 48 0B 93 95 */ bl func_80224588
/* 8016B1F8 00166E58 7E 03 83 78 */ mr r3, r16
/* 8016B1FC 00166E5C 4B EF 3A 25 */ bl func_8005EC20
/* 8016B200 00166E60 28 03 F5 FA */ cmplwi r3, 0xf5fa
/* 8016B204 00166E64 40 82 FF EC */ bne lbl_8016B1F0
lbl_8016B208:
/* 8016B208 00166E68 2C 11 00 00 */ cmpwi r17, 0
/* 8016B20C 00166E6C 40 80 00 18 */ bge lbl_8016B224
/* 8016B210 00166E70 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B214 00166E74 7C 80 AA 14 */ add r4, r0, r21
/* 8016B218 00166E78 38 00 00 FD */ li r0, 0xfd
/* 8016B21C 00166E7C 90 04 00 10 */ stw r0, 0x10(r4)
/* 8016B220 00166E80 48 00 00 E0 */ b lbl_8016B300
lbl_8016B224:
/* 8016B224 00166E84 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B228 00166E88 7E 24 A9 2E */ stwx r17, r4, r21
/* 8016B22C 00166E8C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B230 00166E90 7C 80 AA 14 */ add r4, r0, r21
/* 8016B234 00166E94 93 A4 00 10 */ stw r29, 0x10(r4)
/* 8016B238 00166E98 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13)
/* 8016B23C 00166E9C 2C 00 00 00 */ cmpwi r0, 0
/* 8016B240 00166EA0 41 82 00 38 */ beq lbl_8016B278
/* 8016B244 00166EA4 56 60 07 FF */ clrlwi. r0, r19, 0x1f
/* 8016B248 00166EA8 40 82 00 30 */ bne lbl_8016B278
/* 8016B24C 00166EAC 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B250 00166EB0 93 84 00 04 */ stw r28, 4(r4)
/* 8016B254 00166EB4 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B258 00166EB8 93 A4 00 14 */ stw r29, 0x14(r4)
/* 8016B25C 00166EBC 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B260 00166EC0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016B264 00166EC4 41 82 00 14 */ beq lbl_8016B278
/* 8016B268 00166EC8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B26C 00166ECC 93 84 00 0C */ stw r28, 0xc(r4)
/* 8016B270 00166ED0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B274 00166ED4 93 A4 00 1C */ stw r29, 0x1c(r4)
lbl_8016B278:
/* 8016B278 00166ED8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B27C 00166EDC 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016B280 00166EE0 41 82 00 44 */ beq lbl_8016B2C4
/* 8016B284 00166EE4 38 60 00 09 */ li r3, 9
/* 8016B288 00166EE8 48 01 11 F5 */ bl func_8017C47C
/* 8016B28C 00166EEC 28 14 F2 00 */ cmplwi r20, 0xf200
/* 8016B290 00166EF0 93 ED 9E CC */ stw r31, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016B294 00166EF4 40 82 00 20 */ bne lbl_8016B2B4
/* 8016B298 00166EF8 2C 11 00 FF */ cmpwi r17, 0xff
/* 8016B29C 00166EFC 41 82 00 18 */ beq lbl_8016B2B4
/* 8016B2A0 00166F00 38 60 00 00 */ li r3, 0
/* 8016B2A4 00166F04 38 80 00 11 */ li r4, 0x11
/* 8016B2A8 00166F08 38 A0 00 0F */ li r5, 0xf
/* 8016B2AC 00166F0C 38 C0 00 00 */ li r6, 0
/* 8016B2B0 00166F10 4B EF 24 DD */ bl func_8005D78C
lbl_8016B2B4:
/* 8016B2B4 00166F14 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B2B8 00166F18 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016B2BC 00166F1C 41 82 00 08 */ beq lbl_8016B2C4
/* 8016B2C0 00166F20 4B EE D2 01 */ bl func_800584C0
lbl_8016B2C4:
/* 8016B2C4 00166F24 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B2C8 00166F28 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016B2CC 00166F2C 41 82 00 34 */ beq lbl_8016B300
/* 8016B2D0 00166F30 28 14 F3 00 */ cmplwi r20, 0xf300
/* 8016B2D4 00166F34 40 82 00 2C */ bne lbl_8016B300
/* 8016B2D8 00166F38 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016B2DC 00166F3C 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8016B2E0 00166F40 41 82 00 20 */ beq lbl_8016B300
/* 8016B2E4 00166F44 38 60 00 83 */ li r3, 0x83
/* 8016B2E8 00166F48 38 80 00 00 */ li r4, 0
/* 8016B2EC 00166F4C 38 A0 00 00 */ li r5, 0
/* 8016B2F0 00166F50 48 00 29 21 */ bl func_8016DC10
/* 8016B2F4 00166F54 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016B2F8 00166F58 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8016B2FC 00166F5C 98 1A 00 1A */ stb r0, 0x1a(r26)
lbl_8016B300:
/* 8016B300 00166F60 3A 73 00 01 */ addi r19, r19, 1
/* 8016B304 00166F64 3A B5 00 04 */ addi r21, r21, 4
/* 8016B308 00166F68 2C 13 00 04 */ cmpwi r19, 4
/* 8016B30C 00166F6C 41 80 F9 CC */ blt lbl_8016ACD8
/* 8016B310 00166F70 48 00 0A 88 */ b lbl_8016BD98
lbl_8016B314:
/* 8016B314 00166F74 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B318 00166F78 88 9A 00 1A */ lbz r4, 0x1a(r26)
/* 8016B31C 00166F7C 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016B320 00166F80 60 80 00 01 */ ori r0, r4, 1
/* 8016B324 00166F84 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016B328 00166F88 41 82 00 10 */ beq lbl_8016B338
/* 8016B32C 00166F8C 38 60 00 00 */ li r3, 0
/* 8016B330 00166F90 48 01 01 F5 */ bl func_8017B524
/* 8016B334 00166F94 48 00 2A A5 */ bl func_8016DDD8
lbl_8016B338:
/* 8016B338 00166F98 48 25 DD D9 */ bl func_803C9110
/* 8016B33C 00166F9C 38 63 00 01 */ addi r3, r3, 1
/* 8016B340 00166FA0 48 00 47 05 */ bl func_8016FA44
/* 8016B344 00166FA4 48 00 15 D1 */ bl func_8016C914
/* 8016B348 00166FA8 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B34C 00166FAC 88 9A 00 1A */ lbz r4, 0x1a(r26)
/* 8016B350 00166FB0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016B354 00166FB4 54 80 07 B8 */ rlwinm r0, r4, 0, 0x1e, 0x1c
/* 8016B358 00166FB8 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016B35C 00166FBC 41 82 00 1C */ beq lbl_8016B378
/* 8016B360 00166FC0 4B EE D0 95 */ bl func_800583F4
/* 8016B364 00166FC4 4B EE D0 A5 */ bl func_80058408
/* 8016B368 00166FC8 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B36C 00166FCC 38 00 F9 FD */ li r0, -1539
/* 8016B370 00166FD0 7C 80 00 38 */ and r0, r4, r0
/* 8016B374 00166FD4 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016B378:
/* 8016B378 00166FD8 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B37C 00166FDC 54 80 07 FF */ clrlwi. r0, r4, 0x1f
/* 8016B380 00166FE0 41 82 0A 18 */ beq lbl_8016BD98
/* 8016B384 00166FE4 54 80 07 2E */ rlwinm r0, r4, 0, 0x1c, 0x17
/* 8016B388 00166FE8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B38C 00166FEC 48 00 0A 0C */ b lbl_8016BD98
lbl_8016B390:
/* 8016B390 00166FF0 3A 20 00 00 */ li r17, 0
/* 8016B394 00166FF4 3A 00 00 00 */ li r16, 0
lbl_8016B398:
/* 8016B398 00166FF8 80 CD 9F 08 */ lwz r6, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B39C 00166FFC 7C 86 82 14 */ add r4, r6, r16
/* 8016B3A0 00167000 80 A4 00 60 */ lwz r5, 0x60(r4)
/* 8016B3A4 00167004 88 05 00 00 */ lbz r0, 0(r5)
/* 8016B3A8 00167008 2C 00 00 00 */ cmpwi r0, 0
/* 8016B3AC 0016700C 41 82 01 6C */ beq lbl_8016B518
/* 8016B3B0 00167010 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B3B4 00167014 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8016B3B8 00167018 41 82 00 5C */ beq lbl_8016B414
/* 8016B3BC 0016701C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B3C0 00167020 54 00 06 37 */ rlwinm. r0, r0, 0, 0x18, 0x1b
/* 8016B3C4 00167024 40 82 01 54 */ bne lbl_8016B518
/* 8016B3C8 00167028 80 66 00 70 */ lwz r3, 0x70(r6)
/* 8016B3CC 0016702C 38 85 00 28 */ addi r4, r5, 0x28
/* 8016B3D0 00167030 38 A0 01 04 */ li r5, 0x104
/* 8016B3D4 00167034 48 00 BC AD */ bl func_80177080
/* 8016B3D8 00167038 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B3DC 0016703C 56 24 06 3E */ clrlwi r4, r17, 0x18
/* 8016B3E0 00167040 48 25 DE E9 */ bl func_803C92C8
/* 8016B3E4 00167044 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B3E8 00167048 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8016B3EC 0016704C 38 A0 00 04 */ li r5, 4
/* 8016B3F0 00167050 80 84 00 70 */ lwz r4, 0x70(r4)
/* 8016B3F4 00167054 48 00 C6 55 */ bl func_80177A48
/* 8016B3F8 00167058 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B3FC 0016705C 28 00 00 07 */ cmplwi r0, 7
/* 8016B400 00167060 40 82 01 18 */ bne lbl_8016B518
/* 8016B404 00167064 48 24 14 25 */ bl func_803AC828
/* 8016B408 00167068 38 80 00 07 */ li r4, 7
/* 8016B40C 0016706C 48 24 28 D5 */ bl func_803ADCE0
/* 8016B410 00167070 48 00 01 08 */ b lbl_8016B518
lbl_8016B414:
/* 8016B414 00167074 54 80 04 A5 */ rlwinm. r0, r4, 0, 0x12, 0x12
/* 8016B418 00167078 41 82 00 38 */ beq lbl_8016B450
/* 8016B41C 0016707C 56 20 07 FF */ clrlwi. r0, r17, 0x1f
/* 8016B420 00167080 41 82 00 30 */ beq lbl_8016B450
/* 8016B424 00167084 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B428 00167088 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 8016B42C 0016708C 40 82 00 14 */ bne lbl_8016B440
/* 8016B430 00167090 7E 43 93 78 */ mr r3, r18
/* 8016B434 00167094 7E 24 8B 78 */ mr r4, r17
/* 8016B438 00167098 38 A0 00 00 */ li r5, 0
/* 8016B43C 0016709C 48 00 27 D5 */ bl func_8016DC10
lbl_8016B440:
/* 8016B440 001670A0 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B444 001670A4 7C 80 82 14 */ add r4, r0, r16
/* 8016B448 001670A8 93 A4 00 10 */ stw r29, 0x10(r4)
/* 8016B44C 001670AC 48 00 00 CC */ b lbl_8016B518
lbl_8016B450:
/* 8016B450 001670B0 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B454 001670B4 7F C0 88 30 */ slw r0, r30, r17
/* 8016B458 001670B8 7C 80 00 39 */ and. r0, r4, r0
/* 8016B45C 001670BC 41 82 00 24 */ beq lbl_8016B480
/* 8016B460 001670C0 7E 43 93 78 */ mr r3, r18
/* 8016B464 001670C4 7E 24 8B 78 */ mr r4, r17
/* 8016B468 001670C8 48 00 21 49 */ bl func_8016D5B0
/* 8016B46C 001670CC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B470 001670D0 7C 80 82 14 */ add r4, r0, r16
/* 8016B474 001670D4 80 84 00 60 */ lwz r4, 0x60(r4)
/* 8016B478 001670D8 9B E4 00 00 */ stb r31, 0(r4)
/* 8016B47C 001670DC 48 00 00 AC */ b lbl_8016B528
lbl_8016B480:
/* 8016B480 001670E0 80 66 00 70 */ lwz r3, 0x70(r6)
/* 8016B484 001670E4 38 85 00 28 */ addi r4, r5, 0x28
/* 8016B488 001670E8 38 A0 01 04 */ li r5, 0x104
/* 8016B48C 001670EC 48 00 BB F5 */ bl func_80177080
/* 8016B490 001670F0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B494 001670F4 56 23 07 FE */ clrlwi r3, r17, 0x1f
/* 8016B498 001670F8 80 84 00 70 */ lwz r4, 0x70(r4)
/* 8016B49C 001670FC 4B EF 23 19 */ bl func_8005D7B4
/* 8016B4A0 00167100 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B4A4 00167104 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8016B4A8 00167108 40 82 00 10 */ bne lbl_8016B4B8
/* 8016B4AC 0016710C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B4B0 00167110 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016B4B4 00167114 41 82 00 1C */ beq lbl_8016B4D0
lbl_8016B4B8:
/* 8016B4B8 00167118 3A 60 00 00 */ li r19, 0
lbl_8016B4BC:
/* 8016B4BC 0016711C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016B4C0 00167120 48 0B 90 C9 */ bl func_80224588
/* 8016B4C4 00167124 3A 73 00 01 */ addi r19, r19, 1
/* 8016B4C8 00167128 2C 13 00 32 */ cmpwi r19, 0x32
/* 8016B4CC 0016712C 41 80 FF F0 */ blt lbl_8016B4BC
lbl_8016B4D0:
/* 8016B4D0 00167130 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B4D4 00167134 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016B4D8 00167138 41 82 00 40 */ beq lbl_8016B518
/* 8016B4DC 0016713C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B4E0 00167140 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016B4E4 00167144 41 82 00 08 */ beq lbl_8016B4EC
/* 8016B4E8 00167148 4B EE CF ED */ bl func_800584D4
lbl_8016B4EC:
/* 8016B4EC 0016714C 80 0D 9E CC */ lwz r0, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016B4F0 00167150 2C 00 00 00 */ cmpwi r0, 0
/* 8016B4F4 00167154 40 82 00 14 */ bne lbl_8016B508
/* 8016B4F8 00167158 38 00 00 0C */ li r0, 0xc
/* 8016B4FC 0016715C 93 ED 9E D0 */ stw r31, lbl_8063F190-_SDA_BASE_(r13)
/* 8016B500 00167160 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016B504 00167164 92 2D 9E D4 */ stw r17, lbl_8063F194-_SDA_BASE_(r13)
lbl_8016B508:
/* 8016B508 00167168 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B50C 0016716C 7C 80 82 14 */ add r4, r0, r16
/* 8016B510 00167170 38 00 00 0B */ li r0, 0xb
/* 8016B514 00167174 90 04 00 10 */ stw r0, 0x10(r4)
lbl_8016B518:
/* 8016B518 00167178 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B51C 0016717C 7C 80 82 14 */ add r4, r0, r16
/* 8016B520 00167180 80 84 00 60 */ lwz r4, 0x60(r4)
/* 8016B524 00167184 9B E4 00 00 */ stb r31, 0(r4)
lbl_8016B528:
/* 8016B528 00167188 3A 31 00 01 */ addi r17, r17, 1
/* 8016B52C 0016718C 3A 10 00 04 */ addi r16, r16, 4
/* 8016B530 00167190 2C 11 00 04 */ cmpwi r17, 4
/* 8016B534 00167194 41 80 FE 64 */ blt lbl_8016B398
/* 8016B538 00167198 48 00 08 60 */ b lbl_8016BD98
lbl_8016B53C:
/* 8016B53C 0016719C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016B540 001671A0 48 0B 90 49 */ bl func_80224588
/* 8016B544 001671A4 3A 20 00 00 */ li r17, 0
/* 8016B548 001671A8 3A 00 00 00 */ li r16, 0
lbl_8016B54C:
/* 8016B54C 001671AC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B550 001671B0 7C 80 82 14 */ add r4, r0, r16
/* 8016B554 001671B4 80 04 00 10 */ lwz r0, 0x10(r4)
/* 8016B558 001671B8 2C 00 00 0B */ cmpwi r0, 0xb
/* 8016B55C 001671BC 40 82 01 00 */ bne lbl_8016B65C
/* 8016B560 001671C0 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B564 001671C4 7F C0 88 30 */ slw r0, r30, r17
/* 8016B568 001671C8 7C 80 00 39 */ and. r0, r4, r0
/* 8016B56C 001671CC 41 82 00 14 */ beq lbl_8016B580
/* 8016B570 001671D0 7E 43 93 78 */ mr r3, r18
/* 8016B574 001671D4 7E 24 8B 78 */ mr r4, r17
/* 8016B578 001671D8 48 00 20 39 */ bl func_8016D5B0
/* 8016B57C 001671DC 48 00 00 E0 */ b lbl_8016B65C
lbl_8016B580:
/* 8016B580 001671E0 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B584 001671E4 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8016B588 001671E8 41 82 00 4C */ beq lbl_8016B5D4
/* 8016B58C 001671EC 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c
/* 8016B590 001671F0 56 20 07 FE */ clrlwi r0, r17, 0x1f
/* 8016B594 001671F4 41 82 00 08 */ beq lbl_8016B59C
/* 8016B598 001671F8 7E 20 8B 78 */ mr r0, r17
lbl_8016B59C:
/* 8016B59C 001671FC 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8016B5A0 00167200 4B FF C6 AD */ bl func_80167C4C
/* 8016B5A4 00167204 28 03 00 07 */ cmplwi r3, 7
/* 8016B5A8 00167208 7C 73 1B 78 */ mr r19, r3
/* 8016B5AC 0016720C 40 82 00 10 */ bne lbl_8016B5BC
/* 8016B5B0 00167210 48 24 12 79 */ bl func_803AC828
/* 8016B5B4 00167214 38 80 00 07 */ li r4, 7
/* 8016B5B8 00167218 48 24 27 29 */ bl func_803ADCE0
lbl_8016B5BC:
/* 8016B5BC 0016721C 28 13 F5 FA */ cmplwi r19, 0xf5fa
/* 8016B5C0 00167220 40 82 00 9C */ bne lbl_8016B65C
/* 8016B5C4 00167224 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B5C8 00167228 7C 80 82 14 */ add r4, r0, r16
/* 8016B5CC 0016722C 93 A4 00 10 */ stw r29, 0x10(r4)
/* 8016B5D0 00167230 48 00 00 8C */ b lbl_8016B65C
lbl_8016B5D4:
/* 8016B5D4 00167234 56 23 07 FE */ clrlwi r3, r17, 0x1f
/* 8016B5D8 00167238 4B EF 36 49 */ bl func_8005EC20
/* 8016B5DC 0016723C 28 03 F5 FA */ cmplwi r3, 0xf5fa
/* 8016B5E0 00167240 40 82 00 7C */ bne lbl_8016B65C
/* 8016B5E4 00167244 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B5E8 00167248 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 8016B5EC 0016724C 41 82 00 44 */ beq lbl_8016B630
/* 8016B5F0 00167250 80 0D 9E D0 */ lwz r0, lbl_8063F190-_SDA_BASE_(r13)
/* 8016B5F4 00167254 2C 00 00 00 */ cmpwi r0, 0
/* 8016B5F8 00167258 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016B5FC 0016725C 93 ED 9E D0 */ stw r31, lbl_8063F190-_SDA_BASE_(r13)
/* 8016B600 00167260 41 82 00 20 */ beq lbl_8016B620
/* 8016B604 00167264 80 0D 9E D4 */ lwz r0, lbl_8063F194-_SDA_BASE_(r13)
/* 8016B608 00167268 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B60C 0016726C 54 00 10 3A */ slwi r0, r0, 2
/* 8016B610 00167270 80 AD 9E D8 */ lwz r5, lbl_8063F198-_SDA_BASE_(r13)
/* 8016B614 00167274 7C 84 02 14 */ add r4, r4, r0
/* 8016B618 00167278 90 A4 00 10 */ stw r5, 0x10(r4)
/* 8016B61C 0016727C 48 00 00 20 */ b lbl_8016B63C
lbl_8016B620:
/* 8016B620 00167280 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B624 00167284 7C 80 82 14 */ add r4, r0, r16
/* 8016B628 00167288 93 A4 00 10 */ stw r29, 0x10(r4)
/* 8016B62C 0016728C 48 00 00 10 */ b lbl_8016B63C
lbl_8016B630:
/* 8016B630 00167290 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B634 00167294 7C 80 82 14 */ add r4, r0, r16
/* 8016B638 00167298 93 A4 00 10 */ stw r29, 0x10(r4)
lbl_8016B63C:
/* 8016B63C 0016729C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B640 001672A0 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016B644 001672A4 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016B648 001672A8 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016B64C 001672AC 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016B650 001672B0 40 82 00 0C */ bne lbl_8016B65C
/* 8016B654 001672B4 38 11 00 01 */ addi r0, r17, 1
/* 8016B658 001672B8 90 0D 9E F4 */ stw r0, lbl_8063F1B4-_SDA_BASE_(r13)
lbl_8016B65C:
/* 8016B65C 001672BC 3A 31 00 01 */ addi r17, r17, 1
/* 8016B660 001672C0 3A 10 00 04 */ addi r16, r16, 4
/* 8016B664 001672C4 2C 11 00 04 */ cmpwi r17, 4
/* 8016B668 001672C8 41 80 FE E4 */ blt lbl_8016B54C
/* 8016B66C 001672CC 48 00 07 2C */ b lbl_8016BD98
lbl_8016B670:
/* 8016B670 001672D0 3A 20 00 00 */ li r17, 0
lbl_8016B674:
/* 8016B674 001672D4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B678 001672D8 7C 80 8A 14 */ add r4, r0, r17
/* 8016B67C 001672DC 88 04 00 78 */ lbz r0, 0x78(r4)
/* 8016B680 001672E0 2C 00 00 00 */ cmpwi r0, 0
/* 8016B684 001672E4 41 82 00 98 */ beq lbl_8016B71C
/* 8016B688 001672E8 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B68C 001672EC 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14
/* 8016B690 001672F0 41 82 00 0C */ beq lbl_8016B69C
/* 8016B694 001672F4 9B E4 00 78 */ stb r31, 0x78(r4)
/* 8016B698 001672F8 48 00 00 84 */ b lbl_8016B71C
lbl_8016B69C:
/* 8016B69C 001672FC 56 30 07 FF */ clrlwi. r16, r17, 0x1f
/* 8016B6A0 00167300 41 82 00 3C */ beq lbl_8016B6DC
/* 8016B6A4 00167304 54 A0 04 A5 */ rlwinm. r0, r5, 0, 0x12, 0x12
/* 8016B6A8 00167308 41 82 00 34 */ beq lbl_8016B6DC
/* 8016B6AC 0016730C 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B6B0 00167310 7F C0 88 30 */ slw r0, r30, r17
/* 8016B6B4 00167314 7C 80 00 39 */ and. r0, r4, r0
/* 8016B6B8 00167318 40 82 00 14 */ bne lbl_8016B6CC
/* 8016B6BC 0016731C 7E 43 93 78 */ mr r3, r18
/* 8016B6C0 00167320 38 80 00 01 */ li r4, 1
/* 8016B6C4 00167324 38 A0 00 00 */ li r5, 0
/* 8016B6C8 00167328 48 00 25 49 */ bl func_8016DC10
lbl_8016B6CC:
/* 8016B6CC 0016732C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B6D0 00167330 7C 80 8A 14 */ add r4, r0, r17
/* 8016B6D4 00167334 9B E4 00 78 */ stb r31, 0x78(r4)
/* 8016B6D8 00167338 48 00 00 44 */ b lbl_8016B71C
lbl_8016B6DC:
/* 8016B6DC 0016733C 9B E4 00 78 */ stb r31, 0x78(r4)
/* 8016B6E0 00167340 7F C0 88 30 */ slw r0, r30, r17
/* 8016B6E4 00167344 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B6E8 00167348 7C 80 00 39 */ and. r0, r4, r0
/* 8016B6EC 0016734C 40 82 00 30 */ bne lbl_8016B71C
/* 8016B6F0 00167350 7E 03 83 78 */ mr r3, r16
/* 8016B6F4 00167354 38 80 00 0A */ li r4, 0xa
/* 8016B6F8 00167358 38 A0 00 0F */ li r5, 0xf
/* 8016B6FC 0016735C 38 C0 00 00 */ li r6, 0
/* 8016B700 00167360 4B EF 20 8D */ bl func_8005D78C
lbl_8016B704:
/* 8016B704 00167364 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016B708 00167368 48 0B 8E 81 */ bl func_80224588
/* 8016B70C 0016736C 7E 03 83 78 */ mr r3, r16
/* 8016B710 00167370 4B EF 35 11 */ bl func_8005EC20
/* 8016B714 00167374 28 03 F5 FA */ cmplwi r3, 0xf5fa
/* 8016B718 00167378 40 82 FF EC */ bne lbl_8016B704
lbl_8016B71C:
/* 8016B71C 0016737C 3A 31 00 01 */ addi r17, r17, 1
/* 8016B720 00167380 2C 11 00 04 */ cmpwi r17, 4
/* 8016B724 00167384 41 80 FF 50 */ blt lbl_8016B674
/* 8016B728 00167388 48 00 06 70 */ b lbl_8016BD98
lbl_8016B72C:
/* 8016B72C 0016738C 3A 00 00 00 */ li r16, 0
lbl_8016B730:
/* 8016B730 00167390 38 60 50 8A */ li r3, 0x508a
/* 8016B734 00167394 48 0E 4B B1 */ bl func_802502E4
/* 8016B738 00167398 2C 03 00 00 */ cmpwi r3, 0
/* 8016B73C 0016739C 41 82 00 18 */ beq lbl_8016B754
/* 8016B740 001673A0 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016B744 001673A4 48 0B 8E 45 */ bl func_80224588
/* 8016B748 001673A8 3A 10 00 01 */ addi r16, r16, 1
/* 8016B74C 001673AC 2C 10 00 64 */ cmpwi r16, 0x64
/* 8016B750 001673B0 41 80 FF E0 */ blt lbl_8016B730
lbl_8016B754:
/* 8016B754 001673B4 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B758 001673B8 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016B75C 001673BC 41 82 00 08 */ beq lbl_8016B764
/* 8016B760 001673C0 4B EE CC 45 */ bl func_800583A4
lbl_8016B764:
/* 8016B764 001673C4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B768 001673C8 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016B76C 001673CC 41 82 00 7C */ beq lbl_8016B7E8
/* 8016B770 001673D0 48 24 10 B9 */ bl func_803AC828
/* 8016B774 001673D4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B778 001673D8 7C 71 1B 78 */ mr r17, r3
/* 8016B77C 001673DC 3A 00 00 02 */ li r16, 2
/* 8016B780 001673E0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016B784 001673E4 41 82 00 08 */ beq lbl_8016B78C
/* 8016B788 001673E8 3A 00 00 04 */ li r16, 4
lbl_8016B78C:
/* 8016B78C 001673EC 3A 60 00 00 */ li r19, 0
/* 8016B790 001673F0 48 00 00 3C */ b lbl_8016B7CC
lbl_8016B794:
/* 8016B794 001673F4 7E 23 8B 78 */ mr r3, r17
/* 8016B798 001673F8 56 64 06 3E */ clrlwi r4, r19, 0x18
/* 8016B79C 001673FC 38 A0 00 00 */ li r5, 0
/* 8016B7A0 00167400 38 C0 00 00 */ li r6, 0
/* 8016B7A4 00167404 38 E0 00 01 */ li r7, 1
/* 8016B7A8 00167408 48 00 BD D9 */ bl func_80177580
/* 8016B7AC 0016740C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B7B0 00167410 28 00 00 07 */ cmplwi r0, 7
/* 8016B7B4 00167414 40 82 00 14 */ bne lbl_8016B7C8
/* 8016B7B8 00167418 48 24 10 71 */ bl func_803AC828
/* 8016B7BC 0016741C 38 80 00 07 */ li r4, 7
/* 8016B7C0 00167420 48 24 25 21 */ bl func_803ADCE0
/* 8016B7C4 00167424 48 00 00 10 */ b lbl_8016B7D4
lbl_8016B7C8:
/* 8016B7C8 00167428 3A 73 00 01 */ addi r19, r19, 1
lbl_8016B7CC:
/* 8016B7CC 0016742C 7C 13 80 00 */ cmpw r19, r16
/* 8016B7D0 00167430 41 80 FF C4 */ blt lbl_8016B794
lbl_8016B7D4:
/* 8016B7D4 00167434 38 60 00 00 */ li r3, 0
/* 8016B7D8 00167438 38 80 00 0D */ li r4, 0xd
/* 8016B7DC 0016743C 38 A0 00 0F */ li r5, 0xf
/* 8016B7E0 00167440 38 C0 00 00 */ li r6, 0
/* 8016B7E4 00167444 4B EF 1F A9 */ bl func_8005D78C
lbl_8016B7E8:
/* 8016B7E8 00167448 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B7EC 0016744C 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd
/* 8016B7F0 00167450 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12
/* 8016B7F4 00167454 41 82 00 18 */ beq lbl_8016B80C
/* 8016B7F8 00167458 38 60 00 00 */ li r3, 0
/* 8016B7FC 0016745C 38 80 00 12 */ li r4, 0x12
/* 8016B800 00167460 38 A0 00 0F */ li r5, 0xf
/* 8016B804 00167464 38 C0 00 00 */ li r6, 0
/* 8016B808 00167468 4B EF 1F 85 */ bl func_8005D78C
lbl_8016B80C:
/* 8016B80C 0016746C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B810 00167470 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016B814 00167474 41 82 00 14 */ beq lbl_8016B828
/* 8016B818 00167478 7E 43 93 78 */ mr r3, r18
/* 8016B81C 0016747C 38 80 00 01 */ li r4, 1
/* 8016B820 00167480 38 A0 00 00 */ li r5, 0
/* 8016B824 00167484 48 00 23 ED */ bl func_8016DC10
lbl_8016B828:
/* 8016B828 00167488 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B82C 0016748C 88 9A 00 1A */ lbz r4, 0x1a(r26)
/* 8016B830 00167490 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8016B834 00167494 60 80 00 04 */ ori r0, r4, 4
/* 8016B838 00167498 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016B83C 0016749C 41 82 00 3C */ beq lbl_8016B878
/* 8016B840 001674A0 4B EE CD 41 */ bl func_80058580
/* 8016B844 001674A4 4B EE CB 9D */ bl func_800583E0
/* 8016B848 001674A8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B84C 001674AC 80 AD 9E DC */ lwz r5, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B850 001674B0 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016B854 001674B4 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016B858 001674B8 60 A5 00 02 */ ori r5, r5, 2
/* 8016B85C 001674BC 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016B860 001674C0 54 A4 07 2E */ rlwinm r4, r5, 0, 0x1c, 0x17
/* 8016B864 001674C4 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016B868 001674C8 90 8D 9E DC */ stw r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016B86C 001674CC 40 82 00 0C */ bne lbl_8016B878
/* 8016B870 001674D0 60 80 02 00 */ ori r0, r4, 0x200
/* 8016B874 001674D4 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016B878:
/* 8016B878 001674D8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B87C 001674DC 9B E4 00 7C */ stb r31, 0x7c(r4)
/* 8016B880 001674E0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B884 001674E4 9B E4 00 80 */ stb r31, 0x80(r4)
/* 8016B888 001674E8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B88C 001674EC 9B E4 00 7D */ stb r31, 0x7d(r4)
/* 8016B890 001674F0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B894 001674F4 9B E4 00 81 */ stb r31, 0x81(r4)
/* 8016B898 001674F8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B89C 001674FC 9B E4 00 7E */ stb r31, 0x7e(r4)
/* 8016B8A0 00167500 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B8A4 00167504 9B E4 00 82 */ stb r31, 0x82(r4)
/* 8016B8A8 00167508 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B8AC 0016750C 9B E4 00 7F */ stb r31, 0x7f(r4)
/* 8016B8B0 00167510 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B8B4 00167514 9B E4 00 83 */ stb r31, 0x83(r4)
/* 8016B8B8 00167518 38 8D 9E E0 */ addi r4, r13, lbl_8063F1A0-_SDA_BASE_
/* 8016B8BC 0016751C 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016B8C0 00167520 9B E4 00 01 */ stb r31, 1(r4)
/* 8016B8C4 00167524 54 00 07 70 */ rlwinm r0, r0, 0, 0x1d, 0x18
/* 8016B8C8 00167528 98 1A 00 1A */ stb r0, 0x1a(r26)
/* 8016B8CC 0016752C 9B ED 9E E0 */ stb r31, lbl_8063F1A0-_SDA_BASE_(r13)
/* 8016B8D0 00167530 93 ED 9E F0 */ stw r31, lbl_8063F1B0-_SDA_BASE_(r13)
/* 8016B8D4 00167534 93 ED 9E FC */ stw r31, lbl_8063F1BC-_SDA_BASE_(r13)
/* 8016B8D8 00167538 48 00 04 C0 */ b lbl_8016BD98
lbl_8016B8DC:
/* 8016B8DC 0016753C 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016B8E0 00167540 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8016B8E4 00167544 41 82 01 0C */ beq lbl_8016B9F0
/* 8016B8E8 00167548 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c
/* 8016B8EC 0016754C 41 82 00 74 */ beq lbl_8016B960
/* 8016B8F0 00167550 3A 00 00 00 */ li r16, 0
lbl_8016B8F4:
/* 8016B8F4 00167554 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B8F8 00167558 7C 80 82 14 */ add r4, r0, r16
/* 8016B8FC 0016755C 88 04 00 7C */ lbz r0, 0x7c(r4)
/* 8016B900 00167560 28 00 00 01 */ cmplwi r0, 1
/* 8016B904 00167564 40 82 00 4C */ bne lbl_8016B950
/* 8016B908 00167568 56 03 06 3E */ clrlwi r3, r16, 0x18
/* 8016B90C 0016756C 38 80 00 0E */ li r4, 0xe
/* 8016B910 00167570 38 A0 00 00 */ li r5, 0
/* 8016B914 00167574 38 C0 00 00 */ li r6, 0
/* 8016B918 00167578 4B EF 1E 75 */ bl func_8005D78C
/* 8016B91C 0016757C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016B920 00167580 7E 03 83 78 */ mr r3, r16
/* 8016B924 00167584 38 80 00 09 */ li r4, 9
/* 8016B928 00167588 7C A0 82 14 */ add r5, r0, r16
/* 8016B92C 0016758C 99 E5 00 7C */ stb r15, 0x7c(r5)
/* 8016B930 00167590 48 00 C2 AD */ bl func_80177BDC
/* 8016B934 00167594 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B938 00167598 28 00 00 07 */ cmplwi r0, 7
/* 8016B93C 0016759C 40 82 00 14 */ bne lbl_8016B950
/* 8016B940 001675A0 48 24 0E E9 */ bl func_803AC828
/* 8016B944 001675A4 38 80 00 07 */ li r4, 7
/* 8016B948 001675A8 48 24 23 99 */ bl func_803ADCE0
/* 8016B94C 001675AC 48 00 04 4C */ b lbl_8016BD98
lbl_8016B950:
/* 8016B950 001675B0 3A 10 00 01 */ addi r16, r16, 1
/* 8016B954 001675B4 2C 10 00 04 */ cmpwi r16, 4
/* 8016B958 001675B8 41 80 FF 9C */ blt lbl_8016B8F4
/* 8016B95C 001675BC 48 00 04 3C */ b lbl_8016BD98
lbl_8016B960:
/* 8016B960 001675C0 48 00 1E F1 */ bl func_8016D850
/* 8016B964 001675C4 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 8016B968 001675C8 7C 70 1B 78 */ mr r16, r3
/* 8016B96C 001675CC 41 82 00 40 */ beq lbl_8016B9AC
/* 8016B970 001675D0 38 60 00 00 */ li r3, 0
/* 8016B974 001675D4 38 80 00 0E */ li r4, 0xe
/* 8016B978 001675D8 38 A0 00 00 */ li r5, 0
/* 8016B97C 001675DC 38 C0 00 00 */ li r6, 0
/* 8016B980 001675E0 4B EF 1E 0D */ bl func_8005D78C
/* 8016B984 001675E4 38 60 00 00 */ li r3, 0
/* 8016B988 001675E8 38 80 00 09 */ li r4, 9
/* 8016B98C 001675EC 48 00 C2 51 */ bl func_80177BDC
/* 8016B990 001675F0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B994 001675F4 28 00 00 07 */ cmplwi r0, 7
/* 8016B998 001675F8 40 82 00 14 */ bne lbl_8016B9AC
/* 8016B99C 001675FC 48 24 0E 8D */ bl func_803AC828
/* 8016B9A0 00167600 38 80 00 07 */ li r4, 7
/* 8016B9A4 00167604 48 24 23 3D */ bl func_803ADCE0
/* 8016B9A8 00167608 48 00 03 F0 */ b lbl_8016BD98
lbl_8016B9AC:
/* 8016B9AC 0016760C 56 00 07 7B */ rlwinm. r0, r16, 0, 0x1d, 0x1d
/* 8016B9B0 00167610 41 82 03 E8 */ beq lbl_8016BD98
/* 8016B9B4 00167614 38 60 00 01 */ li r3, 1
/* 8016B9B8 00167618 38 80 00 0E */ li r4, 0xe
/* 8016B9BC 0016761C 38 A0 00 00 */ li r5, 0
/* 8016B9C0 00167620 38 C0 00 00 */ li r6, 0
/* 8016B9C4 00167624 4B EF 1D C9 */ bl func_8005D78C
/* 8016B9C8 00167628 38 60 00 01 */ li r3, 1
/* 8016B9CC 0016762C 38 80 00 09 */ li r4, 9
/* 8016B9D0 00167630 48 00 C2 0D */ bl func_80177BDC
/* 8016B9D4 00167634 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016B9D8 00167638 28 00 00 07 */ cmplwi r0, 7
/* 8016B9DC 0016763C 40 82 03 BC */ bne lbl_8016BD98
/* 8016B9E0 00167640 48 24 0E 49 */ bl func_803AC828
/* 8016B9E4 00167644 38 80 00 07 */ li r4, 7
/* 8016B9E8 00167648 48 24 22 F9 */ bl func_803ADCE0
/* 8016B9EC 0016764C 48 00 03 AC */ b lbl_8016BD98
lbl_8016B9F0:
/* 8016B9F0 00167650 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd
/* 8016B9F4 00167654 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12
/* 8016B9F8 00167658 41 82 00 AC */ beq lbl_8016BAA4
/* 8016B9FC 0016765C 48 00 1E 55 */ bl func_8016D850
/* 8016BA00 00167660 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 8016BA04 00167664 7C 70 1B 78 */ mr r16, r3
/* 8016BA08 00167668 41 82 00 70 */ beq lbl_8016BA78
/* 8016BA0C 0016766C 38 60 00 00 */ li r3, 0
/* 8016BA10 00167670 38 80 00 11 */ li r4, 0x11
/* 8016BA14 00167674 38 A0 00 0F */ li r5, 0xf
/* 8016BA18 00167678 38 C0 00 00 */ li r6, 0
/* 8016BA1C 0016767C 4B EF 1D 71 */ bl func_8005D78C
/* 8016BA20 00167680 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BA24 00167684 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016BA28 00167688 41 82 00 34 */ beq lbl_8016BA5C
/* 8016BA2C 0016768C 38 60 00 83 */ li r3, 0x83
/* 8016BA30 00167690 38 80 00 00 */ li r4, 0
/* 8016BA34 00167694 38 A0 00 00 */ li r5, 0
/* 8016BA38 00167698 48 00 21 D9 */ bl func_8016DC10
/* 8016BA3C 0016769C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BA40 001676A0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016BA44 001676A4 41 82 00 18 */ beq lbl_8016BA5C
/* 8016BA48 001676A8 4B EE C9 AD */ bl func_800583F4
/* 8016BA4C 001676AC 4B EE C9 BD */ bl func_80058408
/* 8016BA50 001676B0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BA54 001676B4 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016BA58 001676B8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016BA5C:
/* 8016BA5C 001676BC 80 0D 9E FC */ lwz r0, lbl_8063F1BC-_SDA_BASE_(r13)
/* 8016BA60 001676C0 2C 00 00 00 */ cmpwi r0, 0
/* 8016BA64 001676C4 40 82 00 14 */ bne lbl_8016BA78
/* 8016BA68 001676C8 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BA6C 001676CC 38 80 00 11 */ li r4, 0x11
/* 8016BA70 001676D0 38 A0 00 00 */ li r5, 0
/* 8016BA74 001676D4 48 00 AF 9D */ bl func_80176A10
lbl_8016BA78:
/* 8016BA78 001676D8 56 00 07 7B */ rlwinm. r0, r16, 0, 0x1d, 0x1d
/* 8016BA7C 001676DC 41 82 00 28 */ beq lbl_8016BAA4
/* 8016BA80 001676E0 38 60 00 00 */ li r3, 0
/* 8016BA84 001676E4 38 80 00 13 */ li r4, 0x13
/* 8016BA88 001676E8 38 A0 00 0F */ li r5, 0xf
/* 8016BA8C 001676EC 38 C0 00 00 */ li r6, 0
/* 8016BA90 001676F0 4B EF 1C FD */ bl func_8005D78C
/* 8016BA94 001676F4 38 60 00 87 */ li r3, 0x87
/* 8016BA98 001676F8 38 80 00 00 */ li r4, 0
/* 8016BA9C 001676FC 38 A0 00 00 */ li r5, 0
/* 8016BAA0 00167700 48 00 21 71 */ bl func_8016DC10
lbl_8016BAA4:
/* 8016BAA4 00167704 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BAA8 00167708 54 A4 03 18 */ rlwinm r4, r5, 0, 0xc, 0xc
/* 8016BAAC 0016770C 50 A4 04 E6 */ rlwimi r4, r5, 0, 0x13, 0x13
/* 8016BAB0 00167710 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016BAB4 00167714 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016BAB8 00167718 40 82 01 C8 */ bne lbl_8016BC80
/* 8016BABC 0016771C 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13)
/* 8016BAC0 00167720 2C 00 00 00 */ cmpwi r0, 0
/* 8016BAC4 00167724 40 82 01 BC */ bne lbl_8016BC80
/* 8016BAC8 00167728 54 A0 07 BD */ rlwinm. r0, r5, 0, 0x1e, 0x1e
/* 8016BACC 0016772C 41 82 01 1C */ beq lbl_8016BBE8
/* 8016BAD0 00167730 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BAD4 00167734 88 04 00 80 */ lbz r0, 0x80(r4)
/* 8016BAD8 00167738 28 00 00 01 */ cmplwi r0, 1
/* 8016BADC 0016773C 40 82 00 24 */ bne lbl_8016BB00
/* 8016BAE0 00167740 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BAE4 00167744 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8016BAE8 00167748 40 82 00 10 */ bne lbl_8016BAF8
/* 8016BAEC 0016774C 38 60 00 00 */ li r3, 0
/* 8016BAF0 00167750 38 80 00 00 */ li r4, 0
/* 8016BAF4 00167754 4B EF EC 8D */ bl func_8006A780
lbl_8016BAF8:
/* 8016BAF8 00167758 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BAFC 0016775C 99 E4 00 80 */ stb r15, 0x80(r4)
lbl_8016BB00:
/* 8016BB00 00167760 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BB04 00167764 88 04 00 82 */ lbz r0, 0x82(r4)
/* 8016BB08 00167768 28 00 00 01 */ cmplwi r0, 1
/* 8016BB0C 0016776C 40 82 00 80 */ bne lbl_8016BB8C
/* 8016BB10 00167770 80 0D 9E F0 */ lwz r0, lbl_8063F1B0-_SDA_BASE_(r13)
/* 8016BB14 00167774 2C 00 00 00 */ cmpwi r0, 0
/* 8016BB18 00167778 40 82 00 74 */ bne lbl_8016BB8C
/* 8016BB1C 0016777C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BB20 00167780 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8016BB24 00167784 40 82 00 10 */ bne lbl_8016BB34
/* 8016BB28 00167788 38 60 00 00 */ li r3, 0
/* 8016BB2C 0016778C 38 80 00 01 */ li r4, 1
/* 8016BB30 00167790 4B EF EC 51 */ bl func_8006A780
lbl_8016BB34:
/* 8016BB34 00167794 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BB38 00167798 99 E4 00 82 */ stb r15, 0x82(r4)
/* 8016BB3C 0016779C 93 0D 9E F0 */ stw r24, lbl_8063F1B0-_SDA_BASE_(r13)
/* 8016BB40 001677A0 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BB44 001677A4 88 05 00 81 */ lbz r0, 0x81(r5)
/* 8016BB48 001677A8 2C 00 00 00 */ cmpwi r0, 0
/* 8016BB4C 001677AC 40 82 00 1C */ bne lbl_8016BB68
/* 8016BB50 001677B0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BB54 001677B4 38 80 00 10 */ li r4, 0x10
/* 8016BB58 001677B8 80 A5 00 44 */ lwz r5, 0x44(r5)
/* 8016BB5C 001677BC 48 00 AE B5 */ bl func_80176A10
/* 8016BB60 001677C0 93 0D 9E FC */ stw r24, lbl_8063F1BC-_SDA_BASE_(r13)
/* 8016BB64 001677C4 48 00 00 24 */ b lbl_8016BB88
lbl_8016BB68:
/* 8016BB68 001677C8 88 05 00 83 */ lbz r0, 0x83(r5)
/* 8016BB6C 001677CC 2C 00 00 00 */ cmpwi r0, 0
/* 8016BB70 001677D0 40 82 00 18 */ bne lbl_8016BB88
/* 8016BB74 001677D4 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BB78 001677D8 38 80 00 10 */ li r4, 0x10
/* 8016BB7C 001677DC 80 A5 00 4C */ lwz r5, 0x4c(r5)
/* 8016BB80 001677E0 48 00 AE 91 */ bl func_80176A10
/* 8016BB84 001677E4 93 0D 9E FC */ stw r24, lbl_8063F1BC-_SDA_BASE_(r13)
lbl_8016BB88:
/* 8016BB88 001677E8 93 ED 9E F4 */ stw r31, lbl_8063F1B4-_SDA_BASE_(r13)
lbl_8016BB8C:
/* 8016BB8C 001677EC 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BB90 001677F0 88 04 00 81 */ lbz r0, 0x81(r4)
/* 8016BB94 001677F4 28 00 00 01 */ cmplwi r0, 1
/* 8016BB98 001677F8 40 82 00 20 */ bne lbl_8016BBB8
/* 8016BB9C 001677FC 99 E4 00 81 */ stb r15, 0x81(r4)
/* 8016BBA0 00167800 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BBA4 00167804 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 8016BBA8 00167808 40 82 00 10 */ bne lbl_8016BBB8
/* 8016BBAC 0016780C 38 60 00 01 */ li r3, 1
/* 8016BBB0 00167810 38 80 00 00 */ li r4, 0
/* 8016BBB4 00167814 4B EF EB CD */ bl func_8006A780
lbl_8016BBB8:
/* 8016BBB8 00167818 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BBBC 0016781C 88 04 00 83 */ lbz r0, 0x83(r4)
/* 8016BBC0 00167820 28 00 00 01 */ cmplwi r0, 1
/* 8016BBC4 00167824 40 82 00 BC */ bne lbl_8016BC80
/* 8016BBC8 00167828 99 E4 00 83 */ stb r15, 0x83(r4)
/* 8016BBCC 0016782C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BBD0 00167830 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 8016BBD4 00167834 40 82 00 AC */ bne lbl_8016BC80
/* 8016BBD8 00167838 38 60 00 01 */ li r3, 1
/* 8016BBDC 0016783C 38 80 00 01 */ li r4, 1
/* 8016BBE0 00167840 4B EF EB A1 */ bl func_8006A780
/* 8016BBE4 00167844 48 00 00 9C */ b lbl_8016BC80
lbl_8016BBE8:
/* 8016BBE8 00167848 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BBEC 0016784C 88 04 00 80 */ lbz r0, 0x80(r4)
/* 8016BBF0 00167850 28 00 00 01 */ cmplwi r0, 1
/* 8016BBF4 00167854 40 82 00 5C */ bne lbl_8016BC50
/* 8016BBF8 00167858 80 0D 9E F0 */ lwz r0, lbl_8063F1B0-_SDA_BASE_(r13)
/* 8016BBFC 0016785C 2C 00 00 00 */ cmpwi r0, 0
/* 8016BC00 00167860 40 82 00 50 */ bne lbl_8016BC50
/* 8016BC04 00167864 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BC08 00167868 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8016BC0C 0016786C 40 82 00 10 */ bne lbl_8016BC1C
/* 8016BC10 00167870 38 60 00 00 */ li r3, 0
/* 8016BC14 00167874 38 80 00 01 */ li r4, 1
/* 8016BC18 00167878 4B EF EB 69 */ bl func_8006A780
lbl_8016BC1C:
/* 8016BC1C 0016787C 93 0D 9E F0 */ stw r24, lbl_8063F1B0-_SDA_BASE_(r13)
/* 8016BC20 00167880 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BC24 00167884 99 E4 00 80 */ stb r15, 0x80(r4)
/* 8016BC28 00167888 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BC2C 0016788C 88 05 00 81 */ lbz r0, 0x81(r5)
/* 8016BC30 00167890 2C 00 00 00 */ cmpwi r0, 0
/* 8016BC34 00167894 40 82 00 18 */ bne lbl_8016BC4C
/* 8016BC38 00167898 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BC3C 0016789C 38 80 00 10 */ li r4, 0x10
/* 8016BC40 001678A0 80 A5 00 44 */ lwz r5, 0x44(r5)
/* 8016BC44 001678A4 48 00 AD CD */ bl func_80176A10
/* 8016BC48 001678A8 93 0D 9E FC */ stw r24, lbl_8063F1BC-_SDA_BASE_(r13)
lbl_8016BC4C:
/* 8016BC4C 001678AC 93 ED 9E F4 */ stw r31, lbl_8063F1B4-_SDA_BASE_(r13)
lbl_8016BC50:
/* 8016BC50 001678B0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BC54 001678B4 88 04 00 81 */ lbz r0, 0x81(r4)
/* 8016BC58 001678B8 28 00 00 01 */ cmplwi r0, 1
/* 8016BC5C 001678BC 40 82 00 24 */ bne lbl_8016BC80
/* 8016BC60 001678C0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BC64 001678C4 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 8016BC68 001678C8 40 82 00 10 */ bne lbl_8016BC78
/* 8016BC6C 001678CC 38 60 00 01 */ li r3, 1
/* 8016BC70 001678D0 38 80 00 01 */ li r4, 1
/* 8016BC74 001678D4 4B EF EB 0D */ bl func_8006A780
lbl_8016BC78:
/* 8016BC78 001678D8 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016BC7C 001678DC 99 E4 00 81 */ stb r15, 0x81(r4)
lbl_8016BC80:
/* 8016BC80 001678E0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BC84 001678E4 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8016BC88 001678E8 41 82 01 10 */ beq lbl_8016BD98
/* 8016BC8C 001678EC 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13)
/* 8016BC90 001678F0 2C 00 00 00 */ cmpwi r0, 0
/* 8016BC94 001678F4 40 82 01 04 */ bne lbl_8016BD98
/* 8016BC98 001678F8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BC9C 001678FC 54 04 03 18 */ rlwinm r4, r0, 0, 0xc, 0xc
/* 8016BCA0 00167900 50 04 04 E6 */ rlwimi r4, r0, 0, 0x13, 0x13
/* 8016BCA4 00167904 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016BCA8 00167908 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016BCAC 0016790C 40 82 00 EC */ bne lbl_8016BD98
/* 8016BCB0 00167910 48 00 1B A1 */ bl func_8016D850
/* 8016BCB4 00167914 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 8016BCB8 00167918 41 82 00 E0 */ beq lbl_8016BD98
/* 8016BCBC 0016791C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BCC0 00167920 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8016BCC4 00167924 41 82 00 18 */ beq lbl_8016BCDC
/* 8016BCC8 00167928 38 60 00 00 */ li r3, 0
/* 8016BCCC 0016792C 38 80 00 15 */ li r4, 0x15
/* 8016BCD0 00167930 38 A0 00 0F */ li r5, 0xf
/* 8016BCD4 00167934 38 C0 00 00 */ li r6, 0
/* 8016BCD8 00167938 4B EF 1A B5 */ bl func_8005D78C
lbl_8016BCDC:
/* 8016BCDC 0016793C 4B EE C8 A5 */ bl func_80058580
/* 8016BCE0 00167940 4B EE C7 01 */ bl func_800583E0
/* 8016BCE4 00167944 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BCE8 00167948 60 00 04 02 */ ori r0, r0, 0x402
/* 8016BCEC 0016794C 54 00 05 EA */ rlwinm r0, r0, 0, 0x17, 0x15
/* 8016BCF0 00167950 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BCF4 00167954 48 00 00 A4 */ b lbl_8016BD98
lbl_8016BCF8:
/* 8016BCF8 00167958 38 60 00 00 */ li r3, 0
/* 8016BCFC 0016795C 48 00 16 65 */ bl func_8016D360
/* 8016BD00 00167960 48 00 00 98 */ b lbl_8016BD98
lbl_8016BD04:
/* 8016BD04 00167964 38 60 00 00 */ li r3, 0
/* 8016BD08 00167968 48 00 F8 1D */ bl func_8017B524
/* 8016BD0C 0016796C 54 65 07 BE */ clrlwi r5, r3, 0x1e
/* 8016BD10 00167970 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BD14 00167974 38 80 00 11 */ li r4, 0x11
/* 8016BD18 00167978 48 00 AC F9 */ bl func_80176A10
/* 8016BD1C 0016797C 38 60 00 01 */ li r3, 1
/* 8016BD20 00167980 48 00 F8 05 */ bl func_8017B524
/* 8016BD24 00167984 2C 03 00 00 */ cmpwi r3, 0
/* 8016BD28 00167988 41 82 00 70 */ beq lbl_8016BD98
/* 8016BD2C 0016798C 38 60 00 00 */ li r3, 0
/* 8016BD30 00167990 38 80 00 12 */ li r4, 0x12
/* 8016BD34 00167994 38 A0 00 0F */ li r5, 0xf
/* 8016BD38 00167998 38 C0 00 00 */ li r6, 0
/* 8016BD3C 0016799C 4B EF 1A 51 */ bl func_8005D78C
/* 8016BD40 001679A0 48 00 00 58 */ b lbl_8016BD98
lbl_8016BD44:
/* 8016BD44 001679A4 38 60 00 00 */ li r3, 0
/* 8016BD48 001679A8 38 80 00 13 */ li r4, 0x13
/* 8016BD4C 001679AC 38 A0 00 0F */ li r5, 0xf
/* 8016BD50 001679B0 38 C0 00 00 */ li r6, 0
/* 8016BD54 001679B4 4B EF 1A 39 */ bl func_8005D78C
/* 8016BD58 001679B8 48 00 00 40 */ b lbl_8016BD98
lbl_8016BD5C:
/* 8016BD5C 001679BC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BD60 001679C0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016BD64 001679C4 41 82 00 18 */ beq lbl_8016BD7C
/* 8016BD68 001679C8 4B EE C6 8D */ bl func_800583F4
/* 8016BD6C 001679CC 4B EE C6 9D */ bl func_80058408
/* 8016BD70 001679D0 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BD74 001679D4 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016BD78 001679D8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016BD7C:
/* 8016BD7C 001679DC 80 0D 9E FC */ lwz r0, lbl_8063F1BC-_SDA_BASE_(r13)
/* 8016BD80 001679E0 2C 00 00 00 */ cmpwi r0, 0
/* 8016BD84 001679E4 40 82 00 14 */ bne lbl_8016BD98
/* 8016BD88 001679E8 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BD8C 001679EC 38 80 00 11 */ li r4, 0x11
/* 8016BD90 001679F0 38 A0 00 00 */ li r5, 0
/* 8016BD94 001679F4 48 00 AC 7D */ bl func_80176A10
lbl_8016BD98:
/* 8016BD98 001679F8 48 24 0A 91 */ bl func_803AC828
/* 8016BD9C 001679FC 48 24 1F 3D */ bl func_803ADCD8
/* 8016BDA0 00167A00 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016BDA4 00167A04 28 00 00 07 */ cmplwi r0, 7
/* 8016BDA8 00167A08 40 82 00 A4 */ bne lbl_8016BE4C
/* 8016BDAC 00167A0C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BDB0 00167A10 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016BDB4 00167A14 41 82 00 08 */ beq lbl_8016BDBC
/* 8016BDB8 00167A18 4B EE C6 51 */ bl func_80058408
lbl_8016BDBC:
/* 8016BDBC 00167A1C 3C 80 80 49 */ lis r4, lbl_8048CDB4@ha
/* 8016BDC0 00167A20 38 84 CD B4 */ addi r4, r4, lbl_8048CDB4@l
/* 8016BDC4 00167A24 88 04 00 1A */ lbz r0, 0x1a(r4)
/* 8016BDC8 00167A28 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016BDCC 00167A2C 41 82 00 08 */ beq lbl_8016BDD4
/* 8016BDD0 00167A30 48 00 0B 45 */ bl func_8016C914
lbl_8016BDD4:
/* 8016BDD4 00167A34 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BDD8 00167A38 38 80 00 00 */ li r4, 0
/* 8016BDDC 00167A3C 48 00 AD 39 */ bl func_80176B14
/* 8016BDE0 00167A40 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BDE4 00167A44 48 00 AE 21 */ bl func_80176C04
/* 8016BDE8 00167A48 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BDEC 00167A4C 48 00 AD DD */ bl func_80176BC8
/* 8016BDF0 00167A50 48 00 00 0C */ b lbl_8016BDFC
lbl_8016BDF4:
/* 8016BDF4 00167A54 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016BDF8 00167A58 48 0B 87 91 */ bl func_80224588
lbl_8016BDFC:
/* 8016BDFC 00167A5C 4B EB C0 D1 */ bl func_80027ECC
/* 8016BE00 00167A60 2C 03 00 00 */ cmpwi r3, 0
/* 8016BE04 00167A64 40 82 FF F0 */ bne lbl_8016BDF4
/* 8016BE08 00167A68 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BE0C 00167A6C 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd
/* 8016BE10 00167A70 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12
/* 8016BE14 00167A74 41 82 00 1C */ beq lbl_8016BE30
/* 8016BE18 00167A78 38 60 00 00 */ li r3, 0
/* 8016BE1C 00167A7C 38 80 00 14 */ li r4, 0x14
/* 8016BE20 00167A80 38 A0 00 0F */ li r5, 0xf
/* 8016BE24 00167A84 38 C0 00 00 */ li r6, 0
/* 8016BE28 00167A88 4B EF 19 65 */ bl func_8005D78C
/* 8016BE2C 00167A8C 48 00 00 18 */ b lbl_8016BE44
lbl_8016BE30:
/* 8016BE30 00167A90 38 60 00 00 */ li r3, 0
/* 8016BE34 00167A94 38 80 00 10 */ li r4, 0x10
/* 8016BE38 00167A98 38 A0 00 00 */ li r5, 0
/* 8016BE3C 00167A9C 38 C0 00 00 */ li r6, 0
/* 8016BE40 00167AA0 4B EF 19 4D */ bl func_8005D78C
lbl_8016BE44:
/* 8016BE44 00167AA4 38 60 00 00 */ li r3, 0
/* 8016BE48 00167AA8 48 00 02 A0 */ b lbl_8016C0E8
lbl_8016BE4C:
/* 8016BE4C 00167AAC 80 61 00 08 */ lwz r3, 8(r1)
/* 8016BE50 00167AB0 4B EC 9F E9 */ bl func_80035E38
/* 8016BE54 00167AB4 2C 03 00 05 */ cmpwi r3, 5
/* 8016BE58 00167AB8 40 82 02 7C */ bne lbl_8016C0D4
/* 8016BE5C 00167ABC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BE60 00167AC0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016BE64 00167AC4 41 82 00 0C */ beq lbl_8016BE70
/* 8016BE68 00167AC8 4B EE C5 8D */ bl func_800583F4
/* 8016BE6C 00167ACC 4B EE C5 9D */ bl func_80058408
lbl_8016BE70:
/* 8016BE70 00167AD0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BE74 00167AD4 38 80 00 00 */ li r4, 0
/* 8016BE78 00167AD8 48 00 AC 9D */ bl func_80176B14
/* 8016BE7C 00167ADC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016BE80 00167AE0 48 00 AD 85 */ bl func_80176C04
/* 8016BE84 00167AE4 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016BE88 00167AE8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016BE8C 00167AEC 41 82 00 08 */ beq lbl_8016BE94
/* 8016BE90 00167AF0 48 00 0A 85 */ bl func_8016C914
lbl_8016BE94:
/* 8016BE94 00167AF4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BE98 00167AF8 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016BE9C 00167AFC 41 82 00 50 */ beq lbl_8016BEEC
/* 8016BEA0 00167B00 38 60 00 00 */ li r3, 0
/* 8016BEA4 00167B04 38 80 00 0F */ li r4, 0xf
/* 8016BEA8 00167B08 38 A0 00 00 */ li r5, 0
/* 8016BEAC 00167B0C 4B FF BD 01 */ bl func_80167BAC
/* 8016BEB0 00167B10 38 60 00 01 */ li r3, 1
/* 8016BEB4 00167B14 38 80 00 0F */ li r4, 0xf
/* 8016BEB8 00167B18 38 A0 00 00 */ li r5, 0
/* 8016BEBC 00167B1C 4B FF BC F1 */ bl func_80167BAC
/* 8016BEC0 00167B20 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BEC4 00167B24 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016BEC8 00167B28 41 82 00 24 */ beq lbl_8016BEEC
/* 8016BECC 00167B2C 38 60 00 02 */ li r3, 2
/* 8016BED0 00167B30 38 80 00 0F */ li r4, 0xf
/* 8016BED4 00167B34 38 A0 00 00 */ li r5, 0
/* 8016BED8 00167B38 4B FF BC D5 */ bl func_80167BAC
/* 8016BEDC 00167B3C 38 60 00 03 */ li r3, 3
/* 8016BEE0 00167B40 38 80 00 0F */ li r4, 0xf
/* 8016BEE4 00167B44 38 A0 00 00 */ li r5, 0
/* 8016BEE8 00167B48 4B FF BC C5 */ bl func_80167BAC
lbl_8016BEEC:
/* 8016BEEC 00167B4C 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016BEF0 00167B50 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8016BEF4 00167B54 40 82 00 20 */ bne lbl_8016BF14
/* 8016BEF8 00167B58 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd
/* 8016BEFC 00167B5C 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12
/* 8016BF00 00167B60 40 82 00 14 */ bne lbl_8016BF14
/* 8016BF04 00167B64 54 80 04 E7 */ rlwinm. r0, r4, 0, 0x13, 0x13
/* 8016BF08 00167B68 40 82 00 0C */ bne lbl_8016BF14
/* 8016BF0C 00167B6C 48 24 09 1D */ bl func_803AC828
/* 8016BF10 00167B70 48 01 0F 41 */ bl func_8017CE50
lbl_8016BF14:
/* 8016BF14 00167B74 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BF18 00167B78 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016BF1C 00167B7C 41 82 00 18 */ beq lbl_8016BF34
/* 8016BF20 00167B80 4B EE C4 99 */ bl func_800583B8
/* 8016BF24 00167B84 4B EE C4 A9 */ bl func_800583CC
/* 8016BF28 00167B88 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BF2C 00167B8C 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8016BF30 00167B90 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016BF34:
/* 8016BF34 00167B94 38 00 00 05 */ li r0, 5
/* 8016BF38 00167B98 3A 00 00 00 */ li r16, 0
/* 8016BF3C 00167B9C 90 0D 9E B0 */ stw r0, lbl_8063F170-_SDA_BASE_(r13)
/* 8016BF40 00167BA0 48 24 08 E9 */ bl func_803AC828
/* 8016BF44 00167BA4 2C 03 00 00 */ cmpwi r3, 0
/* 8016BF48 00167BA8 41 82 00 0C */ beq lbl_8016BF54
/* 8016BF4C 00167BAC 48 24 1D 8D */ bl func_803ADCD8
/* 8016BF50 00167BB0 54 70 06 3E */ clrlwi r16, r3, 0x18
lbl_8016BF54:
/* 8016BF54 00167BB4 56 00 06 BE */ clrlwi r0, r16, 0x1a
/* 8016BF58 00167BB8 2C 00 00 04 */ cmpwi r0, 4
/* 8016BF5C 00167BBC 41 82 00 30 */ beq lbl_8016BF8C
/* 8016BF60 00167BC0 40 80 00 1C */ bge lbl_8016BF7C
/* 8016BF64 00167BC4 2C 00 00 02 */ cmpwi r0, 2
/* 8016BF68 00167BC8 41 82 00 2C */ beq lbl_8016BF94
/* 8016BF6C 00167BCC 40 80 00 30 */ bge lbl_8016BF9C
/* 8016BF70 00167BD0 2C 00 00 01 */ cmpwi r0, 1
/* 8016BF74 00167BD4 40 80 00 18 */ bge lbl_8016BF8C
/* 8016BF78 00167BD8 48 00 00 40 */ b lbl_8016BFB8
lbl_8016BF7C:
/* 8016BF7C 00167BDC 2C 00 00 06 */ cmpwi r0, 6
/* 8016BF80 00167BE0 41 82 00 0C */ beq lbl_8016BF8C
/* 8016BF84 00167BE4 40 80 00 34 */ bge lbl_8016BFB8
/* 8016BF88 00167BE8 48 00 00 0C */ b lbl_8016BF94
lbl_8016BF8C:
/* 8016BF8C 00167BEC 3A 20 00 00 */ li r17, 0
/* 8016BF90 00167BF0 48 00 00 2C */ b lbl_8016BFBC
lbl_8016BF94:
/* 8016BF94 00167BF4 3A 20 00 01 */ li r17, 1
/* 8016BF98 00167BF8 48 00 00 24 */ b lbl_8016BFBC
lbl_8016BF9C:
/* 8016BF9C 00167BFC 80 0D 9E E4 */ lwz r0, lbl_8063F1A4-_SDA_BASE_(r13)
/* 8016BFA0 00167C00 3A 20 00 02 */ li r17, 2
/* 8016BFA4 00167C04 2C 00 00 00 */ cmpwi r0, 0
/* 8016BFA8 00167C08 41 82 00 14 */ beq lbl_8016BFBC
/* 8016BFAC 00167C0C 56 10 00 3C */ rlwinm r16, r16, 0, 0, 0x1e
/* 8016BFB0 00167C10 3A 20 00 01 */ li r17, 1
/* 8016BFB4 00167C14 48 00 00 08 */ b lbl_8016BFBC
lbl_8016BFB8:
/* 8016BFB8 00167C18 3A 20 00 02 */ li r17, 2
lbl_8016BFBC:
/* 8016BFBC 00167C1C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016BFC0 00167C20 54 00 05 EF */ rlwinm. r0, r0, 0, 0x17, 0x17
/* 8016BFC4 00167C24 41 82 00 1C */ beq lbl_8016BFE0
/* 8016BFC8 00167C28 4B F0 69 59 */ bl func_80072920
lbl_8016BFCC:
/* 8016BFCC 00167C2C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016BFD0 00167C30 48 0B 85 B9 */ bl func_80224588
/* 8016BFD4 00167C34 4B F0 69 71 */ bl func_80072944
/* 8016BFD8 00167C38 2C 03 00 00 */ cmpwi r3, 0
/* 8016BFDC 00167C3C 41 82 FF F0 */ beq lbl_8016BFCC
lbl_8016BFE0:
/* 8016BFE0 00167C40 4B EA 08 09 */ bl func_8000C7E8
/* 8016BFE4 00167C44 56 00 40 2E */ slwi r0, r16, 8
/* 8016BFE8 00167C48 38 80 00 04 */ li r4, 4
/* 8016BFEC 00167C4C 7C 05 8B 78 */ or r5, r0, r17
/* 8016BFF0 00167C50 4B EB 57 DD */ bl func_800217CC
/* 8016BFF4 00167C54 4B FB 09 81 */ bl func_8011C974
/* 8016BFF8 00167C58 88 C3 00 14 */ lbz r6, 0x14(r3)
/* 8016BFFC 00167C5C 7C 70 1B 78 */ mr r16, r3
/* 8016C000 00167C60 28 06 00 03 */ cmplwi r6, 3
/* 8016C004 00167C64 40 82 00 88 */ bne lbl_8016C08C
/* 8016C008 00167C68 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016C00C 00167C6C 7E 25 8B 78 */ mr r5, r17
/* 8016C010 00167C70 38 80 00 13 */ li r4, 0x13
/* 8016C014 00167C74 38 E0 00 00 */ li r7, 0
/* 8016C018 00167C78 48 00 A9 09 */ bl func_80176920
/* 8016C01C 00167C7C 7C 64 1B 78 */ mr r4, r3
/* 8016C020 00167C80 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016C024 00167C84 48 00 A9 7D */ bl func_801769A0
/* 8016C028 00167C88 4B F0 75 F1 */ bl func_80073618
/* 8016C02C 00167C8C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016C030 00167C90 28 00 00 80 */ cmplwi r0, 0x80
/* 8016C034 00167C94 40 82 00 18 */ bne lbl_8016C04C
/* 8016C038 00167C98 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016C03C 00167C9C 38 80 00 80 */ li r4, 0x80
/* 8016C040 00167CA0 38 A0 00 01 */ li r5, 1
/* 8016C044 00167CA4 48 00 AD E9 */ bl func_80176E2C
/* 8016C048 00167CA8 48 00 00 9C */ b lbl_8016C0E4
lbl_8016C04C:
/* 8016C04C 00167CAC 4B F0 75 CD */ bl func_80073618
/* 8016C050 00167CB0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016C054 00167CB4 2C 00 00 01 */ cmpwi r0, 1
/* 8016C058 00167CB8 41 82 00 28 */ beq lbl_8016C080
/* 8016C05C 00167CBC 40 80 00 10 */ bge lbl_8016C06C
/* 8016C060 00167CC0 2C 00 00 00 */ cmpwi r0, 0
/* 8016C064 00167CC4 40 80 00 14 */ bge lbl_8016C078
/* 8016C068 00167CC8 48 00 00 24 */ b lbl_8016C08C
lbl_8016C06C:
/* 8016C06C 00167CCC 2C 00 00 03 */ cmpwi r0, 3
/* 8016C070 00167CD0 40 80 00 1C */ bge lbl_8016C08C
/* 8016C074 00167CD4 48 00 00 14 */ b lbl_8016C088
lbl_8016C078:
/* 8016C078 00167CD8 3A 20 00 00 */ li r17, 0
/* 8016C07C 00167CDC 48 00 00 10 */ b lbl_8016C08C
lbl_8016C080:
/* 8016C080 00167CE0 3A 20 00 01 */ li r17, 1
/* 8016C084 00167CE4 48 00 00 08 */ b lbl_8016C08C
lbl_8016C088:
/* 8016C088 00167CE8 3A 20 00 02 */ li r17, 2
lbl_8016C08C:
/* 8016C08C 00167CEC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016C090 00167CF0 7E 24 8B 78 */ mr r4, r17
/* 8016C094 00167CF4 38 A0 00 01 */ li r5, 1
/* 8016C098 00167CF8 48 00 AD 2D */ bl func_80176DC4
/* 8016C09C 00167CFC 88 10 00 14 */ lbz r0, 0x14(r16)
/* 8016C0A0 00167D00 28 00 00 03 */ cmplwi r0, 3
/* 8016C0A4 00167D04 40 82 00 20 */ bne lbl_8016C0C4
/* 8016C0A8 00167D08 48 00 00 0C */ b lbl_8016C0B4
lbl_8016C0AC:
/* 8016C0AC 00167D0C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016C0B0 00167D10 48 0B 84 D9 */ bl func_80224588
lbl_8016C0B4:
/* 8016C0B4 00167D14 4B F0 75 65 */ bl func_80073618
/* 8016C0B8 00167D18 54 71 06 3E */ clrlwi r17, r3, 0x18
/* 8016C0BC 00167D1C 2C 11 00 FF */ cmpwi r17, 0xff
/* 8016C0C0 00167D20 41 82 FF EC */ beq lbl_8016C0AC
lbl_8016C0C4:
/* 8016C0C4 00167D24 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016C0C8 00167D28 7E 24 8B 78 */ mr r4, r17
/* 8016C0CC 00167D2C 38 A0 00 01 */ li r5, 1
/* 8016C0D0 00167D30 48 00 AD 5D */ bl func_80176E2C
lbl_8016C0D4:
/* 8016C0D4 00167D34 80 61 00 08 */ lwz r3, 8(r1)
/* 8016C0D8 00167D38 4B EC 9D 61 */ bl func_80035E38
/* 8016C0DC 00167D3C 2C 03 00 04 */ cmpwi r3, 4
/* 8016C0E0 00167D40 41 82 E7 BC */ beq lbl_8016A89C
lbl_8016C0E4:
/* 8016C0E4 00167D44 38 60 00 00 */ li r3, 0
lbl_8016C0E8:
/* 8016C0E8 00167D48 39 61 00 60 */ addi r11, r1, 0x60
/* 8016C0EC 00167D4C 48 05 B0 55 */ bl __restore_gpr
/* 8016C0F0 00167D50 80 01 00 64 */ lwz r0, 0x64(r1)
/* 8016C0F4 00167D54 7C 08 03 A6 */ mtlr r0
/* 8016C0F8 00167D58 38 21 00 60 */ addi r1, r1, 0x60
/* 8016C0FC 00167D5C 4E 80 00 20 */ blr
.global func_8016C100
func_8016C100:
/* 8016C100 00167D60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016C104 00167D64 7C 08 02 A6 */ mflr r0
/* 8016C108 00167D68 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016C10C 00167D6C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C110 00167D70 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc
/* 8016C114 00167D74 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13
/* 8016C118 00167D78 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016C11C 00167D7C 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016C120 00167D80 40 82 00 20 */ bne lbl_8016C140
/* 8016C124 00167D84 80 0D 9E EC */ lwz r0, lbl_8063F1AC-_SDA_BASE_(r13)
/* 8016C128 00167D88 2C 00 00 00 */ cmpwi r0, 0
/* 8016C12C 00167D8C 41 82 00 14 */ beq lbl_8016C140
/* 8016C130 00167D90 38 00 00 00 */ li r0, 0
/* 8016C134 00167D94 38 60 00 03 */ li r3, 3
/* 8016C138 00167D98 90 0D 9E EC */ stw r0, lbl_8063F1AC-_SDA_BASE_(r13)
/* 8016C13C 00167D9C 48 00 00 2C */ b lbl_8016C168
lbl_8016C140:
/* 8016C140 00167DA0 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C144 00167DA4 48 00 25 6D */ bl func_8016E6B0
/* 8016C148 00167DA8 2C 03 00 00 */ cmpwi r3, 0
/* 8016C14C 00167DAC 41 82 00 08 */ beq lbl_8016C154
/* 8016C150 00167DB0 48 00 00 18 */ b lbl_8016C168
lbl_8016C154:
/* 8016C154 00167DB4 48 00 25 19 */ bl func_8016E66C
/* 8016C158 00167DB8 2C 03 00 00 */ cmpwi r3, 0
/* 8016C15C 00167DBC 41 82 FF F8 */ beq lbl_8016C154
/* 8016C160 00167DC0 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C164 00167DC4 48 00 25 4D */ bl func_8016E6B0
lbl_8016C168:
/* 8016C168 00167DC8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016C16C 00167DCC 7C 08 03 A6 */ mtlr r0
/* 8016C170 00167DD0 38 21 00 10 */ addi r1, r1, 0x10
/* 8016C174 00167DD4 4E 80 00 20 */ blr
.global func_8016C178
func_8016C178:
/* 8016C178 00167DD8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016C17C 00167DDC 7C 08 02 A6 */ mflr r0
/* 8016C180 00167DE0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016C184 00167DE4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8016C188 00167DE8 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C18C 00167DEC 48 00 25 25 */ bl func_8016E6B0
/* 8016C190 00167DF0 2C 03 00 00 */ cmpwi r3, 0
/* 8016C194 00167DF4 7C 7F 1B 78 */ mr r31, r3
/* 8016C198 00167DF8 40 82 00 1C */ bne lbl_8016C1B4
lbl_8016C19C:
/* 8016C19C 00167DFC 48 00 24 D1 */ bl func_8016E66C
/* 8016C1A0 00167E00 2C 03 00 00 */ cmpwi r3, 0
/* 8016C1A4 00167E04 41 82 FF F8 */ beq lbl_8016C19C
/* 8016C1A8 00167E08 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C1AC 00167E0C 48 00 25 05 */ bl func_8016E6B0
/* 8016C1B0 00167E10 7C 7F 1B 78 */ mr r31, r3
lbl_8016C1B4:
/* 8016C1B4 00167E14 2C 1F 00 03 */ cmpwi r31, 3
/* 8016C1B8 00167E18 41 82 00 54 */ beq lbl_8016C20C
/* 8016C1BC 00167E1C 2C 1F 00 0F */ cmpwi r31, 0xf
/* 8016C1C0 00167E20 41 82 00 4C */ beq lbl_8016C20C
/* 8016C1C4 00167E24 2C 1F 00 0B */ cmpwi r31, 0xb
/* 8016C1C8 00167E28 41 82 00 44 */ beq lbl_8016C20C
/* 8016C1CC 00167E2C 2C 1F 00 06 */ cmpwi r31, 6
/* 8016C1D0 00167E30 41 82 00 3C */ beq lbl_8016C20C
/* 8016C1D4 00167E34 2C 1F 00 0D */ cmpwi r31, 0xd
/* 8016C1D8 00167E38 41 82 00 34 */ beq lbl_8016C20C
/* 8016C1DC 00167E3C 2C 1F 00 07 */ cmpwi r31, 7
/* 8016C1E0 00167E40 40 82 00 1C */ bne lbl_8016C1FC
/* 8016C1E4 00167E44 48 25 CF 2D */ bl func_803C9110
/* 8016C1E8 00167E48 7C 64 1B 78 */ mr r4, r3
/* 8016C1EC 00167E4C 7F E3 FB 78 */ mr r3, r31
/* 8016C1F0 00167E50 38 A0 00 00 */ li r5, 0
/* 8016C1F4 00167E54 48 00 1A 1D */ bl func_8016DC10
/* 8016C1F8 00167E58 48 00 00 14 */ b lbl_8016C20C
lbl_8016C1FC:
/* 8016C1FC 00167E5C 7F E3 FB 78 */ mr r3, r31
/* 8016C200 00167E60 38 80 00 00 */ li r4, 0
/* 8016C204 00167E64 38 A0 00 00 */ li r5, 0
/* 8016C208 00167E68 48 00 1A 09 */ bl func_8016DC10
lbl_8016C20C:
/* 8016C20C 00167E6C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016C210 00167E70 48 0B 83 79 */ bl func_80224588
/* 8016C214 00167E74 4B FF C5 C5 */ bl func_801687D8
/* 8016C218 00167E78 2C 03 00 00 */ cmpwi r3, 0
/* 8016C21C 00167E7C 40 82 00 10 */ bne lbl_8016C22C
/* 8016C220 00167E80 48 24 06 09 */ bl func_803AC828
/* 8016C224 00167E84 38 80 00 07 */ li r4, 7
/* 8016C228 00167E88 48 24 1A B9 */ bl func_803ADCE0
lbl_8016C22C:
/* 8016C22C 00167E8C 7F E3 FB 78 */ mr r3, r31
/* 8016C230 00167E90 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016C234 00167E94 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016C238 00167E98 7C 08 03 A6 */ mtlr r0
/* 8016C23C 00167E9C 38 21 00 10 */ addi r1, r1, 0x10
/* 8016C240 00167EA0 4E 80 00 20 */ blr
.global func_8016C244
func_8016C244:
/* 8016C244 00167EA4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016C248 00167EA8 7C 08 02 A6 */ mflr r0
/* 8016C24C 00167EAC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016C250 00167EB0 93 E1 00 0C */ stw r31, 0xc(r1)
lbl_8016C254:
/* 8016C254 00167EB4 48 00 24 19 */ bl func_8016E66C
/* 8016C258 00167EB8 48 26 DB FD */ bl func_803D9E54
/* 8016C25C 00167EBC 2C 03 00 00 */ cmpwi r3, 0
/* 8016C260 00167EC0 41 82 FF F4 */ beq lbl_8016C254
/* 8016C264 00167EC4 80 6D 9E CC */ lwz r3, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C268 00167EC8 28 03 00 03 */ cmplwi r3, 3
/* 8016C26C 00167ECC 40 82 00 10 */ bne lbl_8016C27C
/* 8016C270 00167ED0 38 00 00 00 */ li r0, 0
/* 8016C274 00167ED4 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C278 00167ED8 48 00 01 EC */ b lbl_8016C464
lbl_8016C27C:
/* 8016C27C 00167EDC 28 03 00 FF */ cmplwi r3, 0xff
/* 8016C280 00167EE0 40 82 00 6C */ bne lbl_8016C2EC
/* 8016C284 00167EE4 38 00 00 00 */ li r0, 0
/* 8016C288 00167EE8 90 0D 9E CC */ stw r0, lbl_8063F18C-_SDA_BASE_(r13)
lbl_8016C28C:
/* 8016C28C 00167EEC 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016C290 00167EF0 48 0B 82 F9 */ bl func_80224588
/* 8016C294 00167EF4 4B FF C5 45 */ bl func_801687D8
/* 8016C298 00167EF8 2C 03 00 00 */ cmpwi r3, 0
/* 8016C29C 00167EFC 40 82 00 18 */ bne lbl_8016C2B4
/* 8016C2A0 00167F00 48 24 05 89 */ bl func_803AC828
/* 8016C2A4 00167F04 38 80 00 07 */ li r4, 7
/* 8016C2A8 00167F08 48 24 1A 39 */ bl func_803ADCE0
/* 8016C2AC 00167F0C 38 60 00 86 */ li r3, 0x86
/* 8016C2B0 00167F10 48 00 01 B4 */ b lbl_8016C464
lbl_8016C2B4:
/* 8016C2B4 00167F14 48 01 00 C9 */ bl func_8017C37C
/* 8016C2B8 00167F18 2C 03 00 85 */ cmpwi r3, 0x85
/* 8016C2BC 00167F1C 41 82 00 30 */ beq lbl_8016C2EC
/* 8016C2C0 00167F20 2C 03 00 07 */ cmpwi r3, 7
/* 8016C2C4 00167F24 40 82 00 08 */ bne lbl_8016C2CC
/* 8016C2C8 00167F28 48 00 01 9C */ b lbl_8016C464
lbl_8016C2CC:
/* 8016C2CC 00167F2C 2C 03 00 83 */ cmpwi r3, 0x83
/* 8016C2D0 00167F30 40 82 FF BC */ bne lbl_8016C28C
/* 8016C2D4 00167F34 38 60 00 00 */ li r3, 0
/* 8016C2D8 00167F38 38 80 00 13 */ li r4, 0x13
/* 8016C2DC 00167F3C 38 A0 00 0F */ li r5, 0xf
/* 8016C2E0 00167F40 38 C0 00 00 */ li r6, 0
/* 8016C2E4 00167F44 4B EF 14 A9 */ bl func_8005D78C
/* 8016C2E8 00167F48 4B FF FF A4 */ b lbl_8016C28C
lbl_8016C2EC:
/* 8016C2EC 00167F4C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016C2F0 00167F50 48 0B 82 99 */ bl func_80224588
/* 8016C2F4 00167F54 4B FF C4 E5 */ bl func_801687D8
/* 8016C2F8 00167F58 2C 03 00 00 */ cmpwi r3, 0
/* 8016C2FC 00167F5C 40 82 00 18 */ bne lbl_8016C314
/* 8016C300 00167F60 48 24 05 29 */ bl func_803AC828
/* 8016C304 00167F64 38 80 00 07 */ li r4, 7
/* 8016C308 00167F68 48 24 19 D9 */ bl func_803ADCE0
/* 8016C30C 00167F6C 38 60 00 86 */ li r3, 0x86
/* 8016C310 00167F70 48 00 01 54 */ b lbl_8016C464
lbl_8016C314:
/* 8016C314 00167F74 80 0D 9E CC */ lwz r0, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C318 00167F78 2C 00 00 00 */ cmpwi r0, 0
/* 8016C31C 00167F7C 41 82 01 34 */ beq lbl_8016C450
/* 8016C320 00167F80 28 00 00 0C */ cmplwi r0, 0xc
/* 8016C324 00167F84 40 82 01 00 */ bne lbl_8016C424
/* 8016C328 00167F88 48 01 00 55 */ bl func_8017C37C
/* 8016C32C 00167F8C 2C 03 00 00 */ cmpwi r3, 0
/* 8016C330 00167F90 7C 7F 1B 78 */ mr r31, r3
/* 8016C334 00167F94 41 82 00 E8 */ beq lbl_8016C41C
/* 8016C338 00167F98 2C 03 00 07 */ cmpwi r3, 7
/* 8016C33C 00167F9C 41 82 00 C4 */ beq lbl_8016C400
/* 8016C340 00167FA0 40 80 00 1C */ bge lbl_8016C35C
/* 8016C344 00167FA4 2C 03 00 03 */ cmpwi r3, 3
/* 8016C348 00167FA8 41 82 00 44 */ beq lbl_8016C38C
/* 8016C34C 00167FAC 41 80 00 D0 */ blt lbl_8016C41C
/* 8016C350 00167FB0 2C 03 00 06 */ cmpwi r3, 6
/* 8016C354 00167FB4 40 80 00 88 */ bge lbl_8016C3DC
/* 8016C358 00167FB8 48 00 00 C4 */ b lbl_8016C41C
lbl_8016C35C:
/* 8016C35C 00167FBC 2C 03 00 87 */ cmpwi r3, 0x87
/* 8016C360 00167FC0 41 82 00 58 */ beq lbl_8016C3B8
/* 8016C364 00167FC4 40 80 00 B8 */ bge lbl_8016C41C
/* 8016C368 00167FC8 2C 03 00 83 */ cmpwi r3, 0x83
/* 8016C36C 00167FCC 41 82 00 08 */ beq lbl_8016C374
/* 8016C370 00167FD0 48 00 00 AC */ b lbl_8016C41C
lbl_8016C374:
/* 8016C374 00167FD4 38 60 00 00 */ li r3, 0
/* 8016C378 00167FD8 38 80 00 13 */ li r4, 0x13
/* 8016C37C 00167FDC 38 A0 00 0F */ li r5, 0xf
/* 8016C380 00167FE0 38 C0 00 00 */ li r6, 0
/* 8016C384 00167FE4 4B EF 14 09 */ bl func_8005D78C
/* 8016C388 00167FE8 48 00 00 94 */ b lbl_8016C41C
lbl_8016C38C:
/* 8016C38C 00167FEC 80 6D 9E D4 */ lwz r3, lbl_8063F194-_SDA_BASE_(r13)
/* 8016C390 00167FF0 38 A0 00 03 */ li r5, 3
/* 8016C394 00167FF4 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C398 00167FF8 38 00 00 0B */ li r0, 0xb
/* 8016C39C 00167FFC 54 63 10 3A */ slwi r3, r3, 2
/* 8016C3A0 00168000 90 AD 9E D0 */ stw r5, lbl_8063F190-_SDA_BASE_(r13)
/* 8016C3A4 00168004 7C 84 1A 14 */ add r4, r4, r3
/* 8016C3A8 00168008 80 64 00 10 */ lwz r3, 0x10(r4)
/* 8016C3AC 0016800C 90 6D 9E D8 */ stw r3, lbl_8063F198-_SDA_BASE_(r13)
/* 8016C3B0 00168010 90 04 00 10 */ stw r0, 0x10(r4)
/* 8016C3B4 00168014 48 00 00 68 */ b lbl_8016C41C
lbl_8016C3B8:
/* 8016C3B8 00168018 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C3BC 0016801C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016C3C0 00168020 41 82 00 5C */ beq lbl_8016C41C
/* 8016C3C4 00168024 4B EE C0 31 */ bl func_800583F4
/* 8016C3C8 00168028 4B EE C0 41 */ bl func_80058408
/* 8016C3CC 0016802C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C3D0 00168030 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016C3D4 00168034 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C3D8 00168038 48 00 00 44 */ b lbl_8016C41C
lbl_8016C3DC:
/* 8016C3DC 0016803C 48 00 05 39 */ bl func_8016C914
/* 8016C3E0 00168040 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C3E4 00168044 38 80 00 00 */ li r4, 0
/* 8016C3E8 00168048 90 8D 9E CC */ stw r4, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C3EC 0016804C 7F E3 FB 78 */ mr r3, r31
/* 8016C3F0 00168050 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016C3F4 00168054 90 8D 9E D0 */ stw r4, lbl_8063F190-_SDA_BASE_(r13)
/* 8016C3F8 00168058 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C3FC 0016805C 48 00 00 68 */ b lbl_8016C464
lbl_8016C400:
/* 8016C400 00168060 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C404 00168064 38 80 00 00 */ li r4, 0
/* 8016C408 00168068 90 8D 9E CC */ stw r4, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C40C 0016806C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8016C410 00168070 90 8D 9E D0 */ stw r4, lbl_8063F190-_SDA_BASE_(r13)
/* 8016C414 00168074 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C418 00168078 48 00 00 4C */ b lbl_8016C464
lbl_8016C41C:
/* 8016C41C 0016807C 80 6D 9E CC */ lwz r3, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C420 00168080 48 00 00 44 */ b lbl_8016C464
lbl_8016C424:
/* 8016C424 00168084 48 00 FF 59 */ bl func_8017C37C
/* 8016C428 00168088 2C 03 00 83 */ cmpwi r3, 0x83
/* 8016C42C 0016808C 41 82 00 08 */ beq lbl_8016C434
/* 8016C430 00168090 48 00 00 18 */ b lbl_8016C448
lbl_8016C434:
/* 8016C434 00168094 38 60 00 00 */ li r3, 0
/* 8016C438 00168098 38 80 00 13 */ li r4, 0x13
/* 8016C43C 0016809C 38 A0 00 0F */ li r5, 0xf
/* 8016C440 001680A0 38 C0 00 00 */ li r6, 0
/* 8016C444 001680A4 4B EF 13 49 */ bl func_8005D78C
lbl_8016C448:
/* 8016C448 001680A8 80 6D 9E CC */ lwz r3, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016C44C 001680AC 48 00 00 18 */ b lbl_8016C464
lbl_8016C450:
/* 8016C450 001680B0 48 00 FF 2D */ bl func_8017C37C
/* 8016C454 001680B4 2C 03 00 00 */ cmpwi r3, 0
/* 8016C458 001680B8 41 82 FE 94 */ beq lbl_8016C2EC
/* 8016C45C 001680BC 2C 03 00 80 */ cmpwi r3, 0x80
/* 8016C460 001680C0 41 82 FE 8C */ beq lbl_8016C2EC
lbl_8016C464:
/* 8016C464 001680C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016C468 001680C8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016C46C 001680CC 7C 08 03 A6 */ mtlr r0
/* 8016C470 001680D0 38 21 00 10 */ addi r1, r1, 0x10
/* 8016C474 001680D4 4E 80 00 20 */ blr
.global func_8016C478
func_8016C478:
/* 8016C478 001680D8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016C47C 001680DC 7C 08 02 A6 */ mflr r0
/* 8016C480 001680E0 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016C484 001680E4 39 61 00 20 */ addi r11, r1, 0x20
/* 8016C488 001680E8 48 05 AC A1 */ bl _savegpr_27
/* 8016C48C 001680EC 7C 7B 1B 78 */ mr r27, r3
/* 8016C490 001680F0 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C494 001680F4 7C 9C 23 78 */ mr r28, r4
/* 8016C498 001680F8 7C BD 2B 78 */ mr r29, r5
/* 8016C49C 001680FC 7F 64 DB 78 */ mr r4, r27
/* 8016C4A0 00168100 48 25 CE 29 */ bl func_803C92C8
/* 8016C4A4 00168104 7C 7F 1B 78 */ mr r31, r3
/* 8016C4A8 00168108 4B FB 04 CD */ bl func_8011C974
/* 8016C4AC 0016810C 88 03 00 1B */ lbz r0, 0x1b(r3)
/* 8016C4B0 00168110 28 00 00 01 */ cmplwi r0, 1
/* 8016C4B4 00168114 40 82 00 1C */ bne lbl_8016C4D0
/* 8016C4B8 00168118 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
/* 8016C4BC 0016811C 40 82 00 0C */ bne lbl_8016C4C8
/* 8016C4C0 00168120 57 E0 07 BF */ clrlwi. r0, r31, 0x1e
/* 8016C4C4 00168124 41 82 00 0C */ beq lbl_8016C4D0
lbl_8016C4C8:
/* 8016C4C8 00168128 38 60 00 FF */ li r3, 0xff
/* 8016C4CC 0016812C 48 00 03 C0 */ b lbl_8016C88C
lbl_8016C4D0:
/* 8016C4D0 00168130 80 AD 9E C8 */ lwz r5, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C4D4 00168134 54 A0 07 39 */ rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 8016C4D8 00168138 41 82 00 4C */ beq lbl_8016C524
/* 8016C4DC 0016813C 2C 1C 00 02 */ cmpwi r28, 2
/* 8016C4E0 00168140 41 82 00 34 */ beq lbl_8016C514
/* 8016C4E4 00168144 40 80 00 14 */ bge lbl_8016C4F8
/* 8016C4E8 00168148 2C 1C 00 00 */ cmpwi r28, 0
/* 8016C4EC 0016814C 41 82 00 18 */ beq lbl_8016C504
/* 8016C4F0 00168150 40 80 00 1C */ bge lbl_8016C50C
/* 8016C4F4 00168154 48 00 01 38 */ b lbl_8016C62C
lbl_8016C4F8:
/* 8016C4F8 00168158 2C 1C 00 05 */ cmpwi r28, 5
/* 8016C4FC 0016815C 40 80 01 30 */ bge lbl_8016C62C
/* 8016C500 00168160 48 00 00 1C */ b lbl_8016C51C
lbl_8016C504:
/* 8016C504 00168164 3B C0 00 00 */ li r30, 0
/* 8016C508 00168168 48 00 01 24 */ b lbl_8016C62C
lbl_8016C50C:
/* 8016C50C 0016816C 3B C0 00 01 */ li r30, 1
/* 8016C510 00168170 48 00 01 1C */ b lbl_8016C62C
lbl_8016C514:
/* 8016C514 00168174 3B C0 00 02 */ li r30, 2
/* 8016C518 00168178 48 00 01 14 */ b lbl_8016C62C
lbl_8016C51C:
/* 8016C51C 0016817C 3B C0 00 03 */ li r30, 3
/* 8016C520 00168180 48 00 01 0C */ b lbl_8016C62C
lbl_8016C524:
/* 8016C524 00168184 28 1B 00 01 */ cmplwi r27, 1
/* 8016C528 00168188 41 81 00 74 */ bgt lbl_8016C59C
/* 8016C52C 0016818C 2C 1C 00 02 */ cmpwi r28, 2
/* 8016C530 00168190 41 82 00 44 */ beq lbl_8016C574
/* 8016C534 00168194 40 80 00 14 */ bge lbl_8016C548
/* 8016C538 00168198 2C 1C 00 00 */ cmpwi r28, 0
/* 8016C53C 0016819C 41 82 00 18 */ beq lbl_8016C554
/* 8016C540 001681A0 40 80 00 2C */ bge lbl_8016C56C
/* 8016C544 001681A4 48 00 00 E8 */ b lbl_8016C62C
lbl_8016C548:
/* 8016C548 001681A8 2C 1C 00 05 */ cmpwi r28, 5
/* 8016C54C 001681AC 40 80 00 E0 */ bge lbl_8016C62C
/* 8016C550 001681B0 48 00 00 2C */ b lbl_8016C57C
lbl_8016C554:
/* 8016C554 001681B4 57 60 07 FE */ clrlwi r0, r27, 0x1f
/* 8016C558 001681B8 38 80 00 01 */ li r4, 1
/* 8016C55C 001681BC 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_
/* 8016C560 001681C0 3B C0 00 00 */ li r30, 0
/* 8016C564 001681C4 7C 83 01 AE */ stbx r4, r3, r0
/* 8016C568 001681C8 48 00 00 C4 */ b lbl_8016C62C
lbl_8016C56C:
/* 8016C56C 001681CC 3B C0 00 01 */ li r30, 1
/* 8016C570 001681D0 48 00 00 BC */ b lbl_8016C62C
lbl_8016C574:
/* 8016C574 001681D4 3B C0 00 02 */ li r30, 2
/* 8016C578 001681D8 48 00 00 B4 */ b lbl_8016C62C
lbl_8016C57C:
/* 8016C57C 001681DC 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016C580 001681E0 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016C584 001681E4 88 03 00 1A */ lbz r0, 0x1a(r3)
/* 8016C588 001681E8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016C58C 001681EC 40 82 00 08 */ bne lbl_8016C594
/* 8016C590 001681F0 3B A0 00 01 */ li r29, 1
lbl_8016C594:
/* 8016C594 001681F4 3B C0 00 03 */ li r30, 3
/* 8016C598 001681F8 48 00 00 94 */ b lbl_8016C62C
lbl_8016C59C:
/* 8016C59C 001681FC 38 1B 00 FE */ addi r0, r27, 0xfe
/* 8016C5A0 00168200 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 8016C5A4 00168204 28 00 00 01 */ cmplwi r0, 1
/* 8016C5A8 00168208 41 81 00 84 */ bgt lbl_8016C62C
/* 8016C5AC 0016820C 2C 1C 00 02 */ cmpwi r28, 2
/* 8016C5B0 00168210 41 82 00 58 */ beq lbl_8016C608
/* 8016C5B4 00168214 40 80 00 14 */ bge lbl_8016C5C8
/* 8016C5B8 00168218 2C 1C 00 00 */ cmpwi r28, 0
/* 8016C5BC 0016821C 41 82 00 18 */ beq lbl_8016C5D4
/* 8016C5C0 00168220 40 80 00 40 */ bge lbl_8016C600
/* 8016C5C4 00168224 48 00 00 68 */ b lbl_8016C62C
lbl_8016C5C8:
/* 8016C5C8 00168228 2C 1C 00 05 */ cmpwi r28, 5
/* 8016C5CC 0016822C 40 80 00 60 */ bge lbl_8016C62C
/* 8016C5D0 00168230 48 00 00 40 */ b lbl_8016C610
lbl_8016C5D4:
/* 8016C5D4 00168234 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14
/* 8016C5D8 00168238 41 82 00 20 */ beq lbl_8016C5F8
/* 8016C5DC 0016823C 57 60 07 FE */ clrlwi r0, r27, 0x1f
/* 8016C5E0 00168240 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_
/* 8016C5E4 00168244 7C 03 00 AE */ lbzx r0, r3, r0
/* 8016C5E8 00168248 2C 00 00 00 */ cmpwi r0, 0
/* 8016C5EC 0016824C 40 82 00 0C */ bne lbl_8016C5F8
/* 8016C5F0 00168250 3B C0 00 05 */ li r30, 5
/* 8016C5F4 00168254 48 00 00 38 */ b lbl_8016C62C
lbl_8016C5F8:
/* 8016C5F8 00168258 3B C0 00 04 */ li r30, 4
/* 8016C5FC 0016825C 48 00 00 30 */ b lbl_8016C62C
lbl_8016C600:
/* 8016C600 00168260 3B C0 00 06 */ li r30, 6
/* 8016C604 00168264 48 00 00 28 */ b lbl_8016C62C
lbl_8016C608:
/* 8016C608 00168268 3B C0 00 07 */ li r30, 7
/* 8016C60C 0016826C 48 00 00 20 */ b lbl_8016C62C
lbl_8016C610:
/* 8016C610 00168270 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016C614 00168274 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016C618 00168278 88 03 00 1A */ lbz r0, 0x1a(r3)
/* 8016C61C 0016827C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016C620 00168280 40 82 00 08 */ bne lbl_8016C628
/* 8016C624 00168284 3B A0 00 01 */ li r29, 1
lbl_8016C628:
/* 8016C628 00168288 3B C0 00 08 */ li r30, 8
lbl_8016C62C:
/* 8016C62C 0016828C 54 A0 05 29 */ rlwinm. r0, r5, 0, 0x14, 0x14
/* 8016C630 00168290 41 82 01 60 */ beq lbl_8016C790
/* 8016C634 00168294 48 24 01 F5 */ bl func_803AC828
/* 8016C638 00168298 2C 1C 00 02 */ cmpwi r28, 2
/* 8016C63C 0016829C 41 82 00 54 */ beq lbl_8016C690
/* 8016C640 001682A0 40 80 00 10 */ bge lbl_8016C650
/* 8016C644 001682A4 2C 1C 00 00 */ cmpwi r28, 0
/* 8016C648 001682A8 41 82 00 18 */ beq lbl_8016C660
/* 8016C64C 001682AC 48 00 00 A0 */ b lbl_8016C6EC
lbl_8016C650:
/* 8016C650 001682B0 2C 1C 00 04 */ cmpwi r28, 4
/* 8016C654 001682B4 41 82 00 98 */ beq lbl_8016C6EC
/* 8016C658 001682B8 40 80 00 94 */ bge lbl_8016C6EC
/* 8016C65C 001682BC 48 00 00 64 */ b lbl_8016C6C0
lbl_8016C660:
/* 8016C660 001682C0 7F 65 DB 78 */ mr r5, r27
/* 8016C664 001682C4 57 E4 06 3E */ clrlwi r4, r31, 0x18
/* 8016C668 001682C8 38 C0 00 00 */ li r6, 0
/* 8016C66C 001682CC 38 E0 00 02 */ li r7, 2
/* 8016C670 001682D0 48 00 AF 11 */ bl func_80177580
/* 8016C674 001682D4 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016C678 001682D8 28 00 00 07 */ cmplwi r0, 7
/* 8016C67C 001682DC 40 82 00 70 */ bne lbl_8016C6EC
/* 8016C680 001682E0 48 24 01 A9 */ bl func_803AC828
/* 8016C684 001682E4 38 80 00 07 */ li r4, 7
/* 8016C688 001682E8 48 24 16 59 */ bl func_803ADCE0
/* 8016C68C 001682EC 48 00 00 60 */ b lbl_8016C6EC
lbl_8016C690:
/* 8016C690 001682F0 7F 65 DB 78 */ mr r5, r27
/* 8016C694 001682F4 57 E4 06 3E */ clrlwi r4, r31, 0x18
/* 8016C698 001682F8 38 C0 00 00 */ li r6, 0
/* 8016C69C 001682FC 38 E0 00 05 */ li r7, 5
/* 8016C6A0 00168300 48 00 AE E1 */ bl func_80177580
/* 8016C6A4 00168304 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016C6A8 00168308 28 00 00 07 */ cmplwi r0, 7
/* 8016C6AC 0016830C 40 82 00 40 */ bne lbl_8016C6EC
/* 8016C6B0 00168310 48 24 01 79 */ bl func_803AC828
/* 8016C6B4 00168314 38 80 00 07 */ li r4, 7
/* 8016C6B8 00168318 48 24 16 29 */ bl func_803ADCE0
/* 8016C6BC 0016831C 48 00 00 30 */ b lbl_8016C6EC
lbl_8016C6C0:
/* 8016C6C0 00168320 7F 65 DB 78 */ mr r5, r27
/* 8016C6C4 00168324 57 E4 06 3E */ clrlwi r4, r31, 0x18
/* 8016C6C8 00168328 38 C0 00 00 */ li r6, 0
/* 8016C6CC 0016832C 38 E0 00 01 */ li r7, 1
/* 8016C6D0 00168330 48 00 AE B1 */ bl func_80177580
/* 8016C6D4 00168334 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016C6D8 00168338 28 00 00 07 */ cmplwi r0, 7
/* 8016C6DC 0016833C 40 82 00 10 */ bne lbl_8016C6EC
/* 8016C6E0 00168340 48 24 01 49 */ bl func_803AC828
/* 8016C6E4 00168344 38 80 00 07 */ li r4, 7
/* 8016C6E8 00168348 48 24 15 F9 */ bl func_803ADCE0
lbl_8016C6EC:
/* 8016C6EC 0016834C 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016C6F0 00168350 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016C6F4 00168354 88 63 00 1A */ lbz r3, 0x1a(r3)
/* 8016C6F8 00168358 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8016C6FC 0016835C 40 82 00 80 */ bne lbl_8016C77C
/* 8016C700 00168360 54 60 06 79 */ rlwinm. r0, r3, 0, 0x19, 0x1c
/* 8016C704 00168364 38 60 00 01 */ li r3, 1
/* 8016C708 00168368 57 E0 06 3E */ clrlwi r0, r31, 0x18
/* 8016C70C 0016836C 7C 60 00 30 */ slw r0, r3, r0
/* 8016C710 00168370 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 8016C714 00168374 41 82 00 08 */ beq lbl_8016C71C
/* 8016C718 00168378 60 00 00 10 */ ori r0, r0, 0x10
lbl_8016C71C:
/* 8016C71C 0016837C 54 05 04 3E */ clrlwi r5, r0, 0x10
/* 8016C720 00168380 38 60 00 00 */ li r3, 0
/* 8016C724 00168384 38 80 00 0D */ li r4, 0xd
/* 8016C728 00168388 38 C0 00 00 */ li r6, 0
/* 8016C72C 0016838C 4B EF 10 61 */ bl func_8005D78C
/* 8016C730 00168390 3C A0 80 49 */ lis r5, lbl_8048CDB4@ha
/* 8016C734 00168394 80 CD 9E DC */ lwz r6, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C738 00168398 38 A5 CD B4 */ addi r5, r5, lbl_8048CDB4@l
/* 8016C73C 0016839C 57 E0 06 3E */ clrlwi r0, r31, 0x18
/* 8016C740 001683A0 38 60 00 08 */ li r3, 8
/* 8016C744 001683A4 88 85 00 1A */ lbz r4, 0x1a(r5)
/* 8016C748 001683A8 7C 63 00 30 */ slw r3, r3, r0
/* 8016C74C 001683AC 54 C0 07 FF */ clrlwi. r0, r6, 0x1f
/* 8016C750 001683B0 7C 80 1B 78 */ or r0, r4, r3
/* 8016C754 001683B4 98 05 00 1A */ stb r0, 0x1a(r5)
/* 8016C758 001683B8 41 82 00 24 */ beq lbl_8016C77C
/* 8016C75C 001683BC 54 C0 07 BD */ rlwinm. r0, r6, 0, 0x1e, 0x1e
/* 8016C760 001683C0 40 82 00 1C */ bne lbl_8016C77C
/* 8016C764 001683C4 4B EE BE 1D */ bl func_80058580
/* 8016C768 001683C8 4B EE BC 79 */ bl func_800583E0
/* 8016C76C 001683CC 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C770 001683D0 60 00 00 02 */ ori r0, r0, 2
/* 8016C774 001683D4 54 00 07 2E */ rlwinm r0, r0, 0, 0x1c, 0x17
/* 8016C778 001683D8 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016C77C:
/* 8016C77C 001683DC 7F C4 F3 78 */ mr r4, r30
/* 8016C780 001683E0 7F A5 EB 78 */ mr r5, r29
/* 8016C784 001683E4 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 8016C788 001683E8 4B FF B4 25 */ bl func_80167BAC
/* 8016C78C 001683EC 48 00 00 FC */ b lbl_8016C888
lbl_8016C790:
/* 8016C790 001683F0 28 1E 00 04 */ cmplwi r30, 4
/* 8016C794 001683F4 40 82 00 50 */ bne lbl_8016C7E4
/* 8016C798 001683F8 54 A3 03 18 */ rlwinm r3, r5, 0, 0xc, 0xc
/* 8016C79C 001683FC 50 A3 04 E6 */ rlwimi r3, r5, 0, 0x13, 0x13
/* 8016C7A0 00168400 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016C7A4 00168404 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016C7A8 00168408 40 82 00 28 */ bne lbl_8016C7D0
/* 8016C7AC 0016840C 57 E0 07 FE */ clrlwi r0, r31, 0x1f
/* 8016C7B0 00168410 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_
/* 8016C7B4 00168414 7C 03 00 AE */ lbzx r0, r3, r0
/* 8016C7B8 00168418 2C 00 00 00 */ cmpwi r0, 0
/* 8016C7BC 0016841C 41 82 00 0C */ beq lbl_8016C7C8
/* 8016C7C0 00168420 3B A0 00 01 */ li r29, 1
/* 8016C7C4 00168424 48 00 00 20 */ b lbl_8016C7E4
lbl_8016C7C8:
/* 8016C7C8 00168428 3B A0 00 00 */ li r29, 0
/* 8016C7CC 0016842C 48 00 00 18 */ b lbl_8016C7E4
lbl_8016C7D0:
/* 8016C7D0 00168430 57 E0 07 FE */ clrlwi r0, r31, 0x1f
/* 8016C7D4 00168434 38 6D 9E E0 */ addi r3, r13, lbl_8063F1A0-_SDA_BASE_
/* 8016C7D8 00168438 7C 03 00 AE */ lbzx r0, r3, r0
/* 8016C7DC 0016843C 7C 00 00 34 */ cntlzw r0, r0
/* 8016C7E0 00168440 54 1D D9 7E */ srwi r29, r0, 5
lbl_8016C7E4:
/* 8016C7E4 00168444 7F C4 F3 78 */ mr r4, r30
/* 8016C7E8 00168448 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 8016C7EC 0016844C 57 A5 04 3E */ clrlwi r5, r29, 0x10
/* 8016C7F0 00168450 38 C0 00 00 */ li r6, 0
/* 8016C7F4 00168454 4B EF 0F 99 */ bl func_8005D78C
/* 8016C7F8 00168458 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016C7FC 0016845C 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016C800 00168460 88 03 00 1A */ lbz r0, 0x1a(r3)
/* 8016C804 00168464 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016C808 00168468 40 82 00 80 */ bne lbl_8016C888
/* 8016C80C 0016846C 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C810 00168470 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 8016C814 00168474 41 82 00 54 */ beq lbl_8016C868
/* 8016C818 00168478 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 8016C81C 0016847C 40 82 00 1C */ bne lbl_8016C838
/* 8016C820 00168480 4B EE BD 61 */ bl func_80058580
/* 8016C824 00168484 4B EE BB BD */ bl func_800583E0
/* 8016C828 00168488 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C82C 0016848C 60 00 00 02 */ ori r0, r0, 2
/* 8016C830 00168490 54 00 07 2E */ rlwinm r0, r0, 0, 0x1c, 0x17
/* 8016C834 00168494 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016C838:
/* 8016C838 00168498 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C83C 0016849C 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc
/* 8016C840 001684A0 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13
/* 8016C844 001684A4 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016C848 001684A8 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016C84C 001684AC 40 82 00 1C */ bne lbl_8016C868
/* 8016C850 001684B0 57 E0 07 FF */ clrlwi. r0, r31, 0x1f
/* 8016C854 001684B4 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016C858 001684B8 60 03 02 00 */ ori r3, r0, 0x200
/* 8016C85C 001684BC 41 82 00 08 */ beq lbl_8016C864
/* 8016C860 001684C0 60 03 04 00 */ ori r3, r0, 0x400
lbl_8016C864:
/* 8016C864 001684C4 90 6D 9E DC */ stw r3, lbl_8063F19C-_SDA_BASE_(r13)
lbl_8016C868:
/* 8016C868 001684C8 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C86C 001684CC 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc
/* 8016C870 001684D0 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13
/* 8016C874 001684D4 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016C878 001684D8 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016C87C 001684DC 40 82 00 0C */ bne lbl_8016C888
/* 8016C880 001684E0 38 00 00 01 */ li r0, 1
/* 8016C884 001684E4 90 0D 9E E8 */ stw r0, lbl_8063F1A8-_SDA_BASE_(r13)
lbl_8016C888:
/* 8016C888 001684E8 38 60 00 FE */ li r3, 0xfe
lbl_8016C88C:
/* 8016C88C 001684EC 39 61 00 20 */ addi r11, r1, 0x20
/* 8016C890 001684F0 48 05 A8 E5 */ bl _restgpr_27
/* 8016C894 001684F4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016C898 001684F8 7C 08 03 A6 */ mtlr r0
/* 8016C89C 001684FC 38 21 00 20 */ addi r1, r1, 0x20
/* 8016C8A0 00168500 4E 80 00 20 */ blr
.global func_8016C8A4
func_8016C8A4:
/* 8016C8A4 00168504 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016C8A8 00168508 7C 08 02 A6 */ mflr r0
/* 8016C8AC 0016850C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016C8B0 00168510 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8016C8B4 00168514 7C 7F 1B 78 */ mr r31, r3
/* 8016C8B8 00168518 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016C8BC 0016851C 48 0B 7C CD */ bl func_80224588
/* 8016C8C0 00168520 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C8C4 00168524 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016C8C8 00168528 41 82 00 28 */ beq lbl_8016C8F0
/* 8016C8CC 0016852C 7F E3 FB 78 */ mr r3, r31
/* 8016C8D0 00168530 4B FF B3 7D */ bl func_80167C4C
/* 8016C8D4 00168534 28 03 00 07 */ cmplwi r3, 7
/* 8016C8D8 00168538 7C 7F 1B 78 */ mr r31, r3
/* 8016C8DC 0016853C 40 82 00 20 */ bne lbl_8016C8FC
/* 8016C8E0 00168540 48 23 FF 49 */ bl func_803AC828
/* 8016C8E4 00168544 38 80 00 07 */ li r4, 7
/* 8016C8E8 00168548 48 24 13 F9 */ bl func_803ADCE0
/* 8016C8EC 0016854C 48 00 00 10 */ b lbl_8016C8FC
lbl_8016C8F0:
/* 8016C8F0 00168550 7F E3 FB 78 */ mr r3, r31
/* 8016C8F4 00168554 4B EF 23 2D */ bl func_8005EC20
/* 8016C8F8 00168558 7C 7F 1B 78 */ mr r31, r3
lbl_8016C8FC:
/* 8016C8FC 0016855C 7F E3 FB 78 */ mr r3, r31
/* 8016C900 00168560 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016C904 00168564 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016C908 00168568 7C 08 03 A6 */ mtlr r0
/* 8016C90C 0016856C 38 21 00 10 */ addi r1, r1, 0x10
/* 8016C910 00168570 4E 80 00 20 */ blr
.global func_8016C914
func_8016C914:
/* 8016C914 00168574 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016C918 00168578 7C 08 02 A6 */ mflr r0
/* 8016C91C 0016857C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016C920 00168580 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C924 00168584 54 00 05 29 */ rlwinm. r0, r0, 0, 0x14, 0x14
/* 8016C928 00168588 41 82 00 1C */ beq lbl_8016C944
/* 8016C92C 0016858C 38 60 00 00 */ li r3, 0
/* 8016C930 00168590 38 80 00 0F */ li r4, 0xf
/* 8016C934 00168594 38 A0 00 00 */ li r5, 0
/* 8016C938 00168598 38 C0 00 00 */ li r6, 0
/* 8016C93C 0016859C 4B EF 0E 51 */ bl func_8005D78C
/* 8016C940 001685A0 48 00 00 18 */ b lbl_8016C958
lbl_8016C944:
/* 8016C944 001685A4 38 60 00 00 */ li r3, 0
/* 8016C948 001685A8 38 80 00 0C */ li r4, 0xc
/* 8016C94C 001685AC 38 A0 00 0F */ li r5, 0xf
/* 8016C950 001685B0 38 C0 00 00 */ li r6, 0
/* 8016C954 001685B4 4B EF 0E 39 */ bl func_8005D78C
lbl_8016C958:
/* 8016C958 001685B8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016C95C 001685BC 48 0B 7C 2D */ bl func_80224588
/* 8016C960 001685C0 38 60 00 00 */ li r3, 0
/* 8016C964 001685C4 4B EF 22 BD */ bl func_8005EC20
/* 8016C968 001685C8 28 03 F4 FA */ cmplwi r3, 0xf4fa
/* 8016C96C 001685CC 40 82 FF EC */ bne lbl_8016C958
/* 8016C970 001685D0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016C974 001685D4 7C 08 03 A6 */ mtlr r0
/* 8016C978 001685D8 38 21 00 10 */ addi r1, r1, 0x10
/* 8016C97C 001685DC 4E 80 00 20 */ blr
.global func_8016C980
func_8016C980:
/* 8016C980 001685E0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8016C984 001685E4 7C 08 02 A6 */ mflr r0
/* 8016C988 001685E8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8016C98C 001685EC 39 61 00 30 */ addi r11, r1, 0x30
/* 8016C990 001685F0 48 05 A7 95 */ bl _savegpr_26
/* 8016C994 001685F4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C998 001685F8 54 7E 15 BA */ rlwinm r30, r3, 2, 0x16, 0x1d
/* 8016C99C 001685FC 7C 7B 1B 78 */ mr r27, r3
/* 8016C9A0 00168600 7C A0 F2 14 */ add r5, r0, r30
/* 8016C9A4 00168604 80 05 00 40 */ lwz r0, 0x40(r5)
/* 8016C9A8 00168608 2C 00 00 FF */ cmpwi r0, 0xff
/* 8016C9AC 0016860C 41 82 04 4C */ beq lbl_8016CDF8
/* 8016C9B0 00168610 80 CD 9E C8 */ lwz r6, lbl_8063F188-_SDA_BASE_(r13)
/* 8016C9B4 00168614 54 C4 03 18 */ rlwinm r4, r6, 0, 0xc, 0xc
/* 8016C9B8 00168618 50 C4 04 E6 */ rlwimi r4, r6, 0, 0x13, 0x13
/* 8016C9BC 0016861C 3C 04 FF F8 */ addis r0, r4, 0xfff8
/* 8016C9C0 00168620 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016C9C4 00168624 40 82 00 44 */ bne lbl_8016CA08
/* 8016C9C8 00168628 80 8D 9E F4 */ lwz r4, lbl_8063F1B4-_SDA_BASE_(r13)
/* 8016C9CC 0016862C 2C 04 00 00 */ cmpwi r4, 0
/* 8016C9D0 00168630 41 82 00 38 */ beq lbl_8016CA08
/* 8016C9D4 00168634 38 04 FF FF */ addi r0, r4, -1
/* 8016C9D8 00168638 7C 03 00 00 */ cmpw r3, r0
/* 8016C9DC 0016863C 40 82 00 2C */ bne lbl_8016CA08
/* 8016C9E0 00168640 80 05 00 10 */ lwz r0, 0x10(r5)
/* 8016C9E4 00168644 2C 00 00 02 */ cmpwi r0, 2
/* 8016C9E8 00168648 40 82 00 20 */ bne lbl_8016CA08
/* 8016C9EC 0016864C 38 80 00 FF */ li r4, 0xff
/* 8016C9F0 00168650 38 00 00 00 */ li r0, 0
/* 8016C9F4 00168654 90 85 00 10 */ stw r4, 0x10(r5)
/* 8016C9F8 00168658 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016C9FC 0016865C 7C 83 F1 2E */ stwx r4, r3, r30
/* 8016CA00 00168660 90 0D 9E F4 */ stw r0, lbl_8063F1B4-_SDA_BASE_(r13)
/* 8016CA04 00168664 48 00 03 F4 */ b lbl_8016CDF8
lbl_8016CA08:
/* 8016CA08 00168668 54 C0 04 A5 */ rlwinm. r0, r6, 0, 0x12, 0x12
/* 8016CA0C 0016866C 41 82 00 D8 */ beq lbl_8016CAE4
/* 8016CA10 00168670 54 64 07 FF */ clrlwi. r4, r3, 0x1f
/* 8016CA14 00168674 41 82 00 D0 */ beq lbl_8016CAE4
/* 8016CA18 00168678 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016CA1C 0016867C 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016CA20 00168680 88 03 00 1A */ lbz r0, 0x1a(r3)
/* 8016CA24 00168684 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016CA28 00168688 41 82 00 1C */ beq lbl_8016CA44
/* 8016CA2C 0016868C 38 60 00 03 */ li r3, 3
/* 8016CA30 00168690 38 80 00 00 */ li r4, 0
/* 8016CA34 00168694 38 A0 00 00 */ li r5, 0
/* 8016CA38 00168698 48 00 F5 39 */ bl func_8017BF70
/* 8016CA3C 0016869C 7C 7B 1B 78 */ mr r27, r3
/* 8016CA40 001686A0 48 00 00 14 */ b lbl_8016CA54
lbl_8016CA44:
/* 8016CA44 001686A4 38 60 00 03 */ li r3, 3
/* 8016CA48 001686A8 38 A0 00 01 */ li r5, 1
/* 8016CA4C 001686AC 48 00 F5 25 */ bl func_8017BF70
/* 8016CA50 001686B0 7C 7B 1B 78 */ mr r27, r3
lbl_8016CA54:
/* 8016CA54 001686B4 2C 1B 00 00 */ cmpwi r27, 0
/* 8016CA58 001686B8 40 82 00 74 */ bne lbl_8016CACC
/* 8016CA5C 001686BC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CA60 001686C0 7C A0 F2 14 */ add r5, r0, r30
/* 8016CA64 001686C4 80 05 00 10 */ lwz r0, 0x10(r5)
/* 8016CA68 001686C8 2C 00 00 04 */ cmpwi r0, 4
/* 8016CA6C 001686CC 40 82 00 50 */ bne lbl_8016CABC
/* 8016CA70 001686D0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016CA74 001686D4 38 80 00 11 */ li r4, 0x11
/* 8016CA78 001686D8 80 A5 00 40 */ lwz r5, 0x40(r5)
/* 8016CA7C 001686DC 48 00 9F 95 */ bl func_80176A10
/* 8016CA80 001686E0 3F 40 80 49 */ lis r26, lbl_8048CDB4@ha
/* 8016CA84 001686E4 3B 5A CD B4 */ addi r26, r26, lbl_8048CDB4@l
/* 8016CA88 001686E8 88 7A 00 1A */ lbz r3, 0x1a(r26)
/* 8016CA8C 001686EC 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8016CA90 001686F0 40 82 00 2C */ bne lbl_8016CABC
/* 8016CA94 001686F4 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 8016CA98 001686F8 40 82 00 24 */ bne lbl_8016CABC
/* 8016CA9C 001686FC 38 60 00 00 */ li r3, 0
/* 8016CAA0 00168700 38 80 00 12 */ li r4, 0x12
/* 8016CAA4 00168704 38 A0 00 0F */ li r5, 0xf
/* 8016CAA8 00168708 38 C0 00 00 */ li r6, 0
/* 8016CAAC 0016870C 4B EF 0C E1 */ bl func_8005D78C
/* 8016CAB0 00168710 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016CAB4 00168714 60 00 00 08 */ ori r0, r0, 8
/* 8016CAB8 00168718 98 1A 00 1A */ stb r0, 0x1a(r26)
lbl_8016CABC:
/* 8016CABC 0016871C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CAC0 00168720 38 80 00 FE */ li r4, 0xfe
/* 8016CAC4 00168724 7C 60 F2 14 */ add r3, r0, r30
/* 8016CAC8 00168728 90 83 00 10 */ stw r4, 0x10(r3)
lbl_8016CACC:
/* 8016CACC 0016872C 2C 1B FF FE */ cmpwi r27, -2
/* 8016CAD0 00168730 40 82 03 28 */ bne lbl_8016CDF8
/* 8016CAD4 00168734 48 23 FD 55 */ bl func_803AC828
/* 8016CAD8 00168738 38 80 00 07 */ li r4, 7
/* 8016CADC 0016873C 48 24 12 05 */ bl func_803ADCE0
/* 8016CAE0 00168740 48 00 03 18 */ b lbl_8016CDF8
lbl_8016CAE4:
/* 8016CAE4 00168744 54 C0 03 5B */ rlwinm. r0, r6, 0, 0xd, 0xd
/* 8016CAE8 00168748 41 82 00 1C */ beq lbl_8016CB04
/* 8016CAEC 0016874C 80 0D 9E DC */ lwz r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016CAF0 00168750 38 60 00 09 */ li r3, 9
/* 8016CAF4 00168754 90 6D 9E CC */ stw r3, lbl_8063F18C-_SDA_BASE_(r13)
/* 8016CAF8 00168758 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016CAFC 0016875C 41 82 00 08 */ beq lbl_8016CB04
/* 8016CB00 00168760 4B EE B9 D5 */ bl func_800584D4
lbl_8016CB04:
/* 8016CB04 00168764 4B EE 0D 09 */ bl func_8004D80C
/* 8016CB08 00168768 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016CB0C 0016876C 3B A3 34 C0 */ addi r29, r3, 0x34c0
/* 8016CB10 00168770 3B 80 00 00 */ li r28, 0
/* 8016CB14 00168774 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8016CB18 00168778 40 82 00 18 */ bne lbl_8016CB30
/* 8016CB1C 0016877C 54 83 03 18 */ rlwinm r3, r4, 0, 0xc, 0xc
/* 8016CB20 00168780 50 83 04 E6 */ rlwimi r3, r4, 0, 0x13, 0x13
/* 8016CB24 00168784 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016CB28 00168788 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016CB2C 0016878C 40 82 00 08 */ bne lbl_8016CB34
lbl_8016CB30:
/* 8016CB30 00168790 3B A0 00 00 */ li r29, 0
lbl_8016CB34:
/* 8016CB34 00168794 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CB38 00168798 7C 60 F2 14 */ add r3, r0, r30
/* 8016CB3C 0016879C 83 E3 00 10 */ lwz r31, 0x10(r3)
/* 8016CB40 001687A0 4B E9 FC A9 */ bl func_8000C7E8
/* 8016CB44 001687A4 57 E5 04 3E */ clrlwi r5, r31, 0x10
/* 8016CB48 001687A8 38 80 00 05 */ li r4, 5
/* 8016CB4C 001687AC 53 65 82 1E */ rlwimi r5, r27, 0x10, 8, 0xf
/* 8016CB50 001687B0 4B EB 4C 7D */ bl func_800217CC
/* 8016CB54 001687B4 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CB58 001687B8 38 85 00 10 */ addi r4, r5, 0x10
/* 8016CB5C 001687BC 7C 04 F0 2E */ lwzx r0, r4, r30
/* 8016CB60 001687C0 2C 00 00 03 */ cmpwi r0, 3
/* 8016CB64 001687C4 41 82 00 E4 */ beq lbl_8016CC48
/* 8016CB68 001687C8 40 80 00 14 */ bge lbl_8016CB7C
/* 8016CB6C 001687CC 2C 00 00 01 */ cmpwi r0, 1
/* 8016CB70 001687D0 41 82 00 20 */ beq lbl_8016CB90
/* 8016CB74 001687D4 40 80 00 AC */ bge lbl_8016CC20
/* 8016CB78 001687D8 48 00 02 3C */ b lbl_8016CDB4
lbl_8016CB7C:
/* 8016CB7C 001687DC 2C 00 00 07 */ cmpwi r0, 7
/* 8016CB80 001687E0 40 80 02 34 */ bge lbl_8016CDB4
/* 8016CB84 001687E4 2C 00 00 05 */ cmpwi r0, 5
/* 8016CB88 001687E8 40 80 02 30 */ bge lbl_8016CDB8
/* 8016CB8C 001687EC 48 00 00 F8 */ b lbl_8016CC84
lbl_8016CB90:
/* 8016CB90 001687F0 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016CB94 001687F4 38 C0 00 01 */ li r6, 1
/* 8016CB98 001687F8 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc
/* 8016CB9C 001687FC 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13
/* 8016CBA0 00168800 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016CBA4 00168804 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016CBA8 00168808 40 82 00 28 */ bne lbl_8016CBD0
/* 8016CBAC 0016880C 57 60 07 FF */ clrlwi. r0, r27, 0x1f
/* 8016CBB0 00168810 41 82 00 20 */ beq lbl_8016CBD0
/* 8016CBB4 00168814 80 04 00 00 */ lwz r0, 0(r4)
/* 8016CBB8 00168818 2C 00 00 FE */ cmpwi r0, 0xfe
/* 8016CBBC 0016881C 41 82 00 10 */ beq lbl_8016CBCC
/* 8016CBC0 00168820 80 05 00 18 */ lwz r0, 0x18(r5)
/* 8016CBC4 00168824 2C 00 00 FE */ cmpwi r0, 0xfe
/* 8016CBC8 00168828 40 82 00 08 */ bne lbl_8016CBD0
lbl_8016CBCC:
/* 8016CBCC 0016882C 38 C0 00 00 */ li r6, 0
lbl_8016CBD0:
/* 8016CBD0 00168830 2C 06 00 00 */ cmpwi r6, 0
/* 8016CBD4 00168834 41 82 00 20 */ beq lbl_8016CBF4
/* 8016CBD8 00168838 7C 85 F2 14 */ add r4, r5, r30
/* 8016CBDC 0016883C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016CBE0 00168840 80 A4 00 40 */ lwz r5, 0x40(r4)
/* 8016CBE4 00168844 38 80 00 10 */ li r4, 0x10
/* 8016CBE8 00168848 48 00 9E 29 */ bl func_80176A10
/* 8016CBEC 0016884C 38 00 00 01 */ li r0, 1
/* 8016CBF0 00168850 90 0D 9E FC */ stw r0, lbl_8063F1BC-_SDA_BASE_(r13)
lbl_8016CBF4:
/* 8016CBF4 00168854 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CBF8 00168858 38 80 00 00 */ li r4, 0
/* 8016CBFC 0016885C 38 A0 00 00 */ li r5, 0
/* 8016CC00 00168860 7C 60 F2 14 */ add r3, r0, r30
/* 8016CC04 00168864 80 03 00 40 */ lwz r0, 0x40(r3)
/* 8016CC08 00168868 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8016CC0C 0016886C 4B FF F8 6D */ bl func_8016C478
/* 8016CC10 00168870 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CC14 00168874 7C 80 F2 14 */ add r4, r0, r30
/* 8016CC18 00168878 90 64 00 10 */ stw r3, 0x10(r4)
/* 8016CC1C 0016887C 48 00 01 9C */ b lbl_8016CDB8
lbl_8016CC20:
/* 8016CC20 00168880 7C 65 F2 14 */ add r3, r5, r30
/* 8016CC24 00168884 38 80 00 01 */ li r4, 1
/* 8016CC28 00168888 80 03 00 40 */ lwz r0, 0x40(r3)
/* 8016CC2C 0016888C 38 A0 00 00 */ li r5, 0
/* 8016CC30 00168890 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8016CC34 00168894 4B FF F8 45 */ bl func_8016C478
/* 8016CC38 00168898 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CC3C 0016889C 7C 80 F2 14 */ add r4, r0, r30
/* 8016CC40 001688A0 90 64 00 10 */ stw r3, 0x10(r4)
/* 8016CC44 001688A4 48 00 01 74 */ b lbl_8016CDB8
lbl_8016CC48:
/* 8016CC48 001688A8 7C 85 F2 14 */ add r4, r5, r30
/* 8016CC4C 001688AC 80 64 00 40 */ lwz r3, 0x40(r4)
/* 8016CC50 001688B0 80 84 00 30 */ lwz r4, 0x30(r4)
/* 8016CC54 001688B4 48 00 01 BD */ bl func_8016CE10
/* 8016CC58 001688B8 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CC5C 001688BC 54 65 06 3E */ clrlwi r5, r3, 0x18
/* 8016CC60 001688C0 38 80 00 02 */ li r4, 2
/* 8016CC64 001688C4 7C 60 F2 14 */ add r3, r0, r30
/* 8016CC68 001688C8 80 03 00 40 */ lwz r0, 0x40(r3)
/* 8016CC6C 001688CC 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8016CC70 001688D0 4B FF F8 09 */ bl func_8016C478
/* 8016CC74 001688D4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CC78 001688D8 7C 80 F2 14 */ add r4, r0, r30
/* 8016CC7C 001688DC 90 64 00 10 */ stw r3, 0x10(r4)
/* 8016CC80 001688E0 48 00 01 38 */ b lbl_8016CDB8
lbl_8016CC84:
/* 8016CC84 001688E4 2C 1D 00 00 */ cmpwi r29, 0
/* 8016CC88 001688E8 41 82 00 30 */ beq lbl_8016CCB8
/* 8016CC8C 001688EC 38 C0 00 00 */ li r6, 0
/* 8016CC90 001688F0 38 00 00 80 */ li r0, 0x80
/* 8016CC94 001688F4 98 C1 00 08 */ stb r6, 8(r1)
/* 8016CC98 001688F8 7F A3 EB 78 */ mr r3, r29
/* 8016CC9C 001688FC C0 22 90 68 */ lfs f1, lbl_80641668-_SDA2_BASE_(r2)
/* 8016CCA0 00168900 38 81 00 08 */ addi r4, r1, 8
/* 8016CCA4 00168904 98 C1 00 09 */ stb r6, 9(r1)
/* 8016CCA8 00168908 38 A0 00 00 */ li r5, 0
/* 8016CCAC 0016890C 98 C1 00 0A */ stb r6, 0xa(r1)
/* 8016CCB0 00168910 98 01 00 0B */ stb r0, 0xb(r1)
/* 8016CCB4 00168914 4B EE 1F 59 */ bl func_8004EC0C
lbl_8016CCB8:
/* 8016CCB8 00168918 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016CCBC 0016891C 54 03 03 18 */ rlwinm r3, r0, 0, 0xc, 0xc
/* 8016CCC0 00168920 50 03 04 E6 */ rlwimi r3, r0, 0, 0x13, 0x13
/* 8016CCC4 00168924 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016CCC8 00168928 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016CCCC 0016892C 40 82 00 18 */ bne lbl_8016CCE4
/* 8016CCD0 00168930 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016CCD4 00168934 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016CCD8 00168938 88 03 00 1A */ lbz r0, 0x1a(r3)
/* 8016CCDC 0016893C 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016CCE0 00168940 40 82 00 1C */ bne lbl_8016CCFC
lbl_8016CCE4:
/* 8016CCE4 00168944 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CCE8 00168948 38 80 00 11 */ li r4, 0x11
/* 8016CCEC 0016894C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016CCF0 00168950 7C A0 F2 14 */ add r5, r0, r30
/* 8016CCF4 00168954 80 A5 00 40 */ lwz r5, 0x40(r5)
/* 8016CCF8 00168958 48 00 9D 19 */ bl func_80176A10
lbl_8016CCFC:
/* 8016CCFC 0016895C 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016CD00 00168960 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016CD04 00168964 41 82 00 3C */ beq lbl_8016CD40
/* 8016CD08 00168968 3F 40 80 49 */ lis r26, lbl_8048CDB4@ha
/* 8016CD0C 0016896C 3B 5A CD B4 */ addi r26, r26, lbl_8048CDB4@l
/* 8016CD10 00168970 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016CD14 00168974 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016CD18 00168978 40 82 00 28 */ bne lbl_8016CD40
/* 8016CD1C 0016897C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CD20 00168980 38 60 00 82 */ li r3, 0x82
/* 8016CD24 00168984 38 A0 00 01 */ li r5, 1
/* 8016CD28 00168988 7C 80 F2 14 */ add r4, r0, r30
/* 8016CD2C 0016898C 80 84 00 40 */ lwz r4, 0x40(r4)
/* 8016CD30 00168990 48 00 0E E1 */ bl func_8016DC10
/* 8016CD34 00168994 88 1A 00 1A */ lbz r0, 0x1a(r26)
/* 8016CD38 00168998 60 00 00 10 */ ori r0, r0, 0x10
/* 8016CD3C 0016899C 98 1A 00 1A */ stb r0, 0x1a(r26)
lbl_8016CD40:
/* 8016CD40 001689A0 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CD44 001689A4 7C 64 DA 14 */ add r3, r4, r27
/* 8016CD48 001689A8 88 03 00 74 */ lbz r0, 0x74(r3)
/* 8016CD4C 001689AC 2C 00 00 00 */ cmpwi r0, 0
/* 8016CD50 001689B0 41 82 00 3C */ beq lbl_8016CD8C
/* 8016CD54 001689B4 7C 64 F2 14 */ add r3, r4, r30
/* 8016CD58 001689B8 38 80 00 04 */ li r4, 4
/* 8016CD5C 001689BC 80 03 00 40 */ lwz r0, 0x40(r3)
/* 8016CD60 001689C0 38 A0 00 00 */ li r5, 0
/* 8016CD64 001689C4 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8016CD68 001689C8 4B FF F7 11 */ bl func_8016C478
/* 8016CD6C 001689CC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CD70 001689D0 38 80 00 00 */ li r4, 0
/* 8016CD74 001689D4 7C A0 F2 14 */ add r5, r0, r30
/* 8016CD78 001689D8 90 65 00 10 */ stw r3, 0x10(r5)
/* 8016CD7C 001689DC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CD80 001689E0 7C 60 DA 14 */ add r3, r0, r27
/* 8016CD84 001689E4 98 83 00 74 */ stb r4, 0x74(r3)
/* 8016CD88 001689E8 48 00 00 30 */ b lbl_8016CDB8
lbl_8016CD8C:
/* 8016CD8C 001689EC 7C 64 F2 14 */ add r3, r4, r30
/* 8016CD90 001689F0 38 80 00 03 */ li r4, 3
/* 8016CD94 001689F4 80 03 00 40 */ lwz r0, 0x40(r3)
/* 8016CD98 001689F8 38 A0 00 00 */ li r5, 0
/* 8016CD9C 001689FC 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 8016CDA0 00168A00 4B FF F6 D9 */ bl func_8016C478
/* 8016CDA4 00168A04 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016CDA8 00168A08 7C 80 F2 14 */ add r4, r0, r30
/* 8016CDAC 00168A0C 90 64 00 10 */ stw r3, 0x10(r4)
/* 8016CDB0 00168A10 48 00 00 08 */ b lbl_8016CDB8
lbl_8016CDB4:
/* 8016CDB4 00168A14 3B 80 00 01 */ li r28, 1
lbl_8016CDB8:
/* 8016CDB8 00168A18 2C 1F 00 04 */ cmpwi r31, 4
/* 8016CDBC 00168A1C 41 82 00 3C */ beq lbl_8016CDF8
/* 8016CDC0 00168A20 2C 1C 00 00 */ cmpwi r28, 0
/* 8016CDC4 00168A24 40 82 00 34 */ bne lbl_8016CDF8
/* 8016CDC8 00168A28 2C 1D 00 00 */ cmpwi r29, 0
/* 8016CDCC 00168A2C 41 82 00 2C */ beq lbl_8016CDF8
/* 8016CDD0 00168A30 38 00 00 00 */ li r0, 0
/* 8016CDD4 00168A34 C0 22 90 68 */ lfs f1, lbl_80641668-_SDA2_BASE_(r2)
/* 8016CDD8 00168A38 98 01 00 08 */ stb r0, 8(r1)
/* 8016CDDC 00168A3C 7F A3 EB 78 */ mr r3, r29
/* 8016CDE0 00168A40 38 81 00 08 */ addi r4, r1, 8
/* 8016CDE4 00168A44 38 A0 00 00 */ li r5, 0
/* 8016CDE8 00168A48 98 01 00 09 */ stb r0, 9(r1)
/* 8016CDEC 00168A4C 98 01 00 0A */ stb r0, 0xa(r1)
/* 8016CDF0 00168A50 98 01 00 0B */ stb r0, 0xb(r1)
/* 8016CDF4 00168A54 4B EE 1E 19 */ bl func_8004EC0C
lbl_8016CDF8:
/* 8016CDF8 00168A58 39 61 00 30 */ addi r11, r1, 0x30
/* 8016CDFC 00168A5C 48 05 A3 75 */ bl _restgpr_26
/* 8016CE00 00168A60 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8016CE04 00168A64 7C 08 03 A6 */ mtlr r0
/* 8016CE08 00168A68 38 21 00 30 */ addi r1, r1, 0x30
/* 8016CE0C 00168A6C 4E 80 00 20 */ blr
.global func_8016CE10
func_8016CE10:
/* 8016CE10 00168A70 3C 60 80 42 */ lis r3, lbl_8041F820@ha
/* 8016CE14 00168A74 88 04 00 08 */ lbz r0, 8(r4)
/* 8016CE18 00168A78 38 63 F8 20 */ addi r3, r3, lbl_8041F820@l
/* 8016CE1C 00168A7C 7C 63 00 AE */ lbzx r3, r3, r0
/* 8016CE20 00168A80 4E 80 00 20 */ blr
.global func_8016CE24
func_8016CE24:
/* 8016CE24 00168A84 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016CE28 00168A88 7C 08 02 A6 */ mflr r0
/* 8016CE2C 00168A8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016CE30 00168A90 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8016CE34 00168A94 3F E0 80 42 */ lis r31, lbl_8041F7F8@ha
/* 8016CE38 00168A98 3B FF F7 F8 */ addi r31, r31, lbl_8041F7F8@l
/* 8016CE3C 00168A9C 80 0D 9F 18 */ lwz r0, lbl_8063F1D8-_SDA_BASE_(r13)
/* 8016CE40 00168AA0 2C 00 00 00 */ cmpwi r0, 0
/* 8016CE44 00168AA4 40 82 00 1C */ bne lbl_8016CE60
/* 8016CE48 00168AA8 38 60 00 A4 */ li r3, 0xa4
/* 8016CE4C 00168AAC 48 06 DB E5 */ bl __nw__FUl
/* 8016CE50 00168AB0 2C 03 00 00 */ cmpwi r3, 0
/* 8016CE54 00168AB4 41 82 00 08 */ beq lbl_8016CE5C
/* 8016CE58 00168AB8 48 00 21 75 */ bl func_8016EFCC
lbl_8016CE5C:
/* 8016CE5C 00168ABC 90 6D 9F 18 */ stw r3, lbl_8063F1D8-_SDA_BASE_(r13)
lbl_8016CE60:
/* 8016CE60 00168AC0 80 6D 9F 18 */ lwz r3, lbl_8063F1D8-_SDA_BASE_(r13)
/* 8016CE64 00168AC4 38 DF 00 34 */ addi r6, r31, 0x34
/* 8016CE68 00168AC8 38 80 00 02 */ li r4, 2
/* 8016CE6C 00168ACC 38 A2 90 70 */ addi r5, r2, lbl_80641670-_SDA2_BASE_
/* 8016CE70 00168AD0 48 00 21 69 */ bl func_8016EFD8
/* 8016CE74 00168AD4 80 6D 9F 18 */ lwz r3, lbl_8063F1D8-_SDA_BASE_(r13)
/* 8016CE78 00168AD8 38 DF 00 48 */ addi r6, r31, 0x48
/* 8016CE7C 00168ADC 38 80 00 1F */ li r4, 0x1f
/* 8016CE80 00168AE0 38 A2 90 70 */ addi r5, r2, lbl_80641670-_SDA2_BASE_
/* 8016CE84 00168AE4 48 00 21 55 */ bl func_8016EFD8
/* 8016CE88 00168AE8 80 6D 9F 18 */ lwz r3, lbl_8063F1D8-_SDA_BASE_(r13)
/* 8016CE8C 00168AEC 38 DF 00 58 */ addi r6, r31, 0x58
/* 8016CE90 00168AF0 38 80 00 01 */ li r4, 1
/* 8016CE94 00168AF4 38 A2 90 70 */ addi r5, r2, lbl_80641670-_SDA2_BASE_
/* 8016CE98 00168AF8 48 00 21 41 */ bl func_8016EFD8
/* 8016CE9C 00168AFC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016CEA0 00168B00 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016CEA4 00168B04 7C 08 03 A6 */ mtlr r0
/* 8016CEA8 00168B08 38 21 00 10 */ addi r1, r1, 0x10
/* 8016CEAC 00168B0C 4E 80 00 20 */ blr
.global func_8016CEB0
func_8016CEB0:
/* 8016CEB0 00168B10 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8016CEB4 00168B14 7C 08 02 A6 */ mflr r0
/* 8016CEB8 00168B18 90 01 00 54 */ stw r0, 0x54(r1)
/* 8016CEBC 00168B1C 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 8016CEC0 00168B20 93 C1 00 48 */ stw r30, 0x48(r1)
/* 8016CEC4 00168B24 7C 7E 1B 78 */ mr r30, r3
/* 8016CEC8 00168B28 4B EC 8E D5 */ bl func_80035D9C
/* 8016CECC 00168B2C 2C 03 00 00 */ cmpwi r3, 0
/* 8016CED0 00168B30 7C 7F 1B 78 */ mr r31, r3
/* 8016CED4 00168B34 41 82 00 C4 */ beq lbl_8016CF98
/* 8016CED8 00168B38 38 61 00 08 */ addi r3, r1, 8
/* 8016CEDC 00168B3C 4B EC 8D D5 */ bl func_80035CB0
/* 8016CEE0 00168B40 A0 BE 00 04 */ lhz r5, 4(r30)
/* 8016CEE4 00168B44 38 00 00 00 */ li r0, 0
/* 8016CEE8 00168B48 38 61 00 1A */ addi r3, r1, 0x1a
/* 8016CEEC 00168B4C 38 9E 00 1C */ addi r4, r30, 0x1c
/* 8016CEF0 00168B50 B0 A1 00 08 */ sth r5, 8(r1)
/* 8016CEF4 00168B54 38 A0 00 10 */ li r5, 0x10
/* 8016CEF8 00168B58 88 DE 00 06 */ lbz r6, 6(r30)
/* 8016CEFC 00168B5C B0 C1 00 0A */ sth r6, 0xa(r1)
/* 8016CF00 00168B60 88 FE 00 03 */ lbz r7, 3(r30)
/* 8016CF04 00168B64 7C C7 00 D0 */ neg r6, r7
/* 8016CF08 00168B68 7C C6 3B 78 */ or r6, r6, r7
/* 8016CF0C 00168B6C 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 8016CF10 00168B70 98 C1 00 0C */ stb r6, 0xc(r1)
/* 8016CF14 00168B74 88 FE 00 0F */ lbz r7, 0xf(r30)
/* 8016CF18 00168B78 7C C7 00 D0 */ neg r6, r7
/* 8016CF1C 00168B7C 7C C6 3B 78 */ or r6, r6, r7
/* 8016CF20 00168B80 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 8016CF24 00168B84 98 C1 00 0D */ stb r6, 0xd(r1)
/* 8016CF28 00168B88 80 DE 00 08 */ lwz r6, 8(r30)
/* 8016CF2C 00168B8C 90 C1 00 14 */ stw r6, 0x14(r1)
/* 8016CF30 00168B90 88 DE 00 0E */ lbz r6, 0xe(r30)
/* 8016CF34 00168B94 98 C1 00 11 */ stb r6, 0x11(r1)
/* 8016CF38 00168B98 A0 DE 00 14 */ lhz r6, 0x14(r30)
/* 8016CF3C 00168B9C 7C C6 00 34 */ cntlzw r6, r6
/* 8016CF40 00168BA0 98 01 00 0F */ stb r0, 0xf(r1)
/* 8016CF44 00168BA4 54 C0 D9 7E */ srwi r0, r6, 5
/* 8016CF48 00168BA8 98 01 00 0E */ stb r0, 0xe(r1)
/* 8016CF4C 00168BAC A0 1E 00 16 */ lhz r0, 0x16(r30)
/* 8016CF50 00168BB0 98 01 00 10 */ stb r0, 0x10(r1)
/* 8016CF54 00168BB4 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 8016CF58 00168BB8 B0 01 00 12 */ sth r0, 0x12(r1)
/* 8016CF5C 00168BBC 88 1E 00 02 */ lbz r0, 2(r30)
/* 8016CF60 00168BC0 98 01 00 18 */ stb r0, 0x18(r1)
/* 8016CF64 00168BC4 A0 1E 00 0C */ lhz r0, 0xc(r30)
/* 8016CF68 00168BC8 98 01 00 19 */ stb r0, 0x19(r1)
/* 8016CF6C 00168BCC 48 00 A1 15 */ bl func_80177080
/* 8016CF70 00168BD0 88 9E 00 01 */ lbz r4, 1(r30)
/* 8016CF74 00168BD4 7F E3 FB 78 */ mr r3, r31
/* 8016CF78 00168BD8 38 A1 00 08 */ addi r5, r1, 8
/* 8016CF7C 00168BDC 4B EC 9B 91 */ bl func_80036B0C
/* 8016CF80 00168BE0 80 6D 9E B4 */ lwz r3, lbl_8063F174-_SDA_BASE_(r13)
/* 8016CF84 00168BE4 38 80 00 01 */ li r4, 1
/* 8016CF88 00168BE8 38 03 00 01 */ addi r0, r3, 1
/* 8016CF8C 00168BEC 90 0D 9E B4 */ stw r0, lbl_8063F174-_SDA_BASE_(r13)
/* 8016CF90 00168BF0 88 7E 00 01 */ lbz r3, 1(r30)
/* 8016CF94 00168BF4 48 00 02 35 */ bl func_8016D1C8
lbl_8016CF98:
/* 8016CF98 00168BF8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8016CF9C 00168BFC 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 8016CFA0 00168C00 83 C1 00 48 */ lwz r30, 0x48(r1)
/* 8016CFA4 00168C04 7C 08 03 A6 */ mtlr r0
/* 8016CFA8 00168C08 38 21 00 50 */ addi r1, r1, 0x50
/* 8016CFAC 00168C0C 4E 80 00 20 */ blr
.global func_8016CFB0
func_8016CFB0:
/* 8016CFB0 00168C10 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 8016CFB4 00168C14 7C 08 02 A6 */ mflr r0
/* 8016CFB8 00168C18 90 01 00 74 */ stw r0, 0x74(r1)
/* 8016CFBC 00168C1C 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 8016CFC0 00168C20 7C 9F 23 78 */ mr r31, r4
/* 8016CFC4 00168C24 93 C1 00 68 */ stw r30, 0x68(r1)
/* 8016CFC8 00168C28 7C 7E 1B 78 */ mr r30, r3
/* 8016CFCC 00168C2C 93 A1 00 64 */ stw r29, 0x64(r1)
/* 8016CFD0 00168C30 93 81 00 60 */ stw r28, 0x60(r1)
/* 8016CFD4 00168C34 80 0D 9E A8 */ lwz r0, lbl_8063F168-_SDA_BASE_(r13)
/* 8016CFD8 00168C38 2C 00 00 01 */ cmpwi r0, 1
/* 8016CFDC 00168C3C 40 82 00 3C */ bne lbl_8016D018
/* 8016CFE0 00168C40 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016CFE4 00168C44 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016CFE8 00168C48 41 82 00 30 */ beq lbl_8016D018
/* 8016CFEC 00168C4C 3B A0 FF FF */ li r29, -1
/* 8016CFF0 00168C50 48 00 00 20 */ b lbl_8016D010
lbl_8016CFF4:
/* 8016CFF4 00168C54 7F E4 FB 78 */ mr r4, r31
/* 8016CFF8 00168C58 38 60 00 80 */ li r3, 0x80
/* 8016CFFC 00168C5C 38 A0 00 00 */ li r5, 0
/* 8016D000 00168C60 48 00 EF 71 */ bl func_8017BF70
/* 8016D004 00168C64 7C 7D 1B 78 */ mr r29, r3
/* 8016D008 00168C68 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016D00C 00168C6C 48 0B 75 7D */ bl func_80224588
lbl_8016D010:
/* 8016D010 00168C70 2C 1D FF FF */ cmpwi r29, -1
/* 8016D014 00168C74 41 82 FF E0 */ beq lbl_8016CFF4
lbl_8016D018:
/* 8016D018 00168C78 4B EC 8D 85 */ bl func_80035D9C
/* 8016D01C 00168C7C 2C 03 00 00 */ cmpwi r3, 0
/* 8016D020 00168C80 7C 7C 1B 78 */ mr r28, r3
/* 8016D024 00168C84 41 82 01 7C */ beq lbl_8016D1A0
/* 8016D028 00168C88 38 61 00 28 */ addi r3, r1, 0x28
/* 8016D02C 00168C8C 4B EC 8C 85 */ bl func_80035CB0
/* 8016D030 00168C90 7F C3 F3 78 */ mr r3, r30
/* 8016D034 00168C94 38 80 00 A2 */ li r4, 0xa2
/* 8016D038 00168C98 38 A0 00 00 */ li r5, 0
/* 8016D03C 00168C9C 48 27 09 A1 */ bl func_803DD9DC
/* 8016D040 00168CA0 54 7D 04 3E */ clrlwi r29, r3, 0x10
/* 8016D044 00168CA4 7F C3 F3 78 */ mr r3, r30
/* 8016D048 00168CA8 38 80 00 05 */ li r4, 5
/* 8016D04C 00168CAC 38 A0 00 00 */ li r5, 0
/* 8016D050 00168CB0 48 27 09 8D */ bl func_803DD9DC
/* 8016D054 00168CB4 B0 61 00 28 */ sth r3, 0x28(r1)
/* 8016D058 00168CB8 7F C3 F3 78 */ mr r3, r30
/* 8016D05C 00168CBC 38 80 00 70 */ li r4, 0x70
/* 8016D060 00168CC0 38 A0 00 00 */ li r5, 0
/* 8016D064 00168CC4 48 27 09 79 */ bl func_803DD9DC
/* 8016D068 00168CC8 B0 61 00 2A */ sth r3, 0x2a(r1)
/* 8016D06C 00168CCC 7F C3 F3 78 */ mr r3, r30
/* 8016D070 00168CD0 48 26 F0 61 */ bl func_803DC0D0
/* 8016D074 00168CD4 54 65 06 3E */ clrlwi r5, r3, 0x18
/* 8016D078 00168CD8 7F C3 F3 78 */ mr r3, r30
/* 8016D07C 00168CDC 7C 05 00 D0 */ neg r0, r5
/* 8016D080 00168CE0 38 80 00 6F */ li r4, 0x6f
/* 8016D084 00168CE4 7C 00 2B 78 */ or r0, r0, r5
/* 8016D088 00168CE8 38 A0 00 00 */ li r5, 0
/* 8016D08C 00168CEC 54 00 0F FE */ srwi r0, r0, 0x1f
/* 8016D090 00168CF0 98 01 00 2C */ stb r0, 0x2c(r1)
/* 8016D094 00168CF4 48 27 09 49 */ bl func_803DD9DC
/* 8016D098 00168CF8 7C 03 00 D0 */ neg r0, r3
/* 8016D09C 00168CFC 38 80 00 00 */ li r4, 0
/* 8016D0A0 00168D00 7C 00 1B 78 */ or r0, r0, r3
/* 8016D0A4 00168D04 7F C3 F3 78 */ mr r3, r30
/* 8016D0A8 00168D08 54 00 0F FE */ srwi r0, r0, 0x1f
/* 8016D0AC 00168D0C 38 A0 00 00 */ li r5, 0
/* 8016D0B0 00168D10 98 01 00 2D */ stb r0, 0x2d(r1)
/* 8016D0B4 00168D14 48 27 09 29 */ bl func_803DD9DC
/* 8016D0B8 00168D18 90 61 00 34 */ stw r3, 0x34(r1)
/* 8016D0BC 00168D1C 7F C3 F3 78 */ mr r3, r30
/* 8016D0C0 00168D20 38 80 00 09 */ li r4, 9
/* 8016D0C4 00168D24 38 A0 00 00 */ li r5, 0
/* 8016D0C8 00168D28 48 27 09 15 */ bl func_803DD9DC
/* 8016D0CC 00168D2C 7F A0 00 34 */ cntlzw r0, r29
/* 8016D0D0 00168D30 3B A0 00 00 */ li r29, 0
/* 8016D0D4 00168D34 54 00 D9 7E */ srwi r0, r0, 5
/* 8016D0D8 00168D38 98 61 00 31 */ stb r3, 0x31(r1)
/* 8016D0DC 00168D3C 7F C3 F3 78 */ mr r3, r30
/* 8016D0E0 00168D40 38 80 00 9A */ li r4, 0x9a
/* 8016D0E4 00168D44 98 01 00 2E */ stb r0, 0x2e(r1)
/* 8016D0E8 00168D48 38 A0 00 00 */ li r5, 0
/* 8016D0EC 00168D4C 9B A1 00 2F */ stb r29, 0x2f(r1)
/* 8016D0F0 00168D50 48 27 08 ED */ bl func_803DD9DC
/* 8016D0F4 00168D54 98 61 00 30 */ stb r3, 0x30(r1)
/* 8016D0F8 00168D58 7F C3 F3 78 */ mr r3, r30
/* 8016D0FC 00168D5C 38 80 00 9F */ li r4, 0x9f
/* 8016D100 00168D60 38 A0 00 00 */ li r5, 0
/* 8016D104 00168D64 48 27 08 D9 */ bl func_803DD9DC
/* 8016D108 00168D68 B0 61 00 32 */ sth r3, 0x32(r1)
/* 8016D10C 00168D6C 9B A1 00 38 */ stb r29, 0x38(r1)
/* 8016D110 00168D70 48 23 F7 19 */ bl func_803AC828
/* 8016D114 00168D74 2C 03 00 00 */ cmpwi r3, 0
/* 8016D118 00168D78 7C 7D 1B 78 */ mr r29, r3
/* 8016D11C 00168D7C 41 82 00 28 */ beq lbl_8016D144
/* 8016D120 00168D80 48 23 F7 29 */ bl func_803AC848
/* 8016D124 00168D84 2C 03 00 00 */ cmpwi r3, 0
/* 8016D128 00168D88 7C 64 1B 78 */ mr r4, r3
/* 8016D12C 00168D8C 41 82 00 18 */ beq lbl_8016D144
/* 8016D130 00168D90 7F A3 EB 78 */ mr r3, r29
/* 8016D134 00168D94 7F E6 FB 78 */ mr r6, r31
/* 8016D138 00168D98 38 A0 00 02 */ li r5, 2
/* 8016D13C 00168D9C 48 25 BB 0D */ bl func_803C8C48
/* 8016D140 00168DA0 98 61 00 38 */ stb r3, 0x38(r1)
lbl_8016D144:
/* 8016D144 00168DA4 7F C3 F3 78 */ mr r3, r30
/* 8016D148 00168DA8 38 80 00 0A */ li r4, 0xa
/* 8016D14C 00168DAC 38 A0 00 00 */ li r5, 0
/* 8016D150 00168DB0 48 27 08 8D */ bl func_803DD9DC
/* 8016D154 00168DB4 98 61 00 39 */ stb r3, 0x39(r1)
/* 8016D158 00168DB8 7F C3 F3 78 */ mr r3, r30
/* 8016D15C 00168DBC 38 A1 00 08 */ addi r5, r1, 8
/* 8016D160 00168DC0 38 80 00 74 */ li r4, 0x74
/* 8016D164 00168DC4 48 27 08 79 */ bl func_803DD9DC
/* 8016D168 00168DC8 38 61 00 3A */ addi r3, r1, 0x3a
/* 8016D16C 00168DCC 38 81 00 08 */ addi r4, r1, 8
/* 8016D170 00168DD0 38 A0 00 10 */ li r5, 0x10
/* 8016D174 00168DD4 48 00 9F 0D */ bl func_80177080
/* 8016D178 00168DD8 7F 83 E3 78 */ mr r3, r28
/* 8016D17C 00168DDC 7F E4 FB 78 */ mr r4, r31
/* 8016D180 00168DE0 38 A1 00 28 */ addi r5, r1, 0x28
/* 8016D184 00168DE4 4B EC 99 89 */ bl func_80036B0C
/* 8016D188 00168DE8 80 AD 9E B4 */ lwz r5, lbl_8063F174-_SDA_BASE_(r13)
/* 8016D18C 00168DEC 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 8016D190 00168DF0 38 80 00 01 */ li r4, 1
/* 8016D194 00168DF4 38 05 00 01 */ addi r0, r5, 1
/* 8016D198 00168DF8 90 0D 9E B4 */ stw r0, lbl_8063F174-_SDA_BASE_(r13)
/* 8016D19C 00168DFC 48 00 00 2D */ bl func_8016D1C8
lbl_8016D1A0:
/* 8016D1A0 00168E00 80 01 00 74 */ lwz r0, 0x74(r1)
/* 8016D1A4 00168E04 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 8016D1A8 00168E08 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 8016D1AC 00168E0C 83 A1 00 64 */ lwz r29, 0x64(r1)
/* 8016D1B0 00168E10 83 81 00 60 */ lwz r28, 0x60(r1)
/* 8016D1B4 00168E14 7C 08 03 A6 */ mtlr r0
/* 8016D1B8 00168E18 38 21 00 70 */ addi r1, r1, 0x70
/* 8016D1BC 00168E1C 4E 80 00 20 */ blr
.global func_8016D1C0
func_8016D1C0:
/* 8016D1C0 00168E20 98 6D 9F 00 */ stb r3, lbl_8063F1C0-_SDA_BASE_(r13)
/* 8016D1C4 00168E24 4E 80 00 20 */ blr
.global func_8016D1C8
func_8016D1C8:
/* 8016D1C8 00168E28 38 AD 9F 04 */ addi r5, r13, lbl_8063F1C4-_SDA_BASE_
/* 8016D1CC 00168E2C 7C 85 19 AE */ stbx r4, r5, r3
/* 8016D1D0 00168E30 4E 80 00 20 */ blr
.global func_8016D1D4
func_8016D1D4:
/* 8016D1D4 00168E34 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016D1D8 00168E38 7C 08 02 A6 */ mflr r0
/* 8016D1DC 00168E3C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016D1E0 00168E40 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016D1E4 00168E44 7C DF 33 78 */ mr r31, r6
/* 8016D1E8 00168E48 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8016D1EC 00168E4C 7C BE 2B 78 */ mr r30, r5
/* 8016D1F0 00168E50 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016D1F4 00168E54 7C 9D 23 78 */ mr r29, r4
/* 8016D1F8 00168E58 93 81 00 10 */ stw r28, 0x10(r1)
/* 8016D1FC 00168E5C 7C 7C 1B 78 */ mr r28, r3
/* 8016D200 00168E60 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016D204 00168E64 48 00 9A 01 */ bl func_80176C04
/* 8016D208 00168E68 57 E0 80 1E */ slwi r0, r31, 0x10
/* 8016D20C 00168E6C 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016D210 00168E70 7F 84 E3 78 */ mr r4, r28
/* 8016D214 00168E74 7F C6 F3 78 */ mr r6, r30
/* 8016D218 00168E78 7F A5 03 78 */ or r5, r29, r0
/* 8016D21C 00168E7C 38 E0 00 01 */ li r7, 1
/* 8016D220 00168E80 48 00 9B 39 */ bl func_80176D58
/* 8016D224 00168E84 4B E9 F5 C5 */ bl func_8000C7E8
/* 8016D228 00168E88 57 80 80 1E */ slwi r0, r28, 0x10
/* 8016D22C 00168E8C 38 80 00 03 */ li r4, 3
/* 8016D230 00168E90 7C 05 EB 78 */ or r5, r0, r29
/* 8016D234 00168E94 4B EB 45 99 */ bl func_800217CC
/* 8016D238 00168E98 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016D23C 00168E9C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8016D240 00168EA0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016D244 00168EA4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016D248 00168EA8 83 81 00 10 */ lwz r28, 0x10(r1)
/* 8016D24C 00168EAC 7C 08 03 A6 */ mtlr r0
/* 8016D250 00168EB0 38 21 00 20 */ addi r1, r1, 0x20
/* 8016D254 00168EB4 4E 80 00 20 */ blr
.global func_8016D258
func_8016D258:
/* 8016D258 00168EB8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8016D25C 00168EBC 7C 08 02 A6 */ mflr r0
/* 8016D260 00168EC0 90 01 00 34 */ stw r0, 0x34(r1)
/* 8016D264 00168EC4 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8016D268 00168EC8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8016D26C 00168ECC 4B EC 8B 31 */ bl func_80035D9C
/* 8016D270 00168ED0 2C 03 00 00 */ cmpwi r3, 0
/* 8016D274 00168ED4 7C 7E 1B 78 */ mr r30, r3
/* 8016D278 00168ED8 41 82 00 D0 */ beq lbl_8016D348
/* 8016D27C 00168EDC 38 00 00 04 */ li r0, 4
/* 8016D280 00168EE0 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016D284 00168EE4 90 0D 9E B0 */ stw r0, lbl_8063F170-_SDA_BASE_(r13)
/* 8016D288 00168EE8 48 00 99 7D */ bl func_80176C04
/* 8016D28C 00168EEC 3F E0 80 49 */ lis r31, lbl_8048CDB4@ha
/* 8016D290 00168EF0 80 6D 9E B8 */ lwz r3, lbl_8063F178-_SDA_BASE_(r13)
/* 8016D294 00168EF4 3B FF CD B4 */ addi r31, r31, lbl_8048CDB4@l
/* 8016D298 00168EF8 88 1F 00 1B */ lbz r0, 0x1b(r31)
/* 8016D29C 00168EFC 7C 03 00 00 */ cmpw r3, r0
/* 8016D2A0 00168F00 41 82 00 2C */ beq lbl_8016D2CC
/* 8016D2A4 00168F04 7F C3 F3 78 */ mr r3, r30
/* 8016D2A8 00168F08 4B EC 8C 31 */ bl func_80035ED8
/* 8016D2AC 00168F0C 7C 64 1B 78 */ mr r4, r3
/* 8016D2B0 00168F10 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016D2B4 00168F14 38 A0 00 00 */ li r5, 0
/* 8016D2B8 00168F18 38 C0 00 00 */ li r6, 0
/* 8016D2BC 00168F1C 38 E0 00 01 */ li r7, 1
/* 8016D2C0 00168F20 48 00 9A 2D */ bl func_80176CEC
/* 8016D2C4 00168F24 88 1F 00 1B */ lbz r0, 0x1b(r31)
/* 8016D2C8 00168F28 90 0D 9E B8 */ stw r0, lbl_8063F178-_SDA_BASE_(r13)
lbl_8016D2CC:
/* 8016D2CC 00168F2C 38 61 00 08 */ addi r3, r1, 8
/* 8016D2D0 00168F30 48 00 91 15 */ bl func_801763E4
/* 8016D2D4 00168F34 7F C3 F3 78 */ mr r3, r30
/* 8016D2D8 00168F38 4B EC 8B D1 */ bl func_80035EA8
/* 8016D2DC 00168F3C 2C 03 00 2D */ cmpwi r3, 0x2d
/* 8016D2E0 00168F40 40 82 00 20 */ bne lbl_8016D300
/* 8016D2E4 00168F44 80 7E 09 70 */ lwz r3, 0x970(r30)
/* 8016D2E8 00168F48 2C 03 00 00 */ cmpwi r3, 0
/* 8016D2EC 00168F4C 41 82 00 14 */ beq lbl_8016D300
/* 8016D2F0 00168F50 88 03 00 06 */ lbz r0, 6(r3)
/* 8016D2F4 00168F54 2C 00 00 00 */ cmpwi r0, 0
/* 8016D2F8 00168F58 40 82 00 08 */ bne lbl_8016D300
/* 8016D2FC 00168F5C 4B EB 74 05 */ bl func_80024700
lbl_8016D300:
/* 8016D300 00168F60 4B E9 F4 E9 */ bl func_8000C7E8
/* 8016D304 00168F64 38 80 00 06 */ li r4, 6
/* 8016D308 00168F68 38 A0 00 00 */ li r5, 0
/* 8016D30C 00168F6C 4B EB 44 C1 */ bl func_800217CC
/* 8016D310 00168F70 38 61 00 08 */ addi r3, r1, 8
/* 8016D314 00168F74 48 00 91 F5 */ bl func_80176508
/* 8016D318 00168F78 4B E9 F4 D1 */ bl func_8000C7E8
/* 8016D31C 00168F7C 38 80 00 00 */ li r4, 0
/* 8016D320 00168F80 38 A0 00 00 */ li r5, 0
/* 8016D324 00168F84 4B EB 44 A9 */ bl func_800217CC
/* 8016D328 00168F88 38 61 00 08 */ addi r3, r1, 8
/* 8016D32C 00168F8C 38 80 00 01 */ li r4, 1
/* 8016D330 00168F90 48 00 92 A1 */ bl func_801765D0
/* 8016D334 00168F94 38 00 00 05 */ li r0, 5
/* 8016D338 00168F98 38 61 00 08 */ addi r3, r1, 8
/* 8016D33C 00168F9C 90 0D 9E B0 */ stw r0, lbl_8063F170-_SDA_BASE_(r13)
/* 8016D340 00168FA0 38 80 FF FF */ li r4, -1
/* 8016D344 00168FA4 48 00 90 E9 */ bl func_8017642C
lbl_8016D348:
/* 8016D348 00168FA8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8016D34C 00168FAC 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8016D350 00168FB0 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8016D354 00168FB4 7C 08 03 A6 */ mtlr r0
/* 8016D358 00168FB8 38 21 00 30 */ addi r1, r1, 0x30
/* 8016D35C 00168FBC 4E 80 00 20 */ blr
.global func_8016D360
func_8016D360:
/* 8016D360 00168FC0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8016D364 00168FC4 7C 08 02 A6 */ mflr r0
/* 8016D368 00168FC8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8016D36C 00168FCC 39 61 00 30 */ addi r11, r1, 0x30
/* 8016D370 00168FD0 48 05 9D AD */ bl _savegpr_24
/* 8016D374 00168FD4 7C 78 1B 78 */ mr r24, r3
/* 8016D378 00168FD8 4B E9 F4 71 */ bl func_8000C7E8
/* 8016D37C 00168FDC 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha
/* 8016D380 00168FE0 57 05 E0 06 */ slwi r5, r24, 0x1c
/* 8016D384 00168FE4 3B FE CD B4 */ addi r31, r30, lbl_8048CDB4@l
/* 8016D388 00168FE8 38 80 00 01 */ li r4, 1
/* 8016D38C 00168FEC 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 8016D390 00168FF0 7C A5 03 78 */ or r5, r5, r0
/* 8016D394 00168FF4 4B EB 44 39 */ bl func_800217CC
/* 8016D398 00168FF8 4B EC 8A 05 */ bl func_80035D9C
/* 8016D39C 00168FFC 7C 7D 1B 78 */ mr r29, r3
/* 8016D3A0 00169000 38 7F 00 08 */ addi r3, r31, 8
/* 8016D3A4 00169004 48 00 20 59 */ bl func_8016F3FC
/* 8016D3A8 00169008 80 1F 00 08 */ lwz r0, 8(r31)
/* 8016D3AC 0016900C 90 7E CD B4 */ stw r3, -0x324c(r30)
/* 8016D3B0 00169010 2C 00 00 00 */ cmpwi r0, 0
/* 8016D3B4 00169014 41 82 01 E4 */ beq lbl_8016D598
/* 8016D3B8 00169018 9B 1F 00 1F */ stb r24, 0x1f(r31)
/* 8016D3BC 0016901C 3B 60 00 06 */ li r27, 6
/* 8016D3C0 00169020 3B 80 00 02 */ li r28, 2
lbl_8016D3C4:
/* 8016D3C4 00169024 7F A4 EB 78 */ mr r4, r29
/* 8016D3C8 00169028 38 7E CD B4 */ addi r3, r30, -12876
/* 8016D3CC 0016902C 48 00 3B 1D */ bl func_80170EE8
/* 8016D3D0 00169030 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 8016D3D4 00169034 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 8016D3D8 00169038 41 82 00 E0 */ beq lbl_8016D4B8
/* 8016D3DC 0016903C 93 6D 9E B0 */ stw r27, lbl_8063F170-_SDA_BASE_(r13)
/* 8016D3E0 00169040 88 7F 00 22 */ lbz r3, 0x22(r31)
/* 8016D3E4 00169044 48 00 22 51 */ bl func_8016F634
/* 8016D3E8 00169048 7C 7A 1B 78 */ mr r26, r3
/* 8016D3EC 0016904C 4B FF FA C5 */ bl func_8016CEB0
/* 8016D3F0 00169050 9B 9A 00 00 */ stb r28, 0(r26)
/* 8016D3F4 00169054 88 1A 00 07 */ lbz r0, 7(r26)
/* 8016D3F8 00169058 2C 00 00 00 */ cmpwi r0, 0
/* 8016D3FC 0016905C 41 82 00 88 */ beq lbl_8016D484
/* 8016D400 00169060 A0 1F 00 18 */ lhz r0, 0x18(r31)
/* 8016D404 00169064 3B 20 00 00 */ li r25, 0
/* 8016D408 00169068 A3 1A 00 04 */ lhz r24, 4(r26)
/* 8016D40C 0016906C 2C 00 00 00 */ cmpwi r0, 0
/* 8016D410 00169070 41 82 00 4C */ beq lbl_8016D45C
/* 8016D414 00169074 28 00 00 E4 */ cmplwi r0, 0xe4
/* 8016D418 00169078 41 82 00 44 */ beq lbl_8016D45C
/* 8016D41C 0016907C 28 00 00 E2 */ cmplwi r0, 0xe2
/* 8016D420 00169080 40 82 00 34 */ bne lbl_8016D454
/* 8016D424 00169084 4B ED 81 6D */ bl func_80045590
/* 8016D428 00169088 88 9F 00 22 */ lbz r4, 0x22(r31)
/* 8016D42C 0016908C 38 A0 00 00 */ li r5, 0
/* 8016D430 00169090 4B ED 86 D1 */ bl func_80045B00
/* 8016D434 00169094 2C 03 00 00 */ cmpwi r3, 0
/* 8016D438 00169098 41 82 00 14 */ beq lbl_8016D44C
/* 8016D43C 0016909C A0 03 05 10 */ lhz r0, 0x510(r3)
/* 8016D440 001690A0 28 00 02 59 */ cmplwi r0, 0x259
/* 8016D444 001690A4 40 82 00 08 */ bne lbl_8016D44C
/* 8016D448 001690A8 3B 00 02 59 */ li r24, 0x259
lbl_8016D44C:
/* 8016D44C 001690AC 63 39 00 04 */ ori r25, r25, 4
/* 8016D450 001690B0 48 00 00 18 */ b lbl_8016D468
lbl_8016D454:
/* 8016D454 001690B4 63 39 00 0C */ ori r25, r25, 0xc
/* 8016D458 001690B8 48 00 00 10 */ b lbl_8016D468
lbl_8016D45C:
/* 8016D45C 001690BC 28 00 00 E4 */ cmplwi r0, 0xe4
/* 8016D460 001690C0 40 82 00 08 */ bne lbl_8016D468
/* 8016D464 001690C4 63 39 00 04 */ ori r25, r25, 4
lbl_8016D468:
/* 8016D468 001690C8 88 1F 00 22 */ lbz r0, 0x22(r31)
/* 8016D46C 001690CC 7F 04 C3 78 */ mr r4, r24
/* 8016D470 001690D0 80 BA 00 08 */ lwz r5, 8(r26)
/* 8016D474 001690D4 88 DA 00 06 */ lbz r6, 6(r26)
/* 8016D478 001690D8 7C 03 CB 78 */ or r3, r0, r25
/* 8016D47C 001690DC 4B FF FD 59 */ bl func_8016D1D4
/* 8016D480 001690E0 48 00 00 38 */ b lbl_8016D4B8
lbl_8016D484:
/* 8016D484 001690E4 4B E9 F3 65 */ bl func_8000C7E8
/* 8016D488 001690E8 88 1F 00 22 */ lbz r0, 0x22(r31)
/* 8016D48C 001690EC 38 80 00 03 */ li r4, 3
/* 8016D490 001690F0 A0 BA 00 04 */ lhz r5, 4(r26)
/* 8016D494 001690F4 50 05 82 1E */ rlwimi r5, r0, 0x10, 8, 0xf
/* 8016D498 001690F8 4B EB 43 35 */ bl func_800217CC
/* 8016D49C 001690FC 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016D4A0 00169100 48 00 97 65 */ bl func_80176C04
/* 8016D4A4 00169104 80 6D 9E AC */ lwz r3, lbl_8063F16C-_SDA_BASE_(r13)
/* 8016D4A8 00169108 38 A0 00 00 */ li r5, 0
/* 8016D4AC 0016910C 88 9F 00 22 */ lbz r4, 0x22(r31)
/* 8016D4B0 00169110 38 C0 00 01 */ li r6, 1
/* 8016D4B4 00169114 48 00 97 D1 */ bl func_80176C84
lbl_8016D4B8:
/* 8016D4B8 00169118 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 8016D4BC 0016911C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016D4C0 00169120 41 82 00 08 */ beq lbl_8016D4C8
/* 8016D4C4 00169124 4B FF FD 95 */ bl func_8016D258
lbl_8016D4C8:
/* 8016D4C8 00169128 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 8016D4CC 0016912C 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19
/* 8016D4D0 00169130 41 82 00 10 */ beq lbl_8016D4E0
/* 8016D4D4 00169134 88 1F 00 1F */ lbz r0, 0x1f(r31)
/* 8016D4D8 00169138 28 00 00 01 */ cmplwi r0, 1
/* 8016D4DC 0016913C 41 82 00 BC */ beq lbl_8016D598
lbl_8016D4E0:
/* 8016D4E0 00169140 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 8016D4E4 00169144 41 82 00 30 */ beq lbl_8016D514
/* 8016D4E8 00169148 48 00 1E 9D */ bl func_8016F384
/* 8016D4EC 0016914C 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016D4F0 00169150 38 80 00 00 */ li r4, 0
/* 8016D4F4 00169154 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016D4F8 00169158 38 A0 00 24 */ li r5, 0x24
/* 8016D4FC 0016915C 4B E9 6C 09 */ bl memset
/* 8016D500 00169160 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D504 00169164 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016D508 00169168 41 82 00 90 */ beq lbl_8016D598
/* 8016D50C 0016916C 48 00 DF AD */ bl func_8017B4B8
/* 8016D510 00169170 48 00 00 88 */ b lbl_8016D598
lbl_8016D514:
/* 8016D514 00169174 54 60 06 B5 */ rlwinm. r0, r3, 0, 0x1a, 0x1a
/* 8016D518 00169178 41 82 00 30 */ beq lbl_8016D548
/* 8016D51C 0016917C 48 00 1E 69 */ bl func_8016F384
/* 8016D520 00169180 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016D524 00169184 38 80 00 00 */ li r4, 0
/* 8016D528 00169188 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016D52C 0016918C 38 A0 00 24 */ li r5, 0x24
/* 8016D530 00169190 4B E9 6B D5 */ bl memset
/* 8016D534 00169194 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D538 00169198 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016D53C 0016919C 41 82 00 5C */ beq lbl_8016D598
/* 8016D540 001691A0 48 00 DF 79 */ bl func_8017B4B8
/* 8016D544 001691A4 48 00 00 54 */ b lbl_8016D598
lbl_8016D548:
/* 8016D548 001691A8 80 7F 00 08 */ lwz r3, 8(r31)
/* 8016D54C 001691AC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8016D550 001691B0 7C 03 00 40 */ cmplw r3, r0
/* 8016D554 001691B4 40 82 FE 70 */ bne lbl_8016D3C4
/* 8016D558 001691B8 80 6D 9E C8 */ lwz r3, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D55C 001691BC 54 60 03 5A */ rlwinm r0, r3, 0, 0xd, 0xd
/* 8016D560 001691C0 50 60 04 A5 */ rlwimi. r0, r3, 0, 0x12, 0x12
/* 8016D564 001691C4 40 82 00 24 */ bne lbl_8016D588
/* 8016D568 001691C8 48 00 1E 1D */ bl func_8016F384
/* 8016D56C 001691CC 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D570 001691D0 38 60 00 00 */ li r3, 0
/* 8016D574 001691D4 90 7F 00 08 */ stw r3, 8(r31)
/* 8016D578 001691D8 54 00 04 A5 */ rlwinm. r0, r0, 0, 0x12, 0x12
/* 8016D57C 001691DC 90 7F 00 0C */ stw r3, 0xc(r31)
/* 8016D580 001691E0 41 82 00 08 */ beq lbl_8016D588
/* 8016D584 001691E4 48 00 DF 35 */ bl func_8017B4B8
lbl_8016D588:
/* 8016D588 001691E8 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016D58C 001691EC 38 00 00 00 */ li r0, 0
/* 8016D590 001691F0 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016D594 001691F4 90 03 00 10 */ stw r0, 0x10(r3)
lbl_8016D598:
/* 8016D598 001691F8 39 61 00 30 */ addi r11, r1, 0x30
/* 8016D59C 001691FC 48 05 9B CD */ bl _restgpr_24
/* 8016D5A0 00169200 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8016D5A4 00169204 7C 08 03 A6 */ mtlr r0
/* 8016D5A8 00169208 38 21 00 30 */ addi r1, r1, 0x30
/* 8016D5AC 0016920C 4E 80 00 20 */ blr
.global func_8016D5B0
func_8016D5B0:
/* 8016D5B0 00169210 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016D5B4 00169214 7C 08 02 A6 */ mflr r0
/* 8016D5B8 00169218 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016D5BC 0016921C 39 61 00 20 */ addi r11, r1, 0x20
/* 8016D5C0 00169220 48 05 9B 69 */ bl _savegpr_27
/* 8016D5C4 00169224 2C 03 00 09 */ cmpwi r3, 9
/* 8016D5C8 00169228 7C 9E 23 78 */ mr r30, r4
/* 8016D5CC 0016922C 41 82 00 28 */ beq lbl_8016D5F4
/* 8016D5D0 00169230 40 80 00 10 */ bge lbl_8016D5E0
/* 8016D5D4 00169234 2C 03 00 03 */ cmpwi r3, 3
/* 8016D5D8 00169238 41 82 00 1C */ beq lbl_8016D5F4
/* 8016D5DC 0016923C 48 00 02 5C */ b lbl_8016D838
lbl_8016D5E0:
/* 8016D5E0 00169240 2C 03 00 0D */ cmpwi r3, 0xd
/* 8016D5E4 00169244 40 80 02 54 */ bge lbl_8016D838
/* 8016D5E8 00169248 2C 03 00 0B */ cmpwi r3, 0xb
/* 8016D5EC 0016924C 40 80 02 38 */ bge lbl_8016D824
/* 8016D5F0 00169250 48 00 02 48 */ b lbl_8016D838
lbl_8016D5F4:
/* 8016D5F4 00169254 80 CD 9F 08 */ lwz r6, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D5F8 00169258 54 9F 10 3A */ slwi r31, r4, 2
/* 8016D5FC 0016925C 7C A6 FA 14 */ add r5, r6, r31
/* 8016D600 00169260 80 05 00 40 */ lwz r0, 0x40(r5)
/* 8016D604 00169264 2C 00 00 FF */ cmpwi r0, 0xff
/* 8016D608 00169268 41 82 02 30 */ beq lbl_8016D838
/* 8016D60C 0016926C 80 05 00 10 */ lwz r0, 0x10(r5)
/* 8016D610 00169270 2C 00 00 FF */ cmpwi r0, 0xff
/* 8016D614 00169274 41 82 02 24 */ beq lbl_8016D838
/* 8016D618 00169278 80 05 00 20 */ lwz r0, 0x20(r5)
/* 8016D61C 0016927C 2C 00 00 04 */ cmpwi r0, 4
/* 8016D620 00169280 40 82 01 E8 */ bne lbl_8016D808
/* 8016D624 00169284 3C 60 80 49 */ lis r3, lbl_8048CDB4@ha
/* 8016D628 00169288 38 63 CD B4 */ addi r3, r3, lbl_8048CDB4@l
/* 8016D62C 0016928C 88 03 00 1A */ lbz r0, 0x1a(r3)
/* 8016D630 00169290 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8016D634 00169294 41 82 00 20 */ beq lbl_8016D654
/* 8016D638 00169298 80 05 00 50 */ lwz r0, 0x50(r5)
/* 8016D63C 0016929C 38 80 00 FF */ li r4, 0xff
/* 8016D640 001692A0 7C 06 F9 2E */ stwx r0, r6, r31
/* 8016D644 001692A4 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D648 001692A8 7C 60 FA 14 */ add r3, r0, r31
/* 8016D64C 001692AC 90 83 00 10 */ stw r4, 0x10(r3)
/* 8016D650 001692B0 48 00 01 E8 */ b lbl_8016D838
lbl_8016D654:
/* 8016D654 001692B4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D658 001692B8 54 84 07 FE */ clrlwi r4, r4, 0x1f
/* 8016D65C 001692BC 83 85 00 30 */ lwz r28, 0x30(r5)
/* 8016D660 001692C0 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016D664 001692C4 80 7C 00 04 */ lwz r3, 4(r28)
/* 8016D668 001692C8 41 82 00 08 */ beq lbl_8016D670
/* 8016D66C 001692CC 7F C4 F3 78 */ mr r4, r30
lbl_8016D670:
/* 8016D670 001692D0 48 23 F2 91 */ bl func_803AC900
/* 8016D674 001692D4 7C 7D 1B 78 */ mr r29, r3
/* 8016D678 001692D8 3B 60 00 00 */ li r27, 0
/* 8016D67C 001692DC 48 00 00 38 */ b lbl_8016D6B4
lbl_8016D680:
/* 8016D680 001692E0 7F 63 DB 78 */ mr r3, r27
/* 8016D684 001692E4 7F 84 E3 78 */ mr r4, r28
/* 8016D688 001692E8 48 00 02 C1 */ bl func_8016D948
/* 8016D68C 001692EC 2C 03 00 00 */ cmpwi r3, 0
/* 8016D690 001692F0 40 82 00 20 */ bne lbl_8016D6B0
/* 8016D694 001692F4 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D698 001692F8 38 80 00 FF */ li r4, 0xff
/* 8016D69C 001692FC 7F 63 F9 2E */ stwx r27, r3, r31
/* 8016D6A0 00169300 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D6A4 00169304 7C 60 FA 14 */ add r3, r0, r31
/* 8016D6A8 00169308 90 83 00 10 */ stw r4, 0x10(r3)
/* 8016D6AC 0016930C 48 00 00 10 */ b lbl_8016D6BC
lbl_8016D6B0:
/* 8016D6B0 00169310 3B 7B 00 01 */ addi r27, r27, 1
lbl_8016D6B4:
/* 8016D6B4 00169314 7C 1B E8 00 */ cmpw r27, r29
/* 8016D6B8 00169318 41 80 FF C8 */ blt lbl_8016D680
lbl_8016D6BC:
/* 8016D6BC 0016931C 80 8D 9E C8 */ lwz r4, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D6C0 00169320 54 80 03 5A */ rlwinm r0, r4, 0, 0xd, 0xd
/* 8016D6C4 00169324 50 80 04 A5 */ rlwimi. r0, r4, 0, 0x12, 0x12
/* 8016D6C8 00169328 41 82 00 AC */ beq lbl_8016D774
/* 8016D6CC 0016932C 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
/* 8016D6D0 00169330 41 82 00 5C */ beq lbl_8016D72C
/* 8016D6D4 00169334 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha
/* 8016D6D8 00169338 3B DE CD B4 */ addi r30, r30, lbl_8048CDB4@l
/* 8016D6DC 0016933C 88 1E 00 1A */ lbz r0, 0x1a(r30)
/* 8016D6E0 00169340 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016D6E4 00169344 41 82 00 24 */ beq lbl_8016D708
/* 8016D6E8 00169348 38 60 00 00 */ li r3, 0
/* 8016D6EC 0016934C 38 80 00 13 */ li r4, 0x13
/* 8016D6F0 00169350 38 A0 00 0F */ li r5, 0xf
/* 8016D6F4 00169354 38 C0 00 00 */ li r6, 0
/* 8016D6F8 00169358 4B EF 00 95 */ bl func_8005D78C
/* 8016D6FC 0016935C 88 1E 00 1A */ lbz r0, 0x1a(r30)
/* 8016D700 00169360 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8016D704 00169364 98 1E 00 1A */ stb r0, 0x1a(r30)
lbl_8016D708:
/* 8016D708 00169368 38 60 00 85 */ li r3, 0x85
/* 8016D70C 0016936C 38 80 00 00 */ li r4, 0
/* 8016D710 00169370 38 A0 00 00 */ li r5, 0
/* 8016D714 00169374 48 00 04 FD */ bl func_8016DC10
/* 8016D718 00169378 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D71C 0016937C 38 00 FF 5F */ li r0, -161
/* 8016D720 00169380 7C 60 00 38 */ and r0, r3, r0
/* 8016D724 00169384 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D728 00169388 48 00 01 10 */ b lbl_8016D838
lbl_8016D72C:
/* 8016D72C 0016938C 4B FF F1 E9 */ bl func_8016C914
/* 8016D730 00169390 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha
/* 8016D734 00169394 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D738 00169398 3B DE CD B4 */ addi r30, r30, lbl_8048CDB4@l
/* 8016D73C 0016939C 38 60 FF AD */ li r3, -83
/* 8016D740 001693A0 88 1E 00 1A */ lbz r0, 0x1a(r30)
/* 8016D744 001693A4 7C 83 18 38 */ and r3, r4, r3
/* 8016D748 001693A8 90 6D 9E DC */ stw r3, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D74C 001693AC 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8016D750 001693B0 41 82 00 E8 */ beq lbl_8016D838
/* 8016D754 001693B4 38 60 00 83 */ li r3, 0x83
/* 8016D758 001693B8 38 80 00 00 */ li r4, 0
/* 8016D75C 001693BC 38 A0 00 00 */ li r5, 0
/* 8016D760 001693C0 48 00 04 B1 */ bl func_8016DC10
/* 8016D764 001693C4 88 1E 00 1A */ lbz r0, 0x1a(r30)
/* 8016D768 001693C8 54 00 07 34 */ rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8016D76C 001693CC 98 1E 00 1A */ stb r0, 0x1a(r30)
/* 8016D770 001693D0 48 00 00 C8 */ b lbl_8016D838
lbl_8016D774:
/* 8016D774 001693D4 54 80 05 29 */ rlwinm. r0, r4, 0, 0x14, 0x14
/* 8016D778 001693D8 41 82 00 40 */ beq lbl_8016D7B8
/* 8016D77C 001693DC 57 DD 07 FE */ clrlwi r29, r30, 0x1f
/* 8016D780 001693E0 7F A3 EB 78 */ mr r3, r29
/* 8016D784 001693E4 48 00 04 51 */ bl func_8016DBD4
/* 8016D788 001693E8 2C 1D 00 00 */ cmpwi r29, 0
/* 8016D78C 001693EC 41 82 00 18 */ beq lbl_8016D7A4
/* 8016D790 001693F0 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D794 001693F4 38 00 FF 5F */ li r0, -161
/* 8016D798 001693F8 7C 60 00 38 */ and r0, r3, r0
/* 8016D79C 001693FC 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D7A0 00169400 48 00 00 98 */ b lbl_8016D838
lbl_8016D7A4:
/* 8016D7A4 00169404 80 6D 9E DC */ lwz r3, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D7A8 00169408 38 00 FF AF */ li r0, -81
/* 8016D7AC 0016940C 7C 60 00 38 */ and r0, r3, r0
/* 8016D7B0 00169410 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D7B4 00169414 48 00 00 84 */ b lbl_8016D838
lbl_8016D7B8:
/* 8016D7B8 00169418 54 83 03 18 */ rlwinm r3, r4, 0, 0xc, 0xc
/* 8016D7BC 0016941C 50 83 04 E6 */ rlwimi r3, r4, 0, 0x13, 0x13
/* 8016D7C0 00169420 3C 03 FF F8 */ addis r0, r3, 0xfff8
/* 8016D7C4 00169424 28 00 10 00 */ cmplwi r0, 0x1000
/* 8016D7C8 00169428 40 82 00 38 */ bne lbl_8016D800
/* 8016D7CC 0016942C 4B FF F1 49 */ bl func_8016C914
/* 8016D7D0 00169430 80 0D 9E E8 */ lwz r0, lbl_8063F1A8-_SDA_BASE_(r13)
/* 8016D7D4 00169434 38 60 F9 0D */ li r3, -1779
/* 8016D7D8 00169438 80 8D 9E DC */ lwz r4, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D7DC 0016943C 2C 00 00 00 */ cmpwi r0, 0
/* 8016D7E0 00169440 7C 80 18 38 */ and r0, r4, r3
/* 8016D7E4 00169444 90 0D 9E DC */ stw r0, lbl_8063F19C-_SDA_BASE_(r13)
/* 8016D7E8 00169448 41 82 00 50 */ beq lbl_8016D838
/* 8016D7EC 0016944C 38 60 00 00 */ li r3, 0
/* 8016D7F0 00169450 38 00 00 01 */ li r0, 1
/* 8016D7F4 00169454 90 6D 9E E8 */ stw r3, lbl_8063F1A8-_SDA_BASE_(r13)
/* 8016D7F8 00169458 90 0D 9E EC */ stw r0, lbl_8063F1AC-_SDA_BASE_(r13)
/* 8016D7FC 0016945C 48 00 00 3C */ b lbl_8016D838
lbl_8016D800:
/* 8016D800 00169460 4B FF F1 15 */ bl func_8016C914
/* 8016D804 00169464 48 00 00 34 */ b lbl_8016D838
lbl_8016D808:
/* 8016D808 00169468 80 05 00 50 */ lwz r0, 0x50(r5)
/* 8016D80C 0016946C 38 80 00 FF */ li r4, 0xff
/* 8016D810 00169470 7C 06 F9 2E */ stwx r0, r6, r31
/* 8016D814 00169474 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D818 00169478 7C 60 FA 14 */ add r3, r0, r31
/* 8016D81C 0016947C 90 83 00 10 */ stw r4, 0x10(r3)
/* 8016D820 00169480 48 00 00 18 */ b lbl_8016D838
lbl_8016D824:
/* 8016D824 00169484 80 6D 9F 08 */ lwz r3, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D828 00169488 54 80 10 3A */ slwi r0, r4, 2
/* 8016D82C 0016948C 38 80 00 FF */ li r4, 0xff
/* 8016D830 00169490 7C 63 02 14 */ add r3, r3, r0
/* 8016D834 00169494 90 83 00 10 */ stw r4, 0x10(r3)
lbl_8016D838:
/* 8016D838 00169498 39 61 00 20 */ addi r11, r1, 0x20
/* 8016D83C 0016949C 48 05 99 39 */ bl _restgpr_27
/* 8016D840 001694A0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016D844 001694A4 7C 08 03 A6 */ mtlr r0
/* 8016D848 001694A8 38 21 00 20 */ addi r1, r1, 0x20
/* 8016D84C 001694AC 4E 80 00 20 */ blr
.global func_8016D850
func_8016D850:
/* 8016D850 001694B0 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D854 001694B4 38 60 00 00 */ li r3, 0
/* 8016D858 001694B8 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8016D85C 001694BC 41 82 00 98 */ beq lbl_8016D8F4
/* 8016D860 001694C0 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D864 001694C4 88 85 00 7C */ lbz r4, 0x7c(r5)
/* 8016D868 001694C8 28 04 00 02 */ cmplwi r4, 2
/* 8016D86C 001694CC 40 82 00 14 */ bne lbl_8016D880
/* 8016D870 001694D0 88 05 00 7E */ lbz r0, 0x7e(r5)
/* 8016D874 001694D4 28 00 00 02 */ cmplwi r0, 2
/* 8016D878 001694D8 40 82 00 08 */ bne lbl_8016D880
/* 8016D87C 001694DC 60 63 00 02 */ ori r3, r3, 2
lbl_8016D880:
/* 8016D880 001694E0 28 04 00 01 */ cmplwi r4, 1
/* 8016D884 001694E4 40 82 00 24 */ bne lbl_8016D8A8
/* 8016D888 001694E8 88 05 00 7E */ lbz r0, 0x7e(r5)
/* 8016D88C 001694EC 28 00 00 01 */ cmplwi r0, 1
/* 8016D890 001694F0 40 82 00 18 */ bne lbl_8016D8A8
/* 8016D894 001694F4 38 00 00 02 */ li r0, 2
/* 8016D898 001694F8 60 63 00 01 */ ori r3, r3, 1
/* 8016D89C 001694FC 98 05 00 7C */ stb r0, 0x7c(r5)
/* 8016D8A0 00169500 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D8A4 00169504 98 04 00 7E */ stb r0, 0x7e(r4)
lbl_8016D8A8:
/* 8016D8A8 00169508 80 AD 9F 08 */ lwz r5, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D8AC 0016950C 88 85 00 7D */ lbz r4, 0x7d(r5)
/* 8016D8B0 00169510 28 04 00 02 */ cmplwi r4, 2
/* 8016D8B4 00169514 40 82 00 14 */ bne lbl_8016D8C8
/* 8016D8B8 00169518 88 05 00 7F */ lbz r0, 0x7f(r5)
/* 8016D8BC 0016951C 28 00 00 02 */ cmplwi r0, 2
/* 8016D8C0 00169520 40 82 00 08 */ bne lbl_8016D8C8
/* 8016D8C4 00169524 60 63 00 08 */ ori r3, r3, 8
lbl_8016D8C8:
/* 8016D8C8 00169528 28 04 00 01 */ cmplwi r4, 1
/* 8016D8CC 0016952C 4C 82 00 20 */ bnelr
/* 8016D8D0 00169530 88 05 00 7F */ lbz r0, 0x7f(r5)
/* 8016D8D4 00169534 28 00 00 01 */ cmplwi r0, 1
/* 8016D8D8 00169538 4C 82 00 20 */ bnelr
/* 8016D8DC 0016953C 38 00 00 02 */ li r0, 2
/* 8016D8E0 00169540 60 63 00 04 */ ori r3, r3, 4
/* 8016D8E4 00169544 98 05 00 7D */ stb r0, 0x7d(r5)
/* 8016D8E8 00169548 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D8EC 0016954C 98 04 00 7F */ stb r0, 0x7f(r4)
/* 8016D8F0 00169550 4E 80 00 20 */ blr
lbl_8016D8F4:
/* 8016D8F4 00169554 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D8F8 00169558 88 04 00 7C */ lbz r0, 0x7c(r4)
/* 8016D8FC 0016955C 28 00 00 02 */ cmplwi r0, 2
/* 8016D900 00169560 40 82 00 08 */ bne lbl_8016D908
/* 8016D904 00169564 60 63 00 02 */ ori r3, r3, 2
lbl_8016D908:
/* 8016D908 00169568 28 00 00 01 */ cmplwi r0, 1
/* 8016D90C 0016956C 40 82 00 10 */ bne lbl_8016D91C
/* 8016D910 00169570 38 00 00 02 */ li r0, 2
/* 8016D914 00169574 60 63 00 01 */ ori r3, r3, 1
/* 8016D918 00169578 98 04 00 7C */ stb r0, 0x7c(r4)
lbl_8016D91C:
/* 8016D91C 0016957C 80 8D 9F 08 */ lwz r4, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016D920 00169580 88 04 00 7D */ lbz r0, 0x7d(r4)
/* 8016D924 00169584 28 00 00 02 */ cmplwi r0, 2
/* 8016D928 00169588 40 82 00 08 */ bne lbl_8016D930
/* 8016D92C 0016958C 60 63 00 08 */ ori r3, r3, 8
lbl_8016D930:
/* 8016D930 00169590 28 00 00 01 */ cmplwi r0, 1
/* 8016D934 00169594 4C 82 00 20 */ bnelr
/* 8016D938 00169598 38 00 00 02 */ li r0, 2
/* 8016D93C 0016959C 60 63 00 04 */ ori r3, r3, 4
/* 8016D940 001695A0 98 04 00 7D */ stb r0, 0x7d(r4)
/* 8016D944 001695A4 4E 80 00 20 */ blr
.global func_8016D948
func_8016D948:
/* 8016D948 001695A8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016D94C 001695AC 7C 08 02 A6 */ mflr r0
/* 8016D950 001695B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016D954 001695B4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8016D958 001695B8 7C 9F 23 78 */ mr r31, r4
/* 8016D95C 001695BC 93 C1 00 08 */ stw r30, 8(r1)
/* 8016D960 001695C0 7C 7E 1B 78 */ mr r30, r3
/* 8016D964 001695C4 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016D968 001695C8 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016D96C 001695CC 41 82 00 3C */ beq lbl_8016D9A8
/* 8016D970 001695D0 80 64 00 04 */ lwz r3, 4(r4)
/* 8016D974 001695D4 80 84 00 1C */ lwz r4, 0x1c(r4)
/* 8016D978 001695D8 48 23 F3 5D */ bl func_803ACCD4
/* 8016D97C 001695DC 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016D980 001695E0 28 00 00 02 */ cmplwi r0, 2
/* 8016D984 001695E4 40 82 00 14 */ bne lbl_8016D998
/* 8016D988 001695E8 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
/* 8016D98C 001695EC 41 82 00 1C */ beq lbl_8016D9A8
/* 8016D990 001695F0 38 60 50 5A */ li r3, 0x505a
/* 8016D994 001695F4 48 00 00 AC */ b lbl_8016DA40
lbl_8016D998:
/* 8016D998 001695F8 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
/* 8016D99C 001695FC 40 82 00 0C */ bne lbl_8016D9A8
/* 8016D9A0 00169600 38 60 50 5A */ li r3, 0x505a
/* 8016D9A4 00169604 48 00 00 9C */ b lbl_8016DA40
lbl_8016D9A8:
/* 8016D9A8 00169608 80 7F 00 00 */ lwz r3, 0(r31)
/* 8016D9AC 0016960C 7F C4 F3 78 */ mr r4, r30
/* 8016D9B0 00169610 48 27 0F 9D */ bl func_803DE94C
/* 8016D9B4 00169614 38 80 00 A2 */ li r4, 0xa2
/* 8016D9B8 00169618 38 A0 00 00 */ li r5, 0
/* 8016D9BC 0016961C 48 27 00 21 */ bl func_803DD9DC
/* 8016D9C0 00169620 2C 03 00 00 */ cmpwi r3, 0
/* 8016D9C4 00169624 40 82 00 10 */ bne lbl_8016D9D4
/* 8016D9C8 00169628 9B DF 00 0D */ stb r30, 0xd(r31)
/* 8016D9CC 0016962C 38 60 2E D2 */ li r3, 0x2ed2
/* 8016D9D0 00169630 48 00 00 70 */ b lbl_8016DA40
lbl_8016D9D4:
/* 8016D9D4 00169634 7C 7F F2 14 */ add r3, r31, r30
/* 8016D9D8 00169638 88 1F 00 0A */ lbz r0, 0xa(r31)
/* 8016D9DC 0016963C 88 63 00 20 */ lbz r3, 0x20(r3)
/* 8016D9E0 00169640 7C 00 18 40 */ cmplw r0, r3
/* 8016D9E4 00169644 41 82 00 10 */ beq lbl_8016D9F4
/* 8016D9E8 00169648 88 1F 00 0B */ lbz r0, 0xb(r31)
/* 8016D9EC 0016964C 7C 00 18 40 */ cmplw r0, r3
/* 8016D9F0 00169650 40 82 00 10 */ bne lbl_8016DA00
lbl_8016D9F4:
/* 8016D9F4 00169654 9B DF 00 0D */ stb r30, 0xd(r31)
/* 8016D9F8 00169658 38 60 2E D1 */ li r3, 0x2ed1
/* 8016D9FC 0016965C 48 00 00 44 */ b lbl_8016DA40
lbl_8016DA00:
/* 8016DA00 00169660 88 1F 00 09 */ lbz r0, 9(r31)
/* 8016DA04 00169664 28 00 00 06 */ cmplwi r0, 6
/* 8016DA08 00169668 41 82 00 18 */ beq lbl_8016DA20
/* 8016DA0C 0016966C 7C 00 18 40 */ cmplw r0, r3
/* 8016DA10 00169670 40 82 00 10 */ bne lbl_8016DA20
/* 8016DA14 00169674 9B DF 00 0D */ stb r30, 0xd(r31)
/* 8016DA18 00169678 38 60 2E D3 */ li r3, 0x2ed3
/* 8016DA1C 0016967C 48 00 00 24 */ b lbl_8016DA40
lbl_8016DA20:
/* 8016DA20 00169680 A0 1F 00 1A */ lhz r0, 0x1a(r31)
/* 8016DA24 00169684 2C 00 00 00 */ cmpwi r0, 0
/* 8016DA28 00169688 41 82 00 14 */ beq lbl_8016DA3C
/* 8016DA2C 0016968C 88 1F 00 0C */ lbz r0, 0xc(r31)
/* 8016DA30 00169690 38 60 30 BB */ li r3, 0x30bb
/* 8016DA34 00169694 98 1F 00 0D */ stb r0, 0xd(r31)
/* 8016DA38 00169698 48 00 00 08 */ b lbl_8016DA40
lbl_8016DA3C:
/* 8016DA3C 0016969C 38 60 00 00 */ li r3, 0
lbl_8016DA40:
/* 8016DA40 001696A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016DA44 001696A4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016DA48 001696A8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8016DA4C 001696AC 7C 08 03 A6 */ mtlr r0
/* 8016DA50 001696B0 38 21 00 10 */ addi r1, r1, 0x10
/* 8016DA54 001696B4 4E 80 00 20 */ blr
.global func_8016DA58
func_8016DA58:
/* 8016DA58 001696B8 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8016DA5C 001696BC 7C 08 02 A6 */ mflr r0
/* 8016DA60 001696C0 90 01 00 54 */ stw r0, 0x54(r1)
/* 8016DA64 001696C4 39 61 00 50 */ addi r11, r1, 0x50
/* 8016DA68 001696C8 48 05 96 BD */ bl _savegpr_26
/* 8016DA6C 001696CC 80 04 00 00 */ lwz r0, 0(r4)
/* 8016DA70 001696D0 7C 7E 1B 78 */ mr r30, r3
/* 8016DA74 001696D4 7C 9F 23 78 */ mr r31, r4
/* 8016DA78 001696D8 90 01 00 08 */ stw r0, 8(r1)
/* 8016DA7C 001696DC 80 04 00 04 */ lwz r0, 4(r4)
/* 8016DA80 001696E0 90 01 00 0C */ stw r0, 0xc(r1)
/* 8016DA84 001696E4 88 04 00 08 */ lbz r0, 8(r4)
/* 8016DA88 001696E8 98 01 00 10 */ stb r0, 0x10(r1)
/* 8016DA8C 001696EC 88 04 00 09 */ lbz r0, 9(r4)
/* 8016DA90 001696F0 98 01 00 11 */ stb r0, 0x11(r1)
/* 8016DA94 001696F4 88 04 00 0A */ lbz r0, 0xa(r4)
/* 8016DA98 001696F8 98 01 00 12 */ stb r0, 0x12(r1)
/* 8016DA9C 001696FC 88 04 00 0B */ lbz r0, 0xb(r4)
/* 8016DAA0 00169700 98 01 00 13 */ stb r0, 0x13(r1)
/* 8016DAA4 00169704 88 04 00 0C */ lbz r0, 0xc(r4)
/* 8016DAA8 00169708 98 01 00 14 */ stb r0, 0x14(r1)
/* 8016DAAC 0016970C 88 04 00 0D */ lbz r0, 0xd(r4)
/* 8016DAB0 00169710 98 01 00 15 */ stb r0, 0x15(r1)
/* 8016DAB4 00169714 88 04 00 0E */ lbz r0, 0xe(r4)
/* 8016DAB8 00169718 98 01 00 16 */ stb r0, 0x16(r1)
/* 8016DABC 0016971C 88 04 00 0F */ lbz r0, 0xf(r4)
/* 8016DAC0 00169720 98 01 00 17 */ stb r0, 0x17(r1)
/* 8016DAC4 00169724 80 64 00 10 */ lwz r3, 0x10(r4)
/* 8016DAC8 00169728 80 04 00 14 */ lwz r0, 0x14(r4)
/* 8016DACC 0016972C 90 61 00 18 */ stw r3, 0x18(r1)
/* 8016DAD0 00169730 90 01 00 1C */ stw r0, 0x1c(r1)
/* 8016DAD4 00169734 A0 04 00 18 */ lhz r0, 0x18(r4)
/* 8016DAD8 00169738 B0 01 00 20 */ sth r0, 0x20(r1)
/* 8016DADC 0016973C A0 04 00 1A */ lhz r0, 0x1a(r4)
/* 8016DAE0 00169740 B0 01 00 22 */ sth r0, 0x22(r1)
/* 8016DAE4 00169744 80 04 00 1C */ lwz r0, 0x1c(r4)
/* 8016DAE8 00169748 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016DAEC 0016974C 88 04 00 20 */ lbz r0, 0x20(r4)
/* 8016DAF0 00169750 98 01 00 28 */ stb r0, 0x28(r1)
/* 8016DAF4 00169754 88 04 00 21 */ lbz r0, 0x21(r4)
/* 8016DAF8 00169758 98 01 00 29 */ stb r0, 0x29(r1)
/* 8016DAFC 0016975C 88 04 00 22 */ lbz r0, 0x22(r4)
/* 8016DB00 00169760 98 01 00 2A */ stb r0, 0x2a(r1)
/* 8016DB04 00169764 88 04 00 23 */ lbz r0, 0x23(r4)
/* 8016DB08 00169768 98 01 00 2B */ stb r0, 0x2b(r1)
/* 8016DB0C 0016976C 88 04 00 24 */ lbz r0, 0x24(r4)
/* 8016DB10 00169770 98 01 00 2C */ stb r0, 0x2c(r1)
/* 8016DB14 00169774 88 04 00 25 */ lbz r0, 0x25(r4)
/* 8016DB18 00169778 98 01 00 2D */ stb r0, 0x2d(r1)
/* 8016DB1C 0016977C 48 23 ED 0D */ bl func_803AC828
/* 8016DB20 00169780 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016DB24 00169784 90 61 00 0C */ stw r3, 0xc(r1)
/* 8016DB28 00169788 38 60 00 05 */ li r3, 5
/* 8016DB2C 0016978C 68 00 00 01 */ xori r0, r0, 1
/* 8016DB30 00169790 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016DB34 00169794 54 1B 07 FE */ clrlwi r27, r0, 0x1f
/* 8016DB38 00169798 48 27 0C A9 */ bl func_803DE7E0
/* 8016DB3C 0016979C 90 61 00 08 */ stw r3, 8(r1)
/* 8016DB40 001697A0 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8016DB44 001697A4 80 81 00 24 */ lwz r4, 0x24(r1)
/* 8016DB48 001697A8 48 23 ED 21 */ bl func_803AC868
/* 8016DB4C 001697AC 7C 7A 1B 78 */ mr r26, r3
/* 8016DB50 001697B0 3B A1 00 08 */ addi r29, r1, 8
/* 8016DB54 001697B4 3B 80 00 00 */ li r28, 0
/* 8016DB58 001697B8 48 00 00 28 */ b lbl_8016DB80
lbl_8016DB5C:
/* 8016DB5C 001697BC 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8016DB60 001697C0 7F 64 DB 78 */ mr r4, r27
/* 8016DB64 001697C4 88 BD 00 20 */ lbz r5, 0x20(r29)
/* 8016DB68 001697C8 48 23 EE 3D */ bl func_803AC9A4
/* 8016DB6C 001697CC 7C 64 1B 78 */ mr r4, r3
/* 8016DB70 001697D0 80 61 00 08 */ lwz r3, 8(r1)
/* 8016DB74 001697D4 48 27 0D 1D */ bl func_803DE890
/* 8016DB78 001697D8 3B BD 00 01 */ addi r29, r29, 1
/* 8016DB7C 001697DC 3B 9C 00 01 */ addi r28, r28, 1
lbl_8016DB80:
/* 8016DB80 001697E0 7F 43 D3 78 */ mr r3, r26
/* 8016DB84 001697E4 48 27 0D C1 */ bl func_803DE944
/* 8016DB88 001697E8 7C 1C 18 00 */ cmpw r28, r3
/* 8016DB8C 001697EC 41 80 FF D0 */ blt lbl_8016DB5C
/* 8016DB90 001697F0 7F C3 F3 78 */ mr r3, r30
/* 8016DB94 001697F4 38 81 00 08 */ addi r4, r1, 8
/* 8016DB98 001697F8 4B FF FD B1 */ bl func_8016D948
/* 8016DB9C 001697FC 2C 03 00 00 */ cmpwi r3, 0
/* 8016DBA0 00169800 7C 7D 1B 78 */ mr r29, r3
/* 8016DBA4 00169804 41 82 00 0C */ beq lbl_8016DBB0
/* 8016DBA8 00169808 88 01 00 15 */ lbz r0, 0x15(r1)
/* 8016DBAC 0016980C 98 1F 00 0D */ stb r0, 0xd(r31)
lbl_8016DBB0:
/* 8016DBB0 00169810 80 61 00 08 */ lwz r3, 8(r1)
/* 8016DBB4 00169814 48 00 04 ED */ bl func_8016E0A0
/* 8016DBB8 00169818 39 61 00 50 */ addi r11, r1, 0x50
/* 8016DBBC 0016981C 7F A3 EB 78 */ mr r3, r29
/* 8016DBC0 00169820 48 05 95 B1 */ bl _restgpr_26
/* 8016DBC4 00169824 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8016DBC8 00169828 7C 08 03 A6 */ mtlr r0
/* 8016DBCC 0016982C 38 21 00 50 */ addi r1, r1, 0x50
/* 8016DBD0 00169830 4E 80 00 20 */ blr
.global func_8016DBD4
func_8016DBD4:
/* 8016DBD4 00169834 3C A0 80 49 */ lis r5, lbl_8048CDB4@ha
/* 8016DBD8 00169838 38 00 00 08 */ li r0, 8
/* 8016DBDC 0016983C 38 A5 CD B4 */ addi r5, r5, lbl_8048CDB4@l
/* 8016DBE0 00169840 88 85 00 1A */ lbz r4, 0x1a(r5)
/* 8016DBE4 00169844 7C 00 18 30 */ slw r0, r0, r3
/* 8016DBE8 00169848 7C 84 00 78 */ andc r4, r4, r0
/* 8016DBEC 0016984C 54 80 06 79 */ rlwinm. r0, r4, 0, 0x19, 0x1c
/* 8016DBF0 00169850 98 85 00 1A */ stb r4, 0x1a(r5)
/* 8016DBF4 00169854 41 82 00 18 */ beq lbl_8016DC0C
/* 8016DBF8 00169858 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 8016DBFC 0016985C 38 80 00 0E */ li r4, 0xe
/* 8016DC00 00169860 38 A0 00 00 */ li r5, 0
/* 8016DC04 00169864 38 C0 00 00 */ li r6, 0
/* 8016DC08 00169868 4B EE FB 84 */ b func_8005D78C
lbl_8016DC0C:
/* 8016DC0C 0016986C 4B FF ED 08 */ b func_8016C914
.global func_8016DC10
func_8016DC10:
/* 8016DC10 00169870 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016DC14 00169874 7C 08 02 A6 */ mflr r0
/* 8016DC18 00169878 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016DC1C 0016987C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016DC20 00169880 7C BF 2B 78 */ mr r31, r5
/* 8016DC24 00169884 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8016DC28 00169888 7C 9E 23 78 */ mr r30, r4
/* 8016DC2C 0016988C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016DC30 00169890 7C 7D 1B 78 */ mr r29, r3
/* 8016DC34 00169894 48 00 E3 3D */ bl func_8017BF70
/* 8016DC38 00169898 48 00 00 1C */ b lbl_8016DC54
lbl_8016DC3C:
/* 8016DC3C 0016989C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016DC40 001698A0 48 0B 69 49 */ bl func_80224588
/* 8016DC44 001698A4 7F A3 EB 78 */ mr r3, r29
/* 8016DC48 001698A8 7F C4 F3 78 */ mr r4, r30
/* 8016DC4C 001698AC 7F E5 FB 78 */ mr r5, r31
/* 8016DC50 001698B0 48 00 E3 21 */ bl func_8017BF70
lbl_8016DC54:
/* 8016DC54 001698B4 2C 03 FF FF */ cmpwi r3, -1
/* 8016DC58 001698B8 41 82 FF E4 */ beq lbl_8016DC3C
/* 8016DC5C 001698BC 2C 03 FF FE */ cmpwi r3, -2
/* 8016DC60 001698C0 40 82 00 10 */ bne lbl_8016DC70
/* 8016DC64 001698C4 48 23 EB C5 */ bl func_803AC828
/* 8016DC68 001698C8 38 80 00 07 */ li r4, 7
/* 8016DC6C 001698CC 48 24 00 75 */ bl func_803ADCE0
lbl_8016DC70:
/* 8016DC70 001698D0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016DC74 001698D4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8016DC78 001698D8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016DC7C 001698DC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016DC80 001698E0 7C 08 03 A6 */ mtlr r0
/* 8016DC84 001698E4 38 21 00 20 */ addi r1, r1, 0x20
/* 8016DC88 001698E8 4E 80 00 20 */ blr
.global func_8016DC8C
func_8016DC8C:
/* 8016DC8C 001698EC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016DC90 001698F0 7C 08 02 A6 */ mflr r0
/* 8016DC94 001698F4 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016DC98 001698F8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016DC9C 001698FC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8016DCA0 00169900 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016DCA4 00169904 80 0D 9E C8 */ lwz r0, lbl_8063F188-_SDA_BASE_(r13)
/* 8016DCA8 00169908 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8016DCAC 0016990C 41 82 00 54 */ beq lbl_8016DD00
/* 8016DCB0 00169910 3B C0 00 00 */ li r30, 0
lbl_8016DCB4:
/* 8016DCB4 00169914 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016DCB8 00169918 7C 60 F2 14 */ add r3, r0, r30
/* 8016DCBC 0016991C 88 03 00 7C */ lbz r0, 0x7c(r3)
/* 8016DCC0 00169920 2C 00 00 00 */ cmpwi r0, 0
/* 8016DCC4 00169924 40 82 00 2C */ bne lbl_8016DCF0
/* 8016DCC8 00169928 7F C3 F3 78 */ mr r3, r30
/* 8016DCCC 0016992C 38 80 00 0A */ li r4, 0xa
/* 8016DCD0 00169930 48 00 9F 0D */ bl func_80177BDC
/* 8016DCD4 00169934 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016DCD8 00169938 2C 00 00 07 */ cmpwi r0, 7
/* 8016DCDC 0016993C 40 82 00 14 */ bne lbl_8016DCF0
/* 8016DCE0 00169940 48 23 EB 49 */ bl func_803AC828
/* 8016DCE4 00169944 38 80 00 07 */ li r4, 7
/* 8016DCE8 00169948 48 23 FF F9 */ bl func_803ADCE0
/* 8016DCEC 0016994C 48 00 00 D0 */ b lbl_8016DDBC
lbl_8016DCF0:
/* 8016DCF0 00169950 3B DE 00 01 */ addi r30, r30, 1
/* 8016DCF4 00169954 2C 1E 00 04 */ cmpwi r30, 4
/* 8016DCF8 00169958 41 80 FF BC */ blt lbl_8016DCB4
/* 8016DCFC 0016995C 48 00 00 C0 */ b lbl_8016DDBC
lbl_8016DD00:
/* 8016DD00 00169960 4B FF FB 51 */ bl func_8016D850
/* 8016DD04 00169964 54 60 07 BF */ clrlwi. r0, r3, 0x1e
/* 8016DD08 00169968 7C 7E 1B 78 */ mr r30, r3
/* 8016DD0C 0016996C 40 82 00 2C */ bne lbl_8016DD38
/* 8016DD10 00169970 38 60 00 00 */ li r3, 0
/* 8016DD14 00169974 38 80 00 0A */ li r4, 0xa
/* 8016DD18 00169978 48 00 9E C5 */ bl func_80177BDC
/* 8016DD1C 0016997C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016DD20 00169980 2C 00 00 07 */ cmpwi r0, 7
/* 8016DD24 00169984 40 82 00 14 */ bne lbl_8016DD38
/* 8016DD28 00169988 48 23 EB 01 */ bl func_803AC828
/* 8016DD2C 0016998C 38 80 00 07 */ li r4, 7
/* 8016DD30 00169990 48 23 FF B1 */ bl func_803ADCE0
/* 8016DD34 00169994 48 00 00 88 */ b lbl_8016DDBC
lbl_8016DD38:
/* 8016DD38 00169998 57 C0 07 3B */ rlwinm. r0, r30, 0, 0x1c, 0x1d
/* 8016DD3C 0016999C 40 82 00 2C */ bne lbl_8016DD68
/* 8016DD40 001699A0 38 60 00 01 */ li r3, 1
/* 8016DD44 001699A4 38 80 00 0A */ li r4, 0xa
/* 8016DD48 001699A8 48 00 9E 95 */ bl func_80177BDC
/* 8016DD4C 001699AC 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016DD50 001699B0 2C 00 00 07 */ cmpwi r0, 7
/* 8016DD54 001699B4 40 82 00 14 */ bne lbl_8016DD68
/* 8016DD58 001699B8 48 23 EA D1 */ bl func_803AC828
/* 8016DD5C 001699BC 38 80 00 07 */ li r4, 7
/* 8016DD60 001699C0 48 23 FF 81 */ bl func_803ADCE0
/* 8016DD64 001699C4 48 00 00 58 */ b lbl_8016DDBC
lbl_8016DD68:
/* 8016DD68 001699C8 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha
/* 8016DD6C 001699CC 3B A0 00 00 */ li r29, 0
/* 8016DD70 001699D0 3B DE CD B4 */ addi r30, r30, lbl_8048CDB4@l
/* 8016DD74 001699D4 3B E0 00 08 */ li r31, 8
lbl_8016DD78:
/* 8016DD78 001699D8 88 7E 00 1A */ lbz r3, 0x1a(r30)
/* 8016DD7C 001699DC 7F E0 E8 30 */ slw r0, r31, r29
/* 8016DD80 001699E0 7C 60 00 39 */ and. r0, r3, r0
/* 8016DD84 001699E4 41 82 00 2C */ beq lbl_8016DDB0
/* 8016DD88 001699E8 7F A3 EB 78 */ mr r3, r29
/* 8016DD8C 001699EC 38 80 00 0A */ li r4, 0xa
/* 8016DD90 001699F0 48 00 9E 4D */ bl func_80177BDC
/* 8016DD94 001699F4 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 8016DD98 001699F8 2C 00 00 07 */ cmpwi r0, 7
/* 8016DD9C 001699FC 40 82 00 14 */ bne lbl_8016DDB0
/* 8016DDA0 00169A00 48 23 EA 89 */ bl func_803AC828
/* 8016DDA4 00169A04 38 80 00 07 */ li r4, 7
/* 8016DDA8 00169A08 48 23 FF 39 */ bl func_803ADCE0
/* 8016DDAC 00169A0C 48 00 00 10 */ b lbl_8016DDBC
lbl_8016DDB0:
/* 8016DDB0 00169A10 3B BD 00 01 */ addi r29, r29, 1
/* 8016DDB4 00169A14 2C 1D 00 04 */ cmpwi r29, 4
/* 8016DDB8 00169A18 41 80 FF C0 */ blt lbl_8016DD78
lbl_8016DDBC:
/* 8016DDBC 00169A1C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016DDC0 00169A20 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8016DDC4 00169A24 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016DDC8 00169A28 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016DDCC 00169A2C 7C 08 03 A6 */ mtlr r0
/* 8016DDD0 00169A30 38 21 00 20 */ addi r1, r1, 0x20
/* 8016DDD4 00169A34 4E 80 00 20 */ blr
.global func_8016DDD8
func_8016DDD8:
/* 8016DDD8 00169A38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016DDDC 00169A3C 7C 08 02 A6 */ mflr r0
/* 8016DDE0 00169A40 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016DDE4 00169A44 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8016DDE8 00169A48 93 C1 00 08 */ stw r30, 8(r1)
/* 8016DDEC 00169A4C 7C 7E 1B 78 */ mr r30, r3
/* 8016DDF0 00169A50 48 23 EA 39 */ bl func_803AC828
/* 8016DDF4 00169A54 7C 7F 1B 78 */ mr r31, r3
/* 8016DDF8 00169A58 48 23 EA 51 */ bl func_803AC848
/* 8016DDFC 00169A5C 7C 64 1B 78 */ mr r4, r3
/* 8016DE00 00169A60 7F E3 FB 78 */ mr r3, r31
/* 8016DE04 00169A64 7F C7 F3 78 */ mr r7, r30
/* 8016DE08 00169A68 38 A0 00 03 */ li r5, 3
/* 8016DE0C 00169A6C 38 C0 00 00 */ li r6, 0
/* 8016DE10 00169A70 48 25 AF 9D */ bl func_803C8DAC
/* 8016DE14 00169A74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016DE18 00169A78 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016DE1C 00169A7C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8016DE20 00169A80 7C 08 03 A6 */ mtlr r0
/* 8016DE24 00169A84 38 21 00 10 */ addi r1, r1, 0x10
/* 8016DE28 00169A88 4E 80 00 20 */ blr
.global func_8016DE2C
func_8016DE2C:
/* 8016DE2C 00169A8C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8016DE30 00169A90 7C 08 02 A6 */ mflr r0
/* 8016DE34 00169A94 90 01 00 44 */ stw r0, 0x44(r1)
/* 8016DE38 00169A98 39 61 00 40 */ addi r11, r1, 0x40
/* 8016DE3C 00169A9C 48 05 92 DD */ bl _savegpr_23
/* 8016DE40 00169AA0 38 00 00 00 */ li r0, 0
/* 8016DE44 00169AA4 90 01 00 10 */ stw r0, 0x10(r1)
/* 8016DE48 00169AA8 90 01 00 08 */ stw r0, 8(r1)
/* 8016DE4C 00169AAC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016DE50 00169AB0 90 01 00 0C */ stw r0, 0xc(r1)
/* 8016DE54 00169AB4 48 23 E9 D5 */ bl func_803AC828
/* 8016DE58 00169AB8 7C 7A 1B 78 */ mr r26, r3
/* 8016DE5C 00169ABC 3B A1 00 10 */ addi r29, r1, 0x10
/* 8016DE60 00169AC0 3B 81 00 08 */ addi r28, r1, 8
/* 8016DE64 00169AC4 3B 60 00 00 */ li r27, 0
lbl_8016DE68:
/* 8016DE68 00169AC8 7F 43 D3 78 */ mr r3, r26
/* 8016DE6C 00169ACC 7F 64 DB 78 */ mr r4, r27
/* 8016DE70 00169AD0 48 23 E9 F9 */ bl func_803AC868
/* 8016DE74 00169AD4 7C 79 1B 78 */ mr r25, r3
/* 8016DE78 00169AD8 48 27 0A CD */ bl func_803DE944
/* 8016DE7C 00169ADC 7C 7E 1B 78 */ mr r30, r3
/* 8016DE80 00169AE0 3B 00 00 00 */ li r24, 0
/* 8016DE84 00169AE4 48 00 00 70 */ b lbl_8016DEF4
lbl_8016DE88:
/* 8016DE88 00169AE8 7F 23 CB 78 */ mr r3, r25
/* 8016DE8C 00169AEC 7F 04 C3 78 */ mr r4, r24
/* 8016DE90 00169AF0 48 27 0A BD */ bl func_803DE94C
/* 8016DE94 00169AF4 7C 77 1B 78 */ mr r23, r3
/* 8016DE98 00169AF8 38 80 00 A2 */ li r4, 0xa2
/* 8016DE9C 00169AFC 38 A0 00 00 */ li r5, 0
/* 8016DEA0 00169B00 48 26 FB 3D */ bl func_803DD9DC
/* 8016DEA4 00169B04 2C 03 00 00 */ cmpwi r3, 0
/* 8016DEA8 00169B08 7C 7F 1B 78 */ mr r31, r3
/* 8016DEAC 00169B0C 41 82 00 44 */ beq lbl_8016DEF0
/* 8016DEB0 00169B10 80 DD 00 00 */ lwz r6, 0(r29)
/* 8016DEB4 00169B14 7E E3 BB 78 */ mr r3, r23
/* 8016DEB8 00169B18 38 80 00 A3 */ li r4, 0xa3
/* 8016DEBC 00169B1C 38 A0 00 00 */ li r5, 0
/* 8016DEC0 00169B20 38 06 00 01 */ addi r0, r6, 1
/* 8016DEC4 00169B24 90 1D 00 00 */ stw r0, 0(r29)
/* 8016DEC8 00169B28 48 26 FB 15 */ bl func_803DD9DC
/* 8016DECC 00169B2C 2C 03 00 00 */ cmpwi r3, 0
/* 8016DED0 00169B30 40 82 00 08 */ bne lbl_8016DED8
/* 8016DED4 00169B34 38 60 00 01 */ li r3, 1
lbl_8016DED8:
/* 8016DED8 00169B38 1C 1F 00 64 */ mulli r0, r31, 0x64
/* 8016DEDC 00169B3C 80 9C 00 00 */ lwz r4, 0(r28)
/* 8016DEE0 00169B40 54 00 40 2E */ slwi r0, r0, 8
/* 8016DEE4 00169B44 7C 00 1B 96 */ divwu r0, r0, r3
/* 8016DEE8 00169B48 7C 04 02 14 */ add r0, r4, r0
/* 8016DEEC 00169B4C 90 1C 00 00 */ stw r0, 0(r28)
lbl_8016DEF0:
/* 8016DEF0 00169B50 3B 18 00 01 */ addi r24, r24, 1
lbl_8016DEF4:
/* 8016DEF4 00169B54 7C 18 F0 00 */ cmpw r24, r30
/* 8016DEF8 00169B58 41 80 FF 90 */ blt lbl_8016DE88
/* 8016DEFC 00169B5C 3B 7B 00 01 */ addi r27, r27, 1
/* 8016DF00 00169B60 3B 9C 00 04 */ addi r28, r28, 4
/* 8016DF04 00169B64 2C 1B 00 02 */ cmpwi r27, 2
/* 8016DF08 00169B68 3B BD 00 04 */ addi r29, r29, 4
/* 8016DF0C 00169B6C 41 80 FF 5C */ blt lbl_8016DE68
/* 8016DF10 00169B70 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016DF14 00169B74 80 61 00 10 */ lwz r3, 0x10(r1)
/* 8016DF18 00169B78 7C 03 00 00 */ cmpw r3, r0
/* 8016DF1C 00169B7C 40 81 00 0C */ ble lbl_8016DF28
/* 8016DF20 00169B80 38 60 00 01 */ li r3, 1
/* 8016DF24 00169B84 48 00 00 34 */ b lbl_8016DF58
lbl_8016DF28:
/* 8016DF28 00169B88 40 80 00 0C */ bge lbl_8016DF34
/* 8016DF2C 00169B8C 38 60 00 02 */ li r3, 2
/* 8016DF30 00169B90 48 00 00 28 */ b lbl_8016DF58
lbl_8016DF34:
/* 8016DF34 00169B94 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8016DF38 00169B98 80 61 00 08 */ lwz r3, 8(r1)
/* 8016DF3C 00169B9C 7C 03 00 40 */ cmplw r3, r0
/* 8016DF40 00169BA0 40 81 00 0C */ ble lbl_8016DF4C
/* 8016DF44 00169BA4 38 60 00 01 */ li r3, 1
/* 8016DF48 00169BA8 48 00 00 10 */ b lbl_8016DF58
lbl_8016DF4C:
/* 8016DF4C 00169BAC 7C 00 18 10 */ subfc r0, r0, r3
/* 8016DF50 00169BB0 7C 60 01 10 */ subfe r3, r0, r0
/* 8016DF54 00169BB4 38 63 00 03 */ addi r3, r3, 3
lbl_8016DF58:
/* 8016DF58 00169BB8 39 61 00 40 */ addi r11, r1, 0x40
/* 8016DF5C 00169BBC 48 05 92 09 */ bl _restgpr_23
/* 8016DF60 00169BC0 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8016DF64 00169BC4 7C 08 03 A6 */ mtlr r0
/* 8016DF68 00169BC8 38 21 00 40 */ addi r1, r1, 0x40
/* 8016DF6C 00169BCC 4E 80 00 20 */ blr
.global func_8016DF70
func_8016DF70:
/* 8016DF70 00169BD0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016DF74 00169BD4 7C 08 02 A6 */ mflr r0
/* 8016DF78 00169BD8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016DF7C 00169BDC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016DF80 00169BE0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8016DF84 00169BE4 7C 9E 23 78 */ mr r30, r4
/* 8016DF88 00169BE8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016DF8C 00169BEC 7C 7D 1B 78 */ mr r29, r3
/* 8016DF90 00169BF0 80 AD 9E BC */ lwz r5, lbl_8063F17C-_SDA_BASE_(r13)
/* 8016DF94 00169BF4 80 0D 9E C0 */ lwz r0, lbl_8063F180-_SDA_BASE_(r13)
/* 8016DF98 00169BF8 7C 85 22 14 */ add r4, r5, r4
/* 8016DF9C 00169BFC 7C 04 00 00 */ cmpw r4, r0
/* 8016DFA0 00169C00 90 8D 9E BC */ stw r4, lbl_8063F17C-_SDA_BASE_(r13)
/* 8016DFA4 00169C04 40 81 00 08 */ ble lbl_8016DFAC
/* 8016DFA8 00169C08 90 8D 9E C0 */ stw r4, lbl_8063F180-_SDA_BASE_(r13)
lbl_8016DFAC:
/* 8016DFAC 00169C0C 3C 03 00 01 */ addis r0, r3, 1
/* 8016DFB0 00169C10 28 00 FF FF */ cmplwi r0, 0xffff
/* 8016DFB4 00169C14 41 82 00 10 */ beq lbl_8016DFC4
/* 8016DFB8 00169C18 38 60 00 64 */ li r3, 0x64
/* 8016DFBC 00169C1C 48 06 CC 89 */ bl func_801DAC44
/* 8016DFC0 00169C20 7C 7F 1B 78 */ mr r31, r3
lbl_8016DFC4:
/* 8016DFC4 00169C24 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8016DFC8 00169C28 7F C4 F3 78 */ mr r4, r30
/* 8016DFCC 00169C2C 48 06 CC C9 */ bl func_801DAC94
/* 8016DFD0 00169C30 3C 1D 00 01 */ addis r0, r29, 1
/* 8016DFD4 00169C34 7C 7E 1B 78 */ mr r30, r3
/* 8016DFD8 00169C38 28 00 FF FF */ cmplwi r0, 0xffff
/* 8016DFDC 00169C3C 41 82 00 0C */ beq lbl_8016DFE8
/* 8016DFE0 00169C40 57 E3 04 3E */ clrlwi r3, r31, 0x10
/* 8016DFE4 00169C44 48 06 CC 61 */ bl func_801DAC44
lbl_8016DFE8:
/* 8016DFE8 00169C48 7F C3 F3 78 */ mr r3, r30
/* 8016DFEC 00169C4C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8016DFF0 00169C50 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016DFF4 00169C54 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016DFF8 00169C58 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016DFFC 00169C5C 7C 08 03 A6 */ mtlr r0
/* 8016E000 00169C60 38 21 00 20 */ addi r1, r1, 0x20
/* 8016E004 00169C64 4E 80 00 20 */ blr
.global func_8016E008
func_8016E008:
/* 8016E008 00169C68 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016E00C 00169C6C 7C 08 02 A6 */ mflr r0
/* 8016E010 00169C70 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016E014 00169C74 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016E018 00169C78 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8016E01C 00169C7C 7C 9E 23 78 */ mr r30, r4
/* 8016E020 00169C80 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016E024 00169C84 7C 7D 1B 78 */ mr r29, r3
/* 8016E028 00169C88 80 AD 9E BC */ lwz r5, lbl_8063F17C-_SDA_BASE_(r13)
/* 8016E02C 00169C8C 80 0D 9E C0 */ lwz r0, lbl_8063F180-_SDA_BASE_(r13)
/* 8016E030 00169C90 7C 85 22 14 */ add r4, r5, r4
/* 8016E034 00169C94 7C 04 00 00 */ cmpw r4, r0
/* 8016E038 00169C98 90 8D 9E BC */ stw r4, lbl_8063F17C-_SDA_BASE_(r13)
/* 8016E03C 00169C9C 40 81 00 08 */ ble lbl_8016E044
/* 8016E040 00169CA0 90 8D 9E C0 */ stw r4, lbl_8063F180-_SDA_BASE_(r13)
lbl_8016E044:
/* 8016E044 00169CA4 3C 03 00 01 */ addis r0, r3, 1
/* 8016E048 00169CA8 28 00 FF FF */ cmplwi r0, 0xffff
/* 8016E04C 00169CAC 41 82 00 10 */ beq lbl_8016E05C
/* 8016E050 00169CB0 38 60 00 64 */ li r3, 0x64
/* 8016E054 00169CB4 48 06 CB F1 */ bl func_801DAC44
/* 8016E058 00169CB8 7C 7F 1B 78 */ mr r31, r3
lbl_8016E05C:
/* 8016E05C 00169CBC 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8016E060 00169CC0 7F C4 F3 78 */ mr r4, r30
/* 8016E064 00169CC4 48 06 CC 31 */ bl func_801DAC94
/* 8016E068 00169CC8 3C 1D 00 01 */ addis r0, r29, 1
/* 8016E06C 00169CCC 7C 7E 1B 78 */ mr r30, r3
/* 8016E070 00169CD0 28 00 FF FF */ cmplwi r0, 0xffff
/* 8016E074 00169CD4 41 82 00 0C */ beq lbl_8016E080
/* 8016E078 00169CD8 57 E3 04 3E */ clrlwi r3, r31, 0x10
/* 8016E07C 00169CDC 48 06 CB C9 */ bl func_801DAC44
lbl_8016E080:
/* 8016E080 00169CE0 7F C3 F3 78 */ mr r3, r30
/* 8016E084 00169CE4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8016E088 00169CE8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016E08C 00169CEC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016E090 00169CF0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016E094 00169CF4 7C 08 03 A6 */ mtlr r0
/* 8016E098 00169CF8 38 21 00 20 */ addi r1, r1, 0x20
/* 8016E09C 00169CFC 4E 80 00 20 */ blr
.global func_8016E0A0
func_8016E0A0:
/* 8016E0A0 00169D00 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016E0A4 00169D04 7C 08 02 A6 */ mflr r0
/* 8016E0A8 00169D08 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016E0AC 00169D0C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8016E0B0 00169D10 7C 7F 1B 78 */ mr r31, r3
/* 8016E0B4 00169D14 7F E4 FB 78 */ mr r4, r31
/* 8016E0B8 00169D18 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8016E0BC 00169D1C 48 06 CC 9D */ bl func_801DAD58
/* 8016E0C0 00169D20 80 0D 9E BC */ lwz r0, lbl_8063F17C-_SDA_BASE_(r13)
/* 8016E0C4 00169D24 7F E4 FB 78 */ mr r4, r31
/* 8016E0C8 00169D28 7C 03 00 50 */ subf r0, r3, r0
/* 8016E0CC 00169D2C 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8016E0D0 00169D30 90 0D 9E BC */ stw r0, lbl_8063F17C-_SDA_BASE_(r13)
/* 8016E0D4 00169D34 48 06 CC 75 */ bl func_801DAD48
/* 8016E0D8 00169D38 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016E0DC 00169D3C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016E0E0 00169D40 7C 08 03 A6 */ mtlr r0
/* 8016E0E4 00169D44 38 21 00 10 */ addi r1, r1, 0x10
/* 8016E0E8 00169D48 4E 80 00 20 */ blr
.global func_8016E0EC
func_8016E0EC:
/* 8016E0EC 00169D4C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8016E0F0 00169D50 7C 08 02 A6 */ mflr r0
/* 8016E0F4 00169D54 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016E0F8 00169D58 39 61 00 20 */ addi r11, r1, 0x20
/* 8016E0FC 00169D5C 48 05 90 2D */ bl _savegpr_27
/* 8016E100 00169D60 3B E0 00 00 */ li r31, 0
/* 8016E104 00169D64 3B A0 00 00 */ li r29, 0
/* 8016E108 00169D68 3B C0 00 FF */ li r30, 0xff
lbl_8016E10C:
/* 8016E10C 00169D6C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016E110 00169D70 7C 60 EA 14 */ add r3, r0, r29
/* 8016E114 00169D74 80 83 00 10 */ lwz r4, 0x10(r3)
/* 8016E118 00169D78 2C 04 00 0B */ cmpwi r4, 0xb
/* 8016E11C 00169D7C 40 82 00 AC */ bne lbl_8016E1C8
/* 8016E120 00169D80 80 63 00 60 */ lwz r3, 0x60(r3)
/* 8016E124 00169D84 88 03 00 00 */ lbz r0, 0(r3)
/* 8016E128 00169D88 2C 00 00 00 */ cmpwi r0, 0
/* 8016E12C 00169D8C 40 82 00 9C */ bne lbl_8016E1C8
/* 8016E130 00169D90 57 FC 07 FE */ clrlwi r28, r31, 0x1f
/* 8016E134 00169D94 3B 60 00 00 */ li r27, 0
lbl_8016E138:
/* 8016E138 00169D98 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016E13C 00169D9C 48 0B 64 4D */ bl func_80224588
/* 8016E140 00169DA0 7F 83 E3 78 */ mr r3, r28
/* 8016E144 00169DA4 4B FF 9B 09 */ bl func_80167C4C
/* 8016E148 00169DA8 28 03 00 07 */ cmplwi r3, 7
/* 8016E14C 00169DAC 40 82 00 18 */ bne lbl_8016E164
/* 8016E150 00169DB0 48 23 E6 D9 */ bl func_803AC828
/* 8016E154 00169DB4 38 80 00 07 */ li r4, 7
/* 8016E158 00169DB8 48 23 FB 89 */ bl func_803ADCE0
/* 8016E15C 00169DBC 38 60 00 01 */ li r3, 1
/* 8016E160 00169DC0 48 00 01 20 */ b lbl_8016E280
lbl_8016E164:
/* 8016E164 00169DC4 28 03 F5 FA */ cmplwi r3, 0xf5fa
/* 8016E168 00169DC8 40 82 00 14 */ bne lbl_8016E17C
/* 8016E16C 00169DCC 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016E170 00169DD0 7C 60 EA 14 */ add r3, r0, r29
/* 8016E174 00169DD4 93 C3 00 10 */ stw r30, 0x10(r3)
/* 8016E178 00169DD8 48 00 00 10 */ b lbl_8016E188
lbl_8016E17C:
/* 8016E17C 00169DDC 3B 7B 00 01 */ addi r27, r27, 1
/* 8016E180 00169DE0 2C 1B 0A 28 */ cmpwi r27, 0xa28
/* 8016E184 00169DE4 41 80 FF B4 */ blt lbl_8016E138
lbl_8016E188:
/* 8016E188 00169DE8 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016E18C 00169DEC 7C 60 EA 14 */ add r3, r0, r29
/* 8016E190 00169DF0 80 83 00 10 */ lwz r4, 0x10(r3)
/* 8016E194 00169DF4 2C 04 00 FF */ cmpwi r4, 0xff
/* 8016E198 00169DF8 41 82 00 30 */ beq lbl_8016E1C8
/* 8016E19C 00169DFC 7F 83 E3 78 */ mr r3, r28
/* 8016E1A0 00169E00 4B FF 98 91 */ bl func_80167A30
/* 8016E1A4 00169E04 4B FF 6A C9 */ bl func_80164C6C
/* 8016E1A8 00169E08 2C 03 00 00 */ cmpwi r3, 0
/* 8016E1AC 00169E0C 41 82 00 08 */ beq lbl_8016E1B4
/* 8016E1B0 00169E10 4B FF 88 F1 */ bl func_80166AA0
lbl_8016E1B4:
/* 8016E1B4 00169E14 48 23 E6 75 */ bl func_803AC828
/* 8016E1B8 00169E18 38 80 00 07 */ li r4, 7
/* 8016E1BC 00169E1C 48 23 FB 25 */ bl func_803ADCE0
/* 8016E1C0 00169E20 38 60 00 01 */ li r3, 1
/* 8016E1C4 00169E24 48 00 00 BC */ b lbl_8016E280
lbl_8016E1C8:
/* 8016E1C8 00169E28 2C 04 00 FD */ cmpwi r4, 0xfd
/* 8016E1CC 00169E2C 40 82 00 A0 */ bne lbl_8016E26C
/* 8016E1D0 00169E30 57 FC 07 FE */ clrlwi r28, r31, 0x1f
/* 8016E1D4 00169E34 3B 60 00 00 */ li r27, 0
lbl_8016E1D8:
/* 8016E1D8 00169E38 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016E1DC 00169E3C 48 0B 63 AD */ bl func_80224588
/* 8016E1E0 00169E40 7F 83 E3 78 */ mr r3, r28
/* 8016E1E4 00169E44 4B FF 9A 69 */ bl func_80167C4C
/* 8016E1E8 00169E48 28 03 00 07 */ cmplwi r3, 7
/* 8016E1EC 00169E4C 40 82 00 18 */ bne lbl_8016E204
/* 8016E1F0 00169E50 48 23 E6 39 */ bl func_803AC828
/* 8016E1F4 00169E54 38 80 00 07 */ li r4, 7
/* 8016E1F8 00169E58 48 23 FA E9 */ bl func_803ADCE0
/* 8016E1FC 00169E5C 38 60 00 01 */ li r3, 1
/* 8016E200 00169E60 48 00 00 80 */ b lbl_8016E280
lbl_8016E204:
/* 8016E204 00169E64 28 03 F5 FA */ cmplwi r3, 0xf5fa
/* 8016E208 00169E68 40 82 00 18 */ bne lbl_8016E220
/* 8016E20C 00169E6C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016E210 00169E70 7C 60 EA 14 */ add r3, r0, r29
/* 8016E214 00169E74 80 03 00 20 */ lwz r0, 0x20(r3)
/* 8016E218 00169E78 90 03 00 10 */ stw r0, 0x10(r3)
/* 8016E21C 00169E7C 48 00 00 10 */ b lbl_8016E22C
lbl_8016E220:
/* 8016E220 00169E80 3B 7B 00 01 */ addi r27, r27, 1
/* 8016E224 00169E84 2C 1B 0A 28 */ cmpwi r27, 0xa28
/* 8016E228 00169E88 41 80 FF B0 */ blt lbl_8016E1D8
lbl_8016E22C:
/* 8016E22C 00169E8C 80 0D 9F 08 */ lwz r0, lbl_8063F1C8-_SDA_BASE_(r13)
/* 8016E230 00169E90 7C 60 EA 14 */ add r3, r0, r29
/* 8016E234 00169E94 80 03 00 10 */ lwz r0, 0x10(r3)
/* 8016E238 00169E98 2C 00 00 FD */ cmpwi r0, 0xfd
/* 8016E23C 00169E9C 40 82 00 30 */ bne lbl_8016E26C
/* 8016E240 00169EA0 7F 83 E3 78 */ mr r3, r28
/* 8016E244 00169EA4 4B FF 97 ED */ bl func_80167A30
/* 8016E248 00169EA8 4B FF 6A 25 */ bl func_80164C6C
/* 8016E24C 00169EAC 2C 03 00 00 */ cmpwi r3, 0
/* 8016E250 00169EB0 41 82 00 08 */ beq lbl_8016E258
/* 8016E254 00169EB4 4B FF 88 4D */ bl func_80166AA0
lbl_8016E258:
/* 8016E258 00169EB8 48 23 E5 D1 */ bl func_803AC828
/* 8016E25C 00169EBC 38 80 00 07 */ li r4, 7
/* 8016E260 00169EC0 48 23 FA 81 */ bl func_803ADCE0
/* 8016E264 00169EC4 38 60 00 01 */ li r3, 1
/* 8016E268 00169EC8 48 00 00 18 */ b lbl_8016E280
lbl_8016E26C:
/* 8016E26C 00169ECC 3B FF 00 01 */ addi r31, r31, 1
/* 8016E270 00169ED0 3B BD 00 04 */ addi r29, r29, 4
/* 8016E274 00169ED4 2C 1F 00 04 */ cmpwi r31, 4
/* 8016E278 00169ED8 41 80 FE 94 */ blt lbl_8016E10C
/* 8016E27C 00169EDC 38 60 00 00 */ li r3, 0
lbl_8016E280:
/* 8016E280 00169EE0 39 61 00 20 */ addi r11, r1, 0x20
/* 8016E284 00169EE4 48 05 8E F1 */ bl _restgpr_27
/* 8016E288 00169EE8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016E28C 00169EEC 7C 08 03 A6 */ mtlr r0
/* 8016E290 00169EF0 38 21 00 20 */ addi r1, r1, 0x20
/* 8016E294 00169EF4 4E 80 00 20 */ blr
.global func_8016E298
func_8016E298:
/* 8016E298 00169EF8 38 A0 00 01 */ li r5, 1
/* 8016E29C 00169EFC 38 6D 9E A0 */ addi r3, r13, lbl_8063F160-_SDA_BASE_
/* 8016E2A0 00169F00 38 80 00 04 */ li r4, 4
/* 8016E2A4 00169F04 38 00 00 00 */ li r0, 0
/* 8016E2A8 00169F08 98 AD 9E A0 */ stb r5, lbl_8063F160-_SDA_BASE_(r13)
/* 8016E2AC 00169F0C B0 83 00 02 */ sth r4, 2(r3)
/* 8016E2B0 00169F10 98 03 00 04 */ stb r0, 4(r3)
/* 8016E2B4 00169F14 4E 80 00 20 */ blr
|