summaryrefslogtreecommitdiff
path: root/asm/text_1.s
blob: b6722484206506cd73a95e1294c81fc6055b2c3d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
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
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
14531
14532
14533
14534
14535
14536
14537
14538
14539
14540
14541
14542
14543
14544
14545
14546
14547
14548
14549
14550
14551
14552
14553
14554
14555
14556
14557
14558
14559
14560
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
14576
14577
14578
14579
14580
14581
14582
14583
14584
14585
14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
14621
14622
14623
14624
14625
14626
14627
14628
14629
14630
14631
14632
14633
14634
14635
14636
14637
14638
14639
14640
14641
14642
14643
14644
14645
14646
14647
14648
14649
14650
14651
14652
14653
14654
14655
14656
14657
14658
14659
14660
14661
14662
14663
14664
14665
14666
14667
14668
14669
14670
14671
14672
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
14688
14689
14690
14691
14692
14693
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
14745
14746
14747
14748
14749
14750
14751
14752
14753
14754
14755
14756
14757
14758
14759
14760
14761
14762
14763
14764
14765
14766
14767
14768
14769
14770
14771
14772
14773
14774
14775
14776
14777
14778
14779
14780
14781
14782
14783
14784
14785
14786
14787
14788
14789
14790
14791
14792
14793
14794
14795
14796
14797
14798
14799
14800
14801
14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
14818
14819
14820
14821
14822
14823
14824
14825
14826
14827
14828
14829
14830
14831
14832
14833
14834
14835
14836
14837
14838
14839
14840
14841
14842
14843
14844
14845
14846
14847
14848
14849
14850
14851
14852
14853
14854
14855
14856
14857
14858
14859
14860
14861
14862
14863
14864
14865
14866
14867
14868
14869
14870
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
15236
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
15286
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
15343
15344
15345
15346
15347
15348
15349
15350
15351
15352
15353
15354
15355
15356
15357
15358
15359
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
15604
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
16320
16321
16322
16323
16324
16325
16326
16327
16328
16329
16330
16331
16332
16333
16334
16335
16336
16337
16338
16339
16340
16341
16342
16343
16344
16345
16346
16347
16348
16349
16350
16351
16352
16353
16354
16355
16356
16357
16358
16359
16360
16361
16362
16363
16364
16365
16366
16367
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
16380
16381
16382
16383
16384
16385
16386
16387
16388
16389
16390
16391
16392
16393
16394
16395
16396
16397
16398
16399
16400
16401
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16412
16413
16414
16415
16416
16417
16418
16419
16420
16421
16422
16423
16424
16425
16426
16427
16428
16429
16430
16431
16432
16433
16434
16435
16436
16437
16438
16439
16440
16441
16442
16443
16444
16445
16446
16447
16448
16449
16450
16451
16452
16453
16454
16455
16456
16457
16458
16459
16460
16461
16462
16463
16464
16465
16466
16467
16468
16469
16470
16471
16472
16473
16474
16475
16476
16477
16478
16479
16480
16481
16482
16483
16484
16485
16486
16487
16488
16489
16490
16491
16492
16493
16494
16495
16496
16497
16498
16499
16500
16501
16502
16503
16504
16505
16506
16507
16508
16509
16510
16511
16512
16513
16514
16515
16516
16517
16518
16519
16520
16521
16522
16523
16524
16525
16526
16527
16528
16529
16530
16531
16532
16533
16534
16535
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
16546
16547
16548
16549
16550
16551
16552
16553
16554
16555
16556
16557
16558
16559
16560
16561
16562
16563
16564
16565
16566
16567
16568
16569
16570
16571
16572
16573
16574
16575
16576
16577
16578
16579
16580
16581
16582
16583
16584
16585
16586
16587
16588
16589
16590
16591
16592
16593
16594
16595
16596
16597
16598
16599
16600
16601
16602
16603
16604
16605
16606
16607
16608
16609
16610
16611
16612
16613
16614
16615
16616
16617
16618
16619
16620
16621
16622
16623
16624
16625
16626
16627
16628
16629
16630
16631
16632
16633
16634
16635
16636
16637
16638
16639
16640
16641
16642
16643
16644
16645
16646
16647
16648
16649
16650
16651
16652
16653
16654
16655
16656
16657
16658
16659
16660
16661
16662
16663
16664
16665
16666
16667
16668
16669
16670
16671
16672
16673
16674
16675
16676
16677
16678
16679
16680
16681
16682
16683
16684
16685
16686
16687
16688
16689
16690
16691
16692
16693
16694
16695
16696
16697
16698
16699
16700
16701
16702
16703
16704
16705
16706
16707
16708
16709
16710
16711
16712
16713
16714
16715
16716
16717
16718
16719
16720
16721
16722
16723
16724
16725
16726
16727
16728
16729
16730
16731
16732
16733
16734
16735
16736
16737
16738
16739
16740
16741
16742
16743
16744
16745
16746
16747
16748
16749
16750
16751
16752
16753
16754
16755
16756
16757
16758
16759
16760
16761
16762
16763
16764
16765
16766
16767
16768
16769
16770
16771
16772
16773
16774
16775
16776
16777
16778
16779
16780
16781
16782
16783
16784
16785
16786
16787
16788
16789
16790
16791
16792
16793
16794
16795
16796
16797
16798
16799
16800
16801
16802
16803
16804
16805
16806
16807
16808
16809
16810
16811
16812
16813
16814
16815
16816
16817
16818
16819
16820
16821
16822
16823
16824
16825
16826
16827
16828
16829
16830
16831
16832
16833
16834
16835
16836
16837
16838
16839
16840
16841
16842
16843
16844
16845
16846
16847
16848
16849
16850
16851
16852
16853
16854
16855
16856
16857
16858
16859
16860
16861
16862
16863
16864
16865
16866
16867
16868
16869
16870
16871
16872
16873
16874
16875
16876
16877
16878
16879
16880
16881
16882
16883
16884
16885
16886
16887
16888
16889
16890
16891
16892
16893
16894
16895
16896
16897
16898
16899
16900
16901
16902
16903
16904
16905
16906
16907
16908
16909
16910
16911
16912
16913
16914
16915
16916
16917
16918
16919
16920
16921
16922
16923
16924
16925
16926
16927
16928
16929
16930
16931
16932
16933
16934
16935
16936
16937
16938
16939
16940
16941
16942
16943
16944
16945
16946
16947
16948
16949
16950
16951
16952
16953
16954
16955
16956
16957
16958
16959
16960
16961
16962
16963
16964
16965
16966
16967
16968
16969
16970
16971
16972
16973
16974
16975
16976
16977
16978
16979
16980
16981
16982
16983
16984
16985
16986
16987
16988
16989
16990
16991
16992
16993
16994
16995
16996
16997
16998
16999
17000
17001
17002
17003
17004
17005
17006
17007
17008
17009
17010
17011
17012
17013
17014
17015
17016
17017
17018
17019
17020
17021
17022
17023
17024
17025
17026
17027
17028
17029
17030
17031
17032
17033
17034
17035
17036
17037
17038
17039
17040
17041
17042
17043
17044
17045
17046
17047
17048
17049
17050
17051
17052
17053
17054
17055
17056
17057
17058
17059
17060
17061
17062
17063
17064
17065
17066
17067
17068
17069
17070
17071
17072
17073
17074
17075
17076
17077
17078
17079
17080
17081
17082
17083
17084
17085
17086
17087
17088
17089
17090
17091
17092
17093
17094
17095
17096
17097
17098
17099
17100
17101
17102
17103
17104
17105
17106
17107
17108
17109
17110
17111
17112
17113
17114
17115
17116
17117
17118
17119
17120
17121
17122
17123
17124
17125
17126
17127
17128
17129
17130
17131
17132
17133
17134
17135
17136
17137
17138
17139
17140
17141
17142
17143
17144
17145
17146
17147
17148
17149
17150
17151
17152
17153
17154
17155
17156
17157
17158
17159
17160
17161
17162
17163
17164
17165
17166
17167
17168
17169
17170
17171
17172
17173
17174
17175
17176
17177
17178
17179
17180
17181
17182
17183
17184
17185
17186
17187
17188
17189
17190
17191
17192
17193
17194
17195
17196
17197
17198
17199
17200
17201
17202
17203
17204
17205
17206
17207
17208
17209
17210
17211
17212
17213
17214
17215
17216
17217
17218
17219
17220
17221
17222
17223
17224
17225
17226
17227
17228
17229
17230
17231
17232
17233
17234
17235
17236
17237
17238
17239
17240
17241
17242
17243
17244
17245
17246
17247
17248
17249
17250
17251
17252
17253
17254
17255
17256
17257
17258
17259
17260
17261
17262
17263
17264
17265
17266
17267
17268
17269
17270
17271
17272
17273
17274
17275
17276
17277
17278
17279
17280
17281
17282
17283
17284
17285
17286
17287
17288
17289
17290
17291
17292
17293
17294
17295
17296
17297
17298
17299
17300
17301
17302
17303
17304
17305
17306
17307
17308
17309
17310
17311
17312
17313
17314
17315
17316
17317
17318
17319
17320
17321
17322
17323
17324
17325
17326
17327
17328
17329
17330
17331
17332
17333
17334
17335
17336
17337
17338
17339
17340
17341
17342
17343
17344
17345
17346
17347
17348
17349
17350
17351
17352
17353
17354
17355
17356
17357
17358
17359
17360
17361
17362
17363
17364
17365
17366
17367
17368
17369
17370
17371
17372
17373
17374
17375
17376
17377
17378
17379
17380
17381
17382
17383
17384
17385
17386
17387
17388
17389
17390
17391
17392
17393
17394
17395
17396
17397
17398
17399
17400
17401
17402
17403
17404
17405
17406
17407
17408
17409
17410
17411
17412
17413
17414
17415
17416
17417
17418
17419
17420
17421
17422
17423
17424
17425
17426
17427
17428
17429
17430
17431
17432
17433
17434
17435
17436
17437
17438
17439
17440
17441
17442
17443
17444
17445
17446
17447
17448
17449
17450
17451
17452
17453
17454
17455
17456
17457
17458
17459
17460
17461
17462
17463
17464
17465
17466
17467
17468
17469
17470
17471
17472
17473
17474
17475
17476
17477
17478
17479
17480
17481
17482
17483
17484
17485
17486
17487
17488
17489
17490
17491
17492
17493
17494
17495
17496
17497
17498
17499
17500
17501
17502
17503
17504
17505
17506
17507
17508
17509
17510
17511
17512
17513
17514
17515
17516
17517
17518
17519
17520
17521
17522
17523
17524
17525
17526
17527
17528
17529
17530
17531
17532
17533
17534
17535
17536
17537
17538
17539
17540
17541
17542
17543
17544
17545
17546
17547
17548
17549
17550
17551
17552
17553
17554
17555
17556
17557
17558
17559
17560
17561
17562
17563
17564
17565
17566
17567
17568
17569
17570
17571
17572
17573
17574
17575
17576
17577
17578
17579
17580
17581
17582
17583
17584
17585
17586
17587
17588
17589
17590
17591
17592
17593
17594
17595
17596
17597
17598
17599
17600
17601
17602
17603
17604
17605
17606
17607
17608
17609
17610
17611
17612
17613
17614
17615
17616
17617
17618
17619
17620
17621
17622
17623
17624
17625
17626
17627
17628
17629
17630
17631
17632
17633
17634
17635
17636
17637
17638
17639
17640
17641
17642
17643
17644
17645
17646
17647
17648
17649
17650
17651
17652
17653
17654
17655
17656
17657
17658
17659
17660
17661
17662
17663
17664
17665
17666
17667
17668
17669
17670
17671
17672
17673
17674
17675
17676
17677
17678
17679
17680
17681
17682
17683
17684
17685
17686
17687
17688
17689
17690
17691
17692
17693
17694
17695
17696
17697
17698
17699
17700
17701
17702
17703
17704
17705
17706
17707
17708
17709
17710
17711
17712
17713
17714
17715
17716
17717
17718
17719
17720
17721
17722
17723
17724
17725
17726
17727
17728
17729
17730
17731
17732
17733
17734
17735
17736
17737
17738
17739
17740
17741
17742
17743
17744
17745
17746
17747
17748
17749
17750
17751
17752
17753
17754
17755
17756
17757
17758
17759
17760
17761
17762
17763
17764
17765
17766
17767
17768
17769
17770
17771
17772
17773
17774
17775
17776
17777
17778
17779
17780
17781
17782
17783
17784
17785
17786
17787
17788
17789
17790
17791
17792
17793
17794
17795
17796
17797
17798
17799
17800
17801
17802
17803
17804
17805
17806
17807
17808
17809
17810
17811
17812
17813
17814
17815
17816
17817
17818
17819
17820
17821
17822
17823
17824
17825
17826
17827
17828
17829
17830
17831
17832
17833
17834
17835
17836
17837
17838
17839
17840
17841
17842
17843
17844
17845
17846
17847
17848
17849
17850
17851
17852
17853
17854
17855
17856
17857
17858
17859
17860
17861
17862
17863
17864
17865
17866
17867
17868
17869
17870
17871
17872
17873
17874
17875
17876
17877
17878
17879
17880
17881
17882
17883
17884
17885
17886
17887
17888
17889
17890
17891
17892
17893
17894
17895
17896
17897
17898
17899
17900
17901
17902
17903
17904
17905
17906
17907
17908
17909
17910
17911
17912
17913
17914
17915
17916
17917
17918
17919
17920
17921
17922
17923
17924
17925
17926
17927
17928
17929
17930
17931
17932
17933
17934
17935
17936
17937
17938
17939
17940
17941
17942
17943
17944
17945
17946
17947
17948
17949
17950
17951
17952
17953
17954
17955
17956
17957
17958
17959
17960
17961
17962
17963
17964
17965
17966
17967
17968
17969
17970
17971
17972
17973
17974
17975
17976
17977
17978
17979
17980
17981
17982
17983
17984
17985
17986
17987
17988
17989
17990
17991
17992
17993
17994
17995
17996
17997
17998
17999
18000
18001
18002
18003
18004
18005
18006
18007
18008
18009
18010
18011
18012
18013
18014
18015
18016
18017
18018
18019
18020
18021
18022
18023
18024
18025
18026
18027
18028
18029
18030
18031
18032
18033
18034
18035
18036
18037
18038
18039
18040
18041
18042
18043
18044
18045
18046
18047
18048
18049
18050
18051
18052
18053
18054
18055
18056
18057
18058
18059
18060
18061
18062
18063
18064
18065
18066
18067
18068
18069
18070
18071
18072
18073
18074
18075
18076
18077
18078
18079
18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
18091
18092
18093
18094
18095
18096
18097
18098
18099
18100
18101
18102
18103
18104
18105
18106
18107
18108
18109
18110
18111
18112
18113
18114
18115
18116
18117
18118
18119
18120
18121
18122
18123
18124
18125
18126
18127
18128
18129
18130
18131
18132
18133
18134
18135
18136
18137
18138
18139
18140
18141
18142
18143
18144
18145
18146
18147
18148
18149
18150
18151
18152
18153
18154
18155
18156
18157
18158
18159
18160
18161
18162
18163
18164
18165
18166
18167
18168
18169
18170
18171
18172
18173
18174
18175
18176
18177
18178
18179
18180
18181
18182
18183
18184
18185
18186
18187
18188
18189
18190
18191
18192
18193
18194
18195
18196
18197
18198
18199
18200
18201
18202
18203
18204
18205
18206
18207
18208
18209
18210
18211
18212
18213
18214
18215
18216
18217
18218
18219
18220
18221
18222
18223
18224
18225
18226
18227
18228
18229
18230
18231
18232
18233
18234
18235
18236
18237
18238
18239
18240
18241
18242
18243
18244
18245
18246
18247
18248
18249
18250
18251
18252
18253
18254
18255
18256
18257
18258
18259
18260
18261
18262
18263
18264
18265
18266
18267
18268
18269
18270
18271
18272
18273
18274
18275
18276
18277
18278
18279
18280
18281
18282
18283
18284
18285
18286
18287
18288
18289
18290
18291
18292
18293
18294
18295
18296
18297
18298
18299
18300
18301
18302
18303
18304
18305
18306
18307
18308
18309
18310
18311
18312
18313
18314
18315
18316
18317
18318
18319
18320
18321
18322
18323
18324
18325
18326
18327
18328
18329
18330
18331
18332
18333
18334
18335
18336
18337
18338
18339
18340
18341
18342
18343
18344
18345
18346
18347
18348
18349
18350
18351
18352
18353
18354
18355
18356
18357
18358
18359
18360
18361
18362
18363
18364
18365
18366
18367
18368
18369
18370
18371
18372
18373
18374
18375
18376
18377
18378
18379
18380
18381
18382
18383
18384
18385
18386
18387
18388
18389
18390
18391
18392
18393
18394
18395
18396
18397
18398
18399
18400
18401
18402
18403
18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
18414
18415
18416
18417
18418
18419
18420
18421
18422
18423
18424
18425
18426
18427
18428
18429
18430
18431
18432
18433
18434
18435
18436
18437
18438
18439
18440
18441
18442
18443
18444
18445
18446
18447
18448
18449
18450
18451
18452
18453
18454
18455
18456
18457
18458
18459
18460
18461
18462
18463
18464
18465
18466
18467
18468
18469
18470
18471
18472
18473
18474
18475
18476
18477
18478
18479
18480
18481
18482
18483
18484
18485
18486
18487
18488
18489
18490
18491
18492
18493
18494
18495
18496
18497
18498
18499
18500
18501
18502
18503
18504
18505
18506
18507
18508
18509
18510
18511
18512
18513
18514
18515
18516
18517
18518
18519
18520
18521
18522
18523
18524
18525
18526
18527
18528
18529
18530
18531
18532
18533
18534
18535
18536
18537
18538
18539
18540
18541
18542
18543
18544
18545
18546
18547
18548
18549
18550
18551
18552
18553
18554
18555
18556
18557
18558
18559
18560
18561
18562
18563
18564
18565
18566
18567
18568
18569
18570
18571
18572
18573
18574
18575
18576
18577
18578
18579
18580
18581
18582
18583
18584
18585
18586
18587
18588
18589
18590
18591
18592
18593
18594
18595
18596
18597
18598
18599
18600
18601
18602
18603
18604
18605
18606
18607
18608
18609
18610
18611
18612
18613
18614
18615
18616
18617
18618
18619
18620
18621
18622
18623
18624
18625
18626
18627
18628
18629
18630
18631
18632
18633
18634
18635
18636
18637
18638
18639
18640
18641
18642
18643
18644
18645
18646
18647
18648
18649
18650
18651
18652
18653
18654
18655
18656
18657
18658
18659
18660
18661
18662
18663
18664
18665
18666
18667
18668
18669
18670
18671
18672
18673
18674
18675
18676
18677
18678
18679
18680
18681
18682
18683
18684
18685
18686
18687
18688
18689
18690
18691
18692
18693
18694
18695
18696
18697
18698
18699
18700
18701
18702
18703
18704
18705
18706
18707
18708
18709
18710
18711
18712
18713
18714
18715
18716
18717
18718
18719
18720
18721
18722
18723
18724
18725
18726
18727
18728
18729
18730
18731
18732
18733
18734
18735
18736
18737
18738
18739
18740
18741
18742
18743
18744
18745
18746
18747
18748
18749
18750
18751
18752
18753
18754
18755
18756
18757
18758
18759
18760
18761
18762
18763
18764
18765
18766
18767
18768
18769
18770
18771
18772
18773
18774
18775
18776
18777
18778
18779
18780
18781
18782
18783
18784
18785
18786
18787
18788
18789
18790
18791
18792
18793
18794
18795
18796
18797
18798
18799
18800
18801
18802
18803
18804
18805
18806
18807
18808
18809
18810
18811
18812
18813
18814
18815
18816
18817
18818
18819
18820
18821
18822
18823
18824
18825
18826
18827
18828
18829
18830
18831
18832
18833
18834
18835
18836
18837
18838
18839
18840
18841
18842
18843
18844
18845
18846
18847
18848
18849
18850
18851
18852
18853
18854
18855
18856
18857
18858
18859
18860
18861
18862
18863
18864
18865
18866
18867
18868
18869
18870
18871
18872
18873
18874
18875
18876
18877
18878
18879
18880
18881
18882
18883
18884
18885
18886
18887
18888
18889
18890
18891
18892
18893
18894
18895
18896
18897
18898
18899
18900
18901
18902
18903
18904
18905
18906
18907
18908
18909
18910
18911
18912
18913
18914
18915
18916
18917
18918
18919
18920
18921
18922
18923
18924
18925
18926
18927
18928
18929
18930
18931
18932
18933
18934
18935
18936
18937
18938
18939
18940
18941
18942
18943
18944
18945
18946
18947
18948
18949
18950
18951
18952
18953
18954
18955
18956
18957
18958
18959
18960
18961
18962
18963
18964
18965
18966
18967
18968
18969
18970
18971
18972
18973
18974
18975
18976
18977
18978
18979
18980
18981
18982
18983
18984
18985
18986
18987
18988
18989
18990
18991
18992
18993
18994
18995
18996
18997
18998
18999
19000
19001
19002
19003
19004
19005
19006
19007
19008
19009
19010
19011
19012
19013
19014
19015
19016
19017
19018
19019
19020
19021
19022
19023
19024
19025
19026
19027
19028
19029
19030
19031
19032
19033
19034
19035
19036
19037
19038
19039
19040
19041
19042
19043
19044
19045
19046
19047
19048
19049
19050
19051
19052
19053
19054
19055
19056
19057
19058
19059
19060
19061
19062
19063
19064
19065
19066
19067
19068
19069
19070
19071
19072
19073
19074
19075
19076
19077
19078
19079
19080
19081
19082
19083
19084
19085
19086
19087
19088
19089
19090
19091
19092
19093
19094
19095
19096
19097
19098
19099
19100
19101
19102
19103
19104
19105
19106
19107
19108
19109
19110
19111
19112
19113
19114
19115
19116
19117
19118
19119
19120
19121
19122
19123
19124
19125
19126
19127
19128
19129
19130
19131
19132
19133
19134
19135
19136
19137
19138
19139
19140
19141
19142
19143
19144
19145
19146
19147
19148
19149
19150
19151
19152
19153
19154
19155
19156
19157
19158
19159
19160
19161
19162
19163
19164
19165
19166
19167
19168
19169
19170
19171
19172
19173
19174
19175
19176
19177
19178
19179
19180
19181
19182
19183
19184
19185
19186
19187
19188
19189
19190
19191
19192
19193
19194
19195
19196
19197
19198
19199
19200
19201
19202
19203
19204
19205
19206
19207
19208
19209
19210
19211
19212
19213
19214
19215
19216
19217
19218
19219
19220
19221
19222
19223
19224
19225
19226
19227
19228
19229
19230
19231
19232
19233
19234
19235
19236
19237
19238
19239
19240
19241
19242
19243
19244
19245
19246
19247
19248
19249
19250
19251
19252
19253
19254
19255
19256
19257
19258
19259
19260
19261
19262
19263
19264
19265
19266
19267
19268
19269
19270
19271
19272
19273
19274
19275
19276
19277
19278
19279
19280
19281
19282
19283
19284
19285
19286
19287
19288
19289
19290
19291
19292
19293
19294
19295
19296
19297
19298
19299
19300
19301
19302
19303
19304
19305
19306
19307
19308
19309
19310
19311
19312
19313
19314
19315
19316
19317
19318
19319
19320
19321
19322
19323
19324
19325
19326
19327
19328
19329
19330
19331
19332
19333
19334
19335
19336
19337
19338
19339
19340
19341
19342
19343
19344
19345
19346
19347
19348
19349
19350
19351
19352
19353
19354
19355
19356
19357
19358
19359
19360
19361
19362
19363
19364
19365
19366
19367
19368
19369
19370
19371
19372
19373
19374
19375
19376
19377
19378
19379
19380
19381
19382
19383
19384
19385
19386
19387
19388
19389
19390
19391
19392
19393
19394
19395
19396
19397
19398
19399
19400
19401
19402
19403
19404
19405
19406
19407
19408
19409
19410
19411
19412
19413
19414
19415
19416
19417
19418
19419
19420
19421
19422
19423
19424
19425
19426
19427
19428
19429
19430
19431
19432
19433
19434
19435
19436
19437
19438
19439
19440
19441
19442
19443
19444
19445
19446
19447
19448
19449
19450
19451
19452
19453
19454
19455
19456
19457
19458
19459
19460
19461
19462
19463
19464
19465
19466
19467
19468
19469
19470
19471
19472
19473
19474
19475
19476
19477
19478
19479
19480
19481
19482
19483
19484
19485
19486
19487
19488
19489
19490
19491
19492
19493
19494
19495
19496
19497
19498
19499
19500
19501
19502
19503
19504
19505
19506
19507
19508
19509
19510
19511
19512
19513
19514
19515
19516
19517
19518
19519
19520
19521
19522
19523
19524
19525
19526
19527
19528
19529
19530
19531
19532
19533
19534
19535
19536
19537
19538
19539
19540
19541
19542
19543
19544
19545
19546
19547
19548
19549
19550
19551
19552
19553
19554
19555
19556
19557
19558
19559
19560
19561
19562
19563
19564
19565
19566
19567
19568
19569
19570
19571
19572
19573
19574
19575
19576
19577
19578
19579
19580
19581
19582
19583
19584
19585
19586
19587
19588
19589
19590
19591
19592
19593
19594
19595
19596
19597
19598
19599
19600
19601
19602
19603
19604
19605
19606
19607
19608
19609
19610
19611
19612
19613
19614
19615
19616
19617
19618
19619
19620
19621
19622
19623
19624
19625
19626
19627
19628
19629
19630
19631
19632
19633
19634
19635
19636
19637
19638
19639
19640
19641
19642
19643
19644
19645
19646
19647
19648
19649
19650
19651
19652
19653
19654
19655
19656
19657
19658
19659
19660
19661
19662
19663
19664
19665
19666
19667
19668
19669
19670
19671
19672
19673
19674
19675
19676
19677
19678
19679
19680
19681
19682
19683
19684
19685
19686
19687
19688
19689
19690
19691
19692
19693
19694
19695
19696
19697
19698
19699
19700
19701
19702
19703
19704
19705
19706
19707
19708
19709
19710
19711
19712
19713
19714
19715
19716
19717
19718
19719
19720
19721
19722
19723
19724
19725
19726
19727
19728
19729
19730
19731
19732
19733
19734
19735
19736
19737
19738
19739
19740
19741
19742
19743
19744
19745
19746
19747
19748
19749
19750
19751
19752
19753
19754
19755
19756
19757
19758
19759
19760
19761
19762
19763
19764
19765
19766
19767
19768
19769
19770
19771
19772
19773
19774
19775
19776
19777
19778
19779
19780
19781
19782
19783
19784
19785
19786
19787
19788
19789
19790
19791
19792
19793
19794
19795
19796
19797
19798
19799
19800
19801
19802
19803
19804
19805
19806
19807
19808
19809
19810
19811
19812
19813
19814
19815
19816
19817
19818
19819
19820
19821
19822
19823
19824
19825
19826
19827
19828
19829
19830
19831
19832
19833
19834
19835
19836
19837
19838
19839
19840
19841
19842
19843
19844
19845
19846
19847
19848
19849
19850
19851
19852
19853
19854
19855
19856
19857
19858
19859
19860
19861
19862
19863
19864
19865
19866
19867
19868
19869
19870
19871
19872
19873
19874
19875
19876
19877
19878
19879
19880
19881
19882
19883
19884
19885
19886
19887
19888
19889
19890
19891
19892
19893
19894
19895
19896
19897
19898
19899
19900
19901
19902
19903
19904
19905
19906
19907
19908
19909
19910
19911
19912
19913
19914
19915
19916
19917
19918
19919
19920
19921
19922
19923
19924
19925
19926
19927
19928
19929
19930
19931
19932
19933
19934
19935
19936
19937
19938
19939
19940
19941
19942
19943
19944
19945
19946
19947
19948
19949
19950
19951
19952
19953
19954
19955
19956
19957
19958
19959
19960
19961
19962
19963
19964
19965
19966
19967
19968
19969
19970
19971
19972
19973
19974
19975
19976
19977
19978
19979
19980
19981
19982
19983
19984
19985
19986
19987
19988
19989
19990
19991
19992
19993
19994
19995
19996
19997
19998
19999
20000
20001
20002
20003
20004
20005
20006
20007
20008
20009
20010
20011
20012
20013
20014
20015
20016
20017
20018
20019
20020
20021
20022
20023
20024
20025
20026
20027
20028
20029
20030
20031
20032
20033
20034
20035
20036
20037
20038
20039
20040
20041
20042
20043
20044
20045
20046
20047
20048
20049
20050
20051
20052
20053
20054
20055
20056
20057
20058
20059
20060
20061
20062
20063
20064
20065
20066
20067
20068
20069
20070
20071
20072
20073
20074
20075
20076
20077
20078
20079
20080
20081
20082
20083
20084
20085
20086
20087
20088
20089
20090
20091
20092
20093
20094
20095
20096
20097
20098
20099
20100
20101
20102
20103
20104
20105
20106
20107
20108
20109
20110
20111
20112
20113
20114
20115
20116
20117
20118
20119
20120
20121
20122
20123
20124
20125
20126
20127
20128
20129
20130
20131
20132
20133
20134
20135
20136
20137
20138
20139
20140
20141
20142
20143
20144
20145
20146
20147
20148
20149
20150
20151
20152
20153
20154
20155
20156
20157
20158
20159
20160
20161
20162
20163
20164
20165
20166
20167
20168
20169
20170
20171
20172
20173
20174
20175
20176
20177
20178
20179
20180
20181
20182
20183
20184
20185
20186
20187
20188
20189
20190
20191
20192
20193
20194
20195
20196
20197
20198
20199
20200
20201
20202
20203
20204
20205
20206
20207
20208
20209
20210
20211
20212
20213
20214
20215
20216
20217
20218
20219
20220
20221
20222
20223
20224
20225
20226
20227
20228
20229
20230
20231
20232
20233
20234
20235
20236
20237
20238
20239
20240
20241
20242
20243
20244
20245
20246
20247
20248
20249
20250
20251
20252
20253
20254
20255
20256
20257
20258
20259
20260
20261
20262
20263
20264
20265
20266
20267
20268
20269
20270
20271
20272
20273
20274
20275
20276
20277
20278
20279
20280
20281
20282
20283
20284
20285
20286
20287
20288
20289
20290
20291
20292
20293
20294
20295
20296
20297
20298
20299
20300
20301
20302
20303
20304
20305
20306
20307
20308
20309
20310
20311
20312
20313
20314
20315
20316
20317
20318
20319
20320
20321
20322
20323
20324
20325
20326
20327
20328
20329
20330
20331
20332
20333
20334
20335
20336
20337
20338
20339
20340
20341
20342
20343
20344
20345
20346
20347
20348
20349
20350
20351
20352
20353
20354
20355
20356
20357
20358
20359
20360
20361
20362
20363
20364
20365
20366
20367
20368
20369
20370
20371
20372
20373
20374
20375
20376
20377
20378
20379
20380
20381
20382
20383
20384
20385
20386
20387
20388
20389
20390
20391
20392
20393
20394
20395
20396
20397
20398
20399
20400
20401
20402
20403
20404
20405
20406
20407
20408
20409
20410
20411
20412
20413
20414
20415
20416
20417
20418
20419
20420
20421
20422
20423
20424
20425
20426
20427
20428
20429
20430
20431
20432
20433
20434
20435
20436
20437
20438
20439
20440
20441
20442
20443
20444
20445
20446
20447
20448
20449
20450
20451
20452
20453
20454
20455
20456
20457
20458
20459
20460
20461
20462
20463
20464
20465
20466
20467
20468
20469
20470
20471
20472
20473
20474
20475
20476
20477
20478
20479
20480
20481
20482
20483
20484
20485
20486
20487
20488
20489
20490
20491
20492
20493
20494
20495
20496
20497
20498
20499
20500
20501
20502
20503
20504
20505
20506
20507
20508
20509
20510
20511
20512
20513
20514
20515
20516
20517
20518
20519
20520
20521
20522
20523
20524
20525
20526
20527
20528
20529
20530
20531
20532
20533
20534
20535
20536
20537
20538
20539
20540
20541
20542
20543
20544
20545
20546
20547
20548
20549
20550
20551
20552
20553
20554
20555
20556
20557
20558
20559
20560
20561
20562
20563
20564
20565
20566
20567
20568
20569
20570
20571
20572
20573
20574
20575
20576
20577
20578
20579
20580
20581
20582
20583
20584
20585
20586
20587
20588
20589
20590
20591
20592
20593
20594
20595
20596
20597
20598
20599
20600
20601
20602
20603
20604
20605
20606
20607
20608
20609
20610
20611
20612
20613
20614
20615
20616
20617
20618
20619
20620
20621
20622
20623
20624
20625
20626
20627
20628
20629
20630
20631
20632
20633
20634
20635
20636
20637
20638
20639
20640
20641
20642
20643
20644
20645
20646
20647
20648
20649
20650
20651
20652
20653
20654
20655
20656
20657
20658
20659
20660
20661
20662
20663
20664
20665
20666
20667
20668
20669
20670
20671
20672
20673
20674
20675
20676
20677
20678
20679
20680
20681
20682
20683
20684
20685
20686
20687
20688
20689
20690
20691
20692
20693
20694
20695
20696
20697
20698
20699
20700
20701
20702
20703
20704
20705
20706
20707
20708
20709
20710
20711
20712
20713
20714
20715
20716
20717
20718
20719
20720
20721
20722
20723
20724
20725
20726
20727
20728
20729
20730
20731
20732
20733
20734
20735
20736
20737
20738
20739
20740
20741
20742
20743
20744
20745
20746
20747
20748
20749
20750
20751
20752
20753
20754
20755
20756
20757
20758
20759
20760
20761
20762
20763
20764
20765
20766
20767
20768
20769
20770
20771
20772
20773
20774
20775
20776
20777
20778
20779
20780
20781
20782
20783
20784
20785
20786
20787
20788
20789
20790
20791
20792
20793
20794
20795
20796
20797
20798
20799
20800
20801
20802
20803
20804
20805
20806
20807
20808
20809
20810
20811
20812
20813
20814
20815
20816
20817
20818
20819
20820
20821
20822
20823
20824
20825
20826
20827
20828
20829
20830
20831
20832
20833
20834
20835
20836
20837
20838
20839
20840
20841
20842
20843
20844
20845
20846
20847
20848
20849
20850
20851
20852
20853
20854
20855
20856
20857
20858
20859
20860
20861
20862
20863
20864
20865
20866
20867
20868
20869
20870
20871
20872
20873
20874
20875
20876
20877
20878
20879
20880
20881
20882
20883
20884
20885
20886
20887
20888
20889
20890
20891
20892
20893
20894
20895
20896
20897
20898
20899
20900
20901
20902
20903
20904
20905
20906
20907
20908
20909
20910
20911
20912
20913
20914
20915
20916
20917
20918
20919
20920
20921
20922
20923
20924
20925
20926
20927
20928
20929
20930
20931
20932
20933
20934
20935
20936
20937
20938
20939
20940
20941
20942
20943
20944
20945
20946
20947
20948
20949
20950
20951
20952
20953
20954
20955
20956
20957
20958
20959
20960
20961
20962
20963
20964
20965
20966
20967
20968
20969
20970
20971
20972
20973
20974
20975
20976
20977
20978
20979
20980
20981
20982
20983
20984
20985
20986
20987
20988
20989
20990
20991
20992
20993
20994
20995
20996
20997
20998
20999
21000
21001
21002
21003
21004
21005
21006
21007
21008
21009
21010
21011
21012
21013
21014
21015
21016
21017
21018
21019
21020
21021
21022
21023
21024
21025
21026
21027
21028
21029
21030
21031
21032
21033
21034
21035
21036
21037
21038
21039
21040
21041
21042
21043
21044
21045
21046
21047
21048
21049
21050
21051
21052
21053
21054
21055
21056
21057
21058
21059
21060
21061
21062
21063
21064
21065
21066
21067
21068
21069
21070
21071
21072
21073
21074
21075
21076
21077
21078
21079
21080
21081
21082
21083
21084
21085
21086
21087
21088
21089
21090
21091
21092
21093
21094
21095
21096
21097
21098
21099
21100
21101
21102
21103
21104
21105
21106
21107
21108
21109
21110
21111
21112
21113
21114
21115
21116
21117
21118
21119
21120
21121
21122
21123
21124
21125
21126
21127
21128
21129
21130
21131
21132
21133
21134
21135
21136
21137
21138
21139
21140
21141
21142
21143
21144
21145
21146
21147
21148
21149
21150
21151
21152
21153
21154
21155
21156
21157
21158
21159
21160
21161
21162
21163
21164
21165
21166
21167
21168
21169
21170
21171
21172
21173
21174
21175
21176
21177
21178
21179
21180
21181
21182
21183
21184
21185
21186
21187
21188
21189
21190
21191
21192
21193
21194
21195
21196
21197
21198
21199
21200
21201
21202
21203
21204
21205
21206
21207
21208
21209
21210
21211
21212
21213
21214
21215
21216
21217
21218
21219
21220
21221
21222
21223
21224
21225
21226
21227
21228
21229
21230
21231
21232
21233
21234
21235
21236
21237
21238
21239
21240
21241
21242
21243
21244
21245
21246
21247
21248
21249
21250
21251
21252
21253
21254
21255
21256
21257
21258
21259
21260
21261
21262
21263
21264
21265
21266
21267
21268
21269
21270
21271
21272
21273
21274
21275
21276
21277
21278
21279
21280
21281
21282
21283
21284
21285
21286
21287
21288
21289
21290
21291
21292
21293
21294
21295
21296
21297
21298
21299
21300
21301
21302
21303
21304
21305
21306
21307
21308
21309
21310
21311
21312
21313
21314
21315
21316
21317
21318
21319
21320
21321
21322
21323
21324
21325
21326
21327
21328
21329
21330
21331
21332
21333
21334
21335
21336
21337
21338
21339
21340
21341
21342
21343
21344
21345
21346
21347
21348
21349
21350
21351
21352
21353
21354
21355
21356
21357
21358
21359
21360
21361
21362
21363
21364
21365
21366
21367
21368
21369
21370
21371
21372
21373
21374
21375
21376
21377
21378
21379
21380
21381
21382
21383
21384
21385
21386
21387
21388
21389
21390
21391
21392
21393
21394
21395
21396
21397
21398
21399
21400
21401
21402
21403
21404
21405
21406
21407
21408
21409
21410
21411
21412
21413
21414
21415
21416
21417
21418
21419
21420
21421
21422
21423
21424
21425
21426
21427
21428
21429
21430
21431
21432
21433
21434
21435
21436
21437
21438
21439
21440
21441
21442
21443
21444
21445
21446
21447
21448
21449
21450
21451
21452
21453
21454
21455
21456
21457
21458
21459
21460
21461
21462
21463
21464
21465
21466
21467
21468
21469
21470
21471
21472
21473
21474
21475
21476
21477
21478
21479
21480
21481
21482
21483
21484
21485
21486
21487
21488
21489
21490
21491
21492
21493
21494
21495
21496
21497
21498
21499
21500
21501
21502
21503
21504
21505
21506
21507
21508
21509
21510
21511
21512
21513
21514
21515
21516
21517
21518
21519
21520
21521
21522
21523
21524
21525
21526
21527
21528
21529
21530
21531
21532
21533
21534
21535
21536
21537
21538
21539
21540
21541
21542
21543
21544
21545
21546
21547
21548
21549
21550
21551
21552
21553
21554
21555
21556
21557
21558
21559
21560
21561
21562
21563
21564
21565
21566
21567
21568
21569
21570
21571
21572
21573
21574
21575
21576
21577
21578
21579
21580
21581
21582
21583
21584
21585
21586
21587
21588
21589
21590
21591
21592
21593
21594
21595
21596
21597
21598
21599
21600
21601
21602
21603
21604
21605
21606
21607
21608
21609
21610
21611
21612
21613
21614
21615
21616
21617
21618
21619
21620
21621
21622
21623
21624
21625
21626
21627
21628
21629
21630
21631
21632
21633
21634
21635
21636
21637
21638
21639
21640
21641
21642
21643
21644
21645
21646
21647
21648
21649
21650
21651
21652
21653
21654
21655
21656
21657
21658
21659
21660
21661
21662
21663
21664
21665
21666
21667
21668
21669
21670
21671
21672
21673
21674
21675
21676
21677
21678
21679
21680
21681
21682
21683
21684
21685
21686
21687
21688
21689
21690
21691
21692
21693
21694
21695
21696
21697
21698
21699
21700
21701
21702
21703
21704
21705
21706
21707
21708
21709
21710
21711
21712
21713
21714
21715
21716
21717
21718
21719
21720
21721
21722
21723
21724
21725
21726
21727
21728
21729
21730
21731
21732
21733
21734
21735
21736
21737
21738
21739
21740
21741
21742
21743
21744
21745
21746
21747
21748
21749
21750
21751
21752
21753
21754
21755
21756
21757
21758
21759
21760
21761
21762
21763
21764
21765
21766
21767
21768
21769
21770
21771
21772
21773
21774
21775
21776
21777
21778
21779
21780
21781
21782
21783
21784
21785
21786
21787
21788
21789
21790
21791
21792
21793
21794
21795
21796
21797
21798
21799
21800
21801
21802
21803
21804
21805
21806
21807
21808
21809
21810
21811
21812
21813
21814
21815
21816
21817
21818
21819
21820
21821
21822
21823
21824
21825
21826
21827
21828
21829
21830
21831
21832
21833
21834
21835
21836
21837
21838
21839
21840
21841
21842
21843
21844
21845
21846
21847
21848
21849
21850
21851
21852
21853
21854
21855
21856
21857
21858
21859
21860
21861
21862
21863
21864
21865
21866
21867
21868
21869
21870
21871
21872
21873
21874
21875
21876
21877
21878
21879
21880
21881
21882
21883
21884
21885
21886
21887
21888
21889
21890
21891
21892
21893
21894
21895
21896
21897
21898
21899
21900
21901
21902
21903
21904
21905
21906
21907
21908
21909
21910
21911
21912
21913
21914
21915
21916
21917
21918
21919
21920
21921
21922
21923
21924
21925
21926
21927
21928
21929
21930
21931
21932
21933
21934
21935
21936
21937
21938
21939
21940
21941
21942
21943
21944
21945
21946
21947
21948
21949
21950
21951
21952
21953
21954
21955
21956
21957
21958
21959
21960
21961
21962
21963
21964
21965
21966
21967
21968
21969
21970
21971
21972
21973
21974
21975
21976
21977
21978
21979
21980
21981
21982
21983
21984
21985
21986
21987
21988
21989
21990
21991
21992
21993
21994
21995
21996
21997
21998
21999
22000
22001
22002
22003
22004
22005
22006
22007
22008
22009
22010
22011
22012
22013
22014
22015
22016
22017
22018
22019
22020
22021
22022
22023
22024
22025
22026
22027
22028
22029
22030
22031
22032
22033
22034
22035
22036
22037
22038
22039
22040
22041
22042
22043
22044
22045
22046
22047
22048
22049
22050
22051
22052
22053
22054
22055
22056
22057
22058
22059
22060
22061
22062
22063
22064
22065
22066
22067
22068
22069
22070
22071
22072
22073
22074
22075
22076
22077
22078
22079
22080
22081
22082
22083
22084
22085
22086
22087
22088
22089
22090
22091
22092
22093
22094
22095
22096
22097
22098
22099
22100
22101
22102
22103
22104
22105
22106
22107
22108
22109
22110
22111
22112
22113
22114
22115
22116
22117
22118
22119
22120
22121
22122
22123
22124
22125
22126
22127
22128
22129
22130
22131
22132
22133
22134
22135
22136
22137
22138
22139
22140
22141
22142
22143
22144
22145
22146
22147
22148
22149
22150
22151
22152
22153
22154
22155
22156
22157
22158
22159
22160
22161
22162
22163
22164
22165
22166
22167
22168
22169
22170
22171
22172
22173
22174
22175
22176
22177
22178
22179
22180
22181
22182
22183
22184
22185
22186
22187
22188
22189
22190
22191
22192
22193
22194
22195
22196
22197
22198
22199
22200
22201
22202
22203
22204
22205
22206
22207
22208
22209
22210
22211
22212
22213
22214
22215
22216
22217
22218
22219
22220
22221
22222
22223
22224
22225
22226
22227
22228
22229
22230
22231
22232
22233
22234
22235
22236
22237
22238
22239
22240
22241
22242
22243
22244
22245
22246
22247
22248
22249
22250
22251
22252
22253
22254
22255
22256
22257
22258
22259
22260
22261
22262
22263
22264
22265
22266
22267
22268
22269
22270
22271
22272
22273
22274
22275
22276
22277
22278
22279
22280
22281
22282
22283
22284
22285
22286
22287
22288
22289
22290
22291
22292
22293
22294
22295
22296
22297
22298
22299
22300
22301
22302
22303
22304
22305
22306
22307
22308
22309
22310
22311
22312
22313
22314
22315
22316
22317
22318
22319
22320
22321
22322
22323
22324
22325
22326
22327
22328
22329
22330
22331
22332
22333
22334
22335
22336
22337
22338
22339
22340
22341
22342
22343
22344
22345
22346
22347
22348
22349
22350
22351
22352
22353
22354
22355
22356
22357
22358
22359
22360
22361
22362
22363
22364
22365
22366
22367
22368
22369
22370
22371
22372
22373
22374
22375
22376
22377
22378
22379
22380
22381
22382
22383
22384
22385
22386
22387
22388
22389
22390
22391
22392
22393
22394
22395
22396
22397
22398
22399
22400
22401
22402
22403
22404
22405
22406
22407
22408
22409
22410
22411
22412
22413
22414
22415
22416
22417
22418
22419
22420
22421
22422
22423
22424
22425
22426
22427
22428
22429
22430
22431
22432
22433
22434
22435
22436
22437
22438
22439
22440
22441
22442
22443
22444
22445
22446
22447
22448
22449
22450
22451
22452
22453
22454
22455
22456
22457
22458
22459
22460
22461
22462
22463
22464
22465
22466
22467
22468
22469
22470
22471
22472
22473
22474
22475
22476
22477
22478
22479
22480
22481
22482
22483
22484
22485
22486
22487
22488
22489
22490
22491
22492
22493
22494
22495
22496
22497
22498
22499
22500
22501
22502
22503
22504
22505
22506
22507
22508
22509
22510
22511
22512
22513
22514
22515
22516
22517
22518
22519
22520
22521
22522
22523
22524
22525
22526
22527
22528
22529
22530
22531
22532
22533
22534
22535
22536
22537
22538
22539
22540
22541
22542
22543
22544
22545
22546
22547
22548
22549
22550
22551
22552
22553
22554
22555
22556
22557
22558
22559
22560
22561
22562
22563
22564
22565
22566
22567
22568
22569
22570
22571
22572
22573
22574
22575
22576
22577
22578
22579
22580
22581
22582
22583
22584
22585
22586
22587
22588
22589
22590
22591
22592
22593
22594
22595
22596
22597
22598
22599
22600
22601
22602
22603
22604
22605
22606
22607
22608
22609
22610
22611
22612
22613
22614
22615
22616
22617
22618
22619
22620
22621
22622
22623
22624
22625
22626
22627
22628
22629
22630
22631
22632
22633
22634
22635
22636
22637
22638
22639
22640
22641
22642
22643
22644
22645
22646
22647
22648
22649
22650
22651
22652
22653
22654
22655
22656
22657
22658
22659
22660
22661
22662
22663
22664
22665
22666
22667
22668
22669
22670
22671
22672
22673
22674
22675
22676
22677
22678
22679
22680
22681
22682
22683
22684
22685
22686
22687
22688
22689
22690
22691
22692
22693
22694
22695
22696
22697
22698
22699
22700
22701
22702
22703
22704
22705
22706
22707
22708
22709
22710
22711
22712
22713
22714
22715
22716
22717
22718
22719
22720
22721
22722
22723
22724
22725
22726
22727
22728
22729
22730
22731
22732
22733
22734
22735
22736
22737
22738
22739
22740
22741
22742
22743
22744
22745
22746
22747
22748
22749
22750
22751
22752
22753
22754
22755
22756
22757
22758
22759
22760
22761
22762
22763
22764
22765
22766
22767
22768
22769
22770
22771
22772
22773
22774
22775
22776
22777
22778
22779
22780
22781
22782
22783
22784
22785
22786
22787
22788
22789
22790
22791
22792
22793
22794
22795
22796
22797
22798
22799
22800
22801
22802
22803
22804
22805
22806
22807
22808
22809
22810
22811
22812
22813
22814
22815
22816
22817
22818
22819
22820
22821
22822
22823
22824
22825
22826
22827
22828
22829
22830
22831
22832
22833
22834
22835
22836
22837
22838
22839
22840
22841
22842
22843
22844
22845
22846
22847
22848
22849
22850
22851
22852
22853
22854
22855
22856
22857
22858
22859
22860
22861
22862
22863
22864
22865
22866
22867
22868
22869
22870
22871
22872
22873
22874
22875
22876
22877
22878
22879
22880
22881
22882
22883
22884
22885
22886
22887
22888
22889
22890
22891
22892
22893
22894
22895
22896
22897
22898
22899
22900
22901
22902
22903
22904
22905
22906
22907
22908
22909
22910
22911
22912
22913
22914
22915
22916
22917
22918
22919
22920
22921
22922
22923
22924
22925
22926
22927
22928
22929
22930
22931
22932
22933
22934
22935
22936
22937
22938
22939
22940
22941
22942
22943
22944
22945
22946
22947
22948
22949
22950
22951
22952
22953
22954
22955
22956
22957
22958
22959
22960
22961
22962
22963
22964
22965
22966
22967
22968
22969
22970
22971
22972
22973
22974
22975
22976
22977
22978
22979
22980
22981
22982
22983
22984
22985
22986
22987
22988
22989
22990
22991
22992
22993
22994
22995
22996
22997
22998
22999
23000
23001
23002
23003
23004
23005
23006
23007
23008
23009
23010
23011
23012
23013
23014
23015
23016
23017
23018
23019
23020
23021
23022
23023
23024
23025
23026
23027
23028
23029
23030
23031
23032
23033
23034
23035
23036
23037
23038
23039
23040
23041
23042
23043
23044
23045
23046
23047
23048
23049
23050
23051
23052
23053
23054
23055
23056
23057
23058
23059
23060
23061
23062
23063
23064
23065
23066
23067
23068
23069
23070
23071
23072
23073
23074
23075
23076
23077
23078
23079
23080
23081
23082
23083
23084
23085
23086
23087
23088
23089
23090
23091
23092
23093
23094
23095
23096
23097
23098
23099
23100
23101
23102
23103
23104
23105
23106
23107
23108
23109
23110
23111
23112
23113
23114
23115
23116
23117
23118
23119
23120
23121
23122
23123
23124
23125
23126
23127
23128
23129
23130
23131
23132
23133
23134
23135
23136
23137
23138
23139
23140
23141
23142
23143
23144
23145
23146
23147
23148
23149
23150
23151
23152
23153
23154
23155
23156
23157
23158
23159
23160
23161
23162
23163
23164
23165
23166
23167
23168
23169
23170
23171
23172
23173
23174
23175
23176
23177
23178
23179
23180
23181
23182
23183
23184
23185
23186
23187
23188
23189
23190
23191
23192
23193
23194
23195
23196
23197
23198
23199
23200
23201
23202
23203
23204
23205
23206
23207
23208
23209
23210
23211
23212
23213
23214
23215
23216
23217
23218
23219
23220
23221
23222
23223
23224
23225
23226
23227
23228
23229
23230
23231
23232
23233
23234
23235
23236
23237
23238
23239
23240
23241
23242
23243
23244
23245
23246
23247
23248
23249
23250
23251
23252
23253
23254
23255
23256
23257
23258
23259
23260
23261
23262
23263
23264
23265
23266
23267
23268
23269
23270
23271
23272
23273
23274
23275
23276
23277
23278
23279
23280
23281
23282
23283
23284
23285
23286
23287
23288
23289
23290
23291
23292
23293
23294
23295
23296
23297
23298
23299
23300
23301
23302
23303
23304
23305
23306
23307
23308
23309
23310
23311
23312
23313
23314
23315
23316
23317
23318
23319
23320
23321
23322
23323
23324
23325
23326
23327
23328
23329
23330
23331
23332
23333
23334
23335
23336
23337
23338
23339
23340
23341
23342
23343
23344
23345
23346
23347
23348
23349
23350
23351
23352
23353
23354
23355
23356
23357
23358
23359
23360
23361
23362
23363
23364
23365
23366
23367
23368
23369
23370
23371
23372
23373
23374
23375
23376
23377
23378
23379
23380
23381
23382
23383
23384
23385
23386
23387
23388
23389
23390
23391
23392
23393
23394
23395
23396
23397
23398
23399
23400
23401
23402
23403
23404
23405
23406
23407
23408
23409
23410
23411
23412
23413
23414
23415
23416
23417
23418
23419
23420
23421
23422
23423
23424
23425
23426
23427
23428
23429
23430
23431
23432
23433
23434
23435
23436
23437
23438
23439
23440
23441
23442
23443
23444
23445
23446
23447
23448
23449
23450
23451
23452
23453
23454
23455
23456
23457
23458
23459
23460
23461
23462
23463
23464
23465
23466
23467
23468
23469
23470
23471
23472
23473
23474
23475
23476
23477
23478
23479
23480
23481
23482
23483
23484
23485
23486
23487
23488
23489
23490
23491
23492
23493
23494
23495
23496
23497
23498
23499
23500
23501
23502
23503
23504
23505
23506
23507
23508
23509
23510
23511
23512
23513
23514
23515
23516
23517
23518
23519
23520
23521
23522
23523
23524
23525
23526
23527
23528
23529
23530
23531
23532
23533
23534
23535
23536
23537
23538
23539
23540
23541
23542
23543
23544
23545
23546
23547
23548
23549
23550
23551
23552
23553
23554
23555
23556
23557
23558
23559
23560
23561
23562
23563
23564
23565
23566
23567
23568
23569
23570
23571
23572
23573
23574
23575
23576
23577
23578
23579
23580
23581
23582
23583
23584
23585
23586
23587
23588
23589
23590
23591
23592
23593
23594
23595
23596
23597
23598
23599
23600
23601
23602
23603
23604
23605
23606
23607
23608
23609
23610
23611
23612
23613
23614
23615
23616
23617
23618
23619
23620
23621
23622
23623
23624
23625
23626
23627
23628
23629
23630
23631
23632
23633
23634
23635
23636
23637
23638
23639
23640
23641
23642
23643
23644
23645
23646
23647
23648
23649
23650
23651
23652
23653
23654
23655
23656
23657
23658
23659
23660
23661
23662
23663
23664
23665
23666
23667
23668
23669
23670
23671
23672
23673
23674
23675
23676
23677
23678
23679
23680
23681
23682
23683
23684
23685
23686
23687
23688
23689
23690
23691
23692
23693
23694
23695
23696
23697
23698
23699
23700
23701
23702
23703
23704
23705
23706
23707
23708
23709
23710
23711
23712
23713
23714
23715
23716
23717
23718
23719
23720
23721
23722
23723
23724
23725
23726
23727
23728
23729
23730
23731
23732
23733
23734
23735
23736
23737
23738
23739
23740
23741
23742
23743
23744
23745
23746
23747
23748
23749
23750
23751
23752
23753
23754
23755
23756
23757
23758
23759
23760
23761
23762
23763
23764
23765
23766
23767
23768
23769
23770
23771
23772
23773
23774
23775
23776
23777
23778
23779
23780
23781
23782
23783
23784
23785
23786
23787
23788
23789
23790
23791
23792
23793
23794
23795
23796
23797
23798
23799
23800
23801
23802
23803
23804
23805
23806
23807
23808
23809
23810
23811
23812
23813
23814
23815
23816
23817
23818
23819
23820
23821
23822
23823
23824
23825
23826
23827
23828
23829
23830
23831
23832
23833
23834
23835
23836
23837
23838
23839
23840
23841
23842
23843
23844
23845
23846
23847
23848
23849
23850
23851
23852
23853
23854
23855
23856
23857
23858
23859
23860
23861
23862
23863
23864
23865
23866
23867
23868
23869
23870
23871
23872
23873
23874
23875
23876
23877
23878
23879
23880
23881
23882
23883
23884
23885
23886
23887
23888
23889
23890
23891
23892
23893
23894
23895
23896
23897
23898
23899
23900
23901
23902
23903
23904
23905
23906
23907
23908
23909
23910
23911
23912
23913
23914
23915
23916
23917
23918
23919
23920
23921
23922
23923
23924
23925
23926
23927
23928
23929
23930
23931
23932
23933
23934
23935
23936
23937
23938
23939
23940
23941
23942
23943
23944
23945
23946
23947
23948
23949
23950
23951
23952
23953
23954
23955
23956
23957
23958
23959
23960
23961
23962
23963
23964
23965
23966
23967
23968
23969
23970
23971
23972
23973
23974
23975
23976
23977
23978
23979
23980
23981
23982
23983
23984
23985
23986
23987
23988
23989
23990
23991
23992
23993
23994
23995
23996
23997
23998
23999
24000
24001
24002
24003
24004
24005
24006
24007
24008
24009
24010
24011
24012
24013
24014
24015
24016
24017
24018
24019
24020
24021
24022
24023
24024
24025
24026
24027
24028
24029
24030
24031
24032
24033
24034
24035
24036
24037
24038
24039
24040
24041
24042
24043
24044
24045
24046
24047
24048
24049
24050
24051
24052
24053
24054
24055
24056
24057
24058
24059
24060
24061
24062
24063
24064
24065
24066
24067
24068
24069
24070
24071
24072
24073
24074
24075
24076
24077
24078
24079
24080
24081
24082
24083
24084
24085
24086
24087
24088
24089
24090
24091
24092
24093
24094
24095
24096
24097
24098
24099
24100
24101
24102
24103
24104
24105
24106
24107
24108
24109
24110
24111
24112
24113
24114
24115
24116
24117
24118
24119
24120
24121
24122
24123
24124
24125
24126
24127
24128
24129
24130
24131
24132
24133
24134
24135
24136
24137
24138
24139
24140
24141
24142
24143
24144
24145
24146
24147
24148
24149
24150
24151
24152
24153
24154
24155
24156
24157
24158
24159
24160
24161
24162
24163
24164
24165
24166
24167
24168
24169
24170
24171
24172
24173
24174
24175
24176
24177
24178
24179
24180
24181
24182
24183
24184
24185
24186
24187
24188
24189
24190
24191
24192
24193
24194
24195
24196
24197
24198
24199
24200
24201
24202
24203
24204
24205
24206
24207
24208
24209
24210
24211
24212
24213
24214
24215
24216
24217
24218
24219
24220
24221
24222
24223
24224
24225
24226
24227
24228
24229
24230
24231
24232
24233
24234
24235
24236
24237
24238
24239
24240
24241
24242
24243
24244
24245
24246
24247
24248
24249
24250
24251
24252
24253
24254
24255
24256
24257
24258
24259
24260
24261
24262
24263
24264
24265
24266
24267
24268
24269
24270
24271
24272
24273
24274
24275
24276
24277
24278
24279
24280
24281
24282
24283
24284
24285
24286
24287
24288
24289
24290
24291
24292
24293
24294
24295
24296
24297
24298
24299
24300
24301
24302
24303
24304
24305
24306
24307
24308
24309
24310
24311
24312
24313
24314
24315
24316
24317
24318
24319
24320
24321
24322
24323
24324
24325
24326
24327
24328
24329
24330
24331
24332
24333
24334
24335
24336
24337
24338
24339
24340
24341
24342
24343
24344
24345
24346
24347
24348
24349
24350
24351
24352
24353
24354
24355
24356
24357
24358
24359
24360
24361
24362
24363
24364
24365
24366
24367
24368
24369
24370
24371
24372
24373
24374
24375
24376
24377
24378
24379
24380
24381
24382
24383
24384
24385
24386
24387
24388
24389
24390
24391
24392
24393
24394
24395
24396
24397
24398
24399
24400
24401
24402
24403
24404
24405
24406
24407
24408
24409
24410
24411
24412
24413
24414
24415
24416
24417
24418
24419
24420
24421
24422
24423
24424
24425
24426
24427
24428
24429
24430
24431
24432
24433
24434
24435
24436
24437
24438
24439
24440
24441
24442
24443
24444
24445
24446
24447
24448
24449
24450
24451
24452
24453
24454
24455
24456
24457
24458
24459
24460
24461
24462
24463
24464
24465
24466
24467
24468
24469
24470
24471
24472
24473
24474
24475
24476
24477
24478
24479
24480
24481
24482
24483
24484
24485
24486
24487
24488
24489
24490
24491
24492
24493
24494
24495
24496
24497
24498
24499
24500
24501
24502
24503
24504
24505
24506
24507
24508
24509
24510
24511
24512
24513
24514
24515
24516
24517
24518
24519
24520
24521
24522
24523
24524
24525
24526
24527
24528
24529
24530
24531
24532
24533
24534
24535
24536
24537
24538
24539
24540
24541
24542
24543
24544
24545
24546
24547
24548
24549
24550
24551
24552
24553
24554
24555
24556
24557
24558
24559
24560
24561
24562
24563
24564
24565
24566
24567
24568
24569
24570
24571
24572
24573
24574
24575
24576
24577
24578
24579
24580
24581
24582
24583
24584
24585
24586
24587
24588
24589
24590
24591
24592
24593
24594
24595
24596
24597
24598
24599
24600
24601
24602
24603
24604
24605
24606
24607
24608
24609
24610
24611
24612
24613
24614
24615
24616
24617
24618
24619
24620
24621
24622
24623
24624
24625
24626
24627
24628
24629
24630
24631
24632
24633
24634
24635
24636
24637
24638
24639
24640
24641
24642
24643
24644
24645
24646
24647
24648
24649
24650
24651
24652
24653
24654
24655
24656
24657
24658
24659
24660
24661
24662
24663
24664
24665
24666
24667
24668
24669
24670
24671
24672
24673
24674
24675
24676
24677
24678
24679
24680
24681
24682
24683
24684
24685
24686
24687
24688
24689
24690
24691
24692
24693
24694
24695
24696
24697
24698
24699
24700
24701
24702
24703
24704
24705
24706
24707
24708
24709
24710
24711
24712
24713
24714
24715
24716
24717
24718
24719
24720
24721
24722
24723
24724
24725
24726
24727
24728
24729
24730
24731
24732
24733
24734
24735
24736
24737
24738
24739
24740
24741
24742
24743
24744
24745
24746
24747
24748
24749
24750
24751
24752
24753
24754
24755
24756
24757
24758
24759
24760
24761
24762
24763
24764
24765
24766
24767
24768
24769
24770
24771
24772
24773
24774
24775
24776
24777
24778
24779
24780
24781
24782
24783
24784
24785
24786
24787
24788
24789
24790
24791
24792
24793
24794
24795
24796
24797
24798
24799
24800
24801
24802
24803
24804
24805
24806
24807
24808
24809
24810
24811
24812
24813
24814
24815
24816
24817
24818
24819
24820
24821
24822
24823
24824
24825
24826
24827
24828
24829
24830
24831
24832
24833
24834
24835
24836
24837
24838
24839
24840
24841
24842
24843
24844
24845
24846
24847
24848
24849
24850
24851
24852
24853
24854
24855
24856
24857
24858
24859
24860
24861
24862
24863
24864
24865
24866
24867
24868
24869
24870
24871
24872
24873
24874
24875
24876
24877
24878
24879
24880
24881
24882
24883
24884
24885
24886
24887
24888
24889
24890
24891
24892
24893
24894
24895
24896
24897
24898
24899
24900
24901
24902
24903
24904
24905
24906
24907
24908
24909
24910
24911
24912
24913
24914
24915
24916
24917
24918
24919
24920
24921
24922
24923
24924
24925
24926
24927
24928
24929
24930
24931
24932
24933
24934
24935
24936
24937
24938
24939
24940
24941
24942
24943
24944
24945
24946
24947
24948
24949
24950
24951
24952
24953
24954
24955
24956
24957
24958
24959
24960
24961
24962
24963
24964
24965
24966
24967
24968
24969
24970
24971
24972
24973
24974
24975
24976
24977
24978
24979
24980
24981
24982
24983
24984
24985
24986
24987
24988
24989
24990
24991
24992
24993
24994
24995
24996
24997
24998
24999
25000
25001
25002
25003
25004
25005
25006
25007
25008
25009
25010
25011
25012
25013
25014
25015
25016
25017
25018
25019
25020
25021
25022
25023
25024
25025
25026
25027
25028
25029
25030
25031
25032
25033
25034
25035
25036
25037
25038
25039
25040
25041
25042
25043
25044
25045
25046
25047
25048
25049
25050
25051
25052
25053
25054
25055
25056
25057
25058
25059
25060
25061
25062
25063
25064
25065
25066
25067
25068
25069
25070
25071
25072
25073
25074
25075
25076
25077
25078
25079
25080
25081
25082
25083
25084
25085
25086
25087
25088
25089
25090
25091
25092
25093
25094
25095
25096
25097
25098
25099
25100
25101
25102
25103
25104
25105
25106
25107
25108
25109
25110
25111
25112
25113
25114
25115
25116
25117
25118
25119
25120
25121
25122
25123
25124
25125
25126
25127
25128
25129
25130
25131
25132
25133
25134
25135
25136
25137
25138
25139
25140
25141
25142
25143
25144
25145
25146
25147
25148
25149
25150
25151
25152
25153
25154
25155
25156
25157
25158
25159
25160
25161
25162
25163
25164
25165
25166
25167
25168
25169
25170
25171
25172
25173
25174
25175
25176
25177
25178
25179
25180
25181
25182
25183
25184
25185
25186
25187
25188
25189
25190
25191
25192
25193
25194
25195
25196
25197
25198
25199
25200
25201
25202
25203
25204
25205
25206
25207
25208
25209
25210
25211
25212
25213
25214
25215
25216
25217
25218
25219
25220
25221
25222
25223
25224
25225
25226
25227
25228
25229
25230
25231
25232
25233
25234
25235
25236
25237
25238
25239
25240
25241
25242
25243
25244
25245
25246
25247
25248
25249
25250
25251
25252
25253
25254
25255
25256
25257
25258
25259
25260
25261
25262
25263
25264
25265
25266
25267
25268
25269
25270
25271
25272
25273
25274
25275
25276
25277
25278
25279
25280
25281
25282
25283
25284
25285
25286
25287
25288
25289
25290
25291
25292
25293
25294
25295
25296
25297
25298
25299
25300
25301
25302
25303
25304
25305
25306
25307
25308
25309
25310
25311
25312
25313
25314
25315
25316
25317
25318
25319
25320
25321
25322
25323
25324
25325
25326
25327
25328
25329
25330
25331
25332
25333
25334
25335
25336
25337
25338
25339
25340
25341
25342
25343
25344
25345
25346
25347
25348
25349
25350
25351
25352
25353
25354
25355
25356
25357
25358
25359
25360
25361
25362
25363
25364
25365
25366
25367
25368
25369
25370
25371
25372
25373
25374
25375
25376
25377
25378
25379
25380
25381
25382
25383
25384
25385
25386
25387
25388
25389
25390
25391
25392
25393
25394
25395
25396
25397
25398
25399
25400
25401
25402
25403
25404
25405
25406
25407
25408
25409
25410
25411
25412
25413
25414
25415
25416
25417
25418
25419
25420
25421
25422
25423
25424
25425
25426
25427
25428
25429
25430
25431
25432
25433
25434
25435
25436
25437
25438
25439
25440
25441
25442
25443
25444
25445
25446
25447
25448
25449
25450
25451
25452
25453
25454
25455
25456
25457
25458
25459
25460
25461
25462
25463
25464
25465
25466
25467
25468
25469
25470
25471
25472
25473
25474
25475
25476
25477
25478
25479
25480
25481
25482
25483
25484
25485
25486
25487
25488
25489
25490
25491
25492
25493
25494
25495
25496
25497
25498
25499
25500
25501
25502
25503
25504
25505
25506
25507
25508
25509
25510
25511
25512
25513
25514
25515
25516
25517
25518
25519
25520
25521
25522
25523
25524
25525
25526
25527
25528
25529
25530
25531
25532
25533
25534
25535
25536
25537
25538
25539
25540
25541
25542
25543
25544
25545
25546
25547
25548
25549
25550
25551
25552
25553
25554
25555
25556
25557
25558
25559
25560
25561
25562
25563
25564
25565
25566
25567
25568
25569
25570
25571
25572
25573
25574
25575
25576
25577
25578
25579
25580
25581
25582
25583
25584
25585
25586
25587
25588
25589
25590
25591
25592
25593
25594
25595
25596
25597
25598
25599
25600
25601
25602
25603
25604
25605
25606
25607
25608
25609
25610
25611
25612
25613
25614
25615
25616
25617
25618
25619
25620
25621
25622
25623
25624
25625
25626
25627
25628
25629
25630
25631
25632
25633
25634
25635
25636
25637
25638
25639
25640
25641
25642
25643
25644
25645
25646
25647
25648
25649
25650
25651
25652
25653
25654
25655
25656
25657
25658
25659
25660
25661
25662
25663
25664
25665
25666
25667
25668
25669
25670
25671
25672
25673
25674
25675
25676
25677
25678
25679
25680
25681
25682
25683
25684
25685
25686
25687
25688
25689
25690
25691
25692
25693
25694
25695
25696
25697
25698
25699
25700
25701
25702
25703
25704
25705
25706
25707
25708
25709
25710
25711
25712
25713
25714
25715
25716
25717
25718
25719
25720
25721
25722
25723
25724
25725
25726
25727
25728
25729
25730
25731
25732
25733
25734
25735
25736
25737
25738
25739
25740
25741
25742
25743
25744
25745
25746
25747
25748
25749
25750
25751
25752
25753
25754
25755
25756
25757
25758
25759
25760
25761
25762
25763
25764
25765
25766
25767
25768
25769
25770
25771
25772
25773
25774
25775
25776
25777
25778
25779
25780
25781
25782
25783
25784
25785
25786
25787
25788
25789
25790
25791
25792
25793
25794
25795
25796
25797
25798
25799
25800
25801
25802
25803
25804
25805
25806
25807
25808
25809
25810
25811
25812
25813
25814
25815
25816
25817
25818
25819
25820
25821
25822
25823
25824
25825
25826
25827
25828
25829
25830
25831
25832
25833
25834
25835
25836
25837
25838
25839
25840
25841
25842
25843
25844
25845
25846
25847
25848
25849
25850
25851
25852
25853
25854
25855
25856
25857
25858
25859
25860
25861
25862
25863
25864
25865
25866
25867
25868
25869
25870
25871
25872
25873
25874
25875
25876
25877
25878
25879
25880
25881
25882
25883
25884
25885
25886
25887
25888
25889
25890
25891
25892
25893
25894
25895
25896
25897
25898
25899
25900
25901
25902
25903
25904
25905
25906
25907
25908
25909
25910
25911
25912
25913
25914
25915
25916
25917
25918
25919
25920
25921
25922
25923
25924
25925
25926
25927
25928
25929
25930
25931
25932
25933
25934
25935
25936
25937
25938
25939
25940
25941
25942
25943
25944
25945
25946
25947
25948
25949
25950
25951
25952
25953
25954
25955
25956
25957
25958
25959
25960
25961
25962
25963
25964
25965
25966
25967
25968
25969
25970
25971
25972
25973
25974
25975
25976
25977
25978
25979
25980
25981
25982
25983
25984
25985
25986
25987
25988
25989
25990
25991
25992
25993
25994
25995
25996
25997
25998
25999
26000
26001
26002
26003
26004
26005
26006
26007
26008
26009
26010
26011
26012
26013
26014
26015
26016
26017
26018
26019
26020
26021
26022
26023
26024
26025
26026
26027
26028
26029
26030
26031
26032
26033
26034
26035
26036
26037
26038
26039
26040
26041
26042
26043
26044
26045
26046
26047
26048
26049
26050
26051
26052
26053
26054
26055
26056
26057
26058
26059
26060
26061
26062
26063
26064
26065
26066
26067
26068
26069
26070
26071
26072
26073
26074
26075
26076
26077
26078
26079
26080
26081
26082
26083
26084
26085
26086
26087
26088
26089
26090
26091
26092
26093
26094
26095
26096
26097
26098
26099
26100
26101
26102
26103
26104
26105
26106
26107
26108
26109
26110
26111
26112
26113
26114
26115
26116
26117
26118
26119
26120
26121
26122
26123
26124
26125
26126
26127
26128
26129
26130
26131
26132
26133
26134
26135
26136
26137
26138
26139
26140
26141
26142
26143
26144
26145
26146
26147
26148
26149
26150
26151
26152
26153
26154
26155
26156
26157
26158
26159
26160
26161
26162
26163
26164
26165
26166
26167
26168
26169
26170
26171
26172
26173
26174
26175
26176
26177
26178
26179
26180
26181
26182
26183
26184
26185
26186
26187
26188
26189
26190
26191
26192
26193
26194
26195
26196
26197
26198
26199
26200
26201
26202
26203
26204
26205
26206
26207
26208
26209
26210
26211
26212
26213
26214
26215
26216
26217
26218
26219
26220
26221
26222
26223
26224
26225
26226
26227
26228
26229
26230
26231
26232
26233
26234
26235
26236
26237
26238
26239
26240
26241
26242
26243
26244
26245
26246
26247
26248
26249
26250
26251
26252
26253
26254
26255
26256
26257
26258
26259
26260
26261
26262
26263
26264
26265
26266
26267
26268
26269
26270
26271
26272
26273
26274
26275
26276
26277
26278
26279
26280
26281
26282
26283
26284
26285
26286
26287
26288
26289
26290
26291
26292
26293
26294
26295
26296
26297
26298
26299
26300
26301
26302
26303
26304
26305
26306
26307
26308
26309
26310
26311
26312
26313
26314
26315
26316
26317
26318
26319
26320
26321
26322
26323
26324
26325
26326
26327
26328
26329
26330
26331
26332
26333
26334
26335
26336
26337
26338
26339
26340
26341
26342
26343
26344
26345
26346
26347
26348
26349
26350
26351
26352
26353
26354
26355
26356
26357
26358
26359
26360
26361
26362
26363
26364
26365
26366
26367
26368
26369
26370
26371
26372
26373
26374
26375
26376
26377
26378
26379
26380
26381
26382
26383
26384
26385
26386
26387
26388
26389
26390
26391
26392
26393
26394
26395
26396
26397
26398
26399
26400
26401
26402
26403
26404
26405
26406
26407
26408
26409
26410
26411
26412
26413
26414
26415
26416
26417
26418
26419
26420
26421
26422
26423
26424
26425
26426
26427
26428
26429
26430
26431
26432
26433
26434
26435
26436
26437
26438
26439
26440
26441
26442
26443
26444
26445
26446
26447
26448
26449
26450
26451
26452
26453
26454
26455
26456
26457
26458
26459
26460
26461
26462
26463
26464
26465
26466
26467
26468
26469
26470
26471
26472
26473
26474
26475
26476
26477
26478
26479
26480
26481
26482
26483
26484
26485
26486
26487
26488
26489
26490
26491
26492
26493
26494
26495
26496
26497
26498
26499
26500
26501
26502
26503
26504
26505
26506
26507
26508
26509
26510
26511
26512
26513
26514
26515
26516
26517
26518
26519
26520
26521
26522
26523
26524
26525
26526
26527
26528
26529
26530
26531
26532
26533
26534
26535
26536
26537
26538
26539
26540
26541
26542
26543
26544
26545
26546
26547
26548
26549
26550
26551
26552
26553
26554
26555
26556
26557
26558
26559
26560
26561
26562
26563
26564
26565
26566
26567
26568
26569
26570
26571
26572
26573
26574
26575
26576
26577
26578
26579
26580
26581
26582
26583
26584
26585
26586
26587
26588
26589
26590
26591
26592
26593
26594
26595
26596
26597
26598
26599
26600
26601
26602
26603
26604
26605
26606
26607
26608
26609
26610
26611
26612
26613
26614
26615
26616
26617
26618
26619
26620
26621
26622
26623
26624
26625
26626
26627
26628
26629
26630
26631
26632
26633
26634
26635
26636
26637
26638
26639
26640
26641
26642
26643
26644
26645
26646
26647
26648
26649
26650
26651
26652
26653
26654
26655
26656
26657
26658
26659
26660
26661
26662
26663
26664
26665
26666
26667
26668
26669
26670
26671
26672
26673
26674
26675
26676
26677
26678
26679
26680
26681
26682
26683
26684
26685
26686
26687
26688
26689
26690
26691
26692
26693
26694
26695
26696
26697
26698
26699
26700
26701
26702
26703
26704
26705
26706
26707
26708
26709
26710
26711
26712
26713
26714
26715
26716
26717
26718
26719
26720
26721
26722
26723
26724
26725
26726
26727
26728
26729
26730
26731
26732
26733
26734
26735
26736
26737
26738
26739
26740
26741
26742
26743
26744
26745
26746
26747
26748
26749
26750
26751
26752
26753
26754
26755
26756
26757
26758
26759
26760
26761
26762
26763
26764
26765
26766
26767
26768
26769
26770
26771
26772
26773
26774
26775
26776
26777
26778
26779
26780
26781
26782
26783
26784
26785
26786
26787
26788
26789
26790
26791
26792
26793
26794
26795
26796
26797
26798
26799
26800
26801
26802
26803
26804
26805
26806
26807
26808
26809
26810
26811
26812
26813
26814
26815
26816
26817
26818
26819
26820
26821
26822
26823
26824
26825
26826
26827
26828
26829
26830
26831
26832
26833
26834
26835
26836
26837
26838
26839
26840
26841
26842
26843
26844
26845
26846
26847
26848
26849
26850
26851
26852
26853
26854
26855
26856
26857
26858
26859
26860
26861
26862
26863
26864
26865
26866
26867
26868
26869
26870
26871
26872
26873
26874
26875
26876
26877
26878
26879
26880
26881
26882
26883
26884
26885
26886
26887
26888
26889
26890
26891
26892
26893
26894
26895
26896
26897
26898
26899
26900
26901
26902
26903
26904
26905
26906
26907
26908
26909
26910
26911
26912
26913
26914
26915
26916
26917
26918
26919
26920
26921
26922
26923
26924
26925
26926
26927
26928
26929
26930
26931
26932
26933
26934
26935
26936
26937
26938
26939
26940
26941
26942
26943
26944
26945
26946
26947
26948
26949
26950
26951
26952
26953
26954
26955
26956
26957
26958
26959
26960
26961
26962
26963
26964
26965
26966
26967
26968
26969
26970
26971
26972
26973
26974
26975
26976
26977
26978
26979
26980
26981
26982
26983
26984
26985
26986
26987
26988
26989
26990
26991
26992
26993
26994
26995
26996
26997
26998
26999
27000
27001
27002
27003
27004
27005
27006
27007
27008
27009
27010
27011
27012
27013
27014
27015
27016
27017
27018
27019
27020
27021
27022
27023
27024
27025
27026
27027
27028
27029
27030
27031
27032
27033
27034
27035
27036
27037
27038
27039
27040
27041
27042
27043
27044
27045
27046
27047
27048
27049
27050
27051
27052
27053
27054
27055
27056
27057
27058
27059
27060
27061
27062
27063
27064
27065
27066
27067
27068
27069
27070
27071
27072
27073
27074
27075
27076
27077
27078
27079
27080
27081
27082
27083
27084
27085
27086
27087
27088
27089
27090
27091
27092
27093
27094
27095
27096
27097
27098
27099
27100
27101
27102
27103
27104
27105
27106
27107
27108
27109
27110
27111
27112
27113
27114
27115
27116
27117
27118
27119
27120
27121
27122
27123
27124
27125
27126
27127
27128
27129
27130
27131
27132
27133
27134
27135
27136
27137
27138
27139
27140
27141
27142
27143
27144
27145
27146
27147
27148
27149
27150
27151
27152
27153
27154
27155
27156
27157
27158
27159
27160
27161
27162
27163
27164
27165
27166
27167
27168
27169
27170
27171
27172
27173
27174
27175
27176
27177
27178
27179
27180
27181
27182
27183
27184
27185
27186
27187
27188
27189
27190
27191
27192
27193
27194
27195
27196
27197
27198
27199
27200
27201
27202
27203
27204
27205
27206
27207
27208
27209
27210
27211
27212
27213
27214
27215
27216
27217
27218
27219
27220
27221
27222
27223
27224
27225
27226
27227
27228
27229
27230
27231
27232
27233
27234
27235
27236
27237
27238
27239
27240
27241
27242
27243
27244
27245
27246
27247
27248
27249
27250
27251
27252
27253
27254
27255
27256
27257
27258
27259
27260
27261
27262
27263
27264
27265
27266
27267
27268
27269
27270
27271
27272
27273
27274
27275
27276
27277
27278
27279
27280
27281
27282
27283
27284
27285
27286
27287
27288
27289
27290
27291
27292
27293
27294
27295
27296
27297
27298
27299
27300
27301
27302
27303
27304
27305
27306
27307
27308
27309
27310
27311
27312
27313
27314
27315
27316
27317
27318
27319
27320
27321
27322
27323
27324
27325
27326
27327
27328
27329
27330
27331
27332
27333
27334
27335
27336
27337
27338
27339
27340
27341
27342
27343
27344
27345
27346
27347
27348
27349
27350
27351
27352
27353
27354
27355
27356
27357
27358
27359
27360
27361
27362
27363
27364
27365
27366
27367
27368
27369
27370
27371
27372
27373
27374
27375
27376
27377
27378
27379
27380
27381
27382
27383
27384
27385
27386
27387
27388
27389
27390
27391
27392
27393
27394
27395
27396
27397
27398
27399
27400
27401
27402
27403
27404
27405
27406
27407
27408
27409
27410
27411
27412
27413
27414
27415
27416
27417
27418
27419
27420
27421
27422
27423
27424
27425
27426
27427
27428
27429
27430
27431
27432
27433
27434
27435
27436
27437
27438
27439
27440
27441
27442
27443
27444
27445
27446
27447
27448
27449
27450
27451
27452
27453
27454
27455
27456
27457
27458
27459
27460
27461
27462
27463
27464
27465
27466
27467
27468
27469
27470
27471
27472
27473
27474
27475
27476
27477
27478
27479
27480
27481
27482
27483
27484
27485
27486
27487
27488
27489
27490
27491
27492
27493
27494
27495
27496
27497
27498
27499
27500
27501
27502
27503
27504
27505
27506
27507
27508
27509
27510
27511
27512
27513
27514
27515
27516
27517
27518
27519
27520
27521
27522
27523
27524
27525
27526
27527
27528
27529
27530
27531
27532
27533
27534
27535
27536
27537
27538
27539
27540
27541
27542
27543
27544
27545
27546
27547
27548
27549
27550
27551
27552
27553
27554
27555
27556
27557
27558
27559
27560
27561
27562
27563
27564
27565
27566
27567
27568
27569
27570
27571
27572
27573
27574
27575
27576
27577
27578
27579
27580
27581
27582
27583
27584
27585
27586
27587
27588
27589
27590
27591
27592
27593
27594
27595
27596
27597
27598
27599
27600
27601
27602
27603
27604
27605
27606
27607
27608
27609
27610
27611
27612
27613
27614
27615
27616
27617
27618
27619
27620
27621
27622
27623
27624
27625
27626
27627
27628
27629
27630
27631
27632
27633
27634
27635
27636
27637
27638
27639
27640
27641
27642
27643
27644
27645
27646
27647
27648
27649
27650
27651
27652
27653
27654
27655
27656
27657
27658
27659
27660
27661
27662
27663
27664
27665
27666
27667
27668
27669
27670
27671
27672
27673
27674
27675
27676
27677
27678
27679
27680
27681
27682
27683
27684
27685
27686
27687
27688
27689
27690
27691
27692
27693
27694
27695
27696
27697
27698
27699
27700
27701
27702
27703
27704
27705
27706
27707
27708
27709
27710
27711
27712
27713
27714
27715
27716
27717
27718
27719
27720
27721
27722
27723
27724
27725
27726
27727
27728
27729
27730
27731
27732
27733
27734
27735
27736
27737
27738
27739
27740
27741
27742
27743
27744
27745
27746
27747
27748
27749
27750
27751
27752
27753
27754
27755
27756
27757
27758
27759
27760
27761
27762
27763
27764
27765
27766
27767
27768
27769
27770
27771
27772
27773
27774
27775
27776
27777
27778
27779
27780
27781
27782
27783
27784
27785
27786
27787
27788
27789
27790
27791
27792
27793
27794
27795
27796
27797
27798
27799
27800
27801
27802
27803
27804
27805
27806
27807
27808
27809
27810
27811
27812
27813
27814
27815
27816
27817
27818
27819
27820
27821
27822
27823
27824
27825
27826
27827
27828
27829
27830
27831
27832
27833
27834
27835
27836
27837
27838
27839
27840
27841
27842
27843
27844
27845
27846
27847
27848
27849
27850
27851
27852
27853
27854
27855
27856
27857
27858
27859
27860
27861
27862
27863
27864
27865
27866
27867
27868
27869
27870
27871
27872
27873
27874
27875
27876
27877
27878
27879
27880
27881
27882
27883
27884
27885
27886
27887
27888
27889
27890
27891
27892
27893
27894
27895
27896
27897
27898
27899
27900
27901
27902
27903
27904
27905
27906
27907
27908
27909
27910
27911
27912
27913
27914
27915
27916
27917
27918
27919
27920
27921
27922
27923
27924
27925
27926
27927
27928
27929
27930
27931
27932
27933
27934
27935
27936
27937
27938
27939
27940
27941
27942
27943
27944
27945
27946
27947
27948
27949
27950
27951
27952
27953
27954
27955
27956
27957
27958
27959
27960
27961
27962
27963
27964
27965
27966
27967
27968
27969
27970
27971
27972
27973
27974
27975
27976
27977
27978
27979
27980
27981
27982
27983
27984
27985
27986
27987
27988
27989
27990
27991
27992
27993
27994
27995
27996
27997
27998
27999
28000
28001
28002
28003
28004
28005
28006
28007
28008
28009
28010
28011
28012
28013
28014
28015
28016
28017
28018
28019
28020
28021
28022
28023
28024
28025
28026
28027
28028
28029
28030
28031
28032
28033
28034
28035
28036
28037
28038
28039
28040
28041
28042
28043
28044
28045
28046
28047
28048
28049
28050
28051
28052
28053
28054
28055
28056
28057
28058
28059
28060
28061
28062
28063
28064
28065
28066
28067
28068
28069
28070
28071
28072
28073
28074
28075
28076
28077
28078
28079
28080
28081
28082
28083
28084
28085
28086
28087
28088
28089
28090
28091
28092
28093
28094
28095
28096
28097
28098
28099
28100
28101
28102
28103
28104
28105
28106
28107
28108
28109
28110
28111
28112
28113
28114
28115
28116
28117
28118
28119
28120
28121
28122
28123
28124
28125
28126
28127
28128
28129
28130
28131
28132
28133
28134
28135
28136
28137
28138
28139
28140
28141
28142
28143
28144
28145
28146
28147
28148
28149
28150
28151
28152
28153
28154
28155
28156
28157
28158
28159
28160
28161
28162
28163
28164
28165
28166
28167
28168
28169
28170
28171
28172
28173
28174
28175
28176
28177
28178
28179
28180
28181
28182
28183
28184
28185
28186
28187
28188
28189
28190
28191
28192
28193
28194
28195
28196
28197
28198
28199
28200
28201
28202
28203
28204
28205
28206
28207
28208
28209
28210
28211
28212
28213
28214
28215
28216
28217
28218
28219
28220
28221
28222
28223
28224
28225
28226
28227
28228
28229
28230
28231
28232
28233
28234
28235
28236
28237
28238
28239
28240
28241
28242
28243
28244
28245
28246
28247
28248
28249
28250
28251
28252
28253
28254
28255
28256
28257
28258
28259
28260
28261
28262
28263
28264
28265
28266
28267
28268
28269
28270
28271
28272
28273
28274
28275
28276
28277
28278
28279
28280
28281
28282
28283
28284
28285
28286
28287
28288
28289
28290
28291
28292
28293
28294
28295
28296
28297
28298
28299
28300
28301
28302
28303
28304
28305
28306
28307
28308
28309
28310
28311
28312
28313
28314
28315
28316
28317
28318
28319
28320
28321
28322
28323
28324
28325
28326
28327
28328
28329
28330
28331
28332
28333
28334
28335
28336
28337
28338
28339
28340
28341
28342
28343
28344
28345
28346
28347
28348
28349
28350
28351
28352
28353
28354
28355
28356
28357
28358
28359
28360
28361
28362
28363
28364
28365
28366
28367
28368
28369
28370
28371
28372
28373
28374
28375
28376
28377
28378
28379
28380
28381
28382
28383
28384
28385
28386
28387
28388
28389
28390
28391
28392
28393
28394
28395
28396
28397
28398
28399
28400
28401
28402
28403
28404
28405
28406
28407
28408
28409
28410
28411
28412
28413
28414
28415
28416
28417
28418
28419
28420
28421
28422
28423
28424
28425
28426
28427
28428
28429
28430
28431
28432
28433
28434
28435
28436
28437
28438
28439
28440
28441
28442
28443
28444
28445
28446
28447
28448
28449
28450
28451
28452
28453
28454
28455
28456
28457
28458
28459
28460
28461
28462
28463
28464
28465
28466
28467
28468
28469
28470
28471
28472
28473
28474
28475
28476
28477
28478
28479
28480
28481
28482
28483
28484
28485
28486
28487
28488
28489
28490
28491
28492
28493
28494
28495
28496
28497
28498
28499
28500
28501
28502
28503
28504
28505
28506
28507
28508
28509
28510
28511
28512
28513
28514
28515
28516
28517
28518
28519
28520
28521
28522
28523
28524
28525
28526
28527
28528
28529
28530
28531
28532
28533
28534
28535
28536
28537
28538
28539
28540
28541
28542
28543
28544
28545
28546
28547
28548
28549
28550
28551
28552
28553
28554
28555
28556
28557
28558
28559
28560
28561
28562
28563
28564
28565
28566
28567
28568
28569
28570
28571
28572
28573
28574
28575
28576
28577
28578
28579
28580
28581
28582
28583
28584
28585
28586
28587
28588
28589
28590
28591
28592
28593
28594
28595
28596
28597
28598
28599
28600
28601
28602
28603
28604
28605
28606
28607
28608
28609
28610
28611
28612
28613
28614
28615
28616
28617
28618
28619
28620
28621
28622
28623
28624
28625
28626
28627
28628
28629
28630
28631
28632
28633
28634
28635
28636
28637
28638
28639
28640
28641
28642
28643
28644
28645
28646
28647
28648
28649
28650
28651
28652
28653
28654
28655
28656
28657
28658
28659
28660
28661
28662
28663
28664
28665
28666
28667
28668
28669
28670
28671
28672
28673
28674
28675
28676
28677
28678
28679
28680
28681
28682
28683
28684
28685
28686
28687
28688
28689
28690
28691
28692
28693
28694
28695
28696
28697
28698
28699
28700
28701
28702
28703
28704
28705
28706
28707
28708
28709
28710
28711
28712
28713
28714
28715
28716
28717
28718
28719
28720
28721
28722
28723
28724
28725
28726
28727
28728
28729
28730
28731
28732
28733
28734
28735
28736
28737
28738
28739
28740
28741
28742
28743
28744
28745
28746
28747
28748
28749
28750
28751
28752
28753
28754
28755
28756
28757
28758
28759
28760
28761
28762
28763
28764
28765
28766
28767
28768
28769
28770
28771
28772
28773
28774
28775
28776
28777
28778
28779
28780
28781
28782
28783
28784
28785
28786
28787
28788
28789
28790
28791
28792
28793
28794
28795
28796
28797
28798
28799
28800
28801
28802
28803
28804
28805
28806
28807
28808
28809
28810
28811
28812
28813
28814
28815
28816
28817
28818
28819
28820
28821
28822
28823
28824
28825
28826
28827
28828
28829
28830
28831
28832
28833
28834
28835
28836
28837
28838
28839
28840
28841
28842
28843
28844
28845
28846
28847
28848
28849
28850
28851
28852
28853
28854
28855
28856
28857
28858
28859
28860
28861
28862
28863
28864
28865
28866
28867
28868
28869
28870
28871
28872
28873
28874
28875
28876
28877
28878
28879
28880
28881
28882
28883
28884
28885
28886
28887
28888
28889
28890
28891
28892
28893
28894
28895
28896
28897
28898
28899
28900
28901
28902
28903
28904
28905
28906
28907
28908
28909
28910
28911
28912
28913
28914
28915
28916
28917
28918
28919
28920
28921
28922
28923
28924
28925
28926
28927
28928
28929
28930
28931
28932
28933
28934
28935
28936
28937
28938
28939
28940
28941
28942
28943
28944
28945
28946
28947
28948
28949
28950
28951
28952
28953
28954
28955
28956
28957
28958
28959
28960
28961
28962
28963
28964
28965
28966
28967
28968
28969
28970
28971
28972
28973
28974
28975
28976
28977
28978
28979
28980
28981
28982
28983
28984
28985
28986
28987
28988
28989
28990
28991
28992
28993
28994
28995
28996
28997
28998
28999
29000
29001
29002
29003
29004
29005
29006
29007
29008
29009
29010
29011
29012
29013
29014
29015
29016
29017
29018
29019
29020
29021
29022
29023
29024
29025
29026
29027
29028
29029
29030
29031
29032
29033
29034
29035
29036
29037
29038
29039
29040
29041
29042
29043
29044
29045
29046
29047
29048
29049
29050
29051
29052
29053
29054
29055
29056
29057
29058
29059
29060
29061
29062
29063
29064
29065
29066
29067
29068
29069
29070
29071
29072
29073
29074
29075
29076
29077
29078
29079
29080
29081
29082
29083
29084
29085
29086
29087
29088
29089
29090
29091
29092
29093
29094
29095
29096
29097
29098
29099
29100
29101
29102
29103
29104
29105
29106
29107
29108
29109
29110
29111
29112
29113
29114
29115
29116
29117
29118
29119
29120
29121
29122
29123
29124
29125
29126
29127
29128
29129
29130
29131
29132
29133
29134
29135
29136
29137
29138
29139
29140
29141
29142
29143
29144
29145
29146
29147
29148
29149
29150
29151
29152
29153
29154
29155
29156
29157
29158
29159
29160
29161
29162
29163
29164
29165
29166
29167
29168
29169
29170
29171
29172
29173
29174
29175
29176
29177
29178
29179
29180
29181
29182
29183
29184
29185
29186
29187
29188
29189
29190
29191
29192
29193
29194
29195
29196
29197
29198
29199
29200
29201
29202
29203
29204
29205
29206
29207
29208
29209
29210
29211
29212
29213
29214
29215
29216
29217
29218
29219
29220
29221
29222
29223
29224
29225
29226
29227
29228
29229
29230
29231
29232
29233
29234
29235
29236
29237
29238
29239
29240
29241
29242
29243
29244
29245
29246
29247
29248
29249
29250
29251
29252
29253
29254
29255
29256
29257
29258
29259
29260
29261
29262
29263
29264
29265
29266
29267
29268
29269
29270
29271
29272
29273
29274
29275
29276
29277
29278
29279
29280
29281
29282
29283
29284
29285
29286
29287
29288
29289
29290
29291
29292
29293
29294
29295
29296
29297
29298
29299
29300
29301
29302
29303
29304
29305
29306
29307
29308
29309
29310
29311
29312
29313
29314
29315
29316
29317
29318
29319
29320
29321
29322
29323
29324
29325
29326
29327
29328
29329
29330
29331
29332
29333
29334
29335
29336
29337
29338
29339
29340
29341
29342
29343
29344
29345
29346
29347
29348
29349
29350
29351
29352
29353
29354
29355
29356
29357
29358
29359
29360
29361
29362
29363
29364
29365
29366
29367
29368
29369
29370
29371
29372
29373
29374
29375
29376
29377
29378
29379
29380
29381
29382
29383
29384
29385
29386
29387
29388
29389
29390
29391
29392
29393
29394
29395
29396
29397
29398
29399
29400
29401
29402
29403
29404
29405
29406
29407
29408
29409
29410
29411
29412
29413
29414
29415
29416
29417
29418
29419
29420
29421
29422
29423
29424
29425
29426
29427
29428
29429
29430
29431
29432
29433
29434
29435
29436
29437
29438
29439
29440
29441
29442
29443
29444
29445
29446
29447
29448
29449
29450
29451
29452
29453
29454
29455
29456
29457
29458
29459
29460
29461
29462
29463
29464
29465
29466
29467
29468
29469
29470
29471
29472
29473
29474
29475
29476
29477
29478
29479
29480
29481
29482
29483
29484
29485
29486
29487
29488
29489
29490
29491
29492
29493
29494
29495
29496
29497
29498
29499
29500
29501
29502
29503
29504
29505
29506
29507
29508
29509
29510
29511
29512
29513
29514
29515
29516
29517
29518
29519
29520
29521
29522
29523
29524
29525
29526
29527
29528
29529
29530
29531
29532
29533
29534
29535
29536
29537
29538
29539
29540
29541
29542
29543
29544
29545
29546
29547
29548
29549
29550
29551
29552
29553
29554
29555
29556
29557
29558
29559
29560
29561
29562
29563
29564
29565
29566
29567
29568
29569
29570
29571
29572
29573
29574
29575
29576
29577
29578
29579
29580
29581
29582
29583
29584
29585
29586
29587
29588
29589
29590
29591
29592
29593
29594
29595
29596
29597
29598
29599
29600
29601
29602
29603
29604
29605
29606
29607
29608
29609
29610
29611
29612
29613
29614
29615
29616
29617
29618
29619
29620
29621
29622
29623
29624
29625
29626
29627
29628
29629
29630
29631
29632
29633
29634
29635
29636
29637
29638
29639
29640
29641
29642
29643
29644
29645
29646
29647
29648
29649
29650
29651
29652
29653
29654
29655
29656
29657
29658
29659
29660
29661
29662
29663
29664
29665
29666
29667
29668
29669
29670
29671
29672
29673
29674
29675
29676
29677
29678
29679
29680
29681
29682
29683
29684
29685
29686
29687
29688
29689
29690
29691
29692
29693
29694
29695
29696
29697
29698
29699
29700
29701
29702
29703
29704
29705
29706
29707
29708
29709
29710
29711
29712
29713
29714
29715
29716
29717
29718
29719
29720
29721
29722
29723
29724
29725
29726
29727
29728
29729
29730
29731
29732
29733
29734
29735
29736
29737
29738
29739
29740
29741
29742
29743
29744
29745
29746
29747
29748
29749
29750
29751
29752
29753
29754
29755
29756
29757
29758
29759
29760
29761
29762
29763
29764
29765
29766
29767
29768
29769
29770
29771
29772
29773
29774
29775
29776
29777
29778
29779
29780
29781
29782
29783
29784
29785
29786
29787
29788
29789
29790
29791
29792
29793
29794
29795
29796
29797
29798
29799
29800
29801
29802
29803
29804
29805
29806
29807
29808
29809
29810
29811
29812
29813
29814
29815
29816
29817
29818
29819
29820
29821
29822
29823
29824
29825
29826
29827
29828
29829
29830
29831
29832
29833
29834
29835
29836
29837
29838
29839
29840
29841
29842
29843
29844
29845
29846
29847
29848
29849
29850
29851
29852
29853
29854
29855
29856
29857
29858
29859
29860
29861
29862
29863
29864
29865
29866
29867
29868
29869
29870
29871
29872
29873
29874
29875
29876
29877
29878
29879
29880
29881
29882
29883
29884
29885
29886
29887
29888
29889
29890
29891
29892
29893
29894
29895
29896
29897
29898
29899
29900
29901
29902
29903
29904
29905
29906
29907
29908
29909
29910
29911
29912
29913
29914
29915
29916
29917
29918
29919
29920
29921
29922
29923
29924
29925
29926
29927
29928
29929
29930
29931
29932
29933
29934
29935
29936
29937
29938
29939
29940
29941
29942
29943
29944
29945
29946
29947
29948
29949
29950
29951
29952
29953
29954
29955
29956
29957
29958
29959
29960
29961
29962
29963
29964
29965
29966
29967
29968
29969
29970
29971
29972
29973
29974
29975
29976
29977
29978
29979
29980
29981
29982
29983
29984
29985
29986
29987
29988
29989
29990
29991
29992
29993
29994
29995
29996
29997
29998
29999
30000
30001
30002
30003
30004
30005
30006
30007
30008
30009
30010
30011
30012
30013
30014
30015
30016
30017
30018
30019
30020
30021
30022
30023
30024
30025
30026
30027
30028
30029
30030
30031
30032
30033
30034
30035
30036
30037
30038
30039
30040
30041
30042
30043
30044
30045
30046
30047
30048
30049
30050
30051
30052
30053
30054
30055
30056
30057
30058
30059
30060
30061
30062
30063
30064
30065
30066
30067
30068
30069
30070
30071
30072
30073
30074
30075
30076
30077
30078
30079
30080
30081
30082
30083
30084
30085
30086
30087
30088
30089
30090
30091
30092
30093
30094
30095
30096
30097
30098
30099
30100
30101
30102
30103
30104
30105
30106
30107
30108
30109
30110
30111
30112
30113
30114
30115
30116
30117
30118
30119
30120
30121
30122
30123
30124
30125
30126
30127
30128
30129
30130
30131
30132
30133
30134
30135
30136
30137
30138
30139
30140
30141
30142
30143
30144
30145
30146
30147
30148
30149
30150
30151
30152
30153
30154
30155
30156
30157
30158
30159
30160
30161
30162
30163
30164
30165
30166
30167
30168
30169
30170
30171
30172
30173
30174
30175
30176
30177
30178
30179
30180
30181
30182
30183
30184
30185
30186
30187
30188
30189
30190
30191
30192
30193
30194
30195
30196
30197
30198
30199
30200
30201
30202
30203
30204
30205
30206
30207
30208
30209
30210
30211
30212
30213
30214
30215
30216
30217
30218
30219
30220
30221
30222
30223
30224
30225
30226
30227
30228
30229
30230
30231
30232
30233
30234
30235
30236
30237
30238
30239
30240
30241
30242
30243
30244
30245
30246
30247
30248
30249
30250
30251
30252
30253
30254
30255
30256
30257
30258
30259
30260
30261
30262
30263
30264
30265
30266
30267
30268
30269
30270
30271
30272
30273
30274
30275
30276
30277
30278
30279
30280
30281
30282
30283
30284
30285
30286
30287
30288
30289
30290
30291
30292
30293
30294
30295
30296
30297
30298
30299
30300
30301
30302
30303
30304
30305
30306
30307
30308
30309
30310
30311
30312
30313
30314
30315
30316
30317
30318
30319
30320
30321
30322
30323
30324
30325
30326
30327
30328
30329
30330
30331
30332
30333
30334
30335
30336
30337
30338
30339
30340
30341
30342
30343
30344
30345
30346
30347
30348
30349
30350
30351
30352
30353
30354
30355
30356
30357
30358
30359
30360
30361
30362
30363
30364
30365
30366
30367
30368
30369
30370
30371
30372
30373
30374
30375
30376
30377
30378
30379
30380
30381
30382
30383
30384
30385
30386
30387
30388
30389
30390
30391
30392
30393
30394
30395
30396
30397
30398
30399
30400
30401
30402
30403
30404
30405
30406
30407
30408
30409
30410
30411
30412
30413
30414
30415
30416
30417
30418
30419
30420
30421
30422
30423
30424
30425
30426
30427
30428
30429
30430
30431
30432
30433
30434
30435
30436
30437
30438
30439
30440
30441
30442
30443
30444
30445
30446
30447
30448
30449
30450
30451
30452
30453
30454
30455
30456
30457
30458
30459
30460
30461
30462
30463
30464
30465
30466
30467
30468
30469
30470
30471
30472
30473
30474
30475
30476
30477
30478
30479
30480
30481
30482
30483
30484
30485
30486
30487
30488
30489
30490
30491
30492
30493
30494
30495
30496
30497
30498
30499
30500
30501
30502
30503
30504
30505
30506
30507
30508
30509
30510
30511
30512
30513
30514
30515
30516
30517
30518
30519
30520
30521
30522
30523
30524
30525
30526
30527
30528
30529
30530
30531
30532
30533
30534
30535
30536
30537
30538
30539
30540
30541
30542
30543
30544
30545
30546
30547
30548
30549
30550
30551
30552
30553
30554
30555
30556
30557
30558
30559
30560
30561
30562
30563
30564
30565
30566
30567
30568
30569
30570
30571
30572
30573
30574
30575
30576
30577
30578
30579
30580
30581
30582
30583
30584
30585
30586
30587
30588
30589
30590
30591
30592
30593
30594
30595
30596
30597
30598
30599
30600
30601
30602
30603
30604
30605
30606
30607
30608
30609
30610
30611
30612
30613
30614
30615
30616
30617
30618
30619
30620
30621
30622
30623
30624
30625
30626
30627
30628
30629
30630
30631
30632
30633
30634
30635
30636
30637
30638
30639
30640
30641
30642
30643
30644
30645
30646
30647
30648
30649
30650
30651
30652
30653
30654
30655
30656
30657
30658
30659
30660
30661
30662
30663
30664
30665
30666
30667
30668
30669
30670
30671
30672
30673
30674
30675
30676
30677
30678
30679
30680
30681
30682
30683
30684
30685
30686
30687
30688
30689
30690
30691
30692
30693
30694
30695
30696
30697
30698
30699
30700
30701
30702
30703
30704
30705
30706
30707
30708
30709
30710
30711
30712
30713
30714
30715
30716
30717
30718
30719
30720
30721
30722
30723
30724
30725
30726
30727
30728
30729
30730
30731
30732
30733
30734
30735
30736
30737
30738
30739
30740
30741
30742
30743
30744
30745
30746
30747
30748
30749
30750
30751
30752
30753
30754
30755
30756
30757
30758
30759
30760
30761
30762
30763
30764
30765
30766
30767
30768
30769
30770
30771
30772
30773
30774
30775
30776
30777
30778
30779
30780
30781
30782
30783
30784
30785
30786
30787
30788
30789
30790
30791
30792
30793
30794
30795
30796
30797
30798
30799
30800
30801
30802
30803
30804
30805
30806
30807
30808
30809
30810
30811
30812
30813
30814
30815
30816
30817
30818
30819
30820
30821
30822
30823
30824
30825
30826
30827
30828
30829
30830
30831
30832
30833
30834
30835
30836
30837
30838
30839
30840
30841
30842
30843
30844
30845
30846
30847
30848
30849
30850
30851
30852
30853
30854
30855
30856
30857
30858
30859
30860
30861
30862
30863
30864
30865
30866
30867
30868
30869
30870
30871
30872
30873
30874
30875
30876
30877
30878
30879
30880
30881
30882
30883
30884
30885
30886
30887
30888
30889
30890
30891
30892
30893
30894
30895
30896
30897
30898
30899
30900
30901
30902
30903
30904
30905
30906
30907
30908
30909
30910
30911
30912
30913
30914
30915
30916
30917
30918
30919
30920
30921
30922
30923
30924
30925
30926
30927
30928
30929
30930
30931
30932
30933
30934
30935
30936
30937
30938
30939
30940
30941
30942
30943
30944
30945
30946
30947
30948
30949
30950
30951
30952
30953
30954
30955
30956
30957
30958
30959
30960
30961
30962
30963
30964
30965
30966
30967
30968
30969
30970
30971
30972
30973
30974
30975
30976
30977
30978
30979
30980
30981
30982
30983
30984
30985
30986
30987
30988
30989
30990
30991
30992
30993
30994
30995
30996
30997
30998
30999
31000
31001
31002
31003
31004
31005
31006
31007
31008
31009
31010
31011
31012
31013
31014
31015
31016
31017
31018
31019
31020
31021
31022
31023
31024
31025
31026
31027
31028
31029
31030
31031
31032
31033
31034
31035
31036
31037
31038
31039
31040
31041
31042
31043
31044
31045
31046
31047
31048
31049
31050
31051
31052
31053
31054
31055
31056
31057
31058
31059
31060
31061
31062
31063
31064
31065
31066
31067
31068
31069
31070
31071
31072
31073
31074
31075
31076
31077
31078
31079
31080
31081
31082
31083
31084
31085
31086
31087
31088
31089
31090
31091
31092
31093
31094
31095
31096
31097
31098
31099
31100
31101
31102
31103
31104
31105
31106
31107
31108
31109
31110
31111
31112
31113
31114
31115
31116
31117
31118
31119
31120
31121
31122
31123
31124
31125
31126
31127
31128
31129
31130
31131
31132
31133
31134
31135
31136
31137
31138
31139
31140
31141
31142
31143
31144
31145
31146
31147
31148
31149
31150
31151
31152
31153
31154
31155
31156
31157
31158
31159
31160
31161
31162
31163
31164
31165
31166
31167
31168
31169
31170
31171
31172
31173
31174
31175
31176
31177
31178
31179
31180
31181
31182
31183
31184
31185
31186
31187
31188
31189
31190
31191
31192
31193
31194
31195
31196
31197
31198
31199
31200
31201
31202
31203
31204
31205
31206
31207
31208
31209
31210
31211
31212
31213
31214
31215
31216
31217
31218
31219
31220
31221
31222
31223
31224
31225
31226
31227
31228
31229
31230
31231
31232
31233
31234
31235
31236
31237
31238
31239
31240
31241
31242
31243
31244
31245
31246
31247
31248
31249
31250
31251
31252
31253
31254
31255
31256
31257
31258
31259
31260
31261
31262
31263
31264
31265
31266
31267
31268
31269
31270
31271
31272
31273
31274
31275
31276
31277
31278
31279
31280
31281
31282
31283
31284
31285
31286
31287
31288
31289
31290
31291
31292
31293
31294
31295
31296
31297
31298
31299
31300
31301
31302
31303
31304
31305
31306
31307
31308
31309
31310
31311
31312
31313
31314
31315
31316
31317
31318
31319
31320
31321
31322
31323
31324
31325
31326
31327
31328
31329
31330
31331
31332
31333
31334
31335
31336
31337
31338
31339
31340
31341
31342
31343
31344
31345
31346
31347
31348
31349
31350
31351
31352
31353
31354
31355
31356
31357
31358
31359
31360
31361
31362
31363
31364
31365
31366
31367
31368
31369
31370
31371
31372
31373
31374
31375
31376
31377
31378
31379
31380
31381
31382
31383
31384
31385
31386
31387
31388
31389
31390
31391
31392
31393
31394
31395
31396
31397
31398
31399
31400
31401
31402
31403
31404
31405
31406
31407
31408
31409
31410
31411
31412
31413
31414
31415
31416
31417
31418
31419
31420
31421
31422
31423
31424
31425
31426
31427
31428
31429
31430
31431
31432
31433
31434
31435
31436
31437
31438
31439
31440
31441
31442
31443
31444
31445
31446
31447
31448
31449
31450
31451
31452
31453
31454
31455
31456
31457
31458
31459
31460
31461
31462
31463
31464
31465
31466
31467
31468
31469
31470
31471
31472
31473
31474
31475
31476
31477
31478
31479
31480
31481
31482
31483
31484
31485
31486
31487
31488
31489
31490
31491
31492
31493
31494
31495
31496
31497
31498
31499
31500
31501
31502
31503
31504
31505
31506
31507
31508
31509
31510
31511
31512
31513
31514
31515
31516
31517
31518
31519
31520
31521
31522
31523
31524
31525
31526
31527
31528
31529
31530
31531
31532
31533
31534
31535
31536
31537
31538
31539
31540
31541
31542
31543
31544
31545
31546
31547
31548
31549
31550
31551
31552
31553
31554
31555
31556
31557
31558
31559
31560
31561
31562
31563
31564
31565
31566
31567
31568
31569
31570
31571
31572
31573
31574
31575
31576
31577
31578
31579
31580
31581
31582
31583
31584
31585
31586
31587
31588
31589
31590
31591
31592
31593
31594
31595
31596
31597
31598
31599
31600
31601
31602
31603
31604
31605
31606
31607
31608
31609
31610
31611
31612
31613
31614
31615
31616
31617
31618
31619
31620
31621
31622
31623
31624
31625
31626
31627
31628
31629
31630
31631
31632
31633
31634
31635
31636
31637
31638
31639
31640
31641
31642
31643
31644
31645
31646
31647
31648
31649
31650
31651
31652
31653
31654
31655
31656
31657
31658
31659
31660
31661
31662
31663
31664
31665
31666
31667
31668
31669
31670
31671
31672
31673
31674
31675
31676
31677
31678
31679
31680
31681
31682
31683
31684
31685
31686
31687
31688
31689
31690
31691
31692
31693
31694
31695
31696
31697
31698
31699
31700
31701
31702
31703
31704
31705
31706
31707
31708
31709
31710
31711
31712
31713
31714
31715
31716
31717
31718
31719
31720
31721
31722
31723
31724
31725
31726
31727
31728
31729
31730
31731
31732
31733
31734
31735
31736
31737
31738
31739
31740
31741
31742
31743
31744
31745
31746
31747
31748
31749
31750
31751
31752
31753
31754
31755
31756
31757
31758
31759
31760
31761
31762
31763
31764
31765
31766
31767
31768
31769
31770
31771
31772
31773
31774
31775
31776
31777
31778
31779
31780
31781
31782
31783
31784
31785
31786
31787
31788
31789
31790
31791
31792
31793
31794
31795
31796
31797
31798
31799
31800
31801
31802
31803
31804
31805
31806
31807
31808
31809
31810
31811
31812
31813
31814
31815
31816
31817
31818
31819
31820
31821
31822
31823
31824
31825
31826
31827
31828
31829
31830
31831
31832
31833
31834
31835
31836
31837
31838
31839
31840
31841
31842
31843
31844
31845
31846
31847
31848
31849
31850
31851
31852
31853
31854
31855
31856
31857
31858
31859
31860
31861
31862
31863
31864
31865
31866
31867
31868
31869
31870
31871
31872
31873
31874
31875
31876
31877
31878
31879
31880
31881
31882
31883
31884
31885
31886
31887
31888
31889
31890
31891
31892
31893
31894
31895
31896
31897
31898
31899
31900
31901
31902
31903
31904
31905
31906
31907
31908
31909
31910
31911
31912
31913
31914
31915
31916
31917
31918
31919
31920
31921
31922
31923
31924
31925
31926
31927
31928
31929
31930
31931
31932
31933
31934
31935
31936
31937
31938
31939
31940
31941
31942
31943
31944
31945
31946
31947
31948
31949
31950
31951
31952
31953
31954
31955
31956
31957
31958
31959
31960
31961
31962
31963
31964
31965
31966
31967
31968
31969
31970
31971
31972
31973
31974
31975
31976
31977
31978
31979
31980
31981
31982
31983
31984
31985
31986
31987
31988
31989
31990
31991
31992
31993
31994
31995
31996
31997
31998
31999
32000
32001
32002
32003
32004
32005
32006
32007
32008
32009
32010
32011
32012
32013
32014
32015
32016
32017
32018
32019
32020
32021
32022
32023
32024
32025
32026
32027
32028
32029
32030
32031
32032
32033
32034
32035
32036
32037
32038
32039
32040
32041
32042
32043
32044
32045
32046
32047
32048
32049
32050
32051
32052
32053
32054
32055
32056
32057
32058
32059
32060
32061
32062
32063
32064
32065
32066
32067
32068
32069
32070
32071
32072
32073
32074
32075
32076
32077
32078
32079
32080
32081
32082
32083
32084
32085
32086
32087
32088
32089
32090
32091
32092
32093
32094
32095
32096
32097
32098
32099
32100
32101
32102
32103
32104
32105
32106
32107
32108
32109
32110
32111
32112
32113
32114
32115
32116
32117
32118
32119
32120
32121
32122
32123
32124
32125
32126
32127
32128
32129
32130
32131
32132
32133
32134
32135
32136
32137
32138
32139
32140
32141
32142
32143
32144
32145
32146
32147
32148
32149
32150
32151
32152
32153
32154
32155
32156
32157
32158
32159
32160
32161
32162
32163
32164
32165
32166
32167
32168
32169
32170
32171
32172
32173
32174
32175
32176
32177
32178
32179
32180
32181
32182
32183
32184
32185
32186
32187
32188
32189
32190
32191
32192
32193
32194
32195
32196
32197
32198
32199
32200
32201
32202
32203
32204
32205
32206
32207
32208
32209
32210
32211
32212
32213
32214
32215
32216
32217
32218
32219
32220
32221
32222
32223
32224
32225
32226
32227
32228
32229
32230
32231
32232
32233
32234
32235
32236
32237
32238
32239
32240
32241
32242
32243
32244
32245
32246
32247
32248
32249
32250
32251
32252
32253
32254
32255
32256
32257
32258
32259
32260
32261
32262
32263
32264
32265
32266
32267
32268
32269
32270
32271
32272
32273
32274
32275
32276
32277
32278
32279
32280
32281
32282
32283
32284
32285
32286
32287
32288
32289
32290
32291
32292
32293
32294
32295
32296
32297
32298
32299
32300
32301
32302
32303
32304
32305
32306
32307
32308
32309
32310
32311
32312
32313
32314
32315
32316
32317
32318
32319
32320
32321
32322
32323
32324
32325
32326
32327
32328
32329
32330
32331
32332
32333
32334
32335
32336
32337
32338
32339
32340
32341
32342
32343
32344
32345
32346
32347
32348
32349
32350
32351
32352
32353
32354
32355
32356
32357
32358
32359
32360
32361
32362
32363
32364
32365
32366
32367
32368
32369
32370
32371
32372
32373
32374
32375
32376
32377
32378
32379
32380
32381
32382
32383
32384
32385
32386
32387
32388
32389
32390
32391
32392
32393
32394
32395
32396
32397
32398
32399
32400
32401
32402
32403
32404
32405
32406
32407
32408
32409
32410
32411
32412
32413
32414
32415
32416
32417
32418
32419
32420
32421
32422
32423
32424
32425
32426
32427
32428
32429
32430
32431
32432
32433
32434
32435
32436
32437
32438
32439
32440
32441
32442
32443
32444
32445
32446
32447
32448
32449
32450
32451
32452
32453
32454
32455
32456
32457
32458
32459
32460
32461
32462
32463
32464
32465
32466
32467
32468
32469
32470
32471
32472
32473
32474
32475
32476
32477
32478
32479
32480
32481
32482
32483
32484
32485
32486
32487
32488
32489
32490
32491
32492
32493
32494
32495
32496
32497
32498
32499
32500
32501
32502
32503
32504
32505
32506
32507
32508
32509
32510
32511
32512
32513
32514
32515
32516
32517
32518
32519
32520
32521
32522
32523
32524
32525
32526
32527
32528
32529
32530
32531
32532
32533
32534
32535
32536
32537
32538
32539
32540
32541
32542
32543
32544
32545
32546
32547
32548
32549
32550
32551
32552
32553
32554
32555
32556
32557
32558
32559
32560
32561
32562
32563
32564
32565
32566
32567
32568
32569
32570
32571
32572
32573
32574
32575
32576
32577
32578
32579
32580
32581
32582
32583
32584
32585
32586
32587
32588
32589
32590
32591
32592
32593
32594
32595
32596
32597
32598
32599
32600
32601
32602
32603
32604
32605
32606
32607
32608
32609
32610
32611
32612
32613
32614
32615
32616
32617
32618
32619
32620
32621
32622
32623
32624
32625
32626
32627
32628
32629
32630
32631
32632
32633
32634
32635
32636
32637
32638
32639
32640
32641
32642
32643
32644
32645
32646
32647
32648
32649
32650
32651
32652
32653
32654
32655
32656
32657
32658
32659
32660
32661
32662
32663
32664
32665
32666
32667
32668
32669
32670
32671
32672
32673
32674
32675
32676
32677
32678
32679
32680
32681
32682
32683
32684
32685
32686
32687
32688
32689
32690
32691
32692
32693
32694
32695
32696
32697
32698
32699
32700
32701
32702
32703
32704
32705
32706
32707
32708
32709
32710
32711
32712
32713
32714
32715
32716
32717
32718
32719
32720
32721
32722
32723
32724
32725
32726
32727
32728
32729
32730
32731
32732
32733
32734
32735
32736
32737
32738
32739
32740
32741
32742
32743
32744
32745
32746
32747
32748
32749
32750
32751
32752
32753
32754
32755
32756
32757
32758
32759
32760
32761
32762
32763
32764
32765
32766
32767
32768
32769
32770
32771
32772
32773
32774
32775
32776
32777
32778
32779
32780
32781
32782
32783
32784
32785
32786
32787
32788
32789
32790
32791
32792
32793
32794
32795
32796
32797
32798
32799
32800
32801
32802
32803
32804
32805
32806
32807
32808
32809
32810
32811
32812
32813
32814
32815
32816
32817
32818
32819
32820
32821
32822
32823
32824
32825
32826
32827
32828
32829
32830
32831
32832
32833
32834
32835
32836
32837
32838
32839
32840
32841
32842
32843
32844
32845
32846
32847
32848
32849
32850
32851
32852
32853
32854
32855
32856
32857
32858
32859
32860
32861
32862
32863
32864
32865
32866
32867
32868
32869
32870
32871
32872
32873
32874
32875
32876
32877
32878
32879
32880
32881
32882
32883
32884
32885
32886
32887
32888
32889
32890
32891
32892
32893
32894
32895
32896
32897
32898
32899
32900
32901
32902
32903
32904
32905
32906
32907
32908
32909
32910
32911
32912
32913
32914
32915
32916
32917
32918
32919
32920
32921
32922
32923
32924
32925
32926
32927
32928
32929
32930
32931
32932
32933
32934
32935
32936
32937
32938
32939
32940
32941
32942
32943
32944
32945
32946
32947
32948
32949
32950
32951
32952
32953
32954
32955
32956
32957
32958
32959
32960
32961
32962
32963
32964
32965
32966
32967
32968
32969
32970
32971
32972
32973
32974
32975
32976
32977
32978
32979
32980
32981
32982
32983
32984
32985
32986
32987
32988
32989
32990
32991
32992
32993
32994
32995
32996
32997
32998
32999
33000
33001
33002
33003
33004
33005
33006
33007
33008
33009
33010
33011
33012
33013
33014
33015
33016
33017
33018
33019
33020
33021
33022
33023
33024
33025
33026
33027
33028
33029
33030
33031
33032
33033
33034
33035
33036
33037
33038
33039
33040
33041
33042
33043
33044
33045
33046
33047
33048
33049
33050
33051
33052
33053
33054
33055
33056
33057
33058
33059
33060
33061
33062
33063
33064
33065
33066
33067
33068
33069
33070
33071
33072
33073
33074
33075
33076
33077
33078
33079
33080
33081
33082
33083
33084
33085
33086
33087
33088
33089
33090
33091
33092
33093
33094
33095
33096
33097
33098
33099
33100
33101
33102
33103
33104
33105
33106
33107
33108
33109
33110
33111
33112
33113
33114
33115
33116
33117
33118
33119
33120
33121
33122
33123
33124
33125
33126
33127
33128
33129
33130
33131
33132
33133
33134
33135
33136
33137
33138
33139
33140
33141
33142
33143
33144
33145
33146
33147
33148
33149
33150
33151
33152
33153
33154
33155
33156
33157
33158
33159
33160
33161
33162
33163
33164
33165
33166
33167
33168
33169
33170
33171
33172
33173
33174
33175
33176
33177
33178
33179
33180
33181
33182
33183
33184
33185
33186
33187
33188
33189
33190
33191
33192
33193
33194
33195
33196
33197
33198
33199
33200
33201
33202
33203
33204
33205
33206
33207
33208
33209
33210
33211
33212
33213
33214
33215
33216
33217
33218
33219
33220
33221
33222
33223
33224
33225
33226
33227
33228
33229
33230
33231
33232
33233
33234
33235
33236
33237
33238
33239
33240
33241
33242
33243
33244
33245
33246
33247
33248
33249
33250
33251
33252
33253
33254
33255
33256
33257
33258
33259
33260
33261
33262
33263
33264
33265
33266
33267
33268
33269
33270
33271
33272
33273
33274
33275
33276
33277
33278
33279
33280
33281
33282
33283
33284
33285
33286
33287
33288
33289
33290
33291
33292
33293
33294
33295
33296
33297
33298
33299
33300
33301
33302
33303
33304
33305
33306
33307
33308
33309
33310
33311
33312
33313
33314
33315
33316
33317
33318
33319
33320
33321
33322
33323
33324
33325
33326
33327
33328
33329
33330
33331
33332
33333
33334
33335
33336
33337
33338
33339
33340
33341
33342
33343
33344
33345
33346
33347
33348
33349
33350
33351
33352
33353
33354
33355
33356
33357
33358
33359
33360
33361
33362
33363
33364
33365
33366
33367
33368
33369
33370
33371
33372
33373
33374
33375
33376
33377
33378
33379
33380
33381
33382
33383
33384
33385
33386
33387
33388
33389
33390
33391
33392
33393
33394
33395
33396
33397
33398
33399
33400
33401
33402
33403
33404
33405
33406
33407
33408
33409
33410
33411
33412
33413
33414
33415
33416
33417
33418
33419
33420
33421
33422
33423
33424
33425
33426
33427
33428
33429
33430
33431
33432
33433
33434
33435
33436
33437
33438
33439
33440
33441
33442
33443
33444
33445
33446
33447
33448
33449
33450
33451
33452
33453
33454
33455
33456
33457
33458
33459
33460
33461
33462
33463
33464
33465
33466
33467
33468
33469
33470
33471
33472
33473
33474
33475
33476
33477
33478
33479
33480
33481
33482
33483
33484
33485
33486
33487
33488
33489
33490
33491
33492
33493
33494
33495
33496
33497
33498
33499
33500
33501
33502
33503
33504
33505
33506
33507
33508
33509
33510
33511
33512
33513
33514
33515
33516
33517
33518
33519
33520
33521
33522
33523
33524
33525
33526
33527
33528
33529
33530
33531
33532
33533
33534
33535
33536
33537
33538
33539
33540
33541
33542
33543
33544
33545
33546
33547
33548
33549
33550
33551
33552
33553
33554
33555
33556
33557
33558
33559
33560
33561
33562
33563
33564
33565
33566
33567
33568
33569
33570
33571
33572
33573
33574
33575
33576
33577
33578
33579
33580
33581
33582
33583
33584
33585
33586
33587
33588
33589
33590
33591
33592
33593
33594
33595
33596
33597
33598
33599
33600
33601
33602
33603
33604
33605
33606
33607
33608
33609
33610
33611
33612
33613
33614
33615
33616
33617
33618
33619
33620
33621
33622
33623
33624
33625
33626
33627
33628
33629
33630
33631
33632
33633
33634
33635
33636
33637
33638
33639
33640
33641
33642
33643
33644
33645
33646
33647
33648
33649
33650
33651
33652
33653
33654
33655
33656
33657
33658
33659
33660
33661
33662
33663
33664
33665
33666
33667
33668
33669
33670
33671
33672
33673
33674
33675
33676
33677
33678
33679
33680
33681
33682
33683
33684
33685
33686
33687
33688
33689
33690
33691
33692
33693
33694
33695
33696
33697
33698
33699
33700
33701
33702
33703
33704
33705
33706
33707
33708
33709
33710
33711
33712
33713
33714
33715
33716
33717
33718
33719
33720
33721
33722
33723
33724
33725
33726
33727
33728
33729
33730
33731
33732
33733
33734
33735
33736
33737
33738
33739
33740
33741
33742
33743
33744
33745
33746
33747
33748
33749
33750
33751
33752
33753
33754
33755
33756
33757
33758
33759
33760
33761
33762
33763
33764
33765
33766
33767
33768
33769
33770
33771
33772
33773
33774
33775
33776
33777
33778
33779
33780
33781
33782
33783
33784
33785
33786
33787
33788
33789
33790
33791
33792
33793
33794
33795
33796
33797
33798
33799
33800
33801
33802
33803
33804
33805
33806
33807
33808
33809
33810
33811
33812
33813
33814
33815
33816
33817
33818
33819
33820
33821
33822
33823
33824
33825
33826
33827
33828
33829
33830
33831
33832
33833
33834
33835
33836
33837
33838
33839
33840
33841
33842
33843
33844
33845
33846
33847
33848
33849
33850
33851
33852
33853
33854
33855
33856
33857
33858
33859
33860
33861
33862
33863
33864
33865
33866
33867
33868
33869
33870
33871
33872
33873
33874
33875
33876
33877
33878
33879
33880
33881
33882
33883
33884
33885
33886
33887
33888
33889
33890
33891
33892
33893
33894
33895
33896
33897
33898
33899
33900
33901
33902
33903
33904
33905
33906
33907
33908
33909
33910
33911
33912
33913
33914
33915
33916
33917
33918
33919
33920
33921
33922
33923
33924
33925
33926
33927
33928
33929
33930
33931
33932
33933
33934
33935
33936
33937
33938
33939
33940
33941
33942
33943
33944
33945
33946
33947
33948
33949
33950
33951
33952
33953
33954
33955
33956
33957
33958
33959
33960
33961
33962
33963
33964
33965
33966
33967
33968
33969
33970
33971
33972
33973
33974
33975
33976
33977
33978
33979
33980
33981
33982
33983
33984
33985
33986
33987
33988
33989
33990
33991
33992
33993
33994
33995
33996
33997
33998
33999
34000
34001
34002
34003
34004
34005
34006
34007
34008
34009
34010
34011
34012
34013
34014
34015
34016
34017
34018
34019
34020
34021
34022
34023
34024
34025
34026
34027
34028
34029
34030
34031
34032
34033
34034
34035
34036
34037
34038
34039
34040
34041
34042
34043
34044
34045
34046
34047
34048
34049
34050
34051
34052
34053
34054
34055
34056
34057
34058
34059
34060
34061
34062
34063
34064
34065
34066
34067
34068
34069
34070
34071
34072
34073
34074
34075
34076
34077
34078
34079
34080
34081
34082
34083
34084
34085
34086
34087
34088
34089
34090
34091
34092
34093
34094
34095
34096
34097
34098
34099
34100
34101
34102
34103
34104
34105
34106
34107
34108
34109
34110
34111
34112
34113
34114
34115
34116
34117
34118
34119
34120
34121
34122
34123
34124
34125
34126
34127
34128
34129
34130
34131
34132
34133
34134
34135
34136
34137
34138
34139
34140
34141
34142
34143
34144
34145
34146
34147
34148
34149
34150
34151
34152
34153
34154
34155
34156
34157
34158
34159
34160
34161
34162
34163
34164
34165
34166
34167
34168
34169
34170
34171
34172
34173
34174
34175
34176
34177
34178
34179
34180
34181
34182
34183
34184
34185
34186
34187
34188
34189
34190
34191
34192
34193
34194
34195
34196
34197
34198
34199
34200
34201
34202
34203
34204
34205
34206
34207
34208
34209
34210
34211
34212
34213
34214
34215
34216
34217
34218
34219
34220
34221
34222
34223
34224
34225
34226
34227
34228
34229
34230
34231
34232
34233
34234
34235
34236
34237
34238
34239
34240
34241
34242
34243
34244
34245
34246
34247
34248
34249
34250
34251
34252
34253
34254
34255
34256
34257
34258
34259
34260
34261
34262
34263
34264
34265
34266
34267
34268
34269
34270
34271
34272
34273
34274
34275
34276
34277
34278
34279
34280
34281
34282
34283
34284
34285
34286
34287
34288
34289
34290
34291
34292
34293
34294
34295
34296
34297
34298
34299
34300
34301
34302
34303
34304
34305
34306
34307
34308
34309
34310
34311
34312
34313
34314
34315
34316
34317
34318
34319
34320
34321
34322
34323
34324
34325
34326
34327
34328
34329
34330
34331
34332
34333
34334
34335
34336
34337
34338
34339
34340
34341
34342
34343
34344
34345
34346
34347
34348
34349
34350
34351
34352
34353
34354
34355
34356
34357
34358
34359
34360
34361
34362
34363
34364
34365
34366
34367
34368
34369
34370
34371
34372
34373
34374
34375
34376
34377
34378
34379
34380
34381
34382
34383
34384
34385
34386
34387
34388
34389
34390
34391
34392
34393
34394
34395
34396
34397
34398
34399
34400
34401
34402
34403
34404
34405
34406
34407
34408
34409
34410
34411
34412
34413
34414
34415
34416
34417
34418
34419
34420
34421
34422
34423
34424
34425
34426
34427
34428
34429
34430
34431
34432
34433
34434
34435
34436
34437
34438
34439
34440
34441
34442
34443
34444
34445
34446
34447
34448
34449
34450
34451
34452
34453
34454
34455
34456
34457
34458
34459
34460
34461
34462
34463
34464
34465
34466
34467
34468
34469
34470
34471
34472
34473
34474
34475
34476
34477
34478
34479
34480
34481
34482
34483
34484
34485
34486
34487
34488
34489
34490
34491
34492
34493
34494
34495
34496
34497
34498
34499
34500
34501
34502
34503
34504
34505
34506
34507
34508
34509
34510
34511
34512
34513
34514
34515
34516
34517
34518
34519
34520
34521
34522
34523
34524
34525
34526
34527
34528
34529
34530
34531
34532
34533
34534
34535
34536
34537
34538
34539
34540
34541
34542
34543
34544
34545
34546
34547
34548
34549
34550
34551
34552
34553
34554
34555
34556
34557
34558
34559
34560
34561
34562
34563
34564
34565
34566
34567
34568
34569
34570
34571
34572
34573
34574
34575
34576
34577
34578
34579
34580
34581
34582
34583
34584
34585
34586
34587
34588
34589
34590
34591
34592
34593
34594
34595
34596
34597
34598
34599
34600
34601
34602
34603
34604
34605
34606
34607
34608
34609
34610
34611
34612
34613
34614
34615
34616
34617
34618
34619
34620
34621
34622
34623
34624
34625
34626
34627
34628
34629
34630
34631
34632
34633
34634
34635
34636
34637
34638
34639
34640
34641
34642
34643
34644
34645
34646
34647
34648
34649
34650
34651
34652
34653
34654
34655
34656
34657
34658
34659
34660
34661
34662
34663
34664
34665
34666
34667
34668
34669
34670
34671
34672
34673
34674
34675
34676
34677
34678
34679
34680
34681
34682
34683
34684
34685
34686
34687
34688
34689
34690
34691
34692
34693
34694
34695
34696
34697
34698
34699
34700
34701
34702
34703
34704
34705
34706
34707
34708
34709
34710
34711
34712
34713
34714
34715
34716
34717
34718
34719
34720
34721
34722
34723
34724
34725
34726
34727
34728
34729
34730
34731
34732
34733
34734
34735
34736
34737
34738
34739
34740
34741
34742
34743
34744
34745
34746
34747
34748
34749
34750
34751
34752
34753
34754
34755
34756
34757
34758
34759
34760
34761
34762
34763
34764
34765
34766
34767
34768
34769
34770
34771
34772
34773
34774
34775
34776
34777
34778
34779
34780
34781
34782
34783
34784
34785
34786
34787
34788
34789
34790
34791
34792
34793
34794
34795
34796
34797
34798
34799
34800
34801
34802
34803
34804
34805
34806
34807
34808
34809
34810
34811
34812
34813
34814
34815
34816
34817
34818
34819
34820
34821
34822
34823
34824
34825
34826
34827
34828
34829
34830
34831
34832
34833
34834
34835
34836
34837
34838
34839
34840
34841
34842
34843
34844
34845
34846
34847
34848
34849
34850
34851
34852
34853
34854
34855
34856
34857
34858
34859
34860
34861
34862
34863
34864
34865
34866
34867
34868
34869
34870
34871
34872
34873
34874
34875
34876
34877
34878
34879
34880
34881
34882
34883
34884
34885
34886
34887
34888
34889
34890
34891
34892
34893
34894
34895
34896
34897
34898
34899
34900
34901
34902
34903
34904
34905
34906
34907
34908
34909
34910
34911
34912
34913
34914
34915
34916
34917
34918
34919
34920
34921
34922
34923
34924
34925
34926
34927
34928
34929
34930
34931
34932
34933
34934
34935
34936
34937
34938
34939
34940
34941
34942
34943
34944
34945
34946
34947
34948
34949
34950
34951
34952
34953
34954
34955
34956
34957
34958
34959
34960
34961
34962
34963
34964
34965
34966
34967
34968
34969
34970
34971
34972
34973
34974
34975
34976
34977
34978
34979
34980
34981
34982
34983
34984
34985
34986
34987
34988
34989
34990
34991
34992
34993
34994
34995
34996
34997
34998
34999
35000
35001
35002
35003
35004
35005
35006
35007
35008
35009
35010
35011
35012
35013
35014
35015
35016
35017
35018
35019
35020
35021
35022
35023
35024
35025
35026
35027
35028
35029
35030
35031
35032
35033
35034
35035
35036
35037
35038
35039
35040
35041
35042
35043
35044
35045
35046
35047
35048
35049
35050
35051
35052
35053
35054
35055
35056
35057
35058
35059
35060
35061
35062
35063
35064
35065
35066
35067
35068
35069
35070
35071
35072
35073
35074
35075
35076
35077
35078
35079
35080
35081
35082
35083
35084
35085
35086
35087
35088
35089
35090
35091
35092
35093
35094
35095
35096
35097
35098
35099
35100
35101
35102
35103
35104
35105
35106
35107
35108
35109
35110
35111
35112
35113
35114
35115
35116
35117
35118
35119
35120
35121
35122
35123
35124
35125
35126
35127
35128
35129
35130
35131
35132
35133
35134
35135
35136
35137
35138
35139
35140
35141
35142
35143
35144
35145
35146
35147
35148
35149
35150
35151
35152
35153
35154
35155
35156
35157
35158
35159
35160
35161
35162
35163
35164
35165
35166
35167
35168
35169
35170
35171
35172
35173
35174
35175
35176
35177
35178
35179
35180
35181
35182
35183
35184
35185
35186
35187
35188
35189
35190
35191
35192
35193
35194
35195
35196
35197
35198
35199
35200
35201
35202
35203
35204
35205
35206
35207
35208
35209
35210
35211
35212
35213
35214
35215
35216
35217
35218
35219
35220
35221
35222
35223
35224
35225
35226
35227
35228
35229
35230
35231
35232
35233
35234
35235
35236
35237
35238
35239
35240
35241
35242
35243
35244
35245
35246
35247
35248
35249
35250
35251
35252
35253
35254
35255
35256
35257
35258
35259
35260
35261
35262
35263
35264
35265
35266
35267
35268
35269
35270
35271
35272
35273
35274
35275
35276
35277
35278
35279
35280
35281
35282
35283
35284
35285
35286
35287
35288
35289
35290
35291
35292
35293
35294
35295
35296
35297
35298
35299
35300
35301
35302
35303
35304
35305
35306
35307
35308
35309
35310
35311
35312
35313
35314
35315
35316
35317
35318
35319
35320
35321
35322
35323
35324
35325
35326
35327
35328
35329
35330
35331
35332
35333
35334
35335
35336
35337
35338
35339
35340
35341
35342
35343
35344
35345
35346
35347
35348
35349
35350
35351
35352
35353
35354
35355
35356
35357
35358
35359
35360
35361
35362
35363
35364
35365
35366
35367
35368
35369
35370
35371
35372
35373
35374
35375
35376
35377
35378
35379
35380
35381
35382
35383
35384
35385
35386
35387
35388
35389
35390
35391
35392
35393
35394
35395
35396
35397
35398
35399
35400
35401
35402
35403
35404
35405
35406
35407
35408
35409
35410
35411
35412
35413
35414
35415
35416
35417
35418
35419
35420
35421
35422
35423
35424
35425
35426
35427
35428
35429
35430
35431
35432
35433
35434
35435
35436
35437
35438
35439
35440
35441
35442
35443
35444
35445
35446
35447
35448
35449
35450
35451
35452
35453
35454
35455
35456
35457
35458
35459
35460
35461
35462
35463
35464
35465
35466
35467
35468
35469
35470
35471
35472
35473
35474
35475
35476
35477
35478
35479
35480
35481
35482
35483
35484
35485
35486
35487
35488
35489
35490
35491
35492
35493
35494
35495
35496
35497
35498
35499
35500
35501
35502
35503
35504
35505
35506
35507
35508
35509
35510
35511
35512
35513
35514
35515
35516
35517
35518
35519
35520
35521
35522
35523
35524
35525
35526
35527
35528
35529
35530
35531
35532
35533
35534
35535
35536
35537
35538
35539
35540
35541
35542
35543
35544
35545
35546
35547
35548
35549
35550
35551
35552
35553
35554
35555
35556
35557
35558
35559
35560
35561
35562
35563
35564
35565
35566
35567
35568
35569
35570
35571
35572
35573
35574
35575
35576
35577
35578
35579
35580
35581
35582
35583
35584
35585
35586
35587
35588
35589
35590
35591
35592
35593
35594
35595
35596
35597
35598
35599
35600
35601
35602
35603
35604
35605
35606
35607
35608
35609
35610
35611
35612
35613
35614
35615
35616
35617
35618
35619
35620
35621
35622
35623
35624
35625
35626
35627
35628
35629
35630
35631
35632
35633
35634
35635
35636
35637
35638
35639
35640
35641
35642
35643
35644
35645
35646
35647
35648
35649
35650
35651
35652
35653
35654
35655
35656
35657
35658
35659
35660
35661
35662
35663
35664
35665
35666
35667
35668
35669
35670
35671
35672
35673
35674
35675
35676
35677
35678
35679
35680
35681
35682
35683
35684
35685
35686
35687
35688
35689
35690
35691
35692
35693
35694
35695
35696
35697
35698
35699
35700
35701
35702
35703
35704
35705
35706
35707
35708
35709
35710
35711
35712
35713
35714
35715
35716
35717
35718
35719
35720
35721
35722
35723
35724
35725
35726
35727
35728
35729
35730
35731
35732
35733
35734
35735
35736
35737
35738
35739
35740
35741
35742
35743
35744
35745
35746
35747
35748
35749
35750
35751
35752
35753
35754
35755
35756
35757
35758
35759
35760
35761
35762
35763
35764
35765
35766
35767
35768
35769
35770
35771
35772
35773
35774
35775
35776
35777
35778
35779
35780
35781
35782
35783
35784
35785
35786
35787
35788
35789
35790
35791
35792
35793
35794
35795
35796
35797
35798
35799
35800
35801
35802
35803
35804
35805
35806
35807
35808
35809
35810
35811
35812
35813
35814
35815
35816
35817
35818
35819
35820
35821
35822
35823
35824
35825
35826
35827
35828
35829
35830
35831
35832
35833
35834
35835
35836
35837
35838
35839
35840
35841
35842
35843
35844
35845
35846
35847
35848
35849
35850
35851
35852
35853
35854
35855
35856
35857
35858
35859
35860
35861
35862
35863
35864
35865
35866
35867
35868
35869
35870
35871
35872
35873
35874
35875
35876
35877
35878
35879
35880
35881
35882
35883
35884
35885
35886
35887
35888
35889
35890
35891
35892
35893
35894
35895
35896
35897
35898
35899
35900
35901
35902
35903
35904
35905
35906
35907
35908
35909
35910
35911
35912
35913
35914
35915
35916
35917
35918
35919
35920
35921
35922
35923
35924
35925
35926
35927
35928
35929
35930
35931
35932
35933
35934
35935
35936
35937
35938
35939
35940
35941
35942
35943
35944
35945
35946
35947
35948
35949
35950
35951
35952
35953
35954
35955
35956
35957
35958
35959
35960
35961
35962
35963
35964
35965
35966
35967
35968
35969
35970
35971
35972
35973
35974
35975
35976
35977
35978
35979
35980
35981
35982
35983
35984
35985
35986
35987
35988
35989
35990
35991
35992
35993
35994
35995
35996
35997
35998
35999
36000
36001
36002
36003
36004
36005
36006
36007
36008
36009
36010
36011
36012
36013
36014
36015
36016
36017
36018
36019
36020
36021
36022
36023
36024
36025
36026
36027
36028
36029
36030
36031
36032
36033
36034
36035
36036
36037
36038
36039
36040
36041
36042
36043
36044
36045
36046
36047
36048
36049
36050
36051
36052
36053
36054
36055
36056
36057
36058
36059
36060
36061
36062
36063
36064
36065
36066
36067
36068
36069
36070
36071
36072
36073
36074
36075
36076
36077
36078
36079
36080
36081
36082
36083
36084
36085
36086
36087
36088
36089
36090
36091
36092
36093
36094
36095
36096
36097
36098
36099
36100
36101
36102
36103
36104
36105
36106
36107
36108
36109
36110
36111
36112
36113
36114
36115
36116
36117
36118
36119
36120
36121
36122
36123
36124
36125
36126
36127
36128
36129
36130
36131
36132
36133
36134
36135
36136
36137
36138
36139
36140
36141
36142
36143
36144
36145
36146
36147
36148
36149
36150
36151
36152
36153
36154
36155
36156
36157
36158
36159
36160
36161
36162
36163
36164
36165
36166
36167
36168
36169
36170
36171
36172
36173
36174
36175
36176
36177
36178
36179
36180
36181
36182
36183
36184
36185
36186
36187
36188
36189
36190
36191
36192
36193
36194
36195
36196
36197
36198
36199
36200
36201
36202
36203
36204
36205
36206
36207
36208
36209
36210
36211
36212
36213
36214
36215
36216
36217
36218
36219
36220
36221
36222
36223
36224
36225
36226
36227
36228
36229
36230
36231
36232
36233
36234
36235
36236
36237
36238
36239
36240
36241
36242
36243
36244
36245
36246
36247
36248
36249
36250
36251
36252
36253
36254
36255
36256
36257
36258
36259
36260
36261
36262
36263
36264
36265
36266
36267
36268
36269
36270
36271
36272
36273
36274
36275
36276
36277
36278
36279
36280
36281
36282
36283
36284
36285
36286
36287
36288
36289
36290
36291
36292
36293
36294
36295
36296
36297
36298
36299
36300
36301
36302
36303
36304
36305
36306
36307
36308
36309
36310
36311
36312
36313
36314
36315
36316
36317
36318
36319
36320
36321
36322
36323
36324
36325
36326
36327
36328
36329
36330
36331
36332
36333
36334
36335
36336
36337
36338
36339
36340
36341
36342
36343
36344
36345
36346
36347
36348
36349
36350
36351
36352
36353
36354
36355
36356
36357
36358
36359
36360
36361
36362
36363
36364
36365
36366
36367
36368
36369
36370
36371
36372
36373
36374
36375
36376
36377
36378
36379
36380
36381
36382
36383
36384
36385
36386
36387
36388
36389
36390
36391
36392
36393
36394
36395
36396
36397
36398
36399
36400
36401
36402
36403
36404
36405
36406
36407
36408
36409
36410
36411
36412
36413
36414
36415
36416
36417
36418
36419
36420
36421
36422
36423
36424
36425
36426
36427
36428
36429
36430
36431
36432
36433
36434
36435
36436
36437
36438
36439
36440
36441
36442
36443
36444
36445
36446
36447
36448
36449
36450
36451
36452
36453
36454
36455
36456
36457
36458
36459
36460
36461
36462
36463
36464
36465
36466
36467
36468
36469
36470
36471
36472
36473
36474
36475
36476
36477
36478
36479
36480
36481
36482
36483
36484
36485
36486
36487
36488
36489
36490
36491
36492
36493
36494
36495
36496
36497
36498
36499
36500
36501
36502
36503
36504
36505
36506
36507
36508
36509
36510
36511
36512
36513
36514
36515
36516
36517
36518
36519
36520
36521
36522
36523
36524
36525
36526
36527
36528
36529
36530
36531
36532
36533
36534
36535
36536
36537
36538
36539
36540
36541
36542
36543
36544
36545
36546
36547
36548
36549
36550
36551
36552
36553
36554
36555
36556
36557
36558
36559
36560
36561
36562
36563
36564
36565
36566
36567
36568
36569
36570
36571
36572
36573
36574
36575
36576
36577
36578
36579
36580
36581
36582
36583
36584
36585
36586
36587
36588
36589
36590
36591
36592
36593
36594
36595
36596
36597
36598
36599
36600
36601
36602
36603
36604
36605
36606
36607
36608
36609
36610
36611
36612
36613
36614
36615
36616
36617
36618
36619
36620
36621
36622
36623
36624
36625
36626
36627
36628
36629
36630
36631
36632
36633
36634
36635
36636
36637
36638
36639
36640
36641
36642
36643
36644
36645
36646
36647
36648
36649
36650
36651
36652
36653
36654
36655
36656
36657
36658
36659
36660
36661
36662
36663
36664
36665
36666
36667
36668
36669
36670
36671
36672
36673
36674
36675
36676
36677
36678
36679
36680
36681
36682
36683
36684
36685
36686
36687
36688
36689
36690
36691
36692
36693
36694
36695
36696
36697
36698
36699
36700
36701
36702
36703
36704
36705
36706
36707
36708
36709
36710
36711
36712
36713
36714
36715
36716
36717
36718
36719
36720
36721
36722
36723
36724
36725
36726
36727
36728
36729
36730
36731
36732
36733
36734
36735
36736
36737
36738
36739
36740
36741
36742
36743
36744
36745
36746
36747
36748
36749
36750
36751
36752
36753
36754
36755
36756
36757
36758
36759
36760
36761
36762
36763
36764
36765
36766
36767
36768
36769
36770
36771
36772
36773
36774
36775
36776
36777
36778
36779
36780
36781
36782
36783
36784
36785
36786
36787
36788
36789
36790
36791
36792
36793
36794
36795
36796
36797
36798
36799
36800
36801
36802
36803
36804
36805
36806
36807
36808
36809
36810
36811
36812
36813
36814
36815
36816
36817
36818
36819
36820
36821
36822
36823
36824
36825
36826
36827
36828
36829
36830
36831
36832
36833
36834
36835
36836
36837
36838
36839
36840
36841
36842
36843
36844
36845
36846
36847
36848
36849
36850
36851
36852
36853
36854
36855
36856
36857
36858
36859
36860
36861
36862
36863
36864
36865
36866
36867
36868
36869
36870
36871
36872
36873
36874
36875
36876
36877
36878
36879
36880
36881
36882
36883
36884
36885
36886
36887
36888
36889
36890
36891
36892
36893
36894
36895
36896
36897
36898
36899
36900
36901
36902
36903
36904
36905
36906
36907
36908
36909
36910
36911
36912
36913
36914
36915
36916
36917
36918
36919
36920
36921
36922
36923
36924
36925
36926
36927
36928
36929
36930
36931
36932
36933
36934
36935
36936
36937
36938
36939
36940
36941
36942
36943
36944
36945
36946
36947
36948
36949
36950
36951
36952
36953
36954
36955
36956
36957
36958
36959
36960
36961
36962
36963
36964
36965
36966
36967
36968
36969
36970
36971
36972
36973
36974
36975
36976
36977
36978
36979
36980
36981
36982
36983
36984
36985
36986
36987
36988
36989
36990
36991
36992
36993
36994
36995
36996
36997
36998
36999
37000
37001
37002
37003
37004
37005
37006
37007
37008
37009
37010
37011
37012
37013
37014
37015
37016
37017
37018
37019
37020
37021
37022
37023
37024
37025
37026
37027
37028
37029
37030
37031
37032
37033
37034
37035
37036
37037
37038
37039
37040
37041
37042
37043
37044
37045
37046
37047
37048
37049
37050
37051
37052
37053
37054
37055
37056
37057
37058
37059
37060
37061
37062
37063
37064
37065
37066
37067
37068
37069
37070
37071
37072
37073
37074
37075
37076
37077
37078
37079
37080
37081
37082
37083
37084
37085
37086
37087
37088
37089
37090
37091
37092
37093
37094
37095
37096
37097
37098
37099
37100
37101
37102
37103
37104
37105
37106
37107
37108
37109
37110
37111
37112
37113
37114
37115
37116
37117
37118
37119
37120
37121
37122
37123
37124
37125
37126
37127
37128
37129
37130
37131
37132
37133
37134
37135
37136
37137
37138
37139
37140
37141
37142
37143
37144
37145
37146
37147
37148
37149
37150
37151
37152
37153
37154
37155
37156
37157
37158
37159
37160
37161
37162
37163
37164
37165
37166
37167
37168
37169
37170
37171
37172
37173
37174
37175
37176
37177
37178
37179
37180
37181
37182
37183
37184
37185
37186
37187
37188
37189
37190
37191
37192
37193
37194
37195
37196
37197
37198
37199
37200
37201
37202
37203
37204
37205
37206
37207
37208
37209
37210
37211
37212
37213
37214
37215
37216
37217
37218
37219
37220
37221
37222
37223
37224
37225
37226
37227
37228
37229
37230
37231
37232
37233
37234
37235
37236
37237
37238
37239
37240
37241
37242
37243
37244
37245
37246
37247
37248
37249
37250
37251
37252
37253
37254
37255
37256
37257
37258
37259
37260
37261
37262
37263
37264
37265
37266
37267
37268
37269
37270
37271
37272
37273
37274
37275
37276
37277
37278
37279
37280
37281
37282
37283
37284
37285
37286
37287
37288
37289
37290
37291
37292
37293
37294
37295
37296
37297
37298
37299
37300
37301
37302
37303
37304
37305
37306
37307
37308
37309
37310
37311
37312
37313
37314
37315
37316
37317
37318
37319
37320
37321
37322
37323
37324
37325
37326
37327
37328
37329
37330
37331
37332
37333
37334
37335
37336
37337
37338
37339
37340
37341
37342
37343
37344
37345
37346
37347
37348
37349
37350
37351
37352
37353
37354
37355
37356
37357
37358
37359
37360
37361
37362
37363
37364
37365
37366
37367
37368
37369
37370
37371
37372
37373
37374
37375
37376
37377
37378
37379
37380
37381
37382
37383
37384
37385
37386
37387
37388
37389
37390
37391
37392
37393
37394
37395
37396
37397
37398
37399
37400
37401
37402
37403
37404
37405
37406
37407
37408
37409
37410
37411
37412
37413
37414
37415
37416
37417
37418
37419
37420
37421
37422
37423
37424
37425
37426
37427
37428
37429
37430
37431
37432
37433
37434
37435
37436
37437
37438
37439
37440
37441
37442
37443
37444
37445
37446
37447
37448
37449
37450
37451
37452
37453
37454
37455
37456
37457
37458
37459
37460
37461
37462
37463
37464
37465
37466
37467
37468
37469
37470
37471
37472
37473
37474
37475
37476
37477
37478
37479
37480
37481
37482
37483
37484
37485
37486
37487
37488
37489
37490
37491
37492
37493
37494
37495
37496
37497
37498
37499
37500
37501
37502
37503
37504
37505
37506
37507
37508
37509
37510
37511
37512
37513
37514
37515
37516
37517
37518
37519
37520
37521
37522
37523
37524
37525
37526
37527
37528
37529
37530
37531
37532
37533
37534
37535
37536
37537
37538
37539
37540
37541
37542
37543
37544
37545
37546
37547
37548
37549
37550
37551
37552
37553
37554
37555
37556
37557
37558
37559
37560
37561
37562
37563
37564
37565
37566
37567
37568
37569
37570
37571
37572
37573
37574
37575
37576
37577
37578
37579
37580
37581
37582
37583
37584
37585
37586
37587
37588
37589
37590
37591
37592
37593
37594
37595
37596
37597
37598
37599
37600
37601
37602
37603
37604
37605
37606
37607
37608
37609
37610
37611
37612
37613
37614
37615
37616
37617
37618
37619
37620
37621
37622
37623
37624
37625
37626
37627
37628
37629
37630
37631
37632
37633
37634
37635
37636
37637
37638
37639
37640
37641
37642
37643
37644
37645
37646
37647
37648
37649
37650
37651
37652
37653
37654
37655
37656
37657
37658
37659
37660
37661
37662
37663
37664
37665
37666
37667
37668
37669
37670
37671
37672
37673
37674
37675
37676
37677
37678
37679
37680
37681
37682
37683
37684
37685
37686
37687
37688
37689
37690
37691
37692
37693
37694
37695
37696
37697
37698
37699
37700
37701
37702
37703
37704
37705
37706
37707
37708
37709
37710
37711
37712
37713
37714
37715
37716
37717
37718
37719
37720
37721
37722
37723
37724
37725
37726
37727
37728
37729
37730
37731
37732
37733
37734
37735
37736
37737
37738
37739
37740
37741
37742
37743
37744
37745
37746
37747
37748
37749
37750
37751
37752
37753
37754
37755
37756
37757
37758
37759
37760
37761
37762
37763
37764
37765
37766
37767
37768
37769
37770
37771
37772
37773
37774
37775
37776
37777
37778
37779
37780
37781
37782
37783
37784
37785
37786
37787
37788
37789
37790
37791
37792
37793
37794
37795
37796
37797
37798
37799
37800
37801
37802
37803
37804
37805
37806
37807
37808
37809
37810
37811
37812
37813
37814
37815
37816
37817
37818
37819
37820
37821
37822
37823
37824
37825
37826
37827
37828
37829
37830
37831
37832
37833
37834
37835
37836
37837
37838
37839
37840
37841
37842
37843
37844
37845
37846
37847
37848
37849
37850
37851
37852
37853
37854
37855
37856
37857
37858
37859
37860
37861
37862
37863
37864
37865
37866
37867
37868
37869
37870
37871
37872
37873
37874
37875
37876
37877
37878
37879
37880
37881
37882
37883
37884
37885
37886
37887
37888
37889
37890
37891
37892
37893
37894
37895
37896
37897
37898
37899
37900
37901
37902
37903
37904
37905
37906
37907
37908
37909
37910
37911
37912
37913
37914
37915
37916
37917
37918
37919
37920
37921
37922
37923
37924
37925
37926
37927
37928
37929
37930
37931
37932
37933
37934
37935
37936
37937
37938
37939
37940
37941
37942
37943
37944
37945
37946
37947
37948
37949
37950
37951
37952
37953
37954
37955
37956
37957
37958
37959
37960
37961
37962
37963
37964
37965
37966
37967
37968
37969
37970
37971
37972
37973
37974
37975
37976
37977
37978
37979
37980
37981
37982
37983
37984
37985
37986
37987
37988
37989
37990
37991
37992
37993
37994
37995
37996
37997
37998
37999
38000
38001
38002
38003
38004
38005
38006
38007
38008
38009
38010
38011
38012
38013
38014
38015
38016
38017
38018
38019
38020
38021
38022
38023
38024
38025
38026
38027
38028
38029
38030
38031
38032
38033
38034
38035
38036
38037
38038
38039
38040
38041
38042
38043
38044
38045
38046
38047
38048
38049
38050
38051
38052
38053
38054
38055
38056
38057
38058
38059
38060
38061
38062
38063
38064
38065
38066
38067
38068
38069
38070
38071
38072
38073
38074
38075
38076
38077
38078
38079
38080
38081
38082
38083
38084
38085
38086
38087
38088
38089
38090
38091
38092
38093
38094
38095
38096
38097
38098
38099
38100
38101
38102
38103
38104
38105
38106
38107
38108
38109
38110
38111
38112
38113
38114
38115
38116
38117
38118
38119
38120
38121
38122
38123
38124
38125
38126
38127
38128
38129
38130
38131
38132
38133
38134
38135
38136
38137
38138
38139
38140
38141
38142
38143
38144
38145
38146
38147
38148
38149
38150
38151
38152
38153
38154
38155
38156
38157
38158
38159
38160
38161
38162
38163
38164
38165
38166
38167
38168
38169
38170
38171
38172
38173
38174
38175
38176
38177
38178
38179
38180
38181
38182
38183
38184
38185
38186
38187
38188
38189
38190
38191
38192
38193
38194
38195
38196
38197
38198
38199
38200
38201
38202
38203
38204
38205
38206
38207
38208
38209
38210
38211
38212
38213
38214
38215
38216
38217
38218
38219
38220
38221
38222
38223
38224
38225
38226
38227
38228
38229
38230
38231
38232
38233
38234
38235
38236
38237
38238
38239
38240
38241
38242
38243
38244
38245
38246
38247
38248
38249
38250
38251
38252
38253
38254
38255
38256
38257
38258
38259
38260
38261
38262
38263
38264
38265
38266
38267
38268
38269
38270
38271
38272
38273
38274
38275
38276
38277
38278
38279
38280
38281
38282
38283
38284
38285
38286
38287
38288
38289
38290
38291
38292
38293
38294
38295
38296
38297
38298
38299
38300
38301
38302
38303
38304
38305
38306
38307
38308
38309
38310
38311
38312
38313
38314
38315
38316
38317
38318
38319
38320
38321
38322
38323
38324
38325
38326
38327
38328
38329
38330
38331
38332
38333
38334
38335
38336
38337
38338
38339
38340
38341
38342
38343
38344
38345
38346
38347
38348
38349
38350
38351
38352
38353
38354
38355
38356
38357
38358
38359
38360
38361
38362
38363
38364
38365
38366
38367
38368
38369
38370
38371
38372
38373
38374
38375
38376
38377
38378
38379
38380
38381
38382
38383
38384
38385
38386
38387
38388
38389
38390
38391
38392
38393
38394
38395
38396
38397
38398
38399
38400
38401
38402
38403
38404
38405
38406
38407
38408
38409
38410
38411
38412
38413
38414
38415
38416
38417
38418
38419
38420
38421
38422
38423
38424
38425
38426
38427
38428
38429
38430
38431
38432
38433
38434
38435
38436
38437
38438
38439
38440
38441
38442
38443
38444
38445
38446
38447
38448
38449
38450
38451
38452
38453
38454
38455
38456
38457
38458
38459
38460
38461
38462
38463
38464
38465
38466
38467
38468
38469
38470
38471
38472
38473
38474
38475
38476
38477
38478
38479
38480
38481
38482
38483
38484
38485
38486
38487
38488
38489
38490
38491
38492
38493
38494
38495
38496
38497
38498
38499
38500
38501
38502
38503
38504
38505
38506
38507
38508
38509
38510
38511
38512
38513
38514
38515
38516
38517
38518
38519
38520
38521
38522
38523
38524
38525
38526
38527
38528
38529
38530
38531
38532
38533
38534
38535
38536
38537
38538
38539
38540
38541
38542
38543
38544
38545
38546
38547
38548
38549
38550
38551
38552
38553
38554
38555
38556
38557
38558
38559
38560
38561
38562
38563
38564
38565
38566
38567
38568
38569
38570
38571
38572
38573
38574
38575
38576
38577
38578
38579
38580
38581
38582
38583
38584
38585
38586
38587
38588
38589
38590
38591
38592
38593
38594
38595
38596
38597
38598
38599
38600
38601
38602
38603
38604
38605
38606
38607
38608
38609
38610
38611
38612
38613
38614
38615
38616
38617
38618
38619
38620
38621
38622
38623
38624
38625
38626
38627
38628
38629
38630
38631
38632
38633
38634
38635
38636
38637
38638
38639
38640
38641
38642
38643
38644
38645
38646
38647
38648
38649
38650
38651
38652
38653
38654
38655
38656
38657
38658
38659
38660
38661
38662
38663
38664
38665
38666
38667
38668
38669
38670
38671
38672
38673
38674
38675
38676
38677
38678
38679
38680
38681
38682
38683
38684
38685
38686
38687
38688
38689
38690
38691
38692
38693
38694
38695
38696
38697
38698
38699
38700
38701
38702
38703
38704
38705
38706
38707
38708
38709
38710
38711
38712
38713
38714
38715
38716
38717
38718
38719
38720
38721
38722
38723
38724
38725
38726
38727
38728
38729
38730
38731
38732
38733
38734
38735
38736
38737
38738
38739
38740
38741
38742
38743
38744
38745
38746
38747
38748
38749
38750
38751
38752
38753
38754
38755
38756
38757
38758
38759
38760
38761
38762
38763
38764
38765
38766
38767
38768
38769
38770
38771
38772
38773
38774
38775
38776
38777
38778
38779
38780
38781
38782
38783
38784
38785
38786
38787
38788
38789
38790
38791
38792
38793
38794
38795
38796
38797
38798
38799
38800
38801
38802
38803
38804
38805
38806
38807
38808
38809
38810
38811
38812
38813
38814
38815
38816
38817
38818
38819
38820
38821
38822
38823
38824
38825
38826
38827
38828
38829
38830
38831
38832
38833
38834
38835
38836
38837
38838
38839
38840
38841
38842
38843
38844
38845
38846
38847
38848
38849
38850
38851
38852
38853
38854
38855
38856
38857
38858
38859
38860
38861
38862
38863
38864
38865
38866
38867
38868
38869
38870
38871
38872
38873
38874
38875
38876
38877
38878
38879
38880
38881
38882
38883
38884
38885
38886
38887
38888
38889
38890
38891
38892
38893
38894
38895
38896
38897
38898
38899
38900
38901
38902
38903
38904
38905
38906
38907
38908
38909
38910
38911
38912
38913
38914
38915
38916
38917
38918
38919
38920
38921
38922
38923
38924
38925
38926
38927
38928
38929
38930
38931
38932
38933
38934
38935
38936
38937
38938
38939
38940
38941
38942
38943
38944
38945
38946
38947
38948
38949
38950
38951
38952
38953
38954
38955
38956
38957
38958
38959
38960
38961
38962
38963
38964
38965
38966
38967
38968
38969
38970
38971
38972
38973
38974
38975
38976
38977
38978
38979
38980
38981
38982
38983
38984
38985
38986
38987
38988
38989
38990
38991
38992
38993
38994
38995
38996
38997
38998
38999
39000
39001
39002
39003
39004
39005
39006
39007
39008
39009
39010
39011
39012
39013
39014
39015
39016
39017
39018
39019
39020
39021
39022
39023
39024
39025
39026
39027
39028
39029
39030
39031
39032
39033
39034
39035
39036
39037
39038
39039
39040
39041
39042
39043
39044
39045
39046
39047
39048
39049
39050
39051
39052
39053
39054
39055
39056
39057
39058
39059
39060
39061
39062
39063
39064
39065
39066
39067
39068
39069
39070
39071
39072
39073
39074
39075
39076
39077
39078
39079
39080
39081
39082
39083
39084
39085
39086
39087
39088
39089
39090
39091
39092
39093
39094
39095
39096
39097
39098
39099
39100
39101
39102
39103
39104
39105
39106
39107
39108
39109
39110
39111
39112
39113
39114
39115
39116
39117
39118
39119
39120
39121
39122
39123
39124
39125
39126
39127
39128
39129
39130
39131
39132
39133
39134
39135
39136
39137
39138
39139
39140
39141
39142
39143
39144
39145
39146
39147
39148
39149
39150
39151
39152
39153
39154
39155
39156
39157
39158
39159
39160
39161
39162
39163
39164
39165
39166
39167
39168
39169
39170
39171
39172
39173
39174
39175
39176
39177
39178
39179
39180
39181
39182
39183
39184
39185
39186
39187
39188
39189
39190
39191
39192
39193
39194
39195
39196
39197
39198
39199
39200
39201
39202
39203
39204
39205
39206
39207
39208
39209
39210
39211
39212
39213
39214
39215
39216
39217
39218
39219
39220
39221
39222
39223
39224
39225
39226
39227
39228
39229
39230
39231
39232
39233
39234
39235
39236
39237
39238
39239
39240
39241
39242
39243
39244
39245
39246
39247
39248
39249
39250
39251
39252
39253
39254
39255
39256
39257
39258
39259
39260
39261
39262
39263
39264
39265
39266
39267
39268
39269
39270
39271
39272
39273
39274
39275
39276
39277
39278
39279
39280
39281
39282
39283
39284
39285
39286
39287
39288
39289
39290
39291
39292
39293
39294
39295
39296
39297
39298
39299
39300
39301
39302
39303
39304
39305
39306
39307
39308
39309
39310
39311
39312
39313
39314
39315
39316
39317
39318
39319
39320
39321
39322
39323
39324
39325
39326
39327
39328
39329
39330
39331
39332
39333
39334
39335
39336
39337
39338
39339
39340
39341
39342
39343
39344
39345
39346
39347
39348
39349
39350
39351
39352
39353
39354
39355
39356
39357
39358
39359
39360
39361
39362
39363
39364
39365
39366
39367
39368
39369
39370
39371
39372
39373
39374
39375
39376
39377
39378
39379
39380
39381
39382
39383
39384
39385
39386
39387
39388
39389
39390
39391
39392
39393
39394
39395
39396
39397
39398
39399
39400
39401
39402
39403
39404
39405
39406
39407
39408
39409
39410
39411
39412
39413
39414
39415
39416
39417
39418
39419
39420
39421
39422
39423
39424
39425
39426
39427
39428
39429
39430
39431
39432
39433
39434
39435
39436
39437
39438
39439
39440
39441
39442
39443
39444
39445
39446
39447
39448
39449
39450
39451
39452
39453
39454
39455
39456
39457
39458
39459
39460
39461
39462
39463
39464
39465
39466
39467
39468
39469
39470
39471
39472
39473
39474
39475
39476
39477
39478
39479
39480
39481
39482
39483
39484
39485
39486
39487
39488
39489
39490
39491
39492
39493
39494
39495
39496
39497
39498
39499
39500
39501
39502
39503
39504
39505
39506
39507
39508
39509
39510
39511
39512
39513
39514
39515
39516
39517
39518
39519
39520
39521
39522
39523
39524
39525
39526
39527
39528
39529
39530
39531
39532
39533
39534
39535
39536
39537
39538
39539
39540
39541
39542
39543
39544
39545
39546
39547
39548
39549
39550
39551
39552
39553
39554
39555
39556
39557
39558
39559
39560
39561
39562
39563
39564
39565
39566
39567
39568
39569
39570
39571
39572
39573
39574
39575
39576
39577
39578
39579
39580
39581
39582
39583
39584
39585
39586
39587
39588
39589
39590
39591
39592
39593
39594
39595
39596
39597
39598
39599
39600
39601
39602
39603
39604
39605
39606
39607
39608
39609
39610
39611
39612
39613
39614
39615
39616
39617
39618
39619
39620
39621
39622
39623
39624
39625
39626
39627
39628
39629
39630
39631
39632
39633
39634
39635
39636
39637
39638
39639
39640
39641
39642
39643
39644
39645
39646
39647
39648
39649
39650
39651
39652
39653
39654
39655
39656
39657
39658
39659
39660
39661
39662
39663
39664
39665
39666
39667
39668
39669
39670
39671
39672
39673
39674
39675
39676
39677
39678
39679
39680
39681
39682
39683
39684
39685
39686
39687
39688
39689
39690
39691
39692
39693
39694
39695
39696
39697
39698
39699
39700
39701
39702
39703
39704
39705
39706
39707
39708
39709
39710
39711
39712
39713
39714
39715
39716
39717
39718
39719
39720
39721
39722
39723
39724
39725
39726
39727
39728
39729
39730
39731
39732
39733
39734
39735
39736
39737
39738
39739
39740
39741
39742
39743
39744
39745
39746
39747
39748
39749
39750
39751
39752
39753
39754
39755
39756
39757
39758
39759
39760
39761
39762
39763
39764
39765
39766
39767
39768
39769
39770
39771
39772
39773
39774
39775
39776
39777
39778
39779
39780
39781
39782
39783
39784
39785
39786
39787
39788
39789
39790
39791
39792
39793
39794
39795
39796
39797
39798
39799
39800
39801
39802
39803
39804
39805
39806
39807
39808
39809
39810
39811
39812
39813
39814
39815
39816
39817
39818
39819
39820
39821
39822
39823
39824
39825
39826
39827
39828
39829
39830
39831
39832
39833
39834
39835
39836
39837
39838
39839
39840
39841
39842
39843
39844
39845
39846
39847
39848
39849
39850
39851
39852
39853
39854
39855
39856
39857
39858
39859
39860
39861
39862
39863
39864
39865
39866
39867
39868
39869
39870
39871
39872
39873
39874
39875
39876
39877
39878
39879
39880
39881
39882
39883
39884
39885
39886
39887
39888
39889
39890
39891
39892
39893
39894
39895
39896
39897
39898
39899
39900
39901
39902
39903
39904
39905
39906
39907
39908
39909
39910
39911
39912
39913
39914
39915
39916
39917
39918
39919
39920
39921
39922
39923
39924
39925
39926
39927
39928
39929
39930
39931
39932
39933
39934
39935
39936
39937
39938
39939
39940
39941
39942
39943
39944
39945
39946
39947
39948
39949
39950
39951
39952
39953
39954
39955
39956
39957
39958
39959
39960
39961
39962
39963
39964
39965
39966
39967
39968
39969
39970
39971
39972
39973
39974
39975
39976
39977
39978
39979
39980
39981
39982
39983
39984
39985
39986
39987
39988
39989
39990
39991
39992
39993
39994
39995
39996
39997
39998
39999
40000
40001
40002
40003
40004
40005
40006
40007
40008
40009
40010
40011
40012
40013
40014
40015
40016
40017
40018
40019
40020
40021
40022
40023
40024
40025
40026
40027
40028
40029
40030
40031
40032
40033
40034
40035
40036
40037
40038
40039
40040
40041
40042
40043
40044
40045
40046
40047
40048
40049
40050
40051
40052
40053
40054
40055
40056
40057
40058
40059
40060
40061
40062
40063
40064
40065
40066
40067
40068
40069
40070
40071
40072
40073
40074
40075
40076
40077
40078
40079
40080
40081
40082
40083
40084
40085
40086
40087
40088
40089
40090
40091
40092
40093
40094
40095
40096
40097
40098
40099
40100
40101
40102
40103
40104
40105
40106
40107
40108
40109
40110
40111
40112
40113
40114
40115
40116
40117
40118
40119
40120
40121
40122
40123
40124
40125
40126
40127
40128
40129
40130
40131
40132
40133
40134
40135
40136
40137
40138
40139
40140
40141
40142
40143
40144
40145
40146
40147
40148
40149
40150
40151
40152
40153
40154
40155
40156
40157
40158
40159
40160
40161
40162
40163
40164
40165
40166
40167
40168
40169
40170
40171
40172
40173
40174
40175
40176
40177
40178
40179
40180
40181
40182
40183
40184
40185
40186
40187
40188
40189
40190
40191
40192
40193
40194
40195
40196
40197
40198
40199
40200
40201
40202
40203
40204
40205
40206
40207
40208
40209
40210
40211
40212
40213
40214
40215
40216
40217
40218
40219
40220
40221
40222
40223
40224
40225
40226
40227
40228
40229
40230
40231
40232
40233
40234
40235
40236
40237
40238
40239
40240
40241
40242
40243
40244
40245
40246
40247
40248
40249
40250
40251
40252
40253
40254
40255
40256
40257
40258
40259
40260
40261
40262
40263
40264
40265
40266
40267
40268
40269
40270
40271
40272
40273
40274
40275
40276
40277
40278
40279
40280
40281
40282
40283
40284
40285
40286
40287
40288
40289
40290
40291
40292
40293
40294
40295
40296
40297
40298
40299
40300
40301
40302
40303
40304
40305
40306
40307
40308
40309
40310
40311
40312
40313
40314
40315
40316
40317
40318
40319
40320
40321
40322
40323
40324
40325
40326
40327
40328
40329
40330
40331
40332
40333
40334
40335
40336
40337
40338
40339
40340
40341
40342
40343
40344
40345
40346
40347
40348
40349
40350
40351
40352
40353
40354
40355
40356
40357
40358
40359
40360
40361
40362
40363
40364
40365
40366
40367
40368
40369
40370
40371
40372
40373
40374
40375
40376
40377
40378
40379
40380
40381
40382
40383
40384
40385
40386
40387
40388
40389
40390
40391
40392
40393
40394
40395
40396
40397
40398
40399
40400
40401
40402
40403
40404
40405
40406
40407
40408
40409
40410
40411
40412
40413
40414
40415
40416
40417
40418
40419
40420
40421
40422
40423
40424
40425
40426
40427
40428
40429
40430
40431
40432
40433
40434
40435
40436
40437
40438
40439
40440
40441
40442
40443
40444
40445
40446
40447
40448
40449
40450
40451
40452
40453
40454
40455
40456
40457
40458
40459
40460
40461
40462
40463
40464
40465
40466
40467
40468
40469
40470
40471
40472
40473
40474
40475
40476
40477
40478
40479
40480
40481
40482
40483
40484
40485
40486
40487
40488
40489
40490
40491
40492
40493
40494
40495
40496
40497
40498
40499
40500
40501
40502
40503
40504
40505
40506
40507
40508
40509
40510
40511
40512
40513
40514
40515
40516
40517
40518
40519
40520
40521
40522
40523
40524
40525
40526
40527
40528
40529
40530
40531
40532
40533
40534
40535
40536
40537
40538
40539
40540
40541
40542
40543
40544
40545
40546
40547
40548
40549
40550
40551
40552
40553
40554
40555
40556
40557
40558
40559
40560
40561
40562
40563
40564
40565
40566
40567
40568
40569
40570
40571
40572
40573
40574
40575
40576
40577
40578
40579
40580
40581
40582
40583
40584
40585
40586
40587
40588
40589
40590
40591
40592
40593
40594
40595
40596
40597
40598
40599
40600
40601
40602
40603
40604
40605
40606
40607
40608
40609
40610
40611
40612
40613
40614
40615
40616
40617
40618
40619
40620
40621
40622
40623
40624
40625
40626
40627
40628
40629
40630
40631
40632
40633
40634
40635
40636
40637
40638
40639
40640
40641
40642
40643
40644
40645
40646
40647
40648
40649
40650
40651
40652
40653
40654
40655
40656
40657
40658
40659
40660
40661
40662
40663
40664
40665
40666
40667
40668
40669
40670
40671
40672
40673
40674
40675
40676
40677
40678
40679
40680
40681
40682
40683
40684
40685
40686
40687
40688
40689
40690
40691
40692
40693
40694
40695
40696
40697
40698
40699
40700
40701
40702
40703
40704
40705
40706
40707
40708
40709
40710
40711
40712
40713
40714
40715
40716
40717
40718
40719
40720
40721
40722
40723
40724
40725
40726
40727
40728
40729
40730
40731
40732
40733
40734
40735
40736
40737
40738
40739
40740
40741
40742
40743
40744
40745
40746
40747
40748
40749
40750
40751
40752
40753
40754
40755
40756
40757
40758
40759
40760
40761
40762
40763
40764
40765
40766
40767
40768
40769
40770
40771
40772
40773
40774
40775
40776
40777
40778
40779
40780
40781
40782
40783
40784
40785
40786
40787
40788
40789
40790
40791
40792
40793
40794
40795
40796
40797
40798
40799
40800
40801
40802
40803
40804
40805
40806
40807
40808
40809
40810
40811
40812
40813
40814
40815
40816
40817
40818
40819
40820
40821
40822
40823
40824
40825
40826
40827
40828
40829
40830
40831
40832
40833
40834
40835
40836
40837
40838
40839
40840
40841
40842
40843
40844
40845
40846
40847
40848
40849
40850
40851
40852
40853
40854
40855
40856
40857
40858
40859
40860
40861
40862
40863
40864
40865
40866
40867
40868
40869
40870
40871
40872
40873
40874
40875
40876
40877
40878
40879
40880
40881
40882
40883
40884
40885
40886
40887
40888
40889
40890
40891
40892
40893
40894
40895
40896
40897
40898
40899
40900
40901
40902
40903
40904
40905
40906
40907
40908
40909
40910
40911
40912
40913
40914
40915
40916
40917
40918
40919
40920
40921
40922
40923
40924
40925
40926
40927
40928
40929
40930
40931
40932
40933
40934
40935
40936
40937
40938
40939
40940
40941
40942
40943
40944
40945
40946
40947
40948
40949
40950
40951
40952
40953
40954
40955
40956
40957
40958
40959
40960
40961
40962
40963
40964
40965
40966
40967
40968
40969
40970
40971
40972
40973
40974
40975
40976
40977
40978
40979
40980
40981
40982
40983
40984
40985
40986
40987
40988
40989
40990
40991
40992
40993
40994
40995
40996
40997
40998
40999
41000
41001
41002
41003
41004
41005
41006
41007
41008
41009
41010
41011
41012
41013
41014
41015
41016
41017
41018
41019
41020
41021
41022
41023
41024
41025
41026
41027
41028
41029
41030
41031
41032
41033
41034
41035
41036
41037
41038
41039
41040
41041
41042
41043
41044
41045
41046
41047
41048
41049
41050
41051
41052
41053
41054
41055
41056
41057
41058
41059
41060
41061
41062
41063
41064
41065
41066
41067
41068
41069
41070
41071
41072
41073
41074
41075
41076
41077
41078
41079
41080
41081
41082
41083
41084
41085
41086
41087
41088
41089
41090
41091
41092
41093
41094
41095
41096
41097
41098
41099
41100
41101
41102
41103
41104
41105
41106
41107
41108
41109
41110
41111
41112
41113
41114
41115
41116
41117
41118
41119
41120
41121
41122
41123
41124
41125
41126
41127
41128
41129
41130
41131
41132
41133
41134
41135
41136
41137
41138
41139
41140
41141
41142
41143
41144
41145
41146
41147
41148
41149
41150
41151
41152
41153
41154
41155
41156
41157
41158
41159
41160
41161
41162
41163
41164
41165
41166
41167
41168
41169
41170
41171
41172
41173
41174
41175
41176
41177
41178
41179
41180
41181
41182
41183
41184
41185
41186
41187
41188
41189
41190
41191
41192
41193
41194
41195
41196
41197
41198
41199
41200
41201
41202
41203
41204
41205
41206
41207
41208
41209
41210
41211
41212
41213
41214
41215
41216
41217
41218
41219
41220
41221
41222
41223
41224
41225
41226
41227
41228
41229
41230
41231
41232
41233
41234
41235
41236
41237
41238
41239
41240
41241
41242
41243
41244
41245
41246
41247
41248
41249
41250
41251
41252
41253
41254
41255
41256
41257
41258
41259
41260
41261
41262
41263
41264
41265
41266
41267
41268
41269
41270
41271
41272
41273
41274
41275
41276
41277
41278
41279
41280
41281
41282
41283
41284
41285
41286
41287
41288
41289
41290
41291
41292
41293
41294
41295
41296
41297
41298
41299
41300
41301
41302
41303
41304
41305
41306
41307
41308
41309
41310
41311
41312
41313
41314
41315
41316
41317
41318
41319
41320
41321
41322
41323
41324
41325
41326
41327
41328
41329
41330
41331
41332
41333
41334
41335
41336
41337
41338
41339
41340
41341
41342
41343
41344
41345
41346
41347
41348
41349
41350
41351
41352
41353
41354
41355
41356
41357
41358
41359
41360
41361
41362
41363
41364
41365
41366
41367
41368
41369
41370
41371
41372
41373
41374
41375
41376
41377
41378
41379
41380
41381
41382
41383
41384
41385
41386
41387
41388
41389
41390
41391
41392
41393
41394
41395
41396
41397
41398
41399
41400
41401
41402
41403
41404
41405
41406
41407
41408
41409
41410
41411
41412
41413
41414
41415
41416
41417
41418
41419
41420
41421
41422
41423
41424
41425
41426
41427
41428
41429
41430
41431
41432
41433
41434
41435
41436
41437
41438
41439
41440
41441
41442
41443
41444
41445
41446
41447
41448
41449
41450
41451
41452
41453
41454
41455
41456
41457
41458
41459
41460
41461
41462
41463
41464
41465
41466
41467
41468
41469
41470
41471
41472
41473
41474
41475
41476
41477
41478
41479
41480
41481
41482
41483
41484
41485
41486
41487
41488
41489
41490
41491
41492
41493
41494
41495
41496
41497
41498
41499
41500
41501
41502
41503
41504
41505
41506
41507
41508
41509
41510
41511
41512
41513
41514
41515
41516
41517
41518
41519
41520
41521
41522
41523
41524
41525
41526
41527
41528
41529
41530
41531
41532
41533
41534
41535
41536
41537
41538
41539
41540
41541
41542
41543
41544
41545
41546
41547
41548
41549
41550
41551
41552
41553
41554
41555
41556
41557
41558
41559
41560
41561
41562
41563
41564
41565
41566
41567
41568
41569
41570
41571
41572
41573
41574
41575
41576
41577
41578
41579
41580
41581
41582
41583
41584
41585
41586
41587
41588
41589
41590
41591
41592
41593
41594
41595
41596
41597
41598
41599
41600
41601
41602
41603
41604
41605
41606
41607
41608
41609
41610
41611
41612
41613
41614
41615
41616
41617
41618
41619
41620
41621
41622
41623
41624
41625
41626
41627
41628
41629
41630
41631
41632
41633
41634
41635
41636
41637
41638
41639
41640
41641
41642
41643
41644
41645
41646
41647
41648
41649
41650
41651
41652
41653
41654
41655
41656
41657
41658
41659
41660
41661
41662
41663
41664
41665
41666
41667
41668
41669
41670
41671
41672
41673
41674
41675
41676
41677
41678
41679
41680
41681
41682
41683
41684
41685
41686
41687
41688
41689
41690
41691
41692
41693
41694
41695
41696
41697
41698
41699
41700
41701
41702
41703
41704
41705
41706
41707
41708
41709
41710
41711
41712
41713
41714
41715
41716
41717
41718
41719
41720
41721
41722
41723
41724
41725
41726
41727
41728
41729
41730
41731
41732
41733
41734
41735
41736
41737
41738
41739
41740
41741
41742
41743
41744
41745
41746
41747
41748
41749
41750
41751
41752
41753
41754
41755
41756
41757
41758
41759
41760
41761
41762
41763
41764
41765
41766
41767
41768
41769
41770
41771
41772
41773
41774
41775
41776
41777
41778
41779
41780
41781
41782
41783
41784
41785
41786
41787
41788
41789
41790
41791
41792
41793
41794
41795
41796
41797
41798
41799
41800
41801
41802
41803
41804
41805
41806
41807
41808
41809
41810
41811
41812
41813
41814
41815
41816
41817
41818
41819
41820
41821
41822
41823
41824
41825
41826
41827
41828
41829
41830
41831
41832
41833
41834
41835
41836
41837
41838
41839
41840
41841
41842
41843
41844
41845
41846
41847
41848
41849
41850
41851
41852
41853
41854
41855
41856
41857
41858
41859
41860
41861
41862
41863
41864
41865
41866
41867
41868
41869
41870
41871
41872
41873
41874
41875
41876
41877
41878
41879
41880
41881
41882
41883
41884
41885
41886
41887
41888
41889
41890
41891
41892
41893
41894
41895
41896
41897
41898
41899
41900
41901
41902
41903
41904
41905
41906
41907
41908
41909
41910
41911
41912
41913
41914
41915
41916
41917
41918
41919
41920
41921
41922
41923
41924
41925
41926
41927
41928
41929
41930
41931
41932
41933
41934
41935
41936
41937
41938
41939
41940
41941
41942
41943
41944
41945
41946
41947
41948
41949
41950
41951
41952
41953
41954
41955
41956
41957
41958
41959
41960
41961
41962
41963
41964
41965
41966
41967
41968
41969
41970
41971
41972
41973
41974
41975
41976
41977
41978
41979
41980
41981
41982
41983
41984
41985
41986
41987
41988
41989
41990
41991
41992
41993
41994
41995
41996
41997
41998
41999
42000
42001
42002
42003
42004
42005
42006
42007
42008
42009
42010
42011
42012
42013
42014
42015
42016
42017
42018
42019
42020
42021
42022
42023
42024
42025
42026
42027
42028
42029
42030
42031
42032
42033
42034
42035
42036
42037
42038
42039
42040
42041
42042
42043
42044
42045
42046
42047
42048
42049
42050
42051
42052
42053
42054
42055
42056
42057
42058
42059
42060
42061
42062
42063
42064
42065
42066
42067
42068
42069
42070
42071
42072
42073
42074
42075
42076
42077
42078
42079
42080
42081
42082
42083
42084
42085
42086
42087
42088
42089
42090
42091
42092
42093
42094
42095
42096
42097
42098
42099
42100
42101
42102
42103
42104
42105
42106
42107
42108
42109
42110
42111
42112
42113
42114
42115
42116
42117
42118
42119
42120
42121
42122
42123
42124
42125
42126
42127
42128
42129
42130
42131
42132
42133
42134
42135
42136
42137
42138
42139
42140
42141
42142
42143
42144
42145
42146
42147
42148
42149
42150
42151
42152
42153
42154
42155
42156
42157
42158
42159
42160
42161
42162
42163
42164
42165
42166
42167
42168
42169
42170
42171
42172
42173
42174
42175
42176
42177
42178
42179
42180
42181
42182
42183
42184
42185
42186
42187
42188
42189
42190
42191
42192
42193
42194
42195
42196
42197
42198
42199
42200
42201
42202
42203
42204
42205
42206
42207
42208
42209
42210
42211
42212
42213
42214
42215
42216
42217
42218
42219
42220
42221
42222
42223
42224
42225
42226
42227
42228
42229
42230
42231
42232
42233
42234
42235
42236
42237
42238
42239
42240
42241
42242
42243
42244
42245
42246
42247
42248
42249
42250
42251
42252
42253
42254
42255
42256
42257
42258
42259
42260
42261
42262
42263
42264
42265
42266
42267
42268
42269
42270
42271
42272
42273
42274
42275
42276
42277
42278
42279
42280
42281
42282
42283
42284
42285
42286
42287
42288
42289
42290
42291
42292
42293
42294
42295
42296
42297
42298
42299
42300
42301
42302
42303
42304
42305
42306
42307
42308
42309
42310
42311
42312
42313
42314
42315
42316
42317
42318
42319
42320
42321
42322
42323
42324
42325
42326
42327
42328
42329
42330
42331
42332
42333
42334
42335
42336
42337
42338
42339
42340
42341
42342
42343
42344
42345
42346
42347
42348
42349
42350
42351
42352
42353
42354
42355
42356
42357
42358
42359
42360
42361
42362
42363
42364
42365
42366
42367
42368
42369
42370
42371
42372
42373
42374
42375
42376
42377
42378
42379
42380
42381
42382
42383
42384
42385
42386
42387
42388
42389
42390
42391
42392
42393
42394
42395
42396
42397
42398
42399
42400
42401
42402
42403
42404
42405
42406
42407
42408
42409
42410
42411
42412
42413
42414
42415
42416
42417
42418
42419
42420
42421
42422
42423
42424
42425
42426
42427
42428
42429
42430
42431
42432
42433
42434
42435
42436
42437
42438
42439
42440
42441
42442
42443
42444
42445
42446
42447
42448
42449
42450
42451
42452
42453
42454
42455
42456
42457
42458
42459
42460
42461
42462
42463
42464
42465
42466
42467
42468
42469
42470
42471
42472
42473
42474
42475
42476
42477
42478
42479
42480
42481
42482
42483
42484
42485
42486
42487
42488
42489
42490
42491
42492
42493
42494
42495
42496
42497
42498
42499
42500
42501
42502
42503
42504
42505
42506
42507
42508
42509
42510
42511
42512
42513
42514
42515
42516
42517
42518
42519
42520
42521
42522
42523
42524
42525
42526
42527
42528
42529
42530
42531
42532
42533
42534
42535
42536
42537
42538
42539
42540
42541
42542
42543
42544
42545
42546
42547
42548
42549
42550
42551
42552
42553
42554
42555
42556
42557
42558
42559
42560
42561
42562
42563
42564
42565
42566
42567
42568
42569
42570
42571
42572
42573
42574
42575
42576
42577
42578
42579
42580
42581
42582
42583
42584
42585
42586
42587
42588
42589
42590
42591
42592
42593
42594
42595
42596
42597
42598
42599
42600
42601
42602
42603
42604
42605
42606
42607
42608
42609
42610
42611
42612
42613
42614
42615
42616
42617
42618
42619
42620
42621
42622
42623
42624
42625
42626
42627
42628
42629
42630
42631
42632
42633
42634
42635
42636
42637
42638
42639
42640
42641
42642
42643
42644
42645
42646
42647
42648
42649
42650
42651
42652
42653
42654
42655
42656
42657
42658
42659
42660
42661
42662
42663
42664
42665
42666
42667
42668
42669
42670
42671
42672
42673
42674
42675
42676
42677
42678
42679
42680
42681
42682
42683
42684
42685
42686
42687
42688
42689
42690
42691
42692
42693
42694
42695
42696
42697
42698
42699
42700
42701
42702
42703
42704
42705
42706
42707
42708
42709
42710
42711
42712
42713
42714
42715
42716
42717
42718
42719
42720
42721
42722
42723
42724
42725
42726
42727
42728
42729
42730
42731
42732
42733
42734
42735
42736
42737
42738
42739
42740
42741
42742
42743
42744
42745
42746
42747
42748
42749
42750
42751
42752
42753
42754
42755
42756
42757
42758
42759
42760
42761
42762
42763
42764
42765
42766
42767
42768
42769
42770
42771
42772
42773
42774
42775
42776
42777
42778
42779
42780
42781
42782
42783
42784
42785
42786
42787
42788
42789
42790
42791
42792
42793
42794
42795
42796
42797
42798
42799
42800
42801
42802
42803
42804
42805
42806
42807
42808
42809
42810
42811
42812
42813
42814
42815
42816
42817
42818
42819
42820
42821
42822
42823
42824
42825
42826
42827
42828
42829
42830
42831
42832
42833
42834
42835
42836
42837
42838
42839
42840
42841
42842
42843
42844
42845
42846
42847
42848
42849
42850
42851
42852
42853
42854
42855
42856
42857
42858
42859
42860
42861
42862
42863
42864
42865
42866
42867
42868
42869
42870
42871
42872
42873
42874
42875
42876
42877
42878
42879
42880
42881
42882
42883
42884
42885
42886
42887
42888
42889
42890
42891
42892
42893
42894
42895
42896
42897
42898
42899
42900
42901
42902
42903
42904
42905
42906
42907
42908
42909
42910
42911
42912
42913
42914
42915
42916
42917
42918
42919
42920
42921
42922
42923
42924
42925
42926
42927
42928
42929
42930
42931
42932
42933
42934
42935
42936
42937
42938
42939
42940
42941
42942
42943
42944
42945
42946
42947
42948
42949
42950
42951
42952
42953
42954
42955
42956
42957
42958
42959
42960
42961
42962
42963
42964
42965
42966
42967
42968
42969
42970
42971
42972
42973
42974
42975
42976
42977
42978
42979
42980
42981
42982
42983
42984
42985
42986
42987
42988
42989
42990
42991
42992
42993
42994
42995
42996
42997
42998
42999
43000
43001
43002
43003
43004
43005
43006
43007
43008
43009
43010
43011
43012
43013
43014
43015
43016
43017
43018
43019
43020
43021
43022
43023
43024
43025
43026
43027
43028
43029
43030
43031
43032
43033
43034
43035
43036
43037
43038
43039
43040
43041
43042
43043
43044
43045
43046
43047
43048
43049
43050
43051
43052
43053
43054
43055
43056
43057
43058
43059
43060
43061
43062
43063
43064
43065
43066
43067
43068
43069
43070
43071
43072
43073
43074
43075
43076
43077
43078
43079
43080
43081
43082
43083
43084
43085
43086
43087
43088
43089
43090
43091
43092
43093
43094
43095
43096
43097
43098
43099
43100
43101
43102
43103
43104
43105
43106
43107
43108
43109
43110
43111
43112
43113
43114
43115
43116
43117
43118
43119
43120
43121
43122
43123
43124
43125
43126
43127
43128
43129
43130
43131
43132
43133
43134
43135
43136
43137
43138
43139
43140
43141
43142
43143
43144
43145
43146
43147
43148
43149
43150
43151
43152
43153
43154
43155
43156
43157
43158
43159
43160
43161
43162
43163
43164
43165
43166
43167
43168
43169
43170
43171
43172
43173
43174
43175
43176
43177
43178
43179
43180
43181
43182
43183
43184
43185
43186
43187
43188
43189
43190
43191
43192
43193
43194
43195
43196
43197
43198
43199
43200
43201
43202
43203
43204
43205
43206
43207
43208
43209
43210
43211
43212
43213
43214
43215
43216
43217
43218
43219
43220
43221
43222
43223
43224
43225
43226
43227
43228
43229
43230
43231
43232
43233
43234
43235
43236
43237
43238
43239
43240
43241
43242
43243
43244
43245
43246
43247
43248
43249
43250
43251
43252
43253
43254
43255
43256
43257
43258
43259
43260
43261
43262
43263
43264
43265
43266
43267
43268
43269
43270
43271
43272
43273
43274
43275
43276
43277
43278
43279
43280
43281
43282
43283
43284
43285
43286
43287
43288
43289
43290
43291
43292
43293
43294
43295
43296
43297
43298
43299
43300
43301
43302
43303
43304
43305
43306
43307
43308
43309
43310
43311
43312
43313
43314
43315
43316
43317
43318
43319
43320
43321
43322
43323
43324
43325
43326
43327
43328
43329
43330
43331
43332
43333
43334
43335
43336
43337
43338
43339
43340
43341
43342
43343
43344
43345
43346
43347
43348
43349
43350
43351
43352
43353
43354
43355
43356
43357
43358
43359
43360
43361
43362
43363
43364
43365
43366
43367
43368
43369
43370
43371
43372
43373
43374
43375
43376
43377
43378
43379
43380
43381
43382
43383
43384
43385
43386
43387
43388
43389
43390
43391
43392
43393
43394
43395
43396
43397
43398
43399
43400
43401
43402
43403
43404
43405
43406
43407
43408
43409
43410
43411
43412
43413
43414
43415
43416
43417
43418
43419
43420
43421
43422
43423
43424
43425
43426
43427
43428
43429
43430
43431
43432
43433
43434
43435
43436
43437
43438
43439
43440
43441
43442
43443
43444
43445
43446
43447
43448
43449
43450
43451
43452
43453
43454
43455
43456
43457
43458
43459
43460
43461
43462
43463
43464
43465
43466
43467
43468
43469
43470
43471
43472
43473
43474
43475
43476
43477
43478
43479
43480
43481
43482
43483
43484
43485
43486
43487
43488
43489
43490
43491
43492
43493
43494
43495
43496
43497
43498
43499
43500
43501
43502
43503
43504
43505
43506
43507
43508
43509
43510
43511
43512
43513
43514
43515
43516
43517
43518
43519
43520
43521
43522
43523
43524
43525
43526
43527
43528
43529
43530
43531
43532
43533
43534
43535
43536
43537
43538
43539
43540
43541
43542
43543
43544
43545
43546
43547
43548
43549
43550
43551
43552
43553
43554
43555
43556
43557
43558
43559
43560
43561
43562
43563
43564
43565
43566
43567
43568
43569
43570
43571
43572
43573
43574
43575
43576
43577
43578
43579
43580
43581
43582
43583
43584
43585
43586
43587
43588
43589
43590
43591
43592
43593
43594
43595
43596
43597
43598
43599
43600
43601
43602
43603
43604
43605
43606
43607
43608
43609
43610
43611
43612
43613
43614
43615
43616
43617
43618
43619
43620
43621
43622
43623
43624
43625
43626
43627
43628
43629
43630
43631
43632
43633
43634
43635
43636
43637
43638
43639
43640
43641
43642
43643
43644
43645
43646
43647
43648
43649
43650
43651
43652
43653
43654
43655
43656
43657
43658
43659
43660
43661
43662
43663
43664
43665
43666
43667
43668
43669
43670
43671
43672
43673
43674
43675
43676
43677
43678
43679
43680
43681
43682
43683
43684
43685
43686
43687
43688
43689
43690
43691
43692
43693
43694
43695
43696
43697
43698
43699
43700
43701
43702
43703
43704
43705
43706
43707
43708
43709
43710
43711
43712
43713
43714
43715
43716
43717
43718
43719
43720
43721
43722
43723
43724
43725
43726
43727
43728
43729
43730
43731
43732
43733
43734
43735
43736
43737
43738
43739
43740
43741
43742
43743
43744
43745
43746
43747
43748
43749
43750
43751
43752
43753
43754
43755
43756
43757
43758
43759
43760
43761
43762
43763
43764
43765
43766
43767
43768
43769
43770
43771
43772
43773
43774
43775
43776
43777
43778
43779
43780
43781
43782
43783
43784
43785
43786
43787
43788
43789
43790
43791
43792
43793
43794
43795
43796
43797
43798
43799
43800
43801
43802
43803
43804
43805
43806
43807
43808
43809
43810
43811
43812
43813
43814
43815
43816
43817
43818
43819
43820
43821
43822
43823
43824
43825
43826
43827
43828
43829
43830
43831
43832
43833
43834
43835
43836
43837
43838
43839
43840
43841
43842
43843
43844
43845
43846
43847
43848
43849
43850
43851
43852
43853
43854
43855
43856
43857
43858
43859
43860
43861
43862
43863
43864
43865
43866
43867
43868
43869
43870
43871
43872
43873
43874
43875
43876
43877
43878
43879
43880
43881
43882
43883
43884
43885
43886
43887
43888
43889
43890
43891
43892
43893
43894
43895
43896
43897
43898
43899
43900
43901
43902
43903
43904
43905
43906
43907
43908
43909
43910
43911
43912
43913
43914
43915
43916
43917
43918
43919
43920
43921
43922
43923
43924
43925
43926
43927
43928
43929
43930
43931
43932
43933
43934
43935
43936
43937
43938
43939
43940
43941
43942
43943
43944
43945
43946
43947
43948
43949
43950
43951
43952
43953
43954
43955
43956
43957
43958
43959
43960
43961
43962
43963
43964
43965
43966
43967
43968
43969
43970
43971
43972
43973
43974
43975
43976
43977
43978
43979
43980
43981
43982
43983
43984
43985
43986
43987
43988
43989
43990
43991
43992
43993
43994
43995
43996
43997
43998
43999
44000
44001
44002
44003
44004
44005
44006
44007
44008
44009
44010
44011
44012
44013
44014
44015
44016
44017
44018
44019
44020
44021
44022
44023
44024
44025
44026
44027
44028
44029
44030
44031
44032
44033
44034
44035
44036
44037
44038
44039
44040
44041
44042
44043
44044
44045
44046
44047
44048
44049
44050
44051
44052
44053
44054
44055
44056
44057
44058
44059
44060
44061
44062
44063
44064
44065
44066
44067
44068
44069
44070
44071
44072
44073
44074
44075
44076
44077
44078
44079
44080
44081
44082
44083
44084
44085
44086
44087
44088
44089
44090
44091
44092
44093
44094
44095
44096
44097
44098
44099
44100
44101
44102
44103
44104
44105
44106
44107
44108
44109
44110
44111
44112
44113
44114
44115
44116
44117
44118
44119
44120
44121
44122
44123
44124
44125
44126
44127
44128
44129
44130
44131
44132
44133
44134
44135
44136
44137
44138
44139
44140
44141
44142
44143
44144
44145
44146
44147
44148
44149
44150
44151
44152
44153
44154
44155
44156
44157
44158
44159
44160
44161
44162
44163
44164
44165
44166
44167
44168
44169
44170
44171
44172
44173
44174
44175
44176
44177
44178
44179
44180
44181
44182
44183
44184
44185
44186
44187
44188
44189
44190
44191
44192
44193
44194
44195
44196
44197
44198
44199
44200
44201
44202
44203
44204
44205
44206
44207
44208
44209
44210
44211
44212
44213
44214
44215
44216
44217
44218
44219
44220
44221
44222
44223
44224
44225
44226
44227
44228
44229
44230
44231
44232
44233
44234
44235
44236
44237
44238
44239
44240
44241
44242
44243
44244
44245
44246
44247
44248
44249
44250
44251
44252
44253
44254
44255
44256
44257
44258
44259
44260
44261
44262
44263
44264
44265
44266
44267
44268
44269
44270
44271
44272
44273
44274
44275
44276
44277
44278
44279
44280
44281
44282
44283
44284
44285
44286
44287
44288
44289
44290
44291
44292
44293
44294
44295
44296
44297
44298
44299
44300
44301
44302
44303
44304
44305
44306
44307
44308
44309
44310
44311
44312
44313
44314
44315
44316
44317
44318
44319
44320
44321
44322
44323
44324
44325
44326
44327
44328
44329
44330
44331
44332
44333
44334
44335
44336
44337
44338
44339
44340
44341
44342
44343
44344
44345
44346
44347
44348
44349
44350
44351
44352
44353
44354
44355
44356
44357
44358
44359
44360
44361
44362
44363
44364
44365
44366
44367
44368
44369
44370
44371
44372
44373
44374
44375
44376
44377
44378
44379
44380
44381
44382
44383
44384
44385
44386
44387
44388
44389
44390
44391
44392
44393
44394
44395
44396
44397
44398
44399
44400
44401
44402
44403
44404
44405
44406
44407
44408
44409
44410
44411
44412
44413
44414
44415
44416
44417
44418
44419
44420
44421
44422
44423
44424
44425
44426
44427
44428
44429
44430
44431
44432
44433
44434
44435
44436
44437
44438
44439
44440
44441
44442
44443
44444
44445
44446
44447
44448
44449
44450
44451
44452
44453
44454
44455
44456
44457
44458
44459
44460
44461
44462
44463
44464
44465
44466
44467
44468
44469
44470
44471
44472
44473
44474
44475
44476
44477
44478
44479
44480
44481
44482
44483
44484
44485
44486
44487
44488
44489
44490
44491
44492
44493
44494
44495
44496
44497
44498
44499
44500
44501
44502
44503
44504
44505
44506
44507
44508
44509
44510
44511
44512
44513
44514
44515
44516
44517
44518
44519
44520
44521
44522
44523
44524
44525
44526
44527
44528
44529
44530
44531
44532
44533
44534
44535
44536
44537
44538
44539
44540
44541
44542
44543
44544
44545
44546
44547
44548
44549
44550
44551
44552
44553
44554
44555
44556
44557
44558
44559
44560
44561
44562
44563
44564
44565
44566
44567
44568
44569
44570
44571
44572
44573
44574
44575
44576
44577
44578
44579
44580
44581
44582
44583
44584
44585
44586
44587
44588
44589
44590
44591
44592
44593
44594
44595
44596
44597
44598
44599
44600
44601
44602
44603
44604
44605
44606
44607
44608
44609
44610
44611
44612
44613
44614
44615
44616
44617
44618
44619
44620
44621
44622
44623
44624
44625
44626
44627
44628
44629
44630
44631
44632
44633
44634
44635
44636
44637
44638
44639
44640
44641
44642
44643
44644
44645
44646
44647
44648
44649
44650
44651
44652
44653
44654
44655
44656
44657
44658
44659
44660
44661
44662
44663
44664
44665
44666
44667
44668
44669
44670
44671
44672
44673
44674
44675
44676
44677
44678
44679
44680
44681
44682
44683
44684
44685
44686
44687
44688
44689
44690
44691
44692
44693
44694
44695
44696
44697
44698
44699
44700
44701
44702
44703
44704
44705
44706
44707
44708
44709
44710
44711
44712
44713
44714
44715
44716
44717
44718
44719
44720
44721
44722
44723
44724
44725
44726
44727
44728
44729
44730
44731
44732
44733
44734
44735
44736
44737
44738
44739
44740
44741
44742
44743
44744
44745
44746
44747
44748
44749
44750
44751
44752
44753
44754
44755
44756
44757
44758
44759
44760
44761
44762
44763
44764
44765
44766
44767
44768
44769
44770
44771
44772
44773
44774
44775
44776
44777
44778
44779
44780
44781
44782
44783
44784
44785
44786
44787
44788
44789
44790
44791
44792
44793
44794
44795
44796
44797
44798
44799
44800
44801
44802
44803
44804
44805
44806
44807
44808
44809
44810
44811
44812
44813
44814
44815
44816
44817
44818
44819
44820
44821
44822
44823
44824
44825
44826
44827
44828
44829
44830
44831
44832
44833
44834
44835
44836
44837
44838
44839
44840
44841
44842
44843
44844
44845
44846
44847
44848
44849
44850
44851
44852
44853
44854
44855
44856
44857
44858
44859
44860
44861
44862
44863
44864
44865
44866
44867
44868
44869
44870
44871
44872
44873
44874
44875
44876
44877
44878
44879
44880
44881
44882
44883
44884
44885
44886
44887
44888
44889
44890
44891
44892
44893
44894
44895
44896
44897
44898
44899
44900
44901
44902
44903
44904
44905
44906
44907
44908
44909
44910
44911
44912
44913
44914
44915
44916
44917
44918
44919
44920
44921
44922
44923
44924
44925
44926
44927
44928
44929
44930
44931
44932
44933
44934
44935
44936
44937
44938
44939
44940
44941
44942
44943
44944
44945
44946
44947
44948
44949
44950
44951
44952
44953
44954
44955
44956
44957
44958
44959
44960
44961
44962
44963
44964
44965
44966
44967
44968
44969
44970
44971
44972
44973
44974
44975
44976
44977
44978
44979
44980
44981
44982
44983
44984
44985
44986
44987
44988
44989
44990
44991
44992
44993
44994
44995
44996
44997
44998
44999
45000
45001
45002
45003
45004
45005
45006
45007
45008
45009
45010
45011
45012
45013
45014
45015
45016
45017
45018
45019
45020
45021
45022
45023
45024
45025
45026
45027
45028
45029
45030
45031
45032
45033
45034
45035
45036
45037
45038
45039
45040
45041
45042
45043
45044
45045
45046
45047
45048
45049
45050
45051
45052
45053
45054
45055
45056
45057
45058
45059
45060
45061
45062
45063
45064
45065
45066
45067
45068
45069
45070
45071
45072
45073
45074
45075
45076
45077
45078
45079
45080
45081
45082
45083
45084
45085
45086
45087
45088
45089
45090
45091
45092
45093
45094
45095
45096
45097
45098
45099
45100
45101
45102
45103
45104
45105
45106
45107
45108
45109
45110
45111
45112
45113
45114
45115
45116
45117
45118
45119
45120
45121
45122
45123
45124
45125
45126
45127
45128
45129
45130
45131
45132
45133
45134
45135
45136
45137
45138
45139
45140
45141
45142
45143
45144
45145
45146
45147
45148
45149
45150
45151
45152
45153
45154
45155
45156
45157
45158
45159
45160
45161
45162
45163
45164
45165
45166
45167
45168
45169
45170
45171
45172
45173
45174
45175
45176
45177
45178
45179
45180
45181
45182
45183
45184
45185
45186
45187
45188
45189
45190
45191
45192
45193
45194
45195
45196
45197
45198
45199
45200
45201
45202
45203
45204
45205
45206
45207
45208
45209
45210
45211
45212
45213
45214
45215
45216
45217
45218
45219
45220
45221
45222
45223
45224
45225
45226
45227
45228
45229
45230
45231
45232
45233
45234
45235
45236
45237
45238
45239
45240
45241
45242
45243
45244
45245
45246
45247
45248
45249
45250
45251
45252
45253
45254
45255
45256
45257
45258
45259
45260
45261
45262
45263
45264
45265
45266
45267
45268
45269
45270
45271
45272
45273
45274
45275
45276
45277
45278
45279
45280
45281
45282
45283
45284
45285
45286
45287
45288
45289
45290
45291
45292
45293
45294
45295
45296
45297
45298
45299
45300
45301
45302
45303
45304
45305
45306
45307
45308
45309
45310
45311
45312
45313
45314
45315
45316
45317
45318
45319
45320
45321
45322
45323
45324
45325
45326
45327
45328
45329
45330
45331
45332
45333
45334
45335
45336
45337
45338
45339
45340
45341
45342
45343
45344
45345
45346
45347
45348
45349
45350
45351
45352
45353
45354
45355
45356
45357
45358
45359
45360
45361
45362
45363
45364
45365
45366
45367
45368
45369
45370
45371
45372
45373
45374
45375
45376
45377
45378
45379
45380
45381
45382
45383
45384
45385
45386
45387
45388
45389
45390
45391
45392
45393
45394
45395
45396
45397
45398
45399
45400
45401
45402
45403
45404
45405
45406
45407
45408
45409
45410
45411
45412
45413
45414
45415
45416
45417
45418
45419
45420
45421
45422
45423
45424
45425
45426
45427
45428
45429
45430
45431
45432
45433
45434
45435
45436
45437
45438
45439
45440
45441
45442
45443
45444
45445
45446
45447
45448
45449
45450
45451
45452
45453
45454
45455
45456
45457
45458
45459
45460
45461
45462
45463
45464
45465
45466
45467
45468
45469
45470
45471
45472
45473
45474
45475
45476
45477
45478
45479
45480
45481
45482
45483
45484
45485
45486
45487
45488
45489
45490
45491
45492
45493
45494
45495
45496
45497
45498
45499
45500
45501
45502
45503
45504
45505
45506
45507
45508
45509
45510
45511
45512
45513
45514
45515
45516
45517
45518
45519
45520
45521
45522
45523
45524
45525
45526
45527
45528
45529
45530
45531
45532
45533
45534
45535
45536
45537
45538
45539
45540
45541
45542
45543
45544
45545
45546
45547
45548
45549
45550
45551
45552
45553
45554
45555
45556
45557
45558
45559
45560
45561
45562
45563
45564
45565
45566
45567
45568
45569
45570
45571
45572
45573
45574
45575
45576
45577
45578
45579
45580
45581
45582
45583
45584
45585
45586
45587
45588
45589
45590
45591
45592
45593
45594
45595
45596
45597
45598
45599
45600
45601
45602
45603
45604
45605
45606
45607
45608
45609
45610
45611
45612
45613
45614
45615
45616
45617
45618
45619
45620
45621
45622
45623
45624
45625
45626
45627
45628
45629
45630
45631
45632
45633
45634
45635
45636
45637
45638
45639
45640
45641
45642
45643
45644
45645
45646
45647
45648
45649
45650
45651
45652
45653
45654
45655
45656
45657
45658
45659
45660
45661
45662
45663
45664
45665
45666
45667
45668
45669
45670
45671
45672
45673
45674
45675
45676
45677
45678
45679
45680
45681
45682
45683
45684
45685
45686
45687
45688
45689
45690
45691
45692
45693
45694
45695
45696
45697
45698
45699
45700
45701
45702
45703
45704
45705
45706
45707
45708
45709
45710
45711
45712
45713
45714
45715
45716
45717
45718
45719
45720
45721
45722
45723
45724
45725
45726
45727
45728
45729
45730
45731
45732
45733
45734
45735
45736
45737
45738
45739
45740
45741
45742
45743
45744
45745
45746
45747
45748
45749
45750
45751
45752
45753
45754
45755
45756
45757
45758
45759
45760
45761
45762
45763
45764
45765
45766
45767
45768
45769
45770
45771
45772
45773
45774
45775
45776
45777
45778
45779
45780
45781
45782
45783
45784
45785
45786
45787
45788
45789
45790
45791
45792
45793
45794
45795
45796
45797
45798
45799
45800
45801
45802
45803
45804
45805
45806
45807
45808
45809
45810
45811
45812
45813
45814
45815
45816
45817
45818
45819
45820
45821
45822
45823
45824
45825
45826
45827
45828
45829
45830
45831
45832
45833
45834
45835
45836
45837
45838
45839
45840
45841
45842
45843
45844
45845
45846
45847
45848
45849
45850
45851
45852
45853
45854
45855
45856
45857
45858
45859
45860
45861
45862
45863
45864
45865
45866
45867
45868
45869
45870
45871
45872
45873
45874
45875
45876
45877
45878
45879
45880
45881
45882
45883
45884
45885
45886
45887
45888
45889
45890
45891
45892
45893
45894
45895
45896
45897
45898
45899
45900
45901
45902
45903
45904
45905
45906
45907
45908
45909
45910
45911
45912
45913
45914
45915
45916
45917
45918
45919
45920
45921
45922
45923
45924
45925
45926
45927
45928
45929
45930
45931
45932
45933
45934
45935
45936
45937
45938
45939
45940
45941
45942
45943
45944
45945
45946
45947
45948
45949
45950
45951
45952
45953
45954
45955
45956
45957
45958
45959
45960
45961
45962
45963
45964
45965
45966
45967
45968
45969
45970
45971
45972
45973
45974
45975
45976
45977
45978
45979
45980
45981
45982
45983
45984
45985
45986
45987
45988
45989
45990
45991
45992
45993
45994
45995
45996
45997
45998
45999
46000
46001
46002
46003
46004
46005
46006
46007
46008
46009
46010
46011
46012
46013
46014
46015
46016
46017
46018
46019
46020
46021
46022
46023
46024
46025
46026
46027
46028
46029
46030
46031
46032
46033
46034
46035
46036
46037
46038
46039
46040
46041
46042
46043
46044
46045
46046
46047
46048
46049
46050
46051
46052
46053
46054
46055
46056
46057
46058
46059
46060
46061
46062
46063
46064
46065
46066
46067
46068
46069
46070
46071
46072
46073
46074
46075
46076
46077
46078
46079
46080
46081
46082
46083
46084
46085
46086
46087
46088
46089
46090
46091
46092
46093
46094
46095
46096
46097
46098
46099
46100
46101
46102
46103
46104
46105
46106
46107
46108
46109
46110
46111
46112
46113
46114
46115
46116
46117
46118
46119
46120
46121
46122
46123
46124
46125
46126
46127
46128
46129
46130
46131
46132
46133
46134
46135
46136
46137
46138
46139
46140
46141
46142
46143
46144
46145
46146
46147
46148
46149
46150
46151
46152
46153
46154
46155
46156
46157
46158
46159
46160
46161
46162
46163
46164
46165
46166
46167
46168
46169
46170
46171
46172
46173
46174
46175
46176
46177
46178
46179
46180
46181
46182
46183
46184
46185
46186
46187
46188
46189
46190
46191
46192
46193
46194
46195
46196
46197
46198
46199
46200
46201
46202
46203
46204
46205
46206
46207
46208
46209
46210
46211
46212
46213
46214
46215
46216
46217
46218
46219
46220
46221
46222
46223
46224
46225
46226
46227
46228
46229
46230
46231
46232
46233
46234
46235
46236
46237
46238
46239
46240
46241
46242
46243
46244
46245
46246
46247
46248
46249
46250
46251
46252
46253
46254
46255
46256
46257
46258
46259
46260
46261
46262
46263
46264
46265
46266
46267
46268
46269
46270
46271
46272
46273
46274
46275
46276
46277
46278
46279
46280
46281
46282
46283
46284
46285
46286
46287
46288
46289
46290
46291
46292
46293
46294
46295
46296
46297
46298
46299
46300
46301
46302
46303
46304
46305
46306
46307
46308
46309
46310
46311
46312
46313
46314
46315
46316
46317
46318
46319
46320
46321
46322
46323
46324
46325
46326
46327
46328
46329
46330
46331
46332
46333
46334
46335
46336
46337
46338
46339
46340
46341
46342
46343
46344
46345
46346
46347
46348
46349
46350
46351
46352
46353
46354
46355
46356
46357
46358
46359
46360
46361
46362
46363
46364
46365
46366
46367
46368
46369
46370
46371
46372
46373
46374
46375
46376
46377
46378
46379
46380
46381
46382
46383
46384
46385
46386
46387
46388
46389
46390
46391
46392
46393
46394
46395
46396
46397
46398
46399
46400
46401
46402
46403
46404
46405
46406
46407
46408
46409
46410
46411
46412
46413
46414
46415
46416
46417
46418
46419
46420
46421
46422
46423
46424
46425
46426
46427
46428
46429
46430
46431
46432
46433
46434
46435
46436
46437
46438
46439
46440
46441
46442
46443
46444
46445
46446
46447
46448
46449
46450
46451
46452
46453
46454
46455
46456
46457
46458
46459
46460
46461
46462
46463
46464
46465
46466
46467
46468
46469
46470
46471
46472
46473
46474
46475
46476
46477
46478
46479
46480
46481
46482
46483
46484
46485
46486
46487
46488
46489
46490
46491
46492
46493
46494
46495
46496
46497
46498
46499
46500
46501
46502
46503
46504
46505
46506
46507
46508
46509
46510
46511
46512
46513
46514
46515
46516
46517
46518
46519
46520
46521
46522
46523
46524
46525
46526
46527
46528
46529
46530
46531
46532
46533
46534
46535
46536
46537
46538
46539
46540
46541
46542
46543
46544
46545
46546
46547
46548
46549
46550
46551
46552
46553
46554
46555
46556
46557
46558
46559
46560
46561
46562
46563
46564
46565
46566
46567
46568
46569
46570
46571
46572
46573
46574
46575
46576
46577
46578
46579
46580
46581
46582
46583
46584
46585
46586
46587
46588
46589
46590
46591
46592
46593
46594
46595
46596
46597
46598
46599
46600
46601
46602
46603
46604
46605
46606
46607
46608
46609
46610
46611
46612
46613
46614
46615
46616
46617
46618
46619
46620
46621
46622
46623
46624
46625
46626
46627
46628
46629
46630
46631
46632
46633
46634
46635
46636
46637
46638
46639
46640
46641
46642
46643
46644
46645
46646
46647
46648
46649
46650
46651
46652
46653
46654
46655
46656
46657
46658
46659
46660
46661
46662
46663
46664
46665
46666
46667
46668
46669
46670
46671
46672
46673
46674
46675
46676
46677
46678
46679
46680
46681
46682
46683
46684
46685
46686
46687
46688
46689
46690
46691
46692
46693
46694
46695
46696
46697
46698
46699
46700
46701
46702
46703
46704
46705
46706
46707
46708
46709
46710
46711
46712
46713
46714
46715
46716
46717
46718
46719
46720
46721
46722
46723
46724
46725
46726
46727
46728
46729
46730
46731
46732
46733
46734
46735
46736
46737
46738
46739
46740
46741
46742
46743
46744
46745
46746
46747
46748
46749
46750
46751
46752
46753
46754
46755
46756
46757
46758
46759
46760
46761
46762
46763
46764
46765
46766
46767
46768
46769
46770
46771
46772
46773
46774
46775
46776
46777
46778
46779
46780
46781
46782
46783
46784
46785
46786
46787
46788
46789
46790
46791
46792
46793
46794
46795
46796
46797
46798
46799
46800
46801
46802
46803
46804
46805
46806
46807
46808
46809
46810
46811
46812
46813
46814
46815
46816
46817
46818
46819
46820
46821
46822
46823
46824
46825
46826
46827
46828
46829
46830
46831
46832
46833
46834
46835
46836
46837
46838
46839
46840
46841
46842
46843
46844
46845
46846
46847
46848
46849
46850
46851
46852
46853
46854
46855
46856
46857
46858
46859
46860
46861
46862
46863
46864
46865
46866
46867
46868
46869
46870
46871
46872
46873
46874
46875
46876
46877
46878
46879
46880
46881
46882
46883
46884
46885
46886
46887
46888
46889
46890
46891
46892
46893
46894
46895
46896
46897
46898
46899
46900
46901
46902
46903
46904
46905
46906
46907
46908
46909
46910
46911
46912
46913
46914
46915
46916
46917
46918
46919
46920
46921
46922
46923
46924
46925
46926
46927
46928
46929
46930
46931
46932
46933
46934
46935
46936
46937
46938
46939
46940
46941
46942
46943
46944
46945
46946
46947
46948
46949
46950
46951
46952
46953
46954
46955
46956
46957
46958
46959
46960
46961
46962
46963
46964
46965
46966
46967
46968
46969
46970
46971
46972
46973
46974
46975
46976
46977
46978
46979
46980
46981
46982
46983
46984
46985
46986
46987
46988
46989
46990
46991
46992
46993
46994
46995
46996
46997
46998
46999
47000
47001
47002
47003
47004
47005
47006
47007
47008
47009
47010
47011
47012
47013
47014
47015
47016
47017
47018
47019
47020
47021
47022
47023
47024
47025
47026
47027
47028
47029
47030
47031
47032
47033
47034
47035
47036
47037
47038
47039
47040
47041
47042
47043
47044
47045
47046
47047
47048
47049
47050
47051
47052
47053
47054
47055
47056
47057
47058
47059
47060
47061
47062
47063
47064
47065
47066
47067
47068
47069
47070
47071
47072
47073
47074
47075
47076
47077
47078
47079
47080
47081
47082
47083
47084
47085
47086
47087
47088
47089
47090
47091
47092
47093
47094
47095
47096
47097
47098
47099
47100
47101
47102
47103
47104
47105
47106
47107
47108
47109
47110
47111
47112
47113
47114
47115
47116
47117
47118
47119
47120
47121
47122
47123
47124
47125
47126
47127
47128
47129
47130
47131
47132
47133
47134
47135
47136
47137
47138
47139
47140
47141
47142
47143
47144
47145
47146
47147
47148
47149
47150
47151
47152
47153
47154
47155
47156
47157
47158
47159
47160
47161
47162
47163
47164
47165
47166
47167
47168
47169
47170
47171
47172
47173
47174
47175
47176
47177
47178
47179
47180
47181
47182
47183
47184
47185
47186
47187
47188
47189
47190
47191
47192
47193
47194
47195
47196
47197
47198
47199
47200
47201
47202
47203
47204
47205
47206
47207
47208
47209
47210
47211
47212
47213
47214
47215
47216
47217
47218
47219
47220
47221
47222
47223
47224
47225
47226
47227
47228
47229
47230
47231
47232
47233
47234
47235
47236
47237
47238
47239
47240
47241
47242
47243
47244
47245
47246
47247
47248
47249
47250
47251
47252
47253
47254
47255
47256
47257
47258
47259
47260
47261
47262
47263
47264
47265
47266
47267
47268
47269
47270
47271
47272
47273
47274
47275
47276
47277
47278
47279
47280
47281
47282
47283
47284
47285
47286
47287
47288
47289
47290
47291
47292
47293
47294
47295
47296
47297
47298
47299
47300
47301
47302
47303
47304
47305
47306
47307
47308
47309
47310
47311
47312
47313
47314
47315
47316
47317
47318
47319
47320
47321
47322
47323
47324
47325
47326
47327
47328
47329
47330
47331
47332
47333
47334
47335
47336
47337
47338
47339
47340
47341
47342
47343
47344
47345
47346
47347
47348
47349
47350
47351
47352
47353
47354
47355
47356
47357
47358
47359
47360
47361
47362
47363
47364
47365
47366
47367
47368
47369
47370
47371
47372
47373
47374
47375
47376
47377
47378
47379
47380
47381
47382
47383
47384
47385
47386
47387
47388
47389
47390
47391
47392
47393
47394
47395
47396
47397
47398
47399
47400
47401
47402
47403
47404
47405
47406
47407
47408
47409
47410
47411
47412
47413
47414
47415
47416
47417
47418
47419
47420
47421
47422
47423
47424
47425
47426
47427
47428
47429
47430
47431
47432
47433
47434
47435
47436
47437
47438
47439
47440
47441
47442
47443
47444
47445
47446
47447
47448
47449
47450
47451
47452
47453
47454
47455
47456
47457
47458
47459
47460
47461
47462
47463
47464
47465
47466
47467
47468
47469
47470
47471
47472
47473
47474
47475
47476
47477
47478
47479
47480
47481
47482
47483
47484
47485
47486
47487
47488
47489
47490
47491
47492
47493
47494
47495
47496
47497
47498
47499
47500
47501
47502
47503
47504
47505
47506
47507
47508
47509
47510
47511
47512
47513
47514
47515
47516
47517
47518
47519
47520
47521
47522
47523
47524
47525
47526
47527
47528
47529
47530
47531
47532
47533
47534
47535
47536
47537
47538
47539
47540
47541
47542
47543
47544
47545
47546
47547
47548
47549
47550
47551
47552
47553
47554
47555
47556
47557
47558
47559
47560
47561
47562
47563
47564
47565
47566
47567
47568
47569
47570
47571
47572
47573
47574
47575
47576
47577
47578
47579
47580
47581
47582
47583
47584
47585
47586
47587
47588
47589
47590
47591
47592
47593
47594
47595
47596
47597
47598
47599
47600
47601
47602
47603
47604
47605
47606
47607
47608
47609
47610
47611
47612
47613
47614
47615
47616
47617
47618
47619
47620
47621
47622
47623
47624
47625
47626
47627
47628
47629
47630
47631
47632
47633
47634
47635
47636
47637
47638
47639
47640
47641
47642
47643
47644
47645
47646
47647
47648
47649
47650
47651
47652
47653
47654
47655
47656
47657
47658
47659
47660
47661
47662
47663
47664
47665
47666
47667
47668
47669
47670
47671
47672
47673
47674
47675
47676
47677
47678
47679
47680
47681
47682
47683
47684
47685
47686
47687
47688
47689
47690
47691
47692
47693
47694
47695
47696
47697
47698
47699
47700
47701
47702
47703
47704
47705
47706
47707
47708
47709
47710
47711
47712
47713
47714
47715
47716
47717
47718
47719
47720
47721
47722
47723
47724
47725
47726
47727
47728
47729
47730
47731
47732
47733
47734
47735
47736
47737
47738
47739
47740
47741
47742
47743
47744
47745
47746
47747
47748
47749
47750
47751
47752
47753
47754
47755
47756
47757
47758
47759
47760
47761
47762
47763
47764
47765
47766
47767
47768
47769
47770
47771
47772
47773
47774
47775
47776
47777
47778
47779
47780
47781
47782
47783
47784
47785
47786
47787
47788
47789
47790
47791
47792
47793
47794
47795
47796
47797
47798
47799
47800
47801
47802
47803
47804
47805
47806
47807
47808
47809
47810
47811
47812
47813
47814
47815
47816
47817
47818
47819
47820
47821
47822
47823
47824
47825
47826
47827
47828
47829
47830
47831
47832
47833
47834
47835
47836
47837
47838
47839
47840
47841
47842
47843
47844
47845
47846
47847
47848
47849
47850
47851
47852
47853
47854
47855
47856
47857
47858
47859
47860
47861
47862
47863
47864
47865
47866
47867
47868
47869
47870
47871
47872
47873
47874
47875
47876
47877
47878
47879
47880
47881
47882
47883
47884
47885
47886
47887
47888
47889
47890
47891
47892
47893
47894
47895
47896
47897
47898
47899
47900
47901
47902
47903
47904
47905
47906
47907
47908
47909
47910
47911
47912
47913
47914
47915
47916
47917
47918
47919
47920
47921
47922
47923
47924
47925
47926
47927
47928
47929
47930
47931
47932
47933
47934
47935
47936
47937
47938
47939
47940
47941
47942
47943
47944
47945
47946
47947
47948
47949
47950
47951
47952
47953
47954
47955
47956
47957
47958
47959
47960
47961
47962
47963
47964
47965
47966
47967
47968
47969
47970
47971
47972
47973
47974
47975
47976
47977
47978
47979
47980
47981
47982
47983
47984
47985
47986
47987
47988
47989
47990
47991
47992
47993
47994
47995
47996
47997
47998
47999
48000
48001
48002
48003
48004
48005
48006
48007
48008
48009
48010
48011
48012
48013
48014
48015
48016
48017
48018
48019
48020
48021
48022
48023
48024
48025
48026
48027
48028
48029
48030
48031
48032
48033
48034
48035
48036
48037
48038
48039
48040
48041
48042
48043
48044
48045
48046
48047
48048
48049
48050
48051
48052
48053
48054
48055
48056
48057
48058
48059
48060
48061
48062
48063
48064
48065
48066
48067
48068
48069
48070
48071
48072
48073
48074
48075
48076
48077
48078
48079
48080
48081
48082
48083
48084
48085
48086
48087
48088
48089
48090
48091
48092
48093
48094
48095
48096
48097
48098
48099
48100
48101
48102
48103
48104
48105
48106
48107
48108
48109
48110
48111
48112
48113
48114
48115
48116
48117
48118
48119
48120
48121
48122
48123
48124
48125
48126
48127
48128
48129
48130
48131
48132
48133
48134
48135
48136
48137
48138
48139
48140
48141
48142
48143
48144
48145
48146
48147
48148
48149
48150
48151
48152
48153
48154
48155
48156
48157
48158
48159
48160
48161
48162
48163
48164
48165
48166
48167
48168
48169
48170
48171
48172
48173
48174
48175
48176
48177
48178
48179
48180
48181
48182
48183
48184
48185
48186
48187
48188
48189
48190
48191
48192
48193
48194
48195
48196
48197
48198
48199
48200
48201
48202
48203
48204
48205
48206
48207
48208
48209
48210
48211
48212
48213
48214
48215
48216
48217
48218
48219
48220
48221
48222
48223
48224
48225
48226
48227
48228
48229
48230
48231
48232
48233
48234
48235
48236
48237
48238
48239
48240
48241
48242
48243
48244
48245
48246
48247
48248
48249
48250
48251
48252
48253
48254
48255
48256
48257
48258
48259
48260
48261
48262
48263
48264
48265
48266
48267
48268
48269
48270
48271
48272
48273
48274
48275
48276
48277
48278
48279
48280
48281
48282
48283
48284
48285
48286
48287
48288
48289
48290
48291
48292
48293
48294
48295
48296
48297
48298
48299
48300
48301
48302
48303
48304
48305
48306
48307
48308
48309
48310
48311
48312
48313
48314
48315
48316
48317
48318
48319
48320
48321
48322
48323
48324
48325
48326
48327
48328
48329
48330
48331
48332
48333
48334
48335
48336
48337
48338
48339
48340
48341
48342
48343
48344
48345
48346
48347
48348
48349
48350
48351
48352
48353
48354
48355
48356
48357
48358
48359
48360
48361
48362
48363
48364
48365
48366
48367
48368
48369
48370
48371
48372
48373
48374
48375
48376
48377
48378
48379
48380
48381
48382
48383
48384
48385
48386
48387
48388
48389
48390
48391
48392
48393
48394
48395
48396
48397
48398
48399
48400
48401
48402
48403
48404
48405
48406
48407
48408
48409
48410
48411
48412
48413
48414
48415
48416
48417
48418
48419
48420
48421
48422
48423
48424
48425
48426
48427
48428
48429
48430
48431
48432
48433
48434
48435
48436
48437
48438
48439
48440
48441
48442
48443
48444
48445
48446
48447
48448
48449
48450
48451
48452
48453
48454
48455
48456
48457
48458
48459
48460
48461
48462
48463
48464
48465
48466
48467
48468
48469
48470
48471
48472
48473
48474
48475
48476
48477
48478
48479
48480
48481
48482
48483
48484
48485
48486
48487
48488
48489
48490
48491
48492
48493
48494
48495
48496
48497
48498
48499
48500
48501
48502
48503
48504
48505
48506
48507
48508
48509
48510
48511
48512
48513
48514
48515
48516
48517
48518
48519
48520
48521
48522
48523
48524
48525
48526
48527
48528
48529
48530
48531
48532
48533
48534
48535
48536
48537
48538
48539
48540
48541
48542
48543
48544
48545
48546
48547
48548
48549
48550
48551
48552
48553
48554
48555
48556
48557
48558
48559
48560
48561
48562
48563
48564
48565
48566
48567
48568
48569
48570
48571
48572
48573
48574
48575
48576
48577
48578
48579
48580
48581
48582
48583
48584
48585
48586
48587
48588
48589
48590
48591
48592
48593
48594
48595
48596
48597
48598
48599
48600
48601
48602
48603
48604
48605
48606
48607
48608
48609
48610
48611
48612
48613
48614
48615
48616
48617
48618
48619
48620
48621
48622
48623
48624
48625
48626
48627
48628
48629
48630
48631
48632
48633
48634
48635
48636
48637
48638
48639
48640
48641
48642
48643
48644
48645
48646
48647
48648
48649
48650
48651
48652
48653
48654
48655
48656
48657
48658
48659
48660
48661
48662
48663
48664
48665
48666
48667
48668
48669
48670
48671
48672
48673
48674
48675
48676
48677
48678
48679
48680
48681
48682
48683
48684
48685
48686
48687
48688
48689
48690
48691
48692
48693
48694
48695
48696
48697
48698
48699
48700
48701
48702
48703
48704
48705
48706
48707
48708
48709
48710
48711
48712
48713
48714
48715
48716
48717
48718
48719
48720
48721
48722
48723
48724
48725
48726
48727
48728
48729
48730
48731
48732
48733
48734
48735
48736
48737
48738
48739
48740
48741
48742
48743
48744
48745
48746
48747
48748
48749
48750
48751
48752
48753
48754
48755
48756
48757
48758
48759
48760
48761
48762
48763
48764
48765
48766
48767
48768
48769
48770
48771
48772
48773
48774
48775
48776
48777
48778
48779
48780
48781
48782
48783
48784
48785
48786
48787
48788
48789
48790
48791
48792
48793
48794
48795
48796
48797
48798
48799
48800
48801
48802
48803
48804
48805
48806
48807
48808
48809
48810
48811
48812
48813
48814
48815
48816
48817
48818
48819
48820
48821
48822
48823
48824
48825
48826
48827
48828
48829
48830
48831
48832
48833
48834
48835
48836
48837
48838
48839
48840
48841
48842
48843
48844
48845
48846
48847
48848
48849
48850
48851
48852
48853
48854
48855
48856
48857
48858
48859
48860
48861
48862
48863
48864
48865
48866
48867
48868
48869
48870
48871
48872
48873
48874
48875
48876
48877
48878
48879
48880
48881
48882
48883
48884
48885
48886
48887
48888
48889
48890
48891
48892
48893
48894
48895
48896
48897
48898
48899
48900
48901
48902
48903
48904
48905
48906
48907
48908
48909
48910
48911
48912
48913
48914
48915
48916
48917
48918
48919
48920
48921
48922
48923
48924
48925
48926
48927
48928
48929
48930
48931
48932
48933
48934
48935
48936
48937
48938
48939
48940
48941
48942
48943
48944
48945
48946
48947
48948
48949
48950
48951
48952
48953
48954
48955
48956
48957
48958
48959
48960
48961
48962
48963
48964
48965
48966
48967
48968
48969
48970
48971
48972
48973
48974
48975
48976
48977
48978
48979
48980
48981
48982
48983
48984
48985
48986
48987
48988
48989
48990
48991
48992
48993
48994
48995
48996
48997
48998
48999
49000
49001
49002
49003
49004
49005
49006
49007
49008
49009
49010
49011
49012
49013
49014
49015
49016
49017
49018
49019
49020
49021
49022
49023
49024
49025
49026
49027
49028
49029
49030
49031
49032
49033
49034
49035
49036
49037
49038
49039
49040
49041
49042
49043
49044
49045
49046
49047
49048
49049
49050
49051
49052
49053
49054
49055
49056
49057
49058
49059
49060
49061
49062
49063
49064
49065
49066
49067
49068
49069
49070
49071
49072
49073
49074
49075
49076
49077
49078
49079
49080
49081
49082
49083
49084
49085
49086
49087
49088
49089
49090
49091
49092
49093
49094
49095
49096
49097
49098
49099
49100
49101
49102
49103
49104
49105
49106
49107
49108
49109
49110
49111
49112
49113
49114
49115
49116
49117
49118
49119
49120
49121
49122
49123
49124
49125
49126
49127
49128
49129
49130
49131
49132
49133
49134
49135
49136
49137
49138
49139
49140
49141
49142
49143
49144
49145
49146
49147
49148
49149
49150
49151
49152
49153
49154
49155
49156
49157
49158
49159
49160
49161
49162
49163
49164
49165
49166
49167
49168
49169
49170
49171
49172
49173
49174
49175
49176
49177
49178
49179
49180
49181
49182
49183
49184
49185
49186
49187
49188
49189
49190
49191
49192
49193
49194
49195
49196
49197
49198
49199
49200
49201
49202
49203
49204
49205
49206
49207
49208
49209
49210
49211
49212
49213
49214
49215
49216
49217
49218
49219
49220
49221
49222
49223
49224
49225
49226
49227
49228
49229
49230
49231
49232
49233
49234
49235
49236
49237
49238
49239
49240
49241
49242
49243
49244
49245
49246
49247
49248
49249
49250
49251
49252
49253
49254
49255
49256
49257
49258
49259
49260
49261
49262
49263
49264
49265
49266
49267
49268
49269
49270
49271
49272
49273
49274
49275
49276
49277
49278
49279
49280
49281
49282
49283
49284
49285
49286
49287
49288
49289
49290
49291
49292
49293
49294
49295
49296
49297
49298
49299
49300
49301
49302
49303
49304
49305
49306
49307
49308
49309
49310
49311
49312
49313
49314
49315
49316
49317
49318
49319
49320
49321
49322
49323
49324
49325
49326
49327
49328
49329
49330
49331
49332
49333
49334
49335
49336
49337
49338
49339
49340
49341
49342
49343
49344
49345
49346
49347
49348
49349
49350
49351
49352
49353
49354
49355
49356
49357
49358
49359
49360
49361
49362
49363
49364
49365
49366
49367
49368
49369
49370
49371
49372
49373
49374
49375
49376
49377
49378
49379
49380
49381
49382
49383
49384
49385
49386
49387
49388
49389
49390
49391
49392
49393
49394
49395
49396
49397
49398
49399
49400
49401
49402
49403
49404
49405
49406
49407
49408
49409
49410
49411
49412
49413
49414
49415
49416
49417
49418
49419
49420
49421
49422
49423
49424
49425
49426
49427
49428
49429
49430
49431
49432
49433
49434
49435
49436
49437
49438
49439
49440
49441
49442
49443
49444
49445
49446
49447
49448
49449
49450
49451
49452
49453
49454
49455
49456
49457
49458
49459
49460
49461
49462
49463
49464
49465
49466
49467
49468
49469
49470
49471
49472
49473
49474
49475
49476
49477
49478
49479
49480
49481
49482
49483
49484
49485
49486
49487
49488
49489
49490
49491
49492
49493
49494
49495
49496
49497
49498
49499
49500
49501
49502
49503
49504
49505
49506
49507
49508
49509
49510
49511
49512
49513
49514
49515
49516
49517
49518
49519
49520
49521
49522
49523
49524
49525
49526
49527
49528
49529
49530
49531
49532
49533
49534
49535
49536
49537
49538
49539
49540
49541
49542
49543
49544
49545
49546
49547
49548
49549
49550
49551
49552
49553
49554
49555
49556
49557
49558
49559
49560
49561
49562
49563
49564
49565
49566
49567
49568
49569
49570
49571
49572
49573
49574
49575
49576
49577
49578
49579
49580
49581
49582
49583
49584
49585
49586
49587
49588
49589
49590
49591
49592
49593
49594
49595
49596
49597
49598
49599
49600
49601
49602
49603
49604
49605
49606
49607
49608
49609
49610
49611
49612
49613
49614
49615
49616
49617
49618
49619
49620
49621
49622
49623
49624
49625
49626
49627
49628
49629
49630
49631
49632
49633
49634
49635
49636
49637
49638
49639
49640
49641
49642
49643
49644
49645
49646
49647
49648
49649
49650
49651
49652
49653
49654
49655
49656
49657
49658
49659
49660
49661
49662
49663
49664
49665
49666
49667
49668
49669
49670
49671
49672
49673
49674
49675
49676
49677
49678
49679
49680
49681
49682
49683
49684
49685
49686
49687
49688
49689
49690
49691
49692
49693
49694
49695
49696
49697
49698
49699
49700
49701
49702
49703
49704
49705
49706
49707
49708
49709
49710
49711
49712
49713
49714
49715
49716
49717
49718
49719
49720
49721
49722
49723
49724
49725
49726
49727
49728
49729
49730
49731
49732
49733
49734
49735
49736
49737
49738
49739
49740
49741
49742
49743
49744
49745
49746
49747
49748
49749
49750
49751
49752
49753
49754
49755
49756
49757
49758
49759
49760
49761
49762
49763
49764
49765
49766
49767
49768
49769
49770
49771
49772
49773
49774
49775
49776
49777
49778
49779
49780
49781
49782
49783
49784
49785
49786
49787
49788
49789
49790
49791
49792
49793
49794
49795
49796
49797
49798
49799
49800
49801
49802
49803
49804
49805
49806
49807
49808
49809
49810
49811
49812
49813
49814
49815
49816
49817
49818
49819
49820
49821
49822
49823
49824
49825
49826
49827
49828
49829
49830
49831
49832
49833
49834
49835
49836
49837
49838
49839
49840
49841
49842
49843
49844
49845
49846
49847
49848
49849
49850
49851
49852
49853
49854
49855
49856
49857
49858
49859
49860
49861
49862
49863
49864
49865
49866
49867
49868
49869
49870
49871
49872
49873
49874
49875
49876
49877
49878
49879
49880
49881
49882
49883
49884
49885
49886
49887
49888
49889
49890
49891
49892
49893
49894
49895
49896
49897
49898
49899
49900
49901
49902
49903
49904
49905
49906
49907
49908
49909
49910
49911
49912
49913
49914
49915
49916
49917
49918
49919
49920
49921
49922
49923
49924
49925
49926
49927
49928
49929
49930
49931
49932
49933
49934
49935
49936
49937
49938
49939
49940
49941
49942
49943
49944
49945
49946
49947
49948
49949
49950
49951
49952
49953
49954
49955
49956
49957
49958
49959
49960
49961
49962
49963
49964
49965
49966
49967
49968
49969
49970
49971
49972
49973
49974
49975
49976
49977
49978
49979
49980
49981
49982
49983
49984
49985
49986
49987
49988
49989
49990
49991
49992
49993
49994
49995
49996
49997
49998
49999
50000
50001
50002
50003
50004
50005
50006
50007
50008
50009
50010
50011
50012
50013
50014
50015
50016
50017
50018
50019
50020
50021
50022
50023
50024
50025
50026
50027
50028
50029
50030
50031
50032
50033
50034
50035
50036
50037
50038
50039
50040
50041
50042
50043
50044
50045
50046
50047
50048
50049
50050
50051
50052
50053
50054
50055
50056
50057
50058
50059
50060
50061
50062
50063
50064
50065
50066
50067
50068
50069
50070
50071
50072
50073
50074
50075
50076
50077
50078
50079
50080
50081
50082
50083
50084
50085
50086
50087
50088
50089
50090
50091
50092
50093
50094
50095
50096
50097
50098
50099
50100
50101
50102
50103
50104
50105
50106
50107
50108
50109
50110
50111
50112
50113
50114
50115
50116
50117
50118
50119
50120
50121
50122
50123
50124
50125
50126
50127
50128
50129
50130
50131
50132
50133
50134
50135
50136
50137
50138
50139
50140
50141
50142
50143
50144
50145
50146
50147
50148
50149
50150
50151
50152
50153
50154
50155
50156
50157
50158
50159
50160
50161
50162
50163
50164
50165
50166
50167
50168
50169
50170
50171
50172
50173
50174
50175
50176
50177
50178
50179
50180
50181
50182
50183
50184
50185
50186
50187
50188
50189
50190
50191
50192
50193
50194
50195
50196
50197
50198
50199
50200
50201
50202
50203
50204
50205
50206
50207
50208
50209
50210
50211
50212
50213
50214
50215
50216
50217
50218
50219
50220
50221
50222
50223
50224
50225
50226
50227
50228
50229
50230
50231
50232
50233
50234
50235
50236
50237
50238
50239
50240
50241
50242
50243
50244
50245
50246
50247
50248
50249
50250
50251
50252
50253
50254
50255
50256
50257
50258
50259
50260
50261
50262
50263
50264
50265
50266
50267
50268
50269
50270
50271
50272
50273
50274
50275
50276
50277
50278
50279
50280
50281
50282
50283
50284
50285
50286
50287
50288
50289
50290
50291
50292
50293
50294
50295
50296
50297
50298
50299
50300
50301
50302
50303
50304
50305
50306
50307
50308
50309
50310
50311
50312
50313
50314
50315
50316
50317
50318
50319
50320
50321
50322
50323
50324
50325
50326
50327
50328
50329
50330
50331
50332
50333
50334
50335
50336
50337
50338
50339
50340
50341
50342
50343
50344
50345
50346
50347
50348
50349
50350
50351
50352
50353
50354
50355
50356
50357
50358
50359
50360
50361
50362
50363
50364
50365
50366
50367
50368
50369
50370
50371
50372
50373
50374
50375
50376
50377
50378
50379
50380
50381
50382
50383
50384
50385
50386
50387
50388
50389
50390
50391
50392
50393
50394
50395
50396
50397
50398
50399
50400
50401
50402
50403
50404
50405
50406
50407
50408
50409
50410
50411
50412
50413
50414
50415
50416
50417
50418
50419
50420
50421
50422
50423
50424
50425
50426
50427
50428
50429
50430
50431
50432
50433
50434
50435
50436
50437
50438
50439
50440
50441
50442
50443
50444
50445
50446
50447
50448
50449
50450
50451
50452
50453
50454
50455
50456
50457
50458
50459
50460
50461
50462
50463
50464
50465
50466
50467
50468
50469
50470
50471
50472
50473
50474
50475
50476
50477
50478
50479
50480
50481
50482
50483
50484
50485
50486
50487
50488
50489
50490
50491
50492
50493
50494
50495
50496
50497
50498
50499
50500
50501
50502
50503
50504
50505
50506
50507
50508
50509
50510
50511
50512
50513
50514
50515
50516
50517
50518
50519
50520
50521
50522
50523
50524
50525
50526
50527
50528
50529
50530
50531
50532
50533
50534
50535
50536
50537
50538
50539
50540
50541
50542
50543
50544
50545
50546
50547
50548
50549
50550
50551
50552
50553
50554
50555
50556
50557
50558
50559
50560
50561
50562
50563
50564
50565
50566
50567
50568
50569
50570
50571
50572
50573
50574
50575
50576
50577
50578
50579
50580
50581
50582
50583
50584
50585
50586
50587
50588
50589
50590
50591
50592
50593
50594
50595
50596
50597
50598
50599
50600
50601
50602
50603
50604
50605
50606
50607
50608
50609
50610
50611
50612
50613
50614
50615
50616
50617
50618
50619
50620
50621
50622
50623
50624
50625
50626
50627
50628
50629
50630
50631
50632
50633
50634
50635
50636
50637
50638
50639
50640
50641
50642
50643
50644
50645
50646
50647
50648
50649
50650
50651
50652
50653
50654
50655
50656
50657
50658
50659
50660
50661
50662
50663
50664
50665
50666
50667
50668
50669
50670
50671
50672
50673
50674
50675
50676
50677
50678
50679
50680
50681
50682
50683
50684
50685
50686
50687
50688
50689
50690
50691
50692
50693
50694
50695
50696
50697
50698
50699
50700
50701
50702
50703
50704
50705
50706
50707
50708
50709
50710
50711
50712
50713
50714
50715
50716
50717
50718
50719
50720
50721
50722
50723
50724
50725
50726
50727
50728
50729
50730
50731
50732
50733
50734
50735
50736
50737
50738
50739
50740
50741
50742
50743
50744
50745
50746
50747
50748
50749
50750
50751
50752
50753
50754
50755
50756
50757
50758
50759
50760
50761
50762
50763
50764
50765
50766
50767
50768
50769
50770
50771
50772
50773
50774
50775
50776
50777
50778
50779
50780
50781
50782
50783
50784
50785
50786
50787
50788
50789
50790
50791
50792
50793
50794
50795
50796
50797
50798
50799
50800
50801
50802
50803
50804
50805
50806
50807
50808
50809
50810
50811
50812
50813
50814
50815
50816
50817
50818
50819
50820
50821
50822
50823
50824
50825
50826
50827
50828
50829
50830
50831
50832
50833
50834
50835
50836
50837
50838
50839
50840
50841
50842
50843
50844
50845
50846
50847
50848
50849
50850
50851
50852
50853
50854
50855
50856
50857
50858
50859
50860
50861
50862
50863
50864
50865
50866
50867
50868
50869
50870
50871
50872
50873
50874
50875
50876
50877
50878
50879
50880
50881
50882
50883
50884
50885
50886
50887
50888
50889
50890
50891
50892
50893
50894
50895
50896
50897
50898
50899
50900
50901
50902
50903
50904
50905
50906
50907
50908
50909
50910
50911
50912
50913
50914
50915
50916
50917
50918
50919
50920
50921
50922
50923
50924
50925
50926
50927
50928
50929
50930
50931
50932
50933
50934
50935
50936
50937
50938
50939
50940
50941
50942
50943
50944
50945
50946
50947
50948
50949
50950
50951
50952
50953
50954
50955
50956
50957
50958
50959
50960
50961
50962
50963
50964
50965
50966
50967
50968
50969
50970
50971
50972
50973
50974
50975
50976
50977
50978
50979
50980
50981
50982
50983
50984
50985
50986
50987
50988
50989
50990
50991
50992
50993
50994
50995
50996
50997
50998
50999
51000
51001
51002
51003
51004
51005
51006
51007
51008
51009
51010
51011
51012
51013
51014
51015
51016
51017
51018
51019
51020
51021
51022
51023
51024
51025
51026
51027
51028
51029
51030
51031
51032
51033
51034
51035
51036
51037
51038
51039
51040
51041
51042
51043
51044
51045
51046
51047
51048
51049
51050
51051
51052
51053
51054
51055
51056
51057
51058
51059
51060
51061
51062
51063
51064
51065
51066
51067
51068
51069
51070
51071
51072
51073
51074
51075
51076
51077
51078
51079
51080
51081
51082
51083
51084
51085
51086
51087
51088
51089
51090
51091
51092
51093
51094
51095
51096
51097
51098
51099
51100
51101
51102
51103
51104
51105
51106
51107
51108
51109
51110
51111
51112
51113
51114
51115
51116
51117
51118
51119
51120
51121
51122
51123
51124
51125
51126
51127
51128
51129
51130
51131
51132
51133
51134
51135
51136
51137
51138
51139
51140
51141
51142
51143
51144
51145
51146
51147
51148
51149
51150
51151
51152
51153
51154
51155
51156
51157
51158
51159
51160
51161
51162
51163
51164
51165
51166
51167
51168
51169
51170
51171
51172
51173
51174
51175
51176
51177
51178
51179
51180
51181
51182
51183
51184
51185
51186
51187
51188
51189
51190
51191
51192
51193
51194
51195
51196
51197
51198
51199
51200
51201
51202
51203
51204
51205
51206
51207
51208
51209
51210
51211
51212
51213
51214
51215
51216
51217
51218
51219
51220
51221
51222
51223
51224
51225
51226
51227
51228
51229
51230
51231
51232
51233
51234
51235
51236
51237
51238
51239
51240
51241
51242
51243
51244
51245
51246
51247
51248
51249
51250
51251
51252
51253
51254
51255
51256
51257
51258
51259
51260
51261
51262
51263
51264
51265
51266
51267
51268
51269
51270
51271
51272
51273
51274
51275
51276
51277
51278
51279
51280
51281
51282
51283
51284
51285
51286
51287
51288
51289
51290
51291
51292
51293
51294
51295
51296
51297
51298
51299
51300
51301
51302
51303
51304
51305
51306
51307
51308
51309
51310
51311
51312
51313
51314
51315
51316
51317
51318
51319
51320
51321
51322
51323
51324
51325
51326
51327
51328
51329
51330
51331
51332
51333
51334
51335
51336
51337
51338
51339
51340
51341
51342
51343
51344
51345
51346
51347
51348
51349
51350
51351
51352
51353
51354
51355
51356
51357
51358
51359
51360
51361
51362
51363
51364
51365
51366
51367
51368
51369
51370
51371
51372
51373
51374
51375
51376
51377
51378
51379
51380
51381
51382
51383
51384
51385
51386
51387
51388
51389
51390
51391
51392
51393
51394
51395
51396
51397
51398
51399
51400
51401
51402
51403
51404
51405
51406
51407
51408
51409
51410
51411
51412
51413
51414
51415
51416
51417
51418
51419
51420
51421
51422
51423
51424
51425
51426
51427
51428
51429
51430
51431
51432
51433
51434
51435
51436
51437
51438
51439
51440
51441
51442
51443
51444
51445
51446
51447
51448
51449
51450
51451
51452
51453
51454
51455
51456
51457
51458
51459
51460
51461
51462
51463
51464
51465
51466
51467
51468
51469
51470
51471
51472
51473
51474
51475
51476
51477
51478
51479
51480
51481
51482
51483
51484
51485
51486
51487
51488
51489
51490
51491
51492
51493
51494
51495
51496
51497
51498
51499
51500
51501
51502
51503
51504
51505
51506
51507
51508
51509
51510
51511
51512
51513
51514
51515
51516
51517
51518
51519
51520
51521
51522
51523
51524
51525
51526
51527
51528
51529
51530
51531
51532
51533
51534
51535
51536
51537
51538
51539
51540
51541
51542
51543
51544
51545
51546
51547
51548
51549
51550
51551
51552
51553
51554
51555
51556
51557
51558
51559
51560
51561
51562
51563
51564
51565
51566
51567
51568
51569
51570
51571
51572
51573
51574
51575
51576
51577
51578
51579
51580
51581
51582
51583
51584
51585
51586
51587
51588
51589
51590
51591
51592
51593
51594
51595
51596
51597
51598
51599
51600
51601
51602
51603
51604
51605
51606
51607
51608
51609
51610
51611
51612
51613
51614
51615
51616
51617
51618
51619
51620
51621
51622
51623
51624
51625
51626
51627
51628
51629
51630
51631
51632
51633
51634
51635
51636
51637
51638
51639
51640
51641
51642
51643
51644
51645
51646
51647
51648
51649
51650
51651
51652
51653
51654
51655
51656
51657
51658
51659
51660
51661
51662
51663
51664
51665
51666
51667
51668
51669
51670
51671
51672
51673
51674
51675
51676
51677
51678
51679
51680
51681
51682
51683
51684
51685
51686
51687
51688
51689
51690
51691
51692
51693
51694
51695
51696
51697
51698
51699
51700
51701
51702
51703
51704
51705
51706
51707
51708
51709
51710
51711
51712
51713
51714
51715
51716
51717
51718
51719
51720
51721
51722
51723
51724
51725
51726
51727
51728
51729
51730
51731
51732
51733
51734
51735
51736
51737
51738
51739
51740
51741
51742
51743
51744
51745
51746
51747
51748
51749
51750
51751
51752
51753
51754
51755
51756
51757
51758
51759
51760
51761
51762
51763
51764
51765
51766
51767
51768
51769
51770
51771
51772
51773
51774
51775
51776
51777
51778
51779
51780
51781
51782
51783
51784
51785
51786
51787
51788
51789
51790
51791
51792
51793
51794
51795
51796
51797
51798
51799
51800
51801
51802
51803
51804
51805
51806
51807
51808
51809
51810
51811
51812
51813
51814
51815
51816
51817
51818
51819
51820
51821
51822
51823
51824
51825
51826
51827
51828
51829
51830
51831
51832
51833
51834
51835
51836
51837
51838
51839
51840
51841
51842
51843
51844
51845
51846
51847
51848
51849
51850
51851
51852
51853
51854
51855
51856
51857
51858
51859
51860
51861
51862
51863
51864
51865
51866
51867
51868
51869
51870
51871
51872
51873
51874
51875
51876
51877
51878
51879
51880
51881
51882
51883
51884
51885
51886
51887
51888
51889
51890
51891
51892
51893
51894
51895
51896
51897
51898
51899
51900
51901
51902
51903
51904
51905
51906
51907
51908
51909
51910
51911
51912
51913
51914
51915
51916
51917
51918
51919
51920
51921
51922
51923
51924
51925
51926
51927
51928
51929
51930
51931
51932
51933
51934
51935
51936
51937
51938
51939
51940
51941
51942
51943
51944
51945
51946
51947
51948
51949
51950
51951
51952
51953
51954
51955
51956
51957
51958
51959
51960
51961
51962
51963
51964
51965
51966
51967
51968
51969
51970
51971
51972
51973
51974
51975
51976
51977
51978
51979
51980
51981
51982
51983
51984
51985
51986
51987
51988
51989
51990
51991
51992
51993
51994
51995
51996
51997
51998
51999
52000
52001
52002
52003
52004
52005
52006
52007
52008
52009
52010
52011
52012
52013
52014
52015
52016
52017
52018
52019
52020
52021
52022
52023
52024
52025
52026
52027
52028
52029
52030
52031
52032
52033
52034
52035
52036
52037
52038
52039
52040
52041
52042
52043
52044
52045
52046
52047
52048
52049
52050
52051
52052
52053
52054
52055
52056
52057
52058
52059
52060
52061
52062
52063
52064
52065
52066
52067
52068
52069
52070
52071
52072
52073
52074
52075
52076
52077
52078
52079
52080
52081
52082
52083
52084
52085
52086
52087
52088
52089
52090
52091
52092
52093
52094
52095
52096
52097
52098
52099
52100
52101
52102
52103
52104
52105
52106
52107
52108
52109
52110
52111
52112
52113
52114
52115
52116
52117
52118
52119
52120
52121
52122
52123
52124
52125
52126
52127
52128
52129
52130
52131
52132
52133
52134
52135
52136
52137
52138
52139
52140
52141
52142
52143
52144
52145
52146
52147
52148
52149
52150
52151
52152
52153
52154
52155
52156
52157
52158
52159
52160
52161
52162
52163
52164
52165
52166
52167
52168
52169
52170
52171
52172
52173
52174
52175
52176
52177
52178
52179
52180
52181
52182
52183
52184
52185
52186
52187
52188
52189
52190
52191
52192
52193
52194
52195
52196
52197
52198
52199
52200
52201
52202
52203
52204
52205
52206
52207
52208
52209
52210
52211
52212
52213
52214
52215
52216
52217
52218
52219
52220
52221
52222
52223
52224
52225
52226
52227
52228
52229
52230
52231
52232
52233
52234
52235
52236
52237
52238
52239
52240
52241
52242
52243
52244
52245
52246
52247
52248
52249
52250
52251
52252
52253
52254
52255
52256
52257
52258
52259
52260
52261
52262
52263
52264
52265
52266
52267
52268
52269
52270
52271
52272
52273
52274
52275
52276
52277
52278
52279
52280
52281
52282
52283
52284
52285
52286
52287
52288
52289
52290
52291
52292
52293
52294
52295
52296
52297
52298
52299
52300
52301
52302
52303
52304
52305
52306
52307
52308
52309
52310
52311
52312
52313
52314
52315
52316
52317
52318
52319
52320
52321
52322
52323
52324
52325
52326
52327
52328
52329
52330
52331
52332
52333
52334
52335
52336
52337
52338
52339
52340
52341
52342
52343
52344
52345
52346
52347
52348
52349
52350
52351
52352
52353
52354
52355
52356
52357
52358
52359
52360
52361
52362
52363
52364
52365
52366
52367
52368
52369
52370
52371
52372
52373
52374
52375
52376
52377
52378
52379
52380
52381
52382
52383
52384
52385
52386
52387
52388
52389
52390
52391
52392
52393
52394
52395
52396
52397
52398
52399
52400
52401
52402
52403
52404
52405
52406
52407
52408
52409
52410
52411
52412
52413
52414
52415
52416
52417
52418
52419
52420
52421
52422
52423
52424
52425
52426
52427
52428
52429
52430
52431
52432
52433
52434
52435
52436
52437
52438
52439
52440
52441
52442
52443
52444
52445
52446
52447
52448
52449
52450
52451
52452
52453
52454
52455
52456
52457
52458
52459
52460
52461
52462
52463
52464
52465
52466
52467
52468
52469
52470
52471
52472
52473
52474
52475
52476
52477
52478
52479
52480
52481
52482
52483
52484
52485
52486
52487
52488
52489
52490
52491
52492
52493
52494
52495
52496
52497
52498
52499
52500
52501
52502
52503
52504
52505
52506
52507
52508
52509
52510
52511
52512
52513
52514
52515
52516
52517
52518
52519
52520
52521
52522
52523
52524
52525
52526
52527
52528
52529
52530
52531
52532
52533
52534
52535
52536
52537
52538
52539
52540
52541
52542
52543
52544
52545
52546
52547
52548
52549
52550
52551
52552
52553
52554
52555
52556
52557
52558
52559
52560
52561
52562
52563
52564
52565
52566
52567
52568
52569
52570
52571
52572
52573
52574
52575
52576
52577
52578
52579
52580
52581
52582
52583
52584
52585
52586
52587
52588
52589
52590
52591
52592
52593
52594
52595
52596
52597
52598
52599
52600
52601
52602
52603
52604
52605
52606
52607
52608
52609
52610
52611
52612
52613
52614
52615
52616
52617
52618
52619
52620
52621
52622
52623
52624
52625
52626
52627
52628
52629
52630
52631
52632
52633
52634
52635
52636
52637
52638
52639
52640
52641
52642
52643
52644
52645
52646
52647
52648
52649
52650
52651
52652
52653
52654
52655
52656
52657
52658
52659
52660
52661
52662
52663
52664
52665
52666
52667
52668
52669
52670
52671
52672
52673
52674
52675
52676
52677
52678
52679
52680
52681
52682
52683
52684
52685
52686
52687
52688
52689
52690
52691
52692
52693
52694
52695
52696
52697
52698
52699
52700
52701
52702
52703
52704
52705
52706
52707
52708
52709
52710
52711
52712
52713
52714
52715
52716
52717
52718
52719
52720
52721
52722
52723
52724
52725
52726
52727
52728
52729
52730
52731
52732
52733
52734
52735
52736
52737
52738
52739
52740
52741
52742
52743
52744
52745
52746
52747
52748
52749
52750
52751
52752
52753
52754
52755
52756
52757
52758
52759
52760
52761
52762
52763
52764
52765
52766
52767
52768
52769
52770
52771
52772
52773
52774
52775
52776
52777
52778
52779
52780
52781
52782
52783
52784
52785
52786
52787
52788
52789
52790
52791
52792
52793
52794
52795
52796
52797
52798
52799
52800
52801
52802
52803
52804
52805
52806
52807
52808
52809
52810
52811
52812
52813
52814
52815
52816
52817
52818
52819
52820
52821
52822
52823
52824
52825
52826
52827
52828
52829
52830
52831
52832
52833
52834
52835
52836
52837
52838
52839
52840
52841
52842
52843
52844
52845
52846
52847
52848
52849
52850
52851
52852
52853
52854
52855
52856
52857
52858
52859
52860
52861
52862
52863
52864
52865
52866
52867
52868
52869
52870
52871
52872
52873
52874
52875
52876
52877
52878
52879
52880
52881
52882
52883
52884
52885
52886
52887
52888
52889
52890
52891
52892
52893
52894
52895
52896
52897
52898
52899
52900
52901
52902
52903
52904
52905
52906
52907
52908
52909
52910
52911
52912
52913
52914
52915
52916
52917
52918
52919
52920
52921
52922
52923
52924
52925
52926
52927
52928
52929
52930
52931
52932
52933
52934
52935
52936
52937
52938
52939
52940
52941
52942
52943
52944
52945
52946
52947
52948
52949
52950
52951
52952
52953
52954
52955
52956
52957
52958
52959
52960
52961
52962
52963
52964
52965
52966
52967
52968
52969
52970
52971
52972
52973
52974
52975
52976
52977
52978
52979
52980
52981
52982
52983
52984
52985
52986
52987
52988
52989
52990
52991
52992
52993
52994
52995
52996
52997
52998
52999
53000
53001
53002
53003
53004
53005
53006
53007
53008
53009
53010
53011
53012
53013
53014
53015
53016
53017
53018
53019
53020
53021
53022
53023
53024
53025
53026
53027
53028
53029
53030
53031
53032
53033
53034
53035
53036
53037
53038
53039
53040
53041
53042
53043
53044
53045
53046
53047
53048
53049
53050
53051
53052
53053
53054
53055
53056
53057
53058
53059
53060
53061
53062
53063
53064
53065
53066
53067
53068
53069
53070
53071
53072
53073
53074
53075
53076
53077
53078
53079
53080
53081
53082
53083
53084
53085
53086
53087
53088
53089
53090
53091
53092
53093
53094
53095
53096
53097
53098
53099
53100
53101
53102
53103
53104
53105
53106
53107
53108
53109
53110
53111
53112
53113
53114
53115
53116
53117
53118
53119
53120
53121
53122
53123
53124
53125
53126
53127
53128
53129
53130
53131
53132
53133
53134
53135
53136
53137
53138
53139
53140
53141
53142
53143
53144
53145
53146
53147
53148
53149
53150
53151
53152
53153
53154
53155
53156
53157
53158
53159
53160
53161
53162
53163
53164
53165
53166
53167
53168
53169
53170
53171
53172
53173
53174
53175
53176
53177
53178
53179
53180
53181
53182
53183
53184
53185
53186
53187
53188
53189
53190
53191
53192
53193
53194
53195
53196
53197
53198
53199
53200
53201
53202
53203
53204
53205
53206
53207
53208
53209
53210
53211
53212
53213
53214
53215
53216
53217
53218
53219
53220
53221
53222
53223
53224
53225
53226
53227
53228
53229
53230
53231
53232
53233
53234
53235
53236
53237
53238
53239
53240
53241
53242
53243
53244
53245
53246
53247
53248
53249
53250
53251
53252
53253
53254
53255
53256
53257
53258
53259
53260
53261
53262
53263
53264
53265
53266
53267
53268
53269
53270
53271
53272
53273
53274
53275
53276
53277
53278
53279
53280
53281
53282
53283
53284
53285
53286
53287
53288
53289
53290
53291
53292
53293
53294
53295
53296
53297
53298
53299
53300
53301
53302
53303
53304
53305
53306
53307
53308
53309
53310
53311
53312
53313
53314
53315
53316
53317
53318
53319
53320
53321
53322
53323
53324
53325
53326
53327
53328
53329
53330
53331
53332
53333
53334
53335
53336
53337
53338
53339
53340
53341
53342
53343
53344
53345
53346
53347
53348
53349
53350
53351
53352
53353
53354
53355
53356
53357
53358
53359
53360
53361
53362
53363
53364
53365
53366
53367
53368
53369
53370
53371
53372
53373
53374
53375
53376
53377
53378
53379
53380
53381
53382
53383
53384
53385
53386
53387
53388
53389
53390
53391
53392
53393
53394
53395
53396
53397
53398
53399
53400
53401
53402
53403
53404
53405
53406
53407
53408
53409
53410
53411
53412
53413
53414
53415
53416
53417
53418
53419
53420
53421
53422
53423
53424
53425
53426
53427
53428
53429
53430
53431
53432
53433
53434
53435
53436
53437
53438
53439
53440
53441
53442
53443
53444
53445
53446
53447
53448
53449
53450
53451
53452
53453
53454
53455
53456
53457
53458
53459
53460
53461
53462
53463
53464
53465
53466
53467
53468
53469
53470
53471
53472
53473
53474
53475
53476
53477
53478
53479
53480
53481
53482
53483
53484
53485
53486
53487
53488
53489
53490
53491
53492
53493
53494
53495
53496
53497
53498
53499
53500
53501
53502
53503
53504
53505
53506
53507
53508
53509
53510
53511
53512
53513
53514
53515
53516
53517
53518
53519
53520
53521
53522
53523
53524
53525
53526
53527
53528
53529
53530
53531
53532
53533
53534
53535
53536
53537
53538
53539
53540
53541
53542
53543
53544
53545
53546
53547
53548
53549
53550
53551
53552
53553
53554
53555
53556
53557
53558
53559
53560
53561
53562
53563
53564
53565
53566
53567
53568
53569
53570
53571
53572
53573
53574
53575
53576
53577
53578
53579
53580
53581
53582
53583
53584
53585
53586
53587
53588
53589
53590
53591
53592
53593
53594
53595
53596
53597
53598
53599
53600
53601
53602
53603
53604
53605
53606
53607
53608
53609
53610
53611
53612
53613
53614
53615
53616
53617
53618
53619
53620
53621
53622
53623
53624
53625
53626
53627
53628
53629
53630
53631
53632
53633
53634
53635
53636
53637
53638
53639
53640
53641
53642
53643
53644
53645
53646
53647
53648
53649
53650
53651
53652
53653
53654
53655
53656
53657
53658
53659
53660
53661
53662
53663
53664
53665
53666
53667
53668
53669
53670
53671
53672
53673
53674
53675
53676
53677
53678
53679
53680
53681
53682
53683
53684
53685
53686
53687
53688
53689
53690
53691
53692
53693
53694
53695
53696
53697
53698
53699
53700
53701
53702
53703
53704
53705
53706
53707
53708
53709
53710
53711
53712
53713
53714
53715
53716
53717
53718
53719
53720
53721
53722
53723
53724
53725
53726
53727
53728
53729
53730
53731
53732
53733
53734
53735
53736
53737
53738
53739
53740
53741
53742
53743
53744
53745
53746
53747
53748
53749
53750
53751
53752
53753
53754
53755
53756
53757
53758
53759
53760
53761
53762
53763
53764
53765
53766
53767
53768
53769
53770
53771
53772
53773
53774
53775
53776
53777
53778
53779
53780
53781
53782
53783
53784
53785
53786
53787
53788
53789
53790
53791
53792
53793
53794
53795
53796
53797
53798
53799
53800
53801
53802
53803
53804
53805
53806
53807
53808
53809
53810
53811
53812
53813
53814
53815
53816
53817
53818
53819
53820
53821
53822
53823
53824
53825
53826
53827
53828
53829
53830
53831
53832
53833
53834
53835
53836
53837
53838
53839
53840
53841
53842
53843
53844
53845
53846
53847
53848
53849
53850
53851
53852
53853
53854
53855
53856
53857
53858
53859
53860
53861
53862
53863
53864
53865
53866
53867
53868
53869
53870
53871
53872
53873
53874
53875
53876
53877
53878
53879
53880
53881
53882
53883
53884
53885
53886
53887
53888
53889
53890
53891
53892
53893
53894
53895
53896
53897
53898
53899
53900
53901
53902
53903
53904
53905
53906
53907
53908
53909
53910
53911
53912
53913
53914
53915
53916
53917
53918
53919
53920
53921
53922
53923
53924
53925
53926
53927
53928
53929
53930
53931
53932
53933
53934
53935
53936
53937
53938
53939
53940
53941
53942
53943
53944
53945
53946
53947
53948
53949
53950
53951
53952
53953
53954
53955
53956
53957
53958
53959
53960
53961
53962
53963
53964
53965
53966
53967
53968
53969
53970
53971
53972
53973
53974
53975
53976
53977
53978
53979
53980
53981
53982
53983
53984
53985
53986
53987
53988
53989
53990
53991
53992
53993
53994
53995
53996
53997
53998
53999
54000
54001
54002
54003
54004
54005
54006
54007
54008
54009
54010
54011
54012
54013
54014
54015
54016
54017
54018
54019
54020
54021
54022
54023
54024
54025
54026
54027
54028
54029
54030
54031
54032
54033
54034
54035
54036
54037
54038
54039
54040
54041
54042
54043
54044
54045
54046
54047
54048
54049
54050
54051
54052
54053
54054
54055
54056
54057
54058
54059
54060
54061
54062
54063
54064
54065
54066
54067
54068
54069
54070
54071
54072
54073
54074
54075
54076
54077
54078
54079
54080
54081
54082
54083
54084
54085
54086
54087
54088
54089
54090
54091
54092
54093
54094
54095
54096
54097
54098
54099
54100
54101
54102
54103
54104
54105
54106
54107
54108
54109
54110
54111
54112
54113
54114
54115
54116
54117
54118
54119
54120
54121
54122
54123
54124
54125
54126
54127
54128
54129
54130
54131
54132
54133
54134
54135
54136
54137
54138
54139
54140
54141
54142
54143
54144
54145
54146
54147
54148
54149
54150
54151
54152
54153
54154
54155
54156
54157
54158
54159
54160
54161
54162
54163
54164
54165
54166
54167
54168
54169
54170
54171
54172
54173
54174
54175
54176
54177
54178
54179
54180
54181
54182
54183
54184
54185
54186
54187
54188
54189
54190
54191
54192
54193
54194
54195
54196
54197
54198
54199
54200
54201
54202
54203
54204
54205
54206
54207
54208
54209
54210
54211
54212
54213
54214
54215
54216
54217
54218
54219
54220
54221
54222
54223
54224
54225
54226
54227
54228
54229
54230
54231
54232
54233
54234
54235
54236
54237
54238
54239
54240
54241
54242
54243
54244
54245
54246
54247
54248
54249
54250
54251
54252
54253
54254
54255
54256
54257
54258
54259
54260
54261
54262
54263
54264
54265
54266
54267
54268
54269
54270
54271
54272
54273
54274
54275
54276
54277
54278
54279
54280
54281
54282
54283
54284
54285
54286
54287
54288
54289
54290
54291
54292
54293
54294
54295
54296
54297
54298
54299
54300
54301
54302
54303
54304
54305
54306
54307
54308
54309
54310
54311
54312
54313
54314
54315
54316
54317
54318
54319
54320
54321
54322
54323
54324
54325
54326
54327
54328
54329
54330
54331
54332
54333
54334
54335
54336
54337
54338
54339
54340
54341
54342
54343
54344
54345
54346
54347
54348
54349
54350
54351
54352
54353
54354
54355
54356
54357
54358
54359
54360
54361
54362
54363
54364
54365
54366
54367
54368
54369
54370
54371
54372
54373
54374
54375
54376
54377
54378
54379
54380
54381
54382
54383
54384
54385
54386
54387
54388
54389
54390
54391
54392
54393
54394
54395
54396
54397
54398
54399
54400
54401
54402
54403
54404
54405
54406
54407
54408
54409
54410
54411
54412
54413
54414
54415
54416
54417
54418
54419
54420
54421
54422
54423
54424
54425
54426
54427
54428
54429
54430
54431
54432
54433
54434
54435
54436
54437
54438
54439
54440
54441
54442
54443
54444
54445
54446
54447
54448
54449
54450
54451
54452
54453
54454
54455
54456
54457
54458
54459
54460
54461
54462
54463
54464
54465
54466
54467
54468
54469
54470
54471
54472
54473
54474
54475
54476
54477
54478
54479
54480
54481
54482
54483
54484
54485
54486
54487
54488
54489
54490
54491
54492
54493
54494
54495
54496
54497
54498
54499
54500
54501
54502
54503
54504
54505
54506
54507
54508
54509
54510
54511
54512
54513
54514
54515
54516
54517
54518
54519
54520
54521
54522
54523
54524
54525
54526
54527
54528
54529
54530
54531
54532
54533
54534
54535
54536
54537
54538
54539
54540
54541
54542
54543
54544
54545
54546
54547
54548
54549
54550
54551
54552
54553
54554
54555
54556
54557
54558
54559
54560
54561
54562
54563
54564
54565
54566
54567
54568
54569
54570
54571
54572
54573
54574
54575
54576
54577
54578
54579
54580
54581
54582
54583
54584
54585
54586
54587
54588
54589
54590
54591
54592
54593
54594
54595
54596
54597
54598
54599
54600
54601
54602
54603
54604
54605
54606
54607
54608
54609
54610
54611
54612
54613
54614
54615
54616
54617
54618
54619
54620
54621
54622
54623
54624
54625
54626
54627
54628
54629
54630
54631
54632
54633
54634
54635
54636
54637
54638
54639
54640
54641
54642
54643
54644
54645
54646
54647
54648
54649
54650
54651
54652
54653
54654
54655
54656
54657
54658
54659
54660
54661
54662
54663
54664
54665
54666
54667
54668
54669
54670
54671
54672
54673
54674
54675
54676
54677
54678
54679
54680
54681
54682
54683
54684
54685
54686
54687
54688
54689
54690
54691
54692
54693
54694
54695
54696
54697
54698
54699
54700
54701
54702
54703
54704
54705
54706
54707
54708
54709
54710
54711
54712
54713
54714
54715
54716
54717
54718
54719
54720
54721
54722
54723
54724
54725
54726
54727
54728
54729
54730
54731
54732
54733
54734
54735
54736
54737
54738
54739
54740
54741
54742
54743
54744
54745
54746
54747
54748
54749
54750
54751
54752
54753
54754
54755
54756
54757
54758
54759
54760
54761
54762
54763
54764
54765
54766
54767
54768
54769
54770
54771
54772
54773
54774
54775
54776
54777
54778
54779
54780
54781
54782
54783
54784
54785
54786
54787
54788
54789
54790
54791
54792
54793
54794
54795
54796
54797
54798
54799
54800
54801
54802
54803
54804
54805
54806
54807
54808
54809
54810
54811
54812
54813
54814
54815
54816
54817
54818
54819
54820
54821
54822
54823
54824
54825
54826
54827
54828
54829
54830
54831
54832
54833
54834
54835
54836
54837
54838
54839
54840
54841
54842
54843
54844
54845
54846
54847
54848
54849
54850
54851
54852
54853
54854
54855
54856
54857
54858
54859
54860
54861
54862
54863
54864
54865
54866
54867
54868
54869
54870
54871
54872
54873
54874
54875
54876
54877
54878
54879
54880
54881
54882
54883
54884
54885
54886
54887
54888
54889
54890
54891
54892
54893
54894
54895
54896
54897
54898
54899
54900
54901
54902
54903
54904
54905
54906
54907
54908
54909
54910
54911
54912
54913
54914
54915
54916
54917
54918
54919
54920
54921
54922
54923
54924
54925
54926
54927
54928
54929
54930
54931
54932
54933
54934
54935
54936
54937
54938
54939
54940
54941
54942
54943
54944
54945
54946
54947
54948
54949
54950
54951
54952
54953
54954
54955
54956
54957
54958
54959
54960
54961
54962
54963
54964
54965
54966
54967
54968
54969
54970
54971
54972
54973
54974
54975
54976
54977
54978
54979
54980
54981
54982
54983
54984
54985
54986
54987
54988
54989
54990
54991
54992
54993
54994
54995
54996
54997
54998
54999
55000
55001
55002
55003
55004
55005
55006
55007
55008
55009
55010
55011
55012
55013
55014
55015
55016
55017
55018
55019
55020
55021
55022
55023
55024
55025
55026
55027
55028
55029
55030
55031
55032
55033
55034
55035
55036
55037
55038
55039
55040
55041
55042
55043
55044
55045
55046
55047
55048
55049
55050
55051
55052
55053
55054
55055
55056
55057
55058
55059
55060
55061
55062
55063
55064
55065
55066
55067
55068
55069
55070
55071
55072
55073
55074
55075
55076
55077
55078
55079
55080
55081
55082
55083
55084
55085
55086
55087
55088
55089
55090
55091
55092
55093
55094
55095
55096
55097
55098
55099
55100
55101
55102
55103
55104
55105
55106
55107
55108
55109
55110
55111
55112
55113
55114
55115
55116
55117
55118
55119
55120
55121
55122
55123
55124
55125
55126
55127
55128
55129
55130
55131
55132
55133
55134
55135
55136
55137
55138
55139
55140
55141
55142
55143
55144
55145
55146
55147
55148
55149
55150
55151
55152
55153
55154
55155
55156
55157
55158
55159
55160
55161
55162
55163
55164
55165
55166
55167
55168
55169
55170
55171
55172
55173
55174
55175
55176
55177
55178
55179
55180
55181
55182
55183
55184
55185
55186
55187
55188
55189
55190
55191
55192
55193
55194
55195
55196
55197
55198
55199
55200
55201
55202
55203
55204
55205
55206
55207
55208
55209
55210
55211
55212
55213
55214
55215
55216
55217
55218
55219
55220
55221
55222
55223
55224
55225
55226
55227
55228
55229
55230
55231
55232
55233
55234
55235
55236
55237
55238
55239
55240
55241
55242
55243
55244
55245
55246
55247
55248
55249
55250
55251
55252
55253
55254
55255
55256
55257
55258
55259
55260
55261
55262
55263
55264
55265
55266
55267
55268
55269
55270
55271
55272
55273
55274
55275
55276
55277
55278
55279
55280
55281
55282
55283
55284
55285
55286
55287
55288
55289
55290
55291
55292
55293
55294
55295
55296
55297
55298
55299
55300
55301
55302
55303
55304
55305
55306
55307
55308
55309
55310
55311
55312
55313
55314
55315
55316
55317
55318
55319
55320
55321
55322
55323
55324
55325
55326
55327
55328
55329
55330
55331
55332
55333
55334
55335
55336
55337
55338
55339
55340
55341
55342
55343
55344
55345
55346
55347
55348
55349
55350
55351
55352
55353
55354
55355
55356
55357
55358
55359
55360
55361
55362
55363
55364
55365
55366
55367
55368
55369
55370
55371
55372
55373
55374
55375
55376
55377
55378
55379
55380
55381
55382
55383
55384
55385
55386
55387
55388
55389
55390
55391
55392
55393
55394
55395
55396
55397
55398
55399
55400
55401
55402
55403
55404
55405
55406
55407
55408
55409
55410
55411
55412
55413
55414
55415
55416
55417
55418
55419
55420
55421
55422
55423
55424
55425
55426
55427
55428
55429
55430
55431
55432
55433
55434
55435
55436
55437
55438
55439
55440
55441
55442
55443
55444
55445
55446
55447
55448
55449
55450
55451
55452
55453
55454
55455
55456
55457
55458
55459
55460
55461
55462
55463
55464
55465
55466
55467
55468
55469
55470
55471
55472
55473
55474
55475
55476
55477
55478
55479
55480
55481
55482
55483
55484
55485
55486
55487
55488
55489
55490
55491
55492
55493
55494
55495
55496
55497
55498
55499
55500
55501
55502
55503
55504
55505
55506
55507
55508
55509
55510
55511
55512
55513
55514
55515
55516
55517
55518
55519
55520
55521
55522
55523
55524
55525
55526
55527
55528
55529
55530
55531
55532
55533
55534
55535
55536
55537
55538
55539
55540
55541
55542
55543
55544
55545
55546
55547
55548
55549
55550
55551
55552
55553
55554
55555
55556
55557
55558
55559
55560
55561
55562
55563
55564
55565
55566
55567
55568
55569
55570
55571
55572
55573
55574
55575
55576
55577
55578
55579
55580
55581
55582
55583
55584
55585
55586
55587
55588
55589
55590
55591
55592
55593
55594
55595
55596
55597
55598
55599
55600
55601
55602
55603
55604
55605
55606
55607
55608
55609
55610
55611
55612
55613
55614
55615
55616
55617
55618
55619
55620
55621
55622
55623
55624
55625
55626
55627
55628
55629
55630
55631
55632
55633
55634
55635
55636
55637
55638
55639
55640
55641
55642
55643
55644
55645
55646
55647
55648
55649
55650
55651
55652
55653
55654
55655
55656
55657
55658
55659
55660
55661
55662
55663
55664
55665
55666
55667
55668
55669
55670
55671
55672
55673
55674
55675
55676
55677
55678
55679
55680
55681
55682
55683
55684
55685
55686
55687
55688
55689
55690
55691
55692
55693
55694
55695
55696
55697
55698
55699
55700
55701
55702
55703
55704
55705
55706
55707
55708
55709
55710
55711
55712
55713
55714
55715
55716
55717
55718
55719
55720
55721
55722
55723
55724
55725
55726
55727
55728
55729
55730
55731
55732
55733
55734
55735
55736
55737
55738
55739
55740
55741
55742
55743
55744
55745
55746
55747
55748
55749
55750
55751
55752
55753
55754
55755
55756
55757
55758
55759
55760
55761
55762
55763
55764
55765
55766
55767
55768
55769
55770
55771
55772
55773
55774
55775
55776
55777
55778
55779
55780
55781
55782
55783
55784
55785
55786
55787
55788
55789
55790
55791
55792
55793
55794
55795
55796
55797
55798
55799
55800
55801
55802
55803
55804
55805
55806
55807
55808
55809
55810
55811
55812
55813
55814
55815
55816
55817
55818
55819
55820
55821
55822
55823
55824
55825
55826
55827
55828
55829
55830
55831
55832
55833
55834
55835
55836
55837
55838
55839
55840
55841
55842
55843
55844
55845
55846
55847
55848
55849
55850
55851
55852
55853
55854
55855
55856
55857
55858
55859
55860
55861
55862
55863
55864
55865
55866
55867
55868
55869
55870
55871
55872
55873
55874
55875
55876
55877
55878
55879
55880
55881
55882
55883
55884
55885
55886
55887
55888
55889
55890
55891
55892
55893
55894
55895
55896
55897
55898
55899
55900
55901
55902
55903
55904
55905
55906
55907
55908
55909
55910
55911
55912
55913
55914
55915
55916
55917
55918
55919
55920
55921
55922
55923
55924
55925
55926
55927
55928
55929
55930
55931
55932
55933
55934
55935
55936
55937
55938
55939
55940
55941
55942
55943
55944
55945
55946
55947
55948
55949
55950
55951
55952
55953
55954
55955
55956
55957
55958
55959
55960
55961
55962
55963
55964
55965
55966
55967
55968
55969
55970
55971
55972
55973
55974
55975
55976
55977
55978
55979
55980
55981
55982
55983
55984
55985
55986
55987
55988
55989
55990
55991
55992
55993
55994
55995
55996
55997
55998
55999
56000
56001
56002
56003
56004
56005
56006
56007
56008
56009
56010
56011
56012
56013
56014
56015
56016
56017
56018
56019
56020
56021
56022
56023
56024
56025
56026
56027
56028
56029
56030
56031
56032
56033
56034
56035
56036
56037
56038
56039
56040
56041
56042
56043
56044
56045
56046
56047
56048
56049
56050
56051
56052
56053
56054
56055
56056
56057
56058
56059
56060
56061
56062
56063
56064
56065
56066
56067
56068
56069
56070
56071
56072
56073
56074
56075
56076
56077
56078
56079
56080
56081
56082
56083
56084
56085
56086
56087
56088
56089
56090
56091
56092
56093
56094
56095
56096
56097
56098
56099
56100
56101
56102
56103
56104
56105
56106
56107
56108
56109
56110
56111
56112
56113
56114
56115
56116
56117
56118
56119
56120
56121
56122
56123
56124
56125
56126
56127
56128
56129
56130
56131
56132
56133
56134
56135
56136
56137
56138
56139
56140
56141
56142
56143
56144
56145
56146
56147
56148
56149
56150
56151
56152
56153
56154
56155
56156
56157
56158
56159
56160
56161
56162
56163
56164
56165
56166
56167
56168
56169
56170
56171
56172
56173
56174
56175
56176
56177
56178
56179
56180
56181
56182
56183
56184
56185
56186
56187
56188
56189
56190
56191
56192
56193
56194
56195
56196
56197
56198
56199
56200
56201
56202
56203
56204
56205
56206
56207
56208
56209
56210
56211
56212
56213
56214
56215
56216
56217
56218
56219
56220
56221
56222
56223
56224
56225
56226
56227
56228
56229
56230
56231
56232
56233
56234
56235
56236
56237
56238
56239
56240
56241
56242
56243
56244
56245
56246
56247
56248
56249
56250
56251
56252
56253
56254
56255
56256
56257
56258
56259
56260
56261
56262
56263
56264
56265
56266
56267
56268
56269
56270
56271
56272
56273
56274
56275
56276
56277
56278
56279
56280
56281
56282
56283
56284
56285
56286
56287
56288
56289
56290
56291
56292
56293
56294
56295
56296
56297
56298
56299
56300
56301
56302
56303
56304
56305
56306
56307
56308
56309
56310
56311
56312
56313
56314
56315
56316
56317
56318
56319
56320
56321
56322
56323
56324
56325
56326
56327
56328
56329
56330
56331
56332
56333
56334
56335
56336
56337
56338
56339
56340
56341
56342
56343
56344
56345
56346
56347
56348
56349
56350
56351
56352
56353
56354
56355
56356
56357
56358
56359
56360
56361
56362
56363
56364
56365
56366
56367
56368
56369
56370
56371
56372
56373
56374
56375
56376
56377
56378
56379
56380
56381
56382
56383
56384
56385
56386
56387
56388
56389
56390
56391
56392
56393
56394
56395
56396
56397
56398
56399
56400
56401
56402
56403
56404
56405
56406
56407
56408
56409
56410
56411
56412
56413
56414
56415
56416
56417
56418
56419
56420
56421
56422
56423
56424
56425
56426
56427
56428
56429
56430
56431
56432
56433
56434
56435
56436
56437
56438
56439
56440
56441
56442
56443
56444
56445
56446
56447
56448
56449
56450
56451
56452
56453
56454
56455
56456
56457
56458
56459
56460
56461
56462
56463
56464
56465
56466
56467
56468
56469
56470
56471
56472
56473
56474
56475
56476
56477
56478
56479
56480
56481
56482
56483
56484
56485
56486
56487
56488
56489
56490
56491
56492
56493
56494
56495
56496
56497
56498
56499
56500
56501
56502
56503
56504
56505
56506
56507
56508
56509
56510
56511
56512
56513
56514
56515
56516
56517
56518
56519
56520
56521
56522
56523
56524
56525
56526
56527
56528
56529
56530
56531
56532
56533
56534
56535
56536
56537
56538
56539
56540
56541
56542
56543
56544
56545
56546
56547
56548
56549
56550
56551
56552
56553
56554
56555
56556
56557
56558
56559
56560
56561
56562
56563
56564
56565
56566
56567
56568
56569
56570
56571
56572
56573
56574
56575
56576
56577
56578
56579
56580
56581
56582
56583
56584
56585
56586
56587
56588
56589
56590
56591
56592
56593
56594
56595
56596
56597
56598
56599
56600
56601
56602
56603
56604
56605
56606
56607
56608
56609
56610
56611
56612
56613
56614
56615
56616
56617
56618
56619
56620
56621
56622
56623
56624
56625
56626
56627
56628
56629
56630
56631
56632
56633
56634
56635
56636
56637
56638
56639
56640
56641
56642
56643
56644
56645
56646
56647
56648
56649
56650
56651
56652
56653
56654
56655
56656
56657
56658
56659
56660
56661
56662
56663
56664
56665
56666
56667
56668
56669
56670
56671
56672
56673
56674
56675
56676
56677
56678
56679
56680
56681
56682
56683
56684
56685
56686
56687
56688
56689
56690
56691
56692
56693
56694
56695
56696
56697
56698
56699
56700
56701
56702
56703
56704
56705
56706
56707
56708
56709
56710
56711
56712
56713
56714
56715
56716
56717
56718
56719
56720
56721
56722
56723
56724
56725
56726
56727
56728
56729
56730
56731
56732
56733
56734
56735
56736
56737
56738
56739
56740
56741
56742
56743
56744
56745
56746
56747
56748
56749
56750
56751
56752
56753
56754
56755
56756
56757
56758
56759
56760
56761
56762
56763
56764
56765
56766
56767
56768
56769
56770
56771
56772
56773
56774
56775
56776
56777
56778
56779
56780
56781
56782
56783
56784
56785
56786
56787
56788
56789
56790
56791
56792
56793
56794
56795
56796
56797
56798
56799
56800
56801
56802
56803
56804
56805
56806
56807
56808
56809
56810
56811
56812
56813
56814
56815
56816
56817
56818
56819
56820
56821
56822
56823
56824
56825
56826
56827
56828
56829
56830
56831
56832
56833
56834
56835
56836
56837
56838
56839
56840
56841
56842
56843
56844
56845
56846
56847
56848
56849
56850
56851
56852
56853
56854
56855
56856
56857
56858
56859
56860
56861
56862
56863
56864
56865
56866
56867
56868
56869
56870
56871
56872
56873
56874
56875
56876
56877
56878
56879
56880
56881
56882
56883
56884
56885
56886
56887
56888
56889
56890
56891
56892
56893
56894
56895
56896
56897
56898
56899
56900
56901
56902
56903
56904
56905
56906
56907
56908
56909
56910
56911
56912
56913
56914
56915
56916
56917
56918
56919
56920
56921
56922
56923
56924
56925
56926
56927
56928
56929
56930
56931
56932
56933
56934
56935
56936
56937
56938
56939
56940
56941
56942
56943
56944
56945
56946
56947
56948
56949
56950
56951
56952
56953
56954
56955
56956
56957
56958
56959
56960
56961
56962
56963
56964
56965
56966
56967
56968
56969
56970
56971
56972
56973
56974
56975
56976
56977
56978
56979
56980
56981
56982
56983
56984
56985
56986
56987
56988
56989
56990
56991
56992
56993
56994
56995
56996
56997
56998
56999
57000
57001
57002
57003
57004
57005
57006
57007
57008
57009
57010
57011
57012
57013
57014
57015
57016
57017
57018
57019
57020
57021
57022
57023
57024
57025
57026
57027
57028
57029
57030
57031
57032
57033
57034
57035
57036
57037
57038
57039
57040
57041
57042
57043
57044
57045
57046
57047
57048
57049
57050
57051
57052
57053
57054
57055
57056
57057
57058
57059
57060
57061
57062
57063
57064
57065
57066
57067
57068
57069
57070
57071
57072
57073
57074
57075
57076
57077
57078
57079
57080
57081
57082
57083
57084
57085
57086
57087
57088
57089
57090
57091
57092
57093
57094
57095
57096
57097
57098
57099
57100
57101
57102
57103
57104
57105
57106
57107
57108
57109
57110
57111
57112
57113
57114
57115
57116
57117
57118
57119
57120
57121
57122
57123
57124
57125
57126
57127
57128
57129
57130
57131
57132
57133
57134
57135
57136
57137
57138
57139
57140
57141
57142
57143
57144
57145
57146
57147
57148
57149
57150
57151
57152
57153
57154
57155
57156
57157
57158
57159
57160
57161
57162
57163
57164
57165
57166
57167
57168
57169
57170
57171
57172
57173
57174
57175
57176
57177
57178
57179
57180
57181
57182
57183
57184
57185
57186
57187
57188
57189
57190
57191
57192
57193
57194
57195
57196
57197
57198
57199
57200
57201
57202
57203
57204
57205
57206
57207
57208
57209
57210
57211
57212
57213
57214
57215
57216
57217
57218
57219
57220
57221
57222
57223
57224
57225
57226
57227
57228
57229
57230
57231
57232
57233
57234
57235
57236
57237
57238
57239
57240
57241
57242
57243
57244
57245
57246
57247
57248
57249
57250
57251
57252
57253
57254
57255
57256
57257
57258
57259
57260
57261
57262
57263
57264
57265
57266
57267
57268
57269
57270
57271
57272
57273
57274
57275
57276
57277
57278
57279
57280
57281
57282
57283
57284
57285
57286
57287
57288
57289
57290
57291
57292
57293
57294
57295
57296
57297
57298
57299
57300
57301
57302
57303
57304
57305
57306
57307
57308
57309
57310
57311
57312
57313
57314
57315
57316
57317
57318
57319
57320
57321
57322
57323
57324
57325
57326
57327
57328
57329
57330
57331
57332
57333
57334
57335
57336
57337
57338
57339
57340
57341
57342
57343
57344
57345
57346
57347
57348
57349
57350
57351
57352
57353
57354
57355
57356
57357
57358
57359
57360
57361
57362
57363
57364
57365
57366
57367
57368
57369
57370
57371
57372
57373
57374
57375
57376
57377
57378
57379
57380
57381
57382
57383
57384
57385
57386
57387
57388
57389
57390
57391
57392
57393
57394
57395
57396
57397
57398
57399
57400
57401
57402
57403
57404
57405
57406
57407
57408
57409
57410
57411
57412
57413
57414
57415
57416
57417
57418
57419
57420
57421
57422
57423
57424
57425
57426
57427
57428
57429
57430
57431
57432
57433
57434
57435
57436
57437
57438
57439
57440
57441
57442
57443
57444
57445
57446
57447
57448
57449
57450
57451
57452
57453
57454
57455
57456
57457
57458
57459
57460
57461
57462
57463
57464
57465
57466
57467
57468
57469
57470
57471
57472
57473
57474
57475
57476
57477
57478
57479
57480
57481
57482
57483
57484
57485
57486
57487
57488
57489
57490
57491
57492
57493
57494
57495
57496
57497
57498
57499
57500
57501
57502
57503
57504
57505
57506
57507
57508
57509
57510
57511
57512
57513
57514
57515
57516
57517
57518
57519
57520
57521
57522
57523
57524
57525
57526
57527
57528
57529
57530
57531
57532
57533
57534
57535
57536
57537
57538
57539
57540
57541
57542
57543
57544
57545
57546
57547
57548
57549
57550
57551
57552
57553
57554
57555
57556
57557
57558
57559
57560
57561
57562
57563
57564
57565
57566
57567
57568
57569
57570
57571
57572
57573
57574
57575
57576
57577
57578
57579
57580
57581
57582
57583
57584
57585
57586
57587
57588
57589
57590
57591
57592
57593
57594
57595
57596
57597
57598
57599
57600
57601
57602
57603
57604
57605
57606
57607
57608
57609
57610
57611
57612
57613
57614
57615
57616
57617
57618
57619
57620
57621
57622
57623
57624
57625
57626
57627
57628
57629
57630
57631
57632
57633
57634
57635
57636
57637
57638
57639
57640
57641
57642
57643
57644
57645
57646
57647
57648
57649
57650
57651
57652
57653
57654
57655
57656
57657
57658
57659
57660
57661
57662
57663
57664
57665
57666
57667
57668
57669
57670
57671
57672
57673
57674
57675
57676
57677
57678
57679
57680
57681
57682
57683
57684
57685
57686
57687
57688
57689
57690
57691
57692
57693
57694
57695
57696
57697
57698
57699
57700
57701
57702
57703
57704
57705
57706
57707
57708
57709
57710
57711
57712
57713
57714
57715
57716
57717
57718
57719
57720
57721
57722
57723
57724
57725
57726
57727
57728
57729
57730
57731
57732
57733
57734
57735
57736
57737
57738
57739
57740
57741
57742
57743
57744
57745
57746
57747
57748
57749
57750
57751
57752
57753
57754
57755
57756
57757
57758
57759
57760
57761
57762
57763
57764
57765
57766
57767
57768
57769
57770
57771
57772
57773
57774
57775
57776
57777
57778
57779
57780
57781
57782
57783
57784
57785
57786
57787
57788
57789
57790
57791
57792
57793
57794
57795
57796
57797
57798
57799
57800
57801
57802
57803
57804
57805
57806
57807
57808
57809
57810
57811
57812
57813
57814
57815
57816
57817
57818
57819
57820
57821
57822
57823
57824
57825
57826
57827
57828
57829
57830
57831
57832
57833
57834
57835
57836
57837
57838
57839
57840
57841
57842
57843
57844
57845
57846
57847
57848
57849
57850
57851
57852
57853
57854
57855
57856
57857
57858
57859
57860
57861
57862
57863
57864
57865
57866
57867
57868
57869
57870
57871
57872
57873
57874
57875
57876
57877
57878
57879
57880
57881
57882
57883
57884
57885
57886
57887
57888
57889
57890
57891
57892
57893
57894
57895
57896
57897
57898
57899
57900
57901
57902
57903
57904
57905
57906
57907
57908
57909
57910
57911
57912
57913
57914
57915
57916
57917
57918
57919
57920
57921
57922
57923
57924
57925
57926
57927
57928
57929
57930
57931
57932
57933
57934
57935
57936
57937
57938
57939
57940
57941
57942
57943
57944
57945
57946
57947
57948
57949
57950
57951
57952
57953
57954
57955
57956
57957
57958
57959
57960
57961
57962
57963
57964
57965
57966
57967
57968
57969
57970
57971
57972
57973
57974
57975
57976
57977
57978
57979
57980
57981
57982
57983
57984
57985
57986
57987
57988
57989
57990
57991
57992
57993
57994
57995
57996
57997
57998
57999
58000
58001
58002
58003
58004
58005
58006
58007
58008
58009
58010
58011
58012
58013
58014
58015
58016
58017
58018
58019
58020
58021
58022
58023
58024
58025
58026
58027
58028
58029
58030
58031
58032
58033
58034
58035
58036
58037
58038
58039
58040
58041
58042
58043
58044
58045
58046
58047
58048
58049
58050
58051
58052
58053
58054
58055
58056
58057
58058
58059
58060
58061
58062
58063
58064
58065
58066
58067
58068
58069
58070
58071
58072
58073
58074
58075
58076
58077
58078
58079
58080
58081
58082
58083
58084
58085
58086
58087
58088
58089
58090
58091
58092
58093
58094
58095
58096
58097
58098
58099
58100
58101
58102
58103
58104
58105
58106
58107
58108
58109
58110
58111
58112
58113
58114
58115
58116
58117
58118
58119
58120
58121
58122
58123
58124
58125
58126
58127
58128
58129
58130
58131
58132
58133
58134
58135
58136
58137
58138
58139
58140
58141
58142
58143
58144
58145
58146
58147
58148
58149
58150
58151
58152
58153
58154
58155
58156
58157
58158
58159
58160
58161
58162
58163
58164
58165
58166
58167
58168
58169
58170
58171
58172
58173
58174
58175
58176
58177
58178
58179
58180
58181
58182
58183
58184
58185
58186
58187
58188
58189
58190
58191
58192
58193
58194
58195
58196
58197
58198
58199
58200
58201
58202
58203
58204
58205
58206
58207
58208
58209
58210
58211
58212
58213
58214
58215
58216
58217
58218
58219
58220
58221
58222
58223
58224
58225
58226
58227
58228
58229
58230
58231
58232
58233
58234
58235
58236
58237
58238
58239
58240
58241
58242
58243
58244
58245
58246
58247
58248
58249
58250
58251
58252
58253
58254
58255
58256
58257
58258
58259
58260
58261
58262
58263
58264
58265
58266
58267
58268
58269
58270
58271
58272
58273
58274
58275
58276
58277
58278
58279
58280
58281
58282
58283
58284
58285
58286
58287
58288
58289
58290
58291
58292
58293
58294
58295
58296
58297
58298
58299
58300
58301
58302
58303
58304
58305
58306
58307
58308
58309
58310
58311
58312
58313
58314
58315
58316
58317
58318
58319
58320
58321
58322
58323
58324
58325
58326
58327
58328
58329
58330
58331
58332
58333
58334
58335
58336
58337
58338
58339
58340
58341
58342
58343
58344
58345
58346
58347
58348
58349
58350
58351
58352
58353
58354
58355
58356
58357
58358
58359
58360
58361
58362
58363
58364
58365
58366
58367
58368
58369
58370
58371
58372
58373
58374
58375
58376
58377
58378
58379
58380
58381
58382
58383
58384
58385
58386
58387
58388
58389
58390
58391
58392
58393
58394
58395
58396
58397
58398
58399
58400
58401
58402
58403
58404
58405
58406
58407
58408
58409
58410
58411
58412
58413
58414
58415
58416
58417
58418
58419
58420
58421
58422
58423
58424
58425
58426
58427
58428
58429
58430
58431
58432
58433
58434
58435
58436
58437
58438
58439
58440
58441
58442
58443
58444
58445
58446
58447
58448
58449
58450
58451
58452
58453
58454
58455
58456
58457
58458
58459
58460
58461
58462
58463
58464
58465
58466
58467
58468
58469
58470
58471
58472
58473
58474
58475
58476
58477
58478
58479
58480
58481
58482
58483
58484
58485
58486
58487
58488
58489
58490
58491
58492
58493
58494
58495
58496
58497
58498
58499
58500
58501
58502
58503
58504
58505
58506
58507
58508
58509
58510
58511
58512
58513
58514
58515
58516
58517
58518
58519
58520
58521
58522
58523
58524
58525
58526
58527
58528
58529
58530
58531
58532
58533
58534
58535
58536
58537
58538
58539
58540
58541
58542
58543
58544
58545
58546
58547
58548
58549
58550
58551
58552
58553
58554
58555
58556
58557
58558
58559
58560
58561
58562
58563
58564
58565
58566
58567
58568
58569
58570
58571
58572
58573
58574
58575
58576
58577
58578
58579
58580
58581
58582
58583
58584
58585
58586
58587
58588
58589
58590
58591
58592
58593
58594
58595
58596
58597
58598
58599
58600
58601
58602
58603
58604
58605
58606
58607
58608
58609
58610
58611
58612
58613
58614
58615
58616
58617
58618
58619
58620
58621
58622
58623
58624
58625
58626
58627
58628
58629
58630
58631
58632
58633
58634
58635
58636
58637
58638
58639
58640
58641
58642
58643
58644
58645
58646
58647
58648
58649
58650
58651
58652
58653
58654
58655
58656
58657
58658
58659
58660
58661
58662
58663
58664
58665
58666
58667
58668
58669
58670
58671
58672
58673
58674
58675
58676
58677
58678
58679
58680
58681
58682
58683
58684
58685
58686
58687
58688
58689
58690
58691
58692
58693
58694
58695
58696
58697
58698
58699
58700
58701
58702
58703
58704
58705
58706
58707
58708
58709
58710
58711
58712
58713
58714
58715
58716
58717
58718
58719
58720
58721
58722
58723
58724
58725
58726
58727
58728
58729
58730
58731
58732
58733
58734
58735
58736
58737
58738
58739
58740
58741
58742
58743
58744
58745
58746
58747
58748
58749
58750
58751
58752
58753
58754
58755
58756
58757
58758
58759
58760
58761
58762
58763
58764
58765
58766
58767
58768
58769
58770
58771
58772
58773
58774
58775
58776
58777
58778
58779
58780
58781
58782
58783
58784
58785
58786
58787
58788
58789
58790
58791
58792
58793
58794
58795
58796
58797
58798
58799
58800
58801
58802
58803
58804
58805
58806
58807
58808
58809
58810
58811
58812
58813
58814
58815
58816
58817
58818
58819
58820
58821
58822
58823
58824
58825
58826
58827
58828
58829
58830
58831
58832
58833
58834
58835
58836
58837
58838
58839
58840
58841
58842
58843
58844
58845
58846
58847
58848
58849
58850
58851
58852
58853
58854
58855
58856
58857
58858
58859
58860
58861
58862
58863
58864
58865
58866
58867
58868
58869
58870
58871
58872
58873
58874
58875
58876
58877
58878
58879
58880
58881
58882
58883
58884
58885
58886
58887
58888
58889
58890
58891
58892
58893
58894
58895
58896
58897
58898
58899
58900
58901
58902
58903
58904
58905
58906
58907
58908
58909
58910
58911
58912
58913
58914
58915
58916
58917
58918
58919
58920
58921
58922
58923
58924
58925
58926
58927
58928
58929
58930
58931
58932
58933
58934
58935
58936
58937
58938
58939
58940
58941
58942
58943
58944
58945
58946
58947
58948
58949
58950
58951
58952
58953
58954
58955
58956
58957
58958
58959
58960
58961
58962
58963
58964
58965
58966
58967
58968
58969
58970
58971
58972
58973
58974
58975
58976
58977
58978
58979
58980
58981
58982
58983
58984
58985
58986
58987
58988
58989
58990
58991
58992
58993
58994
58995
58996
58997
58998
58999
59000
59001
59002
59003
59004
59005
59006
59007
59008
59009
59010
59011
59012
59013
59014
59015
59016
59017
59018
59019
59020
59021
59022
59023
59024
59025
59026
59027
59028
59029
59030
59031
59032
59033
59034
59035
59036
59037
59038
59039
59040
59041
59042
59043
59044
59045
59046
59047
59048
59049
59050
59051
59052
59053
59054
59055
59056
59057
59058
59059
59060
59061
59062
59063
59064
59065
59066
59067
59068
59069
59070
59071
59072
59073
59074
59075
59076
59077
59078
59079
59080
59081
59082
59083
59084
59085
59086
59087
59088
59089
59090
59091
59092
59093
59094
59095
59096
59097
59098
59099
59100
59101
59102
59103
59104
59105
59106
59107
59108
59109
59110
59111
59112
59113
59114
59115
59116
59117
59118
59119
59120
59121
59122
59123
59124
59125
59126
59127
59128
59129
59130
59131
59132
59133
59134
59135
59136
59137
59138
59139
59140
59141
59142
59143
59144
59145
59146
59147
59148
59149
59150
59151
59152
59153
59154
59155
59156
59157
59158
59159
59160
59161
59162
59163
59164
59165
59166
59167
59168
59169
59170
59171
59172
59173
59174
59175
59176
59177
59178
59179
59180
59181
59182
59183
59184
59185
59186
59187
59188
59189
59190
59191
59192
59193
59194
59195
59196
59197
59198
59199
59200
59201
59202
59203
59204
59205
59206
59207
59208
59209
59210
59211
59212
59213
59214
59215
59216
59217
59218
59219
59220
59221
59222
59223
59224
59225
59226
59227
59228
59229
59230
59231
59232
59233
59234
59235
59236
59237
59238
59239
59240
59241
59242
59243
59244
59245
59246
59247
59248
59249
59250
59251
59252
59253
59254
59255
59256
59257
59258
59259
59260
59261
59262
59263
59264
59265
59266
59267
59268
59269
59270
59271
59272
59273
59274
59275
59276
59277
59278
59279
59280
59281
59282
59283
59284
59285
59286
59287
59288
59289
59290
59291
59292
59293
59294
59295
59296
59297
59298
59299
59300
59301
59302
59303
59304
59305
59306
59307
59308
59309
59310
59311
59312
59313
59314
59315
59316
59317
59318
59319
59320
59321
59322
59323
59324
59325
59326
59327
59328
59329
59330
59331
59332
59333
59334
59335
59336
59337
59338
59339
59340
59341
59342
59343
59344
59345
59346
59347
59348
59349
59350
59351
59352
59353
59354
59355
59356
59357
59358
59359
59360
59361
59362
59363
59364
59365
59366
59367
59368
59369
59370
59371
59372
59373
59374
59375
59376
59377
59378
59379
59380
59381
59382
59383
59384
59385
59386
59387
59388
59389
59390
59391
59392
59393
59394
59395
59396
59397
59398
59399
59400
59401
59402
59403
59404
59405
59406
59407
59408
59409
59410
59411
59412
59413
59414
59415
59416
59417
59418
59419
59420
59421
59422
59423
59424
59425
59426
59427
59428
59429
59430
59431
59432
59433
59434
59435
59436
59437
59438
59439
59440
59441
59442
59443
59444
59445
59446
59447
59448
59449
59450
59451
59452
59453
59454
59455
59456
59457
59458
59459
59460
59461
59462
59463
59464
59465
59466
59467
59468
59469
59470
59471
59472
59473
59474
59475
59476
59477
59478
59479
59480
59481
59482
59483
59484
59485
59486
59487
59488
59489
59490
59491
59492
59493
59494
59495
59496
59497
59498
59499
59500
59501
59502
59503
59504
59505
59506
59507
59508
59509
59510
59511
59512
59513
59514
59515
59516
59517
59518
59519
59520
59521
59522
59523
59524
59525
59526
59527
59528
59529
59530
59531
59532
59533
59534
59535
59536
59537
59538
59539
59540
59541
59542
59543
59544
59545
59546
59547
59548
59549
59550
59551
59552
59553
59554
59555
59556
59557
59558
59559
59560
59561
59562
59563
59564
59565
59566
59567
59568
59569
59570
59571
59572
59573
59574
59575
59576
59577
59578
59579
59580
59581
59582
59583
59584
59585
59586
59587
59588
59589
59590
59591
59592
59593
59594
59595
59596
59597
59598
59599
59600
59601
59602
59603
59604
59605
59606
59607
59608
59609
59610
59611
59612
59613
59614
59615
59616
59617
59618
59619
59620
59621
59622
59623
59624
59625
59626
59627
59628
59629
59630
59631
59632
59633
59634
59635
59636
59637
59638
59639
59640
59641
59642
59643
59644
59645
59646
59647
59648
59649
59650
59651
59652
59653
59654
59655
59656
59657
59658
59659
59660
59661
59662
59663
59664
59665
59666
59667
59668
59669
59670
59671
59672
59673
59674
59675
59676
59677
59678
59679
59680
59681
59682
59683
59684
59685
59686
59687
59688
59689
59690
59691
59692
59693
59694
59695
59696
59697
59698
59699
59700
59701
59702
59703
59704
59705
59706
59707
59708
59709
59710
59711
59712
59713
59714
59715
59716
59717
59718
59719
59720
59721
59722
59723
59724
59725
59726
59727
59728
59729
59730
59731
59732
59733
59734
59735
59736
59737
59738
59739
59740
59741
59742
59743
59744
59745
59746
59747
59748
59749
59750
59751
59752
59753
59754
59755
59756
59757
59758
59759
59760
59761
59762
59763
59764
59765
59766
59767
59768
59769
59770
59771
59772
59773
59774
59775
59776
59777
59778
59779
59780
59781
59782
59783
59784
59785
59786
59787
59788
59789
59790
59791
59792
59793
59794
59795
59796
59797
59798
59799
59800
59801
59802
59803
59804
59805
59806
59807
59808
59809
59810
59811
59812
59813
59814
59815
59816
59817
59818
59819
59820
59821
59822
59823
59824
59825
59826
59827
59828
59829
59830
59831
59832
59833
59834
59835
59836
59837
59838
59839
59840
59841
59842
59843
59844
59845
59846
59847
59848
59849
59850
59851
59852
59853
59854
59855
59856
59857
59858
59859
59860
59861
59862
59863
59864
59865
59866
59867
59868
59869
59870
59871
59872
59873
59874
59875
59876
59877
59878
59879
59880
59881
59882
59883
59884
59885
59886
59887
59888
59889
59890
59891
59892
59893
59894
59895
59896
59897
59898
59899
59900
59901
59902
59903
59904
59905
59906
59907
59908
59909
59910
59911
59912
59913
59914
59915
59916
59917
59918
59919
59920
59921
59922
59923
59924
59925
59926
59927
59928
59929
59930
59931
59932
59933
59934
59935
59936
59937
59938
59939
59940
59941
59942
59943
59944
59945
59946
59947
59948
59949
59950
59951
59952
59953
59954
59955
59956
59957
59958
59959
59960
59961
59962
59963
59964
59965
59966
59967
59968
59969
59970
59971
59972
59973
59974
59975
59976
59977
59978
59979
59980
59981
59982
59983
59984
59985
59986
59987
59988
59989
59990
59991
59992
59993
59994
59995
59996
59997
59998
59999
60000
60001
60002
60003
60004
60005
60006
60007
60008
60009
60010
60011
60012
60013
60014
60015
60016
60017
60018
60019
60020
60021
60022
60023
60024
60025
60026
60027
60028
60029
60030
60031
60032
60033
60034
60035
60036
60037
60038
60039
60040
60041
60042
60043
60044
60045
60046
60047
60048
60049
60050
60051
60052
60053
60054
60055
60056
60057
60058
60059
60060
60061
60062
60063
60064
60065
60066
60067
60068
60069
60070
60071
60072
60073
60074
60075
60076
60077
60078
60079
60080
60081
60082
60083
60084
60085
60086
60087
60088
60089
60090
60091
60092
60093
60094
60095
60096
60097
60098
60099
60100
60101
60102
60103
60104
60105
60106
60107
60108
60109
60110
60111
60112
60113
60114
60115
60116
60117
60118
60119
60120
60121
60122
60123
60124
60125
60126
60127
60128
60129
60130
60131
60132
60133
60134
60135
60136
60137
60138
60139
60140
60141
60142
60143
60144
60145
60146
60147
60148
60149
60150
60151
60152
60153
60154
60155
60156
60157
60158
60159
60160
60161
60162
60163
60164
60165
60166
60167
60168
60169
60170
60171
60172
60173
60174
60175
60176
60177
60178
60179
60180
60181
60182
60183
60184
60185
60186
60187
60188
60189
60190
60191
60192
60193
60194
60195
60196
60197
60198
60199
60200
60201
60202
60203
60204
60205
60206
60207
60208
60209
60210
60211
60212
60213
60214
60215
60216
60217
60218
60219
60220
60221
60222
60223
60224
60225
60226
60227
60228
60229
60230
60231
60232
60233
60234
60235
60236
60237
60238
60239
60240
60241
60242
60243
60244
60245
60246
60247
60248
60249
60250
60251
60252
60253
60254
60255
60256
60257
60258
60259
60260
60261
60262
60263
60264
60265
60266
60267
60268
60269
60270
60271
60272
60273
60274
60275
60276
60277
60278
60279
60280
60281
60282
60283
60284
60285
60286
60287
60288
60289
60290
60291
60292
60293
60294
60295
60296
60297
60298
60299
60300
60301
60302
60303
60304
60305
60306
60307
60308
60309
60310
60311
60312
60313
60314
60315
60316
60317
60318
60319
60320
60321
60322
60323
60324
60325
60326
60327
60328
60329
60330
60331
60332
60333
60334
60335
60336
60337
60338
60339
60340
60341
60342
60343
60344
60345
60346
60347
60348
60349
60350
60351
60352
60353
60354
60355
60356
60357
60358
60359
60360
60361
60362
60363
60364
60365
60366
60367
60368
60369
60370
60371
60372
60373
60374
60375
60376
60377
60378
60379
60380
60381
60382
60383
60384
60385
60386
60387
60388
60389
60390
60391
60392
60393
60394
60395
60396
60397
60398
60399
60400
60401
60402
60403
60404
60405
60406
60407
60408
60409
60410
60411
60412
60413
60414
60415
60416
60417
60418
60419
60420
60421
60422
60423
60424
60425
60426
60427
60428
60429
60430
60431
60432
60433
60434
60435
60436
60437
60438
60439
60440
60441
60442
60443
60444
60445
60446
60447
60448
60449
60450
60451
60452
60453
60454
60455
60456
60457
60458
60459
60460
60461
60462
60463
60464
60465
60466
60467
60468
60469
60470
60471
60472
60473
60474
60475
60476
60477
60478
60479
60480
60481
60482
60483
60484
60485
60486
60487
60488
60489
60490
60491
60492
60493
60494
60495
60496
60497
60498
60499
60500
60501
60502
60503
60504
60505
60506
60507
60508
60509
60510
60511
60512
60513
60514
60515
60516
60517
60518
60519
60520
60521
60522
60523
60524
60525
60526
60527
60528
60529
60530
60531
60532
60533
60534
60535
60536
60537
60538
60539
60540
60541
60542
60543
60544
60545
60546
60547
60548
60549
60550
60551
60552
60553
60554
60555
60556
60557
60558
60559
60560
60561
60562
60563
60564
60565
60566
60567
60568
60569
60570
60571
60572
60573
60574
60575
60576
60577
60578
60579
60580
60581
60582
60583
60584
60585
60586
60587
60588
60589
60590
60591
60592
60593
60594
60595
60596
60597
60598
60599
60600
60601
60602
60603
60604
60605
60606
60607
60608
60609
60610
60611
60612
60613
60614
60615
60616
60617
60618
60619
60620
60621
60622
60623
60624
60625
60626
60627
60628
60629
60630
60631
60632
60633
60634
60635
60636
60637
60638
60639
60640
60641
60642
60643
60644
60645
60646
60647
60648
60649
60650
60651
60652
60653
60654
60655
60656
60657
60658
60659
60660
60661
60662
60663
60664
60665
60666
60667
60668
60669
60670
60671
60672
60673
60674
60675
60676
60677
60678
60679
60680
60681
60682
60683
60684
60685
60686
60687
60688
60689
60690
60691
60692
60693
60694
60695
60696
60697
60698
60699
60700
60701
60702
60703
60704
60705
60706
60707
60708
.include "macros.inc"

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

.global lbl_8002ABE8
lbl_8002ABE8:
/* 8002ABE8 00026848  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 8002ABEC 0002684C  7C 08 02 A6 */	mflr r0
/* 8002ABF0 00026850  90 01 00 74 */	stw r0, 0x74(r1)
/* 8002ABF4 00026854  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 8002ABF8 00026858  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 8002ABFC 0002685C  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 8002AC00 00026860  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 8002AC04 00026864  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 8002AC08 00026868  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 8002AC0C 0002686C  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 8002AC10 00026870  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 8002AC14 00026874  39 61 00 30 */	addi r11, r1, 0x30
/* 8002AC18 00026878  48 19 C5 11 */	bl _savegpr_27
/* 8002AC1C 0002687C  7C 9C 23 78 */	mr r28, r4
/* 8002AC20 00026880  7C BE 2B 78 */	mr r30, r5
/* 8002AC24 00026884  7C DB 33 78 */	mr r27, r6
/* 8002AC28 00026888  38 61 00 08 */	addi r3, r1, 8
/* 8002AC2C 0002688C  4B FF FC 21 */	bl func_8002A84C
/* 8002AC30 00026890  48 00 84 59 */	bl func_80033088
/* 8002AC34 00026894  2C 03 00 00 */	cmpwi r3, 0
/* 8002AC38 00026898  7C 7F 1B 78 */	mr r31, r3
/* 8002AC3C 0002689C  40 82 00 0C */	bne lbl_8002AC48
/* 8002AC40 000268A0  38 60 00 01 */	li r3, 1
/* 8002AC44 000268A4  48 00 0D D8 */	b lbl_8002BA1C
lbl_8002AC48:
/* 8002AC48 000268A8  2C 1C 00 01 */	cmpwi r28, 1
/* 8002AC4C 000268AC  41 82 00 24 */	beq lbl_8002AC70
/* 8002AC50 000268B0  A8 1E 00 00 */	lha r0, 0(r30)
/* 8002AC54 000268B4  2C 00 00 22 */	cmpwi r0, 0x22
/* 8002AC58 000268B8  41 82 00 0C */	beq lbl_8002AC64
/* 8002AC5C 000268BC  38 60 00 01 */	li r3, 1
/* 8002AC60 000268C0  48 00 0D BC */	b lbl_8002BA1C
lbl_8002AC64:
/* 8002AC64 000268C4  80 1E 00 04 */	lwz r0, 4(r30)
/* 8002AC68 000268C8  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8002AC6C 000268CC  48 00 8F 11 */	bl func_80033B7C
lbl_8002AC70:
/* 8002AC70 000268D0  38 1C FF EF */	addi r0, r28, -17
/* 8002AC74 000268D4  28 00 00 5E */	cmplwi r0, 0x5e
/* 8002AC78 000268D8  41 81 0D A0 */	bgt lbl_8002BA18
/* 8002AC7C 000268DC  3C 60 80 41 */	lis r3, lbl_80409A90@ha
/* 8002AC80 000268E0  54 00 10 3A */	slwi r0, r0, 2
/* 8002AC84 000268E4  38 63 9A 90 */	addi r3, r3, lbl_80409A90@l
/* 8002AC88 000268E8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8002AC8C 000268EC  7C 69 03 A6 */	mtctr r3
/* 8002AC90 000268F0  4E 80 04 20 */	bctr
/* 8002AC94 000268F4  38 7E 00 08 */	addi r3, r30, 8
/* 8002AC98 000268F8  4B FF F6 05 */	bl func_8002A29C
/* 8002AC9C 000268FC  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002ACA0 00026900  7F E3 FB 78 */	mr r3, r31
/* 8002ACA4 00026904  48 00 8E D9 */	bl func_80033B7C
/* 8002ACA8 00026908  2C 03 00 00 */	cmpwi r3, 0
/* 8002ACAC 0002690C  41 82 00 20 */	beq lbl_8002ACCC
/* 8002ACB0 00026910  38 80 00 23 */	li r4, 0x23
/* 8002ACB4 00026914  38 00 00 00 */	li r0, 0
/* 8002ACB8 00026918  B0 9B 00 00 */	sth r4, 0(r27)
/* 8002ACBC 0002691C  B0 1B 00 02 */	sth r0, 2(r27)
/* 8002ACC0 00026920  48 00 A7 35 */	bl func_800353F4
/* 8002ACC4 00026924  90 7B 00 04 */	stw r3, 4(r27)
/* 8002ACC8 00026928  48 00 0D 50 */	b lbl_8002BA18
lbl_8002ACCC:
/* 8002ACCC 0002692C  7F 63 DB 78 */	mr r3, r27
/* 8002ACD0 00026930  38 80 00 00 */	li r4, 0
/* 8002ACD4 00026934  4B FF D8 81 */	bl func_80028554
/* 8002ACD8 00026938  48 00 0D 40 */	b lbl_8002BA18
/* 8002ACDC 0002693C  38 7E 00 08 */	addi r3, r30, 8
/* 8002ACE0 00026940  4B FF F5 BD */	bl func_8002A29C
/* 8002ACE4 00026944  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002ACE8 00026948  7F E3 FB 78 */	mr r3, r31
/* 8002ACEC 0002694C  48 00 8E 91 */	bl func_80033B7C
/* 8002ACF0 00026950  2C 03 00 00 */	cmpwi r3, 0
/* 8002ACF4 00026954  7C 7B 1B 78 */	mr r27, r3
/* 8002ACF8 00026958  41 82 00 44 */	beq lbl_8002AD3C
/* 8002ACFC 0002695C  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002AD00 00026960  4B FF F6 79 */	bl func_8002A378
/* 8002AD04 00026964  FF C0 08 90 */	fmr f30, f1
/* 8002AD08 00026968  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002AD0C 0002696C  4B FF F6 6D */	bl func_8002A378
/* 8002AD10 00026970  FF A0 08 90 */	fmr f29, f1
/* 8002AD14 00026974  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002AD18 00026978  4B FF F6 61 */	bl func_8002A378
/* 8002AD1C 0002697C  FF 80 08 90 */	fmr f28, f1
/* 8002AD20 00026980  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002AD24 00026984  4B FF F6 55 */	bl func_8002A378
/* 8002AD28 00026988  FC 40 E0 90 */	fmr f2, f28
/* 8002AD2C 0002698C  7F 63 DB 78 */	mr r3, r27
/* 8002AD30 00026990  FC 60 E8 90 */	fmr f3, f29
/* 8002AD34 00026994  FC 80 F0 90 */	fmr f4, f30
/* 8002AD38 00026998  48 00 A7 C5 */	bl func_800354FC
lbl_8002AD3C:
/* 8002AD3C 0002699C  38 60 00 01 */	li r3, 1
/* 8002AD40 000269A0  48 00 0C DC */	b lbl_8002BA1C
/* 8002AD44 000269A4  38 7E 00 08 */	addi r3, r30, 8
/* 8002AD48 000269A8  4B FF F5 55 */	bl func_8002A29C
/* 8002AD4C 000269AC  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002AD50 000269B0  7F E3 FB 78 */	mr r3, r31
/* 8002AD54 000269B4  48 00 8E 29 */	bl func_80033B7C
/* 8002AD58 000269B8  2C 03 00 00 */	cmpwi r3, 0
/* 8002AD5C 000269BC  41 82 00 08 */	beq lbl_8002AD64
/* 8002AD60 000269C0  48 00 A8 C9 */	bl func_80035628
lbl_8002AD64:
/* 8002AD64 000269C4  38 60 00 01 */	li r3, 1
/* 8002AD68 000269C8  48 00 0C B4 */	b lbl_8002BA1C
/* 8002AD6C 000269CC  38 7E 00 08 */	addi r3, r30, 8
/* 8002AD70 000269D0  4B FF F5 2D */	bl func_8002A29C
/* 8002AD74 000269D4  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002AD78 000269D8  7F E3 FB 78 */	mr r3, r31
/* 8002AD7C 000269DC  48 00 8E 01 */	bl func_80033B7C
/* 8002AD80 000269E0  2C 03 00 00 */	cmpwi r3, 0
/* 8002AD84 000269E4  41 82 00 10 */	beq lbl_8002AD94
/* 8002AD88 000269E8  48 00 0C CD */	bl func_8002BA54
/* 8002AD8C 000269EC  7F 63 DB 78 */	mr r3, r27
/* 8002AD90 000269F0  4B FF F5 BD */	bl func_8002A34C
lbl_8002AD94:
/* 8002AD94 000269F4  38 60 00 01 */	li r3, 1
/* 8002AD98 000269F8  48 00 0C 84 */	b lbl_8002BA1C
/* 8002AD9C 000269FC  38 7E 00 08 */	addi r3, r30, 8
/* 8002ADA0 00026A00  4B FF F4 FD */	bl func_8002A29C
/* 8002ADA4 00026A04  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002ADA8 00026A08  7F E3 FB 78 */	mr r3, r31
/* 8002ADAC 00026A0C  48 00 8D D1 */	bl func_80033B7C
/* 8002ADB0 00026A10  48 00 0C D9 */	bl func_8002BA88
/* 8002ADB4 00026A14  7F 63 DB 78 */	mr r3, r27
/* 8002ADB8 00026A18  4B FF F5 95 */	bl func_8002A34C
/* 8002ADBC 00026A1C  38 60 00 01 */	li r3, 1
/* 8002ADC0 00026A20  48 00 0C 5C */	b lbl_8002BA1C
/* 8002ADC4 00026A24  38 7E 00 08 */	addi r3, r30, 8
/* 8002ADC8 00026A28  4B FF F4 D5 */	bl func_8002A29C
/* 8002ADCC 00026A2C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002ADD0 00026A30  7F E3 FB 78 */	mr r3, r31
/* 8002ADD4 00026A34  48 00 8D A9 */	bl func_80033B7C
/* 8002ADD8 00026A38  2C 03 00 00 */	cmpwi r3, 0
/* 8002ADDC 00026A3C  41 82 00 10 */	beq lbl_8002ADEC
/* 8002ADE0 00026A40  48 00 0C DD */	bl func_8002BABC
/* 8002ADE4 00026A44  7F 63 DB 78 */	mr r3, r27
/* 8002ADE8 00026A48  4B FF F5 65 */	bl func_8002A34C
lbl_8002ADEC:
/* 8002ADEC 00026A4C  38 60 00 01 */	li r3, 1
/* 8002ADF0 00026A50  48 00 0C 2C */	b lbl_8002BA1C
/* 8002ADF4 00026A54  38 7E 00 08 */	addi r3, r30, 8
/* 8002ADF8 00026A58  4B FF F4 A5 */	bl func_8002A29C
/* 8002ADFC 00026A5C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002AE00 00026A60  7F E3 FB 78 */	mr r3, r31
/* 8002AE04 00026A64  48 00 8D 79 */	bl func_80033B7C
/* 8002AE08 00026A68  2C 03 00 00 */	cmpwi r3, 0
/* 8002AE0C 00026A6C  41 82 00 10 */	beq lbl_8002AE1C
/* 8002AE10 00026A70  48 00 0C E1 */	bl func_8002BAF0
/* 8002AE14 00026A74  7F 63 DB 78 */	mr r3, r27
/* 8002AE18 00026A78  4B FF F5 35 */	bl func_8002A34C
lbl_8002AE1C:
/* 8002AE1C 00026A7C  38 60 00 01 */	li r3, 1
/* 8002AE20 00026A80  48 00 0B FC */	b lbl_8002BA1C
/* 8002AE24 00026A84  38 7E 00 08 */	addi r3, r30, 8
/* 8002AE28 00026A88  4B FF F4 75 */	bl func_8002A29C
/* 8002AE2C 00026A8C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002AE30 00026A90  7F E3 FB 78 */	mr r3, r31
/* 8002AE34 00026A94  48 00 8D 49 */	bl func_80033B7C
/* 8002AE38 00026A98  2C 03 00 00 */	cmpwi r3, 0
/* 8002AE3C 00026A9C  7C 7C 1B 78 */	mr r28, r3
/* 8002AE40 00026AA0  41 82 00 64 */	beq lbl_8002AEA4
/* 8002AE44 00026AA4  38 7E 00 38 */	addi r3, r30, 0x38
/* 8002AE48 00026AA8  4B FF F4 55 */	bl func_8002A29C
/* 8002AE4C 00026AAC  7C 7B 1B 78 */	mr r27, r3
/* 8002AE50 00026AB0  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002AE54 00026AB4  4B FF F5 25 */	bl func_8002A378
/* 8002AE58 00026AB8  FF E0 08 90 */	fmr f31, f1
/* 8002AE5C 00026ABC  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002AE60 00026AC0  4B FF F5 19 */	bl func_8002A378
/* 8002AE64 00026AC4  FF C0 08 90 */	fmr f30, f1
/* 8002AE68 00026AC8  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002AE6C 00026ACC  4B FF F5 0D */	bl func_8002A378
/* 8002AE70 00026AD0  FF A0 08 90 */	fmr f29, f1
/* 8002AE74 00026AD4  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002AE78 00026AD8  4B FF F5 01 */	bl func_8002A378
/* 8002AE7C 00026ADC  FF 80 08 90 */	fmr f28, f1
/* 8002AE80 00026AE0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002AE84 00026AE4  4B FF F4 F5 */	bl func_8002A378
/* 8002AE88 00026AE8  FC 40 E0 90 */	fmr f2, f28
/* 8002AE8C 00026AEC  7F 83 E3 78 */	mr r3, r28
/* 8002AE90 00026AF0  FC 60 E8 90 */	fmr f3, f29
/* 8002AE94 00026AF4  7F 64 DB 78 */	mr r4, r27
/* 8002AE98 00026AF8  FC 80 F0 90 */	fmr f4, f30
/* 8002AE9C 00026AFC  FC A0 F8 90 */	fmr f5, f31
/* 8002AEA0 00026B00  48 00 A7 F1 */	bl func_80035690
lbl_8002AEA4:
/* 8002AEA4 00026B04  38 60 00 01 */	li r3, 1
/* 8002AEA8 00026B08  48 00 0B 74 */	b lbl_8002BA1C
/* 8002AEAC 00026B0C  38 7E 00 08 */	addi r3, r30, 8
/* 8002AEB0 00026B10  4B FF F3 ED */	bl func_8002A29C
/* 8002AEB4 00026B14  28 03 00 01 */	cmplwi r3, 1
/* 8002AEB8 00026B18  7C 60 1B 78 */	mr r0, r3
/* 8002AEBC 00026B1C  41 81 00 38 */	bgt lbl_8002AEF4
/* 8002AEC0 00026B20  7F E3 FB 78 */	mr r3, r31
/* 8002AEC4 00026B24  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8002AEC8 00026B28  48 00 8C B5 */	bl func_80033B7C
/* 8002AECC 00026B2C  2C 03 00 00 */	cmpwi r3, 0
/* 8002AED0 00026B30  41 82 00 24 */	beq lbl_8002AEF4
/* 8002AED4 00026B34  48 00 AA 41 */	bl func_80035914
/* 8002AED8 00026B38  2C 03 00 00 */	cmpwi r3, 0
/* 8002AEDC 00026B3C  41 82 00 18 */	beq lbl_8002AEF4
/* 8002AEE0 00026B40  7F 63 DB 78 */	mr r3, r27
/* 8002AEE4 00026B44  38 80 00 01 */	li r4, 1
/* 8002AEE8 00026B48  4B FF D6 6D */	bl func_80028554
/* 8002AEEC 00026B4C  38 60 00 01 */	li r3, 1
/* 8002AEF0 00026B50  48 00 0B 2C */	b lbl_8002BA1C
lbl_8002AEF4:
/* 8002AEF4 00026B54  7F E3 FB 78 */	mr r3, r31
/* 8002AEF8 00026B58  48 00 9A 39 */	bl func_80034930
/* 8002AEFC 00026B5C  7C 64 1B 78 */	mr r4, r3
/* 8002AF00 00026B60  7F 63 DB 78 */	mr r3, r27
/* 8002AF04 00026B64  4B FF D6 51 */	bl func_80028554
/* 8002AF08 00026B68  38 60 00 01 */	li r3, 1
/* 8002AF0C 00026B6C  48 00 0B 10 */	b lbl_8002BA1C
/* 8002AF10 00026B70  7F E3 FB 78 */	mr r3, r31
/* 8002AF14 00026B74  48 00 8C F9 */	bl func_80033C0C
/* 8002AF18 00026B78  38 60 00 01 */	li r3, 1
/* 8002AF1C 00026B7C  48 00 0B 00 */	b lbl_8002BA1C
/* 8002AF20 00026B80  7F E3 FB 78 */	mr r3, r31
/* 8002AF24 00026B84  48 00 8D 49 */	bl func_80033C6C
/* 8002AF28 00026B88  38 60 00 01 */	li r3, 1
/* 8002AF2C 00026B8C  48 00 0A F0 */	b lbl_8002BA1C
/* 8002AF30 00026B90  38 7E 00 08 */	addi r3, r30, 8
/* 8002AF34 00026B94  4B FF F3 69 */	bl func_8002A29C
/* 8002AF38 00026B98  7C 64 1B 78 */	mr r4, r3
/* 8002AF3C 00026B9C  7F E3 FB 78 */	mr r3, r31
/* 8002AF40 00026BA0  48 00 99 7D */	bl func_800348BC
/* 8002AF44 00026BA4  38 60 00 01 */	li r3, 1
/* 8002AF48 00026BA8  48 00 0A D4 */	b lbl_8002BA1C
/* 8002AF4C 00026BAC  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002AF50 00026BB0  4B FF F4 29 */	bl func_8002A378
/* 8002AF54 00026BB4  FF C0 08 90 */	fmr f30, f1
/* 8002AF58 00026BB8  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002AF5C 00026BBC  4B FF F4 1D */	bl func_8002A378
/* 8002AF60 00026BC0  FF A0 08 90 */	fmr f29, f1
/* 8002AF64 00026BC4  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002AF68 00026BC8  4B FF F4 11 */	bl func_8002A378
/* 8002AF6C 00026BCC  FF 80 08 90 */	fmr f28, f1
/* 8002AF70 00026BD0  38 7E 00 08 */	addi r3, r30, 8
/* 8002AF74 00026BD4  4B FF F4 05 */	bl func_8002A378
/* 8002AF78 00026BD8  FC 40 E0 90 */	fmr f2, f28
/* 8002AF7C 00026BDC  7F E3 FB 78 */	mr r3, r31
/* 8002AF80 00026BE0  FC 60 E8 90 */	fmr f3, f29
/* 8002AF84 00026BE4  FC 80 F0 90 */	fmr f4, f30
/* 8002AF88 00026BE8  48 00 91 49 */	bl func_800340D0
/* 8002AF8C 00026BEC  38 60 00 01 */	li r3, 1
/* 8002AF90 00026BF0  48 00 0A 8C */	b lbl_8002BA1C
/* 8002AF94 00026BF4  38 7E 00 08 */	addi r3, r30, 8
/* 8002AF98 00026BF8  4B FF F3 E1 */	bl func_8002A378
/* 8002AF9C 00026BFC  7F E3 FB 78 */	mr r3, r31
/* 8002AFA0 00026C00  48 00 91 D1 */	bl func_80034170
/* 8002AFA4 00026C04  38 60 00 01 */	li r3, 1
/* 8002AFA8 00026C08  48 00 0A 74 */	b lbl_8002BA1C
/* 8002AFAC 00026C0C  38 7E 00 08 */	addi r3, r30, 8
/* 8002AFB0 00026C10  4B FF F3 C9 */	bl func_8002A378
/* 8002AFB4 00026C14  7F E3 FB 78 */	mr r3, r31
/* 8002AFB8 00026C18  48 00 92 C9 */	bl func_80034280
/* 8002AFBC 00026C1C  38 60 00 01 */	li r3, 1
/* 8002AFC0 00026C20  48 00 0A 5C */	b lbl_8002BA1C
/* 8002AFC4 00026C24  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002AFC8 00026C28  4B FF F2 D5 */	bl func_8002A29C
/* 8002AFCC 00026C2C  7C 7B 1B 78 */	mr r27, r3
/* 8002AFD0 00026C30  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002AFD4 00026C34  4B FF F3 A5 */	bl func_8002A378
/* 8002AFD8 00026C38  FF E0 08 90 */	fmr f31, f1
/* 8002AFDC 00026C3C  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002AFE0 00026C40  4B FF F3 99 */	bl func_8002A378
/* 8002AFE4 00026C44  FF C0 08 90 */	fmr f30, f1
/* 8002AFE8 00026C48  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002AFEC 00026C4C  4B FF F3 8D */	bl func_8002A378
/* 8002AFF0 00026C50  FF A0 08 90 */	fmr f29, f1
/* 8002AFF4 00026C54  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002AFF8 00026C58  4B FF F3 81 */	bl func_8002A378
/* 8002AFFC 00026C5C  FF 80 08 90 */	fmr f28, f1
/* 8002B000 00026C60  38 7E 00 08 */	addi r3, r30, 8
/* 8002B004 00026C64  4B FF F3 75 */	bl func_8002A378
/* 8002B008 00026C68  FC 40 E0 90 */	fmr f2, f28
/* 8002B00C 00026C6C  7F E3 FB 78 */	mr r3, r31
/* 8002B010 00026C70  FC 60 E8 90 */	fmr f3, f29
/* 8002B014 00026C74  7F 64 DB 78 */	mr r4, r27
/* 8002B018 00026C78  FC 80 F0 90 */	fmr f4, f30
/* 8002B01C 00026C7C  FC A0 F8 90 */	fmr f5, f31
/* 8002B020 00026C80  48 00 93 71 */	bl func_80034390
/* 8002B024 00026C84  38 60 00 01 */	li r3, 1
/* 8002B028 00026C88  48 00 09 F4 */	b lbl_8002BA1C
/* 8002B02C 00026C8C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B030 00026C90  4B FF F2 6D */	bl func_8002A29C
/* 8002B034 00026C94  7C 7B 1B 78 */	mr r27, r3
/* 8002B038 00026C98  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B03C 00026C9C  4B FF F3 3D */	bl func_8002A378
/* 8002B040 00026CA0  FF 80 08 90 */	fmr f28, f1
/* 8002B044 00026CA4  38 7E 00 08 */	addi r3, r30, 8
/* 8002B048 00026CA8  4B FF F3 31 */	bl func_8002A378
/* 8002B04C 00026CAC  FC 40 E0 90 */	fmr f2, f28
/* 8002B050 00026CB0  7F E3 FB 78 */	mr r3, r31
/* 8002B054 00026CB4  7F 64 DB 78 */	mr r4, r27
/* 8002B058 00026CB8  48 00 94 3D */	bl func_80034494
/* 8002B05C 00026CBC  38 60 00 01 */	li r3, 1
/* 8002B060 00026CC0  48 00 09 BC */	b lbl_8002BA1C
/* 8002B064 00026CC4  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B068 00026CC8  4B FF F2 35 */	bl func_8002A29C
/* 8002B06C 00026CCC  7C 7B 1B 78 */	mr r27, r3
/* 8002B070 00026CD0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B074 00026CD4  4B FF F3 05 */	bl func_8002A378
/* 8002B078 00026CD8  FF 80 08 90 */	fmr f28, f1
/* 8002B07C 00026CDC  38 7E 00 08 */	addi r3, r30, 8
/* 8002B080 00026CE0  4B FF F2 F9 */	bl func_8002A378
/* 8002B084 00026CE4  FC 40 E0 90 */	fmr f2, f28
/* 8002B088 00026CE8  7F E3 FB 78 */	mr r3, r31
/* 8002B08C 00026CEC  7F 64 DB 78 */	mr r4, r27
/* 8002B090 00026CF0  48 00 94 9D */	bl func_8003452C
/* 8002B094 00026CF4  38 60 00 01 */	li r3, 1
/* 8002B098 00026CF8  48 00 09 84 */	b lbl_8002BA1C
/* 8002B09C 00026CFC  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B0A0 00026D00  4B FF F1 FD */	bl func_8002A29C
/* 8002B0A4 00026D04  7C 7C 1B 78 */	mr r28, r3
/* 8002B0A8 00026D08  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B0AC 00026D0C  4B FF F2 CD */	bl func_8002A378
/* 8002B0B0 00026D10  FF 80 08 90 */	fmr f28, f1
/* 8002B0B4 00026D14  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B0B8 00026D18  4B FF F1 E5 */	bl func_8002A29C
/* 8002B0BC 00026D1C  7C 7B 1B 78 */	mr r27, r3
/* 8002B0C0 00026D20  38 7E 00 08 */	addi r3, r30, 8
/* 8002B0C4 00026D24  4B FF F2 B5 */	bl func_8002A378
/* 8002B0C8 00026D28  FC 40 E0 90 */	fmr f2, f28
/* 8002B0CC 00026D2C  7F E3 FB 78 */	mr r3, r31
/* 8002B0D0 00026D30  7F 64 DB 78 */	mr r4, r27
/* 8002B0D4 00026D34  7F 85 E3 78 */	mr r5, r28
/* 8002B0D8 00026D38  48 00 95 59 */	bl func_80034630
/* 8002B0DC 00026D3C  38 60 00 01 */	li r3, 1
/* 8002B0E0 00026D40  48 00 09 3C */	b lbl_8002BA1C
/* 8002B0E4 00026D44  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B0E8 00026D48  4B FF F1 B5 */	bl func_8002A29C
/* 8002B0EC 00026D4C  7C 7C 1B 78 */	mr r28, r3
/* 8002B0F0 00026D50  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B0F4 00026D54  4B FF F2 85 */	bl func_8002A378
/* 8002B0F8 00026D58  FF 80 08 90 */	fmr f28, f1
/* 8002B0FC 00026D5C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B100 00026D60  4B FF F1 9D */	bl func_8002A29C
/* 8002B104 00026D64  7C 7B 1B 78 */	mr r27, r3
/* 8002B108 00026D68  38 7E 00 08 */	addi r3, r30, 8
/* 8002B10C 00026D6C  4B FF F2 6D */	bl func_8002A378
/* 8002B110 00026D70  FC 40 E0 90 */	fmr f2, f28
/* 8002B114 00026D74  7F E3 FB 78 */	mr r3, r31
/* 8002B118 00026D78  7F 64 DB 78 */	mr r4, r27
/* 8002B11C 00026D7C  7F 85 E3 78 */	mr r5, r28
/* 8002B120 00026D80  48 00 94 A5 */	bl func_800345C4
/* 8002B124 00026D84  38 60 00 01 */	li r3, 1
/* 8002B128 00026D88  48 00 08 F4 */	b lbl_8002BA1C
/* 8002B12C 00026D8C  38 7E 00 38 */	addi r3, r30, 0x38
/* 8002B130 00026D90  4B FF F1 6D */	bl func_8002A29C
/* 8002B134 00026D94  7C 7C 1B 78 */	mr r28, r3
/* 8002B138 00026D98  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002B13C 00026D9C  4B FF F2 3D */	bl func_8002A378
/* 8002B140 00026DA0  FF E0 08 90 */	fmr f31, f1
/* 8002B144 00026DA4  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002B148 00026DA8  4B FF F2 31 */	bl func_8002A378
/* 8002B14C 00026DAC  FF C0 08 90 */	fmr f30, f1
/* 8002B150 00026DB0  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B154 00026DB4  4B FF F1 49 */	bl func_8002A29C
/* 8002B158 00026DB8  7C 7B 1B 78 */	mr r27, r3
/* 8002B15C 00026DBC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B160 00026DC0  4B FF F2 19 */	bl func_8002A378
/* 8002B164 00026DC4  FF A0 08 90 */	fmr f29, f1
/* 8002B168 00026DC8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B16C 00026DCC  4B FF F2 0D */	bl func_8002A378
/* 8002B170 00026DD0  FF 80 08 90 */	fmr f28, f1
/* 8002B174 00026DD4  38 7E 00 08 */	addi r3, r30, 8
/* 8002B178 00026DD8  4B FF F2 01 */	bl func_8002A378
/* 8002B17C 00026DDC  FC 40 E0 90 */	fmr f2, f28
/* 8002B180 00026DE0  7F E3 FB 78 */	mr r3, r31
/* 8002B184 00026DE4  FC 60 E8 90 */	fmr f3, f29
/* 8002B188 00026DE8  7F 64 DB 78 */	mr r4, r27
/* 8002B18C 00026DEC  FC 80 F0 90 */	fmr f4, f30
/* 8002B190 00026DF0  7F 85 E3 78 */	mr r5, r28
/* 8002B194 00026DF4  FC A0 F8 90 */	fmr f5, f31
/* 8002B198 00026DF8  48 00 95 05 */	bl func_8003469C
/* 8002B19C 00026DFC  48 00 08 7C */	b lbl_8002BA18
/* 8002B1A0 00026E00  38 7E 00 38 */	addi r3, r30, 0x38
/* 8002B1A4 00026E04  4B FF F0 F9 */	bl func_8002A29C
/* 8002B1A8 00026E08  7C 7C 1B 78 */	mr r28, r3
/* 8002B1AC 00026E0C  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002B1B0 00026E10  4B FF F1 C9 */	bl func_8002A378
/* 8002B1B4 00026E14  FF E0 08 90 */	fmr f31, f1
/* 8002B1B8 00026E18  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002B1BC 00026E1C  4B FF F1 BD */	bl func_8002A378
/* 8002B1C0 00026E20  FF C0 08 90 */	fmr f30, f1
/* 8002B1C4 00026E24  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B1C8 00026E28  4B FF F0 D5 */	bl func_8002A29C
/* 8002B1CC 00026E2C  7C 7B 1B 78 */	mr r27, r3
/* 8002B1D0 00026E30  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B1D4 00026E34  4B FF F1 A5 */	bl func_8002A378
/* 8002B1D8 00026E38  FF A0 08 90 */	fmr f29, f1
/* 8002B1DC 00026E3C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B1E0 00026E40  4B FF F1 99 */	bl func_8002A378
/* 8002B1E4 00026E44  FF 80 08 90 */	fmr f28, f1
/* 8002B1E8 00026E48  38 7E 00 08 */	addi r3, r30, 8
/* 8002B1EC 00026E4C  4B FF F1 8D */	bl func_8002A378
/* 8002B1F0 00026E50  FC 40 E0 90 */	fmr f2, f28
/* 8002B1F4 00026E54  7F E3 FB 78 */	mr r3, r31
/* 8002B1F8 00026E58  FC 60 E8 90 */	fmr f3, f29
/* 8002B1FC 00026E5C  7F 64 DB 78 */	mr r4, r27
/* 8002B200 00026E60  FC 80 F0 90 */	fmr f4, f30
/* 8002B204 00026E64  7F 85 E3 78 */	mr r5, r28
/* 8002B208 00026E68  FC A0 F8 90 */	fmr f5, f31
/* 8002B20C 00026E6C  48 00 95 B1 */	bl func_800347BC
/* 8002B210 00026E70  48 00 08 08 */	b lbl_8002BA18
/* 8002B214 00026E74  38 7E 00 08 */	addi r3, r30, 8
/* 8002B218 00026E78  4B FF F0 85 */	bl func_8002A29C
/* 8002B21C 00026E7C  7C 03 00 D0 */	neg r0, r3
/* 8002B220 00026E80  7C 00 1B 78 */	or r0, r0, r3
/* 8002B224 00026E84  7F E3 FB 78 */	mr r3, r31
/* 8002B228 00026E88  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8002B22C 00026E8C  48 00 9C 3D */	bl func_80034E68
/* 8002B230 00026E90  48 00 07 E8 */	b lbl_8002BA18
/* 8002B234 00026E94  38 7E 00 08 */	addi r3, r30, 8
/* 8002B238 00026E98  4B FF F1 41 */	bl func_8002A378
/* 8002B23C 00026E9C  7F E3 FB 78 */	mr r3, r31
/* 8002B240 00026EA0  48 00 9C 61 */	bl func_80034EA0
/* 8002B244 00026EA4  48 00 07 D4 */	b lbl_8002BA18
/* 8002B248 00026EA8  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B24C 00026EAC  4B FF F0 51 */	bl func_8002A29C
/* 8002B250 00026EB0  7C 7B 1B 78 */	mr r27, r3
/* 8002B254 00026EB4  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B258 00026EB8  4B FF F1 21 */	bl func_8002A378
/* 8002B25C 00026EBC  FF 80 08 90 */	fmr f28, f1
/* 8002B260 00026EC0  38 7E 00 08 */	addi r3, r30, 8
/* 8002B264 00026EC4  4B FF F1 15 */	bl func_8002A378
/* 8002B268 00026EC8  FC 40 E0 90 */	fmr f2, f28
/* 8002B26C 00026ECC  7F E3 FB 78 */	mr r3, r31
/* 8002B270 00026ED0  7F 64 DB 78 */	mr r4, r27
/* 8002B274 00026ED4  48 00 9C 69 */	bl func_80034EDC
/* 8002B278 00026ED8  48 00 07 A0 */	b lbl_8002BA18
/* 8002B27C 00026EDC  38 7E 00 08 */	addi r3, r30, 8
/* 8002B280 00026EE0  4B FF F0 1D */	bl func_8002A29C
/* 8002B284 00026EE4  7C 03 00 D0 */	neg r0, r3
/* 8002B288 00026EE8  7C 00 1B 78 */	or r0, r0, r3
/* 8002B28C 00026EEC  7F E3 FB 78 */	mr r3, r31
/* 8002B290 00026EF0  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8002B294 00026EF4  48 00 9D 11 */	bl func_80034FA4
/* 8002B298 00026EF8  48 00 07 80 */	b lbl_8002BA18
/* 8002B29C 00026EFC  38 7E 00 08 */	addi r3, r30, 8
/* 8002B2A0 00026F00  4B FF F0 D9 */	bl func_8002A378
/* 8002B2A4 00026F04  7F E3 FB 78 */	mr r3, r31
/* 8002B2A8 00026F08  48 00 9D 05 */	bl func_80034FAC
/* 8002B2AC 00026F0C  48 00 07 6C */	b lbl_8002BA18
/* 8002B2B0 00026F10  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B2B4 00026F14  4B FF EF E9 */	bl func_8002A29C
/* 8002B2B8 00026F18  7C 7B 1B 78 */	mr r27, r3
/* 8002B2BC 00026F1C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B2C0 00026F20  4B FF F0 B9 */	bl func_8002A378
/* 8002B2C4 00026F24  FF 80 08 90 */	fmr f28, f1
/* 8002B2C8 00026F28  38 7E 00 08 */	addi r3, r30, 8
/* 8002B2CC 00026F2C  4B FF F0 AD */	bl func_8002A378
/* 8002B2D0 00026F30  FC 40 E0 90 */	fmr f2, f28
/* 8002B2D4 00026F34  7F E3 FB 78 */	mr r3, r31
/* 8002B2D8 00026F38  7F 64 DB 78 */	mr r4, r27
/* 8002B2DC 00026F3C  48 00 9D 31 */	bl func_8003500C
/* 8002B2E0 00026F40  48 00 07 38 */	b lbl_8002BA18
/* 8002B2E4 00026F44  38 7E 00 08 */	addi r3, r30, 8
/* 8002B2E8 00026F48  4B FF EF B5 */	bl func_8002A29C
/* 8002B2EC 00026F4C  7C 03 00 D0 */	neg r0, r3
/* 8002B2F0 00026F50  7C 00 1B 78 */	or r0, r0, r3
/* 8002B2F4 00026F54  7F E3 FB 78 */	mr r3, r31
/* 8002B2F8 00026F58  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8002B2FC 00026F5C  48 00 9D 7D */	bl func_80035078
/* 8002B300 00026F60  48 00 07 18 */	b lbl_8002BA18
/* 8002B304 00026F64  38 7E 00 08 */	addi r3, r30, 8
/* 8002B308 00026F68  4B FF EF 95 */	bl func_8002A29C
/* 8002B30C 00026F6C  7C 64 1B 78 */	mr r4, r3
/* 8002B310 00026F70  7F E3 FB 78 */	mr r3, r31
/* 8002B314 00026F74  48 00 9D 6D */	bl func_80035080
/* 8002B318 00026F78  48 00 07 00 */	b lbl_8002BA18
/* 8002B31C 00026F7C  38 7E 00 08 */	addi r3, r30, 8
/* 8002B320 00026F80  4B FF EF 7D */	bl func_8002A29C
/* 8002B324 00026F84  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B328 00026F88  7F E3 FB 78 */	mr r3, r31
/* 8002B32C 00026F8C  48 00 9D 75 */	bl func_800350A0
/* 8002B330 00026F90  48 00 06 E8 */	b lbl_8002BA18
/* 8002B334 00026F94  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B338 00026F98  4B FF F0 41 */	bl func_8002A378
/* 8002B33C 00026F9C  FF 80 08 90 */	fmr f28, f1
/* 8002B340 00026FA0  38 7E 00 08 */	addi r3, r30, 8
/* 8002B344 00026FA4  4B FF F0 35 */	bl func_8002A378
/* 8002B348 00026FA8  FC 40 E0 90 */	fmr f2, f28
/* 8002B34C 00026FAC  7F E3 FB 78 */	mr r3, r31
/* 8002B350 00026FB0  48 00 9D 65 */	bl func_800350B4
/* 8002B354 00026FB4  48 00 06 C4 */	b lbl_8002BA18
/* 8002B358 00026FB8  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B35C 00026FBC  4B FF EF 41 */	bl func_8002A29C
/* 8002B360 00026FC0  7C 7B 1B 78 */	mr r27, r3
/* 8002B364 00026FC4  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B368 00026FC8  4B FF F0 11 */	bl func_8002A378
/* 8002B36C 00026FCC  FF A0 08 90 */	fmr f29, f1
/* 8002B370 00026FD0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B374 00026FD4  4B FF F0 05 */	bl func_8002A378
/* 8002B378 00026FD8  FF 80 08 90 */	fmr f28, f1
/* 8002B37C 00026FDC  38 7E 00 08 */	addi r3, r30, 8
/* 8002B380 00026FE0  4B FF EF F9 */	bl func_8002A378
/* 8002B384 00026FE4  FC 40 E0 90 */	fmr f2, f28
/* 8002B388 00026FE8  7F E3 FB 78 */	mr r3, r31
/* 8002B38C 00026FEC  FC 60 E8 90 */	fmr f3, f29
/* 8002B390 00026FF0  7F 64 DB 78 */	mr r4, r27
/* 8002B394 00026FF4  48 00 9D B5 */	bl func_80035148
/* 8002B398 00026FF8  48 00 06 80 */	b lbl_8002BA18
/* 8002B39C 00026FFC  38 7E 00 08 */	addi r3, r30, 8
/* 8002B3A0 00027000  4B FF EE FD */	bl func_8002A29C
/* 8002B3A4 00027004  7C 03 00 D0 */	neg r0, r3
/* 8002B3A8 00027008  7C 00 1B 78 */	or r0, r0, r3
/* 8002B3AC 0002700C  7F E3 FB 78 */	mr r3, r31
/* 8002B3B0 00027010  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8002B3B4 00027014  48 00 9E C5 */	bl func_80035278
/* 8002B3B8 00027018  48 00 06 60 */	b lbl_8002BA18
/* 8002B3BC 0002701C  38 7E 00 08 */	addi r3, r30, 8
/* 8002B3C0 00027020  4B FF EF B9 */	bl func_8002A378
/* 8002B3C4 00027024  7F E3 FB 78 */	mr r3, r31
/* 8002B3C8 00027028  48 00 9E B9 */	bl func_80035280
/* 8002B3CC 0002702C  48 00 06 4C */	b lbl_8002BA18
/* 8002B3D0 00027030  38 7E 00 08 */	addi r3, r30, 8
/* 8002B3D4 00027034  4B FF EE C9 */	bl func_8002A29C
/* 8002B3D8 00027038  7C 64 1B 78 */	mr r4, r3
/* 8002B3DC 0002703C  7F E3 FB 78 */	mr r3, r31
/* 8002B3E0 00027040  48 00 9E CD */	bl func_800352AC
/* 8002B3E4 00027044  48 00 06 34 */	b lbl_8002BA18
/* 8002B3E8 00027048  38 7E 00 08 */	addi r3, r30, 8
/* 8002B3EC 0002704C  4B FF EE B1 */	bl func_8002A29C
/* 8002B3F0 00027050  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B3F4 00027054  7F E3 FB 78 */	mr r3, r31
/* 8002B3F8 00027058  48 00 9E D5 */	bl func_800352CC
/* 8002B3FC 0002705C  48 00 06 1C */	b lbl_8002BA18
/* 8002B400 00027060  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B404 00027064  4B FF EE 99 */	bl func_8002A29C
/* 8002B408 00027068  7C 7B 1B 78 */	mr r27, r3
/* 8002B40C 0002706C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B410 00027070  4B FF EF 69 */	bl func_8002A378
/* 8002B414 00027074  FF 80 08 90 */	fmr f28, f1
/* 8002B418 00027078  38 7E 00 08 */	addi r3, r30, 8
/* 8002B41C 0002707C  4B FF EE 81 */	bl func_8002A29C
/* 8002B420 00027080  FC 20 E0 90 */	fmr f1, f28
/* 8002B424 00027084  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B428 00027088  7F E3 FB 78 */	mr r3, r31
/* 8002B42C 0002708C  7F 65 DB 78 */	mr r5, r27
/* 8002B430 00027090  48 00 9E B1 */	bl func_800352E0
/* 8002B434 00027094  48 00 05 E4 */	b lbl_8002BA18
/* 8002B438 00027098  38 7E 00 08 */	addi r3, r30, 8
/* 8002B43C 0002709C  4B FF EE 61 */	bl func_8002A29C
/* 8002B440 000270A0  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002B444 000270A4  7F E3 FB 78 */	mr r3, r31
/* 8002B448 000270A8  48 00 87 35 */	bl func_80033B7C
/* 8002B44C 000270AC  2C 03 00 00 */	cmpwi r3, 0
/* 8002B450 000270B0  41 82 05 C8 */	beq lbl_8002BA18
/* 8002B454 000270B4  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 8002B458 000270B8  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002B45C 000270BC  40 82 05 BC */	bne lbl_8002BA18
/* 8002B460 000270C0  80 9E 00 14 */	lwz r4, 0x14(r30)
/* 8002B464 000270C4  48 00 A5 DD */	bl func_80035A40
/* 8002B468 000270C8  48 00 05 B0 */	b lbl_8002BA18
/* 8002B46C 000270CC  38 7E 00 08 */	addi r3, r30, 8
/* 8002B470 000270D0  4B FF EE 2D */	bl func_8002A29C
/* 8002B474 000270D4  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002B478 000270D8  7F E3 FB 78 */	mr r3, r31
/* 8002B47C 000270DC  48 00 87 01 */	bl func_80033B7C
/* 8002B480 000270E0  2C 03 00 00 */	cmpwi r3, 0
/* 8002B484 000270E4  7C 7B 1B 78 */	mr r27, r3
/* 8002B488 000270E8  41 82 05 90 */	beq lbl_8002BA18
/* 8002B48C 000270EC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B490 000270F0  4B FF EE 0D */	bl func_8002A29C
/* 8002B494 000270F4  7C 64 1B 78 */	mr r4, r3
/* 8002B498 000270F8  7F 63 DB 78 */	mr r3, r27
/* 8002B49C 000270FC  48 00 A5 B5 */	bl func_80035A50
/* 8002B4A0 00027100  48 00 05 78 */	b lbl_8002BA18
/* 8002B4A4 00027104  38 7E 00 08 */	addi r3, r30, 8
/* 8002B4A8 00027108  4B FF ED F5 */	bl func_8002A29C
/* 8002B4AC 0002710C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8002B4B0 00027110  7F E3 FB 78 */	mr r3, r31
/* 8002B4B4 00027114  48 00 86 C9 */	bl func_80033B7C
/* 8002B4B8 00027118  2C 03 00 00 */	cmpwi r3, 0
/* 8002B4BC 0002711C  41 82 05 5C */	beq lbl_8002BA18
/* 8002B4C0 00027120  48 00 A5 F9 */	bl func_80035AB8
/* 8002B4C4 00027124  48 00 05 54 */	b lbl_8002BA18
/* 8002B4C8 00027128  38 60 00 01 */	li r3, 1
/* 8002B4CC 0002712C  48 00 05 50 */	b lbl_8002BA1C
/* 8002B4D0 00027130  38 7E 00 08 */	addi r3, r30, 8
/* 8002B4D4 00027134  4B FF ED C9 */	bl func_8002A29C
/* 8002B4D8 00027138  7C 64 1B 78 */	mr r4, r3
/* 8002B4DC 0002713C  7F E3 FB 78 */	mr r3, r31
/* 8002B4E0 00027140  48 00 95 59 */	bl func_80034A38
/* 8002B4E4 00027144  38 60 00 01 */	li r3, 1
/* 8002B4E8 00027148  48 00 05 34 */	b lbl_8002BA1C
/* 8002B4EC 0002714C  38 7E 00 08 */	addi r3, r30, 8
/* 8002B4F0 00027150  4B FF EE 89 */	bl func_8002A378
/* 8002B4F4 00027154  7F E3 FB 78 */	mr r3, r31
/* 8002B4F8 00027158  48 00 95 C1 */	bl func_80034AB8
/* 8002B4FC 0002715C  38 60 00 01 */	li r3, 1
/* 8002B500 00027160  48 00 05 1C */	b lbl_8002BA1C
/* 8002B504 00027164  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B508 00027168  4B FF ED 95 */	bl func_8002A29C
/* 8002B50C 0002716C  54 7D 06 3E */	clrlwi r29, r3, 0x18
/* 8002B510 00027170  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B514 00027174  4B FF ED 89 */	bl func_8002A29C
/* 8002B518 00027178  54 7C 06 3E */	clrlwi r28, r3, 0x18
/* 8002B51C 0002717C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B520 00027180  4B FF ED 7D */	bl func_8002A29C
/* 8002B524 00027184  54 7B 06 3E */	clrlwi r27, r3, 0x18
/* 8002B528 00027188  38 7E 00 08 */	addi r3, r30, 8
/* 8002B52C 0002718C  4B FF ED 71 */	bl func_8002A29C
/* 8002B530 00027190  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B534 00027194  7F 65 DB 78 */	mr r5, r27
/* 8002B538 00027198  7F 86 E3 78 */	mr r6, r28
/* 8002B53C 0002719C  7F A7 EB 78 */	mr r7, r29
/* 8002B540 000271A0  38 61 00 08 */	addi r3, r1, 8
/* 8002B544 000271A4  4B FF F3 0D */	bl func_8002A850
/* 8002B548 000271A8  7F E3 FB 78 */	mr r3, r31
/* 8002B54C 000271AC  38 81 00 08 */	addi r4, r1, 8
/* 8002B550 000271B0  48 00 95 C1 */	bl func_80034B10
/* 8002B554 000271B4  38 60 00 01 */	li r3, 1
/* 8002B558 000271B8  48 00 04 C4 */	b lbl_8002BA1C
/* 8002B55C 000271BC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B560 000271C0  4B FF EE 19 */	bl func_8002A378
/* 8002B564 000271C4  FF 80 08 90 */	fmr f28, f1
/* 8002B568 000271C8  38 7E 00 08 */	addi r3, r30, 8
/* 8002B56C 000271CC  4B FF EE 0D */	bl func_8002A378
/* 8002B570 000271D0  FC 40 E0 90 */	fmr f2, f28
/* 8002B574 000271D4  7F E3 FB 78 */	mr r3, r31
/* 8002B578 000271D8  48 00 95 BD */	bl func_80034B34
/* 8002B57C 000271DC  38 60 00 01 */	li r3, 1
/* 8002B580 000271E0  48 00 04 9C */	b lbl_8002BA1C
/* 8002B584 000271E4  38 7E 00 08 */	addi r3, r30, 8
/* 8002B588 000271E8  4B FF ED F1 */	bl func_8002A378
/* 8002B58C 000271EC  C0 02 81 28 */	lfs f0, lbl_80640728-_SDA2_BASE_(r2)
/* 8002B590 000271F0  7F E3 FB 78 */	mr r3, r31
/* 8002B594 000271F4  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002B598 000271F8  48 00 95 A9 */	bl func_80034B40
/* 8002B59C 000271FC  38 60 00 01 */	li r3, 1
/* 8002B5A0 00027200  48 00 04 7C */	b lbl_8002BA1C
/* 8002B5A4 00027204  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B5A8 00027208  4B FF ED D1 */	bl func_8002A378
/* 8002B5AC 0002720C  FF 80 08 90 */	fmr f28, f1
/* 8002B5B0 00027210  38 7E 00 08 */	addi r3, r30, 8
/* 8002B5B4 00027214  4B FF ED C5 */	bl func_8002A378
/* 8002B5B8 00027218  FC 40 E0 90 */	fmr f2, f28
/* 8002B5BC 0002721C  7F E3 FB 78 */	mr r3, r31
/* 8002B5C0 00027220  48 00 95 89 */	bl func_80034B48
/* 8002B5C4 00027224  38 60 00 01 */	li r3, 1
/* 8002B5C8 00027228  48 00 04 54 */	b lbl_8002BA1C
/* 8002B5CC 0002722C  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B5D0 00027230  4B FF EC CD */	bl func_8002A29C
/* 8002B5D4 00027234  54 7D 06 3E */	clrlwi r29, r3, 0x18
/* 8002B5D8 00027238  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B5DC 0002723C  4B FF EC C1 */	bl func_8002A29C
/* 8002B5E0 00027240  54 7C 06 3E */	clrlwi r28, r3, 0x18
/* 8002B5E4 00027244  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B5E8 00027248  4B FF EC B5 */	bl func_8002A29C
/* 8002B5EC 0002724C  54 7B 06 3E */	clrlwi r27, r3, 0x18
/* 8002B5F0 00027250  38 7E 00 08 */	addi r3, r30, 8
/* 8002B5F4 00027254  4B FF EC A9 */	bl func_8002A29C
/* 8002B5F8 00027258  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B5FC 0002725C  7F 65 DB 78 */	mr r5, r27
/* 8002B600 00027260  7F 86 E3 78 */	mr r6, r28
/* 8002B604 00027264  7F A7 EB 78 */	mr r7, r29
/* 8002B608 00027268  38 61 00 08 */	addi r3, r1, 8
/* 8002B60C 0002726C  4B FF F2 45 */	bl func_8002A850
/* 8002B610 00027270  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002B614 00027274  4B FF EC 89 */	bl func_8002A29C
/* 8002B618 00027278  7C 7B 1B 78 */	mr r27, r3
/* 8002B61C 0002727C  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002B620 00027280  4B FF ED 59 */	bl func_8002A378
/* 8002B624 00027284  7F E3 FB 78 */	mr r3, r31
/* 8002B628 00027288  7F 66 DB 78 */	mr r6, r27
/* 8002B62C 0002728C  38 A1 00 08 */	addi r5, r1, 8
/* 8002B630 00027290  38 80 00 05 */	li r4, 5
/* 8002B634 00027294  48 00 95 21 */	bl func_80034B54
/* 8002B638 00027298  38 60 00 01 */	li r3, 1
/* 8002B63C 0002729C  48 00 03 E0 */	b lbl_8002BA1C
/* 8002B640 000272A0  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B644 000272A4  4B FF EC 59 */	bl func_8002A29C
/* 8002B648 000272A8  7C 7B 1B 78 */	mr r27, r3
/* 8002B64C 000272AC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B650 000272B0  4B FF ED 29 */	bl func_8002A378
/* 8002B654 000272B4  FF A0 08 90 */	fmr f29, f1
/* 8002B658 000272B8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B65C 000272BC  4B FF ED 1D */	bl func_8002A378
/* 8002B660 000272C0  FF 80 08 90 */	fmr f28, f1
/* 8002B664 000272C4  38 7E 00 08 */	addi r3, r30, 8
/* 8002B668 000272C8  4B FF ED 11 */	bl func_8002A378
/* 8002B66C 000272CC  FC 40 E0 90 */	fmr f2, f28
/* 8002B670 000272D0  7F E3 FB 78 */	mr r3, r31
/* 8002B674 000272D4  FC 60 E8 90 */	fmr f3, f29
/* 8002B678 000272D8  7F 65 DB 78 */	mr r5, r27
/* 8002B67C 000272DC  38 80 00 05 */	li r4, 5
/* 8002B680 000272E0  48 00 95 21 */	bl func_80034BA0
/* 8002B684 000272E4  38 60 00 01 */	li r3, 1
/* 8002B688 000272E8  48 00 03 94 */	b lbl_8002BA1C
/* 8002B68C 000272EC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B690 000272F0  4B FF EC 0D */	bl func_8002A29C
/* 8002B694 000272F4  7C 7B 1B 78 */	mr r27, r3
/* 8002B698 000272F8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B69C 000272FC  4B FF EC DD */	bl func_8002A378
/* 8002B6A0 00027300  FF 80 08 90 */	fmr f28, f1
/* 8002B6A4 00027304  38 7E 00 08 */	addi r3, r30, 8
/* 8002B6A8 00027308  4B FF EC D1 */	bl func_8002A378
/* 8002B6AC 0002730C  C0 02 81 28 */	lfs f0, lbl_80640728-_SDA2_BASE_(r2)
/* 8002B6B0 00027310  FC 40 E0 90 */	fmr f2, f28
/* 8002B6B4 00027314  7F E3 FB 78 */	mr r3, r31
/* 8002B6B8 00027318  7F 65 DB 78 */	mr r5, r27
/* 8002B6BC 0002731C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002B6C0 00027320  38 80 00 05 */	li r4, 5
/* 8002B6C4 00027324  48 00 95 6D */	bl func_80034C30
/* 8002B6C8 00027328  38 60 00 01 */	li r3, 1
/* 8002B6CC 0002732C  48 00 03 50 */	b lbl_8002BA1C
/* 8002B6D0 00027330  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B6D4 00027334  4B FF EB C9 */	bl func_8002A29C
/* 8002B6D8 00027338  7C 7B 1B 78 */	mr r27, r3
/* 8002B6DC 0002733C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B6E0 00027340  4B FF EC 99 */	bl func_8002A378
/* 8002B6E4 00027344  FF A0 08 90 */	fmr f29, f1
/* 8002B6E8 00027348  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B6EC 0002734C  4B FF EC 8D */	bl func_8002A378
/* 8002B6F0 00027350  FF 80 08 90 */	fmr f28, f1
/* 8002B6F4 00027354  38 7E 00 08 */	addi r3, r30, 8
/* 8002B6F8 00027358  4B FF EC 81 */	bl func_8002A378
/* 8002B6FC 0002735C  FC 40 E0 90 */	fmr f2, f28
/* 8002B700 00027360  7F E3 FB 78 */	mr r3, r31
/* 8002B704 00027364  FC 60 E8 90 */	fmr f3, f29
/* 8002B708 00027368  7F 65 DB 78 */	mr r5, r27
/* 8002B70C 0002736C  38 80 00 05 */	li r4, 5
/* 8002B710 00027370  48 00 95 79 */	bl func_80034C88
/* 8002B714 00027374  38 60 00 01 */	li r3, 1
/* 8002B718 00027378  48 00 03 04 */	b lbl_8002BA1C
/* 8002B71C 0002737C  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B720 00027380  4B FF EB 7D */	bl func_8002A29C
/* 8002B724 00027384  54 7D 06 3E */	clrlwi r29, r3, 0x18
/* 8002B728 00027388  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B72C 0002738C  4B FF EB 71 */	bl func_8002A29C
/* 8002B730 00027390  54 7C 06 3E */	clrlwi r28, r3, 0x18
/* 8002B734 00027394  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B738 00027398  4B FF EB 65 */	bl func_8002A29C
/* 8002B73C 0002739C  54 7B 06 3E */	clrlwi r27, r3, 0x18
/* 8002B740 000273A0  38 7E 00 08 */	addi r3, r30, 8
/* 8002B744 000273A4  4B FF EB 59 */	bl func_8002A29C
/* 8002B748 000273A8  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B74C 000273AC  7F 65 DB 78 */	mr r5, r27
/* 8002B750 000273B0  7F 86 E3 78 */	mr r6, r28
/* 8002B754 000273B4  7F A7 EB 78 */	mr r7, r29
/* 8002B758 000273B8  38 61 00 08 */	addi r3, r1, 8
/* 8002B75C 000273BC  4B FF F0 F5 */	bl func_8002A850
/* 8002B760 000273C0  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002B764 000273C4  4B FF EB 39 */	bl func_8002A29C
/* 8002B768 000273C8  7C 7B 1B 78 */	mr r27, r3
/* 8002B76C 000273CC  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002B770 000273D0  4B FF EC 09 */	bl func_8002A378
/* 8002B774 000273D4  7F E3 FB 78 */	mr r3, r31
/* 8002B778 000273D8  7F 66 DB 78 */	mr r6, r27
/* 8002B77C 000273DC  38 A1 00 08 */	addi r5, r1, 8
/* 8002B780 000273E0  38 80 00 06 */	li r4, 6
/* 8002B784 000273E4  48 00 93 D1 */	bl func_80034B54
/* 8002B788 000273E8  38 60 00 01 */	li r3, 1
/* 8002B78C 000273EC  48 00 02 90 */	b lbl_8002BA1C
/* 8002B790 000273F0  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B794 000273F4  4B FF EB 09 */	bl func_8002A29C
/* 8002B798 000273F8  7C 7B 1B 78 */	mr r27, r3
/* 8002B79C 000273FC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B7A0 00027400  4B FF EB D9 */	bl func_8002A378
/* 8002B7A4 00027404  FF A0 08 90 */	fmr f29, f1
/* 8002B7A8 00027408  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B7AC 0002740C  4B FF EB CD */	bl func_8002A378
/* 8002B7B0 00027410  FF 80 08 90 */	fmr f28, f1
/* 8002B7B4 00027414  38 7E 00 08 */	addi r3, r30, 8
/* 8002B7B8 00027418  4B FF EB C1 */	bl func_8002A378
/* 8002B7BC 0002741C  FC 40 E0 90 */	fmr f2, f28
/* 8002B7C0 00027420  7F E3 FB 78 */	mr r3, r31
/* 8002B7C4 00027424  FC 60 E8 90 */	fmr f3, f29
/* 8002B7C8 00027428  7F 65 DB 78 */	mr r5, r27
/* 8002B7CC 0002742C  38 80 00 06 */	li r4, 6
/* 8002B7D0 00027430  48 00 93 D1 */	bl func_80034BA0
/* 8002B7D4 00027434  38 60 00 01 */	li r3, 1
/* 8002B7D8 00027438  48 00 02 44 */	b lbl_8002BA1C
/* 8002B7DC 0002743C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B7E0 00027440  4B FF EA BD */	bl func_8002A29C
/* 8002B7E4 00027444  7C 7B 1B 78 */	mr r27, r3
/* 8002B7E8 00027448  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B7EC 0002744C  4B FF EB 8D */	bl func_8002A378
/* 8002B7F0 00027450  FF 80 08 90 */	fmr f28, f1
/* 8002B7F4 00027454  38 7E 00 08 */	addi r3, r30, 8
/* 8002B7F8 00027458  4B FF EB 81 */	bl func_8002A378
/* 8002B7FC 0002745C  C0 02 81 28 */	lfs f0, lbl_80640728-_SDA2_BASE_(r2)
/* 8002B800 00027460  FC 40 E0 90 */	fmr f2, f28
/* 8002B804 00027464  7F E3 FB 78 */	mr r3, r31
/* 8002B808 00027468  7F 65 DB 78 */	mr r5, r27
/* 8002B80C 0002746C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002B810 00027470  38 80 00 06 */	li r4, 6
/* 8002B814 00027474  48 00 94 1D */	bl func_80034C30
/* 8002B818 00027478  38 60 00 01 */	li r3, 1
/* 8002B81C 0002747C  48 00 02 00 */	b lbl_8002BA1C
/* 8002B820 00027480  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B824 00027484  4B FF EA 79 */	bl func_8002A29C
/* 8002B828 00027488  7C 7B 1B 78 */	mr r27, r3
/* 8002B82C 0002748C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B830 00027490  4B FF EB 49 */	bl func_8002A378
/* 8002B834 00027494  FF A0 08 90 */	fmr f29, f1
/* 8002B838 00027498  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B83C 0002749C  4B FF EB 3D */	bl func_8002A378
/* 8002B840 000274A0  FF 80 08 90 */	fmr f28, f1
/* 8002B844 000274A4  38 7E 00 08 */	addi r3, r30, 8
/* 8002B848 000274A8  4B FF EB 31 */	bl func_8002A378
/* 8002B84C 000274AC  FC 40 E0 90 */	fmr f2, f28
/* 8002B850 000274B0  7F E3 FB 78 */	mr r3, r31
/* 8002B854 000274B4  FC 60 E8 90 */	fmr f3, f29
/* 8002B858 000274B8  7F 65 DB 78 */	mr r5, r27
/* 8002B85C 000274BC  38 80 00 06 */	li r4, 6
/* 8002B860 000274C0  48 00 94 29 */	bl func_80034C88
/* 8002B864 000274C4  38 60 00 01 */	li r3, 1
/* 8002B868 000274C8  48 00 01 B4 */	b lbl_8002BA1C
/* 8002B86C 000274CC  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B870 000274D0  4B FF EA 2D */	bl func_8002A29C
/* 8002B874 000274D4  54 7B 06 3E */	clrlwi r27, r3, 0x18
/* 8002B878 000274D8  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B87C 000274DC  4B FF EA 21 */	bl func_8002A29C
/* 8002B880 000274E0  54 7D 06 3E */	clrlwi r29, r3, 0x18
/* 8002B884 000274E4  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B888 000274E8  4B FF EA 15 */	bl func_8002A29C
/* 8002B88C 000274EC  54 7C 06 3E */	clrlwi r28, r3, 0x18
/* 8002B890 000274F0  38 7E 00 08 */	addi r3, r30, 8
/* 8002B894 000274F4  4B FF EA 09 */	bl func_8002A29C
/* 8002B898 000274F8  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8002B89C 000274FC  7F 85 E3 78 */	mr r5, r28
/* 8002B8A0 00027500  7F A6 EB 78 */	mr r6, r29
/* 8002B8A4 00027504  7F 67 DB 78 */	mr r7, r27
/* 8002B8A8 00027508  38 61 00 08 */	addi r3, r1, 8
/* 8002B8AC 0002750C  4B FF EF A5 */	bl func_8002A850
/* 8002B8B0 00027510  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002B8B4 00027514  4B FF E9 E9 */	bl func_8002A29C
/* 8002B8B8 00027518  7C 7C 1B 78 */	mr r28, r3
/* 8002B8BC 0002751C  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002B8C0 00027520  4B FF EA B9 */	bl func_8002A378
/* 8002B8C4 00027524  7F E3 FB 78 */	mr r3, r31
/* 8002B8C8 00027528  7F 86 E3 78 */	mr r6, r28
/* 8002B8CC 0002752C  38 A1 00 08 */	addi r5, r1, 8
/* 8002B8D0 00027530  38 80 00 07 */	li r4, 7
/* 8002B8D4 00027534  48 00 92 81 */	bl func_80034B54
/* 8002B8D8 00027538  38 60 00 01 */	li r3, 1
/* 8002B8DC 0002753C  48 00 01 40 */	b lbl_8002BA1C
/* 8002B8E0 00027540  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B8E4 00027544  4B FF E9 B9 */	bl func_8002A29C
/* 8002B8E8 00027548  7C 7C 1B 78 */	mr r28, r3
/* 8002B8EC 0002754C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B8F0 00027550  4B FF EA 89 */	bl func_8002A378
/* 8002B8F4 00027554  FF A0 08 90 */	fmr f29, f1
/* 8002B8F8 00027558  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B8FC 0002755C  4B FF EA 7D */	bl func_8002A378
/* 8002B900 00027560  FF 80 08 90 */	fmr f28, f1
/* 8002B904 00027564  38 7E 00 08 */	addi r3, r30, 8
/* 8002B908 00027568  4B FF EA 71 */	bl func_8002A378
/* 8002B90C 0002756C  FC 40 E0 90 */	fmr f2, f28
/* 8002B910 00027570  7F E3 FB 78 */	mr r3, r31
/* 8002B914 00027574  FC 60 E8 90 */	fmr f3, f29
/* 8002B918 00027578  7F 85 E3 78 */	mr r5, r28
/* 8002B91C 0002757C  38 80 00 07 */	li r4, 7
/* 8002B920 00027580  48 00 92 81 */	bl func_80034BA0
/* 8002B924 00027584  38 60 00 01 */	li r3, 1
/* 8002B928 00027588  48 00 00 F4 */	b lbl_8002BA1C
/* 8002B92C 0002758C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B930 00027590  4B FF E9 6D */	bl func_8002A29C
/* 8002B934 00027594  7C 7C 1B 78 */	mr r28, r3
/* 8002B938 00027598  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B93C 0002759C  4B FF EA 3D */	bl func_8002A378
/* 8002B940 000275A0  FF 80 08 90 */	fmr f28, f1
/* 8002B944 000275A4  38 7E 00 08 */	addi r3, r30, 8
/* 8002B948 000275A8  4B FF EA 31 */	bl func_8002A378
/* 8002B94C 000275AC  C0 02 81 28 */	lfs f0, lbl_80640728-_SDA2_BASE_(r2)
/* 8002B950 000275B0  FC 40 E0 90 */	fmr f2, f28
/* 8002B954 000275B4  7F E3 FB 78 */	mr r3, r31
/* 8002B958 000275B8  7F 85 E3 78 */	mr r5, r28
/* 8002B95C 000275BC  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002B960 000275C0  38 80 00 07 */	li r4, 7
/* 8002B964 000275C4  48 00 92 CD */	bl func_80034C30
/* 8002B968 000275C8  38 60 00 01 */	li r3, 1
/* 8002B96C 000275CC  48 00 00 B0 */	b lbl_8002BA1C
/* 8002B970 000275D0  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B974 000275D4  4B FF E9 29 */	bl func_8002A29C
/* 8002B978 000275D8  7C 7C 1B 78 */	mr r28, r3
/* 8002B97C 000275DC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B980 000275E0  4B FF E9 F9 */	bl func_8002A378
/* 8002B984 000275E4  FF 80 08 90 */	fmr f28, f1
/* 8002B988 000275E8  38 7E 00 08 */	addi r3, r30, 8
/* 8002B98C 000275EC  4B FF E9 ED */	bl func_8002A378
/* 8002B990 000275F0  FC 40 E0 90 */	fmr f2, f28
/* 8002B994 000275F4  7F E3 FB 78 */	mr r3, r31
/* 8002B998 000275F8  7F 84 E3 78 */	mr r4, r28
/* 8002B99C 000275FC  48 00 93 7D */	bl func_80034D18
/* 8002B9A0 00027600  38 60 00 01 */	li r3, 1
/* 8002B9A4 00027604  48 00 00 78 */	b lbl_8002BA1C
/* 8002B9A8 00027608  38 7E 00 38 */	addi r3, r30, 0x38
/* 8002B9AC 0002760C  4B FF E8 F1 */	bl func_8002A29C
/* 8002B9B0 00027610  7C 7C 1B 78 */	mr r28, r3
/* 8002B9B4 00027614  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002B9B8 00027618  4B FF E9 C1 */	bl func_8002A378
/* 8002B9BC 0002761C  FF 80 08 90 */	fmr f28, f1
/* 8002B9C0 00027620  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002B9C4 00027624  4B FF E9 B5 */	bl func_8002A378
/* 8002B9C8 00027628  FF A0 08 90 */	fmr f29, f1
/* 8002B9CC 0002762C  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002B9D0 00027630  4B FF E8 CD */	bl func_8002A29C
/* 8002B9D4 00027634  7C 7D 1B 78 */	mr r29, r3
/* 8002B9D8 00027638  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002B9DC 0002763C  4B FF E9 9D */	bl func_8002A378
/* 8002B9E0 00027640  FF C0 08 90 */	fmr f30, f1
/* 8002B9E4 00027644  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002B9E8 00027648  4B FF E9 91 */	bl func_8002A378
/* 8002B9EC 0002764C  FF E0 08 90 */	fmr f31, f1
/* 8002B9F0 00027650  38 7E 00 08 */	addi r3, r30, 8
/* 8002B9F4 00027654  4B FF E9 85 */	bl func_8002A378
/* 8002B9F8 00027658  FC 40 F8 90 */	fmr f2, f31
/* 8002B9FC 0002765C  7F E3 FB 78 */	mr r3, r31
/* 8002BA00 00027660  FC 60 F0 90 */	fmr f3, f30
/* 8002BA04 00027664  7F A4 EB 78 */	mr r4, r29
/* 8002BA08 00027668  FC 80 E8 90 */	fmr f4, f29
/* 8002BA0C 0002766C  7F 85 E3 78 */	mr r5, r28
/* 8002BA10 00027670  FC A0 E0 90 */	fmr f5, f28
/* 8002BA14 00027674  48 00 93 55 */	bl func_80034D68
lbl_8002BA18:
/* 8002BA18 00027678  38 60 00 01 */	li r3, 1
lbl_8002BA1C:
/* 8002BA1C 0002767C  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 8002BA20 00027680  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 8002BA24 00027684  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 8002BA28 00027688  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 8002BA2C 0002768C  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 8002BA30 00027690  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 8002BA34 00027694  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 8002BA38 00027698  39 61 00 30 */	addi r11, r1, 0x30
/* 8002BA3C 0002769C  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 8002BA40 000276A0  48 19 B7 35 */	bl _restgpr_27
/* 8002BA44 000276A4  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8002BA48 000276A8  7C 08 03 A6 */	mtlr r0
/* 8002BA4C 000276AC  38 21 00 70 */	addi r1, r1, 0x70
/* 8002BA50 000276B0  4E 80 00 20 */	blr

.global func_8002BA54
func_8002BA54:
/* 8002BA54 000276B4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8002BA58 000276B8  3C 00 43 30 */	lis r0, 0x4330
/* 8002BA5C 000276BC  C8 42 81 30 */	lfd f2, lbl_80640730-_SDA2_BASE_(r2)
/* 8002BA60 000276C0  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8002BA64 000276C4  90 01 00 08 */	stw r0, 8(r1)
/* 8002BA68 000276C8  A0 04 00 04 */	lhz r0, 4(r4)
/* 8002BA6C 000276CC  C0 03 00 0C */	lfs f0, 0xc(r3)
/* 8002BA70 000276D0  90 01 00 0C */	stw r0, 0xc(r1)
/* 8002BA74 000276D4  C8 21 00 08 */	lfd f1, 8(r1)
/* 8002BA78 000276D8  EC 21 10 28 */	fsubs f1, f1, f2
/* 8002BA7C 000276DC  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BA80 000276E0  38 21 00 10 */	addi r1, r1, 0x10
/* 8002BA84 000276E4  4E 80 00 20 */	blr

.global func_8002BA88
func_8002BA88:
/* 8002BA88 000276E8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8002BA8C 000276EC  3C 00 43 30 */	lis r0, 0x4330
/* 8002BA90 000276F0  C8 42 81 30 */	lfd f2, lbl_80640730-_SDA2_BASE_(r2)
/* 8002BA94 000276F4  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8002BA98 000276F8  90 01 00 08 */	stw r0, 8(r1)
/* 8002BA9C 000276FC  A0 04 00 06 */	lhz r0, 6(r4)
/* 8002BAA0 00027700  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 8002BAA4 00027704  90 01 00 0C */	stw r0, 0xc(r1)
/* 8002BAA8 00027708  C8 21 00 08 */	lfd f1, 8(r1)
/* 8002BAAC 0002770C  EC 21 10 28 */	fsubs f1, f1, f2
/* 8002BAB0 00027710  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BAB4 00027714  38 21 00 10 */	addi r1, r1, 0x10
/* 8002BAB8 00027718  4E 80 00 20 */	blr

.global func_8002BABC
func_8002BABC:
/* 8002BABC 0002771C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8002BAC0 00027720  3C 00 43 30 */	lis r0, 0x4330
/* 8002BAC4 00027724  C8 42 81 30 */	lfd f2, lbl_80640730-_SDA2_BASE_(r2)
/* 8002BAC8 00027728  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8002BACC 0002772C  90 01 00 08 */	stw r0, 8(r1)
/* 8002BAD0 00027730  A0 04 00 04 */	lhz r0, 4(r4)
/* 8002BAD4 00027734  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 8002BAD8 00027738  90 01 00 0C */	stw r0, 0xc(r1)
/* 8002BADC 0002773C  C8 21 00 08 */	lfd f1, 8(r1)
/* 8002BAE0 00027740  EC 21 10 28 */	fsubs f1, f1, f2
/* 8002BAE4 00027744  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BAE8 00027748  38 21 00 10 */	addi r1, r1, 0x10
/* 8002BAEC 0002774C  4E 80 00 20 */	blr

.global func_8002BAF0
func_8002BAF0:
/* 8002BAF0 00027750  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8002BAF4 00027754  3C 00 43 30 */	lis r0, 0x4330
/* 8002BAF8 00027758  C8 42 81 30 */	lfd f2, lbl_80640730-_SDA2_BASE_(r2)
/* 8002BAFC 0002775C  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8002BB00 00027760  90 01 00 08 */	stw r0, 8(r1)
/* 8002BB04 00027764  A0 04 00 06 */	lhz r0, 6(r4)
/* 8002BB08 00027768  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 8002BB0C 0002776C  90 01 00 0C */	stw r0, 0xc(r1)
/* 8002BB10 00027770  C8 21 00 08 */	lfd f1, 8(r1)
/* 8002BB14 00027774  EC 21 10 28 */	fsubs f1, f1, f2
/* 8002BB18 00027778  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BB1C 0002777C  38 21 00 10 */	addi r1, r1, 0x10
/* 8002BB20 00027780  4E 80 00 20 */	blr

.global func_8002BB24
func_8002BB24:
/* 8002BB24 00027784  38 A0 00 01 */	li r5, 1
/* 8002BB28 00027788  38 6D 97 18 */	addi r3, r13, lbl_8063E9D8-_SDA_BASE_
/* 8002BB2C 0002778C  38 80 00 04 */	li r4, 4
/* 8002BB30 00027790  38 00 00 00 */	li r0, 0
/* 8002BB34 00027794  98 AD 97 18 */	stb r5, lbl_8063E9D8-_SDA_BASE_(r13)
/* 8002BB38 00027798  B0 83 00 02 */	sth r4, 2(r3)
/* 8002BB3C 0002779C  98 03 00 04 */	stb r0, 4(r3)
/* 8002BB40 000277A0  4E 80 00 20 */	blr

.global lbl_8002BB44
lbl_8002BB44:
/* 8002BB44 000277A4  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 8002BB48 000277A8  7C 08 02 A6 */	mflr r0
/* 8002BB4C 000277AC  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 8002BB50 000277B0  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 8002BB54 000277B4  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 8002BB58 000277B8  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 8002BB5C 000277BC  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 8002BB60 000277C0  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 8002BB64 000277C4  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 8002BB68 000277C8  39 61 00 70 */	addi r11, r1, 0x70
/* 8002BB6C 000277CC  48 19 B5 B9 */	bl _savegpr_26
/* 8002BB70 000277D0  7C 7A 1B 78 */	mr r26, r3
/* 8002BB74 000277D4  7C 9B 23 78 */	mr r27, r4
/* 8002BB78 000277D8  7C BE 2B 78 */	mr r30, r5
/* 8002BB7C 000277DC  7C DD 33 78 */	mr r29, r6
/* 8002BB80 000277E0  3B E0 00 00 */	li r31, 0
/* 8002BB84 000277E4  48 01 46 71 */	bl func_800401F4
/* 8002BB88 000277E8  7C 7C 1B 78 */	mr r28, r3
/* 8002BB8C 000277EC  38 61 00 4C */	addi r3, r1, 0x4c
/* 8002BB90 000277F0  4B FF E7 05 */	bl func_8002A294
/* 8002BB94 000277F4  38 61 00 40 */	addi r3, r1, 0x40
/* 8002BB98 000277F8  4B FF E6 FD */	bl func_8002A294
/* 8002BB9C 000277FC  38 61 00 30 */	addi r3, r1, 0x30
/* 8002BBA0 00027800  48 00 0E D5 */	bl func_8002CA74
/* 8002BBA4 00027804  2C 1C 00 00 */	cmpwi r28, 0
/* 8002BBA8 00027808  40 82 00 0C */	bne lbl_8002BBB4
/* 8002BBAC 0002780C  38 60 00 01 */	li r3, 1
/* 8002BBB0 00027810  48 00 0E 94 */	b lbl_8002CA44
lbl_8002BBB4:
/* 8002BBB4 00027814  2C 1B 00 01 */	cmpwi r27, 1
/* 8002BBB8 00027818  41 82 00 24 */	beq lbl_8002BBDC
/* 8002BBBC 0002781C  80 9E 00 04 */	lwz r4, 4(r30)
/* 8002BBC0 00027820  7F 83 E3 78 */	mr r3, r28
/* 8002BBC4 00027824  48 01 47 C1 */	bl func_80040384
/* 8002BBC8 00027828  2C 03 00 00 */	cmpwi r3, 0
/* 8002BBCC 0002782C  7C 7F 1B 78 */	mr r31, r3
/* 8002BBD0 00027830  40 82 00 0C */	bne lbl_8002BBDC
/* 8002BBD4 00027834  38 60 00 01 */	li r3, 1
/* 8002BBD8 00027838  48 00 0E 6C */	b lbl_8002CA44
lbl_8002BBDC:
/* 8002BBDC 0002783C  28 1B 00 4E */	cmplwi r27, 0x4e
/* 8002BBE0 00027840  41 81 0E 60 */	bgt lbl_8002CA40
/* 8002BBE4 00027844  3C 60 80 41 */	lis r3, lbl_80409C10@ha
/* 8002BBE8 00027848  57 60 10 3A */	slwi r0, r27, 2
/* 8002BBEC 0002784C  38 63 9C 10 */	addi r3, r3, lbl_80409C10@l
/* 8002BBF0 00027850  7C 63 00 2E */	lwzx r3, r3, r0
/* 8002BBF4 00027854  7C 69 03 A6 */	mtctr r3
/* 8002BBF8 00027858  4E 80 04 20 */	bctr
/* 8002BBFC 0002785C  7F 83 E3 78 */	mr r3, r28
/* 8002BC00 00027860  48 01 46 D5 */	bl func_800402D4
/* 8002BC04 00027864  2C 03 00 00 */	cmpwi r3, 0
/* 8002BC08 00027868  41 82 00 18 */	beq lbl_8002BC20
/* 8002BC0C 0002786C  38 80 00 23 */	li r4, 0x23
/* 8002BC10 00027870  38 00 00 01 */	li r0, 1
/* 8002BC14 00027874  B0 9D 00 00 */	sth r4, 0(r29)
/* 8002BC18 00027878  B0 1D 00 02 */	sth r0, 2(r29)
/* 8002BC1C 0002787C  90 7D 00 04 */	stw r3, 4(r29)
lbl_8002BC20:
/* 8002BC20 00027880  38 60 00 01 */	li r3, 1
/* 8002BC24 00027884  48 00 0E 20 */	b lbl_8002CA44
/* 8002BC28 00027888  80 9E 00 04 */	lwz r4, 4(r30)
/* 8002BC2C 0002788C  7F 83 E3 78 */	mr r3, r28
/* 8002BC30 00027890  48 01 47 29 */	bl func_80040358
/* 8002BC34 00027894  38 60 00 01 */	li r3, 1
/* 8002BC38 00027898  48 00 0E 0C */	b lbl_8002CA44
/* 8002BC3C 0002789C  38 7E 00 08 */	addi r3, r30, 8
/* 8002BC40 000278A0  4B FF E7 39 */	bl func_8002A378
/* 8002BC44 000278A4  7F E3 FB 78 */	mr r3, r31
/* 8002BC48 000278A8  48 00 0E 31 */	bl func_8002CA78
/* 8002BC4C 000278AC  38 60 00 01 */	li r3, 1
/* 8002BC50 000278B0  48 00 0D F4 */	b lbl_8002CA44
/* 8002BC54 000278B4  7F E3 FB 78 */	mr r3, r31
/* 8002BC58 000278B8  48 00 0E 5D */	bl func_8002CAB4
/* 8002BC5C 000278BC  7F A3 EB 78 */	mr r3, r29
/* 8002BC60 000278C0  4B FF E6 ED */	bl func_8002A34C
/* 8002BC64 000278C4  38 60 00 01 */	li r3, 1
/* 8002BC68 000278C8  48 00 0D DC */	b lbl_8002CA44
/* 8002BC6C 000278CC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BC70 000278D0  4B FF E6 2D */	bl func_8002A29C
/* 8002BC74 000278D4  7C 7C 1B 78 */	mr r28, r3
/* 8002BC78 000278D8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BC7C 000278DC  4B FF E6 FD */	bl func_8002A378
/* 8002BC80 000278E0  FF A0 08 90 */	fmr f29, f1
/* 8002BC84 000278E4  38 7E 00 08 */	addi r3, r30, 8
/* 8002BC88 000278E8  4B FF E6 F1 */	bl func_8002A378
/* 8002BC8C 000278EC  FC 40 E8 90 */	fmr f2, f29
/* 8002BC90 000278F0  7F E3 FB 78 */	mr r3, r31
/* 8002BC94 000278F4  7F 84 E3 78 */	mr r4, r28
/* 8002BC98 000278F8  48 01 53 D9 */	bl func_80041070
/* 8002BC9C 000278FC  38 60 00 01 */	li r3, 1
/* 8002BCA0 00027900  48 00 0D A4 */	b lbl_8002CA44
/* 8002BCA4 00027904  38 7E 00 08 */	addi r3, r30, 8
/* 8002BCA8 00027908  4B FF E7 31 */	bl func_8002A3D8
/* 8002BCAC 0002790C  7C 64 1B 78 */	mr r4, r3
/* 8002BCB0 00027910  7F E3 FB 78 */	mr r3, r31
/* 8002BCB4 00027914  48 01 53 F9 */	bl func_800410AC
/* 8002BCB8 00027918  38 60 00 01 */	li r3, 1
/* 8002BCBC 0002791C  48 00 0D 88 */	b lbl_8002CA44
/* 8002BCC0 00027920  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BCC4 00027924  4B FF E6 B5 */	bl func_8002A378
/* 8002BCC8 00027928  FF C0 08 90 */	fmr f30, f1
/* 8002BCCC 0002792C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BCD0 00027930  4B FF E6 A9 */	bl func_8002A378
/* 8002BCD4 00027934  FF A0 08 90 */	fmr f29, f1
/* 8002BCD8 00027938  38 7E 00 08 */	addi r3, r30, 8
/* 8002BCDC 0002793C  4B FF E6 9D */	bl func_8002A378
/* 8002BCE0 00027940  FC 40 E8 90 */	fmr f2, f29
/* 8002BCE4 00027944  38 61 00 20 */	addi r3, r1, 0x20
/* 8002BCE8 00027948  FC 60 F0 90 */	fmr f3, f30
/* 8002BCEC 0002794C  48 00 0D D1 */	bl func_8002CABC
/* 8002BCF0 00027950  7C 64 1B 78 */	mr r4, r3
/* 8002BCF4 00027954  7F E3 FB 78 */	mr r3, r31
/* 8002BCF8 00027958  48 01 53 B5 */	bl func_800410AC
/* 8002BCFC 0002795C  38 60 00 01 */	li r3, 1
/* 8002BD00 00027960  48 00 0D 44 */	b lbl_8002CA44
/* 8002BD04 00027964  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BD08 00027968  4B FF E6 71 */	bl func_8002A378
/* 8002BD0C 0002796C  FF C0 08 90 */	fmr f30, f1
/* 8002BD10 00027970  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BD14 00027974  4B FF E6 65 */	bl func_8002A378
/* 8002BD18 00027978  FF A0 08 90 */	fmr f29, f1
/* 8002BD1C 0002797C  38 7E 00 08 */	addi r3, r30, 8
/* 8002BD20 00027980  4B FF E6 59 */	bl func_8002A378
/* 8002BD24 00027984  FC 40 E8 90 */	fmr f2, f29
/* 8002BD28 00027988  38 61 00 14 */	addi r3, r1, 0x14
/* 8002BD2C 0002798C  FC 60 F0 90 */	fmr f3, f30
/* 8002BD30 00027990  48 00 0D 8D */	bl func_8002CABC
/* 8002BD34 00027994  7C 64 1B 78 */	mr r4, r3
/* 8002BD38 00027998  7F E3 FB 78 */	mr r3, r31
/* 8002BD3C 0002799C  48 01 53 81 */	bl func_800410BC
/* 8002BD40 000279A0  38 60 00 01 */	li r3, 1
/* 8002BD44 000279A4  48 00 0D 00 */	b lbl_8002CA44
/* 8002BD48 000279A8  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BD4C 000279AC  4B FF E6 2D */	bl func_8002A378
/* 8002BD50 000279B0  FF C0 08 90 */	fmr f30, f1
/* 8002BD54 000279B4  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BD58 000279B8  4B FF E6 21 */	bl func_8002A378
/* 8002BD5C 000279BC  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002BD60 000279C0  38 7E 00 08 */	addi r3, r30, 8
/* 8002BD64 000279C4  EF A0 00 72 */	fmuls f29, f0, f1
/* 8002BD68 000279C8  4B FF E6 11 */	bl func_8002A378
/* 8002BD6C 000279CC  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002BD70 000279D0  FC 40 E8 90 */	fmr f2, f29
/* 8002BD74 000279D4  FC 60 F0 90 */	fmr f3, f30
/* 8002BD78 000279D8  7F E3 FB 78 */	mr r3, r31
/* 8002BD7C 000279DC  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BD80 000279E0  48 01 53 9D */	bl func_8004111C
/* 8002BD84 000279E4  38 60 00 01 */	li r3, 1
/* 8002BD88 000279E8  48 00 0C BC */	b lbl_8002CA44
/* 8002BD8C 000279EC  7F E3 FB 78 */	mr r3, r31
/* 8002BD90 000279F0  48 01 54 75 */	bl func_80041204
/* 8002BD94 000279F4  7C 64 1B 78 */	mr r4, r3
/* 8002BD98 000279F8  7F 43 D3 78 */	mr r3, r26
/* 8002BD9C 000279FC  4B FF E6 59 */	bl func_8002A3F4
/* 8002BDA0 00027A00  38 60 00 01 */	li r3, 1
/* 8002BDA4 00027A04  48 00 0C A0 */	b lbl_8002CA44
/* 8002BDA8 00027A08  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002BDAC 00027A0C  4B FF E4 F1 */	bl func_8002A29C
/* 8002BDB0 00027A10  7C 7D 1B 78 */	mr r29, r3
/* 8002BDB4 00027A14  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002BDB8 00027A18  4B FF E5 C1 */	bl func_8002A378
/* 8002BDBC 00027A1C  FF C0 08 90 */	fmr f30, f1
/* 8002BDC0 00027A20  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BDC4 00027A24  4B FF E5 B5 */	bl func_8002A378
/* 8002BDC8 00027A28  FF A0 08 90 */	fmr f29, f1
/* 8002BDCC 00027A2C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BDD0 00027A30  4B FF E4 CD */	bl func_8002A29C
/* 8002BDD4 00027A34  7C 7C 1B 78 */	mr r28, r3
/* 8002BDD8 00027A38  38 7E 00 08 */	addi r3, r30, 8
/* 8002BDDC 00027A3C  4B FF E5 9D */	bl func_8002A378
/* 8002BDE0 00027A40  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002BDE4 00027A44  FC 40 E8 90 */	fmr f2, f29
/* 8002BDE8 00027A48  FC 60 F0 90 */	fmr f3, f30
/* 8002BDEC 00027A4C  7F E3 FB 78 */	mr r3, r31
/* 8002BDF0 00027A50  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BDF4 00027A54  7F 84 E3 78 */	mr r4, r28
/* 8002BDF8 00027A58  7F A5 EB 78 */	mr r5, r29
/* 8002BDFC 00027A5C  48 01 58 95 */	bl func_80041690
/* 8002BE00 00027A60  38 60 00 01 */	li r3, 1
/* 8002BE04 00027A64  48 00 0C 40 */	b lbl_8002CA44
/* 8002BE08 00027A68  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002BE0C 00027A6C  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002BE10 00027A70  40 82 00 2C */	bne lbl_8002BE3C
/* 8002BE14 00027A74  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BE18 00027A78  4B FF E5 C1 */	bl func_8002A3D8
/* 8002BE1C 00027A7C  7C 7C 1B 78 */	mr r28, r3
/* 8002BE20 00027A80  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BE24 00027A84  4B FF E4 79 */	bl func_8002A29C
/* 8002BE28 00027A88  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002BE2C 00027A8C  7C 65 1B 78 */	mr r5, r3
/* 8002BE30 00027A90  7F E3 FB 78 */	mr r3, r31
/* 8002BE34 00027A94  7F 86 E3 78 */	mr r6, r28
/* 8002BE38 00027A98  48 01 5B 55 */	bl func_8004198C
lbl_8002BE3C:
/* 8002BE3C 00027A9C  38 60 00 01 */	li r3, 1
/* 8002BE40 00027AA0  48 00 0C 04 */	b lbl_8002CA44
/* 8002BE44 00027AA4  38 7E 00 08 */	addi r3, r30, 8
/* 8002BE48 00027AA8  4B FF E5 91 */	bl func_8002A3D8
/* 8002BE4C 00027AAC  7C 64 1B 78 */	mr r4, r3
/* 8002BE50 00027AB0  7F E3 FB 78 */	mr r3, r31
/* 8002BE54 00027AB4  48 01 5B 91 */	bl func_800419E4
/* 8002BE58 00027AB8  38 60 00 01 */	li r3, 1
/* 8002BE5C 00027ABC  48 00 0B E8 */	b lbl_8002CA44
/* 8002BE60 00027AC0  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BE64 00027AC4  4B FF E5 15 */	bl func_8002A378
/* 8002BE68 00027AC8  FF C0 08 90 */	fmr f30, f1
/* 8002BE6C 00027ACC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BE70 00027AD0  4B FF E5 09 */	bl func_8002A378
/* 8002BE74 00027AD4  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002BE78 00027AD8  38 7E 00 08 */	addi r3, r30, 8
/* 8002BE7C 00027ADC  EF A0 00 72 */	fmuls f29, f0, f1
/* 8002BE80 00027AE0  4B FF E4 F9 */	bl func_8002A378
/* 8002BE84 00027AE4  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002BE88 00027AE8  FC 40 E8 90 */	fmr f2, f29
/* 8002BE8C 00027AEC  FC 60 F0 90 */	fmr f3, f30
/* 8002BE90 00027AF0  7F E3 FB 78 */	mr r3, r31
/* 8002BE94 00027AF4  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BE98 00027AF8  48 01 5B F1 */	bl func_80041A88
/* 8002BE9C 00027AFC  38 60 00 01 */	li r3, 1
/* 8002BEA0 00027B00  48 00 0B A4 */	b lbl_8002CA44
/* 8002BEA4 00027B04  7F E3 FB 78 */	mr r3, r31
/* 8002BEA8 00027B08  38 80 00 00 */	li r4, 0
/* 8002BEAC 00027B0C  48 01 5B 39 */	bl func_800419E4
/* 8002BEB0 00027B10  38 60 00 01 */	li r3, 1
/* 8002BEB4 00027B14  48 00 0B 90 */	b lbl_8002CA44
/* 8002BEB8 00027B18  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BEBC 00027B1C  4B FF E3 E1 */	bl func_8002A29C
/* 8002BEC0 00027B20  7C 7C 1B 78 */	mr r28, r3
/* 8002BEC4 00027B24  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BEC8 00027B28  4B FF E4 B1 */	bl func_8002A378
/* 8002BECC 00027B2C  FF A0 08 90 */	fmr f29, f1
/* 8002BED0 00027B30  38 7E 00 08 */	addi r3, r30, 8
/* 8002BED4 00027B34  4B FF E5 05 */	bl func_8002A3D8
/* 8002BED8 00027B38  FC 20 E8 90 */	fmr f1, f29
/* 8002BEDC 00027B3C  7C 64 1B 78 */	mr r4, r3
/* 8002BEE0 00027B40  7F E3 FB 78 */	mr r3, r31
/* 8002BEE4 00027B44  7F 85 E3 78 */	mr r5, r28
/* 8002BEE8 00027B48  48 01 69 55 */	bl func_8004283C
/* 8002BEEC 00027B4C  48 00 0B 54 */	b lbl_8002CA40
/* 8002BEF0 00027B50  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BEF4 00027B54  4B FF E3 A9 */	bl func_8002A29C
/* 8002BEF8 00027B58  7C 7C 1B 78 */	mr r28, r3
/* 8002BEFC 00027B5C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BF00 00027B60  4B FF E4 79 */	bl func_8002A378
/* 8002BF04 00027B64  FF A0 08 90 */	fmr f29, f1
/* 8002BF08 00027B68  38 7E 00 08 */	addi r3, r30, 8
/* 8002BF0C 00027B6C  4B FF E4 6D */	bl func_8002A378
/* 8002BF10 00027B70  FC 40 E8 90 */	fmr f2, f29
/* 8002BF14 00027B74  7F E3 FB 78 */	mr r3, r31
/* 8002BF18 00027B78  7F 84 E3 78 */	mr r4, r28
/* 8002BF1C 00027B7C  48 01 6A F1 */	bl func_80042A0C
/* 8002BF20 00027B80  48 00 0B 20 */	b lbl_8002CA40
/* 8002BF24 00027B84  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002BF28 00027B88  4B FF E3 75 */	bl func_8002A29C
/* 8002BF2C 00027B8C  7C 7D 1B 78 */	mr r29, r3
/* 8002BF30 00027B90  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BF34 00027B94  4B FF E3 69 */	bl func_8002A29C
/* 8002BF38 00027B98  7C 7C 1B 78 */	mr r28, r3
/* 8002BF3C 00027B9C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BF40 00027BA0  4B FF E4 39 */	bl func_8002A378
/* 8002BF44 00027BA4  FF A0 08 90 */	fmr f29, f1
/* 8002BF48 00027BA8  38 7E 00 08 */	addi r3, r30, 8
/* 8002BF4C 00027BAC  4B FF E4 2D */	bl func_8002A378
/* 8002BF50 00027BB0  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002BF54 00027BB4  FC 40 E8 90 */	fmr f2, f29
/* 8002BF58 00027BB8  7F E3 FB 78 */	mr r3, r31
/* 8002BF5C 00027BBC  7F 84 E3 78 */	mr r4, r28
/* 8002BF60 00027BC0  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002BF64 00027BC4  7F A5 EB 78 */	mr r5, r29
/* 8002BF68 00027BC8  48 01 6B 1D */	bl func_80042A84
/* 8002BF6C 00027BCC  48 00 0A D4 */	b lbl_8002CA40
/* 8002BF70 00027BD0  38 7E 00 08 */	addi r3, r30, 8
/* 8002BF74 00027BD4  4B FF E4 65 */	bl func_8002A3D8
/* 8002BF78 00027BD8  7C 64 1B 78 */	mr r4, r3
/* 8002BF7C 00027BDC  7F E3 FB 78 */	mr r3, r31
/* 8002BF80 00027BE0  48 01 65 B5 */	bl func_80042534
/* 8002BF84 00027BE4  38 60 00 01 */	li r3, 1
/* 8002BF88 00027BE8  48 00 0A BC */	b lbl_8002CA44
/* 8002BF8C 00027BEC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BF90 00027BF0  4B FF E3 E9 */	bl func_8002A378
/* 8002BF94 00027BF4  FF C0 08 90 */	fmr f30, f1
/* 8002BF98 00027BF8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002BF9C 00027BFC  4B FF E3 DD */	bl func_8002A378
/* 8002BFA0 00027C00  FF A0 08 90 */	fmr f29, f1
/* 8002BFA4 00027C04  38 7E 00 08 */	addi r3, r30, 8
/* 8002BFA8 00027C08  4B FF E3 D1 */	bl func_8002A378
/* 8002BFAC 00027C0C  FC 40 E8 90 */	fmr f2, f29
/* 8002BFB0 00027C10  38 61 00 08 */	addi r3, r1, 8
/* 8002BFB4 00027C14  FC 60 F0 90 */	fmr f3, f30
/* 8002BFB8 00027C18  48 00 0B 05 */	bl func_8002CABC
/* 8002BFBC 00027C1C  7C 64 1B 78 */	mr r4, r3
/* 8002BFC0 00027C20  7F E3 FB 78 */	mr r3, r31
/* 8002BFC4 00027C24  48 01 65 71 */	bl func_80042534
/* 8002BFC8 00027C28  38 60 00 01 */	li r3, 1
/* 8002BFCC 00027C2C  48 00 0A 78 */	b lbl_8002CA44
/* 8002BFD0 00027C30  7F E3 FB 78 */	mr r3, r31
/* 8002BFD4 00027C34  48 01 65 BD */	bl func_80042590
/* 8002BFD8 00027C38  7C 64 1B 78 */	mr r4, r3
/* 8002BFDC 00027C3C  7F 43 D3 78 */	mr r3, r26
/* 8002BFE0 00027C40  4B FF E4 15 */	bl func_8002A3F4
/* 8002BFE4 00027C44  38 60 00 01 */	li r3, 1
/* 8002BFE8 00027C48  48 00 0A 5C */	b lbl_8002CA44
/* 8002BFEC 00027C4C  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002BFF0 00027C50  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002BFF4 00027C54  40 82 00 2C */	bne lbl_8002C020
/* 8002BFF8 00027C58  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002BFFC 00027C5C  4B FF E3 DD */	bl func_8002A3D8
/* 8002C000 00027C60  7C 7C 1B 78 */	mr r28, r3
/* 8002C004 00027C64  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C008 00027C68  4B FF E2 95 */	bl func_8002A29C
/* 8002C00C 00027C6C  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C010 00027C70  7C 65 1B 78 */	mr r5, r3
/* 8002C014 00027C74  7F E3 FB 78 */	mr r3, r31
/* 8002C018 00027C78  7F 86 E3 78 */	mr r6, r28
/* 8002C01C 00027C7C  48 01 65 91 */	bl func_800425AC
lbl_8002C020:
/* 8002C020 00027C80  38 60 00 01 */	li r3, 1
/* 8002C024 00027C84  48 00 0A 20 */	b lbl_8002CA44
/* 8002C028 00027C88  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C02C 00027C8C  4B FF E2 71 */	bl func_8002A29C
/* 8002C030 00027C90  7C 7C 1B 78 */	mr r28, r3
/* 8002C034 00027C94  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C038 00027C98  4B FF E3 41 */	bl func_8002A378
/* 8002C03C 00027C9C  FF A0 08 90 */	fmr f29, f1
/* 8002C040 00027CA0  38 7E 00 08 */	addi r3, r30, 8
/* 8002C044 00027CA4  4B FF E3 95 */	bl func_8002A3D8
/* 8002C048 00027CA8  FC 20 E8 90 */	fmr f1, f29
/* 8002C04C 00027CAC  7C 64 1B 78 */	mr r4, r3
/* 8002C050 00027CB0  7F E3 FB 78 */	mr r3, r31
/* 8002C054 00027CB4  7F 85 E3 78 */	mr r5, r28
/* 8002C058 00027CB8  48 01 6E 51 */	bl func_80042EA8
/* 8002C05C 00027CBC  48 00 09 E4 */	b lbl_8002CA40
/* 8002C060 00027CC0  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C064 00027CC4  4B FF E2 39 */	bl func_8002A29C
/* 8002C068 00027CC8  7C 7C 1B 78 */	mr r28, r3
/* 8002C06C 00027CCC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C070 00027CD0  4B FF E3 09 */	bl func_8002A378
/* 8002C074 00027CD4  FF A0 08 90 */	fmr f29, f1
/* 8002C078 00027CD8  38 7E 00 08 */	addi r3, r30, 8
/* 8002C07C 00027CDC  4B FF E2 FD */	bl func_8002A378
/* 8002C080 00027CE0  FC 40 E8 90 */	fmr f2, f29
/* 8002C084 00027CE4  7F E3 FB 78 */	mr r3, r31
/* 8002C088 00027CE8  7F 84 E3 78 */	mr r4, r28
/* 8002C08C 00027CEC  48 01 6E D5 */	bl func_80042F60
/* 8002C090 00027CF0  48 00 09 B0 */	b lbl_8002CA40
/* 8002C094 00027CF4  38 7E 00 08 */	addi r3, r30, 8
/* 8002C098 00027CF8  4B FF E2 E1 */	bl func_8002A378
/* 8002C09C 00027CFC  7F E3 FB 78 */	mr r3, r31
/* 8002C0A0 00027D00  48 01 65 5D */	bl func_800425FC
/* 8002C0A4 00027D04  38 60 00 01 */	li r3, 1
/* 8002C0A8 00027D08  48 00 09 9C */	b lbl_8002CA44
/* 8002C0AC 00027D0C  7F E3 FB 78 */	mr r3, r31
/* 8002C0B0 00027D10  48 01 66 9D */	bl func_8004274C
/* 8002C0B4 00027D14  7F A3 EB 78 */	mr r3, r29
/* 8002C0B8 00027D18  4B FF E2 95 */	bl func_8002A34C
/* 8002C0BC 00027D1C  38 60 00 01 */	li r3, 1
/* 8002C0C0 00027D20  48 00 09 84 */	b lbl_8002CA44
/* 8002C0C4 00027D24  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C0C8 00027D28  4B FF E1 D5 */	bl func_8002A29C
/* 8002C0CC 00027D2C  7C 7C 1B 78 */	mr r28, r3
/* 8002C0D0 00027D30  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C0D4 00027D34  4B FF E2 A5 */	bl func_8002A378
/* 8002C0D8 00027D38  FF A0 08 90 */	fmr f29, f1
/* 8002C0DC 00027D3C  38 7E 00 08 */	addi r3, r30, 8
/* 8002C0E0 00027D40  4B FF E2 99 */	bl func_8002A378
/* 8002C0E4 00027D44  FC 40 E8 90 */	fmr f2, f29
/* 8002C0E8 00027D48  7F E3 FB 78 */	mr r3, r31
/* 8002C0EC 00027D4C  7F 84 E3 78 */	mr r4, r28
/* 8002C0F0 00027D50  48 01 66 AD */	bl func_8004279C
/* 8002C0F4 00027D54  38 60 00 01 */	li r3, 1
/* 8002C0F8 00027D58  48 00 09 4C */	b lbl_8002CA44
/* 8002C0FC 00027D5C  38 61 00 4C */	addi r3, r1, 0x4c
/* 8002C100 00027D60  48 00 09 CD */	bl func_8002CACC
/* 8002C104 00027D64  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C108 00027D68  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C10C 00027D6C  40 82 00 40 */	bne lbl_8002C14C
/* 8002C110 00027D70  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C114 00027D74  4B FF E2 65 */	bl func_8002A378
/* 8002C118 00027D78  FF C0 08 90 */	fmr f30, f1
/* 8002C11C 00027D7C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C120 00027D80  4B FF E2 59 */	bl func_8002A378
/* 8002C124 00027D84  FF A0 08 90 */	fmr f29, f1
/* 8002C128 00027D88  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C12C 00027D8C  4B FF E1 71 */	bl func_8002A29C
/* 8002C130 00027D90  FC 20 E8 90 */	fmr f1, f29
/* 8002C134 00027D94  7C 65 1B 78 */	mr r5, r3
/* 8002C138 00027D98  FC 40 F0 90 */	fmr f2, f30
/* 8002C13C 00027D9C  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C140 00027DA0  7F E3 FB 78 */	mr r3, r31
/* 8002C144 00027DA4  38 C1 00 4C */	addi r6, r1, 0x4c
/* 8002C148 00027DA8  48 01 6E 85 */	bl func_80042FCC
lbl_8002C14C:
/* 8002C14C 00027DAC  38 60 00 01 */	li r3, 1
/* 8002C150 00027DB0  48 00 08 F4 */	b lbl_8002CA44
/* 8002C154 00027DB4  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C158 00027DB8  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C15C 00027DBC  40 82 00 4C */	bne lbl_8002C1A8
/* 8002C160 00027DC0  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C164 00027DC4  4B FF E2 75 */	bl func_8002A3D8
/* 8002C168 00027DC8  7C 7C 1B 78 */	mr r28, r3
/* 8002C16C 00027DCC  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C170 00027DD0  4B FF E2 09 */	bl func_8002A378
/* 8002C174 00027DD4  FF C0 08 90 */	fmr f30, f1
/* 8002C178 00027DD8  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C17C 00027DDC  4B FF E1 FD */	bl func_8002A378
/* 8002C180 00027DE0  FF A0 08 90 */	fmr f29, f1
/* 8002C184 00027DE4  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C188 00027DE8  4B FF E1 15 */	bl func_8002A29C
/* 8002C18C 00027DEC  FC 20 E8 90 */	fmr f1, f29
/* 8002C190 00027DF0  7C 65 1B 78 */	mr r5, r3
/* 8002C194 00027DF4  FC 40 F0 90 */	fmr f2, f30
/* 8002C198 00027DF8  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C19C 00027DFC  7F E3 FB 78 */	mr r3, r31
/* 8002C1A0 00027E00  7F 86 E3 78 */	mr r6, r28
/* 8002C1A4 00027E04  48 01 6E 29 */	bl func_80042FCC
lbl_8002C1A8:
/* 8002C1A8 00027E08  38 60 00 01 */	li r3, 1
/* 8002C1AC 00027E0C  48 00 08 98 */	b lbl_8002CA44
/* 8002C1B0 00027E10  38 61 00 4C */	addi r3, r1, 0x4c
/* 8002C1B4 00027E14  48 00 09 19 */	bl func_8002CACC
/* 8002C1B8 00027E18  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C1BC 00027E1C  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C1C0 00027E20  40 82 00 44 */	bne lbl_8002C204
/* 8002C1C4 00027E24  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 8002C1C8 00027E28  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C1CC 00027E2C  40 82 00 38 */	bne lbl_8002C204
/* 8002C1D0 00027E30  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C1D4 00027E34  4B FF E1 A5 */	bl func_8002A378
/* 8002C1D8 00027E38  FF A0 08 90 */	fmr f29, f1
/* 8002C1DC 00027E3C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C1E0 00027E40  4B FF E1 99 */	bl func_8002A378
/* 8002C1E4 00027E44  FC 40 E8 90 */	fmr f2, f29
/* 8002C1E8 00027E48  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C1EC 00027E4C  80 DE 00 14 */	lwz r6, 0x14(r30)
/* 8002C1F0 00027E50  7F E3 FB 78 */	mr r3, r31
/* 8002C1F4 00027E54  39 01 00 4C */	addi r8, r1, 0x4c
/* 8002C1F8 00027E58  38 A0 00 00 */	li r5, 0
/* 8002C1FC 00027E5C  38 E0 00 00 */	li r7, 0
/* 8002C200 00027E60  48 01 71 11 */	bl func_80043310
lbl_8002C204:
/* 8002C204 00027E64  38 60 00 01 */	li r3, 1
/* 8002C208 00027E68  48 00 08 3C */	b lbl_8002CA44
/* 8002C20C 00027E6C  38 61 00 4C */	addi r3, r1, 0x4c
/* 8002C210 00027E70  48 00 08 BD */	bl func_8002CACC
/* 8002C214 00027E74  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C218 00027E78  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C21C 00027E7C  40 82 00 60 */	bne lbl_8002C27C
/* 8002C220 00027E80  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 8002C224 00027E84  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C228 00027E88  40 82 00 54 */	bne lbl_8002C27C
/* 8002C22C 00027E8C  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002C230 00027E90  4B FF E1 49 */	bl func_8002A378
/* 8002C234 00027E94  FF C0 08 90 */	fmr f30, f1
/* 8002C238 00027E98  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C23C 00027E9C  4B FF E1 3D */	bl func_8002A378
/* 8002C240 00027EA0  FF A0 08 90 */	fmr f29, f1
/* 8002C244 00027EA4  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C248 00027EA8  4B FF E0 55 */	bl func_8002A29C
/* 8002C24C 00027EAC  7C 7C 1B 78 */	mr r28, r3
/* 8002C250 00027EB0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C254 00027EB4  4B FF E0 49 */	bl func_8002A29C
/* 8002C258 00027EB8  FC 20 E8 90 */	fmr f1, f29
/* 8002C25C 00027EBC  7C 65 1B 78 */	mr r5, r3
/* 8002C260 00027EC0  FC 40 F0 90 */	fmr f2, f30
/* 8002C264 00027EC4  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C268 00027EC8  80 DE 00 1C */	lwz r6, 0x1c(r30)
/* 8002C26C 00027ECC  7F E3 FB 78 */	mr r3, r31
/* 8002C270 00027ED0  7F 87 E3 78 */	mr r7, r28
/* 8002C274 00027ED4  39 01 00 4C */	addi r8, r1, 0x4c
/* 8002C278 00027ED8  48 01 70 99 */	bl func_80043310
lbl_8002C27C:
/* 8002C27C 00027EDC  38 60 00 01 */	li r3, 1
/* 8002C280 00027EE0  48 00 07 C4 */	b lbl_8002CA44
/* 8002C284 00027EE4  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C288 00027EE8  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C28C 00027EEC  40 82 00 6C */	bne lbl_8002C2F8
/* 8002C290 00027EF0  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 8002C294 00027EF4  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C298 00027EF8  40 82 00 60 */	bne lbl_8002C2F8
/* 8002C29C 00027EFC  38 7E 00 38 */	addi r3, r30, 0x38
/* 8002C2A0 00027F00  4B FF E1 39 */	bl func_8002A3D8
/* 8002C2A4 00027F04  7C 7D 1B 78 */	mr r29, r3
/* 8002C2A8 00027F08  38 7E 00 30 */	addi r3, r30, 0x30
/* 8002C2AC 00027F0C  4B FF E0 CD */	bl func_8002A378
/* 8002C2B0 00027F10  FF C0 08 90 */	fmr f30, f1
/* 8002C2B4 00027F14  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C2B8 00027F18  4B FF E0 C1 */	bl func_8002A378
/* 8002C2BC 00027F1C  FF A0 08 90 */	fmr f29, f1
/* 8002C2C0 00027F20  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C2C4 00027F24  4B FF DF D9 */	bl func_8002A29C
/* 8002C2C8 00027F28  7C 7C 1B 78 */	mr r28, r3
/* 8002C2CC 00027F2C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C2D0 00027F30  4B FF DF CD */	bl func_8002A29C
/* 8002C2D4 00027F34  FC 20 E8 90 */	fmr f1, f29
/* 8002C2D8 00027F38  7C 65 1B 78 */	mr r5, r3
/* 8002C2DC 00027F3C  FC 40 F0 90 */	fmr f2, f30
/* 8002C2E0 00027F40  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C2E4 00027F44  80 DE 00 1C */	lwz r6, 0x1c(r30)
/* 8002C2E8 00027F48  7F E3 FB 78 */	mr r3, r31
/* 8002C2EC 00027F4C  7F 87 E3 78 */	mr r7, r28
/* 8002C2F0 00027F50  7F A8 EB 78 */	mr r8, r29
/* 8002C2F4 00027F54  48 01 70 1D */	bl func_80043310
lbl_8002C2F8:
/* 8002C2F8 00027F58  38 60 00 01 */	li r3, 1
/* 8002C2FC 00027F5C  48 00 07 48 */	b lbl_8002CA44
/* 8002C300 00027F60  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C304 00027F64  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C308 00027F68  40 82 00 50 */	bne lbl_8002C358
/* 8002C30C 00027F6C  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 8002C310 00027F70  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C314 00027F74  40 82 00 44 */	bne lbl_8002C358
/* 8002C318 00027F78  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C31C 00027F7C  4B FF E0 BD */	bl func_8002A3D8
/* 8002C320 00027F80  7C 7C 1B 78 */	mr r28, r3
/* 8002C324 00027F84  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C328 00027F88  4B FF E0 51 */	bl func_8002A378
/* 8002C32C 00027F8C  FF A0 08 90 */	fmr f29, f1
/* 8002C330 00027F90  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C334 00027F94  4B FF E0 45 */	bl func_8002A378
/* 8002C338 00027F98  FC 40 E8 90 */	fmr f2, f29
/* 8002C33C 00027F9C  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C340 00027FA0  80 DE 00 14 */	lwz r6, 0x14(r30)
/* 8002C344 00027FA4  7F E3 FB 78 */	mr r3, r31
/* 8002C348 00027FA8  7F 88 E3 78 */	mr r8, r28
/* 8002C34C 00027FAC  38 A0 00 00 */	li r5, 0
/* 8002C350 00027FB0  38 E0 00 00 */	li r7, 0
/* 8002C354 00027FB4  48 01 6F BD */	bl func_80043310
lbl_8002C358:
/* 8002C358 00027FB8  38 60 00 01 */	li r3, 1
/* 8002C35C 00027FBC  48 00 06 E8 */	b lbl_8002CA44
/* 8002C360 00027FC0  38 7E 00 08 */	addi r3, r30, 8
/* 8002C364 00027FC4  4B FF E0 15 */	bl func_8002A378
/* 8002C368 00027FC8  7F E3 FB 78 */	mr r3, r31
/* 8002C36C 00027FCC  48 01 77 F5 */	bl func_80043B60
/* 8002C370 00027FD0  38 60 00 01 */	li r3, 1
/* 8002C374 00027FD4  48 00 06 D0 */	b lbl_8002CA44
/* 8002C378 00027FD8  7F E3 FB 78 */	mr r3, r31
/* 8002C37C 00027FDC  48 01 81 25 */	bl func_800444A0
/* 8002C380 00027FE0  7C 64 1B 78 */	mr r4, r3
/* 8002C384 00027FE4  7F A3 EB 78 */	mr r3, r29
/* 8002C388 00027FE8  4B FF C1 CD */	bl func_80028554
/* 8002C38C 00027FEC  38 60 00 01 */	li r3, 1
/* 8002C390 00027FF0  48 00 06 B4 */	b lbl_8002CA44
/* 8002C394 00027FF4  7F E3 FB 78 */	mr r3, r31
/* 8002C398 00027FF8  48 01 63 FD */	bl func_80042794
/* 8002C39C 00027FFC  7F A3 EB 78 */	mr r3, r29
/* 8002C3A0 00028000  4B FF DF AD */	bl func_8002A34C
/* 8002C3A4 00028004  38 60 00 01 */	li r3, 1
/* 8002C3A8 00028008  48 00 06 9C */	b lbl_8002CA44
/* 8002C3AC 0002800C  38 7E 00 08 */	addi r3, r30, 8
/* 8002C3B0 00028010  4B FF DF C9 */	bl func_8002A378
/* 8002C3B4 00028014  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C3B8 00028018  7F E3 FB 78 */	mr r3, r31
/* 8002C3BC 0002801C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C3C0 00028020  48 01 63 0D */	bl func_800426CC
/* 8002C3C4 00028024  38 60 00 01 */	li r3, 1
/* 8002C3C8 00028028  48 00 06 7C */	b lbl_8002CA44
/* 8002C3CC 0002802C  7F E3 FB 78 */	mr r3, r31
/* 8002C3D0 00028030  48 01 63 39 */	bl func_80042708
/* 8002C3D4 00028034  C0 02 81 3C */	lfs f0, lbl_8064073C-_SDA2_BASE_(r2)
/* 8002C3D8 00028038  7F A3 EB 78 */	mr r3, r29
/* 8002C3DC 0002803C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C3E0 00028040  4B FF DF 6D */	bl func_8002A34C
/* 8002C3E4 00028044  38 60 00 01 */	li r3, 1
/* 8002C3E8 00028048  48 00 06 5C */	b lbl_8002CA44
/* 8002C3EC 0002804C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C3F0 00028050  4B FF DE AD */	bl func_8002A29C
/* 8002C3F4 00028054  7C 7C 1B 78 */	mr r28, r3
/* 8002C3F8 00028058  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C3FC 0002805C  4B FF DF 7D */	bl func_8002A378
/* 8002C400 00028060  FF A0 08 90 */	fmr f29, f1
/* 8002C404 00028064  38 7E 00 08 */	addi r3, r30, 8
/* 8002C408 00028068  4B FF DF 71 */	bl func_8002A378
/* 8002C40C 0002806C  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C410 00028070  FC 40 E8 90 */	fmr f2, f29
/* 8002C414 00028074  7F E3 FB 78 */	mr r3, r31
/* 8002C418 00028078  7F 84 E3 78 */	mr r4, r28
/* 8002C41C 0002807C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C420 00028080  48 01 62 F1 */	bl func_80042710
/* 8002C424 00028084  38 60 00 01 */	li r3, 1
/* 8002C428 00028088  48 00 06 1C */	b lbl_8002CA44
/* 8002C42C 0002808C  80 0D 80 C8 */	lwz r0, lbl_8063D388-_SDA_BASE_(r13)
/* 8002C430 00028090  2C 00 00 00 */	cmpwi r0, 0
/* 8002C434 00028094  41 82 06 0C */	beq lbl_8002CA40
/* 8002C438 00028098  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C43C 0002809C  4B FF DE 61 */	bl func_8002A29C
/* 8002C440 000280A0  7C 7D 1B 78 */	mr r29, r3
/* 8002C444 000280A4  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C448 000280A8  4B FF DF 31 */	bl func_8002A378
/* 8002C44C 000280AC  FF A0 08 90 */	fmr f29, f1
/* 8002C450 000280B0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C454 000280B4  4B FF DE 49 */	bl func_8002A29C
/* 8002C458 000280B8  7C 7C 1B 78 */	mr r28, r3
/* 8002C45C 000280BC  38 7E 00 08 */	addi r3, r30, 8
/* 8002C460 000280C0  4B FF DF 19 */	bl func_8002A378
/* 8002C464 000280C4  FC 40 E8 90 */	fmr f2, f29
/* 8002C468 000280C8  7F E3 FB 78 */	mr r3, r31
/* 8002C46C 000280CC  7F 84 E3 78 */	mr r4, r28
/* 8002C470 000280D0  7F A5 EB 78 */	mr r5, r29
/* 8002C474 000280D4  48 01 56 6D */	bl func_80041AE0
/* 8002C478 000280D8  48 00 05 C8 */	b lbl_8002CA40
/* 8002C47C 000280DC  80 0D 80 C8 */	lwz r0, lbl_8063D388-_SDA_BASE_(r13)
/* 8002C480 000280E0  2C 00 00 00 */	cmpwi r0, 0
/* 8002C484 000280E4  41 82 05 BC */	beq lbl_8002CA40
/* 8002C488 000280E8  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C48C 000280EC  4B FF DE 11 */	bl func_8002A29C
/* 8002C490 000280F0  7C 7D 1B 78 */	mr r29, r3
/* 8002C494 000280F4  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C498 000280F8  4B FF DE E1 */	bl func_8002A378
/* 8002C49C 000280FC  FF A0 08 90 */	fmr f29, f1
/* 8002C4A0 00028100  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C4A4 00028104  4B FF DD F9 */	bl func_8002A29C
/* 8002C4A8 00028108  7C 7C 1B 78 */	mr r28, r3
/* 8002C4AC 0002810C  38 7E 00 08 */	addi r3, r30, 8
/* 8002C4B0 00028110  4B FF DE C9 */	bl func_8002A378
/* 8002C4B4 00028114  FC 40 E8 90 */	fmr f2, f29
/* 8002C4B8 00028118  7F E3 FB 78 */	mr r3, r31
/* 8002C4BC 0002811C  7F 84 E3 78 */	mr r4, r28
/* 8002C4C0 00028120  7F A5 EB 78 */	mr r5, r29
/* 8002C4C4 00028124  48 01 56 35 */	bl func_80041AF8
/* 8002C4C8 00028128  48 00 05 78 */	b lbl_8002CA40
/* 8002C4CC 0002812C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C4D0 00028130  4B FF DE A9 */	bl func_8002A378
/* 8002C4D4 00028134  FF C0 08 90 */	fmr f30, f1
/* 8002C4D8 00028138  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C4DC 0002813C  4B FF DE 9D */	bl func_8002A378
/* 8002C4E0 00028140  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C4E4 00028144  38 7E 00 08 */	addi r3, r30, 8
/* 8002C4E8 00028148  EF A0 00 72 */	fmuls f29, f0, f1
/* 8002C4EC 0002814C  4B FF DE 8D */	bl func_8002A378
/* 8002C4F0 00028150  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C4F4 00028154  FC 40 E8 90 */	fmr f2, f29
/* 8002C4F8 00028158  FC 60 F0 90 */	fmr f3, f30
/* 8002C4FC 0002815C  7F E3 FB 78 */	mr r3, r31
/* 8002C500 00028160  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C504 00028164  48 01 5C 59 */	bl func_8004215C
/* 8002C508 00028168  48 00 05 38 */	b lbl_8002CA40
/* 8002C50C 0002816C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C510 00028170  4B FF DE 69 */	bl func_8002A378
/* 8002C514 00028174  FF C0 08 90 */	fmr f30, f1
/* 8002C518 00028178  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C51C 0002817C  4B FF DE 5D */	bl func_8002A378
/* 8002C520 00028180  FF A0 08 90 */	fmr f29, f1
/* 8002C524 00028184  38 7E 00 08 */	addi r3, r30, 8
/* 8002C528 00028188  4B FF DE 51 */	bl func_8002A378
/* 8002C52C 0002818C  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C530 00028190  FC 40 E8 90 */	fmr f2, f29
/* 8002C534 00028194  FC 60 F0 90 */	fmr f3, f30
/* 8002C538 00028198  7F E3 FB 78 */	mr r3, r31
/* 8002C53C 0002819C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C540 000281A0  48 01 5C B1 */	bl func_800421F0
/* 8002C544 000281A4  48 00 04 FC */	b lbl_8002CA40
/* 8002C548 000281A8  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C54C 000281AC  4B FF DD 51 */	bl func_8002A29C
/* 8002C550 000281B0  7C 7C 1B 78 */	mr r28, r3
/* 8002C554 000281B4  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C558 000281B8  4B FF DE 21 */	bl func_8002A378
/* 8002C55C 000281BC  FF E0 08 90 */	fmr f31, f1
/* 8002C560 000281C0  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C564 000281C4  4B FF DE 15 */	bl func_8002A378
/* 8002C568 000281C8  FF C0 08 90 */	fmr f30, f1
/* 8002C56C 000281CC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C570 000281D0  4B FF DE 09 */	bl func_8002A378
/* 8002C574 000281D4  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C578 000281D8  38 7E 00 08 */	addi r3, r30, 8
/* 8002C57C 000281DC  EF A0 00 72 */	fmuls f29, f0, f1
/* 8002C580 000281E0  4B FF DD F9 */	bl func_8002A378
/* 8002C584 000281E4  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C588 000281E8  FC 40 E8 90 */	fmr f2, f29
/* 8002C58C 000281EC  FC 60 F0 90 */	fmr f3, f30
/* 8002C590 000281F0  7F E3 FB 78 */	mr r3, r31
/* 8002C594 000281F4  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C598 000281F8  7F 84 E3 78 */	mr r4, r28
/* 8002C59C 000281FC  FC 80 F8 90 */	fmr f4, f31
/* 8002C5A0 00028200  48 01 5D 7D */	bl func_8004231C
/* 8002C5A4 00028204  48 00 04 9C */	b lbl_8002CA40
/* 8002C5A8 00028208  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C5AC 0002820C  4B FF DC F1 */	bl func_8002A29C
/* 8002C5B0 00028210  7C 7C 1B 78 */	mr r28, r3
/* 8002C5B4 00028214  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C5B8 00028218  4B FF DD C1 */	bl func_8002A378
/* 8002C5BC 0002821C  FF A0 08 90 */	fmr f29, f1
/* 8002C5C0 00028220  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C5C4 00028224  4B FF DD B5 */	bl func_8002A378
/* 8002C5C8 00028228  FF E0 08 90 */	fmr f31, f1
/* 8002C5CC 0002822C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C5D0 00028230  4B FF DD A9 */	bl func_8002A378
/* 8002C5D4 00028234  FF C0 08 90 */	fmr f30, f1
/* 8002C5D8 00028238  38 7E 00 08 */	addi r3, r30, 8
/* 8002C5DC 0002823C  4B FF DD 9D */	bl func_8002A378
/* 8002C5E0 00028240  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C5E4 00028244  FC 40 F0 90 */	fmr f2, f30
/* 8002C5E8 00028248  FC 60 F8 90 */	fmr f3, f31
/* 8002C5EC 0002824C  7F E3 FB 78 */	mr r3, r31
/* 8002C5F0 00028250  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C5F4 00028254  7F 84 E3 78 */	mr r4, r28
/* 8002C5F8 00028258  FC 80 E8 90 */	fmr f4, f29
/* 8002C5FC 0002825C  48 01 5D DD */	bl func_800423D8
/* 8002C600 00028260  48 00 04 40 */	b lbl_8002CA40
/* 8002C604 00028264  38 7E 00 28 */	addi r3, r30, 0x28
/* 8002C608 00028268  4B FF DC 95 */	bl func_8002A29C
/* 8002C60C 0002826C  7C 7D 1B 78 */	mr r29, r3
/* 8002C610 00028270  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C614 00028274  4B FF DC 89 */	bl func_8002A29C
/* 8002C618 00028278  7C 7C 1B 78 */	mr r28, r3
/* 8002C61C 0002827C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C620 00028280  4B FF DD 59 */	bl func_8002A378
/* 8002C624 00028284  FF E0 08 90 */	fmr f31, f1
/* 8002C628 00028288  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C62C 0002828C  4B FF DD 4D */	bl func_8002A378
/* 8002C630 00028290  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C634 00028294  38 7E 00 08 */	addi r3, r30, 8
/* 8002C638 00028298  EF C0 00 72 */	fmuls f30, f0, f1
/* 8002C63C 0002829C  4B FF DD 3D */	bl func_8002A378
/* 8002C640 000282A0  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C644 000282A4  FC 40 F0 90 */	fmr f2, f30
/* 8002C648 000282A8  FC 60 F8 90 */	fmr f3, f31
/* 8002C64C 000282AC  7F E3 FB 78 */	mr r3, r31
/* 8002C650 000282B0  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C654 000282B4  7F 84 E3 78 */	mr r4, r28
/* 8002C658 000282B8  7F A5 EB 78 */	mr r5, r29
/* 8002C65C 000282BC  48 01 64 D9 */	bl func_80042B34
/* 8002C660 000282C0  48 00 03 E0 */	b lbl_8002CA40
/* 8002C664 000282C4  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C668 000282C8  4B FF DC 35 */	bl func_8002A29C
/* 8002C66C 000282CC  7C 7D 1B 78 */	mr r29, r3
/* 8002C670 000282D0  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C674 000282D4  4B FF DC 29 */	bl func_8002A29C
/* 8002C678 000282D8  7C 7C 1B 78 */	mr r28, r3
/* 8002C67C 000282DC  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C680 000282E0  4B FF DC F9 */	bl func_8002A378
/* 8002C684 000282E4  FF C0 08 90 */	fmr f30, f1
/* 8002C688 000282E8  38 7E 00 08 */	addi r3, r30, 8
/* 8002C68C 000282EC  4B FF DC ED */	bl func_8002A378
/* 8002C690 000282F0  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C694 000282F4  FC 40 F0 90 */	fmr f2, f30
/* 8002C698 000282F8  7F E3 FB 78 */	mr r3, r31
/* 8002C69C 000282FC  7F 84 E3 78 */	mr r4, r28
/* 8002C6A0 00028300  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C6A4 00028304  7F A5 EB 78 */	mr r5, r29
/* 8002C6A8 00028308  48 01 66 09 */	bl func_80042CB0
/* 8002C6AC 0002830C  48 00 03 94 */	b lbl_8002CA40
/* 8002C6B0 00028310  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C6B4 00028314  4B FF DB E9 */	bl func_8002A29C
/* 8002C6B8 00028318  7C 7D 1B 78 */	mr r29, r3
/* 8002C6BC 0002831C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C6C0 00028320  4B FF DB DD */	bl func_8002A29C
/* 8002C6C4 00028324  7C 7C 1B 78 */	mr r28, r3
/* 8002C6C8 00028328  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C6CC 0002832C  4B FF DC AD */	bl func_8002A378
/* 8002C6D0 00028330  FF C0 08 90 */	fmr f30, f1
/* 8002C6D4 00028334  38 7E 00 08 */	addi r3, r30, 8
/* 8002C6D8 00028338  4B FF DC A1 */	bl func_8002A378
/* 8002C6DC 0002833C  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C6E0 00028340  FC 40 F0 90 */	fmr f2, f30
/* 8002C6E4 00028344  7F E3 FB 78 */	mr r3, r31
/* 8002C6E8 00028348  7F 84 E3 78 */	mr r4, r28
/* 8002C6EC 0002834C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C6F0 00028350  7F A5 EB 78 */	mr r5, r29
/* 8002C6F4 00028354  48 01 66 CD */	bl func_80042DC0
/* 8002C6F8 00028358  48 00 03 48 */	b lbl_8002CA40
/* 8002C6FC 0002835C  38 7E 00 08 */	addi r3, r30, 8
/* 8002C700 00028360  4B FF DC 79 */	bl func_8002A378
/* 8002C704 00028364  7F E3 FB 78 */	mr r3, r31
/* 8002C708 00028368  48 01 4B 05 */	bl func_8004120C
/* 8002C70C 0002836C  38 60 00 01 */	li r3, 1
/* 8002C710 00028370  48 00 03 34 */	b lbl_8002CA44
/* 8002C714 00028374  7F E3 FB 78 */	mr r3, r31
/* 8002C718 00028378  48 01 4B 05 */	bl func_8004121C
/* 8002C71C 0002837C  38 60 00 01 */	li r3, 1
/* 8002C720 00028380  48 00 03 24 */	b lbl_8002CA44
/* 8002C724 00028384  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C728 00028388  4B FF DC 51 */	bl func_8002A378
/* 8002C72C 0002838C  FF E0 08 90 */	fmr f31, f1
/* 8002C730 00028390  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C734 00028394  4B FF DC 45 */	bl func_8002A378
/* 8002C738 00028398  FF C0 08 90 */	fmr f30, f1
/* 8002C73C 0002839C  38 7E 00 08 */	addi r3, r30, 8
/* 8002C740 000283A0  4B FF DC 39 */	bl func_8002A378
/* 8002C744 000283A4  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C748 000283A8  FC 40 F0 90 */	fmr f2, f30
/* 8002C74C 000283AC  FC 60 F8 90 */	fmr f3, f31
/* 8002C750 000283B0  7F E3 FB 78 */	mr r3, r31
/* 8002C754 000283B4  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C758 000283B8  48 01 4F 91 */	bl func_800416E8
/* 8002C75C 000283BC  38 60 00 01 */	li r3, 1
/* 8002C760 000283C0  48 00 02 E4 */	b lbl_8002CA44
/* 8002C764 000283C4  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C768 000283C8  4B FF DC 11 */	bl func_8002A378
/* 8002C76C 000283CC  FF E0 08 90 */	fmr f31, f1
/* 8002C770 000283D0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C774 000283D4  4B FF DC 05 */	bl func_8002A378
/* 8002C778 000283D8  FF C0 08 90 */	fmr f30, f1
/* 8002C77C 000283DC  38 7E 00 08 */	addi r3, r30, 8
/* 8002C780 000283E0  4B FF DB 1D */	bl func_8002A29C
/* 8002C784 000283E4  FC 20 F0 90 */	fmr f1, f30
/* 8002C788 000283E8  7C 64 1B 78 */	mr r4, r3
/* 8002C78C 000283EC  FC 40 F8 90 */	fmr f2, f31
/* 8002C790 000283F0  7F E3 FB 78 */	mr r3, r31
/* 8002C794 000283F4  48 01 4F A9 */	bl func_8004173C
/* 8002C798 000283F8  38 60 00 01 */	li r3, 1
/* 8002C79C 000283FC  48 00 02 A8 */	b lbl_8002CA44
/* 8002C7A0 00028400  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C7A4 00028404  4B FF DB D5 */	bl func_8002A378
/* 8002C7A8 00028408  FF E0 08 90 */	fmr f31, f1
/* 8002C7AC 0002840C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C7B0 00028410  4B FF DB C9 */	bl func_8002A378
/* 8002C7B4 00028414  FF C0 08 90 */	fmr f30, f1
/* 8002C7B8 00028418  38 7E 00 08 */	addi r3, r30, 8
/* 8002C7BC 0002841C  4B FF DA E1 */	bl func_8002A29C
/* 8002C7C0 00028420  FC 20 F0 90 */	fmr f1, f30
/* 8002C7C4 00028424  7C 64 1B 78 */	mr r4, r3
/* 8002C7C8 00028428  FC 40 F8 90 */	fmr f2, f31
/* 8002C7CC 0002842C  7F E3 FB 78 */	mr r3, r31
/* 8002C7D0 00028430  48 01 4F C5 */	bl func_80041794
/* 8002C7D4 00028434  38 60 00 01 */	li r3, 1
/* 8002C7D8 00028438  48 00 02 6C */	b lbl_8002CA44
/* 8002C7DC 0002843C  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C7E0 00028440  4B FF DB 99 */	bl func_8002A378
/* 8002C7E4 00028444  FF E0 08 90 */	fmr f31, f1
/* 8002C7E8 00028448  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C7EC 0002844C  4B FF DB 8D */	bl func_8002A378
/* 8002C7F0 00028450  FF C0 08 90 */	fmr f30, f1
/* 8002C7F4 00028454  38 7E 00 08 */	addi r3, r30, 8
/* 8002C7F8 00028458  4B FF DB 81 */	bl func_8002A378
/* 8002C7FC 0002845C  FC 40 F0 90 */	fmr f2, f30
/* 8002C800 00028460  7F E3 FB 78 */	mr r3, r31
/* 8002C804 00028464  FC 60 F8 90 */	fmr f3, f31
/* 8002C808 00028468  48 01 4F E1 */	bl func_800417E8
/* 8002C80C 0002846C  38 60 00 01 */	li r3, 1
/* 8002C810 00028470  48 00 02 34 */	b lbl_8002CA44
/* 8002C814 00028474  38 7E 00 08 */	addi r3, r30, 8
/* 8002C818 00028478  4B FF DA 85 */	bl func_8002A29C
/* 8002C81C 0002847C  7C 64 1B 78 */	mr r4, r3
/* 8002C820 00028480  7F E3 FB 78 */	mr r3, r31
/* 8002C824 00028484  48 01 50 89 */	bl func_800418AC
/* 8002C828 00028488  38 60 00 01 */	li r3, 1
/* 8002C82C 0002848C  48 00 02 18 */	b lbl_8002CA44
/* 8002C830 00028490  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C834 00028494  4B FF DA 69 */	bl func_8002A29C
/* 8002C838 00028498  7C 7C 1B 78 */	mr r28, r3
/* 8002C83C 0002849C  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C840 000284A0  4B FF DB 39 */	bl func_8002A378
/* 8002C844 000284A4  FF C0 08 90 */	fmr f30, f1
/* 8002C848 000284A8  38 7E 00 08 */	addi r3, r30, 8
/* 8002C84C 000284AC  4B FF DB 2D */	bl func_8002A378
/* 8002C850 000284B0  FC 40 F0 90 */	fmr f2, f30
/* 8002C854 000284B4  7F E3 FB 78 */	mr r3, r31
/* 8002C858 000284B8  7F 84 E3 78 */	mr r4, r28
/* 8002C85C 000284BC  48 01 50 F5 */	bl func_80041950
/* 8002C860 000284C0  38 60 00 01 */	li r3, 1
/* 8002C864 000284C4  48 00 01 E0 */	b lbl_8002CA44
/* 8002C868 000284C8  7F E3 FB 78 */	mr r3, r31
/* 8002C86C 000284CC  48 01 71 1D */	bl func_80043988
/* 8002C870 000284D0  38 60 00 01 */	li r3, 1
/* 8002C874 000284D4  48 00 01 D0 */	b lbl_8002CA44
/* 8002C878 000284D8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C87C 000284DC  4B FF DA 21 */	bl func_8002A29C
/* 8002C880 000284E0  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C884 000284E4  7C 65 1B 78 */	mr r5, r3
/* 8002C888 000284E8  7F E3 FB 78 */	mr r3, r31
/* 8002C88C 000284EC  48 01 71 61 */	bl func_800439EC
/* 8002C890 000284F0  7F A3 EB 78 */	mr r3, r29
/* 8002C894 000284F4  4B FF DA B9 */	bl func_8002A34C
/* 8002C898 000284F8  38 60 00 01 */	li r3, 1
/* 8002C89C 000284FC  48 00 01 A8 */	b lbl_8002CA44
/* 8002C8A0 00028500  38 7E 00 08 */	addi r3, r30, 8
/* 8002C8A4 00028504  4B FF D9 F9 */	bl func_8002A29C
/* 8002C8A8 00028508  7C 64 1B 78 */	mr r4, r3
/* 8002C8AC 0002850C  7F E3 FB 78 */	mr r3, r31
/* 8002C8B0 00028510  48 01 72 61 */	bl func_80043B10
/* 8002C8B4 00028514  7F A3 EB 78 */	mr r3, r29
/* 8002C8B8 00028518  4B FF DA 95 */	bl func_8002A34C
/* 8002C8BC 0002851C  38 60 00 01 */	li r3, 1
/* 8002C8C0 00028520  48 00 01 84 */	b lbl_8002CA44
/* 8002C8C4 00028524  38 61 00 4C */	addi r3, r1, 0x4c
/* 8002C8C8 00028528  48 00 02 05 */	bl func_8002CACC
/* 8002C8CC 0002852C  A8 1E 00 08 */	lha r0, 8(r30)
/* 8002C8D0 00028530  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002C8D4 00028534  40 82 00 40 */	bne lbl_8002C914
/* 8002C8D8 00028538  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C8DC 0002853C  4B FF DA 9D */	bl func_8002A378
/* 8002C8E0 00028540  FF C0 08 90 */	fmr f30, f1
/* 8002C8E4 00028544  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C8E8 00028548  4B FF DA 91 */	bl func_8002A378
/* 8002C8EC 0002854C  FF E0 08 90 */	fmr f31, f1
/* 8002C8F0 00028550  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C8F4 00028554  4B FF D9 A9 */	bl func_8002A29C
/* 8002C8F8 00028558  FC 20 F8 90 */	fmr f1, f31
/* 8002C8FC 0002855C  7C 65 1B 78 */	mr r5, r3
/* 8002C900 00028560  FC 40 F0 90 */	fmr f2, f30
/* 8002C904 00028564  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8002C908 00028568  7F E3 FB 78 */	mr r3, r31
/* 8002C90C 0002856C  38 C1 00 4C */	addi r6, r1, 0x4c
/* 8002C910 00028570  48 01 6D 2D */	bl func_8004363C
lbl_8002C914:
/* 8002C914 00028574  38 60 00 01 */	li r3, 1
/* 8002C918 00028578  48 00 01 2C */	b lbl_8002CA44
/* 8002C91C 0002857C  80 0D 80 C8 */	lwz r0, lbl_8063D388-_SDA_BASE_(r13)
/* 8002C920 00028580  2C 00 00 00 */	cmpwi r0, 0
/* 8002C924 00028584  41 82 01 1C */	beq lbl_8002CA40
/* 8002C928 00028588  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C92C 0002858C  4B FF D9 71 */	bl func_8002A29C
/* 8002C930 00028590  7C 7D 1B 78 */	mr r29, r3
/* 8002C934 00028594  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C938 00028598  4B FF DA 41 */	bl func_8002A378
/* 8002C93C 0002859C  FF E0 08 90 */	fmr f31, f1
/* 8002C940 000285A0  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C944 000285A4  4B FF D9 59 */	bl func_8002A29C
/* 8002C948 000285A8  7C 7C 1B 78 */	mr r28, r3
/* 8002C94C 000285AC  38 7E 00 08 */	addi r3, r30, 8
/* 8002C950 000285B0  4B FF DA 29 */	bl func_8002A378
/* 8002C954 000285B4  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C958 000285B8  FC 40 F8 90 */	fmr f2, f31
/* 8002C95C 000285BC  7F E3 FB 78 */	mr r3, r31
/* 8002C960 000285C0  7F 84 E3 78 */	mr r4, r28
/* 8002C964 000285C4  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C968 000285C8  7F A5 EB 78 */	mr r5, r29
/* 8002C96C 000285CC  48 01 51 A5 */	bl func_80041B10
/* 8002C970 000285D0  48 00 00 D0 */	b lbl_8002CA40
/* 8002C974 000285D4  80 0D 80 C8 */	lwz r0, lbl_8063D388-_SDA_BASE_(r13)
/* 8002C978 000285D8  2C 00 00 00 */	cmpwi r0, 0
/* 8002C97C 000285DC  41 82 00 C4 */	beq lbl_8002CA40
/* 8002C980 000285E0  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C984 000285E4  4B FF D9 19 */	bl func_8002A29C
/* 8002C988 000285E8  7C 7D 1B 78 */	mr r29, r3
/* 8002C98C 000285EC  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C990 000285F0  4B FF D9 E9 */	bl func_8002A378
/* 8002C994 000285F4  FF E0 08 90 */	fmr f31, f1
/* 8002C998 000285F8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C99C 000285FC  4B FF D9 01 */	bl func_8002A29C
/* 8002C9A0 00028600  7C 7C 1B 78 */	mr r28, r3
/* 8002C9A4 00028604  38 7E 00 08 */	addi r3, r30, 8
/* 8002C9A8 00028608  4B FF D9 D1 */	bl func_8002A378
/* 8002C9AC 0002860C  C0 02 81 38 */	lfs f0, lbl_80640738-_SDA2_BASE_(r2)
/* 8002C9B0 00028610  FC 40 F8 90 */	fmr f2, f31
/* 8002C9B4 00028614  7F E3 FB 78 */	mr r3, r31
/* 8002C9B8 00028618  7F 84 E3 78 */	mr r4, r28
/* 8002C9BC 0002861C  EC 20 00 72 */	fmuls f1, f0, f1
/* 8002C9C0 00028620  7F A5 EB 78 */	mr r5, r29
/* 8002C9C4 00028624  48 01 51 65 */	bl func_80041B28
/* 8002C9C8 00028628  48 00 00 78 */	b lbl_8002CA40
/* 8002C9CC 0002862C  80 0D 80 C8 */	lwz r0, lbl_8063D388-_SDA_BASE_(r13)
/* 8002C9D0 00028630  2C 00 00 00 */	cmpwi r0, 0
/* 8002C9D4 00028634  41 82 00 6C */	beq lbl_8002CA40
/* 8002C9D8 00028638  38 7E 00 20 */	addi r3, r30, 0x20
/* 8002C9DC 0002863C  4B FF D8 C1 */	bl func_8002A29C
/* 8002C9E0 00028640  7C 7C 1B 78 */	mr r28, r3
/* 8002C9E4 00028644  38 7E 00 18 */	addi r3, r30, 0x18
/* 8002C9E8 00028648  4B FF D9 91 */	bl func_8002A378
/* 8002C9EC 0002864C  FF E0 08 90 */	fmr f31, f1
/* 8002C9F0 00028650  38 7E 00 10 */	addi r3, r30, 0x10
/* 8002C9F4 00028654  4B FF D8 A9 */	bl func_8002A29C
/* 8002C9F8 00028658  7C 7D 1B 78 */	mr r29, r3
/* 8002C9FC 0002865C  38 7E 00 08 */	addi r3, r30, 8
/* 8002CA00 00028660  4B FF D9 79 */	bl func_8002A378
/* 8002CA04 00028664  FC 40 F8 90 */	fmr f2, f31
/* 8002CA08 00028668  7F E3 FB 78 */	mr r3, r31
/* 8002CA0C 0002866C  7F A4 EB 78 */	mr r4, r29
/* 8002CA10 00028670  7F 85 E3 78 */	mr r5, r28
/* 8002CA14 00028674  48 01 51 2D */	bl func_80041B40
/* 8002CA18 00028678  48 00 00 28 */	b lbl_8002CA40
/* 8002CA1C 0002867C  38 7E 00 08 */	addi r3, r30, 8
/* 8002CA20 00028680  4B FF D9 B9 */	bl func_8002A3D8
/* 8002CA24 00028684  7C 64 1B 78 */	mr r4, r3
/* 8002CA28 00028688  7F E3 FB 78 */	mr r3, r31
/* 8002CA2C 0002868C  38 A1 00 4C */	addi r5, r1, 0x4c
/* 8002CA30 00028690  48 01 7B 25 */	bl func_80044554
/* 8002CA34 00028694  7F 43 D3 78 */	mr r3, r26
/* 8002CA38 00028698  38 81 00 4C */	addi r4, r1, 0x4c
/* 8002CA3C 0002869C  4B FF D9 B9 */	bl func_8002A3F4
lbl_8002CA40:
/* 8002CA40 000286A0  38 60 00 01 */	li r3, 1
lbl_8002CA44:
/* 8002CA44 000286A4  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 8002CA48 000286A8  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 8002CA4C 000286AC  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 8002CA50 000286B0  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 8002CA54 000286B4  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 8002CA58 000286B8  39 61 00 70 */	addi r11, r1, 0x70
/* 8002CA5C 000286BC  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 8002CA60 000286C0  48 19 A7 11 */	bl _restgpr_26
/* 8002CA64 000286C4  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 8002CA68 000286C8  7C 08 03 A6 */	mtlr r0
/* 8002CA6C 000286CC  38 21 00 A0 */	addi r1, r1, 0xa0
/* 8002CA70 000286D0  4E 80 00 20 */	blr

.global func_8002CA74
func_8002CA74:
/* 8002CA74 000286D4  4E 80 00 20 */	blr

.global func_8002CA78
func_8002CA78:
/* 8002CA78 000286D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8002CA7C 000286DC  7C 08 02 A6 */	mflr r0
/* 8002CA80 000286E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8002CA84 000286E4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8002CA88 000286E8  7C 7F 1B 78 */	mr r31, r3
/* 8002CA8C 000286EC  D0 23 04 E0 */	stfs f1, 0x4e0(r3)
/* 8002CA90 000286F0  38 63 00 04 */	addi r3, r3, 4
/* 8002CA94 000286F4  48 02 38 F5 */	bl func_80050388
/* 8002CA98 000286F8  38 00 00 01 */	li r0, 1
/* 8002CA9C 000286FC  98 1F 00 01 */	stb r0, 1(r31)
/* 8002CAA0 00028700  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8002CAA4 00028704  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8002CAA8 00028708  7C 08 03 A6 */	mtlr r0
/* 8002CAAC 0002870C  38 21 00 10 */	addi r1, r1, 0x10
/* 8002CAB0 00028710  4E 80 00 20 */	blr

.global func_8002CAB4
func_8002CAB4:
/* 8002CAB4 00028714  C0 23 04 E0 */	lfs f1, 0x4e0(r3)
/* 8002CAB8 00028718  4E 80 00 20 */	blr

.global func_8002CABC
func_8002CABC:
/* 8002CABC 0002871C  D0 23 00 00 */	stfs f1, 0(r3)
/* 8002CAC0 00028720  D0 43 00 04 */	stfs f2, 4(r3)
/* 8002CAC4 00028724  D0 63 00 08 */	stfs f3, 8(r3)
/* 8002CAC8 00028728  4E 80 00 20 */	blr

.global func_8002CACC
func_8002CACC:
/* 8002CACC 0002872C  C0 02 81 40 */	lfs f0, lbl_80640740-_SDA2_BASE_(r2)
/* 8002CAD0 00028730  D0 03 00 00 */	stfs f0, 0(r3)
/* 8002CAD4 00028734  D0 03 00 04 */	stfs f0, 4(r3)
/* 8002CAD8 00028738  D0 03 00 08 */	stfs f0, 8(r3)
/* 8002CADC 0002873C  4E 80 00 20 */	blr

.global func_8002CAE0
func_8002CAE0:
/* 8002CAE0 00028740  38 A0 00 01 */	li r5, 1
/* 8002CAE4 00028744  38 6D 97 20 */	addi r3, r13, lbl_8063E9E0-_SDA_BASE_
/* 8002CAE8 00028748  38 80 00 04 */	li r4, 4
/* 8002CAEC 0002874C  38 00 00 00 */	li r0, 0
/* 8002CAF0 00028750  98 AD 97 20 */	stb r5, lbl_8063E9E0-_SDA_BASE_(r13)
/* 8002CAF4 00028754  B0 83 00 02 */	sth r4, 2(r3)
/* 8002CAF8 00028758  98 03 00 04 */	stb r0, 4(r3)
/* 8002CAFC 0002875C  4E 80 00 20 */	blr

.global lbl_8002CB00
lbl_8002CB00:
/* 8002CB00 00028760  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8002CB04 00028764  7C 08 02 A6 */	mflr r0
/* 8002CB08 00028768  90 01 00 44 */	stw r0, 0x44(r1)
/* 8002CB0C 0002876C  39 61 00 40 */	addi r11, r1, 0x40
/* 8002CB10 00028770  48 19 A6 15 */	bl _savegpr_26
/* 8002CB14 00028774  7C 7A 1B 78 */	mr r26, r3
/* 8002CB18 00028778  7C 9B 23 78 */	mr r27, r4
/* 8002CB1C 0002877C  7C BC 2B 78 */	mr r28, r5
/* 8002CB20 00028780  7C DD 33 78 */	mr r29, r6
/* 8002CB24 00028784  48 01 8A 6D */	bl func_80045590
/* 8002CB28 00028788  7C 7F 1B 78 */	mr r31, r3
/* 8002CB2C 0002878C  48 00 92 71 */	bl func_80035D9C
/* 8002CB30 00028790  38 1B FF F0 */	addi r0, r27, -16
/* 8002CB34 00028794  7C 7E 1B 78 */	mr r30, r3
/* 8002CB38 00028798  28 00 00 7B */	cmplwi r0, 0x7b
/* 8002CB3C 0002879C  41 81 12 B4 */	bgt lbl_8002DDF0
/* 8002CB40 000287A0  3C 80 80 41 */	lis r4, lbl_80409D50@ha
/* 8002CB44 000287A4  54 00 10 3A */	slwi r0, r0, 2
/* 8002CB48 000287A8  38 84 9D 50 */	addi r4, r4, lbl_80409D50@l
/* 8002CB4C 000287AC  7C 84 00 2E */	lwzx r4, r4, r0
/* 8002CB50 000287B0  7C 89 03 A6 */	mtctr r4
/* 8002CB54 000287B4  4E 80 04 20 */	bctr
/* 8002CB58 000287B8  48 00 92 E1 */	bl func_80035E38
/* 8002CB5C 000287BC  38 00 00 01 */	li r0, 1
/* 8002CB60 000287C0  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CB64 000287C4  38 60 00 01 */	li r3, 1
/* 8002CB68 000287C8  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CB6C 000287CC  48 00 12 88 */	b lbl_8002DDF4
/* 8002CB70 000287D0  48 00 92 D9 */	bl func_80035E48
/* 8002CB74 000287D4  38 00 00 01 */	li r0, 1
/* 8002CB78 000287D8  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CB7C 000287DC  38 60 00 01 */	li r3, 1
/* 8002CB80 000287E0  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CB84 000287E4  48 00 12 70 */	b lbl_8002DDF4
/* 8002CB88 000287E8  48 00 92 D1 */	bl func_80035E58
/* 8002CB8C 000287EC  38 00 00 01 */	li r0, 1
/* 8002CB90 000287F0  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CB94 000287F4  38 60 00 01 */	li r3, 1
/* 8002CB98 000287F8  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CB9C 000287FC  48 00 12 58 */	b lbl_8002DDF4
/* 8002CBA0 00028800  48 00 92 C9 */	bl func_80035E68
/* 8002CBA4 00028804  38 00 00 01 */	li r0, 1
/* 8002CBA8 00028808  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CBAC 0002880C  38 60 00 01 */	li r3, 1
/* 8002CBB0 00028810  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CBB4 00028814  48 00 12 40 */	b lbl_8002DDF4
/* 8002CBB8 00028818  48 00 92 C1 */	bl func_80035E78
/* 8002CBBC 0002881C  38 00 00 01 */	li r0, 1
/* 8002CBC0 00028820  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CBC4 00028824  38 60 00 01 */	li r3, 1
/* 8002CBC8 00028828  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CBCC 0002882C  48 00 12 28 */	b lbl_8002DDF4
/* 8002CBD0 00028830  48 00 92 B9 */	bl func_80035E88
/* 8002CBD4 00028834  38 00 00 01 */	li r0, 1
/* 8002CBD8 00028838  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CBDC 0002883C  38 60 00 01 */	li r3, 1
/* 8002CBE0 00028840  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CBE4 00028844  48 00 12 10 */	b lbl_8002DDF4
/* 8002CBE8 00028848  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 8002CBEC 0002884C  48 1F 9C 51 */	bl func_8022683C
/* 8002CBF0 00028850  38 00 00 01 */	li r0, 1
/* 8002CBF4 00028854  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CBF8 00028858  38 60 00 01 */	li r3, 1
/* 8002CBFC 0002885C  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC00 00028860  48 00 11 F4 */	b lbl_8002DDF4
/* 8002CC04 00028864  48 00 92 9D */	bl func_80035EA0
/* 8002CC08 00028868  38 00 00 01 */	li r0, 1
/* 8002CC0C 0002886C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CC10 00028870  38 60 00 01 */	li r3, 1
/* 8002CC14 00028874  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC18 00028878  48 00 11 DC */	b lbl_8002DDF4
/* 8002CC1C 0002887C  48 00 92 BD */	bl func_80035ED8
/* 8002CC20 00028880  38 00 00 01 */	li r0, 1
/* 8002CC24 00028884  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CC28 00028888  38 60 00 01 */	li r3, 1
/* 8002CC2C 0002888C  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC30 00028890  48 00 11 C4 */	b lbl_8002DDF4
/* 8002CC34 00028894  48 00 92 75 */	bl func_80035EA8
/* 8002CC38 00028898  38 00 00 01 */	li r0, 1
/* 8002CC3C 0002889C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CC40 000288A0  38 60 00 01 */	li r3, 1
/* 8002CC44 000288A4  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC48 000288A8  48 00 11 AC */	b lbl_8002DDF4
/* 8002CC4C 000288AC  48 00 92 B1 */	bl func_80035EFC
/* 8002CC50 000288B0  38 00 00 01 */	li r0, 1
/* 8002CC54 000288B4  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CC58 000288B8  38 60 00 01 */	li r3, 1
/* 8002CC5C 000288BC  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC60 000288C0  48 00 11 94 */	b lbl_8002DDF4
/* 8002CC64 000288C4  48 00 92 B1 */	bl func_80035F14
/* 8002CC68 000288C8  38 00 00 01 */	li r0, 1
/* 8002CC6C 000288CC  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CC70 000288D0  38 60 00 01 */	li r3, 1
/* 8002CC74 000288D4  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC78 000288D8  48 00 11 7C */	b lbl_8002DDF4
/* 8002CC7C 000288DC  48 00 92 B1 */	bl func_80035F2C
/* 8002CC80 000288E0  38 00 00 01 */	li r0, 1
/* 8002CC84 000288E4  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CC88 000288E8  38 60 00 01 */	li r3, 1
/* 8002CC8C 000288EC  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CC90 000288F0  48 00 11 64 */	b lbl_8002DDF4
/* 8002CC94 000288F4  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002CC98 000288F8  2C 00 00 01 */	cmpwi r0, 1
/* 8002CC9C 000288FC  40 82 00 0C */	bne lbl_8002CCA8
/* 8002CCA0 00028900  83 FC 00 0C */	lwz r31, 0xc(r28)
/* 8002CCA4 00028904  48 00 00 2C */	b lbl_8002CCD0
lbl_8002CCA8:
/* 8002CCA8 00028908  2C 00 00 02 */	cmpwi r0, 2
/* 8002CCAC 0002890C  40 82 00 18 */	bne lbl_8002CCC4
/* 8002CCB0 00028910  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002CCB4 00028914  FC 00 00 1E */	fctiwz f0, f0
/* 8002CCB8 00028918  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CCBC 0002891C  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CCC0 00028920  48 00 00 0C */	b lbl_8002CCCC
lbl_8002CCC4:
/* 8002CCC4 00028924  38 7C 00 08 */	addi r3, r28, 8
/* 8002CCC8 00028928  48 20 10 6D */	bl func_8022DD34
lbl_8002CCCC:
/* 8002CCCC 0002892C  7C 7F 1B 78 */	mr r31, r3
lbl_8002CCD0:
/* 8002CCD0 00028930  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002CCD4 00028934  2C 00 00 01 */	cmpwi r0, 1
/* 8002CCD8 00028938  40 82 00 0C */	bne lbl_8002CCE4
/* 8002CCDC 0002893C  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002CCE0 00028940  48 00 00 2C */	b lbl_8002CD0C
lbl_8002CCE4:
/* 8002CCE4 00028944  2C 00 00 02 */	cmpwi r0, 2
/* 8002CCE8 00028948  40 82 00 18 */	bne lbl_8002CD00
/* 8002CCEC 0002894C  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002CCF0 00028950  FC 00 00 1E */	fctiwz f0, f0
/* 8002CCF4 00028954  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CCF8 00028958  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CCFC 0002895C  48 00 00 0C */	b lbl_8002CD08
lbl_8002CD00:
/* 8002CD00 00028960  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002CD04 00028964  48 20 10 31 */	bl func_8022DD34
lbl_8002CD08:
/* 8002CD08 00028968  7C 65 1B 78 */	mr r5, r3
lbl_8002CD0C:
/* 8002CD0C 0002896C  7F C3 F3 78 */	mr r3, r30
/* 8002CD10 00028970  7F E4 FB 78 */	mr r4, r31
/* 8002CD14 00028974  48 00 94 09 */	bl func_8003611C
/* 8002CD18 00028978  38 00 00 01 */	li r0, 1
/* 8002CD1C 0002897C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CD20 00028980  38 60 00 01 */	li r3, 1
/* 8002CD24 00028984  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CD28 00028988  48 00 10 CC */	b lbl_8002DDF4
/* 8002CD2C 0002898C  48 00 93 A5 */	bl func_800360D0
/* 8002CD30 00028990  38 00 00 01 */	li r0, 1
/* 8002CD34 00028994  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CD38 00028998  38 60 00 01 */	li r3, 1
/* 8002CD3C 0002899C  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CD40 000289A0  48 00 10 B4 */	b lbl_8002DDF4
/* 8002CD44 000289A4  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002CD48 000289A8  2C 00 00 01 */	cmpwi r0, 1
/* 8002CD4C 000289AC  40 82 00 0C */	bne lbl_8002CD58
/* 8002CD50 000289B0  83 FC 00 0C */	lwz r31, 0xc(r28)
/* 8002CD54 000289B4  48 00 00 2C */	b lbl_8002CD80
lbl_8002CD58:
/* 8002CD58 000289B8  2C 00 00 02 */	cmpwi r0, 2
/* 8002CD5C 000289BC  40 82 00 18 */	bne lbl_8002CD74
/* 8002CD60 000289C0  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002CD64 000289C4  FC 00 00 1E */	fctiwz f0, f0
/* 8002CD68 000289C8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CD6C 000289CC  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CD70 000289D0  48 00 00 0C */	b lbl_8002CD7C
lbl_8002CD74:
/* 8002CD74 000289D4  38 7C 00 08 */	addi r3, r28, 8
/* 8002CD78 000289D8  48 20 0F BD */	bl func_8022DD34
lbl_8002CD7C:
/* 8002CD7C 000289DC  7C 7F 1B 78 */	mr r31, r3
lbl_8002CD80:
/* 8002CD80 000289E0  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002CD84 000289E4  2C 00 00 01 */	cmpwi r0, 1
/* 8002CD88 000289E8  40 82 00 0C */	bne lbl_8002CD94
/* 8002CD8C 000289EC  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002CD90 000289F0  48 00 00 2C */	b lbl_8002CDBC
lbl_8002CD94:
/* 8002CD94 000289F4  2C 00 00 02 */	cmpwi r0, 2
/* 8002CD98 000289F8  40 82 00 18 */	bne lbl_8002CDB0
/* 8002CD9C 000289FC  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002CDA0 00028A00  FC 00 00 1E */	fctiwz f0, f0
/* 8002CDA4 00028A04  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CDA8 00028A08  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CDAC 00028A0C  48 00 00 0C */	b lbl_8002CDB8
lbl_8002CDB0:
/* 8002CDB0 00028A10  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002CDB4 00028A14  48 20 0F 81 */	bl func_8022DD34
lbl_8002CDB8:
/* 8002CDB8 00028A18  7C 65 1B 78 */	mr r5, r3
lbl_8002CDBC:
/* 8002CDBC 00028A1C  7F C3 F3 78 */	mr r3, r30
/* 8002CDC0 00028A20  7F E4 FB 78 */	mr r4, r31
/* 8002CDC4 00028A24  48 00 96 55 */	bl func_80036418
/* 8002CDC8 00028A28  38 00 00 01 */	li r0, 1
/* 8002CDCC 00028A2C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CDD0 00028A30  38 60 00 01 */	li r3, 1
/* 8002CDD4 00028A34  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CDD8 00028A38  48 00 10 1C */	b lbl_8002DDF4
/* 8002CDDC 00028A3C  48 00 91 8D */	bl func_80035F68
/* 8002CDE0 00028A40  38 00 00 01 */	li r0, 1
/* 8002CDE4 00028A44  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CDE8 00028A48  38 60 00 01 */	li r3, 1
/* 8002CDEC 00028A4C  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CDF0 00028A50  48 00 10 04 */	b lbl_8002DDF4
/* 8002CDF4 00028A54  48 00 91 5D */	bl func_80035F50
/* 8002CDF8 00028A58  38 00 00 01 */	li r0, 1
/* 8002CDFC 00028A5C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CE00 00028A60  38 60 00 01 */	li r3, 1
/* 8002CE04 00028A64  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CE08 00028A68  48 00 0F EC */	b lbl_8002DDF4
/* 8002CE0C 00028A6C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002CE10 00028A70  2C 00 00 01 */	cmpwi r0, 1
/* 8002CE14 00028A74  40 82 00 0C */	bne lbl_8002CE20
/* 8002CE18 00028A78  83 FC 00 0C */	lwz r31, 0xc(r28)
/* 8002CE1C 00028A7C  48 00 00 2C */	b lbl_8002CE48
lbl_8002CE20:
/* 8002CE20 00028A80  2C 00 00 02 */	cmpwi r0, 2
/* 8002CE24 00028A84  40 82 00 18 */	bne lbl_8002CE3C
/* 8002CE28 00028A88  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002CE2C 00028A8C  FC 00 00 1E */	fctiwz f0, f0
/* 8002CE30 00028A90  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CE34 00028A94  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CE38 00028A98  48 00 00 0C */	b lbl_8002CE44
lbl_8002CE3C:
/* 8002CE3C 00028A9C  38 7C 00 08 */	addi r3, r28, 8
/* 8002CE40 00028AA0  48 20 0E F5 */	bl func_8022DD34
lbl_8002CE44:
/* 8002CE44 00028AA4  7C 7F 1B 78 */	mr r31, r3
lbl_8002CE48:
/* 8002CE48 00028AA8  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002CE4C 00028AAC  2C 00 00 01 */	cmpwi r0, 1
/* 8002CE50 00028AB0  40 82 00 0C */	bne lbl_8002CE5C
/* 8002CE54 00028AB4  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002CE58 00028AB8  48 00 00 2C */	b lbl_8002CE84
lbl_8002CE5C:
/* 8002CE5C 00028ABC  2C 00 00 02 */	cmpwi r0, 2
/* 8002CE60 00028AC0  40 82 00 18 */	bne lbl_8002CE78
/* 8002CE64 00028AC4  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002CE68 00028AC8  FC 00 00 1E */	fctiwz f0, f0
/* 8002CE6C 00028ACC  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CE70 00028AD0  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CE74 00028AD4  48 00 00 0C */	b lbl_8002CE80
lbl_8002CE78:
/* 8002CE78 00028AD8  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002CE7C 00028ADC  48 20 0E B9 */	bl func_8022DD34
lbl_8002CE80:
/* 8002CE80 00028AE0  7C 65 1B 78 */	mr r5, r3
lbl_8002CE84:
/* 8002CE84 00028AE4  7F C3 F3 78 */	mr r3, r30
/* 8002CE88 00028AE8  7F E4 FB 78 */	mr r4, r31
/* 8002CE8C 00028AEC  38 C0 00 00 */	li r6, 0
/* 8002CE90 00028AF0  48 00 96 C5 */	bl func_80036554
/* 8002CE94 00028AF4  38 00 00 01 */	li r0, 1
/* 8002CE98 00028AF8  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CE9C 00028AFC  38 60 00 01 */	li r3, 1
/* 8002CEA0 00028B00  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CEA4 00028B04  48 00 0F 50 */	b lbl_8002DDF4
/* 8002CEA8 00028B08  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002CEAC 00028B0C  2C 00 00 01 */	cmpwi r0, 1
/* 8002CEB0 00028B10  40 82 00 0C */	bne lbl_8002CEBC
/* 8002CEB4 00028B14  83 FC 00 0C */	lwz r31, 0xc(r28)
/* 8002CEB8 00028B18  48 00 00 2C */	b lbl_8002CEE4
lbl_8002CEBC:
/* 8002CEBC 00028B1C  2C 00 00 02 */	cmpwi r0, 2
/* 8002CEC0 00028B20  40 82 00 18 */	bne lbl_8002CED8
/* 8002CEC4 00028B24  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002CEC8 00028B28  FC 00 00 1E */	fctiwz f0, f0
/* 8002CECC 00028B2C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CED0 00028B30  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CED4 00028B34  48 00 00 0C */	b lbl_8002CEE0
lbl_8002CED8:
/* 8002CED8 00028B38  38 7C 00 08 */	addi r3, r28, 8
/* 8002CEDC 00028B3C  48 20 0E 59 */	bl func_8022DD34
lbl_8002CEE0:
/* 8002CEE0 00028B40  7C 7F 1B 78 */	mr r31, r3
lbl_8002CEE4:
/* 8002CEE4 00028B44  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002CEE8 00028B48  2C 00 00 01 */	cmpwi r0, 1
/* 8002CEEC 00028B4C  40 82 00 0C */	bne lbl_8002CEF8
/* 8002CEF0 00028B50  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002CEF4 00028B54  48 00 00 2C */	b lbl_8002CF20
lbl_8002CEF8:
/* 8002CEF8 00028B58  2C 00 00 02 */	cmpwi r0, 2
/* 8002CEFC 00028B5C  40 82 00 18 */	bne lbl_8002CF14
/* 8002CF00 00028B60  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002CF04 00028B64  FC 00 00 1E */	fctiwz f0, f0
/* 8002CF08 00028B68  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CF0C 00028B6C  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CF10 00028B70  48 00 00 0C */	b lbl_8002CF1C
lbl_8002CF14:
/* 8002CF14 00028B74  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002CF18 00028B78  48 20 0E 1D */	bl func_8022DD34
lbl_8002CF1C:
/* 8002CF1C 00028B7C  7C 65 1B 78 */	mr r5, r3
lbl_8002CF20:
/* 8002CF20 00028B80  7F C3 F3 78 */	mr r3, r30
/* 8002CF24 00028B84  7F E4 FB 78 */	mr r4, r31
/* 8002CF28 00028B88  38 C0 00 01 */	li r6, 1
/* 8002CF2C 00028B8C  48 00 96 29 */	bl func_80036554
/* 8002CF30 00028B90  38 00 00 01 */	li r0, 1
/* 8002CF34 00028B94  90 7D 00 04 */	stw r3, 4(r29)
/* 8002CF38 00028B98  38 60 00 01 */	li r3, 1
/* 8002CF3C 00028B9C  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002CF40 00028BA0  48 00 0E B4 */	b lbl_8002DDF4
/* 8002CF44 00028BA4  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002CF48 00028BA8  2C 00 00 01 */	cmpwi r0, 1
/* 8002CF4C 00028BAC  40 82 00 0C */	bne lbl_8002CF58
/* 8002CF50 00028BB0  83 FC 00 0C */	lwz r31, 0xc(r28)
/* 8002CF54 00028BB4  48 00 00 2C */	b lbl_8002CF80
lbl_8002CF58:
/* 8002CF58 00028BB8  2C 00 00 02 */	cmpwi r0, 2
/* 8002CF5C 00028BBC  40 82 00 18 */	bne lbl_8002CF74
/* 8002CF60 00028BC0  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002CF64 00028BC4  FC 00 00 1E */	fctiwz f0, f0
/* 8002CF68 00028BC8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CF6C 00028BCC  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CF70 00028BD0  48 00 00 0C */	b lbl_8002CF7C
lbl_8002CF74:
/* 8002CF74 00028BD4  38 7C 00 08 */	addi r3, r28, 8
/* 8002CF78 00028BD8  48 20 0D BD */	bl func_8022DD34
lbl_8002CF7C:
/* 8002CF7C 00028BDC  7C 7F 1B 78 */	mr r31, r3
lbl_8002CF80:
/* 8002CF80 00028BE0  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002CF84 00028BE4  2C 00 00 01 */	cmpwi r0, 1
/* 8002CF88 00028BE8  40 82 00 0C */	bne lbl_8002CF94
/* 8002CF8C 00028BEC  83 7C 00 14 */	lwz r27, 0x14(r28)
/* 8002CF90 00028BF0  48 00 00 2C */	b lbl_8002CFBC
lbl_8002CF94:
/* 8002CF94 00028BF4  2C 00 00 02 */	cmpwi r0, 2
/* 8002CF98 00028BF8  40 82 00 18 */	bne lbl_8002CFB0
/* 8002CF9C 00028BFC  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002CFA0 00028C00  FC 00 00 1E */	fctiwz f0, f0
/* 8002CFA4 00028C04  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CFA8 00028C08  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CFAC 00028C0C  48 00 00 0C */	b lbl_8002CFB8
lbl_8002CFB0:
/* 8002CFB0 00028C10  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002CFB4 00028C14  48 20 0D 81 */	bl func_8022DD34
lbl_8002CFB8:
/* 8002CFB8 00028C18  7C 7B 1B 78 */	mr r27, r3
lbl_8002CFBC:
/* 8002CFBC 00028C1C  A8 1C 00 18 */	lha r0, 0x18(r28)
/* 8002CFC0 00028C20  2C 00 00 01 */	cmpwi r0, 1
/* 8002CFC4 00028C24  40 82 00 0C */	bne lbl_8002CFD0
/* 8002CFC8 00028C28  80 DC 00 1C */	lwz r6, 0x1c(r28)
/* 8002CFCC 00028C2C  48 00 00 2C */	b lbl_8002CFF8
lbl_8002CFD0:
/* 8002CFD0 00028C30  2C 00 00 02 */	cmpwi r0, 2
/* 8002CFD4 00028C34  40 82 00 18 */	bne lbl_8002CFEC
/* 8002CFD8 00028C38  C0 1C 00 1C */	lfs f0, 0x1c(r28)
/* 8002CFDC 00028C3C  FC 00 00 1E */	fctiwz f0, f0
/* 8002CFE0 00028C40  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002CFE4 00028C44  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002CFE8 00028C48  48 00 00 0C */	b lbl_8002CFF4
lbl_8002CFEC:
/* 8002CFEC 00028C4C  38 7C 00 18 */	addi r3, r28, 0x18
/* 8002CFF0 00028C50  48 20 0D 45 */	bl func_8022DD34
lbl_8002CFF4:
/* 8002CFF4 00028C54  7C 66 1B 78 */	mr r6, r3
lbl_8002CFF8:
/* 8002CFF8 00028C58  7F C3 F3 78 */	mr r3, r30
/* 8002CFFC 00028C5C  7F E4 FB 78 */	mr r4, r31
/* 8002D000 00028C60  7F 65 DB 78 */	mr r5, r27
/* 8002D004 00028C64  48 00 98 41 */	bl func_80036844
/* 8002D008 00028C68  38 00 00 01 */	li r0, 1
/* 8002D00C 00028C6C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002D010 00028C70  38 60 00 01 */	li r3, 1
/* 8002D014 00028C74  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D018 00028C78  48 00 0D DC */	b lbl_8002DDF4
/* 8002D01C 00028C7C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D020 00028C80  2C 00 00 01 */	cmpwi r0, 1
/* 8002D024 00028C84  40 82 00 0C */	bne lbl_8002D030
/* 8002D028 00028C88  80 7C 00 0C */	lwz r3, 0xc(r28)
/* 8002D02C 00028C8C  48 00 00 28 */	b lbl_8002D054
lbl_8002D030:
/* 8002D030 00028C90  2C 00 00 02 */	cmpwi r0, 2
/* 8002D034 00028C94  40 82 00 18 */	bne lbl_8002D04C
/* 8002D038 00028C98  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D03C 00028C9C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D040 00028CA0  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D044 00028CA4  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D048 00028CA8  48 00 00 0C */	b lbl_8002D054
lbl_8002D04C:
/* 8002D04C 00028CAC  38 7C 00 08 */	addi r3, r28, 8
/* 8002D050 00028CB0  48 20 0C E5 */	bl func_8022DD34
lbl_8002D054:
/* 8002D054 00028CB4  38 81 00 14 */	addi r4, r1, 0x14
/* 8002D058 00028CB8  38 A1 00 08 */	addi r5, r1, 8
/* 8002D05C 00028CBC  48 00 97 F1 */	bl func_8003684C
/* 8002D060 00028CC0  80 9A 09 14 */	lwz r4, 0x914(r26)
/* 8002D064 00028CC4  38 00 00 04 */	li r0, 4
/* 8002D068 00028CC8  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 8002D06C 00028CCC  38 60 00 01 */	li r3, 1
/* 8002D070 00028CD0  D0 04 01 38 */	stfs f0, 0x138(r4)
/* 8002D074 00028CD4  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 8002D078 00028CD8  D0 04 01 3C */	stfs f0, 0x13c(r4)
/* 8002D07C 00028CDC  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8002D080 00028CE0  D0 04 01 40 */	stfs f0, 0x140(r4)
/* 8002D084 00028CE4  80 BA 09 14 */	lwz r5, 0x914(r26)
/* 8002D088 00028CE8  38 85 01 38 */	addi r4, r5, 0x138
/* 8002D08C 00028CEC  90 85 00 14 */	stw r4, 0x14(r5)
/* 8002D090 00028CF0  80 9A 09 14 */	lwz r4, 0x914(r26)
/* 8002D094 00028CF4  B0 04 00 10 */	sth r0, 0x10(r4)
/* 8002D098 00028CF8  48 00 0D 5C */	b lbl_8002DDF4
/* 8002D09C 00028CFC  C0 02 81 48 */	lfs f0, lbl_80640748-_SDA2_BASE_(r2)
/* 8002D0A0 00028D00  38 00 00 02 */	li r0, 2
/* 8002D0A4 00028D04  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D0A8 00028D08  D0 1D 00 04 */	stfs f0, 4(r29)
/* 8002D0AC 00028D0C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D0B0 00028D10  2C 00 00 01 */	cmpwi r0, 1
/* 8002D0B4 00028D14  40 82 00 0C */	bne lbl_8002D0C0
/* 8002D0B8 00028D18  80 7C 00 0C */	lwz r3, 0xc(r28)
/* 8002D0BC 00028D1C  48 00 00 28 */	b lbl_8002D0E4
lbl_8002D0C0:
/* 8002D0C0 00028D20  2C 00 00 02 */	cmpwi r0, 2
/* 8002D0C4 00028D24  40 82 00 18 */	bne lbl_8002D0DC
/* 8002D0C8 00028D28  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D0CC 00028D2C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D0D0 00028D30  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D0D4 00028D34  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D0D8 00028D38  48 00 00 0C */	b lbl_8002D0E4
lbl_8002D0DC:
/* 8002D0DC 00028D3C  38 7C 00 08 */	addi r3, r28, 8
/* 8002D0E0 00028D40  48 20 0C 55 */	bl func_8022DD34
lbl_8002D0E4:
/* 8002D0E4 00028D44  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8002D0E8 00028D48  41 82 00 14 */	beq lbl_8002D0FC
/* 8002D0EC 00028D4C  C0 02 81 4C */	lfs f0, lbl_8064074C-_SDA2_BASE_(r2)
/* 8002D0F0 00028D50  38 00 00 02 */	li r0, 2
/* 8002D0F4 00028D54  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D0F8 00028D58  D0 1D 00 04 */	stfs f0, 4(r29)
lbl_8002D0FC:
/* 8002D0FC 00028D5C  38 60 00 01 */	li r3, 1
/* 8002D100 00028D60  48 00 0C F4 */	b lbl_8002DDF4
/* 8002D104 00028D64  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D108 00028D68  2C 00 00 01 */	cmpwi r0, 1
/* 8002D10C 00028D6C  40 82 00 0C */	bne lbl_8002D118
/* 8002D110 00028D70  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D114 00028D74  48 00 00 2C */	b lbl_8002D140
lbl_8002D118:
/* 8002D118 00028D78  2C 00 00 02 */	cmpwi r0, 2
/* 8002D11C 00028D7C  40 82 00 18 */	bne lbl_8002D134
/* 8002D120 00028D80  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D124 00028D84  FC 00 00 1E */	fctiwz f0, f0
/* 8002D128 00028D88  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D12C 00028D8C  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D130 00028D90  48 00 00 0C */	b lbl_8002D13C
lbl_8002D134:
/* 8002D134 00028D94  38 7C 00 08 */	addi r3, r28, 8
/* 8002D138 00028D98  48 20 0B FD */	bl func_8022DD34
lbl_8002D13C:
/* 8002D13C 00028D9C  7C 64 1B 78 */	mr r4, r3
lbl_8002D140:
/* 8002D140 00028DA0  7F C3 F3 78 */	mr r3, r30
/* 8002D144 00028DA4  48 00 98 49 */	bl func_8003698C
/* 8002D148 00028DA8  38 00 00 01 */	li r0, 1
/* 8002D14C 00028DAC  90 7D 00 04 */	stw r3, 4(r29)
/* 8002D150 00028DB0  38 60 00 01 */	li r3, 1
/* 8002D154 00028DB4  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D158 00028DB8  48 00 0C 9C */	b lbl_8002DDF4
/* 8002D15C 00028DBC  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D160 00028DC0  2C 00 00 01 */	cmpwi r0, 1
/* 8002D164 00028DC4  40 82 00 0C */	bne lbl_8002D170
/* 8002D168 00028DC8  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002D16C 00028DCC  48 00 00 2C */	b lbl_8002D198
lbl_8002D170:
/* 8002D170 00028DD0  2C 00 00 02 */	cmpwi r0, 2
/* 8002D174 00028DD4  40 82 00 18 */	bne lbl_8002D18C
/* 8002D178 00028DD8  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D17C 00028DDC  FC 00 00 1E */	fctiwz f0, f0
/* 8002D180 00028DE0  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D184 00028DE4  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D188 00028DE8  48 00 00 0C */	b lbl_8002D194
lbl_8002D18C:
/* 8002D18C 00028DEC  38 7C 00 08 */	addi r3, r28, 8
/* 8002D190 00028DF0  48 20 0B A5 */	bl func_8022DD34
lbl_8002D194:
/* 8002D194 00028DF4  7C 7B 1B 78 */	mr r27, r3
lbl_8002D198:
/* 8002D198 00028DF8  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002D19C 00028DFC  2C 00 00 01 */	cmpwi r0, 1
/* 8002D1A0 00028E00  40 82 00 0C */	bne lbl_8002D1AC
/* 8002D1A4 00028E04  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002D1A8 00028E08  48 00 00 2C */	b lbl_8002D1D4
lbl_8002D1AC:
/* 8002D1AC 00028E0C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D1B0 00028E10  40 82 00 18 */	bne lbl_8002D1C8
/* 8002D1B4 00028E14  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002D1B8 00028E18  FC 00 00 1E */	fctiwz f0, f0
/* 8002D1BC 00028E1C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D1C0 00028E20  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D1C4 00028E24  48 00 00 0C */	b lbl_8002D1D0
lbl_8002D1C8:
/* 8002D1C8 00028E28  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002D1CC 00028E2C  48 20 0B 69 */	bl func_8022DD34
lbl_8002D1D0:
/* 8002D1D0 00028E30  7C 65 1B 78 */	mr r5, r3
lbl_8002D1D4:
/* 8002D1D4 00028E34  7F C3 F3 78 */	mr r3, r30
/* 8002D1D8 00028E38  7F 64 DB 78 */	mr r4, r27
/* 8002D1DC 00028E3C  48 00 97 E9 */	bl func_800369C4
/* 8002D1E0 00028E40  38 60 00 01 */	li r3, 1
/* 8002D1E4 00028E44  48 00 0C 10 */	b lbl_8002DDF4
/* 8002D1E8 00028E48  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D1EC 00028E4C  2C 00 00 01 */	cmpwi r0, 1
/* 8002D1F0 00028E50  40 82 00 0C */	bne lbl_8002D1FC
/* 8002D1F4 00028E54  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D1F8 00028E58  48 00 00 2C */	b lbl_8002D224
lbl_8002D1FC:
/* 8002D1FC 00028E5C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D200 00028E60  40 82 00 18 */	bne lbl_8002D218
/* 8002D204 00028E64  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D208 00028E68  FC 00 00 1E */	fctiwz f0, f0
/* 8002D20C 00028E6C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D210 00028E70  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D214 00028E74  48 00 00 0C */	b lbl_8002D220
lbl_8002D218:
/* 8002D218 00028E78  38 7C 00 08 */	addi r3, r28, 8
/* 8002D21C 00028E7C  48 20 0B 19 */	bl func_8022DD34
lbl_8002D220:
/* 8002D220 00028E80  7C 64 1B 78 */	mr r4, r3
lbl_8002D224:
/* 8002D224 00028E84  7F C3 F3 78 */	mr r3, r30
/* 8002D228 00028E88  48 00 8C 19 */	bl func_80035E40
/* 8002D22C 00028E8C  38 60 00 01 */	li r3, 1
/* 8002D230 00028E90  48 00 0B C4 */	b lbl_8002DDF4
/* 8002D234 00028E94  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D238 00028E98  2C 00 00 01 */	cmpwi r0, 1
/* 8002D23C 00028E9C  40 82 00 0C */	bne lbl_8002D248
/* 8002D240 00028EA0  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D244 00028EA4  48 00 00 2C */	b lbl_8002D270
lbl_8002D248:
/* 8002D248 00028EA8  2C 00 00 02 */	cmpwi r0, 2
/* 8002D24C 00028EAC  40 82 00 18 */	bne lbl_8002D264
/* 8002D250 00028EB0  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D254 00028EB4  FC 00 00 1E */	fctiwz f0, f0
/* 8002D258 00028EB8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D25C 00028EBC  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D260 00028EC0  48 00 00 0C */	b lbl_8002D26C
lbl_8002D264:
/* 8002D264 00028EC4  38 7C 00 08 */	addi r3, r28, 8
/* 8002D268 00028EC8  48 20 0A CD */	bl func_8022DD34
lbl_8002D26C:
/* 8002D26C 00028ECC  7C 64 1B 78 */	mr r4, r3
lbl_8002D270:
/* 8002D270 00028ED0  7F C3 F3 78 */	mr r3, r30
/* 8002D274 00028ED4  48 00 8B DD */	bl func_80035E50
/* 8002D278 00028ED8  38 60 00 01 */	li r3, 1
/* 8002D27C 00028EDC  48 00 0B 78 */	b lbl_8002DDF4
/* 8002D280 00028EE0  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D284 00028EE4  2C 00 00 01 */	cmpwi r0, 1
/* 8002D288 00028EE8  40 82 00 0C */	bne lbl_8002D294
/* 8002D28C 00028EEC  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D290 00028EF0  48 00 00 2C */	b lbl_8002D2BC
lbl_8002D294:
/* 8002D294 00028EF4  2C 00 00 02 */	cmpwi r0, 2
/* 8002D298 00028EF8  40 82 00 18 */	bne lbl_8002D2B0
/* 8002D29C 00028EFC  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D2A0 00028F00  FC 00 00 1E */	fctiwz f0, f0
/* 8002D2A4 00028F04  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D2A8 00028F08  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D2AC 00028F0C  48 00 00 0C */	b lbl_8002D2B8
lbl_8002D2B0:
/* 8002D2B0 00028F10  38 7C 00 08 */	addi r3, r28, 8
/* 8002D2B4 00028F14  48 20 0A 81 */	bl func_8022DD34
lbl_8002D2B8:
/* 8002D2B8 00028F18  7C 64 1B 78 */	mr r4, r3
lbl_8002D2BC:
/* 8002D2BC 00028F1C  7F C3 F3 78 */	mr r3, r30
/* 8002D2C0 00028F20  48 00 8B A1 */	bl func_80035E60
/* 8002D2C4 00028F24  38 60 00 01 */	li r3, 1
/* 8002D2C8 00028F28  48 00 0B 2C */	b lbl_8002DDF4
/* 8002D2CC 00028F2C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D2D0 00028F30  2C 00 00 01 */	cmpwi r0, 1
/* 8002D2D4 00028F34  40 82 00 0C */	bne lbl_8002D2E0
/* 8002D2D8 00028F38  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D2DC 00028F3C  48 00 00 2C */	b lbl_8002D308
lbl_8002D2E0:
/* 8002D2E0 00028F40  2C 00 00 02 */	cmpwi r0, 2
/* 8002D2E4 00028F44  40 82 00 18 */	bne lbl_8002D2FC
/* 8002D2E8 00028F48  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D2EC 00028F4C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D2F0 00028F50  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D2F4 00028F54  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D2F8 00028F58  48 00 00 0C */	b lbl_8002D304
lbl_8002D2FC:
/* 8002D2FC 00028F5C  38 7C 00 08 */	addi r3, r28, 8
/* 8002D300 00028F60  48 20 0A 35 */	bl func_8022DD34
lbl_8002D304:
/* 8002D304 00028F64  7C 64 1B 78 */	mr r4, r3
lbl_8002D308:
/* 8002D308 00028F68  7F C3 F3 78 */	mr r3, r30
/* 8002D30C 00028F6C  48 00 8B 65 */	bl func_80035E70
/* 8002D310 00028F70  38 60 00 01 */	li r3, 1
/* 8002D314 00028F74  48 00 0A E0 */	b lbl_8002DDF4
/* 8002D318 00028F78  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D31C 00028F7C  2C 00 00 01 */	cmpwi r0, 1
/* 8002D320 00028F80  40 82 00 0C */	bne lbl_8002D32C
/* 8002D324 00028F84  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D328 00028F88  48 00 00 2C */	b lbl_8002D354
lbl_8002D32C:
/* 8002D32C 00028F8C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D330 00028F90  40 82 00 18 */	bne lbl_8002D348
/* 8002D334 00028F94  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D338 00028F98  FC 00 00 1E */	fctiwz f0, f0
/* 8002D33C 00028F9C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D340 00028FA0  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D344 00028FA4  48 00 00 0C */	b lbl_8002D350
lbl_8002D348:
/* 8002D348 00028FA8  38 7C 00 08 */	addi r3, r28, 8
/* 8002D34C 00028FAC  48 20 09 E9 */	bl func_8022DD34
lbl_8002D350:
/* 8002D350 00028FB0  7C 64 1B 78 */	mr r4, r3
lbl_8002D354:
/* 8002D354 00028FB4  7F C3 F3 78 */	mr r3, r30
/* 8002D358 00028FB8  48 00 8B 29 */	bl func_80035E80
/* 8002D35C 00028FBC  38 60 00 01 */	li r3, 1
/* 8002D360 00028FC0  48 00 0A 94 */	b lbl_8002DDF4
/* 8002D364 00028FC4  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D368 00028FC8  2C 00 00 01 */	cmpwi r0, 1
/* 8002D36C 00028FCC  40 82 00 0C */	bne lbl_8002D378
/* 8002D370 00028FD0  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D374 00028FD4  48 00 00 2C */	b lbl_8002D3A0
lbl_8002D378:
/* 8002D378 00028FD8  2C 00 00 02 */	cmpwi r0, 2
/* 8002D37C 00028FDC  40 82 00 18 */	bne lbl_8002D394
/* 8002D380 00028FE0  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D384 00028FE4  FC 00 00 1E */	fctiwz f0, f0
/* 8002D388 00028FE8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D38C 00028FEC  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D390 00028FF0  48 00 00 0C */	b lbl_8002D39C
lbl_8002D394:
/* 8002D394 00028FF4  38 7C 00 08 */	addi r3, r28, 8
/* 8002D398 00028FF8  48 20 09 9D */	bl func_8022DD34
lbl_8002D39C:
/* 8002D39C 00028FFC  7C 64 1B 78 */	mr r4, r3
lbl_8002D3A0:
/* 8002D3A0 00029000  7F C3 F3 78 */	mr r3, r30
/* 8002D3A4 00029004  48 00 8A ED */	bl func_80035E90
/* 8002D3A8 00029008  38 60 00 01 */	li r3, 1
/* 8002D3AC 0002900C  48 00 0A 48 */	b lbl_8002DDF4
/* 8002D3B0 00029010  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 8002D3B4 00029014  48 1F 94 89 */	bl func_8022683C
/* 8002D3B8 00029018  38 00 00 01 */	li r0, 1
/* 8002D3BC 0002901C  90 7D 00 04 */	stw r3, 4(r29)
/* 8002D3C0 00029020  38 60 00 01 */	li r3, 1
/* 8002D3C4 00029024  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D3C8 00029028  48 00 0A 2C */	b lbl_8002DDF4
/* 8002D3CC 0002902C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D3D0 00029030  2C 00 00 01 */	cmpwi r0, 1
/* 8002D3D4 00029034  40 82 00 0C */	bne lbl_8002D3E0
/* 8002D3D8 00029038  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D3DC 0002903C  48 00 00 2C */	b lbl_8002D408
lbl_8002D3E0:
/* 8002D3E0 00029040  2C 00 00 02 */	cmpwi r0, 2
/* 8002D3E4 00029044  40 82 00 18 */	bne lbl_8002D3FC
/* 8002D3E8 00029048  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D3EC 0002904C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D3F0 00029050  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D3F4 00029054  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D3F8 00029058  48 00 00 0C */	b lbl_8002D404
lbl_8002D3FC:
/* 8002D3FC 0002905C  38 7C 00 08 */	addi r3, r28, 8
/* 8002D400 00029060  48 20 09 35 */	bl func_8022DD34
lbl_8002D404:
/* 8002D404 00029064  7C 64 1B 78 */	mr r4, r3
lbl_8002D408:
/* 8002D408 00029068  7F C3 F3 78 */	mr r3, r30
/* 8002D40C 0002906C  48 00 8A D9 */	bl func_80035EE4
/* 8002D410 00029070  38 60 00 01 */	li r3, 1
/* 8002D414 00029074  48 00 09 E0 */	b lbl_8002DDF4
/* 8002D418 00029078  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D41C 0002907C  2C 00 00 01 */	cmpwi r0, 1
/* 8002D420 00029080  40 82 00 0C */	bne lbl_8002D42C
/* 8002D424 00029084  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D428 00029088  48 00 00 2C */	b lbl_8002D454
lbl_8002D42C:
/* 8002D42C 0002908C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D430 00029090  40 82 00 18 */	bne lbl_8002D448
/* 8002D434 00029094  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D438 00029098  FC 00 00 1E */	fctiwz f0, f0
/* 8002D43C 0002909C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D440 000290A0  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D444 000290A4  48 00 00 0C */	b lbl_8002D450
lbl_8002D448:
/* 8002D448 000290A8  38 7C 00 08 */	addi r3, r28, 8
/* 8002D44C 000290AC  48 20 08 E9 */	bl func_8022DD34
lbl_8002D450:
/* 8002D450 000290B0  7C 64 1B 78 */	mr r4, r3
lbl_8002D454:
/* 8002D454 000290B4  7F C3 F3 78 */	mr r3, r30
/* 8002D458 000290B8  48 00 8A 5D */	bl func_80035EB4
/* 8002D45C 000290BC  38 60 00 01 */	li r3, 1
/* 8002D460 000290C0  48 00 09 94 */	b lbl_8002DDF4
/* 8002D464 000290C4  48 00 8A 5D */	bl func_80035EC0
/* 8002D468 000290C8  38 00 00 01 */	li r0, 1
/* 8002D46C 000290CC  90 7D 00 04 */	stw r3, 4(r29)
/* 8002D470 000290D0  38 60 00 01 */	li r3, 1
/* 8002D474 000290D4  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D478 000290D8  48 00 09 7C */	b lbl_8002DDF4
/* 8002D47C 000290DC  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D480 000290E0  2C 00 00 01 */	cmpwi r0, 1
/* 8002D484 000290E4  40 82 00 0C */	bne lbl_8002D490
/* 8002D488 000290E8  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D48C 000290EC  48 00 00 2C */	b lbl_8002D4B8
lbl_8002D490:
/* 8002D490 000290F0  2C 00 00 02 */	cmpwi r0, 2
/* 8002D494 000290F4  40 82 00 18 */	bne lbl_8002D4AC
/* 8002D498 000290F8  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D49C 000290FC  FC 00 00 1E */	fctiwz f0, f0
/* 8002D4A0 00029100  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D4A4 00029104  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D4A8 00029108  48 00 00 0C */	b lbl_8002D4B4
lbl_8002D4AC:
/* 8002D4AC 0002910C  38 7C 00 08 */	addi r3, r28, 8
/* 8002D4B0 00029110  48 20 08 85 */	bl func_8022DD34
lbl_8002D4B4:
/* 8002D4B4 00029114  7C 64 1B 78 */	mr r4, r3
lbl_8002D4B8:
/* 8002D4B8 00029118  7F C3 F3 78 */	mr r3, r30
/* 8002D4BC 0002911C  48 00 8A 11 */	bl func_80035ECC
/* 8002D4C0 00029120  38 60 00 01 */	li r3, 1
/* 8002D4C4 00029124  48 00 09 30 */	b lbl_8002DDF4
/* 8002D4C8 00029128  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D4CC 0002912C  2C 00 00 01 */	cmpwi r0, 1
/* 8002D4D0 00029130  40 82 00 0C */	bne lbl_8002D4DC
/* 8002D4D4 00029134  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D4D8 00029138  48 00 00 2C */	b lbl_8002D504
lbl_8002D4DC:
/* 8002D4DC 0002913C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D4E0 00029140  40 82 00 18 */	bne lbl_8002D4F8
/* 8002D4E4 00029144  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D4E8 00029148  FC 00 00 1E */	fctiwz f0, f0
/* 8002D4EC 0002914C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D4F0 00029150  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D4F4 00029154  48 00 00 0C */	b lbl_8002D500
lbl_8002D4F8:
/* 8002D4F8 00029158  38 7C 00 08 */	addi r3, r28, 8
/* 8002D4FC 0002915C  48 20 08 39 */	bl func_8022DD34
lbl_8002D500:
/* 8002D500 00029160  7C 64 1B 78 */	mr r4, r3
lbl_8002D504:
/* 8002D504 00029164  7F C3 F3 78 */	mr r3, r30
/* 8002D508 00029168  48 00 8A 19 */	bl func_80035F20
/* 8002D50C 0002916C  38 60 00 01 */	li r3, 1
/* 8002D510 00029170  48 00 08 E4 */	b lbl_8002DDF4
/* 8002D514 00029174  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D518 00029178  2C 00 00 01 */	cmpwi r0, 1
/* 8002D51C 0002917C  40 82 00 0C */	bne lbl_8002D528
/* 8002D520 00029180  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D524 00029184  48 00 00 2C */	b lbl_8002D550
lbl_8002D528:
/* 8002D528 00029188  2C 00 00 02 */	cmpwi r0, 2
/* 8002D52C 0002918C  40 82 00 18 */	bne lbl_8002D544
/* 8002D530 00029190  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D534 00029194  FC 00 00 1E */	fctiwz f0, f0
/* 8002D538 00029198  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D53C 0002919C  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D540 000291A0  48 00 00 0C */	b lbl_8002D54C
lbl_8002D544:
/* 8002D544 000291A4  38 7C 00 08 */	addi r3, r28, 8
/* 8002D548 000291A8  48 20 07 ED */	bl func_8022DD34
lbl_8002D54C:
/* 8002D54C 000291AC  7C 64 1B 78 */	mr r4, r3
lbl_8002D550:
/* 8002D550 000291B0  7F C3 F3 78 */	mr r3, r30
/* 8002D554 000291B4  48 00 89 E5 */	bl func_80035F38
/* 8002D558 000291B8  38 60 00 01 */	li r3, 1
/* 8002D55C 000291BC  48 00 08 98 */	b lbl_8002DDF4
/* 8002D560 000291C0  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D564 000291C4  2C 00 00 01 */	cmpwi r0, 1
/* 8002D568 000291C8  40 82 00 0C */	bne lbl_8002D574
/* 8002D56C 000291CC  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D570 000291D0  48 00 00 2C */	b lbl_8002D59C
lbl_8002D574:
/* 8002D574 000291D4  2C 00 00 02 */	cmpwi r0, 2
/* 8002D578 000291D8  40 82 00 18 */	bne lbl_8002D590
/* 8002D57C 000291DC  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D580 000291E0  FC 00 00 1E */	fctiwz f0, f0
/* 8002D584 000291E4  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D588 000291E8  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D58C 000291EC  48 00 00 0C */	b lbl_8002D598
lbl_8002D590:
/* 8002D590 000291F0  38 7C 00 08 */	addi r3, r28, 8
/* 8002D594 000291F4  48 20 07 A1 */	bl func_8022DD34
lbl_8002D598:
/* 8002D598 000291F8  7C 64 1B 78 */	mr r4, r3
lbl_8002D59C:
/* 8002D59C 000291FC  7F C3 F3 78 */	mr r3, r30
/* 8002D5A0 00029200  48 00 89 69 */	bl func_80035F08
/* 8002D5A4 00029204  38 60 00 01 */	li r3, 1
/* 8002D5A8 00029208  48 00 08 4C */	b lbl_8002DDF4
/* 8002D5AC 0002920C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D5B0 00029210  2C 00 00 01 */	cmpwi r0, 1
/* 8002D5B4 00029214  40 82 00 0C */	bne lbl_8002D5C0
/* 8002D5B8 00029218  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002D5BC 0002921C  48 00 00 2C */	b lbl_8002D5E8
lbl_8002D5C0:
/* 8002D5C0 00029220  2C 00 00 02 */	cmpwi r0, 2
/* 8002D5C4 00029224  40 82 00 18 */	bne lbl_8002D5DC
/* 8002D5C8 00029228  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D5CC 0002922C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D5D0 00029230  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D5D4 00029234  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D5D8 00029238  48 00 00 0C */	b lbl_8002D5E4
lbl_8002D5DC:
/* 8002D5DC 0002923C  38 7C 00 08 */	addi r3, r28, 8
/* 8002D5E0 00029240  48 20 07 55 */	bl func_8022DD34
lbl_8002D5E4:
/* 8002D5E4 00029244  7C 7B 1B 78 */	mr r27, r3
lbl_8002D5E8:
/* 8002D5E8 00029248  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002D5EC 0002924C  2C 00 00 01 */	cmpwi r0, 1
/* 8002D5F0 00029250  40 82 00 0C */	bne lbl_8002D5FC
/* 8002D5F4 00029254  83 BC 00 14 */	lwz r29, 0x14(r28)
/* 8002D5F8 00029258  48 00 00 2C */	b lbl_8002D624
lbl_8002D5FC:
/* 8002D5FC 0002925C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D600 00029260  40 82 00 18 */	bne lbl_8002D618
/* 8002D604 00029264  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002D608 00029268  FC 00 00 1E */	fctiwz f0, f0
/* 8002D60C 0002926C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D610 00029270  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D614 00029274  48 00 00 0C */	b lbl_8002D620
lbl_8002D618:
/* 8002D618 00029278  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002D61C 0002927C  48 20 07 19 */	bl func_8022DD34
lbl_8002D620:
/* 8002D620 00029280  7C 7D 1B 78 */	mr r29, r3
lbl_8002D624:
/* 8002D624 00029284  A8 1C 00 18 */	lha r0, 0x18(r28)
/* 8002D628 00029288  2C 00 00 01 */	cmpwi r0, 1
/* 8002D62C 0002928C  40 82 00 0C */	bne lbl_8002D638
/* 8002D630 00029290  80 DC 00 1C */	lwz r6, 0x1c(r28)
/* 8002D634 00029294  48 00 00 2C */	b lbl_8002D660
lbl_8002D638:
/* 8002D638 00029298  2C 00 00 02 */	cmpwi r0, 2
/* 8002D63C 0002929C  40 82 00 18 */	bne lbl_8002D654
/* 8002D640 000292A0  C0 1C 00 1C */	lfs f0, 0x1c(r28)
/* 8002D644 000292A4  FC 00 00 1E */	fctiwz f0, f0
/* 8002D648 000292A8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D64C 000292AC  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D650 000292B0  48 00 00 0C */	b lbl_8002D65C
lbl_8002D654:
/* 8002D654 000292B4  38 7C 00 18 */	addi r3, r28, 0x18
/* 8002D658 000292B8  48 20 06 DD */	bl func_8022DD34
lbl_8002D65C:
/* 8002D65C 000292BC  7C 66 1B 78 */	mr r6, r3
lbl_8002D660:
/* 8002D660 000292C0  7F C3 F3 78 */	mr r3, r30
/* 8002D664 000292C4  7F 64 DB 78 */	mr r4, r27
/* 8002D668 000292C8  7F A5 EB 78 */	mr r5, r29
/* 8002D66C 000292CC  48 00 8C 9D */	bl func_80036308
/* 8002D670 000292D0  38 60 00 01 */	li r3, 1
/* 8002D674 000292D4  48 00 07 80 */	b lbl_8002DDF4
/* 8002D678 000292D8  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D67C 000292DC  2C 00 00 01 */	cmpwi r0, 1
/* 8002D680 000292E0  40 82 00 0C */	bne lbl_8002D68C
/* 8002D684 000292E4  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002D688 000292E8  48 00 00 2C */	b lbl_8002D6B4
lbl_8002D68C:
/* 8002D68C 000292EC  2C 00 00 02 */	cmpwi r0, 2
/* 8002D690 000292F0  40 82 00 18 */	bne lbl_8002D6A8
/* 8002D694 000292F4  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D698 000292F8  FC 00 00 1E */	fctiwz f0, f0
/* 8002D69C 000292FC  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D6A0 00029300  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D6A4 00029304  48 00 00 0C */	b lbl_8002D6B0
lbl_8002D6A8:
/* 8002D6A8 00029308  38 7C 00 08 */	addi r3, r28, 8
/* 8002D6AC 0002930C  48 20 06 89 */	bl func_8022DD34
lbl_8002D6B0:
/* 8002D6B0 00029310  7C 7B 1B 78 */	mr r27, r3
lbl_8002D6B4:
/* 8002D6B4 00029314  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002D6B8 00029318  2C 00 00 01 */	cmpwi r0, 1
/* 8002D6BC 0002931C  40 82 00 0C */	bne lbl_8002D6C8
/* 8002D6C0 00029320  83 BC 00 14 */	lwz r29, 0x14(r28)
/* 8002D6C4 00029324  48 00 00 2C */	b lbl_8002D6F0
lbl_8002D6C8:
/* 8002D6C8 00029328  2C 00 00 02 */	cmpwi r0, 2
/* 8002D6CC 0002932C  40 82 00 18 */	bne lbl_8002D6E4
/* 8002D6D0 00029330  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002D6D4 00029334  FC 00 00 1E */	fctiwz f0, f0
/* 8002D6D8 00029338  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D6DC 0002933C  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D6E0 00029340  48 00 00 0C */	b lbl_8002D6EC
lbl_8002D6E4:
/* 8002D6E4 00029344  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002D6E8 00029348  48 20 06 4D */	bl func_8022DD34
lbl_8002D6EC:
/* 8002D6EC 0002934C  7C 7D 1B 78 */	mr r29, r3
lbl_8002D6F0:
/* 8002D6F0 00029350  A8 1C 00 18 */	lha r0, 0x18(r28)
/* 8002D6F4 00029354  2C 00 00 01 */	cmpwi r0, 1
/* 8002D6F8 00029358  40 82 00 0C */	bne lbl_8002D704
/* 8002D6FC 0002935C  80 DC 00 1C */	lwz r6, 0x1c(r28)
/* 8002D700 00029360  48 00 00 2C */	b lbl_8002D72C
lbl_8002D704:
/* 8002D704 00029364  2C 00 00 02 */	cmpwi r0, 2
/* 8002D708 00029368  40 82 00 18 */	bne lbl_8002D720
/* 8002D70C 0002936C  C0 1C 00 1C */	lfs f0, 0x1c(r28)
/* 8002D710 00029370  FC 00 00 1E */	fctiwz f0, f0
/* 8002D714 00029374  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D718 00029378  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D71C 0002937C  48 00 00 0C */	b lbl_8002D728
lbl_8002D720:
/* 8002D720 00029380  38 7C 00 18 */	addi r3, r28, 0x18
/* 8002D724 00029384  48 20 06 11 */	bl func_8022DD34
lbl_8002D728:
/* 8002D728 00029388  7C 66 1B 78 */	mr r6, r3
lbl_8002D72C:
/* 8002D72C 0002938C  7F C3 F3 78 */	mr r3, r30
/* 8002D730 00029390  7F 64 DB 78 */	mr r4, r27
/* 8002D734 00029394  7F A5 EB 78 */	mr r5, r29
/* 8002D738 00029398  48 00 8D 85 */	bl func_800364BC
/* 8002D73C 0002939C  38 60 00 01 */	li r3, 1
/* 8002D740 000293A0  48 00 06 B4 */	b lbl_8002DDF4
/* 8002D744 000293A4  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D748 000293A8  2C 00 00 01 */	cmpwi r0, 1
/* 8002D74C 000293AC  40 82 00 0C */	bne lbl_8002D758
/* 8002D750 000293B0  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002D754 000293B4  48 00 00 2C */	b lbl_8002D780
lbl_8002D758:
/* 8002D758 000293B8  2C 00 00 02 */	cmpwi r0, 2
/* 8002D75C 000293BC  40 82 00 18 */	bne lbl_8002D774
/* 8002D760 000293C0  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D764 000293C4  FC 00 00 1E */	fctiwz f0, f0
/* 8002D768 000293C8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D76C 000293CC  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D770 000293D0  48 00 00 0C */	b lbl_8002D77C
lbl_8002D774:
/* 8002D774 000293D4  38 7C 00 08 */	addi r3, r28, 8
/* 8002D778 000293D8  48 20 05 BD */	bl func_8022DD34
lbl_8002D77C:
/* 8002D77C 000293DC  7C 7B 1B 78 */	mr r27, r3
lbl_8002D780:
/* 8002D780 000293E0  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002D784 000293E4  2C 00 00 01 */	cmpwi r0, 1
/* 8002D788 000293E8  40 82 00 0C */	bne lbl_8002D794
/* 8002D78C 000293EC  83 BC 00 14 */	lwz r29, 0x14(r28)
/* 8002D790 000293F0  48 00 00 2C */	b lbl_8002D7BC
lbl_8002D794:
/* 8002D794 000293F4  2C 00 00 02 */	cmpwi r0, 2
/* 8002D798 000293F8  40 82 00 18 */	bne lbl_8002D7B0
/* 8002D79C 000293FC  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002D7A0 00029400  FC 00 00 1E */	fctiwz f0, f0
/* 8002D7A4 00029404  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D7A8 00029408  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D7AC 0002940C  48 00 00 0C */	b lbl_8002D7B8
lbl_8002D7B0:
/* 8002D7B0 00029410  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002D7B4 00029414  48 20 05 81 */	bl func_8022DD34
lbl_8002D7B8:
/* 8002D7B8 00029418  7C 7D 1B 78 */	mr r29, r3
lbl_8002D7BC:
/* 8002D7BC 0002941C  A8 1C 00 18 */	lha r0, 0x18(r28)
/* 8002D7C0 00029420  2C 00 00 01 */	cmpwi r0, 1
/* 8002D7C4 00029424  40 82 00 0C */	bne lbl_8002D7D0
/* 8002D7C8 00029428  80 DC 00 1C */	lwz r6, 0x1c(r28)
/* 8002D7CC 0002942C  48 00 00 2C */	b lbl_8002D7F8
lbl_8002D7D0:
/* 8002D7D0 00029430  2C 00 00 02 */	cmpwi r0, 2
/* 8002D7D4 00029434  40 82 00 18 */	bne lbl_8002D7EC
/* 8002D7D8 00029438  C0 1C 00 1C */	lfs f0, 0x1c(r28)
/* 8002D7DC 0002943C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D7E0 00029440  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D7E4 00029444  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D7E8 00029448  48 00 00 0C */	b lbl_8002D7F4
lbl_8002D7EC:
/* 8002D7EC 0002944C  38 7C 00 18 */	addi r3, r28, 0x18
/* 8002D7F0 00029450  48 20 05 45 */	bl func_8022DD34
lbl_8002D7F4:
/* 8002D7F4 00029454  7C 66 1B 78 */	mr r6, r3
lbl_8002D7F8:
/* 8002D7F8 00029458  7F C3 F3 78 */	mr r3, r30
/* 8002D7FC 0002945C  7F 64 DB 78 */	mr r4, r27
/* 8002D800 00029460  7F A5 EB 78 */	mr r5, r29
/* 8002D804 00029464  48 00 91 F1 */	bl func_800369F4
/* 8002D808 00029468  38 60 00 01 */	li r3, 1
/* 8002D80C 0002946C  48 00 05 E8 */	b lbl_8002DDF4
/* 8002D810 00029470  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D814 00029474  2C 00 00 01 */	cmpwi r0, 1
/* 8002D818 00029478  40 82 00 0C */	bne lbl_8002D824
/* 8002D81C 0002947C  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D820 00029480  48 00 00 2C */	b lbl_8002D84C
lbl_8002D824:
/* 8002D824 00029484  2C 00 00 02 */	cmpwi r0, 2
/* 8002D828 00029488  40 82 00 18 */	bne lbl_8002D840
/* 8002D82C 0002948C  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D830 00029490  FC 00 00 1E */	fctiwz f0, f0
/* 8002D834 00029494  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D838 00029498  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D83C 0002949C  48 00 00 0C */	b lbl_8002D848
lbl_8002D840:
/* 8002D840 000294A0  38 7C 00 08 */	addi r3, r28, 8
/* 8002D844 000294A4  48 20 04 F1 */	bl func_8022DD34
lbl_8002D848:
/* 8002D848 000294A8  7C 64 1B 78 */	mr r4, r3
lbl_8002D84C:
/* 8002D84C 000294AC  7F C3 F3 78 */	mr r3, r30
/* 8002D850 000294B0  48 00 87 0D */	bl func_80035F5C
/* 8002D854 000294B4  38 60 00 01 */	li r3, 1
/* 8002D858 000294B8  48 00 05 9C */	b lbl_8002DDF4
/* 8002D85C 000294BC  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D860 000294C0  2C 00 00 01 */	cmpwi r0, 1
/* 8002D864 000294C4  40 82 00 0C */	bne lbl_8002D870
/* 8002D868 000294C8  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D86C 000294CC  48 00 00 2C */	b lbl_8002D898
lbl_8002D870:
/* 8002D870 000294D0  2C 00 00 02 */	cmpwi r0, 2
/* 8002D874 000294D4  40 82 00 18 */	bne lbl_8002D88C
/* 8002D878 000294D8  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D87C 000294DC  FC 00 00 1E */	fctiwz f0, f0
/* 8002D880 000294E0  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D884 000294E4  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D888 000294E8  48 00 00 0C */	b lbl_8002D894
lbl_8002D88C:
/* 8002D88C 000294EC  38 7C 00 08 */	addi r3, r28, 8
/* 8002D890 000294F0  48 20 04 A5 */	bl func_8022DD34
lbl_8002D894:
/* 8002D894 000294F4  7C 64 1B 78 */	mr r4, r3
lbl_8002D898:
/* 8002D898 000294F8  7F C3 F3 78 */	mr r3, r30
/* 8002D89C 000294FC  48 00 86 D9 */	bl func_80035F74
/* 8002D8A0 00029500  38 60 00 01 */	li r3, 1
/* 8002D8A4 00029504  48 00 05 50 */	b lbl_8002DDF4
/* 8002D8A8 00029508  2C 1F 00 00 */	cmpwi r31, 0
/* 8002D8AC 0002950C  41 82 00 90 */	beq lbl_8002D93C
/* 8002D8B0 00029510  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002D8B4 00029514  3B 60 00 00 */	li r27, 0
/* 8002D8B8 00029518  3B A0 00 00 */	li r29, 0
/* 8002D8BC 0002951C  3B C0 00 00 */	li r30, 0
/* 8002D8C0 00029520  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002D8C4 00029524  40 82 00 08 */	bne lbl_8002D8CC
/* 8002D8C8 00029528  83 7C 00 14 */	lwz r27, 0x14(r28)
lbl_8002D8CC:
/* 8002D8CC 0002952C  A8 1C 00 18 */	lha r0, 0x18(r28)
/* 8002D8D0 00029530  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002D8D4 00029534  40 82 00 08 */	bne lbl_8002D8DC
/* 8002D8D8 00029538  83 BC 00 1C */	lwz r29, 0x1c(r28)
lbl_8002D8DC:
/* 8002D8DC 0002953C  A8 1C 00 20 */	lha r0, 0x20(r28)
/* 8002D8E0 00029540  2C 00 00 21 */	cmpwi r0, 0x21
/* 8002D8E4 00029544  40 82 00 08 */	bne lbl_8002D8EC
/* 8002D8E8 00029548  83 DC 00 24 */	lwz r30, 0x24(r28)
lbl_8002D8EC:
/* 8002D8EC 0002954C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D8F0 00029550  2C 00 00 01 */	cmpwi r0, 1
/* 8002D8F4 00029554  40 82 00 0C */	bne lbl_8002D900
/* 8002D8F8 00029558  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D8FC 0002955C  48 00 00 2C */	b lbl_8002D928
lbl_8002D900:
/* 8002D900 00029560  2C 00 00 02 */	cmpwi r0, 2
/* 8002D904 00029564  40 82 00 18 */	bne lbl_8002D91C
/* 8002D908 00029568  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D90C 0002956C  FC 00 00 1E */	fctiwz f0, f0
/* 8002D910 00029570  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D914 00029574  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D918 00029578  48 00 00 0C */	b lbl_8002D924
lbl_8002D91C:
/* 8002D91C 0002957C  38 7C 00 08 */	addi r3, r28, 8
/* 8002D920 00029580  48 20 04 15 */	bl func_8022DD34
lbl_8002D924:
/* 8002D924 00029584  7C 64 1B 78 */	mr r4, r3
lbl_8002D928:
/* 8002D928 00029588  7F E3 FB 78 */	mr r3, r31
/* 8002D92C 0002958C  7F 65 DB 78 */	mr r5, r27
/* 8002D930 00029590  7F A6 EB 78 */	mr r6, r29
/* 8002D934 00029594  7F C7 F3 78 */	mr r7, r30
/* 8002D938 00029598  48 01 7D F1 */	bl func_80045728
lbl_8002D93C:
/* 8002D93C 0002959C  38 60 00 01 */	li r3, 1
/* 8002D940 000295A0  48 00 04 B4 */	b lbl_8002DDF4
/* 8002D944 000295A4  2C 1F 00 00 */	cmpwi r31, 0
/* 8002D948 000295A8  41 82 00 0C */	beq lbl_8002D954
/* 8002D94C 000295AC  7F E3 FB 78 */	mr r3, r31
/* 8002D950 000295B0  48 01 7D 6D */	bl func_800456BC
lbl_8002D954:
/* 8002D954 000295B4  38 60 00 01 */	li r3, 1
/* 8002D958 000295B8  48 00 04 9C */	b lbl_8002DDF4
/* 8002D95C 000295BC  2C 1F 00 00 */	cmpwi r31, 0
/* 8002D960 000295C0  41 82 04 90 */	beq lbl_8002DDF0
/* 8002D964 000295C4  38 00 00 00 */	li r0, 0
/* 8002D968 000295C8  B0 1D 00 02 */	sth r0, 2(r29)
/* 8002D96C 000295CC  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D970 000295D0  2C 00 00 01 */	cmpwi r0, 1
/* 8002D974 000295D4  40 82 00 0C */	bne lbl_8002D980
/* 8002D978 000295D8  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D97C 000295DC  48 00 00 2C */	b lbl_8002D9A8
lbl_8002D980:
/* 8002D980 000295E0  2C 00 00 02 */	cmpwi r0, 2
/* 8002D984 000295E4  40 82 00 18 */	bne lbl_8002D99C
/* 8002D988 000295E8  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D98C 000295EC  FC 00 00 1E */	fctiwz f0, f0
/* 8002D990 000295F0  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002D994 000295F4  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002D998 000295F8  48 00 00 0C */	b lbl_8002D9A4
lbl_8002D99C:
/* 8002D99C 000295FC  38 7C 00 08 */	addi r3, r28, 8
/* 8002D9A0 00029600  48 20 03 95 */	bl func_8022DD34
lbl_8002D9A4:
/* 8002D9A4 00029604  7C 64 1B 78 */	mr r4, r3
lbl_8002D9A8:
/* 8002D9A8 00029608  7F E3 FB 78 */	mr r3, r31
/* 8002D9AC 0002960C  38 A0 00 00 */	li r5, 0
/* 8002D9B0 00029610  48 01 81 51 */	bl func_80045B00
/* 8002D9B4 00029614  2C 03 00 00 */	cmpwi r3, 0
/* 8002D9B8 00029618  90 7D 00 04 */	stw r3, 4(r29)
/* 8002D9BC 0002961C  41 82 00 10 */	beq lbl_8002D9CC
/* 8002D9C0 00029620  38 00 00 21 */	li r0, 0x21
/* 8002D9C4 00029624  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D9C8 00029628  48 00 04 28 */	b lbl_8002DDF0
lbl_8002D9CC:
/* 8002D9CC 0002962C  38 00 00 01 */	li r0, 1
/* 8002D9D0 00029630  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002D9D4 00029634  48 00 04 1C */	b lbl_8002DDF0
/* 8002D9D8 00029638  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002D9DC 0002963C  2C 00 00 01 */	cmpwi r0, 1
/* 8002D9E0 00029640  40 82 00 0C */	bne lbl_8002D9EC
/* 8002D9E4 00029644  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002D9E8 00029648  48 00 00 2C */	b lbl_8002DA14
lbl_8002D9EC:
/* 8002D9EC 0002964C  2C 00 00 02 */	cmpwi r0, 2
/* 8002D9F0 00029650  40 82 00 18 */	bne lbl_8002DA08
/* 8002D9F4 00029654  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002D9F8 00029658  FC 00 00 1E */	fctiwz f0, f0
/* 8002D9FC 0002965C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DA00 00029660  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DA04 00029664  48 00 00 0C */	b lbl_8002DA10
lbl_8002DA08:
/* 8002DA08 00029668  38 7C 00 08 */	addi r3, r28, 8
/* 8002DA0C 0002966C  48 20 03 29 */	bl func_8022DD34
lbl_8002DA10:
/* 8002DA10 00029670  7C 64 1B 78 */	mr r4, r3
lbl_8002DA14:
/* 8002DA14 00029674  7F C3 F3 78 */	mr r3, r30
/* 8002DA18 00029678  48 00 93 89 */	bl func_80036DA0
/* 8002DA1C 0002967C  38 00 00 01 */	li r0, 1
/* 8002DA20 00029680  90 7D 00 04 */	stw r3, 4(r29)
/* 8002DA24 00029684  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002DA28 00029688  48 00 03 C8 */	b lbl_8002DDF0
/* 8002DA2C 0002968C  48 00 85 19 */	bl func_80035F44
/* 8002DA30 00029690  38 00 00 01 */	li r0, 1
/* 8002DA34 00029694  90 7D 00 04 */	stw r3, 4(r29)
/* 8002DA38 00029698  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002DA3C 0002969C  48 00 03 B4 */	b lbl_8002DDF0
/* 8002DA40 000296A0  48 00 85 41 */	bl func_80035F80
/* 8002DA44 000296A4  38 00 00 01 */	li r0, 1
/* 8002DA48 000296A8  90 7D 00 04 */	stw r3, 4(r29)
/* 8002DA4C 000296AC  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002DA50 000296B0  48 00 03 A0 */	b lbl_8002DDF0
/* 8002DA54 000296B4  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DA58 000296B8  41 82 03 98 */	beq lbl_8002DDF0
/* 8002DA5C 000296BC  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DA60 000296C0  2C 00 00 01 */	cmpwi r0, 1
/* 8002DA64 000296C4  40 82 00 0C */	bne lbl_8002DA70
/* 8002DA68 000296C8  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002DA6C 000296CC  48 00 00 2C */	b lbl_8002DA98
lbl_8002DA70:
/* 8002DA70 000296D0  2C 00 00 02 */	cmpwi r0, 2
/* 8002DA74 000296D4  40 82 00 18 */	bne lbl_8002DA8C
/* 8002DA78 000296D8  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DA7C 000296DC  FC 00 00 1E */	fctiwz f0, f0
/* 8002DA80 000296E0  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DA84 000296E4  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DA88 000296E8  48 00 00 0C */	b lbl_8002DA94
lbl_8002DA8C:
/* 8002DA8C 000296EC  38 7C 00 08 */	addi r3, r28, 8
/* 8002DA90 000296F0  48 20 02 A5 */	bl func_8022DD34
lbl_8002DA94:
/* 8002DA94 000296F4  7C 7B 1B 78 */	mr r27, r3
lbl_8002DA98:
/* 8002DA98 000296F8  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002DA9C 000296FC  2C 00 00 01 */	cmpwi r0, 1
/* 8002DAA0 00029700  40 82 00 0C */	bne lbl_8002DAAC
/* 8002DAA4 00029704  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002DAA8 00029708  48 00 00 2C */	b lbl_8002DAD4
lbl_8002DAAC:
/* 8002DAAC 0002970C  2C 00 00 02 */	cmpwi r0, 2
/* 8002DAB0 00029710  40 82 00 18 */	bne lbl_8002DAC8
/* 8002DAB4 00029714  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002DAB8 00029718  FC 00 00 1E */	fctiwz f0, f0
/* 8002DABC 0002971C  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DAC0 00029720  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DAC4 00029724  48 00 00 0C */	b lbl_8002DAD0
lbl_8002DAC8:
/* 8002DAC8 00029728  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002DACC 0002972C  48 20 02 69 */	bl func_8022DD34
lbl_8002DAD0:
/* 8002DAD0 00029730  7C 65 1B 78 */	mr r5, r3
lbl_8002DAD4:
/* 8002DAD4 00029734  7F E3 FB 78 */	mr r3, r31
/* 8002DAD8 00029738  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 8002DADC 0002973C  48 01 89 D5 */	bl func_800464B0
/* 8002DAE0 00029740  48 00 03 10 */	b lbl_8002DDF0
/* 8002DAE4 00029744  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DAE8 00029748  41 82 03 08 */	beq lbl_8002DDF0
/* 8002DAEC 0002974C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DAF0 00029750  2C 00 00 01 */	cmpwi r0, 1
/* 8002DAF4 00029754  40 82 00 0C */	bne lbl_8002DB00
/* 8002DAF8 00029758  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002DAFC 0002975C  48 00 00 2C */	b lbl_8002DB28
lbl_8002DB00:
/* 8002DB00 00029760  2C 00 00 02 */	cmpwi r0, 2
/* 8002DB04 00029764  40 82 00 18 */	bne lbl_8002DB1C
/* 8002DB08 00029768  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DB0C 0002976C  FC 00 00 1E */	fctiwz f0, f0
/* 8002DB10 00029770  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DB14 00029774  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DB18 00029778  48 00 00 0C */	b lbl_8002DB24
lbl_8002DB1C:
/* 8002DB1C 0002977C  38 7C 00 08 */	addi r3, r28, 8
/* 8002DB20 00029780  48 20 02 15 */	bl func_8022DD34
lbl_8002DB24:
/* 8002DB24 00029784  7C 7B 1B 78 */	mr r27, r3
lbl_8002DB28:
/* 8002DB28 00029788  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002DB2C 0002978C  2C 00 00 01 */	cmpwi r0, 1
/* 8002DB30 00029790  40 82 00 0C */	bne lbl_8002DB3C
/* 8002DB34 00029794  80 BC 00 14 */	lwz r5, 0x14(r28)
/* 8002DB38 00029798  48 00 00 2C */	b lbl_8002DB64
lbl_8002DB3C:
/* 8002DB3C 0002979C  2C 00 00 02 */	cmpwi r0, 2
/* 8002DB40 000297A0  40 82 00 18 */	bne lbl_8002DB58
/* 8002DB44 000297A4  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002DB48 000297A8  FC 00 00 1E */	fctiwz f0, f0
/* 8002DB4C 000297AC  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DB50 000297B0  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DB54 000297B4  48 00 00 0C */	b lbl_8002DB60
lbl_8002DB58:
/* 8002DB58 000297B8  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002DB5C 000297BC  48 20 01 D9 */	bl func_8022DD34
lbl_8002DB60:
/* 8002DB60 000297C0  7C 65 1B 78 */	mr r5, r3
lbl_8002DB64:
/* 8002DB64 000297C4  7F E3 FB 78 */	mr r3, r31
/* 8002DB68 000297C8  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 8002DB6C 000297CC  48 01 8D BD */	bl func_80046928
/* 8002DB70 000297D0  48 00 02 80 */	b lbl_8002DDF0
/* 8002DB74 000297D4  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DB78 000297D8  41 82 02 78 */	beq lbl_8002DDF0
/* 8002DB7C 000297DC  7F E3 FB 78 */	mr r3, r31
/* 8002DB80 000297E0  48 01 8C E1 */	bl func_80046860
/* 8002DB84 000297E4  48 00 02 6C */	b lbl_8002DDF0
/* 8002DB88 000297E8  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DB8C 000297EC  41 82 02 64 */	beq lbl_8002DDF0
/* 8002DB90 000297F0  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DB94 000297F4  2C 00 00 01 */	cmpwi r0, 1
/* 8002DB98 000297F8  40 82 00 0C */	bne lbl_8002DBA4
/* 8002DB9C 000297FC  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002DBA0 00029800  48 00 00 2C */	b lbl_8002DBCC
lbl_8002DBA4:
/* 8002DBA4 00029804  2C 00 00 02 */	cmpwi r0, 2
/* 8002DBA8 00029808  40 82 00 18 */	bne lbl_8002DBC0
/* 8002DBAC 0002980C  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DBB0 00029810  FC 00 00 1E */	fctiwz f0, f0
/* 8002DBB4 00029814  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DBB8 00029818  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DBBC 0002981C  48 00 00 0C */	b lbl_8002DBC8
lbl_8002DBC0:
/* 8002DBC0 00029820  38 7C 00 08 */	addi r3, r28, 8
/* 8002DBC4 00029824  48 20 01 71 */	bl func_8022DD34
lbl_8002DBC8:
/* 8002DBC8 00029828  7C 64 1B 78 */	mr r4, r3
lbl_8002DBCC:
/* 8002DBCC 0002982C  7C 04 00 D0 */	neg r0, r4
/* 8002DBD0 00029830  7F E3 FB 78 */	mr r3, r31
/* 8002DBD4 00029834  7C 00 23 78 */	or r0, r0, r4
/* 8002DBD8 00029838  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8002DBDC 0002983C  48 01 93 C1 */	bl func_80046F9C
/* 8002DBE0 00029840  48 00 02 10 */	b lbl_8002DDF0
/* 8002DBE4 00029844  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DBE8 00029848  41 82 02 08 */	beq lbl_8002DDF0
/* 8002DBEC 0002984C  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DBF0 00029850  2C 00 00 01 */	cmpwi r0, 1
/* 8002DBF4 00029854  40 82 00 0C */	bne lbl_8002DC00
/* 8002DBF8 00029858  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002DBFC 0002985C  48 00 00 2C */	b lbl_8002DC28
lbl_8002DC00:
/* 8002DC00 00029860  2C 00 00 02 */	cmpwi r0, 2
/* 8002DC04 00029864  40 82 00 18 */	bne lbl_8002DC1C
/* 8002DC08 00029868  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DC0C 0002986C  FC 00 00 1E */	fctiwz f0, f0
/* 8002DC10 00029870  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DC14 00029874  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DC18 00029878  48 00 00 0C */	b lbl_8002DC24
lbl_8002DC1C:
/* 8002DC1C 0002987C  38 7C 00 08 */	addi r3, r28, 8
/* 8002DC20 00029880  48 20 01 15 */	bl func_8022DD34
lbl_8002DC24:
/* 8002DC24 00029884  7C 64 1B 78 */	mr r4, r3
lbl_8002DC28:
/* 8002DC28 00029888  7F E3 FB 78 */	mr r3, r31
/* 8002DC2C 0002988C  48 01 94 89 */	bl func_800470B4
/* 8002DC30 00029890  48 00 01 C0 */	b lbl_8002DDF0
/* 8002DC34 00029894  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DC38 00029898  41 82 01 B8 */	beq lbl_8002DDF0
/* 8002DC3C 0002989C  7F E3 FB 78 */	mr r3, r31
/* 8002DC40 000298A0  48 01 98 2D */	bl func_8004746C
/* 8002DC44 000298A4  48 00 01 AC */	b lbl_8002DDF0
/* 8002DC48 000298A8  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DC4C 000298AC  41 82 01 A4 */	beq lbl_8002DDF0
/* 8002DC50 000298B0  7F E3 FB 78 */	mr r3, r31
/* 8002DC54 000298B4  48 01 87 61 */	bl func_800463B4
/* 8002DC58 000298B8  48 00 01 98 */	b lbl_8002DDF0
/* 8002DC5C 000298BC  2C 1F 00 00 */	cmpwi r31, 0
/* 8002DC60 000298C0  41 82 01 90 */	beq lbl_8002DDF0
/* 8002DC64 000298C4  7F E3 FB 78 */	mr r3, r31
/* 8002DC68 000298C8  48 01 87 F1 */	bl func_80046458
/* 8002DC6C 000298CC  48 00 01 84 */	b lbl_8002DDF0
/* 8002DC70 000298D0  48 00 83 1D */	bl func_80035F8C
/* 8002DC74 000298D4  38 00 00 01 */	li r0, 1
/* 8002DC78 000298D8  90 7D 00 04 */	stw r3, 4(r29)
/* 8002DC7C 000298DC  B0 1D 00 00 */	sth r0, 0(r29)
/* 8002DC80 000298E0  48 00 01 70 */	b lbl_8002DDF0
/* 8002DC84 000298E4  2C 03 00 00 */	cmpwi r3, 0
/* 8002DC88 000298E8  41 82 01 68 */	beq lbl_8002DDF0
/* 8002DC8C 000298EC  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DC90 000298F0  2C 00 00 01 */	cmpwi r0, 1
/* 8002DC94 000298F4  40 82 00 0C */	bne lbl_8002DCA0
/* 8002DC98 000298F8  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002DC9C 000298FC  48 00 00 2C */	b lbl_8002DCC8
lbl_8002DCA0:
/* 8002DCA0 00029900  2C 00 00 02 */	cmpwi r0, 2
/* 8002DCA4 00029904  40 82 00 18 */	bne lbl_8002DCBC
/* 8002DCA8 00029908  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DCAC 0002990C  FC 00 00 1E */	fctiwz f0, f0
/* 8002DCB0 00029910  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DCB4 00029914  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DCB8 00029918  48 00 00 0C */	b lbl_8002DCC4
lbl_8002DCBC:
/* 8002DCBC 0002991C  38 7C 00 08 */	addi r3, r28, 8
/* 8002DCC0 00029920  48 20 00 75 */	bl func_8022DD34
lbl_8002DCC4:
/* 8002DCC4 00029924  7C 64 1B 78 */	mr r4, r3
lbl_8002DCC8:
/* 8002DCC8 00029928  7F C3 F3 78 */	mr r3, r30
/* 8002DCCC 0002992C  48 00 92 55 */	bl func_80036F20
/* 8002DCD0 00029930  48 00 01 20 */	b lbl_8002DDF0
/* 8002DCD4 00029934  3B 80 00 01 */	li r28, 1
/* 8002DCD8 00029938  38 00 00 00 */	li r0, 0
/* 8002DCDC 0002993C  2C 03 00 00 */	cmpwi r3, 0
/* 8002DCE0 00029940  B3 9D 00 00 */	sth r28, 0(r29)
/* 8002DCE4 00029944  90 1D 00 04 */	stw r0, 4(r29)
/* 8002DCE8 00029948  41 82 01 08 */	beq lbl_8002DDF0
/* 8002DCEC 0002994C  48 00 92 2D */	bl func_80036F18
/* 8002DCF0 00029950  B3 9D 00 00 */	sth r28, 0(r29)
/* 8002DCF4 00029954  90 7D 00 04 */	stw r3, 4(r29)
/* 8002DCF8 00029958  48 00 00 F8 */	b lbl_8002DDF0
/* 8002DCFC 0002995C  2C 03 00 00 */	cmpwi r3, 0
/* 8002DD00 00029960  41 82 00 F0 */	beq lbl_8002DDF0
/* 8002DD04 00029964  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DD08 00029968  2C 00 00 01 */	cmpwi r0, 1
/* 8002DD0C 0002996C  40 82 00 0C */	bne lbl_8002DD18
/* 8002DD10 00029970  83 7C 00 0C */	lwz r27, 0xc(r28)
/* 8002DD14 00029974  48 00 00 2C */	b lbl_8002DD40
lbl_8002DD18:
/* 8002DD18 00029978  2C 00 00 02 */	cmpwi r0, 2
/* 8002DD1C 0002997C  40 82 00 18 */	bne lbl_8002DD34
/* 8002DD20 00029980  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DD24 00029984  FC 00 00 1E */	fctiwz f0, f0
/* 8002DD28 00029988  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DD2C 0002998C  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DD30 00029990  48 00 00 0C */	b lbl_8002DD3C
lbl_8002DD34:
/* 8002DD34 00029994  38 7C 00 08 */	addi r3, r28, 8
/* 8002DD38 00029998  48 1F FF FD */	bl func_8022DD34
lbl_8002DD3C:
/* 8002DD3C 0002999C  7C 7B 1B 78 */	mr r27, r3
lbl_8002DD40:
/* 8002DD40 000299A0  A8 1C 00 10 */	lha r0, 0x10(r28)
/* 8002DD44 000299A4  2C 00 00 01 */	cmpwi r0, 1
/* 8002DD48 000299A8  40 82 00 0C */	bne lbl_8002DD54
/* 8002DD4C 000299AC  80 9C 00 14 */	lwz r4, 0x14(r28)
/* 8002DD50 000299B0  48 00 00 2C */	b lbl_8002DD7C
lbl_8002DD54:
/* 8002DD54 000299B4  2C 00 00 02 */	cmpwi r0, 2
/* 8002DD58 000299B8  40 82 00 18 */	bne lbl_8002DD70
/* 8002DD5C 000299BC  C0 1C 00 14 */	lfs f0, 0x14(r28)
/* 8002DD60 000299C0  FC 00 00 1E */	fctiwz f0, f0
/* 8002DD64 000299C4  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DD68 000299C8  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DD6C 000299CC  48 00 00 0C */	b lbl_8002DD78
lbl_8002DD70:
/* 8002DD70 000299D0  38 7C 00 10 */	addi r3, r28, 0x10
/* 8002DD74 000299D4  48 1F FF C1 */	bl func_8022DD34
lbl_8002DD78:
/* 8002DD78 000299D8  7C 64 1B 78 */	mr r4, r3
lbl_8002DD7C:
/* 8002DD7C 000299DC  7C 04 00 D0 */	neg r0, r4
/* 8002DD80 000299E0  7F C3 F3 78 */	mr r3, r30
/* 8002DD84 000299E4  7C 00 23 78 */	or r0, r0, r4
/* 8002DD88 000299E8  7F 64 DB 78 */	mr r4, r27
/* 8002DD8C 000299EC  54 05 0F FE */	srwi r5, r0, 0x1f
/* 8002DD90 000299F0  48 00 91 99 */	bl func_80036F28
/* 8002DD94 000299F4  48 00 00 5C */	b lbl_8002DDF0
/* 8002DD98 000299F8  2C 03 00 00 */	cmpwi r3, 0
/* 8002DD9C 000299FC  41 82 00 54 */	beq lbl_8002DDF0
/* 8002DDA0 00029A00  A8 1C 00 08 */	lha r0, 8(r28)
/* 8002DDA4 00029A04  2C 00 00 01 */	cmpwi r0, 1
/* 8002DDA8 00029A08  40 82 00 0C */	bne lbl_8002DDB4
/* 8002DDAC 00029A0C  80 9C 00 0C */	lwz r4, 0xc(r28)
/* 8002DDB0 00029A10  48 00 00 2C */	b lbl_8002DDDC
lbl_8002DDB4:
/* 8002DDB4 00029A14  2C 00 00 02 */	cmpwi r0, 2
/* 8002DDB8 00029A18  40 82 00 18 */	bne lbl_8002DDD0
/* 8002DDBC 00029A1C  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 8002DDC0 00029A20  FC 00 00 1E */	fctiwz f0, f0
/* 8002DDC4 00029A24  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8002DDC8 00029A28  80 61 00 24 */	lwz r3, 0x24(r1)
/* 8002DDCC 00029A2C  48 00 00 0C */	b lbl_8002DDD8
lbl_8002DDD0:
/* 8002DDD0 00029A30  38 7C 00 08 */	addi r3, r28, 8
/* 8002DDD4 00029A34  48 1F FF 61 */	bl func_8022DD34
lbl_8002DDD8:
/* 8002DDD8 00029A38  7C 64 1B 78 */	mr r4, r3
lbl_8002DDDC:
/* 8002DDDC 00029A3C  7F C3 F3 78 */	mr r3, r30
/* 8002DDE0 00029A40  48 00 91 71 */	bl func_80036F50
/* 8002DDE4 00029A44  38 00 00 01 */	li r0, 1
/* 8002DDE8 00029A48  90 7D 00 04 */	stw r3, 4(r29)
/* 8002DDEC 00029A4C  B0 1D 00 00 */	sth r0, 0(r29)
lbl_8002DDF0:
/* 8002DDF0 00029A50  38 60 00 01 */	li r3, 1
lbl_8002DDF4:
/* 8002DDF4 00029A54  39 61 00 40 */	addi r11, r1, 0x40
/* 8002DDF8 00029A58  48 19 93 79 */	bl _restgpr_26
/* 8002DDFC 00029A5C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8002DE00 00029A60  7C 08 03 A6 */	mtlr r0
/* 8002DE04 00029A64  38 21 00 40 */	addi r1, r1, 0x40
/* 8002DE08 00029A68  4E 80 00 20 */	blr

.global func_8002DE0C
func_8002DE0C:
/* 8002DE0C 00029A6C  38 A0 00 01 */	li r5, 1
/* 8002DE10 00029A70  38 6D 97 28 */	addi r3, r13, lbl_8063E9E8-_SDA_BASE_
/* 8002DE14 00029A74  38 80 00 04 */	li r4, 4
/* 8002DE18 00029A78  38 00 00 00 */	li r0, 0
/* 8002DE1C 00029A7C  98 AD 97 28 */	stb r5, lbl_8063E9E8-_SDA_BASE_(r13)
/* 8002DE20 00029A80  B0 83 00 02 */	sth r4, 2(r3)
/* 8002DE24 00029A84  98 03 00 04 */	stb r0, 4(r3)
/* 8002DE28 00029A88  4E 80 00 20 */	blr

.global func_8002DE2C
func_8002DE2C:
/* 8002DE2C 00029A8C  2C 03 00 03 */	cmpwi r3, 3
/* 8002DE30 00029A90  41 82 00 34 */	beq lbl_8002DE64
/* 8002DE34 00029A94  40 80 00 14 */	bge lbl_8002DE48
/* 8002DE38 00029A98  2C 03 00 01 */	cmpwi r3, 1
/* 8002DE3C 00029A9C  41 82 00 18 */	beq lbl_8002DE54
/* 8002DE40 00029AA0  40 80 00 1C */	bge lbl_8002DE5C
/* 8002DE44 00029AA4  48 00 00 30 */	b lbl_8002DE74
lbl_8002DE48:
/* 8002DE48 00029AA8  2C 03 00 05 */	cmpwi r3, 5
/* 8002DE4C 00029AAC  40 80 00 28 */	bge lbl_8002DE74
/* 8002DE50 00029AB0  48 00 00 1C */	b lbl_8002DE6C
lbl_8002DE54:
/* 8002DE54 00029AB4  38 60 27 E6 */	li r3, 0x27e6
/* 8002DE58 00029AB8  4E 80 00 20 */	blr
lbl_8002DE5C:
/* 8002DE5C 00029ABC  38 60 27 E0 */	li r3, 0x27e0
/* 8002DE60 00029AC0  4E 80 00 20 */	blr
lbl_8002DE64:
/* 8002DE64 00029AC4  38 60 27 E5 */	li r3, 0x27e5
/* 8002DE68 00029AC8  4E 80 00 20 */	blr
lbl_8002DE6C:
/* 8002DE6C 00029ACC  38 60 27 E1 */	li r3, 0x27e1
/* 8002DE70 00029AD0  4E 80 00 20 */	blr
lbl_8002DE74:
/* 8002DE74 00029AD4  38 60 00 00 */	li r3, 0
/* 8002DE78 00029AD8  4E 80 00 20 */	blr

.global lbl_8002DE7C
lbl_8002DE7C:
/* 8002DE7C 00029ADC  94 21 FE 50 */	stwu r1, -0x1b0(r1)
/* 8002DE80 00029AE0  7C 08 02 A6 */	mflr r0
/* 8002DE84 00029AE4  90 01 01 B4 */	stw r0, 0x1b4(r1)
/* 8002DE88 00029AE8  DB E1 01 A0 */	stfd f31, 0x1a0(r1)
/* 8002DE8C 00029AEC  F3 E1 01 A8 */	psq_st f31, 424(r1), 0, qr0
/* 8002DE90 00029AF0  39 61 01 A0 */	addi r11, r1, 0x1a0
/* 8002DE94 00029AF4  48 19 92 8D */	bl _savegpr_25
/* 8002DE98 00029AF8  3C 00 43 30 */	lis r0, 0x4330
/* 8002DE9C 00029AFC  7C 99 23 78 */	mr r25, r4
/* 8002DEA0 00029B00  90 01 01 68 */	stw r0, 0x168(r1)
/* 8002DEA4 00029B04  7C BD 2B 78 */	mr r29, r5
/* 8002DEA8 00029B08  7C DE 33 78 */	mr r30, r6
/* 8002DEAC 00029B0C  90 01 01 70 */	stw r0, 0x170(r1)
/* 8002DEB0 00029B10  48 00 7E ED */	bl func_80035D9C
/* 8002DEB4 00029B14  2C 03 00 00 */	cmpwi r3, 0
/* 8002DEB8 00029B18  7C 7F 1B 78 */	mr r31, r3
/* 8002DEBC 00029B1C  40 82 00 0C */	bne lbl_8002DEC8
/* 8002DEC0 00029B20  38 60 00 01 */	li r3, 1
/* 8002DEC4 00029B24  48 00 1D 9C */	b lbl_8002FC60
lbl_8002DEC8:
/* 8002DEC8 00029B28  48 0E EA AD */	bl func_8011C974
/* 8002DECC 00029B2C  38 19 FF EF */	addi r0, r25, -17
/* 8002DED0 00029B30  7C 7B 1B 78 */	mr r27, r3
/* 8002DED4 00029B34  28 00 00 21 */	cmplwi r0, 0x21
/* 8002DED8 00029B38  41 81 1D 84 */	bgt lbl_8002FC5C
/* 8002DEDC 00029B3C  3C 60 80 41 */	lis r3, lbl_80409F40@ha
/* 8002DEE0 00029B40  54 00 10 3A */	slwi r0, r0, 2
/* 8002DEE4 00029B44  38 63 9F 40 */	addi r3, r3, lbl_80409F40@l
/* 8002DEE8 00029B48  7C 63 00 2E */	lwzx r3, r3, r0
/* 8002DEEC 00029B4C  7C 69 03 A6 */	mtctr r3
/* 8002DEF0 00029B50  4E 80 04 20 */	bctr
/* 8002DEF4 00029B54  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002DEF8 00029B58  2C 00 00 01 */	cmpwi r0, 1
/* 8002DEFC 00029B5C  40 82 00 0C */	bne lbl_8002DF08
/* 8002DF00 00029B60  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002DF04 00029B64  48 00 00 28 */	b lbl_8002DF2C
lbl_8002DF08:
/* 8002DF08 00029B68  2C 00 00 02 */	cmpwi r0, 2
/* 8002DF0C 00029B6C  40 82 00 18 */	bne lbl_8002DF24
/* 8002DF10 00029B70  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002DF14 00029B74  FC 00 00 1E */	fctiwz f0, f0
/* 8002DF18 00029B78  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002DF1C 00029B7C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002DF20 00029B80  48 00 00 0C */	b lbl_8002DF2C
lbl_8002DF24:
/* 8002DF24 00029B84  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002DF28 00029B88  48 1F FE 0D */	bl func_8022DD34
lbl_8002DF2C:
/* 8002DF2C 00029B8C  2C 03 00 00 */	cmpwi r3, 0
/* 8002DF30 00029B90  40 82 00 0C */	bne lbl_8002DF3C
/* 8002DF34 00029B94  48 04 12 09 */	bl func_8006F13C
/* 8002DF38 00029B98  48 00 1D 24 */	b lbl_8002FC5C
lbl_8002DF3C:
/* 8002DF3C 00029B9C  48 04 10 8D */	bl func_8006EFC8
/* 8002DF40 00029BA0  48 00 1D 1C */	b lbl_8002FC5C
/* 8002DF44 00029BA4  7F E3 FB 78 */	mr r3, r31
/* 8002DF48 00029BA8  48 00 81 21 */	bl func_80036068
/* 8002DF4C 00029BAC  7C 7B 1B 78 */	mr r27, r3
/* 8002DF50 00029BB0  48 04 13 B9 */	bl func_8006F308
/* 8002DF54 00029BB4  2C 1B 00 00 */	cmpwi r27, 0
/* 8002DF58 00029BB8  41 82 00 14 */	beq lbl_8002DF6C
/* 8002DF5C 00029BBC  C0 22 81 50 */	lfs f1, lbl_80640750-_SDA2_BASE_(r2)
/* 8002DF60 00029BC0  7F 63 DB 78 */	mr r3, r27
/* 8002DF64 00029BC4  FC 40 08 90 */	fmr f2, f1
/* 8002DF68 00029BC8  48 04 12 01 */	bl func_8006F168
lbl_8002DF6C:
/* 8002DF6C 00029BCC  4B FD E8 7D */	bl func_8000C7E8
/* 8002DF70 00029BD0  38 80 00 01 */	li r4, 1
/* 8002DF74 00029BD4  38 A0 00 00 */	li r5, 0
/* 8002DF78 00029BD8  4B FF 3F 4D */	bl func_80021EC4
/* 8002DF7C 00029BDC  48 00 1C E0 */	b lbl_8002FC5C
/* 8002DF80 00029BE0  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002DF84 00029BE4  2C 00 00 01 */	cmpwi r0, 1
/* 8002DF88 00029BE8  40 82 00 0C */	bne lbl_8002DF94
/* 8002DF8C 00029BEC  83 7D 00 0C */	lwz r27, 0xc(r29)
/* 8002DF90 00029BF0  48 00 00 2C */	b lbl_8002DFBC
lbl_8002DF94:
/* 8002DF94 00029BF4  2C 00 00 02 */	cmpwi r0, 2
/* 8002DF98 00029BF8  40 82 00 18 */	bne lbl_8002DFB0
/* 8002DF9C 00029BFC  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002DFA0 00029C00  FC 00 00 1E */	fctiwz f0, f0
/* 8002DFA4 00029C04  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002DFA8 00029C08  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002DFAC 00029C0C  48 00 00 0C */	b lbl_8002DFB8
lbl_8002DFB0:
/* 8002DFB0 00029C10  38 7D 00 08 */	addi r3, r29, 8
/* 8002DFB4 00029C14  48 1F FD 81 */	bl func_8022DD34
lbl_8002DFB8:
/* 8002DFB8 00029C18  7C 7B 1B 78 */	mr r27, r3
lbl_8002DFBC:
/* 8002DFBC 00029C1C  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002DFC0 00029C20  2C 00 00 01 */	cmpwi r0, 1
/* 8002DFC4 00029C24  40 82 00 20 */	bne lbl_8002DFE4
/* 8002DFC8 00029C28  80 1D 00 1C */	lwz r0, 0x1c(r29)
/* 8002DFCC 00029C2C  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002DFD0 00029C30  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002DFD4 00029C34  90 01 01 6C */	stw r0, 0x16c(r1)
/* 8002DFD8 00029C38  C8 01 01 68 */	lfd f0, 0x168(r1)
/* 8002DFDC 00029C3C  EF E0 08 28 */	fsubs f31, f0, f1
/* 8002DFE0 00029C40  48 00 00 20 */	b lbl_8002E000
lbl_8002DFE4:
/* 8002DFE4 00029C44  2C 00 00 02 */	cmpwi r0, 2
/* 8002DFE8 00029C48  40 82 00 0C */	bne lbl_8002DFF4
/* 8002DFEC 00029C4C  C0 3D 00 1C */	lfs f1, 0x1c(r29)
/* 8002DFF0 00029C50  48 00 00 0C */	b lbl_8002DFFC
lbl_8002DFF4:
/* 8002DFF4 00029C54  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002DFF8 00029C58  48 1F FD 81 */	bl func_8022DD78
lbl_8002DFFC:
/* 8002DFFC 00029C5C  FF E0 08 90 */	fmr f31, f1
lbl_8002E000:
/* 8002E000 00029C60  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E004 00029C64  2C 00 00 01 */	cmpwi r0, 1
/* 8002E008 00029C68  40 82 00 20 */	bne lbl_8002E028
/* 8002E00C 00029C6C  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8002E010 00029C70  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E014 00029C74  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E018 00029C78  90 01 01 74 */	stw r0, 0x174(r1)
/* 8002E01C 00029C7C  C8 01 01 70 */	lfd f0, 0x170(r1)
/* 8002E020 00029C80  EC 40 08 28 */	fsubs f2, f0, f1
/* 8002E024 00029C84  48 00 00 20 */	b lbl_8002E044
lbl_8002E028:
/* 8002E028 00029C88  2C 00 00 02 */	cmpwi r0, 2
/* 8002E02C 00029C8C  40 82 00 0C */	bne lbl_8002E038
/* 8002E030 00029C90  C0 3D 00 14 */	lfs f1, 0x14(r29)
/* 8002E034 00029C94  48 00 00 0C */	b lbl_8002E040
lbl_8002E038:
/* 8002E038 00029C98  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E03C 00029C9C  48 1F FD 3D */	bl func_8022DD78
lbl_8002E040:
/* 8002E040 00029CA0  FC 40 08 90 */	fmr f2, f1
lbl_8002E044:
/* 8002E044 00029CA4  FC 20 F8 90 */	fmr f1, f31
/* 8002E048 00029CA8  57 63 04 3E */	clrlwi r3, r27, 0x10
/* 8002E04C 00029CAC  38 80 00 00 */	li r4, 0
/* 8002E050 00029CB0  38 A0 00 00 */	li r5, 0
/* 8002E054 00029CB4  38 C0 00 00 */	li r6, 0
/* 8002E058 00029CB8  48 04 12 F5 */	bl func_8006F34C
/* 8002E05C 00029CBC  48 00 1C 00 */	b lbl_8002FC5C
/* 8002E060 00029CC0  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E064 00029CC4  2C 00 00 01 */	cmpwi r0, 1
/* 8002E068 00029CC8  40 82 00 0C */	bne lbl_8002E074
/* 8002E06C 00029CCC  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002E070 00029CD0  48 00 00 28 */	b lbl_8002E098
lbl_8002E074:
/* 8002E074 00029CD4  2C 00 00 02 */	cmpwi r0, 2
/* 8002E078 00029CD8  40 82 00 18 */	bne lbl_8002E090
/* 8002E07C 00029CDC  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002E080 00029CE0  FC 00 00 1E */	fctiwz f0, f0
/* 8002E084 00029CE4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E088 00029CE8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E08C 00029CEC  48 00 00 0C */	b lbl_8002E098
lbl_8002E090:
/* 8002E090 00029CF0  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E094 00029CF4  48 1F FC A1 */	bl func_8022DD34
lbl_8002E098:
/* 8002E098 00029CF8  38 80 00 01 */	li r4, 1
/* 8002E09C 00029CFC  38 00 00 00 */	li r0, 0
/* 8002E0A0 00029D00  B0 9E 00 00 */	sth r4, 0(r30)
/* 8002E0A4 00029D04  54 7B 06 3E */	clrlwi r27, r3, 0x18
/* 8002E0A8 00029D08  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E0AC 00029D0C  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002E0B0 00029D10  2C 00 00 01 */	cmpwi r0, 1
/* 8002E0B4 00029D14  40 82 00 0C */	bne lbl_8002E0C0
/* 8002E0B8 00029D18  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 8002E0BC 00029D1C  48 00 00 2C */	b lbl_8002E0E8
lbl_8002E0C0:
/* 8002E0C0 00029D20  2C 00 00 02 */	cmpwi r0, 2
/* 8002E0C4 00029D24  40 82 00 18 */	bne lbl_8002E0DC
/* 8002E0C8 00029D28  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002E0CC 00029D2C  FC 00 00 1E */	fctiwz f0, f0
/* 8002E0D0 00029D30  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E0D4 00029D34  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E0D8 00029D38  48 00 00 0C */	b lbl_8002E0E4
lbl_8002E0DC:
/* 8002E0DC 00029D3C  38 7D 00 08 */	addi r3, r29, 8
/* 8002E0E0 00029D40  48 1F FC 55 */	bl func_8022DD34
lbl_8002E0E4:
/* 8002E0E4 00029D44  7C 64 1B 78 */	mr r4, r3
lbl_8002E0E8:
/* 8002E0E8 00029D48  7F E3 FB 78 */	mr r3, r31
/* 8002E0EC 00029D4C  38 A0 00 06 */	li r5, 6
/* 8002E0F0 00029D50  48 00 80 2D */	bl func_8003611C
/* 8002E0F4 00029D54  A8 9D 00 08 */	lha r4, 8(r29)
/* 8002E0F8 00029D58  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8002E0FC 00029D5C  90 01 00 10 */	stw r0, 0x10(r1)
/* 8002E100 00029D60  2C 04 00 01 */	cmpwi r4, 1
/* 8002E104 00029D64  40 82 00 0C */	bne lbl_8002E110
/* 8002E108 00029D68  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 8002E10C 00029D6C  48 00 00 2C */	b lbl_8002E138
lbl_8002E110:
/* 8002E110 00029D70  2C 04 00 02 */	cmpwi r4, 2
/* 8002E114 00029D74  40 82 00 18 */	bne lbl_8002E12C
/* 8002E118 00029D78  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002E11C 00029D7C  FC 00 00 1E */	fctiwz f0, f0
/* 8002E120 00029D80  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E124 00029D84  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E128 00029D88  48 00 00 0C */	b lbl_8002E134
lbl_8002E12C:
/* 8002E12C 00029D8C  38 7D 00 08 */	addi r3, r29, 8
/* 8002E130 00029D90  48 1F FC 05 */	bl func_8022DD34
lbl_8002E134:
/* 8002E134 00029D94  7C 64 1B 78 */	mr r4, r3
lbl_8002E138:
/* 8002E138 00029D98  7F E3 FB 78 */	mr r3, r31
/* 8002E13C 00029D9C  38 A0 00 07 */	li r5, 7
/* 8002E140 00029DA0  48 00 7F DD */	bl func_8003611C
/* 8002E144 00029DA4  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8002E148 00029DA8  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8002E14C 00029DAC  90 61 00 14 */	stw r3, 0x14(r1)
/* 8002E150 00029DB0  2C 00 00 00 */	cmpwi r0, 0
/* 8002E154 00029DB4  40 82 00 18 */	bne lbl_8002E16C
/* 8002E158 00029DB8  2C 03 00 00 */	cmpwi r3, 0
/* 8002E15C 00029DBC  41 82 00 10 */	beq lbl_8002E16C
/* 8002E160 00029DC0  38 00 00 00 */	li r0, 0
/* 8002E164 00029DC4  90 61 00 10 */	stw r3, 0x10(r1)
/* 8002E168 00029DC8  90 01 00 14 */	stw r0, 0x14(r1)
lbl_8002E16C:
/* 8002E16C 00029DCC  28 1B 00 01 */	cmplwi r27, 1
/* 8002E170 00029DD0  41 81 1A EC */	bgt lbl_8002FC5C
/* 8002E174 00029DD4  57 60 15 BA */	rlwinm r0, r27, 2, 0x16, 0x1d
/* 8002E178 00029DD8  38 61 00 10 */	addi r3, r1, 0x10
/* 8002E17C 00029DDC  7C 63 00 2E */	lwzx r3, r3, r0
/* 8002E180 00029DE0  4B FF FC AD */	bl func_8002DE2C
/* 8002E184 00029DE4  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 8002E188 00029DE8  7C 7B 1B 78 */	mr r27, r3
/* 8002E18C 00029DEC  41 82 1A D0 */	beq lbl_8002FC5C
/* 8002E190 00029DF0  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 8002E194 00029DF4  2C 00 00 01 */	cmpwi r0, 1
/* 8002E198 00029DF8  40 82 00 20 */	bne lbl_8002E1B8
/* 8002E19C 00029DFC  80 1D 00 24 */	lwz r0, 0x24(r29)
/* 8002E1A0 00029E00  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E1A4 00029E04  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E1A8 00029E08  90 01 01 6C */	stw r0, 0x16c(r1)
/* 8002E1AC 00029E0C  C8 01 01 68 */	lfd f0, 0x168(r1)
/* 8002E1B0 00029E10  EF E0 08 28 */	fsubs f31, f0, f1
/* 8002E1B4 00029E14  48 00 00 20 */	b lbl_8002E1D4
lbl_8002E1B8:
/* 8002E1B8 00029E18  2C 00 00 02 */	cmpwi r0, 2
/* 8002E1BC 00029E1C  40 82 00 0C */	bne lbl_8002E1C8
/* 8002E1C0 00029E20  C0 3D 00 24 */	lfs f1, 0x24(r29)
/* 8002E1C4 00029E24  48 00 00 0C */	b lbl_8002E1D0
lbl_8002E1C8:
/* 8002E1C8 00029E28  38 7D 00 20 */	addi r3, r29, 0x20
/* 8002E1CC 00029E2C  48 1F FB AD */	bl func_8022DD78
lbl_8002E1D0:
/* 8002E1D0 00029E30  FF E0 08 90 */	fmr f31, f1
lbl_8002E1D4:
/* 8002E1D4 00029E34  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002E1D8 00029E38  2C 00 00 01 */	cmpwi r0, 1
/* 8002E1DC 00029E3C  40 82 00 20 */	bne lbl_8002E1FC
/* 8002E1E0 00029E40  80 1D 00 1C */	lwz r0, 0x1c(r29)
/* 8002E1E4 00029E44  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E1E8 00029E48  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E1EC 00029E4C  90 01 01 74 */	stw r0, 0x174(r1)
/* 8002E1F0 00029E50  C8 01 01 70 */	lfd f0, 0x170(r1)
/* 8002E1F4 00029E54  EC 40 08 28 */	fsubs f2, f0, f1
/* 8002E1F8 00029E58  48 00 00 20 */	b lbl_8002E218
lbl_8002E1FC:
/* 8002E1FC 00029E5C  2C 00 00 02 */	cmpwi r0, 2
/* 8002E200 00029E60  40 82 00 0C */	bne lbl_8002E20C
/* 8002E204 00029E64  C0 3D 00 1C */	lfs f1, 0x1c(r29)
/* 8002E208 00029E68  48 00 00 0C */	b lbl_8002E214
lbl_8002E20C:
/* 8002E20C 00029E6C  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002E210 00029E70  48 1F FB 69 */	bl func_8022DD78
lbl_8002E214:
/* 8002E214 00029E74  FC 40 08 90 */	fmr f2, f1
lbl_8002E218:
/* 8002E218 00029E78  FC 20 F8 90 */	fmr f1, f31
/* 8002E21C 00029E7C  57 63 04 3E */	clrlwi r3, r27, 0x10
/* 8002E220 00029E80  38 80 00 00 */	li r4, 0
/* 8002E224 00029E84  38 A0 00 00 */	li r5, 0
/* 8002E228 00029E88  38 C0 00 01 */	li r6, 1
/* 8002E22C 00029E8C  48 04 11 21 */	bl func_8006F34C
/* 8002E230 00029E90  38 00 00 01 */	li r0, 1
/* 8002E234 00029E94  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002E238 00029E98  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E23C 00029E9C  48 00 1A 20 */	b lbl_8002FC5C
/* 8002E240 00029EA0  38 60 00 01 */	li r3, 1
/* 8002E244 00029EA4  38 00 00 00 */	li r0, 0
/* 8002E248 00029EA8  B0 7E 00 00 */	sth r3, 0(r30)
/* 8002E24C 00029EAC  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E250 00029EB0  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E254 00029EB4  2C 00 00 01 */	cmpwi r0, 1
/* 8002E258 00029EB8  40 82 00 20 */	bne lbl_8002E278
/* 8002E25C 00029EBC  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8002E260 00029EC0  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E264 00029EC4  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E268 00029EC8  90 01 01 6C */	stw r0, 0x16c(r1)
/* 8002E26C 00029ECC  C8 01 01 68 */	lfd f0, 0x168(r1)
/* 8002E270 00029ED0  EF E0 08 28 */	fsubs f31, f0, f1
/* 8002E274 00029ED4  48 00 00 20 */	b lbl_8002E294
lbl_8002E278:
/* 8002E278 00029ED8  2C 00 00 02 */	cmpwi r0, 2
/* 8002E27C 00029EDC  40 82 00 0C */	bne lbl_8002E288
/* 8002E280 00029EE0  C0 3D 00 14 */	lfs f1, 0x14(r29)
/* 8002E284 00029EE4  48 00 00 0C */	b lbl_8002E290
lbl_8002E288:
/* 8002E288 00029EE8  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E28C 00029EEC  48 1F FA ED */	bl func_8022DD78
lbl_8002E290:
/* 8002E290 00029EF0  FF E0 08 90 */	fmr f31, f1
lbl_8002E294:
/* 8002E294 00029EF4  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002E298 00029EF8  2C 00 00 01 */	cmpwi r0, 1
/* 8002E29C 00029EFC  40 82 00 20 */	bne lbl_8002E2BC
/* 8002E2A0 00029F00  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8002E2A4 00029F04  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E2A8 00029F08  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E2AC 00029F0C  90 01 01 74 */	stw r0, 0x174(r1)
/* 8002E2B0 00029F10  C8 01 01 70 */	lfd f0, 0x170(r1)
/* 8002E2B4 00029F14  EC 40 08 28 */	fsubs f2, f0, f1
/* 8002E2B8 00029F18  48 00 00 20 */	b lbl_8002E2D8
lbl_8002E2BC:
/* 8002E2BC 00029F1C  2C 00 00 02 */	cmpwi r0, 2
/* 8002E2C0 00029F20  40 82 00 0C */	bne lbl_8002E2CC
/* 8002E2C4 00029F24  C0 3D 00 0C */	lfs f1, 0xc(r29)
/* 8002E2C8 00029F28  48 00 00 0C */	b lbl_8002E2D4
lbl_8002E2CC:
/* 8002E2CC 00029F2C  38 7D 00 08 */	addi r3, r29, 8
/* 8002E2D0 00029F30  48 1F FA A9 */	bl func_8022DD78
lbl_8002E2D4:
/* 8002E2D4 00029F34  FC 40 08 90 */	fmr f2, f1
lbl_8002E2D8:
/* 8002E2D8 00029F38  FC 20 F8 90 */	fmr f1, f31
/* 8002E2DC 00029F3C  38 60 27 E0 */	li r3, 0x27e0
/* 8002E2E0 00029F40  38 80 00 00 */	li r4, 0
/* 8002E2E4 00029F44  38 A0 00 00 */	li r5, 0
/* 8002E2E8 00029F48  38 C0 00 01 */	li r6, 1
/* 8002E2EC 00029F4C  48 04 10 61 */	bl func_8006F34C
/* 8002E2F0 00029F50  38 00 00 01 */	li r0, 1
/* 8002E2F4 00029F54  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002E2F8 00029F58  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E2FC 00029F5C  48 00 19 60 */	b lbl_8002FC5C
/* 8002E300 00029F60  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002E304 00029F64  2C 00 00 01 */	cmpwi r0, 1
/* 8002E308 00029F68  40 82 00 0C */	bne lbl_8002E314
/* 8002E30C 00029F6C  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002E310 00029F70  48 00 00 28 */	b lbl_8002E338
lbl_8002E314:
/* 8002E314 00029F74  2C 00 00 02 */	cmpwi r0, 2
/* 8002E318 00029F78  40 82 00 18 */	bne lbl_8002E330
/* 8002E31C 00029F7C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002E320 00029F80  FC 00 00 1E */	fctiwz f0, f0
/* 8002E324 00029F84  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E328 00029F88  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E32C 00029F8C  48 00 00 0C */	b lbl_8002E338
lbl_8002E330:
/* 8002E330 00029F90  38 7D 00 08 */	addi r3, r29, 8
/* 8002E334 00029F94  48 1F FA 01 */	bl func_8022DD34
lbl_8002E338:
/* 8002E338 00029F98  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E33C 00029F9C  7C 7A 1B 78 */	mr r26, r3
/* 8002E340 00029FA0  2C 00 00 01 */	cmpwi r0, 1
/* 8002E344 00029FA4  40 82 00 0C */	bne lbl_8002E350
/* 8002E348 00029FA8  83 7D 00 14 */	lwz r27, 0x14(r29)
/* 8002E34C 00029FAC  48 00 00 2C */	b lbl_8002E378
lbl_8002E350:
/* 8002E350 00029FB0  2C 00 00 02 */	cmpwi r0, 2
/* 8002E354 00029FB4  40 82 00 18 */	bne lbl_8002E36C
/* 8002E358 00029FB8  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002E35C 00029FBC  FC 00 00 1E */	fctiwz f0, f0
/* 8002E360 00029FC0  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E364 00029FC4  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E368 00029FC8  48 00 00 0C */	b lbl_8002E374
lbl_8002E36C:
/* 8002E36C 00029FCC  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E370 00029FD0  48 1F F9 C5 */	bl func_8022DD34
lbl_8002E374:
/* 8002E374 00029FD4  7C 7B 1B 78 */	mr r27, r3
lbl_8002E378:
/* 8002E378 00029FD8  38 00 00 01 */	li r0, 1
/* 8002E37C 00029FDC  3B 80 00 00 */	li r28, 0
/* 8002E380 00029FE0  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002E384 00029FE4  7F E3 FB 78 */	mr r3, r31
/* 8002E388 00029FE8  7F 44 D3 78 */	mr r4, r26
/* 8002E38C 00029FEC  38 A0 00 05 */	li r5, 5
/* 8002E390 00029FF0  93 9E 00 04 */	stw r28, 4(r30)
/* 8002E394 00029FF4  48 00 7D 89 */	bl func_8003611C
/* 8002E398 00029FF8  7C 1B 18 00 */	cmpw r27, r3
/* 8002E39C 00029FFC  40 80 18 C0 */	bge lbl_8002FC5C
/* 8002E3A0 0002A000  2C 1B 00 00 */	cmpwi r27, 0
/* 8002E3A4 0002A004  40 82 00 1C */	bne lbl_8002E3C0
/* 8002E3A8 0002A008  7F E3 FB 78 */	mr r3, r31
/* 8002E3AC 0002A00C  7F 44 D3 78 */	mr r4, r26
/* 8002E3B0 0002A010  38 A0 00 0D */	li r5, 0xd
/* 8002E3B4 0002A014  48 00 7D 69 */	bl func_8003611C
/* 8002E3B8 0002A018  54 7C 04 3E */	clrlwi r28, r3, 0x10
/* 8002E3BC 0002A01C  48 00 00 60 */	b lbl_8002E41C
lbl_8002E3C0:
/* 8002E3C0 0002A020  2C 1B 00 01 */	cmpwi r27, 1
/* 8002E3C4 0002A024  40 82 00 1C */	bne lbl_8002E3E0
/* 8002E3C8 0002A028  7F E3 FB 78 */	mr r3, r31
/* 8002E3CC 0002A02C  7F 44 D3 78 */	mr r4, r26
/* 8002E3D0 0002A030  38 A0 00 0E */	li r5, 0xe
/* 8002E3D4 0002A034  48 00 7D 49 */	bl func_8003611C
/* 8002E3D8 0002A038  54 7C 04 3E */	clrlwi r28, r3, 0x10
/* 8002E3DC 0002A03C  48 00 00 40 */	b lbl_8002E41C
lbl_8002E3E0:
/* 8002E3E0 0002A040  2C 1B 00 02 */	cmpwi r27, 2
/* 8002E3E4 0002A044  40 82 00 1C */	bne lbl_8002E400
/* 8002E3E8 0002A048  7F E3 FB 78 */	mr r3, r31
/* 8002E3EC 0002A04C  7F 44 D3 78 */	mr r4, r26
/* 8002E3F0 0002A050  38 A0 00 0F */	li r5, 0xf
/* 8002E3F4 0002A054  48 00 7D 29 */	bl func_8003611C
/* 8002E3F8 0002A058  54 7C 04 3E */	clrlwi r28, r3, 0x10
/* 8002E3FC 0002A05C  48 00 00 20 */	b lbl_8002E41C
lbl_8002E400:
/* 8002E400 0002A060  2C 1B 00 03 */	cmpwi r27, 3
/* 8002E404 0002A064  40 82 00 18 */	bne lbl_8002E41C
/* 8002E408 0002A068  7F E3 FB 78 */	mr r3, r31
/* 8002E40C 0002A06C  7F 44 D3 78 */	mr r4, r26
/* 8002E410 0002A070  38 A0 00 10 */	li r5, 0x10
/* 8002E414 0002A074  48 00 7D 09 */	bl func_8003611C
/* 8002E418 0002A078  54 7C 04 3E */	clrlwi r28, r3, 0x10
lbl_8002E41C:
/* 8002E41C 0002A07C  7F 83 E3 78 */	mr r3, r28
/* 8002E420 0002A080  4B FF FA 0D */	bl func_8002DE2C
/* 8002E424 0002A084  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 8002E428 0002A088  7C 7B 1B 78 */	mr r27, r3
/* 8002E42C 0002A08C  41 82 18 30 */	beq lbl_8002FC5C
/* 8002E430 0002A090  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 8002E434 0002A094  2C 00 00 01 */	cmpwi r0, 1
/* 8002E438 0002A098  40 82 00 20 */	bne lbl_8002E458
/* 8002E43C 0002A09C  80 1D 00 24 */	lwz r0, 0x24(r29)
/* 8002E440 0002A0A0  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E444 0002A0A4  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E448 0002A0A8  90 01 01 6C */	stw r0, 0x16c(r1)
/* 8002E44C 0002A0AC  C8 01 01 68 */	lfd f0, 0x168(r1)
/* 8002E450 0002A0B0  EF E0 08 28 */	fsubs f31, f0, f1
/* 8002E454 0002A0B4  48 00 00 20 */	b lbl_8002E474
lbl_8002E458:
/* 8002E458 0002A0B8  2C 00 00 02 */	cmpwi r0, 2
/* 8002E45C 0002A0BC  40 82 00 0C */	bne lbl_8002E468
/* 8002E460 0002A0C0  C0 3D 00 24 */	lfs f1, 0x24(r29)
/* 8002E464 0002A0C4  48 00 00 0C */	b lbl_8002E470
lbl_8002E468:
/* 8002E468 0002A0C8  38 7D 00 20 */	addi r3, r29, 0x20
/* 8002E46C 0002A0CC  48 1F F9 0D */	bl func_8022DD78
lbl_8002E470:
/* 8002E470 0002A0D0  FF E0 08 90 */	fmr f31, f1
lbl_8002E474:
/* 8002E474 0002A0D4  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002E478 0002A0D8  2C 00 00 01 */	cmpwi r0, 1
/* 8002E47C 0002A0DC  40 82 00 20 */	bne lbl_8002E49C
/* 8002E480 0002A0E0  80 1D 00 1C */	lwz r0, 0x1c(r29)
/* 8002E484 0002A0E4  C8 22 81 68 */	lfd f1, lbl_80640768-_SDA2_BASE_(r2)
/* 8002E488 0002A0E8  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002E48C 0002A0EC  90 01 01 74 */	stw r0, 0x174(r1)
/* 8002E490 0002A0F0  C8 01 01 70 */	lfd f0, 0x170(r1)
/* 8002E494 0002A0F4  EC 40 08 28 */	fsubs f2, f0, f1
/* 8002E498 0002A0F8  48 00 00 20 */	b lbl_8002E4B8
lbl_8002E49C:
/* 8002E49C 0002A0FC  2C 00 00 02 */	cmpwi r0, 2
/* 8002E4A0 0002A100  40 82 00 0C */	bne lbl_8002E4AC
/* 8002E4A4 0002A104  C0 3D 00 1C */	lfs f1, 0x1c(r29)
/* 8002E4A8 0002A108  48 00 00 0C */	b lbl_8002E4B4
lbl_8002E4AC:
/* 8002E4AC 0002A10C  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002E4B0 0002A110  48 1F F8 C9 */	bl func_8022DD78
lbl_8002E4B4:
/* 8002E4B4 0002A114  FC 40 08 90 */	fmr f2, f1
lbl_8002E4B8:
/* 8002E4B8 0002A118  FC 20 F8 90 */	fmr f1, f31
/* 8002E4BC 0002A11C  57 63 04 3E */	clrlwi r3, r27, 0x10
/* 8002E4C0 0002A120  38 80 00 00 */	li r4, 0
/* 8002E4C4 0002A124  38 A0 00 00 */	li r5, 0
/* 8002E4C8 0002A128  38 C0 00 01 */	li r6, 1
/* 8002E4CC 0002A12C  48 04 0E 81 */	bl func_8006F34C
/* 8002E4D0 0002A130  38 60 00 01 */	li r3, 1
/* 8002E4D4 0002A134  38 00 00 00 */	li r0, 0
/* 8002E4D8 0002A138  B0 7E 00 00 */	sth r3, 0(r30)
/* 8002E4DC 0002A13C  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E4E0 0002A140  48 00 17 7C */	b lbl_8002FC5C
/* 8002E4E4 0002A144  38 60 00 01 */	li r3, 1
/* 8002E4E8 0002A148  38 00 00 00 */	li r0, 0
/* 8002E4EC 0002A14C  B0 7E 00 00 */	sth r3, 0(r30)
/* 8002E4F0 0002A150  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E4F4 0002A154  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E4F8 0002A158  2C 00 00 01 */	cmpwi r0, 1
/* 8002E4FC 0002A15C  40 82 00 0C */	bne lbl_8002E508
/* 8002E500 0002A160  83 7D 00 14 */	lwz r27, 0x14(r29)
/* 8002E504 0002A164  48 00 00 2C */	b lbl_8002E530
lbl_8002E508:
/* 8002E508 0002A168  2C 00 00 02 */	cmpwi r0, 2
/* 8002E50C 0002A16C  40 82 00 18 */	bne lbl_8002E524
/* 8002E510 0002A170  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002E514 0002A174  FC 00 00 1E */	fctiwz f0, f0
/* 8002E518 0002A178  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E51C 0002A17C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E520 0002A180  48 00 00 0C */	b lbl_8002E52C
lbl_8002E524:
/* 8002E524 0002A184  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E528 0002A188  48 1F F8 0D */	bl func_8022DD34
lbl_8002E52C:
/* 8002E52C 0002A18C  7C 7B 1B 78 */	mr r27, r3
lbl_8002E530:
/* 8002E530 0002A190  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002E534 0002A194  2C 00 00 01 */	cmpwi r0, 1
/* 8002E538 0002A198  40 82 00 0C */	bne lbl_8002E544
/* 8002E53C 0002A19C  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 8002E540 0002A1A0  48 00 00 2C */	b lbl_8002E56C
lbl_8002E544:
/* 8002E544 0002A1A4  2C 00 00 02 */	cmpwi r0, 2
/* 8002E548 0002A1A8  40 82 00 18 */	bne lbl_8002E560
/* 8002E54C 0002A1AC  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002E550 0002A1B0  FC 00 00 1E */	fctiwz f0, f0
/* 8002E554 0002A1B4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E558 0002A1B8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E55C 0002A1BC  48 00 00 0C */	b lbl_8002E568
lbl_8002E560:
/* 8002E560 0002A1C0  38 7D 00 08 */	addi r3, r29, 8
/* 8002E564 0002A1C4  48 1F F7 D1 */	bl func_8022DD34
lbl_8002E568:
/* 8002E568 0002A1C8  7C 64 1B 78 */	mr r4, r3
lbl_8002E56C:
/* 8002E56C 0002A1CC  2C 1B 00 00 */	cmpwi r27, 0
/* 8002E570 0002A1D0  40 82 00 18 */	bne lbl_8002E588
/* 8002E574 0002A1D4  7F E3 FB 78 */	mr r3, r31
/* 8002E578 0002A1D8  38 A0 00 06 */	li r5, 6
/* 8002E57C 0002A1DC  48 00 7B A1 */	bl func_8003611C
/* 8002E580 0002A1E0  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8002E584 0002A1E4  48 00 00 14 */	b lbl_8002E598
lbl_8002E588:
/* 8002E588 0002A1E8  7F E3 FB 78 */	mr r3, r31
/* 8002E58C 0002A1EC  38 A0 00 07 */	li r5, 7
/* 8002E590 0002A1F0  48 00 7B 8D */	bl func_8003611C
/* 8002E594 0002A1F4  54 63 04 3E */	clrlwi r3, r3, 0x10
lbl_8002E598:
/* 8002E598 0002A1F8  4B FF F8 95 */	bl func_8002DE2C
/* 8002E59C 0002A1FC  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 8002E5A0 0002A200  7C 7B 1B 78 */	mr r27, r3
/* 8002E5A4 0002A204  41 82 16 B8 */	beq lbl_8002FC5C
/* 8002E5A8 0002A208  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002E5AC 0002A20C  2C 00 00 01 */	cmpwi r0, 1
/* 8002E5B0 0002A210  40 82 00 0C */	bne lbl_8002E5BC
/* 8002E5B4 0002A214  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002E5B8 0002A218  48 00 00 28 */	b lbl_8002E5E0
lbl_8002E5BC:
/* 8002E5BC 0002A21C  2C 00 00 02 */	cmpwi r0, 2
/* 8002E5C0 0002A220  40 82 00 18 */	bne lbl_8002E5D8
/* 8002E5C4 0002A224  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 8002E5C8 0002A228  FC 00 00 1E */	fctiwz f0, f0
/* 8002E5CC 0002A22C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E5D0 0002A230  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E5D4 0002A234  48 00 00 0C */	b lbl_8002E5E0
lbl_8002E5D8:
/* 8002E5D8 0002A238  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002E5DC 0002A23C  48 1F F7 59 */	bl func_8022DD34
lbl_8002E5E0:
/* 8002E5E0 0002A240  C0 22 81 50 */	lfs f1, lbl_80640750-_SDA2_BASE_(r2)
/* 8002E5E4 0002A244  7C 03 00 D0 */	neg r0, r3
/* 8002E5E8 0002A248  7C 00 1B 78 */	or r0, r0, r3
/* 8002E5EC 0002A24C  57 63 04 3E */	clrlwi r3, r27, 0x10
/* 8002E5F0 0002A250  FC 40 08 90 */	fmr f2, f1
/* 8002E5F4 0002A254  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8002E5F8 0002A258  38 A0 00 00 */	li r5, 0
/* 8002E5FC 0002A25C  38 C0 00 00 */	li r6, 0
/* 8002E600 0002A260  48 04 0D 4D */	bl func_8006F34C
/* 8002E604 0002A264  38 00 00 01 */	li r0, 1
/* 8002E608 0002A268  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002E60C 0002A26C  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E610 0002A270  48 00 16 4C */	b lbl_8002FC5C
/* 8002E614 0002A274  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002E618 0002A278  2C 00 00 01 */	cmpwi r0, 1
/* 8002E61C 0002A27C  40 82 00 0C */	bne lbl_8002E628
/* 8002E620 0002A280  83 5D 00 0C */	lwz r26, 0xc(r29)
/* 8002E624 0002A284  48 00 00 2C */	b lbl_8002E650
lbl_8002E628:
/* 8002E628 0002A288  2C 00 00 02 */	cmpwi r0, 2
/* 8002E62C 0002A28C  40 82 00 18 */	bne lbl_8002E644
/* 8002E630 0002A290  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002E634 0002A294  FC 00 00 1E */	fctiwz f0, f0
/* 8002E638 0002A298  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E63C 0002A29C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E640 0002A2A0  48 00 00 0C */	b lbl_8002E64C
lbl_8002E644:
/* 8002E644 0002A2A4  38 7D 00 08 */	addi r3, r29, 8
/* 8002E648 0002A2A8  48 1F F6 ED */	bl func_8022DD34
lbl_8002E64C:
/* 8002E64C 0002A2AC  7C 7A 1B 78 */	mr r26, r3
lbl_8002E650:
/* 8002E650 0002A2B0  7F E3 FB 78 */	mr r3, r31
/* 8002E654 0002A2B4  7F 44 D3 78 */	mr r4, r26
/* 8002E658 0002A2B8  38 A0 00 00 */	li r5, 0
/* 8002E65C 0002A2BC  48 00 7A C1 */	bl func_8003611C
/* 8002E660 0002A2C0  7C 7E 1B 78 */	mr r30, r3
/* 8002E664 0002A2C4  7F E3 FB 78 */	mr r3, r31
/* 8002E668 0002A2C8  7F 44 D3 78 */	mr r4, r26
/* 8002E66C 0002A2CC  38 A0 00 01 */	li r5, 1
/* 8002E670 0002A2D0  48 00 7A AD */	bl func_8003611C
/* 8002E674 0002A2D4  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E678 0002A2D8  7C 79 1B 78 */	mr r25, r3
/* 8002E67C 0002A2DC  2C 00 00 04 */	cmpwi r0, 4
/* 8002E680 0002A2E0  40 82 00 34 */	bne lbl_8002E6B4
/* 8002E684 0002A2E4  40 82 00 0C */	bne lbl_8002E690
/* 8002E688 0002A2E8  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002E68C 0002A2EC  48 00 00 0C */	b lbl_8002E698
lbl_8002E690:
/* 8002E690 0002A2F0  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E694 0002A2F4  4B FF 9C 4D */	bl func_800282E0
lbl_8002E698:
/* 8002E698 0002A2F8  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002E69C 0002A2FC  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002E6A0 0002A300  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002E6A4 0002A304  D0 41 01 5C */	stfs f2, 0x15c(r1)
/* 8002E6A8 0002A308  D0 21 01 60 */	stfs f1, 0x160(r1)
/* 8002E6AC 0002A30C  D0 01 01 64 */	stfs f0, 0x164(r1)
/* 8002E6B0 0002A310  48 00 00 14 */	b lbl_8002E6C4
lbl_8002E6B4:
/* 8002E6B4 0002A314  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002E6B8 0002A318  D0 01 01 5C */	stfs f0, 0x15c(r1)
/* 8002E6BC 0002A31C  D0 01 01 60 */	stfs f0, 0x160(r1)
/* 8002E6C0 0002A320  D0 01 01 64 */	stfs f0, 0x164(r1)
lbl_8002E6C4:
/* 8002E6C4 0002A324  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002E6C8 0002A328  2C 00 00 04 */	cmpwi r0, 4
/* 8002E6CC 0002A32C  40 82 00 44 */	bne lbl_8002E710
/* 8002E6D0 0002A330  40 82 00 0C */	bne lbl_8002E6DC
/* 8002E6D4 0002A334  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002E6D8 0002A338  48 00 00 0C */	b lbl_8002E6E4
lbl_8002E6DC:
/* 8002E6DC 0002A33C  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002E6E0 0002A340  4B FF 9C 01 */	bl func_800282E0
lbl_8002E6E4:
/* 8002E6E4 0002A344  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002E6E8 0002A348  C0 22 81 54 */	lfs f1, lbl_80640754-_SDA2_BASE_(r2)
/* 8002E6EC 0002A34C  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002E6F0 0002A350  EC 41 00 B2 */	fmuls f2, f1, f2
/* 8002E6F4 0002A354  C0 63 00 04 */	lfs f3, 4(r3)
/* 8002E6F8 0002A358  EC 01 00 32 */	fmuls f0, f1, f0
/* 8002E6FC 0002A35C  EC 21 00 F2 */	fmuls f1, f1, f3
/* 8002E700 0002A360  D0 41 01 50 */	stfs f2, 0x150(r1)
/* 8002E704 0002A364  D0 21 01 54 */	stfs f1, 0x154(r1)
/* 8002E708 0002A368  D0 01 01 58 */	stfs f0, 0x158(r1)
/* 8002E70C 0002A36C  48 00 00 14 */	b lbl_8002E720
lbl_8002E710:
/* 8002E710 0002A370  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002E714 0002A374  D0 01 01 50 */	stfs f0, 0x150(r1)
/* 8002E718 0002A378  D0 01 01 54 */	stfs f0, 0x154(r1)
/* 8002E71C 0002A37C  D0 01 01 58 */	stfs f0, 0x158(r1)
lbl_8002E720:
/* 8002E720 0002A380  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 8002E724 0002A384  2C 00 00 04 */	cmpwi r0, 4
/* 8002E728 0002A388  40 82 00 34 */	bne lbl_8002E75C
/* 8002E72C 0002A38C  40 82 00 0C */	bne lbl_8002E738
/* 8002E730 0002A390  80 7D 00 24 */	lwz r3, 0x24(r29)
/* 8002E734 0002A394  48 00 00 0C */	b lbl_8002E740
lbl_8002E738:
/* 8002E738 0002A398  38 7D 00 20 */	addi r3, r29, 0x20
/* 8002E73C 0002A39C  4B FF 9B A5 */	bl func_800282E0
lbl_8002E740:
/* 8002E740 0002A3A0  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002E744 0002A3A4  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002E748 0002A3A8  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002E74C 0002A3AC  D0 41 01 44 */	stfs f2, 0x144(r1)
/* 8002E750 0002A3B0  D0 21 01 48 */	stfs f1, 0x148(r1)
/* 8002E754 0002A3B4  D0 01 01 4C */	stfs f0, 0x14c(r1)
/* 8002E758 0002A3B8  48 00 00 14 */	b lbl_8002E76C
lbl_8002E75C:
/* 8002E75C 0002A3BC  C0 02 81 58 */	lfs f0, lbl_80640758-_SDA2_BASE_(r2)
/* 8002E760 0002A3C0  D0 01 01 44 */	stfs f0, 0x144(r1)
/* 8002E764 0002A3C4  D0 01 01 48 */	stfs f0, 0x148(r1)
/* 8002E768 0002A3C8  D0 01 01 4C */	stfs f0, 0x14c(r1)
lbl_8002E76C:
/* 8002E76C 0002A3CC  7F E3 FB 78 */	mr r3, r31
/* 8002E770 0002A3D0  7F 44 D3 78 */	mr r4, r26
/* 8002E774 0002A3D4  38 A0 00 02 */	li r5, 2
/* 8002E778 0002A3D8  48 00 79 A5 */	bl func_8003611C
/* 8002E77C 0002A3DC  7C 7D 1B 78 */	mr r29, r3
/* 8002E780 0002A3E0  7F E3 FB 78 */	mr r3, r31
/* 8002E784 0002A3E4  7F 44 D3 78 */	mr r4, r26
/* 8002E788 0002A3E8  38 A0 00 03 */	li r5, 3
/* 8002E78C 0002A3EC  48 00 79 91 */	bl func_8003611C
/* 8002E790 0002A3F0  2C 19 00 00 */	cmpwi r25, 0
/* 8002E794 0002A3F4  7C 7C 1B 78 */	mr r28, r3
/* 8002E798 0002A3F8  41 80 00 0C */	blt lbl_8002E7A4
/* 8002E79C 0002A3FC  2C 19 00 12 */	cmpwi r25, 0x12
/* 8002E7A0 0002A400  40 81 00 0C */	ble lbl_8002E7AC
lbl_8002E7A4:
/* 8002E7A4 0002A404  2C 19 00 20 */	cmpwi r25, 0x20
/* 8002E7A8 0002A408  40 82 14 B4 */	bne lbl_8002FC5C
lbl_8002E7AC:
/* 8002E7AC 0002A40C  2C 1D 00 00 */	cmpwi r29, 0
/* 8002E7B0 0002A410  41 82 00 80 */	beq lbl_8002E830
/* 8002E7B4 0002A414  C0 A1 01 44 */	lfs f5, 0x144(r1)
/* 8002E7B8 0002A418  7F E3 FB 78 */	mr r3, r31
/* 8002E7BC 0002A41C  C0 81 01 48 */	lfs f4, 0x148(r1)
/* 8002E7C0 0002A420  7F 44 D3 78 */	mr r4, r26
/* 8002E7C4 0002A424  C0 61 01 4C */	lfs f3, 0x14c(r1)
/* 8002E7C8 0002A428  38 A0 00 04 */	li r5, 4
/* 8002E7CC 0002A42C  C0 41 01 50 */	lfs f2, 0x150(r1)
/* 8002E7D0 0002A430  C0 21 01 54 */	lfs f1, 0x154(r1)
/* 8002E7D4 0002A434  C0 01 01 58 */	lfs f0, 0x158(r1)
/* 8002E7D8 0002A438  D0 A1 01 2C */	stfs f5, 0x12c(r1)
/* 8002E7DC 0002A43C  D0 81 01 30 */	stfs f4, 0x130(r1)
/* 8002E7E0 0002A440  D0 61 01 34 */	stfs f3, 0x134(r1)
/* 8002E7E4 0002A444  D0 41 01 38 */	stfs f2, 0x138(r1)
/* 8002E7E8 0002A448  D0 21 01 3C */	stfs f1, 0x13c(r1)
/* 8002E7EC 0002A44C  D0 01 01 40 */	stfs f0, 0x140(r1)
/* 8002E7F0 0002A450  48 00 79 2D */	bl func_8003611C
/* 8002E7F4 0002A454  7C 7B 1B 78 */	mr r27, r3
/* 8002E7F8 0002A458  7F E3 FB 78 */	mr r3, r31
/* 8002E7FC 0002A45C  7F 44 D3 78 */	mr r4, r26
/* 8002E800 0002A460  38 A0 00 03 */	li r5, 3
/* 8002E804 0002A464  48 00 79 19 */	bl func_8003611C
/* 8002E808 0002A468  C0 21 01 5C */	lfs f1, 0x15c(r1)
/* 8002E80C 0002A46C  7C 64 1B 78 */	mr r4, r3
/* 8002E810 0002A470  C0 41 01 60 */	lfs f2, 0x160(r1)
/* 8002E814 0002A474  7F A5 EB 78 */	mr r5, r29
/* 8002E818 0002A478  7F 66 DB 78 */	mr r6, r27
/* 8002E81C 0002A47C  7F C7 F3 78 */	mr r7, r30
/* 8002E820 0002A480  7F 28 CB 78 */	mr r8, r25
/* 8002E824 0002A484  38 61 01 38 */	addi r3, r1, 0x138
/* 8002E828 0002A488  39 21 01 2C */	addi r9, r1, 0x12c
/* 8002E82C 0002A48C  48 04 0E 1D */	bl func_8006F648
lbl_8002E830:
/* 8002E830 0002A490  7F E3 FB 78 */	mr r3, r31
/* 8002E834 0002A494  7F 44 D3 78 */	mr r4, r26
/* 8002E838 0002A498  57 86 04 3E */	clrlwi r6, r28, 0x10
/* 8002E83C 0002A49C  38 A0 00 02 */	li r5, 2
/* 8002E840 0002A4A0  48 00 7A C9 */	bl func_80036308
/* 8002E844 0002A4A4  48 00 14 18 */	b lbl_8002FC5C
/* 8002E848 0002A4A8  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002E84C 0002A4AC  2C 00 00 01 */	cmpwi r0, 1
/* 8002E850 0002A4B0  40 82 00 0C */	bne lbl_8002E85C
/* 8002E854 0002A4B4  83 3D 00 0C */	lwz r25, 0xc(r29)
/* 8002E858 0002A4B8  48 00 00 2C */	b lbl_8002E884
lbl_8002E85C:
/* 8002E85C 0002A4BC  2C 00 00 02 */	cmpwi r0, 2
/* 8002E860 0002A4C0  40 82 00 18 */	bne lbl_8002E878
/* 8002E864 0002A4C4  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002E868 0002A4C8  FC 00 00 1E */	fctiwz f0, f0
/* 8002E86C 0002A4CC  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002E870 0002A4D0  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002E874 0002A4D4  48 00 00 0C */	b lbl_8002E880
lbl_8002E878:
/* 8002E878 0002A4D8  38 7D 00 08 */	addi r3, r29, 8
/* 8002E87C 0002A4DC  48 1F F4 B9 */	bl func_8022DD34
lbl_8002E880:
/* 8002E880 0002A4E0  7C 79 1B 78 */	mr r25, r3
lbl_8002E884:
/* 8002E884 0002A4E4  7F E3 FB 78 */	mr r3, r31
/* 8002E888 0002A4E8  7F 24 CB 78 */	mr r4, r25
/* 8002E88C 0002A4EC  38 A0 00 00 */	li r5, 0
/* 8002E890 0002A4F0  48 00 7B 89 */	bl func_80036418
/* 8002E894 0002A4F4  7C 7A 1B 78 */	mr r26, r3
/* 8002E898 0002A4F8  7F E3 FB 78 */	mr r3, r31
/* 8002E89C 0002A4FC  7F 24 CB 78 */	mr r4, r25
/* 8002E8A0 0002A500  38 A0 00 09 */	li r5, 9
/* 8002E8A4 0002A504  48 00 7B 75 */	bl func_80036418
/* 8002E8A8 0002A508  38 80 00 01 */	li r4, 1
/* 8002E8AC 0002A50C  38 00 00 00 */	li r0, 0
/* 8002E8B0 0002A510  B0 9E 00 00 */	sth r4, 0(r30)
/* 8002E8B4 0002A514  7C 7B 1B 78 */	mr r27, r3
/* 8002E8B8 0002A518  90 1E 00 04 */	stw r0, 4(r30)
/* 8002E8BC 0002A51C  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002E8C0 0002A520  2C 00 00 04 */	cmpwi r0, 4
/* 8002E8C4 0002A524  40 82 00 34 */	bne lbl_8002E8F8
/* 8002E8C8 0002A528  40 82 00 0C */	bne lbl_8002E8D4
/* 8002E8CC 0002A52C  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002E8D0 0002A530  48 00 00 0C */	b lbl_8002E8DC
lbl_8002E8D4:
/* 8002E8D4 0002A534  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002E8D8 0002A538  4B FF 9A 09 */	bl func_800282E0
lbl_8002E8DC:
/* 8002E8DC 0002A53C  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002E8E0 0002A540  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002E8E4 0002A544  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002E8E8 0002A548  D0 41 01 5C */	stfs f2, 0x15c(r1)
/* 8002E8EC 0002A54C  D0 21 01 60 */	stfs f1, 0x160(r1)
/* 8002E8F0 0002A550  D0 01 01 64 */	stfs f0, 0x164(r1)
/* 8002E8F4 0002A554  48 00 00 14 */	b lbl_8002E908
lbl_8002E8F8:
/* 8002E8F8 0002A558  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002E8FC 0002A55C  D0 01 01 5C */	stfs f0, 0x15c(r1)
/* 8002E900 0002A560  D0 01 01 60 */	stfs f0, 0x160(r1)
/* 8002E904 0002A564  D0 01 01 64 */	stfs f0, 0x164(r1)
lbl_8002E908:
/* 8002E908 0002A568  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002E90C 0002A56C  2C 00 00 04 */	cmpwi r0, 4
/* 8002E910 0002A570  40 82 00 44 */	bne lbl_8002E954
/* 8002E914 0002A574  40 82 00 0C */	bne lbl_8002E920
/* 8002E918 0002A578  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002E91C 0002A57C  48 00 00 0C */	b lbl_8002E928
lbl_8002E920:
/* 8002E920 0002A580  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002E924 0002A584  4B FF 99 BD */	bl func_800282E0
lbl_8002E928:
/* 8002E928 0002A588  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002E92C 0002A58C  C0 22 81 54 */	lfs f1, lbl_80640754-_SDA2_BASE_(r2)
/* 8002E930 0002A590  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002E934 0002A594  EC 41 00 B2 */	fmuls f2, f1, f2
/* 8002E938 0002A598  C0 63 00 04 */	lfs f3, 4(r3)
/* 8002E93C 0002A59C  EC 01 00 32 */	fmuls f0, f1, f0
/* 8002E940 0002A5A0  EC 21 00 F2 */	fmuls f1, f1, f3
/* 8002E944 0002A5A4  D0 41 01 50 */	stfs f2, 0x150(r1)
/* 8002E948 0002A5A8  D0 21 01 54 */	stfs f1, 0x154(r1)
/* 8002E94C 0002A5AC  D0 01 01 58 */	stfs f0, 0x158(r1)
/* 8002E950 0002A5B0  48 00 00 14 */	b lbl_8002E964
lbl_8002E954:
/* 8002E954 0002A5B4  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002E958 0002A5B8  D0 01 01 50 */	stfs f0, 0x150(r1)
/* 8002E95C 0002A5BC  D0 01 01 54 */	stfs f0, 0x154(r1)
/* 8002E960 0002A5C0  D0 01 01 58 */	stfs f0, 0x158(r1)
lbl_8002E964:
/* 8002E964 0002A5C4  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 8002E968 0002A5C8  2C 00 00 04 */	cmpwi r0, 4
/* 8002E96C 0002A5CC  40 82 00 34 */	bne lbl_8002E9A0
/* 8002E970 0002A5D0  40 82 00 0C */	bne lbl_8002E97C
/* 8002E974 0002A5D4  80 7D 00 24 */	lwz r3, 0x24(r29)
/* 8002E978 0002A5D8  48 00 00 0C */	b lbl_8002E984
lbl_8002E97C:
/* 8002E97C 0002A5DC  38 7D 00 20 */	addi r3, r29, 0x20
/* 8002E980 0002A5E0  4B FF 99 61 */	bl func_800282E0
lbl_8002E984:
/* 8002E984 0002A5E4  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002E988 0002A5E8  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002E98C 0002A5EC  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002E990 0002A5F0  D0 41 01 44 */	stfs f2, 0x144(r1)
/* 8002E994 0002A5F4  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 8002E998 0002A5F8  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 8002E99C 0002A5FC  48 00 00 14 */	b lbl_8002E9B0
lbl_8002E9A0:
/* 8002E9A0 0002A600  C0 02 81 58 */	lfs f0, lbl_80640758-_SDA2_BASE_(r2)
/* 8002E9A4 0002A604  D0 01 00 30 */	stfs f0, 0x30(r1)
/* 8002E9A8 0002A608  D0 01 00 40 */	stfs f0, 0x40(r1)
/* 8002E9AC 0002A60C  D0 01 00 50 */	stfs f0, 0x50(r1)
lbl_8002E9B0:
/* 8002E9B0 0002A610  7F E3 FB 78 */	mr r3, r31
/* 8002E9B4 0002A614  7F 24 CB 78 */	mr r4, r25
/* 8002E9B8 0002A618  38 A0 00 07 */	li r5, 7
/* 8002E9BC 0002A61C  48 00 7A 5D */	bl func_80036418
/* 8002E9C0 0002A620  7C 7C 1B 78 */	mr r28, r3
/* 8002E9C4 0002A624  7F E3 FB 78 */	mr r3, r31
/* 8002E9C8 0002A628  7F 24 CB 78 */	mr r4, r25
/* 8002E9CC 0002A62C  38 A0 00 06 */	li r5, 6
/* 8002E9D0 0002A630  48 00 7A 49 */	bl func_80036418
/* 8002E9D4 0002A634  7C 7D 1B 78 */	mr r29, r3
/* 8002E9D8 0002A638  7F E3 FB 78 */	mr r3, r31
/* 8002E9DC 0002A63C  7F 24 CB 78 */	mr r4, r25
/* 8002E9E0 0002A640  38 A0 00 02 */	li r5, 2
/* 8002E9E4 0002A644  48 00 7A 35 */	bl func_80036418
/* 8002E9E8 0002A648  2C 03 00 01 */	cmpwi r3, 1
/* 8002E9EC 0002A64C  41 82 00 0C */	beq lbl_8002E9F8
/* 8002E9F0 0002A650  2C 03 00 03 */	cmpwi r3, 3
/* 8002E9F4 0002A654  40 82 12 68 */	bne lbl_8002FC5C
lbl_8002E9F8:
/* 8002E9F8 0002A658  2C 1D 00 00 */	cmpwi r29, 0
/* 8002E9FC 0002A65C  41 82 00 70 */	beq lbl_8002EA6C
/* 8002EA00 0002A660  38 00 00 01 */	li r0, 1
/* 8002EA04 0002A664  C0 62 81 58 */	lfs f3, lbl_80640758-_SDA2_BASE_(r2)
/* 8002EA08 0002A668  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002EA0C 0002A66C  7F E3 FB 78 */	mr r3, r31
/* 8002EA10 0002A670  C0 41 01 50 */	lfs f2, 0x150(r1)
/* 8002EA14 0002A674  7F 24 CB 78 */	mr r4, r25
/* 8002EA18 0002A678  90 1E 00 04 */	stw r0, 4(r30)
/* 8002EA1C 0002A67C  38 A0 00 08 */	li r5, 8
/* 8002EA20 0002A680  C0 21 01 54 */	lfs f1, 0x154(r1)
/* 8002EA24 0002A684  C0 01 01 58 */	lfs f0, 0x158(r1)
/* 8002EA28 0002A688  D0 61 01 14 */	stfs f3, 0x114(r1)
/* 8002EA2C 0002A68C  D0 61 01 18 */	stfs f3, 0x118(r1)
/* 8002EA30 0002A690  D0 61 01 1C */	stfs f3, 0x11c(r1)
/* 8002EA34 0002A694  D0 41 01 20 */	stfs f2, 0x120(r1)
/* 8002EA38 0002A698  D0 21 01 24 */	stfs f1, 0x124(r1)
/* 8002EA3C 0002A69C  D0 01 01 28 */	stfs f0, 0x128(r1)
/* 8002EA40 0002A6A0  48 00 79 D9 */	bl func_80036418
/* 8002EA44 0002A6A4  C0 21 01 5C */	lfs f1, 0x15c(r1)
/* 8002EA48 0002A6A8  7C 66 1B 78 */	mr r6, r3
/* 8002EA4C 0002A6AC  C0 41 01 60 */	lfs f2, 0x160(r1)
/* 8002EA50 0002A6B0  7F 84 E3 78 */	mr r4, r28
/* 8002EA54 0002A6B4  7F A5 EB 78 */	mr r5, r29
/* 8002EA58 0002A6B8  7F 47 D3 78 */	mr r7, r26
/* 8002EA5C 0002A6BC  7F 68 DB 78 */	mr r8, r27
/* 8002EA60 0002A6C0  38 61 01 20 */	addi r3, r1, 0x120
/* 8002EA64 0002A6C4  39 21 01 14 */	addi r9, r1, 0x114
/* 8002EA68 0002A6C8  48 04 0B E1 */	bl func_8006F648
lbl_8002EA6C:
/* 8002EA6C 0002A6CC  3B 20 00 00 */	li r25, 0
lbl_8002EA70:
/* 8002EA70 0002A6D0  7F E3 FB 78 */	mr r3, r31
/* 8002EA74 0002A6D4  7F 24 CB 78 */	mr r4, r25
/* 8002EA78 0002A6D8  38 A0 00 00 */	li r5, 0
/* 8002EA7C 0002A6DC  48 00 76 A1 */	bl func_8003611C
/* 8002EA80 0002A6E0  7C 1A 18 00 */	cmpw r26, r3
/* 8002EA84 0002A6E4  40 82 00 1C */	bne lbl_8002EAA0
/* 8002EA88 0002A6E8  7F E3 FB 78 */	mr r3, r31
/* 8002EA8C 0002A6EC  7F 24 CB 78 */	mr r4, r25
/* 8002EA90 0002A6F0  7F 86 E3 78 */	mr r6, r28
/* 8002EA94 0002A6F4  38 A0 00 02 */	li r5, 2
/* 8002EA98 0002A6F8  48 00 78 71 */	bl func_80036308
/* 8002EA9C 0002A6FC  48 00 11 C0 */	b lbl_8002FC5C
lbl_8002EAA0:
/* 8002EAA0 0002A700  3B 39 00 01 */	addi r25, r25, 1
/* 8002EAA4 0002A704  2C 19 00 04 */	cmpwi r25, 4
/* 8002EAA8 0002A708  41 80 FF C8 */	blt lbl_8002EA70
/* 8002EAAC 0002A70C  48 00 11 B0 */	b lbl_8002FC5C
/* 8002EAB0 0002A710  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002EAB4 0002A714  2C 00 00 01 */	cmpwi r0, 1
/* 8002EAB8 0002A718  40 82 00 0C */	bne lbl_8002EAC4
/* 8002EABC 0002A71C  83 3D 00 0C */	lwz r25, 0xc(r29)
/* 8002EAC0 0002A720  48 00 00 2C */	b lbl_8002EAEC
lbl_8002EAC4:
/* 8002EAC4 0002A724  2C 00 00 02 */	cmpwi r0, 2
/* 8002EAC8 0002A728  40 82 00 18 */	bne lbl_8002EAE0
/* 8002EACC 0002A72C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002EAD0 0002A730  FC 00 00 1E */	fctiwz f0, f0
/* 8002EAD4 0002A734  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EAD8 0002A738  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EADC 0002A73C  48 00 00 0C */	b lbl_8002EAE8
lbl_8002EAE0:
/* 8002EAE0 0002A740  38 7D 00 08 */	addi r3, r29, 8
/* 8002EAE4 0002A744  48 1F F2 51 */	bl func_8022DD34
lbl_8002EAE8:
/* 8002EAE8 0002A748  7C 79 1B 78 */	mr r25, r3
lbl_8002EAEC:
/* 8002EAEC 0002A74C  7F E3 FB 78 */	mr r3, r31
/* 8002EAF0 0002A750  7F 24 CB 78 */	mr r4, r25
/* 8002EAF4 0002A754  38 A0 00 00 */	li r5, 0
/* 8002EAF8 0002A758  48 00 76 25 */	bl func_8003611C
/* 8002EAFC 0002A75C  7C 7A 1B 78 */	mr r26, r3
/* 8002EB00 0002A760  7F E3 FB 78 */	mr r3, r31
/* 8002EB04 0002A764  7F 24 CB 78 */	mr r4, r25
/* 8002EB08 0002A768  38 A0 00 01 */	li r5, 1
/* 8002EB0C 0002A76C  48 00 76 11 */	bl func_8003611C
/* 8002EB10 0002A770  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002EB14 0002A774  7C 7C 1B 78 */	mr r28, r3
/* 8002EB18 0002A778  2C 00 00 04 */	cmpwi r0, 4
/* 8002EB1C 0002A77C  40 82 00 34 */	bne lbl_8002EB50
/* 8002EB20 0002A780  40 82 00 0C */	bne lbl_8002EB2C
/* 8002EB24 0002A784  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002EB28 0002A788  48 00 00 0C */	b lbl_8002EB34
lbl_8002EB2C:
/* 8002EB2C 0002A78C  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002EB30 0002A790  4B FF 97 B1 */	bl func_800282E0
lbl_8002EB34:
/* 8002EB34 0002A794  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002EB38 0002A798  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002EB3C 0002A79C  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002EB40 0002A7A0  D0 41 01 5C */	stfs f2, 0x15c(r1)
/* 8002EB44 0002A7A4  D0 21 01 60 */	stfs f1, 0x160(r1)
/* 8002EB48 0002A7A8  D0 01 01 64 */	stfs f0, 0x164(r1)
/* 8002EB4C 0002A7AC  48 00 00 14 */	b lbl_8002EB60
lbl_8002EB50:
/* 8002EB50 0002A7B0  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002EB54 0002A7B4  D0 01 01 5C */	stfs f0, 0x15c(r1)
/* 8002EB58 0002A7B8  D0 01 01 60 */	stfs f0, 0x160(r1)
/* 8002EB5C 0002A7BC  D0 01 01 64 */	stfs f0, 0x164(r1)
lbl_8002EB60:
/* 8002EB60 0002A7C0  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 8002EB64 0002A7C4  2C 00 00 04 */	cmpwi r0, 4
/* 8002EB68 0002A7C8  40 82 00 44 */	bne lbl_8002EBAC
/* 8002EB6C 0002A7CC  40 82 00 0C */	bne lbl_8002EB78
/* 8002EB70 0002A7D0  80 7D 00 24 */	lwz r3, 0x24(r29)
/* 8002EB74 0002A7D4  48 00 00 0C */	b lbl_8002EB80
lbl_8002EB78:
/* 8002EB78 0002A7D8  38 7D 00 20 */	addi r3, r29, 0x20
/* 8002EB7C 0002A7DC  4B FF 97 65 */	bl func_800282E0
lbl_8002EB80:
/* 8002EB80 0002A7E0  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002EB84 0002A7E4  C0 22 81 54 */	lfs f1, lbl_80640754-_SDA2_BASE_(r2)
/* 8002EB88 0002A7E8  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002EB8C 0002A7EC  EC 41 00 B2 */	fmuls f2, f1, f2
/* 8002EB90 0002A7F0  C0 63 00 04 */	lfs f3, 4(r3)
/* 8002EB94 0002A7F4  EC 01 00 32 */	fmuls f0, f1, f0
/* 8002EB98 0002A7F8  EC 21 00 F2 */	fmuls f1, f1, f3
/* 8002EB9C 0002A7FC  D0 41 01 50 */	stfs f2, 0x150(r1)
/* 8002EBA0 0002A800  D0 21 01 54 */	stfs f1, 0x154(r1)
/* 8002EBA4 0002A804  D0 01 01 58 */	stfs f0, 0x158(r1)
/* 8002EBA8 0002A808  48 00 00 14 */	b lbl_8002EBBC
lbl_8002EBAC:
/* 8002EBAC 0002A80C  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002EBB0 0002A810  D0 01 01 50 */	stfs f0, 0x150(r1)
/* 8002EBB4 0002A814  D0 01 01 54 */	stfs f0, 0x154(r1)
/* 8002EBB8 0002A818  D0 01 01 58 */	stfs f0, 0x158(r1)
lbl_8002EBBC:
/* 8002EBBC 0002A81C  A8 1D 00 28 */	lha r0, 0x28(r29)
/* 8002EBC0 0002A820  2C 00 00 04 */	cmpwi r0, 4
/* 8002EBC4 0002A824  40 82 00 34 */	bne lbl_8002EBF8
/* 8002EBC8 0002A828  40 82 00 0C */	bne lbl_8002EBD4
/* 8002EBCC 0002A82C  80 7D 00 2C */	lwz r3, 0x2c(r29)
/* 8002EBD0 0002A830  48 00 00 0C */	b lbl_8002EBDC
lbl_8002EBD4:
/* 8002EBD4 0002A834  38 7D 00 28 */	addi r3, r29, 0x28
/* 8002EBD8 0002A838  4B FF 97 09 */	bl func_800282E0
lbl_8002EBDC:
/* 8002EBDC 0002A83C  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002EBE0 0002A840  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002EBE4 0002A844  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002EBE8 0002A848  D0 41 00 54 */	stfs f2, 0x54(r1)
/* 8002EBEC 0002A84C  D0 21 00 64 */	stfs f1, 0x64(r1)
/* 8002EBF0 0002A850  D0 01 00 74 */	stfs f0, 0x74(r1)
/* 8002EBF4 0002A854  48 00 00 14 */	b lbl_8002EC08
lbl_8002EBF8:
/* 8002EBF8 0002A858  C0 02 81 58 */	lfs f0, lbl_80640758-_SDA2_BASE_(r2)
/* 8002EBFC 0002A85C  D0 01 00 78 */	stfs f0, 0x78(r1)
/* 8002EC00 0002A860  D0 01 00 88 */	stfs f0, 0x88(r1)
/* 8002EC04 0002A864  D0 01 00 98 */	stfs f0, 0x98(r1)
lbl_8002EC08:
/* 8002EC08 0002A868  2C 1C 00 00 */	cmpwi r28, 0
/* 8002EC0C 0002A86C  41 80 00 0C */	blt lbl_8002EC18
/* 8002EC10 0002A870  2C 1C 00 12 */	cmpwi r28, 0x12
/* 8002EC14 0002A874  40 81 00 0C */	ble lbl_8002EC20
lbl_8002EC18:
/* 8002EC18 0002A878  2C 1C 00 20 */	cmpwi r28, 0x20
/* 8002EC1C 0002A87C  40 82 10 40 */	bne lbl_8002FC5C
lbl_8002EC20:
/* 8002EC20 0002A880  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002EC24 0002A884  2C 00 00 01 */	cmpwi r0, 1
/* 8002EC28 0002A888  40 82 00 0C */	bne lbl_8002EC34
/* 8002EC2C 0002A88C  83 7D 00 14 */	lwz r27, 0x14(r29)
/* 8002EC30 0002A890  48 00 00 2C */	b lbl_8002EC5C
lbl_8002EC34:
/* 8002EC34 0002A894  2C 00 00 02 */	cmpwi r0, 2
/* 8002EC38 0002A898  40 82 00 18 */	bne lbl_8002EC50
/* 8002EC3C 0002A89C  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002EC40 0002A8A0  FC 00 00 1E */	fctiwz f0, f0
/* 8002EC44 0002A8A4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EC48 0002A8A8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EC4C 0002A8AC  48 00 00 0C */	b lbl_8002EC58
lbl_8002EC50:
/* 8002EC50 0002A8B0  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002EC54 0002A8B4  48 1F F0 E1 */	bl func_8022DD34
lbl_8002EC58:
/* 8002EC58 0002A8B8  7C 7B 1B 78 */	mr r27, r3
lbl_8002EC5C:
/* 8002EC5C 0002A8BC  7F E3 FB 78 */	mr r3, r31
/* 8002EC60 0002A8C0  7F 24 CB 78 */	mr r4, r25
/* 8002EC64 0002A8C4  38 A0 00 02 */	li r5, 2
/* 8002EC68 0002A8C8  48 00 74 B5 */	bl func_8003611C
/* 8002EC6C 0002A8CC  2C 1B 00 02 */	cmpwi r27, 2
/* 8002EC70 0002A8D0  7C 7E 1B 78 */	mr r30, r3
/* 8002EC74 0002A8D4  41 82 00 58 */	beq lbl_8002ECCC
/* 8002EC78 0002A8D8  40 80 00 14 */	bge lbl_8002EC8C
/* 8002EC7C 0002A8DC  2C 1B 00 00 */	cmpwi r27, 0
/* 8002EC80 0002A8E0  41 82 00 1C */	beq lbl_8002EC9C
/* 8002EC84 0002A8E4  40 80 00 30 */	bge lbl_8002ECB4
/* 8002EC88 0002A8E8  48 00 00 88 */	b lbl_8002ED10
lbl_8002EC8C:
/* 8002EC8C 0002A8EC  2C 1B 00 04 */	cmpwi r27, 4
/* 8002EC90 0002A8F0  41 82 00 6C */	beq lbl_8002ECFC
/* 8002EC94 0002A8F4  40 80 00 7C */	bge lbl_8002ED10
/* 8002EC98 0002A8F8  48 00 00 4C */	b lbl_8002ECE4
lbl_8002EC9C:
/* 8002EC9C 0002A8FC  7F E3 FB 78 */	mr r3, r31
/* 8002ECA0 0002A900  7F 24 CB 78 */	mr r4, r25
/* 8002ECA4 0002A904  38 A0 00 03 */	li r5, 3
/* 8002ECA8 0002A908  48 00 74 75 */	bl func_8003611C
/* 8002ECAC 0002A90C  7C 7D 1B 78 */	mr r29, r3
/* 8002ECB0 0002A910  48 00 00 60 */	b lbl_8002ED10
lbl_8002ECB4:
/* 8002ECB4 0002A914  7F E3 FB 78 */	mr r3, r31
/* 8002ECB8 0002A918  7F 24 CB 78 */	mr r4, r25
/* 8002ECBC 0002A91C  38 A0 00 09 */	li r5, 9
/* 8002ECC0 0002A920  48 00 74 5D */	bl func_8003611C
/* 8002ECC4 0002A924  7C 7D 1B 78 */	mr r29, r3
/* 8002ECC8 0002A928  48 00 00 48 */	b lbl_8002ED10
lbl_8002ECCC:
/* 8002ECCC 0002A92C  7F E3 FB 78 */	mr r3, r31
/* 8002ECD0 0002A930  7F 24 CB 78 */	mr r4, r25
/* 8002ECD4 0002A934  38 A0 00 0A */	li r5, 0xa
/* 8002ECD8 0002A938  48 00 74 45 */	bl func_8003611C
/* 8002ECDC 0002A93C  7C 7D 1B 78 */	mr r29, r3
/* 8002ECE0 0002A940  48 00 00 30 */	b lbl_8002ED10
lbl_8002ECE4:
/* 8002ECE4 0002A944  7F E3 FB 78 */	mr r3, r31
/* 8002ECE8 0002A948  7F 24 CB 78 */	mr r4, r25
/* 8002ECEC 0002A94C  38 A0 00 0B */	li r5, 0xb
/* 8002ECF0 0002A950  48 00 74 2D */	bl func_8003611C
/* 8002ECF4 0002A954  7C 7D 1B 78 */	mr r29, r3
/* 8002ECF8 0002A958  48 00 00 18 */	b lbl_8002ED10
lbl_8002ECFC:
/* 8002ECFC 0002A95C  7F E3 FB 78 */	mr r3, r31
/* 8002ED00 0002A960  7F 24 CB 78 */	mr r4, r25
/* 8002ED04 0002A964  38 A0 00 0C */	li r5, 0xc
/* 8002ED08 0002A968  48 00 74 15 */	bl func_8003611C
/* 8002ED0C 0002A96C  7C 7D 1B 78 */	mr r29, r3
lbl_8002ED10:
/* 8002ED10 0002A970  2C 1E 00 00 */	cmpwi r30, 0
/* 8002ED14 0002A974  41 82 00 64 */	beq lbl_8002ED78
/* 8002ED18 0002A978  C0 62 81 58 */	lfs f3, lbl_80640758-_SDA2_BASE_(r2)
/* 8002ED1C 0002A97C  7F E3 FB 78 */	mr r3, r31
/* 8002ED20 0002A980  C0 41 01 50 */	lfs f2, 0x150(r1)
/* 8002ED24 0002A984  7F 24 CB 78 */	mr r4, r25
/* 8002ED28 0002A988  C0 21 01 54 */	lfs f1, 0x154(r1)
/* 8002ED2C 0002A98C  38 A0 00 04 */	li r5, 4
/* 8002ED30 0002A990  C0 01 01 58 */	lfs f0, 0x158(r1)
/* 8002ED34 0002A994  D0 61 00 FC */	stfs f3, 0xfc(r1)
/* 8002ED38 0002A998  D0 61 01 00 */	stfs f3, 0x100(r1)
/* 8002ED3C 0002A99C  D0 61 01 04 */	stfs f3, 0x104(r1)
/* 8002ED40 0002A9A0  D0 41 01 08 */	stfs f2, 0x108(r1)
/* 8002ED44 0002A9A4  D0 21 01 0C */	stfs f1, 0x10c(r1)
/* 8002ED48 0002A9A8  D0 01 01 10 */	stfs f0, 0x110(r1)
/* 8002ED4C 0002A9AC  48 00 73 D1 */	bl func_8003611C
/* 8002ED50 0002A9B0  C0 21 01 5C */	lfs f1, 0x15c(r1)
/* 8002ED54 0002A9B4  7C 66 1B 78 */	mr r6, r3
/* 8002ED58 0002A9B8  C0 41 01 60 */	lfs f2, 0x160(r1)
/* 8002ED5C 0002A9BC  7F A4 EB 78 */	mr r4, r29
/* 8002ED60 0002A9C0  7F C5 F3 78 */	mr r5, r30
/* 8002ED64 0002A9C4  7F 47 D3 78 */	mr r7, r26
/* 8002ED68 0002A9C8  7F 88 E3 78 */	mr r8, r28
/* 8002ED6C 0002A9CC  38 61 01 08 */	addi r3, r1, 0x108
/* 8002ED70 0002A9D0  39 21 00 FC */	addi r9, r1, 0xfc
/* 8002ED74 0002A9D4  48 04 08 D5 */	bl func_8006F648
lbl_8002ED78:
/* 8002ED78 0002A9D8  7F E3 FB 78 */	mr r3, r31
/* 8002ED7C 0002A9DC  7F 24 CB 78 */	mr r4, r25
/* 8002ED80 0002A9E0  7F A6 EB 78 */	mr r6, r29
/* 8002ED84 0002A9E4  38 A0 00 02 */	li r5, 2
/* 8002ED88 0002A9E8  48 00 75 81 */	bl func_80036308
/* 8002ED8C 0002A9EC  48 00 0E D0 */	b lbl_8002FC5C
/* 8002ED90 0002A9F0  A8 1D 00 28 */	lha r0, 0x28(r29)
/* 8002ED94 0002A9F4  2C 00 00 01 */	cmpwi r0, 1
/* 8002ED98 0002A9F8  40 82 00 0C */	bne lbl_8002EDA4
/* 8002ED9C 0002A9FC  83 3D 00 2C */	lwz r25, 0x2c(r29)
/* 8002EDA0 0002AA00  48 00 00 2C */	b lbl_8002EDCC
lbl_8002EDA4:
/* 8002EDA4 0002AA04  2C 00 00 02 */	cmpwi r0, 2
/* 8002EDA8 0002AA08  40 82 00 18 */	bne lbl_8002EDC0
/* 8002EDAC 0002AA0C  C0 1D 00 2C */	lfs f0, 0x2c(r29)
/* 8002EDB0 0002AA10  FC 00 00 1E */	fctiwz f0, f0
/* 8002EDB4 0002AA14  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EDB8 0002AA18  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EDBC 0002AA1C  48 00 00 0C */	b lbl_8002EDC8
lbl_8002EDC0:
/* 8002EDC0 0002AA20  38 7D 00 28 */	addi r3, r29, 0x28
/* 8002EDC4 0002AA24  48 1F EF 71 */	bl func_8022DD34
lbl_8002EDC8:
/* 8002EDC8 0002AA28  7C 79 1B 78 */	mr r25, r3
lbl_8002EDCC:
/* 8002EDCC 0002AA2C  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002EDD0 0002AA30  2C 00 00 04 */	cmpwi r0, 4
/* 8002EDD4 0002AA34  40 82 00 34 */	bne lbl_8002EE08
/* 8002EDD8 0002AA38  40 82 00 0C */	bne lbl_8002EDE4
/* 8002EDDC 0002AA3C  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002EDE0 0002AA40  48 00 00 0C */	b lbl_8002EDEC
lbl_8002EDE4:
/* 8002EDE4 0002AA44  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002EDE8 0002AA48  4B FF 94 F9 */	bl func_800282E0
lbl_8002EDEC:
/* 8002EDEC 0002AA4C  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002EDF0 0002AA50  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002EDF4 0002AA54  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002EDF8 0002AA58  D0 41 01 5C */	stfs f2, 0x15c(r1)
/* 8002EDFC 0002AA5C  D0 21 01 60 */	stfs f1, 0x160(r1)
/* 8002EE00 0002AA60  D0 01 01 64 */	stfs f0, 0x164(r1)
/* 8002EE04 0002AA64  48 00 00 14 */	b lbl_8002EE18
lbl_8002EE08:
/* 8002EE08 0002AA68  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002EE0C 0002AA6C  D0 01 01 5C */	stfs f0, 0x15c(r1)
/* 8002EE10 0002AA70  D0 01 01 60 */	stfs f0, 0x160(r1)
/* 8002EE14 0002AA74  D0 01 01 64 */	stfs f0, 0x164(r1)
lbl_8002EE18:
/* 8002EE18 0002AA78  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002EE1C 0002AA7C  2C 00 00 04 */	cmpwi r0, 4
/* 8002EE20 0002AA80  40 82 00 44 */	bne lbl_8002EE64
/* 8002EE24 0002AA84  40 82 00 0C */	bne lbl_8002EE30
/* 8002EE28 0002AA88  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002EE2C 0002AA8C  48 00 00 0C */	b lbl_8002EE38
lbl_8002EE30:
/* 8002EE30 0002AA90  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002EE34 0002AA94  4B FF 94 AD */	bl func_800282E0
lbl_8002EE38:
/* 8002EE38 0002AA98  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002EE3C 0002AA9C  C0 22 81 54 */	lfs f1, lbl_80640754-_SDA2_BASE_(r2)
/* 8002EE40 0002AAA0  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002EE44 0002AAA4  EC 41 00 B2 */	fmuls f2, f1, f2
/* 8002EE48 0002AAA8  C0 63 00 04 */	lfs f3, 4(r3)
/* 8002EE4C 0002AAAC  EC 01 00 32 */	fmuls f0, f1, f0
/* 8002EE50 0002AAB0  EC 21 00 F2 */	fmuls f1, f1, f3
/* 8002EE54 0002AAB4  D0 41 01 50 */	stfs f2, 0x150(r1)
/* 8002EE58 0002AAB8  D0 21 01 54 */	stfs f1, 0x154(r1)
/* 8002EE5C 0002AABC  D0 01 01 58 */	stfs f0, 0x158(r1)
/* 8002EE60 0002AAC0  48 00 00 14 */	b lbl_8002EE74
lbl_8002EE64:
/* 8002EE64 0002AAC4  C0 02 81 50 */	lfs f0, lbl_80640750-_SDA2_BASE_(r2)
/* 8002EE68 0002AAC8  D0 01 01 50 */	stfs f0, 0x150(r1)
/* 8002EE6C 0002AACC  D0 01 01 54 */	stfs f0, 0x154(r1)
/* 8002EE70 0002AAD0  D0 01 01 58 */	stfs f0, 0x158(r1)
lbl_8002EE74:
/* 8002EE74 0002AAD4  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 8002EE78 0002AAD8  2C 00 00 04 */	cmpwi r0, 4
/* 8002EE7C 0002AADC  40 82 00 34 */	bne lbl_8002EEB0
/* 8002EE80 0002AAE0  40 82 00 0C */	bne lbl_8002EE8C
/* 8002EE84 0002AAE4  80 7D 00 24 */	lwz r3, 0x24(r29)
/* 8002EE88 0002AAE8  48 00 00 0C */	b lbl_8002EE94
lbl_8002EE8C:
/* 8002EE8C 0002AAEC  38 7D 00 20 */	addi r3, r29, 0x20
/* 8002EE90 0002AAF0  4B FF 94 51 */	bl func_800282E0
lbl_8002EE94:
/* 8002EE94 0002AAF4  C0 43 00 00 */	lfs f2, 0(r3)
/* 8002EE98 0002AAF8  C0 23 00 04 */	lfs f1, 4(r3)
/* 8002EE9C 0002AAFC  C0 03 00 08 */	lfs f0, 8(r3)
/* 8002EEA0 0002AB00  D0 41 00 9C */	stfs f2, 0x9c(r1)
/* 8002EEA4 0002AB04  D0 21 00 AC */	stfs f1, 0xac(r1)
/* 8002EEA8 0002AB08  D0 01 00 BC */	stfs f0, 0xbc(r1)
/* 8002EEAC 0002AB0C  48 00 00 14 */	b lbl_8002EEC0
lbl_8002EEB0:
/* 8002EEB0 0002AB10  C0 02 81 58 */	lfs f0, lbl_80640758-_SDA2_BASE_(r2)
/* 8002EEB4 0002AB14  D0 01 00 C0 */	stfs f0, 0xc0(r1)
/* 8002EEB8 0002AB18  D0 01 00 D0 */	stfs f0, 0xd0(r1)
/* 8002EEBC 0002AB1C  D0 01 00 E0 */	stfs f0, 0xe0(r1)
lbl_8002EEC0:
/* 8002EEC0 0002AB20  2C 19 00 00 */	cmpwi r25, 0
/* 8002EEC4 0002AB24  41 80 00 0C */	blt lbl_8002EED0
/* 8002EEC8 0002AB28  2C 19 00 12 */	cmpwi r25, 0x12
/* 8002EECC 0002AB2C  40 81 00 0C */	ble lbl_8002EED8
lbl_8002EED0:
/* 8002EED0 0002AB30  2C 19 00 20 */	cmpwi r25, 0x20
/* 8002EED4 0002AB34  40 82 0D 88 */	bne lbl_8002FC5C
lbl_8002EED8:
/* 8002EED8 0002AB38  A8 1D 00 30 */	lha r0, 0x30(r29)
/* 8002EEDC 0002AB3C  2C 00 00 01 */	cmpwi r0, 1
/* 8002EEE0 0002AB40  40 82 00 0C */	bne lbl_8002EEEC
/* 8002EEE4 0002AB44  83 7D 00 34 */	lwz r27, 0x34(r29)
/* 8002EEE8 0002AB48  48 00 00 2C */	b lbl_8002EF14
lbl_8002EEEC:
/* 8002EEEC 0002AB4C  2C 00 00 02 */	cmpwi r0, 2
/* 8002EEF0 0002AB50  40 82 00 18 */	bne lbl_8002EF08
/* 8002EEF4 0002AB54  C0 1D 00 34 */	lfs f0, 0x34(r29)
/* 8002EEF8 0002AB58  FC 00 00 1E */	fctiwz f0, f0
/* 8002EEFC 0002AB5C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EF00 0002AB60  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EF04 0002AB64  48 00 00 0C */	b lbl_8002EF10
lbl_8002EF08:
/* 8002EF08 0002AB68  38 7D 00 30 */	addi r3, r29, 0x30
/* 8002EF0C 0002AB6C  48 1F EE 29 */	bl func_8022DD34
lbl_8002EF10:
/* 8002EF10 0002AB70  7C 7B 1B 78 */	mr r27, r3
lbl_8002EF14:
/* 8002EF14 0002AB74  A8 1D 00 38 */	lha r0, 0x38(r29)
/* 8002EF18 0002AB78  2C 00 00 01 */	cmpwi r0, 1
/* 8002EF1C 0002AB7C  40 82 00 0C */	bne lbl_8002EF28
/* 8002EF20 0002AB80  83 9D 00 3C */	lwz r28, 0x3c(r29)
/* 8002EF24 0002AB84  48 00 00 2C */	b lbl_8002EF50
lbl_8002EF28:
/* 8002EF28 0002AB88  2C 00 00 02 */	cmpwi r0, 2
/* 8002EF2C 0002AB8C  40 82 00 18 */	bne lbl_8002EF44
/* 8002EF30 0002AB90  C0 1D 00 3C */	lfs f0, 0x3c(r29)
/* 8002EF34 0002AB94  FC 00 00 1E */	fctiwz f0, f0
/* 8002EF38 0002AB98  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EF3C 0002AB9C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EF40 0002ABA0  48 00 00 0C */	b lbl_8002EF4C
lbl_8002EF44:
/* 8002EF44 0002ABA4  38 7D 00 38 */	addi r3, r29, 0x38
/* 8002EF48 0002ABA8  48 1F ED ED */	bl func_8022DD34
lbl_8002EF4C:
/* 8002EF4C 0002ABAC  7C 7C 1B 78 */	mr r28, r3
lbl_8002EF50:
/* 8002EF50 0002ABB0  A8 1D 00 40 */	lha r0, 0x40(r29)
/* 8002EF54 0002ABB4  2C 00 00 01 */	cmpwi r0, 1
/* 8002EF58 0002ABB8  40 82 00 0C */	bne lbl_8002EF64
/* 8002EF5C 0002ABBC  83 DD 00 44 */	lwz r30, 0x44(r29)
/* 8002EF60 0002ABC0  48 00 00 2C */	b lbl_8002EF8C
lbl_8002EF64:
/* 8002EF64 0002ABC4  2C 00 00 02 */	cmpwi r0, 2
/* 8002EF68 0002ABC8  40 82 00 18 */	bne lbl_8002EF80
/* 8002EF6C 0002ABCC  C0 1D 00 44 */	lfs f0, 0x44(r29)
/* 8002EF70 0002ABD0  FC 00 00 1E */	fctiwz f0, f0
/* 8002EF74 0002ABD4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EF78 0002ABD8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EF7C 0002ABDC  48 00 00 0C */	b lbl_8002EF88
lbl_8002EF80:
/* 8002EF80 0002ABE0  38 7D 00 40 */	addi r3, r29, 0x40
/* 8002EF84 0002ABE4  48 1F ED B1 */	bl func_8022DD34
lbl_8002EF88:
/* 8002EF88 0002ABE8  7C 7E 1B 78 */	mr r30, r3
lbl_8002EF8C:
/* 8002EF8C 0002ABEC  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002EF90 0002ABF0  2C 00 00 01 */	cmpwi r0, 1
/* 8002EF94 0002ABF4  40 82 00 0C */	bne lbl_8002EFA0
/* 8002EF98 0002ABF8  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002EF9C 0002ABFC  48 00 00 28 */	b lbl_8002EFC4
lbl_8002EFA0:
/* 8002EFA0 0002AC00  2C 00 00 02 */	cmpwi r0, 2
/* 8002EFA4 0002AC04  40 82 00 18 */	bne lbl_8002EFBC
/* 8002EFA8 0002AC08  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002EFAC 0002AC0C  FC 00 00 1E */	fctiwz f0, f0
/* 8002EFB0 0002AC10  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002EFB4 0002AC14  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002EFB8 0002AC18  48 00 00 0C */	b lbl_8002EFC4
lbl_8002EFBC:
/* 8002EFBC 0002AC1C  38 7D 00 08 */	addi r3, r29, 8
/* 8002EFC0 0002AC20  48 1F ED 75 */	bl func_8022DD34
lbl_8002EFC4:
/* 8002EFC4 0002AC24  C0 A2 81 58 */	lfs f5, lbl_80640758-_SDA2_BASE_(r2)
/* 8002EFC8 0002AC28  7C 67 1B 78 */	mr r7, r3
/* 8002EFCC 0002AC2C  C0 81 01 50 */	lfs f4, 0x150(r1)
/* 8002EFD0 0002AC30  7F 64 DB 78 */	mr r4, r27
/* 8002EFD4 0002AC34  C0 61 01 54 */	lfs f3, 0x154(r1)
/* 8002EFD8 0002AC38  7F 85 E3 78 */	mr r5, r28
/* 8002EFDC 0002AC3C  C0 01 01 58 */	lfs f0, 0x158(r1)
/* 8002EFE0 0002AC40  7F C6 F3 78 */	mr r6, r30
/* 8002EFE4 0002AC44  D0 A1 00 E4 */	stfs f5, 0xe4(r1)
/* 8002EFE8 0002AC48  7F 28 CB 78 */	mr r8, r25
/* 8002EFEC 0002AC4C  C0 21 01 5C */	lfs f1, 0x15c(r1)
/* 8002EFF0 0002AC50  38 61 00 F0 */	addi r3, r1, 0xf0
/* 8002EFF4 0002AC54  D0 A1 00 E8 */	stfs f5, 0xe8(r1)
/* 8002EFF8 0002AC58  39 21 00 E4 */	addi r9, r1, 0xe4
/* 8002EFFC 0002AC5C  C0 41 01 60 */	lfs f2, 0x160(r1)
/* 8002F000 0002AC60  D0 A1 00 EC */	stfs f5, 0xec(r1)
/* 8002F004 0002AC64  D0 81 00 F0 */	stfs f4, 0xf0(r1)
/* 8002F008 0002AC68  D0 61 00 F4 */	stfs f3, 0xf4(r1)
/* 8002F00C 0002AC6C  D0 01 00 F8 */	stfs f0, 0xf8(r1)
/* 8002F010 0002AC70  48 04 06 39 */	bl func_8006F648
/* 8002F014 0002AC74  48 00 0C 48 */	b lbl_8002FC5C
/* 8002F018 0002AC78  7F E3 FB 78 */	mr r3, r31
/* 8002F01C 0002AC7C  48 00 70 4D */	bl func_80036068
/* 8002F020 0002AC80  2C 03 00 00 */	cmpwi r3, 0
/* 8002F024 0002AC84  41 82 00 B8 */	beq lbl_8002F0DC
/* 8002F028 0002AC88  7C 64 1B 78 */	mr r4, r3
/* 8002F02C 0002AC8C  38 60 00 0F */	li r3, 0xf
/* 8002F030 0002AC90  48 12 D2 D9 */	bl func_8015C308
/* 8002F034 0002AC94  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F038 0002AC98  2C 00 00 01 */	cmpwi r0, 1
/* 8002F03C 0002AC9C  40 82 00 0C */	bne lbl_8002F048
/* 8002F040 0002ACA0  83 7D 00 0C */	lwz r27, 0xc(r29)
/* 8002F044 0002ACA4  48 00 00 2C */	b lbl_8002F070
lbl_8002F048:
/* 8002F048 0002ACA8  2C 00 00 02 */	cmpwi r0, 2
/* 8002F04C 0002ACAC  40 82 00 18 */	bne lbl_8002F064
/* 8002F050 0002ACB0  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F054 0002ACB4  FC 00 00 1E */	fctiwz f0, f0
/* 8002F058 0002ACB8  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F05C 0002ACBC  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F060 0002ACC0  48 00 00 0C */	b lbl_8002F06C
lbl_8002F064:
/* 8002F064 0002ACC4  38 7D 00 08 */	addi r3, r29, 8
/* 8002F068 0002ACC8  48 1F EC CD */	bl func_8022DD34
lbl_8002F06C:
/* 8002F06C 0002ACCC  7C 7B 1B 78 */	mr r27, r3
lbl_8002F070:
/* 8002F070 0002ACD0  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F074 0002ACD4  2C 00 00 01 */	cmpwi r0, 1
/* 8002F078 0002ACD8  40 82 00 0C */	bne lbl_8002F084
/* 8002F07C 0002ACDC  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002F080 0002ACE0  48 00 00 28 */	b lbl_8002F0A8
lbl_8002F084:
/* 8002F084 0002ACE4  2C 00 00 02 */	cmpwi r0, 2
/* 8002F088 0002ACE8  40 82 00 18 */	bne lbl_8002F0A0
/* 8002F08C 0002ACEC  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F090 0002ACF0  FC 00 00 1E */	fctiwz f0, f0
/* 8002F094 0002ACF4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F098 0002ACF8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F09C 0002ACFC  48 00 00 0C */	b lbl_8002F0A8
lbl_8002F0A0:
/* 8002F0A0 0002AD00  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F0A4 0002AD04  48 1F EC 91 */	bl func_8022DD34
lbl_8002F0A8:
/* 8002F0A8 0002AD08  7C 65 1B 78 */	mr r5, r3
/* 8002F0AC 0002AD0C  7F 64 DB 78 */	mr r4, r27
/* 8002F0B0 0002AD10  38 60 2E D4 */	li r3, 0x2ed4
/* 8002F0B4 0002AD14  38 C0 00 00 */	li r6, 0
/* 8002F0B8 0002AD18  38 E0 00 00 */	li r7, 0
/* 8002F0BC 0002AD1C  39 00 FF FF */	li r8, -1
/* 8002F0C0 0002AD20  39 20 00 00 */	li r9, 0
/* 8002F0C4 0002AD24  39 40 00 01 */	li r10, 1
/* 8002F0C8 0002AD28  48 22 0F D5 */	bl func_8025009C
/* 8002F0CC 0002AD2C  38 00 00 01 */	li r0, 1
/* 8002F0D0 0002AD30  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002F0D4 0002AD34  90 1E 00 04 */	stw r0, 4(r30)
/* 8002F0D8 0002AD38  48 00 0B 84 */	b lbl_8002FC5C
lbl_8002F0DC:
/* 8002F0DC 0002AD3C  38 60 00 01 */	li r3, 1
/* 8002F0E0 0002AD40  38 00 00 00 */	li r0, 0
/* 8002F0E4 0002AD44  B0 7E 00 00 */	sth r3, 0(r30)
/* 8002F0E8 0002AD48  90 1E 00 04 */	stw r0, 4(r30)
/* 8002F0EC 0002AD4C  48 00 0B 70 */	b lbl_8002FC5C
/* 8002F0F0 0002AD50  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F0F4 0002AD54  2C 00 00 01 */	cmpwi r0, 1
/* 8002F0F8 0002AD58  40 82 00 0C */	bne lbl_8002F104
/* 8002F0FC 0002AD5C  83 7D 00 0C */	lwz r27, 0xc(r29)
/* 8002F100 0002AD60  48 00 00 2C */	b lbl_8002F12C
lbl_8002F104:
/* 8002F104 0002AD64  2C 00 00 02 */	cmpwi r0, 2
/* 8002F108 0002AD68  40 82 00 18 */	bne lbl_8002F120
/* 8002F10C 0002AD6C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F110 0002AD70  FC 00 00 1E */	fctiwz f0, f0
/* 8002F114 0002AD74  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F118 0002AD78  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F11C 0002AD7C  48 00 00 0C */	b lbl_8002F128
lbl_8002F120:
/* 8002F120 0002AD80  38 7D 00 08 */	addi r3, r29, 8
/* 8002F124 0002AD84  48 1F EC 11 */	bl func_8022DD34
lbl_8002F128:
/* 8002F128 0002AD88  7C 7B 1B 78 */	mr r27, r3
lbl_8002F12C:
/* 8002F12C 0002AD8C  7F E3 FB 78 */	mr r3, r31
/* 8002F130 0002AD90  7F 64 DB 78 */	mr r4, r27
/* 8002F134 0002AD94  48 00 6E 81 */	bl func_80035FB4
/* 8002F138 0002AD98  2C 03 00 00 */	cmpwi r3, 0
/* 8002F13C 0002AD9C  41 82 00 A8 */	beq lbl_8002F1E4
/* 8002F140 0002ADA0  7C 64 1B 78 */	mr r4, r3
/* 8002F144 0002ADA4  38 60 00 0F */	li r3, 0xf
/* 8002F148 0002ADA8  48 12 D1 C1 */	bl func_8015C308
/* 8002F14C 0002ADAC  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F150 0002ADB0  2C 00 00 01 */	cmpwi r0, 1
/* 8002F154 0002ADB4  40 82 00 0C */	bne lbl_8002F160
/* 8002F158 0002ADB8  83 9D 00 14 */	lwz r28, 0x14(r29)
/* 8002F15C 0002ADBC  48 00 00 2C */	b lbl_8002F188
lbl_8002F160:
/* 8002F160 0002ADC0  2C 00 00 02 */	cmpwi r0, 2
/* 8002F164 0002ADC4  40 82 00 18 */	bne lbl_8002F17C
/* 8002F168 0002ADC8  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F16C 0002ADCC  FC 00 00 1E */	fctiwz f0, f0
/* 8002F170 0002ADD0  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F174 0002ADD4  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F178 0002ADD8  48 00 00 0C */	b lbl_8002F184
lbl_8002F17C:
/* 8002F17C 0002ADDC  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F180 0002ADE0  48 1F EB B5 */	bl func_8022DD34
lbl_8002F184:
/* 8002F184 0002ADE4  7C 7C 1B 78 */	mr r28, r3
lbl_8002F188:
/* 8002F188 0002ADE8  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002F18C 0002ADEC  2C 00 00 01 */	cmpwi r0, 1
/* 8002F190 0002ADF0  40 82 00 0C */	bne lbl_8002F19C
/* 8002F194 0002ADF4  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002F198 0002ADF8  48 00 00 28 */	b lbl_8002F1C0
lbl_8002F19C:
/* 8002F19C 0002ADFC  2C 00 00 02 */	cmpwi r0, 2
/* 8002F1A0 0002AE00  40 82 00 18 */	bne lbl_8002F1B8
/* 8002F1A4 0002AE04  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 8002F1A8 0002AE08  FC 00 00 1E */	fctiwz f0, f0
/* 8002F1AC 0002AE0C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F1B0 0002AE10  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F1B4 0002AE14  48 00 00 0C */	b lbl_8002F1C0
lbl_8002F1B8:
/* 8002F1B8 0002AE18  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002F1BC 0002AE1C  48 1F EB 79 */	bl func_8022DD34
lbl_8002F1C0:
/* 8002F1C0 0002AE20  7C 65 1B 78 */	mr r5, r3
/* 8002F1C4 0002AE24  7F 84 E3 78 */	mr r4, r28
/* 8002F1C8 0002AE28  38 60 2E D4 */	li r3, 0x2ed4
/* 8002F1CC 0002AE2C  38 C0 00 00 */	li r6, 0
/* 8002F1D0 0002AE30  38 E0 00 00 */	li r7, 0
/* 8002F1D4 0002AE34  39 00 FF FF */	li r8, -1
/* 8002F1D8 0002AE38  39 20 00 00 */	li r9, 0
/* 8002F1DC 0002AE3C  39 40 00 01 */	li r10, 1
/* 8002F1E0 0002AE40  48 22 0E BD */	bl func_8025009C
lbl_8002F1E4:
/* 8002F1E4 0002AE44  7F E3 FB 78 */	mr r3, r31
/* 8002F1E8 0002AE48  38 9B 00 01 */	addi r4, r27, 1
/* 8002F1EC 0002AE4C  48 00 6D C9 */	bl func_80035FB4
/* 8002F1F0 0002AE50  7C 03 00 D0 */	neg r0, r3
/* 8002F1F4 0002AE54  38 80 00 01 */	li r4, 1
/* 8002F1F8 0002AE58  7C 00 1B 78 */	or r0, r0, r3
/* 8002F1FC 0002AE5C  B0 9E 00 00 */	sth r4, 0(r30)
/* 8002F200 0002AE60  54 00 0F FE */	srwi r0, r0, 0x1f
/* 8002F204 0002AE64  90 1E 00 04 */	stw r0, 4(r30)
/* 8002F208 0002AE68  48 00 0A 54 */	b lbl_8002FC5C
/* 8002F20C 0002AE6C  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F210 0002AE70  2C 00 00 01 */	cmpwi r0, 1
/* 8002F214 0002AE74  40 82 00 0C */	bne lbl_8002F220
/* 8002F218 0002AE78  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F21C 0002AE7C  48 00 00 28 */	b lbl_8002F244
lbl_8002F220:
/* 8002F220 0002AE80  2C 00 00 02 */	cmpwi r0, 2
/* 8002F224 0002AE84  40 82 00 18 */	bne lbl_8002F23C
/* 8002F228 0002AE88  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F22C 0002AE8C  FC 00 00 1E */	fctiwz f0, f0
/* 8002F230 0002AE90  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F234 0002AE94  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F238 0002AE98  48 00 00 0C */	b lbl_8002F244
lbl_8002F23C:
/* 8002F23C 0002AE9C  38 7D 00 08 */	addi r3, r29, 8
/* 8002F240 0002AEA0  48 1F EA F5 */	bl func_8022DD34
lbl_8002F244:
/* 8002F244 0002AEA4  2C 03 00 00 */	cmpwi r3, 0
/* 8002F248 0002AEA8  41 82 0A 14 */	beq lbl_8002FC5C
/* 8002F24C 0002AEAC  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8002F250 0002AEB0  48 14 03 D9 */	bl func_8016F628
/* 8002F254 0002AEB4  2C 03 00 00 */	cmpwi r3, 0
/* 8002F258 0002AEB8  7C 79 1B 78 */	mr r25, r3
/* 8002F25C 0002AEBC  41 82 0A 00 */	beq lbl_8002FC5C
/* 8002F260 0002AEC0  3C 60 80 47 */	lis r3, lbl_80475138@ha
/* 8002F264 0002AEC4  7F 24 CB 78 */	mr r4, r25
/* 8002F268 0002AEC8  38 63 51 38 */	addi r3, r3, lbl_80475138@l
/* 8002F26C 0002AECC  38 A0 00 80 */	li r5, 0x80
/* 8002F270 0002AED0  48 14 7E 11 */	bl func_80177080
/* 8002F274 0002AED4  38 00 00 00 */	li r0, 0
/* 8002F278 0002AED8  90 01 00 08 */	stw r0, 8(r1)
/* 8002F27C 0002AEDC  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F280 0002AEE0  2C 00 00 01 */	cmpwi r0, 1
/* 8002F284 0002AEE4  40 82 00 0C */	bne lbl_8002F290
/* 8002F288 0002AEE8  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002F28C 0002AEEC  48 00 00 28 */	b lbl_8002F2B4
lbl_8002F290:
/* 8002F290 0002AEF0  2C 00 00 02 */	cmpwi r0, 2
/* 8002F294 0002AEF4  40 82 00 18 */	bne lbl_8002F2AC
/* 8002F298 0002AEF8  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F29C 0002AEFC  FC 00 00 1E */	fctiwz f0, f0
/* 8002F2A0 0002AF00  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F2A4 0002AF04  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F2A8 0002AF08  48 00 00 0C */	b lbl_8002F2B4
lbl_8002F2AC:
/* 8002F2AC 0002AF0C  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F2B0 0002AF10  48 1F EA 85 */	bl func_8022DD34
lbl_8002F2B4:
/* 8002F2B4 0002AF14  38 03 00 08 */	addi r0, r3, 8
/* 8002F2B8 0002AF18  90 0D 97 3C */	stw r0, lbl_8063E9FC-_SDA_BASE_(r13)
/* 8002F2BC 0002AF1C  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002F2C0 0002AF20  2C 00 00 01 */	cmpwi r0, 1
/* 8002F2C4 0002AF24  40 82 00 0C */	bne lbl_8002F2D0
/* 8002F2C8 0002AF28  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 8002F2CC 0002AF2C  48 00 00 28 */	b lbl_8002F2F4
lbl_8002F2D0:
/* 8002F2D0 0002AF30  2C 00 00 02 */	cmpwi r0, 2
/* 8002F2D4 0002AF34  40 82 00 18 */	bne lbl_8002F2EC
/* 8002F2D8 0002AF38  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 8002F2DC 0002AF3C  FC 00 00 1E */	fctiwz f0, f0
/* 8002F2E0 0002AF40  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F2E4 0002AF44  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F2E8 0002AF48  48 00 00 0C */	b lbl_8002F2F4
lbl_8002F2EC:
/* 8002F2EC 0002AF4C  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002F2F0 0002AF50  48 1F EA 45 */	bl func_8022DD34
lbl_8002F2F4:
/* 8002F2F4 0002AF54  38 03 FF E0 */	addi r0, r3, -32
/* 8002F2F8 0002AF58  7F 23 CB 78 */	mr r3, r25
/* 8002F2FC 0002AF5C  90 0D 97 40 */	stw r0, lbl_8063EA00-_SDA_BASE_(r13)
/* 8002F300 0002AF60  38 A1 00 08 */	addi r5, r1, 8
/* 8002F304 0002AF64  38 80 01 00 */	li r4, 0x100
/* 8002F308 0002AF68  48 00 09 79 */	bl func_8002FC80
/* 8002F30C 0002AF6C  3F 80 80 47 */	lis r28, lbl_80474F38@ha
/* 8002F310 0002AF70  7C 7B 1B 78 */	mr r27, r3
/* 8002F314 0002AF74  38 9C 4F 38 */	addi r4, r28, lbl_80474F38@l
/* 8002F318 0002AF78  38 60 00 10 */	li r3, 0x10
/* 8002F31C 0002AF7C  48 12 CF ED */	bl func_8015C308
/* 8002F320 0002AF80  38 60 50 8A */	li r3, 0x508a
/* 8002F324 0002AF84  38 80 00 01 */	li r4, 1
/* 8002F328 0002AF88  38 A0 00 00 */	li r5, 0
/* 8002F32C 0002AF8C  48 22 10 6D */	bl func_80250398
/* 8002F330 0002AF90  3B FC 4F 38 */	addi r31, r28, 0x4f38
/* 8002F334 0002AF94  7C 7C 1B 78 */	mr r28, r3
/* 8002F338 0002AF98  38 9F 01 00 */	addi r4, r31, 0x100
/* 8002F33C 0002AF9C  38 60 00 10 */	li r3, 0x10
/* 8002F340 0002AFA0  48 12 CF C9 */	bl func_8015C308
/* 8002F344 0002AFA4  38 60 50 8A */	li r3, 0x508a
/* 8002F348 0002AFA8  38 80 00 01 */	li r4, 1
/* 8002F34C 0002AFAC  38 A0 00 00 */	li r5, 0
/* 8002F350 0002AFB0  48 22 10 49 */	bl func_80250398
/* 8002F354 0002AFB4  7C 7E 1B 78 */	mr r30, r3
/* 8002F358 0002AFB8  7F E4 FB 78 */	mr r4, r31
/* 8002F35C 0002AFBC  38 60 00 10 */	li r3, 0x10
/* 8002F360 0002AFC0  48 12 CF A9 */	bl func_8015C308
/* 8002F364 0002AFC4  2C 1B 00 01 */	cmpwi r27, 1
/* 8002F368 0002AFC8  40 81 00 9C */	ble lbl_8002F404
/* 8002F36C 0002AFCC  80 01 00 08 */	lwz r0, 8(r1)
/* 8002F370 0002AFD0  2C 00 00 0A */	cmpwi r0, 0xa
/* 8002F374 0002AFD4  41 81 00 10 */	bgt lbl_8002F384
/* 8002F378 0002AFD8  C0 02 81 5C */	lfs f0, lbl_8064075C-_SDA2_BASE_(r2)
/* 8002F37C 0002AFDC  D0 0D 97 38 */	stfs f0, lbl_8063E9F8-_SDA_BASE_(r13)
/* 8002F380 0002AFE0  48 00 00 44 */	b lbl_8002F3C4
lbl_8002F384:
/* 8002F384 0002AFE4  2C 00 00 28 */	cmpwi r0, 0x28
/* 8002F388 0002AFE8  40 81 00 0C */	ble lbl_8002F394
/* 8002F38C 0002AFEC  38 00 00 28 */	li r0, 0x28
/* 8002F390 0002AFF0  90 01 00 08 */	stw r0, 8(r1)
lbl_8002F394:
/* 8002F394 0002AFF4  80 61 00 08 */	lwz r3, 8(r1)
/* 8002F398 0002AFF8  C8 62 81 68 */	lfd f3, lbl_80640768-_SDA2_BASE_(r2)
/* 8002F39C 0002AFFC  38 03 FF F6 */	addi r0, r3, -10
/* 8002F3A0 0002B000  C0 22 81 60 */	lfs f1, lbl_80640760-_SDA2_BASE_(r2)
/* 8002F3A4 0002B004  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8002F3A8 0002B008  C0 02 81 5C */	lfs f0, lbl_8064075C-_SDA2_BASE_(r2)
/* 8002F3AC 0002B00C  90 01 01 6C */	stw r0, 0x16c(r1)
/* 8002F3B0 0002B010  C8 41 01 68 */	lfd f2, 0x168(r1)
/* 8002F3B4 0002B014  EC 42 18 28 */	fsubs f2, f2, f3
/* 8002F3B8 0002B018  EC 22 08 24 */	fdivs f1, f2, f1
/* 8002F3BC 0002B01C  EC 00 08 2A */	fadds f0, f0, f1
/* 8002F3C0 0002B020  D0 0D 97 38 */	stfs f0, lbl_8063E9F8-_SDA_BASE_(r13)
lbl_8002F3C4:
/* 8002F3C4 0002B024  57 C4 04 3E */	clrlwi r4, r30, 0x10
/* 8002F3C8 0002B028  57 83 04 3E */	clrlwi r3, r28, 0x10
/* 8002F3CC 0002B02C  38 00 00 01 */	li r0, 1
/* 8002F3D0 0002B030  7C 03 20 40 */	cmplw r3, r4
/* 8002F3D4 0002B034  98 0D 97 36 */	stb r0, lbl_8063E9F6-_SDA_BASE_(r13)
/* 8002F3D8 0002B038  40 81 00 08 */	ble lbl_8002F3E0
/* 8002F3DC 0002B03C  7C 64 1B 78 */	mr r4, r3
lbl_8002F3E0:
/* 8002F3E0 0002B040  57 C3 84 3E */	srwi r3, r30, 0x10
/* 8002F3E4 0002B044  57 80 84 3E */	srwi r0, r28, 0x10
/* 8002F3E8 0002B048  7C 00 18 40 */	cmplw r0, r3
/* 8002F3EC 0002B04C  B0 8D 97 44 */	sth r4, lbl_8063EA04-_SDA_BASE_(r13)
/* 8002F3F0 0002B050  40 81 00 08 */	ble lbl_8002F3F8
/* 8002F3F4 0002B054  7C 03 03 78 */	mr r3, r0
lbl_8002F3F8:
/* 8002F3F8 0002B058  B0 6D 97 46 */	sth r3, lbl_8063EA06-_SDA_BASE_(r13)
/* 8002F3FC 0002B05C  3B 20 50 8B */	li r25, 0x508b
/* 8002F400 0002B060  48 00 00 14 */	b lbl_8002F414
lbl_8002F404:
/* 8002F404 0002B064  57 80 84 3E */	srwi r0, r28, 0x10
/* 8002F408 0002B068  B3 8D 97 44 */	sth r28, lbl_8063EA04-_SDA_BASE_(r13)
/* 8002F40C 0002B06C  3B 20 50 8A */	li r25, 0x508a
/* 8002F410 0002B070  B0 0D 97 46 */	sth r0, lbl_8063EA06-_SDA_BASE_(r13)
lbl_8002F414:
/* 8002F414 0002B074  38 60 50 8A */	li r3, 0x508a
/* 8002F418 0002B078  48 22 0E BD */	bl func_802502D4
/* 8002F41C 0002B07C  38 60 50 8B */	li r3, 0x508b
/* 8002F420 0002B080  48 22 0E B5 */	bl func_802502D4
/* 8002F424 0002B084  38 60 50 8C */	li r3, 0x508c
/* 8002F428 0002B088  48 22 0E AD */	bl func_802502D4
/* 8002F42C 0002B08C  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F430 0002B090  2C 00 00 01 */	cmpwi r0, 1
/* 8002F434 0002B094  40 82 00 0C */	bne lbl_8002F440
/* 8002F438 0002B098  83 7D 00 14 */	lwz r27, 0x14(r29)
/* 8002F43C 0002B09C  48 00 00 2C */	b lbl_8002F468
lbl_8002F440:
/* 8002F440 0002B0A0  2C 00 00 02 */	cmpwi r0, 2
/* 8002F444 0002B0A4  40 82 00 18 */	bne lbl_8002F45C
/* 8002F448 0002B0A8  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F44C 0002B0AC  FC 00 00 1E */	fctiwz f0, f0
/* 8002F450 0002B0B0  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F454 0002B0B4  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F458 0002B0B8  48 00 00 0C */	b lbl_8002F464
lbl_8002F45C:
/* 8002F45C 0002B0BC  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F460 0002B0C0  48 1F E8 D5 */	bl func_8022DD34
lbl_8002F464:
/* 8002F464 0002B0C4  7C 7B 1B 78 */	mr r27, r3
lbl_8002F468:
/* 8002F468 0002B0C8  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002F46C 0002B0CC  2C 00 00 01 */	cmpwi r0, 1
/* 8002F470 0002B0D0  40 82 00 0C */	bne lbl_8002F47C
/* 8002F474 0002B0D4  80 BD 00 1C */	lwz r5, 0x1c(r29)
/* 8002F478 0002B0D8  48 00 00 2C */	b lbl_8002F4A4
lbl_8002F47C:
/* 8002F47C 0002B0DC  2C 00 00 02 */	cmpwi r0, 2
/* 8002F480 0002B0E0  40 82 00 18 */	bne lbl_8002F498
/* 8002F484 0002B0E4  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 8002F488 0002B0E8  FC 00 00 1E */	fctiwz f0, f0
/* 8002F48C 0002B0EC  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F490 0002B0F0  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F494 0002B0F4  48 00 00 0C */	b lbl_8002F4A0
lbl_8002F498:
/* 8002F498 0002B0F8  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002F49C 0002B0FC  48 1F E8 99 */	bl func_8022DD34
lbl_8002F4A0:
/* 8002F4A0 0002B100  7C 65 1B 78 */	mr r5, r3
lbl_8002F4A4:
/* 8002F4A4 0002B104  A8 CD 97 44 */	lha r6, lbl_8063EA04-_SDA_BASE_(r13)
/* 8002F4A8 0002B108  7F 23 CB 78 */	mr r3, r25
/* 8002F4AC 0002B10C  A8 ED 97 46 */	lha r7, lbl_8063EA06-_SDA_BASE_(r13)
/* 8002F4B0 0002B110  38 9B 00 08 */	addi r4, r27, 8
/* 8002F4B4 0002B114  38 A5 FF E0 */	addi r5, r5, -32
/* 8002F4B8 0002B118  39 00 FF FF */	li r8, -1
/* 8002F4BC 0002B11C  39 20 00 00 */	li r9, 0
/* 8002F4C0 0002B120  39 40 00 01 */	li r10, 1
/* 8002F4C4 0002B124  48 22 0B D9 */	bl func_8025009C
/* 8002F4C8 0002B128  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F4CC 0002B12C  2C 00 00 01 */	cmpwi r0, 1
/* 8002F4D0 0002B130  40 82 00 0C */	bne lbl_8002F4DC
/* 8002F4D4 0002B134  83 7D 00 0C */	lwz r27, 0xc(r29)
/* 8002F4D8 0002B138  48 00 00 2C */	b lbl_8002F504
lbl_8002F4DC:
/* 8002F4DC 0002B13C  2C 00 00 02 */	cmpwi r0, 2
/* 8002F4E0 0002B140  40 82 00 18 */	bne lbl_8002F4F8
/* 8002F4E4 0002B144  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F4E8 0002B148  FC 00 00 1E */	fctiwz f0, f0
/* 8002F4EC 0002B14C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F4F0 0002B150  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F4F4 0002B154  48 00 00 0C */	b lbl_8002F500
lbl_8002F4F8:
/* 8002F4F8 0002B158  38 7D 00 08 */	addi r3, r29, 8
/* 8002F4FC 0002B15C  48 1F E8 39 */	bl func_8022DD34
lbl_8002F500:
/* 8002F500 0002B160  7C 7B 1B 78 */	mr r27, r3
lbl_8002F504:
/* 8002F504 0002B164  4B FD D2 E5 */	bl func_8000C7E8
/* 8002F508 0002B168  7F 65 DB 78 */	mr r5, r27
/* 8002F50C 0002B16C  38 80 00 03 */	li r4, 3
/* 8002F510 0002B170  4B FF 29 B5 */	bl func_80021EC4
/* 8002F514 0002B174  48 00 07 48 */	b lbl_8002FC5C
/* 8002F518 0002B178  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F51C 0002B17C  2C 00 00 01 */	cmpwi r0, 1
/* 8002F520 0002B180  40 82 00 0C */	bne lbl_8002F52C
/* 8002F524 0002B184  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F528 0002B188  48 00 00 28 */	b lbl_8002F550
lbl_8002F52C:
/* 8002F52C 0002B18C  2C 00 00 02 */	cmpwi r0, 2
/* 8002F530 0002B190  40 82 00 18 */	bne lbl_8002F548
/* 8002F534 0002B194  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F538 0002B198  FC 00 00 1E */	fctiwz f0, f0
/* 8002F53C 0002B19C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F540 0002B1A0  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F544 0002B1A4  48 00 00 0C */	b lbl_8002F550
lbl_8002F548:
/* 8002F548 0002B1A8  38 7D 00 08 */	addi r3, r29, 8
/* 8002F54C 0002B1AC  48 1F E7 E9 */	bl func_8022DD34
lbl_8002F550:
/* 8002F550 0002B1B0  2C 03 FF FF */	cmpwi r3, -1
/* 8002F554 0002B1B4  40 82 00 14 */	bne lbl_8002F568
/* 8002F558 0002B1B8  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 8002F55C 0002B1BC  48 1F 72 E1 */	bl func_8022683C
/* 8002F560 0002B1C0  7C 79 1B 78 */	mr r25, r3
/* 8002F564 0002B1C4  48 00 00 40 */	b lbl_8002F5A4
lbl_8002F568:
/* 8002F568 0002B1C8  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F56C 0002B1CC  2C 00 00 01 */	cmpwi r0, 1
/* 8002F570 0002B1D0  40 82 00 0C */	bne lbl_8002F57C
/* 8002F574 0002B1D4  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F578 0002B1D8  48 00 00 28 */	b lbl_8002F5A0
lbl_8002F57C:
/* 8002F57C 0002B1DC  2C 00 00 02 */	cmpwi r0, 2
/* 8002F580 0002B1E0  40 82 00 18 */	bne lbl_8002F598
/* 8002F584 0002B1E4  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F588 0002B1E8  FC 00 00 1E */	fctiwz f0, f0
/* 8002F58C 0002B1EC  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F590 0002B1F0  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F594 0002B1F4  48 00 00 0C */	b lbl_8002F5A0
lbl_8002F598:
/* 8002F598 0002B1F8  38 7D 00 08 */	addi r3, r29, 8
/* 8002F59C 0002B1FC  48 1F E7 99 */	bl func_8022DD34
lbl_8002F5A0:
/* 8002F5A0 0002B200  7C 79 1B 78 */	mr r25, r3
lbl_8002F5A4:
/* 8002F5A4 0002B204  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F5A8 0002B208  2C 00 00 01 */	cmpwi r0, 1
/* 8002F5AC 0002B20C  40 82 00 0C */	bne lbl_8002F5B8
/* 8002F5B0 0002B210  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002F5B4 0002B214  48 00 00 28 */	b lbl_8002F5DC
lbl_8002F5B8:
/* 8002F5B8 0002B218  2C 00 00 02 */	cmpwi r0, 2
/* 8002F5BC 0002B21C  40 82 00 18 */	bne lbl_8002F5D4
/* 8002F5C0 0002B220  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F5C4 0002B224  FC 00 00 1E */	fctiwz f0, f0
/* 8002F5C8 0002B228  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F5CC 0002B22C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F5D0 0002B230  48 00 00 0C */	b lbl_8002F5DC
lbl_8002F5D4:
/* 8002F5D4 0002B234  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F5D8 0002B238  48 1F E7 5D */	bl func_8022DD34
lbl_8002F5DC:
/* 8002F5DC 0002B23C  2C 03 FF FF */	cmpwi r3, -1
/* 8002F5E0 0002B240  40 82 00 0C */	bne lbl_8002F5EC
/* 8002F5E4 0002B244  A0 9B 00 16 */	lhz r4, 0x16(r27)
/* 8002F5E8 0002B248  48 00 00 40 */	b lbl_8002F628
lbl_8002F5EC:
/* 8002F5EC 0002B24C  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F5F0 0002B250  2C 00 00 01 */	cmpwi r0, 1
/* 8002F5F4 0002B254  40 82 00 0C */	bne lbl_8002F600
/* 8002F5F8 0002B258  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 8002F5FC 0002B25C  48 00 00 28 */	b lbl_8002F624
lbl_8002F600:
/* 8002F600 0002B260  2C 00 00 02 */	cmpwi r0, 2
/* 8002F604 0002B264  40 82 00 18 */	bne lbl_8002F61C
/* 8002F608 0002B268  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F60C 0002B26C  FC 00 00 1E */	fctiwz f0, f0
/* 8002F610 0002B270  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F614 0002B274  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F618 0002B278  48 00 00 0C */	b lbl_8002F624
lbl_8002F61C:
/* 8002F61C 0002B27C  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F620 0002B280  48 1F E7 15 */	bl func_8022DD34
lbl_8002F624:
/* 8002F624 0002B284  7C 64 1B 78 */	mr r4, r3
lbl_8002F628:
/* 8002F628 0002B288  7F 23 CB 78 */	mr r3, r25
/* 8002F62C 0002B28C  48 04 30 81 */	bl func_800726AC
/* 8002F630 0002B290  48 00 06 2C */	b lbl_8002FC5C
/* 8002F634 0002B294  48 04 32 91 */	bl func_800728C4
/* 8002F638 0002B298  7C 83 00 D0 */	neg r4, r3
/* 8002F63C 0002B29C  38 00 00 01 */	li r0, 1
/* 8002F640 0002B2A0  7C 83 1B 78 */	or r3, r4, r3
/* 8002F644 0002B2A4  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002F648 0002B2A8  54 60 0F FE */	srwi r0, r3, 0x1f
/* 8002F64C 0002B2AC  90 1E 00 04 */	stw r0, 4(r30)
/* 8002F650 0002B2B0  48 00 06 0C */	b lbl_8002FC5C
/* 8002F654 0002B2B4  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F658 0002B2B8  2C 00 00 01 */	cmpwi r0, 1
/* 8002F65C 0002B2BC  40 82 00 0C */	bne lbl_8002F668
/* 8002F660 0002B2C0  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F664 0002B2C4  48 00 00 28 */	b lbl_8002F68C
lbl_8002F668:
/* 8002F668 0002B2C8  2C 00 00 02 */	cmpwi r0, 2
/* 8002F66C 0002B2CC  40 82 00 18 */	bne lbl_8002F684
/* 8002F670 0002B2D0  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F674 0002B2D4  FC 00 00 1E */	fctiwz f0, f0
/* 8002F678 0002B2D8  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F67C 0002B2DC  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F680 0002B2E0  48 00 00 0C */	b lbl_8002F68C
lbl_8002F684:
/* 8002F684 0002B2E4  38 7D 00 08 */	addi r3, r29, 8
/* 8002F688 0002B2E8  48 1F E6 AD */	bl func_8022DD34
lbl_8002F68C:
/* 8002F68C 0002B2EC  2C 03 FF FF */	cmpwi r3, -1
/* 8002F690 0002B2F0  40 82 00 0C */	bne lbl_8002F69C
/* 8002F694 0002B2F4  A0 7B 00 16 */	lhz r3, 0x16(r27)
/* 8002F698 0002B2F8  48 00 00 3C */	b lbl_8002F6D4
lbl_8002F69C:
/* 8002F69C 0002B2FC  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F6A0 0002B300  2C 00 00 01 */	cmpwi r0, 1
/* 8002F6A4 0002B304  40 82 00 0C */	bne lbl_8002F6B0
/* 8002F6A8 0002B308  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F6AC 0002B30C  48 00 00 28 */	b lbl_8002F6D4
lbl_8002F6B0:
/* 8002F6B0 0002B310  2C 00 00 02 */	cmpwi r0, 2
/* 8002F6B4 0002B314  40 82 00 18 */	bne lbl_8002F6CC
/* 8002F6B8 0002B318  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F6BC 0002B31C  FC 00 00 1E */	fctiwz f0, f0
/* 8002F6C0 0002B320  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F6C4 0002B324  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F6C8 0002B328  48 00 00 0C */	b lbl_8002F6D4
lbl_8002F6CC:
/* 8002F6CC 0002B32C  38 7D 00 08 */	addi r3, r29, 8
/* 8002F6D0 0002B330  48 1F E6 65 */	bl func_8022DD34
lbl_8002F6D4:
/* 8002F6D4 0002B334  48 04 32 09 */	bl func_800728DC
/* 8002F6D8 0002B338  48 00 05 84 */	b lbl_8002FC5C
/* 8002F6DC 0002B33C  48 04 32 2D */	bl func_80072908
/* 8002F6E0 0002B340  38 00 00 01 */	li r0, 1
/* 8002F6E4 0002B344  90 7E 00 04 */	stw r3, 4(r30)
/* 8002F6E8 0002B348  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002F6EC 0002B34C  48 00 05 70 */	b lbl_8002FC5C
/* 8002F6F0 0002B350  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F6F4 0002B354  2C 00 00 01 */	cmpwi r0, 1
/* 8002F6F8 0002B358  40 82 00 0C */	bne lbl_8002F704
/* 8002F6FC 0002B35C  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F700 0002B360  48 00 00 28 */	b lbl_8002F728
lbl_8002F704:
/* 8002F704 0002B364  2C 00 00 02 */	cmpwi r0, 2
/* 8002F708 0002B368  40 82 00 18 */	bne lbl_8002F720
/* 8002F70C 0002B36C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F710 0002B370  FC 00 00 1E */	fctiwz f0, f0
/* 8002F714 0002B374  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F718 0002B378  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F71C 0002B37C  48 00 00 0C */	b lbl_8002F728
lbl_8002F720:
/* 8002F720 0002B380  38 7D 00 08 */	addi r3, r29, 8
/* 8002F724 0002B384  48 1F E6 11 */	bl func_8022DD34
lbl_8002F728:
/* 8002F728 0002B388  48 04 32 35 */	bl func_8007295C
/* 8002F72C 0002B38C  48 00 05 30 */	b lbl_8002FC5C
/* 8002F730 0002B390  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F734 0002B394  2C 00 00 01 */	cmpwi r0, 1
/* 8002F738 0002B398  40 82 00 0C */	bne lbl_8002F744
/* 8002F73C 0002B39C  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F740 0002B3A0  48 00 00 28 */	b lbl_8002F768
lbl_8002F744:
/* 8002F744 0002B3A4  2C 00 00 02 */	cmpwi r0, 2
/* 8002F748 0002B3A8  40 82 00 18 */	bne lbl_8002F760
/* 8002F74C 0002B3AC  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F750 0002B3B0  FC 00 00 1E */	fctiwz f0, f0
/* 8002F754 0002B3B4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F758 0002B3B8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F75C 0002B3BC  48 00 00 0C */	b lbl_8002F768
lbl_8002F760:
/* 8002F760 0002B3C0  38 7D 00 08 */	addi r3, r29, 8
/* 8002F764 0002B3C4  48 1F E5 D1 */	bl func_8022DD34
lbl_8002F768:
/* 8002F768 0002B3C8  48 04 35 89 */	bl func_80072CF0
/* 8002F76C 0002B3CC  48 00 04 F0 */	b lbl_8002FC5C
/* 8002F770 0002B3D0  48 04 3E A9 */	bl func_80073618
/* 8002F774 0002B3D4  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8002F778 0002B3D8  38 00 00 01 */	li r0, 1
/* 8002F77C 0002B3DC  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002F780 0002B3E0  90 7E 00 04 */	stw r3, 4(r30)
/* 8002F784 0002B3E4  48 00 04 D8 */	b lbl_8002FC5C
/* 8002F788 0002B3E8  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F78C 0002B3EC  2C 00 00 01 */	cmpwi r0, 1
/* 8002F790 0002B3F0  40 82 00 0C */	bne lbl_8002F79C
/* 8002F794 0002B3F4  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F798 0002B3F8  48 00 00 28 */	b lbl_8002F7C0
lbl_8002F79C:
/* 8002F79C 0002B3FC  2C 00 00 02 */	cmpwi r0, 2
/* 8002F7A0 0002B400  40 82 00 18 */	bne lbl_8002F7B8
/* 8002F7A4 0002B404  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F7A8 0002B408  FC 00 00 1E */	fctiwz f0, f0
/* 8002F7AC 0002B40C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F7B0 0002B410  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F7B4 0002B414  48 00 00 0C */	b lbl_8002F7C0
lbl_8002F7B8:
/* 8002F7B8 0002B418  38 7D 00 08 */	addi r3, r29, 8
/* 8002F7BC 0002B41C  48 1F E5 79 */	bl func_8022DD34
lbl_8002F7C0:
/* 8002F7C0 0002B420  48 04 3F 8D */	bl func_8007374C
/* 8002F7C4 0002B424  48 00 04 98 */	b lbl_8002FC5C
/* 8002F7C8 0002B428  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F7CC 0002B42C  2C 00 00 01 */	cmpwi r0, 1
/* 8002F7D0 0002B430  40 82 00 0C */	bne lbl_8002F7DC
/* 8002F7D4 0002B434  83 3D 00 14 */	lwz r25, 0x14(r29)
/* 8002F7D8 0002B438  48 00 00 2C */	b lbl_8002F804
lbl_8002F7DC:
/* 8002F7DC 0002B43C  2C 00 00 02 */	cmpwi r0, 2
/* 8002F7E0 0002B440  40 82 00 18 */	bne lbl_8002F7F8
/* 8002F7E4 0002B444  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F7E8 0002B448  FC 00 00 1E */	fctiwz f0, f0
/* 8002F7EC 0002B44C  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F7F0 0002B450  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F7F4 0002B454  48 00 00 0C */	b lbl_8002F800
lbl_8002F7F8:
/* 8002F7F8 0002B458  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F7FC 0002B45C  48 1F E5 39 */	bl func_8022DD34
lbl_8002F800:
/* 8002F800 0002B460  7C 79 1B 78 */	mr r25, r3
lbl_8002F804:
/* 8002F804 0002B464  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 8002F808 0002B468  2C 00 00 01 */	cmpwi r0, 1
/* 8002F80C 0002B46C  40 82 00 0C */	bne lbl_8002F818
/* 8002F810 0002B470  83 7D 00 1C */	lwz r27, 0x1c(r29)
/* 8002F814 0002B474  48 00 00 2C */	b lbl_8002F840
lbl_8002F818:
/* 8002F818 0002B478  2C 00 00 02 */	cmpwi r0, 2
/* 8002F81C 0002B47C  40 82 00 18 */	bne lbl_8002F834
/* 8002F820 0002B480  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 8002F824 0002B484  FC 00 00 1E */	fctiwz f0, f0
/* 8002F828 0002B488  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F82C 0002B48C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F830 0002B490  48 00 00 0C */	b lbl_8002F83C
lbl_8002F834:
/* 8002F834 0002B494  38 7D 00 18 */	addi r3, r29, 0x18
/* 8002F838 0002B498  48 1F E4 FD */	bl func_8022DD34
lbl_8002F83C:
/* 8002F83C 0002B49C  7C 7B 1B 78 */	mr r27, r3
lbl_8002F840:
/* 8002F840 0002B4A0  28 19 00 02 */	cmplwi r25, 2
/* 8002F844 0002B4A4  3B 40 00 00 */	li r26, 0
/* 8002F848 0002B4A8  3B C0 00 00 */	li r30, 0
/* 8002F84C 0002B4AC  40 82 00 24 */	bne lbl_8002F870
/* 8002F850 0002B4B0  7F E3 FB 78 */	mr r3, r31
/* 8002F854 0002B4B4  7F 64 DB 78 */	mr r4, r27
/* 8002F858 0002B4B8  48 00 75 21 */	bl func_80036D78
/* 8002F85C 0002B4BC  2C 03 00 00 */	cmpwi r3, 0
/* 8002F860 0002B4C0  7C 7E 1B 78 */	mr r30, r3
/* 8002F864 0002B4C4  41 82 00 30 */	beq lbl_8002F894
/* 8002F868 0002B4C8  3B 43 00 12 */	addi r26, r3, 0x12
/* 8002F86C 0002B4CC  48 00 00 28 */	b lbl_8002F894
lbl_8002F870:
/* 8002F870 0002B4D0  28 19 00 03 */	cmplwi r25, 3
/* 8002F874 0002B4D4  40 82 00 20 */	bne lbl_8002F894
/* 8002F878 0002B4D8  7F E3 FB 78 */	mr r3, r31
/* 8002F87C 0002B4DC  7F 64 DB 78 */	mr r4, r27
/* 8002F880 0002B4E0  48 00 74 95 */	bl func_80036D14
/* 8002F884 0002B4E4  2C 03 00 00 */	cmpwi r3, 0
/* 8002F888 0002B4E8  7C 7E 1B 78 */	mr r30, r3
/* 8002F88C 0002B4EC  41 82 00 08 */	beq lbl_8002F894
/* 8002F890 0002B4F0  3B 43 00 12 */	addi r26, r3, 0x12
lbl_8002F894:
/* 8002F894 0002B4F4  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F898 0002B4F8  2C 00 00 01 */	cmpwi r0, 1
/* 8002F89C 0002B4FC  40 82 00 0C */	bne lbl_8002F8A8
/* 8002F8A0 0002B500  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F8A4 0002B504  48 00 00 28 */	b lbl_8002F8CC
lbl_8002F8A8:
/* 8002F8A8 0002B508  2C 00 00 02 */	cmpwi r0, 2
/* 8002F8AC 0002B50C  40 82 00 18 */	bne lbl_8002F8C4
/* 8002F8B0 0002B510  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F8B4 0002B514  FC 00 00 1E */	fctiwz f0, f0
/* 8002F8B8 0002B518  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F8BC 0002B51C  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F8C0 0002B520  48 00 00 0C */	b lbl_8002F8CC
lbl_8002F8C4:
/* 8002F8C4 0002B524  38 7D 00 08 */	addi r3, r29, 8
/* 8002F8C8 0002B528  48 1F E4 6D */	bl func_8022DD34
lbl_8002F8CC:
/* 8002F8CC 0002B52C  7F 24 CB 78 */	mr r4, r25
/* 8002F8D0 0002B530  7F 45 D3 78 */	mr r5, r26
/* 8002F8D4 0002B534  54 63 06 7E */	clrlwi r3, r3, 0x19
/* 8002F8D8 0002B538  48 04 45 25 */	bl func_80073DFC
/* 8002F8DC 0002B53C  38 19 FF FE */	addi r0, r25, -2
/* 8002F8E0 0002B540  28 00 00 01 */	cmplwi r0, 1
/* 8002F8E4 0002B544  41 81 03 78 */	bgt lbl_8002FC5C
/* 8002F8E8 0002B548  2C 1E 00 00 */	cmpwi r30, 0
/* 8002F8EC 0002B54C  41 82 03 70 */	beq lbl_8002FC5C
/* 8002F8F0 0002B550  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F8F4 0002B554  2C 00 00 01 */	cmpwi r0, 1
/* 8002F8F8 0002B558  40 82 00 0C */	bne lbl_8002F904
/* 8002F8FC 0002B55C  83 9D 00 0C */	lwz r28, 0xc(r29)
/* 8002F900 0002B560  48 00 00 2C */	b lbl_8002F92C
lbl_8002F904:
/* 8002F904 0002B564  2C 00 00 02 */	cmpwi r0, 2
/* 8002F908 0002B568  40 82 00 18 */	bne lbl_8002F920
/* 8002F90C 0002B56C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F910 0002B570  FC 00 00 1E */	fctiwz f0, f0
/* 8002F914 0002B574  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F918 0002B578  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F91C 0002B57C  48 00 00 0C */	b lbl_8002F928
lbl_8002F920:
/* 8002F920 0002B580  38 7D 00 08 */	addi r3, r29, 8
/* 8002F924 0002B584  48 1F E4 11 */	bl func_8022DD34
lbl_8002F928:
/* 8002F928 0002B588  7C 7C 1B 78 */	mr r28, r3
lbl_8002F92C:
/* 8002F92C 0002B58C  4B FD CE BD */	bl func_8000C7E8
/* 8002F930 0002B590  A0 BE 00 00 */	lhz r5, 0(r30)
/* 8002F934 0002B594  57 80 E0 06 */	slwi r0, r28, 0x1c
/* 8002F938 0002B598  53 25 83 1E */	rlwimi r5, r25, 0x10, 0xc, 0xf
/* 8002F93C 0002B59C  38 80 00 02 */	li r4, 2
/* 8002F940 0002B5A0  53 60 C1 0E */	rlwimi r0, r27, 0x18, 4, 7
/* 8002F944 0002B5A4  7C A5 03 78 */	or r5, r5, r0
/* 8002F948 0002B5A8  4B FF 25 7D */	bl func_80021EC4
/* 8002F94C 0002B5AC  48 00 03 10 */	b lbl_8002FC5C
/* 8002F950 0002B5B0  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 8002F954 0002B5B4  2C 00 00 01 */	cmpwi r0, 1
/* 8002F958 0002B5B8  40 82 00 0C */	bne lbl_8002F964
/* 8002F95C 0002B5BC  83 7D 00 14 */	lwz r27, 0x14(r29)
/* 8002F960 0002B5C0  48 00 00 2C */	b lbl_8002F98C
lbl_8002F964:
/* 8002F964 0002B5C4  2C 00 00 02 */	cmpwi r0, 2
/* 8002F968 0002B5C8  40 82 00 18 */	bne lbl_8002F980
/* 8002F96C 0002B5CC  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8002F970 0002B5D0  FC 00 00 1E */	fctiwz f0, f0
/* 8002F974 0002B5D4  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F978 0002B5D8  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F97C 0002B5DC  48 00 00 0C */	b lbl_8002F988
lbl_8002F980:
/* 8002F980 0002B5E0  38 7D 00 10 */	addi r3, r29, 0x10
/* 8002F984 0002B5E4  48 1F E3 B1 */	bl func_8022DD34
lbl_8002F988:
/* 8002F988 0002B5E8  7C 7B 1B 78 */	mr r27, r3
lbl_8002F98C:
/* 8002F98C 0002B5EC  7F E3 FB 78 */	mr r3, r31
/* 8002F990 0002B5F0  7F 64 DB 78 */	mr r4, r27
/* 8002F994 0002B5F4  3B 20 00 00 */	li r25, 0
/* 8002F998 0002B5F8  48 00 73 7D */	bl func_80036D14
/* 8002F99C 0002B5FC  2C 03 00 00 */	cmpwi r3, 0
/* 8002F9A0 0002B600  7C 7E 1B 78 */	mr r30, r3
/* 8002F9A4 0002B604  41 82 00 08 */	beq lbl_8002F9AC
/* 8002F9A8 0002B608  3B 23 00 12 */	addi r25, r3, 0x12
lbl_8002F9AC:
/* 8002F9AC 0002B60C  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002F9B0 0002B610  2C 00 00 01 */	cmpwi r0, 1
/* 8002F9B4 0002B614  40 82 00 0C */	bne lbl_8002F9C0
/* 8002F9B8 0002B618  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002F9BC 0002B61C  48 00 00 28 */	b lbl_8002F9E4
lbl_8002F9C0:
/* 8002F9C0 0002B620  2C 00 00 02 */	cmpwi r0, 2
/* 8002F9C4 0002B624  40 82 00 18 */	bne lbl_8002F9DC
/* 8002F9C8 0002B628  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002F9CC 0002B62C  FC 00 00 1E */	fctiwz f0, f0
/* 8002F9D0 0002B630  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002F9D4 0002B634  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002F9D8 0002B638  48 00 00 0C */	b lbl_8002F9E4
lbl_8002F9DC:
/* 8002F9DC 0002B63C  38 7D 00 08 */	addi r3, r29, 8
/* 8002F9E0 0002B640  48 1F E3 55 */	bl func_8022DD34
lbl_8002F9E4:
/* 8002F9E4 0002B644  7F 25 CB 78 */	mr r5, r25
/* 8002F9E8 0002B648  54 63 06 7E */	clrlwi r3, r3, 0x19
/* 8002F9EC 0002B64C  38 80 00 02 */	li r4, 2
/* 8002F9F0 0002B650  48 04 44 0D */	bl func_80073DFC
/* 8002F9F4 0002B654  2C 1E 00 00 */	cmpwi r30, 0
/* 8002F9F8 0002B658  41 82 02 64 */	beq lbl_8002FC5C
/* 8002F9FC 0002B65C  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002FA00 0002B660  2C 00 00 01 */	cmpwi r0, 1
/* 8002FA04 0002B664  40 82 00 0C */	bne lbl_8002FA10
/* 8002FA08 0002B668  83 9D 00 0C */	lwz r28, 0xc(r29)
/* 8002FA0C 0002B66C  48 00 00 2C */	b lbl_8002FA38
lbl_8002FA10:
/* 8002FA10 0002B670  2C 00 00 02 */	cmpwi r0, 2
/* 8002FA14 0002B674  40 82 00 18 */	bne lbl_8002FA2C
/* 8002FA18 0002B678  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002FA1C 0002B67C  FC 00 00 1E */	fctiwz f0, f0
/* 8002FA20 0002B680  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002FA24 0002B684  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002FA28 0002B688  48 00 00 0C */	b lbl_8002FA34
lbl_8002FA2C:
/* 8002FA2C 0002B68C  38 7D 00 08 */	addi r3, r29, 8
/* 8002FA30 0002B690  48 1F E3 05 */	bl func_8022DD34
lbl_8002FA34:
/* 8002FA34 0002B694  7C 7C 1B 78 */	mr r28, r3
lbl_8002FA38:
/* 8002FA38 0002B698  4B FD CD B1 */	bl func_8000C7E8
/* 8002FA3C 0002B69C  A0 BE 00 00 */	lhz r5, 0(r30)
/* 8002FA40 0002B6A0  57 80 E0 06 */	slwi r0, r28, 0x1c
/* 8002FA44 0002B6A4  53 60 C1 0E */	rlwimi r0, r27, 0x18, 4, 7
/* 8002FA48 0002B6A8  38 80 00 02 */	li r4, 2
/* 8002FA4C 0002B6AC  64 A5 00 02 */	oris r5, r5, 2
/* 8002FA50 0002B6B0  7C A5 03 78 */	or r5, r5, r0
/* 8002FA54 0002B6B4  4B FF 24 71 */	bl func_80021EC4
/* 8002FA58 0002B6B8  48 00 02 04 */	b lbl_8002FC5C
/* 8002FA5C 0002B6BC  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002FA60 0002B6C0  2C 00 00 01 */	cmpwi r0, 1
/* 8002FA64 0002B6C4  40 82 00 0C */	bne lbl_8002FA70
/* 8002FA68 0002B6C8  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002FA6C 0002B6CC  48 00 00 28 */	b lbl_8002FA94
lbl_8002FA70:
/* 8002FA70 0002B6D0  2C 00 00 02 */	cmpwi r0, 2
/* 8002FA74 0002B6D4  40 82 00 18 */	bne lbl_8002FA8C
/* 8002FA78 0002B6D8  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002FA7C 0002B6DC  FC 00 00 1E */	fctiwz f0, f0
/* 8002FA80 0002B6E0  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002FA84 0002B6E4  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002FA88 0002B6E8  48 00 00 0C */	b lbl_8002FA94
lbl_8002FA8C:
/* 8002FA8C 0002B6EC  38 7D 00 08 */	addi r3, r29, 8
/* 8002FA90 0002B6F0  48 1F E2 A5 */	bl func_8022DD34
lbl_8002FA94:
/* 8002FA94 0002B6F4  54 63 06 7E */	clrlwi r3, r3, 0x19
/* 8002FA98 0002B6F8  48 04 44 09 */	bl func_80073EA0
/* 8002FA9C 0002B6FC  48 00 01 C0 */	b lbl_8002FC5C
/* 8002FAA0 0002B700  38 60 2E D4 */	li r3, 0x2ed4
/* 8002FAA4 0002B704  48 22 08 41 */	bl func_802502E4
/* 8002FAA8 0002B708  2C 03 00 00 */	cmpwi r3, 0
/* 8002FAAC 0002B70C  40 82 00 50 */	bne lbl_8002FAFC
/* 8002FAB0 0002B710  38 60 2E D5 */	li r3, 0x2ed5
/* 8002FAB4 0002B714  48 22 08 31 */	bl func_802502E4
/* 8002FAB8 0002B718  2C 03 00 00 */	cmpwi r3, 0
/* 8002FABC 0002B71C  40 82 00 40 */	bne lbl_8002FAFC
/* 8002FAC0 0002B720  38 60 50 8A */	li r3, 0x508a
/* 8002FAC4 0002B724  48 22 08 21 */	bl func_802502E4
/* 8002FAC8 0002B728  2C 03 00 00 */	cmpwi r3, 0
/* 8002FACC 0002B72C  40 82 00 30 */	bne lbl_8002FAFC
/* 8002FAD0 0002B730  38 60 50 8B */	li r3, 0x508b
/* 8002FAD4 0002B734  48 22 08 11 */	bl func_802502E4
/* 8002FAD8 0002B738  2C 03 00 00 */	cmpwi r3, 0
/* 8002FADC 0002B73C  40 82 00 20 */	bne lbl_8002FAFC
/* 8002FAE0 0002B740  38 60 50 8C */	li r3, 0x508c
/* 8002FAE4 0002B744  48 22 08 01 */	bl func_802502E4
/* 8002FAE8 0002B748  2C 03 00 00 */	cmpwi r3, 0
/* 8002FAEC 0002B74C  40 82 00 10 */	bne lbl_8002FAFC
/* 8002FAF0 0002B750  88 0D 97 36 */	lbz r0, lbl_8063E9F6-_SDA_BASE_(r13)
/* 8002FAF4 0002B754  2C 00 00 00 */	cmpwi r0, 0
/* 8002FAF8 0002B758  41 82 00 14 */	beq lbl_8002FB0C
lbl_8002FAFC:
/* 8002FAFC 0002B75C  38 00 00 01 */	li r0, 1
/* 8002FB00 0002B760  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002FB04 0002B764  90 1E 00 04 */	stw r0, 4(r30)
/* 8002FB08 0002B768  48 00 01 54 */	b lbl_8002FC5C
lbl_8002FB0C:
/* 8002FB0C 0002B76C  38 60 00 01 */	li r3, 1
/* 8002FB10 0002B770  38 00 00 00 */	li r0, 0
/* 8002FB14 0002B774  B0 7E 00 00 */	sth r3, 0(r30)
/* 8002FB18 0002B778  90 1E 00 04 */	stw r0, 4(r30)
/* 8002FB1C 0002B77C  48 00 01 40 */	b lbl_8002FC5C
/* 8002FB20 0002B780  3B A0 00 01 */	li r29, 1
/* 8002FB24 0002B784  38 00 00 00 */	li r0, 0
/* 8002FB28 0002B788  B3 BE 00 00 */	sth r29, 0(r30)
/* 8002FB2C 0002B78C  90 1E 00 04 */	stw r0, 4(r30)
/* 8002FB30 0002B790  48 04 CB A1 */	bl func_8007C6D0
/* 8002FB34 0002B794  28 03 00 01 */	cmplwi r3, 1
/* 8002FB38 0002B798  40 82 01 24 */	bne lbl_8002FC5C
/* 8002FB3C 0002B79C  B3 BE 00 00 */	sth r29, 0(r30)
/* 8002FB40 0002B7A0  93 BE 00 04 */	stw r29, 4(r30)
/* 8002FB44 0002B7A4  48 00 01 18 */	b lbl_8002FC5C
/* 8002FB48 0002B7A8  3B A0 00 01 */	li r29, 1
/* 8002FB4C 0002B7AC  38 00 00 00 */	li r0, 0
/* 8002FB50 0002B7B0  B3 BE 00 00 */	sth r29, 0(r30)
/* 8002FB54 0002B7B4  90 1E 00 04 */	stw r0, 4(r30)
/* 8002FB58 0002B7B8  48 04 3B 25 */	bl func_8007367C
/* 8002FB5C 0002B7BC  2C 03 00 00 */	cmpwi r3, 0
/* 8002FB60 0002B7C0  40 82 00 FC */	bne lbl_8002FC5C
/* 8002FB64 0002B7C4  B3 BE 00 00 */	sth r29, 0(r30)
/* 8002FB68 0002B7C8  93 BE 00 04 */	stw r29, 4(r30)
/* 8002FB6C 0002B7CC  48 00 00 F0 */	b lbl_8002FC5C
/* 8002FB70 0002B7D0  48 02 67 05 */	bl func_80056274
/* 8002FB74 0002B7D4  48 00 00 E8 */	b lbl_8002FC5C
/* 8002FB78 0002B7D8  3B A0 00 01 */	li r29, 1
/* 8002FB7C 0002B7DC  38 00 00 00 */	li r0, 0
/* 8002FB80 0002B7E0  B3 BE 00 00 */	sth r29, 0(r30)
/* 8002FB84 0002B7E4  90 1E 00 04 */	stw r0, 4(r30)
/* 8002FB88 0002B7E8  48 02 67 71 */	bl func_800562F8
/* 8002FB8C 0002B7EC  28 03 00 01 */	cmplwi r3, 1
/* 8002FB90 0002B7F0  40 82 00 CC */	bne lbl_8002FC5C
/* 8002FB94 0002B7F4  B3 BE 00 00 */	sth r29, 0(r30)
/* 8002FB98 0002B7F8  93 BE 00 04 */	stw r29, 4(r30)
/* 8002FB9C 0002B7FC  48 00 00 C0 */	b lbl_8002FC5C
/* 8002FBA0 0002B800  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002FBA4 0002B804  2C 00 00 01 */	cmpwi r0, 1
/* 8002FBA8 0002B808  40 82 00 0C */	bne lbl_8002FBB4
/* 8002FBAC 0002B80C  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002FBB0 0002B810  48 00 00 28 */	b lbl_8002FBD8
lbl_8002FBB4:
/* 8002FBB4 0002B814  2C 00 00 02 */	cmpwi r0, 2
/* 8002FBB8 0002B818  40 82 00 18 */	bne lbl_8002FBD0
/* 8002FBBC 0002B81C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002FBC0 0002B820  FC 00 00 1E */	fctiwz f0, f0
/* 8002FBC4 0002B824  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002FBC8 0002B828  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002FBCC 0002B82C  48 00 00 0C */	b lbl_8002FBD8
lbl_8002FBD0:
/* 8002FBD0 0002B830  38 7D 00 08 */	addi r3, r29, 8
/* 8002FBD4 0002B834  48 1F E1 61 */	bl func_8022DD34
lbl_8002FBD8:
/* 8002FBD8 0002B838  2C 03 00 00 */	cmpwi r3, 0
/* 8002FBDC 0002B83C  41 82 00 18 */	beq lbl_8002FBF4
/* 8002FBE0 0002B840  48 02 66 DD */	bl func_800562BC
/* 8002FBE4 0002B844  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 8002FBE8 0002B848  38 80 0C 1C */	li r4, 0xc1c
/* 8002FBEC 0002B84C  48 1F 6B BD */	bl func_802267A8
/* 8002FBF0 0002B850  48 00 00 6C */	b lbl_8002FC5C
lbl_8002FBF4:
/* 8002FBF4 0002B854  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 8002FBF8 0002B858  38 80 08 34 */	li r4, 0x834
/* 8002FBFC 0002B85C  48 1F 6B AD */	bl func_802267A8
/* 8002FC00 0002B860  48 00 00 5C */	b lbl_8002FC5C
/* 8002FC04 0002B864  48 04 3A C1 */	bl func_800736C4
/* 8002FC08 0002B868  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8002FC0C 0002B86C  38 00 00 01 */	li r0, 1
/* 8002FC10 0002B870  B0 1E 00 00 */	sth r0, 0(r30)
/* 8002FC14 0002B874  90 7E 00 04 */	stw r3, 4(r30)
/* 8002FC18 0002B878  48 00 00 44 */	b lbl_8002FC5C
/* 8002FC1C 0002B87C  A8 1D 00 08 */	lha r0, 8(r29)
/* 8002FC20 0002B880  2C 00 00 01 */	cmpwi r0, 1
/* 8002FC24 0002B884  40 82 00 0C */	bne lbl_8002FC30
/* 8002FC28 0002B888  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8002FC2C 0002B88C  48 00 00 28 */	b lbl_8002FC54
lbl_8002FC30:
/* 8002FC30 0002B890  2C 00 00 02 */	cmpwi r0, 2
/* 8002FC34 0002B894  40 82 00 18 */	bne lbl_8002FC4C
/* 8002FC38 0002B898  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8002FC3C 0002B89C  FC 00 00 1E */	fctiwz f0, f0
/* 8002FC40 0002B8A0  D8 01 01 78 */	stfd f0, 0x178(r1)
/* 8002FC44 0002B8A4  80 61 01 7C */	lwz r3, 0x17c(r1)
/* 8002FC48 0002B8A8  48 00 00 0C */	b lbl_8002FC54
lbl_8002FC4C:
/* 8002FC4C 0002B8AC  38 7D 00 08 */	addi r3, r29, 8
/* 8002FC50 0002B8B0  48 1F E0 E5 */	bl func_8022DD34
lbl_8002FC54:
/* 8002FC54 0002B8B4  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8002FC58 0002B8B8  48 03 AB CD */	bl func_8006A824
lbl_8002FC5C:
/* 8002FC5C 0002B8BC  38 60 00 01 */	li r3, 1
lbl_8002FC60:
/* 8002FC60 0002B8C0  E3 E1 01 A8 */	psq_l f31, 424(r1), 0, qr0
/* 8002FC64 0002B8C4  39 61 01 A0 */	addi r11, r1, 0x1a0
/* 8002FC68 0002B8C8  CB E1 01 A0 */	lfd f31, 0x1a0(r1)
/* 8002FC6C 0002B8CC  48 19 75 01 */	bl _restgpr_25
/* 8002FC70 0002B8D0  80 01 01 B4 */	lwz r0, 0x1b4(r1)
/* 8002FC74 0002B8D4  7C 08 03 A6 */	mtlr r0
/* 8002FC78 0002B8D8  38 21 01 B0 */	addi r1, r1, 0x1b0
/* 8002FC7C 0002B8DC  4E 80 00 20 */	blr

.global func_8002FC80
func_8002FC80:
/* 8002FC80 0002B8E0  94 21 FE C0 */	stwu r1, -0x140(r1)
/* 8002FC84 0002B8E4  7C 08 02 A6 */	mflr r0
/* 8002FC88 0002B8E8  90 01 01 44 */	stw r0, 0x144(r1)
/* 8002FC8C 0002B8EC  39 61 01 40 */	addi r11, r1, 0x140
/* 8002FC90 0002B8F0  48 19 74 81 */	bl _savegpr_21
/* 8002FC94 0002B8F4  3C C0 80 47 */	lis r6, lbl_80474F38@ha
/* 8002FC98 0002B8F8  3B E0 00 00 */	li r31, 0
/* 8002FC9C 0002B8FC  38 86 4F 38 */	addi r4, r6, lbl_80474F38@l
/* 8002FCA0 0002B900  B3 E6 4F 38 */	sth r31, 0x4f38(r6)
/* 8002FCA4 0002B904  7C BA 2B 78 */	mr r26, r5
/* 8002FCA8 0002B908  7C 67 1B 78 */	mr r7, r3
/* 8002FCAC 0002B90C  B3 E4 01 00 */	sth r31, 0x100(r4)
/* 8002FCB0 0002B910  3B A0 00 01 */	li r29, 1
/* 8002FCB4 0002B914  38 80 00 00 */	li r4, 0
/* 8002FCB8 0002B918  3B 80 00 00 */	li r28, 0
/* 8002FCBC 0002B91C  3B C0 00 00 */	li r30, 0
/* 8002FCC0 0002B920  3B 60 00 00 */	li r27, 0
/* 8002FCC4 0002B924  3B 20 00 00 */	li r25, 0
/* 8002FCC8 0002B928  38 C0 00 00 */	li r6, 0
/* 8002FCCC 0002B92C  48 00 00 34 */	b lbl_8002FD00
lbl_8002FCD0:
/* 8002FCD0 0002B930  A0 07 00 00 */	lhz r0, 0(r7)
/* 8002FCD4 0002B934  38 E7 00 02 */	addi r7, r7, 2
/* 8002FCD8 0002B938  28 00 E0 00 */	cmplwi r0, 0xe000
/* 8002FCDC 0002B93C  40 82 00 08 */	bne lbl_8002FCE4
/* 8002FCE0 0002B940  3B BD 00 01 */	addi r29, r29, 1
lbl_8002FCE4:
/* 8002FCE4 0002B944  A0 A7 00 00 */	lhz r5, 0(r7)
/* 8002FCE8 0002B948  3C A5 00 01 */	addis r5, r5, 1
/* 8002FCEC 0002B94C  38 05 FE 01 */	addi r0, r5, -511
/* 8002FCF0 0002B950  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 8002FCF4 0002B954  28 00 00 01 */	cmplwi r0, 1
/* 8002FCF8 0002B958  41 81 00 08 */	bgt lbl_8002FD00
/* 8002FCFC 0002B95C  38 C0 00 01 */	li r6, 1
lbl_8002FD00:
/* 8002FD00 0002B960  A0 07 00 00 */	lhz r0, 0(r7)
/* 8002FD04 0002B964  28 00 FF FF */	cmplwi r0, 0xffff
/* 8002FD08 0002B968  40 82 FF C8 */	bne lbl_8002FCD0
/* 8002FD0C 0002B96C  2C 06 00 00 */	cmpwi r6, 0
/* 8002FD10 0002B970  41 82 01 F8 */	beq lbl_8002FF08
/* 8002FD14 0002B974  3E A0 80 47 */	lis r21, lbl_80474F38@ha
/* 8002FD18 0002B978  7C 78 1B 78 */	mr r24, r3
/* 8002FD1C 0002B97C  3A C1 00 08 */	addi r22, r1, 8
/* 8002FD20 0002B980  3B 80 00 00 */	li r28, 0
/* 8002FD24 0002B984  3A B5 4F 38 */	addi r21, r21, lbl_80474F38@l
/* 8002FD28 0002B988  3E E0 00 01 */	lis r23, 1
/* 8002FD2C 0002B98C  48 00 00 6C */	b lbl_8002FD98
lbl_8002FD30:
/* 8002FD30 0002B990  3C 64 00 01 */	addis r3, r4, 1
/* 8002FD34 0002B994  38 03 FE 01 */	addi r0, r3, -511
/* 8002FD38 0002B998  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 8002FD3C 0002B99C  28 00 00 01 */	cmplwi r0, 1
/* 8002FD40 0002B9A0  41 81 00 48 */	bgt lbl_8002FD88
/* 8002FD44 0002B9A4  57 80 08 3C */	slwi r0, r28, 1
/* 8002FD48 0002B9A8  38 77 FF FF */	addi r3, r23, -1
/* 8002FD4C 0002B9AC  7C 76 03 2E */	sthx r3, r22, r0
/* 8002FD50 0002B9B0  3B 9C 00 01 */	addi r28, r28, 1
/* 8002FD54 0002B9B4  7C 75 FA 14 */	add r3, r21, r31
/* 8002FD58 0002B9B8  7E C4 B3 78 */	mr r4, r22
/* 8002FD5C 0002B9BC  7F 85 E3 78 */	mr r5, r28
/* 8002FD60 0002B9C0  3B 7B 00 01 */	addi r27, r27, 1
/* 8002FD64 0002B9C4  3B FF 01 00 */	addi r31, r31, 0x100
/* 8002FD68 0002B9C8  48 14 73 19 */	bl func_80177080
/* 8002FD6C 0002B9CC  A0 18 00 02 */	lhz r0, 2(r24)
/* 8002FD70 0002B9D0  93 9A 00 00 */	stw r28, 0(r26)
/* 8002FD74 0002B9D4  3B 80 00 00 */	li r28, 0
/* 8002FD78 0002B9D8  28 00 E0 00 */	cmplwi r0, 0xe000
/* 8002FD7C 0002B9DC  40 82 00 18 */	bne lbl_8002FD94
/* 8002FD80 0002B9E0  3B 18 00 02 */	addi r24, r24, 2
/* 8002FD84 0002B9E4  48 00 00 10 */	b lbl_8002FD94
lbl_8002FD88:
/* 8002FD88 0002B9E8  57 80 08 3C */	slwi r0, r28, 1
/* 8002FD8C 0002B9EC  3B 9C 00 01 */	addi r28, r28, 1
/* 8002FD90 0002B9F0  7C 96 03 2E */	sthx r4, r22, r0
lbl_8002FD94:
/* 8002FD94 0002B9F4  3B 18 00 02 */	addi r24, r24, 2
lbl_8002FD98:
/* 8002FD98 0002B9F8  A0 98 00 00 */	lhz r4, 0(r24)
/* 8002FD9C 0002B9FC  28 04 FF FF */	cmplwi r4, 0xffff
/* 8002FDA0 0002BA00  40 82 FF 90 */	bne lbl_8002FD30
/* 8002FDA4 0002BA04  2C 1C 00 00 */	cmpwi r28, 0
/* 8002FDA8 0002BA08  41 82 01 58 */	beq lbl_8002FF00
/* 8002FDAC 0002BA0C  2C 9C 00 14 */	cmpwi cr1, r28, 0x14
/* 8002FDB0 0002BA10  7F 88 E3 78 */	mr r8, r28
/* 8002FDB4 0002BA14  40 84 01 1C */	bge cr1, lbl_8002FED0
/* 8002FDB8 0002BA18  20 FC 00 14 */	subfic r7, r28, 0x14
/* 8002FDBC 0002BA1C  2C 07 00 08 */	cmpwi r7, 8
/* 8002FDC0 0002BA20  40 81 00 E4 */	ble lbl_8002FEA4
/* 8002FDC4 0002BA24  38 80 00 00 */	li r4, 0
/* 8002FDC8 0002BA28  38 A0 00 00 */	li r5, 0
/* 8002FDCC 0002BA2C  38 C0 00 00 */	li r6, 0
/* 8002FDD0 0002BA30  41 85 00 18 */	bgt cr1, lbl_8002FDE8
/* 8002FDD4 0002BA34  3C 60 80 00 */	lis r3, 0x7FFFFFFE@ha
/* 8002FDD8 0002BA38  38 03 FF FE */	addi r0, r3, 0x7FFFFFFE@l
/* 8002FDDC 0002BA3C  7C 1C 00 00 */	cmpw r28, r0
/* 8002FDE0 0002BA40  41 81 00 08 */	bgt lbl_8002FDE8
/* 8002FDE4 0002BA44  38 C0 00 01 */	li r6, 1
lbl_8002FDE8:
/* 8002FDE8 0002BA48  2C 06 00 00 */	cmpwi r6, 0
/* 8002FDEC 0002BA4C  41 82 00 14 */	beq lbl_8002FE00
/* 8002FDF0 0002BA50  3C 1C 80 00 */	addis r0, r28, 0x8000
/* 8002FDF4 0002BA54  28 00 00 00 */	cmplwi r0, 0
/* 8002FDF8 0002BA58  41 82 00 08 */	beq lbl_8002FE00
/* 8002FDFC 0002BA5C  38 A0 00 01 */	li r5, 1
lbl_8002FE00:
/* 8002FE00 0002BA60  2C 05 00 00 */	cmpwi r5, 0
/* 8002FE04 0002BA64  41 82 00 2C */	beq lbl_8002FE30
/* 8002FE08 0002BA68  7C 1C 00 D0 */	neg r0, r28
/* 8002FE0C 0002BA6C  38 60 00 01 */	li r3, 1
/* 8002FE10 0002BA70  54 00 00 01 */	rlwinm. r0, r0, 0, 0, 0
/* 8002FE14 0002BA74  40 82 00 10 */	bne lbl_8002FE24
/* 8002FE18 0002BA78  54 E0 00 01 */	rlwinm. r0, r7, 0, 0, 0
/* 8002FE1C 0002BA7C  41 82 00 08 */	beq lbl_8002FE24
/* 8002FE20 0002BA80  38 60 00 00 */	li r3, 0
lbl_8002FE24:
/* 8002FE24 0002BA84  2C 03 00 00 */	cmpwi r3, 0
/* 8002FE28 0002BA88  41 82 00 08 */	beq lbl_8002FE30
/* 8002FE2C 0002BA8C  38 80 00 01 */	li r4, 1
lbl_8002FE30:
/* 8002FE30 0002BA90  2C 04 00 00 */	cmpwi r4, 0
/* 8002FE34 0002BA94  41 82 00 70 */	beq lbl_8002FEA4
/* 8002FE38 0002BA98  20 1C 00 13 */	subfic r0, r28, 0x13
/* 8002FE3C 0002BA9C  38 81 00 08 */	addi r4, r1, 8
/* 8002FE40 0002BAA0  54 00 E8 FE */	srwi r0, r0, 3
/* 8002FE44 0002BAA4  57 83 08 3C */	slwi r3, r28, 1
/* 8002FE48 0002BAA8  38 A0 00 01 */	li r5, 1
/* 8002FE4C 0002BAAC  7C 09 03 A6 */	mtctr r0
/* 8002FE50 0002BAB0  2C 1C 00 0C */	cmpwi r28, 0xc
/* 8002FE54 0002BAB4  40 80 00 50 */	bge lbl_8002FEA4
lbl_8002FE58:
/* 8002FE58 0002BAB8  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE5C 0002BABC  38 63 00 02 */	addi r3, r3, 2
/* 8002FE60 0002BAC0  39 08 00 08 */	addi r8, r8, 8
/* 8002FE64 0002BAC4  3B 9C 00 08 */	addi r28, r28, 8
/* 8002FE68 0002BAC8  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE6C 0002BACC  38 63 00 02 */	addi r3, r3, 2
/* 8002FE70 0002BAD0  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE74 0002BAD4  38 63 00 02 */	addi r3, r3, 2
/* 8002FE78 0002BAD8  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE7C 0002BADC  38 63 00 02 */	addi r3, r3, 2
/* 8002FE80 0002BAE0  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE84 0002BAE4  38 63 00 02 */	addi r3, r3, 2
/* 8002FE88 0002BAE8  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE8C 0002BAEC  38 63 00 02 */	addi r3, r3, 2
/* 8002FE90 0002BAF0  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE94 0002BAF4  38 63 00 02 */	addi r3, r3, 2
/* 8002FE98 0002BAF8  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FE9C 0002BAFC  38 63 00 02 */	addi r3, r3, 2
/* 8002FEA0 0002BB00  42 00 FF B8 */	bdnz lbl_8002FE58
lbl_8002FEA4:
/* 8002FEA4 0002BB04  20 08 00 14 */	subfic r0, r8, 0x14
/* 8002FEA8 0002BB08  38 81 00 08 */	addi r4, r1, 8
/* 8002FEAC 0002BB0C  57 83 08 3C */	slwi r3, r28, 1
/* 8002FEB0 0002BB10  38 A0 00 01 */	li r5, 1
/* 8002FEB4 0002BB14  7C 09 03 A6 */	mtctr r0
/* 8002FEB8 0002BB18  2C 08 00 14 */	cmpwi r8, 0x14
/* 8002FEBC 0002BB1C  40 80 00 14 */	bge lbl_8002FED0
lbl_8002FEC0:
/* 8002FEC0 0002BB20  7C A4 1B 2E */	sthx r5, r4, r3
/* 8002FEC4 0002BB24  3B 9C 00 01 */	addi r28, r28, 1
/* 8002FEC8 0002BB28  38 63 00 02 */	addi r3, r3, 2
/* 8002FECC 0002BB2C  42 00 FF F4 */	bdnz lbl_8002FEC0
lbl_8002FED0:
/* 8002FED0 0002BB30  3C C0 00 01 */	lis r6, 0x0000FFFF@ha
/* 8002FED4 0002BB34  3C 60 80 47 */	lis r3, lbl_80474F38@ha
/* 8002FED8 0002BB38  38 81 00 08 */	addi r4, r1, 8
/* 8002FEDC 0002BB3C  57 85 08 3C */	slwi r5, r28, 1
/* 8002FEE0 0002BB40  38 C6 FF FF */	addi r6, r6, 0x0000FFFF@l
/* 8002FEE4 0002BB44  57 60 40 2E */	slwi r0, r27, 8
/* 8002FEE8 0002BB48  38 63 4F 38 */	addi r3, r3, lbl_80474F38@l
/* 8002FEEC 0002BB4C  7C C4 2B 2E */	sthx r6, r4, r5
/* 8002FEF0 0002BB50  38 BC 00 01 */	addi r5, r28, 1
/* 8002FEF4 0002BB54  3B 7B 00 01 */	addi r27, r27, 1
/* 8002FEF8 0002BB58  7C 63 02 14 */	add r3, r3, r0
/* 8002FEFC 0002BB5C  48 14 71 85 */	bl func_80177080
lbl_8002FF00:
/* 8002FF00 0002BB60  7F 63 DB 78 */	mr r3, r27
/* 8002FF04 0002BB64  48 00 01 54 */	b lbl_80030058
lbl_8002FF08:
/* 8002FF08 0002BB68  3F 00 80 47 */	lis r24, lbl_80474F38@ha
/* 8002FF0C 0002BB6C  7C 7F 1B 78 */	mr r31, r3
/* 8002FF10 0002BB70  3A E1 00 08 */	addi r23, r1, 8
/* 8002FF14 0002BB74  3E C0 00 01 */	lis r22, 1
/* 8002FF18 0002BB78  3B 18 4F 38 */	addi r24, r24, lbl_80474F38@l
/* 8002FF1C 0002BB7C  3A A0 00 01 */	li r21, 1
/* 8002FF20 0002BB80  48 00 00 F8 */	b lbl_80030018
lbl_8002FF24:
/* 8002FF24 0002BB84  2C 1E 00 7E */	cmpwi r30, 0x7e
/* 8002FF28 0002BB88  40 80 00 FC */	bge lbl_80030024
/* 8002FF2C 0002BB8C  28 05 01 FF */	cmplwi r5, 0x1ff
/* 8002FF30 0002BB90  41 82 00 E4 */	beq lbl_80030014
/* 8002FF34 0002BB94  28 05 02 00 */	cmplwi r5, 0x200
/* 8002FF38 0002BB98  41 82 00 DC */	beq lbl_80030014
/* 8002FF3C 0002BB9C  28 05 E0 00 */	cmplwi r5, 0xe000
/* 8002FF40 0002BBA0  40 82 00 B8 */	bne lbl_8002FFF8
/* 8002FF44 0002BBA4  3B 9C 00 01 */	addi r28, r28, 1
/* 8002FF48 0002BBA8  2C 1C 00 02 */	cmpwi r28, 2
/* 8002FF4C 0002BBAC  40 82 00 A8 */	bne lbl_8002FFF4
/* 8002FF50 0002BBB0  2C 1D 00 03 */	cmpwi r29, 3
/* 8002FF54 0002BBB4  40 82 00 60 */	bne lbl_8002FFB4
/* 8002FF58 0002BBB8  7F E7 FB 78 */	mr r7, r31
/* 8002FF5C 0002BBBC  39 00 00 00 */	li r8, 0
lbl_8002FF60:
/* 8002FF60 0002BBC0  A4 C7 00 02 */	lhzu r6, 2(r7)
/* 8002FF64 0002BBC4  3C 66 00 01 */	addis r3, r6, 1
/* 8002FF68 0002BBC8  38 03 FE 01 */	addi r0, r3, -511
/* 8002FF6C 0002BBCC  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 8002FF70 0002BBD0  28 00 00 01 */	cmplwi r0, 1
/* 8002FF74 0002BBD4  41 81 00 0C */	bgt lbl_8002FF80
/* 8002FF78 0002BBD8  38 E7 00 02 */	addi r7, r7, 2
/* 8002FF7C 0002BBDC  4B FF FF E4 */	b lbl_8002FF60
lbl_8002FF80:
/* 8002FF80 0002BBE0  28 06 E0 00 */	cmplwi r6, 0xe000
/* 8002FF84 0002BBE4  41 82 00 14 */	beq lbl_8002FF98
/* 8002FF88 0002BBE8  28 06 FF FF */	cmplwi r6, 0xffff
/* 8002FF8C 0002BBEC  41 82 00 0C */	beq lbl_8002FF98
/* 8002FF90 0002BBF0  39 08 00 01 */	addi r8, r8, 1
/* 8002FF94 0002BBF4  4B FF FF CC */	b lbl_8002FF60
lbl_8002FF98:
/* 8002FF98 0002BBF8  7C 08 22 14 */	add r0, r8, r4
/* 8002FF9C 0002BBFC  2C 00 00 16 */	cmpwi r0, 0x16
/* 8002FFA0 0002BC00  40 80 00 14 */	bge lbl_8002FFB4
/* 8002FFA4 0002BC04  57 C0 08 3C */	slwi r0, r30, 1
/* 8002FFA8 0002BC08  3B DE 00 01 */	addi r30, r30, 1
/* 8002FFAC 0002BC0C  7E B7 03 2E */	sthx r21, r23, r0
/* 8002FFB0 0002BC10  48 00 00 64 */	b lbl_80030014
lbl_8002FFB4:
/* 8002FFB4 0002BC14  28 05 E0 00 */	cmplwi r5, 0xe000
/* 8002FFB8 0002BC18  40 82 00 3C */	bne lbl_8002FFF4
/* 8002FFBC 0002BC1C  57 C0 08 3C */	slwi r0, r30, 1
/* 8002FFC0 0002BC20  38 76 FF FF */	addi r3, r22, -1
/* 8002FFC4 0002BC24  7C 77 03 2E */	sthx r3, r23, r0
/* 8002FFC8 0002BC28  3B DE 00 01 */	addi r30, r30, 1
/* 8002FFCC 0002BC2C  7C 78 CA 14 */	add r3, r24, r25
/* 8002FFD0 0002BC30  7E E4 BB 78 */	mr r4, r23
/* 8002FFD4 0002BC34  7F C5 F3 78 */	mr r5, r30
/* 8002FFD8 0002BC38  3B 7B 00 01 */	addi r27, r27, 1
/* 8002FFDC 0002BC3C  3B 39 01 00 */	addi r25, r25, 0x100
/* 8002FFE0 0002BC40  48 14 70 A1 */	bl func_80177080
/* 8002FFE4 0002BC44  93 DA 00 00 */	stw r30, 0(r26)
/* 8002FFE8 0002BC48  3B C0 00 00 */	li r30, 0
/* 8002FFEC 0002BC4C  38 80 00 00 */	li r4, 0
/* 8002FFF0 0002BC50  48 00 00 24 */	b lbl_80030014
lbl_8002FFF4:
/* 8002FFF4 0002BC54  38 80 00 00 */	li r4, 0
lbl_8002FFF8:
/* 8002FFF8 0002BC58  A0 1F 00 00 */	lhz r0, 0(r31)
/* 8002FFFC 0002BC5C  57 C3 08 3C */	slwi r3, r30, 1
/* 80030000 0002BC60  7C B7 1B 2E */	sthx r5, r23, r3
/* 80030004 0002BC64  3B DE 00 01 */	addi r30, r30, 1
/* 80030008 0002BC68  28 00 E0 00 */	cmplwi r0, 0xe000
/* 8003000C 0002BC6C  41 82 00 08 */	beq lbl_80030014
/* 80030010 0002BC70  38 84 00 01 */	addi r4, r4, 1
lbl_80030014:
/* 80030014 0002BC74  3B FF 00 02 */	addi r31, r31, 2
lbl_80030018:
/* 80030018 0002BC78  A0 BF 00 00 */	lhz r5, 0(r31)
/* 8003001C 0002BC7C  28 05 FF FF */	cmplwi r5, 0xffff
/* 80030020 0002BC80  40 82 FF 04 */	bne lbl_8002FF24
lbl_80030024:
/* 80030024 0002BC84  3C C0 00 01 */	lis r6, 0x0000FFFF@ha
/* 80030028 0002BC88  3C 60 80 47 */	lis r3, lbl_80474F38@ha
/* 8003002C 0002BC8C  38 81 00 08 */	addi r4, r1, 8
/* 80030030 0002BC90  57 C5 08 3C */	slwi r5, r30, 1
/* 80030034 0002BC94  38 C6 FF FF */	addi r6, r6, 0x0000FFFF@l
/* 80030038 0002BC98  57 60 40 2E */	slwi r0, r27, 8
/* 8003003C 0002BC9C  38 63 4F 38 */	addi r3, r3, lbl_80474F38@l
/* 80030040 0002BCA0  7C C4 2B 2E */	sthx r6, r4, r5
/* 80030044 0002BCA4  38 BE 00 01 */	addi r5, r30, 1
/* 80030048 0002BCA8  3B 7B 00 01 */	addi r27, r27, 1
/* 8003004C 0002BCAC  7C 63 02 14 */	add r3, r3, r0
/* 80030050 0002BCB0  48 14 70 31 */	bl func_80177080
/* 80030054 0002BCB4  7F 63 DB 78 */	mr r3, r27
lbl_80030058:
/* 80030058 0002BCB8  39 61 01 40 */	addi r11, r1, 0x140
/* 8003005C 0002BCBC  48 19 71 01 */	bl _restgpr_21
/* 80030060 0002BCC0  80 01 01 44 */	lwz r0, 0x144(r1)
/* 80030064 0002BCC4  7C 08 03 A6 */	mtlr r0
/* 80030068 0002BCC8  38 21 01 40 */	addi r1, r1, 0x140
/* 8003006C 0002BCCC  4E 80 00 20 */	blr

.global func_80030070
func_80030070:
/* 80030070 0002BCD0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80030074 0002BCD4  7C 08 02 A6 */	mflr r0
/* 80030078 0002BCD8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003007C 0002BCDC  88 0D 97 36 */	lbz r0, lbl_8063E9F6-_SDA_BASE_(r13)
/* 80030080 0002BCE0  2C 00 00 00 */	cmpwi r0, 0
/* 80030084 0002BCE4  41 82 00 80 */	beq lbl_80030104
/* 80030088 0002BCE8  C0 0D 97 38 */	lfs f0, lbl_8063E9F8-_SDA_BASE_(r13)
/* 8003008C 0002BCEC  38 60 50 8A */	li r3, 0x508a
/* 80030090 0002BCF0  EC 00 08 28 */	fsubs f0, f0, f1
/* 80030094 0002BCF4  D0 0D 97 38 */	stfs f0, lbl_8063E9F8-_SDA_BASE_(r13)
/* 80030098 0002BCF8  48 22 02 4D */	bl func_802502E4
/* 8003009C 0002BCFC  2C 03 00 00 */	cmpwi r3, 0
/* 800300A0 0002BD00  40 82 00 64 */	bne lbl_80030104
/* 800300A4 0002BD04  38 60 50 8B */	li r3, 0x508b
/* 800300A8 0002BD08  48 22 02 3D */	bl func_802502E4
/* 800300AC 0002BD0C  2C 03 00 00 */	cmpwi r3, 0
/* 800300B0 0002BD10  40 82 00 54 */	bne lbl_80030104
/* 800300B4 0002BD14  38 00 00 00 */	li r0, 0
/* 800300B8 0002BD18  38 60 50 8B */	li r3, 0x508b
/* 800300BC 0002BD1C  98 0D 97 36 */	stb r0, lbl_8063E9F6-_SDA_BASE_(r13)
/* 800300C0 0002BD20  48 22 02 15 */	bl func_802502D4
/* 800300C4 0002BD24  38 60 50 8A */	li r3, 0x508a
/* 800300C8 0002BD28  48 22 02 0D */	bl func_802502D4
/* 800300CC 0002BD2C  3C 80 80 47 */	lis r4, lbl_80474F38@ha
/* 800300D0 0002BD30  38 60 00 10 */	li r3, 0x10
/* 800300D4 0002BD34  38 84 4F 38 */	addi r4, r4, lbl_80474F38@l
/* 800300D8 0002BD38  38 84 01 00 */	addi r4, r4, 0x100
/* 800300DC 0002BD3C  48 12 C2 2D */	bl func_8015C308
/* 800300E0 0002BD40  80 8D 97 3C */	lwz r4, lbl_8063E9FC-_SDA_BASE_(r13)
/* 800300E4 0002BD44  38 60 50 8A */	li r3, 0x508a
/* 800300E8 0002BD48  80 AD 97 40 */	lwz r5, lbl_8063EA00-_SDA_BASE_(r13)
/* 800300EC 0002BD4C  39 00 FF FF */	li r8, -1
/* 800300F0 0002BD50  A8 CD 97 44 */	lha r6, lbl_8063EA04-_SDA_BASE_(r13)
/* 800300F4 0002BD54  39 20 00 00 */	li r9, 0
/* 800300F8 0002BD58  A8 ED 97 46 */	lha r7, lbl_8063EA06-_SDA_BASE_(r13)
/* 800300FC 0002BD5C  39 40 00 01 */	li r10, 1
/* 80030100 0002BD60  48 21 FF 9D */	bl func_8025009C
lbl_80030104:
/* 80030104 0002BD64  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80030108 0002BD68  7C 08 03 A6 */	mtlr r0
/* 8003010C 0002BD6C  38 21 00 10 */	addi r1, r1, 0x10
/* 80030110 0002BD70  4E 80 00 20 */	blr

.global func_80030114
func_80030114:
/* 80030114 0002BD74  38 A0 00 01 */	li r5, 1
/* 80030118 0002BD78  38 6D 97 30 */	addi r3, r13, lbl_8063E9F0-_SDA_BASE_
/* 8003011C 0002BD7C  38 80 00 04 */	li r4, 4
/* 80030120 0002BD80  38 00 00 00 */	li r0, 0
/* 80030124 0002BD84  98 AD 97 30 */	stb r5, lbl_8063E9F0-_SDA_BASE_(r13)
/* 80030128 0002BD88  B0 83 00 02 */	sth r4, 2(r3)
/* 8003012C 0002BD8C  98 03 00 04 */	stb r0, 4(r3)
/* 80030130 0002BD90  4E 80 00 20 */	blr

.global lbl_80030134
lbl_80030134:
/* 80030134 0002BD94  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80030138 0002BD98  7C 08 02 A6 */	mflr r0
/* 8003013C 0002BD9C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80030140 0002BDA0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80030144 0002BDA4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80030148 0002BDA8  7C DE 33 78 */	mr r30, r6
/* 8003014C 0002BDAC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80030150 0002BDB0  7C BD 2B 78 */	mr r29, r5
/* 80030154 0002BDB4  93 81 00 10 */	stw r28, 0x10(r1)
/* 80030158 0002BDB8  7C 9C 23 78 */	mr r28, r4
/* 8003015C 0002BDBC  48 01 46 ED */	bl func_80044848
/* 80030160 0002BDC0  2C 1C 00 12 */	cmpwi r28, 0x12
/* 80030164 0002BDC4  7C 7F 1B 78 */	mr r31, r3
/* 80030168 0002BDC8  41 82 00 C4 */	beq lbl_8003022C
/* 8003016C 0002BDCC  40 80 01 70 */	bge lbl_800302DC
/* 80030170 0002BDD0  2C 1C 00 11 */	cmpwi r28, 0x11
/* 80030174 0002BDD4  40 80 00 08 */	bge lbl_8003017C
/* 80030178 0002BDD8  48 00 01 64 */	b lbl_800302DC
lbl_8003017C:
/* 8003017C 0002BDDC  A8 1D 00 08 */	lha r0, 8(r29)
/* 80030180 0002BDE0  2C 00 00 01 */	cmpwi r0, 1
/* 80030184 0002BDE4  40 82 00 0C */	bne lbl_80030190
/* 80030188 0002BDE8  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8003018C 0002BDEC  48 00 00 28 */	b lbl_800301B4
lbl_80030190:
/* 80030190 0002BDF0  2C 00 00 02 */	cmpwi r0, 2
/* 80030194 0002BDF4  40 82 00 18 */	bne lbl_800301AC
/* 80030198 0002BDF8  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8003019C 0002BDFC  FC 00 00 1E */	fctiwz f0, f0
/* 800301A0 0002BE00  D8 01 00 08 */	stfd f0, 8(r1)
/* 800301A4 0002BE04  80 61 00 0C */	lwz r3, 0xc(r1)
/* 800301A8 0002BE08  48 00 00 0C */	b lbl_800301B4
lbl_800301AC:
/* 800301AC 0002BE0C  38 7D 00 08 */	addi r3, r29, 8
/* 800301B0 0002BE10  48 1F DB 85 */	bl func_8022DD34
lbl_800301B4:
/* 800301B4 0002BE14  2C 03 00 00 */	cmpwi r3, 0
/* 800301B8 0002BE18  41 80 00 0C */	blt lbl_800301C4
/* 800301BC 0002BE1C  2C 03 00 08 */	cmpwi r3, 8
/* 800301C0 0002BE20  41 80 00 0C */	blt lbl_800301CC
lbl_800301C4:
/* 800301C4 0002BE24  38 00 00 00 */	li r0, 0
/* 800301C8 0002BE28  48 00 00 0C */	b lbl_800301D4
lbl_800301CC:
/* 800301CC 0002BE2C  1C 03 00 F0 */	mulli r0, r3, 0xf0
/* 800301D0 0002BE30  7C 1F 02 14 */	add r0, r31, r0
lbl_800301D4:
/* 800301D4 0002BE34  2C 00 00 00 */	cmpwi r0, 0
/* 800301D8 0002BE38  41 82 01 04 */	beq lbl_800302DC
/* 800301DC 0002BE3C  38 60 00 2A */	li r3, 0x2a
/* 800301E0 0002BE40  38 00 00 00 */	li r0, 0
/* 800301E4 0002BE44  B0 7E 00 00 */	sth r3, 0(r30)
/* 800301E8 0002BE48  B0 1E 00 02 */	sth r0, 2(r30)
/* 800301EC 0002BE4C  A8 1D 00 08 */	lha r0, 8(r29)
/* 800301F0 0002BE50  2C 00 00 01 */	cmpwi r0, 1
/* 800301F4 0002BE54  40 82 00 0C */	bne lbl_80030200
/* 800301F8 0002BE58  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 800301FC 0002BE5C  48 00 00 28 */	b lbl_80030224
lbl_80030200:
/* 80030200 0002BE60  2C 00 00 02 */	cmpwi r0, 2
/* 80030204 0002BE64  40 82 00 18 */	bne lbl_8003021C
/* 80030208 0002BE68  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8003020C 0002BE6C  FC 00 00 1E */	fctiwz f0, f0
/* 80030210 0002BE70  D8 01 00 08 */	stfd f0, 8(r1)
/* 80030214 0002BE74  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80030218 0002BE78  48 00 00 0C */	b lbl_80030224
lbl_8003021C:
/* 8003021C 0002BE7C  38 7D 00 08 */	addi r3, r29, 8
/* 80030220 0002BE80  48 1F DB 15 */	bl func_8022DD34
lbl_80030224:
/* 80030224 0002BE84  90 7E 00 04 */	stw r3, 4(r30)
/* 80030228 0002BE88  48 00 00 B4 */	b lbl_800302DC
lbl_8003022C:
/* 8003022C 0002BE8C  A8 1D 00 08 */	lha r0, 8(r29)
/* 80030230 0002BE90  2C 00 00 01 */	cmpwi r0, 1
/* 80030234 0002BE94  40 82 00 0C */	bne lbl_80030240
/* 80030238 0002BE98  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8003023C 0002BE9C  48 00 00 28 */	b lbl_80030264
lbl_80030240:
/* 80030240 0002BEA0  2C 00 00 02 */	cmpwi r0, 2
/* 80030244 0002BEA4  40 82 00 18 */	bne lbl_8003025C
/* 80030248 0002BEA8  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 8003024C 0002BEAC  FC 00 00 1E */	fctiwz f0, f0
/* 80030250 0002BEB0  D8 01 00 08 */	stfd f0, 8(r1)
/* 80030254 0002BEB4  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80030258 0002BEB8  48 00 00 0C */	b lbl_80030264
lbl_8003025C:
/* 8003025C 0002BEBC  38 7D 00 08 */	addi r3, r29, 8
/* 80030260 0002BEC0  48 1F DA D5 */	bl func_8022DD34
lbl_80030264:
/* 80030264 0002BEC4  2C 03 00 00 */	cmpwi r3, 0
/* 80030268 0002BEC8  41 80 00 0C */	blt lbl_80030274
/* 8003026C 0002BECC  2C 03 00 08 */	cmpwi r3, 8
/* 80030270 0002BED0  41 80 00 0C */	blt lbl_8003027C
lbl_80030274:
/* 80030274 0002BED4  38 00 00 00 */	li r0, 0
/* 80030278 0002BED8  48 00 00 10 */	b lbl_80030288
lbl_8003027C:
/* 8003027C 0002BEDC  1C 03 00 E8 */	mulli r0, r3, 0xe8
/* 80030280 0002BEE0  7C 7F 02 14 */	add r3, r31, r0
/* 80030284 0002BEE4  38 03 07 80 */	addi r0, r3, 0x780
lbl_80030288:
/* 80030288 0002BEE8  2C 00 00 00 */	cmpwi r0, 0
/* 8003028C 0002BEEC  41 82 00 50 */	beq lbl_800302DC
/* 80030290 0002BEF0  38 60 00 2A */	li r3, 0x2a
/* 80030294 0002BEF4  38 00 00 00 */	li r0, 0
/* 80030298 0002BEF8  B0 7E 00 00 */	sth r3, 0(r30)
/* 8003029C 0002BEFC  B0 1E 00 02 */	sth r0, 2(r30)
/* 800302A0 0002BF00  A8 1D 00 08 */	lha r0, 8(r29)
/* 800302A4 0002BF04  2C 00 00 01 */	cmpwi r0, 1
/* 800302A8 0002BF08  40 82 00 0C */	bne lbl_800302B4
/* 800302AC 0002BF0C  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 800302B0 0002BF10  48 00 00 28 */	b lbl_800302D8
lbl_800302B4:
/* 800302B4 0002BF14  2C 00 00 02 */	cmpwi r0, 2
/* 800302B8 0002BF18  40 82 00 18 */	bne lbl_800302D0
/* 800302BC 0002BF1C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 800302C0 0002BF20  FC 00 00 1E */	fctiwz f0, f0
/* 800302C4 0002BF24  D8 01 00 08 */	stfd f0, 8(r1)
/* 800302C8 0002BF28  80 61 00 0C */	lwz r3, 0xc(r1)
/* 800302CC 0002BF2C  48 00 00 0C */	b lbl_800302D8
lbl_800302D0:
/* 800302D0 0002BF30  38 7D 00 08 */	addi r3, r29, 8
/* 800302D4 0002BF34  48 1F DA 61 */	bl func_8022DD34
lbl_800302D8:
/* 800302D8 0002BF38  90 7E 00 04 */	stw r3, 4(r30)
lbl_800302DC:
/* 800302DC 0002BF3C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800302E0 0002BF40  38 60 00 01 */	li r3, 1
/* 800302E4 0002BF44  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800302E8 0002BF48  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800302EC 0002BF4C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 800302F0 0002BF50  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800302F4 0002BF54  7C 08 03 A6 */	mtlr r0
/* 800302F8 0002BF58  38 21 00 20 */	addi r1, r1, 0x20
/* 800302FC 0002BF5C  4E 80 00 20 */	blr

.global func_80030300
func_80030300:
/* 80030300 0002BF60  38 A0 00 01 */	li r5, 1
/* 80030304 0002BF64  38 6D 97 48 */	addi r3, r13, lbl_8063EA08-_SDA_BASE_
/* 80030308 0002BF68  38 80 00 04 */	li r4, 4
/* 8003030C 0002BF6C  38 00 00 00 */	li r0, 0
/* 80030310 0002BF70  98 AD 97 48 */	stb r5, lbl_8063EA08-_SDA_BASE_(r13)
/* 80030314 0002BF74  B0 83 00 02 */	sth r4, 2(r3)
/* 80030318 0002BF78  98 03 00 04 */	stb r0, 4(r3)
/* 8003031C 0002BF7C  4E 80 00 20 */	blr

.global lbl_80030320
lbl_80030320:
/* 80030320 0002BF80  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 80030324 0002BF84  7C 08 02 A6 */	mflr r0
/* 80030328 0002BF88  90 01 00 74 */	stw r0, 0x74(r1)
/* 8003032C 0002BF8C  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 80030330 0002BF90  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 80030334 0002BF94  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 80030338 0002BF98  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 8003033C 0002BF9C  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 80030340 0002BFA0  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 80030344 0002BFA4  39 61 00 40 */	addi r11, r1, 0x40
/* 80030348 0002BFA8  48 19 6D E1 */	bl _savegpr_27
/* 8003034C 0002BFAC  3C 00 43 30 */	lis r0, 0x4330
/* 80030350 0002BFB0  7C 9C 23 78 */	mr r28, r4
/* 80030354 0002BFB4  90 01 00 08 */	stw r0, 8(r1)
/* 80030358 0002BFB8  7C BE 2B 78 */	mr r30, r5
/* 8003035C 0002BFBC  7C DB 33 78 */	mr r27, r6
/* 80030360 0002BFC0  90 01 00 10 */	stw r0, 0x10(r1)
/* 80030364 0002BFC4  48 01 44 E5 */	bl func_80044848
/* 80030368 0002BFC8  2C 1C 00 01 */	cmpwi r28, 1
/* 8003036C 0002BFCC  41 82 00 4C */	beq lbl_800303B8
/* 80030370 0002BFD0  A8 1E 00 00 */	lha r0, 0(r30)
/* 80030374 0002BFD4  2C 00 00 2A */	cmpwi r0, 0x2a
/* 80030378 0002BFD8  41 82 00 0C */	beq lbl_80030384
/* 8003037C 0002BFDC  38 60 00 01 */	li r3, 1
/* 80030380 0002BFE0  48 00 07 D0 */	b lbl_80030B50
lbl_80030384:
/* 80030384 0002BFE4  80 1E 00 04 */	lwz r0, 4(r30)
/* 80030388 0002BFE8  2C 00 00 00 */	cmpwi r0, 0
/* 8003038C 0002BFEC  41 80 00 0C */	blt lbl_80030398
/* 80030390 0002BFF0  2C 00 00 08 */	cmpwi r0, 8
/* 80030394 0002BFF4  41 80 00 0C */	blt lbl_800303A0
lbl_80030398:
/* 80030398 0002BFF8  3B E0 00 00 */	li r31, 0
/* 8003039C 0002BFFC  48 00 00 0C */	b lbl_800303A8
lbl_800303A0:
/* 800303A0 0002C000  1C 00 00 F0 */	mulli r0, r0, 0xf0
/* 800303A4 0002C004  7F E3 02 14 */	add r31, r3, r0
lbl_800303A8:
/* 800303A8 0002C008  2C 1F 00 00 */	cmpwi r31, 0
/* 800303AC 0002C00C  40 82 00 14 */	bne lbl_800303C0
/* 800303B0 0002C010  38 60 00 01 */	li r3, 1
/* 800303B4 0002C014  48 00 07 9C */	b lbl_80030B50
lbl_800303B8:
/* 800303B8 0002C018  38 60 00 01 */	li r3, 1
/* 800303BC 0002C01C  48 00 07 94 */	b lbl_80030B50
lbl_800303C0:
/* 800303C0 0002C020  38 1C FF EF */	addi r0, r28, -17
/* 800303C4 0002C024  28 00 00 0E */	cmplwi r0, 0xe
/* 800303C8 0002C028  41 81 07 84 */	bgt lbl_80030B4C
/* 800303CC 0002C02C  3C 60 80 41 */	lis r3, lbl_80409FC8@ha
/* 800303D0 0002C030  54 00 10 3A */	slwi r0, r0, 2
/* 800303D4 0002C034  38 63 9F C8 */	addi r3, r3, lbl_80409FC8@l
/* 800303D8 0002C038  7C 63 00 2E */	lwzx r3, r3, r0
/* 800303DC 0002C03C  7C 69 03 A6 */	mtctr r3
/* 800303E0 0002C040  4E 80 04 20 */	bctr
/* 800303E4 0002C044  A8 1E 00 08 */	lha r0, 8(r30)
/* 800303E8 0002C048  2C 00 00 01 */	cmpwi r0, 1
/* 800303EC 0002C04C  40 82 00 0C */	bne lbl_800303F8
/* 800303F0 0002C050  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 800303F4 0002C054  48 00 00 2C */	b lbl_80030420
lbl_800303F8:
/* 800303F8 0002C058  2C 00 00 02 */	cmpwi r0, 2
/* 800303FC 0002C05C  40 82 00 18 */	bne lbl_80030414
/* 80030400 0002C060  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030404 0002C064  FC 00 00 1E */	fctiwz f0, f0
/* 80030408 0002C068  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003040C 0002C06C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030410 0002C070  48 00 00 0C */	b lbl_8003041C
lbl_80030414:
/* 80030414 0002C074  38 7E 00 08 */	addi r3, r30, 8
/* 80030418 0002C078  48 1F D9 1D */	bl func_8022DD34
lbl_8003041C:
/* 8003041C 0002C07C  7C 64 1B 78 */	mr r4, r3
lbl_80030420:
/* 80030420 0002C080  7F E3 FB 78 */	mr r3, r31
/* 80030424 0002C084  48 01 47 FD */	bl func_80044C20
/* 80030428 0002C088  48 00 07 24 */	b lbl_80030B4C
/* 8003042C 0002C08C  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030430 0002C090  2C 00 00 01 */	cmpwi r0, 1
/* 80030434 0002C094  40 82 00 0C */	bne lbl_80030440
/* 80030438 0002C098  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 8003043C 0002C09C  48 00 00 28 */	b lbl_80030464
lbl_80030440:
/* 80030440 0002C0A0  2C 00 00 02 */	cmpwi r0, 2
/* 80030444 0002C0A4  40 82 00 18 */	bne lbl_8003045C
/* 80030448 0002C0A8  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 8003044C 0002C0AC  FC 00 00 1E */	fctiwz f0, f0
/* 80030450 0002C0B0  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030454 0002C0B4  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030458 0002C0B8  48 00 00 0C */	b lbl_80030464
lbl_8003045C:
/* 8003045C 0002C0BC  38 7E 00 08 */	addi r3, r30, 8
/* 80030460 0002C0C0  48 1F D8 D5 */	bl func_8022DD34
lbl_80030464:
/* 80030464 0002C0C4  7C 03 00 D0 */	neg r0, r3
/* 80030468 0002C0C8  7C 00 1B 78 */	or r0, r0, r3
/* 8003046C 0002C0CC  54 00 0F FE */	srwi r0, r0, 0x1f
/* 80030470 0002C0D0  98 1F 00 00 */	stb r0, 0(r31)
/* 80030474 0002C0D4  48 00 06 D8 */	b lbl_80030B4C
/* 80030478 0002C0D8  A8 1E 00 08 */	lha r0, 8(r30)
/* 8003047C 0002C0DC  2C 00 00 01 */	cmpwi r0, 1
/* 80030480 0002C0E0  40 82 00 20 */	bne lbl_800304A0
/* 80030484 0002C0E4  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 80030488 0002C0E8  C8 22 81 70 */	lfd f1, lbl_80640770-_SDA2_BASE_(r2)
/* 8003048C 0002C0EC  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80030490 0002C0F0  90 01 00 0C */	stw r0, 0xc(r1)
/* 80030494 0002C0F4  C8 01 00 08 */	lfd f0, 8(r1)
/* 80030498 0002C0F8  EF E0 08 28 */	fsubs f31, f0, f1
/* 8003049C 0002C0FC  48 00 00 20 */	b lbl_800304BC
lbl_800304A0:
/* 800304A0 0002C100  2C 00 00 02 */	cmpwi r0, 2
/* 800304A4 0002C104  40 82 00 0C */	bne lbl_800304B0
/* 800304A8 0002C108  C0 3E 00 0C */	lfs f1, 0xc(r30)
/* 800304AC 0002C10C  48 00 00 0C */	b lbl_800304B8
lbl_800304B0:
/* 800304B0 0002C110  38 7E 00 08 */	addi r3, r30, 8
/* 800304B4 0002C114  48 1F D8 C5 */	bl func_8022DD78
lbl_800304B8:
/* 800304B8 0002C118  FF E0 08 90 */	fmr f31, f1
lbl_800304BC:
/* 800304BC 0002C11C  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800304C0 0002C120  2C 00 00 01 */	cmpwi r0, 1
/* 800304C4 0002C124  40 82 00 20 */	bne lbl_800304E4
/* 800304C8 0002C128  80 1E 00 14 */	lwz r0, 0x14(r30)
/* 800304CC 0002C12C  C8 22 81 70 */	lfd f1, lbl_80640770-_SDA2_BASE_(r2)
/* 800304D0 0002C130  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 800304D4 0002C134  90 01 00 14 */	stw r0, 0x14(r1)
/* 800304D8 0002C138  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 800304DC 0002C13C  EC 20 08 28 */	fsubs f1, f0, f1
/* 800304E0 0002C140  48 00 00 1C */	b lbl_800304FC
lbl_800304E4:
/* 800304E4 0002C144  2C 00 00 02 */	cmpwi r0, 2
/* 800304E8 0002C148  40 82 00 0C */	bne lbl_800304F4
/* 800304EC 0002C14C  C0 3E 00 14 */	lfs f1, 0x14(r30)
/* 800304F0 0002C150  48 00 00 0C */	b lbl_800304FC
lbl_800304F4:
/* 800304F4 0002C154  38 7E 00 10 */	addi r3, r30, 0x10
/* 800304F8 0002C158  48 1F D8 81 */	bl func_8022DD78
lbl_800304FC:
/* 800304FC 0002C15C  D3 FF 00 08 */	stfs f31, 8(r31)
/* 80030500 0002C160  D0 3F 00 0C */	stfs f1, 0xc(r31)
/* 80030504 0002C164  48 00 06 48 */	b lbl_80030B4C
/* 80030508 0002C168  A8 1E 00 08 */	lha r0, 8(r30)
/* 8003050C 0002C16C  2C 00 00 01 */	cmpwi r0, 1
/* 80030510 0002C170  40 82 00 20 */	bne lbl_80030530
/* 80030514 0002C174  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 80030518 0002C178  C8 22 81 70 */	lfd f1, lbl_80640770-_SDA2_BASE_(r2)
/* 8003051C 0002C17C  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80030520 0002C180  90 01 00 0C */	stw r0, 0xc(r1)
/* 80030524 0002C184  C8 01 00 08 */	lfd f0, 8(r1)
/* 80030528 0002C188  EF E0 08 28 */	fsubs f31, f0, f1
/* 8003052C 0002C18C  48 00 00 20 */	b lbl_8003054C
lbl_80030530:
/* 80030530 0002C190  2C 00 00 02 */	cmpwi r0, 2
/* 80030534 0002C194  40 82 00 0C */	bne lbl_80030540
/* 80030538 0002C198  C0 3E 00 0C */	lfs f1, 0xc(r30)
/* 8003053C 0002C19C  48 00 00 0C */	b lbl_80030548
lbl_80030540:
/* 80030540 0002C1A0  38 7E 00 08 */	addi r3, r30, 8
/* 80030544 0002C1A4  48 1F D8 35 */	bl func_8022DD78
lbl_80030548:
/* 80030548 0002C1A8  FF E0 08 90 */	fmr f31, f1
lbl_8003054C:
/* 8003054C 0002C1AC  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030550 0002C1B0  2C 00 00 01 */	cmpwi r0, 1
/* 80030554 0002C1B4  40 82 00 20 */	bne lbl_80030574
/* 80030558 0002C1B8  80 1E 00 14 */	lwz r0, 0x14(r30)
/* 8003055C 0002C1BC  C8 22 81 70 */	lfd f1, lbl_80640770-_SDA2_BASE_(r2)
/* 80030560 0002C1C0  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80030564 0002C1C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80030568 0002C1C8  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003056C 0002C1CC  EF C0 08 28 */	fsubs f30, f0, f1
/* 80030570 0002C1D0  48 00 00 20 */	b lbl_80030590
lbl_80030574:
/* 80030574 0002C1D4  2C 00 00 02 */	cmpwi r0, 2
/* 80030578 0002C1D8  40 82 00 0C */	bne lbl_80030584
/* 8003057C 0002C1DC  C0 3E 00 14 */	lfs f1, 0x14(r30)
/* 80030580 0002C1E0  48 00 00 0C */	b lbl_8003058C
lbl_80030584:
/* 80030584 0002C1E4  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030588 0002C1E8  48 1F D7 F1 */	bl func_8022DD78
lbl_8003058C:
/* 8003058C 0002C1EC  FF C0 08 90 */	fmr f30, f1
lbl_80030590:
/* 80030590 0002C1F0  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80030594 0002C1F4  2C 00 00 01 */	cmpwi r0, 1
/* 80030598 0002C1F8  40 82 00 20 */	bne lbl_800305B8
/* 8003059C 0002C1FC  80 1E 00 1C */	lwz r0, 0x1c(r30)
/* 800305A0 0002C200  C8 22 81 70 */	lfd f1, lbl_80640770-_SDA2_BASE_(r2)
/* 800305A4 0002C204  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 800305A8 0002C208  90 01 00 0C */	stw r0, 0xc(r1)
/* 800305AC 0002C20C  C8 01 00 08 */	lfd f0, 8(r1)
/* 800305B0 0002C210  EF A0 08 28 */	fsubs f29, f0, f1
/* 800305B4 0002C214  48 00 00 20 */	b lbl_800305D4
lbl_800305B8:
/* 800305B8 0002C218  2C 00 00 02 */	cmpwi r0, 2
/* 800305BC 0002C21C  40 82 00 0C */	bne lbl_800305C8
/* 800305C0 0002C220  C0 3E 00 1C */	lfs f1, 0x1c(r30)
/* 800305C4 0002C224  48 00 00 0C */	b lbl_800305D0
lbl_800305C8:
/* 800305C8 0002C228  38 7E 00 18 */	addi r3, r30, 0x18
/* 800305CC 0002C22C  48 1F D7 AD */	bl func_8022DD78
lbl_800305D0:
/* 800305D0 0002C230  FF A0 08 90 */	fmr f29, f1
lbl_800305D4:
/* 800305D4 0002C234  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 800305D8 0002C238  2C 00 00 01 */	cmpwi r0, 1
/* 800305DC 0002C23C  40 82 00 0C */	bne lbl_800305E8
/* 800305E0 0002C240  80 9E 00 24 */	lwz r4, 0x24(r30)
/* 800305E4 0002C244  48 00 00 2C */	b lbl_80030610
lbl_800305E8:
/* 800305E8 0002C248  2C 00 00 02 */	cmpwi r0, 2
/* 800305EC 0002C24C  40 82 00 18 */	bne lbl_80030604
/* 800305F0 0002C250  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 800305F4 0002C254  FC 00 00 1E */	fctiwz f0, f0
/* 800305F8 0002C258  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800305FC 0002C25C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030600 0002C260  48 00 00 0C */	b lbl_8003060C
lbl_80030604:
/* 80030604 0002C264  38 7E 00 20 */	addi r3, r30, 0x20
/* 80030608 0002C268  48 1F D7 2D */	bl func_8022DD34
lbl_8003060C:
/* 8003060C 0002C26C  7C 64 1B 78 */	mr r4, r3
lbl_80030610:
/* 80030610 0002C270  FC 20 F8 90 */	fmr f1, f31
/* 80030614 0002C274  7F E3 FB 78 */	mr r3, r31
/* 80030618 0002C278  FC 40 F0 90 */	fmr f2, f30
/* 8003061C 0002C27C  FC 60 E8 90 */	fmr f3, f29
/* 80030620 0002C280  48 01 46 F5 */	bl func_80044D14
/* 80030624 0002C284  48 00 05 28 */	b lbl_80030B4C
/* 80030628 0002C288  A8 1E 00 08 */	lha r0, 8(r30)
/* 8003062C 0002C28C  2C 00 00 01 */	cmpwi r0, 1
/* 80030630 0002C290  40 82 00 0C */	bne lbl_8003063C
/* 80030634 0002C294  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80030638 0002C298  48 00 00 28 */	b lbl_80030660
lbl_8003063C:
/* 8003063C 0002C29C  2C 00 00 02 */	cmpwi r0, 2
/* 80030640 0002C2A0  40 82 00 18 */	bne lbl_80030658
/* 80030644 0002C2A4  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030648 0002C2A8  FC 00 00 1E */	fctiwz f0, f0
/* 8003064C 0002C2AC  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030650 0002C2B0  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030654 0002C2B4  48 00 00 0C */	b lbl_80030660
lbl_80030658:
/* 80030658 0002C2B8  38 7E 00 08 */	addi r3, r30, 8
/* 8003065C 0002C2BC  48 1F D6 D9 */	bl func_8022DD34
lbl_80030660:
/* 80030660 0002C2C0  90 7F 00 1C */	stw r3, 0x1c(r31)
/* 80030664 0002C2C4  48 00 04 E8 */	b lbl_80030B4C
/* 80030668 0002C2C8  A8 1E 00 08 */	lha r0, 8(r30)
/* 8003066C 0002C2CC  2C 00 00 01 */	cmpwi r0, 1
/* 80030670 0002C2D0  40 82 00 0C */	bne lbl_8003067C
/* 80030674 0002C2D4  83 BE 00 0C */	lwz r29, 0xc(r30)
/* 80030678 0002C2D8  48 00 00 2C */	b lbl_800306A4
lbl_8003067C:
/* 8003067C 0002C2DC  2C 00 00 02 */	cmpwi r0, 2
/* 80030680 0002C2E0  40 82 00 18 */	bne lbl_80030698
/* 80030684 0002C2E4  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030688 0002C2E8  FC 00 00 1E */	fctiwz f0, f0
/* 8003068C 0002C2EC  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030690 0002C2F0  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030694 0002C2F4  48 00 00 0C */	b lbl_800306A0
lbl_80030698:
/* 80030698 0002C2F8  38 7E 00 08 */	addi r3, r30, 8
/* 8003069C 0002C2FC  48 1F D6 99 */	bl func_8022DD34
lbl_800306A0:
/* 800306A0 0002C300  7C 7D 1B 78 */	mr r29, r3
lbl_800306A4:
/* 800306A4 0002C304  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800306A8 0002C308  2C 00 00 01 */	cmpwi r0, 1
/* 800306AC 0002C30C  40 82 00 0C */	bne lbl_800306B8
/* 800306B0 0002C310  83 9E 00 14 */	lwz r28, 0x14(r30)
/* 800306B4 0002C314  48 00 00 2C */	b lbl_800306E0
lbl_800306B8:
/* 800306B8 0002C318  2C 00 00 02 */	cmpwi r0, 2
/* 800306BC 0002C31C  40 82 00 18 */	bne lbl_800306D4
/* 800306C0 0002C320  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 800306C4 0002C324  FC 00 00 1E */	fctiwz f0, f0
/* 800306C8 0002C328  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800306CC 0002C32C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800306D0 0002C330  48 00 00 0C */	b lbl_800306DC
lbl_800306D4:
/* 800306D4 0002C334  38 7E 00 10 */	addi r3, r30, 0x10
/* 800306D8 0002C338  48 1F D6 5D */	bl func_8022DD34
lbl_800306DC:
/* 800306DC 0002C33C  7C 7C 1B 78 */	mr r28, r3
lbl_800306E0:
/* 800306E0 0002C340  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 800306E4 0002C344  2C 00 00 01 */	cmpwi r0, 1
/* 800306E8 0002C348  40 82 00 0C */	bne lbl_800306F4
/* 800306EC 0002C34C  83 7E 00 1C */	lwz r27, 0x1c(r30)
/* 800306F0 0002C350  48 00 00 2C */	b lbl_8003071C
lbl_800306F4:
/* 800306F4 0002C354  2C 00 00 02 */	cmpwi r0, 2
/* 800306F8 0002C358  40 82 00 18 */	bne lbl_80030710
/* 800306FC 0002C35C  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80030700 0002C360  FC 00 00 1E */	fctiwz f0, f0
/* 80030704 0002C364  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030708 0002C368  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8003070C 0002C36C  48 00 00 0C */	b lbl_80030718
lbl_80030710:
/* 80030710 0002C370  38 7E 00 18 */	addi r3, r30, 0x18
/* 80030714 0002C374  48 1F D6 21 */	bl func_8022DD34
lbl_80030718:
/* 80030718 0002C378  7C 7B 1B 78 */	mr r27, r3
lbl_8003071C:
/* 8003071C 0002C37C  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 80030720 0002C380  2C 00 00 01 */	cmpwi r0, 1
/* 80030724 0002C384  40 82 00 0C */	bne lbl_80030730
/* 80030728 0002C388  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 8003072C 0002C38C  48 00 00 28 */	b lbl_80030754
lbl_80030730:
/* 80030730 0002C390  2C 00 00 02 */	cmpwi r0, 2
/* 80030734 0002C394  40 82 00 18 */	bne lbl_8003074C
/* 80030738 0002C398  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 8003073C 0002C39C  FC 00 00 1E */	fctiwz f0, f0
/* 80030740 0002C3A0  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030744 0002C3A4  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030748 0002C3A8  48 00 00 0C */	b lbl_80030754
lbl_8003074C:
/* 8003074C 0002C3AC  38 7E 00 20 */	addi r3, r30, 0x20
/* 80030750 0002C3B0  48 1F D5 E5 */	bl func_8022DD34
lbl_80030754:
/* 80030754 0002C3B4  9B BF 00 10 */	stb r29, 0x10(r31)
/* 80030758 0002C3B8  9B 9F 00 11 */	stb r28, 0x11(r31)
/* 8003075C 0002C3BC  9B 7F 00 12 */	stb r27, 0x12(r31)
/* 80030760 0002C3C0  98 7F 00 13 */	stb r3, 0x13(r31)
/* 80030764 0002C3C4  48 00 03 E8 */	b lbl_80030B4C
/* 80030768 0002C3C8  A8 1E 00 08 */	lha r0, 8(r30)
/* 8003076C 0002C3CC  2C 00 00 01 */	cmpwi r0, 1
/* 80030770 0002C3D0  40 82 00 0C */	bne lbl_8003077C
/* 80030774 0002C3D4  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80030778 0002C3D8  48 00 00 28 */	b lbl_800307A0
lbl_8003077C:
/* 8003077C 0002C3DC  2C 00 00 02 */	cmpwi r0, 2
/* 80030780 0002C3E0  40 82 00 18 */	bne lbl_80030798
/* 80030784 0002C3E4  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030788 0002C3E8  FC 00 00 1E */	fctiwz f0, f0
/* 8003078C 0002C3EC  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030790 0002C3F0  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030794 0002C3F4  48 00 00 0C */	b lbl_800307A0
lbl_80030798:
/* 80030798 0002C3F8  38 7E 00 08 */	addi r3, r30, 8
/* 8003079C 0002C3FC  48 1F D5 99 */	bl func_8022DD34
lbl_800307A0:
/* 800307A0 0002C400  98 7F 00 01 */	stb r3, 1(r31)
/* 800307A4 0002C404  48 00 03 A8 */	b lbl_80030B4C
/* 800307A8 0002C408  A8 1E 00 08 */	lha r0, 8(r30)
/* 800307AC 0002C40C  2C 00 00 01 */	cmpwi r0, 1
/* 800307B0 0002C410  40 82 00 0C */	bne lbl_800307BC
/* 800307B4 0002C414  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 800307B8 0002C418  48 00 00 2C */	b lbl_800307E4
lbl_800307BC:
/* 800307BC 0002C41C  2C 00 00 02 */	cmpwi r0, 2
/* 800307C0 0002C420  40 82 00 18 */	bne lbl_800307D8
/* 800307C4 0002C424  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 800307C8 0002C428  FC 00 00 1E */	fctiwz f0, f0
/* 800307CC 0002C42C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800307D0 0002C430  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800307D4 0002C434  48 00 00 0C */	b lbl_800307E0
lbl_800307D8:
/* 800307D8 0002C438  38 7E 00 08 */	addi r3, r30, 8
/* 800307DC 0002C43C  48 1F D5 59 */	bl func_8022DD34
lbl_800307E0:
/* 800307E0 0002C440  7C 7B 1B 78 */	mr r27, r3
lbl_800307E4:
/* 800307E4 0002C444  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800307E8 0002C448  2C 00 00 01 */	cmpwi r0, 1
/* 800307EC 0002C44C  40 82 00 0C */	bne lbl_800307F8
/* 800307F0 0002C450  83 9E 00 14 */	lwz r28, 0x14(r30)
/* 800307F4 0002C454  48 00 00 2C */	b lbl_80030820
lbl_800307F8:
/* 800307F8 0002C458  2C 00 00 02 */	cmpwi r0, 2
/* 800307FC 0002C45C  40 82 00 18 */	bne lbl_80030814
/* 80030800 0002C460  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80030804 0002C464  FC 00 00 1E */	fctiwz f0, f0
/* 80030808 0002C468  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003080C 0002C46C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030810 0002C470  48 00 00 0C */	b lbl_8003081C
lbl_80030814:
/* 80030814 0002C474  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030818 0002C478  48 1F D5 1D */	bl func_8022DD34
lbl_8003081C:
/* 8003081C 0002C47C  7C 7C 1B 78 */	mr r28, r3
lbl_80030820:
/* 80030820 0002C480  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80030824 0002C484  2C 00 00 01 */	cmpwi r0, 1
/* 80030828 0002C488  40 82 00 0C */	bne lbl_80030834
/* 8003082C 0002C48C  83 BE 00 1C */	lwz r29, 0x1c(r30)
/* 80030830 0002C490  48 00 00 2C */	b lbl_8003085C
lbl_80030834:
/* 80030834 0002C494  2C 00 00 02 */	cmpwi r0, 2
/* 80030838 0002C498  40 82 00 18 */	bne lbl_80030850
/* 8003083C 0002C49C  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80030840 0002C4A0  FC 00 00 1E */	fctiwz f0, f0
/* 80030844 0002C4A4  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030848 0002C4A8  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8003084C 0002C4AC  48 00 00 0C */	b lbl_80030858
lbl_80030850:
/* 80030850 0002C4B0  38 7E 00 18 */	addi r3, r30, 0x18
/* 80030854 0002C4B4  48 1F D4 E1 */	bl func_8022DD34
lbl_80030858:
/* 80030858 0002C4B8  7C 7D 1B 78 */	mr r29, r3
lbl_8003085C:
/* 8003085C 0002C4BC  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 80030860 0002C4C0  2C 00 00 01 */	cmpwi r0, 1
/* 80030864 0002C4C4  40 82 00 0C */	bne lbl_80030870
/* 80030868 0002C4C8  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 8003086C 0002C4CC  48 00 00 28 */	b lbl_80030894
lbl_80030870:
/* 80030870 0002C4D0  2C 00 00 02 */	cmpwi r0, 2
/* 80030874 0002C4D4  40 82 00 18 */	bne lbl_8003088C
/* 80030878 0002C4D8  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 8003087C 0002C4DC  FC 00 00 1E */	fctiwz f0, f0
/* 80030880 0002C4E0  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030884 0002C4E4  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030888 0002C4E8  48 00 00 0C */	b lbl_80030894
lbl_8003088C:
/* 8003088C 0002C4EC  38 7E 00 20 */	addi r3, r30, 0x20
/* 80030890 0002C4F0  48 1F D4 A5 */	bl func_8022DD34
lbl_80030894:
/* 80030894 0002C4F4  9B 7F 00 14 */	stb r27, 0x14(r31)
/* 80030898 0002C4F8  9B 9F 00 15 */	stb r28, 0x15(r31)
/* 8003089C 0002C4FC  9B BF 00 16 */	stb r29, 0x16(r31)
/* 800308A0 0002C500  98 7F 00 17 */	stb r3, 0x17(r31)
/* 800308A4 0002C504  48 00 02 A8 */	b lbl_80030B4C
/* 800308A8 0002C508  A8 1E 00 08 */	lha r0, 8(r30)
/* 800308AC 0002C50C  2C 00 00 01 */	cmpwi r0, 1
/* 800308B0 0002C510  40 82 00 0C */	bne lbl_800308BC
/* 800308B4 0002C514  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 800308B8 0002C518  48 00 00 2C */	b lbl_800308E4
lbl_800308BC:
/* 800308BC 0002C51C  2C 00 00 02 */	cmpwi r0, 2
/* 800308C0 0002C520  40 82 00 18 */	bne lbl_800308D8
/* 800308C4 0002C524  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 800308C8 0002C528  FC 00 00 1E */	fctiwz f0, f0
/* 800308CC 0002C52C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800308D0 0002C530  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800308D4 0002C534  48 00 00 0C */	b lbl_800308E0
lbl_800308D8:
/* 800308D8 0002C538  38 7E 00 08 */	addi r3, r30, 8
/* 800308DC 0002C53C  48 1F D4 59 */	bl func_8022DD34
lbl_800308E0:
/* 800308E0 0002C540  7C 7B 1B 78 */	mr r27, r3
lbl_800308E4:
/* 800308E4 0002C544  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800308E8 0002C548  2C 00 00 01 */	cmpwi r0, 1
/* 800308EC 0002C54C  40 82 00 0C */	bne lbl_800308F8
/* 800308F0 0002C550  83 9E 00 14 */	lwz r28, 0x14(r30)
/* 800308F4 0002C554  48 00 00 2C */	b lbl_80030920
lbl_800308F8:
/* 800308F8 0002C558  2C 00 00 02 */	cmpwi r0, 2
/* 800308FC 0002C55C  40 82 00 18 */	bne lbl_80030914
/* 80030900 0002C560  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80030904 0002C564  FC 00 00 1E */	fctiwz f0, f0
/* 80030908 0002C568  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003090C 0002C56C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030910 0002C570  48 00 00 0C */	b lbl_8003091C
lbl_80030914:
/* 80030914 0002C574  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030918 0002C578  48 1F D4 1D */	bl func_8022DD34
lbl_8003091C:
/* 8003091C 0002C57C  7C 7C 1B 78 */	mr r28, r3
lbl_80030920:
/* 80030920 0002C580  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80030924 0002C584  2C 00 00 01 */	cmpwi r0, 1
/* 80030928 0002C588  40 82 00 0C */	bne lbl_80030934
/* 8003092C 0002C58C  83 BE 00 1C */	lwz r29, 0x1c(r30)
/* 80030930 0002C590  48 00 00 2C */	b lbl_8003095C
lbl_80030934:
/* 80030934 0002C594  2C 00 00 02 */	cmpwi r0, 2
/* 80030938 0002C598  40 82 00 18 */	bne lbl_80030950
/* 8003093C 0002C59C  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80030940 0002C5A0  FC 00 00 1E */	fctiwz f0, f0
/* 80030944 0002C5A4  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030948 0002C5A8  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8003094C 0002C5AC  48 00 00 0C */	b lbl_80030958
lbl_80030950:
/* 80030950 0002C5B0  38 7E 00 18 */	addi r3, r30, 0x18
/* 80030954 0002C5B4  48 1F D3 E1 */	bl func_8022DD34
lbl_80030958:
/* 80030958 0002C5B8  7C 7D 1B 78 */	mr r29, r3
lbl_8003095C:
/* 8003095C 0002C5BC  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 80030960 0002C5C0  2C 00 00 01 */	cmpwi r0, 1
/* 80030964 0002C5C4  40 82 00 0C */	bne lbl_80030970
/* 80030968 0002C5C8  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 8003096C 0002C5CC  48 00 00 28 */	b lbl_80030994
lbl_80030970:
/* 80030970 0002C5D0  2C 00 00 02 */	cmpwi r0, 2
/* 80030974 0002C5D4  40 82 00 18 */	bne lbl_8003098C
/* 80030978 0002C5D8  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 8003097C 0002C5DC  FC 00 00 1E */	fctiwz f0, f0
/* 80030980 0002C5E0  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030984 0002C5E4  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030988 0002C5E8  48 00 00 0C */	b lbl_80030994
lbl_8003098C:
/* 8003098C 0002C5EC  38 7E 00 20 */	addi r3, r30, 0x20
/* 80030990 0002C5F0  48 1F D3 A5 */	bl func_8022DD34
lbl_80030994:
/* 80030994 0002C5F4  9B 7F 00 18 */	stb r27, 0x18(r31)
/* 80030998 0002C5F8  9B 9F 00 19 */	stb r28, 0x19(r31)
/* 8003099C 0002C5FC  9B BF 00 1A */	stb r29, 0x1a(r31)
/* 800309A0 0002C600  98 7F 00 1B */	stb r3, 0x1b(r31)
/* 800309A4 0002C604  48 00 01 A8 */	b lbl_80030B4C
/* 800309A8 0002C608  A8 1E 00 08 */	lha r0, 8(r30)
/* 800309AC 0002C60C  2C 00 00 01 */	cmpwi r0, 1
/* 800309B0 0002C610  40 82 00 0C */	bne lbl_800309BC
/* 800309B4 0002C614  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 800309B8 0002C618  48 00 00 2C */	b lbl_800309E4
lbl_800309BC:
/* 800309BC 0002C61C  2C 00 00 02 */	cmpwi r0, 2
/* 800309C0 0002C620  40 82 00 18 */	bne lbl_800309D8
/* 800309C4 0002C624  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 800309C8 0002C628  FC 00 00 1E */	fctiwz f0, f0
/* 800309CC 0002C62C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800309D0 0002C630  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800309D4 0002C634  48 00 00 0C */	b lbl_800309E0
lbl_800309D8:
/* 800309D8 0002C638  38 7E 00 08 */	addi r3, r30, 8
/* 800309DC 0002C63C  48 1F D3 59 */	bl func_8022DD34
lbl_800309E0:
/* 800309E0 0002C640  7C 64 1B 78 */	mr r4, r3
lbl_800309E4:
/* 800309E4 0002C644  7F E3 FB 78 */	mr r3, r31
/* 800309E8 0002C648  48 01 42 B1 */	bl func_80044C98
/* 800309EC 0002C64C  48 00 01 60 */	b lbl_80030B4C
/* 800309F0 0002C650  A8 1E 00 08 */	lha r0, 8(r30)
/* 800309F4 0002C654  2C 00 00 01 */	cmpwi r0, 1
/* 800309F8 0002C658  40 82 00 0C */	bne lbl_80030A04
/* 800309FC 0002C65C  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80030A00 0002C660  48 00 00 28 */	b lbl_80030A28
lbl_80030A04:
/* 80030A04 0002C664  2C 00 00 02 */	cmpwi r0, 2
/* 80030A08 0002C668  40 82 00 18 */	bne lbl_80030A20
/* 80030A0C 0002C66C  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030A10 0002C670  FC 00 00 1E */	fctiwz f0, f0
/* 80030A14 0002C674  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030A18 0002C678  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030A1C 0002C67C  48 00 00 0C */	b lbl_80030A28
lbl_80030A20:
/* 80030A20 0002C680  38 7E 00 08 */	addi r3, r30, 8
/* 80030A24 0002C684  48 1F D3 11 */	bl func_8022DD34
lbl_80030A28:
/* 80030A28 0002C688  2C 03 00 00 */	cmpwi r3, 0
/* 80030A2C 0002C68C  41 82 00 14 */	beq lbl_80030A40
/* 80030A30 0002C690  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80030A34 0002C694  60 00 00 01 */	ori r0, r0, 1
/* 80030A38 0002C698  90 1F 00 20 */	stw r0, 0x20(r31)
/* 80030A3C 0002C69C  48 00 01 10 */	b lbl_80030B4C
lbl_80030A40:
/* 80030A40 0002C6A0  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80030A44 0002C6A4  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 80030A48 0002C6A8  90 1F 00 20 */	stw r0, 0x20(r31)
/* 80030A4C 0002C6AC  48 00 01 00 */	b lbl_80030B4C
/* 80030A50 0002C6B0  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030A54 0002C6B4  2C 00 00 01 */	cmpwi r0, 1
/* 80030A58 0002C6B8  40 82 00 0C */	bne lbl_80030A64
/* 80030A5C 0002C6BC  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80030A60 0002C6C0  48 00 00 28 */	b lbl_80030A88
lbl_80030A64:
/* 80030A64 0002C6C4  2C 00 00 02 */	cmpwi r0, 2
/* 80030A68 0002C6C8  40 82 00 18 */	bne lbl_80030A80
/* 80030A6C 0002C6CC  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030A70 0002C6D0  FC 00 00 1E */	fctiwz f0, f0
/* 80030A74 0002C6D4  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030A78 0002C6D8  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030A7C 0002C6DC  48 00 00 0C */	b lbl_80030A88
lbl_80030A80:
/* 80030A80 0002C6E0  38 7E 00 08 */	addi r3, r30, 8
/* 80030A84 0002C6E4  48 1F D2 B1 */	bl func_8022DD34
lbl_80030A88:
/* 80030A88 0002C6E8  2C 03 00 00 */	cmpwi r3, 0
/* 80030A8C 0002C6EC  40 82 00 14 */	bne lbl_80030AA0
/* 80030A90 0002C6F0  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80030A94 0002C6F4  54 00 06 6E */	rlwinm r0, r0, 0, 0x19, 0x17
/* 80030A98 0002C6F8  90 1F 00 20 */	stw r0, 0x20(r31)
/* 80030A9C 0002C6FC  48 00 00 B0 */	b lbl_80030B4C
lbl_80030AA0:
/* 80030AA0 0002C700  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80030AA4 0002C704  60 00 00 80 */	ori r0, r0, 0x80
/* 80030AA8 0002C708  90 1F 00 20 */	stw r0, 0x20(r31)
/* 80030AAC 0002C70C  48 00 00 A0 */	b lbl_80030B4C
/* 80030AB0 0002C710  7F E3 FB 78 */	mr r3, r31
/* 80030AB4 0002C714  48 01 42 1D */	bl func_80044CD0
/* 80030AB8 0002C718  38 00 00 01 */	li r0, 1
/* 80030ABC 0002C71C  90 7B 00 04 */	stw r3, 4(r27)
/* 80030AC0 0002C720  B0 1B 00 00 */	sth r0, 0(r27)
/* 80030AC4 0002C724  48 00 00 88 */	b lbl_80030B4C
/* 80030AC8 0002C728  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030ACC 0002C72C  2C 00 00 01 */	cmpwi r0, 1
/* 80030AD0 0002C730  40 82 00 0C */	bne lbl_80030ADC
/* 80030AD4 0002C734  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 80030AD8 0002C738  48 00 00 2C */	b lbl_80030B04
lbl_80030ADC:
/* 80030ADC 0002C73C  2C 00 00 02 */	cmpwi r0, 2
/* 80030AE0 0002C740  40 82 00 18 */	bne lbl_80030AF8
/* 80030AE4 0002C744  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030AE8 0002C748  FC 00 00 1E */	fctiwz f0, f0
/* 80030AEC 0002C74C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030AF0 0002C750  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030AF4 0002C754  48 00 00 0C */	b lbl_80030B00
lbl_80030AF8:
/* 80030AF8 0002C758  38 7E 00 08 */	addi r3, r30, 8
/* 80030AFC 0002C75C  48 1F D2 39 */	bl func_8022DD34
lbl_80030B00:
/* 80030B00 0002C760  7C 7B 1B 78 */	mr r27, r3
lbl_80030B04:
/* 80030B04 0002C764  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030B08 0002C768  2C 00 00 01 */	cmpwi r0, 1
/* 80030B0C 0002C76C  40 82 00 0C */	bne lbl_80030B18
/* 80030B10 0002C770  80 BE 00 14 */	lwz r5, 0x14(r30)
/* 80030B14 0002C774  48 00 00 2C */	b lbl_80030B40
lbl_80030B18:
/* 80030B18 0002C778  2C 00 00 02 */	cmpwi r0, 2
/* 80030B1C 0002C77C  40 82 00 18 */	bne lbl_80030B34
/* 80030B20 0002C780  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80030B24 0002C784  FC 00 00 1E */	fctiwz f0, f0
/* 80030B28 0002C788  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80030B2C 0002C78C  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80030B30 0002C790  48 00 00 0C */	b lbl_80030B3C
lbl_80030B34:
/* 80030B34 0002C794  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030B38 0002C798  48 1F D1 FD */	bl func_8022DD34
lbl_80030B3C:
/* 80030B3C 0002C79C  7C 65 1B 78 */	mr r5, r3
lbl_80030B40:
/* 80030B40 0002C7A0  7F E3 FB 78 */	mr r3, r31
/* 80030B44 0002C7A4  7F 64 DB 78 */	mr r4, r27
/* 80030B48 0002C7A8  48 01 41 45 */	bl func_80044C8C
lbl_80030B4C:
/* 80030B4C 0002C7AC  38 60 00 01 */	li r3, 1
lbl_80030B50:
/* 80030B50 0002C7B0  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 80030B54 0002C7B4  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 80030B58 0002C7B8  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 80030B5C 0002C7BC  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 80030B60 0002C7C0  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 80030B64 0002C7C4  39 61 00 40 */	addi r11, r1, 0x40
/* 80030B68 0002C7C8  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 80030B6C 0002C7CC  48 19 66 09 */	bl _restgpr_27
/* 80030B70 0002C7D0  80 01 00 74 */	lwz r0, 0x74(r1)
/* 80030B74 0002C7D4  7C 08 03 A6 */	mtlr r0
/* 80030B78 0002C7D8  38 21 00 70 */	addi r1, r1, 0x70
/* 80030B7C 0002C7DC  4E 80 00 20 */	blr

.global func_80030B80
func_80030B80:
/* 80030B80 0002C7E0  38 A0 00 01 */	li r5, 1
/* 80030B84 0002C7E4  38 6D 97 50 */	addi r3, r13, lbl_8063EA10-_SDA_BASE_
/* 80030B88 0002C7E8  38 80 00 04 */	li r4, 4
/* 80030B8C 0002C7EC  38 00 00 00 */	li r0, 0
/* 80030B90 0002C7F0  98 AD 97 50 */	stb r5, lbl_8063EA10-_SDA_BASE_(r13)
/* 80030B94 0002C7F4  B0 83 00 02 */	sth r4, 2(r3)
/* 80030B98 0002C7F8  98 03 00 04 */	stb r0, 4(r3)
/* 80030B9C 0002C7FC  4E 80 00 20 */	blr

.global lbl_80030BA0
lbl_80030BA0:
/* 80030BA0 0002C800  94 21 FF 10 */	stwu r1, -0xf0(r1)
/* 80030BA4 0002C804  7C 08 02 A6 */	mflr r0
/* 80030BA8 0002C808  90 01 00 F4 */	stw r0, 0xf4(r1)
/* 80030BAC 0002C80C  DB E1 00 E0 */	stfd f31, 0xe0(r1)
/* 80030BB0 0002C810  F3 E1 00 E8 */	psq_st f31, 232(r1), 0, qr0
/* 80030BB4 0002C814  39 61 00 E0 */	addi r11, r1, 0xe0
/* 80030BB8 0002C818  48 19 65 71 */	bl _savegpr_27
/* 80030BBC 0002C81C  3C 00 43 30 */	lis r0, 0x4330
/* 80030BC0 0002C820  7C 7C 1B 78 */	mr r28, r3
/* 80030BC4 0002C824  90 01 00 A8 */	stw r0, 0xa8(r1)
/* 80030BC8 0002C828  7C 9B 23 78 */	mr r27, r4
/* 80030BCC 0002C82C  7C BE 2B 78 */	mr r30, r5
/* 80030BD0 0002C830  90 01 00 B0 */	stw r0, 0xb0(r1)
/* 80030BD4 0002C834  48 01 3C 75 */	bl func_80044848
/* 80030BD8 0002C838  2C 1B 00 01 */	cmpwi r27, 1
/* 80030BDC 0002C83C  41 82 00 50 */	beq lbl_80030C2C
/* 80030BE0 0002C840  A8 1E 00 00 */	lha r0, 0(r30)
/* 80030BE4 0002C844  2C 00 00 2B */	cmpwi r0, 0x2b
/* 80030BE8 0002C848  41 82 00 0C */	beq lbl_80030BF4
/* 80030BEC 0002C84C  38 60 00 01 */	li r3, 1
/* 80030BF0 0002C850  48 00 04 A8 */	b lbl_80031098
lbl_80030BF4:
/* 80030BF4 0002C854  80 1E 00 04 */	lwz r0, 4(r30)
/* 80030BF8 0002C858  2C 00 00 00 */	cmpwi r0, 0
/* 80030BFC 0002C85C  41 80 00 0C */	blt lbl_80030C08
/* 80030C00 0002C860  2C 00 00 08 */	cmpwi r0, 8
/* 80030C04 0002C864  41 80 00 0C */	blt lbl_80030C10
lbl_80030C08:
/* 80030C08 0002C868  3B E0 00 00 */	li r31, 0
/* 80030C0C 0002C86C  48 00 00 10 */	b lbl_80030C1C
lbl_80030C10:
/* 80030C10 0002C870  1C 00 00 E8 */	mulli r0, r0, 0xe8
/* 80030C14 0002C874  7C 63 02 14 */	add r3, r3, r0
/* 80030C18 0002C878  3B E3 07 80 */	addi r31, r3, 0x780
lbl_80030C1C:
/* 80030C1C 0002C87C  2C 1F 00 00 */	cmpwi r31, 0
/* 80030C20 0002C880  40 82 00 14 */	bne lbl_80030C34
/* 80030C24 0002C884  38 60 00 01 */	li r3, 1
/* 80030C28 0002C888  48 00 04 70 */	b lbl_80031098
lbl_80030C2C:
/* 80030C2C 0002C88C  38 60 00 01 */	li r3, 1
/* 80030C30 0002C890  48 00 04 68 */	b lbl_80031098
lbl_80030C34:
/* 80030C34 0002C894  38 1B FF EF */	addi r0, r27, -17
/* 80030C38 0002C898  28 00 00 0F */	cmplwi r0, 0xf
/* 80030C3C 0002C89C  41 81 04 58 */	bgt lbl_80031094
/* 80030C40 0002C8A0  3C 60 80 41 */	lis r3, lbl_8040A008@ha
/* 80030C44 0002C8A4  54 00 10 3A */	slwi r0, r0, 2
/* 80030C48 0002C8A8  38 63 A0 08 */	addi r3, r3, lbl_8040A008@l
/* 80030C4C 0002C8AC  7C 63 00 2E */	lwzx r3, r3, r0
/* 80030C50 0002C8B0  7C 69 03 A6 */	mtctr r3
/* 80030C54 0002C8B4  4E 80 04 20 */	bctr
/* 80030C58 0002C8B8  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030C5C 0002C8BC  2C 00 00 01 */	cmpwi r0, 1
/* 80030C60 0002C8C0  40 82 00 0C */	bne lbl_80030C6C
/* 80030C64 0002C8C4  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80030C68 0002C8C8  48 00 00 28 */	b lbl_80030C90
lbl_80030C6C:
/* 80030C6C 0002C8CC  2C 00 00 02 */	cmpwi r0, 2
/* 80030C70 0002C8D0  40 82 00 18 */	bne lbl_80030C88
/* 80030C74 0002C8D4  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030C78 0002C8D8  FC 00 00 1E */	fctiwz f0, f0
/* 80030C7C 0002C8DC  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030C80 0002C8E0  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030C84 0002C8E4  48 00 00 0C */	b lbl_80030C90
lbl_80030C88:
/* 80030C88 0002C8E8  38 7E 00 08 */	addi r3, r30, 8
/* 80030C8C 0002C8EC  48 1F D0 A9 */	bl func_8022DD34
lbl_80030C90:
/* 80030C90 0002C8F0  7C 03 00 D0 */	neg r0, r3
/* 80030C94 0002C8F4  7C 00 1B 78 */	or r0, r0, r3
/* 80030C98 0002C8F8  54 00 0F FE */	srwi r0, r0, 0x1f
/* 80030C9C 0002C8FC  98 1F 00 00 */	stb r0, 0(r31)
/* 80030CA0 0002C900  48 00 03 F4 */	b lbl_80031094
/* 80030CA4 0002C904  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030CA8 0002C908  2C 00 00 01 */	cmpwi r0, 1
/* 80030CAC 0002C90C  40 82 00 0C */	bne lbl_80030CB8
/* 80030CB0 0002C910  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80030CB4 0002C914  48 00 00 28 */	b lbl_80030CDC
lbl_80030CB8:
/* 80030CB8 0002C918  2C 00 00 02 */	cmpwi r0, 2
/* 80030CBC 0002C91C  40 82 00 18 */	bne lbl_80030CD4
/* 80030CC0 0002C920  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030CC4 0002C924  FC 00 00 1E */	fctiwz f0, f0
/* 80030CC8 0002C928  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030CCC 0002C92C  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030CD0 0002C930  48 00 00 0C */	b lbl_80030CDC
lbl_80030CD4:
/* 80030CD4 0002C934  38 7E 00 08 */	addi r3, r30, 8
/* 80030CD8 0002C938  48 1F D0 5D */	bl func_8022DD34
lbl_80030CDC:
/* 80030CDC 0002C93C  90 7F 00 18 */	stw r3, 0x18(r31)
/* 80030CE0 0002C940  48 00 03 B4 */	b lbl_80031094
/* 80030CE4 0002C944  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030CE8 0002C948  2C 00 00 01 */	cmpwi r0, 1
/* 80030CEC 0002C94C  40 82 00 20 */	bne lbl_80030D0C
/* 80030CF0 0002C950  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 80030CF4 0002C954  C8 22 81 78 */	lfd f1, lbl_80640778-_SDA2_BASE_(r2)
/* 80030CF8 0002C958  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80030CFC 0002C95C  90 01 00 AC */	stw r0, 0xac(r1)
/* 80030D00 0002C960  C8 01 00 A8 */	lfd f0, 0xa8(r1)
/* 80030D04 0002C964  EF E0 08 28 */	fsubs f31, f0, f1
/* 80030D08 0002C968  48 00 00 20 */	b lbl_80030D28
lbl_80030D0C:
/* 80030D0C 0002C96C  2C 00 00 02 */	cmpwi r0, 2
/* 80030D10 0002C970  40 82 00 0C */	bne lbl_80030D1C
/* 80030D14 0002C974  C0 3E 00 0C */	lfs f1, 0xc(r30)
/* 80030D18 0002C978  48 00 00 0C */	b lbl_80030D24
lbl_80030D1C:
/* 80030D1C 0002C97C  38 7E 00 08 */	addi r3, r30, 8
/* 80030D20 0002C980  48 1F D0 59 */	bl func_8022DD78
lbl_80030D24:
/* 80030D24 0002C984  FF E0 08 90 */	fmr f31, f1
lbl_80030D28:
/* 80030D28 0002C988  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030D2C 0002C98C  2C 00 00 01 */	cmpwi r0, 1
/* 80030D30 0002C990  40 82 00 20 */	bne lbl_80030D50
/* 80030D34 0002C994  80 1E 00 14 */	lwz r0, 0x14(r30)
/* 80030D38 0002C998  C8 22 81 78 */	lfd f1, lbl_80640778-_SDA2_BASE_(r2)
/* 80030D3C 0002C99C  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80030D40 0002C9A0  90 01 00 B4 */	stw r0, 0xb4(r1)
/* 80030D44 0002C9A4  C8 01 00 B0 */	lfd f0, 0xb0(r1)
/* 80030D48 0002C9A8  EC 20 08 28 */	fsubs f1, f0, f1
/* 80030D4C 0002C9AC  48 00 00 1C */	b lbl_80030D68
lbl_80030D50:
/* 80030D50 0002C9B0  2C 00 00 02 */	cmpwi r0, 2
/* 80030D54 0002C9B4  40 82 00 0C */	bne lbl_80030D60
/* 80030D58 0002C9B8  C0 3E 00 14 */	lfs f1, 0x14(r30)
/* 80030D5C 0002C9BC  48 00 00 0C */	b lbl_80030D68
lbl_80030D60:
/* 80030D60 0002C9C0  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030D64 0002C9C4  48 1F D0 15 */	bl func_8022DD78
lbl_80030D68:
/* 80030D68 0002C9C8  D3 FF 00 08 */	stfs f31, 8(r31)
/* 80030D6C 0002C9CC  D0 3F 00 0C */	stfs f1, 0xc(r31)
/* 80030D70 0002C9D0  48 00 03 24 */	b lbl_80031094
/* 80030D74 0002C9D4  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030D78 0002C9D8  2C 00 00 01 */	cmpwi r0, 1
/* 80030D7C 0002C9DC  40 82 00 0C */	bne lbl_80030D88
/* 80030D80 0002C9E0  83 BE 00 0C */	lwz r29, 0xc(r30)
/* 80030D84 0002C9E4  48 00 00 2C */	b lbl_80030DB0
lbl_80030D88:
/* 80030D88 0002C9E8  2C 00 00 02 */	cmpwi r0, 2
/* 80030D8C 0002C9EC  40 82 00 18 */	bne lbl_80030DA4
/* 80030D90 0002C9F0  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030D94 0002C9F4  FC 00 00 1E */	fctiwz f0, f0
/* 80030D98 0002C9F8  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030D9C 0002C9FC  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030DA0 0002CA00  48 00 00 0C */	b lbl_80030DAC
lbl_80030DA4:
/* 80030DA4 0002CA04  38 7E 00 08 */	addi r3, r30, 8
/* 80030DA8 0002CA08  48 1F CF 8D */	bl func_8022DD34
lbl_80030DAC:
/* 80030DAC 0002CA0C  7C 7D 1B 78 */	mr r29, r3
lbl_80030DB0:
/* 80030DB0 0002CA10  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030DB4 0002CA14  2C 00 00 01 */	cmpwi r0, 1
/* 80030DB8 0002CA18  40 82 00 0C */	bne lbl_80030DC4
/* 80030DBC 0002CA1C  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 80030DC0 0002CA20  48 00 00 28 */	b lbl_80030DE8
lbl_80030DC4:
/* 80030DC4 0002CA24  2C 00 00 02 */	cmpwi r0, 2
/* 80030DC8 0002CA28  40 82 00 18 */	bne lbl_80030DE0
/* 80030DCC 0002CA2C  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80030DD0 0002CA30  FC 00 00 1E */	fctiwz f0, f0
/* 80030DD4 0002CA34  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030DD8 0002CA38  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030DDC 0002CA3C  48 00 00 0C */	b lbl_80030DE8
lbl_80030DE0:
/* 80030DE0 0002CA40  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030DE4 0002CA44  48 1F CF 51 */	bl func_8022DD34
lbl_80030DE8:
/* 80030DE8 0002CA48  7F A0 07 34 */	extsh r0, r29
/* 80030DEC 0002CA4C  7C 63 07 34 */	extsh r3, r3
/* 80030DF0 0002CA50  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80030DF4 0002CA54  C8 42 81 78 */	lfd f2, lbl_80640778-_SDA2_BASE_(r2)
/* 80030DF8 0002CA58  90 01 00 B4 */	stw r0, 0xb4(r1)
/* 80030DFC 0002CA5C  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80030E00 0002CA60  90 01 00 AC */	stw r0, 0xac(r1)
/* 80030E04 0002CA64  C8 01 00 B0 */	lfd f0, 0xb0(r1)
/* 80030E08 0002CA68  C8 21 00 A8 */	lfd f1, 0xa8(r1)
/* 80030E0C 0002CA6C  EC 00 10 28 */	fsubs f0, f0, f2
/* 80030E10 0002CA70  EC 21 10 28 */	fsubs f1, f1, f2
/* 80030E14 0002CA74  D0 1F 00 08 */	stfs f0, 8(r31)
/* 80030E18 0002CA78  D0 3F 00 0C */	stfs f1, 0xc(r31)
/* 80030E1C 0002CA7C  48 00 02 78 */	b lbl_80031094
/* 80030E20 0002CA80  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030E24 0002CA84  2C 00 00 01 */	cmpwi r0, 1
/* 80030E28 0002CA88  40 82 00 0C */	bne lbl_80030E34
/* 80030E2C 0002CA8C  83 BE 00 0C */	lwz r29, 0xc(r30)
/* 80030E30 0002CA90  48 00 00 2C */	b lbl_80030E5C
lbl_80030E34:
/* 80030E34 0002CA94  2C 00 00 02 */	cmpwi r0, 2
/* 80030E38 0002CA98  40 82 00 18 */	bne lbl_80030E50
/* 80030E3C 0002CA9C  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030E40 0002CAA0  FC 00 00 1E */	fctiwz f0, f0
/* 80030E44 0002CAA4  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030E48 0002CAA8  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030E4C 0002CAAC  48 00 00 0C */	b lbl_80030E58
lbl_80030E50:
/* 80030E50 0002CAB0  38 7E 00 08 */	addi r3, r30, 8
/* 80030E54 0002CAB4  48 1F CE E1 */	bl func_8022DD34
lbl_80030E58:
/* 80030E58 0002CAB8  7C 7D 1B 78 */	mr r29, r3
lbl_80030E5C:
/* 80030E5C 0002CABC  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030E60 0002CAC0  2C 00 00 01 */	cmpwi r0, 1
/* 80030E64 0002CAC4  40 82 00 0C */	bne lbl_80030E70
/* 80030E68 0002CAC8  83 9E 00 14 */	lwz r28, 0x14(r30)
/* 80030E6C 0002CACC  48 00 00 2C */	b lbl_80030E98
lbl_80030E70:
/* 80030E70 0002CAD0  2C 00 00 02 */	cmpwi r0, 2
/* 80030E74 0002CAD4  40 82 00 18 */	bne lbl_80030E8C
/* 80030E78 0002CAD8  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80030E7C 0002CADC  FC 00 00 1E */	fctiwz f0, f0
/* 80030E80 0002CAE0  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030E84 0002CAE4  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030E88 0002CAE8  48 00 00 0C */	b lbl_80030E94
lbl_80030E8C:
/* 80030E8C 0002CAEC  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030E90 0002CAF0  48 1F CE A5 */	bl func_8022DD34
lbl_80030E94:
/* 80030E94 0002CAF4  7C 7C 1B 78 */	mr r28, r3
lbl_80030E98:
/* 80030E98 0002CAF8  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80030E9C 0002CAFC  2C 00 00 01 */	cmpwi r0, 1
/* 80030EA0 0002CB00  40 82 00 0C */	bne lbl_80030EAC
/* 80030EA4 0002CB04  83 7E 00 1C */	lwz r27, 0x1c(r30)
/* 80030EA8 0002CB08  48 00 00 2C */	b lbl_80030ED4
lbl_80030EAC:
/* 80030EAC 0002CB0C  2C 00 00 02 */	cmpwi r0, 2
/* 80030EB0 0002CB10  40 82 00 18 */	bne lbl_80030EC8
/* 80030EB4 0002CB14  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80030EB8 0002CB18  FC 00 00 1E */	fctiwz f0, f0
/* 80030EBC 0002CB1C  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030EC0 0002CB20  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030EC4 0002CB24  48 00 00 0C */	b lbl_80030ED0
lbl_80030EC8:
/* 80030EC8 0002CB28  38 7E 00 18 */	addi r3, r30, 0x18
/* 80030ECC 0002CB2C  48 1F CE 69 */	bl func_8022DD34
lbl_80030ED0:
/* 80030ED0 0002CB30  7C 7B 1B 78 */	mr r27, r3
lbl_80030ED4:
/* 80030ED4 0002CB34  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 80030ED8 0002CB38  2C 00 00 01 */	cmpwi r0, 1
/* 80030EDC 0002CB3C  40 82 00 0C */	bne lbl_80030EE8
/* 80030EE0 0002CB40  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 80030EE4 0002CB44  48 00 00 28 */	b lbl_80030F0C
lbl_80030EE8:
/* 80030EE8 0002CB48  2C 00 00 02 */	cmpwi r0, 2
/* 80030EEC 0002CB4C  40 82 00 18 */	bne lbl_80030F04
/* 80030EF0 0002CB50  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 80030EF4 0002CB54  FC 00 00 1E */	fctiwz f0, f0
/* 80030EF8 0002CB58  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030EFC 0002CB5C  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030F00 0002CB60  48 00 00 0C */	b lbl_80030F0C
lbl_80030F04:
/* 80030F04 0002CB64  38 7E 00 20 */	addi r3, r30, 0x20
/* 80030F08 0002CB68  48 1F CE 2D */	bl func_8022DD34
lbl_80030F0C:
/* 80030F0C 0002CB6C  57 65 40 2E */	slwi r5, r27, 8
/* 80030F10 0002CB70  57 A4 C0 0E */	slwi r4, r29, 0x18
/* 80030F14 0002CB74  57 80 80 1E */	slwi r0, r28, 0x10
/* 80030F18 0002CB78  7C 63 2B 78 */	or r3, r3, r5
/* 80030F1C 0002CB7C  7C 80 03 78 */	or r0, r4, r0
/* 80030F20 0002CB80  7C 60 03 78 */	or r0, r3, r0
/* 80030F24 0002CB84  90 1F 00 10 */	stw r0, 0x10(r31)
/* 80030F28 0002CB88  48 00 01 6C */	b lbl_80031094
/* 80030F2C 0002CB8C  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030F30 0002CB90  2C 00 00 01 */	cmpwi r0, 1
/* 80030F34 0002CB94  40 82 00 0C */	bne lbl_80030F40
/* 80030F38 0002CB98  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 80030F3C 0002CB9C  48 00 00 2C */	b lbl_80030F68
lbl_80030F40:
/* 80030F40 0002CBA0  2C 00 00 02 */	cmpwi r0, 2
/* 80030F44 0002CBA4  40 82 00 18 */	bne lbl_80030F5C
/* 80030F48 0002CBA8  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030F4C 0002CBAC  FC 00 00 1E */	fctiwz f0, f0
/* 80030F50 0002CBB0  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030F54 0002CBB4  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030F58 0002CBB8  48 00 00 0C */	b lbl_80030F64
lbl_80030F5C:
/* 80030F5C 0002CBBC  38 7E 00 08 */	addi r3, r30, 8
/* 80030F60 0002CBC0  48 1F CD D5 */	bl func_8022DD34
lbl_80030F64:
/* 80030F64 0002CBC4  7C 7B 1B 78 */	mr r27, r3
lbl_80030F68:
/* 80030F68 0002CBC8  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030F6C 0002CBCC  2C 00 00 01 */	cmpwi r0, 1
/* 80030F70 0002CBD0  40 82 00 0C */	bne lbl_80030F7C
/* 80030F74 0002CBD4  80 BE 00 14 */	lwz r5, 0x14(r30)
/* 80030F78 0002CBD8  48 00 00 2C */	b lbl_80030FA4
lbl_80030F7C:
/* 80030F7C 0002CBDC  2C 00 00 02 */	cmpwi r0, 2
/* 80030F80 0002CBE0  40 82 00 18 */	bne lbl_80030F98
/* 80030F84 0002CBE4  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80030F88 0002CBE8  FC 00 00 1E */	fctiwz f0, f0
/* 80030F8C 0002CBEC  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030F90 0002CBF0  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030F94 0002CBF4  48 00 00 0C */	b lbl_80030FA0
lbl_80030F98:
/* 80030F98 0002CBF8  38 7E 00 10 */	addi r3, r30, 0x10
/* 80030F9C 0002CBFC  48 1F CD 99 */	bl func_8022DD34
lbl_80030FA0:
/* 80030FA0 0002CC00  7C 65 1B 78 */	mr r5, r3
lbl_80030FA4:
/* 80030FA4 0002CC04  7F E3 FB 78 */	mr r3, r31
/* 80030FA8 0002CC08  7F 64 DB 78 */	mr r4, r27
/* 80030FAC 0002CC0C  48 01 3A F1 */	bl func_80044A9C
/* 80030FB0 0002CC10  48 00 00 E4 */	b lbl_80031094
/* 80030FB4 0002CC14  A8 1E 00 08 */	lha r0, 8(r30)
/* 80030FB8 0002CC18  2C 00 00 01 */	cmpwi r0, 1
/* 80030FBC 0002CC1C  40 82 00 0C */	bne lbl_80030FC8
/* 80030FC0 0002CC20  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 80030FC4 0002CC24  48 00 00 2C */	b lbl_80030FF0
lbl_80030FC8:
/* 80030FC8 0002CC28  2C 00 00 02 */	cmpwi r0, 2
/* 80030FCC 0002CC2C  40 82 00 18 */	bne lbl_80030FE4
/* 80030FD0 0002CC30  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 80030FD4 0002CC34  FC 00 00 1E */	fctiwz f0, f0
/* 80030FD8 0002CC38  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80030FDC 0002CC3C  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 80030FE0 0002CC40  48 00 00 0C */	b lbl_80030FEC
lbl_80030FE4:
/* 80030FE4 0002CC44  38 7E 00 08 */	addi r3, r30, 8
/* 80030FE8 0002CC48  48 1F CD 4D */	bl func_8022DD34
lbl_80030FEC:
/* 80030FEC 0002CC4C  7C 7B 1B 78 */	mr r27, r3
lbl_80030FF0:
/* 80030FF0 0002CC50  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80030FF4 0002CC54  2C 00 00 01 */	cmpwi r0, 1
/* 80030FF8 0002CC58  40 82 00 0C */	bne lbl_80031004
/* 80030FFC 0002CC5C  80 9E 00 14 */	lwz r4, 0x14(r30)
/* 80031000 0002CC60  48 00 00 2C */	b lbl_8003102C
lbl_80031004:
/* 80031004 0002CC64  2C 00 00 02 */	cmpwi r0, 2
/* 80031008 0002CC68  40 82 00 18 */	bne lbl_80031020
/* 8003100C 0002CC6C  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80031010 0002CC70  FC 00 00 1E */	fctiwz f0, f0
/* 80031014 0002CC74  D8 01 00 B8 */	stfd f0, 0xb8(r1)
/* 80031018 0002CC78  80 61 00 BC */	lwz r3, 0xbc(r1)
/* 8003101C 0002CC7C  48 00 00 0C */	b lbl_80031028
lbl_80031020:
/* 80031020 0002CC80  38 7E 00 10 */	addi r3, r30, 0x10
/* 80031024 0002CC84  48 1F CD 11 */	bl func_8022DD34
lbl_80031028:
/* 80031028 0002CC88  7C 64 1B 78 */	mr r4, r3
lbl_8003102C:
/* 8003102C 0002CC8C  7C 04 00 D0 */	neg r0, r4
/* 80031030 0002CC90  7F E3 FB 78 */	mr r3, r31
/* 80031034 0002CC94  7C 00 23 78 */	or r0, r0, r4
/* 80031038 0002CC98  7F 64 DB 78 */	mr r4, r27
/* 8003103C 0002CC9C  54 05 0F FE */	srwi r5, r0, 0x1f
/* 80031040 0002CCA0  48 01 3A 4D */	bl Audio_SoundAttributes_SetSoundType
/* 80031044 0002CCA4  48 00 00 50 */	b lbl_80031094
/* 80031048 0002CCA8  A8 1E 00 08 */	lha r0, 8(r30)
/* 8003104C 0002CCAC  2C 00 00 03 */	cmpwi r0, 3
/* 80031050 0002CCB0  40 82 00 0C */	bne lbl_8003105C
/* 80031054 0002CCB4  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80031058 0002CCB8  48 00 00 10 */	b lbl_80031068
lbl_8003105C:
/* 8003105C 0002CCBC  38 7E 00 08 */	addi r3, r30, 8
/* 80031060 0002CCC0  38 81 00 58 */	addi r4, r1, 0x58
/* 80031064 0002CCC4  4B FF 73 4D */	bl func_800283B0
lbl_80031068:
/* 80031068 0002CCC8  7C 66 1B 78 */	mr r6, r3
/* 8003106C 0002CCCC  7F 83 E3 78 */	mr r3, r28
/* 80031070 0002CCD0  38 81 00 08 */	addi r4, r1, 8
/* 80031074 0002CCD4  38 FE 00 10 */	addi r7, r30, 0x10
/* 80031078 0002CCD8  38 A0 00 50 */	li r5, 0x50
/* 8003107C 0002CCDC  4B FF 6A D1 */	bl func_80027B4C
/* 80031080 0002CCE0  2C 03 00 00 */	cmpwi r3, 0
/* 80031084 0002CCE4  41 82 00 10 */	beq lbl_80031094
/* 80031088 0002CCE8  7F E3 FB 78 */	mr r3, r31
/* 8003108C 0002CCEC  38 81 00 08 */	addi r4, r1, 8
/* 80031090 0002CCF0  48 01 3A 09 */	bl func_80044A98
lbl_80031094:
/* 80031094 0002CCF4  38 60 00 01 */	li r3, 1
lbl_80031098:
/* 80031098 0002CCF8  E3 E1 00 E8 */	psq_l f31, 232(r1), 0, qr0
/* 8003109C 0002CCFC  39 61 00 E0 */	addi r11, r1, 0xe0
/* 800310A0 0002CD00  CB E1 00 E0 */	lfd f31, 0xe0(r1)
/* 800310A4 0002CD04  48 19 60 D1 */	bl _restgpr_27
/* 800310A8 0002CD08  80 01 00 F4 */	lwz r0, 0xf4(r1)
/* 800310AC 0002CD0C  7C 08 03 A6 */	mtlr r0
/* 800310B0 0002CD10  38 21 00 F0 */	addi r1, r1, 0xf0
/* 800310B4 0002CD14  4E 80 00 20 */	blr

.global func_800310B8
func_800310B8:
/* 800310B8 0002CD18  38 A0 00 01 */	li r5, 1
/* 800310BC 0002CD1C  38 6D 97 58 */	addi r3, r13, lbl_8063EA18-_SDA_BASE_
/* 800310C0 0002CD20  38 80 00 04 */	li r4, 4
/* 800310C4 0002CD24  38 00 00 00 */	li r0, 0
/* 800310C8 0002CD28  98 AD 97 58 */	stb r5, lbl_8063EA18-_SDA_BASE_(r13)
/* 800310CC 0002CD2C  B0 83 00 02 */	sth r4, 2(r3)
/* 800310D0 0002CD30  98 03 00 04 */	stb r0, 4(r3)
/* 800310D4 0002CD34  4E 80 00 20 */	blr

.global lbl_800310D8
lbl_800310D8:
/* 800310D8 0002CD38  94 21 FF 50 */	stwu r1, -0xb0(r1)
/* 800310DC 0002CD3C  7C 08 02 A6 */	mflr r0
/* 800310E0 0002CD40  90 01 00 B4 */	stw r0, 0xb4(r1)
/* 800310E4 0002CD44  39 61 00 B0 */	addi r11, r1, 0xb0
/* 800310E8 0002CD48  48 19 60 41 */	bl _savegpr_27
/* 800310EC 0002CD4C  7C 7B 1B 78 */	mr r27, r3
/* 800310F0 0002CD50  7C 9C 23 78 */	mr r28, r4
/* 800310F4 0002CD54  7C BD 2B 78 */	mr r29, r5
/* 800310F8 0002CD58  7C DE 33 78 */	mr r30, r6
/* 800310FC 0002CD5C  3B E0 00 00 */	li r31, 0
/* 80031100 0002CD60  48 01 C7 0D */	bl func_8004D80C
/* 80031104 0002CD64  2C 03 00 00 */	cmpwi r3, 0
/* 80031108 0002CD68  40 82 00 0C */	bne lbl_80031114
/* 8003110C 0002CD6C  38 60 00 01 */	li r3, 1
/* 80031110 0002CD70  48 00 03 FC */	b lbl_8003150C
lbl_80031114:
/* 80031114 0002CD74  2C 1C 00 01 */	cmpwi r28, 1
/* 80031118 0002CD78  41 82 00 24 */	beq lbl_8003113C
/* 8003111C 0002CD7C  A8 1D 00 00 */	lha r0, 0(r29)
/* 80031120 0002CD80  2C 00 00 2C */	cmpwi r0, 0x2c
/* 80031124 0002CD84  40 82 00 18 */	bne lbl_8003113C
/* 80031128 0002CD88  83 FD 00 04 */	lwz r31, 4(r29)
/* 8003112C 0002CD8C  2C 1F 00 00 */	cmpwi r31, 0
/* 80031130 0002CD90  40 82 00 0C */	bne lbl_8003113C
/* 80031134 0002CD94  38 60 00 01 */	li r3, 1
/* 80031138 0002CD98  48 00 03 D4 */	b lbl_8003150C
lbl_8003113C:
/* 8003113C 0002CD9C  28 1C 00 25 */	cmplwi r28, 0x25
/* 80031140 0002CDA0  41 81 03 C8 */	bgt lbl_80031508
/* 80031144 0002CDA4  3C 80 80 41 */	lis r4, lbl_8040A058@ha
/* 80031148 0002CDA8  57 80 10 3A */	slwi r0, r28, 2
/* 8003114C 0002CDAC  38 84 A0 58 */	addi r4, r4, lbl_8040A058@l
/* 80031150 0002CDB0  7C 84 00 2E */	lwzx r4, r4, r0
/* 80031154 0002CDB4  7C 89 03 A6 */	mtctr r4
/* 80031158 0002CDB8  4E 80 04 20 */	bctr
/* 8003115C 0002CDBC  48 01 CC 3D */	bl func_8004DD98
/* 80031160 0002CDC0  2C 03 00 00 */	cmpwi r3, 0
/* 80031164 0002CDC4  41 82 03 A4 */	beq lbl_80031508
/* 80031168 0002CDC8  38 80 00 2C */	li r4, 0x2c
/* 8003116C 0002CDCC  38 00 00 01 */	li r0, 1
/* 80031170 0002CDD0  B0 9E 00 00 */	sth r4, 0(r30)
/* 80031174 0002CDD4  B0 1E 00 02 */	sth r0, 2(r30)
/* 80031178 0002CDD8  90 7E 00 04 */	stw r3, 4(r30)
/* 8003117C 0002CDDC  48 00 03 8C */	b lbl_80031508
/* 80031180 0002CDE0  2C 1F 00 00 */	cmpwi r31, 0
/* 80031184 0002CDE4  41 82 03 84 */	beq lbl_80031508
/* 80031188 0002CDE8  7F E4 FB 78 */	mr r4, r31
/* 8003118C 0002CDEC  48 01 CC 41 */	bl func_8004DDCC
/* 80031190 0002CDF0  38 00 00 00 */	li r0, 0
/* 80031194 0002CDF4  38 60 00 01 */	li r3, 1
/* 80031198 0002CDF8  B0 7D 00 00 */	sth r3, 0(r29)
/* 8003119C 0002CDFC  B0 1D 00 02 */	sth r0, 2(r29)
/* 800311A0 0002CE00  90 1D 00 04 */	stw r0, 4(r29)
/* 800311A4 0002CE04  48 00 03 64 */	b lbl_80031508
/* 800311A8 0002CE08  A8 1D 00 08 */	lha r0, 8(r29)
/* 800311AC 0002CE0C  2C 00 00 03 */	cmpwi r0, 3
/* 800311B0 0002CE10  40 82 00 0C */	bne lbl_800311BC
/* 800311B4 0002CE14  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 800311B8 0002CE18  48 00 00 10 */	b lbl_800311C8
lbl_800311BC:
/* 800311BC 0002CE1C  38 7D 00 08 */	addi r3, r29, 8
/* 800311C0 0002CE20  38 9B 09 A0 */	addi r4, r27, 0x9a0
/* 800311C4 0002CE24  4B FF 71 ED */	bl func_800283B0
lbl_800311C8:
/* 800311C8 0002CE28  3C 80 80 41 */	lis r4, lbl_8040A048@ha
/* 800311CC 0002CE2C  7C 65 1B 78 */	mr r5, r3
/* 800311D0 0002CE30  38 61 00 08 */	addi r3, r1, 8
/* 800311D4 0002CE34  38 84 A0 48 */	addi r4, r4, lbl_8040A048@l
/* 800311D8 0002CE38  4C C6 31 82 */	crclr 6
/* 800311DC 0002CE3C  48 19 B9 21 */	bl sprintf
/* 800311E0 0002CE40  7F E3 FB 78 */	mr r3, r31
/* 800311E4 0002CE44  38 81 00 08 */	addi r4, r1, 8
/* 800311E8 0002CE48  48 01 69 95 */	bl func_80047B7C
/* 800311EC 0002CE4C  2C 03 00 00 */	cmpwi r3, 0
/* 800311F0 0002CE50  41 82 00 14 */	beq lbl_80031204
/* 800311F4 0002CE54  38 00 00 01 */	li r0, 1
/* 800311F8 0002CE58  B0 1E 00 00 */	sth r0, 0(r30)
/* 800311FC 0002CE5C  90 1E 00 04 */	stw r0, 4(r30)
/* 80031200 0002CE60  48 00 03 08 */	b lbl_80031508
lbl_80031204:
/* 80031204 0002CE64  38 60 00 01 */	li r3, 1
/* 80031208 0002CE68  38 00 00 00 */	li r0, 0
/* 8003120C 0002CE6C  B0 7E 00 00 */	sth r3, 0(r30)
/* 80031210 0002CE70  90 1E 00 04 */	stw r0, 4(r30)
/* 80031214 0002CE74  48 00 02 F4 */	b lbl_80031508
/* 80031218 0002CE78  A8 1D 00 08 */	lha r0, 8(r29)
/* 8003121C 0002CE7C  2C 00 00 21 */	cmpwi r0, 0x21
/* 80031220 0002CE80  40 82 00 1C */	bne lbl_8003123C
/* 80031224 0002CE84  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 80031228 0002CE88  2C 04 00 00 */	cmpwi r4, 0
/* 8003122C 0002CE8C  41 82 00 10 */	beq lbl_8003123C
/* 80031230 0002CE90  7F E3 FB 78 */	mr r3, r31
/* 80031234 0002CE94  48 01 6C B1 */	bl func_80047EE4
/* 80031238 0002CE98  48 00 02 D0 */	b lbl_80031508
lbl_8003123C:
/* 8003123C 0002CE9C  7F E3 FB 78 */	mr r3, r31
/* 80031240 0002CEA0  38 80 00 00 */	li r4, 0
/* 80031244 0002CEA4  48 01 6C A1 */	bl func_80047EE4
/* 80031248 0002CEA8  48 00 02 C0 */	b lbl_80031508
/* 8003124C 0002CEAC  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031250 0002CEB0  2C 00 00 01 */	cmpwi r0, 1
/* 80031254 0002CEB4  40 82 00 28 */	bne lbl_8003127C
/* 80031258 0002CEB8  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8003125C 0002CEBC  3C 00 43 30 */	lis r0, 0x4330
/* 80031260 0002CEC0  90 01 00 88 */	stw r0, 0x88(r1)
/* 80031264 0002CEC4  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80031268 0002CEC8  C8 22 81 80 */	lfd f1, lbl_80640780-_SDA2_BASE_(r2)
/* 8003126C 0002CECC  90 01 00 8C */	stw r0, 0x8c(r1)
/* 80031270 0002CED0  C8 01 00 88 */	lfd f0, 0x88(r1)
/* 80031274 0002CED4  EC 20 08 28 */	fsubs f1, f0, f1
/* 80031278 0002CED8  48 00 00 1C */	b lbl_80031294
lbl_8003127C:
/* 8003127C 0002CEDC  2C 00 00 02 */	cmpwi r0, 2
/* 80031280 0002CEE0  40 82 00 0C */	bne lbl_8003128C
/* 80031284 0002CEE4  C0 3D 00 0C */	lfs f1, 0xc(r29)
/* 80031288 0002CEE8  48 00 00 0C */	b lbl_80031294
lbl_8003128C:
/* 8003128C 0002CEEC  38 7D 00 08 */	addi r3, r29, 8
/* 80031290 0002CEF0  48 1F CA E9 */	bl func_8022DD78
lbl_80031294:
/* 80031294 0002CEF4  7F E3 FB 78 */	mr r3, r31
/* 80031298 0002CEF8  48 01 6F 71 */	bl func_80048208
/* 8003129C 0002CEFC  48 00 02 6C */	b lbl_80031508
/* 800312A0 0002CF00  7F E3 FB 78 */	mr r3, r31
/* 800312A4 0002CF04  48 01 6F 49 */	bl func_800481EC
/* 800312A8 0002CF08  48 00 02 60 */	b lbl_80031508
/* 800312AC 0002CF0C  7F E3 FB 78 */	mr r3, r31
/* 800312B0 0002CF10  48 01 6F FD */	bl func_800482AC
/* 800312B4 0002CF14  48 00 02 54 */	b lbl_80031508
/* 800312B8 0002CF18  A8 1D 00 08 */	lha r0, 8(r29)
/* 800312BC 0002CF1C  2C 00 00 01 */	cmpwi r0, 1
/* 800312C0 0002CF20  40 82 00 0C */	bne lbl_800312CC
/* 800312C4 0002CF24  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 800312C8 0002CF28  48 00 00 2C */	b lbl_800312F4
lbl_800312CC:
/* 800312CC 0002CF2C  2C 00 00 02 */	cmpwi r0, 2
/* 800312D0 0002CF30  40 82 00 18 */	bne lbl_800312E8
/* 800312D4 0002CF34  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 800312D8 0002CF38  FC 00 00 1E */	fctiwz f0, f0
/* 800312DC 0002CF3C  D8 01 00 88 */	stfd f0, 0x88(r1)
/* 800312E0 0002CF40  80 61 00 8C */	lwz r3, 0x8c(r1)
/* 800312E4 0002CF44  48 00 00 0C */	b lbl_800312F0
lbl_800312E8:
/* 800312E8 0002CF48  38 7D 00 08 */	addi r3, r29, 8
/* 800312EC 0002CF4C  48 1F CA 49 */	bl func_8022DD34
lbl_800312F0:
/* 800312F0 0002CF50  7C 64 1B 78 */	mr r4, r3
lbl_800312F4:
/* 800312F4 0002CF54  7F E3 FB 78 */	mr r3, r31
/* 800312F8 0002CF58  48 01 6F 95 */	bl func_8004828C
/* 800312FC 0002CF5C  38 00 00 01 */	li r0, 1
/* 80031300 0002CF60  90 7E 00 04 */	stw r3, 4(r30)
/* 80031304 0002CF64  B0 1E 00 00 */	sth r0, 0(r30)
/* 80031308 0002CF68  48 00 02 00 */	b lbl_80031508
/* 8003130C 0002CF6C  7F E3 FB 78 */	mr r3, r31
/* 80031310 0002CF70  38 80 00 00 */	li r4, 0
/* 80031314 0002CF74  48 01 6F 79 */	bl func_8004828C
/* 80031318 0002CF78  38 00 00 01 */	li r0, 1
/* 8003131C 0002CF7C  90 7E 00 04 */	stw r3, 4(r30)
/* 80031320 0002CF80  B0 1E 00 00 */	sth r0, 0(r30)
/* 80031324 0002CF84  48 00 01 E4 */	b lbl_80031508
/* 80031328 0002CF88  C0 1F 00 10 */	lfs f0, 0x10(r31)
/* 8003132C 0002CF8C  38 00 00 02 */	li r0, 2
/* 80031330 0002CF90  B0 1E 00 00 */	sth r0, 0(r30)
/* 80031334 0002CF94  D0 1E 00 04 */	stfs f0, 4(r30)
/* 80031338 0002CF98  48 00 01 D0 */	b lbl_80031508
/* 8003133C 0002CF9C  C0 1F 00 0C */	lfs f0, 0xc(r31)
/* 80031340 0002CFA0  38 00 00 02 */	li r0, 2
/* 80031344 0002CFA4  B0 1E 00 00 */	sth r0, 0(r30)
/* 80031348 0002CFA8  D0 1E 00 04 */	stfs f0, 4(r30)
/* 8003134C 0002CFAC  48 00 01 BC */	b lbl_80031508
/* 80031350 0002CFB0  38 60 00 01 */	li r3, 1
/* 80031354 0002CFB4  38 00 00 00 */	li r0, 0
/* 80031358 0002CFB8  B0 7E 00 00 */	sth r3, 0(r30)
/* 8003135C 0002CFBC  90 1E 00 04 */	stw r0, 4(r30)
/* 80031360 0002CFC0  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031364 0002CFC4  2C 80 00 01 */	cmpwi cr1, r0, 1
/* 80031368 0002CFC8  40 86 01 A0 */	bne cr1, lbl_80031508
/* 8003136C 0002CFCC  83 8D 96 F0 */	lwz r28, lbl_8063E9B0-_SDA_BASE_(r13)
/* 80031370 0002CFD0  2C 1C 00 00 */	cmpwi r28, 0
/* 80031374 0002CFD4  41 82 01 94 */	beq lbl_80031508
/* 80031378 0002CFD8  40 86 00 0C */	bne cr1, lbl_80031384
/* 8003137C 0002CFDC  83 BD 00 0C */	lwz r29, 0xc(r29)
/* 80031380 0002CFE0  48 00 00 2C */	b lbl_800313AC
lbl_80031384:
/* 80031384 0002CFE4  2C 00 00 02 */	cmpwi r0, 2
/* 80031388 0002CFE8  40 82 00 18 */	bne lbl_800313A0
/* 8003138C 0002CFEC  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 80031390 0002CFF0  FC 00 00 1E */	fctiwz f0, f0
/* 80031394 0002CFF4  D8 01 00 88 */	stfd f0, 0x88(r1)
/* 80031398 0002CFF8  80 61 00 8C */	lwz r3, 0x8c(r1)
/* 8003139C 0002CFFC  48 00 00 0C */	b lbl_800313A8
lbl_800313A0:
/* 800313A0 0002D000  38 7D 00 08 */	addi r3, r29, 8
/* 800313A4 0002D004  48 1F C9 91 */	bl func_8022DD34
lbl_800313A8:
/* 800313A8 0002D008  7C 7D 1B 78 */	mr r29, r3
lbl_800313AC:
/* 800313AC 0002D00C  7F 83 E3 78 */	mr r3, r28
/* 800313B0 0002D010  4B FF 3F B9 */	bl func_80025368
/* 800313B4 0002D014  7C 64 1B 78 */	mr r4, r3
/* 800313B8 0002D018  7F E3 FB 78 */	mr r3, r31
/* 800313BC 0002D01C  7F A5 EB 78 */	mr r5, r29
/* 800313C0 0002D020  48 01 68 1D */	bl func_80047BDC
/* 800313C4 0002D024  2C 03 00 00 */	cmpwi r3, 0
/* 800313C8 0002D028  41 82 01 40 */	beq lbl_80031508
/* 800313CC 0002D02C  38 00 00 01 */	li r0, 1
/* 800313D0 0002D030  B0 1E 00 00 */	sth r0, 0(r30)
/* 800313D4 0002D034  90 1E 00 04 */	stw r0, 4(r30)
/* 800313D8 0002D038  48 00 01 30 */	b lbl_80031508
/* 800313DC 0002D03C  38 60 00 01 */	li r3, 1
/* 800313E0 0002D040  38 00 00 00 */	li r0, 0
/* 800313E4 0002D044  B0 7E 00 00 */	sth r3, 0(r30)
/* 800313E8 0002D048  90 1E 00 04 */	stw r0, 4(r30)
/* 800313EC 0002D04C  A8 1D 00 08 */	lha r0, 8(r29)
/* 800313F0 0002D050  2C 00 00 01 */	cmpwi r0, 1
/* 800313F4 0002D054  40 82 01 14 */	bne lbl_80031508
/* 800313F8 0002D058  40 82 00 0C */	bne lbl_80031404
/* 800313FC 0002D05C  83 9D 00 0C */	lwz r28, 0xc(r29)
/* 80031400 0002D060  48 00 00 2C */	b lbl_8003142C
lbl_80031404:
/* 80031404 0002D064  2C 00 00 02 */	cmpwi r0, 2
/* 80031408 0002D068  40 82 00 18 */	bne lbl_80031420
/* 8003140C 0002D06C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 80031410 0002D070  FC 00 00 1E */	fctiwz f0, f0
/* 80031414 0002D074  D8 01 00 88 */	stfd f0, 0x88(r1)
/* 80031418 0002D078  80 61 00 8C */	lwz r3, 0x8c(r1)
/* 8003141C 0002D07C  48 00 00 0C */	b lbl_80031428
lbl_80031420:
/* 80031420 0002D080  38 7D 00 08 */	addi r3, r29, 8
/* 80031424 0002D084  48 1F C9 11 */	bl func_8022DD34
lbl_80031428:
/* 80031428 0002D088  7C 7C 1B 78 */	mr r28, r3
lbl_8003142C:
/* 8003142C 0002D08C  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80031430 0002D090  2C 00 00 01 */	cmpwi r0, 1
/* 80031434 0002D094  40 82 00 0C */	bne lbl_80031440
/* 80031438 0002D098  80 BD 00 14 */	lwz r5, 0x14(r29)
/* 8003143C 0002D09C  48 00 00 2C */	b lbl_80031468
lbl_80031440:
/* 80031440 0002D0A0  2C 00 00 02 */	cmpwi r0, 2
/* 80031444 0002D0A4  40 82 00 18 */	bne lbl_8003145C
/* 80031448 0002D0A8  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8003144C 0002D0AC  FC 00 00 1E */	fctiwz f0, f0
/* 80031450 0002D0B0  D8 01 00 88 */	stfd f0, 0x88(r1)
/* 80031454 0002D0B4  80 61 00 8C */	lwz r3, 0x8c(r1)
/* 80031458 0002D0B8  48 00 00 0C */	b lbl_80031464
lbl_8003145C:
/* 8003145C 0002D0BC  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031460 0002D0C0  48 1F C8 D5 */	bl func_8022DD34
lbl_80031464:
/* 80031464 0002D0C4  7C 65 1B 78 */	mr r5, r3
lbl_80031468:
/* 80031468 0002D0C8  7F E3 FB 78 */	mr r3, r31
/* 8003146C 0002D0CC  7F 84 E3 78 */	mr r4, r28
/* 80031470 0002D0D0  48 01 67 6D */	bl func_80047BDC
/* 80031474 0002D0D4  2C 03 00 00 */	cmpwi r3, 0
/* 80031478 0002D0D8  41 82 00 90 */	beq lbl_80031508
/* 8003147C 0002D0DC  38 00 00 01 */	li r0, 1
/* 80031480 0002D0E0  B0 1E 00 00 */	sth r0, 0(r30)
/* 80031484 0002D0E4  90 1E 00 04 */	stw r0, 4(r30)
/* 80031488 0002D0E8  48 00 00 80 */	b lbl_80031508
/* 8003148C 0002D0EC  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031490 0002D0F0  2C 00 00 01 */	cmpwi r0, 1
/* 80031494 0002D0F4  40 82 00 0C */	bne lbl_800314A0
/* 80031498 0002D0F8  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8003149C 0002D0FC  48 00 00 28 */	b lbl_800314C4
lbl_800314A0:
/* 800314A0 0002D100  2C 00 00 02 */	cmpwi r0, 2
/* 800314A4 0002D104  40 82 00 18 */	bne lbl_800314BC
/* 800314A8 0002D108  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 800314AC 0002D10C  FC 00 00 1E */	fctiwz f0, f0
/* 800314B0 0002D110  D8 01 00 88 */	stfd f0, 0x88(r1)
/* 800314B4 0002D114  80 61 00 8C */	lwz r3, 0x8c(r1)
/* 800314B8 0002D118  48 00 00 0C */	b lbl_800314C4
lbl_800314BC:
/* 800314BC 0002D11C  38 7D 00 08 */	addi r3, r29, 8
/* 800314C0 0002D120  48 1F C8 75 */	bl func_8022DD34
lbl_800314C4:
/* 800314C4 0002D124  90 7F 00 20 */	stw r3, 0x20(r31)
/* 800314C8 0002D128  48 00 00 40 */	b lbl_80031508
/* 800314CC 0002D12C  38 00 00 00 */	li r0, 0
/* 800314D0 0002D130  B0 1E 00 02 */	sth r0, 2(r30)
/* 800314D4 0002D134  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 800314D8 0002D138  2C 00 00 00 */	cmpwi r0, 0
/* 800314DC 0002D13C  90 1E 00 04 */	stw r0, 4(r30)
/* 800314E0 0002D140  41 82 00 10 */	beq lbl_800314F0
/* 800314E4 0002D144  38 00 00 21 */	li r0, 0x21
/* 800314E8 0002D148  B0 1E 00 00 */	sth r0, 0(r30)
/* 800314EC 0002D14C  48 00 00 1C */	b lbl_80031508
lbl_800314F0:
/* 800314F0 0002D150  38 00 00 01 */	li r0, 1
/* 800314F4 0002D154  B0 1E 00 00 */	sth r0, 0(r30)
/* 800314F8 0002D158  48 00 00 10 */	b lbl_80031508
/* 800314FC 0002D15C  80 1F 00 00 */	lwz r0, 0(r31)
/* 80031500 0002D160  60 00 00 20 */	ori r0, r0, 0x20
/* 80031504 0002D164  90 1F 00 00 */	stw r0, 0(r31)
lbl_80031508:
/* 80031508 0002D168  38 60 00 01 */	li r3, 1
lbl_8003150C:
/* 8003150C 0002D16C  39 61 00 B0 */	addi r11, r1, 0xb0
/* 80031510 0002D170  48 19 5C 65 */	bl _restgpr_27
/* 80031514 0002D174  80 01 00 B4 */	lwz r0, 0xb4(r1)
/* 80031518 0002D178  7C 08 03 A6 */	mtlr r0
/* 8003151C 0002D17C  38 21 00 B0 */	addi r1, r1, 0xb0
/* 80031520 0002D180  4E 80 00 20 */	blr

.global func_80031524
func_80031524:
/* 80031524 0002D184  38 A0 00 01 */	li r5, 1
/* 80031528 0002D188  38 6D 97 60 */	addi r3, r13, lbl_8063EA20-_SDA_BASE_
/* 8003152C 0002D18C  38 80 00 04 */	li r4, 4
/* 80031530 0002D190  38 00 00 00 */	li r0, 0
/* 80031534 0002D194  98 AD 97 60 */	stb r5, lbl_8063EA20-_SDA_BASE_(r13)
/* 80031538 0002D198  B0 83 00 02 */	sth r4, 2(r3)
/* 8003153C 0002D19C  98 03 00 04 */	stb r0, 4(r3)
/* 80031540 0002D1A0  4E 80 00 20 */	blr

.global lbl_80031544
lbl_80031544:
/* 80031544 0002D1A4  94 21 FF 40 */	stwu r1, -0xc0(r1)
/* 80031548 0002D1A8  7C 08 02 A6 */	mflr r0
/* 8003154C 0002D1AC  90 01 00 C4 */	stw r0, 0xc4(r1)
/* 80031550 0002D1B0  DB E1 00 B0 */	stfd f31, 0xb0(r1)
/* 80031554 0002D1B4  F3 E1 00 B8 */	psq_st f31, 184(r1), 0, qr0
/* 80031558 0002D1B8  39 61 00 B0 */	addi r11, r1, 0xb0
/* 8003155C 0002D1BC  48 19 5B C9 */	bl _savegpr_26
/* 80031560 0002D1C0  7C 7A 1B 78 */	mr r26, r3
/* 80031564 0002D1C4  7C 9B 23 78 */	mr r27, r4
/* 80031568 0002D1C8  7C BD 2B 78 */	mr r29, r5
/* 8003156C 0002D1CC  7C DE 33 78 */	mr r30, r6
/* 80031570 0002D1D0  3B E0 00 00 */	li r31, 0
/* 80031574 0002D1D4  48 01 C2 99 */	bl func_8004D80C
/* 80031578 0002D1D8  38 00 00 00 */	li r0, 0
/* 8003157C 0002D1DC  2C 03 00 00 */	cmpwi r3, 0
/* 80031580 0002D1E0  90 01 00 40 */	stw r0, 0x40(r1)
/* 80031584 0002D1E4  7C 7C 1B 78 */	mr r28, r3
/* 80031588 0002D1E8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8003158C 0002D1EC  90 01 00 48 */	stw r0, 0x48(r1)
/* 80031590 0002D1F0  40 82 00 0C */	bne lbl_8003159C
/* 80031594 0002D1F4  38 60 00 01 */	li r3, 1
/* 80031598 0002D1F8  48 00 0C 0C */	b lbl_800321A4
lbl_8003159C:
/* 8003159C 0002D1FC  2C 1B 00 01 */	cmpwi r27, 1
/* 800315A0 0002D200  41 82 00 20 */	beq lbl_800315C0
/* 800315A4 0002D204  80 9D 00 04 */	lwz r4, 4(r29)
/* 800315A8 0002D208  48 01 C8 81 */	bl func_8004DE28
/* 800315AC 0002D20C  2C 03 00 00 */	cmpwi r3, 0
/* 800315B0 0002D210  7C 7F 1B 78 */	mr r31, r3
/* 800315B4 0002D214  40 82 00 0C */	bne lbl_800315C0
/* 800315B8 0002D218  38 60 00 01 */	li r3, 1
/* 800315BC 0002D21C  48 00 0B E8 */	b lbl_800321A4
lbl_800315C0:
/* 800315C0 0002D220  28 1B 00 28 */	cmplwi r27, 0x28
/* 800315C4 0002D224  41 81 0B DC */	bgt lbl_800321A0
/* 800315C8 0002D228  3C 60 80 41 */	lis r3, lbl_8040A0F0@ha
/* 800315CC 0002D22C  57 60 10 3A */	slwi r0, r27, 2
/* 800315D0 0002D230  38 63 A0 F0 */	addi r3, r3, lbl_8040A0F0@l
/* 800315D4 0002D234  7C 63 00 2E */	lwzx r3, r3, r0
/* 800315D8 0002D238  7C 69 03 A6 */	mtctr r3
/* 800315DC 0002D23C  4E 80 04 20 */	bctr
/* 800315E0 0002D240  38 60 00 2D */	li r3, 0x2d
/* 800315E4 0002D244  38 00 00 01 */	li r0, 1
/* 800315E8 0002D248  B0 7E 00 00 */	sth r3, 0(r30)
/* 800315EC 0002D24C  7F 83 E3 78 */	mr r3, r28
/* 800315F0 0002D250  B0 1E 00 02 */	sth r0, 2(r30)
/* 800315F4 0002D254  48 01 C6 5D */	bl func_8004DC50
/* 800315F8 0002D258  80 03 00 50 */	lwz r0, 0x50(r3)
/* 800315FC 0002D25C  90 1E 00 04 */	stw r0, 4(r30)
/* 80031600 0002D260  48 00 0B A0 */	b lbl_800321A0
/* 80031604 0002D264  2C 1F 00 00 */	cmpwi r31, 0
/* 80031608 0002D268  41 82 0B 98 */	beq lbl_800321A0
/* 8003160C 0002D26C  7F 83 E3 78 */	mr r3, r28
/* 80031610 0002D270  7F E4 FB 78 */	mr r4, r31
/* 80031614 0002D274  48 01 C6 99 */	bl func_8004DCAC
/* 80031618 0002D278  38 00 00 00 */	li r0, 0
/* 8003161C 0002D27C  B0 1D 00 02 */	sth r0, 2(r29)
/* 80031620 0002D280  90 1D 00 04 */	stw r0, 4(r29)
/* 80031624 0002D284  48 00 0B 7C */	b lbl_800321A0
/* 80031628 0002D288  38 60 01 00 */	li r3, 0x100
/* 8003162C 0002D28C  48 1A 97 39 */	bl func_801DAD64
/* 80031630 0002D290  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031634 0002D294  7C 7C 1B 78 */	mr r28, r3
/* 80031638 0002D298  2C 00 00 03 */	cmpwi r0, 3
/* 8003163C 0002D29C  40 82 00 0C */	bne lbl_80031648
/* 80031640 0002D2A0  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 80031644 0002D2A4  48 00 00 10 */	b lbl_80031654
lbl_80031648:
/* 80031648 0002D2A8  7F 84 E3 78 */	mr r4, r28
/* 8003164C 0002D2AC  38 7D 00 08 */	addi r3, r29, 8
/* 80031650 0002D2B0  4B FF 6D 61 */	bl func_800283B0
lbl_80031654:
/* 80031654 0002D2B4  7C 64 1B 78 */	mr r4, r3
/* 80031658 0002D2B8  7F E3 FB 78 */	mr r3, r31
/* 8003165C 0002D2BC  48 01 C9 E9 */	bl func_8004E044
/* 80031660 0002D2C0  2C 03 00 00 */	cmpwi r3, 0
/* 80031664 0002D2C4  41 82 00 14 */	beq lbl_80031678
/* 80031668 0002D2C8  38 00 00 01 */	li r0, 1
/* 8003166C 0002D2CC  B0 1E 00 00 */	sth r0, 0(r30)
/* 80031670 0002D2D0  90 1E 00 04 */	stw r0, 4(r30)
/* 80031674 0002D2D4  48 00 00 14 */	b lbl_80031688
lbl_80031678:
/* 80031678 0002D2D8  38 60 00 01 */	li r3, 1
/* 8003167C 0002D2DC  38 00 00 00 */	li r0, 0
/* 80031680 0002D2E0  B0 7E 00 00 */	sth r3, 0(r30)
/* 80031684 0002D2E4  90 1E 00 04 */	stw r0, 4(r30)
lbl_80031688:
/* 80031688 0002D2E8  7F 83 E3 78 */	mr r3, r28
/* 8003168C 0002D2EC  48 1A 98 19 */	bl func_801DAEA4
/* 80031690 0002D2F0  48 00 0B 10 */	b lbl_800321A0
/* 80031694 0002D2F4  A8 9D 00 08 */	lha r4, 8(r29)
/* 80031698 0002D2F8  38 60 00 0A */	li r3, 0xa
/* 8003169C 0002D2FC  80 1F 00 50 */	lwz r0, 0x50(r31)
/* 800316A0 0002D300  2C 04 00 01 */	cmpwi r4, 1
/* 800316A4 0002D304  90 61 00 40 */	stw r3, 0x40(r1)
/* 800316A8 0002D308  90 01 00 44 */	stw r0, 0x44(r1)
/* 800316AC 0002D30C  40 82 00 0C */	bne lbl_800316B8
/* 800316B0 0002D310  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 800316B4 0002D314  48 00 00 28 */	b lbl_800316DC
lbl_800316B8:
/* 800316B8 0002D318  2C 04 00 02 */	cmpwi r4, 2
/* 800316BC 0002D31C  40 82 00 18 */	bne lbl_800316D4
/* 800316C0 0002D320  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 800316C4 0002D324  FC 00 00 1E */	fctiwz f0, f0
/* 800316C8 0002D328  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 800316CC 0002D32C  80 61 00 94 */	lwz r3, 0x94(r1)
/* 800316D0 0002D330  48 00 00 0C */	b lbl_800316DC
lbl_800316D4:
/* 800316D4 0002D334  38 7D 00 08 */	addi r3, r29, 8
/* 800316D8 0002D338  48 1F C6 5D */	bl func_8022DD34
lbl_800316DC:
/* 800316DC 0002D33C  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 800316E0 0002D340  90 61 00 48 */	stw r3, 0x48(r1)
/* 800316E4 0002D344  2C 00 00 01 */	cmpwi r0, 1
/* 800316E8 0002D348  40 82 00 0C */	bne lbl_800316F4
/* 800316EC 0002D34C  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 800316F0 0002D350  48 00 00 28 */	b lbl_80031718
lbl_800316F4:
/* 800316F4 0002D354  2C 00 00 02 */	cmpwi r0, 2
/* 800316F8 0002D358  40 82 00 18 */	bne lbl_80031710
/* 800316FC 0002D35C  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 80031700 0002D360  FC 00 00 1E */	fctiwz f0, f0
/* 80031704 0002D364  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031708 0002D368  80 61 00 94 */	lwz r3, 0x94(r1)
/* 8003170C 0002D36C  48 00 00 0C */	b lbl_80031718
lbl_80031710:
/* 80031710 0002D370  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031714 0002D374  48 1F C6 21 */	bl func_8022DD34
lbl_80031718:
/* 80031718 0002D378  81 0D 97 00 */	lwz r8, lbl_8063E9C0-_SDA_BASE_(r13)
/* 8003171C 0002D37C  90 61 00 4C */	stw r3, 0x4c(r1)
/* 80031720 0002D380  80 E8 00 08 */	lwz r7, 8(r8)
/* 80031724 0002D384  80 88 00 00 */	lwz r4, 0(r8)
/* 80031728 0002D388  38 C7 00 01 */	addi r6, r7, 1
/* 8003172C 0002D38C  80 08 00 04 */	lwz r0, 4(r8)
/* 80031730 0002D390  6C 85 80 00 */	xoris r5, r4, 0x8000
/* 80031734 0002D394  7C 84 30 50 */	subf r4, r4, r6
/* 80031738 0002D398  7C 84 28 14 */	addc r4, r4, r5
/* 8003173C 0002D39C  7C 84 21 10 */	subfe r4, r4, r4
/* 80031740 0002D3A0  7C C6 20 78 */	andc r6, r6, r4
/* 80031744 0002D3A4  7C 06 00 00 */	cmpw r6, r0
/* 80031748 0002D3A8  41 82 00 50 */	beq lbl_80031798
/* 8003174C 0002D3AC  80 A8 00 0C */	lwz r5, 0xc(r8)
/* 80031750 0002D3B0  54 E0 28 34 */	slwi r0, r7, 5
/* 80031754 0002D3B4  80 81 00 40 */	lwz r4, 0x40(r1)
/* 80031758 0002D3B8  7C A5 02 14 */	add r5, r5, r0
/* 8003175C 0002D3BC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80031760 0002D3C0  90 85 00 00 */	stw r4, 0(r5)
/* 80031764 0002D3C4  80 81 00 48 */	lwz r4, 0x48(r1)
/* 80031768 0002D3C8  90 05 00 04 */	stw r0, 4(r5)
/* 8003176C 0002D3CC  80 01 00 50 */	lwz r0, 0x50(r1)
/* 80031770 0002D3D0  90 85 00 08 */	stw r4, 8(r5)
/* 80031774 0002D3D4  80 81 00 54 */	lwz r4, 0x54(r1)
/* 80031778 0002D3D8  90 65 00 0C */	stw r3, 0xc(r5)
/* 8003177C 0002D3DC  80 61 00 58 */	lwz r3, 0x58(r1)
/* 80031780 0002D3E0  90 05 00 10 */	stw r0, 0x10(r5)
/* 80031784 0002D3E4  80 01 00 5C */	lwz r0, 0x5c(r1)
/* 80031788 0002D3E8  90 85 00 14 */	stw r4, 0x14(r5)
/* 8003178C 0002D3EC  90 65 00 18 */	stw r3, 0x18(r5)
/* 80031790 0002D3F0  90 05 00 1C */	stw r0, 0x1c(r5)
/* 80031794 0002D3F4  90 C8 00 08 */	stw r6, 8(r8)
lbl_80031798:
/* 80031798 0002D3F8  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 8003179C 0002D3FC  38 00 00 01 */	li r0, 1
/* 800317A0 0002D400  60 63 00 20 */	ori r3, r3, 0x20
/* 800317A4 0002D404  90 7F 00 34 */	stw r3, 0x34(r31)
/* 800317A8 0002D408  B0 1E 00 00 */	sth r0, 0(r30)
/* 800317AC 0002D40C  90 1E 00 04 */	stw r0, 4(r30)
/* 800317B0 0002D410  48 00 09 F0 */	b lbl_800321A0
/* 800317B4 0002D414  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 800317B8 0002D418  54 00 06 B5 */	rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 800317BC 0002D41C  41 82 00 14 */	beq lbl_800317D0
/* 800317C0 0002D420  38 00 00 01 */	li r0, 1
/* 800317C4 0002D424  B0 1E 00 00 */	sth r0, 0(r30)
/* 800317C8 0002D428  90 1E 00 04 */	stw r0, 4(r30)
/* 800317CC 0002D42C  48 00 09 D4 */	b lbl_800321A0
lbl_800317D0:
/* 800317D0 0002D430  38 60 00 01 */	li r3, 1
/* 800317D4 0002D434  38 00 00 00 */	li r0, 0
/* 800317D8 0002D438  B0 7E 00 00 */	sth r3, 0(r30)
/* 800317DC 0002D43C  90 1E 00 04 */	stw r0, 4(r30)
/* 800317E0 0002D440  48 00 09 C0 */	b lbl_800321A0
/* 800317E4 0002D444  38 60 00 01 */	li r3, 1
/* 800317E8 0002D448  38 00 00 00 */	li r0, 0
/* 800317EC 0002D44C  B0 7E 00 00 */	sth r3, 0(r30)
/* 800317F0 0002D450  90 1E 00 04 */	stw r0, 4(r30)
/* 800317F4 0002D454  A8 1D 00 08 */	lha r0, 8(r29)
/* 800317F8 0002D458  2C 80 00 01 */	cmpwi cr1, r0, 1
/* 800317FC 0002D45C  40 86 09 A4 */	bne cr1, lbl_800321A0
/* 80031800 0002D460  83 8D 96 F0 */	lwz r28, lbl_8063E9B0-_SDA_BASE_(r13)
/* 80031804 0002D464  2C 1C 00 00 */	cmpwi r28, 0
/* 80031808 0002D468  41 82 09 98 */	beq lbl_800321A0
/* 8003180C 0002D46C  40 86 00 0C */	bne cr1, lbl_80031818
/* 80031810 0002D470  83 BD 00 0C */	lwz r29, 0xc(r29)
/* 80031814 0002D474  48 00 00 2C */	b lbl_80031840
lbl_80031818:
/* 80031818 0002D478  2C 00 00 02 */	cmpwi r0, 2
/* 8003181C 0002D47C  40 82 00 18 */	bne lbl_80031834
/* 80031820 0002D480  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 80031824 0002D484  FC 00 00 1E */	fctiwz f0, f0
/* 80031828 0002D488  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 8003182C 0002D48C  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031830 0002D490  48 00 00 0C */	b lbl_8003183C
lbl_80031834:
/* 80031834 0002D494  38 7D 00 08 */	addi r3, r29, 8
/* 80031838 0002D498  48 1F C4 FD */	bl func_8022DD34
lbl_8003183C:
/* 8003183C 0002D49C  7C 7D 1B 78 */	mr r29, r3
lbl_80031840:
/* 80031840 0002D4A0  7F 83 E3 78 */	mr r3, r28
/* 80031844 0002D4A4  4B FF 3B 25 */	bl func_80025368
/* 80031848 0002D4A8  7C 64 1B 78 */	mr r4, r3
/* 8003184C 0002D4AC  7F E3 FB 78 */	mr r3, r31
/* 80031850 0002D4B0  7F A5 EB 78 */	mr r5, r29
/* 80031854 0002D4B4  38 C0 00 00 */	li r6, 0
/* 80031858 0002D4B8  48 01 C9 DD */	bl func_8004E234
/* 8003185C 0002D4BC  2C 03 00 00 */	cmpwi r3, 0
/* 80031860 0002D4C0  41 82 09 40 */	beq lbl_800321A0
/* 80031864 0002D4C4  38 00 00 01 */	li r0, 1
/* 80031868 0002D4C8  B0 1E 00 00 */	sth r0, 0(r30)
/* 8003186C 0002D4CC  90 1E 00 04 */	stw r0, 4(r30)
/* 80031870 0002D4D0  48 00 09 30 */	b lbl_800321A0
/* 80031874 0002D4D4  38 60 00 01 */	li r3, 1
/* 80031878 0002D4D8  38 00 00 00 */	li r0, 0
/* 8003187C 0002D4DC  B0 7E 00 00 */	sth r3, 0(r30)
/* 80031880 0002D4E0  90 1E 00 04 */	stw r0, 4(r30)
/* 80031884 0002D4E4  A8 7D 00 08 */	lha r3, 8(r29)
/* 80031888 0002D4E8  2C 83 00 01 */	cmpwi cr1, r3, 1
/* 8003188C 0002D4EC  40 86 09 14 */	bne cr1, lbl_800321A0
/* 80031890 0002D4F0  80 0D 96 F0 */	lwz r0, lbl_8063E9B0-_SDA_BASE_(r13)
/* 80031894 0002D4F4  2C 00 00 00 */	cmpwi r0, 0
/* 80031898 0002D4F8  41 82 09 08 */	beq lbl_800321A0
/* 8003189C 0002D4FC  40 86 00 0C */	bne cr1, lbl_800318A8
/* 800318A0 0002D500  83 9D 00 0C */	lwz r28, 0xc(r29)
/* 800318A4 0002D504  48 00 00 2C */	b lbl_800318D0
lbl_800318A8:
/* 800318A8 0002D508  2C 03 00 02 */	cmpwi r3, 2
/* 800318AC 0002D50C  40 82 00 18 */	bne lbl_800318C4
/* 800318B0 0002D510  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 800318B4 0002D514  FC 00 00 1E */	fctiwz f0, f0
/* 800318B8 0002D518  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 800318BC 0002D51C  80 61 00 94 */	lwz r3, 0x94(r1)
/* 800318C0 0002D520  48 00 00 0C */	b lbl_800318CC
lbl_800318C4:
/* 800318C4 0002D524  38 7D 00 08 */	addi r3, r29, 8
/* 800318C8 0002D528  48 1F C4 6D */	bl func_8022DD34
lbl_800318CC:
/* 800318CC 0002D52C  7C 7C 1B 78 */	mr r28, r3
lbl_800318D0:
/* 800318D0 0002D530  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 800318D4 0002D534  2C 00 00 01 */	cmpwi r0, 1
/* 800318D8 0002D538  40 82 00 0C */	bne lbl_800318E4
/* 800318DC 0002D53C  80 BD 00 14 */	lwz r5, 0x14(r29)
/* 800318E0 0002D540  48 00 00 2C */	b lbl_8003190C
lbl_800318E4:
/* 800318E4 0002D544  2C 00 00 02 */	cmpwi r0, 2
/* 800318E8 0002D548  40 82 00 18 */	bne lbl_80031900
/* 800318EC 0002D54C  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 800318F0 0002D550  FC 00 00 1E */	fctiwz f0, f0
/* 800318F4 0002D554  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 800318F8 0002D558  80 61 00 94 */	lwz r3, 0x94(r1)
/* 800318FC 0002D55C  48 00 00 0C */	b lbl_80031908
lbl_80031900:
/* 80031900 0002D560  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031904 0002D564  48 1F C4 31 */	bl func_8022DD34
lbl_80031908:
/* 80031908 0002D568  7C 65 1B 78 */	mr r5, r3
lbl_8003190C:
/* 8003190C 0002D56C  7F E3 FB 78 */	mr r3, r31
/* 80031910 0002D570  7F 84 E3 78 */	mr r4, r28
/* 80031914 0002D574  38 C0 00 00 */	li r6, 0
/* 80031918 0002D578  48 01 C9 1D */	bl func_8004E234
/* 8003191C 0002D57C  2C 03 00 00 */	cmpwi r3, 0
/* 80031920 0002D580  41 82 08 80 */	beq lbl_800321A0
/* 80031924 0002D584  38 00 00 01 */	li r0, 1
/* 80031928 0002D588  B0 1E 00 00 */	sth r0, 0(r30)
/* 8003192C 0002D58C  90 1E 00 04 */	stw r0, 4(r30)
/* 80031930 0002D590  48 00 08 70 */	b lbl_800321A0
/* 80031934 0002D594  7F E3 FB 78 */	mr r3, r31
/* 80031938 0002D598  48 01 C6 41 */	bl func_8004DF78
/* 8003193C 0002D59C  48 00 08 64 */	b lbl_800321A0
/* 80031940 0002D5A0  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031944 0002D5A4  2C 00 00 04 */	cmpwi r0, 4
/* 80031948 0002D5A8  40 82 00 0C */	bne lbl_80031954
/* 8003194C 0002D5AC  80 BD 00 0C */	lwz r5, 0xc(r29)
/* 80031950 0002D5B0  48 00 00 10 */	b lbl_80031960
lbl_80031954:
/* 80031954 0002D5B4  38 7D 00 08 */	addi r3, r29, 8
/* 80031958 0002D5B8  4B FF 69 89 */	bl func_800282E0
/* 8003195C 0002D5BC  7C 65 1B 78 */	mr r5, r3
lbl_80031960:
/* 80031960 0002D5C0  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 80031964 0002D5C4  2C 03 00 00 */	cmpwi r3, 0
/* 80031968 0002D5C8  41 82 08 38 */	beq lbl_800321A0
/* 8003196C 0002D5CC  C0 05 00 00 */	lfs f0, 0(r5)
/* 80031970 0002D5D0  38 80 00 01 */	li r4, 1
/* 80031974 0002D5D4  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80031978 0002D5D8  C0 05 00 04 */	lfs f0, 4(r5)
/* 8003197C 0002D5DC  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 80031980 0002D5E0  C0 05 00 08 */	lfs f0, 8(r5)
/* 80031984 0002D5E4  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80031988 0002D5E8  48 1C 0D 31 */	bl func_801F26B8
/* 8003198C 0002D5EC  48 00 08 14 */	b lbl_800321A0
/* 80031990 0002D5F0  7F E4 FB 78 */	mr r4, r31
/* 80031994 0002D5F4  38 61 00 28 */	addi r3, r1, 0x28
/* 80031998 0002D5F8  48 01 CB 6D */	bl func_8004E504
/* 8003199C 0002D5FC  C0 41 00 28 */	lfs f2, 0x28(r1)
/* 800319A0 0002D600  38 00 00 04 */	li r0, 4
/* 800319A4 0002D604  C0 21 00 2C */	lfs f1, 0x2c(r1)
/* 800319A8 0002D608  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 800319AC 0002D60C  D0 41 00 34 */	stfs f2, 0x34(r1)
/* 800319B0 0002D610  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 800319B4 0002D614  D0 01 00 3C */	stfs f0, 0x3c(r1)
/* 800319B8 0002D618  80 7A 09 14 */	lwz r3, 0x914(r26)
/* 800319BC 0002D61C  D0 43 01 38 */	stfs f2, 0x138(r3)
/* 800319C0 0002D620  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 800319C4 0002D624  D0 03 01 3C */	stfs f0, 0x13c(r3)
/* 800319C8 0002D628  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 800319CC 0002D62C  D0 03 01 40 */	stfs f0, 0x140(r3)
/* 800319D0 0002D630  80 9A 09 14 */	lwz r4, 0x914(r26)
/* 800319D4 0002D634  38 64 01 38 */	addi r3, r4, 0x138
/* 800319D8 0002D638  90 64 00 14 */	stw r3, 0x14(r4)
/* 800319DC 0002D63C  80 7A 09 14 */	lwz r3, 0x914(r26)
/* 800319E0 0002D640  B0 03 00 10 */	sth r0, 0x10(r3)
/* 800319E4 0002D644  48 00 07 BC */	b lbl_800321A0
/* 800319E8 0002D648  A8 1D 00 08 */	lha r0, 8(r29)
/* 800319EC 0002D64C  2C 00 00 04 */	cmpwi r0, 4
/* 800319F0 0002D650  40 82 00 0C */	bne lbl_800319FC
/* 800319F4 0002D654  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 800319F8 0002D658  48 00 00 0C */	b lbl_80031A04
lbl_800319FC:
/* 800319FC 0002D65C  38 7D 00 08 */	addi r3, r29, 8
/* 80031A00 0002D660  4B FF 68 E1 */	bl func_800282E0
lbl_80031A04:
/* 80031A04 0002D664  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80031A08 0002D668  7C 7C 1B 78 */	mr r28, r3
/* 80031A0C 0002D66C  2C 00 00 01 */	cmpwi r0, 1
/* 80031A10 0002D670  40 82 00 28 */	bne lbl_80031A38
/* 80031A14 0002D674  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 80031A18 0002D678  3C 00 43 30 */	lis r0, 0x4330
/* 80031A1C 0002D67C  90 01 00 90 */	stw r0, 0x90(r1)
/* 80031A20 0002D680  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80031A24 0002D684  C8 22 81 A0 */	lfd f1, lbl_806407A0-_SDA2_BASE_(r2)
/* 80031A28 0002D688  90 01 00 94 */	stw r0, 0x94(r1)
/* 80031A2C 0002D68C  C8 01 00 90 */	lfd f0, 0x90(r1)
/* 80031A30 0002D690  EF E0 08 28 */	fsubs f31, f0, f1
/* 80031A34 0002D694  48 00 00 20 */	b lbl_80031A54
lbl_80031A38:
/* 80031A38 0002D698  2C 00 00 02 */	cmpwi r0, 2
/* 80031A3C 0002D69C  40 82 00 0C */	bne lbl_80031A48
/* 80031A40 0002D6A0  C0 3D 00 14 */	lfs f1, 0x14(r29)
/* 80031A44 0002D6A4  48 00 00 0C */	b lbl_80031A50
lbl_80031A48:
/* 80031A48 0002D6A8  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031A4C 0002D6AC  48 1F C3 2D */	bl func_8022DD78
lbl_80031A50:
/* 80031A50 0002D6B0  FF E0 08 90 */	fmr f31, f1
lbl_80031A54:
/* 80031A54 0002D6B4  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 80031A58 0002D6B8  2C 00 00 01 */	cmpwi r0, 1
/* 80031A5C 0002D6BC  40 82 00 0C */	bne lbl_80031A68
/* 80031A60 0002D6C0  80 BD 00 1C */	lwz r5, 0x1c(r29)
/* 80031A64 0002D6C4  48 00 00 2C */	b lbl_80031A90
lbl_80031A68:
/* 80031A68 0002D6C8  2C 00 00 02 */	cmpwi r0, 2
/* 80031A6C 0002D6CC  40 82 00 18 */	bne lbl_80031A84
/* 80031A70 0002D6D0  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 80031A74 0002D6D4  FC 00 00 1E */	fctiwz f0, f0
/* 80031A78 0002D6D8  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031A7C 0002D6DC  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031A80 0002D6E0  48 00 00 0C */	b lbl_80031A8C
lbl_80031A84:
/* 80031A84 0002D6E4  38 7D 00 18 */	addi r3, r29, 0x18
/* 80031A88 0002D6E8  48 1F C2 AD */	bl func_8022DD34
lbl_80031A8C:
/* 80031A8C 0002D6EC  7C 65 1B 78 */	mr r5, r3
lbl_80031A90:
/* 80031A90 0002D6F0  FC 20 F8 90 */	fmr f1, f31
/* 80031A94 0002D6F4  7F E3 FB 78 */	mr r3, r31
/* 80031A98 0002D6F8  7F 84 E3 78 */	mr r4, r28
/* 80031A9C 0002D6FC  48 01 CA A5 */	bl func_8004E540
/* 80031AA0 0002D700  48 00 07 00 */	b lbl_800321A0
/* 80031AA4 0002D704  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031AA8 0002D708  2C 00 00 04 */	cmpwi r0, 4
/* 80031AAC 0002D70C  40 82 00 0C */	bne lbl_80031AB8
/* 80031AB0 0002D710  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 80031AB4 0002D714  48 00 00 0C */	b lbl_80031AC0
lbl_80031AB8:
/* 80031AB8 0002D718  38 7D 00 08 */	addi r3, r29, 8
/* 80031ABC 0002D71C  4B FF 68 25 */	bl func_800282E0
lbl_80031AC0:
/* 80031AC0 0002D720  C0 23 00 00 */	lfs f1, 0(r3)
/* 80031AC4 0002D724  C0 02 81 88 */	lfs f0, lbl_80640788-_SDA2_BASE_(r2)
/* 80031AC8 0002D728  D0 21 00 34 */	stfs f1, 0x34(r1)
/* 80031ACC 0002D72C  EC 40 00 72 */	fmuls f2, f0, f1
/* 80031AD0 0002D730  C0 23 00 04 */	lfs f1, 4(r3)
/* 80031AD4 0002D734  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 80031AD8 0002D738  EC 20 00 72 */	fmuls f1, f0, f1
/* 80031ADC 0002D73C  C0 63 00 08 */	lfs f3, 8(r3)
/* 80031AE0 0002D740  EC 00 00 F2 */	fmuls f0, f0, f3
/* 80031AE4 0002D744  D0 41 00 34 */	stfs f2, 0x34(r1)
/* 80031AE8 0002D748  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 80031AEC 0002D74C  D0 01 00 3C */	stfs f0, 0x3c(r1)
/* 80031AF0 0002D750  80 1F 00 40 */	lwz r0, 0x40(r31)
/* 80031AF4 0002D754  2C 00 00 00 */	cmpwi r0, 0
/* 80031AF8 0002D758  41 82 06 A8 */	beq lbl_800321A0
/* 80031AFC 0002D75C  38 61 00 18 */	addi r3, r1, 0x18
/* 80031B00 0002D760  38 81 00 34 */	addi r4, r1, 0x34
/* 80031B04 0002D764  48 1F 1B BD */	bl func_802236C0
/* 80031B08 0002D768  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 80031B0C 0002D76C  38 80 00 01 */	li r4, 1
/* 80031B10 0002D770  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 80031B14 0002D774  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80031B18 0002D778  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 80031B1C 0002D77C  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80031B20 0002D780  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80031B24 0002D784  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80031B28 0002D788  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 80031B2C 0002D78C  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80031B30 0002D790  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80031B34 0002D794  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80031B38 0002D798  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80031B3C 0002D79C  48 1C 0B 7D */	bl func_801F26B8
/* 80031B40 0002D7A0  48 00 06 60 */	b lbl_800321A0
/* 80031B44 0002D7A4  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031B48 0002D7A8  2C 00 00 04 */	cmpwi r0, 4
/* 80031B4C 0002D7AC  40 82 00 0C */	bne lbl_80031B58
/* 80031B50 0002D7B0  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 80031B54 0002D7B4  48 00 00 0C */	b lbl_80031B60
lbl_80031B58:
/* 80031B58 0002D7B8  38 7D 00 08 */	addi r3, r29, 8
/* 80031B5C 0002D7BC  4B FF 67 85 */	bl func_800282E0
lbl_80031B60:
/* 80031B60 0002D7C0  C0 23 00 00 */	lfs f1, 0(r3)
/* 80031B64 0002D7C4  C0 02 81 88 */	lfs f0, lbl_80640788-_SDA2_BASE_(r2)
/* 80031B68 0002D7C8  D0 21 00 34 */	stfs f1, 0x34(r1)
/* 80031B6C 0002D7CC  EC 40 00 72 */	fmuls f2, f0, f1
/* 80031B70 0002D7D0  C0 23 00 04 */	lfs f1, 4(r3)
/* 80031B74 0002D7D4  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 80031B78 0002D7D8  EC 20 00 72 */	fmuls f1, f0, f1
/* 80031B7C 0002D7DC  C0 63 00 08 */	lfs f3, 8(r3)
/* 80031B80 0002D7E0  EC 00 00 F2 */	fmuls f0, f0, f3
/* 80031B84 0002D7E4  D0 41 00 34 */	stfs f2, 0x34(r1)
/* 80031B88 0002D7E8  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 80031B8C 0002D7EC  D0 01 00 3C */	stfs f0, 0x3c(r1)
/* 80031B90 0002D7F0  80 1F 00 40 */	lwz r0, 0x40(r31)
/* 80031B94 0002D7F4  2C 00 00 00 */	cmpwi r0, 0
/* 80031B98 0002D7F8  41 82 06 08 */	beq lbl_800321A0
/* 80031B9C 0002D7FC  38 61 00 60 */	addi r3, r1, 0x60
/* 80031BA0 0002D800  38 81 00 34 */	addi r4, r1, 0x34
/* 80031BA4 0002D804  38 A0 00 05 */	li r5, 5
/* 80031BA8 0002D808  48 1F 18 21 */	bl func_802233C8
/* 80031BAC 0002D80C  38 61 00 08 */	addi r3, r1, 8
/* 80031BB0 0002D810  38 81 00 60 */	addi r4, r1, 0x60
/* 80031BB4 0002D814  48 24 B6 11 */	bl func_8027D1C4
/* 80031BB8 0002D818  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 80031BBC 0002D81C  38 80 00 01 */	li r4, 1
/* 80031BC0 0002D820  C0 01 00 08 */	lfs f0, 8(r1)
/* 80031BC4 0002D824  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80031BC8 0002D828  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 80031BCC 0002D82C  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80031BD0 0002D830  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80031BD4 0002D834  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80031BD8 0002D838  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 80031BDC 0002D83C  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80031BE0 0002D840  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80031BE4 0002D844  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80031BE8 0002D848  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80031BEC 0002D84C  48 1C 0A CD */	bl func_801F26B8
/* 80031BF0 0002D850  48 00 05 B0 */	b lbl_800321A0
/* 80031BF4 0002D854  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031BF8 0002D858  2C 00 00 04 */	cmpwi r0, 4
/* 80031BFC 0002D85C  40 82 00 0C */	bne lbl_80031C08
/* 80031C00 0002D860  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 80031C04 0002D864  48 00 00 0C */	b lbl_80031C10
lbl_80031C08:
/* 80031C08 0002D868  38 7D 00 08 */	addi r3, r29, 8
/* 80031C0C 0002D86C  4B FF 66 D5 */	bl func_800282E0
lbl_80031C10:
/* 80031C10 0002D870  80 9F 00 40 */	lwz r4, 0x40(r31)
/* 80031C14 0002D874  2C 04 00 00 */	cmpwi r4, 0
/* 80031C18 0002D878  41 82 05 88 */	beq lbl_800321A0
/* 80031C1C 0002D87C  C0 03 00 00 */	lfs f0, 0(r3)
/* 80031C20 0002D880  C0 42 81 8C */	lfs f2, lbl_8064078C-_SDA2_BASE_(r2)
/* 80031C24 0002D884  D0 04 00 48 */	stfs f0, 0x48(r4)
/* 80031C28 0002D888  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80031C2C 0002D88C  C0 03 00 04 */	lfs f0, 4(r3)
/* 80031C30 0002D890  D0 04 00 4C */	stfs f0, 0x4c(r4)
/* 80031C34 0002D894  C0 03 00 08 */	lfs f0, 8(r3)
/* 80031C38 0002D898  D0 04 00 50 */	stfs f0, 0x50(r4)
/* 80031C3C 0002D89C  40 80 00 2C */	bge lbl_80031C68
/* 80031C40 0002D8A0  C0 24 00 48 */	lfs f1, 0x48(r4)
/* 80031C44 0002D8A4  C0 62 81 90 */	lfs f3, lbl_80640790-_SDA2_BASE_(r2)
/* 80031C48 0002D8A8  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80031C4C 0002D8AC  40 81 00 1C */	ble lbl_80031C68
/* 80031C50 0002D8B0  C0 02 81 94 */	lfs f0, lbl_80640794-_SDA2_BASE_(r2)
/* 80031C54 0002D8B4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80031C58 0002D8B8  40 80 00 08 */	bge lbl_80031C60
/* 80031C5C 0002D8BC  48 00 00 08 */	b lbl_80031C64
lbl_80031C60:
/* 80031C60 0002D8C0  FC 60 10 90 */	fmr f3, f2
lbl_80031C64:
/* 80031C64 0002D8C4  D0 64 00 48 */	stfs f3, 0x48(r4)
lbl_80031C68:
/* 80031C68 0002D8C8  C0 44 00 4C */	lfs f2, 0x4c(r4)
/* 80031C6C 0002D8CC  C0 22 81 8C */	lfs f1, lbl_8064078C-_SDA2_BASE_(r2)
/* 80031C70 0002D8D0  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80031C74 0002D8D4  40 80 00 28 */	bge lbl_80031C9C
/* 80031C78 0002D8D8  C0 62 81 90 */	lfs f3, lbl_80640790-_SDA2_BASE_(r2)
/* 80031C7C 0002D8DC  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80031C80 0002D8E0  40 81 00 1C */	ble lbl_80031C9C
/* 80031C84 0002D8E4  C0 02 81 94 */	lfs f0, lbl_80640794-_SDA2_BASE_(r2)
/* 80031C88 0002D8E8  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80031C8C 0002D8EC  40 80 00 08 */	bge lbl_80031C94
/* 80031C90 0002D8F0  48 00 00 08 */	b lbl_80031C98
lbl_80031C94:
/* 80031C94 0002D8F4  FC 60 08 90 */	fmr f3, f1
lbl_80031C98:
/* 80031C98 0002D8F8  D0 64 00 4C */	stfs f3, 0x4c(r4)
lbl_80031C9C:
/* 80031C9C 0002D8FC  C0 44 00 50 */	lfs f2, 0x50(r4)
/* 80031CA0 0002D900  C0 22 81 8C */	lfs f1, lbl_8064078C-_SDA2_BASE_(r2)
/* 80031CA4 0002D904  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80031CA8 0002D908  40 80 00 28 */	bge lbl_80031CD0
/* 80031CAC 0002D90C  C0 62 81 90 */	lfs f3, lbl_80640790-_SDA2_BASE_(r2)
/* 80031CB0 0002D910  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80031CB4 0002D914  40 81 00 1C */	ble lbl_80031CD0
/* 80031CB8 0002D918  C0 02 81 94 */	lfs f0, lbl_80640794-_SDA2_BASE_(r2)
/* 80031CBC 0002D91C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80031CC0 0002D920  40 80 00 08 */	bge lbl_80031CC8
/* 80031CC4 0002D924  48 00 00 08 */	b lbl_80031CCC
lbl_80031CC8:
/* 80031CC8 0002D928  FC 60 08 90 */	fmr f3, f1
lbl_80031CCC:
/* 80031CCC 0002D92C  D0 64 00 50 */	stfs f3, 0x50(r4)
lbl_80031CD0:
/* 80031CD0 0002D930  7C 83 23 78 */	mr r3, r4
/* 80031CD4 0002D934  38 80 00 01 */	li r4, 1
/* 80031CD8 0002D938  48 1C 09 E1 */	bl func_801F26B8
/* 80031CDC 0002D93C  48 00 04 C4 */	b lbl_800321A0
/* 80031CE0 0002D940  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031CE4 0002D944  2C 00 00 01 */	cmpwi r0, 1
/* 80031CE8 0002D948  40 82 00 0C */	bne lbl_80031CF4
/* 80031CEC 0002D94C  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 80031CF0 0002D950  48 00 00 2C */	b lbl_80031D1C
lbl_80031CF4:
/* 80031CF4 0002D954  2C 00 00 02 */	cmpwi r0, 2
/* 80031CF8 0002D958  40 82 00 18 */	bne lbl_80031D10
/* 80031CFC 0002D95C  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 80031D00 0002D960  FC 00 00 1E */	fctiwz f0, f0
/* 80031D04 0002D964  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031D08 0002D968  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031D0C 0002D96C  48 00 00 0C */	b lbl_80031D18
lbl_80031D10:
/* 80031D10 0002D970  38 7D 00 08 */	addi r3, r29, 8
/* 80031D14 0002D974  48 1F C0 21 */	bl func_8022DD34
lbl_80031D18:
/* 80031D18 0002D978  7C 64 1B 78 */	mr r4, r3
lbl_80031D1C:
/* 80031D1C 0002D97C  C0 22 81 98 */	lfs f1, lbl_80640798-_SDA2_BASE_(r2)
/* 80031D20 0002D980  7F E3 FB 78 */	mr r3, r31
/* 80031D24 0002D984  48 01 C6 31 */	bl func_8004E354
/* 80031D28 0002D988  48 00 04 78 */	b lbl_800321A0
/* 80031D2C 0002D98C  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031D30 0002D990  2C 00 00 01 */	cmpwi r0, 1
/* 80031D34 0002D994  40 82 00 0C */	bne lbl_80031D40
/* 80031D38 0002D998  83 9D 00 0C */	lwz r28, 0xc(r29)
/* 80031D3C 0002D99C  48 00 00 2C */	b lbl_80031D68
lbl_80031D40:
/* 80031D40 0002D9A0  2C 00 00 02 */	cmpwi r0, 2
/* 80031D44 0002D9A4  40 82 00 18 */	bne lbl_80031D5C
/* 80031D48 0002D9A8  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 80031D4C 0002D9AC  FC 00 00 1E */	fctiwz f0, f0
/* 80031D50 0002D9B0  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031D54 0002D9B4  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031D58 0002D9B8  48 00 00 0C */	b lbl_80031D64
lbl_80031D5C:
/* 80031D5C 0002D9BC  38 7D 00 08 */	addi r3, r29, 8
/* 80031D60 0002D9C0  48 1F BF D5 */	bl func_8022DD34
lbl_80031D64:
/* 80031D64 0002D9C4  7C 7C 1B 78 */	mr r28, r3
lbl_80031D68:
/* 80031D68 0002D9C8  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80031D6C 0002D9CC  2C 00 00 01 */	cmpwi r0, 1
/* 80031D70 0002D9D0  40 82 00 28 */	bne lbl_80031D98
/* 80031D74 0002D9D4  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 80031D78 0002D9D8  3C 00 43 30 */	lis r0, 0x4330
/* 80031D7C 0002D9DC  90 01 00 90 */	stw r0, 0x90(r1)
/* 80031D80 0002D9E0  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80031D84 0002D9E4  C8 22 81 A0 */	lfd f1, lbl_806407A0-_SDA2_BASE_(r2)
/* 80031D88 0002D9E8  90 01 00 94 */	stw r0, 0x94(r1)
/* 80031D8C 0002D9EC  C8 01 00 90 */	lfd f0, 0x90(r1)
/* 80031D90 0002D9F0  EC 20 08 28 */	fsubs f1, f0, f1
/* 80031D94 0002D9F4  48 00 00 1C */	b lbl_80031DB0
lbl_80031D98:
/* 80031D98 0002D9F8  2C 00 00 02 */	cmpwi r0, 2
/* 80031D9C 0002D9FC  40 82 00 0C */	bne lbl_80031DA8
/* 80031DA0 0002DA00  C0 3D 00 14 */	lfs f1, 0x14(r29)
/* 80031DA4 0002DA04  48 00 00 0C */	b lbl_80031DB0
lbl_80031DA8:
/* 80031DA8 0002DA08  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031DAC 0002DA0C  48 1F BF CD */	bl func_8022DD78
lbl_80031DB0:
/* 80031DB0 0002DA10  7F E3 FB 78 */	mr r3, r31
/* 80031DB4 0002DA14  7F 84 E3 78 */	mr r4, r28
/* 80031DB8 0002DA18  48 01 C5 9D */	bl func_8004E354
/* 80031DBC 0002DA1C  48 00 03 E4 */	b lbl_800321A0
/* 80031DC0 0002DA20  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031DC4 0002DA24  2C 00 00 21 */	cmpwi r0, 0x21
/* 80031DC8 0002DA28  40 82 03 D8 */	bne lbl_800321A0
/* 80031DCC 0002DA2C  83 DD 00 0C */	lwz r30, 0xc(r29)
/* 80031DD0 0002DA30  2C 1E 00 00 */	cmpwi r30, 0
/* 80031DD4 0002DA34  41 82 03 CC */	beq lbl_800321A0
/* 80031DD8 0002DA38  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80031DDC 0002DA3C  2C 00 00 01 */	cmpwi r0, 1
/* 80031DE0 0002DA40  40 82 00 0C */	bne lbl_80031DEC
/* 80031DE4 0002DA44  83 9D 00 14 */	lwz r28, 0x14(r29)
/* 80031DE8 0002DA48  48 00 00 2C */	b lbl_80031E14
lbl_80031DEC:
/* 80031DEC 0002DA4C  2C 00 00 02 */	cmpwi r0, 2
/* 80031DF0 0002DA50  40 82 00 18 */	bne lbl_80031E08
/* 80031DF4 0002DA54  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 80031DF8 0002DA58  FC 00 00 1E */	fctiwz f0, f0
/* 80031DFC 0002DA5C  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031E00 0002DA60  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031E04 0002DA64  48 00 00 0C */	b lbl_80031E10
lbl_80031E08:
/* 80031E08 0002DA68  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031E0C 0002DA6C  48 1F BF 29 */	bl func_8022DD34
lbl_80031E10:
/* 80031E10 0002DA70  7C 7C 1B 78 */	mr r28, r3
lbl_80031E14:
/* 80031E14 0002DA74  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 80031E18 0002DA78  2C 00 00 01 */	cmpwi r0, 1
/* 80031E1C 0002DA7C  40 82 00 0C */	bne lbl_80031E28
/* 80031E20 0002DA80  83 BD 00 1C */	lwz r29, 0x1c(r29)
/* 80031E24 0002DA84  48 00 00 2C */	b lbl_80031E50
lbl_80031E28:
/* 80031E28 0002DA88  2C 00 00 02 */	cmpwi r0, 2
/* 80031E2C 0002DA8C  40 82 00 18 */	bne lbl_80031E44
/* 80031E30 0002DA90  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 80031E34 0002DA94  FC 00 00 1E */	fctiwz f0, f0
/* 80031E38 0002DA98  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031E3C 0002DA9C  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031E40 0002DAA0  48 00 00 0C */	b lbl_80031E4C
lbl_80031E44:
/* 80031E44 0002DAA4  38 7D 00 18 */	addi r3, r29, 0x18
/* 80031E48 0002DAA8  48 1F BE ED */	bl func_8022DD34
lbl_80031E4C:
/* 80031E4C 0002DAAC  7C 7D 1B 78 */	mr r29, r3
lbl_80031E50:
/* 80031E50 0002DAB0  7F C3 F3 78 */	mr r3, r30
/* 80031E54 0002DAB4  7F 84 E3 78 */	mr r4, r28
/* 80031E58 0002DAB8  48 00 7A 95 */	bl func_800398EC
/* 80031E5C 0002DABC  7C 64 1B 78 */	mr r4, r3
/* 80031E60 0002DAC0  7F E3 FB 78 */	mr r3, r31
/* 80031E64 0002DAC4  7F A5 EB 78 */	mr r5, r29
/* 80031E68 0002DAC8  48 01 C3 01 */	bl func_8004E168
/* 80031E6C 0002DACC  48 00 03 34 */	b lbl_800321A0
/* 80031E70 0002DAD0  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031E74 0002DAD4  2C 00 00 21 */	cmpwi r0, 0x21
/* 80031E78 0002DAD8  40 82 03 28 */	bne lbl_800321A0
/* 80031E7C 0002DADC  83 DD 00 0C */	lwz r30, 0xc(r29)
/* 80031E80 0002DAE0  2C 1E 00 00 */	cmpwi r30, 0
/* 80031E84 0002DAE4  41 82 03 1C */	beq lbl_800321A0
/* 80031E88 0002DAE8  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80031E8C 0002DAEC  2C 00 00 01 */	cmpwi r0, 1
/* 80031E90 0002DAF0  40 82 00 0C */	bne lbl_80031E9C
/* 80031E94 0002DAF4  83 9D 00 14 */	lwz r28, 0x14(r29)
/* 80031E98 0002DAF8  48 00 00 2C */	b lbl_80031EC4
lbl_80031E9C:
/* 80031E9C 0002DAFC  2C 00 00 02 */	cmpwi r0, 2
/* 80031EA0 0002DB00  40 82 00 18 */	bne lbl_80031EB8
/* 80031EA4 0002DB04  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 80031EA8 0002DB08  FC 00 00 1E */	fctiwz f0, f0
/* 80031EAC 0002DB0C  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031EB0 0002DB10  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031EB4 0002DB14  48 00 00 0C */	b lbl_80031EC0
lbl_80031EB8:
/* 80031EB8 0002DB18  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031EBC 0002DB1C  48 1F BE 79 */	bl func_8022DD34
lbl_80031EC0:
/* 80031EC0 0002DB20  7C 7C 1B 78 */	mr r28, r3
lbl_80031EC4:
/* 80031EC4 0002DB24  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 80031EC8 0002DB28  2C 00 00 01 */	cmpwi r0, 1
/* 80031ECC 0002DB2C  40 82 00 0C */	bne lbl_80031ED8
/* 80031ED0 0002DB30  83 BD 00 1C */	lwz r29, 0x1c(r29)
/* 80031ED4 0002DB34  48 00 00 2C */	b lbl_80031F00
lbl_80031ED8:
/* 80031ED8 0002DB38  2C 00 00 02 */	cmpwi r0, 2
/* 80031EDC 0002DB3C  40 82 00 18 */	bne lbl_80031EF4
/* 80031EE0 0002DB40  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 80031EE4 0002DB44  FC 00 00 1E */	fctiwz f0, f0
/* 80031EE8 0002DB48  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031EEC 0002DB4C  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031EF0 0002DB50  48 00 00 0C */	b lbl_80031EFC
lbl_80031EF4:
/* 80031EF4 0002DB54  38 7D 00 18 */	addi r3, r29, 0x18
/* 80031EF8 0002DB58  48 1F BE 3D */	bl func_8022DD34
lbl_80031EFC:
/* 80031EFC 0002DB5C  7C 7D 1B 78 */	mr r29, r3
lbl_80031F00:
/* 80031F00 0002DB60  7F C3 F3 78 */	mr r3, r30
/* 80031F04 0002DB64  7F 84 E3 78 */	mr r4, r28
/* 80031F08 0002DB68  48 00 7A 75 */	bl func_8003997C
/* 80031F0C 0002DB6C  7C 64 1B 78 */	mr r4, r3
/* 80031F10 0002DB70  7F E3 FB 78 */	mr r3, r31
/* 80031F14 0002DB74  7F A5 EB 78 */	mr r5, r29
/* 80031F18 0002DB78  48 01 C2 51 */	bl func_8004E168
/* 80031F1C 0002DB7C  48 00 02 84 */	b lbl_800321A0
/* 80031F20 0002DB80  A8 1D 00 08 */	lha r0, 8(r29)
/* 80031F24 0002DB84  2C 00 00 21 */	cmpwi r0, 0x21
/* 80031F28 0002DB88  40 82 00 EC */	bne lbl_80032014
/* 80031F2C 0002DB8C  83 DD 00 0C */	lwz r30, 0xc(r29)
/* 80031F30 0002DB90  2C 1E 00 00 */	cmpwi r30, 0
/* 80031F34 0002DB94  41 82 00 E0 */	beq lbl_80032014
/* 80031F38 0002DB98  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80031F3C 0002DB9C  2C 00 00 01 */	cmpwi r0, 1
/* 80031F40 0002DBA0  40 82 00 0C */	bne lbl_80031F4C
/* 80031F44 0002DBA4  83 9D 00 14 */	lwz r28, 0x14(r29)
/* 80031F48 0002DBA8  48 00 00 2C */	b lbl_80031F74
lbl_80031F4C:
/* 80031F4C 0002DBAC  2C 00 00 02 */	cmpwi r0, 2
/* 80031F50 0002DBB0  40 82 00 18 */	bne lbl_80031F68
/* 80031F54 0002DBB4  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 80031F58 0002DBB8  FC 00 00 1E */	fctiwz f0, f0
/* 80031F5C 0002DBBC  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031F60 0002DBC0  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031F64 0002DBC4  48 00 00 0C */	b lbl_80031F70
lbl_80031F68:
/* 80031F68 0002DBC8  38 7D 00 10 */	addi r3, r29, 0x10
/* 80031F6C 0002DBCC  48 1F BD C9 */	bl func_8022DD34
lbl_80031F70:
/* 80031F70 0002DBD0  7C 7C 1B 78 */	mr r28, r3
lbl_80031F74:
/* 80031F74 0002DBD4  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 80031F78 0002DBD8  2C 00 00 01 */	cmpwi r0, 1
/* 80031F7C 0002DBDC  40 82 00 0C */	bne lbl_80031F88
/* 80031F80 0002DBE0  80 1D 00 1C */	lwz r0, 0x1c(r29)
/* 80031F84 0002DBE4  48 00 00 2C */	b lbl_80031FB0
lbl_80031F88:
/* 80031F88 0002DBE8  2C 00 00 02 */	cmpwi r0, 2
/* 80031F8C 0002DBEC  40 82 00 18 */	bne lbl_80031FA4
/* 80031F90 0002DBF0  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 80031F94 0002DBF4  FC 00 00 1E */	fctiwz f0, f0
/* 80031F98 0002DBF8  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031F9C 0002DBFC  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031FA0 0002DC00  48 00 00 0C */	b lbl_80031FAC
lbl_80031FA4:
/* 80031FA4 0002DC04  38 7D 00 18 */	addi r3, r29, 0x18
/* 80031FA8 0002DC08  48 1F BD 8D */	bl func_8022DD34
lbl_80031FAC:
/* 80031FAC 0002DC0C  7C 60 1B 78 */	mr r0, r3
lbl_80031FB0:
/* 80031FB0 0002DC10  7F C3 F3 78 */	mr r3, r30
/* 80031FB4 0002DC14  57 84 04 3E */	clrlwi r4, r28, 0x10
/* 80031FB8 0002DC18  54 05 04 3E */	clrlwi r5, r0, 0x10
/* 80031FBC 0002DC1C  48 00 BF 81 */	bl func_8003DF3C
/* 80031FC0 0002DC20  2C 03 00 00 */	cmpwi r3, 0
/* 80031FC4 0002DC24  7C 7C 1B 78 */	mr r28, r3
/* 80031FC8 0002DC28  41 82 00 4C */	beq lbl_80032014
/* 80031FCC 0002DC2C  A8 1D 00 20 */	lha r0, 0x20(r29)
/* 80031FD0 0002DC30  2C 00 00 01 */	cmpwi r0, 1
/* 80031FD4 0002DC34  40 82 00 0C */	bne lbl_80031FE0
/* 80031FD8 0002DC38  80 BD 00 24 */	lwz r5, 0x24(r29)
/* 80031FDC 0002DC3C  48 00 00 2C */	b lbl_80032008
lbl_80031FE0:
/* 80031FE0 0002DC40  2C 00 00 02 */	cmpwi r0, 2
/* 80031FE4 0002DC44  40 82 00 18 */	bne lbl_80031FFC
/* 80031FE8 0002DC48  C0 1D 00 24 */	lfs f0, 0x24(r29)
/* 80031FEC 0002DC4C  FC 00 00 1E */	fctiwz f0, f0
/* 80031FF0 0002DC50  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80031FF4 0002DC54  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80031FF8 0002DC58  48 00 00 0C */	b lbl_80032004
lbl_80031FFC:
/* 80031FFC 0002DC5C  38 7D 00 20 */	addi r3, r29, 0x20
/* 80032000 0002DC60  48 1F BD 35 */	bl func_8022DD34
lbl_80032004:
/* 80032004 0002DC64  7C 65 1B 78 */	mr r5, r3
lbl_80032008:
/* 80032008 0002DC68  7F E3 FB 78 */	mr r3, r31
/* 8003200C 0002DC6C  7F 84 E3 78 */	mr r4, r28
/* 80032010 0002DC70  48 01 C1 59 */	bl func_8004E168
lbl_80032014:
/* 80032014 0002DC74  C0 22 81 94 */	lfs f1, lbl_80640794-_SDA2_BASE_(r2)
/* 80032018 0002DC78  7F E3 FB 78 */	mr r3, r31
/* 8003201C 0002DC7C  48 01 C7 AD */	bl func_8004E7C8
/* 80032020 0002DC80  48 00 01 80 */	b lbl_800321A0
/* 80032024 0002DC84  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 80032028 0002DC88  2C 03 00 00 */	cmpwi r3, 0
/* 8003202C 0002DC8C  41 82 01 74 */	beq lbl_800321A0
/* 80032030 0002DC90  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80032034 0002DC94  C0 02 81 94 */	lfs f0, lbl_80640794-_SDA2_BASE_(r2)
/* 80032038 0002DC98  60 00 00 04 */	ori r0, r0, 4
/* 8003203C 0002DC9C  90 03 01 04 */	stw r0, 0x104(r3)
/* 80032040 0002DCA0  D0 03 01 10 */	stfs f0, 0x110(r3)
/* 80032044 0002DCA4  48 00 01 5C */	b lbl_800321A0
/* 80032048 0002DCA8  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 8003204C 0002DCAC  2C 03 00 00 */	cmpwi r3, 0
/* 80032050 0002DCB0  41 82 00 40 */	beq lbl_80032090
/* 80032054 0002DCB4  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80032058 0002DCB8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8003205C 0002DCBC  41 82 00 0C */	beq lbl_80032068
/* 80032060 0002DCC0  38 60 00 01 */	li r3, 1
/* 80032064 0002DCC4  48 00 00 30 */	b lbl_80032094
lbl_80032068:
/* 80032068 0002DCC8  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8003206C 0002DCCC  2C 03 00 00 */	cmpwi r3, 0
/* 80032070 0002DCD0  41 82 00 18 */	beq lbl_80032088
/* 80032074 0002DCD4  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80032078 0002DCD8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8003207C 0002DCDC  41 82 00 0C */	beq lbl_80032088
/* 80032080 0002DCE0  38 60 00 01 */	li r3, 1
/* 80032084 0002DCE4  48 00 00 10 */	b lbl_80032094
lbl_80032088:
/* 80032088 0002DCE8  38 60 00 00 */	li r3, 0
/* 8003208C 0002DCEC  48 00 00 08 */	b lbl_80032094
lbl_80032090:
/* 80032090 0002DCF0  38 60 00 00 */	li r3, 0
lbl_80032094:
/* 80032094 0002DCF4  38 00 00 01 */	li r0, 1
/* 80032098 0002DCF8  90 7E 00 04 */	stw r3, 4(r30)
/* 8003209C 0002DCFC  B0 1E 00 00 */	sth r0, 0(r30)
/* 800320A0 0002DD00  48 00 01 00 */	b lbl_800321A0
/* 800320A4 0002DD04  A8 1D 00 08 */	lha r0, 8(r29)
/* 800320A8 0002DD08  2C 00 00 01 */	cmpwi r0, 1
/* 800320AC 0002DD0C  40 82 00 0C */	bne lbl_800320B8
/* 800320B0 0002DD10  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 800320B4 0002DD14  48 00 00 2C */	b lbl_800320E0
lbl_800320B8:
/* 800320B8 0002DD18  2C 00 00 02 */	cmpwi r0, 2
/* 800320BC 0002DD1C  40 82 00 18 */	bne lbl_800320D4
/* 800320C0 0002DD20  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 800320C4 0002DD24  FC 00 00 1E */	fctiwz f0, f0
/* 800320C8 0002DD28  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 800320CC 0002DD2C  80 61 00 94 */	lwz r3, 0x94(r1)
/* 800320D0 0002DD30  48 00 00 0C */	b lbl_800320DC
lbl_800320D4:
/* 800320D4 0002DD34  38 7D 00 08 */	addi r3, r29, 8
/* 800320D8 0002DD38  48 1F BC 5D */	bl func_8022DD34
lbl_800320DC:
/* 800320DC 0002DD3C  7C 64 1B 78 */	mr r4, r3
lbl_800320E0:
/* 800320E0 0002DD40  7F E3 FB 78 */	mr r3, r31
/* 800320E4 0002DD44  48 01 C6 9D */	bl func_8004E780
/* 800320E8 0002DD48  48 00 00 B8 */	b lbl_800321A0
/* 800320EC 0002DD4C  7F E3 FB 78 */	mr r3, r31
/* 800320F0 0002DD50  48 01 C6 A5 */	bl func_8004E794
/* 800320F4 0002DD54  48 00 00 AC */	b lbl_800321A0
/* 800320F8 0002DD58  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 800320FC 0002DD5C  60 00 00 04 */	ori r0, r0, 4
/* 80032100 0002DD60  90 1F 00 34 */	stw r0, 0x34(r31)
/* 80032104 0002DD64  48 00 00 9C */	b lbl_800321A0
/* 80032108 0002DD68  A8 1D 00 08 */	lha r0, 8(r29)
/* 8003210C 0002DD6C  2C 00 00 01 */	cmpwi r0, 1
/* 80032110 0002DD70  40 82 00 0C */	bne lbl_8003211C
/* 80032114 0002DD74  83 9D 00 0C */	lwz r28, 0xc(r29)
/* 80032118 0002DD78  48 00 00 2C */	b lbl_80032144
lbl_8003211C:
/* 8003211C 0002DD7C  2C 00 00 02 */	cmpwi r0, 2
/* 80032120 0002DD80  40 82 00 18 */	bne lbl_80032138
/* 80032124 0002DD84  C0 1D 00 0C */	lfs f0, 0xc(r29)
/* 80032128 0002DD88  FC 00 00 1E */	fctiwz f0, f0
/* 8003212C 0002DD8C  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 80032130 0002DD90  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80032134 0002DD94  48 00 00 0C */	b lbl_80032140
lbl_80032138:
/* 80032138 0002DD98  38 7D 00 08 */	addi r3, r29, 8
/* 8003213C 0002DD9C  48 1F BB F9 */	bl func_8022DD34
lbl_80032140:
/* 80032140 0002DDA0  7C 7C 1B 78 */	mr r28, r3
lbl_80032144:
/* 80032144 0002DDA4  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 80032148 0002DDA8  2C 00 00 01 */	cmpwi r0, 1
/* 8003214C 0002DDAC  40 82 00 0C */	bne lbl_80032158
/* 80032150 0002DDB0  80 BD 00 14 */	lwz r5, 0x14(r29)
/* 80032154 0002DDB4  48 00 00 2C */	b lbl_80032180
lbl_80032158:
/* 80032158 0002DDB8  2C 00 00 02 */	cmpwi r0, 2
/* 8003215C 0002DDBC  40 82 00 18 */	bne lbl_80032174
/* 80032160 0002DDC0  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 80032164 0002DDC4  FC 00 00 1E */	fctiwz f0, f0
/* 80032168 0002DDC8  D8 01 00 90 */	stfd f0, 0x90(r1)
/* 8003216C 0002DDCC  80 61 00 94 */	lwz r3, 0x94(r1)
/* 80032170 0002DDD0  48 00 00 0C */	b lbl_8003217C
lbl_80032174:
/* 80032174 0002DDD4  38 7D 00 10 */	addi r3, r29, 0x10
/* 80032178 0002DDD8  48 1F BB BD */	bl func_8022DD34
lbl_8003217C:
/* 8003217C 0002DDDC  7C 65 1B 78 */	mr r5, r3
lbl_80032180:
/* 80032180 0002DDE0  7C 7C 00 D0 */	neg r3, r28
/* 80032184 0002DDE4  7C 05 00 D0 */	neg r0, r5
/* 80032188 0002DDE8  7C 64 E3 78 */	or r4, r3, r28
/* 8003218C 0002DDEC  7C 00 2B 78 */	or r0, r0, r5
/* 80032190 0002DDF0  7F E3 FB 78 */	mr r3, r31
/* 80032194 0002DDF4  54 84 0F FE */	srwi r4, r4, 0x1f
/* 80032198 0002DDF8  54 05 0F FE */	srwi r5, r0, 0x1f
/* 8003219C 0002DDFC  48 01 C4 DD */	bl func_8004E678
lbl_800321A0:
/* 800321A0 0002DE00  38 60 00 01 */	li r3, 1
lbl_800321A4:
/* 800321A4 0002DE04  E3 E1 00 B8 */	psq_l f31, 184(r1), 0, qr0
/* 800321A8 0002DE08  39 61 00 B0 */	addi r11, r1, 0xb0
/* 800321AC 0002DE0C  CB E1 00 B0 */	lfd f31, 0xb0(r1)
/* 800321B0 0002DE10  48 19 4F C1 */	bl _restgpr_26
/* 800321B4 0002DE14  80 01 00 C4 */	lwz r0, 0xc4(r1)
/* 800321B8 0002DE18  7C 08 03 A6 */	mtlr r0
/* 800321BC 0002DE1C  38 21 00 C0 */	addi r1, r1, 0xc0
/* 800321C0 0002DE20  4E 80 00 20 */	blr

.global func_800321C4
func_800321C4:
/* 800321C4 0002DE24  38 A0 00 01 */	li r5, 1
/* 800321C8 0002DE28  38 6D 97 68 */	addi r3, r13, lbl_8063EA28-_SDA_BASE_
/* 800321CC 0002DE2C  38 80 00 04 */	li r4, 4
/* 800321D0 0002DE30  38 00 00 00 */	li r0, 0
/* 800321D4 0002DE34  98 AD 97 68 */	stb r5, lbl_8063EA28-_SDA_BASE_(r13)
/* 800321D8 0002DE38  B0 83 00 02 */	sth r4, 2(r3)
/* 800321DC 0002DE3C  98 03 00 04 */	stb r0, 4(r3)
/* 800321E0 0002DE40  4E 80 00 20 */	blr

.global func_800321E4
func_800321E4:
/* 800321E4 0002DE44  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800321E8 0002DE48  7C 08 02 A6 */	mflr r0
/* 800321EC 0002DE4C  C8 42 81 A8 */	lfd f2, lbl_806407A8-_SDA2_BASE_(r2)
/* 800321F0 0002DE50  90 01 00 14 */	stw r0, 0x14(r1)
/* 800321F4 0002DE54  3C 00 43 30 */	lis r0, 0x4330
/* 800321F8 0002DE58  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 800321FC 0002DE5C  90 01 00 08 */	stw r0, 8(r1)
/* 80032200 0002DE60  88 03 00 59 */	lbz r0, 0x59(r3)
/* 80032204 0002DE64  90 01 00 0C */	stw r0, 0xc(r1)
/* 80032208 0002DE68  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003220C 0002DE6C  EC 00 10 28 */	fsubs f0, f0, f2
/* 80032210 0002DE70  EC 21 00 32 */	fmuls f1, f1, f0
/* 80032214 0002DE74  48 19 4D ED */	bl __cvt_fp2unsigned
/* 80032218 0002DE78  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003221C 0002DE7C  7C 08 03 A6 */	mtlr r0
/* 80032220 0002DE80  38 21 00 10 */	addi r1, r1, 0x10
/* 80032224 0002DE84  4E 80 00 20 */	blr

.global lbl_80032228
lbl_80032228:
/* 80032228 0002DE88  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8003222C 0002DE8C  7C 08 02 A6 */	mflr r0
/* 80032230 0002DE90  90 01 00 44 */	stw r0, 0x44(r1)
/* 80032234 0002DE94  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80032238 0002DE98  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8003223C 0002DE9C  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80032240 0002DEA0  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80032244 0002DEA4  2C 04 00 12 */	cmpwi r4, 0x12
/* 80032248 0002DEA8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003224C 0002DEAC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80032250 0002DEB0  7C DE 33 78 */	mr r30, r6
/* 80032254 0002DEB4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80032258 0002DEB8  7C BD 2B 78 */	mr r29, r5
/* 8003225C 0002DEBC  41 82 01 1C */	beq lbl_80032378
/* 80032260 0002DEC0  40 80 00 10 */	bge lbl_80032270
/* 80032264 0002DEC4  2C 04 00 11 */	cmpwi r4, 0x11
/* 80032268 0002DEC8  40 80 00 14 */	bge lbl_8003227C
/* 8003226C 0002DECC  48 00 01 EC */	b lbl_80032458
lbl_80032270:
/* 80032270 0002DED0  2C 04 00 14 */	cmpwi r4, 0x14
/* 80032274 0002DED4  40 80 01 E4 */	bge lbl_80032458
/* 80032278 0002DED8  48 00 01 98 */	b lbl_80032410
lbl_8003227C:
/* 8003227C 0002DEDC  A8 05 00 08 */	lha r0, 8(r5)
/* 80032280 0002DEE0  2C 00 00 01 */	cmpwi r0, 1
/* 80032284 0002DEE4  40 82 00 0C */	bne lbl_80032290
/* 80032288 0002DEE8  83 E5 00 0C */	lwz r31, 0xc(r5)
/* 8003228C 0002DEEC  48 00 00 2C */	b lbl_800322B8
lbl_80032290:
/* 80032290 0002DEF0  2C 00 00 02 */	cmpwi r0, 2
/* 80032294 0002DEF4  40 82 00 18 */	bne lbl_800322AC
/* 80032298 0002DEF8  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 8003229C 0002DEFC  FC 00 00 1E */	fctiwz f0, f0
/* 800322A0 0002DF00  D8 01 00 08 */	stfd f0, 8(r1)
/* 800322A4 0002DF04  80 61 00 0C */	lwz r3, 0xc(r1)
/* 800322A8 0002DF08  48 00 00 0C */	b lbl_800322B4
lbl_800322AC:
/* 800322AC 0002DF0C  38 65 00 08 */	addi r3, r5, 8
/* 800322B0 0002DF10  48 1F BA 85 */	bl func_8022DD34
lbl_800322B4:
/* 800322B4 0002DF14  7C 7F 1B 78 */	mr r31, r3
lbl_800322B8:
/* 800322B8 0002DF18  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 800322BC 0002DF1C  2C 00 00 01 */	cmpwi r0, 1
/* 800322C0 0002DF20  40 82 00 28 */	bne lbl_800322E8
/* 800322C4 0002DF24  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 800322C8 0002DF28  3C 00 43 30 */	lis r0, 0x4330
/* 800322CC 0002DF2C  90 01 00 08 */	stw r0, 8(r1)
/* 800322D0 0002DF30  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 800322D4 0002DF34  C8 22 81 B0 */	lfd f1, lbl_806407B0-_SDA2_BASE_(r2)
/* 800322D8 0002DF38  90 01 00 0C */	stw r0, 0xc(r1)
/* 800322DC 0002DF3C  C8 01 00 08 */	lfd f0, 8(r1)
/* 800322E0 0002DF40  EF E0 08 28 */	fsubs f31, f0, f1
/* 800322E4 0002DF44  48 00 00 20 */	b lbl_80032304
lbl_800322E8:
/* 800322E8 0002DF48  2C 00 00 02 */	cmpwi r0, 2
/* 800322EC 0002DF4C  40 82 00 0C */	bne lbl_800322F8
/* 800322F0 0002DF50  C0 3D 00 14 */	lfs f1, 0x14(r29)
/* 800322F4 0002DF54  48 00 00 0C */	b lbl_80032300
lbl_800322F8:
/* 800322F8 0002DF58  38 7D 00 10 */	addi r3, r29, 0x10
/* 800322FC 0002DF5C  48 1F BA 7D */	bl func_8022DD78
lbl_80032300:
/* 80032300 0002DF60  FF E0 08 90 */	fmr f31, f1
lbl_80032304:
/* 80032304 0002DF64  A8 1D 00 18 */	lha r0, 0x18(r29)
/* 80032308 0002DF68  2C 00 00 01 */	cmpwi r0, 1
/* 8003230C 0002DF6C  40 82 00 28 */	bne lbl_80032334
/* 80032310 0002DF70  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 80032314 0002DF74  3C 00 43 30 */	lis r0, 0x4330
/* 80032318 0002DF78  90 01 00 08 */	stw r0, 8(r1)
/* 8003231C 0002DF7C  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80032320 0002DF80  C8 22 81 B0 */	lfd f1, lbl_806407B0-_SDA2_BASE_(r2)
/* 80032324 0002DF84  90 01 00 0C */	stw r0, 0xc(r1)
/* 80032328 0002DF88  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003232C 0002DF8C  EF C0 08 28 */	fsubs f30, f0, f1
/* 80032330 0002DF90  48 00 00 20 */	b lbl_80032350
lbl_80032334:
/* 80032334 0002DF94  2C 00 00 02 */	cmpwi r0, 2
/* 80032338 0002DF98  40 82 00 0C */	bne lbl_80032344
/* 8003233C 0002DF9C  C0 3D 00 1C */	lfs f1, 0x1c(r29)
/* 80032340 0002DFA0  48 00 00 0C */	b lbl_8003234C
lbl_80032344:
/* 80032344 0002DFA4  38 7D 00 18 */	addi r3, r29, 0x18
/* 80032348 0002DFA8  48 1F BA 31 */	bl func_8022DD78
lbl_8003234C:
/* 8003234C 0002DFAC  FF C0 08 90 */	fmr f30, f1
lbl_80032350:
/* 80032350 0002DFB0  FC 20 F8 90 */	fmr f1, f31
/* 80032354 0002DFB4  4B FF FE 91 */	bl func_800321E4
/* 80032358 0002DFB8  FC 20 F0 90 */	fmr f1, f30
/* 8003235C 0002DFBC  7C 64 1B 78 */	mr r4, r3
/* 80032360 0002DFC0  7F E3 FB 78 */	mr r3, r31
/* 80032364 0002DFC4  4B FD 8E 0D */	bl func_8000B170
/* 80032368 0002DFC8  38 00 00 01 */	li r0, 1
/* 8003236C 0002DFCC  90 7E 00 04 */	stw r3, 4(r30)
/* 80032370 0002DFD0  B0 1E 00 00 */	sth r0, 0(r30)
/* 80032374 0002DFD4  48 00 00 E4 */	b lbl_80032458
lbl_80032378:
/* 80032378 0002DFD8  A8 05 00 08 */	lha r0, 8(r5)
/* 8003237C 0002DFDC  2C 00 00 01 */	cmpwi r0, 1
/* 80032380 0002DFE0  40 82 00 0C */	bne lbl_8003238C
/* 80032384 0002DFE4  83 E5 00 0C */	lwz r31, 0xc(r5)
/* 80032388 0002DFE8  48 00 00 2C */	b lbl_800323B4
lbl_8003238C:
/* 8003238C 0002DFEC  2C 00 00 02 */	cmpwi r0, 2
/* 80032390 0002DFF0  40 82 00 18 */	bne lbl_800323A8
/* 80032394 0002DFF4  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032398 0002DFF8  FC 00 00 1E */	fctiwz f0, f0
/* 8003239C 0002DFFC  D8 01 00 08 */	stfd f0, 8(r1)
/* 800323A0 0002E000  80 61 00 0C */	lwz r3, 0xc(r1)
/* 800323A4 0002E004  48 00 00 0C */	b lbl_800323B0
lbl_800323A8:
/* 800323A8 0002E008  38 65 00 08 */	addi r3, r5, 8
/* 800323AC 0002E00C  48 1F B9 89 */	bl func_8022DD34
lbl_800323B0:
/* 800323B0 0002E010  7C 7F 1B 78 */	mr r31, r3
lbl_800323B4:
/* 800323B4 0002E014  A8 1D 00 10 */	lha r0, 0x10(r29)
/* 800323B8 0002E018  2C 00 00 01 */	cmpwi r0, 1
/* 800323BC 0002E01C  40 82 00 28 */	bne lbl_800323E4
/* 800323C0 0002E020  80 7D 00 14 */	lwz r3, 0x14(r29)
/* 800323C4 0002E024  3C 00 43 30 */	lis r0, 0x4330
/* 800323C8 0002E028  90 01 00 08 */	stw r0, 8(r1)
/* 800323CC 0002E02C  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 800323D0 0002E030  C8 22 81 B0 */	lfd f1, lbl_806407B0-_SDA2_BASE_(r2)
/* 800323D4 0002E034  90 01 00 0C */	stw r0, 0xc(r1)
/* 800323D8 0002E038  C8 01 00 08 */	lfd f0, 8(r1)
/* 800323DC 0002E03C  EC 20 08 28 */	fsubs f1, f0, f1
/* 800323E0 0002E040  48 00 00 1C */	b lbl_800323FC
lbl_800323E4:
/* 800323E4 0002E044  2C 00 00 02 */	cmpwi r0, 2
/* 800323E8 0002E048  40 82 00 0C */	bne lbl_800323F4
/* 800323EC 0002E04C  C0 3D 00 14 */	lfs f1, 0x14(r29)
/* 800323F0 0002E050  48 00 00 0C */	b lbl_800323FC
lbl_800323F4:
/* 800323F4 0002E054  38 7D 00 10 */	addi r3, r29, 0x10
/* 800323F8 0002E058  48 1F B9 81 */	bl func_8022DD78
lbl_800323FC:
/* 800323FC 0002E05C  4B FF FD E9 */	bl func_800321E4
/* 80032400 0002E060  7C 64 1B 78 */	mr r4, r3
/* 80032404 0002E064  7F E3 FB 78 */	mr r3, r31
/* 80032408 0002E068  4B FD 90 65 */	bl func_8000B46C
/* 8003240C 0002E06C  48 00 00 4C */	b lbl_80032458
lbl_80032410:
/* 80032410 0002E070  A8 05 00 08 */	lha r0, 8(r5)
/* 80032414 0002E074  2C 00 00 01 */	cmpwi r0, 1
/* 80032418 0002E078  40 82 00 0C */	bne lbl_80032424
/* 8003241C 0002E07C  80 65 00 0C */	lwz r3, 0xc(r5)
/* 80032420 0002E080  48 00 00 28 */	b lbl_80032448
lbl_80032424:
/* 80032424 0002E084  2C 00 00 02 */	cmpwi r0, 2
/* 80032428 0002E088  40 82 00 18 */	bne lbl_80032440
/* 8003242C 0002E08C  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032430 0002E090  FC 00 00 1E */	fctiwz f0, f0
/* 80032434 0002E094  D8 01 00 08 */	stfd f0, 8(r1)
/* 80032438 0002E098  80 61 00 0C */	lwz r3, 0xc(r1)
/* 8003243C 0002E09C  48 00 00 0C */	b lbl_80032448
lbl_80032440:
/* 80032440 0002E0A0  38 65 00 08 */	addi r3, r5, 8
/* 80032444 0002E0A4  48 1F B8 F1 */	bl func_8022DD34
lbl_80032448:
/* 80032448 0002E0A8  4B FD 90 79 */	bl func_8000B4C0
/* 8003244C 0002E0AC  38 00 00 01 */	li r0, 1
/* 80032450 0002E0B0  90 7E 00 04 */	stw r3, 4(r30)
/* 80032454 0002E0B4  B0 1E 00 00 */	sth r0, 0(r30)
lbl_80032458:
/* 80032458 0002E0B8  38 60 00 01 */	li r3, 1
/* 8003245C 0002E0BC  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80032460 0002E0C0  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80032464 0002E0C4  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80032468 0002E0C8  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 8003246C 0002E0CC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80032470 0002E0D0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80032474 0002E0D4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80032478 0002E0D8  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8003247C 0002E0DC  7C 08 03 A6 */	mtlr r0
/* 80032480 0002E0E0  38 21 00 40 */	addi r1, r1, 0x40
/* 80032484 0002E0E4  4E 80 00 20 */	blr

.global func_80032488
func_80032488:
/* 80032488 0002E0E8  38 A0 00 01 */	li r5, 1
/* 8003248C 0002E0EC  38 6D 97 70 */	addi r3, r13, lbl_8063EA30-_SDA_BASE_
/* 80032490 0002E0F0  38 80 00 04 */	li r4, 4
/* 80032494 0002E0F4  38 00 00 00 */	li r0, 0
/* 80032498 0002E0F8  98 AD 97 70 */	stb r5, lbl_8063EA30-_SDA_BASE_(r13)
/* 8003249C 0002E0FC  B0 83 00 02 */	sth r4, 2(r3)
/* 800324A0 0002E100  98 03 00 04 */	stb r0, 4(r3)
/* 800324A4 0002E104  4E 80 00 20 */	blr

.global lbl_800324A8
lbl_800324A8:
/* 800324A8 0002E108  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 800324AC 0002E10C  7C 08 02 A6 */	mflr r0
/* 800324B0 0002E110  90 01 00 54 */	stw r0, 0x54(r1)
/* 800324B4 0002E114  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 800324B8 0002E118  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 800324BC 0002E11C  39 61 00 40 */	addi r11, r1, 0x40
/* 800324C0 0002E120  48 19 4C 69 */	bl _savegpr_27
/* 800324C4 0002E124  7C 9B 23 78 */	mr r27, r4
/* 800324C8 0002E128  7C BE 2B 78 */	mr r30, r5
/* 800324CC 0002E12C  48 01 CF 51 */	bl func_8004F41C
/* 800324D0 0002E130  2C 03 00 00 */	cmpwi r3, 0
/* 800324D4 0002E134  40 82 00 0C */	bne lbl_800324E0
/* 800324D8 0002E138  38 60 00 01 */	li r3, 1
/* 800324DC 0002E13C  48 00 06 AC */	b lbl_80032B88
lbl_800324E0:
/* 800324E0 0002E140  48 01 CF E5 */	bl func_8004F4C4
/* 800324E4 0002E144  2C 03 00 00 */	cmpwi r3, 0
/* 800324E8 0002E148  7C 7F 1B 78 */	mr r31, r3
/* 800324EC 0002E14C  40 82 00 0C */	bne lbl_800324F8
/* 800324F0 0002E150  38 60 00 01 */	li r3, 1
/* 800324F4 0002E154  48 00 06 94 */	b lbl_80032B88
lbl_800324F8:
/* 800324F8 0002E158  38 1B FF EF */	addi r0, r27, -17
/* 800324FC 0002E15C  28 00 00 12 */	cmplwi r0, 0x12
/* 80032500 0002E160  41 81 06 84 */	bgt lbl_80032B84
/* 80032504 0002E164  3C 80 80 41 */	lis r4, lbl_8040A198@ha
/* 80032508 0002E168  54 00 10 3A */	slwi r0, r0, 2
/* 8003250C 0002E16C  38 84 A1 98 */	addi r4, r4, lbl_8040A198@l
/* 80032510 0002E170  7C 84 00 2E */	lwzx r4, r4, r0
/* 80032514 0002E174  7C 89 03 A6 */	mtctr r4
/* 80032518 0002E178  4E 80 04 20 */	bctr
/* 8003251C 0002E17C  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032520 0002E180  2C 00 00 01 */	cmpwi r0, 1
/* 80032524 0002E184  40 82 00 0C */	bne lbl_80032530
/* 80032528 0002E188  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8003252C 0002E18C  48 00 00 2C */	b lbl_80032558
lbl_80032530:
/* 80032530 0002E190  2C 00 00 02 */	cmpwi r0, 2
/* 80032534 0002E194  40 82 00 18 */	bne lbl_8003254C
/* 80032538 0002E198  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 8003253C 0002E19C  FC 00 00 1E */	fctiwz f0, f0
/* 80032540 0002E1A0  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80032544 0002E1A4  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032548 0002E1A8  48 00 00 0C */	b lbl_80032554
lbl_8003254C:
/* 8003254C 0002E1AC  38 7E 00 08 */	addi r3, r30, 8
/* 80032550 0002E1B0  48 1F B7 E5 */	bl func_8022DD34
lbl_80032554:
/* 80032554 0002E1B4  7C 64 1B 78 */	mr r4, r3
lbl_80032558:
/* 80032558 0002E1B8  7F E3 FB 78 */	mr r3, r31
/* 8003255C 0002E1BC  48 01 D0 D1 */	bl func_8004F62C
/* 80032560 0002E1C0  48 00 06 24 */	b lbl_80032B84
/* 80032564 0002E1C4  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032568 0002E1C8  2C 00 00 21 */	cmpwi r0, 0x21
/* 8003256C 0002E1CC  40 82 06 18 */	bne lbl_80032B84
/* 80032570 0002E1D0  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 80032574 0002E1D4  2C 04 00 00 */	cmpwi r4, 0
/* 80032578 0002E1D8  41 82 06 0C */	beq lbl_80032B84
/* 8003257C 0002E1DC  48 01 D5 01 */	bl func_8004FA7C
/* 80032580 0002E1E0  48 00 06 04 */	b lbl_80032B84
/* 80032584 0002E1E4  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032588 0002E1E8  2C 00 00 21 */	cmpwi r0, 0x21
/* 8003258C 0002E1EC  40 82 05 F8 */	bne lbl_80032B84
/* 80032590 0002E1F0  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 80032594 0002E1F4  2C 04 00 00 */	cmpwi r4, 0
/* 80032598 0002E1F8  41 82 05 EC */	beq lbl_80032B84
/* 8003259C 0002E1FC  48 01 D6 15 */	bl func_8004FBB0
/* 800325A0 0002E200  48 00 05 E4 */	b lbl_80032B84
/* 800325A4 0002E204  48 01 D5 6D */	bl func_8004FB10
/* 800325A8 0002E208  48 00 05 DC */	b lbl_80032B84
/* 800325AC 0002E20C  A8 1E 00 08 */	lha r0, 8(r30)
/* 800325B0 0002E210  2C 00 00 01 */	cmpwi r0, 1
/* 800325B4 0002E214  40 82 00 0C */	bne lbl_800325C0
/* 800325B8 0002E218  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 800325BC 0002E21C  48 00 00 2C */	b lbl_800325E8
lbl_800325C0:
/* 800325C0 0002E220  2C 00 00 02 */	cmpwi r0, 2
/* 800325C4 0002E224  40 82 00 18 */	bne lbl_800325DC
/* 800325C8 0002E228  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 800325CC 0002E22C  FC 00 00 1E */	fctiwz f0, f0
/* 800325D0 0002E230  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800325D4 0002E234  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800325D8 0002E238  48 00 00 0C */	b lbl_800325E4
lbl_800325DC:
/* 800325DC 0002E23C  38 7E 00 08 */	addi r3, r30, 8
/* 800325E0 0002E240  48 1F B7 55 */	bl func_8022DD34
lbl_800325E4:
/* 800325E4 0002E244  7C 64 1B 78 */	mr r4, r3
lbl_800325E8:
/* 800325E8 0002E248  7C 04 00 D0 */	neg r0, r4
/* 800325EC 0002E24C  7F E3 FB 78 */	mr r3, r31
/* 800325F0 0002E250  7C 00 23 78 */	or r0, r0, r4
/* 800325F4 0002E254  54 04 0F FE */	srwi r4, r0, 0x1f
/* 800325F8 0002E258  48 01 D4 41 */	bl func_8004FA38
/* 800325FC 0002E25C  48 00 05 88 */	b lbl_80032B84
/* 80032600 0002E260  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032604 0002E264  2C 00 00 04 */	cmpwi r0, 4
/* 80032608 0002E268  40 82 00 0C */	bne lbl_80032614
/* 8003260C 0002E26C  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80032610 0002E270  48 00 00 0C */	b lbl_8003261C
lbl_80032614:
/* 80032614 0002E274  38 7E 00 08 */	addi r3, r30, 8
/* 80032618 0002E278  4B FF 5C C9 */	bl func_800282E0
lbl_8003261C:
/* 8003261C 0002E27C  7C 64 1B 78 */	mr r4, r3
/* 80032620 0002E280  7F E3 FB 78 */	mr r3, r31
/* 80032624 0002E284  48 01 D6 BD */	bl func_8004FCE0
/* 80032628 0002E288  48 00 05 5C */	b lbl_80032B84
/* 8003262C 0002E28C  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032630 0002E290  2C 00 00 04 */	cmpwi r0, 4
/* 80032634 0002E294  40 82 00 0C */	bne lbl_80032640
/* 80032638 0002E298  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 8003263C 0002E29C  48 00 00 0C */	b lbl_80032648
lbl_80032640:
/* 80032640 0002E2A0  38 7E 00 08 */	addi r3, r30, 8
/* 80032644 0002E2A4  4B FF 5C 9D */	bl func_800282E0
lbl_80032648:
/* 80032648 0002E2A8  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 8003264C 0002E2AC  7C 7D 1B 78 */	mr r29, r3
/* 80032650 0002E2B0  2C 00 00 01 */	cmpwi r0, 1
/* 80032654 0002E2B4  40 82 00 28 */	bne lbl_8003267C
/* 80032658 0002E2B8  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8003265C 0002E2BC  3C 00 43 30 */	lis r0, 0x4330
/* 80032660 0002E2C0  90 01 00 18 */	stw r0, 0x18(r1)
/* 80032664 0002E2C4  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80032668 0002E2C8  C8 22 81 C0 */	lfd f1, lbl_806407C0-_SDA2_BASE_(r2)
/* 8003266C 0002E2CC  90 01 00 1C */	stw r0, 0x1c(r1)
/* 80032670 0002E2D0  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 80032674 0002E2D4  EF E0 08 28 */	fsubs f31, f0, f1
/* 80032678 0002E2D8  48 00 00 20 */	b lbl_80032698
lbl_8003267C:
/* 8003267C 0002E2DC  2C 00 00 02 */	cmpwi r0, 2
/* 80032680 0002E2E0  40 82 00 0C */	bne lbl_8003268C
/* 80032684 0002E2E4  C0 3E 00 14 */	lfs f1, 0x14(r30)
/* 80032688 0002E2E8  48 00 00 0C */	b lbl_80032694
lbl_8003268C:
/* 8003268C 0002E2EC  38 7E 00 10 */	addi r3, r30, 0x10
/* 80032690 0002E2F0  48 1F B6 E9 */	bl func_8022DD78
lbl_80032694:
/* 80032694 0002E2F4  FF E0 08 90 */	fmr f31, f1
lbl_80032698:
/* 80032698 0002E2F8  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 8003269C 0002E2FC  2C 00 00 01 */	cmpwi r0, 1
/* 800326A0 0002E300  40 82 00 0C */	bne lbl_800326AC
/* 800326A4 0002E304  80 BE 00 1C */	lwz r5, 0x1c(r30)
/* 800326A8 0002E308  48 00 00 2C */	b lbl_800326D4
lbl_800326AC:
/* 800326AC 0002E30C  2C 00 00 02 */	cmpwi r0, 2
/* 800326B0 0002E310  40 82 00 18 */	bne lbl_800326C8
/* 800326B4 0002E314  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 800326B8 0002E318  FC 00 00 1E */	fctiwz f0, f0
/* 800326BC 0002E31C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800326C0 0002E320  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800326C4 0002E324  48 00 00 0C */	b lbl_800326D0
lbl_800326C8:
/* 800326C8 0002E328  38 7E 00 18 */	addi r3, r30, 0x18
/* 800326CC 0002E32C  48 1F B6 69 */	bl func_8022DD34
lbl_800326D0:
/* 800326D0 0002E330  7C 65 1B 78 */	mr r5, r3
lbl_800326D4:
/* 800326D4 0002E334  FC 20 F8 90 */	fmr f1, f31
/* 800326D8 0002E338  7F E3 FB 78 */	mr r3, r31
/* 800326DC 0002E33C  7F A4 EB 78 */	mr r4, r29
/* 800326E0 0002E340  48 01 D6 7D */	bl func_8004FD5C
/* 800326E4 0002E344  48 00 04 A0 */	b lbl_80032B84
/* 800326E8 0002E348  A8 1E 00 08 */	lha r0, 8(r30)
/* 800326EC 0002E34C  2C 00 00 04 */	cmpwi r0, 4
/* 800326F0 0002E350  40 82 00 0C */	bne lbl_800326FC
/* 800326F4 0002E354  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 800326F8 0002E358  48 00 00 0C */	b lbl_80032704
lbl_800326FC:
/* 800326FC 0002E35C  38 7E 00 08 */	addi r3, r30, 8
/* 80032700 0002E360  4B FF 5B E1 */	bl func_800282E0
lbl_80032704:
/* 80032704 0002E364  7C 64 1B 78 */	mr r4, r3
/* 80032708 0002E368  7F E3 FB 78 */	mr r3, r31
/* 8003270C 0002E36C  48 01 D6 ED */	bl func_8004FDF8
/* 80032710 0002E370  48 00 04 74 */	b lbl_80032B84
/* 80032714 0002E374  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032718 0002E378  2C 00 00 04 */	cmpwi r0, 4
/* 8003271C 0002E37C  40 82 00 0C */	bne lbl_80032728
/* 80032720 0002E380  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80032724 0002E384  48 00 00 0C */	b lbl_80032730
lbl_80032728:
/* 80032728 0002E388  38 7E 00 08 */	addi r3, r30, 8
/* 8003272C 0002E38C  4B FF 5B B5 */	bl func_800282E0
lbl_80032730:
/* 80032730 0002E390  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 80032734 0002E394  7C 7D 1B 78 */	mr r29, r3
/* 80032738 0002E398  2C 00 00 01 */	cmpwi r0, 1
/* 8003273C 0002E39C  40 82 00 28 */	bne lbl_80032764
/* 80032740 0002E3A0  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 80032744 0002E3A4  3C 00 43 30 */	lis r0, 0x4330
/* 80032748 0002E3A8  90 01 00 18 */	stw r0, 0x18(r1)
/* 8003274C 0002E3AC  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80032750 0002E3B0  C8 22 81 C0 */	lfd f1, lbl_806407C0-_SDA2_BASE_(r2)
/* 80032754 0002E3B4  90 01 00 1C */	stw r0, 0x1c(r1)
/* 80032758 0002E3B8  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8003275C 0002E3BC  EF E0 08 28 */	fsubs f31, f0, f1
/* 80032760 0002E3C0  48 00 00 20 */	b lbl_80032780
lbl_80032764:
/* 80032764 0002E3C4  2C 00 00 02 */	cmpwi r0, 2
/* 80032768 0002E3C8  40 82 00 0C */	bne lbl_80032774
/* 8003276C 0002E3CC  C0 3E 00 14 */	lfs f1, 0x14(r30)
/* 80032770 0002E3D0  48 00 00 0C */	b lbl_8003277C
lbl_80032774:
/* 80032774 0002E3D4  38 7E 00 10 */	addi r3, r30, 0x10
/* 80032778 0002E3D8  48 1F B6 01 */	bl func_8022DD78
lbl_8003277C:
/* 8003277C 0002E3DC  FF E0 08 90 */	fmr f31, f1
lbl_80032780:
/* 80032780 0002E3E0  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80032784 0002E3E4  2C 00 00 01 */	cmpwi r0, 1
/* 80032788 0002E3E8  40 82 00 0C */	bne lbl_80032794
/* 8003278C 0002E3EC  80 BE 00 1C */	lwz r5, 0x1c(r30)
/* 80032790 0002E3F0  48 00 00 2C */	b lbl_800327BC
lbl_80032794:
/* 80032794 0002E3F4  2C 00 00 02 */	cmpwi r0, 2
/* 80032798 0002E3F8  40 82 00 18 */	bne lbl_800327B0
/* 8003279C 0002E3FC  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 800327A0 0002E400  FC 00 00 1E */	fctiwz f0, f0
/* 800327A4 0002E404  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800327A8 0002E408  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800327AC 0002E40C  48 00 00 0C */	b lbl_800327B8
lbl_800327B0:
/* 800327B0 0002E410  38 7E 00 18 */	addi r3, r30, 0x18
/* 800327B4 0002E414  48 1F B5 81 */	bl func_8022DD34
lbl_800327B8:
/* 800327B8 0002E418  7C 65 1B 78 */	mr r5, r3
lbl_800327BC:
/* 800327BC 0002E41C  FC 20 F8 90 */	fmr f1, f31
/* 800327C0 0002E420  7F E3 FB 78 */	mr r3, r31
/* 800327C4 0002E424  7F A4 EB 78 */	mr r4, r29
/* 800327C8 0002E428  48 01 D6 91 */	bl func_8004FE58
/* 800327CC 0002E42C  48 00 03 B8 */	b lbl_80032B84
/* 800327D0 0002E430  A8 1E 00 08 */	lha r0, 8(r30)
/* 800327D4 0002E434  2C 00 00 21 */	cmpwi r0, 0x21
/* 800327D8 0002E438  40 82 03 AC */	bne lbl_80032B84
/* 800327DC 0002E43C  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 800327E0 0002E440  2C 1B 00 00 */	cmpwi r27, 0
/* 800327E4 0002E444  41 82 03 A0 */	beq lbl_80032B84
/* 800327E8 0002E448  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800327EC 0002E44C  2C 00 00 01 */	cmpwi r0, 1
/* 800327F0 0002E450  40 82 00 0C */	bne lbl_800327FC
/* 800327F4 0002E454  83 BE 00 14 */	lwz r29, 0x14(r30)
/* 800327F8 0002E458  48 00 00 2C */	b lbl_80032824
lbl_800327FC:
/* 800327FC 0002E45C  2C 00 00 02 */	cmpwi r0, 2
/* 80032800 0002E460  40 82 00 18 */	bne lbl_80032818
/* 80032804 0002E464  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80032808 0002E468  FC 00 00 1E */	fctiwz f0, f0
/* 8003280C 0002E46C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80032810 0002E470  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032814 0002E474  48 00 00 0C */	b lbl_80032820
lbl_80032818:
/* 80032818 0002E478  38 7E 00 10 */	addi r3, r30, 0x10
/* 8003281C 0002E47C  48 1F B5 19 */	bl func_8022DD34
lbl_80032820:
/* 80032820 0002E480  7C 7D 1B 78 */	mr r29, r3
lbl_80032824:
/* 80032824 0002E484  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80032828 0002E488  2C 00 00 01 */	cmpwi r0, 1
/* 8003282C 0002E48C  40 82 00 0C */	bne lbl_80032838
/* 80032830 0002E490  83 DE 00 1C */	lwz r30, 0x1c(r30)
/* 80032834 0002E494  48 00 00 2C */	b lbl_80032860
lbl_80032838:
/* 80032838 0002E498  2C 00 00 02 */	cmpwi r0, 2
/* 8003283C 0002E49C  40 82 00 18 */	bne lbl_80032854
/* 80032840 0002E4A0  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80032844 0002E4A4  FC 00 00 1E */	fctiwz f0, f0
/* 80032848 0002E4A8  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003284C 0002E4AC  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032850 0002E4B0  48 00 00 0C */	b lbl_8003285C
lbl_80032854:
/* 80032854 0002E4B4  38 7E 00 18 */	addi r3, r30, 0x18
/* 80032858 0002E4B8  48 1F B4 DD */	bl func_8022DD34
lbl_8003285C:
/* 8003285C 0002E4BC  7C 7E 1B 78 */	mr r30, r3
lbl_80032860:
/* 80032860 0002E4C0  7F 63 DB 78 */	mr r3, r27
/* 80032864 0002E4C4  7F A4 EB 78 */	mr r4, r29
/* 80032868 0002E4C8  48 00 70 85 */	bl func_800398EC
/* 8003286C 0002E4CC  7C 64 1B 78 */	mr r4, r3
/* 80032870 0002E4D0  7F E3 FB 78 */	mr r3, r31
/* 80032874 0002E4D4  7F C5 F3 78 */	mr r5, r30
/* 80032878 0002E4D8  48 01 D3 9D */	bl func_8004FC14
/* 8003287C 0002E4DC  48 00 03 08 */	b lbl_80032B84
/* 80032880 0002E4E0  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032884 0002E4E4  2C 00 00 01 */	cmpwi r0, 1
/* 80032888 0002E4E8  40 82 00 0C */	bne lbl_80032894
/* 8003288C 0002E4EC  83 BE 00 0C */	lwz r29, 0xc(r30)
/* 80032890 0002E4F0  48 00 00 2C */	b lbl_800328BC
lbl_80032894:
/* 80032894 0002E4F4  2C 00 00 02 */	cmpwi r0, 2
/* 80032898 0002E4F8  40 82 00 18 */	bne lbl_800328B0
/* 8003289C 0002E4FC  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 800328A0 0002E500  FC 00 00 1E */	fctiwz f0, f0
/* 800328A4 0002E504  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800328A8 0002E508  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800328AC 0002E50C  48 00 00 0C */	b lbl_800328B8
lbl_800328B0:
/* 800328B0 0002E510  38 7E 00 08 */	addi r3, r30, 8
/* 800328B4 0002E514  48 1F B4 81 */	bl func_8022DD34
lbl_800328B8:
/* 800328B8 0002E518  7C 7D 1B 78 */	mr r29, r3
lbl_800328BC:
/* 800328BC 0002E51C  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800328C0 0002E520  2C 00 00 01 */	cmpwi r0, 1
/* 800328C4 0002E524  40 82 00 0C */	bne lbl_800328D0
/* 800328C8 0002E528  83 9E 00 14 */	lwz r28, 0x14(r30)
/* 800328CC 0002E52C  48 00 00 2C */	b lbl_800328F8
lbl_800328D0:
/* 800328D0 0002E530  2C 00 00 02 */	cmpwi r0, 2
/* 800328D4 0002E534  40 82 00 18 */	bne lbl_800328EC
/* 800328D8 0002E538  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 800328DC 0002E53C  FC 00 00 1E */	fctiwz f0, f0
/* 800328E0 0002E540  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800328E4 0002E544  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800328E8 0002E548  48 00 00 0C */	b lbl_800328F4
lbl_800328EC:
/* 800328EC 0002E54C  38 7E 00 10 */	addi r3, r30, 0x10
/* 800328F0 0002E550  48 1F B4 45 */	bl func_8022DD34
lbl_800328F4:
/* 800328F4 0002E554  7C 7C 1B 78 */	mr r28, r3
lbl_800328F8:
/* 800328F8 0002E558  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 800328FC 0002E55C  2C 00 00 01 */	cmpwi r0, 1
/* 80032900 0002E560  40 82 00 0C */	bne lbl_8003290C
/* 80032904 0002E564  83 7E 00 1C */	lwz r27, 0x1c(r30)
/* 80032908 0002E568  48 00 00 2C */	b lbl_80032934
lbl_8003290C:
/* 8003290C 0002E56C  2C 00 00 02 */	cmpwi r0, 2
/* 80032910 0002E570  40 82 00 18 */	bne lbl_80032928
/* 80032914 0002E574  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80032918 0002E578  FC 00 00 1E */	fctiwz f0, f0
/* 8003291C 0002E57C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80032920 0002E580  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032924 0002E584  48 00 00 0C */	b lbl_80032930
lbl_80032928:
/* 80032928 0002E588  38 7E 00 18 */	addi r3, r30, 0x18
/* 8003292C 0002E58C  48 1F B4 09 */	bl func_8022DD34
lbl_80032930:
/* 80032930 0002E590  7C 7B 1B 78 */	mr r27, r3
lbl_80032934:
/* 80032934 0002E594  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 80032938 0002E598  2C 00 00 01 */	cmpwi r0, 1
/* 8003293C 0002E59C  40 82 00 0C */	bne lbl_80032948
/* 80032940 0002E5A0  80 1E 00 24 */	lwz r0, 0x24(r30)
/* 80032944 0002E5A4  48 00 00 2C */	b lbl_80032970
lbl_80032948:
/* 80032948 0002E5A8  2C 00 00 02 */	cmpwi r0, 2
/* 8003294C 0002E5AC  40 82 00 18 */	bne lbl_80032964
/* 80032950 0002E5B0  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 80032954 0002E5B4  FC 00 00 1E */	fctiwz f0, f0
/* 80032958 0002E5B8  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003295C 0002E5BC  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032960 0002E5C0  48 00 00 0C */	b lbl_8003296C
lbl_80032964:
/* 80032964 0002E5C4  38 7E 00 20 */	addi r3, r30, 0x20
/* 80032968 0002E5C8  48 1F B3 CD */	bl func_8022DD34
lbl_8003296C:
/* 8003296C 0002E5CC  7C 60 1B 78 */	mr r0, r3
lbl_80032970:
/* 80032970 0002E5D0  9B A1 00 08 */	stb r29, 8(r1)
/* 80032974 0002E5D4  7F E3 FB 78 */	mr r3, r31
/* 80032978 0002E5D8  38 81 00 08 */	addi r4, r1, 8
/* 8003297C 0002E5DC  9B 81 00 09 */	stb r28, 9(r1)
/* 80032980 0002E5E0  9B 61 00 0A */	stb r27, 0xa(r1)
/* 80032984 0002E5E4  98 01 00 0B */	stb r0, 0xb(r1)
/* 80032988 0002E5E8  48 01 D5 6D */	bl func_8004FEF4
/* 8003298C 0002E5EC  48 00 01 F8 */	b lbl_80032B84
/* 80032990 0002E5F0  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032994 0002E5F4  2C 00 00 01 */	cmpwi r0, 1
/* 80032998 0002E5F8  40 82 00 0C */	bne lbl_800329A4
/* 8003299C 0002E5FC  83 7E 00 0C */	lwz r27, 0xc(r30)
/* 800329A0 0002E600  48 00 00 2C */	b lbl_800329CC
lbl_800329A4:
/* 800329A4 0002E604  2C 00 00 02 */	cmpwi r0, 2
/* 800329A8 0002E608  40 82 00 18 */	bne lbl_800329C0
/* 800329AC 0002E60C  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 800329B0 0002E610  FC 00 00 1E */	fctiwz f0, f0
/* 800329B4 0002E614  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800329B8 0002E618  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800329BC 0002E61C  48 00 00 0C */	b lbl_800329C8
lbl_800329C0:
/* 800329C0 0002E620  38 7E 00 08 */	addi r3, r30, 8
/* 800329C4 0002E624  48 1F B3 71 */	bl func_8022DD34
lbl_800329C8:
/* 800329C8 0002E628  7C 7B 1B 78 */	mr r27, r3
lbl_800329CC:
/* 800329CC 0002E62C  A8 1E 00 10 */	lha r0, 0x10(r30)
/* 800329D0 0002E630  2C 00 00 01 */	cmpwi r0, 1
/* 800329D4 0002E634  40 82 00 0C */	bne lbl_800329E0
/* 800329D8 0002E638  83 9E 00 14 */	lwz r28, 0x14(r30)
/* 800329DC 0002E63C  48 00 00 2C */	b lbl_80032A08
lbl_800329E0:
/* 800329E0 0002E640  2C 00 00 02 */	cmpwi r0, 2
/* 800329E4 0002E644  40 82 00 18 */	bne lbl_800329FC
/* 800329E8 0002E648  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 800329EC 0002E64C  FC 00 00 1E */	fctiwz f0, f0
/* 800329F0 0002E650  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800329F4 0002E654  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 800329F8 0002E658  48 00 00 0C */	b lbl_80032A04
lbl_800329FC:
/* 800329FC 0002E65C  38 7E 00 10 */	addi r3, r30, 0x10
/* 80032A00 0002E660  48 1F B3 35 */	bl func_8022DD34
lbl_80032A04:
/* 80032A04 0002E664  7C 7C 1B 78 */	mr r28, r3
lbl_80032A08:
/* 80032A08 0002E668  A8 1E 00 18 */	lha r0, 0x18(r30)
/* 80032A0C 0002E66C  2C 00 00 01 */	cmpwi r0, 1
/* 80032A10 0002E670  40 82 00 0C */	bne lbl_80032A1C
/* 80032A14 0002E674  83 BE 00 1C */	lwz r29, 0x1c(r30)
/* 80032A18 0002E678  48 00 00 2C */	b lbl_80032A44
lbl_80032A1C:
/* 80032A1C 0002E67C  2C 00 00 02 */	cmpwi r0, 2
/* 80032A20 0002E680  40 82 00 18 */	bne lbl_80032A38
/* 80032A24 0002E684  C0 1E 00 1C */	lfs f0, 0x1c(r30)
/* 80032A28 0002E688  FC 00 00 1E */	fctiwz f0, f0
/* 80032A2C 0002E68C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80032A30 0002E690  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032A34 0002E694  48 00 00 0C */	b lbl_80032A40
lbl_80032A38:
/* 80032A38 0002E698  38 7E 00 18 */	addi r3, r30, 0x18
/* 80032A3C 0002E69C  48 1F B2 F9 */	bl func_8022DD34
lbl_80032A40:
/* 80032A40 0002E6A0  7C 7D 1B 78 */	mr r29, r3
lbl_80032A44:
/* 80032A44 0002E6A4  A8 1E 00 20 */	lha r0, 0x20(r30)
/* 80032A48 0002E6A8  2C 00 00 01 */	cmpwi r0, 1
/* 80032A4C 0002E6AC  40 82 00 0C */	bne lbl_80032A58
/* 80032A50 0002E6B0  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 80032A54 0002E6B4  48 00 00 28 */	b lbl_80032A7C
lbl_80032A58:
/* 80032A58 0002E6B8  2C 00 00 02 */	cmpwi r0, 2
/* 80032A5C 0002E6BC  40 82 00 18 */	bne lbl_80032A74
/* 80032A60 0002E6C0  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 80032A64 0002E6C4  FC 00 00 1E */	fctiwz f0, f0
/* 80032A68 0002E6C8  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80032A6C 0002E6CC  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032A70 0002E6D0  48 00 00 0C */	b lbl_80032A7C
lbl_80032A74:
/* 80032A74 0002E6D4  38 7E 00 20 */	addi r3, r30, 0x20
/* 80032A78 0002E6D8  48 1F B2 BD */	bl func_8022DD34
lbl_80032A7C:
/* 80032A7C 0002E6DC  9B 61 00 08 */	stb r27, 8(r1)
/* 80032A80 0002E6E0  9B 81 00 09 */	stb r28, 9(r1)
/* 80032A84 0002E6E4  9B A1 00 0A */	stb r29, 0xa(r1)
/* 80032A88 0002E6E8  98 61 00 0B */	stb r3, 0xb(r1)
/* 80032A8C 0002E6EC  A8 1E 00 28 */	lha r0, 0x28(r30)
/* 80032A90 0002E6F0  2C 00 00 01 */	cmpwi r0, 1
/* 80032A94 0002E6F4  40 82 00 28 */	bne lbl_80032ABC
/* 80032A98 0002E6F8  80 7E 00 2C */	lwz r3, 0x2c(r30)
/* 80032A9C 0002E6FC  3C 00 43 30 */	lis r0, 0x4330
/* 80032AA0 0002E700  90 01 00 18 */	stw r0, 0x18(r1)
/* 80032AA4 0002E704  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80032AA8 0002E708  C8 22 81 C0 */	lfd f1, lbl_806407C0-_SDA2_BASE_(r2)
/* 80032AAC 0002E70C  90 01 00 1C */	stw r0, 0x1c(r1)
/* 80032AB0 0002E710  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 80032AB4 0002E714  EF E0 08 28 */	fsubs f31, f0, f1
/* 80032AB8 0002E718  48 00 00 20 */	b lbl_80032AD8
lbl_80032ABC:
/* 80032ABC 0002E71C  2C 00 00 02 */	cmpwi r0, 2
/* 80032AC0 0002E720  40 82 00 0C */	bne lbl_80032ACC
/* 80032AC4 0002E724  C0 3E 00 2C */	lfs f1, 0x2c(r30)
/* 80032AC8 0002E728  48 00 00 0C */	b lbl_80032AD4
lbl_80032ACC:
/* 80032ACC 0002E72C  38 7E 00 28 */	addi r3, r30, 0x28
/* 80032AD0 0002E730  48 1F B2 A9 */	bl func_8022DD78
lbl_80032AD4:
/* 80032AD4 0002E734  FF E0 08 90 */	fmr f31, f1
lbl_80032AD8:
/* 80032AD8 0002E738  A8 1E 00 30 */	lha r0, 0x30(r30)
/* 80032ADC 0002E73C  2C 00 00 01 */	cmpwi r0, 1
/* 80032AE0 0002E740  40 82 00 0C */	bne lbl_80032AEC
/* 80032AE4 0002E744  80 BE 00 34 */	lwz r5, 0x34(r30)
/* 80032AE8 0002E748  48 00 00 2C */	b lbl_80032B14
lbl_80032AEC:
/* 80032AEC 0002E74C  2C 00 00 02 */	cmpwi r0, 2
/* 80032AF0 0002E750  40 82 00 18 */	bne lbl_80032B08
/* 80032AF4 0002E754  C0 1E 00 34 */	lfs f0, 0x34(r30)
/* 80032AF8 0002E758  FC 00 00 1E */	fctiwz f0, f0
/* 80032AFC 0002E75C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 80032B00 0002E760  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80032B04 0002E764  48 00 00 0C */	b lbl_80032B10
lbl_80032B08:
/* 80032B08 0002E768  38 7E 00 30 */	addi r3, r30, 0x30
/* 80032B0C 0002E76C  48 1F B2 29 */	bl func_8022DD34
lbl_80032B10:
/* 80032B10 0002E770  7C 65 1B 78 */	mr r5, r3
lbl_80032B14:
/* 80032B14 0002E774  FC 20 F8 90 */	fmr f1, f31
/* 80032B18 0002E778  7F E3 FB 78 */	mr r3, r31
/* 80032B1C 0002E77C  38 81 00 08 */	addi r4, r1, 8
/* 80032B20 0002E780  48 01 D4 6D */	bl func_8004FF8C
/* 80032B24 0002E784  48 00 00 60 */	b lbl_80032B84
/* 80032B28 0002E788  A8 1E 00 08 */	lha r0, 8(r30)
/* 80032B2C 0002E78C  2C 00 00 04 */	cmpwi r0, 4
/* 80032B30 0002E790  40 82 00 0C */	bne lbl_80032B3C
/* 80032B34 0002E794  80 BE 00 0C */	lwz r5, 0xc(r30)
/* 80032B38 0002E798  48 00 00 10 */	b lbl_80032B48
lbl_80032B3C:
/* 80032B3C 0002E79C  38 7E 00 08 */	addi r3, r30, 8
/* 80032B40 0002E7A0  4B FF 57 A1 */	bl func_800282E0
/* 80032B44 0002E7A4  7C 65 1B 78 */	mr r5, r3
lbl_80032B48:
/* 80032B48 0002E7A8  C0 25 00 00 */	lfs f1, 0(r5)
/* 80032B4C 0002E7AC  7F E3 FB 78 */	mr r3, r31
/* 80032B50 0002E7B0  C0 02 81 B8 */	lfs f0, lbl_806407B8-_SDA2_BASE_(r2)
/* 80032B54 0002E7B4  38 81 00 0C */	addi r4, r1, 0xc
/* 80032B58 0002E7B8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80032B5C 0002E7BC  EC 40 00 72 */	fmuls f2, f0, f1
/* 80032B60 0002E7C0  C0 25 00 04 */	lfs f1, 4(r5)
/* 80032B64 0002E7C4  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 80032B68 0002E7C8  EC 20 00 72 */	fmuls f1, f0, f1
/* 80032B6C 0002E7CC  C0 65 00 08 */	lfs f3, 8(r5)
/* 80032B70 0002E7D0  EC 00 00 F2 */	fmuls f0, f0, f3
/* 80032B74 0002E7D4  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80032B78 0002E7D8  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 80032B7C 0002E7DC  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80032B80 0002E7E0  48 01 D4 A1 */	bl func_80050020
lbl_80032B84:
/* 80032B84 0002E7E4  38 60 00 01 */	li r3, 1
lbl_80032B88:
/* 80032B88 0002E7E8  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80032B8C 0002E7EC  39 61 00 40 */	addi r11, r1, 0x40
/* 80032B90 0002E7F0  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 80032B94 0002E7F4  48 19 45 E1 */	bl _restgpr_27
/* 80032B98 0002E7F8  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80032B9C 0002E7FC  7C 08 03 A6 */	mtlr r0
/* 80032BA0 0002E800  38 21 00 50 */	addi r1, r1, 0x50
/* 80032BA4 0002E804  4E 80 00 20 */	blr

.global func_80032BA8
func_80032BA8:
/* 80032BA8 0002E808  38 A0 00 01 */	li r5, 1
/* 80032BAC 0002E80C  38 6D 97 78 */	addi r3, r13, lbl_8063EA38-_SDA_BASE_
/* 80032BB0 0002E810  38 80 00 04 */	li r4, 4
/* 80032BB4 0002E814  38 00 00 00 */	li r0, 0
/* 80032BB8 0002E818  98 AD 97 78 */	stb r5, lbl_8063EA38-_SDA_BASE_(r13)
/* 80032BBC 0002E81C  B0 83 00 02 */	sth r4, 2(r3)
/* 80032BC0 0002E820  98 03 00 04 */	stb r0, 4(r3)
/* 80032BC4 0002E824  4E 80 00 20 */	blr

.global lbl_80032BC8
lbl_80032BC8:
/* 80032BC8 0002E828  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80032BCC 0002E82C  7C 08 02 A6 */	mflr r0
/* 80032BD0 0002E830  90 01 00 24 */	stw r0, 0x24(r1)
/* 80032BD4 0002E834  38 04 FF EF */	addi r0, r4, -17
/* 80032BD8 0002E838  28 00 00 22 */	cmplwi r0, 0x22
/* 80032BDC 0002E83C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80032BE0 0002E840  41 81 02 38 */	bgt lbl_80032E18
/* 80032BE4 0002E844  3C 60 80 41 */	lis r3, lbl_8040A1E8@ha
/* 80032BE8 0002E848  54 00 10 3A */	slwi r0, r0, 2
/* 80032BEC 0002E84C  38 63 A1 E8 */	addi r3, r3, lbl_8040A1E8@l
/* 80032BF0 0002E850  7C 63 00 2E */	lwzx r3, r3, r0
/* 80032BF4 0002E854  7C 69 03 A6 */	mtctr r3
/* 80032BF8 0002E858  4E 80 04 20 */	bctr
/* 80032BFC 0002E85C  A8 05 00 08 */	lha r0, 8(r5)
/* 80032C00 0002E860  2C 00 00 01 */	cmpwi r0, 1
/* 80032C04 0002E864  40 82 00 0C */	bne lbl_80032C10
/* 80032C08 0002E868  83 E5 00 0C */	lwz r31, 0xc(r5)
/* 80032C0C 0002E86C  48 00 00 2C */	b lbl_80032C38
lbl_80032C10:
/* 80032C10 0002E870  2C 00 00 02 */	cmpwi r0, 2
/* 80032C14 0002E874  40 82 00 18 */	bne lbl_80032C2C
/* 80032C18 0002E878  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032C1C 0002E87C  FC 00 00 1E */	fctiwz f0, f0
/* 80032C20 0002E880  D8 01 00 08 */	stfd f0, 8(r1)
/* 80032C24 0002E884  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80032C28 0002E888  48 00 00 0C */	b lbl_80032C34
lbl_80032C2C:
/* 80032C2C 0002E88C  38 65 00 08 */	addi r3, r5, 8
/* 80032C30 0002E890  48 1F B1 05 */	bl func_8022DD34
lbl_80032C34:
/* 80032C34 0002E894  7C 7F 1B 78 */	mr r31, r3
lbl_80032C38:
/* 80032C38 0002E898  4B FD 9B B1 */	bl func_8000C7E8
/* 80032C3C 0002E89C  7F E5 FB 78 */	mr r5, r31
/* 80032C40 0002E8A0  38 80 00 00 */	li r4, 0
/* 80032C44 0002E8A4  4B FE F2 81 */	bl func_80021EC4
/* 80032C48 0002E8A8  48 00 01 E0 */	b lbl_80032E28
/* 80032C4C 0002E8AC  A8 05 00 08 */	lha r0, 8(r5)
/* 80032C50 0002E8B0  2C 00 00 01 */	cmpwi r0, 1
/* 80032C54 0002E8B4  40 82 00 4C */	bne lbl_80032CA0
/* 80032C58 0002E8B8  40 82 00 0C */	bne lbl_80032C64
/* 80032C5C 0002E8BC  83 E5 00 0C */	lwz r31, 0xc(r5)
/* 80032C60 0002E8C0  48 00 00 2C */	b lbl_80032C8C
lbl_80032C64:
/* 80032C64 0002E8C4  2C 00 00 02 */	cmpwi r0, 2
/* 80032C68 0002E8C8  40 82 00 18 */	bne lbl_80032C80
/* 80032C6C 0002E8CC  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032C70 0002E8D0  FC 00 00 1E */	fctiwz f0, f0
/* 80032C74 0002E8D4  D8 01 00 08 */	stfd f0, 8(r1)
/* 80032C78 0002E8D8  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80032C7C 0002E8DC  48 00 00 0C */	b lbl_80032C88
lbl_80032C80:
/* 80032C80 0002E8E0  38 65 00 08 */	addi r3, r5, 8
/* 80032C84 0002E8E4  48 1F B0 B1 */	bl func_8022DD34
lbl_80032C88:
/* 80032C88 0002E8E8  7C 7F 1B 78 */	mr r31, r3
lbl_80032C8C:
/* 80032C8C 0002E8EC  4B FD 9B 5D */	bl func_8000C7E8
/* 80032C90 0002E8F0  7F E5 FB 78 */	mr r5, r31
/* 80032C94 0002E8F4  38 80 00 04 */	li r4, 4
/* 80032C98 0002E8F8  4B FE F2 2D */	bl func_80021EC4
/* 80032C9C 0002E8FC  48 00 01 8C */	b lbl_80032E28
lbl_80032CA0:
/* 80032CA0 0002E900  4B FD 9B 49 */	bl func_8000C7E8
/* 80032CA4 0002E904  38 80 00 04 */	li r4, 4
/* 80032CA8 0002E908  38 A0 00 00 */	li r5, 0
/* 80032CAC 0002E90C  4B FE F2 19 */	bl func_80021EC4
/* 80032CB0 0002E910  48 00 01 78 */	b lbl_80032E28
/* 80032CB4 0002E914  4B FD 9B 35 */	bl func_8000C7E8
/* 80032CB8 0002E918  38 80 00 05 */	li r4, 5
/* 80032CBC 0002E91C  38 A0 00 00 */	li r5, 0
/* 80032CC0 0002E920  4B FE F2 05 */	bl func_80021EC4
/* 80032CC4 0002E924  48 00 01 64 */	b lbl_80032E28
/* 80032CC8 0002E928  4B FD 9B 21 */	bl func_8000C7E8
/* 80032CCC 0002E92C  38 80 00 06 */	li r4, 6
/* 80032CD0 0002E930  38 A0 00 00 */	li r5, 0
/* 80032CD4 0002E934  4B FE F1 F1 */	bl func_80021EC4
/* 80032CD8 0002E938  48 00 01 50 */	b lbl_80032E28
/* 80032CDC 0002E93C  4B FD 9B 0D */	bl func_8000C7E8
/* 80032CE0 0002E940  38 80 00 07 */	li r4, 7
/* 80032CE4 0002E944  38 A0 00 00 */	li r5, 0
/* 80032CE8 0002E948  4B FE F1 DD */	bl func_80021EC4
/* 80032CEC 0002E94C  48 00 01 3C */	b lbl_80032E28
/* 80032CF0 0002E950  4B FD 9A F9 */	bl func_8000C7E8
/* 80032CF4 0002E954  38 80 00 08 */	li r4, 8
/* 80032CF8 0002E958  38 A0 00 00 */	li r5, 0
/* 80032CFC 0002E95C  4B FE F1 C9 */	bl func_80021EC4
/* 80032D00 0002E960  48 00 01 28 */	b lbl_80032E28
/* 80032D04 0002E964  4B FD 9A E5 */	bl func_8000C7E8
/* 80032D08 0002E968  38 80 00 09 */	li r4, 9
/* 80032D0C 0002E96C  38 A0 00 00 */	li r5, 0
/* 80032D10 0002E970  4B FE F1 B5 */	bl func_80021EC4
/* 80032D14 0002E974  48 00 01 14 */	b lbl_80032E28
/* 80032D18 0002E978  4B FD 9A D1 */	bl func_8000C7E8
/* 80032D1C 0002E97C  38 80 00 0A */	li r4, 0xa
/* 80032D20 0002E980  38 A0 00 00 */	li r5, 0
/* 80032D24 0002E984  4B FE F1 A1 */	bl func_80021EC4
/* 80032D28 0002E988  48 00 01 00 */	b lbl_80032E28
/* 80032D2C 0002E98C  4B FD 9A BD */	bl func_8000C7E8
/* 80032D30 0002E990  38 80 00 0B */	li r4, 0xb
/* 80032D34 0002E994  38 A0 00 00 */	li r5, 0
/* 80032D38 0002E998  4B FE F1 8D */	bl func_80021EC4
/* 80032D3C 0002E99C  48 00 00 EC */	b lbl_80032E28
/* 80032D40 0002E9A0  A8 05 00 08 */	lha r0, 8(r5)
/* 80032D44 0002E9A4  2C 00 00 01 */	cmpwi r0, 1
/* 80032D48 0002E9A8  40 82 00 0C */	bne lbl_80032D54
/* 80032D4C 0002E9AC  83 E5 00 0C */	lwz r31, 0xc(r5)
/* 80032D50 0002E9B0  48 00 00 2C */	b lbl_80032D7C
lbl_80032D54:
/* 80032D54 0002E9B4  2C 00 00 02 */	cmpwi r0, 2
/* 80032D58 0002E9B8  40 82 00 18 */	bne lbl_80032D70
/* 80032D5C 0002E9BC  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032D60 0002E9C0  FC 00 00 1E */	fctiwz f0, f0
/* 80032D64 0002E9C4  D8 01 00 08 */	stfd f0, 8(r1)
/* 80032D68 0002E9C8  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80032D6C 0002E9CC  48 00 00 0C */	b lbl_80032D78
lbl_80032D70:
/* 80032D70 0002E9D0  38 65 00 08 */	addi r3, r5, 8
/* 80032D74 0002E9D4  48 1F AF C1 */	bl func_8022DD34
lbl_80032D78:
/* 80032D78 0002E9D8  7C 7F 1B 78 */	mr r31, r3
lbl_80032D7C:
/* 80032D7C 0002E9DC  4B FD 9A 6D */	bl func_8000C7E8
/* 80032D80 0002E9E0  7F E5 FB 78 */	mr r5, r31
/* 80032D84 0002E9E4  38 80 00 0C */	li r4, 0xc
/* 80032D88 0002E9E8  4B FE F1 3D */	bl func_80021EC4
/* 80032D8C 0002E9EC  48 00 00 9C */	b lbl_80032E28
/* 80032D90 0002E9F0  A8 05 00 08 */	lha r0, 8(r5)
/* 80032D94 0002E9F4  2C 00 00 01 */	cmpwi r0, 1
/* 80032D98 0002E9F8  40 82 00 0C */	bne lbl_80032DA4
/* 80032D9C 0002E9FC  80 65 00 0C */	lwz r3, 0xc(r5)
/* 80032DA0 0002EA00  48 00 00 28 */	b lbl_80032DC8
lbl_80032DA4:
/* 80032DA4 0002EA04  2C 00 00 02 */	cmpwi r0, 2
/* 80032DA8 0002EA08  40 82 00 18 */	bne lbl_80032DC0
/* 80032DAC 0002EA0C  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032DB0 0002EA10  FC 00 00 1E */	fctiwz f0, f0
/* 80032DB4 0002EA14  D8 01 00 08 */	stfd f0, 8(r1)
/* 80032DB8 0002EA18  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80032DBC 0002EA1C  48 00 00 0C */	b lbl_80032DC8
lbl_80032DC0:
/* 80032DC0 0002EA20  38 65 00 08 */	addi r3, r5, 8
/* 80032DC4 0002EA24  48 1F AF 71 */	bl func_8022DD34
lbl_80032DC8:
/* 80032DC8 0002EA28  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80032DCC 0002EA2C  4B FF 19 E1 */	bl func_800247AC
/* 80032DD0 0002EA30  48 00 00 58 */	b lbl_80032E28
/* 80032DD4 0002EA34  A8 05 00 08 */	lha r0, 8(r5)
/* 80032DD8 0002EA38  2C 00 00 01 */	cmpwi r0, 1
/* 80032DDC 0002EA3C  40 82 00 0C */	bne lbl_80032DE8
/* 80032DE0 0002EA40  80 65 00 0C */	lwz r3, 0xc(r5)
/* 80032DE4 0002EA44  48 00 00 28 */	b lbl_80032E0C
lbl_80032DE8:
/* 80032DE8 0002EA48  2C 00 00 02 */	cmpwi r0, 2
/* 80032DEC 0002EA4C  40 82 00 18 */	bne lbl_80032E04
/* 80032DF0 0002EA50  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80032DF4 0002EA54  FC 00 00 1E */	fctiwz f0, f0
/* 80032DF8 0002EA58  D8 01 00 08 */	stfd f0, 8(r1)
/* 80032DFC 0002EA5C  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80032E00 0002EA60  48 00 00 0C */	b lbl_80032E0C
lbl_80032E04:
/* 80032E04 0002EA64  38 65 00 08 */	addi r3, r5, 8
/* 80032E08 0002EA68  48 1F AF 2D */	bl func_8022DD34
lbl_80032E0C:
/* 80032E0C 0002EA6C  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80032E10 0002EA70  4B FF 1A 91 */	bl func_800248A0
/* 80032E14 0002EA74  48 00 00 14 */	b lbl_80032E28
lbl_80032E18:
/* 80032E18 0002EA78  4B FD 99 D1 */	bl func_8000C7E8
/* 80032E1C 0002EA7C  38 80 00 0D */	li r4, 0xd
/* 80032E20 0002EA80  38 A0 00 00 */	li r5, 0
/* 80032E24 0002EA84  4B FE F0 A1 */	bl func_80021EC4
lbl_80032E28:
/* 80032E28 0002EA88  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80032E2C 0002EA8C  38 60 00 01 */	li r3, 1
/* 80032E30 0002EA90  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80032E34 0002EA94  7C 08 03 A6 */	mtlr r0
/* 80032E38 0002EA98  38 21 00 20 */	addi r1, r1, 0x20
/* 80032E3C 0002EA9C  4E 80 00 20 */	blr

.global func_80032E40
func_80032E40:
/* 80032E40 0002EAA0  38 A0 00 01 */	li r5, 1
/* 80032E44 0002EAA4  38 6D 97 80 */	addi r3, r13, lbl_8063EA40-_SDA_BASE_
/* 80032E48 0002EAA8  38 80 00 04 */	li r4, 4
/* 80032E4C 0002EAAC  38 00 00 00 */	li r0, 0
/* 80032E50 0002EAB0  98 AD 97 80 */	stb r5, lbl_8063EA40-_SDA_BASE_(r13)
/* 80032E54 0002EAB4  B0 83 00 02 */	sth r4, 2(r3)
/* 80032E58 0002EAB8  98 03 00 04 */	stb r0, 4(r3)
/* 80032E5C 0002EABC  4E 80 00 20 */	blr

.global func_80032E60
func_80032E60:
/* 80032E60 0002EAC0  4E 80 00 20 */	blr

.global func_80032E64
func_80032E64:
/* 80032E64 0002EAC4  A0 A4 00 00 */	lhz r5, 0(r4)
/* 80032E68 0002EAC8  38 04 00 08 */	addi r0, r4, 8
/* 80032E6C 0002EACC  38 C0 00 00 */	li r6, 0
/* 80032E70 0002EAD0  90 A3 00 00 */	stw r5, 0(r3)
/* 80032E74 0002EAD4  90 03 00 04 */	stw r0, 4(r3)
/* 80032E78 0002EAD8  48 00 00 34 */	b lbl_80032EAC
lbl_80032E7C:
/* 80032E7C 0002EADC  7C 04 02 14 */	add r0, r4, r0
/* 80032E80 0002EAE0  7C 05 31 2E */	stwx r0, r5, r6
/* 80032E84 0002EAE4  80 A3 00 04 */	lwz r5, 4(r3)
/* 80032E88 0002EAE8  7C A5 30 2E */	lwzx r5, r5, r6
/* 80032E8C 0002EAEC  48 00 00 10 */	b lbl_80032E9C
lbl_80032E90:
/* 80032E90 0002EAF0  7C 04 02 14 */	add r0, r4, r0
/* 80032E94 0002EAF4  90 05 00 00 */	stw r0, 0(r5)
/* 80032E98 0002EAF8  38 A5 00 04 */	addi r5, r5, 4
lbl_80032E9C:
/* 80032E9C 0002EAFC  80 05 00 00 */	lwz r0, 0(r5)
/* 80032EA0 0002EB00  2C 00 00 00 */	cmpwi r0, 0
/* 80032EA4 0002EB04  40 82 FF EC */	bne lbl_80032E90
/* 80032EA8 0002EB08  38 C6 00 04 */	addi r6, r6, 4
lbl_80032EAC:
/* 80032EAC 0002EB0C  80 A3 00 04 */	lwz r5, 4(r3)
/* 80032EB0 0002EB10  7C 05 30 2E */	lwzx r0, r5, r6
/* 80032EB4 0002EB14  2C 00 00 00 */	cmpwi r0, 0
/* 80032EB8 0002EB18  40 82 FF C4 */	bne lbl_80032E7C
/* 80032EBC 0002EB1C  4E 80 00 20 */	blr

.global func_80032EC0
func_80032EC0:
/* 80032EC0 0002EB20  2C 04 00 00 */	cmpwi r4, 0
/* 80032EC4 0002EB24  41 80 00 10 */	blt lbl_80032ED4
/* 80032EC8 0002EB28  80 03 00 00 */	lwz r0, 0(r3)
/* 80032ECC 0002EB2C  7C 04 00 40 */	cmplw r4, r0
/* 80032ED0 0002EB30  41 80 00 0C */	blt lbl_80032EDC
lbl_80032ED4:
/* 80032ED4 0002EB34  38 60 00 00 */	li r3, 0
/* 80032ED8 0002EB38  4E 80 00 20 */	blr
lbl_80032EDC:
/* 80032EDC 0002EB3C  80 63 00 04 */	lwz r3, 4(r3)
/* 80032EE0 0002EB40  54 80 10 3A */	slwi r0, r4, 2
/* 80032EE4 0002EB44  7C 63 00 2E */	lwzx r3, r3, r0
/* 80032EE8 0002EB48  4E 80 00 20 */	blr

.global func_80032EEC
func_80032EEC:
/* 80032EEC 0002EB4C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80032EF0 0002EB50  7C 08 02 A6 */	mflr r0
/* 80032EF4 0002EB54  90 01 00 24 */	stw r0, 0x24(r1)
/* 80032EF8 0002EB58  39 61 00 20 */	addi r11, r1, 0x20
/* 80032EFC 0002EB5C  48 19 42 2D */	bl _savegpr_27
/* 80032F00 0002EB60  7C BB 2B 78 */	mr r27, r5
/* 80032F04 0002EB64  7C DC 33 78 */	mr r28, r6
/* 80032F08 0002EB68  4B FF FF B9 */	bl func_80032EC0
/* 80032F0C 0002EB6C  2C 03 00 00 */	cmpwi r3, 0
/* 80032F10 0002EB70  40 82 00 0C */	bne lbl_80032F1C
/* 80032F14 0002EB74  38 60 00 00 */	li r3, 0
/* 80032F18 0002EB78  48 00 00 98 */	b lbl_80032FB0
lbl_80032F1C:
/* 80032F1C 0002EB7C  7C 7E 1B 78 */	mr r30, r3
/* 80032F20 0002EB80  48 00 00 80 */	b lbl_80032FA0
lbl_80032F24:
/* 80032F24 0002EB84  88 1D 00 00 */	lbz r0, 0(r29)
/* 80032F28 0002EB88  88 7D 00 01 */	lbz r3, 1(r29)
/* 80032F2C 0002EB8C  2C 00 00 02 */	cmpwi r0, 2
/* 80032F30 0002EB90  8B FD 00 02 */	lbz r31, 2(r29)
/* 80032F34 0002EB94  50 7F 44 2E */	rlwimi r31, r3, 8, 0x10, 0x17
/* 80032F38 0002EB98  41 82 00 2C */	beq lbl_80032F64
/* 80032F3C 0002EB9C  40 80 00 14 */	bge lbl_80032F50
/* 80032F40 0002EBA0  2C 00 00 00 */	cmpwi r0, 0
/* 80032F44 0002EBA4  41 82 00 58 */	beq lbl_80032F9C
/* 80032F48 0002EBA8  40 80 00 14 */	bge lbl_80032F5C
/* 80032F4C 0002EBAC  48 00 00 50 */	b lbl_80032F9C
lbl_80032F50:
/* 80032F50 0002EBB0  2C 00 00 04 */	cmpwi r0, 4
/* 80032F54 0002EBB4  40 80 00 48 */	bge lbl_80032F9C
/* 80032F58 0002EBB8  48 00 00 20 */	b lbl_80032F78
lbl_80032F5C:
/* 80032F5C 0002EBBC  38 7D 00 03 */	addi r3, r29, 3
/* 80032F60 0002EBC0  48 00 00 50 */	b lbl_80032FB0
lbl_80032F64:
/* 80032F64 0002EBC4  57 E0 04 3E */	clrlwi r0, r31, 0x10
/* 80032F68 0002EBC8  7C 00 D8 00 */	cmpw r0, r27
/* 80032F6C 0002EBCC  40 82 00 30 */	bne lbl_80032F9C
/* 80032F70 0002EBD0  38 7D 00 03 */	addi r3, r29, 3
/* 80032F74 0002EBD4  48 00 00 3C */	b lbl_80032FB0
lbl_80032F78:
/* 80032F78 0002EBD8  48 00 B1 E5 */	bl func_8003E15C
/* 80032F7C 0002EBDC  7F 84 E3 78 */	mr r4, r28
/* 80032F80 0002EBE0  57 E5 04 3E */	clrlwi r5, r31, 0x10
/* 80032F84 0002EBE4  48 00 B4 B1 */	bl func_8003E434
/* 80032F88 0002EBE8  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80032F8C 0002EBEC  28 00 FF FF */	cmplwi r0, 0xffff
/* 80032F90 0002EBF0  41 82 00 0C */	beq lbl_80032F9C
/* 80032F94 0002EBF4  38 7D 00 03 */	addi r3, r29, 3
/* 80032F98 0002EBF8  48 00 00 18 */	b lbl_80032FB0
lbl_80032F9C:
/* 80032F9C 0002EBFC  3B DE 00 04 */	addi r30, r30, 4
lbl_80032FA0:
/* 80032FA0 0002EC00  83 BE 00 00 */	lwz r29, 0(r30)
/* 80032FA4 0002EC04  2C 1D 00 00 */	cmpwi r29, 0
/* 80032FA8 0002EC08  40 82 FF 7C */	bne lbl_80032F24
/* 80032FAC 0002EC0C  38 60 00 00 */	li r3, 0
lbl_80032FB0:
/* 80032FB0 0002EC10  39 61 00 20 */	addi r11, r1, 0x20
/* 80032FB4 0002EC14  48 19 41 C1 */	bl _restgpr_27
/* 80032FB8 0002EC18  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80032FBC 0002EC1C  7C 08 03 A6 */	mtlr r0
/* 80032FC0 0002EC20  38 21 00 20 */	addi r1, r1, 0x20
/* 80032FC4 0002EC24  4E 80 00 20 */	blr

.global func_80032FC8
func_80032FC8:
/* 80032FC8 0002EC28  38 A0 00 01 */	li r5, 1
/* 80032FCC 0002EC2C  38 6D 97 88 */	addi r3, r13, lbl_8063EA48-_SDA_BASE_
/* 80032FD0 0002EC30  38 80 00 04 */	li r4, 4
/* 80032FD4 0002EC34  38 00 00 00 */	li r0, 0
/* 80032FD8 0002EC38  98 AD 97 88 */	stb r5, lbl_8063EA48-_SDA_BASE_(r13)
/* 80032FDC 0002EC3C  B0 83 00 02 */	sth r4, 2(r3)
/* 80032FE0 0002EC40  98 03 00 04 */	stb r0, 4(r3)
/* 80032FE4 0002EC44  4E 80 00 20 */	blr
lbl_80032FE8:
/* 80032FE8 0002EC48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80032FEC 0002EC4C  7C 08 02 A6 */	mflr r0
/* 80032FF0 0002EC50  90 01 00 14 */	stw r0, 0x14(r1)
/* 80032FF4 0002EC54  80 0D 97 98 */	lwz r0, lbl_8063EA58-_SDA_BASE_(r13)
/* 80032FF8 0002EC58  2C 00 00 00 */	cmpwi r0, 0
/* 80032FFC 0002EC5C  41 82 00 10 */	beq lbl_8003300C
/* 80033000 0002EC60  4B FD 43 9D */	bl func_8000739C
/* 80033004 0002EC64  80 6D 97 98 */	lwz r3, lbl_8063EA58-_SDA_BASE_(r13)
/* 80033008 0002EC68  48 00 04 99 */	bl func_800334A0
lbl_8003300C:
/* 8003300C 0002EC6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80033010 0002EC70  7C 08 03 A6 */	mtlr r0
/* 80033014 0002EC74  38 21 00 10 */	addi r1, r1, 0x10
/* 80033018 0002EC78  4E 80 00 20 */	blr
lbl_8003301C:
/* 8003301C 0002EC7C  4E 80 00 20 */	blr

.global func_80033020
func_80033020:
/* 80033020 0002EC80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80033024 0002EC84  7C 08 02 A6 */	mflr r0
/* 80033028 0002EC88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003302C 0002EC8C  80 6D 97 98 */	lwz r3, lbl_8063EA58-_SDA_BASE_(r13)
/* 80033030 0002EC90  2C 03 00 00 */	cmpwi r3, 0
/* 80033034 0002EC94  41 82 00 08 */	beq lbl_8003303C
/* 80033038 0002EC98  48 1A 7A 81 */	bl func_801DAAB8
lbl_8003303C:
/* 8003303C 0002EC9C  38 60 06 B4 */	li r3, 0x6b4
/* 80033040 0002ECA0  48 1A 79 F1 */	bl func_801DAA30
/* 80033044 0002ECA4  2C 03 00 00 */	cmpwi r3, 0
/* 80033048 0002ECA8  41 82 00 08 */	beq lbl_80033050
/* 8003304C 0002ECAC  48 00 00 45 */	bl func_80033090
lbl_80033050:
/* 80033050 0002ECB0  3C 80 80 03 */	lis r4, lbl_80032FE8@ha
/* 80033054 0002ECB4  3C A0 80 03 */	lis r5, lbl_8003301C@ha
/* 80033058 0002ECB8  90 6D 97 98 */	stw r3, lbl_8063EA58-_SDA_BASE_(r13)
/* 8003305C 0002ECBC  38 84 2F E8 */	addi r4, r4, lbl_80032FE8@l
/* 80033060 0002ECC0  80 6D A4 B8 */	lwz r3, lbl_8063F778-_SDA_BASE_(r13)
/* 80033064 0002ECC4  38 A5 30 1C */	addi r5, r5, lbl_8003301C@l
/* 80033068 0002ECC8  38 C0 00 03 */	li r6, 3
/* 8003306C 0002ECCC  38 E0 00 0C */	li r7, 0xc
/* 80033070 0002ECD0  48 20 BA E9 */	bl func_8023EB58
/* 80033074 0002ECD4  48 00 18 A5 */	bl func_80034918
/* 80033078 0002ECD8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003307C 0002ECDC  7C 08 03 A6 */	mtlr r0
/* 80033080 0002ECE0  38 21 00 10 */	addi r1, r1, 0x10
/* 80033084 0002ECE4  4E 80 00 20 */	blr

.global func_80033088
func_80033088:
/* 80033088 0002ECE8  80 6D 97 98 */	lwz r3, lbl_8063EA58-_SDA_BASE_(r13)
/* 8003308C 0002ECEC  4E 80 00 20 */	blr

.global func_80033090
func_80033090:
/* 80033090 0002ECF0  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 80033094 0002ECF4  7C 08 02 A6 */	mflr r0
/* 80033098 0002ECF8  90 01 00 84 */	stw r0, 0x84(r1)
/* 8003309C 0002ECFC  DB E1 00 70 */	stfd f31, 0x70(r1)
/* 800330A0 0002ED00  F3 E1 00 78 */	psq_st f31, 120(r1), 0, qr0
/* 800330A4 0002ED04  93 E1 00 6C */	stw r31, 0x6c(r1)
/* 800330A8 0002ED08  3B E3 01 68 */	addi r31, r3, 0x168
/* 800330AC 0002ED0C  93 C1 00 68 */	stw r30, 0x68(r1)
/* 800330B0 0002ED10  7C 7E 1B 78 */	mr r30, r3
/* 800330B4 0002ED14  93 A1 00 64 */	stw r29, 0x64(r1)
/* 800330B8 0002ED18  7F DD F3 78 */	mr r29, r30
lbl_800330BC:
/* 800330BC 0002ED1C  7F A3 EB 78 */	mr r3, r29
/* 800330C0 0002ED20  48 00 22 C1 */	bl func_80035380
/* 800330C4 0002ED24  3B BD 00 B4 */	addi r29, r29, 0xb4
/* 800330C8 0002ED28  7C 1D F8 40 */	cmplw r29, r31
/* 800330CC 0002ED2C  41 80 FF F0 */	blt lbl_800330BC
/* 800330D0 0002ED30  38 7E 02 04 */	addi r3, r30, 0x204
/* 800330D4 0002ED34  48 01 DD 65 */	bl func_80050E38
/* 800330D8 0002ED38  38 7E 02 64 */	addi r3, r30, 0x264
/* 800330DC 0002ED3C  48 01 DD 5D */	bl func_80050E38
/* 800330E0 0002ED40  3B BE 02 C4 */	addi r29, r30, 0x2c4
/* 800330E4 0002ED44  3B FE 03 9C */	addi r31, r30, 0x39c
lbl_800330E8:
/* 800330E8 0002ED48  7F A3 EB 78 */	mr r3, r29
/* 800330EC 0002ED4C  48 01 D2 39 */	bl func_80050324
/* 800330F0 0002ED50  3B BD 00 24 */	addi r29, r29, 0x24
/* 800330F4 0002ED54  7C 1D F8 40 */	cmplw r29, r31
/* 800330F8 0002ED58  41 80 FF F0 */	blt lbl_800330E8
/* 800330FC 0002ED5C  7F E3 FB 78 */	mr r3, r31
/* 80033100 0002ED60  48 01 DF E9 */	bl func_800510E8
/* 80033104 0002ED64  38 7E 04 5C */	addi r3, r30, 0x45c
/* 80033108 0002ED68  48 01 DF E1 */	bl func_800510E8
/* 8003310C 0002ED6C  38 7E 05 1C */	addi r3, r30, 0x51c
/* 80033110 0002ED70  48 01 DF D9 */	bl func_800510E8
/* 80033114 0002ED74  38 7E 05 DC */	addi r3, r30, 0x5dc
/* 80033118 0002ED78  48 01 D2 0D */	bl func_80050324
/* 8003311C 0002ED7C  38 7E 06 00 */	addi r3, r30, 0x600
/* 80033120 0002ED80  48 01 D2 05 */	bl func_80050324
/* 80033124 0002ED84  38 7E 06 24 */	addi r3, r30, 0x624
/* 80033128 0002ED88  48 01 D1 FD */	bl func_80050324
/* 8003312C 0002ED8C  38 7E 06 48 */	addi r3, r30, 0x648
/* 80033130 0002ED90  48 01 D1 F5 */	bl func_80050324
/* 80033134 0002ED94  38 7E 06 6C */	addi r3, r30, 0x66c
/* 80033138 0002ED98  48 01 D1 ED */	bl func_80050324
/* 8003313C 0002ED9C  38 7E 06 90 */	addi r3, r30, 0x690
/* 80033140 0002EDA0  48 01 D6 B1 */	bl func_800507F0
/* 80033144 0002EDA4  C0 42 81 C8 */	lfs f2, lbl_806407C8-_SDA2_BASE_(r2)
/* 80033148 0002EDA8  38 00 00 00 */	li r0, 0
/* 8003314C 0002EDAC  C0 22 81 CC */	lfs f1, lbl_806407CC-_SDA2_BASE_(r2)
/* 80033150 0002EDB0  C0 02 81 D0 */	lfs f0, lbl_806407D0-_SDA2_BASE_(r2)
/* 80033154 0002EDB4  D0 41 00 50 */	stfs f2, 0x50(r1)
/* 80033158 0002EDB8  D0 21 00 54 */	stfs f1, 0x54(r1)
/* 8003315C 0002EDBC  D0 01 00 58 */	stfs f0, 0x58(r1)
/* 80033160 0002EDC0  98 1E 01 A5 */	stb r0, 0x1a5(r30)
/* 80033164 0002EDC4  48 00 D0 91 */	bl func_800401F4
/* 80033168 0002EDC8  2C 03 00 00 */	cmpwi r3, 0
/* 8003316C 0002EDCC  7C 7F 1B 78 */	mr r31, r3
/* 80033170 0002EDD0  40 82 00 0C */	bne lbl_8003317C
/* 80033174 0002EDD4  7F C3 F3 78 */	mr r3, r30
/* 80033178 0002EDD8  48 00 02 EC */	b lbl_80033464
lbl_8003317C:
/* 8003317C 0002EDDC  3C 60 80 49 */	lis r3, lbl_80496754@ha
/* 80033180 0002EDE0  C3 E2 81 D8 */	lfs f31, lbl_806407D8-_SDA2_BASE_(r2)
/* 80033184 0002EDE4  38 63 67 54 */	addi r3, r3, lbl_80496754@l
/* 80033188 0002EDE8  80 A3 00 04 */	lwz r5, 4(r3)
/* 8003318C 0002EDEC  80 05 01 04 */	lwz r0, 0x104(r5)
/* 80033190 0002EDF0  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 80033194 0002EDF4  28 00 00 01 */	cmplwi r0, 1
/* 80033198 0002EDF8  40 82 00 30 */	bne lbl_800331C8
/* 8003319C 0002EDFC  C3 E5 01 6C */	lfs f31, 0x16c(r5)
/* 800331A0 0002EE00  C0 02 81 D4 */	lfs f0, lbl_806407D4-_SDA2_BASE_(r2)
/* 800331A4 0002EE04  C0 22 81 DC */	lfs f1, lbl_806407DC-_SDA2_BASE_(r2)
/* 800331A8 0002EE08  D0 05 01 68 */	stfs f0, 0x168(r5)
/* 800331AC 0002EE0C  C0 02 81 E0 */	lfs f0, lbl_806407E0-_SDA2_BASE_(r2)
/* 800331B0 0002EE10  D0 25 01 7C */	stfs f1, 0x17c(r5)
/* 800331B4 0002EE14  D0 05 01 80 */	stfs f0, 0x180(r5)
/* 800331B8 0002EE18  80 05 01 04 */	lwz r0, 0x104(r5)
/* 800331BC 0002EE1C  54 00 00 3A */	rlwinm r0, r0, 0, 0, 0x1d
/* 800331C0 0002EE20  60 00 00 09 */	ori r0, r0, 9
/* 800331C4 0002EE24  90 05 01 04 */	stw r0, 0x104(r5)
lbl_800331C8:
/* 800331C8 0002EE28  C0 42 81 E8 */	lfs f2, lbl_806407E8-_SDA2_BASE_(r2)
/* 800331CC 0002EE2C  3C 80 80 49 */	lis r4, lbl_80493614@ha
/* 800331D0 0002EE30  C0 01 00 50 */	lfs f0, 0x50(r1)
/* 800331D4 0002EE34  38 64 36 14 */	addi r3, r4, lbl_80493614@l
/* 800331D8 0002EE38  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 800331DC 0002EE3C  EC E0 00 B2 */	fmuls f7, f0, f2
/* 800331E0 0002EE40  C0 82 81 E4 */	lfs f4, lbl_806407E4-_SDA2_BASE_(r2)
/* 800331E4 0002EE44  EC C1 00 B2 */	fmuls f6, f1, f2
/* 800331E8 0002EE48  C0 22 81 EC */	lfs f1, lbl_806407EC-_SDA2_BASE_(r2)
/* 800331EC 0002EE4C  C0 01 00 58 */	lfs f0, 0x58(r1)
/* 800331F0 0002EE50  D0 E5 01 AC */	stfs f7, 0x1ac(r5)
/* 800331F4 0002EE54  EC A0 00 72 */	fmuls f5, f0, f1
/* 800331F8 0002EE58  C0 62 81 CC */	lfs f3, lbl_806407CC-_SDA2_BASE_(r2)
/* 800331FC 0002EE5C  D0 C5 01 B0 */	stfs f6, 0x1b0(r5)
/* 80033200 0002EE60  D0 A5 01 B4 */	stfs f5, 0x1b4(r5)
/* 80033204 0002EE64  C0 04 36 14 */	lfs f0, 0x3614(r4)
/* 80033208 0002EE68  D0 81 00 2C */	stfs f4, 0x2c(r1)
/* 8003320C 0002EE6C  D0 05 01 B8 */	stfs f0, 0x1b8(r5)
/* 80033210 0002EE70  C0 03 00 04 */	lfs f0, 4(r3)
/* 80033214 0002EE74  D0 61 00 30 */	stfs f3, 0x30(r1)
/* 80033218 0002EE78  D0 05 01 BC */	stfs f0, 0x1bc(r5)
/* 8003321C 0002EE7C  C0 03 00 08 */	lfs f0, 8(r3)
/* 80033220 0002EE80  D0 81 00 34 */	stfs f4, 0x34(r1)
/* 80033224 0002EE84  D0 05 01 C0 */	stfs f0, 0x1c0(r5)
/* 80033228 0002EE88  D0 85 01 C4 */	stfs f4, 0x1c4(r5)
/* 8003322C 0002EE8C  D0 65 01 C8 */	stfs f3, 0x1c8(r5)
/* 80033230 0002EE90  D0 85 01 CC */	stfs f4, 0x1cc(r5)
/* 80033234 0002EE94  80 05 01 04 */	lwz r0, 0x104(r5)
/* 80033238 0002EE98  D0 41 00 38 */	stfs f2, 0x38(r1)
/* 8003323C 0002EE9C  60 00 00 30 */	ori r0, r0, 0x30
/* 80033240 0002EEA0  90 05 01 04 */	stw r0, 0x104(r5)
/* 80033244 0002EEA4  D0 41 00 3C */	stfs f2, 0x3c(r1)
/* 80033248 0002EEA8  D0 21 00 40 */	stfs f1, 0x40(r1)
/* 8003324C 0002EEAC  D0 E1 00 44 */	stfs f7, 0x44(r1)
/* 80033250 0002EEB0  D0 C1 00 48 */	stfs f6, 0x48(r1)
/* 80033254 0002EEB4  D0 A1 00 4C */	stfs f5, 0x4c(r1)
/* 80033258 0002EEB8  90 BE 00 04 */	stw r5, 4(r30)
/* 8003325C 0002EEBC  48 00 16 BD */	bl func_80034918
/* 80033260 0002EEC0  7F E3 FB 78 */	mr r3, r31
/* 80033264 0002EEC4  48 00 D0 71 */	bl func_800402D4
/* 80033268 0002EEC8  7C 64 1B 78 */	mr r4, r3
/* 8003326C 0002EECC  7F C3 F3 78 */	mr r3, r30
/* 80033270 0002EED0  48 00 21 8D */	bl func_800353FC
/* 80033274 0002EED4  38 00 00 01 */	li r0, 1
/* 80033278 0002EED8  98 1E 00 01 */	stb r0, 1(r30)
/* 8003327C 0002EEDC  48 00 16 9D */	bl func_80034918
/* 80033280 0002EEE0  48 1A 78 A9 */	bl func_801DAB28
/* 80033284 0002EEE4  2C 03 00 00 */	cmpwi r3, 0
/* 80033288 0002EEE8  41 82 00 14 */	beq lbl_8003329C
/* 8003328C 0002EEEC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80033290 0002EEF0  38 80 02 64 */	li r4, 0x264
/* 80033294 0002EEF4  48 1A 7A 01 */	bl func_801DAC94
/* 80033298 0002EEF8  48 00 00 08 */	b lbl_800332A0
lbl_8003329C:
/* 8003329C 0002EEFC  38 60 00 00 */	li r3, 0
lbl_800332A0:
/* 800332A0 0002EF00  2C 03 00 00 */	cmpwi r3, 0
/* 800332A4 0002EF04  41 82 00 08 */	beq lbl_800332AC
/* 800332A8 0002EF08  48 1A AC D1 */	bl func_801DDF78
lbl_800332AC:
/* 800332AC 0002EF0C  C0 02 81 D4 */	lfs f0, lbl_806407D4-_SDA2_BASE_(r2)
/* 800332B0 0002EF10  3C A0 80 49 */	lis r5, lbl_80493614@ha
/* 800332B4 0002EF14  C0 42 81 E8 */	lfs f2, lbl_806407E8-_SDA2_BASE_(r2)
/* 800332B8 0002EF18  38 85 36 14 */	addi r4, r5, lbl_80493614@l
/* 800332BC 0002EF1C  D0 03 01 68 */	stfs f0, 0x168(r3)
/* 800332C0 0002EF20  C0 82 81 E4 */	lfs f4, lbl_806407E4-_SDA2_BASE_(r2)
/* 800332C4 0002EF24  D3 E3 01 6C */	stfs f31, 0x16c(r3)
/* 800332C8 0002EF28  C0 02 81 DC */	lfs f0, lbl_806407DC-_SDA2_BASE_(r2)
/* 800332CC 0002EF2C  C0 22 81 E0 */	lfs f1, lbl_806407E0-_SDA2_BASE_(r2)
/* 800332D0 0002EF30  D0 03 01 7C */	stfs f0, 0x17c(r3)
/* 800332D4 0002EF34  C0 01 00 50 */	lfs f0, 0x50(r1)
/* 800332D8 0002EF38  D0 23 01 80 */	stfs f1, 0x180(r3)
/* 800332DC 0002EF3C  EC E0 00 B2 */	fmuls f7, f0, f2
/* 800332E0 0002EF40  C0 01 00 54 */	lfs f0, 0x54(r1)
/* 800332E4 0002EF44  80 03 01 04 */	lwz r0, 0x104(r3)
/* 800332E8 0002EF48  EC C0 00 B2 */	fmuls f6, f0, f2
/* 800332EC 0002EF4C  C0 22 81 EC */	lfs f1, lbl_806407EC-_SDA2_BASE_(r2)
/* 800332F0 0002EF50  54 00 00 3A */	rlwinm r0, r0, 0, 0, 0x1d
/* 800332F4 0002EF54  60 00 00 09 */	ori r0, r0, 9
/* 800332F8 0002EF58  C0 01 00 58 */	lfs f0, 0x58(r1)
/* 800332FC 0002EF5C  90 03 01 04 */	stw r0, 0x104(r3)
/* 80033300 0002EF60  EC A0 00 72 */	fmuls f5, f0, f1
/* 80033304 0002EF64  C0 62 81 CC */	lfs f3, lbl_806407CC-_SDA2_BASE_(r2)
/* 80033308 0002EF68  D0 E3 01 AC */	stfs f7, 0x1ac(r3)
/* 8003330C 0002EF6C  D0 C3 01 B0 */	stfs f6, 0x1b0(r3)
/* 80033310 0002EF70  D0 A3 01 B4 */	stfs f5, 0x1b4(r3)
/* 80033314 0002EF74  C0 05 36 14 */	lfs f0, 0x3614(r5)
/* 80033318 0002EF78  D0 81 00 08 */	stfs f4, 8(r1)
/* 8003331C 0002EF7C  D0 03 01 B8 */	stfs f0, 0x1b8(r3)
/* 80033320 0002EF80  C0 04 00 04 */	lfs f0, 4(r4)
/* 80033324 0002EF84  D0 61 00 0C */	stfs f3, 0xc(r1)
/* 80033328 0002EF88  D0 03 01 BC */	stfs f0, 0x1bc(r3)
/* 8003332C 0002EF8C  C0 04 00 08 */	lfs f0, 8(r4)
/* 80033330 0002EF90  D0 81 00 10 */	stfs f4, 0x10(r1)
/* 80033334 0002EF94  D0 03 01 C0 */	stfs f0, 0x1c0(r3)
/* 80033338 0002EF98  D0 83 01 C4 */	stfs f4, 0x1c4(r3)
/* 8003333C 0002EF9C  D0 63 01 C8 */	stfs f3, 0x1c8(r3)
/* 80033340 0002EFA0  D0 83 01 CC */	stfs f4, 0x1cc(r3)
/* 80033344 0002EFA4  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80033348 0002EFA8  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 8003334C 0002EFAC  60 00 00 30 */	ori r0, r0, 0x30
/* 80033350 0002EFB0  90 03 01 04 */	stw r0, 0x104(r3)
/* 80033354 0002EFB4  D0 41 00 18 */	stfs f2, 0x18(r1)
/* 80033358 0002EFB8  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 8003335C 0002EFBC  D0 E1 00 20 */	stfs f7, 0x20(r1)
/* 80033360 0002EFC0  D0 C1 00 24 */	stfs f6, 0x24(r1)
/* 80033364 0002EFC4  D0 A1 00 28 */	stfs f5, 0x28(r1)
/* 80033368 0002EFC8  90 7E 00 B8 */	stw r3, 0xb8(r30)
/* 8003336C 0002EFCC  48 00 15 AD */	bl func_80034918
/* 80033370 0002EFD0  7F E3 FB 78 */	mr r3, r31
/* 80033374 0002EFD4  48 00 CF 61 */	bl func_800402D4
/* 80033378 0002EFD8  7C 64 1B 78 */	mr r4, r3
/* 8003337C 0002EFDC  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 80033380 0002EFE0  48 00 20 7D */	bl func_800353FC
/* 80033384 0002EFE4  38 00 00 00 */	li r0, 0
/* 80033388 0002EFE8  98 1E 00 B5 */	stb r0, 0xb5(r30)
/* 8003338C 0002EFEC  48 00 15 8D */	bl func_80034918
/* 80033390 0002EFF0  7F DD F3 78 */	mr r29, r30
/* 80033394 0002EFF4  3B E0 00 00 */	li r31, 0
lbl_80033398:
/* 80033398 0002EFF8  C0 22 81 E4 */	lfs f1, lbl_806407E4-_SDA2_BASE_(r2)
/* 8003339C 0002EFFC  7F A3 EB 78 */	mr r3, r29
/* 800333A0 0002F000  C0 62 81 E8 */	lfs f3, lbl_806407E8-_SDA2_BASE_(r2)
/* 800333A4 0002F004  FC 40 08 90 */	fmr f2, f1
/* 800333A8 0002F008  FC 80 18 90 */	fmr f4, f3
/* 800333AC 0002F00C  48 00 21 51 */	bl func_800354FC
/* 800333B0 0002F010  3B FF 00 01 */	addi r31, r31, 1
/* 800333B4 0002F014  3B BD 00 B4 */	addi r29, r29, 0xb4
/* 800333B8 0002F018  2C 1F 00 02 */	cmpwi r31, 2
/* 800333BC 0002F01C  41 80 FF DC */	blt lbl_80033398
/* 800333C0 0002F020  7F C3 F3 78 */	mr r3, r30
/* 800333C4 0002F024  38 80 00 00 */	li r4, 0
/* 800333C8 0002F028  48 00 14 F5 */	bl func_800348BC
/* 800333CC 0002F02C  C0 22 81 E4 */	lfs f1, lbl_806407E4-_SDA2_BASE_(r2)
/* 800333D0 0002F030  38 E0 00 00 */	li r7, 0
/* 800333D4 0002F034  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 800333D8 0002F038  38 80 00 FF */	li r4, 0xff
/* 800333DC 0002F03C  C0 42 81 DC */	lfs f2, lbl_806407DC-_SDA2_BASE_(r2)
/* 800333E0 0002F040  38 C0 00 19 */	li r6, 0x19
/* 800333E4 0002F044  38 A0 00 1E */	li r5, 0x1e
/* 800333E8 0002F048  38 00 00 01 */	li r0, 1
/* 800333EC 0002F04C  98 FE 01 68 */	stb r7, 0x168(r30)
/* 800333F0 0002F050  7F C3 F3 78 */	mr r3, r30
/* 800333F4 0002F054  D0 5E 01 6C */	stfs f2, 0x16c(r30)
/* 800333F8 0002F058  98 FE 01 70 */	stb r7, 0x170(r30)
/* 800333FC 0002F05C  D0 5E 01 74 */	stfs f2, 0x174(r30)
/* 80033400 0002F060  98 FE 01 71 */	stb r7, 0x171(r30)
/* 80033404 0002F064  90 FE 01 78 */	stw r7, 0x178(r30)
/* 80033408 0002F068  98 DE 01 7C */	stb r6, 0x17c(r30)
/* 8003340C 0002F06C  D0 3E 01 80 */	stfs f1, 0x180(r30)
/* 80033410 0002F070  D0 3E 01 84 */	stfs f1, 0x184(r30)
/* 80033414 0002F074  98 FE 01 88 */	stb r7, 0x188(r30)
/* 80033418 0002F078  D0 1E 01 8C */	stfs f0, 0x18c(r30)
/* 8003341C 0002F07C  90 FE 01 90 */	stw r7, 0x190(r30)
/* 80033420 0002F080  98 BE 01 94 */	stb r5, 0x194(r30)
/* 80033424 0002F084  D0 3E 01 98 */	stfs f1, 0x198(r30)
/* 80033428 0002F088  D0 3E 01 9C */	stfs f1, 0x19c(r30)
/* 8003342C 0002F08C  D0 3E 01 D0 */	stfs f1, 0x1d0(r30)
/* 80033430 0002F090  D0 3E 01 D4 */	stfs f1, 0x1d4(r30)
/* 80033434 0002F094  98 9E 01 DC */	stb r4, 0x1dc(r30)
/* 80033438 0002F098  98 9E 01 DD */	stb r4, 0x1dd(r30)
/* 8003343C 0002F09C  98 9E 01 DE */	stb r4, 0x1de(r30)
/* 80033440 0002F0A0  98 9E 01 DF */	stb r4, 0x1df(r30)
/* 80033444 0002F0A4  90 1E 01 E4 */	stw r0, 0x1e4(r30)
/* 80033448 0002F0A8  90 FE 01 E0 */	stw r7, 0x1e0(r30)
/* 8003344C 0002F0AC  D0 3E 01 E8 */	stfs f1, 0x1e8(r30)
/* 80033450 0002F0B0  D0 3E 01 EC */	stfs f1, 0x1ec(r30)
/* 80033454 0002F0B4  D0 3E 01 F0 */	stfs f1, 0x1f0(r30)
/* 80033458 0002F0B8  D0 1E 01 F4 */	stfs f0, 0x1f4(r30)
/* 8003345C 0002F0BC  D0 1E 01 F8 */	stfs f0, 0x1f8(r30)
/* 80033460 0002F0C0  D0 1E 01 FC */	stfs f0, 0x1fc(r30)
lbl_80033464:
/* 80033464 0002F0C4  E3 E1 00 78 */	psq_l f31, 120(r1), 0, qr0
/* 80033468 0002F0C8  80 01 00 84 */	lwz r0, 0x84(r1)
/* 8003346C 0002F0CC  CB E1 00 70 */	lfd f31, 0x70(r1)
/* 80033470 0002F0D0  83 E1 00 6C */	lwz r31, 0x6c(r1)
/* 80033474 0002F0D4  83 C1 00 68 */	lwz r30, 0x68(r1)
/* 80033478 0002F0D8  83 A1 00 64 */	lwz r29, 0x64(r1)
/* 8003347C 0002F0DC  7C 08 03 A6 */	mtlr r0
/* 80033480 0002F0E0  38 21 00 80 */	addi r1, r1, 0x80
/* 80033484 0002F0E4  4E 80 00 20 */	blr

.global func_80033488
func_80033488:
/* 80033488 0002F0E8  38 00 00 01 */	li r0, 1
/* 8003348C 0002F0EC  98 03 01 A5 */	stb r0, 0x1a5(r3)
/* 80033490 0002F0F0  4E 80 00 20 */	blr

.global func_80033494
func_80033494:
/* 80033494 0002F0F4  38 00 00 00 */	li r0, 0
/* 80033498 0002F0F8  98 03 01 A5 */	stb r0, 0x1a5(r3)
/* 8003349C 0002F0FC  4E 80 00 20 */	blr

.global func_800334A0
func_800334A0:
/* 800334A0 0002F100  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 800334A4 0002F104  7C 08 02 A6 */	mflr r0
/* 800334A8 0002F108  90 01 00 54 */	stw r0, 0x54(r1)
/* 800334AC 0002F10C  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 800334B0 0002F110  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 800334B4 0002F114  FF E0 08 90 */	fmr f31, f1
/* 800334B8 0002F118  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 800334BC 0002F11C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 800334C0 0002F120  7C 7E 1B 78 */	mr r30, r3
/* 800334C4 0002F124  93 A1 00 34 */	stw r29, 0x34(r1)
/* 800334C8 0002F128  93 81 00 30 */	stw r28, 0x30(r1)
/* 800334CC 0002F12C  88 03 01 A5 */	lbz r0, 0x1a5(r3)
/* 800334D0 0002F130  2C 00 00 00 */	cmpwi r0, 0
/* 800334D4 0002F134  41 82 06 80 */	beq lbl_80033B54
/* 800334D8 0002F138  88 03 01 88 */	lbz r0, 0x188(r3)
/* 800334DC 0002F13C  2C 00 00 00 */	cmpwi r0, 0
/* 800334E0 0002F140  41 82 00 BC */	beq lbl_8003359C
/* 800334E4 0002F144  48 00 24 8D */	bl func_80035970
/* 800334E8 0002F148  C0 03 01 C4 */	lfs f0, 0x1c4(r3)
/* 800334EC 0002F14C  7C 7D 1B 78 */	mr r29, r3
/* 800334F0 0002F150  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 800334F4 0002F154  C0 03 01 C8 */	lfs f0, 0x1c8(r3)
/* 800334F8 0002F158  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 800334FC 0002F15C  C0 03 01 CC */	lfs f0, 0x1cc(r3)
/* 80033500 0002F160  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80033504 0002F164  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80033508 0002F168  54 00 06 73 */	rlwinm. r0, r0, 0, 0x19, 0x19
/* 8003350C 0002F16C  41 82 00 40 */	beq lbl_8003354C
/* 80033510 0002F170  38 61 00 14 */	addi r3, r1, 0x14
/* 80033514 0002F174  38 9D 01 AC */	addi r4, r29, 0x1ac
/* 80033518 0002F178  7C 65 1B 78 */	mr r5, r3
/* 8003351C 0002F17C  48 24 97 CD */	bl func_8027CCE8
/* 80033520 0002F180  38 61 00 14 */	addi r3, r1, 0x14
/* 80033524 0002F184  48 24 98 61 */	bl func_8027CD84
/* 80033528 0002F188  C0 1D 01 84 */	lfs f0, 0x184(r29)
/* 8003352C 0002F18C  38 61 00 14 */	addi r3, r1, 0x14
/* 80033530 0002F190  7C 64 1B 78 */	mr r4, r3
/* 80033534 0002F194  EC 20 08 24 */	fdivs f1, f0, f1
/* 80033538 0002F198  48 24 97 D5 */	bl func_8027CD0C
/* 8003353C 0002F19C  38 61 00 14 */	addi r3, r1, 0x14
/* 80033540 0002F1A0  38 9D 01 AC */	addi r4, r29, 0x1ac
/* 80033544 0002F1A4  7C 65 1B 78 */	mr r5, r3
/* 80033548 0002F1A8  48 24 97 7D */	bl func_8027CCC4
lbl_8003354C:
/* 8003354C 0002F1AC  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80033550 0002F1B0  48 20 1D 6D */	bl func_802352BC
/* 80033554 0002F1B4  C0 21 00 14 */	lfs f1, 0x14(r1)
/* 80033558 0002F1B8  7C 65 1B 78 */	mr r5, r3
/* 8003355C 0002F1BC  C0 41 00 18 */	lfs f2, 0x18(r1)
/* 80033560 0002F1C0  38 7D 01 D4 */	addi r3, r29, 0x1d4
/* 80033564 0002F1C4  C0 61 00 1C */	lfs f3, 0x1c(r1)
/* 80033568 0002F1C8  38 9D 01 4C */	addi r4, r29, 0x14c
/* 8003356C 0002F1CC  38 C1 00 10 */	addi r6, r1, 0x10
/* 80033570 0002F1D0  38 E1 00 0C */	addi r7, r1, 0xc
/* 80033574 0002F1D4  39 01 00 08 */	addi r8, r1, 8
/* 80033578 0002F1D8  48 25 32 95 */	bl func_8028680C
/* 8003357C 0002F1DC  C0 21 00 08 */	lfs f1, 8(r1)
/* 80033580 0002F1E0  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80033584 0002F1E4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80033588 0002F1E8  40 81 00 08 */	ble lbl_80033590
/* 8003358C 0002F1EC  48 00 00 08 */	b lbl_80033594
lbl_80033590:
/* 80033590 0002F1F0  FC 20 08 50 */	fneg f1, f1
lbl_80033594:
/* 80033594 0002F1F4  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80033598 0002F1F8  D0 23 04 44 */	stfs f1, 0x444(r3)
lbl_8003359C:
/* 8003359C 0002F1FC  3B BE 02 C4 */	addi r29, r30, 0x2c4
/* 800335A0 0002F200  3B E0 00 00 */	li r31, 0
/* 800335A4 0002F204  3B 80 00 00 */	li r28, 0
lbl_800335A8:
/* 800335A8 0002F208  81 9D 00 20 */	lwz r12, 0x20(r29)
/* 800335AC 0002F20C  FC 20 F8 90 */	fmr f1, f31
/* 800335B0 0002F210  7F A3 EB 78 */	mr r3, r29
/* 800335B4 0002F214  81 8C 00 08 */	lwz r12, 8(r12)
/* 800335B8 0002F218  7D 89 03 A6 */	mtctr r12
/* 800335BC 0002F21C  4E 80 04 21 */	bctrl
/* 800335C0 0002F220  2C 03 00 00 */	cmpwi r3, 0
/* 800335C4 0002F224  41 82 00 08 */	beq lbl_800335CC
/* 800335C8 0002F228  3B E0 00 01 */	li r31, 1
lbl_800335CC:
/* 800335CC 0002F22C  3B 9C 00 01 */	addi r28, r28, 1
/* 800335D0 0002F230  3B BD 00 24 */	addi r29, r29, 0x24
/* 800335D4 0002F234  2C 1C 00 06 */	cmpwi r28, 6
/* 800335D8 0002F238  41 80 FF D0 */	blt lbl_800335A8
/* 800335DC 0002F23C  81 9E 02 24 */	lwz r12, 0x224(r30)
/* 800335E0 0002F240  FC 20 F8 90 */	fmr f1, f31
/* 800335E4 0002F244  38 7E 02 04 */	addi r3, r30, 0x204
/* 800335E8 0002F248  81 8C 00 08 */	lwz r12, 8(r12)
/* 800335EC 0002F24C  7D 89 03 A6 */	mtctr r12
/* 800335F0 0002F250  4E 80 04 21 */	bctrl
/* 800335F4 0002F254  2C 03 00 00 */	cmpwi r3, 0
/* 800335F8 0002F258  41 82 00 08 */	beq lbl_80033600
/* 800335FC 0002F25C  3B E0 00 01 */	li r31, 1
lbl_80033600:
/* 80033600 0002F260  81 9E 02 84 */	lwz r12, 0x284(r30)
/* 80033604 0002F264  FC 20 F8 90 */	fmr f1, f31
/* 80033608 0002F268  38 7E 02 64 */	addi r3, r30, 0x264
/* 8003360C 0002F26C  81 8C 00 08 */	lwz r12, 8(r12)
/* 80033610 0002F270  7D 89 03 A6 */	mtctr r12
/* 80033614 0002F274  4E 80 04 21 */	bctrl
/* 80033618 0002F278  2C 03 00 00 */	cmpwi r3, 0
/* 8003361C 0002F27C  41 82 00 08 */	beq lbl_80033624
/* 80033620 0002F280  3B E0 00 01 */	li r31, 1
lbl_80033624:
/* 80033624 0002F284  81 9E 03 BC */	lwz r12, 0x3bc(r30)
/* 80033628 0002F288  FC 20 F8 90 */	fmr f1, f31
/* 8003362C 0002F28C  38 7E 03 9C */	addi r3, r30, 0x39c
/* 80033630 0002F290  81 8C 00 08 */	lwz r12, 8(r12)
/* 80033634 0002F294  7D 89 03 A6 */	mtctr r12
/* 80033638 0002F298  4E 80 04 21 */	bctrl
/* 8003363C 0002F29C  2C 03 00 00 */	cmpwi r3, 0
/* 80033640 0002F2A0  41 82 00 08 */	beq lbl_80033648
/* 80033644 0002F2A4  3B E0 00 01 */	li r31, 1
lbl_80033648:
/* 80033648 0002F2A8  81 9E 04 7C */	lwz r12, 0x47c(r30)
/* 8003364C 0002F2AC  FC 20 F8 90 */	fmr f1, f31
/* 80033650 0002F2B0  38 7E 04 5C */	addi r3, r30, 0x45c
/* 80033654 0002F2B4  81 8C 00 08 */	lwz r12, 8(r12)
/* 80033658 0002F2B8  7D 89 03 A6 */	mtctr r12
/* 8003365C 0002F2BC  4E 80 04 21 */	bctrl
/* 80033660 0002F2C0  2C 03 00 00 */	cmpwi r3, 0
/* 80033664 0002F2C4  41 82 00 08 */	beq lbl_8003366C
/* 80033668 0002F2C8  3B E0 00 01 */	li r31, 1
lbl_8003366C:
/* 8003366C 0002F2CC  81 9E 05 3C */	lwz r12, 0x53c(r30)
/* 80033670 0002F2D0  FC 20 F8 90 */	fmr f1, f31
/* 80033674 0002F2D4  38 7E 05 1C */	addi r3, r30, 0x51c
/* 80033678 0002F2D8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003367C 0002F2DC  7D 89 03 A6 */	mtctr r12
/* 80033680 0002F2E0  4E 80 04 21 */	bctrl
/* 80033684 0002F2E4  2C 03 00 00 */	cmpwi r3, 0
/* 80033688 0002F2E8  41 82 00 08 */	beq lbl_80033690
/* 8003368C 0002F2EC  3B E0 00 01 */	li r31, 1
lbl_80033690:
/* 80033690 0002F2F0  81 9E 06 B0 */	lwz r12, 0x6b0(r30)
/* 80033694 0002F2F4  FC 20 F8 90 */	fmr f1, f31
/* 80033698 0002F2F8  38 7E 06 90 */	addi r3, r30, 0x690
/* 8003369C 0002F2FC  81 8C 00 08 */	lwz r12, 8(r12)
/* 800336A0 0002F300  7D 89 03 A6 */	mtctr r12
/* 800336A4 0002F304  4E 80 04 21 */	bctrl
/* 800336A8 0002F308  2C 03 00 00 */	cmpwi r3, 0
/* 800336AC 0002F30C  41 82 00 08 */	beq lbl_800336B4
/* 800336B0 0002F310  3B E0 00 01 */	li r31, 1
lbl_800336B4:
/* 800336B4 0002F314  2C 1F 00 00 */	cmpwi r31, 0
/* 800336B8 0002F318  41 82 00 78 */	beq lbl_80033730
/* 800336BC 0002F31C  80 1E 02 00 */	lwz r0, 0x200(r30)
/* 800336C0 0002F320  28 00 00 07 */	cmplwi r0, 7
/* 800336C4 0002F324  41 81 00 6C */	bgt lbl_80033730
/* 800336C8 0002F328  3C 60 80 41 */	lis r3, lbl_8040A278@ha
/* 800336CC 0002F32C  54 00 10 3A */	slwi r0, r0, 2
/* 800336D0 0002F330  38 63 A2 78 */	addi r3, r3, lbl_8040A278@l
/* 800336D4 0002F334  7C 63 00 2E */	lwzx r3, r3, r0
/* 800336D8 0002F338  7C 69 03 A6 */	mtctr r3
/* 800336DC 0002F33C  4E 80 04 20 */	bctr
/* 800336E0 0002F340  C0 3E 01 B8 */	lfs f1, 0x1b8(r30)
/* 800336E4 0002F344  7F C3 F3 78 */	mr r3, r30
/* 800336E8 0002F348  C0 5E 01 BC */	lfs f2, 0x1bc(r30)
/* 800336EC 0002F34C  C0 7E 01 C0 */	lfs f3, 0x1c0(r30)
/* 800336F0 0002F350  C0 9E 01 C4 */	lfs f4, 0x1c4(r30)
/* 800336F4 0002F354  48 00 09 DD */	bl func_800340D0
/* 800336F8 0002F358  48 00 00 38 */	b lbl_80033730
/* 800336FC 0002F35C  C0 3E 01 CC */	lfs f1, 0x1cc(r30)
/* 80033700 0002F360  7F C3 F3 78 */	mr r3, r30
/* 80033704 0002F364  48 00 0A 6D */	bl func_80034170
/* 80033708 0002F368  48 00 00 28 */	b lbl_80033730
/* 8003370C 0002F36C  C0 3E 01 C8 */	lfs f1, 0x1c8(r30)
/* 80033710 0002F370  7F C3 F3 78 */	mr r3, r30
/* 80033714 0002F374  48 00 0B 6D */	bl func_80034280
/* 80033718 0002F378  48 00 00 18 */	b lbl_80033730
/* 8003371C 0002F37C  48 00 11 FD */	bl func_80034918
/* 80033720 0002F380  48 00 00 10 */	b lbl_80033730
/* 80033724 0002F384  48 00 11 F5 */	bl func_80034918
/* 80033728 0002F388  48 00 00 08 */	b lbl_80033730
/* 8003372C 0002F38C  48 00 11 ED */	bl func_80034918
lbl_80033730:
/* 80033730 0002F390  FC 20 F8 90 */	fmr f1, f31
/* 80033734 0002F394  7F C3 F3 78 */	mr r3, r30
/* 80033738 0002F398  48 00 20 F1 */	bl func_80035828
/* 8003373C 0002F39C  FC 20 F8 90 */	fmr f1, f31
/* 80033740 0002F3A0  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 80033744 0002F3A4  48 00 20 E5 */	bl func_80035828
/* 80033748 0002F3A8  81 9E 05 FC */	lwz r12, 0x5fc(r30)
/* 8003374C 0002F3AC  FC 20 F8 90 */	fmr f1, f31
/* 80033750 0002F3B0  38 7E 05 DC */	addi r3, r30, 0x5dc
/* 80033754 0002F3B4  81 8C 00 08 */	lwz r12, 8(r12)
/* 80033758 0002F3B8  7D 89 03 A6 */	mtctr r12
/* 8003375C 0002F3BC  4E 80 04 21 */	bctrl
/* 80033760 0002F3C0  2C 03 00 00 */	cmpwi r3, 0
/* 80033764 0002F3C4  41 82 00 10 */	beq lbl_80033774
/* 80033768 0002F3C8  C0 1E 01 6C */	lfs f0, 0x16c(r30)
/* 8003376C 0002F3CC  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80033770 0002F3D0  D0 03 04 50 */	stfs f0, 0x450(r3)
lbl_80033774:
/* 80033774 0002F3D4  81 9E 06 20 */	lwz r12, 0x620(r30)
/* 80033778 0002F3D8  FC 20 F8 90 */	fmr f1, f31
/* 8003377C 0002F3DC  38 7E 06 00 */	addi r3, r30, 0x600
/* 80033780 0002F3E0  81 8C 00 08 */	lwz r12, 8(r12)
/* 80033784 0002F3E4  7D 89 03 A6 */	mtctr r12
/* 80033788 0002F3E8  4E 80 04 21 */	bctrl
/* 8003378C 0002F3EC  2C 03 00 00 */	cmpwi r3, 0
/* 80033790 0002F3F0  41 82 00 20 */	beq lbl_800337B0
/* 80033794 0002F3F4  C0 1E 01 D8 */	lfs f0, 0x1d8(r30)
/* 80033798 0002F3F8  7F C3 F3 78 */	mr r3, r30
/* 8003379C 0002F3FC  FC 00 00 1E */	fctiwz f0, f0
/* 800337A0 0002F400  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 800337A4 0002F404  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800337A8 0002F408  98 1E 01 94 */	stb r0, 0x194(r30)
/* 800337AC 0002F40C  48 00 1A 7D */	bl func_80035228
lbl_800337B0:
/* 800337B0 0002F410  81 9E 06 68 */	lwz r12, 0x668(r30)
/* 800337B4 0002F414  FC 20 F8 90 */	fmr f1, f31
/* 800337B8 0002F418  38 7E 06 48 */	addi r3, r30, 0x648
/* 800337BC 0002F41C  3B 80 00 00 */	li r28, 0
/* 800337C0 0002F420  81 8C 00 08 */	lwz r12, 8(r12)
/* 800337C4 0002F424  7D 89 03 A6 */	mtctr r12
/* 800337C8 0002F428  4E 80 04 21 */	bctrl
/* 800337CC 0002F42C  2C 03 00 00 */	cmpwi r3, 0
/* 800337D0 0002F430  41 82 00 08 */	beq lbl_800337D8
/* 800337D4 0002F434  3B 80 00 01 */	li r28, 1
lbl_800337D8:
/* 800337D8 0002F438  81 9E 06 8C */	lwz r12, 0x68c(r30)
/* 800337DC 0002F43C  FC 20 F8 90 */	fmr f1, f31
/* 800337E0 0002F440  38 7E 06 6C */	addi r3, r30, 0x66c
/* 800337E4 0002F444  81 8C 00 08 */	lwz r12, 8(r12)
/* 800337E8 0002F448  7D 89 03 A6 */	mtctr r12
/* 800337EC 0002F44C  4E 80 04 21 */	bctrl
/* 800337F0 0002F450  2C 03 00 00 */	cmpwi r3, 0
/* 800337F4 0002F454  41 82 00 08 */	beq lbl_800337FC
/* 800337F8 0002F458  3B 80 00 01 */	li r28, 1
lbl_800337FC:
/* 800337FC 0002F45C  81 9E 06 44 */	lwz r12, 0x644(r30)
/* 80033800 0002F460  FC 20 F8 90 */	fmr f1, f31
/* 80033804 0002F464  38 7E 06 24 */	addi r3, r30, 0x624
/* 80033808 0002F468  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003380C 0002F46C  7D 89 03 A6 */	mtctr r12
/* 80033810 0002F470  4E 80 04 21 */	bctrl
/* 80033814 0002F474  2C 03 00 00 */	cmpwi r3, 0
/* 80033818 0002F478  41 82 00 08 */	beq lbl_80033820
/* 8003381C 0002F47C  3B 80 00 01 */	li r28, 1
lbl_80033820:
/* 80033820 0002F480  2C 1C 00 00 */	cmpwi r28, 0
/* 80033824 0002F484  41 82 00 0C */	beq lbl_80033830
/* 80033828 0002F488  7F C3 F3 78 */	mr r3, r30
/* 8003382C 0002F48C  48 00 17 1D */	bl func_80034F48
lbl_80033830:
/* 80033830 0002F490  88 1E 01 A4 */	lbz r0, 0x1a4(r30)
/* 80033834 0002F494  2C 00 00 00 */	cmpwi r0, 0
/* 80033838 0002F498  41 82 03 1C */	beq lbl_80033B54
/* 8003383C 0002F49C  88 9E 00 B5 */	lbz r4, 0xb5(r30)
/* 80033840 0002F4A0  88 1E 00 01 */	lbz r0, 1(r30)
/* 80033844 0002F4A4  7C 64 00 D0 */	neg r3, r4
/* 80033848 0002F4A8  7C 63 23 78 */	or r3, r3, r4
/* 8003384C 0002F4AC  7C 63 FE 70 */	srawi r3, r3, 0x1f
/* 80033850 0002F4B0  54 63 07 BC */	rlwinm r3, r3, 0, 0x1e, 0x1e
/* 80033854 0002F4B4  7C 00 1B 79 */	or. r0, r0, r3
/* 80033858 0002F4B8  41 82 02 FC */	beq lbl_80033B54
/* 8003385C 0002F4BC  38 60 00 02 */	li r3, 2
/* 80033860 0002F4C0  48 20 77 F9 */	bl func_8023B058
/* 80033864 0002F4C4  2C 03 00 00 */	cmpwi r3, 0
/* 80033868 0002F4C8  7C 7F 1B 78 */	mr r31, r3
/* 8003386C 0002F4CC  41 82 02 E8 */	beq lbl_80033B54
/* 80033870 0002F4D0  80 1E 01 A0 */	lwz r0, 0x1a0(r30)
/* 80033874 0002F4D4  2C 00 00 05 */	cmpwi r0, 5
/* 80033878 0002F4D8  41 82 01 1C */	beq lbl_80033994
/* 8003387C 0002F4DC  40 80 00 1C */	bge lbl_80033898
/* 80033880 0002F4E0  2C 00 00 00 */	cmpwi r0, 0
/* 80033884 0002F4E4  41 82 00 24 */	beq lbl_800338A8
/* 80033888 0002F4E8  41 80 02 C4 */	blt lbl_80033B4C
/* 8003388C 0002F4EC  2C 00 00 04 */	cmpwi r0, 4
/* 80033890 0002F4F0  40 80 00 BC */	bge lbl_8003394C
/* 80033894 0002F4F4  48 00 00 2C */	b lbl_800338C0
lbl_80033898:
/* 80033898 0002F4F8  2C 00 00 07 */	cmpwi r0, 7
/* 8003389C 0002F4FC  41 82 02 44 */	beq lbl_80033AE0
/* 800338A0 0002F500  40 80 02 AC */	bge lbl_80033B4C
/* 800338A4 0002F504  48 00 01 7C */	b lbl_80033A20
lbl_800338A8:
/* 800338A8 0002F508  7F C3 F3 78 */	mr r3, r30
/* 800338AC 0002F50C  48 00 20 C5 */	bl func_80035970
/* 800338B0 0002F510  38 00 00 00 */	li r0, 0
/* 800338B4 0002F514  90 1F 00 20 */	stw r0, 0x20(r31)
/* 800338B8 0002F518  90 7F 00 0C */	stw r3, 0xc(r31)
/* 800338BC 0002F51C  48 00 02 90 */	b lbl_80033B4C
lbl_800338C0:
/* 800338C0 0002F520  38 80 00 01 */	li r4, 1
/* 800338C4 0002F524  48 20 F1 3D */	bl func_80242A00
/* 800338C8 0002F528  7F C3 F3 78 */	mr r3, r30
/* 800338CC 0002F52C  48 00 20 A5 */	bl func_80035970
/* 800338D0 0002F530  90 7F 00 24 */	stw r3, 0x24(r31)
/* 800338D4 0002F534  38 00 00 01 */	li r0, 1
/* 800338D8 0002F538  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 800338DC 0002F53C  98 1F 00 39 */	stb r0, 0x39(r31)
/* 800338E0 0002F540  48 00 20 91 */	bl func_80035970
/* 800338E4 0002F544  90 7F 00 64 */	stw r3, 0x64(r31)
/* 800338E8 0002F548  38 00 00 00 */	li r0, 0
/* 800338EC 0002F54C  7F E3 FB 78 */	mr r3, r31
/* 800338F0 0002F550  38 80 00 00 */	li r4, 0
/* 800338F4 0002F554  98 1F 00 79 */	stb r0, 0x79(r31)
/* 800338F8 0002F558  38 A0 00 01 */	li r5, 1
/* 800338FC 0002F55C  38 C0 00 01 */	li r6, 1
/* 80033900 0002F560  C0 5E 00 10 */	lfs f2, 0x10(r30)
/* 80033904 0002F564  C0 7E 00 18 */	lfs f3, 0x18(r30)
/* 80033908 0002F568  C0 3E 00 0C */	lfs f1, 0xc(r30)
/* 8003390C 0002F56C  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80033910 0002F570  EC 83 10 28 */	fsubs f4, f3, f2
/* 80033914 0002F574  EC 60 08 28 */	fsubs f3, f0, f1
/* 80033918 0002F578  48 20 F1 25 */	bl func_80242A3C
/* 8003391C 0002F57C  C0 5E 00 C4 */	lfs f2, 0xc4(r30)
/* 80033920 0002F580  7F E3 FB 78 */	mr r3, r31
/* 80033924 0002F584  C0 7E 00 CC */	lfs f3, 0xcc(r30)
/* 80033928 0002F588  38 80 00 01 */	li r4, 1
/* 8003392C 0002F58C  C0 3E 00 C0 */	lfs f1, 0xc0(r30)
/* 80033930 0002F590  38 A0 00 00 */	li r5, 0
/* 80033934 0002F594  C0 1E 00 C8 */	lfs f0, 0xc8(r30)
/* 80033938 0002F598  EC 83 10 28 */	fsubs f4, f3, f2
/* 8003393C 0002F59C  38 C0 00 01 */	li r6, 1
/* 80033940 0002F5A0  EC 60 08 28 */	fsubs f3, f0, f1
/* 80033944 0002F5A4  48 20 F0 F9 */	bl func_80242A3C
/* 80033948 0002F5A8  48 00 02 04 */	b lbl_80033B4C
lbl_8003394C:
/* 8003394C 0002F5AC  38 80 00 02 */	li r4, 2
/* 80033950 0002F5B0  48 20 F0 B1 */	bl func_80242A00
/* 80033954 0002F5B4  2C 03 00 00 */	cmpwi r3, 0
/* 80033958 0002F5B8  41 82 01 F4 */	beq lbl_80033B4C
/* 8003395C 0002F5BC  7F C3 F3 78 */	mr r3, r30
/* 80033960 0002F5C0  48 00 20 11 */	bl func_80035970
/* 80033964 0002F5C4  90 7F 00 24 */	stw r3, 0x24(r31)
/* 80033968 0002F5C8  3B A0 00 00 */	li r29, 0
/* 8003396C 0002F5CC  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 80033970 0002F5D0  9B BF 00 39 */	stb r29, 0x39(r31)
/* 80033974 0002F5D4  48 00 1F FD */	bl func_80035970
/* 80033978 0002F5D8  90 7F 00 64 */	stw r3, 0x64(r31)
/* 8003397C 0002F5DC  7F E3 FB 78 */	mr r3, r31
/* 80033980 0002F5E0  38 9E 01 A8 */	addi r4, r30, 0x1a8
/* 80033984 0002F5E4  38 BE 01 B0 */	addi r5, r30, 0x1b0
/* 80033988 0002F5E8  9B BF 00 79 */	stb r29, 0x79(r31)
/* 8003398C 0002F5EC  48 20 F3 45 */	bl func_80242CD0
/* 80033990 0002F5F0  48 00 01 BC */	b lbl_80033B4C
lbl_80033994:
/* 80033994 0002F5F4  80 1E 01 E0 */	lwz r0, 0x1e0(r30)
/* 80033998 0002F5F8  2C 00 00 00 */	cmpwi r0, 0
/* 8003399C 0002F5FC  41 82 01 B0 */	beq lbl_80033B4C
/* 800339A0 0002F600  38 80 00 03 */	li r4, 3
/* 800339A4 0002F604  48 20 F0 5D */	bl func_80242A00
/* 800339A8 0002F608  7F C3 F3 78 */	mr r3, r30
/* 800339AC 0002F60C  48 00 1F C5 */	bl func_80035970
/* 800339B0 0002F610  90 7F 00 24 */	stw r3, 0x24(r31)
/* 800339B4 0002F614  3B A0 00 00 */	li r29, 0
/* 800339B8 0002F618  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 800339BC 0002F61C  9B BF 00 39 */	stb r29, 0x39(r31)
/* 800339C0 0002F620  48 00 1F B1 */	bl func_80035970
/* 800339C4 0002F624  90 7F 00 64 */	stw r3, 0x64(r31)
/* 800339C8 0002F628  9B BF 00 79 */	stb r29, 0x79(r31)
/* 800339CC 0002F62C  80 1E 01 E0 */	lwz r0, 0x1e0(r30)
/* 800339D0 0002F630  90 1F 00 A8 */	stw r0, 0xa8(r31)
/* 800339D4 0002F634  88 1E 01 DC */	lbz r0, 0x1dc(r30)
/* 800339D8 0002F638  98 1F 00 C4 */	stb r0, 0xc4(r31)
/* 800339DC 0002F63C  88 1E 01 DD */	lbz r0, 0x1dd(r30)
/* 800339E0 0002F640  98 1F 00 C5 */	stb r0, 0xc5(r31)
/* 800339E4 0002F644  88 1E 01 DE */	lbz r0, 0x1de(r30)
/* 800339E8 0002F648  98 1F 00 C6 */	stb r0, 0xc6(r31)
/* 800339EC 0002F64C  88 1E 01 DF */	lbz r0, 0x1df(r30)
/* 800339F0 0002F650  98 1F 00 C7 */	stb r0, 0xc7(r31)
/* 800339F4 0002F654  C0 1E 01 E8 */	lfs f0, 0x1e8(r30)
/* 800339F8 0002F658  D0 1F 00 AC */	stfs f0, 0xac(r31)
/* 800339FC 0002F65C  C0 1E 01 EC */	lfs f0, 0x1ec(r30)
/* 80033A00 0002F660  D0 1F 00 B0 */	stfs f0, 0xb0(r31)
/* 80033A04 0002F664  C0 1E 01 F0 */	lfs f0, 0x1f0(r30)
/* 80033A08 0002F668  D0 1F 00 B4 */	stfs f0, 0xb4(r31)
/* 80033A0C 0002F66C  C0 1E 01 F4 */	lfs f0, 0x1f4(r30)
/* 80033A10 0002F670  D0 1F 00 B8 */	stfs f0, 0xb8(r31)
/* 80033A14 0002F674  C0 1E 01 F8 */	lfs f0, 0x1f8(r30)
/* 80033A18 0002F678  D0 1F 00 BC */	stfs f0, 0xbc(r31)
/* 80033A1C 0002F67C  48 00 01 30 */	b lbl_80033B4C
lbl_80033A20:
/* 80033A20 0002F680  38 80 00 04 */	li r4, 4
/* 80033A24 0002F684  48 20 EF DD */	bl func_80242A00
/* 80033A28 0002F688  80 1E 01 E4 */	lwz r0, 0x1e4(r30)
/* 80033A2C 0002F68C  2C 00 00 01 */	cmpwi r0, 1
/* 80033A30 0002F690  41 82 00 20 */	beq lbl_80033A50
/* 80033A34 0002F694  40 80 00 3C */	bge lbl_80033A70
/* 80033A38 0002F698  2C 00 00 00 */	cmpwi r0, 0
/* 80033A3C 0002F69C  40 80 00 08 */	bge lbl_80033A44
/* 80033A40 0002F6A0  48 00 00 30 */	b lbl_80033A70
lbl_80033A44:
/* 80033A44 0002F6A4  38 00 00 00 */	li r0, 0
/* 80033A48 0002F6A8  90 1F 00 C8 */	stw r0, 0xc8(r31)
/* 80033A4C 0002F6AC  48 00 00 24 */	b lbl_80033A70
lbl_80033A50:
/* 80033A50 0002F6B0  C0 62 81 DC */	lfs f3, lbl_806407DC-_SDA2_BASE_(r2)
/* 80033A54 0002F6B4  7F E3 FB 78 */	mr r3, r31
/* 80033A58 0002F6B8  C0 22 81 F0 */	lfs f1, lbl_806407F0-_SDA2_BASE_(r2)
/* 80033A5C 0002F6BC  38 80 00 0C */	li r4, 0xc
/* 80033A60 0002F6C0  FC A0 18 90 */	fmr f5, f3
/* 80033A64 0002F6C4  C0 42 81 F4 */	lfs f2, lbl_806407F4-_SDA2_BASE_(r2)
/* 80033A68 0002F6C8  C0 82 81 F8 */	lfs f4, lbl_806407F8-_SDA2_BASE_(r2)
/* 80033A6C 0002F6CC  48 20 FA CD */	bl func_80243538
lbl_80033A70:
/* 80033A70 0002F6D0  7F C3 F3 78 */	mr r3, r30
/* 80033A74 0002F6D4  48 00 1E FD */	bl func_80035970
/* 80033A78 0002F6D8  90 7F 00 24 */	stw r3, 0x24(r31)
/* 80033A7C 0002F6DC  3B A0 00 00 */	li r29, 0
/* 80033A80 0002F6E0  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 80033A84 0002F6E4  9B BF 00 39 */	stb r29, 0x39(r31)
/* 80033A88 0002F6E8  48 00 1E E9 */	bl func_80035970
/* 80033A8C 0002F6EC  90 7F 00 64 */	stw r3, 0x64(r31)
/* 80033A90 0002F6F0  9B BF 00 79 */	stb r29, 0x79(r31)
/* 80033A94 0002F6F4  88 1E 01 DC */	lbz r0, 0x1dc(r30)
/* 80033A98 0002F6F8  98 1F 00 C4 */	stb r0, 0xc4(r31)
/* 80033A9C 0002F6FC  88 1E 01 DD */	lbz r0, 0x1dd(r30)
/* 80033AA0 0002F700  98 1F 00 C5 */	stb r0, 0xc5(r31)
/* 80033AA4 0002F704  88 1E 01 DE */	lbz r0, 0x1de(r30)
/* 80033AA8 0002F708  98 1F 00 C6 */	stb r0, 0xc6(r31)
/* 80033AAC 0002F70C  88 1E 01 DF */	lbz r0, 0x1df(r30)
/* 80033AB0 0002F710  98 1F 00 C7 */	stb r0, 0xc7(r31)
/* 80033AB4 0002F714  C0 1E 01 E8 */	lfs f0, 0x1e8(r30)
/* 80033AB8 0002F718  D0 1F 00 AC */	stfs f0, 0xac(r31)
/* 80033ABC 0002F71C  C0 1E 01 EC */	lfs f0, 0x1ec(r30)
/* 80033AC0 0002F720  D0 1F 00 B0 */	stfs f0, 0xb0(r31)
/* 80033AC4 0002F724  C0 1E 01 F0 */	lfs f0, 0x1f0(r30)
/* 80033AC8 0002F728  D0 1F 00 B4 */	stfs f0, 0xb4(r31)
/* 80033ACC 0002F72C  C0 1E 01 F4 */	lfs f0, 0x1f4(r30)
/* 80033AD0 0002F730  D0 1F 00 B8 */	stfs f0, 0xb8(r31)
/* 80033AD4 0002F734  C0 1E 01 F8 */	lfs f0, 0x1f8(r30)
/* 80033AD8 0002F738  D0 1F 00 BC */	stfs f0, 0xbc(r31)
/* 80033ADC 0002F73C  48 00 00 70 */	b lbl_80033B4C
lbl_80033AE0:
/* 80033AE0 0002F740  38 80 00 05 */	li r4, 5
/* 80033AE4 0002F744  48 20 EF 1D */	bl func_80242A00
/* 80033AE8 0002F748  7F C3 F3 78 */	mr r3, r30
/* 80033AEC 0002F74C  48 00 1E 85 */	bl func_80035970
/* 80033AF0 0002F750  90 7F 00 24 */	stw r3, 0x24(r31)
/* 80033AF4 0002F754  3B A0 00 00 */	li r29, 0
/* 80033AF8 0002F758  38 7E 00 B4 */	addi r3, r30, 0xb4
/* 80033AFC 0002F75C  9B BF 00 39 */	stb r29, 0x39(r31)
/* 80033B00 0002F760  48 00 1E 71 */	bl func_80035970
/* 80033B04 0002F764  90 7F 00 64 */	stw r3, 0x64(r31)
/* 80033B08 0002F768  9B BF 00 79 */	stb r29, 0x79(r31)
/* 80033B0C 0002F76C  88 1E 01 DC */	lbz r0, 0x1dc(r30)
/* 80033B10 0002F770  98 1F 00 C4 */	stb r0, 0xc4(r31)
/* 80033B14 0002F774  88 1E 01 DD */	lbz r0, 0x1dd(r30)
/* 80033B18 0002F778  98 1F 00 C5 */	stb r0, 0xc5(r31)
/* 80033B1C 0002F77C  88 1E 01 DE */	lbz r0, 0x1de(r30)
/* 80033B20 0002F780  98 1F 00 C6 */	stb r0, 0xc6(r31)
/* 80033B24 0002F784  88 1E 01 DF */	lbz r0, 0x1df(r30)
/* 80033B28 0002F788  98 1F 00 C7 */	stb r0, 0xc7(r31)
/* 80033B2C 0002F78C  C0 1E 01 E8 */	lfs f0, 0x1e8(r30)
/* 80033B30 0002F790  D0 1F 00 AC */	stfs f0, 0xac(r31)
/* 80033B34 0002F794  C0 1E 01 EC */	lfs f0, 0x1ec(r30)
/* 80033B38 0002F798  D0 1F 00 B0 */	stfs f0, 0xb0(r31)
/* 80033B3C 0002F79C  C0 1E 01 F0 */	lfs f0, 0x1f0(r30)
/* 80033B40 0002F7A0  D0 1F 00 B4 */	stfs f0, 0xb4(r31)
/* 80033B44 0002F7A4  C0 1E 01 FC */	lfs f0, 0x1fc(r30)
/* 80033B48 0002F7A8  D0 1F 00 C0 */	stfs f0, 0xc0(r31)
lbl_80033B4C:
/* 80033B4C 0002F7AC  38 00 00 00 */	li r0, 0
/* 80033B50 0002F7B0  98 1E 01 A4 */	stb r0, 0x1a4(r30)
lbl_80033B54:
/* 80033B54 0002F7B4  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80033B58 0002F7B8  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80033B5C 0002F7BC  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 80033B60 0002F7C0  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80033B64 0002F7C4  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80033B68 0002F7C8  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 80033B6C 0002F7CC  83 81 00 30 */	lwz r28, 0x30(r1)
/* 80033B70 0002F7D0  7C 08 03 A6 */	mtlr r0
/* 80033B74 0002F7D4  38 21 00 50 */	addi r1, r1, 0x50
/* 80033B78 0002F7D8  4E 80 00 20 */	blr

.global func_80033B7C
func_80033B7C:
/* 80033B7C 0002F7DC  28 04 00 02 */	cmplwi r4, 2
/* 80033B80 0002F7E0  41 80 00 0C */	blt lbl_80033B8C
/* 80033B84 0002F7E4  38 60 00 00 */	li r3, 0
/* 80033B88 0002F7E8  4E 80 00 20 */	blr
lbl_80033B8C:
/* 80033B8C 0002F7EC  1C 04 00 B4 */	mulli r0, r4, 0xb4
/* 80033B90 0002F7F0  7C 63 02 14 */	add r3, r3, r0
/* 80033B94 0002F7F4  4E 80 00 20 */	blr

.global func_80033B98
func_80033B98:
/* 80033B98 0002F7F8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80033B9C 0002F7FC  7C 08 02 A6 */	mflr r0
/* 80033BA0 0002F800  90 01 00 24 */	stw r0, 0x24(r1)
/* 80033BA4 0002F804  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80033BA8 0002F808  3B E0 00 00 */	li r31, 0
/* 80033BAC 0002F80C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80033BB0 0002F810  7C 9E 23 78 */	mr r30, r4
/* 80033BB4 0002F814  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80033BB8 0002F818  7C 7D 1B 78 */	mr r29, r3
lbl_80033BBC:
/* 80033BBC 0002F81C  57 E0 04 3E */	clrlwi r0, r31, 0x10
/* 80033BC0 0002F820  1C 00 00 B4 */	mulli r0, r0, 0xb4
/* 80033BC4 0002F824  7C 7D 02 14 */	add r3, r29, r0
/* 80033BC8 0002F828  48 00 18 2D */	bl func_800353F4
/* 80033BCC 0002F82C  7C 1E 18 40 */	cmplw r30, r3
/* 80033BD0 0002F830  40 82 00 0C */	bne lbl_80033BDC
/* 80033BD4 0002F834  7F E3 FB 78 */	mr r3, r31
/* 80033BD8 0002F838  48 00 00 18 */	b lbl_80033BF0
lbl_80033BDC:
/* 80033BDC 0002F83C  3B FF 00 01 */	addi r31, r31, 1
/* 80033BE0 0002F840  28 1F 00 02 */	cmplwi r31, 2
/* 80033BE4 0002F844  41 80 FF D8 */	blt lbl_80033BBC
/* 80033BE8 0002F848  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 80033BEC 0002F84C  38 63 FF FF */	addi r3, r3, 0x0000FFFF@l
lbl_80033BF0:
/* 80033BF0 0002F850  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80033BF4 0002F854  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80033BF8 0002F858  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80033BFC 0002F85C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80033C00 0002F860  7C 08 03 A6 */	mtlr r0
/* 80033C04 0002F864  38 21 00 20 */	addi r1, r1, 0x20
/* 80033C08 0002F868  4E 80 00 20 */	blr

.global func_80033C0C
func_80033C0C:
/* 80033C0C 0002F86C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80033C10 0002F870  7C 08 02 A6 */	mflr r0
/* 80033C14 0002F874  38 83 00 C0 */	addi r4, r3, 0xc0
/* 80033C18 0002F878  90 01 00 24 */	stw r0, 0x24(r1)
/* 80033C1C 0002F87C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80033C20 0002F880  7C 7F 1B 78 */	mr r31, r3
/* 80033C24 0002F884  80 A3 00 0C */	lwz r5, 0xc(r3)
/* 80033C28 0002F888  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80033C2C 0002F88C  90 A1 00 08 */	stw r5, 8(r1)
/* 80033C30 0002F890  90 01 00 0C */	stw r0, 0xc(r1)
/* 80033C34 0002F894  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 80033C38 0002F898  80 03 00 18 */	lwz r0, 0x18(r3)
/* 80033C3C 0002F89C  90 A1 00 10 */	stw r5, 0x10(r1)
/* 80033C40 0002F8A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80033C44 0002F8A4  48 00 18 95 */	bl func_800354D8
/* 80033C48 0002F8A8  38 7F 00 B4 */	addi r3, r31, 0xb4
/* 80033C4C 0002F8AC  38 81 00 08 */	addi r4, r1, 8
/* 80033C50 0002F8B0  48 00 18 89 */	bl func_800354D8
/* 80033C54 0002F8B4  48 00 0C C5 */	bl func_80034918
/* 80033C58 0002F8B8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80033C5C 0002F8BC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80033C60 0002F8C0  7C 08 03 A6 */	mtlr r0
/* 80033C64 0002F8C4  38 21 00 20 */	addi r1, r1, 0x20
/* 80033C68 0002F8C8  4E 80 00 20 */	blr

.global func_80033C6C
func_80033C6C:
/* 80033C6C 0002F8CC  94 21 FF 00 */	stwu r1, -0x100(r1)
/* 80033C70 0002F8D0  7C 08 02 A6 */	mflr r0
/* 80033C74 0002F8D4  90 01 01 04 */	stw r0, 0x104(r1)
/* 80033C78 0002F8D8  DB E1 00 F0 */	stfd f31, 0xf0(r1)
/* 80033C7C 0002F8DC  F3 E1 00 F8 */	psq_st f31, 248(r1), 0, qr0
/* 80033C80 0002F8E0  DB C1 00 E0 */	stfd f30, 0xe0(r1)
/* 80033C84 0002F8E4  F3 C1 00 E8 */	psq_st f30, 232(r1), 0, qr0
/* 80033C88 0002F8E8  39 61 00 E0 */	addi r11, r1, 0xe0
/* 80033C8C 0002F8EC  48 19 34 91 */	bl _savegpr_24
/* 80033C90 0002F8F0  7C 7F 1B 78 */	mr r31, r3
/* 80033C94 0002F8F4  38 61 00 08 */	addi r3, r1, 8
/* 80033C98 0002F8F8  48 00 16 E9 */	bl func_80035380
/* 80033C9C 0002F8FC  88 1F 00 00 */	lbz r0, 0(r31)
/* 80033CA0 0002F900  98 01 00 08 */	stb r0, 8(r1)
/* 80033CA4 0002F904  88 1F 00 01 */	lbz r0, 1(r31)
/* 80033CA8 0002F908  98 01 00 09 */	stb r0, 9(r1)
/* 80033CAC 0002F90C  88 1F 00 02 */	lbz r0, 2(r31)
/* 80033CB0 0002F910  98 01 00 0A */	stb r0, 0xa(r1)
/* 80033CB4 0002F914  80 1F 00 04 */	lwz r0, 4(r31)
/* 80033CB8 0002F918  90 01 00 0C */	stw r0, 0xc(r1)
/* 80033CBC 0002F91C  80 1F 00 08 */	lwz r0, 8(r31)
/* 80033CC0 0002F920  90 01 00 10 */	stw r0, 0x10(r1)
/* 80033CC4 0002F924  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 80033CC8 0002F928  80 1F 00 10 */	lwz r0, 0x10(r31)
/* 80033CCC 0002F92C  90 61 00 14 */	stw r3, 0x14(r1)
/* 80033CD0 0002F930  90 01 00 18 */	stw r0, 0x18(r1)
/* 80033CD4 0002F934  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 80033CD8 0002F938  80 1F 00 18 */	lwz r0, 0x18(r31)
/* 80033CDC 0002F93C  90 61 00 1C */	stw r3, 0x1c(r1)
/* 80033CE0 0002F940  90 01 00 20 */	stw r0, 0x20(r1)
/* 80033CE4 0002F944  80 1F 00 1C */	lwz r0, 0x1c(r31)
/* 80033CE8 0002F948  90 01 00 24 */	stw r0, 0x24(r1)
/* 80033CEC 0002F94C  C0 1F 00 20 */	lfs f0, 0x20(r31)
/* 80033CF0 0002F950  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 80033CF4 0002F954  C0 1F 00 24 */	lfs f0, 0x24(r31)
/* 80033CF8 0002F958  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 80033CFC 0002F95C  80 1F 00 28 */	lwz r0, 0x28(r31)
/* 80033D00 0002F960  90 01 00 30 */	stw r0, 0x30(r1)
/* 80033D04 0002F964  C0 1F 00 2C */	lfs f0, 0x2c(r31)
/* 80033D08 0002F968  D0 01 00 34 */	stfs f0, 0x34(r1)
/* 80033D0C 0002F96C  C0 1F 00 30 */	lfs f0, 0x30(r31)
/* 80033D10 0002F970  D0 01 00 38 */	stfs f0, 0x38(r1)
/* 80033D14 0002F974  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 80033D18 0002F978  90 01 00 3C */	stw r0, 0x3c(r1)
/* 80033D1C 0002F97C  80 1F 00 38 */	lwz r0, 0x38(r31)
/* 80033D20 0002F980  90 01 00 40 */	stw r0, 0x40(r1)
/* 80033D24 0002F984  80 1F 00 40 */	lwz r0, 0x40(r31)
/* 80033D28 0002F988  90 01 00 48 */	stw r0, 0x48(r1)
/* 80033D2C 0002F98C  C0 1F 00 44 */	lfs f0, 0x44(r31)
/* 80033D30 0002F990  D0 01 00 4C */	stfs f0, 0x4c(r1)
/* 80033D34 0002F994  C0 1F 00 48 */	lfs f0, 0x48(r31)
/* 80033D38 0002F998  D0 01 00 50 */	stfs f0, 0x50(r1)
/* 80033D3C 0002F99C  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 80033D40 0002F9A0  90 01 00 54 */	stw r0, 0x54(r1)
/* 80033D44 0002F9A4  C0 1F 00 50 */	lfs f0, 0x50(r31)
/* 80033D48 0002F9A8  D0 01 00 58 */	stfs f0, 0x58(r1)
/* 80033D4C 0002F9AC  C0 1F 00 54 */	lfs f0, 0x54(r31)
/* 80033D50 0002F9B0  D0 01 00 5C */	stfs f0, 0x5c(r1)
/* 80033D54 0002F9B4  80 1F 00 58 */	lwz r0, 0x58(r31)
/* 80033D58 0002F9B8  90 01 00 60 */	stw r0, 0x60(r1)
/* 80033D5C 0002F9BC  80 1F 00 5C */	lwz r0, 0x5c(r31)
/* 80033D60 0002F9C0  90 01 00 64 */	stw r0, 0x64(r1)
/* 80033D64 0002F9C4  80 1F 00 64 */	lwz r0, 0x64(r31)
/* 80033D68 0002F9C8  90 01 00 6C */	stw r0, 0x6c(r1)
/* 80033D6C 0002F9CC  C0 1F 00 68 */	lfs f0, 0x68(r31)
/* 80033D70 0002F9D0  D0 01 00 70 */	stfs f0, 0x70(r1)
/* 80033D74 0002F9D4  C0 1F 00 6C */	lfs f0, 0x6c(r31)
/* 80033D78 0002F9D8  D0 01 00 74 */	stfs f0, 0x74(r1)
/* 80033D7C 0002F9DC  80 1F 00 70 */	lwz r0, 0x70(r31)
/* 80033D80 0002F9E0  90 01 00 78 */	stw r0, 0x78(r1)
/* 80033D84 0002F9E4  C0 1F 00 74 */	lfs f0, 0x74(r31)
/* 80033D88 0002F9E8  D0 01 00 7C */	stfs f0, 0x7c(r1)
/* 80033D8C 0002F9EC  C0 1F 00 78 */	lfs f0, 0x78(r31)
/* 80033D90 0002F9F0  D0 01 00 80 */	stfs f0, 0x80(r1)
/* 80033D94 0002F9F4  80 1F 00 7C */	lwz r0, 0x7c(r31)
/* 80033D98 0002F9F8  90 01 00 84 */	stw r0, 0x84(r1)
/* 80033D9C 0002F9FC  80 1F 00 80 */	lwz r0, 0x80(r31)
/* 80033DA0 0002FA00  90 01 00 88 */	stw r0, 0x88(r1)
/* 80033DA4 0002FA04  80 1F 00 88 */	lwz r0, 0x88(r31)
/* 80033DA8 0002FA08  90 01 00 90 */	stw r0, 0x90(r1)
/* 80033DAC 0002FA0C  C0 1F 00 8C */	lfs f0, 0x8c(r31)
/* 80033DB0 0002FA10  D0 01 00 94 */	stfs f0, 0x94(r1)
/* 80033DB4 0002FA14  C0 1F 00 90 */	lfs f0, 0x90(r31)
/* 80033DB8 0002FA18  D0 01 00 98 */	stfs f0, 0x98(r1)
/* 80033DBC 0002FA1C  80 1F 00 94 */	lwz r0, 0x94(r31)
/* 80033DC0 0002FA20  90 01 00 9C */	stw r0, 0x9c(r1)
/* 80033DC4 0002FA24  C0 1F 00 98 */	lfs f0, 0x98(r31)
/* 80033DC8 0002FA28  D0 01 00 A0 */	stfs f0, 0xa0(r1)
/* 80033DCC 0002FA2C  C0 1F 00 9C */	lfs f0, 0x9c(r31)
/* 80033DD0 0002FA30  D0 01 00 A4 */	stfs f0, 0xa4(r1)
/* 80033DD4 0002FA34  80 1F 00 A0 */	lwz r0, 0xa0(r31)
/* 80033DD8 0002FA38  90 01 00 A8 */	stw r0, 0xa8(r1)
/* 80033DDC 0002FA3C  80 1F 00 A4 */	lwz r0, 0xa4(r31)
/* 80033DE0 0002FA40  90 01 00 AC */	stw r0, 0xac(r1)
/* 80033DE4 0002FA44  80 1F 00 AC */	lwz r0, 0xac(r31)
/* 80033DE8 0002FA48  90 01 00 B4 */	stw r0, 0xb4(r1)
/* 80033DEC 0002FA4C  80 1F 00 B0 */	lwz r0, 0xb0(r31)
/* 80033DF0 0002FA50  90 01 00 B8 */	stw r0, 0xb8(r1)
/* 80033DF4 0002FA54  89 5F 00 B4 */	lbz r10, 0xb4(r31)
/* 80033DF8 0002FA58  89 3F 00 B5 */	lbz r9, 0xb5(r31)
/* 80033DFC 0002FA5C  89 1F 00 B6 */	lbz r8, 0xb6(r31)
/* 80033E00 0002FA60  80 FF 00 B8 */	lwz r7, 0xb8(r31)
/* 80033E04 0002FA64  80 DF 00 BC */	lwz r6, 0xbc(r31)
/* 80033E08 0002FA68  80 BF 00 C0 */	lwz r5, 0xc0(r31)
/* 80033E0C 0002FA6C  80 9F 00 C4 */	lwz r4, 0xc4(r31)
/* 80033E10 0002FA70  80 7F 00 C8 */	lwz r3, 0xc8(r31)
/* 80033E14 0002FA74  80 1F 00 CC */	lwz r0, 0xcc(r31)
/* 80033E18 0002FA78  99 5F 00 00 */	stb r10, 0(r31)
/* 80033E1C 0002FA7C  99 3F 00 01 */	stb r9, 1(r31)
/* 80033E20 0002FA80  99 1F 00 02 */	stb r8, 2(r31)
/* 80033E24 0002FA84  90 FF 00 04 */	stw r7, 4(r31)
/* 80033E28 0002FA88  90 DF 00 08 */	stw r6, 8(r31)
/* 80033E2C 0002FA8C  90 BF 00 0C */	stw r5, 0xc(r31)
/* 80033E30 0002FA90  90 9F 00 10 */	stw r4, 0x10(r31)
/* 80033E34 0002FA94  90 7F 00 14 */	stw r3, 0x14(r31)
/* 80033E38 0002FA98  90 1F 00 18 */	stw r0, 0x18(r31)
/* 80033E3C 0002FA9C  83 1F 00 D0 */	lwz r24, 0xd0(r31)
/* 80033E40 0002FAA0  C3 DF 00 D4 */	lfs f30, 0xd4(r31)
/* 80033E44 0002FAA4  C3 FF 00 D8 */	lfs f31, 0xd8(r31)
/* 80033E48 0002FAA8  83 3F 00 DC */	lwz r25, 0xdc(r31)
/* 80033E4C 0002FAAC  C1 BF 00 E0 */	lfs f13, 0xe0(r31)
/* 80033E50 0002FAB0  C1 9F 00 E4 */	lfs f12, 0xe4(r31)
/* 80033E54 0002FAB4  83 5F 00 E8 */	lwz r26, 0xe8(r31)
/* 80033E58 0002FAB8  83 7F 00 EC */	lwz r27, 0xec(r31)
/* 80033E5C 0002FABC  83 9F 00 F4 */	lwz r28, 0xf4(r31)
/* 80033E60 0002FAC0  C1 7F 00 F8 */	lfs f11, 0xf8(r31)
/* 80033E64 0002FAC4  C1 5F 00 FC */	lfs f10, 0xfc(r31)
/* 80033E68 0002FAC8  83 BF 01 00 */	lwz r29, 0x100(r31)
/* 80033E6C 0002FACC  C1 3F 01 04 */	lfs f9, 0x104(r31)
/* 80033E70 0002FAD0  C1 1F 01 08 */	lfs f8, 0x108(r31)
/* 80033E74 0002FAD4  83 DF 01 0C */	lwz r30, 0x10c(r31)
/* 80033E78 0002FAD8  81 9F 01 10 */	lwz r12, 0x110(r31)
/* 80033E7C 0002FADC  81 7F 01 18 */	lwz r11, 0x118(r31)
/* 80033E80 0002FAE0  C0 FF 01 1C */	lfs f7, 0x11c(r31)
/* 80033E84 0002FAE4  C0 DF 01 20 */	lfs f6, 0x120(r31)
/* 80033E88 0002FAE8  81 5F 01 24 */	lwz r10, 0x124(r31)
/* 80033E8C 0002FAEC  C0 BF 01 28 */	lfs f5, 0x128(r31)
/* 80033E90 0002FAF0  C0 9F 01 2C */	lfs f4, 0x12c(r31)
/* 80033E94 0002FAF4  81 3F 01 30 */	lwz r9, 0x130(r31)
/* 80033E98 0002FAF8  81 1F 01 34 */	lwz r8, 0x134(r31)
/* 80033E9C 0002FAFC  80 FF 01 3C */	lwz r7, 0x13c(r31)
/* 80033EA0 0002FB00  C0 7F 01 40 */	lfs f3, 0x140(r31)
/* 80033EA4 0002FB04  C0 5F 01 44 */	lfs f2, 0x144(r31)
/* 80033EA8 0002FB08  80 DF 01 48 */	lwz r6, 0x148(r31)
/* 80033EAC 0002FB0C  C0 3F 01 4C */	lfs f1, 0x14c(r31)
/* 80033EB0 0002FB10  C0 1F 01 50 */	lfs f0, 0x150(r31)
/* 80033EB4 0002FB14  80 BF 01 54 */	lwz r5, 0x154(r31)
/* 80033EB8 0002FB18  80 9F 01 58 */	lwz r4, 0x158(r31)
/* 80033EBC 0002FB1C  80 7F 01 60 */	lwz r3, 0x160(r31)
/* 80033EC0 0002FB20  80 1F 01 64 */	lwz r0, 0x164(r31)
/* 80033EC4 0002FB24  93 1F 00 1C */	stw r24, 0x1c(r31)
/* 80033EC8 0002FB28  D3 DF 00 20 */	stfs f30, 0x20(r31)
/* 80033ECC 0002FB2C  D3 FF 00 24 */	stfs f31, 0x24(r31)
/* 80033ED0 0002FB30  93 3F 00 28 */	stw r25, 0x28(r31)
/* 80033ED4 0002FB34  D1 BF 00 2C */	stfs f13, 0x2c(r31)
/* 80033ED8 0002FB38  D1 9F 00 30 */	stfs f12, 0x30(r31)
/* 80033EDC 0002FB3C  93 5F 00 34 */	stw r26, 0x34(r31)
/* 80033EE0 0002FB40  93 7F 00 38 */	stw r27, 0x38(r31)
/* 80033EE4 0002FB44  93 9F 00 40 */	stw r28, 0x40(r31)
/* 80033EE8 0002FB48  D1 7F 00 44 */	stfs f11, 0x44(r31)
/* 80033EEC 0002FB4C  D1 5F 00 48 */	stfs f10, 0x48(r31)
/* 80033EF0 0002FB50  93 BF 00 4C */	stw r29, 0x4c(r31)
/* 80033EF4 0002FB54  D1 3F 00 50 */	stfs f9, 0x50(r31)
/* 80033EF8 0002FB58  D1 1F 00 54 */	stfs f8, 0x54(r31)
/* 80033EFC 0002FB5C  93 DF 00 58 */	stw r30, 0x58(r31)
/* 80033F00 0002FB60  91 9F 00 5C */	stw r12, 0x5c(r31)
/* 80033F04 0002FB64  91 7F 00 64 */	stw r11, 0x64(r31)
/* 80033F08 0002FB68  D0 FF 00 68 */	stfs f7, 0x68(r31)
/* 80033F0C 0002FB6C  D0 DF 00 6C */	stfs f6, 0x6c(r31)
/* 80033F10 0002FB70  91 5F 00 70 */	stw r10, 0x70(r31)
/* 80033F14 0002FB74  D0 BF 00 74 */	stfs f5, 0x74(r31)
/* 80033F18 0002FB78  D0 9F 00 78 */	stfs f4, 0x78(r31)
/* 80033F1C 0002FB7C  91 3F 00 7C */	stw r9, 0x7c(r31)
/* 80033F20 0002FB80  91 1F 00 80 */	stw r8, 0x80(r31)
/* 80033F24 0002FB84  90 FF 00 88 */	stw r7, 0x88(r31)
/* 80033F28 0002FB88  D0 7F 00 8C */	stfs f3, 0x8c(r31)
/* 80033F2C 0002FB8C  D0 5F 00 90 */	stfs f2, 0x90(r31)
/* 80033F30 0002FB90  90 DF 00 94 */	stw r6, 0x94(r31)
/* 80033F34 0002FB94  D0 3F 00 98 */	stfs f1, 0x98(r31)
/* 80033F38 0002FB98  D0 1F 00 9C */	stfs f0, 0x9c(r31)
/* 80033F3C 0002FB9C  90 BF 00 A0 */	stw r5, 0xa0(r31)
/* 80033F40 0002FBA0  90 9F 00 A4 */	stw r4, 0xa4(r31)
/* 80033F44 0002FBA4  90 7F 00 AC */	stw r3, 0xac(r31)
/* 80033F48 0002FBA8  90 1F 00 B0 */	stw r0, 0xb0(r31)
/* 80033F4C 0002FBAC  88 01 00 08 */	lbz r0, 8(r1)
/* 80033F50 0002FBB0  98 1F 00 B4 */	stb r0, 0xb4(r31)
/* 80033F54 0002FBB4  88 01 00 09 */	lbz r0, 9(r1)
/* 80033F58 0002FBB8  98 1F 00 B5 */	stb r0, 0xb5(r31)
/* 80033F5C 0002FBBC  88 01 00 0A */	lbz r0, 0xa(r1)
/* 80033F60 0002FBC0  98 1F 00 B6 */	stb r0, 0xb6(r31)
/* 80033F64 0002FBC4  80 01 00 0C */	lwz r0, 0xc(r1)
/* 80033F68 0002FBC8  90 1F 00 B8 */	stw r0, 0xb8(r31)
/* 80033F6C 0002FBCC  80 01 00 10 */	lwz r0, 0x10(r1)
/* 80033F70 0002FBD0  90 1F 00 BC */	stw r0, 0xbc(r31)
/* 80033F74 0002FBD4  80 61 00 14 */	lwz r3, 0x14(r1)
/* 80033F78 0002FBD8  80 01 00 18 */	lwz r0, 0x18(r1)
/* 80033F7C 0002FBDC  90 7F 00 C0 */	stw r3, 0xc0(r31)
/* 80033F80 0002FBE0  90 1F 00 C4 */	stw r0, 0xc4(r31)
/* 80033F84 0002FBE4  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 80033F88 0002FBE8  80 01 00 20 */	lwz r0, 0x20(r1)
/* 80033F8C 0002FBEC  90 7F 00 C8 */	stw r3, 0xc8(r31)
/* 80033F90 0002FBF0  90 1F 00 CC */	stw r0, 0xcc(r31)
/* 80033F94 0002FBF4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80033F98 0002FBF8  90 1F 00 D0 */	stw r0, 0xd0(r31)
/* 80033F9C 0002FBFC  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 80033FA0 0002FC00  D0 1F 00 D4 */	stfs f0, 0xd4(r31)
/* 80033FA4 0002FC04  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 80033FA8 0002FC08  D0 1F 00 D8 */	stfs f0, 0xd8(r31)
/* 80033FAC 0002FC0C  80 01 00 30 */	lwz r0, 0x30(r1)
/* 80033FB0 0002FC10  90 1F 00 DC */	stw r0, 0xdc(r31)
/* 80033FB4 0002FC14  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 80033FB8 0002FC18  D0 1F 00 E0 */	stfs f0, 0xe0(r31)
/* 80033FBC 0002FC1C  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 80033FC0 0002FC20  D0 1F 00 E4 */	stfs f0, 0xe4(r31)
/* 80033FC4 0002FC24  80 01 00 3C */	lwz r0, 0x3c(r1)
/* 80033FC8 0002FC28  90 1F 00 E8 */	stw r0, 0xe8(r31)
/* 80033FCC 0002FC2C  80 01 00 40 */	lwz r0, 0x40(r1)
/* 80033FD0 0002FC30  90 1F 00 EC */	stw r0, 0xec(r31)
/* 80033FD4 0002FC34  80 01 00 48 */	lwz r0, 0x48(r1)
/* 80033FD8 0002FC38  90 1F 00 F4 */	stw r0, 0xf4(r31)
/* 80033FDC 0002FC3C  C0 01 00 4C */	lfs f0, 0x4c(r1)
/* 80033FE0 0002FC40  D0 1F 00 F8 */	stfs f0, 0xf8(r31)
/* 80033FE4 0002FC44  C0 01 00 50 */	lfs f0, 0x50(r1)
/* 80033FE8 0002FC48  D0 1F 00 FC */	stfs f0, 0xfc(r31)
/* 80033FEC 0002FC4C  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80033FF0 0002FC50  90 1F 01 00 */	stw r0, 0x100(r31)
/* 80033FF4 0002FC54  C0 01 00 58 */	lfs f0, 0x58(r1)
/* 80033FF8 0002FC58  D0 1F 01 04 */	stfs f0, 0x104(r31)
/* 80033FFC 0002FC5C  C0 01 00 5C */	lfs f0, 0x5c(r1)
/* 80034000 0002FC60  D0 1F 01 08 */	stfs f0, 0x108(r31)
/* 80034004 0002FC64  80 01 00 60 */	lwz r0, 0x60(r1)
/* 80034008 0002FC68  90 1F 01 0C */	stw r0, 0x10c(r31)
/* 8003400C 0002FC6C  80 01 00 64 */	lwz r0, 0x64(r1)
/* 80034010 0002FC70  90 1F 01 10 */	stw r0, 0x110(r31)
/* 80034014 0002FC74  80 01 00 6C */	lwz r0, 0x6c(r1)
/* 80034018 0002FC78  90 1F 01 18 */	stw r0, 0x118(r31)
/* 8003401C 0002FC7C  C0 01 00 70 */	lfs f0, 0x70(r1)
/* 80034020 0002FC80  D0 1F 01 1C */	stfs f0, 0x11c(r31)
/* 80034024 0002FC84  C0 01 00 74 */	lfs f0, 0x74(r1)
/* 80034028 0002FC88  D0 1F 01 20 */	stfs f0, 0x120(r31)
/* 8003402C 0002FC8C  80 01 00 78 */	lwz r0, 0x78(r1)
/* 80034030 0002FC90  90 1F 01 24 */	stw r0, 0x124(r31)
/* 80034034 0002FC94  C0 01 00 7C */	lfs f0, 0x7c(r1)
/* 80034038 0002FC98  D0 1F 01 28 */	stfs f0, 0x128(r31)
/* 8003403C 0002FC9C  C0 01 00 80 */	lfs f0, 0x80(r1)
/* 80034040 0002FCA0  D0 1F 01 2C */	stfs f0, 0x12c(r31)
/* 80034044 0002FCA4  80 01 00 84 */	lwz r0, 0x84(r1)
/* 80034048 0002FCA8  90 1F 01 30 */	stw r0, 0x130(r31)
/* 8003404C 0002FCAC  80 01 00 88 */	lwz r0, 0x88(r1)
/* 80034050 0002FCB0  90 1F 01 34 */	stw r0, 0x134(r31)
/* 80034054 0002FCB4  80 01 00 90 */	lwz r0, 0x90(r1)
/* 80034058 0002FCB8  90 1F 01 3C */	stw r0, 0x13c(r31)
/* 8003405C 0002FCBC  C0 01 00 94 */	lfs f0, 0x94(r1)
/* 80034060 0002FCC0  D0 1F 01 40 */	stfs f0, 0x140(r31)
/* 80034064 0002FCC4  C0 01 00 98 */	lfs f0, 0x98(r1)
/* 80034068 0002FCC8  D0 1F 01 44 */	stfs f0, 0x144(r31)
/* 8003406C 0002FCCC  80 01 00 9C */	lwz r0, 0x9c(r1)
/* 80034070 0002FCD0  90 1F 01 48 */	stw r0, 0x148(r31)
/* 80034074 0002FCD4  C0 01 00 A0 */	lfs f0, 0xa0(r1)
/* 80034078 0002FCD8  D0 1F 01 4C */	stfs f0, 0x14c(r31)
/* 8003407C 0002FCDC  C0 01 00 A4 */	lfs f0, 0xa4(r1)
/* 80034080 0002FCE0  D0 1F 01 50 */	stfs f0, 0x150(r31)
/* 80034084 0002FCE4  80 01 00 A8 */	lwz r0, 0xa8(r1)
/* 80034088 0002FCE8  90 1F 01 54 */	stw r0, 0x154(r31)
/* 8003408C 0002FCEC  80 01 00 AC */	lwz r0, 0xac(r1)
/* 80034090 0002FCF0  90 1F 01 58 */	stw r0, 0x158(r31)
/* 80034094 0002FCF4  80 01 00 B4 */	lwz r0, 0xb4(r1)
/* 80034098 0002FCF8  90 1F 01 60 */	stw r0, 0x160(r31)
/* 8003409C 0002FCFC  80 01 00 B8 */	lwz r0, 0xb8(r1)
/* 800340A0 0002FD00  90 1F 01 64 */	stw r0, 0x164(r31)
/* 800340A4 0002FD04  48 00 08 75 */	bl func_80034918
/* 800340A8 0002FD08  E3 E1 00 F8 */	psq_l f31, 248(r1), 0, qr0
/* 800340AC 0002FD0C  CB E1 00 F0 */	lfd f31, 0xf0(r1)
/* 800340B0 0002FD10  E3 C1 00 E8 */	psq_l f30, 232(r1), 0, qr0
/* 800340B4 0002FD14  39 61 00 E0 */	addi r11, r1, 0xe0
/* 800340B8 0002FD18  CB C1 00 E0 */	lfd f30, 0xe0(r1)
/* 800340BC 0002FD1C  48 19 30 AD */	bl _restgpr_24
/* 800340C0 0002FD20  80 01 01 04 */	lwz r0, 0x104(r1)
/* 800340C4 0002FD24  7C 08 03 A6 */	mtlr r0
/* 800340C8 0002FD28  38 21 01 00 */	addi r1, r1, 0x100
/* 800340CC 0002FD2C  4E 80 00 20 */	blr

.global func_800340D0
func_800340D0:
/* 800340D0 0002FD30  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800340D4 0002FD34  7C 08 02 A6 */	mflr r0
/* 800340D8 0002FD38  3C 80 43 30 */	lis r4, 0x4330
/* 800340DC 0002FD3C  C8 A2 82 00 */	lfd f5, lbl_80640800-_SDA2_BASE_(r2)
/* 800340E0 0002FD40  90 01 00 24 */	stw r0, 0x24(r1)
/* 800340E4 0002FD44  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 800340E8 0002FD48  90 81 00 08 */	stw r4, 8(r1)
/* 800340EC 0002FD4C  A0 A6 00 04 */	lhz r5, 4(r6)
/* 800340F0 0002FD50  A0 06 00 06 */	lhz r0, 6(r6)
/* 800340F4 0002FD54  90 A1 00 0C */	stw r5, 0xc(r1)
/* 800340F8 0002FD58  C8 01 00 08 */	lfd f0, 8(r1)
/* 800340FC 0002FD5C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80034100 0002FD60  EC C0 28 28 */	fsubs f6, f0, f5
/* 80034104 0002FD64  90 81 00 10 */	stw r4, 0x10(r1)
/* 80034108 0002FD68  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003410C 0002FD6C  EC E1 30 24 */	fdivs f7, f1, f6
/* 80034110 0002FD70  EC 00 28 28 */	fsubs f0, f0, f5
/* 80034114 0002FD74  D0 E3 01 A8 */	stfs f7, 0x1a8(r3)
/* 80034118 0002FD78  EC A3 30 24 */	fdivs f5, f3, f6
/* 8003411C 0002FD7C  EC C2 00 24 */	fdivs f6, f2, f0
/* 80034120 0002FD80  D0 A3 01 B0 */	stfs f5, 0x1b0(r3)
/* 80034124 0002FD84  EC 04 00 24 */	fdivs f0, f4, f0
/* 80034128 0002FD88  D0 C3 01 AC */	stfs f6, 0x1ac(r3)
/* 8003412C 0002FD8C  FC 07 28 00 */	fcmpu cr0, f7, f5
/* 80034130 0002FD90  D0 03 01 B4 */	stfs f0, 0x1b4(r3)
/* 80034134 0002FD94  41 82 00 2C */	beq lbl_80034160
/* 80034138 0002FD98  FC 06 00 00 */	fcmpu cr0, f6, f0
/* 8003413C 0002FD9C  40 82 00 08 */	bne lbl_80034144
/* 80034140 0002FDA0  48 00 00 20 */	b lbl_80034160
lbl_80034144:
/* 80034144 0002FDA4  D0 23 01 B8 */	stfs f1, 0x1b8(r3)
/* 80034148 0002FDA8  38 80 00 04 */	li r4, 4
/* 8003414C 0002FDAC  D0 43 01 BC */	stfs f2, 0x1bc(r3)
/* 80034150 0002FDB0  D0 63 01 C0 */	stfs f3, 0x1c0(r3)
/* 80034154 0002FDB4  D0 83 01 C4 */	stfs f4, 0x1c4(r3)
/* 80034158 0002FDB8  48 00 07 65 */	bl func_800348BC
/* 8003415C 0002FDBC  48 00 07 BD */	bl func_80034918
lbl_80034160:
/* 80034160 0002FDC0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80034164 0002FDC4  7C 08 03 A6 */	mtlr r0
/* 80034168 0002FDC8  38 21 00 20 */	addi r1, r1, 0x20
/* 8003416C 0002FDCC  4E 80 00 20 */	blr

.global func_80034170
func_80034170:
/* 80034170 0002FDD0  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80034174 0002FDD4  7C 08 02 A6 */	mflr r0
/* 80034178 0002FDD8  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003417C 0002FDDC  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80034180 0002FDE0  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80034184 0002FDE4  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 80034188 0002FDE8  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 8003418C 0002FDEC  DB A1 00 20 */	stfd f29, 0x20(r1)
/* 80034190 0002FDF0  F3 A1 00 28 */	psq_st f29, 40(r1), 0, qr0
/* 80034194 0002FDF4  3C 80 43 30 */	lis r4, 0x4330
/* 80034198 0002FDF8  C0 42 81 E4 */	lfs f2, lbl_806407E4-_SDA2_BASE_(r2)
/* 8003419C 0002FDFC  FF A0 08 90 */	fmr f29, f1
/* 800341A0 0002FE00  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800341A4 0002FE04  7C 7F 1B 78 */	mr r31, r3
/* 800341A8 0002FE08  C8 62 82 00 */	lfd f3, lbl_80640800-_SDA2_BASE_(r2)
/* 800341AC 0002FE0C  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 800341B0 0002FE10  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 800341B4 0002FE14  90 81 00 08 */	stw r4, 8(r1)
/* 800341B8 0002FE18  A0 A6 00 04 */	lhz r5, 4(r6)
/* 800341BC 0002FE1C  A0 06 00 06 */	lhz r0, 6(r6)
/* 800341C0 0002FE20  90 A1 00 0C */	stw r5, 0xc(r1)
/* 800341C4 0002FE24  C8 01 00 08 */	lfd f0, 8(r1)
/* 800341C8 0002FE28  90 01 00 14 */	stw r0, 0x14(r1)
/* 800341CC 0002FE2C  EF E0 18 28 */	fsubs f31, f0, f3
/* 800341D0 0002FE30  90 81 00 10 */	stw r4, 0x10(r1)
/* 800341D4 0002FE34  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 800341D8 0002FE38  EF C0 18 28 */	fsubs f30, f0, f3
/* 800341DC 0002FE3C  4C 40 13 82 */	cror 2, 0, 2
/* 800341E0 0002FE40  40 82 00 18 */	bne lbl_800341F8
/* 800341E4 0002FE44  38 80 00 00 */	li r4, 0
/* 800341E8 0002FE48  48 00 06 D5 */	bl func_800348BC
/* 800341EC 0002FE4C  7F E3 FB 78 */	mr r3, r31
/* 800341F0 0002FE50  4B FF FA 7D */	bl func_80033C6C
/* 800341F4 0002FE54  48 00 00 60 */	b lbl_80034254
lbl_800341F8:
/* 800341F8 0002FE58  FC 01 F0 40 */	fcmpo cr0, f1, f30
/* 800341FC 0002FE5C  4C 41 13 82 */	cror 2, 1, 2
/* 80034200 0002FE60  40 82 00 10 */	bne lbl_80034210
/* 80034204 0002FE64  38 80 00 00 */	li r4, 0
/* 80034208 0002FE68  48 00 06 B5 */	bl func_800348BC
/* 8003420C 0002FE6C  48 00 00 48 */	b lbl_80034254
lbl_80034210:
/* 80034210 0002FE70  C0 03 01 D4 */	lfs f0, 0x1d4(r3)
/* 80034214 0002FE74  FC 20 10 90 */	fmr f1, f2
/* 80034218 0002FE78  FC 60 F8 90 */	fmr f3, f31
/* 8003421C 0002FE7C  EC 9D 00 2A */	fadds f4, f29, f0
/* 80034220 0002FE80  48 00 12 DD */	bl func_800354FC
/* 80034224 0002FE84  C0 1F 01 D4 */	lfs f0, 0x1d4(r31)
/* 80034228 0002FE88  FC 60 F8 90 */	fmr f3, f31
/* 8003422C 0002FE8C  FC 80 F0 90 */	fmr f4, f30
/* 80034230 0002FE90  C0 22 81 E4 */	lfs f1, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034234 0002FE94  EC 5D 00 2A */	fadds f2, f29, f0
/* 80034238 0002FE98  38 7F 00 B4 */	addi r3, r31, 0xb4
/* 8003423C 0002FE9C  48 00 12 C1 */	bl func_800354FC
/* 80034240 0002FEA0  D3 BF 01 CC */	stfs f29, 0x1cc(r31)
/* 80034244 0002FEA4  7F E3 FB 78 */	mr r3, r31
/* 80034248 0002FEA8  38 80 00 02 */	li r4, 2
/* 8003424C 0002FEAC  48 00 06 71 */	bl func_800348BC
/* 80034250 0002FEB0  48 00 06 C9 */	bl func_80034918
lbl_80034254:
/* 80034254 0002FEB4  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80034258 0002FEB8  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 8003425C 0002FEBC  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 80034260 0002FEC0  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 80034264 0002FEC4  E3 A1 00 28 */	psq_l f29, 40(r1), 0, qr0
/* 80034268 0002FEC8  CB A1 00 20 */	lfd f29, 0x20(r1)
/* 8003426C 0002FECC  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80034270 0002FED0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80034274 0002FED4  7C 08 03 A6 */	mtlr r0
/* 80034278 0002FED8  38 21 00 50 */	addi r1, r1, 0x50
/* 8003427C 0002FEDC  4E 80 00 20 */	blr

.global func_80034280
func_80034280:
/* 80034280 0002FEE0  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80034284 0002FEE4  7C 08 02 A6 */	mflr r0
/* 80034288 0002FEE8  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003428C 0002FEEC  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80034290 0002FEF0  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80034294 0002FEF4  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 80034298 0002FEF8  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 8003429C 0002FEFC  DB A1 00 20 */	stfd f29, 0x20(r1)
/* 800342A0 0002FF00  F3 A1 00 28 */	psq_st f29, 40(r1), 0, qr0
/* 800342A4 0002FF04  3C 80 43 30 */	lis r4, 0x4330
/* 800342A8 0002FF08  C0 42 81 E4 */	lfs f2, lbl_806407E4-_SDA2_BASE_(r2)
/* 800342AC 0002FF0C  FF A0 08 90 */	fmr f29, f1
/* 800342B0 0002FF10  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800342B4 0002FF14  7C 7F 1B 78 */	mr r31, r3
/* 800342B8 0002FF18  C8 62 82 00 */	lfd f3, lbl_80640800-_SDA2_BASE_(r2)
/* 800342BC 0002FF1C  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 800342C0 0002FF20  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 800342C4 0002FF24  90 81 00 08 */	stw r4, 8(r1)
/* 800342C8 0002FF28  A0 A6 00 04 */	lhz r5, 4(r6)
/* 800342CC 0002FF2C  A0 06 00 06 */	lhz r0, 6(r6)
/* 800342D0 0002FF30  90 A1 00 0C */	stw r5, 0xc(r1)
/* 800342D4 0002FF34  C8 01 00 08 */	lfd f0, 8(r1)
/* 800342D8 0002FF38  90 01 00 14 */	stw r0, 0x14(r1)
/* 800342DC 0002FF3C  EF E0 18 28 */	fsubs f31, f0, f3
/* 800342E0 0002FF40  90 81 00 10 */	stw r4, 0x10(r1)
/* 800342E4 0002FF44  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 800342E8 0002FF48  EF C0 18 28 */	fsubs f30, f0, f3
/* 800342EC 0002FF4C  4C 40 13 82 */	cror 2, 0, 2
/* 800342F0 0002FF50  40 82 00 18 */	bne lbl_80034308
/* 800342F4 0002FF54  38 80 00 00 */	li r4, 0
/* 800342F8 0002FF58  48 00 05 C5 */	bl func_800348BC
/* 800342FC 0002FF5C  7F E3 FB 78 */	mr r3, r31
/* 80034300 0002FF60  4B FF F9 6D */	bl func_80033C6C
/* 80034304 0002FF64  48 00 00 60 */	b lbl_80034364
lbl_80034308:
/* 80034308 0002FF68  FC 01 F8 40 */	fcmpo cr0, f1, f31
/* 8003430C 0002FF6C  4C 41 13 82 */	cror 2, 1, 2
/* 80034310 0002FF70  40 82 00 10 */	bne lbl_80034320
/* 80034314 0002FF74  38 80 00 00 */	li r4, 0
/* 80034318 0002FF78  48 00 05 A5 */	bl func_800348BC
/* 8003431C 0002FF7C  48 00 00 48 */	b lbl_80034364
lbl_80034320:
/* 80034320 0002FF80  C0 03 01 D0 */	lfs f0, 0x1d0(r3)
/* 80034324 0002FF84  FC 20 10 90 */	fmr f1, f2
/* 80034328 0002FF88  FC 80 F0 90 */	fmr f4, f30
/* 8003432C 0002FF8C  EC 7D 00 2A */	fadds f3, f29, f0
/* 80034330 0002FF90  48 00 11 CD */	bl func_800354FC
/* 80034334 0002FF94  C0 1F 01 D0 */	lfs f0, 0x1d0(r31)
/* 80034338 0002FF98  FC 60 F8 90 */	fmr f3, f31
/* 8003433C 0002FF9C  FC 80 F0 90 */	fmr f4, f30
/* 80034340 0002FFA0  C0 42 81 E4 */	lfs f2, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034344 0002FFA4  EC 3D 00 2A */	fadds f1, f29, f0
/* 80034348 0002FFA8  38 7F 00 B4 */	addi r3, r31, 0xb4
/* 8003434C 0002FFAC  48 00 11 B1 */	bl func_800354FC
/* 80034350 0002FFB0  D3 BF 01 C8 */	stfs f29, 0x1c8(r31)
/* 80034354 0002FFB4  7F E3 FB 78 */	mr r3, r31
/* 80034358 0002FFB8  38 80 00 03 */	li r4, 3
/* 8003435C 0002FFBC  48 00 05 61 */	bl func_800348BC
/* 80034360 0002FFC0  48 00 05 B9 */	bl func_80034918
lbl_80034364:
/* 80034364 0002FFC4  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80034368 0002FFC8  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 8003436C 0002FFCC  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 80034370 0002FFD0  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 80034374 0002FFD4  E3 A1 00 28 */	psq_l f29, 40(r1), 0, qr0
/* 80034378 0002FFD8  CB A1 00 20 */	lfd f29, 0x20(r1)
/* 8003437C 0002FFDC  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80034380 0002FFE0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80034384 0002FFE4  7C 08 03 A6 */	mtlr r0
/* 80034388 0002FFE8  38 21 00 50 */	addi r1, r1, 0x50
/* 8003438C 0002FFEC  4E 80 00 20 */	blr

.global func_80034390
func_80034390:
/* 80034390 0002FFF0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80034394 0002FFF4  7C 08 02 A6 */	mflr r0
/* 80034398 0002FFF8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003439C 0002FFFC  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 800343A0 00030000  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 800343A4 00030004  FF E0 28 90 */	fmr f31, f5
/* 800343A8 00030008  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 800343AC 0003000C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800343B0 00030010  7C 9F 23 78 */	mr r31, r4
/* 800343B4 00030014  FC 00 28 00 */	fcmpu cr0, f0, f5
/* 800343B8 00030018  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800343BC 0003001C  7C 7E 1B 78 */	mr r30, r3
/* 800343C0 00030020  D0 21 00 08 */	stfs f1, 8(r1)
/* 800343C4 00030024  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 800343C8 00030028  D0 61 00 10 */	stfs f3, 0x10(r1)
/* 800343CC 0003002C  D0 81 00 14 */	stfs f4, 0x14(r1)
/* 800343D0 00030030  40 82 00 1C */	bne lbl_800343EC
/* 800343D4 00030034  FC 20 08 18 */	frsp f1, f1
/* 800343D8 00030038  FC 40 10 18 */	frsp f2, f2
/* 800343DC 0003003C  FC 60 18 18 */	frsp f3, f3
/* 800343E0 00030040  FC 80 20 18 */	frsp f4, f4
/* 800343E4 00030044  4B FF FC ED */	bl func_800340D0
/* 800343E8 00030048  48 00 00 8C */	b lbl_80034474
lbl_800343EC:
/* 800343EC 0003004C  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 800343F0 00030050  2C 00 00 04 */	cmpwi r0, 4
/* 800343F4 00030054  40 82 00 80 */	bne lbl_80034474
/* 800343F8 00030058  48 00 05 BD */	bl func_800349B4
/* 800343FC 0003005C  FC 20 F8 90 */	fmr f1, f31
/* 80034400 00030060  38 9E 01 B8 */	addi r4, r30, 0x1b8
/* 80034404 00030064  7C 86 23 78 */	mr r6, r4
/* 80034408 00030068  7F E7 FB 78 */	mr r7, r31
/* 8003440C 0003006C  38 7E 02 C4 */	addi r3, r30, 0x2c4
/* 80034410 00030070  38 A1 00 08 */	addi r5, r1, 8
/* 80034414 00030074  48 01 BF 29 */	bl func_8005033C
/* 80034418 00030078  FC 20 F8 90 */	fmr f1, f31
/* 8003441C 0003007C  38 9E 01 BC */	addi r4, r30, 0x1bc
/* 80034420 00030080  7C 86 23 78 */	mr r6, r4
/* 80034424 00030084  7F E7 FB 78 */	mr r7, r31
/* 80034428 00030088  38 7E 02 E8 */	addi r3, r30, 0x2e8
/* 8003442C 0003008C  38 A1 00 0C */	addi r5, r1, 0xc
/* 80034430 00030090  48 01 BF 0D */	bl func_8005033C
/* 80034434 00030094  FC 20 F8 90 */	fmr f1, f31
/* 80034438 00030098  38 9E 01 C0 */	addi r4, r30, 0x1c0
/* 8003443C 0003009C  7C 86 23 78 */	mr r6, r4
/* 80034440 000300A0  7F E7 FB 78 */	mr r7, r31
/* 80034444 000300A4  38 7E 03 0C */	addi r3, r30, 0x30c
/* 80034448 000300A8  38 A1 00 10 */	addi r5, r1, 0x10
/* 8003444C 000300AC  48 01 BE F1 */	bl func_8005033C
/* 80034450 000300B0  FC 20 F8 90 */	fmr f1, f31
/* 80034454 000300B4  38 9E 01 C4 */	addi r4, r30, 0x1c4
/* 80034458 000300B8  7C 86 23 78 */	mr r6, r4
/* 8003445C 000300BC  7F E7 FB 78 */	mr r7, r31
/* 80034460 000300C0  38 7E 03 30 */	addi r3, r30, 0x330
/* 80034464 000300C4  38 A1 00 14 */	addi r5, r1, 0x14
/* 80034468 000300C8  48 01 BE D5 */	bl func_8005033C
/* 8003446C 000300CC  38 00 00 04 */	li r0, 4
/* 80034470 000300D0  90 1E 02 00 */	stw r0, 0x200(r30)
lbl_80034474:
/* 80034474 000300D4  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 80034478 000300D8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003447C 000300DC  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80034480 000300E0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80034484 000300E4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80034488 000300E8  7C 08 03 A6 */	mtlr r0
/* 8003448C 000300EC  38 21 00 30 */	addi r1, r1, 0x30
/* 80034490 000300F0  4E 80 00 20 */	blr

.global func_80034494
func_80034494:
/* 80034494 000300F4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80034498 000300F8  7C 08 02 A6 */	mflr r0
/* 8003449C 000300FC  90 01 00 34 */	stw r0, 0x34(r1)
/* 800344A0 00030100  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 800344A4 00030104  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 800344A8 00030108  FF E0 10 90 */	fmr f31, f2
/* 800344AC 0003010C  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 800344B0 00030110  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800344B4 00030114  7C 9F 23 78 */	mr r31, r4
/* 800344B8 00030118  FC 00 10 00 */	fcmpu cr0, f0, f2
/* 800344BC 0003011C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800344C0 00030120  7C 7E 1B 78 */	mr r30, r3
/* 800344C4 00030124  D0 21 00 08 */	stfs f1, 8(r1)
/* 800344C8 00030128  40 82 00 10 */	bne lbl_800344D8
/* 800344CC 0003012C  FC 20 08 18 */	frsp f1, f1
/* 800344D0 00030130  4B FF FC A1 */	bl func_80034170
/* 800344D4 00030134  48 00 00 38 */	b lbl_8003450C
lbl_800344D8:
/* 800344D8 00030138  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 800344DC 0003013C  2C 00 00 02 */	cmpwi r0, 2
/* 800344E0 00030140  40 82 00 2C */	bne lbl_8003450C
/* 800344E4 00030144  48 00 04 D1 */	bl func_800349B4
/* 800344E8 00030148  FC 20 F8 90 */	fmr f1, f31
/* 800344EC 0003014C  38 9E 01 CC */	addi r4, r30, 0x1cc
/* 800344F0 00030150  7C 86 23 78 */	mr r6, r4
/* 800344F4 00030154  7F E7 FB 78 */	mr r7, r31
/* 800344F8 00030158  38 7E 02 C4 */	addi r3, r30, 0x2c4
/* 800344FC 0003015C  38 A1 00 08 */	addi r5, r1, 8
/* 80034500 00030160  48 01 BE 3D */	bl func_8005033C
/* 80034504 00030164  38 00 00 02 */	li r0, 2
/* 80034508 00030168  90 1E 02 00 */	stw r0, 0x200(r30)
lbl_8003450C:
/* 8003450C 0003016C  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 80034510 00030170  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80034514 00030174  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80034518 00030178  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003451C 0003017C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80034520 00030180  7C 08 03 A6 */	mtlr r0
/* 80034524 00030184  38 21 00 30 */	addi r1, r1, 0x30
/* 80034528 00030188  4E 80 00 20 */	blr

.global func_8003452C
func_8003452C:
/* 8003452C 0003018C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80034530 00030190  7C 08 02 A6 */	mflr r0
/* 80034534 00030194  90 01 00 34 */	stw r0, 0x34(r1)
/* 80034538 00030198  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8003453C 0003019C  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 80034540 000301A0  FF E0 10 90 */	fmr f31, f2
/* 80034544 000301A4  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034548 000301A8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003454C 000301AC  7C 9F 23 78 */	mr r31, r4
/* 80034550 000301B0  FC 00 10 00 */	fcmpu cr0, f0, f2
/* 80034554 000301B4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80034558 000301B8  7C 7E 1B 78 */	mr r30, r3
/* 8003455C 000301BC  D0 21 00 08 */	stfs f1, 8(r1)
/* 80034560 000301C0  40 82 00 10 */	bne lbl_80034570
/* 80034564 000301C4  FC 20 08 18 */	frsp f1, f1
/* 80034568 000301C8  4B FF FD 19 */	bl func_80034280
/* 8003456C 000301CC  48 00 00 38 */	b lbl_800345A4
lbl_80034570:
/* 80034570 000301D0  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034574 000301D4  2C 00 00 03 */	cmpwi r0, 3
/* 80034578 000301D8  40 82 00 2C */	bne lbl_800345A4
/* 8003457C 000301DC  48 00 04 39 */	bl func_800349B4
/* 80034580 000301E0  FC 20 F8 90 */	fmr f1, f31
/* 80034584 000301E4  38 9E 01 C8 */	addi r4, r30, 0x1c8
/* 80034588 000301E8  7C 86 23 78 */	mr r6, r4
/* 8003458C 000301EC  7F E7 FB 78 */	mr r7, r31
/* 80034590 000301F0  38 7E 02 C4 */	addi r3, r30, 0x2c4
/* 80034594 000301F4  38 A1 00 08 */	addi r5, r1, 8
/* 80034598 000301F8  48 01 BD A5 */	bl func_8005033C
/* 8003459C 000301FC  38 00 00 03 */	li r0, 3
/* 800345A0 00030200  90 1E 02 00 */	stw r0, 0x200(r30)
lbl_800345A4:
/* 800345A4 00030204  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 800345A8 00030208  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800345AC 0003020C  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 800345B0 00030210  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800345B4 00030214  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800345B8 00030218  7C 08 03 A6 */	mtlr r0
/* 800345BC 0003021C  38 21 00 30 */	addi r1, r1, 0x30
/* 800345C0 00030220  4E 80 00 20 */	blr

.global func_800345C4
func_800345C4:
/* 800345C4 00030224  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800345C8 00030228  7C 08 02 A6 */	mflr r0
/* 800345CC 0003022C  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 800345D0 00030230  7C A6 2B 78 */	mr r6, r5
/* 800345D4 00030234  90 01 00 14 */	stw r0, 0x14(r1)
/* 800345D8 00030238  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800345DC 0003023C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800345E0 00030240  7C 7F 1B 78 */	mr r31, r3
/* 800345E4 00030244  4C 40 13 82 */	cror 2, 0, 2
/* 800345E8 00030248  40 82 00 0C */	bne lbl_800345F4
/* 800345EC 0003024C  D0 03 01 D4 */	stfs f0, 0x1d4(r3)
/* 800345F0 00030250  48 00 00 2C */	b lbl_8003461C
lbl_800345F4:
/* 800345F4 00030254  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 800345F8 00030258  2C 00 00 02 */	cmpwi r0, 2
/* 800345FC 0003025C  40 82 00 20 */	bne lbl_8003461C
/* 80034600 00030260  38 A3 01 D4 */	addi r5, r3, 0x1d4
/* 80034604 00030264  38 E0 00 00 */	li r7, 0
/* 80034608 00030268  39 00 00 00 */	li r8, 0
/* 8003460C 0003026C  38 63 02 64 */	addi r3, r3, 0x264
/* 80034610 00030270  48 01 C8 6D */	bl func_80050E7C
/* 80034614 00030274  38 00 00 02 */	li r0, 2
/* 80034618 00030278  90 1F 02 00 */	stw r0, 0x200(r31)
lbl_8003461C:
/* 8003461C 0003027C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80034620 00030280  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80034624 00030284  7C 08 03 A6 */	mtlr r0
/* 80034628 00030288  38 21 00 10 */	addi r1, r1, 0x10
/* 8003462C 0003028C  4E 80 00 20 */	blr

.global func_80034630
func_80034630:
/* 80034630 00030290  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80034634 00030294  7C 08 02 A6 */	mflr r0
/* 80034638 00030298  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 8003463C 0003029C  7C A6 2B 78 */	mr r6, r5
/* 80034640 000302A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80034644 000302A4  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80034648 000302A8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003464C 000302AC  7C 7F 1B 78 */	mr r31, r3
/* 80034650 000302B0  4C 40 13 82 */	cror 2, 0, 2
/* 80034654 000302B4  40 82 00 0C */	bne lbl_80034660
/* 80034658 000302B8  D0 03 01 D0 */	stfs f0, 0x1d0(r3)
/* 8003465C 000302BC  48 00 00 2C */	b lbl_80034688
lbl_80034660:
/* 80034660 000302C0  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034664 000302C4  2C 00 00 03 */	cmpwi r0, 3
/* 80034668 000302C8  40 82 00 20 */	bne lbl_80034688
/* 8003466C 000302CC  38 A3 01 D0 */	addi r5, r3, 0x1d0
/* 80034670 000302D0  38 E0 00 00 */	li r7, 0
/* 80034674 000302D4  39 00 00 00 */	li r8, 0
/* 80034678 000302D8  38 63 02 04 */	addi r3, r3, 0x204
/* 8003467C 000302DC  48 01 C8 01 */	bl func_80050E7C
/* 80034680 000302E0  38 00 00 03 */	li r0, 3
/* 80034684 000302E4  90 1F 02 00 */	stw r0, 0x200(r31)
lbl_80034688:
/* 80034688 000302E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003468C 000302EC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80034690 000302F0  7C 08 03 A6 */	mtlr r0
/* 80034694 000302F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80034698 000302F8  4E 80 00 20 */	blr

.global func_8003469C
func_8003469C:
/* 8003469C 000302FC  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 800346A0 00030300  7C 08 02 A6 */	mflr r0
/* 800346A4 00030304  90 01 00 74 */	stw r0, 0x74(r1)
/* 800346A8 00030308  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 800346AC 0003030C  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 800346B0 00030310  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 800346B4 00030314  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 800346B8 00030318  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 800346BC 0003031C  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 800346C0 00030320  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 800346C4 00030324  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 800346C8 00030328  DB 61 00 20 */	stfd f27, 0x20(r1)
/* 800346CC 0003032C  F3 61 00 28 */	psq_st f27, 40(r1), 0, qr0
/* 800346D0 00030330  FF 60 08 90 */	fmr f27, f1
/* 800346D4 00030334  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 800346D8 00030338  FF 80 10 90 */	fmr f28, f2
/* 800346DC 0003033C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800346E0 00030340  FF A0 18 90 */	fmr f29, f3
/* 800346E4 00030344  FF C0 20 90 */	fmr f30, f4
/* 800346E8 00030348  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800346EC 0003034C  FF E0 28 90 */	fmr f31, f5
/* 800346F0 00030350  FC 00 20 00 */	fcmpu cr0, f0, f4
/* 800346F4 00030354  7C 9E 23 78 */	mr r30, r4
/* 800346F8 00030358  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800346FC 0003035C  7C 7D 1B 78 */	mr r29, r3
/* 80034700 00030360  7C BF 2B 78 */	mr r31, r5
/* 80034704 00030364  41 82 00 74 */	beq lbl_80034778
/* 80034708 00030368  FC 00 28 00 */	fcmpu cr0, f0, f5
/* 8003470C 0003036C  40 82 00 08 */	bne lbl_80034714
/* 80034710 00030370  48 00 00 68 */	b lbl_80034778
lbl_80034714:
/* 80034714 00030374  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034718 00030378  2C 00 00 02 */	cmpwi r0, 2
/* 8003471C 0003037C  40 82 00 5C */	bne lbl_80034778
/* 80034720 00030380  48 00 02 95 */	bl func_800349B4
/* 80034724 00030384  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80034728 00030388  80 03 00 70 */	lwz r0, 0x70(r3)
/* 8003472C 0003038C  2C 00 00 01 */	cmpwi r0, 1
/* 80034730 00030390  40 82 00 14 */	bne lbl_80034744
/* 80034734 00030394  C0 02 82 08 */	lfs f0, lbl_80640808-_SDA2_BASE_(r2)
/* 80034738 00030398  FC 00 E8 00 */	fcmpu cr0, f0, f29
/* 8003473C 0003039C  40 82 00 08 */	bne lbl_80034744
/* 80034740 000303A0  C3 A2 81 DC */	lfs f29, lbl_806407DC-_SDA2_BASE_(r2)
lbl_80034744:
/* 80034744 000303A4  FC 20 D8 90 */	fmr f1, f27
/* 80034748 000303A8  7F C4 F3 78 */	mr r4, r30
/* 8003474C 000303AC  FC 40 F0 90 */	fmr f2, f30
/* 80034750 000303B0  7F E6 FB 78 */	mr r6, r31
/* 80034754 000303B4  FC 60 F8 90 */	fmr f3, f31
/* 80034758 000303B8  38 7D 04 5C */	addi r3, r29, 0x45c
/* 8003475C 000303BC  FC 80 E8 90 */	fmr f4, f29
/* 80034760 000303C0  38 BD 01 CC */	addi r5, r29, 0x1cc
/* 80034764 000303C4  FC A0 E0 90 */	fmr f5, f28
/* 80034768 000303C8  38 E0 00 01 */	li r7, 1
/* 8003476C 000303CC  48 01 C9 C9 */	bl func_80051134
/* 80034770 000303D0  38 00 00 02 */	li r0, 2
/* 80034774 000303D4  90 1D 02 00 */	stw r0, 0x200(r29)
lbl_80034778:
/* 80034778 000303D8  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 8003477C 000303DC  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 80034780 000303E0  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 80034784 000303E4  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 80034788 000303E8  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 8003478C 000303EC  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 80034790 000303F0  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 80034794 000303F4  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 80034798 000303F8  E3 61 00 28 */	psq_l f27, 40(r1), 0, qr0
/* 8003479C 000303FC  CB 61 00 20 */	lfd f27, 0x20(r1)
/* 800347A0 00030400  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800347A4 00030404  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800347A8 00030408  80 01 00 74 */	lwz r0, 0x74(r1)
/* 800347AC 0003040C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800347B0 00030410  7C 08 03 A6 */	mtlr r0
/* 800347B4 00030414  38 21 00 70 */	addi r1, r1, 0x70
/* 800347B8 00030418  4E 80 00 20 */	blr

.global func_800347BC
func_800347BC:
/* 800347BC 0003041C  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 800347C0 00030420  7C 08 02 A6 */	mflr r0
/* 800347C4 00030424  90 01 00 74 */	stw r0, 0x74(r1)
/* 800347C8 00030428  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 800347CC 0003042C  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 800347D0 00030430  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 800347D4 00030434  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 800347D8 00030438  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 800347DC 0003043C  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 800347E0 00030440  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 800347E4 00030444  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 800347E8 00030448  DB 61 00 20 */	stfd f27, 0x20(r1)
/* 800347EC 0003044C  F3 61 00 28 */	psq_st f27, 40(r1), 0, qr0
/* 800347F0 00030450  FF 60 08 90 */	fmr f27, f1
/* 800347F4 00030454  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 800347F8 00030458  FF 80 10 90 */	fmr f28, f2
/* 800347FC 0003045C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80034800 00030460  FF A0 18 90 */	fmr f29, f3
/* 80034804 00030464  FF C0 20 90 */	fmr f30, f4
/* 80034808 00030468  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003480C 0003046C  FF E0 28 90 */	fmr f31, f5
/* 80034810 00030470  FC 00 20 00 */	fcmpu cr0, f0, f4
/* 80034814 00030474  7C 9E 23 78 */	mr r30, r4
/* 80034818 00030478  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003481C 0003047C  7C 7D 1B 78 */	mr r29, r3
/* 80034820 00030480  7C BF 2B 78 */	mr r31, r5
/* 80034824 00030484  41 82 00 54 */	beq lbl_80034878
/* 80034828 00030488  FC 00 28 00 */	fcmpu cr0, f0, f5
/* 8003482C 0003048C  40 82 00 08 */	bne lbl_80034834
/* 80034830 00030490  48 00 00 48 */	b lbl_80034878
lbl_80034834:
/* 80034834 00030494  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034838 00030498  2C 00 00 03 */	cmpwi r0, 3
/* 8003483C 0003049C  40 82 00 3C */	bne lbl_80034878
/* 80034840 000304A0  48 00 01 75 */	bl func_800349B4
/* 80034844 000304A4  FC 20 D8 90 */	fmr f1, f27
/* 80034848 000304A8  7F C4 F3 78 */	mr r4, r30
/* 8003484C 000304AC  FC 40 F0 90 */	fmr f2, f30
/* 80034850 000304B0  7F E6 FB 78 */	mr r6, r31
/* 80034854 000304B4  FC 60 F8 90 */	fmr f3, f31
/* 80034858 000304B8  38 7D 03 9C */	addi r3, r29, 0x39c
/* 8003485C 000304BC  FC 80 E8 90 */	fmr f4, f29
/* 80034860 000304C0  38 BD 01 C8 */	addi r5, r29, 0x1c8
/* 80034864 000304C4  FC A0 E0 90 */	fmr f5, f28
/* 80034868 000304C8  38 E0 00 01 */	li r7, 1
/* 8003486C 000304CC  48 01 C8 C9 */	bl func_80051134
/* 80034870 000304D0  38 00 00 03 */	li r0, 3
/* 80034874 000304D4  90 1D 02 00 */	stw r0, 0x200(r29)
lbl_80034878:
/* 80034878 000304D8  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 8003487C 000304DC  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 80034880 000304E0  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 80034884 000304E4  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 80034888 000304E8  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 8003488C 000304EC  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 80034890 000304F0  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 80034894 000304F4  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 80034898 000304F8  E3 61 00 28 */	psq_l f27, 40(r1), 0, qr0
/* 8003489C 000304FC  CB 61 00 20 */	lfd f27, 0x20(r1)
/* 800348A0 00030500  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800348A4 00030504  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800348A8 00030508  80 01 00 74 */	lwz r0, 0x74(r1)
/* 800348AC 0003050C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800348B0 00030510  7C 08 03 A6 */	mtlr r0
/* 800348B4 00030514  38 21 00 70 */	addi r1, r1, 0x70
/* 800348B8 00030518  4E 80 00 20 */	blr

.global func_800348BC
func_800348BC:
/* 800348BC 0003051C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800348C0 00030520  7C 08 02 A6 */	mflr r0
/* 800348C4 00030524  2C 04 00 00 */	cmpwi r4, 0
/* 800348C8 00030528  90 01 00 14 */	stw r0, 0x14(r1)
/* 800348CC 0003052C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800348D0 00030530  7C 9F 23 78 */	mr r31, r4
/* 800348D4 00030534  93 C1 00 08 */	stw r30, 8(r1)
/* 800348D8 00030538  7C 7E 1B 78 */	mr r30, r3
/* 800348DC 0003053C  41 82 00 14 */	beq lbl_800348F0
/* 800348E0 00030540  41 80 00 20 */	blt lbl_80034900
/* 800348E4 00030544  2C 04 00 08 */	cmpwi r4, 8
/* 800348E8 00030548  40 80 00 18 */	bge lbl_80034900
/* 800348EC 0003054C  48 00 00 10 */	b lbl_800348FC
lbl_800348F0:
/* 800348F0 00030550  48 00 00 29 */	bl func_80034918
/* 800348F4 00030554  48 00 00 08 */	b lbl_800348FC
/* 800348F8 00030558  48 00 00 08 */	b lbl_80034900
lbl_800348FC:
/* 800348FC 0003055C  93 FE 01 A0 */	stw r31, 0x1a0(r30)
lbl_80034900:
/* 80034900 00030560  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80034904 00030564  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80034908 00030568  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003490C 0003056C  7C 08 03 A6 */	mtlr r0
/* 80034910 00030570  38 21 00 10 */	addi r1, r1, 0x10
/* 80034914 00030574  4E 80 00 20 */	blr

.global func_80034918
func_80034918:
/* 80034918 00030578  80 6D 97 98 */	lwz r3, lbl_8063EA58-_SDA_BASE_(r13)
/* 8003491C 0003057C  2C 03 00 00 */	cmpwi r3, 0
/* 80034920 00030580  4D 82 00 20 */	beqlr
/* 80034924 00030584  38 00 00 01 */	li r0, 1
/* 80034928 00030588  98 03 01 A4 */	stb r0, 0x1a4(r3)
/* 8003492C 0003058C  4E 80 00 20 */	blr

.global func_80034930
func_80034930:
/* 80034930 00030590  80 03 02 C4 */	lwz r0, 0x2c4(r3)
/* 80034934 00030594  2C 00 00 00 */	cmpwi r0, 0
/* 80034938 00030598  41 82 00 0C */	beq lbl_80034944
/* 8003493C 0003059C  38 60 00 01 */	li r3, 1
/* 80034940 000305A0  4E 80 00 20 */	blr
lbl_80034944:
/* 80034944 000305A4  80 03 02 E8 */	lwz r0, 0x2e8(r3)
/* 80034948 000305A8  2C 00 00 00 */	cmpwi r0, 0
/* 8003494C 000305AC  41 82 00 0C */	beq lbl_80034958
/* 80034950 000305B0  38 60 00 01 */	li r3, 1
/* 80034954 000305B4  4E 80 00 20 */	blr
lbl_80034958:
/* 80034958 000305B8  38 63 00 48 */	addi r3, r3, 0x48
/* 8003495C 000305BC  80 03 02 C4 */	lwz r0, 0x2c4(r3)
/* 80034960 000305C0  2C 00 00 00 */	cmpwi r0, 0
/* 80034964 000305C4  41 82 00 0C */	beq lbl_80034970
/* 80034968 000305C8  38 60 00 01 */	li r3, 1
/* 8003496C 000305CC  4E 80 00 20 */	blr
lbl_80034970:
/* 80034970 000305D0  80 03 02 E8 */	lwz r0, 0x2e8(r3)
/* 80034974 000305D4  2C 00 00 00 */	cmpwi r0, 0
/* 80034978 000305D8  41 82 00 0C */	beq lbl_80034984
/* 8003497C 000305DC  38 60 00 01 */	li r3, 1
/* 80034980 000305E0  4E 80 00 20 */	blr
lbl_80034984:
/* 80034984 000305E4  80 03 03 0C */	lwz r0, 0x30c(r3)
/* 80034988 000305E8  2C 00 00 00 */	cmpwi r0, 0
/* 8003498C 000305EC  41 82 00 0C */	beq lbl_80034998
/* 80034990 000305F0  38 60 00 01 */	li r3, 1
/* 80034994 000305F4  4E 80 00 20 */	blr
lbl_80034998:
/* 80034998 000305F8  80 03 03 30 */	lwz r0, 0x330(r3)
/* 8003499C 000305FC  2C 00 00 00 */	cmpwi r0, 0
/* 800349A0 00030600  41 82 00 0C */	beq lbl_800349AC
/* 800349A4 00030604  38 60 00 01 */	li r3, 1
/* 800349A8 00030608  4E 80 00 20 */	blr
lbl_800349AC:
/* 800349AC 0003060C  38 60 00 00 */	li r3, 0
/* 800349B0 00030610  4E 80 00 20 */	blr

.global func_800349B4
func_800349B4:
/* 800349B4 00030614  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800349B8 00030618  7C 08 02 A6 */	mflr r0
/* 800349BC 0003061C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800349C0 00030620  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800349C4 00030624  3B E3 02 C4 */	addi r31, r3, 0x2c4
/* 800349C8 00030628  93 C1 00 08 */	stw r30, 8(r1)
/* 800349CC 0003062C  3B C0 00 00 */	li r30, 0
lbl_800349D0:
/* 800349D0 00030630  7F E3 FB 78 */	mr r3, r31
/* 800349D4 00030634  48 01 B9 B5 */	bl func_80050388
/* 800349D8 00030638  3B DE 00 01 */	addi r30, r30, 1
/* 800349DC 0003063C  3B FF 00 24 */	addi r31, r31, 0x24
/* 800349E0 00030640  2C 1E 00 06 */	cmpwi r30, 6
/* 800349E4 00030644  41 80 FF EC */	blt lbl_800349D0
/* 800349E8 00030648  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800349EC 0003064C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800349F0 00030650  83 C1 00 08 */	lwz r30, 8(r1)
/* 800349F4 00030654  7C 08 03 A6 */	mtlr r0
/* 800349F8 00030658  38 21 00 10 */	addi r1, r1, 0x10
/* 800349FC 0003065C  4E 80 00 20 */	blr

.global func_80034A00
func_80034A00:
/* 80034A00 00030660  C0 22 81 E4 */	lfs f1, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034A04 00030664  38 00 00 FF */	li r0, 0xff
/* 80034A08 00030668  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80034A0C 0003066C  98 03 01 DC */	stb r0, 0x1dc(r3)
/* 80034A10 00030670  98 03 01 DD */	stb r0, 0x1dd(r3)
/* 80034A14 00030674  98 03 01 DE */	stb r0, 0x1de(r3)
/* 80034A18 00030678  98 03 01 DF */	stb r0, 0x1df(r3)
/* 80034A1C 0003067C  D0 23 01 E8 */	stfs f1, 0x1e8(r3)
/* 80034A20 00030680  D0 23 01 EC */	stfs f1, 0x1ec(r3)
/* 80034A24 00030684  D0 23 01 F0 */	stfs f1, 0x1f0(r3)
/* 80034A28 00030688  D0 03 01 F4 */	stfs f0, 0x1f4(r3)
/* 80034A2C 0003068C  D0 03 01 F8 */	stfs f0, 0x1f8(r3)
/* 80034A30 00030690  D0 03 01 FC */	stfs f0, 0x1fc(r3)
/* 80034A34 00030694  4B FF FF 80 */	b func_800349B4

.global func_80034A38
func_80034A38:
/* 80034A38 00030698  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80034A3C 0003069C  7C 08 02 A6 */	mflr r0
/* 80034A40 000306A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80034A44 000306A4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80034A48 000306A8  7C 9F 23 78 */	mr r31, r4
/* 80034A4C 000306AC  93 C1 00 08 */	stw r30, 8(r1)
/* 80034A50 000306B0  7C 7E 1B 78 */	mr r30, r3
/* 80034A54 000306B4  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034A58 000306B8  2C 00 00 06 */	cmpwi r0, 6
/* 80034A5C 000306BC  41 82 00 14 */	beq lbl_80034A70
/* 80034A60 000306C0  38 80 00 06 */	li r4, 6
/* 80034A64 000306C4  4B FF FE 59 */	bl func_800348BC
/* 80034A68 000306C8  7F C3 F3 78 */	mr r3, r30
/* 80034A6C 000306CC  4B FF FF 95 */	bl func_80034A00
lbl_80034A70:
/* 80034A70 000306D0  2C 1F 00 01 */	cmpwi r31, 1
/* 80034A74 000306D4  41 82 00 20 */	beq lbl_80034A94
/* 80034A78 000306D8  40 80 00 24 */	bge lbl_80034A9C
/* 80034A7C 000306DC  2C 1F 00 00 */	cmpwi r31, 0
/* 80034A80 000306E0  40 80 00 08 */	bge lbl_80034A88
/* 80034A84 000306E4  48 00 00 18 */	b lbl_80034A9C
lbl_80034A88:
/* 80034A88 000306E8  38 00 00 00 */	li r0, 0
/* 80034A8C 000306EC  90 1E 01 E4 */	stw r0, 0x1e4(r30)
/* 80034A90 000306F0  48 00 00 0C */	b lbl_80034A9C
lbl_80034A94:
/* 80034A94 000306F4  38 00 00 01 */	li r0, 1
/* 80034A98 000306F8  90 1E 01 E4 */	stw r0, 0x1e4(r30)
lbl_80034A9C:
/* 80034A9C 000306FC  4B FF FE 7D */	bl func_80034918
/* 80034AA0 00030700  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80034AA4 00030704  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80034AA8 00030708  83 C1 00 08 */	lwz r30, 8(r1)
/* 80034AAC 0003070C  7C 08 03 A6 */	mtlr r0
/* 80034AB0 00030710  38 21 00 10 */	addi r1, r1, 0x10
/* 80034AB4 00030714  4E 80 00 20 */	blr

.global func_80034AB8
func_80034AB8:
/* 80034AB8 00030718  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80034ABC 0003071C  7C 08 02 A6 */	mflr r0
/* 80034AC0 00030720  90 01 00 24 */	stw r0, 0x24(r1)
/* 80034AC4 00030724  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80034AC8 00030728  FF E0 08 90 */	fmr f31, f1
/* 80034ACC 0003072C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80034AD0 00030730  7C 7F 1B 78 */	mr r31, r3
/* 80034AD4 00030734  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034AD8 00030738  2C 00 00 07 */	cmpwi r0, 7
/* 80034ADC 0003073C  41 82 00 14 */	beq lbl_80034AF0
/* 80034AE0 00030740  38 80 00 07 */	li r4, 7
/* 80034AE4 00030744  4B FF FD D9 */	bl func_800348BC
/* 80034AE8 00030748  7F E3 FB 78 */	mr r3, r31
/* 80034AEC 0003074C  4B FF FF 15 */	bl func_80034A00
lbl_80034AF0:
/* 80034AF0 00030750  D3 FF 01 FC */	stfs f31, 0x1fc(r31)
/* 80034AF4 00030754  4B FF FE 25 */	bl func_80034918
/* 80034AF8 00030758  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80034AFC 0003075C  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80034B00 00030760  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80034B04 00030764  7C 08 03 A6 */	mtlr r0
/* 80034B08 00030768  38 21 00 20 */	addi r1, r1, 0x20
/* 80034B0C 0003076C  4E 80 00 20 */	blr

.global func_80034B10
func_80034B10:
/* 80034B10 00030770  88 E4 00 03 */	lbz r7, 3(r4)
/* 80034B14 00030774  88 C4 00 02 */	lbz r6, 2(r4)
/* 80034B18 00030778  88 A4 00 01 */	lbz r5, 1(r4)
/* 80034B1C 0003077C  88 04 00 00 */	lbz r0, 0(r4)
/* 80034B20 00030780  98 03 01 DC */	stb r0, 0x1dc(r3)
/* 80034B24 00030784  98 A3 01 DD */	stb r5, 0x1dd(r3)
/* 80034B28 00030788  98 C3 01 DE */	stb r6, 0x1de(r3)
/* 80034B2C 0003078C  98 E3 01 DF */	stb r7, 0x1df(r3)
/* 80034B30 00030790  4B FF FD E8 */	b func_80034918

.global func_80034B34
func_80034B34:
/* 80034B34 00030794  D0 23 01 E8 */	stfs f1, 0x1e8(r3)
/* 80034B38 00030798  D0 43 01 EC */	stfs f2, 0x1ec(r3)
/* 80034B3C 0003079C  4B FF FD DC */	b func_80034918

.global func_80034B40
func_80034B40:
/* 80034B40 000307A0  D0 23 01 F0 */	stfs f1, 0x1f0(r3)
/* 80034B44 000307A4  4B FF FD D4 */	b func_80034918

.global func_80034B48
func_80034B48:
/* 80034B48 000307A8  D0 23 01 F4 */	stfs f1, 0x1f4(r3)
/* 80034B4C 000307AC  D0 43 01 F8 */	stfs f2, 0x1f8(r3)
/* 80034B50 000307B0  4B FF FD C8 */	b func_80034918

.global func_80034B54
func_80034B54:
/* 80034B54 000307B4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80034B58 000307B8  7C 08 02 A6 */	mflr r0
/* 80034B5C 000307BC  7C C7 33 78 */	mr r7, r6
/* 80034B60 000307C0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80034B64 000307C4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80034B68 000307C8  7C 9F 23 78 */	mr r31, r4
/* 80034B6C 000307CC  38 83 01 DC */	addi r4, r3, 0x1dc
/* 80034B70 000307D0  93 C1 00 08 */	stw r30, 8(r1)
/* 80034B74 000307D4  7C 7E 1B 78 */	mr r30, r3
/* 80034B78 000307D8  7C 86 23 78 */	mr r6, r4
/* 80034B7C 000307DC  38 63 06 90 */	addi r3, r3, 0x690
/* 80034B80 000307E0  48 01 BC 89 */	bl func_80050808
/* 80034B84 000307E4  93 FE 02 00 */	stw r31, 0x200(r30)
/* 80034B88 000307E8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80034B8C 000307EC  83 C1 00 08 */	lwz r30, 8(r1)
/* 80034B90 000307F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80034B94 000307F4  7C 08 03 A6 */	mtlr r0
/* 80034B98 000307F8  38 21 00 10 */	addi r1, r1, 0x10
/* 80034B9C 000307FC  4E 80 00 20 */	blr

.global func_80034BA0
func_80034BA0:
/* 80034BA0 00030800  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80034BA4 00030804  7C 08 02 A6 */	mflr r0
/* 80034BA8 00030808  90 01 00 34 */	stw r0, 0x34(r1)
/* 80034BAC 0003080C  DB E1 00 28 */	stfd f31, 0x28(r1)
/* 80034BB0 00030810  FF E0 18 90 */	fmr f31, f3
/* 80034BB4 00030814  93 E1 00 24 */	stw r31, 0x24(r1)
/* 80034BB8 00030818  7C BF 2B 78 */	mr r31, r5
/* 80034BBC 0003081C  7F E7 FB 78 */	mr r7, r31
/* 80034BC0 00030820  38 A1 00 08 */	addi r5, r1, 8
/* 80034BC4 00030824  93 C1 00 20 */	stw r30, 0x20(r1)
/* 80034BC8 00030828  7C 9E 23 78 */	mr r30, r4
/* 80034BCC 0003082C  38 83 01 E8 */	addi r4, r3, 0x1e8
/* 80034BD0 00030830  93 A1 00 1C */	stw r29, 0x1c(r1)
/* 80034BD4 00030834  7C 7D 1B 78 */	mr r29, r3
/* 80034BD8 00030838  7C 86 23 78 */	mr r6, r4
/* 80034BDC 0003083C  38 63 02 C4 */	addi r3, r3, 0x2c4
/* 80034BE0 00030840  D0 21 00 08 */	stfs f1, 8(r1)
/* 80034BE4 00030844  FC 20 F8 90 */	fmr f1, f31
/* 80034BE8 00030848  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80034BEC 0003084C  48 01 B7 51 */	bl func_8005033C
/* 80034BF0 00030850  FC 20 F8 90 */	fmr f1, f31
/* 80034BF4 00030854  38 9D 01 EC */	addi r4, r29, 0x1ec
/* 80034BF8 00030858  7C 86 23 78 */	mr r6, r4
/* 80034BFC 0003085C  7F E7 FB 78 */	mr r7, r31
/* 80034C00 00030860  38 7D 02 E8 */	addi r3, r29, 0x2e8
/* 80034C04 00030864  38 A1 00 0C */	addi r5, r1, 0xc
/* 80034C08 00030868  48 01 B7 35 */	bl func_8005033C
/* 80034C0C 0003086C  93 DD 02 00 */	stw r30, 0x200(r29)
/* 80034C10 00030870  CB E1 00 28 */	lfd f31, 0x28(r1)
/* 80034C14 00030874  83 E1 00 24 */	lwz r31, 0x24(r1)
/* 80034C18 00030878  83 C1 00 20 */	lwz r30, 0x20(r1)
/* 80034C1C 0003087C  83 A1 00 1C */	lwz r29, 0x1c(r1)
/* 80034C20 00030880  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80034C24 00030884  7C 08 03 A6 */	mtlr r0
/* 80034C28 00030888  38 21 00 30 */	addi r1, r1, 0x30
/* 80034C2C 0003088C  4E 80 00 20 */	blr

.global func_80034C30
func_80034C30:
/* 80034C30 00030890  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80034C34 00030894  7C 08 02 A6 */	mflr r0
/* 80034C38 00030898  7C A7 2B 78 */	mr r7, r5
/* 80034C3C 0003089C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80034C40 000308A0  38 A1 00 08 */	addi r5, r1, 8
/* 80034C44 000308A4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80034C48 000308A8  7C 9F 23 78 */	mr r31, r4
/* 80034C4C 000308AC  38 83 01 F0 */	addi r4, r3, 0x1f0
/* 80034C50 000308B0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80034C54 000308B4  7C 7E 1B 78 */	mr r30, r3
/* 80034C58 000308B8  7C 86 23 78 */	mr r6, r4
/* 80034C5C 000308BC  38 63 03 0C */	addi r3, r3, 0x30c
/* 80034C60 000308C0  D0 21 00 08 */	stfs f1, 8(r1)
/* 80034C64 000308C4  FC 20 10 90 */	fmr f1, f2
/* 80034C68 000308C8  48 01 B6 D5 */	bl func_8005033C
/* 80034C6C 000308CC  93 FE 02 00 */	stw r31, 0x200(r30)
/* 80034C70 000308D0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80034C74 000308D4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80034C78 000308D8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80034C7C 000308DC  7C 08 03 A6 */	mtlr r0
/* 80034C80 000308E0  38 21 00 20 */	addi r1, r1, 0x20
/* 80034C84 000308E4  4E 80 00 20 */	blr

.global func_80034C88
func_80034C88:
/* 80034C88 000308E8  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80034C8C 000308EC  7C 08 02 A6 */	mflr r0
/* 80034C90 000308F0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80034C94 000308F4  DB E1 00 28 */	stfd f31, 0x28(r1)
/* 80034C98 000308F8  FF E0 18 90 */	fmr f31, f3
/* 80034C9C 000308FC  93 E1 00 24 */	stw r31, 0x24(r1)
/* 80034CA0 00030900  7C BF 2B 78 */	mr r31, r5
/* 80034CA4 00030904  7F E7 FB 78 */	mr r7, r31
/* 80034CA8 00030908  38 A1 00 08 */	addi r5, r1, 8
/* 80034CAC 0003090C  93 C1 00 20 */	stw r30, 0x20(r1)
/* 80034CB0 00030910  7C 9E 23 78 */	mr r30, r4
/* 80034CB4 00030914  38 83 01 F4 */	addi r4, r3, 0x1f4
/* 80034CB8 00030918  93 A1 00 1C */	stw r29, 0x1c(r1)
/* 80034CBC 0003091C  7C 7D 1B 78 */	mr r29, r3
/* 80034CC0 00030920  7C 86 23 78 */	mr r6, r4
/* 80034CC4 00030924  38 63 03 30 */	addi r3, r3, 0x330
/* 80034CC8 00030928  D0 21 00 08 */	stfs f1, 8(r1)
/* 80034CCC 0003092C  FC 20 F8 90 */	fmr f1, f31
/* 80034CD0 00030930  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80034CD4 00030934  48 01 B6 69 */	bl func_8005033C
/* 80034CD8 00030938  FC 20 F8 90 */	fmr f1, f31
/* 80034CDC 0003093C  38 9D 01 F8 */	addi r4, r29, 0x1f8
/* 80034CE0 00030940  7C 86 23 78 */	mr r6, r4
/* 80034CE4 00030944  7F E7 FB 78 */	mr r7, r31
/* 80034CE8 00030948  38 7D 03 54 */	addi r3, r29, 0x354
/* 80034CEC 0003094C  38 A1 00 0C */	addi r5, r1, 0xc
/* 80034CF0 00030950  48 01 B6 4D */	bl func_8005033C
/* 80034CF4 00030954  93 DD 02 00 */	stw r30, 0x200(r29)
/* 80034CF8 00030958  CB E1 00 28 */	lfd f31, 0x28(r1)
/* 80034CFC 0003095C  83 E1 00 24 */	lwz r31, 0x24(r1)
/* 80034D00 00030960  83 C1 00 20 */	lwz r30, 0x20(r1)
/* 80034D04 00030964  83 A1 00 1C */	lwz r29, 0x1c(r1)
/* 80034D08 00030968  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80034D0C 0003096C  7C 08 03 A6 */	mtlr r0
/* 80034D10 00030970  38 21 00 30 */	addi r1, r1, 0x30
/* 80034D14 00030974  4E 80 00 20 */	blr

.global func_80034D18
func_80034D18:
/* 80034D18 00030978  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80034D1C 0003097C  7C 08 02 A6 */	mflr r0
/* 80034D20 00030980  7C 87 23 78 */	mr r7, r4
/* 80034D24 00030984  38 83 01 FC */	addi r4, r3, 0x1fc
/* 80034D28 00030988  90 01 00 24 */	stw r0, 0x24(r1)
/* 80034D2C 0003098C  38 A1 00 08 */	addi r5, r1, 8
/* 80034D30 00030990  7C 86 23 78 */	mr r6, r4
/* 80034D34 00030994  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80034D38 00030998  7C 7F 1B 78 */	mr r31, r3
/* 80034D3C 0003099C  38 63 03 78 */	addi r3, r3, 0x378
/* 80034D40 000309A0  D0 21 00 08 */	stfs f1, 8(r1)
/* 80034D44 000309A4  FC 20 10 90 */	fmr f1, f2
/* 80034D48 000309A8  48 01 B5 F5 */	bl func_8005033C
/* 80034D4C 000309AC  38 00 00 07 */	li r0, 7
/* 80034D50 000309B0  90 1F 02 00 */	stw r0, 0x200(r31)
/* 80034D54 000309B4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80034D58 000309B8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80034D5C 000309BC  7C 08 03 A6 */	mtlr r0
/* 80034D60 000309C0  38 21 00 20 */	addi r1, r1, 0x20
/* 80034D64 000309C4  4E 80 00 20 */	blr

.global func_80034D68
func_80034D68:
/* 80034D68 000309C8  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 80034D6C 000309CC  7C 08 02 A6 */	mflr r0
/* 80034D70 000309D0  90 01 00 74 */	stw r0, 0x74(r1)
/* 80034D74 000309D4  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 80034D78 000309D8  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 80034D7C 000309DC  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 80034D80 000309E0  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 80034D84 000309E4  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 80034D88 000309E8  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 80034D8C 000309EC  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 80034D90 000309F0  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 80034D94 000309F4  DB 61 00 20 */	stfd f27, 0x20(r1)
/* 80034D98 000309F8  F3 61 00 28 */	psq_st f27, 40(r1), 0, qr0
/* 80034D9C 000309FC  FF 60 08 90 */	fmr f27, f1
/* 80034DA0 00030A00  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034DA4 00030A04  FF 80 10 90 */	fmr f28, f2
/* 80034DA8 00030A08  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80034DAC 00030A0C  FF A0 18 90 */	fmr f29, f3
/* 80034DB0 00030A10  FF C0 20 90 */	fmr f30, f4
/* 80034DB4 00030A14  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80034DB8 00030A18  FF E0 28 90 */	fmr f31, f5
/* 80034DBC 00030A1C  FC 00 20 00 */	fcmpu cr0, f0, f4
/* 80034DC0 00030A20  7C 9E 23 78 */	mr r30, r4
/* 80034DC4 00030A24  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80034DC8 00030A28  7C 7D 1B 78 */	mr r29, r3
/* 80034DCC 00030A2C  7C BF 2B 78 */	mr r31, r5
/* 80034DD0 00030A30  41 82 00 54 */	beq lbl_80034E24
/* 80034DD4 00030A34  FC 00 28 00 */	fcmpu cr0, f0, f5
/* 80034DD8 00030A38  40 82 00 08 */	bne lbl_80034DE0
/* 80034DDC 00030A3C  48 00 00 48 */	b lbl_80034E24
lbl_80034DE0:
/* 80034DE0 00030A40  80 03 01 A0 */	lwz r0, 0x1a0(r3)
/* 80034DE4 00030A44  2C 00 00 07 */	cmpwi r0, 7
/* 80034DE8 00030A48  40 82 00 3C */	bne lbl_80034E24
/* 80034DEC 00030A4C  4B FF FB C9 */	bl func_800349B4
/* 80034DF0 00030A50  FC 20 D8 90 */	fmr f1, f27
/* 80034DF4 00030A54  7F C4 F3 78 */	mr r4, r30
/* 80034DF8 00030A58  FC 40 F0 90 */	fmr f2, f30
/* 80034DFC 00030A5C  7F E6 FB 78 */	mr r6, r31
/* 80034E00 00030A60  FC 60 F8 90 */	fmr f3, f31
/* 80034E04 00030A64  38 7D 05 1C */	addi r3, r29, 0x51c
/* 80034E08 00030A68  FC 80 E8 90 */	fmr f4, f29
/* 80034E0C 00030A6C  38 BD 01 FC */	addi r5, r29, 0x1fc
/* 80034E10 00030A70  FC A0 E0 90 */	fmr f5, f28
/* 80034E14 00030A74  38 E0 00 01 */	li r7, 1
/* 80034E18 00030A78  48 01 C3 1D */	bl func_80051134
/* 80034E1C 00030A7C  38 00 00 07 */	li r0, 7
/* 80034E20 00030A80  90 1D 02 00 */	stw r0, 0x200(r29)
lbl_80034E24:
/* 80034E24 00030A84  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 80034E28 00030A88  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 80034E2C 00030A8C  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 80034E30 00030A90  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 80034E34 00030A94  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 80034E38 00030A98  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 80034E3C 00030A9C  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 80034E40 00030AA0  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 80034E44 00030AA4  E3 61 00 28 */	psq_l f27, 40(r1), 0, qr0
/* 80034E48 00030AA8  CB 61 00 20 */	lfd f27, 0x20(r1)
/* 80034E4C 00030AAC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80034E50 00030AB0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80034E54 00030AB4  80 01 00 74 */	lwz r0, 0x74(r1)
/* 80034E58 00030AB8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80034E5C 00030ABC  7C 08 03 A6 */	mtlr r0
/* 80034E60 00030AC0  38 21 00 70 */	addi r1, r1, 0x70
/* 80034E64 00030AC4  4E 80 00 20 */	blr

.global func_80034E68
func_80034E68:
/* 80034E68 00030AC8  98 83 01 68 */	stb r4, 0x168(r3)
/* 80034E6C 00030ACC  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 80034E70 00030AD0  80 AD A1 50 */	lwz r5, lbl_8063F410-_SDA_BASE_(r13)
/* 80034E74 00030AD4  80 05 04 18 */	lwz r0, 0x418(r5)
/* 80034E78 00030AD8  2C 00 00 00 */	cmpwi r0, 0
/* 80034E7C 00030ADC  41 82 00 0C */	beq lbl_80034E88
/* 80034E80 00030AE0  98 85 04 0E */	stb r4, 0x40e(r5)
/* 80034E84 00030AE4  48 00 00 0C */	b lbl_80034E90
lbl_80034E88:
/* 80034E88 00030AE8  38 00 00 00 */	li r0, 0
/* 80034E8C 00030AEC  98 05 04 0E */	stb r0, 0x40e(r5)
lbl_80034E90:
/* 80034E90 00030AF0  C0 03 01 6C */	lfs f0, 0x16c(r3)
/* 80034E94 00030AF4  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80034E98 00030AF8  D0 03 04 50 */	stfs f0, 0x450(r3)
/* 80034E9C 00030AFC  4E 80 00 20 */	blr

.global func_80034EA0
func_80034EA0:
/* 80034EA0 00030B00  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034EA4 00030B04  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80034EA8 00030B08  40 80 00 08 */	bge lbl_80034EB0
/* 80034EAC 00030B0C  FC 20 00 90 */	fmr f1, f0
lbl_80034EB0:
/* 80034EB0 00030B10  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80034EB4 00030B14  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80034EB8 00030B18  4C 41 13 82 */	cror 2, 1, 2
/* 80034EBC 00030B1C  40 82 00 08 */	bne lbl_80034EC4
/* 80034EC0 00030B20  FC 20 00 90 */	fmr f1, f0
lbl_80034EC4:
/* 80034EC4 00030B24  D0 23 01 6C */	stfs f1, 0x16c(r3)
/* 80034EC8 00030B28  FC 00 08 18 */	frsp f0, f1
/* 80034ECC 00030B2C  38 63 05 DC */	addi r3, r3, 0x5dc
/* 80034ED0 00030B30  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034ED4 00030B34  D0 04 04 50 */	stfs f0, 0x450(r4)
/* 80034ED8 00030B38  48 01 B4 B0 */	b func_80050388

.global func_80034EDC
func_80034EDC:
/* 80034EDC 00030B3C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80034EE0 00030B40  7C 08 02 A6 */	mflr r0
/* 80034EE4 00030B44  FC 60 08 18 */	frsp f3, f1
/* 80034EE8 00030B48  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034EEC 00030B4C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80034EF0 00030B50  7C 87 23 78 */	mr r7, r4
/* 80034EF4 00030B54  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80034EF8 00030B58  D0 21 00 08 */	stfs f1, 8(r1)
/* 80034EFC 00030B5C  40 80 00 0C */	bge lbl_80034F08
/* 80034F00 00030B60  FC 20 00 90 */	fmr f1, f0
/* 80034F04 00030B64  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80034F08:
/* 80034F08 00030B68  FC 20 08 18 */	frsp f1, f1
/* 80034F0C 00030B6C  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80034F10 00030B70  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80034F14 00030B74  4C 41 13 82 */	cror 2, 1, 2
/* 80034F18 00030B78  40 82 00 08 */	bne lbl_80034F20
/* 80034F1C 00030B7C  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80034F20:
/* 80034F20 00030B80  FC 20 10 90 */	fmr f1, f2
/* 80034F24 00030B84  38 83 01 6C */	addi r4, r3, 0x16c
/* 80034F28 00030B88  7C 86 23 78 */	mr r6, r4
/* 80034F2C 00030B8C  38 A1 00 08 */	addi r5, r1, 8
/* 80034F30 00030B90  38 63 05 DC */	addi r3, r3, 0x5dc
/* 80034F34 00030B94  48 01 B4 09 */	bl func_8005033C
/* 80034F38 00030B98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80034F3C 00030B9C  7C 08 03 A6 */	mtlr r0
/* 80034F40 00030BA0  38 21 00 10 */	addi r1, r1, 0x10
/* 80034F44 00030BA4  4E 80 00 20 */	blr

.global func_80034F48
func_80034F48:
/* 80034F48 00030BA8  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034F4C 00030BAC  2C 04 00 00 */	cmpwi r4, 0
/* 80034F50 00030BB0  4D 82 00 20 */	beqlr
/* 80034F54 00030BB4  88 03 01 70 */	lbz r0, 0x170(r3)
/* 80034F58 00030BB8  98 04 04 0D */	stb r0, 0x40d(r4)
/* 80034F5C 00030BBC  C0 03 01 74 */	lfs f0, 0x174(r3)
/* 80034F60 00030BC0  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034F64 00030BC4  D0 04 04 2C */	stfs f0, 0x42c(r4)
/* 80034F68 00030BC8  88 03 01 71 */	lbz r0, 0x171(r3)
/* 80034F6C 00030BCC  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034F70 00030BD0  98 04 04 30 */	stb r0, 0x430(r4)
/* 80034F74 00030BD4  80 03 01 78 */	lwz r0, 0x178(r3)
/* 80034F78 00030BD8  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034F7C 00030BDC  90 04 04 34 */	stw r0, 0x434(r4)
/* 80034F80 00030BE0  88 03 01 7C */	lbz r0, 0x17c(r3)
/* 80034F84 00030BE4  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034F88 00030BE8  98 04 04 31 */	stb r0, 0x431(r4)
/* 80034F8C 00030BEC  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80034F90 00030BF0  C0 03 01 80 */	lfs f0, 0x180(r3)
/* 80034F94 00030BF4  D0 04 04 24 */	stfs f0, 0x424(r4)
/* 80034F98 00030BF8  C0 03 01 84 */	lfs f0, 0x184(r3)
/* 80034F9C 00030BFC  D0 04 04 28 */	stfs f0, 0x428(r4)
/* 80034FA0 00030C00  4E 80 00 20 */	blr

.global func_80034FA4
func_80034FA4:
/* 80034FA4 00030C04  98 83 01 70 */	stb r4, 0x170(r3)
/* 80034FA8 00030C08  4B FF FF A0 */	b func_80034F48

.global func_80034FAC
func_80034FAC:
/* 80034FAC 00030C0C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80034FB0 00030C10  7C 08 02 A6 */	mflr r0
/* 80034FB4 00030C14  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80034FB8 00030C18  90 01 00 14 */	stw r0, 0x14(r1)
/* 80034FBC 00030C1C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80034FC0 00030C20  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80034FC4 00030C24  7C 7F 1B 78 */	mr r31, r3
/* 80034FC8 00030C28  40 80 00 08 */	bge lbl_80034FD0
/* 80034FCC 00030C2C  FC 20 00 90 */	fmr f1, f0
lbl_80034FD0:
/* 80034FD0 00030C30  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80034FD4 00030C34  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80034FD8 00030C38  4C 41 13 82 */	cror 2, 1, 2
/* 80034FDC 00030C3C  40 82 00 08 */	bne lbl_80034FE4
/* 80034FE0 00030C40  FC 20 00 90 */	fmr f1, f0
lbl_80034FE4:
/* 80034FE4 00030C44  D0 23 01 74 */	stfs f1, 0x174(r3)
/* 80034FE8 00030C48  38 63 06 24 */	addi r3, r3, 0x624
/* 80034FEC 00030C4C  48 01 B3 9D */	bl func_80050388
/* 80034FF0 00030C50  7F E3 FB 78 */	mr r3, r31
/* 80034FF4 00030C54  4B FF FF 55 */	bl func_80034F48
/* 80034FF8 00030C58  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80034FFC 00030C5C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80035000 00030C60  7C 08 03 A6 */	mtlr r0
/* 80035004 00030C64  38 21 00 10 */	addi r1, r1, 0x10
/* 80035008 00030C68  4E 80 00 20 */	blr

.global func_8003500C
func_8003500C:
/* 8003500C 00030C6C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80035010 00030C70  7C 08 02 A6 */	mflr r0
/* 80035014 00030C74  FC 60 08 18 */	frsp f3, f1
/* 80035018 00030C78  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 8003501C 00030C7C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035020 00030C80  7C 87 23 78 */	mr r7, r4
/* 80035024 00030C84  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80035028 00030C88  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003502C 00030C8C  40 80 00 0C */	bge lbl_80035038
/* 80035030 00030C90  FC 20 00 90 */	fmr f1, f0
/* 80035034 00030C94  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80035038:
/* 80035038 00030C98  FC 20 08 18 */	frsp f1, f1
/* 8003503C 00030C9C  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80035040 00030CA0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80035044 00030CA4  4C 41 13 82 */	cror 2, 1, 2
/* 80035048 00030CA8  40 82 00 08 */	bne lbl_80035050
/* 8003504C 00030CAC  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80035050:
/* 80035050 00030CB0  FC 20 10 90 */	fmr f1, f2
/* 80035054 00030CB4  38 83 01 74 */	addi r4, r3, 0x174
/* 80035058 00030CB8  7C 86 23 78 */	mr r6, r4
/* 8003505C 00030CBC  38 A1 00 08 */	addi r5, r1, 8
/* 80035060 00030CC0  38 63 06 24 */	addi r3, r3, 0x624
/* 80035064 00030CC4  48 01 B2 D9 */	bl func_8005033C
/* 80035068 00030CC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003506C 00030CCC  7C 08 03 A6 */	mtlr r0
/* 80035070 00030CD0  38 21 00 10 */	addi r1, r1, 0x10
/* 80035074 00030CD4  4E 80 00 20 */	blr

.global func_80035078
func_80035078:
/* 80035078 00030CD8  98 83 01 71 */	stb r4, 0x171(r3)
/* 8003507C 00030CDC  4B FF FE CC */	b func_80034F48

.global func_80035080
func_80035080:
/* 80035080 00030CE0  2C 04 00 00 */	cmpwi r4, 0
/* 80035084 00030CE4  40 80 00 08 */	bge lbl_8003508C
/* 80035088 00030CE8  38 80 00 00 */	li r4, 0
lbl_8003508C:
/* 8003508C 00030CEC  2C 04 00 01 */	cmpwi r4, 1
/* 80035090 00030CF0  40 81 00 08 */	ble lbl_80035098
/* 80035094 00030CF4  38 80 00 01 */	li r4, 1
lbl_80035098:
/* 80035098 00030CF8  90 83 01 78 */	stw r4, 0x178(r3)
/* 8003509C 00030CFC  4B FF FE AC */	b func_80034F48

.global func_800350A0
func_800350A0:
/* 800350A0 00030D00  28 04 00 64 */	cmplwi r4, 0x64
/* 800350A4 00030D04  40 81 00 08 */	ble lbl_800350AC
/* 800350A8 00030D08  38 80 00 64 */	li r4, 0x64
lbl_800350AC:
/* 800350AC 00030D0C  98 83 01 7C */	stb r4, 0x17c(r3)
/* 800350B0 00030D10  4B FF FE 98 */	b func_80034F48

.global func_800350B4
func_800350B4:
/* 800350B4 00030D14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800350B8 00030D18  7C 08 02 A6 */	mflr r0
/* 800350BC 00030D1C  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 800350C0 00030D20  90 01 00 14 */	stw r0, 0x14(r1)
/* 800350C4 00030D24  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800350C8 00030D28  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800350CC 00030D2C  7C 7F 1B 78 */	mr r31, r3
/* 800350D0 00030D30  40 81 00 08 */	ble lbl_800350D8
/* 800350D4 00030D34  FC 20 00 90 */	fmr f1, f0
lbl_800350D8:
/* 800350D8 00030D38  C0 02 81 EC */	lfs f0, lbl_806407EC-_SDA2_BASE_(r2)
/* 800350DC 00030D3C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800350E0 00030D40  40 80 00 08 */	bge lbl_800350E8
/* 800350E4 00030D44  FC 20 00 90 */	fmr f1, f0
lbl_800350E8:
/* 800350E8 00030D48  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 800350EC 00030D4C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800350F0 00030D50  40 81 00 08 */	ble lbl_800350F8
/* 800350F4 00030D54  FC 40 00 90 */	fmr f2, f0
lbl_800350F8:
/* 800350F8 00030D58  C0 02 81 EC */	lfs f0, lbl_806407EC-_SDA2_BASE_(r2)
/* 800350FC 00030D5C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80035100 00030D60  40 80 00 08 */	bge lbl_80035108
/* 80035104 00030D64  FC 40 00 90 */	fmr f2, f0
lbl_80035108:
/* 80035108 00030D68  D0 23 01 80 */	stfs f1, 0x180(r3)
/* 8003510C 00030D6C  D0 43 01 84 */	stfs f2, 0x184(r3)
/* 80035110 00030D70  38 63 06 48 */	addi r3, r3, 0x648
/* 80035114 00030D74  48 01 B2 75 */	bl func_80050388
/* 80035118 00030D78  38 7F 06 6C */	addi r3, r31, 0x66c
/* 8003511C 00030D7C  48 01 B2 6D */	bl func_80050388
/* 80035120 00030D80  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80035124 00030D84  C0 1F 01 80 */	lfs f0, 0x180(r31)
/* 80035128 00030D88  D0 03 04 24 */	stfs f0, 0x424(r3)
/* 8003512C 00030D8C  C0 1F 01 84 */	lfs f0, 0x184(r31)
/* 80035130 00030D90  D0 03 04 28 */	stfs f0, 0x428(r3)
/* 80035134 00030D94  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80035138 00030D98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003513C 00030D9C  7C 08 03 A6 */	mtlr r0
/* 80035140 00030DA0  38 21 00 10 */	addi r1, r1, 0x10
/* 80035144 00030DA4  4E 80 00 20 */	blr

.global func_80035148
func_80035148:
/* 80035148 00030DA8  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003514C 00030DAC  7C 08 02 A6 */	mflr r0
/* 80035150 00030DB0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80035154 00030DB4  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 80035158 00030DB8  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8003515C 00030DBC  FC 80 08 18 */	frsp f4, f1
/* 80035160 00030DC0  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80035164 00030DC4  FF E0 18 90 */	fmr f31, f3
/* 80035168 00030DC8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003516C 00030DCC  7C 9F 23 78 */	mr r31, r4
/* 80035170 00030DD0  FC 04 00 40 */	fcmpo cr0, f4, f0
/* 80035174 00030DD4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80035178 00030DD8  7C 7E 1B 78 */	mr r30, r3
/* 8003517C 00030DDC  D0 21 00 08 */	stfs f1, 8(r1)
/* 80035180 00030DE0  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80035184 00030DE4  40 81 00 0C */	ble lbl_80035190
/* 80035188 00030DE8  FC 20 00 90 */	fmr f1, f0
/* 8003518C 00030DEC  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80035190:
/* 80035190 00030DF0  FC 20 08 18 */	frsp f1, f1
/* 80035194 00030DF4  C0 02 81 EC */	lfs f0, lbl_806407EC-_SDA2_BASE_(r2)
/* 80035198 00030DF8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003519C 00030DFC  40 80 00 08 */	bge lbl_800351A4
/* 800351A0 00030E00  D0 01 00 08 */	stfs f0, 8(r1)
lbl_800351A4:
/* 800351A4 00030E04  FC 20 10 18 */	frsp f1, f2
/* 800351A8 00030E08  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 800351AC 00030E0C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800351B0 00030E10  40 81 00 0C */	ble lbl_800351BC
/* 800351B4 00030E14  FC 40 00 90 */	fmr f2, f0
/* 800351B8 00030E18  D0 01 00 0C */	stfs f0, 0xc(r1)
lbl_800351BC:
/* 800351BC 00030E1C  FC 20 10 18 */	frsp f1, f2
/* 800351C0 00030E20  C0 02 81 EC */	lfs f0, lbl_806407EC-_SDA2_BASE_(r2)
/* 800351C4 00030E24  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800351C8 00030E28  40 80 00 08 */	bge lbl_800351D0
/* 800351CC 00030E2C  D0 01 00 0C */	stfs f0, 0xc(r1)
lbl_800351D0:
/* 800351D0 00030E30  FC 20 F8 90 */	fmr f1, f31
/* 800351D4 00030E34  38 83 01 80 */	addi r4, r3, 0x180
/* 800351D8 00030E38  7C 86 23 78 */	mr r6, r4
/* 800351DC 00030E3C  7F E7 FB 78 */	mr r7, r31
/* 800351E0 00030E40  38 A1 00 08 */	addi r5, r1, 8
/* 800351E4 00030E44  38 63 06 48 */	addi r3, r3, 0x648
/* 800351E8 00030E48  48 01 B1 55 */	bl func_8005033C
/* 800351EC 00030E4C  FC 20 F8 90 */	fmr f1, f31
/* 800351F0 00030E50  38 9E 01 84 */	addi r4, r30, 0x184
/* 800351F4 00030E54  7C 86 23 78 */	mr r6, r4
/* 800351F8 00030E58  7F E7 FB 78 */	mr r7, r31
/* 800351FC 00030E5C  38 7E 06 6C */	addi r3, r30, 0x66c
/* 80035200 00030E60  38 A1 00 0C */	addi r5, r1, 0xc
/* 80035204 00030E64  48 01 B1 39 */	bl func_8005033C
/* 80035208 00030E68  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8003520C 00030E6C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80035210 00030E70  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80035214 00030E74  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80035218 00030E78  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003521C 00030E7C  7C 08 03 A6 */	mtlr r0
/* 80035220 00030E80  38 21 00 30 */	addi r1, r1, 0x30
/* 80035224 00030E84  4E 80 00 20 */	blr

.global func_80035228
func_80035228:
/* 80035228 00030E88  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 8003522C 00030E8C  2C 04 00 00 */	cmpwi r4, 0
/* 80035230 00030E90  4D 82 00 20 */	beqlr
/* 80035234 00030E94  88 03 01 88 */	lbz r0, 0x188(r3)
/* 80035238 00030E98  98 04 04 0F */	stb r0, 0x40f(r4)
/* 8003523C 00030E9C  C0 03 01 8C */	lfs f0, 0x18c(r3)
/* 80035240 00030EA0  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80035244 00030EA4  D0 04 04 40 */	stfs f0, 0x440(r4)
/* 80035248 00030EA8  80 03 01 90 */	lwz r0, 0x190(r3)
/* 8003524C 00030EAC  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80035250 00030EB0  90 04 04 4C */	stw r0, 0x44c(r4)
/* 80035254 00030EB4  88 03 01 94 */	lbz r0, 0x194(r3)
/* 80035258 00030EB8  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 8003525C 00030EBC  98 04 04 48 */	stb r0, 0x448(r4)
/* 80035260 00030EC0  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80035264 00030EC4  C0 03 01 98 */	lfs f0, 0x198(r3)
/* 80035268 00030EC8  D0 04 04 38 */	stfs f0, 0x438(r4)
/* 8003526C 00030ECC  C0 03 01 9C */	lfs f0, 0x19c(r3)
/* 80035270 00030ED0  D0 04 04 3C */	stfs f0, 0x43c(r4)
/* 80035274 00030ED4  4E 80 00 20 */	blr

.global func_80035278
func_80035278:
/* 80035278 00030ED8  98 83 01 88 */	stb r4, 0x188(r3)
/* 8003527C 00030EDC  4B FF FF AC */	b func_80035228

.global func_80035280
func_80035280:
/* 80035280 00030EE0  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 80035284 00030EE4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80035288 00030EE8  40 80 00 08 */	bge lbl_80035290
/* 8003528C 00030EEC  FC 20 00 90 */	fmr f1, f0
lbl_80035290:
/* 80035290 00030EF0  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80035294 00030EF4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80035298 00030EF8  4C 41 13 82 */	cror 2, 1, 2
/* 8003529C 00030EFC  40 82 00 08 */	bne lbl_800352A4
/* 800352A0 00030F00  FC 20 00 90 */	fmr f1, f0
lbl_800352A4:
/* 800352A4 00030F04  D0 23 01 8C */	stfs f1, 0x18c(r3)
/* 800352A8 00030F08  4B FF FF 80 */	b func_80035228

.global func_800352AC
func_800352AC:
/* 800352AC 00030F0C  2C 04 00 00 */	cmpwi r4, 0
/* 800352B0 00030F10  40 80 00 08 */	bge lbl_800352B8
/* 800352B4 00030F14  38 80 00 00 */	li r4, 0
lbl_800352B8:
/* 800352B8 00030F18  2C 04 00 01 */	cmpwi r4, 1
/* 800352BC 00030F1C  40 81 00 08 */	ble lbl_800352C4
/* 800352C0 00030F20  38 80 00 01 */	li r4, 1
lbl_800352C4:
/* 800352C4 00030F24  90 83 01 90 */	stw r4, 0x190(r3)
/* 800352C8 00030F28  4B FF FF 60 */	b func_80035228

.global func_800352CC
func_800352CC:
/* 800352CC 00030F2C  28 04 00 64 */	cmplwi r4, 0x64
/* 800352D0 00030F30  40 81 00 08 */	ble lbl_800352D8
/* 800352D4 00030F34  38 80 00 64 */	li r4, 0x64
lbl_800352D8:
/* 800352D8 00030F38  98 83 01 94 */	stb r4, 0x194(r3)
/* 800352DC 00030F3C  4B FF FF 4C */	b func_80035228

.global func_800352E0
func_800352E0:
/* 800352E0 00030F40  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800352E4 00030F44  7C 08 02 A6 */	mflr r0
/* 800352E8 00030F48  28 04 00 64 */	cmplwi r4, 0x64
/* 800352EC 00030F4C  90 01 00 24 */	stw r0, 0x24(r1)
/* 800352F0 00030F50  40 81 00 08 */	ble lbl_800352F8
/* 800352F4 00030F54  38 80 00 64 */	li r4, 0x64
lbl_800352F8:
/* 800352F8 00030F58  3C 00 43 30 */	lis r0, 0x4330
/* 800352FC 00030F5C  90 81 00 14 */	stw r4, 0x14(r1)
/* 80035300 00030F60  7C A7 2B 78 */	mr r7, r5
/* 80035304 00030F64  C8 42 82 00 */	lfd f2, lbl_80640800-_SDA2_BASE_(r2)
/* 80035308 00030F68  90 01 00 10 */	stw r0, 0x10(r1)
/* 8003530C 00030F6C  38 81 00 0C */	addi r4, r1, 0xc
/* 80035310 00030F70  38 A1 00 08 */	addi r5, r1, 8
/* 80035314 00030F74  38 C3 01 D8 */	addi r6, r3, 0x1d8
/* 80035318 00030F78  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003531C 00030F7C  90 01 00 18 */	stw r0, 0x18(r1)
/* 80035320 00030F80  EC 00 10 28 */	fsubs f0, f0, f2
/* 80035324 00030F84  D0 01 00 08 */	stfs f0, 8(r1)
/* 80035328 00030F88  88 03 01 94 */	lbz r0, 0x194(r3)
/* 8003532C 00030F8C  38 63 06 00 */	addi r3, r3, 0x600
/* 80035330 00030F90  90 01 00 1C */	stw r0, 0x1c(r1)
/* 80035334 00030F94  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 80035338 00030F98  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003533C 00030F9C  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80035340 00030FA0  48 01 AF FD */	bl func_8005033C
/* 80035344 00030FA4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80035348 00030FA8  7C 08 03 A6 */	mtlr r0
/* 8003534C 00030FAC  38 21 00 20 */	addi r1, r1, 0x20
/* 80035350 00030FB0  4E 80 00 20 */	blr

.global func_80035354
func_80035354:
/* 80035354 00030FB4  C0 23 00 00 */	lfs f1, 0(r3)
/* 80035358 00030FB8  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 8003535C 00030FBC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80035360 00030FC0  40 80 00 0C */	bge lbl_8003536C
/* 80035364 00030FC4  D0 03 00 00 */	stfs f0, 0(r3)
/* 80035368 00030FC8  4E 80 00 20 */	blr
lbl_8003536C:
/* 8003536C 00030FCC  C0 02 81 E8 */	lfs f0, lbl_806407E8-_SDA2_BASE_(r2)
/* 80035370 00030FD0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80035374 00030FD4  4C 81 00 20 */	blelr
/* 80035378 00030FD8  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003537C 00030FDC  4E 80 00 20 */	blr

.global func_80035380
func_80035380:
/* 80035380 00030FE0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80035384 00030FE4  7C 08 02 A6 */	mflr r0
/* 80035388 00030FE8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003538C 00030FEC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80035390 00030FF0  3B E3 00 AC */	addi r31, r3, 0xac
/* 80035394 00030FF4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80035398 00030FF8  3B C3 00 1C */	addi r30, r3, 0x1c
/* 8003539C 00030FFC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800353A0 00031000  7C 7D 1B 78 */	mr r29, r3
lbl_800353A4:
/* 800353A4 00031004  7F C3 F3 78 */	mr r3, r30
/* 800353A8 00031008  48 01 AF 7D */	bl func_80050324
/* 800353AC 0003100C  3B DE 00 24 */	addi r30, r30, 0x24
/* 800353B0 00031010  7C 1E F8 40 */	cmplw r30, r31
/* 800353B4 00031014  41 80 FF F0 */	blt lbl_800353A4
/* 800353B8 00031018  38 00 00 00 */	li r0, 0
/* 800353BC 0003101C  7F A3 EB 78 */	mr r3, r29
/* 800353C0 00031020  98 1D 00 00 */	stb r0, 0(r29)
/* 800353C4 00031024  98 1D 00 02 */	stb r0, 2(r29)
/* 800353C8 00031028  90 1D 00 04 */	stw r0, 4(r29)
/* 800353CC 0003102C  90 1D 00 08 */	stw r0, 8(r29)
/* 800353D0 00031030  90 1D 00 AC */	stw r0, 0xac(r29)
/* 800353D4 00031034  90 1D 00 B0 */	stw r0, 0xb0(r29)
/* 800353D8 00031038  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800353DC 0003103C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800353E0 00031040  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800353E4 00031044  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800353E8 00031048  7C 08 03 A6 */	mtlr r0
/* 800353EC 0003104C  38 21 00 20 */	addi r1, r1, 0x20
/* 800353F0 00031050  4E 80 00 20 */	blr

.global func_800353F4
func_800353F4:
/* 800353F4 00031054  80 63 00 08 */	lwz r3, 8(r3)
/* 800353F8 00031058  4E 80 00 20 */	blr

.global func_800353FC
func_800353FC:
/* 800353FC 0003105C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80035400 00031060  7C 08 02 A6 */	mflr r0
/* 80035404 00031064  90 01 00 24 */	stw r0, 0x24(r1)
/* 80035408 00031068  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003540C 0003106C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80035410 00031070  7C 9E 23 78 */	mr r30, r4
/* 80035414 00031074  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80035418 00031078  7C 7D 1B 78 */	mr r29, r3
/* 8003541C 0003107C  48 00 AD D9 */	bl func_800401F4
/* 80035420 00031080  2C 03 00 00 */	cmpwi r3, 0
/* 80035424 00031084  7C 7F 1B 78 */	mr r31, r3
/* 80035428 00031088  41 82 00 90 */	beq lbl_800354B8
/* 8003542C 0003108C  80 9D 00 08 */	lwz r4, 8(r29)
/* 80035430 00031090  48 00 AF 55 */	bl func_80040384
/* 80035434 00031094  2C 03 00 00 */	cmpwi r3, 0
/* 80035438 00031098  41 82 00 0C */	beq lbl_80035444
/* 8003543C 0003109C  38 00 00 00 */	li r0, 0
/* 80035440 000310A0  90 03 06 CC */	stw r0, 0x6cc(r3)
lbl_80035444:
/* 80035444 000310A4  7F E3 FB 78 */	mr r3, r31
/* 80035448 000310A8  7F C4 F3 78 */	mr r4, r30
/* 8003544C 000310AC  48 00 AF 39 */	bl func_80040384
/* 80035450 000310B0  2C 03 00 00 */	cmpwi r3, 0
/* 80035454 000310B4  7C 7F 1B 78 */	mr r31, r3
/* 80035458 000310B8  41 82 00 60 */	beq lbl_800354B8
/* 8003545C 000310BC  80 1D 00 04 */	lwz r0, 4(r29)
/* 80035460 000310C0  90 03 06 CC */	stw r0, 0x6cc(r3)
/* 80035464 000310C4  80 9D 00 04 */	lwz r4, 4(r29)
/* 80035468 000310C8  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8003546C 000310CC  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 80035470 000310D0  28 00 00 01 */	cmplwi r0, 1
/* 80035474 000310D4  40 82 00 0C */	bne lbl_80035480
/* 80035478 000310D8  C0 04 01 68 */	lfs f0, 0x168(r4)
/* 8003547C 000310DC  48 00 00 08 */	b lbl_80035484
lbl_80035480:
/* 80035480 000310E0  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
lbl_80035484:
/* 80035484 000310E4  D0 03 04 E0 */	stfs f0, 0x4e0(r3)
/* 80035488 000310E8  38 63 00 04 */	addi r3, r3, 4
/* 8003548C 000310EC  48 01 AE FD */	bl func_80050388
/* 80035490 000310F0  38 00 00 01 */	li r0, 1
/* 80035494 000310F4  7F E3 FB 78 */	mr r3, r31
/* 80035498 000310F8  98 1F 00 01 */	stb r0, 1(r31)
/* 8003549C 000310FC  80 9D 00 04 */	lwz r4, 4(r29)
/* 800354A0 00031100  38 84 01 AC */	addi r4, r4, 0x1ac
/* 800354A4 00031104  48 00 BC 09 */	bl func_800410AC
/* 800354A8 00031108  80 9D 00 04 */	lwz r4, 4(r29)
/* 800354AC 0003110C  7F E3 FB 78 */	mr r3, r31
/* 800354B0 00031110  38 84 01 C4 */	addi r4, r4, 0x1c4
/* 800354B4 00031114  48 00 D0 81 */	bl func_80042534
lbl_800354B8:
/* 800354B8 00031118  93 DD 00 08 */	stw r30, 8(r29)
/* 800354BC 0003111C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800354C0 00031120  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800354C4 00031124  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800354C8 00031128  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800354CC 0003112C  7C 08 03 A6 */	mtlr r0
/* 800354D0 00031130  38 21 00 20 */	addi r1, r1, 0x20
/* 800354D4 00031134  4E 80 00 20 */	blr

.global func_800354D8
func_800354D8:
/* 800354D8 00031138  80 E4 00 00 */	lwz r7, 0(r4)
/* 800354DC 0003113C  80 C4 00 04 */	lwz r6, 4(r4)
/* 800354E0 00031140  80 A4 00 08 */	lwz r5, 8(r4)
/* 800354E4 00031144  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800354E8 00031148  90 E3 00 0C */	stw r7, 0xc(r3)
/* 800354EC 0003114C  90 C3 00 10 */	stw r6, 0x10(r3)
/* 800354F0 00031150  90 A3 00 14 */	stw r5, 0x14(r3)
/* 800354F4 00031154  90 03 00 18 */	stw r0, 0x18(r3)
/* 800354F8 00031158  4B FF F4 20 */	b func_80034918

.global func_800354FC
func_800354FC:
/* 800354FC 0003115C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80035500 00031160  7C 08 02 A6 */	mflr r0
/* 80035504 00031164  EC A1 18 28 */	fsubs f5, f1, f3
/* 80035508 00031168  C0 02 82 0C */	lfs f0, lbl_8064080C-_SDA2_BASE_(r2)
/* 8003550C 0003116C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80035510 00031170  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80035514 00031174  FC 05 00 40 */	fcmpo cr0, f5, f0
/* 80035518 00031178  7C 7F 1B 78 */	mr r31, r3
/* 8003551C 0003117C  40 80 00 10 */	bge lbl_8003552C
/* 80035520 00031180  C0 02 82 10 */	lfs f0, lbl_80640810-_SDA2_BASE_(r2)
/* 80035524 00031184  FC 05 00 40 */	fcmpo cr0, f5, f0
/* 80035528 00031188  41 81 00 EC */	bgt lbl_80035614
lbl_8003552C:
/* 8003552C 0003118C  EC A2 20 28 */	fsubs f5, f2, f4
/* 80035530 00031190  C0 02 82 0C */	lfs f0, lbl_8064080C-_SDA2_BASE_(r2)
/* 80035534 00031194  FC 05 00 40 */	fcmpo cr0, f5, f0
/* 80035538 00031198  40 80 00 14 */	bge lbl_8003554C
/* 8003553C 0003119C  C0 02 82 10 */	lfs f0, lbl_80640810-_SDA2_BASE_(r2)
/* 80035540 000311A0  FC 05 00 40 */	fcmpo cr0, f5, f0
/* 80035544 000311A4  40 81 00 08 */	ble lbl_8003554C
/* 80035548 000311A8  48 00 00 CC */	b lbl_80035614
lbl_8003554C:
/* 8003554C 000311AC  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 80035550 000311B0  3C 80 43 30 */	lis r4, 0x4330
/* 80035554 000311B4  90 81 00 08 */	stw r4, 8(r1)
/* 80035558 000311B8  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8003555C 000311BC  A0 A6 00 04 */	lhz r5, 4(r6)
/* 80035560 000311C0  A0 06 00 06 */	lhz r0, 6(r6)
/* 80035564 000311C4  90 A1 00 0C */	stw r5, 0xc(r1)
/* 80035568 000311C8  C8 A2 82 00 */	lfd f5, lbl_80640800-_SDA2_BASE_(r2)
/* 8003556C 000311CC  C8 01 00 08 */	lfd f0, 8(r1)
/* 80035570 000311D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035574 000311D4  EC C0 28 28 */	fsubs f6, f0, f5
/* 80035578 000311D8  90 81 00 10 */	stw r4, 0x10(r1)
/* 8003557C 000311DC  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 80035580 000311E0  EC A0 28 28 */	fsubs f5, f0, f5
/* 80035584 000311E4  40 80 00 18 */	bge lbl_8003559C
/* 80035588 000311E8  EC 21 30 24 */	fdivs f1, f1, f6
/* 8003558C 000311EC  EC 03 30 24 */	fdivs f0, f3, f6
/* 80035590 000311F0  D0 23 00 0C */	stfs f1, 0xc(r3)
/* 80035594 000311F4  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 80035598 000311F8  48 00 00 14 */	b lbl_800355AC
lbl_8003559C:
/* 8003559C 000311FC  EC 21 30 24 */	fdivs f1, f1, f6
/* 800355A0 00031200  EC 03 30 24 */	fdivs f0, f3, f6
/* 800355A4 00031204  D0 23 00 14 */	stfs f1, 0x14(r3)
/* 800355A8 00031208  D0 03 00 0C */	stfs f0, 0xc(r3)
lbl_800355AC:
/* 800355AC 0003120C  FC 02 20 40 */	fcmpo cr0, f2, f4
/* 800355B0 00031210  40 80 00 18 */	bge lbl_800355C8
/* 800355B4 00031214  EC 22 28 24 */	fdivs f1, f2, f5
/* 800355B8 00031218  EC 04 28 24 */	fdivs f0, f4, f5
/* 800355BC 0003121C  D0 23 00 10 */	stfs f1, 0x10(r3)
/* 800355C0 00031220  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 800355C4 00031224  48 00 00 14 */	b lbl_800355D8
lbl_800355C8:
/* 800355C8 00031228  EC 22 28 24 */	fdivs f1, f2, f5
/* 800355CC 0003122C  EC 04 28 24 */	fdivs f0, f4, f5
/* 800355D0 00031230  D0 23 00 18 */	stfs f1, 0x18(r3)
/* 800355D4 00031234  D0 03 00 10 */	stfs f0, 0x10(r3)
lbl_800355D8:
/* 800355D8 00031238  38 63 00 14 */	addi r3, r3, 0x14
/* 800355DC 0003123C  4B FF FD 79 */	bl func_80035354
/* 800355E0 00031240  38 7F 00 0C */	addi r3, r31, 0xc
/* 800355E4 00031244  4B FF FD 71 */	bl func_80035354
/* 800355E8 00031248  38 7F 00 10 */	addi r3, r31, 0x10
/* 800355EC 0003124C  4B FF FD 69 */	bl func_80035354
/* 800355F0 00031250  38 7F 00 18 */	addi r3, r31, 0x18
/* 800355F4 00031254  4B FF FD 61 */	bl func_80035354
/* 800355F8 00031258  4B FF DA 91 */	bl func_80033088
/* 800355FC 0003125C  2C 03 00 00 */	cmpwi r3, 0
/* 80035600 00031260  41 82 00 10 */	beq lbl_80035610
/* 80035604 00031264  4B FF DA 85 */	bl func_80033088
/* 80035608 00031268  38 80 00 01 */	li r4, 1
/* 8003560C 0003126C  4B FF F2 B1 */	bl func_800348BC
lbl_80035610:
/* 80035610 00031270  4B FF F3 09 */	bl func_80034918
lbl_80035614:
/* 80035614 00031274  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80035618 00031278  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003561C 0003127C  7C 08 03 A6 */	mtlr r0
/* 80035620 00031280  38 21 00 20 */	addi r1, r1, 0x20
/* 80035624 00031284  4E 80 00 20 */	blr

.global func_80035628
func_80035628:
/* 80035628 00031288  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003562C 0003128C  7C 08 02 A6 */	mflr r0
/* 80035630 00031290  3C 80 43 30 */	lis r4, 0x4330
/* 80035634 00031294  C0 22 81 E4 */	lfs f1, lbl_806407E4-_SDA2_BASE_(r2)
/* 80035638 00031298  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003563C 0003129C  C8 62 82 00 */	lfd f3, lbl_80640800-_SDA2_BASE_(r2)
/* 80035640 000312A0  FC 40 08 90 */	fmr f2, f1
/* 80035644 000312A4  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 80035648 000312A8  90 81 00 08 */	stw r4, 8(r1)
/* 8003564C 000312AC  A0 A6 00 06 */	lhz r5, 6(r6)
/* 80035650 000312B0  A0 06 00 04 */	lhz r0, 4(r6)
/* 80035654 000312B4  90 A1 00 0C */	stw r5, 0xc(r1)
/* 80035658 000312B8  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003565C 000312BC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035660 000312C0  EC 80 18 28 */	fsubs f4, f0, f3
/* 80035664 000312C4  90 81 00 10 */	stw r4, 0x10(r1)
/* 80035668 000312C8  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003566C 000312CC  EC 60 18 28 */	fsubs f3, f0, f3
/* 80035670 000312D0  4B FF FE 8D */	bl func_800354FC
/* 80035674 000312D4  4B FF DA 15 */	bl func_80033088
/* 80035678 000312D8  38 80 00 00 */	li r4, 0
/* 8003567C 000312DC  4B FF F2 41 */	bl func_800348BC
/* 80035680 000312E0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80035684 000312E4  7C 08 03 A6 */	mtlr r0
/* 80035688 000312E8  38 21 00 20 */	addi r1, r1, 0x20
/* 8003568C 000312EC  4E 80 00 20 */	blr

.global func_80035690
func_80035690:
/* 80035690 000312F0  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 80035694 000312F4  7C 08 02 A6 */	mflr r0
/* 80035698 000312F8  90 01 00 64 */	stw r0, 0x64(r1)
/* 8003569C 000312FC  DB E1 00 50 */	stfd f31, 0x50(r1)
/* 800356A0 00031300  F3 E1 00 58 */	psq_st f31, 88(r1), 0, qr0
/* 800356A4 00031304  DB C1 00 40 */	stfd f30, 0x40(r1)
/* 800356A8 00031308  F3 C1 00 48 */	psq_st f30, 72(r1), 0, qr0
/* 800356AC 0003130C  DB A1 00 30 */	stfd f29, 0x30(r1)
/* 800356B0 00031310  F3 A1 00 38 */	psq_st f29, 56(r1), 0, qr0
/* 800356B4 00031314  FF A0 28 90 */	fmr f29, f5
/* 800356B8 00031318  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
/* 800356BC 0003131C  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 800356C0 00031320  7C 9F 23 78 */	mr r31, r4
/* 800356C4 00031324  FC 00 28 00 */	fcmpu cr0, f0, f5
/* 800356C8 00031328  93 C1 00 28 */	stw r30, 0x28(r1)
/* 800356CC 0003132C  7C 7E 1B 78 */	mr r30, r3
/* 800356D0 00031330  D0 21 00 08 */	stfs f1, 8(r1)
/* 800356D4 00031334  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 800356D8 00031338  D0 61 00 10 */	stfs f3, 0x10(r1)
/* 800356DC 0003133C  D0 81 00 14 */	stfs f4, 0x14(r1)
/* 800356E0 00031340  40 82 00 1C */	bne lbl_800356FC
/* 800356E4 00031344  FC 20 08 18 */	frsp f1, f1
/* 800356E8 00031348  FC 40 10 18 */	frsp f2, f2
/* 800356EC 0003134C  FC 60 18 18 */	frsp f3, f3
/* 800356F0 00031350  FC 80 20 18 */	frsp f4, f4
/* 800356F4 00031354  4B FF FE 09 */	bl func_800354FC
/* 800356F8 00031358  48 00 01 00 */	b lbl_800357F8
lbl_800356FC:
/* 800356FC 0003135C  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 80035700 00031360  3C 80 43 30 */	lis r4, 0x4330
/* 80035704 00031364  90 81 00 18 */	stw r4, 0x18(r1)
/* 80035708 00031368  FC 00 08 18 */	frsp f0, f1
/* 8003570C 0003136C  A0 A6 00 04 */	lhz r5, 4(r6)
/* 80035710 00031370  38 61 00 08 */	addi r3, r1, 8
/* 80035714 00031374  A0 06 00 06 */	lhz r0, 6(r6)
/* 80035718 00031378  90 A1 00 1C */	stw r5, 0x1c(r1)
/* 8003571C 0003137C  C8 42 82 00 */	lfd f2, lbl_80640800-_SDA2_BASE_(r2)
/* 80035720 00031380  C8 21 00 18 */	lfd f1, 0x18(r1)
/* 80035724 00031384  90 01 00 24 */	stw r0, 0x24(r1)
/* 80035728 00031388  EF E1 10 28 */	fsubs f31, f1, f2
/* 8003572C 0003138C  90 81 00 20 */	stw r4, 0x20(r1)
/* 80035730 00031390  EC 00 F8 24 */	fdivs f0, f0, f31
/* 80035734 00031394  C8 21 00 20 */	lfd f1, 0x20(r1)
/* 80035738 00031398  EF C1 10 28 */	fsubs f30, f1, f2
/* 8003573C 0003139C  D0 01 00 08 */	stfs f0, 8(r1)
/* 80035740 000313A0  4B FF FC 15 */	bl func_80035354
/* 80035744 000313A4  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80035748 000313A8  38 61 00 10 */	addi r3, r1, 0x10
/* 8003574C 000313AC  EC 00 F8 24 */	fdivs f0, f0, f31
/* 80035750 000313B0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80035754 000313B4  4B FF FC 01 */	bl func_80035354
/* 80035758 000313B8  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8003575C 000313BC  38 61 00 0C */	addi r3, r1, 0xc
/* 80035760 000313C0  EC 00 F0 24 */	fdivs f0, f0, f30
/* 80035764 000313C4  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80035768 000313C8  4B FF FB ED */	bl func_80035354
/* 8003576C 000313CC  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 80035770 000313D0  38 61 00 14 */	addi r3, r1, 0x14
/* 80035774 000313D4  EC 00 F0 24 */	fdivs f0, f0, f30
/* 80035778 000313D8  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003577C 000313DC  4B FF FB D9 */	bl func_80035354
/* 80035780 000313E0  7F C3 F3 78 */	mr r3, r30
/* 80035784 000313E4  48 00 01 45 */	bl func_800358C8
/* 80035788 000313E8  FC 20 E8 90 */	fmr f1, f29
/* 8003578C 000313EC  38 9E 00 0C */	addi r4, r30, 0xc
/* 80035790 000313F0  7C 86 23 78 */	mr r6, r4
/* 80035794 000313F4  7F E7 FB 78 */	mr r7, r31
/* 80035798 000313F8  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8003579C 000313FC  38 A1 00 08 */	addi r5, r1, 8
/* 800357A0 00031400  48 01 AB 9D */	bl func_8005033C
/* 800357A4 00031404  FC 20 E8 90 */	fmr f1, f29
/* 800357A8 00031408  38 9E 00 10 */	addi r4, r30, 0x10
/* 800357AC 0003140C  7C 86 23 78 */	mr r6, r4
/* 800357B0 00031410  7F E7 FB 78 */	mr r7, r31
/* 800357B4 00031414  38 7E 00 40 */	addi r3, r30, 0x40
/* 800357B8 00031418  38 A1 00 0C */	addi r5, r1, 0xc
/* 800357BC 0003141C  48 01 AB 81 */	bl func_8005033C
/* 800357C0 00031420  FC 20 E8 90 */	fmr f1, f29
/* 800357C4 00031424  38 9E 00 14 */	addi r4, r30, 0x14
/* 800357C8 00031428  7C 86 23 78 */	mr r6, r4
/* 800357CC 0003142C  7F E7 FB 78 */	mr r7, r31
/* 800357D0 00031430  38 7E 00 64 */	addi r3, r30, 0x64
/* 800357D4 00031434  38 A1 00 10 */	addi r5, r1, 0x10
/* 800357D8 00031438  48 01 AB 65 */	bl func_8005033C
/* 800357DC 0003143C  FC 20 E8 90 */	fmr f1, f29
/* 800357E0 00031440  38 9E 00 18 */	addi r4, r30, 0x18
/* 800357E4 00031444  7C 86 23 78 */	mr r6, r4
/* 800357E8 00031448  7F E7 FB 78 */	mr r7, r31
/* 800357EC 0003144C  38 7E 00 88 */	addi r3, r30, 0x88
/* 800357F0 00031450  38 A1 00 14 */	addi r5, r1, 0x14
/* 800357F4 00031454  48 01 AB 49 */	bl func_8005033C
lbl_800357F8:
/* 800357F8 00031458  E3 E1 00 58 */	psq_l f31, 88(r1), 0, qr0
/* 800357FC 0003145C  CB E1 00 50 */	lfd f31, 0x50(r1)
/* 80035800 00031460  E3 C1 00 48 */	psq_l f30, 72(r1), 0, qr0
/* 80035804 00031464  CB C1 00 40 */	lfd f30, 0x40(r1)
/* 80035808 00031468  E3 A1 00 38 */	psq_l f29, 56(r1), 0, qr0
/* 8003580C 0003146C  CB A1 00 30 */	lfd f29, 0x30(r1)
/* 80035810 00031470  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80035814 00031474  80 01 00 64 */	lwz r0, 0x64(r1)
/* 80035818 00031478  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8003581C 0003147C  7C 08 03 A6 */	mtlr r0
/* 80035820 00031480  38 21 00 60 */	addi r1, r1, 0x60
/* 80035824 00031484  4E 80 00 20 */	blr

.global func_80035828
func_80035828:
/* 80035828 00031488  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003582C 0003148C  7C 08 02 A6 */	mflr r0
/* 80035830 00031490  90 01 00 24 */	stw r0, 0x24(r1)
/* 80035834 00031494  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80035838 00031498  FF E0 08 90 */	fmr f31, f1
/* 8003583C 0003149C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80035840 000314A0  3B E3 00 1C */	addi r31, r3, 0x1c
/* 80035844 000314A4  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80035848 000314A8  3B C0 00 00 */	li r30, 0
/* 8003584C 000314AC  93 A1 00 0C */	stw r29, 0xc(r1)
/* 80035850 000314B0  3B A0 00 00 */	li r29, 0
/* 80035854 000314B4  93 81 00 08 */	stw r28, 8(r1)
/* 80035858 000314B8  7C 7C 1B 78 */	mr r28, r3
lbl_8003585C:
/* 8003585C 000314BC  81 9F 00 20 */	lwz r12, 0x20(r31)
/* 80035860 000314C0  FC 20 F8 90 */	fmr f1, f31
/* 80035864 000314C4  7F E3 FB 78 */	mr r3, r31
/* 80035868 000314C8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003586C 000314CC  7D 89 03 A6 */	mtctr r12
/* 80035870 000314D0  4E 80 04 21 */	bctrl
/* 80035874 000314D4  2C 03 00 00 */	cmpwi r3, 0
/* 80035878 000314D8  41 82 00 08 */	beq lbl_80035880
/* 8003587C 000314DC  3B C0 00 01 */	li r30, 1
lbl_80035880:
/* 80035880 000314E0  3B BD 00 01 */	addi r29, r29, 1
/* 80035884 000314E4  3B FF 00 24 */	addi r31, r31, 0x24
/* 80035888 000314E8  2C 1D 00 04 */	cmpwi r29, 4
/* 8003588C 000314EC  41 80 FF D0 */	blt lbl_8003585C
/* 80035890 000314F0  2C 1E 00 00 */	cmpwi r30, 0
/* 80035894 000314F4  41 82 00 10 */	beq lbl_800358A4
/* 80035898 000314F8  7F 83 E3 78 */	mr r3, r28
/* 8003589C 000314FC  38 9C 00 0C */	addi r4, r28, 0xc
/* 800358A0 00031500  4B FF FC 39 */	bl func_800354D8
lbl_800358A4:
/* 800358A4 00031504  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800358A8 00031508  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 800358AC 0003150C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 800358B0 00031510  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 800358B4 00031514  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 800358B8 00031518  83 81 00 08 */	lwz r28, 8(r1)
/* 800358BC 0003151C  7C 08 03 A6 */	mtlr r0
/* 800358C0 00031520  38 21 00 20 */	addi r1, r1, 0x20
/* 800358C4 00031524  4E 80 00 20 */	blr

.global func_800358C8
func_800358C8:
/* 800358C8 00031528  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800358CC 0003152C  7C 08 02 A6 */	mflr r0
/* 800358D0 00031530  90 01 00 14 */	stw r0, 0x14(r1)
/* 800358D4 00031534  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800358D8 00031538  3B E3 00 1C */	addi r31, r3, 0x1c
/* 800358DC 0003153C  93 C1 00 08 */	stw r30, 8(r1)
/* 800358E0 00031540  3B C0 00 00 */	li r30, 0
lbl_800358E4:
/* 800358E4 00031544  7F E3 FB 78 */	mr r3, r31
/* 800358E8 00031548  48 01 AA A1 */	bl func_80050388
/* 800358EC 0003154C  3B DE 00 01 */	addi r30, r30, 1
/* 800358F0 00031550  3B FF 00 24 */	addi r31, r31, 0x24
/* 800358F4 00031554  2C 1E 00 04 */	cmpwi r30, 4
/* 800358F8 00031558  41 80 FF EC */	blt lbl_800358E4
/* 800358FC 0003155C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80035900 00031560  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80035904 00031564  83 C1 00 08 */	lwz r30, 8(r1)
/* 80035908 00031568  7C 08 03 A6 */	mtlr r0
/* 8003590C 0003156C  38 21 00 10 */	addi r1, r1, 0x10
/* 80035910 00031570  4E 80 00 20 */	blr

.global func_80035914
func_80035914:
/* 80035914 00031574  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80035918 00031578  2C 00 00 00 */	cmpwi r0, 0
/* 8003591C 0003157C  41 82 00 0C */	beq lbl_80035928
/* 80035920 00031580  38 60 00 01 */	li r3, 1
/* 80035924 00031584  4E 80 00 20 */	blr
lbl_80035928:
/* 80035928 00031588  80 03 00 40 */	lwz r0, 0x40(r3)
/* 8003592C 0003158C  2C 00 00 00 */	cmpwi r0, 0
/* 80035930 00031590  41 82 00 0C */	beq lbl_8003593C
/* 80035934 00031594  38 60 00 01 */	li r3, 1
/* 80035938 00031598  4E 80 00 20 */	blr
lbl_8003593C:
/* 8003593C 0003159C  38 63 00 48 */	addi r3, r3, 0x48
/* 80035940 000315A0  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80035944 000315A4  2C 00 00 00 */	cmpwi r0, 0
/* 80035948 000315A8  41 82 00 0C */	beq lbl_80035954
/* 8003594C 000315AC  38 60 00 01 */	li r3, 1
/* 80035950 000315B0  4E 80 00 20 */	blr
lbl_80035954:
/* 80035954 000315B4  80 03 00 40 */	lwz r0, 0x40(r3)
/* 80035958 000315B8  2C 00 00 00 */	cmpwi r0, 0
/* 8003595C 000315BC  41 82 00 0C */	beq lbl_80035968
/* 80035960 000315C0  38 60 00 01 */	li r3, 1
/* 80035964 000315C4  4E 80 00 20 */	blr
lbl_80035968:
/* 80035968 000315C8  38 60 00 00 */	li r3, 0
/* 8003596C 000315CC  4E 80 00 20 */	blr

.global func_80035970
func_80035970:
/* 80035970 000315D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80035974 000315D4  7C 08 02 A6 */	mflr r0
/* 80035978 000315D8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003597C 000315DC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80035980 000315E0  7C 7F 1B 78 */	mr r31, r3
/* 80035984 000315E4  88 03 00 02 */	lbz r0, 2(r3)
/* 80035988 000315E8  2C 00 00 00 */	cmpwi r0, 0
/* 8003598C 000315EC  41 82 00 9C */	beq lbl_80035A28
/* 80035990 000315F0  80 03 00 AC */	lwz r0, 0xac(r3)
/* 80035994 000315F4  2C 00 00 00 */	cmpwi r0, 0
/* 80035998 000315F8  41 82 00 1C */	beq lbl_800359B4
/* 8003599C 000315FC  7C 03 03 78 */	mr r3, r0
/* 800359A0 00031600  38 80 00 00 */	li r4, 0
/* 800359A4 00031604  48 00 74 E5 */	bl func_8003CE88
/* 800359A8 00031608  2C 03 00 00 */	cmpwi r3, 0
/* 800359AC 0003160C  41 82 00 7C */	beq lbl_80035A28
/* 800359B0 00031610  48 00 00 7C */	b lbl_80035A2C
lbl_800359B4:
/* 800359B4 00031614  80 83 00 B0 */	lwz r4, 0xb0(r3)
/* 800359B8 00031618  2C 04 00 00 */	cmpwi r4, 0
/* 800359BC 0003161C  41 82 00 6C */	beq lbl_80035A28
/* 800359C0 00031620  80 64 00 10 */	lwz r3, 0x10(r4)
/* 800359C4 00031624  2C 03 00 00 */	cmpwi r3, 0
/* 800359C8 00031628  40 82 00 0C */	bne lbl_800359D4
/* 800359CC 0003162C  38 60 00 00 */	li r3, 0
/* 800359D0 00031630  48 00 00 4C */	b lbl_80035A1C
lbl_800359D4:
/* 800359D4 00031634  A0 04 00 E0 */	lhz r0, 0xe0(r4)
/* 800359D8 00031638  2C 00 00 00 */	cmpwi r0, 0
/* 800359DC 0003163C  40 82 00 0C */	bne lbl_800359E8
/* 800359E0 00031640  38 60 00 00 */	li r3, 0
/* 800359E4 00031644  48 00 00 38 */	b lbl_80035A1C
lbl_800359E8:
/* 800359E8 00031648  80 A4 00 08 */	lwz r5, 8(r4)
/* 800359EC 0003164C  A0 63 00 00 */	lhz r3, 0(r3)
/* 800359F0 00031650  2C 05 00 00 */	cmpwi r5, 0
/* 800359F4 00031654  40 82 00 0C */	bne lbl_80035A00
/* 800359F8 00031658  38 60 00 00 */	li r3, 0
/* 800359FC 0003165C  48 00 00 20 */	b lbl_80035A1C
lbl_80035A00:
/* 80035A00 00031660  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 80035A04 00031664  7C 03 00 40 */	cmplw r3, r0
/* 80035A08 00031668  41 80 00 0C */	blt lbl_80035A14
/* 80035A0C 0003166C  38 60 00 00 */	li r3, 0
/* 80035A10 00031670  48 00 00 0C */	b lbl_80035A1C
lbl_80035A14:
/* 80035A14 00031674  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 80035A18 00031678  7C 65 00 2E */	lwzx r3, r5, r0
lbl_80035A1C:
/* 80035A1C 0003167C  2C 03 00 00 */	cmpwi r3, 0
/* 80035A20 00031680  41 82 00 08 */	beq lbl_80035A28
/* 80035A24 00031684  48 00 00 08 */	b lbl_80035A2C
lbl_80035A28:
/* 80035A28 00031688  80 7F 00 04 */	lwz r3, 4(r31)
lbl_80035A2C:
/* 80035A2C 0003168C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80035A30 00031690  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80035A34 00031694  7C 08 03 A6 */	mtlr r0
/* 80035A38 00031698  38 21 00 10 */	addi r1, r1, 0x10
/* 80035A3C 0003169C  4E 80 00 20 */	blr

.global func_80035A40
func_80035A40:
/* 80035A40 000316A0  90 83 00 AC */	stw r4, 0xac(r3)
/* 80035A44 000316A4  4E 80 00 20 */	blr

.global func_80035A48
func_80035A48:
/* 80035A48 000316A8  90 83 00 B0 */	stw r4, 0xb0(r3)
/* 80035A4C 000316AC  4E 80 00 20 */	blr

.global func_80035A50
func_80035A50:
/* 80035A50 000316B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80035A54 000316B4  7C 08 02 A6 */	mflr r0
/* 80035A58 000316B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035A5C 000316BC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80035A60 000316C0  7C 7F 1B 78 */	mr r31, r3
/* 80035A64 000316C4  80 03 00 AC */	lwz r0, 0xac(r3)
/* 80035A68 000316C8  2C 00 00 00 */	cmpwi r0, 0
/* 80035A6C 000316CC  41 82 00 20 */	beq lbl_80035A8C
/* 80035A70 000316D0  C0 22 81 E4 */	lfs f1, lbl_806407E4-_SDA2_BASE_(r2)
/* 80035A74 000316D4  7C 03 03 78 */	mr r3, r0
/* 80035A78 000316D8  48 00 36 19 */	bl func_80039090
/* 80035A7C 000316DC  4B FF EE 9D */	bl func_80034918
/* 80035A80 000316E0  38 00 00 01 */	li r0, 1
/* 80035A84 000316E4  98 1F 00 02 */	stb r0, 2(r31)
/* 80035A88 000316E8  48 00 00 1C */	b lbl_80035AA4
lbl_80035A8C:
/* 80035A8C 000316EC  80 03 00 B0 */	lwz r0, 0xb0(r3)
/* 80035A90 000316F0  2C 00 00 00 */	cmpwi r0, 0
/* 80035A94 000316F4  41 82 00 10 */	beq lbl_80035AA4
/* 80035A98 000316F8  4B FF EE 81 */	bl func_80034918
/* 80035A9C 000316FC  38 00 00 01 */	li r0, 1
/* 80035AA0 00031700  98 1F 00 02 */	stb r0, 2(r31)
lbl_80035AA4:
/* 80035AA4 00031704  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80035AA8 00031708  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80035AAC 0003170C  7C 08 03 A6 */	mtlr r0
/* 80035AB0 00031710  38 21 00 10 */	addi r1, r1, 0x10
/* 80035AB4 00031714  4E 80 00 20 */	blr

.global func_80035AB8
func_80035AB8:
/* 80035AB8 00031718  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80035ABC 0003171C  7C 08 02 A6 */	mflr r0
/* 80035AC0 00031720  90 01 00 44 */	stw r0, 0x44(r1)
/* 80035AC4 00031724  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80035AC8 00031728  7C 7F 1B 78 */	mr r31, r3
/* 80035ACC 0003172C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80035AD0 00031730  93 A1 00 34 */	stw r29, 0x34(r1)
/* 80035AD4 00031734  88 03 00 02 */	lbz r0, 2(r3)
/* 80035AD8 00031738  2C 00 00 00 */	cmpwi r0, 0
/* 80035ADC 0003173C  41 82 01 98 */	beq lbl_80035C74
/* 80035AE0 00031740  80 03 00 AC */	lwz r0, 0xac(r3)
/* 80035AE4 00031744  2C 00 00 00 */	cmpwi r0, 0
/* 80035AE8 00031748  41 82 00 20 */	beq lbl_80035B08
/* 80035AEC 0003174C  7C 03 03 78 */	mr r3, r0
/* 80035AF0 00031750  38 80 00 00 */	li r4, 0
/* 80035AF4 00031754  48 00 73 95 */	bl func_8003CE88
/* 80035AF8 00031758  38 00 00 00 */	li r0, 0
/* 80035AFC 0003175C  7C 7E 1B 78 */	mr r30, r3
/* 80035B00 00031760  90 1F 00 AC */	stw r0, 0xac(r31)
/* 80035B04 00031764  48 00 00 74 */	b lbl_80035B78
lbl_80035B08:
/* 80035B08 00031768  80 A3 00 B0 */	lwz r5, 0xb0(r3)
/* 80035B0C 0003176C  2C 05 00 00 */	cmpwi r5, 0
/* 80035B10 00031770  41 82 00 68 */	beq lbl_80035B78
/* 80035B14 00031774  80 85 00 10 */	lwz r4, 0x10(r5)
/* 80035B18 00031778  2C 04 00 00 */	cmpwi r4, 0
/* 80035B1C 0003177C  40 82 00 0C */	bne lbl_80035B28
/* 80035B20 00031780  3B C0 00 00 */	li r30, 0
/* 80035B24 00031784  48 00 00 4C */	b lbl_80035B70
lbl_80035B28:
/* 80035B28 00031788  A0 05 00 E0 */	lhz r0, 0xe0(r5)
/* 80035B2C 0003178C  2C 00 00 00 */	cmpwi r0, 0
/* 80035B30 00031790  40 82 00 0C */	bne lbl_80035B3C
/* 80035B34 00031794  3B C0 00 00 */	li r30, 0
/* 80035B38 00031798  48 00 00 38 */	b lbl_80035B70
lbl_80035B3C:
/* 80035B3C 0003179C  80 C5 00 08 */	lwz r6, 8(r5)
/* 80035B40 000317A0  A0 84 00 00 */	lhz r4, 0(r4)
/* 80035B44 000317A4  2C 06 00 00 */	cmpwi r6, 0
/* 80035B48 000317A8  40 82 00 0C */	bne lbl_80035B54
/* 80035B4C 000317AC  3B C0 00 00 */	li r30, 0
/* 80035B50 000317B0  48 00 00 20 */	b lbl_80035B70
lbl_80035B54:
/* 80035B54 000317B4  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 80035B58 000317B8  7C 04 00 40 */	cmplw r4, r0
/* 80035B5C 000317BC  41 80 00 0C */	blt lbl_80035B68
/* 80035B60 000317C0  3B C0 00 00 */	li r30, 0
/* 80035B64 000317C4  48 00 00 0C */	b lbl_80035B70
lbl_80035B68:
/* 80035B68 000317C8  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 80035B6C 000317CC  7F C6 00 2E */	lwzx r30, r6, r0
lbl_80035B70:
/* 80035B70 000317D0  38 00 00 00 */	li r0, 0
/* 80035B74 000317D4  90 03 00 B0 */	stw r0, 0xb0(r3)
lbl_80035B78:
/* 80035B78 000317D8  2C 1E 00 00 */	cmpwi r30, 0
/* 80035B7C 000317DC  41 82 00 EC */	beq lbl_80035C68
/* 80035B80 000317E0  80 1E 01 04 */	lwz r0, 0x104(r30)
/* 80035B84 000317E4  C0 5E 00 20 */	lfs f2, 0x20(r30)
/* 80035B88 000317E8  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 80035B8C 000317EC  C0 3E 00 24 */	lfs f1, 0x24(r30)
/* 80035B90 000317F0  C0 1E 00 28 */	lfs f0, 0x28(r30)
/* 80035B94 000317F4  28 00 00 01 */	cmplwi r0, 1
/* 80035B98 000317F8  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 80035B9C 000317FC  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80035BA0 00031800  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80035BA4 00031804  40 82 00 0C */	bne lbl_80035BB0
/* 80035BA8 00031808  C0 1E 01 6C */	lfs f0, 0x16c(r30)
/* 80035BAC 0003180C  48 00 00 30 */	b lbl_80035BDC
lbl_80035BB0:
/* 80035BB0 00031810  C0 7E 01 6C */	lfs f3, 0x16c(r30)
/* 80035BB4 00031814  C0 5E 01 68 */	lfs f2, 0x168(r30)
/* 80035BB8 00031818  C0 3E 01 74 */	lfs f1, 0x174(r30)
/* 80035BBC 0003181C  C0 1E 01 70 */	lfs f0, 0x170(r30)
/* 80035BC0 00031820  EC 43 10 28 */	fsubs f2, f3, f2
/* 80035BC4 00031824  EC 01 00 28 */	fsubs f0, f1, f0
/* 80035BC8 00031828  FC 20 12 10 */	fabs f1, f2
/* 80035BCC 0003182C  FC 40 02 10 */	fabs f2, f0
/* 80035BD0 00031830  FC 00 08 18 */	frsp f0, f1
/* 80035BD4 00031834  FC 20 10 18 */	frsp f1, f2
/* 80035BD8 00031838  EC 01 00 24 */	fdivs f0, f1, f0
lbl_80035BDC:
/* 80035BDC 0003183C  80 7F 00 04 */	lwz r3, 4(r31)
/* 80035BE0 00031840  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80035BE4 00031844  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 80035BE8 00031848  28 00 00 01 */	cmplwi r0, 1
/* 80035BEC 0003184C  40 82 00 14 */	bne lbl_80035C00
/* 80035BF0 00031850  D0 03 01 6C */	stfs f0, 0x16c(r3)
/* 80035BF4 00031854  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80035BF8 00031858  60 00 00 08 */	ori r0, r0, 8
/* 80035BFC 0003185C  90 03 01 04 */	stw r0, 0x104(r3)
lbl_80035C00:
/* 80035C00 00031860  48 00 A5 F5 */	bl func_800401F4
/* 80035C04 00031864  2C 03 00 00 */	cmpwi r3, 0
/* 80035C08 00031868  41 82 00 60 */	beq lbl_80035C68
/* 80035C0C 0003186C  80 9F 00 08 */	lwz r4, 8(r31)
/* 80035C10 00031870  48 00 A7 75 */	bl func_80040384
/* 80035C14 00031874  2C 03 00 00 */	cmpwi r3, 0
/* 80035C18 00031878  7C 7D 1B 78 */	mr r29, r3
/* 80035C1C 0003187C  41 82 00 4C */	beq lbl_80035C68
/* 80035C20 00031880  80 1E 01 04 */	lwz r0, 0x104(r30)
/* 80035C24 00031884  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 80035C28 00031888  28 00 00 01 */	cmplwi r0, 1
/* 80035C2C 0003188C  40 82 00 0C */	bne lbl_80035C38
/* 80035C30 00031890  C0 1E 01 68 */	lfs f0, 0x168(r30)
/* 80035C34 00031894  48 00 00 08 */	b lbl_80035C3C
lbl_80035C38:
/* 80035C38 00031898  C0 02 81 E4 */	lfs f0, lbl_806407E4-_SDA2_BASE_(r2)
lbl_80035C3C:
/* 80035C3C 0003189C  D0 03 04 E0 */	stfs f0, 0x4e0(r3)
/* 80035C40 000318A0  38 63 00 04 */	addi r3, r3, 4
/* 80035C44 000318A4  48 01 A7 45 */	bl func_80050388
/* 80035C48 000318A8  38 00 00 01 */	li r0, 1
/* 80035C4C 000318AC  7F A3 EB 78 */	mr r3, r29
/* 80035C50 000318B0  98 1D 00 01 */	stb r0, 1(r29)
/* 80035C54 000318B4  38 9E 01 AC */	addi r4, r30, 0x1ac
/* 80035C58 000318B8  48 00 B4 55 */	bl func_800410AC
/* 80035C5C 000318BC  7F A3 EB 78 */	mr r3, r29
/* 80035C60 000318C0  38 9E 01 C4 */	addi r4, r30, 0x1c4
/* 80035C64 000318C4  48 00 C8 D1 */	bl func_80042534
lbl_80035C68:
/* 80035C68 000318C8  38 00 00 00 */	li r0, 0
/* 80035C6C 000318CC  98 1F 00 02 */	stb r0, 2(r31)
/* 80035C70 000318D0  4B FF EC A9 */	bl func_80034918
lbl_80035C74:
/* 80035C74 000318D4  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80035C78 000318D8  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80035C7C 000318DC  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80035C80 000318E0  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 80035C84 000318E4  7C 08 03 A6 */	mtlr r0
/* 80035C88 000318E8  38 21 00 40 */	addi r1, r1, 0x40
/* 80035C8C 000318EC  4E 80 00 20 */	blr

.global func_80035C90
func_80035C90:
/* 80035C90 000318F0  38 A0 00 01 */	li r5, 1
/* 80035C94 000318F4  38 6D 97 90 */	addi r3, r13, lbl_8063EA50-_SDA_BASE_
/* 80035C98 000318F8  38 80 00 04 */	li r4, 4
/* 80035C9C 000318FC  38 00 00 00 */	li r0, 0
/* 80035CA0 00031900  98 AD 97 90 */	stb r5, lbl_8063EA50-_SDA_BASE_(r13)
/* 80035CA4 00031904  B0 83 00 02 */	sth r4, 2(r3)
/* 80035CA8 00031908  98 03 00 04 */	stb r0, 4(r3)
/* 80035CAC 0003190C  4E 80 00 20 */	blr

.global func_80035CB0
func_80035CB0:
/* 80035CB0 00031910  38 00 00 00 */	li r0, 0
/* 80035CB4 00031914  98 03 00 07 */	stb r0, 7(r3)
/* 80035CB8 00031918  B0 03 00 00 */	sth r0, 0(r3)
/* 80035CBC 0003191C  B0 03 00 02 */	sth r0, 2(r3)
/* 80035CC0 00031920  98 03 00 04 */	stb r0, 4(r3)
/* 80035CC4 00031924  98 03 00 05 */	stb r0, 5(r3)
/* 80035CC8 00031928  98 03 00 06 */	stb r0, 6(r3)
/* 80035CCC 0003192C  98 03 00 08 */	stb r0, 8(r3)
/* 80035CD0 00031930  90 03 00 0C */	stw r0, 0xc(r3)
/* 80035CD4 00031934  B0 03 00 12 */	sth r0, 0x12(r3)
/* 80035CD8 00031938  B0 03 00 0A */	sth r0, 0xa(r3)
/* 80035CDC 0003193C  4E 80 00 20 */	blr

.global func_80035CE0
func_80035CE0:
/* 80035CE0 00031940  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80035CE4 00031944  7C 08 02 A6 */	mflr r0
/* 80035CE8 00031948  90 01 00 24 */	stw r0, 0x24(r1)
/* 80035CEC 0003194C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80035CF0 00031950  3B E3 03 40 */	addi r31, r3, 0x340
/* 80035CF4 00031954  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80035CF8 00031958  3B C3 04 10 */	addi r30, r3, 0x410
/* 80035CFC 0003195C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80035D00 00031960  7C 7D 1B 78 */	mr r29, r3
lbl_80035D04:
/* 80035D04 00031964  7F E3 FB 78 */	mr r3, r31
/* 80035D08 00031968  4B FF FF A9 */	bl func_80035CB0
/* 80035D0C 0003196C  3B FF 00 34 */	addi r31, r31, 0x34
/* 80035D10 00031970  7C 1F F0 40 */	cmplw r31, r30
/* 80035D14 00031974  41 80 FF F0 */	blt lbl_80035D04
/* 80035D18 00031978  3B FD 04 E0 */	addi r31, r29, 0x4e0
lbl_80035D1C:
/* 80035D1C 0003197C  7F C3 F3 78 */	mr r3, r30
/* 80035D20 00031980  4B FF FF 91 */	bl func_80035CB0
/* 80035D24 00031984  3B DE 00 34 */	addi r30, r30, 0x34
/* 80035D28 00031988  7C 1E F8 40 */	cmplw r30, r31
/* 80035D2C 0003198C  41 80 FF F0 */	blt lbl_80035D1C
/* 80035D30 00031990  7F A3 EB 78 */	mr r3, r29
/* 80035D34 00031994  48 00 00 71 */	bl func_80035DA4
/* 80035D38 00031998  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80035D3C 0003199C  7F A3 EB 78 */	mr r3, r29
/* 80035D40 000319A0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80035D44 000319A4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80035D48 000319A8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80035D4C 000319AC  7C 08 03 A6 */	mtlr r0
/* 80035D50 000319B0  38 21 00 20 */	addi r1, r1, 0x20
/* 80035D54 000319B4  4E 80 00 20 */	blr

.global func_80035D58
func_80035D58:
/* 80035D58 000319B8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80035D5C 000319BC  7C 08 02 A6 */	mflr r0
/* 80035D60 000319C0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035D64 000319C4  80 0D 97 A8 */	lwz r0, lbl_8063EA68-_SDA_BASE_(r13)
/* 80035D68 000319C8  2C 00 00 00 */	cmpwi r0, 0
/* 80035D6C 000319CC  40 82 00 1C */	bne lbl_80035D88
/* 80035D70 000319D0  38 60 09 74 */	li r3, 0x974
/* 80035D74 000319D4  48 1A 4C BD */	bl func_801DAA30
/* 80035D78 000319D8  2C 03 00 00 */	cmpwi r3, 0
/* 80035D7C 000319DC  41 82 00 08 */	beq lbl_80035D84
/* 80035D80 000319E0  4B FF FF 61 */	bl func_80035CE0
lbl_80035D84:
/* 80035D84 000319E4  90 6D 97 A8 */	stw r3, lbl_8063EA68-_SDA_BASE_(r13)
lbl_80035D88:
/* 80035D88 000319E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80035D8C 000319EC  80 6D 97 A8 */	lwz r3, lbl_8063EA68-_SDA_BASE_(r13)
/* 80035D90 000319F0  7C 08 03 A6 */	mtlr r0
/* 80035D94 000319F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80035D98 000319F8  4E 80 00 20 */	blr

.global func_80035D9C
func_80035D9C:
/* 80035D9C 000319FC  80 6D 97 A8 */	lwz r3, lbl_8063EA68-_SDA_BASE_(r13)
/* 80035DA0 00031A00  4E 80 00 20 */	blr

.global func_80035DA4
func_80035DA4:
/* 80035DA4 00031A04  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80035DA8 00031A08  7C 08 02 A6 */	mflr r0
/* 80035DAC 00031A0C  38 C0 00 00 */	li r6, 0
/* 80035DB0 00031A10  38 80 00 00 */	li r4, 0
/* 80035DB4 00031A14  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035DB8 00031A18  38 00 FF FF */	li r0, -1
/* 80035DBC 00031A1C  38 A0 01 0C */	li r5, 0x10c
/* 80035DC0 00031A20  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80035DC4 00031A24  7C 7F 1B 78 */	mr r31, r3
/* 80035DC8 00031A28  90 C3 00 00 */	stw r6, 0(r3)
/* 80035DCC 00031A2C  90 03 00 04 */	stw r0, 4(r3)
/* 80035DD0 00031A30  90 03 00 08 */	stw r0, 8(r3)
/* 80035DD4 00031A34  90 C3 00 0C */	stw r6, 0xc(r3)
/* 80035DD8 00031A38  90 C3 00 10 */	stw r6, 0x10(r3)
/* 80035DDC 00031A3C  90 C3 00 14 */	stw r6, 0x14(r3)
/* 80035DE0 00031A40  98 C3 03 30 */	stb r6, 0x330(r3)
/* 80035DE4 00031A44  90 C3 00 2C */	stw r6, 0x2c(r3)
/* 80035DE8 00031A48  90 C3 03 34 */	stw r6, 0x334(r3)
/* 80035DEC 00031A4C  38 63 08 60 */	addi r3, r3, 0x860
/* 80035DF0 00031A50  4B FC E3 15 */	bl memset
/* 80035DF4 00031A54  38 7F 04 E0 */	addi r3, r31, 0x4e0
/* 80035DF8 00031A58  38 80 00 00 */	li r4, 0
/* 80035DFC 00031A5C  38 A0 03 80 */	li r5, 0x380
/* 80035E00 00031A60  4B FC E3 05 */	bl memset
/* 80035E04 00031A64  38 7F 03 40 */	addi r3, r31, 0x340
/* 80035E08 00031A68  38 80 00 00 */	li r4, 0
/* 80035E0C 00031A6C  38 A0 00 D0 */	li r5, 0xd0
/* 80035E10 00031A70  4B FC E2 F5 */	bl memset
/* 80035E14 00031A74  38 7F 08 60 */	addi r3, r31, 0x860
/* 80035E18 00031A78  38 1F 04 E0 */	addi r0, r31, 0x4e0
/* 80035E1C 00031A7C  90 7F 09 70 */	stw r3, 0x970(r31)
/* 80035E20 00031A80  90 1F 09 6C */	stw r0, 0x96c(r31)
/* 80035E24 00031A84  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80035E28 00031A88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80035E2C 00031A8C  7C 08 03 A6 */	mtlr r0
/* 80035E30 00031A90  38 21 00 10 */	addi r1, r1, 0x10
/* 80035E34 00031A94  4E 80 00 20 */	blr

.global func_80035E38
func_80035E38:
/* 80035E38 00031A98  80 63 00 00 */	lwz r3, 0(r3)
/* 80035E3C 00031A9C  4E 80 00 20 */	blr

.global func_80035E40
func_80035E40:
/* 80035E40 00031AA0  90 83 00 00 */	stw r4, 0(r3)
/* 80035E44 00031AA4  4E 80 00 20 */	blr

.global func_80035E48
func_80035E48:
/* 80035E48 00031AA8  80 63 00 04 */	lwz r3, 4(r3)
/* 80035E4C 00031AAC  4E 80 00 20 */	blr

.global func_80035E50
func_80035E50:
/* 80035E50 00031AB0  90 83 00 04 */	stw r4, 4(r3)
/* 80035E54 00031AB4  4E 80 00 20 */	blr

.global func_80035E58
func_80035E58:
/* 80035E58 00031AB8  80 63 00 08 */	lwz r3, 8(r3)
/* 80035E5C 00031ABC  4E 80 00 20 */	blr

.global func_80035E60
func_80035E60:
/* 80035E60 00031AC0  90 83 00 08 */	stw r4, 8(r3)
/* 80035E64 00031AC4  4E 80 00 20 */	blr

.global func_80035E68
func_80035E68:
/* 80035E68 00031AC8  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80035E6C 00031ACC  4E 80 00 20 */	blr

.global func_80035E70
func_80035E70:
/* 80035E70 00031AD0  90 83 00 0C */	stw r4, 0xc(r3)
/* 80035E74 00031AD4  4E 80 00 20 */	blr

.global func_80035E78
func_80035E78:
/* 80035E78 00031AD8  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80035E7C 00031ADC  4E 80 00 20 */	blr

.global func_80035E80
func_80035E80:
/* 80035E80 00031AE0  90 83 00 10 */	stw r4, 0x10(r3)
/* 80035E84 00031AE4  4E 80 00 20 */	blr

.global func_80035E88
func_80035E88:
/* 80035E88 00031AE8  80 63 00 14 */	lwz r3, 0x14(r3)
/* 80035E8C 00031AEC  4E 80 00 20 */	blr

.global func_80035E90
func_80035E90:
/* 80035E90 00031AF0  90 83 00 14 */	stw r4, 0x14(r3)
/* 80035E94 00031AF4  4E 80 00 20 */	blr

.global func_80035E98
func_80035E98:
/* 80035E98 00031AF8  90 83 00 2C */	stw r4, 0x2c(r3)
/* 80035E9C 00031AFC  4E 80 00 20 */	blr

.global func_80035EA0
func_80035EA0:
/* 80035EA0 00031B00  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 80035EA4 00031B04  4E 80 00 20 */	blr

.global func_80035EA8
func_80035EA8:
/* 80035EA8 00031B08  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035EAC 00031B0C  A0 63 00 02 */	lhz r3, 2(r3)
/* 80035EB0 00031B10  4E 80 00 20 */	blr

.global func_80035EB4
func_80035EB4:
/* 80035EB4 00031B14  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035EB8 00031B18  B0 83 00 02 */	sth r4, 2(r3)
/* 80035EBC 00031B1C  4E 80 00 20 */	blr

.global func_80035EC0
func_80035EC0:
/* 80035EC0 00031B20  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035EC4 00031B24  88 63 00 04 */	lbz r3, 4(r3)
/* 80035EC8 00031B28  4E 80 00 20 */	blr

.global func_80035ECC
func_80035ECC:
/* 80035ECC 00031B2C  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035ED0 00031B30  98 83 00 04 */	stb r4, 4(r3)
/* 80035ED4 00031B34  4E 80 00 20 */	blr

.global func_80035ED8
func_80035ED8:
/* 80035ED8 00031B38  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035EDC 00031B3C  88 63 00 05 */	lbz r3, 5(r3)
/* 80035EE0 00031B40  4E 80 00 20 */	blr

.global func_80035EE4
func_80035EE4:
/* 80035EE4 00031B44  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035EE8 00031B48  98 83 00 05 */	stb r4, 5(r3)
/* 80035EEC 00031B4C  4E 80 00 20 */	blr

.global func_80035EF0
func_80035EF0:
/* 80035EF0 00031B50  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035EF4 00031B54  88 63 00 06 */	lbz r3, 6(r3)
/* 80035EF8 00031B58  4E 80 00 20 */	blr

.global func_80035EFC
func_80035EFC:
/* 80035EFC 00031B5C  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F00 00031B60  A0 63 00 08 */	lhz r3, 8(r3)
/* 80035F04 00031B64  4E 80 00 20 */	blr

.global func_80035F08
func_80035F08:
/* 80035F08 00031B68  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F0C 00031B6C  B0 83 00 08 */	sth r4, 8(r3)
/* 80035F10 00031B70  4E 80 00 20 */	blr

.global func_80035F14
func_80035F14:
/* 80035F14 00031B74  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F18 00031B78  A0 63 00 0A */	lhz r3, 0xa(r3)
/* 80035F1C 00031B7C  4E 80 00 20 */	blr

.global func_80035F20
func_80035F20:
/* 80035F20 00031B80  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F24 00031B84  B0 83 00 0A */	sth r4, 0xa(r3)
/* 80035F28 00031B88  4E 80 00 20 */	blr

.global func_80035F2C
func_80035F2C:
/* 80035F2C 00031B8C  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F30 00031B90  A0 63 00 0C */	lhz r3, 0xc(r3)
/* 80035F34 00031B94  4E 80 00 20 */	blr

.global func_80035F38
func_80035F38:
/* 80035F38 00031B98  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F3C 00031B9C  B0 83 00 0C */	sth r4, 0xc(r3)
/* 80035F40 00031BA0  4E 80 00 20 */	blr

.global func_80035F44
func_80035F44:
/* 80035F44 00031BA4  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F48 00031BA8  A0 63 00 18 */	lhz r3, 0x18(r3)
/* 80035F4C 00031BAC  4E 80 00 20 */	blr

.global func_80035F50
func_80035F50:
/* 80035F50 00031BB0  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F54 00031BB4  88 63 00 24 */	lbz r3, 0x24(r3)
/* 80035F58 00031BB8  4E 80 00 20 */	blr

.global func_80035F5C
func_80035F5C:
/* 80035F5C 00031BBC  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F60 00031BC0  98 83 00 24 */	stb r4, 0x24(r3)
/* 80035F64 00031BC4  4E 80 00 20 */	blr

.global func_80035F68
func_80035F68:
/* 80035F68 00031BC8  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F6C 00031BCC  88 63 00 25 */	lbz r3, 0x25(r3)
/* 80035F70 00031BD0  4E 80 00 20 */	blr

.global func_80035F74
func_80035F74:
/* 80035F74 00031BD4  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F78 00031BD8  98 83 00 25 */	stb r4, 0x25(r3)
/* 80035F7C 00031BDC  4E 80 00 20 */	blr

.global func_80035F80
func_80035F80:
/* 80035F80 00031BE0  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F84 00031BE4  88 63 00 26 */	lbz r3, 0x26(r3)
/* 80035F88 00031BE8  4E 80 00 20 */	blr

.global func_80035F8C
func_80035F8C:
/* 80035F8C 00031BEC  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F90 00031BF0  88 63 00 27 */	lbz r3, 0x27(r3)
/* 80035F94 00031BF4  4E 80 00 20 */	blr

.global func_80035F98
func_80035F98:
/* 80035F98 00031BF8  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035F9C 00031BFC  88 83 00 26 */	lbz r4, 0x26(r3)
/* 80035FA0 00031C00  20 64 00 FF */	subfic r3, r4, 0xff
/* 80035FA4 00031C04  38 04 FF 01 */	addi r0, r4, -255
/* 80035FA8 00031C08  7C 60 03 78 */	or r0, r3, r0
/* 80035FAC 00031C0C  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80035FB0 00031C10  4E 80 00 20 */	blr

.global func_80035FB4
func_80035FB4:
/* 80035FB4 00031C14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80035FB8 00031C18  7C 08 02 A6 */	mflr r0
/* 80035FBC 00031C1C  2C 84 00 00 */	cmpwi cr1, r4, 0
/* 80035FC0 00031C20  90 01 00 14 */	stw r0, 0x14(r1)
/* 80035FC4 00031C24  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80035FC8 00031C28  7C 9F 23 78 */	mr r31, r4
/* 80035FCC 00031C2C  93 C1 00 08 */	stw r30, 8(r1)
/* 80035FD0 00031C30  7C 7E 1B 78 */	mr r30, r3
/* 80035FD4 00031C34  41 84 00 1C */	blt cr1, lbl_80035FF0
/* 80035FD8 00031C38  2C 04 00 02 */	cmpwi r4, 2
/* 80035FDC 00031C3C  40 80 00 14 */	bge lbl_80035FF0
/* 80035FE0 00031C40  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80035FE4 00031C44  A0 03 00 08 */	lhz r0, 8(r3)
/* 80035FE8 00031C48  2C 00 00 00 */	cmpwi r0, 0
/* 80035FEC 00031C4C  40 82 00 0C */	bne lbl_80035FF8
lbl_80035FF0:
/* 80035FF0 00031C50  38 60 00 00 */	li r3, 0
/* 80035FF4 00031C54  48 00 00 5C */	b lbl_80036050
lbl_80035FF8:
/* 80035FF8 00031C58  40 86 00 18 */	bne cr1, lbl_80036010
/* 80035FFC 00031C5C  A0 63 00 18 */	lhz r3, 0x18(r3)
/* 80036000 00031C60  2C 03 00 00 */	cmpwi r3, 0
/* 80036004 00031C64  41 82 00 1C */	beq lbl_80036020
/* 80036008 00031C68  48 13 96 21 */	bl func_8016F628
/* 8003600C 00031C6C  48 00 00 14 */	b lbl_80036020
lbl_80036010:
/* 80036010 00031C70  A0 63 00 1A */	lhz r3, 0x1a(r3)
/* 80036014 00031C74  2C 03 00 00 */	cmpwi r3, 0
/* 80036018 00031C78  41 82 00 08 */	beq lbl_80036020
/* 8003601C 00031C7C  48 13 96 0D */	bl func_8016F628
lbl_80036020:
/* 80036020 00031C80  2C 03 00 00 */	cmpwi r3, 0
/* 80036024 00031C84  40 82 00 0C */	bne lbl_80036030
/* 80036028 00031C88  38 60 00 00 */	li r3, 0
/* 8003602C 00031C8C  48 00 00 24 */	b lbl_80036050
lbl_80036030:
/* 80036030 00031C90  57 FF 40 2E */	slwi r31, r31, 8
/* 80036034 00031C94  7C 64 1B 78 */	mr r4, r3
/* 80036038 00031C98  7C 7E FA 14 */	add r3, r30, r31
/* 8003603C 00031C9C  38 A0 00 80 */	li r5, 0x80
/* 80036040 00031CA0  38 63 01 30 */	addi r3, r3, 0x130
/* 80036044 00031CA4  48 14 10 3D */	bl func_80177080
/* 80036048 00031CA8  7C 7E FA 14 */	add r3, r30, r31
/* 8003604C 00031CAC  38 63 01 30 */	addi r3, r3, 0x130
lbl_80036050:
/* 80036050 00031CB0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80036054 00031CB4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80036058 00031CB8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003605C 00031CBC  7C 08 03 A6 */	mtlr r0
/* 80036060 00031CC0  38 21 00 10 */	addi r1, r1, 0x10
/* 80036064 00031CC4  4E 80 00 20 */	blr

.global func_80036068
func_80036068:
/* 80036068 00031CC8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003606C 00031CCC  7C 08 02 A6 */	mflr r0
/* 80036070 00031CD0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80036074 00031CD4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80036078 00031CD8  7C 7F 1B 78 */	mr r31, r3
/* 8003607C 00031CDC  80 83 09 70 */	lwz r4, 0x970(r3)
/* 80036080 00031CE0  A0 64 00 08 */	lhz r3, 8(r4)
/* 80036084 00031CE4  2C 03 00 00 */	cmpwi r3, 0
/* 80036088 00031CE8  40 82 00 0C */	bne lbl_80036094
/* 8003608C 00031CEC  38 60 00 00 */	li r3, 0
/* 80036090 00031CF0  48 00 00 2C */	b lbl_800360BC
lbl_80036094:
/* 80036094 00031CF4  48 13 95 95 */	bl func_8016F628
/* 80036098 00031CF8  2C 03 00 00 */	cmpwi r3, 0
/* 8003609C 00031CFC  40 82 00 0C */	bne lbl_800360A8
/* 800360A0 00031D00  38 60 00 00 */	li r3, 0
/* 800360A4 00031D04  48 00 00 18 */	b lbl_800360BC
lbl_800360A8:
/* 800360A8 00031D08  7C 64 1B 78 */	mr r4, r3
/* 800360AC 00031D0C  38 7F 00 30 */	addi r3, r31, 0x30
/* 800360B0 00031D10  38 A0 00 80 */	li r5, 0x80
/* 800360B4 00031D14  48 14 0F CD */	bl func_80177080
/* 800360B8 00031D18  38 7F 00 30 */	addi r3, r31, 0x30
lbl_800360BC:
/* 800360BC 00031D1C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800360C0 00031D20  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800360C4 00031D24  7C 08 03 A6 */	mtlr r0
/* 800360C8 00031D28  38 21 00 10 */	addi r1, r1, 0x10
/* 800360CC 00031D2C  4E 80 00 20 */	blr

.global func_800360D0
func_800360D0:
/* 800360D0 00031D30  80 83 09 70 */	lwz r4, 0x970(r3)
/* 800360D4 00031D34  38 60 00 00 */	li r3, 0
/* 800360D8 00031D38  88 04 00 2C */	lbz r0, 0x2c(r4)
/* 800360DC 00031D3C  28 00 00 FF */	cmplwi r0, 0xff
/* 800360E0 00031D40  4D 82 00 20 */	beqlr
/* 800360E4 00031D44  88 04 00 64 */	lbz r0, 0x64(r4)
/* 800360E8 00031D48  38 60 00 01 */	li r3, 1
/* 800360EC 00031D4C  28 00 00 FF */	cmplwi r0, 0xff
/* 800360F0 00031D50  4D 82 00 20 */	beqlr
/* 800360F4 00031D54  88 04 00 9C */	lbz r0, 0x9c(r4)
/* 800360F8 00031D58  38 60 00 02 */	li r3, 2
/* 800360FC 00031D5C  28 00 00 FF */	cmplwi r0, 0xff
/* 80036100 00031D60  4D 82 00 20 */	beqlr
/* 80036104 00031D64  88 04 00 D4 */	lbz r0, 0xd4(r4)
/* 80036108 00031D68  38 60 00 03 */	li r3, 3
/* 8003610C 00031D6C  28 00 00 FF */	cmplwi r0, 0xff
/* 80036110 00031D70  4D 82 00 20 */	beqlr
/* 80036114 00031D74  38 60 00 04 */	li r3, 4
/* 80036118 00031D78  4E 80 00 20 */	blr

.global func_8003611C
func_8003611C:
/* 8003611C 00031D7C  2C 04 00 00 */	cmpwi r4, 0
/* 80036120 00031D80  41 80 00 0C */	blt lbl_8003612C
/* 80036124 00031D84  2C 04 00 04 */	cmpwi r4, 4
/* 80036128 00031D88  41 80 00 0C */	blt lbl_80036134
lbl_8003612C:
/* 8003612C 00031D8C  38 60 00 00 */	li r3, 0
/* 80036130 00031D90  4E 80 00 20 */	blr
lbl_80036134:
/* 80036134 00031D94  1C 04 00 38 */	mulli r0, r4, 0x38
/* 80036138 00031D98  80 63 09 70 */	lwz r3, 0x970(r3)
/* 8003613C 00031D9C  2C 05 00 0F */	cmpwi r5, 0xf
/* 80036140 00031DA0  7C 63 02 14 */	add r3, r3, r0
/* 80036144 00031DA4  41 82 01 4C */	beq lbl_80036290
/* 80036148 00031DA8  40 80 00 70 */	bge lbl_800361B8
/* 8003614C 00031DAC  2C 05 00 07 */	cmpwi r5, 7
/* 80036150 00031DB0  41 82 01 00 */	beq lbl_80036250
/* 80036154 00031DB4  40 80 00 38 */	bge lbl_8003618C
/* 80036158 00031DB8  2C 05 00 03 */	cmpwi r5, 3
/* 8003615C 00031DBC  41 82 00 D4 */	beq lbl_80036230
/* 80036160 00031DC0  40 80 00 1C */	bge lbl_8003617C
/* 80036164 00031DC4  2C 05 00 01 */	cmpwi r5, 1
/* 80036168 00031DC8  41 82 00 B8 */	beq lbl_80036220
/* 8003616C 00031DCC  40 80 00 BC */	bge lbl_80036228
/* 80036170 00031DD0  2C 05 00 00 */	cmpwi r5, 0
/* 80036174 00031DD4  40 80 00 A4 */	bge lbl_80036218
/* 80036178 00031DD8  48 00 01 88 */	b lbl_80036300
lbl_8003617C:
/* 8003617C 00031DDC  2C 05 00 05 */	cmpwi r5, 5
/* 80036180 00031DE0  41 82 00 C0 */	beq lbl_80036240
/* 80036184 00031DE4  40 80 00 C4 */	bge lbl_80036248
/* 80036188 00031DE8  48 00 00 B0 */	b lbl_80036238
lbl_8003618C:
/* 8003618C 00031DEC  2C 05 00 0B */	cmpwi r5, 0xb
/* 80036190 00031DF0  41 82 00 E0 */	beq lbl_80036270
/* 80036194 00031DF4  40 80 00 14 */	bge lbl_800361A8
/* 80036198 00031DF8  2C 05 00 09 */	cmpwi r5, 9
/* 8003619C 00031DFC  41 82 00 C4 */	beq lbl_80036260
/* 800361A0 00031E00  40 80 00 C8 */	bge lbl_80036268
/* 800361A4 00031E04  48 00 00 B4 */	b lbl_80036258
lbl_800361A8:
/* 800361A8 00031E08  2C 05 00 0D */	cmpwi r5, 0xd
/* 800361AC 00031E0C  41 82 00 D4 */	beq lbl_80036280
/* 800361B0 00031E10  40 80 00 D8 */	bge lbl_80036288
/* 800361B4 00031E14  48 00 00 C4 */	b lbl_80036278
lbl_800361B8:
/* 800361B8 00031E18  2C 05 00 17 */	cmpwi r5, 0x17
/* 800361BC 00031E1C  41 82 01 24 */	beq lbl_800362E0
/* 800361C0 00031E20  40 80 00 30 */	bge lbl_800361F0
/* 800361C4 00031E24  2C 05 00 13 */	cmpwi r5, 0x13
/* 800361C8 00031E28  41 82 00 E8 */	beq lbl_800362B0
/* 800361CC 00031E2C  40 80 00 14 */	bge lbl_800361E0
/* 800361D0 00031E30  2C 05 00 11 */	cmpwi r5, 0x11
/* 800361D4 00031E34  41 82 00 CC */	beq lbl_800362A0
/* 800361D8 00031E38  40 80 00 D0 */	bge lbl_800362A8
/* 800361DC 00031E3C  48 00 00 BC */	b lbl_80036298
lbl_800361E0:
/* 800361E0 00031E40  2C 05 00 15 */	cmpwi r5, 0x15
/* 800361E4 00031E44  41 82 00 EC */	beq lbl_800362D0
/* 800361E8 00031E48  40 80 00 F0 */	bge lbl_800362D8
/* 800361EC 00031E4C  48 00 00 CC */	b lbl_800362B8
lbl_800361F0:
/* 800361F0 00031E50  2C 05 00 1B */	cmpwi r5, 0x1b
/* 800361F4 00031E54  41 82 00 FC */	beq lbl_800362F0
/* 800361F8 00031E58  40 80 00 14 */	bge lbl_8003620C
/* 800361FC 00031E5C  2C 05 00 19 */	cmpwi r5, 0x19
/* 80036200 00031E60  41 82 00 C8 */	beq lbl_800362C8
/* 80036204 00031E64  40 80 00 E4 */	bge lbl_800362E8
/* 80036208 00031E68  48 00 00 B8 */	b lbl_800362C0
lbl_8003620C:
/* 8003620C 00031E6C  2C 05 03 E8 */	cmpwi r5, 0x3e8
/* 80036210 00031E70  41 82 00 E8 */	beq lbl_800362F8
/* 80036214 00031E74  48 00 00 EC */	b lbl_80036300
lbl_80036218:
/* 80036218 00031E78  88 63 00 2C */	lbz r3, 0x2c(r3)
/* 8003621C 00031E7C  4E 80 00 20 */	blr
lbl_80036220:
/* 80036220 00031E80  88 63 00 2D */	lbz r3, 0x2d(r3)
/* 80036224 00031E84  4E 80 00 20 */	blr
lbl_80036228:
/* 80036228 00031E88  A0 63 00 2E */	lhz r3, 0x2e(r3)
/* 8003622C 00031E8C  4E 80 00 20 */	blr
lbl_80036230:
/* 80036230 00031E90  A0 63 00 30 */	lhz r3, 0x30(r3)
/* 80036234 00031E94  4E 80 00 20 */	blr
lbl_80036238:
/* 80036238 00031E98  A0 63 00 32 */	lhz r3, 0x32(r3)
/* 8003623C 00031E9C  4E 80 00 20 */	blr
lbl_80036240:
/* 80036240 00031EA0  88 63 00 34 */	lbz r3, 0x34(r3)
/* 80036244 00031EA4  4E 80 00 20 */	blr
lbl_80036248:
/* 80036248 00031EA8  88 63 00 35 */	lbz r3, 0x35(r3)
/* 8003624C 00031EAC  4E 80 00 20 */	blr
lbl_80036250:
/* 80036250 00031EB0  88 63 00 36 */	lbz r3, 0x36(r3)
/* 80036254 00031EB4  4E 80 00 20 */	blr
lbl_80036258:
/* 80036258 00031EB8  88 63 00 37 */	lbz r3, 0x37(r3)
/* 8003625C 00031EBC  4E 80 00 20 */	blr
lbl_80036260:
/* 80036260 00031EC0  A0 63 00 38 */	lhz r3, 0x38(r3)
/* 80036264 00031EC4  4E 80 00 20 */	blr
lbl_80036268:
/* 80036268 00031EC8  A0 63 00 3A */	lhz r3, 0x3a(r3)
/* 8003626C 00031ECC  4E 80 00 20 */	blr
lbl_80036270:
/* 80036270 00031ED0  A0 63 00 3C */	lhz r3, 0x3c(r3)
/* 80036274 00031ED4  4E 80 00 20 */	blr
lbl_80036278:
/* 80036278 00031ED8  A0 63 00 3E */	lhz r3, 0x3e(r3)
/* 8003627C 00031EDC  4E 80 00 20 */	blr
lbl_80036280:
/* 80036280 00031EE0  88 63 00 40 */	lbz r3, 0x40(r3)
/* 80036284 00031EE4  4E 80 00 20 */	blr
lbl_80036288:
/* 80036288 00031EE8  88 63 00 41 */	lbz r3, 0x41(r3)
/* 8003628C 00031EEC  4E 80 00 20 */	blr
lbl_80036290:
/* 80036290 00031EF0  88 63 00 42 */	lbz r3, 0x42(r3)
/* 80036294 00031EF4  4E 80 00 20 */	blr
lbl_80036298:
/* 80036298 00031EF8  88 63 00 43 */	lbz r3, 0x43(r3)
/* 8003629C 00031EFC  4E 80 00 20 */	blr
lbl_800362A0:
/* 800362A0 00031F00  88 63 00 44 */	lbz r3, 0x44(r3)
/* 800362A4 00031F04  4E 80 00 20 */	blr
lbl_800362A8:
/* 800362A8 00031F08  88 63 00 45 */	lbz r3, 0x45(r3)
/* 800362AC 00031F0C  4E 80 00 20 */	blr
lbl_800362B0:
/* 800362B0 00031F10  88 63 00 46 */	lbz r3, 0x46(r3)
/* 800362B4 00031F14  4E 80 00 20 */	blr
lbl_800362B8:
/* 800362B8 00031F18  88 63 00 47 */	lbz r3, 0x47(r3)
/* 800362BC 00031F1C  4E 80 00 20 */	blr
lbl_800362C0:
/* 800362C0 00031F20  A0 63 00 48 */	lhz r3, 0x48(r3)
/* 800362C4 00031F24  4E 80 00 20 */	blr
lbl_800362C8:
/* 800362C8 00031F28  A0 63 00 4A */	lhz r3, 0x4a(r3)
/* 800362CC 00031F2C  4E 80 00 20 */	blr
lbl_800362D0:
/* 800362D0 00031F30  A0 63 00 54 */	lhz r3, 0x54(r3)
/* 800362D4 00031F34  4E 80 00 20 */	blr
lbl_800362D8:
/* 800362D8 00031F38  A0 63 00 56 */	lhz r3, 0x56(r3)
/* 800362DC 00031F3C  4E 80 00 20 */	blr
lbl_800362E0:
/* 800362E0 00031F40  A0 63 00 60 */	lhz r3, 0x60(r3)
/* 800362E4 00031F44  4E 80 00 20 */	blr
lbl_800362E8:
/* 800362E8 00031F48  88 63 00 62 */	lbz r3, 0x62(r3)
/* 800362EC 00031F4C  4E 80 00 20 */	blr
lbl_800362F0:
/* 800362F0 00031F50  88 63 00 63 */	lbz r3, 0x63(r3)
/* 800362F4 00031F54  4E 80 00 20 */	blr
lbl_800362F8:
/* 800362F8 00031F58  38 60 00 00 */	li r3, 0
/* 800362FC 00031F5C  4E 80 00 20 */	blr
lbl_80036300:
/* 80036300 00031F60  38 60 00 00 */	li r3, 0
/* 80036304 00031F64  4E 80 00 20 */	blr

.global func_80036308
func_80036308:
/* 80036308 00031F68  2C 04 00 00 */	cmpwi r4, 0
/* 8003630C 00031F6C  4D 80 00 20 */	bltlr
/* 80036310 00031F70  2C 04 00 04 */	cmpwi r4, 4
/* 80036314 00031F74  41 80 00 08 */	blt lbl_8003631C
/* 80036318 00031F78  4E 80 00 20 */	blr
lbl_8003631C:
/* 8003631C 00031F7C  1C 04 00 38 */	mulli r0, r4, 0x38
/* 80036320 00031F80  80 63 09 70 */	lwz r3, 0x970(r3)
/* 80036324 00031F84  28 05 00 19 */	cmplwi r5, 0x19
/* 80036328 00031F88  7C 83 02 14 */	add r4, r3, r0
/* 8003632C 00031F8C  4D 81 00 20 */	bgtlr
/* 80036330 00031F90  3C 60 80 41 */	lis r3, lbl_8040A298@ha
/* 80036334 00031F94  54 A0 10 3A */	slwi r0, r5, 2
/* 80036338 00031F98  38 63 A2 98 */	addi r3, r3, lbl_8040A298@l
/* 8003633C 00031F9C  7C 63 00 2E */	lwzx r3, r3, r0
/* 80036340 00031FA0  7C 69 03 A6 */	mtctr r3
/* 80036344 00031FA4  4E 80 04 20 */	bctr
/* 80036348 00031FA8  98 C4 00 2C */	stb r6, 0x2c(r4)
/* 8003634C 00031FAC  4E 80 00 20 */	blr
/* 80036350 00031FB0  98 C4 00 2D */	stb r6, 0x2d(r4)
/* 80036354 00031FB4  4E 80 00 20 */	blr
/* 80036358 00031FB8  B0 C4 00 2E */	sth r6, 0x2e(r4)
/* 8003635C 00031FBC  4E 80 00 20 */	blr
/* 80036360 00031FC0  B0 C4 00 30 */	sth r6, 0x30(r4)
/* 80036364 00031FC4  4E 80 00 20 */	blr
/* 80036368 00031FC8  B0 C4 00 32 */	sth r6, 0x32(r4)
/* 8003636C 00031FCC  4E 80 00 20 */	blr
/* 80036370 00031FD0  98 C4 00 34 */	stb r6, 0x34(r4)
/* 80036374 00031FD4  4E 80 00 20 */	blr
/* 80036378 00031FD8  98 C4 00 35 */	stb r6, 0x35(r4)
/* 8003637C 00031FDC  4E 80 00 20 */	blr
/* 80036380 00031FE0  98 C4 00 36 */	stb r6, 0x36(r4)
/* 80036384 00031FE4  4E 80 00 20 */	blr
/* 80036388 00031FE8  98 C4 00 37 */	stb r6, 0x37(r4)
/* 8003638C 00031FEC  4E 80 00 20 */	blr
/* 80036390 00031FF0  B0 C4 00 38 */	sth r6, 0x38(r4)
/* 80036394 00031FF4  4E 80 00 20 */	blr
/* 80036398 00031FF8  B0 C4 00 3A */	sth r6, 0x3a(r4)
/* 8003639C 00031FFC  4E 80 00 20 */	blr
/* 800363A0 00032000  B0 C4 00 3C */	sth r6, 0x3c(r4)
/* 800363A4 00032004  4E 80 00 20 */	blr
/* 800363A8 00032008  B0 C4 00 3E */	sth r6, 0x3e(r4)
/* 800363AC 0003200C  4E 80 00 20 */	blr
/* 800363B0 00032010  98 C4 00 40 */	stb r6, 0x40(r4)
/* 800363B4 00032014  4E 80 00 20 */	blr
/* 800363B8 00032018  98 C4 00 41 */	stb r6, 0x41(r4)
/* 800363BC 0003201C  4E 80 00 20 */	blr
/* 800363C0 00032020  98 C4 00 42 */	stb r6, 0x42(r4)
/* 800363C4 00032024  4E 80 00 20 */	blr
/* 800363C8 00032028  98 C4 00 43 */	stb r6, 0x43(r4)
/* 800363CC 0003202C  4E 80 00 20 */	blr
/* 800363D0 00032030  98 C4 00 44 */	stb r6, 0x44(r4)
/* 800363D4 00032034  4E 80 00 20 */	blr
/* 800363D8 00032038  98 C4 00 45 */	stb r6, 0x45(r4)
/* 800363DC 0003203C  4E 80 00 20 */	blr
/* 800363E0 00032040  98 C4 00 46 */	stb r6, 0x46(r4)
/* 800363E4 00032044  4E 80 00 20 */	blr
/* 800363E8 00032048  98 C4 00 47 */	stb r6, 0x47(r4)
/* 800363EC 0003204C  4E 80 00 20 */	blr
/* 800363F0 00032050  B0 C4 00 48 */	sth r6, 0x48(r4)
/* 800363F4 00032054  4E 80 00 20 */	blr
/* 800363F8 00032058  B0 C4 00 4A */	sth r6, 0x4a(r4)
/* 800363FC 0003205C  4E 80 00 20 */	blr
/* 80036400 00032060  B0 C4 00 54 */	sth r6, 0x54(r4)
/* 80036404 00032064  4E 80 00 20 */	blr
/* 80036408 00032068  B0 C4 00 56 */	sth r6, 0x56(r4)
/* 8003640C 0003206C  4E 80 00 20 */	blr
/* 80036410 00032070  B0 C4 00 60 */	sth r6, 0x60(r4)
/* 80036414 00032074  4E 80 00 20 */	blr

.global func_80036418
func_80036418:
/* 80036418 00032078  2C 04 00 00 */	cmpwi r4, 0
/* 8003641C 0003207C  41 80 00 14 */	blt lbl_80036430
/* 80036420 00032080  80 C3 09 70 */	lwz r6, 0x970(r3)
/* 80036424 00032084  88 06 00 25 */	lbz r0, 0x25(r6)
/* 80036428 00032088  7C 04 00 00 */	cmpw r4, r0
/* 8003642C 0003208C  41 80 00 0C */	blt lbl_80036438
lbl_80036430:
/* 80036430 00032090  38 60 00 00 */	li r3, 0
/* 80036434 00032094  4E 80 00 20 */	blr
lbl_80036438:
/* 80036438 00032098  1C 04 00 1C */	mulli r0, r4, 0x1c
/* 8003643C 0003209C  80 63 09 6C */	lwz r3, 0x96c(r3)
/* 80036440 000320A0  28 05 00 09 */	cmplwi r5, 9
/* 80036444 000320A4  7C 83 02 14 */	add r4, r3, r0
/* 80036448 000320A8  41 81 00 6C */	bgt lbl_800364B4
/* 8003644C 000320AC  3C 60 80 41 */	lis r3, lbl_8040A300@ha
/* 80036450 000320B0  54 A0 10 3A */	slwi r0, r5, 2
/* 80036454 000320B4  38 63 A3 00 */	addi r3, r3, lbl_8040A300@l
/* 80036458 000320B8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8003645C 000320BC  7C 69 03 A6 */	mtctr r3
/* 80036460 000320C0  4E 80 04 20 */	bctr
/* 80036464 000320C4  88 64 00 00 */	lbz r3, 0(r4)
/* 80036468 000320C8  4E 80 00 20 */	blr
/* 8003646C 000320CC  88 64 00 01 */	lbz r3, 1(r4)
/* 80036470 000320D0  4E 80 00 20 */	blr
/* 80036474 000320D4  88 64 00 02 */	lbz r3, 2(r4)
/* 80036478 000320D8  4E 80 00 20 */	blr
/* 8003647C 000320DC  88 64 00 03 */	lbz r3, 3(r4)
/* 80036480 000320E0  4E 80 00 20 */	blr
/* 80036484 000320E4  A0 64 00 04 */	lhz r3, 4(r4)
/* 80036488 000320E8  4E 80 00 20 */	blr
/* 8003648C 000320EC  A0 64 00 06 */	lhz r3, 6(r4)
/* 80036490 000320F0  4E 80 00 20 */	blr
/* 80036494 000320F4  A0 64 00 08 */	lhz r3, 8(r4)
/* 80036498 000320F8  4E 80 00 20 */	blr
/* 8003649C 000320FC  A0 64 00 14 */	lhz r3, 0x14(r4)
/* 800364A0 00032100  4E 80 00 20 */	blr
/* 800364A4 00032104  A0 64 00 16 */	lhz r3, 0x16(r4)
/* 800364A8 00032108  4E 80 00 20 */	blr
/* 800364AC 0003210C  A0 64 00 18 */	lhz r3, 0x18(r4)
/* 800364B0 00032110  4E 80 00 20 */	blr
lbl_800364B4:
/* 800364B4 00032114  38 60 00 00 */	li r3, 0
/* 800364B8 00032118  4E 80 00 20 */	blr

.global func_800364BC
func_800364BC:
/* 800364BC 0003211C  2C 04 00 00 */	cmpwi r4, 0
/* 800364C0 00032120  4D 80 00 20 */	bltlr
/* 800364C4 00032124  80 E3 09 70 */	lwz r7, 0x970(r3)
/* 800364C8 00032128  88 07 00 25 */	lbz r0, 0x25(r7)
/* 800364CC 0003212C  7C 04 00 00 */	cmpw r4, r0
/* 800364D0 00032130  41 80 00 08 */	blt lbl_800364D8
/* 800364D4 00032134  4E 80 00 20 */	blr
lbl_800364D8:
/* 800364D8 00032138  1C 04 00 1C */	mulli r0, r4, 0x1c
/* 800364DC 0003213C  80 63 09 6C */	lwz r3, 0x96c(r3)
/* 800364E0 00032140  28 05 00 09 */	cmplwi r5, 9
/* 800364E4 00032144  7C 83 02 14 */	add r4, r3, r0
/* 800364E8 00032148  4D 81 00 20 */	bgtlr
/* 800364EC 0003214C  3C 60 80 41 */	lis r3, lbl_8040A328@ha
/* 800364F0 00032150  54 A0 10 3A */	slwi r0, r5, 2
/* 800364F4 00032154  38 63 A3 28 */	addi r3, r3, lbl_8040A328@l
/* 800364F8 00032158  7C 63 00 2E */	lwzx r3, r3, r0
/* 800364FC 0003215C  7C 69 03 A6 */	mtctr r3
/* 80036500 00032160  4E 80 04 20 */	bctr
/* 80036504 00032164  98 C4 00 00 */	stb r6, 0(r4)
/* 80036508 00032168  4E 80 00 20 */	blr
/* 8003650C 0003216C  98 C4 00 01 */	stb r6, 1(r4)
/* 80036510 00032170  4E 80 00 20 */	blr
/* 80036514 00032174  98 C4 00 02 */	stb r6, 2(r4)
/* 80036518 00032178  4E 80 00 20 */	blr
/* 8003651C 0003217C  98 C4 00 03 */	stb r6, 3(r4)
/* 80036520 00032180  4E 80 00 20 */	blr
/* 80036524 00032184  B0 C4 00 04 */	sth r6, 4(r4)
/* 80036528 00032188  4E 80 00 20 */	blr
/* 8003652C 0003218C  B0 C4 00 06 */	sth r6, 6(r4)
/* 80036530 00032190  4E 80 00 20 */	blr
/* 80036534 00032194  B0 C4 00 08 */	sth r6, 8(r4)
/* 80036538 00032198  4E 80 00 20 */	blr
/* 8003653C 0003219C  B0 C4 00 14 */	sth r6, 0x14(r4)
/* 80036540 000321A0  4E 80 00 20 */	blr
/* 80036544 000321A4  B0 C4 00 16 */	sth r6, 0x16(r4)
/* 80036548 000321A8  4E 80 00 20 */	blr
/* 8003654C 000321AC  B0 C4 00 18 */	sth r6, 0x18(r4)
/* 80036550 000321B0  4E 80 00 20 */	blr

.global func_80036554
func_80036554:
/* 80036554 000321B4  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 80036558 000321B8  7C 08 02 A6 */	mflr r0
/* 8003655C 000321BC  90 01 00 94 */	stw r0, 0x94(r1)
/* 80036560 000321C0  39 61 00 90 */	addi r11, r1, 0x90
/* 80036564 000321C4  48 19 0B 91 */	bl __save_gpr
/* 80036568 000321C8  90 A1 00 08 */	stw r5, 8(r1)
/* 8003656C 000321CC  7C 70 1B 78 */	mr r16, r3
/* 80036570 000321D0  7C 8F 23 78 */	mr r15, r4
/* 80036574 000321D4  7C CE 33 78 */	mr r14, r6
/* 80036578 000321D8  38 61 00 0C */	addi r3, r1, 0xc
/* 8003657C 000321DC  4B FF F7 35 */	bl func_80035CB0
/* 80036580 000321E0  48 00 F0 11 */	bl func_80045590
/* 80036584 000321E4  2C 03 00 00 */	cmpwi r3, 0
/* 80036588 000321E8  40 82 00 0C */	bne lbl_80036594
/* 8003658C 000321EC  38 60 00 00 */	li r3, 0
/* 80036590 000321F0  48 00 02 9C */	b lbl_8003682C
lbl_80036594:
/* 80036594 000321F4  7D E4 7B 78 */	mr r4, r15
/* 80036598 000321F8  38 A0 00 00 */	li r5, 0
/* 8003659C 000321FC  48 00 F5 65 */	bl func_80045B00
/* 800365A0 00032200  2C 0E 00 00 */	cmpwi r14, 0
/* 800365A4 00032204  41 82 00 F0 */	beq lbl_80036694
/* 800365A8 00032208  1C 0F 00 34 */	mulli r0, r15, 0x34
/* 800365AC 0003220C  7C 90 02 14 */	add r4, r16, r0
/* 800365B0 00032210  A1 E4 04 10 */	lhz r15, 0x410(r4)
/* 800365B4 00032214  A2 04 04 12 */	lhz r16, 0x412(r4)
/* 800365B8 00032218  8A 24 04 14 */	lbz r17, 0x414(r4)
/* 800365BC 0003221C  8A 44 04 15 */	lbz r18, 0x415(r4)
/* 800365C0 00032220  8A 64 04 16 */	lbz r19, 0x416(r4)
/* 800365C4 00032224  8A 84 04 17 */	lbz r20, 0x417(r4)
/* 800365C8 00032228  8A A4 04 18 */	lbz r21, 0x418(r4)
/* 800365CC 0003222C  8A C4 04 19 */	lbz r22, 0x419(r4)
/* 800365D0 00032230  A2 E4 04 1A */	lhz r23, 0x41a(r4)
/* 800365D4 00032234  83 04 04 1C */	lwz r24, 0x41c(r4)
/* 800365D8 00032238  8B 24 04 20 */	lbz r25, 0x420(r4)
/* 800365DC 0003223C  8B 44 04 21 */	lbz r26, 0x421(r4)
/* 800365E0 00032240  A3 64 04 22 */	lhz r27, 0x422(r4)
/* 800365E4 00032244  A3 84 04 24 */	lhz r28, 0x424(r4)
/* 800365E8 00032248  A3 A4 04 26 */	lhz r29, 0x426(r4)
/* 800365EC 0003224C  A3 C4 04 28 */	lhz r30, 0x428(r4)
/* 800365F0 00032250  A3 E4 04 2A */	lhz r31, 0x42a(r4)
/* 800365F4 00032254  A1 84 04 2C */	lhz r12, 0x42c(r4)
/* 800365F8 00032258  A1 64 04 2E */	lhz r11, 0x42e(r4)
/* 800365FC 0003225C  A1 44 04 30 */	lhz r10, 0x430(r4)
/* 80036600 00032260  A1 24 04 32 */	lhz r9, 0x432(r4)
/* 80036604 00032264  A1 04 04 34 */	lhz r8, 0x434(r4)
/* 80036608 00032268  A0 E4 04 36 */	lhz r7, 0x436(r4)
/* 8003660C 0003226C  A0 C4 04 38 */	lhz r6, 0x438(r4)
/* 80036610 00032270  A0 A4 04 3A */	lhz r5, 0x43a(r4)
/* 80036614 00032274  A0 04 04 3C */	lhz r0, 0x43c(r4)
/* 80036618 00032278  A1 C4 04 3E */	lhz r14, 0x43e(r4)
/* 8003661C 0003227C  A0 84 04 40 */	lhz r4, 0x440(r4)
/* 80036620 00032280  B1 E1 00 0C */	sth r15, 0xc(r1)
/* 80036624 00032284  B2 01 00 0E */	sth r16, 0xe(r1)
/* 80036628 00032288  9A 21 00 10 */	stb r17, 0x10(r1)
/* 8003662C 0003228C  9A 41 00 11 */	stb r18, 0x11(r1)
/* 80036630 00032290  9A 61 00 12 */	stb r19, 0x12(r1)
/* 80036634 00032294  9A 81 00 13 */	stb r20, 0x13(r1)
/* 80036638 00032298  9A A1 00 14 */	stb r21, 0x14(r1)
/* 8003663C 0003229C  9A C1 00 15 */	stb r22, 0x15(r1)
/* 80036640 000322A0  B2 E1 00 16 */	sth r23, 0x16(r1)
/* 80036644 000322A4  93 01 00 18 */	stw r24, 0x18(r1)
/* 80036648 000322A8  9B 21 00 1C */	stb r25, 0x1c(r1)
/* 8003664C 000322AC  9B 41 00 1D */	stb r26, 0x1d(r1)
/* 80036650 000322B0  B3 61 00 1E */	sth r27, 0x1e(r1)
/* 80036654 000322B4  B3 81 00 20 */	sth r28, 0x20(r1)
/* 80036658 000322B8  B3 A1 00 22 */	sth r29, 0x22(r1)
/* 8003665C 000322BC  B3 C1 00 24 */	sth r30, 0x24(r1)
/* 80036660 000322C0  B3 E1 00 26 */	sth r31, 0x26(r1)
/* 80036664 000322C4  B1 81 00 28 */	sth r12, 0x28(r1)
/* 80036668 000322C8  B1 61 00 2A */	sth r11, 0x2a(r1)
/* 8003666C 000322CC  B1 41 00 2C */	sth r10, 0x2c(r1)
/* 80036670 000322D0  B1 21 00 2E */	sth r9, 0x2e(r1)
/* 80036674 000322D4  B1 01 00 30 */	sth r8, 0x30(r1)
/* 80036678 000322D8  B0 E1 00 32 */	sth r7, 0x32(r1)
/* 8003667C 000322DC  B0 C1 00 34 */	sth r6, 0x34(r1)
/* 80036680 000322E0  B0 A1 00 36 */	sth r5, 0x36(r1)
/* 80036684 000322E4  B0 01 00 38 */	sth r0, 0x38(r1)
/* 80036688 000322E8  B1 C1 00 3A */	sth r14, 0x3a(r1)
/* 8003668C 000322EC  B0 81 00 3C */	sth r4, 0x3c(r1)
/* 80036690 000322F0  48 00 00 EC */	b lbl_8003677C
lbl_80036694:
/* 80036694 000322F4  1C 0F 00 34 */	mulli r0, r15, 0x34
/* 80036698 000322F8  7C 90 02 14 */	add r4, r16, r0
/* 8003669C 000322FC  A3 C4 03 40 */	lhz r30, 0x340(r4)
/* 800366A0 00032300  A3 A4 03 42 */	lhz r29, 0x342(r4)
/* 800366A4 00032304  8B 84 03 44 */	lbz r28, 0x344(r4)
/* 800366A8 00032308  8B 64 03 45 */	lbz r27, 0x345(r4)
/* 800366AC 0003230C  8B 44 03 46 */	lbz r26, 0x346(r4)
/* 800366B0 00032310  8B 24 03 47 */	lbz r25, 0x347(r4)
/* 800366B4 00032314  8B 04 03 48 */	lbz r24, 0x348(r4)
/* 800366B8 00032318  8A E4 03 49 */	lbz r23, 0x349(r4)
/* 800366BC 0003231C  A2 C4 03 4A */	lhz r22, 0x34a(r4)
/* 800366C0 00032320  82 A4 03 4C */	lwz r21, 0x34c(r4)
/* 800366C4 00032324  8A 84 03 50 */	lbz r20, 0x350(r4)
/* 800366C8 00032328  8A 64 03 51 */	lbz r19, 0x351(r4)
/* 800366CC 0003232C  A2 44 03 52 */	lhz r18, 0x352(r4)
/* 800366D0 00032330  A2 24 03 54 */	lhz r17, 0x354(r4)
/* 800366D4 00032334  A2 04 03 56 */	lhz r16, 0x356(r4)
/* 800366D8 00032338  A1 E4 03 58 */	lhz r15, 0x358(r4)
/* 800366DC 0003233C  A1 C4 03 5A */	lhz r14, 0x35a(r4)
/* 800366E0 00032340  A1 84 03 5C */	lhz r12, 0x35c(r4)
/* 800366E4 00032344  A1 64 03 5E */	lhz r11, 0x35e(r4)
/* 800366E8 00032348  A1 44 03 60 */	lhz r10, 0x360(r4)
/* 800366EC 0003234C  A1 24 03 62 */	lhz r9, 0x362(r4)
/* 800366F0 00032350  A1 04 03 64 */	lhz r8, 0x364(r4)
/* 800366F4 00032354  A0 E4 03 66 */	lhz r7, 0x366(r4)
/* 800366F8 00032358  A0 C4 03 68 */	lhz r6, 0x368(r4)
/* 800366FC 0003235C  A0 A4 03 6A */	lhz r5, 0x36a(r4)
/* 80036700 00032360  A0 04 03 6C */	lhz r0, 0x36c(r4)
/* 80036704 00032364  A3 E4 03 6E */	lhz r31, 0x36e(r4)
/* 80036708 00032368  A0 84 03 70 */	lhz r4, 0x370(r4)
/* 8003670C 0003236C  B3 C1 00 0C */	sth r30, 0xc(r1)
/* 80036710 00032370  B3 A1 00 0E */	sth r29, 0xe(r1)
/* 80036714 00032374  9B 81 00 10 */	stb r28, 0x10(r1)
/* 80036718 00032378  9B 61 00 11 */	stb r27, 0x11(r1)
/* 8003671C 0003237C  9B 41 00 12 */	stb r26, 0x12(r1)
/* 80036720 00032380  9B 21 00 13 */	stb r25, 0x13(r1)
/* 80036724 00032384  9B 01 00 14 */	stb r24, 0x14(r1)
/* 80036728 00032388  9A E1 00 15 */	stb r23, 0x15(r1)
/* 8003672C 0003238C  B2 C1 00 16 */	sth r22, 0x16(r1)
/* 80036730 00032390  92 A1 00 18 */	stw r21, 0x18(r1)
/* 80036734 00032394  9A 81 00 1C */	stb r20, 0x1c(r1)
/* 80036738 00032398  9A 61 00 1D */	stb r19, 0x1d(r1)
/* 8003673C 0003239C  B2 41 00 1E */	sth r18, 0x1e(r1)
/* 80036740 000323A0  B2 21 00 20 */	sth r17, 0x20(r1)
/* 80036744 000323A4  B2 01 00 22 */	sth r16, 0x22(r1)
/* 80036748 000323A8  B1 E1 00 24 */	sth r15, 0x24(r1)
/* 8003674C 000323AC  B1 C1 00 26 */	sth r14, 0x26(r1)
/* 80036750 000323B0  B1 81 00 28 */	sth r12, 0x28(r1)
/* 80036754 000323B4  B1 61 00 2A */	sth r11, 0x2a(r1)
/* 80036758 000323B8  B1 41 00 2C */	sth r10, 0x2c(r1)
/* 8003675C 000323BC  B1 21 00 2E */	sth r9, 0x2e(r1)
/* 80036760 000323C0  B1 01 00 30 */	sth r8, 0x30(r1)
/* 80036764 000323C4  B0 E1 00 32 */	sth r7, 0x32(r1)
/* 80036768 000323C8  B0 C1 00 34 */	sth r6, 0x34(r1)
/* 8003676C 000323CC  B0 A1 00 36 */	sth r5, 0x36(r1)
/* 80036770 000323D0  B0 01 00 38 */	sth r0, 0x38(r1)
/* 80036774 000323D4  B3 E1 00 3A */	sth r31, 0x3a(r1)
/* 80036778 000323D8  B0 81 00 3C */	sth r4, 0x3c(r1)
lbl_8003677C:
/* 8003677C 000323DC  80 01 00 08 */	lwz r0, 8(r1)
/* 80036780 000323E0  28 00 00 15 */	cmplwi r0, 0x15
/* 80036784 000323E4  41 81 00 A4 */	bgt lbl_80036828
/* 80036788 000323E8  3C 80 80 41 */	lis r4, lbl_8040A350@ha
/* 8003678C 000323EC  54 00 10 3A */	slwi r0, r0, 2
/* 80036790 000323F0  38 84 A3 50 */	addi r4, r4, lbl_8040A350@l
/* 80036794 000323F4  7C 84 00 2E */	lwzx r4, r4, r0
/* 80036798 000323F8  7C 89 03 A6 */	mtctr r4
/* 8003679C 000323FC  4E 80 04 20 */	bctr
/* 800367A0 00032400  A0 61 00 0C */	lhz r3, 0xc(r1)
/* 800367A4 00032404  48 00 00 88 */	b lbl_8003682C
/* 800367A8 00032408  88 61 00 11 */	lbz r3, 0x11(r1)
/* 800367AC 0003240C  48 00 00 80 */	b lbl_8003682C
/* 800367B0 00032410  88 61 00 10 */	lbz r3, 0x10(r1)
/* 800367B4 00032414  48 00 00 78 */	b lbl_8003682C
/* 800367B8 00032418  A0 61 00 0E */	lhz r3, 0xe(r1)
/* 800367BC 0003241C  48 00 00 70 */	b lbl_8003682C
/* 800367C0 00032420  48 00 00 6C */	b lbl_8003682C
/* 800367C4 00032424  80 61 00 18 */	lwz r3, 0x18(r1)
/* 800367C8 00032428  48 00 00 64 */	b lbl_8003682C
/* 800367CC 0003242C  88 61 00 14 */	lbz r3, 0x14(r1)
/* 800367D0 00032430  48 00 00 5C */	b lbl_8003682C
/* 800367D4 00032434  A0 01 00 0C */	lhz r0, 0xc(r1)
/* 800367D8 00032438  2C 00 00 00 */	cmpwi r0, 0
/* 800367DC 0003243C  41 82 00 24 */	beq lbl_80036800
/* 800367E0 00032440  88 01 00 12 */	lbz r0, 0x12(r1)
/* 800367E4 00032444  2C 00 00 00 */	cmpwi r0, 0
/* 800367E8 00032448  40 82 00 18 */	bne lbl_80036800
/* 800367EC 0003244C  2C 03 00 00 */	cmpwi r3, 0
/* 800367F0 00032450  41 82 00 10 */	beq lbl_80036800
/* 800367F4 00032454  80 03 00 00 */	lwz r0, 0(r3)
/* 800367F8 00032458  54 00 01 CF */	rlwinm. r0, r0, 0, 7, 7
/* 800367FC 0003245C  41 82 00 0C */	beq lbl_80036808
lbl_80036800:
/* 80036800 00032460  38 60 00 00 */	li r3, 0
/* 80036804 00032464  48 00 00 28 */	b lbl_8003682C
lbl_80036808:
/* 80036808 00032468  38 60 00 01 */	li r3, 1
/* 8003680C 0003246C  48 00 00 20 */	b lbl_8003682C
/* 80036810 00032470  88 61 00 12 */	lbz r3, 0x12(r1)
/* 80036814 00032474  48 00 00 18 */	b lbl_8003682C
/* 80036818 00032478  A0 61 00 16 */	lhz r3, 0x16(r1)
/* 8003681C 0003247C  48 00 00 10 */	b lbl_8003682C
/* 80036820 00032480  88 61 00 15 */	lbz r3, 0x15(r1)
/* 80036824 00032484  48 00 00 08 */	b lbl_8003682C
lbl_80036828:
/* 80036828 00032488  38 60 00 00 */	li r3, 0
lbl_8003682C:
/* 8003682C 0003248C  39 61 00 90 */	addi r11, r1, 0x90
/* 80036830 00032490  48 19 09 11 */	bl __restore_gpr
/* 80036834 00032494  80 01 00 94 */	lwz r0, 0x94(r1)
/* 80036838 00032498  7C 08 03 A6 */	mtlr r0
/* 8003683C 0003249C  38 21 00 90 */	addi r1, r1, 0x90
/* 80036840 000324A0  4E 80 00 20 */	blr

.global func_80036844
func_80036844:
/* 80036844 000324A4  38 60 00 00 */	li r3, 0
/* 80036848 000324A8  4E 80 00 20 */	blr

.global func_8003684C
func_8003684C:
/* 8003684C 000324AC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80036850 000324B0  7C 08 02 A6 */	mflr r0
/* 80036854 000324B4  C0 02 82 18 */	lfs f0, lbl_80640818-_SDA2_BASE_(r2)
/* 80036858 000324B8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003685C 000324BC  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80036860 000324C0  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80036864 000324C4  7C BE 2B 78 */	mr r30, r5
/* 80036868 000324C8  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8003686C 000324CC  7C 9D 23 78 */	mr r29, r4
/* 80036870 000324D0  93 81 00 20 */	stw r28, 0x20(r1)
/* 80036874 000324D4  7C 7C 1B 78 */	mr r28, r3
/* 80036878 000324D8  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003687C 000324DC  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80036880 000324E0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80036884 000324E4  48 00 ED 0D */	bl func_80045590
/* 80036888 000324E8  7C 7F 1B 78 */	mr r31, r3
/* 8003688C 000324EC  38 80 00 00 */	li r4, 0
/* 80036890 000324F0  48 00 F4 6D */	bl func_80045CFC
/* 80036894 000324F4  57 80 06 31 */	rlwinm. r0, r28, 0, 0x18, 0x18
/* 80036898 000324F8  40 82 00 6C */	bne lbl_80036904
/* 8003689C 000324FC  7F E3 FB 78 */	mr r3, r31
/* 800368A0 00032500  7F 84 E3 78 */	mr r4, r28
/* 800368A4 00032504  38 A1 00 14 */	addi r5, r1, 0x14
/* 800368A8 00032508  38 C1 00 0C */	addi r6, r1, 0xc
/* 800368AC 0003250C  38 E0 00 01 */	li r7, 1
/* 800368B0 00032510  48 00 F3 69 */	bl func_80045C18
/* 800368B4 00032514  2C 03 00 00 */	cmpwi r3, 0
/* 800368B8 00032518  41 82 00 B0 */	beq lbl_80036968
/* 800368BC 0003251C  2C 1D 00 00 */	cmpwi r29, 0
/* 800368C0 00032520  41 82 00 1C */	beq lbl_800368DC
/* 800368C4 00032524  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 800368C8 00032528  D0 1D 00 00 */	stfs f0, 0(r29)
/* 800368CC 0003252C  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 800368D0 00032530  D0 1D 00 04 */	stfs f0, 4(r29)
/* 800368D4 00032534  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 800368D8 00032538  D0 1D 00 08 */	stfs f0, 8(r29)
lbl_800368DC:
/* 800368DC 0003253C  2C 1E 00 00 */	cmpwi r30, 0
/* 800368E0 00032540  41 82 00 1C */	beq lbl_800368FC
/* 800368E4 00032544  C0 01 00 08 */	lfs f0, 8(r1)
/* 800368E8 00032548  D0 1E 00 00 */	stfs f0, 0(r30)
/* 800368EC 0003254C  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 800368F0 00032550  D0 1E 00 04 */	stfs f0, 4(r30)
/* 800368F4 00032554  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 800368F8 00032558  D0 1E 00 08 */	stfs f0, 8(r30)
lbl_800368FC:
/* 800368FC 0003255C  38 60 00 00 */	li r3, 0
/* 80036900 00032560  48 00 00 6C */	b lbl_8003696C
lbl_80036904:
/* 80036904 00032564  7F E3 FB 78 */	mr r3, r31
/* 80036908 00032568  57 84 07 BE */	clrlwi r4, r28, 0x1e
/* 8003690C 0003256C  38 A1 00 14 */	addi r5, r1, 0x14
/* 80036910 00032570  38 C1 00 0C */	addi r6, r1, 0xc
/* 80036914 00032574  48 00 F2 75 */	bl func_80045B88
/* 80036918 00032578  2C 03 00 00 */	cmpwi r3, 0
/* 8003691C 0003257C  41 82 00 4C */	beq lbl_80036968
/* 80036920 00032580  2C 1D 00 00 */	cmpwi r29, 0
/* 80036924 00032584  41 82 00 1C */	beq lbl_80036940
/* 80036928 00032588  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 8003692C 0003258C  D0 1D 00 00 */	stfs f0, 0(r29)
/* 80036930 00032590  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 80036934 00032594  D0 1D 00 04 */	stfs f0, 4(r29)
/* 80036938 00032598  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8003693C 0003259C  D0 1D 00 08 */	stfs f0, 8(r29)
lbl_80036940:
/* 80036940 000325A0  2C 1E 00 00 */	cmpwi r30, 0
/* 80036944 000325A4  41 82 00 1C */	beq lbl_80036960
/* 80036948 000325A8  C0 01 00 08 */	lfs f0, 8(r1)
/* 8003694C 000325AC  D0 1E 00 00 */	stfs f0, 0(r30)
/* 80036950 000325B0  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 80036954 000325B4  D0 1E 00 04 */	stfs f0, 4(r30)
/* 80036958 000325B8  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8003695C 000325BC  D0 1E 00 08 */	stfs f0, 8(r30)
lbl_80036960:
/* 80036960 000325C0  38 60 00 00 */	li r3, 0
/* 80036964 000325C4  48 00 00 08 */	b lbl_8003696C
lbl_80036968:
/* 80036968 000325C8  38 60 00 00 */	li r3, 0
lbl_8003696C:
/* 8003696C 000325CC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80036970 000325D0  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80036974 000325D4  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80036978 000325D8  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8003697C 000325DC  83 81 00 20 */	lwz r28, 0x20(r1)
/* 80036980 000325E0  7C 08 03 A6 */	mtlr r0
/* 80036984 000325E4  38 21 00 30 */	addi r1, r1, 0x30
/* 80036988 000325E8  4E 80 00 20 */	blr

.global func_8003698C
func_8003698C:
/* 8003698C 000325EC  2C 04 00 80 */	cmpwi r4, 0x80
/* 80036990 000325F0  41 80 00 0C */	blt lbl_8003699C
/* 80036994 000325F4  2C 04 00 84 */	cmpwi r4, 0x84
/* 80036998 000325F8  40 81 00 14 */	ble lbl_800369AC
lbl_8003699C:
/* 8003699C 000325FC  2C 04 00 00 */	cmpwi r4, 0
/* 800369A0 00032600  41 80 00 1C */	blt lbl_800369BC
/* 800369A4 00032604  2C 04 00 04 */	cmpwi r4, 4
/* 800369A8 00032608  41 81 00 14 */	bgt lbl_800369BC
lbl_800369AC:
/* 800369AC 0003260C  54 80 17 3A */	rlwinm r0, r4, 2, 0x1c, 0x1d
/* 800369B0 00032610  7C 63 02 14 */	add r3, r3, r0
/* 800369B4 00032614  80 63 00 18 */	lwz r3, 0x18(r3)
/* 800369B8 00032618  4E 80 00 20 */	blr
lbl_800369BC:
/* 800369BC 0003261C  38 60 00 00 */	li r3, 0
/* 800369C0 00032620  4E 80 00 20 */	blr

.global func_800369C4
func_800369C4:
/* 800369C4 00032624  2C 04 00 80 */	cmpwi r4, 0x80
/* 800369C8 00032628  41 80 00 0C */	blt lbl_800369D4
/* 800369CC 0003262C  2C 04 00 84 */	cmpwi r4, 0x84
/* 800369D0 00032630  40 81 00 14 */	ble lbl_800369E4
lbl_800369D4:
/* 800369D4 00032634  2C 04 00 00 */	cmpwi r4, 0
/* 800369D8 00032638  4D 80 00 20 */	bltlr
/* 800369DC 0003263C  2C 04 00 04 */	cmpwi r4, 4
/* 800369E0 00032640  4D 81 00 20 */	bgtlr
lbl_800369E4:
/* 800369E4 00032644  54 80 17 3A */	rlwinm r0, r4, 2, 0x1c, 0x1d
/* 800369E8 00032648  7C 63 02 14 */	add r3, r3, r0
/* 800369EC 0003264C  90 A3 00 18 */	stw r5, 0x18(r3)
/* 800369F0 00032650  4E 80 00 20 */	blr

.global func_800369F4
func_800369F4:
/* 800369F4 00032654  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800369F8 00032658  7C 08 02 A6 */	mflr r0
/* 800369FC 0003265C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80036A00 00032660  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80036A04 00032664  7C DF 33 78 */	mr r31, r6
/* 80036A08 00032668  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80036A0C 0003266C  7C BE 2B 78 */	mr r30, r5
/* 80036A10 00032670  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80036A14 00032674  7C 9D 23 78 */	mr r29, r4
/* 80036A18 00032678  93 81 00 10 */	stw r28, 0x10(r1)
/* 80036A1C 0003267C  7C 7C 1B 78 */	mr r28, r3
/* 80036A20 00032680  48 00 EB 71 */	bl func_80045590
/* 80036A24 00032684  2C 03 00 00 */	cmpwi r3, 0
/* 80036A28 00032688  41 82 00 C4 */	beq lbl_80036AEC
/* 80036A2C 0003268C  7F A4 EB 78 */	mr r4, r29
/* 80036A30 00032690  38 A0 00 00 */	li r5, 0
/* 80036A34 00032694  48 00 F0 CD */	bl func_80045B00
/* 80036A38 00032698  28 1E 00 11 */	cmplwi r30, 0x11
/* 80036A3C 0003269C  41 81 00 B0 */	bgt lbl_80036AEC
/* 80036A40 000326A0  3C 80 80 41 */	lis r4, lbl_8040A3A8@ha
/* 80036A44 000326A4  57 C0 10 3A */	slwi r0, r30, 2
/* 80036A48 000326A8  38 84 A3 A8 */	addi r4, r4, lbl_8040A3A8@l
/* 80036A4C 000326AC  7C 84 00 2E */	lwzx r4, r4, r0
/* 80036A50 000326B0  7C 89 03 A6 */	mtctr r4
/* 80036A54 000326B4  4E 80 04 20 */	bctr
/* 80036A58 000326B8  1C 1D 00 34 */	mulli r0, r29, 0x34
/* 80036A5C 000326BC  7C 7C 02 14 */	add r3, r28, r0
/* 80036A60 000326C0  B3 E3 03 40 */	sth r31, 0x340(r3)
/* 80036A64 000326C4  48 00 00 88 */	b lbl_80036AEC
/* 80036A68 000326C8  1C 1D 00 34 */	mulli r0, r29, 0x34
/* 80036A6C 000326CC  7C 7C 02 14 */	add r3, r28, r0
/* 80036A70 000326D0  9B E3 03 45 */	stb r31, 0x345(r3)
/* 80036A74 000326D4  48 00 00 78 */	b lbl_80036AEC
/* 80036A78 000326D8  1C 1D 00 34 */	mulli r0, r29, 0x34
/* 80036A7C 000326DC  7C 7F 00 D0 */	neg r3, r31
/* 80036A80 000326E0  7C 63 FB 78 */	or r3, r3, r31
/* 80036A84 000326E4  54 64 0F FE */	srwi r4, r3, 0x1f
/* 80036A88 000326E8  7C 7C 02 14 */	add r3, r28, r0
/* 80036A8C 000326EC  98 83 03 44 */	stb r4, 0x344(r3)
/* 80036A90 000326F0  48 00 00 5C */	b lbl_80036AEC
/* 80036A94 000326F4  1C 1D 00 34 */	mulli r0, r29, 0x34
/* 80036A98 000326F8  7C 7C 02 14 */	add r3, r28, r0
/* 80036A9C 000326FC  B3 E3 03 42 */	sth r31, 0x342(r3)
/* 80036AA0 00032700  48 00 00 4C */	b lbl_80036AEC
/* 80036AA4 00032704  1C 1D 00 34 */	mulli r0, r29, 0x34
/* 80036AA8 00032708  7C 7C 02 14 */	add r3, r28, r0
/* 80036AAC 0003270C  93 E3 03 4C */	stw r31, 0x34c(r3)
/* 80036AB0 00032710  48 00 00 3C */	b lbl_80036AEC
/* 80036AB4 00032714  1C 1D 00 34 */	mulli r0, r29, 0x34
/* 80036AB8 00032718  7F E4 00 34 */	cntlzw r4, r31
/* 80036ABC 0003271C  2C 1F 00 00 */	cmpwi r31, 0
/* 80036AC0 00032720  54 85 D9 7E */	srwi r5, r4, 5
/* 80036AC4 00032724  7C 9C 02 14 */	add r4, r28, r0
/* 80036AC8 00032728  98 A4 03 46 */	stb r5, 0x346(r4)
/* 80036ACC 0003272C  40 82 00 14 */	bne lbl_80036AE0
/* 80036AD0 00032730  80 03 00 00 */	lwz r0, 0(r3)
/* 80036AD4 00032734  64 00 01 00 */	oris r0, r0, 0x100
/* 80036AD8 00032738  90 03 00 00 */	stw r0, 0(r3)
/* 80036ADC 0003273C  48 00 00 10 */	b lbl_80036AEC
lbl_80036AE0:
/* 80036AE0 00032740  80 03 00 00 */	lwz r0, 0(r3)
/* 80036AE4 00032744  54 00 02 0C */	rlwinm r0, r0, 0, 8, 6
/* 80036AE8 00032748  90 03 00 00 */	stw r0, 0(r3)
lbl_80036AEC:
/* 80036AEC 0003274C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80036AF0 00032750  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80036AF4 00032754  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80036AF8 00032758  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80036AFC 0003275C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80036B00 00032760  7C 08 03 A6 */	mtlr r0
/* 80036B04 00032764  38 21 00 20 */	addi r1, r1, 0x20
/* 80036B08 00032768  4E 80 00 20 */	blr

.global func_80036B0C
func_80036B0C:
/* 80036B0C 0003276C  2C 04 00 00 */	cmpwi r4, 0
/* 80036B10 00032770  4D 80 00 20 */	bltlr
/* 80036B14 00032774  2C 04 00 03 */	cmpwi r4, 3
/* 80036B18 00032778  40 81 00 08 */	ble lbl_80036B20
/* 80036B1C 0003277C  4E 80 00 20 */	blr
lbl_80036B20:
/* 80036B20 00032780  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036B24 00032784  A1 25 00 00 */	lhz r9, 0(r5)
/* 80036B28 00032788  A1 05 00 02 */	lhz r8, 2(r5)
/* 80036B2C 0003278C  88 E5 00 04 */	lbz r7, 4(r5)
/* 80036B30 00032790  7C 63 02 14 */	add r3, r3, r0
/* 80036B34 00032794  88 C5 00 05 */	lbz r6, 5(r5)
/* 80036B38 00032798  A0 03 03 40 */	lhz r0, 0x340(r3)
/* 80036B3C 0003279C  88 85 00 06 */	lbz r4, 6(r5)
/* 80036B40 000327A0  B0 03 04 10 */	sth r0, 0x410(r3)
/* 80036B44 000327A4  88 05 00 07 */	lbz r0, 7(r5)
/* 80036B48 000327A8  A1 43 03 42 */	lhz r10, 0x342(r3)
/* 80036B4C 000327AC  B1 43 04 12 */	sth r10, 0x412(r3)
/* 80036B50 000327B0  89 43 03 44 */	lbz r10, 0x344(r3)
/* 80036B54 000327B4  99 43 04 14 */	stb r10, 0x414(r3)
/* 80036B58 000327B8  89 43 03 45 */	lbz r10, 0x345(r3)
/* 80036B5C 000327BC  99 43 04 15 */	stb r10, 0x415(r3)
/* 80036B60 000327C0  89 43 03 46 */	lbz r10, 0x346(r3)
/* 80036B64 000327C4  99 43 04 16 */	stb r10, 0x416(r3)
/* 80036B68 000327C8  89 43 03 47 */	lbz r10, 0x347(r3)
/* 80036B6C 000327CC  99 43 04 17 */	stb r10, 0x417(r3)
/* 80036B70 000327D0  89 43 03 48 */	lbz r10, 0x348(r3)
/* 80036B74 000327D4  99 43 04 18 */	stb r10, 0x418(r3)
/* 80036B78 000327D8  89 43 03 49 */	lbz r10, 0x349(r3)
/* 80036B7C 000327DC  99 43 04 19 */	stb r10, 0x419(r3)
/* 80036B80 000327E0  A1 43 03 4A */	lhz r10, 0x34a(r3)
/* 80036B84 000327E4  B1 43 04 1A */	sth r10, 0x41a(r3)
/* 80036B88 000327E8  81 43 03 4C */	lwz r10, 0x34c(r3)
/* 80036B8C 000327EC  91 43 04 1C */	stw r10, 0x41c(r3)
/* 80036B90 000327F0  89 43 03 50 */	lbz r10, 0x350(r3)
/* 80036B94 000327F4  99 43 04 20 */	stb r10, 0x420(r3)
/* 80036B98 000327F8  89 43 03 51 */	lbz r10, 0x351(r3)
/* 80036B9C 000327FC  99 43 04 21 */	stb r10, 0x421(r3)
/* 80036BA0 00032800  A1 63 03 52 */	lhz r11, 0x352(r3)
/* 80036BA4 00032804  A1 43 03 54 */	lhz r10, 0x354(r3)
/* 80036BA8 00032808  B1 63 04 22 */	sth r11, 0x422(r3)
/* 80036BAC 0003280C  B1 43 04 24 */	sth r10, 0x424(r3)
/* 80036BB0 00032810  A1 63 03 56 */	lhz r11, 0x356(r3)
/* 80036BB4 00032814  A1 43 03 58 */	lhz r10, 0x358(r3)
/* 80036BB8 00032818  B1 63 04 26 */	sth r11, 0x426(r3)
/* 80036BBC 0003281C  B1 43 04 28 */	sth r10, 0x428(r3)
/* 80036BC0 00032820  A1 63 03 5A */	lhz r11, 0x35a(r3)
/* 80036BC4 00032824  A1 43 03 5C */	lhz r10, 0x35c(r3)
/* 80036BC8 00032828  B1 63 04 2A */	sth r11, 0x42a(r3)
/* 80036BCC 0003282C  B1 43 04 2C */	sth r10, 0x42c(r3)
/* 80036BD0 00032830  A1 63 03 5E */	lhz r11, 0x35e(r3)
/* 80036BD4 00032834  A1 43 03 60 */	lhz r10, 0x360(r3)
/* 80036BD8 00032838  B1 63 04 2E */	sth r11, 0x42e(r3)
/* 80036BDC 0003283C  B1 43 04 30 */	sth r10, 0x430(r3)
/* 80036BE0 00032840  A1 63 03 62 */	lhz r11, 0x362(r3)
/* 80036BE4 00032844  A1 43 03 64 */	lhz r10, 0x364(r3)
/* 80036BE8 00032848  B1 63 04 32 */	sth r11, 0x432(r3)
/* 80036BEC 0003284C  B1 43 04 34 */	sth r10, 0x434(r3)
/* 80036BF0 00032850  A1 63 03 66 */	lhz r11, 0x366(r3)
/* 80036BF4 00032854  A1 43 03 68 */	lhz r10, 0x368(r3)
/* 80036BF8 00032858  B1 63 04 36 */	sth r11, 0x436(r3)
/* 80036BFC 0003285C  B1 43 04 38 */	sth r10, 0x438(r3)
/* 80036C00 00032860  A1 63 03 6A */	lhz r11, 0x36a(r3)
/* 80036C04 00032864  A1 43 03 6C */	lhz r10, 0x36c(r3)
/* 80036C08 00032868  B1 63 04 3A */	sth r11, 0x43a(r3)
/* 80036C0C 0003286C  B1 43 04 3C */	sth r10, 0x43c(r3)
/* 80036C10 00032870  A1 63 03 6E */	lhz r11, 0x36e(r3)
/* 80036C14 00032874  A1 43 03 70 */	lhz r10, 0x370(r3)
/* 80036C18 00032878  B1 63 04 3E */	sth r11, 0x43e(r3)
/* 80036C1C 0003287C  B1 43 04 40 */	sth r10, 0x440(r3)
/* 80036C20 00032880  B1 23 03 40 */	sth r9, 0x340(r3)
/* 80036C24 00032884  B1 03 03 42 */	sth r8, 0x342(r3)
/* 80036C28 00032888  98 E3 03 44 */	stb r7, 0x344(r3)
/* 80036C2C 0003288C  98 C3 03 45 */	stb r6, 0x345(r3)
/* 80036C30 00032890  98 83 03 46 */	stb r4, 0x346(r3)
/* 80036C34 00032894  98 03 03 47 */	stb r0, 0x347(r3)
/* 80036C38 00032898  88 85 00 08 */	lbz r4, 8(r5)
/* 80036C3C 0003289C  88 05 00 09 */	lbz r0, 9(r5)
/* 80036C40 000328A0  98 83 03 48 */	stb r4, 0x348(r3)
/* 80036C44 000328A4  A0 85 00 0A */	lhz r4, 0xa(r5)
/* 80036C48 000328A8  98 03 03 49 */	stb r0, 0x349(r3)
/* 80036C4C 000328AC  80 05 00 0C */	lwz r0, 0xc(r5)
/* 80036C50 000328B0  B0 83 03 4A */	sth r4, 0x34a(r3)
/* 80036C54 000328B4  88 85 00 10 */	lbz r4, 0x10(r5)
/* 80036C58 000328B8  90 03 03 4C */	stw r0, 0x34c(r3)
/* 80036C5C 000328BC  88 05 00 11 */	lbz r0, 0x11(r5)
/* 80036C60 000328C0  98 83 03 50 */	stb r4, 0x350(r3)
/* 80036C64 000328C4  A0 85 00 12 */	lhz r4, 0x12(r5)
/* 80036C68 000328C8  98 03 03 51 */	stb r0, 0x351(r3)
/* 80036C6C 000328CC  A0 05 00 14 */	lhz r0, 0x14(r5)
/* 80036C70 000328D0  B0 83 03 52 */	sth r4, 0x352(r3)
/* 80036C74 000328D4  A0 85 00 16 */	lhz r4, 0x16(r5)
/* 80036C78 000328D8  B0 03 03 54 */	sth r0, 0x354(r3)
/* 80036C7C 000328DC  A0 05 00 18 */	lhz r0, 0x18(r5)
/* 80036C80 000328E0  B0 83 03 56 */	sth r4, 0x356(r3)
/* 80036C84 000328E4  A0 85 00 1A */	lhz r4, 0x1a(r5)
/* 80036C88 000328E8  B0 03 03 58 */	sth r0, 0x358(r3)
/* 80036C8C 000328EC  A0 05 00 1C */	lhz r0, 0x1c(r5)
/* 80036C90 000328F0  B0 83 03 5A */	sth r4, 0x35a(r3)
/* 80036C94 000328F4  A0 85 00 1E */	lhz r4, 0x1e(r5)
/* 80036C98 000328F8  B0 03 03 5C */	sth r0, 0x35c(r3)
/* 80036C9C 000328FC  A0 05 00 20 */	lhz r0, 0x20(r5)
/* 80036CA0 00032900  B0 83 03 5E */	sth r4, 0x35e(r3)
/* 80036CA4 00032904  A0 85 00 22 */	lhz r4, 0x22(r5)
/* 80036CA8 00032908  B0 03 03 60 */	sth r0, 0x360(r3)
/* 80036CAC 0003290C  A0 05 00 24 */	lhz r0, 0x24(r5)
/* 80036CB0 00032910  B0 83 03 62 */	sth r4, 0x362(r3)
/* 80036CB4 00032914  A0 85 00 26 */	lhz r4, 0x26(r5)
/* 80036CB8 00032918  B0 03 03 64 */	sth r0, 0x364(r3)
/* 80036CBC 0003291C  A0 05 00 28 */	lhz r0, 0x28(r5)
/* 80036CC0 00032920  B0 83 03 66 */	sth r4, 0x366(r3)
/* 80036CC4 00032924  A0 85 00 2A */	lhz r4, 0x2a(r5)
/* 80036CC8 00032928  B0 03 03 68 */	sth r0, 0x368(r3)
/* 80036CCC 0003292C  A0 05 00 2C */	lhz r0, 0x2c(r5)
/* 80036CD0 00032930  B0 83 03 6A */	sth r4, 0x36a(r3)
/* 80036CD4 00032934  A0 85 00 2E */	lhz r4, 0x2e(r5)
/* 80036CD8 00032938  B0 03 03 6C */	sth r0, 0x36c(r3)
/* 80036CDC 0003293C  A0 05 00 30 */	lhz r0, 0x30(r5)
/* 80036CE0 00032940  B0 83 03 6E */	sth r4, 0x36e(r3)
/* 80036CE4 00032944  B0 03 03 70 */	sth r0, 0x370(r3)
/* 80036CE8 00032948  4E 80 00 20 */	blr

.global func_80036CEC
func_80036CEC:
/* 80036CEC 0003294C  2C 04 00 00 */	cmpwi r4, 0
/* 80036CF0 00032950  4D 80 00 20 */	bltlr
/* 80036CF4 00032954  2C 04 00 03 */	cmpwi r4, 3
/* 80036CF8 00032958  40 81 00 08 */	ble lbl_80036D00
/* 80036CFC 0003295C  4E 80 00 20 */	blr
lbl_80036D00:
/* 80036D00 00032960  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036D04 00032964  38 80 00 01 */	li r4, 1
/* 80036D08 00032968  7C 63 02 14 */	add r3, r3, r0
/* 80036D0C 0003296C  98 83 03 47 */	stb r4, 0x347(r3)
/* 80036D10 00032970  4E 80 00 20 */	blr

.global func_80036D14
func_80036D14:
/* 80036D14 00032974  2C 04 00 00 */	cmpwi r4, 0
/* 80036D18 00032978  41 80 00 0C */	blt lbl_80036D24
/* 80036D1C 0003297C  2C 04 00 03 */	cmpwi r4, 3
/* 80036D20 00032980  40 81 00 0C */	ble lbl_80036D2C
lbl_80036D24:
/* 80036D24 00032984  38 60 00 00 */	li r3, 0
/* 80036D28 00032988  4E 80 00 20 */	blr
lbl_80036D2C:
/* 80036D2C 0003298C  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036D30 00032990  7C 63 02 14 */	add r3, r3, r0
/* 80036D34 00032994  38 63 03 40 */	addi r3, r3, 0x340
/* 80036D38 00032998  4E 80 00 20 */	blr

.global func_80036D3C
func_80036D3C:
/* 80036D3C 0003299C  2C 04 00 00 */	cmpwi r4, 0
/* 80036D40 000329A0  41 80 00 0C */	blt lbl_80036D4C
/* 80036D44 000329A4  2C 04 00 03 */	cmpwi r4, 3
/* 80036D48 000329A8  40 81 00 0C */	ble lbl_80036D54
lbl_80036D4C:
/* 80036D4C 000329AC  38 60 00 00 */	li r3, 0
/* 80036D50 000329B0  4E 80 00 20 */	blr
lbl_80036D54:
/* 80036D54 000329B4  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036D58 000329B8  7C 63 02 14 */	add r3, r3, r0
/* 80036D5C 000329BC  88 03 03 47 */	lbz r0, 0x347(r3)
/* 80036D60 000329C0  2C 00 00 00 */	cmpwi r0, 0
/* 80036D64 000329C4  41 82 00 0C */	beq lbl_80036D70
/* 80036D68 000329C8  38 63 03 40 */	addi r3, r3, 0x340
/* 80036D6C 000329CC  4E 80 00 20 */	blr
lbl_80036D70:
/* 80036D70 000329D0  38 63 04 10 */	addi r3, r3, 0x410
/* 80036D74 000329D4  4E 80 00 20 */	blr

.global func_80036D78
func_80036D78:
/* 80036D78 000329D8  2C 04 00 00 */	cmpwi r4, 0
/* 80036D7C 000329DC  41 80 00 0C */	blt lbl_80036D88
/* 80036D80 000329E0  2C 04 00 03 */	cmpwi r4, 3
/* 80036D84 000329E4  40 81 00 0C */	ble lbl_80036D90
lbl_80036D88:
/* 80036D88 000329E8  38 60 00 00 */	li r3, 0
/* 80036D8C 000329EC  4E 80 00 20 */	blr
lbl_80036D90:
/* 80036D90 000329F0  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036D94 000329F4  7C 63 02 14 */	add r3, r3, r0
/* 80036D98 000329F8  38 63 04 10 */	addi r3, r3, 0x410
/* 80036D9C 000329FC  4E 80 00 20 */	blr

.global func_80036DA0
func_80036DA0:
/* 80036DA0 00032A00  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80036DA4 00032A04  7C 08 02 A6 */	mflr r0
/* 80036DA8 00032A08  2C 04 00 00 */	cmpwi r4, 0
/* 80036DAC 00032A0C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80036DB0 00032A10  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80036DB4 00032A14  7C 9F 23 78 */	mr r31, r4
/* 80036DB8 00032A18  41 80 00 28 */	blt lbl_80036DE0
/* 80036DBC 00032A1C  2C 04 00 03 */	cmpwi r4, 3
/* 80036DC0 00032A20  41 81 00 20 */	bgt lbl_80036DE0
/* 80036DC4 00032A24  38 A0 00 0F */	li r5, 0xf
/* 80036DC8 00032A28  38 C0 00 00 */	li r6, 0
/* 80036DCC 00032A2C  4B FF F7 89 */	bl func_80036554
/* 80036DD0 00032A30  7C 03 00 D0 */	neg r0, r3
/* 80036DD4 00032A34  7C 00 1B 78 */	or r0, r0, r3
/* 80036DD8 00032A38  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80036DDC 00032A3C  48 00 00 7C */	b lbl_80036E58
lbl_80036DE0:
/* 80036DE0 00032A40  2C 04 00 80 */	cmpwi r4, 0x80
/* 80036DE4 00032A44  41 80 00 68 */	blt lbl_80036E4C
/* 80036DE8 00032A48  2C 04 00 83 */	cmpwi r4, 0x83
/* 80036DEC 00032A4C  41 81 00 60 */	bgt lbl_80036E4C
/* 80036DF0 00032A50  4B FF F0 79 */	bl func_80035E68
/* 80036DF4 00032A54  2C 03 00 00 */	cmpwi r3, 0
/* 80036DF8 00032A58  40 82 00 0C */	bne lbl_80036E04
/* 80036DFC 00032A5C  38 60 00 00 */	li r3, 0
/* 80036E00 00032A60  48 00 00 58 */	b lbl_80036E58
lbl_80036E04:
/* 80036E04 00032A64  2C 03 00 01 */	cmpwi r3, 1
/* 80036E08 00032A68  40 82 00 14 */	bne lbl_80036E1C
/* 80036E0C 00032A6C  38 1F FF 80 */	addi r0, r31, -128
/* 80036E10 00032A70  7C 00 00 34 */	cntlzw r0, r0
/* 80036E14 00032A74  54 03 D9 7E */	srwi r3, r0, 5
/* 80036E18 00032A78  48 00 00 40 */	b lbl_80036E58
lbl_80036E1C:
/* 80036E1C 00032A7C  2C 03 00 02 */	cmpwi r3, 2
/* 80036E20 00032A80  40 82 00 1C */	bne lbl_80036E3C
/* 80036E24 00032A84  38 00 00 81 */	li r0, 0x81
/* 80036E28 00032A88  57 E3 0F FE */	srwi r3, r31, 0x1f
/* 80036E2C 00032A8C  7C 04 FE 70 */	srawi r4, r0, 0x1f
/* 80036E30 00032A90  7C 1F 00 10 */	subfc r0, r31, r0
/* 80036E34 00032A94  7C 64 19 14 */	adde r3, r4, r3
/* 80036E38 00032A98  48 00 00 20 */	b lbl_80036E58
lbl_80036E3C:
/* 80036E3C 00032A9C  2C 03 00 03 */	cmpwi r3, 3
/* 80036E40 00032AA0  40 82 00 0C */	bne lbl_80036E4C
/* 80036E44 00032AA4  38 60 00 01 */	li r3, 1
/* 80036E48 00032AA8  48 00 00 10 */	b lbl_80036E58
lbl_80036E4C:
/* 80036E4C 00032AAC  38 03 FF 00 */	addi r0, r3, -256
/* 80036E50 00032AB0  7C 00 00 34 */	cntlzw r0, r0
/* 80036E54 00032AB4  54 03 D9 7E */	srwi r3, r0, 5
lbl_80036E58:
/* 80036E58 00032AB8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80036E5C 00032ABC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80036E60 00032AC0  7C 08 03 A6 */	mtlr r0
/* 80036E64 00032AC4  38 21 00 10 */	addi r1, r1, 0x10
/* 80036E68 00032AC8  4E 80 00 20 */	blr

.global func_80036E6C
func_80036E6C:
/* 80036E6C 00032ACC  28 05 00 01 */	cmplwi r5, 1
/* 80036E70 00032AD0  40 82 00 14 */	bne lbl_80036E84
/* 80036E74 00032AD4  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036E78 00032AD8  7C 63 02 14 */	add r3, r3, r0
/* 80036E7C 00032ADC  88 63 04 20 */	lbz r3, 0x420(r3)
/* 80036E80 00032AE0  4E 80 00 20 */	blr
lbl_80036E84:
/* 80036E84 00032AE4  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036E88 00032AE8  7C 63 02 14 */	add r3, r3, r0
/* 80036E8C 00032AEC  88 63 03 50 */	lbz r3, 0x350(r3)
/* 80036E90 00032AF0  4E 80 00 20 */	blr

.global func_80036E94
func_80036E94:
/* 80036E94 00032AF4  28 05 00 01 */	cmplwi r5, 1
/* 80036E98 00032AF8  40 82 00 14 */	bne lbl_80036EAC
/* 80036E9C 00032AFC  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036EA0 00032B00  7C 63 02 14 */	add r3, r3, r0
/* 80036EA4 00032B04  88 63 04 21 */	lbz r3, 0x421(r3)
/* 80036EA8 00032B08  4E 80 00 20 */	blr
lbl_80036EAC:
/* 80036EAC 00032B0C  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80036EB0 00032B10  7C 63 02 14 */	add r3, r3, r0
/* 80036EB4 00032B14  88 63 03 51 */	lbz r3, 0x351(r3)
/* 80036EB8 00032B18  4E 80 00 20 */	blr

.global func_80036EBC
func_80036EBC:
/* 80036EBC 00032B1C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80036EC0 00032B20  7C 08 02 A6 */	mflr r0
/* 80036EC4 00032B24  38 80 00 00 */	li r4, 0
/* 80036EC8 00032B28  38 A0 09 74 */	li r5, 0x974
/* 80036ECC 00032B2C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80036ED0 00032B30  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80036ED4 00032B34  7C 7F 1B 78 */	mr r31, r3
/* 80036ED8 00032B38  4B FC D2 2D */	bl memset
/* 80036EDC 00032B3C  38 A0 00 00 */	li r5, 0
/* 80036EE0 00032B40  38 80 FF FF */	li r4, -1
/* 80036EE4 00032B44  38 7F 08 60 */	addi r3, r31, 0x860
/* 80036EE8 00032B48  38 1F 04 E0 */	addi r0, r31, 0x4e0
/* 80036EEC 00032B4C  90 BF 00 00 */	stw r5, 0(r31)
/* 80036EF0 00032B50  90 9F 00 04 */	stw r4, 4(r31)
/* 80036EF4 00032B54  90 9F 00 08 */	stw r4, 8(r31)
/* 80036EF8 00032B58  90 BF 00 0C */	stw r5, 0xc(r31)
/* 80036EFC 00032B5C  90 7F 09 70 */	stw r3, 0x970(r31)
/* 80036F00 00032B60  90 1F 09 6C */	stw r0, 0x96c(r31)
/* 80036F04 00032B64  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80036F08 00032B68  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80036F0C 00032B6C  7C 08 03 A6 */	mtlr r0
/* 80036F10 00032B70  38 21 00 10 */	addi r1, r1, 0x10
/* 80036F14 00032B74  4E 80 00 20 */	blr

.global func_80036F18
func_80036F18:
/* 80036F18 00032B78  88 63 03 30 */	lbz r3, 0x330(r3)
/* 80036F1C 00032B7C  4E 80 00 20 */	blr

.global func_80036F20
func_80036F20:
/* 80036F20 00032B80  98 83 03 30 */	stb r4, 0x330(r3)
/* 80036F24 00032B84  4E 80 00 20 */	blr

.global func_80036F28
func_80036F28:
/* 80036F28 00032B88  2C 05 00 00 */	cmpwi r5, 0
/* 80036F2C 00032B8C  41 82 00 14 */	beq lbl_80036F40
/* 80036F30 00032B90  80 03 03 34 */	lwz r0, 0x334(r3)
/* 80036F34 00032B94  7C 00 23 78 */	or r0, r0, r4
/* 80036F38 00032B98  90 03 03 34 */	stw r0, 0x334(r3)
/* 80036F3C 00032B9C  4E 80 00 20 */	blr
lbl_80036F40:
/* 80036F40 00032BA0  80 03 03 34 */	lwz r0, 0x334(r3)
/* 80036F44 00032BA4  7C 00 20 78 */	andc r0, r0, r4
/* 80036F48 00032BA8  90 03 03 34 */	stw r0, 0x334(r3)
/* 80036F4C 00032BAC  4E 80 00 20 */	blr

.global func_80036F50
func_80036F50:
/* 80036F50 00032BB0  80 03 03 34 */	lwz r0, 0x334(r3)
/* 80036F54 00032BB4  7C 03 20 38 */	and r3, r0, r4
/* 80036F58 00032BB8  7C 03 00 D0 */	neg r0, r3
/* 80036F5C 00032BBC  7C 00 1B 78 */	or r0, r0, r3
/* 80036F60 00032BC0  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80036F64 00032BC4  4E 80 00 20 */	blr

.global func_80036F68
func_80036F68:
/* 80036F68 00032BC8  38 A0 00 01 */	li r5, 1
/* 80036F6C 00032BCC  38 6D 97 A0 */	addi r3, r13, lbl_8063EA60-_SDA_BASE_
/* 80036F70 00032BD0  38 80 00 04 */	li r4, 4
/* 80036F74 00032BD4  38 00 00 00 */	li r0, 0
/* 80036F78 00032BD8  98 AD 97 A0 */	stb r5, lbl_8063EA60-_SDA_BASE_(r13)
/* 80036F7C 00032BDC  B0 83 00 02 */	sth r4, 2(r3)
/* 80036F80 00032BE0  98 03 00 04 */	stb r0, 4(r3)
/* 80036F84 00032BE4  4E 80 00 20 */	blr

.global func_80036F88
func_80036F88:
/* 80036F88 00032BE8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80036F8C 00032BEC  7C 08 02 A6 */	mflr r0
/* 80036F90 00032BF0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80036F94 00032BF4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80036F98 00032BF8  7C 9F 23 78 */	mr r31, r4
/* 80036F9C 00032BFC  93 C1 00 08 */	stw r30, 8(r1)
/* 80036FA0 00032C00  7C 7E 1B 78 */	mr r30, r3
/* 80036FA4 00032C04  48 1A 45 19 */	bl func_801DB4BC
/* 80036FA8 00032C08  2C 03 00 00 */	cmpwi r3, 0
/* 80036FAC 00032C0C  40 82 00 30 */	bne lbl_80036FDC
/* 80036FB0 00032C10  7F C3 F3 78 */	mr r3, r30
/* 80036FB4 00032C14  7F E4 FB 78 */	mr r4, r31
/* 80036FB8 00032C18  48 21 28 65 */	bl func_8024981C
/* 80036FBC 00032C1C  48 00 00 0C */	b lbl_80036FC8
lbl_80036FC0:
/* 80036FC0 00032C20  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80036FC4 00032C24  48 1E D5 C5 */	bl func_80224588
lbl_80036FC8:
/* 80036FC8 00032C28  7F C3 F3 78 */	mr r3, r30
/* 80036FCC 00032C2C  7F E4 FB 78 */	mr r4, r31
/* 80036FD0 00032C30  48 1A 44 ED */	bl func_801DB4BC
/* 80036FD4 00032C34  2C 03 00 00 */	cmpwi r3, 0
/* 80036FD8 00032C38  41 82 FF E8 */	beq lbl_80036FC0
lbl_80036FDC:
/* 80036FDC 00032C3C  7F C3 F3 78 */	mr r3, r30
/* 80036FE0 00032C40  7F E4 FB 78 */	mr r4, r31
/* 80036FE4 00032C44  48 1A 45 19 */	bl func_801DB4FC
/* 80036FE8 00032C48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80036FEC 00032C4C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80036FF0 00032C50  83 C1 00 08 */	lwz r30, 8(r1)
/* 80036FF4 00032C54  7C 08 03 A6 */	mtlr r0
/* 80036FF8 00032C58  38 21 00 10 */	addi r1, r1, 0x10
/* 80036FFC 00032C5C  4E 80 00 20 */	blr

.global func_80037000
func_80037000:
/* 80037000 00032C60  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80037004 00032C64  7C 08 02 A6 */	mflr r0
/* 80037008 00032C68  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003700C 00032C6C  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 80037010 00032C70  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 80037014 00032C74  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
/* 80037018 00032C78  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003701C 00032C7C  3B E0 00 00 */	li r31, 0
/* 80037020 00032C80  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80037024 00032C84  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80037028 00032C88  3B A0 00 00 */	li r29, 0
/* 8003702C 00032C8C  93 81 00 10 */	stw r28, 0x10(r1)
/* 80037030 00032C90  7C 7C 1B 78 */	mr r28, r3
/* 80037034 00032C94  7F 9E E3 78 */	mr r30, r28
/* 80037038 00032C98  93 E3 00 00 */	stw r31, 0(r3)
lbl_8003703C:
/* 8003703C 00032C9C  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80037040 00032CA0  2C 03 00 00 */	cmpwi r3, 0
/* 80037044 00032CA4  41 82 00 4C */	beq lbl_80037090
/* 80037048 00032CA8  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8003704C 00032CAC  60 00 00 04 */	ori r0, r0, 4
/* 80037050 00032CB0  90 03 01 04 */	stw r0, 0x104(r3)
/* 80037054 00032CB4  D3 E3 01 10 */	stfs f31, 0x110(r3)
/* 80037058 00032CB8  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 8003705C 00032CBC  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 80037060 00032CC0  2C 03 00 00 */	cmpwi r3, 0
/* 80037064 00032CC4  41 82 00 08 */	beq lbl_8003706C
/* 80037068 00032CC8  48 1B B1 C1 */	bl func_801F2228
lbl_8003706C:
/* 8003706C 00032CCC  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80037070 00032CD0  2C 03 00 00 */	cmpwi r3, 0
/* 80037074 00032CD4  41 82 00 18 */	beq lbl_8003708C
/* 80037078 00032CD8  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8003707C 00032CDC  38 80 00 01 */	li r4, 1
/* 80037080 00032CE0  81 8C 00 08 */	lwz r12, 8(r12)
/* 80037084 00032CE4  7D 89 03 A6 */	mtctr r12
/* 80037088 00032CE8  4E 80 04 21 */	bctrl
lbl_8003708C:
/* 8003708C 00032CEC  93 FE 00 0C */	stw r31, 0xc(r30)
lbl_80037090:
/* 80037090 00032CF0  3B BD 00 01 */	addi r29, r29, 1
/* 80037094 00032CF4  3B DE 00 04 */	addi r30, r30, 4
/* 80037098 00032CF8  2C 1D 00 08 */	cmpwi r29, 8
/* 8003709C 00032CFC  41 80 FF A0 */	blt lbl_8003703C
/* 800370A0 00032D00  80 7C 00 04 */	lwz r3, 4(r28)
/* 800370A4 00032D04  2C 03 00 00 */	cmpwi r3, 0
/* 800370A8 00032D08  40 82 00 10 */	bne lbl_800370B8
/* 800370AC 00032D0C  80 1C 00 08 */	lwz r0, 8(r28)
/* 800370B0 00032D10  2C 00 00 00 */	cmpwi r0, 0
/* 800370B4 00032D14  41 82 00 0C */	beq lbl_800370C0
lbl_800370B8:
/* 800370B8 00032D18  80 9C 00 08 */	lwz r4, 8(r28)
/* 800370BC 00032D1C  48 1A 44 8D */	bl func_801DB548
lbl_800370C0:
/* 800370C0 00032D20  38 00 00 00 */	li r0, 0
/* 800370C4 00032D24  90 1C 00 04 */	stw r0, 4(r28)
/* 800370C8 00032D28  90 1C 00 08 */	stw r0, 8(r28)
/* 800370CC 00032D2C  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 800370D0 00032D30  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 800370D4 00032D34  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800370D8 00032D38  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800370DC 00032D3C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800370E0 00032D40  83 81 00 10 */	lwz r28, 0x10(r1)
/* 800370E4 00032D44  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800370E8 00032D48  7C 08 03 A6 */	mtlr r0
/* 800370EC 00032D4C  38 21 00 30 */	addi r1, r1, 0x30
/* 800370F0 00032D50  4E 80 00 20 */	blr

.global func_800370F4
func_800370F4:
/* 800370F4 00032D54  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800370F8 00032D58  38 00 00 00 */	li r0, 0
/* 800370FC 00032D5C  98 03 00 00 */	stb r0, 0(r3)
/* 80037100 00032D60  D0 03 00 04 */	stfs f0, 4(r3)
/* 80037104 00032D64  D0 03 00 08 */	stfs f0, 8(r3)
/* 80037108 00032D68  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 8003710C 00032D6C  90 03 00 10 */	stw r0, 0x10(r3)
/* 80037110 00032D70  90 03 00 14 */	stw r0, 0x14(r3)
/* 80037114 00032D74  90 03 00 18 */	stw r0, 0x18(r3)
/* 80037118 00032D78  90 03 00 1C */	stw r0, 0x1c(r3)
/* 8003711C 00032D7C  90 03 00 20 */	stw r0, 0x20(r3)
/* 80037120 00032D80  90 03 00 24 */	stw r0, 0x24(r3)
/* 80037124 00032D84  90 03 00 28 */	stw r0, 0x28(r3)
/* 80037128 00032D88  4E 80 00 20 */	blr
lbl_8003712C:
/* 8003712C 00032D8C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80037130 00032D90  7C 08 02 A6 */	mflr r0
/* 80037134 00032D94  90 01 00 24 */	stw r0, 0x24(r1)
/* 80037138 00032D98  39 61 00 20 */	addi r11, r1, 0x20
/* 8003713C 00032D9C  48 18 FF E9 */	bl _savegpr_26
/* 80037140 00032DA0  7C 7A 1B 78 */	mr r26, r3
/* 80037144 00032DA4  7C 9B 23 78 */	mr r27, r4
/* 80037148 00032DA8  48 01 66 C5 */	bl func_8004D80C
/* 8003714C 00032DAC  2C 03 00 00 */	cmpwi r3, 0
/* 80037150 00032DB0  7C 7D 1B 78 */	mr r29, r3
/* 80037154 00032DB4  40 82 00 0C */	bne lbl_80037160
/* 80037158 00032DB8  38 60 00 00 */	li r3, 0
/* 8003715C 00032DBC  48 00 00 60 */	b lbl_800371BC
lbl_80037160:
/* 80037160 00032DC0  7F 5E D3 78 */	mr r30, r26
/* 80037164 00032DC4  3B 80 00 00 */	li r28, 0
/* 80037168 00032DC8  3B E0 00 00 */	li r31, 0
lbl_8003716C:
/* 8003716C 00032DCC  80 9E 00 14 */	lwz r4, 0x14(r30)
/* 80037170 00032DD0  2C 04 00 00 */	cmpwi r4, 0
/* 80037174 00032DD4  41 82 00 10 */	beq lbl_80037184
/* 80037178 00032DD8  7F A3 EB 78 */	mr r3, r29
/* 8003717C 00032DDC  48 01 6B 31 */	bl func_8004DCAC
/* 80037180 00032DE0  93 FE 00 14 */	stw r31, 0x14(r30)
lbl_80037184:
/* 80037184 00032DE4  7F A3 EB 78 */	mr r3, r29
/* 80037188 00032DE8  48 01 6A C9 */	bl func_8004DC50
/* 8003718C 00032DEC  90 7E 00 14 */	stw r3, 0x14(r30)
/* 80037190 00032DF0  7F 65 DB 78 */	mr r5, r27
/* 80037194 00032DF4  38 80 00 0C */	li r4, 0xc
/* 80037198 00032DF8  38 C0 00 00 */	li r6, 0
/* 8003719C 00032DFC  48 01 70 99 */	bl func_8004E234
/* 800371A0 00032E00  3B 9C 00 01 */	addi r28, r28, 1
/* 800371A4 00032E04  3B DE 00 04 */	addi r30, r30, 4
/* 800371A8 00032E08  2C 1C 00 06 */	cmpwi r28, 6
/* 800371AC 00032E0C  41 80 FF C0 */	blt lbl_8003716C
/* 800371B0 00032E10  38 00 00 00 */	li r0, 0
/* 800371B4 00032E14  38 60 00 01 */	li r3, 1
/* 800371B8 00032E18  98 1A 00 00 */	stb r0, 0(r26)
lbl_800371BC:
/* 800371BC 00032E1C  39 61 00 20 */	addi r11, r1, 0x20
/* 800371C0 00032E20  48 18 FF B1 */	bl _restgpr_26
/* 800371C4 00032E24  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800371C8 00032E28  7C 08 03 A6 */	mtlr r0
/* 800371CC 00032E2C  38 21 00 20 */	addi r1, r1, 0x20
/* 800371D0 00032E30  4E 80 00 20 */	blr

.global func_800371D4
func_800371D4:
/* 800371D4 00032E34  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800371D8 00032E38  7C 08 02 A6 */	mflr r0
/* 800371DC 00032E3C  90 01 00 34 */	stw r0, 0x34(r1)
/* 800371E0 00032E40  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 800371E4 00032E44  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 800371E8 00032E48  39 61 00 20 */	addi r11, r1, 0x20
/* 800371EC 00032E4C  48 18 FF 3D */	bl _savegpr_27
/* 800371F0 00032E50  7C 7B 1B 78 */	mr r27, r3
/* 800371F4 00032E54  48 01 66 19 */	bl func_8004D80C
/* 800371F8 00032E58  2C 03 00 00 */	cmpwi r3, 0
/* 800371FC 00032E5C  7C 7D 1B 78 */	mr r29, r3
/* 80037200 00032E60  41 82 00 64 */	beq lbl_80037264
/* 80037204 00032E64  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
/* 80037208 00032E68  7F 7E DB 78 */	mr r30, r27
/* 8003720C 00032E6C  3B 80 00 00 */	li r28, 0
/* 80037210 00032E70  3B E0 00 00 */	li r31, 0
lbl_80037214:
/* 80037214 00032E74  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 80037218 00032E78  2C 03 00 00 */	cmpwi r3, 0
/* 8003721C 00032E7C  41 82 00 30 */	beq lbl_8003724C
/* 80037220 00032E80  80 63 00 40 */	lwz r3, 0x40(r3)
/* 80037224 00032E84  2C 03 00 00 */	cmpwi r3, 0
/* 80037228 00032E88  41 82 00 14 */	beq lbl_8003723C
/* 8003722C 00032E8C  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80037230 00032E90  60 00 00 04 */	ori r0, r0, 4
/* 80037234 00032E94  90 03 01 04 */	stw r0, 0x104(r3)
/* 80037238 00032E98  D3 E3 01 10 */	stfs f31, 0x110(r3)
lbl_8003723C:
/* 8003723C 00032E9C  80 9E 00 14 */	lwz r4, 0x14(r30)
/* 80037240 00032EA0  7F A3 EB 78 */	mr r3, r29
/* 80037244 00032EA4  48 01 6A 69 */	bl func_8004DCAC
/* 80037248 00032EA8  93 FE 00 14 */	stw r31, 0x14(r30)
lbl_8003724C:
/* 8003724C 00032EAC  3B 9C 00 01 */	addi r28, r28, 1
/* 80037250 00032EB0  3B DE 00 04 */	addi r30, r30, 4
/* 80037254 00032EB4  2C 1C 00 06 */	cmpwi r28, 6
/* 80037258 00032EB8  41 80 FF BC */	blt lbl_80037214
/* 8003725C 00032EBC  38 00 00 00 */	li r0, 0
/* 80037260 00032EC0  98 1B 00 00 */	stb r0, 0(r27)
lbl_80037264:
/* 80037264 00032EC4  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 80037268 00032EC8  39 61 00 20 */	addi r11, r1, 0x20
/* 8003726C 00032ECC  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80037270 00032ED0  48 18 FF 05 */	bl _restgpr_27
/* 80037274 00032ED4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80037278 00032ED8  7C 08 03 A6 */	mtlr r0
/* 8003727C 00032EDC  38 21 00 30 */	addi r1, r1, 0x30
/* 80037280 00032EE0  4E 80 00 20 */	blr

.global func_80037284
func_80037284:
/* 80037284 00032EE4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80037288 00032EE8  7C 08 02 A6 */	mflr r0
/* 8003728C 00032EEC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80037290 00032EF0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80037294 00032EF4  7C 7F 1B 78 */	mr r31, r3
/* 80037298 00032EF8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003729C 00032EFC  3B C3 00 04 */	addi r30, r3, 4
/* 800372A0 00032F00  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800372A4 00032F04  3B A3 02 20 */	addi r29, r3, 0x220
lbl_800372A8:
/* 800372A8 00032F08  7F C3 F3 78 */	mr r3, r30
/* 800372AC 00032F0C  48 01 90 79 */	bl func_80050324
/* 800372B0 00032F10  3B DE 00 24 */	addi r30, r30, 0x24
/* 800372B4 00032F14  7C 1E E8 40 */	cmplw r30, r29
/* 800372B8 00032F18  41 80 FF F0 */	blt lbl_800372A8
/* 800372BC 00032F1C  3B DF 04 60 */	addi r30, r31, 0x460
lbl_800372C0:
/* 800372C0 00032F20  7F A3 EB 78 */	mr r3, r29
/* 800372C4 00032F24  48 01 9E 25 */	bl func_800510E8
/* 800372C8 00032F28  3B BD 00 C0 */	addi r29, r29, 0xc0
/* 800372CC 00032F2C  7C 1D F0 40 */	cmplw r29, r30
/* 800372D0 00032F30  41 80 FF F0 */	blt lbl_800372C0
/* 800372D4 00032F34  7F C3 F3 78 */	mr r3, r30
/* 800372D8 00032F38  48 01 92 55 */	bl func_8005052C
/* 800372DC 00032F3C  38 7F 04 94 */	addi r3, r31, 0x494
/* 800372E0 00032F40  48 01 98 55 */	bl func_80050B34
/* 800372E4 00032F44  38 7F 04 D0 */	addi r3, r31, 0x4d0
/* 800372E8 00032F48  48 01 98 4D */	bl func_80050B34
/* 800372EC 00032F4C  38 7F 05 24 */	addi r3, r31, 0x524
/* 800372F0 00032F50  48 00 76 21 */	bl func_8003E910
/* 800372F4 00032F54  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800372F8 00032F58  3C 60 00 02 */	lis r3, 0x00020007@ha
/* 800372FC 00032F5C  3B C0 00 00 */	li r30, 0
/* 80037300 00032F60  C0 42 82 24 */	lfs f2, lbl_80640824-_SDA2_BASE_(r2)
/* 80037304 00032F64  C0 22 82 28 */	lfs f1, lbl_80640828-_SDA2_BASE_(r2)
/* 80037308 00032F68  38 03 00 07 */	addi r0, r3, 0x00020007@l
/* 8003730C 00032F6C  D0 5F 0C 0C */	stfs f2, 0xc0c(r31)
/* 80037310 00032F70  38 7F 0D 04 */	addi r3, r31, 0xd04
/* 80037314 00032F74  D0 5F 0C 10 */	stfs f2, 0xc10(r31)
/* 80037318 00032F78  D0 5F 0C 14 */	stfs f2, 0xc14(r31)
/* 8003731C 00032F7C  D0 3F 0C 18 */	stfs f1, 0xc18(r31)
/* 80037320 00032F80  D0 3F 0C 1C */	stfs f1, 0xc1c(r31)
/* 80037324 00032F84  D0 3F 0C 20 */	stfs f1, 0xc20(r31)
/* 80037328 00032F88  93 DF 0C 24 */	stw r30, 0xc24(r31)
/* 8003732C 00032F8C  93 DF 0B FC */	stw r30, 0xbfc(r31)
/* 80037330 00032F90  93 DF 0C 00 */	stw r30, 0xc00(r31)
/* 80037334 00032F94  93 DF 0C B0 */	stw r30, 0xcb0(r31)
/* 80037338 00032F98  B3 DF 0B F8 */	sth r30, 0xbf8(r31)
/* 8003733C 00032F9C  9B DF 0B F6 */	stb r30, 0xbf6(r31)
/* 80037340 00032FA0  B3 DF 0B F4 */	sth r30, 0xbf4(r31)
/* 80037344 00032FA4  90 1F 00 00 */	stw r0, 0(r31)
/* 80037348 00032FA8  D0 1F 0D 80 */	stfs f0, 0xd80(r31)
/* 8003734C 00032FAC  D0 1F 0D 84 */	stfs f0, 0xd84(r31)
/* 80037350 00032FB0  D0 1F 0D 8C */	stfs f0, 0xd8c(r31)
/* 80037354 00032FB4  9B DF 0D 88 */	stb r30, 0xd88(r31)
/* 80037358 00032FB8  9B DF 0D 89 */	stb r30, 0xd89(r31)
/* 8003735C 00032FBC  9B DF 0D 94 */	stb r30, 0xd94(r31)
/* 80037360 00032FC0  93 DF 0C 08 */	stw r30, 0xc08(r31)
/* 80037364 00032FC4  93 DF 0C 04 */	stw r30, 0xc04(r31)
/* 80037368 00032FC8  93 DF 0C 48 */	stw r30, 0xc48(r31)
/* 8003736C 00032FCC  93 DF 0C 4C */	stw r30, 0xc4c(r31)
/* 80037370 00032FD0  93 DF 0C 74 */	stw r30, 0xc74(r31)
/* 80037374 00032FD4  D0 1F 0C 78 */	stfs f0, 0xc78(r31)
/* 80037378 00032FD8  D0 1F 0C 7C */	stfs f0, 0xc7c(r31)
/* 8003737C 00032FDC  D0 1F 0C 80 */	stfs f0, 0xc80(r31)
/* 80037380 00032FE0  D0 1F 0C 84 */	stfs f0, 0xc84(r31)
/* 80037384 00032FE4  D0 1F 0C 88 */	stfs f0, 0xc88(r31)
/* 80037388 00032FE8  D0 1F 0C 8C */	stfs f0, 0xc8c(r31)
/* 8003738C 00032FEC  4B FF FD 69 */	bl func_800370F4
/* 80037390 00032FF0  38 7F 0D 30 */	addi r3, r31, 0xd30
/* 80037394 00032FF4  48 00 55 89 */	bl func_8003C91C
/* 80037398 00032FF8  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003739C 00032FFC  38 00 FF FF */	li r0, -1
/* 800373A0 00033000  B3 DF 05 0C */	sth r30, 0x50c(r31)
/* 800373A4 00033004  38 7F 05 24 */	addi r3, r31, 0x524
/* 800373A8 00033008  B3 DF 05 10 */	sth r30, 0x510(r31)
/* 800373AC 0003300C  B3 DF 05 12 */	sth r30, 0x512(r31)
/* 800373B0 00033010  9B DF 05 16 */	stb r30, 0x516(r31)
/* 800373B4 00033014  B3 DF 05 14 */	sth r30, 0x514(r31)
/* 800373B8 00033018  93 DF 05 18 */	stw r30, 0x518(r31)
/* 800373BC 0003301C  B3 DF 05 1C */	sth r30, 0x51c(r31)
/* 800373C0 00033020  9B DF 05 21 */	stb r30, 0x521(r31)
/* 800373C4 00033024  B3 DF 0C 68 */	sth r30, 0xc68(r31)
/* 800373C8 00033028  D0 1F 0D 78 */	stfs f0, 0xd78(r31)
/* 800373CC 0003302C  D0 1F 0D 7C */	stfs f0, 0xd7c(r31)
/* 800373D0 00033030  D0 1F 0D 64 */	stfs f0, 0xd64(r31)
/* 800373D4 00033034  D0 1F 0D 68 */	stfs f0, 0xd68(r31)
/* 800373D8 00033038  D0 1F 0D 6C */	stfs f0, 0xd6c(r31)
/* 800373DC 0003303C  93 DF 0D 70 */	stw r30, 0xd70(r31)
/* 800373E0 00033040  90 1F 0D 74 */	stw r0, 0xd74(r31)
/* 800373E4 00033044  48 00 75 BD */	bl func_8003E9A0
/* 800373E8 00033048  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800373EC 0003304C  D0 1F 0C 70 */	stfs f0, 0xc70(r31)
/* 800373F0 00033050  48 1E C4 41 */	bl func_80223830
/* 800373F4 00033054  3C 80 00 03 */	lis r4, 0x000343FD@ha
/* 800373F8 00033058  80 A3 00 00 */	lwz r5, 0(r3)
/* 800373FC 0003305C  38 84 43 FD */	addi r4, r4, 0x000343FD@l
/* 80037400 00033060  3C 00 43 30 */	lis r0, 0x4330
/* 80037404 00033064  7C 85 21 D6 */	mullw r4, r5, r4
/* 80037408 00033068  90 01 00 08 */	stw r0, 8(r1)
/* 8003740C 0003306C  C8 62 82 50 */	lfd f3, lbl_80640850-_SDA2_BASE_(r2)
/* 80037410 00033070  38 E0 00 01 */	li r7, 1
/* 80037414 00033074  C0 02 82 2C */	lfs f0, lbl_8064082C-_SDA2_BASE_(r2)
/* 80037418 00033078  38 C0 00 D4 */	li r6, 0xd4
/* 8003741C 0003307C  3C 84 00 27 */	addis r4, r4, 0x27
/* 80037420 00033080  C1 02 82 30 */	lfs f8, lbl_80640830-_SDA2_BASE_(r2)
/* 80037424 00033084  38 04 9E C3 */	addi r0, r4, -24893
/* 80037428 00033088  C0 C2 82 38 */	lfs f6, lbl_80640838-_SDA2_BASE_(r2)
/* 8003742C 0003308C  54 04 84 3E */	srwi r4, r0, 0x10
/* 80037430 00033090  90 03 00 00 */	stw r0, 0(r3)
/* 80037434 00033094  C0 E2 82 34 */	lfs f7, lbl_80640834-_SDA2_BASE_(r2)
/* 80037438 00033098  38 00 00 C4 */	li r0, 0xc4
/* 8003743C 0003309C  90 81 00 0C */	stw r4, 0xc(r1)
/* 80037440 000330A0  38 7F 0C D8 */	addi r3, r31, 0xcd8
/* 80037444 000330A4  C0 A2 82 20 */	lfs f5, lbl_80640820-_SDA2_BASE_(r2)
/* 80037448 000330A8  38 80 00 00 */	li r4, 0
/* 8003744C 000330AC  C8 41 00 08 */	lfd f2, 8(r1)
/* 80037450 000330B0  38 A0 00 2C */	li r5, 0x2c
/* 80037454 000330B4  C0 22 82 48 */	lfs f1, lbl_80640848-_SDA2_BASE_(r2)
/* 80037458 000330B8  ED 22 18 28 */	fsubs f9, f2, f3
/* 8003745C 000330BC  C0 82 82 3C */	lfs f4, lbl_8064083C-_SDA2_BASE_(r2)
/* 80037460 000330C0  C0 62 82 40 */	lfs f3, lbl_80640840-_SDA2_BASE_(r2)
/* 80037464 000330C4  C0 42 82 44 */	lfs f2, lbl_80640844-_SDA2_BASE_(r2)
/* 80037468 000330C8  ED 29 00 24 */	fdivs f9, f9, f0
/* 8003746C 000330CC  D0 DF 0C 44 */	stfs f6, 0xc44(r31)
/* 80037470 000330D0  C0 02 82 4C */	lfs f0, lbl_8064084C-_SDA2_BASE_(r2)
/* 80037474 000330D4  D0 FF 0C 38 */	stfs f7, 0xc38(r31)
/* 80037478 000330D8  D0 FF 0C 3C */	stfs f7, 0xc3c(r31)
/* 8003747C 000330DC  D0 FF 0C 40 */	stfs f7, 0xc40(r31)
/* 80037480 000330E0  EC C8 48 2A */	fadds f6, f8, f9
/* 80037484 000330E4  D0 FF 0C 28 */	stfs f7, 0xc28(r31)
/* 80037488 000330E8  D0 FF 0C 2C */	stfs f7, 0xc2c(r31)
/* 8003748C 000330EC  D0 DF 0C 6C */	stfs f6, 0xc6c(r31)
/* 80037490 000330F0  D0 FF 0C 30 */	stfs f7, 0xc30(r31)
/* 80037494 000330F4  D0 BF 0C 34 */	stfs f5, 0xc34(r31)
/* 80037498 000330F8  98 FF 0D B4 */	stb r7, 0xdb4(r31)
/* 8003749C 000330FC  98 FF 0D B5 */	stb r7, 0xdb5(r31)
/* 800374A0 00033100  98 FF 0D B6 */	stb r7, 0xdb6(r31)
/* 800374A4 00033104  D0 9F 0D B8 */	stfs f4, 0xdb8(r31)
/* 800374A8 00033108  D0 7F 0D BC */	stfs f3, 0xdbc(r31)
/* 800374AC 0003310C  98 DF 0D C0 */	stb r6, 0xdc0(r31)
/* 800374B0 00033110  98 DF 0D C1 */	stb r6, 0xdc1(r31)
/* 800374B4 00033114  98 DF 0D C2 */	stb r6, 0xdc2(r31)
/* 800374B8 00033118  98 1F 0D C3 */	stb r0, 0xdc3(r31)
/* 800374BC 0003311C  D0 BF 0D C4 */	stfs f5, 0xdc4(r31)
/* 800374C0 00033120  D0 5F 0D C8 */	stfs f2, 0xdc8(r31)
/* 800374C4 00033124  D0 BF 0D CC */	stfs f5, 0xdcc(r31)
/* 800374C8 00033128  D0 3F 0D D0 */	stfs f1, 0xdd0(r31)
/* 800374CC 0003312C  D0 3F 0D D4 */	stfs f1, 0xdd4(r31)
/* 800374D0 00033130  D0 3F 0D D8 */	stfs f1, 0xdd8(r31)
/* 800374D4 00033134  D1 1F 0D DC */	stfs f8, 0xddc(r31)
/* 800374D8 00033138  D1 1F 0D E0 */	stfs f8, 0xde0(r31)
/* 800374DC 0003313C  D1 1F 0D E4 */	stfs f8, 0xde4(r31)
/* 800374E0 00033140  D1 1F 0D E8 */	stfs f8, 0xde8(r31)
/* 800374E4 00033144  D0 BF 0D EC */	stfs f5, 0xdec(r31)
/* 800374E8 00033148  D0 BF 0D F0 */	stfs f5, 0xdf0(r31)
/* 800374EC 0003314C  D0 1F 0D F4 */	stfs f0, 0xdf4(r31)
/* 800374F0 00033150  93 DF 0C 50 */	stw r30, 0xc50(r31)
/* 800374F4 00033154  93 DF 0C 54 */	stw r30, 0xc54(r31)
/* 800374F8 00033158  4B FC CC 0D */	bl memset
/* 800374FC 0003315C  38 7F 0C 90 */	addi r3, r31, 0xc90
/* 80037500 00033160  38 80 00 00 */	li r4, 0
/* 80037504 00033164  38 A0 00 10 */	li r5, 0x10
/* 80037508 00033168  4B FC CB FD */	bl memset
/* 8003750C 0003316C  38 7F 0C 58 */	addi r3, r31, 0xc58
/* 80037510 00033170  38 80 00 00 */	li r4, 0
/* 80037514 00033174  38 A0 00 10 */	li r5, 0x10
/* 80037518 00033178  4B FC CB ED */	bl memset
/* 8003751C 0003317C  7F E3 FB 78 */	mr r3, r31
/* 80037520 00033180  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80037524 00033184  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80037528 00033188  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003752C 0003318C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80037530 00033190  7C 08 03 A6 */	mtlr r0
/* 80037534 00033194  38 21 00 20 */	addi r1, r1, 0x20
/* 80037538 00033198  4E 80 00 20 */	blr

.global func_8003753C
func_8003753C:
/* 8003753C 0003319C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80037540 000331A0  7C 08 02 A6 */	mflr r0
/* 80037544 000331A4  2C 03 00 00 */	cmpwi r3, 0
/* 80037548 000331A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003754C 000331AC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80037550 000331B0  7C 9F 23 78 */	mr r31, r4
/* 80037554 000331B4  93 C1 00 08 */	stw r30, 8(r1)
/* 80037558 000331B8  7C 7E 1B 78 */	mr r30, r3
/* 8003755C 000331BC  41 82 00 2C */	beq lbl_80037588
/* 80037560 000331C0  48 00 00 45 */	bl func_800375A4
/* 80037564 000331C4  34 1E 05 1C */	addic. r0, r30, 0x51c
/* 80037568 000331C8  41 82 00 10 */	beq lbl_80037578
/* 8003756C 000331CC  38 7E 05 24 */	addi r3, r30, 0x524
/* 80037570 000331D0  38 80 FF FF */	li r4, -1
/* 80037574 000331D4  48 00 73 D9 */	bl func_8003E94C
lbl_80037578:
/* 80037578 000331D8  2C 1F 00 00 */	cmpwi r31, 0
/* 8003757C 000331DC  40 81 00 0C */	ble lbl_80037588
/* 80037580 000331E0  7F C3 F3 78 */	mr r3, r30
/* 80037584 000331E4  48 1A 35 35 */	bl func_801DAAB8
lbl_80037588:
/* 80037588 000331E8  7F C3 F3 78 */	mr r3, r30
/* 8003758C 000331EC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80037590 000331F0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80037594 000331F4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80037598 000331F8  7C 08 03 A6 */	mtlr r0
/* 8003759C 000331FC  38 21 00 10 */	addi r1, r1, 0x10
/* 800375A0 00033200  4E 80 00 20 */	blr

.global func_800375A4
func_800375A4:
/* 800375A4 00033204  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800375A8 00033208  7C 08 02 A6 */	mflr r0
/* 800375AC 0003320C  90 01 00 24 */	stw r0, 0x24(r1)
/* 800375B0 00033210  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800375B4 00033214  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800375B8 00033218  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800375BC 0003321C  93 81 00 10 */	stw r28, 0x10(r1)
/* 800375C0 00033220  7C 7C 1B 78 */	mr r28, r3
/* 800375C4 00033224  48 00 8C 31 */	bl func_800401F4
/* 800375C8 00033228  2C 03 00 00 */	cmpwi r3, 0
/* 800375CC 0003322C  41 82 00 0C */	beq lbl_800375D8
/* 800375D0 00033230  7F 84 E3 78 */	mr r4, r28
/* 800375D4 00033234  48 00 8C 29 */	bl func_800401FC
lbl_800375D8:
/* 800375D8 00033238  7F 9E E3 78 */	mr r30, r28
/* 800375DC 0003323C  3B A0 00 00 */	li r29, 0
/* 800375E0 00033240  3B E0 00 00 */	li r31, 0
lbl_800375E4:
/* 800375E4 00033244  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 800375E8 00033248  2C 03 00 00 */	cmpwi r3, 0
/* 800375EC 0003324C  41 82 00 20 */	beq lbl_8003760C
/* 800375F0 00033250  41 82 00 18 */	beq lbl_80037608
/* 800375F4 00033254  81 83 01 00 */	lwz r12, 0x100(r3)
/* 800375F8 00033258  38 80 00 01 */	li r4, 1
/* 800375FC 0003325C  81 8C 00 08 */	lwz r12, 8(r12)
/* 80037600 00033260  7D 89 03 A6 */	mtctr r12
/* 80037604 00033264  4E 80 04 21 */	bctrl
lbl_80037608:
/* 80037608 00033268  93 FE 0C 90 */	stw r31, 0xc90(r30)
lbl_8003760C:
/* 8003760C 0003326C  3B BD 00 01 */	addi r29, r29, 1
/* 80037610 00033270  3B DE 00 04 */	addi r30, r30, 4
/* 80037614 00033274  2C 1D 00 04 */	cmpwi r29, 4
/* 80037618 00033278  41 80 FF CC */	blt lbl_800375E4
/* 8003761C 0003327C  80 7C 0C 08 */	lwz r3, 0xc08(r28)
/* 80037620 00033280  2C 03 00 00 */	cmpwi r3, 0
/* 80037624 00033284  41 82 00 24 */	beq lbl_80037648
/* 80037628 00033288  41 82 00 18 */	beq lbl_80037640
/* 8003762C 0003328C  81 83 00 0C */	lwz r12, 0xc(r3)
/* 80037630 00033290  38 80 00 01 */	li r4, 1
/* 80037634 00033294  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 80037638 00033298  7D 89 03 A6 */	mtctr r12
/* 8003763C 0003329C  4E 80 04 21 */	bctrl
lbl_80037640:
/* 80037640 000332A0  38 00 00 00 */	li r0, 0
/* 80037644 000332A4  90 1C 0C 08 */	stw r0, 0xc08(r28)
lbl_80037648:
/* 80037648 000332A8  80 7C 0C 04 */	lwz r3, 0xc04(r28)
/* 8003764C 000332AC  2C 03 00 00 */	cmpwi r3, 0
/* 80037650 000332B0  41 82 00 08 */	beq lbl_80037658
/* 80037654 000332B4  48 1B ED 3D */	bl func_801F6390
lbl_80037658:
/* 80037658 000332B8  80 7C 0C 00 */	lwz r3, 0xc00(r28)
/* 8003765C 000332BC  2C 03 00 00 */	cmpwi r3, 0
/* 80037660 000332C0  41 82 00 14 */	beq lbl_80037674
/* 80037664 000332C4  38 80 00 01 */	li r4, 1
/* 80037668 000332C8  48 1C 2C 2D */	bl func_801FA294
/* 8003766C 000332CC  38 00 00 00 */	li r0, 0
/* 80037670 000332D0  90 1C 0C 00 */	stw r0, 0xc00(r28)
lbl_80037674:
/* 80037674 000332D4  38 7C 0D 04 */	addi r3, r28, 0xd04
/* 80037678 000332D8  4B FF FB 5D */	bl func_800371D4
/* 8003767C 000332DC  80 7C 0B FC */	lwz r3, 0xbfc(r28)
/* 80037680 000332E0  2C 03 00 00 */	cmpwi r3, 0
/* 80037684 000332E4  41 82 00 70 */	beq lbl_800376F4
/* 80037688 000332E8  80 1C 00 00 */	lwz r0, 0(r28)
/* 8003768C 000332EC  54 00 06 31 */	rlwinm. r0, r0, 0, 0x18, 0x18
/* 80037690 000332F0  41 82 00 14 */	beq lbl_800376A4
/* 80037694 000332F4  48 1A C1 5D */	bl func_801E37F0
/* 80037698 000332F8  80 7C 0B FC */	lwz r3, 0xbfc(r28)
/* 8003769C 000332FC  48 1A 38 09 */	bl func_801DAEA4
/* 800376A0 00033300  48 00 00 4C */	b lbl_800376EC
lbl_800376A4:
/* 800376A4 00033304  80 7C 0C 48 */	lwz r3, 0xc48(r28)
/* 800376A8 00033308  80 9C 0C 4C */	lwz r4, 0xc4c(r28)
/* 800376AC 0003330C  48 1A 3E 9D */	bl func_801DB548
/* 800376B0 00033310  3B BC 0C 58 */	addi r29, r28, 0xc58
/* 800376B4 00033314  3B FC 0C 68 */	addi r31, r28, 0xc68
/* 800376B8 00033318  48 00 00 1C */	b lbl_800376D4
lbl_800376BC:
/* 800376BC 0003331C  80 7D 00 00 */	lwz r3, 0(r29)
/* 800376C0 00033320  2C 03 00 00 */	cmpwi r3, 0
/* 800376C4 00033324  41 82 00 0C */	beq lbl_800376D0
/* 800376C8 00033328  80 9D 00 04 */	lwz r4, 4(r29)
/* 800376CC 0003332C  48 1A 3E 7D */	bl func_801DB548
lbl_800376D0:
/* 800376D0 00033330  3B BD 00 08 */	addi r29, r29, 8
lbl_800376D4:
/* 800376D4 00033334  7C 1D F8 40 */	cmplw r29, r31
/* 800376D8 00033338  40 82 FF E4 */	bne lbl_800376BC
/* 800376DC 0003333C  38 7C 0C 58 */	addi r3, r28, 0xc58
/* 800376E0 00033340  38 80 00 00 */	li r4, 0
/* 800376E4 00033344  38 A0 00 10 */	li r5, 0x10
/* 800376E8 00033348  4B FC CA 1D */	bl memset
lbl_800376EC:
/* 800376EC 0003334C  38 00 00 00 */	li r0, 0
/* 800376F0 00033350  90 1C 0B FC */	stw r0, 0xbfc(r28)
lbl_800376F4:
/* 800376F4 00033354  38 7C 0C D8 */	addi r3, r28, 0xcd8
/* 800376F8 00033358  4B FF F9 09 */	bl func_80037000
/* 800376FC 0003335C  38 7C 05 24 */	addi r3, r28, 0x524
/* 80037700 00033360  48 00 73 B1 */	bl func_8003EAB0
/* 80037704 00033364  3C 60 00 02 */	lis r3, 0x00020807@ha
/* 80037708 00033368  80 9C 00 00 */	lwz r4, 0(r28)
/* 8003770C 0003336C  38 03 08 07 */	addi r0, r3, 0x00020807@l
/* 80037710 00033370  38 60 00 00 */	li r3, 0
/* 80037714 00033374  7C 80 00 38 */	and r0, r4, r0
/* 80037718 00033378  90 7C 0C 48 */	stw r3, 0xc48(r28)
/* 8003771C 0003337C  90 7C 0C 4C */	stw r3, 0xc4c(r28)
/* 80037720 00033380  90 7C 0C 04 */	stw r3, 0xc04(r28)
/* 80037724 00033384  90 1C 00 00 */	stw r0, 0(r28)
/* 80037728 00033388  B0 7C 05 10 */	sth r3, 0x510(r28)
/* 8003772C 0003338C  B0 7C 05 12 */	sth r3, 0x512(r28)
/* 80037730 00033390  98 7C 05 16 */	stb r3, 0x516(r28)
/* 80037734 00033394  B0 7C 05 14 */	sth r3, 0x514(r28)
/* 80037738 00033398  90 7C 05 18 */	stw r3, 0x518(r28)
/* 8003773C 0003339C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80037740 000333A0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80037744 000333A4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80037748 000333A8  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003774C 000333AC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80037750 000333B0  7C 08 03 A6 */	mtlr r0
/* 80037754 000333B4  38 21 00 20 */	addi r1, r1, 0x20
/* 80037758 000333B8  4E 80 00 20 */	blr

.global func_8003775C
func_8003775C:
/* 8003775C 000333BC  94 21 FE C0 */	stwu r1, -0x140(r1)
/* 80037760 000333C0  7C 08 02 A6 */	mflr r0
/* 80037764 000333C4  38 AD 80 D0 */	addi r5, r13, lbl_8063D390-_SDA_BASE_
/* 80037768 000333C8  90 01 01 44 */	stw r0, 0x144(r1)
/* 8003776C 000333CC  93 E1 01 3C */	stw r31, 0x13c(r1)
/* 80037770 000333D0  93 C1 01 38 */	stw r30, 0x138(r1)
/* 80037774 000333D4  7C 9E 23 78 */	mr r30, r4
/* 80037778 000333D8  3C 80 80 41 */	lis r4, lbl_8040A404@ha
/* 8003777C 000333DC  93 A1 01 34 */	stw r29, 0x134(r1)
/* 80037780 000333E0  7C 7D 1B 78 */	mr r29, r3
/* 80037784 000333E4  38 61 00 28 */	addi r3, r1, 0x28
/* 80037788 000333E8  7F C6 F3 78 */	mr r6, r30
/* 8003778C 000333EC  38 84 A4 04 */	addi r4, r4, lbl_8040A404@l
/* 80037790 000333F0  4C C6 31 82 */	crclr 6
/* 80037794 000333F4  48 19 53 69 */	bl sprintf
/* 80037798 000333F8  48 1A 37 61 */	bl func_801DAEF8
/* 8003779C 000333FC  38 61 00 28 */	addi r3, r1, 0x28
/* 800377A0 00033400  38 81 00 08 */	addi r4, r1, 8
/* 800377A4 00033404  48 1A 54 1D */	bl func_801DCBC0
/* 800377A8 00033408  2C 03 00 00 */	cmpwi r3, 0
/* 800377AC 0003340C  7C 7F 1B 78 */	mr r31, r3
/* 800377B0 00033410  40 82 00 0C */	bne lbl_800377BC
/* 800377B4 00033414  38 60 00 00 */	li r3, 0
/* 800377B8 00033418  48 00 01 50 */	b lbl_80037908
lbl_800377BC:
/* 800377BC 0003341C  7F E4 FB 78 */	mr r4, r31
/* 800377C0 00033420  48 1A BD 1D */	bl func_801E34DC
/* 800377C4 00033424  48 1A 33 65 */	bl func_801DAB28
/* 800377C8 00033428  2C 03 00 00 */	cmpwi r3, 0
/* 800377CC 0003342C  41 82 00 14 */	beq lbl_800377E0
/* 800377D0 00033430  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800377D4 00033434  38 80 00 14 */	li r4, 0x14
/* 800377D8 00033438  48 1A 34 BD */	bl func_801DAC94
/* 800377DC 0003343C  48 00 00 08 */	b lbl_800377E4
lbl_800377E0:
/* 800377E0 00033440  38 60 00 00 */	li r3, 0
lbl_800377E4:
/* 800377E4 00033444  2C 03 00 00 */	cmpwi r3, 0
/* 800377E8 00033448  41 82 00 0C */	beq lbl_800377F4
/* 800377EC 0003344C  7F E4 FB 78 */	mr r4, r31
/* 800377F0 00033450  48 1C 28 A5 */	bl func_801FA094
lbl_800377F4:
/* 800377F4 00033454  90 7D 0C 00 */	stw r3, 0xc00(r29)
/* 800377F8 00033458  48 1A 37 01 */	bl func_801DAEF8
/* 800377FC 0003345C  80 7D 0C 00 */	lwz r3, 0xc00(r29)
/* 80037800 00033460  80 83 00 04 */	lwz r4, 4(r3)
/* 80037804 00033464  2C 04 00 00 */	cmpwi r4, 0
/* 80037808 00033468  40 82 00 0C */	bne lbl_80037814
/* 8003780C 0003346C  38 00 00 00 */	li r0, 0
/* 80037810 00033470  48 00 00 20 */	b lbl_80037830
lbl_80037814:
/* 80037814 00033474  80 63 00 00 */	lwz r3, 0(r3)
/* 80037818 00033478  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003781C 0003347C  2C 00 00 00 */	cmpwi r0, 0
/* 80037820 00033480  40 82 00 0C */	bne lbl_8003782C
/* 80037824 00033484  38 00 00 00 */	li r0, 0
/* 80037828 00033488  48 00 00 08 */	b lbl_80037830
lbl_8003782C:
/* 8003782C 0003348C  80 04 00 00 */	lwz r0, 0(r4)
lbl_80037830:
/* 80037830 00033490  90 1D 0C 04 */	stw r0, 0xc04(r29)
/* 80037834 00033494  7F A3 EB 78 */	mr r3, r29
/* 80037838 00033498  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003783C 0003349C  38 81 00 18 */	addi r4, r1, 0x18
/* 80037840 000334A0  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 80037844 000334A4  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80037848 000334A8  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 8003784C 000334AC  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 80037850 000334B0  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80037854 000334B4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80037858 000334B8  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003785C 000334BC  48 00 0F C1 */	bl func_8003881C
/* 80037860 000334C0  7F A3 EB 78 */	mr r3, r29
/* 80037864 000334C4  38 81 00 18 */	addi r4, r1, 0x18
/* 80037868 000334C8  48 00 12 69 */	bl func_80038AD0
/* 8003786C 000334CC  7F A3 EB 78 */	mr r3, r29
/* 80037870 000334D0  38 81 00 0C */	addi r4, r1, 0xc
/* 80037874 000334D4  48 00 10 DD */	bl func_80038950
/* 80037878 000334D8  80 7D 0C 04 */	lwz r3, 0xc04(r29)
/* 8003787C 000334DC  38 80 00 00 */	li r4, 0
/* 80037880 000334E0  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80037884 000334E4  38 A0 00 01 */	li r5, 1
/* 80037888 000334E8  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003788C 000334EC  38 C0 00 00 */	li r6, 0
/* 80037890 000334F0  38 E0 00 00 */	li r7, 0
/* 80037894 000334F4  39 00 00 00 */	li r8, 0
/* 80037898 000334F8  48 1B D5 5D */	bl func_801F4DF4
/* 8003789C 000334FC  80 7D 0C 04 */	lwz r3, 0xc04(r29)
/* 800378A0 00033500  38 80 00 01 */	li r4, 1
/* 800378A4 00033504  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 800378A8 00033508  48 1B EF A1 */	bl func_801F6848
/* 800378AC 0003350C  80 BD 0C 04 */	lwz r5, 0xc04(r29)
/* 800378B0 00033510  7F A3 EB 78 */	mr r3, r29
/* 800378B4 00033514  80 1D 00 00 */	lwz r0, 0(r29)
/* 800378B8 00033518  7F C4 F3 78 */	mr r4, r30
/* 800378BC 0003351C  C0 05 01 20 */	lfs f0, 0x120(r5)
/* 800378C0 00033520  60 00 00 80 */	ori r0, r0, 0x80
/* 800378C4 00033524  D0 1D 0C 0C */	stfs f0, 0xc0c(r29)
/* 800378C8 00033528  C0 05 01 24 */	lfs f0, 0x124(r5)
/* 800378CC 0003352C  D0 1D 0C 10 */	stfs f0, 0xc10(r29)
/* 800378D0 00033530  C0 05 01 28 */	lfs f0, 0x128(r5)
/* 800378D4 00033534  D0 1D 0C 14 */	stfs f0, 0xc14(r29)
/* 800378D8 00033538  C0 05 01 2C */	lfs f0, 0x12c(r5)
/* 800378DC 0003353C  D0 1D 0C 18 */	stfs f0, 0xc18(r29)
/* 800378E0 00033540  C0 05 01 30 */	lfs f0, 0x130(r5)
/* 800378E4 00033544  D0 1D 0C 1C */	stfs f0, 0xc1c(r29)
/* 800378E8 00033548  C0 05 01 34 */	lfs f0, 0x134(r5)
/* 800378EC 0003354C  D0 1D 0C 20 */	stfs f0, 0xc20(r29)
/* 800378F0 00033550  80 A5 01 38 */	lwz r5, 0x138(r5)
/* 800378F4 00033554  90 BD 0C 24 */	stw r5, 0xc24(r29)
/* 800378F8 00033558  93 FD 0B FC */	stw r31, 0xbfc(r29)
/* 800378FC 0003355C  90 1D 00 00 */	stw r0, 0(r29)
/* 80037900 00033560  48 00 0C 19 */	bl func_80038518
/* 80037904 00033564  38 60 00 01 */	li r3, 1
lbl_80037908:
/* 80037908 00033568  80 01 01 44 */	lwz r0, 0x144(r1)
/* 8003790C 0003356C  83 E1 01 3C */	lwz r31, 0x13c(r1)
/* 80037910 00033570  83 C1 01 38 */	lwz r30, 0x138(r1)
/* 80037914 00033574  83 A1 01 34 */	lwz r29, 0x134(r1)
/* 80037918 00033578  7C 08 03 A6 */	mtlr r0
/* 8003791C 0003357C  38 21 01 40 */	addi r1, r1, 0x140
/* 80037920 00033580  4E 80 00 20 */	blr

.global func_80037924
func_80037924:
/* 80037924 00033584  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80037928 00033588  7C 08 02 A6 */	mflr r0
/* 8003792C 0003358C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80037930 00033590  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80037934 00033594  7C BF 2B 78 */	mr r31, r5
/* 80037938 00033598  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003793C 0003359C  7C 9E 23 78 */	mr r30, r4
/* 80037940 000335A0  7F E4 FB 78 */	mr r4, r31
/* 80037944 000335A4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80037948 000335A8  7C 7D 1B 78 */	mr r29, r3
/* 8003794C 000335AC  7F C3 F3 78 */	mr r3, r30
/* 80037950 000335B0  48 1A 3B 6D */	bl func_801DB4BC
/* 80037954 000335B4  2C 03 00 00 */	cmpwi r3, 0
/* 80037958 000335B8  90 7D 0B FC */	stw r3, 0xbfc(r29)
/* 8003795C 000335BC  40 82 00 0C */	bne lbl_80037968
/* 80037960 000335C0  38 60 00 00 */	li r3, 0
/* 80037964 000335C4  48 00 00 28 */	b lbl_8003798C
lbl_80037968:
/* 80037968 000335C8  80 1D 00 00 */	lwz r0, 0(r29)
/* 8003796C 000335CC  7F A3 EB 78 */	mr r3, r29
/* 80037970 000335D0  93 DD 0C 48 */	stw r30, 0xc48(r29)
/* 80037974 000335D4  38 8D 80 D8 */	addi r4, r13, lbl_8063D398-_SDA_BASE_
/* 80037978 000335D8  60 00 00 10 */	ori r0, r0, 0x10
/* 8003797C 000335DC  93 FD 0C 4C */	stw r31, 0xc4c(r29)
/* 80037980 000335E0  90 1D 00 00 */	stw r0, 0(r29)
/* 80037984 000335E4  48 00 0B 95 */	bl func_80038518
/* 80037988 000335E8  38 60 00 01 */	li r3, 1
lbl_8003798C:
/* 8003798C 000335EC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80037990 000335F0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80037994 000335F4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80037998 000335F8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003799C 000335FC  7C 08 03 A6 */	mtlr r0
/* 800379A0 00033600  38 21 00 20 */	addi r1, r1, 0x20
/* 800379A4 00033604  4E 80 00 20 */	blr

.global func_800379A8
func_800379A8:
/* 800379A8 00033608  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800379AC 0003360C  7C 08 02 A6 */	mflr r0
/* 800379B0 00033610  90 01 00 44 */	stw r0, 0x44(r1)
/* 800379B4 00033614  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 800379B8 00033618  7C 7F 1B 78 */	mr r31, r3
/* 800379BC 0003361C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 800379C0 00033620  93 A1 00 34 */	stw r29, 0x34(r1)
/* 800379C4 00033624  80 83 00 00 */	lwz r4, 0(r3)
/* 800379C8 00033628  54 80 05 6B */	rlwinm. r0, r4, 0, 0x15, 0x15
/* 800379CC 0003362C  41 82 00 14 */	beq lbl_800379E0
/* 800379D0 00033630  54 80 05 A8 */	rlwinm r0, r4, 0, 0x16, 0x14
/* 800379D4 00033634  A0 83 0C 68 */	lhz r4, 0xc68(r3)
/* 800379D8 00033638  90 03 00 00 */	stw r0, 0(r3)
/* 800379DC 0003363C  48 00 0B 55 */	bl func_80038530
lbl_800379E0:
/* 800379E0 00033640  80 7F 00 00 */	lwz r3, 0(r31)
/* 800379E4 00033644  54 60 05 AD */	rlwinm. r0, r3, 0, 0x16, 0x16
/* 800379E8 00033648  41 82 00 20 */	beq lbl_80037A08
/* 800379EC 0003364C  A0 1F 05 0C */	lhz r0, 0x50c(r31)
/* 800379F0 00033650  54 63 05 EA */	rlwinm r3, r3, 0, 0x17, 0x15
/* 800379F4 00033654  90 7F 00 00 */	stw r3, 0(r31)
/* 800379F8 00033658  28 00 00 02 */	cmplwi r0, 2
/* 800379FC 0003365C  40 82 00 0C */	bne lbl_80037A08
/* 80037A00 00033660  7F E3 FB 78 */	mr r3, r31
/* 80037A04 00033664  48 00 5A 31 */	bl func_8003D434
lbl_80037A08:
/* 80037A08 00033668  80 7F 00 00 */	lwz r3, 0(r31)
/* 80037A0C 0003366C  54 60 06 F7 */	rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 80037A10 00033670  41 82 02 FC */	beq lbl_80037D0C
/* 80037A14 00033674  80 1F 0B FC */	lwz r0, 0xbfc(r31)
/* 80037A18 00033678  54 63 07 34 */	rlwinm r3, r3, 0, 0x1c, 0x1a
/* 80037A1C 0003367C  90 7F 00 00 */	stw r3, 0(r31)
/* 80037A20 00033680  2C 00 00 00 */	cmpwi r0, 0
/* 80037A24 00033684  41 82 02 BC */	beq lbl_80037CE0
/* 80037A28 00033688  80 7F 0C 00 */	lwz r3, 0xc00(r31)
/* 80037A2C 0003368C  2C 03 00 00 */	cmpwi r3, 0
/* 80037A30 00033690  41 82 00 0C */	beq lbl_80037A3C
/* 80037A34 00033694  38 80 00 01 */	li r4, 1
/* 80037A38 00033698  48 1C 28 5D */	bl func_801FA294
lbl_80037A3C:
/* 80037A3C 0003369C  48 1A 30 ED */	bl func_801DAB28
/* 80037A40 000336A0  2C 03 00 00 */	cmpwi r3, 0
/* 80037A44 000336A4  41 82 00 14 */	beq lbl_80037A58
/* 80037A48 000336A8  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80037A4C 000336AC  38 80 00 14 */	li r4, 0x14
/* 80037A50 000336B0  48 1A 32 45 */	bl func_801DAC94
/* 80037A54 000336B4  48 00 00 08 */	b lbl_80037A5C
lbl_80037A58:
/* 80037A58 000336B8  38 60 00 00 */	li r3, 0
lbl_80037A5C:
/* 80037A5C 000336BC  2C 03 00 00 */	cmpwi r3, 0
/* 80037A60 000336C0  41 82 00 0C */	beq lbl_80037A6C
/* 80037A64 000336C4  80 9F 0B FC */	lwz r4, 0xbfc(r31)
/* 80037A68 000336C8  48 1C 26 2D */	bl func_801FA094
lbl_80037A6C:
/* 80037A6C 000336CC  90 7F 0C 00 */	stw r3, 0xc00(r31)
/* 80037A70 000336D0  80 83 00 04 */	lwz r4, 4(r3)
/* 80037A74 000336D4  2C 04 00 00 */	cmpwi r4, 0
/* 80037A78 000336D8  40 82 00 0C */	bne lbl_80037A84
/* 80037A7C 000336DC  38 60 00 00 */	li r3, 0
/* 80037A80 000336E0  48 00 00 20 */	b lbl_80037AA0
lbl_80037A84:
/* 80037A84 000336E4  80 63 00 00 */	lwz r3, 0(r3)
/* 80037A88 000336E8  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80037A8C 000336EC  2C 00 00 00 */	cmpwi r0, 0
/* 80037A90 000336F0  40 82 00 0C */	bne lbl_80037A9C
/* 80037A94 000336F4  38 60 00 00 */	li r3, 0
/* 80037A98 000336F8  48 00 00 08 */	b lbl_80037AA0
lbl_80037A9C:
/* 80037A9C 000336FC  80 64 00 00 */	lwz r3, 0(r4)
lbl_80037AA0:
/* 80037AA0 00033700  80 1F 00 00 */	lwz r0, 0(r31)
/* 80037AA4 00033704  90 7F 0C 04 */	stw r3, 0xc04(r31)
/* 80037AA8 00033708  54 00 05 29 */	rlwinm. r0, r0, 0, 0x14, 0x14
/* 80037AAC 0003370C  41 82 00 10 */	beq lbl_80037ABC
/* 80037AB0 00033710  48 1C BD 61 */	bl func_80203810
/* 80037AB4 00033714  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80037AB8 00033718  48 1C 8D A1 */	bl func_80200858
lbl_80037ABC:
/* 80037ABC 0003371C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80037AC0 00033720  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 80037AC4 00033724  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 80037AC8 00033728  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 80037ACC 0003372C  D0 21 00 28 */	stfs f1, 0x28(r1)
/* 80037AD0 00033730  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80037AD4 00033734  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80037AD8 00033738  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80037ADC 0003373C  D0 21 00 08 */	stfs f1, 8(r1)
/* 80037AE0 00033740  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80037AE4 00033744  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 80037AE8 00033748  A0 1F 05 0C */	lhz r0, 0x50c(r31)
/* 80037AEC 0003374C  28 00 00 03 */	cmplwi r0, 3
/* 80037AF0 00033750  41 82 00 14 */	beq lbl_80037B04
/* 80037AF4 00033754  C0 02 82 58 */	lfs f0, lbl_80640858-_SDA2_BASE_(r2)
/* 80037AF8 00033758  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80037AFC 0003375C  D0 01 00 08 */	stfs f0, 8(r1)
/* 80037B00 00033760  D0 21 00 10 */	stfs f1, 0x10(r1)
lbl_80037B04:
/* 80037B04 00033764  7F E3 FB 78 */	mr r3, r31
/* 80037B08 00033768  38 81 00 08 */	addi r4, r1, 8
/* 80037B0C 0003376C  48 00 0D 11 */	bl func_8003881C
/* 80037B10 00033770  7F E3 FB 78 */	mr r3, r31
/* 80037B14 00033774  38 81 00 20 */	addi r4, r1, 0x20
/* 80037B18 00033778  48 00 0F B9 */	bl func_80038AD0
/* 80037B1C 0003377C  7F E3 FB 78 */	mr r3, r31
/* 80037B20 00033780  38 81 00 14 */	addi r4, r1, 0x14
/* 80037B24 00033784  48 00 0E 2D */	bl func_80038950
/* 80037B28 00033788  A0 1F 05 0C */	lhz r0, 0x50c(r31)
/* 80037B2C 0003378C  28 00 00 01 */	cmplwi r0, 1
/* 80037B30 00033790  40 82 01 04 */	bne lbl_80037C34
/* 80037B34 00033794  A0 1F 05 10 */	lhz r0, 0x510(r31)
/* 80037B38 00033798  2C 00 01 47 */	cmpwi r0, 0x147
/* 80037B3C 0003379C  41 82 00 14 */	beq lbl_80037B50
/* 80037B40 000337A0  40 80 00 F4 */	bge lbl_80037C34
/* 80037B44 000337A4  2C 00 01 3C */	cmpwi r0, 0x13c
/* 80037B48 000337A8  41 82 00 E4 */	beq lbl_80037C2C
/* 80037B4C 000337AC  48 00 00 E8 */	b lbl_80037C34
lbl_80037B50:
/* 80037B50 000337B0  3C 80 09 31 */	lis r4, 0x09310C00@ha
/* 80037B54 000337B4  80 7F 0C 48 */	lwz r3, 0xc48(r31)
/* 80037B58 000337B8  38 84 0C 00 */	addi r4, r4, 0x09310C00@l
/* 80037B5C 000337BC  48 1A 39 61 */	bl func_801DB4BC
/* 80037B60 000337C0  2C 03 00 00 */	cmpwi r3, 0
/* 80037B64 000337C4  7C 7E 1B 78 */	mr r30, r3
/* 80037B68 000337C8  41 82 00 CC */	beq lbl_80037C34
/* 80037B6C 000337CC  3C 80 09 30 */	lis r4, 0x09300C00@ha
/* 80037B70 000337D0  80 7F 0C 48 */	lwz r3, 0xc48(r31)
/* 80037B74 000337D4  38 84 0C 00 */	addi r4, r4, 0x09300C00@l
/* 80037B78 000337D8  48 1A 39 45 */	bl func_801DB4BC
/* 80037B7C 000337DC  2C 03 00 00 */	cmpwi r3, 0
/* 80037B80 000337E0  7C 7D 1B 78 */	mr r29, r3
/* 80037B84 000337E4  41 82 00 B0 */	beq lbl_80037C34
/* 80037B88 000337E8  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80037B8C 000337EC  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 80037B90 000337F0  2C 04 00 00 */	cmpwi r4, 0
/* 80037B94 000337F4  40 82 00 0C */	bne lbl_80037BA0
/* 80037B98 000337F8  38 60 00 00 */	li r3, 0
/* 80037B9C 000337FC  48 00 00 20 */	b lbl_80037BBC
lbl_80037BA0:
/* 80037BA0 00033800  A0 03 00 E6 */	lhz r0, 0xe6(r3)
/* 80037BA4 00033804  28 00 00 06 */	cmplwi r0, 6
/* 80037BA8 00033808  41 81 00 0C */	bgt lbl_80037BB4
/* 80037BAC 0003380C  38 60 00 00 */	li r3, 0
/* 80037BB0 00033810  48 00 00 0C */	b lbl_80037BBC
lbl_80037BB4:
/* 80037BB4 00033814  80 64 00 18 */	lwz r3, 0x18(r4)
/* 80037BB8 00033818  80 63 00 14 */	lwz r3, 0x14(r3)
lbl_80037BBC:
/* 80037BBC 0003381C  2C 03 00 00 */	cmpwi r3, 0
/* 80037BC0 00033820  41 82 00 74 */	beq lbl_80037C34
/* 80037BC4 00033824  80 DF 05 18 */	lwz r6, 0x518(r31)
/* 80037BC8 00033828  7F C4 F3 78 */	mr r4, r30
/* 80037BCC 0003382C  7F A5 EB 78 */	mr r5, r29
/* 80037BD0 00033830  38 ED A3 E4 */	addi r7, r13, lbl_8063F6A4-_SDA_BASE_
/* 80037BD4 00033834  48 1A F3 A5 */	bl func_801E6F78
/* 80037BD8 00033838  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80037BDC 0003383C  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 80037BE0 00033840  2C 04 00 00 */	cmpwi r4, 0
/* 80037BE4 00033844  40 82 00 0C */	bne lbl_80037BF0
/* 80037BE8 00033848  38 60 00 00 */	li r3, 0
/* 80037BEC 0003384C  48 00 00 20 */	b lbl_80037C0C
lbl_80037BF0:
/* 80037BF0 00033850  A0 03 00 E6 */	lhz r0, 0xe6(r3)
/* 80037BF4 00033854  28 00 00 08 */	cmplwi r0, 8
/* 80037BF8 00033858  41 81 00 0C */	bgt lbl_80037C04
/* 80037BFC 0003385C  38 60 00 00 */	li r3, 0
/* 80037C00 00033860  48 00 00 0C */	b lbl_80037C0C
lbl_80037C04:
/* 80037C04 00033864  80 64 00 20 */	lwz r3, 0x20(r4)
/* 80037C08 00033868  80 63 00 14 */	lwz r3, 0x14(r3)
lbl_80037C0C:
/* 80037C0C 0003386C  2C 03 00 00 */	cmpwi r3, 0
/* 80037C10 00033870  41 82 00 24 */	beq lbl_80037C34
/* 80037C14 00033874  80 DF 05 18 */	lwz r6, 0x518(r31)
/* 80037C18 00033878  7F C4 F3 78 */	mr r4, r30
/* 80037C1C 0003387C  7F A5 EB 78 */	mr r5, r29
/* 80037C20 00033880  38 ED A3 E4 */	addi r7, r13, lbl_8063F6A4-_SDA_BASE_
/* 80037C24 00033884  48 1A F3 55 */	bl func_801E6F78
/* 80037C28 00033888  48 00 00 0C */	b lbl_80037C34
lbl_80037C2C:
/* 80037C2C 0003388C  38 00 00 01 */	li r0, 1
/* 80037C30 00033890  98 1F 0D 89 */	stb r0, 0xd89(r31)
lbl_80037C34:
/* 80037C34 00033894  7F E3 FB 78 */	mr r3, r31
/* 80037C38 00033898  38 80 00 00 */	li r4, 0
/* 80037C3C 0003389C  48 00 46 21 */	bl func_8003C25C
/* 80037C40 000338A0  7C 60 1B 78 */	mr r0, r3
/* 80037C44 000338A4  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80037C48 000338A8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80037C4C 000338AC  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 80037C50 000338B0  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 80037C54 000338B4  38 A0 00 01 */	li r5, 1
/* 80037C58 000338B8  38 C0 00 00 */	li r6, 0
/* 80037C5C 000338BC  38 E0 00 00 */	li r7, 0
/* 80037C60 000338C0  39 00 00 00 */	li r8, 0
/* 80037C64 000338C4  48 1B D1 91 */	bl func_801F4DF4
/* 80037C68 000338C8  38 00 00 00 */	li r0, 0
/* 80037C6C 000338CC  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80037C70 000338D0  98 1F 0B F6 */	stb r0, 0xbf6(r31)
/* 80037C74 000338D4  38 80 00 01 */	li r4, 1
/* 80037C78 000338D8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80037C7C 000338DC  48 1B EB CD */	bl func_801F6848
/* 80037C80 000338E0  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 80037C84 000338E4  80 7F 0C 00 */	lwz r3, 0xc00(r31)
/* 80037C88 000338E8  C0 04 01 20 */	lfs f0, 0x120(r4)
/* 80037C8C 000338EC  D0 1F 0C 0C */	stfs f0, 0xc0c(r31)
/* 80037C90 000338F0  C0 04 01 24 */	lfs f0, 0x124(r4)
/* 80037C94 000338F4  D0 1F 0C 10 */	stfs f0, 0xc10(r31)
/* 80037C98 000338F8  C0 04 01 28 */	lfs f0, 0x128(r4)
/* 80037C9C 000338FC  D0 1F 0C 14 */	stfs f0, 0xc14(r31)
/* 80037CA0 00033900  C0 04 01 2C */	lfs f0, 0x12c(r4)
/* 80037CA4 00033904  D0 1F 0C 18 */	stfs f0, 0xc18(r31)
/* 80037CA8 00033908  C0 04 01 30 */	lfs f0, 0x130(r4)
/* 80037CAC 0003390C  D0 1F 0C 1C */	stfs f0, 0xc1c(r31)
/* 80037CB0 00033910  C0 04 01 34 */	lfs f0, 0x134(r4)
/* 80037CB4 00033914  D0 1F 0C 20 */	stfs f0, 0xc20(r31)
/* 80037CB8 00033918  80 04 01 38 */	lwz r0, 0x138(r4)
/* 80037CBC 0003391C  90 1F 0C 24 */	stw r0, 0xc24(r31)
/* 80037CC0 00033920  80 83 00 00 */	lwz r4, 0(r3)
/* 80037CC4 00033924  80 04 00 24 */	lwz r0, 0x24(r4)
/* 80037CC8 00033928  2C 00 00 00 */	cmpwi r0, 0
/* 80037CCC 0003392C  40 82 00 10 */	bne lbl_80037CDC
/* 80037CD0 00033930  A0 1F 05 0C */	lhz r0, 0x50c(r31)
/* 80037CD4 00033934  28 00 00 03 */	cmplwi r0, 3
/* 80037CD8 00033938  40 82 00 08 */	bne lbl_80037CE0
lbl_80037CDC:
/* 80037CDC 0003393C  48 1C AC F5 */	bl func_802029D0
lbl_80037CE0:
/* 80037CE0 00033940  A0 1F 05 0C */	lhz r0, 0x50c(r31)
/* 80037CE4 00033944  28 00 00 02 */	cmplwi r0, 2
/* 80037CE8 00033948  40 82 00 0C */	bne lbl_80037CF4
/* 80037CEC 0003394C  7F E3 FB 78 */	mr r3, r31
/* 80037CF0 00033950  48 00 57 45 */	bl func_8003D434
lbl_80037CF4:
/* 80037CF4 00033954  80 9F 00 00 */	lwz r4, 0(r31)
/* 80037CF8 00033958  7F E3 FB 78 */	mr r3, r31
/* 80037CFC 0003395C  54 80 04 5E */	rlwinm r0, r4, 0, 0x11, 0xf
/* 80037D00 00033960  54 84 07 FE */	clrlwi r4, r4, 0x1f
/* 80037D04 00033964  90 1F 00 00 */	stw r0, 0(r31)
/* 80037D08 00033968  48 00 00 25 */	bl func_80037D2C
lbl_80037D0C:
/* 80037D0C 0003396C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80037D10 00033970  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80037D14 00033974  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80037D18 00033978  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 80037D1C 0003397C  7C 08 03 A6 */	mtlr r0
/* 80037D20 00033980  38 21 00 40 */	addi r1, r1, 0x40
/* 80037D24 00033984  4E 80 00 20 */	blr

.global func_80037D28
func_80037D28:
/* 80037D28 00033988  4B FF F8 7C */	b func_800375A4

.global func_80037D2C
func_80037D2C:
/* 80037D2C 0003398C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80037D30 00033990  7C 08 02 A6 */	mflr r0
/* 80037D34 00033994  90 01 00 14 */	stw r0, 0x14(r1)
/* 80037D38 00033998  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80037D3C 0003399C  7C 7F 1B 78 */	mr r31, r3
/* 80037D40 000339A0  93 C1 00 08 */	stw r30, 8(r1)
/* 80037D44 000339A4  7C 9E 23 78 */	mr r30, r4
/* 80037D48 000339A8  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 80037D4C 000339AC  2C 00 00 00 */	cmpwi r0, 0
/* 80037D50 000339B0  41 82 02 6C */	beq lbl_80037FBC
/* 80037D54 000339B4  48 00 D8 3D */	bl func_80045590
/* 80037D58 000339B8  A0 1F 05 0C */	lhz r0, 0x50c(r31)
/* 80037D5C 000339BC  28 00 00 01 */	cmplwi r0, 1
/* 80037D60 000339C0  40 82 00 10 */	bne lbl_80037D70
/* 80037D64 000339C4  A0 9F 0C 68 */	lhz r4, 0xc68(r31)
/* 80037D68 000339C8  7F C5 F3 78 */	mr r5, r30
/* 80037D6C 000339CC  48 00 F1 95 */	bl func_80046F00
lbl_80037D70:
/* 80037D70 000339D0  2C 1E 00 00 */	cmpwi r30, 0
/* 80037D74 000339D4  41 82 01 B4 */	beq lbl_80037F28
/* 80037D78 000339D8  80 7F 00 00 */	lwz r3, 0(r31)
/* 80037D7C 000339DC  54 60 02 53 */	rlwinm. r0, r3, 0, 9, 9
/* 80037D80 000339E0  40 82 01 A8 */	bne lbl_80037F28
/* 80037D84 000339E4  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 80037D88 000339E8  40 82 02 34 */	bne lbl_80037FBC
/* 80037D8C 000339EC  54 60 02 D7 */	rlwinm. r0, r3, 0, 0xb, 0xb
/* 80037D90 000339F0  40 82 00 0C */	bne lbl_80037D9C
/* 80037D94 000339F4  54 60 03 19 */	rlwinm. r0, r3, 0, 0xc, 0xc
/* 80037D98 000339F8  41 82 00 C4 */	beq lbl_80037E5C
lbl_80037D9C:
/* 80037D9C 000339FC  80 BF 0C 04 */	lwz r5, 0xc04(r31)
/* 80037DA0 00033A00  38 7F 05 24 */	addi r3, r31, 0x524
/* 80037DA4 00033A04  38 80 00 00 */	li r4, 0
/* 80037DA8 00033A08  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80037DAC 00033A0C  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 80037DB0 00033A10  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 80037DB4 00033A14  48 00 81 3D */	bl func_8003FEF0
/* 80037DB8 00033A18  38 00 00 02 */	li r0, 2
/* 80037DBC 00033A1C  38 A0 00 00 */	li r5, 0
/* 80037DC0 00033A20  7C 09 03 A6 */	mtctr r0
lbl_80037DC4:
/* 80037DC4 00033A24  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 80037DC8 00033A28  7C 7F 02 14 */	add r3, r31, r0
/* 80037DCC 00033A2C  80 83 0C 90 */	lwz r4, 0xc90(r3)
/* 80037DD0 00033A30  2C 04 00 00 */	cmpwi r4, 0
/* 80037DD4 00033A34  41 82 00 34 */	beq lbl_80037E08
/* 80037DD8 00033A38  3C 65 00 01 */	addis r3, r5, 1
/* 80037DDC 00033A3C  38 03 FF FF */	addi r0, r3, -1
/* 80037DE0 00033A40  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80037DE4 00033A44  28 00 00 01 */	cmplwi r0, 1
/* 80037DE8 00033A48  41 81 00 14 */	bgt lbl_80037DFC
/* 80037DEC 00033A4C  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037DF0 00033A50  60 00 00 02 */	ori r0, r0, 2
/* 80037DF4 00033A54  B0 04 00 10 */	sth r0, 0x10(r4)
/* 80037DF8 00033A58  48 00 00 10 */	b lbl_80037E08
lbl_80037DFC:
/* 80037DFC 00033A5C  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037E00 00033A60  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037E04 00033A64  B0 04 00 10 */	sth r0, 0x10(r4)
lbl_80037E08:
/* 80037E08 00033A68  38 A5 00 01 */	addi r5, r5, 1
/* 80037E0C 00033A6C  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 80037E10 00033A70  7C 7F 02 14 */	add r3, r31, r0
/* 80037E14 00033A74  80 83 0C 90 */	lwz r4, 0xc90(r3)
/* 80037E18 00033A78  2C 04 00 00 */	cmpwi r4, 0
/* 80037E1C 00033A7C  41 82 00 34 */	beq lbl_80037E50
/* 80037E20 00033A80  3C 65 00 01 */	addis r3, r5, 1
/* 80037E24 00033A84  38 03 FF FF */	addi r0, r3, -1
/* 80037E28 00033A88  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80037E2C 00033A8C  28 00 00 01 */	cmplwi r0, 1
/* 80037E30 00033A90  41 81 00 14 */	bgt lbl_80037E44
/* 80037E34 00033A94  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037E38 00033A98  60 00 00 02 */	ori r0, r0, 2
/* 80037E3C 00033A9C  B0 04 00 10 */	sth r0, 0x10(r4)
/* 80037E40 00033AA0  48 00 00 10 */	b lbl_80037E50
lbl_80037E44:
/* 80037E44 00033AA4  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037E48 00033AA8  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037E4C 00033AAC  B0 04 00 10 */	sth r0, 0x10(r4)
lbl_80037E50:
/* 80037E50 00033AB0  38 A5 00 01 */	addi r5, r5, 1
/* 80037E54 00033AB4  42 00 FF 70 */	bdnz lbl_80037DC4
/* 80037E58 00033AB8  48 00 00 C0 */	b lbl_80037F18
lbl_80037E5C:
/* 80037E5C 00033ABC  80 BF 0C 04 */	lwz r5, 0xc04(r31)
/* 80037E60 00033AC0  38 7F 05 24 */	addi r3, r31, 0x524
/* 80037E64 00033AC4  38 80 00 01 */	li r4, 1
/* 80037E68 00033AC8  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80037E6C 00033ACC  60 00 00 01 */	ori r0, r0, 1
/* 80037E70 00033AD0  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 80037E74 00033AD4  48 00 80 7D */	bl func_8003FEF0
/* 80037E78 00033AD8  38 00 00 02 */	li r0, 2
/* 80037E7C 00033ADC  38 A0 00 00 */	li r5, 0
/* 80037E80 00033AE0  7C 09 03 A6 */	mtctr r0
lbl_80037E84:
/* 80037E84 00033AE4  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 80037E88 00033AE8  7C 7F 02 14 */	add r3, r31, r0
/* 80037E8C 00033AEC  80 83 0C 90 */	lwz r4, 0xc90(r3)
/* 80037E90 00033AF0  2C 04 00 00 */	cmpwi r4, 0
/* 80037E94 00033AF4  41 82 00 34 */	beq lbl_80037EC8
/* 80037E98 00033AF8  3C 65 00 01 */	addis r3, r5, 1
/* 80037E9C 00033AFC  38 03 FF FF */	addi r0, r3, -1
/* 80037EA0 00033B00  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80037EA4 00033B04  28 00 00 01 */	cmplwi r0, 1
/* 80037EA8 00033B08  41 81 00 14 */	bgt lbl_80037EBC
/* 80037EAC 00033B0C  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037EB0 00033B10  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037EB4 00033B14  B0 04 00 10 */	sth r0, 0x10(r4)
/* 80037EB8 00033B18  48 00 00 10 */	b lbl_80037EC8
lbl_80037EBC:
/* 80037EBC 00033B1C  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037EC0 00033B20  60 00 00 02 */	ori r0, r0, 2
/* 80037EC4 00033B24  B0 04 00 10 */	sth r0, 0x10(r4)
lbl_80037EC8:
/* 80037EC8 00033B28  38 A5 00 01 */	addi r5, r5, 1
/* 80037ECC 00033B2C  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 80037ED0 00033B30  7C 7F 02 14 */	add r3, r31, r0
/* 80037ED4 00033B34  80 83 0C 90 */	lwz r4, 0xc90(r3)
/* 80037ED8 00033B38  2C 04 00 00 */	cmpwi r4, 0
/* 80037EDC 00033B3C  41 82 00 34 */	beq lbl_80037F10
/* 80037EE0 00033B40  3C 65 00 01 */	addis r3, r5, 1
/* 80037EE4 00033B44  38 03 FF FF */	addi r0, r3, -1
/* 80037EE8 00033B48  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80037EEC 00033B4C  28 00 00 01 */	cmplwi r0, 1
/* 80037EF0 00033B50  41 81 00 14 */	bgt lbl_80037F04
/* 80037EF4 00033B54  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037EF8 00033B58  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037EFC 00033B5C  B0 04 00 10 */	sth r0, 0x10(r4)
/* 80037F00 00033B60  48 00 00 10 */	b lbl_80037F10
lbl_80037F04:
/* 80037F04 00033B64  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80037F08 00033B68  60 00 00 02 */	ori r0, r0, 2
/* 80037F0C 00033B6C  B0 04 00 10 */	sth r0, 0x10(r4)
lbl_80037F10:
/* 80037F10 00033B70  38 A5 00 01 */	addi r5, r5, 1
/* 80037F14 00033B74  42 00 FF 70 */	bdnz lbl_80037E84
lbl_80037F18:
/* 80037F18 00033B78  80 1F 00 00 */	lwz r0, 0(r31)
/* 80037F1C 00033B7C  60 00 00 01 */	ori r0, r0, 1
/* 80037F20 00033B80  90 1F 00 00 */	stw r0, 0(r31)
/* 80037F24 00033B84  48 00 00 98 */	b lbl_80037FBC
lbl_80037F28:
/* 80037F28 00033B88  80 1F 00 00 */	lwz r0, 0(r31)
/* 80037F2C 00033B8C  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 80037F30 00033B90  41 82 00 8C */	beq lbl_80037FBC
/* 80037F34 00033B94  80 BF 0C 04 */	lwz r5, 0xc04(r31)
/* 80037F38 00033B98  38 7F 05 24 */	addi r3, r31, 0x524
/* 80037F3C 00033B9C  38 80 00 00 */	li r4, 0
/* 80037F40 00033BA0  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80037F44 00033BA4  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 80037F48 00033BA8  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 80037F4C 00033BAC  48 00 7F A5 */	bl func_8003FEF0
/* 80037F50 00033BB0  80 7F 0C 90 */	lwz r3, 0xc90(r31)
/* 80037F54 00033BB4  2C 03 00 00 */	cmpwi r3, 0
/* 80037F58 00033BB8  41 82 00 10 */	beq lbl_80037F68
/* 80037F5C 00033BBC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80037F60 00033BC0  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037F64 00033BC4  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80037F68:
/* 80037F68 00033BC8  80 7F 0C 94 */	lwz r3, 0xc94(r31)
/* 80037F6C 00033BCC  2C 03 00 00 */	cmpwi r3, 0
/* 80037F70 00033BD0  41 82 00 10 */	beq lbl_80037F80
/* 80037F74 00033BD4  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80037F78 00033BD8  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037F7C 00033BDC  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80037F80:
/* 80037F80 00033BE0  80 7F 0C 98 */	lwz r3, 0xc98(r31)
/* 80037F84 00033BE4  2C 03 00 00 */	cmpwi r3, 0
/* 80037F88 00033BE8  41 82 00 10 */	beq lbl_80037F98
/* 80037F8C 00033BEC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80037F90 00033BF0  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037F94 00033BF4  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80037F98:
/* 80037F98 00033BF8  80 7F 0C 9C */	lwz r3, 0xc9c(r31)
/* 80037F9C 00033BFC  2C 03 00 00 */	cmpwi r3, 0
/* 80037FA0 00033C00  41 82 00 10 */	beq lbl_80037FB0
/* 80037FA4 00033C04  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80037FA8 00033C08  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037FAC 00033C0C  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80037FB0:
/* 80037FB0 00033C10  80 1F 00 00 */	lwz r0, 0(r31)
/* 80037FB4 00033C14  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 80037FB8 00033C18  90 1F 00 00 */	stw r0, 0(r31)
lbl_80037FBC:
/* 80037FBC 00033C1C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80037FC0 00033C20  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80037FC4 00033C24  83 C1 00 08 */	lwz r30, 8(r1)
/* 80037FC8 00033C28  7C 08 03 A6 */	mtlr r0
/* 80037FCC 00033C2C  38 21 00 10 */	addi r1, r1, 0x10
/* 80037FD0 00033C30  4E 80 00 20 */	blr

.global func_80037FD4
func_80037FD4:
/* 80037FD4 00033C34  2C 04 00 00 */	cmpwi r4, 0
/* 80037FD8 00033C38  41 82 00 14 */	beq lbl_80037FEC
/* 80037FDC 00033C3C  80 03 00 00 */	lwz r0, 0(r3)
/* 80037FE0 00033C40  60 00 00 02 */	ori r0, r0, 2
/* 80037FE4 00033C44  90 03 00 00 */	stw r0, 0(r3)
/* 80037FE8 00033C48  48 00 00 10 */	b lbl_80037FF8
lbl_80037FEC:
/* 80037FEC 00033C4C  80 03 00 00 */	lwz r0, 0(r3)
/* 80037FF0 00033C50  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80037FF4 00033C54  90 03 00 00 */	stw r0, 0(r3)
lbl_80037FF8:
/* 80037FF8 00033C58  2C 05 00 00 */	cmpwi r5, 0
/* 80037FFC 00033C5C  41 82 00 14 */	beq lbl_80038010
/* 80038000 00033C60  80 03 00 00 */	lwz r0, 0(r3)
/* 80038004 00033C64  60 00 00 04 */	ori r0, r0, 4
/* 80038008 00033C68  90 03 00 00 */	stw r0, 0(r3)
/* 8003800C 00033C6C  48 00 00 10 */	b lbl_8003801C
lbl_80038010:
/* 80038010 00033C70  80 03 00 00 */	lwz r0, 0(r3)
/* 80038014 00033C74  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80038018 00033C78  90 03 00 00 */	stw r0, 0(r3)
lbl_8003801C:
/* 8003801C 00033C7C  48 00 00 04 */	b func_80038020

.global func_80038020
func_80038020:
/* 80038020 00033C80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80038024 00033C84  7C 08 02 A6 */	mflr r0
/* 80038028 00033C88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003802C 00033C8C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80038030 00033C90  93 C1 00 08 */	stw r30, 8(r1)
/* 80038034 00033C94  7C 7E 1B 78 */	mr r30, r3
/* 80038038 00033C98  4B FF B0 51 */	bl func_80033088
/* 8003803C 00033C9C  2C 03 00 00 */	cmpwi r3, 0
/* 80038040 00033CA0  7C 7F 1B 78 */	mr r31, r3
/* 80038044 00033CA4  41 82 03 20 */	beq lbl_80038364
/* 80038048 00033CA8  80 BE 0C 04 */	lwz r5, 0xc04(r30)
/* 8003804C 00033CAC  2C 05 00 00 */	cmpwi r5, 0
/* 80038050 00033CB0  41 82 03 14 */	beq lbl_80038364
/* 80038054 00033CB4  80 7E 00 00 */	lwz r3, 0(r30)
/* 80038058 00033CB8  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8003805C 00033CBC  41 82 00 14 */	beq lbl_80038070
/* 80038060 00033CC0  54 60 07 7D */	rlwinm. r0, r3, 0, 0x1d, 0x1e
/* 80038064 00033CC4  41 82 00 0C */	beq lbl_80038070
/* 80038068 00033CC8  54 60 02 53 */	rlwinm. r0, r3, 0, 9, 9
/* 8003806C 00033CCC  41 82 00 80 */	beq lbl_800380EC
lbl_80038070:
/* 80038070 00033CD0  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80038074 00033CD4  38 7E 05 24 */	addi r3, r30, 0x524
/* 80038078 00033CD8  38 80 00 00 */	li r4, 0
/* 8003807C 00033CDC  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 80038080 00033CE0  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 80038084 00033CE4  48 00 7E 6D */	bl func_8003FEF0
/* 80038088 00033CE8  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 8003808C 00033CEC  2C 03 00 00 */	cmpwi r3, 0
/* 80038090 00033CF0  41 82 00 10 */	beq lbl_800380A0
/* 80038094 00033CF4  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038098 00033CF8  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8003809C 00033CFC  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800380A0:
/* 800380A0 00033D00  80 7E 0C 94 */	lwz r3, 0xc94(r30)
/* 800380A4 00033D04  2C 03 00 00 */	cmpwi r3, 0
/* 800380A8 00033D08  41 82 00 10 */	beq lbl_800380B8
/* 800380AC 00033D0C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800380B0 00033D10  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800380B4 00033D14  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800380B8:
/* 800380B8 00033D18  80 7E 0C 98 */	lwz r3, 0xc98(r30)
/* 800380BC 00033D1C  2C 03 00 00 */	cmpwi r3, 0
/* 800380C0 00033D20  41 82 00 10 */	beq lbl_800380D0
/* 800380C4 00033D24  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800380C8 00033D28  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800380CC 00033D2C  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800380D0:
/* 800380D0 00033D30  80 7E 0C 9C */	lwz r3, 0xc9c(r30)
/* 800380D4 00033D34  2C 03 00 00 */	cmpwi r3, 0
/* 800380D8 00033D38  41 82 02 8C */	beq lbl_80038364
/* 800380DC 00033D3C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800380E0 00033D40  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800380E4 00033D44  B0 03 00 10 */	sth r0, 0x10(r3)
/* 800380E8 00033D48  48 00 02 7C */	b lbl_80038364
lbl_800380EC:
/* 800380EC 00033D4C  54 60 03 19 */	rlwinm. r0, r3, 0, 0xc, 0xc
/* 800380F0 00033D50  40 82 00 0C */	bne lbl_800380FC
/* 800380F4 00033D54  54 60 02 D7 */	rlwinm. r0, r3, 0, 0xb, 0xb
/* 800380F8 00033D58  41 82 00 E8 */	beq lbl_800381E0
lbl_800380FC:
/* 800380FC 00033D5C  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80038100 00033D60  38 7E 05 24 */	addi r3, r30, 0x524
/* 80038104 00033D64  38 80 00 00 */	li r4, 0
/* 80038108 00033D68  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 8003810C 00033D6C  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 80038110 00033D70  48 00 7D E1 */	bl func_8003FEF0
/* 80038114 00033D74  38 00 00 02 */	li r0, 2
/* 80038118 00033D78  38 80 00 00 */	li r4, 0
/* 8003811C 00033D7C  7C 09 03 A6 */	mtctr r0
lbl_80038120:
/* 80038120 00033D80  3C 64 00 01 */	addis r3, r4, 1
/* 80038124 00033D84  38 03 FF FF */	addi r0, r3, -1
/* 80038128 00033D88  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 8003812C 00033D8C  28 00 00 01 */	cmplwi r0, 1
/* 80038130 00033D90  41 81 00 28 */	bgt lbl_80038158
/* 80038134 00033D94  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 80038138 00033D98  7C 7E 02 14 */	add r3, r30, r0
/* 8003813C 00033D9C  80 63 0C 90 */	lwz r3, 0xc90(r3)
/* 80038140 00033DA0  2C 03 00 00 */	cmpwi r3, 0
/* 80038144 00033DA4  41 82 00 34 */	beq lbl_80038178
/* 80038148 00033DA8  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 8003814C 00033DAC  60 00 00 02 */	ori r0, r0, 2
/* 80038150 00033DB0  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80038154 00033DB4  48 00 00 24 */	b lbl_80038178
lbl_80038158:
/* 80038158 00033DB8  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 8003815C 00033DBC  7C 7E 02 14 */	add r3, r30, r0
/* 80038160 00033DC0  80 63 0C 90 */	lwz r3, 0xc90(r3)
/* 80038164 00033DC4  2C 03 00 00 */	cmpwi r3, 0
/* 80038168 00033DC8  41 82 00 10 */	beq lbl_80038178
/* 8003816C 00033DCC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038170 00033DD0  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80038174 00033DD4  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80038178:
/* 80038178 00033DD8  38 84 00 01 */	addi r4, r4, 1
/* 8003817C 00033DDC  3C 64 00 01 */	addis r3, r4, 1
/* 80038180 00033DE0  38 03 FF FF */	addi r0, r3, -1
/* 80038184 00033DE4  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80038188 00033DE8  28 00 00 01 */	cmplwi r0, 1
/* 8003818C 00033DEC  41 81 00 28 */	bgt lbl_800381B4
/* 80038190 00033DF0  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 80038194 00033DF4  7C 7E 02 14 */	add r3, r30, r0
/* 80038198 00033DF8  80 63 0C 90 */	lwz r3, 0xc90(r3)
/* 8003819C 00033DFC  2C 03 00 00 */	cmpwi r3, 0
/* 800381A0 00033E00  41 82 00 34 */	beq lbl_800381D4
/* 800381A4 00033E04  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800381A8 00033E08  60 00 00 02 */	ori r0, r0, 2
/* 800381AC 00033E0C  B0 03 00 10 */	sth r0, 0x10(r3)
/* 800381B0 00033E10  48 00 00 24 */	b lbl_800381D4
lbl_800381B4:
/* 800381B4 00033E14  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 800381B8 00033E18  7C 7E 02 14 */	add r3, r30, r0
/* 800381BC 00033E1C  80 63 0C 90 */	lwz r3, 0xc90(r3)
/* 800381C0 00033E20  2C 03 00 00 */	cmpwi r3, 0
/* 800381C4 00033E24  41 82 00 10 */	beq lbl_800381D4
/* 800381C8 00033E28  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800381CC 00033E2C  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800381D0 00033E30  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800381D4:
/* 800381D4 00033E34  38 84 00 01 */	addi r4, r4, 1
/* 800381D8 00033E38  42 00 FF 48 */	bdnz lbl_80038120
/* 800381DC 00033E3C  48 00 00 7C */	b lbl_80038258
lbl_800381E0:
/* 800381E0 00033E40  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 800381E4 00033E44  38 7E 05 24 */	addi r3, r30, 0x524
/* 800381E8 00033E48  38 80 00 01 */	li r4, 1
/* 800381EC 00033E4C  60 00 00 01 */	ori r0, r0, 1
/* 800381F0 00033E50  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 800381F4 00033E54  48 00 7C FD */	bl func_8003FEF0
/* 800381F8 00033E58  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 800381FC 00033E5C  2C 03 00 00 */	cmpwi r3, 0
/* 80038200 00033E60  41 82 00 10 */	beq lbl_80038210
/* 80038204 00033E64  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038208 00033E68  60 00 00 02 */	ori r0, r0, 2
/* 8003820C 00033E6C  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80038210:
/* 80038210 00033E70  80 7E 0C 94 */	lwz r3, 0xc94(r30)
/* 80038214 00033E74  2C 03 00 00 */	cmpwi r3, 0
/* 80038218 00033E78  41 82 00 10 */	beq lbl_80038228
/* 8003821C 00033E7C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038220 00033E80  60 00 00 02 */	ori r0, r0, 2
/* 80038224 00033E84  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80038228:
/* 80038228 00033E88  80 7E 0C 98 */	lwz r3, 0xc98(r30)
/* 8003822C 00033E8C  2C 03 00 00 */	cmpwi r3, 0
/* 80038230 00033E90  41 82 00 10 */	beq lbl_80038240
/* 80038234 00033E94  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038238 00033E98  60 00 00 02 */	ori r0, r0, 2
/* 8003823C 00033E9C  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80038240:
/* 80038240 00033EA0  80 7E 0C 9C */	lwz r3, 0xc9c(r30)
/* 80038244 00033EA4  2C 03 00 00 */	cmpwi r3, 0
/* 80038248 00033EA8  41 82 00 10 */	beq lbl_80038258
/* 8003824C 00033EAC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038250 00033EB0  60 00 00 02 */	ori r0, r0, 2
/* 80038254 00033EB4  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_80038258:
/* 80038258 00033EB8  80 7E 00 00 */	lwz r3, 0(r30)
/* 8003825C 00033EBC  54 60 07 7C */	rlwinm r0, r3, 0, 0x1d, 0x1e
/* 80038260 00033EC0  28 00 00 06 */	cmplwi r0, 6
/* 80038264 00033EC4  40 82 00 60 */	bne lbl_800382C4
/* 80038268 00033EC8  80 BE 0C 04 */	lwz r5, 0xc04(r30)
/* 8003826C 00033ECC  3B E0 00 00 */	li r31, 0
/* 80038270 00033ED0  38 7E 05 24 */	addi r3, r30, 0x524
/* 80038274 00033ED4  38 80 00 00 */	li r4, 0
/* 80038278 00033ED8  93 E5 00 3C */	stw r31, 0x3c(r5)
/* 8003827C 00033EDC  48 00 7D D9 */	bl func_80040054
/* 80038280 00033EE0  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 80038284 00033EE4  2C 03 00 00 */	cmpwi r3, 0
/* 80038288 00033EE8  41 82 00 08 */	beq lbl_80038290
/* 8003828C 00033EEC  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_80038290:
/* 80038290 00033EF0  80 7E 0C 94 */	lwz r3, 0xc94(r30)
/* 80038294 00033EF4  2C 03 00 00 */	cmpwi r3, 0
/* 80038298 00033EF8  41 82 00 08 */	beq lbl_800382A0
/* 8003829C 00033EFC  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_800382A0:
/* 800382A0 00033F00  80 7E 0C 98 */	lwz r3, 0xc98(r30)
/* 800382A4 00033F04  2C 03 00 00 */	cmpwi r3, 0
/* 800382A8 00033F08  41 82 00 08 */	beq lbl_800382B0
/* 800382AC 00033F0C  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_800382B0:
/* 800382B0 00033F10  80 7E 0C 9C */	lwz r3, 0xc9c(r30)
/* 800382B4 00033F14  2C 03 00 00 */	cmpwi r3, 0
/* 800382B8 00033F18  41 82 00 AC */	beq lbl_80038364
/* 800382BC 00033F1C  93 E3 01 2C */	stw r31, 0x12c(r3)
/* 800382C0 00033F20  48 00 00 A4 */	b lbl_80038364
lbl_800382C4:
/* 800382C4 00033F24  54 60 07 BD */	rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 800382C8 00033F28  38 80 00 00 */	li r4, 0
/* 800382CC 00033F2C  41 82 00 0C */	beq lbl_800382D8
/* 800382D0 00033F30  38 80 00 00 */	li r4, 0
/* 800382D4 00033F34  48 00 00 10 */	b lbl_800382E4
lbl_800382D8:
/* 800382D8 00033F38  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 800382DC 00033F3C  41 82 00 08 */	beq lbl_800382E4
/* 800382E0 00033F40  38 80 00 01 */	li r4, 1
lbl_800382E4:
/* 800382E4 00033F44  7F E3 FB 78 */	mr r3, r31
/* 800382E8 00033F48  4B FF B8 95 */	bl func_80033B7C
/* 800382EC 00033F4C  2C 03 00 00 */	cmpwi r3, 0
/* 800382F0 00033F50  41 82 00 74 */	beq lbl_80038364
/* 800382F4 00033F54  4B FF D6 7D */	bl func_80035970
/* 800382F8 00033F58  80 BE 0C 04 */	lwz r5, 0xc04(r30)
/* 800382FC 00033F5C  7C 7F 1B 78 */	mr r31, r3
/* 80038300 00033F60  7F E4 FB 78 */	mr r4, r31
/* 80038304 00033F64  90 65 00 3C */	stw r3, 0x3c(r5)
/* 80038308 00033F68  38 7E 05 24 */	addi r3, r30, 0x524
/* 8003830C 00033F6C  48 00 7D 49 */	bl func_80040054
/* 80038310 00033F70  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 80038314 00033F74  2C 03 00 00 */	cmpwi r3, 0
/* 80038318 00033F78  41 82 00 08 */	beq lbl_80038320
/* 8003831C 00033F7C  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_80038320:
/* 80038320 00033F80  80 7E 0C 94 */	lwz r3, 0xc94(r30)
/* 80038324 00033F84  2C 03 00 00 */	cmpwi r3, 0
/* 80038328 00033F88  41 82 00 08 */	beq lbl_80038330
/* 8003832C 00033F8C  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_80038330:
/* 80038330 00033F90  80 7E 0C 98 */	lwz r3, 0xc98(r30)
/* 80038334 00033F94  2C 03 00 00 */	cmpwi r3, 0
/* 80038338 00033F98  41 82 00 08 */	beq lbl_80038340
/* 8003833C 00033F9C  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_80038340:
/* 80038340 00033FA0  80 7E 0C 9C */	lwz r3, 0xc9c(r30)
/* 80038344 00033FA4  2C 03 00 00 */	cmpwi r3, 0
/* 80038348 00033FA8  41 82 00 08 */	beq lbl_80038350
/* 8003834C 00033FAC  93 E3 01 2C */	stw r31, 0x12c(r3)
lbl_80038350:
/* 80038350 00033FB0  80 1E 00 00 */	lwz r0, 0(r30)
/* 80038354 00033FB4  7F C3 F3 78 */	mr r3, r30
/* 80038358 00033FB8  54 05 F7 FE */	rlwinm r5, r0, 0x1e, 0x1f, 0x1f
/* 8003835C 00033FBC  54 04 FF FE */	rlwinm r4, r0, 0x1f, 0x1f, 0x1f
/* 80038360 00033FC0  48 00 5B 31 */	bl func_8003DE90
lbl_80038364:
/* 80038364 00033FC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80038368 00033FC8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003836C 00033FCC  83 C1 00 08 */	lwz r30, 8(r1)
/* 80038370 00033FD0  7C 08 03 A6 */	mtlr r0
/* 80038374 00033FD4  38 21 00 10 */	addi r1, r1, 0x10
/* 80038378 00033FD8  4E 80 00 20 */	blr

.global func_8003837C
func_8003837C:
/* 8003837C 00033FDC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80038380 00033FE0  7C 08 02 A6 */	mflr r0
/* 80038384 00033FE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80038388 00033FE8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003838C 00033FEC  7C 7F 1B 78 */	mr r31, r3
/* 80038390 00033FF0  80 C3 0C 04 */	lwz r6, 0xc04(r3)
/* 80038394 00033FF4  2C 06 00 00 */	cmpwi r6, 0
/* 80038398 00033FF8  41 82 01 6C */	beq lbl_80038504
/* 8003839C 00033FFC  80 A3 00 00 */	lwz r5, 0(r3)
/* 800383A0 00034000  54 A0 02 D7 */	rlwinm. r0, r5, 0, 0xb, 0xb
/* 800383A4 00034004  40 82 00 0C */	bne lbl_800383B0
/* 800383A8 00034008  54 A0 03 19 */	rlwinm. r0, r5, 0, 0xc, 0xc
/* 800383AC 0003400C  41 82 01 58 */	beq lbl_80038504
lbl_800383B0:
/* 800383B0 00034010  2C 04 00 00 */	cmpwi r4, 0
/* 800383B4 00034014  41 82 00 CC */	beq lbl_80038480
/* 800383B8 00034018  A0 06 00 DC */	lhz r0, 0xdc(r6)
/* 800383BC 0003401C  38 80 00 01 */	li r4, 1
/* 800383C0 00034020  38 63 05 24 */	addi r3, r3, 0x524
/* 800383C4 00034024  60 00 00 01 */	ori r0, r0, 1
/* 800383C8 00034028  B0 06 00 DC */	sth r0, 0xdc(r6)
/* 800383CC 0003402C  48 00 7B 25 */	bl func_8003FEF0
/* 800383D0 00034030  38 00 00 02 */	li r0, 2
/* 800383D4 00034034  38 A0 00 00 */	li r5, 0
/* 800383D8 00034038  7C 09 03 A6 */	mtctr r0
lbl_800383DC:
/* 800383DC 0003403C  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 800383E0 00034040  7C 7F 02 14 */	add r3, r31, r0
/* 800383E4 00034044  80 83 0C 90 */	lwz r4, 0xc90(r3)
/* 800383E8 00034048  2C 04 00 00 */	cmpwi r4, 0
/* 800383EC 0003404C  41 82 00 34 */	beq lbl_80038420
/* 800383F0 00034050  3C 65 00 01 */	addis r3, r5, 1
/* 800383F4 00034054  38 03 FF FF */	addi r0, r3, -1
/* 800383F8 00034058  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 800383FC 0003405C  28 00 00 01 */	cmplwi r0, 1
/* 80038400 00034060  41 81 00 14 */	bgt lbl_80038414
/* 80038404 00034064  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80038408 00034068  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8003840C 0003406C  B0 04 00 10 */	sth r0, 0x10(r4)
/* 80038410 00034070  48 00 00 10 */	b lbl_80038420
lbl_80038414:
/* 80038414 00034074  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80038418 00034078  60 00 00 02 */	ori r0, r0, 2
/* 8003841C 0003407C  B0 04 00 10 */	sth r0, 0x10(r4)
lbl_80038420:
/* 80038420 00034080  38 A5 00 01 */	addi r5, r5, 1
/* 80038424 00034084  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 80038428 00034088  7C 7F 02 14 */	add r3, r31, r0
/* 8003842C 0003408C  80 83 0C 90 */	lwz r4, 0xc90(r3)
/* 80038430 00034090  2C 04 00 00 */	cmpwi r4, 0
/* 80038434 00034094  41 82 00 34 */	beq lbl_80038468
/* 80038438 00034098  3C 65 00 01 */	addis r3, r5, 1
/* 8003843C 0003409C  38 03 FF FF */	addi r0, r3, -1
/* 80038440 000340A0  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80038444 000340A4  28 00 00 01 */	cmplwi r0, 1
/* 80038448 000340A8  41 81 00 14 */	bgt lbl_8003845C
/* 8003844C 000340AC  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80038450 000340B0  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80038454 000340B4  B0 04 00 10 */	sth r0, 0x10(r4)
/* 80038458 000340B8  48 00 00 10 */	b lbl_80038468
lbl_8003845C:
/* 8003845C 000340BC  A0 04 00 10 */	lhz r0, 0x10(r4)
/* 80038460 000340C0  60 00 00 02 */	ori r0, r0, 2
/* 80038464 000340C4  B0 04 00 10 */	sth r0, 0x10(r4)
lbl_80038468:
/* 80038468 000340C8  38 A5 00 01 */	addi r5, r5, 1
/* 8003846C 000340CC  42 00 FF 70 */	bdnz lbl_800383DC
/* 80038470 000340D0  80 1F 00 00 */	lwz r0, 0(r31)
/* 80038474 000340D4  60 00 00 01 */	ori r0, r0, 1
/* 80038478 000340D8  90 1F 00 00 */	stw r0, 0(r31)
/* 8003847C 000340DC  48 00 00 88 */	b lbl_80038504
lbl_80038480:
/* 80038480 000340E0  A0 06 00 DC */	lhz r0, 0xdc(r6)
/* 80038484 000340E4  38 80 00 00 */	li r4, 0
/* 80038488 000340E8  38 63 05 24 */	addi r3, r3, 0x524
/* 8003848C 000340EC  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 80038490 000340F0  B0 06 00 DC */	sth r0, 0xdc(r6)
/* 80038494 000340F4  48 00 7A 5D */	bl func_8003FEF0
/* 80038498 000340F8  80 7F 0C 90 */	lwz r3, 0xc90(r31)
/* 8003849C 000340FC  2C 03 00 00 */	cmpwi r3, 0
/* 800384A0 00034100  41 82 00 10 */	beq lbl_800384B0
/* 800384A4 00034104  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800384A8 00034108  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800384AC 0003410C  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800384B0:
/* 800384B0 00034110  80 7F 0C 94 */	lwz r3, 0xc94(r31)
/* 800384B4 00034114  2C 03 00 00 */	cmpwi r3, 0
/* 800384B8 00034118  41 82 00 10 */	beq lbl_800384C8
/* 800384BC 0003411C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800384C0 00034120  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800384C4 00034124  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800384C8:
/* 800384C8 00034128  80 7F 0C 98 */	lwz r3, 0xc98(r31)
/* 800384CC 0003412C  2C 03 00 00 */	cmpwi r3, 0
/* 800384D0 00034130  41 82 00 10 */	beq lbl_800384E0
/* 800384D4 00034134  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800384D8 00034138  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800384DC 0003413C  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800384E0:
/* 800384E0 00034140  80 7F 0C 9C */	lwz r3, 0xc9c(r31)
/* 800384E4 00034144  2C 03 00 00 */	cmpwi r3, 0
/* 800384E8 00034148  41 82 00 10 */	beq lbl_800384F8
/* 800384EC 0003414C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800384F0 00034150  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 800384F4 00034154  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_800384F8:
/* 800384F8 00034158  80 1F 00 00 */	lwz r0, 0(r31)
/* 800384FC 0003415C  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 80038500 00034160  90 1F 00 00 */	stw r0, 0(r31)
lbl_80038504:
/* 80038504 00034164  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80038508 00034168  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003850C 0003416C  7C 08 03 A6 */	mtlr r0
/* 80038510 00034170  38 21 00 10 */	addi r1, r1, 0x10
/* 80038514 00034174  4E 80 00 20 */	blr

.global func_80038518
func_80038518:
/* 80038518 00034178  2C 04 00 00 */	cmpwi r4, 0
/* 8003851C 0003417C  4D 82 00 20 */	beqlr
/* 80038520 00034180  38 A0 00 1F */	li r5, 0x1f
/* 80038524 00034184  38 63 0D 94 */	addi r3, r3, 0xd94
/* 80038528 00034188  48 19 5E 68 */	b strncpy
/* 8003852C 0003418C  4E 80 00 20 */	blr

.global func_80038530
func_80038530:
/* 80038530 00034190  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80038534 00034194  7C 08 02 A6 */	mflr r0
/* 80038538 00034198  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003853C 0003419C  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80038540 000341A0  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80038544 000341A4  2C 04 01 00 */	cmpwi r4, 0x100
/* 80038548 000341A8  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003854C 000341AC  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80038550 000341B0  7C 7F 1B 78 */	mr r31, r3
/* 80038554 000341B4  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80038558 000341B8  93 A1 00 34 */	stw r29, 0x34(r1)
/* 8003855C 000341BC  7C 9D 23 78 */	mr r29, r4
/* 80038560 000341C0  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80038564 000341C4  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80038568 000341C8  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8003856C 000341CC  D0 01 00 08 */	stfs f0, 8(r1)
/* 80038570 000341D0  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80038574 000341D4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80038578 000341D8  B0 83 0C 68 */	sth r4, 0xc68(r3)
/* 8003857C 000341DC  40 82 00 1C */	bne lbl_80038598
/* 80038580 000341E0  38 81 00 14 */	addi r4, r1, 0x14
/* 80038584 000341E4  48 00 03 41 */	bl func_800388C4
/* 80038588 000341E8  7F E3 FB 78 */	mr r3, r31
/* 8003858C 000341EC  38 81 00 08 */	addi r4, r1, 8
/* 80038590 000341F0  48 00 05 41 */	bl func_80038AD0
/* 80038594 000341F4  48 00 02 28 */	b lbl_800387BC
lbl_80038598:
/* 80038598 000341F8  48 00 CF F9 */	bl func_80045590
/* 8003859C 000341FC  7C 7E 1B 78 */	mr r30, r3
/* 800385A0 00034200  38 80 00 00 */	li r4, 0
/* 800385A4 00034204  48 00 D7 59 */	bl func_80045CFC
/* 800385A8 00034208  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800385AC 0003420C  57 A0 06 31 */	rlwinm. r0, r29, 0, 0x18, 0x18
/* 800385B0 00034210  D0 1F 0D 80 */	stfs f0, 0xd80(r31)
/* 800385B4 00034214  40 82 01 7C */	bne lbl_80038730
/* 800385B8 00034218  7F C3 F3 78 */	mr r3, r30
/* 800385BC 0003421C  7F A4 EB 78 */	mr r4, r29
/* 800385C0 00034220  38 A1 00 14 */	addi r5, r1, 0x14
/* 800385C4 00034224  38 C1 00 0C */	addi r6, r1, 0xc
/* 800385C8 00034228  38 E0 00 01 */	li r7, 1
/* 800385CC 0003422C  48 00 D6 4D */	bl func_80045C18
/* 800385D0 00034230  2C 03 00 00 */	cmpwi r3, 0
/* 800385D4 00034234  41 82 01 E8 */	beq lbl_800387BC
/* 800385D8 00034238  80 7F 00 00 */	lwz r3, 0(r31)
/* 800385DC 0003423C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800385E0 00034240  54 60 04 E7 */	rlwinm. r0, r3, 0, 0x13, 0x13
/* 800385E4 00034244  54 60 02 D2 */	rlwinm r0, r3, 0, 0xb, 9
/* 800385E8 00034248  D0 1F 0D 78 */	stfs f0, 0xd78(r31)
/* 800385EC 0003424C  90 1F 00 00 */	stw r0, 0(r31)
/* 800385F0 00034250  41 82 00 44 */	beq lbl_80038634
/* 800385F4 00034254  7F E3 FB 78 */	mr r3, r31
/* 800385F8 00034258  38 80 00 00 */	li r4, 0
/* 800385FC 0003425C  48 00 3C 61 */	bl func_8003C25C
/* 80038600 00034260  54 7E 04 3E */	clrlwi r30, r3, 0x10
/* 80038604 00034264  7F E3 FB 78 */	mr r3, r31
/* 80038608 00034268  38 80 00 0A */	li r4, 0xa
/* 8003860C 0003426C  48 00 3C 51 */	bl func_8003C25C
/* 80038610 00034270  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80038614 00034274  7C 00 F0 40 */	cmplw r0, r30
/* 80038618 00034278  41 82 00 0C */	beq lbl_80038624
/* 8003861C 0003427C  3B C0 00 0A */	li r30, 0xa
/* 80038620 00034280  48 00 00 20 */	b lbl_80038640
lbl_80038624:
/* 80038624 00034284  C0 02 82 5C */	lfs f0, lbl_8064085C-_SDA2_BASE_(r2)
/* 80038628 00034288  3B C0 00 00 */	li r30, 0
/* 8003862C 0003428C  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80038630 00034290  48 00 00 10 */	b lbl_80038640
lbl_80038634:
/* 80038634 00034294  54 00 4F FE */	rlwinm r0, r0, 9, 0x1f, 0x1f
/* 80038638 00034298  7C 00 00 D0 */	neg r0, r0
/* 8003863C 0003429C  54 1E 06 F6 */	rlwinm r30, r0, 0, 0x1b, 0x1b
lbl_80038640:
/* 80038640 000342A0  7F E3 FB 78 */	mr r3, r31
/* 80038644 000342A4  57 C4 06 3E */	clrlwi r4, r30, 0x18
/* 80038648 000342A8  38 A0 00 02 */	li r5, 2
/* 8003864C 000342AC  48 00 17 75 */	bl func_80039DC0
/* 80038650 000342B0  57 A0 F0 02 */	slwi r0, r29, 0x1e
/* 80038654 000342B4  57 A4 0F FE */	srwi r4, r29, 0x1f
/* 80038658 000342B8  7C 64 00 50 */	subf r3, r4, r0
/* 8003865C 000342BC  C0 02 82 60 */	lfs f0, lbl_80640860-_SDA2_BASE_(r2)
/* 80038660 000342C0  54 63 10 3E */	rotlwi r3, r3, 2
/* 80038664 000342C4  3C 00 43 30 */	lis r0, 0x4330
/* 80038668 000342C8  7C 63 22 14 */	add r3, r3, r4
/* 8003866C 000342CC  90 01 00 20 */	stw r0, 0x20(r1)
/* 80038670 000342D0  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80038674 000342D4  C8 42 82 68 */	lfd f2, lbl_80640868-_SDA2_BASE_(r2)
/* 80038678 000342D8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003867C 000342DC  EC 20 00 72 */	fmuls f1, f0, f1
/* 80038680 000342E0  7F E3 FB 78 */	mr r3, r31
/* 80038684 000342E4  57 C4 06 3E */	clrlwi r4, r30, 0x18
/* 80038688 000342E8  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 8003868C 000342EC  EC 00 10 28 */	fsubs f0, f0, f2
/* 80038690 000342F0  EC 20 00 72 */	fmuls f1, f0, f1
/* 80038694 000342F4  48 00 0B 6D */	bl func_80039200
/* 80038698 000342F8  7F E3 FB 78 */	mr r3, r31
/* 8003869C 000342FC  38 81 00 08 */	addi r4, r1, 8
/* 800386A0 00034300  48 00 04 31 */	bl func_80038AD0
/* 800386A4 00034304  7F E3 FB 78 */	mr r3, r31
/* 800386A8 00034308  38 81 00 14 */	addi r4, r1, 0x14
/* 800386AC 0003430C  48 00 02 19 */	bl func_800388C4
/* 800386B0 00034310  80 7F 00 00 */	lwz r3, 0(r31)
/* 800386B4 00034314  54 60 02 D7 */	rlwinm. r0, r3, 0, 0xb, 0xb
/* 800386B8 00034318  40 82 00 0C */	bne lbl_800386C4
/* 800386BC 0003431C  54 60 03 19 */	rlwinm. r0, r3, 0, 0xc, 0xc
/* 800386C0 00034320  41 82 00 FC */	beq lbl_800387BC
lbl_800386C4:
/* 800386C4 00034324  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
/* 800386C8 00034328  3B A0 00 00 */	li r29, 0
lbl_800386CC:
/* 800386CC 0003432C  57 A0 13 BA */	rlwinm r0, r29, 2, 0xe, 0x1d
/* 800386D0 00034330  7F DF 02 14 */	add r30, r31, r0
/* 800386D4 00034334  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 800386D8 00034338  2C 03 00 00 */	cmpwi r3, 0
/* 800386DC 0003433C  41 82 00 44 */	beq lbl_80038720
/* 800386E0 00034340  3C 9D 00 01 */	addis r4, r29, 1
/* 800386E4 00034344  38 04 FF FF */	addi r0, r4, -1
/* 800386E8 00034348  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 800386EC 0003434C  28 00 00 01 */	cmplwi r0, 1
/* 800386F0 00034350  41 81 00 30 */	bgt lbl_80038720
/* 800386F4 00034354  81 83 01 00 */	lwz r12, 0x100(r3)
/* 800386F8 00034358  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 800386FC 0003435C  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 80038700 00034360  7D 89 03 A6 */	mtctr r12
/* 80038704 00034364  4E 80 04 21 */	bctrl
/* 80038708 00034368  80 7E 0C 90 */	lwz r3, 0xc90(r30)
/* 8003870C 0003436C  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80038710 00034370  60 00 00 01 */	ori r0, r0, 1
/* 80038714 00034374  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80038718 00034378  90 03 01 04 */	stw r0, 0x104(r3)
/* 8003871C 0003437C  D3 E3 01 08 */	stfs f31, 0x108(r3)
lbl_80038720:
/* 80038720 00034380  3B BD 00 01 */	addi r29, r29, 1
/* 80038724 00034384  28 1D 00 04 */	cmplwi r29, 4
/* 80038728 00034388  41 80 FF A4 */	blt lbl_800386CC
/* 8003872C 0003438C  48 00 00 90 */	b lbl_800387BC
lbl_80038730:
/* 80038730 00034390  7F C3 F3 78 */	mr r3, r30
/* 80038734 00034394  57 A4 07 BE */	clrlwi r4, r29, 0x1e
/* 80038738 00034398  38 A1 00 14 */	addi r5, r1, 0x14
/* 8003873C 0003439C  38 C1 00 0C */	addi r6, r1, 0xc
/* 80038740 000343A0  48 00 D4 49 */	bl func_80045B88
/* 80038744 000343A4  2C 03 00 00 */	cmpwi r3, 0
/* 80038748 000343A8  41 82 00 74 */	beq lbl_800387BC
/* 8003874C 000343AC  7F E3 FB 78 */	mr r3, r31
/* 80038750 000343B0  38 80 00 00 */	li r4, 0
/* 80038754 000343B4  38 A0 00 02 */	li r5, 2
/* 80038758 000343B8  48 00 16 69 */	bl func_80039DC0
/* 8003875C 000343BC  57 A0 F0 02 */	slwi r0, r29, 0x1e
/* 80038760 000343C0  57 A4 0F FE */	srwi r4, r29, 0x1f
/* 80038764 000343C4  7C 64 00 50 */	subf r3, r4, r0
/* 80038768 000343C8  C0 02 82 64 */	lfs f0, lbl_80640864-_SDA2_BASE_(r2)
/* 8003876C 000343CC  54 63 10 3E */	rotlwi r3, r3, 2
/* 80038770 000343D0  3C 00 43 30 */	lis r0, 0x4330
/* 80038774 000343D4  7C 63 22 14 */	add r3, r3, r4
/* 80038778 000343D8  90 01 00 20 */	stw r0, 0x20(r1)
/* 8003877C 000343DC  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 80038780 000343E0  C8 42 82 68 */	lfd f2, lbl_80640868-_SDA2_BASE_(r2)
/* 80038784 000343E4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80038788 000343E8  EC 20 00 72 */	fmuls f1, f0, f1
/* 8003878C 000343EC  7F E3 FB 78 */	mr r3, r31
/* 80038790 000343F0  38 80 00 00 */	li r4, 0
/* 80038794 000343F4  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 80038798 000343F8  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003879C 000343FC  EC 20 00 72 */	fmuls f1, f0, f1
/* 800387A0 00034400  48 00 0A 61 */	bl func_80039200
/* 800387A4 00034404  7F E3 FB 78 */	mr r3, r31
/* 800387A8 00034408  38 81 00 08 */	addi r4, r1, 8
/* 800387AC 0003440C  48 00 03 25 */	bl func_80038AD0
/* 800387B0 00034410  7F E3 FB 78 */	mr r3, r31
/* 800387B4 00034414  38 81 00 14 */	addi r4, r1, 0x14
/* 800387B8 00034418  48 00 01 0D */	bl func_800388C4
lbl_800387BC:
/* 800387BC 0003441C  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 800387C0 00034420  80 01 00 54 */	lwz r0, 0x54(r1)
/* 800387C4 00034424  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 800387C8 00034428  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 800387CC 0003442C  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 800387D0 00034430  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 800387D4 00034434  7C 08 03 A6 */	mtlr r0
/* 800387D8 00034438  38 21 00 50 */	addi r1, r1, 0x50
/* 800387DC 0003443C  4E 80 00 20 */	blr

.global func_800387E0
func_800387E0:
/* 800387E0 00034440  80 04 0C 04 */	lwz r0, 0xc04(r4)
/* 800387E4 00034444  2C 00 00 00 */	cmpwi r0, 0
/* 800387E8 00034448  41 82 00 20 */	beq lbl_80038808
/* 800387EC 0003444C  C0 44 0C BC */	lfs f2, 0xcbc(r4)
/* 800387F0 00034450  C0 24 0C B8 */	lfs f1, 0xcb8(r4)
/* 800387F4 00034454  C0 04 0C B4 */	lfs f0, 0xcb4(r4)
/* 800387F8 00034458  D0 03 00 00 */	stfs f0, 0(r3)
/* 800387FC 0003445C  D0 23 00 04 */	stfs f1, 4(r3)
/* 80038800 00034460  D0 43 00 08 */	stfs f2, 8(r3)
/* 80038804 00034464  4E 80 00 20 */	blr
lbl_80038808:
/* 80038808 00034468  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003880C 0003446C  D0 03 00 00 */	stfs f0, 0(r3)
/* 80038810 00034470  D0 03 00 04 */	stfs f0, 4(r3)
/* 80038814 00034474  D0 03 00 08 */	stfs f0, 8(r3)
/* 80038818 00034478  4E 80 00 20 */	blr

.global func_8003881C
func_8003881C:
/* 8003881C 0003447C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80038820 00034480  7C 08 02 A6 */	mflr r0
/* 80038824 00034484  90 01 00 14 */	stw r0, 0x14(r1)
/* 80038828 00034488  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003882C 0003448C  7C 9F 23 78 */	mr r31, r4
/* 80038830 00034490  93 C1 00 08 */	stw r30, 8(r1)
/* 80038834 00034494  7C 7E 1B 78 */	mr r30, r3
/* 80038838 00034498  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 8003883C 0003449C  2C 05 00 00 */	cmpwi r5, 0
/* 80038840 000344A0  41 82 00 6C */	beq lbl_800388AC
/* 80038844 000344A4  80 65 00 08 */	lwz r3, 8(r5)
/* 80038848 000344A8  2C 03 00 00 */	cmpwi r3, 0
/* 8003884C 000344AC  41 82 00 30 */	beq lbl_8003887C
/* 80038850 000344B0  80 63 00 00 */	lwz r3, 0(r3)
/* 80038854 000344B4  2C 03 00 00 */	cmpwi r3, 0
/* 80038858 000344B8  41 82 00 24 */	beq lbl_8003887C
/* 8003885C 000344BC  C0 04 00 00 */	lfs f0, 0(r4)
/* 80038860 000344C0  C0 24 00 04 */	lfs f1, 4(r4)
/* 80038864 000344C4  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80038868 000344C8  C0 04 00 08 */	lfs f0, 8(r4)
/* 8003886C 000344CC  38 80 00 01 */	li r4, 1
/* 80038870 000344D0  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80038874 000344D4  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80038878 000344D8  48 1B 9E 41 */	bl func_801F26B8
lbl_8003887C:
/* 8003887C 000344DC  80 BF 00 00 */	lwz r5, 0(r31)
/* 80038880 000344E0  38 7E 00 04 */	addi r3, r30, 4
/* 80038884 000344E4  80 9F 00 04 */	lwz r4, 4(r31)
/* 80038888 000344E8  80 1F 00 08 */	lwz r0, 8(r31)
/* 8003888C 000344EC  90 BE 0C B4 */	stw r5, 0xcb4(r30)
/* 80038890 000344F0  90 9E 0C B8 */	stw r4, 0xcb8(r30)
/* 80038894 000344F4  90 1E 0C BC */	stw r0, 0xcbc(r30)
/* 80038898 000344F8  48 01 7A F1 */	bl func_80050388
/* 8003889C 000344FC  38 7E 00 28 */	addi r3, r30, 0x28
/* 800388A0 00034500  48 01 7A E9 */	bl func_80050388
/* 800388A4 00034504  38 7E 00 4C */	addi r3, r30, 0x4c
/* 800388A8 00034508  48 01 7A E1 */	bl func_80050388
lbl_800388AC:
/* 800388AC 0003450C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800388B0 00034510  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800388B4 00034514  83 C1 00 08 */	lwz r30, 8(r1)
/* 800388B8 00034518  7C 08 03 A6 */	mtlr r0
/* 800388BC 0003451C  38 21 00 10 */	addi r1, r1, 0x10
/* 800388C0 00034520  4E 80 00 20 */	blr

.global func_800388C4
func_800388C4:
/* 800388C4 00034524  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800388C8 00034528  7C 08 02 A6 */	mflr r0
/* 800388CC 0003452C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800388D0 00034530  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800388D4 00034534  7C 7F 1B 78 */	mr r31, r3
/* 800388D8 00034538  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 800388DC 0003453C  2C 00 00 00 */	cmpwi r0, 0
/* 800388E0 00034540  41 82 00 20 */	beq lbl_80038900
/* 800388E4 00034544  4B FF FF 39 */	bl func_8003881C
/* 800388E8 00034548  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 800388EC 0003454C  38 80 00 01 */	li r4, 1
/* 800388F0 00034550  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 800388F4 00034554  48 1B DF 55 */	bl func_801F6848
/* 800388F8 00034558  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 800388FC 0003455C  48 1B D1 A1 */	bl func_801F5A9C
lbl_80038900:
/* 80038900 00034560  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80038904 00034564  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80038908 00034568  7C 08 03 A6 */	mtlr r0
/* 8003890C 0003456C  38 21 00 10 */	addi r1, r1, 0x10
/* 80038910 00034570  4E 80 00 20 */	blr

.global func_80038914
func_80038914:
/* 80038914 00034574  80 04 0C 04 */	lwz r0, 0xc04(r4)
/* 80038918 00034578  2C 00 00 00 */	cmpwi r0, 0
/* 8003891C 0003457C  41 82 00 20 */	beq lbl_8003893C
/* 80038920 00034580  C0 44 0C D4 */	lfs f2, 0xcd4(r4)
/* 80038924 00034584  C0 24 0C D0 */	lfs f1, 0xcd0(r4)
/* 80038928 00034588  C0 04 0C CC */	lfs f0, 0xccc(r4)
/* 8003892C 0003458C  D0 03 00 00 */	stfs f0, 0(r3)
/* 80038930 00034590  D0 23 00 04 */	stfs f1, 4(r3)
/* 80038934 00034594  D0 43 00 08 */	stfs f2, 8(r3)
/* 80038938 00034598  4E 80 00 20 */	blr
lbl_8003893C:
/* 8003893C 0003459C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80038940 000345A0  D0 03 00 00 */	stfs f0, 0(r3)
/* 80038944 000345A4  D0 03 00 04 */	stfs f0, 4(r3)
/* 80038948 000345A8  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003894C 000345AC  4E 80 00 20 */	blr

.global func_80038950
func_80038950:
/* 80038950 000345B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80038954 000345B4  7C 08 02 A6 */	mflr r0
/* 80038958 000345B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003895C 000345BC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80038960 000345C0  7C 9F 23 78 */	mr r31, r4
/* 80038964 000345C4  93 C1 00 08 */	stw r30, 8(r1)
/* 80038968 000345C8  7C 7E 1B 78 */	mr r30, r3
/* 8003896C 000345CC  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 80038970 000345D0  2C 05 00 00 */	cmpwi r5, 0
/* 80038974 000345D4  41 82 01 08 */	beq lbl_80038A7C
/* 80038978 000345D8  80 65 00 08 */	lwz r3, 8(r5)
/* 8003897C 000345DC  2C 03 00 00 */	cmpwi r3, 0
/* 80038980 000345E0  41 82 00 CC */	beq lbl_80038A4C
/* 80038984 000345E4  80 63 00 00 */	lwz r3, 0(r3)
/* 80038988 000345E8  2C 03 00 00 */	cmpwi r3, 0
/* 8003898C 000345EC  41 82 00 C0 */	beq lbl_80038A4C
/* 80038990 000345F0  C0 04 00 00 */	lfs f0, 0(r4)
/* 80038994 000345F4  C0 42 82 70 */	lfs f2, lbl_80640870-_SDA2_BASE_(r2)
/* 80038998 000345F8  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8003899C 000345FC  C0 24 00 04 */	lfs f1, 4(r4)
/* 800389A0 00034600  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 800389A4 00034604  C0 04 00 08 */	lfs f0, 8(r4)
/* 800389A8 00034608  D0 23 00 4C */	stfs f1, 0x4c(r3)
/* 800389AC 0003460C  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 800389B0 00034610  40 80 00 2C */	bge lbl_800389DC
/* 800389B4 00034614  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 800389B8 00034618  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 800389BC 0003461C  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 800389C0 00034620  40 81 00 1C */	ble lbl_800389DC
/* 800389C4 00034624  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800389C8 00034628  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800389CC 0003462C  40 80 00 08 */	bge lbl_800389D4
/* 800389D0 00034630  48 00 00 08 */	b lbl_800389D8
lbl_800389D4:
/* 800389D4 00034634  FC 60 10 90 */	fmr f3, f2
lbl_800389D8:
/* 800389D8 00034638  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_800389DC:
/* 800389DC 0003463C  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 800389E0 00034640  C0 22 82 70 */	lfs f1, lbl_80640870-_SDA2_BASE_(r2)
/* 800389E4 00034644  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 800389E8 00034648  40 80 00 28 */	bge lbl_80038A10
/* 800389EC 0003464C  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 800389F0 00034650  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 800389F4 00034654  40 81 00 1C */	ble lbl_80038A10
/* 800389F8 00034658  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800389FC 0003465C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80038A00 00034660  40 80 00 08 */	bge lbl_80038A08
/* 80038A04 00034664  48 00 00 08 */	b lbl_80038A0C
lbl_80038A08:
/* 80038A08 00034668  FC 60 08 90 */	fmr f3, f1
lbl_80038A0C:
/* 80038A0C 0003466C  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_80038A10:
/* 80038A10 00034670  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 80038A14 00034674  C0 22 82 70 */	lfs f1, lbl_80640870-_SDA2_BASE_(r2)
/* 80038A18 00034678  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80038A1C 0003467C  40 80 00 28 */	bge lbl_80038A44
/* 80038A20 00034680  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 80038A24 00034684  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80038A28 00034688  40 81 00 1C */	ble lbl_80038A44
/* 80038A2C 0003468C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80038A30 00034690  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80038A34 00034694  40 80 00 08 */	bge lbl_80038A3C
/* 80038A38 00034698  48 00 00 08 */	b lbl_80038A40
lbl_80038A3C:
/* 80038A3C 0003469C  FC 60 08 90 */	fmr f3, f1
lbl_80038A40:
/* 80038A40 000346A0  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_80038A44:
/* 80038A44 000346A4  38 80 00 01 */	li r4, 1
/* 80038A48 000346A8  48 1B 9C 71 */	bl func_801F26B8
lbl_80038A4C:
/* 80038A4C 000346AC  80 BF 00 00 */	lwz r5, 0(r31)
/* 80038A50 000346B0  38 7E 00 DC */	addi r3, r30, 0xdc
/* 80038A54 000346B4  80 9F 00 04 */	lwz r4, 4(r31)
/* 80038A58 000346B8  80 1F 00 08 */	lwz r0, 8(r31)
/* 80038A5C 000346BC  90 BE 0C CC */	stw r5, 0xccc(r30)
/* 80038A60 000346C0  90 9E 0C D0 */	stw r4, 0xcd0(r30)
/* 80038A64 000346C4  90 1E 0C D4 */	stw r0, 0xcd4(r30)
/* 80038A68 000346C8  48 01 79 21 */	bl func_80050388
/* 80038A6C 000346CC  38 7E 01 00 */	addi r3, r30, 0x100
/* 80038A70 000346D0  48 01 79 19 */	bl func_80050388
/* 80038A74 000346D4  38 7E 01 24 */	addi r3, r30, 0x124
/* 80038A78 000346D8  48 01 79 11 */	bl func_80050388
lbl_80038A7C:
/* 80038A7C 000346DC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80038A80 000346E0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80038A84 000346E4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80038A88 000346E8  7C 08 03 A6 */	mtlr r0
/* 80038A8C 000346EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80038A90 000346F0  4E 80 00 20 */	blr

.global func_80038A94
func_80038A94:
/* 80038A94 000346F4  80 04 0C 04 */	lwz r0, 0xc04(r4)
/* 80038A98 000346F8  2C 00 00 00 */	cmpwi r0, 0
/* 80038A9C 000346FC  41 82 00 20 */	beq lbl_80038ABC
/* 80038AA0 00034700  C0 44 0C C8 */	lfs f2, 0xcc8(r4)
/* 80038AA4 00034704  C0 24 0C C4 */	lfs f1, 0xcc4(r4)
/* 80038AA8 00034708  C0 04 0C C0 */	lfs f0, 0xcc0(r4)
/* 80038AAC 0003470C  D0 03 00 00 */	stfs f0, 0(r3)
/* 80038AB0 00034710  D0 23 00 04 */	stfs f1, 4(r3)
/* 80038AB4 00034714  D0 43 00 08 */	stfs f2, 8(r3)
/* 80038AB8 00034718  4E 80 00 20 */	blr
lbl_80038ABC:
/* 80038ABC 0003471C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80038AC0 00034720  D0 03 00 00 */	stfs f0, 0(r3)
/* 80038AC4 00034724  D0 03 00 04 */	stfs f0, 4(r3)
/* 80038AC8 00034728  D0 03 00 08 */	stfs f0, 8(r3)
/* 80038ACC 0003472C  4E 80 00 20 */	blr

.global func_80038AD0
func_80038AD0:
/* 80038AD0 00034730  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80038AD4 00034734  7C 08 02 A6 */	mflr r0
/* 80038AD8 00034738  90 01 00 24 */	stw r0, 0x24(r1)
/* 80038ADC 0003473C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80038AE0 00034740  7C 7F 1B 78 */	mr r31, r3
/* 80038AE4 00034744  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 80038AE8 00034748  2C 00 00 00 */	cmpwi r0, 0
/* 80038AEC 0003474C  41 82 00 8C */	beq lbl_80038B78
/* 80038AF0 00034750  80 C4 00 00 */	lwz r6, 0(r4)
/* 80038AF4 00034754  80 A4 00 04 */	lwz r5, 4(r4)
/* 80038AF8 00034758  80 04 00 08 */	lwz r0, 8(r4)
/* 80038AFC 0003475C  90 C3 0C C0 */	stw r6, 0xcc0(r3)
/* 80038B00 00034760  90 A3 0C C4 */	stw r5, 0xcc4(r3)
/* 80038B04 00034764  90 03 0C C8 */	stw r0, 0xcc8(r3)
/* 80038B08 00034768  38 61 00 08 */	addi r3, r1, 8
/* 80038B0C 0003476C  48 1E AB B5 */	bl func_802236C0
/* 80038B10 00034770  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80038B14 00034774  80 63 00 08 */	lwz r3, 8(r3)
/* 80038B18 00034778  2C 03 00 00 */	cmpwi r3, 0
/* 80038B1C 0003477C  41 82 00 44 */	beq lbl_80038B60
/* 80038B20 00034780  80 63 00 00 */	lwz r3, 0(r3)
/* 80038B24 00034784  2C 03 00 00 */	cmpwi r3, 0
/* 80038B28 00034788  41 82 00 38 */	beq lbl_80038B60
/* 80038B2C 0003478C  C0 01 00 08 */	lfs f0, 8(r1)
/* 80038B30 00034790  38 80 00 01 */	li r4, 1
/* 80038B34 00034794  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80038B38 00034798  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 80038B3C 0003479C  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80038B40 000347A0  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80038B44 000347A4  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80038B48 000347A8  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 80038B4C 000347AC  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80038B50 000347B0  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80038B54 000347B4  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80038B58 000347B8  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80038B5C 000347BC  48 1B 9B 5D */	bl func_801F26B8
lbl_80038B60:
/* 80038B60 000347C0  38 7F 00 70 */	addi r3, r31, 0x70
/* 80038B64 000347C4  48 01 78 25 */	bl func_80050388
/* 80038B68 000347C8  38 7F 00 94 */	addi r3, r31, 0x94
/* 80038B6C 000347CC  48 01 78 1D */	bl func_80050388
/* 80038B70 000347D0  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 80038B74 000347D4  48 01 78 15 */	bl func_80050388
lbl_80038B78:
/* 80038B78 000347D8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80038B7C 000347DC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80038B80 000347E0  7C 08 03 A6 */	mtlr r0
/* 80038B84 000347E4  38 21 00 20 */	addi r1, r1, 0x20
/* 80038B88 000347E8  4E 80 00 20 */	blr

.global func_80038B8C
func_80038B8C:
/* 80038B8C 000347EC  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 80038B90 000347F0  7C 08 02 A6 */	mflr r0
/* 80038B94 000347F4  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 80038B98 000347F8  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 80038B9C 000347FC  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 80038BA0 00034800  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 80038BA4 00034804  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 80038BA8 00034808  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 80038BAC 0003480C  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 80038BB0 00034810  3C 00 43 30 */	lis r0, 0x4330
/* 80038BB4 00034814  C3 C2 82 78 */	lfs f30, lbl_80640878-_SDA2_BASE_(r2)
/* 80038BB8 00034818  93 E1 00 6C */	stw r31, 0x6c(r1)
/* 80038BBC 0003481C  7C 9F 23 78 */	mr r31, r4
/* 80038BC0 00034820  93 C1 00 68 */	stw r30, 0x68(r1)
/* 80038BC4 00034824  7C 7E 1B 78 */	mr r30, r3
/* 80038BC8 00034828  7F C4 F3 78 */	mr r4, r30
/* 80038BCC 0003482C  38 61 00 20 */	addi r3, r1, 0x20
/* 80038BD0 00034830  90 01 00 48 */	stw r0, 0x48(r1)
/* 80038BD4 00034834  90 01 00 50 */	stw r0, 0x50(r1)
/* 80038BD8 00034838  4B FF FE BD */	bl func_80038A94
/* 80038BDC 0003483C  C3 A1 00 24 */	lfs f29, 0x24(r1)
/* 80038BE0 00034840  7F C4 F3 78 */	mr r4, r30
/* 80038BE4 00034844  38 61 00 14 */	addi r3, r1, 0x14
/* 80038BE8 00034848  4B FF FB F9 */	bl func_800387E0
/* 80038BEC 0003484C  7F E3 FB 78 */	mr r3, r31
/* 80038BF0 00034850  38 81 00 14 */	addi r4, r1, 0x14
/* 80038BF4 00034854  38 A1 00 2C */	addi r5, r1, 0x2c
/* 80038BF8 00034858  48 24 40 F1 */	bl func_8027CCE8
/* 80038BFC 0003485C  C0 41 00 34 */	lfs f2, 0x34(r1)
/* 80038C00 00034860  C0 21 00 2C */	lfs f1, 0x2c(r1)
/* 80038C04 00034864  48 19 B9 D9 */	bl atan2
/* 80038C08 00034868  EC 5D F0 24 */	fdivs f2, f29, f30
/* 80038C0C 0003486C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80038C10 00034870  FC 40 10 1E */	fctiwz f2, f2
/* 80038C14 00034874  FF E0 08 18 */	frsp f31, f1
/* 80038C18 00034878  FC 1D 00 40 */	fcmpo cr0, f29, f0
/* 80038C1C 0003487C  D8 41 00 58 */	stfd f2, 0x58(r1)
/* 80038C20 00034880  80 61 00 5C */	lwz r3, 0x5c(r1)
/* 80038C24 00034884  40 80 00 38 */	bge lbl_80038C5C
/* 80038C28 00034888  38 03 FF FF */	addi r0, r3, -1
/* 80038C2C 0003488C  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 80038C30 00034890  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80038C34 00034894  90 61 00 4C */	stw r3, 0x4c(r1)
/* 80038C38 00034898  C8 42 82 68 */	lfd f2, lbl_80640868-_SDA2_BASE_(r2)
/* 80038C3C 0003489C  90 01 00 54 */	stw r0, 0x54(r1)
/* 80038C40 000348A0  C8 21 00 48 */	lfd f1, 0x48(r1)
/* 80038C44 000348A4  C8 01 00 50 */	lfd f0, 0x50(r1)
/* 80038C48 000348A8  EC 21 10 28 */	fsubs f1, f1, f2
/* 80038C4C 000348AC  EC 00 10 28 */	fsubs f0, f0, f2
/* 80038C50 000348B0  EC 21 07 B2 */	fmuls f1, f1, f30
/* 80038C54 000348B4  EC 40 07 B2 */	fmuls f2, f0, f30
/* 80038C58 000348B8  48 00 00 3C */	b lbl_80038C94
lbl_80038C5C:
/* 80038C5C 000348BC  38 03 00 01 */	addi r0, r3, 1
/* 80038C60 000348C0  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 80038C64 000348C4  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80038C68 000348C8  90 61 00 4C */	stw r3, 0x4c(r1)
/* 80038C6C 000348CC  C8 42 82 68 */	lfd f2, lbl_80640868-_SDA2_BASE_(r2)
/* 80038C70 000348D0  90 01 00 54 */	stw r0, 0x54(r1)
/* 80038C74 000348D4  C8 21 00 48 */	lfd f1, 0x48(r1)
/* 80038C78 000348D8  C8 01 00 50 */	lfd f0, 0x50(r1)
/* 80038C7C 000348DC  EC 21 10 28 */	fsubs f1, f1, f2
/* 80038C80 000348E0  EC 00 10 28 */	fsubs f0, f0, f2
/* 80038C84 000348E4  EC 41 07 B2 */	fmuls f2, f1, f30
/* 80038C88 000348E8  EC 20 07 B2 */	fmuls f1, f0, f30
/* 80038C8C 000348EC  48 00 00 08 */	b lbl_80038C94
lbl_80038C90:
/* 80038C90 000348F0  EF FF F0 2A */	fadds f31, f31, f30
lbl_80038C94:
/* 80038C94 000348F4  FC 1F 10 40 */	fcmpo cr0, f31, f2
/* 80038C98 000348F8  41 80 FF F8 */	blt lbl_80038C90
/* 80038C9C 000348FC  48 00 00 08 */	b lbl_80038CA4
lbl_80038CA0:
/* 80038CA0 00034900  EF FF F0 28 */	fsubs f31, f31, f30
lbl_80038CA4:
/* 80038CA4 00034904  FC 1F 08 40 */	fcmpo cr0, f31, f1
/* 80038CA8 00034908  41 81 FF F8 */	bgt lbl_80038CA0
/* 80038CAC 0003490C  7F C4 F3 78 */	mr r4, r30
/* 80038CB0 00034910  38 61 00 08 */	addi r3, r1, 8
/* 80038CB4 00034914  4B FF FD E1 */	bl func_80038A94
/* 80038CB8 00034918  C0 21 00 08 */	lfs f1, 8(r1)
/* 80038CBC 0003491C  7F C3 F3 78 */	mr r3, r30
/* 80038CC0 00034920  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80038CC4 00034924  38 81 00 38 */	addi r4, r1, 0x38
/* 80038CC8 00034928  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 80038CCC 0003492C  D0 01 00 40 */	stfs f0, 0x40(r1)
/* 80038CD0 00034930  D3 E1 00 3C */	stfs f31, 0x3c(r1)
/* 80038CD4 00034934  4B FF FD FD */	bl func_80038AD0
/* 80038CD8 00034938  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 80038CDC 0003493C  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 80038CE0 00034940  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 80038CE4 00034944  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 80038CE8 00034948  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 80038CEC 0003494C  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 80038CF0 00034950  83 E1 00 6C */	lwz r31, 0x6c(r1)
/* 80038CF4 00034954  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80038CF8 00034958  83 C1 00 68 */	lwz r30, 0x68(r1)
/* 80038CFC 0003495C  7C 08 03 A6 */	mtlr r0
/* 80038D00 00034960  38 21 00 A0 */	addi r1, r1, 0xa0
/* 80038D04 00034964  4E 80 00 20 */	blr

.global func_80038D08
func_80038D08:
/* 80038D08 00034968  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 80038D0C 0003496C  7C 08 02 A6 */	mflr r0
/* 80038D10 00034970  90 01 00 84 */	stw r0, 0x84(r1)
/* 80038D14 00034974  DB E1 00 70 */	stfd f31, 0x70(r1)
/* 80038D18 00034978  F3 E1 00 78 */	psq_st f31, 120(r1), 0, qr0
/* 80038D1C 0003497C  DB C1 00 60 */	stfd f30, 0x60(r1)
/* 80038D20 00034980  F3 C1 00 68 */	psq_st f30, 104(r1), 0, qr0
/* 80038D24 00034984  FF C0 08 90 */	fmr f30, f1
/* 80038D28 00034988  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 80038D2C 0003498C  7C BF 2B 78 */	mr r31, r5
/* 80038D30 00034990  93 C1 00 58 */	stw r30, 0x58(r1)
/* 80038D34 00034994  7C 9E 23 78 */	mr r30, r4
/* 80038D38 00034998  93 A1 00 54 */	stw r29, 0x54(r1)
/* 80038D3C 0003499C  7C 7D 1B 78 */	mr r29, r3
/* 80038D40 000349A0  A0 03 05 1C */	lhz r0, 0x51c(r3)
/* 80038D44 000349A4  28 00 00 09 */	cmplwi r0, 9
/* 80038D48 000349A8  40 80 00 10 */	bge lbl_80038D58
/* 80038D4C 000349AC  88 03 05 20 */	lbz r0, 0x520(r3)
/* 80038D50 000349B0  2C 00 00 00 */	cmpwi r0, 0
/* 80038D54 000349B4  40 82 00 D8 */	bne lbl_80038E2C
lbl_80038D58:
/* 80038D58 000349B8  7F A4 EB 78 */	mr r4, r29
/* 80038D5C 000349BC  38 61 00 20 */	addi r3, r1, 0x20
/* 80038D60 000349C0  38 A0 00 0E */	li r5, 0xe
/* 80038D64 000349C4  48 00 29 11 */	bl func_8003B674
/* 80038D68 000349C8  7F C4 F3 78 */	mr r4, r30
/* 80038D6C 000349CC  38 61 00 2C */	addi r3, r1, 0x2c
/* 80038D70 000349D0  38 A0 00 0A */	li r5, 0xa
/* 80038D74 000349D4  48 00 29 01 */	bl func_8003B674
/* 80038D78 000349D8  38 61 00 2C */	addi r3, r1, 0x2c
/* 80038D7C 000349DC  38 81 00 20 */	addi r4, r1, 0x20
/* 80038D80 000349E0  38 A1 00 38 */	addi r5, r1, 0x38
/* 80038D84 000349E4  48 24 3F 65 */	bl func_8027CCE8
/* 80038D88 000349E8  C0 41 00 40 */	lfs f2, 0x40(r1)
/* 80038D8C 000349EC  C0 21 00 38 */	lfs f1, 0x38(r1)
/* 80038D90 000349F0  48 19 B8 4D */	bl atan2
/* 80038D94 000349F4  FF E0 08 18 */	frsp f31, f1
/* 80038D98 000349F8  7F A4 EB 78 */	mr r4, r29
/* 80038D9C 000349FC  38 61 00 14 */	addi r3, r1, 0x14
/* 80038DA0 00034A00  4B FF FC F5 */	bl func_80038A94
/* 80038DA4 00034A04  FC 40 F8 90 */	fmr f2, f31
/* 80038DA8 00034A08  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 80038DAC 00034A0C  7F A3 EB 78 */	mr r3, r29
/* 80038DB0 00034A10  48 00 1C C5 */	bl func_8003AA74
/* 80038DB4 00034A14  EF FF 08 28 */	fsubs f31, f31, f1
/* 80038DB8 00034A18  38 61 00 38 */	addi r3, r1, 0x38
/* 80038DBC 00034A1C  48 24 3F C9 */	bl func_8027CD84
/* 80038DC0 00034A20  C0 41 00 3C */	lfs f2, 0x3c(r1)
/* 80038DC4 00034A24  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 80038DC8 00034A28  EC 22 08 24 */	fdivs f1, f2, f1
/* 80038DCC 00034A2C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80038DD0 00034A30  4C 41 13 82 */	cror 2, 1, 2
/* 80038DD4 00034A34  40 82 00 0C */	bne lbl_80038DE0
/* 80038DD8 00034A38  C0 02 82 7C */	lfs f0, lbl_8064087C-_SDA2_BASE_(r2)
/* 80038DDC 00034A3C  48 00 00 24 */	b lbl_80038E00
lbl_80038DE0:
/* 80038DE0 00034A40  C0 02 82 44 */	lfs f0, lbl_80640844-_SDA2_BASE_(r2)
/* 80038DE4 00034A44  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80038DE8 00034A48  4C 40 13 82 */	cror 2, 0, 2
/* 80038DEC 00034A4C  40 82 00 0C */	bne lbl_80038DF8
/* 80038DF0 00034A50  C0 02 82 80 */	lfs f0, lbl_80640880-_SDA2_BASE_(r2)
/* 80038DF4 00034A54  48 00 00 0C */	b lbl_80038E00
lbl_80038DF8:
/* 80038DF8 00034A58  48 19 B7 E1 */	bl asin
/* 80038DFC 00034A5C  FC 00 08 18 */	frsp f0, f1
lbl_80038E00:
/* 80038E00 00034A60  FC 40 00 50 */	fneg f2, f0
/* 80038E04 00034A64  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80038E08 00034A68  FC 20 F0 90 */	fmr f1, f30
/* 80038E0C 00034A6C  D3 E1 00 0C */	stfs f31, 0xc(r1)
/* 80038E10 00034A70  7F A3 EB 78 */	mr r3, r29
/* 80038E14 00034A74  7F E6 FB 78 */	mr r6, r31
/* 80038E18 00034A78  D0 41 00 08 */	stfs f2, 8(r1)
/* 80038E1C 00034A7C  38 81 00 08 */	addi r4, r1, 8
/* 80038E20 00034A80  38 A0 00 0E */	li r5, 0xe
/* 80038E24 00034A84  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80038E28 00034A88  48 00 18 A1 */	bl func_8003A6C8
lbl_80038E2C:
/* 80038E2C 00034A8C  E3 E1 00 78 */	psq_l f31, 120(r1), 0, qr0
/* 80038E30 00034A90  CB E1 00 70 */	lfd f31, 0x70(r1)
/* 80038E34 00034A94  E3 C1 00 68 */	psq_l f30, 104(r1), 0, qr0
/* 80038E38 00034A98  CB C1 00 60 */	lfd f30, 0x60(r1)
/* 80038E3C 00034A9C  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 80038E40 00034AA0  83 C1 00 58 */	lwz r30, 0x58(r1)
/* 80038E44 00034AA4  80 01 00 84 */	lwz r0, 0x84(r1)
/* 80038E48 00034AA8  83 A1 00 54 */	lwz r29, 0x54(r1)
/* 80038E4C 00034AAC  7C 08 03 A6 */	mtlr r0
/* 80038E50 00034AB0  38 21 00 80 */	addi r1, r1, 0x80
/* 80038E54 00034AB4  4E 80 00 20 */	blr

.global func_80038E58
func_80038E58:
/* 80038E58 00034AB8  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 80038E5C 00034ABC  7C 08 02 A6 */	mflr r0
/* 80038E60 00034AC0  90 01 00 74 */	stw r0, 0x74(r1)
/* 80038E64 00034AC4  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 80038E68 00034AC8  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 80038E6C 00034ACC  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 80038E70 00034AD0  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 80038E74 00034AD4  93 E1 00 4C */	stw r31, 0x4c(r1)
/* 80038E78 00034AD8  7C 9F 23 78 */	mr r31, r4
/* 80038E7C 00034ADC  93 C1 00 48 */	stw r30, 0x48(r1)
/* 80038E80 00034AE0  7C 7E 1B 78 */	mr r30, r3
/* 80038E84 00034AE4  A0 03 05 1C */	lhz r0, 0x51c(r3)
/* 80038E88 00034AE8  28 00 00 09 */	cmplwi r0, 9
/* 80038E8C 00034AEC  40 80 00 10 */	bge lbl_80038E9C
/* 80038E90 00034AF0  88 03 05 20 */	lbz r0, 0x520(r3)
/* 80038E94 00034AF4  2C 00 00 00 */	cmpwi r0, 0
/* 80038E98 00034AF8  40 82 00 F0 */	bne lbl_80038F88
lbl_80038E9C:
/* 80038E9C 00034AFC  C3 C2 82 84 */	lfs f30, lbl_80640884-_SDA2_BASE_(r2)
/* 80038EA0 00034B00  7F C4 F3 78 */	mr r4, r30
/* 80038EA4 00034B04  38 61 00 20 */	addi r3, r1, 0x20
/* 80038EA8 00034B08  38 A0 00 0E */	li r5, 0xe
/* 80038EAC 00034B0C  48 00 27 C9 */	bl func_8003B674
/* 80038EB0 00034B10  7F E4 FB 78 */	mr r4, r31
/* 80038EB4 00034B14  38 61 00 2C */	addi r3, r1, 0x2c
/* 80038EB8 00034B18  38 A0 00 0A */	li r5, 0xa
/* 80038EBC 00034B1C  48 00 27 B9 */	bl func_8003B674
/* 80038EC0 00034B20  38 61 00 2C */	addi r3, r1, 0x2c
/* 80038EC4 00034B24  38 81 00 20 */	addi r4, r1, 0x20
/* 80038EC8 00034B28  38 A1 00 38 */	addi r5, r1, 0x38
/* 80038ECC 00034B2C  48 24 3E 1D */	bl func_8027CCE8
/* 80038ED0 00034B30  C0 41 00 40 */	lfs f2, 0x40(r1)
/* 80038ED4 00034B34  C0 21 00 38 */	lfs f1, 0x38(r1)
/* 80038ED8 00034B38  48 19 B7 05 */	bl atan2
/* 80038EDC 00034B3C  FF E0 08 18 */	frsp f31, f1
/* 80038EE0 00034B40  7F C4 F3 78 */	mr r4, r30
/* 80038EE4 00034B44  38 61 00 14 */	addi r3, r1, 0x14
/* 80038EE8 00034B48  4B FF FB AD */	bl func_80038A94
/* 80038EEC 00034B4C  FC 40 F8 90 */	fmr f2, f31
/* 80038EF0 00034B50  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 80038EF4 00034B54  7F C3 F3 78 */	mr r3, r30
/* 80038EF8 00034B58  48 00 1B 7D */	bl func_8003AA74
/* 80038EFC 00034B5C  EF FF 08 28 */	fsubs f31, f31, f1
/* 80038F00 00034B60  FC 1F F0 40 */	fcmpo cr0, f31, f30
/* 80038F04 00034B64  40 81 00 08 */	ble lbl_80038F0C
/* 80038F08 00034B68  FF E0 F0 90 */	fmr f31, f30
lbl_80038F0C:
/* 80038F0C 00034B6C  FC 00 F0 50 */	fneg f0, f30
/* 80038F10 00034B70  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 80038F14 00034B74  40 80 00 08 */	bge lbl_80038F1C
/* 80038F18 00034B78  FF E0 00 90 */	fmr f31, f0
lbl_80038F1C:
/* 80038F1C 00034B7C  38 61 00 38 */	addi r3, r1, 0x38
/* 80038F20 00034B80  48 24 3E 65 */	bl func_8027CD84
/* 80038F24 00034B84  C0 41 00 3C */	lfs f2, 0x3c(r1)
/* 80038F28 00034B88  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 80038F2C 00034B8C  EC 22 08 24 */	fdivs f1, f2, f1
/* 80038F30 00034B90  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80038F34 00034B94  4C 41 13 82 */	cror 2, 1, 2
/* 80038F38 00034B98  40 82 00 0C */	bne lbl_80038F44
/* 80038F3C 00034B9C  C0 02 82 7C */	lfs f0, lbl_8064087C-_SDA2_BASE_(r2)
/* 80038F40 00034BA0  48 00 00 24 */	b lbl_80038F64
lbl_80038F44:
/* 80038F44 00034BA4  C0 02 82 44 */	lfs f0, lbl_80640844-_SDA2_BASE_(r2)
/* 80038F48 00034BA8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80038F4C 00034BAC  4C 40 13 82 */	cror 2, 0, 2
/* 80038F50 00034BB0  40 82 00 0C */	bne lbl_80038F5C
/* 80038F54 00034BB4  C0 02 82 80 */	lfs f0, lbl_80640880-_SDA2_BASE_(r2)
/* 80038F58 00034BB8  48 00 00 0C */	b lbl_80038F64
lbl_80038F5C:
/* 80038F5C 00034BBC  48 19 B6 7D */	bl asin
/* 80038F60 00034BC0  FC 00 08 18 */	frsp f0, f1
lbl_80038F64:
/* 80038F64 00034BC4  FC 20 00 50 */	fneg f1, f0
/* 80038F68 00034BC8  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80038F6C 00034BCC  D3 E1 00 0C */	stfs f31, 0xc(r1)
/* 80038F70 00034BD0  7F C3 F3 78 */	mr r3, r30
/* 80038F74 00034BD4  38 81 00 08 */	addi r4, r1, 8
/* 80038F78 00034BD8  38 A0 00 0E */	li r5, 0xe
/* 80038F7C 00034BDC  D0 21 00 08 */	stfs f1, 8(r1)
/* 80038F80 00034BE0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80038F84 00034BE4  48 00 19 D5 */	bl func_8003A958
lbl_80038F88:
/* 80038F88 00034BE8  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 80038F8C 00034BEC  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 80038F90 00034BF0  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 80038F94 00034BF4  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 80038F98 00034BF8  83 E1 00 4C */	lwz r31, 0x4c(r1)
/* 80038F9C 00034BFC  80 01 00 74 */	lwz r0, 0x74(r1)
/* 80038FA0 00034C00  83 C1 00 48 */	lwz r30, 0x48(r1)
/* 80038FA4 00034C04  7C 08 03 A6 */	mtlr r0
/* 80038FA8 00034C08  38 21 00 70 */	addi r1, r1, 0x70
/* 80038FAC 00034C0C  4E 80 00 20 */	blr

.global func_80038FB0
func_80038FB0:
/* 80038FB0 00034C10  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80038FB4 00034C14  7C 08 02 A6 */	mflr r0
/* 80038FB8 00034C18  90 01 00 14 */	stw r0, 0x14(r1)
/* 80038FBC 00034C1C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80038FC0 00034C20  7C 7F 1B 78 */	mr r31, r3
/* 80038FC4 00034C24  A0 03 05 1C */	lhz r0, 0x51c(r3)
/* 80038FC8 00034C28  28 00 00 09 */	cmplwi r0, 9
/* 80038FCC 00034C2C  40 80 00 10 */	bge lbl_80038FDC
/* 80038FD0 00034C30  88 03 05 20 */	lbz r0, 0x520(r3)
/* 80038FD4 00034C34  2C 00 00 00 */	cmpwi r0, 0
/* 80038FD8 00034C38  40 82 00 A4 */	bne lbl_8003907C
lbl_80038FDC:
/* 80038FDC 00034C3C  38 63 04 60 */	addi r3, r3, 0x460
/* 80038FE0 00034C40  48 01 75 E1 */	bl func_800505C0
/* 80038FE4 00034C44  3C 80 80 49 */	lis r4, lbl_8049362C@ha
/* 80038FE8 00034C48  7F E3 FB 78 */	mr r3, r31
/* 80038FEC 00034C4C  38 84 36 2C */	addi r4, r4, lbl_8049362C@l
/* 80038FF0 00034C50  38 A0 00 0E */	li r5, 0xe
/* 80038FF4 00034C54  48 00 19 65 */	bl func_8003A958
/* 80038FF8 00034C58  80 1F 0C 04 */	lwz r0, 0xc04(r31)
/* 80038FFC 00034C5C  2C 00 00 00 */	cmpwi r0, 0
/* 80039000 00034C60  41 82 00 7C */	beq lbl_8003907C
/* 80039004 00034C64  7F E3 FB 78 */	mr r3, r31
/* 80039008 00034C68  38 80 00 0E */	li r4, 0xe
/* 8003900C 00034C6C  48 00 08 2D */	bl func_80039838
/* 80039010 00034C70  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 80039014 00034C74  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80039018 00034C78  80 A4 00 08 */	lwz r5, 8(r4)
/* 8003901C 00034C7C  2C 05 00 00 */	cmpwi r5, 0
/* 80039020 00034C80  40 82 00 0C */	bne lbl_8003902C
/* 80039024 00034C84  38 60 00 00 */	li r3, 0
/* 80039028 00034C88  48 00 00 20 */	b lbl_80039048
lbl_8003902C:
/* 8003902C 00034C8C  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 80039030 00034C90  7C 03 00 40 */	cmplw r3, r0
/* 80039034 00034C94  41 80 00 0C */	blt lbl_80039040
/* 80039038 00034C98  38 60 00 00 */	li r3, 0
/* 8003903C 00034C9C  48 00 00 0C */	b lbl_80039048
lbl_80039040:
/* 80039040 00034CA0  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 80039044 00034CA4  7C 65 00 2E */	lwzx r3, r5, r0
lbl_80039048:
/* 80039048 00034CA8  2C 03 00 00 */	cmpwi r3, 0
/* 8003904C 00034CAC  41 82 00 30 */	beq lbl_8003907C
/* 80039050 00034CB0  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 80039054 00034CB4  2C 04 00 00 */	cmpwi r4, 0
/* 80039058 00034CB8  41 82 00 0C */	beq lbl_80039064
/* 8003905C 00034CBC  A0 84 00 08 */	lhz r4, 8(r4)
/* 80039060 00034CC0  48 00 00 08 */	b lbl_80039068
lbl_80039064:
/* 80039064 00034CC4  38 80 00 00 */	li r4, 0
lbl_80039068:
/* 80039068 00034CC8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003906C 00034CCC  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 80039070 00034CD0  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 80039074 00034CD4  38 A0 00 01 */	li r5, 1
/* 80039078 00034CD8  48 1A 4D D5 */	bl func_801DDE4C
lbl_8003907C:
/* 8003907C 00034CDC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039080 00034CE0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039084 00034CE4  7C 08 03 A6 */	mtlr r0
/* 80039088 00034CE8  38 21 00 10 */	addi r1, r1, 0x10
/* 8003908C 00034CEC  4E 80 00 20 */	blr

.global func_80039090
func_80039090:
/* 80039090 00034CF0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80039094 00034CF4  7C 08 02 A6 */	mflr r0
/* 80039098 00034CF8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003909C 00034CFC  DB E1 00 10 */	stfd f31, 0x10(r1)
/* 800390A0 00034D00  F3 E1 00 18 */	psq_st f31, 24(r1), 0, qr0
/* 800390A4 00034D04  FF E0 08 90 */	fmr f31, f1
/* 800390A8 00034D08  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800390AC 00034D0C  7C 9F 23 78 */	mr r31, r4
/* 800390B0 00034D10  93 C1 00 08 */	stw r30, 8(r1)
/* 800390B4 00034D14  7C 7E 1B 78 */	mr r30, r3
/* 800390B8 00034D18  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 800390BC 00034D1C  2C 00 00 00 */	cmpwi r0, 0
/* 800390C0 00034D20  40 82 00 0C */	bne lbl_800390CC
/* 800390C4 00034D24  38 60 00 00 */	li r3, 0
/* 800390C8 00034D28  48 00 01 18 */	b lbl_800391E0
lbl_800390CC:
/* 800390CC 00034D2C  48 00 04 2D */	bl func_800394F8
/* 800390D0 00034D30  2C 03 00 00 */	cmpwi r3, 0
/* 800390D4 00034D34  40 82 00 0C */	bne lbl_800390E0
/* 800390D8 00034D38  38 60 00 00 */	li r3, 0
/* 800390DC 00034D3C  48 00 01 04 */	b lbl_800391E0
lbl_800390E0:
/* 800390E0 00034D40  80 1E 00 00 */	lwz r0, 0(r30)
/* 800390E4 00034D44  54 00 04 63 */	rlwinm. r0, r0, 0, 0x11, 0x11
/* 800390E8 00034D48  41 82 00 14 */	beq lbl_800390FC
/* 800390EC 00034D4C  7F C3 F3 78 */	mr r3, r30
/* 800390F0 00034D50  48 00 43 C5 */	bl func_8003D4B4
/* 800390F4 00034D54  38 60 00 01 */	li r3, 1
/* 800390F8 00034D58  48 00 00 E8 */	b lbl_800391E0
lbl_800390FC:
/* 800390FC 00034D5C  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 80039100 00034D60  80 83 00 04 */	lwz r4, 4(r3)
/* 80039104 00034D64  2C 04 00 00 */	cmpwi r4, 0
/* 80039108 00034D68  40 82 00 0C */	bne lbl_80039114
/* 8003910C 00034D6C  38 60 00 00 */	li r3, 0
/* 80039110 00034D70  48 00 00 28 */	b lbl_80039138
lbl_80039114:
/* 80039114 00034D74  A0 04 00 08 */	lhz r0, 8(r4)
/* 80039118 00034D78  57 E3 04 3E */	clrlwi r3, r31, 0x10
/* 8003911C 00034D7C  7C 03 00 40 */	cmplw r3, r0
/* 80039120 00034D80  41 80 00 0C */	blt lbl_8003912C
/* 80039124 00034D84  38 60 00 00 */	li r3, 0
/* 80039128 00034D88  48 00 00 10 */	b lbl_80039138
lbl_8003912C:
/* 8003912C 00034D8C  1C 03 00 30 */	mulli r0, r3, 0x30
/* 80039130 00034D90  80 64 00 0C */	lwz r3, 0xc(r4)
/* 80039134 00034D94  7C 63 02 14 */	add r3, r3, r0
lbl_80039138:
/* 80039138 00034D98  C0 3E 0D 80 */	lfs f1, 0xd80(r30)
/* 8003913C 00034D9C  C0 02 82 70 */	lfs f0, lbl_80640870-_SDA2_BASE_(r2)
/* 80039140 00034DA0  88 A3 00 28 */	lbz r5, 0x28(r3)
/* 80039144 00034DA4  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 80039148 00034DA8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003914C 00034DAC  D0 5E 0D 90 */	stfs f2, 0xd90(r30)
/* 80039150 00034DB0  40 80 00 10 */	bge lbl_80039160
/* 80039154 00034DB4  C0 02 82 74 */	lfs f0, lbl_80640874-_SDA2_BASE_(r2)
/* 80039158 00034DB8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003915C 00034DBC  41 81 00 14 */	bgt lbl_80039170
lbl_80039160:
/* 80039160 00034DC0  C0 3E 0D 8C */	lfs f1, 0xd8c(r30)
/* 80039164 00034DC4  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80039168 00034DC8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003916C 00034DCC  40 81 00 30 */	ble lbl_8003919C
lbl_80039170:
/* 80039170 00034DD0  FC 20 F8 90 */	fmr f1, f31
/* 80039174 00034DD4  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 80039178 00034DD8  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003917C 00034DDC  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 80039180 00034DE0  38 C0 00 00 */	li r6, 0
/* 80039184 00034DE4  38 E0 00 00 */	li r7, 0
/* 80039188 00034DE8  39 00 00 00 */	li r8, 0
/* 8003918C 00034DEC  48 1B BC 69 */	bl func_801F4DF4
/* 80039190 00034DF0  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80039194 00034DF4  D0 1E 0D 8C */	stfs f0, 0xd8c(r30)
/* 80039198 00034DF8  48 00 00 38 */	b lbl_800391D0
lbl_8003919C:
/* 8003919C 00034DFC  FC 20 F8 90 */	fmr f1, f31
/* 800391A0 00034E00  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 800391A4 00034E04  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 800391A8 00034E08  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 800391AC 00034E0C  C0 7E 0D 80 */	lfs f3, 0xd80(r30)
/* 800391B0 00034E10  38 C0 00 01 */	li r6, 1
/* 800391B4 00034E14  89 3E 0D 88 */	lbz r9, 0xd88(r30)
/* 800391B8 00034E18  38 E0 00 01 */	li r7, 1
/* 800391BC 00034E1C  89 5E 0D 89 */	lbz r10, 0xd89(r30)
/* 800391C0 00034E20  39 00 00 00 */	li r8, 0
/* 800391C4 00034E24  48 1B C1 A1 */	bl func_801F5364
/* 800391C8 00034E28  C0 1E 0D 80 */	lfs f0, 0xd80(r30)
/* 800391CC 00034E2C  D0 1E 0D 8C */	stfs f0, 0xd8c(r30)
lbl_800391D0:
/* 800391D0 00034E30  38 00 00 00 */	li r0, 0
/* 800391D4 00034E34  B3 FE 0B F8 */	sth r31, 0xbf8(r30)
/* 800391D8 00034E38  38 60 00 01 */	li r3, 1
/* 800391DC 00034E3C  90 1E 0C B0 */	stw r0, 0xcb0(r30)
lbl_800391E0:
/* 800391E0 00034E40  E3 E1 00 18 */	psq_l f31, 24(r1), 0, qr0
/* 800391E4 00034E44  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800391E8 00034E48  CB E1 00 10 */	lfd f31, 0x10(r1)
/* 800391EC 00034E4C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800391F0 00034E50  83 C1 00 08 */	lwz r30, 8(r1)
/* 800391F4 00034E54  7C 08 03 A6 */	mtlr r0
/* 800391F8 00034E58  38 21 00 20 */	addi r1, r1, 0x20
/* 800391FC 00034E5C  4E 80 00 20 */	blr

.global func_80039200
func_80039200:
/* 80039200 00034E60  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80039204 00034E64  7C 08 02 A6 */	mflr r0
/* 80039208 00034E68  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003920C 00034E6C  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80039210 00034E70  FF E0 08 90 */	fmr f31, f1
/* 80039214 00034E74  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80039218 00034E78  7C 7F 1B 78 */	mr r31, r3
/* 8003921C 00034E7C  98 83 0B F6 */	stb r4, 0xbf6(r3)
/* 80039220 00034E80  48 00 30 3D */	bl func_8003C25C
/* 80039224 00034E84  FC 20 F8 90 */	fmr f1, f31
/* 80039228 00034E88  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8003922C 00034E8C  7F E3 FB 78 */	mr r3, r31
/* 80039230 00034E90  4B FF FE 61 */	bl func_80039090
/* 80039234 00034E94  88 1F 0B F6 */	lbz r0, 0xbf6(r31)
/* 80039238 00034E98  2C 00 00 00 */	cmpwi r0, 0
/* 8003923C 00034E9C  41 82 00 0C */	beq lbl_80039248
/* 80039240 00034EA0  28 00 00 10 */	cmplwi r0, 0x10
/* 80039244 00034EA4  40 82 00 14 */	bne lbl_80039258
lbl_80039248:
/* 80039248 00034EA8  80 1F 00 00 */	lwz r0, 0(r31)
/* 8003924C 00034EAC  64 00 00 02 */	oris r0, r0, 2
/* 80039250 00034EB0  90 1F 00 00 */	stw r0, 0(r31)
/* 80039254 00034EB4  48 00 00 10 */	b lbl_80039264
lbl_80039258:
/* 80039258 00034EB8  80 1F 00 00 */	lwz r0, 0(r31)
/* 8003925C 00034EBC  54 00 03 DA */	rlwinm r0, r0, 0, 0xf, 0xd
/* 80039260 00034EC0  90 1F 00 00 */	stw r0, 0(r31)
lbl_80039264:
/* 80039264 00034EC4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80039268 00034EC8  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8003926C 00034ECC  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80039270 00034ED0  7C 08 03 A6 */	mtlr r0
/* 80039274 00034ED4  38 21 00 20 */	addi r1, r1, 0x20
/* 80039278 00034ED8  4E 80 00 20 */	blr

.global func_8003927C
func_8003927C:
/* 8003927C 00034EDC  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80039280 00034EE0  7C 08 02 A6 */	mflr r0
/* 80039284 00034EE4  90 01 00 44 */	stw r0, 0x44(r1)
/* 80039288 00034EE8  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8003928C 00034EEC  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80039290 00034EF0  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80039294 00034EF4  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80039298 00034EF8  FF C0 08 90 */	fmr f30, f1
/* 8003929C 00034EFC  FF E0 10 90 */	fmr f31, f2
/* 800392A0 00034F00  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800392A4 00034F04  7C 7F 1B 78 */	mr r31, r3
/* 800392A8 00034F08  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800392AC 00034F0C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800392B0 00034F10  7C 9D 23 78 */	mr r29, r4
/* 800392B4 00034F14  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 800392B8 00034F18  2C 00 00 00 */	cmpwi r0, 0
/* 800392BC 00034F1C  40 82 00 0C */	bne lbl_800392C8
/* 800392C0 00034F20  38 60 00 00 */	li r3, 0
/* 800392C4 00034F24  48 00 01 70 */	b lbl_80039434
lbl_800392C8:
/* 800392C8 00034F28  2C 04 00 00 */	cmpwi r4, 0
/* 800392CC 00034F2C  40 82 00 0C */	bne lbl_800392D8
/* 800392D0 00034F30  38 60 00 00 */	li r3, 0
/* 800392D4 00034F34  48 00 01 60 */	b lbl_80039434
lbl_800392D8:
/* 800392D8 00034F38  88 84 00 00 */	lbz r4, 0(r4)
/* 800392DC 00034F3C  7C 84 07 74 */	extsb r4, r4
/* 800392E0 00034F40  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 800392E4 00034F44  48 00 2F 79 */	bl func_8003C25C
/* 800392E8 00034F48  54 7E 04 3E */	clrlwi r30, r3, 0x10
/* 800392EC 00034F4C  7F E3 FB 78 */	mr r3, r31
/* 800392F0 00034F50  7F C4 F3 78 */	mr r4, r30
/* 800392F4 00034F54  48 00 02 05 */	bl func_800394F8
/* 800392F8 00034F58  2C 03 00 00 */	cmpwi r3, 0
/* 800392FC 00034F5C  40 82 00 0C */	bne lbl_80039308
/* 80039300 00034F60  38 60 00 00 */	li r3, 0
/* 80039304 00034F64  48 00 01 30 */	b lbl_80039434
lbl_80039308:
/* 80039308 00034F68  80 1F 00 00 */	lwz r0, 0(r31)
/* 8003930C 00034F6C  54 00 04 63 */	rlwinm. r0, r0, 0, 0x11, 0x11
/* 80039310 00034F70  41 82 00 14 */	beq lbl_80039324
/* 80039314 00034F74  7F E3 FB 78 */	mr r3, r31
/* 80039318 00034F78  48 00 41 9D */	bl func_8003D4B4
/* 8003931C 00034F7C  38 60 00 01 */	li r3, 1
/* 80039320 00034F80  48 00 01 14 */	b lbl_80039434
lbl_80039324:
/* 80039324 00034F84  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 80039328 00034F88  80 63 00 04 */	lwz r3, 4(r3)
/* 8003932C 00034F8C  2C 03 00 00 */	cmpwi r3, 0
/* 80039330 00034F90  40 82 00 0C */	bne lbl_8003933C
/* 80039334 00034F94  38 60 00 00 */	li r3, 0
/* 80039338 00034F98  48 00 00 24 */	b lbl_8003935C
lbl_8003933C:
/* 8003933C 00034F9C  A0 03 00 08 */	lhz r0, 8(r3)
/* 80039340 00034FA0  7C 1E 00 40 */	cmplw r30, r0
/* 80039344 00034FA4  41 80 00 0C */	blt lbl_80039350
/* 80039348 00034FA8  38 60 00 00 */	li r3, 0
/* 8003934C 00034FAC  48 00 00 10 */	b lbl_8003935C
lbl_80039350:
/* 80039350 00034FB0  1C 1E 00 30 */	mulli r0, r30, 0x30
/* 80039354 00034FB4  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80039358 00034FB8  7C 63 02 14 */	add r3, r3, r0
lbl_8003935C:
/* 8003935C 00034FBC  C0 3F 0D 80 */	lfs f1, 0xd80(r31)
/* 80039360 00034FC0  C0 02 82 70 */	lfs f0, lbl_80640870-_SDA2_BASE_(r2)
/* 80039364 00034FC4  88 A3 00 28 */	lbz r5, 0x28(r3)
/* 80039368 00034FC8  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003936C 00034FCC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80039370 00034FD0  D0 5F 0D 90 */	stfs f2, 0xd90(r31)
/* 80039374 00034FD4  40 80 00 10 */	bge lbl_80039384
/* 80039378 00034FD8  C0 02 82 74 */	lfs f0, lbl_80640874-_SDA2_BASE_(r2)
/* 8003937C 00034FDC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80039380 00034FE0  41 81 00 14 */	bgt lbl_80039394
lbl_80039384:
/* 80039384 00034FE4  C0 1F 0D 8C */	lfs f0, 0xd8c(r31)
/* 80039388 00034FE8  C0 62 82 20 */	lfs f3, lbl_80640820-_SDA2_BASE_(r2)
/* 8003938C 00034FEC  FC 00 18 40 */	fcmpo cr0, f0, f3
/* 80039390 00034FF0  40 81 00 30 */	ble lbl_800393C0
lbl_80039394:
/* 80039394 00034FF4  FC 20 F0 90 */	fmr f1, f30
/* 80039398 00034FF8  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003939C 00034FFC  FC 40 F8 90 */	fmr f2, f31
/* 800393A0 00035000  7F C4 F3 78 */	mr r4, r30
/* 800393A4 00035004  38 C0 00 00 */	li r6, 0
/* 800393A8 00035008  38 E0 00 00 */	li r7, 0
/* 800393AC 0003500C  39 00 00 00 */	li r8, 0
/* 800393B0 00035010  48 1B BA 45 */	bl func_801F4DF4
/* 800393B4 00035014  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 800393B8 00035018  D0 1F 0D 8C */	stfs f0, 0xd8c(r31)
/* 800393BC 0003501C  48 00 00 34 */	b lbl_800393F0
lbl_800393C0:
/* 800393C0 00035020  FC 20 F0 90 */	fmr f1, f30
/* 800393C4 00035024  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 800393C8 00035028  FC 40 F8 90 */	fmr f2, f31
/* 800393CC 0003502C  89 3F 0D 88 */	lbz r9, 0xd88(r31)
/* 800393D0 00035030  89 5F 0D 89 */	lbz r10, 0xd89(r31)
/* 800393D4 00035034  7F C4 F3 78 */	mr r4, r30
/* 800393D8 00035038  38 C0 00 00 */	li r6, 0
/* 800393DC 0003503C  38 E0 00 01 */	li r7, 1
/* 800393E0 00035040  39 00 00 00 */	li r8, 0
/* 800393E4 00035044  48 1B BF 81 */	bl func_801F5364
/* 800393E8 00035048  C0 1F 0D 80 */	lfs f0, 0xd80(r31)
/* 800393EC 0003504C  D0 1F 0D 8C */	stfs f0, 0xd8c(r31)
lbl_800393F0:
/* 800393F0 00035050  B3 DF 0B F8 */	sth r30, 0xbf8(r31)
/* 800393F4 00035054  38 1D 00 01 */	addi r0, r29, 1
/* 800393F8 00035058  88 7D 00 00 */	lbz r3, 0(r29)
/* 800393FC 0003505C  2C 03 00 00 */	cmpwi r3, 0
/* 80039400 00035060  98 7F 0B F6 */	stb r3, 0xbf6(r31)
/* 80039404 00035064  90 1F 0C B0 */	stw r0, 0xcb0(r31)
/* 80039408 00035068  41 82 00 0C */	beq lbl_80039414
/* 8003940C 0003506C  28 03 00 10 */	cmplwi r3, 0x10
/* 80039410 00035070  40 82 00 14 */	bne lbl_80039424
lbl_80039414:
/* 80039414 00035074  80 1F 00 00 */	lwz r0, 0(r31)
/* 80039418 00035078  64 00 00 02 */	oris r0, r0, 2
/* 8003941C 0003507C  90 1F 00 00 */	stw r0, 0(r31)
/* 80039420 00035080  48 00 00 10 */	b lbl_80039430
lbl_80039424:
/* 80039424 00035084  80 1F 00 00 */	lwz r0, 0(r31)
/* 80039428 00035088  54 00 03 DA */	rlwinm r0, r0, 0, 0xf, 0xd
/* 8003942C 0003508C  90 1F 00 00 */	stw r0, 0(r31)
lbl_80039430:
/* 80039430 00035090  38 60 00 01 */	li r3, 1
lbl_80039434:
/* 80039434 00035094  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80039438 00035098  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8003943C 0003509C  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80039440 000350A0  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80039444 000350A4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80039448 000350A8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003944C 000350AC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80039450 000350B0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80039454 000350B4  7C 08 03 A6 */	mtlr r0
/* 80039458 000350B8  38 21 00 40 */	addi r1, r1, 0x40
/* 8003945C 000350BC  4E 80 00 20 */	blr

.global func_80039460
func_80039460:
/* 80039460 000350C0  A0 63 0B F8 */	lhz r3, 0xbf8(r3)
/* 80039464 000350C4  4E 80 00 20 */	blr

.global func_80039468
func_80039468:
/* 80039468 000350C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003946C 000350CC  7C 08 02 A6 */	mflr r0
/* 80039470 000350D0  2C 04 00 00 */	cmpwi r4, 0
/* 80039474 000350D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039478 000350D8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003947C 000350DC  93 C1 00 08 */	stw r30, 8(r1)
/* 80039480 000350E0  7C 7E 1B 78 */	mr r30, r3
/* 80039484 000350E4  40 80 00 0C */	bge lbl_80039490
/* 80039488 000350E8  38 60 FF FF */	li r3, -1
/* 8003948C 000350EC  48 00 00 4C */	b lbl_800394D8
lbl_80039490:
/* 80039490 000350F0  48 00 01 ED */	bl func_8003967C
/* 80039494 000350F4  2C 03 00 00 */	cmpwi r3, 0
/* 80039498 000350F8  41 82 00 3C */	beq lbl_800394D4
/* 8003949C 000350FC  88 83 00 00 */	lbz r4, 0(r3)
/* 800394A0 00035100  7F C3 F3 78 */	mr r3, r30
/* 800394A4 00035104  7C 84 07 74 */	extsb r4, r4
/* 800394A8 00035108  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 800394AC 0003510C  48 00 2D B1 */	bl func_8003C25C
/* 800394B0 00035110  54 7F 04 3E */	clrlwi r31, r3, 0x10
/* 800394B4 00035114  7F C3 F3 78 */	mr r3, r30
/* 800394B8 00035118  7F E4 FB 78 */	mr r4, r31
/* 800394BC 0003511C  48 00 00 3D */	bl func_800394F8
/* 800394C0 00035120  2C 03 00 00 */	cmpwi r3, 0
/* 800394C4 00035124  38 60 FF FF */	li r3, -1
/* 800394C8 00035128  41 82 00 10 */	beq lbl_800394D8
/* 800394CC 0003512C  7F E3 FB 78 */	mr r3, r31
/* 800394D0 00035130  48 00 00 08 */	b lbl_800394D8
lbl_800394D4:
/* 800394D4 00035134  38 60 FF FF */	li r3, -1
lbl_800394D8:
/* 800394D8 00035138  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800394DC 0003513C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800394E0 00035140  83 C1 00 08 */	lwz r30, 8(r1)
/* 800394E4 00035144  7C 08 03 A6 */	mtlr r0
/* 800394E8 00035148  38 21 00 10 */	addi r1, r1, 0x10
/* 800394EC 0003514C  4E 80 00 20 */	blr

.global func_800394F0
func_800394F0:
/* 800394F0 00035150  88 63 0B F6 */	lbz r3, 0xbf6(r3)
/* 800394F4 00035154  4E 80 00 20 */	blr

.global func_800394F8
func_800394F8:
/* 800394F8 00035158  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 800394FC 0003515C  2C 03 00 00 */	cmpwi r3, 0
/* 80039500 00035160  40 82 00 0C */	bne lbl_8003950C
/* 80039504 00035164  38 60 00 00 */	li r3, 0
/* 80039508 00035168  4E 80 00 20 */	blr
lbl_8003950C:
/* 8003950C 0003516C  2C 04 00 00 */	cmpwi r4, 0
/* 80039510 00035170  41 80 00 2C */	blt lbl_8003953C
/* 80039514 00035174  80 63 00 04 */	lwz r3, 4(r3)
/* 80039518 00035178  2C 03 00 00 */	cmpwi r3, 0
/* 8003951C 0003517C  41 82 00 0C */	beq lbl_80039528
/* 80039520 00035180  A0 03 00 08 */	lhz r0, 8(r3)
/* 80039524 00035184  48 00 00 08 */	b lbl_8003952C
lbl_80039528:
/* 80039528 00035188  38 00 00 00 */	li r0, 0
lbl_8003952C:
/* 8003952C 0003518C  7C 04 00 00 */	cmpw r4, r0
/* 80039530 00035190  40 80 00 0C */	bge lbl_8003953C
/* 80039534 00035194  38 60 00 01 */	li r3, 1
/* 80039538 00035198  4E 80 00 20 */	blr
lbl_8003953C:
/* 8003953C 0003519C  38 60 00 00 */	li r3, 0
/* 80039540 000351A0  4E 80 00 20 */	blr

.global func_80039544
func_80039544:
/* 80039544 000351A4  A0 03 0C 68 */	lhz r0, 0xc68(r3)
/* 80039548 000351A8  28 00 01 00 */	cmplwi r0, 0x100
/* 8003954C 000351AC  40 82 00 9C */	bne lbl_800395E8
/* 80039550 000351B0  80 03 0C 00 */	lwz r0, 0xc00(r3)
/* 80039554 000351B4  2C 00 00 00 */	cmpwi r0, 0
/* 80039558 000351B8  4D 82 00 20 */	beqlr
/* 8003955C 000351BC  39 20 00 00 */	li r9, 0
/* 80039560 000351C0  48 00 00 6C */	b lbl_800395CC
lbl_80039564:
/* 80039564 000351C4  81 07 00 04 */	lwz r8, 4(r7)
/* 80039568 000351C8  2C 08 00 00 */	cmpwi r8, 0
/* 8003956C 000351CC  40 82 00 0C */	bne lbl_80039578
/* 80039570 000351D0  38 A0 00 00 */	li r5, 0
/* 80039574 000351D4  48 00 00 28 */	b lbl_8003959C
lbl_80039578:
/* 80039578 000351D8  80 A7 00 00 */	lwz r5, 0(r7)
/* 8003957C 000351DC  55 26 06 3E */	clrlwi r6, r9, 0x18
/* 80039580 000351E0  A0 05 00 18 */	lhz r0, 0x18(r5)
/* 80039584 000351E4  7C 06 00 40 */	cmplw r6, r0
/* 80039588 000351E8  41 80 00 0C */	blt lbl_80039594
/* 8003958C 000351EC  38 A0 00 00 */	li r5, 0
/* 80039590 000351F0  48 00 00 0C */	b lbl_8003959C
lbl_80039594:
/* 80039594 000351F4  55 20 15 BA */	rlwinm r0, r9, 2, 0x16, 0x1d
/* 80039598 000351F8  7C A8 00 2E */	lwzx r5, r8, r0
lbl_8003959C:
/* 8003959C 000351FC  2C 05 00 00 */	cmpwi r5, 0
/* 800395A0 00035200  41 82 00 28 */	beq lbl_800395C8
/* 800395A4 00035204  2C 04 00 00 */	cmpwi r4, 0
/* 800395A8 00035208  41 82 00 14 */	beq lbl_800395BC
/* 800395AC 0003520C  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 800395B0 00035210  60 00 00 10 */	ori r0, r0, 0x10
/* 800395B4 00035214  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 800395B8 00035218  48 00 00 10 */	b lbl_800395C8
lbl_800395BC:
/* 800395BC 0003521C  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 800395C0 00035220  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 800395C4 00035224  B0 05 00 DC */	sth r0, 0xdc(r5)
lbl_800395C8:
/* 800395C8 00035228  39 29 00 01 */	addi r9, r9, 1
lbl_800395CC:
/* 800395CC 0003522C  80 E3 0C 00 */	lwz r7, 0xc00(r3)
/* 800395D0 00035230  55 26 06 3E */	clrlwi r6, r9, 0x18
/* 800395D4 00035234  80 A7 00 00 */	lwz r5, 0(r7)
/* 800395D8 00035238  A0 05 00 18 */	lhz r0, 0x18(r5)
/* 800395DC 0003523C  7C 06 00 00 */	cmpw r6, r0
/* 800395E0 00035240  41 80 FF 84 */	blt lbl_80039564
/* 800395E4 00035244  4E 80 00 20 */	blr
lbl_800395E8:
/* 800395E8 00035248  2C 04 00 00 */	cmpwi r4, 0
/* 800395EC 0003524C  41 82 00 20 */	beq lbl_8003960C
/* 800395F0 00035250  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 800395F4 00035254  2C 03 00 00 */	cmpwi r3, 0
/* 800395F8 00035258  4D 82 00 20 */	beqlr
/* 800395FC 0003525C  A0 03 00 DC */	lhz r0, 0xdc(r3)
/* 80039600 00035260  60 00 00 10 */	ori r0, r0, 0x10
/* 80039604 00035264  B0 03 00 DC */	sth r0, 0xdc(r3)
/* 80039608 00035268  4E 80 00 20 */	blr
lbl_8003960C:
/* 8003960C 0003526C  80 03 00 00 */	lwz r0, 0(r3)
/* 80039610 00035270  54 00 04 63 */	rlwinm. r0, r0, 0, 0x11, 0x11
/* 80039614 00035274  4C 82 00 20 */	bnelr
/* 80039618 00035278  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8003961C 0003527C  2C 03 00 00 */	cmpwi r3, 0
/* 80039620 00035280  4D 82 00 20 */	beqlr
/* 80039624 00035284  A0 03 00 DC */	lhz r0, 0xdc(r3)
/* 80039628 00035288  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8003962C 0003528C  B0 03 00 DC */	sth r0, 0xdc(r3)
/* 80039630 00035290  4E 80 00 20 */	blr

.global func_80039634
func_80039634:
/* 80039634 00035294  90 83 0C 50 */	stw r4, 0xc50(r3)
/* 80039638 00035298  90 A3 0C 54 */	stw r5, 0xc54(r3)
/* 8003963C 0003529C  4E 80 00 20 */	blr

.global func_80039640
func_80039640:
/* 80039640 000352A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80039644 000352A4  7C 08 02 A6 */	mflr r0
/* 80039648 000352A8  7C 64 1B 78 */	mr r4, r3
/* 8003964C 000352AC  80 63 0C 50 */	lwz r3, 0xc50(r3)
/* 80039650 000352B0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039654 000352B4  80 84 0C 54 */	lwz r4, 0xc54(r4)
/* 80039658 000352B8  48 1A 1E 65 */	bl func_801DB4BC
/* 8003965C 000352BC  2C 03 00 00 */	cmpwi r3, 0
/* 80039660 000352C0  40 82 00 0C */	bne lbl_8003966C
/* 80039664 000352C4  48 00 4A F9 */	bl func_8003E15C
/* 80039668 000352C8  48 00 4D C5 */	bl func_8003E42C
lbl_8003966C:
/* 8003966C 000352CC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039670 000352D0  7C 08 03 A6 */	mtlr r0
/* 80039674 000352D4  38 21 00 10 */	addi r1, r1, 0x10
/* 80039678 000352D8  4E 80 00 20 */	blr

.global func_8003967C
func_8003967C:
/* 8003967C 000352DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80039680 000352E0  7C 08 02 A6 */	mflr r0
/* 80039684 000352E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039688 000352E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003968C 000352EC  7C 9F 23 78 */	mr r31, r4
/* 80039690 000352F0  93 C1 00 08 */	stw r30, 8(r1)
/* 80039694 000352F4  7C 7E 1B 78 */	mr r30, r3
/* 80039698 000352F8  4B FF FF A9 */	bl func_80039640
/* 8003969C 000352FC  2C 03 00 00 */	cmpwi r3, 0
/* 800396A0 00035300  40 82 00 0C */	bne lbl_800396AC
/* 800396A4 00035304  38 60 00 00 */	li r3, 0
/* 800396A8 00035308  48 00 00 14 */	b lbl_800396BC
lbl_800396AC:
/* 800396AC 0003530C  A0 BE 05 10 */	lhz r5, 0x510(r30)
/* 800396B0 00035310  7F E4 FB 78 */	mr r4, r31
/* 800396B4 00035314  A0 DE 05 0E */	lhz r6, 0x50e(r30)
/* 800396B8 00035318  4B FF 98 35 */	bl func_80032EEC
lbl_800396BC:
/* 800396BC 0003531C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800396C0 00035320  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800396C4 00035324  83 C1 00 08 */	lwz r30, 8(r1)
/* 800396C8 00035328  7C 08 03 A6 */	mtlr r0
/* 800396CC 0003532C  38 21 00 10 */	addi r1, r1, 0x10
/* 800396D0 00035330  4E 80 00 20 */	blr

.global func_800396D4
func_800396D4:
/* 800396D4 00035334  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800396D8 00035338  7C 08 02 A6 */	mflr r0
/* 800396DC 0003533C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800396E0 00035340  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800396E4 00035344  7C 7F 1B 78 */	mr r31, r3
/* 800396E8 00035348  48 00 4A 75 */	bl func_8003E15C
/* 800396EC 0003534C  2C 03 00 00 */	cmpwi r3, 0
/* 800396F0 00035350  41 82 00 10 */	beq lbl_80039700
/* 800396F4 00035354  A0 9F 05 10 */	lhz r4, 0x510(r31)
/* 800396F8 00035358  48 00 4F 19 */	bl func_8003E610
/* 800396FC 0003535C  48 00 00 08 */	b lbl_80039704
lbl_80039700:
/* 80039700 00035360  38 60 00 00 */	li r3, 0
lbl_80039704:
/* 80039704 00035364  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039708 00035368  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003970C 0003536C  7C 08 03 A6 */	mtlr r0
/* 80039710 00035370  38 21 00 10 */	addi r1, r1, 0x10
/* 80039714 00035374  4E 80 00 20 */	blr

.global func_80039718
func_80039718:
/* 80039718 00035378  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003971C 0003537C  7C 08 02 A6 */	mflr r0
/* 80039720 00035380  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039724 00035384  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039728 00035388  3B E0 00 00 */	li r31, 0
/* 8003972C 0003538C  93 C1 00 08 */	stw r30, 8(r1)
/* 80039730 00035390  7C 7E 1B 78 */	mr r30, r3
/* 80039734 00035394  48 00 4A 29 */	bl func_8003E15C
/* 80039738 00035398  2C 03 00 00 */	cmpwi r3, 0
/* 8003973C 0003539C  41 82 00 10 */	beq lbl_8003974C
/* 80039740 000353A0  A0 9E 05 10 */	lhz r4, 0x510(r30)
/* 80039744 000353A4  48 00 4F 1D */	bl func_8003E660
/* 80039748 000353A8  7C 7F 1B 78 */	mr r31, r3
lbl_8003974C:
/* 8003974C 000353AC  2C 1F 00 64 */	cmpwi r31, 0x64
/* 80039750 000353B0  40 80 00 0C */	bge lbl_8003975C
/* 80039754 000353B4  38 60 00 01 */	li r3, 1
/* 80039758 000353B8  48 00 00 4C */	b lbl_800397A4
lbl_8003975C:
/* 8003975C 000353BC  2C 1F 00 FA */	cmpwi r31, 0xfa
/* 80039760 000353C0  40 80 00 0C */	bge lbl_8003976C
/* 80039764 000353C4  38 60 00 02 */	li r3, 2
/* 80039768 000353C8  48 00 00 3C */	b lbl_800397A4
lbl_8003976C:
/* 8003976C 000353CC  2C 1F 01 F4 */	cmpwi r31, 0x1f4
/* 80039770 000353D0  40 80 00 0C */	bge lbl_8003977C
/* 80039774 000353D4  38 60 00 03 */	li r3, 3
/* 80039778 000353D8  48 00 00 2C */	b lbl_800397A4
lbl_8003977C:
/* 8003977C 000353DC  2C 1F 03 E8 */	cmpwi r31, 0x3e8
/* 80039780 000353E0  40 80 00 0C */	bge lbl_8003978C
/* 80039784 000353E4  38 60 00 04 */	li r3, 4
/* 80039788 000353E8  48 00 00 1C */	b lbl_800397A4
lbl_8003978C:
/* 8003978C 000353EC  38 60 07 D0 */	li r3, 0x7d0
/* 80039790 000353F0  57 E0 0F FE */	srwi r0, r31, 0x1f
/* 80039794 000353F4  7C 63 F8 10 */	subfc r3, r3, r31
/* 80039798 000353F8  38 60 00 00 */	li r3, 0
/* 8003979C 000353FC  7C 60 19 10 */	subfe r3, r0, r3
/* 800397A0 00035400  38 63 00 06 */	addi r3, r3, 6
lbl_800397A4:
/* 800397A4 00035404  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800397A8 00035408  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800397AC 0003540C  83 C1 00 08 */	lwz r30, 8(r1)
/* 800397B0 00035410  7C 08 03 A6 */	mtlr r0
/* 800397B4 00035414  38 21 00 10 */	addi r1, r1, 0x10
/* 800397B8 00035418  4E 80 00 20 */	blr

.global func_800397BC
func_800397BC:
/* 800397BC 0003541C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800397C0 00035420  7C 08 02 A6 */	mflr r0
/* 800397C4 00035424  90 01 00 14 */	stw r0, 0x14(r1)
/* 800397C8 00035428  4B FF FF 0D */	bl func_800396D4
/* 800397CC 0003542C  28 03 00 06 */	cmplwi r3, 6
/* 800397D0 00035430  41 81 00 54 */	bgt lbl_80039824
/* 800397D4 00035434  3C 80 80 41 */	lis r4, lbl_8040A410@ha
/* 800397D8 00035438  54 60 10 3A */	slwi r0, r3, 2
/* 800397DC 0003543C  38 84 A4 10 */	addi r4, r4, lbl_8040A410@l
/* 800397E0 00035440  7C 84 00 2E */	lwzx r4, r4, r0
/* 800397E4 00035444  7C 89 03 A6 */	mtctr r4
/* 800397E8 00035448  4E 80 04 20 */	bctr
/* 800397EC 0003544C  C0 22 82 30 */	lfs f1, lbl_80640830-_SDA2_BASE_(r2)
/* 800397F0 00035450  48 00 00 38 */	b lbl_80039828
/* 800397F4 00035454  C0 22 82 88 */	lfs f1, lbl_80640888-_SDA2_BASE_(r2)
/* 800397F8 00035458  48 00 00 30 */	b lbl_80039828
/* 800397FC 0003545C  C0 22 82 8C */	lfs f1, lbl_8064088C-_SDA2_BASE_(r2)
/* 80039800 00035460  48 00 00 28 */	b lbl_80039828
/* 80039804 00035464  C0 22 82 30 */	lfs f1, lbl_80640830-_SDA2_BASE_(r2)
/* 80039808 00035468  48 00 00 20 */	b lbl_80039828
/* 8003980C 0003546C  C0 22 82 90 */	lfs f1, lbl_80640890-_SDA2_BASE_(r2)
/* 80039810 00035470  48 00 00 18 */	b lbl_80039828
/* 80039814 00035474  C0 22 82 3C */	lfs f1, lbl_8064083C-_SDA2_BASE_(r2)
/* 80039818 00035478  48 00 00 10 */	b lbl_80039828
/* 8003981C 0003547C  C0 22 82 94 */	lfs f1, lbl_80640894-_SDA2_BASE_(r2)
/* 80039820 00035480  48 00 00 08 */	b lbl_80039828
lbl_80039824:
/* 80039824 00035484  C0 22 82 30 */	lfs f1, lbl_80640830-_SDA2_BASE_(r2)
lbl_80039828:
/* 80039828 00035488  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003982C 0003548C  7C 08 03 A6 */	mtlr r0
/* 80039830 00035490  38 21 00 10 */	addi r1, r1, 0x10
/* 80039834 00035494  4E 80 00 20 */	blr

.global func_80039838
func_80039838:
/* 80039838 00035498  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003983C 0003549C  7C 08 02 A6 */	mflr r0
/* 80039840 000354A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039844 000354A4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039848 000354A8  7C 9F 23 78 */	mr r31, r4
/* 8003984C 000354AC  93 C1 00 08 */	stw r30, 8(r1)
/* 80039850 000354B0  7C 7E 1B 78 */	mr r30, r3
/* 80039854 000354B4  48 00 49 09 */	bl func_8003E15C
/* 80039858 000354B8  2C 03 00 00 */	cmpwi r3, 0
/* 8003985C 000354BC  41 82 00 24 */	beq lbl_80039880
/* 80039860 000354C0  A0 DE 05 14 */	lhz r6, 0x514(r30)
/* 80039864 000354C4  7F E5 FB 78 */	mr r5, r31
/* 80039868 000354C8  A0 1E 05 12 */	lhz r0, 0x512(r30)
/* 8003986C 000354CC  A0 9E 05 10 */	lhz r4, 0x510(r30)
/* 80039870 000354D0  54 C6 06 3E */	clrlwi r6, r6, 0x18
/* 80039874 000354D4  54 07 06 3E */	clrlwi r7, r0, 0x18
/* 80039878 000354D8  48 00 4E D9 */	bl func_8003E750
/* 8003987C 000354DC  48 00 00 08 */	b lbl_80039884
lbl_80039880:
/* 80039880 000354E0  38 60 FF FF */	li r3, -1
lbl_80039884:
/* 80039884 000354E4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039888 000354E8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003988C 000354EC  83 C1 00 08 */	lwz r30, 8(r1)
/* 80039890 000354F0  7C 08 03 A6 */	mtlr r0
/* 80039894 000354F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80039898 000354F8  4E 80 00 20 */	blr

.global func_8003989C
func_8003989C:
/* 8003989C 000354FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800398A0 00035500  7C 08 02 A6 */	mflr r0
/* 800398A4 00035504  90 01 00 14 */	stw r0, 0x14(r1)
/* 800398A8 00035508  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800398AC 0003550C  7C 9F 23 78 */	mr r31, r4
/* 800398B0 00035510  7C A4 2B 78 */	mr r4, r5
/* 800398B4 00035514  93 C1 00 08 */	stw r30, 8(r1)
/* 800398B8 00035518  7C 7E 1B 78 */	mr r30, r3
/* 800398BC 0003551C  7F E3 FB 78 */	mr r3, r31
/* 800398C0 00035520  4B FF FF 79 */	bl func_80039838
/* 800398C4 00035524  7C 65 1B 78 */	mr r5, r3
/* 800398C8 00035528  7F C3 F3 78 */	mr r3, r30
/* 800398CC 0003552C  7F E4 FB 78 */	mr r4, r31
/* 800398D0 00035530  48 00 1D A5 */	bl func_8003B674
/* 800398D4 00035534  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800398D8 00035538  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800398DC 0003553C  83 C1 00 08 */	lwz r30, 8(r1)
/* 800398E0 00035540  7C 08 03 A6 */	mtlr r0
/* 800398E4 00035544  38 21 00 10 */	addi r1, r1, 0x10
/* 800398E8 00035548  4E 80 00 20 */	blr

.global func_800398EC
func_800398EC:
/* 800398EC 0003554C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800398F0 00035550  7C 08 02 A6 */	mflr r0
/* 800398F4 00035554  90 01 00 14 */	stw r0, 0x14(r1)
/* 800398F8 00035558  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 800398FC 0003555C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039900 00035560  7C 7F 1B 78 */	mr r31, r3
/* 80039904 00035564  2C 00 00 00 */	cmpwi r0, 0
/* 80039908 00035568  41 82 00 5C */	beq lbl_80039964
/* 8003990C 0003556C  4B FF FF 2D */	bl func_80039838
/* 80039910 00035570  80 BF 0C 04 */	lwz r5, 0xc04(r31)
/* 80039914 00035574  2C 03 00 00 */	cmpwi r3, 0
/* 80039918 00035578  A0 85 00 DE */	lhz r4, 0xde(r5)
/* 8003991C 0003557C  41 80 00 40 */	blt lbl_8003995C
/* 80039920 00035580  7C 03 20 00 */	cmpw r3, r4
/* 80039924 00035584  40 80 00 38 */	bge lbl_8003995C
/* 80039928 00035588  80 A5 00 08 */	lwz r5, 8(r5)
/* 8003992C 0003558C  2C 05 00 00 */	cmpwi r5, 0
/* 80039930 00035590  40 82 00 0C */	bne lbl_8003993C
/* 80039934 00035594  38 60 00 00 */	li r3, 0
/* 80039938 00035598  48 00 00 30 */	b lbl_80039968
lbl_8003993C:
/* 8003993C 0003559C  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80039940 000355A0  7C 00 20 40 */	cmplw r0, r4
/* 80039944 000355A4  41 80 00 0C */	blt lbl_80039950
/* 80039948 000355A8  38 60 00 00 */	li r3, 0
/* 8003994C 000355AC  48 00 00 1C */	b lbl_80039968
lbl_80039950:
/* 80039950 000355B0  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 80039954 000355B4  7C 65 00 2E */	lwzx r3, r5, r0
/* 80039958 000355B8  48 00 00 10 */	b lbl_80039968
lbl_8003995C:
/* 8003995C 000355BC  38 60 00 00 */	li r3, 0
/* 80039960 000355C0  48 00 00 08 */	b lbl_80039968
lbl_80039964:
/* 80039964 000355C4  38 60 00 00 */	li r3, 0
lbl_80039968:
/* 80039968 000355C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003996C 000355CC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039970 000355D0  7C 08 03 A6 */	mtlr r0
/* 80039974 000355D4  38 21 00 10 */	addi r1, r1, 0x10
/* 80039978 000355D8  4E 80 00 20 */	blr

.global func_8003997C
func_8003997C:
/* 8003997C 000355DC  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 80039980 000355E0  2C 03 00 00 */	cmpwi r3, 0
/* 80039984 000355E4  41 82 00 3C */	beq lbl_800399C0
/* 80039988 000355E8  80 A3 00 08 */	lwz r5, 8(r3)
/* 8003998C 000355EC  2C 05 00 00 */	cmpwi r5, 0
/* 80039990 000355F0  40 82 00 0C */	bne lbl_8003999C
/* 80039994 000355F4  38 60 00 00 */	li r3, 0
/* 80039998 000355F8  4E 80 00 20 */	blr
lbl_8003999C:
/* 8003999C 000355FC  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 800399A0 00035600  54 83 04 3E */	clrlwi r3, r4, 0x10
/* 800399A4 00035604  7C 03 00 40 */	cmplw r3, r0
/* 800399A8 00035608  41 80 00 0C */	blt lbl_800399B4
/* 800399AC 0003560C  38 60 00 00 */	li r3, 0
/* 800399B0 00035610  4E 80 00 20 */	blr
lbl_800399B4:
/* 800399B4 00035614  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 800399B8 00035618  7C 65 00 2E */	lwzx r3, r5, r0
/* 800399BC 0003561C  4E 80 00 20 */	blr
lbl_800399C0:
/* 800399C0 00035620  38 60 00 00 */	li r3, 0
/* 800399C4 00035624  4E 80 00 20 */	blr

.global func_800399C8
func_800399C8:
/* 800399C8 00035628  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800399CC 0003562C  7C 08 02 A6 */	mflr r0
/* 800399D0 00035630  2C 04 00 00 */	cmpwi r4, 0
/* 800399D4 00035634  90 01 00 24 */	stw r0, 0x24(r1)
/* 800399D8 00035638  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 800399DC 0003563C  FF E0 10 90 */	fmr f31, f2
/* 800399E0 00035640  DB C1 00 10 */	stfd f30, 0x10(r1)
/* 800399E4 00035644  FF C0 08 90 */	fmr f30, f1
/* 800399E8 00035648  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800399EC 0003564C  7C 9F 23 78 */	mr r31, r4
/* 800399F0 00035650  93 C1 00 08 */	stw r30, 8(r1)
/* 800399F4 00035654  7C 7E 1B 78 */	mr r30, r3
/* 800399F8 00035658  40 80 00 0C */	bge lbl_80039A04
/* 800399FC 0003565C  38 60 00 00 */	li r3, 0
/* 80039A00 00035660  48 00 00 34 */	b lbl_80039A34
lbl_80039A04:
/* 80039A04 00035664  4B FF FC 79 */	bl func_8003967C
/* 80039A08 00035668  2C 03 00 00 */	cmpwi r3, 0
/* 80039A0C 0003566C  7C 64 1B 78 */	mr r4, r3
/* 80039A10 00035670  41 82 00 20 */	beq lbl_80039A30
/* 80039A14 00035674  FC 20 F0 90 */	fmr f1, f30
/* 80039A18 00035678  7F C3 F3 78 */	mr r3, r30
/* 80039A1C 0003567C  FC 40 F8 90 */	fmr f2, f31
/* 80039A20 00035680  4B FF F8 5D */	bl func_8003927C
/* 80039A24 00035684  B3 FE 0B F4 */	sth r31, 0xbf4(r30)
/* 80039A28 00035688  38 60 00 01 */	li r3, 1
/* 80039A2C 0003568C  48 00 00 08 */	b lbl_80039A34
lbl_80039A30:
/* 80039A30 00035690  38 60 00 00 */	li r3, 0
lbl_80039A34:
/* 80039A34 00035694  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80039A38 00035698  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80039A3C 0003569C  CB C1 00 10 */	lfd f30, 0x10(r1)
/* 80039A40 000356A0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039A44 000356A4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80039A48 000356A8  7C 08 03 A6 */	mtlr r0
/* 80039A4C 000356AC  38 21 00 20 */	addi r1, r1, 0x20
/* 80039A50 000356B0  4E 80 00 20 */	blr

.global func_80039A54
func_80039A54:
/* 80039A54 000356B4  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80039A58 000356B8  7C 08 02 A6 */	mflr r0
/* 80039A5C 000356BC  90 01 00 44 */	stw r0, 0x44(r1)
/* 80039A60 000356C0  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80039A64 000356C4  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80039A68 000356C8  FF E0 08 90 */	fmr f31, f1
/* 80039A6C 000356CC  38 A0 00 02 */	li r5, 2
/* 80039A70 000356D0  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80039A74 000356D4  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80039A78 000356D8  7C 9E 23 78 */	mr r30, r4
/* 80039A7C 000356DC  38 80 00 08 */	li r4, 8
/* 80039A80 000356E0  93 A1 00 24 */	stw r29, 0x24(r1)
/* 80039A84 000356E4  7C 7D 1B 78 */	mr r29, r3
/* 80039A88 000356E8  48 00 03 39 */	bl func_80039DC0
/* 80039A8C 000356EC  EC 1F 08 2A */	fadds f0, f31, f1
/* 80039A90 000356F0  A0 1D 05 10 */	lhz r0, 0x510(r29)
/* 80039A94 000356F4  28 00 01 67 */	cmplwi r0, 0x167
/* 80039A98 000356F8  D0 1D 0D 78 */	stfs f0, 0xd78(r29)
/* 80039A9C 000356FC  40 82 00 08 */	bne lbl_80039AA4
/* 80039AA0 00035700  3B C0 00 00 */	li r30, 0
lbl_80039AA4:
/* 80039AA4 00035704  80 1D 00 00 */	lwz r0, 0(r29)
/* 80039AA8 00035708  54 00 04 E7 */	rlwinm. r0, r0, 0, 0x13, 0x13
/* 80039AAC 0003570C  41 82 01 00 */	beq lbl_80039BAC
/* 80039AB0 00035710  7F A3 EB 78 */	mr r3, r29
/* 80039AB4 00035714  38 80 00 00 */	li r4, 0
/* 80039AB8 00035718  48 00 27 A5 */	bl func_8003C25C
/* 80039ABC 0003571C  54 7F 04 3E */	clrlwi r31, r3, 0x10
/* 80039AC0 00035720  7F A3 EB 78 */	mr r3, r29
/* 80039AC4 00035724  38 80 00 0A */	li r4, 0xa
/* 80039AC8 00035728  48 00 27 95 */	bl func_8003C25C
/* 80039ACC 0003572C  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80039AD0 00035730  7C 00 F8 40 */	cmplw r0, r31
/* 80039AD4 00035734  41 82 00 A0 */	beq lbl_80039B74
/* 80039AD8 00035738  7F A3 EB 78 */	mr r3, r29
/* 80039ADC 0003573C  4B FF FA 15 */	bl func_800394F0
/* 80039AE0 00035740  2C 03 00 0A */	cmpwi r3, 0xa
/* 80039AE4 00035744  40 82 00 10 */	bne lbl_80039AF4
/* 80039AE8 00035748  7F A3 EB 78 */	mr r3, r29
/* 80039AEC 0003574C  48 00 1C A9 */	bl func_8003B794
/* 80039AF0 00035750  D0 3D 0D 7C */	stfs f1, 0xd7c(r29)
lbl_80039AF4:
/* 80039AF4 00035754  A0 1D 05 10 */	lhz r0, 0x510(r29)
/* 80039AF8 00035758  28 00 00 B2 */	cmplwi r0, 0xb2
/* 80039AFC 0003575C  41 82 00 F0 */	beq lbl_80039BEC
/* 80039B00 00035760  2C 1E 00 00 */	cmpwi r30, 0
/* 80039B04 00035764  41 82 00 38 */	beq lbl_80039B3C
/* 80039B08 00035768  C0 1D 0D 78 */	lfs f0, 0xd78(r29)
/* 80039B0C 0003576C  7F A3 EB 78 */	mr r3, r29
/* 80039B10 00035770  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039B14 00035774  38 80 00 08 */	li r4, 8
/* 80039B18 00035778  D0 1D 0D 80 */	stfs f0, 0xd80(r29)
/* 80039B1C 0003577C  4B FF F6 E5 */	bl func_80039200
/* 80039B20 00035780  C0 3D 0D 7C */	lfs f1, 0xd7c(r29)
/* 80039B24 00035784  7F A3 EB 78 */	mr r3, r29
/* 80039B28 00035788  C0 5D 0D 78 */	lfs f2, 0xd78(r29)
/* 80039B2C 0003578C  38 80 FF FF */	li r4, -1
/* 80039B30 00035790  38 A0 00 00 */	li r5, 0
/* 80039B34 00035794  48 00 11 69 */	bl func_8003AC9C
/* 80039B38 00035798  48 00 00 A8 */	b lbl_80039BE0
lbl_80039B3C:
/* 80039B3C 0003579C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039B40 000357A0  7F A3 EB 78 */	mr r3, r29
/* 80039B44 000357A4  38 80 00 08 */	li r4, 8
/* 80039B48 000357A8  D0 3D 0D 80 */	stfs f1, 0xd80(r29)
/* 80039B4C 000357AC  4B FF F6 B5 */	bl func_80039200
/* 80039B50 000357B0  7F A4 EB 78 */	mr r4, r29
/* 80039B54 000357B4  38 61 00 08 */	addi r3, r1, 8
/* 80039B58 000357B8  4B FF EC 89 */	bl func_800387E0
/* 80039B5C 000357BC  C0 1D 0D 7C */	lfs f0, 0xd7c(r29)
/* 80039B60 000357C0  7F A3 EB 78 */	mr r3, r29
/* 80039B64 000357C4  38 81 00 08 */	addi r4, r1, 8
/* 80039B68 000357C8  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80039B6C 000357CC  4B FF EC B1 */	bl func_8003881C
/* 80039B70 000357D0  48 00 00 70 */	b lbl_80039BE0
lbl_80039B74:
/* 80039B74 000357D4  2C 1E 00 00 */	cmpwi r30, 0
/* 80039B78 000357D8  41 82 00 18 */	beq lbl_80039B90
/* 80039B7C 000357DC  C0 22 82 98 */	lfs f1, lbl_80640898-_SDA2_BASE_(r2)
/* 80039B80 000357E0  C0 1D 0D 78 */	lfs f0, 0xd78(r29)
/* 80039B84 000357E4  EC 01 00 32 */	fmuls f0, f1, f0
/* 80039B88 000357E8  D0 1D 0D 80 */	stfs f0, 0xd80(r29)
/* 80039B8C 000357EC  48 00 00 0C */	b lbl_80039B98
lbl_80039B90:
/* 80039B90 000357F0  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80039B94 000357F4  D0 1D 0D 80 */	stfs f0, 0xd80(r29)
lbl_80039B98:
/* 80039B98 000357F8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039B9C 000357FC  7F A3 EB 78 */	mr r3, r29
/* 80039BA0 00035800  38 80 00 08 */	li r4, 8
/* 80039BA4 00035804  4B FF F6 5D */	bl func_80039200
/* 80039BA8 00035808  48 00 00 38 */	b lbl_80039BE0
lbl_80039BAC:
/* 80039BAC 0003580C  2C 1E 00 00 */	cmpwi r30, 0
/* 80039BB0 00035810  41 82 00 18 */	beq lbl_80039BC8
/* 80039BB4 00035814  C0 22 82 98 */	lfs f1, lbl_80640898-_SDA2_BASE_(r2)
/* 80039BB8 00035818  C0 1D 0D 78 */	lfs f0, 0xd78(r29)
/* 80039BBC 0003581C  EC 01 00 32 */	fmuls f0, f1, f0
/* 80039BC0 00035820  D0 1D 0D 80 */	stfs f0, 0xd80(r29)
/* 80039BC4 00035824  48 00 00 0C */	b lbl_80039BD0
lbl_80039BC8:
/* 80039BC8 00035828  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80039BCC 0003582C  D0 1D 0D 80 */	stfs f0, 0xd80(r29)
lbl_80039BD0:
/* 80039BD0 00035830  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039BD4 00035834  7F A3 EB 78 */	mr r3, r29
/* 80039BD8 00035838  38 80 00 08 */	li r4, 8
/* 80039BDC 0003583C  4B FF F6 25 */	bl func_80039200
lbl_80039BE0:
/* 80039BE0 00035840  80 1D 00 00 */	lwz r0, 0(r29)
/* 80039BE4 00035844  64 00 00 20 */	oris r0, r0, 0x20
/* 80039BE8 00035848  90 1D 00 00 */	stw r0, 0(r29)
lbl_80039BEC:
/* 80039BEC 0003584C  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80039BF0 00035850  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80039BF4 00035854  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80039BF8 00035858  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80039BFC 0003585C  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80039C00 00035860  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 80039C04 00035864  7C 08 03 A6 */	mtlr r0
/* 80039C08 00035868  38 21 00 40 */	addi r1, r1, 0x40
/* 80039C0C 0003586C  4E 80 00 20 */	blr

.global func_80039C10
func_80039C10:
/* 80039C10 00035870  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80039C14 00035874  7C 08 02 A6 */	mflr r0
/* 80039C18 00035878  90 01 00 24 */	stw r0, 0x24(r1)
/* 80039C1C 0003587C  DB E1 00 10 */	stfd f31, 0x10(r1)
/* 80039C20 00035880  F3 E1 00 18 */	psq_st f31, 24(r1), 0, qr0
/* 80039C24 00035884  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039C28 00035888  93 C1 00 08 */	stw r30, 8(r1)
/* 80039C2C 0003588C  7C 7E 1B 78 */	mr r30, r3
/* 80039C30 00035890  80 03 00 00 */	lwz r0, 0(r3)
/* 80039C34 00035894  54 00 04 E7 */	rlwinm. r0, r0, 0, 0x13, 0x13
/* 80039C38 00035898  41 82 00 80 */	beq lbl_80039CB8
/* 80039C3C 0003589C  38 80 00 00 */	li r4, 0
/* 80039C40 000358A0  48 00 26 1D */	bl func_8003C25C
/* 80039C44 000358A4  54 7F 04 3E */	clrlwi r31, r3, 0x10
/* 80039C48 000358A8  7F C3 F3 78 */	mr r3, r30
/* 80039C4C 000358AC  38 80 00 0A */	li r4, 0xa
/* 80039C50 000358B0  48 00 26 0D */	bl func_8003C25C
/* 80039C54 000358B4  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80039C58 000358B8  7C 00 F8 40 */	cmplw r0, r31
/* 80039C5C 000358BC  41 82 00 48 */	beq lbl_80039CA4
/* 80039C60 000358C0  7F C3 F3 78 */	mr r3, r30
/* 80039C64 000358C4  38 80 00 0A */	li r4, 0xa
/* 80039C68 000358C8  38 A0 00 02 */	li r5, 2
/* 80039C6C 000358CC  48 00 01 55 */	bl func_80039DC0
/* 80039C70 000358D0  FF E0 08 90 */	fmr f31, f1
/* 80039C74 000358D4  D0 3E 0D 80 */	stfs f1, 0xd80(r30)
/* 80039C78 000358D8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039C7C 000358DC  7F C3 F3 78 */	mr r3, r30
/* 80039C80 000358E0  38 80 00 0A */	li r4, 0xa
/* 80039C84 000358E4  4B FF F5 7D */	bl func_80039200
/* 80039C88 000358E8  FC 40 F8 90 */	fmr f2, f31
/* 80039C8C 000358EC  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039C90 000358F0  7F C3 F3 78 */	mr r3, r30
/* 80039C94 000358F4  38 80 FF FF */	li r4, -1
/* 80039C98 000358F8  38 A0 00 00 */	li r5, 0
/* 80039C9C 000358FC  48 00 10 01 */	bl func_8003AC9C
/* 80039CA0 00035900  48 00 00 24 */	b lbl_80039CC4
lbl_80039CA4:
/* 80039CA4 00035904  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039CA8 00035908  7F C3 F3 78 */	mr r3, r30
/* 80039CAC 0003590C  38 80 00 00 */	li r4, 0
/* 80039CB0 00035910  4B FF F5 51 */	bl func_80039200
/* 80039CB4 00035914  48 00 00 10 */	b lbl_80039CC4
lbl_80039CB8:
/* 80039CB8 00035918  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039CBC 0003591C  38 80 00 00 */	li r4, 0
/* 80039CC0 00035920  4B FF F5 41 */	bl func_80039200
lbl_80039CC4:
/* 80039CC4 00035924  80 1E 00 00 */	lwz r0, 0(r30)
/* 80039CC8 00035928  54 00 02 D2 */	rlwinm r0, r0, 0, 0xb, 9
/* 80039CCC 0003592C  90 1E 00 00 */	stw r0, 0(r30)
/* 80039CD0 00035930  E3 E1 00 18 */	psq_l f31, 24(r1), 0, qr0
/* 80039CD4 00035934  CB E1 00 10 */	lfd f31, 0x10(r1)
/* 80039CD8 00035938  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039CDC 0003593C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80039CE0 00035940  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80039CE4 00035944  7C 08 03 A6 */	mtlr r0
/* 80039CE8 00035948  38 21 00 20 */	addi r1, r1, 0x20
/* 80039CEC 0003594C  4E 80 00 20 */	blr

.global func_80039CF0
func_80039CF0:
/* 80039CF0 00035950  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80039CF4 00035954  7C 08 02 A6 */	mflr r0
/* 80039CF8 00035958  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039CFC 0003595C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039D00 00035960  7C BF 2B 78 */	mr r31, r5
/* 80039D04 00035964  93 C1 00 08 */	stw r30, 8(r1)
/* 80039D08 00035968  7C 7E 1B 78 */	mr r30, r3
/* 80039D0C 0003596C  4B FF F9 71 */	bl func_8003967C
/* 80039D10 00035970  2C 03 00 00 */	cmpwi r3, 0
/* 80039D14 00035974  41 82 00 90 */	beq lbl_80039DA4
/* 80039D18 00035978  80 1E 0C 04 */	lwz r0, 0xc04(r30)
/* 80039D1C 0003597C  2C 00 00 00 */	cmpwi r0, 0
/* 80039D20 00035980  41 82 00 84 */	beq lbl_80039DA4
/* 80039D24 00035984  88 83 00 00 */	lbz r4, 0(r3)
/* 80039D28 00035988  7F C3 F3 78 */	mr r3, r30
/* 80039D2C 0003598C  7C 84 07 74 */	extsb r4, r4
/* 80039D30 00035990  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 80039D34 00035994  48 00 25 29 */	bl func_8003C25C
/* 80039D38 00035998  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 80039D3C 0003599C  80 84 00 04 */	lwz r4, 4(r4)
/* 80039D40 000359A0  2C 04 00 00 */	cmpwi r4, 0
/* 80039D44 000359A4  40 82 00 0C */	bne lbl_80039D50
/* 80039D48 000359A8  38 60 00 00 */	li r3, 0
/* 80039D4C 000359AC  48 00 00 28 */	b lbl_80039D74
lbl_80039D50:
/* 80039D50 000359B0  A0 04 00 08 */	lhz r0, 8(r4)
/* 80039D54 000359B4  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80039D58 000359B8  7C 03 00 40 */	cmplw r3, r0
/* 80039D5C 000359BC  41 80 00 0C */	blt lbl_80039D68
/* 80039D60 000359C0  38 60 00 00 */	li r3, 0
/* 80039D64 000359C4  48 00 00 10 */	b lbl_80039D74
lbl_80039D68:
/* 80039D68 000359C8  1C 03 00 30 */	mulli r0, r3, 0x30
/* 80039D6C 000359CC  80 64 00 0C */	lwz r3, 0xc(r4)
/* 80039D70 000359D0  7C 63 02 14 */	add r3, r3, r0
lbl_80039D74:
/* 80039D74 000359D4  2C 03 00 00 */	cmpwi r3, 0
/* 80039D78 000359D8  41 82 00 2C */	beq lbl_80039DA4
/* 80039D7C 000359DC  2C 1F 00 00 */	cmpwi r31, 0
/* 80039D80 000359E0  40 80 00 0C */	bge lbl_80039D8C
/* 80039D84 000359E4  C0 23 00 0C */	lfs f1, 0xc(r3)
/* 80039D88 000359E8  48 00 00 20 */	b lbl_80039DA8
lbl_80039D8C:
/* 80039D8C 000359EC  2C 1F 00 03 */	cmpwi r31, 3
/* 80039D90 000359F0  40 80 00 14 */	bge lbl_80039DA4
/* 80039D94 000359F4  57 E0 10 3A */	slwi r0, r31, 2
/* 80039D98 000359F8  7C 63 02 14 */	add r3, r3, r0
/* 80039D9C 000359FC  C0 23 00 04 */	lfs f1, 4(r3)
/* 80039DA0 00035A00  48 00 00 08 */	b lbl_80039DA8
lbl_80039DA4:
/* 80039DA4 00035A04  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
lbl_80039DA8:
/* 80039DA8 00035A08  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039DAC 00035A0C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039DB0 00035A10  83 C1 00 08 */	lwz r30, 8(r1)
/* 80039DB4 00035A14  7C 08 03 A6 */	mtlr r0
/* 80039DB8 00035A18  38 21 00 10 */	addi r1, r1, 0x10
/* 80039DBC 00035A1C  4E 80 00 20 */	blr

.global func_80039DC0
func_80039DC0:
/* 80039DC0 00035A20  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80039DC4 00035A24  7C 08 02 A6 */	mflr r0
/* 80039DC8 00035A28  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039DCC 00035A2C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039DD0 00035A30  7C BF 2B 78 */	mr r31, r5
/* 80039DD4 00035A34  93 C1 00 08 */	stw r30, 8(r1)
/* 80039DD8 00035A38  7C 7E 1B 78 */	mr r30, r3
/* 80039DDC 00035A3C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 80039DE0 00035A40  2C 00 00 00 */	cmpwi r0, 0
/* 80039DE4 00035A44  40 82 00 0C */	bne lbl_80039DF0
/* 80039DE8 00035A48  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039DEC 00035A4C  48 00 00 7C */	b lbl_80039E68
lbl_80039DF0:
/* 80039DF0 00035A50  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 80039DF4 00035A54  48 00 24 69 */	bl func_8003C25C
/* 80039DF8 00035A58  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 80039DFC 00035A5C  80 84 00 04 */	lwz r4, 4(r4)
/* 80039E00 00035A60  2C 04 00 00 */	cmpwi r4, 0
/* 80039E04 00035A64  40 82 00 0C */	bne lbl_80039E10
/* 80039E08 00035A68  38 60 00 00 */	li r3, 0
/* 80039E0C 00035A6C  48 00 00 28 */	b lbl_80039E34
lbl_80039E10:
/* 80039E10 00035A70  A0 04 00 08 */	lhz r0, 8(r4)
/* 80039E14 00035A74  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80039E18 00035A78  7C 03 00 40 */	cmplw r3, r0
/* 80039E1C 00035A7C  41 80 00 0C */	blt lbl_80039E28
/* 80039E20 00035A80  38 60 00 00 */	li r3, 0
/* 80039E24 00035A84  48 00 00 10 */	b lbl_80039E34
lbl_80039E28:
/* 80039E28 00035A88  1C 03 00 30 */	mulli r0, r3, 0x30
/* 80039E2C 00035A8C  80 64 00 0C */	lwz r3, 0xc(r4)
/* 80039E30 00035A90  7C 63 02 14 */	add r3, r3, r0
lbl_80039E34:
/* 80039E34 00035A94  2C 03 00 00 */	cmpwi r3, 0
/* 80039E38 00035A98  41 82 00 2C */	beq lbl_80039E64
/* 80039E3C 00035A9C  2C 1F 00 00 */	cmpwi r31, 0
/* 80039E40 00035AA0  40 80 00 0C */	bge lbl_80039E4C
/* 80039E44 00035AA4  C0 23 00 0C */	lfs f1, 0xc(r3)
/* 80039E48 00035AA8  48 00 00 20 */	b lbl_80039E68
lbl_80039E4C:
/* 80039E4C 00035AAC  2C 1F 00 03 */	cmpwi r31, 3
/* 80039E50 00035AB0  40 80 00 14 */	bge lbl_80039E64
/* 80039E54 00035AB4  57 E0 10 3A */	slwi r0, r31, 2
/* 80039E58 00035AB8  7C 63 02 14 */	add r3, r3, r0
/* 80039E5C 00035ABC  C0 23 00 04 */	lfs f1, 4(r3)
/* 80039E60 00035AC0  48 00 00 08 */	b lbl_80039E68
lbl_80039E64:
/* 80039E64 00035AC4  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
lbl_80039E68:
/* 80039E68 00035AC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039E6C 00035ACC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039E70 00035AD0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80039E74 00035AD4  7C 08 03 A6 */	mtlr r0
/* 80039E78 00035AD8  38 21 00 10 */	addi r1, r1, 0x10
/* 80039E7C 00035ADC  4E 80 00 20 */	blr

.global func_80039E80
func_80039E80:
/* 80039E80 00035AE0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80039E84 00035AE4  7C 08 02 A6 */	mflr r0
/* 80039E88 00035AE8  2C 05 00 00 */	cmpwi r5, 0
/* 80039E8C 00035AEC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80039E90 00035AF0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80039E94 00035AF4  7C BF 2B 78 */	mr r31, r5
/* 80039E98 00035AF8  93 C1 00 08 */	stw r30, 8(r1)
/* 80039E9C 00035AFC  7C 7E 1B 78 */	mr r30, r3
/* 80039EA0 00035B00  40 82 00 0C */	bne lbl_80039EAC
/* 80039EA4 00035B04  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039EA8 00035B08  48 00 00 84 */	b lbl_80039F2C
lbl_80039EAC:
/* 80039EAC 00035B0C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 80039EB0 00035B10  2C 00 00 00 */	cmpwi r0, 0
/* 80039EB4 00035B14  41 82 00 74 */	beq lbl_80039F28
/* 80039EB8 00035B18  48 00 23 A5 */	bl func_8003C25C
/* 80039EBC 00035B1C  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 80039EC0 00035B20  80 84 00 04 */	lwz r4, 4(r4)
/* 80039EC4 00035B24  2C 04 00 00 */	cmpwi r4, 0
/* 80039EC8 00035B28  40 82 00 0C */	bne lbl_80039ED4
/* 80039ECC 00035B2C  38 60 00 00 */	li r3, 0
/* 80039ED0 00035B30  48 00 00 28 */	b lbl_80039EF8
lbl_80039ED4:
/* 80039ED4 00035B34  A0 04 00 08 */	lhz r0, 8(r4)
/* 80039ED8 00035B38  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80039EDC 00035B3C  7C 03 00 40 */	cmplw r3, r0
/* 80039EE0 00035B40  41 80 00 0C */	blt lbl_80039EEC
/* 80039EE4 00035B44  38 60 00 00 */	li r3, 0
/* 80039EE8 00035B48  48 00 00 10 */	b lbl_80039EF8
lbl_80039EEC:
/* 80039EEC 00035B4C  1C 03 00 30 */	mulli r0, r3, 0x30
/* 80039EF0 00035B50  80 64 00 0C */	lwz r3, 0xc(r4)
/* 80039EF4 00035B54  7C 63 02 14 */	add r3, r3, r0
lbl_80039EF8:
/* 80039EF8 00035B58  2C 03 00 00 */	cmpwi r3, 0
/* 80039EFC 00035B5C  41 82 00 2C */	beq lbl_80039F28
/* 80039F00 00035B60  34 1F FF FF */	addic. r0, r31, -1
/* 80039F04 00035B64  41 80 00 0C */	blt lbl_80039F10
/* 80039F08 00035B68  2C 00 00 03 */	cmpwi r0, 3
/* 80039F0C 00035B6C  41 80 00 0C */	blt lbl_80039F18
lbl_80039F10:
/* 80039F10 00035B70  C0 23 00 0C */	lfs f1, 0xc(r3)
/* 80039F14 00035B74  48 00 00 18 */	b lbl_80039F2C
lbl_80039F18:
/* 80039F18 00035B78  54 00 10 3A */	slwi r0, r0, 2
/* 80039F1C 00035B7C  7C 63 02 14 */	add r3, r3, r0
/* 80039F20 00035B80  C0 23 00 04 */	lfs f1, 4(r3)
/* 80039F24 00035B84  48 00 00 08 */	b lbl_80039F2C
lbl_80039F28:
/* 80039F28 00035B88  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
lbl_80039F2C:
/* 80039F2C 00035B8C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80039F30 00035B90  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80039F34 00035B94  83 C1 00 08 */	lwz r30, 8(r1)
/* 80039F38 00035B98  7C 08 03 A6 */	mtlr r0
/* 80039F3C 00035B9C  38 21 00 10 */	addi r1, r1, 0x10
/* 80039F40 00035BA0  4E 80 00 20 */	blr

.global func_80039F44
func_80039F44:
/* 80039F44 00035BA4  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 80039F48 00035BA8  2C 03 00 00 */	cmpwi r3, 0
/* 80039F4C 00035BAC  40 82 00 0C */	bne lbl_80039F58
/* 80039F50 00035BB0  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 80039F54 00035BB4  4E 80 00 20 */	blr
lbl_80039F58:
/* 80039F58 00035BB8  48 1B BB EC */	b func_801F5B44
/* 80039F5C 00035BBC  4E 80 00 20 */	blr

.global func_80039F60
func_80039F60:
/* 80039F60 00035BC0  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 80039F64 00035BC4  7C 08 02 A6 */	mflr r0
/* 80039F68 00035BC8  90 01 00 64 */	stw r0, 0x64(r1)
/* 80039F6C 00035BCC  DB E1 00 50 */	stfd f31, 0x50(r1)
/* 80039F70 00035BD0  F3 E1 00 58 */	psq_st f31, 88(r1), 0, qr0
/* 80039F74 00035BD4  DB C1 00 40 */	stfd f30, 0x40(r1)
/* 80039F78 00035BD8  F3 C1 00 48 */	psq_st f30, 72(r1), 0, qr0
/* 80039F7C 00035BDC  39 61 00 40 */	addi r11, r1, 0x40
/* 80039F80 00035BE0  48 18 D1 A5 */	bl _savegpr_26
/* 80039F84 00035BE4  80 04 0C 04 */	lwz r0, 0xc04(r4)
/* 80039F88 00035BE8  FF C0 08 90 */	fmr f30, f1
/* 80039F8C 00035BEC  FF E0 10 90 */	fmr f31, f2
/* 80039F90 00035BF0  7C 7E 1B 78 */	mr r30, r3
/* 80039F94 00035BF4  2C 00 00 00 */	cmpwi r0, 0
/* 80039F98 00035BF8  7C 9F 23 78 */	mr r31, r4
/* 80039F9C 00035BFC  7C DB 33 78 */	mr r27, r6
/* 80039FA0 00035C00  7C FA 3B 78 */	mr r26, r7
/* 80039FA4 00035C04  40 82 00 18 */	bne lbl_80039FBC
/* 80039FA8 00035C08  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80039FAC 00035C0C  D0 03 00 00 */	stfs f0, 0(r3)
/* 80039FB0 00035C10  D0 03 00 04 */	stfs f0, 4(r3)
/* 80039FB4 00035C14  D0 03 00 08 */	stfs f0, 8(r3)
/* 80039FB8 00035C18  48 00 02 04 */	b lbl_8003A1BC
lbl_80039FBC:
/* 80039FBC 00035C1C  7F E3 FB 78 */	mr r3, r31
/* 80039FC0 00035C20  7C A4 2B 78 */	mr r4, r5
/* 80039FC4 00035C24  4B FF F6 B9 */	bl func_8003967C
/* 80039FC8 00035C28  2C 03 00 00 */	cmpwi r3, 0
/* 80039FCC 00035C2C  40 82 00 18 */	bne lbl_80039FE4
/* 80039FD0 00035C30  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 80039FD4 00035C34  D0 1E 00 00 */	stfs f0, 0(r30)
/* 80039FD8 00035C38  D0 1E 00 04 */	stfs f0, 4(r30)
/* 80039FDC 00035C3C  D0 1E 00 08 */	stfs f0, 8(r30)
/* 80039FE0 00035C40  48 00 01 DC */	b lbl_8003A1BC
lbl_80039FE4:
/* 80039FE4 00035C44  88 83 00 00 */	lbz r4, 0(r3)
/* 80039FE8 00035C48  7F E3 FB 78 */	mr r3, r31
/* 80039FEC 00035C4C  7C 84 07 74 */	extsb r4, r4
/* 80039FF0 00035C50  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 80039FF4 00035C54  48 00 22 69 */	bl func_8003C25C
/* 80039FF8 00035C58  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 80039FFC 00035C5C  7C 7D 1B 78 */	mr r29, r3
/* 8003A000 00035C60  80 64 00 08 */	lwz r3, 8(r4)
/* 8003A004 00035C64  2C 03 00 00 */	cmpwi r3, 0
/* 8003A008 00035C68  40 82 00 0C */	bne lbl_8003A014
/* 8003A00C 00035C6C  3B 80 00 00 */	li r28, 0
/* 8003A010 00035C70  48 00 00 1C */	b lbl_8003A02C
lbl_8003A014:
/* 8003A014 00035C74  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003A018 00035C78  2C 00 00 00 */	cmpwi r0, 0
/* 8003A01C 00035C7C  40 82 00 0C */	bne lbl_8003A028
/* 8003A020 00035C80  3B 80 00 00 */	li r28, 0
/* 8003A024 00035C84  48 00 00 08 */	b lbl_8003A02C
lbl_8003A028:
/* 8003A028 00035C88  83 83 00 00 */	lwz r28, 0(r3)
lbl_8003A02C:
/* 8003A02C 00035C8C  7F E3 FB 78 */	mr r3, r31
/* 8003A030 00035C90  7F 64 DB 78 */	mr r4, r27
/* 8003A034 00035C94  4B FF F8 05 */	bl func_80039838
/* 8003A038 00035C98  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 8003A03C 00035C9C  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003A040 00035CA0  80 A4 00 08 */	lwz r5, 8(r4)
/* 8003A044 00035CA4  2C 05 00 00 */	cmpwi r5, 0
/* 8003A048 00035CA8  40 82 00 0C */	bne lbl_8003A054
/* 8003A04C 00035CAC  3B 60 00 00 */	li r27, 0
/* 8003A050 00035CB0  48 00 00 20 */	b lbl_8003A070
lbl_8003A054:
/* 8003A054 00035CB4  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003A058 00035CB8  7C 03 00 40 */	cmplw r3, r0
/* 8003A05C 00035CBC  41 80 00 0C */	blt lbl_8003A068
/* 8003A060 00035CC0  3B 60 00 00 */	li r27, 0
/* 8003A064 00035CC4  48 00 00 0C */	b lbl_8003A070
lbl_8003A068:
/* 8003A068 00035CC8  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003A06C 00035CCC  7F 65 00 2E */	lwzx r27, r5, r0
lbl_8003A070:
/* 8003A070 00035CD0  7F E3 FB 78 */	mr r3, r31
/* 8003A074 00035CD4  7F 44 D3 78 */	mr r4, r26
/* 8003A078 00035CD8  4B FF F7 C1 */	bl func_80039838
/* 8003A07C 00035CDC  80 BF 0C 04 */	lwz r5, 0xc04(r31)
/* 8003A080 00035CE0  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003A084 00035CE4  80 85 00 08 */	lwz r4, 8(r5)
/* 8003A088 00035CE8  2C 04 00 00 */	cmpwi r4, 0
/* 8003A08C 00035CEC  40 82 00 0C */	bne lbl_8003A098
/* 8003A090 00035CF0  3B 40 00 00 */	li r26, 0
/* 8003A094 00035CF4  48 00 00 20 */	b lbl_8003A0B4
lbl_8003A098:
/* 8003A098 00035CF8  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 8003A09C 00035CFC  7C 03 00 40 */	cmplw r3, r0
/* 8003A0A0 00035D00  41 80 00 0C */	blt lbl_8003A0AC
/* 8003A0A4 00035D04  3B 40 00 00 */	li r26, 0
/* 8003A0A8 00035D08  48 00 00 0C */	b lbl_8003A0B4
lbl_8003A0AC:
/* 8003A0AC 00035D0C  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003A0B0 00035D10  7F 44 00 2E */	lwzx r26, r4, r0
lbl_8003A0B4:
/* 8003A0B4 00035D14  2C 1C 00 00 */	cmpwi r28, 0
/* 8003A0B8 00035D18  41 82 00 14 */	beq lbl_8003A0CC
/* 8003A0BC 00035D1C  2C 1B 00 00 */	cmpwi r27, 0
/* 8003A0C0 00035D20  41 82 00 0C */	beq lbl_8003A0CC
/* 8003A0C4 00035D24  2C 1A 00 00 */	cmpwi r26, 0
/* 8003A0C8 00035D28  40 82 00 18 */	bne lbl_8003A0E0
lbl_8003A0CC:
/* 8003A0CC 00035D2C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A0D0 00035D30  D0 1E 00 00 */	stfs f0, 0(r30)
/* 8003A0D4 00035D34  D0 1E 00 04 */	stfs f0, 4(r30)
/* 8003A0D8 00035D38  D0 1E 00 08 */	stfs f0, 8(r30)
/* 8003A0DC 00035D3C  48 00 00 E0 */	b lbl_8003A1BC
lbl_8003A0E0:
/* 8003A0E0 00035D40  FC 20 F0 90 */	fmr f1, f30
/* 8003A0E4 00035D44  7C A3 2B 78 */	mr r3, r5
/* 8003A0E8 00035D48  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A0EC 00035D4C  57 A4 04 3E */	clrlwi r4, r29, 0x10
/* 8003A0F0 00035D50  38 A0 00 00 */	li r5, 0
/* 8003A0F4 00035D54  38 C0 00 00 */	li r6, 0
/* 8003A0F8 00035D58  38 E0 00 00 */	li r7, 0
/* 8003A0FC 00035D5C  39 00 00 00 */	li r8, 0
/* 8003A100 00035D60  48 1B AC F5 */	bl func_801F4DF4
/* 8003A104 00035D64  81 9C 01 00 */	lwz r12, 0x100(r28)
/* 8003A108 00035D68  7F 83 E3 78 */	mr r3, r28
/* 8003A10C 00035D6C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A110 00035D70  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8003A114 00035D74  7D 89 03 A6 */	mtctr r12
/* 8003A118 00035D78  4E 80 04 21 */	bctrl
/* 8003A11C 00035D7C  C0 1B 00 DC */	lfs f0, 0xdc(r27)
/* 8003A120 00035D80  FC 20 F8 90 */	fmr f1, f31
/* 8003A124 00035D84  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A128 00035D88  57 A4 04 3E */	clrlwi r4, r29, 0x10
/* 8003A12C 00035D8C  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003A130 00035D90  38 A0 00 00 */	li r5, 0
/* 8003A134 00035D94  38 C0 00 00 */	li r6, 0
/* 8003A138 00035D98  C0 1B 00 EC */	lfs f0, 0xec(r27)
/* 8003A13C 00035D9C  38 E0 00 00 */	li r7, 0
/* 8003A140 00035DA0  39 00 00 00 */	li r8, 0
/* 8003A144 00035DA4  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 8003A148 00035DA8  C0 1B 00 FC */	lfs f0, 0xfc(r27)
/* 8003A14C 00035DAC  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8003A150 00035DB0  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A154 00035DB4  48 1B AC A1 */	bl func_801F4DF4
/* 8003A158 00035DB8  81 9C 01 00 */	lwz r12, 0x100(r28)
/* 8003A15C 00035DBC  7F 83 E3 78 */	mr r3, r28
/* 8003A160 00035DC0  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A164 00035DC4  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8003A168 00035DC8  7D 89 03 A6 */	mtctr r12
/* 8003A16C 00035DCC  4E 80 04 21 */	bctrl
/* 8003A170 00035DD0  C0 1A 00 DC */	lfs f0, 0xdc(r26)
/* 8003A174 00035DD4  38 80 00 00 */	li r4, 0
/* 8003A178 00035DD8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A17C 00035DDC  38 A0 00 01 */	li r5, 1
/* 8003A180 00035DE0  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003A184 00035DE4  38 C0 00 00 */	li r6, 0
/* 8003A188 00035DE8  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A18C 00035DEC  38 E0 00 00 */	li r7, 0
/* 8003A190 00035DF0  C0 1A 00 EC */	lfs f0, 0xec(r26)
/* 8003A194 00035DF4  39 00 00 00 */	li r8, 0
/* 8003A198 00035DF8  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8003A19C 00035DFC  C0 1A 00 FC */	lfs f0, 0xfc(r26)
/* 8003A1A0 00035E00  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003A1A4 00035E04  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A1A8 00035E08  48 1B AC 4D */	bl func_801F4DF4
/* 8003A1AC 00035E0C  7F C5 F3 78 */	mr r5, r30
/* 8003A1B0 00035E10  38 61 00 08 */	addi r3, r1, 8
/* 8003A1B4 00035E14  38 81 00 14 */	addi r4, r1, 0x14
/* 8003A1B8 00035E18  48 24 2B 31 */	bl func_8027CCE8
lbl_8003A1BC:
/* 8003A1BC 00035E1C  E3 E1 00 58 */	psq_l f31, 88(r1), 0, qr0
/* 8003A1C0 00035E20  CB E1 00 50 */	lfd f31, 0x50(r1)
/* 8003A1C4 00035E24  E3 C1 00 48 */	psq_l f30, 72(r1), 0, qr0
/* 8003A1C8 00035E28  39 61 00 40 */	addi r11, r1, 0x40
/* 8003A1CC 00035E2C  CB C1 00 40 */	lfd f30, 0x40(r1)
/* 8003A1D0 00035E30  48 18 CF A1 */	bl _restgpr_26
/* 8003A1D4 00035E34  80 01 00 64 */	lwz r0, 0x64(r1)
/* 8003A1D8 00035E38  7C 08 03 A6 */	mtlr r0
/* 8003A1DC 00035E3C  38 21 00 60 */	addi r1, r1, 0x60
/* 8003A1E0 00035E40  4E 80 00 20 */	blr

.global func_8003A1E4
func_8003A1E4:
/* 8003A1E4 00035E44  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003A1E8 00035E48  7C 08 02 A6 */	mflr r0
/* 8003A1EC 00035E4C  7C 88 23 78 */	mr r8, r4
/* 8003A1F0 00035E50  7C 64 1B 78 */	mr r4, r3
/* 8003A1F4 00035E54  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003A1F8 00035E58  7C A0 2B 78 */	mr r0, r5
/* 8003A1FC 00035E5C  7C C7 33 78 */	mr r7, r6
/* 8003A200 00035E60  7D 05 43 78 */	mr r5, r8
/* 8003A204 00035E64  7C 06 03 78 */	mr r6, r0
/* 8003A208 00035E68  38 61 00 08 */	addi r3, r1, 8
/* 8003A20C 00035E6C  4B FF FD 55 */	bl func_80039F60
/* 8003A210 00035E70  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A214 00035E74  38 61 00 08 */	addi r3, r1, 8
/* 8003A218 00035E78  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8003A21C 00035E7C  48 24 2B 69 */	bl func_8027CD84
/* 8003A220 00035E80  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003A224 00035E84  7C 08 03 A6 */	mtlr r0
/* 8003A228 00035E88  38 21 00 20 */	addi r1, r1, 0x20
/* 8003A22C 00035E8C  4E 80 00 20 */	blr

.global func_8003A230
func_8003A230:
/* 8003A230 00035E90  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003A234 00035E94  7C 08 02 A6 */	mflr r0
/* 8003A238 00035E98  7C 88 23 78 */	mr r8, r4
/* 8003A23C 00035E9C  7C 64 1B 78 */	mr r4, r3
/* 8003A240 00035EA0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003A244 00035EA4  7C A0 2B 78 */	mr r0, r5
/* 8003A248 00035EA8  7C C7 33 78 */	mr r7, r6
/* 8003A24C 00035EAC  7D 05 43 78 */	mr r5, r8
/* 8003A250 00035EB0  7C 06 03 78 */	mr r6, r0
/* 8003A254 00035EB4  38 61 00 08 */	addi r3, r1, 8
/* 8003A258 00035EB8  4B FF FD 09 */	bl func_80039F60
/* 8003A25C 00035EBC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003A260 00035EC0  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 8003A264 00035EC4  7C 08 03 A6 */	mtlr r0
/* 8003A268 00035EC8  38 21 00 20 */	addi r1, r1, 0x20
/* 8003A26C 00035ECC  4E 80 00 20 */	blr

.global func_8003A270
func_8003A270:
/* 8003A270 00035ED0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8003A274 00035ED4  7C 08 02 A6 */	mflr r0
/* 8003A278 00035ED8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8003A27C 00035EDC  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8003A280 00035EE0  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8003A284 00035EE4  39 61 00 30 */	addi r11, r1, 0x30
/* 8003A288 00035EE8  48 18 CE A1 */	bl _savegpr_27
/* 8003A28C 00035EEC  FF E0 08 90 */	fmr f31, f1
/* 8003A290 00035EF0  7C 9C 23 78 */	mr r28, r4
/* 8003A294 00035EF4  7C 7B 1B 78 */	mr r27, r3
/* 8003A298 00035EF8  7C A4 2B 78 */	mr r4, r5
/* 8003A29C 00035EFC  7C DD 33 78 */	mr r29, r6
/* 8003A2A0 00035F00  7F 83 E3 78 */	mr r3, r28
/* 8003A2A4 00035F04  4B FF F3 D9 */	bl func_8003967C
/* 8003A2A8 00035F08  2C 03 00 00 */	cmpwi r3, 0
/* 8003A2AC 00035F0C  41 82 00 10 */	beq lbl_8003A2BC
/* 8003A2B0 00035F10  80 1C 0C 04 */	lwz r0, 0xc04(r28)
/* 8003A2B4 00035F14  2C 00 00 00 */	cmpwi r0, 0
/* 8003A2B8 00035F18  40 82 00 18 */	bne lbl_8003A2D0
lbl_8003A2BC:
/* 8003A2BC 00035F1C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A2C0 00035F20  D0 1B 00 00 */	stfs f0, 0(r27)
/* 8003A2C4 00035F24  D0 1B 00 04 */	stfs f0, 4(r27)
/* 8003A2C8 00035F28  D0 1B 00 08 */	stfs f0, 8(r27)
/* 8003A2CC 00035F2C  48 00 01 44 */	b lbl_8003A410
lbl_8003A2D0:
/* 8003A2D0 00035F30  88 83 00 00 */	lbz r4, 0(r3)
/* 8003A2D4 00035F34  7F 83 E3 78 */	mr r3, r28
/* 8003A2D8 00035F38  7C 84 07 74 */	extsb r4, r4
/* 8003A2DC 00035F3C  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8003A2E0 00035F40  48 00 1F 7D */	bl func_8003C25C
/* 8003A2E4 00035F44  80 9C 0C 04 */	lwz r4, 0xc04(r28)
/* 8003A2E8 00035F48  7C 7F 1B 78 */	mr r31, r3
/* 8003A2EC 00035F4C  80 64 00 08 */	lwz r3, 8(r4)
/* 8003A2F0 00035F50  2C 03 00 00 */	cmpwi r3, 0
/* 8003A2F4 00035F54  40 82 00 0C */	bne lbl_8003A300
/* 8003A2F8 00035F58  3B C0 00 00 */	li r30, 0
/* 8003A2FC 00035F5C  48 00 00 1C */	b lbl_8003A318
lbl_8003A300:
/* 8003A300 00035F60  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003A304 00035F64  2C 00 00 00 */	cmpwi r0, 0
/* 8003A308 00035F68  40 82 00 0C */	bne lbl_8003A314
/* 8003A30C 00035F6C  3B C0 00 00 */	li r30, 0
/* 8003A310 00035F70  48 00 00 08 */	b lbl_8003A318
lbl_8003A314:
/* 8003A314 00035F74  83 C3 00 00 */	lwz r30, 0(r3)
lbl_8003A318:
/* 8003A318 00035F78  7F 83 E3 78 */	mr r3, r28
/* 8003A31C 00035F7C  7F A4 EB 78 */	mr r4, r29
/* 8003A320 00035F80  4B FF F5 19 */	bl func_80039838
/* 8003A324 00035F84  80 BC 0C 04 */	lwz r5, 0xc04(r28)
/* 8003A328 00035F88  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003A32C 00035F8C  80 85 00 08 */	lwz r4, 8(r5)
/* 8003A330 00035F90  2C 04 00 00 */	cmpwi r4, 0
/* 8003A334 00035F94  40 82 00 0C */	bne lbl_8003A340
/* 8003A338 00035F98  3B A0 00 00 */	li r29, 0
/* 8003A33C 00035F9C  48 00 00 20 */	b lbl_8003A35C
lbl_8003A340:
/* 8003A340 00035FA0  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 8003A344 00035FA4  7C 03 00 40 */	cmplw r3, r0
/* 8003A348 00035FA8  41 80 00 0C */	blt lbl_8003A354
/* 8003A34C 00035FAC  3B A0 00 00 */	li r29, 0
/* 8003A350 00035FB0  48 00 00 0C */	b lbl_8003A35C
lbl_8003A354:
/* 8003A354 00035FB4  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003A358 00035FB8  7F A4 00 2E */	lwzx r29, r4, r0
lbl_8003A35C:
/* 8003A35C 00035FBC  2C 1E 00 00 */	cmpwi r30, 0
/* 8003A360 00035FC0  41 82 00 0C */	beq lbl_8003A36C
/* 8003A364 00035FC4  2C 1D 00 00 */	cmpwi r29, 0
/* 8003A368 00035FC8  40 82 00 18 */	bne lbl_8003A380
lbl_8003A36C:
/* 8003A36C 00035FCC  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A370 00035FD0  D0 1B 00 00 */	stfs f0, 0(r27)
/* 8003A374 00035FD4  D0 1B 00 04 */	stfs f0, 4(r27)
/* 8003A378 00035FD8  D0 1B 00 08 */	stfs f0, 8(r27)
/* 8003A37C 00035FDC  48 00 00 94 */	b lbl_8003A410
lbl_8003A380:
/* 8003A380 00035FE0  FC 20 F8 90 */	fmr f1, f31
/* 8003A384 00035FE4  7C A3 2B 78 */	mr r3, r5
/* 8003A388 00035FE8  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A38C 00035FEC  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 8003A390 00035FF0  38 A0 00 00 */	li r5, 0
/* 8003A394 00035FF4  38 C0 00 00 */	li r6, 0
/* 8003A398 00035FF8  38 E0 00 00 */	li r7, 0
/* 8003A39C 00035FFC  39 00 00 00 */	li r8, 0
/* 8003A3A0 00036000  48 1B AA 55 */	bl func_801F4DF4
/* 8003A3A4 00036004  81 9E 01 00 */	lwz r12, 0x100(r30)
/* 8003A3A8 00036008  7F C3 F3 78 */	mr r3, r30
/* 8003A3AC 0003600C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A3B0 00036010  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8003A3B4 00036014  7D 89 03 A6 */	mtctr r12
/* 8003A3B8 00036018  4E 80 04 21 */	bctrl
/* 8003A3BC 0003601C  C0 5D 00 DC */	lfs f2, 0xdc(r29)
/* 8003A3C0 00036020  38 80 00 00 */	li r4, 0
/* 8003A3C4 00036024  C0 3D 00 EC */	lfs f1, 0xec(r29)
/* 8003A3C8 00036028  38 A0 00 01 */	li r5, 1
/* 8003A3CC 0003602C  C0 1D 00 FC */	lfs f0, 0xfc(r29)
/* 8003A3D0 00036030  38 C0 00 00 */	li r6, 0
/* 8003A3D4 00036034  D0 41 00 08 */	stfs f2, 8(r1)
/* 8003A3D8 00036038  38 E0 00 00 */	li r7, 0
/* 8003A3DC 0003603C  80 7C 0C 04 */	lwz r3, 0xc04(r28)
/* 8003A3E0 00036040  39 00 00 00 */	li r8, 0
/* 8003A3E4 00036044  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8003A3E8 00036048  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A3EC 0003604C  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003A3F0 00036050  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A3F4 00036054  48 1B AA 01 */	bl func_801F4DF4
/* 8003A3F8 00036058  C0 41 00 08 */	lfs f2, 8(r1)
/* 8003A3FC 0003605C  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 8003A400 00036060  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8003A404 00036064  D0 5B 00 00 */	stfs f2, 0(r27)
/* 8003A408 00036068  D0 3B 00 04 */	stfs f1, 4(r27)
/* 8003A40C 0003606C  D0 1B 00 08 */	stfs f0, 8(r27)
lbl_8003A410:
/* 8003A410 00036070  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8003A414 00036074  39 61 00 30 */	addi r11, r1, 0x30
/* 8003A418 00036078  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8003A41C 0003607C  48 18 CD 59 */	bl _restgpr_27
/* 8003A420 00036080  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8003A424 00036084  7C 08 03 A6 */	mtlr r0
/* 8003A428 00036088  38 21 00 40 */	addi r1, r1, 0x40
/* 8003A42C 0003608C  4E 80 00 20 */	blr

.global func_8003A430
func_8003A430:
/* 8003A430 00036090  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8003A434 00036094  7C 08 02 A6 */	mflr r0
/* 8003A438 00036098  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003A43C 0003609C  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 8003A440 000360A0  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 8003A444 000360A4  FF E0 08 90 */	fmr f31, f1
/* 8003A448 000360A8  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8003A44C 000360AC  7C 9F 23 78 */	mr r31, r4
/* 8003A450 000360B0  7C A4 2B 78 */	mr r4, r5
/* 8003A454 000360B4  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8003A458 000360B8  7C 7E 1B 78 */	mr r30, r3
/* 8003A45C 000360BC  7F E3 FB 78 */	mr r3, r31
/* 8003A460 000360C0  4B FF F2 1D */	bl func_8003967C
/* 8003A464 000360C4  2C 03 00 00 */	cmpwi r3, 0
/* 8003A468 000360C8  41 82 00 10 */	beq lbl_8003A478
/* 8003A46C 000360CC  80 1F 0C 04 */	lwz r0, 0xc04(r31)
/* 8003A470 000360D0  2C 00 00 00 */	cmpwi r0, 0
/* 8003A474 000360D4  40 82 00 18 */	bne lbl_8003A48C
lbl_8003A478:
/* 8003A478 000360D8  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A47C 000360DC  D0 1E 00 00 */	stfs f0, 0(r30)
/* 8003A480 000360E0  D0 1E 00 04 */	stfs f0, 4(r30)
/* 8003A484 000360E4  D0 1E 00 08 */	stfs f0, 8(r30)
/* 8003A488 000360E8  48 00 01 44 */	b lbl_8003A5CC
lbl_8003A48C:
/* 8003A48C 000360EC  88 83 00 00 */	lbz r4, 0(r3)
/* 8003A490 000360F0  7F E3 FB 78 */	mr r3, r31
/* 8003A494 000360F4  7C 84 07 74 */	extsb r4, r4
/* 8003A498 000360F8  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8003A49C 000360FC  48 00 1D C1 */	bl func_8003C25C
/* 8003A4A0 00036100  80 BF 0C 04 */	lwz r5, 0xc04(r31)
/* 8003A4A4 00036104  7C 64 1B 78 */	mr r4, r3
/* 8003A4A8 00036108  80 65 00 08 */	lwz r3, 8(r5)
/* 8003A4AC 0003610C  2C 03 00 00 */	cmpwi r3, 0
/* 8003A4B0 00036110  40 82 00 0C */	bne lbl_8003A4BC
/* 8003A4B4 00036114  38 00 00 00 */	li r0, 0
/* 8003A4B8 00036118  48 00 00 1C */	b lbl_8003A4D4
lbl_8003A4BC:
/* 8003A4BC 0003611C  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 8003A4C0 00036120  2C 00 00 00 */	cmpwi r0, 0
/* 8003A4C4 00036124  40 82 00 0C */	bne lbl_8003A4D0
/* 8003A4C8 00036128  38 00 00 00 */	li r0, 0
/* 8003A4CC 0003612C  48 00 00 08 */	b lbl_8003A4D4
lbl_8003A4D0:
/* 8003A4D0 00036130  80 03 00 00 */	lwz r0, 0(r3)
lbl_8003A4D4:
/* 8003A4D4 00036134  2C 00 00 00 */	cmpwi r0, 0
/* 8003A4D8 00036138  40 82 00 18 */	bne lbl_8003A4F0
/* 8003A4DC 0003613C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A4E0 00036140  D0 1E 00 00 */	stfs f0, 0(r30)
/* 8003A4E4 00036144  D0 1E 00 04 */	stfs f0, 4(r30)
/* 8003A4E8 00036148  D0 1E 00 08 */	stfs f0, 8(r30)
/* 8003A4EC 0003614C  48 00 00 E0 */	b lbl_8003A5CC
lbl_8003A4F0:
/* 8003A4F0 00036150  80 1F 00 00 */	lwz r0, 0(r31)
/* 8003A4F4 00036154  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8003A4F8 00036158  40 82 00 10 */	bne lbl_8003A508
/* 8003A4FC 0003615C  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 8003A500 00036160  60 00 00 01 */	ori r0, r0, 1
/* 8003A504 00036164  B0 05 00 DC */	sth r0, 0xdc(r5)
lbl_8003A508:
/* 8003A508 00036168  FC 20 F8 90 */	fmr f1, f31
/* 8003A50C 0003616C  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A510 00036170  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A514 00036174  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8003A518 00036178  38 A0 00 00 */	li r5, 0
/* 8003A51C 0003617C  38 C0 00 00 */	li r6, 0
/* 8003A520 00036180  38 E0 00 00 */	li r7, 0
/* 8003A524 00036184  39 00 00 00 */	li r8, 0
/* 8003A528 00036188  48 1B A8 CD */	bl func_801F4DF4
/* 8003A52C 0003618C  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A530 00036190  38 80 00 01 */	li r4, 1
/* 8003A534 00036194  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A538 00036198  48 1B C3 11 */	bl func_801F6848
/* 8003A53C 0003619C  7F E4 FB 78 */	mr r4, r31
/* 8003A540 000361A0  38 61 00 08 */	addi r3, r1, 8
/* 8003A544 000361A4  48 00 11 B1 */	bl func_8003B6F4
/* 8003A548 000361A8  7F E4 FB 78 */	mr r4, r31
/* 8003A54C 000361AC  38 61 00 14 */	addi r3, r1, 0x14
/* 8003A550 000361B0  48 00 11 F5 */	bl func_8003B744
/* 8003A554 000361B4  38 61 00 14 */	addi r3, r1, 0x14
/* 8003A558 000361B8  38 81 00 08 */	addi r4, r1, 8
/* 8003A55C 000361BC  38 A1 00 20 */	addi r5, r1, 0x20
/* 8003A560 000361C0  48 24 27 89 */	bl func_8027CCE8
/* 8003A564 000361C4  80 1F 00 00 */	lwz r0, 0(r31)
/* 8003A568 000361C8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8003A56C 000361CC  40 82 00 14 */	bne lbl_8003A580
/* 8003A570 000361D0  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A574 000361D4  A0 03 00 DC */	lhz r0, 0xdc(r3)
/* 8003A578 000361D8  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 8003A57C 000361DC  B0 03 00 DC */	sth r0, 0xdc(r3)
lbl_8003A580:
/* 8003A580 000361E0  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A584 000361E4  38 80 00 00 */	li r4, 0
/* 8003A588 000361E8  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A58C 000361EC  38 A0 00 01 */	li r5, 1
/* 8003A590 000361F0  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A594 000361F4  38 C0 00 00 */	li r6, 0
/* 8003A598 000361F8  38 E0 00 00 */	li r7, 0
/* 8003A59C 000361FC  39 00 00 00 */	li r8, 0
/* 8003A5A0 00036200  48 1B A8 55 */	bl func_801F4DF4
/* 8003A5A4 00036204  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003A5A8 00036208  38 80 00 01 */	li r4, 1
/* 8003A5AC 0003620C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A5B0 00036210  48 1B C2 99 */	bl func_801F6848
/* 8003A5B4 00036214  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 8003A5B8 00036218  D0 1E 00 00 */	stfs f0, 0(r30)
/* 8003A5BC 0003621C  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 8003A5C0 00036220  D0 1E 00 04 */	stfs f0, 4(r30)
/* 8003A5C4 00036224  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 8003A5C8 00036228  D0 1E 00 08 */	stfs f0, 8(r30)
lbl_8003A5CC:
/* 8003A5CC 0003622C  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 8003A5D0 00036230  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003A5D4 00036234  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 8003A5D8 00036238  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8003A5DC 0003623C  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 8003A5E0 00036240  7C 08 03 A6 */	mtlr r0
/* 8003A5E4 00036244  38 21 00 50 */	addi r1, r1, 0x50
/* 8003A5E8 00036248  4E 80 00 20 */	blr

.global func_8003A5EC
func_8003A5EC:
/* 8003A5EC 0003624C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003A5F0 00036250  7C 08 02 A6 */	mflr r0
/* 8003A5F4 00036254  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003A5F8 00036258  DB E1 00 10 */	stfd f31, 0x10(r1)
/* 8003A5FC 0003625C  F3 E1 00 18 */	psq_st f31, 24(r1), 0, qr0
/* 8003A600 00036260  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A604 00036264  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003A608 00036268  7C 7F 1B 78 */	mr r31, r3
/* 8003A60C 0003626C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003A610 00036270  2C 00 00 00 */	cmpwi r0, 0
/* 8003A614 00036274  40 82 00 0C */	bne lbl_8003A620
/* 8003A618 00036278  FC 20 F8 90 */	fmr f1, f31
/* 8003A61C 0003627C  48 00 00 90 */	b lbl_8003A6AC
lbl_8003A620:
/* 8003A620 00036280  2C 04 00 00 */	cmpwi r4, 0
/* 8003A624 00036284  40 82 00 0C */	bne lbl_8003A630
/* 8003A628 00036288  38 80 00 15 */	li r4, 0x15
/* 8003A62C 0003628C  48 00 00 1C */	b lbl_8003A648
lbl_8003A630:
/* 8003A630 00036290  2C 04 00 01 */	cmpwi r4, 1
/* 8003A634 00036294  40 82 00 0C */	bne lbl_8003A640
/* 8003A638 00036298  38 80 00 17 */	li r4, 0x17
/* 8003A63C 0003629C  48 00 00 0C */	b lbl_8003A648
lbl_8003A640:
/* 8003A640 000362A0  FC 20 F8 90 */	fmr f1, f31
/* 8003A644 000362A4  48 00 00 68 */	b lbl_8003A6AC
lbl_8003A648:
/* 8003A648 000362A8  7F E3 FB 78 */	mr r3, r31
/* 8003A64C 000362AC  4B FF F1 ED */	bl func_80039838
/* 8003A650 000362B0  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 8003A654 000362B4  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003A658 000362B8  80 A4 00 08 */	lwz r5, 8(r4)
/* 8003A65C 000362BC  2C 05 00 00 */	cmpwi r5, 0
/* 8003A660 000362C0  40 82 00 0C */	bne lbl_8003A66C
/* 8003A664 000362C4  38 60 00 00 */	li r3, 0
/* 8003A668 000362C8  48 00 00 20 */	b lbl_8003A688
lbl_8003A66C:
/* 8003A66C 000362CC  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003A670 000362D0  7C 03 00 40 */	cmplw r3, r0
/* 8003A674 000362D4  41 80 00 0C */	blt lbl_8003A680
/* 8003A678 000362D8  38 60 00 00 */	li r3, 0
/* 8003A67C 000362DC  48 00 00 0C */	b lbl_8003A688
lbl_8003A680:
/* 8003A680 000362E0  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003A684 000362E4  7C 65 00 2E */	lwzx r3, r5, r0
lbl_8003A688:
/* 8003A688 000362E8  2C 03 00 00 */	cmpwi r3, 0
/* 8003A68C 000362EC  41 82 00 1C */	beq lbl_8003A6A8
/* 8003A690 000362F0  80 63 00 1C */	lwz r3, 0x1c(r3)
/* 8003A694 000362F4  2C 03 00 00 */	cmpwi r3, 0
/* 8003A698 000362F8  41 82 00 0C */	beq lbl_8003A6A4
/* 8003A69C 000362FC  C3 E3 00 1C */	lfs f31, 0x1c(r3)
/* 8003A6A0 00036300  48 00 00 08 */	b lbl_8003A6A8
lbl_8003A6A4:
/* 8003A6A4 00036304  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
lbl_8003A6A8:
/* 8003A6A8 00036308  FC 20 F8 90 */	fmr f1, f31
lbl_8003A6AC:
/* 8003A6AC 0003630C  E3 E1 00 18 */	psq_l f31, 24(r1), 0, qr0
/* 8003A6B0 00036310  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003A6B4 00036314  CB E1 00 10 */	lfd f31, 0x10(r1)
/* 8003A6B8 00036318  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003A6BC 0003631C  7C 08 03 A6 */	mtlr r0
/* 8003A6C0 00036320  38 21 00 20 */	addi r1, r1, 0x20
/* 8003A6C4 00036324  4E 80 00 20 */	blr

.global func_8003A6C8
func_8003A6C8:
/* 8003A6C8 00036328  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 8003A6CC 0003632C  7C 08 02 A6 */	mflr r0
/* 8003A6D0 00036330  90 01 00 74 */	stw r0, 0x74(r1)
/* 8003A6D4 00036334  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 8003A6D8 00036338  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 8003A6DC 0003633C  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 8003A6E0 00036340  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 8003A6E4 00036344  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 8003A6E8 00036348  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 8003A6EC 0003634C  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 8003A6F0 00036350  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 8003A6F4 00036354  39 61 00 30 */	addi r11, r1, 0x30
/* 8003A6F8 00036358  48 18 CA 31 */	bl _savegpr_27
/* 8003A6FC 0003635C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003A700 00036360  FF C0 08 90 */	fmr f30, f1
/* 8003A704 00036364  7C 7B 1B 78 */	mr r27, r3
/* 8003A708 00036368  7C 9C 23 78 */	mr r28, r4
/* 8003A70C 0003636C  2C 00 00 00 */	cmpwi r0, 0
/* 8003A710 00036370  7C BD 2B 78 */	mr r29, r5
/* 8003A714 00036374  7C DE 33 78 */	mr r30, r6
/* 8003A718 00036378  41 82 02 08 */	beq lbl_8003A920
/* 8003A71C 0003637C  7F A4 EB 78 */	mr r4, r29
/* 8003A720 00036380  4B FF F1 19 */	bl func_80039838
/* 8003A724 00036384  80 9B 0C 04 */	lwz r4, 0xc04(r27)
/* 8003A728 00036388  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003A72C 0003638C  80 A4 00 08 */	lwz r5, 8(r4)
/* 8003A730 00036390  2C 05 00 00 */	cmpwi r5, 0
/* 8003A734 00036394  40 82 00 0C */	bne lbl_8003A740
/* 8003A738 00036398  3B E0 00 00 */	li r31, 0
/* 8003A73C 0003639C  48 00 00 20 */	b lbl_8003A75C
lbl_8003A740:
/* 8003A740 000363A0  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003A744 000363A4  7C 03 00 40 */	cmplw r3, r0
/* 8003A748 000363A8  41 80 00 0C */	blt lbl_8003A754
/* 8003A74C 000363AC  3B E0 00 00 */	li r31, 0
/* 8003A750 000363B0  48 00 00 0C */	b lbl_8003A75C
lbl_8003A754:
/* 8003A754 000363B4  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003A758 000363B8  7F E5 00 2E */	lwzx r31, r5, r0
lbl_8003A75C:
/* 8003A75C 000363BC  2C 1F 00 00 */	cmpwi r31, 0
/* 8003A760 000363C0  41 82 01 C0 */	beq lbl_8003A920
/* 8003A764 000363C4  C0 5C 00 00 */	lfs f2, 0(r28)
/* 8003A768 000363C8  C0 3C 00 04 */	lfs f1, 4(r28)
/* 8003A76C 000363CC  C0 1C 00 08 */	lfs f0, 8(r28)
/* 8003A770 000363D0  D0 41 00 08 */	stfs f2, 8(r1)
/* 8003A774 000363D4  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8003A778 000363D8  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003A77C 000363DC  93 BB 0C 74 */	stw r29, 0xc74(r27)
/* 8003A780 000363E0  A0 1F 00 10 */	lhz r0, 0x10(r31)
/* 8003A784 000363E4  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8003A788 000363E8  41 82 00 1C */	beq lbl_8003A7A4
/* 8003A78C 000363EC  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003A790 000363F0  38 9F 00 3C */	addi r4, r31, 0x3c
/* 8003A794 000363F4  48 1E 8F 2D */	bl func_802236C0
/* 8003A798 000363F8  A0 1F 00 10 */	lhz r0, 0x10(r31)
/* 8003A79C 000363FC  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 8003A7A0 00036400  B0 1F 00 10 */	sth r0, 0x10(r31)
lbl_8003A7A4:
/* 8003A7A4 00036404  C0 FF 00 2C */	lfs f7, 0x2c(r31)
/* 8003A7A8 00036408  C0 9F 00 30 */	lfs f4, 0x30(r31)
/* 8003A7AC 0003640C  C0 DF 00 34 */	lfs f6, 0x34(r31)
/* 8003A7B0 00036410  C0 7F 00 38 */	lfs f3, 0x38(r31)
/* 8003A7B4 00036414  EC 47 01 32 */	fmuls f2, f7, f4
/* 8003A7B8 00036418  C0 02 82 9C */	lfs f0, lbl_8064089C-_SDA2_BASE_(r2)
/* 8003A7BC 0003641C  EC 26 00 F2 */	fmuls f1, f6, f3
/* 8003A7C0 00036420  EF E2 08 2A */	fadds f31, f2, f1
/* 8003A7C4 00036424  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 8003A7C8 00036428  40 81 00 34 */	ble lbl_8003A7FC
/* 8003A7CC 0003642C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A7D0 00036430  D0 1B 0C 78 */	stfs f0, 0xc78(r27)
/* 8003A7D4 00036434  C0 5F 00 38 */	lfs f2, 0x38(r31)
/* 8003A7D8 00036438  C0 3F 00 2C */	lfs f1, 0x2c(r31)
/* 8003A7DC 0003643C  48 19 9E 01 */	bl atan2
/* 8003A7E0 00036440  FC 40 08 18 */	frsp f2, f1
/* 8003A7E4 00036444  C0 22 82 3C */	lfs f1, lbl_8064083C-_SDA2_BASE_(r2)
/* 8003A7E8 00036448  C0 02 82 7C */	lfs f0, lbl_8064087C-_SDA2_BASE_(r2)
/* 8003A7EC 0003644C  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8003A7F0 00036450  D0 1B 0C 80 */	stfs f0, 0xc80(r27)
/* 8003A7F4 00036454  D0 3B 0C 7C */	stfs f1, 0xc7c(r27)
/* 8003A7F8 00036458  48 00 00 F4 */	b lbl_8003A8EC
lbl_8003A7FC:
/* 8003A7FC 0003645C  C0 02 82 A0 */	lfs f0, lbl_806408A0-_SDA2_BASE_(r2)
/* 8003A800 00036460  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 8003A804 00036464  40 80 00 34 */	bge lbl_8003A838
/* 8003A808 00036468  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003A80C 0003646C  D0 1B 0C 78 */	stfs f0, 0xc78(r27)
/* 8003A810 00036470  C0 5F 00 38 */	lfs f2, 0x38(r31)
/* 8003A814 00036474  C0 3F 00 2C */	lfs f1, 0x2c(r31)
/* 8003A818 00036478  48 19 9D C5 */	bl atan2
/* 8003A81C 0003647C  FC 40 08 18 */	frsp f2, f1
/* 8003A820 00036480  C0 22 82 3C */	lfs f1, lbl_8064083C-_SDA2_BASE_(r2)
/* 8003A824 00036484  C0 02 82 A4 */	lfs f0, lbl_806408A4-_SDA2_BASE_(r2)
/* 8003A828 00036488  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8003A82C 0003648C  D0 1B 0C 80 */	stfs f0, 0xc80(r27)
/* 8003A830 00036490  D0 3B 0C 7C */	stfs f1, 0xc7c(r27)
/* 8003A834 00036494  48 00 00 B8 */	b lbl_8003A8EC
lbl_8003A838:
/* 8003A838 00036498  EC 47 00 F2 */	fmuls f2, f7, f3
/* 8003A83C 0003649C  C0 02 82 3C */	lfs f0, lbl_8064083C-_SDA2_BASE_(r2)
/* 8003A840 000364A0  EC 24 01 B2 */	fmuls f1, f4, f6
/* 8003A844 000364A4  EC A4 01 32 */	fmuls f5, f4, f4
/* 8003A848 000364A8  EC 87 01 F2 */	fmuls f4, f7, f7
/* 8003A84C 000364AC  EC 22 08 28 */	fsubs f1, f2, f1
/* 8003A850 000364B0  EC 63 00 F2 */	fmuls f3, f3, f3
/* 8003A854 000364B4  EC 46 01 B2 */	fmuls f2, f6, f6
/* 8003A858 000364B8  EF 85 20 28 */	fsubs f28, f5, f4
/* 8003A85C 000364BC  EC 20 00 72 */	fmuls f1, f0, f1
/* 8003A860 000364C0  EF A3 10 28 */	fsubs f29, f3, f2
/* 8003A864 000364C4  EC 5D E0 2A */	fadds f2, f29, f28
/* 8003A868 000364C8  48 19 9D 75 */	bl atan2
/* 8003A86C 000364CC  FC 20 08 18 */	frsp f1, f1
/* 8003A870 000364D0  C0 02 82 3C */	lfs f0, lbl_8064083C-_SDA2_BASE_(r2)
/* 8003A874 000364D4  EC 5D E0 28 */	fsubs f2, f29, f28
/* 8003A878 000364D8  D0 3B 0C 78 */	stfs f1, 0xc78(r27)
/* 8003A87C 000364DC  C0 BF 00 30 */	lfs f5, 0x30(r31)
/* 8003A880 000364E0  C0 9F 00 38 */	lfs f4, 0x38(r31)
/* 8003A884 000364E4  C0 7F 00 2C */	lfs f3, 0x2c(r31)
/* 8003A888 000364E8  C0 3F 00 34 */	lfs f1, 0x34(r31)
/* 8003A88C 000364EC  EC 85 01 32 */	fmuls f4, f5, f4
/* 8003A890 000364F0  EC 23 00 72 */	fmuls f1, f3, f1
/* 8003A894 000364F4  EC 24 08 28 */	fsubs f1, f4, f1
/* 8003A898 000364F8  EC 20 00 72 */	fmuls f1, f0, f1
/* 8003A89C 000364FC  48 19 9D 41 */	bl atan2
/* 8003A8A0 00036500  C0 42 82 3C */	lfs f2, lbl_8064083C-_SDA2_BASE_(r2)
/* 8003A8A4 00036504  FC 60 08 18 */	frsp f3, f1
/* 8003A8A8 00036508  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 8003A8AC 0003650C  EC 22 07 F2 */	fmuls f1, f2, f31
/* 8003A8B0 00036510  D0 7B 0C 7C */	stfs f3, 0xc7c(r27)
/* 8003A8B4 00036514  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003A8B8 00036518  4C 41 13 82 */	cror 2, 1, 2
/* 8003A8BC 0003651C  40 82 00 0C */	bne lbl_8003A8C8
/* 8003A8C0 00036520  C0 02 82 7C */	lfs f0, lbl_8064087C-_SDA2_BASE_(r2)
/* 8003A8C4 00036524  48 00 00 24 */	b lbl_8003A8E8
lbl_8003A8C8:
/* 8003A8C8 00036528  C0 02 82 44 */	lfs f0, lbl_80640844-_SDA2_BASE_(r2)
/* 8003A8CC 0003652C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003A8D0 00036530  4C 40 13 82 */	cror 2, 0, 2
/* 8003A8D4 00036534  40 82 00 0C */	bne lbl_8003A8E0
/* 8003A8D8 00036538  C0 02 82 80 */	lfs f0, lbl_80640880-_SDA2_BASE_(r2)
/* 8003A8DC 0003653C  48 00 00 0C */	b lbl_8003A8E8
lbl_8003A8E0:
/* 8003A8E0 00036540  48 19 9C F9 */	bl asin
/* 8003A8E4 00036544  FC 00 08 18 */	frsp f0, f1
lbl_8003A8E8:
/* 8003A8E8 00036548  D0 1B 0C 80 */	stfs f0, 0xc80(r27)
lbl_8003A8EC:
/* 8003A8EC 0003654C  C0 7B 0C 78 */	lfs f3, 0xc78(r27)
/* 8003A8F0 00036550  38 9B 0C 78 */	addi r4, r27, 0xc78
/* 8003A8F4 00036554  C0 5B 0C 7C */	lfs f2, 0xc7c(r27)
/* 8003A8F8 00036558  FC 20 F0 90 */	fmr f1, f30
/* 8003A8FC 0003655C  C0 1B 0C 80 */	lfs f0, 0xc80(r27)
/* 8003A900 00036560  7C 86 23 78 */	mr r6, r4
/* 8003A904 00036564  D0 7B 0C 84 */	stfs f3, 0xc84(r27)
/* 8003A908 00036568  7F C7 F3 78 */	mr r7, r30
/* 8003A90C 0003656C  38 7B 04 60 */	addi r3, r27, 0x460
/* 8003A910 00036570  D0 5B 0C 88 */	stfs f2, 0xc88(r27)
/* 8003A914 00036574  38 A1 00 08 */	addi r5, r1, 8
/* 8003A918 00036578  D0 1B 0C 8C */	stfs f0, 0xc8c(r27)
/* 8003A91C 0003657C  48 01 5C 29 */	bl func_80050544
lbl_8003A920:
/* 8003A920 00036580  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 8003A924 00036584  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 8003A928 00036588  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 8003A92C 0003658C  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 8003A930 00036590  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 8003A934 00036594  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 8003A938 00036598  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 8003A93C 0003659C  39 61 00 30 */	addi r11, r1, 0x30
/* 8003A940 000365A0  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 8003A944 000365A4  48 18 C8 31 */	bl _restgpr_27
/* 8003A948 000365A8  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8003A94C 000365AC  7C 08 03 A6 */	mtlr r0
/* 8003A950 000365B0  38 21 00 70 */	addi r1, r1, 0x70
/* 8003A954 000365B4  4E 80 00 20 */	blr

.global func_8003A958
func_8003A958:
/* 8003A958 000365B8  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8003A95C 000365BC  7C 08 02 A6 */	mflr r0
/* 8003A960 000365C0  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003A964 000365C4  93 E1 00 4C */	stw r31, 0x4c(r1)
/* 8003A968 000365C8  7C 7F 1B 78 */	mr r31, r3
/* 8003A96C 000365CC  93 C1 00 48 */	stw r30, 0x48(r1)
/* 8003A970 000365D0  7C 9E 23 78 */	mr r30, r4
/* 8003A974 000365D4  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003A978 000365D8  2C 00 00 00 */	cmpwi r0, 0
/* 8003A97C 000365DC  41 82 00 E0 */	beq lbl_8003AA5C
/* 8003A980 000365E0  7C A4 2B 78 */	mr r4, r5
/* 8003A984 000365E4  4B FF EE B5 */	bl func_80039838
/* 8003A988 000365E8  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 8003A98C 000365EC  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003A990 000365F0  80 A4 00 08 */	lwz r5, 8(r4)
/* 8003A994 000365F4  2C 05 00 00 */	cmpwi r5, 0
/* 8003A998 000365F8  40 82 00 0C */	bne lbl_8003A9A4
/* 8003A99C 000365FC  3B E0 00 00 */	li r31, 0
/* 8003A9A0 00036600  48 00 00 20 */	b lbl_8003A9C0
lbl_8003A9A4:
/* 8003A9A4 00036604  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003A9A8 00036608  7C 03 00 40 */	cmplw r3, r0
/* 8003A9AC 0003660C  41 80 00 0C */	blt lbl_8003A9B8
/* 8003A9B0 00036610  3B E0 00 00 */	li r31, 0
/* 8003A9B4 00036614  48 00 00 0C */	b lbl_8003A9C0
lbl_8003A9B8:
/* 8003A9B8 00036618  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003A9BC 0003661C  7F E5 00 2E */	lwzx r31, r5, r0
lbl_8003A9C0:
/* 8003A9C0 00036620  2C 1F 00 00 */	cmpwi r31, 0
/* 8003A9C4 00036624  41 82 00 98 */	beq lbl_8003AA5C
/* 8003A9C8 00036628  7F C4 F3 78 */	mr r4, r30
/* 8003A9CC 0003662C  38 61 00 18 */	addi r3, r1, 0x18
/* 8003A9D0 00036630  38 A0 00 00 */	li r5, 0
/* 8003A9D4 00036634  48 1E 89 F5 */	bl func_802233C8
/* 8003A9D8 00036638  38 61 00 08 */	addi r3, r1, 8
/* 8003A9DC 0003663C  38 81 00 18 */	addi r4, r1, 0x18
/* 8003A9E0 00036640  48 24 27 E5 */	bl func_8027D1C4
/* 8003A9E4 00036644  C0 01 00 08 */	lfs f0, 8(r1)
/* 8003A9E8 00036648  7F E3 FB 78 */	mr r3, r31
/* 8003A9EC 0003664C  38 80 00 01 */	li r4, 1
/* 8003A9F0 00036650  D0 1F 00 2C */	stfs f0, 0x2c(r31)
/* 8003A9F4 00036654  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8003A9F8 00036658  D0 1F 00 30 */	stfs f0, 0x30(r31)
/* 8003A9FC 0003665C  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8003AA00 00036660  D0 1F 00 34 */	stfs f0, 0x34(r31)
/* 8003AA04 00036664  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 8003AA08 00036668  D0 1F 00 38 */	stfs f0, 0x38(r31)
/* 8003AA0C 0003666C  A0 1F 00 10 */	lhz r0, 0x10(r31)
/* 8003AA10 00036670  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 8003AA14 00036674  B0 1F 00 10 */	sth r0, 0x10(r31)
/* 8003AA18 00036678  48 1B 7C A1 */	bl func_801F26B8
/* 8003AA1C 0003667C  80 9F 00 04 */	lwz r4, 4(r31)
/* 8003AA20 00036680  2C 04 00 00 */	cmpwi r4, 0
/* 8003AA24 00036684  41 82 00 18 */	beq lbl_8003AA3C
/* 8003AA28 00036688  A0 64 00 06 */	lhz r3, 6(r4)
/* 8003AA2C 0003668C  54 60 06 F7 */	rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 8003AA30 00036690  40 82 00 0C */	bne lbl_8003AA3C
/* 8003AA34 00036694  54 60 04 3C */	rlwinm r0, r3, 0, 0x10, 0x1e
/* 8003AA38 00036698  B0 04 00 06 */	sth r0, 6(r4)
lbl_8003AA3C:
/* 8003AA3C 0003669C  80 9F 00 08 */	lwz r4, 8(r31)
/* 8003AA40 000366A0  2C 04 00 00 */	cmpwi r4, 0
/* 8003AA44 000366A4  41 82 00 18 */	beq lbl_8003AA5C
/* 8003AA48 000366A8  A0 64 00 06 */	lhz r3, 6(r4)
/* 8003AA4C 000366AC  54 60 06 F7 */	rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 8003AA50 000366B0  40 82 00 0C */	bne lbl_8003AA5C
/* 8003AA54 000366B4  54 60 04 3C */	rlwinm r0, r3, 0, 0x10, 0x1e
/* 8003AA58 000366B8  B0 04 00 06 */	sth r0, 6(r4)
lbl_8003AA5C:
/* 8003AA5C 000366BC  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003AA60 000366C0  83 E1 00 4C */	lwz r31, 0x4c(r1)
/* 8003AA64 000366C4  83 C1 00 48 */	lwz r30, 0x48(r1)
/* 8003AA68 000366C8  7C 08 03 A6 */	mtlr r0
/* 8003AA6C 000366CC  38 21 00 50 */	addi r1, r1, 0x50
/* 8003AA70 000366D0  4E 80 00 20 */	blr

.global func_8003AA74
func_8003AA74:
/* 8003AA74 000366D4  C0 82 82 78 */	lfs f4, lbl_80640878-_SDA2_BASE_(r2)
/* 8003AA78 000366D8  3C 00 43 30 */	lis r0, 0x4330
/* 8003AA7C 000366DC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003AA80 000366E0  EC 62 20 24 */	fdivs f3, f2, f4
/* 8003AA84 000366E4  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AA88 000366E8  90 01 00 08 */	stw r0, 8(r1)
/* 8003AA8C 000366EC  90 01 00 10 */	stw r0, 0x10(r1)
/* 8003AA90 000366F0  FC 60 18 1E */	fctiwz f3, f3
/* 8003AA94 000366F4  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003AA98 000366F8  D8 61 00 18 */	stfd f3, 0x18(r1)
/* 8003AA9C 000366FC  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8003AAA0 00036700  40 80 00 38 */	bge lbl_8003AAD8
/* 8003AAA4 00036704  38 03 FF FF */	addi r0, r3, -1
/* 8003AAA8 00036708  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 8003AAAC 0003670C  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8003AAB0 00036710  90 61 00 0C */	stw r3, 0xc(r1)
/* 8003AAB4 00036714  C8 62 82 68 */	lfd f3, lbl_80640868-_SDA2_BASE_(r2)
/* 8003AAB8 00036718  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003AABC 0003671C  C8 41 00 08 */	lfd f2, 8(r1)
/* 8003AAC0 00036720  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003AAC4 00036724  EC 42 18 28 */	fsubs f2, f2, f3
/* 8003AAC8 00036728  EC 00 18 28 */	fsubs f0, f0, f3
/* 8003AACC 0003672C  EC 42 01 32 */	fmuls f2, f2, f4
/* 8003AAD0 00036730  EC 60 01 32 */	fmuls f3, f0, f4
/* 8003AAD4 00036734  48 00 00 3C */	b lbl_8003AB10
lbl_8003AAD8:
/* 8003AAD8 00036738  38 03 00 01 */	addi r0, r3, 1
/* 8003AADC 0003673C  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 8003AAE0 00036740  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8003AAE4 00036744  90 61 00 0C */	stw r3, 0xc(r1)
/* 8003AAE8 00036748  C8 62 82 68 */	lfd f3, lbl_80640868-_SDA2_BASE_(r2)
/* 8003AAEC 0003674C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003AAF0 00036750  C8 41 00 08 */	lfd f2, 8(r1)
/* 8003AAF4 00036754  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003AAF8 00036758  EC 42 18 28 */	fsubs f2, f2, f3
/* 8003AAFC 0003675C  EC 00 18 28 */	fsubs f0, f0, f3
/* 8003AB00 00036760  EC 62 01 32 */	fmuls f3, f2, f4
/* 8003AB04 00036764  EC 40 01 32 */	fmuls f2, f0, f4
/* 8003AB08 00036768  48 00 00 08 */	b lbl_8003AB10
lbl_8003AB0C:
/* 8003AB0C 0003676C  EC 21 20 2A */	fadds f1, f1, f4
lbl_8003AB10:
/* 8003AB10 00036770  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8003AB14 00036774  41 80 FF F8 */	blt lbl_8003AB0C
/* 8003AB18 00036778  48 00 00 08 */	b lbl_8003AB20
lbl_8003AB1C:
/* 8003AB1C 0003677C  EC 21 20 28 */	fsubs f1, f1, f4
lbl_8003AB20:
/* 8003AB20 00036780  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 8003AB24 00036784  41 81 FF F8 */	bgt lbl_8003AB1C
/* 8003AB28 00036788  38 21 00 20 */	addi r1, r1, 0x20
/* 8003AB2C 0003678C  4E 80 00 20 */	blr

.global func_8003AB30
func_8003AB30:
/* 8003AB30 00036790  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003AB34 00036794  7C 08 02 A6 */	mflr r0
/* 8003AB38 00036798  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003AB3C 0003679C  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8003AB40 000367A0  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8003AB44 000367A4  FF E0 08 90 */	fmr f31, f1
/* 8003AB48 000367A8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003AB4C 000367AC  7C DF 33 78 */	mr r31, r6
/* 8003AB50 000367B0  7F E7 FB 78 */	mr r7, r31
/* 8003AB54 000367B4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003AB58 000367B8  7C BE 2B 78 */	mr r30, r5
/* 8003AB5C 000367BC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003AB60 000367C0  7C 9D 23 78 */	mr r29, r4
/* 8003AB64 000367C4  38 83 0C B4 */	addi r4, r3, 0xcb4
/* 8003AB68 000367C8  93 81 00 10 */	stw r28, 0x10(r1)
/* 8003AB6C 000367CC  7C 7C 1B 78 */	mr r28, r3
/* 8003AB70 000367D0  7F A5 EB 78 */	mr r5, r29
/* 8003AB74 000367D4  7C 86 23 78 */	mr r6, r4
/* 8003AB78 000367D8  38 63 00 04 */	addi r3, r3, 4
/* 8003AB7C 000367DC  48 01 57 C1 */	bl func_8005033C
/* 8003AB80 000367E0  FC 20 F8 90 */	fmr f1, f31
/* 8003AB84 000367E4  38 9C 0C B8 */	addi r4, r28, 0xcb8
/* 8003AB88 000367E8  7C 86 23 78 */	mr r6, r4
/* 8003AB8C 000367EC  7F E7 FB 78 */	mr r7, r31
/* 8003AB90 000367F0  38 7C 00 28 */	addi r3, r28, 0x28
/* 8003AB94 000367F4  38 BD 00 04 */	addi r5, r29, 4
/* 8003AB98 000367F8  48 01 57 A5 */	bl func_8005033C
/* 8003AB9C 000367FC  FC 20 F8 90 */	fmr f1, f31
/* 8003ABA0 00036800  38 9C 0C BC */	addi r4, r28, 0xcbc
/* 8003ABA4 00036804  7C 86 23 78 */	mr r6, r4
/* 8003ABA8 00036808  7F E7 FB 78 */	mr r7, r31
/* 8003ABAC 0003680C  38 7C 00 4C */	addi r3, r28, 0x4c
/* 8003ABB0 00036810  38 BD 00 08 */	addi r5, r29, 8
/* 8003ABB4 00036814  48 01 57 89 */	bl func_8005033C
/* 8003ABB8 00036818  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003ABBC 0003681C  7F 83 E3 78 */	mr r3, r28
/* 8003ABC0 00036820  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003ABC4 00036824  7F C4 F3 78 */	mr r4, r30
/* 8003ABC8 00036828  4B FF EE 01 */	bl func_800399C8
/* 8003ABCC 0003682C  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8003ABD0 00036830  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003ABD4 00036834  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8003ABD8 00036838  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003ABDC 0003683C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003ABE0 00036840  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003ABE4 00036844  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003ABE8 00036848  7C 08 03 A6 */	mtlr r0
/* 8003ABEC 0003684C  38 21 00 30 */	addi r1, r1, 0x30
/* 8003ABF0 00036850  4E 80 00 20 */	blr

.global func_8003ABF4
func_8003ABF4:
/* 8003ABF4 00036854  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003ABF8 00036858  7C 08 02 A6 */	mflr r0
/* 8003ABFC 0003685C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003AC00 00036860  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8003AC04 00036864  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8003AC08 00036868  FF E0 18 90 */	fmr f31, f3
/* 8003AC0C 0003686C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003AC10 00036870  7C BF 2B 78 */	mr r31, r5
/* 8003AC14 00036874  7F E7 FB 78 */	mr r7, r31
/* 8003AC18 00036878  38 A1 00 08 */	addi r5, r1, 8
/* 8003AC1C 0003687C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003AC20 00036880  7C 9E 23 78 */	mr r30, r4
/* 8003AC24 00036884  38 83 0C B4 */	addi r4, r3, 0xcb4
/* 8003AC28 00036888  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003AC2C 0003688C  7C 7D 1B 78 */	mr r29, r3
/* 8003AC30 00036890  7C 86 23 78 */	mr r6, r4
/* 8003AC34 00036894  38 63 00 04 */	addi r3, r3, 4
/* 8003AC38 00036898  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003AC3C 0003689C  FC 20 F8 90 */	fmr f1, f31
/* 8003AC40 000368A0  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 8003AC44 000368A4  48 01 56 F9 */	bl func_8005033C
/* 8003AC48 000368A8  FC 20 F8 90 */	fmr f1, f31
/* 8003AC4C 000368AC  38 9D 0C BC */	addi r4, r29, 0xcbc
/* 8003AC50 000368B0  7C 86 23 78 */	mr r6, r4
/* 8003AC54 000368B4  7F E7 FB 78 */	mr r7, r31
/* 8003AC58 000368B8  38 7D 00 4C */	addi r3, r29, 0x4c
/* 8003AC5C 000368BC  38 A1 00 0C */	addi r5, r1, 0xc
/* 8003AC60 000368C0  48 01 56 DD */	bl func_8005033C
/* 8003AC64 000368C4  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AC68 000368C8  7F A3 EB 78 */	mr r3, r29
/* 8003AC6C 000368CC  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003AC70 000368D0  7F C4 F3 78 */	mr r4, r30
/* 8003AC74 000368D4  4B FF ED 55 */	bl func_800399C8
/* 8003AC78 000368D8  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8003AC7C 000368DC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003AC80 000368E0  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8003AC84 000368E4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003AC88 000368E8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003AC8C 000368EC  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003AC90 000368F0  7C 08 03 A6 */	mtlr r0
/* 8003AC94 000368F4  38 21 00 30 */	addi r1, r1, 0x30
/* 8003AC98 000368F8  4E 80 00 20 */	blr

.global func_8003AC9C
func_8003AC9C:
/* 8003AC9C 000368FC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003ACA0 00036900  7C 08 02 A6 */	mflr r0
/* 8003ACA4 00036904  7C A7 2B 78 */	mr r7, r5
/* 8003ACA8 00036908  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003ACAC 0003690C  38 A1 00 08 */	addi r5, r1, 8
/* 8003ACB0 00036910  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003ACB4 00036914  7C 9F 23 78 */	mr r31, r4
/* 8003ACB8 00036918  38 83 0C B8 */	addi r4, r3, 0xcb8
/* 8003ACBC 0003691C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003ACC0 00036920  7C 7E 1B 78 */	mr r30, r3
/* 8003ACC4 00036924  7C 86 23 78 */	mr r6, r4
/* 8003ACC8 00036928  38 63 00 28 */	addi r3, r3, 0x28
/* 8003ACCC 0003692C  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003ACD0 00036930  FC 20 10 90 */	fmr f1, f2
/* 8003ACD4 00036934  48 01 56 69 */	bl func_8005033C
/* 8003ACD8 00036938  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003ACDC 0003693C  7F C3 F3 78 */	mr r3, r30
/* 8003ACE0 00036940  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003ACE4 00036944  7F E4 FB 78 */	mr r4, r31
/* 8003ACE8 00036948  4B FF EC E1 */	bl func_800399C8
/* 8003ACEC 0003694C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003ACF0 00036950  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003ACF4 00036954  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003ACF8 00036958  7C 08 03 A6 */	mtlr r0
/* 8003ACFC 0003695C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003AD00 00036960  4E 80 00 20 */	blr

.global func_8003AD04
func_8003AD04:
/* 8003AD04 00036964  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003AD08 00036968  7C 08 02 A6 */	mflr r0
/* 8003AD0C 0003696C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003AD10 00036970  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8003AD14 00036974  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8003AD18 00036978  FF E0 08 90 */	fmr f31, f1
/* 8003AD1C 0003697C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003AD20 00036980  7C DF 33 78 */	mr r31, r6
/* 8003AD24 00036984  7F E7 FB 78 */	mr r7, r31
/* 8003AD28 00036988  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003AD2C 0003698C  7C BE 2B 78 */	mr r30, r5
/* 8003AD30 00036990  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003AD34 00036994  7C 9D 23 78 */	mr r29, r4
/* 8003AD38 00036998  38 83 0C C0 */	addi r4, r3, 0xcc0
/* 8003AD3C 0003699C  93 81 00 10 */	stw r28, 0x10(r1)
/* 8003AD40 000369A0  7C 7C 1B 78 */	mr r28, r3
/* 8003AD44 000369A4  7F A5 EB 78 */	mr r5, r29
/* 8003AD48 000369A8  7C 86 23 78 */	mr r6, r4
/* 8003AD4C 000369AC  38 63 00 70 */	addi r3, r3, 0x70
/* 8003AD50 000369B0  48 01 55 ED */	bl func_8005033C
/* 8003AD54 000369B4  FC 20 F8 90 */	fmr f1, f31
/* 8003AD58 000369B8  38 9C 0C C4 */	addi r4, r28, 0xcc4
/* 8003AD5C 000369BC  7C 86 23 78 */	mr r6, r4
/* 8003AD60 000369C0  7F E7 FB 78 */	mr r7, r31
/* 8003AD64 000369C4  38 7C 00 94 */	addi r3, r28, 0x94
/* 8003AD68 000369C8  38 BD 00 04 */	addi r5, r29, 4
/* 8003AD6C 000369CC  48 01 55 D1 */	bl func_8005033C
/* 8003AD70 000369D0  FC 20 F8 90 */	fmr f1, f31
/* 8003AD74 000369D4  38 9C 0C C8 */	addi r4, r28, 0xcc8
/* 8003AD78 000369D8  7C 86 23 78 */	mr r6, r4
/* 8003AD7C 000369DC  7F E7 FB 78 */	mr r7, r31
/* 8003AD80 000369E0  38 7C 00 B8 */	addi r3, r28, 0xb8
/* 8003AD84 000369E4  38 BD 00 08 */	addi r5, r29, 8
/* 8003AD88 000369E8  48 01 55 B5 */	bl func_8005033C
/* 8003AD8C 000369EC  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AD90 000369F0  7F 83 E3 78 */	mr r3, r28
/* 8003AD94 000369F4  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003AD98 000369F8  7F C4 F3 78 */	mr r4, r30
/* 8003AD9C 000369FC  4B FF EC 2D */	bl func_800399C8
/* 8003ADA0 00036A00  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8003ADA4 00036A04  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003ADA8 00036A08  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8003ADAC 00036A0C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003ADB0 00036A10  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003ADB4 00036A14  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003ADB8 00036A18  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003ADBC 00036A1C  7C 08 03 A6 */	mtlr r0
/* 8003ADC0 00036A20  38 21 00 30 */	addi r1, r1, 0x30
/* 8003ADC4 00036A24  4E 80 00 20 */	blr

.global func_8003ADC8
func_8003ADC8:
/* 8003ADC8 00036A28  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003ADCC 00036A2C  7C 08 02 A6 */	mflr r0
/* 8003ADD0 00036A30  38 E0 00 00 */	li r7, 0
/* 8003ADD4 00036A34  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003ADD8 00036A38  38 A1 00 08 */	addi r5, r1, 8
/* 8003ADDC 00036A3C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003ADE0 00036A40  7C 9F 23 78 */	mr r31, r4
/* 8003ADE4 00036A44  38 83 0C C4 */	addi r4, r3, 0xcc4
/* 8003ADE8 00036A48  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003ADEC 00036A4C  7C 7E 1B 78 */	mr r30, r3
/* 8003ADF0 00036A50  7C 86 23 78 */	mr r6, r4
/* 8003ADF4 00036A54  38 63 00 94 */	addi r3, r3, 0x94
/* 8003ADF8 00036A58  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003ADFC 00036A5C  FC 20 10 90 */	fmr f1, f2
/* 8003AE00 00036A60  48 01 55 3D */	bl func_8005033C
/* 8003AE04 00036A64  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AE08 00036A68  7F C3 F3 78 */	mr r3, r30
/* 8003AE0C 00036A6C  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003AE10 00036A70  7F E4 FB 78 */	mr r4, r31
/* 8003AE14 00036A74  4B FF EB B5 */	bl func_800399C8
/* 8003AE18 00036A78  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003AE1C 00036A7C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003AE20 00036A80  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003AE24 00036A84  7C 08 03 A6 */	mtlr r0
/* 8003AE28 00036A88  38 21 00 20 */	addi r1, r1, 0x20
/* 8003AE2C 00036A8C  4E 80 00 20 */	blr

.global func_8003AE30
func_8003AE30:
/* 8003AE30 00036A90  C0 82 82 78 */	lfs f4, lbl_80640878-_SDA2_BASE_(r2)
/* 8003AE34 00036A94  C0 02 82 48 */	lfs f0, lbl_80640848-_SDA2_BASE_(r2)
/* 8003AE38 00036A98  48 00 00 10 */	b lbl_8003AE48
lbl_8003AE3C:
/* 8003AE3C 00036A9C  C0 63 0C C4 */	lfs f3, 0xcc4(r3)
/* 8003AE40 00036AA0  EC 63 20 2A */	fadds f3, f3, f4
/* 8003AE44 00036AA4  D0 63 0C C4 */	stfs f3, 0xcc4(r3)
lbl_8003AE48:
/* 8003AE48 00036AA8  C0 63 0C C4 */	lfs f3, 0xcc4(r3)
/* 8003AE4C 00036AAC  EC 61 18 28 */	fsubs f3, f1, f3
/* 8003AE50 00036AB0  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 8003AE54 00036AB4  41 81 FF E8 */	bgt lbl_8003AE3C
/* 8003AE58 00036AB8  C0 82 82 78 */	lfs f4, lbl_80640878-_SDA2_BASE_(r2)
/* 8003AE5C 00036ABC  C0 02 82 48 */	lfs f0, lbl_80640848-_SDA2_BASE_(r2)
/* 8003AE60 00036AC0  48 00 00 10 */	b lbl_8003AE70
lbl_8003AE64:
/* 8003AE64 00036AC4  C0 63 0C C4 */	lfs f3, 0xcc4(r3)
/* 8003AE68 00036AC8  EC 63 20 28 */	fsubs f3, f3, f4
/* 8003AE6C 00036ACC  D0 63 0C C4 */	stfs f3, 0xcc4(r3)
lbl_8003AE70:
/* 8003AE70 00036AD0  C0 63 0C C4 */	lfs f3, 0xcc4(r3)
/* 8003AE74 00036AD4  EC 63 08 28 */	fsubs f3, f3, f1
/* 8003AE78 00036AD8  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 8003AE7C 00036ADC  41 81 FF E8 */	bgt lbl_8003AE64
/* 8003AE80 00036AE0  4B FF FF 48 */	b func_8003ADC8

.global func_8003AE84
func_8003AE84:
/* 8003AE84 00036AE4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003AE88 00036AE8  7C 08 02 A6 */	mflr r0
/* 8003AE8C 00036AEC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003AE90 00036AF0  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8003AE94 00036AF4  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8003AE98 00036AF8  FF E0 08 90 */	fmr f31, f1
/* 8003AE9C 00036AFC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003AEA0 00036B00  7C DF 33 78 */	mr r31, r6
/* 8003AEA4 00036B04  7F E7 FB 78 */	mr r7, r31
/* 8003AEA8 00036B08  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003AEAC 00036B0C  7C BE 2B 78 */	mr r30, r5
/* 8003AEB0 00036B10  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003AEB4 00036B14  7C 9D 23 78 */	mr r29, r4
/* 8003AEB8 00036B18  38 83 0C CC */	addi r4, r3, 0xccc
/* 8003AEBC 00036B1C  93 81 00 10 */	stw r28, 0x10(r1)
/* 8003AEC0 00036B20  7C 7C 1B 78 */	mr r28, r3
/* 8003AEC4 00036B24  7F A5 EB 78 */	mr r5, r29
/* 8003AEC8 00036B28  7C 86 23 78 */	mr r6, r4
/* 8003AECC 00036B2C  38 63 00 DC */	addi r3, r3, 0xdc
/* 8003AED0 00036B30  48 01 54 6D */	bl func_8005033C
/* 8003AED4 00036B34  FC 20 F8 90 */	fmr f1, f31
/* 8003AED8 00036B38  38 9C 0C D0 */	addi r4, r28, 0xcd0
/* 8003AEDC 00036B3C  7C 86 23 78 */	mr r6, r4
/* 8003AEE0 00036B40  7F E7 FB 78 */	mr r7, r31
/* 8003AEE4 00036B44  38 7C 01 00 */	addi r3, r28, 0x100
/* 8003AEE8 00036B48  38 BD 00 04 */	addi r5, r29, 4
/* 8003AEEC 00036B4C  48 01 54 51 */	bl func_8005033C
/* 8003AEF0 00036B50  FC 20 F8 90 */	fmr f1, f31
/* 8003AEF4 00036B54  38 9C 0C D4 */	addi r4, r28, 0xcd4
/* 8003AEF8 00036B58  7C 86 23 78 */	mr r6, r4
/* 8003AEFC 00036B5C  7F E7 FB 78 */	mr r7, r31
/* 8003AF00 00036B60  38 7C 01 24 */	addi r3, r28, 0x124
/* 8003AF04 00036B64  38 BD 00 08 */	addi r5, r29, 8
/* 8003AF08 00036B68  48 01 54 35 */	bl func_8005033C
/* 8003AF0C 00036B6C  2C 1E 00 00 */	cmpwi r30, 0
/* 8003AF10 00036B70  41 80 00 18 */	blt lbl_8003AF28
/* 8003AF14 00036B74  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AF18 00036B78  7F 83 E3 78 */	mr r3, r28
/* 8003AF1C 00036B7C  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003AF20 00036B80  7F C4 F3 78 */	mr r4, r30
/* 8003AF24 00036B84  4B FF EA A5 */	bl func_800399C8
lbl_8003AF28:
/* 8003AF28 00036B88  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8003AF2C 00036B8C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003AF30 00036B90  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8003AF34 00036B94  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003AF38 00036B98  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003AF3C 00036B9C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003AF40 00036BA0  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003AF44 00036BA4  7C 08 03 A6 */	mtlr r0
/* 8003AF48 00036BA8  38 21 00 30 */	addi r1, r1, 0x30
/* 8003AF4C 00036BAC  4E 80 00 20 */	blr

.global func_8003AF50
func_8003AF50:
/* 8003AF50 00036BB0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8003AF54 00036BB4  7C 08 02 A6 */	mflr r0
/* 8003AF58 00036BB8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8003AF5C 00036BBC  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8003AF60 00036BC0  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8003AF64 00036BC4  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 8003AF68 00036BC8  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 8003AF6C 00036BCC  FF C0 08 90 */	fmr f30, f1
/* 8003AF70 00036BD0  FF E0 10 90 */	fmr f31, f2
/* 8003AF74 00036BD4  C0 82 82 20 */	lfs f4, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AF78 00036BD8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003AF7C 00036BDC  7C DF 33 78 */	mr r31, r6
/* 8003AF80 00036BE0  FC A0 20 90 */	fmr f5, f4
/* 8003AF84 00036BE4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003AF88 00036BE8  7C BE 2B 78 */	mr r30, r5
/* 8003AF8C 00036BEC  FC 40 F0 90 */	fmr f2, f30
/* 8003AF90 00036BF0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003AF94 00036BF4  FC 60 F8 90 */	fmr f3, f31
/* 8003AF98 00036BF8  C0 24 00 00 */	lfs f1, 0(r4)
/* 8003AF9C 00036BFC  7C 9D 23 78 */	mr r29, r4
/* 8003AFA0 00036C00  93 81 00 10 */	stw r28, 0x10(r1)
/* 8003AFA4 00036C04  7C 7C 1B 78 */	mr r28, r3
/* 8003AFA8 00036C08  38 A3 0C CC */	addi r5, r3, 0xccc
/* 8003AFAC 00036C0C  7F C4 F3 78 */	mr r4, r30
/* 8003AFB0 00036C10  38 E0 00 00 */	li r7, 0
/* 8003AFB4 00036C14  38 63 02 20 */	addi r3, r3, 0x220
/* 8003AFB8 00036C18  48 01 61 7D */	bl func_80051134
/* 8003AFBC 00036C1C  C0 82 82 20 */	lfs f4, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AFC0 00036C20  FC 40 F0 90 */	fmr f2, f30
/* 8003AFC4 00036C24  FC 60 F8 90 */	fmr f3, f31
/* 8003AFC8 00036C28  C0 3D 00 04 */	lfs f1, 4(r29)
/* 8003AFCC 00036C2C  FC A0 20 90 */	fmr f5, f4
/* 8003AFD0 00036C30  7F C4 F3 78 */	mr r4, r30
/* 8003AFD4 00036C34  7F E6 FB 78 */	mr r6, r31
/* 8003AFD8 00036C38  38 7C 02 E0 */	addi r3, r28, 0x2e0
/* 8003AFDC 00036C3C  38 BC 0C D0 */	addi r5, r28, 0xcd0
/* 8003AFE0 00036C40  38 E0 00 00 */	li r7, 0
/* 8003AFE4 00036C44  48 01 61 51 */	bl func_80051134
/* 8003AFE8 00036C48  C0 82 82 20 */	lfs f4, lbl_80640820-_SDA2_BASE_(r2)
/* 8003AFEC 00036C4C  FC 40 F0 90 */	fmr f2, f30
/* 8003AFF0 00036C50  FC 60 F8 90 */	fmr f3, f31
/* 8003AFF4 00036C54  C0 3D 00 08 */	lfs f1, 8(r29)
/* 8003AFF8 00036C58  FC A0 20 90 */	fmr f5, f4
/* 8003AFFC 00036C5C  7F C4 F3 78 */	mr r4, r30
/* 8003B000 00036C60  7F E6 FB 78 */	mr r6, r31
/* 8003B004 00036C64  38 7C 03 A0 */	addi r3, r28, 0x3a0
/* 8003B008 00036C68  38 BC 0C D4 */	addi r5, r28, 0xcd4
/* 8003B00C 00036C6C  38 E0 00 00 */	li r7, 0
/* 8003B010 00036C70  48 01 61 25 */	bl func_80051134
/* 8003B014 00036C74  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8003B018 00036C78  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8003B01C 00036C7C  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 8003B020 00036C80  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 8003B024 00036C84  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003B028 00036C88  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003B02C 00036C8C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003B030 00036C90  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8003B034 00036C94  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003B038 00036C98  7C 08 03 A6 */	mtlr r0
/* 8003B03C 00036C9C  38 21 00 40 */	addi r1, r1, 0x40
/* 8003B040 00036CA0  4E 80 00 20 */	blr

.global func_8003B044
func_8003B044:
/* 8003B044 00036CA4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003B048 00036CA8  7C 08 02 A6 */	mflr r0
/* 8003B04C 00036CAC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003B050 00036CB0  39 61 00 20 */	addi r11, r1, 0x20
/* 8003B054 00036CB4  48 18 C0 D5 */	bl _savegpr_27
/* 8003B058 00036CB8  54 C0 00 01 */	rlwinm. r0, r6, 0, 0, 0
/* 8003B05C 00036CBC  7C 7B 1B 78 */	mr r27, r3
/* 8003B060 00036CC0  7C 9C 23 78 */	mr r28, r4
/* 8003B064 00036CC4  7C BD 2B 78 */	mr r29, r5
/* 8003B068 00036CC8  7C DE 33 78 */	mr r30, r6
/* 8003B06C 00036CCC  40 82 00 4C */	bne lbl_8003B0B8
/* 8003B070 00036CD0  54 C0 07 39 */	rlwinm. r0, r6, 0, 0x1c, 0x1c
/* 8003B074 00036CD4  41 82 00 2C */	beq lbl_8003B0A0
/* 8003B078 00036CD8  54 C0 07 FF */	clrlwi. r0, r6, 0x1f
/* 8003B07C 00036CDC  54 DE 07 76 */	rlwinm r30, r6, 0, 0x1d, 0x1b
/* 8003B080 00036CE0  41 82 00 08 */	beq lbl_8003B088
/* 8003B084 00036CE4  63 DE 00 40 */	ori r30, r30, 0x40
lbl_8003B088:
/* 8003B088 00036CE8  57 C0 07 BD */	rlwinm. r0, r30, 0, 0x1e, 0x1e
/* 8003B08C 00036CEC  41 82 00 08 */	beq lbl_8003B094
/* 8003B090 00036CF0  63 DE 00 80 */	ori r30, r30, 0x80
lbl_8003B094:
/* 8003B094 00036CF4  57 C0 07 7B */	rlwinm. r0, r30, 0, 0x1d, 0x1d
/* 8003B098 00036CF8  41 82 00 08 */	beq lbl_8003B0A0
/* 8003B09C 00036CFC  63 DE 01 00 */	ori r30, r30, 0x100
lbl_8003B0A0:
/* 8003B0A0 00036D00  57 C0 07 FF */	clrlwi. r0, r30, 0x1f
/* 8003B0A4 00036D04  40 82 00 08 */	bne lbl_8003B0AC
/* 8003B0A8 00036D08  63 DE 00 09 */	ori r30, r30, 9
lbl_8003B0AC:
/* 8003B0AC 00036D0C  57 C0 07 BD */	rlwinm. r0, r30, 0, 0x1e, 0x1e
/* 8003B0B0 00036D10  40 82 00 08 */	bne lbl_8003B0B8
/* 8003B0B4 00036D14  63 DE 00 12 */	ori r30, r30, 0x12
lbl_8003B0B8:
/* 8003B0B8 00036D18  7F 83 E3 78 */	mr r3, r28
/* 8003B0BC 00036D1C  7F A4 EB 78 */	mr r4, r29
/* 8003B0C0 00036D20  4B FF E8 2D */	bl func_800398EC
/* 8003B0C4 00036D24  2C 03 00 00 */	cmpwi r3, 0
/* 8003B0C8 00036D28  7C 7F 1B 78 */	mr r31, r3
/* 8003B0CC 00036D2C  41 82 00 68 */	beq lbl_8003B134
/* 8003B0D0 00036D30  80 7B 0C 04 */	lwz r3, 0xc04(r27)
/* 8003B0D4 00036D34  80 83 00 08 */	lwz r4, 8(r3)
/* 8003B0D8 00036D38  2C 04 00 00 */	cmpwi r4, 0
/* 8003B0DC 00036D3C  40 82 00 0C */	bne lbl_8003B0E8
/* 8003B0E0 00036D40  38 60 00 00 */	li r3, 0
/* 8003B0E4 00036D44  48 00 00 1C */	b lbl_8003B100
lbl_8003B0E8:
/* 8003B0E8 00036D48  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 8003B0EC 00036D4C  2C 00 00 00 */	cmpwi r0, 0
/* 8003B0F0 00036D50  40 82 00 0C */	bne lbl_8003B0FC
/* 8003B0F4 00036D54  38 60 00 00 */	li r3, 0
/* 8003B0F8 00036D58  48 00 00 08 */	b lbl_8003B100
lbl_8003B0FC:
/* 8003B0FC 00036D5C  80 64 00 00 */	lwz r3, 0(r4)
lbl_8003B100:
/* 8003B100 00036D60  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8003B104 00036D64  38 80 00 01 */	li r4, 1
/* 8003B108 00036D68  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8003B10C 00036D6C  7D 89 03 A6 */	mtctr r12
/* 8003B110 00036D70  4E 80 04 21 */	bctrl
/* 8003B114 00036D74  80 BB 0C 04 */	lwz r5, 0xc04(r27)
/* 8003B118 00036D78  7F E3 FB 78 */	mr r3, r31
/* 8003B11C 00036D7C  57 C4 04 3E */	clrlwi r4, r30, 0x10
/* 8003B120 00036D80  38 C0 00 00 */	li r6, 0
/* 8003B124 00036D84  38 E0 00 03 */	li r7, 3
/* 8003B128 00036D88  48 1B 71 29 */	bl func_801F2250
/* 8003B12C 00036D8C  93 9B 0D 70 */	stw r28, 0xd70(r27)
/* 8003B130 00036D90  93 BB 0D 74 */	stw r29, 0xd74(r27)
lbl_8003B134:
/* 8003B134 00036D94  39 61 00 20 */	addi r11, r1, 0x20
/* 8003B138 00036D98  48 18 C0 3D */	bl _restgpr_27
/* 8003B13C 00036D9C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003B140 00036DA0  7C 08 03 A6 */	mtlr r0
/* 8003B144 00036DA4  38 21 00 20 */	addi r1, r1, 0x20
/* 8003B148 00036DA8  4E 80 00 20 */	blr

.global func_8003B14C
func_8003B14C:
/* 8003B14C 00036DAC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003B150 00036DB0  7C 08 02 A6 */	mflr r0
/* 8003B154 00036DB4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003B158 00036DB8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003B15C 00036DBC  7C 7F 1B 78 */	mr r31, r3
/* 8003B160 00036DC0  80 03 0D 70 */	lwz r0, 0xd70(r3)
/* 8003B164 00036DC4  2C 00 00 00 */	cmpwi r0, 0
/* 8003B168 00036DC8  41 82 00 28 */	beq lbl_8003B190
/* 8003B16C 00036DCC  80 9F 0D 74 */	lwz r4, 0xd74(r31)
/* 8003B170 00036DD0  7C 03 03 78 */	mr r3, r0
/* 8003B174 00036DD4  4B FF E7 79 */	bl func_800398EC
/* 8003B178 00036DD8  2C 03 00 00 */	cmpwi r3, 0
/* 8003B17C 00036DDC  41 82 00 0C */	beq lbl_8003B188
/* 8003B180 00036DE0  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 8003B184 00036DE4  48 1B 71 9D */	bl func_801F2320
lbl_8003B188:
/* 8003B188 00036DE8  38 00 00 00 */	li r0, 0
/* 8003B18C 00036DEC  90 1F 0D 70 */	stw r0, 0xd70(r31)
lbl_8003B190:
/* 8003B190 00036DF0  38 7F 01 B4 */	addi r3, r31, 0x1b4
/* 8003B194 00036DF4  48 01 51 F5 */	bl func_80050388
/* 8003B198 00036DF8  38 7F 01 D8 */	addi r3, r31, 0x1d8
/* 8003B19C 00036DFC  48 01 51 ED */	bl func_80050388
/* 8003B1A0 00036E00  38 7F 01 FC */	addi r3, r31, 0x1fc
/* 8003B1A4 00036E04  48 01 51 E5 */	bl func_80050388
/* 8003B1A8 00036E08  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B1AC 00036E0C  D0 1F 0D 64 */	stfs f0, 0xd64(r31)
/* 8003B1B0 00036E10  D0 1F 0D 68 */	stfs f0, 0xd68(r31)
/* 8003B1B4 00036E14  D0 1F 0D 6C */	stfs f0, 0xd6c(r31)
/* 8003B1B8 00036E18  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003B1BC 00036E1C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003B1C0 00036E20  7C 08 03 A6 */	mtlr r0
/* 8003B1C4 00036E24  38 21 00 10 */	addi r1, r1, 0x10
/* 8003B1C8 00036E28  4E 80 00 20 */	blr

.global func_8003B1CC
func_8003B1CC:
/* 8003B1CC 00036E2C  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 8003B1D0 00036E30  7C 08 02 A6 */	mflr r0
/* 8003B1D4 00036E34  90 01 00 94 */	stw r0, 0x94(r1)
/* 8003B1D8 00036E38  DB E1 00 80 */	stfd f31, 0x80(r1)
/* 8003B1DC 00036E3C  F3 E1 00 88 */	psq_st f31, 136(r1), 0, qr0
/* 8003B1E0 00036E40  DB C1 00 70 */	stfd f30, 0x70(r1)
/* 8003B1E4 00036E44  F3 C1 00 78 */	psq_st f30, 120(r1), 0, qr0
/* 8003B1E8 00036E48  DB A1 00 60 */	stfd f29, 0x60(r1)
/* 8003B1EC 00036E4C  F3 A1 00 68 */	psq_st f29, 104(r1), 0, qr0
/* 8003B1F0 00036E50  FF A0 08 90 */	fmr f29, f1
/* 8003B1F4 00036E54  FF C0 10 90 */	fmr f30, f2
/* 8003B1F8 00036E58  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 8003B1FC 00036E5C  FF E0 18 90 */	fmr f31, f3
/* 8003B200 00036E60  7C 7F 1B 78 */	mr r31, r3
/* 8003B204 00036E64  80 03 0D 70 */	lwz r0, 0xd70(r3)
/* 8003B208 00036E68  2C 00 00 00 */	cmpwi r0, 0
/* 8003B20C 00036E6C  41 82 00 98 */	beq lbl_8003B2A4
/* 8003B210 00036E70  C0 02 82 70 */	lfs f0, lbl_80640870-_SDA2_BASE_(r2)
/* 8003B214 00036E74  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 8003B218 00036E78  40 80 00 10 */	bge lbl_8003B228
/* 8003B21C 00036E7C  C0 02 82 74 */	lfs f0, lbl_80640874-_SDA2_BASE_(r2)
/* 8003B220 00036E80  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 8003B224 00036E84  41 81 00 80 */	bgt lbl_8003B2A4
lbl_8003B228:
/* 8003B228 00036E88  FC 40 10 50 */	fneg f2, f2
/* 8003B22C 00036E8C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B230 00036E90  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8003B234 00036E94  38 61 00 30 */	addi r3, r1, 0x30
/* 8003B238 00036E98  38 81 00 08 */	addi r4, r1, 8
/* 8003B23C 00036E9C  D0 41 00 08 */	stfs f2, 8(r1)
/* 8003B240 00036EA0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003B244 00036EA4  48 1E 84 7D */	bl func_802236C0
/* 8003B248 00036EA8  FC 00 F8 18 */	frsp f0, f31
/* 8003B24C 00036EAC  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B250 00036EB0  D3 E1 00 28 */	stfs f31, 0x28(r1)
/* 8003B254 00036EB4  38 61 00 14 */	addi r3, r1, 0x14
/* 8003B258 00036EB8  38 81 00 30 */	addi r4, r1, 0x30
/* 8003B25C 00036EBC  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 8003B260 00036EC0  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 8003B264 00036EC4  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8003B268 00036EC8  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 8003B26C 00036ECC  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8003B270 00036ED0  48 1E 87 9D */	bl func_80223A0C
/* 8003B274 00036ED4  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 8003B278 00036ED8  7F E3 FB 78 */	mr r3, r31
/* 8003B27C 00036EDC  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 8003B280 00036EE0  38 81 00 40 */	addi r4, r1, 0x40
/* 8003B284 00036EE4  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8003B288 00036EE8  D0 41 00 40 */	stfs f2, 0x40(r1)
/* 8003B28C 00036EEC  D0 21 00 44 */	stfs f1, 0x44(r1)
/* 8003B290 00036EF0  D0 01 00 48 */	stfs f0, 0x48(r1)
/* 8003B294 00036EF4  4B FF D5 89 */	bl func_8003881C
/* 8003B298 00036EF8  D3 FF 0D 64 */	stfs f31, 0xd64(r31)
/* 8003B29C 00036EFC  D3 BF 0D 68 */	stfs f29, 0xd68(r31)
/* 8003B2A0 00036F00  D3 DF 0D 6C */	stfs f30, 0xd6c(r31)
lbl_8003B2A4:
/* 8003B2A4 00036F04  E3 E1 00 88 */	psq_l f31, 136(r1), 0, qr0
/* 8003B2A8 00036F08  CB E1 00 80 */	lfd f31, 0x80(r1)
/* 8003B2AC 00036F0C  E3 C1 00 78 */	psq_l f30, 120(r1), 0, qr0
/* 8003B2B0 00036F10  CB C1 00 70 */	lfd f30, 0x70(r1)
/* 8003B2B4 00036F14  E3 A1 00 68 */	psq_l f29, 104(r1), 0, qr0
/* 8003B2B8 00036F18  CB A1 00 60 */	lfd f29, 0x60(r1)
/* 8003B2BC 00036F1C  80 01 00 94 */	lwz r0, 0x94(r1)
/* 8003B2C0 00036F20  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 8003B2C4 00036F24  7C 08 03 A6 */	mtlr r0
/* 8003B2C8 00036F28  38 21 00 90 */	addi r1, r1, 0x90
/* 8003B2CC 00036F2C  4E 80 00 20 */	blr

.global func_8003B2D0
func_8003B2D0:
/* 8003B2D0 00036F30  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003B2D4 00036F34  7C 08 02 A6 */	mflr r0
/* 8003B2D8 00036F38  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003B2DC 00036F3C  DB E1 00 28 */	stfd f31, 0x28(r1)
/* 8003B2E0 00036F40  FF E0 20 90 */	fmr f31, f4
/* 8003B2E4 00036F44  93 E1 00 24 */	stw r31, 0x24(r1)
/* 8003B2E8 00036F48  7C 9F 23 78 */	mr r31, r4
/* 8003B2EC 00036F4C  93 C1 00 20 */	stw r30, 0x20(r1)
/* 8003B2F0 00036F50  7C 7E 1B 78 */	mr r30, r3
/* 8003B2F4 00036F54  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003B2F8 00036F58  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 8003B2FC 00036F5C  D0 61 00 10 */	stfs f3, 0x10(r1)
/* 8003B300 00036F60  80 03 0D 70 */	lwz r0, 0xd70(r3)
/* 8003B304 00036F64  2C 00 00 00 */	cmpwi r0, 0
/* 8003B308 00036F68  41 82 00 64 */	beq lbl_8003B36C
/* 8003B30C 00036F6C  7F C4 F3 78 */	mr r4, r30
/* 8003B310 00036F70  38 61 00 14 */	addi r3, r1, 0x14
/* 8003B314 00036F74  4B FF D4 CD */	bl func_800387E0
/* 8003B318 00036F78  FC 20 F8 90 */	fmr f1, f31
/* 8003B31C 00036F7C  38 9E 0D 64 */	addi r4, r30, 0xd64
/* 8003B320 00036F80  7C 86 23 78 */	mr r6, r4
/* 8003B324 00036F84  7F E7 FB 78 */	mr r7, r31
/* 8003B328 00036F88  38 7E 01 B4 */	addi r3, r30, 0x1b4
/* 8003B32C 00036F8C  38 A1 00 10 */	addi r5, r1, 0x10
/* 8003B330 00036F90  48 01 50 0D */	bl func_8005033C
/* 8003B334 00036F94  FC 20 F8 90 */	fmr f1, f31
/* 8003B338 00036F98  38 9E 0D 68 */	addi r4, r30, 0xd68
/* 8003B33C 00036F9C  7C 86 23 78 */	mr r6, r4
/* 8003B340 00036FA0  7F E7 FB 78 */	mr r7, r31
/* 8003B344 00036FA4  38 7E 01 D8 */	addi r3, r30, 0x1d8
/* 8003B348 00036FA8  38 A1 00 08 */	addi r5, r1, 8
/* 8003B34C 00036FAC  48 01 4F F1 */	bl func_8005033C
/* 8003B350 00036FB0  FC 20 F8 90 */	fmr f1, f31
/* 8003B354 00036FB4  38 9E 0D 6C */	addi r4, r30, 0xd6c
/* 8003B358 00036FB8  7C 86 23 78 */	mr r6, r4
/* 8003B35C 00036FBC  7F E7 FB 78 */	mr r7, r31
/* 8003B360 00036FC0  38 7E 01 FC */	addi r3, r30, 0x1fc
/* 8003B364 00036FC4  38 A1 00 0C */	addi r5, r1, 0xc
/* 8003B368 00036FC8  48 01 4F D5 */	bl func_8005033C
lbl_8003B36C:
/* 8003B36C 00036FCC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003B370 00036FD0  CB E1 00 28 */	lfd f31, 0x28(r1)
/* 8003B374 00036FD4  83 E1 00 24 */	lwz r31, 0x24(r1)
/* 8003B378 00036FD8  83 C1 00 20 */	lwz r30, 0x20(r1)
/* 8003B37C 00036FDC  7C 08 03 A6 */	mtlr r0
/* 8003B380 00036FE0  38 21 00 30 */	addi r1, r1, 0x30
/* 8003B384 00036FE4  4E 80 00 20 */	blr

.global func_8003B388
func_8003B388:
/* 8003B388 00036FE8  3C 80 80 41 */	lis r4, lbl_8040A3F0@ha
/* 8003B38C 00036FEC  38 00 00 03 */	li r0, 3
/* 8003B390 00036FF0  38 A0 00 00 */	li r5, 0
/* 8003B394 00036FF4  38 C0 00 00 */	li r6, 0
/* 8003B398 00036FF8  38 84 A3 F0 */	addi r4, r4, lbl_8040A3F0@l
/* 8003B39C 00036FFC  7C 09 03 A6 */	mtctr r0
lbl_8003B3A0:
/* 8003B3A0 00037000  80 03 00 04 */	lwz r0, 4(r3)
/* 8003B3A4 00037004  2C 00 00 00 */	cmpwi r0, 0
/* 8003B3A8 00037008  41 82 00 0C */	beq lbl_8003B3B4
/* 8003B3AC 0003700C  A0 04 00 00 */	lhz r0, 0(r4)
/* 8003B3B0 00037010  7C A5 03 78 */	or r5, r5, r0
lbl_8003B3B4:
/* 8003B3B4 00037014  80 03 00 28 */	lwz r0, 0x28(r3)
/* 8003B3B8 00037018  2C 00 00 00 */	cmpwi r0, 0
/* 8003B3BC 0003701C  41 82 00 0C */	beq lbl_8003B3C8
/* 8003B3C0 00037020  A0 04 00 02 */	lhz r0, 2(r4)
/* 8003B3C4 00037024  7C A5 03 78 */	or r5, r5, r0
lbl_8003B3C8:
/* 8003B3C8 00037028  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8003B3CC 0003702C  2C 00 00 00 */	cmpwi r0, 0
/* 8003B3D0 00037030  41 82 00 0C */	beq lbl_8003B3DC
/* 8003B3D4 00037034  A0 04 00 04 */	lhz r0, 4(r4)
/* 8003B3D8 00037038  7C A5 03 78 */	or r5, r5, r0
lbl_8003B3DC:
/* 8003B3DC 0003703C  80 03 00 70 */	lwz r0, 0x70(r3)
/* 8003B3E0 00037040  2C 00 00 00 */	cmpwi r0, 0
/* 8003B3E4 00037044  41 82 00 0C */	beq lbl_8003B3F0
/* 8003B3E8 00037048  A0 04 00 06 */	lhz r0, 6(r4)
/* 8003B3EC 0003704C  7C A5 03 78 */	or r5, r5, r0
lbl_8003B3F0:
/* 8003B3F0 00037050  80 03 00 94 */	lwz r0, 0x94(r3)
/* 8003B3F4 00037054  2C 00 00 00 */	cmpwi r0, 0
/* 8003B3F8 00037058  41 82 00 0C */	beq lbl_8003B404
/* 8003B3FC 0003705C  A0 04 00 08 */	lhz r0, 8(r4)
/* 8003B400 00037060  7C A5 03 78 */	or r5, r5, r0
lbl_8003B404:
/* 8003B404 00037064  38 63 00 B4 */	addi r3, r3, 0xb4
/* 8003B408 00037068  38 84 00 0A */	addi r4, r4, 0xa
/* 8003B40C 0003706C  38 C6 00 04 */	addi r6, r6, 4
/* 8003B410 00037070  42 00 FF 90 */	bdnz lbl_8003B3A0
/* 8003B414 00037074  7C A3 2B 78 */	mr r3, r5
/* 8003B418 00037078  4E 80 00 20 */	blr

.global func_8003B41C
func_8003B41C:
/* 8003B41C 0003707C  80 83 0C 04 */	lwz r4, 0xc04(r3)
/* 8003B420 00037080  2C 04 00 00 */	cmpwi r4, 0
/* 8003B424 00037084  40 82 00 0C */	bne lbl_8003B430
/* 8003B428 00037088  38 60 00 00 */	li r3, 0
/* 8003B42C 0003708C  4E 80 00 20 */	blr
lbl_8003B430:
/* 8003B430 00037090  A0 A4 00 DE */	lhz r5, 0xde(r4)
/* 8003B434 00037094  39 20 00 00 */	li r9, 0
/* 8003B438 00037098  48 00 01 00 */	b lbl_8003B538
lbl_8003B43C:
/* 8003B43C 0003709C  80 83 0C 04 */	lwz r4, 0xc04(r3)
/* 8003B440 000370A0  80 C4 00 08 */	lwz r6, 8(r4)
/* 8003B444 000370A4  2C 06 00 00 */	cmpwi r6, 0
/* 8003B448 000370A8  40 82 00 0C */	bne lbl_8003B454
/* 8003B44C 000370AC  38 80 00 00 */	li r4, 0
/* 8003B450 000370B0  48 00 00 24 */	b lbl_8003B474
lbl_8003B454:
/* 8003B454 000370B4  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003B458 000370B8  55 24 04 3E */	clrlwi r4, r9, 0x10
/* 8003B45C 000370BC  7C 04 00 40 */	cmplw r4, r0
/* 8003B460 000370C0  41 80 00 0C */	blt lbl_8003B46C
/* 8003B464 000370C4  38 80 00 00 */	li r4, 0
/* 8003B468 000370C8  48 00 00 0C */	b lbl_8003B474
lbl_8003B46C:
/* 8003B46C 000370CC  55 20 13 BA */	rlwinm r0, r9, 2, 0xe, 0x1d
/* 8003B470 000370D0  7C 86 00 2E */	lwzx r4, r6, r0
lbl_8003B474:
/* 8003B474 000370D4  2C 04 00 00 */	cmpwi r4, 0
/* 8003B478 000370D8  41 82 00 BC */	beq lbl_8003B534
/* 8003B47C 000370DC  80 E4 00 04 */	lwz r7, 4(r4)
/* 8003B480 000370E0  2C 07 00 00 */	cmpwi r7, 0
/* 8003B484 000370E4  41 82 00 B0 */	beq lbl_8003B534
/* 8003B488 000370E8  41 82 00 40 */	beq lbl_8003B4C8
/* 8003B48C 000370EC  A1 07 00 06 */	lhz r8, 6(r7)
/* 8003B490 000370F0  38 C0 00 01 */	li r6, 1
/* 8003B494 000370F4  55 00 07 39 */	rlwinm. r0, r8, 0, 0x1c, 0x1c
/* 8003B498 000370F8  40 82 00 34 */	bne lbl_8003B4CC
/* 8003B49C 000370FC  80 07 00 00 */	lwz r0, 0(r7)
/* 8003B4A0 00037100  38 80 00 00 */	li r4, 0
/* 8003B4A4 00037104  2C 00 00 00 */	cmpwi r0, 0
/* 8003B4A8 00037108  41 82 00 10 */	beq lbl_8003B4B8
/* 8003B4AC 0003710C  55 00 07 FF */	clrlwi. r0, r8, 0x1f
/* 8003B4B0 00037110  41 82 00 08 */	beq lbl_8003B4B8
/* 8003B4B4 00037114  38 80 00 01 */	li r4, 1
lbl_8003B4B8:
/* 8003B4B8 00037118  2C 04 00 00 */	cmpwi r4, 0
/* 8003B4BC 0003711C  41 82 00 10 */	beq lbl_8003B4CC
/* 8003B4C0 00037120  38 C0 00 00 */	li r6, 0
/* 8003B4C4 00037124  48 00 00 08 */	b lbl_8003B4CC
lbl_8003B4C8:
/* 8003B4C8 00037128  38 C0 00 01 */	li r6, 1
lbl_8003B4CC:
/* 8003B4CC 0003712C  2C 06 00 00 */	cmpwi r6, 0
/* 8003B4D0 00037130  41 82 00 0C */	beq lbl_8003B4DC
/* 8003B4D4 00037134  38 60 00 01 */	li r3, 1
/* 8003B4D8 00037138  4E 80 00 20 */	blr
lbl_8003B4DC:
/* 8003B4DC 0003713C  2C 07 00 00 */	cmpwi r7, 0
/* 8003B4E0 00037140  41 82 00 40 */	beq lbl_8003B520
/* 8003B4E4 00037144  A1 07 00 06 */	lhz r8, 6(r7)
/* 8003B4E8 00037148  38 C0 00 01 */	li r6, 1
/* 8003B4EC 0003714C  55 00 07 7B */	rlwinm. r0, r8, 0, 0x1d, 0x1d
/* 8003B4F0 00037150  40 82 00 34 */	bne lbl_8003B524
/* 8003B4F4 00037154  80 07 00 00 */	lwz r0, 0(r7)
/* 8003B4F8 00037158  38 80 00 00 */	li r4, 0
/* 8003B4FC 0003715C  2C 00 00 00 */	cmpwi r0, 0
/* 8003B500 00037160  41 82 00 10 */	beq lbl_8003B510
/* 8003B504 00037164  55 00 07 FF */	clrlwi. r0, r8, 0x1f
/* 8003B508 00037168  41 82 00 08 */	beq lbl_8003B510
/* 8003B50C 0003716C  38 80 00 01 */	li r4, 1
lbl_8003B510:
/* 8003B510 00037170  2C 04 00 00 */	cmpwi r4, 0
/* 8003B514 00037174  41 82 00 10 */	beq lbl_8003B524
/* 8003B518 00037178  38 C0 00 00 */	li r6, 0
/* 8003B51C 0003717C  48 00 00 08 */	b lbl_8003B524
lbl_8003B520:
/* 8003B520 00037180  38 C0 00 01 */	li r6, 1
lbl_8003B524:
/* 8003B524 00037184  2C 06 00 00 */	cmpwi r6, 0
/* 8003B528 00037188  41 82 00 0C */	beq lbl_8003B534
/* 8003B52C 0003718C  38 60 00 02 */	li r3, 2
/* 8003B530 00037190  4E 80 00 20 */	blr
lbl_8003B534:
/* 8003B534 00037194  39 29 00 01 */	addi r9, r9, 1
lbl_8003B538:
/* 8003B538 00037198  55 20 04 3E */	clrlwi r0, r9, 0x10
/* 8003B53C 0003719C  7C 00 28 40 */	cmplw r0, r5
/* 8003B540 000371A0  41 80 FE FC */	blt lbl_8003B43C
/* 8003B544 000371A4  38 60 00 00 */	li r3, 0
/* 8003B548 000371A8  4E 80 00 20 */	blr

.global func_8003B54C
func_8003B54C:
/* 8003B54C 000371AC  80 83 0C 04 */	lwz r4, 0xc04(r3)
/* 8003B550 000371B0  2C 04 00 00 */	cmpwi r4, 0
/* 8003B554 000371B4  40 82 00 0C */	bne lbl_8003B560
/* 8003B558 000371B8  38 60 00 00 */	li r3, 0
/* 8003B55C 000371BC  4E 80 00 20 */	blr
lbl_8003B560:
/* 8003B560 000371C0  A0 A4 00 DE */	lhz r5, 0xde(r4)
/* 8003B564 000371C4  39 20 00 00 */	li r9, 0
/* 8003B568 000371C8  48 00 00 F8 */	b lbl_8003B660
lbl_8003B56C:
/* 8003B56C 000371CC  80 83 0C 04 */	lwz r4, 0xc04(r3)
/* 8003B570 000371D0  80 C4 00 08 */	lwz r6, 8(r4)
/* 8003B574 000371D4  2C 06 00 00 */	cmpwi r6, 0
/* 8003B578 000371D8  40 82 00 0C */	bne lbl_8003B584
/* 8003B57C 000371DC  38 80 00 00 */	li r4, 0
/* 8003B580 000371E0  48 00 00 24 */	b lbl_8003B5A4
lbl_8003B584:
/* 8003B584 000371E4  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003B588 000371E8  55 24 04 3E */	clrlwi r4, r9, 0x10
/* 8003B58C 000371EC  7C 04 00 40 */	cmplw r4, r0
/* 8003B590 000371F0  41 80 00 0C */	blt lbl_8003B59C
/* 8003B594 000371F4  38 80 00 00 */	li r4, 0
/* 8003B598 000371F8  48 00 00 0C */	b lbl_8003B5A4
lbl_8003B59C:
/* 8003B59C 000371FC  55 20 13 BA */	rlwinm r0, r9, 2, 0xe, 0x1d
/* 8003B5A0 00037200  7C 86 00 2E */	lwzx r4, r6, r0
lbl_8003B5A4:
/* 8003B5A4 00037204  2C 04 00 00 */	cmpwi r4, 0
/* 8003B5A8 00037208  41 82 00 B4 */	beq lbl_8003B65C
/* 8003B5AC 0003720C  80 E4 00 04 */	lwz r7, 4(r4)
/* 8003B5B0 00037210  2C 07 00 00 */	cmpwi r7, 0
/* 8003B5B4 00037214  41 82 00 A8 */	beq lbl_8003B65C
/* 8003B5B8 00037218  41 82 00 40 */	beq lbl_8003B5F8
/* 8003B5BC 0003721C  A1 07 00 06 */	lhz r8, 6(r7)
/* 8003B5C0 00037220  38 C0 00 01 */	li r6, 1
/* 8003B5C4 00037224  55 00 07 39 */	rlwinm. r0, r8, 0, 0x1c, 0x1c
/* 8003B5C8 00037228  40 82 00 34 */	bne lbl_8003B5FC
/* 8003B5CC 0003722C  80 07 00 00 */	lwz r0, 0(r7)
/* 8003B5D0 00037230  38 80 00 00 */	li r4, 0
/* 8003B5D4 00037234  2C 00 00 00 */	cmpwi r0, 0
/* 8003B5D8 00037238  41 82 00 10 */	beq lbl_8003B5E8
/* 8003B5DC 0003723C  55 00 07 FF */	clrlwi. r0, r8, 0x1f
/* 8003B5E0 00037240  41 82 00 08 */	beq lbl_8003B5E8
/* 8003B5E4 00037244  38 80 00 01 */	li r4, 1
lbl_8003B5E8:
/* 8003B5E8 00037248  2C 04 00 00 */	cmpwi r4, 0
/* 8003B5EC 0003724C  41 82 00 10 */	beq lbl_8003B5FC
/* 8003B5F0 00037250  38 C0 00 00 */	li r6, 0
/* 8003B5F4 00037254  48 00 00 08 */	b lbl_8003B5FC
lbl_8003B5F8:
/* 8003B5F8 00037258  38 C0 00 01 */	li r6, 1
lbl_8003B5FC:
/* 8003B5FC 0003725C  2C 06 00 00 */	cmpwi r6, 0
/* 8003B600 00037260  40 82 00 54 */	bne lbl_8003B654
/* 8003B604 00037264  2C 07 00 00 */	cmpwi r7, 0
/* 8003B608 00037268  41 82 00 40 */	beq lbl_8003B648
/* 8003B60C 0003726C  A1 07 00 06 */	lhz r8, 6(r7)
/* 8003B610 00037270  38 C0 00 01 */	li r6, 1
/* 8003B614 00037274  55 00 07 7B */	rlwinm. r0, r8, 0, 0x1d, 0x1d
/* 8003B618 00037278  40 82 00 34 */	bne lbl_8003B64C
/* 8003B61C 0003727C  80 07 00 00 */	lwz r0, 0(r7)
/* 8003B620 00037280  38 80 00 00 */	li r4, 0
/* 8003B624 00037284  2C 00 00 00 */	cmpwi r0, 0
/* 8003B628 00037288  41 82 00 10 */	beq lbl_8003B638
/* 8003B62C 0003728C  55 00 07 FF */	clrlwi. r0, r8, 0x1f
/* 8003B630 00037290  41 82 00 08 */	beq lbl_8003B638
/* 8003B634 00037294  38 80 00 01 */	li r4, 1
lbl_8003B638:
/* 8003B638 00037298  2C 04 00 00 */	cmpwi r4, 0
/* 8003B63C 0003729C  41 82 00 10 */	beq lbl_8003B64C
/* 8003B640 000372A0  38 C0 00 00 */	li r6, 0
/* 8003B644 000372A4  48 00 00 08 */	b lbl_8003B64C
lbl_8003B648:
/* 8003B648 000372A8  38 C0 00 01 */	li r6, 1
lbl_8003B64C:
/* 8003B64C 000372AC  2C 06 00 00 */	cmpwi r6, 0
/* 8003B650 000372B0  41 82 00 0C */	beq lbl_8003B65C
lbl_8003B654:
/* 8003B654 000372B4  38 60 00 01 */	li r3, 1
/* 8003B658 000372B8  4E 80 00 20 */	blr
lbl_8003B65C:
/* 8003B65C 000372BC  39 29 00 01 */	addi r9, r9, 1
lbl_8003B660:
/* 8003B660 000372C0  55 20 04 3E */	clrlwi r0, r9, 0x10
/* 8003B664 000372C4  7C 00 28 40 */	cmplw r0, r5
/* 8003B668 000372C8  41 80 FF 04 */	blt lbl_8003B56C
/* 8003B66C 000372CC  38 60 00 00 */	li r3, 0
/* 8003B670 000372D0  4E 80 00 20 */	blr

.global func_8003B674
func_8003B674:
/* 8003B674 000372D4  80 C4 0C 04 */	lwz r6, 0xc04(r4)
/* 8003B678 000372D8  2C 06 00 00 */	cmpwi r6, 0
/* 8003B67C 000372DC  41 82 00 64 */	beq lbl_8003B6E0
/* 8003B680 000372E0  2C 05 00 00 */	cmpwi r5, 0
/* 8003B684 000372E4  A0 86 00 DE */	lhz r4, 0xde(r6)
/* 8003B688 000372E8  41 80 00 58 */	blt lbl_8003B6E0
/* 8003B68C 000372EC  7C 05 20 00 */	cmpw r5, r4
/* 8003B690 000372F0  40 80 00 50 */	bge lbl_8003B6E0
/* 8003B694 000372F4  80 C6 00 08 */	lwz r6, 8(r6)
/* 8003B698 000372F8  2C 06 00 00 */	cmpwi r6, 0
/* 8003B69C 000372FC  40 82 00 0C */	bne lbl_8003B6A8
/* 8003B6A0 00037300  38 80 00 00 */	li r4, 0
/* 8003B6A4 00037304  48 00 00 20 */	b lbl_8003B6C4
lbl_8003B6A8:
/* 8003B6A8 00037308  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 8003B6AC 0003730C  7C 00 20 40 */	cmplw r0, r4
/* 8003B6B0 00037310  41 80 00 0C */	blt lbl_8003B6BC
/* 8003B6B4 00037314  38 80 00 00 */	li r4, 0
/* 8003B6B8 00037318  48 00 00 0C */	b lbl_8003B6C4
lbl_8003B6BC:
/* 8003B6BC 0003731C  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 8003B6C0 00037320  7C 86 00 2E */	lwzx r4, r6, r0
lbl_8003B6C4:
/* 8003B6C4 00037324  C0 04 00 DC */	lfs f0, 0xdc(r4)
/* 8003B6C8 00037328  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003B6CC 0003732C  C0 04 00 EC */	lfs f0, 0xec(r4)
/* 8003B6D0 00037330  D0 03 00 04 */	stfs f0, 4(r3)
/* 8003B6D4 00037334  C0 04 00 FC */	lfs f0, 0xfc(r4)
/* 8003B6D8 00037338  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003B6DC 0003733C  4E 80 00 20 */	blr
lbl_8003B6E0:
/* 8003B6E0 00037340  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B6E4 00037344  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003B6E8 00037348  D0 03 00 04 */	stfs f0, 4(r3)
/* 8003B6EC 0003734C  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003B6F0 00037350  4E 80 00 20 */	blr

.global func_8003B6F4
func_8003B6F4:
/* 8003B6F4 00037354  80 84 0C 04 */	lwz r4, 0xc04(r4)
/* 8003B6F8 00037358  2C 04 00 00 */	cmpwi r4, 0
/* 8003B6FC 0003735C  41 82 00 0C */	beq lbl_8003B708
/* 8003B700 00037360  38 84 01 20 */	addi r4, r4, 0x120
/* 8003B704 00037364  48 00 00 08 */	b lbl_8003B70C
lbl_8003B708:
/* 8003B708 00037368  38 80 00 00 */	li r4, 0
lbl_8003B70C:
/* 8003B70C 0003736C  2C 04 00 00 */	cmpwi r4, 0
/* 8003B710 00037370  40 82 00 18 */	bne lbl_8003B728
/* 8003B714 00037374  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B718 00037378  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003B71C 0003737C  D0 03 00 04 */	stfs f0, 4(r3)
/* 8003B720 00037380  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003B724 00037384  4E 80 00 20 */	blr
lbl_8003B728:
/* 8003B728 00037388  C0 04 00 00 */	lfs f0, 0(r4)
/* 8003B72C 0003738C  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003B730 00037390  C0 04 00 04 */	lfs f0, 4(r4)
/* 8003B734 00037394  D0 03 00 04 */	stfs f0, 4(r3)
/* 8003B738 00037398  C0 04 00 08 */	lfs f0, 8(r4)
/* 8003B73C 0003739C  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003B740 000373A0  4E 80 00 20 */	blr

.global func_8003B744
func_8003B744:
/* 8003B744 000373A4  80 84 0C 04 */	lwz r4, 0xc04(r4)
/* 8003B748 000373A8  2C 04 00 00 */	cmpwi r4, 0
/* 8003B74C 000373AC  41 82 00 0C */	beq lbl_8003B758
/* 8003B750 000373B0  38 84 01 20 */	addi r4, r4, 0x120
/* 8003B754 000373B4  48 00 00 08 */	b lbl_8003B75C
lbl_8003B758:
/* 8003B758 000373B8  38 80 00 00 */	li r4, 0
lbl_8003B75C:
/* 8003B75C 000373BC  2C 04 00 00 */	cmpwi r4, 0
/* 8003B760 000373C0  40 82 00 18 */	bne lbl_8003B778
/* 8003B764 000373C4  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B768 000373C8  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003B76C 000373CC  D0 03 00 04 */	stfs f0, 4(r3)
/* 8003B770 000373D0  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003B774 000373D4  4E 80 00 20 */	blr
lbl_8003B778:
/* 8003B778 000373D8  C0 04 00 0C */	lfs f0, 0xc(r4)
/* 8003B77C 000373DC  D0 03 00 00 */	stfs f0, 0(r3)
/* 8003B780 000373E0  C0 04 00 10 */	lfs f0, 0x10(r4)
/* 8003B784 000373E4  D0 03 00 04 */	stfs f0, 4(r3)
/* 8003B788 000373E8  C0 04 00 14 */	lfs f0, 0x14(r4)
/* 8003B78C 000373EC  D0 03 00 08 */	stfs f0, 8(r3)
/* 8003B790 000373F0  4E 80 00 20 */	blr

.global func_8003B794
func_8003B794:
/* 8003B794 000373F4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003B798 000373F8  7C 08 02 A6 */	mflr r0
/* 8003B79C 000373FC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003B7A0 00037400  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003B7A4 00037404  7C 7F 1B 78 */	mr r31, r3
/* 8003B7A8 00037408  38 61 00 08 */	addi r3, r1, 8
/* 8003B7AC 0003740C  7F E4 FB 78 */	mr r4, r31
/* 8003B7B0 00037410  4B FF D0 31 */	bl func_800387E0
/* 8003B7B4 00037414  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003B7B8 00037418  2C 03 00 00 */	cmpwi r3, 0
/* 8003B7BC 0003741C  41 82 00 0C */	beq lbl_8003B7C8
/* 8003B7C0 00037420  38 63 01 20 */	addi r3, r3, 0x120
/* 8003B7C4 00037424  48 00 00 08 */	b lbl_8003B7CC
lbl_8003B7C8:
/* 8003B7C8 00037428  38 60 00 00 */	li r3, 0
lbl_8003B7CC:
/* 8003B7CC 0003742C  2C 03 00 00 */	cmpwi r3, 0
/* 8003B7D0 00037430  40 82 00 0C */	bne lbl_8003B7DC
/* 8003B7D4 00037434  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 8003B7D8 00037438  48 00 00 10 */	b lbl_8003B7E8
lbl_8003B7DC:
/* 8003B7DC 0003743C  C0 23 00 04 */	lfs f1, 4(r3)
/* 8003B7E0 00037440  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8003B7E4 00037444  EC 21 00 2A */	fadds f1, f1, f0
lbl_8003B7E8:
/* 8003B7E8 00037448  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003B7EC 0003744C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003B7F0 00037450  7C 08 03 A6 */	mtlr r0
/* 8003B7F4 00037454  38 21 00 20 */	addi r1, r1, 0x20
/* 8003B7F8 00037458  4E 80 00 20 */	blr

.global func_8003B7FC
func_8003B7FC:
/* 8003B7FC 0003745C  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8003B800 00037460  7C 08 02 A6 */	mflr r0
/* 8003B804 00037464  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003B808 00037468  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 8003B80C 0003746C  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 8003B810 00037470  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8003B814 00037474  7C 7F 1B 78 */	mr r31, r3
/* 8003B818 00037478  38 61 00 20 */	addi r3, r1, 0x20
/* 8003B81C 0003747C  7F E4 FB 78 */	mr r4, r31
/* 8003B820 00037480  4B FF CF C1 */	bl func_800387E0
/* 8003B824 00037484  34 9F 0C 0C */	addic. r4, r31, 0xc0c
/* 8003B828 00037488  40 82 00 0C */	bne lbl_8003B834
/* 8003B82C 0003748C  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
/* 8003B830 00037490  48 00 00 28 */	b lbl_8003B858
lbl_8003B834:
/* 8003B834 00037494  38 64 00 0C */	addi r3, r4, 0xc
/* 8003B838 00037498  38 A1 00 14 */	addi r5, r1, 0x14
/* 8003B83C 0003749C  48 24 14 AD */	bl func_8027CCE8
/* 8003B840 000374A0  C3 E1 00 18 */	lfs f31, 0x18(r1)
/* 8003B844 000374A4  C0 21 00 14 */	lfs f1, 0x14(r1)
/* 8003B848 000374A8  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8003B84C 000374AC  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003B850 000374B0  D3 E1 00 0C */	stfs f31, 0xc(r1)
/* 8003B854 000374B4  D0 01 00 10 */	stfs f0, 0x10(r1)
lbl_8003B858:
/* 8003B858 000374B8  7F E3 FB 78 */	mr r3, r31
/* 8003B85C 000374BC  4B FF FF 39 */	bl func_8003B794
/* 8003B860 000374C0  C0 42 82 88 */	lfs f2, lbl_80640888-_SDA2_BASE_(r2)
/* 8003B864 000374C4  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 8003B868 000374C8  EC 42 07 F2 */	fmuls f2, f2, f31
/* 8003B86C 000374CC  EC 21 10 2A */	fadds f1, f1, f2
/* 8003B870 000374D0  EC 20 08 2A */	fadds f1, f0, f1
/* 8003B874 000374D4  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 8003B878 000374D8  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 8003B87C 000374DC  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8003B880 000374E0  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003B884 000374E4  7C 08 03 A6 */	mtlr r0
/* 8003B888 000374E8  38 21 00 50 */	addi r1, r1, 0x50
/* 8003B88C 000374EC  4E 80 00 20 */	blr

.global func_8003B890
func_8003B890:
/* 8003B890 000374F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003B894 000374F4  7C 08 02 A6 */	mflr r0
/* 8003B898 000374F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003B89C 000374FC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003B8A0 00037500  7C 9F 23 78 */	mr r31, r4
/* 8003B8A4 00037504  93 C1 00 08 */	stw r30, 8(r1)
/* 8003B8A8 00037508  7C 7E 1B 78 */	mr r30, r3
/* 8003B8AC 0003750C  4B FF CF 35 */	bl func_800387E0
/* 8003B8B0 00037510  7F E3 FB 78 */	mr r3, r31
/* 8003B8B4 00037514  4B FF FF 49 */	bl func_8003B7FC
/* 8003B8B8 00037518  D0 3E 00 04 */	stfs f1, 4(r30)
/* 8003B8BC 0003751C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003B8C0 00037520  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003B8C4 00037524  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003B8C8 00037528  7C 08 03 A6 */	mtlr r0
/* 8003B8CC 0003752C  38 21 00 10 */	addi r1, r1, 0x10
/* 8003B8D0 00037530  4E 80 00 20 */	blr

.global func_8003B8D4
func_8003B8D4:
/* 8003B8D4 00037534  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 8003B8D8 00037538  7C 08 02 A6 */	mflr r0
/* 8003B8DC 0003753C  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 8003B8E0 00037540  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 8003B8E4 00037544  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 8003B8E8 00037548  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 8003B8EC 0003754C  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 8003B8F0 00037550  39 61 00 80 */	addi r11, r1, 0x80
/* 8003B8F4 00037554  48 18 B8 35 */	bl _savegpr_27
/* 8003B8F8 00037558  FF E0 08 90 */	fmr f31, f1
/* 8003B8FC 0003755C  7C 7E 1B 78 */	mr r30, r3
/* 8003B900 00037560  3B E0 00 00 */	li r31, 0
/* 8003B904 00037564  4B FF C0 A5 */	bl func_800379A8
/* 8003B908 00037568  80 1E 0C 04 */	lwz r0, 0xc04(r30)
/* 8003B90C 0003756C  2C 00 00 00 */	cmpwi r0, 0
/* 8003B910 00037570  41 82 08 EC */	beq lbl_8003C1FC
/* 8003B914 00037574  3F A0 80 41 */	lis r29, lbl_8040A3F0@ha
/* 8003B918 00037578  3B 9E 00 04 */	addi r28, r30, 4
/* 8003B91C 0003757C  3B BD A3 F0 */	addi r29, r29, lbl_8040A3F0@l
/* 8003B920 00037580  3B 60 00 00 */	li r27, 0
lbl_8003B924:
/* 8003B924 00037584  81 9C 00 20 */	lwz r12, 0x20(r28)
/* 8003B928 00037588  FC 20 F8 90 */	fmr f1, f31
/* 8003B92C 0003758C  7F 83 E3 78 */	mr r3, r28
/* 8003B930 00037590  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003B934 00037594  7D 89 03 A6 */	mtctr r12
/* 8003B938 00037598  4E 80 04 21 */	bctrl
/* 8003B93C 0003759C  2C 03 00 00 */	cmpwi r3, 0
/* 8003B940 000375A0  41 82 00 0C */	beq lbl_8003B94C
/* 8003B944 000375A4  A0 1D 00 00 */	lhz r0, 0(r29)
/* 8003B948 000375A8  7F FF 03 78 */	or r31, r31, r0
lbl_8003B94C:
/* 8003B94C 000375AC  3B 7B 00 01 */	addi r27, r27, 1
/* 8003B950 000375B0  3B BD 00 02 */	addi r29, r29, 2
/* 8003B954 000375B4  2C 1B 00 0F */	cmpwi r27, 0xf
/* 8003B958 000375B8  3B 9C 00 24 */	addi r28, r28, 0x24
/* 8003B95C 000375BC  41 80 FF C8 */	blt lbl_8003B924
/* 8003B960 000375C0  81 9E 04 CC */	lwz r12, 0x4cc(r30)
/* 8003B964 000375C4  FC 20 F8 90 */	fmr f1, f31
/* 8003B968 000375C8  38 7E 04 94 */	addi r3, r30, 0x494
/* 8003B96C 000375CC  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003B970 000375D0  7D 89 03 A6 */	mtctr r12
/* 8003B974 000375D4  4E 80 04 21 */	bctrl
/* 8003B978 000375D8  2C 03 00 00 */	cmpwi r3, 0
/* 8003B97C 000375DC  41 82 00 DC */	beq lbl_8003BA58
/* 8003B980 000375E0  C0 1E 0C 28 */	lfs f0, 0xc28(r30)
/* 8003B984 000375E4  FC 00 00 1E */	fctiwz f0, f0
/* 8003B988 000375E8  D8 01 00 40 */	stfd f0, 0x40(r1)
/* 8003B98C 000375EC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8003B990 000375F0  98 01 00 08 */	stb r0, 8(r1)
/* 8003B994 000375F4  C0 1E 0C 2C */	lfs f0, 0xc2c(r30)
/* 8003B998 000375F8  FC 00 00 1E */	fctiwz f0, f0
/* 8003B99C 000375FC  D8 01 00 48 */	stfd f0, 0x48(r1)
/* 8003B9A0 00037600  80 01 00 4C */	lwz r0, 0x4c(r1)
/* 8003B9A4 00037604  98 01 00 09 */	stb r0, 9(r1)
/* 8003B9A8 00037608  C0 1E 0C 30 */	lfs f0, 0xc30(r30)
/* 8003B9AC 0003760C  FC 00 00 1E */	fctiwz f0, f0
/* 8003B9B0 00037610  D8 01 00 50 */	stfd f0, 0x50(r1)
/* 8003B9B4 00037614  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003B9B8 00037618  98 01 00 0A */	stb r0, 0xa(r1)
/* 8003B9BC 0003761C  C0 1E 0C 34 */	lfs f0, 0xc34(r30)
/* 8003B9C0 00037620  FC 00 00 1E */	fctiwz f0, f0
/* 8003B9C4 00037624  D8 01 00 58 */	stfd f0, 0x58(r1)
/* 8003B9C8 00037628  80 01 00 5C */	lwz r0, 0x5c(r1)
/* 8003B9CC 0003762C  98 01 00 0B */	stb r0, 0xb(r1)
/* 8003B9D0 00037630  A0 1E 0C 68 */	lhz r0, 0xc68(r30)
/* 8003B9D4 00037634  28 00 01 00 */	cmplwi r0, 0x100
/* 8003B9D8 00037638  40 82 00 74 */	bne lbl_8003BA4C
/* 8003B9DC 0003763C  3B 60 00 00 */	li r27, 0
/* 8003B9E0 00037640  48 00 00 50 */	b lbl_8003BA30
lbl_8003B9E4:
/* 8003B9E4 00037644  80 C5 00 04 */	lwz r6, 4(r5)
/* 8003B9E8 00037648  2C 06 00 00 */	cmpwi r6, 0
/* 8003B9EC 0003764C  40 82 00 0C */	bne lbl_8003B9F8
/* 8003B9F0 00037650  38 60 00 00 */	li r3, 0
/* 8003B9F4 00037654  48 00 00 28 */	b lbl_8003BA1C
lbl_8003B9F8:
/* 8003B9F8 00037658  80 65 00 00 */	lwz r3, 0(r5)
/* 8003B9FC 0003765C  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 8003BA00 00037660  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003BA04 00037664  7C 04 00 40 */	cmplw r4, r0
/* 8003BA08 00037668  41 80 00 0C */	blt lbl_8003BA14
/* 8003BA0C 0003766C  38 60 00 00 */	li r3, 0
/* 8003BA10 00037670  48 00 00 0C */	b lbl_8003BA1C
lbl_8003BA14:
/* 8003BA14 00037674  57 60 15 BA */	rlwinm r0, r27, 2, 0x16, 0x1d
/* 8003BA18 00037678  7C 66 00 2E */	lwzx r3, r6, r0
lbl_8003BA1C:
/* 8003BA1C 0003767C  2C 03 00 00 */	cmpwi r3, 0
/* 8003BA20 00037680  41 82 00 0C */	beq lbl_8003BA2C
/* 8003BA24 00037684  38 81 00 08 */	addi r4, r1, 8
/* 8003BA28 00037688  48 1B A7 E5 */	bl func_801F620C
lbl_8003BA2C:
/* 8003BA2C 0003768C  3B 7B 00 01 */	addi r27, r27, 1
lbl_8003BA30:
/* 8003BA30 00037690  80 BE 0C 00 */	lwz r5, 0xc00(r30)
/* 8003BA34 00037694  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 8003BA38 00037698  80 65 00 00 */	lwz r3, 0(r5)
/* 8003BA3C 0003769C  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003BA40 000376A0  7C 04 00 00 */	cmpw r4, r0
/* 8003BA44 000376A4  41 80 FF A0 */	blt lbl_8003B9E4
/* 8003BA48 000376A8  48 00 00 10 */	b lbl_8003BA58
lbl_8003BA4C:
/* 8003BA4C 000376AC  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BA50 000376B0  38 81 00 08 */	addi r4, r1, 8
/* 8003BA54 000376B4  48 1B A7 B9 */	bl func_801F620C
lbl_8003BA58:
/* 8003BA58 000376B8  81 9E 05 08 */	lwz r12, 0x508(r30)
/* 8003BA5C 000376BC  FC 20 F8 90 */	fmr f1, f31
/* 8003BA60 000376C0  38 7E 04 D0 */	addi r3, r30, 0x4d0
/* 8003BA64 000376C4  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003BA68 000376C8  7D 89 03 A6 */	mtctr r12
/* 8003BA6C 000376CC  4E 80 04 21 */	bctrl
/* 8003BA70 000376D0  2C 03 00 00 */	cmpwi r3, 0
/* 8003BA74 000376D4  41 82 00 DC */	beq lbl_8003BB50
/* 8003BA78 000376D8  C0 1E 0C 38 */	lfs f0, 0xc38(r30)
/* 8003BA7C 000376DC  FC 00 00 1E */	fctiwz f0, f0
/* 8003BA80 000376E0  D8 01 00 58 */	stfd f0, 0x58(r1)
/* 8003BA84 000376E4  80 01 00 5C */	lwz r0, 0x5c(r1)
/* 8003BA88 000376E8  98 01 00 08 */	stb r0, 8(r1)
/* 8003BA8C 000376EC  C0 1E 0C 3C */	lfs f0, 0xc3c(r30)
/* 8003BA90 000376F0  FC 00 00 1E */	fctiwz f0, f0
/* 8003BA94 000376F4  D8 01 00 50 */	stfd f0, 0x50(r1)
/* 8003BA98 000376F8  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003BA9C 000376FC  98 01 00 09 */	stb r0, 9(r1)
/* 8003BAA0 00037700  C0 1E 0C 40 */	lfs f0, 0xc40(r30)
/* 8003BAA4 00037704  FC 00 00 1E */	fctiwz f0, f0
/* 8003BAA8 00037708  D8 01 00 48 */	stfd f0, 0x48(r1)
/* 8003BAAC 0003770C  80 01 00 4C */	lwz r0, 0x4c(r1)
/* 8003BAB0 00037710  98 01 00 0A */	stb r0, 0xa(r1)
/* 8003BAB4 00037714  C0 1E 0C 44 */	lfs f0, 0xc44(r30)
/* 8003BAB8 00037718  FC 00 00 1E */	fctiwz f0, f0
/* 8003BABC 0003771C  D8 01 00 40 */	stfd f0, 0x40(r1)
/* 8003BAC0 00037720  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8003BAC4 00037724  98 01 00 0B */	stb r0, 0xb(r1)
/* 8003BAC8 00037728  A0 1E 0C 68 */	lhz r0, 0xc68(r30)
/* 8003BACC 0003772C  28 00 01 00 */	cmplwi r0, 0x100
/* 8003BAD0 00037730  40 82 00 74 */	bne lbl_8003BB44
/* 8003BAD4 00037734  3B 60 00 00 */	li r27, 0
/* 8003BAD8 00037738  48 00 00 50 */	b lbl_8003BB28
lbl_8003BADC:
/* 8003BADC 0003773C  80 C5 00 04 */	lwz r6, 4(r5)
/* 8003BAE0 00037740  2C 06 00 00 */	cmpwi r6, 0
/* 8003BAE4 00037744  40 82 00 0C */	bne lbl_8003BAF0
/* 8003BAE8 00037748  38 60 00 00 */	li r3, 0
/* 8003BAEC 0003774C  48 00 00 28 */	b lbl_8003BB14
lbl_8003BAF0:
/* 8003BAF0 00037750  80 65 00 00 */	lwz r3, 0(r5)
/* 8003BAF4 00037754  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 8003BAF8 00037758  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003BAFC 0003775C  7C 04 00 40 */	cmplw r4, r0
/* 8003BB00 00037760  41 80 00 0C */	blt lbl_8003BB0C
/* 8003BB04 00037764  38 60 00 00 */	li r3, 0
/* 8003BB08 00037768  48 00 00 0C */	b lbl_8003BB14
lbl_8003BB0C:
/* 8003BB0C 0003776C  57 60 15 BA */	rlwinm r0, r27, 2, 0x16, 0x1d
/* 8003BB10 00037770  7C 66 00 2E */	lwzx r3, r6, r0
lbl_8003BB14:
/* 8003BB14 00037774  2C 03 00 00 */	cmpwi r3, 0
/* 8003BB18 00037778  41 82 00 0C */	beq lbl_8003BB24
/* 8003BB1C 0003777C  38 81 00 08 */	addi r4, r1, 8
/* 8003BB20 00037780  48 1B A6 75 */	bl func_801F6194
lbl_8003BB24:
/* 8003BB24 00037784  3B 7B 00 01 */	addi r27, r27, 1
lbl_8003BB28:
/* 8003BB28 00037788  80 BE 0C 00 */	lwz r5, 0xc00(r30)
/* 8003BB2C 0003778C  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 8003BB30 00037790  80 65 00 00 */	lwz r3, 0(r5)
/* 8003BB34 00037794  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003BB38 00037798  7C 04 00 00 */	cmpw r4, r0
/* 8003BB3C 0003779C  41 80 FF A0 */	blt lbl_8003BADC
/* 8003BB40 000377A0  48 00 00 10 */	b lbl_8003BB50
lbl_8003BB44:
/* 8003BB44 000377A4  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BB48 000377A8  38 81 00 08 */	addi r4, r1, 8
/* 8003BB4C 000377AC  48 1B A6 49 */	bl func_801F6194
lbl_8003BB50:
/* 8003BB50 000377B0  81 9E 04 90 */	lwz r12, 0x490(r30)
/* 8003BB54 000377B4  FC 20 F8 90 */	fmr f1, f31
/* 8003BB58 000377B8  38 7E 04 60 */	addi r3, r30, 0x460
/* 8003BB5C 000377BC  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003BB60 000377C0  7D 89 03 A6 */	mtctr r12
/* 8003BB64 000377C4  4E 80 04 21 */	bctrl
/* 8003BB68 000377C8  2C 03 00 00 */	cmpwi r3, 0
/* 8003BB6C 000377CC  41 82 00 14 */	beq lbl_8003BB80
/* 8003BB70 000377D0  80 BE 0C 74 */	lwz r5, 0xc74(r30)
/* 8003BB74 000377D4  7F C3 F3 78 */	mr r3, r30
/* 8003BB78 000377D8  38 9E 0C 78 */	addi r4, r30, 0xc78
/* 8003BB7C 000377DC  4B FF ED DD */	bl func_8003A958
lbl_8003BB80:
/* 8003BB80 000377E0  3F 80 80 41 */	lis r28, lbl_8040A3F0@ha
/* 8003BB84 000377E4  3B BE 02 20 */	addi r29, r30, 0x220
/* 8003BB88 000377E8  3B 9C A3 F0 */	addi r28, r28, lbl_8040A3F0@l
/* 8003BB8C 000377EC  3B 60 00 00 */	li r27, 0
lbl_8003BB90:
/* 8003BB90 000377F0  81 9D 00 20 */	lwz r12, 0x20(r29)
/* 8003BB94 000377F4  FC 20 F8 90 */	fmr f1, f31
/* 8003BB98 000377F8  7F A3 EB 78 */	mr r3, r29
/* 8003BB9C 000377FC  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003BBA0 00037800  7D 89 03 A6 */	mtctr r12
/* 8003BBA4 00037804  4E 80 04 21 */	bctrl
/* 8003BBA8 00037808  2C 03 00 00 */	cmpwi r3, 0
/* 8003BBAC 0003780C  41 82 00 0C */	beq lbl_8003BBB8
/* 8003BBB0 00037810  A0 1C 00 0C */	lhz r0, 0xc(r28)
/* 8003BBB4 00037814  7F FF 03 78 */	or r31, r31, r0
lbl_8003BBB8:
/* 8003BBB8 00037818  3B 7B 00 01 */	addi r27, r27, 1
/* 8003BBBC 0003781C  3B 9C 00 02 */	addi r28, r28, 2
/* 8003BBC0 00037820  2C 1B 00 03 */	cmpwi r27, 3
/* 8003BBC4 00037824  3B BD 00 C0 */	addi r29, r29, 0xc0
/* 8003BBC8 00037828  41 80 FF C8 */	blt lbl_8003BB90
/* 8003BBCC 0003782C  80 1E 0D 70 */	lwz r0, 0xd70(r30)
/* 8003BBD0 00037830  2C 00 00 00 */	cmpwi r0, 0
/* 8003BBD4 00037834  41 82 00 18 */	beq lbl_8003BBEC
/* 8003BBD8 00037838  C0 3E 0D 68 */	lfs f1, 0xd68(r30)
/* 8003BBDC 0003783C  7F C3 F3 78 */	mr r3, r30
/* 8003BBE0 00037840  C0 5E 0D 6C */	lfs f2, 0xd6c(r30)
/* 8003BBE4 00037844  C0 7E 0D 64 */	lfs f3, 0xd64(r30)
/* 8003BBE8 00037848  4B FF F5 E5 */	bl func_8003B1CC
lbl_8003BBEC:
/* 8003BBEC 0003784C  FC 20 F8 90 */	fmr f1, f31
/* 8003BBF0 00037850  7F C3 F3 78 */	mr r3, r30
/* 8003BBF4 00037854  48 00 1F 4D */	bl func_8003DB40
/* 8003BBF8 00037858  FC 20 F8 90 */	fmr f1, f31
/* 8003BBFC 0003785C  7F C3 F3 78 */	mr r3, r30
/* 8003BC00 00037860  48 00 0F B9 */	bl func_8003CBB8
/* 8003BC04 00037864  C0 5E 0D 80 */	lfs f2, 0xd80(r30)
/* 8003BC08 00037868  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BC0C 0003786C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8003BC10 00037870  40 81 00 C0 */	ble lbl_8003BCD0
/* 8003BC14 00037874  C0 1E 0D 8C */	lfs f0, 0xd8c(r30)
/* 8003BC18 00037878  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 8003BC1C 0003787C  40 81 00 B4 */	ble lbl_8003BCD0
/* 8003BC20 00037880  EC 00 F8 28 */	fsubs f0, f0, f31
/* 8003BC24 00037884  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 8003BC28 00037888  D0 1E 0D 8C */	stfs f0, 0xd8c(r30)
/* 8003BC2C 0003788C  40 80 00 58 */	bge lbl_8003BC84
/* 8003BC30 00037890  83 BE 0C 04 */	lwz r29, 0xc04(r30)
/* 8003BC34 00037894  D0 3E 0D 8C */	stfs f1, 0xd8c(r30)
/* 8003BC38 00037898  7F A3 EB 78 */	mr r3, r29
/* 8003BC3C 0003789C  48 1B A2 81 */	bl func_801F5EBC
/* 8003BC40 000378A0  2C 03 00 00 */	cmpwi r3, 0
/* 8003BC44 000378A4  41 82 00 18 */	beq lbl_8003BC5C
/* 8003BC48 000378A8  A0 1D 00 DC */	lhz r0, 0xdc(r29)
/* 8003BC4C 000378AC  54 00 06 B5 */	rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 8003BC50 000378B0  40 82 00 0C */	bne lbl_8003BC5C
/* 8003BC54 000378B4  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 8003BC58 000378B8  D0 1D 01 18 */	stfs f0, 0x118(r29)
lbl_8003BC5C:
/* 8003BC5C 000378BC  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BC60 000378C0  38 C0 00 00 */	li r6, 0
/* 8003BC64 000378C4  38 E0 00 00 */	li r7, 0
/* 8003BC68 000378C8  39 00 00 01 */	li r8, 1
/* 8003BC6C 000378CC  A0 83 01 04 */	lhz r4, 0x104(r3)
/* 8003BC70 000378D0  80 A3 01 08 */	lwz r5, 0x108(r3)
/* 8003BC74 000378D4  C0 23 01 0C */	lfs f1, 0x10c(r3)
/* 8003BC78 000378D8  C0 43 01 14 */	lfs f2, 0x114(r3)
/* 8003BC7C 000378DC  48 1B 91 79 */	bl func_801F4DF4
/* 8003BC80 000378E0  48 00 00 50 */	b lbl_8003BCD0
lbl_8003BC84:
/* 8003BC84 000378E4  EC 20 10 24 */	fdivs f1, f0, f2
/* 8003BC88 000378E8  C0 02 82 30 */	lfs f0, lbl_80640830-_SDA2_BASE_(r2)
/* 8003BC8C 000378EC  EF C0 08 28 */	fsubs f30, f0, f1
/* 8003BC90 000378F0  FC 1E 00 40 */	fcmpo cr0, f30, f0
/* 8003BC94 000378F4  40 81 00 08 */	ble lbl_8003BC9C
/* 8003BC98 000378F8  FF C0 00 90 */	fmr f30, f0
lbl_8003BC9C:
/* 8003BC9C 000378FC  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BCA0 00037900  FC 1E 00 40 */	fcmpo cr0, f30, f0
/* 8003BCA4 00037904  40 80 00 08 */	bge lbl_8003BCAC
/* 8003BCA8 00037908  FF C0 00 90 */	fmr f30, f0
lbl_8003BCAC:
/* 8003BCAC 0003790C  83 BE 0C 04 */	lwz r29, 0xc04(r30)
/* 8003BCB0 00037910  7F A3 EB 78 */	mr r3, r29
/* 8003BCB4 00037914  48 1B A2 09 */	bl func_801F5EBC
/* 8003BCB8 00037918  2C 03 00 00 */	cmpwi r3, 0
/* 8003BCBC 0003791C  41 82 00 14 */	beq lbl_8003BCD0
/* 8003BCC0 00037920  A0 1D 00 DC */	lhz r0, 0xdc(r29)
/* 8003BCC4 00037924  54 00 06 B5 */	rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 8003BCC8 00037928  40 82 00 08 */	bne lbl_8003BCD0
/* 8003BCCC 0003792C  D3 DD 01 18 */	stfs f30, 0x118(r29)
lbl_8003BCD0:
/* 8003BCD0 00037930  57 E0 07 7F */	clrlwi. r0, r31, 0x1d
/* 8003BCD4 00037934  41 82 00 4C */	beq lbl_8003BD20
/* 8003BCD8 00037938  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BCDC 0003793C  C0 5E 0C B4 */	lfs f2, 0xcb4(r30)
/* 8003BCE0 00037940  80 63 00 08 */	lwz r3, 8(r3)
/* 8003BCE4 00037944  C0 3E 0C B8 */	lfs f1, 0xcb8(r30)
/* 8003BCE8 00037948  C0 1E 0C BC */	lfs f0, 0xcbc(r30)
/* 8003BCEC 0003794C  2C 03 00 00 */	cmpwi r3, 0
/* 8003BCF0 00037950  D0 41 00 24 */	stfs f2, 0x24(r1)
/* 8003BCF4 00037954  D0 21 00 28 */	stfs f1, 0x28(r1)
/* 8003BCF8 00037958  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 8003BCFC 0003795C  41 82 00 24 */	beq lbl_8003BD20
/* 8003BD00 00037960  80 63 00 00 */	lwz r3, 0(r3)
/* 8003BD04 00037964  2C 03 00 00 */	cmpwi r3, 0
/* 8003BD08 00037968  41 82 00 18 */	beq lbl_8003BD20
/* 8003BD0C 0003796C  D0 43 00 20 */	stfs f2, 0x20(r3)
/* 8003BD10 00037970  38 80 00 01 */	li r4, 1
/* 8003BD14 00037974  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 8003BD18 00037978  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8003BD1C 0003797C  48 1B 69 9D */	bl func_801F26B8
lbl_8003BD20:
/* 8003BD20 00037980  57 E0 06 B9 */	rlwinm. r0, r31, 0, 0x1a, 0x1c
/* 8003BD24 00037984  41 82 00 78 */	beq lbl_8003BD9C
/* 8003BD28 00037988  C0 1E 0C C0 */	lfs f0, 0xcc0(r30)
/* 8003BD2C 0003798C  38 61 00 30 */	addi r3, r1, 0x30
/* 8003BD30 00037990  38 81 00 18 */	addi r4, r1, 0x18
/* 8003BD34 00037994  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 8003BD38 00037998  C0 1E 0C C4 */	lfs f0, 0xcc4(r30)
/* 8003BD3C 0003799C  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8003BD40 000379A0  C0 1E 0C C8 */	lfs f0, 0xcc8(r30)
/* 8003BD44 000379A4  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 8003BD48 000379A8  48 1E 79 79 */	bl func_802236C0
/* 8003BD4C 000379AC  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BD50 000379B0  80 63 00 08 */	lwz r3, 8(r3)
/* 8003BD54 000379B4  2C 03 00 00 */	cmpwi r3, 0
/* 8003BD58 000379B8  41 82 00 44 */	beq lbl_8003BD9C
/* 8003BD5C 000379BC  80 63 00 00 */	lwz r3, 0(r3)
/* 8003BD60 000379C0  2C 03 00 00 */	cmpwi r3, 0
/* 8003BD64 000379C4  41 82 00 38 */	beq lbl_8003BD9C
/* 8003BD68 000379C8  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 8003BD6C 000379CC  38 80 00 01 */	li r4, 1
/* 8003BD70 000379D0  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 8003BD74 000379D4  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 8003BD78 000379D8  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 8003BD7C 000379DC  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 8003BD80 000379E0  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 8003BD84 000379E4  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 8003BD88 000379E8  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 8003BD8C 000379EC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 8003BD90 000379F0  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 8003BD94 000379F4  B0 03 00 10 */	sth r0, 0x10(r3)
/* 8003BD98 000379F8  48 1B 69 21 */	bl func_801F26B8
lbl_8003BD9C:
/* 8003BD9C 000379FC  57 E0 05 F3 */	rlwinm. r0, r31, 0, 0x17, 0x19
/* 8003BDA0 00037A00  41 82 00 E8 */	beq lbl_8003BE88
/* 8003BDA4 00037A04  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BDA8 00037A08  C0 7E 0C CC */	lfs f3, 0xccc(r30)
/* 8003BDAC 00037A0C  80 63 00 08 */	lwz r3, 8(r3)
/* 8003BDB0 00037A10  C0 3E 0C D0 */	lfs f1, 0xcd0(r30)
/* 8003BDB4 00037A14  C0 1E 0C D4 */	lfs f0, 0xcd4(r30)
/* 8003BDB8 00037A18  2C 03 00 00 */	cmpwi r3, 0
/* 8003BDBC 00037A1C  D0 61 00 0C */	stfs f3, 0xc(r1)
/* 8003BDC0 00037A20  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8003BDC4 00037A24  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003BDC8 00037A28  41 82 00 C0 */	beq lbl_8003BE88
/* 8003BDCC 00037A2C  80 63 00 00 */	lwz r3, 0(r3)
/* 8003BDD0 00037A30  2C 03 00 00 */	cmpwi r3, 0
/* 8003BDD4 00037A34  41 82 00 B4 */	beq lbl_8003BE88
/* 8003BDD8 00037A38  D0 63 00 48 */	stfs f3, 0x48(r3)
/* 8003BDDC 00037A3C  C0 42 82 70 */	lfs f2, lbl_80640870-_SDA2_BASE_(r2)
/* 8003BDE0 00037A40  D0 23 00 4C */	stfs f1, 0x4c(r3)
/* 8003BDE4 00037A44  FC 03 10 40 */	fcmpo cr0, f3, f2
/* 8003BDE8 00037A48  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8003BDEC 00037A4C  40 80 00 2C */	bge lbl_8003BE18
/* 8003BDF0 00037A50  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8003BDF4 00037A54  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 8003BDF8 00037A58  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8003BDFC 00037A5C  40 81 00 1C */	ble lbl_8003BE18
/* 8003BE00 00037A60  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BE04 00037A64  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003BE08 00037A68  40 80 00 08 */	bge lbl_8003BE10
/* 8003BE0C 00037A6C  48 00 00 08 */	b lbl_8003BE14
lbl_8003BE10:
/* 8003BE10 00037A70  FC 60 10 90 */	fmr f3, f2
lbl_8003BE14:
/* 8003BE14 00037A74  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_8003BE18:
/* 8003BE18 00037A78  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 8003BE1C 00037A7C  C0 22 82 70 */	lfs f1, lbl_80640870-_SDA2_BASE_(r2)
/* 8003BE20 00037A80  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8003BE24 00037A84  40 80 00 28 */	bge lbl_8003BE4C
/* 8003BE28 00037A88  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 8003BE2C 00037A8C  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8003BE30 00037A90  40 81 00 1C */	ble lbl_8003BE4C
/* 8003BE34 00037A94  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BE38 00037A98  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003BE3C 00037A9C  40 80 00 08 */	bge lbl_8003BE44
/* 8003BE40 00037AA0  48 00 00 08 */	b lbl_8003BE48
lbl_8003BE44:
/* 8003BE44 00037AA4  FC 60 08 90 */	fmr f3, f1
lbl_8003BE48:
/* 8003BE48 00037AA8  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8003BE4C:
/* 8003BE4C 00037AAC  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 8003BE50 00037AB0  C0 22 82 70 */	lfs f1, lbl_80640870-_SDA2_BASE_(r2)
/* 8003BE54 00037AB4  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8003BE58 00037AB8  40 80 00 28 */	bge lbl_8003BE80
/* 8003BE5C 00037ABC  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 8003BE60 00037AC0  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8003BE64 00037AC4  40 81 00 1C */	ble lbl_8003BE80
/* 8003BE68 00037AC8  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BE6C 00037ACC  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003BE70 00037AD0  40 80 00 08 */	bge lbl_8003BE78
/* 8003BE74 00037AD4  48 00 00 08 */	b lbl_8003BE7C
lbl_8003BE78:
/* 8003BE78 00037AD8  FC 60 08 90 */	fmr f3, f1
lbl_8003BE7C:
/* 8003BE7C 00037ADC  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8003BE80:
/* 8003BE80 00037AE0  38 80 00 01 */	li r4, 1
/* 8003BE84 00037AE4  48 1B 68 35 */	bl func_801F26B8
lbl_8003BE88:
/* 8003BE88 00037AE8  57 E0 05 AD */	rlwinm. r0, r31, 0, 0x16, 0x16
/* 8003BE8C 00037AEC  41 82 00 28 */	beq lbl_8003BEB4
/* 8003BE90 00037AF0  C0 22 82 38 */	lfs f1, lbl_80640838-_SDA2_BASE_(r2)
/* 8003BE94 00037AF4  C0 1E 0C 70 */	lfs f0, 0xc70(r30)
/* 8003BE98 00037AF8  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BE9C 00037AFC  EC 01 00 32 */	fmuls f0, f1, f0
/* 8003BEA0 00037B00  FC 00 00 1E */	fctiwz f0, f0
/* 8003BEA4 00037B04  D8 01 00 58 */	stfd f0, 0x58(r1)
/* 8003BEA8 00037B08  80 81 00 5C */	lwz r4, 0x5c(r1)
/* 8003BEAC 00037B0C  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 8003BEB0 00037B10  48 1B A2 6D */	bl func_801F611C
lbl_8003BEB4:
/* 8003BEB4 00037B14  80 7E 0C B0 */	lwz r3, 0xcb0(r30)
/* 8003BEB8 00037B18  2C 03 00 00 */	cmpwi r3, 0
/* 8003BEBC 00037B1C  41 82 01 0C */	beq lbl_8003BFC8
/* 8003BEC0 00037B20  88 03 00 00 */	lbz r0, 0(r3)
/* 8003BEC4 00037B24  7C 00 07 75 */	extsb. r0, r0
/* 8003BEC8 00037B28  41 80 01 00 */	blt lbl_8003BFC8
/* 8003BECC 00037B2C  7F C3 F3 78 */	mr r3, r30
/* 8003BED0 00037B30  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8003BED4 00037B34  48 00 03 89 */	bl func_8003C25C
/* 8003BED8 00037B38  7C 7D 1B 78 */	mr r29, r3
/* 8003BEDC 00037B3C  7F C3 F3 78 */	mr r3, r30
/* 8003BEE0 00037B40  4B FF F5 3D */	bl func_8003B41C
/* 8003BEE4 00037B44  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003BEE8 00037B48  7C 7F 1B 78 */	mr r31, r3
/* 8003BEEC 00037B4C  54 00 04 63 */	rlwinm. r0, r0, 0, 0x11, 0x11
/* 8003BEF0 00037B50  41 82 00 10 */	beq lbl_8003BF00
/* 8003BEF4 00037B54  7F C3 F3 78 */	mr r3, r30
/* 8003BEF8 00037B58  48 00 15 BD */	bl func_8003D4B4
/* 8003BEFC 00037B5C  48 00 00 CC */	b lbl_8003BFC8
lbl_8003BF00:
/* 8003BF00 00037B60  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BF04 00037B64  48 1B 9F B9 */	bl func_801F5EBC
/* 8003BF08 00037B68  2C 03 00 00 */	cmpwi r3, 0
/* 8003BF0C 00037B6C  40 82 00 BC */	bne lbl_8003BFC8
/* 8003BF10 00037B70  38 1F FF FF */	addi r0, r31, -1
/* 8003BF14 00037B74  28 00 00 01 */	cmplwi r0, 1
/* 8003BF18 00037B78  41 81 00 B0 */	bgt lbl_8003BFC8
/* 8003BF1C 00037B7C  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003BF20 00037B80  57 A4 04 3E */	clrlwi r4, r29, 0x10
/* 8003BF24 00037B84  A0 03 00 F0 */	lhz r0, 0xf0(r3)
/* 8003BF28 00037B88  7C 04 00 40 */	cmplw r4, r0
/* 8003BF2C 00037B8C  41 82 00 9C */	beq lbl_8003BFC8
/* 8003BF30 00037B90  80 A3 00 04 */	lwz r5, 4(r3)
/* 8003BF34 00037B94  2C 05 00 00 */	cmpwi r5, 0
/* 8003BF38 00037B98  40 82 00 0C */	bne lbl_8003BF44
/* 8003BF3C 00037B9C  38 80 00 00 */	li r4, 0
/* 8003BF40 00037BA0  48 00 00 24 */	b lbl_8003BF64
lbl_8003BF44:
/* 8003BF44 00037BA4  A0 05 00 08 */	lhz r0, 8(r5)
/* 8003BF48 00037BA8  7C 04 00 40 */	cmplw r4, r0
/* 8003BF4C 00037BAC  41 80 00 0C */	blt lbl_8003BF58
/* 8003BF50 00037BB0  38 80 00 00 */	li r4, 0
/* 8003BF54 00037BB4  48 00 00 10 */	b lbl_8003BF64
lbl_8003BF58:
/* 8003BF58 00037BB8  1C 04 00 30 */	mulli r0, r4, 0x30
/* 8003BF5C 00037BBC  80 85 00 0C */	lwz r4, 0xc(r5)
/* 8003BF60 00037BC0  7C 84 02 14 */	add r4, r4, r0
lbl_8003BF64:
/* 8003BF64 00037BC4  88 A4 00 28 */	lbz r5, 0x28(r4)
/* 8003BF68 00037BC8  57 A4 04 3E */	clrlwi r4, r29, 0x10
/* 8003BF6C 00037BCC  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BF70 00037BD0  38 C0 00 00 */	li r6, 0
/* 8003BF74 00037BD4  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003BF78 00037BD8  38 E0 00 00 */	li r7, 0
/* 8003BF7C 00037BDC  39 00 00 00 */	li r8, 0
/* 8003BF80 00037BE0  48 1B 8E 75 */	bl func_801F4DF4
/* 8003BF84 00037BE4  80 7E 0C B0 */	lwz r3, 0xcb0(r30)
/* 8003BF88 00037BE8  B3 BE 0B F8 */	sth r29, 0xbf8(r30)
/* 8003BF8C 00037BEC  38 03 00 01 */	addi r0, r3, 1
/* 8003BF90 00037BF0  88 63 00 00 */	lbz r3, 0(r3)
/* 8003BF94 00037BF4  2C 03 00 00 */	cmpwi r3, 0
/* 8003BF98 00037BF8  98 7E 0B F6 */	stb r3, 0xbf6(r30)
/* 8003BF9C 00037BFC  90 1E 0C B0 */	stw r0, 0xcb0(r30)
/* 8003BFA0 00037C00  41 82 00 0C */	beq lbl_8003BFAC
/* 8003BFA4 00037C04  28 03 00 10 */	cmplwi r3, 0x10
/* 8003BFA8 00037C08  40 82 00 14 */	bne lbl_8003BFBC
lbl_8003BFAC:
/* 8003BFAC 00037C0C  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003BFB0 00037C10  64 00 00 02 */	oris r0, r0, 2
/* 8003BFB4 00037C14  90 1E 00 00 */	stw r0, 0(r30)
/* 8003BFB8 00037C18  48 00 00 10 */	b lbl_8003BFC8
lbl_8003BFBC:
/* 8003BFBC 00037C1C  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003BFC0 00037C20  54 00 03 DA */	rlwinm r0, r0, 0, 0xf, 0xd
/* 8003BFC4 00037C24  90 1E 00 00 */	stw r0, 0(r30)
lbl_8003BFC8:
/* 8003BFC8 00037C28  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003BFCC 00037C2C  54 00 02 95 */	rlwinm. r0, r0, 0, 0xa, 0xa
/* 8003BFD0 00037C30  41 82 00 24 */	beq lbl_8003BFF4
/* 8003BFD4 00037C34  C0 3E 0D 78 */	lfs f1, 0xd78(r30)
/* 8003BFD8 00037C38  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003BFDC 00037C3C  EC 21 F8 28 */	fsubs f1, f1, f31
/* 8003BFE0 00037C40  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003BFE4 00037C44  D0 3E 0D 78 */	stfs f1, 0xd78(r30)
/* 8003BFE8 00037C48  40 80 00 0C */	bge lbl_8003BFF4
/* 8003BFEC 00037C4C  7F C3 F3 78 */	mr r3, r30
/* 8003BFF0 00037C50  4B FF DC 21 */	bl func_80039C10
lbl_8003BFF4:
/* 8003BFF4 00037C54  80 7E 00 00 */	lwz r3, 0(r30)
/* 8003BFF8 00037C58  54 60 04 A5 */	rlwinm. r0, r3, 0, 0x12, 0x12
/* 8003BFFC 00037C5C  40 82 01 68 */	bne lbl_8003C164
/* 8003C000 00037C60  54 60 03 9D */	rlwinm. r0, r3, 0, 0xe, 0xe
/* 8003C004 00037C64  41 82 01 60 */	beq lbl_8003C164
/* 8003C008 00037C68  C0 3E 0C 6C */	lfs f1, 0xc6c(r30)
/* 8003C00C 00037C6C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003C010 00037C70  EC 21 F8 28 */	fsubs f1, f1, f31
/* 8003C014 00037C74  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003C018 00037C78  D0 3E 0C 6C */	stfs f1, 0xc6c(r30)
/* 8003C01C 00037C7C  40 80 01 48 */	bge lbl_8003C164
/* 8003C020 00037C80  48 1E 78 11 */	bl func_80223830
/* 8003C024 00037C84  3C 80 00 03 */	lis r4, 0x000343FD@ha
/* 8003C028 00037C88  80 A3 00 00 */	lwz r5, 0(r3)
/* 8003C02C 00037C8C  38 84 43 FD */	addi r4, r4, 0x000343FD@l
/* 8003C030 00037C90  3C 00 43 30 */	lis r0, 0x4330
/* 8003C034 00037C94  7C A5 21 D6 */	mullw r5, r5, r4
/* 8003C038 00037C98  90 01 00 58 */	stw r0, 0x58(r1)
/* 8003C03C 00037C9C  C8 62 82 50 */	lfd f3, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C040 00037CA0  38 80 00 13 */	li r4, 0x13
/* 8003C044 00037CA4  C0 22 82 2C */	lfs f1, lbl_8064082C-_SDA2_BASE_(r2)
/* 8003C048 00037CA8  C0 02 82 A8 */	lfs f0, lbl_806408A8-_SDA2_BASE_(r2)
/* 8003C04C 00037CAC  3C A5 00 27 */	addis r5, r5, 0x27
/* 8003C050 00037CB0  38 A5 9E C3 */	addi r5, r5, -24893
/* 8003C054 00037CB4  54 A0 84 3E */	srwi r0, r5, 0x10
/* 8003C058 00037CB8  90 A3 00 00 */	stw r5, 0(r3)
/* 8003C05C 00037CBC  7F C3 F3 78 */	mr r3, r30
/* 8003C060 00037CC0  90 01 00 5C */	stw r0, 0x5c(r1)
/* 8003C064 00037CC4  C8 41 00 58 */	lfd f2, 0x58(r1)
/* 8003C068 00037CC8  EC 42 18 28 */	fsubs f2, f2, f3
/* 8003C06C 00037CCC  EC 22 08 24 */	fdivs f1, f2, f1
/* 8003C070 00037CD0  EC 00 08 2A */	fadds f0, f0, f1
/* 8003C074 00037CD4  D0 1E 0C 6C */	stfs f0, 0xc6c(r30)
/* 8003C078 00037CD8  48 00 01 E5 */	bl func_8003C25C
/* 8003C07C 00037CDC  83 9E 0C 04 */	lwz r28, 0xc04(r30)
/* 8003C080 00037CE0  7C 7F 1B 78 */	mr r31, r3
/* 8003C084 00037CE4  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003C088 00037CE8  2C 04 00 00 */	cmpwi r4, 0
/* 8003C08C 00037CEC  40 82 00 0C */	bne lbl_8003C098
/* 8003C090 00037CF0  38 60 00 00 */	li r3, 0
/* 8003C094 00037CF4  48 00 00 28 */	b lbl_8003C0BC
lbl_8003C098:
/* 8003C098 00037CF8  A0 04 00 08 */	lhz r0, 8(r4)
/* 8003C09C 00037CFC  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003C0A0 00037D00  7C 03 00 40 */	cmplw r3, r0
/* 8003C0A4 00037D04  41 80 00 0C */	blt lbl_8003C0B0
/* 8003C0A8 00037D08  38 60 00 00 */	li r3, 0
/* 8003C0AC 00037D0C  48 00 00 10 */	b lbl_8003C0BC
lbl_8003C0B0:
/* 8003C0B0 00037D10  1C 03 00 30 */	mulli r0, r3, 0x30
/* 8003C0B4 00037D14  80 64 00 0C */	lwz r3, 0xc(r4)
/* 8003C0B8 00037D18  7C 63 02 14 */	add r3, r3, r0
lbl_8003C0BC:
/* 8003C0BC 00037D1C  2C 03 00 00 */	cmpwi r3, 0
/* 8003C0C0 00037D20  41 82 00 A4 */	beq lbl_8003C164
/* 8003C0C4 00037D24  80 63 00 00 */	lwz r3, 0(r3)
/* 8003C0C8 00037D28  38 8D 80 E0 */	addi r4, r13, lbl_8063D3A0-_SDA_BASE_
/* 8003C0CC 00037D2C  38 A0 00 03 */	li r5, 3
/* 8003C0D0 00037D30  48 19 24 99 */	bl strncmp
/* 8003C0D4 00037D34  2C 03 00 00 */	cmpwi r3, 0
/* 8003C0D8 00037D38  40 82 00 8C */	bne lbl_8003C164
/* 8003C0DC 00037D3C  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 8003C0E0 00037D40  28 04 00 FF */	cmplwi r4, 0xff
/* 8003C0E4 00037D44  41 82 00 80 */	beq lbl_8003C164
/* 8003C0E8 00037D48  A0 1E 05 10 */	lhz r0, 0x510(r30)
/* 8003C0EC 00037D4C  28 00 00 59 */	cmplwi r0, 0x59
/* 8003C0F0 00037D50  40 82 00 54 */	bne lbl_8003C144
/* 8003C0F4 00037D54  80 7C 00 1C */	lwz r3, 0x1c(r28)
/* 8003C0F8 00037D58  2C 03 00 00 */	cmpwi r3, 0
/* 8003C0FC 00037D5C  40 82 00 0C */	bne lbl_8003C108
/* 8003C100 00037D60  38 60 00 00 */	li r3, 0
/* 8003C104 00037D64  48 00 00 20 */	b lbl_8003C124
lbl_8003C108:
/* 8003C108 00037D68  A0 1C 00 E6 */	lhz r0, 0xe6(r28)
/* 8003C10C 00037D6C  28 00 00 03 */	cmplwi r0, 3
/* 8003C110 00037D70  41 81 00 0C */	bgt lbl_8003C11C
/* 8003C114 00037D74  38 60 00 00 */	li r3, 0
/* 8003C118 00037D78  48 00 00 0C */	b lbl_8003C124
lbl_8003C11C:
/* 8003C11C 00037D7C  80 63 00 0C */	lwz r3, 0xc(r3)
/* 8003C120 00037D80  80 63 00 14 */	lwz r3, 0x14(r3)
lbl_8003C124:
/* 8003C124 00037D84  2C 03 00 00 */	cmpwi r3, 0
/* 8003C128 00037D88  41 82 00 3C */	beq lbl_8003C164
/* 8003C12C 00037D8C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003C130 00037D90  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 8003C134 00037D94  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003C138 00037D98  38 A0 00 00 */	li r5, 0
/* 8003C13C 00037D9C  48 1A 19 81 */	bl func_801DDABC
/* 8003C140 00037DA0  48 00 00 24 */	b lbl_8003C164
lbl_8003C144:
/* 8003C144 00037DA4  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003C148 00037DA8  7F 83 E3 78 */	mr r3, r28
/* 8003C14C 00037DAC  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003C150 00037DB0  38 A0 00 00 */	li r5, 0
/* 8003C154 00037DB4  38 C0 00 00 */	li r6, 0
/* 8003C158 00037DB8  38 E0 00 00 */	li r7, 0
/* 8003C15C 00037DBC  39 00 00 00 */	li r8, 0
/* 8003C160 00037DC0  48 1B 8C 95 */	bl func_801F4DF4
lbl_8003C164:
/* 8003C164 00037DC4  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003C168 00037DC8  54 00 03 5B */	rlwinm. r0, r0, 0, 0xd, 0xd
/* 8003C16C 00037DCC  41 82 00 90 */	beq lbl_8003C1FC
/* 8003C170 00037DD0  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003C174 00037DD4  80 A3 00 04 */	lwz r5, 4(r3)
/* 8003C178 00037DD8  A0 83 00 F0 */	lhz r4, 0xf0(r3)
/* 8003C17C 00037DDC  2C 05 00 00 */	cmpwi r5, 0
/* 8003C180 00037DE0  40 82 00 0C */	bne lbl_8003C18C
/* 8003C184 00037DE4  3B A0 00 00 */	li r29, 0
/* 8003C188 00037DE8  48 00 00 24 */	b lbl_8003C1AC
lbl_8003C18C:
/* 8003C18C 00037DEC  A0 05 00 08 */	lhz r0, 8(r5)
/* 8003C190 00037DF0  7C 04 00 40 */	cmplw r4, r0
/* 8003C194 00037DF4  41 80 00 0C */	blt lbl_8003C1A0
/* 8003C198 00037DF8  3B A0 00 00 */	li r29, 0
/* 8003C19C 00037DFC  48 00 00 10 */	b lbl_8003C1AC
lbl_8003C1A0:
/* 8003C1A0 00037E00  1C 04 00 30 */	mulli r0, r4, 0x30
/* 8003C1A4 00037E04  80 85 00 0C */	lwz r4, 0xc(r5)
/* 8003C1A8 00037E08  7F A4 02 14 */	add r29, r4, r0
lbl_8003C1AC:
/* 8003C1AC 00037E0C  88 1E 0C A0 */	lbz r0, 0xca0(r30)
/* 8003C1B0 00037E10  28 00 00 03 */	cmplwi r0, 3
/* 8003C1B4 00037E14  40 80 00 48 */	bge lbl_8003C1FC
/* 8003C1B8 00037E18  48 1B 99 8D */	bl func_801F5B44
/* 8003C1BC 00037E1C  88 9E 0C A0 */	lbz r4, 0xca0(r30)
/* 8003C1C0 00037E20  54 80 10 3A */	slwi r0, r4, 2
/* 8003C1C4 00037E24  7C 7D 02 14 */	add r3, r29, r0
/* 8003C1C8 00037E28  C0 03 00 04 */	lfs f0, 4(r3)
/* 8003C1CC 00037E2C  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 8003C1D0 00037E30  4C 40 13 82 */	cror 2, 0, 2
/* 8003C1D4 00037E34  40 82 00 28 */	bne lbl_8003C1FC
/* 8003C1D8 00037E38  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003C1DC 00037E3C  7F C3 F3 78 */	mr r3, r30
/* 8003C1E0 00037E40  81 9E 0C AC */	lwz r12, 0xcac(r30)
/* 8003C1E4 00037E44  54 00 03 98 */	rlwinm r0, r0, 0, 0xe, 0xc
/* 8003C1E8 00037E48  80 BE 0C A4 */	lwz r5, 0xca4(r30)
/* 8003C1EC 00037E4C  90 1E 00 00 */	stw r0, 0(r30)
/* 8003C1F0 00037E50  80 DE 0C A8 */	lwz r6, 0xca8(r30)
/* 8003C1F4 00037E54  7D 89 03 A6 */	mtctr r12
/* 8003C1F8 00037E58  4E 80 04 21 */	bctrl
lbl_8003C1FC:
/* 8003C1FC 00037E5C  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 8003C200 00037E60  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 8003C204 00037E64  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 8003C208 00037E68  39 61 00 80 */	addi r11, r1, 0x80
/* 8003C20C 00037E6C  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 8003C210 00037E70  48 18 AF 65 */	bl _restgpr_27
/* 8003C214 00037E74  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 8003C218 00037E78  7C 08 03 A6 */	mtlr r0
/* 8003C21C 00037E7C  38 21 00 A0 */	addi r1, r1, 0xa0
/* 8003C220 00037E80  4E 80 00 20 */	blr

.global func_8003C224
func_8003C224:
/* 8003C224 00037E84  28 05 00 03 */	cmplwi r5, 3
/* 8003C228 00037E88  41 80 00 14 */	blt lbl_8003C23C
/* 8003C22C 00037E8C  80 03 00 00 */	lwz r0, 0(r3)
/* 8003C230 00037E90  54 00 03 98 */	rlwinm r0, r0, 0, 0xe, 0xc
/* 8003C234 00037E94  90 03 00 00 */	stw r0, 0(r3)
/* 8003C238 00037E98  4E 80 00 20 */	blr
lbl_8003C23C:
/* 8003C23C 00037E9C  80 03 00 00 */	lwz r0, 0(r3)
/* 8003C240 00037EA0  98 A3 0C A0 */	stb r5, 0xca0(r3)
/* 8003C244 00037EA4  64 00 00 04 */	oris r0, r0, 4
/* 8003C248 00037EA8  90 C3 0C A4 */	stw r6, 0xca4(r3)
/* 8003C24C 00037EAC  90 E3 0C A8 */	stw r7, 0xca8(r3)
/* 8003C250 00037EB0  90 83 0C AC */	stw r4, 0xcac(r3)
/* 8003C254 00037EB4  90 03 00 00 */	stw r0, 0(r3)
/* 8003C258 00037EB8  4E 80 00 20 */	blr

.global func_8003C25C
func_8003C25C:
/* 8003C25C 00037EBC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003C260 00037EC0  7C 08 02 A6 */	mflr r0
/* 8003C264 00037EC4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003C268 00037EC8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003C26C 00037ECC  7C 9F 23 78 */	mr r31, r4
/* 8003C270 00037ED0  93 C1 00 08 */	stw r30, 8(r1)
/* 8003C274 00037ED4  7C 7E 1B 78 */	mr r30, r3
/* 8003C278 00037ED8  48 00 1E E5 */	bl func_8003E15C
/* 8003C27C 00037EDC  2C 03 00 00 */	cmpwi r3, 0
/* 8003C280 00037EE0  41 82 00 28 */	beq lbl_8003C2A8
/* 8003C284 00037EE4  A0 DE 05 14 */	lhz r6, 0x514(r30)
/* 8003C288 00037EE8  7F E5 FB 78 */	mr r5, r31
/* 8003C28C 00037EEC  A0 1E 05 12 */	lhz r0, 0x512(r30)
/* 8003C290 00037EF0  A0 9E 05 10 */	lhz r4, 0x510(r30)
/* 8003C294 00037EF4  54 C6 06 3E */	clrlwi r6, r6, 0x18
/* 8003C298 00037EF8  54 07 06 3E */	clrlwi r7, r0, 0x18
/* 8003C29C 00037EFC  48 00 25 29 */	bl func_8003E7C4
/* 8003C2A0 00037F00  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003C2A4 00037F04  48 00 00 08 */	b lbl_8003C2AC
lbl_8003C2A8:
/* 8003C2A8 00037F08  38 60 00 00 */	li r3, 0
lbl_8003C2AC:
/* 8003C2AC 00037F0C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003C2B0 00037F10  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003C2B4 00037F14  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003C2B8 00037F18  7C 08 03 A6 */	mtlr r0
/* 8003C2BC 00037F1C  38 21 00 10 */	addi r1, r1, 0x10
/* 8003C2C0 00037F20  4E 80 00 20 */	blr

.global func_8003C2C4
func_8003C2C4:
/* 8003C2C4 00037F24  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003C2C8 00037F28  7C 08 02 A6 */	mflr r0
/* 8003C2CC 00037F2C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003C2D0 00037F30  3C 00 43 30 */	lis r0, 0x4330
/* 8003C2D4 00037F34  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8003C2D8 00037F38  7C 9F 23 78 */	mr r31, r4
/* 8003C2DC 00037F3C  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8003C2E0 00037F40  7C 7E 1B 78 */	mr r30, r3
/* 8003C2E4 00037F44  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8003C2E8 00037F48  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 8003C2EC 00037F4C  90 01 00 08 */	stw r0, 8(r1)
/* 8003C2F0 00037F50  2C 05 00 00 */	cmpwi r5, 0
/* 8003C2F4 00037F54  90 01 00 10 */	stw r0, 0x10(r1)
/* 8003C2F8 00037F58  41 82 01 08 */	beq lbl_8003C400
/* 8003C2FC 00037F5C  A0 03 0C 68 */	lhz r0, 0xc68(r3)
/* 8003C300 00037F60  28 00 01 00 */	cmplwi r0, 0x100
/* 8003C304 00037F64  40 82 00 80 */	bne lbl_8003C384
/* 8003C308 00037F68  80 03 0C 00 */	lwz r0, 0xc00(r3)
/* 8003C30C 00037F6C  2C 00 00 00 */	cmpwi r0, 0
/* 8003C310 00037F70  41 82 00 F0 */	beq lbl_8003C400
/* 8003C314 00037F74  3B A0 00 00 */	li r29, 0
/* 8003C318 00037F78  48 00 00 50 */	b lbl_8003C368
lbl_8003C31C:
/* 8003C31C 00037F7C  80 C5 00 04 */	lwz r6, 4(r5)
/* 8003C320 00037F80  2C 06 00 00 */	cmpwi r6, 0
/* 8003C324 00037F84  40 82 00 0C */	bne lbl_8003C330
/* 8003C328 00037F88  38 60 00 00 */	li r3, 0
/* 8003C32C 00037F8C  48 00 00 28 */	b lbl_8003C354
lbl_8003C330:
/* 8003C330 00037F90  80 65 00 00 */	lwz r3, 0(r5)
/* 8003C334 00037F94  57 A4 06 3E */	clrlwi r4, r29, 0x18
/* 8003C338 00037F98  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003C33C 00037F9C  7C 04 00 40 */	cmplw r4, r0
/* 8003C340 00037FA0  41 80 00 0C */	blt lbl_8003C34C
/* 8003C344 00037FA4  38 60 00 00 */	li r3, 0
/* 8003C348 00037FA8  48 00 00 0C */	b lbl_8003C354
lbl_8003C34C:
/* 8003C34C 00037FAC  57 A0 15 BA */	rlwinm r0, r29, 2, 0x16, 0x1d
/* 8003C350 00037FB0  7C 66 00 2E */	lwzx r3, r6, r0
lbl_8003C354:
/* 8003C354 00037FB4  2C 03 00 00 */	cmpwi r3, 0
/* 8003C358 00037FB8  41 82 00 0C */	beq lbl_8003C364
/* 8003C35C 00037FBC  7F E4 FB 78 */	mr r4, r31
/* 8003C360 00037FC0  48 1B 9E AD */	bl func_801F620C
lbl_8003C364:
/* 8003C364 00037FC4  3B BD 00 01 */	addi r29, r29, 1
lbl_8003C368:
/* 8003C368 00037FC8  80 BE 0C 00 */	lwz r5, 0xc00(r30)
/* 8003C36C 00037FCC  57 A4 06 3E */	clrlwi r4, r29, 0x18
/* 8003C370 00037FD0  80 65 00 00 */	lwz r3, 0(r5)
/* 8003C374 00037FD4  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003C378 00037FD8  7C 04 00 00 */	cmpw r4, r0
/* 8003C37C 00037FDC  41 80 FF A0 */	blt lbl_8003C31C
/* 8003C380 00037FE0  48 00 00 24 */	b lbl_8003C3A4
lbl_8003C384:
/* 8003C384 00037FE4  7C A3 2B 78 */	mr r3, r5
/* 8003C388 00037FE8  48 1B 9E 85 */	bl func_801F620C
/* 8003C38C 00037FEC  A0 1E 05 0C */	lhz r0, 0x50c(r30)
/* 8003C390 00037FF0  28 00 00 02 */	cmplwi r0, 2
/* 8003C394 00037FF4  40 82 00 10 */	bne lbl_8003C3A4
/* 8003C398 00037FF8  7F E4 FB 78 */	mr r4, r31
/* 8003C39C 00037FFC  38 7E 05 24 */	addi r3, r30, 0x524
/* 8003C3A0 00038000  48 00 3B BD */	bl func_8003FF5C
lbl_8003C3A4:
/* 8003C3A4 00038004  38 7E 04 94 */	addi r3, r30, 0x494
/* 8003C3A8 00038008  48 01 48 39 */	bl func_80050BE0
/* 8003C3AC 0003800C  88 1F 00 00 */	lbz r0, 0(r31)
/* 8003C3B0 00038010  C8 22 82 50 */	lfd f1, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C3B4 00038014  90 01 00 0C */	stw r0, 0xc(r1)
/* 8003C3B8 00038018  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003C3BC 0003801C  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C3C0 00038020  D0 1E 0C 28 */	stfs f0, 0xc28(r30)
/* 8003C3C4 00038024  88 1F 00 01 */	lbz r0, 1(r31)
/* 8003C3C8 00038028  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003C3CC 0003802C  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003C3D0 00038030  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C3D4 00038034  D0 1E 0C 2C */	stfs f0, 0xc2c(r30)
/* 8003C3D8 00038038  88 1F 00 02 */	lbz r0, 2(r31)
/* 8003C3DC 0003803C  90 01 00 0C */	stw r0, 0xc(r1)
/* 8003C3E0 00038040  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003C3E4 00038044  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C3E8 00038048  D0 1E 0C 30 */	stfs f0, 0xc30(r30)
/* 8003C3EC 0003804C  88 1F 00 03 */	lbz r0, 3(r31)
/* 8003C3F0 00038050  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003C3F4 00038054  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003C3F8 00038058  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C3FC 0003805C  D0 1E 0C 34 */	stfs f0, 0xc34(r30)
lbl_8003C400:
/* 8003C400 00038060  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003C404 00038064  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8003C408 00038068  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8003C40C 0003806C  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8003C410 00038070  7C 08 03 A6 */	mtlr r0
/* 8003C414 00038074  38 21 00 30 */	addi r1, r1, 0x30
/* 8003C418 00038078  4E 80 00 20 */	blr

.global func_8003C41C
func_8003C41C:
/* 8003C41C 0003807C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003C420 00038080  7C 08 02 A6 */	mflr r0
/* 8003C424 00038084  3C C0 43 30 */	lis r6, 0x4330
/* 8003C428 00038088  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003C42C 0003808C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003C430 00038090  90 C1 00 18 */	stw r6, 0x18(r1)
/* 8003C434 00038094  2C 00 00 00 */	cmpwi r0, 0
/* 8003C438 00038098  90 C1 00 20 */	stw r6, 0x20(r1)
/* 8003C43C 0003809C  41 82 00 70 */	beq lbl_8003C4AC
/* 8003C440 000380A0  88 04 00 00 */	lbz r0, 0(r4)
/* 8003C444 000380A4  7C A7 2B 78 */	mr r7, r5
/* 8003C448 000380A8  C8 42 82 50 */	lfd f2, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C44C 000380AC  38 A1 00 08 */	addi r5, r1, 8
/* 8003C450 000380B0  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8003C454 000380B4  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8003C458 000380B8  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C45C 000380BC  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003C460 000380C0  88 04 00 01 */	lbz r0, 1(r4)
/* 8003C464 000380C4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C468 000380C8  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 8003C46C 000380CC  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C470 000380D0  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8003C474 000380D4  88 04 00 02 */	lbz r0, 2(r4)
/* 8003C478 000380D8  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8003C47C 000380DC  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8003C480 000380E0  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C484 000380E4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003C488 000380E8  88 04 00 03 */	lbz r0, 3(r4)
/* 8003C48C 000380EC  38 83 0C 28 */	addi r4, r3, 0xc28
/* 8003C490 000380F0  7C 86 23 78 */	mr r6, r4
/* 8003C494 000380F4  38 63 04 94 */	addi r3, r3, 0x494
/* 8003C498 000380F8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C49C 000380FC  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 8003C4A0 00038100  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C4A4 00038104  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003C4A8 00038108  48 01 46 A5 */	bl func_80050B4C
lbl_8003C4AC:
/* 8003C4AC 0003810C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003C4B0 00038110  7C 08 03 A6 */	mtlr r0
/* 8003C4B4 00038114  38 21 00 30 */	addi r1, r1, 0x30
/* 8003C4B8 00038118  4E 80 00 20 */	blr

.global func_8003C4BC
func_8003C4BC:
/* 8003C4BC 0003811C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003C4C0 00038120  7C 08 02 A6 */	mflr r0
/* 8003C4C4 00038124  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003C4C8 00038128  3C 00 43 30 */	lis r0, 0x4330
/* 8003C4CC 0003812C  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8003C4D0 00038130  7C 9F 23 78 */	mr r31, r4
/* 8003C4D4 00038134  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8003C4D8 00038138  7C 7E 1B 78 */	mr r30, r3
/* 8003C4DC 0003813C  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8003C4E0 00038140  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 8003C4E4 00038144  90 01 00 08 */	stw r0, 8(r1)
/* 8003C4E8 00038148  2C 05 00 00 */	cmpwi r5, 0
/* 8003C4EC 0003814C  90 01 00 10 */	stw r0, 0x10(r1)
/* 8003C4F0 00038150  41 82 01 08 */	beq lbl_8003C5F8
/* 8003C4F4 00038154  A0 03 0C 68 */	lhz r0, 0xc68(r3)
/* 8003C4F8 00038158  28 00 01 00 */	cmplwi r0, 0x100
/* 8003C4FC 0003815C  40 82 00 80 */	bne lbl_8003C57C
/* 8003C500 00038160  80 03 0C 00 */	lwz r0, 0xc00(r3)
/* 8003C504 00038164  2C 00 00 00 */	cmpwi r0, 0
/* 8003C508 00038168  41 82 00 F0 */	beq lbl_8003C5F8
/* 8003C50C 0003816C  3B A0 00 00 */	li r29, 0
/* 8003C510 00038170  48 00 00 50 */	b lbl_8003C560
lbl_8003C514:
/* 8003C514 00038174  80 C5 00 04 */	lwz r6, 4(r5)
/* 8003C518 00038178  2C 06 00 00 */	cmpwi r6, 0
/* 8003C51C 0003817C  40 82 00 0C */	bne lbl_8003C528
/* 8003C520 00038180  38 60 00 00 */	li r3, 0
/* 8003C524 00038184  48 00 00 28 */	b lbl_8003C54C
lbl_8003C528:
/* 8003C528 00038188  80 65 00 00 */	lwz r3, 0(r5)
/* 8003C52C 0003818C  57 A4 06 3E */	clrlwi r4, r29, 0x18
/* 8003C530 00038190  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003C534 00038194  7C 04 00 40 */	cmplw r4, r0
/* 8003C538 00038198  41 80 00 0C */	blt lbl_8003C544
/* 8003C53C 0003819C  38 60 00 00 */	li r3, 0
/* 8003C540 000381A0  48 00 00 0C */	b lbl_8003C54C
lbl_8003C544:
/* 8003C544 000381A4  57 A0 15 BA */	rlwinm r0, r29, 2, 0x16, 0x1d
/* 8003C548 000381A8  7C 66 00 2E */	lwzx r3, r6, r0
lbl_8003C54C:
/* 8003C54C 000381AC  2C 03 00 00 */	cmpwi r3, 0
/* 8003C550 000381B0  41 82 00 0C */	beq lbl_8003C55C
/* 8003C554 000381B4  7F E4 FB 78 */	mr r4, r31
/* 8003C558 000381B8  48 1B 9C 3D */	bl func_801F6194
lbl_8003C55C:
/* 8003C55C 000381BC  3B BD 00 01 */	addi r29, r29, 1
lbl_8003C560:
/* 8003C560 000381C0  80 BE 0C 00 */	lwz r5, 0xc00(r30)
/* 8003C564 000381C4  57 A4 06 3E */	clrlwi r4, r29, 0x18
/* 8003C568 000381C8  80 65 00 00 */	lwz r3, 0(r5)
/* 8003C56C 000381CC  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003C570 000381D0  7C 04 00 00 */	cmpw r4, r0
/* 8003C574 000381D4  41 80 FF A0 */	blt lbl_8003C514
/* 8003C578 000381D8  48 00 00 24 */	b lbl_8003C59C
lbl_8003C57C:
/* 8003C57C 000381DC  7C A3 2B 78 */	mr r3, r5
/* 8003C580 000381E0  48 1B 9C 15 */	bl func_801F6194
/* 8003C584 000381E4  A0 1E 05 0C */	lhz r0, 0x50c(r30)
/* 8003C588 000381E8  28 00 00 02 */	cmplwi r0, 2
/* 8003C58C 000381EC  40 82 00 10 */	bne lbl_8003C59C
/* 8003C590 000381F0  7F E4 FB 78 */	mr r4, r31
/* 8003C594 000381F4  38 7E 05 24 */	addi r3, r30, 0x524
/* 8003C598 000381F8  48 00 3A 41 */	bl func_8003FFD8
lbl_8003C59C:
/* 8003C59C 000381FC  38 7E 04 D0 */	addi r3, r30, 0x4d0
/* 8003C5A0 00038200  48 01 46 41 */	bl func_80050BE0
/* 8003C5A4 00038204  88 1F 00 00 */	lbz r0, 0(r31)
/* 8003C5A8 00038208  C8 22 82 50 */	lfd f1, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C5AC 0003820C  90 01 00 0C */	stw r0, 0xc(r1)
/* 8003C5B0 00038210  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003C5B4 00038214  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C5B8 00038218  D0 1E 0C 38 */	stfs f0, 0xc38(r30)
/* 8003C5BC 0003821C  88 1F 00 01 */	lbz r0, 1(r31)
/* 8003C5C0 00038220  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003C5C4 00038224  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003C5C8 00038228  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C5CC 0003822C  D0 1E 0C 3C */	stfs f0, 0xc3c(r30)
/* 8003C5D0 00038230  88 1F 00 02 */	lbz r0, 2(r31)
/* 8003C5D4 00038234  90 01 00 0C */	stw r0, 0xc(r1)
/* 8003C5D8 00038238  C8 01 00 08 */	lfd f0, 8(r1)
/* 8003C5DC 0003823C  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C5E0 00038240  D0 1E 0C 40 */	stfs f0, 0xc40(r30)
/* 8003C5E4 00038244  88 1F 00 03 */	lbz r0, 3(r31)
/* 8003C5E8 00038248  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003C5EC 0003824C  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8003C5F0 00038250  EC 00 08 28 */	fsubs f0, f0, f1
/* 8003C5F4 00038254  D0 1E 0C 44 */	stfs f0, 0xc44(r30)
lbl_8003C5F8:
/* 8003C5F8 00038258  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003C5FC 0003825C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8003C600 00038260  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8003C604 00038264  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8003C608 00038268  7C 08 03 A6 */	mtlr r0
/* 8003C60C 0003826C  38 21 00 30 */	addi r1, r1, 0x30
/* 8003C610 00038270  4E 80 00 20 */	blr

.global func_8003C614
func_8003C614:
/* 8003C614 00038274  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003C618 00038278  7C 08 02 A6 */	mflr r0
/* 8003C61C 0003827C  3C C0 43 30 */	lis r6, 0x4330
/* 8003C620 00038280  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003C624 00038284  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003C628 00038288  90 C1 00 18 */	stw r6, 0x18(r1)
/* 8003C62C 0003828C  2C 00 00 00 */	cmpwi r0, 0
/* 8003C630 00038290  90 C1 00 20 */	stw r6, 0x20(r1)
/* 8003C634 00038294  41 82 00 70 */	beq lbl_8003C6A4
/* 8003C638 00038298  88 04 00 00 */	lbz r0, 0(r4)
/* 8003C63C 0003829C  7C A7 2B 78 */	mr r7, r5
/* 8003C640 000382A0  C8 42 82 50 */	lfd f2, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C644 000382A4  38 A1 00 08 */	addi r5, r1, 8
/* 8003C648 000382A8  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8003C64C 000382AC  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8003C650 000382B0  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C654 000382B4  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003C658 000382B8  88 04 00 01 */	lbz r0, 1(r4)
/* 8003C65C 000382BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C660 000382C0  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 8003C664 000382C4  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C668 000382C8  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8003C66C 000382CC  88 04 00 02 */	lbz r0, 2(r4)
/* 8003C670 000382D0  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8003C674 000382D4  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8003C678 000382D8  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C67C 000382DC  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003C680 000382E0  88 04 00 03 */	lbz r0, 3(r4)
/* 8003C684 000382E4  38 83 0C 38 */	addi r4, r3, 0xc38
/* 8003C688 000382E8  7C 86 23 78 */	mr r6, r4
/* 8003C68C 000382EC  38 63 04 D0 */	addi r3, r3, 0x4d0
/* 8003C690 000382F0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C694 000382F4  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 8003C698 000382F8  EC 00 10 28 */	fsubs f0, f0, f2
/* 8003C69C 000382FC  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003C6A0 00038300  48 01 44 AD */	bl func_80050B4C
lbl_8003C6A4:
/* 8003C6A4 00038304  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003C6A8 00038308  7C 08 03 A6 */	mtlr r0
/* 8003C6AC 0003830C  38 21 00 30 */	addi r1, r1, 0x30
/* 8003C6B0 00038310  4E 80 00 20 */	blr

.global func_8003C6B4
func_8003C6B4:
/* 8003C6B4 00038314  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003C6B8 00038318  7C 08 02 A6 */	mflr r0
/* 8003C6BC 0003831C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C6C0 00038320  DB E1 00 10 */	stfd f31, 0x10(r1)
/* 8003C6C4 00038324  F3 E1 00 18 */	psq_st f31, 24(r1), 0, qr0
/* 8003C6C8 00038328  FF E0 08 90 */	fmr f31, f1
/* 8003C6CC 0003832C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003C6D0 00038330  93 C1 00 08 */	stw r30, 8(r1)
/* 8003C6D4 00038334  7C 7E 1B 78 */	mr r30, r3
/* 8003C6D8 00038338  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003C6DC 0003833C  2C 00 00 00 */	cmpwi r0, 0
/* 8003C6E0 00038340  41 82 01 3C */	beq lbl_8003C81C
/* 8003C6E4 00038344  48 00 06 69 */	bl func_8003CD4C
/* 8003C6E8 00038348  48 19 E4 41 */	bl func_801DAB28
/* 8003C6EC 0003834C  2C 03 00 00 */	cmpwi r3, 0
/* 8003C6F0 00038350  41 82 00 14 */	beq lbl_8003C704
/* 8003C6F4 00038354  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8003C6F8 00038358  38 80 00 70 */	li r4, 0x70
/* 8003C6FC 0003835C  48 19 E5 99 */	bl func_801DAC94
/* 8003C700 00038360  48 00 00 08 */	b lbl_8003C708
lbl_8003C704:
/* 8003C704 00038364  38 60 00 00 */	li r3, 0
lbl_8003C708:
/* 8003C708 00038368  2C 03 00 00 */	cmpwi r3, 0
/* 8003C70C 0003836C  7C 7F 1B 78 */	mr r31, r3
/* 8003C710 00038370  41 82 00 10 */	beq lbl_8003C720
/* 8003C714 00038374  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 8003C718 00038378  48 1E 0D 0D */	bl func_8021D424
/* 8003C71C 0003837C  7C 7F 1B 78 */	mr r31, r3
lbl_8003C720:
/* 8003C720 00038380  2C 1F 00 00 */	cmpwi r31, 0
/* 8003C724 00038384  41 82 00 F8 */	beq lbl_8003C81C
/* 8003C728 00038388  93 FE 0C 08 */	stw r31, 0xc08(r30)
/* 8003C72C 0003838C  7F E3 FB 78 */	mr r3, r31
/* 8003C730 00038390  88 1E 0D B4 */	lbz r0, 0xdb4(r30)
/* 8003C734 00038394  98 1F 00 1E */	stb r0, 0x1e(r31)
/* 8003C738 00038398  88 1E 0D B5 */	lbz r0, 0xdb5(r30)
/* 8003C73C 0003839C  98 1F 00 20 */	stb r0, 0x20(r31)
/* 8003C740 000383A0  88 1E 0D C0 */	lbz r0, 0xdc0(r30)
/* 8003C744 000383A4  98 1F 00 28 */	stb r0, 0x28(r31)
/* 8003C748 000383A8  88 1E 0D C1 */	lbz r0, 0xdc1(r30)
/* 8003C74C 000383AC  98 1F 00 29 */	stb r0, 0x29(r31)
/* 8003C750 000383B0  88 1E 0D C2 */	lbz r0, 0xdc2(r30)
/* 8003C754 000383B4  98 1F 00 2A */	stb r0, 0x2a(r31)
/* 8003C758 000383B8  88 1E 0D C3 */	lbz r0, 0xdc3(r30)
/* 8003C75C 000383BC  98 1F 00 2B */	stb r0, 0x2b(r31)
/* 8003C760 000383C0  D3 FF 00 6C */	stfs f31, 0x6c(r31)
/* 8003C764 000383C4  C0 1E 0D B8 */	lfs f0, 0xdb8(r30)
/* 8003C768 000383C8  D0 1F 00 48 */	stfs f0, 0x48(r31)
/* 8003C76C 000383CC  88 1E 0D B6 */	lbz r0, 0xdb6(r30)
/* 8003C770 000383D0  98 1F 00 1F */	stb r0, 0x1f(r31)
/* 8003C774 000383D4  C0 1E 0D C4 */	lfs f0, 0xdc4(r30)
/* 8003C778 000383D8  D0 1F 00 5C */	stfs f0, 0x5c(r31)
/* 8003C77C 000383DC  C0 1E 0D C8 */	lfs f0, 0xdc8(r30)
/* 8003C780 000383E0  D0 1F 00 60 */	stfs f0, 0x60(r31)
/* 8003C784 000383E4  C0 1E 0D CC */	lfs f0, 0xdcc(r30)
/* 8003C788 000383E8  D0 1F 00 64 */	stfs f0, 0x64(r31)
/* 8003C78C 000383EC  C0 1E 0D BC */	lfs f0, 0xdbc(r30)
/* 8003C790 000383F0  D0 1F 00 44 */	stfs f0, 0x44(r31)
/* 8003C794 000383F4  C0 1E 0D D0 */	lfs f0, 0xdd0(r30)
/* 8003C798 000383F8  D0 1F 00 38 */	stfs f0, 0x38(r31)
/* 8003C79C 000383FC  C0 1E 0D D4 */	lfs f0, 0xdd4(r30)
/* 8003C7A0 00038400  D0 1F 00 3C */	stfs f0, 0x3c(r31)
/* 8003C7A4 00038404  C0 1E 0D D8 */	lfs f0, 0xdd8(r30)
/* 8003C7A8 00038408  D0 1F 00 40 */	stfs f0, 0x40(r31)
/* 8003C7AC 0003840C  C0 1E 0D DC */	lfs f0, 0xddc(r30)
/* 8003C7B0 00038410  D0 1F 00 2C */	stfs f0, 0x2c(r31)
/* 8003C7B4 00038414  C0 1E 0D E0 */	lfs f0, 0xde0(r30)
/* 8003C7B8 00038418  D0 1F 00 30 */	stfs f0, 0x30(r31)
/* 8003C7BC 0003841C  C0 1E 0D E4 */	lfs f0, 0xde4(r30)
/* 8003C7C0 00038420  D0 1F 00 34 */	stfs f0, 0x34(r31)
/* 8003C7C4 00038424  C0 1E 0D E8 */	lfs f0, 0xde8(r30)
/* 8003C7C8 00038428  D0 1F 00 58 */	stfs f0, 0x58(r31)
/* 8003C7CC 0003842C  C0 1E 0D EC */	lfs f0, 0xdec(r30)
/* 8003C7D0 00038430  D0 1F 00 4C */	stfs f0, 0x4c(r31)
/* 8003C7D4 00038434  C0 1E 0D F0 */	lfs f0, 0xdf0(r30)
/* 8003C7D8 00038438  D0 1F 00 50 */	stfs f0, 0x50(r31)
/* 8003C7DC 0003843C  C0 1E 0D F4 */	lfs f0, 0xdf4(r30)
/* 8003C7E0 00038440  D0 1F 00 54 */	stfs f0, 0x54(r31)
/* 8003C7E4 00038444  81 9F 00 0C */	lwz r12, 0xc(r31)
/* 8003C7E8 00038448  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003C7EC 0003844C  7D 89 03 A6 */	mtctr r12
/* 8003C7F0 00038450  4E 80 04 21 */	bctrl
/* 8003C7F4 00038454  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 8003C7F8 00038458  98 7F 00 08 */	stb r3, 8(r31)
/* 8003C7FC 0003845C  41 82 00 20 */	beq lbl_8003C81C
/* 8003C800 00038460  83 FF 00 04 */	lwz r31, 4(r31)
/* 8003C804 00038464  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8003C808 00038468  48 1F E8 51 */	bl func_8023B058
/* 8003C80C 0003846C  2C 03 00 00 */	cmpwi r3, 0
/* 8003C810 00038470  41 82 00 0C */	beq lbl_8003C81C
/* 8003C814 00038474  7F E4 FB 78 */	mr r4, r31
/* 8003C818 00038478  48 1F EB A1 */	bl func_8023B3B8
lbl_8003C81C:
/* 8003C81C 0003847C  E3 E1 00 18 */	psq_l f31, 24(r1), 0, qr0
/* 8003C820 00038480  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003C824 00038484  CB E1 00 10 */	lfd f31, 0x10(r1)
/* 8003C828 00038488  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003C82C 0003848C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003C830 00038490  7C 08 03 A6 */	mtlr r0
/* 8003C834 00038494  38 21 00 20 */	addi r1, r1, 0x20
/* 8003C838 00038498  4E 80 00 20 */	blr

.global func_8003C83C
func_8003C83C:
/* 8003C83C 0003849C  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8003C840 000384A0  2C 03 00 00 */	cmpwi r3, 0
/* 8003C844 000384A4  4D 82 00 20 */	beqlr
/* 8003C848 000384A8  7C 80 00 34 */	cntlzw r0, r4
/* 8003C84C 000384AC  54 04 D9 7E */	srwi r4, r0, 5
/* 8003C850 000384B0  48 1B 99 08 */	b func_801F6158
/* 8003C854 000384B4  4E 80 00 20 */	blr

.global func_8003C858
func_8003C858:
/* 8003C858 000384B8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003C85C 000384BC  7C 08 02 A6 */	mflr r0
/* 8003C860 000384C0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C864 000384C4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003C868 000384C8  7C 9F 23 78 */	mr r31, r4
/* 8003C86C 000384CC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003C870 000384D0  7C 7E 1B 78 */	mr r30, r3
/* 8003C874 000384D4  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003C878 000384D8  2C 00 00 00 */	cmpwi r0, 0
/* 8003C87C 000384DC  41 82 00 0C */	beq lbl_8003C888
/* 8003C880 000384E0  7C 03 03 78 */	mr r3, r0
/* 8003C884 000384E4  48 1B 98 99 */	bl func_801F611C
lbl_8003C888:
/* 8003C888 000384E8  3C 00 43 30 */	lis r0, 0x4330
/* 8003C88C 000384EC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003C890 000384F0  C8 42 82 50 */	lfd f2, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C894 000384F4  90 01 00 08 */	stw r0, 8(r1)
/* 8003C898 000384F8  C0 02 82 38 */	lfs f0, lbl_80640838-_SDA2_BASE_(r2)
/* 8003C89C 000384FC  C8 21 00 08 */	lfd f1, 8(r1)
/* 8003C8A0 00038500  EC 21 10 28 */	fsubs f1, f1, f2
/* 8003C8A4 00038504  EC 01 00 24 */	fdivs f0, f1, f0
/* 8003C8A8 00038508  D0 1E 0C 70 */	stfs f0, 0xc70(r30)
/* 8003C8AC 0003850C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003C8B0 00038510  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003C8B4 00038514  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003C8B8 00038518  7C 08 03 A6 */	mtlr r0
/* 8003C8BC 0003851C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003C8C0 00038520  4E 80 00 20 */	blr

.global func_8003C8C4
func_8003C8C4:
/* 8003C8C4 00038524  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003C8C8 00038528  7C 08 02 A6 */	mflr r0
/* 8003C8CC 0003852C  7C A7 2B 78 */	mr r7, r5
/* 8003C8D0 00038530  C8 62 82 50 */	lfd f3, lbl_80640850-_SDA2_BASE_(r2)
/* 8003C8D4 00038534  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003C8D8 00038538  3C 00 43 30 */	lis r0, 0x4330
/* 8003C8DC 0003853C  C0 02 82 38 */	lfs f0, lbl_80640838-_SDA2_BASE_(r2)
/* 8003C8E0 00038540  38 A1 00 08 */	addi r5, r1, 8
/* 8003C8E4 00038544  90 81 00 14 */	stw r4, 0x14(r1)
/* 8003C8E8 00038548  38 83 0C 70 */	addi r4, r3, 0xc70
/* 8003C8EC 0003854C  7C 86 23 78 */	mr r6, r4
/* 8003C8F0 00038550  38 63 01 90 */	addi r3, r3, 0x190
/* 8003C8F4 00038554  90 01 00 10 */	stw r0, 0x10(r1)
/* 8003C8F8 00038558  C8 41 00 10 */	lfd f2, 0x10(r1)
/* 8003C8FC 0003855C  EC 42 18 28 */	fsubs f2, f2, f3
/* 8003C900 00038560  EC 02 00 24 */	fdivs f0, f2, f0
/* 8003C904 00038564  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003C908 00038568  48 01 3A 35 */	bl func_8005033C
/* 8003C90C 0003856C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003C910 00038570  7C 08 03 A6 */	mtlr r0
/* 8003C914 00038574  38 21 00 20 */	addi r1, r1, 0x20
/* 8003C918 00038578  4E 80 00 20 */	blr

.global func_8003C91C
func_8003C91C:
/* 8003C91C 0003857C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003C920 00038580  38 00 00 00 */	li r0, 0
/* 8003C924 00038584  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003C928 00038588  C0 02 82 AC */	lfs f0, lbl_806408AC-_SDA2_BASE_(r2)
/* 8003C92C 0003858C  98 03 00 00 */	stb r0, 0(r3)
/* 8003C930 00038590  D0 23 00 10 */	stfs f1, 0x10(r3)
/* 8003C934 00038594  D0 23 00 0C */	stfs f1, 0xc(r3)
/* 8003C938 00038598  D0 23 00 08 */	stfs f1, 8(r3)
/* 8003C93C 0003859C  D0 23 00 04 */	stfs f1, 4(r3)
/* 8003C940 000385A0  98 03 00 14 */	stb r0, 0x14(r3)
/* 8003C944 000385A4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003C948 000385A8  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003C94C 000385AC  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 8003C950 000385B0  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 8003C954 000385B4  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003C958 000385B8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8003C95C 000385BC  D0 23 00 28 */	stfs f1, 0x28(r3)
/* 8003C960 000385C0  D0 23 00 2C */	stfs f1, 0x2c(r3)
/* 8003C964 000385C4  D0 23 00 20 */	stfs f1, 0x20(r3)
/* 8003C968 000385C8  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 8003C96C 000385CC  38 21 00 20 */	addi r1, r1, 0x20
/* 8003C970 000385D0  4E 80 00 20 */	blr

.global func_8003C974
func_8003C974:
/* 8003C974 000385D4  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 8003C978 000385D8  7C 08 02 A6 */	mflr r0
/* 8003C97C 000385DC  90 01 00 64 */	stw r0, 0x64(r1)
/* 8003C980 000385E0  39 61 00 60 */	addi r11, r1, 0x60
/* 8003C984 000385E4  48 18 A7 A5 */	bl _savegpr_27
/* 8003C988 000385E8  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003C98C 000385EC  38 E0 00 01 */	li r7, 1
/* 8003C990 000385F0  98 E3 0D 44 */	stb r7, 0xd44(r3)
/* 8003C994 000385F4  7C 7B 1B 78 */	mr r27, r3
/* 8003C998 000385F8  2C 00 00 00 */	cmpwi r0, 0
/* 8003C99C 000385FC  7C 9C 23 78 */	mr r28, r4
/* 8003C9A0 00038600  7C BF 2B 78 */	mr r31, r5
/* 8003C9A4 00038604  7C DD 33 78 */	mr r29, r6
/* 8003C9A8 00038608  3B C0 00 00 */	li r30, 0
/* 8003C9AC 0003860C  41 82 01 40 */	beq lbl_8003CAEC
/* 8003C9B0 00038610  48 00 38 45 */	bl func_800401F4
/* 8003C9B4 00038614  2C 03 00 00 */	cmpwi r3, 0
/* 8003C9B8 00038618  41 82 00 10 */	beq lbl_8003C9C8
/* 8003C9BC 0003861C  38 9D 00 01 */	addi r4, r29, 1
/* 8003C9C0 00038620  48 00 39 C5 */	bl func_80040384
/* 8003C9C4 00038624  7C 7E 1B 78 */	mr r30, r3
lbl_8003C9C8:
/* 8003C9C8 00038628  2C 1E 00 00 */	cmpwi r30, 0
/* 8003C9CC 0003862C  41 82 01 20 */	beq lbl_8003CAEC
/* 8003C9D0 00038630  7F 83 E3 78 */	mr r3, r28
/* 8003C9D4 00038634  7F E4 FB 78 */	mr r4, r31
/* 8003C9D8 00038638  48 19 EA E5 */	bl func_801DB4BC
/* 8003C9DC 0003863C  7C 7D 1B 78 */	mr r29, r3
/* 8003C9E0 00038640  7F C3 F3 78 */	mr r3, r30
/* 8003C9E4 00038644  48 00 5B AD */	bl func_80042590
/* 8003C9E8 00038648  7C 7F 1B 78 */	mr r31, r3
/* 8003C9EC 0003864C  7F C3 F3 78 */	mr r3, r30
/* 8003C9F0 00038650  48 00 48 15 */	bl func_80041204
/* 8003C9F4 00038654  7C 64 1B 78 */	mr r4, r3
/* 8003C9F8 00038658  7F E3 FB 78 */	mr r3, r31
/* 8003C9FC 0003865C  38 A1 00 28 */	addi r5, r1, 0x28
/* 8003CA00 00038660  48 24 02 E9 */	bl func_8027CCE8
/* 8003CA04 00038664  C0 41 00 28 */	lfs f2, 0x28(r1)
/* 8003CA08 00038668  38 61 00 34 */	addi r3, r1, 0x34
/* 8003CA0C 0003866C  C0 21 00 2C */	lfs f1, 0x2c(r1)
/* 8003CA10 00038670  7C 64 1B 78 */	mr r4, r3
/* 8003CA14 00038674  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 8003CA18 00038678  D0 41 00 34 */	stfs f2, 0x34(r1)
/* 8003CA1C 0003867C  D0 21 00 38 */	stfs f1, 0x38(r1)
/* 8003CA20 00038680  D0 01 00 3C */	stfs f0, 0x3c(r1)
/* 8003CA24 00038684  48 24 03 05 */	bl func_8027CD28
/* 8003CA28 00038688  80 7B 0C 04 */	lwz r3, 0xc04(r27)
/* 8003CA2C 0003868C  7F A4 EB 78 */	mr r4, r29
/* 8003CA30 00038690  7F E5 FB 78 */	mr r5, r31
/* 8003CA34 00038694  38 C1 00 34 */	addi r6, r1, 0x34
/* 8003CA38 00038698  38 E0 00 00 */	li r7, 0
/* 8003CA3C 0003869C  48 1B BE B1 */	bl func_801F88EC
/* 8003CA40 000386A0  98 7B 0D 30 */	stb r3, 0xd30(r27)
/* 8003CA44 000386A4  7F 63 DB 78 */	mr r3, r27
/* 8003CA48 000386A8  4B FF CC 8D */	bl func_800396D4
/* 8003CA4C 000386AC  C0 22 82 30 */	lfs f1, lbl_80640830-_SDA2_BASE_(r2)
/* 8003CA50 000386B0  48 01 1A 4D */	bl func_8004E49C
/* 8003CA54 000386B4  D0 3B 0D 60 */	stfs f1, 0xd60(r27)
/* 8003CA58 000386B8  38 A1 00 20 */	addi r5, r1, 0x20
/* 8003CA5C 000386BC  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003CA60 000386C0  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 8003CA64 000386C4  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8003CA68 000386C8  80 7B 0C 04 */	lwz r3, 0xc04(r27)
/* 8003CA6C 000386CC  88 9B 0D 30 */	lbz r4, 0xd30(r27)
/* 8003CA70 000386D0  48 1B C0 D1 */	bl func_801F8B40
/* 8003CA74 000386D4  C0 5B 0D 60 */	lfs f2, 0xd60(r27)
/* 8003CA78 000386D8  38 A1 00 18 */	addi r5, r1, 0x18
/* 8003CA7C 000386DC  C0 3B 0D 4C */	lfs f1, 0xd4c(r27)
/* 8003CA80 000386E0  C0 1B 0D 48 */	lfs f0, 0xd48(r27)
/* 8003CA84 000386E4  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8003CA88 000386E8  EC 00 00 B2 */	fmuls f0, f0, f2
/* 8003CA8C 000386EC  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8003CA90 000386F0  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003CA94 000386F4  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8003CA98 000386F8  80 61 00 08 */	lwz r3, 8(r1)
/* 8003CA9C 000386FC  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8003CAA0 00038700  90 61 00 18 */	stw r3, 0x18(r1)
/* 8003CAA4 00038704  80 7B 0C 04 */	lwz r3, 0xc04(r27)
/* 8003CAA8 00038708  88 9B 0D 30 */	lbz r4, 0xd30(r27)
/* 8003CAAC 0003870C  48 1B C0 C5 */	bl func_801F8B70
/* 8003CAB0 00038710  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003CAB4 00038714  7F A3 EB 78 */	mr r3, r29
/* 8003CAB8 00038718  38 80 00 02 */	li r4, 2
/* 8003CABC 0003871C  38 A0 00 02 */	li r5, 2
/* 8003CAC0 00038720  D0 1B 0D 40 */	stfs f0, 0xd40(r27)
/* 8003CAC4 00038724  38 C0 00 02 */	li r6, 2
/* 8003CAC8 00038728  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8003CACC 0003872C  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8003CAD0 00038730  D0 1B 0D 58 */	stfs f0, 0xd58(r27)
/* 8003CAD4 00038734  D0 1B 0D 5C */	stfs f0, 0xd5c(r27)
/* 8003CAD8 00038738  48 20 18 F1 */	bl func_8023E3C8
/* 8003CADC 0003873C  7F A3 EB 78 */	mr r3, r29
/* 8003CAE0 00038740  38 80 00 01 */	li r4, 1
/* 8003CAE4 00038744  38 A0 00 01 */	li r5, 1
/* 8003CAE8 00038748  48 20 18 85 */	bl func_8023E36C
lbl_8003CAEC:
/* 8003CAEC 0003874C  39 61 00 60 */	addi r11, r1, 0x60
/* 8003CAF0 00038750  48 18 A6 85 */	bl _restgpr_27
/* 8003CAF4 00038754  80 01 00 64 */	lwz r0, 0x64(r1)
/* 8003CAF8 00038758  7C 08 03 A6 */	mtlr r0
/* 8003CAFC 0003875C  38 21 00 60 */	addi r1, r1, 0x60
/* 8003CB00 00038760  4E 80 00 20 */	blr

.global func_8003CB04
func_8003CB04:
/* 8003CB04 00038764  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003CB08 00038768  7C 08 02 A6 */	mflr r0
/* 8003CB0C 0003876C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003CB10 00038770  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003CB14 00038774  7C 7F 1B 78 */	mr r31, r3
/* 8003CB18 00038778  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003CB1C 0003877C  2C 00 00 00 */	cmpwi r0, 0
/* 8003CB20 00038780  41 82 00 10 */	beq lbl_8003CB30
/* 8003CB24 00038784  88 9F 0D 30 */	lbz r4, 0xd30(r31)
/* 8003CB28 00038788  7C 03 03 78 */	mr r3, r0
/* 8003CB2C 0003878C  48 1B C0 99 */	bl func_801F8BC4
lbl_8003CB30:
/* 8003CB30 00038790  38 00 00 00 */	li r0, 0
/* 8003CB34 00038794  98 1F 0D 44 */	stb r0, 0xd44(r31)
/* 8003CB38 00038798  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003CB3C 0003879C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003CB40 000387A0  7C 08 03 A6 */	mtlr r0
/* 8003CB44 000387A4  38 21 00 10 */	addi r1, r1, 0x10
/* 8003CB48 000387A8  4E 80 00 20 */	blr

.global func_8003CB4C
func_8003CB4C:
/* 8003CB4C 000387AC  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003CB50 000387B0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003CB54 000387B4  4C 40 13 82 */	cror 2, 0, 2
/* 8003CB58 000387B8  40 82 00 10 */	bne lbl_8003CB68
/* 8003CB5C 000387BC  38 00 00 00 */	li r0, 0
/* 8003CB60 000387C0  98 03 0D 44 */	stb r0, 0xd44(r3)
/* 8003CB64 000387C4  4E 80 00 20 */	blr
lbl_8003CB68:
/* 8003CB68 000387C8  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 8003CB6C 000387CC  D0 23 0D 34 */	stfs f1, 0xd34(r3)
/* 8003CB70 000387D0  40 80 00 08 */	bge lbl_8003CB78
/* 8003CB74 000387D4  FC 40 08 90 */	fmr f2, f1
lbl_8003CB78:
/* 8003CB78 000387D8  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8003CB7C 000387DC  40 80 00 08 */	bge lbl_8003CB84
/* 8003CB80 000387E0  FC 60 08 90 */	fmr f3, f1
lbl_8003CB84:
/* 8003CB84 000387E4  D0 43 0D 3C */	stfs f2, 0xd3c(r3)
/* 8003CB88 000387E8  D0 63 0D 38 */	stfs f3, 0xd38(r3)
/* 8003CB8C 000387EC  4E 80 00 20 */	blr

.global func_8003CB90
func_8003CB90:
/* 8003CB90 000387F0  C0 04 00 00 */	lfs f0, 0(r4)
/* 8003CB94 000387F4  D0 03 0D 50 */	stfs f0, 0xd50(r3)
/* 8003CB98 000387F8  C0 04 00 04 */	lfs f0, 4(r4)
/* 8003CB9C 000387FC  D0 03 0D 54 */	stfs f0, 0xd54(r3)
/* 8003CBA0 00038800  4E 80 00 20 */	blr

.global func_8003CBA4
func_8003CBA4:
/* 8003CBA4 00038804  C0 04 00 00 */	lfs f0, 0(r4)
/* 8003CBA8 00038808  D0 03 0D 48 */	stfs f0, 0xd48(r3)
/* 8003CBAC 0003880C  C0 04 00 04 */	lfs f0, 4(r4)
/* 8003CBB0 00038810  D0 03 0D 4C */	stfs f0, 0xd4c(r3)
/* 8003CBB4 00038814  4E 80 00 20 */	blr

.global func_8003CBB8
func_8003CBB8:
/* 8003CBB8 00038818  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8003CBBC 0003881C  7C 08 02 A6 */	mflr r0
/* 8003CBC0 00038820  90 01 00 44 */	stw r0, 0x44(r1)
/* 8003CBC4 00038824  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8003CBC8 00038828  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8003CBCC 0003882C  FF E0 08 90 */	fmr f31, f1
/* 8003CBD0 00038830  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8003CBD4 00038834  7C 7F 1B 78 */	mr r31, r3
/* 8003CBD8 00038838  88 03 0D 44 */	lbz r0, 0xd44(r3)
/* 8003CBDC 0003883C  2C 00 00 00 */	cmpwi r0, 0
/* 8003CBE0 00038840  41 82 01 50 */	beq lbl_8003CD30
/* 8003CBE4 00038844  C0 23 0D 34 */	lfs f1, 0xd34(r3)
/* 8003CBE8 00038848  C0 03 0D 40 */	lfs f0, 0xd40(r3)
/* 8003CBEC 0003884C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003CBF0 00038850  40 80 00 0C */	bge lbl_8003CBFC
/* 8003CBF4 00038854  4B FF FF 11 */	bl func_8003CB04
/* 8003CBF8 00038858  48 00 01 38 */	b lbl_8003CD30
lbl_8003CBFC:
/* 8003CBFC 0003885C  C0 43 0D 60 */	lfs f2, 0xd60(r3)
/* 8003CC00 00038860  C0 23 0D 54 */	lfs f1, 0xd54(r3)
/* 8003CC04 00038864  C0 03 0D 50 */	lfs f0, 0xd50(r3)
/* 8003CC08 00038868  EC 81 00 B2 */	fmuls f4, f1, f2
/* 8003CC0C 0003886C  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 8003CC10 00038870  EC 00 00 B2 */	fmuls f0, f0, f2
/* 8003CC14 00038874  C0 63 0D 58 */	lfs f3, 0xd58(r3)
/* 8003CC18 00038878  C0 23 0D 5C */	lfs f1, 0xd5c(r3)
/* 8003CC1C 0003887C  2C 05 00 00 */	cmpwi r5, 0
/* 8003CC20 00038880  D0 01 00 08 */	stfs f0, 8(r1)
/* 8003CC24 00038884  D0 81 00 0C */	stfs f4, 0xc(r1)
/* 8003CC28 00038888  80 81 00 08 */	lwz r4, 8(r1)
/* 8003CC2C 0003888C  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8003CC30 00038890  90 81 00 10 */	stw r4, 0x10(r1)
/* 8003CC34 00038894  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003CC38 00038898  C0 41 00 10 */	lfs f2, 0x10(r1)
/* 8003CC3C 0003889C  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 8003CC40 000388A0  EC 43 10 2A */	fadds f2, f3, f2
/* 8003CC44 000388A4  EC 01 00 2A */	fadds f0, f1, f0
/* 8003CC48 000388A8  D0 43 0D 58 */	stfs f2, 0xd58(r3)
/* 8003CC4C 000388AC  D0 03 0D 5C */	stfs f0, 0xd5c(r3)
/* 8003CC50 000388B0  41 82 00 14 */	beq lbl_8003CC64
/* 8003CC54 000388B4  88 9F 0D 30 */	lbz r4, 0xd30(r31)
/* 8003CC58 000388B8  7C A3 2B 78 */	mr r3, r5
/* 8003CC5C 000388BC  38 BF 0D 58 */	addi r5, r31, 0xd58
/* 8003CC60 000388C0  48 1B BE E1 */	bl func_801F8B40
lbl_8003CC64:
/* 8003CC64 000388C4  C0 5F 0D 40 */	lfs f2, 0xd40(r31)
/* 8003CC68 000388C8  C0 3F 0D 3C */	lfs f1, 0xd3c(r31)
/* 8003CC6C 000388CC  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8003CC70 000388D0  40 80 00 44 */	bge lbl_8003CCB4
/* 8003CC74 000388D4  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003CC78 000388D8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003CC7C 000388DC  40 81 00 38 */	ble lbl_8003CCB4
/* 8003CC80 000388E0  EC 22 08 24 */	fdivs f1, f2, f1
/* 8003CC84 000388E4  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003CC88 000388E8  2C 03 00 00 */	cmpwi r3, 0
/* 8003CC8C 000388EC  41 82 00 98 */	beq lbl_8003CD24
/* 8003CC90 000388F0  C0 02 82 38 */	lfs f0, lbl_80640838-_SDA2_BASE_(r2)
/* 8003CC94 000388F4  88 9F 0D 30 */	lbz r4, 0xd30(r31)
/* 8003CC98 000388F8  EC 00 00 72 */	fmuls f0, f0, f1
/* 8003CC9C 000388FC  FC 00 00 1E */	fctiwz f0, f0
/* 8003CCA0 00038900  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003CCA4 00038904  80 A1 00 1C */	lwz r5, 0x1c(r1)
/* 8003CCA8 00038908  54 A5 06 3E */	clrlwi r5, r5, 0x18
/* 8003CCAC 0003890C  48 1B BE F5 */	bl func_801F8BA0
/* 8003CCB0 00038910  48 00 00 74 */	b lbl_8003CD24
lbl_8003CCB4:
/* 8003CCB4 00038914  C0 1F 0D 34 */	lfs f0, 0xd34(r31)
/* 8003CCB8 00038918  C0 5F 0D 38 */	lfs f2, 0xd38(r31)
/* 8003CCBC 0003891C  C0 7F 0D 40 */	lfs f3, 0xd40(r31)
/* 8003CCC0 00038920  EC 20 10 28 */	fsubs f1, f0, f2
/* 8003CCC4 00038924  FC 03 08 40 */	fcmpo cr0, f3, f1
/* 8003CCC8 00038928  40 81 00 4C */	ble lbl_8003CD14
/* 8003CCCC 0003892C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003CCD0 00038930  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003CCD4 00038934  40 81 00 40 */	ble lbl_8003CD14
/* 8003CCD8 00038938  EC 03 08 28 */	fsubs f0, f3, f1
/* 8003CCDC 0003893C  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003CCE0 00038940  2C 03 00 00 */	cmpwi r3, 0
/* 8003CCE4 00038944  EC 00 10 24 */	fdivs f0, f0, f2
/* 8003CCE8 00038948  41 82 00 3C */	beq lbl_8003CD24
/* 8003CCEC 0003894C  C0 22 82 38 */	lfs f1, lbl_80640838-_SDA2_BASE_(r2)
/* 8003CCF0 00038950  88 9F 0D 30 */	lbz r4, 0xd30(r31)
/* 8003CCF4 00038954  EC 01 00 32 */	fmuls f0, f1, f0
/* 8003CCF8 00038958  EC 01 00 28 */	fsubs f0, f1, f0
/* 8003CCFC 0003895C  FC 00 00 1E */	fctiwz f0, f0
/* 8003CD00 00038960  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8003CD04 00038964  80 A1 00 1C */	lwz r5, 0x1c(r1)
/* 8003CD08 00038968  54 A5 06 3E */	clrlwi r5, r5, 0x18
/* 8003CD0C 0003896C  48 1B BE 95 */	bl func_801F8BA0
/* 8003CD10 00038970  48 00 00 14 */	b lbl_8003CD24
lbl_8003CD14:
/* 8003CD14 00038974  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8003CD18 00038978  38 A0 00 FF */	li r5, 0xff
/* 8003CD1C 0003897C  88 9F 0D 30 */	lbz r4, 0xd30(r31)
/* 8003CD20 00038980  48 1B BE 81 */	bl func_801F8BA0
lbl_8003CD24:
/* 8003CD24 00038984  C0 1F 0D 40 */	lfs f0, 0xd40(r31)
/* 8003CD28 00038988  EC 00 F8 2A */	fadds f0, f0, f31
/* 8003CD2C 0003898C  D0 1F 0D 40 */	stfs f0, 0xd40(r31)
lbl_8003CD30:
/* 8003CD30 00038990  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8003CD34 00038994  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8003CD38 00038998  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8003CD3C 0003899C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8003CD40 000389A0  7C 08 03 A6 */	mtlr r0
/* 8003CD44 000389A4  38 21 00 40 */	addi r1, r1, 0x40
/* 8003CD48 000389A8  4E 80 00 20 */	blr

.global func_8003CD4C
func_8003CD4C:
/* 8003CD4C 000389AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003CD50 000389B0  7C 08 02 A6 */	mflr r0
/* 8003CD54 000389B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003CD58 000389B8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003CD5C 000389BC  7C 7F 1B 78 */	mr r31, r3
/* 8003CD60 000389C0  80 03 0C 08 */	lwz r0, 0xc08(r3)
/* 8003CD64 000389C4  2C 00 00 00 */	cmpwi r0, 0
/* 8003CD68 000389C8  41 82 00 28 */	beq lbl_8003CD90
/* 8003CD6C 000389CC  41 82 00 1C */	beq lbl_8003CD88
/* 8003CD70 000389D0  7C 03 03 78 */	mr r3, r0
/* 8003CD74 000389D4  38 80 00 01 */	li r4, 1
/* 8003CD78 000389D8  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8003CD7C 000389DC  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8003CD80 000389E0  7D 89 03 A6 */	mtctr r12
/* 8003CD84 000389E4  4E 80 04 21 */	bctrl
lbl_8003CD88:
/* 8003CD88 000389E8  38 00 00 00 */	li r0, 0
/* 8003CD8C 000389EC  90 1F 0C 08 */	stw r0, 0xc08(r31)
lbl_8003CD90:
/* 8003CD90 000389F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003CD94 000389F4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003CD98 000389F8  7C 08 03 A6 */	mtlr r0
/* 8003CD9C 000389FC  38 21 00 10 */	addi r1, r1, 0x10
/* 8003CDA0 00038A00  4E 80 00 20 */	blr

.global func_8003CDA4
func_8003CDA4:
/* 8003CDA4 00038A04  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003CDA8 00038A08  7C 08 02 A6 */	mflr r0
/* 8003CDAC 00038A0C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003CDB0 00038A10  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003CDB4 00038A14  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003CDB8 00038A18  7C 7E 1B 78 */	mr r30, r3
/* 8003CDBC 00038A1C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003CDC0 00038A20  2C 00 00 00 */	cmpwi r0, 0
/* 8003CDC4 00038A24  41 82 00 AC */	beq lbl_8003CE70
/* 8003CDC8 00038A28  4B FF FF 85 */	bl func_8003CD4C
/* 8003CDCC 00038A2C  48 19 DD 5D */	bl func_801DAB28
/* 8003CDD0 00038A30  2C 03 00 00 */	cmpwi r3, 0
/* 8003CDD4 00038A34  41 82 00 14 */	beq lbl_8003CDE8
/* 8003CDD8 00038A38  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8003CDDC 00038A3C  38 80 00 28 */	li r4, 0x28
/* 8003CDE0 00038A40  48 19 DE B5 */	bl func_801DAC94
/* 8003CDE4 00038A44  48 00 00 08 */	b lbl_8003CDEC
lbl_8003CDE8:
/* 8003CDE8 00038A48  38 60 00 00 */	li r3, 0
lbl_8003CDEC:
/* 8003CDEC 00038A4C  2C 03 00 00 */	cmpwi r3, 0
/* 8003CDF0 00038A50  7C 7F 1B 78 */	mr r31, r3
/* 8003CDF4 00038A54  41 82 00 14 */	beq lbl_8003CE08
/* 8003CDF8 00038A58  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 8003CDFC 00038A5C  38 A0 00 00 */	li r5, 0
/* 8003CE00 00038A60  48 1E 1C 49 */	bl func_8021EA48
/* 8003CE04 00038A64  7C 7F 1B 78 */	mr r31, r3
lbl_8003CE08:
/* 8003CE08 00038A68  2C 1F 00 00 */	cmpwi r31, 0
/* 8003CE0C 00038A6C  41 82 00 64 */	beq lbl_8003CE70
/* 8003CE10 00038A70  C0 22 82 98 */	lfs f1, lbl_80640898-_SDA2_BASE_(r2)
/* 8003CE14 00038A74  38 00 00 01 */	li r0, 1
/* 8003CE18 00038A78  93 FE 0C 08 */	stw r31, 0xc08(r30)
/* 8003CE1C 00038A7C  7F E3 FB 78 */	mr r3, r31
/* 8003CE20 00038A80  C0 02 82 88 */	lfs f0, lbl_80640888-_SDA2_BASE_(r2)
/* 8003CE24 00038A84  D0 3F 00 1C */	stfs f1, 0x1c(r31)
/* 8003CE28 00038A88  D0 1F 00 20 */	stfs f0, 0x20(r31)
/* 8003CE2C 00038A8C  90 1F 00 24 */	stw r0, 0x24(r31)
/* 8003CE30 00038A90  81 9F 00 0C */	lwz r12, 0xc(r31)
/* 8003CE34 00038A94  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003CE38 00038A98  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003CE3C 00038A9C  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8003CE40 00038AA0  7D 89 03 A6 */	mtctr r12
/* 8003CE44 00038AA4  4E 80 04 21 */	bctrl
/* 8003CE48 00038AA8  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 8003CE4C 00038AAC  98 7F 00 08 */	stb r3, 8(r31)
/* 8003CE50 00038AB0  41 82 00 20 */	beq lbl_8003CE70
/* 8003CE54 00038AB4  83 FF 00 04 */	lwz r31, 4(r31)
/* 8003CE58 00038AB8  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8003CE5C 00038ABC  48 1F E1 FD */	bl func_8023B058
/* 8003CE60 00038AC0  2C 03 00 00 */	cmpwi r3, 0
/* 8003CE64 00038AC4  41 82 00 0C */	beq lbl_8003CE70
/* 8003CE68 00038AC8  7F E4 FB 78 */	mr r4, r31
/* 8003CE6C 00038ACC  48 1F E5 4D */	bl func_8023B3B8
lbl_8003CE70:
/* 8003CE70 00038AD0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003CE74 00038AD4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003CE78 00038AD8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003CE7C 00038ADC  7C 08 03 A6 */	mtlr r0
/* 8003CE80 00038AE0  38 21 00 20 */	addi r1, r1, 0x20
/* 8003CE84 00038AE4  4E 80 00 20 */	blr

.global func_8003CE88
func_8003CE88:
/* 8003CE88 00038AE8  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 8003CE8C 00038AEC  2C 05 00 00 */	cmpwi r5, 0
/* 8003CE90 00038AF0  41 82 00 74 */	beq lbl_8003CF04
/* 8003CE94 00038AF4  A0 65 00 E0 */	lhz r3, 0xe0(r5)
/* 8003CE98 00038AF8  7C 04 18 00 */	cmpw r4, r3
/* 8003CE9C 00038AFC  40 80 00 68 */	bge lbl_8003CF04
/* 8003CEA0 00038B00  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8003CEA4 00038B04  2C 06 00 00 */	cmpwi r6, 0
/* 8003CEA8 00038B08  40 82 00 0C */	bne lbl_8003CEB4
/* 8003CEAC 00038B0C  38 60 00 00 */	li r3, 0
/* 8003CEB0 00038B10  4E 80 00 20 */	blr
lbl_8003CEB4:
/* 8003CEB4 00038B14  54 80 04 3E */	clrlwi r0, r4, 0x10
/* 8003CEB8 00038B18  7C 00 18 40 */	cmplw r0, r3
/* 8003CEBC 00038B1C  41 80 00 0C */	blt lbl_8003CEC8
/* 8003CEC0 00038B20  38 60 00 00 */	li r3, 0
/* 8003CEC4 00038B24  4E 80 00 20 */	blr
lbl_8003CEC8:
/* 8003CEC8 00038B28  80 E5 00 08 */	lwz r7, 8(r5)
/* 8003CECC 00038B2C  54 80 0B FC */	rlwinm r0, r4, 1, 0xf, 0x1e
/* 8003CED0 00038B30  7C 66 02 2E */	lhzx r3, r6, r0
/* 8003CED4 00038B34  2C 07 00 00 */	cmpwi r7, 0
/* 8003CED8 00038B38  40 82 00 0C */	bne lbl_8003CEE4
/* 8003CEDC 00038B3C  38 60 00 00 */	li r3, 0
/* 8003CEE0 00038B40  4E 80 00 20 */	blr
lbl_8003CEE4:
/* 8003CEE4 00038B44  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 8003CEE8 00038B48  7C 03 00 40 */	cmplw r3, r0
/* 8003CEEC 00038B4C  41 80 00 0C */	blt lbl_8003CEF8
/* 8003CEF0 00038B50  38 60 00 00 */	li r3, 0
/* 8003CEF4 00038B54  4E 80 00 20 */	blr
lbl_8003CEF8:
/* 8003CEF8 00038B58  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003CEFC 00038B5C  7C 67 00 2E */	lwzx r3, r7, r0
/* 8003CF00 00038B60  4E 80 00 20 */	blr
lbl_8003CF04:
/* 8003CF04 00038B64  38 60 00 00 */	li r3, 0
/* 8003CF08 00038B68  4E 80 00 20 */	blr

.global func_8003CF0C
func_8003CF0C:
/* 8003CF0C 00038B6C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003CF10 00038B70  7C 08 02 A6 */	mflr r0
/* 8003CF14 00038B74  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003CF18 00038B78  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003CF1C 00038B7C  7C 7F 1B 78 */	mr r31, r3
/* 8003CF20 00038B80  48 00 12 3D */	bl func_8003E15C
/* 8003CF24 00038B84  2C 1F 00 00 */	cmpwi r31, 0
/* 8003CF28 00038B88  41 82 00 18 */	beq lbl_8003CF40
/* 8003CF2C 00038B8C  2C 03 00 00 */	cmpwi r3, 0
/* 8003CF30 00038B90  40 82 00 08 */	bne lbl_8003CF38
/* 8003CF34 00038B94  48 00 00 0C */	b lbl_8003CF40
lbl_8003CF38:
/* 8003CF38 00038B98  7F E4 FB 78 */	mr r4, r31
/* 8003CF3C 00038B9C  48 00 12 FD */	bl func_8003E238
lbl_8003CF40:
/* 8003CF40 00038BA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003CF44 00038BA4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003CF48 00038BA8  7C 08 03 A6 */	mtlr r0
/* 8003CF4C 00038BAC  38 21 00 10 */	addi r1, r1, 0x10
/* 8003CF50 00038BB0  4E 80 00 20 */	blr

.global func_8003CF54
func_8003CF54:
/* 8003CF54 00038BB4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003CF58 00038BB8  7C 08 02 A6 */	mflr r0
/* 8003CF5C 00038BBC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003CF60 00038BC0  39 61 00 30 */	addi r11, r1, 0x30
/* 8003CF64 00038BC4  48 18 A1 B1 */	bl _savegpr_22
/* 8003CF68 00038BC8  7C 7A 1B 78 */	mr r26, r3
/* 8003CF6C 00038BCC  7C 9B 23 78 */	mr r27, r4
/* 8003CF70 00038BD0  7C BC 2B 78 */	mr r28, r5
/* 8003CF74 00038BD4  7C DD 33 78 */	mr r29, r6
/* 8003CF78 00038BD8  7C FE 3B 78 */	mr r30, r7
/* 8003CF7C 00038BDC  7D 1F 43 78 */	mr r31, r8
/* 8003CF80 00038BE0  48 00 11 DD */	bl func_8003E15C
/* 8003CF84 00038BE4  2C 03 00 00 */	cmpwi r3, 0
/* 8003CF88 00038BE8  7C 78 1B 78 */	mr r24, r3
/* 8003CF8C 00038BEC  40 82 00 0C */	bne lbl_8003CF98
/* 8003CF90 00038BF0  38 60 00 00 */	li r3, 0
/* 8003CF94 00038BF4  48 00 01 14 */	b lbl_8003D0A8
lbl_8003CF98:
/* 8003CF98 00038BF8  7F 64 DB 78 */	mr r4, r27
/* 8003CF9C 00038BFC  7F C6 F3 78 */	mr r6, r30
/* 8003CFA0 00038C00  57 A5 06 3E */	clrlwi r5, r29, 0x18
/* 8003CFA4 00038C04  48 00 16 F5 */	bl func_8003E698
/* 8003CFA8 00038C08  7C 77 1B 78 */	mr r23, r3
/* 8003CFAC 00038C0C  7F 03 C3 78 */	mr r3, r24
/* 8003CFB0 00038C10  7F 64 DB 78 */	mr r4, r27
/* 8003CFB4 00038C14  7F 85 E3 78 */	mr r5, r28
/* 8003CFB8 00038C18  7F C7 F3 78 */	mr r7, r30
/* 8003CFBC 00038C1C  57 A6 06 3E */	clrlwi r6, r29, 0x18
/* 8003CFC0 00038C20  48 00 17 21 */	bl func_8003E6E0
/* 8003CFC4 00038C24  2C 17 00 00 */	cmpwi r23, 0
/* 8003CFC8 00038C28  7C 76 1B 78 */	mr r22, r3
/* 8003CFCC 00038C2C  41 82 00 0C */	beq lbl_8003CFD8
/* 8003CFD0 00038C30  2C 03 00 00 */	cmpwi r3, 0
/* 8003CFD4 00038C34  40 82 00 0C */	bne lbl_8003CFE0
lbl_8003CFD8:
/* 8003CFD8 00038C38  38 60 00 00 */	li r3, 0
/* 8003CFDC 00038C3C  48 00 00 CC */	b lbl_8003D0A8
lbl_8003CFE0:
/* 8003CFE0 00038C40  80 1A 00 00 */	lwz r0, 0(r26)
/* 8003CFE4 00038C44  7F 43 D3 78 */	mr r3, r26
/* 8003CFE8 00038C48  54 18 05 28 */	rlwinm r24, r0, 0, 0x14, 0x14
/* 8003CFEC 00038C4C  4B FF A5 B9 */	bl func_800375A4
/* 8003CFF0 00038C50  80 1A 00 00 */	lwz r0, 0(r26)
/* 8003CFF4 00038C54  7E E3 BB 78 */	mr r3, r23
/* 8003CFF8 00038C58  7E C4 B3 78 */	mr r4, r22
/* 8003CFFC 00038C5C  7C 00 C3 78 */	or r0, r0, r24
/* 8003D000 00038C60  90 1A 00 00 */	stw r0, 0(r26)
/* 8003D004 00038C64  4B FF 9F 85 */	bl func_80036F88
/* 8003D008 00038C68  28 1B 01 47 */	cmplwi r27, 0x147
/* 8003D00C 00038C6C  40 82 00 3C */	bne lbl_8003D048
/* 8003D010 00038C70  3F 00 09 31 */	lis r24, 0x09310C00@ha
/* 8003D014 00038C74  7E E3 BB 78 */	mr r3, r23
/* 8003D018 00038C78  38 98 0C 00 */	addi r4, r24, 0x09310C00@l
/* 8003D01C 00038C7C  4B FF 9F 6D */	bl func_80036F88
/* 8003D020 00038C80  3F 20 09 30 */	lis r25, 0x09300C00@ha
/* 8003D024 00038C84  7E E3 BB 78 */	mr r3, r23
/* 8003D028 00038C88  38 99 0C 00 */	addi r4, r25, 0x09300C00@l
/* 8003D02C 00038C8C  4B FF 9F 5D */	bl func_80036F88
/* 8003D030 00038C90  38 78 0C 00 */	addi r3, r24, 0xc00
/* 8003D034 00038C94  38 19 0C 00 */	addi r0, r25, 0xc00
/* 8003D038 00038C98  92 FA 0C 58 */	stw r23, 0xc58(r26)
/* 8003D03C 00038C9C  90 7A 0C 5C */	stw r3, 0xc5c(r26)
/* 8003D040 00038CA0  92 FA 0C 60 */	stw r23, 0xc60(r26)
/* 8003D044 00038CA4  90 1A 0C 64 */	stw r0, 0xc64(r26)
lbl_8003D048:
/* 8003D048 00038CA8  38 00 00 00 */	li r0, 0
/* 8003D04C 00038CAC  7E E3 BB 78 */	mr r3, r23
/* 8003D050 00038CB0  90 1A 0C D8 */	stw r0, 0xcd8(r26)
/* 8003D054 00038CB4  90 1A 0C E0 */	stw r0, 0xce0(r26)
/* 8003D058 00038CB8  48 20 C8 39 */	bl func_80249890
/* 8003D05C 00038CBC  7E E3 BB 78 */	mr r3, r23
/* 8003D060 00038CC0  48 20 C9 0D */	bl func_8024996C
/* 8003D064 00038CC4  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003D068 00038CC8  48 1E 75 21 */	bl func_80224588
/* 8003D06C 00038CCC  3B 20 00 01 */	li r25, 1
/* 8003D070 00038CD0  B3 7A 05 10 */	sth r27, 0x510(r26)
/* 8003D074 00038CD4  7F 43 D3 78 */	mr r3, r26
/* 8003D078 00038CD8  7E E4 BB 78 */	mr r4, r23
/* 8003D07C 00038CDC  B3 DA 05 12 */	sth r30, 0x512(r26)
/* 8003D080 00038CE0  7E C5 B3 78 */	mr r5, r22
/* 8003D084 00038CE4  9B 9A 05 16 */	stb r28, 0x516(r26)
/* 8003D088 00038CE8  B3 BA 05 14 */	sth r29, 0x514(r26)
/* 8003D08C 00038CEC  93 FA 05 18 */	stw r31, 0x518(r26)
/* 8003D090 00038CF0  B3 3A 05 0C */	sth r25, 0x50c(r26)
/* 8003D094 00038CF4  4B FF A8 91 */	bl func_80037924
/* 8003D098 00038CF8  B3 3A 05 0C */	sth r25, 0x50c(r26)
/* 8003D09C 00038CFC  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003D0A0 00038D00  48 1E 74 E9 */	bl func_80224588
/* 8003D0A4 00038D04  38 60 00 01 */	li r3, 1
lbl_8003D0A8:
/* 8003D0A8 00038D08  39 61 00 30 */	addi r11, r1, 0x30
/* 8003D0AC 00038D0C  48 18 A0 B5 */	bl _restgpr_22
/* 8003D0B0 00038D10  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003D0B4 00038D14  7C 08 03 A6 */	mtlr r0
/* 8003D0B8 00038D18  38 21 00 30 */	addi r1, r1, 0x30
/* 8003D0BC 00038D1C  4E 80 00 20 */	blr

.global func_8003D0C0
func_8003D0C0:
/* 8003D0C0 00038D20  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003D0C4 00038D24  7C 08 02 A6 */	mflr r0
/* 8003D0C8 00038D28  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003D0CC 00038D2C  39 61 00 30 */	addi r11, r1, 0x30
/* 8003D0D0 00038D30  48 18 A0 49 */	bl _savegpr_23
/* 8003D0D4 00038D34  3F 00 80 64 */	lis r24, lbl_8063CE34@ha
/* 8003D0D8 00038D38  7C 7A 1B 78 */	mr r26, r3
/* 8003D0DC 00038D3C  3B 18 CE 34 */	addi r24, r24, lbl_8063CE34@l
/* 8003D0E0 00038D40  7C 9B 23 78 */	mr r27, r4
/* 8003D0E4 00038D44  7C BC 2B 78 */	mr r28, r5
/* 8003D0E8 00038D48  7C DD 33 78 */	mr r29, r6
/* 8003D0EC 00038D4C  7C FE 3B 78 */	mr r30, r7
/* 8003D0F0 00038D50  38 78 00 28 */	addi r3, r24, 0x28
/* 8003D0F4 00038D54  48 35 8C F1 */	bl func_80395DE4
/* 8003D0F8 00038D58  7C 1B 18 40 */	cmplw r27, r3
/* 8003D0FC 00038D5C  41 80 00 0C */	blt lbl_8003D108
/* 8003D100 00038D60  38 60 00 00 */	li r3, 0
/* 8003D104 00038D64  48 00 01 84 */	b lbl_8003D288
lbl_8003D108:
/* 8003D108 00038D68  2C 1C 00 00 */	cmpwi r28, 0
/* 8003D10C 00038D6C  41 82 00 28 */	beq lbl_8003D134
/* 8003D110 00038D70  7F 64 DB 78 */	mr r4, r27
/* 8003D114 00038D74  38 78 00 28 */	addi r3, r24, 0x28
/* 8003D118 00038D78  48 35 8D C1 */	bl func_80395ED8
/* 8003D11C 00038D7C  7C 7F 1B 78 */	mr r31, r3
/* 8003D120 00038D80  7F 64 DB 78 */	mr r4, r27
/* 8003D124 00038D84  38 78 00 28 */	addi r3, r24, 0x28
/* 8003D128 00038D88  48 35 8D E5 */	bl func_80395F0C
/* 8003D12C 00038D8C  7C 77 1B 78 */	mr r23, r3
/* 8003D130 00038D90  48 00 00 24 */	b lbl_8003D154
lbl_8003D134:
/* 8003D134 00038D94  7F 64 DB 78 */	mr r4, r27
/* 8003D138 00038D98  38 78 00 28 */	addi r3, r24, 0x28
/* 8003D13C 00038D9C  48 35 8D 35 */	bl func_80395E70
/* 8003D140 00038DA0  7C 7F 1B 78 */	mr r31, r3
/* 8003D144 00038DA4  7F 64 DB 78 */	mr r4, r27
/* 8003D148 00038DA8  38 78 00 28 */	addi r3, r24, 0x28
/* 8003D14C 00038DAC  48 35 8D 59 */	bl func_80395EA4
/* 8003D150 00038DB0  7C 77 1B 78 */	mr r23, r3
lbl_8003D154:
/* 8003D154 00038DB4  2C 1F 00 00 */	cmpwi r31, 0
/* 8003D158 00038DB8  41 82 00 0C */	beq lbl_8003D164
/* 8003D15C 00038DBC  2C 17 00 00 */	cmpwi r23, 0
/* 8003D160 00038DC0  40 82 00 0C */	bne lbl_8003D16C
lbl_8003D164:
/* 8003D164 00038DC4  38 60 00 00 */	li r3, 0
/* 8003D168 00038DC8  48 00 01 20 */	b lbl_8003D288
lbl_8003D16C:
/* 8003D16C 00038DCC  80 1A 00 00 */	lwz r0, 0(r26)
/* 8003D170 00038DD0  7F 43 D3 78 */	mr r3, r26
/* 8003D174 00038DD4  54 18 05 28 */	rlwinm r24, r0, 0, 0x14, 0x14
/* 8003D178 00038DD8  4B FF A4 2D */	bl func_800375A4
/* 8003D17C 00038DDC  80 9A 00 00 */	lwz r4, 0(r26)
/* 8003D180 00038DE0  7F 80 00 34 */	cntlzw r0, r28
/* 8003D184 00038DE4  38 BB 03 E7 */	addi r5, r27, 0x3e7
/* 8003D188 00038DE8  7F E3 FB 78 */	mr r3, r31
/* 8003D18C 00038DEC  7C 84 C3 78 */	or r4, r4, r24
/* 8003D190 00038DF0  54 00 DC 3E */	rlwinm r0, r0, 0x1b, 0x10, 0x1f
/* 8003D194 00038DF4  90 9A 00 00 */	stw r4, 0(r26)
/* 8003D198 00038DF8  7E E4 BB 78 */	mr r4, r23
/* 8003D19C 00038DFC  B0 BA 05 10 */	sth r5, 0x510(r26)
/* 8003D1A0 00038E00  B0 1A 05 14 */	sth r0, 0x514(r26)
/* 8003D1A4 00038E04  48 19 E3 19 */	bl func_801DB4BC
/* 8003D1A8 00038E08  7F A0 07 75 */	extsb. r0, r29
/* 8003D1AC 00038E0C  B3 7A 05 1C */	sth r27, 0x51c(r26)
/* 8003D1B0 00038E10  7C 78 1B 78 */	mr r24, r3
/* 8003D1B4 00038E14  9B 9A 05 20 */	stb r28, 0x520(r26)
/* 8003D1B8 00038E18  41 80 00 08 */	blt lbl_8003D1C0
/* 8003D1BC 00038E1C  9B BA 05 21 */	stb r29, 0x521(r26)
lbl_8003D1C0:
/* 8003D1C0 00038E20  3F 20 80 64 */	lis r25, lbl_8063CE34@ha
/* 8003D1C4 00038E24  7F 64 DB 78 */	mr r4, r27
/* 8003D1C8 00038E28  3B 39 CE 34 */	addi r25, r25, lbl_8063CE34@l
/* 8003D1CC 00038E2C  38 79 00 28 */	addi r3, r25, 0x28
/* 8003D1D0 00038E30  48 35 8C 31 */	bl func_80395E00
/* 8003D1D4 00038E34  2C 03 00 00 */	cmpwi r3, 0
/* 8003D1D8 00038E38  41 82 00 34 */	beq lbl_8003D20C
/* 8003D1DC 00038E3C  7F 64 DB 78 */	mr r4, r27
/* 8003D1E0 00038E40  38 79 00 28 */	addi r3, r25, 0x28
/* 8003D1E4 00038E44  48 35 8C 55 */	bl func_80395E38
/* 8003D1E8 00038E48  B0 7A 05 1E */	sth r3, 0x51e(r26)
/* 8003D1EC 00038E4C  7F 64 DB 78 */	mr r4, r27
/* 8003D1F0 00038E50  7F 85 E3 78 */	mr r5, r28
/* 8003D1F4 00038E54  7F C7 F3 78 */	mr r7, r30
/* 8003D1F8 00038E58  38 7A 05 24 */	addi r3, r26, 0x524
/* 8003D1FC 00038E5C  7F A6 07 74 */	extsb r6, r29
/* 8003D200 00038E60  39 00 00 01 */	li r8, 1
/* 8003D204 00038E64  48 00 20 99 */	bl func_8003F29C
/* 8003D208 00038E68  48 00 00 54 */	b lbl_8003D25C
lbl_8003D20C:
/* 8003D20C 00038E6C  38 00 FF FF */	li r0, -1
/* 8003D210 00038E70  38 7A 05 24 */	addi r3, r26, 0x524
/* 8003D214 00038E74  B0 1A 05 1E */	sth r0, 0x51e(r26)
/* 8003D218 00038E78  48 00 17 89 */	bl func_8003E9A0
/* 8003D21C 00038E7C  2C 18 00 00 */	cmpwi r24, 0
/* 8003D220 00038E80  40 82 00 30 */	bne lbl_8003D250
/* 8003D224 00038E84  7F E3 FB 78 */	mr r3, r31
/* 8003D228 00038E88  7E E4 BB 78 */	mr r4, r23
/* 8003D22C 00038E8C  48 20 C5 F1 */	bl func_8024981C
/* 8003D230 00038E90  48 00 00 0C */	b lbl_8003D23C
lbl_8003D234:
/* 8003D234 00038E94  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003D238 00038E98  48 1E 73 51 */	bl func_80224588
lbl_8003D23C:
/* 8003D23C 00038E9C  7F E3 FB 78 */	mr r3, r31
/* 8003D240 00038EA0  7E E4 BB 78 */	mr r4, r23
/* 8003D244 00038EA4  48 19 E2 79 */	bl func_801DB4BC
/* 8003D248 00038EA8  2C 03 00 00 */	cmpwi r3, 0
/* 8003D24C 00038EAC  41 82 FF E8 */	beq lbl_8003D234
lbl_8003D250:
/* 8003D250 00038EB0  7F E3 FB 78 */	mr r3, r31
/* 8003D254 00038EB4  7E E4 BB 78 */	mr r4, r23
/* 8003D258 00038EB8  48 19 E2 A5 */	bl func_801DB4FC
lbl_8003D25C:
/* 8003D25C 00038EBC  7F 43 D3 78 */	mr r3, r26
/* 8003D260 00038EC0  7F E4 FB 78 */	mr r4, r31
/* 8003D264 00038EC4  7E E5 BB 78 */	mr r5, r23
/* 8003D268 00038EC8  4B FF A6 BD */	bl func_80037924
/* 8003D26C 00038ECC  38 00 00 02 */	li r0, 2
/* 8003D270 00038ED0  7F E3 FB 78 */	mr r3, r31
/* 8003D274 00038ED4  B0 1A 05 0C */	sth r0, 0x50c(r26)
/* 8003D278 00038ED8  48 20 C6 19 */	bl func_80249890
/* 8003D27C 00038EDC  7F E3 FB 78 */	mr r3, r31
/* 8003D280 00038EE0  48 20 C6 ED */	bl func_8024996C
/* 8003D284 00038EE4  38 60 00 01 */	li r3, 1
lbl_8003D288:
/* 8003D288 00038EE8  39 61 00 30 */	addi r11, r1, 0x30
/* 8003D28C 00038EEC  48 18 9E D9 */	bl _restgpr_23
/* 8003D290 00038EF0  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003D294 00038EF4  7C 08 03 A6 */	mtlr r0
/* 8003D298 00038EF8  38 21 00 30 */	addi r1, r1, 0x30
/* 8003D29C 00038EFC  4E 80 00 20 */	blr

.global func_8003D2A0
func_8003D2A0:
/* 8003D2A0 00038F00  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003D2A4 00038F04  7C 08 02 A6 */	mflr r0
/* 8003D2A8 00038F08  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003D2AC 00038F0C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003D2B0 00038F10  7C 7F 1B 78 */	mr r31, r3
/* 8003D2B4 00038F14  48 00 0E A9 */	bl func_8003E15C
/* 8003D2B8 00038F18  2C 03 00 00 */	cmpwi r3, 0
/* 8003D2BC 00038F1C  41 82 00 20 */	beq lbl_8003D2DC
/* 8003D2C0 00038F20  A0 1F 05 14 */	lhz r0, 0x514(r31)
/* 8003D2C4 00038F24  38 C0 00 00 */	li r6, 0
/* 8003D2C8 00038F28  A0 9F 05 10 */	lhz r4, 0x510(r31)
/* 8003D2CC 00038F2C  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8003D2D0 00038F30  48 00 12 75 */	bl func_8003E544
/* 8003D2D4 00038F34  7C 64 1B 78 */	mr r4, r3
/* 8003D2D8 00038F38  48 00 00 0C */	b lbl_8003D2E4
lbl_8003D2DC:
/* 8003D2DC 00038F3C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D2E0 00038F40  48 00 00 10 */	b lbl_8003D2F0
lbl_8003D2E4:
/* 8003D2E4 00038F44  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003D2E8 00038F48  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8003D2EC 00038F4C  48 35 40 C9 */	bl func_803913B4
lbl_8003D2F0:
/* 8003D2F0 00038F50  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003D2F4 00038F54  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003D2F8 00038F58  7C 08 03 A6 */	mtlr r0
/* 8003D2FC 00038F5C  38 21 00 10 */	addi r1, r1, 0x10
/* 8003D300 00038F60  4E 80 00 20 */	blr

.global func_8003D304
func_8003D304:
/* 8003D304 00038F64  2C 04 00 00 */	cmpwi r4, 0
/* 8003D308 00038F68  7C 87 23 78 */	mr r7, r4
/* 8003D30C 00038F6C  40 82 00 0C */	bne lbl_8003D318
/* 8003D310 00038F70  38 60 00 00 */	li r3, 0
/* 8003D314 00038F74  4E 80 00 20 */	blr
lbl_8003D318:
/* 8003D318 00038F78  A0 84 00 00 */	lhz r4, 0(r4)
/* 8003D31C 00038F7C  7C C6 07 74 */	extsb r6, r6
/* 8003D320 00038F80  38 E7 00 02 */	addi r7, r7, 2
/* 8003D324 00038F84  4B FF FD 9C */	b func_8003D0C0
/* 8003D328 00038F88  4E 80 00 20 */	blr

.global func_8003D32C
func_8003D32C:
/* 8003D32C 00038F8C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003D330 00038F90  7C 08 02 A6 */	mflr r0
/* 8003D334 00038F94  3C C0 80 64 */	lis r6, lbl_8063CE34@ha
/* 8003D338 00038F98  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003D33C 00038F9C  38 C6 CE 34 */	addi r6, r6, lbl_8063CE34@l
/* 8003D340 00038FA0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003D344 00038FA4  3B E0 00 00 */	li r31, 0
/* 8003D348 00038FA8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003D34C 00038FAC  7C BE 2B 78 */	mr r30, r5
/* 8003D350 00038FB0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003D354 00038FB4  7C 9D 23 78 */	mr r29, r4
/* 8003D358 00038FB8  93 81 00 10 */	stw r28, 0x10(r1)
/* 8003D35C 00038FBC  7C 7C 1B 78 */	mr r28, r3
/* 8003D360 00038FC0  A0 83 05 1C */	lhz r4, 0x51c(r3)
/* 8003D364 00038FC4  38 66 00 28 */	addi r3, r6, 0x28
/* 8003D368 00038FC8  48 35 8A 99 */	bl func_80395E00
/* 8003D36C 00038FCC  2C 03 00 00 */	cmpwi r3, 0
/* 8003D370 00038FD0  41 82 00 24 */	beq lbl_8003D394
/* 8003D374 00038FD4  7F A4 EB 78 */	mr r4, r29
/* 8003D378 00038FD8  7F C5 F3 78 */	mr r5, r30
/* 8003D37C 00038FDC  38 7C 05 24 */	addi r3, r28, 0x524
/* 8003D380 00038FE0  48 00 21 A9 */	bl func_8003F528
/* 8003D384 00038FE4  80 1C 00 00 */	lwz r0, 0(r28)
/* 8003D388 00038FE8  7C 7F 1B 78 */	mr r31, r3
/* 8003D38C 00038FEC  60 00 02 00 */	ori r0, r0, 0x200
/* 8003D390 00038FF0  90 1C 00 00 */	stw r0, 0(r28)
lbl_8003D394:
/* 8003D394 00038FF4  7F E3 FB 78 */	mr r3, r31
/* 8003D398 00038FF8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003D39C 00038FFC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003D3A0 00039000  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003D3A4 00039004  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003D3A8 00039008  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003D3AC 0003900C  7C 08 03 A6 */	mtlr r0
/* 8003D3B0 00039010  38 21 00 20 */	addi r1, r1, 0x20
/* 8003D3B4 00039014  4E 80 00 20 */	blr

.global func_8003D3B8
func_8003D3B8:
/* 8003D3B8 00039018  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003D3BC 0003901C  7C 08 02 A6 */	mflr r0
/* 8003D3C0 00039020  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 8003D3C4 00039024  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003D3C8 00039028  38 A5 CE 34 */	addi r5, r5, lbl_8063CE34@l
/* 8003D3CC 0003902C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003D3D0 00039030  3B E0 00 00 */	li r31, 0
/* 8003D3D4 00039034  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003D3D8 00039038  7C 9E 23 78 */	mr r30, r4
/* 8003D3DC 0003903C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003D3E0 00039040  7C 7D 1B 78 */	mr r29, r3
/* 8003D3E4 00039044  A0 83 05 1C */	lhz r4, 0x51c(r3)
/* 8003D3E8 00039048  38 65 00 28 */	addi r3, r5, 0x28
/* 8003D3EC 0003904C  48 35 8A 15 */	bl func_80395E00
/* 8003D3F0 00039050  2C 03 00 00 */	cmpwi r3, 0
/* 8003D3F4 00039054  41 82 00 20 */	beq lbl_8003D414
/* 8003D3F8 00039058  7F C4 F3 78 */	mr r4, r30
/* 8003D3FC 0003905C  38 7D 05 24 */	addi r3, r29, 0x524
/* 8003D400 00039060  48 00 22 05 */	bl func_8003F604
/* 8003D404 00039064  80 1D 00 00 */	lwz r0, 0(r29)
/* 8003D408 00039068  7C 7F 1B 78 */	mr r31, r3
/* 8003D40C 0003906C  60 00 02 00 */	ori r0, r0, 0x200
/* 8003D410 00039070  90 1D 00 00 */	stw r0, 0(r29)
lbl_8003D414:
/* 8003D414 00039074  7F E3 FB 78 */	mr r3, r31
/* 8003D418 00039078  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003D41C 0003907C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003D420 00039080  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003D424 00039084  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003D428 00039088  7C 08 03 A6 */	mtlr r0
/* 8003D42C 0003908C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003D430 00039090  4E 80 00 20 */	blr

.global func_8003D434
func_8003D434:
/* 8003D434 00039094  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003D438 00039098  7C 08 02 A6 */	mflr r0
/* 8003D43C 0003909C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003D440 000390A0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003D444 000390A4  7C 7F 1B 78 */	mr r31, r3
/* 8003D448 000390A8  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003D44C 000390AC  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8003D450 000390B0  A0 9F 05 1C */	lhz r4, 0x51c(r31)
/* 8003D454 000390B4  38 63 00 28 */	addi r3, r3, 0x28
/* 8003D458 000390B8  48 35 89 A9 */	bl func_80395E00
/* 8003D45C 000390BC  2C 03 00 00 */	cmpwi r3, 0
/* 8003D460 000390C0  41 82 00 18 */	beq lbl_8003D478
/* 8003D464 000390C4  80 1F 00 00 */	lwz r0, 0(r31)
/* 8003D468 000390C8  38 7F 05 24 */	addi r3, r31, 0x524
/* 8003D46C 000390CC  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 8003D470 000390D0  54 05 AF FE */	rlwinm r5, r0, 0x15, 0x1f, 0x1f
/* 8003D474 000390D4  48 00 22 81 */	bl func_8003F6F4
lbl_8003D478:
/* 8003D478 000390D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003D47C 000390DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003D480 000390E0  7C 08 03 A6 */	mtlr r0
/* 8003D484 000390E4  38 21 00 10 */	addi r1, r1, 0x10
/* 8003D488 000390E8  4E 80 00 20 */	blr

.global func_8003D48C
func_8003D48C:
/* 8003D48C 000390EC  2C 04 00 00 */	cmpwi r4, 0
/* 8003D490 000390F0  41 82 00 14 */	beq lbl_8003D4A4
/* 8003D494 000390F4  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D498 000390F8  60 00 08 00 */	ori r0, r0, 0x800
/* 8003D49C 000390FC  90 03 00 00 */	stw r0, 0(r3)
/* 8003D4A0 00039100  4E 80 00 20 */	blr
lbl_8003D4A4:
/* 8003D4A4 00039104  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D4A8 00039108  54 00 05 66 */	rlwinm r0, r0, 0, 0x15, 0x13
/* 8003D4AC 0003910C  90 03 00 00 */	stw r0, 0(r3)
/* 8003D4B0 00039110  4E 80 00 20 */	blr

.global func_8003D4B4
func_8003D4B4:
/* 8003D4B4 00039114  38 80 00 00 */	li r4, 0
/* 8003D4B8 00039118  48 00 00 1C */	b lbl_8003D4D4

.global func_8003D4BC
func_8003D4BC:
/* 8003D4BC 0003911C  38 80 00 01 */	li r4, 1
/* 8003D4C0 00039120  48 00 00 14 */	b lbl_8003D4D4

.global func_8003D4C4
func_8003D4C4:
/* 8003D4C4 00039124  38 80 00 02 */	li r4, 2
/* 8003D4C8 00039128  48 00 00 0C */	b lbl_8003D4D4

.global func_8003D4CC
func_8003D4CC:
/* 8003D4CC 0003912C  38 80 00 03 */	li r4, 3
/* 8003D4D0 00039130  48 00 00 04 */	b lbl_8003D4D4
lbl_8003D4D4:
/* 8003D4D4 00039134  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003D4D8 00039138  7C 08 02 A6 */	mflr r0
/* 8003D4DC 0003913C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003D4E0 00039140  39 61 00 30 */	addi r11, r1, 0x30
/* 8003D4E4 00039144  48 18 9C 45 */	bl _savegpr_27
/* 8003D4E8 00039148  2C 04 00 02 */	cmpwi r4, 2
/* 8003D4EC 0003914C  7C 7D 1B 78 */	mr r29, r3
/* 8003D4F0 00039150  7C 9E 23 78 */	mr r30, r4
/* 8003D4F4 00039154  41 82 00 84 */	beq lbl_8003D578
/* 8003D4F8 00039158  40 80 00 14 */	bge lbl_8003D50C
/* 8003D4FC 0003915C  2C 04 00 00 */	cmpwi r4, 0
/* 8003D500 00039160  41 82 00 18 */	beq lbl_8003D518
/* 8003D504 00039164  40 80 00 50 */	bge lbl_8003D554
/* 8003D508 00039168  48 00 02 EC */	b lbl_8003D7F4
lbl_8003D50C:
/* 8003D50C 0003916C  2C 04 00 04 */	cmpwi r4, 4
/* 8003D510 00039170  40 80 02 E4 */	bge lbl_8003D7F4
/* 8003D514 00039174  48 00 00 88 */	b lbl_8003D59C
lbl_8003D518:
/* 8003D518 00039178  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D51C 0003917C  3C 80 19 F9 */	lis r4, 0x19F90A00@ha
/* 8003D520 00039180  80 A3 0C 04 */	lwz r5, 0xc04(r3)
/* 8003D524 00039184  3B E4 0A 00 */	addi r31, r4, 0x19F90A00@l
/* 8003D528 00039188  80 83 00 00 */	lwz r4, 0(r3)
/* 8003D52C 0003918C  60 00 40 00 */	ori r0, r0, 0x4000
/* 8003D530 00039190  2C 05 00 00 */	cmpwi r5, 0
/* 8003D534 00039194  3B 60 00 00 */	li r27, 0
/* 8003D538 00039198  90 03 00 00 */	stw r0, 0(r3)
/* 8003D53C 0003919C  54 9C 97 FE */	rlwinm r28, r4, 0x12, 0x1f, 0x1f
/* 8003D540 000391A0  41 82 00 B8 */	beq lbl_8003D5F8
/* 8003D544 000391A4  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 8003D548 000391A8  60 00 00 10 */	ori r0, r0, 0x10
/* 8003D54C 000391AC  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 8003D550 000391B0  48 00 00 A8 */	b lbl_8003D5F8
lbl_8003D554:
/* 8003D554 000391B4  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D558 000391B8  3C 80 1C F7 */	lis r4, 0x1CF70A00@ha
/* 8003D55C 000391BC  80 A3 00 00 */	lwz r5, 0(r3)
/* 8003D560 000391C0  3B E4 0A 00 */	addi r31, r4, 0x1CF70A00@l
/* 8003D564 000391C4  64 00 00 08 */	oris r0, r0, 8
/* 8003D568 000391C8  3B 60 FF FE */	li r27, -2
/* 8003D56C 000391CC  90 03 00 00 */	stw r0, 0(r3)
/* 8003D570 000391D0  54 BC 6F FE */	rlwinm r28, r5, 0xd, 0x1f, 0x1f
/* 8003D574 000391D4  48 00 00 84 */	b lbl_8003D5F8
lbl_8003D578:
/* 8003D578 000391D8  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D57C 000391DC  3C 80 1C F6 */	lis r4, 0x1CF60A00@ha
/* 8003D580 000391E0  80 A3 00 00 */	lwz r5, 0(r3)
/* 8003D584 000391E4  3B E4 0A 00 */	addi r31, r4, 0x1CF60A00@l
/* 8003D588 000391E8  64 00 00 10 */	oris r0, r0, 0x10
/* 8003D58C 000391EC  3B 60 FF FE */	li r27, -2
/* 8003D590 000391F0  90 03 00 00 */	stw r0, 0(r3)
/* 8003D594 000391F4  54 BC 67 FE */	rlwinm r28, r5, 0xc, 0x1f, 0x1f
/* 8003D598 000391F8  48 00 00 60 */	b lbl_8003D5F8
lbl_8003D59C:
/* 8003D59C 000391FC  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D5A0 00039200  3C 80 19 FB */	lis r4, 0x19FB0A00@ha
/* 8003D5A4 00039204  3B E4 0A 00 */	addi r31, r4, 0x19FB0A00@l
/* 8003D5A8 00039208  3B 60 00 01 */	li r27, 1
/* 8003D5AC 0003920C  54 1C 9F FE */	rlwinm r28, r0, 0x13, 0x1f, 0x1f
/* 8003D5B0 00039210  38 80 00 14 */	li r4, 0x14
/* 8003D5B4 00039214  4B FF EC A9 */	bl func_8003C25C
/* 8003D5B8 00039218  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8003D5BC 0003921C  28 04 00 FF */	cmplwi r4, 0xff
/* 8003D5C0 00039220  40 80 00 24 */	bge lbl_8003D5E4
/* 8003D5C4 00039224  80 7D 0C 04 */	lwz r3, 0xc04(r29)
/* 8003D5C8 00039228  38 A0 00 00 */	li r5, 0
/* 8003D5CC 0003922C  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D5D0 00039230  38 C0 00 01 */	li r6, 1
/* 8003D5D4 00039234  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003D5D8 00039238  38 E0 00 01 */	li r7, 1
/* 8003D5DC 0003923C  39 00 00 00 */	li r8, 0
/* 8003D5E0 00039240  48 1B 78 15 */	bl func_801F4DF4
lbl_8003D5E4:
/* 8003D5E4 00039244  80 1D 00 00 */	lwz r0, 0(r29)
/* 8003D5E8 00039248  60 00 20 00 */	ori r0, r0, 0x2000
/* 8003D5EC 0003924C  90 1D 00 00 */	stw r0, 0(r29)
/* 8003D5F0 00039250  48 00 00 08 */	b lbl_8003D5F8
/* 8003D5F4 00039254  48 00 02 00 */	b lbl_8003D7F4
lbl_8003D5F8:
/* 8003D5F8 00039258  2C 1C 00 00 */	cmpwi r28, 0
/* 8003D5FC 0003925C  40 82 01 A4 */	bne lbl_8003D7A0
/* 8003D600 00039260  7F A3 EB 78 */	mr r3, r29
/* 8003D604 00039264  7F 64 DB 78 */	mr r4, r27
/* 8003D608 00039268  4B FF C2 E5 */	bl func_800398EC
/* 8003D60C 0003926C  2C 03 00 00 */	cmpwi r3, 0
/* 8003D610 00039270  7C 7B 1B 78 */	mr r27, r3
/* 8003D614 00039274  41 82 01 E0 */	beq lbl_8003D7F4
/* 8003D618 00039278  57 E0 00 5E */	rlwinm r0, r31, 0, 1, 0xf
/* 8003D61C 0003927C  38 60 00 0C */	li r3, 0xc
/* 8003D620 00039280  60 04 0E 00 */	ori r4, r0, 0xe00
/* 8003D624 00039284  48 19 DE 99 */	bl func_801DB4BC
/* 8003D628 00039288  2C 03 00 00 */	cmpwi r3, 0
/* 8003D62C 0003928C  7C 7C 1B 78 */	mr r28, r3
/* 8003D630 00039290  41 82 01 C4 */	beq lbl_8003D7F4
/* 8003D634 00039294  57 C0 10 3A */	slwi r0, r30, 2
/* 8003D638 00039298  7F FD 02 14 */	add r31, r29, r0
/* 8003D63C 0003929C  80 7F 0C 90 */	lwz r3, 0xc90(r31)
/* 8003D640 000392A0  2C 03 00 00 */	cmpwi r3, 0
/* 8003D644 000392A4  41 82 00 1C */	beq lbl_8003D660
/* 8003D648 000392A8  41 82 00 18 */	beq lbl_8003D660
/* 8003D64C 000392AC  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8003D650 000392B0  38 80 00 01 */	li r4, 1
/* 8003D654 000392B4  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003D658 000392B8  7D 89 03 A6 */	mtctr r12
/* 8003D65C 000392BC  4E 80 04 21 */	bctrl
lbl_8003D660:
/* 8003D660 000392C0  48 19 D4 C9 */	bl func_801DAB28
/* 8003D664 000392C4  2C 03 00 00 */	cmpwi r3, 0
/* 8003D668 000392C8  41 82 00 14 */	beq lbl_8003D67C
/* 8003D66C 000392CC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8003D670 000392D0  38 80 01 40 */	li r4, 0x140
/* 8003D674 000392D4  48 19 D6 21 */	bl func_801DAC94
/* 8003D678 000392D8  48 00 00 08 */	b lbl_8003D680
lbl_8003D67C:
/* 8003D67C 000392DC  38 60 00 00 */	li r3, 0
lbl_8003D680:
/* 8003D680 000392E0  2C 03 00 00 */	cmpwi r3, 0
/* 8003D684 000392E4  7C 65 1B 78 */	mr r5, r3
/* 8003D688 000392E8  41 82 00 10 */	beq lbl_8003D698
/* 8003D68C 000392EC  7F 84 E3 78 */	mr r4, r28
/* 8003D690 000392F0  48 1B C2 5D */	bl func_801F98EC
/* 8003D694 000392F4  7C 65 1B 78 */	mr r5, r3
lbl_8003D698:
/* 8003D698 000392F8  90 BF 0C 90 */	stw r5, 0xc90(r31)
/* 8003D69C 000392FC  7F 63 DB 78 */	mr r3, r27
/* 8003D6A0 00039300  38 80 00 01 */	li r4, 1
/* 8003D6A4 00039304  38 C0 00 00 */	li r6, 0
/* 8003D6A8 00039308  38 E0 00 03 */	li r7, 3
/* 8003D6AC 0003930C  48 1B 4A E1 */	bl func_801F218C
/* 8003D6B0 00039310  7F A3 EB 78 */	mr r3, r29
/* 8003D6B4 00039314  4B FF C0 21 */	bl func_800396D4
/* 8003D6B8 00039318  C0 22 82 30 */	lfs f1, lbl_80640830-_SDA2_BASE_(r2)
/* 8003D6BC 0003931C  48 01 0D E1 */	bl func_8004E49C
/* 8003D6C0 00039320  FC 00 08 18 */	frsp f0, f1
/* 8003D6C4 00039324  80 7F 0C 90 */	lwz r3, 0xc90(r31)
/* 8003D6C8 00039328  C0 42 82 70 */	lfs f2, lbl_80640870-_SDA2_BASE_(r2)
/* 8003D6CC 0003932C  D0 21 00 08 */	stfs f1, 8(r1)
/* 8003D6D0 00039330  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8003D6D4 00039334  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8003D6D8 00039338  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8003D6DC 0003933C  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8003D6E0 00039340  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8003D6E4 00039344  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8003D6E8 00039348  40 80 00 2C */	bge lbl_8003D714
/* 8003D6EC 0003934C  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8003D6F0 00039350  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 8003D6F4 00039354  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8003D6F8 00039358  40 81 00 1C */	ble lbl_8003D714
/* 8003D6FC 0003935C  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D700 00039360  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003D704 00039364  40 80 00 08 */	bge lbl_8003D70C
/* 8003D708 00039368  48 00 00 08 */	b lbl_8003D710
lbl_8003D70C:
/* 8003D70C 0003936C  FC 60 10 90 */	fmr f3, f2
lbl_8003D710:
/* 8003D710 00039370  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_8003D714:
/* 8003D714 00039374  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 8003D718 00039378  C0 22 82 70 */	lfs f1, lbl_80640870-_SDA2_BASE_(r2)
/* 8003D71C 0003937C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8003D720 00039380  40 80 00 28 */	bge lbl_8003D748
/* 8003D724 00039384  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 8003D728 00039388  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8003D72C 0003938C  40 81 00 1C */	ble lbl_8003D748
/* 8003D730 00039390  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D734 00039394  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003D738 00039398  40 80 00 08 */	bge lbl_8003D740
/* 8003D73C 0003939C  48 00 00 08 */	b lbl_8003D744
lbl_8003D740:
/* 8003D740 000393A0  FC 60 08 90 */	fmr f3, f1
lbl_8003D744:
/* 8003D744 000393A4  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8003D748:
/* 8003D748 000393A8  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 8003D74C 000393AC  C0 22 82 70 */	lfs f1, lbl_80640870-_SDA2_BASE_(r2)
/* 8003D750 000393B0  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8003D754 000393B4  40 80 00 28 */	bge lbl_8003D77C
/* 8003D758 000393B8  C0 62 82 74 */	lfs f3, lbl_80640874-_SDA2_BASE_(r2)
/* 8003D75C 000393BC  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8003D760 000393C0  40 81 00 1C */	ble lbl_8003D77C
/* 8003D764 000393C4  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D768 000393C8  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003D76C 000393CC  40 80 00 08 */	bge lbl_8003D774
/* 8003D770 000393D0  48 00 00 08 */	b lbl_8003D778
lbl_8003D774:
/* 8003D774 000393D4  FC 60 08 90 */	fmr f3, f1
lbl_8003D778:
/* 8003D778 000393D8  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8003D77C:
/* 8003D77C 000393DC  38 80 00 01 */	li r4, 1
/* 8003D780 000393E0  48 1B 4F 39 */	bl func_801F26B8
/* 8003D784 000393E4  80 7F 0C 90 */	lwz r3, 0xc90(r31)
/* 8003D788 000393E8  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D78C 000393EC  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8003D790 000393F0  60 00 00 01 */	ori r0, r0, 1
/* 8003D794 000393F4  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8003D798 000393F8  90 03 01 04 */	stw r0, 0x104(r3)
/* 8003D79C 000393FC  D0 03 01 08 */	stfs f0, 0x108(r3)
lbl_8003D7A0:
/* 8003D7A0 00039400  2C 1E 00 01 */	cmpwi r30, 1
/* 8003D7A4 00039404  41 82 00 18 */	beq lbl_8003D7BC
/* 8003D7A8 00039408  2C 1E 00 02 */	cmpwi r30, 2
/* 8003D7AC 0003940C  41 82 00 10 */	beq lbl_8003D7BC
/* 8003D7B0 00039410  80 1D 00 00 */	lwz r0, 0(r29)
/* 8003D7B4 00039414  54 00 02 53 */	rlwinm. r0, r0, 0, 9, 9
/* 8003D7B8 00039418  41 82 00 3C */	beq lbl_8003D7F4
lbl_8003D7BC:
/* 8003D7BC 0003941C  80 1D 00 00 */	lwz r0, 0(r29)
/* 8003D7C0 00039420  7F A3 EB 78 */	mr r3, r29
/* 8003D7C4 00039424  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 8003D7C8 00039428  7C 00 00 34 */	cntlzw r0, r0
/* 8003D7CC 0003942C  54 04 D9 7E */	srwi r4, r0, 5
/* 8003D7D0 00039430  4B FF A5 5D */	bl func_80037D2C
/* 8003D7D4 00039434  80 1D 00 00 */	lwz r0, 0(r29)
/* 8003D7D8 00039438  7F A3 EB 78 */	mr r3, r29
/* 8003D7DC 0003943C  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 8003D7E0 00039440  7C 00 00 34 */	cntlzw r0, r0
/* 8003D7E4 00039444  54 04 D9 7E */	srwi r4, r0, 5
/* 8003D7E8 00039448  4B FF A5 45 */	bl func_80037D2C
/* 8003D7EC 0003944C  7F A3 EB 78 */	mr r3, r29
/* 8003D7F0 00039450  4B FF A8 31 */	bl func_80038020
lbl_8003D7F4:
/* 8003D7F4 00039454  39 61 00 30 */	addi r11, r1, 0x30
/* 8003D7F8 00039458  48 18 99 7D */	bl _restgpr_27
/* 8003D7FC 0003945C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003D800 00039460  7C 08 03 A6 */	mtlr r0
/* 8003D804 00039464  38 21 00 30 */	addi r1, r1, 0x30
/* 8003D808 00039468  4E 80 00 20 */	blr

.global func_8003D80C
func_8003D80C:
/* 8003D80C 0003946C  38 80 00 00 */	li r4, 0
/* 8003D810 00039470  48 00 00 1C */	b lbl_8003D82C

.global func_8003D814
func_8003D814:
/* 8003D814 00039474  38 80 00 01 */	li r4, 1
/* 8003D818 00039478  48 00 00 14 */	b lbl_8003D82C

.global func_8003D81C
func_8003D81C:
/* 8003D81C 0003947C  38 80 00 02 */	li r4, 2
/* 8003D820 00039480  48 00 00 0C */	b lbl_8003D82C

.global func_8003D824
func_8003D824:
/* 8003D824 00039484  38 80 00 03 */	li r4, 3
/* 8003D828 00039488  48 00 00 04 */	b lbl_8003D82C
lbl_8003D82C:
/* 8003D82C 0003948C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003D830 00039490  7C 08 02 A6 */	mflr r0
/* 8003D834 00039494  2C 04 00 02 */	cmpwi r4, 2
/* 8003D838 00039498  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003D83C 0003949C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003D840 000394A0  7C 9F 23 78 */	mr r31, r4
/* 8003D844 000394A4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003D848 000394A8  7C 7E 1B 78 */	mr r30, r3
/* 8003D84C 000394AC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003D850 000394B0  41 82 00 74 */	beq lbl_8003D8C4
/* 8003D854 000394B4  40 80 00 14 */	bge lbl_8003D868
/* 8003D858 000394B8  2C 04 00 00 */	cmpwi r4, 0
/* 8003D85C 000394BC  41 82 00 18 */	beq lbl_8003D874
/* 8003D860 000394C0  40 80 00 48 */	bge lbl_8003D8A8
/* 8003D864 000394C4  48 00 01 7C */	b lbl_8003D9E0
lbl_8003D868:
/* 8003D868 000394C8  2C 04 00 04 */	cmpwi r4, 4
/* 8003D86C 000394CC  40 80 01 74 */	bge lbl_8003D9E0
/* 8003D870 000394D0  48 00 00 70 */	b lbl_8003D8E0
lbl_8003D874:
/* 8003D874 000394D4  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D878 000394D8  54 00 04 63 */	rlwinm. r0, r0, 0, 0x11, 0x11
/* 8003D87C 000394DC  41 82 01 64 */	beq lbl_8003D9E0
/* 8003D880 000394E0  80 83 0C 04 */	lwz r4, 0xc04(r3)
/* 8003D884 000394E4  2C 04 00 00 */	cmpwi r4, 0
/* 8003D888 000394E8  41 82 00 10 */	beq lbl_8003D898
/* 8003D88C 000394EC  A0 04 00 DC */	lhz r0, 0xdc(r4)
/* 8003D890 000394F0  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8003D894 000394F4  B0 04 00 DC */	sth r0, 0xdc(r4)
lbl_8003D898:
/* 8003D898 000394F8  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D89C 000394FC  54 00 04 A0 */	rlwinm r0, r0, 0, 0x12, 0x10
/* 8003D8A0 00039500  90 03 00 00 */	stw r0, 0(r3)
/* 8003D8A4 00039504  48 00 00 A8 */	b lbl_8003D94C
lbl_8003D8A8:
/* 8003D8A8 00039508  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D8AC 0003950C  54 00 03 19 */	rlwinm. r0, r0, 0, 0xc, 0xc
/* 8003D8B0 00039510  41 82 01 30 */	beq lbl_8003D9E0
/* 8003D8B4 00039514  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D8B8 00039518  54 00 03 56 */	rlwinm r0, r0, 0, 0xd, 0xb
/* 8003D8BC 0003951C  90 03 00 00 */	stw r0, 0(r3)
/* 8003D8C0 00039520  48 00 00 8C */	b lbl_8003D94C
lbl_8003D8C4:
/* 8003D8C4 00039524  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D8C8 00039528  54 00 02 D7 */	rlwinm. r0, r0, 0, 0xb, 0xb
/* 8003D8CC 0003952C  41 82 01 14 */	beq lbl_8003D9E0
/* 8003D8D0 00039530  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D8D4 00039534  54 00 03 14 */	rlwinm r0, r0, 0, 0xc, 0xa
/* 8003D8D8 00039538  90 03 00 00 */	stw r0, 0(r3)
/* 8003D8DC 0003953C  48 00 00 70 */	b lbl_8003D94C
lbl_8003D8E0:
/* 8003D8E0 00039540  80 03 00 00 */	lwz r0, 0(r3)
/* 8003D8E4 00039544  54 00 04 A5 */	rlwinm. r0, r0, 0, 0x12, 0x12
/* 8003D8E8 00039548  41 82 00 F8 */	beq lbl_8003D9E0
/* 8003D8EC 0003954C  38 80 00 15 */	li r4, 0x15
/* 8003D8F0 00039550  4B FF E9 6D */	bl func_8003C25C
/* 8003D8F4 00039554  80 1E 0C 04 */	lwz r0, 0xc04(r30)
/* 8003D8F8 00039558  7C 7D 1B 78 */	mr r29, r3
/* 8003D8FC 0003955C  2C 00 00 00 */	cmpwi r0, 0
/* 8003D900 00039560  41 82 00 38 */	beq lbl_8003D938
/* 8003D904 00039564  7C 03 03 78 */	mr r3, r0
/* 8003D908 00039568  48 1B 7F F5 */	bl func_801F58FC
/* 8003D90C 0003956C  57 A4 04 3E */	clrlwi r4, r29, 0x10
/* 8003D910 00039570  28 04 00 FF */	cmplwi r4, 0xff
/* 8003D914 00039574  40 80 00 24 */	bge lbl_8003D938
/* 8003D918 00039578  80 7E 0C 04 */	lwz r3, 0xc04(r30)
/* 8003D91C 0003957C  38 A0 00 00 */	li r5, 0
/* 8003D920 00039580  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D924 00039584  38 C0 00 00 */	li r6, 0
/* 8003D928 00039588  C0 42 82 30 */	lfs f2, lbl_80640830-_SDA2_BASE_(r2)
/* 8003D92C 0003958C  38 E0 00 00 */	li r7, 0
/* 8003D930 00039590  39 00 00 00 */	li r8, 0
/* 8003D934 00039594  48 1B 74 C1 */	bl func_801F4DF4
lbl_8003D938:
/* 8003D938 00039598  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003D93C 0003959C  54 00 04 E2 */	rlwinm r0, r0, 0, 0x13, 0x11
/* 8003D940 000395A0  90 1E 00 00 */	stw r0, 0(r30)
/* 8003D944 000395A4  48 00 00 08 */	b lbl_8003D94C
/* 8003D948 000395A8  48 00 00 98 */	b lbl_8003D9E0
lbl_8003D94C:
/* 8003D94C 000395AC  57 E0 10 3A */	slwi r0, r31, 2
/* 8003D950 000395B0  7F BE 02 14 */	add r29, r30, r0
/* 8003D954 000395B4  80 7D 0C 90 */	lwz r3, 0xc90(r29)
/* 8003D958 000395B8  2C 03 00 00 */	cmpwi r3, 0
/* 8003D95C 000395BC  41 82 00 40 */	beq lbl_8003D99C
/* 8003D960 000395C0  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8003D964 000395C4  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003D968 000395C8  60 00 00 04 */	ori r0, r0, 4
/* 8003D96C 000395CC  90 03 01 04 */	stw r0, 0x104(r3)
/* 8003D970 000395D0  D0 03 01 10 */	stfs f0, 0x110(r3)
/* 8003D974 000395D4  80 7D 0C 90 */	lwz r3, 0xc90(r29)
/* 8003D978 000395D8  2C 03 00 00 */	cmpwi r3, 0
/* 8003D97C 000395DC  41 82 00 18 */	beq lbl_8003D994
/* 8003D980 000395E0  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8003D984 000395E4  38 80 00 01 */	li r4, 1
/* 8003D988 000395E8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003D98C 000395EC  7D 89 03 A6 */	mtctr r12
/* 8003D990 000395F0  4E 80 04 21 */	bctrl
lbl_8003D994:
/* 8003D994 000395F4  38 00 00 00 */	li r0, 0
/* 8003D998 000395F8  90 1D 0C 90 */	stw r0, 0xc90(r29)
lbl_8003D99C:
/* 8003D99C 000395FC  38 1F FF FF */	addi r0, r31, -1
/* 8003D9A0 00039600  28 00 00 01 */	cmplwi r0, 1
/* 8003D9A4 00039604  41 81 00 3C */	bgt lbl_8003D9E0
/* 8003D9A8 00039608  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003D9AC 0003960C  7F C3 F3 78 */	mr r3, r30
/* 8003D9B0 00039610  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 8003D9B4 00039614  7C 00 00 34 */	cntlzw r0, r0
/* 8003D9B8 00039618  54 04 D9 7E */	srwi r4, r0, 5
/* 8003D9BC 0003961C  4B FF A3 71 */	bl func_80037D2C
/* 8003D9C0 00039620  80 1E 00 00 */	lwz r0, 0(r30)
/* 8003D9C4 00039624  7F C3 F3 78 */	mr r3, r30
/* 8003D9C8 00039628  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 8003D9CC 0003962C  7C 00 00 34 */	cntlzw r0, r0
/* 8003D9D0 00039630  54 04 D9 7E */	srwi r4, r0, 5
/* 8003D9D4 00039634  4B FF A3 59 */	bl func_80037D2C
/* 8003D9D8 00039638  7F C3 F3 78 */	mr r3, r30
/* 8003D9DC 0003963C  4B FF A6 45 */	bl func_80038020
lbl_8003D9E0:
/* 8003D9E0 00039640  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003D9E4 00039644  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003D9E8 00039648  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003D9EC 0003964C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003D9F0 00039650  7C 08 03 A6 */	mtlr r0
/* 8003D9F4 00039654  38 21 00 20 */	addi r1, r1, 0x20
/* 8003D9F8 00039658  4E 80 00 20 */	blr

.global func_8003D9FC
func_8003D9FC:
/* 8003D9FC 0003965C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003DA00 00039660  7C 08 02 A6 */	mflr r0
/* 8003DA04 00039664  2C 04 00 00 */	cmpwi r4, 0
/* 8003DA08 00039668  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003DA0C 0003966C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003DA10 00039670  93 C1 00 08 */	stw r30, 8(r1)
/* 8003DA14 00039674  7C 7E 1B 78 */	mr r30, r3
/* 8003DA18 00039678  41 82 00 20 */	beq lbl_8003DA38
/* 8003DA1C 0003967C  2C 05 00 00 */	cmpwi r5, 0
/* 8003DA20 00039680  41 82 00 18 */	beq lbl_8003DA38
/* 8003DA24 00039684  2C 06 00 00 */	cmpwi r6, 0
/* 8003DA28 00039688  41 82 00 10 */	beq lbl_8003DA38
/* 8003DA2C 0003968C  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003DA30 00039690  2C 00 00 00 */	cmpwi r0, 0
/* 8003DA34 00039694  40 82 00 0C */	bne lbl_8003DA40
lbl_8003DA38:
/* 8003DA38 00039698  38 60 00 00 */	li r3, 0
/* 8003DA3C 0003969C  48 00 00 D0 */	b lbl_8003DB0C
lbl_8003DA40:
/* 8003DA40 000396A0  7C 83 23 78 */	mr r3, r4
/* 8003DA44 000396A4  7C A4 2B 78 */	mr r4, r5
/* 8003DA48 000396A8  7C C5 33 78 */	mr r5, r6
/* 8003DA4C 000396AC  7C E6 3B 78 */	mr r6, r7
/* 8003DA50 000396B0  38 E0 00 01 */	li r7, 1
/* 8003DA54 000396B4  48 1C 30 D9 */	bl func_80200B2C
/* 8003DA58 000396B8  2C 03 00 00 */	cmpwi r3, 0
/* 8003DA5C 000396BC  7C 7F 1B 78 */	mr r31, r3
/* 8003DA60 000396C0  40 82 00 0C */	bne lbl_8003DA6C
/* 8003DA64 000396C4  38 60 00 00 */	li r3, 0
/* 8003DA68 000396C8  48 00 00 A4 */	b lbl_8003DB0C
lbl_8003DA6C:
/* 8003DA6C 000396CC  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 8003DA70 000396D0  48 1C 31 E5 */	bl func_80200C54
/* 8003DA74 000396D4  A0 1E 05 0C */	lhz r0, 0x50c(r30)
/* 8003DA78 000396D8  28 00 00 02 */	cmplwi r0, 2
/* 8003DA7C 000396DC  40 82 00 30 */	bne lbl_8003DAAC
/* 8003DA80 000396E0  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003DA84 000396E4  A0 9E 05 1C */	lhz r4, 0x51c(r30)
/* 8003DA88 000396E8  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8003DA8C 000396EC  38 63 00 28 */	addi r3, r3, 0x28
/* 8003DA90 000396F0  48 35 83 71 */	bl func_80395E00
/* 8003DA94 000396F4  2C 03 00 00 */	cmpwi r3, 0
/* 8003DA98 000396F8  41 82 00 14 */	beq lbl_8003DAAC
/* 8003DA9C 000396FC  7F E4 FB 78 */	mr r4, r31
/* 8003DAA0 00039700  38 7E 05 24 */	addi r3, r30, 0x524
/* 8003DAA4 00039704  38 A0 00 01 */	li r5, 1
/* 8003DAA8 00039708  48 00 22 D1 */	bl func_8003FD78
lbl_8003DAAC:
/* 8003DAAC 0003970C  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003DAB0 00039710  48 1E 6A D9 */	bl func_80224588
/* 8003DAB4 00039714  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003DAB8 00039718  48 1E 6A D1 */	bl func_80224588
/* 8003DABC 0003971C  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 8003DAC0 00039720  7F E3 FB 78 */	mr r3, r31
/* 8003DAC4 00039724  48 1C 32 45 */	bl func_80200D08
/* 8003DAC8 00039728  A0 1E 05 0C */	lhz r0, 0x50c(r30)
/* 8003DACC 0003972C  28 00 00 02 */	cmplwi r0, 2
/* 8003DAD0 00039730  40 82 00 30 */	bne lbl_8003DB00
/* 8003DAD4 00039734  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003DAD8 00039738  A0 9E 05 1C */	lhz r4, 0x51c(r30)
/* 8003DADC 0003973C  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8003DAE0 00039740  38 63 00 28 */	addi r3, r3, 0x28
/* 8003DAE4 00039744  48 35 83 1D */	bl func_80395E00
/* 8003DAE8 00039748  2C 03 00 00 */	cmpwi r3, 0
/* 8003DAEC 0003974C  41 82 00 14 */	beq lbl_8003DB00
/* 8003DAF0 00039750  7F E4 FB 78 */	mr r4, r31
/* 8003DAF4 00039754  38 7E 05 24 */	addi r3, r30, 0x524
/* 8003DAF8 00039758  38 A0 00 00 */	li r5, 0
/* 8003DAFC 0003975C  48 00 22 7D */	bl func_8003FD78
lbl_8003DB00:
/* 8003DB00 00039760  7F E3 FB 78 */	mr r3, r31
/* 8003DB04 00039764  48 1C 32 75 */	bl func_80200D78
/* 8003DB08 00039768  38 60 00 01 */	li r3, 1
lbl_8003DB0C:
/* 8003DB0C 0003976C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003DB10 00039770  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003DB14 00039774  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003DB18 00039778  7C 08 03 A6 */	mtlr r0
/* 8003DB1C 0003977C  38 21 00 10 */	addi r1, r1, 0x10
/* 8003DB20 00039780  4E 80 00 20 */	blr

.global func_8003DB24
func_8003DB24:
/* 8003DB24 00039784  3C 80 19 9C */	lis r4, 0x199C0A00@ha
/* 8003DB28 00039788  38 63 0D 04 */	addi r3, r3, 0xd04
/* 8003DB2C 0003978C  38 84 0A 00 */	addi r4, r4, 0x199C0A00@l
/* 8003DB30 00039790  4B FF 95 FC */	b lbl_8003712C

.global WorldDarkening_Fade
WorldDarkening_Fade:
/* 8003DB34 00039794  D0 23 0D 08 */	stfs f1, 0xd08(r3)
/* 8003DB38 00039798  D0 43 0D 0C */	stfs f2, 0xd0c(r3)
/* 8003DB3C 0003979C  4E 80 00 20 */	blr

.global func_8003DB40
func_8003DB40:
/* 8003DB40 000397A0  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 8003DB44 000397A4  7C 08 02 A6 */	mflr r0
/* 8003DB48 000397A8  90 01 00 84 */	stw r0, 0x84(r1)
/* 8003DB4C 000397AC  DB E1 00 70 */	stfd f31, 0x70(r1)
/* 8003DB50 000397B0  F3 E1 00 78 */	psq_st f31, 120(r1), 0, qr0
/* 8003DB54 000397B4  DB C1 00 60 */	stfd f30, 0x60(r1)
/* 8003DB58 000397B8  F3 C1 00 68 */	psq_st f30, 104(r1), 0, qr0
/* 8003DB5C 000397BC  DB A1 00 50 */	stfd f29, 0x50(r1)
/* 8003DB60 000397C0  F3 A1 00 58 */	psq_st f29, 88(r1), 0, qr0
/* 8003DB64 000397C4  39 61 00 50 */	addi r11, r1, 0x50
/* 8003DB68 000397C8  48 18 95 B9 */	bl _savegpr_25
/* 8003DB6C 000397CC  88 03 0D 04 */	lbz r0, 0xd04(r3)
/* 8003DB70 000397D0  FF A0 08 90 */	fmr f29, f1
/* 8003DB74 000397D4  7C 7B 1B 78 */	mr r27, r3
/* 8003DB78 000397D8  2C 00 00 00 */	cmpwi r0, 0
/* 8003DB7C 000397DC  41 82 01 E4 */	beq lbl_8003DD60
/* 8003DB80 000397E0  80 83 0C 04 */	lwz r4, 0xc04(r3)
/* 8003DB84 000397E4  2C 04 00 00 */	cmpwi r4, 0
/* 8003DB88 000397E8  41 82 01 CC */	beq lbl_8003DD54
/* 8003DB8C 000397EC  C0 23 0D 10 */	lfs f1, 0xd10(r3)
/* 8003DB90 000397F0  C0 03 0D 0C */	lfs f0, 0xd0c(r3)
/* 8003DB94 000397F4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8003DB98 000397F8  4C 41 13 82 */	cror 2, 1, 2
/* 8003DB9C 000397FC  40 82 01 B8 */	bne lbl_8003DD54
/* 8003DBA0 00039800  A3 E4 00 DE */	lhz r31, 0xde(r4)
/* 8003DBA4 00039804  7F 7E DB 78 */	mr r30, r27
/* 8003DBA8 00039808  C3 E2 82 20 */	lfs f31, lbl_80640820-_SDA2_BASE_(r2)
/* 8003DBAC 0003980C  3B A0 00 00 */	li r29, 0
/* 8003DBB0 00039810  C3 C2 82 40 */	lfs f30, lbl_80640840-_SDA2_BASE_(r2)
/* 8003DBB4 00039814  3B 80 00 00 */	li r28, 0
/* 8003DBB8 00039818  3B 40 00 00 */	li r26, 0
/* 8003DBBC 0003981C  48 00 01 90 */	b lbl_8003DD4C
lbl_8003DBC0:
/* 8003DBC0 00039820  80 1E 0D 18 */	lwz r0, 0xd18(r30)
/* 8003DBC4 00039824  2C 00 00 00 */	cmpwi r0, 0
/* 8003DBC8 00039828  41 82 01 7C */	beq lbl_8003DD44
/* 8003DBCC 0003982C  80 7B 0C 04 */	lwz r3, 0xc04(r27)
/* 8003DBD0 00039830  80 83 00 08 */	lwz r4, 8(r3)
/* 8003DBD4 00039834  2C 04 00 00 */	cmpwi r4, 0
/* 8003DBD8 00039838  40 82 00 0C */	bne lbl_8003DBE4
/* 8003DBDC 0003983C  38 60 00 00 */	li r3, 0
/* 8003DBE0 00039840  48 00 00 24 */	b lbl_8003DC04
lbl_8003DBE4:
/* 8003DBE4 00039844  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 8003DBE8 00039848  57 83 04 3E */	clrlwi r3, r28, 0x10
/* 8003DBEC 0003984C  7C 03 00 40 */	cmplw r3, r0
/* 8003DBF0 00039850  41 80 00 0C */	blt lbl_8003DBFC
/* 8003DBF4 00039854  38 60 00 00 */	li r3, 0
/* 8003DBF8 00039858  48 00 00 0C */	b lbl_8003DC04
lbl_8003DBFC:
/* 8003DBFC 0003985C  57 80 13 BA */	rlwinm r0, r28, 2, 0xe, 0x1d
/* 8003DC00 00039860  7C 64 00 2E */	lwzx r3, r4, r0
lbl_8003DC04:
/* 8003DC04 00039864  C0 43 00 EC */	lfs f2, 0xec(r3)
/* 8003DC08 00039868  C0 1B 0D 08 */	lfs f0, 0xd08(r27)
/* 8003DC0C 0003986C  C0 63 00 DC */	lfs f3, 0xdc(r3)
/* 8003DC10 00039870  C0 23 00 FC */	lfs f1, 0xfc(r3)
/* 8003DC14 00039874  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8003DC18 00039878  D0 61 00 24 */	stfs f3, 0x24(r1)
/* 8003DC1C 0003987C  D0 41 00 28 */	stfs f2, 0x28(r1)
/* 8003DC20 00039880  D0 21 00 2C */	stfs f1, 0x2c(r1)
/* 8003DC24 00039884  4C 40 13 82 */	cror 2, 0, 2
/* 8003DC28 00039888  40 82 01 1C */	bne lbl_8003DD44
/* 8003DC2C 0003988C  FC 02 F0 40 */	fcmpo cr0, f2, f30
/* 8003DC30 00039890  40 81 01 14 */	ble lbl_8003DD44
/* 8003DC34 00039894  D3 E1 00 28 */	stfs f31, 0x28(r1)
/* 8003DC38 00039898  7F 63 DB 78 */	mr r3, r27
/* 8003DC3C 0003989C  4B FF BA 99 */	bl func_800396D4
/* 8003DC40 000398A0  80 1B 0D 14 */	lwz r0, 0xd14(r27)
/* 8003DC44 000398A4  7C 64 1B 78 */	mr r4, r3
/* 8003DC48 000398A8  C0 22 82 30 */	lfs f1, lbl_80640830-_SDA2_BASE_(r2)
/* 8003DC4C 000398AC  54 00 10 3A */	slwi r0, r0, 2
/* 8003DC50 000398B0  7C 7B 02 14 */	add r3, r27, r0
/* 8003DC54 000398B4  80 63 0D 18 */	lwz r3, 0xd18(r3)
/* 8003DC58 000398B8  48 01 06 FD */	bl func_8004E354
/* 8003DC5C 000398BC  7F 64 DB 78 */	mr r4, r27
/* 8003DC60 000398C0  38 61 00 18 */	addi r3, r1, 0x18
/* 8003DC64 000398C4  4B FF AE 31 */	bl func_80038A94
/* 8003DC68 000398C8  80 1B 0D 14 */	lwz r0, 0xd14(r27)
/* 8003DC6C 000398CC  54 00 10 3A */	slwi r0, r0, 2
/* 8003DC70 000398D0  7C 7B 02 14 */	add r3, r27, r0
/* 8003DC74 000398D4  83 23 0D 18 */	lwz r25, 0xd18(r3)
/* 8003DC78 000398D8  80 19 00 40 */	lwz r0, 0x40(r25)
/* 8003DC7C 000398DC  2C 00 00 00 */	cmpwi r0, 0
/* 8003DC80 000398E0  41 82 00 48 */	beq lbl_8003DCC8
/* 8003DC84 000398E4  38 61 00 08 */	addi r3, r1, 8
/* 8003DC88 000398E8  38 81 00 18 */	addi r4, r1, 0x18
/* 8003DC8C 000398EC  48 1E 5A 35 */	bl func_802236C0
/* 8003DC90 000398F0  80 79 00 40 */	lwz r3, 0x40(r25)
/* 8003DC94 000398F4  38 80 00 01 */	li r4, 1
/* 8003DC98 000398F8  C0 01 00 08 */	lfs f0, 8(r1)
/* 8003DC9C 000398FC  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 8003DCA0 00039900  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8003DCA4 00039904  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 8003DCA8 00039908  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8003DCAC 0003990C  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 8003DCB0 00039910  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 8003DCB4 00039914  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 8003DCB8 00039918  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 8003DCBC 0003991C  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 8003DCC0 00039920  B0 03 00 10 */	sth r0, 0x10(r3)
/* 8003DCC4 00039924  48 1B 49 F5 */	bl func_801F26B8
lbl_8003DCC8:
/* 8003DCC8 00039928  80 1B 0D 14 */	lwz r0, 0xd14(r27)
/* 8003DCCC 0003992C  54 00 10 3A */	slwi r0, r0, 2
/* 8003DCD0 00039930  7C 7B 02 14 */	add r3, r27, r0
/* 8003DCD4 00039934  80 63 0D 18 */	lwz r3, 0xd18(r3)
/* 8003DCD8 00039938  80 63 00 40 */	lwz r3, 0x40(r3)
/* 8003DCDC 0003993C  2C 03 00 00 */	cmpwi r3, 0
/* 8003DCE0 00039940  41 82 00 24 */	beq lbl_8003DD04
/* 8003DCE4 00039944  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 8003DCE8 00039948  38 80 00 01 */	li r4, 1
/* 8003DCEC 0003994C  C0 21 00 28 */	lfs f1, 0x28(r1)
/* 8003DCF0 00039950  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 8003DCF4 00039954  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 8003DCF8 00039958  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 8003DCFC 0003995C  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8003DD00 00039960  48 1B 49 B9 */	bl func_801F26B8
lbl_8003DD04:
/* 8003DD04 00039964  80 1B 0D 14 */	lwz r0, 0xd14(r27)
/* 8003DD08 00039968  C0 22 82 20 */	lfs f1, lbl_80640820-_SDA2_BASE_(r2)
/* 8003DD0C 0003996C  54 00 10 3A */	slwi r0, r0, 2
/* 8003DD10 00039970  7C 7B 02 14 */	add r3, r27, r0
/* 8003DD14 00039974  80 63 0D 18 */	lwz r3, 0xd18(r3)
/* 8003DD18 00039978  48 01 0A B1 */	bl func_8004E7C8
/* 8003DD1C 0003997C  80 7B 0D 14 */	lwz r3, 0xd14(r27)
/* 8003DD20 00039980  38 03 00 01 */	addi r0, r3, 1
/* 8003DD24 00039984  2C 00 00 06 */	cmpwi r0, 6
/* 8003DD28 00039988  90 1B 0D 14 */	stw r0, 0xd14(r27)
/* 8003DD2C 0003998C  41 80 00 08 */	blt lbl_8003DD34
/* 8003DD30 00039990  93 5B 0D 14 */	stw r26, 0xd14(r27)
lbl_8003DD34:
/* 8003DD34 00039994  3B BD 00 01 */	addi r29, r29, 1
/* 8003DD38 00039998  D3 FB 0D 10 */	stfs f31, 0xd10(r27)
/* 8003DD3C 0003999C  2C 1D 00 02 */	cmpwi r29, 2
/* 8003DD40 000399A0  40 80 00 20 */	bge lbl_8003DD60
lbl_8003DD44:
/* 8003DD44 000399A4  3B DE 00 04 */	addi r30, r30, 4
/* 8003DD48 000399A8  3B 9C 00 01 */	addi r28, r28, 1
lbl_8003DD4C:
/* 8003DD4C 000399AC  7C 1C F8 00 */	cmpw r28, r31
/* 8003DD50 000399B0  41 80 FE 70 */	blt lbl_8003DBC0
lbl_8003DD54:
/* 8003DD54 000399B4  C0 1B 0D 10 */	lfs f0, 0xd10(r27)
/* 8003DD58 000399B8  EC 00 E8 2A */	fadds f0, f0, f29
/* 8003DD5C 000399BC  D0 1B 0D 10 */	stfs f0, 0xd10(r27)
lbl_8003DD60:
/* 8003DD60 000399C0  E3 E1 00 78 */	psq_l f31, 120(r1), 0, qr0
/* 8003DD64 000399C4  CB E1 00 70 */	lfd f31, 0x70(r1)
/* 8003DD68 000399C8  E3 C1 00 68 */	psq_l f30, 104(r1), 0, qr0
/* 8003DD6C 000399CC  CB C1 00 60 */	lfd f30, 0x60(r1)
/* 8003DD70 000399D0  E3 A1 00 58 */	psq_l f29, 88(r1), 0, qr0
/* 8003DD74 000399D4  39 61 00 50 */	addi r11, r1, 0x50
/* 8003DD78 000399D8  CB A1 00 50 */	lfd f29, 0x50(r1)
/* 8003DD7C 000399DC  48 18 93 F1 */	bl _restgpr_25
/* 8003DD80 000399E0  80 01 00 84 */	lwz r0, 0x84(r1)
/* 8003DD84 000399E4  7C 08 03 A6 */	mtlr r0
/* 8003DD88 000399E8  38 21 00 80 */	addi r1, r1, 0x80
/* 8003DD8C 000399EC  4E 80 00 20 */	blr

.global func_8003DD90
func_8003DD90:
/* 8003DD90 000399F0  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003DD94 000399F4  38 00 00 01 */	li r0, 1
/* 8003DD98 000399F8  98 03 0D 04 */	stb r0, 0xd04(r3)
/* 8003DD9C 000399FC  D0 03 0D 10 */	stfs f0, 0xd10(r3)
/* 8003DDA0 00039A00  4E 80 00 20 */	blr

.global func_8003DDA4
func_8003DDA4:
/* 8003DDA4 00039A04  C0 02 82 20 */	lfs f0, lbl_80640820-_SDA2_BASE_(r2)
/* 8003DDA8 00039A08  38 00 00 00 */	li r0, 0
/* 8003DDAC 00039A0C  2C 04 00 00 */	cmpwi r4, 0
/* 8003DDB0 00039A10  98 03 0D 04 */	stb r0, 0xd04(r3)
/* 8003DDB4 00039A14  D0 03 0D 10 */	stfs f0, 0xd10(r3)
/* 8003DDB8 00039A18  4D 82 00 20 */	beqlr
/* 8003DDBC 00039A1C  38 00 00 02 */	li r0, 2
/* 8003DDC0 00039A20  38 A0 00 00 */	li r5, 0
/* 8003DDC4 00039A24  7C 09 03 A6 */	mtctr r0
lbl_8003DDC8:
/* 8003DDC8 00039A28  80 83 0D 18 */	lwz r4, 0xd18(r3)
/* 8003DDCC 00039A2C  2C 04 00 00 */	cmpwi r4, 0
/* 8003DDD0 00039A30  41 82 00 20 */	beq lbl_8003DDF0
/* 8003DDD4 00039A34  80 84 00 40 */	lwz r4, 0x40(r4)
/* 8003DDD8 00039A38  2C 04 00 00 */	cmpwi r4, 0
/* 8003DDDC 00039A3C  41 82 00 14 */	beq lbl_8003DDF0
/* 8003DDE0 00039A40  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8003DDE4 00039A44  60 00 00 04 */	ori r0, r0, 4
/* 8003DDE8 00039A48  90 04 01 04 */	stw r0, 0x104(r4)
/* 8003DDEC 00039A4C  D0 04 01 10 */	stfs f0, 0x110(r4)
lbl_8003DDF0:
/* 8003DDF0 00039A50  80 83 0D 1C */	lwz r4, 0xd1c(r3)
/* 8003DDF4 00039A54  2C 04 00 00 */	cmpwi r4, 0
/* 8003DDF8 00039A58  41 82 00 20 */	beq lbl_8003DE18
/* 8003DDFC 00039A5C  80 84 00 40 */	lwz r4, 0x40(r4)
/* 8003DE00 00039A60  2C 04 00 00 */	cmpwi r4, 0
/* 8003DE04 00039A64  41 82 00 14 */	beq lbl_8003DE18
/* 8003DE08 00039A68  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8003DE0C 00039A6C  60 00 00 04 */	ori r0, r0, 4
/* 8003DE10 00039A70  90 04 01 04 */	stw r0, 0x104(r4)
/* 8003DE14 00039A74  D0 04 01 10 */	stfs f0, 0x110(r4)
lbl_8003DE18:
/* 8003DE18 00039A78  80 83 0D 20 */	lwz r4, 0xd20(r3)
/* 8003DE1C 00039A7C  2C 04 00 00 */	cmpwi r4, 0
/* 8003DE20 00039A80  41 82 00 20 */	beq lbl_8003DE40
/* 8003DE24 00039A84  80 84 00 40 */	lwz r4, 0x40(r4)
/* 8003DE28 00039A88  2C 04 00 00 */	cmpwi r4, 0
/* 8003DE2C 00039A8C  41 82 00 14 */	beq lbl_8003DE40
/* 8003DE30 00039A90  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8003DE34 00039A94  60 00 00 04 */	ori r0, r0, 4
/* 8003DE38 00039A98  90 04 01 04 */	stw r0, 0x104(r4)
/* 8003DE3C 00039A9C  D0 04 01 10 */	stfs f0, 0x110(r4)
lbl_8003DE40:
/* 8003DE40 00039AA0  38 63 00 0C */	addi r3, r3, 0xc
/* 8003DE44 00039AA4  38 A5 00 02 */	addi r5, r5, 2
/* 8003DE48 00039AA8  42 00 FF 80 */	bdnz lbl_8003DDC8
/* 8003DE4C 00039AAC  4E 80 00 20 */	blr

.global func_8003DE50
func_8003DE50:
/* 8003DE50 00039AB0  88 63 0D 04 */	lbz r3, 0xd04(r3)
/* 8003DE54 00039AB4  4E 80 00 20 */	blr

.global func_8003DE58
func_8003DE58:
/* 8003DE58 00039AB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003DE5C 00039ABC  7C 08 02 A6 */	mflr r0
/* 8003DE60 00039AC0  38 80 00 01 */	li r4, 1
/* 8003DE64 00039AC4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003DE68 00039AC8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003DE6C 00039ACC  7C 7F 1B 78 */	mr r31, r3
/* 8003DE70 00039AD0  4B FF FF 35 */	bl func_8003DDA4
/* 8003DE74 00039AD4  38 7F 0D 04 */	addi r3, r31, 0xd04
/* 8003DE78 00039AD8  4B FF 93 5D */	bl func_800371D4
/* 8003DE7C 00039ADC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003DE80 00039AE0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003DE84 00039AE4  7C 08 03 A6 */	mtlr r0
/* 8003DE88 00039AE8  38 21 00 10 */	addi r1, r1, 0x10
/* 8003DE8C 00039AEC  4E 80 00 20 */	blr

.global func_8003DE90
func_8003DE90:
/* 8003DE90 00039AF0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003DE94 00039AF4  7C 08 02 A6 */	mflr r0
/* 8003DE98 00039AF8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003DE9C 00039AFC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003DEA0 00039B00  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003DEA4 00039B04  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003DEA8 00039B08  7C BD 2B 78 */	mr r29, r5
/* 8003DEAC 00039B0C  93 81 00 10 */	stw r28, 0x10(r1)
/* 8003DEB0 00039B10  7C 9C 23 78 */	mr r28, r4
/* 8003DEB4 00039B14  88 03 0D 04 */	lbz r0, 0xd04(r3)
/* 8003DEB8 00039B18  2C 00 00 00 */	cmpwi r0, 0
/* 8003DEBC 00039B1C  40 82 00 10 */	bne lbl_8003DECC
/* 8003DEC0 00039B20  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8003DEC4 00039B24  2C 00 00 00 */	cmpwi r0, 0
/* 8003DEC8 00039B28  41 82 00 34 */	beq lbl_8003DEFC
lbl_8003DECC:
/* 8003DECC 00039B2C  7C 7F 1B 78 */	mr r31, r3
/* 8003DED0 00039B30  3B C0 00 00 */	li r30, 0
lbl_8003DED4:
/* 8003DED4 00039B34  80 7F 0D 18 */	lwz r3, 0xd18(r31)
/* 8003DED8 00039B38  2C 03 00 00 */	cmpwi r3, 0
/* 8003DEDC 00039B3C  41 82 00 10 */	beq lbl_8003DEEC
/* 8003DEE0 00039B40  7F 84 E3 78 */	mr r4, r28
/* 8003DEE4 00039B44  7F A5 EB 78 */	mr r5, r29
/* 8003DEE8 00039B48  48 01 07 91 */	bl func_8004E678
lbl_8003DEEC:
/* 8003DEEC 00039B4C  3B DE 00 01 */	addi r30, r30, 1
/* 8003DEF0 00039B50  3B FF 00 04 */	addi r31, r31, 4
/* 8003DEF4 00039B54  2C 1E 00 06 */	cmpwi r30, 6
/* 8003DEF8 00039B58  41 80 FF DC */	blt lbl_8003DED4
lbl_8003DEFC:
/* 8003DEFC 00039B5C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003DF00 00039B60  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003DF04 00039B64  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003DF08 00039B68  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003DF0C 00039B6C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8003DF10 00039B70  7C 08 03 A6 */	mtlr r0
/* 8003DF14 00039B74  38 21 00 20 */	addi r1, r1, 0x20
/* 8003DF18 00039B78  4E 80 00 20 */	blr

.global func_8003DF1C
func_8003DF1C:
/* 8003DF1C 00039B7C  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8003DF20 00039B80  2C 03 00 00 */	cmpwi r3, 0
/* 8003DF24 00039B84  4D 82 00 20 */	beqlr
/* 8003DF28 00039B88  2C 04 00 00 */	cmpwi r4, 0
/* 8003DF2C 00039B8C  41 82 00 08 */	beq lbl_8003DF34
/* 8003DF30 00039B90  48 1B B8 14 */	b func_801F9744
lbl_8003DF34:
/* 8003DF34 00039B94  48 1B B8 D4 */	b func_801F9808
/* 8003DF38 00039B98  4E 80 00 20 */	blr

.global func_8003DF3C
func_8003DF3C:
/* 8003DF3C 00039B9C  80 63 0C 00 */	lwz r3, 0xc00(r3)
/* 8003DF40 00039BA0  2C 03 00 00 */	cmpwi r3, 0
/* 8003DF44 00039BA4  41 82 00 74 */	beq lbl_8003DFB8
/* 8003DF48 00039BA8  80 C3 00 04 */	lwz r6, 4(r3)
/* 8003DF4C 00039BAC  2C 06 00 00 */	cmpwi r6, 0
/* 8003DF50 00039BB0  40 82 00 0C */	bne lbl_8003DF5C
/* 8003DF54 00039BB4  38 60 00 00 */	li r3, 0
/* 8003DF58 00039BB8  48 00 00 24 */	b lbl_8003DF7C
lbl_8003DF5C:
/* 8003DF5C 00039BBC  80 63 00 00 */	lwz r3, 0(r3)
/* 8003DF60 00039BC0  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8003DF64 00039BC4  7C 04 00 40 */	cmplw r4, r0
/* 8003DF68 00039BC8  41 80 00 0C */	blt lbl_8003DF74
/* 8003DF6C 00039BCC  38 60 00 00 */	li r3, 0
/* 8003DF70 00039BD0  48 00 00 0C */	b lbl_8003DF7C
lbl_8003DF74:
/* 8003DF74 00039BD4  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 8003DF78 00039BD8  7C 66 00 2E */	lwzx r3, r6, r0
lbl_8003DF7C:
/* 8003DF7C 00039BDC  2C 03 00 00 */	cmpwi r3, 0
/* 8003DF80 00039BE0  41 82 00 38 */	beq lbl_8003DFB8
/* 8003DF84 00039BE4  80 83 00 08 */	lwz r4, 8(r3)
/* 8003DF88 00039BE8  2C 04 00 00 */	cmpwi r4, 0
/* 8003DF8C 00039BEC  40 82 00 0C */	bne lbl_8003DF98
/* 8003DF90 00039BF0  38 60 00 00 */	li r3, 0
/* 8003DF94 00039BF4  4E 80 00 20 */	blr
lbl_8003DF98:
/* 8003DF98 00039BF8  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 8003DF9C 00039BFC  7C 05 00 40 */	cmplw r5, r0
/* 8003DFA0 00039C00  41 80 00 0C */	blt lbl_8003DFAC
/* 8003DFA4 00039C04  38 60 00 00 */	li r3, 0
/* 8003DFA8 00039C08  4E 80 00 20 */	blr
lbl_8003DFAC:
/* 8003DFAC 00039C0C  54 A0 13 BA */	rlwinm r0, r5, 2, 0xe, 0x1d
/* 8003DFB0 00039C10  7C 64 00 2E */	lwzx r3, r4, r0
/* 8003DFB4 00039C14  4E 80 00 20 */	blr
lbl_8003DFB8:
/* 8003DFB8 00039C18  38 60 00 00 */	li r3, 0
/* 8003DFBC 00039C1C  4E 80 00 20 */	blr

.global func_8003DFC0
func_8003DFC0:
/* 8003DFC0 00039C20  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003DFC4 00039C24  7C 08 02 A6 */	mflr r0
/* 8003DFC8 00039C28  38 80 00 00 */	li r4, 0
/* 8003DFCC 00039C2C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003DFD0 00039C30  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003DFD4 00039C34  93 C1 00 08 */	stw r30, 8(r1)
/* 8003DFD8 00039C38  7C 7E 1B 78 */	mr r30, r3
/* 8003DFDC 00039C3C  4B FF E2 81 */	bl func_8003C25C
/* 8003DFE0 00039C40  54 7F 04 3E */	clrlwi r31, r3, 0x10
/* 8003DFE4 00039C44  7F C3 F3 78 */	mr r3, r30
/* 8003DFE8 00039C48  38 80 00 0A */	li r4, 0xa
/* 8003DFEC 00039C4C  4B FF E2 71 */	bl func_8003C25C
/* 8003DFF0 00039C50  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8003DFF4 00039C54  7C 60 F8 50 */	subf r3, r0, r31
/* 8003DFF8 00039C58  7C 1F 00 50 */	subf r0, r31, r0
/* 8003DFFC 00039C5C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E000 00039C60  7C 60 03 78 */	or r0, r3, r0
/* 8003E004 00039C64  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003E008 00039C68  54 03 0F FE */	srwi r3, r0, 0x1f
/* 8003E00C 00039C6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E010 00039C70  7C 08 03 A6 */	mtlr r0
/* 8003E014 00039C74  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E018 00039C78  4E 80 00 20 */	blr

.global func_8003E01C
func_8003E01C:
/* 8003E01C 00039C7C  38 A0 00 01 */	li r5, 1
/* 8003E020 00039C80  38 6D 97 B0 */	addi r3, r13, lbl_8063EA70-_SDA_BASE_
/* 8003E024 00039C84  38 80 00 04 */	li r4, 4
/* 8003E028 00039C88  38 00 00 00 */	li r0, 0
/* 8003E02C 00039C8C  98 AD 97 B0 */	stb r5, lbl_8063EA70-_SDA_BASE_(r13)
/* 8003E030 00039C90  B0 83 00 02 */	sth r4, 2(r3)
/* 8003E034 00039C94  98 03 00 04 */	stb r0, 4(r3)
/* 8003E038 00039C98  4E 80 00 20 */	blr

.global func_8003E03C
func_8003E03C:
/* 8003E03C 00039C9C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E040 00039CA0  7C 08 02 A6 */	mflr r0
/* 8003E044 00039CA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E048 00039CA8  80 6D 97 C0 */	lwz r3, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E04C 00039CAC  2C 03 00 00 */	cmpwi r3, 0
/* 8003E050 00039CB0  41 82 00 08 */	beq lbl_8003E058
/* 8003E054 00039CB4  48 19 CA 65 */	bl func_801DAAB8
lbl_8003E058:
/* 8003E058 00039CB8  38 60 00 90 */	li r3, 0x90
/* 8003E05C 00039CBC  48 19 C9 D5 */	bl func_801DAA30
/* 8003E060 00039CC0  2C 03 00 00 */	cmpwi r3, 0
/* 8003E064 00039CC4  41 82 00 08 */	beq lbl_8003E06C
/* 8003E068 00039CC8  48 00 00 FD */	bl func_8003E164
lbl_8003E06C:
/* 8003E06C 00039CCC  3C 80 80 04 */	lis r4, lbl_8003E124@ha
/* 8003E070 00039CD0  3C A0 80 04 */	lis r5, lbl_8003E158@ha
/* 8003E074 00039CD4  90 6D 97 C0 */	stw r3, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E078 00039CD8  38 84 E1 24 */	addi r4, r4, lbl_8003E124@l
/* 8003E07C 00039CDC  80 6D A4 B8 */	lwz r3, lbl_8063F778-_SDA_BASE_(r13)
/* 8003E080 00039CE0  38 A5 E1 58 */	addi r5, r5, lbl_8003E158@l
/* 8003E084 00039CE4  38 C0 00 03 */	li r6, 3
/* 8003E088 00039CE8  38 E0 00 0C */	li r7, 0xc
/* 8003E08C 00039CEC  48 20 0A CD */	bl func_8023EB58
/* 8003E090 00039CF0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E094 00039CF4  7C 08 03 A6 */	mtlr r0
/* 8003E098 00039CF8  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E09C 00039CFC  4E 80 00 20 */	blr

.global func_8003E0A0
func_8003E0A0:
/* 8003E0A0 00039D00  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003E0A4 00039D04  7C 08 02 A6 */	mflr r0
/* 8003E0A8 00039D08  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003E0AC 00039D0C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003E0B0 00039D10  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003E0B4 00039D14  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003E0B8 00039D18  80 0D 97 C0 */	lwz r0, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E0BC 00039D1C  2C 00 00 00 */	cmpwi r0, 0
/* 8003E0C0 00039D20  41 82 00 48 */	beq lbl_8003E108
/* 8003E0C4 00039D24  3B A0 00 00 */	li r29, 0
/* 8003E0C8 00039D28  3B C0 00 00 */	li r30, 0
/* 8003E0CC 00039D2C  3B E0 00 00 */	li r31, 0
lbl_8003E0D0:
/* 8003E0D0 00039D30  80 0D 97 C0 */	lwz r0, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E0D4 00039D34  7C 60 F2 14 */	add r3, r0, r30
/* 8003E0D8 00039D38  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8003E0DC 00039D3C  2C 03 00 00 */	cmpwi r3, 0
/* 8003E0E0 00039D40  41 82 00 18 */	beq lbl_8003E0F8
/* 8003E0E4 00039D44  38 80 00 01 */	li r4, 1
/* 8003E0E8 00039D48  4B FF 94 55 */	bl func_8003753C
/* 8003E0EC 00039D4C  80 0D 97 C0 */	lwz r0, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E0F0 00039D50  7C 60 F2 14 */	add r3, r0, r30
/* 8003E0F4 00039D54  93 E3 00 10 */	stw r31, 0x10(r3)
lbl_8003E0F8:
/* 8003E0F8 00039D58  3B BD 00 01 */	addi r29, r29, 1
/* 8003E0FC 00039D5C  3B DE 00 04 */	addi r30, r30, 4
/* 8003E100 00039D60  2C 1D 00 20 */	cmpwi r29, 0x20
/* 8003E104 00039D64  41 80 FF CC */	blt lbl_8003E0D0
lbl_8003E108:
/* 8003E108 00039D68  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003E10C 00039D6C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003E110 00039D70  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003E114 00039D74  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003E118 00039D78  7C 08 03 A6 */	mtlr r0
/* 8003E11C 00039D7C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003E120 00039D80  4E 80 00 20 */	blr
lbl_8003E124:
/* 8003E124 00039D84  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E128 00039D88  7C 08 02 A6 */	mflr r0
/* 8003E12C 00039D8C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E130 00039D90  80 0D 97 C0 */	lwz r0, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E134 00039D94  2C 00 00 00 */	cmpwi r0, 0
/* 8003E138 00039D98  41 82 00 10 */	beq lbl_8003E148
/* 8003E13C 00039D9C  4B FC 92 61 */	bl func_8000739C
/* 8003E140 00039DA0  80 6D 97 C0 */	lwz r3, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E144 00039DA4  48 00 03 75 */	bl func_8003E4B8
lbl_8003E148:
/* 8003E148 00039DA8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E14C 00039DAC  7C 08 03 A6 */	mtlr r0
/* 8003E150 00039DB0  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E154 00039DB4  4E 80 00 20 */	blr
lbl_8003E158:
/* 8003E158 00039DB8  4E 80 00 20 */	blr

.global func_8003E15C
func_8003E15C:
/* 8003E15C 00039DBC  80 6D 97 C0 */	lwz r3, lbl_8063EA80-_SDA_BASE_(r13)
/* 8003E160 00039DC0  4E 80 00 20 */	blr

.global func_8003E164
func_8003E164:
/* 8003E164 00039DC4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E168 00039DC8  7C 08 02 A6 */	mflr r0
/* 8003E16C 00039DCC  38 80 00 00 */	li r4, 0
/* 8003E170 00039DD0  38 A0 00 80 */	li r5, 0x80
/* 8003E174 00039DD4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E178 00039DD8  38 00 00 00 */	li r0, 0
/* 8003E17C 00039DDC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E180 00039DE0  7C 7F 1B 78 */	mr r31, r3
/* 8003E184 00039DE4  90 03 00 00 */	stw r0, 0(r3)
/* 8003E188 00039DE8  38 63 00 10 */	addi r3, r3, 0x10
/* 8003E18C 00039DEC  4B FC 5F 79 */	bl memset
/* 8003E190 00039DF0  3C 80 80 64 */	lis r4, lbl_8063CE34@ha
/* 8003E194 00039DF4  7F E3 FB 78 */	mr r3, r31
/* 8003E198 00039DF8  38 84 CE 34 */	addi r4, r4, lbl_8063CE34@l
/* 8003E19C 00039DFC  38 04 00 10 */	addi r0, r4, 0x10
/* 8003E1A0 00039E00  90 9F 00 04 */	stw r4, 4(r31)
/* 8003E1A4 00039E04  90 1F 00 08 */	stw r0, 8(r31)
/* 8003E1A8 00039E08  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E1AC 00039E0C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E1B0 00039E10  7C 08 03 A6 */	mtlr r0
/* 8003E1B4 00039E14  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E1B8 00039E18  4E 80 00 20 */	blr

.global func_8003E1BC
func_8003E1BC:
/* 8003E1BC 00039E1C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E1C0 00039E20  7C 08 02 A6 */	mflr r0
/* 8003E1C4 00039E24  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E1C8 00039E28  38 00 00 20 */	li r0, 0x20
/* 8003E1CC 00039E2C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E1D0 00039E30  3B E0 00 00 */	li r31, 0
/* 8003E1D4 00039E34  93 C1 00 08 */	stw r30, 8(r1)
/* 8003E1D8 00039E38  7C 7E 1B 78 */	mr r30, r3
/* 8003E1DC 00039E3C  7C 09 03 A6 */	mtctr r0
lbl_8003E1E0:
/* 8003E1E0 00039E40  80 03 00 10 */	lwz r0, 0x10(r3)
/* 8003E1E4 00039E44  2C 00 00 00 */	cmpwi r0, 0
/* 8003E1E8 00039E48  40 82 00 28 */	bne lbl_8003E210
/* 8003E1EC 00039E4C  38 60 0D F8 */	li r3, 0xdf8
/* 8003E1F0 00039E50  48 19 C8 41 */	bl func_801DAA30
/* 8003E1F4 00039E54  2C 03 00 00 */	cmpwi r3, 0
/* 8003E1F8 00039E58  41 82 00 08 */	beq lbl_8003E200
/* 8003E1FC 00039E5C  4B FF 90 89 */	bl func_80037284
lbl_8003E200:
/* 8003E200 00039E60  57 E0 10 3A */	slwi r0, r31, 2
/* 8003E204 00039E64  7C 9E 02 14 */	add r4, r30, r0
/* 8003E208 00039E68  90 64 00 10 */	stw r3, 0x10(r4)
/* 8003E20C 00039E6C  48 00 00 14 */	b lbl_8003E220
lbl_8003E210:
/* 8003E210 00039E70  38 63 00 04 */	addi r3, r3, 4
/* 8003E214 00039E74  3B FF 00 01 */	addi r31, r31, 1
/* 8003E218 00039E78  42 00 FF C8 */	bdnz lbl_8003E1E0
/* 8003E21C 00039E7C  38 60 00 00 */	li r3, 0
lbl_8003E220:
/* 8003E220 00039E80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E224 00039E84  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E228 00039E88  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003E22C 00039E8C  7C 08 03 A6 */	mtlr r0
/* 8003E230 00039E90  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E234 00039E94  4E 80 00 20 */	blr

.global func_8003E238
func_8003E238:
/* 8003E238 00039E98  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003E23C 00039E9C  7C 08 02 A6 */	mflr r0
/* 8003E240 00039EA0  2C 04 00 00 */	cmpwi r4, 0
/* 8003E244 00039EA4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003E248 00039EA8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003E24C 00039EAC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003E250 00039EB0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003E254 00039EB4  7C 7D 1B 78 */	mr r29, r3
/* 8003E258 00039EB8  41 82 00 80 */	beq lbl_8003E2D8
/* 8003E25C 00039EBC  38 00 00 20 */	li r0, 0x20
/* 8003E260 00039EC0  83 E4 0C 48 */	lwz r31, 0xc48(r4)
/* 8003E264 00039EC4  3B C0 00 00 */	li r30, 0
/* 8003E268 00039EC8  7C 09 03 A6 */	mtctr r0
lbl_8003E26C:
/* 8003E26C 00039ECC  80 03 00 10 */	lwz r0, 0x10(r3)
/* 8003E270 00039ED0  7C 00 20 40 */	cmplw r0, r4
/* 8003E274 00039ED4  40 82 00 58 */	bne lbl_8003E2CC
/* 8003E278 00039ED8  7C 83 23 78 */	mr r3, r4
/* 8003E27C 00039EDC  38 80 00 01 */	li r4, 1
/* 8003E280 00039EE0  4B FF 92 BD */	bl func_8003753C
/* 8003E284 00039EE4  57 C0 10 3A */	slwi r0, r30, 2
/* 8003E288 00039EE8  2C 1F 00 00 */	cmpwi r31, 0
/* 8003E28C 00039EEC  7C 7D 02 14 */	add r3, r29, r0
/* 8003E290 00039EF0  38 00 00 00 */	li r0, 0
/* 8003E294 00039EF4  90 03 00 10 */	stw r0, 0x10(r3)
/* 8003E298 00039EF8  41 82 00 40 */	beq lbl_8003E2D8
/* 8003E29C 00039EFC  28 1F 00 0C */	cmplwi r31, 0xc
/* 8003E2A0 00039F00  41 82 00 38 */	beq lbl_8003E2D8
/* 8003E2A4 00039F04  7F A3 EB 78 */	mr r3, r29
/* 8003E2A8 00039F08  7F E4 FB 78 */	mr r4, r31
/* 8003E2AC 00039F0C  48 00 00 49 */	bl func_8003E2F4
/* 8003E2B0 00039F10  2C 03 00 00 */	cmpwi r3, 0
/* 8003E2B4 00039F14  40 82 00 24 */	bne lbl_8003E2D8
/* 8003E2B8 00039F18  7F E3 FB 78 */	mr r3, r31
/* 8003E2BC 00039F1C  48 20 B5 D5 */	bl func_80249890
/* 8003E2C0 00039F20  7F E3 FB 78 */	mr r3, r31
/* 8003E2C4 00039F24  48 19 D3 B1 */	bl func_801DB674
/* 8003E2C8 00039F28  48 00 00 10 */	b lbl_8003E2D8
lbl_8003E2CC:
/* 8003E2CC 00039F2C  38 63 00 04 */	addi r3, r3, 4
/* 8003E2D0 00039F30  3B DE 00 01 */	addi r30, r30, 1
/* 8003E2D4 00039F34  42 00 FF 98 */	bdnz lbl_8003E26C
lbl_8003E2D8:
/* 8003E2D8 00039F38  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003E2DC 00039F3C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003E2E0 00039F40  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003E2E4 00039F44  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003E2E8 00039F48  7C 08 03 A6 */	mtlr r0
/* 8003E2EC 00039F4C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003E2F0 00039F50  4E 80 00 20 */	blr

.global func_8003E2F4
func_8003E2F4:
/* 8003E2F4 00039F54  38 00 00 08 */	li r0, 8
/* 8003E2F8 00039F58  38 C0 00 00 */	li r6, 0
/* 8003E2FC 00039F5C  38 E0 00 00 */	li r7, 0
/* 8003E300 00039F60  7C 09 03 A6 */	mtctr r0
lbl_8003E304:
/* 8003E304 00039F64  80 A3 00 10 */	lwz r5, 0x10(r3)
/* 8003E308 00039F68  2C 05 00 00 */	cmpwi r5, 0
/* 8003E30C 00039F6C  41 82 00 14 */	beq lbl_8003E320
/* 8003E310 00039F70  80 05 0C 48 */	lwz r0, 0xc48(r5)
/* 8003E314 00039F74  7C 04 00 40 */	cmplw r4, r0
/* 8003E318 00039F78  40 82 00 08 */	bne lbl_8003E320
/* 8003E31C 00039F7C  38 C6 00 01 */	addi r6, r6, 1
lbl_8003E320:
/* 8003E320 00039F80  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 8003E324 00039F84  2C 05 00 00 */	cmpwi r5, 0
/* 8003E328 00039F88  41 82 00 14 */	beq lbl_8003E33C
/* 8003E32C 00039F8C  80 05 0C 48 */	lwz r0, 0xc48(r5)
/* 8003E330 00039F90  7C 04 00 40 */	cmplw r4, r0
/* 8003E334 00039F94  40 82 00 08 */	bne lbl_8003E33C
/* 8003E338 00039F98  38 C6 00 01 */	addi r6, r6, 1
lbl_8003E33C:
/* 8003E33C 00039F9C  80 A3 00 18 */	lwz r5, 0x18(r3)
/* 8003E340 00039FA0  2C 05 00 00 */	cmpwi r5, 0
/* 8003E344 00039FA4  41 82 00 14 */	beq lbl_8003E358
/* 8003E348 00039FA8  80 05 0C 48 */	lwz r0, 0xc48(r5)
/* 8003E34C 00039FAC  7C 04 00 40 */	cmplw r4, r0
/* 8003E350 00039FB0  40 82 00 08 */	bne lbl_8003E358
/* 8003E354 00039FB4  38 C6 00 01 */	addi r6, r6, 1
lbl_8003E358:
/* 8003E358 00039FB8  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8003E35C 00039FBC  2C 05 00 00 */	cmpwi r5, 0
/* 8003E360 00039FC0  41 82 00 14 */	beq lbl_8003E374
/* 8003E364 00039FC4  80 05 0C 48 */	lwz r0, 0xc48(r5)
/* 8003E368 00039FC8  7C 04 00 40 */	cmplw r4, r0
/* 8003E36C 00039FCC  40 82 00 08 */	bne lbl_8003E374
/* 8003E370 00039FD0  38 C6 00 01 */	addi r6, r6, 1
lbl_8003E374:
/* 8003E374 00039FD4  38 63 00 10 */	addi r3, r3, 0x10
/* 8003E378 00039FD8  38 E7 00 03 */	addi r7, r7, 3
/* 8003E37C 00039FDC  42 00 FF 88 */	bdnz lbl_8003E304
/* 8003E380 00039FE0  7C C3 33 78 */	mr r3, r6
/* 8003E384 00039FE4  4E 80 00 20 */	blr

.global func_8003E388
func_8003E388:
/* 8003E388 00039FE8  38 00 00 04 */	li r0, 4
/* 8003E38C 00039FEC  90 83 00 0C */	stw r4, 0xc(r3)
/* 8003E390 00039FF0  38 C0 00 00 */	li r6, 0
/* 8003E394 00039FF4  38 80 00 00 */	li r4, 0
/* 8003E398 00039FF8  7C 09 03 A6 */	mtctr r0
lbl_8003E39C:
/* 8003E39C 00039FFC  80 A3 00 10 */	lwz r5, 0x10(r3)
/* 8003E3A0 0003A000  2C 05 00 00 */	cmpwi r5, 0
/* 8003E3A4 0003A004  41 82 00 08 */	beq lbl_8003E3AC
/* 8003E3A8 0003A008  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E3AC:
/* 8003E3AC 0003A00C  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 8003E3B0 0003A010  2C 05 00 00 */	cmpwi r5, 0
/* 8003E3B4 0003A014  41 82 00 08 */	beq lbl_8003E3BC
/* 8003E3B8 0003A018  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E3BC:
/* 8003E3BC 0003A01C  80 A3 00 18 */	lwz r5, 0x18(r3)
/* 8003E3C0 0003A020  2C 05 00 00 */	cmpwi r5, 0
/* 8003E3C4 0003A024  41 82 00 08 */	beq lbl_8003E3CC
/* 8003E3C8 0003A028  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E3CC:
/* 8003E3CC 0003A02C  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8003E3D0 0003A030  2C 05 00 00 */	cmpwi r5, 0
/* 8003E3D4 0003A034  41 82 00 08 */	beq lbl_8003E3DC
/* 8003E3D8 0003A038  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E3DC:
/* 8003E3DC 0003A03C  80 A3 00 20 */	lwz r5, 0x20(r3)
/* 8003E3E0 0003A040  2C 05 00 00 */	cmpwi r5, 0
/* 8003E3E4 0003A044  41 82 00 08 */	beq lbl_8003E3EC
/* 8003E3E8 0003A048  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E3EC:
/* 8003E3EC 0003A04C  80 A3 00 24 */	lwz r5, 0x24(r3)
/* 8003E3F0 0003A050  2C 05 00 00 */	cmpwi r5, 0
/* 8003E3F4 0003A054  41 82 00 08 */	beq lbl_8003E3FC
/* 8003E3F8 0003A058  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E3FC:
/* 8003E3FC 0003A05C  80 A3 00 28 */	lwz r5, 0x28(r3)
/* 8003E400 0003A060  2C 05 00 00 */	cmpwi r5, 0
/* 8003E404 0003A064  41 82 00 08 */	beq lbl_8003E40C
/* 8003E408 0003A068  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E40C:
/* 8003E40C 0003A06C  80 A3 00 2C */	lwz r5, 0x2c(r3)
/* 8003E410 0003A070  2C 05 00 00 */	cmpwi r5, 0
/* 8003E414 0003A074  41 82 00 08 */	beq lbl_8003E41C
/* 8003E418 0003A078  90 85 0C B0 */	stw r4, 0xcb0(r5)
lbl_8003E41C:
/* 8003E41C 0003A07C  38 63 00 20 */	addi r3, r3, 0x20
/* 8003E420 0003A080  38 C6 00 07 */	addi r6, r6, 7
/* 8003E424 0003A084  42 00 FF 78 */	bdnz lbl_8003E39C
/* 8003E428 0003A088  4E 80 00 20 */	blr

.global func_8003E42C
func_8003E42C:
/* 8003E42C 0003A08C  80 63 00 0C */	lwz r3, 0xc(r3)
/* 8003E430 0003A090  4E 80 00 20 */	blr

.global func_8003E434
func_8003E434:
/* 8003E434 0003A094  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003E438 0003A098  7C 08 02 A6 */	mflr r0
/* 8003E43C 0003A09C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003E440 0003A0A0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8003E444 0003A0A4  7C BF 2B 78 */	mr r31, r5
/* 8003E448 0003A0A8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8003E44C 0003A0AC  7C 9E 23 78 */	mr r30, r4
/* 8003E450 0003A0B0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8003E454 0003A0B4  7C 7D 1B 78 */	mr r29, r3
/* 8003E458 0003A0B8  80 63 00 04 */	lwz r3, 4(r3)
/* 8003E45C 0003A0BC  48 35 2D 21 */	bl func_8039117C
/* 8003E460 0003A0C0  7C 03 F0 40 */	cmplw r3, r30
/* 8003E464 0003A0C4  40 80 00 10 */	bge lbl_8003E474
/* 8003E468 0003A0C8  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 8003E46C 0003A0CC  38 63 FF FF */	addi r3, r3, 0x0000FFFF@l
/* 8003E470 0003A0D0  48 00 00 2C */	b lbl_8003E49C
lbl_8003E474:
/* 8003E474 0003A0D4  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003E478 0003A0D8  7F C4 F3 78 */	mr r4, r30
/* 8003E47C 0003A0DC  7F E5 FB 78 */	mr r5, r31
/* 8003E480 0003A0E0  48 35 2E 45 */	bl func_803912C4
/* 8003E484 0003A0E4  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003E488 0003A0E8  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 8003E48C 0003A0EC  28 00 00 FF */	cmplwi r0, 0xff
/* 8003E490 0003A0F0  38 63 FF FF */	addi r3, r3, 0x0000FFFF@l
/* 8003E494 0003A0F4  41 82 00 08 */	beq lbl_8003E49C
/* 8003E498 0003A0F8  7C 03 03 78 */	mr r3, r0
lbl_8003E49C:
/* 8003E49C 0003A0FC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003E4A0 0003A100  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8003E4A4 0003A104  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8003E4A8 0003A108  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8003E4AC 0003A10C  7C 08 03 A6 */	mtlr r0
/* 8003E4B0 0003A110  38 21 00 20 */	addi r1, r1, 0x20
/* 8003E4B4 0003A114  4E 80 00 20 */	blr

.global func_8003E4B8
func_8003E4B8:
/* 8003E4B8 0003A118  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003E4BC 0003A11C  7C 08 02 A6 */	mflr r0
/* 8003E4C0 0003A120  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003E4C4 0003A124  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8003E4C8 0003A128  FF E0 08 90 */	fmr f31, f1
/* 8003E4CC 0003A12C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8003E4D0 0003A130  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8003E4D4 0003A134  3B C0 00 00 */	li r30, 0
/* 8003E4D8 0003A138  93 A1 00 0C */	stw r29, 0xc(r1)
/* 8003E4DC 0003A13C  7C 7D 1B 78 */	mr r29, r3
/* 8003E4E0 0003A140  7F BF EB 78 */	mr r31, r29
lbl_8003E4E4:
/* 8003E4E4 0003A144  80 9F 00 10 */	lwz r4, 0x10(r31)
/* 8003E4E8 0003A148  2C 04 00 00 */	cmpwi r4, 0
/* 8003E4EC 0003A14C  41 82 00 28 */	beq lbl_8003E514
/* 8003E4F0 0003A150  80 04 00 00 */	lwz r0, 0(r4)
/* 8003E4F4 0003A154  54 00 05 EF */	rlwinm. r0, r0, 0, 0x17, 0x17
/* 8003E4F8 0003A158  41 82 00 10 */	beq lbl_8003E508
/* 8003E4FC 0003A15C  7F A3 EB 78 */	mr r3, r29
/* 8003E500 0003A160  4B FF FD 39 */	bl func_8003E238
/* 8003E504 0003A164  48 00 00 10 */	b lbl_8003E514
lbl_8003E508:
/* 8003E508 0003A168  FC 20 F8 90 */	fmr f1, f31
/* 8003E50C 0003A16C  7C 83 23 78 */	mr r3, r4
/* 8003E510 0003A170  4B FF D3 C5 */	bl func_8003B8D4
lbl_8003E514:
/* 8003E514 0003A174  3B DE 00 01 */	addi r30, r30, 1
/* 8003E518 0003A178  3B FF 00 04 */	addi r31, r31, 4
/* 8003E51C 0003A17C  2C 1E 00 20 */	cmpwi r30, 0x20
/* 8003E520 0003A180  41 80 FF C4 */	blt lbl_8003E4E4
/* 8003E524 0003A184  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003E528 0003A188  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8003E52C 0003A18C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8003E530 0003A190  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8003E534 0003A194  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 8003E538 0003A198  7C 08 03 A6 */	mtlr r0
/* 8003E53C 0003A19C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003E540 0003A1A0  4E 80 00 20 */	blr

.global func_8003E544
func_8003E544:
/* 8003E544 0003A1A4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003E548 0003A1A8  7C 08 02 A6 */	mflr r0
/* 8003E54C 0003A1AC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003E550 0003A1B0  39 61 00 30 */	addi r11, r1, 0x30
/* 8003E554 0003A1B4  48 18 8B C5 */	bl _savegpr_23
/* 8003E558 0003A1B8  7C 77 1B 78 */	mr r23, r3
/* 8003E55C 0003A1BC  80 63 00 04 */	lwz r3, 4(r3)
/* 8003E560 0003A1C0  7C 98 23 78 */	mr r24, r4
/* 8003E564 0003A1C4  7C B9 2B 78 */	mr r25, r5
/* 8003E568 0003A1C8  7C DA 33 78 */	mr r26, r6
/* 8003E56C 0003A1CC  3B 80 FF FF */	li r28, -1
/* 8003E570 0003A1D0  48 35 2C 0D */	bl func_8039117C
/* 8003E574 0003A1D4  28 1A 00 02 */	cmplwi r26, 2
/* 8003E578 0003A1D8  7C 7D 1B 78 */	mr r29, r3
/* 8003E57C 0003A1DC  41 80 00 08 */	blt lbl_8003E584
/* 8003E580 0003A1E0  3B 40 00 00 */	li r26, 0
lbl_8003E584:
/* 8003E584 0003A1E4  3B 60 00 00 */	li r27, 0
/* 8003E588 0003A1E8  48 00 00 64 */	b lbl_8003E5EC
lbl_8003E58C:
/* 8003E58C 0003A1EC  80 77 00 04 */	lwz r3, 4(r23)
/* 8003E590 0003A1F0  7F 64 DB 78 */	mr r4, r27
/* 8003E594 0003A1F4  48 35 2C 05 */	bl func_80391198
/* 8003E598 0003A1F8  7C 7E 1B 78 */	mr r30, r3
/* 8003E59C 0003A1FC  80 77 00 04 */	lwz r3, 4(r23)
/* 8003E5A0 0003A200  7F 64 DB 78 */	mr r4, r27
/* 8003E5A4 0003A204  48 35 2C 29 */	bl func_803911CC
/* 8003E5A8 0003A208  7C 7F 1B 78 */	mr r31, r3
/* 8003E5AC 0003A20C  80 77 00 04 */	lwz r3, 4(r23)
/* 8003E5B0 0003A210  7F 64 DB 78 */	mr r4, r27
/* 8003E5B4 0003A214  48 35 2C 85 */	bl func_80391238
/* 8003E5B8 0003A218  57 C0 04 3E */	clrlwi r0, r30, 0x10
/* 8003E5BC 0003A21C  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8003E5C0 0003A220  7C 00 C0 40 */	cmplw r0, r24
/* 8003E5C4 0003A224  40 82 00 24 */	bne lbl_8003E5E8
/* 8003E5C8 0003A228  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 8003E5CC 0003A22C  7C 00 C8 40 */	cmplw r0, r25
/* 8003E5D0 0003A230  40 82 00 18 */	bne lbl_8003E5E8
/* 8003E5D4 0003A234  7C 1A 18 40 */	cmplw r26, r3
/* 8003E5D8 0003A238  7F 7C DB 78 */	mr r28, r27
/* 8003E5DC 0003A23C  40 82 00 0C */	bne lbl_8003E5E8
/* 8003E5E0 0003A240  7F 63 DB 78 */	mr r3, r27
/* 8003E5E4 0003A244  48 00 00 14 */	b lbl_8003E5F8
lbl_8003E5E8:
/* 8003E5E8 0003A248  3B 7B 00 01 */	addi r27, r27, 1
lbl_8003E5EC:
/* 8003E5EC 0003A24C  7C 1B E8 00 */	cmpw r27, r29
/* 8003E5F0 0003A250  41 80 FF 9C */	blt lbl_8003E58C
/* 8003E5F4 0003A254  7F 83 E3 78 */	mr r3, r28
lbl_8003E5F8:
/* 8003E5F8 0003A258  39 61 00 30 */	addi r11, r1, 0x30
/* 8003E5FC 0003A25C  48 18 8B 69 */	bl _restgpr_23
/* 8003E600 0003A260  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003E604 0003A264  7C 08 03 A6 */	mtlr r0
/* 8003E608 0003A268  38 21 00 30 */	addi r1, r1, 0x30
/* 8003E60C 0003A26C  4E 80 00 20 */	blr

.global func_8003E610
func_8003E610:
/* 8003E610 0003A270  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E614 0003A274  7C 08 02 A6 */	mflr r0
/* 8003E618 0003A278  38 A0 00 00 */	li r5, 0
/* 8003E61C 0003A27C  38 C0 00 FF */	li r6, 0xff
/* 8003E620 0003A280  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E624 0003A284  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E628 0003A288  7C 7F 1B 78 */	mr r31, r3
/* 8003E62C 0003A28C  4B FF FF 19 */	bl func_8003E544
/* 8003E630 0003A290  2C 03 00 00 */	cmpwi r3, 0
/* 8003E634 0003A294  7C 64 1B 78 */	mr r4, r3
/* 8003E638 0003A298  41 80 00 10 */	blt lbl_8003E648
/* 8003E63C 0003A29C  80 7F 00 04 */	lwz r3, 4(r31)
/* 8003E640 0003A2A0  48 35 2B C1 */	bl func_80391200
/* 8003E644 0003A2A4  48 00 00 08 */	b lbl_8003E64C
lbl_8003E648:
/* 8003E648 0003A2A8  38 60 FF FF */	li r3, -1
lbl_8003E64C:
/* 8003E64C 0003A2AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E650 0003A2B0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E654 0003A2B4  7C 08 03 A6 */	mtlr r0
/* 8003E658 0003A2B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E65C 0003A2BC  4E 80 00 20 */	blr

.global func_8003E660
func_8003E660:
/* 8003E660 0003A2C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E664 0003A2C4  7C 08 02 A6 */	mflr r0
/* 8003E668 0003A2C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E66C 0003A2CC  80 63 00 08 */	lwz r3, 8(r3)
/* 8003E670 0003A2D0  2C 03 00 00 */	cmpwi r3, 0
/* 8003E674 0003A2D4  41 82 00 10 */	beq lbl_8003E684
/* 8003E678 0003A2D8  48 35 37 75 */	bl func_80391DEC
/* 8003E67C 0003A2DC  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8003E680 0003A2E0  48 00 00 08 */	b lbl_8003E688
lbl_8003E684:
/* 8003E684 0003A2E4  38 60 FF FF */	li r3, -1
lbl_8003E688:
/* 8003E688 0003A2E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E68C 0003A2EC  7C 08 03 A6 */	mtlr r0
/* 8003E690 0003A2F0  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E694 0003A2F4  4E 80 00 20 */	blr

.global func_8003E698
func_8003E698:
/* 8003E698 0003A2F8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E69C 0003A2FC  7C 08 02 A6 */	mflr r0
/* 8003E6A0 0003A300  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E6A4 0003A304  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E6A8 0003A308  7C 7F 1B 78 */	mr r31, r3
/* 8003E6AC 0003A30C  4B FF FE 99 */	bl func_8003E544
/* 8003E6B0 0003A310  2C 03 00 00 */	cmpwi r3, 0
/* 8003E6B4 0003A314  7C 64 1B 78 */	mr r4, r3
/* 8003E6B8 0003A318  41 80 00 10 */	blt lbl_8003E6C8
/* 8003E6BC 0003A31C  80 7F 00 04 */	lwz r3, 4(r31)
/* 8003E6C0 0003A320  48 35 2C 59 */	bl func_80391318
/* 8003E6C4 0003A324  48 00 00 08 */	b lbl_8003E6CC
lbl_8003E6C8:
/* 8003E6C8 0003A328  38 60 00 00 */	li r3, 0
lbl_8003E6CC:
/* 8003E6CC 0003A32C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E6D0 0003A330  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E6D4 0003A334  7C 08 03 A6 */	mtlr r0
/* 8003E6D8 0003A338  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E6DC 0003A33C  4E 80 00 20 */	blr

.global func_8003E6E0
func_8003E6E0:
/* 8003E6E0 0003A340  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E6E4 0003A344  7C 08 02 A6 */	mflr r0
/* 8003E6E8 0003A348  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E6EC 0003A34C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E6F0 0003A350  7C BF 2B 78 */	mr r31, r5
/* 8003E6F4 0003A354  7C C5 33 78 */	mr r5, r6
/* 8003E6F8 0003A358  7C E6 3B 78 */	mr r6, r7
/* 8003E6FC 0003A35C  93 C1 00 08 */	stw r30, 8(r1)
/* 8003E700 0003A360  7C 7E 1B 78 */	mr r30, r3
/* 8003E704 0003A364  4B FF FE 41 */	bl func_8003E544
/* 8003E708 0003A368  2C 03 00 00 */	cmpwi r3, 0
/* 8003E70C 0003A36C  7C 64 1B 78 */	mr r4, r3
/* 8003E710 0003A370  41 80 00 24 */	blt lbl_8003E734
/* 8003E714 0003A374  2C 1F 00 00 */	cmpwi r31, 0
/* 8003E718 0003A378  41 82 00 10 */	beq lbl_8003E728
/* 8003E71C 0003A37C  80 7E 00 04 */	lwz r3, 4(r30)
/* 8003E720 0003A380  48 35 2C 61 */	bl func_80391380
/* 8003E724 0003A384  48 00 00 14 */	b lbl_8003E738
lbl_8003E728:
/* 8003E728 0003A388  80 7E 00 04 */	lwz r3, 4(r30)
/* 8003E72C 0003A38C  48 35 2C 21 */	bl func_8039134C
/* 8003E730 0003A390  48 00 00 08 */	b lbl_8003E738
lbl_8003E734:
/* 8003E734 0003A394  38 60 00 00 */	li r3, 0
lbl_8003E738:
/* 8003E738 0003A398  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E73C 0003A39C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E740 0003A3A0  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003E744 0003A3A4  7C 08 03 A6 */	mtlr r0
/* 8003E748 0003A3A8  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E74C 0003A3AC  4E 80 00 20 */	blr

.global func_8003E750
func_8003E750:
/* 8003E750 0003A3B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E754 0003A3B4  7C 08 02 A6 */	mflr r0
/* 8003E758 0003A3B8  2C 05 00 00 */	cmpwi r5, 0
/* 8003E75C 0003A3BC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E760 0003A3C0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E764 0003A3C4  7C BF 2B 78 */	mr r31, r5
/* 8003E768 0003A3C8  93 C1 00 08 */	stw r30, 8(r1)
/* 8003E76C 0003A3CC  7C 7E 1B 78 */	mr r30, r3
/* 8003E770 0003A3D0  40 80 00 0C */	bge lbl_8003E77C
/* 8003E774 0003A3D4  38 60 00 00 */	li r3, 0
/* 8003E778 0003A3D8  48 00 00 34 */	b lbl_8003E7AC
lbl_8003E77C:
/* 8003E77C 0003A3DC  7C C5 33 78 */	mr r5, r6
/* 8003E780 0003A3E0  7C E6 3B 78 */	mr r6, r7
/* 8003E784 0003A3E4  4B FF FD C1 */	bl func_8003E544
/* 8003E788 0003A3E8  2C 03 00 00 */	cmpwi r3, 0
/* 8003E78C 0003A3EC  7C 64 1B 78 */	mr r4, r3
/* 8003E790 0003A3F0  41 80 00 18 */	blt lbl_8003E7A8
/* 8003E794 0003A3F4  80 7E 00 04 */	lwz r3, 4(r30)
/* 8003E798 0003A3F8  7F E5 FB 78 */	mr r5, r31
/* 8003E79C 0003A3FC  48 35 2A D5 */	bl func_80391270
/* 8003E7A0 0003A400  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8003E7A4 0003A404  48 00 00 08 */	b lbl_8003E7AC
lbl_8003E7A8:
/* 8003E7A8 0003A408  38 60 FF FF */	li r3, -1
lbl_8003E7AC:
/* 8003E7AC 0003A40C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E7B0 0003A410  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E7B4 0003A414  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003E7B8 0003A418  7C 08 03 A6 */	mtlr r0
/* 8003E7BC 0003A41C  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E7C0 0003A420  4E 80 00 20 */	blr

.global func_8003E7C4
func_8003E7C4:
/* 8003E7C4 0003A424  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E7C8 0003A428  7C 08 02 A6 */	mflr r0
/* 8003E7CC 0003A42C  2C 05 00 00 */	cmpwi r5, 0
/* 8003E7D0 0003A430  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E7D4 0003A434  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E7D8 0003A438  7C BF 2B 78 */	mr r31, r5
/* 8003E7DC 0003A43C  93 C1 00 08 */	stw r30, 8(r1)
/* 8003E7E0 0003A440  7C 7E 1B 78 */	mr r30, r3
/* 8003E7E4 0003A444  40 80 00 08 */	bge lbl_8003E7EC
/* 8003E7E8 0003A448  3B E0 00 00 */	li r31, 0
lbl_8003E7EC:
/* 8003E7EC 0003A44C  7C C5 33 78 */	mr r5, r6
/* 8003E7F0 0003A450  7F C3 F3 78 */	mr r3, r30
/* 8003E7F4 0003A454  7C E6 3B 78 */	mr r6, r7
/* 8003E7F8 0003A458  4B FF FD 4D */	bl func_8003E544
/* 8003E7FC 0003A45C  2C 03 00 00 */	cmpwi r3, 0
/* 8003E800 0003A460  7C 64 1B 78 */	mr r4, r3
/* 8003E804 0003A464  40 80 00 08 */	bge lbl_8003E80C
/* 8003E808 0003A468  38 80 00 00 */	li r4, 0
lbl_8003E80C:
/* 8003E80C 0003A46C  80 7E 00 04 */	lwz r3, 4(r30)
/* 8003E810 0003A470  7F E5 FB 78 */	mr r5, r31
/* 8003E814 0003A474  48 35 2A B1 */	bl func_803912C4
/* 8003E818 0003A478  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E81C 0003A47C  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8003E820 0003A480  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003E824 0003A484  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E828 0003A488  7C 08 03 A6 */	mtlr r0
/* 8003E82C 0003A48C  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E830 0003A490  4E 80 00 20 */	blr

.global func_8003E834
func_8003E834:
/* 8003E834 0003A494  38 A0 00 01 */	li r5, 1
/* 8003E838 0003A498  38 6D 97 B8 */	addi r3, r13, lbl_8063EA78-_SDA_BASE_
/* 8003E83C 0003A49C  38 80 00 04 */	li r4, 4
/* 8003E840 0003A4A0  38 00 00 00 */	li r0, 0
/* 8003E844 0003A4A4  98 AD 97 B8 */	stb r5, lbl_8063EA78-_SDA_BASE_(r13)
/* 8003E848 0003A4A8  B0 83 00 02 */	sth r4, 2(r3)
/* 8003E84C 0003A4AC  98 03 00 04 */	stb r0, 4(r3)
/* 8003E850 0003A4B0  4E 80 00 20 */	blr

.global cPlayer_ClearSwapControllerTimer
cPlayer_ClearSwapControllerTimer:
/* 8003E854 0003A4B4  38 00 00 00 */	li r0, 0
/* 8003E858 0003A4B8  90 03 00 08 */	stw r0, 8(r3)
/* 8003E85C 0003A4BC  90 03 00 D4 */	stw r0, 0xd4(r3)
/* 8003E860 0003A4C0  90 03 00 00 */	stw r0, 0(r3)
/* 8003E864 0003A4C4  90 03 00 04 */	stw r0, 4(r3)
/* 8003E868 0003A4C8  4E 80 00 20 */	blr

.global func_8003E86C
func_8003E86C:
/* 8003E86C 0003A4CC  80 C3 00 00 */	lwz r6, 0(r3)
/* 8003E870 0003A4D0  28 06 00 32 */	cmplwi r6, 0x32
/* 8003E874 0003A4D4  4C 80 00 20 */	bgelr
/* 8003E878 0003A4D8  54 C0 10 3A */	slwi r0, r6, 2
/* 8003E87C 0003A4DC  38 E6 00 01 */	addi r7, r6, 1
/* 8003E880 0003A4E0  7C C3 02 14 */	add r6, r3, r0
/* 8003E884 0003A4E4  2C 05 00 00 */	cmpwi r5, 0
/* 8003E888 0003A4E8  90 86 00 08 */	stw r4, 8(r6)
/* 8003E88C 0003A4EC  54 E0 10 3A */	slwi r0, r7, 2
/* 8003E890 0003A4F0  7C A3 02 14 */	add r5, r3, r0
/* 8003E894 0003A4F4  90 E3 00 00 */	stw r7, 0(r3)
/* 8003E898 0003A4F8  38 00 00 00 */	li r0, 0
/* 8003E89C 0003A4FC  90 05 00 08 */	stw r0, 8(r5)
/* 8003E8A0 0003A500  4D 82 00 20 */	beqlr
/* 8003E8A4 0003A504  80 03 00 04 */	lwz r0, 4(r3)
/* 8003E8A8 0003A508  7C 65 1B 78 */	mr r5, r3
/* 8003E8AC 0003A50C  7C 09 03 A6 */	mtctr r0
/* 8003E8B0 0003A510  28 00 00 00 */	cmplwi r0, 0
/* 8003E8B4 0003A514  40 81 00 18 */	ble lbl_8003E8CC
lbl_8003E8B8:
/* 8003E8B8 0003A518  80 05 00 D4 */	lwz r0, 0xd4(r5)
/* 8003E8BC 0003A51C  7C 04 00 40 */	cmplw r4, r0
/* 8003E8C0 0003A520  4D 82 00 20 */	beqlr
/* 8003E8C4 0003A524  38 A5 00 04 */	addi r5, r5, 4
/* 8003E8C8 0003A528  42 00 FF F0 */	bdnz lbl_8003E8B8
lbl_8003E8CC:
/* 8003E8CC 0003A52C  80 C3 00 04 */	lwz r6, 4(r3)
/* 8003E8D0 0003A530  38 A0 00 00 */	li r5, 0
/* 8003E8D4 0003A534  54 C0 10 3A */	slwi r0, r6, 2
/* 8003E8D8 0003A538  38 E6 00 01 */	addi r7, r6, 1
/* 8003E8DC 0003A53C  7C C3 02 14 */	add r6, r3, r0
/* 8003E8E0 0003A540  90 86 00 D4 */	stw r4, 0xd4(r6)
/* 8003E8E4 0003A544  54 E0 10 3A */	slwi r0, r7, 2
/* 8003E8E8 0003A548  7C 83 02 14 */	add r4, r3, r0
/* 8003E8EC 0003A54C  90 E3 00 04 */	stw r7, 4(r3)
/* 8003E8F0 0003A550  90 A4 00 D4 */	stw r5, 0xd4(r4)
/* 8003E8F4 0003A554  4E 80 00 20 */	blr

.global func_8003E8F8
func_8003E8F8:
/* 8003E8F8 0003A558  80 63 00 04 */	lwz r3, 4(r3)
/* 8003E8FC 0003A55C  4E 80 00 20 */	blr

.global func_8003E900
func_8003E900:
/* 8003E900 0003A560  38 63 00 D4 */	addi r3, r3, 0xd4
/* 8003E904 0003A564  4E 80 00 20 */	blr

.global func_8003E908
func_8003E908:
/* 8003E908 0003A568  38 63 00 08 */	addi r3, r3, 8
/* 8003E90C 0003A56C  4E 80 00 20 */	blr

.global func_8003E910
func_8003E910:
/* 8003E910 0003A570  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E914 0003A574  7C 08 02 A6 */	mflr r0
/* 8003E918 0003A578  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E91C 0003A57C  38 00 00 00 */	li r0, 0
/* 8003E920 0003A580  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E924 0003A584  7C 7F 1B 78 */	mr r31, r3
/* 8003E928 0003A588  90 03 00 04 */	stw r0, 4(r3)
/* 8003E92C 0003A58C  98 03 00 01 */	stb r0, 1(r3)
/* 8003E930 0003A590  48 00 00 71 */	bl func_8003E9A0
/* 8003E934 0003A594  7F E3 FB 78 */	mr r3, r31
/* 8003E938 0003A598  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E93C 0003A59C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E940 0003A5A0  7C 08 03 A6 */	mtlr r0
/* 8003E944 0003A5A4  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E948 0003A5A8  4E 80 00 20 */	blr

.global func_8003E94C
func_8003E94C:
/* 8003E94C 0003A5AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E950 0003A5B0  7C 08 02 A6 */	mflr r0
/* 8003E954 0003A5B4  2C 03 00 00 */	cmpwi r3, 0
/* 8003E958 0003A5B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E95C 0003A5BC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E960 0003A5C0  7C 9F 23 78 */	mr r31, r4
/* 8003E964 0003A5C4  93 C1 00 08 */	stw r30, 8(r1)
/* 8003E968 0003A5C8  7C 7E 1B 78 */	mr r30, r3
/* 8003E96C 0003A5CC  41 82 00 18 */	beq lbl_8003E984
/* 8003E970 0003A5D0  48 00 01 41 */	bl func_8003EAB0
/* 8003E974 0003A5D4  2C 1F 00 00 */	cmpwi r31, 0
/* 8003E978 0003A5D8  40 81 00 0C */	ble lbl_8003E984
/* 8003E97C 0003A5DC  7F C3 F3 78 */	mr r3, r30
/* 8003E980 0003A5E0  48 19 C1 39 */	bl func_801DAAB8
lbl_8003E984:
/* 8003E984 0003A5E4  7F C3 F3 78 */	mr r3, r30
/* 8003E988 0003A5E8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003E98C 0003A5EC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003E990 0003A5F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003E994 0003A5F4  7C 08 03 A6 */	mtlr r0
/* 8003E998 0003A5F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8003E99C 0003A5FC  4E 80 00 20 */	blr

.global func_8003E9A0
func_8003E9A0:
/* 8003E9A0 0003A600  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8003E9A4 0003A604  7C 08 02 A6 */	mflr r0
/* 8003E9A8 0003A608  38 80 00 00 */	li r4, 0
/* 8003E9AC 0003A60C  38 A0 00 0C */	li r5, 0xc
/* 8003E9B0 0003A610  90 01 00 14 */	stw r0, 0x14(r1)
/* 8003E9B4 0003A614  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8003E9B8 0003A618  3B E0 00 00 */	li r31, 0
/* 8003E9BC 0003A61C  93 C1 00 08 */	stw r30, 8(r1)
/* 8003E9C0 0003A620  7C 7E 1B 78 */	mr r30, r3
/* 8003E9C4 0003A624  93 E3 00 04 */	stw r31, 4(r3)
/* 8003E9C8 0003A628  93 E3 00 08 */	stw r31, 8(r3)
/* 8003E9CC 0003A62C  38 63 00 0C */	addi r3, r3, 0xc
/* 8003E9D0 0003A630  4B FC 57 35 */	bl memset
/* 8003E9D4 0003A634  38 00 00 0A */	li r0, 0xa
/* 8003E9D8 0003A638  38 9E 00 18 */	addi r4, r30, 0x18
/* 8003E9DC 0003A63C  38 60 00 FF */	li r3, 0xff
/* 8003E9E0 0003A640  7C 09 03 A6 */	mtctr r0
lbl_8003E9E4:
/* 8003E9E4 0003A644  9B E4 00 00 */	stb r31, 0(r4)
/* 8003E9E8 0003A648  98 64 00 01 */	stb r3, 1(r4)
/* 8003E9EC 0003A64C  93 E4 00 04 */	stw r31, 4(r4)
/* 8003E9F0 0003A650  93 E4 00 20 */	stw r31, 0x20(r4)
/* 8003E9F4 0003A654  93 E4 00 24 */	stw r31, 0x24(r4)
/* 8003E9F8 0003A658  93 E4 00 28 */	stw r31, 0x28(r4)
/* 8003E9FC 0003A65C  93 E4 00 0C */	stw r31, 0xc(r4)
/* 8003EA00 0003A660  93 E4 00 18 */	stw r31, 0x18(r4)
/* 8003EA04 0003A664  93 E4 00 10 */	stw r31, 0x10(r4)
/* 8003EA08 0003A668  93 E4 00 1C */	stw r31, 0x1c(r4)
/* 8003EA0C 0003A66C  9B E4 00 14 */	stb r31, 0x14(r4)
/* 8003EA10 0003A670  93 E4 00 40 */	stw r31, 0x40(r4)
/* 8003EA14 0003A674  93 E4 00 44 */	stw r31, 0x44(r4)
/* 8003EA18 0003A678  93 E4 00 48 */	stw r31, 0x48(r4)
/* 8003EA1C 0003A67C  93 E4 00 2C */	stw r31, 0x2c(r4)
/* 8003EA20 0003A680  93 E4 00 38 */	stw r31, 0x38(r4)
/* 8003EA24 0003A684  93 E4 00 30 */	stw r31, 0x30(r4)
/* 8003EA28 0003A688  93 E4 00 3C */	stw r31, 0x3c(r4)
/* 8003EA2C 0003A68C  9B E4 00 34 */	stb r31, 0x34(r4)
/* 8003EA30 0003A690  93 E4 00 60 */	stw r31, 0x60(r4)
/* 8003EA34 0003A694  93 E4 00 64 */	stw r31, 0x64(r4)
/* 8003EA38 0003A698  93 E4 00 68 */	stw r31, 0x68(r4)
/* 8003EA3C 0003A69C  93 E4 00 4C */	stw r31, 0x4c(r4)
/* 8003EA40 0003A6A0  93 E4 00 58 */	stw r31, 0x58(r4)
/* 8003EA44 0003A6A4  93 E4 00 50 */	stw r31, 0x50(r4)
/* 8003EA48 0003A6A8  93 E4 00 5C */	stw r31, 0x5c(r4)
/* 8003EA4C 0003A6AC  9B E4 00 54 */	stb r31, 0x54(r4)
/* 8003EA50 0003A6B0  93 E4 00 80 */	stw r31, 0x80(r4)
/* 8003EA54 0003A6B4  93 E4 00 84 */	stw r31, 0x84(r4)
/* 8003EA58 0003A6B8  93 E4 00 88 */	stw r31, 0x88(r4)
/* 8003EA5C 0003A6BC  93 E4 00 6C */	stw r31, 0x6c(r4)
/* 8003EA60 0003A6C0  93 E4 00 78 */	stw r31, 0x78(r4)
/* 8003EA64 0003A6C4  93 E4 00 70 */	stw r31, 0x70(r4)
/* 8003EA68 0003A6C8  93 E4 00 7C */	stw r31, 0x7c(r4)
/* 8003EA6C 0003A6CC  9B E4 00 74 */	stb r31, 0x74(r4)
/* 8003EA70 0003A6D0  93 E4 00 A0 */	stw r31, 0xa0(r4)
/* 8003EA74 0003A6D4  93 E4 00 A4 */	stw r31, 0xa4(r4)
/* 8003EA78 0003A6D8  93 E4 00 A8 */	stw r31, 0xa8(r4)
/* 8003EA7C 0003A6DC  93 E4 00 8C */	stw r31, 0x8c(r4)
/* 8003EA80 0003A6E0  93 E4 00 98 */	stw r31, 0x98(r4)
/* 8003EA84 0003A6E4  93 E4 00 90 */	stw r31, 0x90(r4)
/* 8003EA88 0003A6E8  93 E4 00 9C */	stw r31, 0x9c(r4)
/* 8003EA8C 0003A6EC  9B E4 00 94 */	stb r31, 0x94(r4)
/* 8003EA90 0003A6F0  38 84 00 AC */	addi r4, r4, 0xac
/* 8003EA94 0003A6F4  42 00 FF 50 */	bdnz lbl_8003E9E4
/* 8003EA98 0003A6F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8003EA9C 0003A6FC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8003EAA0 0003A700  83 C1 00 08 */	lwz r30, 8(r1)
/* 8003EAA4 0003A704  7C 08 03 A6 */	mtlr r0
/* 8003EAA8 0003A708  38 21 00 10 */	addi r1, r1, 0x10
/* 8003EAAC 0003A70C  4E 80 00 20 */	blr

.global func_8003EAB0
func_8003EAB0:
/* 8003EAB0 0003A710  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003EAB4 0003A714  7C 08 02 A6 */	mflr r0
/* 8003EAB8 0003A718  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003EABC 0003A71C  39 61 00 30 */	addi r11, r1, 0x30
/* 8003EAC0 0003A720  48 18 86 61 */	bl _savegpr_25
/* 8003EAC4 0003A724  3B C0 00 00 */	li r30, 0
/* 8003EAC8 0003A728  7C 79 1B 78 */	mr r25, r3
/* 8003EACC 0003A72C  93 C3 00 08 */	stw r30, 8(r3)
/* 8003EAD0 0003A730  3B A3 00 18 */	addi r29, r3, 0x18
/* 8003EAD4 0003A734  3B 60 00 00 */	li r27, 0
/* 8003EAD8 0003A738  3B E0 00 FF */	li r31, 0xff
lbl_8003EADC:
/* 8003EADC 0003A73C  9B DD 00 00 */	stb r30, 0(r29)
/* 8003EAE0 0003A740  3B 9D 00 0C */	addi r28, r29, 0xc
/* 8003EAE4 0003A744  3B 40 00 00 */	li r26, 0
/* 8003EAE8 0003A748  9B FD 00 01 */	stb r31, 1(r29)
lbl_8003EAEC:
/* 8003EAEC 0003A74C  80 7C 00 14 */	lwz r3, 0x14(r28)
/* 8003EAF0 0003A750  2C 03 00 00 */	cmpwi r3, 0
/* 8003EAF4 0003A754  41 82 00 10 */	beq lbl_8003EB04
/* 8003EAF8 0003A758  38 80 00 01 */	li r4, 1
/* 8003EAFC 0003A75C  48 1B 5F F5 */	bl func_801F4AF0
/* 8003EB00 0003A760  93 DC 00 14 */	stw r30, 0x14(r28)
lbl_8003EB04:
/* 8003EB04 0003A764  80 7C 00 18 */	lwz r3, 0x18(r28)
/* 8003EB08 0003A768  2C 83 00 00 */	cmpwi cr1, r3, 0
/* 8003EB0C 0003A76C  41 86 00 28 */	beq cr1, lbl_8003EB34
/* 8003EB10 0003A770  80 1C 00 00 */	lwz r0, 0(r28)
/* 8003EB14 0003A774  28 00 00 64 */	cmplwi r0, 0x64
/* 8003EB18 0003A778  41 82 00 1C */	beq lbl_8003EB34
/* 8003EB1C 0003A77C  41 86 00 18 */	beq cr1, lbl_8003EB34
/* 8003EB20 0003A780  81 83 00 34 */	lwz r12, 0x34(r3)
/* 8003EB24 0003A784  38 80 00 01 */	li r4, 1
/* 8003EB28 0003A788  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003EB2C 0003A78C  7D 89 03 A6 */	mtctr r12
/* 8003EB30 0003A790  4E 80 04 21 */	bctrl
lbl_8003EB34:
/* 8003EB34 0003A794  93 DC 00 18 */	stw r30, 0x18(r28)
/* 8003EB38 0003A798  80 9C 00 00 */	lwz r4, 0(r28)
/* 8003EB3C 0003A79C  2C 04 00 00 */	cmpwi r4, 0
/* 8003EB40 0003A7A0  41 82 00 18 */	beq lbl_8003EB58
/* 8003EB44 0003A7A4  28 04 00 64 */	cmplwi r4, 0x64
/* 8003EB48 0003A7A8  41 82 00 10 */	beq lbl_8003EB58
/* 8003EB4C 0003A7AC  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003EB50 0003A7B0  48 19 C9 F9 */	bl func_801DB548
/* 8003EB54 0003A7B4  93 DC 00 00 */	stw r30, 0(r28)
lbl_8003EB58:
/* 8003EB58 0003A7B8  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003EB5C 0003A7BC  2C 04 00 00 */	cmpwi r4, 0
/* 8003EB60 0003A7C0  41 82 00 10 */	beq lbl_8003EB70
/* 8003EB64 0003A7C4  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003EB68 0003A7C8  48 19 C9 E1 */	bl func_801DB548
/* 8003EB6C 0003A7CC  93 DC 00 04 */	stw r30, 4(r28)
lbl_8003EB70:
/* 8003EB70 0003A7D0  3B 5A 00 01 */	addi r26, r26, 1
/* 8003EB74 0003A7D4  3B 9C 00 20 */	addi r28, r28, 0x20
/* 8003EB78 0003A7D8  2C 1A 00 05 */	cmpwi r26, 5
/* 8003EB7C 0003A7DC  41 80 FF 70 */	blt lbl_8003EAEC
/* 8003EB80 0003A7E0  3B 7B 00 01 */	addi r27, r27, 1
/* 8003EB84 0003A7E4  3B BD 00 AC */	addi r29, r29, 0xac
/* 8003EB88 0003A7E8  2C 1B 00 0A */	cmpwi r27, 0xa
/* 8003EB8C 0003A7EC  41 80 FF 50 */	blt lbl_8003EADC
/* 8003EB90 0003A7F0  80 99 00 14 */	lwz r4, 0x14(r25)
/* 8003EB94 0003A7F4  2C 04 00 00 */	cmpwi r4, 0
/* 8003EB98 0003A7F8  41 82 00 0C */	beq lbl_8003EBA4
/* 8003EB9C 0003A7FC  80 79 00 10 */	lwz r3, 0x10(r25)
/* 8003EBA0 0003A800  48 19 C9 A9 */	bl func_801DB548
lbl_8003EBA4:
/* 8003EBA4 0003A804  38 79 00 0C */	addi r3, r25, 0xc
/* 8003EBA8 0003A808  38 80 00 00 */	li r4, 0
/* 8003EBAC 0003A80C  38 A0 00 0C */	li r5, 0xc
/* 8003EBB0 0003A810  4B FC 55 55 */	bl memset
/* 8003EBB4 0003A814  39 61 00 30 */	addi r11, r1, 0x30
/* 8003EBB8 0003A818  48 18 85 B5 */	bl _restgpr_25
/* 8003EBBC 0003A81C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003EBC0 0003A820  7C 08 03 A6 */	mtlr r0
/* 8003EBC4 0003A824  38 21 00 30 */	addi r1, r1, 0x30
/* 8003EBC8 0003A828  4E 80 00 20 */	blr

.global func_8003EBCC
func_8003EBCC:
/* 8003EBCC 0003A82C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003EBD0 0003A830  7C 08 02 A6 */	mflr r0
/* 8003EBD4 0003A834  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003EBD8 0003A838  39 61 00 20 */	addi r11, r1, 0x20
/* 8003EBDC 0003A83C  48 18 85 49 */	bl _savegpr_26
/* 8003EBE0 0003A840  2C 04 00 00 */	cmpwi r4, 0
/* 8003EBE4 0003A844  8B A3 00 01 */	lbz r29, 1(r3)
/* 8003EBE8 0003A848  7C 7A 1B 78 */	mr r26, r3
/* 8003EBEC 0003A84C  7C 9B 23 78 */	mr r27, r4
/* 8003EBF0 0003A850  41 82 00 10 */	beq lbl_8003EC00
/* 8003EBF4 0003A854  88 03 00 03 */	lbz r0, 3(r3)
/* 8003EBF8 0003A858  7C 00 07 75 */	extsb. r0, r0
/* 8003EBFC 0003A85C  40 82 00 0C */	bne lbl_8003EC08
lbl_8003EC00:
/* 8003EC00 0003A860  38 60 00 00 */	li r3, 0
/* 8003EC04 0003A864  48 00 00 88 */	b lbl_8003EC8C
lbl_8003EC08:
/* 8003EC08 0003A868  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003EC0C 0003A86C  3B C3 CE 34 */	addi r30, r3, lbl_8063CE34@l
/* 8003EC10 0003A870  38 7E 00 80 */	addi r3, r30, 0x80
/* 8003EC14 0003A874  48 35 B3 01 */	bl func_80399F14
/* 8003EC18 0003A878  7C 7F 1B 78 */	mr r31, r3
/* 8003EC1C 0003A87C  3B 80 00 00 */	li r28, 0
/* 8003EC20 0003A880  48 00 00 60 */	b lbl_8003EC80
lbl_8003EC24:
/* 8003EC24 0003A884  7F 84 E3 78 */	mr r4, r28
/* 8003EC28 0003A888  7F A5 EB 78 */	mr r5, r29
/* 8003EC2C 0003A88C  38 7E 00 80 */	addi r3, r30, 0x80
/* 8003EC30 0003A890  48 35 B3 35 */	bl func_80399F64
/* 8003EC34 0003A894  7C 1B 18 40 */	cmplw r27, r3
/* 8003EC38 0003A898  40 82 00 44 */	bne lbl_8003EC7C
/* 8003EC3C 0003A89C  88 1A 00 03 */	lbz r0, 3(r26)
/* 8003EC40 0003A8A0  7C 00 07 74 */	extsb r0, r0
/* 8003EC44 0003A8A4  2C 00 00 01 */	cmpwi r0, 1
/* 8003EC48 0003A8A8  40 82 00 18 */	bne lbl_8003EC60
/* 8003EC4C 0003A8AC  7F 84 E3 78 */	mr r4, r28
/* 8003EC50 0003A8B0  7F A5 EB 78 */	mr r5, r29
/* 8003EC54 0003A8B4  38 7E 00 80 */	addi r3, r30, 0x80
/* 8003EC58 0003A8B8  48 35 B3 61 */	bl func_80399FB8
/* 8003EC5C 0003A8BC  48 00 00 30 */	b lbl_8003EC8C
lbl_8003EC60:
/* 8003EC60 0003A8C0  2C 00 00 02 */	cmpwi r0, 2
/* 8003EC64 0003A8C4  40 82 00 18 */	bne lbl_8003EC7C
/* 8003EC68 0003A8C8  7F 84 E3 78 */	mr r4, r28
/* 8003EC6C 0003A8CC  7F A5 EB 78 */	mr r5, r29
/* 8003EC70 0003A8D0  38 7E 00 80 */	addi r3, r30, 0x80
/* 8003EC74 0003A8D4  48 35 B3 9D */	bl func_8039A010
/* 8003EC78 0003A8D8  48 00 00 14 */	b lbl_8003EC8C
lbl_8003EC7C:
/* 8003EC7C 0003A8DC  3B 9C 00 01 */	addi r28, r28, 1
lbl_8003EC80:
/* 8003EC80 0003A8E0  7C 1C F8 00 */	cmpw r28, r31
/* 8003EC84 0003A8E4  41 80 FF A0 */	blt lbl_8003EC24
/* 8003EC88 0003A8E8  38 60 00 00 */	li r3, 0
lbl_8003EC8C:
/* 8003EC8C 0003A8EC  39 61 00 20 */	addi r11, r1, 0x20
/* 8003EC90 0003A8F0  48 18 84 E1 */	bl _restgpr_26
/* 8003EC94 0003A8F4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003EC98 0003A8F8  7C 08 03 A6 */	mtlr r0
/* 8003EC9C 0003A8FC  38 21 00 20 */	addi r1, r1, 0x20
/* 8003ECA0 0003A900  4E 80 00 20 */	blr

.global func_8003ECA4
func_8003ECA4:
/* 8003ECA4 0003A904  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003ECA8 0003A908  7C 08 02 A6 */	mflr r0
/* 8003ECAC 0003A90C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003ECB0 0003A910  39 61 00 30 */	addi r11, r1, 0x30
/* 8003ECB4 0003A914  48 18 84 61 */	bl _savegpr_22
/* 8003ECB8 0003A918  88 03 00 03 */	lbz r0, 3(r3)
/* 8003ECBC 0003A91C  7C 76 1B 78 */	mr r22, r3
/* 8003ECC0 0003A920  8B 83 00 01 */	lbz r28, 1(r3)
/* 8003ECC4 0003A924  7C 97 23 78 */	mr r23, r4
/* 8003ECC8 0003A928  7C 00 07 75 */	extsb. r0, r0
/* 8003ECCC 0003A92C  7C B8 2B 78 */	mr r24, r5
/* 8003ECD0 0003A930  7C D9 33 78 */	mr r25, r6
/* 8003ECD4 0003A934  40 82 00 0C */	bne lbl_8003ECE0
/* 8003ECD8 0003A938  38 60 00 00 */	li r3, 0
/* 8003ECDC 0003A93C  48 00 00 F8 */	b lbl_8003EDD4
lbl_8003ECE0:
/* 8003ECE0 0003A940  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003ECE4 0003A944  3B A3 CE 34 */	addi r29, r3, lbl_8063CE34@l
/* 8003ECE8 0003A948  38 7D 00 80 */	addi r3, r29, 0x80
/* 8003ECEC 0003A94C  48 35 B2 29 */	bl func_80399F14
/* 8003ECF0 0003A950  7C 7E 1B 78 */	mr r30, r3
/* 8003ECF4 0003A954  38 76 00 0C */	addi r3, r22, 0xc
/* 8003ECF8 0003A958  38 80 00 00 */	li r4, 0
/* 8003ECFC 0003A95C  38 A0 00 0C */	li r5, 0xc
/* 8003ED00 0003A960  4B FC 54 05 */	bl memset
/* 8003ED04 0003A964  3B 40 00 00 */	li r26, 0
/* 8003ED08 0003A968  48 00 00 C0 */	b lbl_8003EDC8
lbl_8003ED0C:
/* 8003ED0C 0003A96C  7F 44 D3 78 */	mr r4, r26
/* 8003ED10 0003A970  38 7D 00 80 */	addi r3, r29, 0x80
/* 8003ED14 0003A974  48 35 B2 1D */	bl func_80399F30
/* 8003ED18 0003A978  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003ED1C 0003A97C  7C 17 00 00 */	cmpw r23, r0
/* 8003ED20 0003A980  40 82 00 A4 */	bne lbl_8003EDC4
/* 8003ED24 0003A984  7F 44 D3 78 */	mr r4, r26
/* 8003ED28 0003A988  7F 85 E3 78 */	mr r5, r28
/* 8003ED2C 0003A98C  38 7D 00 80 */	addi r3, r29, 0x80
/* 8003ED30 0003A990  48 35 B2 35 */	bl func_80399F64
/* 8003ED34 0003A994  28 03 01 00 */	cmplwi r3, 0x100
/* 8003ED38 0003A998  7C 7F 1B 78 */	mr r31, r3
/* 8003ED3C 0003A99C  40 80 00 88 */	bge lbl_8003EDC4
/* 8003ED40 0003A9A0  88 16 00 03 */	lbz r0, 3(r22)
/* 8003ED44 0003A9A4  3B 60 00 00 */	li r27, 0
/* 8003ED48 0003A9A8  7C 00 07 74 */	extsb r0, r0
/* 8003ED4C 0003A9AC  2C 00 00 01 */	cmpwi r0, 1
/* 8003ED50 0003A9B0  40 82 00 1C */	bne lbl_8003ED6C
/* 8003ED54 0003A9B4  7F 44 D3 78 */	mr r4, r26
/* 8003ED58 0003A9B8  7F 85 E3 78 */	mr r5, r28
/* 8003ED5C 0003A9BC  38 7D 00 80 */	addi r3, r29, 0x80
/* 8003ED60 0003A9C0  48 35 B2 59 */	bl func_80399FB8
/* 8003ED64 0003A9C4  7C 7B 1B 78 */	mr r27, r3
/* 8003ED68 0003A9C8  48 00 00 20 */	b lbl_8003ED88
lbl_8003ED6C:
/* 8003ED6C 0003A9CC  2C 00 00 02 */	cmpwi r0, 2
/* 8003ED70 0003A9D0  40 82 00 18 */	bne lbl_8003ED88
/* 8003ED74 0003A9D4  7F 44 D3 78 */	mr r4, r26
/* 8003ED78 0003A9D8  7F 85 E3 78 */	mr r5, r28
/* 8003ED7C 0003A9DC  38 7D 00 80 */	addi r3, r29, 0x80
/* 8003ED80 0003A9E0  48 35 B2 91 */	bl func_8039A010
/* 8003ED84 0003A9E4  7C 7B 1B 78 */	mr r27, r3
lbl_8003ED88:
/* 8003ED88 0003A9E8  2C 1B 00 00 */	cmpwi r27, 0
/* 8003ED8C 0003A9EC  41 82 00 38 */	beq lbl_8003EDC4
/* 8003ED90 0003A9F0  7F 03 C3 78 */	mr r3, r24
/* 8003ED94 0003A9F4  7F 64 DB 78 */	mr r4, r27
/* 8003ED98 0003A9F8  48 19 C7 25 */	bl func_801DB4BC
/* 8003ED9C 0003A9FC  7C 60 00 34 */	cntlzw r0, r3
/* 8003EDA0 0003AA00  7F 23 CB 78 */	mr r3, r25
/* 8003EDA4 0003AA04  7F 64 DB 78 */	mr r4, r27
/* 8003EDA8 0003AA08  54 05 D9 7E */	srwi r5, r0, 5
/* 8003EDAC 0003AA0C  4B FF FA C1 */	bl func_8003E86C
/* 8003EDB0 0003AA10  B3 F6 00 0C */	sth r31, 0xc(r22)
/* 8003EDB4 0003AA14  7F 63 DB 78 */	mr r3, r27
/* 8003EDB8 0003AA18  93 16 00 10 */	stw r24, 0x10(r22)
/* 8003EDBC 0003AA1C  93 76 00 14 */	stw r27, 0x14(r22)
/* 8003EDC0 0003AA20  48 00 00 14 */	b lbl_8003EDD4
lbl_8003EDC4:
/* 8003EDC4 0003AA24  3B 5A 00 01 */	addi r26, r26, 1
lbl_8003EDC8:
/* 8003EDC8 0003AA28  7C 1A F0 00 */	cmpw r26, r30
/* 8003EDCC 0003AA2C  41 80 FF 40 */	blt lbl_8003ED0C
/* 8003EDD0 0003AA30  38 60 00 00 */	li r3, 0
lbl_8003EDD4:
/* 8003EDD4 0003AA34  39 61 00 30 */	addi r11, r1, 0x30
/* 8003EDD8 0003AA38  48 18 83 89 */	bl _restgpr_22
/* 8003EDDC 0003AA3C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003EDE0 0003AA40  7C 08 03 A6 */	mtlr r0
/* 8003EDE4 0003AA44  38 21 00 30 */	addi r1, r1, 0x30
/* 8003EDE8 0003AA48  4E 80 00 20 */	blr

.global func_8003EDEC
func_8003EDEC:
/* 8003EDEC 0003AA4C  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8003EDF0 0003AA50  7C 08 02 A6 */	mflr r0
/* 8003EDF4 0003AA54  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003EDF8 0003AA58  39 61 00 50 */	addi r11, r1, 0x50
/* 8003EDFC 0003AA5C  48 18 83 21 */	bl _savegpr_24
/* 8003EE00 0003AA60  3C C0 80 64 */	lis r6, lbl_8063CE34@ha
/* 8003EE04 0003AA64  7C 7C 1B 78 */	mr r28, r3
/* 8003EE08 0003AA68  3B E6 CE 34 */	addi r31, r6, lbl_8063CE34@l
/* 8003EE0C 0003AA6C  7C 98 23 78 */	mr r24, r4
/* 8003EE10 0003AA70  7C BD 2B 78 */	mr r29, r5
/* 8003EE14 0003AA74  7C FE 3B 78 */	mr r30, r7
/* 8003EE18 0003AA78  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE1C 0003AA7C  48 35 66 75 */	bl func_80395490
/* 8003EE20 0003AA80  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE24 0003AA84  7F 04 C3 78 */	mr r4, r24
/* 8003EE28 0003AA88  90 01 00 18 */	stw r0, 0x18(r1)
/* 8003EE2C 0003AA8C  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE30 0003AA90  48 35 67 01 */	bl func_80395530
/* 8003EE34 0003AA94  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE38 0003AA98  7F 04 C3 78 */	mr r4, r24
/* 8003EE3C 0003AA9C  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8003EE40 0003AAA0  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE44 0003AAA4  48 35 67 8D */	bl func_803955D0
/* 8003EE48 0003AAA8  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE4C 0003AAAC  7F 04 C3 78 */	mr r4, r24
/* 8003EE50 0003AAB0  90 01 00 20 */	stw r0, 0x20(r1)
/* 8003EE54 0003AAB4  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE58 0003AAB8  48 35 68 19 */	bl func_80395670
/* 8003EE5C 0003AABC  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE60 0003AAC0  7F 04 C3 78 */	mr r4, r24
/* 8003EE64 0003AAC4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003EE68 0003AAC8  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE6C 0003AACC  48 35 68 A5 */	bl func_80395710
/* 8003EE70 0003AAD0  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE74 0003AAD4  7F 04 C3 78 */	mr r4, r24
/* 8003EE78 0003AAD8  90 01 00 28 */	stw r0, 0x28(r1)
/* 8003EE7C 0003AADC  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE80 0003AAE0  48 35 63 E9 */	bl func_80395268
/* 8003EE84 0003AAE4  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE88 0003AAE8  7F 04 C3 78 */	mr r4, r24
/* 8003EE8C 0003AAEC  90 01 00 08 */	stw r0, 8(r1)
/* 8003EE90 0003AAF0  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EE94 0003AAF4  48 35 64 0D */	bl func_803952A0
/* 8003EE98 0003AAF8  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EE9C 0003AAFC  7F 04 C3 78 */	mr r4, r24
/* 8003EEA0 0003AB00  90 01 00 0C */	stw r0, 0xc(r1)
/* 8003EEA4 0003AB04  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EEA8 0003AB08  48 35 64 31 */	bl func_803952D8
/* 8003EEAC 0003AB0C  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8003EEB0 0003AB10  7F 04 C3 78 */	mr r4, r24
/* 8003EEB4 0003AB14  90 01 00 10 */	stw r0, 0x10(r1)
/* 8003EEB8 0003AB18  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EEBC 0003AB1C  48 35 64 55 */	bl func_80395310
/* 8003EEC0 0003AB20  88 1C 00 01 */	lbz r0, 1(r28)
/* 8003EEC4 0003AB24  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8003EEC8 0003AB28  90 61 00 14 */	stw r3, 0x14(r1)
/* 8003EECC 0003AB2C  2C 00 00 00 */	cmpwi r0, 0
/* 8003EED0 0003AB30  41 82 01 50 */	beq lbl_8003F020
/* 8003EED4 0003AB34  7F 04 C3 78 */	mr r4, r24
/* 8003EED8 0003AB38  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EEDC 0003AB3C  48 35 65 81 */	bl func_8039545C
/* 8003EEE0 0003AB40  90 7D 00 18 */	stw r3, 0x18(r29)
/* 8003EEE4 0003AB44  7F 04 C3 78 */	mr r4, r24
/* 8003EEE8 0003AB48  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EEEC 0003AB4C  48 35 66 11 */	bl func_803954FC
/* 8003EEF0 0003AB50  90 7D 00 38 */	stw r3, 0x38(r29)
/* 8003EEF4 0003AB54  7F 04 C3 78 */	mr r4, r24
/* 8003EEF8 0003AB58  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EEFC 0003AB5C  48 35 66 A1 */	bl func_8039559C
/* 8003EF00 0003AB60  90 7D 00 58 */	stw r3, 0x58(r29)
/* 8003EF04 0003AB64  7F 04 C3 78 */	mr r4, r24
/* 8003EF08 0003AB68  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EF0C 0003AB6C  48 35 67 31 */	bl func_8039563C
/* 8003EF10 0003AB70  90 7D 00 78 */	stw r3, 0x78(r29)
/* 8003EF14 0003AB74  7F 04 C3 78 */	mr r4, r24
/* 8003EF18 0003AB78  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003EF1C 0003AB7C  48 35 67 C1 */	bl func_803956DC
/* 8003EF20 0003AB80  90 7D 00 98 */	stw r3, 0x98(r29)
/* 8003EF24 0003AB84  3B 1D 00 0C */	addi r24, r29, 0xc
/* 8003EF28 0003AB88  3B 21 00 18 */	addi r25, r1, 0x18
/* 8003EF2C 0003AB8C  3B 5D 00 AC */	addi r26, r29, 0xac
/* 8003EF30 0003AB90  3B 60 00 00 */	li r27, 0
/* 8003EF34 0003AB94  48 00 00 90 */	b lbl_8003EFC4
lbl_8003EF38:
/* 8003EF38 0003AB98  80 78 00 0C */	lwz r3, 0xc(r24)
/* 8003EF3C 0003AB9C  54 60 BE BE */	rlwinm r0, r3, 0x17, 0x1a, 0x1f
/* 8003EF40 0003ABA0  2C 00 00 04 */	cmpwi r0, 4
/* 8003EF44 0003ABA4  41 82 00 2C */	beq lbl_8003EF70
/* 8003EF48 0003ABA8  40 80 00 50 */	bge lbl_8003EF98
/* 8003EF4C 0003ABAC  2C 00 00 03 */	cmpwi r0, 3
/* 8003EF50 0003ABB0  40 80 00 08 */	bge lbl_8003EF58
/* 8003EF54 0003ABB4  48 00 00 44 */	b lbl_8003EF98
lbl_8003EF58:
/* 8003EF58 0003ABB8  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003EF5C 0003ABBC  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003EF60 0003ABC0  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003EF64 0003ABC4  48 35 70 D9 */	bl func_8039603C
/* 8003EF68 0003ABC8  98 78 00 08 */	stb r3, 8(r24)
/* 8003EF6C 0003ABCC  48 00 00 50 */	b lbl_8003EFBC
lbl_8003EF70:
/* 8003EF70 0003ABD0  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003EF74 0003ABD4  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003EF78 0003ABD8  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003EF7C 0003ABDC  48 35 71 69 */	bl func_803960E4
/* 8003EF80 0003ABE0  98 78 00 08 */	stb r3, 8(r24)
/* 8003EF84 0003ABE4  7F 83 E3 78 */	mr r3, r28
/* 8003EF88 0003ABE8  80 98 00 0C */	lwz r4, 0xc(r24)
/* 8003EF8C 0003ABEC  4B FF FC 41 */	bl func_8003EBCC
/* 8003EF90 0003ABF0  90 78 00 10 */	stw r3, 0x10(r24)
/* 8003EF94 0003ABF4  48 00 00 28 */	b lbl_8003EFBC
lbl_8003EF98:
/* 8003EF98 0003ABF8  28 03 00 64 */	cmplwi r3, 0x64
/* 8003EF9C 0003ABFC  40 82 00 1C */	bne lbl_8003EFB8
/* 8003EFA0 0003AC00  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003EFA4 0003AC04  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003EFA8 0003AC08  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003EFAC 0003AC0C  48 35 71 39 */	bl func_803960E4
/* 8003EFB0 0003AC10  98 78 00 08 */	stb r3, 8(r24)
/* 8003EFB4 0003AC14  48 00 00 08 */	b lbl_8003EFBC
lbl_8003EFB8:
/* 8003EFB8 0003AC18  9B 78 00 08 */	stb r27, 8(r24)
lbl_8003EFBC:
/* 8003EFBC 0003AC1C  3B 18 00 20 */	addi r24, r24, 0x20
/* 8003EFC0 0003AC20  3B 39 00 04 */	addi r25, r25, 4
lbl_8003EFC4:
/* 8003EFC4 0003AC24  7C 18 D0 40 */	cmplw r24, r26
/* 8003EFC8 0003AC28  40 82 FF 70 */	bne lbl_8003EF38
/* 8003EFCC 0003AC2C  3F 40 80 64 */	lis r26, lbl_8063CE34@ha
/* 8003EFD0 0003AC30  3B 21 00 08 */	addi r25, r1, 8
/* 8003EFD4 0003AC34  3B 5A CE 34 */	addi r26, r26, lbl_8063CE34@l
/* 8003EFD8 0003AC38  3B E0 00 00 */	li r31, 0
/* 8003EFDC 0003AC3C  3B 60 00 FF */	li r27, 0xff
lbl_8003EFE0:
/* 8003EFE0 0003AC40  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003EFE4 0003AC44  28 05 00 07 */	cmplwi r5, 7
/* 8003EFE8 0003AC48  40 82 00 10 */	bne lbl_8003EFF8
/* 8003EFEC 0003AC4C  7C 7D FA 14 */	add r3, r29, r31
/* 8003EFF0 0003AC50  9B 63 00 08 */	stb r27, 8(r3)
/* 8003EFF4 0003AC54  48 00 00 18 */	b lbl_8003F00C
lbl_8003EFF8:
/* 8003EFF8 0003AC58  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003EFFC 0003AC5C  38 7A 00 28 */	addi r3, r26, 0x28
/* 8003F000 0003AC60  48 35 70 91 */	bl func_80396090
/* 8003F004 0003AC64  7C 9D FA 14 */	add r4, r29, r31
/* 8003F008 0003AC68  98 64 00 08 */	stb r3, 8(r4)
lbl_8003F00C:
/* 8003F00C 0003AC6C  3B FF 00 01 */	addi r31, r31, 1
/* 8003F010 0003AC70  3B 39 00 04 */	addi r25, r25, 4
/* 8003F014 0003AC74  2C 1F 00 04 */	cmpwi r31, 4
/* 8003F018 0003AC78  41 80 FF C8 */	blt lbl_8003EFE0
/* 8003F01C 0003AC7C  48 00 01 4C */	b lbl_8003F168
lbl_8003F020:
/* 8003F020 0003AC80  7F 04 C3 78 */	mr r4, r24
/* 8003F024 0003AC84  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003F028 0003AC88  48 35 64 01 */	bl func_80395428
/* 8003F02C 0003AC8C  90 7D 00 18 */	stw r3, 0x18(r29)
/* 8003F030 0003AC90  7F 04 C3 78 */	mr r4, r24
/* 8003F034 0003AC94  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003F038 0003AC98  48 35 64 91 */	bl func_803954C8
/* 8003F03C 0003AC9C  90 7D 00 38 */	stw r3, 0x38(r29)
/* 8003F040 0003ACA0  7F 04 C3 78 */	mr r4, r24
/* 8003F044 0003ACA4  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003F048 0003ACA8  48 35 65 21 */	bl func_80395568
/* 8003F04C 0003ACAC  90 7D 00 58 */	stw r3, 0x58(r29)
/* 8003F050 0003ACB0  7F 04 C3 78 */	mr r4, r24
/* 8003F054 0003ACB4  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003F058 0003ACB8  48 35 65 B1 */	bl func_80395608
/* 8003F05C 0003ACBC  90 7D 00 78 */	stw r3, 0x78(r29)
/* 8003F060 0003ACC0  7F 04 C3 78 */	mr r4, r24
/* 8003F064 0003ACC4  38 7F 00 2C */	addi r3, r31, 0x2c
/* 8003F068 0003ACC8  48 35 66 41 */	bl func_803956A8
/* 8003F06C 0003ACCC  90 7D 00 98 */	stw r3, 0x98(r29)
/* 8003F070 0003ACD0  3B 1D 00 0C */	addi r24, r29, 0xc
/* 8003F074 0003ACD4  3B 21 00 18 */	addi r25, r1, 0x18
/* 8003F078 0003ACD8  3B 7D 00 AC */	addi r27, r29, 0xac
/* 8003F07C 0003ACDC  3B 40 00 00 */	li r26, 0
/* 8003F080 0003ACE0  48 00 00 90 */	b lbl_8003F110
lbl_8003F084:
/* 8003F084 0003ACE4  80 78 00 0C */	lwz r3, 0xc(r24)
/* 8003F088 0003ACE8  54 60 BE BE */	rlwinm r0, r3, 0x17, 0x1a, 0x1f
/* 8003F08C 0003ACEC  2C 00 00 04 */	cmpwi r0, 4
/* 8003F090 0003ACF0  41 82 00 2C */	beq lbl_8003F0BC
/* 8003F094 0003ACF4  40 80 00 50 */	bge lbl_8003F0E4
/* 8003F098 0003ACF8  2C 00 00 03 */	cmpwi r0, 3
/* 8003F09C 0003ACFC  40 80 00 08 */	bge lbl_8003F0A4
/* 8003F0A0 0003AD00  48 00 00 44 */	b lbl_8003F0E4
lbl_8003F0A4:
/* 8003F0A4 0003AD04  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003F0A8 0003AD08  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003F0AC 0003AD0C  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003F0B0 0003AD10  48 35 6E 91 */	bl func_80395F40
/* 8003F0B4 0003AD14  98 78 00 08 */	stb r3, 8(r24)
/* 8003F0B8 0003AD18  48 00 00 50 */	b lbl_8003F108
lbl_8003F0BC:
/* 8003F0BC 0003AD1C  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003F0C0 0003AD20  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003F0C4 0003AD24  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003F0C8 0003AD28  48 35 6F 21 */	bl func_80395FE8
/* 8003F0CC 0003AD2C  98 78 00 08 */	stb r3, 8(r24)
/* 8003F0D0 0003AD30  7F 83 E3 78 */	mr r3, r28
/* 8003F0D4 0003AD34  80 98 00 0C */	lwz r4, 0xc(r24)
/* 8003F0D8 0003AD38  4B FF FA F5 */	bl func_8003EBCC
/* 8003F0DC 0003AD3C  90 78 00 10 */	stw r3, 0x10(r24)
/* 8003F0E0 0003AD40  48 00 00 28 */	b lbl_8003F108
lbl_8003F0E4:
/* 8003F0E4 0003AD44  28 03 00 64 */	cmplwi r3, 0x64
/* 8003F0E8 0003AD48  40 82 00 1C */	bne lbl_8003F104
/* 8003F0EC 0003AD4C  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003F0F0 0003AD50  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003F0F4 0003AD54  80 B9 00 00 */	lwz r5, 0(r25)
/* 8003F0F8 0003AD58  48 35 6E F1 */	bl func_80395FE8
/* 8003F0FC 0003AD5C  98 78 00 08 */	stb r3, 8(r24)
/* 8003F100 0003AD60  48 00 00 08 */	b lbl_8003F108
lbl_8003F104:
/* 8003F104 0003AD64  9B 58 00 08 */	stb r26, 8(r24)
lbl_8003F108:
/* 8003F108 0003AD68  3B 18 00 20 */	addi r24, r24, 0x20
/* 8003F10C 0003AD6C  3B 39 00 04 */	addi r25, r25, 4
lbl_8003F110:
/* 8003F110 0003AD70  7C 18 D8 40 */	cmplw r24, r27
/* 8003F114 0003AD74  40 82 FF 70 */	bne lbl_8003F084
/* 8003F118 0003AD78  3F E0 80 64 */	lis r31, lbl_8063CE34@ha
/* 8003F11C 0003AD7C  3B 41 00 08 */	addi r26, r1, 8
/* 8003F120 0003AD80  3B FF CE 34 */	addi r31, r31, lbl_8063CE34@l
/* 8003F124 0003AD84  3B 20 00 00 */	li r25, 0
/* 8003F128 0003AD88  3B 60 00 FF */	li r27, 0xff
lbl_8003F12C:
/* 8003F12C 0003AD8C  80 BA 00 00 */	lwz r5, 0(r26)
/* 8003F130 0003AD90  28 05 00 07 */	cmplwi r5, 7
/* 8003F134 0003AD94  40 82 00 10 */	bne lbl_8003F144
/* 8003F138 0003AD98  7C 7D CA 14 */	add r3, r29, r25
/* 8003F13C 0003AD9C  9B 63 00 08 */	stb r27, 8(r3)
/* 8003F140 0003ADA0  48 00 00 18 */	b lbl_8003F158
lbl_8003F144:
/* 8003F144 0003ADA4  80 9C 00 04 */	lwz r4, 4(r28)
/* 8003F148 0003ADA8  38 7F 00 28 */	addi r3, r31, 0x28
/* 8003F14C 0003ADAC  48 35 6E 49 */	bl func_80395F94
/* 8003F150 0003ADB0  7C 9D CA 14 */	add r4, r29, r25
/* 8003F154 0003ADB4  98 64 00 08 */	stb r3, 8(r4)
lbl_8003F158:
/* 8003F158 0003ADB8  3B 39 00 01 */	addi r25, r25, 1
/* 8003F15C 0003ADBC  3B 5A 00 04 */	addi r26, r26, 4
/* 8003F160 0003ADC0  2C 19 00 04 */	cmpwi r25, 4
/* 8003F164 0003ADC4  41 80 FF C8 */	blt lbl_8003F12C
lbl_8003F168:
/* 8003F168 0003ADC8  38 00 00 01 */	li r0, 1
/* 8003F16C 0003ADCC  3B 3D 00 0C */	addi r25, r29, 0xc
/* 8003F170 0003ADD0  98 1D 00 00 */	stb r0, 0(r29)
/* 8003F174 0003ADD4  3B 9D 00 AC */	addi r28, r29, 0xac
/* 8003F178 0003ADD8  48 00 01 04 */	b lbl_8003F27C
lbl_8003F17C:
/* 8003F17C 0003ADDC  80 99 00 0C */	lwz r4, 0xc(r25)
/* 8003F180 0003ADE0  2C 04 00 00 */	cmpwi r4, 0
/* 8003F184 0003ADE4  41 82 00 F4 */	beq lbl_8003F278
/* 8003F188 0003ADE8  28 04 00 64 */	cmplwi r4, 0x64
/* 8003F18C 0003ADEC  41 82 00 EC */	beq lbl_8003F278
/* 8003F190 0003ADF0  80 19 00 00 */	lwz r0, 0(r25)
/* 8003F194 0003ADF4  7C 04 00 40 */	cmplw r4, r0
/* 8003F198 0003ADF8  41 82 00 E0 */	beq lbl_8003F278
/* 8003F19C 0003ADFC  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F1A0 0003AE00  48 19 C3 1D */	bl func_801DB4BC
/* 8003F1A4 0003AE04  2C 1E 00 00 */	cmpwi r30, 0
/* 8003F1A8 0003AE08  41 82 00 1C */	beq lbl_8003F1C4
/* 8003F1AC 0003AE0C  7C 60 00 34 */	cntlzw r0, r3
/* 8003F1B0 0003AE10  80 99 00 0C */	lwz r4, 0xc(r25)
/* 8003F1B4 0003AE14  7F C3 F3 78 */	mr r3, r30
/* 8003F1B8 0003AE18  54 05 D9 7E */	srwi r5, r0, 5
/* 8003F1BC 0003AE1C  4B FF F6 B1 */	bl func_8003E86C
/* 8003F1C0 0003AE20  48 00 00 44 */	b lbl_8003F204
lbl_8003F1C4:
/* 8003F1C4 0003AE24  2C 03 00 00 */	cmpwi r3, 0
/* 8003F1C8 0003AE28  40 82 00 30 */	bne lbl_8003F1F8
/* 8003F1CC 0003AE2C  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F1D0 0003AE30  80 99 00 0C */	lwz r4, 0xc(r25)
/* 8003F1D4 0003AE34  48 20 A6 49 */	bl func_8024981C
/* 8003F1D8 0003AE38  48 00 00 0C */	b lbl_8003F1E4
lbl_8003F1DC:
/* 8003F1DC 0003AE3C  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003F1E0 0003AE40  48 1E 53 A9 */	bl func_80224588
lbl_8003F1E4:
/* 8003F1E4 0003AE44  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F1E8 0003AE48  80 99 00 0C */	lwz r4, 0xc(r25)
/* 8003F1EC 0003AE4C  48 19 C2 D1 */	bl func_801DB4BC
/* 8003F1F0 0003AE50  2C 03 00 00 */	cmpwi r3, 0
/* 8003F1F4 0003AE54  41 82 FF E8 */	beq lbl_8003F1DC
lbl_8003F1F8:
/* 8003F1F8 0003AE58  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F1FC 0003AE5C  80 99 00 0C */	lwz r4, 0xc(r25)
/* 8003F200 0003AE60  48 19 C2 FD */	bl func_801DB4FC
lbl_8003F204:
/* 8003F204 0003AE64  80 99 00 10 */	lwz r4, 0x10(r25)
/* 8003F208 0003AE68  2C 04 00 00 */	cmpwi r4, 0
/* 8003F20C 0003AE6C  41 82 00 6C */	beq lbl_8003F278
/* 8003F210 0003AE70  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F214 0003AE74  48 19 C2 A9 */	bl func_801DB4BC
/* 8003F218 0003AE78  2C 1E 00 00 */	cmpwi r30, 0
/* 8003F21C 0003AE7C  41 82 00 1C */	beq lbl_8003F238
/* 8003F220 0003AE80  7C 60 00 34 */	cntlzw r0, r3
/* 8003F224 0003AE84  80 99 00 10 */	lwz r4, 0x10(r25)
/* 8003F228 0003AE88  7F C3 F3 78 */	mr r3, r30
/* 8003F22C 0003AE8C  54 05 D9 7E */	srwi r5, r0, 5
/* 8003F230 0003AE90  4B FF F6 3D */	bl func_8003E86C
/* 8003F234 0003AE94  48 00 00 44 */	b lbl_8003F278
lbl_8003F238:
/* 8003F238 0003AE98  2C 03 00 00 */	cmpwi r3, 0
/* 8003F23C 0003AE9C  40 82 00 30 */	bne lbl_8003F26C
/* 8003F240 0003AEA0  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F244 0003AEA4  80 99 00 10 */	lwz r4, 0x10(r25)
/* 8003F248 0003AEA8  48 20 A5 D5 */	bl func_8024981C
/* 8003F24C 0003AEAC  48 00 00 0C */	b lbl_8003F258
lbl_8003F250:
/* 8003F250 0003AEB0  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003F254 0003AEB4  48 1E 53 35 */	bl func_80224588
lbl_8003F258:
/* 8003F258 0003AEB8  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F25C 0003AEBC  80 99 00 10 */	lwz r4, 0x10(r25)
/* 8003F260 0003AEC0  48 19 C2 5D */	bl func_801DB4BC
/* 8003F264 0003AEC4  2C 03 00 00 */	cmpwi r3, 0
/* 8003F268 0003AEC8  41 82 FF E8 */	beq lbl_8003F250
lbl_8003F26C:
/* 8003F26C 0003AECC  80 7D 00 04 */	lwz r3, 4(r29)
/* 8003F270 0003AED0  80 99 00 10 */	lwz r4, 0x10(r25)
/* 8003F274 0003AED4  48 19 C2 89 */	bl func_801DB4FC
lbl_8003F278:
/* 8003F278 0003AED8  3B 39 00 20 */	addi r25, r25, 0x20
lbl_8003F27C:
/* 8003F27C 0003AEDC  7C 19 E0 40 */	cmplw r25, r28
/* 8003F280 0003AEE0  40 82 FE FC */	bne lbl_8003F17C
/* 8003F284 0003AEE4  39 61 00 50 */	addi r11, r1, 0x50
/* 8003F288 0003AEE8  48 18 7E E1 */	bl _restgpr_24
/* 8003F28C 0003AEEC  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003F290 0003AEF0  7C 08 03 A6 */	mtlr r0
/* 8003F294 0003AEF4  38 21 00 50 */	addi r1, r1, 0x50
/* 8003F298 0003AEF8  4E 80 00 20 */	blr

.global func_8003F29C
func_8003F29C:
/* 8003F29C 0003AEFC  94 21 FE 20 */	stwu r1, -0x1e0(r1)
/* 8003F2A0 0003AF00  7C 08 02 A6 */	mflr r0
/* 8003F2A4 0003AF04  90 01 01 E4 */	stw r0, 0x1e4(r1)
/* 8003F2A8 0003AF08  39 61 01 E0 */	addi r11, r1, 0x1e0
/* 8003F2AC 0003AF0C  48 18 7E 71 */	bl _savegpr_24
/* 8003F2B0 0003AF10  3D 20 80 64 */	lis r9, lbl_8063CE34@ha
/* 8003F2B4 0003AF14  7C 7D 1B 78 */	mr r29, r3
/* 8003F2B8 0003AF18  39 29 CE 34 */	addi r9, r9, lbl_8063CE34@l
/* 8003F2BC 0003AF1C  7C 9C 23 78 */	mr r28, r4
/* 8003F2C0 0003AF20  7C BA 2B 78 */	mr r26, r5
/* 8003F2C4 0003AF24  7C D9 33 78 */	mr r25, r6
/* 8003F2C8 0003AF28  7C FE 3B 78 */	mr r30, r7
/* 8003F2CC 0003AF2C  7D 18 43 78 */	mr r24, r8
/* 8003F2D0 0003AF30  38 69 00 28 */	addi r3, r9, 0x28
/* 8003F2D4 0003AF34  48 35 6B 11 */	bl func_80395DE4
/* 8003F2D8 0003AF38  7C 1C 18 40 */	cmplw r28, r3
/* 8003F2DC 0003AF3C  41 80 00 0C */	blt lbl_8003F2E8
/* 8003F2E0 0003AF40  38 60 00 00 */	li r3, 0
/* 8003F2E4 0003AF44  48 00 02 20 */	b lbl_8003F504
lbl_8003F2E8:
/* 8003F2E8 0003AF48  2C 1E 00 00 */	cmpwi r30, 0
/* 8003F2EC 0003AF4C  40 82 00 18 */	bne lbl_8003F304
/* 8003F2F0 0003AF50  38 61 00 08 */	addi r3, r1, 8
/* 8003F2F4 0003AF54  38 80 00 00 */	li r4, 0
/* 8003F2F8 0003AF58  38 A0 00 0A */	li r5, 0xa
/* 8003F2FC 0003AF5C  4B FC 4E 09 */	bl memset
/* 8003F300 0003AF60  3B C1 00 08 */	addi r30, r1, 8
lbl_8003F304:
/* 8003F304 0003AF64  7F 20 07 75 */	extsb. r0, r25
/* 8003F308 0003AF68  93 9D 00 04 */	stw r28, 4(r29)
/* 8003F30C 0003AF6C  9B 5D 00 01 */	stb r26, 1(r29)
/* 8003F310 0003AF70  41 80 00 08 */	blt lbl_8003F318
/* 8003F314 0003AF74  9B 3D 00 03 */	stb r25, 3(r29)
lbl_8003F318:
/* 8003F318 0003AF78  2C 1A 00 00 */	cmpwi r26, 0
/* 8003F31C 0003AF7C  41 82 00 30 */	beq lbl_8003F34C
/* 8003F320 0003AF80  3F 60 80 64 */	lis r27, lbl_8063CE34@ha
/* 8003F324 0003AF84  7F 84 E3 78 */	mr r4, r28
/* 8003F328 0003AF88  3B 7B CE 34 */	addi r27, r27, lbl_8063CE34@l
/* 8003F32C 0003AF8C  38 7B 00 28 */	addi r3, r27, 0x28
/* 8003F330 0003AF90  48 35 6B A9 */	bl func_80395ED8
/* 8003F334 0003AF94  7C 7F 1B 78 */	mr r31, r3
/* 8003F338 0003AF98  7F 84 E3 78 */	mr r4, r28
/* 8003F33C 0003AF9C  38 7B 00 28 */	addi r3, r27, 0x28
/* 8003F340 0003AFA0  48 35 6B CD */	bl func_80395F0C
/* 8003F344 0003AFA4  7C 79 1B 78 */	mr r25, r3
/* 8003F348 0003AFA8  48 00 00 2C */	b lbl_8003F374
lbl_8003F34C:
/* 8003F34C 0003AFAC  3F 60 80 64 */	lis r27, lbl_8063CE34@ha
/* 8003F350 0003AFB0  7F 84 E3 78 */	mr r4, r28
/* 8003F354 0003AFB4  3B 7B CE 34 */	addi r27, r27, lbl_8063CE34@l
/* 8003F358 0003AFB8  38 7B 00 28 */	addi r3, r27, 0x28
/* 8003F35C 0003AFBC  48 35 6B 15 */	bl func_80395E70
/* 8003F360 0003AFC0  7C 7F 1B 78 */	mr r31, r3
/* 8003F364 0003AFC4  7F 84 E3 78 */	mr r4, r28
/* 8003F368 0003AFC8  38 7B 00 28 */	addi r3, r27, 0x28
/* 8003F36C 0003AFCC  48 35 6B 39 */	bl func_80395EA4
/* 8003F370 0003AFD0  7C 79 1B 78 */	mr r25, r3
lbl_8003F374:
/* 8003F374 0003AFD4  2C 1F 00 00 */	cmpwi r31, 0
/* 8003F378 0003AFD8  41 82 00 0C */	beq lbl_8003F384
/* 8003F37C 0003AFDC  2C 19 00 00 */	cmpwi r25, 0
/* 8003F380 0003AFE0  40 82 00 0C */	bne lbl_8003F38C
lbl_8003F384:
/* 8003F384 0003AFE4  38 60 00 00 */	li r3, 0
/* 8003F388 0003AFE8  48 00 01 7C */	b lbl_8003F504
lbl_8003F38C:
/* 8003F38C 0003AFEC  38 61 00 18 */	addi r3, r1, 0x18
/* 8003F390 0003AFF0  4B FF F4 C5 */	bl cPlayer_ClearSwapControllerTimer
/* 8003F394 0003AFF4  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003F398 0003AFF8  7F 84 E3 78 */	mr r4, r28
/* 8003F39C 0003AFFC  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8003F3A0 0003B000  38 63 00 28 */	addi r3, r3, 0x28
/* 8003F3A4 0003B004  48 35 6A 5D */	bl func_80395E00
/* 8003F3A8 0003B008  2C 03 00 00 */	cmpwi r3, 0
/* 8003F3AC 0003B00C  41 82 00 D8 */	beq lbl_8003F484
/* 8003F3B0 0003B010  2C 18 00 00 */	cmpwi r24, 0
/* 8003F3B4 0003B014  41 82 00 38 */	beq lbl_8003F3EC
/* 8003F3B8 0003B018  7F E3 FB 78 */	mr r3, r31
/* 8003F3BC 0003B01C  7F 24 CB 78 */	mr r4, r25
/* 8003F3C0 0003B020  48 19 C0 FD */	bl func_801DB4BC
/* 8003F3C4 0003B024  7C 60 00 34 */	cntlzw r0, r3
/* 8003F3C8 0003B028  7F 24 CB 78 */	mr r4, r25
/* 8003F3CC 0003B02C  54 05 D9 7E */	srwi r5, r0, 5
/* 8003F3D0 0003B030  38 61 00 18 */	addi r3, r1, 0x18
/* 8003F3D4 0003B034  4B FF F4 99 */	bl func_8003E86C
/* 8003F3D8 0003B038  7F A3 EB 78 */	mr r3, r29
/* 8003F3DC 0003B03C  7F 84 E3 78 */	mr r4, r28
/* 8003F3E0 0003B040  7F E5 FB 78 */	mr r5, r31
/* 8003F3E4 0003B044  38 C1 00 18 */	addi r6, r1, 0x18
/* 8003F3E8 0003B048  4B FF F8 BD */	bl func_8003ECA4
lbl_8003F3EC:
/* 8003F3EC 0003B04C  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003F3F0 0003B050  7F 84 E3 78 */	mr r4, r28
/* 8003F3F4 0003B054  3B 63 CE 34 */	addi r27, r3, lbl_8063CE34@l
/* 8003F3F8 0003B058  38 7B 00 28 */	addi r3, r27, 0x28
/* 8003F3FC 0003B05C  48 35 6A 3D */	bl func_80395E38
/* 8003F400 0003B060  1F 23 00 0A */	mulli r25, r3, 0xa
/* 8003F404 0003B064  3B 5D 00 18 */	addi r26, r29, 0x18
/* 8003F408 0003B068  3B 00 00 00 */	li r24, 0
lbl_8003F40C:
/* 8003F40C 0003B06C  88 7E 00 00 */	lbz r3, 0(r30)
/* 8003F410 0003B070  88 1A 00 01 */	lbz r0, 1(r26)
/* 8003F414 0003B074  7C 00 18 40 */	cmplw r0, r3
/* 8003F418 0003B078  41 82 00 54 */	beq lbl_8003F46C
/* 8003F41C 0003B07C  98 7A 00 01 */	stb r3, 1(r26)
/* 8003F420 0003B080  7F 24 CB 78 */	mr r4, r25
/* 8003F424 0003B084  38 7B 00 30 */	addi r3, r27, 0x30
/* 8003F428 0003B088  48 35 66 E5 */	bl func_80395B0C
/* 8003F42C 0003B08C  7C 7C 1B 78 */	mr r28, r3
/* 8003F430 0003B090  7F 24 CB 78 */	mr r4, r25
/* 8003F434 0003B094  38 7B 00 30 */	addi r3, r27, 0x30
/* 8003F438 0003B098  48 35 66 6D */	bl func_80395AA4
/* 8003F43C 0003B09C  88 9A 00 01 */	lbz r4, 1(r26)
/* 8003F440 0003B0A0  57 80 04 3E */	clrlwi r0, r28, 0x10
/* 8003F444 0003B0A4  7C 00 20 00 */	cmpw r0, r4
/* 8003F448 0003B0A8  40 81 00 24 */	ble lbl_8003F46C
/* 8003F44C 0003B0AC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8003F450 0003B0B0  93 FA 00 04 */	stw r31, 4(r26)
/* 8003F454 0003B0B4  7F A3 EB 78 */	mr r3, r29
/* 8003F458 0003B0B8  7F 45 D3 78 */	mr r5, r26
/* 8003F45C 0003B0BC  7C 80 22 14 */	add r4, r0, r4
/* 8003F460 0003B0C0  38 E1 00 18 */	addi r7, r1, 0x18
/* 8003F464 0003B0C4  38 C0 00 00 */	li r6, 0
/* 8003F468 0003B0C8  4B FF F9 85 */	bl func_8003EDEC
lbl_8003F46C:
/* 8003F46C 0003B0CC  3B 18 00 01 */	addi r24, r24, 1
/* 8003F470 0003B0D0  3B 39 00 01 */	addi r25, r25, 1
/* 8003F474 0003B0D4  2C 18 00 0A */	cmpwi r24, 0xa
/* 8003F478 0003B0D8  3B DE 00 01 */	addi r30, r30, 1
/* 8003F47C 0003B0DC  3B 5A 00 AC */	addi r26, r26, 0xac
/* 8003F480 0003B0E0  41 80 FF 8C */	blt lbl_8003F40C
lbl_8003F484:
/* 8003F484 0003B0E4  38 61 00 18 */	addi r3, r1, 0x18
/* 8003F488 0003B0E8  4B FF F4 71 */	bl func_8003E8F8
/* 8003F48C 0003B0EC  2C 03 00 00 */	cmpwi r3, 0
/* 8003F490 0003B0F0  41 82 00 48 */	beq lbl_8003F4D8
/* 8003F494 0003B0F4  38 00 00 01 */	li r0, 1
/* 8003F498 0003B0F8  38 61 00 18 */	addi r3, r1, 0x18
/* 8003F49C 0003B0FC  98 1D 00 02 */	stb r0, 2(r29)
/* 8003F4A0 0003B100  4B FF F4 61 */	bl func_8003E900
/* 8003F4A4 0003B104  3C A0 80 04 */	lis r5, lbl_8003F51C@ha
/* 8003F4A8 0003B108  7C 64 1B 78 */	mr r4, r3
/* 8003F4AC 0003B10C  7F E3 FB 78 */	mr r3, r31
/* 8003F4B0 0003B110  7F A6 EB 78 */	mr r6, r29
/* 8003F4B4 0003B114  38 A5 F5 1C */	addi r5, r5, lbl_8003F51C@l
/* 8003F4B8 0003B118  38 E0 00 00 */	li r7, 0
/* 8003F4BC 0003B11C  48 20 A3 01 */	bl func_802497BC
/* 8003F4C0 0003B120  48 00 00 0C */	b lbl_8003F4CC
lbl_8003F4C4:
/* 8003F4C4 0003B124  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8003F4C8 0003B128  48 1E 50 C1 */	bl func_80224588
lbl_8003F4CC:
/* 8003F4CC 0003B12C  88 1D 00 02 */	lbz r0, 2(r29)
/* 8003F4D0 0003B130  2C 00 00 00 */	cmpwi r0, 0
/* 8003F4D4 0003B134  40 82 FF F0 */	bne lbl_8003F4C4
lbl_8003F4D8:
/* 8003F4D8 0003B138  38 61 00 18 */	addi r3, r1, 0x18
/* 8003F4DC 0003B13C  4B FF F4 2D */	bl func_8003E908
/* 8003F4E0 0003B140  7C 78 1B 78 */	mr r24, r3
/* 8003F4E4 0003B144  48 00 00 10 */	b lbl_8003F4F4
lbl_8003F4E8:
/* 8003F4E8 0003B148  7F E3 FB 78 */	mr r3, r31
/* 8003F4EC 0003B14C  48 19 C0 11 */	bl func_801DB4FC
/* 8003F4F0 0003B150  3B 18 00 04 */	addi r24, r24, 4
lbl_8003F4F4:
/* 8003F4F4 0003B154  80 98 00 00 */	lwz r4, 0(r24)
/* 8003F4F8 0003B158  2C 04 00 00 */	cmpwi r4, 0
/* 8003F4FC 0003B15C  40 82 FF EC */	bne lbl_8003F4E8
/* 8003F500 0003B160  38 60 00 01 */	li r3, 1
lbl_8003F504:
/* 8003F504 0003B164  39 61 01 E0 */	addi r11, r1, 0x1e0
/* 8003F508 0003B168  48 18 7C 61 */	bl _restgpr_24
/* 8003F50C 0003B16C  80 01 01 E4 */	lwz r0, 0x1e4(r1)
/* 8003F510 0003B170  7C 08 03 A6 */	mtlr r0
/* 8003F514 0003B174  38 21 01 E0 */	addi r1, r1, 0x1e0
/* 8003F518 0003B178  4E 80 00 20 */	blr
lbl_8003F51C:
/* 8003F51C 0003B17C  38 00 00 00 */	li r0, 0
/* 8003F520 0003B180  98 04 00 02 */	stb r0, 2(r4)
/* 8003F524 0003B184  4E 80 00 20 */	blr

.global func_8003F528
func_8003F528:
/* 8003F528 0003B188  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003F52C 0003B18C  7C 08 02 A6 */	mflr r0
/* 8003F530 0003B190  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003F534 0003B194  39 61 00 20 */	addi r11, r1, 0x20
/* 8003F538 0003B198  48 18 7B ED */	bl _savegpr_26
/* 8003F53C 0003B19C  3F C0 80 64 */	lis r30, lbl_8063CE34@ha
/* 8003F540 0003B1A0  7C 9D 23 78 */	mr r29, r4
/* 8003F544 0003B1A4  80 83 00 04 */	lwz r4, 4(r3)
/* 8003F548 0003B1A8  3B DE CE 34 */	addi r30, r30, lbl_8063CE34@l
/* 8003F54C 0003B1AC  7C 7A 1B 78 */	mr r26, r3
/* 8003F550 0003B1B0  7C BB 2B 78 */	mr r27, r5
/* 8003F554 0003B1B4  38 7E 00 28 */	addi r3, r30, 0x28
/* 8003F558 0003B1B8  48 35 68 A9 */	bl func_80395E00
/* 8003F55C 0003B1BC  2C 03 00 00 */	cmpwi r3, 0
/* 8003F560 0003B1C0  40 82 00 0C */	bne lbl_8003F56C
/* 8003F564 0003B1C4  38 60 00 00 */	li r3, 0
/* 8003F568 0003B1C8  48 00 00 84 */	b lbl_8003F5EC
lbl_8003F56C:
/* 8003F56C 0003B1CC  80 9A 00 04 */	lwz r4, 4(r26)
/* 8003F570 0003B1D0  38 7E 00 28 */	addi r3, r30, 0x28
/* 8003F574 0003B1D4  48 35 68 C5 */	bl func_80395E38
/* 8003F578 0003B1D8  1C 1D 00 AC */	mulli r0, r29, 0xac
/* 8003F57C 0003B1DC  7C 9A 02 14 */	add r4, r26, r0
/* 8003F580 0003B1E0  88 04 00 19 */	lbz r0, 0x19(r4)
/* 8003F584 0003B1E4  3B 84 00 18 */	addi r28, r4, 0x18
/* 8003F588 0003B1E8  7C 00 D8 40 */	cmplw r0, r27
/* 8003F58C 0003B1EC  41 82 00 5C */	beq lbl_8003F5E8
/* 8003F590 0003B1F0  1C 03 00 0A */	mulli r0, r3, 0xa
/* 8003F594 0003B1F4  38 7E 00 30 */	addi r3, r30, 0x30
/* 8003F598 0003B1F8  7F BD 02 14 */	add r29, r29, r0
/* 8003F59C 0003B1FC  7F A4 EB 78 */	mr r4, r29
/* 8003F5A0 0003B200  48 35 65 6D */	bl func_80395B0C
/* 8003F5A4 0003B204  7C 7F 1B 78 */	mr r31, r3
/* 8003F5A8 0003B208  7F A4 EB 78 */	mr r4, r29
/* 8003F5AC 0003B20C  38 7E 00 30 */	addi r3, r30, 0x30
/* 8003F5B0 0003B210  48 35 64 F5 */	bl func_80395AA4
/* 8003F5B4 0003B214  57 E0 04 3E */	clrlwi r0, r31, 0x10
/* 8003F5B8 0003B218  7C 00 D8 00 */	cmpw r0, r27
/* 8003F5BC 0003B21C  40 81 00 2C */	ble lbl_8003F5E8
/* 8003F5C0 0003B220  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8003F5C4 0003B224  9B 7C 00 01 */	stb r27, 1(r28)
/* 8003F5C8 0003B228  7F 43 D3 78 */	mr r3, r26
/* 8003F5CC 0003B22C  7F 85 E3 78 */	mr r5, r28
/* 8003F5D0 0003B230  7C 80 DA 14 */	add r4, r0, r27
/* 8003F5D4 0003B234  38 C0 00 01 */	li r6, 1
/* 8003F5D8 0003B238  38 E0 00 00 */	li r7, 0
/* 8003F5DC 0003B23C  4B FF F8 11 */	bl func_8003EDEC
/* 8003F5E0 0003B240  38 60 00 01 */	li r3, 1
/* 8003F5E4 0003B244  48 00 00 08 */	b lbl_8003F5EC
lbl_8003F5E8:
/* 8003F5E8 0003B248  38 60 00 00 */	li r3, 0
lbl_8003F5EC:
/* 8003F5EC 0003B24C  39 61 00 20 */	addi r11, r1, 0x20
/* 8003F5F0 0003B250  48 18 7B 81 */	bl _restgpr_26
/* 8003F5F4 0003B254  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003F5F8 0003B258  7C 08 03 A6 */	mtlr r0
/* 8003F5FC 0003B25C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003F600 0003B260  4E 80 00 20 */	blr

.global func_8003F604
func_8003F604:
/* 8003F604 0003B264  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8003F608 0003B268  7C 08 02 A6 */	mflr r0
/* 8003F60C 0003B26C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8003F610 0003B270  39 61 00 30 */	addi r11, r1, 0x30
/* 8003F614 0003B274  48 18 7B 09 */	bl _savegpr_24
/* 8003F618 0003B278  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 8003F61C 0003B27C  7C 99 23 78 */	mr r25, r4
/* 8003F620 0003B280  80 83 00 04 */	lwz r4, 4(r3)
/* 8003F624 0003B284  3B C5 CE 34 */	addi r30, r5, lbl_8063CE34@l
/* 8003F628 0003B288  7C 78 1B 78 */	mr r24, r3
/* 8003F62C 0003B28C  3B 60 00 00 */	li r27, 0
/* 8003F630 0003B290  38 7E 00 28 */	addi r3, r30, 0x28
/* 8003F634 0003B294  48 35 67 CD */	bl func_80395E00
/* 8003F638 0003B298  2C 03 00 00 */	cmpwi r3, 0
/* 8003F63C 0003B29C  40 82 00 0C */	bne lbl_8003F648
/* 8003F640 0003B2A0  38 60 00 00 */	li r3, 0
/* 8003F644 0003B2A4  48 00 00 98 */	b lbl_8003F6DC
lbl_8003F648:
/* 8003F648 0003B2A8  80 98 00 04 */	lwz r4, 4(r24)
/* 8003F64C 0003B2AC  38 7E 00 28 */	addi r3, r30, 0x28
/* 8003F650 0003B2B0  48 35 67 E9 */	bl func_80395E38
/* 8003F654 0003B2B4  1F 83 00 0A */	mulli r28, r3, 0xa
/* 8003F658 0003B2B8  3B B8 00 18 */	addi r29, r24, 0x18
/* 8003F65C 0003B2BC  3B 40 00 00 */	li r26, 0
lbl_8003F660:
/* 8003F660 0003B2C0  88 7D 00 01 */	lbz r3, 1(r29)
/* 8003F664 0003B2C4  88 19 00 00 */	lbz r0, 0(r25)
/* 8003F668 0003B2C8  7C 03 00 40 */	cmplw r3, r0
/* 8003F66C 0003B2CC  41 82 00 54 */	beq lbl_8003F6C0
/* 8003F670 0003B2D0  7F 84 E3 78 */	mr r4, r28
/* 8003F674 0003B2D4  38 7E 00 30 */	addi r3, r30, 0x30
/* 8003F678 0003B2D8  48 35 64 95 */	bl func_80395B0C
/* 8003F67C 0003B2DC  7C 7F 1B 78 */	mr r31, r3
/* 8003F680 0003B2E0  7F 84 E3 78 */	mr r4, r28
/* 8003F684 0003B2E4  38 7E 00 30 */	addi r3, r30, 0x30
/* 8003F688 0003B2E8  48 35 64 1D */	bl func_80395AA4
/* 8003F68C 0003B2EC  88 99 00 00 */	lbz r4, 0(r25)
/* 8003F690 0003B2F0  57 E0 04 3E */	clrlwi r0, r31, 0x10
/* 8003F694 0003B2F4  7C 00 20 00 */	cmpw r0, r4
/* 8003F698 0003B2F8  40 81 00 28 */	ble lbl_8003F6C0
/* 8003F69C 0003B2FC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8003F6A0 0003B300  98 9D 00 01 */	stb r4, 1(r29)
/* 8003F6A4 0003B304  7F 03 C3 78 */	mr r3, r24
/* 8003F6A8 0003B308  7F A5 EB 78 */	mr r5, r29
/* 8003F6AC 0003B30C  7C 80 22 14 */	add r4, r0, r4
/* 8003F6B0 0003B310  38 C0 00 01 */	li r6, 1
/* 8003F6B4 0003B314  38 E0 00 00 */	li r7, 0
/* 8003F6B8 0003B318  4B FF F7 35 */	bl func_8003EDEC
/* 8003F6BC 0003B31C  3B 60 00 01 */	li r27, 1
lbl_8003F6C0:
/* 8003F6C0 0003B320  3B 5A 00 01 */	addi r26, r26, 1
/* 8003F6C4 0003B324  3B 9C 00 01 */	addi r28, r28, 1
/* 8003F6C8 0003B328  2C 1A 00 0A */	cmpwi r26, 0xa
/* 8003F6CC 0003B32C  3B 39 00 01 */	addi r25, r25, 1
/* 8003F6D0 0003B330  3B BD 00 AC */	addi r29, r29, 0xac
/* 8003F6D4 0003B334  41 80 FF 8C */	blt lbl_8003F660
/* 8003F6D8 0003B338  7F 63 DB 78 */	mr r3, r27
lbl_8003F6DC:
/* 8003F6DC 0003B33C  39 61 00 30 */	addi r11, r1, 0x30
/* 8003F6E0 0003B340  48 18 7A 89 */	bl _restgpr_24
/* 8003F6E4 0003B344  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8003F6E8 0003B348  7C 08 03 A6 */	mtlr r0
/* 8003F6EC 0003B34C  38 21 00 30 */	addi r1, r1, 0x30
/* 8003F6F0 0003B350  4E 80 00 20 */	blr

.global func_8003F6F4
func_8003F6F4:
/* 8003F6F4 0003B354  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8003F6F8 0003B358  7C 08 02 A6 */	mflr r0
/* 8003F6FC 0003B35C  90 01 00 54 */	stw r0, 0x54(r1)
/* 8003F700 0003B360  39 61 00 50 */	addi r11, r1, 0x50
/* 8003F704 0003B364  48 18 79 F9 */	bl _savegpr_16
/* 8003F708 0003B368  2C 04 00 00 */	cmpwi r4, 0
/* 8003F70C 0003B36C  98 A3 00 00 */	stb r5, 0(r3)
/* 8003F710 0003B370  7C 71 1B 78 */	mr r17, r3
/* 8003F714 0003B374  7C 92 23 78 */	mr r18, r4
/* 8003F718 0003B378  40 82 00 0C */	bne lbl_8003F724
/* 8003F71C 0003B37C  38 60 00 00 */	li r3, 0
/* 8003F720 0003B380  48 00 06 40 */	b lbl_8003FD60
lbl_8003F724:
/* 8003F724 0003B384  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8003F728 0003B388  2C 04 00 00 */	cmpwi r4, 0
/* 8003F72C 0003B38C  41 82 00 C0 */	beq lbl_8003F7EC
/* 8003F730 0003B390  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8003F734 0003B394  48 19 BD 89 */	bl func_801DB4BC
/* 8003F738 0003B398  2C 03 00 00 */	cmpwi r3, 0
/* 8003F73C 0003B39C  7C 73 1B 78 */	mr r19, r3
/* 8003F740 0003B3A0  41 82 00 AC */	beq lbl_8003F7EC
/* 8003F744 0003B3A4  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8003F748 0003B3A8  2C 05 00 02 */	cmpwi r5, 2
/* 8003F74C 0003B3AC  40 80 00 08 */	bge lbl_8003F754
/* 8003F750 0003B3B0  38 A0 00 02 */	li r5, 2
lbl_8003F754:
/* 8003F754 0003B3B4  80 93 00 18 */	lwz r4, 0x18(r19)
/* 8003F758 0003B3B8  7E 63 9B 78 */	mr r3, r19
/* 8003F75C 0003B3BC  2C 04 00 02 */	cmpwi r4, 2
/* 8003F760 0003B3C0  40 80 00 08 */	bge lbl_8003F768
/* 8003F764 0003B3C4  38 80 00 02 */	li r4, 2
lbl_8003F768:
/* 8003F768 0003B3C8  80 D3 00 20 */	lwz r6, 0x20(r19)
/* 8003F76C 0003B3CC  48 1F EC 5D */	bl func_8023E3C8
/* 8003F770 0003B3D0  80 92 00 1C */	lwz r4, 0x1c(r18)
/* 8003F774 0003B3D4  A0 71 00 0C */	lhz r3, 0xc(r17)
/* 8003F778 0003B3D8  2C 04 00 00 */	cmpwi r4, 0
/* 8003F77C 0003B3DC  40 82 00 0C */	bne lbl_8003F788
/* 8003F780 0003B3E0  3A 00 00 00 */	li r16, 0
/* 8003F784 0003B3E4  48 00 00 24 */	b lbl_8003F7A8
lbl_8003F788:
/* 8003F788 0003B3E8  A0 12 00 E6 */	lhz r0, 0xe6(r18)
/* 8003F78C 0003B3EC  7C 03 00 40 */	cmplw r3, r0
/* 8003F790 0003B3F0  41 80 00 0C */	blt lbl_8003F79C
/* 8003F794 0003B3F4  3A 00 00 00 */	li r16, 0
/* 8003F798 0003B3F8  48 00 00 10 */	b lbl_8003F7A8
lbl_8003F79C:
/* 8003F79C 0003B3FC  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003F7A0 0003B400  7C 64 00 2E */	lwzx r3, r4, r0
/* 8003F7A4 0003B404  82 03 00 14 */	lwz r16, 0x14(r3)
lbl_8003F7A8:
/* 8003F7A8 0003B408  2C 10 00 00 */	cmpwi r16, 0
/* 8003F7AC 0003B40C  41 82 00 40 */	beq lbl_8003F7EC
/* 8003F7B0 0003B410  80 70 00 08 */	lwz r3, 8(r16)
/* 8003F7B4 0003B414  80 03 00 50 */	lwz r0, 0x50(r3)
/* 8003F7B8 0003B418  2C 00 00 00 */	cmpwi r0, 0
/* 8003F7BC 0003B41C  41 82 00 30 */	beq lbl_8003F7EC
/* 8003F7C0 0003B420  80 70 00 14 */	lwz r3, 0x14(r16)
/* 8003F7C4 0003B424  2C 03 00 00 */	cmpwi r3, 0
/* 8003F7C8 0003B428  41 82 00 20 */	beq lbl_8003F7E8
/* 8003F7CC 0003B42C  80 10 00 28 */	lwz r0, 0x28(r16)
/* 8003F7D0 0003B430  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8003F7D4 0003B434  41 82 00 14 */	beq lbl_8003F7E8
/* 8003F7D8 0003B438  48 1F EA F9 */	bl func_8023E2D0
/* 8003F7DC 0003B43C  80 10 00 28 */	lwz r0, 0x28(r16)
/* 8003F7E0 0003B440  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 8003F7E4 0003B444  90 10 00 28 */	stw r0, 0x28(r16)
lbl_8003F7E8:
/* 8003F7E8 0003B448  92 70 00 14 */	stw r19, 0x14(r16)
lbl_8003F7EC:
/* 8003F7EC 0003B44C  3B 51 00 18 */	addi r26, r17, 0x18
/* 8003F7F0 0003B450  3B 20 00 00 */	li r25, 0
/* 8003F7F4 0003B454  7F 5D D3 78 */	mr r29, r26
/* 8003F7F8 0003B458  3B E0 00 00 */	li r31, 0
lbl_8003F7FC:
/* 8003F7FC 0003B45C  88 1D 00 00 */	lbz r0, 0(r29)
/* 8003F800 0003B460  2C 00 00 00 */	cmpwi r0, 0
/* 8003F804 0003B464  41 82 03 D8 */	beq lbl_8003FBDC
/* 8003F808 0003B468  9B FD 00 00 */	stb r31, 0(r29)
/* 8003F80C 0003B46C  3A DD 00 0C */	addi r22, r29, 0xc
/* 8003F810 0003B470  3A 1D 00 AC */	addi r16, r29, 0xac
/* 8003F814 0003B474  3A A0 00 00 */	li r21, 0
/* 8003F818 0003B478  48 00 03 BC */	b lbl_8003FBD4
lbl_8003F81C:
/* 8003F81C 0003B47C  83 96 00 00 */	lwz r28, 0(r22)
/* 8003F820 0003B480  83 1D 00 04 */	lwz r24, 4(r29)
/* 8003F824 0003B484  28 1C 00 64 */	cmplwi r28, 0x64
/* 8003F828 0003B488  82 F6 00 04 */	lwz r23, 4(r22)
/* 8003F82C 0003B48C  41 82 00 10 */	beq lbl_8003F83C
/* 8003F830 0003B490  80 16 00 0C */	lwz r0, 0xc(r22)
/* 8003F834 0003B494  7C 1C 00 40 */	cmplw r28, r0
/* 8003F838 0003B498  41 82 03 94 */	beq lbl_8003FBCC
lbl_8003F83C:
/* 8003F83C 0003B49C  28 1C 00 64 */	cmplwi r28, 0x64
/* 8003F840 0003B4A0  83 76 00 14 */	lwz r27, 0x14(r22)
/* 8003F844 0003B4A4  82 96 00 18 */	lwz r20, 0x18(r22)
/* 8003F848 0003B4A8  40 82 00 08 */	bne lbl_8003F850
/* 8003F84C 0003B4AC  3A 80 00 00 */	li r20, 0
lbl_8003F850:
/* 8003F850 0003B4B0  2C 1B 00 00 */	cmpwi r27, 0
/* 8003F854 0003B4B4  41 82 00 48 */	beq lbl_8003F89C
/* 8003F858 0003B4B8  80 7B 00 08 */	lwz r3, 8(r27)
/* 8003F85C 0003B4BC  2C 03 00 00 */	cmpwi r3, 0
/* 8003F860 0003B4C0  40 82 00 0C */	bne lbl_8003F86C
/* 8003F864 0003B4C4  38 80 00 00 */	li r4, 0
/* 8003F868 0003B4C8  48 00 00 1C */	b lbl_8003F884
lbl_8003F86C:
/* 8003F86C 0003B4CC  A0 1B 00 DE */	lhz r0, 0xde(r27)
/* 8003F870 0003B4D0  2C 00 00 00 */	cmpwi r0, 0
/* 8003F874 0003B4D4  40 82 00 0C */	bne lbl_8003F880
/* 8003F878 0003B4D8  38 80 00 00 */	li r4, 0
/* 8003F87C 0003B4DC  48 00 00 08 */	b lbl_8003F884
lbl_8003F880:
/* 8003F880 0003B4E0  80 83 00 00 */	lwz r4, 0(r3)
lbl_8003F884:
/* 8003F884 0003B4E4  2C 04 00 00 */	cmpwi r4, 0
/* 8003F888 0003B4E8  41 82 00 14 */	beq lbl_8003F89C
/* 8003F88C 0003B4EC  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 8003F890 0003B4F0  2C 03 00 00 */	cmpwi r3, 0
/* 8003F894 0003B4F4  41 82 00 08 */	beq lbl_8003F89C
/* 8003F898 0003B4F8  48 1B 29 91 */	bl func_801F2228
lbl_8003F89C:
/* 8003F89C 0003B4FC  80 16 00 18 */	lwz r0, 0x18(r22)
/* 8003F8A0 0003B500  2C 00 00 00 */	cmpwi r0, 0
/* 8003F8A4 0003B504  41 82 00 18 */	beq lbl_8003F8BC
/* 8003F8A8 0003B508  80 96 00 1C */	lwz r4, 0x1c(r22)
/* 8003F8AC 0003B50C  2C 04 00 00 */	cmpwi r4, 0
/* 8003F8B0 0003B510  41 82 00 0C */	beq lbl_8003F8BC
/* 8003F8B4 0003B514  7E 43 93 78 */	mr r3, r18
/* 8003F8B8 0003B518  48 1B 6A 4D */	bl func_801F6304
lbl_8003F8BC:
/* 8003F8BC 0003B51C  93 F6 00 14 */	stw r31, 0x14(r22)
/* 8003F8C0 0003B520  93 F6 00 18 */	stw r31, 0x18(r22)
/* 8003F8C4 0003B524  80 16 00 0C */	lwz r0, 0xc(r22)
/* 8003F8C8 0003B528  90 16 00 00 */	stw r0, 0(r22)
/* 8003F8CC 0003B52C  80 96 00 0C */	lwz r4, 0xc(r22)
/* 8003F8D0 0003B530  80 16 00 10 */	lwz r0, 0x10(r22)
/* 8003F8D4 0003B534  2C 04 00 00 */	cmpwi r4, 0
/* 8003F8D8 0003B538  90 16 00 04 */	stw r0, 4(r22)
/* 8003F8DC 0003B53C  41 82 02 A0 */	beq lbl_8003FB7C
/* 8003F8E0 0003B540  54 80 BE BE */	rlwinm r0, r4, 0x17, 0x1a, 0x1f
/* 8003F8E4 0003B544  28 00 00 03 */	cmplwi r0, 3
/* 8003F8E8 0003B548  40 82 00 EC */	bne lbl_8003F9D4
/* 8003F8EC 0003B54C  7F 03 C3 78 */	mr r3, r24
/* 8003F8F0 0003B550  48 19 BB CD */	bl func_801DB4BC
/* 8003F8F4 0003B554  7C 73 1B 78 */	mr r19, r3
/* 8003F8F8 0003B558  48 19 B2 31 */	bl func_801DAB28
/* 8003F8FC 0003B55C  2C 03 00 00 */	cmpwi r3, 0
/* 8003F900 0003B560  41 82 00 14 */	beq lbl_8003F914
/* 8003F904 0003B564  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8003F908 0003B568  38 80 01 54 */	li r4, 0x154
/* 8003F90C 0003B56C  48 19 B3 89 */	bl func_801DAC94
/* 8003F910 0003B570  48 00 00 08 */	b lbl_8003F918
lbl_8003F914:
/* 8003F914 0003B574  38 60 00 00 */	li r3, 0
lbl_8003F918:
/* 8003F918 0003B578  2C 03 00 00 */	cmpwi r3, 0
/* 8003F91C 0003B57C  41 82 00 10 */	beq lbl_8003F92C
/* 8003F920 0003B580  80 B3 00 08 */	lwz r5, 8(r19)
/* 8003F924 0003B584  38 80 00 00 */	li r4, 0
/* 8003F928 0003B588  48 1B 4C F5 */	bl func_801F461C
lbl_8003F92C:
/* 8003F92C 0003B58C  90 76 00 14 */	stw r3, 0x14(r22)
/* 8003F930 0003B590  88 11 00 00 */	lbz r0, 0(r17)
/* 8003F934 0003B594  2C 00 00 00 */	cmpwi r0, 0
/* 8003F938 0003B598  41 82 00 14 */	beq lbl_8003F94C
/* 8003F93C 0003B59C  80 76 00 14 */	lwz r3, 0x14(r22)
/* 8003F940 0003B5A0  48 1C 3E D1 */	bl func_80203810
/* 8003F944 0003B5A4  80 76 00 14 */	lwz r3, 0x14(r22)
/* 8003F948 0003B5A8  48 1C 0F 11 */	bl func_80200858
lbl_8003F94C:
/* 8003F94C 0003B5AC  80 92 00 08 */	lwz r4, 8(r18)
/* 8003F950 0003B5B0  88 76 00 08 */	lbz r3, 8(r22)
/* 8003F954 0003B5B4  2C 04 00 00 */	cmpwi r4, 0
/* 8003F958 0003B5B8  40 82 00 0C */	bne lbl_8003F964
/* 8003F95C 0003B5BC  38 60 00 00 */	li r3, 0
/* 8003F960 0003B5C0  48 00 00 20 */	b lbl_8003F980
lbl_8003F964:
/* 8003F964 0003B5C4  A0 12 00 DE */	lhz r0, 0xde(r18)
/* 8003F968 0003B5C8  7C 03 00 40 */	cmplw r3, r0
/* 8003F96C 0003B5CC  41 80 00 0C */	blt lbl_8003F978
/* 8003F970 0003B5D0  38 60 00 00 */	li r3, 0
/* 8003F974 0003B5D4  48 00 00 0C */	b lbl_8003F980
lbl_8003F978:
/* 8003F978 0003B5D8  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003F97C 0003B5DC  7C 64 00 2E */	lwzx r3, r4, r0
lbl_8003F980:
/* 8003F980 0003B5E0  80 96 00 14 */	lwz r4, 0x14(r22)
/* 8003F984 0003B5E4  80 A4 00 08 */	lwz r5, 8(r4)
/* 8003F988 0003B5E8  2C 05 00 00 */	cmpwi r5, 0
/* 8003F98C 0003B5EC  40 82 00 0C */	bne lbl_8003F998
/* 8003F990 0003B5F0  38 A0 00 00 */	li r5, 0
/* 8003F994 0003B5F4  48 00 00 1C */	b lbl_8003F9B0
lbl_8003F998:
/* 8003F998 0003B5F8  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 8003F99C 0003B5FC  2C 00 00 00 */	cmpwi r0, 0
/* 8003F9A0 0003B600  40 82 00 0C */	bne lbl_8003F9AC
/* 8003F9A4 0003B604  38 A0 00 00 */	li r5, 0
/* 8003F9A8 0003B608  48 00 00 08 */	b lbl_8003F9B0
lbl_8003F9AC:
/* 8003F9AC 0003B60C  80 A5 00 00 */	lwz r5, 0(r5)
lbl_8003F9B0:
/* 8003F9B0 0003B610  2C 03 00 00 */	cmpwi r3, 0
/* 8003F9B4 0003B614  41 82 01 C8 */	beq lbl_8003FB7C
/* 8003F9B8 0003B618  2C 05 00 00 */	cmpwi r5, 0
/* 8003F9BC 0003B61C  41 82 01 C0 */	beq lbl_8003FB7C
/* 8003F9C0 0003B620  38 80 00 07 */	li r4, 7
/* 8003F9C4 0003B624  38 C0 00 00 */	li r6, 0
/* 8003F9C8 0003B628  38 E0 00 03 */	li r7, 3
/* 8003F9CC 0003B62C  48 1B 27 C1 */	bl func_801F218C
/* 8003F9D0 0003B630  48 00 01 AC */	b lbl_8003FB7C
lbl_8003F9D4:
/* 8003F9D4 0003B634  28 00 00 04 */	cmplwi r0, 4
/* 8003F9D8 0003B638  41 82 00 0C */	beq lbl_8003F9E4
/* 8003F9DC 0003B63C  28 04 00 64 */	cmplwi r4, 0x64
/* 8003F9E0 0003B640  40 82 01 9C */	bne lbl_8003FB7C
lbl_8003F9E4:
/* 8003F9E4 0003B644  28 04 00 64 */	cmplwi r4, 0x64
/* 8003F9E8 0003B648  40 82 00 54 */	bne lbl_8003FA3C
/* 8003F9EC 0003B64C  38 15 FF FF */	addi r0, r21, -1
/* 8003F9F0 0003B650  54 00 28 34 */	slwi r0, r0, 5
/* 8003F9F4 0003B654  7C 7D 02 14 */	add r3, r29, r0
/* 8003F9F8 0003B658  80 63 00 20 */	lwz r3, 0x20(r3)
/* 8003F9FC 0003B65C  2C 03 00 00 */	cmpwi r3, 0
/* 8003FA00 0003B660  41 82 01 04 */	beq lbl_8003FB04
/* 8003FA04 0003B664  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 8003FA08 0003B668  2C 04 00 00 */	cmpwi r4, 0
/* 8003FA0C 0003B66C  40 82 00 0C */	bne lbl_8003FA18
/* 8003FA10 0003B670  38 00 00 00 */	li r0, 0
/* 8003FA14 0003B674  48 00 00 20 */	b lbl_8003FA34
lbl_8003FA18:
/* 8003FA18 0003B678  A0 03 00 E6 */	lhz r0, 0xe6(r3)
/* 8003FA1C 0003B67C  2C 00 00 00 */	cmpwi r0, 0
/* 8003FA20 0003B680  40 82 00 0C */	bne lbl_8003FA2C
/* 8003FA24 0003B684  38 00 00 00 */	li r0, 0
/* 8003FA28 0003B688  48 00 00 0C */	b lbl_8003FA34
lbl_8003FA2C:
/* 8003FA2C 0003B68C  80 64 00 00 */	lwz r3, 0(r4)
/* 8003FA30 0003B690  80 03 00 14 */	lwz r0, 0x14(r3)
lbl_8003FA34:
/* 8003FA34 0003B694  90 16 00 18 */	stw r0, 0x18(r22)
/* 8003FA38 0003B698  48 00 00 CC */	b lbl_8003FB04
lbl_8003FA3C:
/* 8003FA3C 0003B69C  7F 03 C3 78 */	mr r3, r24
/* 8003FA40 0003B6A0  48 19 BA 7D */	bl func_801DB4BC
/* 8003FA44 0003B6A4  7C 73 1B 78 */	mr r19, r3
/* 8003FA48 0003B6A8  48 19 B0 E1 */	bl func_801DAB28
/* 8003FA4C 0003B6AC  2C 03 00 00 */	cmpwi r3, 0
/* 8003FA50 0003B6B0  41 82 00 14 */	beq lbl_8003FA64
/* 8003FA54 0003B6B4  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8003FA58 0003B6B8  38 80 00 38 */	li r4, 0x38
/* 8003FA5C 0003B6BC  48 19 B2 39 */	bl func_801DAC94
/* 8003FA60 0003B6C0  48 00 00 08 */	b lbl_8003FA68
lbl_8003FA64:
/* 8003FA64 0003B6C4  38 60 00 00 */	li r3, 0
lbl_8003FA68:
/* 8003FA68 0003B6C8  2C 03 00 00 */	cmpwi r3, 0
/* 8003FA6C 0003B6CC  41 82 00 10 */	beq lbl_8003FA7C
/* 8003FA70 0003B6D0  80 93 00 18 */	lwz r4, 0x18(r19)
/* 8003FA74 0003B6D4  80 B3 00 14 */	lwz r5, 0x14(r19)
/* 8003FA78 0003B6D8  48 1A 71 81 */	bl func_801E6BF8
lbl_8003FA7C:
/* 8003FA7C 0003B6DC  90 76 00 18 */	stw r3, 0x18(r22)
/* 8003FA80 0003B6E0  80 96 00 10 */	lwz r4, 0x10(r22)
/* 8003FA84 0003B6E4  2C 04 00 00 */	cmpwi r4, 0
/* 8003FA88 0003B6E8  41 82 00 7C */	beq lbl_8003FB04
/* 8003FA8C 0003B6EC  7F 03 C3 78 */	mr r3, r24
/* 8003FA90 0003B6F0  48 19 BA 2D */	bl func_801DB4BC
/* 8003FA94 0003B6F4  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8003FA98 0003B6F8  7C 73 1B 78 */	mr r19, r3
/* 8003FA9C 0003B6FC  2C 05 00 02 */	cmpwi r5, 2
/* 8003FAA0 0003B700  40 80 00 08 */	bge lbl_8003FAA8
/* 8003FAA4 0003B704  38 A0 00 02 */	li r5, 2
lbl_8003FAA8:
/* 8003FAA8 0003B708  80 93 00 18 */	lwz r4, 0x18(r19)
/* 8003FAAC 0003B70C  7E 63 9B 78 */	mr r3, r19
/* 8003FAB0 0003B710  2C 04 00 02 */	cmpwi r4, 2
/* 8003FAB4 0003B714  40 80 00 08 */	bge lbl_8003FABC
/* 8003FAB8 0003B718  38 80 00 02 */	li r4, 2
lbl_8003FABC:
/* 8003FABC 0003B71C  80 D3 00 20 */	lwz r6, 0x20(r19)
/* 8003FAC0 0003B720  48 1F E9 09 */	bl func_8023E3C8
/* 8003FAC4 0003B724  83 D6 00 18 */	lwz r30, 0x18(r22)
/* 8003FAC8 0003B728  80 7E 00 08 */	lwz r3, 8(r30)
/* 8003FACC 0003B72C  80 03 00 50 */	lwz r0, 0x50(r3)
/* 8003FAD0 0003B730  2C 00 00 00 */	cmpwi r0, 0
/* 8003FAD4 0003B734  41 82 00 30 */	beq lbl_8003FB04
/* 8003FAD8 0003B738  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8003FADC 0003B73C  2C 03 00 00 */	cmpwi r3, 0
/* 8003FAE0 0003B740  41 82 00 20 */	beq lbl_8003FB00
/* 8003FAE4 0003B744  80 1E 00 28 */	lwz r0, 0x28(r30)
/* 8003FAE8 0003B748  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8003FAEC 0003B74C  41 82 00 14 */	beq lbl_8003FB00
/* 8003FAF0 0003B750  48 1F E7 E1 */	bl func_8023E2D0
/* 8003FAF4 0003B754  80 1E 00 28 */	lwz r0, 0x28(r30)
/* 8003FAF8 0003B758  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 8003FAFC 0003B75C  90 1E 00 28 */	stw r0, 0x28(r30)
lbl_8003FB00:
/* 8003FB00 0003B760  92 7E 00 14 */	stw r19, 0x14(r30)
lbl_8003FB04:
/* 8003FB04 0003B764  80 92 00 1C */	lwz r4, 0x1c(r18)
/* 8003FB08 0003B768  88 76 00 08 */	lbz r3, 8(r22)
/* 8003FB0C 0003B76C  2C 04 00 00 */	cmpwi r4, 0
/* 8003FB10 0003B770  40 82 00 0C */	bne lbl_8003FB1C
/* 8003FB14 0003B774  38 60 00 00 */	li r3, 0
/* 8003FB18 0003B778  48 00 00 24 */	b lbl_8003FB3C
lbl_8003FB1C:
/* 8003FB1C 0003B77C  A0 12 00 E6 */	lhz r0, 0xe6(r18)
/* 8003FB20 0003B780  7C 03 00 40 */	cmplw r3, r0
/* 8003FB24 0003B784  41 80 00 0C */	blt lbl_8003FB30
/* 8003FB28 0003B788  38 60 00 00 */	li r3, 0
/* 8003FB2C 0003B78C  48 00 00 10 */	b lbl_8003FB3C
lbl_8003FB30:
/* 8003FB30 0003B790  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003FB34 0003B794  7C 64 00 2E */	lwzx r3, r4, r0
/* 8003FB38 0003B798  80 63 00 14 */	lwz r3, 0x14(r3)
lbl_8003FB3C:
/* 8003FB3C 0003B79C  2C 03 00 00 */	cmpwi r3, 0
/* 8003FB40 0003B7A0  41 82 00 3C */	beq lbl_8003FB7C
/* 8003FB44 0003B7A4  80 16 00 18 */	lwz r0, 0x18(r22)
/* 8003FB48 0003B7A8  2C 00 00 00 */	cmpwi r0, 0
/* 8003FB4C 0003B7AC  41 82 00 30 */	beq lbl_8003FB7C
/* 8003FB50 0003B7B0  80 83 00 0C */	lwz r4, 0xc(r3)
/* 8003FB54 0003B7B4  2C 04 00 00 */	cmpwi r4, 0
/* 8003FB58 0003B7B8  41 82 00 24 */	beq lbl_8003FB7C
/* 8003FB5C 0003B7BC  80 04 00 00 */	lwz r0, 0(r4)
/* 8003FB60 0003B7C0  2C 00 00 00 */	cmpwi r0, 0
/* 8003FB64 0003B7C4  41 82 00 18 */	beq lbl_8003FB7C
/* 8003FB68 0003B7C8  90 16 00 1C */	stw r0, 0x1c(r22)
/* 8003FB6C 0003B7CC  7E 43 93 78 */	mr r3, r18
/* 8003FB70 0003B7D0  80 84 00 00 */	lwz r4, 0(r4)
/* 8003FB74 0003B7D4  80 B6 00 18 */	lwz r5, 0x18(r22)
/* 8003FB78 0003B7D8  48 1B 66 ED */	bl func_801F6264
lbl_8003FB7C:
/* 8003FB7C 0003B7DC  2C 1B 00 00 */	cmpwi r27, 0
/* 8003FB80 0003B7E0  41 82 00 10 */	beq lbl_8003FB90
/* 8003FB84 0003B7E4  7F 63 DB 78 */	mr r3, r27
/* 8003FB88 0003B7E8  38 80 00 01 */	li r4, 1
/* 8003FB8C 0003B7EC  48 1B 4F 65 */	bl func_801F4AF0
lbl_8003FB90:
/* 8003FB90 0003B7F0  2C 14 00 00 */	cmpwi r20, 0
/* 8003FB94 0003B7F4  41 82 00 20 */	beq lbl_8003FBB4
/* 8003FB98 0003B7F8  41 82 00 1C */	beq lbl_8003FBB4
/* 8003FB9C 0003B7FC  81 94 00 34 */	lwz r12, 0x34(r20)
/* 8003FBA0 0003B800  7E 83 A3 78 */	mr r3, r20
/* 8003FBA4 0003B804  38 80 00 01 */	li r4, 1
/* 8003FBA8 0003B808  81 8C 00 08 */	lwz r12, 8(r12)
/* 8003FBAC 0003B80C  7D 89 03 A6 */	mtctr r12
/* 8003FBB0 0003B810  4E 80 04 21 */	bctrl
lbl_8003FBB4:
/* 8003FBB4 0003B814  7F 03 C3 78 */	mr r3, r24
/* 8003FBB8 0003B818  7F 84 E3 78 */	mr r4, r28
/* 8003FBBC 0003B81C  48 19 B9 8D */	bl func_801DB548
/* 8003FBC0 0003B820  7F 03 C3 78 */	mr r3, r24
/* 8003FBC4 0003B824  7E E4 BB 78 */	mr r4, r23
/* 8003FBC8 0003B828  48 19 B9 81 */	bl func_801DB548
lbl_8003FBCC:
/* 8003FBCC 0003B82C  3A D6 00 20 */	addi r22, r22, 0x20
/* 8003FBD0 0003B830  3A B5 00 01 */	addi r21, r21, 1
lbl_8003FBD4:
/* 8003FBD4 0003B834  7C 16 80 40 */	cmplw r22, r16
/* 8003FBD8 0003B838  40 82 FC 44 */	bne lbl_8003F81C
lbl_8003FBDC:
/* 8003FBDC 0003B83C  3B 39 00 01 */	addi r25, r25, 1
/* 8003FBE0 0003B840  3B BD 00 AC */	addi r29, r29, 0xac
/* 8003FBE4 0003B844  2C 19 00 0A */	cmpwi r25, 0xa
/* 8003FBE8 0003B848  41 80 FC 14 */	blt lbl_8003F7FC
/* 8003FBEC 0003B84C  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8003FBF0 0003B850  3A 00 00 00 */	li r16, 0
/* 8003FBF4 0003B854  3A 63 CE 34 */	addi r19, r3, lbl_8063CE34@l
lbl_8003FBF8:
/* 8003FBF8 0003B858  88 11 00 01 */	lbz r0, 1(r17)
/* 8003FBFC 0003B85C  2C 00 00 00 */	cmpwi r0, 0
/* 8003FC00 0003B860  41 82 00 1C */	beq lbl_8003FC1C
/* 8003FC04 0003B864  80 91 00 04 */	lwz r4, 4(r17)
/* 8003FC08 0003B868  7E 05 83 78 */	mr r5, r16
/* 8003FC0C 0003B86C  38 73 00 28 */	addi r3, r19, 0x28
/* 8003FC10 0003B870  48 35 64 81 */	bl func_80396090
/* 8003FC14 0003B874  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8003FC18 0003B878  48 00 00 18 */	b lbl_8003FC30
lbl_8003FC1C:
/* 8003FC1C 0003B87C  80 91 00 04 */	lwz r4, 4(r17)
/* 8003FC20 0003B880  7E 05 83 78 */	mr r5, r16
/* 8003FC24 0003B884  38 73 00 28 */	addi r3, r19, 0x28
/* 8003FC28 0003B888  48 35 63 6D */	bl func_80395F94
/* 8003FC2C 0003B88C  54 63 06 3E */	clrlwi r3, r3, 0x18
lbl_8003FC30:
/* 8003FC30 0003B890  2C 03 00 00 */	cmpwi r3, 0
/* 8003FC34 0003B894  41 82 00 48 */	beq lbl_8003FC7C
/* 8003FC38 0003B898  80 92 00 08 */	lwz r4, 8(r18)
/* 8003FC3C 0003B89C  2C 04 00 00 */	cmpwi r4, 0
/* 8003FC40 0003B8A0  40 82 00 0C */	bne lbl_8003FC4C
/* 8003FC44 0003B8A4  38 60 00 00 */	li r3, 0
/* 8003FC48 0003B8A8  48 00 00 20 */	b lbl_8003FC68
lbl_8003FC4C:
/* 8003FC4C 0003B8AC  A0 12 00 DE */	lhz r0, 0xde(r18)
/* 8003FC50 0003B8B0  7C 03 00 40 */	cmplw r3, r0
/* 8003FC54 0003B8B4  41 80 00 0C */	blt lbl_8003FC60
/* 8003FC58 0003B8B8  38 60 00 00 */	li r3, 0
/* 8003FC5C 0003B8BC  48 00 00 0C */	b lbl_8003FC68
lbl_8003FC60:
/* 8003FC60 0003B8C0  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8003FC64 0003B8C4  7C 64 00 2E */	lwzx r3, r4, r0
lbl_8003FC68:
/* 8003FC68 0003B8C8  2C 03 00 00 */	cmpwi r3, 0
/* 8003FC6C 0003B8CC  41 82 00 10 */	beq lbl_8003FC7C
/* 8003FC70 0003B8D0  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 8003FC74 0003B8D4  60 00 00 02 */	ori r0, r0, 2
/* 8003FC78 0003B8D8  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_8003FC7C:
/* 8003FC7C 0003B8DC  3A 10 00 01 */	addi r16, r16, 1
/* 8003FC80 0003B8E0  2C 10 00 04 */	cmpwi r16, 4
/* 8003FC84 0003B8E4  41 80 FF 74 */	blt lbl_8003FBF8
/* 8003FC88 0003B8E8  38 C0 00 00 */	li r6, 0
/* 8003FC8C 0003B8EC  38 00 00 02 */	li r0, 2
lbl_8003FC90:
/* 8003FC90 0003B8F0  38 E0 00 00 */	li r7, 0
/* 8003FC94 0003B8F4  7C 09 03 A6 */	mtctr r0
lbl_8003FC98:
/* 8003FC98 0003B8F8  7C 7A 3A 14 */	add r3, r26, r7
/* 8003FC9C 0003B8FC  88 83 00 08 */	lbz r4, 8(r3)
/* 8003FCA0 0003B900  28 04 00 FF */	cmplwi r4, 0xff
/* 8003FCA4 0003B904  41 82 00 48 */	beq lbl_8003FCEC
/* 8003FCA8 0003B908  80 B2 00 08 */	lwz r5, 8(r18)
/* 8003FCAC 0003B90C  2C 05 00 00 */	cmpwi r5, 0
/* 8003FCB0 0003B910  40 82 00 0C */	bne lbl_8003FCBC
/* 8003FCB4 0003B914  38 80 00 00 */	li r4, 0
/* 8003FCB8 0003B918  48 00 00 20 */	b lbl_8003FCD8
lbl_8003FCBC:
/* 8003FCBC 0003B91C  A0 72 00 DE */	lhz r3, 0xde(r18)
/* 8003FCC0 0003B920  7C 04 18 40 */	cmplw r4, r3
/* 8003FCC4 0003B924  41 80 00 0C */	blt lbl_8003FCD0
/* 8003FCC8 0003B928  38 80 00 00 */	li r4, 0
/* 8003FCCC 0003B92C  48 00 00 0C */	b lbl_8003FCD8
lbl_8003FCD0:
/* 8003FCD0 0003B930  54 83 13 BA */	rlwinm r3, r4, 2, 0xe, 0x1d
/* 8003FCD4 0003B934  7C 85 18 2E */	lwzx r4, r5, r3
lbl_8003FCD8:
/* 8003FCD8 0003B938  2C 04 00 00 */	cmpwi r4, 0
/* 8003FCDC 0003B93C  41 82 00 10 */	beq lbl_8003FCEC
/* 8003FCE0 0003B940  A0 64 00 10 */	lhz r3, 0x10(r4)
/* 8003FCE4 0003B944  54 63 07 FA */	rlwinm r3, r3, 0, 0x1f, 0x1d
/* 8003FCE8 0003B948  B0 64 00 10 */	sth r3, 0x10(r4)
lbl_8003FCEC:
/* 8003FCEC 0003B94C  38 E7 00 01 */	addi r7, r7, 1
/* 8003FCF0 0003B950  7C 7A 3A 14 */	add r3, r26, r7
/* 8003FCF4 0003B954  88 83 00 08 */	lbz r4, 8(r3)
/* 8003FCF8 0003B958  28 04 00 FF */	cmplwi r4, 0xff
/* 8003FCFC 0003B95C  41 82 00 48 */	beq lbl_8003FD44
/* 8003FD00 0003B960  80 B2 00 08 */	lwz r5, 8(r18)
/* 8003FD04 0003B964  2C 05 00 00 */	cmpwi r5, 0
/* 8003FD08 0003B968  40 82 00 0C */	bne lbl_8003FD14
/* 8003FD0C 0003B96C  38 80 00 00 */	li r4, 0
/* 8003FD10 0003B970  48 00 00 20 */	b lbl_8003FD30
lbl_8003FD14:
/* 8003FD14 0003B974  A0 72 00 DE */	lhz r3, 0xde(r18)
/* 8003FD18 0003B978  7C 04 18 40 */	cmplw r4, r3
/* 8003FD1C 0003B97C  41 80 00 0C */	blt lbl_8003FD28
/* 8003FD20 0003B980  38 80 00 00 */	li r4, 0
/* 8003FD24 0003B984  48 00 00 0C */	b lbl_8003FD30
lbl_8003FD28:
/* 8003FD28 0003B988  54 83 13 BA */	rlwinm r3, r4, 2, 0xe, 0x1d
/* 8003FD2C 0003B98C  7C 85 18 2E */	lwzx r4, r5, r3
lbl_8003FD30:
/* 8003FD30 0003B990  2C 04 00 00 */	cmpwi r4, 0
/* 8003FD34 0003B994  41 82 00 10 */	beq lbl_8003FD44
/* 8003FD38 0003B998  A0 64 00 10 */	lhz r3, 0x10(r4)
/* 8003FD3C 0003B99C  54 63 07 FA */	rlwinm r3, r3, 0, 0x1f, 0x1d
/* 8003FD40 0003B9A0  B0 64 00 10 */	sth r3, 0x10(r4)
lbl_8003FD44:
/* 8003FD44 0003B9A4  38 E7 00 01 */	addi r7, r7, 1
/* 8003FD48 0003B9A8  42 00 FF 50 */	bdnz lbl_8003FC98
/* 8003FD4C 0003B9AC  38 C6 00 01 */	addi r6, r6, 1
/* 8003FD50 0003B9B0  3B 5A 00 AC */	addi r26, r26, 0xac
/* 8003FD54 0003B9B4  2C 06 00 0A */	cmpwi r6, 0xa
/* 8003FD58 0003B9B8  41 80 FF 38 */	blt lbl_8003FC90
/* 8003FD5C 0003B9BC  38 60 00 01 */	li r3, 1
lbl_8003FD60:
/* 8003FD60 0003B9C0  39 61 00 50 */	addi r11, r1, 0x50
/* 8003FD64 0003B9C4  48 18 73 E5 */	bl _restgpr_16
/* 8003FD68 0003B9C8  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8003FD6C 0003B9CC  7C 08 03 A6 */	mtlr r0
/* 8003FD70 0003B9D0  38 21 00 50 */	addi r1, r1, 0x50
/* 8003FD74 0003B9D4  4E 80 00 20 */	blr

.global func_8003FD78
func_8003FD78:
/* 8003FD78 0003B9D8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003FD7C 0003B9DC  7C 08 02 A6 */	mflr r0
/* 8003FD80 0003B9E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003FD84 0003B9E4  39 61 00 20 */	addi r11, r1, 0x20
/* 8003FD88 0003B9E8  48 18 73 9D */	bl _savegpr_26
/* 8003FD8C 0003B9EC  7C 7F 1B 78 */	mr r31, r3
/* 8003FD90 0003B9F0  7C 9A 23 78 */	mr r26, r4
/* 8003FD94 0003B9F4  7C BB 2B 78 */	mr r27, r5
/* 8003FD98 0003B9F8  3B A0 00 00 */	li r29, 0
lbl_8003FD9C:
/* 8003FD9C 0003B9FC  7F FE FB 78 */	mr r30, r31
/* 8003FDA0 0003BA00  3B 80 00 00 */	li r28, 0
lbl_8003FDA4:
/* 8003FDA4 0003BA04  80 9E 00 38 */	lwz r4, 0x38(r30)
/* 8003FDA8 0003BA08  2C 04 00 00 */	cmpwi r4, 0
/* 8003FDAC 0003BA0C  41 82 00 20 */	beq lbl_8003FDCC
/* 8003FDB0 0003BA10  2C 1B 00 00 */	cmpwi r27, 0
/* 8003FDB4 0003BA14  41 82 00 10 */	beq lbl_8003FDC4
/* 8003FDB8 0003BA18  7F 43 D3 78 */	mr r3, r26
/* 8003FDBC 0003BA1C  48 1C 0E 99 */	bl func_80200C54
/* 8003FDC0 0003BA20  48 00 00 0C */	b lbl_8003FDCC
lbl_8003FDC4:
/* 8003FDC4 0003BA24  7F 43 D3 78 */	mr r3, r26
/* 8003FDC8 0003BA28  48 1C 0F 41 */	bl func_80200D08
lbl_8003FDCC:
/* 8003FDCC 0003BA2C  3B 9C 00 01 */	addi r28, r28, 1
/* 8003FDD0 0003BA30  3B DE 00 20 */	addi r30, r30, 0x20
/* 8003FDD4 0003BA34  2C 1C 00 05 */	cmpwi r28, 5
/* 8003FDD8 0003BA38  41 80 FF CC */	blt lbl_8003FDA4
/* 8003FDDC 0003BA3C  3B BD 00 01 */	addi r29, r29, 1
/* 8003FDE0 0003BA40  3B FF 00 AC */	addi r31, r31, 0xac
/* 8003FDE4 0003BA44  2C 1D 00 0A */	cmpwi r29, 0xa
/* 8003FDE8 0003BA48  41 80 FF B4 */	blt lbl_8003FD9C
/* 8003FDEC 0003BA4C  39 61 00 20 */	addi r11, r1, 0x20
/* 8003FDF0 0003BA50  48 18 73 81 */	bl _restgpr_26
/* 8003FDF4 0003BA54  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003FDF8 0003BA58  7C 08 03 A6 */	mtlr r0
/* 8003FDFC 0003BA5C  38 21 00 20 */	addi r1, r1, 0x20
/* 8003FE00 0003BA60  4E 80 00 20 */	blr

.global func_8003FE04
func_8003FE04:
/* 8003FE04 0003BA64  38 00 00 0A */	li r0, 0xa
/* 8003FE08 0003BA68  39 20 00 00 */	li r9, 0
/* 8003FE0C 0003BA6C  7C 09 03 A6 */	mtctr r0
lbl_8003FE10:
/* 8003FE10 0003BA70  55 20 04 3E */	clrlwi r0, r9, 0x10
/* 8003FE14 0003BA74  1C 00 00 AC */	mulli r0, r0, 0xac
/* 8003FE18 0003BA78  7D 03 02 14 */	add r8, r3, r0
/* 8003FE1C 0003BA7C  81 48 00 38 */	lwz r10, 0x38(r8)
/* 8003FE20 0003BA80  2C 0A 00 00 */	cmpwi r10, 0
/* 8003FE24 0003BA84  41 82 00 20 */	beq lbl_8003FE44
/* 8003FE28 0003BA88  B0 8A 01 4C */	sth r4, 0x14c(r10)
/* 8003FE2C 0003BA8C  B0 AA 01 4E */	sth r5, 0x14e(r10)
/* 8003FE30 0003BA90  B0 CA 01 50 */	sth r6, 0x150(r10)
/* 8003FE34 0003BA94  B0 EA 01 52 */	sth r7, 0x152(r10)
/* 8003FE38 0003BA98  A0 0A 00 DC */	lhz r0, 0xdc(r10)
/* 8003FE3C 0003BA9C  60 00 01 00 */	ori r0, r0, 0x100
/* 8003FE40 0003BAA0  B0 0A 00 DC */	sth r0, 0xdc(r10)
lbl_8003FE44:
/* 8003FE44 0003BAA4  81 48 00 58 */	lwz r10, 0x58(r8)
/* 8003FE48 0003BAA8  2C 0A 00 00 */	cmpwi r10, 0
/* 8003FE4C 0003BAAC  41 82 00 20 */	beq lbl_8003FE6C
/* 8003FE50 0003BAB0  B0 8A 01 4C */	sth r4, 0x14c(r10)
/* 8003FE54 0003BAB4  B0 AA 01 4E */	sth r5, 0x14e(r10)
/* 8003FE58 0003BAB8  B0 CA 01 50 */	sth r6, 0x150(r10)
/* 8003FE5C 0003BABC  B0 EA 01 52 */	sth r7, 0x152(r10)
/* 8003FE60 0003BAC0  A0 0A 00 DC */	lhz r0, 0xdc(r10)
/* 8003FE64 0003BAC4  60 00 01 00 */	ori r0, r0, 0x100
/* 8003FE68 0003BAC8  B0 0A 00 DC */	sth r0, 0xdc(r10)
lbl_8003FE6C:
/* 8003FE6C 0003BACC  81 48 00 78 */	lwz r10, 0x78(r8)
/* 8003FE70 0003BAD0  2C 0A 00 00 */	cmpwi r10, 0
/* 8003FE74 0003BAD4  41 82 00 20 */	beq lbl_8003FE94
/* 8003FE78 0003BAD8  B0 8A 01 4C */	sth r4, 0x14c(r10)
/* 8003FE7C 0003BADC  B0 AA 01 4E */	sth r5, 0x14e(r10)
/* 8003FE80 0003BAE0  B0 CA 01 50 */	sth r6, 0x150(r10)
/* 8003FE84 0003BAE4  B0 EA 01 52 */	sth r7, 0x152(r10)
/* 8003FE88 0003BAE8  A0 0A 00 DC */	lhz r0, 0xdc(r10)
/* 8003FE8C 0003BAEC  60 00 01 00 */	ori r0, r0, 0x100
/* 8003FE90 0003BAF0  B0 0A 00 DC */	sth r0, 0xdc(r10)
lbl_8003FE94:
/* 8003FE94 0003BAF4  81 48 00 98 */	lwz r10, 0x98(r8)
/* 8003FE98 0003BAF8  2C 0A 00 00 */	cmpwi r10, 0
/* 8003FE9C 0003BAFC  41 82 00 20 */	beq lbl_8003FEBC
/* 8003FEA0 0003BB00  B0 8A 01 4C */	sth r4, 0x14c(r10)
/* 8003FEA4 0003BB04  B0 AA 01 4E */	sth r5, 0x14e(r10)
/* 8003FEA8 0003BB08  B0 CA 01 50 */	sth r6, 0x150(r10)
/* 8003FEAC 0003BB0C  B0 EA 01 52 */	sth r7, 0x152(r10)
/* 8003FEB0 0003BB10  A0 0A 00 DC */	lhz r0, 0xdc(r10)
/* 8003FEB4 0003BB14  60 00 01 00 */	ori r0, r0, 0x100
/* 8003FEB8 0003BB18  B0 0A 00 DC */	sth r0, 0xdc(r10)
lbl_8003FEBC:
/* 8003FEBC 0003BB1C  81 48 00 B8 */	lwz r10, 0xb8(r8)
/* 8003FEC0 0003BB20  2C 0A 00 00 */	cmpwi r10, 0
/* 8003FEC4 0003BB24  41 82 00 20 */	beq lbl_8003FEE4
/* 8003FEC8 0003BB28  B0 8A 01 4C */	sth r4, 0x14c(r10)
/* 8003FECC 0003BB2C  B0 AA 01 4E */	sth r5, 0x14e(r10)
/* 8003FED0 0003BB30  B0 CA 01 50 */	sth r6, 0x150(r10)
/* 8003FED4 0003BB34  B0 EA 01 52 */	sth r7, 0x152(r10)
/* 8003FED8 0003BB38  A0 0A 00 DC */	lhz r0, 0xdc(r10)
/* 8003FEDC 0003BB3C  60 00 01 00 */	ori r0, r0, 0x100
/* 8003FEE0 0003BB40  B0 0A 00 DC */	sth r0, 0xdc(r10)
lbl_8003FEE4:
/* 8003FEE4 0003BB44  39 29 00 01 */	addi r9, r9, 1
/* 8003FEE8 0003BB48  42 00 FF 28 */	bdnz lbl_8003FE10
/* 8003FEEC 0003BB4C  4E 80 00 20 */	blr

.global func_8003FEF0
func_8003FEF0:
/* 8003FEF0 0003BB50  38 E0 00 00 */	li r7, 0
/* 8003FEF4 0003BB54  38 00 00 05 */	li r0, 5
lbl_8003FEF8:
/* 8003FEF8 0003BB58  54 E5 04 3E */	clrlwi r5, r7, 0x10
/* 8003FEFC 0003BB5C  39 00 00 00 */	li r8, 0
/* 8003FF00 0003BB60  1C A5 00 AC */	mulli r5, r5, 0xac
/* 8003FF04 0003BB64  7C C3 2A 14 */	add r6, r3, r5
/* 8003FF08 0003BB68  7C 09 03 A6 */	mtctr r0
lbl_8003FF0C:
/* 8003FF0C 0003BB6C  55 05 2A F4 */	rlwinm r5, r8, 5, 0xb, 0x1a
/* 8003FF10 0003BB70  7C A6 2A 14 */	add r5, r6, r5
/* 8003FF14 0003BB74  81 25 00 38 */	lwz r9, 0x38(r5)
/* 8003FF18 0003BB78  2C 09 00 00 */	cmpwi r9, 0
/* 8003FF1C 0003BB7C  41 82 00 28 */	beq lbl_8003FF44
/* 8003FF20 0003BB80  2C 04 00 00 */	cmpwi r4, 0
/* 8003FF24 0003BB84  41 82 00 14 */	beq lbl_8003FF38
/* 8003FF28 0003BB88  A0 A9 00 DC */	lhz r5, 0xdc(r9)
/* 8003FF2C 0003BB8C  60 A5 00 01 */	ori r5, r5, 1
/* 8003FF30 0003BB90  B0 A9 00 DC */	sth r5, 0xdc(r9)
/* 8003FF34 0003BB94  48 00 00 10 */	b lbl_8003FF44
lbl_8003FF38:
/* 8003FF38 0003BB98  A0 A9 00 DC */	lhz r5, 0xdc(r9)
/* 8003FF3C 0003BB9C  54 A5 04 3C */	rlwinm r5, r5, 0, 0x10, 0x1e
/* 8003FF40 0003BBA0  B0 A9 00 DC */	sth r5, 0xdc(r9)
lbl_8003FF44:
/* 8003FF44 0003BBA4  39 08 00 01 */	addi r8, r8, 1
/* 8003FF48 0003BBA8  42 00 FF C4 */	bdnz lbl_8003FF0C
/* 8003FF4C 0003BBAC  38 E7 00 01 */	addi r7, r7, 1
/* 8003FF50 0003BBB0  28 07 00 0A */	cmplwi r7, 0xa
/* 8003FF54 0003BBB4  41 80 FF A4 */	blt lbl_8003FEF8
/* 8003FF58 0003BBB8  4E 80 00 20 */	blr

.global func_8003FF5C
func_8003FF5C:
/* 8003FF5C 0003BBBC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003FF60 0003BBC0  7C 08 02 A6 */	mflr r0
/* 8003FF64 0003BBC4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003FF68 0003BBC8  39 61 00 20 */	addi r11, r1, 0x20
/* 8003FF6C 0003BBCC  48 18 71 BD */	bl _savegpr_27
/* 8003FF70 0003BBD0  7C 7B 1B 78 */	mr r27, r3
/* 8003FF74 0003BBD4  7C 9C 23 78 */	mr r28, r4
/* 8003FF78 0003BBD8  3B C0 00 00 */	li r30, 0
lbl_8003FF7C:
/* 8003FF7C 0003BBDC  57 C0 04 3E */	clrlwi r0, r30, 0x10
/* 8003FF80 0003BBE0  3B A0 00 00 */	li r29, 0
/* 8003FF84 0003BBE4  1C 00 00 AC */	mulli r0, r0, 0xac
/* 8003FF88 0003BBE8  7F FB 02 14 */	add r31, r27, r0
lbl_8003FF8C:
/* 8003FF8C 0003BBEC  57 A0 2A F4 */	rlwinm r0, r29, 5, 0xb, 0x1a
/* 8003FF90 0003BBF0  7C 7F 02 14 */	add r3, r31, r0
/* 8003FF94 0003BBF4  80 63 00 38 */	lwz r3, 0x38(r3)
/* 8003FF98 0003BBF8  2C 03 00 00 */	cmpwi r3, 0
/* 8003FF9C 0003BBFC  41 82 00 0C */	beq lbl_8003FFA8
/* 8003FFA0 0003BC00  7F 84 E3 78 */	mr r4, r28
/* 8003FFA4 0003BC04  48 1B 62 69 */	bl func_801F620C
lbl_8003FFA8:
/* 8003FFA8 0003BC08  3B BD 00 01 */	addi r29, r29, 1
/* 8003FFAC 0003BC0C  28 1D 00 05 */	cmplwi r29, 5
/* 8003FFB0 0003BC10  41 80 FF DC */	blt lbl_8003FF8C
/* 8003FFB4 0003BC14  3B DE 00 01 */	addi r30, r30, 1
/* 8003FFB8 0003BC18  28 1E 00 0A */	cmplwi r30, 0xa
/* 8003FFBC 0003BC1C  41 80 FF C0 */	blt lbl_8003FF7C
/* 8003FFC0 0003BC20  39 61 00 20 */	addi r11, r1, 0x20
/* 8003FFC4 0003BC24  48 18 71 B1 */	bl _restgpr_27
/* 8003FFC8 0003BC28  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8003FFCC 0003BC2C  7C 08 03 A6 */	mtlr r0
/* 8003FFD0 0003BC30  38 21 00 20 */	addi r1, r1, 0x20
/* 8003FFD4 0003BC34  4E 80 00 20 */	blr

.global func_8003FFD8
func_8003FFD8:
/* 8003FFD8 0003BC38  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8003FFDC 0003BC3C  7C 08 02 A6 */	mflr r0
/* 8003FFE0 0003BC40  90 01 00 24 */	stw r0, 0x24(r1)
/* 8003FFE4 0003BC44  39 61 00 20 */	addi r11, r1, 0x20
/* 8003FFE8 0003BC48  48 18 71 41 */	bl _savegpr_27
/* 8003FFEC 0003BC4C  7C 7B 1B 78 */	mr r27, r3
/* 8003FFF0 0003BC50  7C 9C 23 78 */	mr r28, r4
/* 8003FFF4 0003BC54  3B C0 00 00 */	li r30, 0
lbl_8003FFF8:
/* 8003FFF8 0003BC58  57 C0 04 3E */	clrlwi r0, r30, 0x10
/* 8003FFFC 0003BC5C  3B A0 00 00 */	li r29, 0
/* 80040000 0003BC60  1C 00 00 AC */	mulli r0, r0, 0xac
/* 80040004 0003BC64  7F FB 02 14 */	add r31, r27, r0
lbl_80040008:
/* 80040008 0003BC68  57 A0 2A F4 */	rlwinm r0, r29, 5, 0xb, 0x1a
/* 8004000C 0003BC6C  7C 7F 02 14 */	add r3, r31, r0
/* 80040010 0003BC70  80 63 00 38 */	lwz r3, 0x38(r3)
/* 80040014 0003BC74  2C 03 00 00 */	cmpwi r3, 0
/* 80040018 0003BC78  41 82 00 0C */	beq lbl_80040024
/* 8004001C 0003BC7C  7F 84 E3 78 */	mr r4, r28
/* 80040020 0003BC80  48 1B 61 75 */	bl func_801F6194
lbl_80040024:
/* 80040024 0003BC84  3B BD 00 01 */	addi r29, r29, 1
/* 80040028 0003BC88  28 1D 00 05 */	cmplwi r29, 5
/* 8004002C 0003BC8C  41 80 FF DC */	blt lbl_80040008
/* 80040030 0003BC90  3B DE 00 01 */	addi r30, r30, 1
/* 80040034 0003BC94  28 1E 00 0A */	cmplwi r30, 0xa
/* 80040038 0003BC98  41 80 FF C0 */	blt lbl_8003FFF8
/* 8004003C 0003BC9C  39 61 00 20 */	addi r11, r1, 0x20
/* 80040040 0003BCA0  48 18 71 35 */	bl _restgpr_27
/* 80040044 0003BCA4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040048 0003BCA8  7C 08 03 A6 */	mtlr r0
/* 8004004C 0003BCAC  38 21 00 20 */	addi r1, r1, 0x20
/* 80040050 0003BCB0  4E 80 00 20 */	blr

.global func_80040054
func_80040054:
/* 80040054 0003BCB4  38 00 00 0A */	li r0, 0xa
/* 80040058 0003BCB8  38 C0 00 00 */	li r6, 0
/* 8004005C 0003BCBC  7C 09 03 A6 */	mtctr r0
lbl_80040060:
/* 80040060 0003BCC0  54 C0 04 3E */	clrlwi r0, r6, 0x10
/* 80040064 0003BCC4  1C 00 00 AC */	mulli r0, r0, 0xac
/* 80040068 0003BCC8  7C A3 02 14 */	add r5, r3, r0
/* 8004006C 0003BCCC  80 E5 00 38 */	lwz r7, 0x38(r5)
/* 80040070 0003BCD0  2C 07 00 00 */	cmpwi r7, 0
/* 80040074 0003BCD4  41 82 00 08 */	beq lbl_8004007C
/* 80040078 0003BCD8  90 87 00 3C */	stw r4, 0x3c(r7)
lbl_8004007C:
/* 8004007C 0003BCDC  80 E5 00 58 */	lwz r7, 0x58(r5)
/* 80040080 0003BCE0  2C 07 00 00 */	cmpwi r7, 0
/* 80040084 0003BCE4  41 82 00 08 */	beq lbl_8004008C
/* 80040088 0003BCE8  90 87 00 3C */	stw r4, 0x3c(r7)
lbl_8004008C:
/* 8004008C 0003BCEC  80 E5 00 78 */	lwz r7, 0x78(r5)
/* 80040090 0003BCF0  2C 07 00 00 */	cmpwi r7, 0
/* 80040094 0003BCF4  41 82 00 08 */	beq lbl_8004009C
/* 80040098 0003BCF8  90 87 00 3C */	stw r4, 0x3c(r7)
lbl_8004009C:
/* 8004009C 0003BCFC  80 E5 00 98 */	lwz r7, 0x98(r5)
/* 800400A0 0003BD00  2C 07 00 00 */	cmpwi r7, 0
/* 800400A4 0003BD04  41 82 00 08 */	beq lbl_800400AC
/* 800400A8 0003BD08  90 87 00 3C */	stw r4, 0x3c(r7)
lbl_800400AC:
/* 800400AC 0003BD0C  80 E5 00 B8 */	lwz r7, 0xb8(r5)
/* 800400B0 0003BD10  2C 07 00 00 */	cmpwi r7, 0
/* 800400B4 0003BD14  41 82 00 08 */	beq lbl_800400BC
/* 800400B8 0003BD18  90 87 00 3C */	stw r4, 0x3c(r7)
lbl_800400BC:
/* 800400BC 0003BD1C  38 C6 00 01 */	addi r6, r6, 1
/* 800400C0 0003BD20  42 00 FF A0 */	bdnz lbl_80040060
/* 800400C4 0003BD24  4E 80 00 20 */	blr

.global func_800400C8
func_800400C8:
/* 800400C8 0003BD28  38 A0 00 01 */	li r5, 1
/* 800400CC 0003BD2C  38 6D 97 C8 */	addi r3, r13, lbl_8063EA88-_SDA_BASE_
/* 800400D0 0003BD30  38 80 00 04 */	li r4, 4
/* 800400D4 0003BD34  38 00 00 00 */	li r0, 0
/* 800400D8 0003BD38  98 AD 97 C8 */	stb r5, lbl_8063EA88-_SDA_BASE_(r13)
/* 800400DC 0003BD3C  B0 83 00 02 */	sth r4, 2(r3)
/* 800400E0 0003BD40  98 03 00 04 */	stb r0, 4(r3)
/* 800400E4 0003BD44  4E 80 00 20 */	blr

.global func_800400E8
func_800400E8:
/* 800400E8 0003BD48  C0 05 00 00 */	lfs f0, 0(r5)
/* 800400EC 0003BD4C  C0 C4 00 00 */	lfs f6, 0(r4)
/* 800400F0 0003BD50  C0 65 00 04 */	lfs f3, 4(r5)
/* 800400F4 0003BD54  EC A0 30 28 */	fsubs f5, f0, f6
/* 800400F8 0003BD58  C0 84 00 04 */	lfs f4, 4(r4)
/* 800400FC 0003BD5C  C0 05 00 08 */	lfs f0, 8(r5)
/* 80040100 0003BD60  C0 44 00 08 */	lfs f2, 8(r4)
/* 80040104 0003BD64  EC 63 20 28 */	fsubs f3, f3, f4
/* 80040108 0003BD68  EC A1 01 72 */	fmuls f5, f1, f5
/* 8004010C 0003BD6C  EC 00 10 28 */	fsubs f0, f0, f2
/* 80040110 0003BD70  EC 61 00 F2 */	fmuls f3, f1, f3
/* 80040114 0003BD74  EC A6 28 2A */	fadds f5, f6, f5
/* 80040118 0003BD78  EC 01 00 32 */	fmuls f0, f1, f0
/* 8004011C 0003BD7C  EC 24 18 2A */	fadds f1, f4, f3
/* 80040120 0003BD80  D0 A3 00 00 */	stfs f5, 0(r3)
/* 80040124 0003BD84  EC 02 00 2A */	fadds f0, f2, f0
/* 80040128 0003BD88  D0 23 00 04 */	stfs f1, 4(r3)
/* 8004012C 0003BD8C  D0 03 00 08 */	stfs f0, 8(r3)
/* 80040130 0003BD90  4E 80 00 20 */	blr
lbl_80040134:
/* 80040134 0003BD94  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80040138 0003BD98  7C 08 02 A6 */	mflr r0
/* 8004013C 0003BD9C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80040140 0003BDA0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80040144 0003BDA4  48 00 00 B1 */	bl func_800401F4
/* 80040148 0003BDA8  2C 03 00 00 */	cmpwi r3, 0
/* 8004014C 0003BDAC  7C 7F 1B 78 */	mr r31, r3
/* 80040150 0003BDB0  41 82 00 10 */	beq lbl_80040160
/* 80040154 0003BDB4  4B FC 72 49 */	bl func_8000739C
/* 80040158 0003BDB8  7F E3 FB 78 */	mr r3, r31
/* 8004015C 0003BDBC  48 00 02 55 */	bl func_800403B0
lbl_80040160:
/* 80040160 0003BDC0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80040164 0003BDC4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80040168 0003BDC8  7C 08 03 A6 */	mtlr r0
/* 8004016C 0003BDCC  38 21 00 10 */	addi r1, r1, 0x10
/* 80040170 0003BDD0  4E 80 00 20 */	blr
lbl_80040174:
/* 80040174 0003BDD4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80040178 0003BDD8  7C 08 02 A6 */	mflr r0
/* 8004017C 0003BDDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80040180 0003BDE0  48 00 00 75 */	bl func_800401F4
/* 80040184 0003BDE4  2C 03 00 00 */	cmpwi r3, 0
/* 80040188 0003BDE8  41 82 00 08 */	beq lbl_80040190
/* 8004018C 0003BDEC  48 00 02 A9 */	bl func_80040434
lbl_80040190:
/* 80040190 0003BDF0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80040194 0003BDF4  7C 08 03 A6 */	mtlr r0
/* 80040198 0003BDF8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004019C 0003BDFC  4E 80 00 20 */	blr

.global func_800401A0
func_800401A0:
/* 800401A0 0003BE00  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800401A4 0003BE04  7C 08 02 A6 */	mflr r0
/* 800401A8 0003BE08  38 60 37 E4 */	li r3, 0x37e4
/* 800401AC 0003BE0C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800401B0 0003BE10  48 19 A8 81 */	bl func_801DAA30
/* 800401B4 0003BE14  2C 03 00 00 */	cmpwi r3, 0
/* 800401B8 0003BE18  41 82 00 08 */	beq lbl_800401C0
/* 800401BC 0003BE1C  48 00 00 B9 */	bl func_80040274
lbl_800401C0:
/* 800401C0 0003BE20  3C 80 80 04 */	lis r4, lbl_80040134@ha
/* 800401C4 0003BE24  3C A0 80 04 */	lis r5, lbl_80040174@ha
/* 800401C8 0003BE28  90 6D 97 D8 */	stw r3, lbl_8063EA98-_SDA_BASE_(r13)
/* 800401CC 0003BE2C  38 84 01 34 */	addi r4, r4, lbl_80040134@l
/* 800401D0 0003BE30  80 6D A4 B8 */	lwz r3, lbl_8063F778-_SDA_BASE_(r13)
/* 800401D4 0003BE34  38 A5 01 74 */	addi r5, r5, lbl_80040174@l
/* 800401D8 0003BE38  38 C0 00 03 */	li r6, 3
/* 800401DC 0003BE3C  38 E0 00 0C */	li r7, 0xc
/* 800401E0 0003BE40  48 1F E9 79 */	bl func_8023EB58
/* 800401E4 0003BE44  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800401E8 0003BE48  7C 08 03 A6 */	mtlr r0
/* 800401EC 0003BE4C  38 21 00 10 */	addi r1, r1, 0x10
/* 800401F0 0003BE50  4E 80 00 20 */	blr

.global func_800401F4
func_800401F4:
/* 800401F4 0003BE54  80 6D 97 D8 */	lwz r3, lbl_8063EA98-_SDA_BASE_(r13)
/* 800401F8 0003BE58  4E 80 00 20 */	blr

.global func_800401FC
func_800401FC:
/* 800401FC 0003BE5C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80040200 0003BE60  7C 08 02 A6 */	mflr r0
/* 80040204 0003BE64  90 01 00 24 */	stw r0, 0x24(r1)
/* 80040208 0003BE68  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004020C 0003BE6C  7C 7F 1B 78 */	mr r31, r3
/* 80040210 0003BE70  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80040214 0003BE74  3B C3 00 04 */	addi r30, r3, 4
/* 80040218 0003BE78  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004021C 0003BE7C  3B A0 00 00 */	li r29, 0
/* 80040220 0003BE80  93 81 00 10 */	stw r28, 0x10(r1)
/* 80040224 0003BE84  7C 9C 23 78 */	mr r28, r4
lbl_80040228:
/* 80040228 0003BE88  88 1F 00 04 */	lbz r0, 4(r31)
/* 8004022C 0003BE8C  2C 00 00 00 */	cmpwi r0, 0
/* 80040230 0003BE90  41 82 00 10 */	beq lbl_80040240
/* 80040234 0003BE94  7F C3 F3 78 */	mr r3, r30
/* 80040238 0003BE98  7F 84 E3 78 */	mr r4, r28
/* 8004023C 0003BE9C  48 00 45 35 */	bl func_80044770
lbl_80040240:
/* 80040240 0003BEA0  3B BD 00 01 */	addi r29, r29, 1
/* 80040244 0003BEA4  3B DE 06 FC */	addi r30, r30, 0x6fc
/* 80040248 0003BEA8  28 1D 00 08 */	cmplwi r29, 8
/* 8004024C 0003BEAC  3B FF 06 FC */	addi r31, r31, 0x6fc
/* 80040250 0003BEB0  41 80 FF D8 */	blt lbl_80040228
/* 80040254 0003BEB4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040258 0003BEB8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004025C 0003BEBC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80040260 0003BEC0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80040264 0003BEC4  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80040268 0003BEC8  7C 08 03 A6 */	mtlr r0
/* 8004026C 0003BECC  38 21 00 20 */	addi r1, r1, 0x20
/* 80040270 0003BED0  4E 80 00 20 */	blr

.global func_80040274
func_80040274:
/* 80040274 0003BED4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80040278 0003BED8  7C 08 02 A6 */	mflr r0
/* 8004027C 0003BEDC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80040280 0003BEE0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80040284 0003BEE4  3B E3 37 E4 */	addi r31, r3, 0x37e4
/* 80040288 0003BEE8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004028C 0003BEEC  3B C3 00 04 */	addi r30, r3, 4
/* 80040290 0003BEF0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80040294 0003BEF4  7C 7D 1B 78 */	mr r29, r3
lbl_80040298:
/* 80040298 0003BEF8  7F C3 F3 78 */	mr r3, r30
/* 8004029C 0003BEFC  48 00 0C 09 */	bl func_80040EA4
/* 800402A0 0003BF00  3B DE 06 FC */	addi r30, r30, 0x6fc
/* 800402A4 0003BF04  7C 1E F8 40 */	cmplw r30, r31
/* 800402A8 0003BF08  41 80 FF F0 */	blt lbl_80040298
/* 800402AC 0003BF0C  38 00 00 00 */	li r0, 0
/* 800402B0 0003BF10  7F A3 EB 78 */	mr r3, r29
/* 800402B4 0003BF14  98 1D 00 00 */	stb r0, 0(r29)
/* 800402B8 0003BF18  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800402BC 0003BF1C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800402C0 0003BF20  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800402C4 0003BF24  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800402C8 0003BF28  7C 08 03 A6 */	mtlr r0
/* 800402CC 0003BF2C  38 21 00 20 */	addi r1, r1, 0x20
/* 800402D0 0003BF30  4E 80 00 20 */	blr

.global func_800402D4
func_800402D4:
/* 800402D4 0003BF34  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800402D8 0003BF38  7C 08 02 A6 */	mflr r0
/* 800402DC 0003BF3C  90 01 00 24 */	stw r0, 0x24(r1)
/* 800402E0 0003BF40  38 00 00 08 */	li r0, 8
/* 800402E4 0003BF44  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800402E8 0003BF48  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800402EC 0003BF4C  3B C0 00 00 */	li r30, 0
/* 800402F0 0003BF50  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800402F4 0003BF54  7C 7D 1B 78 */	mr r29, r3
/* 800402F8 0003BF58  7F A4 EB 78 */	mr r4, r29
/* 800402FC 0003BF5C  7C 09 03 A6 */	mtctr r0
lbl_80040300:
/* 80040300 0003BF60  88 04 00 04 */	lbz r0, 4(r4)
/* 80040304 0003BF64  2C 00 00 00 */	cmpwi r0, 0
/* 80040308 0003BF68  40 82 00 24 */	bne lbl_8004032C
/* 8004030C 0003BF6C  1F FE 06 FC */	mulli r31, r30, 0x6fc
/* 80040310 0003BF70  7C 63 FA 14 */	add r3, r3, r31
/* 80040314 0003BF74  38 63 00 04 */	addi r3, r3, 4
/* 80040318 0003BF78  48 00 0C 89 */	bl func_80040FA0
/* 8004031C 0003BF7C  38 7E 00 01 */	addi r3, r30, 1
/* 80040320 0003BF80  7C 9D FA 14 */	add r4, r29, r31
/* 80040324 0003BF84  90 64 04 B8 */	stw r3, 0x4b8(r4)
/* 80040328 0003BF88  48 00 00 14 */	b lbl_8004033C
lbl_8004032C:
/* 8004032C 0003BF8C  38 84 06 FC */	addi r4, r4, 0x6fc
/* 80040330 0003BF90  3B DE 00 01 */	addi r30, r30, 1
/* 80040334 0003BF94  42 00 FF CC */	bdnz lbl_80040300
/* 80040338 0003BF98  38 60 00 00 */	li r3, 0
lbl_8004033C:
/* 8004033C 0003BF9C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040340 0003BFA0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80040344 0003BFA4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80040348 0003BFA8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004034C 0003BFAC  7C 08 03 A6 */	mtlr r0
/* 80040350 0003BFB0  38 21 00 20 */	addi r1, r1, 0x20
/* 80040354 0003BFB4  4E 80 00 20 */	blr

.global func_80040358
func_80040358:
/* 80040358 0003BFB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004035C 0003BFBC  7C 08 02 A6 */	mflr r0
/* 80040360 0003BFC0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80040364 0003BFC4  48 00 00 21 */	bl func_80040384
/* 80040368 0003BFC8  2C 03 00 00 */	cmpwi r3, 0
/* 8004036C 0003BFCC  41 82 00 08 */	beq lbl_80040374
/* 80040370 0003BFD0  48 00 0C F5 */	bl func_80041064
lbl_80040374:
/* 80040374 0003BFD4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80040378 0003BFD8  7C 08 03 A6 */	mtlr r0
/* 8004037C 0003BFDC  38 21 00 10 */	addi r1, r1, 0x10
/* 80040380 0003BFE0  4E 80 00 20 */	blr

.global func_80040384
func_80040384:
/* 80040384 0003BFE4  2C 04 00 00 */	cmpwi r4, 0
/* 80040388 0003BFE8  41 82 00 0C */	beq lbl_80040394
/* 8004038C 0003BFEC  28 04 00 08 */	cmplwi r4, 8
/* 80040390 0003BFF0  41 80 00 0C */	blt lbl_8004039C
lbl_80040394:
/* 80040394 0003BFF4  38 60 00 00 */	li r3, 0
/* 80040398 0003BFF8  4E 80 00 20 */	blr
lbl_8004039C:
/* 8004039C 0003BFFC  38 04 FF FF */	addi r0, r4, -1
/* 800403A0 0003C000  1C 00 06 FC */	mulli r0, r0, 0x6fc
/* 800403A4 0003C004  7C 63 02 14 */	add r3, r3, r0
/* 800403A8 0003C008  38 63 00 04 */	addi r3, r3, 4
/* 800403AC 0003C00C  4E 80 00 20 */	blr

.global func_800403B0
func_800403B0:
/* 800403B0 0003C010  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800403B4 0003C014  7C 08 02 A6 */	mflr r0
/* 800403B8 0003C018  90 01 00 24 */	stw r0, 0x24(r1)
/* 800403BC 0003C01C  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 800403C0 0003C020  FF E0 08 90 */	fmr f31, f1
/* 800403C4 0003C024  93 E1 00 14 */	stw r31, 0x14(r1)
/* 800403C8 0003C028  93 C1 00 10 */	stw r30, 0x10(r1)
/* 800403CC 0003C02C  93 A1 00 0C */	stw r29, 0xc(r1)
/* 800403D0 0003C030  88 03 00 00 */	lbz r0, 0(r3)
/* 800403D4 0003C034  2C 00 00 00 */	cmpwi r0, 0
/* 800403D8 0003C038  41 82 00 3C */	beq lbl_80040414
/* 800403DC 0003C03C  7C 7F 1B 78 */	mr r31, r3
/* 800403E0 0003C040  3B C3 00 04 */	addi r30, r3, 4
/* 800403E4 0003C044  3B A0 00 00 */	li r29, 0
lbl_800403E8:
/* 800403E8 0003C048  88 1F 00 04 */	lbz r0, 4(r31)
/* 800403EC 0003C04C  2C 00 00 00 */	cmpwi r0, 0
/* 800403F0 0003C050  41 82 00 10 */	beq lbl_80040400
/* 800403F4 0003C054  FC 20 F8 90 */	fmr f1, f31
/* 800403F8 0003C058  7F C3 F3 78 */	mr r3, r30
/* 800403FC 0003C05C  48 00 37 6D */	bl func_80043B68
lbl_80040400:
/* 80040400 0003C060  3B BD 00 01 */	addi r29, r29, 1
/* 80040404 0003C064  3B DE 06 FC */	addi r30, r30, 0x6fc
/* 80040408 0003C068  28 1D 00 08 */	cmplwi r29, 8
/* 8004040C 0003C06C  3B FF 06 FC */	addi r31, r31, 0x6fc
/* 80040410 0003C070  41 80 FF D8 */	blt lbl_800403E8
lbl_80040414:
/* 80040414 0003C074  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040418 0003C078  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004041C 0003C07C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80040420 0003C080  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 80040424 0003C084  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 80040428 0003C088  7C 08 03 A6 */	mtlr r0
/* 8004042C 0003C08C  38 21 00 20 */	addi r1, r1, 0x20
/* 80040430 0003C090  4E 80 00 20 */	blr

.global func_80040434
func_80040434:
/* 80040434 0003C094  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80040438 0003C098  7C 08 02 A6 */	mflr r0
/* 8004043C 0003C09C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80040440 0003C0A0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80040444 0003C0A4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80040448 0003C0A8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004044C 0003C0AC  88 03 00 00 */	lbz r0, 0(r3)
/* 80040450 0003C0B0  2C 00 00 00 */	cmpwi r0, 0
/* 80040454 0003C0B4  41 82 00 38 */	beq lbl_8004048C
/* 80040458 0003C0B8  7C 7F 1B 78 */	mr r31, r3
/* 8004045C 0003C0BC  3B C3 00 04 */	addi r30, r3, 4
/* 80040460 0003C0C0  3B A0 00 00 */	li r29, 0
lbl_80040464:
/* 80040464 0003C0C4  88 1F 00 04 */	lbz r0, 4(r31)
/* 80040468 0003C0C8  2C 00 00 00 */	cmpwi r0, 0
/* 8004046C 0003C0CC  41 82 00 0C */	beq lbl_80040478
/* 80040470 0003C0D0  7F C3 F3 78 */	mr r3, r30
/* 80040474 0003C0D4  48 00 40 29 */	bl func_8004449C
lbl_80040478:
/* 80040478 0003C0D8  3B BD 00 01 */	addi r29, r29, 1
/* 8004047C 0003C0DC  3B DE 06 FC */	addi r30, r30, 0x6fc
/* 80040480 0003C0E0  28 1D 00 08 */	cmplwi r29, 8
/* 80040484 0003C0E4  3B FF 06 FC */	addi r31, r31, 0x6fc
/* 80040488 0003C0E8  41 80 FF DC */	blt lbl_80040464
lbl_8004048C:
/* 8004048C 0003C0EC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040490 0003C0F0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80040494 0003C0F4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80040498 0003C0F8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004049C 0003C0FC  7C 08 03 A6 */	mtlr r0
/* 800404A0 0003C100  38 21 00 20 */	addi r1, r1, 0x20
/* 800404A4 0003C104  4E 80 00 20 */	blr

.global func_800404A8
func_800404A8:
/* 800404A8 0003C108  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 800404AC 0003C10C  38 00 00 00 */	li r0, 0
/* 800404B0 0003C110  90 03 00 10 */	stw r0, 0x10(r3)
/* 800404B4 0003C114  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 800404B8 0003C118  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 800404BC 0003C11C  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 800404C0 0003C120  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 800404C4 0003C124  90 83 00 54 */	stw r4, 0x54(r3)
/* 800404C8 0003C128  98 03 00 00 */	stb r0, 0(r3)
/* 800404CC 0003C12C  90 03 00 04 */	stw r0, 4(r3)
/* 800404D0 0003C130  D0 03 00 08 */	stfs f0, 8(r3)
/* 800404D4 0003C134  90 03 00 58 */	stw r0, 0x58(r3)
/* 800404D8 0003C138  90 03 00 5C */	stw r0, 0x5c(r3)
/* 800404DC 0003C13C  90 03 00 60 */	stw r0, 0x60(r3)
/* 800404E0 0003C140  90 03 00 64 */	stw r0, 0x64(r3)
/* 800404E4 0003C144  90 03 00 68 */	stw r0, 0x68(r3)
/* 800404E8 0003C148  90 03 00 6C */	stw r0, 0x6c(r3)
/* 800404EC 0003C14C  90 03 00 70 */	stw r0, 0x70(r3)
/* 800404F0 0003C150  90 03 00 74 */	stw r0, 0x74(r3)
/* 800404F4 0003C154  4E 80 00 20 */	blr

.global func_800404F8
func_800404F8:
/* 800404F8 0003C158  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800404FC 0003C15C  7C 08 02 A6 */	mflr r0
/* 80040500 0003C160  2C 04 00 00 */	cmpwi r4, 0
/* 80040504 0003C164  90 01 00 24 */	stw r0, 0x24(r1)
/* 80040508 0003C168  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004050C 0003C16C  7C BF 2B 78 */	mr r31, r5
/* 80040510 0003C170  41 80 00 58 */	blt lbl_80040568
/* 80040514 0003C174  2C 04 00 04 */	cmpwi r4, 4
/* 80040518 0003C178  40 80 00 50 */	bge lbl_80040568
/* 8004051C 0003C17C  54 80 18 38 */	slwi r0, r4, 3
/* 80040520 0003C180  7C 63 02 14 */	add r3, r3, r0
/* 80040524 0003C184  80 83 00 58 */	lwz r4, 0x58(r3)
/* 80040528 0003C188  2C 04 00 00 */	cmpwi r4, 0
/* 8004052C 0003C18C  41 82 00 3C */	beq lbl_80040568
/* 80040530 0003C190  80 A3 00 5C */	lwz r5, 0x5c(r3)
/* 80040534 0003C194  2C 05 00 00 */	cmpwi r5, 0
/* 80040538 0003C198  40 82 00 08 */	bne lbl_80040540
/* 8004053C 0003C19C  38 A0 00 13 */	li r5, 0x13
lbl_80040540:
/* 80040540 0003C1A0  38 61 00 08 */	addi r3, r1, 8
/* 80040544 0003C1A4  4B FF 93 59 */	bl func_8003989C
/* 80040548 0003C1A8  C0 01 00 08 */	lfs f0, 8(r1)
/* 8004054C 0003C1AC  38 60 00 01 */	li r3, 1
/* 80040550 0003C1B0  D0 1F 00 00 */	stfs f0, 0(r31)
/* 80040554 0003C1B4  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 80040558 0003C1B8  D0 1F 00 04 */	stfs f0, 4(r31)
/* 8004055C 0003C1BC  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80040560 0003C1C0  D0 1F 00 08 */	stfs f0, 8(r31)
/* 80040564 0003C1C4  48 00 00 08 */	b lbl_8004056C
lbl_80040568:
/* 80040568 0003C1C8  38 60 00 00 */	li r3, 0
lbl_8004056C:
/* 8004056C 0003C1CC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040570 0003C1D0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80040574 0003C1D4  7C 08 03 A6 */	mtlr r0
/* 80040578 0003C1D8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004057C 0003C1DC  4E 80 00 20 */	blr

.global func_80040580
func_80040580:
/* 80040580 0003C1E0  38 80 00 00 */	li r4, 0
/* 80040584 0003C1E4  48 00 00 04 */	b func_80040588

.global func_80040588
func_80040588:
/* 80040588 0003C1E8  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 8004058C 0003C1EC  7C 08 02 A6 */	mflr r0
/* 80040590 0003C1F0  90 01 00 64 */	stw r0, 0x64(r1)
/* 80040594 0003C1F4  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 80040598 0003C1F8  93 C1 00 58 */	stw r30, 0x58(r1)
/* 8004059C 0003C1FC  7C 9E 23 78 */	mr r30, r4
/* 800405A0 0003C200  93 A1 00 54 */	stw r29, 0x54(r1)
/* 800405A4 0003C204  7C 7D 1B 78 */	mr r29, r3
/* 800405A8 0003C208  80 03 00 10 */	lwz r0, 0x10(r3)
/* 800405AC 0003C20C  80 A3 00 54 */	lwz r5, 0x54(r3)
/* 800405B0 0003C210  2C 00 00 03 */	cmpwi r0, 3
/* 800405B4 0003C214  41 82 01 E0 */	beq lbl_80040794
/* 800405B8 0003C218  40 80 00 14 */	bge lbl_800405CC
/* 800405BC 0003C21C  2C 00 00 01 */	cmpwi r0, 1
/* 800405C0 0003C220  41 82 00 18 */	beq lbl_800405D8
/* 800405C4 0003C224  40 80 00 6C */	bge lbl_80040630
/* 800405C8 0003C228  48 00 01 CC */	b lbl_80040794
lbl_800405CC:
/* 800405CC 0003C22C  2C 00 00 05 */	cmpwi r0, 5
/* 800405D0 0003C230  40 80 01 C4 */	bge lbl_80040794
/* 800405D4 0003C234  48 00 01 58 */	b lbl_8004072C
lbl_800405D8:
/* 800405D8 0003C238  38 A1 00 2C */	addi r5, r1, 0x2c
/* 800405DC 0003C23C  38 80 00 00 */	li r4, 0
/* 800405E0 0003C240  4B FF FF 19 */	bl func_800404F8
/* 800405E4 0003C244  38 61 00 2C */	addi r3, r1, 0x2c
/* 800405E8 0003C248  38 9D 00 44 */	addi r4, r29, 0x44
/* 800405EC 0003C24C  38 A1 00 14 */	addi r5, r1, 0x14
/* 800405F0 0003C250  48 23 C6 D5 */	bl func_8027CCC4
/* 800405F4 0003C254  C0 61 00 14 */	lfs f3, 0x14(r1)
/* 800405F8 0003C258  38 7D 00 2C */	addi r3, r29, 0x2c
/* 800405FC 0003C25C  C0 22 82 B4 */	lfs f1, lbl_806408B4-_SDA2_BASE_(r2)
/* 80040600 0003C260  38 9D 00 14 */	addi r4, r29, 0x14
/* 80040604 0003C264  D0 7D 00 14 */	stfs f3, 0x14(r29)
/* 80040608 0003C268  38 A1 00 2C */	addi r5, r1, 0x2c
/* 8004060C 0003C26C  C0 41 00 18 */	lfs f2, 0x18(r1)
/* 80040610 0003C270  D0 5D 00 18 */	stfs f2, 0x18(r29)
/* 80040614 0003C274  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 80040618 0003C278  D0 1D 00 1C */	stfs f0, 0x1c(r29)
/* 8004061C 0003C27C  D0 7D 00 38 */	stfs f3, 0x38(r29)
/* 80040620 0003C280  D0 5D 00 3C */	stfs f2, 0x3c(r29)
/* 80040624 0003C284  D0 1D 00 40 */	stfs f0, 0x40(r29)
/* 80040628 0003C288  4B FF FA C1 */	bl func_800400E8
/* 8004062C 0003C28C  48 00 01 68 */	b lbl_80040794
lbl_80040630:
/* 80040630 0003C290  38 A1 00 38 */	addi r5, r1, 0x38
/* 80040634 0003C294  38 80 00 00 */	li r4, 0
/* 80040638 0003C298  4B FF FE C1 */	bl func_800404F8
/* 8004063C 0003C29C  2C 03 00 00 */	cmpwi r3, 0
/* 80040640 0003C2A0  41 82 01 54 */	beq lbl_80040794
/* 80040644 0003C2A4  7F A3 EB 78 */	mr r3, r29
/* 80040648 0003C2A8  38 A1 00 44 */	addi r5, r1, 0x44
/* 8004064C 0003C2AC  38 80 00 01 */	li r4, 1
/* 80040650 0003C2B0  4B FF FE A9 */	bl func_800404F8
/* 80040654 0003C2B4  2C 03 00 00 */	cmpwi r3, 0
/* 80040658 0003C2B8  41 82 00 1C */	beq lbl_80040674
/* 8004065C 0003C2BC  C0 22 82 B8 */	lfs f1, lbl_806408B8-_SDA2_BASE_(r2)
/* 80040660 0003C2C0  38 61 00 2C */	addi r3, r1, 0x2c
/* 80040664 0003C2C4  38 81 00 38 */	addi r4, r1, 0x38
/* 80040668 0003C2C8  38 A1 00 44 */	addi r5, r1, 0x44
/* 8004066C 0003C2CC  4B FF FA 7D */	bl func_800400E8
/* 80040670 0003C2D0  48 00 00 1C */	b lbl_8004068C
lbl_80040674:
/* 80040674 0003C2D4  C0 41 00 38 */	lfs f2, 0x38(r1)
/* 80040678 0003C2D8  C0 21 00 3C */	lfs f1, 0x3c(r1)
/* 8004067C 0003C2DC  C0 01 00 40 */	lfs f0, 0x40(r1)
/* 80040680 0003C2E0  D0 41 00 2C */	stfs f2, 0x2c(r1)
/* 80040684 0003C2E4  D0 21 00 30 */	stfs f1, 0x30(r1)
/* 80040688 0003C2E8  D0 01 00 34 */	stfs f0, 0x34(r1)
lbl_8004068C:
/* 8004068C 0003C2EC  38 61 00 2C */	addi r3, r1, 0x2c
/* 80040690 0003C2F0  38 9D 00 44 */	addi r4, r29, 0x44
/* 80040694 0003C2F4  7C 65 1B 78 */	mr r5, r3
/* 80040698 0003C2F8  48 23 C6 2D */	bl func_8027CCC4
/* 8004069C 0003C2FC  7F A3 EB 78 */	mr r3, r29
/* 800406A0 0003C300  38 81 00 20 */	addi r4, r1, 0x20
/* 800406A4 0003C304  38 A1 00 2C */	addi r5, r1, 0x2c
/* 800406A8 0003C308  48 00 02 B9 */	bl func_80040960
/* 800406AC 0003C30C  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 800406B0 0003C310  7C 7F 1B 78 */	mr r31, r3
/* 800406B4 0003C314  C0 22 82 B4 */	lfs f1, lbl_806408B4-_SDA2_BASE_(r2)
/* 800406B8 0003C318  38 7D 00 2C */	addi r3, r29, 0x2c
/* 800406BC 0003C31C  D0 1D 00 38 */	stfs f0, 0x38(r29)
/* 800406C0 0003C320  38 9D 00 14 */	addi r4, r29, 0x14
/* 800406C4 0003C324  38 A1 00 2C */	addi r5, r1, 0x2c
/* 800406C8 0003C328  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 800406CC 0003C32C  D0 1D 00 3C */	stfs f0, 0x3c(r29)
/* 800406D0 0003C330  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 800406D4 0003C334  D0 1D 00 40 */	stfs f0, 0x40(r29)
/* 800406D8 0003C338  4B FF FA 11 */	bl func_800400E8
/* 800406DC 0003C33C  2C 1E 00 00 */	cmpwi r30, 0
/* 800406E0 0003C340  40 82 00 0C */	bne lbl_800406EC
/* 800406E4 0003C344  2C 1F 00 01 */	cmpwi r31, 1
/* 800406E8 0003C348  40 82 00 20 */	bne lbl_80040708
lbl_800406EC:
/* 800406EC 0003C34C  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 800406F0 0003C350  D0 1D 00 14 */	stfs f0, 0x14(r29)
/* 800406F4 0003C354  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 800406F8 0003C358  D0 1D 00 18 */	stfs f0, 0x18(r29)
/* 800406FC 0003C35C  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 80040700 0003C360  D0 1D 00 1C */	stfs f0, 0x1c(r29)
/* 80040704 0003C364  48 00 00 90 */	b lbl_80040794
lbl_80040708:
/* 80040708 0003C368  2C 1F 00 02 */	cmpwi r31, 2
/* 8004070C 0003C36C  40 82 00 88 */	bne lbl_80040794
/* 80040710 0003C370  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80040714 0003C374  D0 1D 00 14 */	stfs f0, 0x14(r29)
/* 80040718 0003C378  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 8004071C 0003C37C  D0 1D 00 18 */	stfs f0, 0x18(r29)
/* 80040720 0003C380  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 80040724 0003C384  D0 1D 00 1C */	stfs f0, 0x1c(r29)
/* 80040728 0003C388  48 00 00 6C */	b lbl_80040794
lbl_8004072C:
/* 8004072C 0003C38C  7C A3 2B 78 */	mr r3, r5
/* 80040730 0003C390  48 00 1E 61 */	bl func_80042590
/* 80040734 0003C394  C0 03 00 00 */	lfs f0, 0(r3)
/* 80040738 0003C398  38 9D 00 44 */	addi r4, r29, 0x44
/* 8004073C 0003C39C  38 A1 00 08 */	addi r5, r1, 8
/* 80040740 0003C3A0  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 80040744 0003C3A4  C0 03 00 04 */	lfs f0, 4(r3)
/* 80040748 0003C3A8  D0 01 00 30 */	stfs f0, 0x30(r1)
/* 8004074C 0003C3AC  C0 03 00 08 */	lfs f0, 8(r3)
/* 80040750 0003C3B0  38 61 00 2C */	addi r3, r1, 0x2c
/* 80040754 0003C3B4  D0 01 00 34 */	stfs f0, 0x34(r1)
/* 80040758 0003C3B8  48 23 C5 6D */	bl func_8027CCC4
/* 8004075C 0003C3BC  C0 61 00 08 */	lfs f3, 8(r1)
/* 80040760 0003C3C0  38 7D 00 2C */	addi r3, r29, 0x2c
/* 80040764 0003C3C4  C0 22 82 B4 */	lfs f1, lbl_806408B4-_SDA2_BASE_(r2)
/* 80040768 0003C3C8  38 9D 00 14 */	addi r4, r29, 0x14
/* 8004076C 0003C3CC  D0 7D 00 14 */	stfs f3, 0x14(r29)
/* 80040770 0003C3D0  38 A1 00 2C */	addi r5, r1, 0x2c
/* 80040774 0003C3D4  C0 41 00 0C */	lfs f2, 0xc(r1)
/* 80040778 0003C3D8  D0 5D 00 18 */	stfs f2, 0x18(r29)
/* 8004077C 0003C3DC  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80040780 0003C3E0  D0 1D 00 1C */	stfs f0, 0x1c(r29)
/* 80040784 0003C3E4  D0 7D 00 38 */	stfs f3, 0x38(r29)
/* 80040788 0003C3E8  D0 5D 00 3C */	stfs f2, 0x3c(r29)
/* 8004078C 0003C3EC  D0 1D 00 40 */	stfs f0, 0x40(r29)
/* 80040790 0003C3F0  4B FF F9 59 */	bl func_800400E8
lbl_80040794:
/* 80040794 0003C3F4  80 01 00 64 */	lwz r0, 0x64(r1)
/* 80040798 0003C3F8  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 8004079C 0003C3FC  83 C1 00 58 */	lwz r30, 0x58(r1)
/* 800407A0 0003C400  83 A1 00 54 */	lwz r29, 0x54(r1)
/* 800407A4 0003C404  7C 08 03 A6 */	mtlr r0
/* 800407A8 0003C408  38 21 00 60 */	addi r1, r1, 0x60
/* 800407AC 0003C40C  4E 80 00 20 */	blr

.global func_800407B0
func_800407B0:
/* 800407B0 0003C410  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800407B4 0003C414  7C 08 02 A6 */	mflr r0
/* 800407B8 0003C418  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 800407BC 0003C41C  90 01 00 44 */	stw r0, 0x44(r1)
/* 800407C0 0003C420  88 03 00 00 */	lbz r0, 0(r3)
/* 800407C4 0003C424  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 800407C8 0003C428  7C 7F 1B 78 */	mr r31, r3
/* 800407CC 0003C42C  2C 00 00 00 */	cmpwi r0, 0
/* 800407D0 0003C430  41 82 00 0C */	beq lbl_800407DC
/* 800407D4 0003C434  C0 23 00 0C */	lfs f1, 0xc(r3)
/* 800407D8 0003C438  48 00 01 3C */	b lbl_80040914
lbl_800407DC:
/* 800407DC 0003C43C  80 03 00 10 */	lwz r0, 0x10(r3)
/* 800407E0 0003C440  2C 00 00 02 */	cmpwi r0, 2
/* 800407E4 0003C444  41 82 00 50 */	beq lbl_80040834
/* 800407E8 0003C448  40 80 01 2C */	bge lbl_80040914
/* 800407EC 0003C44C  2C 00 00 01 */	cmpwi r0, 1
/* 800407F0 0003C450  40 80 00 08 */	bge lbl_800407F8
/* 800407F4 0003C454  48 00 01 20 */	b lbl_80040914
lbl_800407F8:
/* 800407F8 0003C458  80 83 00 58 */	lwz r4, 0x58(r3)
/* 800407FC 0003C45C  2C 04 00 00 */	cmpwi r4, 0
/* 80040800 0003C460  41 82 01 14 */	beq lbl_80040914
/* 80040804 0003C464  80 63 00 5C */	lwz r3, 0x5c(r3)
/* 80040808 0003C468  38 03 FF EB */	addi r0, r3, -21
/* 8004080C 0003C46C  28 00 00 01 */	cmplwi r0, 1
/* 80040810 0003C470  41 81 00 14 */	bgt lbl_80040824
/* 80040814 0003C474  7C 83 23 78 */	mr r3, r4
/* 80040818 0003C478  38 80 00 00 */	li r4, 0
/* 8004081C 0003C47C  4B FF 9D D1 */	bl func_8003A5EC
/* 80040820 0003C480  48 00 00 F4 */	b lbl_80040914
lbl_80040824:
/* 80040824 0003C484  7C 83 23 78 */	mr r3, r4
/* 80040828 0003C488  38 80 00 01 */	li r4, 1
/* 8004082C 0003C48C  4B FF 9D C1 */	bl func_8003A5EC
/* 80040830 0003C490  48 00 00 E4 */	b lbl_80040914
lbl_80040834:
/* 80040834 0003C494  80 83 00 58 */	lwz r4, 0x58(r3)
/* 80040838 0003C498  2C 04 00 00 */	cmpwi r4, 0
/* 8004083C 0003C49C  41 82 00 D8 */	beq lbl_80040914
/* 80040840 0003C4A0  80 03 00 60 */	lwz r0, 0x60(r3)
/* 80040844 0003C4A4  2C 00 00 00 */	cmpwi r0, 0
/* 80040848 0003C4A8  40 82 00 34 */	bne lbl_8004087C
/* 8004084C 0003C4AC  80 63 00 5C */	lwz r3, 0x5c(r3)
/* 80040850 0003C4B0  38 03 FF EB */	addi r0, r3, -21
/* 80040854 0003C4B4  28 00 00 01 */	cmplwi r0, 1
/* 80040858 0003C4B8  41 81 00 14 */	bgt lbl_8004086C
/* 8004085C 0003C4BC  7C 83 23 78 */	mr r3, r4
/* 80040860 0003C4C0  38 80 00 00 */	li r4, 0
/* 80040864 0003C4C4  4B FF 9D 89 */	bl func_8003A5EC
/* 80040868 0003C4C8  48 00 00 AC */	b lbl_80040914
lbl_8004086C:
/* 8004086C 0003C4CC  7C 83 23 78 */	mr r3, r4
/* 80040870 0003C4D0  38 80 00 01 */	li r4, 1
/* 80040874 0003C4D4  4B FF 9D 79 */	bl func_8003A5EC
/* 80040878 0003C4D8  48 00 00 9C */	b lbl_80040914
lbl_8004087C:
/* 8004087C 0003C4DC  7C 04 00 40 */	cmplw r4, r0
/* 80040880 0003C4E0  40 82 00 34 */	bne lbl_800408B4
/* 80040884 0003C4E4  80 63 00 5C */	lwz r3, 0x5c(r3)
/* 80040888 0003C4E8  38 03 FF EB */	addi r0, r3, -21
/* 8004088C 0003C4EC  28 00 00 01 */	cmplwi r0, 1
/* 80040890 0003C4F0  41 81 00 14 */	bgt lbl_800408A4
/* 80040894 0003C4F4  7C 83 23 78 */	mr r3, r4
/* 80040898 0003C4F8  38 80 00 00 */	li r4, 0
/* 8004089C 0003C4FC  4B FF 9D 51 */	bl func_8003A5EC
/* 800408A0 0003C500  48 00 00 74 */	b lbl_80040914
lbl_800408A4:
/* 800408A4 0003C504  7C 83 23 78 */	mr r3, r4
/* 800408A8 0003C508  38 80 00 01 */	li r4, 1
/* 800408AC 0003C50C  4B FF 9D 41 */	bl func_8003A5EC
/* 800408B0 0003C510  48 00 00 64 */	b lbl_80040914
lbl_800408B4:
/* 800408B4 0003C514  80 BF 00 5C */	lwz r5, 0x5c(r31)
/* 800408B8 0003C518  38 61 00 14 */	addi r3, r1, 0x14
/* 800408BC 0003C51C  4B FF AD B9 */	bl func_8003B674
/* 800408C0 0003C520  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 800408C4 0003C524  38 61 00 08 */	addi r3, r1, 8
/* 800408C8 0003C528  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 800408CC 0003C52C  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 800408D0 0003C530  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 800408D4 0003C534  80 9F 00 60 */	lwz r4, 0x60(r31)
/* 800408D8 0003C538  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 800408DC 0003C53C  80 BF 00 64 */	lwz r5, 0x64(r31)
/* 800408E0 0003C540  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 800408E4 0003C544  4B FF AD 91 */	bl func_8003B674
/* 800408E8 0003C548  C0 41 00 08 */	lfs f2, 8(r1)
/* 800408EC 0003C54C  38 61 00 20 */	addi r3, r1, 0x20
/* 800408F0 0003C550  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 800408F4 0003C554  38 81 00 2C */	addi r4, r1, 0x2c
/* 800408F8 0003C558  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 800408FC 0003C55C  D0 41 00 2C */	stfs f2, 0x2c(r1)
/* 80040900 0003C560  D0 21 00 30 */	stfs f1, 0x30(r1)
/* 80040904 0003C564  D0 01 00 34 */	stfs f0, 0x34(r1)
/* 80040908 0003C568  48 23 C6 C9 */	bl func_8027CFD0
/* 8004090C 0003C56C  C0 02 82 B8 */	lfs f0, lbl_806408B8-_SDA2_BASE_(r2)
/* 80040910 0003C570  EC 20 00 72 */	fmuls f1, f0, f1
lbl_80040914:
/* 80040914 0003C574  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80040918 0003C578  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8004091C 0003C57C  7C 08 03 A6 */	mtlr r0
/* 80040920 0003C580  38 21 00 40 */	addi r1, r1, 0x40
/* 80040924 0003C584  4E 80 00 20 */	blr

.global func_80040928
func_80040928:
/* 80040928 0003C588  80 03 00 04 */	lwz r0, 4(r3)
/* 8004092C 0003C58C  C0 44 00 00 */	lfs f2, 0(r4)
/* 80040930 0003C590  C0 24 00 04 */	lfs f1, 4(r4)
/* 80040934 0003C594  60 00 00 01 */	ori r0, r0, 1
/* 80040938 0003C598  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004093C 0003C59C  D0 43 00 20 */	stfs f2, 0x20(r3)
/* 80040940 0003C5A0  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80040944 0003C5A4  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80040948 0003C5A8  90 03 00 04 */	stw r0, 4(r3)
/* 8004094C 0003C5AC  4E 80 00 20 */	blr

.global dGeomEnable
dGeomEnable:
/* 80040950 0003C5B0  80 03 00 04 */	lwz r0, 4(r3)
/* 80040954 0003C5B4  60 00 00 02 */	ori r0, r0, 2
/* 80040958 0003C5B8  90 03 00 04 */	stw r0, 4(r3)
/* 8004095C 0003C5BC  4E 80 00 20 */	blr

.global func_80040960
func_80040960:
/* 80040960 0003C5C0  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 80040964 0003C5C4  7C 08 02 A6 */	mflr r0
/* 80040968 0003C5C8  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 8004096C 0003C5CC  90 01 00 64 */	stw r0, 0x64(r1)
/* 80040970 0003C5D0  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 80040974 0003C5D4  7C BF 2B 78 */	mr r31, r5
/* 80040978 0003C5D8  93 C1 00 58 */	stw r30, 0x58(r1)
/* 8004097C 0003C5DC  7C 9E 23 78 */	mr r30, r4
/* 80040980 0003C5E0  93 A1 00 54 */	stw r29, 0x54(r1)
/* 80040984 0003C5E4  7C 7D 1B 78 */	mr r29, r3
/* 80040988 0003C5E8  C0 23 00 50 */	lfs f1, 0x50(r3)
/* 8004098C 0003C5EC  80 63 00 54 */	lwz r3, 0x54(r3)
/* 80040990 0003C5F0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80040994 0003C5F4  80 03 06 CC */	lwz r0, 0x6cc(r3)
/* 80040998 0003C5F8  4C 40 13 82 */	cror 2, 0, 2
/* 8004099C 0003C5FC  41 82 00 0C */	beq lbl_800409A8
/* 800409A0 0003C600  2C 00 00 00 */	cmpwi r0, 0
/* 800409A4 0003C604  40 82 00 0C */	bne lbl_800409B0
lbl_800409A8:
/* 800409A8 0003C608  38 60 00 01 */	li r3, 1
/* 800409AC 0003C60C  48 00 01 18 */	b lbl_80040AC4
lbl_800409B0:
/* 800409B0 0003C610  7F E4 FB 78 */	mr r4, r31
/* 800409B4 0003C614  38 A1 00 28 */	addi r5, r1, 0x28
/* 800409B8 0003C618  48 00 3B 9D */	bl func_80044554
/* 800409BC 0003C61C  2C 03 00 00 */	cmpwi r3, 0
/* 800409C0 0003C620  40 82 00 0C */	bne lbl_800409CC
/* 800409C4 0003C624  38 60 00 01 */	li r3, 1
/* 800409C8 0003C628  48 00 00 FC */	b lbl_80040AC4
lbl_800409CC:
/* 800409CC 0003C62C  80 AD A3 D8 */	lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 800409D0 0003C630  3C 60 43 30 */	lis r3, 0x4330
/* 800409D4 0003C634  C0 E2 82 B0 */	lfs f7, lbl_806408B0-_SDA2_BASE_(r2)
/* 800409D8 0003C638  A0 85 00 04 */	lhz r4, 4(r5)
/* 800409DC 0003C63C  A0 05 00 06 */	lhz r0, 6(r5)
/* 800409E0 0003C640  90 81 00 3C */	stw r4, 0x3c(r1)
/* 800409E4 0003C644  C8 A2 82 C0 */	lfd f5, lbl_806408C0-_SDA2_BASE_(r2)
/* 800409E8 0003C648  90 61 00 38 */	stw r3, 0x38(r1)
/* 800409EC 0003C64C  C0 42 82 B8 */	lfs f2, lbl_806408B8-_SDA2_BASE_(r2)
/* 800409F0 0003C650  C8 01 00 38 */	lfd f0, 0x38(r1)
/* 800409F4 0003C654  90 01 00 44 */	stw r0, 0x44(r1)
/* 800409F8 0003C658  EC C0 28 28 */	fsubs f6, f0, f5
/* 800409FC 0003C65C  C0 21 00 28 */	lfs f1, 0x28(r1)
/* 80040A00 0003C660  90 61 00 40 */	stw r3, 0x40(r1)
/* 80040A04 0003C664  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 80040A08 0003C668  EC 66 00 B2 */	fmuls f3, f6, f2
/* 80040A0C 0003C66C  C8 81 00 40 */	lfd f4, 0x40(r1)
/* 80040A10 0003C670  D0 E1 00 18 */	stfs f7, 0x18(r1)
/* 80040A14 0003C674  EC 84 28 28 */	fsubs f4, f4, f5
/* 80040A18 0003C678  EC 21 18 28 */	fsubs f1, f1, f3
/* 80040A1C 0003C67C  D0 E1 00 1C */	stfs f7, 0x1c(r1)
/* 80040A20 0003C680  EC 44 00 B2 */	fmuls f2, f4, f2
/* 80040A24 0003C684  D0 C1 00 20 */	stfs f6, 0x20(r1)
/* 80040A28 0003C688  EC 21 00 72 */	fmuls f1, f1, f1
/* 80040A2C 0003C68C  D0 81 00 24 */	stfs f4, 0x24(r1)
/* 80040A30 0003C690  EC 00 10 28 */	fsubs f0, f0, f2
/* 80040A34 0003C694  D0 61 00 08 */	stfs f3, 8(r1)
/* 80040A38 0003C698  EC 00 00 32 */	fmuls f0, f0, f0
/* 80040A3C 0003C69C  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80040A40 0003C6A0  EC 21 00 2A */	fadds f1, f1, f0
/* 80040A44 0003C6A4  FC 01 38 40 */	fcmpo cr0, f1, f7
/* 80040A48 0003C6A8  4C 40 13 82 */	cror 2, 0, 2
/* 80040A4C 0003C6AC  40 82 00 08 */	bne lbl_80040A54
/* 80040A50 0003C6B0  48 00 00 0C */	b lbl_80040A5C
lbl_80040A54:
/* 80040A54 0003C6B4  48 19 3D E1 */	bl sqrt
/* 80040A58 0003C6B8  FC E0 08 18 */	frsp f7, f1
lbl_80040A5C:
/* 80040A5C 0003C6BC  C0 5D 00 50 */	lfs f2, 0x50(r29)
/* 80040A60 0003C6C0  FC 02 38 40 */	fcmpo cr0, f2, f7
/* 80040A64 0003C6C4  40 81 00 0C */	ble lbl_80040A70
/* 80040A68 0003C6C8  38 60 00 00 */	li r3, 0
/* 80040A6C 0003C6CC  48 00 00 58 */	b lbl_80040AC4
lbl_80040A70:
/* 80040A70 0003C6D0  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 80040A74 0003C6D4  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80040A78 0003C6D8  EC 61 10 28 */	fsubs f3, f1, f2
/* 80040A7C 0003C6DC  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80040A80 0003C6E0  4C 40 13 82 */	cror 2, 0, 2
/* 80040A84 0003C6E4  40 82 00 0C */	bne lbl_80040A90
/* 80040A88 0003C6E8  38 60 00 00 */	li r3, 0
/* 80040A8C 0003C6EC  48 00 00 38 */	b lbl_80040AC4
lbl_80040A90:
/* 80040A90 0003C6F0  EC 27 10 28 */	fsubs f1, f7, f2
/* 80040A94 0003C6F4  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80040A98 0003C6F8  EC 21 18 24 */	fdivs f1, f1, f3
/* 80040A9C 0003C6FC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80040AA0 0003C700  40 81 00 08 */	ble lbl_80040AA8
/* 80040AA4 0003C704  FC 20 00 90 */	fmr f1, f0
lbl_80040AA8:
/* 80040AA8 0003C708  C0 02 82 B4 */	lfs f0, lbl_806408B4-_SDA2_BASE_(r2)
/* 80040AAC 0003C70C  7F C3 F3 78 */	mr r3, r30
/* 80040AB0 0003C710  7F E5 FB 78 */	mr r5, r31
/* 80040AB4 0003C714  38 9D 00 14 */	addi r4, r29, 0x14
/* 80040AB8 0003C718  EC 21 00 32 */	fmuls f1, f1, f0
/* 80040ABC 0003C71C  4B FF F6 2D */	bl func_800400E8
/* 80040AC0 0003C720  38 60 00 02 */	li r3, 2
lbl_80040AC4:
/* 80040AC4 0003C724  80 01 00 64 */	lwz r0, 0x64(r1)
/* 80040AC8 0003C728  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 80040ACC 0003C72C  83 C1 00 58 */	lwz r30, 0x58(r1)
/* 80040AD0 0003C730  83 A1 00 54 */	lwz r29, 0x54(r1)
/* 80040AD4 0003C734  7C 08 03 A6 */	mtlr r0
/* 80040AD8 0003C738  38 21 00 60 */	addi r1, r1, 0x60
/* 80040ADC 0003C73C  4E 80 00 20 */	blr

.global func_80040AE0
func_80040AE0:
/* 80040AE0 0003C740  C0 46 00 00 */	lfs f2, 0(r6)
/* 80040AE4 0003C744  38 00 00 01 */	li r0, 1
/* 80040AE8 0003C748  C0 26 00 04 */	lfs f1, 4(r6)
/* 80040AEC 0003C74C  C0 06 00 08 */	lfs f0, 8(r6)
/* 80040AF0 0003C750  90 83 00 58 */	stw r4, 0x58(r3)
/* 80040AF4 0003C754  38 80 00 01 */	li r4, 1
/* 80040AF8 0003C758  D0 43 00 44 */	stfs f2, 0x44(r3)
/* 80040AFC 0003C75C  D0 23 00 48 */	stfs f1, 0x48(r3)
/* 80040B00 0003C760  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80040B04 0003C764  90 A3 00 5C */	stw r5, 0x5c(r3)
/* 80040B08 0003C768  90 03 00 10 */	stw r0, 0x10(r3)
/* 80040B0C 0003C76C  4B FF FA 7C */	b func_80040588

.global func_80040B10
func_80040B10:
/* 80040B10 0003C770  C0 44 00 00 */	lfs f2, 0(r4)
/* 80040B14 0003C774  38 00 00 04 */	li r0, 4
/* 80040B18 0003C778  C0 24 00 04 */	lfs f1, 4(r4)
/* 80040B1C 0003C77C  C0 04 00 08 */	lfs f0, 8(r4)
/* 80040B20 0003C780  38 80 00 01 */	li r4, 1
/* 80040B24 0003C784  D0 43 00 44 */	stfs f2, 0x44(r3)
/* 80040B28 0003C788  D0 23 00 48 */	stfs f1, 0x48(r3)
/* 80040B2C 0003C78C  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80040B30 0003C790  90 03 00 10 */	stw r0, 0x10(r3)
/* 80040B34 0003C794  4B FF FA 54 */	b func_80040588

.global func_80040B38
func_80040B38:
/* 80040B38 0003C798  2C 04 00 00 */	cmpwi r4, 0
/* 80040B3C 0003C79C  41 82 00 0C */	beq lbl_80040B48
/* 80040B40 0003C7A0  38 00 00 02 */	li r0, 2
/* 80040B44 0003C7A4  90 03 00 10 */	stw r0, 0x10(r3)
lbl_80040B48:
/* 80040B48 0003C7A8  90 83 00 58 */	stw r4, 0x58(r3)
/* 80040B4C 0003C7AC  38 80 00 01 */	li r4, 1
/* 80040B50 0003C7B0  90 A3 00 5C */	stw r5, 0x5c(r3)
/* 80040B54 0003C7B4  90 C3 00 60 */	stw r6, 0x60(r3)
/* 80040B58 0003C7B8  90 E3 00 64 */	stw r7, 0x64(r3)
/* 80040B5C 0003C7BC  D0 23 00 50 */	stfs f1, 0x50(r3)
/* 80040B60 0003C7C0  C0 08 00 00 */	lfs f0, 0(r8)
/* 80040B64 0003C7C4  D0 03 00 44 */	stfs f0, 0x44(r3)
/* 80040B68 0003C7C8  C0 08 00 04 */	lfs f0, 4(r8)
/* 80040B6C 0003C7CC  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80040B70 0003C7D0  C0 08 00 08 */	lfs f0, 8(r8)
/* 80040B74 0003C7D4  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80040B78 0003C7D8  4B FF FA 10 */	b func_80040588

.global func_80040B7C
func_80040B7C:
/* 80040B7C 0003C7DC  2C 04 00 00 */	cmpwi r4, 0
/* 80040B80 0003C7E0  41 80 00 1C */	blt lbl_80040B9C
/* 80040B84 0003C7E4  2C 04 00 04 */	cmpwi r4, 4
/* 80040B88 0003C7E8  40 80 00 14 */	bge lbl_80040B9C
/* 80040B8C 0003C7EC  54 80 18 38 */	slwi r0, r4, 3
/* 80040B90 0003C7F0  7C 63 02 14 */	add r3, r3, r0
/* 80040B94 0003C7F4  80 63 00 58 */	lwz r3, 0x58(r3)
/* 80040B98 0003C7F8  4E 80 00 20 */	blr
lbl_80040B9C:
/* 80040B9C 0003C7FC  38 60 00 00 */	li r3, 0
/* 80040BA0 0003C800  4E 80 00 20 */	blr

.global func_80040BA4
func_80040BA4:
/* 80040BA4 0003C804  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80040BA8 0003C808  7C 08 02 A6 */	mflr r0
/* 80040BAC 0003C80C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80040BB0 0003C810  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80040BB4 0003C814  7C 9F 23 78 */	mr r31, r4
/* 80040BB8 0003C818  38 80 00 01 */	li r4, 1
/* 80040BBC 0003C81C  93 C1 00 08 */	stw r30, 8(r1)
/* 80040BC0 0003C820  7C 7E 1B 78 */	mr r30, r3
/* 80040BC4 0003C824  4B FF F9 C5 */	bl func_80040588
/* 80040BC8 0003C828  93 FE 00 10 */	stw r31, 0x10(r30)
/* 80040BCC 0003C82C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80040BD0 0003C830  83 C1 00 08 */	lwz r30, 8(r1)
/* 80040BD4 0003C834  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80040BD8 0003C838  7C 08 03 A6 */	mtlr r0
/* 80040BDC 0003C83C  38 21 00 10 */	addi r1, r1, 0x10
/* 80040BE0 0003C840  4E 80 00 20 */	blr

.global func_80040BE4
func_80040BE4:
/* 80040BE4 0003C844  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80040BE8 0003C848  7C 08 02 A6 */	mflr r0
/* 80040BEC 0003C84C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80040BF0 0003C850  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80040BF4 0003C854  7C 9F 23 78 */	mr r31, r4
/* 80040BF8 0003C858  38 80 00 00 */	li r4, 0
/* 80040BFC 0003C85C  93 C1 00 08 */	stw r30, 8(r1)
/* 80040C00 0003C860  7C 7E 1B 78 */	mr r30, r3
/* 80040C04 0003C864  4B FF FF A1 */	bl func_80040BA4
/* 80040C08 0003C868  C0 5F 00 00 */	lfs f2, 0(r31)
/* 80040C0C 0003C86C  C0 3F 00 04 */	lfs f1, 4(r31)
/* 80040C10 0003C870  C0 1F 00 08 */	lfs f0, 8(r31)
/* 80040C14 0003C874  D0 5E 00 14 */	stfs f2, 0x14(r30)
/* 80040C18 0003C878  D0 3E 00 18 */	stfs f1, 0x18(r30)
/* 80040C1C 0003C87C  D0 1E 00 1C */	stfs f0, 0x1c(r30)
/* 80040C20 0003C880  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80040C24 0003C884  83 C1 00 08 */	lwz r30, 8(r1)
/* 80040C28 0003C888  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80040C2C 0003C88C  7C 08 03 A6 */	mtlr r0
/* 80040C30 0003C890  38 21 00 10 */	addi r1, r1, 0x10
/* 80040C34 0003C894  4E 80 00 20 */	blr

.global func_80040C38
func_80040C38:
/* 80040C38 0003C898  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80040C3C 0003C89C  7C 08 02 A6 */	mflr r0
/* 80040C40 0003C8A0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80040C44 0003C8A4  88 03 00 00 */	lbz r0, 0(r3)
/* 80040C48 0003C8A8  2C 00 00 00 */	cmpwi r0, 0
/* 80040C4C 0003C8AC  41 82 00 0C */	beq lbl_80040C58
/* 80040C50 0003C8B0  C0 23 00 08 */	lfs f1, 8(r3)
/* 80040C54 0003C8B4  48 00 00 48 */	b lbl_80040C9C
lbl_80040C58:
/* 80040C58 0003C8B8  80 03 00 58 */	lwz r0, 0x58(r3)
/* 80040C5C 0003C8BC  38 80 00 00 */	li r4, 0
/* 80040C60 0003C8C0  2C 00 00 00 */	cmpwi r0, 0
/* 80040C64 0003C8C4  41 82 00 0C */	beq lbl_80040C70
/* 80040C68 0003C8C8  7C 04 03 78 */	mr r4, r0
/* 80040C6C 0003C8CC  48 00 00 14 */	b lbl_80040C80
lbl_80040C70:
/* 80040C70 0003C8D0  80 03 00 60 */	lwz r0, 0x60(r3)
/* 80040C74 0003C8D4  2C 00 00 00 */	cmpwi r0, 0
/* 80040C78 0003C8D8  41 82 00 08 */	beq lbl_80040C80
/* 80040C7C 0003C8DC  7C 04 03 78 */	mr r4, r0
lbl_80040C80:
/* 80040C80 0003C8E0  2C 04 00 00 */	cmpwi r4, 0
/* 80040C84 0003C8E4  41 82 00 14 */	beq lbl_80040C98
/* 80040C88 0003C8E8  38 61 00 08 */	addi r3, r1, 8
/* 80040C8C 0003C8EC  4B FF 7E 09 */	bl func_80038A94
/* 80040C90 0003C8F0  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 80040C94 0003C8F4  48 00 00 08 */	b lbl_80040C9C
lbl_80040C98:
/* 80040C98 0003C8F8  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
lbl_80040C9C:
/* 80040C9C 0003C8FC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040CA0 0003C900  7C 08 03 A6 */	mtlr r0
/* 80040CA4 0003C904  38 21 00 20 */	addi r1, r1, 0x20
/* 80040CA8 0003C908  4E 80 00 20 */	blr

.global func_80040CAC
func_80040CAC:
/* 80040CAC 0003C90C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80040CB0 0003C910  7C 08 02 A6 */	mflr r0
/* 80040CB4 0003C914  90 01 00 44 */	stw r0, 0x44(r1)
/* 80040CB8 0003C918  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80040CBC 0003C91C  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80040CC0 0003C920  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80040CC4 0003C924  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80040CC8 0003C928  38 00 00 01 */	li r0, 1
/* 80040CCC 0003C92C  FF C0 08 90 */	fmr f30, f1
/* 80040CD0 0003C930  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80040CD4 0003C934  7C BF 2B 78 */	mr r31, r5
/* 80040CD8 0003C938  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80040CDC 0003C93C  7C 9E 23 78 */	mr r30, r4
/* 80040CE0 0003C940  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80040CE4 0003C944  7C 7D 1B 78 */	mr r29, r3
/* 80040CE8 0003C948  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80040CEC 0003C94C  90 C3 00 10 */	stw r6, 0x10(r3)
/* 80040CF0 0003C950  98 03 00 00 */	stb r0, 0(r3)
/* 80040CF4 0003C954  80 05 00 04 */	lwz r0, 4(r5)
/* 80040CF8 0003C958  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 80040CFC 0003C95C  41 82 00 18 */	beq lbl_80040D14
/* 80040D00 0003C960  38 85 00 20 */	addi r4, r5, 0x20
/* 80040D04 0003C964  38 63 00 14 */	addi r3, r3, 0x14
/* 80040D08 0003C968  38 A5 00 14 */	addi r5, r5, 0x14
/* 80040D0C 0003C96C  4B FF F3 DD */	bl func_800400E8
/* 80040D10 0003C970  48 00 00 14 */	b lbl_80040D24
lbl_80040D14:
/* 80040D14 0003C974  38 63 00 14 */	addi r3, r3, 0x14
/* 80040D18 0003C978  38 84 00 14 */	addi r4, r4, 0x14
/* 80040D1C 0003C97C  38 A5 00 14 */	addi r5, r5, 0x14
/* 80040D20 0003C980  4B FF F3 C9 */	bl func_800400E8
lbl_80040D24:
/* 80040D24 0003C984  FC 20 F0 90 */	fmr f1, f30
/* 80040D28 0003C988  38 7D 00 2C */	addi r3, r29, 0x2c
/* 80040D2C 0003C98C  38 9E 00 2C */	addi r4, r30, 0x2c
/* 80040D30 0003C990  38 BF 00 2C */	addi r5, r31, 0x2c
/* 80040D34 0003C994  4B FF F3 B5 */	bl func_800400E8
/* 80040D38 0003C998  FC 20 F0 90 */	fmr f1, f30
/* 80040D3C 0003C99C  38 7D 00 38 */	addi r3, r29, 0x38
/* 80040D40 0003C9A0  38 9E 00 38 */	addi r4, r30, 0x38
/* 80040D44 0003C9A4  38 BF 00 38 */	addi r5, r31, 0x38
/* 80040D48 0003C9A8  4B FF F3 A1 */	bl func_800400E8
/* 80040D4C 0003C9AC  FC 20 F0 90 */	fmr f1, f30
/* 80040D50 0003C9B0  38 7D 00 44 */	addi r3, r29, 0x44
/* 80040D54 0003C9B4  38 9E 00 44 */	addi r4, r30, 0x44
/* 80040D58 0003C9B8  38 BF 00 44 */	addi r5, r31, 0x44
/* 80040D5C 0003C9BC  4B FF F3 8D */	bl func_800400E8
/* 80040D60 0003C9C0  C0 1F 00 50 */	lfs f0, 0x50(r31)
/* 80040D64 0003C9C4  C0 3E 00 50 */	lfs f1, 0x50(r30)
/* 80040D68 0003C9C8  EC 00 08 28 */	fsubs f0, f0, f1
/* 80040D6C 0003C9CC  EC 1E 00 32 */	fmuls f0, f30, f0
/* 80040D70 0003C9D0  EC 01 00 2A */	fadds f0, f1, f0
/* 80040D74 0003C9D4  D0 1D 00 50 */	stfs f0, 0x50(r29)
/* 80040D78 0003C9D8  80 1E 00 58 */	lwz r0, 0x58(r30)
/* 80040D7C 0003C9DC  90 1D 00 58 */	stw r0, 0x58(r29)
/* 80040D80 0003C9E0  80 1E 00 5C */	lwz r0, 0x5c(r30)
/* 80040D84 0003C9E4  90 1D 00 5C */	stw r0, 0x5c(r29)
/* 80040D88 0003C9E8  80 1E 00 60 */	lwz r0, 0x60(r30)
/* 80040D8C 0003C9EC  90 1D 00 60 */	stw r0, 0x60(r29)
/* 80040D90 0003C9F0  80 1E 00 64 */	lwz r0, 0x64(r30)
/* 80040D94 0003C9F4  90 1D 00 64 */	stw r0, 0x64(r29)
/* 80040D98 0003C9F8  80 1E 00 68 */	lwz r0, 0x68(r30)
/* 80040D9C 0003C9FC  90 1D 00 68 */	stw r0, 0x68(r29)
/* 80040DA0 0003CA00  80 1E 00 6C */	lwz r0, 0x6c(r30)
/* 80040DA4 0003CA04  90 1D 00 6C */	stw r0, 0x6c(r29)
/* 80040DA8 0003CA08  80 1E 00 70 */	lwz r0, 0x70(r30)
/* 80040DAC 0003CA0C  90 1D 00 70 */	stw r0, 0x70(r29)
/* 80040DB0 0003CA10  80 1E 00 74 */	lwz r0, 0x74(r30)
/* 80040DB4 0003CA14  90 1D 00 74 */	stw r0, 0x74(r29)
/* 80040DB8 0003CA18  80 1F 00 04 */	lwz r0, 4(r31)
/* 80040DBC 0003CA1C  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80040DC0 0003CA20  41 82 00 14 */	beq lbl_80040DD4
/* 80040DC4 0003CA24  7F E3 FB 78 */	mr r3, r31
/* 80040DC8 0003CA28  4B FF FE 71 */	bl func_80040C38
/* 80040DCC 0003CA2C  D0 3D 00 08 */	stfs f1, 8(r29)
/* 80040DD0 0003CA30  48 00 00 28 */	b lbl_80040DF8
lbl_80040DD4:
/* 80040DD4 0003CA34  7F C3 F3 78 */	mr r3, r30
/* 80040DD8 0003CA38  4B FF FE 61 */	bl func_80040C38
/* 80040DDC 0003CA3C  FF E0 08 90 */	fmr f31, f1
/* 80040DE0 0003CA40  7F E3 FB 78 */	mr r3, r31
/* 80040DE4 0003CA44  4B FF FE 55 */	bl func_80040C38
/* 80040DE8 0003CA48  EC 01 F8 28 */	fsubs f0, f1, f31
/* 80040DEC 0003CA4C  EC 1E 00 32 */	fmuls f0, f30, f0
/* 80040DF0 0003CA50  EC 1F 00 2A */	fadds f0, f31, f0
/* 80040DF4 0003CA54  D0 1D 00 08 */	stfs f0, 8(r29)
lbl_80040DF8:
/* 80040DF8 0003CA58  7F C3 F3 78 */	mr r3, r30
/* 80040DFC 0003CA5C  4B FF F9 B5 */	bl func_800407B0
/* 80040E00 0003CA60  FF E0 08 90 */	fmr f31, f1
/* 80040E04 0003CA64  7F E3 FB 78 */	mr r3, r31
/* 80040E08 0003CA68  4B FF F9 A9 */	bl func_800407B0
/* 80040E0C 0003CA6C  EC 01 F8 28 */	fsubs f0, f1, f31
/* 80040E10 0003CA70  EC 1E 00 32 */	fmuls f0, f30, f0
/* 80040E14 0003CA74  EC 1F 00 2A */	fadds f0, f31, f0
/* 80040E18 0003CA78  D0 1D 00 0C */	stfs f0, 0xc(r29)
/* 80040E1C 0003CA7C  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80040E20 0003CA80  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80040E24 0003CA84  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80040E28 0003CA88  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80040E2C 0003CA8C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80040E30 0003CA90  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80040E34 0003CA94  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80040E38 0003CA98  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80040E3C 0003CA9C  7C 08 03 A6 */	mtlr r0
/* 80040E40 0003CAA0  38 21 00 40 */	addi r1, r1, 0x40
/* 80040E44 0003CAA4  4E 80 00 20 */	blr

.global func_80040E48
func_80040E48:
/* 80040E48 0003CAA8  80 A3 00 58 */	lwz r5, 0x58(r3)
/* 80040E4C 0003CAAC  38 00 00 00 */	li r0, 0
/* 80040E50 0003CAB0  7C 05 20 40 */	cmplw r5, r4
/* 80040E54 0003CAB4  40 82 00 0C */	bne lbl_80040E60
/* 80040E58 0003CAB8  90 03 00 58 */	stw r0, 0x58(r3)
/* 80040E5C 0003CABC  90 03 00 5C */	stw r0, 0x5c(r3)
lbl_80040E60:
/* 80040E60 0003CAC0  80 A3 00 60 */	lwz r5, 0x60(r3)
/* 80040E64 0003CAC4  7C 05 20 40 */	cmplw r5, r4
/* 80040E68 0003CAC8  40 82 00 0C */	bne lbl_80040E74
/* 80040E6C 0003CACC  90 03 00 60 */	stw r0, 0x60(r3)
/* 80040E70 0003CAD0  90 03 00 64 */	stw r0, 0x64(r3)
lbl_80040E74:
/* 80040E74 0003CAD4  38 63 00 10 */	addi r3, r3, 0x10
/* 80040E78 0003CAD8  80 A3 00 58 */	lwz r5, 0x58(r3)
/* 80040E7C 0003CADC  7C 05 20 40 */	cmplw r5, r4
/* 80040E80 0003CAE0  40 82 00 0C */	bne lbl_80040E8C
/* 80040E84 0003CAE4  90 03 00 58 */	stw r0, 0x58(r3)
/* 80040E88 0003CAE8  90 03 00 5C */	stw r0, 0x5c(r3)
lbl_80040E8C:
/* 80040E8C 0003CAEC  80 A3 00 60 */	lwz r5, 0x60(r3)
/* 80040E90 0003CAF0  7C 05 20 40 */	cmplw r5, r4
/* 80040E94 0003CAF4  4C 82 00 20 */	bnelr
/* 80040E98 0003CAF8  90 03 00 60 */	stw r0, 0x60(r3)
/* 80040E9C 0003CAFC  90 03 00 64 */	stw r0, 0x64(r3)
/* 80040EA0 0003CB00  4E 80 00 20 */	blr

.global func_80040EA4
func_80040EA4:
/* 80040EA4 0003CB04  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80040EA8 0003CB08  7C 08 02 A6 */	mflr r0
/* 80040EAC 0003CB0C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80040EB0 0003CB10  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80040EB4 0003CB14  3B E3 00 04 */	addi r31, r3, 4
/* 80040EB8 0003CB18  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80040EBC 0003CB1C  3B C3 01 B4 */	addi r30, r3, 0x1b4
/* 80040EC0 0003CB20  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80040EC4 0003CB24  7C 7D 1B 78 */	mr r29, r3
lbl_80040EC8:
/* 80040EC8 0003CB28  7F E3 FB 78 */	mr r3, r31
/* 80040ECC 0003CB2C  48 00 F4 59 */	bl func_80050324
/* 80040ED0 0003CB30  3B FF 00 24 */	addi r31, r31, 0x24
/* 80040ED4 0003CB34  7C 1F F0 40 */	cmplw r31, r30
/* 80040ED8 0003CB38  41 80 FF F0 */	blt lbl_80040EC8
/* 80040EDC 0003CB3C  3B FD 03 94 */	addi r31, r29, 0x394
lbl_80040EE0:
/* 80040EE0 0003CB40  7F C3 F3 78 */	mr r3, r30
/* 80040EE4 0003CB44  48 00 FF 55 */	bl func_80050E38
/* 80040EE8 0003CB48  3B DE 00 60 */	addi r30, r30, 0x60
/* 80040EEC 0003CB4C  7C 1E F8 40 */	cmplw r30, r31
/* 80040EF0 0003CB50  41 80 FF F0 */	blt lbl_80040EE0
/* 80040EF4 0003CB54  7F E3 FB 78 */	mr r3, r31
/* 80040EF8 0003CB58  48 00 FF 41 */	bl func_80050E38
/* 80040EFC 0003CB5C  38 7D 03 F4 */	addi r3, r29, 0x3f4
/* 80040F00 0003CB60  48 00 FF 39 */	bl func_80050E38
/* 80040F04 0003CB64  38 7D 04 54 */	addi r3, r29, 0x454
/* 80040F08 0003CB68  48 00 FF 31 */	bl func_80050E38
/* 80040F0C 0003CB6C  7F A4 EB 78 */	mr r4, r29
/* 80040F10 0003CB70  38 7D 04 E8 */	addi r3, r29, 0x4e8
/* 80040F14 0003CB74  4B FF F5 95 */	bl func_800404A8
/* 80040F18 0003CB78  7F A4 EB 78 */	mr r4, r29
/* 80040F1C 0003CB7C  38 7D 05 60 */	addi r3, r29, 0x560
/* 80040F20 0003CB80  4B FF F5 89 */	bl func_800404A8
/* 80040F24 0003CB84  7F A4 EB 78 */	mr r4, r29
/* 80040F28 0003CB88  38 7D 05 D8 */	addi r3, r29, 0x5d8
/* 80040F2C 0003CB8C  4B FF F5 7D */	bl func_800404A8
/* 80040F30 0003CB90  7F A4 EB 78 */	mr r4, r29
/* 80040F34 0003CB94  38 7D 06 50 */	addi r3, r29, 0x650
/* 80040F38 0003CB98  4B FF F5 71 */	bl func_800404A8
/* 80040F3C 0003CB9C  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80040F40 0003CBA0  38 00 00 00 */	li r0, 0
/* 80040F44 0003CBA4  C0 42 82 BC */	lfs f2, lbl_806408BC-_SDA2_BASE_(r2)
/* 80040F48 0003CBA8  7F A3 EB 78 */	mr r3, r29
/* 80040F4C 0003CBAC  C0 22 82 B4 */	lfs f1, lbl_806408B4-_SDA2_BASE_(r2)
/* 80040F50 0003CBB0  98 1D 00 00 */	stb r0, 0(r29)
/* 80040F54 0003CBB4  90 1D 06 CC */	stw r0, 0x6cc(r29)
/* 80040F58 0003CBB8  98 1D 00 02 */	stb r0, 2(r29)
/* 80040F5C 0003CBBC  90 1D 04 BC */	stw r0, 0x4bc(r29)
/* 80040F60 0003CBC0  D0 5D 04 D0 */	stfs f2, 0x4d0(r29)
/* 80040F64 0003CBC4  D0 3D 04 CC */	stfs f1, 0x4cc(r29)
/* 80040F68 0003CBC8  D0 1D 04 C8 */	stfs f0, 0x4c8(r29)
/* 80040F6C 0003CBCC  D0 1D 06 DC */	stfs f0, 0x6dc(r29)
/* 80040F70 0003CBD0  D0 1D 06 F0 */	stfs f0, 0x6f0(r29)
/* 80040F74 0003CBD4  D0 1D 06 EC */	stfs f0, 0x6ec(r29)
/* 80040F78 0003CBD8  D0 1D 06 E8 */	stfs f0, 0x6e8(r29)
/* 80040F7C 0003CBDC  D0 1D 06 E4 */	stfs f0, 0x6e4(r29)
/* 80040F80 0003CBE0  D0 1D 06 E0 */	stfs f0, 0x6e0(r29)
/* 80040F84 0003CBE4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80040F88 0003CBE8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80040F8C 0003CBEC  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80040F90 0003CBF0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80040F94 0003CBF4  7C 08 03 A6 */	mtlr r0
/* 80040F98 0003CBF8  38 21 00 20 */	addi r1, r1, 0x20
/* 80040F9C 0003CBFC  4E 80 00 20 */	blr

.global func_80040FA0
func_80040FA0:
/* 80040FA0 0003CC00  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80040FA4 0003CC04  7C 08 02 A6 */	mflr r0
/* 80040FA8 0003CC08  C0 02 82 C8 */	lfs f0, lbl_806408C8-_SDA2_BASE_(r2)
/* 80040FAC 0003CC0C  90 01 00 44 */	stw r0, 0x44(r1)
/* 80040FB0 0003CC10  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80040FB4 0003CC14  3B E0 00 01 */	li r31, 1
/* 80040FB8 0003CC18  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80040FBC 0003CC1C  7C 7E 1B 78 */	mr r30, r3
/* 80040FC0 0003CC20  9B E3 00 00 */	stb r31, 0(r3)
/* 80040FC4 0003CC24  D0 03 04 E0 */	stfs f0, 0x4e0(r3)
/* 80040FC8 0003CC28  38 63 00 04 */	addi r3, r3, 4
/* 80040FCC 0003CC2C  48 00 F3 BD */	bl func_80050388
/* 80040FD0 0003CC30  9B FE 00 01 */	stb r31, 1(r30)
/* 80040FD4 0003CC34  7F C3 F3 78 */	mr r3, r30
/* 80040FD8 0003CC38  C0 42 82 B0 */	lfs f2, lbl_806408B0-_SDA2_BASE_(r2)
/* 80040FDC 0003CC3C  38 81 00 20 */	addi r4, r1, 0x20
/* 80040FE0 0003CC40  C0 22 82 CC */	lfs f1, lbl_806408CC-_SDA2_BASE_(r2)
/* 80040FE4 0003CC44  C0 02 82 D0 */	lfs f0, lbl_806408D0-_SDA2_BASE_(r2)
/* 80040FE8 0003CC48  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 80040FEC 0003CC4C  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 80040FF0 0003CC50  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 80040FF4 0003CC54  48 00 00 B9 */	bl func_800410AC
/* 80040FF8 0003CC58  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80040FFC 0003CC5C  7F C3 F3 78 */	mr r3, r30
/* 80041000 0003CC60  38 81 00 14 */	addi r4, r1, 0x14
/* 80041004 0003CC64  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80041008 0003CC68  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 8004100C 0003CC6C  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80041010 0003CC70  48 00 15 25 */	bl func_80042534
/* 80041014 0003CC74  C0 42 82 B0 */	lfs f2, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041018 0003CC78  38 61 00 08 */	addi r3, r1, 8
/* 8004101C 0003CC7C  C0 22 82 CC */	lfs f1, lbl_806408CC-_SDA2_BASE_(r2)
/* 80041020 0003CC80  C0 02 82 D0 */	lfs f0, lbl_806408D0-_SDA2_BASE_(r2)
/* 80041024 0003CC84  D0 41 00 08 */	stfs f2, 8(r1)
/* 80041028 0003CC88  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004102C 0003CC8C  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80041030 0003CC90  48 23 BD 55 */	bl func_8027CD84
/* 80041034 0003CC94  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041038 0003CC98  38 00 00 00 */	li r0, 0
/* 8004103C 0003CC9C  D0 3E 06 C8 */	stfs f1, 0x6c8(r30)
/* 80041040 0003CCA0  D0 1E 06 F4 */	stfs f0, 0x6f4(r30)
/* 80041044 0003CCA4  98 1E 06 F8 */	stb r0, 0x6f8(r30)
/* 80041048 0003CCA8  9B FE 00 01 */	stb r31, 1(r30)
/* 8004104C 0003CCAC  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80041050 0003CCB0  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80041054 0003CCB4  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80041058 0003CCB8  7C 08 03 A6 */	mtlr r0
/* 8004105C 0003CCBC  38 21 00 40 */	addi r1, r1, 0x40
/* 80041060 0003CCC0  4E 80 00 20 */	blr

.global func_80041064
func_80041064:
/* 80041064 0003CCC4  38 00 00 00 */	li r0, 0
/* 80041068 0003CCC8  98 03 00 00 */	stb r0, 0(r3)
/* 8004106C 0003CCCC  4E 80 00 20 */	blr

.global func_80041070
func_80041070:
/* 80041070 0003CCD0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80041074 0003CCD4  7C 08 02 A6 */	mflr r0
/* 80041078 0003CCD8  7C 87 23 78 */	mr r7, r4
/* 8004107C 0003CCDC  38 83 04 E0 */	addi r4, r3, 0x4e0
/* 80041080 0003CCE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80041084 0003CCE4  7C 86 23 78 */	mr r6, r4
/* 80041088 0003CCE8  38 A1 00 08 */	addi r5, r1, 8
/* 8004108C 0003CCEC  38 63 00 04 */	addi r3, r3, 4
/* 80041090 0003CCF0  D0 21 00 08 */	stfs f1, 8(r1)
/* 80041094 0003CCF4  FC 20 10 90 */	fmr f1, f2
/* 80041098 0003CCF8  48 00 F2 A5 */	bl func_8005033C
/* 8004109C 0003CCFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800410A0 0003CD00  7C 08 03 A6 */	mtlr r0
/* 800410A4 0003CD04  38 21 00 10 */	addi r1, r1, 0x10
/* 800410A8 0003CD08  4E 80 00 20 */	blr

.global func_800410AC
func_800410AC:
/* 800410AC 0003CD0C  38 00 00 00 */	li r0, 0
/* 800410B0 0003CD10  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 800410B4 0003CD14  98 03 00 02 */	stb r0, 2(r3)
/* 800410B8 0003CD18  48 00 00 04 */	b func_800410BC

.global func_800410BC
func_800410BC:
/* 800410BC 0003CD1C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800410C0 0003CD20  7C 08 02 A6 */	mflr r0
/* 800410C4 0003CD24  90 01 00 14 */	stw r0, 0x14(r1)
/* 800410C8 0003CD28  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800410CC 0003CD2C  7C 7F 1B 78 */	mr r31, r3
/* 800410D0 0003CD30  38 63 04 E8 */	addi r3, r3, 0x4e8
/* 800410D4 0003CD34  4B FF FB 11 */	bl func_80040BE4
/* 800410D8 0003CD38  38 7F 00 4C */	addi r3, r31, 0x4c
/* 800410DC 0003CD3C  48 00 F2 AD */	bl func_80050388
/* 800410E0 0003CD40  38 7F 00 70 */	addi r3, r31, 0x70
/* 800410E4 0003CD44  48 00 F2 A5 */	bl func_80050388
/* 800410E8 0003CD48  38 7F 00 94 */	addi r3, r31, 0x94
/* 800410EC 0003CD4C  48 00 F2 9D */	bl func_80050388
/* 800410F0 0003CD50  38 7F 01 24 */	addi r3, r31, 0x124
/* 800410F4 0003CD54  48 00 F2 95 */	bl func_80050388
/* 800410F8 0003CD58  38 7F 01 48 */	addi r3, r31, 0x148
/* 800410FC 0003CD5C  48 00 F2 8D */	bl func_80050388
/* 80041100 0003CD60  38 00 00 01 */	li r0, 1
/* 80041104 0003CD64  98 1F 00 01 */	stb r0, 1(r31)
/* 80041108 0003CD68  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004110C 0003CD6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80041110 0003CD70  7C 08 03 A6 */	mtlr r0
/* 80041114 0003CD74  38 21 00 10 */	addi r1, r1, 0x10
/* 80041118 0003CD78  4E 80 00 20 */	blr

.global func_8004111C
func_8004111C:
/* 8004111C 0003CD7C  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 80041120 0003CD80  7C 08 02 A6 */	mflr r0
/* 80041124 0003CD84  90 01 00 74 */	stw r0, 0x74(r1)
/* 80041128 0003CD88  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 8004112C 0003CD8C  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 80041130 0003CD90  FC 40 10 50 */	fneg f2, f2
/* 80041134 0003CD94  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041138 0003CD98  FF E0 18 90 */	fmr f31, f3
/* 8004113C 0003CD9C  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 80041140 0003CDA0  7C 7F 1B 78 */	mr r31, r3
/* 80041144 0003CDA4  38 61 00 38 */	addi r3, r1, 0x38
/* 80041148 0003CDA8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004114C 0003CDAC  38 81 00 08 */	addi r4, r1, 8
/* 80041150 0003CDB0  D0 41 00 08 */	stfs f2, 8(r1)
/* 80041154 0003CDB4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80041158 0003CDB8  48 1E 25 69 */	bl func_802236C0
/* 8004115C 0003CDBC  FC 00 F8 18 */	frsp f0, f31
/* 80041160 0003CDC0  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041164 0003CDC4  D3 E1 00 34 */	stfs f31, 0x34(r1)
/* 80041168 0003CDC8  38 61 00 14 */	addi r3, r1, 0x14
/* 8004116C 0003CDCC  38 81 00 38 */	addi r4, r1, 0x38
/* 80041170 0003CDD0  D0 21 00 2C */	stfs f1, 0x2c(r1)
/* 80041174 0003CDD4  D0 21 00 30 */	stfs f1, 0x30(r1)
/* 80041178 0003CDD8  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8004117C 0003CDDC  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80041180 0003CDE0  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80041184 0003CDE4  48 1E 28 89 */	bl func_80223A0C
/* 80041188 0003CDE8  38 7F 05 74 */	addi r3, r31, 0x574
/* 8004118C 0003CDEC  38 81 00 14 */	addi r4, r1, 0x14
/* 80041190 0003CDF0  38 A1 00 20 */	addi r5, r1, 0x20
/* 80041194 0003CDF4  48 23 BB 31 */	bl func_8027CCC4
/* 80041198 0003CDF8  C0 41 00 20 */	lfs f2, 0x20(r1)
/* 8004119C 0003CDFC  38 7F 04 E8 */	addi r3, r31, 0x4e8
/* 800411A0 0003CE00  C0 21 00 24 */	lfs f1, 0x24(r1)
/* 800411A4 0003CE04  38 81 00 48 */	addi r4, r1, 0x48
/* 800411A8 0003CE08  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 800411AC 0003CE0C  D0 41 00 48 */	stfs f2, 0x48(r1)
/* 800411B0 0003CE10  D0 21 00 4C */	stfs f1, 0x4c(r1)
/* 800411B4 0003CE14  D0 01 00 50 */	stfs f0, 0x50(r1)
/* 800411B8 0003CE18  4B FF FA 2D */	bl func_80040BE4
/* 800411BC 0003CE1C  38 00 00 00 */	li r0, 0
/* 800411C0 0003CE20  38 7F 00 4C */	addi r3, r31, 0x4c
/* 800411C4 0003CE24  90 1F 04 BC */	stw r0, 0x4bc(r31)
/* 800411C8 0003CE28  98 1F 00 02 */	stb r0, 2(r31)
/* 800411CC 0003CE2C  48 00 F1 BD */	bl func_80050388
/* 800411D0 0003CE30  38 7F 00 70 */	addi r3, r31, 0x70
/* 800411D4 0003CE34  48 00 F1 B5 */	bl func_80050388
/* 800411D8 0003CE38  38 7F 00 94 */	addi r3, r31, 0x94
/* 800411DC 0003CE3C  48 00 F1 AD */	bl func_80050388
/* 800411E0 0003CE40  38 00 00 01 */	li r0, 1
/* 800411E4 0003CE44  98 1F 00 01 */	stb r0, 1(r31)
/* 800411E8 0003CE48  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 800411EC 0003CE4C  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 800411F0 0003CE50  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 800411F4 0003CE54  80 01 00 74 */	lwz r0, 0x74(r1)
/* 800411F8 0003CE58  7C 08 03 A6 */	mtlr r0
/* 800411FC 0003CE5C  38 21 00 70 */	addi r1, r1, 0x70
/* 80041200 0003CE60  4E 80 00 20 */	blr

.global func_80041204
func_80041204:
/* 80041204 0003CE64  38 63 04 FC */	addi r3, r3, 0x4fc
/* 80041208 0003CE68  4E 80 00 20 */	blr

.global func_8004120C
func_8004120C:
/* 8004120C 0003CE6C  38 00 00 01 */	li r0, 1
/* 80041210 0003CE70  D0 23 06 F4 */	stfs f1, 0x6f4(r3)
/* 80041214 0003CE74  98 03 06 F8 */	stb r0, 0x6f8(r3)
/* 80041218 0003CE78  4E 80 00 20 */	blr

.global func_8004121C
func_8004121C:
/* 8004121C 0003CE7C  38 00 00 00 */	li r0, 0
/* 80041220 0003CE80  98 03 06 F8 */	stb r0, 0x6f8(r3)
/* 80041224 0003CE84  4E 80 00 20 */	blr

.global func_80041228
func_80041228:
/* 80041228 0003CE88  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 8004122C 0003CE8C  7C 08 02 A6 */	mflr r0
/* 80041230 0003CE90  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 80041234 0003CE94  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 80041238 0003CE98  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 8004123C 0003CE9C  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 80041240 0003CEA0  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 80041244 0003CEA4  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 80041248 0003CEA8  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 8004124C 0003CEAC  38 A1 00 54 */	addi r5, r1, 0x54
/* 80041250 0003CEB0  93 E1 00 6C */	stw r31, 0x6c(r1)
/* 80041254 0003CEB4  3B E4 00 14 */	addi r31, r4, 0x14
/* 80041258 0003CEB8  93 C1 00 68 */	stw r30, 0x68(r1)
/* 8004125C 0003CEBC  7C 9E 23 78 */	mr r30, r4
/* 80041260 0003CEC0  7F E4 FB 78 */	mr r4, r31
/* 80041264 0003CEC4  93 A1 00 64 */	stw r29, 0x64(r1)
/* 80041268 0003CEC8  7C 7D 1B 78 */	mr r29, r3
/* 8004126C 0003CECC  38 63 04 FC */	addi r3, r3, 0x4fc
/* 80041270 0003CED0  48 23 BA 79 */	bl func_8027CCE8
/* 80041274 0003CED4  7F C3 F3 78 */	mr r3, r30
/* 80041278 0003CED8  4B FF F9 C1 */	bl func_80040C38
/* 8004127C 0003CEDC  80 1D 04 BC */	lwz r0, 0x4bc(r29)
/* 80041280 0003CEE0  FF C0 08 90 */	fmr f30, f1
/* 80041284 0003CEE4  54 00 06 B5 */	rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 80041288 0003CEE8  41 82 00 40 */	beq lbl_800412C8
/* 8004128C 0003CEEC  7F C3 F3 78 */	mr r3, r30
/* 80041290 0003CEF0  4B FF F5 21 */	bl func_800407B0
/* 80041294 0003CEF4  FF E0 08 90 */	fmr f31, f1
/* 80041298 0003CEF8  7F A3 EB 78 */	mr r3, r29
/* 8004129C 0003CEFC  7F C4 F3 78 */	mr r4, r30
/* 800412A0 0003CF00  48 00 02 85 */	bl func_80041524
/* 800412A4 0003CF04  EC 01 F8 28 */	fsubs f0, f1, f31
/* 800412A8 0003CF08  7F C3 F3 78 */	mr r3, r30
/* 800412AC 0003CF0C  D0 1D 06 C8 */	stfs f0, 0x6c8(r29)
/* 800412B0 0003CF10  4B FF F5 01 */	bl func_800407B0
/* 800412B4 0003CF14  C0 5D 06 C8 */	lfs f2, 0x6c8(r29)
/* 800412B8 0003CF18  C0 1D 06 E8 */	lfs f0, 0x6e8(r29)
/* 800412BC 0003CF1C  EC 22 08 2A */	fadds f1, f2, f1
/* 800412C0 0003CF20  EF A0 08 2A */	fadds f29, f0, f1
/* 800412C4 0003CF24  48 00 00 1C */	b lbl_800412E0
lbl_800412C8:
/* 800412C8 0003CF28  7F C3 F3 78 */	mr r3, r30
/* 800412CC 0003CF2C  4B FF F4 E5 */	bl func_800407B0
/* 800412D0 0003CF30  C0 5D 06 C8 */	lfs f2, 0x6c8(r29)
/* 800412D4 0003CF34  C0 1D 06 E8 */	lfs f0, 0x6e8(r29)
/* 800412D8 0003CF38  EC 22 08 2A */	fadds f1, f2, f1
/* 800412DC 0003CF3C  EF A0 08 2A */	fadds f29, f0, f1
lbl_800412E0:
/* 800412E0 0003CF40  80 1D 01 24 */	lwz r0, 0x124(r29)
/* 800412E4 0003CF44  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 800412E8 0003CF48  2C 00 00 00 */	cmpwi r0, 0
/* 800412EC 0003CF4C  D3 A1 00 34 */	stfs f29, 0x34(r1)
/* 800412F0 0003CF50  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 800412F4 0003CF54  D0 01 00 30 */	stfs f0, 0x30(r1)
/* 800412F8 0003CF58  41 82 00 10 */	beq lbl_80041308
/* 800412FC 0003CF5C  C0 1D 04 D8 */	lfs f0, 0x4d8(r29)
/* 80041300 0003CF60  EF E0 F0 2A */	fadds f31, f0, f30
/* 80041304 0003CF64  48 00 00 2C */	b lbl_80041330
lbl_80041308:
/* 80041308 0003CF68  80 1D 04 BC */	lwz r0, 0x4bc(r29)
/* 8004130C 0003CF6C  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80041310 0003CF70  41 82 00 10 */	beq lbl_80041320
/* 80041314 0003CF74  C0 1D 04 C0 */	lfs f0, 0x4c0(r29)
/* 80041318 0003CF78  EF E0 F0 2A */	fadds f31, f0, f30
/* 8004131C 0003CF7C  48 00 00 14 */	b lbl_80041330
lbl_80041320:
/* 80041320 0003CF80  C0 41 00 5C */	lfs f2, 0x5c(r1)
/* 80041324 0003CF84  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 80041328 0003CF88  48 19 32 B5 */	bl atan2
/* 8004132C 0003CF8C  FF E0 08 18 */	frsp f31, f1
lbl_80041330:
/* 80041330 0003CF90  80 1D 01 48 */	lwz r0, 0x148(r29)
/* 80041334 0003CF94  2C 00 00 00 */	cmpwi r0, 0
/* 80041338 0003CF98  41 82 00 0C */	beq lbl_80041344
/* 8004133C 0003CF9C  C0 5D 04 DC */	lfs f2, 0x4dc(r29)
/* 80041340 0003CFA0  48 00 01 20 */	b lbl_80041460
lbl_80041344:
/* 80041344 0003CFA4  80 7D 04 BC */	lwz r3, 0x4bc(r29)
/* 80041348 0003CFA8  54 60 06 73 */	rlwinm. r0, r3, 0, 0x19, 0x19
/* 8004134C 0003CFAC  41 82 00 80 */	beq lbl_800413CC
/* 80041350 0003CFB0  C0 3D 04 C8 */	lfs f1, 0x4c8(r29)
/* 80041354 0003CFB4  C0 1F 00 04 */	lfs f0, 4(r31)
/* 80041358 0003CFB8  C0 42 82 D4 */	lfs f2, lbl_806408D4-_SDA2_BASE_(r2)
/* 8004135C 0003CFBC  EC 01 00 28 */	fsubs f0, f1, f0
/* 80041360 0003CFC0  EC 20 E8 24 */	fdivs f1, f0, f29
/* 80041364 0003CFC4  FC 00 0A 10 */	fabs f0, f1
/* 80041368 0003CFC8  FC 00 00 18 */	frsp f0, f0
/* 8004136C 0003CFCC  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80041370 0003CFD0  4C 41 13 82 */	cror 2, 1, 2
/* 80041374 0003CFD4  40 82 00 1C */	bne lbl_80041390
/* 80041378 0003CFD8  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 8004137C 0003CFDC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041380 0003CFE0  40 81 00 08 */	ble lbl_80041388
/* 80041384 0003CFE4  48 00 00 DC */	b lbl_80041460
lbl_80041388:
/* 80041388 0003CFE8  C0 42 82 D8 */	lfs f2, lbl_806408D8-_SDA2_BASE_(r2)
/* 8004138C 0003CFEC  48 00 00 D4 */	b lbl_80041460
lbl_80041390:
/* 80041390 0003CFF0  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80041394 0003CFF4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041398 0003CFF8  4C 41 13 82 */	cror 2, 1, 2
/* 8004139C 0003CFFC  40 82 00 0C */	bne lbl_800413A8
/* 800413A0 0003D000  C0 42 82 DC */	lfs f2, lbl_806408DC-_SDA2_BASE_(r2)
/* 800413A4 0003D004  48 00 00 BC */	b lbl_80041460
lbl_800413A8:
/* 800413A8 0003D008  C0 02 82 E0 */	lfs f0, lbl_806408E0-_SDA2_BASE_(r2)
/* 800413AC 0003D00C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800413B0 0003D010  4C 40 13 82 */	cror 2, 0, 2
/* 800413B4 0003D014  40 82 00 0C */	bne lbl_800413C0
/* 800413B8 0003D018  C0 42 82 E4 */	lfs f2, lbl_806408E4-_SDA2_BASE_(r2)
/* 800413BC 0003D01C  48 00 00 A4 */	b lbl_80041460
lbl_800413C0:
/* 800413C0 0003D020  48 19 32 19 */	bl asin
/* 800413C4 0003D024  FC 40 08 18 */	frsp f2, f1
/* 800413C8 0003D028  48 00 00 98 */	b lbl_80041460
lbl_800413CC:
/* 800413CC 0003D02C  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 800413D0 0003D030  41 82 00 18 */	beq lbl_800413E8
/* 800413D4 0003D034  80 9D 04 C4 */	lwz r4, 0x4c4(r29)
/* 800413D8 0003D038  7F A3 EB 78 */	mr r3, r29
/* 800413DC 0003D03C  48 00 27 35 */	bl func_80043B10
/* 800413E0 0003D040  FC 40 08 90 */	fmr f2, f1
/* 800413E4 0003D044  48 00 00 7C */	b lbl_80041460
lbl_800413E8:
/* 800413E8 0003D048  38 61 00 54 */	addi r3, r1, 0x54
/* 800413EC 0003D04C  48 23 B9 99 */	bl func_8027CD84
/* 800413F0 0003D050  C0 01 00 58 */	lfs f0, 0x58(r1)
/* 800413F4 0003D054  C0 42 82 D4 */	lfs f2, lbl_806408D4-_SDA2_BASE_(r2)
/* 800413F8 0003D058  EC 20 08 24 */	fdivs f1, f0, f1
/* 800413FC 0003D05C  FC 00 0A 10 */	fabs f0, f1
/* 80041400 0003D060  FC 00 00 18 */	frsp f0, f0
/* 80041404 0003D064  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80041408 0003D068  4C 41 13 82 */	cror 2, 1, 2
/* 8004140C 0003D06C  40 82 00 1C */	bne lbl_80041428
/* 80041410 0003D070  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041414 0003D074  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041418 0003D078  40 81 00 08 */	ble lbl_80041420
/* 8004141C 0003D07C  48 00 00 44 */	b lbl_80041460
lbl_80041420:
/* 80041420 0003D080  C0 42 82 D8 */	lfs f2, lbl_806408D8-_SDA2_BASE_(r2)
/* 80041424 0003D084  48 00 00 3C */	b lbl_80041460
lbl_80041428:
/* 80041428 0003D088  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 8004142C 0003D08C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041430 0003D090  4C 41 13 82 */	cror 2, 1, 2
/* 80041434 0003D094  40 82 00 0C */	bne lbl_80041440
/* 80041438 0003D098  C0 42 82 DC */	lfs f2, lbl_806408DC-_SDA2_BASE_(r2)
/* 8004143C 0003D09C  48 00 00 24 */	b lbl_80041460
lbl_80041440:
/* 80041440 0003D0A0  C0 02 82 E0 */	lfs f0, lbl_806408E0-_SDA2_BASE_(r2)
/* 80041444 0003D0A4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041448 0003D0A8  4C 40 13 82 */	cror 2, 0, 2
/* 8004144C 0003D0AC  40 82 00 0C */	bne lbl_80041458
/* 80041450 0003D0B0  C0 42 82 E4 */	lfs f2, lbl_806408E4-_SDA2_BASE_(r2)
/* 80041454 0003D0B4  48 00 00 0C */	b lbl_80041460
lbl_80041458:
/* 80041458 0003D0B8  48 19 31 81 */	bl asin
/* 8004145C 0003D0BC  FC 40 08 18 */	frsp f2, f1
lbl_80041460:
/* 80041460 0003D0C0  FC 40 10 50 */	fneg f2, f2
/* 80041464 0003D0C4  C0 1D 06 EC */	lfs f0, 0x6ec(r29)
/* 80041468 0003D0C8  C0 3D 06 F0 */	lfs f1, 0x6f0(r29)
/* 8004146C 0003D0CC  38 61 00 38 */	addi r3, r1, 0x38
/* 80041470 0003D0D0  EC 7F 00 2A */	fadds f3, f31, f0
/* 80041474 0003D0D4  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041478 0003D0D8  EC 22 08 28 */	fsubs f1, f2, f1
/* 8004147C 0003D0DC  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80041480 0003D0E0  38 81 00 08 */	addi r4, r1, 8
/* 80041484 0003D0E4  D0 61 00 0C */	stfs f3, 0xc(r1)
/* 80041488 0003D0E8  D0 21 00 08 */	stfs f1, 8(r1)
/* 8004148C 0003D0EC  48 1E 22 35 */	bl func_802236C0
/* 80041490 0003D0F0  C0 41 00 2C */	lfs f2, 0x2c(r1)
/* 80041494 0003D0F4  38 61 00 14 */	addi r3, r1, 0x14
/* 80041498 0003D0F8  C0 21 00 30 */	lfs f1, 0x30(r1)
/* 8004149C 0003D0FC  38 81 00 38 */	addi r4, r1, 0x38
/* 800414A0 0003D100  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 800414A4 0003D104  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 800414A8 0003D108  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 800414AC 0003D10C  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 800414B0 0003D110  48 1E 25 5D */	bl func_80223A0C
/* 800414B4 0003D114  7F E3 FB 78 */	mr r3, r31
/* 800414B8 0003D118  38 81 00 14 */	addi r4, r1, 0x14
/* 800414BC 0003D11C  38 A1 00 20 */	addi r5, r1, 0x20
/* 800414C0 0003D120  48 23 B8 05 */	bl func_8027CCC4
/* 800414C4 0003D124  C0 41 00 20 */	lfs f2, 0x20(r1)
/* 800414C8 0003D128  38 7D 04 E8 */	addi r3, r29, 0x4e8
/* 800414CC 0003D12C  C0 21 00 24 */	lfs f1, 0x24(r1)
/* 800414D0 0003D130  38 81 00 48 */	addi r4, r1, 0x48
/* 800414D4 0003D134  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 800414D8 0003D138  D0 41 00 48 */	stfs f2, 0x48(r1)
/* 800414DC 0003D13C  D0 21 00 4C */	stfs f1, 0x4c(r1)
/* 800414E0 0003D140  D0 01 00 50 */	stfs f0, 0x50(r1)
/* 800414E4 0003D144  4B FF F7 01 */	bl func_80040BE4
/* 800414E8 0003D148  38 00 00 01 */	li r0, 1
/* 800414EC 0003D14C  98 1D 00 01 */	stb r0, 1(r29)
/* 800414F0 0003D150  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 800414F4 0003D154  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 800414F8 0003D158  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 800414FC 0003D15C  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 80041500 0003D160  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 80041504 0003D164  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 80041508 0003D168  83 E1 00 6C */	lwz r31, 0x6c(r1)
/* 8004150C 0003D16C  83 C1 00 68 */	lwz r30, 0x68(r1)
/* 80041510 0003D170  83 A1 00 64 */	lwz r29, 0x64(r1)
/* 80041514 0003D174  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80041518 0003D178  7C 08 03 A6 */	mtlr r0
/* 8004151C 0003D17C  38 21 00 A0 */	addi r1, r1, 0xa0
/* 80041520 0003D180  4E 80 00 20 */	blr

.global func_80041524
func_80041524:
/* 80041524 0003D184  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80041528 0003D188  7C 08 02 A6 */	mflr r0
/* 8004152C 0003D18C  90 01 00 34 */	stw r0, 0x34(r1)
/* 80041530 0003D190  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 80041534 0003D194  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 80041538 0003D198  80 04 00 10 */	lwz r0, 0x10(r4)
/* 8004153C 0003D19C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80041540 0003D1A0  2C 00 00 02 */	cmpwi r0, 2
/* 80041544 0003D1A4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80041548 0003D1A8  7C 9E 23 78 */	mr r30, r4
/* 8004154C 0003D1AC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80041550 0003D1B0  7C 7D 1B 78 */	mr r29, r3
/* 80041554 0003D1B4  41 82 00 50 */	beq lbl_800415A4
/* 80041558 0003D1B8  40 80 01 10 */	bge lbl_80041668
/* 8004155C 0003D1BC  2C 00 00 01 */	cmpwi r0, 1
/* 80041560 0003D1C0  40 80 00 08 */	bge lbl_80041568
/* 80041564 0003D1C4  48 00 01 04 */	b lbl_80041668
lbl_80041568:
/* 80041568 0003D1C8  7F C3 F3 78 */	mr r3, r30
/* 8004156C 0003D1CC  38 80 00 00 */	li r4, 0
/* 80041570 0003D1D0  4B FF F6 0D */	bl func_80040B7C
/* 80041574 0003D1D4  2C 03 00 00 */	cmpwi r3, 0
/* 80041578 0003D1D8  41 82 00 24 */	beq lbl_8004159C
/* 8004157C 0003D1DC  7F C3 F3 78 */	mr r3, r30
/* 80041580 0003D1E0  38 80 00 00 */	li r4, 0
/* 80041584 0003D1E4  4B FF F5 F9 */	bl func_80040B7C
/* 80041588 0003D1E8  80 BD 04 D4 */	lwz r5, 0x4d4(r29)
/* 8004158C 0003D1EC  7C 64 1B 78 */	mr r4, r3
/* 80041590 0003D1F0  7F A3 EB 78 */	mr r3, r29
/* 80041594 0003D1F4  48 00 24 59 */	bl func_800439EC
/* 80041598 0003D1F8  48 00 00 D4 */	b lbl_8004166C
lbl_8004159C:
/* 8004159C 0003D1FC  C0 3D 06 C8 */	lfs f1, 0x6c8(r29)
/* 800415A0 0003D200  48 00 00 CC */	b lbl_8004166C
lbl_800415A4:
/* 800415A4 0003D204  7F C3 F3 78 */	mr r3, r30
/* 800415A8 0003D208  38 80 00 00 */	li r4, 0
/* 800415AC 0003D20C  4B FF F5 D1 */	bl func_80040B7C
/* 800415B0 0003D210  2C 03 00 00 */	cmpwi r3, 0
/* 800415B4 0003D214  41 82 00 AC */	beq lbl_80041660
/* 800415B8 0003D218  7F C3 F3 78 */	mr r3, r30
/* 800415BC 0003D21C  38 80 00 01 */	li r4, 1
/* 800415C0 0003D220  4B FF F5 BD */	bl func_80040B7C
/* 800415C4 0003D224  2C 03 00 00 */	cmpwi r3, 0
/* 800415C8 0003D228  40 82 00 24 */	bne lbl_800415EC
/* 800415CC 0003D22C  7F C3 F3 78 */	mr r3, r30
/* 800415D0 0003D230  38 80 00 00 */	li r4, 0
/* 800415D4 0003D234  4B FF F5 A9 */	bl func_80040B7C
/* 800415D8 0003D238  80 BD 04 D4 */	lwz r5, 0x4d4(r29)
/* 800415DC 0003D23C  7C 64 1B 78 */	mr r4, r3
/* 800415E0 0003D240  7F A3 EB 78 */	mr r3, r29
/* 800415E4 0003D244  48 00 24 09 */	bl func_800439EC
/* 800415E8 0003D248  48 00 00 84 */	b lbl_8004166C
lbl_800415EC:
/* 800415EC 0003D24C  7F C3 F3 78 */	mr r3, r30
/* 800415F0 0003D250  38 80 00 01 */	li r4, 1
/* 800415F4 0003D254  4B FF F5 89 */	bl func_80040B7C
/* 800415F8 0003D258  7C 7F 1B 78 */	mr r31, r3
/* 800415FC 0003D25C  7F C3 F3 78 */	mr r3, r30
/* 80041600 0003D260  38 80 00 00 */	li r4, 0
/* 80041604 0003D264  4B FF F5 79 */	bl func_80040B7C
/* 80041608 0003D268  7C 03 F8 40 */	cmplw r3, r31
/* 8004160C 0003D26C  40 82 00 24 */	bne lbl_80041630
/* 80041610 0003D270  7F C3 F3 78 */	mr r3, r30
/* 80041614 0003D274  38 80 00 00 */	li r4, 0
/* 80041618 0003D278  4B FF F5 65 */	bl func_80040B7C
/* 8004161C 0003D27C  80 BD 04 D4 */	lwz r5, 0x4d4(r29)
/* 80041620 0003D280  7C 64 1B 78 */	mr r4, r3
/* 80041624 0003D284  7F A3 EB 78 */	mr r3, r29
/* 80041628 0003D288  48 00 23 C5 */	bl func_800439EC
/* 8004162C 0003D28C  48 00 00 40 */	b lbl_8004166C
lbl_80041630:
/* 80041630 0003D290  7F C3 F3 78 */	mr r3, r30
/* 80041634 0003D294  4B FF F1 7D */	bl func_800407B0
/* 80041638 0003D298  FF E0 08 90 */	fmr f31, f1
/* 8004163C 0003D29C  7F C3 F3 78 */	mr r3, r30
/* 80041640 0003D2A0  38 80 00 00 */	li r4, 0
/* 80041644 0003D2A4  4B FF F5 39 */	bl func_80040B7C
/* 80041648 0003D2A8  80 BD 04 D4 */	lwz r5, 0x4d4(r29)
/* 8004164C 0003D2AC  7C 64 1B 78 */	mr r4, r3
/* 80041650 0003D2B0  7F A3 EB 78 */	mr r3, r29
/* 80041654 0003D2B4  48 00 23 99 */	bl func_800439EC
/* 80041658 0003D2B8  EC 21 F8 2A */	fadds f1, f1, f31
/* 8004165C 0003D2BC  48 00 00 10 */	b lbl_8004166C
lbl_80041660:
/* 80041660 0003D2C0  C0 3D 06 C8 */	lfs f1, 0x6c8(r29)
/* 80041664 0003D2C4  48 00 00 08 */	b lbl_8004166C
lbl_80041668:
/* 80041668 0003D2C8  C0 23 06 C8 */	lfs f1, 0x6c8(r3)
lbl_8004166C:
/* 8004166C 0003D2CC  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 80041670 0003D2D0  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80041674 0003D2D4  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80041678 0003D2D8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004167C 0003D2DC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80041680 0003D2E0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80041684 0003D2E4  7C 08 03 A6 */	mtlr r0
/* 80041688 0003D2E8  38 21 00 30 */	addi r1, r1, 0x30
/* 8004168C 0003D2EC  4E 80 00 20 */	blr

.global func_80041690
func_80041690:
/* 80041690 0003D2F0  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041694 0003D2F4  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80041698 0003D2F8  40 80 00 08 */	bge lbl_800416A0
/* 8004169C 0003D2FC  FC 60 00 90 */	fmr f3, f0
lbl_800416A0:
/* 800416A0 0003D300  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 800416A4 0003D304  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 800416A8 0003D308  40 81 00 08 */	ble lbl_800416B0
/* 800416AC 0003D30C  FC 60 00 90 */	fmr f3, f0
lbl_800416B0:
/* 800416B0 0003D310  C0 02 82 E8 */	lfs f0, lbl_806408E8-_SDA2_BASE_(r2)
/* 800416B4 0003D314  38 00 00 3F */	li r0, 0x3f
/* 800416B8 0003D318  D0 23 04 C0 */	stfs f1, 0x4c0(r3)
/* 800416BC 0003D31C  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 800416C0 0003D320  90 83 04 C4 */	stw r4, 0x4c4(r3)
/* 800416C4 0003D324  D0 63 04 CC */	stfs f3, 0x4cc(r3)
/* 800416C8 0003D328  D0 43 04 D0 */	stfs f2, 0x4d0(r3)
/* 800416CC 0003D32C  90 A3 04 D4 */	stw r5, 0x4d4(r3)
/* 800416D0 0003D330  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 800416D4 0003D334  4C 41 13 82 */	cror 2, 1, 2
/* 800416D8 0003D338  4C 82 00 20 */	bnelr
/* 800416DC 0003D33C  38 83 05 60 */	addi r4, r3, 0x560
/* 800416E0 0003D340  4B FF FB 48 */	b func_80041228
/* 800416E4 0003D344  4E 80 00 20 */	blr

.global func_800416E8
func_800416E8:
/* 800416E8 0003D348  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 800416EC 0003D34C  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 800416F0 0003D350  40 80 00 08 */	bge lbl_800416F8
/* 800416F4 0003D354  FC 60 00 90 */	fmr f3, f0
lbl_800416F8:
/* 800416F8 0003D358  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 800416FC 0003D35C  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80041700 0003D360  40 81 00 08 */	ble lbl_80041708
/* 80041704 0003D364  FC 60 00 90 */	fmr f3, f0
lbl_80041708:
/* 80041708 0003D368  C0 02 82 E8 */	lfs f0, lbl_806408E8-_SDA2_BASE_(r2)
/* 8004170C 0003D36C  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 80041710 0003D370  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80041714 0003D374  D0 23 04 C0 */	stfs f1, 0x4c0(r3)
/* 80041718 0003D378  60 00 00 17 */	ori r0, r0, 0x17
/* 8004171C 0003D37C  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 80041720 0003D380  D0 63 04 CC */	stfs f3, 0x4cc(r3)
/* 80041724 0003D384  D0 43 04 D0 */	stfs f2, 0x4d0(r3)
/* 80041728 0003D388  4C 41 13 82 */	cror 2, 1, 2
/* 8004172C 0003D38C  4C 82 00 20 */	bnelr
/* 80041730 0003D390  38 83 05 60 */	addi r4, r3, 0x560
/* 80041734 0003D394  4B FF FA F4 */	b func_80041228
/* 80041738 0003D398  4E 80 00 20 */	blr

.global func_8004173C
func_8004173C:
/* 8004173C 0003D39C  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041740 0003D3A0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80041744 0003D3A4  40 80 00 08 */	bge lbl_8004174C
/* 80041748 0003D3A8  FC 40 00 90 */	fmr f2, f0
lbl_8004174C:
/* 8004174C 0003D3AC  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80041750 0003D3B0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80041754 0003D3B4  40 81 00 08 */	ble lbl_8004175C
/* 80041758 0003D3B8  FC 40 00 90 */	fmr f2, f0
lbl_8004175C:
/* 8004175C 0003D3BC  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 80041760 0003D3C0  C0 02 82 E8 */	lfs f0, lbl_806408E8-_SDA2_BASE_(r2)
/* 80041764 0003D3C4  60 00 00 0F */	ori r0, r0, 0xf
/* 80041768 0003D3C8  90 83 04 C4 */	stw r4, 0x4c4(r3)
/* 8004176C 0003D3CC  54 00 06 B0 */	rlwinm r0, r0, 0, 0x1a, 0x18
/* 80041770 0003D3D0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80041774 0003D3D4  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 80041778 0003D3D8  D0 43 04 CC */	stfs f2, 0x4cc(r3)
/* 8004177C 0003D3DC  D0 23 04 D0 */	stfs f1, 0x4d0(r3)
/* 80041780 0003D3E0  4C 41 13 82 */	cror 2, 1, 2
/* 80041784 0003D3E4  4C 82 00 20 */	bnelr
/* 80041788 0003D3E8  38 83 05 60 */	addi r4, r3, 0x560
/* 8004178C 0003D3EC  4B FF FA 9C */	b func_80041228
/* 80041790 0003D3F0  4E 80 00 20 */	blr

.global func_80041794
func_80041794:
/* 80041794 0003D3F4  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041798 0003D3F8  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004179C 0003D3FC  40 80 00 08 */	bge lbl_800417A4
/* 800417A0 0003D400  FC 40 00 90 */	fmr f2, f0
lbl_800417A4:
/* 800417A4 0003D404  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 800417A8 0003D408  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800417AC 0003D40C  40 81 00 08 */	ble lbl_800417B4
/* 800417B0 0003D410  FC 40 00 90 */	fmr f2, f0
lbl_800417B4:
/* 800417B4 0003D414  C0 02 82 E8 */	lfs f0, lbl_806408E8-_SDA2_BASE_(r2)
/* 800417B8 0003D418  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 800417BC 0003D41C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800417C0 0003D420  90 83 04 D4 */	stw r4, 0x4d4(r3)
/* 800417C4 0003D424  60 00 00 27 */	ori r0, r0, 0x27
/* 800417C8 0003D428  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 800417CC 0003D42C  D0 43 04 CC */	stfs f2, 0x4cc(r3)
/* 800417D0 0003D430  D0 23 04 D0 */	stfs f1, 0x4d0(r3)
/* 800417D4 0003D434  4C 41 13 82 */	cror 2, 1, 2
/* 800417D8 0003D438  4C 82 00 20 */	bnelr
/* 800417DC 0003D43C  38 83 05 60 */	addi r4, r3, 0x560
/* 800417E0 0003D440  4B FF FA 48 */	b func_80041228
/* 800417E4 0003D444  4E 80 00 20 */	blr

.global func_800417E8
func_800417E8:
/* 800417E8 0003D448  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800417EC 0003D44C  7C 08 02 A6 */	mflr r0
/* 800417F0 0003D450  90 01 00 44 */	stw r0, 0x44(r1)
/* 800417F4 0003D454  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 800417F8 0003D458  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 800417FC 0003D45C  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80041800 0003D460  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80041804 0003D464  DB A1 00 10 */	stfd f29, 0x10(r1)
/* 80041808 0003D468  F3 A1 00 18 */	psq_st f29, 24(r1), 0, qr0
/* 8004180C 0003D46C  FF A0 08 90 */	fmr f29, f1
/* 80041810 0003D470  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041814 0003D474  FF C0 10 90 */	fmr f30, f2
/* 80041818 0003D478  FF E0 18 90 */	fmr f31, f3
/* 8004181C 0003D47C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80041820 0003D480  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80041824 0003D484  7C 7F 1B 78 */	mr r31, r3
/* 80041828 0003D488  40 80 00 08 */	bge lbl_80041830
/* 8004182C 0003D48C  FF E0 00 90 */	fmr f31, f0
lbl_80041830:
/* 80041830 0003D490  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80041834 0003D494  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 80041838 0003D498  40 81 00 08 */	ble lbl_80041840
/* 8004183C 0003D49C  FF E0 00 90 */	fmr f31, f0
lbl_80041840:
/* 80041840 0003D4A0  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 80041844 0003D4A4  60 00 00 47 */	ori r0, r0, 0x47
/* 80041848 0003D4A8  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8004184C 0003D4AC  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 80041850 0003D4B0  38 63 01 48 */	addi r3, r3, 0x148
/* 80041854 0003D4B4  48 00 EB 35 */	bl func_80050388
/* 80041858 0003D4B8  C0 02 82 E8 */	lfs f0, lbl_806408E8-_SDA2_BASE_(r2)
/* 8004185C 0003D4BC  D3 BF 04 C8 */	stfs f29, 0x4c8(r31)
/* 80041860 0003D4C0  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 80041864 0003D4C4  D3 FF 04 CC */	stfs f31, 0x4cc(r31)
/* 80041868 0003D4C8  D3 DF 04 D0 */	stfs f30, 0x4d0(r31)
/* 8004186C 0003D4CC  4C 41 13 82 */	cror 2, 1, 2
/* 80041870 0003D4D0  40 82 00 10 */	bne lbl_80041880
/* 80041874 0003D4D4  7F E3 FB 78 */	mr r3, r31
/* 80041878 0003D4D8  38 9F 05 60 */	addi r4, r31, 0x560
/* 8004187C 0003D4DC  4B FF F9 AD */	bl func_80041228
lbl_80041880:
/* 80041880 0003D4E0  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80041884 0003D4E4  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80041888 0003D4E8  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 8004188C 0003D4EC  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80041890 0003D4F0  E3 A1 00 18 */	psq_l f29, 24(r1), 0, qr0
/* 80041894 0003D4F4  CB A1 00 10 */	lfd f29, 0x10(r1)
/* 80041898 0003D4F8  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004189C 0003D4FC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800418A0 0003D500  7C 08 03 A6 */	mtlr r0
/* 800418A4 0003D504  38 21 00 40 */	addi r1, r1, 0x40
/* 800418A8 0003D508  4E 80 00 20 */	blr

.global func_800418AC
func_800418AC:
/* 800418AC 0003D50C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800418B0 0003D510  7C 08 02 A6 */	mflr r0
/* 800418B4 0003D514  90 01 00 14 */	stw r0, 0x14(r1)
/* 800418B8 0003D518  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 800418BC 0003D51C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800418C0 0003D520  93 C1 00 08 */	stw r30, 8(r1)
/* 800418C4 0003D524  7C 7E 1B 78 */	mr r30, r3
/* 800418C8 0003D528  41 82 00 20 */	beq lbl_800418E8
/* 800418CC 0003D52C  3B E0 00 00 */	li r31, 0
/* 800418D0 0003D530  38 80 00 00 */	li r4, 0
/* 800418D4 0003D534  93 E3 04 BC */	stw r31, 0x4bc(r3)
/* 800418D8 0003D538  38 63 04 E8 */	addi r3, r3, 0x4e8
/* 800418DC 0003D53C  4B FF F2 C9 */	bl func_80040BA4
/* 800418E0 0003D540  9B FE 00 02 */	stb r31, 2(r30)
/* 800418E4 0003D544  48 00 00 54 */	b lbl_80041938
lbl_800418E8:
/* 800418E8 0003D548  54 80 07 7B */	rlwinm. r0, r4, 0, 0x1d, 0x1d
/* 800418EC 0003D54C  41 82 00 10 */	beq lbl_800418FC
/* 800418F0 0003D550  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 800418F4 0003D554  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 800418F8 0003D558  90 03 04 BC */	stw r0, 0x4bc(r3)
lbl_800418FC:
/* 800418FC 0003D55C  54 80 07 BD */	rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 80041900 0003D560  41 82 00 10 */	beq lbl_80041910
/* 80041904 0003D564  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 80041908 0003D568  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8004190C 0003D56C  90 03 04 BC */	stw r0, 0x4bc(r3)
lbl_80041910:
/* 80041910 0003D570  54 80 07 39 */	rlwinm. r0, r4, 0, 0x1c, 0x1c
/* 80041914 0003D574  41 82 00 10 */	beq lbl_80041924
/* 80041918 0003D578  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 8004191C 0003D57C  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 80041920 0003D580  90 03 04 BC */	stw r0, 0x4bc(r3)
lbl_80041924:
/* 80041924 0003D584  54 80 06 F7 */	rlwinm. r0, r4, 0, 0x1b, 0x1b
/* 80041928 0003D588  41 82 00 10 */	beq lbl_80041938
/* 8004192C 0003D58C  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 80041930 0003D590  54 00 06 B0 */	rlwinm r0, r0, 0, 0x1a, 0x18
/* 80041934 0003D594  90 03 04 BC */	stw r0, 0x4bc(r3)
lbl_80041938:
/* 80041938 0003D598  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004193C 0003D59C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80041940 0003D5A0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80041944 0003D5A4  7C 08 03 A6 */	mtlr r0
/* 80041948 0003D5A8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004194C 0003D5AC  4E 80 00 20 */	blr

.global func_80041950
func_80041950:
/* 80041950 0003D5B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80041954 0003D5B4  7C 08 02 A6 */	mflr r0
/* 80041958 0003D5B8  7C 87 23 78 */	mr r7, r4
/* 8004195C 0003D5BC  38 83 04 C8 */	addi r4, r3, 0x4c8
/* 80041960 0003D5C0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80041964 0003D5C4  7C 86 23 78 */	mr r6, r4
/* 80041968 0003D5C8  38 A1 00 08 */	addi r5, r1, 8
/* 8004196C 0003D5CC  38 63 01 90 */	addi r3, r3, 0x190
/* 80041970 0003D5D0  D0 21 00 08 */	stfs f1, 8(r1)
/* 80041974 0003D5D4  FC 20 10 90 */	fmr f1, f2
/* 80041978 0003D5D8  48 00 E9 C5 */	bl func_8005033C
/* 8004197C 0003D5DC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80041980 0003D5E0  7C 08 03 A6 */	mtlr r0
/* 80041984 0003D5E4  38 21 00 10 */	addi r1, r1, 0x10
/* 80041988 0003D5E8  4E 80 00 20 */	blr

.global func_8004198C
func_8004198C:
/* 8004198C 0003D5EC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80041990 0003D5F0  7C 08 02 A6 */	mflr r0
/* 80041994 0003D5F4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80041998 0003D5F8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004199C 0003D5FC  7C 7F 1B 78 */	mr r31, r3
/* 800419A0 0003D600  38 63 04 E8 */	addi r3, r3, 0x4e8
/* 800419A4 0003D604  4B FF F1 3D */	bl func_80040AE0
/* 800419A8 0003D608  38 00 00 00 */	li r0, 0
/* 800419AC 0003D60C  38 7F 00 4C */	addi r3, r31, 0x4c
/* 800419B0 0003D610  90 1F 04 BC */	stw r0, 0x4bc(r31)
/* 800419B4 0003D614  48 00 E9 D5 */	bl func_80050388
/* 800419B8 0003D618  38 7F 00 70 */	addi r3, r31, 0x70
/* 800419BC 0003D61C  48 00 E9 CD */	bl func_80050388
/* 800419C0 0003D620  38 7F 00 94 */	addi r3, r31, 0x94
/* 800419C4 0003D624  48 00 E9 C5 */	bl func_80050388
/* 800419C8 0003D628  38 00 00 01 */	li r0, 1
/* 800419CC 0003D62C  98 1F 00 01 */	stb r0, 1(r31)
/* 800419D0 0003D630  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800419D4 0003D634  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800419D8 0003D638  7C 08 03 A6 */	mtlr r0
/* 800419DC 0003D63C  38 21 00 10 */	addi r1, r1, 0x10
/* 800419E0 0003D640  4E 80 00 20 */	blr

.global func_800419E4
func_800419E4:
/* 800419E4 0003D644  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800419E8 0003D648  7C 08 02 A6 */	mflr r0
/* 800419EC 0003D64C  2C 04 00 00 */	cmpwi r4, 0
/* 800419F0 0003D650  90 01 00 34 */	stw r0, 0x34(r1)
/* 800419F4 0003D654  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 800419F8 0003D658  93 C1 00 28 */	stw r30, 0x28(r1)
/* 800419FC 0003D65C  7C 7E 1B 78 */	mr r30, r3
/* 80041A00 0003D660  40 82 00 3C */	bne lbl_80041A3C
/* 80041A04 0003D664  48 00 0B 8D */	bl func_80042590
/* 80041A08 0003D668  7C 7F 1B 78 */	mr r31, r3
/* 80041A0C 0003D66C  7F C3 F3 78 */	mr r3, r30
/* 80041A10 0003D670  4B FF F7 F5 */	bl func_80041204
/* 80041A14 0003D674  7F E4 FB 78 */	mr r4, r31
/* 80041A18 0003D678  38 A1 00 08 */	addi r5, r1, 8
/* 80041A1C 0003D67C  48 23 B2 CD */	bl func_8027CCE8
/* 80041A20 0003D680  C0 41 00 08 */	lfs f2, 8(r1)
/* 80041A24 0003D684  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 80041A28 0003D688  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80041A2C 0003D68C  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 80041A30 0003D690  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80041A34 0003D694  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80041A38 0003D698  48 00 00 1C */	b lbl_80041A54
lbl_80041A3C:
/* 80041A3C 0003D69C  C0 04 00 00 */	lfs f0, 0(r4)
/* 80041A40 0003D6A0  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80041A44 0003D6A4  C0 04 00 04 */	lfs f0, 4(r4)
/* 80041A48 0003D6A8  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80041A4C 0003D6AC  C0 04 00 08 */	lfs f0, 8(r4)
/* 80041A50 0003D6B0  D0 01 00 1C */	stfs f0, 0x1c(r1)
lbl_80041A54:
/* 80041A54 0003D6B4  38 7E 04 E8 */	addi r3, r30, 0x4e8
/* 80041A58 0003D6B8  38 81 00 14 */	addi r4, r1, 0x14
/* 80041A5C 0003D6BC  4B FF F0 B5 */	bl func_80040B10
/* 80041A60 0003D6C0  38 60 00 00 */	li r3, 0
/* 80041A64 0003D6C4  38 00 00 01 */	li r0, 1
/* 80041A68 0003D6C8  90 7E 04 BC */	stw r3, 0x4bc(r30)
/* 80041A6C 0003D6CC  98 1E 00 01 */	stb r0, 1(r30)
/* 80041A70 0003D6D0  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80041A74 0003D6D4  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80041A78 0003D6D8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80041A7C 0003D6DC  7C 08 03 A6 */	mtlr r0
/* 80041A80 0003D6E0  38 21 00 30 */	addi r1, r1, 0x30
/* 80041A84 0003D6E4  4E 80 00 20 */	blr

.global func_80041A88
func_80041A88:
/* 80041A88 0003D6E8  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80041A8C 0003D6EC  7C 08 02 A6 */	mflr r0
/* 80041A90 0003D6F0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80041A94 0003D6F4  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80041A98 0003D6F8  7C 7F 1B 78 */	mr r31, r3
/* 80041A9C 0003D6FC  38 61 00 08 */	addi r3, r1, 8
/* 80041AA0 0003D700  7F E4 FB 78 */	mr r4, r31
/* 80041AA4 0003D704  48 00 00 B5 */	bl func_80041B58
/* 80041AA8 0003D708  C0 41 00 08 */	lfs f2, 8(r1)
/* 80041AAC 0003D70C  7F E3 FB 78 */	mr r3, r31
/* 80041AB0 0003D710  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 80041AB4 0003D714  38 81 00 14 */	addi r4, r1, 0x14
/* 80041AB8 0003D718  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80041ABC 0003D71C  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 80041AC0 0003D720  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80041AC4 0003D724  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80041AC8 0003D728  4B FF FF 1D */	bl func_800419E4
/* 80041ACC 0003D72C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80041AD0 0003D730  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80041AD4 0003D734  7C 08 03 A6 */	mtlr r0
/* 80041AD8 0003D738  38 21 00 30 */	addi r1, r1, 0x30
/* 80041ADC 0003D73C  4E 80 00 20 */	blr

.global func_80041AE0
func_80041AE0:
/* 80041AE0 0003D740  7C A6 2B 78 */	mr r6, r5
/* 80041AE4 0003D744  38 A3 06 E0 */	addi r5, r3, 0x6e0
/* 80041AE8 0003D748  38 E0 00 00 */	li r7, 0
/* 80041AEC 0003D74C  39 00 00 00 */	li r8, 0
/* 80041AF0 0003D750  38 63 01 B4 */	addi r3, r3, 0x1b4
/* 80041AF4 0003D754  48 00 F3 88 */	b func_80050E7C

.global func_80041AF8
func_80041AF8:
/* 80041AF8 0003D758  7C A6 2B 78 */	mr r6, r5
/* 80041AFC 0003D75C  38 A3 06 E4 */	addi r5, r3, 0x6e4
/* 80041B00 0003D760  38 E0 00 00 */	li r7, 0
/* 80041B04 0003D764  39 00 00 00 */	li r8, 0
/* 80041B08 0003D768  38 63 02 14 */	addi r3, r3, 0x214
/* 80041B0C 0003D76C  48 00 F3 70 */	b func_80050E7C

.global func_80041B10
func_80041B10:
/* 80041B10 0003D770  7C A6 2B 78 */	mr r6, r5
/* 80041B14 0003D774  38 A3 06 EC */	addi r5, r3, 0x6ec
/* 80041B18 0003D778  38 E0 00 00 */	li r7, 0
/* 80041B1C 0003D77C  39 00 00 00 */	li r8, 0
/* 80041B20 0003D780  38 63 02 D4 */	addi r3, r3, 0x2d4
/* 80041B24 0003D784  48 00 F3 58 */	b func_80050E7C

.global func_80041B28
func_80041B28:
/* 80041B28 0003D788  7C A6 2B 78 */	mr r6, r5
/* 80041B2C 0003D78C  38 A3 06 F0 */	addi r5, r3, 0x6f0
/* 80041B30 0003D790  38 E0 00 00 */	li r7, 0
/* 80041B34 0003D794  39 00 00 00 */	li r8, 0
/* 80041B38 0003D798  38 63 03 34 */	addi r3, r3, 0x334
/* 80041B3C 0003D79C  48 00 F3 40 */	b func_80050E7C

.global func_80041B40
func_80041B40:
/* 80041B40 0003D7A0  7C A6 2B 78 */	mr r6, r5
/* 80041B44 0003D7A4  38 A3 06 E8 */	addi r5, r3, 0x6e8
/* 80041B48 0003D7A8  38 E0 00 00 */	li r7, 0
/* 80041B4C 0003D7AC  39 00 00 00 */	li r8, 0
/* 80041B50 0003D7B0  38 63 02 74 */	addi r3, r3, 0x274
/* 80041B54 0003D7B4  48 00 F3 28 */	b func_80050E7C

.global func_80041B58
func_80041B58:
/* 80041B58 0003D7B8  94 21 FF 30 */	stwu r1, -0xd0(r1)
/* 80041B5C 0003D7BC  7C 08 02 A6 */	mflr r0
/* 80041B60 0003D7C0  90 01 00 D4 */	stw r0, 0xd4(r1)
/* 80041B64 0003D7C4  DB E1 00 C0 */	stfd f31, 0xc0(r1)
/* 80041B68 0003D7C8  F3 E1 00 C8 */	psq_st f31, 200(r1), 0, qr0
/* 80041B6C 0003D7CC  DB C1 00 B0 */	stfd f30, 0xb0(r1)
/* 80041B70 0003D7D0  F3 C1 00 B8 */	psq_st f30, 184(r1), 0, qr0
/* 80041B74 0003D7D4  DB A1 00 A0 */	stfd f29, 0xa0(r1)
/* 80041B78 0003D7D8  F3 A1 00 A8 */	psq_st f29, 168(r1), 0, qr0
/* 80041B7C 0003D7DC  DB 81 00 90 */	stfd f28, 0x90(r1)
/* 80041B80 0003D7E0  F3 81 00 98 */	psq_st f28, 152(r1), 0, qr0
/* 80041B84 0003D7E4  DB 61 00 80 */	stfd f27, 0x80(r1)
/* 80041B88 0003D7E8  F3 61 00 88 */	psq_st f27, 136(r1), 0, qr0
/* 80041B8C 0003D7EC  FF A0 08 90 */	fmr f29, f1
/* 80041B90 0003D7F0  C0 82 82 B0 */	lfs f4, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041B94 0003D7F4  FF C0 10 90 */	fmr f30, f2
/* 80041B98 0003D7F8  93 E1 00 7C */	stw r31, 0x7c(r1)
/* 80041B9C 0003D7FC  FF E0 18 90 */	fmr f31, f3
/* 80041BA0 0003D800  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80041BA4 0003D804  93 C1 00 78 */	stw r30, 0x78(r1)
/* 80041BA8 0003D808  93 A1 00 74 */	stw r29, 0x74(r1)
/* 80041BAC 0003D80C  7C 9D 23 78 */	mr r29, r4
/* 80041BB0 0003D810  93 81 00 70 */	stw r28, 0x70(r1)
/* 80041BB4 0003D814  7C 7C 1B 78 */	mr r28, r3
/* 80041BB8 0003D818  D0 81 00 60 */	stfs f4, 0x60(r1)
/* 80041BBC 0003D81C  D0 81 00 64 */	stfs f4, 0x64(r1)
/* 80041BC0 0003D820  D0 01 00 68 */	stfs f0, 0x68(r1)
/* 80041BC4 0003D824  80 04 06 D0 */	lwz r0, 0x6d0(r4)
/* 80041BC8 0003D828  2C 00 00 00 */	cmpwi r0, 0
/* 80041BCC 0003D82C  41 82 00 0C */	beq lbl_80041BD8
/* 80041BD0 0003D830  3B C4 06 50 */	addi r30, r4, 0x650
/* 80041BD4 0003D834  48 00 00 08 */	b lbl_80041BDC
lbl_80041BD8:
/* 80041BD8 0003D838  3B C4 05 60 */	addi r30, r4, 0x560
lbl_80041BDC:
/* 80041BDC 0003D83C  7F C3 F3 78 */	mr r3, r30
/* 80041BE0 0003D840  38 80 00 00 */	li r4, 0
/* 80041BE4 0003D844  4B FF EF 99 */	bl func_80040B7C
/* 80041BE8 0003D848  2C 03 00 00 */	cmpwi r3, 0
/* 80041BEC 0003D84C  7C 7F 1B 78 */	mr r31, r3
/* 80041BF0 0003D850  41 82 00 18 */	beq lbl_80041C08
/* 80041BF4 0003D854  7F E4 FB 78 */	mr r4, r31
/* 80041BF8 0003D858  38 61 00 44 */	addi r3, r1, 0x44
/* 80041BFC 0003D85C  4B FF 6E 99 */	bl func_80038A94
/* 80041C00 0003D860  C3 61 00 48 */	lfs f27, 0x48(r1)
/* 80041C04 0003D864  48 00 00 08 */	b lbl_80041C0C
lbl_80041C08:
/* 80041C08 0003D868  C3 62 82 B0 */	lfs f27, lbl_806408B0-_SDA2_BASE_(r2)
lbl_80041C0C:
/* 80041C0C 0003D86C  FC 20 D8 90 */	fmr f1, f27
/* 80041C10 0003D870  48 18 8A A5 */	bl __fpclassifyf
/* 80041C14 0003D874  2C 03 00 02 */	cmpwi r3, 2
/* 80041C18 0003D878  40 82 00 08 */	bne lbl_80041C20
/* 80041C1C 0003D87C  C3 62 82 B0 */	lfs f27, lbl_806408B0-_SDA2_BASE_(r2)
lbl_80041C20:
/* 80041C20 0003D880  FC 20 D8 90 */	fmr f1, f27
/* 80041C24 0003D884  48 18 8A 91 */	bl __fpclassifyf
/* 80041C28 0003D888  2C 03 00 01 */	cmpwi r3, 1
/* 80041C2C 0003D88C  40 82 00 08 */	bne lbl_80041C34
/* 80041C30 0003D890  C3 62 82 B0 */	lfs f27, lbl_806408B0-_SDA2_BASE_(r2)
lbl_80041C34:
/* 80041C34 0003D894  C0 22 82 EC */	lfs f1, lbl_806408EC-_SDA2_BASE_(r2)
/* 80041C38 0003D898  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041C3C 0003D89C  48 00 00 08 */	b lbl_80041C44
lbl_80041C40:
/* 80041C40 0003D8A0  EF 7B 08 2A */	fadds f27, f27, f1
lbl_80041C44:
/* 80041C44 0003D8A4  FC 1B 00 40 */	fcmpo cr0, f27, f0
/* 80041C48 0003D8A8  41 80 FF F8 */	blt lbl_80041C40
/* 80041C4C 0003D8AC  C0 02 82 EC */	lfs f0, lbl_806408EC-_SDA2_BASE_(r2)
/* 80041C50 0003D8B0  48 00 00 08 */	b lbl_80041C58
lbl_80041C54:
/* 80041C54 0003D8B4  EF 7B 00 28 */	fsubs f27, f27, f0
lbl_80041C58:
/* 80041C58 0003D8B8  FC 1B 00 40 */	fcmpo cr0, f27, f0
/* 80041C5C 0003D8BC  41 81 FF F8 */	bgt lbl_80041C54
/* 80041C60 0003D8C0  C0 02 82 F0 */	lfs f0, lbl_806408F0-_SDA2_BASE_(r2)
/* 80041C64 0003D8C4  FC 1B 00 40 */	fcmpo cr0, f27, f0
/* 80041C68 0003D8C8  4C 40 13 82 */	cror 2, 0, 2
/* 80041C6C 0003D8CC  41 82 00 14 */	beq lbl_80041C80
/* 80041C70 0003D8D0  C0 02 82 F4 */	lfs f0, lbl_806408F4-_SDA2_BASE_(r2)
/* 80041C74 0003D8D4  FC 1B 00 40 */	fcmpo cr0, f27, f0
/* 80041C78 0003D8D8  4C 41 13 82 */	cror 2, 1, 2
/* 80041C7C 0003D8DC  40 82 00 0C */	bne lbl_80041C88
lbl_80041C80:
/* 80041C80 0003D8E0  EF BB E8 28 */	fsubs f29, f27, f29
/* 80041C84 0003D8E4  48 00 00 90 */	b lbl_80041D14
lbl_80041C88:
/* 80041C88 0003D8E8  C0 02 82 F8 */	lfs f0, lbl_806408F8-_SDA2_BASE_(r2)
/* 80041C8C 0003D8EC  FC 00 D8 40 */	fcmpo cr0, f0, f27
/* 80041C90 0003D8F0  4C 40 13 82 */	cror 2, 0, 2
/* 80041C94 0003D8F4  40 82 00 1C */	bne lbl_80041CB0
/* 80041C98 0003D8F8  C0 02 82 FC */	lfs f0, lbl_806408FC-_SDA2_BASE_(r2)
/* 80041C9C 0003D8FC  FC 1B 00 40 */	fcmpo cr0, f27, f0
/* 80041CA0 0003D900  4C 40 13 82 */	cror 2, 0, 2
/* 80041CA4 0003D904  40 82 00 0C */	bne lbl_80041CB0
/* 80041CA8 0003D908  EF BB E8 2A */	fadds f29, f27, f29
/* 80041CAC 0003D90C  48 00 00 68 */	b lbl_80041D14
lbl_80041CB0:
/* 80041CB0 0003D910  C0 02 82 F0 */	lfs f0, lbl_806408F0-_SDA2_BASE_(r2)
/* 80041CB4 0003D914  FC 00 D8 40 */	fcmpo cr0, f0, f27
/* 80041CB8 0003D918  40 80 00 38 */	bge lbl_80041CF0
/* 80041CBC 0003D91C  C0 02 82 F8 */	lfs f0, lbl_806408F8-_SDA2_BASE_(r2)
/* 80041CC0 0003D920  FC 1B 00 40 */	fcmpo cr0, f27, f0
/* 80041CC4 0003D924  40 80 00 2C */	bge lbl_80041CF0
/* 80041CC8 0003D928  7F A3 EB 78 */	mr r3, r29
/* 80041CCC 0003D92C  48 00 08 C5 */	bl func_80042590
/* 80041CD0 0003D930  C0 23 00 08 */	lfs f1, 8(r3)
/* 80041CD4 0003D934  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041CD8 0003D938  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041CDC 0003D93C  40 80 00 0C */	bge lbl_80041CE8
/* 80041CE0 0003D940  EF BB E8 28 */	fsubs f29, f27, f29
/* 80041CE4 0003D944  48 00 00 30 */	b lbl_80041D14
lbl_80041CE8:
/* 80041CE8 0003D948  EF BB E8 2A */	fadds f29, f27, f29
/* 80041CEC 0003D94C  48 00 00 28 */	b lbl_80041D14
lbl_80041CF0:
/* 80041CF0 0003D950  7F A3 EB 78 */	mr r3, r29
/* 80041CF4 0003D954  48 00 08 9D */	bl func_80042590
/* 80041CF8 0003D958  C0 23 00 08 */	lfs f1, 8(r3)
/* 80041CFC 0003D95C  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041D00 0003D960  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041D04 0003D964  40 80 00 0C */	bge lbl_80041D10
/* 80041D08 0003D968  EF BB E8 2A */	fadds f29, f27, f29
/* 80041D0C 0003D96C  48 00 00 08 */	b lbl_80041D14
lbl_80041D10:
/* 80041D10 0003D970  EF BB E8 28 */	fsubs f29, f27, f29
lbl_80041D14:
/* 80041D14 0003D974  2C 1F 00 00 */	cmpwi r31, 0
/* 80041D18 0003D978  41 82 01 30 */	beq lbl_80041E48
/* 80041D1C 0003D97C  7F C3 F3 78 */	mr r3, r30
/* 80041D20 0003D980  38 80 00 01 */	li r4, 1
/* 80041D24 0003D984  4B FF EE 59 */	bl func_80040B7C
/* 80041D28 0003D988  2C 03 00 00 */	cmpwi r3, 0
/* 80041D2C 0003D98C  7C 7E 1B 78 */	mr r30, r3
/* 80041D30 0003D990  41 82 00 0C */	beq lbl_80041D3C
/* 80041D34 0003D994  7C 03 F8 40 */	cmplw r3, r31
/* 80041D38 0003D998  40 82 00 6C */	bne lbl_80041DA4
lbl_80041D3C:
/* 80041D3C 0003D99C  7F E3 FB 78 */	mr r3, r31
/* 80041D40 0003D9A0  38 80 00 01 */	li r4, 1
/* 80041D44 0003D9A4  4B FF 88 A9 */	bl func_8003A5EC
/* 80041D48 0003D9A8  C0 02 83 00 */	lfs f0, lbl_80640900-_SDA2_BASE_(r2)
/* 80041D4C 0003D9AC  FF 60 08 90 */	fmr f27, f1
/* 80041D50 0003D9B0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041D54 0003D9B4  40 80 00 08 */	bge lbl_80041D5C
/* 80041D58 0003D9B8  FF 60 00 90 */	fmr f27, f0
lbl_80041D5C:
/* 80041D5C 0003D9BC  C8 22 83 08 */	lfd f1, lbl_80640908-_SDA2_BASE_(r2)
/* 80041D60 0003D9C0  48 19 27 FD */	bl tan
/* 80041D64 0003D9C4  FC 00 08 18 */	frsp f0, f1
/* 80041D68 0003D9C8  7F E3 FB 78 */	mr r3, r31
/* 80041D6C 0003D9CC  EF 7B 00 24 */	fdivs f27, f27, f0
/* 80041D70 0003D9D0  4B FF 79 65 */	bl func_800396D4
/* 80041D74 0003D9D4  2C 03 00 01 */	cmpwi r3, 1
/* 80041D78 0003D9D8  41 81 00 14 */	bgt lbl_80041D8C
/* 80041D7C 0003D9DC  C0 02 83 10 */	lfs f0, lbl_80640910-_SDA2_BASE_(r2)
/* 80041D80 0003D9E0  EC 00 06 F2 */	fmuls f0, f0, f27
/* 80041D84 0003D9E4  EF FF 00 32 */	fmuls f31, f31, f0
/* 80041D88 0003D9E8  48 00 00 C8 */	b lbl_80041E50
lbl_80041D8C:
/* 80041D8C 0003D9EC  C0 22 83 18 */	lfs f1, lbl_80640918-_SDA2_BASE_(r2)
/* 80041D90 0003D9F0  C0 02 83 14 */	lfs f0, lbl_80640914-_SDA2_BASE_(r2)
/* 80041D94 0003D9F4  EC 21 06 F2 */	fmuls f1, f1, f27
/* 80041D98 0003D9F8  EC 00 08 2A */	fadds f0, f0, f1
/* 80041D9C 0003D9FC  EF FF 00 32 */	fmuls f31, f31, f0
/* 80041DA0 0003DA00  48 00 00 B0 */	b lbl_80041E50
lbl_80041DA4:
/* 80041DA4 0003DA04  7F C4 F3 78 */	mr r4, r30
/* 80041DA8 0003DA08  38 61 00 2C */	addi r3, r1, 0x2c
/* 80041DAC 0003DA0C  4B FF 6A 35 */	bl func_800387E0
/* 80041DB0 0003DA10  C3 81 00 2C */	lfs f28, 0x2c(r1)
/* 80041DB4 0003DA14  7F E4 FB 78 */	mr r4, r31
/* 80041DB8 0003DA18  38 61 00 38 */	addi r3, r1, 0x38
/* 80041DBC 0003DA1C  4B FF 6A 25 */	bl func_800387E0
/* 80041DC0 0003DA20  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 80041DC4 0003DA24  FC 00 E0 40 */	fcmpo cr0, f0, f28
/* 80041DC8 0003DA28  40 80 00 18 */	bge lbl_80041DE0
/* 80041DCC 0003DA2C  7F E3 FB 78 */	mr r3, r31
/* 80041DD0 0003DA30  38 80 00 01 */	li r4, 1
/* 80041DD4 0003DA34  4B FF 88 19 */	bl func_8003A5EC
/* 80041DD8 0003DA38  FF 80 08 90 */	fmr f28, f1
/* 80041DDC 0003DA3C  48 00 00 14 */	b lbl_80041DF0
lbl_80041DE0:
/* 80041DE0 0003DA40  7F C3 F3 78 */	mr r3, r30
/* 80041DE4 0003DA44  38 80 00 01 */	li r4, 1
/* 80041DE8 0003DA48  4B FF 88 05 */	bl func_8003A5EC
/* 80041DEC 0003DA4C  FF 80 08 90 */	fmr f28, f1
lbl_80041DF0:
/* 80041DF0 0003DA50  C8 22 83 20 */	lfd f1, lbl_80640920-_SDA2_BASE_(r2)
/* 80041DF4 0003DA54  48 19 27 69 */	bl tan
/* 80041DF8 0003DA58  FC 00 08 18 */	frsp f0, f1
/* 80041DFC 0003DA5C  7F C4 F3 78 */	mr r4, r30
/* 80041E00 0003DA60  38 61 00 14 */	addi r3, r1, 0x14
/* 80041E04 0003DA64  EF 7C 00 24 */	fdivs f27, f28, f0
/* 80041E08 0003DA68  4B FF 69 D9 */	bl func_800387E0
/* 80041E0C 0003DA6C  C3 81 00 14 */	lfs f28, 0x14(r1)
/* 80041E10 0003DA70  7F E4 FB 78 */	mr r4, r31
/* 80041E14 0003DA74  38 61 00 20 */	addi r3, r1, 0x20
/* 80041E18 0003DA78  4B FF 69 C9 */	bl func_800387E0
/* 80041E1C 0003DA7C  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80041E20 0003DA80  C0 22 83 18 */	lfs f1, lbl_80640918-_SDA2_BASE_(r2)
/* 80041E24 0003DA84  EC 40 E0 28 */	fsubs f2, f0, f28
/* 80041E28 0003DA88  C0 02 82 B8 */	lfs f0, lbl_806408B8-_SDA2_BASE_(r2)
/* 80041E2C 0003DA8C  EC 21 06 F2 */	fmuls f1, f1, f27
/* 80041E30 0003DA90  FC 40 12 10 */	fabs f2, f2
/* 80041E34 0003DA94  FC 40 10 18 */	frsp f2, f2
/* 80041E38 0003DA98  EC 00 00 B2 */	fmuls f0, f0, f2
/* 80041E3C 0003DA9C  EC 01 00 2A */	fadds f0, f1, f0
/* 80041E40 0003DAA0  EF FF 00 32 */	fmuls f31, f31, f0
/* 80041E44 0003DAA4  48 00 00 0C */	b lbl_80041E50
lbl_80041E48:
/* 80041E48 0003DAA8  C0 02 83 28 */	lfs f0, lbl_80640928-_SDA2_BASE_(r2)
/* 80041E4C 0003DAAC  EF E0 07 F2 */	fmuls f31, f0, f31
lbl_80041E50:
/* 80041E50 0003DAB0  FC 20 F0 50 */	fneg f1, f30
/* 80041E54 0003DAB4  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041E58 0003DAB8  D3 A1 00 0C */	stfs f29, 0xc(r1)
/* 80041E5C 0003DABC  38 61 00 50 */	addi r3, r1, 0x50
/* 80041E60 0003DAC0  38 81 00 08 */	addi r4, r1, 8
/* 80041E64 0003DAC4  D0 21 00 08 */	stfs f1, 8(r1)
/* 80041E68 0003DAC8  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80041E6C 0003DACC  48 1E 18 55 */	bl func_802236C0
/* 80041E70 0003DAD0  38 61 00 60 */	addi r3, r1, 0x60
/* 80041E74 0003DAD4  38 81 00 50 */	addi r4, r1, 0x50
/* 80041E78 0003DAD8  48 1E 1B 95 */	bl func_80223A0C
/* 80041E7C 0003DADC  FC 20 F8 90 */	fmr f1, f31
/* 80041E80 0003DAE0  7F 84 E3 78 */	mr r4, r28
/* 80041E84 0003DAE4  38 61 00 60 */	addi r3, r1, 0x60
/* 80041E88 0003DAE8  48 23 AE 85 */	bl func_8027CD0C
/* 80041E8C 0003DAEC  E3 E1 00 C8 */	psq_l f31, 200(r1), 0, qr0
/* 80041E90 0003DAF0  CB E1 00 C0 */	lfd f31, 0xc0(r1)
/* 80041E94 0003DAF4  E3 C1 00 B8 */	psq_l f30, 184(r1), 0, qr0
/* 80041E98 0003DAF8  CB C1 00 B0 */	lfd f30, 0xb0(r1)
/* 80041E9C 0003DAFC  E3 A1 00 A8 */	psq_l f29, 168(r1), 0, qr0
/* 80041EA0 0003DB00  CB A1 00 A0 */	lfd f29, 0xa0(r1)
/* 80041EA4 0003DB04  E3 81 00 98 */	psq_l f28, 152(r1), 0, qr0
/* 80041EA8 0003DB08  CB 81 00 90 */	lfd f28, 0x90(r1)
/* 80041EAC 0003DB0C  E3 61 00 88 */	psq_l f27, 136(r1), 0, qr0
/* 80041EB0 0003DB10  CB 61 00 80 */	lfd f27, 0x80(r1)
/* 80041EB4 0003DB14  83 E1 00 7C */	lwz r31, 0x7c(r1)
/* 80041EB8 0003DB18  83 C1 00 78 */	lwz r30, 0x78(r1)
/* 80041EBC 0003DB1C  83 A1 00 74 */	lwz r29, 0x74(r1)
/* 80041EC0 0003DB20  80 01 00 D4 */	lwz r0, 0xd4(r1)
/* 80041EC4 0003DB24  83 81 00 70 */	lwz r28, 0x70(r1)
/* 80041EC8 0003DB28  7C 08 03 A6 */	mtlr r0
/* 80041ECC 0003DB2C  38 21 00 D0 */	addi r1, r1, 0xd0
/* 80041ED0 0003DB30  4E 80 00 20 */	blr

.global func_80041ED4
func_80041ED4:
/* 80041ED4 0003DB34  94 21 FF 50 */	stwu r1, -0xb0(r1)
/* 80041ED8 0003DB38  7C 08 02 A6 */	mflr r0
/* 80041EDC 0003DB3C  90 01 00 B4 */	stw r0, 0xb4(r1)
/* 80041EE0 0003DB40  DB E1 00 A0 */	stfd f31, 0xa0(r1)
/* 80041EE4 0003DB44  F3 E1 00 A8 */	psq_st f31, 168(r1), 0, qr0
/* 80041EE8 0003DB48  DB C1 00 90 */	stfd f30, 0x90(r1)
/* 80041EEC 0003DB4C  F3 C1 00 98 */	psq_st f30, 152(r1), 0, qr0
/* 80041EF0 0003DB50  DB A1 00 80 */	stfd f29, 0x80(r1)
/* 80041EF4 0003DB54  F3 A1 00 88 */	psq_st f29, 136(r1), 0, qr0
/* 80041EF8 0003DB58  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041EFC 0003DB5C  93 E1 00 7C */	stw r31, 0x7c(r1)
/* 80041F00 0003DB60  7C 9F 23 78 */	mr r31, r4
/* 80041F04 0003DB64  93 C1 00 78 */	stw r30, 0x78(r1)
/* 80041F08 0003DB68  7C 7E 1B 78 */	mr r30, r3
/* 80041F0C 0003DB6C  C0 23 00 00 */	lfs f1, 0(r3)
/* 80041F10 0003DB70  D0 21 00 68 */	stfs f1, 0x68(r1)
/* 80041F14 0003DB74  C0 23 00 04 */	lfs f1, 4(r3)
/* 80041F18 0003DB78  D0 21 00 6C */	stfs f1, 0x6c(r1)
/* 80041F1C 0003DB7C  C0 23 00 08 */	lfs f1, 8(r3)
/* 80041F20 0003DB80  38 61 00 68 */	addi r3, r1, 0x68
/* 80041F24 0003DB84  D0 21 00 70 */	stfs f1, 0x70(r1)
/* 80041F28 0003DB88  D0 01 00 6C */	stfs f0, 0x6c(r1)
/* 80041F2C 0003DB8C  48 23 AE 59 */	bl func_8027CD84
/* 80041F30 0003DB90  C0 02 83 2C */	lfs f0, lbl_8064092C-_SDA2_BASE_(r2)
/* 80041F34 0003DB94  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80041F38 0003DB98  40 81 01 40 */	ble lbl_80042078
/* 80041F3C 0003DB9C  7F E3 FB 78 */	mr r3, r31
/* 80041F40 0003DBA0  38 81 00 68 */	addi r4, r1, 0x68
/* 80041F44 0003DBA4  38 A1 00 50 */	addi r5, r1, 0x50
/* 80041F48 0003DBA8  48 23 AD A1 */	bl func_8027CCE8
/* 80041F4C 0003DBAC  C0 41 00 50 */	lfs f2, 0x50(r1)
/* 80041F50 0003DBB0  38 61 00 5C */	addi r3, r1, 0x5c
/* 80041F54 0003DBB4  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 80041F58 0003DBB8  7C 64 1B 78 */	mr r4, r3
/* 80041F5C 0003DBBC  C0 01 00 58 */	lfs f0, 0x58(r1)
/* 80041F60 0003DBC0  D0 41 00 5C */	stfs f2, 0x5c(r1)
/* 80041F64 0003DBC4  D0 21 00 60 */	stfs f1, 0x60(r1)
/* 80041F68 0003DBC8  D0 01 00 64 */	stfs f0, 0x64(r1)
/* 80041F6C 0003DBCC  48 23 AD BD */	bl func_8027CD28
/* 80041F70 0003DBD0  38 61 00 5C */	addi r3, r1, 0x5c
/* 80041F74 0003DBD4  38 81 00 68 */	addi r4, r1, 0x68
/* 80041F78 0003DBD8  48 23 AE 51 */	bl PSQUATDotProduct
/* 80041F7C 0003DBDC  C8 42 83 30 */	lfd f2, lbl_80640930-_SDA2_BASE_(r2)
/* 80041F80 0003DBE0  48 19 26 65 */	bl pow
/* 80041F84 0003DBE4  FF C0 08 18 */	frsp f30, f1
/* 80041F88 0003DBE8  38 61 00 68 */	addi r3, r1, 0x68
/* 80041F8C 0003DBEC  7C 64 1B 78 */	mr r4, r3
/* 80041F90 0003DBF0  48 23 AE 39 */	bl PSQUATDotProduct
/* 80041F94 0003DBF4  FF E0 08 90 */	fmr f31, f1
/* 80041F98 0003DBF8  C8 22 83 38 */	lfd f1, lbl_80640938-_SDA2_BASE_(r2)
/* 80041F9C 0003DBFC  C8 42 83 30 */	lfd f2, lbl_80640930-_SDA2_BASE_(r2)
/* 80041FA0 0003DC00  48 19 26 45 */	bl pow
/* 80041FA4 0003DC04  FC 20 08 18 */	frsp f1, f1
/* 80041FA8 0003DC08  C3 A2 82 B0 */	lfs f29, lbl_806408B0-_SDA2_BASE_(r2)
/* 80041FAC 0003DC0C  EC 1E F8 28 */	fsubs f0, f30, f31
/* 80041FB0 0003DC10  EC 21 00 2A */	fadds f1, f1, f0
/* 80041FB4 0003DC14  FC 01 E8 40 */	fcmpo cr0, f1, f29
/* 80041FB8 0003DC18  4C 40 13 82 */	cror 2, 0, 2
/* 80041FBC 0003DC1C  40 82 00 08 */	bne lbl_80041FC4
/* 80041FC0 0003DC20  48 00 00 0C */	b lbl_80041FCC
lbl_80041FC4:
/* 80041FC4 0003DC24  48 19 28 71 */	bl sqrt
/* 80041FC8 0003DC28  FF A0 08 18 */	frsp f29, f1
lbl_80041FCC:
/* 80041FCC 0003DC2C  38 61 00 5C */	addi r3, r1, 0x5c
/* 80041FD0 0003DC30  38 81 00 68 */	addi r4, r1, 0x68
/* 80041FD4 0003DC34  48 23 AD F5 */	bl PSQUATDotProduct
/* 80041FD8 0003DC38  C0 1E 00 00 */	lfs f0, 0(r30)
/* 80041FDC 0003DC3C  FC 20 08 50 */	fneg f1, f1
/* 80041FE0 0003DC40  7F E3 FB 78 */	mr r3, r31
/* 80041FE4 0003DC44  38 81 00 68 */	addi r4, r1, 0x68
/* 80041FE8 0003DC48  D0 01 00 68 */	stfs f0, 0x68(r1)
/* 80041FEC 0003DC4C  38 A1 00 44 */	addi r5, r1, 0x44
/* 80041FF0 0003DC50  EF A1 E8 28 */	fsubs f29, f1, f29
/* 80041FF4 0003DC54  C0 1E 00 04 */	lfs f0, 4(r30)
/* 80041FF8 0003DC58  D0 01 00 6C */	stfs f0, 0x6c(r1)
/* 80041FFC 0003DC5C  C0 1E 00 08 */	lfs f0, 8(r30)
/* 80042000 0003DC60  D0 01 00 70 */	stfs f0, 0x70(r1)
/* 80042004 0003DC64  48 23 AC E5 */	bl func_8027CCE8
/* 80042008 0003DC68  C0 41 00 44 */	lfs f2, 0x44(r1)
/* 8004200C 0003DC6C  38 61 00 5C */	addi r3, r1, 0x5c
/* 80042010 0003DC70  C0 21 00 48 */	lfs f1, 0x48(r1)
/* 80042014 0003DC74  7C 64 1B 78 */	mr r4, r3
/* 80042018 0003DC78  C0 01 00 4C */	lfs f0, 0x4c(r1)
/* 8004201C 0003DC7C  D0 41 00 5C */	stfs f2, 0x5c(r1)
/* 80042020 0003DC80  D0 21 00 60 */	stfs f1, 0x60(r1)
/* 80042024 0003DC84  D0 01 00 64 */	stfs f0, 0x64(r1)
/* 80042028 0003DC88  48 23 AD 01 */	bl func_8027CD28
/* 8004202C 0003DC8C  FC 20 E8 90 */	fmr f1, f29
/* 80042030 0003DC90  38 61 00 5C */	addi r3, r1, 0x5c
/* 80042034 0003DC94  38 81 00 2C */	addi r4, r1, 0x2c
/* 80042038 0003DC98  48 23 AC D5 */	bl func_8027CD0C
/* 8004203C 0003DC9C  38 61 00 68 */	addi r3, r1, 0x68
/* 80042040 0003DCA0  38 81 00 2C */	addi r4, r1, 0x2c
/* 80042044 0003DCA4  38 A1 00 38 */	addi r5, r1, 0x38
/* 80042048 0003DCA8  48 23 AC 7D */	bl func_8027CCC4
/* 8004204C 0003DCAC  C0 41 00 38 */	lfs f2, 0x38(r1)
/* 80042050 0003DCB0  C0 21 00 3C */	lfs f1, 0x3c(r1)
/* 80042054 0003DCB4  C0 01 00 40 */	lfs f0, 0x40(r1)
/* 80042058 0003DCB8  D0 41 00 68 */	stfs f2, 0x68(r1)
/* 8004205C 0003DCBC  D0 21 00 6C */	stfs f1, 0x6c(r1)
/* 80042060 0003DCC0  D0 01 00 70 */	stfs f0, 0x70(r1)
/* 80042064 0003DCC4  D0 5E 00 00 */	stfs f2, 0(r30)
/* 80042068 0003DCC8  C0 01 00 6C */	lfs f0, 0x6c(r1)
/* 8004206C 0003DCCC  D0 1E 00 04 */	stfs f0, 4(r30)
/* 80042070 0003DCD0  C0 01 00 70 */	lfs f0, 0x70(r1)
/* 80042074 0003DCD4  D0 1E 00 08 */	stfs f0, 8(r30)
lbl_80042078:
/* 80042078 0003DCD8  C0 3E 00 00 */	lfs f1, 0(r30)
/* 8004207C 0003DCDC  C0 02 83 40 */	lfs f0, lbl_80640940-_SDA2_BASE_(r2)
/* 80042080 0003DCE0  D0 21 00 68 */	stfs f1, 0x68(r1)
/* 80042084 0003DCE4  C0 5E 00 04 */	lfs f2, 4(r30)
/* 80042088 0003DCE8  D0 41 00 6C */	stfs f2, 0x6c(r1)
/* 8004208C 0003DCEC  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80042090 0003DCF0  C0 3E 00 08 */	lfs f1, 8(r30)
/* 80042094 0003DCF4  D0 21 00 70 */	stfs f1, 0x70(r1)
/* 80042098 0003DCF8  40 81 00 94 */	ble lbl_8004212C
/* 8004209C 0003DCFC  EF A0 10 24 */	fdivs f29, f0, f2
/* 800420A0 0003DD00  7F E4 FB 78 */	mr r4, r31
/* 800420A4 0003DD04  38 61 00 68 */	addi r3, r1, 0x68
/* 800420A8 0003DD08  38 A1 00 20 */	addi r5, r1, 0x20
/* 800420AC 0003DD0C  48 23 AC 3D */	bl func_8027CCE8
/* 800420B0 0003DD10  C0 41 00 20 */	lfs f2, 0x20(r1)
/* 800420B4 0003DD14  38 61 00 5C */	addi r3, r1, 0x5c
/* 800420B8 0003DD18  C0 21 00 24 */	lfs f1, 0x24(r1)
/* 800420BC 0003DD1C  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 800420C0 0003DD20  D0 41 00 5C */	stfs f2, 0x5c(r1)
/* 800420C4 0003DD24  D0 21 00 60 */	stfs f1, 0x60(r1)
/* 800420C8 0003DD28  D0 01 00 64 */	stfs f0, 0x64(r1)
/* 800420CC 0003DD2C  48 23 AC B9 */	bl func_8027CD84
/* 800420D0 0003DD30  FF E0 08 90 */	fmr f31, f1
/* 800420D4 0003DD34  38 61 00 5C */	addi r3, r1, 0x5c
/* 800420D8 0003DD38  7C 64 1B 78 */	mr r4, r3
/* 800420DC 0003DD3C  48 23 AC 4D */	bl func_8027CD28
/* 800420E0 0003DD40  EC 3F 07 72 */	fmuls f1, f31, f29
/* 800420E4 0003DD44  38 61 00 5C */	addi r3, r1, 0x5c
/* 800420E8 0003DD48  38 81 00 08 */	addi r4, r1, 8
/* 800420EC 0003DD4C  48 23 AC 21 */	bl func_8027CD0C
/* 800420F0 0003DD50  7F E3 FB 78 */	mr r3, r31
/* 800420F4 0003DD54  38 81 00 08 */	addi r4, r1, 8
/* 800420F8 0003DD58  38 A1 00 14 */	addi r5, r1, 0x14
/* 800420FC 0003DD5C  48 23 AB C9 */	bl func_8027CCC4
/* 80042100 0003DD60  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 80042104 0003DD64  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 80042108 0003DD68  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8004210C 0003DD6C  D0 41 00 68 */	stfs f2, 0x68(r1)
/* 80042110 0003DD70  D0 21 00 6C */	stfs f1, 0x6c(r1)
/* 80042114 0003DD74  D0 01 00 70 */	stfs f0, 0x70(r1)
/* 80042118 0003DD78  D0 5E 00 00 */	stfs f2, 0(r30)
/* 8004211C 0003DD7C  C0 01 00 6C */	lfs f0, 0x6c(r1)
/* 80042120 0003DD80  D0 1E 00 04 */	stfs f0, 4(r30)
/* 80042124 0003DD84  C0 01 00 70 */	lfs f0, 0x70(r1)
/* 80042128 0003DD88  D0 1E 00 08 */	stfs f0, 8(r30)
lbl_8004212C:
/* 8004212C 0003DD8C  E3 E1 00 A8 */	psq_l f31, 168(r1), 0, qr0
/* 80042130 0003DD90  CB E1 00 A0 */	lfd f31, 0xa0(r1)
/* 80042134 0003DD94  E3 C1 00 98 */	psq_l f30, 152(r1), 0, qr0
/* 80042138 0003DD98  CB C1 00 90 */	lfd f30, 0x90(r1)
/* 8004213C 0003DD9C  E3 A1 00 88 */	psq_l f29, 136(r1), 0, qr0
/* 80042140 0003DDA0  CB A1 00 80 */	lfd f29, 0x80(r1)
/* 80042144 0003DDA4  83 E1 00 7C */	lwz r31, 0x7c(r1)
/* 80042148 0003DDA8  80 01 00 B4 */	lwz r0, 0xb4(r1)
/* 8004214C 0003DDAC  83 C1 00 78 */	lwz r30, 0x78(r1)
/* 80042150 0003DDB0  7C 08 03 A6 */	mtlr r0
/* 80042154 0003DDB4  38 21 00 B0 */	addi r1, r1, 0xb0
/* 80042158 0003DDB8  4E 80 00 20 */	blr

.global func_8004215C
func_8004215C:
/* 8004215C 0003DDBC  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80042160 0003DDC0  7C 08 02 A6 */	mflr r0
/* 80042164 0003DDC4  90 01 00 44 */	stw r0, 0x44(r1)
/* 80042168 0003DDC8  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8004216C 0003DDCC  7C 7F 1B 78 */	mr r31, r3
/* 80042170 0003DDD0  38 61 00 08 */	addi r3, r1, 8
/* 80042174 0003DDD4  7F E4 FB 78 */	mr r4, r31
/* 80042178 0003DDD8  4B FF F9 E1 */	bl func_80041B58
/* 8004217C 0003DDDC  C0 41 00 08 */	lfs f2, 8(r1)
/* 80042180 0003DDE0  7F E3 FB 78 */	mr r3, r31
/* 80042184 0003DDE4  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 80042188 0003DDE8  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8004218C 0003DDEC  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 80042190 0003DDF0  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 80042194 0003DDF4  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 80042198 0003DDF8  48 00 03 F9 */	bl func_80042590
/* 8004219C 0003DDFC  C0 03 00 00 */	lfs f0, 0(r3)
/* 800421A0 0003DE00  38 81 00 14 */	addi r4, r1, 0x14
/* 800421A4 0003DE04  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 800421A8 0003DE08  C0 03 00 04 */	lfs f0, 4(r3)
/* 800421AC 0003DE0C  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 800421B0 0003DE10  C0 03 00 08 */	lfs f0, 8(r3)
/* 800421B4 0003DE14  38 61 00 20 */	addi r3, r1, 0x20
/* 800421B8 0003DE18  7C 65 1B 78 */	mr r5, r3
/* 800421BC 0003DE1C  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 800421C0 0003DE20  48 23 AB 05 */	bl func_8027CCC4
/* 800421C4 0003DE24  38 61 00 20 */	addi r3, r1, 0x20
/* 800421C8 0003DE28  38 81 00 14 */	addi r4, r1, 0x14
/* 800421CC 0003DE2C  4B FF FD 09 */	bl func_80041ED4
/* 800421D0 0003DE30  7F E3 FB 78 */	mr r3, r31
/* 800421D4 0003DE34  38 81 00 20 */	addi r4, r1, 0x20
/* 800421D8 0003DE38  4B FF EE D5 */	bl func_800410AC
/* 800421DC 0003DE3C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 800421E0 0003DE40  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 800421E4 0003DE44  7C 08 03 A6 */	mtlr r0
/* 800421E8 0003DE48  38 21 00 40 */	addi r1, r1, 0x40
/* 800421EC 0003DE4C  4E 80 00 20 */	blr

.global func_800421F0
func_800421F0:
/* 800421F0 0003DE50  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 800421F4 0003DE54  7C 08 02 A6 */	mflr r0
/* 800421F8 0003DE58  90 01 00 74 */	stw r0, 0x74(r1)
/* 800421FC 0003DE5C  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 80042200 0003DE60  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 80042204 0003DE64  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 80042208 0003DE68  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 8004220C 0003DE6C  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 80042210 0003DE70  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 80042214 0003DE74  FF A0 08 90 */	fmr f29, f1
/* 80042218 0003DE78  FF C0 10 90 */	fmr f30, f2
/* 8004221C 0003DE7C  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80042220 0003DE80  FF E0 18 90 */	fmr f31, f3
/* 80042224 0003DE84  7C 7F 1B 78 */	mr r31, r3
/* 80042228 0003DE88  80 03 06 D0 */	lwz r0, 0x6d0(r3)
/* 8004222C 0003DE8C  2C 00 00 00 */	cmpwi r0, 0
/* 80042230 0003DE90  41 82 00 0C */	beq lbl_8004223C
/* 80042234 0003DE94  38 63 06 50 */	addi r3, r3, 0x650
/* 80042238 0003DE98  48 00 00 08 */	b lbl_80042240
lbl_8004223C:
/* 8004223C 0003DE9C  38 63 05 60 */	addi r3, r3, 0x560
lbl_80042240:
/* 80042240 0003DEA0  38 80 00 00 */	li r4, 0
/* 80042244 0003DEA4  4B FF E9 39 */	bl func_80040B7C
/* 80042248 0003DEA8  2C 03 00 00 */	cmpwi r3, 0
/* 8004224C 0003DEAC  41 82 00 28 */	beq lbl_80042274
/* 80042250 0003DEB0  80 03 00 00 */	lwz r0, 0(r3)
/* 80042254 0003DEB4  54 00 04 E7 */	rlwinm. r0, r0, 0, 0x13, 0x13
/* 80042258 0003DEB8  41 82 00 1C */	beq lbl_80042274
/* 8004225C 0003DEBC  FC 20 E8 90 */	fmr f1, f29
/* 80042260 0003DEC0  C0 42 83 44 */	lfs f2, lbl_80640944-_SDA2_BASE_(r2)
/* 80042264 0003DEC4  FC 60 F8 90 */	fmr f3, f31
/* 80042268 0003DEC8  7F E3 FB 78 */	mr r3, r31
/* 8004226C 0003DECC  4B FF FE F1 */	bl func_8004215C
/* 80042270 0003DED0  48 00 00 80 */	b lbl_800422F0
lbl_80042274:
/* 80042274 0003DED4  FC 20 E8 90 */	fmr f1, f29
/* 80042278 0003DED8  C0 42 82 B0 */	lfs f2, lbl_806408B0-_SDA2_BASE_(r2)
/* 8004227C 0003DEDC  FC 60 F8 90 */	fmr f3, f31
/* 80042280 0003DEE0  7F E4 FB 78 */	mr r4, r31
/* 80042284 0003DEE4  38 61 00 08 */	addi r3, r1, 8
/* 80042288 0003DEE8  4B FF F8 D1 */	bl func_80041B58
/* 8004228C 0003DEEC  C0 41 00 08 */	lfs f2, 8(r1)
/* 80042290 0003DEF0  7F E3 FB 78 */	mr r3, r31
/* 80042294 0003DEF4  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 80042298 0003DEF8  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8004229C 0003DEFC  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 800422A0 0003DF00  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 800422A4 0003DF04  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 800422A8 0003DF08  48 00 02 E9 */	bl func_80042590
/* 800422AC 0003DF0C  C0 03 00 00 */	lfs f0, 0(r3)
/* 800422B0 0003DF10  38 81 00 14 */	addi r4, r1, 0x14
/* 800422B4 0003DF14  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 800422B8 0003DF18  C0 03 00 04 */	lfs f0, 4(r3)
/* 800422BC 0003DF1C  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 800422C0 0003DF20  C0 03 00 08 */	lfs f0, 8(r3)
/* 800422C4 0003DF24  38 61 00 20 */	addi r3, r1, 0x20
/* 800422C8 0003DF28  7C 65 1B 78 */	mr r5, r3
/* 800422CC 0003DF2C  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 800422D0 0003DF30  48 23 A9 F5 */	bl func_8027CCC4
/* 800422D4 0003DF34  D3 C1 00 24 */	stfs f30, 0x24(r1)
/* 800422D8 0003DF38  38 61 00 20 */	addi r3, r1, 0x20
/* 800422DC 0003DF3C  38 81 00 14 */	addi r4, r1, 0x14
/* 800422E0 0003DF40  4B FF FB F5 */	bl func_80041ED4
/* 800422E4 0003DF44  7F E3 FB 78 */	mr r3, r31
/* 800422E8 0003DF48  38 81 00 20 */	addi r4, r1, 0x20
/* 800422EC 0003DF4C  4B FF ED C1 */	bl func_800410AC
lbl_800422F0:
/* 800422F0 0003DF50  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 800422F4 0003DF54  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 800422F8 0003DF58  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 800422FC 0003DF5C  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 80042300 0003DF60  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 80042304 0003DF64  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 80042308 0003DF68  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8004230C 0003DF6C  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80042310 0003DF70  7C 08 03 A6 */	mtlr r0
/* 80042314 0003DF74  38 21 00 70 */	addi r1, r1, 0x70
/* 80042318 0003DF78  4E 80 00 20 */	blr

.global func_8004231C
func_8004231C:
/* 8004231C 0003DF7C  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80042320 0003DF80  7C 08 02 A6 */	mflr r0
/* 80042324 0003DF84  90 01 00 54 */	stw r0, 0x54(r1)
/* 80042328 0003DF88  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 8004232C 0003DF8C  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80042330 0003DF90  FF E0 20 90 */	fmr f31, f4
/* 80042334 0003DF94  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80042338 0003DF98  7C 9F 23 78 */	mr r31, r4
/* 8004233C 0003DF9C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80042340 0003DFA0  7C 7E 1B 78 */	mr r30, r3
/* 80042344 0003DFA4  38 61 00 08 */	addi r3, r1, 8
/* 80042348 0003DFA8  7F C4 F3 78 */	mr r4, r30
/* 8004234C 0003DFAC  4B FF F8 0D */	bl func_80041B58
/* 80042350 0003DFB0  C0 41 00 08 */	lfs f2, 8(r1)
/* 80042354 0003DFB4  7F C3 F3 78 */	mr r3, r30
/* 80042358 0003DFB8  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 8004235C 0003DFBC  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 80042360 0003DFC0  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 80042364 0003DFC4  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 80042368 0003DFC8  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 8004236C 0003DFCC  48 00 02 25 */	bl func_80042590
/* 80042370 0003DFD0  C0 03 00 00 */	lfs f0, 0(r3)
/* 80042374 0003DFD4  38 81 00 14 */	addi r4, r1, 0x14
/* 80042378 0003DFD8  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8004237C 0003DFDC  C0 03 00 04 */	lfs f0, 4(r3)
/* 80042380 0003DFE0  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80042384 0003DFE4  C0 03 00 08 */	lfs f0, 8(r3)
/* 80042388 0003DFE8  38 61 00 20 */	addi r3, r1, 0x20
/* 8004238C 0003DFEC  7C 65 1B 78 */	mr r5, r3
/* 80042390 0003DFF0  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80042394 0003DFF4  48 23 A9 31 */	bl func_8027CCC4
/* 80042398 0003DFF8  38 61 00 20 */	addi r3, r1, 0x20
/* 8004239C 0003DFFC  38 81 00 14 */	addi r4, r1, 0x14
/* 800423A0 0003E000  4B FF FB 35 */	bl func_80041ED4
/* 800423A4 0003E004  FC 20 F8 90 */	fmr f1, f31
/* 800423A8 0003E008  7F C3 F3 78 */	mr r3, r30
/* 800423AC 0003E00C  7F E5 FB 78 */	mr r5, r31
/* 800423B0 0003E010  38 81 00 20 */	addi r4, r1, 0x20
/* 800423B4 0003E014  48 00 04 89 */	bl func_8004283C
/* 800423B8 0003E018  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 800423BC 0003E01C  80 01 00 54 */	lwz r0, 0x54(r1)
/* 800423C0 0003E020  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 800423C4 0003E024  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 800423C8 0003E028  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 800423CC 0003E02C  7C 08 03 A6 */	mtlr r0
/* 800423D0 0003E030  38 21 00 50 */	addi r1, r1, 0x50
/* 800423D4 0003E034  4E 80 00 20 */	blr

.global func_800423D8
func_800423D8:
/* 800423D8 0003E038  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 800423DC 0003E03C  7C 08 02 A6 */	mflr r0
/* 800423E0 0003E040  90 01 00 84 */	stw r0, 0x84(r1)
/* 800423E4 0003E044  DB E1 00 70 */	stfd f31, 0x70(r1)
/* 800423E8 0003E048  F3 E1 00 78 */	psq_st f31, 120(r1), 0, qr0
/* 800423EC 0003E04C  DB C1 00 60 */	stfd f30, 0x60(r1)
/* 800423F0 0003E050  F3 C1 00 68 */	psq_st f30, 104(r1), 0, qr0
/* 800423F4 0003E054  DB A1 00 50 */	stfd f29, 0x50(r1)
/* 800423F8 0003E058  F3 A1 00 58 */	psq_st f29, 88(r1), 0, qr0
/* 800423FC 0003E05C  DB 81 00 40 */	stfd f28, 0x40(r1)
/* 80042400 0003E060  F3 81 00 48 */	psq_st f28, 72(r1), 0, qr0
/* 80042404 0003E064  FF 80 08 90 */	fmr f28, f1
/* 80042408 0003E068  FF A0 10 90 */	fmr f29, f2
/* 8004240C 0003E06C  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80042410 0003E070  FF C0 18 90 */	fmr f30, f3
/* 80042414 0003E074  FF E0 20 90 */	fmr f31, f4
/* 80042418 0003E078  7C 9F 23 78 */	mr r31, r4
/* 8004241C 0003E07C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80042420 0003E080  7C 7E 1B 78 */	mr r30, r3
/* 80042424 0003E084  80 03 06 D0 */	lwz r0, 0x6d0(r3)
/* 80042428 0003E088  2C 00 00 00 */	cmpwi r0, 0
/* 8004242C 0003E08C  41 82 00 0C */	beq lbl_80042438
/* 80042430 0003E090  38 63 06 50 */	addi r3, r3, 0x650
/* 80042434 0003E094  48 00 00 08 */	b lbl_8004243C
lbl_80042438:
/* 80042438 0003E098  38 63 05 60 */	addi r3, r3, 0x560
lbl_8004243C:
/* 8004243C 0003E09C  38 80 00 00 */	li r4, 0
/* 80042440 0003E0A0  4B FF E7 3D */	bl func_80040B7C
/* 80042444 0003E0A4  2C 03 00 00 */	cmpwi r3, 0
/* 80042448 0003E0A8  41 82 00 30 */	beq lbl_80042478
/* 8004244C 0003E0AC  80 03 00 00 */	lwz r0, 0(r3)
/* 80042450 0003E0B0  54 00 04 E7 */	rlwinm. r0, r0, 0, 0x13, 0x13
/* 80042454 0003E0B4  41 82 00 24 */	beq lbl_80042478
/* 80042458 0003E0B8  FC 20 E0 90 */	fmr f1, f28
/* 8004245C 0003E0BC  C0 42 83 44 */	lfs f2, lbl_80640944-_SDA2_BASE_(r2)
/* 80042460 0003E0C0  FC 60 F0 90 */	fmr f3, f30
/* 80042464 0003E0C4  7F C3 F3 78 */	mr r3, r30
/* 80042468 0003E0C8  FC 80 F8 90 */	fmr f4, f31
/* 8004246C 0003E0CC  7F E4 FB 78 */	mr r4, r31
/* 80042470 0003E0D0  4B FF FE AD */	bl func_8004231C
/* 80042474 0003E0D4  48 00 00 88 */	b lbl_800424FC
lbl_80042478:
/* 80042478 0003E0D8  FC 20 E0 90 */	fmr f1, f28
/* 8004247C 0003E0DC  C0 42 82 B0 */	lfs f2, lbl_806408B0-_SDA2_BASE_(r2)
/* 80042480 0003E0E0  FC 60 F0 90 */	fmr f3, f30
/* 80042484 0003E0E4  7F C4 F3 78 */	mr r4, r30
/* 80042488 0003E0E8  38 61 00 08 */	addi r3, r1, 8
/* 8004248C 0003E0EC  4B FF F6 CD */	bl func_80041B58
/* 80042490 0003E0F0  C0 41 00 08 */	lfs f2, 8(r1)
/* 80042494 0003E0F4  7F C3 F3 78 */	mr r3, r30
/* 80042498 0003E0F8  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 8004249C 0003E0FC  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 800424A0 0003E100  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 800424A4 0003E104  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 800424A8 0003E108  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 800424AC 0003E10C  48 00 00 E5 */	bl func_80042590
/* 800424B0 0003E110  C0 03 00 00 */	lfs f0, 0(r3)
/* 800424B4 0003E114  38 81 00 14 */	addi r4, r1, 0x14
/* 800424B8 0003E118  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 800424BC 0003E11C  C0 03 00 04 */	lfs f0, 4(r3)
/* 800424C0 0003E120  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 800424C4 0003E124  C0 03 00 08 */	lfs f0, 8(r3)
/* 800424C8 0003E128  38 61 00 20 */	addi r3, r1, 0x20
/* 800424CC 0003E12C  7C 65 1B 78 */	mr r5, r3
/* 800424D0 0003E130  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 800424D4 0003E134  48 23 A7 F1 */	bl func_8027CCC4
/* 800424D8 0003E138  D3 A1 00 24 */	stfs f29, 0x24(r1)
/* 800424DC 0003E13C  38 61 00 20 */	addi r3, r1, 0x20
/* 800424E0 0003E140  38 81 00 14 */	addi r4, r1, 0x14
/* 800424E4 0003E144  4B FF F9 F1 */	bl func_80041ED4
/* 800424E8 0003E148  FC 20 F8 90 */	fmr f1, f31
/* 800424EC 0003E14C  7F C3 F3 78 */	mr r3, r30
/* 800424F0 0003E150  7F E5 FB 78 */	mr r5, r31
/* 800424F4 0003E154  38 81 00 20 */	addi r4, r1, 0x20
/* 800424F8 0003E158  48 00 03 45 */	bl func_8004283C
lbl_800424FC:
/* 800424FC 0003E15C  E3 E1 00 78 */	psq_l f31, 120(r1), 0, qr0
/* 80042500 0003E160  CB E1 00 70 */	lfd f31, 0x70(r1)
/* 80042504 0003E164  E3 C1 00 68 */	psq_l f30, 104(r1), 0, qr0
/* 80042508 0003E168  CB C1 00 60 */	lfd f30, 0x60(r1)
/* 8004250C 0003E16C  E3 A1 00 58 */	psq_l f29, 88(r1), 0, qr0
/* 80042510 0003E170  CB A1 00 50 */	lfd f29, 0x50(r1)
/* 80042514 0003E174  E3 81 00 48 */	psq_l f28, 72(r1), 0, qr0
/* 80042518 0003E178  CB 81 00 40 */	lfd f28, 0x40(r1)
/* 8004251C 0003E17C  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80042520 0003E180  80 01 00 84 */	lwz r0, 0x84(r1)
/* 80042524 0003E184  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80042528 0003E188  7C 08 03 A6 */	mtlr r0
/* 8004252C 0003E18C  38 21 00 80 */	addi r1, r1, 0x80
/* 80042530 0003E190  4E 80 00 20 */	blr

.global func_80042534
func_80042534:
/* 80042534 0003E194  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80042538 0003E198  7C 08 02 A6 */	mflr r0
/* 8004253C 0003E19C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80042540 0003E1A0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80042544 0003E1A4  7C 7F 1B 78 */	mr r31, r3
/* 80042548 0003E1A8  38 63 05 60 */	addi r3, r3, 0x560
/* 8004254C 0003E1AC  4B FF E6 99 */	bl func_80040BE4
/* 80042550 0003E1B0  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 80042554 0003E1B4  48 00 DE 35 */	bl func_80050388
/* 80042558 0003E1B8  38 7F 00 DC */	addi r3, r31, 0xdc
/* 8004255C 0003E1BC  48 00 DE 2D */	bl func_80050388
/* 80042560 0003E1C0  38 7F 01 00 */	addi r3, r31, 0x100
/* 80042564 0003E1C4  48 00 DE 25 */	bl func_80050388
/* 80042568 0003E1C8  80 7F 06 D0 */	lwz r3, 0x6d0(r31)
/* 8004256C 0003E1CC  38 00 00 01 */	li r0, 1
/* 80042570 0003E1D0  98 1F 00 01 */	stb r0, 1(r31)
/* 80042574 0003E1D4  54 60 00 3A */	rlwinm r0, r3, 0, 0, 0x1d
/* 80042578 0003E1D8  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 8004257C 0003E1DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80042580 0003E1E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80042584 0003E1E4  7C 08 03 A6 */	mtlr r0
/* 80042588 0003E1E8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004258C 0003E1EC  4E 80 00 20 */	blr

.global func_80042590
func_80042590:
/* 80042590 0003E1F0  80 03 06 D0 */	lwz r0, 0x6d0(r3)
/* 80042594 0003E1F4  2C 00 00 00 */	cmpwi r0, 0
/* 80042598 0003E1F8  41 82 00 0C */	beq lbl_800425A4
/* 8004259C 0003E1FC  38 63 05 EC */	addi r3, r3, 0x5ec
/* 800425A0 0003E200  4E 80 00 20 */	blr
lbl_800425A4:
/* 800425A4 0003E204  38 63 05 74 */	addi r3, r3, 0x574
/* 800425A8 0003E208  4E 80 00 20 */	blr

.global func_800425AC
func_800425AC:
/* 800425AC 0003E20C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800425B0 0003E210  7C 08 02 A6 */	mflr r0
/* 800425B4 0003E214  90 01 00 14 */	stw r0, 0x14(r1)
/* 800425B8 0003E218  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800425BC 0003E21C  7C 7F 1B 78 */	mr r31, r3
/* 800425C0 0003E220  38 63 05 60 */	addi r3, r3, 0x560
/* 800425C4 0003E224  4B FF E5 1D */	bl func_80040AE0
/* 800425C8 0003E228  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 800425CC 0003E22C  48 00 DD BD */	bl func_80050388
/* 800425D0 0003E230  38 7F 00 DC */	addi r3, r31, 0xdc
/* 800425D4 0003E234  48 00 DD B5 */	bl func_80050388
/* 800425D8 0003E238  38 7F 01 00 */	addi r3, r31, 0x100
/* 800425DC 0003E23C  48 00 DD AD */	bl func_80050388
/* 800425E0 0003E240  38 00 00 01 */	li r0, 1
/* 800425E4 0003E244  98 1F 00 01 */	stb r0, 1(r31)
/* 800425E8 0003E248  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800425EC 0003E24C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800425F0 0003E250  7C 08 03 A6 */	mtlr r0
/* 800425F4 0003E254  38 21 00 10 */	addi r1, r1, 0x10
/* 800425F8 0003E258  4E 80 00 20 */	blr

.global func_800425FC
func_800425FC:
/* 800425FC 0003E25C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80042600 0003E260  7C 08 02 A6 */	mflr r0
/* 80042604 0003E264  90 01 00 44 */	stw r0, 0x44(r1)
/* 80042608 0003E268  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8004260C 0003E26C  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80042610 0003E270  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80042614 0003E274  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80042618 0003E278  FF C0 08 90 */	fmr f30, f1
/* 8004261C 0003E27C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80042620 0003E280  7C 7F 1B 78 */	mr r31, r3
/* 80042624 0003E284  38 63 05 60 */	addi r3, r3, 0x560
/* 80042628 0003E288  4B FF E1 89 */	bl func_800407B0
/* 8004262C 0003E28C  FF E0 08 90 */	fmr f31, f1
/* 80042630 0003E290  D3 DF 06 C8 */	stfs f30, 0x6c8(r31)
/* 80042634 0003E294  38 7F 04 E8 */	addi r3, r31, 0x4e8
/* 80042638 0003E298  38 80 00 01 */	li r4, 1
/* 8004263C 0003E29C  4B FF DF 4D */	bl func_80040588
/* 80042640 0003E2A0  C0 1F 04 FC */	lfs f0, 0x4fc(r31)
/* 80042644 0003E2A4  38 61 00 08 */	addi r3, r1, 8
/* 80042648 0003E2A8  7C 65 1B 78 */	mr r5, r3
/* 8004264C 0003E2AC  38 9F 05 74 */	addi r4, r31, 0x574
/* 80042650 0003E2B0  D0 01 00 08 */	stfs f0, 8(r1)
/* 80042654 0003E2B4  C0 1F 05 00 */	lfs f0, 0x500(r31)
/* 80042658 0003E2B8  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004265C 0003E2BC  C0 1F 05 04 */	lfs f0, 0x504(r31)
/* 80042660 0003E2C0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80042664 0003E2C4  48 23 A6 85 */	bl func_8027CCE8
/* 80042668 0003E2C8  38 61 00 08 */	addi r3, r1, 8
/* 8004266C 0003E2CC  7C 64 1B 78 */	mr r4, r3
/* 80042670 0003E2D0  48 23 A6 B9 */	bl func_8027CD28
/* 80042674 0003E2D4  EC 3E F8 2A */	fadds f1, f30, f31
/* 80042678 0003E2D8  38 61 00 08 */	addi r3, r1, 8
/* 8004267C 0003E2DC  7C 64 1B 78 */	mr r4, r3
/* 80042680 0003E2E0  48 23 A6 8D */	bl func_8027CD0C
/* 80042684 0003E2E4  38 61 00 08 */	addi r3, r1, 8
/* 80042688 0003E2E8  38 9F 05 74 */	addi r4, r31, 0x574
/* 8004268C 0003E2EC  7C 65 1B 78 */	mr r5, r3
/* 80042690 0003E2F0  48 23 A6 35 */	bl func_8027CCC4
/* 80042694 0003E2F4  38 7F 04 E8 */	addi r3, r31, 0x4e8
/* 80042698 0003E2F8  38 81 00 08 */	addi r4, r1, 8
/* 8004269C 0003E2FC  4B FF E5 49 */	bl func_80040BE4
/* 800426A0 0003E300  38 00 00 01 */	li r0, 1
/* 800426A4 0003E304  98 1F 00 01 */	stb r0, 1(r31)
/* 800426A8 0003E308  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 800426AC 0003E30C  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 800426B0 0003E310  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 800426B4 0003E314  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 800426B8 0003E318  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800426BC 0003E31C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 800426C0 0003E320  7C 08 03 A6 */	mtlr r0
/* 800426C4 0003E324  38 21 00 40 */	addi r1, r1, 0x40
/* 800426C8 0003E328  4E 80 00 20 */	blr

.global func_800426CC
func_800426CC:
/* 800426CC 0003E32C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800426D0 0003E330  7C 08 02 A6 */	mflr r0
/* 800426D4 0003E334  90 01 00 14 */	stw r0, 0x14(r1)
/* 800426D8 0003E338  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800426DC 0003E33C  7C 7F 1B 78 */	mr r31, r3
/* 800426E0 0003E340  D0 23 06 DC */	stfs f1, 0x6dc(r3)
/* 800426E4 0003E344  38 63 01 6C */	addi r3, r3, 0x16c
/* 800426E8 0003E348  48 00 DC A1 */	bl func_80050388
/* 800426EC 0003E34C  38 00 00 01 */	li r0, 1
/* 800426F0 0003E350  98 1F 00 01 */	stb r0, 1(r31)
/* 800426F4 0003E354  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800426F8 0003E358  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800426FC 0003E35C  7C 08 03 A6 */	mtlr r0
/* 80042700 0003E360  38 21 00 10 */	addi r1, r1, 0x10
/* 80042704 0003E364  4E 80 00 20 */	blr

.global func_80042708
func_80042708:
/* 80042708 0003E368  C0 23 06 DC */	lfs f1, 0x6dc(r3)
/* 8004270C 0003E36C  4E 80 00 20 */	blr

.global func_80042710
func_80042710:
/* 80042710 0003E370  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80042714 0003E374  7C 08 02 A6 */	mflr r0
/* 80042718 0003E378  7C 87 23 78 */	mr r7, r4
/* 8004271C 0003E37C  38 83 06 DC */	addi r4, r3, 0x6dc
/* 80042720 0003E380  90 01 00 14 */	stw r0, 0x14(r1)
/* 80042724 0003E384  7C 86 23 78 */	mr r6, r4
/* 80042728 0003E388  38 A1 00 08 */	addi r5, r1, 8
/* 8004272C 0003E38C  38 63 01 6C */	addi r3, r3, 0x16c
/* 80042730 0003E390  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042734 0003E394  FC 20 10 90 */	fmr f1, f2
/* 80042738 0003E398  48 00 DC 05 */	bl func_8005033C
/* 8004273C 0003E39C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80042740 0003E3A0  7C 08 03 A6 */	mtlr r0
/* 80042744 0003E3A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80042748 0003E3A8  4E 80 00 20 */	blr

.global func_8004274C
func_8004274C:
/* 8004274C 0003E3AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80042750 0003E3B0  7C 08 02 A6 */	mflr r0
/* 80042754 0003E3B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80042758 0003E3B8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004275C 0003E3BC  93 C1 00 08 */	stw r30, 8(r1)
/* 80042760 0003E3C0  7C 7E 1B 78 */	mr r30, r3
/* 80042764 0003E3C4  4B FF FE 2D */	bl func_80042590
/* 80042768 0003E3C8  7C 7F 1B 78 */	mr r31, r3
/* 8004276C 0003E3CC  7F C3 F3 78 */	mr r3, r30
/* 80042770 0003E3D0  4B FF EA 95 */	bl func_80041204
/* 80042774 0003E3D4  7F E4 FB 78 */	mr r4, r31
/* 80042778 0003E3D8  48 23 A8 59 */	bl func_8027CFD0
/* 8004277C 0003E3DC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80042780 0003E3E0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80042784 0003E3E4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80042788 0003E3E8  7C 08 03 A6 */	mtlr r0
/* 8004278C 0003E3EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80042790 0003E3F0  4E 80 00 20 */	blr

.global func_80042794
func_80042794:
/* 80042794 0003E3F4  38 63 05 60 */	addi r3, r3, 0x560
/* 80042798 0003E3F8  4B FF E0 18 */	b func_800407B0

.global func_8004279C
func_8004279C:
/* 8004279C 0003E3FC  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800427A0 0003E400  7C 08 02 A6 */	mflr r0
/* 800427A4 0003E404  90 01 00 44 */	stw r0, 0x44(r1)
/* 800427A8 0003E408  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 800427AC 0003E40C  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 800427B0 0003E410  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 800427B4 0003E414  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 800427B8 0003E418  FF C0 10 90 */	fmr f30, f2
/* 800427BC 0003E41C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800427C0 0003E420  7C 9F 23 78 */	mr r31, r4
/* 800427C4 0003E424  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800427C8 0003E428  7C 7E 1B 78 */	mr r30, r3
/* 800427CC 0003E42C  D0 21 00 08 */	stfs f1, 8(r1)
/* 800427D0 0003E430  80 03 04 BC */	lwz r0, 0x4bc(r3)
/* 800427D4 0003E434  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 800427D8 0003E438  90 03 04 BC */	stw r0, 0x4bc(r3)
/* 800427DC 0003E43C  4B FF FF B9 */	bl func_80042794
/* 800427E0 0003E440  FF E0 08 90 */	fmr f31, f1
/* 800427E4 0003E444  7F C3 F3 78 */	mr r3, r30
/* 800427E8 0003E448  4B FF FF 65 */	bl func_8004274C
/* 800427EC 0003E44C  EC 21 F8 28 */	fsubs f1, f1, f31
/* 800427F0 0003E450  7F C3 F3 78 */	mr r3, r30
/* 800427F4 0003E454  4B FF FE 09 */	bl func_800425FC
/* 800427F8 0003E458  FC 20 F0 90 */	fmr f1, f30
/* 800427FC 0003E45C  38 9E 06 C8 */	addi r4, r30, 0x6c8
/* 80042800 0003E460  7C 86 23 78 */	mr r6, r4
/* 80042804 0003E464  7F E7 FB 78 */	mr r7, r31
/* 80042808 0003E468  38 7E 00 28 */	addi r3, r30, 0x28
/* 8004280C 0003E46C  38 A1 00 08 */	addi r5, r1, 8
/* 80042810 0003E470  48 00 DB 2D */	bl func_8005033C
/* 80042814 0003E474  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80042818 0003E478  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8004281C 0003E47C  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80042820 0003E480  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80042824 0003E484  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80042828 0003E488  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004282C 0003E48C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80042830 0003E490  7C 08 03 A6 */	mtlr r0
/* 80042834 0003E494  38 21 00 40 */	addi r1, r1, 0x40
/* 80042838 0003E498  4E 80 00 20 */	blr

.global func_8004283C
func_8004283C:
/* 8004283C 0003E49C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80042840 0003E4A0  7C 08 02 A6 */	mflr r0
/* 80042844 0003E4A4  90 01 00 34 */	stw r0, 0x34(r1)
/* 80042848 0003E4A8  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8004284C 0003E4AC  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 80042850 0003E4B0  FF E0 08 90 */	fmr f31, f1
/* 80042854 0003E4B4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80042858 0003E4B8  7C BF 2B 78 */	mr r31, r5
/* 8004285C 0003E4BC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80042860 0003E4C0  7C 9E 23 78 */	mr r30, r4
/* 80042864 0003E4C4  38 80 00 00 */	li r4, 0
/* 80042868 0003E4C8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004286C 0003E4CC  7C 7D 1B 78 */	mr r29, r3
/* 80042870 0003E4D0  38 63 04 E8 */	addi r3, r3, 0x4e8
/* 80042874 0003E4D4  4B FF E3 31 */	bl func_80040BA4
/* 80042878 0003E4D8  C0 3E 00 04 */	lfs f1, 4(r30)
/* 8004287C 0003E4DC  38 00 00 00 */	li r0, 0
/* 80042880 0003E4E0  C0 1D 06 F4 */	lfs f0, 0x6f4(r29)
/* 80042884 0003E4E4  90 1D 04 BC */	stw r0, 0x4bc(r29)
/* 80042888 0003E4E8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004288C 0003E4EC  40 80 00 18 */	bge lbl_800428A4
/* 80042890 0003E4F0  88 1D 06 F8 */	lbz r0, 0x6f8(r29)
/* 80042894 0003E4F4  2C 00 00 00 */	cmpwi r0, 0
/* 80042898 0003E4F8  41 82 00 0C */	beq lbl_800428A4
/* 8004289C 0003E4FC  D0 01 00 08 */	stfs f0, 8(r1)
/* 800428A0 0003E500  48 00 00 0C */	b lbl_800428AC
lbl_800428A4:
/* 800428A4 0003E504  C0 1E 00 04 */	lfs f0, 4(r30)
/* 800428A8 0003E508  D0 01 00 08 */	stfs f0, 8(r1)
lbl_800428AC:
/* 800428AC 0003E50C  C0 3D 05 00 */	lfs f1, 0x500(r29)
/* 800428B0 0003E510  C0 1D 06 F4 */	lfs f0, 0x6f4(r29)
/* 800428B4 0003E514  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800428B8 0003E518  40 80 00 18 */	bge lbl_800428D0
/* 800428BC 0003E51C  88 1D 06 F8 */	lbz r0, 0x6f8(r29)
/* 800428C0 0003E520  2C 00 00 00 */	cmpwi r0, 0
/* 800428C4 0003E524  41 82 00 0C */	beq lbl_800428D0
/* 800428C8 0003E528  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 800428CC 0003E52C  48 00 00 0C */	b lbl_800428D8
lbl_800428D0:
/* 800428D0 0003E530  C0 1D 05 00 */	lfs f0, 0x500(r29)
/* 800428D4 0003E534  D0 01 00 0C */	stfs f0, 0xc(r1)
lbl_800428D8:
/* 800428D8 0003E538  FC 20 F8 90 */	fmr f1, f31
/* 800428DC 0003E53C  38 9D 04 FC */	addi r4, r29, 0x4fc
/* 800428E0 0003E540  7F C5 F3 78 */	mr r5, r30
/* 800428E4 0003E544  7F E7 FB 78 */	mr r7, r31
/* 800428E8 0003E548  7C 86 23 78 */	mr r6, r4
/* 800428EC 0003E54C  38 7D 00 4C */	addi r3, r29, 0x4c
/* 800428F0 0003E550  48 00 DA 4D */	bl func_8005033C
/* 800428F4 0003E554  FC 20 F8 90 */	fmr f1, f31
/* 800428F8 0003E558  7F E7 FB 78 */	mr r7, r31
/* 800428FC 0003E55C  38 7D 00 70 */	addi r3, r29, 0x70
/* 80042900 0003E560  38 81 00 0C */	addi r4, r1, 0xc
/* 80042904 0003E564  38 A1 00 08 */	addi r5, r1, 8
/* 80042908 0003E568  38 DD 05 00 */	addi r6, r29, 0x500
/* 8004290C 0003E56C  48 00 DA 31 */	bl func_8005033C
/* 80042910 0003E570  FC 20 F8 90 */	fmr f1, f31
/* 80042914 0003E574  38 9D 05 04 */	addi r4, r29, 0x504
/* 80042918 0003E578  7C 86 23 78 */	mr r6, r4
/* 8004291C 0003E57C  7F E7 FB 78 */	mr r7, r31
/* 80042920 0003E580  38 7D 00 94 */	addi r3, r29, 0x94
/* 80042924 0003E584  38 BE 00 08 */	addi r5, r30, 8
/* 80042928 0003E588  48 00 DA 15 */	bl func_8005033C
/* 8004292C 0003E58C  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 80042930 0003E590  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80042934 0003E594  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80042938 0003E598  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004293C 0003E59C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80042940 0003E5A0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80042944 0003E5A4  7C 08 03 A6 */	mtlr r0
/* 80042948 0003E5A8  38 21 00 30 */	addi r1, r1, 0x30
/* 8004294C 0003E5AC  4E 80 00 20 */	blr

.global func_80042950
func_80042950:
/* 80042950 0003E5B0  C0 82 82 EC */	lfs f4, lbl_806408EC-_SDA2_BASE_(r2)
/* 80042954 0003E5B4  3C 00 43 30 */	lis r0, 0x4330
/* 80042958 0003E5B8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004295C 0003E5BC  EC 62 20 24 */	fdivs f3, f2, f4
/* 80042960 0003E5C0  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80042964 0003E5C4  90 01 00 08 */	stw r0, 8(r1)
/* 80042968 0003E5C8  90 01 00 10 */	stw r0, 0x10(r1)
/* 8004296C 0003E5CC  FC 60 18 1E */	fctiwz f3, f3
/* 80042970 0003E5D0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80042974 0003E5D4  D8 61 00 18 */	stfd f3, 0x18(r1)
/* 80042978 0003E5D8  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8004297C 0003E5DC  40 80 00 38 */	bge lbl_800429B4
/* 80042980 0003E5E0  38 03 FF FF */	addi r0, r3, -1
/* 80042984 0003E5E4  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 80042988 0003E5E8  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8004298C 0003E5EC  90 61 00 0C */	stw r3, 0xc(r1)
/* 80042990 0003E5F0  C8 62 83 48 */	lfd f3, lbl_80640948-_SDA2_BASE_(r2)
/* 80042994 0003E5F4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80042998 0003E5F8  C8 41 00 08 */	lfd f2, 8(r1)
/* 8004299C 0003E5FC  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 800429A0 0003E600  EC 42 18 28 */	fsubs f2, f2, f3
/* 800429A4 0003E604  EC 00 18 28 */	fsubs f0, f0, f3
/* 800429A8 0003E608  EC 42 01 32 */	fmuls f2, f2, f4
/* 800429AC 0003E60C  EC 60 01 32 */	fmuls f3, f0, f4
/* 800429B0 0003E610  48 00 00 3C */	b lbl_800429EC
lbl_800429B4:
/* 800429B4 0003E614  38 03 00 01 */	addi r0, r3, 1
/* 800429B8 0003E618  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 800429BC 0003E61C  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 800429C0 0003E620  90 61 00 0C */	stw r3, 0xc(r1)
/* 800429C4 0003E624  C8 62 83 48 */	lfd f3, lbl_80640948-_SDA2_BASE_(r2)
/* 800429C8 0003E628  90 01 00 14 */	stw r0, 0x14(r1)
/* 800429CC 0003E62C  C8 41 00 08 */	lfd f2, 8(r1)
/* 800429D0 0003E630  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 800429D4 0003E634  EC 42 18 28 */	fsubs f2, f2, f3
/* 800429D8 0003E638  EC 00 18 28 */	fsubs f0, f0, f3
/* 800429DC 0003E63C  EC 62 01 32 */	fmuls f3, f2, f4
/* 800429E0 0003E640  EC 40 01 32 */	fmuls f2, f0, f4
/* 800429E4 0003E644  48 00 00 08 */	b lbl_800429EC
lbl_800429E8:
/* 800429E8 0003E648  EC 21 20 2A */	fadds f1, f1, f4
lbl_800429EC:
/* 800429EC 0003E64C  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 800429F0 0003E650  41 80 FF F8 */	blt lbl_800429E8
/* 800429F4 0003E654  48 00 00 08 */	b lbl_800429FC
lbl_800429F8:
/* 800429F8 0003E658  EC 21 20 28 */	fsubs f1, f1, f4
lbl_800429FC:
/* 800429FC 0003E65C  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 80042A00 0003E660  41 81 FF F8 */	bgt lbl_800429F8
/* 80042A04 0003E664  38 21 00 20 */	addi r1, r1, 0x20
/* 80042A08 0003E668  4E 80 00 20 */	blr

.global func_80042A0C
func_80042A0C:
/* 80042A0C 0003E66C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80042A10 0003E670  7C 08 02 A6 */	mflr r0
/* 80042A14 0003E674  90 01 00 24 */	stw r0, 0x24(r1)
/* 80042A18 0003E678  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80042A1C 0003E67C  FF E0 10 90 */	fmr f31, f2
/* 80042A20 0003E680  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80042A24 0003E684  7C 9F 23 78 */	mr r31, r4
/* 80042A28 0003E688  38 80 00 00 */	li r4, 0
/* 80042A2C 0003E68C  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80042A30 0003E690  7C 7E 1B 78 */	mr r30, r3
/* 80042A34 0003E694  38 63 04 E8 */	addi r3, r3, 0x4e8
/* 80042A38 0003E698  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042A3C 0003E69C  4B FF E1 69 */	bl func_80040BA4
/* 80042A40 0003E6A0  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80042A44 0003E6A4  38 9E 05 00 */	addi r4, r30, 0x500
/* 80042A48 0003E6A8  FC 20 F8 90 */	fmr f1, f31
/* 80042A4C 0003E6AC  7C 86 23 78 */	mr r6, r4
/* 80042A50 0003E6B0  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80042A54 0003E6B4  7F E7 FB 78 */	mr r7, r31
/* 80042A58 0003E6B8  90 1E 04 BC */	stw r0, 0x4bc(r30)
/* 80042A5C 0003E6BC  38 7E 00 70 */	addi r3, r30, 0x70
/* 80042A60 0003E6C0  38 A1 00 08 */	addi r5, r1, 8
/* 80042A64 0003E6C4  48 00 D8 D9 */	bl func_8005033C
/* 80042A68 0003E6C8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80042A6C 0003E6CC  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80042A70 0003E6D0  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80042A74 0003E6D4  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 80042A78 0003E6D8  7C 08 03 A6 */	mtlr r0
/* 80042A7C 0003E6DC  38 21 00 20 */	addi r1, r1, 0x20
/* 80042A80 0003E6E0  4E 80 00 20 */	blr

.global func_80042A84
func_80042A84:
/* 80042A84 0003E6E4  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80042A88 0003E6E8  7C 08 02 A6 */	mflr r0
/* 80042A8C 0003E6EC  90 01 00 44 */	stw r0, 0x44(r1)
/* 80042A90 0003E6F0  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80042A94 0003E6F4  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80042A98 0003E6F8  FF E0 10 90 */	fmr f31, f2
/* 80042A9C 0003E6FC  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80042AA0 0003E700  7C 9F 23 78 */	mr r31, r4
/* 80042AA4 0003E704  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80042AA8 0003E708  7C 7E 1B 78 */	mr r30, r3
/* 80042AAC 0003E70C  38 9E 05 74 */	addi r4, r30, 0x574
/* 80042AB0 0003E710  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042AB4 0003E714  C0 03 04 FC */	lfs f0, 0x4fc(r3)
/* 80042AB8 0003E718  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80042ABC 0003E71C  C0 03 05 00 */	lfs f0, 0x500(r3)
/* 80042AC0 0003E720  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80042AC4 0003E724  C0 03 05 04 */	lfs f0, 0x504(r3)
/* 80042AC8 0003E728  38 61 00 10 */	addi r3, r1, 0x10
/* 80042ACC 0003E72C  7C 65 1B 78 */	mr r5, r3
/* 80042AD0 0003E730  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80042AD4 0003E734  48 23 A2 15 */	bl func_8027CCE8
/* 80042AD8 0003E738  C0 41 00 18 */	lfs f2, 0x18(r1)
/* 80042ADC 0003E73C  C0 21 00 10 */	lfs f1, 0x10(r1)
/* 80042AE0 0003E740  48 19 1A FD */	bl atan2
/* 80042AE4 0003E744  FC 00 08 18 */	frsp f0, f1
/* 80042AE8 0003E748  7F E7 FB 78 */	mr r7, r31
/* 80042AEC 0003E74C  FC 20 F8 90 */	fmr f1, f31
/* 80042AF0 0003E750  38 7E 01 24 */	addi r3, r30, 0x124
/* 80042AF4 0003E754  38 81 00 0C */	addi r4, r1, 0xc
/* 80042AF8 0003E758  38 A1 00 08 */	addi r5, r1, 8
/* 80042AFC 0003E75C  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80042B00 0003E760  38 DE 04 D8 */	addi r6, r30, 0x4d8
/* 80042B04 0003E764  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80042B08 0003E768  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 80042B0C 0003E76C  90 1E 04 BC */	stw r0, 0x4bc(r30)
/* 80042B10 0003E770  48 00 D8 2D */	bl func_8005033C
/* 80042B14 0003E774  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80042B18 0003E778  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80042B1C 0003E77C  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80042B20 0003E780  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80042B24 0003E784  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80042B28 0003E788  7C 08 03 A6 */	mtlr r0
/* 80042B2C 0003E78C  38 21 00 40 */	addi r1, r1, 0x40
/* 80042B30 0003E790  4E 80 00 20 */	blr

.global func_80042B34
func_80042B34:
/* 80042B34 0003E794  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80042B38 0003E798  7C 08 02 A6 */	mflr r0
/* 80042B3C 0003E79C  90 01 00 54 */	stw r0, 0x54(r1)
/* 80042B40 0003E7A0  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80042B44 0003E7A4  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80042B48 0003E7A8  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 80042B4C 0003E7AC  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 80042B50 0003E7B0  FF C0 18 90 */	fmr f30, f3
/* 80042B54 0003E7B4  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80042B58 0003E7B8  7C 9F 23 78 */	mr r31, r4
/* 80042B5C 0003E7BC  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80042B60 0003E7C0  7C 7E 1B 78 */	mr r30, r3
/* 80042B64 0003E7C4  38 9E 05 74 */	addi r4, r30, 0x574
/* 80042B68 0003E7C8  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042B6C 0003E7CC  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80042B70 0003E7D0  C0 03 04 FC */	lfs f0, 0x4fc(r3)
/* 80042B74 0003E7D4  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80042B78 0003E7D8  C0 03 05 00 */	lfs f0, 0x500(r3)
/* 80042B7C 0003E7DC  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80042B80 0003E7E0  C0 03 05 04 */	lfs f0, 0x504(r3)
/* 80042B84 0003E7E4  38 61 00 18 */	addi r3, r1, 0x18
/* 80042B88 0003E7E8  7C 65 1B 78 */	mr r5, r3
/* 80042B8C 0003E7EC  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 80042B90 0003E7F0  48 23 A1 59 */	bl func_8027CCE8
/* 80042B94 0003E7F4  80 1E 06 D0 */	lwz r0, 0x6d0(r30)
/* 80042B98 0003E7F8  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80042B9C 0003E7FC  41 82 00 28 */	beq lbl_80042BC4
/* 80042BA0 0003E800  C0 41 00 20 */	lfs f2, 0x20(r1)
/* 80042BA4 0003E804  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 80042BA8 0003E808  48 19 1A 35 */	bl atan2
/* 80042BAC 0003E80C  FF E0 08 18 */	frsp f31, f1
/* 80042BB0 0003E810  38 7E 06 50 */	addi r3, r30, 0x650
/* 80042BB4 0003E814  4B FF E0 85 */	bl func_80040C38
/* 80042BB8 0003E818  EC 1F 08 28 */	fsubs f0, f31, f1
/* 80042BBC 0003E81C  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80042BC0 0003E820  48 00 00 24 */	b lbl_80042BE4
lbl_80042BC4:
/* 80042BC4 0003E824  C0 41 00 20 */	lfs f2, 0x20(r1)
/* 80042BC8 0003E828  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 80042BCC 0003E82C  48 19 1A 11 */	bl atan2
/* 80042BD0 0003E830  FF E0 08 18 */	frsp f31, f1
/* 80042BD4 0003E834  38 7E 05 60 */	addi r3, r30, 0x560
/* 80042BD8 0003E838  4B FF E0 61 */	bl func_80040C38
/* 80042BDC 0003E83C  EC 1F 08 28 */	fsubs f0, f31, f1
/* 80042BE0 0003E840  D0 01 00 14 */	stfs f0, 0x14(r1)
lbl_80042BE4:
/* 80042BE4 0003E844  FC 20 00 18 */	frsp f1, f0
/* 80042BE8 0003E848  C0 41 00 08 */	lfs f2, 8(r1)
/* 80042BEC 0003E84C  7F C3 F3 78 */	mr r3, r30
/* 80042BF0 0003E850  4B FF FD 61 */	bl func_80042950
/* 80042BF4 0003E854  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 80042BF8 0003E858  38 61 00 18 */	addi r3, r1, 0x18
/* 80042BFC 0003E85C  48 23 A1 89 */	bl func_8027CD84
/* 80042C00 0003E860  C0 41 00 1C */	lfs f2, 0x1c(r1)
/* 80042C04 0003E864  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80042C08 0003E868  EC 22 08 24 */	fdivs f1, f2, f1
/* 80042C0C 0003E86C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80042C10 0003E870  4C 41 13 82 */	cror 2, 1, 2
/* 80042C14 0003E874  40 82 00 0C */	bne lbl_80042C20
/* 80042C18 0003E878  C0 02 82 DC */	lfs f0, lbl_806408DC-_SDA2_BASE_(r2)
/* 80042C1C 0003E87C  48 00 00 24 */	b lbl_80042C40
lbl_80042C20:
/* 80042C20 0003E880  C0 02 82 E0 */	lfs f0, lbl_806408E0-_SDA2_BASE_(r2)
/* 80042C24 0003E884  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80042C28 0003E888  4C 40 13 82 */	cror 2, 0, 2
/* 80042C2C 0003E88C  40 82 00 0C */	bne lbl_80042C38
/* 80042C30 0003E890  C0 02 82 E4 */	lfs f0, lbl_806408E4-_SDA2_BASE_(r2)
/* 80042C34 0003E894  48 00 00 0C */	b lbl_80042C40
lbl_80042C38:
/* 80042C38 0003E898  48 19 19 A1 */	bl asin
/* 80042C3C 0003E89C  FC 00 08 18 */	frsp f0, f1
lbl_80042C40:
/* 80042C40 0003E8A0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80042C44 0003E8A4  FC 20 F0 90 */	fmr f1, f30
/* 80042C48 0003E8A8  7F E7 FB 78 */	mr r7, r31
/* 80042C4C 0003E8AC  38 7E 01 24 */	addi r3, r30, 0x124
/* 80042C50 0003E8B0  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80042C54 0003E8B4  38 81 00 14 */	addi r4, r1, 0x14
/* 80042C58 0003E8B8  38 A1 00 08 */	addi r5, r1, 8
/* 80042C5C 0003E8BC  54 00 07 74 */	rlwinm r0, r0, 0, 0x1d, 0x1a
/* 80042C60 0003E8C0  38 DE 04 D8 */	addi r6, r30, 0x4d8
/* 80042C64 0003E8C4  90 1E 04 BC */	stw r0, 0x4bc(r30)
/* 80042C68 0003E8C8  48 00 D6 D5 */	bl func_8005033C
/* 80042C6C 0003E8CC  FC 20 F0 90 */	fmr f1, f30
/* 80042C70 0003E8D0  7F E7 FB 78 */	mr r7, r31
/* 80042C74 0003E8D4  38 7E 01 48 */	addi r3, r30, 0x148
/* 80042C78 0003E8D8  38 81 00 10 */	addi r4, r1, 0x10
/* 80042C7C 0003E8DC  38 A1 00 0C */	addi r5, r1, 0xc
/* 80042C80 0003E8E0  38 DE 04 DC */	addi r6, r30, 0x4dc
/* 80042C84 0003E8E4  48 00 D6 B9 */	bl func_8005033C
/* 80042C88 0003E8E8  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80042C8C 0003E8EC  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 80042C90 0003E8F0  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 80042C94 0003E8F4  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 80042C98 0003E8F8  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80042C9C 0003E8FC  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80042CA0 0003E900  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80042CA4 0003E904  7C 08 03 A6 */	mtlr r0
/* 80042CA8 0003E908  38 21 00 50 */	addi r1, r1, 0x50
/* 80042CAC 0003E90C  4E 80 00 20 */	blr

.global func_80042CB0
func_80042CB0:
/* 80042CB0 0003E910  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80042CB4 0003E914  7C 08 02 A6 */	mflr r0
/* 80042CB8 0003E918  90 01 00 54 */	stw r0, 0x54(r1)
/* 80042CBC 0003E91C  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80042CC0 0003E920  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80042CC4 0003E924  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 80042CC8 0003E928  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 80042CCC 0003E92C  FF C0 10 90 */	fmr f30, f2
/* 80042CD0 0003E930  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80042CD4 0003E934  7C 9F 23 78 */	mr r31, r4
/* 80042CD8 0003E938  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80042CDC 0003E93C  7C 7E 1B 78 */	mr r30, r3
/* 80042CE0 0003E940  38 9E 05 74 */	addi r4, r30, 0x574
/* 80042CE4 0003E944  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042CE8 0003E948  C0 03 04 FC */	lfs f0, 0x4fc(r3)
/* 80042CEC 0003E94C  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80042CF0 0003E950  C0 03 05 00 */	lfs f0, 0x500(r3)
/* 80042CF4 0003E954  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80042CF8 0003E958  C0 03 05 04 */	lfs f0, 0x504(r3)
/* 80042CFC 0003E95C  38 61 00 10 */	addi r3, r1, 0x10
/* 80042D00 0003E960  7C 65 1B 78 */	mr r5, r3
/* 80042D04 0003E964  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80042D08 0003E968  48 23 9F E1 */	bl func_8027CCE8
/* 80042D0C 0003E96C  80 1E 06 D0 */	lwz r0, 0x6d0(r30)
/* 80042D10 0003E970  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80042D14 0003E974  41 82 00 28 */	beq lbl_80042D3C
/* 80042D18 0003E978  C0 41 00 18 */	lfs f2, 0x18(r1)
/* 80042D1C 0003E97C  C0 21 00 10 */	lfs f1, 0x10(r1)
/* 80042D20 0003E980  48 19 18 BD */	bl atan2
/* 80042D24 0003E984  FF E0 08 18 */	frsp f31, f1
/* 80042D28 0003E988  38 7E 06 50 */	addi r3, r30, 0x650
/* 80042D2C 0003E98C  4B FF DF 0D */	bl func_80040C38
/* 80042D30 0003E990  EC 1F 08 28 */	fsubs f0, f31, f1
/* 80042D34 0003E994  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80042D38 0003E998  48 00 00 24 */	b lbl_80042D5C
lbl_80042D3C:
/* 80042D3C 0003E99C  C0 41 00 18 */	lfs f2, 0x18(r1)
/* 80042D40 0003E9A0  C0 21 00 10 */	lfs f1, 0x10(r1)
/* 80042D44 0003E9A4  48 19 18 99 */	bl atan2
/* 80042D48 0003E9A8  FF E0 08 18 */	frsp f31, f1
/* 80042D4C 0003E9AC  38 7E 05 60 */	addi r3, r30, 0x560
/* 80042D50 0003E9B0  4B FF DE E9 */	bl func_80040C38
/* 80042D54 0003E9B4  EC 1F 08 28 */	fsubs f0, f31, f1
/* 80042D58 0003E9B8  D0 01 00 0C */	stfs f0, 0xc(r1)
lbl_80042D5C:
/* 80042D5C 0003E9BC  FC 20 00 18 */	frsp f1, f0
/* 80042D60 0003E9C0  C0 41 00 08 */	lfs f2, 8(r1)
/* 80042D64 0003E9C4  7F C3 F3 78 */	mr r3, r30
/* 80042D68 0003E9C8  4B FF FB E9 */	bl func_80042950
/* 80042D6C 0003E9CC  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80042D70 0003E9D0  FC 20 F0 90 */	fmr f1, f30
/* 80042D74 0003E9D4  7F E7 FB 78 */	mr r7, r31
/* 80042D78 0003E9D8  38 7E 01 24 */	addi r3, r30, 0x124
/* 80042D7C 0003E9DC  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80042D80 0003E9E0  38 81 00 0C */	addi r4, r1, 0xc
/* 80042D84 0003E9E4  38 A1 00 08 */	addi r5, r1, 8
/* 80042D88 0003E9E8  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 80042D8C 0003E9EC  38 DE 04 D8 */	addi r6, r30, 0x4d8
/* 80042D90 0003E9F0  90 1E 04 BC */	stw r0, 0x4bc(r30)
/* 80042D94 0003E9F4  48 00 D5 A9 */	bl func_8005033C
/* 80042D98 0003E9F8  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80042D9C 0003E9FC  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 80042DA0 0003EA00  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 80042DA4 0003EA04  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 80042DA8 0003EA08  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80042DAC 0003EA0C  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80042DB0 0003EA10  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80042DB4 0003EA14  7C 08 03 A6 */	mtlr r0
/* 80042DB8 0003EA18  38 21 00 50 */	addi r1, r1, 0x50
/* 80042DBC 0003EA1C  4E 80 00 20 */	blr

.global func_80042DC0
func_80042DC0:
/* 80042DC0 0003EA20  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80042DC4 0003EA24  7C 08 02 A6 */	mflr r0
/* 80042DC8 0003EA28  90 01 00 44 */	stw r0, 0x44(r1)
/* 80042DCC 0003EA2C  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80042DD0 0003EA30  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80042DD4 0003EA34  FF E0 10 90 */	fmr f31, f2
/* 80042DD8 0003EA38  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80042DDC 0003EA3C  7C 9F 23 78 */	mr r31, r4
/* 80042DE0 0003EA40  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80042DE4 0003EA44  7C 7E 1B 78 */	mr r30, r3
/* 80042DE8 0003EA48  38 9E 05 74 */	addi r4, r30, 0x574
/* 80042DEC 0003EA4C  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042DF0 0003EA50  C0 03 04 FC */	lfs f0, 0x4fc(r3)
/* 80042DF4 0003EA54  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80042DF8 0003EA58  C0 03 05 00 */	lfs f0, 0x500(r3)
/* 80042DFC 0003EA5C  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80042E00 0003EA60  C0 03 05 04 */	lfs f0, 0x504(r3)
/* 80042E04 0003EA64  38 61 00 10 */	addi r3, r1, 0x10
/* 80042E08 0003EA68  7C 65 1B 78 */	mr r5, r3
/* 80042E0C 0003EA6C  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80042E10 0003EA70  48 23 9E D9 */	bl func_8027CCE8
/* 80042E14 0003EA74  38 61 00 10 */	addi r3, r1, 0x10
/* 80042E18 0003EA78  48 23 9F 6D */	bl func_8027CD84
/* 80042E1C 0003EA7C  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 80042E20 0003EA80  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80042E24 0003EA84  EC 22 08 24 */	fdivs f1, f2, f1
/* 80042E28 0003EA88  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80042E2C 0003EA8C  4C 41 13 82 */	cror 2, 1, 2
/* 80042E30 0003EA90  40 82 00 0C */	bne lbl_80042E3C
/* 80042E34 0003EA94  C0 02 82 DC */	lfs f0, lbl_806408DC-_SDA2_BASE_(r2)
/* 80042E38 0003EA98  48 00 00 24 */	b lbl_80042E5C
lbl_80042E3C:
/* 80042E3C 0003EA9C  C0 02 82 E0 */	lfs f0, lbl_806408E0-_SDA2_BASE_(r2)
/* 80042E40 0003EAA0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80042E44 0003EAA4  4C 40 13 82 */	cror 2, 0, 2
/* 80042E48 0003EAA8  40 82 00 0C */	bne lbl_80042E54
/* 80042E4C 0003EAAC  C0 02 82 E4 */	lfs f0, lbl_806408E4-_SDA2_BASE_(r2)
/* 80042E50 0003EAB0  48 00 00 0C */	b lbl_80042E5C
lbl_80042E54:
/* 80042E54 0003EAB4  48 19 17 85 */	bl asin
/* 80042E58 0003EAB8  FC 00 08 18 */	frsp f0, f1
lbl_80042E5C:
/* 80042E5C 0003EABC  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80042E60 0003EAC0  FC 20 F8 90 */	fmr f1, f31
/* 80042E64 0003EAC4  7F E7 FB 78 */	mr r7, r31
/* 80042E68 0003EAC8  38 7E 01 48 */	addi r3, r30, 0x148
/* 80042E6C 0003EACC  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80042E70 0003EAD0  38 81 00 0C */	addi r4, r1, 0xc
/* 80042E74 0003EAD4  38 A1 00 08 */	addi r5, r1, 8
/* 80042E78 0003EAD8  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80042E7C 0003EADC  38 DE 04 DC */	addi r6, r30, 0x4dc
/* 80042E80 0003EAE0  90 1E 04 BC */	stw r0, 0x4bc(r30)
/* 80042E84 0003EAE4  48 00 D4 B9 */	bl func_8005033C
/* 80042E88 0003EAE8  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80042E8C 0003EAEC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80042E90 0003EAF0  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80042E94 0003EAF4  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80042E98 0003EAF8  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80042E9C 0003EAFC  7C 08 03 A6 */	mtlr r0
/* 80042EA0 0003EB00  38 21 00 40 */	addi r1, r1, 0x40
/* 80042EA4 0003EB04  4E 80 00 20 */	blr

.global func_80042EA8
func_80042EA8:
/* 80042EA8 0003EB08  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80042EAC 0003EB0C  7C 08 02 A6 */	mflr r0
/* 80042EB0 0003EB10  90 01 00 24 */	stw r0, 0x24(r1)
/* 80042EB4 0003EB14  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80042EB8 0003EB18  FF E0 08 90 */	fmr f31, f1
/* 80042EBC 0003EB1C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80042EC0 0003EB20  3B E3 05 74 */	addi r31, r3, 0x574
/* 80042EC4 0003EB24  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80042EC8 0003EB28  7C BE 2B 78 */	mr r30, r5
/* 80042ECC 0003EB2C  93 A1 00 0C */	stw r29, 0xc(r1)
/* 80042ED0 0003EB30  7C 9D 23 78 */	mr r29, r4
/* 80042ED4 0003EB34  38 80 00 00 */	li r4, 0
/* 80042ED8 0003EB38  93 81 00 08 */	stw r28, 8(r1)
/* 80042EDC 0003EB3C  7C 7C 1B 78 */	mr r28, r3
/* 80042EE0 0003EB40  38 63 05 60 */	addi r3, r3, 0x560
/* 80042EE4 0003EB44  4B FF DC C1 */	bl func_80040BA4
/* 80042EE8 0003EB48  FC 20 F8 90 */	fmr f1, f31
/* 80042EEC 0003EB4C  7F E4 FB 78 */	mr r4, r31
/* 80042EF0 0003EB50  7F A5 EB 78 */	mr r5, r29
/* 80042EF4 0003EB54  7F E6 FB 78 */	mr r6, r31
/* 80042EF8 0003EB58  7F C7 F3 78 */	mr r7, r30
/* 80042EFC 0003EB5C  38 7C 00 B8 */	addi r3, r28, 0xb8
/* 80042F00 0003EB60  48 00 D4 3D */	bl func_8005033C
/* 80042F04 0003EB64  FC 20 F8 90 */	fmr f1, f31
/* 80042F08 0003EB68  38 9F 00 04 */	addi r4, r31, 4
/* 80042F0C 0003EB6C  7C 86 23 78 */	mr r6, r4
/* 80042F10 0003EB70  7F C7 F3 78 */	mr r7, r30
/* 80042F14 0003EB74  38 7C 00 DC */	addi r3, r28, 0xdc
/* 80042F18 0003EB78  38 BD 00 04 */	addi r5, r29, 4
/* 80042F1C 0003EB7C  48 00 D4 21 */	bl func_8005033C
/* 80042F20 0003EB80  FC 20 F8 90 */	fmr f1, f31
/* 80042F24 0003EB84  38 9F 00 08 */	addi r4, r31, 8
/* 80042F28 0003EB88  7C 86 23 78 */	mr r6, r4
/* 80042F2C 0003EB8C  7F C7 F3 78 */	mr r7, r30
/* 80042F30 0003EB90  38 7C 01 00 */	addi r3, r28, 0x100
/* 80042F34 0003EB94  38 BD 00 08 */	addi r5, r29, 8
/* 80042F38 0003EB98  48 00 D4 05 */	bl func_8005033C
/* 80042F3C 0003EB9C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80042F40 0003EBA0  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80042F44 0003EBA4  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80042F48 0003EBA8  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 80042F4C 0003EBAC  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 80042F50 0003EBB0  83 81 00 08 */	lwz r28, 8(r1)
/* 80042F54 0003EBB4  7C 08 03 A6 */	mtlr r0
/* 80042F58 0003EBB8  38 21 00 20 */	addi r1, r1, 0x20
/* 80042F5C 0003EBBC  4E 80 00 20 */	blr

.global func_80042F60
func_80042F60:
/* 80042F60 0003EBC0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80042F64 0003EBC4  7C 08 02 A6 */	mflr r0
/* 80042F68 0003EBC8  90 01 00 24 */	stw r0, 0x24(r1)
/* 80042F6C 0003EBCC  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80042F70 0003EBD0  FF E0 10 90 */	fmr f31, f2
/* 80042F74 0003EBD4  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80042F78 0003EBD8  7C 9F 23 78 */	mr r31, r4
/* 80042F7C 0003EBDC  38 80 00 00 */	li r4, 0
/* 80042F80 0003EBE0  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80042F84 0003EBE4  7C 7E 1B 78 */	mr r30, r3
/* 80042F88 0003EBE8  38 63 05 60 */	addi r3, r3, 0x560
/* 80042F8C 0003EBEC  D0 21 00 08 */	stfs f1, 8(r1)
/* 80042F90 0003EBF0  4B FF DC 15 */	bl func_80040BA4
/* 80042F94 0003EBF4  FC 20 F8 90 */	fmr f1, f31
/* 80042F98 0003EBF8  38 9E 05 78 */	addi r4, r30, 0x578
/* 80042F9C 0003EBFC  7C 86 23 78 */	mr r6, r4
/* 80042FA0 0003EC00  7F E7 FB 78 */	mr r7, r31
/* 80042FA4 0003EC04  38 7E 00 DC */	addi r3, r30, 0xdc
/* 80042FA8 0003EC08  38 A1 00 08 */	addi r5, r1, 8
/* 80042FAC 0003EC0C  48 00 D3 91 */	bl func_8005033C
/* 80042FB0 0003EC10  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80042FB4 0003EC14  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80042FB8 0003EC18  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80042FBC 0003EC1C  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 80042FC0 0003EC20  7C 08 03 A6 */	mtlr r0
/* 80042FC4 0003EC24  38 21 00 20 */	addi r1, r1, 0x20
/* 80042FC8 0003EC28  4E 80 00 20 */	blr

.global func_80042FCC
func_80042FCC:
/* 80042FCC 0003EC2C  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 80042FD0 0003EC30  7C 08 02 A6 */	mflr r0
/* 80042FD4 0003EC34  90 01 00 94 */	stw r0, 0x94(r1)
/* 80042FD8 0003EC38  DB E1 00 80 */	stfd f31, 0x80(r1)
/* 80042FDC 0003EC3C  F3 E1 00 88 */	psq_st f31, 136(r1), 0, qr0
/* 80042FE0 0003EC40  DB C1 00 70 */	stfd f30, 0x70(r1)
/* 80042FE4 0003EC44  F3 C1 00 78 */	psq_st f30, 120(r1), 0, qr0
/* 80042FE8 0003EC48  DB A1 00 60 */	stfd f29, 0x60(r1)
/* 80042FEC 0003EC4C  F3 A1 00 68 */	psq_st f29, 104(r1), 0, qr0
/* 80042FF0 0003EC50  DB 81 00 50 */	stfd f28, 0x50(r1)
/* 80042FF4 0003EC54  F3 81 00 58 */	psq_st f28, 88(r1), 0, qr0
/* 80042FF8 0003EC58  DB 61 00 40 */	stfd f27, 0x40(r1)
/* 80042FFC 0003EC5C  F3 61 00 48 */	psq_st f27, 72(r1), 0, qr0
/* 80043000 0003EC60  DB 41 00 30 */	stfd f26, 0x30(r1)
/* 80043004 0003EC64  F3 41 00 38 */	psq_st f26, 56(r1), 0, qr0
/* 80043008 0003EC68  39 61 00 30 */	addi r11, r1, 0x30
/* 8004300C 0003EC6C  48 18 41 19 */	bl _savegpr_26
/* 80043010 0003EC70  C0 02 83 50 */	lfs f0, lbl_80640950-_SDA2_BASE_(r2)
/* 80043014 0003EC74  FF E0 10 90 */	fmr f31, f2
/* 80043018 0003EC78  7C 7F 1B 78 */	mr r31, r3
/* 8004301C 0003EC7C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80043020 0003EC80  4C 40 13 82 */	cror 2, 0, 2
/* 80043024 0003EC84  40 82 00 28 */	bne lbl_8004304C
/* 80043028 0003EC88  7C C8 33 78 */	mr r8, r6
/* 8004302C 0003EC8C  38 C0 00 00 */	li r6, 0
/* 80043030 0003EC90  38 E0 00 00 */	li r7, 0
/* 80043034 0003EC94  38 63 05 60 */	addi r3, r3, 0x560
/* 80043038 0003EC98  4B FF DB 01 */	bl func_80040B38
/* 8004303C 0003EC9C  80 1F 06 D0 */	lwz r0, 0x6d0(r31)
/* 80043040 0003ECA0  54 00 00 3A */	rlwinm r0, r0, 0, 0, 0x1d
/* 80043044 0003ECA4  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 80043048 0003ECA8  48 00 02 44 */	b lbl_8004328C
lbl_8004304C:
/* 8004304C 0003ECAC  80 03 06 D0 */	lwz r0, 0x6d0(r3)
/* 80043050 0003ECB0  2C 00 00 00 */	cmpwi r0, 0
/* 80043054 0003ECB4  41 82 00 F8 */	beq lbl_8004314C
/* 80043058 0003ECB8  8B C3 05 D8 */	lbz r30, 0x5d8(r3)
/* 8004305C 0003ECBC  83 A3 05 DC */	lwz r29, 0x5dc(r3)
/* 80043060 0003ECC0  C3 C3 05 E0 */	lfs f30, 0x5e0(r3)
/* 80043064 0003ECC4  C3 A3 05 E4 */	lfs f29, 0x5e4(r3)
/* 80043068 0003ECC8  83 83 05 E8 */	lwz r28, 0x5e8(r3)
/* 8004306C 0003ECCC  C3 83 05 EC */	lfs f28, 0x5ec(r3)
/* 80043070 0003ECD0  C3 63 05 F0 */	lfs f27, 0x5f0(r3)
/* 80043074 0003ECD4  C3 43 05 F4 */	lfs f26, 0x5f4(r3)
/* 80043078 0003ECD8  C1 A3 05 F8 */	lfs f13, 0x5f8(r3)
/* 8004307C 0003ECDC  C1 83 05 FC */	lfs f12, 0x5fc(r3)
/* 80043080 0003ECE0  C1 63 06 00 */	lfs f11, 0x600(r3)
/* 80043084 0003ECE4  C1 43 06 04 */	lfs f10, 0x604(r3)
/* 80043088 0003ECE8  C1 23 06 08 */	lfs f9, 0x608(r3)
/* 8004308C 0003ECEC  C1 03 06 0C */	lfs f8, 0x60c(r3)
/* 80043090 0003ECF0  C0 E3 06 10 */	lfs f7, 0x610(r3)
/* 80043094 0003ECF4  C0 C3 06 14 */	lfs f6, 0x614(r3)
/* 80043098 0003ECF8  C0 A3 06 18 */	lfs f5, 0x618(r3)
/* 8004309C 0003ECFC  C0 83 06 1C */	lfs f4, 0x61c(r3)
/* 800430A0 0003ED00  C0 63 06 20 */	lfs f3, 0x620(r3)
/* 800430A4 0003ED04  C0 43 06 24 */	lfs f2, 0x624(r3)
/* 800430A8 0003ED08  C0 03 06 28 */	lfs f0, 0x628(r3)
/* 800430AC 0003ED0C  83 63 06 2C */	lwz r27, 0x62c(r3)
/* 800430B0 0003ED10  83 43 06 30 */	lwz r26, 0x630(r3)
/* 800430B4 0003ED14  81 83 06 34 */	lwz r12, 0x634(r3)
/* 800430B8 0003ED18  81 63 06 38 */	lwz r11, 0x638(r3)
/* 800430BC 0003ED1C  81 43 06 3C */	lwz r10, 0x63c(r3)
/* 800430C0 0003ED20  81 23 06 40 */	lwz r9, 0x640(r3)
/* 800430C4 0003ED24  81 03 06 44 */	lwz r8, 0x644(r3)
/* 800430C8 0003ED28  80 E3 06 48 */	lwz r7, 0x648(r3)
/* 800430CC 0003ED2C  80 03 06 4C */	lwz r0, 0x64c(r3)
/* 800430D0 0003ED30  9B C3 05 60 */	stb r30, 0x560(r3)
/* 800430D4 0003ED34  93 A3 05 64 */	stw r29, 0x564(r3)
/* 800430D8 0003ED38  D3 C3 05 68 */	stfs f30, 0x568(r3)
/* 800430DC 0003ED3C  D3 A3 05 6C */	stfs f29, 0x56c(r3)
/* 800430E0 0003ED40  93 83 05 70 */	stw r28, 0x570(r3)
/* 800430E4 0003ED44  D3 83 05 74 */	stfs f28, 0x574(r3)
/* 800430E8 0003ED48  D3 63 05 78 */	stfs f27, 0x578(r3)
/* 800430EC 0003ED4C  D3 43 05 7C */	stfs f26, 0x57c(r3)
/* 800430F0 0003ED50  D1 A3 05 80 */	stfs f13, 0x580(r3)
/* 800430F4 0003ED54  D1 83 05 84 */	stfs f12, 0x584(r3)
/* 800430F8 0003ED58  D1 63 05 88 */	stfs f11, 0x588(r3)
/* 800430FC 0003ED5C  D1 43 05 8C */	stfs f10, 0x58c(r3)
/* 80043100 0003ED60  D1 23 05 90 */	stfs f9, 0x590(r3)
/* 80043104 0003ED64  D1 03 05 94 */	stfs f8, 0x594(r3)
/* 80043108 0003ED68  D0 E3 05 98 */	stfs f7, 0x598(r3)
/* 8004310C 0003ED6C  D0 C3 05 9C */	stfs f6, 0x59c(r3)
/* 80043110 0003ED70  D0 A3 05 A0 */	stfs f5, 0x5a0(r3)
/* 80043114 0003ED74  D0 83 05 A4 */	stfs f4, 0x5a4(r3)
/* 80043118 0003ED78  D0 63 05 A8 */	stfs f3, 0x5a8(r3)
/* 8004311C 0003ED7C  D0 43 05 AC */	stfs f2, 0x5ac(r3)
/* 80043120 0003ED80  D0 03 05 B0 */	stfs f0, 0x5b0(r3)
/* 80043124 0003ED84  93 63 05 B4 */	stw r27, 0x5b4(r3)
/* 80043128 0003ED88  93 43 05 B8 */	stw r26, 0x5b8(r3)
/* 8004312C 0003ED8C  91 83 05 BC */	stw r12, 0x5bc(r3)
/* 80043130 0003ED90  91 63 05 C0 */	stw r11, 0x5c0(r3)
/* 80043134 0003ED94  91 43 05 C4 */	stw r10, 0x5c4(r3)
/* 80043138 0003ED98  91 23 05 C8 */	stw r9, 0x5c8(r3)
/* 8004313C 0003ED9C  91 03 05 CC */	stw r8, 0x5cc(r3)
/* 80043140 0003EDA0  90 E3 05 D0 */	stw r7, 0x5d0(r3)
/* 80043144 0003EDA4  90 03 05 D4 */	stw r0, 0x5d4(r3)
/* 80043148 0003EDA8  48 00 00 F4 */	b lbl_8004323C
lbl_8004314C:
/* 8004314C 0003EDAC  8B 43 05 60 */	lbz r26, 0x560(r3)
/* 80043150 0003EDB0  83 63 05 64 */	lwz r27, 0x564(r3)
/* 80043154 0003EDB4  C3 43 05 68 */	lfs f26, 0x568(r3)
/* 80043158 0003EDB8  C3 63 05 6C */	lfs f27, 0x56c(r3)
/* 8004315C 0003EDBC  83 83 05 70 */	lwz r28, 0x570(r3)
/* 80043160 0003EDC0  C3 83 05 74 */	lfs f28, 0x574(r3)
/* 80043164 0003EDC4  C3 A3 05 78 */	lfs f29, 0x578(r3)
/* 80043168 0003EDC8  C3 C3 05 7C */	lfs f30, 0x57c(r3)
/* 8004316C 0003EDCC  C1 A3 05 80 */	lfs f13, 0x580(r3)
/* 80043170 0003EDD0  C1 83 05 84 */	lfs f12, 0x584(r3)
/* 80043174 0003EDD4  C1 63 05 88 */	lfs f11, 0x588(r3)
/* 80043178 0003EDD8  C1 43 05 8C */	lfs f10, 0x58c(r3)
/* 8004317C 0003EDDC  C1 23 05 90 */	lfs f9, 0x590(r3)
/* 80043180 0003EDE0  C1 03 05 94 */	lfs f8, 0x594(r3)
/* 80043184 0003EDE4  C0 E3 05 98 */	lfs f7, 0x598(r3)
/* 80043188 0003EDE8  C0 C3 05 9C */	lfs f6, 0x59c(r3)
/* 8004318C 0003EDEC  C0 A3 05 A0 */	lfs f5, 0x5a0(r3)
/* 80043190 0003EDF0  C0 83 05 A4 */	lfs f4, 0x5a4(r3)
/* 80043194 0003EDF4  C0 63 05 A8 */	lfs f3, 0x5a8(r3)
/* 80043198 0003EDF8  C0 43 05 AC */	lfs f2, 0x5ac(r3)
/* 8004319C 0003EDFC  C0 03 05 B0 */	lfs f0, 0x5b0(r3)
/* 800431A0 0003EE00  83 A3 05 B4 */	lwz r29, 0x5b4(r3)
/* 800431A4 0003EE04  83 C3 05 B8 */	lwz r30, 0x5b8(r3)
/* 800431A8 0003EE08  81 83 05 BC */	lwz r12, 0x5bc(r3)
/* 800431AC 0003EE0C  81 63 05 C0 */	lwz r11, 0x5c0(r3)
/* 800431B0 0003EE10  81 43 05 C4 */	lwz r10, 0x5c4(r3)
/* 800431B4 0003EE14  81 23 05 C8 */	lwz r9, 0x5c8(r3)
/* 800431B8 0003EE18  81 03 05 CC */	lwz r8, 0x5cc(r3)
/* 800431BC 0003EE1C  80 E3 05 D0 */	lwz r7, 0x5d0(r3)
/* 800431C0 0003EE20  80 03 05 D4 */	lwz r0, 0x5d4(r3)
/* 800431C4 0003EE24  9B 43 05 D8 */	stb r26, 0x5d8(r3)
/* 800431C8 0003EE28  93 63 05 DC */	stw r27, 0x5dc(r3)
/* 800431CC 0003EE2C  D3 43 05 E0 */	stfs f26, 0x5e0(r3)
/* 800431D0 0003EE30  D3 63 05 E4 */	stfs f27, 0x5e4(r3)
/* 800431D4 0003EE34  93 83 05 E8 */	stw r28, 0x5e8(r3)
/* 800431D8 0003EE38  D3 83 05 EC */	stfs f28, 0x5ec(r3)
/* 800431DC 0003EE3C  D3 A3 05 F0 */	stfs f29, 0x5f0(r3)
/* 800431E0 0003EE40  D3 C3 05 F4 */	stfs f30, 0x5f4(r3)
/* 800431E4 0003EE44  D1 A3 05 F8 */	stfs f13, 0x5f8(r3)
/* 800431E8 0003EE48  D1 83 05 FC */	stfs f12, 0x5fc(r3)
/* 800431EC 0003EE4C  D1 63 06 00 */	stfs f11, 0x600(r3)
/* 800431F0 0003EE50  D1 43 06 04 */	stfs f10, 0x604(r3)
/* 800431F4 0003EE54  D1 23 06 08 */	stfs f9, 0x608(r3)
/* 800431F8 0003EE58  D1 03 06 0C */	stfs f8, 0x60c(r3)
/* 800431FC 0003EE5C  D0 E3 06 10 */	stfs f7, 0x610(r3)
/* 80043200 0003EE60  D0 C3 06 14 */	stfs f6, 0x614(r3)
/* 80043204 0003EE64  D0 A3 06 18 */	stfs f5, 0x618(r3)
/* 80043208 0003EE68  D0 83 06 1C */	stfs f4, 0x61c(r3)
/* 8004320C 0003EE6C  D0 63 06 20 */	stfs f3, 0x620(r3)
/* 80043210 0003EE70  D0 43 06 24 */	stfs f2, 0x624(r3)
/* 80043214 0003EE74  D0 03 06 28 */	stfs f0, 0x628(r3)
/* 80043218 0003EE78  93 A3 06 2C */	stw r29, 0x62c(r3)
/* 8004321C 0003EE7C  93 C3 06 30 */	stw r30, 0x630(r3)
/* 80043220 0003EE80  91 83 06 34 */	stw r12, 0x634(r3)
/* 80043224 0003EE84  91 63 06 38 */	stw r11, 0x638(r3)
/* 80043228 0003EE88  91 43 06 3C */	stw r10, 0x63c(r3)
/* 8004322C 0003EE8C  91 23 06 40 */	stw r9, 0x640(r3)
/* 80043230 0003EE90  91 03 06 44 */	stw r8, 0x644(r3)
/* 80043234 0003EE94  90 E3 06 48 */	stw r7, 0x648(r3)
/* 80043238 0003EE98  90 03 06 4C */	stw r0, 0x64c(r3)
lbl_8004323C:
/* 8004323C 0003EE9C  7C C8 33 78 */	mr r8, r6
/* 80043240 0003EEA0  38 C0 00 00 */	li r6, 0
/* 80043244 0003EEA4  38 E0 00 00 */	li r7, 0
/* 80043248 0003EEA8  38 63 06 50 */	addi r3, r3, 0x650
/* 8004324C 0003EEAC  4B FF D8 ED */	bl func_80040B38
/* 80043250 0003EEB0  80 1F 06 D0 */	lwz r0, 0x6d0(r31)
/* 80043254 0003EEB4  38 7F 06 50 */	addi r3, r31, 0x650
/* 80043258 0003EEB8  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 8004325C 0003EEBC  38 81 00 08 */	addi r4, r1, 8
/* 80043260 0003EEC0  60 00 00 01 */	ori r0, r0, 1
/* 80043264 0003EEC4  D3 FF 06 D4 */	stfs f31, 0x6d4(r31)
/* 80043268 0003EEC8  C0 1F 05 74 */	lfs f0, 0x574(r31)
/* 8004326C 0003EECC  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 80043270 0003EED0  D0 3F 06 D8 */	stfs f1, 0x6d8(r31)
/* 80043274 0003EED4  D0 01 00 08 */	stfs f0, 8(r1)
/* 80043278 0003EED8  C0 1F 05 78 */	lfs f0, 0x578(r31)
/* 8004327C 0003EEDC  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80043280 0003EEE0  C0 1F 05 7C */	lfs f0, 0x57c(r31)
/* 80043284 0003EEE4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80043288 0003EEE8  4B FF D6 A1 */	bl func_80040928
lbl_8004328C:
/* 8004328C 0003EEEC  80 7F 04 BC */	lwz r3, 0x4bc(r31)
/* 80043290 0003EEF0  38 00 00 01 */	li r0, 1
/* 80043294 0003EEF4  98 1F 00 02 */	stb r0, 2(r31)
/* 80043298 0003EEF8  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8004329C 0003EEFC  41 82 00 0C */	beq lbl_800432A8
/* 800432A0 0003EF00  60 60 00 04 */	ori r0, r3, 4
/* 800432A4 0003EF04  90 1F 04 BC */	stw r0, 0x4bc(r31)
lbl_800432A8:
/* 800432A8 0003EF08  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 800432AC 0003EF0C  48 00 D0 DD */	bl func_80050388
/* 800432B0 0003EF10  38 7F 00 DC */	addi r3, r31, 0xdc
/* 800432B4 0003EF14  48 00 D0 D5 */	bl func_80050388
/* 800432B8 0003EF18  38 7F 01 00 */	addi r3, r31, 0x100
/* 800432BC 0003EF1C  48 00 D0 CD */	bl func_80050388
/* 800432C0 0003EF20  38 00 00 01 */	li r0, 1
/* 800432C4 0003EF24  98 1F 00 01 */	stb r0, 1(r31)
/* 800432C8 0003EF28  E3 E1 00 88 */	psq_l f31, 136(r1), 0, qr0
/* 800432CC 0003EF2C  CB E1 00 80 */	lfd f31, 0x80(r1)
/* 800432D0 0003EF30  E3 C1 00 78 */	psq_l f30, 120(r1), 0, qr0
/* 800432D4 0003EF34  CB C1 00 70 */	lfd f30, 0x70(r1)
/* 800432D8 0003EF38  E3 A1 00 68 */	psq_l f29, 104(r1), 0, qr0
/* 800432DC 0003EF3C  CB A1 00 60 */	lfd f29, 0x60(r1)
/* 800432E0 0003EF40  E3 81 00 58 */	psq_l f28, 88(r1), 0, qr0
/* 800432E4 0003EF44  CB 81 00 50 */	lfd f28, 0x50(r1)
/* 800432E8 0003EF48  E3 61 00 48 */	psq_l f27, 72(r1), 0, qr0
/* 800432EC 0003EF4C  CB 61 00 40 */	lfd f27, 0x40(r1)
/* 800432F0 0003EF50  E3 41 00 38 */	psq_l f26, 56(r1), 0, qr0
/* 800432F4 0003EF54  CB 41 00 30 */	lfd f26, 0x30(r1)
/* 800432F8 0003EF58  39 61 00 30 */	addi r11, r1, 0x30
/* 800432FC 0003EF5C  48 18 3E 75 */	bl _restgpr_26
/* 80043300 0003EF60  80 01 00 94 */	lwz r0, 0x94(r1)
/* 80043304 0003EF64  7C 08 03 A6 */	mtlr r0
/* 80043308 0003EF68  38 21 00 90 */	addi r1, r1, 0x90
/* 8004330C 0003EF6C  4E 80 00 20 */	blr

.global func_80043310
func_80043310:
/* 80043310 0003EF70  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 80043314 0003EF74  7C 08 02 A6 */	mflr r0
/* 80043318 0003EF78  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 8004331C 0003EF7C  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 80043320 0003EF80  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 80043324 0003EF84  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 80043328 0003EF88  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 8004332C 0003EF8C  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 80043330 0003EF90  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 80043334 0003EF94  DB 81 00 60 */	stfd f28, 0x60(r1)
/* 80043338 0003EF98  F3 81 00 68 */	psq_st f28, 104(r1), 0, qr0
/* 8004333C 0003EF9C  DB 61 00 50 */	stfd f27, 0x50(r1)
/* 80043340 0003EFA0  F3 61 00 58 */	psq_st f27, 88(r1), 0, qr0
/* 80043344 0003EFA4  DB 41 00 40 */	stfd f26, 0x40(r1)
/* 80043348 0003EFA8  F3 41 00 48 */	psq_st f26, 72(r1), 0, qr0
/* 8004334C 0003EFAC  39 61 00 40 */	addi r11, r1, 0x40
/* 80043350 0003EFB0  48 18 3D CD */	bl _savegpr_24
/* 80043354 0003EFB4  C0 02 83 50 */	lfs f0, lbl_80640950-_SDA2_BASE_(r2)
/* 80043358 0003EFB8  FF E0 10 90 */	fmr f31, f2
/* 8004335C 0003EFBC  7C 7F 1B 78 */	mr r31, r3
/* 80043360 0003EFC0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80043364 0003EFC4  4C 40 13 82 */	cror 2, 0, 2
/* 80043368 0003EFC8  40 82 00 1C */	bne lbl_80043384
/* 8004336C 0003EFCC  38 63 05 60 */	addi r3, r3, 0x560
/* 80043370 0003EFD0  4B FF D7 C9 */	bl func_80040B38
/* 80043374 0003EFD4  80 1F 06 D0 */	lwz r0, 0x6d0(r31)
/* 80043378 0003EFD8  54 00 00 3A */	rlwinm r0, r0, 0, 0, 0x1d
/* 8004337C 0003EFDC  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 80043380 0003EFE0  48 00 02 38 */	b lbl_800435B8
lbl_80043384:
/* 80043384 0003EFE4  80 03 06 D0 */	lwz r0, 0x6d0(r3)
/* 80043388 0003EFE8  2C 00 00 00 */	cmpwi r0, 0
/* 8004338C 0003EFEC  41 82 00 F8 */	beq lbl_80043484
/* 80043390 0003EFF0  8B C3 05 D8 */	lbz r30, 0x5d8(r3)
/* 80043394 0003EFF4  83 A3 05 DC */	lwz r29, 0x5dc(r3)
/* 80043398 0003EFF8  C3 C3 05 E0 */	lfs f30, 0x5e0(r3)
/* 8004339C 0003EFFC  C3 A3 05 E4 */	lfs f29, 0x5e4(r3)
/* 800433A0 0003F000  83 83 05 E8 */	lwz r28, 0x5e8(r3)
/* 800433A4 0003F004  C3 83 05 EC */	lfs f28, 0x5ec(r3)
/* 800433A8 0003F008  C3 63 05 F0 */	lfs f27, 0x5f0(r3)
/* 800433AC 0003F00C  C3 43 05 F4 */	lfs f26, 0x5f4(r3)
/* 800433B0 0003F010  C1 A3 05 F8 */	lfs f13, 0x5f8(r3)
/* 800433B4 0003F014  C1 83 05 FC */	lfs f12, 0x5fc(r3)
/* 800433B8 0003F018  C1 63 06 00 */	lfs f11, 0x600(r3)
/* 800433BC 0003F01C  C1 43 06 04 */	lfs f10, 0x604(r3)
/* 800433C0 0003F020  C1 23 06 08 */	lfs f9, 0x608(r3)
/* 800433C4 0003F024  C1 03 06 0C */	lfs f8, 0x60c(r3)
/* 800433C8 0003F028  C0 E3 06 10 */	lfs f7, 0x610(r3)
/* 800433CC 0003F02C  C0 C3 06 14 */	lfs f6, 0x614(r3)
/* 800433D0 0003F030  C0 A3 06 18 */	lfs f5, 0x618(r3)
/* 800433D4 0003F034  C0 83 06 1C */	lfs f4, 0x61c(r3)
/* 800433D8 0003F038  C0 63 06 20 */	lfs f3, 0x620(r3)
/* 800433DC 0003F03C  C0 43 06 24 */	lfs f2, 0x624(r3)
/* 800433E0 0003F040  C0 03 06 28 */	lfs f0, 0x628(r3)
/* 800433E4 0003F044  83 63 06 2C */	lwz r27, 0x62c(r3)
/* 800433E8 0003F048  83 43 06 30 */	lwz r26, 0x630(r3)
/* 800433EC 0003F04C  83 23 06 34 */	lwz r25, 0x634(r3)
/* 800433F0 0003F050  83 03 06 38 */	lwz r24, 0x638(r3)
/* 800433F4 0003F054  81 83 06 3C */	lwz r12, 0x63c(r3)
/* 800433F8 0003F058  81 63 06 40 */	lwz r11, 0x640(r3)
/* 800433FC 0003F05C  81 43 06 44 */	lwz r10, 0x644(r3)
/* 80043400 0003F060  81 23 06 48 */	lwz r9, 0x648(r3)
/* 80043404 0003F064  80 03 06 4C */	lwz r0, 0x64c(r3)
/* 80043408 0003F068  9B C3 05 60 */	stb r30, 0x560(r3)
/* 8004340C 0003F06C  93 A3 05 64 */	stw r29, 0x564(r3)
/* 80043410 0003F070  D3 C3 05 68 */	stfs f30, 0x568(r3)
/* 80043414 0003F074  D3 A3 05 6C */	stfs f29, 0x56c(r3)
/* 80043418 0003F078  93 83 05 70 */	stw r28, 0x570(r3)
/* 8004341C 0003F07C  D3 83 05 74 */	stfs f28, 0x574(r3)
/* 80043420 0003F080  D3 63 05 78 */	stfs f27, 0x578(r3)
/* 80043424 0003F084  D3 43 05 7C */	stfs f26, 0x57c(r3)
/* 80043428 0003F088  D1 A3 05 80 */	stfs f13, 0x580(r3)
/* 8004342C 0003F08C  D1 83 05 84 */	stfs f12, 0x584(r3)
/* 80043430 0003F090  D1 63 05 88 */	stfs f11, 0x588(r3)
/* 80043434 0003F094  D1 43 05 8C */	stfs f10, 0x58c(r3)
/* 80043438 0003F098  D1 23 05 90 */	stfs f9, 0x590(r3)
/* 8004343C 0003F09C  D1 03 05 94 */	stfs f8, 0x594(r3)
/* 80043440 0003F0A0  D0 E3 05 98 */	stfs f7, 0x598(r3)
/* 80043444 0003F0A4  D0 C3 05 9C */	stfs f6, 0x59c(r3)
/* 80043448 0003F0A8  D0 A3 05 A0 */	stfs f5, 0x5a0(r3)
/* 8004344C 0003F0AC  D0 83 05 A4 */	stfs f4, 0x5a4(r3)
/* 80043450 0003F0B0  D0 63 05 A8 */	stfs f3, 0x5a8(r3)
/* 80043454 0003F0B4  D0 43 05 AC */	stfs f2, 0x5ac(r3)
/* 80043458 0003F0B8  D0 03 05 B0 */	stfs f0, 0x5b0(r3)
/* 8004345C 0003F0BC  93 63 05 B4 */	stw r27, 0x5b4(r3)
/* 80043460 0003F0C0  93 43 05 B8 */	stw r26, 0x5b8(r3)
/* 80043464 0003F0C4  93 23 05 BC */	stw r25, 0x5bc(r3)
/* 80043468 0003F0C8  93 03 05 C0 */	stw r24, 0x5c0(r3)
/* 8004346C 0003F0CC  91 83 05 C4 */	stw r12, 0x5c4(r3)
/* 80043470 0003F0D0  91 63 05 C8 */	stw r11, 0x5c8(r3)
/* 80043474 0003F0D4  91 43 05 CC */	stw r10, 0x5cc(r3)
/* 80043478 0003F0D8  91 23 05 D0 */	stw r9, 0x5d0(r3)
/* 8004347C 0003F0DC  90 03 05 D4 */	stw r0, 0x5d4(r3)
/* 80043480 0003F0E0  48 00 00 F4 */	b lbl_80043574
lbl_80043484:
/* 80043484 0003F0E4  8B 03 05 60 */	lbz r24, 0x560(r3)
/* 80043488 0003F0E8  83 23 05 64 */	lwz r25, 0x564(r3)
/* 8004348C 0003F0EC  C3 43 05 68 */	lfs f26, 0x568(r3)
/* 80043490 0003F0F0  C3 63 05 6C */	lfs f27, 0x56c(r3)
/* 80043494 0003F0F4  83 43 05 70 */	lwz r26, 0x570(r3)
/* 80043498 0003F0F8  C3 83 05 74 */	lfs f28, 0x574(r3)
/* 8004349C 0003F0FC  C3 A3 05 78 */	lfs f29, 0x578(r3)
/* 800434A0 0003F100  C3 C3 05 7C */	lfs f30, 0x57c(r3)
/* 800434A4 0003F104  C1 A3 05 80 */	lfs f13, 0x580(r3)
/* 800434A8 0003F108  C1 83 05 84 */	lfs f12, 0x584(r3)
/* 800434AC 0003F10C  C1 63 05 88 */	lfs f11, 0x588(r3)
/* 800434B0 0003F110  C1 43 05 8C */	lfs f10, 0x58c(r3)
/* 800434B4 0003F114  C1 23 05 90 */	lfs f9, 0x590(r3)
/* 800434B8 0003F118  C1 03 05 94 */	lfs f8, 0x594(r3)
/* 800434BC 0003F11C  C0 E3 05 98 */	lfs f7, 0x598(r3)
/* 800434C0 0003F120  C0 C3 05 9C */	lfs f6, 0x59c(r3)
/* 800434C4 0003F124  C0 A3 05 A0 */	lfs f5, 0x5a0(r3)
/* 800434C8 0003F128  C0 83 05 A4 */	lfs f4, 0x5a4(r3)
/* 800434CC 0003F12C  C0 63 05 A8 */	lfs f3, 0x5a8(r3)
/* 800434D0 0003F130  C0 43 05 AC */	lfs f2, 0x5ac(r3)
/* 800434D4 0003F134  C0 03 05 B0 */	lfs f0, 0x5b0(r3)
/* 800434D8 0003F138  83 63 05 B4 */	lwz r27, 0x5b4(r3)
/* 800434DC 0003F13C  83 83 05 B8 */	lwz r28, 0x5b8(r3)
/* 800434E0 0003F140  83 A3 05 BC */	lwz r29, 0x5bc(r3)
/* 800434E4 0003F144  83 C3 05 C0 */	lwz r30, 0x5c0(r3)
/* 800434E8 0003F148  81 83 05 C4 */	lwz r12, 0x5c4(r3)
/* 800434EC 0003F14C  81 63 05 C8 */	lwz r11, 0x5c8(r3)
/* 800434F0 0003F150  81 43 05 CC */	lwz r10, 0x5cc(r3)
/* 800434F4 0003F154  81 23 05 D0 */	lwz r9, 0x5d0(r3)
/* 800434F8 0003F158  80 03 05 D4 */	lwz r0, 0x5d4(r3)
/* 800434FC 0003F15C  9B 03 05 D8 */	stb r24, 0x5d8(r3)
/* 80043500 0003F160  93 23 05 DC */	stw r25, 0x5dc(r3)
/* 80043504 0003F164  D3 43 05 E0 */	stfs f26, 0x5e0(r3)
/* 80043508 0003F168  D3 63 05 E4 */	stfs f27, 0x5e4(r3)
/* 8004350C 0003F16C  93 43 05 E8 */	stw r26, 0x5e8(r3)
/* 80043510 0003F170  D3 83 05 EC */	stfs f28, 0x5ec(r3)
/* 80043514 0003F174  D3 A3 05 F0 */	stfs f29, 0x5f0(r3)
/* 80043518 0003F178  D3 C3 05 F4 */	stfs f30, 0x5f4(r3)
/* 8004351C 0003F17C  D1 A3 05 F8 */	stfs f13, 0x5f8(r3)
/* 80043520 0003F180  D1 83 05 FC */	stfs f12, 0x5fc(r3)
/* 80043524 0003F184  D1 63 06 00 */	stfs f11, 0x600(r3)
/* 80043528 0003F188  D1 43 06 04 */	stfs f10, 0x604(r3)
/* 8004352C 0003F18C  D1 23 06 08 */	stfs f9, 0x608(r3)
/* 80043530 0003F190  D1 03 06 0C */	stfs f8, 0x60c(r3)
/* 80043534 0003F194  D0 E3 06 10 */	stfs f7, 0x610(r3)
/* 80043538 0003F198  D0 C3 06 14 */	stfs f6, 0x614(r3)
/* 8004353C 0003F19C  D0 A3 06 18 */	stfs f5, 0x618(r3)
/* 80043540 0003F1A0  D0 83 06 1C */	stfs f4, 0x61c(r3)
/* 80043544 0003F1A4  D0 63 06 20 */	stfs f3, 0x620(r3)
/* 80043548 0003F1A8  D0 43 06 24 */	stfs f2, 0x624(r3)
/* 8004354C 0003F1AC  D0 03 06 28 */	stfs f0, 0x628(r3)
/* 80043550 0003F1B0  93 63 06 2C */	stw r27, 0x62c(r3)
/* 80043554 0003F1B4  93 83 06 30 */	stw r28, 0x630(r3)
/* 80043558 0003F1B8  93 A3 06 34 */	stw r29, 0x634(r3)
/* 8004355C 0003F1BC  93 C3 06 38 */	stw r30, 0x638(r3)
/* 80043560 0003F1C0  91 83 06 3C */	stw r12, 0x63c(r3)
/* 80043564 0003F1C4  91 63 06 40 */	stw r11, 0x640(r3)
/* 80043568 0003F1C8  91 43 06 44 */	stw r10, 0x644(r3)
/* 8004356C 0003F1CC  91 23 06 48 */	stw r9, 0x648(r3)
/* 80043570 0003F1D0  90 03 06 4C */	stw r0, 0x64c(r3)
lbl_80043574:
/* 80043574 0003F1D4  38 63 06 50 */	addi r3, r3, 0x650
/* 80043578 0003F1D8  4B FF D5 C1 */	bl func_80040B38
/* 8004357C 0003F1DC  80 1F 06 D0 */	lwz r0, 0x6d0(r31)
/* 80043580 0003F1E0  38 7F 06 50 */	addi r3, r31, 0x650
/* 80043584 0003F1E4  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 80043588 0003F1E8  38 81 00 08 */	addi r4, r1, 8
/* 8004358C 0003F1EC  60 00 00 01 */	ori r0, r0, 1
/* 80043590 0003F1F0  D3 FF 06 D4 */	stfs f31, 0x6d4(r31)
/* 80043594 0003F1F4  C0 1F 05 74 */	lfs f0, 0x574(r31)
/* 80043598 0003F1F8  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 8004359C 0003F1FC  D0 3F 06 D8 */	stfs f1, 0x6d8(r31)
/* 800435A0 0003F200  D0 01 00 08 */	stfs f0, 8(r1)
/* 800435A4 0003F204  C0 1F 05 78 */	lfs f0, 0x578(r31)
/* 800435A8 0003F208  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 800435AC 0003F20C  C0 1F 05 7C */	lfs f0, 0x57c(r31)
/* 800435B0 0003F210  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 800435B4 0003F214  4B FF D3 75 */	bl func_80040928
lbl_800435B8:
/* 800435B8 0003F218  80 7F 04 BC */	lwz r3, 0x4bc(r31)
/* 800435BC 0003F21C  38 00 00 01 */	li r0, 1
/* 800435C0 0003F220  98 1F 00 02 */	stb r0, 2(r31)
/* 800435C4 0003F224  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 800435C8 0003F228  41 82 00 0C */	beq lbl_800435D4
/* 800435CC 0003F22C  60 60 00 04 */	ori r0, r3, 4
/* 800435D0 0003F230  90 1F 04 BC */	stw r0, 0x4bc(r31)
lbl_800435D4:
/* 800435D4 0003F234  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 800435D8 0003F238  48 00 CD B1 */	bl func_80050388
/* 800435DC 0003F23C  38 7F 00 DC */	addi r3, r31, 0xdc
/* 800435E0 0003F240  48 00 CD A9 */	bl func_80050388
/* 800435E4 0003F244  38 7F 01 00 */	addi r3, r31, 0x100
/* 800435E8 0003F248  48 00 CD A1 */	bl func_80050388
/* 800435EC 0003F24C  38 00 00 01 */	li r0, 1
/* 800435F0 0003F250  98 1F 00 01 */	stb r0, 1(r31)
/* 800435F4 0003F254  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 800435F8 0003F258  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 800435FC 0003F25C  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 80043600 0003F260  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 80043604 0003F264  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 80043608 0003F268  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 8004360C 0003F26C  E3 81 00 68 */	psq_l f28, 104(r1), 0, qr0
/* 80043610 0003F270  CB 81 00 60 */	lfd f28, 0x60(r1)
/* 80043614 0003F274  E3 61 00 58 */	psq_l f27, 88(r1), 0, qr0
/* 80043618 0003F278  CB 61 00 50 */	lfd f27, 0x50(r1)
/* 8004361C 0003F27C  E3 41 00 48 */	psq_l f26, 72(r1), 0, qr0
/* 80043620 0003F280  CB 41 00 40 */	lfd f26, 0x40(r1)
/* 80043624 0003F284  39 61 00 40 */	addi r11, r1, 0x40
/* 80043628 0003F288  48 18 3B 41 */	bl _restgpr_24
/* 8004362C 0003F28C  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80043630 0003F290  7C 08 03 A6 */	mtlr r0
/* 80043634 0003F294  38 21 00 A0 */	addi r1, r1, 0xa0
/* 80043638 0003F298  4E 80 00 20 */	blr

.global func_8004363C
func_8004363C:
/* 8004363C 0003F29C  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 80043640 0003F2A0  7C 08 02 A6 */	mflr r0
/* 80043644 0003F2A4  90 01 00 94 */	stw r0, 0x94(r1)
/* 80043648 0003F2A8  DB E1 00 80 */	stfd f31, 0x80(r1)
/* 8004364C 0003F2AC  F3 E1 00 88 */	psq_st f31, 136(r1), 0, qr0
/* 80043650 0003F2B0  DB C1 00 70 */	stfd f30, 0x70(r1)
/* 80043654 0003F2B4  F3 C1 00 78 */	psq_st f30, 120(r1), 0, qr0
/* 80043658 0003F2B8  DB A1 00 60 */	stfd f29, 0x60(r1)
/* 8004365C 0003F2BC  F3 A1 00 68 */	psq_st f29, 104(r1), 0, qr0
/* 80043660 0003F2C0  DB 81 00 50 */	stfd f28, 0x50(r1)
/* 80043664 0003F2C4  F3 81 00 58 */	psq_st f28, 88(r1), 0, qr0
/* 80043668 0003F2C8  DB 61 00 40 */	stfd f27, 0x40(r1)
/* 8004366C 0003F2CC  F3 61 00 48 */	psq_st f27, 72(r1), 0, qr0
/* 80043670 0003F2D0  DB 41 00 30 */	stfd f26, 0x30(r1)
/* 80043674 0003F2D4  F3 41 00 38 */	psq_st f26, 56(r1), 0, qr0
/* 80043678 0003F2D8  39 61 00 30 */	addi r11, r1, 0x30
/* 8004367C 0003F2DC  48 18 3A A9 */	bl _savegpr_26
/* 80043680 0003F2E0  C0 02 83 50 */	lfs f0, lbl_80640950-_SDA2_BASE_(r2)
/* 80043684 0003F2E4  FF E0 10 90 */	fmr f31, f2
/* 80043688 0003F2E8  7C 7F 1B 78 */	mr r31, r3
/* 8004368C 0003F2EC  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80043690 0003F2F0  4C 40 13 82 */	cror 2, 0, 2
/* 80043694 0003F2F4  40 82 00 28 */	bne lbl_800436BC
/* 80043698 0003F2F8  7C C8 33 78 */	mr r8, r6
/* 8004369C 0003F2FC  38 C0 00 00 */	li r6, 0
/* 800436A0 0003F300  38 E0 00 00 */	li r7, 0
/* 800436A4 0003F304  38 63 05 60 */	addi r3, r3, 0x560
/* 800436A8 0003F308  4B FF D4 91 */	bl func_80040B38
/* 800436AC 0003F30C  80 1F 06 D0 */	lwz r0, 0x6d0(r31)
/* 800436B0 0003F310  54 00 00 3A */	rlwinm r0, r0, 0, 0, 0x1d
/* 800436B4 0003F314  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 800436B8 0003F318  48 00 02 4C */	b lbl_80043904
lbl_800436BC:
/* 800436BC 0003F31C  80 03 06 D0 */	lwz r0, 0x6d0(r3)
/* 800436C0 0003F320  2C 00 00 00 */	cmpwi r0, 0
/* 800436C4 0003F324  41 82 00 F8 */	beq lbl_800437BC
/* 800436C8 0003F328  8B C3 05 D8 */	lbz r30, 0x5d8(r3)
/* 800436CC 0003F32C  83 A3 05 DC */	lwz r29, 0x5dc(r3)
/* 800436D0 0003F330  C3 C3 05 E0 */	lfs f30, 0x5e0(r3)
/* 800436D4 0003F334  C3 A3 05 E4 */	lfs f29, 0x5e4(r3)
/* 800436D8 0003F338  83 83 05 E8 */	lwz r28, 0x5e8(r3)
/* 800436DC 0003F33C  C3 83 05 EC */	lfs f28, 0x5ec(r3)
/* 800436E0 0003F340  C3 63 05 F0 */	lfs f27, 0x5f0(r3)
/* 800436E4 0003F344  C3 43 05 F4 */	lfs f26, 0x5f4(r3)
/* 800436E8 0003F348  C1 A3 05 F8 */	lfs f13, 0x5f8(r3)
/* 800436EC 0003F34C  C1 83 05 FC */	lfs f12, 0x5fc(r3)
/* 800436F0 0003F350  C1 63 06 00 */	lfs f11, 0x600(r3)
/* 800436F4 0003F354  C1 43 06 04 */	lfs f10, 0x604(r3)
/* 800436F8 0003F358  C1 23 06 08 */	lfs f9, 0x608(r3)
/* 800436FC 0003F35C  C1 03 06 0C */	lfs f8, 0x60c(r3)
/* 80043700 0003F360  C0 E3 06 10 */	lfs f7, 0x610(r3)
/* 80043704 0003F364  C0 C3 06 14 */	lfs f6, 0x614(r3)
/* 80043708 0003F368  C0 A3 06 18 */	lfs f5, 0x618(r3)
/* 8004370C 0003F36C  C0 83 06 1C */	lfs f4, 0x61c(r3)
/* 80043710 0003F370  C0 63 06 20 */	lfs f3, 0x620(r3)
/* 80043714 0003F374  C0 43 06 24 */	lfs f2, 0x624(r3)
/* 80043718 0003F378  C0 03 06 28 */	lfs f0, 0x628(r3)
/* 8004371C 0003F37C  83 63 06 2C */	lwz r27, 0x62c(r3)
/* 80043720 0003F380  83 43 06 30 */	lwz r26, 0x630(r3)
/* 80043724 0003F384  81 83 06 34 */	lwz r12, 0x634(r3)
/* 80043728 0003F388  81 63 06 38 */	lwz r11, 0x638(r3)
/* 8004372C 0003F38C  81 43 06 3C */	lwz r10, 0x63c(r3)
/* 80043730 0003F390  81 23 06 40 */	lwz r9, 0x640(r3)
/* 80043734 0003F394  81 03 06 44 */	lwz r8, 0x644(r3)
/* 80043738 0003F398  80 E3 06 48 */	lwz r7, 0x648(r3)
/* 8004373C 0003F39C  80 03 06 4C */	lwz r0, 0x64c(r3)
/* 80043740 0003F3A0  9B C3 05 60 */	stb r30, 0x560(r3)
/* 80043744 0003F3A4  93 A3 05 64 */	stw r29, 0x564(r3)
/* 80043748 0003F3A8  D3 C3 05 68 */	stfs f30, 0x568(r3)
/* 8004374C 0003F3AC  D3 A3 05 6C */	stfs f29, 0x56c(r3)
/* 80043750 0003F3B0  93 83 05 70 */	stw r28, 0x570(r3)
/* 80043754 0003F3B4  D3 83 05 74 */	stfs f28, 0x574(r3)
/* 80043758 0003F3B8  D3 63 05 78 */	stfs f27, 0x578(r3)
/* 8004375C 0003F3BC  D3 43 05 7C */	stfs f26, 0x57c(r3)
/* 80043760 0003F3C0  D1 A3 05 80 */	stfs f13, 0x580(r3)
/* 80043764 0003F3C4  D1 83 05 84 */	stfs f12, 0x584(r3)
/* 80043768 0003F3C8  D1 63 05 88 */	stfs f11, 0x588(r3)
/* 8004376C 0003F3CC  D1 43 05 8C */	stfs f10, 0x58c(r3)
/* 80043770 0003F3D0  D1 23 05 90 */	stfs f9, 0x590(r3)
/* 80043774 0003F3D4  D1 03 05 94 */	stfs f8, 0x594(r3)
/* 80043778 0003F3D8  D0 E3 05 98 */	stfs f7, 0x598(r3)
/* 8004377C 0003F3DC  D0 C3 05 9C */	stfs f6, 0x59c(r3)
/* 80043780 0003F3E0  D0 A3 05 A0 */	stfs f5, 0x5a0(r3)
/* 80043784 0003F3E4  D0 83 05 A4 */	stfs f4, 0x5a4(r3)
/* 80043788 0003F3E8  D0 63 05 A8 */	stfs f3, 0x5a8(r3)
/* 8004378C 0003F3EC  D0 43 05 AC */	stfs f2, 0x5ac(r3)
/* 80043790 0003F3F0  D0 03 05 B0 */	stfs f0, 0x5b0(r3)
/* 80043794 0003F3F4  93 63 05 B4 */	stw r27, 0x5b4(r3)
/* 80043798 0003F3F8  93 43 05 B8 */	stw r26, 0x5b8(r3)
/* 8004379C 0003F3FC  91 83 05 BC */	stw r12, 0x5bc(r3)
/* 800437A0 0003F400  91 63 05 C0 */	stw r11, 0x5c0(r3)
/* 800437A4 0003F404  91 43 05 C4 */	stw r10, 0x5c4(r3)
/* 800437A8 0003F408  91 23 05 C8 */	stw r9, 0x5c8(r3)
/* 800437AC 0003F40C  91 03 05 CC */	stw r8, 0x5cc(r3)
/* 800437B0 0003F410  90 E3 05 D0 */	stw r7, 0x5d0(r3)
/* 800437B4 0003F414  90 03 05 D4 */	stw r0, 0x5d4(r3)
/* 800437B8 0003F418  48 00 00 F4 */	b lbl_800438AC
lbl_800437BC:
/* 800437BC 0003F41C  8B 43 05 60 */	lbz r26, 0x560(r3)
/* 800437C0 0003F420  83 63 05 64 */	lwz r27, 0x564(r3)
/* 800437C4 0003F424  C3 43 05 68 */	lfs f26, 0x568(r3)
/* 800437C8 0003F428  C3 63 05 6C */	lfs f27, 0x56c(r3)
/* 800437CC 0003F42C  83 83 05 70 */	lwz r28, 0x570(r3)
/* 800437D0 0003F430  C3 83 05 74 */	lfs f28, 0x574(r3)
/* 800437D4 0003F434  C3 A3 05 78 */	lfs f29, 0x578(r3)
/* 800437D8 0003F438  C3 C3 05 7C */	lfs f30, 0x57c(r3)
/* 800437DC 0003F43C  C1 A3 05 80 */	lfs f13, 0x580(r3)
/* 800437E0 0003F440  C1 83 05 84 */	lfs f12, 0x584(r3)
/* 800437E4 0003F444  C1 63 05 88 */	lfs f11, 0x588(r3)
/* 800437E8 0003F448  C1 43 05 8C */	lfs f10, 0x58c(r3)
/* 800437EC 0003F44C  C1 23 05 90 */	lfs f9, 0x590(r3)
/* 800437F0 0003F450  C1 03 05 94 */	lfs f8, 0x594(r3)
/* 800437F4 0003F454  C0 E3 05 98 */	lfs f7, 0x598(r3)
/* 800437F8 0003F458  C0 C3 05 9C */	lfs f6, 0x59c(r3)
/* 800437FC 0003F45C  C0 A3 05 A0 */	lfs f5, 0x5a0(r3)
/* 80043800 0003F460  C0 83 05 A4 */	lfs f4, 0x5a4(r3)
/* 80043804 0003F464  C0 63 05 A8 */	lfs f3, 0x5a8(r3)
/* 80043808 0003F468  C0 43 05 AC */	lfs f2, 0x5ac(r3)
/* 8004380C 0003F46C  C0 03 05 B0 */	lfs f0, 0x5b0(r3)
/* 80043810 0003F470  83 A3 05 B4 */	lwz r29, 0x5b4(r3)
/* 80043814 0003F474  83 C3 05 B8 */	lwz r30, 0x5b8(r3)
/* 80043818 0003F478  81 83 05 BC */	lwz r12, 0x5bc(r3)
/* 8004381C 0003F47C  81 63 05 C0 */	lwz r11, 0x5c0(r3)
/* 80043820 0003F480  81 43 05 C4 */	lwz r10, 0x5c4(r3)
/* 80043824 0003F484  81 23 05 C8 */	lwz r9, 0x5c8(r3)
/* 80043828 0003F488  81 03 05 CC */	lwz r8, 0x5cc(r3)
/* 8004382C 0003F48C  80 E3 05 D0 */	lwz r7, 0x5d0(r3)
/* 80043830 0003F490  80 03 05 D4 */	lwz r0, 0x5d4(r3)
/* 80043834 0003F494  9B 43 05 D8 */	stb r26, 0x5d8(r3)
/* 80043838 0003F498  93 63 05 DC */	stw r27, 0x5dc(r3)
/* 8004383C 0003F49C  D3 43 05 E0 */	stfs f26, 0x5e0(r3)
/* 80043840 0003F4A0  D3 63 05 E4 */	stfs f27, 0x5e4(r3)
/* 80043844 0003F4A4  93 83 05 E8 */	stw r28, 0x5e8(r3)
/* 80043848 0003F4A8  D3 83 05 EC */	stfs f28, 0x5ec(r3)
/* 8004384C 0003F4AC  D3 A3 05 F0 */	stfs f29, 0x5f0(r3)
/* 80043850 0003F4B0  D3 C3 05 F4 */	stfs f30, 0x5f4(r3)
/* 80043854 0003F4B4  D1 A3 05 F8 */	stfs f13, 0x5f8(r3)
/* 80043858 0003F4B8  D1 83 05 FC */	stfs f12, 0x5fc(r3)
/* 8004385C 0003F4BC  D1 63 06 00 */	stfs f11, 0x600(r3)
/* 80043860 0003F4C0  D1 43 06 04 */	stfs f10, 0x604(r3)
/* 80043864 0003F4C4  D1 23 06 08 */	stfs f9, 0x608(r3)
/* 80043868 0003F4C8  D1 03 06 0C */	stfs f8, 0x60c(r3)
/* 8004386C 0003F4CC  D0 E3 06 10 */	stfs f7, 0x610(r3)
/* 80043870 0003F4D0  D0 C3 06 14 */	stfs f6, 0x614(r3)
/* 80043874 0003F4D4  D0 A3 06 18 */	stfs f5, 0x618(r3)
/* 80043878 0003F4D8  D0 83 06 1C */	stfs f4, 0x61c(r3)
/* 8004387C 0003F4DC  D0 63 06 20 */	stfs f3, 0x620(r3)
/* 80043880 0003F4E0  D0 43 06 24 */	stfs f2, 0x624(r3)
/* 80043884 0003F4E4  D0 03 06 28 */	stfs f0, 0x628(r3)
/* 80043888 0003F4E8  93 A3 06 2C */	stw r29, 0x62c(r3)
/* 8004388C 0003F4EC  93 C3 06 30 */	stw r30, 0x630(r3)
/* 80043890 0003F4F0  91 83 06 34 */	stw r12, 0x634(r3)
/* 80043894 0003F4F4  91 63 06 38 */	stw r11, 0x638(r3)
/* 80043898 0003F4F8  91 43 06 3C */	stw r10, 0x63c(r3)
/* 8004389C 0003F4FC  91 23 06 40 */	stw r9, 0x640(r3)
/* 800438A0 0003F500  91 03 06 44 */	stw r8, 0x644(r3)
/* 800438A4 0003F504  90 E3 06 48 */	stw r7, 0x648(r3)
/* 800438A8 0003F508  90 03 06 4C */	stw r0, 0x64c(r3)
lbl_800438AC:
/* 800438AC 0003F50C  7C C8 33 78 */	mr r8, r6
/* 800438B0 0003F510  38 C0 00 00 */	li r6, 0
/* 800438B4 0003F514  38 E0 00 00 */	li r7, 0
/* 800438B8 0003F518  38 63 06 50 */	addi r3, r3, 0x650
/* 800438BC 0003F51C  4B FF D2 7D */	bl func_80040B38
/* 800438C0 0003F520  80 1F 06 D0 */	lwz r0, 0x6d0(r31)
/* 800438C4 0003F524  38 7F 06 50 */	addi r3, r31, 0x650
/* 800438C8 0003F528  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 800438CC 0003F52C  38 81 00 08 */	addi r4, r1, 8
/* 800438D0 0003F530  60 00 00 02 */	ori r0, r0, 2
/* 800438D4 0003F534  D3 FF 06 D4 */	stfs f31, 0x6d4(r31)
/* 800438D8 0003F538  C0 1F 05 74 */	lfs f0, 0x574(r31)
/* 800438DC 0003F53C  90 1F 06 D0 */	stw r0, 0x6d0(r31)
/* 800438E0 0003F540  D0 3F 06 D8 */	stfs f1, 0x6d8(r31)
/* 800438E4 0003F544  D0 01 00 08 */	stfs f0, 8(r1)
/* 800438E8 0003F548  C0 1F 05 78 */	lfs f0, 0x578(r31)
/* 800438EC 0003F54C  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 800438F0 0003F550  C0 1F 05 7C */	lfs f0, 0x57c(r31)
/* 800438F4 0003F554  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 800438F8 0003F558  4B FF D0 31 */	bl func_80040928
/* 800438FC 0003F55C  38 7F 06 50 */	addi r3, r31, 0x650
/* 80043900 0003F560  4B FF D0 51 */	bl dGeomEnable
lbl_80043904:
/* 80043904 0003F564  80 7F 04 BC */	lwz r3, 0x4bc(r31)
/* 80043908 0003F568  38 00 00 01 */	li r0, 1
/* 8004390C 0003F56C  98 1F 00 02 */	stb r0, 2(r31)
/* 80043910 0003F570  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 80043914 0003F574  41 82 00 0C */	beq lbl_80043920
/* 80043918 0003F578  60 60 00 04 */	ori r0, r3, 4
/* 8004391C 0003F57C  90 1F 04 BC */	stw r0, 0x4bc(r31)
lbl_80043920:
/* 80043920 0003F580  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 80043924 0003F584  48 00 CA 65 */	bl func_80050388
/* 80043928 0003F588  38 7F 00 DC */	addi r3, r31, 0xdc
/* 8004392C 0003F58C  48 00 CA 5D */	bl func_80050388
/* 80043930 0003F590  38 7F 01 00 */	addi r3, r31, 0x100
/* 80043934 0003F594  48 00 CA 55 */	bl func_80050388
/* 80043938 0003F598  38 00 00 01 */	li r0, 1
/* 8004393C 0003F59C  98 1F 00 01 */	stb r0, 1(r31)
/* 80043940 0003F5A0  E3 E1 00 88 */	psq_l f31, 136(r1), 0, qr0
/* 80043944 0003F5A4  CB E1 00 80 */	lfd f31, 0x80(r1)
/* 80043948 0003F5A8  E3 C1 00 78 */	psq_l f30, 120(r1), 0, qr0
/* 8004394C 0003F5AC  CB C1 00 70 */	lfd f30, 0x70(r1)
/* 80043950 0003F5B0  E3 A1 00 68 */	psq_l f29, 104(r1), 0, qr0
/* 80043954 0003F5B4  CB A1 00 60 */	lfd f29, 0x60(r1)
/* 80043958 0003F5B8  E3 81 00 58 */	psq_l f28, 88(r1), 0, qr0
/* 8004395C 0003F5BC  CB 81 00 50 */	lfd f28, 0x50(r1)
/* 80043960 0003F5C0  E3 61 00 48 */	psq_l f27, 72(r1), 0, qr0
/* 80043964 0003F5C4  CB 61 00 40 */	lfd f27, 0x40(r1)
/* 80043968 0003F5C8  E3 41 00 38 */	psq_l f26, 56(r1), 0, qr0
/* 8004396C 0003F5CC  CB 41 00 30 */	lfd f26, 0x30(r1)
/* 80043970 0003F5D0  39 61 00 30 */	addi r11, r1, 0x30
/* 80043974 0003F5D4  48 18 37 FD */	bl _restgpr_26
/* 80043978 0003F5D8  80 01 00 94 */	lwz r0, 0x94(r1)
/* 8004397C 0003F5DC  7C 08 03 A6 */	mtlr r0
/* 80043980 0003F5E0  38 21 00 90 */	addi r1, r1, 0x90
/* 80043984 0003F5E4  4E 80 00 20 */	blr

.global func_80043988
func_80043988:
/* 80043988 0003F5E8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004398C 0003F5EC  7C 08 02 A6 */	mflr r0
/* 80043990 0003F5F0  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 80043994 0003F5F4  38 80 00 00 */	li r4, 0
/* 80043998 0003F5F8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004399C 0003F5FC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800439A0 0003F600  7C 7F 1B 78 */	mr r31, r3
/* 800439A4 0003F604  38 63 05 60 */	addi r3, r3, 0x560
/* 800439A8 0003F608  D0 01 00 08 */	stfs f0, 8(r1)
/* 800439AC 0003F60C  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 800439B0 0003F610  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 800439B4 0003F614  4B FF D1 F1 */	bl func_80040BA4
/* 800439B8 0003F618  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 800439BC 0003F61C  38 7F 05 60 */	addi r3, r31, 0x560
/* 800439C0 0003F620  39 01 00 08 */	addi r8, r1, 8
/* 800439C4 0003F624  38 80 00 00 */	li r4, 0
/* 800439C8 0003F628  38 A0 00 00 */	li r5, 0
/* 800439CC 0003F62C  38 C0 00 00 */	li r6, 0
/* 800439D0 0003F630  38 E0 00 00 */	li r7, 0
/* 800439D4 0003F634  4B FF D1 65 */	bl func_80040B38
/* 800439D8 0003F638  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800439DC 0003F63C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800439E0 0003F640  7C 08 03 A6 */	mtlr r0
/* 800439E4 0003F644  38 21 00 20 */	addi r1, r1, 0x20
/* 800439E8 0003F648  4E 80 00 20 */	blr

.global func_800439EC
func_800439EC:
/* 800439EC 0003F64C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800439F0 0003F650  7C 08 02 A6 */	mflr r0
/* 800439F4 0003F654  90 01 00 44 */	stw r0, 0x44(r1)
/* 800439F8 0003F658  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 800439FC 0003F65C  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80043A00 0003F660  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80043A04 0003F664  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80043A08 0003F668  DB A1 00 10 */	stfd f29, 0x10(r1)
/* 80043A0C 0003F66C  F3 A1 00 18 */	psq_st f29, 24(r1), 0, qr0
/* 80043A10 0003F670  2C 04 00 00 */	cmpwi r4, 0
/* 80043A14 0003F674  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80043A18 0003F678  7C 7F 1B 78 */	mr r31, r3
/* 80043A1C 0003F67C  40 82 00 0C */	bne lbl_80043A28
/* 80043A20 0003F680  C0 23 06 C8 */	lfs f1, 0x6c8(r3)
/* 80043A24 0003F684  48 00 00 C0 */	b lbl_80043AE4
lbl_80043A28:
/* 80043A28 0003F688  2C 05 00 02 */	cmpwi r5, 2
/* 80043A2C 0003F68C  41 82 00 4C */	beq lbl_80043A78
/* 80043A30 0003F690  40 80 00 14 */	bge lbl_80043A44
/* 80043A34 0003F694  2C 05 00 00 */	cmpwi r5, 0
/* 80043A38 0003F698  41 82 00 18 */	beq lbl_80043A50
/* 80043A3C 0003F69C  40 80 00 28 */	bge lbl_80043A64
/* 80043A40 0003F6A0  48 00 00 58 */	b lbl_80043A98
lbl_80043A44:
/* 80043A44 0003F6A4  2C 05 00 04 */	cmpwi r5, 4
/* 80043A48 0003F6A8  40 80 00 50 */	bge lbl_80043A98
/* 80043A4C 0003F6AC  48 00 00 44 */	b lbl_80043A90
lbl_80043A50:
/* 80043A50 0003F6B0  7C 83 23 78 */	mr r3, r4
/* 80043A54 0003F6B4  38 80 00 00 */	li r4, 0
/* 80043A58 0003F6B8  4B FF 6B 95 */	bl func_8003A5EC
/* 80043A5C 0003F6BC  FF C0 08 90 */	fmr f30, f1
/* 80043A60 0003F6C0  48 00 00 38 */	b lbl_80043A98
lbl_80043A64:
/* 80043A64 0003F6C4  7C 83 23 78 */	mr r3, r4
/* 80043A68 0003F6C8  38 80 00 01 */	li r4, 1
/* 80043A6C 0003F6CC  4B FF 6B 81 */	bl func_8003A5EC
/* 80043A70 0003F6D0  FF C0 08 90 */	fmr f30, f1
/* 80043A74 0003F6D4  48 00 00 24 */	b lbl_80043A98
lbl_80043A78:
/* 80043A78 0003F6D8  7C 83 23 78 */	mr r3, r4
/* 80043A7C 0003F6DC  38 80 00 01 */	li r4, 1
/* 80043A80 0003F6E0  4B FF 6B 6D */	bl func_8003A5EC
/* 80043A84 0003F6E4  C0 02 83 54 */	lfs f0, lbl_80640954-_SDA2_BASE_(r2)
/* 80043A88 0003F6E8  EF C0 00 72 */	fmuls f30, f0, f1
/* 80043A8C 0003F6EC  48 00 00 0C */	b lbl_80043A98
lbl_80043A90:
/* 80043A90 0003F6F0  C0 23 06 C8 */	lfs f1, 0x6c8(r3)
/* 80043A94 0003F6F4  48 00 00 50 */	b lbl_80043AE4
lbl_80043A98:
/* 80043A98 0003F6F8  C0 02 83 50 */	lfs f0, lbl_80640950-_SDA2_BASE_(r2)
/* 80043A9C 0003F6FC  FC 1E 00 40 */	fcmpo cr0, f30, f0
/* 80043AA0 0003F700  4C 40 13 82 */	cror 2, 0, 2
/* 80043AA4 0003F704  40 82 00 08 */	bne lbl_80043AAC
/* 80043AA8 0003F708  C3 C2 83 58 */	lfs f30, lbl_80640958-_SDA2_BASE_(r2)
lbl_80043AAC:
/* 80043AAC 0003F70C  C0 5F 04 E0 */	lfs f2, 0x4e0(r31)
/* 80043AB0 0003F710  C0 02 82 B8 */	lfs f0, lbl_806408B8-_SDA2_BASE_(r2)
/* 80043AB4 0003F714  C0 22 83 5C */	lfs f1, lbl_8064095C-_SDA2_BASE_(r2)
/* 80043AB8 0003F718  EC 40 00 B2 */	fmuls f2, f0, f2
/* 80043ABC 0003F71C  C0 02 82 DC */	lfs f0, lbl_806408DC-_SDA2_BASE_(r2)
/* 80043AC0 0003F720  EC 21 00 B2 */	fmuls f1, f1, f2
/* 80043AC4 0003F724  EF A0 08 28 */	fsubs f29, f0, f1
/* 80043AC8 0003F728  48 19 09 BD */	bl sin
/* 80043ACC 0003F72C  FF E0 08 18 */	frsp f31, f1
/* 80043AD0 0003F730  FC 20 E8 90 */	fmr f1, f29
/* 80043AD4 0003F734  48 19 09 B1 */	bl sin
/* 80043AD8 0003F738  FC 00 08 18 */	frsp f0, f1
/* 80043ADC 0003F73C  EC 1E 00 32 */	fmuls f0, f30, f0
/* 80043AE0 0003F740  EC 20 F8 24 */	fdivs f1, f0, f31
lbl_80043AE4:
/* 80043AE4 0003F744  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80043AE8 0003F748  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80043AEC 0003F74C  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80043AF0 0003F750  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80043AF4 0003F754  E3 A1 00 18 */	psq_l f29, 24(r1), 0, qr0
/* 80043AF8 0003F758  CB A1 00 10 */	lfd f29, 0x10(r1)
/* 80043AFC 0003F75C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80043B00 0003F760  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80043B04 0003F764  7C 08 03 A6 */	mtlr r0
/* 80043B08 0003F768  38 21 00 40 */	addi r1, r1, 0x40
/* 80043B0C 0003F76C  4E 80 00 20 */	blr

.global func_80043B10
func_80043B10:
/* 80043B10 0003F770  2C 04 00 02 */	cmpwi r4, 2
/* 80043B14 0003F774  41 82 00 34 */	beq lbl_80043B48
/* 80043B18 0003F778  40 80 00 14 */	bge lbl_80043B2C
/* 80043B1C 0003F77C  2C 04 00 00 */	cmpwi r4, 0
/* 80043B20 0003F780  41 82 00 18 */	beq lbl_80043B38
/* 80043B24 0003F784  40 80 00 1C */	bge lbl_80043B40
/* 80043B28 0003F788  48 00 00 30 */	b lbl_80043B58
lbl_80043B2C:
/* 80043B2C 0003F78C  2C 04 00 04 */	cmpwi r4, 4
/* 80043B30 0003F790  40 80 00 28 */	bge lbl_80043B58
/* 80043B34 0003F794  48 00 00 1C */	b lbl_80043B50
lbl_80043B38:
/* 80043B38 0003F798  C0 22 83 60 */	lfs f1, lbl_80640960-_SDA2_BASE_(r2)
/* 80043B3C 0003F79C  4E 80 00 20 */	blr
lbl_80043B40:
/* 80043B40 0003F7A0  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 80043B44 0003F7A4  4E 80 00 20 */	blr
lbl_80043B48:
/* 80043B48 0003F7A8  C0 22 83 64 */	lfs f1, lbl_80640964-_SDA2_BASE_(r2)
/* 80043B4C 0003F7AC  4E 80 00 20 */	blr
lbl_80043B50:
/* 80043B50 0003F7B0  C0 22 83 68 */	lfs f1, lbl_80640968-_SDA2_BASE_(r2)
/* 80043B54 0003F7B4  4E 80 00 20 */	blr
lbl_80043B58:
/* 80043B58 0003F7B8  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 80043B5C 0003F7BC  4E 80 00 20 */	blr

.global func_80043B60
func_80043B60:
/* 80043B60 0003F7C0  D0 23 04 E4 */	stfs f1, 0x4e4(r3)
/* 80043B64 0003F7C4  4E 80 00 20 */	blr

.global func_80043B68
func_80043B68:
/* 80043B68 0003F7C8  94 21 FE 60 */	stwu r1, -0x1a0(r1)
/* 80043B6C 0003F7CC  7C 08 02 A6 */	mflr r0
/* 80043B70 0003F7D0  90 01 01 A4 */	stw r0, 0x1a4(r1)
/* 80043B74 0003F7D4  DB E1 01 90 */	stfd f31, 0x190(r1)
/* 80043B78 0003F7D8  F3 E1 01 98 */	psq_st f31, 408(r1), 0, qr0
/* 80043B7C 0003F7DC  DB C1 01 80 */	stfd f30, 0x180(r1)
/* 80043B80 0003F7E0  F3 C1 01 88 */	psq_st f30, 392(r1), 0, qr0
/* 80043B84 0003F7E4  DB A1 01 70 */	stfd f29, 0x170(r1)
/* 80043B88 0003F7E8  F3 A1 01 78 */	psq_st f29, 376(r1), 0, qr0
/* 80043B8C 0003F7EC  DB 81 01 60 */	stfd f28, 0x160(r1)
/* 80043B90 0003F7F0  F3 81 01 68 */	psq_st f28, 360(r1), 0, qr0
/* 80043B94 0003F7F4  DB 61 01 50 */	stfd f27, 0x150(r1)
/* 80043B98 0003F7F8  F3 61 01 58 */	psq_st f27, 344(r1), 0, qr0
/* 80043B9C 0003F7FC  FF E0 08 90 */	fmr f31, f1
/* 80043BA0 0003F800  93 E1 01 4C */	stw r31, 0x14c(r1)
/* 80043BA4 0003F804  93 C1 01 48 */	stw r30, 0x148(r1)
/* 80043BA8 0003F808  7C 7E 1B 78 */	mr r30, r3
/* 80043BAC 0003F80C  7F C4 F3 78 */	mr r4, r30
/* 80043BB0 0003F810  38 61 00 C8 */	addi r3, r1, 0xc8
/* 80043BB4 0003F814  93 A1 01 44 */	stw r29, 0x144(r1)
/* 80043BB8 0003F818  93 81 01 40 */	stw r28, 0x140(r1)
/* 80043BBC 0003F81C  4B FF C8 ED */	bl func_800404A8
/* 80043BC0 0003F820  88 1E 00 00 */	lbz r0, 0(r30)
/* 80043BC4 0003F824  2C 00 00 00 */	cmpwi r0, 0
/* 80043BC8 0003F828  41 82 08 8C */	beq lbl_80044454
/* 80043BCC 0003F82C  38 7E 05 60 */	addi r3, r30, 0x560
/* 80043BD0 0003F830  4B FF C9 B1 */	bl func_80040580
/* 80043BD4 0003F834  80 1E 06 D0 */	lwz r0, 0x6d0(r30)
/* 80043BD8 0003F838  2C 00 00 00 */	cmpwi r0, 0
/* 80043BDC 0003F83C  41 82 02 44 */	beq lbl_80043E20
/* 80043BE0 0003F840  38 7E 06 50 */	addi r3, r30, 0x650
/* 80043BE4 0003F844  4B FF C9 9D */	bl func_80040580
/* 80043BE8 0003F848  C0 3E 06 D8 */	lfs f1, 0x6d8(r30)
/* 80043BEC 0003F84C  C0 1E 06 D4 */	lfs f0, 0x6d4(r30)
/* 80043BF0 0003F850  EC 21 F8 2A */	fadds f1, f1, f31
/* 80043BF4 0003F854  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80043BF8 0003F858  D0 3E 06 D8 */	stfs f1, 0x6d8(r30)
/* 80043BFC 0003F85C  4C 41 13 82 */	cror 2, 1, 2
/* 80043C00 0003F860  40 82 00 10 */	bne lbl_80043C10
/* 80043C04 0003F864  38 00 00 00 */	li r0, 0
/* 80043C08 0003F868  D0 1E 06 D8 */	stfs f0, 0x6d8(r30)
/* 80043C0C 0003F86C  90 1E 06 D0 */	stw r0, 0x6d0(r30)
lbl_80043C10:
/* 80043C10 0003F870  C0 3E 06 D8 */	lfs f1, 0x6d8(r30)
/* 80043C14 0003F874  38 61 00 C8 */	addi r3, r1, 0xc8
/* 80043C18 0003F878  C0 1E 06 D4 */	lfs f0, 0x6d4(r30)
/* 80043C1C 0003F87C  38 9E 05 60 */	addi r4, r30, 0x560
/* 80043C20 0003F880  38 BE 06 50 */	addi r5, r30, 0x650
/* 80043C24 0003F884  EC 21 00 24 */	fdivs f1, f1, f0
/* 80043C28 0003F888  4B FF D0 85 */	bl func_80040CAC
/* 80043C2C 0003F88C  80 1E 06 D0 */	lwz r0, 0x6d0(r30)
/* 80043C30 0003F890  2C 00 00 00 */	cmpwi r0, 0
/* 80043C34 0003F894  40 82 00 F4 */	bne lbl_80043D28
/* 80043C38 0003F898  8B FE 06 50 */	lbz r31, 0x650(r30)
/* 80043C3C 0003F89C  81 9E 06 54 */	lwz r12, 0x654(r30)
/* 80043C40 0003F8A0  C3 7E 06 58 */	lfs f27, 0x658(r30)
/* 80043C44 0003F8A4  C3 9E 06 5C */	lfs f28, 0x65c(r30)
/* 80043C48 0003F8A8  81 7E 06 60 */	lwz r11, 0x660(r30)
/* 80043C4C 0003F8AC  C3 BE 06 64 */	lfs f29, 0x664(r30)
/* 80043C50 0003F8B0  C3 DE 06 68 */	lfs f30, 0x668(r30)
/* 80043C54 0003F8B4  C1 BE 06 6C */	lfs f13, 0x66c(r30)
/* 80043C58 0003F8B8  C1 9E 06 70 */	lfs f12, 0x670(r30)
/* 80043C5C 0003F8BC  C1 7E 06 74 */	lfs f11, 0x674(r30)
/* 80043C60 0003F8C0  C1 5E 06 78 */	lfs f10, 0x678(r30)
/* 80043C64 0003F8C4  C1 3E 06 7C */	lfs f9, 0x67c(r30)
/* 80043C68 0003F8C8  C1 1E 06 80 */	lfs f8, 0x680(r30)
/* 80043C6C 0003F8CC  C0 FE 06 84 */	lfs f7, 0x684(r30)
/* 80043C70 0003F8D0  C0 DE 06 88 */	lfs f6, 0x688(r30)
/* 80043C74 0003F8D4  C0 BE 06 8C */	lfs f5, 0x68c(r30)
/* 80043C78 0003F8D8  C0 9E 06 90 */	lfs f4, 0x690(r30)
/* 80043C7C 0003F8DC  C0 7E 06 94 */	lfs f3, 0x694(r30)
/* 80043C80 0003F8E0  C0 5E 06 98 */	lfs f2, 0x698(r30)
/* 80043C84 0003F8E4  C0 3E 06 9C */	lfs f1, 0x69c(r30)
/* 80043C88 0003F8E8  C0 1E 06 A0 */	lfs f0, 0x6a0(r30)
/* 80043C8C 0003F8EC  81 5E 06 A4 */	lwz r10, 0x6a4(r30)
/* 80043C90 0003F8F0  81 3E 06 A8 */	lwz r9, 0x6a8(r30)
/* 80043C94 0003F8F4  81 1E 06 AC */	lwz r8, 0x6ac(r30)
/* 80043C98 0003F8F8  80 FE 06 B0 */	lwz r7, 0x6b0(r30)
/* 80043C9C 0003F8FC  80 DE 06 B4 */	lwz r6, 0x6b4(r30)
/* 80043CA0 0003F900  80 BE 06 B8 */	lwz r5, 0x6b8(r30)
/* 80043CA4 0003F904  80 9E 06 BC */	lwz r4, 0x6bc(r30)
/* 80043CA8 0003F908  80 7E 06 C0 */	lwz r3, 0x6c0(r30)
/* 80043CAC 0003F90C  80 1E 06 C4 */	lwz r0, 0x6c4(r30)
/* 80043CB0 0003F910  9B FE 05 60 */	stb r31, 0x560(r30)
/* 80043CB4 0003F914  91 9E 05 64 */	stw r12, 0x564(r30)
/* 80043CB8 0003F918  D3 7E 05 68 */	stfs f27, 0x568(r30)
/* 80043CBC 0003F91C  D3 9E 05 6C */	stfs f28, 0x56c(r30)
/* 80043CC0 0003F920  91 7E 05 70 */	stw r11, 0x570(r30)
/* 80043CC4 0003F924  D3 BE 05 74 */	stfs f29, 0x574(r30)
/* 80043CC8 0003F928  D3 DE 05 78 */	stfs f30, 0x578(r30)
/* 80043CCC 0003F92C  D1 BE 05 7C */	stfs f13, 0x57c(r30)
/* 80043CD0 0003F930  D1 9E 05 80 */	stfs f12, 0x580(r30)
/* 80043CD4 0003F934  D1 7E 05 84 */	stfs f11, 0x584(r30)
/* 80043CD8 0003F938  D1 5E 05 88 */	stfs f10, 0x588(r30)
/* 80043CDC 0003F93C  D1 3E 05 8C */	stfs f9, 0x58c(r30)
/* 80043CE0 0003F940  D1 1E 05 90 */	stfs f8, 0x590(r30)
/* 80043CE4 0003F944  D0 FE 05 94 */	stfs f7, 0x594(r30)
/* 80043CE8 0003F948  D0 DE 05 98 */	stfs f6, 0x598(r30)
/* 80043CEC 0003F94C  D0 BE 05 9C */	stfs f5, 0x59c(r30)
/* 80043CF0 0003F950  D0 9E 05 A0 */	stfs f4, 0x5a0(r30)
/* 80043CF4 0003F954  D0 7E 05 A4 */	stfs f3, 0x5a4(r30)
/* 80043CF8 0003F958  D0 5E 05 A8 */	stfs f2, 0x5a8(r30)
/* 80043CFC 0003F95C  D0 3E 05 AC */	stfs f1, 0x5ac(r30)
/* 80043D00 0003F960  D0 1E 05 B0 */	stfs f0, 0x5b0(r30)
/* 80043D04 0003F964  91 5E 05 B4 */	stw r10, 0x5b4(r30)
/* 80043D08 0003F968  91 3E 05 B8 */	stw r9, 0x5b8(r30)
/* 80043D0C 0003F96C  91 1E 05 BC */	stw r8, 0x5bc(r30)
/* 80043D10 0003F970  90 FE 05 C0 */	stw r7, 0x5c0(r30)
/* 80043D14 0003F974  90 DE 05 C4 */	stw r6, 0x5c4(r30)
/* 80043D18 0003F978  90 BE 05 C8 */	stw r5, 0x5c8(r30)
/* 80043D1C 0003F97C  90 9E 05 CC */	stw r4, 0x5cc(r30)
/* 80043D20 0003F980  90 7E 05 D0 */	stw r3, 0x5d0(r30)
/* 80043D24 0003F984  90 1E 05 D4 */	stw r0, 0x5d4(r30)
lbl_80043D28:
/* 80043D28 0003F988  88 01 00 C8 */	lbz r0, 0xc8(r1)
/* 80043D2C 0003F98C  3B E1 00 C8 */	addi r31, r1, 0xc8
/* 80043D30 0003F990  98 1E 05 D8 */	stb r0, 0x5d8(r30)
/* 80043D34 0003F994  80 01 00 CC */	lwz r0, 0xcc(r1)
/* 80043D38 0003F998  90 1E 05 DC */	stw r0, 0x5dc(r30)
/* 80043D3C 0003F99C  C0 01 00 D0 */	lfs f0, 0xd0(r1)
/* 80043D40 0003F9A0  D0 1E 05 E0 */	stfs f0, 0x5e0(r30)
/* 80043D44 0003F9A4  C0 01 00 D4 */	lfs f0, 0xd4(r1)
/* 80043D48 0003F9A8  D0 1E 05 E4 */	stfs f0, 0x5e4(r30)
/* 80043D4C 0003F9AC  80 01 00 D8 */	lwz r0, 0xd8(r1)
/* 80043D50 0003F9B0  90 1E 05 E8 */	stw r0, 0x5e8(r30)
/* 80043D54 0003F9B4  C0 01 00 DC */	lfs f0, 0xdc(r1)
/* 80043D58 0003F9B8  D0 1E 05 EC */	stfs f0, 0x5ec(r30)
/* 80043D5C 0003F9BC  C0 01 00 E0 */	lfs f0, 0xe0(r1)
/* 80043D60 0003F9C0  D0 1E 05 F0 */	stfs f0, 0x5f0(r30)
/* 80043D64 0003F9C4  C0 01 00 E4 */	lfs f0, 0xe4(r1)
/* 80043D68 0003F9C8  D0 1E 05 F4 */	stfs f0, 0x5f4(r30)
/* 80043D6C 0003F9CC  C0 01 00 E8 */	lfs f0, 0xe8(r1)
/* 80043D70 0003F9D0  D0 1E 05 F8 */	stfs f0, 0x5f8(r30)
/* 80043D74 0003F9D4  C0 01 00 EC */	lfs f0, 0xec(r1)
/* 80043D78 0003F9D8  D0 1E 05 FC */	stfs f0, 0x5fc(r30)
/* 80043D7C 0003F9DC  C0 01 00 F0 */	lfs f0, 0xf0(r1)
/* 80043D80 0003F9E0  D0 1E 06 00 */	stfs f0, 0x600(r30)
/* 80043D84 0003F9E4  C0 01 00 F4 */	lfs f0, 0xf4(r1)
/* 80043D88 0003F9E8  D0 1E 06 04 */	stfs f0, 0x604(r30)
/* 80043D8C 0003F9EC  C0 01 00 F8 */	lfs f0, 0xf8(r1)
/* 80043D90 0003F9F0  D0 1E 06 08 */	stfs f0, 0x608(r30)
/* 80043D94 0003F9F4  C0 01 00 FC */	lfs f0, 0xfc(r1)
/* 80043D98 0003F9F8  D0 1E 06 0C */	stfs f0, 0x60c(r30)
/* 80043D9C 0003F9FC  C0 01 01 00 */	lfs f0, 0x100(r1)
/* 80043DA0 0003FA00  D0 1E 06 10 */	stfs f0, 0x610(r30)
/* 80043DA4 0003FA04  C0 01 01 04 */	lfs f0, 0x104(r1)
/* 80043DA8 0003FA08  D0 1E 06 14 */	stfs f0, 0x614(r30)
/* 80043DAC 0003FA0C  C0 01 01 08 */	lfs f0, 0x108(r1)
/* 80043DB0 0003FA10  D0 1E 06 18 */	stfs f0, 0x618(r30)
/* 80043DB4 0003FA14  C0 01 01 0C */	lfs f0, 0x10c(r1)
/* 80043DB8 0003FA18  D0 1E 06 1C */	stfs f0, 0x61c(r30)
/* 80043DBC 0003FA1C  C0 01 01 10 */	lfs f0, 0x110(r1)
/* 80043DC0 0003FA20  D0 1E 06 20 */	stfs f0, 0x620(r30)
/* 80043DC4 0003FA24  C0 01 01 14 */	lfs f0, 0x114(r1)
/* 80043DC8 0003FA28  D0 1E 06 24 */	stfs f0, 0x624(r30)
/* 80043DCC 0003FA2C  C0 01 01 18 */	lfs f0, 0x118(r1)
/* 80043DD0 0003FA30  D0 1E 06 28 */	stfs f0, 0x628(r30)
/* 80043DD4 0003FA34  80 01 01 1C */	lwz r0, 0x11c(r1)
/* 80043DD8 0003FA38  90 1E 06 2C */	stw r0, 0x62c(r30)
/* 80043DDC 0003FA3C  80 61 01 20 */	lwz r3, 0x120(r1)
/* 80043DE0 0003FA40  80 01 01 24 */	lwz r0, 0x124(r1)
/* 80043DE4 0003FA44  90 7E 06 30 */	stw r3, 0x630(r30)
/* 80043DE8 0003FA48  90 1E 06 34 */	stw r0, 0x634(r30)
/* 80043DEC 0003FA4C  80 61 01 28 */	lwz r3, 0x128(r1)
/* 80043DF0 0003FA50  80 01 01 2C */	lwz r0, 0x12c(r1)
/* 80043DF4 0003FA54  90 7E 06 38 */	stw r3, 0x638(r30)
/* 80043DF8 0003FA58  90 1E 06 3C */	stw r0, 0x63c(r30)
/* 80043DFC 0003FA5C  80 61 01 30 */	lwz r3, 0x130(r1)
/* 80043E00 0003FA60  80 01 01 34 */	lwz r0, 0x134(r1)
/* 80043E04 0003FA64  90 7E 06 40 */	stw r3, 0x640(r30)
/* 80043E08 0003FA68  90 1E 06 44 */	stw r0, 0x644(r30)
/* 80043E0C 0003FA6C  80 61 01 38 */	lwz r3, 0x138(r1)
/* 80043E10 0003FA70  80 01 01 3C */	lwz r0, 0x13c(r1)
/* 80043E14 0003FA74  90 7E 06 48 */	stw r3, 0x648(r30)
/* 80043E18 0003FA78  90 1E 06 4C */	stw r0, 0x64c(r30)
/* 80043E1C 0003FA7C  48 00 00 08 */	b lbl_80043E24
lbl_80043E20:
/* 80043E20 0003FA80  3B FE 05 60 */	addi r31, r30, 0x560
lbl_80043E24:
/* 80043E24 0003FA84  38 7E 04 E8 */	addi r3, r30, 0x4e8
/* 80043E28 0003FA88  4B FF C7 59 */	bl func_80040580
/* 80043E2C 0003FA8C  3B BE 00 04 */	addi r29, r30, 4
/* 80043E30 0003FA90  3B 80 00 00 */	li r28, 0
lbl_80043E34:
/* 80043E34 0003FA94  81 9D 00 20 */	lwz r12, 0x20(r29)
/* 80043E38 0003FA98  FC 20 F8 90 */	fmr f1, f31
/* 80043E3C 0003FA9C  7F A3 EB 78 */	mr r3, r29
/* 80043E40 0003FAA0  81 8C 00 08 */	lwz r12, 8(r12)
/* 80043E44 0003FAA4  7D 89 03 A6 */	mtctr r12
/* 80043E48 0003FAA8  4E 80 04 21 */	bctrl
/* 80043E4C 0003FAAC  3B 9C 00 01 */	addi r28, r28, 1
/* 80043E50 0003FAB0  3B BD 00 24 */	addi r29, r29, 0x24
/* 80043E54 0003FAB4  2C 1C 00 0C */	cmpwi r28, 0xc
/* 80043E58 0003FAB8  41 80 FF DC */	blt lbl_80043E34
/* 80043E5C 0003FABC  3B BE 01 B4 */	addi r29, r30, 0x1b4
/* 80043E60 0003FAC0  3B 80 00 00 */	li r28, 0
lbl_80043E64:
/* 80043E64 0003FAC4  81 9D 00 20 */	lwz r12, 0x20(r29)
/* 80043E68 0003FAC8  FC 20 F8 90 */	fmr f1, f31
/* 80043E6C 0003FACC  7F A3 EB 78 */	mr r3, r29
/* 80043E70 0003FAD0  81 8C 00 08 */	lwz r12, 8(r12)
/* 80043E74 0003FAD4  7D 89 03 A6 */	mtctr r12
/* 80043E78 0003FAD8  4E 80 04 21 */	bctrl
/* 80043E7C 0003FADC  3B 9C 00 01 */	addi r28, r28, 1
/* 80043E80 0003FAE0  3B BD 00 60 */	addi r29, r29, 0x60
/* 80043E84 0003FAE4  2C 1C 00 05 */	cmpwi r28, 5
/* 80043E88 0003FAE8  41 80 FF DC */	blt lbl_80043E64
/* 80043E8C 0003FAEC  80 1E 01 24 */	lwz r0, 0x124(r30)
/* 80043E90 0003FAF0  2C 00 00 00 */	cmpwi r0, 0
/* 80043E94 0003FAF4  40 82 00 1C */	bne lbl_80043EB0
/* 80043E98 0003FAF8  80 1E 01 48 */	lwz r0, 0x148(r30)
/* 80043E9C 0003FAFC  2C 00 00 00 */	cmpwi r0, 0
/* 80043EA0 0003FB00  40 82 00 10 */	bne lbl_80043EB0
/* 80043EA4 0003FB04  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80043EA8 0003FB08  2C 00 00 00 */	cmpwi r0, 0
/* 80043EAC 0003FB0C  41 82 00 B0 */	beq lbl_80043F5C
lbl_80043EB0:
/* 80043EB0 0003FB10  7F C3 F3 78 */	mr r3, r30
/* 80043EB4 0003FB14  7F E4 FB 78 */	mr r4, r31
/* 80043EB8 0003FB18  4B FF D3 71 */	bl func_80041228
/* 80043EBC 0003FB1C  C0 1E 04 FC */	lfs f0, 0x4fc(r30)
/* 80043EC0 0003FB20  38 9E 04 FC */	addi r4, r30, 0x4fc
/* 80043EC4 0003FB24  D0 01 00 B8 */	stfs f0, 0xb8(r1)
/* 80043EC8 0003FB28  C0 1E 05 00 */	lfs f0, 0x500(r30)
/* 80043ECC 0003FB2C  D0 01 00 BC */	stfs f0, 0xbc(r1)
/* 80043ED0 0003FB30  C0 1E 05 04 */	lfs f0, 0x504(r30)
/* 80043ED4 0003FB34  D0 01 00 C0 */	stfs f0, 0xc0(r1)
/* 80043ED8 0003FB38  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80043EDC 0003FB3C  2C 00 00 00 */	cmpwi r0, 0
/* 80043EE0 0003FB40  41 82 00 6C */	beq lbl_80043F4C
/* 80043EE4 0003FB44  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80043EE8 0003FB48  40 82 00 48 */	bne lbl_80043F30
/* 80043EEC 0003FB4C  38 61 00 B8 */	addi r3, r1, 0xb8
/* 80043EF0 0003FB50  48 23 90 E1 */	bl func_8027CFD0
/* 80043EF4 0003FB54  C0 1E 04 D0 */	lfs f0, 0x4d0(r30)
/* 80043EF8 0003FB58  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80043EFC 0003FB5C  40 81 00 1C */	ble lbl_80043F18
/* 80043F00 0003FB60  38 61 00 B8 */	addi r3, r1, 0xb8
/* 80043F04 0003FB64  C0 3E 04 CC */	lfs f1, 0x4cc(r30)
/* 80043F08 0003FB68  7C 65 1B 78 */	mr r5, r3
/* 80043F0C 0003FB6C  38 9E 04 FC */	addi r4, r30, 0x4fc
/* 80043F10 0003FB70  4B FF C1 D9 */	bl func_800400E8
/* 80043F14 0003FB74  48 00 00 1C */	b lbl_80043F30
lbl_80043F18:
/* 80043F18 0003FB78  C0 1E 04 FC */	lfs f0, 0x4fc(r30)
/* 80043F1C 0003FB7C  D0 01 00 B8 */	stfs f0, 0xb8(r1)
/* 80043F20 0003FB80  C0 1E 05 00 */	lfs f0, 0x500(r30)
/* 80043F24 0003FB84  D0 01 00 BC */	stfs f0, 0xbc(r1)
/* 80043F28 0003FB88  C0 1E 05 04 */	lfs f0, 0x504(r30)
/* 80043F2C 0003FB8C  D0 01 00 C0 */	stfs f0, 0xc0(r1)
lbl_80043F30:
/* 80043F30 0003FB90  38 7E 04 E8 */	addi r3, r30, 0x4e8
/* 80043F34 0003FB94  38 81 00 B8 */	addi r4, r1, 0xb8
/* 80043F38 0003FB98  4B FF CC AD */	bl func_80040BE4
/* 80043F3C 0003FB9C  80 1E 04 BC */	lwz r0, 0x4bc(r30)
/* 80043F40 0003FBA0  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80043F44 0003FBA4  90 1E 04 BC */	stw r0, 0x4bc(r30)
/* 80043F48 0003FBA8  48 00 00 34 */	b lbl_80043F7C
lbl_80043F4C:
/* 80043F4C 0003FBAC  38 7E 04 E8 */	addi r3, r30, 0x4e8
/* 80043F50 0003FBB0  38 81 00 B8 */	addi r4, r1, 0xb8
/* 80043F54 0003FBB4  4B FF CC 91 */	bl func_80040BE4
/* 80043F58 0003FBB8  48 00 00 24 */	b lbl_80043F7C
lbl_80043F5C:
/* 80043F5C 0003FBBC  80 1E 00 28 */	lwz r0, 0x28(r30)
/* 80043F60 0003FBC0  2C 00 00 00 */	cmpwi r0, 0
/* 80043F64 0003FBC4  41 82 00 18 */	beq lbl_80043F7C
/* 80043F68 0003FBC8  C0 3E 06 C8 */	lfs f1, 0x6c8(r30)
/* 80043F6C 0003FBCC  7F C3 F3 78 */	mr r3, r30
/* 80043F70 0003FBD0  C0 1E 06 E8 */	lfs f0, 0x6e8(r30)
/* 80043F74 0003FBD4  EC 21 00 2A */	fadds f1, f1, f0
/* 80043F78 0003FBD8  4B FF E6 85 */	bl func_800425FC
lbl_80043F7C:
/* 80043F7C 0003FBDC  80 1E 06 CC */	lwz r0, 0x6cc(r30)
/* 80043F80 0003FBE0  2C 00 00 00 */	cmpwi r0, 0
/* 80043F84 0003FBE4  41 82 04 D0 */	beq lbl_80044454
/* 80043F88 0003FBE8  38 7F 00 14 */	addi r3, r31, 0x14
/* 80043F8C 0003FBEC  38 9E 04 FC */	addi r4, r30, 0x4fc
/* 80043F90 0003FBF0  38 A1 00 38 */	addi r5, r1, 0x38
/* 80043F94 0003FBF4  48 23 8D 55 */	bl func_8027CCE8
/* 80043F98 0003FBF8  C0 81 00 38 */	lfs f4, 0x38(r1)
/* 80043F9C 0003FBFC  C0 22 83 50 */	lfs f1, lbl_80640950-_SDA2_BASE_(r2)
/* 80043FA0 0003FC00  C0 61 00 3C */	lfs f3, 0x3c(r1)
/* 80043FA4 0003FC04  C0 41 00 40 */	lfs f2, 0x40(r1)
/* 80043FA8 0003FC08  FC 04 08 40 */	fcmpo cr0, f4, f1
/* 80043FAC 0003FC0C  D0 81 00 A0 */	stfs f4, 0xa0(r1)
/* 80043FB0 0003FC10  D0 61 00 A4 */	stfs f3, 0xa4(r1)
/* 80043FB4 0003FC14  D0 41 00 A8 */	stfs f2, 0xa8(r1)
/* 80043FB8 0003FC18  40 80 00 30 */	bge lbl_80043FE8
/* 80043FBC 0003FC1C  C0 02 83 6C */	lfs f0, lbl_8064096C-_SDA2_BASE_(r2)
/* 80043FC0 0003FC20  FC 04 00 40 */	fcmpo cr0, f4, f0
/* 80043FC4 0003FC24  40 81 00 24 */	ble lbl_80043FE8
/* 80043FC8 0003FC28  FC 03 08 40 */	fcmpo cr0, f3, f1
/* 80043FCC 0003FC2C  40 80 00 1C */	bge lbl_80043FE8
/* 80043FD0 0003FC30  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80043FD4 0003FC34  40 81 00 14 */	ble lbl_80043FE8
/* 80043FD8 0003FC38  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80043FDC 0003FC3C  40 80 00 0C */	bge lbl_80043FE8
/* 80043FE0 0003FC40  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80043FE4 0003FC44  41 81 00 0C */	bgt lbl_80043FF0
lbl_80043FE8:
/* 80043FE8 0003FC48  38 00 00 00 */	li r0, 0
/* 80043FEC 0003FC4C  48 00 00 08 */	b lbl_80043FF4
lbl_80043FF0:
/* 80043FF0 0003FC50  38 00 00 01 */	li r0, 1
lbl_80043FF4:
/* 80043FF4 0003FC54  2C 00 00 00 */	cmpwi r0, 0
/* 80043FF8 0003FC58  40 82 00 14 */	bne lbl_8004400C
/* 80043FFC 0003FC5C  38 61 00 A0 */	addi r3, r1, 0xa0
/* 80044000 0003FC60  7C 64 1B 78 */	mr r4, r3
/* 80044004 0003FC64  48 23 8D 25 */	bl func_8027CD28
/* 80044008 0003FC68  48 00 00 18 */	b lbl_80044020
lbl_8004400C:
/* 8004400C 0003FC6C  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 80044010 0003FC70  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80044014 0003FC74  D0 21 00 A0 */	stfs f1, 0xa0(r1)
/* 80044018 0003FC78  D0 21 00 A4 */	stfs f1, 0xa4(r1)
/* 8004401C 0003FC7C  D0 01 00 A8 */	stfs f0, 0xa8(r1)
lbl_80044020:
/* 80044020 0003FC80  3C 80 80 49 */	lis r4, lbl_80493614@ha
/* 80044024 0003FC84  38 61 00 A0 */	addi r3, r1, 0xa0
/* 80044028 0003FC88  38 84 36 14 */	addi r4, r4, lbl_80493614@l
/* 8004402C 0003FC8C  38 A1 00 2C */	addi r5, r1, 0x2c
/* 80044030 0003FC90  48 23 8D B9 */	bl func_8027CDE8
/* 80044034 0003FC94  C0 81 00 2C */	lfs f4, 0x2c(r1)
/* 80044038 0003FC98  C0 22 83 50 */	lfs f1, lbl_80640950-_SDA2_BASE_(r2)
/* 8004403C 0003FC9C  C0 61 00 34 */	lfs f3, 0x34(r1)
/* 80044040 0003FCA0  C0 42 82 B0 */	lfs f2, lbl_806408B0-_SDA2_BASE_(r2)
/* 80044044 0003FCA4  FC 04 08 40 */	fcmpo cr0, f4, f1
/* 80044048 0003FCA8  D0 81 00 94 */	stfs f4, 0x94(r1)
/* 8004404C 0003FCAC  D0 61 00 9C */	stfs f3, 0x9c(r1)
/* 80044050 0003FCB0  D0 41 00 98 */	stfs f2, 0x98(r1)
/* 80044054 0003FCB4  40 80 00 30 */	bge lbl_80044084
/* 80044058 0003FCB8  C0 02 83 6C */	lfs f0, lbl_8064096C-_SDA2_BASE_(r2)
/* 8004405C 0003FCBC  FC 04 00 40 */	fcmpo cr0, f4, f0
/* 80044060 0003FCC0  40 81 00 24 */	ble lbl_80044084
/* 80044064 0003FCC4  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80044068 0003FCC8  40 80 00 1C */	bge lbl_80044084
/* 8004406C 0003FCCC  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80044070 0003FCD0  40 81 00 14 */	ble lbl_80044084
/* 80044074 0003FCD4  FC 03 08 40 */	fcmpo cr0, f3, f1
/* 80044078 0003FCD8  40 80 00 0C */	bge lbl_80044084
/* 8004407C 0003FCDC  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80044080 0003FCE0  41 81 00 0C */	bgt lbl_8004408C
lbl_80044084:
/* 80044084 0003FCE4  38 00 00 00 */	li r0, 0
/* 80044088 0003FCE8  48 00 00 08 */	b lbl_80044090
lbl_8004408C:
/* 8004408C 0003FCEC  38 00 00 01 */	li r0, 1
lbl_80044090:
/* 80044090 0003FCF0  2C 00 00 00 */	cmpwi r0, 0
/* 80044094 0003FCF4  40 82 00 44 */	bne lbl_800440D8
/* 80044098 0003FCF8  38 61 00 94 */	addi r3, r1, 0x94
/* 8004409C 0003FCFC  7C 64 1B 78 */	mr r4, r3
/* 800440A0 0003FD00  48 23 8C 89 */	bl func_8027CD28
/* 800440A4 0003FD04  C0 3E 06 E4 */	lfs f1, 0x6e4(r30)
/* 800440A8 0003FD08  38 61 00 94 */	addi r3, r1, 0x94
/* 800440AC 0003FD0C  38 81 00 20 */	addi r4, r1, 0x20
/* 800440B0 0003FD10  48 23 8C 5D */	bl func_8027CD0C
/* 800440B4 0003FD14  C0 41 00 20 */	lfs f2, 0x20(r1)
/* 800440B8 0003FD18  C0 21 00 24 */	lfs f1, 0x24(r1)
/* 800440BC 0003FD1C  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 800440C0 0003FD20  D0 41 00 AC */	stfs f2, 0xac(r1)
/* 800440C4 0003FD24  D0 21 00 B0 */	stfs f1, 0xb0(r1)
/* 800440C8 0003FD28  D0 01 00 B4 */	stfs f0, 0xb4(r1)
/* 800440CC 0003FD2C  C0 1E 06 E0 */	lfs f0, 0x6e0(r30)
/* 800440D0 0003FD30  D0 01 00 B0 */	stfs f0, 0xb0(r1)
/* 800440D4 0003FD34  48 00 00 14 */	b lbl_800440E8
lbl_800440D8:
/* 800440D8 0003FD38  C0 02 82 B0 */	lfs f0, lbl_806408B0-_SDA2_BASE_(r2)
/* 800440DC 0003FD3C  D0 01 00 AC */	stfs f0, 0xac(r1)
/* 800440E0 0003FD40  D0 01 00 B0 */	stfs f0, 0xb0(r1)
/* 800440E4 0003FD44  D0 01 00 B4 */	stfs f0, 0xb4(r1)
lbl_800440E8:
/* 800440E8 0003FD48  3C 80 80 49 */	lis r4, lbl_80493614@ha
/* 800440EC 0003FD4C  38 61 00 88 */	addi r3, r1, 0x88
/* 800440F0 0003FD50  38 A4 36 14 */	addi r5, r4, lbl_80493614@l
/* 800440F4 0003FD54  C0 44 36 14 */	lfs f2, 0x3614(r4)
/* 800440F8 0003FD58  C0 25 00 04 */	lfs f1, 4(r5)
/* 800440FC 0003FD5C  38 81 00 A0 */	addi r4, r1, 0xa0
/* 80044100 0003FD60  C0 05 00 08 */	lfs f0, 8(r5)
/* 80044104 0003FD64  38 A1 00 68 */	addi r5, r1, 0x68
/* 80044108 0003FD68  D0 41 00 88 */	stfs f2, 0x88(r1)
/* 8004410C 0003FD6C  D0 21 00 8C */	stfs f1, 0x8c(r1)
/* 80044110 0003FD70  D0 01 00 90 */	stfs f0, 0x90(r1)
/* 80044114 0003FD74  48 23 8C D5 */	bl func_8027CDE8
/* 80044118 0003FD78  C0 01 00 68 */	lfs f0, 0x68(r1)
/* 8004411C 0003FD7C  C0 42 83 50 */	lfs f2, lbl_80640950-_SDA2_BASE_(r2)
/* 80044120 0003FD80  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80044124 0003FD84  40 80 00 38 */	bge lbl_8004415C
/* 80044128 0003FD88  C0 22 83 6C */	lfs f1, lbl_8064096C-_SDA2_BASE_(r2)
/* 8004412C 0003FD8C  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 80044130 0003FD90  40 81 00 2C */	ble lbl_8004415C
/* 80044134 0003FD94  C0 01 00 6C */	lfs f0, 0x6c(r1)
/* 80044138 0003FD98  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004413C 0003FD9C  40 80 00 20 */	bge lbl_8004415C
/* 80044140 0003FDA0  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 80044144 0003FDA4  40 81 00 18 */	ble lbl_8004415C
/* 80044148 0003FDA8  C0 01 00 70 */	lfs f0, 0x70(r1)
/* 8004414C 0003FDAC  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80044150 0003FDB0  40 80 00 0C */	bge lbl_8004415C
/* 80044154 0003FDB4  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 80044158 0003FDB8  41 81 00 0C */	bgt lbl_80044164
lbl_8004415C:
/* 8004415C 0003FDBC  38 00 00 00 */	li r0, 0
/* 80044160 0003FDC0  48 00 00 08 */	b lbl_80044168
lbl_80044164:
/* 80044164 0003FDC4  38 00 00 01 */	li r0, 1
lbl_80044168:
/* 80044168 0003FDC8  2C 00 00 00 */	cmpwi r0, 0
/* 8004416C 0003FDCC  41 82 00 24 */	beq lbl_80044190
/* 80044170 0003FDD0  3C 80 80 49 */	lis r4, lbl_80493608@ha
/* 80044174 0003FDD4  38 64 36 08 */	addi r3, r4, lbl_80493608@l
/* 80044178 0003FDD8  C0 44 36 08 */	lfs f2, 0x3608(r4)
/* 8004417C 0003FDDC  C0 23 00 04 */	lfs f1, 4(r3)
/* 80044180 0003FDE0  C0 03 00 08 */	lfs f0, 8(r3)
/* 80044184 0003FDE4  D0 41 00 88 */	stfs f2, 0x88(r1)
/* 80044188 0003FDE8  D0 21 00 8C */	stfs f1, 0x8c(r1)
/* 8004418C 0003FDEC  D0 01 00 90 */	stfs f0, 0x90(r1)
lbl_80044190:
/* 80044190 0003FDF0  C0 3E 06 DC */	lfs f1, 0x6dc(r30)
/* 80044194 0003FDF4  38 61 00 78 */	addi r3, r1, 0x78
/* 80044198 0003FDF8  38 81 00 A0 */	addi r4, r1, 0xa0
/* 8004419C 0003FDFC  48 23 8F 89 */	bl func_8027D124
/* 800441A0 0003FE00  C0 41 00 88 */	lfs f2, 0x88(r1)
/* 800441A4 0003FE04  38 61 00 14 */	addi r3, r1, 0x14
/* 800441A8 0003FE08  C0 21 00 8C */	lfs f1, 0x8c(r1)
/* 800441AC 0003FE0C  38 81 00 78 */	addi r4, r1, 0x78
/* 800441B0 0003FE10  C0 01 00 90 */	lfs f0, 0x90(r1)
/* 800441B4 0003FE14  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 800441B8 0003FE18  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 800441BC 0003FE1C  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 800441C0 0003FE20  48 1D F8 4D */	bl func_80223A0C
/* 800441C4 0003FE24  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 800441C8 0003FE28  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 800441CC 0003FE2C  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 800441D0 0003FE30  D0 41 00 88 */	stfs f2, 0x88(r1)
/* 800441D4 0003FE34  D0 21 00 8C */	stfs f1, 0x8c(r1)
/* 800441D8 0003FE38  D0 01 00 90 */	stfs f0, 0x90(r1)
/* 800441DC 0003FE3C  88 1E 06 F8 */	lbz r0, 0x6f8(r30)
/* 800441E0 0003FE40  2C 00 00 00 */	cmpwi r0, 0
/* 800441E4 0003FE44  41 82 00 38 */	beq lbl_8004421C
/* 800441E8 0003FE48  C0 1E 04 FC */	lfs f0, 0x4fc(r30)
/* 800441EC 0003FE4C  D0 01 00 5C */	stfs f0, 0x5c(r1)
/* 800441F0 0003FE50  C0 3E 05 00 */	lfs f1, 0x500(r30)
/* 800441F4 0003FE54  D0 21 00 60 */	stfs f1, 0x60(r1)
/* 800441F8 0003FE58  C0 1E 05 04 */	lfs f0, 0x504(r30)
/* 800441FC 0003FE5C  D0 01 00 64 */	stfs f0, 0x64(r1)
/* 80044200 0003FE60  C0 1E 06 F4 */	lfs f0, 0x6f4(r30)
/* 80044204 0003FE64  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80044208 0003FE68  40 80 00 14 */	bge lbl_8004421C
/* 8004420C 0003FE6C  D0 01 00 60 */	stfs f0, 0x60(r1)
/* 80044210 0003FE70  38 7E 04 E8 */	addi r3, r30, 0x4e8
/* 80044214 0003FE74  38 81 00 5C */	addi r4, r1, 0x5c
/* 80044218 0003FE78  4B FF C9 CD */	bl func_80040BE4
lbl_8004421C:
/* 8004421C 0003FE7C  38 7E 04 FC */	addi r3, r30, 0x4fc
/* 80044220 0003FE80  38 81 00 AC */	addi r4, r1, 0xac
/* 80044224 0003FE84  38 A1 00 08 */	addi r5, r1, 8
/* 80044228 0003FE88  48 23 8A 9D */	bl func_8027CCC4
/* 8004422C 0003FE8C  C0 21 00 08 */	lfs f1, 8(r1)
/* 80044230 0003FE90  C0 A1 00 0C */	lfs f5, 0xc(r1)
/* 80044234 0003FE94  C0 81 00 10 */	lfs f4, 0x10(r1)
/* 80044238 0003FE98  C0 7F 00 14 */	lfs f3, 0x14(r31)
/* 8004423C 0003FE9C  C0 5F 00 18 */	lfs f2, 0x18(r31)
/* 80044240 0003FEA0  C0 1F 00 1C */	lfs f0, 0x1c(r31)
/* 80044244 0003FEA4  D0 21 00 50 */	stfs f1, 0x50(r1)
/* 80044248 0003FEA8  D0 A1 00 54 */	stfs f5, 0x54(r1)
/* 8004424C 0003FEAC  D0 81 00 58 */	stfs f4, 0x58(r1)
/* 80044250 0003FEB0  D0 61 00 44 */	stfs f3, 0x44(r1)
/* 80044254 0003FEB4  D0 41 00 48 */	stfs f2, 0x48(r1)
/* 80044258 0003FEB8  D0 01 00 4C */	stfs f0, 0x4c(r1)
/* 8004425C 0003FEBC  48 18 64 59 */	bl __fpclassifyf
/* 80044260 0003FEC0  2C 03 00 01 */	cmpwi r3, 1
/* 80044264 0003FEC4  41 82 01 14 */	beq lbl_80044378
/* 80044268 0003FEC8  C0 21 00 50 */	lfs f1, 0x50(r1)
/* 8004426C 0003FECC  48 18 64 49 */	bl __fpclassifyf
/* 80044270 0003FED0  2C 03 00 02 */	cmpwi r3, 2
/* 80044274 0003FED4  41 82 01 04 */	beq lbl_80044378
/* 80044278 0003FED8  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 8004427C 0003FEDC  48 18 64 39 */	bl __fpclassifyf
/* 80044280 0003FEE0  2C 03 00 01 */	cmpwi r3, 1
/* 80044284 0003FEE4  41 82 00 F4 */	beq lbl_80044378
/* 80044288 0003FEE8  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 8004428C 0003FEEC  48 18 64 29 */	bl __fpclassifyf
/* 80044290 0003FEF0  2C 03 00 02 */	cmpwi r3, 2
/* 80044294 0003FEF4  41 82 00 E4 */	beq lbl_80044378
/* 80044298 0003FEF8  C0 21 00 58 */	lfs f1, 0x58(r1)
/* 8004429C 0003FEFC  48 18 64 19 */	bl __fpclassifyf
/* 800442A0 0003FF00  2C 03 00 01 */	cmpwi r3, 1
/* 800442A4 0003FF04  41 82 00 D4 */	beq lbl_80044378
/* 800442A8 0003FF08  C0 21 00 58 */	lfs f1, 0x58(r1)
/* 800442AC 0003FF0C  48 18 64 09 */	bl __fpclassifyf
/* 800442B0 0003FF10  2C 03 00 02 */	cmpwi r3, 2
/* 800442B4 0003FF14  41 82 00 C4 */	beq lbl_80044378
/* 800442B8 0003FF18  C0 21 00 44 */	lfs f1, 0x44(r1)
/* 800442BC 0003FF1C  48 18 63 F9 */	bl __fpclassifyf
/* 800442C0 0003FF20  2C 03 00 01 */	cmpwi r3, 1
/* 800442C4 0003FF24  41 82 00 B4 */	beq lbl_80044378
/* 800442C8 0003FF28  C0 21 00 44 */	lfs f1, 0x44(r1)
/* 800442CC 0003FF2C  48 18 63 E9 */	bl __fpclassifyf
/* 800442D0 0003FF30  2C 03 00 02 */	cmpwi r3, 2
/* 800442D4 0003FF34  41 82 00 A4 */	beq lbl_80044378
/* 800442D8 0003FF38  C0 21 00 48 */	lfs f1, 0x48(r1)
/* 800442DC 0003FF3C  48 18 63 D9 */	bl __fpclassifyf
/* 800442E0 0003FF40  2C 03 00 01 */	cmpwi r3, 1
/* 800442E4 0003FF44  41 82 00 94 */	beq lbl_80044378
/* 800442E8 0003FF48  C0 21 00 48 */	lfs f1, 0x48(r1)
/* 800442EC 0003FF4C  48 18 63 C9 */	bl __fpclassifyf
/* 800442F0 0003FF50  2C 03 00 02 */	cmpwi r3, 2
/* 800442F4 0003FF54  41 82 00 84 */	beq lbl_80044378
/* 800442F8 0003FF58  C0 21 00 4C */	lfs f1, 0x4c(r1)
/* 800442FC 0003FF5C  48 18 63 B9 */	bl __fpclassifyf
/* 80044300 0003FF60  2C 03 00 01 */	cmpwi r3, 1
/* 80044304 0003FF64  41 82 00 74 */	beq lbl_80044378
/* 80044308 0003FF68  C0 21 00 4C */	lfs f1, 0x4c(r1)
/* 8004430C 0003FF6C  48 18 63 A9 */	bl __fpclassifyf
/* 80044310 0003FF70  2C 03 00 02 */	cmpwi r3, 2
/* 80044314 0003FF74  41 82 00 64 */	beq lbl_80044378
/* 80044318 0003FF78  C0 21 00 88 */	lfs f1, 0x88(r1)
/* 8004431C 0003FF7C  48 18 63 99 */	bl __fpclassifyf
/* 80044320 0003FF80  2C 03 00 01 */	cmpwi r3, 1
/* 80044324 0003FF84  41 82 00 54 */	beq lbl_80044378
/* 80044328 0003FF88  C0 21 00 88 */	lfs f1, 0x88(r1)
/* 8004432C 0003FF8C  48 18 63 89 */	bl __fpclassifyf
/* 80044330 0003FF90  2C 03 00 02 */	cmpwi r3, 2
/* 80044334 0003FF94  41 82 00 44 */	beq lbl_80044378
/* 80044338 0003FF98  C0 21 00 8C */	lfs f1, 0x8c(r1)
/* 8004433C 0003FF9C  48 18 63 79 */	bl __fpclassifyf
/* 80044340 0003FFA0  2C 03 00 01 */	cmpwi r3, 1
/* 80044344 0003FFA4  41 82 00 34 */	beq lbl_80044378
/* 80044348 0003FFA8  C0 21 00 8C */	lfs f1, 0x8c(r1)
/* 8004434C 0003FFAC  48 18 63 69 */	bl __fpclassifyf
/* 80044350 0003FFB0  2C 03 00 02 */	cmpwi r3, 2
/* 80044354 0003FFB4  41 82 00 24 */	beq lbl_80044378
/* 80044358 0003FFB8  C0 21 00 90 */	lfs f1, 0x90(r1)
/* 8004435C 0003FFBC  48 18 63 59 */	bl __fpclassifyf
/* 80044360 0003FFC0  2C 03 00 01 */	cmpwi r3, 1
/* 80044364 0003FFC4  41 82 00 14 */	beq lbl_80044378
/* 80044368 0003FFC8  C0 21 00 90 */	lfs f1, 0x90(r1)
/* 8004436C 0003FFCC  48 18 63 49 */	bl __fpclassifyf
/* 80044370 0003FFD0  2C 03 00 02 */	cmpwi r3, 2
/* 80044374 0003FFD4  40 82 00 38 */	bne lbl_800443AC
lbl_80044378:
/* 80044378 0003FFD8  C0 22 82 B0 */	lfs f1, lbl_806408B0-_SDA2_BASE_(r2)
/* 8004437C 0003FFDC  C0 42 82 CC */	lfs f2, lbl_806408CC-_SDA2_BASE_(r2)
/* 80044380 0003FFE0  C0 62 83 70 */	lfs f3, lbl_80640970-_SDA2_BASE_(r2)
/* 80044384 0003FFE4  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80044388 0003FFE8  D0 61 00 50 */	stfs f3, 0x50(r1)
/* 8004438C 0003FFEC  D0 41 00 54 */	stfs f2, 0x54(r1)
/* 80044390 0003FFF0  D0 21 00 58 */	stfs f1, 0x58(r1)
/* 80044394 0003FFF4  D0 21 00 44 */	stfs f1, 0x44(r1)
/* 80044398 0003FFF8  D0 41 00 48 */	stfs f2, 0x48(r1)
/* 8004439C 0003FFFC  D0 21 00 4C */	stfs f1, 0x4c(r1)
/* 800443A0 00040000  D0 21 00 88 */	stfs f1, 0x88(r1)
/* 800443A4 00040004  D0 01 00 8C */	stfs f0, 0x8c(r1)
/* 800443A8 00040008  D0 21 00 90 */	stfs f1, 0x90(r1)
lbl_800443AC:
/* 800443AC 0004000C  C0 3E 04 E0 */	lfs f1, 0x4e0(r30)
/* 800443B0 00040010  48 18 63 05 */	bl __fpclassifyf
/* 800443B4 00040014  2C 03 00 01 */	cmpwi r3, 1
/* 800443B8 00040018  41 82 00 14 */	beq lbl_800443CC
/* 800443BC 0004001C  C0 3E 04 E0 */	lfs f1, 0x4e0(r30)
/* 800443C0 00040020  48 18 62 F5 */	bl __fpclassifyf
/* 800443C4 00040024  2C 03 00 02 */	cmpwi r3, 2
/* 800443C8 00040028  40 82 00 0C */	bne lbl_800443D4
lbl_800443CC:
/* 800443CC 0004002C  C0 02 82 C8 */	lfs f0, lbl_806408C8-_SDA2_BASE_(r2)
/* 800443D0 00040030  D0 1E 04 E0 */	stfs f0, 0x4e0(r30)
lbl_800443D4:
/* 800443D4 00040034  80 7E 06 CC */	lwz r3, 0x6cc(r30)
/* 800443D8 00040038  C0 01 00 50 */	lfs f0, 0x50(r1)
/* 800443DC 0004003C  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 800443E0 00040040  D0 03 01 AC */	stfs f0, 0x1ac(r3)
/* 800443E4 00040044  C0 01 00 58 */	lfs f0, 0x58(r1)
/* 800443E8 00040048  D0 23 01 B0 */	stfs f1, 0x1b0(r3)
/* 800443EC 0004004C  C0 41 00 44 */	lfs f2, 0x44(r1)
/* 800443F0 00040050  D0 03 01 B4 */	stfs f0, 0x1b4(r3)
/* 800443F4 00040054  C0 21 00 48 */	lfs f1, 0x48(r1)
/* 800443F8 00040058  C0 61 00 88 */	lfs f3, 0x88(r1)
/* 800443FC 0004005C  C0 01 00 4C */	lfs f0, 0x4c(r1)
/* 80044400 00040060  D0 63 01 B8 */	stfs f3, 0x1b8(r3)
/* 80044404 00040064  C0 61 00 8C */	lfs f3, 0x8c(r1)
/* 80044408 00040068  D0 63 01 BC */	stfs f3, 0x1bc(r3)
/* 8004440C 0004006C  C0 61 00 90 */	lfs f3, 0x90(r1)
/* 80044410 00040070  D0 63 01 C0 */	stfs f3, 0x1c0(r3)
/* 80044414 00040074  D0 43 01 C4 */	stfs f2, 0x1c4(r3)
/* 80044418 00040078  D0 23 01 C8 */	stfs f1, 0x1c8(r3)
/* 8004441C 0004007C  D0 03 01 CC */	stfs f0, 0x1cc(r3)
/* 80044420 00040080  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80044424 00040084  60 00 00 30 */	ori r0, r0, 0x30
/* 80044428 00040088  90 03 01 04 */	stw r0, 0x104(r3)
/* 8004442C 0004008C  80 7E 06 CC */	lwz r3, 0x6cc(r30)
/* 80044430 00040090  C0 1E 04 E0 */	lfs f0, 0x4e0(r30)
/* 80044434 00040094  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80044438 00040098  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 8004443C 0004009C  28 00 00 01 */	cmplwi r0, 1
/* 80044440 000400A0  40 82 00 14 */	bne lbl_80044454
/* 80044444 000400A4  D0 03 01 68 */	stfs f0, 0x168(r3)
/* 80044448 000400A8  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8004444C 000400AC  60 00 00 08 */	ori r0, r0, 8
/* 80044450 000400B0  90 03 01 04 */	stw r0, 0x104(r3)
lbl_80044454:
/* 80044454 000400B4  E3 E1 01 98 */	psq_l f31, 408(r1), 0, qr0
/* 80044458 000400B8  CB E1 01 90 */	lfd f31, 0x190(r1)
/* 8004445C 000400BC  E3 C1 01 88 */	psq_l f30, 392(r1), 0, qr0
/* 80044460 000400C0  CB C1 01 80 */	lfd f30, 0x180(r1)
/* 80044464 000400C4  E3 A1 01 78 */	psq_l f29, 376(r1), 0, qr0
/* 80044468 000400C8  CB A1 01 70 */	lfd f29, 0x170(r1)
/* 8004446C 000400CC  E3 81 01 68 */	psq_l f28, 360(r1), 0, qr0
/* 80044470 000400D0  CB 81 01 60 */	lfd f28, 0x160(r1)
/* 80044474 000400D4  E3 61 01 58 */	psq_l f27, 344(r1), 0, qr0
/* 80044478 000400D8  CB 61 01 50 */	lfd f27, 0x150(r1)
/* 8004447C 000400DC  83 E1 01 4C */	lwz r31, 0x14c(r1)
/* 80044480 000400E0  83 C1 01 48 */	lwz r30, 0x148(r1)
/* 80044484 000400E4  83 A1 01 44 */	lwz r29, 0x144(r1)
/* 80044488 000400E8  80 01 01 A4 */	lwz r0, 0x1a4(r1)
/* 8004448C 000400EC  83 81 01 40 */	lwz r28, 0x140(r1)
/* 80044490 000400F0  7C 08 03 A6 */	mtlr r0
/* 80044494 000400F4  38 21 01 A0 */	addi r1, r1, 0x1a0
/* 80044498 000400F8  4E 80 00 20 */	blr

.global func_8004449C
func_8004449C:
/* 8004449C 000400FC  4E 80 00 20 */	blr

.global func_800444A0
func_800444A0:
/* 800444A0 00040100  38 00 00 02 */	li r0, 2
/* 800444A4 00040104  38 A0 00 00 */	li r5, 0
/* 800444A8 00040108  38 C0 00 00 */	li r6, 0
/* 800444AC 0004010C  38 80 00 01 */	li r4, 1
/* 800444B0 00040110  7C 09 03 A6 */	mtctr r0
lbl_800444B4:
/* 800444B4 00040114  80 03 00 04 */	lwz r0, 4(r3)
/* 800444B8 00040118  2C 00 00 00 */	cmpwi r0, 0
/* 800444BC 0004011C  41 82 00 0C */	beq lbl_800444C8
/* 800444C0 00040120  7C 80 30 30 */	slw r0, r4, r6
/* 800444C4 00040124  7C A5 03 78 */	or r5, r5, r0
lbl_800444C8:
/* 800444C8 00040128  80 03 00 28 */	lwz r0, 0x28(r3)
/* 800444CC 0004012C  38 C6 00 01 */	addi r6, r6, 1
/* 800444D0 00040130  2C 00 00 00 */	cmpwi r0, 0
/* 800444D4 00040134  41 82 00 0C */	beq lbl_800444E0
/* 800444D8 00040138  7C 80 30 30 */	slw r0, r4, r6
/* 800444DC 0004013C  7C A5 03 78 */	or r5, r5, r0
lbl_800444E0:
/* 800444E0 00040140  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 800444E4 00040144  38 C6 00 01 */	addi r6, r6, 1
/* 800444E8 00040148  2C 00 00 00 */	cmpwi r0, 0
/* 800444EC 0004014C  41 82 00 0C */	beq lbl_800444F8
/* 800444F0 00040150  7C 80 30 30 */	slw r0, r4, r6
/* 800444F4 00040154  7C A5 03 78 */	or r5, r5, r0
lbl_800444F8:
/* 800444F8 00040158  80 03 00 70 */	lwz r0, 0x70(r3)
/* 800444FC 0004015C  38 C6 00 01 */	addi r6, r6, 1
/* 80044500 00040160  2C 00 00 00 */	cmpwi r0, 0
/* 80044504 00040164  41 82 00 0C */	beq lbl_80044510
/* 80044508 00040168  7C 80 30 30 */	slw r0, r4, r6
/* 8004450C 0004016C  7C A5 03 78 */	or r5, r5, r0
lbl_80044510:
/* 80044510 00040170  80 03 00 94 */	lwz r0, 0x94(r3)
/* 80044514 00040174  38 C6 00 01 */	addi r6, r6, 1
/* 80044518 00040178  2C 00 00 00 */	cmpwi r0, 0
/* 8004451C 0004017C  41 82 00 0C */	beq lbl_80044528
/* 80044520 00040180  7C 80 30 30 */	slw r0, r4, r6
/* 80044524 00040184  7C A5 03 78 */	or r5, r5, r0
lbl_80044528:
/* 80044528 00040188  80 03 00 B8 */	lwz r0, 0xb8(r3)
/* 8004452C 0004018C  38 C6 00 01 */	addi r6, r6, 1
/* 80044530 00040190  2C 00 00 00 */	cmpwi r0, 0
/* 80044534 00040194  41 82 00 0C */	beq lbl_80044540
/* 80044538 00040198  7C 80 30 30 */	slw r0, r4, r6
/* 8004453C 0004019C  7C A5 03 78 */	or r5, r5, r0
lbl_80044540:
/* 80044540 000401A0  38 63 00 D8 */	addi r3, r3, 0xd8
/* 80044544 000401A4  38 C6 00 01 */	addi r6, r6, 1
/* 80044548 000401A8  42 00 FF 6C */	bdnz lbl_800444B4
/* 8004454C 000401AC  7C A3 2B 78 */	mr r3, r5
/* 80044550 000401B0  4E 80 00 20 */	blr

.global func_80044554
func_80044554:
/* 80044554 000401B4  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 80044558 000401B8  7C 08 02 A6 */	mflr r0
/* 8004455C 000401BC  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 80044560 000401C0  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 80044564 000401C4  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 80044568 000401C8  93 E1 00 8C */	stw r31, 0x8c(r1)
/* 8004456C 000401CC  93 C1 00 88 */	stw r30, 0x88(r1)
/* 80044570 000401D0  7C 7E 1B 78 */	mr r30, r3
/* 80044574 000401D4  93 A1 00 84 */	stw r29, 0x84(r1)
/* 80044578 000401D8  7C BD 2B 78 */	mr r29, r5
/* 8004457C 000401DC  93 81 00 80 */	stw r28, 0x80(r1)
/* 80044580 000401E0  7C 9C 23 78 */	mr r28, r4
/* 80044584 000401E4  80 03 06 CC */	lwz r0, 0x6cc(r3)
/* 80044588 000401E8  2C 00 00 00 */	cmpwi r0, 0
/* 8004458C 000401EC  40 82 00 0C */	bne lbl_80044598
/* 80044590 000401F0  38 60 00 00 */	li r3, 0
/* 80044594 000401F4  48 00 01 B4 */	b lbl_80044748
lbl_80044598:
/* 80044598 000401F8  4B FE EA F1 */	bl func_80033088
/* 8004459C 000401FC  2C 03 00 00 */	cmpwi r3, 0
/* 800445A0 00040200  40 82 00 0C */	bne lbl_800445AC
/* 800445A4 00040204  38 60 00 00 */	li r3, 0
/* 800445A8 00040208  48 00 01 A0 */	b lbl_80044748
lbl_800445AC:
/* 800445AC 0004020C  80 9E 04 B4 */	lwz r4, 0x4b4(r30)
/* 800445B0 00040210  4B FE F5 E9 */	bl func_80033B98
/* 800445B4 00040214  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 800445B8 00040218  7C 7F 1B 78 */	mr r31, r3
/* 800445BC 0004021C  28 00 FF FF */	cmplwi r0, 0xffff
/* 800445C0 00040220  41 82 00 30 */	beq lbl_800445F0
/* 800445C4 00040224  38 60 00 02 */	li r3, 2
/* 800445C8 00040228  48 1F 6A 91 */	bl func_8023B058
/* 800445CC 0004022C  80 03 00 20 */	lwz r0, 0x20(r3)
/* 800445D0 00040230  2C 00 00 01 */	cmpwi r0, 1
/* 800445D4 00040234  40 82 00 1C */	bne lbl_800445F0
/* 800445D8 00040238  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 800445DC 0004023C  38 A1 00 50 */	addi r5, r1, 0x50
/* 800445E0 00040240  38 C1 00 54 */	addi r6, r1, 0x54
/* 800445E4 00040244  38 E1 00 58 */	addi r7, r1, 0x58
/* 800445E8 00040248  39 01 00 5C */	addi r8, r1, 0x5c
/* 800445EC 0004024C  48 1F E5 9D */	bl func_80242B88
lbl_800445F0:
/* 800445F0 00040250  C0 62 82 B0 */	lfs f3, lbl_806408B0-_SDA2_BASE_(r2)
/* 800445F4 00040254  3C 00 43 30 */	lis r0, 0x4330
/* 800445F8 00040258  80 ED A3 D8 */	lwz r7, lbl_8063F698-_SDA_BASE_(r13)
/* 800445FC 0004025C  7F 84 E3 78 */	mr r4, r28
/* 80044600 00040260  D0 61 00 50 */	stfs f3, 0x50(r1)
/* 80044604 00040264  38 61 00 2C */	addi r3, r1, 0x2c
/* 80044608 00040268  C8 42 82 C0 */	lfd f2, lbl_806408C0-_SDA2_BASE_(r2)
/* 8004460C 0004026C  38 A1 00 08 */	addi r5, r1, 8
/* 80044610 00040270  D0 61 00 54 */	stfs f3, 0x54(r1)
/* 80044614 00040274  C0 02 82 BC */	lfs f0, lbl_806408BC-_SDA2_BASE_(r2)
/* 80044618 00040278  A0 C7 00 04 */	lhz r6, 4(r7)
/* 8004461C 0004027C  90 01 00 68 */	stw r0, 0x68(r1)
/* 80044620 00040280  90 C1 00 6C */	stw r6, 0x6c(r1)
/* 80044624 00040284  C8 21 00 68 */	lfd f1, 0x68(r1)
/* 80044628 00040288  90 01 00 70 */	stw r0, 0x70(r1)
/* 8004462C 0004028C  EC 21 10 28 */	fsubs f1, f1, f2
/* 80044630 00040290  D0 21 00 58 */	stfs f1, 0x58(r1)
/* 80044634 00040294  A0 07 00 06 */	lhz r0, 6(r7)
/* 80044638 00040298  90 01 00 74 */	stw r0, 0x74(r1)
/* 8004463C 0004029C  C8 21 00 70 */	lfd f1, 0x70(r1)
/* 80044640 000402A0  D0 61 00 60 */	stfs f3, 0x60(r1)
/* 80044644 000402A4  EC 21 10 28 */	fsubs f1, f1, f2
/* 80044648 000402A8  D0 01 00 64 */	stfs f0, 0x64(r1)
/* 8004464C 000402AC  D0 21 00 5C */	stfs f1, 0x5c(r1)
/* 80044650 000402B0  80 DE 06 CC */	lwz r6, 0x6cc(r30)
/* 80044654 000402B4  C0 26 02 10 */	lfs f1, 0x210(r6)
/* 80044658 000402B8  3B E6 01 4C */	addi r31, r6, 0x14c
/* 8004465C 000402BC  C0 06 02 20 */	lfs f0, 0x220(r6)
/* 80044660 000402C0  3B C6 01 D4 */	addi r30, r6, 0x1d4
/* 80044664 000402C4  C0 86 02 30 */	lfs f4, 0x230(r6)
/* 80044668 000402C8  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 8004466C 000402CC  D0 21 00 2C */	stfs f1, 0x2c(r1)
/* 80044670 000402D0  D0 01 00 30 */	stfs f0, 0x30(r1)
/* 80044674 000402D4  D0 81 00 34 */	stfs f4, 0x34(r1)
/* 80044678 000402D8  C0 66 02 0C */	lfs f3, 0x20c(r6)
/* 8004467C 000402DC  C0 46 02 1C */	lfs f2, 0x21c(r6)
/* 80044680 000402E0  C0 26 02 2C */	lfs f1, 0x22c(r6)
/* 80044684 000402E4  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 80044688 000402E8  D0 61 00 44 */	stfs f3, 0x44(r1)
/* 8004468C 000402EC  D0 41 00 48 */	stfs f2, 0x48(r1)
/* 80044690 000402F0  D0 21 00 4C */	stfs f1, 0x4c(r1)
/* 80044694 000402F4  C0 06 01 64 */	lfs f0, 0x164(r6)
/* 80044698 000402F8  D0 81 00 28 */	stfs f4, 0x28(r1)
/* 8004469C 000402FC  FF E0 00 50 */	fneg f31, f0
/* 800446A0 00040300  D0 61 00 14 */	stfs f3, 0x14(r1)
/* 800446A4 00040304  D0 41 00 18 */	stfs f2, 0x18(r1)
/* 800446A8 00040308  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 800446AC 0004030C  48 23 86 3D */	bl func_8027CCE8
/* 800446B0 00040310  C0 41 00 08 */	lfs f2, 8(r1)
/* 800446B4 00040314  38 61 00 44 */	addi r3, r1, 0x44
/* 800446B8 00040318  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 800446BC 0004031C  38 81 00 38 */	addi r4, r1, 0x38
/* 800446C0 00040320  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 800446C4 00040324  D0 41 00 38 */	stfs f2, 0x38(r1)
/* 800446C8 00040328  D0 21 00 3C */	stfs f1, 0x3c(r1)
/* 800446CC 0004032C  D0 01 00 40 */	stfs f0, 0x40(r1)
/* 800446D0 00040330  48 23 86 F9 */	bl PSQUATDotProduct
/* 800446D4 00040334  FC 01 F8 40 */	fcmpo cr0, f1, f31
/* 800446D8 00040338  4C 40 13 82 */	cror 2, 0, 2
/* 800446DC 0004033C  40 82 00 40 */	bne lbl_8004471C
/* 800446E0 00040340  C0 21 00 58 */	lfs f1, 0x58(r1)
/* 800446E4 00040344  38 60 00 00 */	li r3, 0
/* 800446E8 00040348  C0 01 00 50 */	lfs f0, 0x50(r1)
/* 800446EC 0004034C  C0 62 82 B8 */	lfs f3, lbl_806408B8-_SDA2_BASE_(r2)
/* 800446F0 00040350  EC 21 00 28 */	fsubs f1, f1, f0
/* 800446F4 00040354  C0 02 82 E0 */	lfs f0, lbl_806408E0-_SDA2_BASE_(r2)
/* 800446F8 00040358  EC 23 00 72 */	fmuls f1, f3, f1
/* 800446FC 0004035C  D0 3D 00 00 */	stfs f1, 0(r29)
/* 80044700 00040360  C0 41 00 5C */	lfs f2, 0x5c(r1)
/* 80044704 00040364  C0 21 00 54 */	lfs f1, 0x54(r1)
/* 80044708 00040368  EC 22 08 28 */	fsubs f1, f2, f1
/* 8004470C 0004036C  D0 1D 00 08 */	stfs f0, 8(r29)
/* 80044710 00040370  EC 03 00 72 */	fmuls f0, f3, f1
/* 80044714 00040374  D0 1D 00 04 */	stfs f0, 4(r29)
/* 80044718 00040378  48 00 00 30 */	b lbl_80044748
lbl_8004471C:
/* 8004471C 0004037C  C0 3C 00 00 */	lfs f1, 0(r28)
/* 80044720 00040380  7F C3 F3 78 */	mr r3, r30
/* 80044724 00040384  C0 5C 00 04 */	lfs f2, 4(r28)
/* 80044728 00040388  7F E4 FB 78 */	mr r4, r31
/* 8004472C 0004038C  C0 7C 00 08 */	lfs f3, 8(r28)
/* 80044730 00040390  7F A6 EB 78 */	mr r6, r29
/* 80044734 00040394  38 A1 00 50 */	addi r5, r1, 0x50
/* 80044738 00040398  38 FD 00 04 */	addi r7, r29, 4
/* 8004473C 0004039C  39 1D 00 08 */	addi r8, r29, 8
/* 80044740 000403A0  48 24 20 CD */	bl func_8028680C
/* 80044744 000403A4  38 60 00 01 */	li r3, 1
lbl_80044748:
/* 80044748 000403A8  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 8004474C 000403AC  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80044750 000403B0  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 80044754 000403B4  83 E1 00 8C */	lwz r31, 0x8c(r1)
/* 80044758 000403B8  83 C1 00 88 */	lwz r30, 0x88(r1)
/* 8004475C 000403BC  83 A1 00 84 */	lwz r29, 0x84(r1)
/* 80044760 000403C0  83 81 00 80 */	lwz r28, 0x80(r1)
/* 80044764 000403C4  7C 08 03 A6 */	mtlr r0
/* 80044768 000403C8  38 21 00 A0 */	addi r1, r1, 0xa0
/* 8004476C 000403CC  4E 80 00 20 */	blr

.global func_80044770
func_80044770:
/* 80044770 000403D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80044774 000403D4  7C 08 02 A6 */	mflr r0
/* 80044778 000403D8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004477C 000403DC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80044780 000403E0  7C 9F 23 78 */	mr r31, r4
/* 80044784 000403E4  93 C1 00 08 */	stw r30, 8(r1)
/* 80044788 000403E8  7C 7E 1B 78 */	mr r30, r3
/* 8004478C 000403EC  38 63 04 E8 */	addi r3, r3, 0x4e8
/* 80044790 000403F0  4B FF C6 B9 */	bl func_80040E48
/* 80044794 000403F4  7F E4 FB 78 */	mr r4, r31
/* 80044798 000403F8  38 7E 05 60 */	addi r3, r30, 0x560
/* 8004479C 000403FC  4B FF C6 AD */	bl func_80040E48
/* 800447A0 00040400  7F E4 FB 78 */	mr r4, r31
/* 800447A4 00040404  38 7E 06 50 */	addi r3, r30, 0x650
/* 800447A8 00040408  4B FF C6 A1 */	bl func_80040E48
/* 800447AC 0004040C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800447B0 00040410  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800447B4 00040414  83 C1 00 08 */	lwz r30, 8(r1)
/* 800447B8 00040418  7C 08 03 A6 */	mtlr r0
/* 800447BC 0004041C  38 21 00 10 */	addi r1, r1, 0x10
/* 800447C0 00040420  4E 80 00 20 */	blr

.global func_800447C4
func_800447C4:
/* 800447C4 00040424  38 A0 00 01 */	li r5, 1
/* 800447C8 00040428  38 6D 97 D0 */	addi r3, r13, lbl_8063EA90-_SDA_BASE_
/* 800447CC 0004042C  38 80 00 04 */	li r4, 4
/* 800447D0 00040430  38 00 00 00 */	li r0, 0
/* 800447D4 00040434  98 AD 97 D0 */	stb r5, lbl_8063EA90-_SDA_BASE_(r13)
/* 800447D8 00040438  B0 83 00 02 */	sth r4, 2(r3)
/* 800447DC 0004043C  98 03 00 04 */	stb r0, 4(r3)
/* 800447E0 00040440  4E 80 00 20 */	blr

.global func_800447E4
func_800447E4:
/* 800447E4 00040444  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800447E8 00040448  7C 08 02 A6 */	mflr r0
/* 800447EC 0004044C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800447F0 00040450  80 6D 97 E8 */	lwz r3, lbl_8063EAA8-_SDA_BASE_(r13)
/* 800447F4 00040454  2C 03 00 00 */	cmpwi r3, 0
/* 800447F8 00040458  41 82 00 08 */	beq lbl_80044800
/* 800447FC 0004045C  48 19 62 BD */	bl func_801DAAB8
lbl_80044800:
/* 80044800 00040460  38 60 0E C0 */	li r3, 0xec0
/* 80044804 00040464  48 19 62 2D */	bl func_801DAA30
/* 80044808 00040468  2C 03 00 00 */	cmpwi r3, 0
/* 8004480C 0004046C  41 82 00 08 */	beq lbl_80044814
/* 80044810 00040470  48 00 00 89 */	bl func_80044898
lbl_80044814:
/* 80044814 00040474  3C 80 80 04 */	lis r4, lbl_80044850@ha
/* 80044818 00040478  3C A0 80 04 */	lis r5, lbl_80044884@ha
/* 8004481C 0004047C  90 6D 97 E8 */	stw r3, lbl_8063EAA8-_SDA_BASE_(r13)
/* 80044820 00040480  38 84 48 50 */	addi r4, r4, lbl_80044850@l
/* 80044824 00040484  80 6D A4 B8 */	lwz r3, lbl_8063F778-_SDA_BASE_(r13)
/* 80044828 00040488  38 A5 48 84 */	addi r5, r5, lbl_80044884@l
/* 8004482C 0004048C  38 C0 00 03 */	li r6, 3
/* 80044830 00040490  38 E0 00 0C */	li r7, 0xc
/* 80044834 00040494  48 1F A3 25 */	bl func_8023EB58
/* 80044838 00040498  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004483C 0004049C  7C 08 03 A6 */	mtlr r0
/* 80044840 000404A0  38 21 00 10 */	addi r1, r1, 0x10
/* 80044844 000404A4  4E 80 00 20 */	blr

.global func_80044848
func_80044848:
/* 80044848 000404A8  80 6D 97 E8 */	lwz r3, lbl_8063EAA8-_SDA_BASE_(r13)
/* 8004484C 000404AC  4E 80 00 20 */	blr
lbl_80044850:
/* 80044850 000404B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80044854 000404B4  7C 08 02 A6 */	mflr r0
/* 80044858 000404B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004485C 000404BC  80 0D 97 E8 */	lwz r0, lbl_8063EAA8-_SDA_BASE_(r13)
/* 80044860 000404C0  2C 00 00 00 */	cmpwi r0, 0
/* 80044864 000404C4  41 82 00 10 */	beq lbl_80044874
/* 80044868 000404C8  4B FC 2B 35 */	bl func_8000739C
/* 8004486C 000404CC  80 6D 97 E8 */	lwz r3, lbl_8063EAA8-_SDA_BASE_(r13)
/* 80044870 000404D0  48 00 00 99 */	bl func_80044908
lbl_80044874:
/* 80044874 000404D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80044878 000404D8  7C 08 03 A6 */	mtlr r0
/* 8004487C 000404DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80044880 000404E0  4E 80 00 20 */	blr
lbl_80044884:
/* 80044884 000404E4  80 6D 97 E8 */	lwz r3, lbl_8063EAA8-_SDA_BASE_(r13)
/* 80044888 000404E8  2C 03 00 00 */	cmpwi r3, 0
/* 8004488C 000404EC  4D 82 00 20 */	beqlr
/* 80044890 000404F0  48 00 01 00 */	b lbl_80044990
/* 80044894 000404F4  4E 80 00 20 */	blr

.global func_80044898
func_80044898:
/* 80044898 000404F8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004489C 000404FC  7C 08 02 A6 */	mflr r0
/* 800448A0 00040500  90 01 00 24 */	stw r0, 0x24(r1)
/* 800448A4 00040504  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800448A8 00040508  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800448AC 0004050C  3B C3 07 80 */	addi r30, r3, 0x780
/* 800448B0 00040510  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800448B4 00040514  7C 7D 1B 78 */	mr r29, r3
/* 800448B8 00040518  7F BF EB 78 */	mr r31, r29
lbl_800448BC:
/* 800448BC 0004051C  7F E3 FB 78 */	mr r3, r31
/* 800448C0 00040520  48 00 02 A5 */	bl func_80044B64
/* 800448C4 00040524  3B FF 00 F0 */	addi r31, r31, 0xf0
/* 800448C8 00040528  7C 1F F0 40 */	cmplw r31, r30
/* 800448CC 0004052C  41 80 FF F0 */	blt lbl_800448BC
/* 800448D0 00040530  3B FD 0E C0 */	addi r31, r29, 0xec0
lbl_800448D4:
/* 800448D4 00040534  7F C3 F3 78 */	mr r3, r30
/* 800448D8 00040538  48 00 01 2D */	bl func_80044A04
/* 800448DC 0004053C  3B DE 00 E8 */	addi r30, r30, 0xe8
/* 800448E0 00040540  7C 1E F8 40 */	cmplw r30, r31
/* 800448E4 00040544  41 80 FF F0 */	blt lbl_800448D4
/* 800448E8 00040548  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800448EC 0004054C  7F A3 EB 78 */	mr r3, r29
/* 800448F0 00040550  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800448F4 00040554  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800448F8 00040558  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800448FC 0004055C  7C 08 03 A6 */	mtlr r0
/* 80044900 00040560  38 21 00 20 */	addi r1, r1, 0x20
/* 80044904 00040564  4E 80 00 20 */	blr

.global func_80044908
func_80044908:
/* 80044908 00040568  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004490C 0004056C  7C 08 02 A6 */	mflr r0
/* 80044910 00040570  90 01 00 24 */	stw r0, 0x24(r1)
/* 80044914 00040574  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80044918 00040578  FF E0 08 90 */	fmr f31, f1
/* 8004491C 0004057C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80044920 00040580  3B E3 0E C0 */	addi r31, r3, 0xec0
/* 80044924 00040584  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80044928 00040588  3B C3 07 80 */	addi r30, r3, 0x780
/* 8004492C 0004058C  93 A1 00 0C */	stw r29, 0xc(r1)
/* 80044930 00040590  7C 7D 1B 78 */	mr r29, r3
/* 80044934 00040594  48 00 00 14 */	b lbl_80044948
lbl_80044938:
/* 80044938 00040598  FC 20 F8 90 */	fmr f1, f31
/* 8004493C 0004059C  7F C3 F3 78 */	mr r3, r30
/* 80044940 000405A0  48 00 01 69 */	bl func_80044AA8
/* 80044944 000405A4  3B DE 00 E8 */	addi r30, r30, 0xe8
lbl_80044948:
/* 80044948 000405A8  7C 1E F8 40 */	cmplw r30, r31
/* 8004494C 000405AC  40 82 FF EC */	bne lbl_80044938
/* 80044950 000405B0  3B FD 07 80 */	addi r31, r29, 0x780
/* 80044954 000405B4  48 00 00 14 */	b lbl_80044968
lbl_80044958:
/* 80044958 000405B8  FC 20 F8 90 */	fmr f1, f31
/* 8004495C 000405BC  7F A3 EB 78 */	mr r3, r29
/* 80044960 000405C0  48 00 04 35 */	bl func_80044D94
/* 80044964 000405C4  3B BD 00 F0 */	addi r29, r29, 0xf0
lbl_80044968:
/* 80044968 000405C8  7C 1D F8 40 */	cmplw r29, r31
/* 8004496C 000405CC  40 82 FF EC */	bne lbl_80044958
/* 80044970 000405D0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80044974 000405D4  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80044978 000405D8  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004497C 000405DC  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 80044980 000405E0  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 80044984 000405E4  7C 08 03 A6 */	mtlr r0
/* 80044988 000405E8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004498C 000405EC  4E 80 00 20 */	blr
lbl_80044990:
/* 80044990 000405F0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80044994 000405F4  7C 08 02 A6 */	mflr r0
/* 80044998 000405F8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004499C 000405FC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800449A0 00040600  3B E3 0E C0 */	addi r31, r3, 0xec0
/* 800449A4 00040604  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800449A8 00040608  3B C3 07 80 */	addi r30, r3, 0x780
/* 800449AC 0004060C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800449B0 00040610  7C 7D 1B 78 */	mr r29, r3
/* 800449B4 00040614  48 00 00 10 */	b lbl_800449C4
lbl_800449B8:
/* 800449B8 00040618  7F C3 F3 78 */	mr r3, r30
/* 800449BC 0004061C  48 00 00 F1 */	bl func_80044AAC
/* 800449C0 00040620  3B DE 00 E8 */	addi r30, r30, 0xe8
lbl_800449C4:
/* 800449C4 00040624  7C 1E F8 40 */	cmplw r30, r31
/* 800449C8 00040628  40 82 FF F0 */	bne lbl_800449B8
/* 800449CC 0004062C  3B FD 07 80 */	addi r31, r29, 0x780
/* 800449D0 00040630  48 00 00 10 */	b lbl_800449E0
lbl_800449D4:
/* 800449D4 00040634  7F A3 EB 78 */	mr r3, r29
/* 800449D8 00040638  48 00 04 1D */	bl func_80044DF4
/* 800449DC 0004063C  3B BD 00 F0 */	addi r29, r29, 0xf0
lbl_800449E0:
/* 800449E0 00040640  7C 1D F8 40 */	cmplw r29, r31
/* 800449E4 00040644  40 82 FF F0 */	bne lbl_800449D4
/* 800449E8 00040648  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800449EC 0004064C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800449F0 00040650  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800449F4 00040654  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800449F8 00040658  7C 08 03 A6 */	mtlr r0
/* 800449FC 0004065C  38 21 00 20 */	addi r1, r1, 0x20
/* 80044A00 00040660  4E 80 00 20 */	blr

.global func_80044A04
func_80044A04:
/* 80044A04 00040664  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80044A08 00040668  7C 08 02 A6 */	mflr r0
/* 80044A0C 0004066C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80044A10 00040670  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80044A14 00040674  3B E3 00 88 */	addi r31, r3, 0x88
/* 80044A18 00040678  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80044A1C 0004067C  3B C3 00 1C */	addi r30, r3, 0x1c
/* 80044A20 00040680  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80044A24 00040684  7C 7D 1B 78 */	mr r29, r3
lbl_80044A28:
/* 80044A28 00040688  7F C3 F3 78 */	mr r3, r30
/* 80044A2C 0004068C  48 00 B8 F9 */	bl func_80050324
/* 80044A30 00040690  3B DE 00 24 */	addi r30, r30, 0x24
/* 80044A34 00040694  7C 1E F8 40 */	cmplw r30, r31
/* 80044A38 00040698  41 80 FF F0 */	blt lbl_80044A28
/* 80044A3C 0004069C  C0 02 83 78 */	lfs f0, lbl_80640978-_SDA2_BASE_(r2)
/* 80044A40 000406A0  38 80 00 00 */	li r4, 0
/* 80044A44 000406A4  38 00 FF FF */	li r0, -1
/* 80044A48 000406A8  98 9D 00 00 */	stb r4, 0(r29)
/* 80044A4C 000406AC  7F A3 EB 78 */	mr r3, r29
/* 80044A50 000406B0  B0 9D 00 14 */	sth r4, 0x14(r29)
/* 80044A54 000406B4  B0 9D 00 16 */	sth r4, 0x16(r29)
/* 80044A58 000406B8  90 9D 00 18 */	stw r4, 0x18(r29)
/* 80044A5C 000406BC  90 1D 00 10 */	stw r0, 0x10(r29)
/* 80044A60 000406C0  D0 1D 00 08 */	stfs f0, 8(r29)
/* 80044A64 000406C4  D0 1D 00 0C */	stfs f0, 0xc(r29)
/* 80044A68 000406C8  90 9D 00 04 */	stw r4, 4(r29)
/* 80044A6C 000406CC  98 9D 00 01 */	stb r4, 1(r29)
/* 80044A70 000406D0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80044A74 000406D4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80044A78 000406D8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80044A7C 000406DC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80044A80 000406E0  7C 08 03 A6 */	mtlr r0
/* 80044A84 000406E4  38 21 00 20 */	addi r1, r1, 0x20
/* 80044A88 000406E8  4E 80 00 20 */	blr

.global Audio_SoundAttributes_SetSoundType
Audio_SoundAttributes_SetSoundType:
/* 80044A8C 000406EC  90 83 00 04 */	stw r4, 4(r3)
/* 80044A90 000406F0  98 A3 00 01 */	stb r5, 1(r3)
/* 80044A94 000406F4  4E 80 00 20 */	blr

.global func_80044A98
func_80044A98:
/* 80044A98 000406F8  4E 80 00 20 */	blr

.global func_80044A9C
func_80044A9C:
/* 80044A9C 000406FC  7C 83 23 78 */	mr r3, r4
/* 80044AA0 00040700  7C A4 2B 78 */	mr r4, r5
/* 80044AA4 00040704  48 11 78 64 */	b func_8015C308

.global func_80044AA8
func_80044AA8:
/* 80044AA8 00040708  4E 80 00 20 */	blr

.global func_80044AAC
func_80044AAC:
/* 80044AAC 0004070C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80044AB0 00040710  7C 08 02 A6 */	mflr r0
/* 80044AB4 00040714  7C 65 1B 78 */	mr r5, r3
/* 80044AB8 00040718  90 01 00 24 */	stw r0, 0x24(r1)
/* 80044ABC 0004071C  88 03 00 00 */	lbz r0, 0(r3)
/* 80044AC0 00040720  2C 00 00 00 */	cmpwi r0, 0
/* 80044AC4 00040724  41 82 00 90 */	beq lbl_80044B54
/* 80044AC8 00040728  80 83 00 04 */	lwz r4, 4(r3)
/* 80044ACC 0004072C  2C 04 00 00 */	cmpwi r4, 0
/* 80044AD0 00040730  41 82 00 84 */	beq lbl_80044B54
/* 80044AD4 00040734  88 03 00 01 */	lbz r0, 1(r3)
/* 80044AD8 00040738  2C 00 00 00 */	cmpwi r0, 0
/* 80044ADC 0004073C  41 82 00 44 */	beq lbl_80044B20
/* 80044AE0 00040740  C0 25 00 08 */	lfs f1, 8(r5)
/* 80044AE4 00040744  7C 83 23 78 */	mr r3, r4
/* 80044AE8 00040748  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80044AEC 0004074C  39 20 00 00 */	li r9, 0
/* 80044AF0 00040750  FC 20 08 1E */	fctiwz f1, f1
/* 80044AF4 00040754  A8 C5 00 14 */	lha r6, 0x14(r5)
/* 80044AF8 00040758  FC 00 00 1E */	fctiwz f0, f0
/* 80044AFC 0004075C  A8 E5 00 16 */	lha r7, 0x16(r5)
/* 80044B00 00040760  81 05 00 10 */	lwz r8, 0x10(r5)
/* 80044B04 00040764  39 40 00 01 */	li r10, 1
/* 80044B08 00040768  D8 21 00 08 */	stfd f1, 8(r1)
/* 80044B0C 0004076C  D8 01 00 10 */	stfd f0, 0x10(r1)
/* 80044B10 00040770  80 81 00 0C */	lwz r4, 0xc(r1)
/* 80044B14 00040774  80 A1 00 14 */	lwz r5, 0x14(r1)
/* 80044B18 00040778  48 20 B5 85 */	bl func_8025009C
/* 80044B1C 0004077C  48 00 00 38 */	b lbl_80044B54
lbl_80044B20:
/* 80044B20 00040780  C0 25 00 08 */	lfs f1, 8(r5)
/* 80044B24 00040784  7C 83 23 78 */	mr r3, r4
/* 80044B28 00040788  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80044B2C 0004078C  FC 20 08 1E */	fctiwz f1, f1
/* 80044B30 00040790  A8 C5 00 14 */	lha r6, 0x14(r5)
/* 80044B34 00040794  FC 00 00 1E */	fctiwz f0, f0
/* 80044B38 00040798  A8 E5 00 16 */	lha r7, 0x16(r5)
/* 80044B3C 0004079C  81 05 00 10 */	lwz r8, 0x10(r5)
/* 80044B40 000407A0  D8 21 00 10 */	stfd f1, 0x10(r1)
/* 80044B44 000407A4  D8 01 00 08 */	stfd f0, 8(r1)
/* 80044B48 000407A8  80 81 00 14 */	lwz r4, 0x14(r1)
/* 80044B4C 000407AC  80 A1 00 0C */	lwz r5, 0xc(r1)
/* 80044B50 000407B0  48 20 B5 E5 */	bl func_80250134
lbl_80044B54:
/* 80044B54 000407B4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80044B58 000407B8  7C 08 03 A6 */	mtlr r0
/* 80044B5C 000407BC  38 21 00 20 */	addi r1, r1, 0x20
/* 80044B60 000407C0  4E 80 00 20 */	blr

.global func_80044B64
func_80044B64:
/* 80044B64 000407C4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80044B68 000407C8  7C 08 02 A6 */	mflr r0
/* 80044B6C 000407CC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80044B70 000407D0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80044B74 000407D4  3B E3 00 90 */	addi r31, r3, 0x90
/* 80044B78 000407D8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80044B7C 000407DC  3B C3 00 24 */	addi r30, r3, 0x24
/* 80044B80 000407E0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80044B84 000407E4  7C 7D 1B 78 */	mr r29, r3
lbl_80044B88:
/* 80044B88 000407E8  7F C3 F3 78 */	mr r3, r30
/* 80044B8C 000407EC  48 00 B7 99 */	bl func_80050324
/* 80044B90 000407F0  3B DE 00 24 */	addi r30, r30, 0x24
/* 80044B94 000407F4  7C 1E F8 40 */	cmplw r30, r31
/* 80044B98 000407F8  41 80 FF F0 */	blt lbl_80044B88
/* 80044B9C 000407FC  C0 02 83 78 */	lfs f0, lbl_80640978-_SDA2_BASE_(r2)
/* 80044BA0 00040800  38 C0 00 00 */	li r6, 0
/* 80044BA4 00040804  38 A0 00 AF */	li r5, 0xaf
/* 80044BA8 00040808  38 80 00 FF */	li r4, 0xff
/* 80044BAC 0004080C  38 00 00 64 */	li r0, 0x64
/* 80044BB0 00040810  98 DD 00 00 */	stb r6, 0(r29)
/* 80044BB4 00040814  7F A3 EB 78 */	mr r3, r29
/* 80044BB8 00040818  98 DD 00 01 */	stb r6, 1(r29)
/* 80044BBC 0004081C  90 DD 00 04 */	stw r6, 4(r29)
/* 80044BC0 00040820  D0 1D 00 08 */	stfs f0, 8(r29)
/* 80044BC4 00040824  D0 1D 00 0C */	stfs f0, 0xc(r29)
/* 80044BC8 00040828  98 BD 00 10 */	stb r5, 0x10(r29)
/* 80044BCC 0004082C  98 BD 00 11 */	stb r5, 0x11(r29)
/* 80044BD0 00040830  98 BD 00 12 */	stb r5, 0x12(r29)
/* 80044BD4 00040834  98 9D 00 13 */	stb r4, 0x13(r29)
/* 80044BD8 00040838  98 DD 00 14 */	stb r6, 0x14(r29)
/* 80044BDC 0004083C  98 DD 00 15 */	stb r6, 0x15(r29)
/* 80044BE0 00040840  98 BD 00 16 */	stb r5, 0x16(r29)
/* 80044BE4 00040844  98 9D 00 17 */	stb r4, 0x17(r29)
/* 80044BE8 00040848  98 DD 00 18 */	stb r6, 0x18(r29)
/* 80044BEC 0004084C  98 DD 00 19 */	stb r6, 0x19(r29)
/* 80044BF0 00040850  98 DD 00 1A */	stb r6, 0x1a(r29)
/* 80044BF4 00040854  98 9D 00 1B */	stb r4, 0x1b(r29)
/* 80044BF8 00040858  90 1D 00 1C */	stw r0, 0x1c(r29)
/* 80044BFC 0004085C  90 DD 00 20 */	stw r6, 0x20(r29)
/* 80044C00 00040860  B0 DD 00 90 */	sth r6, 0x90(r29)
/* 80044C04 00040864  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80044C08 00040868  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80044C0C 0004086C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80044C10 00040870  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80044C14 00040874  7C 08 03 A6 */	mtlr r0
/* 80044C18 00040878  38 21 00 20 */	addi r1, r1, 0x20
/* 80044C1C 0004087C  4E 80 00 20 */	blr

.global func_80044C20
func_80044C20:
/* 80044C20 00040880  94 21 FD F0 */	stwu r1, -0x210(r1)
/* 80044C24 00040884  7C 08 02 A6 */	mflr r0
/* 80044C28 00040888  90 01 02 14 */	stw r0, 0x214(r1)
/* 80044C2C 0004088C  7C 80 23 78 */	mr r0, r4
/* 80044C30 00040890  93 E1 02 0C */	stw r31, 0x20c(r1)
/* 80044C34 00040894  7C 7F 1B 78 */	mr r31, r3
/* 80044C38 00040898  90 83 00 04 */	stw r4, 4(r3)
/* 80044C3C 0004089C  38 81 00 08 */	addi r4, r1, 8
/* 80044C40 000408A0  7C 03 03 78 */	mr r3, r0
/* 80044C44 000408A4  48 20 B7 95 */	bl func_802503D8
/* 80044C48 000408A8  7C 60 07 34 */	extsh r0, r3
/* 80044C4C 000408AC  2C 00 00 30 */	cmpwi r0, 0x30
/* 80044C50 000408B0  41 80 00 08 */	blt lbl_80044C58
/* 80044C54 000408B4  38 60 00 2F */	li r3, 0x2f
lbl_80044C58:
/* 80044C58 000408B8  7C 60 07 34 */	extsh r0, r3
/* 80044C5C 000408BC  38 E0 00 00 */	li r7, 0
/* 80044C60 000408C0  54 05 08 3C */	slwi r5, r0, 1
/* 80044C64 000408C4  38 7F 00 90 */	addi r3, r31, 0x90
/* 80044C68 000408C8  7C DF 2A 14 */	add r6, r31, r5
/* 80044C6C 000408CC  38 81 00 08 */	addi r4, r1, 8
/* 80044C70 000408D0  B0 E6 00 90 */	sth r7, 0x90(r6)
/* 80044C74 000408D4  4B FB F3 8D */	bl memcpy
/* 80044C78 000408D8  80 01 02 14 */	lwz r0, 0x214(r1)
/* 80044C7C 000408DC  83 E1 02 0C */	lwz r31, 0x20c(r1)
/* 80044C80 000408E0  7C 08 03 A6 */	mtlr r0
/* 80044C84 000408E4  38 21 02 10 */	addi r1, r1, 0x210
/* 80044C88 000408E8  4E 80 00 20 */	blr

.global func_80044C8C
func_80044C8C:
/* 80044C8C 000408EC  7C 83 23 78 */	mr r3, r4
/* 80044C90 000408F0  7C A4 2B 78 */	mr r4, r5
/* 80044C94 000408F4  48 11 76 74 */	b func_8015C308

.global func_80044C98
func_80044C98:
/* 80044C98 000408F8  2C 04 00 00 */	cmpwi r4, 0
/* 80044C9C 000408FC  40 82 00 18 */	bne lbl_80044CB4
/* 80044CA0 00040900  80 03 00 20 */	lwz r0, 0x20(r3)
/* 80044CA4 00040904  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 80044CA8 00040908  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80044CAC 0004090C  90 03 00 20 */	stw r0, 0x20(r3)
/* 80044CB0 00040910  4E 80 00 20 */	blr
lbl_80044CB4:
/* 80044CB4 00040914  2C 04 00 01 */	cmpwi r4, 1
/* 80044CB8 00040918  4C 82 00 20 */	bnelr
/* 80044CBC 0004091C  80 03 00 20 */	lwz r0, 0x20(r3)
/* 80044CC0 00040920  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 80044CC4 00040924  60 00 00 04 */	ori r0, r0, 4
/* 80044CC8 00040928  90 03 00 20 */	stw r0, 0x20(r3)
/* 80044CCC 0004092C  4E 80 00 20 */	blr

.global func_80044CD0
func_80044CD0:
/* 80044CD0 00040930  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80044CD4 00040934  7C 08 02 A6 */	mflr r0
/* 80044CD8 00040938  C8 22 83 80 */	lfd f1, lbl_80640980-_SDA2_BASE_(r2)
/* 80044CDC 0004093C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80044CE0 00040940  3C 00 43 30 */	lis r0, 0x4330
/* 80044CE4 00040944  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 80044CE8 00040948  38 63 00 90 */	addi r3, r3, 0x90
/* 80044CEC 0004094C  90 01 00 08 */	stw r0, 8(r1)
/* 80044CF0 00040950  54 80 06 3E */	clrlwi r0, r4, 0x18
/* 80044CF4 00040954  90 01 00 0C */	stw r0, 0xc(r1)
/* 80044CF8 00040958  C8 01 00 08 */	lfd f0, 8(r1)
/* 80044CFC 0004095C  EC 20 08 28 */	fsubs f1, f0, f1
/* 80044D00 00040960  48 20 B8 61 */	bl func_80250560
/* 80044D04 00040964  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80044D08 00040968  7C 08 03 A6 */	mtlr r0
/* 80044D0C 0004096C  38 21 00 10 */	addi r1, r1, 0x10
/* 80044D10 00040970  4E 80 00 20 */	blr

.global func_80044D14
func_80044D14:
/* 80044D14 00040974  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80044D18 00040978  7C 08 02 A6 */	mflr r0
/* 80044D1C 0004097C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80044D20 00040980  38 A1 00 08 */	addi r5, r1, 8
/* 80044D24 00040984  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80044D28 00040988  FF E0 18 90 */	fmr f31, f3
/* 80044D2C 0004098C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80044D30 00040990  7C 9F 23 78 */	mr r31, r4
/* 80044D34 00040994  38 83 00 08 */	addi r4, r3, 8
/* 80044D38 00040998  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80044D3C 0004099C  7C 7E 1B 78 */	mr r30, r3
/* 80044D40 000409A0  7F E7 FB 78 */	mr r7, r31
/* 80044D44 000409A4  7C 86 23 78 */	mr r6, r4
/* 80044D48 000409A8  D0 21 00 08 */	stfs f1, 8(r1)
/* 80044D4C 000409AC  FC 20 F8 90 */	fmr f1, f31
/* 80044D50 000409B0  38 63 00 24 */	addi r3, r3, 0x24
/* 80044D54 000409B4  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80044D58 000409B8  48 00 B5 E5 */	bl func_8005033C
/* 80044D5C 000409BC  FC 20 F8 90 */	fmr f1, f31
/* 80044D60 000409C0  38 9E 00 0C */	addi r4, r30, 0xc
/* 80044D64 000409C4  7C 86 23 78 */	mr r6, r4
/* 80044D68 000409C8  7F E7 FB 78 */	mr r7, r31
/* 80044D6C 000409CC  38 7E 00 48 */	addi r3, r30, 0x48
/* 80044D70 000409D0  38 A1 00 0C */	addi r5, r1, 0xc
/* 80044D74 000409D4  48 00 B5 C9 */	bl func_8005033C
/* 80044D78 000409D8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80044D7C 000409DC  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80044D80 000409E0  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80044D84 000409E4  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 80044D88 000409E8  7C 08 03 A6 */	mtlr r0
/* 80044D8C 000409EC  38 21 00 20 */	addi r1, r1, 0x20
/* 80044D90 000409F0  4E 80 00 20 */	blr

.global func_80044D94
func_80044D94:
/* 80044D94 000409F4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80044D98 000409F8  7C 08 02 A6 */	mflr r0
/* 80044D9C 000409FC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80044DA0 00040A00  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 80044DA4 00040A04  FF E0 08 90 */	fmr f31, f1
/* 80044DA8 00040A08  93 E1 00 14 */	stw r31, 0x14(r1)
/* 80044DAC 00040A0C  7C 7F 1B 78 */	mr r31, r3
/* 80044DB0 00040A10  81 83 00 44 */	lwz r12, 0x44(r3)
/* 80044DB4 00040A14  81 8C 00 08 */	lwz r12, 8(r12)
/* 80044DB8 00040A18  7D 89 03 A6 */	mtctr r12
/* 80044DBC 00040A1C  38 63 00 24 */	addi r3, r3, 0x24
/* 80044DC0 00040A20  4E 80 04 21 */	bctrl
/* 80044DC4 00040A24  81 9F 00 68 */	lwz r12, 0x68(r31)
/* 80044DC8 00040A28  FC 20 F8 90 */	fmr f1, f31
/* 80044DCC 00040A2C  38 7F 00 48 */	addi r3, r31, 0x48
/* 80044DD0 00040A30  81 8C 00 08 */	lwz r12, 8(r12)
/* 80044DD4 00040A34  7D 89 03 A6 */	mtctr r12
/* 80044DD8 00040A38  4E 80 04 21 */	bctrl
/* 80044DDC 00040A3C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80044DE0 00040A40  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 80044DE4 00040A44  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 80044DE8 00040A48  7C 08 03 A6 */	mtlr r0
/* 80044DEC 00040A4C  38 21 00 20 */	addi r1, r1, 0x20
/* 80044DF0 00040A50  4E 80 00 20 */	blr

.global func_80044DF4
func_80044DF4:
/* 80044DF4 00040A54  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80044DF8 00040A58  7C 08 02 A6 */	mflr r0
/* 80044DFC 00040A5C  90 01 00 44 */	stw r0, 0x44(r1)
/* 80044E00 00040A60  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80044E04 00040A64  7C 7F 1B 78 */	mr r31, r3
/* 80044E08 00040A68  88 03 00 00 */	lbz r0, 0(r3)
/* 80044E0C 00040A6C  2C 00 00 00 */	cmpwi r0, 0
/* 80044E10 00040A70  41 82 00 E4 */	beq lbl_80044EF4
/* 80044E14 00040A74  88 03 00 14 */	lbz r0, 0x14(r3)
/* 80044E18 00040A78  38 81 00 10 */	addi r4, r1, 0x10
/* 80044E1C 00040A7C  98 01 00 10 */	stb r0, 0x10(r1)
/* 80044E20 00040A80  88 03 00 15 */	lbz r0, 0x15(r3)
/* 80044E24 00040A84  98 01 00 11 */	stb r0, 0x11(r1)
/* 80044E28 00040A88  88 03 00 16 */	lbz r0, 0x16(r3)
/* 80044E2C 00040A8C  98 01 00 12 */	stb r0, 0x12(r1)
/* 80044E30 00040A90  88 03 00 17 */	lbz r0, 0x17(r3)
/* 80044E34 00040A94  38 60 00 00 */	li r3, 0
/* 80044E38 00040A98  98 01 00 13 */	stb r0, 0x13(r1)
/* 80044E3C 00040A9C  48 20 B7 B5 */	bl func_802505F0
/* 80044E40 00040AA0  88 1F 00 18 */	lbz r0, 0x18(r31)
/* 80044E44 00040AA4  38 81 00 0C */	addi r4, r1, 0xc
/* 80044E48 00040AA8  38 60 00 01 */	li r3, 1
/* 80044E4C 00040AAC  98 01 00 0C */	stb r0, 0xc(r1)
/* 80044E50 00040AB0  88 1F 00 19 */	lbz r0, 0x19(r31)
/* 80044E54 00040AB4  98 01 00 0D */	stb r0, 0xd(r1)
/* 80044E58 00040AB8  88 1F 00 1A */	lbz r0, 0x1a(r31)
/* 80044E5C 00040ABC  98 01 00 0E */	stb r0, 0xe(r1)
/* 80044E60 00040AC0  88 1F 00 1B */	lbz r0, 0x1b(r31)
/* 80044E64 00040AC4  98 01 00 0F */	stb r0, 0xf(r1)
/* 80044E68 00040AC8  48 20 B7 89 */	bl func_802505F0
/* 80044E6C 00040ACC  88 7F 00 01 */	lbz r3, 1(r31)
/* 80044E70 00040AD0  48 20 B7 E5 */	bl func_80250654
/* 80044E74 00040AD4  88 9F 00 10 */	lbz r4, 0x10(r31)
/* 80044E78 00040AD8  3C 00 43 30 */	lis r0, 0x4330
/* 80044E7C 00040ADC  3C 60 80 41 */	lis r3, lbl_8040A430@ha
/* 80044E80 00040AE0  90 01 00 28 */	stw r0, 0x28(r1)
/* 80044E84 00040AE4  C8 22 83 80 */	lfd f1, lbl_80640980-_SDA2_BASE_(r2)
/* 80044E88 00040AE8  38 63 A4 30 */	addi r3, r3, lbl_8040A430@l
/* 80044E8C 00040AEC  98 81 00 08 */	stb r4, 8(r1)
/* 80044E90 00040AF0  38 C1 00 08 */	addi r6, r1, 8
/* 80044E94 00040AF4  88 1F 00 11 */	lbz r0, 0x11(r31)
/* 80044E98 00040AF8  98 01 00 09 */	stb r0, 9(r1)
/* 80044E9C 00040AFC  88 1F 00 12 */	lbz r0, 0x12(r31)
/* 80044EA0 00040B00  98 01 00 0A */	stb r0, 0xa(r1)
/* 80044EA4 00040B04  88 1F 00 13 */	lbz r0, 0x13(r31)
/* 80044EA8 00040B08  98 01 00 0B */	stb r0, 0xb(r1)
/* 80044EAC 00040B0C  C0 5F 00 08 */	lfs f2, 8(r31)
/* 80044EB0 00040B10  80 9F 00 1C */	lwz r4, 0x1c(r31)
/* 80044EB4 00040B14  FC 60 10 1E */	fctiwz f3, f2
/* 80044EB8 00040B18  C0 1F 00 0C */	lfs f0, 0xc(r31)
/* 80044EBC 00040B1C  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 80044EC0 00040B20  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80044EC4 00040B24  FC 40 00 1E */	fctiwz f2, f0
/* 80044EC8 00040B28  90 81 00 2C */	stw r4, 0x2c(r1)
/* 80044ECC 00040B2C  D8 61 00 18 */	stfd f3, 0x18(r1)
/* 80044ED0 00040B30  54 07 06 3E */	clrlwi r7, r0, 0x18
/* 80044ED4 00040B34  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 80044ED8 00040B38  D8 41 00 20 */	stfd f2, 0x20(r1)
/* 80044EDC 00040B3C  80 81 00 1C */	lwz r4, 0x1c(r1)
/* 80044EE0 00040B40  EC 20 08 28 */	fsubs f1, f0, f1
/* 80044EE4 00040B44  80 A1 00 24 */	lwz r5, 0x24(r1)
/* 80044EE8 00040B48  7C 84 07 34 */	extsh r4, r4
/* 80044EEC 00040B4C  7C A5 07 34 */	extsh r5, r5
/* 80044EF0 00040B50  48 20 B5 31 */	bl func_80250420
lbl_80044EF4:
/* 80044EF4 00040B54  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80044EF8 00040B58  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80044EFC 00040B5C  7C 08 03 A6 */	mtlr r0
/* 80044F00 00040B60  38 21 00 40 */	addi r1, r1, 0x40
/* 80044F04 00040B64  4E 80 00 20 */	blr

.global func_80044F08
func_80044F08:
/* 80044F08 00040B68  38 A0 00 01 */	li r5, 1
/* 80044F0C 00040B6C  38 6D 97 E0 */	addi r3, r13, lbl_8063EAA0-_SDA_BASE_
/* 80044F10 00040B70  38 80 00 04 */	li r4, 4
/* 80044F14 00040B74  38 00 00 00 */	li r0, 0
/* 80044F18 00040B78  98 AD 97 E0 */	stb r5, lbl_8063EAA0-_SDA_BASE_(r13)
/* 80044F1C 00040B7C  B0 83 00 02 */	sth r4, 2(r3)
/* 80044F20 00040B80  98 03 00 04 */	stb r0, 4(r3)
/* 80044F24 00040B84  4E 80 00 20 */	blr

.global func_80044F28
func_80044F28:
/* 80044F28 00040B88  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80044F2C 00040B8C  7C 08 02 A6 */	mflr r0
/* 80044F30 00040B90  90 01 00 14 */	stw r0, 0x14(r1)
/* 80044F34 00040B94  38 00 00 00 */	li r0, 0
/* 80044F38 00040B98  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80044F3C 00040B9C  7C 7F 1B 78 */	mr r31, r3
/* 80044F40 00040BA0  98 03 00 40 */	stb r0, 0x40(r3)
/* 80044F44 00040BA4  98 03 00 41 */	stb r0, 0x41(r3)
/* 80044F48 00040BA8  98 03 00 42 */	stb r0, 0x42(r3)
/* 80044F4C 00040BAC  98 03 00 10 */	stb r0, 0x10(r3)
/* 80044F50 00040BB0  98 03 00 11 */	stb r0, 0x11(r3)
/* 80044F54 00040BB4  98 03 00 12 */	stb r0, 0x12(r3)
/* 80044F58 00040BB8  48 00 00 1D */	bl func_80044F74
/* 80044F5C 00040BBC  7F E3 FB 78 */	mr r3, r31
/* 80044F60 00040BC0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80044F64 00040BC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80044F68 00040BC8  7C 08 03 A6 */	mtlr r0
/* 80044F6C 00040BCC  38 21 00 10 */	addi r1, r1, 0x10
/* 80044F70 00040BD0  4E 80 00 20 */	blr

.global func_80044F74
func_80044F74:
/* 80044F74 00040BD4  38 00 00 00 */	li r0, 0
/* 80044F78 00040BD8  90 03 00 04 */	stw r0, 4(r3)
/* 80044F7C 00040BDC  90 03 00 08 */	stw r0, 8(r3)
/* 80044F80 00040BE0  90 03 00 0C */	stw r0, 0xc(r3)
/* 80044F84 00040BE4  B0 03 00 3C */	sth r0, 0x3c(r3)
/* 80044F88 00040BE8  98 03 00 3E */	stb r0, 0x3e(r3)
/* 80044F8C 00040BEC  98 03 00 43 */	stb r0, 0x43(r3)
/* 80044F90 00040BF0  98 03 00 3F */	stb r0, 0x3f(r3)
/* 80044F94 00040BF4  98 03 00 40 */	stb r0, 0x40(r3)
/* 80044F98 00040BF8  98 03 00 41 */	stb r0, 0x41(r3)
/* 80044F9C 00040BFC  98 03 00 42 */	stb r0, 0x42(r3)
/* 80044FA0 00040C00  98 03 00 10 */	stb r0, 0x10(r3)
/* 80044FA4 00040C04  98 03 00 11 */	stb r0, 0x11(r3)
/* 80044FA8 00040C08  98 03 00 12 */	stb r0, 0x12(r3)
/* 80044FAC 00040C0C  4E 80 00 20 */	blr

.global func_80044FB0
func_80044FB0:
/* 80044FB0 00040C10  88 63 00 3F */	lbz r3, 0x3f(r3)
/* 80044FB4 00040C14  4E 80 00 20 */	blr

.global func_80044FB8
func_80044FB8:
/* 80044FB8 00040C18  80 03 00 08 */	lwz r0, 8(r3)
/* 80044FBC 00040C1C  38 80 00 00 */	li r4, 0
/* 80044FC0 00040C20  2C 00 00 00 */	cmpwi r0, 0
/* 80044FC4 00040C24  41 82 00 08 */	beq lbl_80044FCC
/* 80044FC8 00040C28  38 80 00 01 */	li r4, 1
lbl_80044FCC:
/* 80044FCC 00040C2C  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80044FD0 00040C30  2C 00 00 00 */	cmpwi r0, 0
/* 80044FD4 00040C34  41 82 00 08 */	beq lbl_80044FDC
/* 80044FD8 00040C38  38 84 00 01 */	addi r4, r4, 1
lbl_80044FDC:
/* 80044FDC 00040C3C  7C 83 23 78 */	mr r3, r4
/* 80044FE0 00040C40  4E 80 00 20 */	blr

.global func_80044FE4
func_80044FE4:
/* 80044FE4 00040C44  38 00 00 00 */	li r0, 0
/* 80044FE8 00040C48  39 00 00 01 */	li r8, 1
/* 80044FEC 00040C4C  99 03 00 3F */	stb r8, 0x3f(r3)
/* 80044FF0 00040C50  90 83 00 00 */	stw r4, 0(r3)
/* 80044FF4 00040C54  90 A3 00 04 */	stw r5, 4(r3)
/* 80044FF8 00040C58  90 C3 00 08 */	stw r6, 8(r3)
/* 80044FFC 00040C5C  90 E3 00 0C */	stw r7, 0xc(r3)
/* 80045000 00040C60  98 03 00 40 */	stb r0, 0x40(r3)
/* 80045004 00040C64  98 03 00 41 */	stb r0, 0x41(r3)
/* 80045008 00040C68  98 03 00 42 */	stb r0, 0x42(r3)
/* 8004500C 00040C6C  4E 80 00 20 */	blr

.global func_80045010
func_80045010:
/* 80045010 00040C70  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80045014 00040C74  7C 08 02 A6 */	mflr r0
/* 80045018 00040C78  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004501C 00040C7C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80045020 00040C80  7C 7F 1B 78 */	mr r31, r3
/* 80045024 00040C84  88 03 00 3F */	lbz r0, 0x3f(r3)
/* 80045028 00040C88  2C 00 00 00 */	cmpwi r0, 0
/* 8004502C 00040C8C  41 82 00 2C */	beq lbl_80045058
/* 80045030 00040C90  88 03 00 40 */	lbz r0, 0x40(r3)
/* 80045034 00040C94  2C 00 00 00 */	cmpwi r0, 0
/* 80045038 00040C98  41 82 00 18 */	beq lbl_80045050
/* 8004503C 00040C9C  80 63 00 04 */	lwz r3, 4(r3)
/* 80045040 00040CA0  4B FF 7E CD */	bl func_8003CF0C
/* 80045044 00040CA4  38 00 00 00 */	li r0, 0
/* 80045048 00040CA8  90 1F 00 04 */	stw r0, 4(r31)
/* 8004504C 00040CAC  98 1F 00 40 */	stb r0, 0x40(r31)
lbl_80045050:
/* 80045050 00040CB0  7F E3 FB 78 */	mr r3, r31
/* 80045054 00040CB4  48 00 00 19 */	bl func_8004506C
lbl_80045058:
/* 80045058 00040CB8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004505C 00040CBC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80045060 00040CC0  7C 08 03 A6 */	mtlr r0
/* 80045064 00040CC4  38 21 00 10 */	addi r1, r1, 0x10
/* 80045068 00040CC8  4E 80 00 20 */	blr

.global func_8004506C
func_8004506C:
/* 8004506C 00040CCC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80045070 00040CD0  7C 08 02 A6 */	mflr r0
/* 80045074 00040CD4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80045078 00040CD8  39 61 00 20 */	addi r11, r1, 0x20
/* 8004507C 00040CDC  48 18 20 AD */	bl _savegpr_27
/* 80045080 00040CE0  7C 7B 1B 78 */	mr r27, r3
/* 80045084 00040CE4  3B 80 00 00 */	li r28, 0
/* 80045088 00040CE8  7F 7E DB 78 */	mr r30, r27
/* 8004508C 00040CEC  3B E0 00 00 */	li r31, 0
lbl_80045090:
/* 80045090 00040CF0  7F BB E2 14 */	add r29, r27, r28
/* 80045094 00040CF4  88 1D 00 41 */	lbz r0, 0x41(r29)
/* 80045098 00040CF8  2C 00 00 00 */	cmpwi r0, 0
/* 8004509C 00040CFC  41 82 00 14 */	beq lbl_800450B0
/* 800450A0 00040D00  80 7E 00 08 */	lwz r3, 8(r30)
/* 800450A4 00040D04  4B FF 7E 69 */	bl func_8003CF0C
/* 800450A8 00040D08  93 FE 00 08 */	stw r31, 8(r30)
/* 800450AC 00040D0C  9B FD 00 41 */	stb r31, 0x41(r29)
lbl_800450B0:
/* 800450B0 00040D10  3B 9C 00 01 */	addi r28, r28, 1
/* 800450B4 00040D14  3B DE 00 04 */	addi r30, r30, 4
/* 800450B8 00040D18  2C 1C 00 02 */	cmpwi r28, 2
/* 800450BC 00040D1C  41 80 FF D4 */	blt lbl_80045090
/* 800450C0 00040D20  39 61 00 20 */	addi r11, r1, 0x20
/* 800450C4 00040D24  48 18 20 B1 */	bl _restgpr_27
/* 800450C8 00040D28  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800450CC 00040D2C  7C 08 03 A6 */	mtlr r0
/* 800450D0 00040D30  38 21 00 20 */	addi r1, r1, 0x20
/* 800450D4 00040D34  4E 80 00 20 */	blr

.global func_800450D8
func_800450D8:
/* 800450D8 00040D38  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800450DC 00040D3C  7C 08 02 A6 */	mflr r0
/* 800450E0 00040D40  90 01 00 24 */	stw r0, 0x24(r1)
/* 800450E4 00040D44  39 61 00 20 */	addi r11, r1, 0x20
/* 800450E8 00040D48  48 18 20 3D */	bl _savegpr_26
/* 800450EC 00040D4C  7C 7A 1B 78 */	mr r26, r3
/* 800450F0 00040D50  80 63 00 04 */	lwz r3, 4(r3)
/* 800450F4 00040D54  7C 9B 23 78 */	mr r27, r4
/* 800450F8 00040D58  7C BC 2B 78 */	mr r28, r5
/* 800450FC 00040D5C  7C DD 33 78 */	mr r29, r6
/* 80045100 00040D60  7C FE 3B 78 */	mr r30, r7
/* 80045104 00040D64  7D 1F 43 78 */	mr r31, r8
/* 80045108 00040D68  4B FF 7E 05 */	bl func_8003CF0C
/* 8004510C 00040D6C  4B FF 90 51 */	bl func_8003E15C
/* 80045110 00040D70  4B FF 90 AD */	bl func_8003E1BC
/* 80045114 00040D74  2C 03 00 00 */	cmpwi r3, 0
/* 80045118 00040D78  90 7A 00 04 */	stw r3, 4(r26)
/* 8004511C 00040D7C  41 82 00 2C */	beq lbl_80045148
/* 80045120 00040D80  7F 84 E3 78 */	mr r4, r28
/* 80045124 00040D84  7F A5 EB 78 */	mr r5, r29
/* 80045128 00040D88  7F E7 FB 78 */	mr r7, r31
/* 8004512C 00040D8C  7F C6 07 74 */	extsb r6, r30
/* 80045130 00040D90  4B FF 7F 91 */	bl func_8003D0C0
/* 80045134 00040D94  80 7A 00 04 */	lwz r3, 4(r26)
/* 80045138 00040D98  38 80 00 02 */	li r4, 2
/* 8004513C 00040D9C  38 00 00 01 */	li r0, 1
/* 80045140 00040DA0  B0 83 05 0C */	sth r4, 0x50c(r3)
/* 80045144 00040DA4  98 1A 00 40 */	stb r0, 0x40(r26)
lbl_80045148:
/* 80045148 00040DA8  38 60 00 00 */	li r3, 0
/* 8004514C 00040DAC  38 00 00 01 */	li r0, 1
/* 80045150 00040DB0  98 7A 00 10 */	stb r3, 0x10(r26)
/* 80045154 00040DB4  39 61 00 20 */	addi r11, r1, 0x20
/* 80045158 00040DB8  98 1A 00 3F */	stb r0, 0x3f(r26)
/* 8004515C 00040DBC  93 7A 00 00 */	stw r27, 0(r26)
/* 80045160 00040DC0  48 18 20 11 */	bl _restgpr_26
/* 80045164 00040DC4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80045168 00040DC8  7C 08 03 A6 */	mtlr r0
/* 8004516C 00040DCC  38 21 00 20 */	addi r1, r1, 0x20
/* 80045170 00040DD0  4E 80 00 20 */	blr
lbl_80045174:
/* 80045174 00040DD4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80045178 00040DD8  7C 08 02 A6 */	mflr r0
/* 8004517C 00040DDC  90 01 00 34 */	stw r0, 0x34(r1)
/* 80045180 00040DE0  39 61 00 30 */	addi r11, r1, 0x30
/* 80045184 00040DE4  48 18 1F A5 */	bl _savegpr_27
/* 80045188 00040DE8  83 C3 00 04 */	lwz r30, 4(r3)
/* 8004518C 00040DEC  7C 7B 1B 78 */	mr r27, r3
/* 80045190 00040DF0  7C 9C 23 78 */	mr r28, r4
/* 80045194 00040DF4  7C BD 2B 78 */	mr r29, r5
/* 80045198 00040DF8  2C 1E 00 00 */	cmpwi r30, 0
/* 8004519C 00040DFC  41 82 01 44 */	beq lbl_800452E0
/* 800451A0 00040E00  A0 1E 05 0C */	lhz r0, 0x50c(r30)
/* 800451A4 00040E04  28 00 00 02 */	cmplwi r0, 2
/* 800451A8 00040E08  41 82 00 08 */	beq lbl_800451B0
/* 800451AC 00040E0C  48 00 01 34 */	b lbl_800452E0
lbl_800451B0:
/* 800451B0 00040E10  39 40 00 00 */	li r10, 0
/* 800451B4 00040E14  39 20 00 01 */	li r9, 1
/* 800451B8 00040E18  1C CA 00 AC */	mulli r6, r10, 0xac
/* 800451BC 00040E1C  39 9E 05 24 */	addi r12, r30, 0x524
/* 800451C0 00040E20  89 7E 05 21 */	lbz r11, 0x521(r30)
/* 800451C4 00040E24  39 00 00 02 */	li r8, 2
/* 800451C8 00040E28  A3 FE 05 1C */	lhz r31, 0x51c(r30)
/* 800451CC 00040E2C  38 E0 00 03 */	li r7, 3
/* 800451D0 00040E30  1C 89 00 AC */	mulli r4, r9, 0xac
/* 800451D4 00040E34  7C CC 32 14 */	add r6, r12, r6
/* 800451D8 00040E38  88 06 00 19 */	lbz r0, 0x19(r6)
/* 800451DC 00040E3C  38 A0 00 04 */	li r5, 4
/* 800451E0 00040E40  39 40 00 05 */	li r10, 5
/* 800451E4 00040E44  98 01 00 08 */	stb r0, 8(r1)
/* 800451E8 00040E48  7C 8C 22 14 */	add r4, r12, r4
/* 800451EC 00040E4C  39 20 00 06 */	li r9, 6
/* 800451F0 00040E50  1C 08 00 AC */	mulli r0, r8, 0xac
/* 800451F4 00040E54  88 C4 00 19 */	lbz r6, 0x19(r4)
/* 800451F8 00040E58  39 00 00 07 */	li r8, 7
/* 800451FC 00040E5C  98 C1 00 09 */	stb r6, 9(r1)
/* 80045200 00040E60  7D 7E 07 74 */	extsb r30, r11
/* 80045204 00040E64  7C 8C 02 14 */	add r4, r12, r0
/* 80045208 00040E68  1C 07 00 AC */	mulli r0, r7, 0xac
/* 8004520C 00040E6C  88 C4 00 19 */	lbz r6, 0x19(r4)
/* 80045210 00040E70  38 E0 00 08 */	li r7, 8
/* 80045214 00040E74  98 C1 00 0A */	stb r6, 0xa(r1)
/* 80045218 00040E78  7C 8C 02 14 */	add r4, r12, r0
/* 8004521C 00040E7C  1C 05 00 AC */	mulli r0, r5, 0xac
/* 80045220 00040E80  88 C4 00 19 */	lbz r6, 0x19(r4)
/* 80045224 00040E84  38 A0 00 09 */	li r5, 9
/* 80045228 00040E88  98 C1 00 0B */	stb r6, 0xb(r1)
/* 8004522C 00040E8C  7C 8C 02 14 */	add r4, r12, r0
/* 80045230 00040E90  88 04 00 19 */	lbz r0, 0x19(r4)
/* 80045234 00040E94  1C CA 00 AC */	mulli r6, r10, 0xac
/* 80045238 00040E98  98 01 00 0C */	stb r0, 0xc(r1)
/* 8004523C 00040E9C  7C CC 32 14 */	add r6, r12, r6
/* 80045240 00040EA0  1C 89 00 AC */	mulli r4, r9, 0xac
/* 80045244 00040EA4  88 06 00 19 */	lbz r0, 0x19(r6)
/* 80045248 00040EA8  98 01 00 0D */	stb r0, 0xd(r1)
/* 8004524C 00040EAC  7C 8C 22 14 */	add r4, r12, r4
/* 80045250 00040EB0  88 C4 00 19 */	lbz r6, 0x19(r4)
/* 80045254 00040EB4  1C 08 00 AC */	mulli r0, r8, 0xac
/* 80045258 00040EB8  98 C1 00 0E */	stb r6, 0xe(r1)
/* 8004525C 00040EBC  7C 8C 02 14 */	add r4, r12, r0
/* 80045260 00040EC0  88 C4 00 19 */	lbz r6, 0x19(r4)
/* 80045264 00040EC4  1C 07 00 AC */	mulli r0, r7, 0xac
/* 80045268 00040EC8  98 C1 00 0F */	stb r6, 0xf(r1)
/* 8004526C 00040ECC  7C 8C 02 14 */	add r4, r12, r0
/* 80045270 00040ED0  88 C4 00 19 */	lbz r6, 0x19(r4)
/* 80045274 00040ED4  1C 05 00 AC */	mulli r0, r5, 0xac
/* 80045278 00040ED8  98 C1 00 10 */	stb r6, 0x10(r1)
/* 8004527C 00040EDC  7C 8C 02 14 */	add r4, r12, r0
/* 80045280 00040EE0  88 04 00 19 */	lbz r0, 0x19(r4)
/* 80045284 00040EE4  98 01 00 11 */	stb r0, 0x11(r1)
/* 80045288 00040EE8  80 63 00 04 */	lwz r3, 4(r3)
/* 8004528C 00040EEC  4B FF 7C 81 */	bl func_8003CF0C
/* 80045290 00040EF0  4B FF 8E CD */	bl func_8003E15C
/* 80045294 00040EF4  4B FF 8F 29 */	bl func_8003E1BC
/* 80045298 00040EF8  2C 03 00 00 */	cmpwi r3, 0
/* 8004529C 00040EFC  90 7B 00 04 */	stw r3, 4(r27)
/* 800452A0 00040F00  41 82 00 2C */	beq lbl_800452CC
/* 800452A4 00040F04  7F E4 FB 78 */	mr r4, r31
/* 800452A8 00040F08  7F A5 EB 78 */	mr r5, r29
/* 800452AC 00040F0C  7F C6 F3 78 */	mr r6, r30
/* 800452B0 00040F10  38 E1 00 08 */	addi r7, r1, 8
/* 800452B4 00040F14  4B FF 7E 0D */	bl func_8003D0C0
/* 800452B8 00040F18  80 7B 00 04 */	lwz r3, 4(r27)
/* 800452BC 00040F1C  38 80 00 02 */	li r4, 2
/* 800452C0 00040F20  38 00 00 01 */	li r0, 1
/* 800452C4 00040F24  B0 83 05 0C */	sth r4, 0x50c(r3)
/* 800452C8 00040F28  98 1B 00 40 */	stb r0, 0x40(r27)
lbl_800452CC:
/* 800452CC 00040F2C  38 60 00 00 */	li r3, 0
/* 800452D0 00040F30  38 00 00 01 */	li r0, 1
/* 800452D4 00040F34  98 7B 00 10 */	stb r3, 0x10(r27)
/* 800452D8 00040F38  98 1B 00 3F */	stb r0, 0x3f(r27)
/* 800452DC 00040F3C  93 9B 00 00 */	stw r28, 0(r27)
lbl_800452E0:
/* 800452E0 00040F40  39 61 00 30 */	addi r11, r1, 0x30
/* 800452E4 00040F44  48 18 1E 91 */	bl _restgpr_27
/* 800452E8 00040F48  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800452EC 00040F4C  7C 08 03 A6 */	mtlr r0
/* 800452F0 00040F50  38 21 00 30 */	addi r1, r1, 0x30
/* 800452F4 00040F54  4E 80 00 20 */	blr

.global func_800452F8
func_800452F8:
/* 800452F8 00040F58  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800452FC 00040F5C  7C 08 02 A6 */	mflr r0
/* 80045300 00040F60  90 01 00 34 */	stw r0, 0x34(r1)
/* 80045304 00040F64  39 61 00 30 */	addi r11, r1, 0x30
/* 80045308 00040F68  48 18 1E 15 */	bl _savegpr_24
/* 8004530C 00040F6C  54 80 10 3A */	slwi r0, r4, 2
/* 80045310 00040F70  7C 78 1B 78 */	mr r24, r3
/* 80045314 00040F74  7F E3 02 14 */	add r31, r3, r0
/* 80045318 00040F78  7C 99 23 78 */	mr r25, r4
/* 8004531C 00040F7C  80 7F 00 08 */	lwz r3, 8(r31)
/* 80045320 00040F80  7C BA 2B 78 */	mr r26, r5
/* 80045324 00040F84  7C DB 33 78 */	mr r27, r6
/* 80045328 00040F88  7C FC 3B 78 */	mr r28, r7
/* 8004532C 00040F8C  7D 1D 43 78 */	mr r29, r8
/* 80045330 00040F90  7D 3E 4B 78 */	mr r30, r9
/* 80045334 00040F94  4B FF 7B D9 */	bl func_8003CF0C
/* 80045338 00040F98  4B FF 8E 25 */	bl func_8003E15C
/* 8004533C 00040F9C  4B FF 8E 81 */	bl func_8003E1BC
/* 80045340 00040FA0  2C 03 00 00 */	cmpwi r3, 0
/* 80045344 00040FA4  90 7F 00 08 */	stw r3, 8(r31)
/* 80045348 00040FA8  41 82 00 28 */	beq lbl_80045370
/* 8004534C 00040FAC  7F 44 D3 78 */	mr r4, r26
/* 80045350 00040FB0  7F 65 DB 78 */	mr r5, r27
/* 80045354 00040FB4  7F 86 E3 78 */	mr r6, r28
/* 80045358 00040FB8  7F A7 EB 78 */	mr r7, r29
/* 8004535C 00040FBC  7F C8 F3 78 */	mr r8, r30
/* 80045360 00040FC0  4B FF 7B F5 */	bl func_8003CF54
/* 80045364 00040FC4  7C 78 CA 14 */	add r3, r24, r25
/* 80045368 00040FC8  38 00 00 01 */	li r0, 1
/* 8004536C 00040FCC  98 03 00 41 */	stb r0, 0x41(r3)
lbl_80045370:
/* 80045370 00040FD0  7C 78 CA 14 */	add r3, r24, r25
/* 80045374 00040FD4  38 00 00 00 */	li r0, 0
/* 80045378 00040FD8  98 03 00 11 */	stb r0, 0x11(r3)
/* 8004537C 00040FDC  38 00 00 01 */	li r0, 1
/* 80045380 00040FE0  39 61 00 30 */	addi r11, r1, 0x30
/* 80045384 00040FE4  98 18 00 3F */	stb r0, 0x3f(r24)
/* 80045388 00040FE8  48 18 1D E1 */	bl _restgpr_24
/* 8004538C 00040FEC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80045390 00040FF0  7C 08 03 A6 */	mtlr r0
/* 80045394 00040FF4  38 21 00 30 */	addi r1, r1, 0x30
/* 80045398 00040FF8  4E 80 00 20 */	blr

.global func_8004539C
func_8004539C:
/* 8004539C 00040FFC  2C 04 00 00 */	cmpwi r4, 0
/* 800453A0 00041000  4D 82 00 20 */	beqlr
/* 800453A4 00041004  C0 04 00 00 */	lfs f0, 0(r4)
/* 800453A8 00041008  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 800453AC 0004100C  C0 04 00 04 */	lfs f0, 4(r4)
/* 800453B0 00041010  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 800453B4 00041014  C0 04 00 08 */	lfs f0, 8(r4)
/* 800453B8 00041018  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 800453BC 0004101C  4E 80 00 20 */	blr

.global func_800453C0
func_800453C0:
/* 800453C0 00041020  2C 04 00 00 */	cmpwi r4, 0
/* 800453C4 00041024  41 82 00 1C */	beq lbl_800453E0
/* 800453C8 00041028  C0 04 00 00 */	lfs f0, 0(r4)
/* 800453CC 0004102C  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 800453D0 00041030  C0 04 00 04 */	lfs f0, 4(r4)
/* 800453D4 00041034  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 800453D8 00041038  C0 04 00 08 */	lfs f0, 8(r4)
/* 800453DC 0004103C  D0 03 00 28 */	stfs f0, 0x28(r3)
lbl_800453E0:
/* 800453E0 00041040  2C 05 00 00 */	cmpwi r5, 0
/* 800453E4 00041044  4D 82 00 20 */	beqlr
/* 800453E8 00041048  C0 05 00 00 */	lfs f0, 0(r5)
/* 800453EC 0004104C  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 800453F0 00041050  C0 05 00 04 */	lfs f0, 4(r5)
/* 800453F4 00041054  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 800453F8 00041058  C0 05 00 08 */	lfs f0, 8(r5)
/* 800453FC 0004105C  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80045400 00041060  4E 80 00 20 */	blr

.global func_80045404
func_80045404:
/* 80045404 00041064  2C 04 00 00 */	cmpwi r4, 0
/* 80045408 00041068  4D 82 00 20 */	beqlr
/* 8004540C 0004106C  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80045410 00041070  D0 04 00 00 */	stfs f0, 0(r4)
/* 80045414 00041074  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 80045418 00041078  D0 04 00 04 */	stfs f0, 4(r4)
/* 8004541C 0004107C  C0 03 00 1C */	lfs f0, 0x1c(r3)
/* 80045420 00041080  D0 04 00 08 */	stfs f0, 8(r4)
/* 80045424 00041084  4E 80 00 20 */	blr

.global func_80045428
func_80045428:
/* 80045428 00041088  2C 04 00 00 */	cmpwi r4, 0
/* 8004542C 0004108C  41 82 00 1C */	beq lbl_80045448
/* 80045430 00041090  C0 03 00 20 */	lfs f0, 0x20(r3)
/* 80045434 00041094  D0 04 00 00 */	stfs f0, 0(r4)
/* 80045438 00041098  C0 03 00 24 */	lfs f0, 0x24(r3)
/* 8004543C 0004109C  D0 04 00 04 */	stfs f0, 4(r4)
/* 80045440 000410A0  C0 03 00 28 */	lfs f0, 0x28(r3)
/* 80045444 000410A4  D0 04 00 08 */	stfs f0, 8(r4)
lbl_80045448:
/* 80045448 000410A8  2C 05 00 00 */	cmpwi r5, 0
/* 8004544C 000410AC  4D 82 00 20 */	beqlr
/* 80045450 000410B0  C0 03 00 2C */	lfs f0, 0x2c(r3)
/* 80045454 000410B4  D0 05 00 00 */	stfs f0, 0(r5)
/* 80045458 000410B8  C0 03 00 30 */	lfs f0, 0x30(r3)
/* 8004545C 000410BC  D0 05 00 04 */	stfs f0, 4(r5)
/* 80045460 000410C0  C0 03 00 34 */	lfs f0, 0x34(r3)
/* 80045464 000410C4  D0 05 00 08 */	stfs f0, 8(r5)
/* 80045468 000410C8  4E 80 00 20 */	blr

.global func_8004546C
func_8004546C:
/* 8004546C 000410CC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80045470 000410D0  7C 08 02 A6 */	mflr r0
/* 80045474 000410D4  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80045478 000410D8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004547C 000410DC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80045480 000410E0  7C 7F 1B 78 */	mr r31, r3
/* 80045484 000410E4  C0 23 00 38 */	lfs f1, 0x38(r3)
/* 80045488 000410E8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004548C 000410EC  D0 01 00 08 */	stfs f0, 8(r1)
/* 80045490 000410F0  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80045494 000410F4  80 63 00 04 */	lwz r3, 4(r3)
/* 80045498 000410F8  2C 03 00 00 */	cmpwi r3, 0
/* 8004549C 000410FC  41 82 00 18 */	beq lbl_800454B4
/* 800454A0 00041100  38 9F 00 14 */	addi r4, r31, 0x14
/* 800454A4 00041104  4B FF 33 79 */	bl func_8003881C
/* 800454A8 00041108  80 7F 00 04 */	lwz r3, 4(r31)
/* 800454AC 0004110C  38 81 00 08 */	addi r4, r1, 8
/* 800454B0 00041110  4B FF 36 21 */	bl func_80038AD0
lbl_800454B4:
/* 800454B4 00041114  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800454B8 00041118  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800454BC 0004111C  7C 08 03 A6 */	mtlr r0
/* 800454C0 00041120  38 21 00 20 */	addi r1, r1, 0x20
/* 800454C4 00041124  4E 80 00 20 */	blr

.global func_800454C8
func_800454C8:
/* 800454C8 00041128  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800454CC 0004112C  7C 08 02 A6 */	mflr r0
/* 800454D0 00041130  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800454D4 00041134  90 01 00 34 */	stw r0, 0x34(r1)
/* 800454D8 00041138  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 800454DC 0004113C  7C 7F 1B 78 */	mr r31, r3
/* 800454E0 00041140  93 C1 00 28 */	stw r30, 0x28(r1)
/* 800454E4 00041144  3B C3 00 20 */	addi r30, r3, 0x20
/* 800454E8 00041148  93 A1 00 24 */	stw r29, 0x24(r1)
/* 800454EC 0004114C  3B A0 00 00 */	li r29, 0
/* 800454F0 00041150  C0 23 00 38 */	lfs f1, 0x38(r3)
/* 800454F4 00041154  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 800454F8 00041158  D0 01 00 08 */	stfs f0, 8(r1)
/* 800454FC 0004115C  D0 01 00 10 */	stfs f0, 0x10(r1)
lbl_80045500:
/* 80045500 00041160  80 7F 00 08 */	lwz r3, 8(r31)
/* 80045504 00041164  2C 03 00 00 */	cmpwi r3, 0
/* 80045508 00041168  41 82 00 18 */	beq lbl_80045520
/* 8004550C 0004116C  7F C4 F3 78 */	mr r4, r30
/* 80045510 00041170  4B FF 33 0D */	bl func_8003881C
/* 80045514 00041174  80 7F 00 08 */	lwz r3, 8(r31)
/* 80045518 00041178  38 81 00 08 */	addi r4, r1, 8
/* 8004551C 0004117C  4B FF 35 B5 */	bl func_80038AD0
lbl_80045520:
/* 80045520 00041180  3B BD 00 01 */	addi r29, r29, 1
/* 80045524 00041184  3B DE 00 0C */	addi r30, r30, 0xc
/* 80045528 00041188  2C 1D 00 02 */	cmpwi r29, 2
/* 8004552C 0004118C  3B FF 00 04 */	addi r31, r31, 4
/* 80045530 00041190  41 80 FF D0 */	blt lbl_80045500
/* 80045534 00041194  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80045538 00041198  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004553C 0004119C  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80045540 000411A0  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 80045544 000411A4  7C 08 03 A6 */	mtlr r0
/* 80045548 000411A8  38 21 00 30 */	addi r1, r1, 0x30
/* 8004554C 000411AC  4E 80 00 20 */	blr

.global func_80045550
func_80045550:
/* 80045550 000411B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80045554 000411B4  7C 08 02 A6 */	mflr r0
/* 80045558 000411B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004555C 000411BC  80 0D 97 F8 */	lwz r0, lbl_8063EAB8-_SDA_BASE_(r13)
/* 80045560 000411C0  2C 00 00 00 */	cmpwi r0, 0
/* 80045564 000411C4  40 82 00 1C */	bne lbl_80045580
/* 80045568 000411C8  38 60 01 6C */	li r3, 0x16c
/* 8004556C 000411CC  48 19 54 C5 */	bl func_801DAA30
/* 80045570 000411D0  2C 03 00 00 */	cmpwi r3, 0
/* 80045574 000411D4  41 82 00 08 */	beq lbl_8004557C
/* 80045578 000411D8  48 00 00 21 */	bl func_80045598
lbl_8004557C:
/* 8004557C 000411DC  90 6D 97 F8 */	stw r3, lbl_8063EAB8-_SDA_BASE_(r13)
lbl_80045580:
/* 80045580 000411E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80045584 000411E4  7C 08 03 A6 */	mtlr r0
/* 80045588 000411E8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004558C 000411EC  4E 80 00 20 */	blr

.global func_80045590
func_80045590:
/* 80045590 000411F0  80 6D 97 F8 */	lwz r3, lbl_8063EAB8-_SDA_BASE_(r13)
/* 80045594 000411F4  4E 80 00 20 */	blr

.global func_80045598
func_80045598:
/* 80045598 000411F8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004559C 000411FC  7C 08 02 A6 */	mflr r0
/* 800455A0 00041200  90 01 00 24 */	stw r0, 0x24(r1)
/* 800455A4 00041204  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800455A8 00041208  3B E3 01 1C */	addi r31, r3, 0x11c
/* 800455AC 0004120C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800455B0 00041210  3B C3 00 0C */	addi r30, r3, 0xc
/* 800455B4 00041214  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800455B8 00041218  7C 7D 1B 78 */	mr r29, r3
lbl_800455BC:
/* 800455BC 0004121C  7F C3 F3 78 */	mr r3, r30
/* 800455C0 00041220  4B FF F9 69 */	bl func_80044F28
/* 800455C4 00041224  3B DE 00 44 */	addi r30, r30, 0x44
/* 800455C8 00041228  7C 1E F8 40 */	cmplw r30, r31
/* 800455CC 0004122C  41 80 FF F0 */	blt lbl_800455BC
/* 800455D0 00041230  7F A3 EB 78 */	mr r3, r29
/* 800455D4 00041234  48 00 00 25 */	bl func_800455F8
/* 800455D8 00041238  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800455DC 0004123C  7F A3 EB 78 */	mr r3, r29
/* 800455E0 00041240  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800455E4 00041244  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800455E8 00041248  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800455EC 0004124C  7C 08 03 A6 */	mtlr r0
/* 800455F0 00041250  38 21 00 20 */	addi r1, r1, 0x20
/* 800455F4 00041254  4E 80 00 20 */	blr

.global func_800455F8
func_800455F8:
/* 800455F8 00041258  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800455FC 0004125C  7C 08 02 A6 */	mflr r0
/* 80045600 00041260  90 01 00 24 */	stw r0, 0x24(r1)
/* 80045604 00041264  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80045608 00041268  3B E3 00 0C */	addi r31, r3, 0xc
/* 8004560C 0004126C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80045610 00041270  3B C0 00 00 */	li r30, 0
/* 80045614 00041274  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80045618 00041278  7C 7D 1B 78 */	mr r29, r3
lbl_8004561C:
/* 8004561C 0004127C  7F E3 FB 78 */	mr r3, r31
/* 80045620 00041280  4B FF F9 55 */	bl func_80044F74
/* 80045624 00041284  3B DE 00 01 */	addi r30, r30, 1
/* 80045628 00041288  3B FF 00 44 */	addi r31, r31, 0x44
/* 8004562C 0004128C  2C 1E 00 04 */	cmpwi r30, 4
/* 80045630 00041290  41 80 FF EC */	blt lbl_8004561C
/* 80045634 00041294  38 00 00 00 */	li r0, 0
/* 80045638 00041298  38 C0 00 01 */	li r6, 1
/* 8004563C 0004129C  90 DD 00 00 */	stw r6, 0(r29)
/* 80045640 000412A0  38 7D 01 2C */	addi r3, r29, 0x12c
/* 80045644 000412A4  38 80 00 00 */	li r4, 0
/* 80045648 000412A8  38 A0 00 10 */	li r5, 0x10
/* 8004564C 000412AC  90 DD 01 24 */	stw r6, 0x124(r29)
/* 80045650 000412B0  B0 1D 01 1E */	sth r0, 0x11e(r29)
/* 80045654 000412B4  B0 1D 01 20 */	sth r0, 0x120(r29)
/* 80045658 000412B8  98 1D 01 28 */	stb r0, 0x128(r29)
/* 8004565C 000412BC  90 1D 00 08 */	stw r0, 8(r29)
/* 80045660 000412C0  90 1D 01 64 */	stw r0, 0x164(r29)
/* 80045664 000412C4  90 1D 01 68 */	stw r0, 0x168(r29)
/* 80045668 000412C8  98 1D 01 1C */	stb r0, 0x11c(r29)
/* 8004566C 000412CC  4B FB EA 99 */	bl memset
/* 80045670 000412D0  38 7D 01 3C */	addi r3, r29, 0x13c
/* 80045674 000412D4  38 80 00 00 */	li r4, 0
/* 80045678 000412D8  38 A0 00 10 */	li r5, 0x10
/* 8004567C 000412DC  4B FB EA 89 */	bl memset
/* 80045680 000412E0  38 7D 01 4C */	addi r3, r29, 0x14c
/* 80045684 000412E4  38 80 00 00 */	li r4, 0
/* 80045688 000412E8  38 A0 00 10 */	li r5, 0x10
/* 8004568C 000412EC  4B FB EA 79 */	bl memset
/* 80045690 000412F0  38 7D 01 5C */	addi r3, r29, 0x15c
/* 80045694 000412F4  38 80 00 00 */	li r4, 0
/* 80045698 000412F8  38 A0 00 08 */	li r5, 8
/* 8004569C 000412FC  4B FB EA 69 */	bl memset
/* 800456A0 00041300  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800456A4 00041304  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800456A8 00041308  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800456AC 0004130C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800456B0 00041310  7C 08 03 A6 */	mtlr r0
/* 800456B4 00041314  38 21 00 20 */	addi r1, r1, 0x20
/* 800456B8 00041318  4E 80 00 20 */	blr

.global func_800456BC
func_800456BC:
/* 800456BC 0004131C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800456C0 00041320  7C 08 02 A6 */	mflr r0
/* 800456C4 00041324  90 01 00 24 */	stw r0, 0x24(r1)
/* 800456C8 00041328  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800456CC 0004132C  3B E3 00 0C */	addi r31, r3, 0xc
/* 800456D0 00041330  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800456D4 00041334  3B C0 00 00 */	li r30, 0
/* 800456D8 00041338  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800456DC 0004133C  7C 7D 1B 78 */	mr r29, r3
lbl_800456E0:
/* 800456E0 00041340  7F E3 FB 78 */	mr r3, r31
/* 800456E4 00041344  4B FF F9 2D */	bl func_80045010
/* 800456E8 00041348  7F E3 FB 78 */	mr r3, r31
/* 800456EC 0004134C  4B FF F8 89 */	bl func_80044F74
/* 800456F0 00041350  3B DE 00 01 */	addi r30, r30, 1
/* 800456F4 00041354  3B FF 00 44 */	addi r31, r31, 0x44
/* 800456F8 00041358  2C 1E 00 04 */	cmpwi r30, 4
/* 800456FC 0004135C  41 80 FF E4 */	blt lbl_800456E0
/* 80045700 00041360  38 00 00 00 */	li r0, 0
/* 80045704 00041364  B0 1D 01 1E */	sth r0, 0x11e(r29)
/* 80045708 00041368  B0 1D 01 20 */	sth r0, 0x120(r29)
/* 8004570C 0004136C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80045710 00041370  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80045714 00041374  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80045718 00041378  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004571C 0004137C  7C 08 03 A6 */	mtlr r0
/* 80045720 00041380  38 21 00 20 */	addi r1, r1, 0x20
/* 80045724 00041384  4E 80 00 20 */	blr

.global func_80045728
func_80045728:
/* 80045728 00041388  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004572C 0004138C  7C 08 02 A6 */	mflr r0
/* 80045730 00041390  2C 04 00 00 */	cmpwi r4, 0
/* 80045734 00041394  90 01 00 14 */	stw r0, 0x14(r1)
/* 80045738 00041398  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004573C 0004139C  7C 7F 1B 78 */	mr r31, r3
/* 80045740 000413A0  41 80 00 28 */	blt lbl_80045768
/* 80045744 000413A4  2C 04 00 03 */	cmpwi r4, 3
/* 80045748 000413A8  41 81 00 20 */	bgt lbl_80045768
/* 8004574C 000413AC  1C 04 00 44 */	mulli r0, r4, 0x44
/* 80045750 000413B0  7C 63 02 14 */	add r3, r3, r0
/* 80045754 000413B4  38 63 00 0C */	addi r3, r3, 0xc
/* 80045758 000413B8  4B FF F8 8D */	bl func_80044FE4
/* 8004575C 000413BC  A0 7F 01 1E */	lhz r3, 0x11e(r31)
/* 80045760 000413C0  38 03 00 01 */	addi r0, r3, 1
/* 80045764 000413C4  B0 1F 01 1E */	sth r0, 0x11e(r31)
lbl_80045768:
/* 80045768 000413C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004576C 000413CC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80045770 000413D0  7C 08 03 A6 */	mtlr r0
/* 80045774 000413D4  38 21 00 10 */	addi r1, r1, 0x10
/* 80045778 000413D8  4E 80 00 20 */	blr

.global func_8004577C
func_8004577C:
/* 8004577C 000413DC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80045780 000413E0  7C 08 02 A6 */	mflr r0
/* 80045784 000413E4  2C 04 00 00 */	cmpwi r4, 0
/* 80045788 000413E8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004578C 000413EC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80045790 000413F0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80045794 000413F4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80045798 000413F8  7C 7D 1B 78 */	mr r29, r3
/* 8004579C 000413FC  41 80 00 5C */	blt lbl_800457F8
/* 800457A0 00041400  2C 04 00 03 */	cmpwi r4, 3
/* 800457A4 00041404  41 81 00 54 */	bgt lbl_800457F8
/* 800457A8 00041408  1C 04 00 44 */	mulli r0, r4, 0x44
/* 800457AC 0004140C  7C E7 07 74 */	extsb r7, r7
/* 800457B0 00041410  7C 63 02 14 */	add r3, r3, r0
/* 800457B4 00041414  38 63 00 0C */	addi r3, r3, 0xc
/* 800457B8 00041418  4B FF F9 21 */	bl func_800450D8
/* 800457BC 0004141C  38 00 00 00 */	li r0, 0
/* 800457C0 00041420  3B FD 00 0C */	addi r31, r29, 0xc
/* 800457C4 00041424  B0 1D 01 1E */	sth r0, 0x11e(r29)
/* 800457C8 00041428  3B C0 00 00 */	li r30, 0
lbl_800457CC:
/* 800457CC 0004142C  7F E3 FB 78 */	mr r3, r31
/* 800457D0 00041430  4B FF F7 E1 */	bl func_80044FB0
/* 800457D4 00041434  2C 03 00 00 */	cmpwi r3, 0
/* 800457D8 00041438  41 82 00 10 */	beq lbl_800457E8
/* 800457DC 0004143C  A0 7D 01 1E */	lhz r3, 0x11e(r29)
/* 800457E0 00041440  38 03 00 01 */	addi r0, r3, 1
/* 800457E4 00041444  B0 1D 01 1E */	sth r0, 0x11e(r29)
lbl_800457E8:
/* 800457E8 00041448  3B DE 00 01 */	addi r30, r30, 1
/* 800457EC 0004144C  3B FF 00 44 */	addi r31, r31, 0x44
/* 800457F0 00041450  2C 1E 00 04 */	cmpwi r30, 4
/* 800457F4 00041454  41 80 FF D8 */	blt lbl_800457CC
lbl_800457F8:
/* 800457F8 00041458  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800457FC 0004145C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80045800 00041460  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80045804 00041464  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80045808 00041468  7C 08 03 A6 */	mtlr r0
/* 8004580C 0004146C  38 21 00 20 */	addi r1, r1, 0x20
/* 80045810 00041470  4E 80 00 20 */	blr

.global func_80045814
func_80045814:
/* 80045814 00041474  2C 04 00 00 */	cmpwi r4, 0
/* 80045818 00041478  4D 80 00 20 */	bltlr
/* 8004581C 0004147C  2C 04 00 03 */	cmpwi r4, 3
/* 80045820 00041480  4D 81 00 20 */	bgtlr
/* 80045824 00041484  1C 04 00 44 */	mulli r0, r4, 0x44
/* 80045828 00041488  7C 63 02 14 */	add r3, r3, r0
/* 8004582C 0004148C  38 63 00 0C */	addi r3, r3, 0xc
/* 80045830 00041490  4B FF F9 44 */	b lbl_80045174
/* 80045834 00041494  4E 80 00 20 */	blr

.global func_80045838
func_80045838:
/* 80045838 00041498  2C 04 00 00 */	cmpwi r4, 0
/* 8004583C 0004149C  41 80 00 0C */	blt lbl_80045848
/* 80045840 000414A0  2C 04 00 03 */	cmpwi r4, 3
/* 80045844 000414A4  40 81 00 0C */	ble lbl_80045850
lbl_80045848:
/* 80045848 000414A8  38 60 00 00 */	li r3, 0
/* 8004584C 000414AC  4E 80 00 20 */	blr
lbl_80045850:
/* 80045850 000414B0  54 80 07 BE */	clrlwi r0, r4, 0x1e
/* 80045854 000414B4  1C 00 00 44 */	mulli r0, r0, 0x44
/* 80045858 000414B8  7C 63 02 14 */	add r3, r3, r0
/* 8004585C 000414BC  88 63 00 1C */	lbz r3, 0x1c(r3)
/* 80045860 000414C0  4E 80 00 20 */	blr

.global func_80045864
func_80045864:
/* 80045864 000414C4  2C 04 00 00 */	cmpwi r4, 0
/* 80045868 000414C8  4D 80 00 20 */	bltlr
/* 8004586C 000414CC  2C 04 00 03 */	cmpwi r4, 3
/* 80045870 000414D0  40 81 00 08 */	ble lbl_80045878
/* 80045874 000414D4  4E 80 00 20 */	blr
lbl_80045878:
/* 80045878 000414D8  54 80 07 BE */	clrlwi r0, r4, 0x1e
/* 8004587C 000414DC  38 80 00 01 */	li r4, 1
/* 80045880 000414E0  1C 00 00 44 */	mulli r0, r0, 0x44
/* 80045884 000414E4  7C 63 02 14 */	add r3, r3, r0
/* 80045888 000414E8  98 83 00 1C */	stb r4, 0x1c(r3)
/* 8004588C 000414EC  4E 80 00 20 */	blr

.global func_80045890
func_80045890:
/* 80045890 000414F0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80045894 000414F4  7C 08 02 A6 */	mflr r0
/* 80045898 000414F8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004589C 000414FC  39 61 00 30 */	addi r11, r1, 0x30
/* 800458A0 00041500  48 18 18 7D */	bl _savegpr_24
/* 800458A4 00041504  7C 78 1B 78 */	mr r24, r3
/* 800458A8 00041508  7C 99 23 78 */	mr r25, r4
/* 800458AC 0004150C  7C BA 2B 78 */	mr r26, r5
/* 800458B0 00041510  7C DB 33 78 */	mr r27, r6
/* 800458B4 00041514  7C FC 3B 78 */	mr r28, r7
/* 800458B8 00041518  7D 1D 43 78 */	mr r29, r8
/* 800458BC 0004151C  7D 3E 4B 78 */	mr r30, r9
/* 800458C0 00041520  4B FF 04 DD */	bl func_80035D9C
/* 800458C4 00041524  2C 19 00 00 */	cmpwi r25, 0
/* 800458C8 00041528  7C 7F 1B 78 */	mr r31, r3
/* 800458CC 0004152C  41 80 00 78 */	blt lbl_80045944
/* 800458D0 00041530  2C 19 00 03 */	cmpwi r25, 3
/* 800458D4 00041534  40 81 00 08 */	ble lbl_800458DC
/* 800458D8 00041538  48 00 00 6C */	b lbl_80045944
lbl_800458DC:
/* 800458DC 0004153C  A0 18 01 1E */	lhz r0, 0x11e(r24)
/* 800458E0 00041540  28 00 00 02 */	cmplwi r0, 2
/* 800458E4 00041544  40 82 00 1C */	bne lbl_80045900
/* 800458E8 00041548  57 20 07 FE */	clrlwi r0, r25, 0x1f
/* 800458EC 0004154C  57 24 FF FE */	rlwinm r4, r25, 0x1f, 0x1f, 0x1f
/* 800458F0 00041550  1C 00 00 44 */	mulli r0, r0, 0x44
/* 800458F4 00041554  7C 78 02 14 */	add r3, r24, r0
/* 800458F8 00041558  38 63 00 0C */	addi r3, r3, 0xc
/* 800458FC 0004155C  48 00 00 24 */	b lbl_80045920
lbl_80045900:
/* 80045900 00041560  28 00 00 04 */	cmplwi r0, 4
/* 80045904 00041564  40 82 00 40 */	bne lbl_80045944
/* 80045908 00041568  1C 19 00 44 */	mulli r0, r25, 0x44
/* 8004590C 0004156C  38 80 00 00 */	li r4, 0
/* 80045910 00041570  7C 78 02 14 */	add r3, r24, r0
/* 80045914 00041574  38 63 00 0C */	addi r3, r3, 0xc
/* 80045918 00041578  48 00 00 08 */	b lbl_80045920
/* 8004591C 0004157C  48 00 00 28 */	b lbl_80045944
lbl_80045920:
/* 80045920 00041580  7F 45 D3 78 */	mr r5, r26
/* 80045924 00041584  7F 66 DB 78 */	mr r6, r27
/* 80045928 00041588  7F 87 E3 78 */	mr r7, r28
/* 8004592C 0004158C  7F A8 EB 78 */	mr r8, r29
/* 80045930 00041590  7F C9 F3 78 */	mr r9, r30
/* 80045934 00041594  4B FF F9 C5 */	bl func_800452F8
/* 80045938 00041598  7F E3 FB 78 */	mr r3, r31
/* 8004593C 0004159C  7F 24 CB 78 */	mr r4, r25
/* 80045940 000415A0  4B FF 13 AD */	bl func_80036CEC
lbl_80045944:
/* 80045944 000415A4  39 61 00 30 */	addi r11, r1, 0x30
/* 80045948 000415A8  48 18 18 21 */	bl _restgpr_24
/* 8004594C 000415AC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80045950 000415B0  7C 08 03 A6 */	mtlr r0
/* 80045954 000415B4  38 21 00 30 */	addi r1, r1, 0x30
/* 80045958 000415B8  4E 80 00 20 */	blr

.global func_8004595C
func_8004595C:
/* 8004595C 000415BC  2C 04 00 00 */	cmpwi r4, 0
/* 80045960 000415C0  41 80 00 0C */	blt lbl_8004596C
/* 80045964 000415C4  2C 04 00 03 */	cmpwi r4, 3
/* 80045968 000415C8  40 81 00 0C */	ble lbl_80045974
lbl_8004596C:
/* 8004596C 000415CC  38 60 00 00 */	li r3, 0
/* 80045970 000415D0  4E 80 00 20 */	blr
lbl_80045974:
/* 80045974 000415D4  A0 03 01 1E */	lhz r0, 0x11e(r3)
/* 80045978 000415D8  28 00 00 02 */	cmplwi r0, 2
/* 8004597C 000415DC  40 82 00 1C */	bne lbl_80045998
/* 80045980 000415E0  54 80 07 FE */	clrlwi r0, r4, 0x1f
/* 80045984 000415E4  54 84 FF FE */	rlwinm r4, r4, 0x1f, 0x1f, 0x1f
/* 80045988 000415E8  1C 00 00 44 */	mulli r0, r0, 0x44
/* 8004598C 000415EC  7C 63 02 14 */	add r3, r3, r0
/* 80045990 000415F0  38 03 00 0C */	addi r0, r3, 0xc
/* 80045994 000415F4  48 00 00 28 */	b lbl_800459BC
lbl_80045998:
/* 80045998 000415F8  28 00 00 04 */	cmplwi r0, 4
/* 8004599C 000415FC  40 82 00 18 */	bne lbl_800459B4
/* 800459A0 00041600  1C 04 00 44 */	mulli r0, r4, 0x44
/* 800459A4 00041604  38 80 00 00 */	li r4, 0
/* 800459A8 00041608  7C 63 02 14 */	add r3, r3, r0
/* 800459AC 0004160C  38 03 00 0C */	addi r0, r3, 0xc
/* 800459B0 00041610  48 00 00 0C */	b lbl_800459BC
lbl_800459B4:
/* 800459B4 00041614  38 60 00 00 */	li r3, 0
/* 800459B8 00041618  4E 80 00 20 */	blr
lbl_800459BC:
/* 800459BC 0004161C  7C 60 22 14 */	add r3, r0, r4
/* 800459C0 00041620  88 63 00 11 */	lbz r3, 0x11(r3)
/* 800459C4 00041624  4E 80 00 20 */	blr

.global func_800459C8
func_800459C8:
/* 800459C8 00041628  2C 04 00 00 */	cmpwi r4, 0
/* 800459CC 0004162C  4D 80 00 20 */	bltlr
/* 800459D0 00041630  2C 04 00 03 */	cmpwi r4, 3
/* 800459D4 00041634  40 81 00 08 */	ble lbl_800459DC
/* 800459D8 00041638  4E 80 00 20 */	blr
lbl_800459DC:
/* 800459DC 0004163C  A0 03 01 1E */	lhz r0, 0x11e(r3)
/* 800459E0 00041640  28 00 00 02 */	cmplwi r0, 2
/* 800459E4 00041644  40 82 00 1C */	bne lbl_80045A00
/* 800459E8 00041648  54 80 07 FE */	clrlwi r0, r4, 0x1f
/* 800459EC 0004164C  54 84 FF FE */	rlwinm r4, r4, 0x1f, 0x1f, 0x1f
/* 800459F0 00041650  1C 00 00 44 */	mulli r0, r0, 0x44
/* 800459F4 00041654  7C 63 02 14 */	add r3, r3, r0
/* 800459F8 00041658  38 03 00 0C */	addi r0, r3, 0xc
/* 800459FC 0004165C  48 00 00 24 */	b lbl_80045A20
lbl_80045A00:
/* 80045A00 00041660  28 00 00 04 */	cmplwi r0, 4
/* 80045A04 00041664  4C 82 00 20 */	bnelr
/* 80045A08 00041668  1C 04 00 44 */	mulli r0, r4, 0x44
/* 80045A0C 0004166C  38 80 00 00 */	li r4, 0
/* 80045A10 00041670  7C 63 02 14 */	add r3, r3, r0
/* 80045A14 00041674  38 03 00 0C */	addi r0, r3, 0xc
/* 80045A18 00041678  48 00 00 08 */	b lbl_80045A20
/* 80045A1C 0004167C  4E 80 00 20 */	blr
lbl_80045A20:
/* 80045A20 00041680  7C 60 22 14 */	add r3, r0, r4
/* 80045A24 00041684  38 00 00 01 */	li r0, 1
/* 80045A28 00041688  98 03 00 11 */	stb r0, 0x11(r3)
/* 80045A2C 0004168C  4E 80 00 20 */	blr

.global func_80045A30
func_80045A30:
/* 80045A30 00041690  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80045A34 00041694  7C 08 02 A6 */	mflr r0
/* 80045A38 00041698  90 01 00 24 */	stw r0, 0x24(r1)
/* 80045A3C 0004169C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80045A40 000416A0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80045A44 000416A4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80045A48 000416A8  7C 9D 23 78 */	mr r29, r4
/* 80045A4C 000416AC  93 81 00 10 */	stw r28, 0x10(r1)
/* 80045A50 000416B0  7C 7C 1B 78 */	mr r28, r3
/* 80045A54 000416B4  4B FF 03 49 */	bl func_80035D9C
/* 80045A58 000416B8  7C 7F 1B 78 */	mr r31, r3
/* 80045A5C 000416BC  3B C0 00 00 */	li r30, 0
lbl_80045A60:
/* 80045A60 000416C0  7F E3 FB 78 */	mr r3, r31
/* 80045A64 000416C4  7F C4 F3 78 */	mr r4, r30
/* 80045A68 000416C8  4B FF 12 AD */	bl func_80036D14
/* 80045A6C 000416CC  A0 A3 00 00 */	lhz r5, 0(r3)
/* 80045A70 000416D0  7C 69 1B 78 */	mr r9, r3
/* 80045A74 000416D4  2C 05 00 00 */	cmpwi r5, 0
/* 80045A78 000416D8  41 82 00 50 */	beq lbl_80045AC8
/* 80045A7C 000416DC  88 C9 00 04 */	lbz r6, 4(r9)
/* 80045A80 000416E0  7F 83 E3 78 */	mr r3, r28
/* 80045A84 000416E4  A0 E9 00 02 */	lhz r7, 2(r9)
/* 80045A88 000416E8  7F C4 F3 78 */	mr r4, r30
/* 80045A8C 000416EC  89 09 00 05 */	lbz r8, 5(r9)
/* 80045A90 000416F0  81 29 00 0C */	lwz r9, 0xc(r9)
/* 80045A94 000416F4  4B FF FD FD */	bl func_80045890
/* 80045A98 000416F8  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80045A9C 000416FC  48 1D EA ED */	bl func_80224588
/* 80045AA0 00041700  7F 83 E3 78 */	mr r3, r28
/* 80045AA4 00041704  7F C4 F3 78 */	mr r4, r30
/* 80045AA8 00041708  38 A0 00 00 */	li r5, 0
/* 80045AAC 0004170C  48 00 00 55 */	bl func_80045B00
/* 80045AB0 00041710  2C 1D 00 00 */	cmpwi r29, 0
/* 80045AB4 00041714  40 82 00 14 */	bne lbl_80045AC8
/* 80045AB8 00041718  2C 03 00 00 */	cmpwi r3, 0
/* 80045ABC 0004171C  41 82 00 0C */	beq lbl_80045AC8
/* 80045AC0 00041720  38 80 00 00 */	li r4, 0
/* 80045AC4 00041724  4B FF 22 69 */	bl func_80037D2C
lbl_80045AC8:
/* 80045AC8 00041728  3B DE 00 01 */	addi r30, r30, 1
/* 80045ACC 0004172C  2C 1E 00 04 */	cmpwi r30, 4
/* 80045AD0 00041730  41 80 FF 90 */	blt lbl_80045A60
/* 80045AD4 00041734  7F 83 E3 78 */	mr r3, r28
/* 80045AD8 00041738  38 80 00 01 */	li r4, 1
/* 80045ADC 0004173C  48 00 02 21 */	bl func_80045CFC
/* 80045AE0 00041740  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80045AE4 00041744  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80045AE8 00041748  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80045AEC 0004174C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80045AF0 00041750  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80045AF4 00041754  7C 08 03 A6 */	mtlr r0
/* 80045AF8 00041758  38 21 00 20 */	addi r1, r1, 0x20
/* 80045AFC 0004175C  4E 80 00 20 */	blr

.global func_80045B00
func_80045B00:
/* 80045B00 00041760  2C 04 01 00 */	cmpwi r4, 0x100
/* 80045B04 00041764  38 A0 00 00 */	li r5, 0
/* 80045B08 00041768  40 82 00 0C */	bne lbl_80045B14
/* 80045B0C 0004176C  80 63 00 08 */	lwz r3, 8(r3)
/* 80045B10 00041770  4E 80 00 20 */	blr
lbl_80045B14:
/* 80045B14 00041774  2C 04 01 01 */	cmpwi r4, 0x101
/* 80045B18 00041778  40 82 00 0C */	bne lbl_80045B24
/* 80045B1C 0004177C  80 63 00 04 */	lwz r3, 4(r3)
/* 80045B20 00041780  4E 80 00 20 */	blr
lbl_80045B24:
/* 80045B24 00041784  54 80 06 31 */	rlwinm. r0, r4, 0, 0x18, 0x18
/* 80045B28 00041788  41 82 00 18 */	beq lbl_80045B40
/* 80045B2C 0004178C  54 80 07 BE */	clrlwi r0, r4, 0x1e
/* 80045B30 00041790  1C 00 00 44 */	mulli r0, r0, 0x44
/* 80045B34 00041794  7C 63 02 14 */	add r3, r3, r0
/* 80045B38 00041798  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80045B3C 0004179C  4E 80 00 20 */	blr
lbl_80045B40:
/* 80045B40 000417A0  A0 03 01 1E */	lhz r0, 0x11e(r3)
/* 80045B44 000417A4  28 00 00 02 */	cmplwi r0, 2
/* 80045B48 000417A8  40 82 00 20 */	bne lbl_80045B68
/* 80045B4C 000417AC  54 85 07 FE */	clrlwi r5, r4, 0x1f
/* 80045B50 000417B0  54 80 0F 7A */	rlwinm r0, r4, 1, 0x1d, 0x1d
/* 80045B54 000417B4  1C 85 00 44 */	mulli r4, r5, 0x44
/* 80045B58 000417B8  7C 63 22 14 */	add r3, r3, r4
/* 80045B5C 000417BC  7C 63 02 14 */	add r3, r3, r0
/* 80045B60 000417C0  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 80045B64 000417C4  48 00 00 1C */	b lbl_80045B80
lbl_80045B68:
/* 80045B68 000417C8  28 00 00 04 */	cmplwi r0, 4
/* 80045B6C 000417CC  40 82 00 14 */	bne lbl_80045B80
/* 80045B70 000417D0  54 80 07 BE */	clrlwi r0, r4, 0x1e
/* 80045B74 000417D4  1C 00 00 44 */	mulli r0, r0, 0x44
/* 80045B78 000417D8  7C 63 02 14 */	add r3, r3, r0
/* 80045B7C 000417DC  80 A3 00 14 */	lwz r5, 0x14(r3)
lbl_80045B80:
/* 80045B80 000417E0  7C A3 2B 78 */	mr r3, r5
/* 80045B84 000417E4  4E 80 00 20 */	blr

.global func_80045B88
func_80045B88:
/* 80045B88 000417E8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80045B8C 000417EC  7C 08 02 A6 */	mflr r0
/* 80045B90 000417F0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80045B94 000417F4  54 80 07 BE */	clrlwi r0, r4, 0x1e
/* 80045B98 000417F8  1C 00 00 44 */	mulli r0, r0, 0x44
/* 80045B9C 000417FC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80045BA0 00041800  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80045BA4 00041804  7C 03 02 14 */	add r0, r3, r0
/* 80045BA8 00041808  37 E0 00 0C */	addic. r31, r0, 0xc
/* 80045BAC 0004180C  7C DE 33 78 */	mr r30, r6
/* 80045BB0 00041810  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80045BB4 00041814  7C BD 2B 78 */	mr r29, r5
/* 80045BB8 00041818  40 82 00 0C */	bne lbl_80045BC4
/* 80045BBC 0004181C  38 60 00 00 */	li r3, 0
/* 80045BC0 00041820  48 00 00 3C */	b lbl_80045BFC
lbl_80045BC4:
/* 80045BC4 00041824  7F E3 FB 78 */	mr r3, r31
/* 80045BC8 00041828  4B FF F3 E9 */	bl func_80044FB0
/* 80045BCC 0004182C  2C 03 00 00 */	cmpwi r3, 0
/* 80045BD0 00041830  40 82 00 0C */	bne lbl_80045BDC
/* 80045BD4 00041834  38 60 00 00 */	li r3, 0
/* 80045BD8 00041838  48 00 00 24 */	b lbl_80045BFC
lbl_80045BDC:
/* 80045BDC 0004183C  7F E3 FB 78 */	mr r3, r31
/* 80045BE0 00041840  7F A4 EB 78 */	mr r4, r29
/* 80045BE4 00041844  4B FF F8 21 */	bl func_80045404
/* 80045BE8 00041848  7F E3 FB 78 */	mr r3, r31
/* 80045BEC 0004184C  4B FF F8 81 */	bl func_8004546C
/* 80045BF0 00041850  C0 1F 00 38 */	lfs f0, 0x38(r31)
/* 80045BF4 00041854  38 60 00 01 */	li r3, 1
/* 80045BF8 00041858  D0 1E 00 00 */	stfs f0, 0(r30)
lbl_80045BFC:
/* 80045BFC 0004185C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80045C00 00041860  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80045C04 00041864  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80045C08 00041868  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80045C0C 0004186C  7C 08 03 A6 */	mtlr r0
/* 80045C10 00041870  38 21 00 20 */	addi r1, r1, 0x20
/* 80045C14 00041874  4E 80 00 20 */	blr

.global func_80045C18
func_80045C18:
/* 80045C18 00041878  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80045C1C 0004187C  7C 08 02 A6 */	mflr r0
/* 80045C20 00041880  2C 07 00 00 */	cmpwi r7, 0
/* 80045C24 00041884  90 01 00 24 */	stw r0, 0x24(r1)
/* 80045C28 00041888  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80045C2C 0004188C  7C BF 2B 78 */	mr r31, r5
/* 80045C30 00041890  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80045C34 00041894  7C DE 33 78 */	mr r30, r6
/* 80045C38 00041898  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80045C3C 0004189C  7C 9D 23 78 */	mr r29, r4
/* 80045C40 000418A0  93 81 00 10 */	stw r28, 0x10(r1)
/* 80045C44 000418A4  7C 7C 1B 78 */	mr r28, r3
/* 80045C48 000418A8  41 82 00 0C */	beq lbl_80045C54
/* 80045C4C 000418AC  38 80 00 00 */	li r4, 0
/* 80045C50 000418B0  48 00 00 AD */	bl func_80045CFC
lbl_80045C54:
/* 80045C54 000418B4  A0 1C 01 1E */	lhz r0, 0x11e(r28)
/* 80045C58 000418B8  28 00 00 04 */	cmplwi r0, 4
/* 80045C5C 000418BC  40 82 00 2C */	bne lbl_80045C88
/* 80045C60 000418C0  1C 1D 00 44 */	mulli r0, r29, 0x44
/* 80045C64 000418C4  7F E4 FB 78 */	mr r4, r31
/* 80045C68 000418C8  38 A0 00 00 */	li r5, 0
/* 80045C6C 000418CC  7C 7C 02 14 */	add r3, r28, r0
/* 80045C70 000418D0  3B E3 00 0C */	addi r31, r3, 0xc
/* 80045C74 000418D4  7F E3 FB 78 */	mr r3, r31
/* 80045C78 000418D8  4B FF F7 B1 */	bl func_80045428
/* 80045C7C 000418DC  C0 1F 00 38 */	lfs f0, 0x38(r31)
/* 80045C80 000418E0  D0 1E 00 00 */	stfs f0, 0(r30)
/* 80045C84 000418E4  48 00 00 54 */	b lbl_80045CD8
lbl_80045C88:
/* 80045C88 000418E8  28 00 00 02 */	cmplwi r0, 2
/* 80045C8C 000418EC  40 82 00 44 */	bne lbl_80045CD0
/* 80045C90 000418F0  57 A3 07 FE */	clrlwi r3, r29, 0x1f
/* 80045C94 000418F4  57 A0 07 BD */	rlwinm. r0, r29, 0, 0x1e, 0x1e
/* 80045C98 000418F8  1C 03 00 44 */	mulli r0, r3, 0x44
/* 80045C9C 000418FC  7C 7C 02 14 */	add r3, r28, r0
/* 80045CA0 00041900  38 63 00 0C */	addi r3, r3, 0xc
/* 80045CA4 00041904  C0 03 00 38 */	lfs f0, 0x38(r3)
/* 80045CA8 00041908  D0 1E 00 00 */	stfs f0, 0(r30)
/* 80045CAC 0004190C  41 82 00 14 */	beq lbl_80045CC0
/* 80045CB0 00041910  7F E5 FB 78 */	mr r5, r31
/* 80045CB4 00041914  38 80 00 00 */	li r4, 0
/* 80045CB8 00041918  4B FF F7 71 */	bl func_80045428
/* 80045CBC 0004191C  48 00 00 1C */	b lbl_80045CD8
lbl_80045CC0:
/* 80045CC0 00041920  7F E4 FB 78 */	mr r4, r31
/* 80045CC4 00041924  38 A0 00 00 */	li r5, 0
/* 80045CC8 00041928  4B FF F7 61 */	bl func_80045428
/* 80045CCC 0004192C  48 00 00 0C */	b lbl_80045CD8
lbl_80045CD0:
/* 80045CD0 00041930  38 60 00 00 */	li r3, 0
/* 80045CD4 00041934  48 00 00 08 */	b lbl_80045CDC
lbl_80045CD8:
/* 80045CD8 00041938  38 60 00 01 */	li r3, 1
lbl_80045CDC:
/* 80045CDC 0004193C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80045CE0 00041940  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80045CE4 00041944  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80045CE8 00041948  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80045CEC 0004194C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80045CF0 00041950  7C 08 03 A6 */	mtlr r0
/* 80045CF4 00041954  38 21 00 20 */	addi r1, r1, 0x20
/* 80045CF8 00041958  4E 80 00 20 */	blr

.global func_80045CFC
func_80045CFC:
/* 80045CFC 0004195C  94 21 FF 40 */	stwu r1, -0xc0(r1)
/* 80045D00 00041960  7C 08 02 A6 */	mflr r0
/* 80045D04 00041964  90 01 00 C4 */	stw r0, 0xc4(r1)
/* 80045D08 00041968  DB E1 00 B0 */	stfd f31, 0xb0(r1)
/* 80045D0C 0004196C  F3 E1 00 B8 */	psq_st f31, 184(r1), 0, qr0
/* 80045D10 00041970  DB C1 00 A0 */	stfd f30, 0xa0(r1)
/* 80045D14 00041974  F3 C1 00 A8 */	psq_st f30, 168(r1), 0, qr0
/* 80045D18 00041978  DB A1 00 90 */	stfd f29, 0x90(r1)
/* 80045D1C 0004197C  F3 A1 00 98 */	psq_st f29, 152(r1), 0, qr0
/* 80045D20 00041980  DB 81 00 80 */	stfd f28, 0x80(r1)
/* 80045D24 00041984  F3 81 00 88 */	psq_st f28, 136(r1), 0, qr0
/* 80045D28 00041988  DB 61 00 70 */	stfd f27, 0x70(r1)
/* 80045D2C 0004198C  F3 61 00 78 */	psq_st f27, 120(r1), 0, qr0
/* 80045D30 00041990  DB 41 00 60 */	stfd f26, 0x60(r1)
/* 80045D34 00041994  F3 41 00 68 */	psq_st f26, 104(r1), 0, qr0
/* 80045D38 00041998  DB 21 00 50 */	stfd f25, 0x50(r1)
/* 80045D3C 0004199C  F3 21 00 58 */	psq_st f25, 88(r1), 0, qr0
/* 80045D40 000419A0  39 61 00 50 */	addi r11, r1, 0x50
/* 80045D44 000419A4  48 18 13 DD */	bl _savegpr_25
/* 80045D48 000419A8  C3 62 83 8C */	lfs f27, lbl_8064098C-_SDA2_BASE_(r2)
/* 80045D4C 000419AC  7C 7E 1B 78 */	mr r30, r3
/* 80045D50 000419B0  7C 9F 23 78 */	mr r31, r4
/* 80045D54 000419B4  4B FF 84 09 */	bl func_8003E15C
/* 80045D58 000419B8  2C 03 00 00 */	cmpwi r3, 0
/* 80045D5C 000419BC  41 82 00 B4 */	beq lbl_80045E10
/* 80045D60 000419C0  3B BE 00 0C */	addi r29, r30, 0xc
/* 80045D64 000419C4  3B 20 FF FF */	li r25, -1
/* 80045D68 000419C8  3B 40 00 00 */	li r26, 0
lbl_80045D6C:
/* 80045D6C 000419CC  7F A3 EB 78 */	mr r3, r29
/* 80045D70 000419D0  4B FF F2 41 */	bl func_80044FB0
/* 80045D74 000419D4  2C 03 00 00 */	cmpwi r3, 0
/* 80045D78 000419D8  41 82 00 38 */	beq lbl_80045DB0
/* 80045D7C 000419DC  7F BC EB 78 */	mr r28, r29
/* 80045D80 000419E0  3B 60 00 00 */	li r27, 0
lbl_80045D84:
/* 80045D84 000419E4  80 7C 00 08 */	lwz r3, 8(r28)
/* 80045D88 000419E8  2C 03 00 00 */	cmpwi r3, 0
/* 80045D8C 000419EC  41 82 00 14 */	beq lbl_80045DA0
/* 80045D90 000419F0  4B FF 39 45 */	bl func_800396D4
/* 80045D94 000419F4  7C 19 18 00 */	cmpw r25, r3
/* 80045D98 000419F8  40 80 00 08 */	bge lbl_80045DA0
/* 80045D9C 000419FC  7C 79 1B 78 */	mr r25, r3
lbl_80045DA0:
/* 80045DA0 00041A00  3B 7B 00 01 */	addi r27, r27, 1
/* 80045DA4 00041A04  3B 9C 00 04 */	addi r28, r28, 4
/* 80045DA8 00041A08  2C 1B 00 02 */	cmpwi r27, 2
/* 80045DAC 00041A0C  41 80 FF D8 */	blt lbl_80045D84
lbl_80045DB0:
/* 80045DB0 00041A10  3B 5A 00 01 */	addi r26, r26, 1
/* 80045DB4 00041A14  3B BD 00 44 */	addi r29, r29, 0x44
/* 80045DB8 00041A18  2C 1A 00 04 */	cmpwi r26, 4
/* 80045DBC 00041A1C  41 80 FF B0 */	blt lbl_80045D6C
/* 80045DC0 00041A20  2C 19 00 02 */	cmpwi r25, 2
/* 80045DC4 00041A24  41 81 00 08 */	bgt lbl_80045DCC
/* 80045DC8 00041A28  C3 62 83 90 */	lfs f27, lbl_80640990-_SDA2_BASE_(r2)
lbl_80045DCC:
/* 80045DCC 00041A2C  2C 19 00 03 */	cmpwi r25, 3
/* 80045DD0 00041A30  40 82 00 08 */	bne lbl_80045DD8
/* 80045DD4 00041A34  C3 62 83 8C */	lfs f27, lbl_8064098C-_SDA2_BASE_(r2)
lbl_80045DD8:
/* 80045DD8 00041A38  2C 19 00 04 */	cmpwi r25, 4
/* 80045DDC 00041A3C  40 82 00 08 */	bne lbl_80045DE4
/* 80045DE0 00041A40  C3 62 83 94 */	lfs f27, lbl_80640994-_SDA2_BASE_(r2)
lbl_80045DE4:
/* 80045DE4 00041A44  2C 19 00 05 */	cmpwi r25, 5
/* 80045DE8 00041A48  40 82 00 08 */	bne lbl_80045DF0
/* 80045DEC 00041A4C  C3 62 83 98 */	lfs f27, lbl_80640998-_SDA2_BASE_(r2)
lbl_80045DF0:
/* 80045DF0 00041A50  2C 19 00 06 */	cmpwi r25, 6
/* 80045DF4 00041A54  41 80 00 08 */	blt lbl_80045DFC
/* 80045DF8 00041A58  C3 62 83 9C */	lfs f27, lbl_8064099C-_SDA2_BASE_(r2)
lbl_80045DFC:
/* 80045DFC 00041A5C  2C 19 00 01 */	cmpwi r25, 1
/* 80045E00 00041A60  93 3E 01 24 */	stw r25, 0x124(r30)
/* 80045E04 00041A64  40 80 00 0C */	bge lbl_80045E10
/* 80045E08 00041A68  38 00 00 01 */	li r0, 1
/* 80045E0C 00041A6C  90 1E 01 24 */	stw r0, 0x124(r30)
lbl_80045E10:
/* 80045E10 00041A70  3B 7E 00 0C */	addi r27, r30, 0xc
/* 80045E14 00041A74  C3 A2 83 88 */	lfs f29, lbl_80640988-_SDA2_BASE_(r2)
/* 80045E18 00041A78  C3 22 83 B0 */	lfs f25, lbl_806409B0-_SDA2_BASE_(r2)
/* 80045E1C 00041A7C  7F 7D DB 78 */	mr r29, r27
/* 80045E20 00041A80  C3 42 83 AC */	lfs f26, lbl_806409AC-_SDA2_BASE_(r2)
/* 80045E24 00041A84  3B 40 00 00 */	li r26, 0
/* 80045E28 00041A88  C3 C2 83 A0 */	lfs f30, lbl_806409A0-_SDA2_BASE_(r2)
/* 80045E2C 00041A8C  C3 E2 83 A4 */	lfs f31, lbl_806409A4-_SDA2_BASE_(r2)
lbl_80045E30:
/* 80045E30 00041A90  7F A3 EB 78 */	mr r3, r29
/* 80045E34 00041A94  4B FF F1 7D */	bl func_80044FB0
/* 80045E38 00041A98  2C 03 00 00 */	cmpwi r3, 0
/* 80045E3C 00041A9C  41 82 02 1C */	beq lbl_80046058
/* 80045E40 00041AA0  57 5C 07 FF */	clrlwi. r28, r26, 0x1f
/* 80045E44 00041AA4  D3 A1 00 20 */	stfs f29, 0x20(r1)
/* 80045E48 00041AA8  D3 A1 00 24 */	stfs f29, 0x24(r1)
/* 80045E4C 00041AAC  D3 A1 00 28 */	stfs f29, 0x28(r1)
/* 80045E50 00041AB0  D3 A1 00 14 */	stfs f29, 0x14(r1)
/* 80045E54 00041AB4  D3 A1 00 18 */	stfs f29, 0x18(r1)
/* 80045E58 00041AB8  D3 A1 00 1C */	stfs f29, 0x1c(r1)
/* 80045E5C 00041ABC  40 82 00 20 */	bne lbl_80045E7C
/* 80045E60 00041AC0  FC 00 D8 50 */	fneg f0, f27
/* 80045E64 00041AC4  FF 80 E8 90 */	fmr f28, f29
/* 80045E68 00041AC8  EC 3E 00 32 */	fmuls f1, f30, f0
/* 80045E6C 00041ACC  EC 1F 00 32 */	fmuls f0, f31, f0
/* 80045E70 00041AD0  D0 21 00 28 */	stfs f1, 0x28(r1)
/* 80045E74 00041AD4  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80045E78 00041AD8  48 00 00 18 */	b lbl_80045E90
lbl_80045E7C:
/* 80045E7C 00041ADC  EC 3E 06 F2 */	fmuls f1, f30, f27
/* 80045E80 00041AE0  C3 82 83 A8 */	lfs f28, lbl_806409A8-_SDA2_BASE_(r2)
/* 80045E84 00041AE4  EC 1F 06 F2 */	fmuls f0, f31, f27
/* 80045E88 00041AE8  D0 21 00 28 */	stfs f1, 0x28(r1)
/* 80045E8C 00041AEC  D0 01 00 1C */	stfs f0, 0x1c(r1)
lbl_80045E90:
/* 80045E90 00041AF0  1C 1C 00 44 */	mulli r0, r28, 0x44
/* 80045E94 00041AF4  3B 20 00 00 */	li r25, 0
/* 80045E98 00041AF8  7C 7E 02 14 */	add r3, r30, r0
/* 80045E9C 00041AFC  38 63 00 0C */	addi r3, r3, 0xc
/* 80045EA0 00041B00  4B FF F1 11 */	bl func_80044FB0
/* 80045EA4 00041B04  2C 03 00 00 */	cmpwi r3, 0
/* 80045EA8 00041B08  41 82 00 08 */	beq lbl_80045EB0
/* 80045EAC 00041B0C  3B 20 00 01 */	li r25, 1
lbl_80045EB0:
/* 80045EB0 00041B10  63 80 00 02 */	ori r0, r28, 2
/* 80045EB4 00041B14  1C 00 00 44 */	mulli r0, r0, 0x44
/* 80045EB8 00041B18  7C 7E 02 14 */	add r3, r30, r0
/* 80045EBC 00041B1C  38 63 00 0C */	addi r3, r3, 0xc
/* 80045EC0 00041B20  4B FF F0 F1 */	bl func_80044FB0
/* 80045EC4 00041B24  2C 03 00 00 */	cmpwi r3, 0
/* 80045EC8 00041B28  41 82 00 08 */	beq lbl_80045ED0
/* 80045ECC 00041B2C  3B 39 00 01 */	addi r25, r25, 1
lbl_80045ED0:
/* 80045ED0 00041B30  2C 19 00 01 */	cmpwi r25, 1
/* 80045ED4 00041B34  40 82 00 0C */	bne lbl_80045EE0
/* 80045ED8 00041B38  D3 A1 00 20 */	stfs f29, 0x20(r1)
/* 80045EDC 00041B3C  48 00 00 34 */	b lbl_80045F10
lbl_80045EE0:
/* 80045EE0 00041B40  2C 19 00 02 */	cmpwi r25, 2
/* 80045EE4 00041B44  40 82 00 2C */	bne lbl_80045F10
/* 80045EE8 00041B48  57 40 07 BF */	clrlwi. r0, r26, 0x1e
/* 80045EEC 00041B4C  41 82 00 0C */	beq lbl_80045EF8
/* 80045EF0 00041B50  2C 00 00 03 */	cmpwi r0, 3
/* 80045EF4 00041B54  40 82 00 10 */	bne lbl_80045F04
lbl_80045EF8:
/* 80045EF8 00041B58  EC 1A 06 F2 */	fmuls f0, f26, f27
/* 80045EFC 00041B5C  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 80045F00 00041B60  48 00 00 10 */	b lbl_80045F10
lbl_80045F04:
/* 80045F04 00041B64  FC 00 D8 50 */	fneg f0, f27
/* 80045F08 00041B68  EC 1A 00 32 */	fmuls f0, f26, f0
/* 80045F0C 00041B6C  D0 01 00 20 */	stfs f0, 0x20(r1)
lbl_80045F10:
/* 80045F10 00041B70  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 80045F14 00041B74  7F A3 EB 78 */	mr r3, r29
/* 80045F18 00041B78  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80045F1C 00041B7C  4B FF F0 9D */	bl func_80044FB8
/* 80045F20 00041B80  2C 03 00 02 */	cmpwi r3, 2
/* 80045F24 00041B84  41 82 00 A0 */	beq lbl_80045FC4
/* 80045F28 00041B88  40 80 01 24 */	bge lbl_8004604C
/* 80045F2C 00041B8C  2C 03 00 01 */	cmpwi r3, 1
/* 80045F30 00041B90  40 80 00 08 */	bge lbl_80045F38
/* 80045F34 00041B94  48 00 01 18 */	b lbl_8004604C
lbl_80045F38:
/* 80045F38 00041B98  80 1E 00 00 */	lwz r0, 0(r30)
/* 80045F3C 00041B9C  2C 00 00 00 */	cmpwi r0, 0
/* 80045F40 00041BA0  40 82 00 1C */	bne lbl_80045F5C
/* 80045F44 00041BA4  EC 39 06 F2 */	fmuls f1, f25, f27
/* 80045F48 00041BA8  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80045F4C 00041BAC  D3 A1 00 14 */	stfs f29, 0x14(r1)
/* 80045F50 00041BB0  EC 00 08 2A */	fadds f0, f0, f1
/* 80045F54 00041BB4  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 80045F58 00041BB8  48 00 00 48 */	b lbl_80045FA0
lbl_80045F5C:
/* 80045F5C 00041BBC  2C 00 00 02 */	cmpwi r0, 2
/* 80045F60 00041BC0  40 82 00 40 */	bne lbl_80045FA0
/* 80045F64 00041BC4  C0 21 00 20 */	lfs f1, 0x20(r1)
/* 80045F68 00041BC8  57 40 07 BF */	clrlwi. r0, r26, 0x1e
/* 80045F6C 00041BCC  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 80045F70 00041BD0  41 82 00 0C */	beq lbl_80045F7C
/* 80045F74 00041BD4  2C 00 00 03 */	cmpwi r0, 3
/* 80045F78 00041BD8  40 82 00 18 */	bne lbl_80045F90
lbl_80045F7C:
/* 80045F7C 00041BDC  EC 39 06 F2 */	fmuls f1, f25, f27
/* 80045F80 00041BE0  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80045F84 00041BE4  EC 00 08 2A */	fadds f0, f0, f1
/* 80045F88 00041BE8  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 80045F8C 00041BEC  48 00 00 14 */	b lbl_80045FA0
lbl_80045F90:
/* 80045F90 00041BF0  FC 00 D8 50 */	fneg f0, f27
/* 80045F94 00041BF4  EC 19 00 32 */	fmuls f0, f25, f0
/* 80045F98 00041BF8  EC 01 00 2A */	fadds f0, f1, f0
/* 80045F9C 00041BFC  D0 01 00 20 */	stfs f0, 0x20(r1)
lbl_80045FA0:
/* 80045FA0 00041C00  7F A3 EB 78 */	mr r3, r29
/* 80045FA4 00041C04  38 81 00 20 */	addi r4, r1, 0x20
/* 80045FA8 00041C08  4B FF F3 F5 */	bl func_8004539C
/* 80045FAC 00041C0C  38 81 00 14 */	addi r4, r1, 0x14
/* 80045FB0 00041C10  7F A3 EB 78 */	mr r3, r29
/* 80045FB4 00041C14  7C 85 23 78 */	mr r5, r4
/* 80045FB8 00041C18  4B FF F4 09 */	bl func_800453C0
/* 80045FBC 00041C1C  D3 9D 00 38 */	stfs f28, 0x38(r29)
/* 80045FC0 00041C20  48 00 00 98 */	b lbl_80046058
lbl_80045FC4:
/* 80045FC4 00041C24  C0 41 00 14 */	lfs f2, 0x14(r1)
/* 80045FC8 00041C28  C0 21 00 18 */	lfs f1, 0x18(r1)
/* 80045FCC 00041C2C  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 80045FD0 00041C30  D0 41 00 08 */	stfs f2, 8(r1)
/* 80045FD4 00041C34  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80045FD8 00041C38  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80045FDC 00041C3C  80 1E 00 00 */	lwz r0, 0(r30)
/* 80045FE0 00041C40  2C 00 00 00 */	cmpwi r0, 0
/* 80045FE4 00041C44  40 82 00 10 */	bne lbl_80045FF4
/* 80045FE8 00041C48  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80045FEC 00041C4C  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80045FF0 00041C50  48 00 00 1C */	b lbl_8004600C
lbl_80045FF4:
/* 80045FF4 00041C54  EC 5A 06 F2 */	fmuls f2, f26, f27
/* 80045FF8 00041C58  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80045FFC 00041C5C  EC 20 10 2A */	fadds f1, f0, f2
/* 80046000 00041C60  EC 00 10 28 */	fsubs f0, f0, f2
/* 80046004 00041C64  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 80046008 00041C68  D0 01 00 08 */	stfs f0, 8(r1)
lbl_8004600C:
/* 8004600C 00041C6C  7F A3 EB 78 */	mr r3, r29
/* 80046010 00041C70  38 81 00 20 */	addi r4, r1, 0x20
/* 80046014 00041C74  4B FF F3 89 */	bl func_8004539C
/* 80046018 00041C78  2C 1C 00 00 */	cmpwi r28, 0
/* 8004601C 00041C7C  41 82 00 18 */	beq lbl_80046034
/* 80046020 00041C80  7F A3 EB 78 */	mr r3, r29
/* 80046024 00041C84  38 81 00 08 */	addi r4, r1, 8
/* 80046028 00041C88  38 A1 00 14 */	addi r5, r1, 0x14
/* 8004602C 00041C8C  4B FF F3 95 */	bl func_800453C0
/* 80046030 00041C90  48 00 00 14 */	b lbl_80046044
lbl_80046034:
/* 80046034 00041C94  7F A3 EB 78 */	mr r3, r29
/* 80046038 00041C98  38 81 00 14 */	addi r4, r1, 0x14
/* 8004603C 00041C9C  38 A1 00 08 */	addi r5, r1, 8
/* 80046040 00041CA0  4B FF F3 81 */	bl func_800453C0
lbl_80046044:
/* 80046044 00041CA4  D3 9D 00 38 */	stfs f28, 0x38(r29)
/* 80046048 00041CA8  48 00 00 10 */	b lbl_80046058
lbl_8004604C:
/* 8004604C 00041CAC  7F A3 EB 78 */	mr r3, r29
/* 80046050 00041CB0  38 81 00 20 */	addi r4, r1, 0x20
/* 80046054 00041CB4  4B FF F3 49 */	bl func_8004539C
lbl_80046058:
/* 80046058 00041CB8  3B 5A 00 01 */	addi r26, r26, 1
/* 8004605C 00041CBC  3B BD 00 44 */	addi r29, r29, 0x44
/* 80046060 00041CC0  2C 1A 00 04 */	cmpwi r26, 4
/* 80046064 00041CC4  41 80 FD CC */	blt lbl_80045E30
/* 80046068 00041CC8  2C 1F 00 00 */	cmpwi r31, 0
/* 8004606C 00041CCC  41 82 00 40 */	beq lbl_800460AC
/* 80046070 00041CD0  3B 20 00 00 */	li r25, 0
/* 80046074 00041CD4  48 00 00 2C */	b lbl_800460A0
lbl_80046078:
/* 80046078 00041CD8  7F 63 DB 78 */	mr r3, r27
/* 8004607C 00041CDC  4B FF EF 35 */	bl func_80044FB0
/* 80046080 00041CE0  2C 03 00 00 */	cmpwi r3, 0
/* 80046084 00041CE4  41 82 00 14 */	beq lbl_80046098
/* 80046088 00041CE8  7F 63 DB 78 */	mr r3, r27
/* 8004608C 00041CEC  4B FF F3 E1 */	bl func_8004546C
/* 80046090 00041CF0  7F 63 DB 78 */	mr r3, r27
/* 80046094 00041CF4  4B FF F4 35 */	bl func_800454C8
lbl_80046098:
/* 80046098 00041CF8  3B 7B 00 44 */	addi r27, r27, 0x44
/* 8004609C 00041CFC  3B 39 00 01 */	addi r25, r25, 1
lbl_800460A0:
/* 800460A0 00041D00  A0 1E 01 1E */	lhz r0, 0x11e(r30)
/* 800460A4 00041D04  7C 19 00 00 */	cmpw r25, r0
/* 800460A8 00041D08  41 80 FF D0 */	blt lbl_80046078
lbl_800460AC:
/* 800460AC 00041D0C  7F C3 F3 78 */	mr r3, r30
/* 800460B0 00041D10  48 00 09 35 */	bl func_800469E4
/* 800460B4 00041D14  E3 E1 00 B8 */	psq_l f31, 184(r1), 0, qr0
/* 800460B8 00041D18  CB E1 00 B0 */	lfd f31, 0xb0(r1)
/* 800460BC 00041D1C  E3 C1 00 A8 */	psq_l f30, 168(r1), 0, qr0
/* 800460C0 00041D20  CB C1 00 A0 */	lfd f30, 0xa0(r1)
/* 800460C4 00041D24  E3 A1 00 98 */	psq_l f29, 152(r1), 0, qr0
/* 800460C8 00041D28  CB A1 00 90 */	lfd f29, 0x90(r1)
/* 800460CC 00041D2C  E3 81 00 88 */	psq_l f28, 136(r1), 0, qr0
/* 800460D0 00041D30  CB 81 00 80 */	lfd f28, 0x80(r1)
/* 800460D4 00041D34  E3 61 00 78 */	psq_l f27, 120(r1), 0, qr0
/* 800460D8 00041D38  CB 61 00 70 */	lfd f27, 0x70(r1)
/* 800460DC 00041D3C  E3 41 00 68 */	psq_l f26, 104(r1), 0, qr0
/* 800460E0 00041D40  CB 41 00 60 */	lfd f26, 0x60(r1)
/* 800460E4 00041D44  E3 21 00 58 */	psq_l f25, 88(r1), 0, qr0
/* 800460E8 00041D48  39 61 00 50 */	addi r11, r1, 0x50
/* 800460EC 00041D4C  CB 21 00 50 */	lfd f25, 0x50(r1)
/* 800460F0 00041D50  48 18 10 7D */	bl _restgpr_25
/* 800460F4 00041D54  80 01 00 C4 */	lwz r0, 0xc4(r1)
/* 800460F8 00041D58  7C 08 03 A6 */	mtlr r0
/* 800460FC 00041D5C  38 21 00 C0 */	addi r1, r1, 0xc0
/* 80046100 00041D60  4E 80 00 20 */	blr

.global func_80046104
func_80046104:
/* 80046104 00041D64  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80046108 00041D68  7C 08 02 A6 */	mflr r0
/* 8004610C 00041D6C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80046110 00041D70  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80046114 00041D74  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80046118 00041D78  7C BE 2B 78 */	mr r30, r5
/* 8004611C 00041D7C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80046120 00041D80  7C 9D 23 78 */	mr r29, r4
/* 80046124 00041D84  93 81 00 10 */	stw r28, 0x10(r1)
/* 80046128 00041D88  7C 7C 1B 78 */	mr r28, r3
/* 8004612C 00041D8C  4B FF 80 31 */	bl func_8003E15C
/* 80046130 00041D90  2C 03 00 00 */	cmpwi r3, 0
/* 80046134 00041D94  7C 7F 1B 78 */	mr r31, r3
/* 80046138 00041D98  41 82 00 60 */	beq lbl_80046198
/* 8004613C 00041D9C  80 9C 00 08 */	lwz r4, 8(r28)
/* 80046140 00041DA0  2C 04 00 00 */	cmpwi r4, 0
/* 80046144 00041DA4  41 82 00 08 */	beq lbl_8004614C
/* 80046148 00041DA8  4B FF 80 F1 */	bl func_8003E238
lbl_8004614C:
/* 8004614C 00041DAC  7F E3 FB 78 */	mr r3, r31
/* 80046150 00041DB0  4B FF 80 6D */	bl func_8003E1BC
/* 80046154 00041DB4  2C 03 00 00 */	cmpwi r3, 0
/* 80046158 00041DB8  90 7C 00 08 */	stw r3, 8(r28)
/* 8004615C 00041DBC  41 82 00 3C */	beq lbl_80046198
/* 80046160 00041DC0  7F A4 EB 78 */	mr r4, r29
/* 80046164 00041DC4  7F C5 F3 78 */	mr r5, r30
/* 80046168 00041DC8  4B FF 17 BD */	bl func_80037924
/* 8004616C 00041DCC  80 7C 00 08 */	lwz r3, 8(r28)
/* 80046170 00041DD0  38 80 00 03 */	li r4, 3
/* 80046174 00041DD4  38 00 01 00 */	li r0, 0x100
/* 80046178 00041DD8  B0 83 05 0C */	sth r4, 0x50c(r3)
/* 8004617C 00041DDC  80 7C 00 08 */	lwz r3, 8(r28)
/* 80046180 00041DE0  B0 03 0C 68 */	sth r0, 0xc68(r3)
/* 80046184 00041DE4  80 7C 00 08 */	lwz r3, 8(r28)
/* 80046188 00041DE8  80 63 0C 00 */	lwz r3, 0xc00(r3)
/* 8004618C 00041DEC  2C 03 00 00 */	cmpwi r3, 0
/* 80046190 00041DF0  41 82 00 08 */	beq lbl_80046198
/* 80046194 00041DF4  48 1B C8 3D */	bl func_802029D0
lbl_80046198:
/* 80046198 00041DF8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004619C 00041DFC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800461A0 00041E00  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800461A4 00041E04  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800461A8 00041E08  83 81 00 10 */	lwz r28, 0x10(r1)
/* 800461AC 00041E0C  7C 08 03 A6 */	mtlr r0
/* 800461B0 00041E10  38 21 00 20 */	addi r1, r1, 0x20
/* 800461B4 00041E14  4E 80 00 20 */	blr

.global func_800461B8
func_800461B8:
/* 800461B8 00041E18  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800461BC 00041E1C  7C 08 02 A6 */	mflr r0
/* 800461C0 00041E20  90 01 00 24 */	stw r0, 0x24(r1)
/* 800461C4 00041E24  39 61 00 20 */	addi r11, r1, 0x20
/* 800461C8 00041E28  48 18 0F 61 */	bl _savegpr_27
/* 800461CC 00041E2C  7C 7B 1B 78 */	mr r27, r3
/* 800461D0 00041E30  4B FF 7F 8D */	bl func_8003E15C
/* 800461D4 00041E34  2C 03 00 00 */	cmpwi r3, 0
/* 800461D8 00041E38  7C 7D 1B 78 */	mr r29, r3
/* 800461DC 00041E3C  41 82 00 98 */	beq lbl_80046274
/* 800461E0 00041E40  7F 63 DB 78 */	mr r3, r27
/* 800461E4 00041E44  48 00 06 7D */	bl func_80046860
/* 800461E8 00041E48  80 7B 01 64 */	lwz r3, 0x164(r27)
/* 800461EC 00041E4C  2C 03 00 00 */	cmpwi r3, 0
/* 800461F0 00041E50  41 82 00 24 */	beq lbl_80046214
/* 800461F4 00041E54  41 82 00 18 */	beq lbl_8004620C
/* 800461F8 00041E58  81 83 01 00 */	lwz r12, 0x100(r3)
/* 800461FC 00041E5C  38 80 00 01 */	li r4, 1
/* 80046200 00041E60  81 8C 00 08 */	lwz r12, 8(r12)
/* 80046204 00041E64  7D 89 03 A6 */	mtctr r12
/* 80046208 00041E68  4E 80 04 21 */	bctrl
lbl_8004620C:
/* 8004620C 00041E6C  38 00 00 00 */	li r0, 0
/* 80046210 00041E70  90 1B 01 64 */	stw r0, 0x164(r27)
lbl_80046214:
/* 80046214 00041E74  7F 7E DB 78 */	mr r30, r27
/* 80046218 00041E78  3B 80 00 00 */	li r28, 0
/* 8004621C 00041E7C  3B E0 00 00 */	li r31, 0
lbl_80046220:
/* 80046220 00041E80  80 7E 01 5C */	lwz r3, 0x15c(r30)
/* 80046224 00041E84  2C 03 00 00 */	cmpwi r3, 0
/* 80046228 00041E88  41 82 00 20 */	beq lbl_80046248
/* 8004622C 00041E8C  41 82 00 18 */	beq lbl_80046244
/* 80046230 00041E90  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80046234 00041E94  38 80 00 01 */	li r4, 1
/* 80046238 00041E98  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004623C 00041E9C  7D 89 03 A6 */	mtctr r12
/* 80046240 00041EA0  4E 80 04 21 */	bctrl
lbl_80046244:
/* 80046244 00041EA4  93 FE 01 5C */	stw r31, 0x15c(r30)
lbl_80046248:
/* 80046248 00041EA8  3B 9C 00 01 */	addi r28, r28, 1
/* 8004624C 00041EAC  3B DE 00 04 */	addi r30, r30, 4
/* 80046250 00041EB0  2C 1C 00 02 */	cmpwi r28, 2
/* 80046254 00041EB4  41 80 FF CC */	blt lbl_80046220
/* 80046258 00041EB8  80 9B 00 08 */	lwz r4, 8(r27)
/* 8004625C 00041EBC  2C 04 00 00 */	cmpwi r4, 0
/* 80046260 00041EC0  41 82 00 14 */	beq lbl_80046274
/* 80046264 00041EC4  7F A3 EB 78 */	mr r3, r29
/* 80046268 00041EC8  4B FF 7F D1 */	bl func_8003E238
/* 8004626C 00041ECC  38 00 00 00 */	li r0, 0
/* 80046270 00041ED0  90 1B 00 08 */	stw r0, 8(r27)
lbl_80046274:
/* 80046274 00041ED4  39 61 00 20 */	addi r11, r1, 0x20
/* 80046278 00041ED8  48 18 0E FD */	bl _restgpr_27
/* 8004627C 00041EDC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80046280 00041EE0  7C 08 03 A6 */	mtlr r0
/* 80046284 00041EE4  38 21 00 20 */	addi r1, r1, 0x20
/* 80046288 00041EE8  4E 80 00 20 */	blr

.global func_8004628C
func_8004628C:
/* 8004628C 00041EEC  80 63 00 08 */	lwz r3, 8(r3)
/* 80046290 00041EF0  2C 03 00 00 */	cmpwi r3, 0
/* 80046294 00041EF4  40 82 00 0C */	bne lbl_800462A0
/* 80046298 00041EF8  38 60 00 00 */	li r3, 0
/* 8004629C 00041EFC  4E 80 00 20 */	blr
lbl_800462A0:
/* 800462A0 00041F00  80 C3 0C 00 */	lwz r6, 0xc00(r3)
/* 800462A4 00041F04  2C 06 00 00 */	cmpwi r6, 0
/* 800462A8 00041F08  40 82 00 0C */	bne lbl_800462B4
/* 800462AC 00041F0C  38 60 00 00 */	li r3, 0
/* 800462B0 00041F10  4E 80 00 20 */	blr
lbl_800462B4:
/* 800462B4 00041F14  80 66 00 00 */	lwz r3, 0(r6)
/* 800462B8 00041F18  39 60 00 00 */	li r11, 0
/* 800462BC 00041F1C  A0 E3 00 18 */	lhz r7, 0x18(r3)
/* 800462C0 00041F20  48 00 00 E0 */	b lbl_800463A0
lbl_800462C4:
/* 800462C4 00041F24  81 06 00 04 */	lwz r8, 4(r6)
/* 800462C8 00041F28  2C 08 00 00 */	cmpwi r8, 0
/* 800462CC 00041F2C  40 82 00 0C */	bne lbl_800462D8
/* 800462D0 00041F30  38 A0 00 00 */	li r5, 0
/* 800462D4 00041F34  48 00 00 28 */	b lbl_800462FC
lbl_800462D8:
/* 800462D8 00041F38  80 66 00 00 */	lwz r3, 0(r6)
/* 800462DC 00041F3C  55 65 04 3E */	clrlwi r5, r11, 0x10
/* 800462E0 00041F40  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 800462E4 00041F44  7C 05 00 40 */	cmplw r5, r0
/* 800462E8 00041F48  41 80 00 0C */	blt lbl_800462F4
/* 800462EC 00041F4C  38 A0 00 00 */	li r5, 0
/* 800462F0 00041F50  48 00 00 0C */	b lbl_800462FC
lbl_800462F4:
/* 800462F4 00041F54  55 60 13 BA */	rlwinm r0, r11, 2, 0xe, 0x1d
/* 800462F8 00041F58  7C A8 00 2E */	lwzx r5, r8, r0
lbl_800462FC:
/* 800462FC 00041F5C  2C 05 00 00 */	cmpwi r5, 0
/* 80046300 00041F60  40 82 00 0C */	bne lbl_8004630C
/* 80046304 00041F64  38 60 00 00 */	li r3, 0
/* 80046308 00041F68  4E 80 00 20 */	blr
lbl_8004630C:
/* 8004630C 00041F6C  A1 05 00 EC */	lhz r8, 0xec(r5)
/* 80046310 00041F70  39 80 00 00 */	li r12, 0
/* 80046314 00041F74  48 00 00 7C */	b lbl_80046390
lbl_80046318:
/* 80046318 00041F78  81 25 00 28 */	lwz r9, 0x28(r5)
/* 8004631C 00041F7C  2C 09 00 00 */	cmpwi r9, 0
/* 80046320 00041F80  40 82 00 0C */	bne lbl_8004632C
/* 80046324 00041F84  38 00 00 00 */	li r0, 0
/* 80046328 00041F88  48 00 00 54 */	b lbl_8004637C
lbl_8004632C:
/* 8004632C 00041F8C  A0 05 00 EC */	lhz r0, 0xec(r5)
/* 80046330 00041F90  55 83 04 3E */	clrlwi r3, r12, 0x10
/* 80046334 00041F94  7C 03 00 40 */	cmplw r3, r0
/* 80046338 00041F98  41 80 00 0C */	blt lbl_80046344
/* 8004633C 00041F9C  38 00 00 00 */	li r0, 0
/* 80046340 00041FA0  48 00 00 3C */	b lbl_8004637C
lbl_80046344:
/* 80046344 00041FA4  81 45 00 08 */	lwz r10, 8(r5)
/* 80046348 00041FA8  55 80 0B FC */	rlwinm r0, r12, 1, 0xf, 0x1e
/* 8004634C 00041FAC  7C 69 02 2E */	lhzx r3, r9, r0
/* 80046350 00041FB0  2C 0A 00 00 */	cmpwi r10, 0
/* 80046354 00041FB4  40 82 00 0C */	bne lbl_80046360
/* 80046358 00041FB8  38 00 00 00 */	li r0, 0
/* 8004635C 00041FBC  48 00 00 20 */	b lbl_8004637C
lbl_80046360:
/* 80046360 00041FC0  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 80046364 00041FC4  7C 03 00 40 */	cmplw r3, r0
/* 80046368 00041FC8  41 80 00 0C */	blt lbl_80046374
/* 8004636C 00041FCC  38 00 00 00 */	li r0, 0
/* 80046370 00041FD0  48 00 00 0C */	b lbl_8004637C
lbl_80046374:
/* 80046374 00041FD4  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 80046378 00041FD8  7C 0A 00 2E */	lwzx r0, r10, r0
lbl_8004637C:
/* 8004637C 00041FDC  7C 04 00 40 */	cmplw r4, r0
/* 80046380 00041FE0  40 82 00 0C */	bne lbl_8004638C
/* 80046384 00041FE4  38 60 00 01 */	li r3, 1
/* 80046388 00041FE8  4E 80 00 20 */	blr
lbl_8004638C:
/* 8004638C 00041FEC  39 8C 00 01 */	addi r12, r12, 1
lbl_80046390:
/* 80046390 00041FF0  55 80 04 3E */	clrlwi r0, r12, 0x10
/* 80046394 00041FF4  7C 00 40 40 */	cmplw r0, r8
/* 80046398 00041FF8  41 80 FF 80 */	blt lbl_80046318
/* 8004639C 00041FFC  39 6B 00 01 */	addi r11, r11, 1
lbl_800463A0:
/* 800463A0 00042000  55 60 04 3E */	clrlwi r0, r11, 0x10
/* 800463A4 00042004  7C 00 38 40 */	cmplw r0, r7
/* 800463A8 00042008  41 80 FF 1C */	blt lbl_800462C4
/* 800463AC 0004200C  38 60 00 00 */	li r3, 0
/* 800463B0 00042010  4E 80 00 20 */	blr

.global func_800463B4
func_800463B4:
/* 800463B4 00042014  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800463B8 00042018  7C 08 02 A6 */	mflr r0
/* 800463BC 0004201C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800463C0 00042020  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800463C4 00042024  93 C1 00 08 */	stw r30, 8(r1)
/* 800463C8 00042028  7C 7E 1B 78 */	mr r30, r3
/* 800463CC 0004202C  80 03 01 64 */	lwz r0, 0x164(r3)
/* 800463D0 00042030  2C 00 00 00 */	cmpwi r0, 0
/* 800463D4 00042034  40 82 00 6C */	bne lbl_80046440
/* 800463D8 00042038  3C 80 20 FE */	lis r4, 0x20FE0E00@ha
/* 800463DC 0004203C  38 60 00 0C */	li r3, 0xc
/* 800463E0 00042040  38 84 0E 00 */	addi r4, r4, 0x20FE0E00@l
/* 800463E4 00042044  48 19 50 D9 */	bl func_801DB4BC
/* 800463E8 00042048  2C 03 00 00 */	cmpwi r3, 0
/* 800463EC 0004204C  7C 7F 1B 78 */	mr r31, r3
/* 800463F0 00042050  41 82 00 50 */	beq lbl_80046440
/* 800463F4 00042054  48 19 47 35 */	bl func_801DAB28
/* 800463F8 00042058  2C 03 00 00 */	cmpwi r3, 0
/* 800463FC 0004205C  41 82 00 14 */	beq lbl_80046410
/* 80046400 00042060  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80046404 00042064  38 80 01 40 */	li r4, 0x140
/* 80046408 00042068  48 19 48 8D */	bl func_801DAC94
/* 8004640C 0004206C  48 00 00 08 */	b lbl_80046414
lbl_80046410:
/* 80046410 00042070  38 60 00 00 */	li r3, 0
lbl_80046414:
/* 80046414 00042074  2C 03 00 00 */	cmpwi r3, 0
/* 80046418 00042078  41 82 00 0C */	beq lbl_80046424
/* 8004641C 0004207C  7F E4 FB 78 */	mr r4, r31
/* 80046420 00042080  48 1B 34 CD */	bl func_801F98EC
lbl_80046424:
/* 80046424 00042084  90 7E 01 64 */	stw r3, 0x164(r30)
/* 80046428 00042088  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004642C 0004208C  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80046430 00042090  60 00 00 01 */	ori r0, r0, 1
/* 80046434 00042094  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046438 00042098  90 03 01 04 */	stw r0, 0x104(r3)
/* 8004643C 0004209C  D0 03 01 08 */	stfs f0, 0x108(r3)
lbl_80046440:
/* 80046440 000420A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80046444 000420A4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80046448 000420A8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004644C 000420AC  7C 08 03 A6 */	mtlr r0
/* 80046450 000420B0  38 21 00 10 */	addi r1, r1, 0x10
/* 80046454 000420B4  4E 80 00 20 */	blr

.global func_80046458
func_80046458:
/* 80046458 000420B8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004645C 000420BC  7C 08 02 A6 */	mflr r0
/* 80046460 000420C0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80046464 000420C4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80046468 000420C8  7C 7F 1B 78 */	mr r31, r3
/* 8004646C 000420CC  80 03 01 64 */	lwz r0, 0x164(r3)
/* 80046470 000420D0  2C 00 00 00 */	cmpwi r0, 0
/* 80046474 000420D4  41 82 00 28 */	beq lbl_8004649C
/* 80046478 000420D8  41 82 00 1C */	beq lbl_80046494
/* 8004647C 000420DC  7C 03 03 78 */	mr r3, r0
/* 80046480 000420E0  38 80 00 01 */	li r4, 1
/* 80046484 000420E4  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80046488 000420E8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004648C 000420EC  7D 89 03 A6 */	mtctr r12
/* 80046490 000420F0  4E 80 04 21 */	bctrl
lbl_80046494:
/* 80046494 000420F4  38 00 00 00 */	li r0, 0
/* 80046498 000420F8  90 1F 01 64 */	stw r0, 0x164(r31)
lbl_8004649C:
/* 8004649C 000420FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800464A0 00042100  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800464A4 00042104  7C 08 03 A6 */	mtlr r0
/* 800464A8 00042108  38 21 00 10 */	addi r1, r1, 0x10
/* 800464AC 0004210C  4E 80 00 20 */	blr

.global func_800464B0
func_800464B0:
/* 800464B0 00042110  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 800464B4 00042114  7C 08 02 A6 */	mflr r0
/* 800464B8 00042118  90 01 00 74 */	stw r0, 0x74(r1)
/* 800464BC 0004211C  39 61 00 70 */	addi r11, r1, 0x70
/* 800464C0 00042120  48 18 0C 69 */	bl _savegpr_27
/* 800464C4 00042124  2C 05 00 00 */	cmpwi r5, 0
/* 800464C8 00042128  7C 7B 1B 78 */	mr r27, r3
/* 800464CC 0004212C  7C BC 2B 78 */	mr r28, r5
/* 800464D0 00042130  41 80 03 78 */	blt lbl_80046848
/* 800464D4 00042134  2C 05 00 03 */	cmpwi r5, 3
/* 800464D8 00042138  40 81 00 08 */	ble lbl_800464E0
/* 800464DC 0004213C  48 00 03 6C */	b lbl_80046848
lbl_800464E0:
/* 800464E0 00042140  2C 04 00 01 */	cmpwi r4, 1
/* 800464E4 00042144  41 82 00 38 */	beq lbl_8004651C
/* 800464E8 00042148  40 80 00 10 */	bge lbl_800464F8
/* 800464EC 0004214C  2C 04 00 00 */	cmpwi r4, 0
/* 800464F0 00042150  40 80 00 14 */	bge lbl_80046504
/* 800464F4 00042154  48 00 03 54 */	b lbl_80046848
lbl_800464F8:
/* 800464F8 00042158  2C 04 00 03 */	cmpwi r4, 3
/* 800464FC 0004215C  40 80 03 4C */	bge lbl_80046848
/* 80046500 00042160  48 00 00 34 */	b lbl_80046534
lbl_80046504:
/* 80046504 00042164  54 A0 10 3A */	slwi r0, r5, 2
/* 80046508 00042168  3C 80 1D 52 */	lis r4, 0x1D520A00@ha
/* 8004650C 0004216C  7C 63 02 14 */	add r3, r3, r0
/* 80046510 00042170  3B E4 0A 00 */	addi r31, r4, 0x1D520A00@l
/* 80046514 00042174  3B C3 01 2C */	addi r30, r3, 0x12c
/* 80046518 00042178  48 00 00 38 */	b lbl_80046550
lbl_8004651C:
/* 8004651C 0004217C  54 A0 10 3A */	slwi r0, r5, 2
/* 80046520 00042180  3C 80 1D 51 */	lis r4, 0x1D510A00@ha
/* 80046524 00042184  7C 63 02 14 */	add r3, r3, r0
/* 80046528 00042188  3B E4 0A 00 */	addi r31, r4, 0x1D510A00@l
/* 8004652C 0004218C  3B C3 01 3C */	addi r30, r3, 0x13c
/* 80046530 00042190  48 00 00 20 */	b lbl_80046550
lbl_80046534:
/* 80046534 00042194  54 A0 10 3A */	slwi r0, r5, 2
/* 80046538 00042198  3C 80 27 77 */	lis r4, 0x27770A00@ha
/* 8004653C 0004219C  7C 63 02 14 */	add r3, r3, r0
/* 80046540 000421A0  3B E4 0A 00 */	addi r31, r4, 0x27770A00@l
/* 80046544 000421A4  3B C3 01 4C */	addi r30, r3, 0x14c
/* 80046548 000421A8  48 00 00 08 */	b lbl_80046550
/* 8004654C 000421AC  48 00 02 FC */	b lbl_80046848
lbl_80046550:
/* 80046550 000421B0  7F 63 DB 78 */	mr r3, r27
/* 80046554 000421B4  7F 84 E3 78 */	mr r4, r28
/* 80046558 000421B8  38 A0 00 00 */	li r5, 0
/* 8004655C 000421BC  4B FF F5 A5 */	bl func_80045B00
/* 80046560 000421C0  57 E0 00 5E */	rlwinm r0, r31, 0, 1, 0xf
/* 80046564 000421C4  7C 7F 1B 78 */	mr r31, r3
/* 80046568 000421C8  60 04 0E 00 */	ori r4, r0, 0xe00
/* 8004656C 000421CC  38 60 00 0C */	li r3, 0xc
/* 80046570 000421D0  48 19 4F 4D */	bl func_801DB4BC
/* 80046574 000421D4  2C 03 00 00 */	cmpwi r3, 0
/* 80046578 000421D8  7C 7D 1B 78 */	mr r29, r3
/* 8004657C 000421DC  41 82 02 CC */	beq lbl_80046848
/* 80046580 000421E0  80 7E 00 00 */	lwz r3, 0(r30)
/* 80046584 000421E4  2C 03 00 00 */	cmpwi r3, 0
/* 80046588 000421E8  41 82 00 1C */	beq lbl_800465A4
/* 8004658C 000421EC  41 82 00 18 */	beq lbl_800465A4
/* 80046590 000421F0  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80046594 000421F4  38 80 00 01 */	li r4, 1
/* 80046598 000421F8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004659C 000421FC  7D 89 03 A6 */	mtctr r12
/* 800465A0 00042200  4E 80 04 21 */	bctrl
lbl_800465A4:
/* 800465A4 00042204  48 19 45 85 */	bl func_801DAB28
/* 800465A8 00042208  2C 03 00 00 */	cmpwi r3, 0
/* 800465AC 0004220C  41 82 00 14 */	beq lbl_800465C0
/* 800465B0 00042210  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800465B4 00042214  38 80 01 40 */	li r4, 0x140
/* 800465B8 00042218  48 19 46 DD */	bl func_801DAC94
/* 800465BC 0004221C  48 00 00 08 */	b lbl_800465C4
lbl_800465C0:
/* 800465C0 00042220  38 60 00 00 */	li r3, 0
lbl_800465C4:
/* 800465C4 00042224  2C 03 00 00 */	cmpwi r3, 0
/* 800465C8 00042228  41 82 00 0C */	beq lbl_800465D4
/* 800465CC 0004222C  7F A4 EB 78 */	mr r4, r29
/* 800465D0 00042230  48 1B 33 1D */	bl func_801F98EC
lbl_800465D4:
/* 800465D4 00042234  90 7E 00 00 */	stw r3, 0(r30)
/* 800465D8 00042238  7F 63 DB 78 */	mr r3, r27
/* 800465DC 0004223C  7F 84 E3 78 */	mr r4, r28
/* 800465E0 00042240  38 A1 00 40 */	addi r5, r1, 0x40
/* 800465E4 00042244  38 C1 00 08 */	addi r6, r1, 8
/* 800465E8 00042248  38 E0 00 01 */	li r7, 1
/* 800465EC 0004224C  4B FF F6 2D */	bl func_80045C18
/* 800465F0 00042250  80 7E 00 00 */	lwz r3, 0(r30)
/* 800465F4 00042254  38 80 00 01 */	li r4, 1
/* 800465F8 00042258  C0 01 00 40 */	lfs f0, 0x40(r1)
/* 800465FC 0004225C  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80046600 00042260  C0 01 00 44 */	lfs f0, 0x44(r1)
/* 80046604 00042264  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 80046608 00042268  C0 01 00 48 */	lfs f0, 0x48(r1)
/* 8004660C 0004226C  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80046610 00042270  48 1A C0 A9 */	bl func_801F26B8
/* 80046614 00042274  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80046618 00042278  38 61 00 30 */	addi r3, r1, 0x30
/* 8004661C 0004227C  C0 21 00 08 */	lfs f1, 8(r1)
/* 80046620 00042280  38 81 00 24 */	addi r4, r1, 0x24
/* 80046624 00042284  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 80046628 00042288  D0 21 00 28 */	stfs f1, 0x28(r1)
/* 8004662C 0004228C  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 80046630 00042290  48 1D D0 91 */	bl func_802236C0
/* 80046634 00042294  80 7E 00 00 */	lwz r3, 0(r30)
/* 80046638 00042298  38 80 00 01 */	li r4, 1
/* 8004663C 0004229C  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 80046640 000422A0  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80046644 000422A4  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 80046648 000422A8  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 8004664C 000422AC  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 80046650 000422B0  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80046654 000422B4  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 80046658 000422B8  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 8004665C 000422BC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80046660 000422C0  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80046664 000422C4  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80046668 000422C8  48 1A C0 51 */	bl func_801F26B8
/* 8004666C 000422CC  2C 1F 00 00 */	cmpwi r31, 0
/* 80046670 000422D0  41 82 00 DC */	beq lbl_8004674C
/* 80046674 000422D4  7F E3 FB 78 */	mr r3, r31
/* 80046678 000422D8  4B FF 30 5D */	bl func_800396D4
/* 8004667C 000422DC  C0 22 83 8C */	lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046680 000422E0  48 00 7E 1D */	bl func_8004E49C
/* 80046684 000422E4  FC 00 08 18 */	frsp f0, f1
/* 80046688 000422E8  80 7E 00 00 */	lwz r3, 0(r30)
/* 8004668C 000422EC  C0 42 83 B4 */	lfs f2, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046690 000422F0  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80046694 000422F4  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80046698 000422F8  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8004669C 000422FC  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 800466A0 00042300  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 800466A4 00042304  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 800466A8 00042308  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 800466AC 0004230C  40 80 00 2C */	bge lbl_800466D8
/* 800466B0 00042310  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 800466B4 00042314  C0 62 83 B8 */	lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800466B8 00042318  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 800466BC 0004231C  40 81 00 1C */	ble lbl_800466D8
/* 800466C0 00042320  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800466C4 00042324  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800466C8 00042328  40 80 00 08 */	bge lbl_800466D0
/* 800466CC 0004232C  48 00 00 08 */	b lbl_800466D4
lbl_800466D0:
/* 800466D0 00042330  FC 60 10 90 */	fmr f3, f2
lbl_800466D4:
/* 800466D4 00042334  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_800466D8:
/* 800466D8 00042338  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 800466DC 0004233C  C0 22 83 B4 */	lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 800466E0 00042340  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 800466E4 00042344  40 80 00 28 */	bge lbl_8004670C
/* 800466E8 00042348  C0 62 83 B8 */	lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800466EC 0004234C  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 800466F0 00042350  40 81 00 1C */	ble lbl_8004670C
/* 800466F4 00042354  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800466F8 00042358  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800466FC 0004235C  40 80 00 08 */	bge lbl_80046704
/* 80046700 00042360  48 00 00 08 */	b lbl_80046708
lbl_80046704:
/* 80046704 00042364  FC 60 08 90 */	fmr f3, f1
lbl_80046708:
/* 80046708 00042368  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8004670C:
/* 8004670C 0004236C  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 80046710 00042370  C0 22 83 B4 */	lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046714 00042374  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80046718 00042378  40 80 00 28 */	bge lbl_80046740
/* 8004671C 0004237C  C0 62 83 B8 */	lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046720 00042380  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80046724 00042384  40 81 00 1C */	ble lbl_80046740
/* 80046728 00042388  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004672C 0004238C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80046730 00042390  40 80 00 08 */	bge lbl_80046738
/* 80046734 00042394  48 00 00 08 */	b lbl_8004673C
lbl_80046738:
/* 80046738 00042398  FC 60 08 90 */	fmr f3, f1
lbl_8004673C:
/* 8004673C 0004239C  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_80046740:
/* 80046740 000423A0  38 80 00 01 */	li r4, 1
/* 80046744 000423A4  48 1A BF 75 */	bl func_801F26B8
/* 80046748 000423A8  48 00 00 C8 */	b lbl_80046810
lbl_8004674C:
/* 8004674C 000423AC  C0 02 83 8C */	lfs f0, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046750 000423B0  80 7E 00 00 */	lwz r3, 0(r30)
/* 80046754 000423B4  C0 42 83 B4 */	lfs f2, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046758 000423B8  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8004675C 000423BC  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80046760 000423C0  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80046764 000423C4  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80046768 000423C8  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8004676C 000423CC  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80046770 000423D0  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80046774 000423D4  40 80 00 2C */	bge lbl_800467A0
/* 80046778 000423D8  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8004677C 000423DC  C0 62 83 B8 */	lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046780 000423E0  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80046784 000423E4  40 81 00 1C */	ble lbl_800467A0
/* 80046788 000423E8  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004678C 000423EC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80046790 000423F0  40 80 00 08 */	bge lbl_80046798
/* 80046794 000423F4  48 00 00 08 */	b lbl_8004679C
lbl_80046798:
/* 80046798 000423F8  FC 60 10 90 */	fmr f3, f2
lbl_8004679C:
/* 8004679C 000423FC  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_800467A0:
/* 800467A0 00042400  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 800467A4 00042404  C0 22 83 B4 */	lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 800467A8 00042408  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 800467AC 0004240C  40 80 00 28 */	bge lbl_800467D4
/* 800467B0 00042410  C0 62 83 B8 */	lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800467B4 00042414  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 800467B8 00042418  40 81 00 1C */	ble lbl_800467D4
/* 800467BC 0004241C  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800467C0 00042420  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800467C4 00042424  40 80 00 08 */	bge lbl_800467CC
/* 800467C8 00042428  48 00 00 08 */	b lbl_800467D0
lbl_800467CC:
/* 800467CC 0004242C  FC 60 08 90 */	fmr f3, f1
lbl_800467D0:
/* 800467D0 00042430  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_800467D4:
/* 800467D4 00042434  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 800467D8 00042438  C0 22 83 B4 */	lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 800467DC 0004243C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 800467E0 00042440  40 80 00 28 */	bge lbl_80046808
/* 800467E4 00042444  C0 62 83 B8 */	lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800467E8 00042448  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 800467EC 0004244C  40 81 00 1C */	ble lbl_80046808
/* 800467F0 00042450  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800467F4 00042454  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 800467F8 00042458  40 80 00 08 */	bge lbl_80046800
/* 800467FC 0004245C  48 00 00 08 */	b lbl_80046804
lbl_80046800:
/* 80046800 00042460  FC 60 08 90 */	fmr f3, f1
lbl_80046804:
/* 80046804 00042464  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_80046808:
/* 80046808 00042468  38 80 00 01 */	li r4, 1
/* 8004680C 0004246C  48 1A BE AD */	bl func_801F26B8
lbl_80046810:
/* 80046810 00042470  80 7E 00 00 */	lwz r3, 0(r30)
/* 80046814 00042474  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80046818 00042478  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8004681C 0004247C  60 00 00 01 */	ori r0, r0, 1
/* 80046820 00042480  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046824 00042484  90 03 01 04 */	stw r0, 0x104(r3)
/* 80046828 00042488  D0 03 01 08 */	stfs f0, 0x108(r3)
/* 8004682C 0004248C  80 7E 00 00 */	lwz r3, 0(r30)
/* 80046830 00042490  80 63 01 38 */	lwz r3, 0x138(r3)
/* 80046834 00042494  2C 03 00 00 */	cmpwi r3, 0
/* 80046838 00042498  41 82 00 10 */	beq lbl_80046848
/* 8004683C 0004249C  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80046840 000424A0  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80046844 000424A4  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_80046848:
/* 80046848 000424A8  39 61 00 70 */	addi r11, r1, 0x70
/* 8004684C 000424AC  48 18 09 29 */	bl _restgpr_27
/* 80046850 000424B0  80 01 00 74 */	lwz r0, 0x74(r1)
/* 80046854 000424B4  7C 08 03 A6 */	mtlr r0
/* 80046858 000424B8  38 21 00 70 */	addi r1, r1, 0x70
/* 8004685C 000424BC  4E 80 00 20 */	blr

.global func_80046860
func_80046860:
/* 80046860 000424C0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80046864 000424C4  7C 08 02 A6 */	mflr r0
/* 80046868 000424C8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004686C 000424CC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80046870 000424D0  3B E0 00 00 */	li r31, 0
/* 80046874 000424D4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80046878 000424D8  7C 7E 1B 78 */	mr r30, r3
/* 8004687C 000424DC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80046880 000424E0  3B A0 00 00 */	li r29, 0
lbl_80046884:
/* 80046884 000424E4  80 7E 01 2C */	lwz r3, 0x12c(r30)
/* 80046888 000424E8  2C 03 00 00 */	cmpwi r3, 0
/* 8004688C 000424EC  41 82 00 20 */	beq lbl_800468AC
/* 80046890 000424F0  41 82 00 18 */	beq lbl_800468A8
/* 80046894 000424F4  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80046898 000424F8  38 80 00 01 */	li r4, 1
/* 8004689C 000424FC  81 8C 00 08 */	lwz r12, 8(r12)
/* 800468A0 00042500  7D 89 03 A6 */	mtctr r12
/* 800468A4 00042504  4E 80 04 21 */	bctrl
lbl_800468A8:
/* 800468A8 00042508  93 FE 01 2C */	stw r31, 0x12c(r30)
lbl_800468AC:
/* 800468AC 0004250C  80 7E 01 3C */	lwz r3, 0x13c(r30)
/* 800468B0 00042510  2C 03 00 00 */	cmpwi r3, 0
/* 800468B4 00042514  41 82 00 20 */	beq lbl_800468D4
/* 800468B8 00042518  41 82 00 18 */	beq lbl_800468D0
/* 800468BC 0004251C  81 83 01 00 */	lwz r12, 0x100(r3)
/* 800468C0 00042520  38 80 00 01 */	li r4, 1
/* 800468C4 00042524  81 8C 00 08 */	lwz r12, 8(r12)
/* 800468C8 00042528  7D 89 03 A6 */	mtctr r12
/* 800468CC 0004252C  4E 80 04 21 */	bctrl
lbl_800468D0:
/* 800468D0 00042530  93 FE 01 3C */	stw r31, 0x13c(r30)
lbl_800468D4:
/* 800468D4 00042534  80 7E 01 4C */	lwz r3, 0x14c(r30)
/* 800468D8 00042538  2C 03 00 00 */	cmpwi r3, 0
/* 800468DC 0004253C  41 82 00 20 */	beq lbl_800468FC
/* 800468E0 00042540  41 82 00 18 */	beq lbl_800468F8
/* 800468E4 00042544  81 83 01 00 */	lwz r12, 0x100(r3)
/* 800468E8 00042548  38 80 00 01 */	li r4, 1
/* 800468EC 0004254C  81 8C 00 08 */	lwz r12, 8(r12)
/* 800468F0 00042550  7D 89 03 A6 */	mtctr r12
/* 800468F4 00042554  4E 80 04 21 */	bctrl
lbl_800468F8:
/* 800468F8 00042558  93 FE 01 4C */	stw r31, 0x14c(r30)
lbl_800468FC:
/* 800468FC 0004255C  3B BD 00 01 */	addi r29, r29, 1
/* 80046900 00042560  3B DE 00 04 */	addi r30, r30, 4
/* 80046904 00042564  2C 1D 00 04 */	cmpwi r29, 4
/* 80046908 00042568  41 80 FF 7C */	blt lbl_80046884
/* 8004690C 0004256C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80046910 00042570  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80046914 00042574  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80046918 00042578  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004691C 0004257C  7C 08 03 A6 */	mtlr r0
/* 80046920 00042580  38 21 00 20 */	addi r1, r1, 0x20
/* 80046924 00042584  4E 80 00 20 */	blr

.global func_80046928
func_80046928:
/* 80046928 00042588  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004692C 0004258C  7C 08 02 A6 */	mflr r0
/* 80046930 00042590  2C 05 00 00 */	cmpwi r5, 0
/* 80046934 00042594  90 01 00 14 */	stw r0, 0x14(r1)
/* 80046938 00042598  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004693C 0004259C  41 80 00 94 */	blt lbl_800469D0
/* 80046940 000425A0  2C 05 00 03 */	cmpwi r5, 3
/* 80046944 000425A4  40 81 00 08 */	ble lbl_8004694C
/* 80046948 000425A8  48 00 00 88 */	b lbl_800469D0
lbl_8004694C:
/* 8004694C 000425AC  2C 04 00 01 */	cmpwi r4, 1
/* 80046950 000425B0  41 82 00 30 */	beq lbl_80046980
/* 80046954 000425B4  40 80 00 10 */	bge lbl_80046964
/* 80046958 000425B8  2C 04 00 00 */	cmpwi r4, 0
/* 8004695C 000425BC  40 80 00 14 */	bge lbl_80046970
/* 80046960 000425C0  48 00 00 70 */	b lbl_800469D0
lbl_80046964:
/* 80046964 000425C4  2C 04 00 03 */	cmpwi r4, 3
/* 80046968 000425C8  40 80 00 68 */	bge lbl_800469D0
/* 8004696C 000425CC  48 00 00 24 */	b lbl_80046990
lbl_80046970:
/* 80046970 000425D0  54 A0 10 3A */	slwi r0, r5, 2
/* 80046974 000425D4  7C 63 02 14 */	add r3, r3, r0
/* 80046978 000425D8  3B E3 01 2C */	addi r31, r3, 0x12c
/* 8004697C 000425DC  48 00 00 28 */	b lbl_800469A4
lbl_80046980:
/* 80046980 000425E0  54 A0 10 3A */	slwi r0, r5, 2
/* 80046984 000425E4  7C 63 02 14 */	add r3, r3, r0
/* 80046988 000425E8  3B E3 01 3C */	addi r31, r3, 0x13c
/* 8004698C 000425EC  48 00 00 18 */	b lbl_800469A4
lbl_80046990:
/* 80046990 000425F0  54 A0 10 3A */	slwi r0, r5, 2
/* 80046994 000425F4  7C 63 02 14 */	add r3, r3, r0
/* 80046998 000425F8  3B E3 01 4C */	addi r31, r3, 0x14c
/* 8004699C 000425FC  48 00 00 08 */	b lbl_800469A4
/* 800469A0 00042600  48 00 00 30 */	b lbl_800469D0
lbl_800469A4:
/* 800469A4 00042604  80 7F 00 00 */	lwz r3, 0(r31)
/* 800469A8 00042608  2C 03 00 00 */	cmpwi r3, 0
/* 800469AC 0004260C  41 82 00 24 */	beq lbl_800469D0
/* 800469B0 00042610  41 82 00 18 */	beq lbl_800469C8
/* 800469B4 00042614  81 83 01 00 */	lwz r12, 0x100(r3)
/* 800469B8 00042618  38 80 00 01 */	li r4, 1
/* 800469BC 0004261C  81 8C 00 08 */	lwz r12, 8(r12)
/* 800469C0 00042620  7D 89 03 A6 */	mtctr r12
/* 800469C4 00042624  4E 80 04 21 */	bctrl
lbl_800469C8:
/* 800469C8 00042628  38 00 00 00 */	li r0, 0
/* 800469CC 0004262C  90 1F 00 00 */	stw r0, 0(r31)
lbl_800469D0:
/* 800469D0 00042630  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800469D4 00042634  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800469D8 00042638  7C 08 03 A6 */	mtlr r0
/* 800469DC 0004263C  38 21 00 10 */	addi r1, r1, 0x10
/* 800469E0 00042640  4E 80 00 20 */	blr

.global func_800469E4
func_800469E4:
/* 800469E4 00042644  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 800469E8 00042648  7C 08 02 A6 */	mflr r0
/* 800469EC 0004264C  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 800469F0 00042650  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 800469F4 00042654  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 800469F8 00042658  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 800469FC 0004265C  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 80046A00 00042660  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 80046A04 00042664  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 80046A08 00042668  DB 81 00 60 */	stfd f28, 0x60(r1)
/* 80046A0C 0004266C  F3 81 00 68 */	psq_st f28, 104(r1), 0, qr0
/* 80046A10 00042670  39 61 00 60 */	addi r11, r1, 0x60
/* 80046A14 00042674  48 18 07 11 */	bl _savegpr_26
/* 80046A18 00042678  C3 E2 83 B8 */	lfs f31, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046A1C 0004267C  7C 7C 1B 78 */	mr r28, r3
/* 80046A20 00042680  C3 C2 83 B4 */	lfs f30, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046A24 00042684  3B C0 00 00 */	li r30, 0
/* 80046A28 00042688  C3 A2 83 A8 */	lfs f29, lbl_806409A8-_SDA2_BASE_(r2)
/* 80046A2C 0004268C  C3 82 83 88 */	lfs f28, lbl_80640988-_SDA2_BASE_(r2)
lbl_80046A30:
/* 80046A30 00042690  57 DF 06 3E */	clrlwi r31, r30, 0x18
/* 80046A34 00042694  3B A0 00 00 */	li r29, 0
lbl_80046A38:
/* 80046A38 00042698  2C 1F 00 00 */	cmpwi r31, 0
/* 80046A3C 0004269C  40 82 00 14 */	bne lbl_80046A50
/* 80046A40 000426A0  57 A0 15 BA */	rlwinm r0, r29, 2, 0x16, 0x1d
/* 80046A44 000426A4  7C 7C 02 14 */	add r3, r28, r0
/* 80046A48 000426A8  3B 63 01 2C */	addi r27, r3, 0x12c
/* 80046A4C 000426AC  48 00 00 30 */	b lbl_80046A7C
lbl_80046A50:
/* 80046A50 000426B0  28 1F 00 01 */	cmplwi r31, 1
/* 80046A54 000426B4  40 82 00 14 */	bne lbl_80046A68
/* 80046A58 000426B8  57 A0 15 BA */	rlwinm r0, r29, 2, 0x16, 0x1d
/* 80046A5C 000426BC  7C 7C 02 14 */	add r3, r28, r0
/* 80046A60 000426C0  3B 63 01 3C */	addi r27, r3, 0x13c
/* 80046A64 000426C4  48 00 00 18 */	b lbl_80046A7C
lbl_80046A68:
/* 80046A68 000426C8  28 1F 00 02 */	cmplwi r31, 2
/* 80046A6C 000426CC  40 82 01 D0 */	bne lbl_80046C3C
/* 80046A70 000426D0  57 A0 15 BA */	rlwinm r0, r29, 2, 0x16, 0x1d
/* 80046A74 000426D4  7C 7C 02 14 */	add r3, r28, r0
/* 80046A78 000426D8  3B 63 01 4C */	addi r27, r3, 0x14c
lbl_80046A7C:
/* 80046A7C 000426DC  80 1B 00 00 */	lwz r0, 0(r27)
/* 80046A80 000426E0  2C 00 00 00 */	cmpwi r0, 0
/* 80046A84 000426E4  41 82 01 B8 */	beq lbl_80046C3C
/* 80046A88 000426E8  7F 83 E3 78 */	mr r3, r28
/* 80046A8C 000426EC  57 A4 06 3E */	clrlwi r4, r29, 0x18
/* 80046A90 000426F0  38 A0 00 00 */	li r5, 0
/* 80046A94 000426F4  4B FF F0 6D */	bl func_80045B00
/* 80046A98 000426F8  7C 7A 1B 78 */	mr r26, r3
/* 80046A9C 000426FC  7F 83 E3 78 */	mr r3, r28
/* 80046AA0 00042700  57 A4 06 3E */	clrlwi r4, r29, 0x18
/* 80046AA4 00042704  38 A1 00 38 */	addi r5, r1, 0x38
/* 80046AA8 00042708  38 C1 00 08 */	addi r6, r1, 8
/* 80046AAC 0004270C  38 E0 00 00 */	li r7, 0
/* 80046AB0 00042710  4B FF F1 69 */	bl func_80045C18
/* 80046AB4 00042714  57 A0 07 FF */	clrlwi. r0, r29, 0x1f
/* 80046AB8 00042718  D3 81 00 08 */	stfs f28, 8(r1)
/* 80046ABC 0004271C  41 82 00 08 */	beq lbl_80046AC4
/* 80046AC0 00042720  D3 A1 00 08 */	stfs f29, 8(r1)
lbl_80046AC4:
/* 80046AC4 00042724  80 7B 00 00 */	lwz r3, 0(r27)
/* 80046AC8 00042728  38 80 00 01 */	li r4, 1
/* 80046ACC 0004272C  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 80046AD0 00042730  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80046AD4 00042734  C0 01 00 3C */	lfs f0, 0x3c(r1)
/* 80046AD8 00042738  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 80046ADC 0004273C  C0 01 00 40 */	lfs f0, 0x40(r1)
/* 80046AE0 00042740  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80046AE4 00042744  48 1A BB D5 */	bl func_801F26B8
/* 80046AE8 00042748  C0 01 00 08 */	lfs f0, 8(r1)
/* 80046AEC 0004274C  38 61 00 28 */	addi r3, r1, 0x28
/* 80046AF0 00042750  D3 81 00 18 */	stfs f28, 0x18(r1)
/* 80046AF4 00042754  38 81 00 18 */	addi r4, r1, 0x18
/* 80046AF8 00042758  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80046AFC 0004275C  D3 81 00 20 */	stfs f28, 0x20(r1)
/* 80046B00 00042760  48 1D CB C1 */	bl func_802236C0
/* 80046B04 00042764  80 7B 00 00 */	lwz r3, 0(r27)
/* 80046B08 00042768  38 80 00 01 */	li r4, 1
/* 80046B0C 0004276C  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 80046B10 00042770  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80046B14 00042774  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 80046B18 00042778  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80046B1C 0004277C  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 80046B20 00042780  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80046B24 00042784  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 80046B28 00042788  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80046B2C 0004278C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80046B30 00042790  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80046B34 00042794  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80046B38 00042798  48 1A BB 81 */	bl func_801F26B8
/* 80046B3C 0004279C  2C 1A 00 00 */	cmpwi r26, 0
/* 80046B40 000427A0  41 82 00 18 */	beq lbl_80046B58
/* 80046B44 000427A4  7F 43 D3 78 */	mr r3, r26
/* 80046B48 000427A8  4B FF 2B 8D */	bl func_800396D4
/* 80046B4C 000427AC  C0 22 83 8C */	lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046B50 000427B0  48 00 79 4D */	bl func_8004E49C
/* 80046B54 000427B4  48 00 00 08 */	b lbl_80046B5C
lbl_80046B58:
/* 80046B58 000427B8  C0 22 83 8C */	lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
lbl_80046B5C:
/* 80046B5C 000427BC  FC 00 08 18 */	frsp f0, f1
/* 80046B60 000427C0  80 7B 00 00 */	lwz r3, 0(r27)
/* 80046B64 000427C4  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80046B68 000427C8  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80046B6C 000427CC  FC 00 F0 40 */	fcmpo cr0, f0, f30
/* 80046B70 000427D0  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80046B74 000427D4  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 80046B78 000427D8  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 80046B7C 000427DC  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80046B80 000427E0  40 80 00 28 */	bge lbl_80046BA8
/* 80046B84 000427E4  C0 03 00 48 */	lfs f0, 0x48(r3)
/* 80046B88 000427E8  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80046B8C 000427EC  40 81 00 1C */	ble lbl_80046BA8
/* 80046B90 000427F0  FC 00 E0 40 */	fcmpo cr0, f0, f28
/* 80046B94 000427F4  40 80 00 0C */	bge lbl_80046BA0
/* 80046B98 000427F8  FC 00 F8 90 */	fmr f0, f31
/* 80046B9C 000427FC  48 00 00 08 */	b lbl_80046BA4
lbl_80046BA0:
/* 80046BA0 00042800  FC 00 F0 90 */	fmr f0, f30
lbl_80046BA4:
/* 80046BA4 00042804  D0 03 00 48 */	stfs f0, 0x48(r3)
lbl_80046BA8:
/* 80046BA8 00042808  C0 03 00 4C */	lfs f0, 0x4c(r3)
/* 80046BAC 0004280C  FC 00 F0 40 */	fcmpo cr0, f0, f30
/* 80046BB0 00042810  40 80 00 24 */	bge lbl_80046BD4
/* 80046BB4 00042814  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80046BB8 00042818  40 81 00 1C */	ble lbl_80046BD4
/* 80046BBC 0004281C  FC 00 E0 40 */	fcmpo cr0, f0, f28
/* 80046BC0 00042820  40 80 00 0C */	bge lbl_80046BCC
/* 80046BC4 00042824  FC 00 F8 90 */	fmr f0, f31
/* 80046BC8 00042828  48 00 00 08 */	b lbl_80046BD0
lbl_80046BCC:
/* 80046BCC 0004282C  FC 00 F0 90 */	fmr f0, f30
lbl_80046BD0:
/* 80046BD0 00042830  D0 03 00 4C */	stfs f0, 0x4c(r3)
lbl_80046BD4:
/* 80046BD4 00042834  C0 03 00 50 */	lfs f0, 0x50(r3)
/* 80046BD8 00042838  FC 00 F0 40 */	fcmpo cr0, f0, f30
/* 80046BDC 0004283C  40 80 00 24 */	bge lbl_80046C00
/* 80046BE0 00042840  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80046BE4 00042844  40 81 00 1C */	ble lbl_80046C00
/* 80046BE8 00042848  FC 00 E0 40 */	fcmpo cr0, f0, f28
/* 80046BEC 0004284C  40 80 00 0C */	bge lbl_80046BF8
/* 80046BF0 00042850  FC 00 F8 90 */	fmr f0, f31
/* 80046BF4 00042854  48 00 00 08 */	b lbl_80046BFC
lbl_80046BF8:
/* 80046BF8 00042858  FC 00 F0 90 */	fmr f0, f30
lbl_80046BFC:
/* 80046BFC 0004285C  D0 03 00 50 */	stfs f0, 0x50(r3)
lbl_80046C00:
/* 80046C00 00042860  38 80 00 01 */	li r4, 1
/* 80046C04 00042864  48 1A BA B5 */	bl func_801F26B8
/* 80046C08 00042868  80 7B 00 00 */	lwz r3, 0(r27)
/* 80046C0C 0004286C  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80046C10 00042870  60 00 00 01 */	ori r0, r0, 1
/* 80046C14 00042874  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046C18 00042878  90 03 01 04 */	stw r0, 0x104(r3)
/* 80046C1C 0004287C  D3 83 01 08 */	stfs f28, 0x108(r3)
/* 80046C20 00042880  80 7B 00 00 */	lwz r3, 0(r27)
/* 80046C24 00042884  80 63 01 38 */	lwz r3, 0x138(r3)
/* 80046C28 00042888  2C 03 00 00 */	cmpwi r3, 0
/* 80046C2C 0004288C  41 82 00 10 */	beq lbl_80046C3C
/* 80046C30 00042890  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80046C34 00042894  60 00 00 08 */	ori r0, r0, 8
/* 80046C38 00042898  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_80046C3C:
/* 80046C3C 0004289C  3B BD 00 01 */	addi r29, r29, 1
/* 80046C40 000428A0  28 1D 00 04 */	cmplwi r29, 4
/* 80046C44 000428A4  41 80 FD F4 */	blt lbl_80046A38
/* 80046C48 000428A8  3B DE 00 01 */	addi r30, r30, 1
/* 80046C4C 000428AC  28 1E 00 03 */	cmplwi r30, 3
/* 80046C50 000428B0  41 80 FD E0 */	blt lbl_80046A30
/* 80046C54 000428B4  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 80046C58 000428B8  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 80046C5C 000428BC  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 80046C60 000428C0  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 80046C64 000428C4  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 80046C68 000428C8  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 80046C6C 000428CC  E3 81 00 68 */	psq_l f28, 104(r1), 0, qr0
/* 80046C70 000428D0  39 61 00 60 */	addi r11, r1, 0x60
/* 80046C74 000428D4  CB 81 00 60 */	lfd f28, 0x60(r1)
/* 80046C78 000428D8  48 18 04 F9 */	bl _restgpr_26
/* 80046C7C 000428DC  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80046C80 000428E0  7C 08 03 A6 */	mtlr r0
/* 80046C84 000428E4  38 21 00 A0 */	addi r1, r1, 0xa0
/* 80046C88 000428E8  4E 80 00 20 */	blr

.global func_80046C8C
func_80046C8C:
/* 80046C8C 000428EC  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 80046C90 000428F0  7C 08 02 A6 */	mflr r0
/* 80046C94 000428F4  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 80046C98 000428F8  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 80046C9C 000428FC  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 80046CA0 00042900  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 80046CA4 00042904  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 80046CA8 00042908  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 80046CAC 0004290C  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 80046CB0 00042910  DB 81 00 60 */	stfd f28, 0x60(r1)
/* 80046CB4 00042914  F3 81 00 68 */	psq_st f28, 104(r1), 0, qr0
/* 80046CB8 00042918  39 61 00 60 */	addi r11, r1, 0x60
/* 80046CBC 0004291C  48 18 04 69 */	bl _savegpr_26
/* 80046CC0 00042920  2C 04 00 00 */	cmpwi r4, 0
/* 80046CC4 00042924  7C 7B 1B 78 */	mr r27, r3
/* 80046CC8 00042928  7C 9A 23 78 */	mr r26, r4
/* 80046CCC 0004292C  41 80 01 FC */	blt lbl_80046EC8
/* 80046CD0 00042930  2C 04 00 03 */	cmpwi r4, 3
/* 80046CD4 00042934  40 81 00 08 */	ble lbl_80046CDC
/* 80046CD8 00042938  48 00 01 F0 */	b lbl_80046EC8
lbl_80046CDC:
/* 80046CDC 0004293C  38 A0 00 00 */	li r5, 0
/* 80046CE0 00042940  4B FF EE 21 */	bl func_80045B00
/* 80046CE4 00042944  2C 03 00 00 */	cmpwi r3, 0
/* 80046CE8 00042948  7C 7F 1B 78 */	mr r31, r3
/* 80046CEC 0004294C  41 82 01 DC */	beq lbl_80046EC8
/* 80046CF0 00042950  4B FF 29 E5 */	bl func_800396D4
/* 80046CF4 00042954  C0 22 83 8C */	lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046CF8 00042958  48 00 77 A5 */	bl func_8004E49C
/* 80046CFC 0004295C  57 40 10 3A */	slwi r0, r26, 2
/* 80046D00 00042960  FF 80 08 90 */	fmr f28, f1
/* 80046D04 00042964  7C 7B 02 14 */	add r3, r27, r0
/* 80046D08 00042968  C3 C2 83 B8 */	lfs f30, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046D0C 0004296C  C3 A2 83 B4 */	lfs f29, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046D10 00042970  3B A3 01 2C */	addi r29, r3, 0x12c
/* 80046D14 00042974  C3 E2 83 88 */	lfs f31, lbl_80640988-_SDA2_BASE_(r2)
/* 80046D18 00042978  3B 83 01 3C */	addi r28, r3, 0x13c
/* 80046D1C 0004297C  3B 63 01 4C */	addi r27, r3, 0x14c
/* 80046D20 00042980  3B C0 00 00 */	li r30, 0
lbl_80046D24:
/* 80046D24 00042984  57 C0 06 3F */	clrlwi. r0, r30, 0x18
/* 80046D28 00042988  40 82 00 0C */	bne lbl_80046D34
/* 80046D2C 0004298C  7F BA EB 78 */	mr r26, r29
/* 80046D30 00042990  48 00 00 20 */	b lbl_80046D50
lbl_80046D34:
/* 80046D34 00042994  28 00 00 01 */	cmplwi r0, 1
/* 80046D38 00042998  40 82 00 0C */	bne lbl_80046D44
/* 80046D3C 0004299C  7F 9A E3 78 */	mr r26, r28
/* 80046D40 000429A0  48 00 00 10 */	b lbl_80046D50
lbl_80046D44:
/* 80046D44 000429A4  28 00 00 02 */	cmplwi r0, 2
/* 80046D48 000429A8  40 82 01 74 */	bne lbl_80046EBC
/* 80046D4C 000429AC  7F 7A DB 78 */	mr r26, r27
lbl_80046D50:
/* 80046D50 000429B0  80 1A 00 00 */	lwz r0, 0(r26)
/* 80046D54 000429B4  2C 00 00 00 */	cmpwi r0, 0
/* 80046D58 000429B8  41 82 01 64 */	beq lbl_80046EBC
/* 80046D5C 000429BC  7F E4 FB 78 */	mr r4, r31
/* 80046D60 000429C0  38 61 00 30 */	addi r3, r1, 0x30
/* 80046D64 000429C4  4B FF 1A 7D */	bl func_800387E0
/* 80046D68 000429C8  80 7A 00 00 */	lwz r3, 0(r26)
/* 80046D6C 000429CC  38 80 00 01 */	li r4, 1
/* 80046D70 000429D0  C0 01 00 30 */	lfs f0, 0x30(r1)
/* 80046D74 000429D4  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80046D78 000429D8  C0 01 00 34 */	lfs f0, 0x34(r1)
/* 80046D7C 000429DC  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 80046D80 000429E0  C0 01 00 38 */	lfs f0, 0x38(r1)
/* 80046D84 000429E4  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80046D88 000429E8  48 1A B9 31 */	bl func_801F26B8
/* 80046D8C 000429EC  7F E4 FB 78 */	mr r4, r31
/* 80046D90 000429F0  38 61 00 14 */	addi r3, r1, 0x14
/* 80046D94 000429F4  4B FF 1D 01 */	bl func_80038A94
/* 80046D98 000429F8  38 61 00 20 */	addi r3, r1, 0x20
/* 80046D9C 000429FC  38 81 00 14 */	addi r4, r1, 0x14
/* 80046DA0 00042A00  48 1D C9 21 */	bl func_802236C0
/* 80046DA4 00042A04  80 7A 00 00 */	lwz r3, 0(r26)
/* 80046DA8 00042A08  38 80 00 01 */	li r4, 1
/* 80046DAC 00042A0C  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80046DB0 00042A10  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80046DB4 00042A14  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 80046DB8 00042A18  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80046DBC 00042A1C  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 80046DC0 00042A20  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80046DC4 00042A24  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 80046DC8 00042A28  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80046DCC 00042A2C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80046DD0 00042A30  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80046DD4 00042A34  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80046DD8 00042A38  48 1A B8 E1 */	bl func_801F26B8
/* 80046DDC 00042A3C  FC 00 E0 18 */	frsp f0, f28
/* 80046DE0 00042A40  80 7A 00 00 */	lwz r3, 0(r26)
/* 80046DE4 00042A44  D3 81 00 08 */	stfs f28, 8(r1)
/* 80046DE8 00042A48  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80046DEC 00042A4C  FC 00 E8 40 */	fcmpo cr0, f0, f29
/* 80046DF0 00042A50  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80046DF4 00042A54  D3 81 00 0C */	stfs f28, 0xc(r1)
/* 80046DF8 00042A58  D3 81 00 10 */	stfs f28, 0x10(r1)
/* 80046DFC 00042A5C  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80046E00 00042A60  40 80 00 28 */	bge lbl_80046E28
/* 80046E04 00042A64  C0 03 00 48 */	lfs f0, 0x48(r3)
/* 80046E08 00042A68  FC 00 F0 40 */	fcmpo cr0, f0, f30
/* 80046E0C 00042A6C  40 81 00 1C */	ble lbl_80046E28
/* 80046E10 00042A70  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80046E14 00042A74  40 80 00 0C */	bge lbl_80046E20
/* 80046E18 00042A78  FC 00 F0 90 */	fmr f0, f30
/* 80046E1C 00042A7C  48 00 00 08 */	b lbl_80046E24
lbl_80046E20:
/* 80046E20 00042A80  FC 00 E8 90 */	fmr f0, f29
lbl_80046E24:
/* 80046E24 00042A84  D0 03 00 48 */	stfs f0, 0x48(r3)
lbl_80046E28:
/* 80046E28 00042A88  C0 03 00 4C */	lfs f0, 0x4c(r3)
/* 80046E2C 00042A8C  FC 00 E8 40 */	fcmpo cr0, f0, f29
/* 80046E30 00042A90  40 80 00 24 */	bge lbl_80046E54
/* 80046E34 00042A94  FC 00 F0 40 */	fcmpo cr0, f0, f30
/* 80046E38 00042A98  40 81 00 1C */	ble lbl_80046E54
/* 80046E3C 00042A9C  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80046E40 00042AA0  40 80 00 0C */	bge lbl_80046E4C
/* 80046E44 00042AA4  FC 00 F0 90 */	fmr f0, f30
/* 80046E48 00042AA8  48 00 00 08 */	b lbl_80046E50
lbl_80046E4C:
/* 80046E4C 00042AAC  FC 00 E8 90 */	fmr f0, f29
lbl_80046E50:
/* 80046E50 00042AB0  D0 03 00 4C */	stfs f0, 0x4c(r3)
lbl_80046E54:
/* 80046E54 00042AB4  C0 03 00 50 */	lfs f0, 0x50(r3)
/* 80046E58 00042AB8  FC 00 E8 40 */	fcmpo cr0, f0, f29
/* 80046E5C 00042ABC  40 80 00 24 */	bge lbl_80046E80
/* 80046E60 00042AC0  FC 00 F0 40 */	fcmpo cr0, f0, f30
/* 80046E64 00042AC4  40 81 00 1C */	ble lbl_80046E80
/* 80046E68 00042AC8  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80046E6C 00042ACC  40 80 00 0C */	bge lbl_80046E78
/* 80046E70 00042AD0  FC 00 F0 90 */	fmr f0, f30
/* 80046E74 00042AD4  48 00 00 08 */	b lbl_80046E7C
lbl_80046E78:
/* 80046E78 00042AD8  FC 00 E8 90 */	fmr f0, f29
lbl_80046E7C:
/* 80046E7C 00042ADC  D0 03 00 50 */	stfs f0, 0x50(r3)
lbl_80046E80:
/* 80046E80 00042AE0  38 80 00 01 */	li r4, 1
/* 80046E84 00042AE4  48 1A B8 35 */	bl func_801F26B8
/* 80046E88 00042AE8  80 7A 00 00 */	lwz r3, 0(r26)
/* 80046E8C 00042AEC  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80046E90 00042AF0  60 00 00 01 */	ori r0, r0, 1
/* 80046E94 00042AF4  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046E98 00042AF8  90 03 01 04 */	stw r0, 0x104(r3)
/* 80046E9C 00042AFC  D3 E3 01 08 */	stfs f31, 0x108(r3)
/* 80046EA0 00042B00  80 7A 00 00 */	lwz r3, 0(r26)
/* 80046EA4 00042B04  80 63 01 38 */	lwz r3, 0x138(r3)
/* 80046EA8 00042B08  2C 03 00 00 */	cmpwi r3, 0
/* 80046EAC 00042B0C  41 82 00 10 */	beq lbl_80046EBC
/* 80046EB0 00042B10  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80046EB4 00042B14  60 00 00 08 */	ori r0, r0, 8
/* 80046EB8 00042B18  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_80046EBC:
/* 80046EBC 00042B1C  3B DE 00 01 */	addi r30, r30, 1
/* 80046EC0 00042B20  28 1E 00 03 */	cmplwi r30, 3
/* 80046EC4 00042B24  41 80 FE 60 */	blt lbl_80046D24
lbl_80046EC8:
/* 80046EC8 00042B28  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 80046ECC 00042B2C  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 80046ED0 00042B30  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 80046ED4 00042B34  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 80046ED8 00042B38  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 80046EDC 00042B3C  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 80046EE0 00042B40  E3 81 00 68 */	psq_l f28, 104(r1), 0, qr0
/* 80046EE4 00042B44  39 61 00 60 */	addi r11, r1, 0x60
/* 80046EE8 00042B48  CB 81 00 60 */	lfd f28, 0x60(r1)
/* 80046EEC 00042B4C  48 18 02 85 */	bl _restgpr_26
/* 80046EF0 00042B50  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80046EF4 00042B54  7C 08 03 A6 */	mtlr r0
/* 80046EF8 00042B58  38 21 00 A0 */	addi r1, r1, 0xa0
/* 80046EFC 00042B5C  4E 80 00 20 */	blr

.global func_80046F00
func_80046F00:
/* 80046F00 00042B60  2C 04 00 00 */	cmpwi r4, 0
/* 80046F04 00042B64  4D 80 00 20 */	bltlr
/* 80046F08 00042B68  2C 04 00 03 */	cmpwi r4, 3
/* 80046F0C 00042B6C  40 81 00 08 */	ble lbl_80046F14
/* 80046F10 00042B70  4E 80 00 20 */	blr
lbl_80046F14:
/* 80046F14 00042B74  54 84 10 3A */	slwi r4, r4, 2
/* 80046F18 00042B78  38 00 00 03 */	li r0, 3
/* 80046F1C 00042B7C  7C 63 22 14 */	add r3, r3, r4
/* 80046F20 00042B80  39 00 00 00 */	li r8, 0
/* 80046F24 00042B84  38 83 01 2C */	addi r4, r3, 0x12c
/* 80046F28 00042B88  38 C3 01 3C */	addi r6, r3, 0x13c
/* 80046F2C 00042B8C  38 63 01 4C */	addi r3, r3, 0x14c
/* 80046F30 00042B90  7C 09 03 A6 */	mtctr r0
lbl_80046F34:
/* 80046F34 00042B94  55 00 06 3F */	clrlwi. r0, r8, 0x18
/* 80046F38 00042B98  40 82 00 0C */	bne lbl_80046F44
/* 80046F3C 00042B9C  7C 87 23 78 */	mr r7, r4
/* 80046F40 00042BA0  48 00 00 20 */	b lbl_80046F60
lbl_80046F44:
/* 80046F44 00042BA4  28 00 00 01 */	cmplwi r0, 1
/* 80046F48 00042BA8  40 82 00 0C */	bne lbl_80046F54
/* 80046F4C 00042BAC  7C C7 33 78 */	mr r7, r6
/* 80046F50 00042BB0  48 00 00 10 */	b lbl_80046F60
lbl_80046F54:
/* 80046F54 00042BB4  28 00 00 02 */	cmplwi r0, 2
/* 80046F58 00042BB8  40 82 00 38 */	bne lbl_80046F90
/* 80046F5C 00042BBC  7C 67 1B 78 */	mr r7, r3
lbl_80046F60:
/* 80046F60 00042BC0  80 E7 00 00 */	lwz r7, 0(r7)
/* 80046F64 00042BC4  2C 07 00 00 */	cmpwi r7, 0
/* 80046F68 00042BC8  41 82 00 28 */	beq lbl_80046F90
/* 80046F6C 00042BCC  2C 05 00 00 */	cmpwi r5, 0
/* 80046F70 00042BD0  41 82 00 14 */	beq lbl_80046F84
/* 80046F74 00042BD4  A0 07 00 10 */	lhz r0, 0x10(r7)
/* 80046F78 00042BD8  60 00 00 02 */	ori r0, r0, 2
/* 80046F7C 00042BDC  B0 07 00 10 */	sth r0, 0x10(r7)
/* 80046F80 00042BE0  48 00 00 10 */	b lbl_80046F90
lbl_80046F84:
/* 80046F84 00042BE4  A0 07 00 10 */	lhz r0, 0x10(r7)
/* 80046F88 00042BE8  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80046F8C 00042BEC  B0 07 00 10 */	sth r0, 0x10(r7)
lbl_80046F90:
/* 80046F90 00042BF0  39 08 00 01 */	addi r8, r8, 1
/* 80046F94 00042BF4  42 00 FF A0 */	bdnz lbl_80046F34
/* 80046F98 00042BF8  4E 80 00 20 */	blr

.global func_80046F9C
func_80046F9C:
/* 80046F9C 00042BFC  39 00 00 00 */	li r8, 0
/* 80046FA0 00042C00  38 00 00 02 */	li r0, 2
lbl_80046FA4:
/* 80046FA4 00042C04  55 06 06 3E */	clrlwi r6, r8, 0x18
/* 80046FA8 00042C08  39 20 00 00 */	li r9, 0
/* 80046FAC 00042C0C  7C 09 03 A6 */	mtctr r0
lbl_80046FB0:
/* 80046FB0 00042C10  2C 06 00 00 */	cmpwi r6, 0
/* 80046FB4 00042C14  40 82 00 14 */	bne lbl_80046FC8
/* 80046FB8 00042C18  55 25 15 BA */	rlwinm r5, r9, 2, 0x16, 0x1d
/* 80046FBC 00042C1C  7C A3 2A 14 */	add r5, r3, r5
/* 80046FC0 00042C20  38 A5 01 2C */	addi r5, r5, 0x12c
/* 80046FC4 00042C24  48 00 00 30 */	b lbl_80046FF4
lbl_80046FC8:
/* 80046FC8 00042C28  28 06 00 01 */	cmplwi r6, 1
/* 80046FCC 00042C2C  40 82 00 14 */	bne lbl_80046FE0
/* 80046FD0 00042C30  55 25 15 BA */	rlwinm r5, r9, 2, 0x16, 0x1d
/* 80046FD4 00042C34  7C A3 2A 14 */	add r5, r3, r5
/* 80046FD8 00042C38  38 A5 01 3C */	addi r5, r5, 0x13c
/* 80046FDC 00042C3C  48 00 00 18 */	b lbl_80046FF4
lbl_80046FE0:
/* 80046FE0 00042C40  28 06 00 02 */	cmplwi r6, 2
/* 80046FE4 00042C44  40 82 00 40 */	bne lbl_80047024
/* 80046FE8 00042C48  55 25 15 BA */	rlwinm r5, r9, 2, 0x16, 0x1d
/* 80046FEC 00042C4C  7C A3 2A 14 */	add r5, r3, r5
/* 80046FF0 00042C50  38 A5 01 4C */	addi r5, r5, 0x14c
lbl_80046FF4:
/* 80046FF4 00042C54  80 E5 00 00 */	lwz r7, 0(r5)
/* 80046FF8 00042C58  2C 07 00 00 */	cmpwi r7, 0
/* 80046FFC 00042C5C  41 82 00 28 */	beq lbl_80047024
/* 80047000 00042C60  2C 04 00 00 */	cmpwi r4, 0
/* 80047004 00042C64  41 82 00 14 */	beq lbl_80047018
/* 80047008 00042C68  A0 A7 00 10 */	lhz r5, 0x10(r7)
/* 8004700C 00042C6C  60 A5 00 02 */	ori r5, r5, 2
/* 80047010 00042C70  B0 A7 00 10 */	sth r5, 0x10(r7)
/* 80047014 00042C74  48 00 00 10 */	b lbl_80047024
lbl_80047018:
/* 80047018 00042C78  A0 A7 00 10 */	lhz r5, 0x10(r7)
/* 8004701C 00042C7C  54 A5 07 FA */	rlwinm r5, r5, 0, 0x1f, 0x1d
/* 80047020 00042C80  B0 A7 00 10 */	sth r5, 0x10(r7)
lbl_80047024:
/* 80047024 00042C84  2C 06 00 00 */	cmpwi r6, 0
/* 80047028 00042C88  39 29 00 01 */	addi r9, r9, 1
/* 8004702C 00042C8C  40 82 00 14 */	bne lbl_80047040
/* 80047030 00042C90  55 25 15 BA */	rlwinm r5, r9, 2, 0x16, 0x1d
/* 80047034 00042C94  7C A3 2A 14 */	add r5, r3, r5
/* 80047038 00042C98  38 A5 01 2C */	addi r5, r5, 0x12c
/* 8004703C 00042C9C  48 00 00 30 */	b lbl_8004706C
lbl_80047040:
/* 80047040 00042CA0  28 06 00 01 */	cmplwi r6, 1
/* 80047044 00042CA4  40 82 00 14 */	bne lbl_80047058
/* 80047048 00042CA8  55 25 15 BA */	rlwinm r5, r9, 2, 0x16, 0x1d
/* 8004704C 00042CAC  7C A3 2A 14 */	add r5, r3, r5
/* 80047050 00042CB0  38 A5 01 3C */	addi r5, r5, 0x13c
/* 80047054 00042CB4  48 00 00 18 */	b lbl_8004706C
lbl_80047058:
/* 80047058 00042CB8  28 06 00 02 */	cmplwi r6, 2
/* 8004705C 00042CBC  40 82 00 40 */	bne lbl_8004709C
/* 80047060 00042CC0  55 25 15 BA */	rlwinm r5, r9, 2, 0x16, 0x1d
/* 80047064 00042CC4  7C A3 2A 14 */	add r5, r3, r5
/* 80047068 00042CC8  38 A5 01 4C */	addi r5, r5, 0x14c
lbl_8004706C:
/* 8004706C 00042CCC  80 E5 00 00 */	lwz r7, 0(r5)
/* 80047070 00042CD0  2C 07 00 00 */	cmpwi r7, 0
/* 80047074 00042CD4  41 82 00 28 */	beq lbl_8004709C
/* 80047078 00042CD8  2C 04 00 00 */	cmpwi r4, 0
/* 8004707C 00042CDC  41 82 00 14 */	beq lbl_80047090
/* 80047080 00042CE0  A0 A7 00 10 */	lhz r5, 0x10(r7)
/* 80047084 00042CE4  60 A5 00 02 */	ori r5, r5, 2
/* 80047088 00042CE8  B0 A7 00 10 */	sth r5, 0x10(r7)
/* 8004708C 00042CEC  48 00 00 10 */	b lbl_8004709C
lbl_80047090:
/* 80047090 00042CF0  A0 A7 00 10 */	lhz r5, 0x10(r7)
/* 80047094 00042CF4  54 A5 07 FA */	rlwinm r5, r5, 0, 0x1f, 0x1d
/* 80047098 00042CF8  B0 A7 00 10 */	sth r5, 0x10(r7)
lbl_8004709C:
/* 8004709C 00042CFC  39 29 00 01 */	addi r9, r9, 1
/* 800470A0 00042D00  42 00 FF 10 */	bdnz lbl_80046FB0
/* 800470A4 00042D04  39 08 00 01 */	addi r8, r8, 1
/* 800470A8 00042D08  28 08 00 03 */	cmplwi r8, 3
/* 800470AC 00042D0C  41 80 FE F8 */	blt lbl_80046FA4
/* 800470B0 00042D10  4E 80 00 20 */	blr

.global func_800470B4
func_800470B4:
/* 800470B4 00042D14  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800470B8 00042D18  7C 08 02 A6 */	mflr r0
/* 800470BC 00042D1C  90 01 00 44 */	stw r0, 0x44(r1)
/* 800470C0 00042D20  39 61 00 40 */	addi r11, r1, 0x40
/* 800470C4 00042D24  48 18 00 65 */	bl _savegpr_27
/* 800470C8 00042D28  88 A3 01 28 */	lbz r5, 0x128(r3)
/* 800470CC 00042D2C  54 80 06 3E */	clrlwi r0, r4, 0x18
/* 800470D0 00042D30  7C 7F 1B 78 */	mr r31, r3
/* 800470D4 00042D34  7C 9B 23 78 */	mr r27, r4
/* 800470D8 00042D38  7C 05 00 40 */	cmplw r5, r0
/* 800470DC 00042D3C  41 82 03 78 */	beq lbl_80047454
/* 800470E0 00042D40  98 83 01 28 */	stb r4, 0x128(r3)
/* 800470E4 00042D44  7F FD FB 78 */	mr r29, r31
/* 800470E8 00042D48  3B 80 00 00 */	li r28, 0
/* 800470EC 00042D4C  3B C0 00 00 */	li r30, 0
lbl_800470F0:
/* 800470F0 00042D50  80 7D 01 5C */	lwz r3, 0x15c(r29)
/* 800470F4 00042D54  2C 03 00 00 */	cmpwi r3, 0
/* 800470F8 00042D58  41 82 00 20 */	beq lbl_80047118
/* 800470FC 00042D5C  41 82 00 18 */	beq lbl_80047114
/* 80047100 00042D60  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80047104 00042D64  38 80 00 01 */	li r4, 1
/* 80047108 00042D68  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004710C 00042D6C  7D 89 03 A6 */	mtctr r12
/* 80047110 00042D70  4E 80 04 21 */	bctrl
lbl_80047114:
/* 80047114 00042D74  93 DD 01 5C */	stw r30, 0x15c(r29)
lbl_80047118:
/* 80047118 00042D78  3B 9C 00 01 */	addi r28, r28, 1
/* 8004711C 00042D7C  3B BD 00 04 */	addi r29, r29, 4
/* 80047120 00042D80  2C 1C 00 02 */	cmpwi r28, 2
/* 80047124 00042D84  41 80 FF CC */	blt lbl_800470F0
/* 80047128 00042D88  2C 1B 00 03 */	cmpwi r27, 3
/* 8004712C 00042D8C  41 82 00 28 */	beq lbl_80047154
/* 80047130 00042D90  40 80 00 14 */	bge lbl_80047144
/* 80047134 00042D94  2C 1B 00 01 */	cmpwi r27, 1
/* 80047138 00042D98  41 82 00 88 */	beq lbl_800471C0
/* 8004713C 00042D9C  40 80 00 F0 */	bge lbl_8004722C
/* 80047140 00042DA0  48 00 03 14 */	b lbl_80047454
lbl_80047144:
/* 80047144 00042DA4  2C 1B 00 05 */	cmpwi r27, 5
/* 80047148 00042DA8  41 82 02 A4 */	beq lbl_800473EC
/* 8004714C 00042DAC  40 80 03 08 */	bge lbl_80047454
/* 80047150 00042DB0  48 00 01 C8 */	b lbl_80047318
lbl_80047154:
/* 80047154 00042DB4  3C 80 1A 85 */	lis r4, 0x1A850E00@ha
/* 80047158 00042DB8  38 60 00 0C */	li r3, 0xc
/* 8004715C 00042DBC  38 84 0E 00 */	addi r4, r4, 0x1A850E00@l
/* 80047160 00042DC0  48 19 43 5D */	bl func_801DB4BC
/* 80047164 00042DC4  2C 03 00 00 */	cmpwi r3, 0
/* 80047168 00042DC8  7C 7D 1B 78 */	mr r29, r3
/* 8004716C 00042DCC  41 82 02 E8 */	beq lbl_80047454
/* 80047170 00042DD0  48 19 39 B9 */	bl func_801DAB28
/* 80047174 00042DD4  2C 03 00 00 */	cmpwi r3, 0
/* 80047178 00042DD8  41 82 00 14 */	beq lbl_8004718C
/* 8004717C 00042DDC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047180 00042DE0  38 80 01 40 */	li r4, 0x140
/* 80047184 00042DE4  48 19 3B 11 */	bl func_801DAC94
/* 80047188 00042DE8  48 00 00 08 */	b lbl_80047190
lbl_8004718C:
/* 8004718C 00042DEC  38 60 00 00 */	li r3, 0
lbl_80047190:
/* 80047190 00042DF0  2C 03 00 00 */	cmpwi r3, 0
/* 80047194 00042DF4  41 82 00 0C */	beq lbl_800471A0
/* 80047198 00042DF8  7F A4 EB 78 */	mr r4, r29
/* 8004719C 00042DFC  48 1B 27 51 */	bl func_801F98EC
lbl_800471A0:
/* 800471A0 00042E00  90 7F 01 5C */	stw r3, 0x15c(r31)
/* 800471A4 00042E04  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800471A8 00042E08  80 03 01 04 */	lwz r0, 0x104(r3)
/* 800471AC 00042E0C  60 00 00 01 */	ori r0, r0, 1
/* 800471B0 00042E10  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 800471B4 00042E14  90 03 01 04 */	stw r0, 0x104(r3)
/* 800471B8 00042E18  D0 03 01 08 */	stfs f0, 0x108(r3)
/* 800471BC 00042E1C  48 00 02 98 */	b lbl_80047454
lbl_800471C0:
/* 800471C0 00042E20  3C 80 1B C1 */	lis r4, 0x1BC10E00@ha
/* 800471C4 00042E24  38 60 00 0C */	li r3, 0xc
/* 800471C8 00042E28  38 84 0E 00 */	addi r4, r4, 0x1BC10E00@l
/* 800471CC 00042E2C  48 19 42 F1 */	bl func_801DB4BC
/* 800471D0 00042E30  2C 03 00 00 */	cmpwi r3, 0
/* 800471D4 00042E34  7C 7D 1B 78 */	mr r29, r3
/* 800471D8 00042E38  41 82 02 7C */	beq lbl_80047454
/* 800471DC 00042E3C  48 19 39 4D */	bl func_801DAB28
/* 800471E0 00042E40  2C 03 00 00 */	cmpwi r3, 0
/* 800471E4 00042E44  41 82 00 14 */	beq lbl_800471F8
/* 800471E8 00042E48  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800471EC 00042E4C  38 80 01 40 */	li r4, 0x140
/* 800471F0 00042E50  48 19 3A A5 */	bl func_801DAC94
/* 800471F4 00042E54  48 00 00 08 */	b lbl_800471FC
lbl_800471F8:
/* 800471F8 00042E58  38 60 00 00 */	li r3, 0
lbl_800471FC:
/* 800471FC 00042E5C  2C 03 00 00 */	cmpwi r3, 0
/* 80047200 00042E60  41 82 00 0C */	beq lbl_8004720C
/* 80047204 00042E64  7F A4 EB 78 */	mr r4, r29
/* 80047208 00042E68  48 1B 26 E5 */	bl func_801F98EC
lbl_8004720C:
/* 8004720C 00042E6C  90 7F 01 5C */	stw r3, 0x15c(r31)
/* 80047210 00042E70  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80047214 00042E74  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80047218 00042E78  60 00 00 01 */	ori r0, r0, 1
/* 8004721C 00042E7C  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80047220 00042E80  90 03 01 04 */	stw r0, 0x104(r3)
/* 80047224 00042E84  D0 03 01 08 */	stfs f0, 0x108(r3)
/* 80047228 00042E88  48 00 02 2C */	b lbl_80047454
lbl_8004722C:
/* 8004722C 00042E8C  4B FE EB 71 */	bl func_80035D9C
/* 80047230 00042E90  3C 80 20 9E */	lis r4, 0x209E0E00@ha
/* 80047234 00042E94  7C 7C 1B 78 */	mr r28, r3
/* 80047238 00042E98  38 84 0E 00 */	addi r4, r4, 0x209E0E00@l
/* 8004723C 00042E9C  38 60 00 0C */	li r3, 0xc
/* 80047240 00042EA0  48 19 42 7D */	bl func_801DB4BC
/* 80047244 00042EA4  2C 03 00 00 */	cmpwi r3, 0
/* 80047248 00042EA8  7C 7D 1B 78 */	mr r29, r3
/* 8004724C 00042EAC  41 82 02 08 */	beq lbl_80047454
/* 80047250 00042EB0  48 19 38 D9 */	bl func_801DAB28
/* 80047254 00042EB4  2C 03 00 00 */	cmpwi r3, 0
/* 80047258 00042EB8  41 82 00 14 */	beq lbl_8004726C
/* 8004725C 00042EBC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047260 00042EC0  38 80 01 40 */	li r4, 0x140
/* 80047264 00042EC4  48 19 3A 31 */	bl func_801DAC94
/* 80047268 00042EC8  48 00 00 08 */	b lbl_80047270
lbl_8004726C:
/* 8004726C 00042ECC  38 60 00 00 */	li r3, 0
lbl_80047270:
/* 80047270 00042ED0  2C 03 00 00 */	cmpwi r3, 0
/* 80047274 00042ED4  41 82 00 0C */	beq lbl_80047280
/* 80047278 00042ED8  7F A4 EB 78 */	mr r4, r29
/* 8004727C 00042EDC  48 1B 26 71 */	bl func_801F98EC
lbl_80047280:
/* 80047280 00042EE0  2C 1C 00 00 */	cmpwi r28, 0
/* 80047284 00042EE4  90 7F 01 5C */	stw r3, 0x15c(r31)
/* 80047288 00042EE8  41 82 00 70 */	beq lbl_800472F8
/* 8004728C 00042EEC  7F 83 E3 78 */	mr r3, r28
/* 80047290 00042EF0  38 80 00 04 */	li r4, 4
/* 80047294 00042EF4  4B FE FC BD */	bl func_80036F50
/* 80047298 00042EF8  2C 03 00 00 */	cmpwi r3, 0
/* 8004729C 00042EFC  41 82 00 5C */	beq lbl_800472F8
/* 800472A0 00042F00  C0 22 83 88 */	lfs f1, lbl_80640988-_SDA2_BASE_(r2)
/* 800472A4 00042F04  38 61 00 18 */	addi r3, r1, 0x18
/* 800472A8 00042F08  C0 02 83 A8 */	lfs f0, lbl_806409A8-_SDA2_BASE_(r2)
/* 800472AC 00042F0C  38 81 00 08 */	addi r4, r1, 8
/* 800472B0 00042F10  D0 21 00 08 */	stfs f1, 8(r1)
/* 800472B4 00042F14  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 800472B8 00042F18  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 800472BC 00042F1C  48 1D C4 05 */	bl func_802236C0
/* 800472C0 00042F20  80 7F 01 5C */	lwz r3, 0x15c(r31)
/* 800472C4 00042F24  38 80 00 01 */	li r4, 1
/* 800472C8 00042F28  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 800472CC 00042F2C  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 800472D0 00042F30  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 800472D4 00042F34  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 800472D8 00042F38  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 800472DC 00042F3C  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 800472E0 00042F40  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 800472E4 00042F44  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 800472E8 00042F48  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800472EC 00042F4C  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 800472F0 00042F50  B0 03 00 10 */	sth r0, 0x10(r3)
/* 800472F4 00042F54  48 1A B3 C5 */	bl func_801F26B8
lbl_800472F8:
/* 800472F8 00042F58  80 7F 01 5C */	lwz r3, 0x15c(r31)
/* 800472FC 00042F5C  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80047300 00042F60  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80047304 00042F64  60 00 00 01 */	ori r0, r0, 1
/* 80047308 00042F68  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004730C 00042F6C  90 03 01 04 */	stw r0, 0x104(r3)
/* 80047310 00042F70  D0 03 01 08 */	stfs f0, 0x108(r3)
/* 80047314 00042F74  48 00 01 40 */	b lbl_80047454
lbl_80047318:
/* 80047318 00042F78  3C 80 20 9C */	lis r4, 0x209C0E00@ha
/* 8004731C 00042F7C  38 60 00 0C */	li r3, 0xc
/* 80047320 00042F80  38 84 0E 00 */	addi r4, r4, 0x209C0E00@l
/* 80047324 00042F84  48 19 41 99 */	bl func_801DB4BC
/* 80047328 00042F88  2C 03 00 00 */	cmpwi r3, 0
/* 8004732C 00042F8C  7C 7D 1B 78 */	mr r29, r3
/* 80047330 00042F90  41 82 00 50 */	beq lbl_80047380
/* 80047334 00042F94  48 19 37 F5 */	bl func_801DAB28
/* 80047338 00042F98  2C 03 00 00 */	cmpwi r3, 0
/* 8004733C 00042F9C  41 82 00 14 */	beq lbl_80047350
/* 80047340 00042FA0  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047344 00042FA4  38 80 01 40 */	li r4, 0x140
/* 80047348 00042FA8  48 19 39 4D */	bl func_801DAC94
/* 8004734C 00042FAC  48 00 00 08 */	b lbl_80047354
lbl_80047350:
/* 80047350 00042FB0  38 60 00 00 */	li r3, 0
lbl_80047354:
/* 80047354 00042FB4  2C 03 00 00 */	cmpwi r3, 0
/* 80047358 00042FB8  41 82 00 0C */	beq lbl_80047364
/* 8004735C 00042FBC  7F A4 EB 78 */	mr r4, r29
/* 80047360 00042FC0  48 1B 25 8D */	bl func_801F98EC
lbl_80047364:
/* 80047364 00042FC4  90 7F 01 5C */	stw r3, 0x15c(r31)
/* 80047368 00042FC8  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004736C 00042FCC  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80047370 00042FD0  60 00 00 01 */	ori r0, r0, 1
/* 80047374 00042FD4  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80047378 00042FD8  90 03 01 04 */	stw r0, 0x104(r3)
/* 8004737C 00042FDC  D0 03 01 08 */	stfs f0, 0x108(r3)
lbl_80047380:
/* 80047380 00042FE0  3C 80 20 9D */	lis r4, 0x209D0E00@ha
/* 80047384 00042FE4  38 60 00 0C */	li r3, 0xc
/* 80047388 00042FE8  38 84 0E 00 */	addi r4, r4, 0x209D0E00@l
/* 8004738C 00042FEC  48 19 41 31 */	bl func_801DB4BC
/* 80047390 00042FF0  2C 03 00 00 */	cmpwi r3, 0
/* 80047394 00042FF4  7C 7D 1B 78 */	mr r29, r3
/* 80047398 00042FF8  41 82 00 BC */	beq lbl_80047454
/* 8004739C 00042FFC  48 19 37 8D */	bl func_801DAB28
/* 800473A0 00043000  2C 03 00 00 */	cmpwi r3, 0
/* 800473A4 00043004  41 82 00 14 */	beq lbl_800473B8
/* 800473A8 00043008  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800473AC 0004300C  38 80 01 40 */	li r4, 0x140
/* 800473B0 00043010  48 19 38 E5 */	bl func_801DAC94
/* 800473B4 00043014  48 00 00 08 */	b lbl_800473BC
lbl_800473B8:
/* 800473B8 00043018  38 60 00 00 */	li r3, 0
lbl_800473BC:
/* 800473BC 0004301C  2C 03 00 00 */	cmpwi r3, 0
/* 800473C0 00043020  41 82 00 0C */	beq lbl_800473CC
/* 800473C4 00043024  7F A4 EB 78 */	mr r4, r29
/* 800473C8 00043028  48 1B 25 25 */	bl func_801F98EC
lbl_800473CC:
/* 800473CC 0004302C  90 7F 01 60 */	stw r3, 0x160(r31)
/* 800473D0 00043030  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800473D4 00043034  80 03 01 04 */	lwz r0, 0x104(r3)
/* 800473D8 00043038  60 00 00 01 */	ori r0, r0, 1
/* 800473DC 0004303C  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 800473E0 00043040  90 03 01 04 */	stw r0, 0x104(r3)
/* 800473E4 00043044  D0 03 01 08 */	stfs f0, 0x108(r3)
/* 800473E8 00043048  48 00 00 6C */	b lbl_80047454
lbl_800473EC:
/* 800473EC 0004304C  3C 80 21 E3 */	lis r4, 0x21E30E00@ha
/* 800473F0 00043050  38 60 00 0C */	li r3, 0xc
/* 800473F4 00043054  38 84 0E 00 */	addi r4, r4, 0x21E30E00@l
/* 800473F8 00043058  48 19 40 C5 */	bl func_801DB4BC
/* 800473FC 0004305C  2C 03 00 00 */	cmpwi r3, 0
/* 80047400 00043060  7C 7D 1B 78 */	mr r29, r3
/* 80047404 00043064  41 82 00 50 */	beq lbl_80047454
/* 80047408 00043068  48 19 37 21 */	bl func_801DAB28
/* 8004740C 0004306C  2C 03 00 00 */	cmpwi r3, 0
/* 80047410 00043070  41 82 00 14 */	beq lbl_80047424
/* 80047414 00043074  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047418 00043078  38 80 01 40 */	li r4, 0x140
/* 8004741C 0004307C  48 19 38 79 */	bl func_801DAC94
/* 80047420 00043080  48 00 00 08 */	b lbl_80047428
lbl_80047424:
/* 80047424 00043084  38 60 00 00 */	li r3, 0
lbl_80047428:
/* 80047428 00043088  2C 03 00 00 */	cmpwi r3, 0
/* 8004742C 0004308C  41 82 00 0C */	beq lbl_80047438
/* 80047430 00043090  7F A4 EB 78 */	mr r4, r29
/* 80047434 00043094  48 1B 24 B9 */	bl func_801F98EC
lbl_80047438:
/* 80047438 00043098  90 7F 01 5C */	stw r3, 0x15c(r31)
/* 8004743C 0004309C  C0 02 83 88 */	lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80047440 000430A0  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80047444 000430A4  60 00 00 01 */	ori r0, r0, 1
/* 80047448 000430A8  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004744C 000430AC  90 03 01 04 */	stw r0, 0x104(r3)
/* 80047450 000430B0  D0 03 01 08 */	stfs f0, 0x108(r3)
lbl_80047454:
/* 80047454 000430B4  39 61 00 40 */	addi r11, r1, 0x40
/* 80047458 000430B8  48 17 FD 1D */	bl _restgpr_27
/* 8004745C 000430BC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80047460 000430C0  7C 08 03 A6 */	mtlr r0
/* 80047464 000430C4  38 21 00 40 */	addi r1, r1, 0x40
/* 80047468 000430C8  4E 80 00 20 */	blr

.global func_8004746C
func_8004746C:
/* 8004746C 000430CC  38 80 00 00 */	li r4, 0
/* 80047470 000430D0  4B FF FC 44 */	b func_800470B4

.global func_80047474
func_80047474:
/* 80047474 000430D4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80047478 000430D8  7C 08 02 A6 */	mflr r0
/* 8004747C 000430DC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80047480 000430E0  54 A0 00 5E */	rlwinm r0, r5, 0, 1, 0xf
/* 80047484 000430E4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80047488 000430E8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004748C 000430EC  7C DE 33 78 */	mr r30, r6
/* 80047490 000430F0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80047494 000430F4  7C 7D 1B 78 */	mr r29, r3
/* 80047498 000430F8  7C 83 23 78 */	mr r3, r4
/* 8004749C 000430FC  60 04 2C 00 */	ori r4, r0, 0x2c00
/* 800474A0 00043100  48 19 40 1D */	bl func_801DB4BC
/* 800474A4 00043104  2C 03 00 00 */	cmpwi r3, 0
/* 800474A8 00043108  7C 7F 1B 78 */	mr r31, r3
/* 800474AC 0004310C  41 82 00 24 */	beq lbl_800474D0
/* 800474B0 00043110  7F C4 F3 78 */	mr r4, r30
/* 800474B4 00043114  48 19 D6 D9 */	bl func_801E4B8C
/* 800474B8 00043118  7F E3 FB 78 */	mr r3, r31
/* 800474BC 0004311C  38 80 00 01 */	li r4, 1
/* 800474C0 00043120  48 19 D7 0D */	bl func_801E4BCC
/* 800474C4 00043124  93 FD 01 68 */	stw r31, 0x168(r29)
/* 800474C8 00043128  38 60 00 01 */	li r3, 1
/* 800474CC 0004312C  48 00 00 08 */	b lbl_800474D4
lbl_800474D0:
/* 800474D0 00043130  38 60 00 00 */	li r3, 0
lbl_800474D4:
/* 800474D4 00043134  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800474D8 00043138  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800474DC 0004313C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800474E0 00043140  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800474E4 00043144  7C 08 03 A6 */	mtlr r0
/* 800474E8 00043148  38 21 00 20 */	addi r1, r1, 0x20
/* 800474EC 0004314C  4E 80 00 20 */	blr

.global func_800474F0
func_800474F0:
/* 800474F0 00043150  80 63 01 68 */	lwz r3, 0x168(r3)
/* 800474F4 00043154  2C 03 00 00 */	cmpwi r3, 0
/* 800474F8 00043158  4D 82 00 20 */	beqlr
/* 800474FC 0004315C  48 19 D6 D0 */	b func_801E4BCC
/* 80047500 00043160  4E 80 00 20 */	blr

.global func_80047504
func_80047504:
/* 80047504 00043164  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80047508 00043168  7C 08 02 A6 */	mflr r0
/* 8004750C 0004316C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80047510 00043170  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80047514 00043174  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80047518 00043178  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004751C 0004317C  7C 7D 1B 78 */	mr r29, r3
/* 80047520 00043180  4B FE BB 69 */	bl func_80033088
/* 80047524 00043184  80 1D 00 08 */	lwz r0, 8(r29)
/* 80047528 00043188  7C 7E 1B 78 */	mr r30, r3
/* 8004752C 0004318C  2C 00 00 00 */	cmpwi r0, 0
/* 80047530 00043190  41 82 00 90 */	beq lbl_800475C0
/* 80047534 00043194  2C 03 00 00 */	cmpwi r3, 0
/* 80047538 00043198  41 82 00 88 */	beq lbl_800475C0
/* 8004753C 0004319C  48 0D 54 39 */	bl func_8011C974
/* 80047540 000431A0  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80047544 000431A4  37 A3 FC 18 */	addic. r29, r3, -1000
/* 80047548 000431A8  41 80 00 78 */	blt lbl_800475C0
/* 8004754C 000431AC  7F C3 F3 78 */	mr r3, r30
/* 80047550 000431B0  38 80 00 01 */	li r4, 1
/* 80047554 000431B4  4B FE DA 51 */	bl func_80034FA4
/* 80047558 000431B8  7F C3 F3 78 */	mr r3, r30
/* 8004755C 000431BC  38 80 00 00 */	li r4, 0
/* 80047560 000431C0  4B FE DB 21 */	bl func_80035080
/* 80047564 000431C4  3F E0 80 64 */	lis r31, lbl_8063CE34@ha
/* 80047568 000431C8  7F A4 EB 78 */	mr r4, r29
/* 8004756C 000431CC  3B FF CE 34 */	addi r31, r31, lbl_8063CE34@l
/* 80047570 000431D0  38 7F 00 78 */	addi r3, r31, 0x78
/* 80047574 000431D4  48 35 23 DD */	bl func_80399950
/* 80047578 000431D8  54 64 06 3E */	clrlwi r4, r3, 0x18
/* 8004757C 000431DC  7F C3 F3 78 */	mr r3, r30
/* 80047580 000431E0  7C 04 00 D0 */	neg r0, r4
/* 80047584 000431E4  7C 00 23 78 */	or r0, r0, r4
/* 80047588 000431E8  54 04 0F FE */	srwi r4, r0, 0x1f
/* 8004758C 000431EC  4B FE DA ED */	bl func_80035078
/* 80047590 000431F0  7F A4 EB 78 */	mr r4, r29
/* 80047594 000431F4  38 7F 00 78 */	addi r3, r31, 0x78
/* 80047598 000431F8  48 35 23 ED */	bl func_80399984
/* 8004759C 000431FC  7C 60 1B 78 */	mr r0, r3
/* 800475A0 00043200  7F C3 F3 78 */	mr r3, r30
/* 800475A4 00043204  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 800475A8 00043208  4B FE DA F9 */	bl func_800350A0
/* 800475AC 0004320C  7F A4 EB 78 */	mr r4, r29
/* 800475B0 00043210  38 7F 00 78 */	addi r3, r31, 0x78
/* 800475B4 00043214  48 35 24 05 */	bl func_803999B8
/* 800475B8 00043218  7F C3 F3 78 */	mr r3, r30
/* 800475BC 0004321C  4B FE D9 F1 */	bl func_80034FAC
lbl_800475C0:
/* 800475C0 00043220  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800475C4 00043224  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800475C8 00043228  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800475CC 0004322C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800475D0 00043230  7C 08 03 A6 */	mtlr r0
/* 800475D4 00043234  38 21 00 20 */	addi r1, r1, 0x20
/* 800475D8 00043238  4E 80 00 20 */	blr

.global func_800475DC
func_800475DC:
/* 800475DC 0004323C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800475E0 00043240  7C 08 02 A6 */	mflr r0
/* 800475E4 00043244  90 01 00 24 */	stw r0, 0x24(r1)
/* 800475E8 00043248  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800475EC 0004324C  3B E0 00 00 */	li r31, 0
/* 800475F0 00043250  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800475F4 00043254  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800475F8 00043258  7C 9D 23 78 */	mr r29, r4
/* 800475FC 0004325C  93 81 00 10 */	stw r28, 0x10(r1)
/* 80047600 00043260  7C 7C 1B 78 */	mr r28, r3
/* 80047604 00043264  48 0D 53 71 */	bl func_8011C974
/* 80047608 00043268  80 83 00 10 */	lwz r4, 0x10(r3)
/* 8004760C 0004326C  34 84 FC 18 */	addic. r4, r4, -1000
/* 80047610 00043270  40 80 00 08 */	bge lbl_80047618
/* 80047614 00043274  38 80 00 00 */	li r4, 0
lbl_80047618:
/* 80047618 00043278  80 03 00 00 */	lwz r0, 0(r3)
/* 8004761C 0004327C  2C 1D 00 02 */	cmpwi r29, 2
/* 80047620 00043280  3B C0 00 00 */	li r30, 0
/* 80047624 00043284  54 00 2F FE */	rlwinm r0, r0, 5, 0x1f, 0x1f
/* 80047628 00043288  41 82 00 D4 */	beq lbl_800476FC
/* 8004762C 0004328C  40 80 00 14 */	bge lbl_80047640
/* 80047630 00043290  2C 1D 00 00 */	cmpwi r29, 0
/* 80047634 00043294  41 82 00 18 */	beq lbl_8004764C
/* 80047638 00043298  40 80 00 8C */	bge lbl_800476C4
/* 8004763C 0004329C  48 00 00 EC */	b lbl_80047728
lbl_80047640:
/* 80047640 000432A0  2C 1D 00 04 */	cmpwi r29, 4
/* 80047644 000432A4  40 80 00 E4 */	bge lbl_80047728
/* 80047648 000432A8  48 00 00 CC */	b lbl_80047714
lbl_8004764C:
/* 8004764C 000432AC  2C 00 00 00 */	cmpwi r0, 0
/* 80047650 000432B0  41 82 00 5C */	beq lbl_800476AC
/* 80047654 000432B4  3B E0 00 00 */	li r31, 0
/* 80047658 000432B8  48 00 00 2C */	b lbl_80047684
lbl_8004765C:
/* 8004765C 000432BC  7F 83 E3 78 */	mr r3, r28
/* 80047660 000432C0  38 9F 00 80 */	addi r4, r31, 0x80
/* 80047664 000432C4  38 A0 00 00 */	li r5, 0
/* 80047668 000432C8  4B FF E4 99 */	bl func_80045B00
/* 8004766C 000432CC  A0 63 05 1C */	lhz r3, 0x51c(r3)
/* 80047670 000432D0  38 03 FF F8 */	addi r0, r3, -8
/* 80047674 000432D4  7C 1E 00 00 */	cmpw r30, r0
/* 80047678 000432D8  40 80 00 08 */	bge lbl_80047680
/* 8004767C 000432DC  7C 1E 03 78 */	mr r30, r0
lbl_80047680:
/* 80047680 000432E0  3B FF 00 01 */	addi r31, r31, 1
lbl_80047684:
/* 80047684 000432E4  A0 1C 01 1E */	lhz r0, 0x11e(r28)
/* 80047688 000432E8  7C 1F 00 00 */	cmpw r31, r0
/* 8004768C 000432EC  41 80 FF D0 */	blt lbl_8004765C
/* 80047690 000432F0  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 80047694 000432F4  7F C4 F3 78 */	mr r4, r30
/* 80047698 000432F8  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8004769C 000432FC  38 63 00 78 */	addi r3, r3, 0x78
/* 800476A0 00043300  48 35 21 AD */	bl func_8039984C
/* 800476A4 00043304  7C 7F 1B 78 */	mr r31, r3
/* 800476A8 00043308  48 00 00 80 */	b lbl_80047728
lbl_800476AC:
/* 800476AC 0004330C  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 800476B0 00043310  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 800476B4 00043314  38 63 00 78 */	addi r3, r3, 0x78
/* 800476B8 00043318  48 35 21 61 */	bl func_80399818
/* 800476BC 0004331C  7C 7F 1B 78 */	mr r31, r3
/* 800476C0 00043320  48 00 00 68 */	b lbl_80047728
lbl_800476C4:
/* 800476C4 00043324  2C 00 00 00 */	cmpwi r0, 0
/* 800476C8 00043328  41 82 00 1C */	beq lbl_800476E4
/* 800476CC 0004332C  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 800476D0 00043330  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 800476D4 00043334  38 63 00 78 */	addi r3, r3, 0x78
/* 800476D8 00043338  48 35 21 DD */	bl func_803998B4
/* 800476DC 0004333C  7C 7F 1B 78 */	mr r31, r3
/* 800476E0 00043340  48 00 00 48 */	b lbl_80047728
lbl_800476E4:
/* 800476E4 00043344  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 800476E8 00043348  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 800476EC 0004334C  38 63 00 78 */	addi r3, r3, 0x78
/* 800476F0 00043350  48 35 21 91 */	bl func_80399880
/* 800476F4 00043354  7C 7F 1B 78 */	mr r31, r3
/* 800476F8 00043358  48 00 00 30 */	b lbl_80047728
lbl_800476FC:
/* 800476FC 0004335C  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 80047700 00043360  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 80047704 00043364  38 63 00 78 */	addi r3, r3, 0x78
/* 80047708 00043368  48 35 21 E1 */	bl func_803998E8
/* 8004770C 0004336C  7C 7F 1B 78 */	mr r31, r3
/* 80047710 00043370  48 00 00 18 */	b lbl_80047728
lbl_80047714:
/* 80047714 00043374  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 80047718 00043378  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8004771C 0004337C  38 63 00 78 */	addi r3, r3, 0x78
/* 80047720 00043380  48 35 21 FD */	bl func_8039991C
/* 80047724 00043384  7C 7F 1B 78 */	mr r31, r3
lbl_80047728:
/* 80047728 00043388  2C 1F 00 00 */	cmpwi r31, 0
/* 8004772C 0004338C  40 80 00 08 */	bge lbl_80047734
/* 80047730 00043390  3B E0 00 00 */	li r31, 0
lbl_80047734:
/* 80047734 00043394  7F E3 FB 78 */	mr r3, r31
/* 80047738 00043398  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004773C 0004339C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80047740 000433A0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80047744 000433A4  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80047748 000433A8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004774C 000433AC  7C 08 03 A6 */	mtlr r0
/* 80047750 000433B0  38 21 00 20 */	addi r1, r1, 0x20
/* 80047754 000433B4  4E 80 00 20 */	blr

.global func_80047758
func_80047758:
/* 80047758 000433B8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004775C 000433BC  7C 08 02 A6 */	mflr r0
/* 80047760 000433C0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80047764 000433C4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80047768 000433C8  3B E3 00 0C */	addi r31, r3, 0xc
/* 8004776C 000433CC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80047770 000433D0  3B C0 00 00 */	li r30, 0
/* 80047774 000433D4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80047778 000433D8  7C 7D 1B 78 */	mr r29, r3
/* 8004777C 000433DC  48 00 00 24 */	b lbl_800477A0
lbl_80047780:
/* 80047780 000433E0  7F E3 FB 78 */	mr r3, r31
/* 80047784 000433E4  4B FF D8 2D */	bl func_80044FB0
/* 80047788 000433E8  2C 03 00 00 */	cmpwi r3, 0
/* 8004778C 000433EC  41 82 00 0C */	beq lbl_80047798
/* 80047790 000433F0  7F E3 FB 78 */	mr r3, r31
/* 80047794 000433F4  4B FF D8 D9 */	bl func_8004506C
lbl_80047798:
/* 80047798 000433F8  3B FF 00 44 */	addi r31, r31, 0x44
/* 8004779C 000433FC  3B DE 00 01 */	addi r30, r30, 1
lbl_800477A0:
/* 800477A0 00043400  A0 1D 01 1E */	lhz r0, 0x11e(r29)
/* 800477A4 00043404  7C 1E 00 00 */	cmpw r30, r0
/* 800477A8 00043408  41 80 FF D8 */	blt lbl_80047780
/* 800477AC 0004340C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800477B0 00043410  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800477B4 00043414  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800477B8 00043418  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800477BC 0004341C  7C 08 03 A6 */	mtlr r0
/* 800477C0 00043420  38 21 00 20 */	addi r1, r1, 0x20
/* 800477C4 00043424  4E 80 00 20 */	blr

.global func_800477C8
func_800477C8:
/* 800477C8 00043428  38 A0 00 01 */	li r5, 1
/* 800477CC 0004342C  38 6D 97 F0 */	addi r3, r13, lbl_8063EAB0-_SDA_BASE_
/* 800477D0 00043430  38 80 00 04 */	li r4, 4
/* 800477D4 00043434  38 00 00 00 */	li r0, 0
/* 800477D8 00043438  98 AD 97 F0 */	stb r5, lbl_8063EAB0-_SDA_BASE_(r13)
/* 800477DC 0004343C  B0 83 00 02 */	sth r4, 2(r3)
/* 800477E0 00043440  98 03 00 04 */	stb r0, 4(r3)
/* 800477E4 00043444  4E 80 00 20 */	blr

.global func_800477E8
func_800477E8:
/* 800477E8 00043448  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800477EC 0004344C  7C 08 02 A6 */	mflr r0
/* 800477F0 00043450  90 01 00 14 */	stw r0, 0x14(r1)
/* 800477F4 00043454  4B FF 68 49 */	bl func_8003E03C
/* 800477F8 00043458  4B FF 89 A9 */	bl func_800401A0
/* 800477FC 0004345C  4B FE B8 25 */	bl func_80033020
/* 80047800 00043460  4B FF CF E5 */	bl func_800447E4
/* 80047804 00043464  4B FF DD 4D */	bl func_80045550
/* 80047808 00043468  4B FE E5 51 */	bl func_80035D58
/* 8004780C 0004346C  48 00 7B 71 */	bl func_8004F37C
/* 80047810 00043470  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80047814 00043474  7C 08 03 A6 */	mtlr r0
/* 80047818 00043478  38 21 00 10 */	addi r1, r1, 0x10
/* 8004781C 0004347C  4E 80 00 20 */	blr

.global func_80047820
func_80047820:
/* 80047820 00043480  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80047824 00043484  7C 08 02 A6 */	mflr r0
/* 80047828 00043488  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004782C 0004348C  4B FF 89 C9 */	bl func_800401F4
/* 80047830 00043490  2C 03 00 00 */	cmpwi r3, 0
/* 80047834 00043494  41 82 00 0C */	beq lbl_80047840
/* 80047838 00043498  38 00 00 01 */	li r0, 1
/* 8004783C 0004349C  98 03 00 00 */	stb r0, 0(r3)
lbl_80047840:
/* 80047840 000434A0  4B FE B8 49 */	bl func_80033088
/* 80047844 000434A4  2C 03 00 00 */	cmpwi r3, 0
/* 80047848 000434A8  41 82 00 08 */	beq lbl_80047850
/* 8004784C 000434AC  4B FE BC 3D */	bl func_80033488
lbl_80047850:
/* 80047850 000434B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80047854 000434B4  7C 08 03 A6 */	mtlr r0
/* 80047858 000434B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004785C 000434BC  4E 80 00 20 */	blr

.global func_80047860
func_80047860:
/* 80047860 000434C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80047864 000434C4  7C 08 02 A6 */	mflr r0
/* 80047868 000434C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004786C 000434CC  4B FF 89 89 */	bl func_800401F4
/* 80047870 000434D0  2C 03 00 00 */	cmpwi r3, 0
/* 80047874 000434D4  41 82 00 0C */	beq lbl_80047880
/* 80047878 000434D8  38 00 00 00 */	li r0, 0
/* 8004787C 000434DC  98 03 00 00 */	stb r0, 0(r3)
lbl_80047880:
/* 80047880 000434E0  4B FE B8 09 */	bl func_80033088
/* 80047884 000434E4  2C 03 00 00 */	cmpwi r3, 0
/* 80047888 000434E8  41 82 00 08 */	beq lbl_80047890
/* 8004788C 000434EC  4B FE BC 09 */	bl func_80033494
lbl_80047890:
/* 80047890 000434F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80047894 000434F4  7C 08 03 A6 */	mtlr r0
/* 80047898 000434F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004789C 000434FC  4E 80 00 20 */	blr

.global func_800478A0
func_800478A0:
/* 800478A0 00043500  38 A0 00 01 */	li r5, 1
/* 800478A4 00043504  38 6D 98 00 */	addi r3, r13, lbl_8063EAC0-_SDA_BASE_
/* 800478A8 00043508  38 80 00 04 */	li r4, 4
/* 800478AC 0004350C  38 00 00 00 */	li r0, 0
/* 800478B0 00043510  98 AD 98 00 */	stb r5, lbl_8063EAC0-_SDA_BASE_(r13)
/* 800478B4 00043514  B0 83 00 02 */	sth r4, 2(r3)
/* 800478B8 00043518  98 03 00 04 */	stb r0, 4(r3)
/* 800478BC 0004351C  4E 80 00 20 */	blr
lbl_800478C0:
/* 800478C0 00043520  C0 02 83 C0 */	lfs f0, lbl_806409C0-_SDA2_BASE_(r2)
/* 800478C4 00043524  38 00 00 00 */	li r0, 0
/* 800478C8 00043528  90 03 00 00 */	stw r0, 0(r3)
/* 800478CC 0004352C  90 03 00 04 */	stw r0, 4(r3)
/* 800478D0 00043530  90 03 00 08 */	stw r0, 8(r3)
/* 800478D4 00043534  90 03 00 0C */	stw r0, 0xc(r3)
/* 800478D8 00043538  90 03 00 10 */	stw r0, 0x10(r3)
/* 800478DC 0004353C  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 800478E0 00043540  4E 80 00 20 */	blr
lbl_800478E4:
/* 800478E4 00043544  C0 02 83 C0 */	lfs f0, lbl_806409C0-_SDA2_BASE_(r2)
/* 800478E8 00043548  38 00 00 00 */	li r0, 0
/* 800478EC 0004354C  90 03 00 00 */	stw r0, 0(r3)
/* 800478F0 00043550  90 03 00 2C */	stw r0, 0x2c(r3)
/* 800478F4 00043554  90 03 00 30 */	stw r0, 0x30(r3)
/* 800478F8 00043558  90 03 00 20 */	stw r0, 0x20(r3)
/* 800478FC 0004355C  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 80047900 00043560  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 80047904 00043564  4E 80 00 20 */	blr
lbl_80047908:
/* 80047908 00043568  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004790C 0004356C  7C 08 02 A6 */	mflr r0
/* 80047910 00043570  2C 03 00 00 */	cmpwi r3, 0
/* 80047914 00043574  90 01 00 14 */	stw r0, 0x14(r1)
/* 80047918 00043578  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004791C 0004357C  7C 9F 23 78 */	mr r31, r4
/* 80047920 00043580  93 C1 00 08 */	stw r30, 8(r1)
/* 80047924 00043584  7C 7E 1B 78 */	mr r30, r3
/* 80047928 00043588  41 82 00 18 */	beq lbl_80047940
/* 8004792C 0004358C  48 00 01 7D */	bl func_80047AA8
/* 80047930 00043590  2C 1F 00 00 */	cmpwi r31, 0
/* 80047934 00043594  40 81 00 0C */	ble lbl_80047940
/* 80047938 00043598  7F C3 F3 78 */	mr r3, r30
/* 8004793C 0004359C  48 19 31 7D */	bl func_801DAAB8
lbl_80047940:
/* 80047940 000435A0  7F C3 F3 78 */	mr r3, r30
/* 80047944 000435A4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80047948 000435A8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004794C 000435AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80047950 000435B0  7C 08 03 A6 */	mtlr r0
/* 80047954 000435B4  38 21 00 10 */	addi r1, r1, 0x10
/* 80047958 000435B8  4E 80 00 20 */	blr

.global func_8004795C
func_8004795C:
/* 8004795C 000435BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80047960 000435C0  7C 08 02 A6 */	mflr r0
/* 80047964 000435C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80047968 000435C8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004796C 000435CC  7C 9F 23 78 */	mr r31, r4
/* 80047970 000435D0  93 C1 00 08 */	stw r30, 8(r1)
/* 80047974 000435D4  7C 7E 1B 78 */	mr r30, r3
/* 80047978 000435D8  48 00 01 31 */	bl func_80047AA8
/* 8004797C 000435DC  80 1E 00 00 */	lwz r0, 0(r30)
/* 80047980 000435E0  93 FE 00 24 */	stw r31, 0x24(r30)
/* 80047984 000435E4  60 00 00 01 */	ori r0, r0, 1
/* 80047988 000435E8  90 1E 00 00 */	stw r0, 0(r30)
/* 8004798C 000435EC  80 7F 00 94 */	lwz r3, 0x94(r31)
/* 80047990 000435F0  2C 03 00 00 */	cmpwi r3, 0
/* 80047994 000435F4  41 82 00 0C */	beq lbl_800479A0
/* 80047998 000435F8  80 03 00 10 */	lwz r0, 0x10(r3)
/* 8004799C 000435FC  48 00 00 08 */	b lbl_800479A4
lbl_800479A0:
/* 800479A0 00043600  38 00 00 00 */	li r0, 0
lbl_800479A4:
/* 800479A4 00043604  90 1E 00 04 */	stw r0, 4(r30)
/* 800479A8 00043608  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 800479AC 0004360C  80 63 00 94 */	lwz r3, 0x94(r3)
/* 800479B0 00043610  2C 03 00 00 */	cmpwi r3, 0
/* 800479B4 00043614  41 82 00 0C */	beq lbl_800479C0
/* 800479B8 00043618  80 03 00 14 */	lwz r0, 0x14(r3)
/* 800479BC 0004361C  48 00 00 08 */	b lbl_800479C4
lbl_800479C0:
/* 800479C0 00043620  38 00 00 00 */	li r0, 0
lbl_800479C4:
/* 800479C4 00043624  83 FE 00 04 */	lwz r31, 4(r30)
/* 800479C8 00043628  90 1E 00 08 */	stw r0, 8(r30)
/* 800479CC 0004362C  1C 7F 00 24 */	mulli r3, r31, 0x24
/* 800479D0 00043630  38 63 00 10 */	addi r3, r3, 0x10
/* 800479D4 00043634  48 19 30 A1 */	bl func_801DAA74
/* 800479D8 00043638  3C 80 80 04 */	lis r4, lbl_800478C0@ha
/* 800479DC 0004363C  7F E7 FB 78 */	mr r7, r31
/* 800479E0 00043640  38 84 78 C0 */	addi r4, r4, lbl_800478C0@l
/* 800479E4 00043644  38 A0 00 00 */	li r5, 0
/* 800479E8 00043648  38 C0 00 24 */	li r6, 0x24
/* 800479EC 0004364C  48 17 F2 BD */	bl __construct_new_array
/* 800479F0 00043650  80 1E 00 08 */	lwz r0, 8(r30)
/* 800479F4 00043654  90 7E 00 2C */	stw r3, 0x2c(r30)
/* 800479F8 00043658  54 03 10 3A */	slwi r3, r0, 2
/* 800479FC 0004365C  48 19 30 79 */	bl func_801DAA74
/* 80047A00 00043660  90 7E 00 30 */	stw r3, 0x30(r30)
/* 80047A04 00043664  38 C0 00 00 */	li r6, 0
/* 80047A08 00043668  38 A0 00 00 */	li r5, 0
/* 80047A0C 0004366C  38 80 00 00 */	li r4, 0
/* 80047A10 00043670  48 00 00 14 */	b lbl_80047A24
lbl_80047A14:
/* 80047A14 00043674  80 7E 00 30 */	lwz r3, 0x30(r30)
/* 80047A18 00043678  38 C6 00 01 */	addi r6, r6, 1
/* 80047A1C 0004367C  7C 83 29 2E */	stwx r4, r3, r5
/* 80047A20 00043680  38 A5 00 04 */	addi r5, r5, 4
lbl_80047A24:
/* 80047A24 00043684  80 1E 00 08 */	lwz r0, 8(r30)
/* 80047A28 00043688  7C 06 00 40 */	cmplw r6, r0
/* 80047A2C 0004368C  41 80 FF E8 */	blt lbl_80047A14
/* 80047A30 00043690  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80047A34 00043694  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80047A38 00043698  83 C1 00 08 */	lwz r30, 8(r1)
/* 80047A3C 0004369C  7C 08 03 A6 */	mtlr r0
/* 80047A40 000436A0  38 21 00 10 */	addi r1, r1, 0x10
/* 80047A44 000436A4  4E 80 00 20 */	blr

.global func_80047A48
func_80047A48:
/* 80047A48 000436A8  80 03 00 08 */	lwz r0, 8(r3)
/* 80047A4C 000436AC  39 00 00 00 */	li r8, 0
/* 80047A50 000436B0  38 C0 00 00 */	li r6, 0
/* 80047A54 000436B4  7C 09 03 A6 */	mtctr r0
/* 80047A58 000436B8  28 00 00 00 */	cmplwi r0, 0
/* 80047A5C 000436BC  40 81 00 44 */	ble lbl_80047AA0
lbl_80047A60:
/* 80047A60 000436C0  80 E3 00 30 */	lwz r7, 0x30(r3)
/* 80047A64 000436C4  7C A7 30 2E */	lwzx r5, r7, r6
/* 80047A68 000436C8  80 A5 00 14 */	lwz r5, 0x14(r5)
/* 80047A6C 000436CC  2C 05 00 00 */	cmpwi r5, 0
/* 80047A70 000436D0  41 82 00 0C */	beq lbl_80047A7C
/* 80047A74 000436D4  A0 05 00 08 */	lhz r0, 8(r5)
/* 80047A78 000436D8  48 00 00 08 */	b lbl_80047A80
lbl_80047A7C:
/* 80047A7C 000436DC  38 00 00 00 */	li r0, 0
lbl_80047A80:
/* 80047A80 000436E0  7C 04 00 40 */	cmplw r4, r0
/* 80047A84 000436E4  40 82 00 10 */	bne lbl_80047A94
/* 80047A88 000436E8  55 00 10 3A */	slwi r0, r8, 2
/* 80047A8C 000436EC  7C 67 00 2E */	lwzx r3, r7, r0
/* 80047A90 000436F0  4E 80 00 20 */	blr
lbl_80047A94:
/* 80047A94 000436F4  38 C6 00 04 */	addi r6, r6, 4
/* 80047A98 000436F8  39 08 00 01 */	addi r8, r8, 1
/* 80047A9C 000436FC  42 00 FF C4 */	bdnz lbl_80047A60
lbl_80047AA0:
/* 80047AA0 00043700  38 60 00 00 */	li r3, 0
/* 80047AA4 00043704  4E 80 00 20 */	blr

.global func_80047AA8
func_80047AA8:
/* 80047AA8 00043708  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80047AAC 0004370C  7C 08 02 A6 */	mflr r0
/* 80047AB0 00043710  90 01 00 24 */	stw r0, 0x24(r1)
/* 80047AB4 00043714  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80047AB8 00043718  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80047ABC 0004371C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80047AC0 00043720  7C 7D 1B 78 */	mr r29, r3
/* 80047AC4 00043724  80 03 00 00 */	lwz r0, 0(r3)
/* 80047AC8 00043728  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 80047ACC 0004372C  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 80047AD0 00043730  2C 04 00 00 */	cmpwi r4, 0
/* 80047AD4 00043734  90 03 00 00 */	stw r0, 0(r3)
/* 80047AD8 00043738  41 82 00 18 */	beq lbl_80047AF0
/* 80047ADC 0004373C  41 82 00 0C */	beq lbl_80047AE8
/* 80047AE0 00043740  38 64 FF F0 */	addi r3, r4, -16
/* 80047AE4 00043744  48 19 2F D9 */	bl func_801DAABC
lbl_80047AE8:
/* 80047AE8 00043748  38 00 00 00 */	li r0, 0
/* 80047AEC 0004374C  90 1D 00 2C */	stw r0, 0x2c(r29)
lbl_80047AF0:
/* 80047AF0 00043750  80 1D 00 30 */	lwz r0, 0x30(r29)
/* 80047AF4 00043754  2C 00 00 00 */	cmpwi r0, 0
/* 80047AF8 00043758  41 82 00 58 */	beq lbl_80047B50
/* 80047AFC 0004375C  3B C0 00 00 */	li r30, 0
/* 80047B00 00043760  3B E0 00 00 */	li r31, 0
/* 80047B04 00043764  48 00 00 30 */	b lbl_80047B34
lbl_80047B08:
/* 80047B08 00043768  80 7D 00 30 */	lwz r3, 0x30(r29)
/* 80047B0C 0004376C  7C 63 F8 2E */	lwzx r3, r3, r31
/* 80047B10 00043770  2C 03 00 00 */	cmpwi r3, 0
/* 80047B14 00043774  41 82 00 18 */	beq lbl_80047B2C
/* 80047B18 00043778  81 83 00 28 */	lwz r12, 0x28(r3)
/* 80047B1C 0004377C  38 80 00 01 */	li r4, 1
/* 80047B20 00043780  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 80047B24 00043784  7D 89 03 A6 */	mtctr r12
/* 80047B28 00043788  4E 80 04 21 */	bctrl
lbl_80047B2C:
/* 80047B2C 0004378C  3B FF 00 04 */	addi r31, r31, 4
/* 80047B30 00043790  3B DE 00 01 */	addi r30, r30, 1
lbl_80047B34:
/* 80047B34 00043794  80 1D 00 08 */	lwz r0, 8(r29)
/* 80047B38 00043798  7C 1E 00 40 */	cmplw r30, r0
/* 80047B3C 0004379C  41 80 FF CC */	blt lbl_80047B08
/* 80047B40 000437A0  80 7D 00 30 */	lwz r3, 0x30(r29)
/* 80047B44 000437A4  48 19 2F 79 */	bl func_801DAABC
/* 80047B48 000437A8  38 00 00 00 */	li r0, 0
/* 80047B4C 000437AC  90 1D 00 30 */	stw r0, 0x30(r29)
lbl_80047B50:
/* 80047B50 000437B0  38 00 00 00 */	li r0, 0
/* 80047B54 000437B4  90 1D 00 2C */	stw r0, 0x2c(r29)
/* 80047B58 000437B8  90 1D 00 00 */	stw r0, 0(r29)
/* 80047B5C 000437BC  90 1D 00 34 */	stw r0, 0x34(r29)
/* 80047B60 000437C0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80047B64 000437C4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80047B68 000437C8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80047B6C 000437CC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80047B70 000437D0  7C 08 03 A6 */	mtlr r0
/* 80047B74 000437D4  38 21 00 20 */	addi r1, r1, 0x20
/* 80047B78 000437D8  4E 80 00 20 */	blr

.global func_80047B7C
func_80047B7C:
/* 80047B7C 000437DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80047B80 000437E0  7C 08 02 A6 */	mflr r0
/* 80047B84 000437E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80047B88 000437E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80047B8C 000437EC  7C 9F 23 78 */	mr r31, r4
/* 80047B90 000437F0  93 C1 00 08 */	stw r30, 8(r1)
/* 80047B94 000437F4  7C 7E 1B 78 */	mr r30, r3
/* 80047B98 000437F8  48 00 5C 75 */	bl func_8004D80C
/* 80047B9C 000437FC  7F E4 FB 78 */	mr r4, r31
/* 80047BA0 00043800  48 00 5E E9 */	bl func_8004DA88
/* 80047BA4 00043804  2C 03 00 00 */	cmpwi r3, 0
/* 80047BA8 00043808  7C 64 1B 78 */	mr r4, r3
/* 80047BAC 0004380C  41 82 00 14 */	beq lbl_80047BC0
/* 80047BB0 00043810  7F C3 F3 78 */	mr r3, r30
/* 80047BB4 00043814  4B FF FD A9 */	bl func_8004795C
/* 80047BB8 00043818  38 60 00 01 */	li r3, 1
/* 80047BBC 0004381C  48 00 00 08 */	b lbl_80047BC4
lbl_80047BC0:
/* 80047BC0 00043820  38 60 00 00 */	li r3, 0
lbl_80047BC4:
/* 80047BC4 00043824  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80047BC8 00043828  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80047BCC 0004382C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80047BD0 00043830  7C 08 03 A6 */	mtlr r0
/* 80047BD4 00043834  38 21 00 10 */	addi r1, r1, 0x10
/* 80047BD8 00043838  4E 80 00 20 */	blr

.global func_80047BDC
func_80047BDC:
/* 80047BDC 0004383C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80047BE0 00043840  7C 08 02 A6 */	mflr r0
/* 80047BE4 00043844  90 01 00 24 */	stw r0, 0x24(r1)
/* 80047BE8 00043848  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80047BEC 0004384C  7C BF 2B 78 */	mr r31, r5
/* 80047BF0 00043850  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80047BF4 00043854  7C 9E 23 78 */	mr r30, r4
/* 80047BF8 00043858  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80047BFC 0004385C  7C 7D 1B 78 */	mr r29, r3
/* 80047C00 00043860  48 00 5C 0D */	bl func_8004D80C
/* 80047C04 00043864  7F C4 F3 78 */	mr r4, r30
/* 80047C08 00043868  7F E5 FB 78 */	mr r5, r31
/* 80047C0C 0004386C  48 00 5F DD */	bl func_8004DBE8
/* 80047C10 00043870  2C 03 00 00 */	cmpwi r3, 0
/* 80047C14 00043874  7C 64 1B 78 */	mr r4, r3
/* 80047C18 00043878  41 82 00 14 */	beq lbl_80047C2C
/* 80047C1C 0004387C  7F A3 EB 78 */	mr r3, r29
/* 80047C20 00043880  4B FF FD 3D */	bl func_8004795C
/* 80047C24 00043884  38 60 00 01 */	li r3, 1
/* 80047C28 00043888  48 00 00 08 */	b lbl_80047C30
lbl_80047C2C:
/* 80047C2C 0004388C  38 60 00 00 */	li r3, 0
lbl_80047C30:
/* 80047C30 00043890  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80047C34 00043894  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80047C38 00043898  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80047C3C 0004389C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80047C40 000438A0  7C 08 03 A6 */	mtlr r0
/* 80047C44 000438A4  38 21 00 20 */	addi r1, r1, 0x20
/* 80047C48 000438A8  4E 80 00 20 */	blr

.global func_80047C4C
func_80047C4C:
/* 80047C4C 000438AC  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80047C50 000438B0  7C 08 02 A6 */	mflr r0
/* 80047C54 000438B4  90 01 00 54 */	stw r0, 0x54(r1)
/* 80047C58 000438B8  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80047C5C 000438BC  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80047C60 000438C0  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 80047C64 000438C4  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 80047C68 000438C8  39 61 00 30 */	addi r11, r1, 0x30
/* 80047C6C 000438CC  48 17 F4 B1 */	bl _savegpr_24
/* 80047C70 000438D0  FF C0 08 90 */	fmr f30, f1
/* 80047C74 000438D4  7C 78 1B 78 */	mr r24, r3
/* 80047C78 000438D8  7C 99 23 78 */	mr r25, r4
/* 80047C7C 000438DC  7C BA 2B 78 */	mr r26, r5
/* 80047C80 000438E0  7C DB 33 78 */	mr r27, r6
/* 80047C84 000438E4  7C FC 3B 78 */	mr r28, r7
/* 80047C88 000438E8  7D 1D 43 78 */	mr r29, r8
/* 80047C8C 000438EC  3F E0 80 41 */	lis r31, 0x8041
/* 80047C90 000438F0  48 00 02 24 */	b lbl_80047EB4
lbl_80047C94:
/* 80047C94 000438F4  A0 19 00 0A */	lhz r0, 0xa(r25)
/* 80047C98 000438F8  28 00 00 06 */	cmplwi r0, 6
/* 80047C9C 000438FC  41 81 00 DC */	bgt lbl_80047D78
/* 80047CA0 00043900  38 7F A4 48 */	addi r3, r31, -23480
/* 80047CA4 00043904  54 00 10 3A */	slwi r0, r0, 2
/* 80047CA8 00043908  7C 63 00 2E */	lwzx r3, r3, r0
/* 80047CAC 0004390C  7C 69 03 A6 */	mtctr r3
/* 80047CB0 00043910  4E 80 04 20 */	bctr
/* 80047CB4 00043914  38 60 00 2C */	li r3, 0x2c
/* 80047CB8 00043918  48 19 2D 79 */	bl func_801DAA30
/* 80047CBC 0004391C  2C 03 00 00 */	cmpwi r3, 0
/* 80047CC0 00043920  41 82 00 08 */	beq lbl_80047CC8
/* 80047CC4 00043924  48 00 13 C1 */	bl func_80049084
lbl_80047CC8:
/* 80047CC8 00043928  7C 7E 1B 78 */	mr r30, r3
/* 80047CCC 0004392C  48 00 00 C4 */	b lbl_80047D90
/* 80047CD0 00043930  38 60 00 3C */	li r3, 0x3c
/* 80047CD4 00043934  48 19 2D 5D */	bl func_801DAA30
/* 80047CD8 00043938  2C 03 00 00 */	cmpwi r3, 0
/* 80047CDC 0004393C  41 82 00 08 */	beq lbl_80047CE4
/* 80047CE0 00043940  48 00 17 A9 */	bl func_80049488
lbl_80047CE4:
/* 80047CE4 00043944  7C 7E 1B 78 */	mr r30, r3
/* 80047CE8 00043948  48 00 00 A8 */	b lbl_80047D90
/* 80047CEC 0004394C  38 60 00 30 */	li r3, 0x30
/* 80047CF0 00043950  48 19 2D 41 */	bl func_801DAA30
/* 80047CF4 00043954  2C 03 00 00 */	cmpwi r3, 0
/* 80047CF8 00043958  41 82 00 08 */	beq lbl_80047D00
/* 80047CFC 0004395C  48 00 26 D1 */	bl func_8004A3CC
lbl_80047D00:
/* 80047D00 00043960  7C 7E 1B 78 */	mr r30, r3
/* 80047D04 00043964  48 00 00 8C */	b lbl_80047D90
/* 80047D08 00043968  38 60 00 30 */	li r3, 0x30
/* 80047D0C 0004396C  48 19 2D 25 */	bl func_801DAA30
/* 80047D10 00043970  2C 03 00 00 */	cmpwi r3, 0
/* 80047D14 00043974  41 82 00 08 */	beq lbl_80047D1C
/* 80047D18 00043978  48 00 30 A5 */	bl func_8004ADBC
lbl_80047D1C:
/* 80047D1C 0004397C  7C 7E 1B 78 */	mr r30, r3
/* 80047D20 00043980  48 00 00 70 */	b lbl_80047D90
/* 80047D24 00043984  38 60 00 2C */	li r3, 0x2c
/* 80047D28 00043988  48 19 2D 09 */	bl func_801DAA30
/* 80047D2C 0004398C  2C 03 00 00 */	cmpwi r3, 0
/* 80047D30 00043990  41 82 00 08 */	beq lbl_80047D38
/* 80047D34 00043994  48 00 2E 5D */	bl func_8004AB90
lbl_80047D38:
/* 80047D38 00043998  7C 7E 1B 78 */	mr r30, r3
/* 80047D3C 0004399C  48 00 00 54 */	b lbl_80047D90
/* 80047D40 000439A0  38 60 00 2C */	li r3, 0x2c
/* 80047D44 000439A4  48 19 2C ED */	bl func_801DAA30
/* 80047D48 000439A8  2C 03 00 00 */	cmpwi r3, 0
/* 80047D4C 000439AC  41 82 00 08 */	beq lbl_80047D54
/* 80047D50 000439B0  48 00 2A 11 */	bl func_8004A760
lbl_80047D54:
/* 80047D54 000439B4  7C 7E 1B 78 */	mr r30, r3
/* 80047D58 000439B8  48 00 00 38 */	b lbl_80047D90
/* 80047D5C 000439BC  38 60 00 30 */	li r3, 0x30
/* 80047D60 000439C0  48 19 2C D1 */	bl func_801DAA30
/* 80047D64 000439C4  2C 03 00 00 */	cmpwi r3, 0
/* 80047D68 000439C8  41 82 00 08 */	beq lbl_80047D70
/* 80047D6C 000439CC  48 00 2C 29 */	bl func_8004A994
lbl_80047D70:
/* 80047D70 000439D0  7C 7E 1B 78 */	mr r30, r3
/* 80047D74 000439D4  48 00 00 1C */	b lbl_80047D90
lbl_80047D78:
/* 80047D78 000439D8  38 60 00 2C */	li r3, 0x2c
/* 80047D7C 000439DC  48 19 2C B5 */	bl func_801DAA30
/* 80047D80 000439E0  2C 03 00 00 */	cmpwi r3, 0
/* 80047D84 000439E4  41 82 00 08 */	beq lbl_80047D8C
/* 80047D88 000439E8  48 00 12 FD */	bl func_80049084
lbl_80047D8C:
/* 80047D8C 000439EC  7C 7E 1B 78 */	mr r30, r3
lbl_80047D90:
/* 80047D90 000439F0  A0 19 00 08 */	lhz r0, 8(r25)
/* 80047D94 000439F4  7F C3 F3 78 */	mr r3, r30
/* 80047D98 000439F8  80 D8 00 30 */	lwz r6, 0x30(r24)
/* 80047D9C 000439FC  7F 24 CB 78 */	mr r4, r25
/* 80047DA0 00043A00  54 00 10 3A */	slwi r0, r0, 2
/* 80047DA4 00043A04  7F 05 C3 78 */	mr r5, r24
/* 80047DA8 00043A08  7F C6 01 2E */	stwx r30, r6, r0
/* 80047DAC 00043A0C  48 00 13 7D */	bl func_80049128
/* 80047DB0 00043A10  93 9E 00 20 */	stw r28, 0x20(r30)
/* 80047DB4 00043A14  88 19 00 0E */	lbz r0, 0xe(r25)
/* 80047DB8 00043A18  28 00 00 01 */	cmplwi r0, 1
/* 80047DBC 00043A1C  40 82 00 60 */	bne lbl_80047E1C
/* 80047DC0 00043A20  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 80047DC4 00043A24  7F C3 F3 78 */	mr r3, r30
/* 80047DC8 00043A28  81 8C 00 24 */	lwz r12, 0x24(r12)
/* 80047DCC 00043A2C  7D 89 03 A6 */	mtctr r12
/* 80047DD0 00043A30  4E 80 04 21 */	bctrl
/* 80047DD4 00043A34  C0 19 00 10 */	lfs f0, 0x10(r25)
/* 80047DD8 00043A38  88 19 00 0F */	lbz r0, 0xf(r25)
/* 80047DDC 00043A3C  EC 20 00 72 */	fmuls f1, f0, f1
/* 80047DE0 00043A40  C0 19 00 14 */	lfs f0, 0x14(r25)
/* 80047DE4 00043A44  2C 00 00 02 */	cmpwi r0, 2
/* 80047DE8 00043A48  EF FE 08 2A */	fadds f31, f30, f1
/* 80047DEC 00043A4C  EF FF 00 2A */	fadds f31, f31, f0
/* 80047DF0 00043A50  41 82 00 84 */	beq lbl_80047E74
/* 80047DF4 00043A54  40 80 00 80 */	bge lbl_80047E74
/* 80047DF8 00043A58  2C 00 00 01 */	cmpwi r0, 1
/* 80047DFC 00043A5C  40 80 00 08 */	bge lbl_80047E04
/* 80047E00 00043A60  48 00 00 74 */	b lbl_80047E74
lbl_80047E04:
/* 80047E04 00043A64  88 9A 00 05 */	lbz r4, 5(r26)
/* 80047E08 00043A68  7F 63 DB 78 */	mr r3, r27
/* 80047E0C 00043A6C  80 B9 00 18 */	lwz r5, 0x18(r25)
/* 80047E10 00043A70  4B FF 20 71 */	bl func_80039E80
/* 80047E14 00043A74  EF FF 08 2A */	fadds f31, f31, f1
/* 80047E18 00043A78  48 00 00 5C */	b lbl_80047E74
lbl_80047E1C:
/* 80047E1C 00043A7C  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 80047E20 00043A80  7F C3 F3 78 */	mr r3, r30
/* 80047E24 00043A84  81 8C 00 24 */	lwz r12, 0x24(r12)
/* 80047E28 00043A88  7D 89 03 A6 */	mtctr r12
/* 80047E2C 00043A8C  4E 80 04 21 */	bctrl
/* 80047E30 00043A90  C0 19 00 10 */	lfs f0, 0x10(r25)
/* 80047E34 00043A94  88 19 00 0F */	lbz r0, 0xf(r25)
/* 80047E38 00043A98  EC 20 00 72 */	fmuls f1, f0, f1
/* 80047E3C 00043A9C  C0 19 00 14 */	lfs f0, 0x14(r25)
/* 80047E40 00043AA0  2C 00 00 02 */	cmpwi r0, 2
/* 80047E44 00043AA4  EF FE 08 2A */	fadds f31, f30, f1
/* 80047E48 00043AA8  EF FF 00 28 */	fsubs f31, f31, f0
/* 80047E4C 00043AAC  41 82 00 28 */	beq lbl_80047E74
/* 80047E50 00043AB0  40 80 00 24 */	bge lbl_80047E74
/* 80047E54 00043AB4  2C 00 00 01 */	cmpwi r0, 1
/* 80047E58 00043AB8  40 80 00 08 */	bge lbl_80047E60
/* 80047E5C 00043ABC  48 00 00 18 */	b lbl_80047E74
lbl_80047E60:
/* 80047E60 00043AC0  88 9A 00 05 */	lbz r4, 5(r26)
/* 80047E64 00043AC4  7F 63 DB 78 */	mr r3, r27
/* 80047E68 00043AC8  80 B9 00 18 */	lwz r5, 0x18(r25)
/* 80047E6C 00043ACC  4B FF 20 15 */	bl func_80039E80
/* 80047E70 00043AD0  EF FF 08 2A */	fadds f31, f31, f1
lbl_80047E74:
/* 80047E74 00043AD4  D3 FE 00 0C */	stfs f31, 0xc(r30)
/* 80047E78 00043AD8  C0 1D 00 00 */	lfs f0, 0(r29)
/* 80047E7C 00043ADC  FC 00 F8 40 */	fcmpo cr0, f0, f31
/* 80047E80 00043AE0  40 81 00 08 */	ble lbl_80047E88
/* 80047E84 00043AE4  D3 FD 00 00 */	stfs f31, 0(r29)
lbl_80047E88:
/* 80047E88 00043AE8  80 99 00 28 */	lwz r4, 0x28(r25)
/* 80047E8C 00043AEC  2C 04 00 00 */	cmpwi r4, 0
/* 80047E90 00043AF0  41 82 00 20 */	beq lbl_80047EB0
/* 80047E94 00043AF4  FC 20 F8 90 */	fmr f1, f31
/* 80047E98 00043AF8  7F 03 C3 78 */	mr r3, r24
/* 80047E9C 00043AFC  7F 45 D3 78 */	mr r5, r26
/* 80047EA0 00043B00  7F 66 DB 78 */	mr r6, r27
/* 80047EA4 00043B04  7F 87 E3 78 */	mr r7, r28
/* 80047EA8 00043B08  7F A8 EB 78 */	mr r8, r29
/* 80047EAC 00043B0C  4B FF FD A1 */	bl func_80047C4C
lbl_80047EB0:
/* 80047EB0 00043B10  83 39 00 20 */	lwz r25, 0x20(r25)
lbl_80047EB4:
/* 80047EB4 00043B14  2C 19 00 00 */	cmpwi r25, 0
/* 80047EB8 00043B18  40 82 FD DC */	bne lbl_80047C94
/* 80047EBC 00043B1C  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80047EC0 00043B20  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 80047EC4 00043B24  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 80047EC8 00043B28  39 61 00 30 */	addi r11, r1, 0x30
/* 80047ECC 00043B2C  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 80047ED0 00043B30  48 17 F2 99 */	bl _restgpr_24
/* 80047ED4 00043B34  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80047ED8 00043B38  7C 08 03 A6 */	mtlr r0
/* 80047EDC 00043B3C  38 21 00 50 */	addi r1, r1, 0x50
/* 80047EE0 00043B40  4E 80 00 20 */	blr

.global func_80047EE4
func_80047EE4:
/* 80047EE4 00043B44  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 80047EE8 00043B48  7C 08 02 A6 */	mflr r0
/* 80047EEC 00043B4C  90 01 00 74 */	stw r0, 0x74(r1)
/* 80047EF0 00043B50  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 80047EF4 00043B54  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 80047EF8 00043B58  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 80047EFC 00043B5C  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 80047F00 00043B60  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 80047F04 00043B64  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 80047F08 00043B68  39 61 00 40 */	addi r11, r1, 0x40
/* 80047F0C 00043B6C  48 17 F2 09 */	bl _savegpr_22
/* 80047F10 00043B70  C3 A2 83 C0 */	lfs f29, lbl_806409C0-_SDA2_BASE_(r2)
/* 80047F14 00043B74  7C 78 1B 78 */	mr r24, r3
/* 80047F18 00043B78  80 63 00 24 */	lwz r3, 0x24(r3)
/* 80047F1C 00043B7C  7C 99 23 78 */	mr r25, r4
/* 80047F20 00043B80  FF E0 E8 90 */	fmr f31, f29
/* 80047F24 00043B84  C3 C2 83 C4 */	lfs f30, lbl_806409C4-_SDA2_BASE_(r2)
/* 80047F28 00043B88  83 63 00 98 */	lwz r27, 0x98(r3)
/* 80047F2C 00043B8C  3B C0 00 00 */	li r30, 0
/* 80047F30 00043B90  3B A0 00 00 */	li r29, 0
/* 80047F34 00043B94  3B 80 00 00 */	li r28, 0
/* 80047F38 00043B98  3B E0 00 00 */	li r31, 0
/* 80047F3C 00043B9C  3A E0 00 00 */	li r23, 0
/* 80047F40 00043BA0  3A C0 00 0A */	li r22, 0xa
/* 80047F44 00043BA4  48 00 01 64 */	b lbl_800480A8
lbl_80047F48:
/* 80047F48 00043BA8  80 18 00 2C */	lwz r0, 0x2c(r24)
/* 80047F4C 00043BAC  2C 1E 00 00 */	cmpwi r30, 0
/* 80047F50 00043BB0  7F 40 FA 14 */	add r26, r0, r31
/* 80047F54 00043BB4  41 82 00 14 */	beq lbl_80047F68
/* 80047F58 00043BB8  80 1A 00 10 */	lwz r0, 0x10(r26)
/* 80047F5C 00043BBC  3B C0 00 00 */	li r30, 0
/* 80047F60 00043BC0  60 00 00 01 */	ori r0, r0, 1
/* 80047F64 00043BC4  90 1A 00 10 */	stw r0, 0x10(r26)
lbl_80047F68:
/* 80047F68 00043BC8  2C 1D 00 00 */	cmpwi r29, 0
/* 80047F6C 00043BCC  41 82 00 10 */	beq lbl_80047F7C
/* 80047F70 00043BD0  80 1A 00 10 */	lwz r0, 0x10(r26)
/* 80047F74 00043BD4  60 00 00 04 */	ori r0, r0, 4
/* 80047F78 00043BD8  90 1A 00 10 */	stw r0, 0x10(r26)
lbl_80047F7C:
/* 80047F7C 00043BDC  93 9A 00 0C */	stw r28, 0xc(r26)
/* 80047F80 00043BE0  80 1B 00 08 */	lwz r0, 8(r27)
/* 80047F84 00043BE4  2C 00 00 00 */	cmpwi r0, 0
/* 80047F88 00043BE8  41 82 00 0C */	beq lbl_80047F94
/* 80047F8C 00043BEC  38 1A FF DC */	addi r0, r26, -36
/* 80047F90 00043BF0  90 1A 00 04 */	stw r0, 4(r26)
lbl_80047F94:
/* 80047F94 00043BF4  80 1B 00 0C */	lwz r0, 0xc(r27)
/* 80047F98 00043BF8  2C 00 00 00 */	cmpwi r0, 0
/* 80047F9C 00043BFC  41 82 00 0C */	beq lbl_80047FA8
/* 80047FA0 00043C00  38 1A 00 24 */	addi r0, r26, 0x24
/* 80047FA4 00043C04  90 1A 00 08 */	stw r0, 8(r26)
lbl_80047FA8:
/* 80047FA8 00043C08  93 7A 00 00 */	stw r27, 0(r26)
/* 80047FAC 00043C0C  80 1B 00 10 */	lwz r0, 0x10(r27)
/* 80047FB0 00043C10  2C 00 00 00 */	cmpwi r0, 0
/* 80047FB4 00043C14  41 82 00 30 */	beq lbl_80047FE4
/* 80047FB8 00043C18  D3 C1 00 08 */	stfs f30, 8(r1)
/* 80047FBC 00043C1C  FC 20 E8 90 */	fmr f1, f29
/* 80047FC0 00043C20  7F 03 C3 78 */	mr r3, r24
/* 80047FC4 00043C24  7F 65 DB 78 */	mr r5, r27
/* 80047FC8 00043C28  80 9B 00 10 */	lwz r4, 0x10(r27)
/* 80047FCC 00043C2C  7F 26 CB 78 */	mr r6, r25
/* 80047FD0 00043C30  7F 87 E3 78 */	mr r7, r28
/* 80047FD4 00043C34  39 01 00 08 */	addi r8, r1, 8
/* 80047FD8 00043C38  4B FF FC 75 */	bl func_80047C4C
/* 80047FDC 00043C3C  C0 01 00 08 */	lfs f0, 8(r1)
/* 80047FE0 00043C40  D0 1A 00 18 */	stfs f0, 0x18(r26)
lbl_80047FE4:
/* 80047FE4 00043C44  D3 BB 00 18 */	stfs f29, 0x18(r27)
/* 80047FE8 00043C48  D3 BA 00 14 */	stfs f29, 0x14(r26)
/* 80047FEC 00043C4C  D3 FA 00 1C */	stfs f31, 0x1c(r26)
/* 80047FF0 00043C50  D3 FA 00 20 */	stfs f31, 0x20(r26)
/* 80047FF4 00043C54  88 7B 00 05 */	lbz r3, 5(r27)
/* 80047FF8 00043C58  38 03 00 EF */	addi r0, r3, 0xef
/* 80047FFC 00043C5C  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 80048000 00043C60  28 00 00 01 */	cmplwi r0, 1
/* 80048004 00043C64  41 81 00 20 */	bgt lbl_80048024
/* 80048008 00043C68  80 1A 00 10 */	lwz r0, 0x10(r26)
/* 8004800C 00043C6C  FF A0 F8 90 */	fmr f29, f31
/* 80048010 00043C70  3B C0 00 01 */	li r30, 1
/* 80048014 00043C74  3B A0 00 01 */	li r29, 1
/* 80048018 00043C78  60 00 00 02 */	ori r0, r0, 2
/* 8004801C 00043C7C  90 1A 00 10 */	stw r0, 0x10(r26)
/* 80048020 00043C80  48 00 00 7C */	b lbl_8004809C
lbl_80048024:
/* 80048024 00043C84  2C 19 00 00 */	cmpwi r25, 0
/* 80048028 00043C88  41 82 00 74 */	beq lbl_8004809C
/* 8004802C 00043C8C  2C 03 00 00 */	cmpwi r3, 0
/* 80048030 00043C90  40 82 00 34 */	bne lbl_80048064
/* 80048034 00043C94  A0 19 05 0C */	lhz r0, 0x50c(r25)
/* 80048038 00043C98  28 00 00 01 */	cmplwi r0, 1
/* 8004803C 00043C9C  40 82 00 28 */	bne lbl_80048064
/* 80048040 00043CA0  80 19 00 00 */	lwz r0, 0(r25)
/* 80048044 00043CA4  54 00 04 E7 */	rlwinm. r0, r0, 0, 0x13, 0x13
/* 80048048 00043CA8  41 82 00 40 */	beq lbl_80048088
/* 8004804C 00043CAC  7F 23 CB 78 */	mr r3, r25
/* 80048050 00043CB0  4B FF 5F 71 */	bl func_8003DFC0
/* 80048054 00043CB4  2C 03 00 00 */	cmpwi r3, 0
/* 80048058 00043CB8  41 82 00 30 */	beq lbl_80048088
/* 8004805C 00043CBC  9A DB 00 05 */	stb r22, 5(r27)
/* 80048060 00043CC0  48 00 00 28 */	b lbl_80048088
lbl_80048064:
/* 80048064 00043CC4  28 03 00 0A */	cmplwi r3, 0xa
/* 80048068 00043CC8  40 82 00 20 */	bne lbl_80048088
/* 8004806C 00043CCC  A0 19 05 0C */	lhz r0, 0x50c(r25)
/* 80048070 00043CD0  28 00 00 01 */	cmplwi r0, 1
/* 80048074 00043CD4  40 82 00 14 */	bne lbl_80048088
/* 80048078 00043CD8  80 19 00 00 */	lwz r0, 0(r25)
/* 8004807C 00043CDC  54 00 04 E7 */	rlwinm. r0, r0, 0, 0x13, 0x13
/* 80048080 00043CE0  40 82 00 08 */	bne lbl_80048088
/* 80048084 00043CE4  9A FB 00 05 */	stb r23, 5(r27)
lbl_80048088:
/* 80048088 00043CE8  88 9B 00 05 */	lbz r4, 5(r27)
/* 8004808C 00043CEC  7F 23 CB 78 */	mr r3, r25
/* 80048090 00043CF0  38 A0 FF FF */	li r5, -1
/* 80048094 00043CF4  4B FF 1D ED */	bl func_80039E80
/* 80048098 00043CF8  EF BD 08 2A */	fadds f29, f29, f1
lbl_8004809C:
/* 8004809C 00043CFC  83 7B 00 0C */	lwz r27, 0xc(r27)
/* 800480A0 00043D00  3B FF 00 24 */	addi r31, r31, 0x24
/* 800480A4 00043D04  3B 9C 00 01 */	addi r28, r28, 1
lbl_800480A8:
/* 800480A8 00043D08  2C 1B 00 00 */	cmpwi r27, 0
/* 800480AC 00043D0C  40 82 FE 9C */	bne lbl_80047F48
/* 800480B0 00043D10  3A E0 00 00 */	li r23, 0
/* 800480B4 00043D14  3A C0 00 00 */	li r22, 0
/* 800480B8 00043D18  48 00 00 2C */	b lbl_800480E4
lbl_800480BC:
/* 800480BC 00043D1C  80 78 00 30 */	lwz r3, 0x30(r24)
/* 800480C0 00043D20  7C 63 B0 2E */	lwzx r3, r3, r22
/* 800480C4 00043D24  2C 03 00 00 */	cmpwi r3, 0
/* 800480C8 00043D28  41 82 00 14 */	beq lbl_800480DC
/* 800480CC 00043D2C  81 83 00 28 */	lwz r12, 0x28(r3)
/* 800480D0 00043D30  81 8C 00 20 */	lwz r12, 0x20(r12)
/* 800480D4 00043D34  7D 89 03 A6 */	mtctr r12
/* 800480D8 00043D38  4E 80 04 21 */	bctrl
lbl_800480DC:
/* 800480DC 00043D3C  3A D6 00 04 */	addi r22, r22, 4
/* 800480E0 00043D40  3A F7 00 01 */	addi r23, r23, 1
lbl_800480E4:
/* 800480E4 00043D44  80 18 00 08 */	lwz r0, 8(r24)
/* 800480E8 00043D48  7C 17 00 40 */	cmplw r23, r0
/* 800480EC 00043D4C  41 80 FF D0 */	blt lbl_800480BC
/* 800480F0 00043D50  C0 02 83 C8 */	lfs f0, lbl_806409C8-_SDA2_BASE_(r2)
/* 800480F4 00043D54  38 C0 00 00 */	li r6, 0
/* 800480F8 00043D58  38 A0 00 00 */	li r5, 0
/* 800480FC 00043D5C  D0 18 00 10 */	stfs f0, 0x10(r24)
/* 80048100 00043D60  48 00 00 44 */	b lbl_80048144
lbl_80048104:
/* 80048104 00043D64  80 98 00 30 */	lwz r4, 0x30(r24)
/* 80048108 00043D68  80 78 00 2C */	lwz r3, 0x2c(r24)
/* 8004810C 00043D6C  7C 84 28 2E */	lwzx r4, r4, r5
/* 80048110 00043D70  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80048114 00043D74  1C 00 00 24 */	mulli r0, r0, 0x24
/* 80048118 00043D78  7C 63 02 14 */	add r3, r3, r0
/* 8004811C 00043D7C  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80048120 00043D80  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 80048124 00043D84  40 82 00 18 */	bne lbl_8004813C
/* 80048128 00043D88  C0 24 00 0C */	lfs f1, 0xc(r4)
/* 8004812C 00043D8C  C0 18 00 10 */	lfs f0, 0x10(r24)
/* 80048130 00043D90  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 80048134 00043D94  40 81 00 08 */	ble lbl_8004813C
/* 80048138 00043D98  D0 38 00 10 */	stfs f1, 0x10(r24)
lbl_8004813C:
/* 8004813C 00043D9C  38 A5 00 04 */	addi r5, r5, 4
/* 80048140 00043DA0  38 C6 00 01 */	addi r6, r6, 1
lbl_80048144:
/* 80048144 00043DA4  80 78 00 24 */	lwz r3, 0x24(r24)
/* 80048148 00043DA8  80 63 00 94 */	lwz r3, 0x94(r3)
/* 8004814C 00043DAC  2C 03 00 00 */	cmpwi r3, 0
/* 80048150 00043DB0  40 82 00 0C */	bne lbl_8004815C
/* 80048154 00043DB4  38 00 00 00 */	li r0, 0
/* 80048158 00043DB8  48 00 00 08 */	b lbl_80048160
lbl_8004815C:
/* 8004815C 00043DBC  80 03 00 14 */	lwz r0, 0x14(r3)
lbl_80048160:
/* 80048160 00043DC0  7C 06 00 40 */	cmplw r6, r0
/* 80048164 00043DC4  41 80 FF A0 */	blt lbl_80048104
/* 80048168 00043DC8  93 38 00 34 */	stw r25, 0x34(r24)
/* 8004816C 00043DCC  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 80048170 00043DD0  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 80048174 00043DD4  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 80048178 00043DD8  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 8004817C 00043DDC  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 80048180 00043DE0  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 80048184 00043DE4  39 61 00 40 */	addi r11, r1, 0x40
/* 80048188 00043DE8  48 17 EF D9 */	bl _restgpr_22
/* 8004818C 00043DEC  80 01 00 74 */	lwz r0, 0x74(r1)
/* 80048190 00043DF0  7C 08 03 A6 */	mtlr r0
/* 80048194 00043DF4  38 21 00 70 */	addi r1, r1, 0x70
/* 80048198 00043DF8  4E 80 00 20 */	blr
/* 8004819C 00043DFC  4E 80 00 20 */	blr

.global func_800481A0
func_800481A0:
/* 800481A0 00043E00  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800481A4 00043E04  7C 08 02 A6 */	mflr r0
/* 800481A8 00043E08  90 01 00 14 */	stw r0, 0x14(r1)
/* 800481AC 00043E0C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800481B0 00043E10  7C 7F 1B 78 */	mr r31, r3
/* 800481B4 00043E14  4B FE AE D5 */	bl func_80033088
/* 800481B8 00043E18  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 800481BC 00043E1C  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 800481C0 00043E20  4B FE B9 BD */	bl func_80033B7C
/* 800481C4 00043E24  2C 03 00 00 */	cmpwi r3, 0
/* 800481C8 00043E28  40 82 00 0C */	bne lbl_800481D4
/* 800481CC 00043E2C  38 60 00 00 */	li r3, 0
/* 800481D0 00043E30  48 00 00 08 */	b lbl_800481D8
lbl_800481D4:
/* 800481D4 00043E34  4B FE D7 9D */	bl func_80035970
lbl_800481D8:
/* 800481D8 00043E38  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800481DC 00043E3C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800481E0 00043E40  7C 08 03 A6 */	mtlr r0
/* 800481E4 00043E44  38 21 00 10 */	addi r1, r1, 0x10
/* 800481E8 00043E48  4E 80 00 20 */	blr

.global func_800481EC
func_800481EC:
/* 800481EC 00043E4C  C0 23 00 10 */	lfs f1, 0x10(r3)
/* 800481F0 00043E50  C0 02 83 C0 */	lfs f0, lbl_806409C0-_SDA2_BASE_(r2)
/* 800481F4 00043E54  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800481F8 00043E58  40 80 00 08 */	bge lbl_80048200
/* 800481FC 00043E5C  48 00 00 0C */	b func_80048208
lbl_80048200:
/* 80048200 00043E60  FC 20 00 90 */	fmr f1, f0
/* 80048204 00043E64  48 00 00 04 */	b func_80048208

.global func_80048208
func_80048208:
/* 80048208 00043E68  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004820C 00043E6C  7C 08 02 A6 */	mflr r0
/* 80048210 00043E70  C0 02 83 C0 */	lfs f0, lbl_806409C0-_SDA2_BASE_(r2)
/* 80048214 00043E74  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048218 00043E78  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004821C 00043E7C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048220 00043E80  7C 7F 1B 78 */	mr r31, r3
/* 80048224 00043E84  80 03 00 00 */	lwz r0, 0(r3)
/* 80048228 00043E88  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 8004822C 00043E8C  60 00 00 02 */	ori r0, r0, 2
/* 80048230 00043E90  D0 23 00 0C */	stfs f1, 0xc(r3)
/* 80048234 00043E94  54 00 07 B6 */	rlwinm r0, r0, 0, 0x1e, 0x1b
/* 80048238 00043E98  90 03 00 00 */	stw r0, 0(r3)
/* 8004823C 00043E9C  90 83 00 28 */	stw r4, 0x28(r3)
/* 80048240 00043EA0  40 81 00 08 */	ble lbl_80048248
/* 80048244 00043EA4  D0 24 00 20 */	stfs f1, 0x20(r4)
lbl_80048248:
/* 80048248 00043EA8  80 83 00 34 */	lwz r4, 0x34(r3)
/* 8004824C 00043EAC  2C 04 00 00 */	cmpwi r4, 0
/* 80048250 00043EB0  41 82 00 10 */	beq lbl_80048260
/* 80048254 00043EB4  C0 04 0D 80 */	lfs f0, 0xd80(r4)
/* 80048258 00043EB8  80 83 00 28 */	lwz r4, 0x28(r3)
/* 8004825C 00043EBC  D0 04 00 1C */	stfs f0, 0x1c(r4)
lbl_80048260:
/* 80048260 00043EC0  C0 02 83 C0 */	lfs f0, lbl_806409C0-_SDA2_BASE_(r2)
/* 80048264 00043EC4  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 80048268 00043EC8  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 8004826C 00043ECC  80 63 00 24 */	lwz r3, 0x24(r3)
/* 80048270 00043ED0  48 00 0D E9 */	bl cGame_GetGameTime
/* 80048274 00043ED4  D0 3F 00 1C */	stfs f1, 0x1c(r31)
/* 80048278 00043ED8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004827C 00043EDC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048280 00043EE0  7C 08 03 A6 */	mtlr r0
/* 80048284 00043EE4  38 21 00 10 */	addi r1, r1, 0x10
/* 80048288 00043EE8  4E 80 00 20 */	blr

.global func_8004828C
func_8004828C:
/* 8004828C 00043EEC  2C 04 00 00 */	cmpwi r4, 0
/* 80048290 00043EF0  41 82 00 08 */	beq lbl_80048298
/* 80048294 00043EF4  48 00 00 10 */	b lbl_800482A4
lbl_80048298:
/* 80048298 00043EF8  80 03 00 00 */	lwz r0, 0(r3)
/* 8004829C 00043EFC  54 03 FF FE */	rlwinm r3, r0, 0x1f, 0x1f, 0x1f
/* 800482A0 00043F00  4E 80 00 20 */	blr
lbl_800482A4:
/* 800482A4 00043F04  38 60 00 00 */	li r3, 0
/* 800482A8 00043F08  4E 80 00 20 */	blr

.global func_800482AC
func_800482AC:
/* 800482AC 00043F0C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800482B0 00043F10  7C 08 02 A6 */	mflr r0
/* 800482B4 00043F14  90 01 00 24 */	stw r0, 0x24(r1)
/* 800482B8 00043F18  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800482BC 00043F1C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800482C0 00043F20  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800482C4 00043F24  7C 7D 1B 78 */	mr r29, r3
/* 800482C8 00043F28  80 03 00 00 */	lwz r0, 0(r3)
/* 800482CC 00043F2C  2C 00 00 00 */	cmpwi r0, 0
/* 800482D0 00043F30  41 82 00 64 */	beq lbl_80048334
/* 800482D4 00043F34  3B C0 00 00 */	li r30, 0
/* 800482D8 00043F38  3B E0 00 00 */	li r31, 0
/* 800482DC 00043F3C  48 00 00 20 */	b lbl_800482FC
lbl_800482E0:
/* 800482E0 00043F40  80 7D 00 30 */	lwz r3, 0x30(r29)
/* 800482E4 00043F44  7C 63 F8 2E */	lwzx r3, r3, r31
/* 800482E8 00043F48  2C 03 00 00 */	cmpwi r3, 0
/* 800482EC 00043F4C  41 82 00 08 */	beq lbl_800482F4
/* 800482F0 00043F50  48 00 0F 91 */	bl func_80049280
lbl_800482F4:
/* 800482F4 00043F54  3B FF 00 04 */	addi r31, r31, 4
/* 800482F8 00043F58  3B DE 00 01 */	addi r30, r30, 1
lbl_800482FC:
/* 800482FC 00043F5C  80 7D 00 24 */	lwz r3, 0x24(r29)
/* 80048300 00043F60  80 63 00 94 */	lwz r3, 0x94(r3)
/* 80048304 00043F64  2C 03 00 00 */	cmpwi r3, 0
/* 80048308 00043F68  40 82 00 0C */	bne lbl_80048314
/* 8004830C 00043F6C  38 00 00 00 */	li r0, 0
/* 80048310 00043F70  48 00 00 08 */	b lbl_80048318
lbl_80048314:
/* 80048314 00043F74  80 03 00 14 */	lwz r0, 0x14(r3)
lbl_80048318:
/* 80048318 00043F78  7C 1E 00 40 */	cmplw r30, r0
/* 8004831C 00043F7C  41 80 FF C4 */	blt lbl_800482E0
/* 80048320 00043F80  80 1D 00 00 */	lwz r0, 0(r29)
/* 80048324 00043F84  C0 02 83 C0 */	lfs f0, lbl_806409C0-_SDA2_BASE_(r2)
/* 80048328 00043F88  54 00 07 FA */	rlwinm r0, r0, 0, 0x1f, 0x1d
/* 8004832C 00043F8C  90 1D 00 00 */	stw r0, 0(r29)
/* 80048330 00043F90  D0 1D 00 14 */	stfs f0, 0x14(r29)
lbl_80048334:
/* 80048334 00043F94  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80048338 00043F98  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004833C 00043F9C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80048340 00043FA0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80048344 00043FA4  7C 08 03 A6 */	mtlr r0
/* 80048348 00043FA8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004834C 00043FAC  4E 80 00 20 */	blr

.global func_80048350
func_80048350:
/* 80048350 00043FB0  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80048354 00043FB4  7C 08 02 A6 */	mflr r0
/* 80048358 00043FB8  90 01 00 54 */	stw r0, 0x54(r1)
/* 8004835C 00043FBC  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80048360 00043FC0  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80048364 00043FC4  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 80048368 00043FC8  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 8004836C 00043FCC  DB A1 00 20 */	stfd f29, 0x20(r1)
/* 80048370 00043FD0  F3 A1 00 28 */	psq_st f29, 40(r1), 0, qr0
/* 80048374 00043FD4  39 61 00 20 */	addi r11, r1, 0x20
/* 80048378 00043FD8  48 17 ED B1 */	bl _savegpr_27
/* 8004837C 00043FDC  80 03 00 00 */	lwz r0, 0(r3)
/* 80048380 00043FE0  FF E0 08 90 */	fmr f31, f1
/* 80048384 00043FE4  7C 7E 1B 78 */	mr r30, r3
/* 80048388 00043FE8  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8004838C 00043FEC  41 82 03 4C */	beq lbl_800486D8
/* 80048390 00043FF0  80 83 00 34 */	lwz r4, 0x34(r3)
/* 80048394 00043FF4  2C 04 00 00 */	cmpwi r4, 0
/* 80048398 00043FF8  41 82 00 10 */	beq lbl_800483A8
/* 8004839C 00043FFC  80 04 0C 04 */	lwz r0, 0xc04(r4)
/* 800483A0 00044000  2C 00 00 00 */	cmpwi r0, 0
/* 800483A4 00044004  41 82 03 34 */	beq lbl_800486D8
lbl_800483A8:
/* 800483A8 00044008  C0 03 00 1C */	lfs f0, 0x1c(r3)
/* 800483AC 0004400C  C0 42 83 C0 */	lfs f2, lbl_806409C0-_SDA2_BASE_(r2)
/* 800483B0 00044010  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 800483B4 00044014  40 81 00 48 */	ble lbl_800483FC
/* 800483B8 00044018  EC 00 08 28 */	fsubs f0, f0, f1
/* 800483BC 0004401C  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 800483C0 00044020  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 800483C4 00044024  4C 40 13 82 */	cror 2, 0, 2
/* 800483C8 00044028  40 82 00 34 */	bne lbl_800483FC
/* 800483CC 0004402C  7F C3 F3 78 */	mr r3, r30
/* 800483D0 00044030  4B FF FE DD */	bl func_800482AC
/* 800483D4 00044034  80 1E 00 00 */	lwz r0, 0(r30)
/* 800483D8 00044038  54 00 06 B5 */	rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 800483DC 0004403C  41 82 02 FC */	beq lbl_800486D8
/* 800483E0 00044040  48 00 54 2D */	bl func_8004D80C
/* 800483E4 00044044  2C 03 00 00 */	cmpwi r3, 0
/* 800483E8 00044048  41 82 02 F0 */	beq lbl_800486D8
/* 800483EC 0004404C  7F C4 F3 78 */	mr r4, r30
/* 800483F0 00044050  48 00 59 DD */	bl func_8004DDCC
/* 800483F4 00044054  48 00 02 E4 */	b lbl_800486D8
/* 800483F8 00044058  48 00 02 E0 */	b lbl_800486D8
lbl_800483FC:
/* 800483FC 0004405C  C0 43 00 0C */	lfs f2, 0xc(r3)
/* 80048400 00044060  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 80048404 00044064  EC 62 08 2A */	fadds f3, f2, f1
/* 80048408 00044068  C0 42 83 C0 */	lfs f2, lbl_806409C0-_SDA2_BASE_(r2)
/* 8004840C 0004406C  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80048410 00044070  D0 63 00 0C */	stfs f3, 0xc(r3)
/* 80048414 00044074  40 81 00 24 */	ble lbl_80048438
/* 80048418 00044078  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004841C 0004407C  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80048420 00044080  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 80048424 00044084  4C 40 13 82 */	cror 2, 0, 2
/* 80048428 00044088  40 82 00 10 */	bne lbl_80048438
/* 8004842C 0004408C  80 03 00 00 */	lwz r0, 0(r3)
/* 80048430 00044090  60 00 00 08 */	ori r0, r0, 8
/* 80048434 00044094  90 03 00 00 */	stw r0, 0(r3)
lbl_80048438:
/* 80048438 00044098  80 83 00 34 */	lwz r4, 0x34(r3)
/* 8004843C 0004409C  2C 04 00 00 */	cmpwi r4, 0
/* 80048440 000440A0  41 82 00 0C */	beq lbl_8004844C
/* 80048444 000440A4  C3 A4 0D 80 */	lfs f29, 0xd80(r4)
/* 80048448 000440A8  48 00 00 08 */	b lbl_80048450
lbl_8004844C:
/* 8004844C 000440AC  C3 A2 83 C0 */	lfs f29, lbl_806409C0-_SDA2_BASE_(r2)
lbl_80048450:
/* 80048450 000440B0  2C 04 00 00 */	cmpwi r4, 0
/* 80048454 000440B4  41 82 01 58 */	beq lbl_800485AC
/* 80048458 000440B8  80 A3 00 00 */	lwz r5, 0(r3)
/* 8004845C 000440BC  54 A0 03 DF */	rlwinm. r0, r5, 0, 0xf, 0xf
/* 80048460 000440C0  40 82 01 4C */	bne lbl_800485AC
/* 80048464 000440C4  80 C3 00 28 */	lwz r6, 0x28(r3)
/* 80048468 000440C8  2C 06 00 00 */	cmpwi r6, 0
/* 8004846C 000440CC  41 82 01 40 */	beq lbl_800485AC
/* 80048470 000440D0  C0 46 00 14 */	lfs f2, 0x14(r6)
/* 80048474 000440D4  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80048478 000440D8  C0 23 00 0C */	lfs f1, 0xc(r3)
/* 8004847C 000440DC  EC 00 10 2A */	fadds f0, f0, f2
/* 80048480 000440E0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80048484 000440E4  4C 41 13 82 */	cror 2, 1, 2
/* 80048488 000440E8  40 82 01 24 */	bne lbl_800485AC
/* 8004848C 000440EC  80 06 00 10 */	lwz r0, 0x10(r6)
/* 80048490 000440F0  3B E0 00 01 */	li r31, 1
/* 80048494 000440F4  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 80048498 000440F8  41 82 00 A8 */	beq lbl_80048540
/* 8004849C 000440FC  54 A0 07 39 */	rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 800484A0 00044100  41 82 00 9C */	beq lbl_8004853C
/* 800484A4 00044104  80 66 00 00 */	lwz r3, 0(r6)
/* 800484A8 00044108  3B 80 00 00 */	li r28, 0
/* 800484AC 0004410C  80 A3 00 00 */	lwz r5, 0(r3)
/* 800484B0 00044110  8B A3 00 05 */	lbz r29, 5(r3)
/* 800484B4 00044114  54 A0 07 BD */	rlwinm. r0, r5, 0, 0x1e, 0x1e
/* 800484B8 00044118  41 82 00 08 */	beq lbl_800484C0
/* 800484BC 0004411C  3B 80 00 01 */	li r28, 1
lbl_800484C0:
/* 800484C0 00044120  54 A0 07 7B */	rlwinm. r0, r5, 0, 0x1d, 0x1d
/* 800484C4 00044124  41 82 00 08 */	beq lbl_800484CC
/* 800484C8 00044128  3B 80 00 02 */	li r28, 2
lbl_800484CC:
/* 800484CC 0004412C  7C 83 23 78 */	mr r3, r4
/* 800484D0 00044130  7F A4 EB 78 */	mr r4, r29
/* 800484D4 00044134  7F 85 E3 78 */	mr r5, r28
/* 800484D8 00044138  4B FF 19 A9 */	bl func_80039E80
/* 800484DC 0004413C  FF C0 08 90 */	fmr f30, f1
/* 800484E0 00044140  80 7E 00 34 */	lwz r3, 0x34(r30)
/* 800484E4 00044144  7F A4 EB 78 */	mr r4, r29
/* 800484E8 00044148  38 BC 00 01 */	addi r5, r28, 1
/* 800484EC 0004414C  4B FF 19 95 */	bl func_80039E80
/* 800484F0 00044150  80 7E 00 28 */	lwz r3, 0x28(r30)
/* 800484F4 00044154  EC 41 F0 28 */	fsubs f2, f1, f30
/* 800484F8 00044158  C0 02 83 CC */	lfs f0, lbl_806409CC-_SDA2_BASE_(r2)
/* 800484FC 0004415C  FC 20 F0 50 */	fneg f1, f30
/* 80048500 00044160  D3 C3 00 20 */	stfs f30, 0x20(r3)
/* 80048504 00044164  EC 00 00 B2 */	fmuls f0, f0, f2
/* 80048508 00044168  80 7E 00 28 */	lwz r3, 0x28(r30)
/* 8004850C 0004416C  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 80048510 00044170  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 80048514 00044174  80 7E 00 28 */	lwz r3, 0x28(r30)
/* 80048518 00044178  EC 00 08 2A */	fadds f0, f0, f1
/* 8004851C 0004417C  D0 1E 00 14 */	stfs f0, 0x14(r30)
/* 80048520 00044180  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80048524 00044184  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80048528 00044188  90 03 00 10 */	stw r0, 0x10(r3)
/* 8004852C 0004418C  80 1E 00 00 */	lwz r0, 0(r30)
/* 80048530 00044190  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80048534 00044194  90 1E 00 00 */	stw r0, 0(r30)
/* 80048538 00044198  48 00 00 08 */	b lbl_80048540
lbl_8004853C:
/* 8004853C 0004419C  3B E0 00 00 */	li r31, 0
lbl_80048540:
/* 80048540 000441A0  2C 1F 00 00 */	cmpwi r31, 0
/* 80048544 000441A4  41 82 00 68 */	beq lbl_800485AC
/* 80048548 000441A8  80 9E 00 28 */	lwz r4, 0x28(r30)
/* 8004854C 000441AC  80 7E 00 34 */	lwz r3, 0x34(r30)
/* 80048550 000441B0  C0 04 00 1C */	lfs f0, 0x1c(r4)
/* 80048554 000441B4  D0 03 0D 80 */	stfs f0, 0xd80(r3)
/* 80048558 000441B8  80 1E 00 00 */	lwz r0, 0(r30)
/* 8004855C 000441BC  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 80048560 000441C0  40 82 00 20 */	bne lbl_80048580
/* 80048564 000441C4  80 9E 00 28 */	lwz r4, 0x28(r30)
/* 80048568 000441C8  80 7E 00 34 */	lwz r3, 0x34(r30)
/* 8004856C 000441CC  83 E4 00 00 */	lwz r31, 0(r4)
/* 80048570 000441D0  4B FF 0F 81 */	bl func_800394F0
/* 80048574 000441D4  88 1F 00 05 */	lbz r0, 5(r31)
/* 80048578 000441D8  7C 03 00 00 */	cmpw r3, r0
/* 8004857C 000441DC  41 82 00 1C */	beq lbl_80048598
lbl_80048580:
/* 80048580 000441E0  80 9E 00 28 */	lwz r4, 0x28(r30)
/* 80048584 000441E4  80 7E 00 34 */	lwz r3, 0x34(r30)
/* 80048588 000441E8  C0 24 00 20 */	lfs f1, 0x20(r4)
/* 8004858C 000441EC  80 84 00 00 */	lwz r4, 0(r4)
/* 80048590 000441F0  88 84 00 05 */	lbz r4, 5(r4)
/* 80048594 000441F4  4B FF 0C 6D */	bl func_80039200
lbl_80048598:
/* 80048598 000441F8  80 7E 00 34 */	lwz r3, 0x34(r30)
/* 8004859C 000441FC  D3 A3 0D 80 */	stfs f29, 0xd80(r3)
/* 800485A0 00044200  80 7E 00 28 */	lwz r3, 0x28(r30)
/* 800485A4 00044204  80 03 00 08 */	lwz r0, 8(r3)
/* 800485A8 00044208  90 1E 00 28 */	stw r0, 0x28(r30)
lbl_800485AC:
/* 800485AC 0004420C  3B 80 00 00 */	li r28, 0
/* 800485B0 00044210  3B E0 00 00 */	li r31, 0
/* 800485B4 00044214  48 00 00 64 */	b lbl_80048618
lbl_800485B8:
/* 800485B8 00044218  80 7E 00 30 */	lwz r3, 0x30(r30)
/* 800485BC 0004421C  80 9E 00 2C */	lwz r4, 0x2c(r30)
/* 800485C0 00044220  7C 63 F8 2E */	lwzx r3, r3, r31
/* 800485C4 00044224  80 03 00 20 */	lwz r0, 0x20(r3)
/* 800485C8 00044228  1C 00 00 24 */	mulli r0, r0, 0x24
/* 800485CC 0004422C  7C 84 02 14 */	add r4, r4, r0
/* 800485D0 00044230  80 04 00 10 */	lwz r0, 0x10(r4)
/* 800485D4 00044234  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 800485D8 00044238  40 82 00 38 */	bne lbl_80048610
/* 800485DC 0004423C  C0 43 00 0C */	lfs f2, 0xc(r3)
/* 800485E0 00044240  C0 1E 00 14 */	lfs f0, 0x14(r30)
/* 800485E4 00044244  C0 3E 00 0C */	lfs f1, 0xc(r30)
/* 800485E8 00044248  EC 00 10 2A */	fadds f0, f0, f2
/* 800485EC 0004424C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800485F0 00044250  4C 41 13 82 */	cror 2, 1, 2
/* 800485F4 00044254  40 82 00 1C */	bne lbl_80048610
/* 800485F8 00044258  80 83 00 08 */	lwz r4, 8(r3)
/* 800485FC 0004425C  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 80048600 00044260  40 82 00 10 */	bne lbl_80048610
/* 80048604 00044264  54 80 07 BD */	rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 80048608 00044268  40 82 00 08 */	bne lbl_80048610
/* 8004860C 0004426C  48 00 0C 0D */	bl func_80049218
lbl_80048610:
/* 80048610 00044270  3B FF 00 04 */	addi r31, r31, 4
/* 80048614 00044274  3B 9C 00 01 */	addi r28, r28, 1
lbl_80048618:
/* 80048618 00044278  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 8004861C 0004427C  80 63 00 94 */	lwz r3, 0x94(r3)
/* 80048620 00044280  2C 03 00 00 */	cmpwi r3, 0
/* 80048624 00044284  40 82 00 0C */	bne lbl_80048630
/* 80048628 00044288  38 00 00 00 */	li r0, 0
/* 8004862C 0004428C  48 00 00 08 */	b lbl_80048634
lbl_80048630:
/* 80048630 00044290  80 03 00 14 */	lwz r0, 0x14(r3)
lbl_80048634:
/* 80048634 00044294  7C 1C 00 40 */	cmplw r28, r0
/* 80048638 00044298  41 80 FF 80 */	blt lbl_800485B8
/* 8004863C 0004429C  3B 80 00 00 */	li r28, 0
/* 80048640 000442A0  3B A0 00 00 */	li r29, 0
/* 80048644 000442A4  3B E0 00 00 */	li r31, 0
/* 80048648 000442A8  48 00 00 3C */	b lbl_80048684
lbl_8004864C:
/* 8004864C 000442AC  80 7E 00 30 */	lwz r3, 0x30(r30)
/* 80048650 000442B0  7F 63 F8 2E */	lwzx r27, r3, r31
/* 80048654 000442B4  80 1B 00 08 */	lwz r0, 8(r27)
/* 80048658 000442B8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004865C 000442BC  41 82 00 10 */	beq lbl_8004866C
/* 80048660 000442C0  FC 20 F8 90 */	fmr f1, f31
/* 80048664 000442C4  7F 63 DB 78 */	mr r3, r27
/* 80048668 000442C8  48 00 0C 49 */	bl func_800492B0
lbl_8004866C:
/* 8004866C 000442CC  80 1B 00 08 */	lwz r0, 8(r27)
/* 80048670 000442D0  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80048674 000442D4  40 82 00 08 */	bne lbl_8004867C
/* 80048678 000442D8  3B 80 00 01 */	li r28, 1
lbl_8004867C:
/* 8004867C 000442DC  3B FF 00 04 */	addi r31, r31, 4
/* 80048680 000442E0  3B BD 00 01 */	addi r29, r29, 1
lbl_80048684:
/* 80048684 000442E4  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 80048688 000442E8  80 63 00 94 */	lwz r3, 0x94(r3)
/* 8004868C 000442EC  2C 03 00 00 */	cmpwi r3, 0
/* 80048690 000442F0  40 82 00 0C */	bne lbl_8004869C
/* 80048694 000442F4  38 00 00 00 */	li r0, 0
/* 80048698 000442F8  48 00 00 08 */	b lbl_800486A0
lbl_8004869C:
/* 8004869C 000442FC  80 03 00 14 */	lwz r0, 0x14(r3)
lbl_800486A0:
/* 800486A0 00044300  7C 1D 00 40 */	cmplw r29, r0
/* 800486A4 00044304  41 80 FF A8 */	blt lbl_8004864C
/* 800486A8 00044308  2C 1C 00 00 */	cmpwi r28, 0
/* 800486AC 0004430C  40 82 00 2C */	bne lbl_800486D8
/* 800486B0 00044310  7F C3 F3 78 */	mr r3, r30
/* 800486B4 00044314  4B FF FB F9 */	bl func_800482AC
/* 800486B8 00044318  80 1E 00 00 */	lwz r0, 0(r30)
/* 800486BC 0004431C  54 00 06 B5 */	rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 800486C0 00044320  41 82 00 18 */	beq lbl_800486D8
/* 800486C4 00044324  48 00 51 49 */	bl func_8004D80C
/* 800486C8 00044328  2C 03 00 00 */	cmpwi r3, 0
/* 800486CC 0004432C  41 82 00 0C */	beq lbl_800486D8
/* 800486D0 00044330  7F C4 F3 78 */	mr r4, r30
/* 800486D4 00044334  48 00 56 F9 */	bl func_8004DDCC
lbl_800486D8:
/* 800486D8 00044338  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 800486DC 0004433C  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 800486E0 00044340  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 800486E4 00044344  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 800486E8 00044348  E3 A1 00 28 */	psq_l f29, 40(r1), 0, qr0
/* 800486EC 0004434C  39 61 00 20 */	addi r11, r1, 0x20
/* 800486F0 00044350  CB A1 00 20 */	lfd f29, 0x20(r1)
/* 800486F4 00044354  48 17 EA 81 */	bl _restgpr_27
/* 800486F8 00044358  80 01 00 54 */	lwz r0, 0x54(r1)
/* 800486FC 0004435C  7C 08 03 A6 */	mtlr r0
/* 80048700 00044360  38 21 00 50 */	addi r1, r1, 0x50
/* 80048704 00044364  4E 80 00 20 */	blr

.global func_80048708
func_80048708:
/* 80048708 00044368  38 A0 00 01 */	li r5, 1
/* 8004870C 0004436C  38 6D 98 08 */	addi r3, r13, lbl_8063EAC8-_SDA_BASE_
/* 80048710 00044370  38 80 00 04 */	li r4, 4
/* 80048714 00044374  38 00 00 00 */	li r0, 0
/* 80048718 00044378  98 AD 98 08 */	stb r5, lbl_8063EAC8-_SDA_BASE_(r13)
/* 8004871C 0004437C  B0 83 00 02 */	sth r4, 2(r3)
/* 80048720 00044380  98 03 00 04 */	stb r0, 4(r3)
/* 80048724 00044384  4E 80 00 20 */	blr
lbl_80048728:
/* 80048728 00044388  38 00 00 00 */	li r0, 0
/* 8004872C 0004438C  90 03 00 94 */	stw r0, 0x94(r3)
/* 80048730 00044390  90 03 00 04 */	stw r0, 4(r3)
/* 80048734 00044394  98 03 00 00 */	stb r0, 0(r3)
/* 80048738 00044398  90 03 00 98 */	stw r0, 0x98(r3)
/* 8004873C 0004439C  90 03 00 88 */	stw r0, 0x88(r3)
/* 80048740 000443A0  98 03 00 01 */	stb r0, 1(r3)
/* 80048744 000443A4  4E 80 00 20 */	blr
lbl_80048748:
/* 80048748 000443A8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004874C 000443AC  7C 08 02 A6 */	mflr r0
/* 80048750 000443B0  2C 03 00 00 */	cmpwi r3, 0
/* 80048754 000443B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048758 000443B8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004875C 000443BC  7C 9F 23 78 */	mr r31, r4
/* 80048760 000443C0  93 C1 00 08 */	stw r30, 8(r1)
/* 80048764 000443C4  7C 7E 1B 78 */	mr r30, r3
/* 80048768 000443C8  41 82 00 18 */	beq lbl_80048780
/* 8004876C 000443CC  48 00 00 31 */	bl func_8004879C
/* 80048770 000443D0  2C 1F 00 00 */	cmpwi r31, 0
/* 80048774 000443D4  40 81 00 0C */	ble lbl_80048780
/* 80048778 000443D8  7F C3 F3 78 */	mr r3, r30
/* 8004877C 000443DC  48 19 23 3D */	bl func_801DAAB8
lbl_80048780:
/* 80048780 000443E0  7F C3 F3 78 */	mr r3, r30
/* 80048784 000443E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048788 000443E8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004878C 000443EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048790 000443F0  7C 08 03 A6 */	mtlr r0
/* 80048794 000443F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80048798 000443F8  4E 80 00 20 */	blr

.global func_8004879C
func_8004879C:
/* 8004879C 000443FC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800487A0 00044400  7C 08 02 A6 */	mflr r0
/* 800487A4 00044404  90 01 00 24 */	stw r0, 0x24(r1)
/* 800487A8 00044408  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800487AC 0004440C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800487B0 00044410  93 A1 00 14 */	stw r29, 0x14(r1)
/* 800487B4 00044414  7C 7D 1B 78 */	mr r29, r3
/* 800487B8 00044418  80 03 00 94 */	lwz r0, 0x94(r3)
/* 800487BC 0004441C  2C 00 00 00 */	cmpwi r0, 0
/* 800487C0 00044420  41 82 00 50 */	beq lbl_80048810
/* 800487C4 00044424  80 03 00 98 */	lwz r0, 0x98(r3)
/* 800487C8 00044428  2C 00 00 00 */	cmpwi r0, 0
/* 800487CC 0004442C  41 82 00 44 */	beq lbl_80048810
/* 800487D0 00044430  3B C0 00 00 */	li r30, 0
/* 800487D4 00044434  3B E0 00 00 */	li r31, 0
/* 800487D8 00044438  48 00 00 28 */	b lbl_80048800
lbl_800487DC:
/* 800487DC 0004443C  80 1D 00 98 */	lwz r0, 0x98(r29)
/* 800487E0 00044440  7C 60 FA 14 */	add r3, r0, r31
/* 800487E4 00044444  80 83 00 10 */	lwz r4, 0x10(r3)
/* 800487E8 00044448  2C 04 00 00 */	cmpwi r4, 0
/* 800487EC 0004444C  41 82 00 0C */	beq lbl_800487F8
/* 800487F0 00044450  7F A3 EB 78 */	mr r3, r29
/* 800487F4 00044454  48 00 04 E5 */	bl func_80048CD8
lbl_800487F8:
/* 800487F8 00044458  3B FF 00 20 */	addi r31, r31, 0x20
/* 800487FC 0004445C  3B DE 00 01 */	addi r30, r30, 1
lbl_80048800:
/* 80048800 00044460  80 7D 00 94 */	lwz r3, 0x94(r29)
/* 80048804 00044464  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80048808 00044468  7C 1E 00 40 */	cmplw r30, r0
/* 8004880C 0004446C  41 80 FF D0 */	blt lbl_800487DC
lbl_80048810:
/* 80048810 00044470  88 1D 00 01 */	lbz r0, 1(r29)
/* 80048814 00044474  2C 00 00 00 */	cmpwi r0, 0
/* 80048818 00044478  41 82 00 1C */	beq lbl_80048834
/* 8004881C 0004447C  80 7D 00 04 */	lwz r3, 4(r29)
/* 80048820 00044480  2C 03 00 00 */	cmpwi r3, 0
/* 80048824 00044484  41 82 00 10 */	beq lbl_80048834
/* 80048828 00044488  48 19 26 7D */	bl func_801DAEA4
/* 8004882C 0004448C  38 00 00 00 */	li r0, 0
/* 80048830 00044490  90 1D 00 04 */	stw r0, 4(r29)
lbl_80048834:
/* 80048834 00044494  38 00 00 00 */	li r0, 0
/* 80048838 00044498  90 1D 00 98 */	stw r0, 0x98(r29)
/* 8004883C 0004449C  90 1D 00 94 */	stw r0, 0x94(r29)
/* 80048840 000444A0  98 1D 00 00 */	stb r0, 0(r29)
/* 80048844 000444A4  90 1D 00 88 */	stw r0, 0x88(r29)
/* 80048848 000444A8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004884C 000444AC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80048850 000444B0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80048854 000444B4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80048858 000444B8  7C 08 03 A6 */	mtlr r0
/* 8004885C 000444BC  38 21 00 20 */	addi r1, r1, 0x20
/* 80048860 000444C0  4E 80 00 20 */	blr

.global func_80048864
func_80048864:
/* 80048864 000444C4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80048868 000444C8  7C 08 02 A6 */	mflr r0
/* 8004886C 000444CC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80048870 000444D0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80048874 000444D4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80048878 000444D8  7C 9E 23 78 */	mr r30, r4
/* 8004887C 000444DC  38 81 00 08 */	addi r4, r1, 8
/* 80048880 000444E0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80048884 000444E4  7C 7D 1B 78 */	mr r29, r3
/* 80048888 000444E8  7F C3 F3 78 */	mr r3, r30
/* 8004888C 000444EC  48 19 43 35 */	bl func_801DCBC0
/* 80048890 000444F0  2C 03 00 00 */	cmpwi r3, 0
/* 80048894 000444F4  7C 7F 1B 78 */	mr r31, r3
/* 80048898 000444F8  40 82 00 0C */	bne lbl_800488A4
/* 8004889C 000444FC  38 60 00 00 */	li r3, 0
/* 800488A0 00044500  48 00 00 4C */	b lbl_800488EC
lbl_800488A4:
/* 800488A4 00044504  88 1D 00 01 */	lbz r0, 1(r29)
/* 800488A8 00044508  2C 00 00 00 */	cmpwi r0, 0
/* 800488AC 0004450C  41 82 00 14 */	beq lbl_800488C0
/* 800488B0 00044510  80 7D 00 04 */	lwz r3, 4(r29)
/* 800488B4 00044514  2C 03 00 00 */	cmpwi r3, 0
/* 800488B8 00044518  41 82 00 08 */	beq lbl_800488C0
/* 800488BC 0004451C  48 19 25 E9 */	bl func_801DAEA4
lbl_800488C0:
/* 800488C0 00044520  38 00 00 01 */	li r0, 1
/* 800488C4 00044524  7F A3 EB 78 */	mr r3, r29
/* 800488C8 00044528  98 1D 00 01 */	stb r0, 1(r29)
/* 800488CC 0004452C  7F E4 FB 78 */	mr r4, r31
/* 800488D0 00044530  48 00 00 F5 */	bl func_800489C4
/* 800488D4 00044534  7C 7F 1B 78 */	mr r31, r3
/* 800488D8 00044538  7F C4 F3 78 */	mr r4, r30
/* 800488DC 0004453C  38 7D 00 08 */	addi r3, r29, 8
/* 800488E0 00044540  38 A0 00 80 */	li r5, 0x80
/* 800488E4 00044544  48 18 5A AD */	bl strncpy
/* 800488E8 00044548  7F E3 FB 78 */	mr r3, r31
lbl_800488EC:
/* 800488EC 0004454C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800488F0 00044550  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800488F4 00044554  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800488F8 00044558  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800488FC 0004455C  7C 08 03 A6 */	mtlr r0
/* 80048900 00044560  38 21 00 20 */	addi r1, r1, 0x20
/* 80048904 00044564  4E 80 00 20 */	blr

.global func_80048908
func_80048908:
/* 80048908 00044568  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004890C 0004456C  7C 08 02 A6 */	mflr r0
/* 80048910 00044570  90 01 00 24 */	stw r0, 0x24(r1)
/* 80048914 00044574  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80048918 00044578  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004891C 0004457C  7C BE 2B 78 */	mr r30, r5
/* 80048920 00044580  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80048924 00044584  7C 9D 23 78 */	mr r29, r4
/* 80048928 00044588  7F C4 F3 78 */	mr r4, r30
/* 8004892C 0004458C  93 81 00 10 */	stw r28, 0x10(r1)
/* 80048930 00044590  7C 7C 1B 78 */	mr r28, r3
/* 80048934 00044594  7F A3 EB 78 */	mr r3, r29
/* 80048938 00044598  48 19 2B 85 */	bl func_801DB4BC
/* 8004893C 0004459C  2C 03 00 00 */	cmpwi r3, 0
/* 80048940 000445A0  7C 7F 1B 78 */	mr r31, r3
/* 80048944 000445A4  40 82 00 0C */	bne lbl_80048950
/* 80048948 000445A8  38 60 00 00 */	li r3, 0
/* 8004894C 000445AC  48 00 00 58 */	b lbl_800489A4
lbl_80048950:
/* 80048950 000445B0  88 1C 00 01 */	lbz r0, 1(r28)
/* 80048954 000445B4  2C 00 00 00 */	cmpwi r0, 0
/* 80048958 000445B8  41 82 00 14 */	beq lbl_8004896C
/* 8004895C 000445BC  80 7C 00 04 */	lwz r3, 4(r28)
/* 80048960 000445C0  2C 03 00 00 */	cmpwi r3, 0
/* 80048964 000445C4  41 82 00 08 */	beq lbl_8004896C
/* 80048968 000445C8  48 19 25 3D */	bl func_801DAEA4
lbl_8004896C:
/* 8004896C 000445CC  7F 83 E3 78 */	mr r3, r28
/* 80048970 000445D0  7F E4 FB 78 */	mr r4, r31
/* 80048974 000445D4  48 00 00 51 */	bl func_800489C4
/* 80048978 000445D8  3C 80 80 41 */	lis r4, lbl_8040A468@ha
/* 8004897C 000445DC  7C 7F 1B 78 */	mr r31, r3
/* 80048980 000445E0  7F A5 EB 78 */	mr r5, r29
/* 80048984 000445E4  7F C6 F3 78 */	mr r6, r30
/* 80048988 000445E8  38 7C 00 08 */	addi r3, r28, 8
/* 8004898C 000445EC  38 84 A4 68 */	addi r4, r4, lbl_8040A468@l
/* 80048990 000445F0  4C C6 31 82 */	crclr 6
/* 80048994 000445F4  48 18 41 69 */	bl sprintf
/* 80048998 000445F8  93 BC 00 8C */	stw r29, 0x8c(r28)
/* 8004899C 000445FC  7F E3 FB 78 */	mr r3, r31
/* 800489A0 00044600  93 DC 00 90 */	stw r30, 0x90(r28)
lbl_800489A4:
/* 800489A4 00044604  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800489A8 00044608  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800489AC 0004460C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800489B0 00044610  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800489B4 00044614  83 81 00 10 */	lwz r28, 0x10(r1)
/* 800489B8 00044618  7C 08 03 A6 */	mtlr r0
/* 800489BC 0004461C  38 21 00 20 */	addi r1, r1, 0x20
/* 800489C0 00044620  4E 80 00 20 */	blr

.global func_800489C4
func_800489C4:
/* 800489C4 00044624  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800489C8 00044628  7C 08 02 A6 */	mflr r0
/* 800489CC 0004462C  90 01 00 34 */	stw r0, 0x34(r1)
/* 800489D0 00044630  39 61 00 30 */	addi r11, r1, 0x30
/* 800489D4 00044634  48 17 E7 55 */	bl _savegpr_27
/* 800489D8 00044638  90 83 00 04 */	stw r4, 4(r3)
/* 800489DC 0004463C  7C 7F 1B 78 */	mr r31, r3
/* 800489E0 00044640  90 83 00 94 */	stw r4, 0x94(r3)
/* 800489E4 00044644  88 04 00 0C */	lbz r0, 0xc(r4)
/* 800489E8 00044648  2C 00 00 00 */	cmpwi r0, 0
/* 800489EC 0004464C  41 82 00 14 */	beq lbl_80048A00
/* 800489F0 00044650  38 00 00 01 */	li r0, 1
/* 800489F4 00044654  98 03 00 00 */	stb r0, 0(r3)
/* 800489F8 00044658  38 60 00 01 */	li r3, 1
/* 800489FC 0004465C  48 00 01 40 */	b lbl_80048B3C
lbl_80048A00:
/* 80048A00 00044660  38 00 00 01 */	li r0, 1
/* 80048A04 00044664  38 A0 00 00 */	li r5, 0
/* 80048A08 00044668  98 04 00 0C */	stb r0, 0xc(r4)
/* 80048A0C 0004466C  38 E0 00 00 */	li r7, 0
/* 80048A10 00044670  80 C3 00 94 */	lwz r6, 0x94(r3)
/* 80048A14 00044674  80 06 00 18 */	lwz r0, 0x18(r6)
/* 80048A18 00044678  7C 04 02 14 */	add r0, r4, r0
/* 80048A1C 0004467C  90 03 00 98 */	stw r0, 0x98(r3)
/* 80048A20 00044680  48 00 00 8C */	b lbl_80048AAC
lbl_80048A24:
/* 80048A24 00044684  80 03 00 98 */	lwz r0, 0x98(r3)
/* 80048A28 00044688  7C 80 3A 14 */	add r4, r0, r7
/* 80048A2C 0004468C  80 C4 00 08 */	lwz r6, 8(r4)
/* 80048A30 00044690  2C 06 00 00 */	cmpwi r6, 0
/* 80048A34 00044694  41 82 00 10 */	beq lbl_80048A44
/* 80048A38 00044698  80 03 00 04 */	lwz r0, 4(r3)
/* 80048A3C 0004469C  7C 00 32 14 */	add r0, r0, r6
/* 80048A40 000446A0  90 04 00 08 */	stw r0, 8(r4)
lbl_80048A44:
/* 80048A44 000446A4  80 03 00 98 */	lwz r0, 0x98(r3)
/* 80048A48 000446A8  7C 80 3A 14 */	add r4, r0, r7
/* 80048A4C 000446AC  80 C4 00 0C */	lwz r6, 0xc(r4)
/* 80048A50 000446B0  2C 06 00 00 */	cmpwi r6, 0
/* 80048A54 000446B4  41 82 00 10 */	beq lbl_80048A64
/* 80048A58 000446B8  80 03 00 04 */	lwz r0, 4(r3)
/* 80048A5C 000446BC  7C 00 32 14 */	add r0, r0, r6
/* 80048A60 000446C0  90 04 00 0C */	stw r0, 0xc(r4)
lbl_80048A64:
/* 80048A64 000446C4  80 03 00 98 */	lwz r0, 0x98(r3)
/* 80048A68 000446C8  7C 80 3A 14 */	add r4, r0, r7
/* 80048A6C 000446CC  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80048A70 000446D0  2C 06 00 00 */	cmpwi r6, 0
/* 80048A74 000446D4  41 82 00 10 */	beq lbl_80048A84
/* 80048A78 000446D8  80 03 00 04 */	lwz r0, 4(r3)
/* 80048A7C 000446DC  7C 00 32 14 */	add r0, r0, r6
/* 80048A80 000446E0  90 04 00 10 */	stw r0, 0x10(r4)
lbl_80048A84:
/* 80048A84 000446E4  80 03 00 98 */	lwz r0, 0x98(r3)
/* 80048A88 000446E8  7C 80 3A 14 */	add r4, r0, r7
/* 80048A8C 000446EC  80 C4 00 14 */	lwz r6, 0x14(r4)
/* 80048A90 000446F0  2C 06 00 00 */	cmpwi r6, 0
/* 80048A94 000446F4  41 82 00 10 */	beq lbl_80048AA4
/* 80048A98 000446F8  80 03 00 04 */	lwz r0, 4(r3)
/* 80048A9C 000446FC  7C 00 32 14 */	add r0, r0, r6
/* 80048AA0 00044700  90 04 00 14 */	stw r0, 0x14(r4)
lbl_80048AA4:
/* 80048AA4 00044704  38 E7 00 20 */	addi r7, r7, 0x20
/* 80048AA8 00044708  38 A5 00 01 */	addi r5, r5, 1
lbl_80048AAC:
/* 80048AAC 0004470C  80 83 00 94 */	lwz r4, 0x94(r3)
/* 80048AB0 00044710  80 04 00 10 */	lwz r0, 0x10(r4)
/* 80048AB4 00044714  7C 05 00 40 */	cmplw r5, r0
/* 80048AB8 00044718  41 80 FF 6C */	blt lbl_80048A24
/* 80048ABC 0004471C  3B 80 00 00 */	li r28, 0
/* 80048AC0 00044720  3B 60 00 00 */	li r27, 0
/* 80048AC4 00044724  3B A0 00 00 */	li r29, 0
/* 80048AC8 00044728  3B C0 00 00 */	li r30, 0
/* 80048ACC 0004472C  48 00 00 38 */	b lbl_80048B04
lbl_80048AD0:
/* 80048AD0 00044730  93 C1 00 08 */	stw r30, 8(r1)
/* 80048AD4 00044734  80 1F 00 98 */	lwz r0, 0x98(r31)
/* 80048AD8 00044738  7C 60 EA 14 */	add r3, r0, r29
/* 80048ADC 0004473C  80 83 00 10 */	lwz r4, 0x10(r3)
/* 80048AE0 00044740  2C 04 00 00 */	cmpwi r4, 0
/* 80048AE4 00044744  41 82 00 10 */	beq lbl_80048AF4
/* 80048AE8 00044748  7F E3 FB 78 */	mr r3, r31
/* 80048AEC 0004474C  38 A1 00 08 */	addi r5, r1, 8
/* 80048AF0 00044750  48 00 00 65 */	bl func_80048B54
lbl_80048AF4:
/* 80048AF4 00044754  80 01 00 08 */	lwz r0, 8(r1)
/* 80048AF8 00044758  3B BD 00 20 */	addi r29, r29, 0x20
/* 80048AFC 0004475C  3B 7B 00 01 */	addi r27, r27, 1
/* 80048B00 00044760  7F 9C 02 14 */	add r28, r28, r0
lbl_80048B04:
/* 80048B04 00044764  80 7F 00 94 */	lwz r3, 0x94(r31)
/* 80048B08 00044768  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80048B0C 0004476C  7C 1B 00 40 */	cmplw r27, r0
/* 80048B10 00044770  41 80 FF C0 */	blt lbl_80048AD0
/* 80048B14 00044774  80 03 00 14 */	lwz r0, 0x14(r3)
/* 80048B18 00044778  7C 1C 00 40 */	cmplw r28, r0
/* 80048B1C 0004477C  41 82 00 0C */	beq lbl_80048B28
/* 80048B20 00044780  38 60 00 00 */	li r3, 0
/* 80048B24 00044784  48 00 00 18 */	b lbl_80048B3C
lbl_80048B28:
/* 80048B28 00044788  38 60 00 00 */	li r3, 0
/* 80048B2C 0004478C  38 00 00 01 */	li r0, 1
/* 80048B30 00044790  98 7F 00 08 */	stb r3, 8(r31)
/* 80048B34 00044794  38 60 00 01 */	li r3, 1
/* 80048B38 00044798  98 1F 00 00 */	stb r0, 0(r31)
lbl_80048B3C:
/* 80048B3C 0004479C  39 61 00 30 */	addi r11, r1, 0x30
/* 80048B40 000447A0  48 17 E6 35 */	bl _restgpr_27
/* 80048B44 000447A4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80048B48 000447A8  7C 08 03 A6 */	mtlr r0
/* 80048B4C 000447AC  38 21 00 30 */	addi r1, r1, 0x30
/* 80048B50 000447B0  4E 80 00 20 */	blr

.global func_80048B54
func_80048B54:
/* 80048B54 000447B4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80048B58 000447B8  7C 08 02 A6 */	mflr r0
/* 80048B5C 000447BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80048B60 000447C0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80048B64 000447C4  7C BF 2B 78 */	mr r31, r5
/* 80048B68 000447C8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80048B6C 000447CC  7C 9E 23 78 */	mr r30, r4
/* 80048B70 000447D0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80048B74 000447D4  7C 7D 1B 78 */	mr r29, r3
/* 80048B78 000447D8  93 81 00 10 */	stw r28, 0x10(r1)
/* 80048B7C 000447DC  3F 80 80 41 */	lis r28, 0x8041
/* 80048B80 000447E0  48 00 01 30 */	b lbl_80048CB0
lbl_80048B84:
/* 80048B84 000447E4  80 7E 00 1C */	lwz r3, 0x1c(r30)
/* 80048B88 000447E8  2C 03 00 00 */	cmpwi r3, 0
/* 80048B8C 000447EC  41 82 00 10 */	beq lbl_80048B9C
/* 80048B90 000447F0  80 1D 00 04 */	lwz r0, 4(r29)
/* 80048B94 000447F4  7C 00 1A 14 */	add r0, r0, r3
/* 80048B98 000447F8  90 1E 00 1C */	stw r0, 0x1c(r30)
lbl_80048B9C:
/* 80048B9C 000447FC  80 7E 00 20 */	lwz r3, 0x20(r30)
/* 80048BA0 00044800  2C 03 00 00 */	cmpwi r3, 0
/* 80048BA4 00044804  41 82 00 10 */	beq lbl_80048BB4
/* 80048BA8 00044808  80 1D 00 04 */	lwz r0, 4(r29)
/* 80048BAC 0004480C  7C 00 1A 14 */	add r0, r0, r3
/* 80048BB0 00044810  90 1E 00 20 */	stw r0, 0x20(r30)
lbl_80048BB4:
/* 80048BB4 00044814  80 7E 00 24 */	lwz r3, 0x24(r30)
/* 80048BB8 00044818  2C 03 00 00 */	cmpwi r3, 0
/* 80048BBC 0004481C  41 82 00 10 */	beq lbl_80048BCC
/* 80048BC0 00044820  80 1D 00 04 */	lwz r0, 4(r29)
/* 80048BC4 00044824  7C 00 1A 14 */	add r0, r0, r3
/* 80048BC8 00044828  90 1E 00 24 */	stw r0, 0x24(r30)
lbl_80048BCC:
/* 80048BCC 0004482C  80 7E 00 28 */	lwz r3, 0x28(r30)
/* 80048BD0 00044830  2C 03 00 00 */	cmpwi r3, 0
/* 80048BD4 00044834  41 82 00 10 */	beq lbl_80048BE4
/* 80048BD8 00044838  80 1D 00 04 */	lwz r0, 4(r29)
/* 80048BDC 0004483C  7C 00 1A 14 */	add r0, r0, r3
/* 80048BE0 00044840  90 1E 00 28 */	stw r0, 0x28(r30)
lbl_80048BE4:
/* 80048BE4 00044844  80 7E 00 2C */	lwz r3, 0x2c(r30)
/* 80048BE8 00044848  2C 03 00 00 */	cmpwi r3, 0
/* 80048BEC 0004484C  41 82 00 10 */	beq lbl_80048BFC
/* 80048BF0 00044850  80 1D 00 04 */	lwz r0, 4(r29)
/* 80048BF4 00044854  7C 00 1A 14 */	add r0, r0, r3
/* 80048BF8 00044858  90 1E 00 2C */	stw r0, 0x2c(r30)
lbl_80048BFC:
/* 80048BFC 0004485C  A0 1E 00 0A */	lhz r0, 0xa(r30)
/* 80048C00 00044860  28 00 00 06 */	cmplwi r0, 6
/* 80048C04 00044864  41 81 00 84 */	bgt lbl_80048C88
/* 80048C08 00044868  38 7C A4 74 */	addi r3, r28, -23436
/* 80048C0C 0004486C  54 00 10 3A */	slwi r0, r0, 2
/* 80048C10 00044870  7C 63 00 2E */	lwzx r3, r3, r0
/* 80048C14 00044874  7C 69 03 A6 */	mtctr r3
/* 80048C18 00044878  4E 80 04 20 */	bctr
/* 80048C1C 0004487C  7F A3 EB 78 */	mr r3, r29
/* 80048C20 00044880  7F C4 F3 78 */	mr r4, r30
/* 80048C24 00044884  48 00 01 75 */	bl func_80048D98
/* 80048C28 00044888  48 00 00 60 */	b lbl_80048C88
/* 80048C2C 0004488C  7F A3 EB 78 */	mr r3, r29
/* 80048C30 00044890  7F C4 F3 78 */	mr r4, r30
/* 80048C34 00044894  48 00 01 69 */	bl func_80048D9C
/* 80048C38 00044898  48 00 00 50 */	b lbl_80048C88
/* 80048C3C 0004489C  7F A3 EB 78 */	mr r3, r29
/* 80048C40 000448A0  7F C4 F3 78 */	mr r4, r30
/* 80048C44 000448A4  48 00 01 C1 */	bl func_80048E04
/* 80048C48 000448A8  48 00 00 40 */	b lbl_80048C88
/* 80048C4C 000448AC  7F A3 EB 78 */	mr r3, r29
/* 80048C50 000448B0  7F C4 F3 78 */	mr r4, r30
/* 80048C54 000448B4  48 00 02 3D */	bl func_80048E90
/* 80048C58 000448B8  48 00 00 30 */	b lbl_80048C88
/* 80048C5C 000448BC  7F A3 EB 78 */	mr r3, r29
/* 80048C60 000448C0  7F C4 F3 78 */	mr r4, r30
/* 80048C64 000448C4  48 00 03 55 */	bl func_80048FB8
/* 80048C68 000448C8  48 00 00 20 */	b lbl_80048C88
/* 80048C6C 000448CC  7F A3 EB 78 */	mr r3, r29
/* 80048C70 000448D0  7F C4 F3 78 */	mr r4, r30
/* 80048C74 000448D4  48 00 03 49 */	bl func_80048FBC
/* 80048C78 000448D8  48 00 00 10 */	b lbl_80048C88
/* 80048C7C 000448DC  7F A3 EB 78 */	mr r3, r29
/* 80048C80 000448E0  7F C4 F3 78 */	mr r4, r30
/* 80048C84 000448E4  48 00 03 3D */	bl func_80048FC0
lbl_80048C88:
/* 80048C88 000448E8  80 7F 00 00 */	lwz r3, 0(r31)
/* 80048C8C 000448EC  38 03 00 01 */	addi r0, r3, 1
/* 80048C90 000448F0  90 1F 00 00 */	stw r0, 0(r31)
/* 80048C94 000448F4  80 9E 00 28 */	lwz r4, 0x28(r30)
/* 80048C98 000448F8  2C 04 00 00 */	cmpwi r4, 0
/* 80048C9C 000448FC  41 82 00 10 */	beq lbl_80048CAC
/* 80048CA0 00044900  7F A3 EB 78 */	mr r3, r29
/* 80048CA4 00044904  7F E5 FB 78 */	mr r5, r31
/* 80048CA8 00044908  4B FF FE AD */	bl func_80048B54
lbl_80048CAC:
/* 80048CAC 0004490C  83 DE 00 20 */	lwz r30, 0x20(r30)
lbl_80048CB0:
/* 80048CB0 00044910  2C 1E 00 00 */	cmpwi r30, 0
/* 80048CB4 00044914  40 82 FE D0 */	bne lbl_80048B84
/* 80048CB8 00044918  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80048CBC 0004491C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80048CC0 00044920  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80048CC4 00044924  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80048CC8 00044928  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80048CCC 0004492C  7C 08 03 A6 */	mtlr r0
/* 80048CD0 00044930  38 21 00 20 */	addi r1, r1, 0x20
/* 80048CD4 00044934  4E 80 00 20 */	blr

.global func_80048CD8
func_80048CD8:
/* 80048CD8 00044938  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80048CDC 0004493C  7C 08 02 A6 */	mflr r0
/* 80048CE0 00044940  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048CE4 00044944  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048CE8 00044948  7C 9F 23 78 */	mr r31, r4
/* 80048CEC 0004494C  93 C1 00 08 */	stw r30, 8(r1)
/* 80048CF0 00044950  7C 7E 1B 78 */	mr r30, r3
/* 80048CF4 00044954  48 00 00 84 */	b lbl_80048D78
lbl_80048CF8:
/* 80048CF8 00044958  A0 1F 00 0A */	lhz r0, 0xa(r31)
/* 80048CFC 0004495C  2C 00 00 03 */	cmpwi r0, 3
/* 80048D00 00044960  41 82 00 44 */	beq lbl_80048D44
/* 80048D04 00044964  40 80 00 14 */	bge lbl_80048D18
/* 80048D08 00044968  2C 00 00 01 */	cmpwi r0, 1
/* 80048D0C 0004496C  41 82 00 18 */	beq lbl_80048D24
/* 80048D10 00044970  40 80 00 24 */	bge lbl_80048D34
/* 80048D14 00044974  48 00 00 4C */	b lbl_80048D60
lbl_80048D18:
/* 80048D18 00044978  2C 00 00 06 */	cmpwi r0, 6
/* 80048D1C 0004497C  41 82 00 38 */	beq lbl_80048D54
/* 80048D20 00044980  48 00 00 40 */	b lbl_80048D60
lbl_80048D24:
/* 80048D24 00044984  7F C3 F3 78 */	mr r3, r30
/* 80048D28 00044988  7F E4 FB 78 */	mr r4, r31
/* 80048D2C 0004498C  48 00 00 99 */	bl func_80048DC4
/* 80048D30 00044990  48 00 00 30 */	b lbl_80048D60
lbl_80048D34:
/* 80048D34 00044994  7F C3 F3 78 */	mr r3, r30
/* 80048D38 00044998  7F E4 FB 78 */	mr r4, r31
/* 80048D3C 0004499C  48 00 01 15 */	bl func_80048E50
/* 80048D40 000449A0  48 00 00 20 */	b lbl_80048D60
lbl_80048D44:
/* 80048D44 000449A4  7F C3 F3 78 */	mr r3, r30
/* 80048D48 000449A8  7F E4 FB 78 */	mr r4, r31
/* 80048D4C 000449AC  48 00 02 69 */	bl func_80048FB4
/* 80048D50 000449B0  48 00 00 10 */	b lbl_80048D60
lbl_80048D54:
/* 80048D54 000449B4  7F C3 F3 78 */	mr r3, r30
/* 80048D58 000449B8  7F E4 FB 78 */	mr r4, r31
/* 80048D5C 000449BC  48 00 02 B1 */	bl func_8004900C
lbl_80048D60:
/* 80048D60 000449C0  80 9F 00 28 */	lwz r4, 0x28(r31)
/* 80048D64 000449C4  2C 04 00 00 */	cmpwi r4, 0
/* 80048D68 000449C8  41 82 00 0C */	beq lbl_80048D74
/* 80048D6C 000449CC  7F C3 F3 78 */	mr r3, r30
/* 80048D70 000449D0  4B FF FF 69 */	bl func_80048CD8
lbl_80048D74:
/* 80048D74 000449D4  83 FF 00 20 */	lwz r31, 0x20(r31)
lbl_80048D78:
/* 80048D78 000449D8  2C 1F 00 00 */	cmpwi r31, 0
/* 80048D7C 000449DC  40 82 FF 7C */	bne lbl_80048CF8
/* 80048D80 000449E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048D84 000449E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048D88 000449E8  83 C1 00 08 */	lwz r30, 8(r1)
/* 80048D8C 000449EC  7C 08 03 A6 */	mtlr r0
/* 80048D90 000449F0  38 21 00 10 */	addi r1, r1, 0x10
/* 80048D94 000449F4  4E 80 00 20 */	blr

.global func_80048D98
func_80048D98:
/* 80048D98 000449F8  4E 80 00 20 */	blr

.global func_80048D9C
func_80048D9C:
/* 80048D9C 000449FC  80 A4 00 44 */	lwz r5, 0x44(r4)
/* 80048DA0 00044A00  2C 05 00 00 */	cmpwi r5, 0
/* 80048DA4 00044A04  41 82 00 10 */	beq lbl_80048DB4
/* 80048DA8 00044A08  80 03 00 04 */	lwz r0, 4(r3)
/* 80048DAC 00044A0C  7C 00 2A 14 */	add r0, r0, r5
/* 80048DB0 00044A10  90 04 00 44 */	stw r0, 0x44(r4)
lbl_80048DB4:
/* 80048DB4 00044A14  80 64 00 44 */	lwz r3, 0x44(r4)
/* 80048DB8 00044A18  90 64 00 48 */	stw r3, 0x48(r4)
/* 80048DBC 00044A1C  7C 64 1B 78 */	mr r4, r3
/* 80048DC0 00044A20  48 19 A7 1C */	b func_801E34DC

.global func_80048DC4
func_80048DC4:
/* 80048DC4 00044A24  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80048DC8 00044A28  7C 08 02 A6 */	mflr r0
/* 80048DCC 00044A2C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048DD0 00044A30  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048DD4 00044A34  7C 9F 23 78 */	mr r31, r4
/* 80048DD8 00044A38  80 64 00 48 */	lwz r3, 0x48(r4)
/* 80048DDC 00044A3C  2C 03 00 00 */	cmpwi r3, 0
/* 80048DE0 00044A40  41 82 00 10 */	beq lbl_80048DF0
/* 80048DE4 00044A44  48 19 AA 0D */	bl func_801E37F0
/* 80048DE8 00044A48  38 00 00 00 */	li r0, 0
/* 80048DEC 00044A4C  90 1F 00 48 */	stw r0, 0x48(r31)
lbl_80048DF0:
/* 80048DF0 00044A50  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048DF4 00044A54  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048DF8 00044A58  7C 08 03 A6 */	mtlr r0
/* 80048DFC 00044A5C  38 21 00 10 */	addi r1, r1, 0x10
/* 80048E00 00044A60  4E 80 00 20 */	blr

.global func_80048E04
func_80048E04:
/* 80048E04 00044A64  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80048E08 00044A68  7C 08 02 A6 */	mflr r0
/* 80048E0C 00044A6C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048E10 00044A70  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048E14 00044A74  7C 9F 23 78 */	mr r31, r4
/* 80048E18 00044A78  80 A4 00 40 */	lwz r5, 0x40(r4)
/* 80048E1C 00044A7C  2C 05 00 00 */	cmpwi r5, 0
/* 80048E20 00044A80  41 82 00 10 */	beq lbl_80048E30
/* 80048E24 00044A84  80 03 00 04 */	lwz r0, 4(r3)
/* 80048E28 00044A88  7C 00 2A 14 */	add r0, r0, r5
/* 80048E2C 00044A8C  90 04 00 40 */	stw r0, 0x40(r4)
lbl_80048E30:
/* 80048E30 00044A90  80 64 00 40 */	lwz r3, 0x40(r4)
/* 80048E34 00044A94  48 1B DF 59 */	bl func_80206D8C
/* 80048E38 00044A98  90 7F 00 44 */	stw r3, 0x44(r31)
/* 80048E3C 00044A9C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048E40 00044AA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048E44 00044AA4  7C 08 03 A6 */	mtlr r0
/* 80048E48 00044AA8  38 21 00 10 */	addi r1, r1, 0x10
/* 80048E4C 00044AAC  4E 80 00 20 */	blr

.global func_80048E50
func_80048E50:
/* 80048E50 00044AB0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80048E54 00044AB4  7C 08 02 A6 */	mflr r0
/* 80048E58 00044AB8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048E5C 00044ABC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048E60 00044AC0  7C 9F 23 78 */	mr r31, r4
/* 80048E64 00044AC4  80 64 00 44 */	lwz r3, 0x44(r4)
/* 80048E68 00044AC8  2C 03 00 00 */	cmpwi r3, 0
/* 80048E6C 00044ACC  41 82 00 10 */	beq lbl_80048E7C
/* 80048E70 00044AD0  48 1B DF 85 */	bl func_80206DF4
/* 80048E74 00044AD4  38 00 00 00 */	li r0, 0
/* 80048E78 00044AD8  90 1F 00 44 */	stw r0, 0x44(r31)
lbl_80048E7C:
/* 80048E7C 00044ADC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048E80 00044AE0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048E84 00044AE4  7C 08 03 A6 */	mtlr r0
/* 80048E88 00044AE8  38 21 00 10 */	addi r1, r1, 0x10
/* 80048E8C 00044AEC  4E 80 00 20 */	blr

.global func_80048E90
func_80048E90:
/* 80048E90 00044AF0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80048E94 00044AF4  7C 08 02 A6 */	mflr r0
/* 80048E98 00044AF8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048E9C 00044AFC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048EA0 00044B00  A0 04 00 38 */	lhz r0, 0x38(r4)
/* 80048EA4 00044B04  28 00 00 0E */	cmplwi r0, 0xe
/* 80048EA8 00044B08  41 81 00 F8 */	bgt lbl_80048FA0
/* 80048EAC 00044B0C  3C A0 80 41 */	lis r5, lbl_8040A490@ha
/* 80048EB0 00044B10  54 00 10 3A */	slwi r0, r0, 2
/* 80048EB4 00044B14  38 A5 A4 90 */	addi r5, r5, lbl_8040A490@l
/* 80048EB8 00044B18  7C A5 00 2E */	lwzx r5, r5, r0
/* 80048EBC 00044B1C  7C A9 03 A6 */	mtctr r5
/* 80048EC0 00044B20  4E 80 04 20 */	bctr
/* 80048EC4 00044B24  3B E4 00 40 */	addi r31, r4, 0x40
/* 80048EC8 00044B28  80 84 00 58 */	lwz r4, 0x58(r4)
/* 80048ECC 00044B2C  2C 04 00 00 */	cmpwi r4, 0
/* 80048ED0 00044B30  41 82 00 D0 */	beq lbl_80048FA0
/* 80048ED4 00044B34  41 82 00 10 */	beq lbl_80048EE4
/* 80048ED8 00044B38  80 03 00 04 */	lwz r0, 4(r3)
/* 80048EDC 00044B3C  7C 00 22 14 */	add r0, r0, r4
/* 80048EE0 00044B40  90 1F 00 18 */	stw r0, 0x18(r31)
lbl_80048EE4:
/* 80048EE4 00044B44  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 80048EE8 00044B48  48 1F 47 E5 */	bl func_8023D6CC
/* 80048EEC 00044B4C  90 7F 00 1C */	stw r3, 0x1c(r31)
/* 80048EF0 00044B50  48 00 00 B0 */	b lbl_80048FA0
/* 80048EF4 00044B54  3B E4 00 40 */	addi r31, r4, 0x40
/* 80048EF8 00044B58  80 84 00 68 */	lwz r4, 0x68(r4)
/* 80048EFC 00044B5C  2C 04 00 00 */	cmpwi r4, 0
/* 80048F00 00044B60  41 82 00 A0 */	beq lbl_80048FA0
/* 80048F04 00044B64  41 82 00 10 */	beq lbl_80048F14
/* 80048F08 00044B68  80 03 00 04 */	lwz r0, 4(r3)
/* 80048F0C 00044B6C  7C 00 22 14 */	add r0, r0, r4
/* 80048F10 00044B70  90 1F 00 28 */	stw r0, 0x28(r31)
lbl_80048F14:
/* 80048F14 00044B74  80 7F 00 28 */	lwz r3, 0x28(r31)
/* 80048F18 00044B78  48 1F 47 B5 */	bl func_8023D6CC
/* 80048F1C 00044B7C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 80048F20 00044B80  38 80 00 01 */	li r4, 1
/* 80048F24 00044B84  38 A0 00 01 */	li r5, 1
/* 80048F28 00044B88  48 1F 54 45 */	bl func_8023E36C
/* 80048F2C 00044B8C  48 00 00 74 */	b lbl_80048FA0
/* 80048F30 00044B90  3B E4 00 40 */	addi r31, r4, 0x40
/* 80048F34 00044B94  80 84 00 60 */	lwz r4, 0x60(r4)
/* 80048F38 00044B98  2C 04 00 00 */	cmpwi r4, 0
/* 80048F3C 00044B9C  41 82 00 64 */	beq lbl_80048FA0
/* 80048F40 00044BA0  41 82 00 10 */	beq lbl_80048F50
/* 80048F44 00044BA4  80 03 00 04 */	lwz r0, 4(r3)
/* 80048F48 00044BA8  7C 00 22 14 */	add r0, r0, r4
/* 80048F4C 00044BAC  90 1F 00 20 */	stw r0, 0x20(r31)
lbl_80048F50:
/* 80048F50 00044BB0  80 7F 00 20 */	lwz r3, 0x20(r31)
/* 80048F54 00044BB4  48 1F 47 79 */	bl func_8023D6CC
/* 80048F58 00044BB8  80 DF 00 00 */	lwz r6, 0(r31)
/* 80048F5C 00044BBC  38 80 00 00 */	li r4, 0
/* 80048F60 00044BC0  90 7F 00 24 */	stw r3, 0x24(r31)
/* 80048F64 00044BC4  54 C0 07 FF */	clrlwi. r0, r6, 0x1f
/* 80048F68 00044BC8  41 82 00 08 */	beq lbl_80048F70
/* 80048F6C 00044BCC  38 80 00 01 */	li r4, 1
lbl_80048F70:
/* 80048F70 00044BD0  54 C0 07 BD */	rlwinm. r0, r6, 0, 0x1e, 0x1e
/* 80048F74 00044BD4  41 82 00 08 */	beq lbl_80048F7C
/* 80048F78 00044BD8  38 80 00 02 */	li r4, 2
lbl_80048F7C:
/* 80048F7C 00044BDC  54 C0 07 7B */	rlwinm. r0, r6, 0, 0x1d, 0x1d
/* 80048F80 00044BE0  38 A0 00 00 */	li r5, 0
/* 80048F84 00044BE4  41 82 00 08 */	beq lbl_80048F8C
/* 80048F88 00044BE8  38 A0 00 01 */	li r5, 1
lbl_80048F8C:
/* 80048F8C 00044BEC  54 C0 07 39 */	rlwinm. r0, r6, 0, 0x1c, 0x1c
/* 80048F90 00044BF0  41 82 00 08 */	beq lbl_80048F98
/* 80048F94 00044BF4  38 A0 00 02 */	li r5, 2
lbl_80048F98:
/* 80048F98 00044BF8  80 7F 00 24 */	lwz r3, 0x24(r31)
/* 80048F9C 00044BFC  48 1F 53 D1 */	bl func_8023E36C
lbl_80048FA0:
/* 80048FA0 00044C00  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80048FA4 00044C04  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048FA8 00044C08  7C 08 03 A6 */	mtlr r0
/* 80048FAC 00044C0C  38 21 00 10 */	addi r1, r1, 0x10
/* 80048FB0 00044C10  4E 80 00 20 */	blr

.global func_80048FB4
func_80048FB4:
/* 80048FB4 00044C14  4E 80 00 20 */	blr

.global func_80048FB8
func_80048FB8:
/* 80048FB8 00044C18  4E 80 00 20 */	blr

.global func_80048FBC
func_80048FBC:
/* 80048FBC 00044C1C  4E 80 00 20 */	blr

.global func_80048FC0
func_80048FC0:
/* 80048FC0 00044C20  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80048FC4 00044C24  7C 08 02 A6 */	mflr r0
/* 80048FC8 00044C28  90 01 00 14 */	stw r0, 0x14(r1)
/* 80048FCC 00044C2C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80048FD0 00044C30  7C 9F 23 78 */	mr r31, r4
/* 80048FD4 00044C34  80 A4 00 44 */	lwz r5, 0x44(r4)
/* 80048FD8 00044C38  2C 05 00 00 */	cmpwi r5, 0
/* 80048FDC 00044C3C  41 82 00 10 */	beq lbl_80048FEC
/* 80048FE0 00044C40  80 03 00 04 */	lwz r0, 4(r3)
/* 80048FE4 00044C44  7C 00 2A 14 */	add r0, r0, r5
/* 80048FE8 00044C48  90 04 00 44 */	stw r0, 0x44(r4)
lbl_80048FEC:
/* 80048FEC 00044C4C  80 64 00 44 */	lwz r3, 0x44(r4)
/* 80048FF0 00044C50  48 19 B9 81 */	bl func_801E4970
/* 80048FF4 00044C54  90 7F 00 48 */	stw r3, 0x48(r31)
/* 80048FF8 00044C58  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80048FFC 00044C5C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80049000 00044C60  7C 08 03 A6 */	mtlr r0
/* 80049004 00044C64  38 21 00 10 */	addi r1, r1, 0x10
/* 80049008 00044C68  4E 80 00 20 */	blr

.global func_8004900C
func_8004900C:
/* 8004900C 00044C6C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80049010 00044C70  7C 08 02 A6 */	mflr r0
/* 80049014 00044C74  90 01 00 14 */	stw r0, 0x14(r1)
/* 80049018 00044C78  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004901C 00044C7C  7C 9F 23 78 */	mr r31, r4
/* 80049020 00044C80  80 64 00 48 */	lwz r3, 0x48(r4)
/* 80049024 00044C84  2C 03 00 00 */	cmpwi r3, 0
/* 80049028 00044C88  41 82 00 1C */	beq lbl_80049044
/* 8004902C 00044C8C  38 80 00 00 */	li r4, 0
/* 80049030 00044C90  48 19 BB 9D */	bl func_801E4BCC
/* 80049034 00044C94  80 7F 00 48 */	lwz r3, 0x48(r31)
/* 80049038 00044C98  48 19 BA 4D */	bl func_801E4A84
/* 8004903C 00044C9C  38 00 00 00 */	li r0, 0
/* 80049040 00044CA0  90 1F 00 48 */	stw r0, 0x48(r31)
lbl_80049044:
/* 80049044 00044CA4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80049048 00044CA8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004904C 00044CAC  7C 08 03 A6 */	mtlr r0
/* 80049050 00044CB0  38 21 00 10 */	addi r1, r1, 0x10
/* 80049054 00044CB4  4E 80 00 20 */	blr

.global cGame_GetGameTime
cGame_GetGameTime:
/* 80049058 00044CB8  80 63 00 94 */	lwz r3, 0x94(r3)
/* 8004905C 00044CBC  C0 23 00 1C */	lfs f1, 0x1c(r3)
/* 80049060 00044CC0  4E 80 00 20 */	blr

.global func_80049064
func_80049064:
/* 80049064 00044CC4  38 A0 00 01 */	li r5, 1
/* 80049068 00044CC8  38 6D 98 10 */	addi r3, r13, lbl_8063EAD0-_SDA_BASE_
/* 8004906C 00044CCC  38 80 00 04 */	li r4, 4
/* 80049070 00044CD0  38 00 00 00 */	li r0, 0
/* 80049074 00044CD4  98 AD 98 10 */	stb r5, lbl_8063EAD0-_SDA_BASE_(r13)
/* 80049078 00044CD8  B0 83 00 02 */	sth r4, 2(r3)
/* 8004907C 00044CDC  98 03 00 04 */	stb r0, 4(r3)
/* 80049080 00044CE0  4E 80 00 20 */	blr

.global func_80049084
func_80049084:
/* 80049084 00044CE4  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049088 00044CE8  3C 80 80 41 */	lis r4, lbl_8040A6E8@ha
/* 8004908C 00044CEC  38 00 00 00 */	li r0, 0
/* 80049090 00044CF0  38 84 A6 E8 */	addi r4, r4, lbl_8040A6E8@l
/* 80049094 00044CF4  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 80049098 00044CF8  90 83 00 28 */	stw r4, 0x28(r3)
/* 8004909C 00044CFC  90 03 00 08 */	stw r0, 8(r3)
/* 800490A0 00044D00  90 03 00 00 */	stw r0, 0(r3)
/* 800490A4 00044D04  90 03 00 04 */	stw r0, 4(r3)
/* 800490A8 00044D08  90 03 00 1C */	stw r0, 0x1c(r3)
/* 800490AC 00044D0C  90 03 00 24 */	stw r0, 0x24(r3)
/* 800490B0 00044D10  4E 80 00 20 */	blr

.global func_800490B4
func_800490B4:
/* 800490B4 00044D14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800490B8 00044D18  7C 08 02 A6 */	mflr r0
/* 800490BC 00044D1C  2C 03 00 00 */	cmpwi r3, 0
/* 800490C0 00044D20  90 01 00 14 */	stw r0, 0x14(r1)
/* 800490C4 00044D24  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800490C8 00044D28  7C 9F 23 78 */	mr r31, r4
/* 800490CC 00044D2C  93 C1 00 08 */	stw r30, 8(r1)
/* 800490D0 00044D30  7C 7E 1B 78 */	mr r30, r3
/* 800490D4 00044D34  41 82 00 2C */	beq lbl_80049100
/* 800490D8 00044D38  3D 80 80 41 */	lis r12, lbl_8040A6E8@ha
/* 800490DC 00044D3C  39 8C A6 E8 */	addi r12, r12, lbl_8040A6E8@l
/* 800490E0 00044D40  91 83 00 28 */	stw r12, 0x28(r3)
/* 800490E4 00044D44  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 800490E8 00044D48  7D 89 03 A6 */	mtctr r12
/* 800490EC 00044D4C  4E 80 04 21 */	bctrl
/* 800490F0 00044D50  2C 1F 00 00 */	cmpwi r31, 0
/* 800490F4 00044D54  40 81 00 0C */	ble lbl_80049100
/* 800490F8 00044D58  7F C3 F3 78 */	mr r3, r30
/* 800490FC 00044D5C  48 19 19 BD */	bl func_801DAAB8
lbl_80049100:
/* 80049100 00044D60  7F C3 F3 78 */	mr r3, r30
/* 80049104 00044D64  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80049108 00044D68  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004910C 00044D6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80049110 00044D70  7C 08 03 A6 */	mtlr r0
/* 80049114 00044D74  38 21 00 10 */	addi r1, r1, 0x10
/* 80049118 00044D78  4E 80 00 20 */	blr

.global func_8004911C
func_8004911C:
/* 8004911C 00044D7C  38 00 00 00 */	li r0, 0
/* 80049120 00044D80  90 03 00 1C */	stw r0, 0x1c(r3)
/* 80049124 00044D84  4E 80 00 20 */	blr

.global func_80049128
func_80049128:
/* 80049128 00044D88  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004912C 00044D8C  7C 08 02 A6 */	mflr r0
/* 80049130 00044D90  90 01 00 14 */	stw r0, 0x14(r1)
/* 80049134 00044D94  38 00 00 00 */	li r0, 0
/* 80049138 00044D98  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004913C 00044D9C  7C BF 2B 78 */	mr r31, r5
/* 80049140 00044DA0  93 C1 00 08 */	stw r30, 8(r1)
/* 80049144 00044DA4  7C 7E 1B 78 */	mr r30, r3
/* 80049148 00044DA8  90 83 00 14 */	stw r4, 0x14(r3)
/* 8004914C 00044DAC  90 03 00 1C */	stw r0, 0x1c(r3)
/* 80049150 00044DB0  88 A4 00 0D */	lbz r5, 0xd(r4)
/* 80049154 00044DB4  90 A3 00 24 */	stw r5, 0x24(r3)
/* 80049158 00044DB8  80 04 00 00 */	lwz r0, 0(r4)
/* 8004915C 00044DBC  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80049160 00044DC0  41 82 00 3C */	beq lbl_8004919C
/* 80049164 00044DC4  54 A0 07 FF */	clrlwi. r0, r5, 0x1f
/* 80049168 00044DC8  41 82 00 0C */	beq lbl_80049174
/* 8004916C 00044DCC  60 A0 00 40 */	ori r0, r5, 0x40
/* 80049170 00044DD0  90 03 00 24 */	stw r0, 0x24(r3)
lbl_80049174:
/* 80049174 00044DD4  80 A3 00 24 */	lwz r5, 0x24(r3)
/* 80049178 00044DD8  54 A0 07 BD */	rlwinm. r0, r5, 0, 0x1e, 0x1e
/* 8004917C 00044DDC  41 82 00 0C */	beq lbl_80049188
/* 80049180 00044DE0  60 A0 00 80 */	ori r0, r5, 0x80
/* 80049184 00044DE4  90 03 00 24 */	stw r0, 0x24(r3)
lbl_80049188:
/* 80049188 00044DE8  80 A3 00 24 */	lwz r5, 0x24(r3)
/* 8004918C 00044DEC  54 A0 07 7B */	rlwinm. r0, r5, 0, 0x1d, 0x1d
/* 80049190 00044DF0  41 82 00 0C */	beq lbl_8004919C
/* 80049194 00044DF4  60 A0 01 00 */	ori r0, r5, 0x100
/* 80049198 00044DF8  90 03 00 24 */	stw r0, 0x24(r3)
lbl_8004919C:
/* 8004919C 00044DFC  80 A3 00 24 */	lwz r5, 0x24(r3)
/* 800491A0 00044E00  54 A0 07 FF */	clrlwi. r0, r5, 0x1f
/* 800491A4 00044E04  40 82 00 0C */	bne lbl_800491B0
/* 800491A8 00044E08  60 A0 00 09 */	ori r0, r5, 9
/* 800491AC 00044E0C  90 03 00 24 */	stw r0, 0x24(r3)
lbl_800491B0:
/* 800491B0 00044E10  80 A3 00 24 */	lwz r5, 0x24(r3)
/* 800491B4 00044E14  54 A0 07 BD */	rlwinm. r0, r5, 0, 0x1e, 0x1e
/* 800491B8 00044E18  40 82 00 0C */	bne lbl_800491C4
/* 800491BC 00044E1C  60 A0 00 12 */	ori r0, r5, 0x12
/* 800491C0 00044E20  90 03 00 24 */	stw r0, 0x24(r3)
lbl_800491C4:
/* 800491C4 00044E24  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 800491C8 00044E28  7F C3 F3 78 */	mr r3, r30
/* 800491CC 00044E2C  7F E5 FB 78 */	mr r5, r31
/* 800491D0 00044E30  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 800491D4 00044E34  7D 89 03 A6 */	mtctr r12
/* 800491D8 00044E38  4E 80 04 21 */	bctrl
/* 800491DC 00044E3C  93 FE 00 18 */	stw r31, 0x18(r30)
/* 800491E0 00044E40  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800491E4 00044E44  83 C1 00 08 */	lwz r30, 8(r1)
/* 800491E8 00044E48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800491EC 00044E4C  7C 08 03 A6 */	mtlr r0
/* 800491F0 00044E50  38 21 00 10 */	addi r1, r1, 0x10
/* 800491F4 00044E54  4E 80 00 20 */	blr
/* 800491F8 00044E58  4E 80 00 20 */	blr
/* 800491FC 00044E5C  80 63 00 14 */	lwz r3, 0x14(r3)
/* 80049200 00044E60  2C 03 00 00 */	cmpwi r3, 0
/* 80049204 00044E64  40 82 00 0C */	bne lbl_80049210
/* 80049208 00044E68  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004920C 00044E6C  4E 80 00 20 */	blr
lbl_80049210:
/* 80049210 00044E70  C0 23 00 04 */	lfs f1, 4(r3)
/* 80049214 00044E74  4E 80 00 20 */	blr

.global func_80049218
func_80049218:
/* 80049218 00044E78  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004921C 00044E7C  7C 08 02 A6 */	mflr r0
/* 80049220 00044E80  90 01 00 14 */	stw r0, 0x14(r1)
/* 80049224 00044E84  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80049228 00044E88  7C 7F 1B 78 */	mr r31, r3
/* 8004922C 00044E8C  80 83 00 08 */	lwz r4, 8(r3)
/* 80049230 00044E90  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 80049234 00044E94  40 82 00 34 */	bne lbl_80049268
/* 80049238 00044E98  60 80 00 01 */	ori r0, r4, 1
/* 8004923C 00044E9C  90 03 00 08 */	stw r0, 8(r3)
/* 80049240 00044EA0  81 83 00 28 */	lwz r12, 0x28(r3)
/* 80049244 00044EA4  81 8C 00 08 */	lwz r12, 8(r12)
/* 80049248 00044EA8  7D 89 03 A6 */	mtctr r12
/* 8004924C 00044EAC  4E 80 04 21 */	bctrl
/* 80049250 00044EB0  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 80049254 00044EB4  7F E3 FB 78 */	mr r3, r31
/* 80049258 00044EB8  81 8C 00 24 */	lwz r12, 0x24(r12)
/* 8004925C 00044EBC  7D 89 03 A6 */	mtctr r12
/* 80049260 00044EC0  4E 80 04 21 */	bctrl
/* 80049264 00044EC4  D0 3F 00 10 */	stfs f1, 0x10(r31)
lbl_80049268:
/* 80049268 00044EC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004926C 00044ECC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80049270 00044ED0  7C 08 03 A6 */	mtlr r0
/* 80049274 00044ED4  38 21 00 10 */	addi r1, r1, 0x10
/* 80049278 00044ED8  4E 80 00 20 */	blr
/* 8004927C 00044EDC  4E 80 00 20 */	blr

.global func_80049280
func_80049280:
/* 80049280 00044EE0  80 83 00 08 */	lwz r4, 8(r3)
/* 80049284 00044EE4  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 80049288 00044EE8  4D 82 00 20 */	beqlr
/* 8004928C 00044EEC  54 80 00 3C */	rlwinm r0, r4, 0, 0, 0x1e
/* 80049290 00044EF0  60 00 00 02 */	ori r0, r0, 2
/* 80049294 00044EF4  90 03 00 08 */	stw r0, 8(r3)
/* 80049298 00044EF8  81 83 00 28 */	lwz r12, 0x28(r3)
/* 8004929C 00044EFC  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 800492A0 00044F00  7D 89 03 A6 */	mtctr r12
/* 800492A4 00044F04  4E 80 04 20 */	bctr
/* 800492A8 00044F08  4E 80 00 20 */	blr
/* 800492AC 00044F0C  4E 80 00 20 */	blr

.global func_800492B0
func_800492B0:
/* 800492B0 00044F10  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800492B4 00044F14  7C 08 02 A6 */	mflr r0
/* 800492B8 00044F18  90 01 00 14 */	stw r0, 0x14(r1)
/* 800492BC 00044F1C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800492C0 00044F20  7C 7F 1B 78 */	mr r31, r3
/* 800492C4 00044F24  80 83 00 08 */	lwz r4, 8(r3)
/* 800492C8 00044F28  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 800492CC 00044F2C  41 82 00 54 */	beq lbl_80049320
/* 800492D0 00044F30  C0 42 83 D0 */	lfs f2, lbl_806409D0-_SDA2_BASE_(r2)
/* 800492D4 00044F34  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 800492D8 00044F38  FC 02 00 00 */	fcmpu cr0, f2, f0
/* 800492DC 00044F3C  40 82 00 10 */	bne lbl_800492EC
/* 800492E0 00044F40  54 80 00 3C */	rlwinm r0, r4, 0, 0, 0x1e
/* 800492E4 00044F44  90 03 00 08 */	stw r0, 8(r3)
/* 800492E8 00044F48  48 00 00 38 */	b lbl_80049320
lbl_800492EC:
/* 800492EC 00044F4C  EC 00 08 28 */	fsubs f0, f0, f1
/* 800492F0 00044F50  D0 03 00 10 */	stfs f0, 0x10(r3)
/* 800492F4 00044F54  81 83 00 28 */	lwz r12, 0x28(r3)
/* 800492F8 00044F58  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 800492FC 00044F5C  7D 89 03 A6 */	mtctr r12
/* 80049300 00044F60  4E 80 04 21 */	bctrl
/* 80049304 00044F64  C0 3F 00 10 */	lfs f1, 0x10(r31)
/* 80049308 00044F68  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004930C 00044F6C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80049310 00044F70  4C 40 13 82 */	cror 2, 0, 2
/* 80049314 00044F74  40 82 00 0C */	bne lbl_80049320
/* 80049318 00044F78  7F E3 FB 78 */	mr r3, r31
/* 8004931C 00044F7C  4B FF FF 65 */	bl func_80049280
lbl_80049320:
/* 80049320 00044F80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80049324 00044F84  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80049328 00044F88  7C 08 03 A6 */	mtlr r0
/* 8004932C 00044F8C  38 21 00 10 */	addi r1, r1, 0x10
/* 80049330 00044F90  4E 80 00 20 */	blr
/* 80049334 00044F94  4E 80 00 20 */	blr

.global func_80049338
func_80049338:
/* 80049338 00044F98  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004933C 00044F9C  7C 08 02 A6 */	mflr r0
/* 80049340 00044FA0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80049344 00044FA4  39 61 00 30 */	addi r11, r1, 0x30
/* 80049348 00044FA8  48 17 DD D5 */	bl _savegpr_24
/* 8004934C 00044FAC  7C 7C 1B 78 */	mr r28, r3
/* 80049350 00044FB0  7C 83 23 78 */	mr r3, r4
/* 80049354 00044FB4  A3 5C 00 DE */	lhz r26, 0xde(r28)
/* 80049358 00044FB8  7C BD 2B 78 */	mr r29, r5
/* 8004935C 00044FBC  48 17 D8 09 */	bl strlen
/* 80049360 00044FC0  2C 1C 00 00 */	cmpwi r28, 0
/* 80049364 00044FC4  7C 7F 1B 78 */	mr r31, r3
/* 80049368 00044FC8  40 82 00 0C */	bne lbl_80049374
/* 8004936C 00044FCC  38 60 00 00 */	li r3, 0
/* 80049370 00044FD0  48 00 01 00 */	b lbl_80049470
lbl_80049374:
/* 80049374 00044FD4  3B C0 00 00 */	li r30, 0
/* 80049378 00044FD8  3F 60 80 41 */	lis r27, 0x8041
/* 8004937C 00044FDC  48 00 00 E4 */	b lbl_80049460
lbl_80049380:
/* 80049380 00044FE0  80 9C 00 08 */	lwz r4, 8(r28)
/* 80049384 00044FE4  2C 04 00 00 */	cmpwi r4, 0
/* 80049388 00044FE8  40 82 00 0C */	bne lbl_80049394
/* 8004938C 00044FEC  3B 20 00 00 */	li r25, 0
/* 80049390 00044FF0  48 00 00 24 */	b lbl_800493B4
lbl_80049394:
/* 80049394 00044FF4  A0 1C 00 DE */	lhz r0, 0xde(r28)
/* 80049398 00044FF8  57 C3 04 3E */	clrlwi r3, r30, 0x10
/* 8004939C 00044FFC  7C 03 00 40 */	cmplw r3, r0
/* 800493A0 00045000  41 80 00 0C */	blt lbl_800493AC
/* 800493A4 00045004  3B 20 00 00 */	li r25, 0
/* 800493A8 00045008  48 00 00 0C */	b lbl_800493B4
lbl_800493AC:
/* 800493AC 0004500C  57 C0 13 BA */	rlwinm r0, r30, 2, 0xe, 0x1d
/* 800493B0 00045010  7F 24 00 2E */	lwzx r25, r4, r0
lbl_800493B4:
/* 800493B4 00045014  2C 19 00 00 */	cmpwi r25, 0
/* 800493B8 00045018  41 82 00 A4 */	beq lbl_8004945C
/* 800493BC 0004501C  80 79 00 1C */	lwz r3, 0x1c(r25)
/* 800493C0 00045020  2C 03 00 00 */	cmpwi r3, 0
/* 800493C4 00045024  41 82 00 0C */	beq lbl_800493D0
/* 800493C8 00045028  83 03 00 04 */	lwz r24, 4(r3)
/* 800493CC 0004502C  48 00 00 08 */	b lbl_800493D4
lbl_800493D0:
/* 800493D0 00045030  3B 00 00 00 */	li r24, 0
lbl_800493D4:
/* 800493D4 00045034  7F 03 C3 78 */	mr r3, r24
/* 800493D8 00045038  7F E5 FB 78 */	mr r5, r31
/* 800493DC 0004503C  38 9B A4 D0 */	addi r4, r27, -23344
/* 800493E0 00045040  48 18 51 89 */	bl strncmp
/* 800493E4 00045044  2C 03 00 00 */	cmpwi r3, 0
/* 800493E8 00045048  40 82 00 74 */	bne lbl_8004945C
/* 800493EC 0004504C  2C 1D 00 00 */	cmpwi r29, 0
/* 800493F0 00045050  40 80 00 0C */	bge lbl_800493FC
/* 800493F4 00045054  7F 23 CB 78 */	mr r3, r25
/* 800493F8 00045058  48 00 00 78 */	b lbl_80049470
lbl_800493FC:
/* 800493FC 0004505C  7C 98 FA 14 */	add r4, r24, r31
/* 80049400 00045060  38 A0 00 00 */	li r5, 0
/* 80049404 00045064  48 00 00 34 */	b lbl_80049438
lbl_80049408:
/* 80049408 00045068  7C 63 07 74 */	extsb r3, r3
/* 8004940C 0004506C  2C 03 00 30 */	cmpwi r3, 0x30
/* 80049410 00045070  41 80 00 1C */	blt lbl_8004942C
/* 80049414 00045074  2C 03 00 39 */	cmpwi r3, 0x39
/* 80049418 00045078  41 81 00 14 */	bgt lbl_8004942C
/* 8004941C 0004507C  1C 05 00 0A */	mulli r0, r5, 0xa
/* 80049420 00045080  7C 63 02 14 */	add r3, r3, r0
/* 80049424 00045084  38 A3 FF D0 */	addi r5, r3, -48
/* 80049428 00045088  48 00 00 0C */	b lbl_80049434
lbl_8004942C:
/* 8004942C 0004508C  38 A0 FF FF */	li r5, -1
/* 80049430 00045090  48 00 00 14 */	b lbl_80049444
lbl_80049434:
/* 80049434 00045094  38 84 00 01 */	addi r4, r4, 1
lbl_80049438:
/* 80049438 00045098  88 64 00 00 */	lbz r3, 0(r4)
/* 8004943C 0004509C  7C 60 07 75 */	extsb. r0, r3
/* 80049440 000450A0  40 82 FF C8 */	bne lbl_80049408
lbl_80049444:
/* 80049444 000450A4  2C 05 00 00 */	cmpwi r5, 0
/* 80049448 000450A8  41 80 00 14 */	blt lbl_8004945C
/* 8004944C 000450AC  7C 05 E8 00 */	cmpw r5, r29
/* 80049450 000450B0  40 82 00 0C */	bne lbl_8004945C
/* 80049454 000450B4  7F 23 CB 78 */	mr r3, r25
/* 80049458 000450B8  48 00 00 18 */	b lbl_80049470
lbl_8004945C:
/* 8004945C 000450BC  3B DE 00 01 */	addi r30, r30, 1
lbl_80049460:
/* 80049460 000450C0  57 C0 04 3E */	clrlwi r0, r30, 0x10
/* 80049464 000450C4  7C 00 D0 40 */	cmplw r0, r26
/* 80049468 000450C8  41 80 FF 18 */	blt lbl_80049380
/* 8004946C 000450CC  38 60 00 00 */	li r3, 0
lbl_80049470:
/* 80049470 000450D0  39 61 00 30 */	addi r11, r1, 0x30
/* 80049474 000450D4  48 17 DC F5 */	bl _restgpr_24
/* 80049478 000450D8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004947C 000450DC  7C 08 03 A6 */	mtlr r0
/* 80049480 000450E0  38 21 00 30 */	addi r1, r1, 0x30
/* 80049484 000450E4  4E 80 00 20 */	blr

.global func_80049488
func_80049488:
/* 80049488 000450E8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004948C 000450EC  7C 08 02 A6 */	mflr r0
/* 80049490 000450F0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80049494 000450F4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80049498 000450F8  7C 7F 1B 78 */	mr r31, r3
/* 8004949C 000450FC  4B FF FB E9 */	bl func_80049084
/* 800494A0 00045100  3C 80 80 41 */	lis r4, lbl_8040A698@ha
/* 800494A4 00045104  38 00 00 00 */	li r0, 0
/* 800494A8 00045108  38 84 A6 98 */	addi r4, r4, lbl_8040A698@l
/* 800494AC 0004510C  98 1F 00 38 */	stb r0, 0x38(r31)
/* 800494B0 00045110  7F E3 FB 78 */	mr r3, r31
/* 800494B4 00045114  90 9F 00 28 */	stw r4, 0x28(r31)
/* 800494B8 00045118  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800494BC 0004511C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800494C0 00045120  7C 08 03 A6 */	mtlr r0
/* 800494C4 00045124  38 21 00 10 */	addi r1, r1, 0x10
/* 800494C8 00045128  4E 80 00 20 */	blr
/* 800494CC 0004512C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800494D0 00045130  7C 08 02 A6 */	mflr r0
/* 800494D4 00045134  2C 03 00 00 */	cmpwi r3, 0
/* 800494D8 00045138  90 01 00 14 */	stw r0, 0x14(r1)
/* 800494DC 0004513C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800494E0 00045140  7C 9F 23 78 */	mr r31, r4
/* 800494E4 00045144  93 C1 00 08 */	stw r30, 8(r1)
/* 800494E8 00045148  7C 7E 1B 78 */	mr r30, r3
/* 800494EC 0004514C  41 82 00 38 */	beq lbl_80049524
/* 800494F0 00045150  3D 80 80 41 */	lis r12, lbl_8040A698@ha
/* 800494F4 00045154  39 8C A6 98 */	addi r12, r12, lbl_8040A698@l
/* 800494F8 00045158  91 83 00 28 */	stw r12, 0x28(r3)
/* 800494FC 0004515C  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 80049500 00045160  7D 89 03 A6 */	mtctr r12
/* 80049504 00045164  4E 80 04 21 */	bctrl
/* 80049508 00045168  7F C3 F3 78 */	mr r3, r30
/* 8004950C 0004516C  38 80 00 00 */	li r4, 0
/* 80049510 00045170  4B FF FB A5 */	bl func_800490B4
/* 80049514 00045174  2C 1F 00 00 */	cmpwi r31, 0
/* 80049518 00045178  40 81 00 0C */	ble lbl_80049524
/* 8004951C 0004517C  7F C3 F3 78 */	mr r3, r30
/* 80049520 00045180  48 19 15 99 */	bl func_801DAAB8
lbl_80049524:
/* 80049524 00045184  7F C3 F3 78 */	mr r3, r30
/* 80049528 00045188  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004952C 0004518C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80049530 00045190  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80049534 00045194  7C 08 03 A6 */	mtlr r0
/* 80049538 00045198  38 21 00 10 */	addi r1, r1, 0x10
/* 8004953C 0004519C  4E 80 00 20 */	blr
/* 80049540 000451A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80049544 000451A4  7C 08 02 A6 */	mflr r0
/* 80049548 000451A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004954C 000451AC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80049550 000451B0  7C 7F 1B 78 */	mr r31, r3
/* 80049554 000451B4  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 80049558 000451B8  2C 00 00 00 */	cmpwi r0, 0
/* 8004955C 000451BC  41 82 00 1C */	beq lbl_80049578
/* 80049560 000451C0  7C 03 03 78 */	mr r3, r0
/* 80049564 000451C4  38 80 00 01 */	li r4, 1
/* 80049568 000451C8  48 1B 0D 2D */	bl func_801FA294
/* 8004956C 000451CC  38 00 00 00 */	li r0, 0
/* 80049570 000451D0  90 1F 00 2C */	stw r0, 0x2c(r31)
/* 80049574 000451D4  90 1F 00 30 */	stw r0, 0x30(r31)
lbl_80049578:
/* 80049578 000451D8  7F E3 FB 78 */	mr r3, r31
/* 8004957C 000451DC  4B FF FB A1 */	bl func_8004911C
/* 80049580 000451E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80049584 000451E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80049588 000451E8  7C 08 03 A6 */	mtlr r0
/* 8004958C 000451EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80049590 000451F0  4E 80 00 20 */	blr
/* 80049594 000451F4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80049598 000451F8  7C 08 02 A6 */	mflr r0
/* 8004959C 000451FC  90 01 00 24 */	stw r0, 0x24(r1)
/* 800495A0 00045200  39 61 00 20 */	addi r11, r1, 0x20
/* 800495A4 00045204  48 17 DB 81 */	bl _savegpr_26
/* 800495A8 00045208  7C 7F 1B 78 */	mr r31, r3
/* 800495AC 0004520C  7C 9A 23 78 */	mr r26, r4
/* 800495B0 00045210  48 19 15 79 */	bl func_801DAB28
/* 800495B4 00045214  2C 03 00 00 */	cmpwi r3, 0
/* 800495B8 00045218  41 82 00 14 */	beq lbl_800495CC
/* 800495BC 0004521C  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800495C0 00045220  38 80 00 14 */	li r4, 0x14
/* 800495C4 00045224  48 19 16 D1 */	bl func_801DAC94
/* 800495C8 00045228  48 00 00 08 */	b lbl_800495D0
lbl_800495CC:
/* 800495CC 0004522C  38 60 00 00 */	li r3, 0
lbl_800495D0:
/* 800495D0 00045230  2C 03 00 00 */	cmpwi r3, 0
/* 800495D4 00045234  41 82 00 0C */	beq lbl_800495E0
/* 800495D8 00045238  80 9A 00 48 */	lwz r4, 0x48(r26)
/* 800495DC 0004523C  48 1B 0A B9 */	bl func_801FA094
lbl_800495E0:
/* 800495E0 00045240  38 00 00 00 */	li r0, 0
/* 800495E4 00045244  2C 03 00 00 */	cmpwi r3, 0
/* 800495E8 00045248  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 800495EC 0004524C  90 1F 00 30 */	stw r0, 0x30(r31)
/* 800495F0 00045250  90 1F 00 34 */	stw r0, 0x34(r31)
/* 800495F4 00045254  41 82 00 E4 */	beq lbl_800496D8
/* 800495F8 00045258  80 83 00 04 */	lwz r4, 4(r3)
/* 800495FC 0004525C  2C 04 00 00 */	cmpwi r4, 0
/* 80049600 00045260  40 82 00 0C */	bne lbl_8004960C
/* 80049604 00045264  38 00 00 00 */	li r0, 0
/* 80049608 00045268  48 00 00 20 */	b lbl_80049628
lbl_8004960C:
/* 8004960C 0004526C  80 63 00 00 */	lwz r3, 0(r3)
/* 80049610 00045270  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80049614 00045274  2C 00 00 00 */	cmpwi r0, 0
/* 80049618 00045278  40 82 00 0C */	bne lbl_80049624
/* 8004961C 0004527C  38 00 00 00 */	li r0, 0
/* 80049620 00045280  48 00 00 08 */	b lbl_80049628
lbl_80049624:
/* 80049624 00045284  80 04 00 00 */	lwz r0, 0(r4)
lbl_80049628:
/* 80049628 00045288  90 1F 00 30 */	stw r0, 0x30(r31)
/* 8004962C 0004528C  38 8D 80 E8 */	addi r4, r13, lbl_8063D3A8-_SDA_BASE_
/* 80049630 00045290  80 7A 00 2C */	lwz r3, 0x2c(r26)
/* 80049634 00045294  48 18 4E 19 */	bl strcmp
/* 80049638 00045298  2C 03 00 00 */	cmpwi r3, 0
/* 8004963C 0004529C  40 82 00 0C */	bne lbl_80049648
/* 80049640 000452A0  38 00 00 01 */	li r0, 1
/* 80049644 000452A4  98 1F 00 38 */	stb r0, 0x38(r31)
lbl_80049648:
/* 80049648 000452A8  83 7F 00 30 */	lwz r27, 0x30(r31)
/* 8004964C 000452AC  3B 40 00 00 */	li r26, 0
/* 80049650 000452B0  3F C0 80 41 */	lis r30, 0x8041
/* 80049654 000452B4  A3 BB 00 DE */	lhz r29, 0xde(r27)
/* 80049658 000452B8  48 00 00 74 */	b lbl_800496CC
lbl_8004965C:
/* 8004965C 000452BC  80 9B 00 08 */	lwz r4, 8(r27)
/* 80049660 000452C0  2C 04 00 00 */	cmpwi r4, 0
/* 80049664 000452C4  40 82 00 0C */	bne lbl_80049670
/* 80049668 000452C8  3B 80 00 00 */	li r28, 0
/* 8004966C 000452CC  48 00 00 24 */	b lbl_80049690
lbl_80049670:
/* 80049670 000452D0  A0 1B 00 DE */	lhz r0, 0xde(r27)
/* 80049674 000452D4  57 43 04 3E */	clrlwi r3, r26, 0x10
/* 80049678 000452D8  7C 03 00 40 */	cmplw r3, r0
/* 8004967C 000452DC  41 80 00 0C */	blt lbl_80049688
/* 80049680 000452E0  3B 80 00 00 */	li r28, 0
/* 80049684 000452E4  48 00 00 0C */	b lbl_80049690
lbl_80049688:
/* 80049688 000452E8  57 40 13 BA */	rlwinm r0, r26, 2, 0xe, 0x1d
/* 8004968C 000452EC  7F 84 00 2E */	lwzx r28, r4, r0
lbl_80049690:
/* 80049690 000452F0  2C 1C 00 00 */	cmpwi r28, 0
/* 80049694 000452F4  41 82 00 34 */	beq lbl_800496C8
/* 80049698 000452F8  80 7C 00 1C */	lwz r3, 0x1c(r28)
/* 8004969C 000452FC  2C 03 00 00 */	cmpwi r3, 0
/* 800496A0 00045300  41 82 00 0C */	beq lbl_800496AC
/* 800496A4 00045304  80 63 00 04 */	lwz r3, 4(r3)
/* 800496A8 00045308  48 00 00 08 */	b lbl_800496B0
lbl_800496AC:
/* 800496AC 0004530C  38 60 00 00 */	li r3, 0
lbl_800496B0:
/* 800496B0 00045310  38 9E A4 DC */	addi r4, r30, -23332
/* 800496B4 00045314  48 18 4D 99 */	bl strcmp
/* 800496B8 00045318  2C 03 00 00 */	cmpwi r3, 0
/* 800496BC 0004531C  40 82 00 0C */	bne lbl_800496C8
/* 800496C0 00045320  93 9F 00 34 */	stw r28, 0x34(r31)
/* 800496C4 00045324  48 00 00 14 */	b lbl_800496D8
lbl_800496C8:
/* 800496C8 00045328  3B 5A 00 01 */	addi r26, r26, 1
lbl_800496CC:
/* 800496CC 0004532C  57 40 04 3E */	clrlwi r0, r26, 0x10
/* 800496D0 00045330  7C 00 E8 40 */	cmplw r0, r29
/* 800496D4 00045334  41 80 FF 88 */	blt lbl_8004965C
lbl_800496D8:
/* 800496D8 00045338  39 61 00 20 */	addi r11, r1, 0x20
/* 800496DC 0004533C  48 17 DA 95 */	bl _restgpr_26
/* 800496E0 00045340  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800496E4 00045344  7C 08 03 A6 */	mtlr r0
/* 800496E8 00045348  38 21 00 20 */	addi r1, r1, 0x20
/* 800496EC 0004534C  4E 80 00 20 */	blr
/* 800496F0 00045350  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800496F4 00045354  7C 08 02 A6 */	mflr r0
/* 800496F8 00045358  90 01 00 34 */	stw r0, 0x34(r1)
/* 800496FC 0004535C  39 61 00 30 */	addi r11, r1, 0x30
/* 80049700 00045360  48 17 DA 21 */	bl _savegpr_25
/* 80049704 00045364  80 83 00 14 */	lwz r4, 0x14(r3)
/* 80049708 00045368  7C 7E 1B 78 */	mr r30, r3
/* 8004970C 0004536C  80 04 00 00 */	lwz r0, 0(r4)
/* 80049710 00045370  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80049714 00045374  41 82 01 38 */	beq lbl_8004984C
/* 80049718 00045378  80 A4 00 1C */	lwz r5, 0x1c(r4)
/* 8004971C 0004537C  2C 05 00 00 */	cmpwi r5, 0
/* 80049720 00045380  41 82 00 10 */	beq lbl_80049730
/* 80049724 00045384  A0 05 00 0A */	lhz r0, 0xa(r5)
/* 80049728 00045388  28 00 00 01 */	cmplwi r0, 1
/* 8004972C 0004538C  40 82 01 20 */	bne lbl_8004984C
lbl_80049730:
/* 80049730 00045390  80 63 00 18 */	lwz r3, 0x18(r3)
/* 80049734 00045394  A0 84 00 08 */	lhz r4, 8(r4)
/* 80049738 00045398  4B FF E3 11 */	bl func_80047A48
/* 8004973C 0004539C  2C 03 00 00 */	cmpwi r3, 0
/* 80049740 000453A0  41 82 01 0C */	beq lbl_8004984C
/* 80049744 000453A4  80 63 00 30 */	lwz r3, 0x30(r3)
/* 80049748 000453A8  3B E0 00 00 */	li r31, 0
/* 8004974C 000453AC  3F A0 80 41 */	lis r29, 0x8041
/* 80049750 000453B0  A3 83 00 DE */	lhz r28, 0xde(r3)
/* 80049754 000453B4  48 00 00 EC */	b lbl_80049840
lbl_80049758:
/* 80049758 000453B8  80 7E 00 30 */	lwz r3, 0x30(r30)
/* 8004975C 000453BC  80 83 00 08 */	lwz r4, 8(r3)
/* 80049760 000453C0  2C 04 00 00 */	cmpwi r4, 0
/* 80049764 000453C4  40 82 00 0C */	bne lbl_80049770
/* 80049768 000453C8  3B 60 00 00 */	li r27, 0
/* 8004976C 000453CC  48 00 00 24 */	b lbl_80049790
lbl_80049770:
/* 80049770 000453D0  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 80049774 000453D4  57 E3 04 3E */	clrlwi r3, r31, 0x10
/* 80049778 000453D8  7C 03 00 40 */	cmplw r3, r0
/* 8004977C 000453DC  41 80 00 0C */	blt lbl_80049788
/* 80049780 000453E0  3B 60 00 00 */	li r27, 0
/* 80049784 000453E4  48 00 00 0C */	b lbl_80049790
lbl_80049788:
/* 80049788 000453E8  57 E0 13 BA */	rlwinm r0, r31, 2, 0xe, 0x1d
/* 8004978C 000453EC  7F 64 00 2E */	lwzx r27, r4, r0
lbl_80049790:
/* 80049790 000453F0  2C 1B 00 00 */	cmpwi r27, 0
/* 80049794 000453F4  41 82 00 A8 */	beq lbl_8004983C
/* 80049798 000453F8  80 7B 00 1C */	lwz r3, 0x1c(r27)
/* 8004979C 000453FC  2C 03 00 00 */	cmpwi r3, 0
/* 800497A0 00045400  41 82 00 0C */	beq lbl_800497AC
/* 800497A4 00045404  83 43 00 04 */	lwz r26, 4(r3)
/* 800497A8 00045408  48 00 00 08 */	b lbl_800497B0
lbl_800497AC:
/* 800497AC 0004540C  3B 40 00 00 */	li r26, 0
lbl_800497B0:
/* 800497B0 00045410  38 7D A4 D0 */	addi r3, r29, -23344
/* 800497B4 00045414  48 17 D3 B1 */	bl strlen
/* 800497B8 00045418  7C 79 1B 78 */	mr r25, r3
/* 800497BC 0004541C  7F 43 D3 78 */	mr r3, r26
/* 800497C0 00045420  7F 25 CB 78 */	mr r5, r25
/* 800497C4 00045424  38 9D A4 D0 */	addi r4, r29, -23344
/* 800497C8 00045428  48 18 4D A1 */	bl strncmp
/* 800497CC 0004542C  2C 03 00 00 */	cmpwi r3, 0
/* 800497D0 00045430  40 82 00 6C */	bne lbl_8004983C
/* 800497D4 00045434  7C 9A CA 14 */	add r4, r26, r25
/* 800497D8 00045438  38 A0 00 00 */	li r5, 0
/* 800497DC 0004543C  48 00 00 34 */	b lbl_80049810
lbl_800497E0:
/* 800497E0 00045440  7C 63 07 74 */	extsb r3, r3
/* 800497E4 00045444  2C 03 00 30 */	cmpwi r3, 0x30
/* 800497E8 00045448  41 80 00 1C */	blt lbl_80049804
/* 800497EC 0004544C  2C 03 00 39 */	cmpwi r3, 0x39
/* 800497F0 00045450  41 81 00 14 */	bgt lbl_80049804
/* 800497F4 00045454  1C 05 00 0A */	mulli r0, r5, 0xa
/* 800497F8 00045458  7C 63 02 14 */	add r3, r3, r0
/* 800497FC 0004545C  38 A3 FF D0 */	addi r5, r3, -48
/* 80049800 00045460  48 00 00 0C */	b lbl_8004980C
lbl_80049804:
/* 80049804 00045464  38 A0 FF FF */	li r5, -1
/* 80049808 00045468  48 00 00 14 */	b lbl_8004981C
lbl_8004980C:
/* 8004980C 0004546C  38 84 00 01 */	addi r4, r4, 1
lbl_80049810:
/* 80049810 00045470  88 64 00 00 */	lbz r3, 0(r4)
/* 80049814 00045474  7C 60 07 75 */	extsb. r0, r3
/* 80049818 00045478  40 82 FF C8 */	bne lbl_800497E0
lbl_8004981C:
/* 8004981C 0004547C  2C 05 00 00 */	cmpwi r5, 0
/* 80049820 00045480  41 80 00 1C */	blt lbl_8004983C
/* 80049824 00045484  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 80049828 00045488  88 03 00 0C */	lbz r0, 0xc(r3)
/* 8004982C 0004548C  7C 05 00 00 */	cmpw r5, r0
/* 80049830 00045490  40 82 00 0C */	bne lbl_8004983C
/* 80049834 00045494  93 7E 00 1C */	stw r27, 0x1c(r30)
/* 80049838 00045498  48 00 00 14 */	b lbl_8004984C
lbl_8004983C:
/* 8004983C 0004549C  3B FF 00 01 */	addi r31, r31, 1
lbl_80049840:
/* 80049840 000454A0  57 E0 04 3E */	clrlwi r0, r31, 0x10
/* 80049844 000454A4  7C 00 E0 40 */	cmplw r0, r28
/* 80049848 000454A8  41 80 FF 10 */	blt lbl_80049758
lbl_8004984C:
/* 8004984C 000454AC  39 61 00 30 */	addi r11, r1, 0x30
/* 80049850 000454B0  48 17 D9 1D */	bl _restgpr_25
/* 80049854 000454B4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80049858 000454B8  7C 08 03 A6 */	mtlr r0
/* 8004985C 000454BC  38 21 00 30 */	addi r1, r1, 0x30
/* 80049860 000454C0  4E 80 00 20 */	blr
/* 80049864 000454C4  80 83 00 14 */	lwz r4, 0x14(r3)
/* 80049868 000454C8  2C 04 00 00 */	cmpwi r4, 0
/* 8004986C 000454CC  40 82 00 0C */	bne lbl_80049878
/* 80049870 000454D0  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049874 000454D4  4E 80 00 20 */	blr
lbl_80049878:
/* 80049878 000454D8  C0 24 00 04 */	lfs f1, 4(r4)
/* 8004987C 000454DC  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049880 000454E0  FC 00 08 00 */	fcmpu cr0, f0, f1
/* 80049884 000454E4  40 82 00 80 */	bne lbl_80049904
/* 80049888 000454E8  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 8004988C 000454EC  2C 03 00 00 */	cmpwi r3, 0
/* 80049890 000454F0  41 82 00 74 */	beq lbl_80049904
/* 80049894 000454F4  80 A3 00 04 */	lwz r5, 4(r3)
/* 80049898 000454F8  2C 05 00 00 */	cmpwi r5, 0
/* 8004989C 000454FC  40 82 00 0C */	bne lbl_800498A8
/* 800498A0 00045500  38 60 00 00 */	li r3, 0
/* 800498A4 00045504  48 00 00 20 */	b lbl_800498C4
lbl_800498A8:
/* 800498A8 00045508  80 63 00 00 */	lwz r3, 0(r3)
/* 800498AC 0004550C  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 800498B0 00045510  2C 00 00 00 */	cmpwi r0, 0
/* 800498B4 00045514  40 82 00 0C */	bne lbl_800498C0
/* 800498B8 00045518  38 60 00 00 */	li r3, 0
/* 800498BC 0004551C  48 00 00 08 */	b lbl_800498C4
lbl_800498C0:
/* 800498C0 00045520  80 65 00 00 */	lwz r3, 0(r5)
lbl_800498C4:
/* 800498C4 00045524  2C 03 00 00 */	cmpwi r3, 0
/* 800498C8 00045528  41 82 00 3C */	beq lbl_80049904
/* 800498CC 0004552C  80 63 00 04 */	lwz r3, 4(r3)
/* 800498D0 00045530  2C 03 00 00 */	cmpwi r3, 0
/* 800498D4 00045534  40 82 00 0C */	bne lbl_800498E0
/* 800498D8 00045538  38 60 00 00 */	li r3, 0
/* 800498DC 0004553C  48 00 00 1C */	b lbl_800498F8
lbl_800498E0:
/* 800498E0 00045540  A0 03 00 08 */	lhz r0, 8(r3)
/* 800498E4 00045544  2C 00 00 00 */	cmpwi r0, 0
/* 800498E8 00045548  40 82 00 0C */	bne lbl_800498F4
/* 800498EC 0004554C  38 60 00 00 */	li r3, 0
/* 800498F0 00045550  48 00 00 08 */	b lbl_800498F8
lbl_800498F4:
/* 800498F4 00045554  80 63 00 0C */	lwz r3, 0xc(r3)
lbl_800498F8:
/* 800498F8 00045558  2C 03 00 00 */	cmpwi r3, 0
/* 800498FC 0004555C  41 82 00 08 */	beq lbl_80049904
/* 80049900 00045560  C0 23 00 0C */	lfs f1, 0xc(r3)
lbl_80049904:
/* 80049904 00045564  80 04 00 38 */	lwz r0, 0x38(r4)
/* 80049908 00045568  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8004990C 0004556C  4D 82 00 20 */	beqlr
/* 80049910 00045570  C0 22 83 D4 */	lfs f1, lbl_806409D4-_SDA2_BASE_(r2)
/* 80049914 00045574  4E 80 00 20 */	blr

.global func_80049918
func_80049918:
/* 80049918 00045578  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 8004991C 0004557C  7C 08 02 A6 */	mflr r0
/* 80049920 00045580  90 01 00 64 */	stw r0, 0x64(r1)
/* 80049924 00045584  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 80049928 00045588  93 C1 00 58 */	stw r30, 0x58(r1)
/* 8004992C 0004558C  93 A1 00 54 */	stw r29, 0x54(r1)
/* 80049930 00045590  93 81 00 50 */	stw r28, 0x50(r1)
/* 80049934 00045594  7C 7C 1B 78 */	mr r28, r3
/* 80049938 00045598  80 03 00 30 */	lwz r0, 0x30(r3)
/* 8004993C 0004559C  80 83 00 18 */	lwz r4, 0x18(r3)
/* 80049940 000455A0  2C 00 00 00 */	cmpwi r0, 0
/* 80049944 000455A4  83 C3 00 14 */	lwz r30, 0x14(r3)
/* 80049948 000455A8  83 E4 00 34 */	lwz r31, 0x34(r4)
/* 8004994C 000455AC  41 82 07 8C */	beq lbl_8004A0D8
/* 80049950 000455B0  80 9E 00 00 */	lwz r4, 0(r30)
/* 80049954 000455B4  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 80049958 000455B8  40 82 06 C4 */	bne lbl_8004A01C
/* 8004995C 000455BC  2C 1F 00 00 */	cmpwi r31, 0
/* 80049960 000455C0  41 82 00 0C */	beq lbl_8004996C
/* 80049964 000455C4  54 80 07 BD */	rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 80049968 000455C8  41 82 00 0C */	beq lbl_80049974
lbl_8004996C:
/* 8004996C 000455CC  83 A3 00 1C */	lwz r29, 0x1c(r3)
/* 80049970 000455D0  48 00 00 14 */	b lbl_80049984
lbl_80049974:
/* 80049974 000455D4  88 9E 00 0C */	lbz r4, 0xc(r30)
/* 80049978 000455D8  7F E3 FB 78 */	mr r3, r31
/* 8004997C 000455DC  4B FE FF 71 */	bl func_800398EC
/* 80049980 000455E0  7C 7D 1B 78 */	mr r29, r3
lbl_80049984:
/* 80049984 000455E4  2C 1D 00 00 */	cmpwi r29, 0
/* 80049988 000455E8  41 82 06 94 */	beq lbl_8004A01C
/* 8004998C 000455EC  80 7C 00 14 */	lwz r3, 0x14(r28)
/* 80049990 000455F0  88 03 00 0D */	lbz r0, 0xd(r3)
/* 80049994 000455F4  28 00 00 07 */	cmplwi r0, 7
/* 80049998 000455F8  41 81 06 84 */	bgt lbl_8004A01C
/* 8004999C 000455FC  3C 60 80 41 */	lis r3, lbl_8040A4E8@ha
/* 800499A0 00045600  54 00 10 3A */	slwi r0, r0, 2
/* 800499A4 00045604  38 63 A4 E8 */	addi r3, r3, lbl_8040A4E8@l
/* 800499A8 00045608  7C 63 00 2E */	lwzx r3, r3, r0
/* 800499AC 0004560C  7C 69 03 A6 */	mtctr r3
/* 800499B0 00045610  4E 80 04 20 */	bctr
/* 800499B4 00045614  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 800499B8 00045618  C0 5D 00 DC */	lfs f2, 0xdc(r29)
/* 800499BC 0004561C  80 63 00 08 */	lwz r3, 8(r3)
/* 800499C0 00045620  C0 3D 00 EC */	lfs f1, 0xec(r29)
/* 800499C4 00045624  C0 1D 00 FC */	lfs f0, 0xfc(r29)
/* 800499C8 00045628  2C 03 00 00 */	cmpwi r3, 0
/* 800499CC 0004562C  D0 41 00 38 */	stfs f2, 0x38(r1)
/* 800499D0 00045630  D0 21 00 3C */	stfs f1, 0x3c(r1)
/* 800499D4 00045634  D0 01 00 40 */	stfs f0, 0x40(r1)
/* 800499D8 00045638  41 82 06 44 */	beq lbl_8004A01C
/* 800499DC 0004563C  80 63 00 00 */	lwz r3, 0(r3)
/* 800499E0 00045640  2C 03 00 00 */	cmpwi r3, 0
/* 800499E4 00045644  41 82 06 38 */	beq lbl_8004A01C
/* 800499E8 00045648  D0 43 00 20 */	stfs f2, 0x20(r3)
/* 800499EC 0004564C  38 80 00 01 */	li r4, 1
/* 800499F0 00045650  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 800499F4 00045654  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 800499F8 00045658  48 1A 8C C1 */	bl func_801F26B8
/* 800499FC 0004565C  48 00 06 20 */	b lbl_8004A01C
/* 80049A00 00045660  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049A04 00045664  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80049A08 00045668  41 82 00 1C */	beq lbl_80049A24
/* 80049A0C 0004566C  38 7D 00 2C */	addi r3, r29, 0x2c
/* 80049A10 00045670  38 9D 00 3C */	addi r4, r29, 0x3c
/* 80049A14 00045674  48 1D 9C AD */	bl func_802236C0
/* 80049A18 00045678  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049A1C 0004567C  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049A20 00045680  B0 1D 00 10 */	sth r0, 0x10(r29)
lbl_80049A24:
/* 80049A24 00045684  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049A28 00045688  80 63 00 08 */	lwz r3, 8(r3)
/* 80049A2C 0004568C  2C 03 00 00 */	cmpwi r3, 0
/* 80049A30 00045690  41 82 05 EC */	beq lbl_8004A01C
/* 80049A34 00045694  80 63 00 00 */	lwz r3, 0(r3)
/* 80049A38 00045698  2C 03 00 00 */	cmpwi r3, 0
/* 80049A3C 0004569C  41 82 05 E0 */	beq lbl_8004A01C
/* 80049A40 000456A0  C0 1D 00 2C */	lfs f0, 0x2c(r29)
/* 80049A44 000456A4  38 80 00 01 */	li r4, 1
/* 80049A48 000456A8  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80049A4C 000456AC  C0 1D 00 30 */	lfs f0, 0x30(r29)
/* 80049A50 000456B0  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80049A54 000456B4  C0 1D 00 34 */	lfs f0, 0x34(r29)
/* 80049A58 000456B8  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80049A5C 000456BC  C0 1D 00 38 */	lfs f0, 0x38(r29)
/* 80049A60 000456C0  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80049A64 000456C4  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80049A68 000456C8  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049A6C 000456CC  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80049A70 000456D0  48 1A 8C 49 */	bl func_801F26B8
/* 80049A74 000456D4  48 00 05 A8 */	b lbl_8004A01C
/* 80049A78 000456D8  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049A7C 000456DC  80 63 00 08 */	lwz r3, 8(r3)
/* 80049A80 000456E0  2C 03 00 00 */	cmpwi r3, 0
/* 80049A84 000456E4  41 82 05 98 */	beq lbl_8004A01C
/* 80049A88 000456E8  80 63 00 00 */	lwz r3, 0(r3)
/* 80049A8C 000456EC  2C 03 00 00 */	cmpwi r3, 0
/* 80049A90 000456F0  41 82 05 8C */	beq lbl_8004A01C
/* 80049A94 000456F4  C0 1D 00 48 */	lfs f0, 0x48(r29)
/* 80049A98 000456F8  C0 42 83 D8 */	lfs f2, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049A9C 000456FC  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80049AA0 00045700  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80049AA4 00045704  C0 1D 00 4C */	lfs f0, 0x4c(r29)
/* 80049AA8 00045708  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80049AAC 0004570C  C0 1D 00 50 */	lfs f0, 0x50(r29)
/* 80049AB0 00045710  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80049AB4 00045714  40 80 00 2C */	bge lbl_80049AE0
/* 80049AB8 00045718  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 80049ABC 0004571C  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049AC0 00045720  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80049AC4 00045724  40 81 00 1C */	ble lbl_80049AE0
/* 80049AC8 00045728  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049ACC 0004572C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80049AD0 00045730  40 80 00 08 */	bge lbl_80049AD8
/* 80049AD4 00045734  48 00 00 08 */	b lbl_80049ADC
lbl_80049AD8:
/* 80049AD8 00045738  FC 60 10 90 */	fmr f3, f2
lbl_80049ADC:
/* 80049ADC 0004573C  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_80049AE0:
/* 80049AE0 00045740  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 80049AE4 00045744  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049AE8 00045748  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049AEC 0004574C  40 80 00 28 */	bge lbl_80049B14
/* 80049AF0 00045750  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049AF4 00045754  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049AF8 00045758  40 81 00 1C */	ble lbl_80049B14
/* 80049AFC 0004575C  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049B00 00045760  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049B04 00045764  40 80 00 08 */	bge lbl_80049B0C
/* 80049B08 00045768  48 00 00 08 */	b lbl_80049B10
lbl_80049B0C:
/* 80049B0C 0004576C  FC 60 08 90 */	fmr f3, f1
lbl_80049B10:
/* 80049B10 00045770  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_80049B14:
/* 80049B14 00045774  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 80049B18 00045778  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049B1C 0004577C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049B20 00045780  40 80 00 28 */	bge lbl_80049B48
/* 80049B24 00045784  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049B28 00045788  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049B2C 0004578C  40 81 00 1C */	ble lbl_80049B48
/* 80049B30 00045790  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049B34 00045794  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049B38 00045798  40 80 00 08 */	bge lbl_80049B40
/* 80049B3C 0004579C  48 00 00 08 */	b lbl_80049B44
lbl_80049B40:
/* 80049B40 000457A0  FC 60 08 90 */	fmr f3, f1
lbl_80049B44:
/* 80049B44 000457A4  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_80049B48:
/* 80049B48 000457A8  38 80 00 01 */	li r4, 1
/* 80049B4C 000457AC  48 1A 8B 6D */	bl func_801F26B8
/* 80049B50 000457B0  48 00 04 CC */	b lbl_8004A01C
/* 80049B54 000457B4  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049B58 000457B8  C0 5D 00 DC */	lfs f2, 0xdc(r29)
/* 80049B5C 000457BC  80 63 00 08 */	lwz r3, 8(r3)
/* 80049B60 000457C0  C0 3D 00 EC */	lfs f1, 0xec(r29)
/* 80049B64 000457C4  C0 1D 00 FC */	lfs f0, 0xfc(r29)
/* 80049B68 000457C8  2C 03 00 00 */	cmpwi r3, 0
/* 80049B6C 000457CC  D0 41 00 2C */	stfs f2, 0x2c(r1)
/* 80049B70 000457D0  D0 21 00 30 */	stfs f1, 0x30(r1)
/* 80049B74 000457D4  D0 01 00 34 */	stfs f0, 0x34(r1)
/* 80049B78 000457D8  41 82 00 24 */	beq lbl_80049B9C
/* 80049B7C 000457DC  80 63 00 00 */	lwz r3, 0(r3)
/* 80049B80 000457E0  2C 03 00 00 */	cmpwi r3, 0
/* 80049B84 000457E4  41 82 00 18 */	beq lbl_80049B9C
/* 80049B88 000457E8  D0 43 00 20 */	stfs f2, 0x20(r3)
/* 80049B8C 000457EC  38 80 00 01 */	li r4, 1
/* 80049B90 000457F0  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80049B94 000457F4  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80049B98 000457F8  48 1A 8B 21 */	bl func_801F26B8
lbl_80049B9C:
/* 80049B9C 000457FC  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049BA0 00045800  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80049BA4 00045804  41 82 00 1C */	beq lbl_80049BC0
/* 80049BA8 00045808  38 7D 00 2C */	addi r3, r29, 0x2c
/* 80049BAC 0004580C  38 9D 00 3C */	addi r4, r29, 0x3c
/* 80049BB0 00045810  48 1D 9B 11 */	bl func_802236C0
/* 80049BB4 00045814  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049BB8 00045818  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049BBC 0004581C  B0 1D 00 10 */	sth r0, 0x10(r29)
lbl_80049BC0:
/* 80049BC0 00045820  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049BC4 00045824  80 63 00 08 */	lwz r3, 8(r3)
/* 80049BC8 00045828  2C 03 00 00 */	cmpwi r3, 0
/* 80049BCC 0004582C  41 82 04 50 */	beq lbl_8004A01C
/* 80049BD0 00045830  80 63 00 00 */	lwz r3, 0(r3)
/* 80049BD4 00045834  2C 03 00 00 */	cmpwi r3, 0
/* 80049BD8 00045838  41 82 04 44 */	beq lbl_8004A01C
/* 80049BDC 0004583C  C0 1D 00 2C */	lfs f0, 0x2c(r29)
/* 80049BE0 00045840  38 80 00 01 */	li r4, 1
/* 80049BE4 00045844  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80049BE8 00045848  C0 1D 00 30 */	lfs f0, 0x30(r29)
/* 80049BEC 0004584C  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80049BF0 00045850  C0 1D 00 34 */	lfs f0, 0x34(r29)
/* 80049BF4 00045854  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80049BF8 00045858  C0 1D 00 38 */	lfs f0, 0x38(r29)
/* 80049BFC 0004585C  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80049C00 00045860  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80049C04 00045864  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049C08 00045868  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80049C0C 0004586C  48 1A 8A AD */	bl func_801F26B8
/* 80049C10 00045870  48 00 04 0C */	b lbl_8004A01C
/* 80049C14 00045874  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049C18 00045878  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80049C1C 0004587C  41 82 00 1C */	beq lbl_80049C38
/* 80049C20 00045880  38 7D 00 2C */	addi r3, r29, 0x2c
/* 80049C24 00045884  38 9D 00 3C */	addi r4, r29, 0x3c
/* 80049C28 00045888  48 1D 9A 99 */	bl func_802236C0
/* 80049C2C 0004588C  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049C30 00045890  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049C34 00045894  B0 1D 00 10 */	sth r0, 0x10(r29)
lbl_80049C38:
/* 80049C38 00045898  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049C3C 0004589C  80 63 00 08 */	lwz r3, 8(r3)
/* 80049C40 000458A0  2C 03 00 00 */	cmpwi r3, 0
/* 80049C44 000458A4  41 82 00 44 */	beq lbl_80049C88
/* 80049C48 000458A8  80 63 00 00 */	lwz r3, 0(r3)
/* 80049C4C 000458AC  2C 03 00 00 */	cmpwi r3, 0
/* 80049C50 000458B0  41 82 00 38 */	beq lbl_80049C88
/* 80049C54 000458B4  C0 1D 00 2C */	lfs f0, 0x2c(r29)
/* 80049C58 000458B8  38 80 00 01 */	li r4, 1
/* 80049C5C 000458BC  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80049C60 000458C0  C0 1D 00 30 */	lfs f0, 0x30(r29)
/* 80049C64 000458C4  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80049C68 000458C8  C0 1D 00 34 */	lfs f0, 0x34(r29)
/* 80049C6C 000458CC  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80049C70 000458D0  C0 1D 00 38 */	lfs f0, 0x38(r29)
/* 80049C74 000458D4  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80049C78 000458D8  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80049C7C 000458DC  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049C80 000458E0  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80049C84 000458E4  48 1A 8A 35 */	bl func_801F26B8
lbl_80049C88:
/* 80049C88 000458E8  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049C8C 000458EC  80 63 00 08 */	lwz r3, 8(r3)
/* 80049C90 000458F0  2C 03 00 00 */	cmpwi r3, 0
/* 80049C94 000458F4  41 82 03 88 */	beq lbl_8004A01C
/* 80049C98 000458F8  80 63 00 00 */	lwz r3, 0(r3)
/* 80049C9C 000458FC  2C 03 00 00 */	cmpwi r3, 0
/* 80049CA0 00045900  41 82 03 7C */	beq lbl_8004A01C
/* 80049CA4 00045904  C0 1D 00 48 */	lfs f0, 0x48(r29)
/* 80049CA8 00045908  C0 42 83 D8 */	lfs f2, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049CAC 0004590C  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80049CB0 00045910  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80049CB4 00045914  C0 1D 00 4C */	lfs f0, 0x4c(r29)
/* 80049CB8 00045918  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80049CBC 0004591C  C0 1D 00 50 */	lfs f0, 0x50(r29)
/* 80049CC0 00045920  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80049CC4 00045924  40 80 00 2C */	bge lbl_80049CF0
/* 80049CC8 00045928  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 80049CCC 0004592C  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049CD0 00045930  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80049CD4 00045934  40 81 00 1C */	ble lbl_80049CF0
/* 80049CD8 00045938  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049CDC 0004593C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80049CE0 00045940  40 80 00 08 */	bge lbl_80049CE8
/* 80049CE4 00045944  48 00 00 08 */	b lbl_80049CEC
lbl_80049CE8:
/* 80049CE8 00045948  FC 60 10 90 */	fmr f3, f2
lbl_80049CEC:
/* 80049CEC 0004594C  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_80049CF0:
/* 80049CF0 00045950  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 80049CF4 00045954  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049CF8 00045958  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049CFC 0004595C  40 80 00 28 */	bge lbl_80049D24
/* 80049D00 00045960  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049D04 00045964  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049D08 00045968  40 81 00 1C */	ble lbl_80049D24
/* 80049D0C 0004596C  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049D10 00045970  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049D14 00045974  40 80 00 08 */	bge lbl_80049D1C
/* 80049D18 00045978  48 00 00 08 */	b lbl_80049D20
lbl_80049D1C:
/* 80049D1C 0004597C  FC 60 08 90 */	fmr f3, f1
lbl_80049D20:
/* 80049D20 00045980  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_80049D24:
/* 80049D24 00045984  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 80049D28 00045988  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049D2C 0004598C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049D30 00045990  40 80 00 28 */	bge lbl_80049D58
/* 80049D34 00045994  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049D38 00045998  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049D3C 0004599C  40 81 00 1C */	ble lbl_80049D58
/* 80049D40 000459A0  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049D44 000459A4  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049D48 000459A8  40 80 00 08 */	bge lbl_80049D50
/* 80049D4C 000459AC  48 00 00 08 */	b lbl_80049D54
lbl_80049D50:
/* 80049D50 000459B0  FC 60 08 90 */	fmr f3, f1
lbl_80049D54:
/* 80049D54 000459B4  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_80049D58:
/* 80049D58 000459B8  38 80 00 01 */	li r4, 1
/* 80049D5C 000459BC  48 1A 89 5D */	bl func_801F26B8
/* 80049D60 000459C0  48 00 02 BC */	b lbl_8004A01C
/* 80049D64 000459C4  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049D68 000459C8  C0 5D 00 DC */	lfs f2, 0xdc(r29)
/* 80049D6C 000459CC  80 63 00 08 */	lwz r3, 8(r3)
/* 80049D70 000459D0  C0 3D 00 EC */	lfs f1, 0xec(r29)
/* 80049D74 000459D4  C0 1D 00 FC */	lfs f0, 0xfc(r29)
/* 80049D78 000459D8  2C 03 00 00 */	cmpwi r3, 0
/* 80049D7C 000459DC  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 80049D80 000459E0  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 80049D84 000459E4  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 80049D88 000459E8  41 82 00 24 */	beq lbl_80049DAC
/* 80049D8C 000459EC  80 63 00 00 */	lwz r3, 0(r3)
/* 80049D90 000459F0  2C 03 00 00 */	cmpwi r3, 0
/* 80049D94 000459F4  41 82 00 18 */	beq lbl_80049DAC
/* 80049D98 000459F8  D0 43 00 20 */	stfs f2, 0x20(r3)
/* 80049D9C 000459FC  38 80 00 01 */	li r4, 1
/* 80049DA0 00045A00  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80049DA4 00045A04  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80049DA8 00045A08  48 1A 89 11 */	bl func_801F26B8
lbl_80049DAC:
/* 80049DAC 00045A0C  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049DB0 00045A10  80 63 00 08 */	lwz r3, 8(r3)
/* 80049DB4 00045A14  2C 03 00 00 */	cmpwi r3, 0
/* 80049DB8 00045A18  41 82 02 64 */	beq lbl_8004A01C
/* 80049DBC 00045A1C  80 63 00 00 */	lwz r3, 0(r3)
/* 80049DC0 00045A20  2C 03 00 00 */	cmpwi r3, 0
/* 80049DC4 00045A24  41 82 02 58 */	beq lbl_8004A01C
/* 80049DC8 00045A28  C0 1D 00 48 */	lfs f0, 0x48(r29)
/* 80049DCC 00045A2C  C0 42 83 D8 */	lfs f2, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049DD0 00045A30  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80049DD4 00045A34  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80049DD8 00045A38  C0 1D 00 4C */	lfs f0, 0x4c(r29)
/* 80049DDC 00045A3C  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80049DE0 00045A40  C0 1D 00 50 */	lfs f0, 0x50(r29)
/* 80049DE4 00045A44  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80049DE8 00045A48  40 80 00 2C */	bge lbl_80049E14
/* 80049DEC 00045A4C  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 80049DF0 00045A50  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049DF4 00045A54  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80049DF8 00045A58  40 81 00 1C */	ble lbl_80049E14
/* 80049DFC 00045A5C  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049E00 00045A60  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80049E04 00045A64  40 80 00 08 */	bge lbl_80049E0C
/* 80049E08 00045A68  48 00 00 08 */	b lbl_80049E10
lbl_80049E0C:
/* 80049E0C 00045A6C  FC 60 10 90 */	fmr f3, f2
lbl_80049E10:
/* 80049E10 00045A70  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_80049E14:
/* 80049E14 00045A74  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 80049E18 00045A78  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049E1C 00045A7C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049E20 00045A80  40 80 00 28 */	bge lbl_80049E48
/* 80049E24 00045A84  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049E28 00045A88  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049E2C 00045A8C  40 81 00 1C */	ble lbl_80049E48
/* 80049E30 00045A90  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049E34 00045A94  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049E38 00045A98  40 80 00 08 */	bge lbl_80049E40
/* 80049E3C 00045A9C  48 00 00 08 */	b lbl_80049E44
lbl_80049E40:
/* 80049E40 00045AA0  FC 60 08 90 */	fmr f3, f1
lbl_80049E44:
/* 80049E44 00045AA4  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_80049E48:
/* 80049E48 00045AA8  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 80049E4C 00045AAC  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049E50 00045AB0  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049E54 00045AB4  40 80 00 28 */	bge lbl_80049E7C
/* 80049E58 00045AB8  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049E5C 00045ABC  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049E60 00045AC0  40 81 00 1C */	ble lbl_80049E7C
/* 80049E64 00045AC4  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049E68 00045AC8  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049E6C 00045ACC  40 80 00 08 */	bge lbl_80049E74
/* 80049E70 00045AD0  48 00 00 08 */	b lbl_80049E78
lbl_80049E74:
/* 80049E74 00045AD4  FC 60 08 90 */	fmr f3, f1
lbl_80049E78:
/* 80049E78 00045AD8  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_80049E7C:
/* 80049E7C 00045ADC  38 80 00 01 */	li r4, 1
/* 80049E80 00045AE0  48 1A 88 39 */	bl func_801F26B8
/* 80049E84 00045AE4  48 00 01 98 */	b lbl_8004A01C
/* 80049E88 00045AE8  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049E8C 00045AEC  C0 5D 00 DC */	lfs f2, 0xdc(r29)
/* 80049E90 00045AF0  80 63 00 08 */	lwz r3, 8(r3)
/* 80049E94 00045AF4  C0 3D 00 EC */	lfs f1, 0xec(r29)
/* 80049E98 00045AF8  C0 1D 00 FC */	lfs f0, 0xfc(r29)
/* 80049E9C 00045AFC  2C 03 00 00 */	cmpwi r3, 0
/* 80049EA0 00045B00  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 80049EA4 00045B04  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80049EA8 00045B08  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80049EAC 00045B0C  41 82 00 24 */	beq lbl_80049ED0
/* 80049EB0 00045B10  80 63 00 00 */	lwz r3, 0(r3)
/* 80049EB4 00045B14  2C 03 00 00 */	cmpwi r3, 0
/* 80049EB8 00045B18  41 82 00 18 */	beq lbl_80049ED0
/* 80049EBC 00045B1C  D0 43 00 20 */	stfs f2, 0x20(r3)
/* 80049EC0 00045B20  38 80 00 01 */	li r4, 1
/* 80049EC4 00045B24  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80049EC8 00045B28  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80049ECC 00045B2C  48 1A 87 ED */	bl func_801F26B8
lbl_80049ED0:
/* 80049ED0 00045B30  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049ED4 00045B34  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 80049ED8 00045B38  41 82 00 1C */	beq lbl_80049EF4
/* 80049EDC 00045B3C  38 7D 00 2C */	addi r3, r29, 0x2c
/* 80049EE0 00045B40  38 9D 00 3C */	addi r4, r29, 0x3c
/* 80049EE4 00045B44  48 1D 97 DD */	bl func_802236C0
/* 80049EE8 00045B48  A0 1D 00 10 */	lhz r0, 0x10(r29)
/* 80049EEC 00045B4C  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049EF0 00045B50  B0 1D 00 10 */	sth r0, 0x10(r29)
lbl_80049EF4:
/* 80049EF4 00045B54  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049EF8 00045B58  80 63 00 08 */	lwz r3, 8(r3)
/* 80049EFC 00045B5C  2C 03 00 00 */	cmpwi r3, 0
/* 80049F00 00045B60  41 82 00 44 */	beq lbl_80049F44
/* 80049F04 00045B64  80 63 00 00 */	lwz r3, 0(r3)
/* 80049F08 00045B68  2C 03 00 00 */	cmpwi r3, 0
/* 80049F0C 00045B6C  41 82 00 38 */	beq lbl_80049F44
/* 80049F10 00045B70  C0 1D 00 2C */	lfs f0, 0x2c(r29)
/* 80049F14 00045B74  38 80 00 01 */	li r4, 1
/* 80049F18 00045B78  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80049F1C 00045B7C  C0 1D 00 30 */	lfs f0, 0x30(r29)
/* 80049F20 00045B80  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80049F24 00045B84  C0 1D 00 34 */	lfs f0, 0x34(r29)
/* 80049F28 00045B88  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80049F2C 00045B8C  C0 1D 00 38 */	lfs f0, 0x38(r29)
/* 80049F30 00045B90  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 80049F34 00045B94  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80049F38 00045B98  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80049F3C 00045B9C  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80049F40 00045BA0  48 1A 87 79 */	bl func_801F26B8
lbl_80049F44:
/* 80049F44 00045BA4  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 80049F48 00045BA8  80 63 00 08 */	lwz r3, 8(r3)
/* 80049F4C 00045BAC  2C 03 00 00 */	cmpwi r3, 0
/* 80049F50 00045BB0  41 82 00 CC */	beq lbl_8004A01C
/* 80049F54 00045BB4  80 63 00 00 */	lwz r3, 0(r3)
/* 80049F58 00045BB8  2C 03 00 00 */	cmpwi r3, 0
/* 80049F5C 00045BBC  41 82 00 C0 */	beq lbl_8004A01C
/* 80049F60 00045BC0  C0 1D 00 48 */	lfs f0, 0x48(r29)
/* 80049F64 00045BC4  C0 42 83 D8 */	lfs f2, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049F68 00045BC8  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80049F6C 00045BCC  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80049F70 00045BD0  C0 1D 00 4C */	lfs f0, 0x4c(r29)
/* 80049F74 00045BD4  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80049F78 00045BD8  C0 1D 00 50 */	lfs f0, 0x50(r29)
/* 80049F7C 00045BDC  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80049F80 00045BE0  40 80 00 2C */	bge lbl_80049FAC
/* 80049F84 00045BE4  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 80049F88 00045BE8  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049F8C 00045BEC  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80049F90 00045BF0  40 81 00 1C */	ble lbl_80049FAC
/* 80049F94 00045BF4  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049F98 00045BF8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80049F9C 00045BFC  40 80 00 08 */	bge lbl_80049FA4
/* 80049FA0 00045C00  48 00 00 08 */	b lbl_80049FA8
lbl_80049FA4:
/* 80049FA4 00045C04  FC 60 10 90 */	fmr f3, f2
lbl_80049FA8:
/* 80049FA8 00045C08  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_80049FAC:
/* 80049FAC 00045C0C  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 80049FB0 00045C10  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049FB4 00045C14  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049FB8 00045C18  40 80 00 28 */	bge lbl_80049FE0
/* 80049FBC 00045C1C  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049FC0 00045C20  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049FC4 00045C24  40 81 00 1C */	ble lbl_80049FE0
/* 80049FC8 00045C28  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 80049FCC 00045C2C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80049FD0 00045C30  40 80 00 08 */	bge lbl_80049FD8
/* 80049FD4 00045C34  48 00 00 08 */	b lbl_80049FDC
lbl_80049FD8:
/* 80049FD8 00045C38  FC 60 08 90 */	fmr f3, f1
lbl_80049FDC:
/* 80049FDC 00045C3C  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_80049FE0:
/* 80049FE0 00045C40  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 80049FE4 00045C44  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 80049FE8 00045C48  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80049FEC 00045C4C  40 80 00 28 */	bge lbl_8004A014
/* 80049FF0 00045C50  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 80049FF4 00045C54  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80049FF8 00045C58  40 81 00 1C */	ble lbl_8004A014
/* 80049FFC 00045C5C  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A000 00045C60  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004A004 00045C64  40 80 00 08 */	bge lbl_8004A00C
/* 8004A008 00045C68  48 00 00 08 */	b lbl_8004A010
lbl_8004A00C:
/* 8004A00C 00045C6C  FC 60 08 90 */	fmr f3, f1
lbl_8004A010:
/* 8004A010 00045C70  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8004A014:
/* 8004A014 00045C74  38 80 00 01 */	li r4, 1
/* 8004A018 00045C78  48 1A 86 A1 */	bl func_801F26B8
lbl_8004A01C:
/* 8004A01C 00045C7C  2C 1F 00 00 */	cmpwi r31, 0
/* 8004A020 00045C80  41 82 00 74 */	beq lbl_8004A094
/* 8004A024 00045C84  80 1E 00 38 */	lwz r0, 0x38(r30)
/* 8004A028 00045C88  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8004A02C 00045C8C  41 82 00 68 */	beq lbl_8004A094
/* 8004A030 00045C90  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8004A034 00045C94  2C 03 00 00 */	cmpwi r3, 0
/* 8004A038 00045C98  41 82 00 0C */	beq lbl_8004A044
/* 8004A03C 00045C9C  38 83 01 20 */	addi r4, r3, 0x120
/* 8004A040 00045CA0  48 00 00 08 */	b lbl_8004A048
lbl_8004A044:
/* 8004A044 00045CA4  38 80 00 00 */	li r4, 0
lbl_8004A048:
/* 8004A048 00045CA8  2C 04 00 00 */	cmpwi r4, 0
/* 8004A04C 00045CAC  41 82 00 48 */	beq lbl_8004A094
/* 8004A050 00045CB0  38 61 00 08 */	addi r3, r1, 8
/* 8004A054 00045CB4  48 1D 68 C9 */	bl func_8022091C
/* 8004A058 00045CB8  80 7C 00 30 */	lwz r3, 0x30(r28)
/* 8004A05C 00045CBC  80 63 00 08 */	lwz r3, 8(r3)
/* 8004A060 00045CC0  2C 03 00 00 */	cmpwi r3, 0
/* 8004A064 00045CC4  41 82 00 30 */	beq lbl_8004A094
/* 8004A068 00045CC8  80 63 00 00 */	lwz r3, 0(r3)
/* 8004A06C 00045CCC  2C 03 00 00 */	cmpwi r3, 0
/* 8004A070 00045CD0  41 82 00 24 */	beq lbl_8004A094
/* 8004A074 00045CD4  C0 01 00 08 */	lfs f0, 8(r1)
/* 8004A078 00045CD8  38 80 00 01 */	li r4, 1
/* 8004A07C 00045CDC  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 8004A080 00045CE0  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8004A084 00045CE4  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 8004A088 00045CE8  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8004A08C 00045CEC  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8004A090 00045CF0  48 1A 86 29 */	bl func_801F26B8
lbl_8004A094:
/* 8004A094 00045CF4  80 1E 00 38 */	lwz r0, 0x38(r30)
/* 8004A098 00045CF8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004A09C 00045CFC  41 82 00 3C */	beq lbl_8004A0D8
/* 8004A0A0 00045D00  80 7C 00 34 */	lwz r3, 0x34(r28)
/* 8004A0A4 00045D04  2C 03 00 00 */	cmpwi r3, 0
/* 8004A0A8 00045D08  41 82 00 30 */	beq lbl_8004A0D8
/* 8004A0AC 00045D0C  C0 03 00 DC */	lfs f0, 0xdc(r3)
/* 8004A0B0 00045D10  2C 1F 00 00 */	cmpwi r31, 0
/* 8004A0B4 00045D14  D0 01 00 44 */	stfs f0, 0x44(r1)
/* 8004A0B8 00045D18  C0 03 00 EC */	lfs f0, 0xec(r3)
/* 8004A0BC 00045D1C  D0 01 00 48 */	stfs f0, 0x48(r1)
/* 8004A0C0 00045D20  C0 03 00 FC */	lfs f0, 0xfc(r3)
/* 8004A0C4 00045D24  D0 01 00 4C */	stfs f0, 0x4c(r1)
/* 8004A0C8 00045D28  41 82 00 10 */	beq lbl_8004A0D8
/* 8004A0CC 00045D2C  7F E3 FB 78 */	mr r3, r31
/* 8004A0D0 00045D30  38 81 00 44 */	addi r4, r1, 0x44
/* 8004A0D4 00045D34  4B FE E7 49 */	bl func_8003881C
lbl_8004A0D8:
/* 8004A0D8 00045D38  80 01 00 64 */	lwz r0, 0x64(r1)
/* 8004A0DC 00045D3C  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 8004A0E0 00045D40  83 C1 00 58 */	lwz r30, 0x58(r1)
/* 8004A0E4 00045D44  83 A1 00 54 */	lwz r29, 0x54(r1)
/* 8004A0E8 00045D48  83 81 00 50 */	lwz r28, 0x50(r1)
/* 8004A0EC 00045D4C  7C 08 03 A6 */	mtlr r0
/* 8004A0F0 00045D50  38 21 00 60 */	addi r1, r1, 0x60
/* 8004A0F4 00045D54  4E 80 00 20 */	blr
/* 8004A0F8 00045D58  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004A0FC 00045D5C  7C 08 02 A6 */	mflr r0
/* 8004A100 00045D60  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004A104 00045D64  39 61 00 30 */	addi r11, r1, 0x30
/* 8004A108 00045D68  48 17 D0 21 */	bl _savegpr_27
/* 8004A10C 00045D6C  7C 7F 1B 78 */	mr r31, r3
/* 8004A110 00045D70  4B FE 8F 79 */	bl func_80033088
/* 8004A114 00045D74  80 9F 00 2C */	lwz r4, 0x2c(r31)
/* 8004A118 00045D78  7C 7B 1B 78 */	mr r27, r3
/* 8004A11C 00045D7C  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004A120 00045D80  2C 04 00 00 */	cmpwi r4, 0
/* 8004A124 00045D84  83 DF 00 14 */	lwz r30, 0x14(r31)
/* 8004A128 00045D88  83 83 00 34 */	lwz r28, 0x34(r3)
/* 8004A12C 00045D8C  41 82 01 DC */	beq lbl_8004A308
/* 8004A130 00045D90  80 A4 00 04 */	lwz r5, 4(r4)
/* 8004A134 00045D94  2C 05 00 00 */	cmpwi r5, 0
/* 8004A138 00045D98  40 82 00 0C */	bne lbl_8004A144
/* 8004A13C 00045D9C  3B A0 00 00 */	li r29, 0
/* 8004A140 00045DA0  48 00 00 20 */	b lbl_8004A160
lbl_8004A144:
/* 8004A144 00045DA4  80 64 00 00 */	lwz r3, 0(r4)
/* 8004A148 00045DA8  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8004A14C 00045DAC  2C 00 00 00 */	cmpwi r0, 0
/* 8004A150 00045DB0  40 82 00 0C */	bne lbl_8004A15C
/* 8004A154 00045DB4  3B A0 00 00 */	li r29, 0
/* 8004A158 00045DB8  48 00 00 08 */	b lbl_8004A160
lbl_8004A15C:
/* 8004A15C 00045DBC  83 A5 00 00 */	lwz r29, 0(r5)
lbl_8004A160:
/* 8004A160 00045DC0  2C 1D 00 00 */	cmpwi r29, 0
/* 8004A164 00045DC4  41 82 01 A4 */	beq lbl_8004A308
/* 8004A168 00045DC8  7F E3 FB 78 */	mr r3, r31
/* 8004A16C 00045DCC  38 80 00 01 */	li r4, 1
/* 8004A170 00045DD0  4B FF F7 A9 */	bl func_80049918
/* 8004A174 00045DD4  2C 1C 00 00 */	cmpwi r28, 0
/* 8004A178 00045DD8  41 82 00 14 */	beq lbl_8004A18C
/* 8004A17C 00045DDC  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004A180 00045DE0  80 03 00 00 */	lwz r0, 0(r3)
/* 8004A184 00045DE4  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8004A188 00045DE8  41 82 00 0C */	beq lbl_8004A194
lbl_8004A18C:
/* 8004A18C 00045DEC  C0 22 83 E0 */	lfs f1, lbl_806409E0-_SDA2_BASE_(r2)
/* 8004A190 00045DF0  48 00 00 0C */	b lbl_8004A19C
lbl_8004A194:
/* 8004A194 00045DF4  7F 83 E3 78 */	mr r3, r28
/* 8004A198 00045DF8  4B FE F6 25 */	bl func_800397BC
lbl_8004A19C:
/* 8004A19C 00045DFC  80 7D 00 08 */	lwz r3, 8(r29)
/* 8004A1A0 00045E00  D0 21 00 08 */	stfs f1, 8(r1)
/* 8004A1A4 00045E04  2C 03 00 00 */	cmpwi r3, 0
/* 8004A1A8 00045E08  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004A1AC 00045E0C  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8004A1B0 00045E10  41 82 00 C4 */	beq lbl_8004A274
/* 8004A1B4 00045E14  80 63 00 00 */	lwz r3, 0(r3)
/* 8004A1B8 00045E18  2C 03 00 00 */	cmpwi r3, 0
/* 8004A1BC 00045E1C  41 82 00 B8 */	beq lbl_8004A274
/* 8004A1C0 00045E20  FC 00 08 18 */	frsp f0, f1
/* 8004A1C4 00045E24  C0 42 83 D8 */	lfs f2, lbl_806409D8-_SDA2_BASE_(r2)
/* 8004A1C8 00045E28  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8004A1CC 00045E2C  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004A1D0 00045E30  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004A1D4 00045E34  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8004A1D8 00045E38  40 80 00 2C */	bge lbl_8004A204
/* 8004A1DC 00045E3C  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8004A1E0 00045E40  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 8004A1E4 00045E44  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8004A1E8 00045E48  40 81 00 1C */	ble lbl_8004A204
/* 8004A1EC 00045E4C  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A1F0 00045E50  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004A1F4 00045E54  40 80 00 08 */	bge lbl_8004A1FC
/* 8004A1F8 00045E58  48 00 00 08 */	b lbl_8004A200
lbl_8004A1FC:
/* 8004A1FC 00045E5C  FC 60 10 90 */	fmr f3, f2
lbl_8004A200:
/* 8004A200 00045E60  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_8004A204:
/* 8004A204 00045E64  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 8004A208 00045E68  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 8004A20C 00045E6C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004A210 00045E70  40 80 00 28 */	bge lbl_8004A238
/* 8004A214 00045E74  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 8004A218 00045E78  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004A21C 00045E7C  40 81 00 1C */	ble lbl_8004A238
/* 8004A220 00045E80  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A224 00045E84  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004A228 00045E88  40 80 00 08 */	bge lbl_8004A230
/* 8004A22C 00045E8C  48 00 00 08 */	b lbl_8004A234
lbl_8004A230:
/* 8004A230 00045E90  FC 60 08 90 */	fmr f3, f1
lbl_8004A234:
/* 8004A234 00045E94  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8004A238:
/* 8004A238 00045E98  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 8004A23C 00045E9C  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 8004A240 00045EA0  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004A244 00045EA4  40 80 00 28 */	bge lbl_8004A26C
/* 8004A248 00045EA8  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 8004A24C 00045EAC  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004A250 00045EB0  40 81 00 1C */	ble lbl_8004A26C
/* 8004A254 00045EB4  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A258 00045EB8  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004A25C 00045EBC  40 80 00 08 */	bge lbl_8004A264
/* 8004A260 00045EC0  48 00 00 08 */	b lbl_8004A268
lbl_8004A264:
/* 8004A264 00045EC4  FC 60 08 90 */	fmr f3, f1
lbl_8004A268:
/* 8004A268 00045EC8  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8004A26C:
/* 8004A26C 00045ECC  38 80 00 01 */	li r4, 1
/* 8004A270 00045ED0  48 1A 84 49 */	bl func_801F26B8
lbl_8004A274:
/* 8004A274 00045ED4  88 9E 00 3D */	lbz r4, 0x3d(r30)
/* 8004A278 00045ED8  7F A3 EB 78 */	mr r3, r29
/* 8004A27C 00045EDC  48 1A BD F5 */	bl func_801F6070
/* 8004A280 00045EE0  88 9E 00 3C */	lbz r4, 0x3c(r30)
/* 8004A284 00045EE4  7F A3 EB 78 */	mr r3, r29
/* 8004A288 00045EE8  88 BE 00 3D */	lbz r5, 0x3d(r30)
/* 8004A28C 00045EEC  38 C0 00 00 */	li r6, 0
/* 8004A290 00045EF0  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A294 00045EF4  38 E0 00 00 */	li r7, 0
/* 8004A298 00045EF8  C0 42 83 E0 */	lfs f2, lbl_806409E0-_SDA2_BASE_(r2)
/* 8004A29C 00045EFC  39 00 00 00 */	li r8, 0
/* 8004A2A0 00045F00  48 1A AB 55 */	bl func_801F4DF4
/* 8004A2A4 00045F04  88 1F 00 38 */	lbz r0, 0x38(r31)
/* 8004A2A8 00045F08  2C 00 00 00 */	cmpwi r0, 0
/* 8004A2AC 00045F0C  41 82 00 40 */	beq lbl_8004A2EC
/* 8004A2B0 00045F10  2C 1B 00 00 */	cmpwi r27, 0
/* 8004A2B4 00045F14  41 82 00 38 */	beq lbl_8004A2EC
/* 8004A2B8 00045F18  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004A2BC 00045F1C  7F 63 DB 78 */	mr r3, r27
/* 8004A2C0 00045F20  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8004A2C4 00045F24  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8004A2C8 00045F28  4B FE 98 B5 */	bl func_80033B7C
/* 8004A2CC 00045F2C  2C 03 00 00 */	cmpwi r3, 0
/* 8004A2D0 00045F30  7C 7C 1B 78 */	mr r28, r3
/* 8004A2D4 00045F34  41 82 00 18 */	beq lbl_8004A2EC
/* 8004A2D8 00045F38  7F A4 EB 78 */	mr r4, r29
/* 8004A2DC 00045F3C  4B FE B7 6D */	bl func_80035A48
/* 8004A2E0 00045F40  7F 83 E3 78 */	mr r3, r28
/* 8004A2E4 00045F44  38 80 00 00 */	li r4, 0
/* 8004A2E8 00045F48  4B FE B7 69 */	bl func_80035A50
lbl_8004A2EC:
/* 8004A2EC 00045F4C  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004A2F0 00045F50  80 03 00 38 */	lwz r0, 0x38(r3)
/* 8004A2F4 00045F54  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8004A2F8 00045F58  41 82 00 10 */	beq lbl_8004A308
/* 8004A2FC 00045F5C  80 1F 00 08 */	lwz r0, 8(r31)
/* 8004A300 00045F60  60 00 00 02 */	ori r0, r0, 2
/* 8004A304 00045F64  90 1F 00 08 */	stw r0, 8(r31)
lbl_8004A308:
/* 8004A308 00045F68  39 61 00 30 */	addi r11, r1, 0x30
/* 8004A30C 00045F6C  48 17 CE 69 */	bl _restgpr_27
/* 8004A310 00045F70  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004A314 00045F74  7C 08 03 A6 */	mtlr r0
/* 8004A318 00045F78  38 21 00 30 */	addi r1, r1, 0x30
/* 8004A31C 00045F7C  4E 80 00 20 */	blr
/* 8004A320 00045F80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A324 00045F84  7C 08 02 A6 */	mflr r0
/* 8004A328 00045F88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A32C 00045F8C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A330 00045F90  93 C1 00 08 */	stw r30, 8(r1)
/* 8004A334 00045F94  7C 7E 1B 78 */	mr r30, r3
/* 8004A338 00045F98  4B FE 8D 51 */	bl func_80033088
/* 8004A33C 00045F9C  80 1E 00 30 */	lwz r0, 0x30(r30)
/* 8004A340 00045FA0  7C 7F 1B 78 */	mr r31, r3
/* 8004A344 00045FA4  2C 00 00 00 */	cmpwi r0, 0
/* 8004A348 00045FA8  41 82 00 1C */	beq lbl_8004A364
/* 8004A34C 00045FAC  7C 03 03 78 */	mr r3, r0
/* 8004A350 00045FB0  48 1A B4 C5 */	bl func_801F5814
/* 8004A354 00045FB4  80 7E 00 30 */	lwz r3, 0x30(r30)
/* 8004A358 00045FB8  A0 03 00 DC */	lhz r0, 0xdc(r3)
/* 8004A35C 00045FBC  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 8004A360 00045FC0  B0 03 00 DC */	sth r0, 0xdc(r3)
lbl_8004A364:
/* 8004A364 00045FC4  88 1E 00 38 */	lbz r0, 0x38(r30)
/* 8004A368 00045FC8  2C 00 00 00 */	cmpwi r0, 0
/* 8004A36C 00045FCC  41 82 00 2C */	beq lbl_8004A398
/* 8004A370 00045FD0  2C 1F 00 00 */	cmpwi r31, 0
/* 8004A374 00045FD4  41 82 00 24 */	beq lbl_8004A398
/* 8004A378 00045FD8  80 9E 00 18 */	lwz r4, 0x18(r30)
/* 8004A37C 00045FDC  7F E3 FB 78 */	mr r3, r31
/* 8004A380 00045FE0  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8004A384 00045FE4  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8004A388 00045FE8  4B FE 97 F5 */	bl func_80033B7C
/* 8004A38C 00045FEC  2C 03 00 00 */	cmpwi r3, 0
/* 8004A390 00045FF0  41 82 00 08 */	beq lbl_8004A398
/* 8004A394 00045FF4  4B FE B7 25 */	bl func_80035AB8
lbl_8004A398:
/* 8004A398 00045FF8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A39C 00045FFC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A3A0 00046000  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004A3A4 00046004  7C 08 03 A6 */	mtlr r0
/* 8004A3A8 00046008  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A3AC 0004600C  4E 80 00 20 */	blr
/* 8004A3B0 00046010  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004A3B4 00046014  80 04 00 00 */	lwz r0, 0(r4)
/* 8004A3B8 00046018  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8004A3BC 0004601C  4C 82 00 20 */	bnelr
/* 8004A3C0 00046020  38 80 00 00 */	li r4, 0
/* 8004A3C4 00046024  4B FF F5 54 */	b func_80049918
/* 8004A3C8 00046028  4E 80 00 20 */	blr

.global func_8004A3CC
func_8004A3CC:
/* 8004A3CC 0004602C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A3D0 00046030  7C 08 02 A6 */	mflr r0
/* 8004A3D4 00046034  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A3D8 00046038  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A3DC 0004603C  7C 7F 1B 78 */	mr r31, r3
/* 8004A3E0 00046040  4B FF EC A5 */	bl func_80049084
/* 8004A3E4 00046044  3C 80 80 41 */	lis r4, lbl_8040A648@ha
/* 8004A3E8 00046048  7F E3 FB 78 */	mr r3, r31
/* 8004A3EC 0004604C  38 84 A6 48 */	addi r4, r4, lbl_8040A648@l
/* 8004A3F0 00046050  90 9F 00 28 */	stw r4, 0x28(r31)
/* 8004A3F4 00046054  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A3F8 00046058  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A3FC 0004605C  7C 08 03 A6 */	mtlr r0
/* 8004A400 00046060  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A404 00046064  4E 80 00 20 */	blr
/* 8004A408 00046068  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A40C 0004606C  7C 08 02 A6 */	mflr r0
/* 8004A410 00046070  2C 03 00 00 */	cmpwi r3, 0
/* 8004A414 00046074  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A418 00046078  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A41C 0004607C  7C 9F 23 78 */	mr r31, r4
/* 8004A420 00046080  93 C1 00 08 */	stw r30, 8(r1)
/* 8004A424 00046084  7C 7E 1B 78 */	mr r30, r3
/* 8004A428 00046088  41 82 00 38 */	beq lbl_8004A460
/* 8004A42C 0004608C  3D 80 80 41 */	lis r12, lbl_8040A648@ha
/* 8004A430 00046090  39 8C A6 48 */	addi r12, r12, lbl_8040A648@l
/* 8004A434 00046094  91 83 00 28 */	stw r12, 0x28(r3)
/* 8004A438 00046098  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 8004A43C 0004609C  7D 89 03 A6 */	mtctr r12
/* 8004A440 000460A0  4E 80 04 21 */	bctrl
/* 8004A444 000460A4  7F C3 F3 78 */	mr r3, r30
/* 8004A448 000460A8  38 80 00 00 */	li r4, 0
/* 8004A44C 000460AC  4B FF EC 69 */	bl func_800490B4
/* 8004A450 000460B0  2C 1F 00 00 */	cmpwi r31, 0
/* 8004A454 000460B4  40 81 00 0C */	ble lbl_8004A460
/* 8004A458 000460B8  7F C3 F3 78 */	mr r3, r30
/* 8004A45C 000460BC  48 19 06 5D */	bl func_801DAAB8
lbl_8004A460:
/* 8004A460 000460C0  7F C3 F3 78 */	mr r3, r30
/* 8004A464 000460C4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A468 000460C8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004A46C 000460CC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A470 000460D0  7C 08 03 A6 */	mtlr r0
/* 8004A474 000460D4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A478 000460D8  4E 80 00 20 */	blr
/* 8004A47C 000460DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A480 000460E0  7C 08 02 A6 */	mflr r0
/* 8004A484 000460E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A488 000460E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A48C 000460EC  7C 7F 1B 78 */	mr r31, r3
/* 8004A490 000460F0  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 8004A494 000460F4  2C 00 00 00 */	cmpwi r0, 0
/* 8004A498 000460F8  41 82 00 28 */	beq lbl_8004A4C0
/* 8004A49C 000460FC  41 82 00 1C */	beq lbl_8004A4B8
/* 8004A4A0 00046100  7C 03 03 78 */	mr r3, r0
/* 8004A4A4 00046104  38 80 00 01 */	li r4, 1
/* 8004A4A8 00046108  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8004A4AC 0004610C  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004A4B0 00046110  7D 89 03 A6 */	mtctr r12
/* 8004A4B4 00046114  4E 80 04 21 */	bctrl
lbl_8004A4B8:
/* 8004A4B8 00046118  38 00 00 00 */	li r0, 0
/* 8004A4BC 0004611C  90 1F 00 2C */	stw r0, 0x2c(r31)
lbl_8004A4C0:
/* 8004A4C0 00046120  7F E3 FB 78 */	mr r3, r31
/* 8004A4C4 00046124  4B FF EC 59 */	bl func_8004911C
/* 8004A4C8 00046128  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A4CC 0004612C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A4D0 00046130  7C 08 03 A6 */	mtlr r0
/* 8004A4D4 00046134  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A4D8 00046138  4E 80 00 20 */	blr
/* 8004A4DC 0004613C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A4E0 00046140  7C 08 02 A6 */	mflr r0
/* 8004A4E4 00046144  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A4E8 00046148  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A4EC 0004614C  7C 9F 23 78 */	mr r31, r4
/* 8004A4F0 00046150  93 C1 00 08 */	stw r30, 8(r1)
/* 8004A4F4 00046154  7C 7E 1B 78 */	mr r30, r3
/* 8004A4F8 00046158  48 19 06 31 */	bl func_801DAB28
/* 8004A4FC 0004615C  2C 03 00 00 */	cmpwi r3, 0
/* 8004A500 00046160  41 82 00 14 */	beq lbl_8004A514
/* 8004A504 00046164  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004A508 00046168  38 80 01 40 */	li r4, 0x140
/* 8004A50C 0004616C  48 19 07 89 */	bl func_801DAC94
/* 8004A510 00046170  48 00 00 08 */	b lbl_8004A518
lbl_8004A514:
/* 8004A514 00046174  38 60 00 00 */	li r3, 0
lbl_8004A518:
/* 8004A518 00046178  2C 03 00 00 */	cmpwi r3, 0
/* 8004A51C 0004617C  41 82 00 0C */	beq lbl_8004A528
/* 8004A520 00046180  80 9F 00 44 */	lwz r4, 0x44(r31)
/* 8004A524 00046184  48 1A F3 C9 */	bl func_801F98EC
lbl_8004A528:
/* 8004A528 00046188  90 7E 00 2C */	stw r3, 0x2c(r30)
/* 8004A52C 0004618C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A530 00046190  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004A534 00046194  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A538 00046198  7C 08 03 A6 */	mtlr r0
/* 8004A53C 0004619C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A540 000461A0  4E 80 00 20 */	blr
/* 8004A544 000461A4  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004A548 000461A8  2C 04 00 00 */	cmpwi r4, 0
/* 8004A54C 000461AC  40 82 00 0C */	bne lbl_8004A558
/* 8004A550 000461B0  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A554 000461B4  4E 80 00 20 */	blr
lbl_8004A558:
/* 8004A558 000461B8  C0 24 00 04 */	lfs f1, 4(r4)
/* 8004A55C 000461BC  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A560 000461C0  FC 00 08 00 */	fcmpu cr0, f0, f1
/* 8004A564 000461C4  4C 82 00 20 */	bnelr
/* 8004A568 000461C8  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 8004A56C 000461CC  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004A570 000461D0  48 1B D2 D0 */	b func_80207840
/* 8004A574 000461D4  4E 80 00 20 */	blr
/* 8004A578 000461D8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004A57C 000461DC  7C 08 02 A6 */	mflr r0
/* 8004A580 000461E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004A584 000461E4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004A588 000461E8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004A58C 000461EC  7C 7E 1B 78 */	mr r30, r3
/* 8004A590 000461F0  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 8004A594 000461F4  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8004A598 000461F8  2C 04 00 00 */	cmpwi r4, 0
/* 8004A59C 000461FC  83 E3 00 34 */	lwz r31, 0x34(r3)
/* 8004A5A0 00046200  41 82 01 6C */	beq lbl_8004A70C
/* 8004A5A4 00046204  2C 1F 00 00 */	cmpwi r31, 0
/* 8004A5A8 00046208  40 82 00 08 */	bne lbl_8004A5B0
/* 8004A5AC 0004620C  48 00 01 60 */	b lbl_8004A70C
lbl_8004A5B0:
/* 8004A5B0 00046210  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 8004A5B4 00046214  2C 03 00 00 */	cmpwi r3, 0
/* 8004A5B8 00046218  41 82 00 08 */	beq lbl_8004A5C0
/* 8004A5BC 0004621C  48 1A 7C 6D */	bl func_801F2228
lbl_8004A5C0:
/* 8004A5C0 00046220  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004A5C4 00046224  80 83 00 00 */	lwz r4, 0(r3)
/* 8004A5C8 00046228  54 80 07 FF */	clrlwi. r0, r4, 0x1f
/* 8004A5CC 0004622C  40 82 00 40 */	bne lbl_8004A60C
/* 8004A5D0 00046230  54 80 07 BD */	rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 8004A5D4 00046234  41 82 00 0C */	beq lbl_8004A5E0
/* 8004A5D8 00046238  80 7E 00 1C */	lwz r3, 0x1c(r30)
/* 8004A5DC 0004623C  48 00 00 10 */	b lbl_8004A5EC
lbl_8004A5E0:
/* 8004A5E0 00046240  88 83 00 0C */	lbz r4, 0xc(r3)
/* 8004A5E4 00046244  7F E3 FB 78 */	mr r3, r31
/* 8004A5E8 00046248  4B FE F3 05 */	bl func_800398EC
lbl_8004A5EC:
/* 8004A5EC 0004624C  2C 03 00 00 */	cmpwi r3, 0
/* 8004A5F0 00046250  41 82 00 1C */	beq lbl_8004A60C
/* 8004A5F4 00046254  80 1E 00 24 */	lwz r0, 0x24(r30)
/* 8004A5F8 00046258  38 C0 00 00 */	li r6, 0
/* 8004A5FC 0004625C  80 BE 00 2C */	lwz r5, 0x2c(r30)
/* 8004A600 00046260  38 E0 00 03 */	li r7, 3
/* 8004A604 00046264  54 04 04 3E */	clrlwi r4, r0, 0x10
/* 8004A608 00046268  48 1A 7B 85 */	bl func_801F218C
lbl_8004A60C:
/* 8004A60C 0004626C  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004A610 00046270  80 03 00 00 */	lwz r0, 0(r3)
/* 8004A614 00046274  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8004A618 00046278  41 82 00 0C */	beq lbl_8004A624
/* 8004A61C 0004627C  C0 22 83 E0 */	lfs f1, lbl_806409E0-_SDA2_BASE_(r2)
/* 8004A620 00046280  48 00 00 0C */	b lbl_8004A62C
lbl_8004A624:
/* 8004A624 00046284  7F E3 FB 78 */	mr r3, r31
/* 8004A628 00046288  4B FE F1 95 */	bl func_800397BC
lbl_8004A62C:
/* 8004A62C 0004628C  FC 00 08 18 */	frsp f0, f1
/* 8004A630 00046290  80 7E 00 2C */	lwz r3, 0x2c(r30)
/* 8004A634 00046294  C0 42 83 D8 */	lfs f2, lbl_806409D8-_SDA2_BASE_(r2)
/* 8004A638 00046298  D0 21 00 08 */	stfs f1, 8(r1)
/* 8004A63C 0004629C  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004A640 000462A0  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8004A644 000462A4  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004A648 000462A8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004A64C 000462AC  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8004A650 000462B0  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8004A654 000462B4  40 80 00 2C */	bge lbl_8004A680
/* 8004A658 000462B8  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8004A65C 000462BC  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 8004A660 000462C0  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8004A664 000462C4  40 81 00 1C */	ble lbl_8004A680
/* 8004A668 000462C8  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A66C 000462CC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004A670 000462D0  40 80 00 08 */	bge lbl_8004A678
/* 8004A674 000462D4  48 00 00 08 */	b lbl_8004A67C
lbl_8004A678:
/* 8004A678 000462D8  FC 60 10 90 */	fmr f3, f2
lbl_8004A67C:
/* 8004A67C 000462DC  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_8004A680:
/* 8004A680 000462E0  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 8004A684 000462E4  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 8004A688 000462E8  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004A68C 000462EC  40 80 00 28 */	bge lbl_8004A6B4
/* 8004A690 000462F0  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 8004A694 000462F4  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004A698 000462F8  40 81 00 1C */	ble lbl_8004A6B4
/* 8004A69C 000462FC  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A6A0 00046300  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004A6A4 00046304  40 80 00 08 */	bge lbl_8004A6AC
/* 8004A6A8 00046308  48 00 00 08 */	b lbl_8004A6B0
lbl_8004A6AC:
/* 8004A6AC 0004630C  FC 60 08 90 */	fmr f3, f1
lbl_8004A6B0:
/* 8004A6B0 00046310  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8004A6B4:
/* 8004A6B4 00046314  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 8004A6B8 00046318  C0 22 83 D8 */	lfs f1, lbl_806409D8-_SDA2_BASE_(r2)
/* 8004A6BC 0004631C  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004A6C0 00046320  40 80 00 28 */	bge lbl_8004A6E8
/* 8004A6C4 00046324  C0 62 83 DC */	lfs f3, lbl_806409DC-_SDA2_BASE_(r2)
/* 8004A6C8 00046328  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004A6CC 0004632C  40 81 00 1C */	ble lbl_8004A6E8
/* 8004A6D0 00046330  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A6D4 00046334  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004A6D8 00046338  40 80 00 08 */	bge lbl_8004A6E0
/* 8004A6DC 0004633C  48 00 00 08 */	b lbl_8004A6E4
lbl_8004A6E0:
/* 8004A6E0 00046340  FC 60 08 90 */	fmr f3, f1
lbl_8004A6E4:
/* 8004A6E4 00046344  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8004A6E8:
/* 8004A6E8 00046348  38 80 00 01 */	li r4, 1
/* 8004A6EC 0004634C  48 1A 7F CD */	bl func_801F26B8
/* 8004A6F0 00046350  80 7E 00 2C */	lwz r3, 0x2c(r30)
/* 8004A6F4 00046354  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A6F8 00046358  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8004A6FC 0004635C  60 00 00 01 */	ori r0, r0, 1
/* 8004A700 00046360  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004A704 00046364  90 03 01 04 */	stw r0, 0x104(r3)
/* 8004A708 00046368  D0 03 01 08 */	stfs f0, 0x108(r3)
lbl_8004A70C:
/* 8004A70C 0004636C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004A710 00046370  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004A714 00046374  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004A718 00046378  7C 08 03 A6 */	mtlr r0
/* 8004A71C 0004637C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004A720 00046380  4E 80 00 20 */	blr
/* 8004A724 00046384  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 8004A728 00046388  2C 04 00 00 */	cmpwi r4, 0
/* 8004A72C 0004638C  4D 82 00 20 */	beqlr
/* 8004A730 00046390  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8004A734 00046394  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A738 00046398  60 00 00 04 */	ori r0, r0, 4
/* 8004A73C 0004639C  90 04 01 04 */	stw r0, 0x104(r4)
/* 8004A740 000463A0  D0 04 01 10 */	stfs f0, 0x110(r4)
/* 8004A744 000463A4  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 8004A748 000463A8  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 8004A74C 000463AC  2C 03 00 00 */	cmpwi r3, 0
/* 8004A750 000463B0  4D 82 00 20 */	beqlr
/* 8004A754 000463B4  48 1A 7A D4 */	b func_801F2228
/* 8004A758 000463B8  4E 80 00 20 */	blr
/* 8004A75C 000463BC  4E 80 00 20 */	blr

.global func_8004A760
func_8004A760:
/* 8004A760 000463C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A764 000463C4  7C 08 02 A6 */	mflr r0
/* 8004A768 000463C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A76C 000463CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A770 000463D0  7C 7F 1B 78 */	mr r31, r3
/* 8004A774 000463D4  4B FF E9 11 */	bl func_80049084
/* 8004A778 000463D8  3C 80 80 41 */	lis r4, lbl_8040A5A8@ha
/* 8004A77C 000463DC  7F E3 FB 78 */	mr r3, r31
/* 8004A780 000463E0  38 84 A5 A8 */	addi r4, r4, lbl_8040A5A8@l
/* 8004A784 000463E4  90 9F 00 28 */	stw r4, 0x28(r31)
/* 8004A788 000463E8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A78C 000463EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A790 000463F0  7C 08 03 A6 */	mtlr r0
/* 8004A794 000463F4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A798 000463F8  4E 80 00 20 */	blr
/* 8004A79C 000463FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A7A0 00046400  7C 08 02 A6 */	mflr r0
/* 8004A7A4 00046404  2C 03 00 00 */	cmpwi r3, 0
/* 8004A7A8 00046408  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A7AC 0004640C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A7B0 00046410  7C 9F 23 78 */	mr r31, r4
/* 8004A7B4 00046414  93 C1 00 08 */	stw r30, 8(r1)
/* 8004A7B8 00046418  7C 7E 1B 78 */	mr r30, r3
/* 8004A7BC 0004641C  41 82 00 38 */	beq lbl_8004A7F4
/* 8004A7C0 00046420  3D 80 80 41 */	lis r12, lbl_8040A5A8@ha
/* 8004A7C4 00046424  39 8C A5 A8 */	addi r12, r12, lbl_8040A5A8@l
/* 8004A7C8 00046428  91 83 00 28 */	stw r12, 0x28(r3)
/* 8004A7CC 0004642C  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 8004A7D0 00046430  7D 89 03 A6 */	mtctr r12
/* 8004A7D4 00046434  4E 80 04 21 */	bctrl
/* 8004A7D8 00046438  7F C3 F3 78 */	mr r3, r30
/* 8004A7DC 0004643C  38 80 00 00 */	li r4, 0
/* 8004A7E0 00046440  4B FF E8 D5 */	bl func_800490B4
/* 8004A7E4 00046444  2C 1F 00 00 */	cmpwi r31, 0
/* 8004A7E8 00046448  40 81 00 0C */	ble lbl_8004A7F4
/* 8004A7EC 0004644C  7F C3 F3 78 */	mr r3, r30
/* 8004A7F0 00046450  48 19 02 C9 */	bl func_801DAAB8
lbl_8004A7F4:
/* 8004A7F4 00046454  7F C3 F3 78 */	mr r3, r30
/* 8004A7F8 00046458  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A7FC 0004645C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004A800 00046460  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A804 00046464  7C 08 03 A6 */	mtlr r0
/* 8004A808 00046468  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A80C 0004646C  4E 80 00 20 */	blr
/* 8004A810 00046470  4B FF E9 0C */	b func_8004911C
/* 8004A814 00046474  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004A818 00046478  4E 80 00 20 */	blr
/* 8004A81C 0004647C  4E 80 00 20 */	blr
/* 8004A820 00046480  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004A824 00046484  7C 08 02 A6 */	mflr r0
/* 8004A828 00046488  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004A82C 0004648C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004A830 00046490  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004A834 00046494  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004A838 00046498  93 81 00 10 */	stw r28, 0x10(r1)
/* 8004A83C 0004649C  7C 7C 1B 78 */	mr r28, r3
/* 8004A840 000464A0  83 C3 00 14 */	lwz r30, 0x14(r3)
/* 8004A844 000464A4  80 A3 00 18 */	lwz r5, 0x18(r3)
/* 8004A848 000464A8  80 FE 00 3C */	lwz r7, 0x3c(r30)
/* 8004A84C 000464AC  83 AD 96 F0 */	lwz r29, lbl_8063E9B0-_SDA_BASE_(r13)
/* 8004A850 000464B0  28 07 00 0B */	cmplwi r7, 0xb
/* 8004A854 000464B4  80 65 00 34 */	lwz r3, 0x34(r5)
/* 8004A858 000464B8  41 81 01 08 */	bgt lbl_8004A960
/* 8004A85C 000464BC  3C 80 80 41 */	lis r4, lbl_8040A51C@ha
/* 8004A860 000464C0  54 E0 10 3A */	slwi r0, r7, 2
/* 8004A864 000464C4  38 84 A5 1C */	addi r4, r4, lbl_8040A51C@l
/* 8004A868 000464C8  7C 84 00 2E */	lwzx r4, r4, r0
/* 8004A86C 000464CC  7C 89 03 A6 */	mtctr r4
/* 8004A870 000464D0  4E 80 04 20 */	bctr
/* 8004A874 000464D4  2C 03 00 00 */	cmpwi r3, 0
/* 8004A878 000464D8  41 82 00 E8 */	beq lbl_8004A960
/* 8004A87C 000464DC  4B FF 2C 51 */	bl func_8003D4CC
/* 8004A880 000464E0  48 00 00 E0 */	b lbl_8004A960
/* 8004A884 000464E4  2C 03 00 00 */	cmpwi r3, 0
/* 8004A888 000464E8  41 82 00 D8 */	beq lbl_8004A960
/* 8004A88C 000464EC  4B FF 2F 99 */	bl func_8003D824
/* 8004A890 000464F0  48 00 00 D0 */	b lbl_8004A960
/* 8004A894 000464F4  2C 03 00 00 */	cmpwi r3, 0
/* 8004A898 000464F8  41 82 00 C8 */	beq lbl_8004A960
/* 8004A89C 000464FC  38 80 00 00 */	li r4, 0
/* 8004A8A0 00046500  4B FE D4 8D */	bl func_80037D2C
/* 8004A8A4 00046504  48 00 00 BC */	b lbl_8004A960
/* 8004A8A8 00046508  2C 03 00 00 */	cmpwi r3, 0
/* 8004A8AC 0004650C  41 82 00 B4 */	beq lbl_8004A960
/* 8004A8B0 00046510  38 80 00 01 */	li r4, 1
/* 8004A8B4 00046514  4B FE D4 79 */	bl func_80037D2C
/* 8004A8B8 00046518  48 00 00 A8 */	b lbl_8004A960
/* 8004A8BC 0004651C  2C 03 00 00 */	cmpwi r3, 0
/* 8004A8C0 00046520  41 82 00 A0 */	beq lbl_8004A960
/* 8004A8C4 00046524  80 03 00 00 */	lwz r0, 0(r3)
/* 8004A8C8 00046528  60 00 10 00 */	ori r0, r0, 0x1000
/* 8004A8CC 0004652C  90 03 00 00 */	stw r0, 0(r3)
/* 8004A8D0 00046530  48 00 00 90 */	b lbl_8004A960
/* 8004A8D4 00046534  2C 03 00 00 */	cmpwi r3, 0
/* 8004A8D8 00046538  41 82 00 88 */	beq lbl_8004A960
/* 8004A8DC 0004653C  80 03 00 00 */	lwz r0, 0(r3)
/* 8004A8E0 00046540  54 00 05 24 */	rlwinm r0, r0, 0, 0x14, 0x12
/* 8004A8E4 00046544  90 03 00 00 */	stw r0, 0(r3)
/* 8004A8E8 00046548  48 00 00 78 */	b lbl_8004A960
/* 8004A8EC 0004654C  2C 03 00 00 */	cmpwi r3, 0
/* 8004A8F0 00046550  41 82 00 70 */	beq lbl_8004A960
/* 8004A8F4 00046554  4B FF 2B C1 */	bl func_8003D4B4
/* 8004A8F8 00046558  48 00 00 68 */	b lbl_8004A960
/* 8004A8FC 0004655C  2C 03 00 00 */	cmpwi r3, 0
/* 8004A900 00046560  41 82 00 60 */	beq lbl_8004A960
/* 8004A904 00046564  4B FF 2F 09 */	bl func_8003D80C
/* 8004A908 00046568  48 00 00 58 */	b lbl_8004A960
/* 8004A90C 0004656C  7C A3 2B 78 */	mr r3, r5
/* 8004A910 00046570  4B FF D9 9D */	bl func_800482AC
/* 8004A914 00046574  48 00 00 4C */	b lbl_8004A960
/* 8004A918 00046578  2C 1D 00 00 */	cmpwi r29, 0
/* 8004A91C 0004657C  41 82 00 44 */	beq lbl_8004A960
/* 8004A920 00046580  3F E0 80 41 */	lis r31, lbl_8040A508@ha
/* 8004A924 00046584  81 1E 00 40 */	lwz r8, 0x40(r30)
/* 8004A928 00046588  81 3E 00 44 */	lwz r9, 0x44(r30)
/* 8004A92C 0004658C  7F A3 EB 78 */	mr r3, r29
/* 8004A930 00046590  38 BF A5 08 */	addi r5, r31, lbl_8040A508@l
/* 8004A934 00046594  38 80 00 00 */	li r4, 0
/* 8004A938 00046598  38 C0 00 00 */	li r6, 0
/* 8004A93C 0004659C  4B FD A9 B1 */	bl func_800252EC
/* 8004A940 000465A0  80 FE 00 3C */	lwz r7, 0x3c(r30)
/* 8004A944 000465A4  7F A3 EB 78 */	mr r3, r29
/* 8004A948 000465A8  81 1E 00 40 */	lwz r8, 0x40(r30)
/* 8004A94C 000465AC  38 BF A5 08 */	addi r5, r31, -23288
/* 8004A950 000465B0  81 3E 00 44 */	lwz r9, 0x44(r30)
/* 8004A954 000465B4  38 80 00 02 */	li r4, 2
/* 8004A958 000465B8  38 C0 00 00 */	li r6, 0
/* 8004A95C 000465BC  4B FD A9 91 */	bl func_800252EC
lbl_8004A960:
/* 8004A960 000465C0  80 1C 00 08 */	lwz r0, 8(r28)
/* 8004A964 000465C4  60 00 00 02 */	ori r0, r0, 2
/* 8004A968 000465C8  90 1C 00 08 */	stw r0, 8(r28)
/* 8004A96C 000465CC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004A970 000465D0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004A974 000465D4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004A978 000465D8  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8004A97C 000465DC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004A980 000465E0  7C 08 03 A6 */	mtlr r0
/* 8004A984 000465E4  38 21 00 20 */	addi r1, r1, 0x20
/* 8004A988 000465E8  4E 80 00 20 */	blr
/* 8004A98C 000465EC  4E 80 00 20 */	blr
/* 8004A990 000465F0  4E 80 00 20 */	blr

.global func_8004A994
func_8004A994:
/* 8004A994 000465F4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A998 000465F8  7C 08 02 A6 */	mflr r0
/* 8004A99C 000465FC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A9A0 00046600  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A9A4 00046604  7C 7F 1B 78 */	mr r31, r3
/* 8004A9A8 00046608  4B FF E6 DD */	bl func_80049084
/* 8004A9AC 0004660C  3C 80 80 41 */	lis r4, lbl_8040A5F8@ha
/* 8004A9B0 00046610  7F E3 FB 78 */	mr r3, r31
/* 8004A9B4 00046614  38 84 A5 F8 */	addi r4, r4, lbl_8040A5F8@l
/* 8004A9B8 00046618  90 9F 00 28 */	stw r4, 0x28(r31)
/* 8004A9BC 0004661C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004A9C0 00046620  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004A9C4 00046624  7C 08 03 A6 */	mtlr r0
/* 8004A9C8 00046628  38 21 00 10 */	addi r1, r1, 0x10
/* 8004A9CC 0004662C  4E 80 00 20 */	blr
/* 8004A9D0 00046630  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004A9D4 00046634  7C 08 02 A6 */	mflr r0
/* 8004A9D8 00046638  2C 03 00 00 */	cmpwi r3, 0
/* 8004A9DC 0004663C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004A9E0 00046640  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004A9E4 00046644  7C 9F 23 78 */	mr r31, r4
/* 8004A9E8 00046648  93 C1 00 08 */	stw r30, 8(r1)
/* 8004A9EC 0004664C  7C 7E 1B 78 */	mr r30, r3
/* 8004A9F0 00046650  41 82 00 38 */	beq lbl_8004AA28
/* 8004A9F4 00046654  3D 80 80 41 */	lis r12, lbl_8040A5F8@ha
/* 8004A9F8 00046658  39 8C A5 F8 */	addi r12, r12, lbl_8040A5F8@l
/* 8004A9FC 0004665C  91 83 00 28 */	stw r12, 0x28(r3)
/* 8004AA00 00046660  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 8004AA04 00046664  7D 89 03 A6 */	mtctr r12
/* 8004AA08 00046668  4E 80 04 21 */	bctrl
/* 8004AA0C 0004666C  7F C3 F3 78 */	mr r3, r30
/* 8004AA10 00046670  38 80 00 00 */	li r4, 0
/* 8004AA14 00046674  4B FF E6 A1 */	bl func_800490B4
/* 8004AA18 00046678  2C 1F 00 00 */	cmpwi r31, 0
/* 8004AA1C 0004667C  40 81 00 0C */	ble lbl_8004AA28
/* 8004AA20 00046680  7F C3 F3 78 */	mr r3, r30
/* 8004AA24 00046684  48 19 00 95 */	bl func_801DAAB8
lbl_8004AA28:
/* 8004AA28 00046688  7F C3 F3 78 */	mr r3, r30
/* 8004AA2C 0004668C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004AA30 00046690  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004AA34 00046694  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004AA38 00046698  7C 08 03 A6 */	mtlr r0
/* 8004AA3C 0004669C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004AA40 000466A0  4E 80 00 20 */	blr
/* 8004AA44 000466A4  80 63 00 14 */	lwz r3, 0x14(r3)
/* 8004AA48 000466A8  80 63 00 48 */	lwz r3, 0x48(r3)
/* 8004AA4C 000466AC  2C 03 00 00 */	cmpwi r3, 0
/* 8004AA50 000466B0  4D 82 00 20 */	beqlr
/* 8004AA54 000466B4  38 80 00 00 */	li r4, 0
/* 8004AA58 000466B8  48 19 A1 74 */	b func_801E4BCC
/* 8004AA5C 000466BC  4E 80 00 20 */	blr
/* 8004AA60 000466C0  4E 80 00 20 */	blr
/* 8004AA64 000466C4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004AA68 000466C8  7C 08 02 A6 */	mflr r0
/* 8004AA6C 000466CC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004AA70 000466D0  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8004AA74 000466D4  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8004AA78 000466D8  3B C0 00 00 */	li r30, 0
/* 8004AA7C 000466DC  83 E3 00 14 */	lwz r31, 0x14(r3)
/* 8004AA80 000466E0  80 1F 00 48 */	lwz r0, 0x48(r31)
/* 8004AA84 000466E4  2C 00 00 00 */	cmpwi r0, 0
/* 8004AA88 000466E8  41 82 00 9C */	beq lbl_8004AB24
/* 8004AA8C 000466EC  80 1F 00 00 */	lwz r0, 0(r31)
/* 8004AA90 000466F0  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004AA94 000466F4  41 82 00 38 */	beq lbl_8004AACC
/* 8004AA98 000466F8  4B FF AA F9 */	bl func_80045590
/* 8004AA9C 000466FC  38 80 01 00 */	li r4, 0x100
/* 8004AAA0 00046700  38 A0 00 00 */	li r5, 0
/* 8004AAA4 00046704  4B FF B0 5D */	bl func_80045B00
/* 8004AAA8 00046708  2C 03 00 00 */	cmpwi r3, 0
/* 8004AAAC 0004670C  41 82 00 34 */	beq lbl_8004AAE0
/* 8004AAB0 00046710  3C 80 80 41 */	lis r4, lbl_8040A54C@ha
/* 8004AAB4 00046714  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004AAB8 00046718  80 BF 00 3C */	lwz r5, 0x3c(r31)
/* 8004AABC 0004671C  38 84 A5 4C */	addi r4, r4, lbl_8040A54C@l
/* 8004AAC0 00046720  4B FF E8 79 */	bl func_80049338
/* 8004AAC4 00046724  7C 7E 1B 78 */	mr r30, r3
/* 8004AAC8 00046728  48 00 00 18 */	b lbl_8004AAE0
lbl_8004AACC:
/* 8004AACC 0004672C  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8004AAD0 00046730  88 9F 00 0C */	lbz r4, 0xc(r31)
/* 8004AAD4 00046734  80 63 00 34 */	lwz r3, 0x34(r3)
/* 8004AAD8 00046738  4B FE EE 15 */	bl func_800398EC
/* 8004AADC 0004673C  7C 7E 1B 78 */	mr r30, r3
lbl_8004AAE0:
/* 8004AAE0 00046740  2C 1E 00 00 */	cmpwi r30, 0
/* 8004AAE4 00046744  41 82 00 40 */	beq lbl_8004AB24
/* 8004AAE8 00046748  C0 5E 00 DC */	lfs f2, 0xdc(r30)
/* 8004AAEC 0004674C  38 81 00 14 */	addi r4, r1, 0x14
/* 8004AAF0 00046750  C0 3E 00 EC */	lfs f1, 0xec(r30)
/* 8004AAF4 00046754  C0 1E 00 FC */	lfs f0, 0xfc(r30)
/* 8004AAF8 00046758  D0 41 00 08 */	stfs f2, 8(r1)
/* 8004AAFC 0004675C  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 8004AB00 00046760  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 8004AB04 00046764  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8004AB08 00046768  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004AB0C 0004676C  80 7F 00 48 */	lwz r3, 0x48(r31)
/* 8004AB10 00046770  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8004AB14 00046774  48 19 A0 79 */	bl func_801E4B8C
/* 8004AB18 00046778  80 7F 00 48 */	lwz r3, 0x48(r31)
/* 8004AB1C 0004677C  38 80 00 01 */	li r4, 1
/* 8004AB20 00046780  48 19 A0 AD */	bl func_801E4BCC
lbl_8004AB24:
/* 8004AB24 00046784  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004AB28 00046788  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004AB2C 0004678C  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8004AB30 00046790  7C 08 03 A6 */	mtlr r0
/* 8004AB34 00046794  38 21 00 30 */	addi r1, r1, 0x30
/* 8004AB38 00046798  4E 80 00 20 */	blr
/* 8004AB3C 0004679C  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004AB40 000467A0  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004AB44 000467A4  C0 04 00 04 */	lfs f0, 4(r4)
/* 8004AB48 000467A8  FC 01 00 00 */	fcmpu cr0, f1, f0
/* 8004AB4C 000467AC  40 82 00 1C */	bne lbl_8004AB68
/* 8004AB50 000467B0  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8004AB54 000467B4  80 63 00 24 */	lwz r3, 0x24(r3)
/* 8004AB58 000467B8  2C 03 00 00 */	cmpwi r3, 0
/* 8004AB5C 000467BC  4D 82 00 20 */	beqlr
/* 8004AB60 000467C0  4B FF E4 F8 */	b cGame_GetGameTime
/* 8004AB64 000467C4  4E 80 00 20 */	blr
lbl_8004AB68:
/* 8004AB68 000467C8  FC 20 00 90 */	fmr f1, f0
/* 8004AB6C 000467CC  4E 80 00 20 */	blr
/* 8004AB70 000467D0  80 63 00 14 */	lwz r3, 0x14(r3)
/* 8004AB74 000467D4  80 63 00 48 */	lwz r3, 0x48(r3)
/* 8004AB78 000467D8  2C 03 00 00 */	cmpwi r3, 0
/* 8004AB7C 000467DC  4D 82 00 20 */	beqlr
/* 8004AB80 000467E0  38 80 00 00 */	li r4, 0
/* 8004AB84 000467E4  48 19 A0 48 */	b func_801E4BCC
/* 8004AB88 000467E8  4E 80 00 20 */	blr
/* 8004AB8C 000467EC  4E 80 00 20 */	blr

.global func_8004AB90
func_8004AB90:
/* 8004AB90 000467F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004AB94 000467F4  7C 08 02 A6 */	mflr r0
/* 8004AB98 000467F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004AB9C 000467FC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004ABA0 00046800  7C 7F 1B 78 */	mr r31, r3
/* 8004ABA4 00046804  4B FF E4 E1 */	bl func_80049084
/* 8004ABA8 00046808  3C 80 80 41 */	lis r4, lbl_8040A558@ha
/* 8004ABAC 0004680C  7F E3 FB 78 */	mr r3, r31
/* 8004ABB0 00046810  38 84 A5 58 */	addi r4, r4, lbl_8040A558@l
/* 8004ABB4 00046814  90 9F 00 28 */	stw r4, 0x28(r31)
/* 8004ABB8 00046818  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004ABBC 0004681C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004ABC0 00046820  7C 08 03 A6 */	mtlr r0
/* 8004ABC4 00046824  38 21 00 10 */	addi r1, r1, 0x10
/* 8004ABC8 00046828  4E 80 00 20 */	blr
/* 8004ABCC 0004682C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004ABD0 00046830  7C 08 02 A6 */	mflr r0
/* 8004ABD4 00046834  2C 03 00 00 */	cmpwi r3, 0
/* 8004ABD8 00046838  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004ABDC 0004683C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004ABE0 00046840  7C 9F 23 78 */	mr r31, r4
/* 8004ABE4 00046844  93 C1 00 08 */	stw r30, 8(r1)
/* 8004ABE8 00046848  7C 7E 1B 78 */	mr r30, r3
/* 8004ABEC 0004684C  41 82 00 38 */	beq lbl_8004AC24
/* 8004ABF0 00046850  3D 80 80 41 */	lis r12, lbl_8040A558@ha
/* 8004ABF4 00046854  39 8C A5 58 */	addi r12, r12, lbl_8040A558@l
/* 8004ABF8 00046858  91 83 00 28 */	stw r12, 0x28(r3)
/* 8004ABFC 0004685C  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 8004AC00 00046860  7D 89 03 A6 */	mtctr r12
/* 8004AC04 00046864  4E 80 04 21 */	bctrl
/* 8004AC08 00046868  7F C3 F3 78 */	mr r3, r30
/* 8004AC0C 0004686C  38 80 00 00 */	li r4, 0
/* 8004AC10 00046870  4B FF E4 A5 */	bl func_800490B4
/* 8004AC14 00046874  2C 1F 00 00 */	cmpwi r31, 0
/* 8004AC18 00046878  40 81 00 0C */	ble lbl_8004AC24
/* 8004AC1C 0004687C  7F C3 F3 78 */	mr r3, r30
/* 8004AC20 00046880  48 18 FE 99 */	bl func_801DAAB8
lbl_8004AC24:
/* 8004AC24 00046884  7F C3 F3 78 */	mr r3, r30
/* 8004AC28 00046888  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004AC2C 0004688C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004AC30 00046890  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004AC34 00046894  7C 08 03 A6 */	mtlr r0
/* 8004AC38 00046898  38 21 00 10 */	addi r1, r1, 0x10
/* 8004AC3C 0004689C  4E 80 00 20 */	blr
/* 8004AC40 000468A0  4B FF E4 DC */	b func_8004911C
/* 8004AC44 000468A4  C0 22 83 D0 */	lfs f1, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004AC48 000468A8  4E 80 00 20 */	blr
/* 8004AC4C 000468AC  4E 80 00 20 */	blr
/* 8004AC50 000468B0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004AC54 000468B4  7C 08 02 A6 */	mflr r0
/* 8004AC58 000468B8  C8 42 83 E8 */	lfd f2, lbl_806409E8-_SDA2_BASE_(r2)
/* 8004AC5C 000468BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004AC60 000468C0  3C 00 43 30 */	lis r0, 0x4330
/* 8004AC64 000468C4  C0 02 83 D0 */	lfs f0, lbl_806409D0-_SDA2_BASE_(r2)
/* 8004AC68 000468C8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004AC6C 000468CC  7C 7F 1B 78 */	mr r31, r3
/* 8004AC70 000468D0  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004AC74 000468D4  90 01 00 08 */	stw r0, 8(r1)
/* 8004AC78 000468D8  A8 04 00 44 */	lha r0, 0x44(r4)
/* 8004AC7C 000468DC  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8004AC80 000468E0  90 01 00 0C */	stw r0, 0xc(r1)
/* 8004AC84 000468E4  C8 21 00 08 */	lfd f1, 8(r1)
/* 8004AC88 000468E8  EC 21 10 28 */	fsubs f1, f1, f2
/* 8004AC8C 000468EC  FC 00 08 00 */	fcmpu cr0, f0, f1
/* 8004AC90 000468F0  40 82 00 08 */	bne lbl_8004AC98
/* 8004AC94 000468F4  C0 22 83 E0 */	lfs f1, lbl_806409E0-_SDA2_BASE_(r2)
lbl_8004AC98:
/* 8004AC98 000468F8  80 64 00 3C */	lwz r3, 0x3c(r4)
/* 8004AC9C 000468FC  2C 03 00 00 */	cmpwi r3, 0
/* 8004ACA0 00046900  41 82 00 0C */	beq lbl_8004ACAC
/* 8004ACA4 00046904  38 80 00 00 */	li r4, 0
/* 8004ACA8 00046908  4B FC 04 C9 */	bl func_8000B170
lbl_8004ACAC:
/* 8004ACAC 0004690C  80 1F 00 08 */	lwz r0, 8(r31)
/* 8004ACB0 00046910  60 00 00 02 */	ori r0, r0, 2
/* 8004ACB4 00046914  90 1F 00 08 */	stw r0, 8(r31)
/* 8004ACB8 00046918  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004ACBC 0004691C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004ACC0 00046920  7C 08 03 A6 */	mtlr r0
/* 8004ACC4 00046924  38 21 00 20 */	addi r1, r1, 0x20
/* 8004ACC8 00046928  4E 80 00 20 */	blr
/* 8004ACCC 0004692C  4E 80 00 20 */	blr
/* 8004ACD0 00046930  4E 80 00 20 */	blr

.global func_8004ACD4
func_8004ACD4:
/* 8004ACD4 00046934  38 A0 00 01 */	li r5, 1
/* 8004ACD8 00046938  38 6D 98 18 */	addi r3, r13, lbl_8063EAD8-_SDA_BASE_
/* 8004ACDC 0004693C  38 80 00 04 */	li r4, 4
/* 8004ACE0 00046940  38 00 00 00 */	li r0, 0
/* 8004ACE4 00046944  98 AD 98 18 */	stb r5, lbl_8063EAD8-_SDA_BASE_(r13)
/* 8004ACE8 00046948  B0 83 00 02 */	sth r4, 2(r3)
/* 8004ACEC 0004694C  98 03 00 04 */	stb r0, 4(r3)
/* 8004ACF0 00046950  4E 80 00 20 */	blr

.global func_8004ACF4
func_8004ACF4:
/* 8004ACF4 00046954  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004ACF8 00046958  3C E0 43 30 */	lis r7, 0x4330
/* 8004ACFC 0004695C  88 03 00 00 */	lbz r0, 0(r3)
/* 8004AD00 00046960  88 C3 00 01 */	lbz r6, 1(r3)
/* 8004AD04 00046964  90 01 00 0C */	stw r0, 0xc(r1)
/* 8004AD08 00046968  C8 82 83 F0 */	lfd f4, lbl_806409F0-_SDA2_BASE_(r2)
/* 8004AD0C 0004696C  90 E1 00 08 */	stw r7, 8(r1)
/* 8004AD10 00046970  88 A3 00 02 */	lbz r5, 2(r3)
/* 8004AD14 00046974  C8 01 00 08 */	lfd f0, 8(r1)
/* 8004AD18 00046978  90 E1 00 10 */	stw r7, 0x10(r1)
/* 8004AD1C 0004697C  EC 60 20 28 */	fsubs f3, f0, f4
/* 8004AD20 00046980  88 03 00 03 */	lbz r0, 3(r3)
/* 8004AD24 00046984  90 C1 00 14 */	stw r6, 0x14(r1)
/* 8004AD28 00046988  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8004AD2C 0004698C  90 A1 00 0C */	stw r5, 0xc(r1)
/* 8004AD30 00046990  EC 40 20 28 */	fsubs f2, f0, f4
/* 8004AD34 00046994  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004AD38 00046998  C8 21 00 08 */	lfd f1, 8(r1)
/* 8004AD3C 0004699C  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8004AD40 000469A0  EC 21 20 28 */	fsubs f1, f1, f4
/* 8004AD44 000469A4  D0 64 00 00 */	stfs f3, 0(r4)
/* 8004AD48 000469A8  EC 00 20 28 */	fsubs f0, f0, f4
/* 8004AD4C 000469AC  D0 44 00 04 */	stfs f2, 4(r4)
/* 8004AD50 000469B0  D0 24 00 08 */	stfs f1, 8(r4)
/* 8004AD54 000469B4  D0 04 00 0C */	stfs f0, 0xc(r4)
/* 8004AD58 000469B8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004AD5C 000469BC  4E 80 00 20 */	blr

.global func_8004AD60
func_8004AD60:
/* 8004AD60 000469C0  C0 03 00 00 */	lfs f0, 0(r3)
/* 8004AD64 000469C4  C0 43 00 04 */	lfs f2, 4(r3)
/* 8004AD68 000469C8  C0 23 00 08 */	lfs f1, 8(r3)
/* 8004AD6C 000469CC  FC 60 00 1E */	fctiwz f3, f0
/* 8004AD70 000469D0  C0 03 00 0C */	lfs f0, 0xc(r3)
/* 8004AD74 000469D4  FC 40 10 1E */	fctiwz f2, f2
/* 8004AD78 000469D8  FC 20 08 1E */	fctiwz f1, f1
/* 8004AD7C 000469DC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004AD80 000469E0  FC 00 00 1E */	fctiwz f0, f0
/* 8004AD84 000469E4  D8 61 00 08 */	stfd f3, 8(r1)
/* 8004AD88 000469E8  D8 41 00 10 */	stfd f2, 0x10(r1)
/* 8004AD8C 000469EC  80 C1 00 0C */	lwz r6, 0xc(r1)
/* 8004AD90 000469F0  D8 21 00 18 */	stfd f1, 0x18(r1)
/* 8004AD94 000469F4  80 A1 00 14 */	lwz r5, 0x14(r1)
/* 8004AD98 000469F8  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8004AD9C 000469FC  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8004ADA0 00046A00  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004ADA4 00046A04  98 C4 00 00 */	stb r6, 0(r4)
/* 8004ADA8 00046A08  98 A4 00 01 */	stb r5, 1(r4)
/* 8004ADAC 00046A0C  98 64 00 02 */	stb r3, 2(r4)
/* 8004ADB0 00046A10  98 04 00 03 */	stb r0, 3(r4)
/* 8004ADB4 00046A14  38 21 00 30 */	addi r1, r1, 0x30
/* 8004ADB8 00046A18  4E 80 00 20 */	blr

.global func_8004ADBC
func_8004ADBC:
/* 8004ADBC 00046A1C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004ADC0 00046A20  7C 08 02 A6 */	mflr r0
/* 8004ADC4 00046A24  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004ADC8 00046A28  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004ADCC 00046A2C  7C 7F 1B 78 */	mr r31, r3
/* 8004ADD0 00046A30  4B FF E2 B5 */	bl func_80049084
/* 8004ADD4 00046A34  3C 80 80 41 */	lis r4, lbl_8040AAA8@ha
/* 8004ADD8 00046A38  38 00 00 00 */	li r0, 0
/* 8004ADDC 00046A3C  38 84 AA A8 */	addi r4, r4, lbl_8040AAA8@l
/* 8004ADE0 00046A40  90 1F 00 2C */	stw r0, 0x2c(r31)
/* 8004ADE4 00046A44  7F E3 FB 78 */	mr r3, r31
/* 8004ADE8 00046A48  90 9F 00 28 */	stw r4, 0x28(r31)
/* 8004ADEC 00046A4C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004ADF0 00046A50  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004ADF4 00046A54  7C 08 03 A6 */	mtlr r0
/* 8004ADF8 00046A58  38 21 00 10 */	addi r1, r1, 0x10
/* 8004ADFC 00046A5C  4E 80 00 20 */	blr
/* 8004AE00 00046A60  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004AE04 00046A64  7C 08 02 A6 */	mflr r0
/* 8004AE08 00046A68  2C 03 00 00 */	cmpwi r3, 0
/* 8004AE0C 00046A6C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004AE10 00046A70  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004AE14 00046A74  7C 9F 23 78 */	mr r31, r4
/* 8004AE18 00046A78  93 C1 00 08 */	stw r30, 8(r1)
/* 8004AE1C 00046A7C  7C 7E 1B 78 */	mr r30, r3
/* 8004AE20 00046A80  41 82 00 38 */	beq lbl_8004AE58
/* 8004AE24 00046A84  3D 80 80 41 */	lis r12, lbl_8040AAA8@ha
/* 8004AE28 00046A88  39 8C AA A8 */	addi r12, r12, lbl_8040AAA8@l
/* 8004AE2C 00046A8C  91 83 00 28 */	stw r12, 0x28(r3)
/* 8004AE30 00046A90  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 8004AE34 00046A94  7D 89 03 A6 */	mtctr r12
/* 8004AE38 00046A98  4E 80 04 21 */	bctrl
/* 8004AE3C 00046A9C  7F C3 F3 78 */	mr r3, r30
/* 8004AE40 00046AA0  38 80 00 00 */	li r4, 0
/* 8004AE44 00046AA4  4B FF E2 71 */	bl func_800490B4
/* 8004AE48 00046AA8  2C 1F 00 00 */	cmpwi r31, 0
/* 8004AE4C 00046AAC  40 81 00 0C */	ble lbl_8004AE58
/* 8004AE50 00046AB0  7F C3 F3 78 */	mr r3, r30
/* 8004AE54 00046AB4  48 18 FC 65 */	bl func_801DAAB8
lbl_8004AE58:
/* 8004AE58 00046AB8  7F C3 F3 78 */	mr r3, r30
/* 8004AE5C 00046ABC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004AE60 00046AC0  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004AE64 00046AC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004AE68 00046AC8  7C 08 03 A6 */	mtlr r0
/* 8004AE6C 00046ACC  38 21 00 10 */	addi r1, r1, 0x10
/* 8004AE70 00046AD0  4E 80 00 20 */	blr
/* 8004AE74 00046AD4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004AE78 00046AD8  7C 08 02 A6 */	mflr r0
/* 8004AE7C 00046ADC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004AE80 00046AE0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004AE84 00046AE4  7C 7F 1B 78 */	mr r31, r3
/* 8004AE88 00046AE8  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 8004AE8C 00046AEC  2C 00 00 00 */	cmpwi r0, 0
/* 8004AE90 00046AF0  41 82 00 28 */	beq lbl_8004AEB8
/* 8004AE94 00046AF4  41 82 00 1C */	beq lbl_8004AEB0
/* 8004AE98 00046AF8  7C 03 03 78 */	mr r3, r0
/* 8004AE9C 00046AFC  38 80 00 01 */	li r4, 1
/* 8004AEA0 00046B00  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004AEA4 00046B04  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004AEA8 00046B08  7D 89 03 A6 */	mtctr r12
/* 8004AEAC 00046B0C  4E 80 04 21 */	bctrl
lbl_8004AEB0:
/* 8004AEB0 00046B10  38 00 00 00 */	li r0, 0
/* 8004AEB4 00046B14  90 1F 00 2C */	stw r0, 0x2c(r31)
lbl_8004AEB8:
/* 8004AEB8 00046B18  7F E3 FB 78 */	mr r3, r31
/* 8004AEBC 00046B1C  4B FF E2 61 */	bl func_8004911C
/* 8004AEC0 00046B20  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004AEC4 00046B24  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004AEC8 00046B28  7C 08 03 A6 */	mtlr r0
/* 8004AECC 00046B2C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004AED0 00046B30  4E 80 00 20 */	blr
/* 8004AED4 00046B34  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004AED8 00046B38  7C 08 02 A6 */	mflr r0
/* 8004AEDC 00046B3C  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004AEE0 00046B40  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004AEE4 00046B44  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 8004AEE8 00046B48  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004AEEC 00046B4C  7C 7F 1B 78 */	mr r31, r3
/* 8004AEF0 00046B50  2C 00 00 00 */	cmpwi r0, 0
/* 8004AEF4 00046B54  41 82 00 34 */	beq lbl_8004AF28
/* 8004AEF8 00046B58  7C 03 03 78 */	mr r3, r0
/* 8004AEFC 00046B5C  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004AF00 00046B60  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004AF04 00046B64  7D 89 03 A6 */	mtctr r12
/* 8004AF08 00046B68  4E 80 04 21 */	bctrl
/* 8004AF0C 00046B6C  C0 02 83 F8 */	lfs f0, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004AF10 00046B70  FC 00 08 00 */	fcmpu cr0, f0, f1
/* 8004AF14 00046B74  40 82 00 14 */	bne lbl_8004AF28
/* 8004AF18 00046B78  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004AF1C 00046B7C  2C 03 00 00 */	cmpwi r3, 0
/* 8004AF20 00046B80  41 82 00 08 */	beq lbl_8004AF28
/* 8004AF24 00046B84  C0 23 00 04 */	lfs f1, 4(r3)
lbl_8004AF28:
/* 8004AF28 00046B88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004AF2C 00046B8C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004AF30 00046B90  7C 08 03 A6 */	mtlr r0
/* 8004AF34 00046B94  38 21 00 10 */	addi r1, r1, 0x10
/* 8004AF38 00046B98  4E 80 00 20 */	blr
/* 8004AF3C 00046B9C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004AF40 00046BA0  7C 08 02 A6 */	mflr r0
/* 8004AF44 00046BA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004AF48 00046BA8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004AF4C 00046BAC  7C 7F 1B 78 */	mr r31, r3
/* 8004AF50 00046BB0  A0 04 00 38 */	lhz r0, 0x38(r4)
/* 8004AF54 00046BB4  28 00 00 0E */	cmplwi r0, 0xe
/* 8004AF58 00046BB8  41 81 01 78 */	bgt lbl_8004B0D0
/* 8004AF5C 00046BBC  3C 60 80 41 */	lis r3, lbl_8040A728@ha
/* 8004AF60 00046BC0  54 00 10 3A */	slwi r0, r0, 2
/* 8004AF64 00046BC4  38 63 A7 28 */	addi r3, r3, lbl_8040A728@l
/* 8004AF68 00046BC8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8004AF6C 00046BCC  7C 69 03 A6 */	mtctr r3
/* 8004AF70 00046BD0  4E 80 04 20 */	bctr
/* 8004AF74 00046BD4  38 60 00 8C */	li r3, 0x8c
/* 8004AF78 00046BD8  48 18 FA B9 */	bl func_801DAA30
/* 8004AF7C 00046BDC  2C 03 00 00 */	cmpwi r3, 0
/* 8004AF80 00046BE0  41 82 00 0C */	beq lbl_8004AF8C
/* 8004AF84 00046BE4  7F E4 FB 78 */	mr r4, r31
/* 8004AF88 00046BE8  48 00 02 B5 */	bl func_8004B23C
lbl_8004AF8C:
/* 8004AF8C 00046BEC  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004AF90 00046BF0  48 00 01 40 */	b lbl_8004B0D0
/* 8004AF94 00046BF4  38 60 00 14 */	li r3, 0x14
/* 8004AF98 00046BF8  48 18 FA 99 */	bl func_801DAA30
/* 8004AF9C 00046BFC  2C 03 00 00 */	cmpwi r3, 0
/* 8004AFA0 00046C00  41 82 00 0C */	beq lbl_8004AFAC
/* 8004AFA4 00046C04  7F E4 FB 78 */	mr r4, r31
/* 8004AFA8 00046C08  48 00 07 25 */	bl func_8004B6CC
lbl_8004AFAC:
/* 8004AFAC 00046C0C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004AFB0 00046C10  48 00 01 20 */	b lbl_8004B0D0
/* 8004AFB4 00046C14  38 60 00 14 */	li r3, 0x14
/* 8004AFB8 00046C18  48 18 FA 79 */	bl func_801DAA30
/* 8004AFBC 00046C1C  2C 03 00 00 */	cmpwi r3, 0
/* 8004AFC0 00046C20  41 82 00 0C */	beq lbl_8004AFCC
/* 8004AFC4 00046C24  7F E4 FB 78 */	mr r4, r31
/* 8004AFC8 00046C28  48 00 07 A5 */	bl func_8004B76C
lbl_8004AFCC:
/* 8004AFCC 00046C2C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004AFD0 00046C30  48 00 01 00 */	b lbl_8004B0D0
/* 8004AFD4 00046C34  38 60 00 48 */	li r3, 0x48
/* 8004AFD8 00046C38  48 18 FA 59 */	bl func_801DAA30
/* 8004AFDC 00046C3C  2C 03 00 00 */	cmpwi r3, 0
/* 8004AFE0 00046C40  41 82 00 0C */	beq lbl_8004AFEC
/* 8004AFE4 00046C44  7F E4 FB 78 */	mr r4, r31
/* 8004AFE8 00046C48  48 00 08 25 */	bl func_8004B80C
lbl_8004AFEC:
/* 8004AFEC 00046C4C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004AFF0 00046C50  48 00 00 E0 */	b lbl_8004B0D0
/* 8004AFF4 00046C54  38 60 00 48 */	li r3, 0x48
/* 8004AFF8 00046C58  48 18 FA 39 */	bl func_801DAA30
/* 8004AFFC 00046C5C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B000 00046C60  41 82 00 0C */	beq lbl_8004B00C
/* 8004B004 00046C64  7F E4 FB 78 */	mr r4, r31
/* 8004B008 00046C68  48 00 0B D1 */	bl func_8004BBD8
lbl_8004B00C:
/* 8004B00C 00046C6C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004B010 00046C70  48 00 00 C0 */	b lbl_8004B0D0
/* 8004B014 00046C74  38 60 00 14 */	li r3, 0x14
/* 8004B018 00046C78  48 18 FA 19 */	bl func_801DAA30
/* 8004B01C 00046C7C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B020 00046C80  41 82 00 0C */	beq lbl_8004B02C
/* 8004B024 00046C84  7F E4 FB 78 */	mr r4, r31
/* 8004B028 00046C88  48 00 0F 31 */	bl func_8004BF58
lbl_8004B02C:
/* 8004B02C 00046C8C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004B030 00046C90  48 00 00 A0 */	b lbl_8004B0D0
/* 8004B034 00046C94  38 60 00 1C */	li r3, 0x1c
/* 8004B038 00046C98  48 18 F9 F9 */	bl func_801DAA30
/* 8004B03C 00046C9C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B040 00046CA0  41 82 00 0C */	beq lbl_8004B04C
/* 8004B044 00046CA4  7F E4 FB 78 */	mr r4, r31
/* 8004B048 00046CA8  48 00 0F B1 */	bl func_8004BFF8
lbl_8004B04C:
/* 8004B04C 00046CAC  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004B050 00046CB0  48 00 00 80 */	b lbl_8004B0D0
/* 8004B054 00046CB4  38 60 00 1C */	li r3, 0x1c
/* 8004B058 00046CB8  48 18 F9 D9 */	bl func_801DAA30
/* 8004B05C 00046CBC  2C 03 00 00 */	cmpwi r3, 0
/* 8004B060 00046CC0  41 82 00 0C */	beq lbl_8004B06C
/* 8004B064 00046CC4  7F E4 FB 78 */	mr r4, r31
/* 8004B068 00046CC8  48 00 13 85 */	bl func_8004C3EC
lbl_8004B06C:
/* 8004B06C 00046CCC  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004B070 00046CD0  48 00 00 60 */	b lbl_8004B0D0
/* 8004B074 00046CD4  38 60 00 B8 */	li r3, 0xb8
/* 8004B078 00046CD8  48 18 F9 B9 */	bl func_801DAA30
/* 8004B07C 00046CDC  2C 03 00 00 */	cmpwi r3, 0
/* 8004B080 00046CE0  41 82 00 0C */	beq lbl_8004B08C
/* 8004B084 00046CE4  7F E4 FB 78 */	mr r4, r31
/* 8004B088 00046CE8  48 00 16 59 */	bl func_8004C6E0
lbl_8004B08C:
/* 8004B08C 00046CEC  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004B090 00046CF0  48 00 00 40 */	b lbl_8004B0D0
/* 8004B094 00046CF4  38 60 00 48 */	li r3, 0x48
/* 8004B098 00046CF8  48 18 F9 99 */	bl func_801DAA30
/* 8004B09C 00046CFC  2C 03 00 00 */	cmpwi r3, 0
/* 8004B0A0 00046D00  41 82 00 0C */	beq lbl_8004B0AC
/* 8004B0A4 00046D04  7F E4 FB 78 */	mr r4, r31
/* 8004B0A8 00046D08  48 00 1A 8D */	bl func_8004CB34
lbl_8004B0AC:
/* 8004B0AC 00046D0C  90 7F 00 2C */	stw r3, 0x2c(r31)
/* 8004B0B0 00046D10  48 00 00 20 */	b lbl_8004B0D0
/* 8004B0B4 00046D14  38 60 00 4C */	li r3, 0x4c
/* 8004B0B8 00046D18  48 18 F9 79 */	bl func_801DAA30
/* 8004B0BC 00046D1C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B0C0 00046D20  41 82 00 0C */	beq lbl_8004B0CC
/* 8004B0C4 00046D24  7F E4 FB 78 */	mr r4, r31
/* 8004B0C8 00046D28  48 00 21 35 */	bl func_8004D1FC
lbl_8004B0CC:
/* 8004B0CC 00046D2C  90 7F 00 2C */	stw r3, 0x2c(r31)
lbl_8004B0D0:
/* 8004B0D0 00046D30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B0D4 00046D34  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B0D8 00046D38  7C 08 03 A6 */	mtlr r0
/* 8004B0DC 00046D3C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B0E0 00046D40  4E 80 00 20 */	blr
/* 8004B0E4 00046D44  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 8004B0E8 00046D48  2C 03 00 00 */	cmpwi r3, 0
/* 8004B0EC 00046D4C  4D 82 00 20 */	beqlr
/* 8004B0F0 00046D50  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004B0F4 00046D54  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8004B0F8 00046D58  7D 89 03 A6 */	mtctr r12
/* 8004B0FC 00046D5C  4E 80 04 20 */	bctr
/* 8004B100 00046D60  4E 80 00 20 */	blr
/* 8004B104 00046D64  4E 80 00 20 */	blr
/* 8004B108 00046D68  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 8004B10C 00046D6C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B110 00046D70  4D 82 00 20 */	beqlr
/* 8004B114 00046D74  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004B118 00046D78  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004B11C 00046D7C  7D 89 03 A6 */	mtctr r12
/* 8004B120 00046D80  4E 80 04 20 */	bctr
/* 8004B124 00046D84  4E 80 00 20 */	blr
/* 8004B128 00046D88  4E 80 00 20 */	blr
/* 8004B12C 00046D8C  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 8004B130 00046D90  2C 03 00 00 */	cmpwi r3, 0
/* 8004B134 00046D94  4D 82 00 20 */	beqlr
/* 8004B138 00046D98  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004B13C 00046D9C  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 8004B140 00046DA0  7D 89 03 A6 */	mtctr r12
/* 8004B144 00046DA4  4E 80 04 20 */	bctr
/* 8004B148 00046DA8  4E 80 00 20 */	blr
/* 8004B14C 00046DAC  4E 80 00 20 */	blr

.global func_8004B150
func_8004B150:
/* 8004B150 00046DB0  3C A0 80 41 */	lis r5, lbl_8040AA70@ha
/* 8004B154 00046DB4  90 83 00 04 */	stw r4, 4(r3)
/* 8004B158 00046DB8  38 A5 AA 70 */	addi r5, r5, lbl_8040AA70@l
/* 8004B15C 00046DBC  90 A3 00 10 */	stw r5, 0x10(r3)
/* 8004B160 00046DC0  80 84 00 14 */	lwz r4, 0x14(r4)
/* 8004B164 00046DC4  38 04 00 38 */	addi r0, r4, 0x38
/* 8004B168 00046DC8  90 83 00 08 */	stw r4, 8(r3)
/* 8004B16C 00046DCC  90 03 00 0C */	stw r0, 0xc(r3)
/* 8004B170 00046DD0  4E 80 00 20 */	blr

.global func_8004B174
func_8004B174:
/* 8004B174 00046DD4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B178 00046DD8  7C 08 02 A6 */	mflr r0
/* 8004B17C 00046DDC  2C 03 00 00 */	cmpwi r3, 0
/* 8004B180 00046DE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B184 00046DE4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B188 00046DE8  7C 7F 1B 78 */	mr r31, r3
/* 8004B18C 00046DEC  41 82 00 10 */	beq lbl_8004B19C
/* 8004B190 00046DF0  2C 04 00 00 */	cmpwi r4, 0
/* 8004B194 00046DF4  40 81 00 08 */	ble lbl_8004B19C
/* 8004B198 00046DF8  48 18 F9 21 */	bl func_801DAAB8
lbl_8004B19C:
/* 8004B19C 00046DFC  7F E3 FB 78 */	mr r3, r31
/* 8004B1A0 00046E00  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B1A4 00046E04  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B1A8 00046E08  7C 08 03 A6 */	mtlr r0
/* 8004B1AC 00046E0C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B1B0 00046E10  4E 80 00 20 */	blr

.global func_8004B1B4
func_8004B1B4:
/* 8004B1B4 00046E14  80 63 00 04 */	lwz r3, 4(r3)
/* 8004B1B8 00046E18  2C 03 00 00 */	cmpwi r3, 0
/* 8004B1BC 00046E1C  40 82 00 0C */	bne lbl_8004B1C8
/* 8004B1C0 00046E20  38 60 00 00 */	li r3, 0
/* 8004B1C4 00046E24  4E 80 00 20 */	blr
lbl_8004B1C8:
/* 8004B1C8 00046E28  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8004B1CC 00046E2C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B1D0 00046E30  41 82 00 0C */	beq lbl_8004B1DC
/* 8004B1D4 00046E34  80 63 00 34 */	lwz r3, 0x34(r3)
/* 8004B1D8 00046E38  4E 80 00 20 */	blr
lbl_8004B1DC:
/* 8004B1DC 00046E3C  38 60 00 00 */	li r3, 0
/* 8004B1E0 00046E40  4E 80 00 20 */	blr

.global func_8004B1E4
func_8004B1E4:
/* 8004B1E4 00046E44  80 63 00 04 */	lwz r3, 4(r3)
/* 8004B1E8 00046E48  2C 03 00 00 */	cmpwi r3, 0
/* 8004B1EC 00046E4C  40 82 00 0C */	bne lbl_8004B1F8
/* 8004B1F0 00046E50  38 60 00 00 */	li r3, 0
/* 8004B1F4 00046E54  4E 80 00 20 */	blr
lbl_8004B1F8:
/* 8004B1F8 00046E58  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8004B1FC 00046E5C  2C 03 00 00 */	cmpwi r3, 0
/* 8004B200 00046E60  41 82 00 18 */	beq lbl_8004B218
/* 8004B204 00046E64  80 63 00 34 */	lwz r3, 0x34(r3)
/* 8004B208 00046E68  2C 03 00 00 */	cmpwi r3, 0
/* 8004B20C 00046E6C  41 82 00 0C */	beq lbl_8004B218
/* 8004B210 00046E70  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004B214 00046E74  4E 80 00 20 */	blr
lbl_8004B218:
/* 8004B218 00046E78  38 60 00 00 */	li r3, 0
/* 8004B21C 00046E7C  4E 80 00 20 */	blr
/* 8004B220 00046E80  80 63 00 08 */	lwz r3, 8(r3)
/* 8004B224 00046E84  2C 03 00 00 */	cmpwi r3, 0
/* 8004B228 00046E88  41 82 00 0C */	beq lbl_8004B234
/* 8004B22C 00046E8C  C0 23 00 04 */	lfs f1, 4(r3)
/* 8004B230 00046E90  4E 80 00 20 */	blr
lbl_8004B234:
/* 8004B234 00046E94  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004B238 00046E98  4E 80 00 20 */	blr

.global func_8004B23C
func_8004B23C:
/* 8004B23C 00046E9C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B240 00046EA0  7C 08 02 A6 */	mflr r0
/* 8004B244 00046EA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B248 00046EA8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B24C 00046EAC  7C 7F 1B 78 */	mr r31, r3
/* 8004B250 00046EB0  4B FF FF 01 */	bl func_8004B150
/* 8004B254 00046EB4  3C 80 80 41 */	lis r4, lbl_8040AA2C@ha
/* 8004B258 00046EB8  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004B25C 00046EBC  38 84 AA 2C */	addi r4, r4, lbl_8040AA2C@l
/* 8004B260 00046EC0  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004B264 00046EC4  48 00 58 D1 */	bl func_80050B34
/* 8004B268 00046EC8  80 9F 00 0C */	lwz r4, 0xc(r31)
/* 8004B26C 00046ECC  7F E3 FB 78 */	mr r3, r31
/* 8004B270 00046ED0  38 04 00 08 */	addi r0, r4, 8
/* 8004B274 00046ED4  90 1F 00 14 */	stw r0, 0x14(r31)
/* 8004B278 00046ED8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B27C 00046EDC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B280 00046EE0  7C 08 03 A6 */	mtlr r0
/* 8004B284 00046EE4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B288 00046EE8  4E 80 00 20 */	blr
/* 8004B28C 00046EEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B290 00046EF0  7C 08 02 A6 */	mflr r0
/* 8004B294 00046EF4  2C 03 00 00 */	cmpwi r3, 0
/* 8004B298 00046EF8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B29C 00046EFC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B2A0 00046F00  7C 9F 23 78 */	mr r31, r4
/* 8004B2A4 00046F04  93 C1 00 08 */	stw r30, 8(r1)
/* 8004B2A8 00046F08  7C 7E 1B 78 */	mr r30, r3
/* 8004B2AC 00046F0C  41 82 00 1C */	beq lbl_8004B2C8
/* 8004B2B0 00046F10  38 80 00 00 */	li r4, 0
/* 8004B2B4 00046F14  4B FF FE C1 */	bl func_8004B174
/* 8004B2B8 00046F18  2C 1F 00 00 */	cmpwi r31, 0
/* 8004B2BC 00046F1C  40 81 00 0C */	ble lbl_8004B2C8
/* 8004B2C0 00046F20  7F C3 F3 78 */	mr r3, r30
/* 8004B2C4 00046F24  48 18 F7 F5 */	bl func_801DAAB8
lbl_8004B2C8:
/* 8004B2C8 00046F28  7F C3 F3 78 */	mr r3, r30
/* 8004B2CC 00046F2C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B2D0 00046F30  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004B2D4 00046F34  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B2D8 00046F38  7C 08 03 A6 */	mtlr r0
/* 8004B2DC 00046F3C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B2E0 00046F40  4E 80 00 20 */	blr
/* 8004B2E4 00046F44  38 00 00 00 */	li r0, 0
/* 8004B2E8 00046F48  90 03 00 88 */	stw r0, 0x88(r3)
/* 8004B2EC 00046F4C  48 00 00 04 */	b func_8004B2F0

.global func_8004B2F0
func_8004B2F0:
/* 8004B2F0 00046F50  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B2F4 00046F54  7C 08 02 A6 */	mflr r0
/* 8004B2F8 00046F58  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004B2FC 00046F5C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B300 00046F60  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B304 00046F64  7C 7F 1B 78 */	mr r31, r3
/* 8004B308 00046F68  80 03 00 88 */	lwz r0, 0x88(r3)
/* 8004B30C 00046F6C  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004B310 00046F70  1C 00 00 0C */	mulli r0, r0, 0xc
/* 8004B314 00046F74  7C 84 02 14 */	add r4, r4, r0
/* 8004B318 00046F78  38 84 00 08 */	addi r4, r4, 8
/* 8004B31C 00046F7C  90 83 00 18 */	stw r4, 0x18(r3)
/* 8004B320 00046F80  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004B324 00046F84  FC 01 00 00 */	fcmpu cr0, f1, f0
/* 8004B328 00046F88  40 82 00 20 */	bne lbl_8004B348
/* 8004B32C 00046F8C  38 63 00 58 */	addi r3, r3, 0x58
/* 8004B330 00046F90  4B FF FA 31 */	bl func_8004AD60
/* 8004B334 00046F94  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004B338 00046F98  7F E3 FB 78 */	mr r3, r31
/* 8004B33C 00046F9C  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004B340 00046FA0  7D 89 03 A6 */	mtctr r12
/* 8004B344 00046FA4  4E 80 04 21 */	bctrl
lbl_8004B348:
/* 8004B348 00046FA8  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004B34C 00046FAC  48 00 58 95 */	bl func_80050BE0
/* 8004B350 00046FB0  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004B354 00046FB4  38 9F 00 68 */	addi r4, r31, 0x68
/* 8004B358 00046FB8  4B FF F9 9D */	bl func_8004ACF4
/* 8004B35C 00046FBC  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004B360 00046FC0  38 9F 00 78 */	addi r4, r31, 0x78
/* 8004B364 00046FC4  38 63 00 04 */	addi r3, r3, 4
/* 8004B368 00046FC8  4B FF F9 8D */	bl func_8004ACF4
/* 8004B36C 00046FCC  80 DF 00 18 */	lwz r6, 0x18(r31)
/* 8004B370 00046FD0  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004B374 00046FD4  38 9F 00 68 */	addi r4, r31, 0x68
/* 8004B378 00046FD8  38 BF 00 78 */	addi r5, r31, 0x78
/* 8004B37C 00046FDC  C0 26 00 08 */	lfs f1, 8(r6)
/* 8004B380 00046FE0  38 DF 00 58 */	addi r6, r31, 0x58
/* 8004B384 00046FE4  38 E0 00 00 */	li r7, 0
/* 8004B388 00046FE8  48 00 57 C5 */	bl func_80050B4C
/* 8004B38C 00046FEC  80 7F 00 88 */	lwz r3, 0x88(r31)
/* 8004B390 00046FF0  38 00 00 01 */	li r0, 1
/* 8004B394 00046FF4  98 1F 00 00 */	stb r0, 0(r31)
/* 8004B398 00046FF8  38 03 00 01 */	addi r0, r3, 1
/* 8004B39C 00046FFC  90 1F 00 88 */	stw r0, 0x88(r31)
/* 8004B3A0 00047000  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B3A4 00047004  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B3A8 00047008  7C 08 03 A6 */	mtlr r0
/* 8004B3AC 0004700C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B3B0 00047010  4E 80 00 20 */	blr
/* 8004B3B4 00047014  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004B3B8 00047018  7C 08 02 A6 */	mflr r0
/* 8004B3BC 0004701C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004B3C0 00047020  38 00 00 00 */	li r0, 0
/* 8004B3C4 00047024  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004B3C8 00047028  7C 7F 1B 78 */	mr r31, r3
/* 8004B3CC 0004702C  98 03 00 00 */	stb r0, 0(r3)
/* 8004B3D0 00047030  38 63 00 1C */	addi r3, r3, 0x1c
/* 8004B3D4 00047034  48 00 58 0D */	bl func_80050BE0
/* 8004B3D8 00047038  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004B3DC 0004703C  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004B3E0 00047040  88 64 00 05 */	lbz r3, 5(r4)
/* 8004B3E4 00047044  38 03 FF FF */	addi r0, r3, -1
/* 8004B3E8 00047048  1C 00 00 0C */	mulli r0, r0, 0xc
/* 8004B3EC 0004704C  7C 64 02 14 */	add r3, r4, r0
/* 8004B3F0 00047050  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 8004B3F4 00047054  FC 01 00 00 */	fcmpu cr0, f1, f0
/* 8004B3F8 00047058  41 82 00 24 */	beq lbl_8004B41C
/* 8004B3FC 0004705C  38 00 00 80 */	li r0, 0x80
/* 8004B400 00047060  7F E3 FB 78 */	mr r3, r31
/* 8004B404 00047064  98 01 00 08 */	stb r0, 8(r1)
/* 8004B408 00047068  38 81 00 08 */	addi r4, r1, 8
/* 8004B40C 0004706C  98 01 00 09 */	stb r0, 9(r1)
/* 8004B410 00047070  98 01 00 0A */	stb r0, 0xa(r1)
/* 8004B414 00047074  98 01 00 0B */	stb r0, 0xb(r1)
/* 8004B418 00047078  48 00 00 B5 */	bl func_8004B4CC
lbl_8004B41C:
/* 8004B41C 0004707C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004B420 00047080  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004B424 00047084  7C 08 03 A6 */	mtlr r0
/* 8004B428 00047088  38 21 00 20 */	addi r1, r1, 0x20
/* 8004B42C 0004708C  4E 80 00 20 */	blr
/* 8004B430 00047090  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004B434 00047094  7C 08 02 A6 */	mflr r0
/* 8004B438 00047098  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004B43C 0004709C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004B440 000470A0  7C 7F 1B 78 */	mr r31, r3
/* 8004B444 000470A4  88 03 00 00 */	lbz r0, 0(r3)
/* 8004B448 000470A8  2C 00 00 00 */	cmpwi r0, 0
/* 8004B44C 000470AC  41 82 00 6C */	beq lbl_8004B4B8
/* 8004B450 000470B0  81 83 00 54 */	lwz r12, 0x54(r3)
/* 8004B454 000470B4  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004B458 000470B8  7D 89 03 A6 */	mtctr r12
/* 8004B45C 000470BC  38 63 00 1C */	addi r3, r3, 0x1c
/* 8004B460 000470C0  4E 80 04 21 */	bctrl
/* 8004B464 000470C4  2C 03 00 00 */	cmpwi r3, 0
/* 8004B468 000470C8  40 82 00 38 */	bne lbl_8004B4A0
/* 8004B46C 000470CC  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004B470 000470D0  80 9F 00 88 */	lwz r4, 0x88(r31)
/* 8004B474 000470D4  88 03 00 05 */	lbz r0, 5(r3)
/* 8004B478 000470D8  7C 04 00 00 */	cmpw r4, r0
/* 8004B47C 000470DC  41 80 00 1C */	blt lbl_8004B498
/* 8004B480 000470E0  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004B484 000470E4  7F E3 FB 78 */	mr r3, r31
/* 8004B488 000470E8  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004B48C 000470EC  7D 89 03 A6 */	mtctr r12
/* 8004B490 000470F0  4E 80 04 21 */	bctrl
/* 8004B494 000470F4  48 00 00 0C */	b lbl_8004B4A0
lbl_8004B498:
/* 8004B498 000470F8  7F E3 FB 78 */	mr r3, r31
/* 8004B49C 000470FC  4B FF FE 55 */	bl func_8004B2F0
lbl_8004B4A0:
/* 8004B4A0 00047100  38 7F 00 58 */	addi r3, r31, 0x58
/* 8004B4A4 00047104  38 81 00 08 */	addi r4, r1, 8
/* 8004B4A8 00047108  4B FF F8 B9 */	bl func_8004AD60
/* 8004B4AC 0004710C  7F E3 FB 78 */	mr r3, r31
/* 8004B4B0 00047110  38 81 00 08 */	addi r4, r1, 8
/* 8004B4B4 00047114  48 00 00 19 */	bl func_8004B4CC
lbl_8004B4B8:
/* 8004B4B8 00047118  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004B4BC 0004711C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004B4C0 00047120  7C 08 03 A6 */	mtlr r0
/* 8004B4C4 00047124  38 21 00 20 */	addi r1, r1, 0x20
/* 8004B4C8 00047128  4E 80 00 20 */	blr

.global func_8004B4CC
func_8004B4CC:
/* 8004B4CC 0004712C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004B4D0 00047130  7C 08 02 A6 */	mflr r0
/* 8004B4D4 00047134  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004B4D8 00047138  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004B4DC 0004713C  3B E0 00 00 */	li r31, 0
/* 8004B4E0 00047140  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004B4E4 00047144  7C 9E 23 78 */	mr r30, r4
/* 8004B4E8 00047148  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004B4EC 0004714C  93 81 00 10 */	stw r28, 0x10(r1)
/* 8004B4F0 00047150  7C 7C 1B 78 */	mr r28, r3
/* 8004B4F4 00047154  48 00 23 19 */	bl func_8004D80C
/* 8004B4F8 00047158  3B A3 34 C0 */	addi r29, r3, 0x34c0
/* 8004B4FC 0004715C  4B FF A0 95 */	bl func_80045590
/* 8004B500 00047160  80 9C 00 04 */	lwz r4, 4(r28)
/* 8004B504 00047164  80 84 00 18 */	lwz r4, 0x18(r4)
/* 8004B508 00047168  2C 04 00 00 */	cmpwi r4, 0
/* 8004B50C 0004716C  41 82 00 08 */	beq lbl_8004B514
/* 8004B510 00047170  83 E4 00 34 */	lwz r31, 0x34(r4)
lbl_8004B514:
/* 8004B514 00047174  80 9C 00 14 */	lwz r4, 0x14(r28)
/* 8004B518 00047178  80 04 00 00 */	lwz r0, 0(r4)
/* 8004B51C 0004717C  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8004B520 00047180  41 82 00 14 */	beq lbl_8004B534
/* 8004B524 00047184  38 00 00 80 */	li r0, 0x80
/* 8004B528 00047188  98 1E 00 00 */	stb r0, 0(r30)
/* 8004B52C 0004718C  98 1E 00 01 */	stb r0, 1(r30)
/* 8004B530 00047190  98 1E 00 02 */	stb r0, 2(r30)
lbl_8004B534:
/* 8004B534 00047194  80 9C 00 14 */	lwz r4, 0x14(r28)
/* 8004B538 00047198  80 04 00 00 */	lwz r0, 0(r4)
/* 8004B53C 0004719C  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004B540 000471A0  40 82 00 0C */	bne lbl_8004B54C
/* 8004B544 000471A4  38 00 00 FF */	li r0, 0xff
/* 8004B548 000471A8  98 1E 00 03 */	stb r0, 3(r30)
lbl_8004B54C:
/* 8004B54C 000471AC  80 9C 00 14 */	lwz r4, 0x14(r28)
/* 8004B550 000471B0  88 04 00 04 */	lbz r0, 4(r4)
/* 8004B554 000471B4  2C 00 00 01 */	cmpwi r0, 1
/* 8004B558 000471B8  41 82 00 30 */	beq lbl_8004B588
/* 8004B55C 000471BC  40 80 00 10 */	bge lbl_8004B56C
/* 8004B560 000471C0  2C 00 00 00 */	cmpwi r0, 0
/* 8004B564 000471C4  40 80 00 14 */	bge lbl_8004B578
/* 8004B568 000471C8  48 00 00 5C */	b lbl_8004B5C4
lbl_8004B56C:
/* 8004B56C 000471CC  2C 00 00 03 */	cmpwi r0, 3
/* 8004B570 000471D0  40 80 00 54 */	bge lbl_8004B5C4
/* 8004B574 000471D4  48 00 00 24 */	b lbl_8004B598
lbl_8004B578:
/* 8004B578 000471D8  7F A3 EB 78 */	mr r3, r29
/* 8004B57C 000471DC  7F C4 F3 78 */	mr r4, r30
/* 8004B580 000471E0  48 00 36 21 */	bl func_8004EBA0
/* 8004B584 000471E4  48 00 00 40 */	b lbl_8004B5C4
lbl_8004B588:
/* 8004B588 000471E8  38 80 01 00 */	li r4, 0x100
/* 8004B58C 000471EC  38 A0 00 00 */	li r5, 0
/* 8004B590 000471F0  4B FF A5 71 */	bl func_80045B00
/* 8004B594 000471F4  7C 7F 1B 78 */	mr r31, r3
lbl_8004B598:
/* 8004B598 000471F8  80 7C 00 14 */	lwz r3, 0x14(r28)
/* 8004B59C 000471FC  80 03 00 00 */	lwz r0, 0(r3)
/* 8004B5A0 00047200  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8004B5A4 00047204  41 82 00 14 */	beq lbl_8004B5B8
/* 8004B5A8 00047208  7F E3 FB 78 */	mr r3, r31
/* 8004B5AC 0004720C  7F C4 F3 78 */	mr r4, r30
/* 8004B5B0 00047210  4B FF 0D 15 */	bl func_8003C2C4
/* 8004B5B4 00047214  48 00 00 10 */	b lbl_8004B5C4
lbl_8004B5B8:
/* 8004B5B8 00047218  7F E3 FB 78 */	mr r3, r31
/* 8004B5BC 0004721C  7F C4 F3 78 */	mr r4, r30
/* 8004B5C0 00047220  4B FF 0E FD */	bl func_8003C4BC
lbl_8004B5C4:
/* 8004B5C4 00047224  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004B5C8 00047228  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004B5CC 0004722C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004B5D0 00047230  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004B5D4 00047234  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8004B5D8 00047238  7C 08 03 A6 */	mtlr r0
/* 8004B5DC 0004723C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004B5E0 00047240  4E 80 00 20 */	blr
/* 8004B5E4 00047244  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004B5E8 00047248  39 00 00 00 */	li r8, 0
/* 8004B5EC 0004724C  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004B5F0 00047250  88 E4 00 05 */	lbz r7, 5(r4)
/* 8004B5F4 00047254  2C 87 00 00 */	cmpwi cr1, r7, 0
/* 8004B5F8 00047258  4C 85 00 20 */	blelr cr1
/* 8004B5FC 0004725C  2C 07 00 08 */	cmpwi r7, 8
/* 8004B600 00047260  38 A7 FF F8 */	addi r5, r7, -8
/* 8004B604 00047264  40 81 00 94 */	ble lbl_8004B698
/* 8004B608 00047268  38 C0 00 00 */	li r6, 0
/* 8004B60C 0004726C  41 84 00 18 */	blt cr1, lbl_8004B624
/* 8004B610 00047270  3C 80 80 00 */	lis r4, 0x7FFFFFFE@ha
/* 8004B614 00047274  38 04 FF FE */	addi r0, r4, 0x7FFFFFFE@l
/* 8004B618 00047278  7C 07 00 00 */	cmpw r7, r0
/* 8004B61C 0004727C  41 81 00 08 */	bgt lbl_8004B624
/* 8004B620 00047280  38 C0 00 01 */	li r6, 1
lbl_8004B624:
/* 8004B624 00047284  2C 06 00 00 */	cmpwi r6, 0
/* 8004B628 00047288  41 82 00 70 */	beq lbl_8004B698
/* 8004B62C 0004728C  38 05 00 07 */	addi r0, r5, 7
/* 8004B630 00047290  38 80 00 00 */	li r4, 0
/* 8004B634 00047294  54 00 E8 FE */	srwi r0, r0, 3
/* 8004B638 00047298  7C 09 03 A6 */	mtctr r0
/* 8004B63C 0004729C  2C 05 00 00 */	cmpwi r5, 0
/* 8004B640 000472A0  40 81 00 58 */	ble lbl_8004B698
lbl_8004B644:
/* 8004B644 000472A4  80 03 00 14 */	lwz r0, 0x14(r3)
/* 8004B648 000472A8  39 08 00 08 */	addi r8, r8, 8
/* 8004B64C 000472AC  7C A0 22 14 */	add r5, r0, r4
/* 8004B650 000472B0  38 84 00 60 */	addi r4, r4, 0x60
/* 8004B654 000472B4  C0 45 00 10 */	lfs f2, 0x10(r5)
/* 8004B658 000472B8  C0 05 00 1C */	lfs f0, 0x1c(r5)
/* 8004B65C 000472BC  EC 21 10 2A */	fadds f1, f1, f2
/* 8004B660 000472C0  C0 C5 00 28 */	lfs f6, 0x28(r5)
/* 8004B664 000472C4  C0 A5 00 34 */	lfs f5, 0x34(r5)
/* 8004B668 000472C8  C0 85 00 40 */	lfs f4, 0x40(r5)
/* 8004B66C 000472CC  EC 21 00 2A */	fadds f1, f1, f0
/* 8004B670 000472D0  C0 65 00 4C */	lfs f3, 0x4c(r5)
/* 8004B674 000472D4  C0 45 00 58 */	lfs f2, 0x58(r5)
/* 8004B678 000472D8  C0 05 00 64 */	lfs f0, 0x64(r5)
/* 8004B67C 000472DC  EC 21 30 2A */	fadds f1, f1, f6
/* 8004B680 000472E0  EC 21 28 2A */	fadds f1, f1, f5
/* 8004B684 000472E4  EC 21 20 2A */	fadds f1, f1, f4
/* 8004B688 000472E8  EC 21 18 2A */	fadds f1, f1, f3
/* 8004B68C 000472EC  EC 21 10 2A */	fadds f1, f1, f2
/* 8004B690 000472F0  EC 21 00 2A */	fadds f1, f1, f0
/* 8004B694 000472F4  42 00 FF B0 */	bdnz lbl_8004B644
lbl_8004B698:
/* 8004B698 000472F8  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 8004B69C 000472FC  1C 88 00 0C */	mulli r4, r8, 0xc
/* 8004B6A0 00047300  88 65 00 05 */	lbz r3, 5(r5)
/* 8004B6A4 00047304  7C 08 18 50 */	subf r0, r8, r3
/* 8004B6A8 00047308  7C 09 03 A6 */	mtctr r0
/* 8004B6AC 0004730C  7C 08 18 00 */	cmpw r8, r3
/* 8004B6B0 00047310  4C 80 00 20 */	bgelr
lbl_8004B6B4:
/* 8004B6B4 00047314  7C 65 22 14 */	add r3, r5, r4
/* 8004B6B8 00047318  38 84 00 0C */	addi r4, r4, 0xc
/* 8004B6BC 0004731C  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 8004B6C0 00047320  EC 21 00 2A */	fadds f1, f1, f0
/* 8004B6C4 00047324  42 00 FF F0 */	bdnz lbl_8004B6B4
/* 8004B6C8 00047328  4E 80 00 20 */	blr

.global func_8004B6CC
func_8004B6CC:
/* 8004B6CC 0004732C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B6D0 00047330  7C 08 02 A6 */	mflr r0
/* 8004B6D4 00047334  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B6D8 00047338  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B6DC 0004733C  7C 7F 1B 78 */	mr r31, r3
/* 8004B6E0 00047340  4B FF FA 71 */	bl func_8004B150
/* 8004B6E4 00047344  3C 80 80 41 */	lis r4, lbl_8040A9E4@ha
/* 8004B6E8 00047348  7F E3 FB 78 */	mr r3, r31
/* 8004B6EC 0004734C  38 84 A9 E4 */	addi r4, r4, lbl_8040A9E4@l
/* 8004B6F0 00047350  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004B6F4 00047354  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B6F8 00047358  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B6FC 0004735C  7C 08 03 A6 */	mtlr r0
/* 8004B700 00047360  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B704 00047364  4E 80 00 20 */	blr
/* 8004B708 00047368  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B70C 0004736C  7C 08 02 A6 */	mflr r0
/* 8004B710 00047370  2C 03 00 00 */	cmpwi r3, 0
/* 8004B714 00047374  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B718 00047378  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B71C 0004737C  7C 9F 23 78 */	mr r31, r4
/* 8004B720 00047380  93 C1 00 08 */	stw r30, 8(r1)
/* 8004B724 00047384  7C 7E 1B 78 */	mr r30, r3
/* 8004B728 00047388  41 82 00 1C */	beq lbl_8004B744
/* 8004B72C 0004738C  38 80 00 00 */	li r4, 0
/* 8004B730 00047390  4B FF FA 45 */	bl func_8004B174
/* 8004B734 00047394  2C 1F 00 00 */	cmpwi r31, 0
/* 8004B738 00047398  40 81 00 0C */	ble lbl_8004B744
/* 8004B73C 0004739C  7F C3 F3 78 */	mr r3, r30
/* 8004B740 000473A0  48 18 F3 79 */	bl func_801DAAB8
lbl_8004B744:
/* 8004B744 000473A4  7F C3 F3 78 */	mr r3, r30
/* 8004B748 000473A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B74C 000473AC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004B750 000473B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B754 000473B4  7C 08 03 A6 */	mtlr r0
/* 8004B758 000473B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B75C 000473BC  4E 80 00 20 */	blr
/* 8004B760 000473C0  4E 80 00 20 */	blr
/* 8004B764 000473C4  4E 80 00 20 */	blr
/* 8004B768 000473C8  4E 80 00 20 */	blr

.global func_8004B76C
func_8004B76C:
/* 8004B76C 000473CC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B770 000473D0  7C 08 02 A6 */	mflr r0
/* 8004B774 000473D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B778 000473D8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B77C 000473DC  7C 7F 1B 78 */	mr r31, r3
/* 8004B780 000473E0  4B FF F9 D1 */	bl func_8004B150
/* 8004B784 000473E4  3C 80 80 41 */	lis r4, lbl_8040A998@ha
/* 8004B788 000473E8  7F E3 FB 78 */	mr r3, r31
/* 8004B78C 000473EC  38 84 A9 98 */	addi r4, r4, lbl_8040A998@l
/* 8004B790 000473F0  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004B794 000473F4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B798 000473F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B79C 000473FC  7C 08 03 A6 */	mtlr r0
/* 8004B7A0 00047400  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B7A4 00047404  4E 80 00 20 */	blr
/* 8004B7A8 00047408  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B7AC 0004740C  7C 08 02 A6 */	mflr r0
/* 8004B7B0 00047410  2C 03 00 00 */	cmpwi r3, 0
/* 8004B7B4 00047414  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B7B8 00047418  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B7BC 0004741C  7C 9F 23 78 */	mr r31, r4
/* 8004B7C0 00047420  93 C1 00 08 */	stw r30, 8(r1)
/* 8004B7C4 00047424  7C 7E 1B 78 */	mr r30, r3
/* 8004B7C8 00047428  41 82 00 1C */	beq lbl_8004B7E4
/* 8004B7CC 0004742C  38 80 00 00 */	li r4, 0
/* 8004B7D0 00047430  4B FF F9 A5 */	bl func_8004B174
/* 8004B7D4 00047434  2C 1F 00 00 */	cmpwi r31, 0
/* 8004B7D8 00047438  40 81 00 0C */	ble lbl_8004B7E4
/* 8004B7DC 0004743C  7F C3 F3 78 */	mr r3, r30
/* 8004B7E0 00047440  48 18 F2 D9 */	bl func_801DAAB8
lbl_8004B7E4:
/* 8004B7E4 00047444  7F C3 F3 78 */	mr r3, r30
/* 8004B7E8 00047448  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B7EC 0004744C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004B7F0 00047450  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B7F4 00047454  7C 08 03 A6 */	mtlr r0
/* 8004B7F8 00047458  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B7FC 0004745C  4E 80 00 20 */	blr
/* 8004B800 00047460  4E 80 00 20 */	blr
/* 8004B804 00047464  4E 80 00 20 */	blr
/* 8004B808 00047468  4E 80 00 20 */	blr

.global func_8004B80C
func_8004B80C:
/* 8004B80C 0004746C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B810 00047470  7C 08 02 A6 */	mflr r0
/* 8004B814 00047474  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B818 00047478  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B81C 0004747C  7C 7F 1B 78 */	mr r31, r3
/* 8004B820 00047480  4B FF F9 31 */	bl func_8004B150
/* 8004B824 00047484  3C 80 80 41 */	lis r4, lbl_8040A954@ha
/* 8004B828 00047488  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004B82C 0004748C  38 84 A9 54 */	addi r4, r4, lbl_8040A954@l
/* 8004B830 00047490  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004B834 00047494  48 00 4A F1 */	bl func_80050324
/* 8004B838 00047498  80 9F 00 0C */	lwz r4, 0xc(r31)
/* 8004B83C 0004749C  38 00 00 00 */	li r0, 0
/* 8004B840 000474A0  90 1F 00 44 */	stw r0, 0x44(r31)
/* 8004B844 000474A4  7F E3 FB 78 */	mr r3, r31
/* 8004B848 000474A8  38 04 00 08 */	addi r0, r4, 8
/* 8004B84C 000474AC  90 1F 00 14 */	stw r0, 0x14(r31)
/* 8004B850 000474B0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B854 000474B4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B858 000474B8  7C 08 03 A6 */	mtlr r0
/* 8004B85C 000474BC  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B860 000474C0  4E 80 00 20 */	blr
/* 8004B864 000474C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B868 000474C8  7C 08 02 A6 */	mflr r0
/* 8004B86C 000474CC  2C 03 00 00 */	cmpwi r3, 0
/* 8004B870 000474D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B874 000474D4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B878 000474D8  7C 9F 23 78 */	mr r31, r4
/* 8004B87C 000474DC  93 C1 00 08 */	stw r30, 8(r1)
/* 8004B880 000474E0  7C 7E 1B 78 */	mr r30, r3
/* 8004B884 000474E4  41 82 00 1C */	beq lbl_8004B8A0
/* 8004B888 000474E8  38 80 00 00 */	li r4, 0
/* 8004B88C 000474EC  4B FF F8 E9 */	bl func_8004B174
/* 8004B890 000474F0  2C 1F 00 00 */	cmpwi r31, 0
/* 8004B894 000474F4  40 81 00 0C */	ble lbl_8004B8A0
/* 8004B898 000474F8  7F C3 F3 78 */	mr r3, r30
/* 8004B89C 000474FC  48 18 F2 1D */	bl func_801DAAB8
lbl_8004B8A0:
/* 8004B8A0 00047500  7F C3 F3 78 */	mr r3, r30
/* 8004B8A4 00047504  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B8A8 00047508  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004B8AC 0004750C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B8B0 00047510  7C 08 03 A6 */	mtlr r0
/* 8004B8B4 00047514  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B8B8 00047518  4E 80 00 20 */	blr
/* 8004B8BC 0004751C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B8C0 00047520  7C 08 02 A6 */	mflr r0
/* 8004B8C4 00047524  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B8C8 00047528  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B8CC 0004752C  7C 7F 1B 78 */	mr r31, r3
/* 8004B8D0 00047530  4B FF F9 15 */	bl func_8004B1E4
/* 8004B8D4 00047534  2C 03 00 00 */	cmpwi r3, 0
/* 8004B8D8 00047538  41 82 00 14 */	beq lbl_8004B8EC
/* 8004B8DC 0004753C  38 00 00 00 */	li r0, 0
/* 8004B8E0 00047540  7F E3 FB 78 */	mr r3, r31
/* 8004B8E4 00047544  90 1F 00 44 */	stw r0, 0x44(r31)
/* 8004B8E8 00047548  48 00 00 19 */	bl func_8004B900
lbl_8004B8EC:
/* 8004B8EC 0004754C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B8F0 00047550  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B8F4 00047554  7C 08 03 A6 */	mtlr r0
/* 8004B8F8 00047558  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B8FC 0004755C  4E 80 00 20 */	blr

.global func_8004B900
func_8004B900:
/* 8004B900 00047560  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B904 00047564  7C 08 02 A6 */	mflr r0
/* 8004B908 00047568  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004B90C 0004756C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B910 00047570  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B914 00047574  7C 7F 1B 78 */	mr r31, r3
/* 8004B918 00047578  80 03 00 44 */	lwz r0, 0x44(r3)
/* 8004B91C 0004757C  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004B920 00047580  1C 00 00 0C */	mulli r0, r0, 0xc
/* 8004B924 00047584  7C 84 02 14 */	add r4, r4, r0
/* 8004B928 00047588  38 84 00 08 */	addi r4, r4, 8
/* 8004B92C 0004758C  90 83 00 18 */	stw r4, 0x18(r3)
/* 8004B930 00047590  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004B934 00047594  FC 01 00 00 */	fcmpu cr0, f1, f0
/* 8004B938 00047598  40 82 00 1C */	bne lbl_8004B954
/* 8004B93C 0004759C  C0 04 00 00 */	lfs f0, 0(r4)
/* 8004B940 000475A0  D0 03 00 40 */	stfs f0, 0x40(r3)
/* 8004B944 000475A4  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004B948 000475A8  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004B94C 000475AC  7D 89 03 A6 */	mtctr r12
/* 8004B950 000475B0  4E 80 04 21 */	bctrl
lbl_8004B954:
/* 8004B954 000475B4  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004B958 000475B8  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004B95C 000475BC  38 DF 00 40 */	addi r6, r31, 0x40
/* 8004B960 000475C0  38 E0 00 00 */	li r7, 0
/* 8004B964 000475C4  C0 24 00 08 */	lfs f1, 8(r4)
/* 8004B968 000475C8  38 A4 00 04 */	addi r5, r4, 4
/* 8004B96C 000475CC  48 00 49 D1 */	bl func_8005033C
/* 8004B970 000475D0  80 7F 00 44 */	lwz r3, 0x44(r31)
/* 8004B974 000475D4  38 00 00 01 */	li r0, 1
/* 8004B978 000475D8  98 1F 00 00 */	stb r0, 0(r31)
/* 8004B97C 000475DC  38 03 00 01 */	addi r0, r3, 1
/* 8004B980 000475E0  90 1F 00 44 */	stw r0, 0x44(r31)
/* 8004B984 000475E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B988 000475E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B98C 000475EC  7C 08 03 A6 */	mtlr r0
/* 8004B990 000475F0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B994 000475F4  4E 80 00 20 */	blr
/* 8004B998 000475F8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004B99C 000475FC  7C 08 02 A6 */	mflr r0
/* 8004B9A0 00047600  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004B9A4 00047604  38 00 00 00 */	li r0, 0
/* 8004B9A8 00047608  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004B9AC 0004760C  7C 7F 1B 78 */	mr r31, r3
/* 8004B9B0 00047610  98 03 00 00 */	stb r0, 0(r3)
/* 8004B9B4 00047614  38 63 00 1C */	addi r3, r3, 0x1c
/* 8004B9B8 00047618  48 00 49 D1 */	bl func_80050388
/* 8004B9BC 0004761C  7F E3 FB 78 */	mr r3, r31
/* 8004B9C0 00047620  4B FF F8 25 */	bl func_8004B1E4
/* 8004B9C4 00047624  2C 03 00 00 */	cmpwi r3, 0
/* 8004B9C8 00047628  41 82 00 0C */	beq lbl_8004B9D4
/* 8004B9CC 0004762C  38 80 00 00 */	li r4, 0
/* 8004B9D0 00047630  48 1A A7 4D */	bl func_801F611C
lbl_8004B9D4:
/* 8004B9D4 00047634  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004B9D8 00047638  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004B9DC 0004763C  7C 08 03 A6 */	mtlr r0
/* 8004B9E0 00047640  38 21 00 10 */	addi r1, r1, 0x10
/* 8004B9E4 00047644  4E 80 00 20 */	blr
/* 8004B9E8 00047648  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004B9EC 0004764C  7C 08 02 A6 */	mflr r0
/* 8004B9F0 00047650  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004B9F4 00047654  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8004B9F8 00047658  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8004B9FC 0004765C  FF E0 08 90 */	fmr f31, f1
/* 8004BA00 00047660  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004BA04 00047664  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004BA08 00047668  7C 7E 1B 78 */	mr r30, r3
/* 8004BA0C 0004766C  4B FE 76 7D */	bl func_80033088
/* 8004BA10 00047670  88 1E 00 00 */	lbz r0, 0(r30)
/* 8004BA14 00047674  2C 00 00 00 */	cmpwi r0, 0
/* 8004BA18 00047678  41 82 00 B8 */	beq lbl_8004BAD0
/* 8004BA1C 0004767C  81 9E 00 3C */	lwz r12, 0x3c(r30)
/* 8004BA20 00047680  FC 20 F8 90 */	fmr f1, f31
/* 8004BA24 00047684  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8004BA28 00047688  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004BA2C 0004768C  7D 89 03 A6 */	mtctr r12
/* 8004BA30 00047690  4E 80 04 21 */	bctrl
/* 8004BA34 00047694  2C 03 00 00 */	cmpwi r3, 0
/* 8004BA38 00047698  40 82 00 38 */	bne lbl_8004BA70
/* 8004BA3C 0004769C  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004BA40 000476A0  80 9E 00 44 */	lwz r4, 0x44(r30)
/* 8004BA44 000476A4  A0 03 00 06 */	lhz r0, 6(r3)
/* 8004BA48 000476A8  7C 04 00 00 */	cmpw r4, r0
/* 8004BA4C 000476AC  41 80 00 1C */	blt lbl_8004BA68
/* 8004BA50 000476B0  81 9E 00 10 */	lwz r12, 0x10(r30)
/* 8004BA54 000476B4  7F C3 F3 78 */	mr r3, r30
/* 8004BA58 000476B8  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004BA5C 000476BC  7D 89 03 A6 */	mtctr r12
/* 8004BA60 000476C0  4E 80 04 21 */	bctrl
/* 8004BA64 000476C4  48 00 00 0C */	b lbl_8004BA70
lbl_8004BA68:
/* 8004BA68 000476C8  7F C3 F3 78 */	mr r3, r30
/* 8004BA6C 000476CC  4B FF FE 95 */	bl func_8004B900
lbl_8004BA70:
/* 8004BA70 000476D0  7F C3 F3 78 */	mr r3, r30
/* 8004BA74 000476D4  4B FF F7 71 */	bl func_8004B1E4
/* 8004BA78 000476D8  2C 03 00 00 */	cmpwi r3, 0
/* 8004BA7C 000476DC  7C 7F 1B 78 */	mr r31, r3
/* 8004BA80 000476E0  41 82 00 50 */	beq lbl_8004BAD0
/* 8004BA84 000476E4  C0 22 83 FC */	lfs f1, lbl_806409FC-_SDA2_BASE_(r2)
/* 8004BA88 000476E8  C0 1E 00 40 */	lfs f0, 0x40(r30)
/* 8004BA8C 000476EC  EC 41 00 32 */	fmuls f2, f1, f0
/* 8004BA90 000476F0  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004BA94 000476F4  40 81 00 08 */	ble lbl_8004BA9C
/* 8004BA98 000476F8  FC 40 08 90 */	fmr f2, f1
lbl_8004BA9C:
/* 8004BA9C 000476FC  C0 02 83 F8 */	lfs f0, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004BAA0 00047700  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004BAA4 00047704  40 80 00 08 */	bge lbl_8004BAAC
/* 8004BAA8 00047708  FC 40 00 90 */	fmr f2, f0
lbl_8004BAAC:
/* 8004BAAC 0004770C  FC 00 10 1E */	fctiwz f0, f2
/* 8004BAB0 00047710  7F E3 FB 78 */	mr r3, r31
/* 8004BAB4 00047714  D8 01 00 08 */	stfd f0, 8(r1)
/* 8004BAB8 00047718  80 81 00 0C */	lwz r4, 0xc(r1)
/* 8004BABC 0004771C  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 8004BAC0 00047720  48 1A A6 5D */	bl func_801F611C
/* 8004BAC4 00047724  7F E3 FB 78 */	mr r3, r31
/* 8004BAC8 00047728  38 80 00 00 */	li r4, 0
/* 8004BACC 0004772C  48 1A A6 8D */	bl func_801F6158
lbl_8004BAD0:
/* 8004BAD0 00047730  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8004BAD4 00047734  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004BAD8 00047738  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8004BADC 0004773C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004BAE0 00047740  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004BAE4 00047744  7C 08 03 A6 */	mtlr r0
/* 8004BAE8 00047748  38 21 00 30 */	addi r1, r1, 0x30
/* 8004BAEC 0004774C  4E 80 00 20 */	blr
/* 8004BAF0 00047750  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004BAF4 00047754  39 00 00 00 */	li r8, 0
/* 8004BAF8 00047758  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004BAFC 0004775C  A0 E4 00 06 */	lhz r7, 6(r4)
/* 8004BB00 00047760  2C 87 00 00 */	cmpwi cr1, r7, 0
/* 8004BB04 00047764  4C 85 00 20 */	blelr cr1
/* 8004BB08 00047768  2C 07 00 08 */	cmpwi r7, 8
/* 8004BB0C 0004776C  38 A7 FF F8 */	addi r5, r7, -8
/* 8004BB10 00047770  40 81 00 94 */	ble lbl_8004BBA4
/* 8004BB14 00047774  38 C0 00 00 */	li r6, 0
/* 8004BB18 00047778  41 84 00 18 */	blt cr1, lbl_8004BB30
/* 8004BB1C 0004777C  3C 80 80 00 */	lis r4, 0x7FFFFFFE@ha
/* 8004BB20 00047780  38 04 FF FE */	addi r0, r4, 0x7FFFFFFE@l
/* 8004BB24 00047784  7C 07 00 00 */	cmpw r7, r0
/* 8004BB28 00047788  41 81 00 08 */	bgt lbl_8004BB30
/* 8004BB2C 0004778C  38 C0 00 01 */	li r6, 1
lbl_8004BB30:
/* 8004BB30 00047790  2C 06 00 00 */	cmpwi r6, 0
/* 8004BB34 00047794  41 82 00 70 */	beq lbl_8004BBA4
/* 8004BB38 00047798  38 05 00 07 */	addi r0, r5, 7
/* 8004BB3C 0004779C  38 80 00 00 */	li r4, 0
/* 8004BB40 000477A0  54 00 E8 FE */	srwi r0, r0, 3
/* 8004BB44 000477A4  7C 09 03 A6 */	mtctr r0
/* 8004BB48 000477A8  2C 05 00 00 */	cmpwi r5, 0
/* 8004BB4C 000477AC  40 81 00 58 */	ble lbl_8004BBA4
lbl_8004BB50:
/* 8004BB50 000477B0  80 03 00 14 */	lwz r0, 0x14(r3)
/* 8004BB54 000477B4  39 08 00 08 */	addi r8, r8, 8
/* 8004BB58 000477B8  7C A0 22 14 */	add r5, r0, r4
/* 8004BB5C 000477BC  38 84 00 60 */	addi r4, r4, 0x60
/* 8004BB60 000477C0  C0 45 00 10 */	lfs f2, 0x10(r5)
/* 8004BB64 000477C4  C0 05 00 1C */	lfs f0, 0x1c(r5)
/* 8004BB68 000477C8  EC 21 10 2A */	fadds f1, f1, f2
/* 8004BB6C 000477CC  C0 C5 00 28 */	lfs f6, 0x28(r5)
/* 8004BB70 000477D0  C0 A5 00 34 */	lfs f5, 0x34(r5)
/* 8004BB74 000477D4  C0 85 00 40 */	lfs f4, 0x40(r5)
/* 8004BB78 000477D8  EC 21 00 2A */	fadds f1, f1, f0
/* 8004BB7C 000477DC  C0 65 00 4C */	lfs f3, 0x4c(r5)
/* 8004BB80 000477E0  C0 45 00 58 */	lfs f2, 0x58(r5)
/* 8004BB84 000477E4  C0 05 00 64 */	lfs f0, 0x64(r5)
/* 8004BB88 000477E8  EC 21 30 2A */	fadds f1, f1, f6
/* 8004BB8C 000477EC  EC 21 28 2A */	fadds f1, f1, f5
/* 8004BB90 000477F0  EC 21 20 2A */	fadds f1, f1, f4
/* 8004BB94 000477F4  EC 21 18 2A */	fadds f1, f1, f3
/* 8004BB98 000477F8  EC 21 10 2A */	fadds f1, f1, f2
/* 8004BB9C 000477FC  EC 21 00 2A */	fadds f1, f1, f0
/* 8004BBA0 00047800  42 00 FF B0 */	bdnz lbl_8004BB50
lbl_8004BBA4:
/* 8004BBA4 00047804  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 8004BBA8 00047808  1C 88 00 0C */	mulli r4, r8, 0xc
/* 8004BBAC 0004780C  A0 65 00 06 */	lhz r3, 6(r5)
/* 8004BBB0 00047810  7C 08 18 50 */	subf r0, r8, r3
/* 8004BBB4 00047814  7C 09 03 A6 */	mtctr r0
/* 8004BBB8 00047818  7C 08 18 00 */	cmpw r8, r3
/* 8004BBBC 0004781C  4C 80 00 20 */	bgelr
lbl_8004BBC0:
/* 8004BBC0 00047820  7C 65 22 14 */	add r3, r5, r4
/* 8004BBC4 00047824  38 84 00 0C */	addi r4, r4, 0xc
/* 8004BBC8 00047828  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 8004BBCC 0004782C  EC 21 00 2A */	fadds f1, f1, f0
/* 8004BBD0 00047830  42 00 FF F0 */	bdnz lbl_8004BBC0
/* 8004BBD4 00047834  4E 80 00 20 */	blr

.global func_8004BBD8
func_8004BBD8:
/* 8004BBD8 00047838  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BBDC 0004783C  7C 08 02 A6 */	mflr r0
/* 8004BBE0 00047840  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004BBE4 00047844  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BBE8 00047848  7C 7F 1B 78 */	mr r31, r3
/* 8004BBEC 0004784C  4B FF F5 65 */	bl func_8004B150
/* 8004BBF0 00047850  3C 80 80 41 */	lis r4, lbl_8040A90C@ha
/* 8004BBF4 00047854  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004BBF8 00047858  38 84 A9 0C */	addi r4, r4, lbl_8040A90C@l
/* 8004BBFC 0004785C  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004BC00 00047860  48 00 47 25 */	bl func_80050324
/* 8004BC04 00047864  80 9F 00 0C */	lwz r4, 0xc(r31)
/* 8004BC08 00047868  7F E3 FB 78 */	mr r3, r31
/* 8004BC0C 0004786C  38 04 00 08 */	addi r0, r4, 8
/* 8004BC10 00047870  90 1F 00 14 */	stw r0, 0x14(r31)
/* 8004BC14 00047874  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BC18 00047878  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004BC1C 0004787C  7C 08 03 A6 */	mtlr r0
/* 8004BC20 00047880  38 21 00 10 */	addi r1, r1, 0x10
/* 8004BC24 00047884  4E 80 00 20 */	blr
/* 8004BC28 00047888  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BC2C 0004788C  7C 08 02 A6 */	mflr r0
/* 8004BC30 00047890  2C 03 00 00 */	cmpwi r3, 0
/* 8004BC34 00047894  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004BC38 00047898  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BC3C 0004789C  7C 9F 23 78 */	mr r31, r4
/* 8004BC40 000478A0  93 C1 00 08 */	stw r30, 8(r1)
/* 8004BC44 000478A4  7C 7E 1B 78 */	mr r30, r3
/* 8004BC48 000478A8  41 82 00 1C */	beq lbl_8004BC64
/* 8004BC4C 000478AC  38 80 00 00 */	li r4, 0
/* 8004BC50 000478B0  4B FF F5 25 */	bl func_8004B174
/* 8004BC54 000478B4  2C 1F 00 00 */	cmpwi r31, 0
/* 8004BC58 000478B8  40 81 00 0C */	ble lbl_8004BC64
/* 8004BC5C 000478BC  7F C3 F3 78 */	mr r3, r30
/* 8004BC60 000478C0  48 18 EE 59 */	bl func_801DAAB8
lbl_8004BC64:
/* 8004BC64 000478C4  7F C3 F3 78 */	mr r3, r30
/* 8004BC68 000478C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BC6C 000478CC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004BC70 000478D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004BC74 000478D4  7C 08 03 A6 */	mtlr r0
/* 8004BC78 000478D8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004BC7C 000478DC  4E 80 00 20 */	blr
/* 8004BC80 000478E0  38 00 00 00 */	li r0, 0
/* 8004BC84 000478E4  90 03 00 44 */	stw r0, 0x44(r3)
/* 8004BC88 000478E8  48 00 00 04 */	b func_8004BC8C

.global func_8004BC8C
func_8004BC8C:
/* 8004BC8C 000478EC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BC90 000478F0  7C 08 02 A6 */	mflr r0
/* 8004BC94 000478F4  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004BC98 000478F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004BC9C 000478FC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BCA0 00047900  7C 7F 1B 78 */	mr r31, r3
/* 8004BCA4 00047904  80 03 00 44 */	lwz r0, 0x44(r3)
/* 8004BCA8 00047908  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004BCAC 0004790C  1C 00 00 0C */	mulli r0, r0, 0xc
/* 8004BCB0 00047910  7C 84 02 14 */	add r4, r4, r0
/* 8004BCB4 00047914  38 84 00 08 */	addi r4, r4, 8
/* 8004BCB8 00047918  90 83 00 18 */	stw r4, 0x18(r3)
/* 8004BCBC 0004791C  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004BCC0 00047920  FC 01 00 00 */	fcmpu cr0, f1, f0
/* 8004BCC4 00047924  40 82 00 1C */	bne lbl_8004BCE0
/* 8004BCC8 00047928  C0 04 00 00 */	lfs f0, 0(r4)
/* 8004BCCC 0004792C  D0 03 00 40 */	stfs f0, 0x40(r3)
/* 8004BCD0 00047930  81 83 00 10 */	lwz r12, 0x10(r3)
/* 8004BCD4 00047934  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004BCD8 00047938  7D 89 03 A6 */	mtctr r12
/* 8004BCDC 0004793C  4E 80 04 21 */	bctrl
lbl_8004BCE0:
/* 8004BCE0 00047940  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004BCE4 00047944  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004BCE8 00047948  38 DF 00 40 */	addi r6, r31, 0x40
/* 8004BCEC 0004794C  38 E0 00 00 */	li r7, 0
/* 8004BCF0 00047950  C0 24 00 08 */	lfs f1, 8(r4)
/* 8004BCF4 00047954  38 A4 00 04 */	addi r5, r4, 4
/* 8004BCF8 00047958  48 00 46 45 */	bl func_8005033C
/* 8004BCFC 0004795C  80 7F 00 44 */	lwz r3, 0x44(r31)
/* 8004BD00 00047960  38 00 00 01 */	li r0, 1
/* 8004BD04 00047964  98 1F 00 00 */	stb r0, 0(r31)
/* 8004BD08 00047968  38 03 00 01 */	addi r0, r3, 1
/* 8004BD0C 0004796C  90 1F 00 44 */	stw r0, 0x44(r31)
/* 8004BD10 00047970  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BD14 00047974  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004BD18 00047978  7C 08 03 A6 */	mtlr r0
/* 8004BD1C 0004797C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004BD20 00047980  4E 80 00 20 */	blr
/* 8004BD24 00047984  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BD28 00047988  7C 08 02 A6 */	mflr r0
/* 8004BD2C 0004798C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004BD30 00047990  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BD34 00047994  93 C1 00 08 */	stw r30, 8(r1)
/* 8004BD38 00047998  7C 7E 1B 78 */	mr r30, r3
/* 8004BD3C 0004799C  4B FE 73 4D */	bl func_80033088
/* 8004BD40 000479A0  38 00 00 00 */	li r0, 0
/* 8004BD44 000479A4  7C 7F 1B 78 */	mr r31, r3
/* 8004BD48 000479A8  98 1E 00 00 */	stb r0, 0(r30)
/* 8004BD4C 000479AC  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8004BD50 000479B0  48 00 46 39 */	bl func_80050388
/* 8004BD54 000479B4  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004BD58 000479B8  80 03 00 00 */	lwz r0, 0(r3)
/* 8004BD5C 000479BC  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004BD60 000479C0  41 82 00 10 */	beq lbl_8004BD70
/* 8004BD64 000479C4  7F E3 FB 78 */	mr r3, r31
/* 8004BD68 000479C8  38 80 00 00 */	li r4, 0
/* 8004BD6C 000479CC  4B FE 90 FD */	bl func_80034E68
lbl_8004BD70:
/* 8004BD70 000479D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004BD74 000479D4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BD78 000479D8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004BD7C 000479DC  7C 08 03 A6 */	mtlr r0
/* 8004BD80 000479E0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004BD84 000479E4  4E 80 00 20 */	blr
/* 8004BD88 000479E8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004BD8C 000479EC  7C 08 02 A6 */	mflr r0
/* 8004BD90 000479F0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004BD94 000479F4  DB E1 00 10 */	stfd f31, 0x10(r1)
/* 8004BD98 000479F8  F3 E1 00 18 */	psq_st f31, 24(r1), 0, qr0
/* 8004BD9C 000479FC  FF E0 08 90 */	fmr f31, f1
/* 8004BDA0 00047A00  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BDA4 00047A04  93 C1 00 08 */	stw r30, 8(r1)
/* 8004BDA8 00047A08  7C 7E 1B 78 */	mr r30, r3
/* 8004BDAC 00047A0C  4B FE 72 DD */	bl func_80033088
/* 8004BDB0 00047A10  88 1E 00 00 */	lbz r0, 0(r30)
/* 8004BDB4 00047A14  7C 7F 1B 78 */	mr r31, r3
/* 8004BDB8 00047A18  2C 00 00 00 */	cmpwi r0, 0
/* 8004BDBC 00047A1C  41 82 00 94 */	beq lbl_8004BE50
/* 8004BDC0 00047A20  81 9E 00 3C */	lwz r12, 0x3c(r30)
/* 8004BDC4 00047A24  FC 20 F8 90 */	fmr f1, f31
/* 8004BDC8 00047A28  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8004BDCC 00047A2C  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004BDD0 00047A30  7D 89 03 A6 */	mtctr r12
/* 8004BDD4 00047A34  4E 80 04 21 */	bctrl
/* 8004BDD8 00047A38  2C 03 00 00 */	cmpwi r3, 0
/* 8004BDDC 00047A3C  40 82 00 38 */	bne lbl_8004BE14
/* 8004BDE0 00047A40  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004BDE4 00047A44  80 9E 00 44 */	lwz r4, 0x44(r30)
/* 8004BDE8 00047A48  80 03 00 04 */	lwz r0, 4(r3)
/* 8004BDEC 00047A4C  7C 04 00 00 */	cmpw r4, r0
/* 8004BDF0 00047A50  41 80 00 1C */	blt lbl_8004BE0C
/* 8004BDF4 00047A54  81 9E 00 10 */	lwz r12, 0x10(r30)
/* 8004BDF8 00047A58  7F C3 F3 78 */	mr r3, r30
/* 8004BDFC 00047A5C  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004BE00 00047A60  7D 89 03 A6 */	mtctr r12
/* 8004BE04 00047A64  4E 80 04 21 */	bctrl
/* 8004BE08 00047A68  48 00 00 0C */	b lbl_8004BE14
lbl_8004BE0C:
/* 8004BE0C 00047A6C  7F C3 F3 78 */	mr r3, r30
/* 8004BE10 00047A70  4B FF FE 7D */	bl func_8004BC8C
lbl_8004BE14:
/* 8004BE14 00047A74  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004BE18 00047A78  80 03 00 00 */	lwz r0, 0(r3)
/* 8004BE1C 00047A7C  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004BE20 00047A80  41 82 00 30 */	beq lbl_8004BE50
/* 8004BE24 00047A84  C0 3E 00 40 */	lfs f1, 0x40(r30)
/* 8004BE28 00047A88  C0 02 83 F8 */	lfs f0, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004BE2C 00047A8C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004BE30 00047A90  4C 41 13 82 */	cror 2, 1, 2
/* 8004BE34 00047A94  40 82 00 1C */	bne lbl_8004BE50
/* 8004BE38 00047A98  7F E3 FB 78 */	mr r3, r31
/* 8004BE3C 00047A9C  38 80 00 01 */	li r4, 1
/* 8004BE40 00047AA0  4B FE 90 29 */	bl func_80034E68
/* 8004BE44 00047AA4  C0 3E 00 40 */	lfs f1, 0x40(r30)
/* 8004BE48 00047AA8  7F E3 FB 78 */	mr r3, r31
/* 8004BE4C 00047AAC  4B FE 90 55 */	bl func_80034EA0
lbl_8004BE50:
/* 8004BE50 00047AB0  E3 E1 00 18 */	psq_l f31, 24(r1), 0, qr0
/* 8004BE54 00047AB4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004BE58 00047AB8  CB E1 00 10 */	lfd f31, 0x10(r1)
/* 8004BE5C 00047ABC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BE60 00047AC0  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004BE64 00047AC4  7C 08 03 A6 */	mtlr r0
/* 8004BE68 00047AC8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004BE6C 00047ACC  4E 80 00 20 */	blr
/* 8004BE70 00047AD0  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004BE74 00047AD4  39 00 00 00 */	li r8, 0
/* 8004BE78 00047AD8  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004BE7C 00047ADC  80 E4 00 04 */	lwz r7, 4(r4)
/* 8004BE80 00047AE0  2C 87 00 00 */	cmpwi cr1, r7, 0
/* 8004BE84 00047AE4  4C 85 00 20 */	blelr cr1
/* 8004BE88 00047AE8  2C 07 00 08 */	cmpwi r7, 8
/* 8004BE8C 00047AEC  38 A7 FF F8 */	addi r5, r7, -8
/* 8004BE90 00047AF0  40 81 00 94 */	ble lbl_8004BF24
/* 8004BE94 00047AF4  38 C0 00 00 */	li r6, 0
/* 8004BE98 00047AF8  41 84 00 18 */	blt cr1, lbl_8004BEB0
/* 8004BE9C 00047AFC  3C 80 80 00 */	lis r4, 0x7FFFFFFE@ha
/* 8004BEA0 00047B00  38 04 FF FE */	addi r0, r4, 0x7FFFFFFE@l
/* 8004BEA4 00047B04  7C 07 00 00 */	cmpw r7, r0
/* 8004BEA8 00047B08  41 81 00 08 */	bgt lbl_8004BEB0
/* 8004BEAC 00047B0C  38 C0 00 01 */	li r6, 1
lbl_8004BEB0:
/* 8004BEB0 00047B10  2C 06 00 00 */	cmpwi r6, 0
/* 8004BEB4 00047B14  41 82 00 70 */	beq lbl_8004BF24
/* 8004BEB8 00047B18  38 05 00 07 */	addi r0, r5, 7
/* 8004BEBC 00047B1C  38 80 00 00 */	li r4, 0
/* 8004BEC0 00047B20  54 00 E8 FE */	srwi r0, r0, 3
/* 8004BEC4 00047B24  7C 09 03 A6 */	mtctr r0
/* 8004BEC8 00047B28  2C 05 00 00 */	cmpwi r5, 0
/* 8004BECC 00047B2C  40 81 00 58 */	ble lbl_8004BF24
lbl_8004BED0:
/* 8004BED0 00047B30  80 03 00 14 */	lwz r0, 0x14(r3)
/* 8004BED4 00047B34  39 08 00 08 */	addi r8, r8, 8
/* 8004BED8 00047B38  7C A0 22 14 */	add r5, r0, r4
/* 8004BEDC 00047B3C  38 84 00 60 */	addi r4, r4, 0x60
/* 8004BEE0 00047B40  C0 45 00 10 */	lfs f2, 0x10(r5)
/* 8004BEE4 00047B44  C0 05 00 1C */	lfs f0, 0x1c(r5)
/* 8004BEE8 00047B48  EC 21 10 2A */	fadds f1, f1, f2
/* 8004BEEC 00047B4C  C0 C5 00 28 */	lfs f6, 0x28(r5)
/* 8004BEF0 00047B50  C0 A5 00 34 */	lfs f5, 0x34(r5)
/* 8004BEF4 00047B54  C0 85 00 40 */	lfs f4, 0x40(r5)
/* 8004BEF8 00047B58  EC 21 00 2A */	fadds f1, f1, f0
/* 8004BEFC 00047B5C  C0 65 00 4C */	lfs f3, 0x4c(r5)
/* 8004BF00 00047B60  C0 45 00 58 */	lfs f2, 0x58(r5)
/* 8004BF04 00047B64  C0 05 00 64 */	lfs f0, 0x64(r5)
/* 8004BF08 00047B68  EC 21 30 2A */	fadds f1, f1, f6
/* 8004BF0C 00047B6C  EC 21 28 2A */	fadds f1, f1, f5
/* 8004BF10 00047B70  EC 21 20 2A */	fadds f1, f1, f4
/* 8004BF14 00047B74  EC 21 18 2A */	fadds f1, f1, f3
/* 8004BF18 00047B78  EC 21 10 2A */	fadds f1, f1, f2
/* 8004BF1C 00047B7C  EC 21 00 2A */	fadds f1, f1, f0
/* 8004BF20 00047B80  42 00 FF B0 */	bdnz lbl_8004BED0
lbl_8004BF24:
/* 8004BF24 00047B84  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 8004BF28 00047B88  1C 88 00 0C */	mulli r4, r8, 0xc
/* 8004BF2C 00047B8C  80 65 00 04 */	lwz r3, 4(r5)
/* 8004BF30 00047B90  7C 08 18 50 */	subf r0, r8, r3
/* 8004BF34 00047B94  7C 09 03 A6 */	mtctr r0
/* 8004BF38 00047B98  7C 08 18 00 */	cmpw r8, r3
/* 8004BF3C 00047B9C  4C 80 00 20 */	bgelr
lbl_8004BF40:
/* 8004BF40 00047BA0  7C 65 22 14 */	add r3, r5, r4
/* 8004BF44 00047BA4  38 84 00 0C */	addi r4, r4, 0xc
/* 8004BF48 00047BA8  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 8004BF4C 00047BAC  EC 21 00 2A */	fadds f1, f1, f0
/* 8004BF50 00047BB0  42 00 FF F0 */	bdnz lbl_8004BF40
/* 8004BF54 00047BB4  4E 80 00 20 */	blr

.global func_8004BF58
func_8004BF58:
/* 8004BF58 00047BB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BF5C 00047BBC  7C 08 02 A6 */	mflr r0
/* 8004BF60 00047BC0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004BF64 00047BC4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BF68 00047BC8  7C 7F 1B 78 */	mr r31, r3
/* 8004BF6C 00047BCC  4B FF F1 E5 */	bl func_8004B150
/* 8004BF70 00047BD0  3C 80 80 41 */	lis r4, lbl_8040A8C4@ha
/* 8004BF74 00047BD4  7F E3 FB 78 */	mr r3, r31
/* 8004BF78 00047BD8  38 84 A8 C4 */	addi r4, r4, lbl_8040A8C4@l
/* 8004BF7C 00047BDC  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004BF80 00047BE0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BF84 00047BE4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004BF88 00047BE8  7C 08 03 A6 */	mtlr r0
/* 8004BF8C 00047BEC  38 21 00 10 */	addi r1, r1, 0x10
/* 8004BF90 00047BF0  4E 80 00 20 */	blr
/* 8004BF94 00047BF4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BF98 00047BF8  7C 08 02 A6 */	mflr r0
/* 8004BF9C 00047BFC  2C 03 00 00 */	cmpwi r3, 0
/* 8004BFA0 00047C00  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004BFA4 00047C04  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004BFA8 00047C08  7C 9F 23 78 */	mr r31, r4
/* 8004BFAC 00047C0C  93 C1 00 08 */	stw r30, 8(r1)
/* 8004BFB0 00047C10  7C 7E 1B 78 */	mr r30, r3
/* 8004BFB4 00047C14  41 82 00 1C */	beq lbl_8004BFD0
/* 8004BFB8 00047C18  38 80 00 00 */	li r4, 0
/* 8004BFBC 00047C1C  4B FF F1 B9 */	bl func_8004B174
/* 8004BFC0 00047C20  2C 1F 00 00 */	cmpwi r31, 0
/* 8004BFC4 00047C24  40 81 00 0C */	ble lbl_8004BFD0
/* 8004BFC8 00047C28  7F C3 F3 78 */	mr r3, r30
/* 8004BFCC 00047C2C  48 18 EA ED */	bl func_801DAAB8
lbl_8004BFD0:
/* 8004BFD0 00047C30  7F C3 F3 78 */	mr r3, r30
/* 8004BFD4 00047C34  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004BFD8 00047C38  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004BFDC 00047C3C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004BFE0 00047C40  7C 08 03 A6 */	mtlr r0
/* 8004BFE4 00047C44  38 21 00 10 */	addi r1, r1, 0x10
/* 8004BFE8 00047C48  4E 80 00 20 */	blr
/* 8004BFEC 00047C4C  4E 80 00 20 */	blr
/* 8004BFF0 00047C50  4E 80 00 20 */	blr
/* 8004BFF4 00047C54  4E 80 00 20 */	blr

.global func_8004BFF8
func_8004BFF8:
/* 8004BFF8 00047C58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004BFFC 00047C5C  7C 08 02 A6 */	mflr r0
/* 8004C000 00047C60  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C004 00047C64  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C008 00047C68  7C 7F 1B 78 */	mr r31, r3
/* 8004C00C 00047C6C  4B FF F1 45 */	bl func_8004B150
/* 8004C010 00047C70  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 8004C014 00047C74  3C A0 80 41 */	lis r5, lbl_8040A87C@ha
/* 8004C018 00047C78  38 A5 A8 7C */	addi r5, r5, lbl_8040A87C@l
/* 8004C01C 00047C7C  38 00 00 00 */	li r0, 0
/* 8004C020 00047C80  38 83 00 08 */	addi r4, r3, 8
/* 8004C024 00047C84  90 BF 00 10 */	stw r5, 0x10(r31)
/* 8004C028 00047C88  7F E3 FB 78 */	mr r3, r31
/* 8004C02C 00047C8C  90 9F 00 14 */	stw r4, 0x14(r31)
/* 8004C030 00047C90  90 1F 00 18 */	stw r0, 0x18(r31)
/* 8004C034 00047C94  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C038 00047C98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C03C 00047C9C  7C 08 03 A6 */	mtlr r0
/* 8004C040 00047CA0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C044 00047CA4  4E 80 00 20 */	blr
/* 8004C048 00047CA8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C04C 00047CAC  7C 08 02 A6 */	mflr r0
/* 8004C050 00047CB0  2C 03 00 00 */	cmpwi r3, 0
/* 8004C054 00047CB4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C058 00047CB8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C05C 00047CBC  7C 9F 23 78 */	mr r31, r4
/* 8004C060 00047CC0  93 C1 00 08 */	stw r30, 8(r1)
/* 8004C064 00047CC4  7C 7E 1B 78 */	mr r30, r3
/* 8004C068 00047CC8  41 82 00 5C */	beq lbl_8004C0C4
/* 8004C06C 00047CCC  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8004C070 00047CD0  3C 80 80 41 */	lis r4, lbl_8040A87C@ha
/* 8004C074 00047CD4  38 84 A8 7C */	addi r4, r4, lbl_8040A87C@l
/* 8004C078 00047CD8  2C 00 00 00 */	cmpwi r0, 0
/* 8004C07C 00047CDC  90 83 00 10 */	stw r4, 0x10(r3)
/* 8004C080 00047CE0  41 82 00 28 */	beq lbl_8004C0A8
/* 8004C084 00047CE4  41 82 00 1C */	beq lbl_8004C0A0
/* 8004C088 00047CE8  7C 03 03 78 */	mr r3, r0
/* 8004C08C 00047CEC  38 80 00 01 */	li r4, 1
/* 8004C090 00047CF0  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004C094 00047CF4  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004C098 00047CF8  7D 89 03 A6 */	mtctr r12
/* 8004C09C 00047CFC  4E 80 04 21 */	bctrl
lbl_8004C0A0:
/* 8004C0A0 00047D00  38 00 00 00 */	li r0, 0
/* 8004C0A4 00047D04  90 1E 00 18 */	stw r0, 0x18(r30)
lbl_8004C0A8:
/* 8004C0A8 00047D08  7F C3 F3 78 */	mr r3, r30
/* 8004C0AC 00047D0C  38 80 00 00 */	li r4, 0
/* 8004C0B0 00047D10  4B FF F0 C5 */	bl func_8004B174
/* 8004C0B4 00047D14  2C 1F 00 00 */	cmpwi r31, 0
/* 8004C0B8 00047D18  40 81 00 0C */	ble lbl_8004C0C4
/* 8004C0BC 00047D1C  7F C3 F3 78 */	mr r3, r30
/* 8004C0C0 00047D20  48 18 E9 F9 */	bl func_801DAAB8
lbl_8004C0C4:
/* 8004C0C4 00047D24  7F C3 F3 78 */	mr r3, r30
/* 8004C0C8 00047D28  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C0CC 00047D2C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004C0D0 00047D30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C0D4 00047D34  7C 08 03 A6 */	mtlr r0
/* 8004C0D8 00047D38  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C0DC 00047D3C  4E 80 00 20 */	blr
/* 8004C0E0 00047D40  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 8004C0E4 00047D44  7C 08 02 A6 */	mflr r0
/* 8004C0E8 00047D48  90 01 00 64 */	stw r0, 0x64(r1)
/* 8004C0EC 00047D4C  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 8004C0F0 00047D50  7C 7F 1B 78 */	mr r31, r3
/* 8004C0F4 00047D54  93 C1 00 58 */	stw r30, 0x58(r1)
/* 8004C0F8 00047D58  4B FF F0 BD */	bl func_8004B1B4
/* 8004C0FC 00047D5C  2C 03 00 00 */	cmpwi r3, 0
/* 8004C100 00047D60  7C 7E 1B 78 */	mr r30, r3
/* 8004C104 00047D64  41 82 02 14 */	beq lbl_8004C318
/* 8004C108 00047D68  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004C10C 00047D6C  2C 03 00 00 */	cmpwi r3, 0
/* 8004C110 00047D70  41 82 00 1C */	beq lbl_8004C12C
/* 8004C114 00047D74  41 82 00 18 */	beq lbl_8004C12C
/* 8004C118 00047D78  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004C11C 00047D7C  38 80 00 01 */	li r4, 1
/* 8004C120 00047D80  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004C124 00047D84  7D 89 03 A6 */	mtctr r12
/* 8004C128 00047D88  4E 80 04 21 */	bctrl
lbl_8004C12C:
/* 8004C12C 00047D8C  48 18 E9 FD */	bl func_801DAB28
/* 8004C130 00047D90  2C 03 00 00 */	cmpwi r3, 0
/* 8004C134 00047D94  41 82 00 14 */	beq lbl_8004C148
/* 8004C138 00047D98  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004C13C 00047D9C  38 80 00 70 */	li r4, 0x70
/* 8004C140 00047DA0  48 18 EB 55 */	bl func_801DAC94
/* 8004C144 00047DA4  48 00 00 08 */	b lbl_8004C14C
lbl_8004C148:
/* 8004C148 00047DA8  38 60 00 00 */	li r3, 0
lbl_8004C14C:
/* 8004C14C 00047DAC  2C 03 00 00 */	cmpwi r3, 0
/* 8004C150 00047DB0  7C 66 1B 78 */	mr r6, r3
/* 8004C154 00047DB4  41 82 00 10 */	beq lbl_8004C164
/* 8004C158 00047DB8  80 9E 0C 04 */	lwz r4, 0xc04(r30)
/* 8004C15C 00047DBC  48 1D 12 C9 */	bl func_8021D424
/* 8004C160 00047DC0  7C 66 1B 78 */	mr r6, r3
lbl_8004C164:
/* 8004C164 00047DC4  2C 06 00 00 */	cmpwi r6, 0
/* 8004C168 00047DC8  90 DF 00 18 */	stw r6, 0x18(r31)
/* 8004C16C 00047DCC  41 82 01 AC */	beq lbl_8004C318
/* 8004C170 00047DD0  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 8004C174 00047DD4  7F C4 F3 78 */	mr r4, r30
/* 8004C178 00047DD8  C0 02 84 00 */	lfs f0, lbl_80640A00-_SDA2_BASE_(r2)
/* 8004C17C 00047DDC  38 61 00 08 */	addi r3, r1, 8
/* 8004C180 00047DE0  80 05 00 00 */	lwz r0, 0(r5)
/* 8004C184 00047DE4  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 8004C188 00047DE8  98 06 00 1E */	stb r0, 0x1e(r6)
/* 8004C18C 00047DEC  80 DF 00 14 */	lwz r6, 0x14(r31)
/* 8004C190 00047DF0  80 BF 00 18 */	lwz r5, 0x18(r31)
/* 8004C194 00047DF4  80 06 00 00 */	lwz r0, 0(r6)
/* 8004C198 00047DF8  54 00 FF FE */	rlwinm r0, r0, 0x1f, 0x1f, 0x1f
/* 8004C19C 00047DFC  98 05 00 20 */	stb r0, 0x20(r5)
/* 8004C1A0 00047E00  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 8004C1A4 00047E04  80 DF 00 18 */	lwz r6, 0x18(r31)
/* 8004C1A8 00047E08  88 05 00 0C */	lbz r0, 0xc(r5)
/* 8004C1AC 00047E0C  98 06 00 28 */	stb r0, 0x28(r6)
/* 8004C1B0 00047E10  88 05 00 0D */	lbz r0, 0xd(r5)
/* 8004C1B4 00047E14  98 06 00 29 */	stb r0, 0x29(r6)
/* 8004C1B8 00047E18  88 05 00 0E */	lbz r0, 0xe(r5)
/* 8004C1BC 00047E1C  98 06 00 2A */	stb r0, 0x2a(r6)
/* 8004C1C0 00047E20  88 05 00 0F */	lbz r0, 0xf(r5)
/* 8004C1C4 00047E24  98 06 00 2B */	stb r0, 0x2b(r6)
/* 8004C1C8 00047E28  80 BF 00 18 */	lwz r5, 0x18(r31)
/* 8004C1CC 00047E2C  D0 05 00 6C */	stfs f0, 0x6c(r5)
/* 8004C1D0 00047E30  80 DF 00 14 */	lwz r6, 0x14(r31)
/* 8004C1D4 00047E34  80 BF 00 18 */	lwz r5, 0x18(r31)
/* 8004C1D8 00047E38  C0 06 00 04 */	lfs f0, 4(r6)
/* 8004C1DC 00047E3C  D0 05 00 48 */	stfs f0, 0x48(r5)
/* 8004C1E0 00047E40  80 DF 00 14 */	lwz r6, 0x14(r31)
/* 8004C1E4 00047E44  80 BF 00 18 */	lwz r5, 0x18(r31)
/* 8004C1E8 00047E48  80 06 00 00 */	lwz r0, 0(r6)
/* 8004C1EC 00047E4C  54 00 F7 FE */	rlwinm r0, r0, 0x1e, 0x1f, 0x1f
/* 8004C1F0 00047E50  98 05 00 1F */	stb r0, 0x1f(r5)
/* 8004C1F4 00047E54  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 8004C1F8 00047E58  80 DF 00 18 */	lwz r6, 0x18(r31)
/* 8004C1FC 00047E5C  C0 05 00 10 */	lfs f0, 0x10(r5)
/* 8004C200 00047E60  D0 06 00 5C */	stfs f0, 0x5c(r6)
/* 8004C204 00047E64  C0 05 00 14 */	lfs f0, 0x14(r5)
/* 8004C208 00047E68  D0 06 00 60 */	stfs f0, 0x60(r6)
/* 8004C20C 00047E6C  C0 05 00 18 */	lfs f0, 0x18(r5)
/* 8004C210 00047E70  D0 06 00 64 */	stfs f0, 0x64(r6)
/* 8004C214 00047E74  80 DF 00 14 */	lwz r6, 0x14(r31)
/* 8004C218 00047E78  80 BF 00 18 */	lwz r5, 0x18(r31)
/* 8004C21C 00047E7C  C0 06 00 08 */	lfs f0, 8(r6)
/* 8004C220 00047E80  D0 05 00 44 */	stfs f0, 0x44(r5)
/* 8004C224 00047E84  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 8004C228 00047E88  80 DF 00 18 */	lwz r6, 0x18(r31)
/* 8004C22C 00047E8C  C0 05 00 1C */	lfs f0, 0x1c(r5)
/* 8004C230 00047E90  D0 06 00 38 */	stfs f0, 0x38(r6)
/* 8004C234 00047E94  C0 05 00 20 */	lfs f0, 0x20(r5)
/* 8004C238 00047E98  D0 06 00 3C */	stfs f0, 0x3c(r6)
/* 8004C23C 00047E9C  C0 05 00 24 */	lfs f0, 0x24(r5)
/* 8004C240 00047EA0  D0 06 00 40 */	stfs f0, 0x40(r6)
/* 8004C244 00047EA4  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 8004C248 00047EA8  80 DF 00 18 */	lwz r6, 0x18(r31)
/* 8004C24C 00047EAC  C0 05 00 28 */	lfs f0, 0x28(r5)
/* 8004C250 00047EB0  D0 06 00 2C */	stfs f0, 0x2c(r6)
/* 8004C254 00047EB4  C0 05 00 2C */	lfs f0, 0x2c(r5)
/* 8004C258 00047EB8  D0 06 00 30 */	stfs f0, 0x30(r6)
/* 8004C25C 00047EBC  C0 05 00 30 */	lfs f0, 0x30(r5)
/* 8004C260 00047EC0  D0 06 00 34 */	stfs f0, 0x34(r6)
/* 8004C264 00047EC4  80 DF 00 14 */	lwz r6, 0x14(r31)
/* 8004C268 00047EC8  80 BF 00 18 */	lwz r5, 0x18(r31)
/* 8004C26C 00047ECC  C0 06 00 34 */	lfs f0, 0x34(r6)
/* 8004C270 00047ED0  D0 05 00 58 */	stfs f0, 0x58(r5)
/* 8004C274 00047ED4  4B FE C8 21 */	bl func_80038A94
/* 8004C278 00047ED8  C0 21 00 0C */	lfs f1, 0xc(r1)
/* 8004C27C 00047EDC  38 61 00 20 */	addi r3, r1, 0x20
/* 8004C280 00047EE0  C0 02 84 04 */	lfs f0, lbl_80640A04-_SDA2_BASE_(r2)
/* 8004C284 00047EE4  38 80 00 59 */	li r4, 0x59
/* 8004C288 00047EE8  EC 20 08 2A */	fadds f1, f0, f1
/* 8004C28C 00047EEC  48 22 FF DD */	bl func_8027C268
/* 8004C290 00047EF0  80 DF 00 14 */	lwz r6, 0x14(r31)
/* 8004C294 00047EF4  38 81 00 14 */	addi r4, r1, 0x14
/* 8004C298 00047EF8  7C 85 23 78 */	mr r5, r4
/* 8004C29C 00047EFC  38 61 00 20 */	addi r3, r1, 0x20
/* 8004C2A0 00047F00  C0 06 00 38 */	lfs f0, 0x38(r6)
/* 8004C2A4 00047F04  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8004C2A8 00047F08  C0 06 00 3C */	lfs f0, 0x3c(r6)
/* 8004C2AC 00047F0C  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 8004C2B0 00047F10  C0 06 00 40 */	lfs f0, 0x40(r6)
/* 8004C2B4 00047F14  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8004C2B8 00047F18  48 23 07 45 */	bl func_8027C9FC
/* 8004C2BC 00047F1C  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004C2C0 00047F20  C0 01 00 14 */	lfs f0, 0x14(r1)
/* 8004C2C4 00047F24  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004C2C8 00047F28  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 8004C2CC 00047F2C  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8004C2D0 00047F30  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8004C2D4 00047F34  D0 03 00 54 */	stfs f0, 0x54(r3)
/* 8004C2D8 00047F38  83 FF 00 18 */	lwz r31, 0x18(r31)
/* 8004C2DC 00047F3C  81 9F 00 0C */	lwz r12, 0xc(r31)
/* 8004C2E0 00047F40  7F E3 FB 78 */	mr r3, r31
/* 8004C2E4 00047F44  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004C2E8 00047F48  7D 89 03 A6 */	mtctr r12
/* 8004C2EC 00047F4C  4E 80 04 21 */	bctrl
/* 8004C2F0 00047F50  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 8004C2F4 00047F54  98 7F 00 08 */	stb r3, 8(r31)
/* 8004C2F8 00047F58  41 82 00 20 */	beq lbl_8004C318
/* 8004C2FC 00047F5C  83 FF 00 04 */	lwz r31, 4(r31)
/* 8004C300 00047F60  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004C304 00047F64  48 1E ED 55 */	bl func_8023B058
/* 8004C308 00047F68  2C 03 00 00 */	cmpwi r3, 0
/* 8004C30C 00047F6C  41 82 00 0C */	beq lbl_8004C318
/* 8004C310 00047F70  7F E4 FB 78 */	mr r4, r31
/* 8004C314 00047F74  48 1E F0 A5 */	bl func_8023B3B8
lbl_8004C318:
/* 8004C318 00047F78  80 01 00 64 */	lwz r0, 0x64(r1)
/* 8004C31C 00047F7C  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 8004C320 00047F80  83 C1 00 58 */	lwz r30, 0x58(r1)
/* 8004C324 00047F84  7C 08 03 A6 */	mtlr r0
/* 8004C328 00047F88  38 21 00 60 */	addi r1, r1, 0x60
/* 8004C32C 00047F8C  4E 80 00 20 */	blr
/* 8004C330 00047F90  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004C334 00047F94  7C 08 02 A6 */	mflr r0
/* 8004C338 00047F98  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004C33C 00047F9C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004C340 00047FA0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004C344 00047FA4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004C348 00047FA8  7C 7D 1B 78 */	mr r29, r3
/* 8004C34C 00047FAC  83 C3 00 18 */	lwz r30, 0x18(r3)
/* 8004C350 00047FB0  2C 1E 00 00 */	cmpwi r30, 0
/* 8004C354 00047FB4  41 82 00 70 */	beq lbl_8004C3C4
/* 8004C358 00047FB8  88 1E 00 08 */	lbz r0, 8(r30)
/* 8004C35C 00047FBC  2C 00 00 00 */	cmpwi r0, 0
/* 8004C360 00047FC0  41 82 00 3C */	beq lbl_8004C39C
/* 8004C364 00047FC4  83 FE 00 04 */	lwz r31, 4(r30)
/* 8004C368 00047FC8  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004C36C 00047FCC  48 1E EC ED */	bl func_8023B058
/* 8004C370 00047FD0  2C 03 00 00 */	cmpwi r3, 0
/* 8004C374 00047FD4  41 82 00 0C */	beq lbl_8004C380
/* 8004C378 00047FD8  7F E4 FB 78 */	mr r4, r31
/* 8004C37C 00047FDC  48 1E F0 A5 */	bl func_8023B420
lbl_8004C380:
/* 8004C380 00047FE0  81 9E 00 0C */	lwz r12, 0xc(r30)
/* 8004C384 00047FE4  7F C3 F3 78 */	mr r3, r30
/* 8004C388 00047FE8  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8004C38C 00047FEC  7D 89 03 A6 */	mtctr r12
/* 8004C390 00047FF0  4E 80 04 21 */	bctrl
/* 8004C394 00047FF4  38 00 00 00 */	li r0, 0
/* 8004C398 00047FF8  98 1E 00 08 */	stb r0, 8(r30)
lbl_8004C39C:
/* 8004C39C 00047FFC  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8004C3A0 00048000  2C 03 00 00 */	cmpwi r3, 0
/* 8004C3A4 00048004  41 82 00 18 */	beq lbl_8004C3BC
/* 8004C3A8 00048008  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004C3AC 0004800C  38 80 00 01 */	li r4, 1
/* 8004C3B0 00048010  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004C3B4 00048014  7D 89 03 A6 */	mtctr r12
/* 8004C3B8 00048018  4E 80 04 21 */	bctrl
lbl_8004C3BC:
/* 8004C3BC 0004801C  38 00 00 00 */	li r0, 0
/* 8004C3C0 00048020  90 1D 00 18 */	stw r0, 0x18(r29)
lbl_8004C3C4:
/* 8004C3C4 00048024  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004C3C8 00048028  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004C3CC 0004802C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004C3D0 00048030  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004C3D4 00048034  7C 08 03 A6 */	mtlr r0
/* 8004C3D8 00048038  38 21 00 20 */	addi r1, r1, 0x20
/* 8004C3DC 0004803C  4E 80 00 20 */	blr
/* 8004C3E0 00048040  4E 80 00 20 */	blr
/* 8004C3E4 00048044  C0 22 84 08 */	lfs f1, lbl_80640A08-_SDA2_BASE_(r2)
/* 8004C3E8 00048048  4E 80 00 20 */	blr

.global func_8004C3EC
func_8004C3EC:
/* 8004C3EC 0004804C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C3F0 00048050  7C 08 02 A6 */	mflr r0
/* 8004C3F4 00048054  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C3F8 00048058  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C3FC 0004805C  7C 7F 1B 78 */	mr r31, r3
/* 8004C400 00048060  4B FF ED 51 */	bl func_8004B150
/* 8004C404 00048064  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 8004C408 00048068  3C A0 80 41 */	lis r5, lbl_8040A834@ha
/* 8004C40C 0004806C  38 A5 A8 34 */	addi r5, r5, lbl_8040A834@l
/* 8004C410 00048070  38 00 00 00 */	li r0, 0
/* 8004C414 00048074  38 83 00 08 */	addi r4, r3, 8
/* 8004C418 00048078  90 BF 00 10 */	stw r5, 0x10(r31)
/* 8004C41C 0004807C  7F E3 FB 78 */	mr r3, r31
/* 8004C420 00048080  90 9F 00 14 */	stw r4, 0x14(r31)
/* 8004C424 00048084  90 1F 00 18 */	stw r0, 0x18(r31)
/* 8004C428 00048088  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C42C 0004808C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C430 00048090  7C 08 03 A6 */	mtlr r0
/* 8004C434 00048094  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C438 00048098  4E 80 00 20 */	blr
/* 8004C43C 0004809C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C440 000480A0  7C 08 02 A6 */	mflr r0
/* 8004C444 000480A4  2C 03 00 00 */	cmpwi r3, 0
/* 8004C448 000480A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C44C 000480AC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C450 000480B0  7C 9F 23 78 */	mr r31, r4
/* 8004C454 000480B4  93 C1 00 08 */	stw r30, 8(r1)
/* 8004C458 000480B8  7C 7E 1B 78 */	mr r30, r3
/* 8004C45C 000480BC  41 82 00 5C */	beq lbl_8004C4B8
/* 8004C460 000480C0  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8004C464 000480C4  3C 80 80 41 */	lis r4, lbl_8040A834@ha
/* 8004C468 000480C8  38 84 A8 34 */	addi r4, r4, lbl_8040A834@l
/* 8004C46C 000480CC  2C 00 00 00 */	cmpwi r0, 0
/* 8004C470 000480D0  90 83 00 10 */	stw r4, 0x10(r3)
/* 8004C474 000480D4  40 82 00 28 */	bne lbl_8004C49C
/* 8004C478 000480D8  41 82 00 1C */	beq lbl_8004C494
/* 8004C47C 000480DC  7C 03 03 78 */	mr r3, r0
/* 8004C480 000480E0  38 80 00 01 */	li r4, 1
/* 8004C484 000480E4  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004C488 000480E8  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004C48C 000480EC  7D 89 03 A6 */	mtctr r12
/* 8004C490 000480F0  4E 80 04 21 */	bctrl
lbl_8004C494:
/* 8004C494 000480F4  38 00 00 00 */	li r0, 0
/* 8004C498 000480F8  90 1E 00 18 */	stw r0, 0x18(r30)
lbl_8004C49C:
/* 8004C49C 000480FC  7F C3 F3 78 */	mr r3, r30
/* 8004C4A0 00048100  38 80 00 00 */	li r4, 0
/* 8004C4A4 00048104  4B FF EC D1 */	bl func_8004B174
/* 8004C4A8 00048108  2C 1F 00 00 */	cmpwi r31, 0
/* 8004C4AC 0004810C  40 81 00 0C */	ble lbl_8004C4B8
/* 8004C4B0 00048110  7F C3 F3 78 */	mr r3, r30
/* 8004C4B4 00048114  48 18 E6 05 */	bl func_801DAAB8
lbl_8004C4B8:
/* 8004C4B8 00048118  7F C3 F3 78 */	mr r3, r30
/* 8004C4BC 0004811C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C4C0 00048120  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004C4C4 00048124  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C4C8 00048128  7C 08 03 A6 */	mtlr r0
/* 8004C4CC 0004812C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C4D0 00048130  4E 80 00 20 */	blr
/* 8004C4D4 00048134  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004C4D8 00048138  7C 08 02 A6 */	mflr r0
/* 8004C4DC 0004813C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004C4E0 00048140  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004C4E4 00048144  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004C4E8 00048148  7C 7E 1B 78 */	mr r30, r3
/* 8004C4EC 0004814C  4B FF EC C9 */	bl func_8004B1B4
/* 8004C4F0 00048150  2C 03 00 00 */	cmpwi r3, 0
/* 8004C4F4 00048154  7C 7F 1B 78 */	mr r31, r3
/* 8004C4F8 00048158  41 82 01 1C */	beq lbl_8004C614
/* 8004C4FC 0004815C  80 7E 00 18 */	lwz r3, 0x18(r30)
/* 8004C500 00048160  2C 03 00 00 */	cmpwi r3, 0
/* 8004C504 00048164  41 82 00 1C */	beq lbl_8004C520
/* 8004C508 00048168  41 82 00 18 */	beq lbl_8004C520
/* 8004C50C 0004816C  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004C510 00048170  38 80 00 01 */	li r4, 1
/* 8004C514 00048174  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004C518 00048178  7D 89 03 A6 */	mtctr r12
/* 8004C51C 0004817C  4E 80 04 21 */	bctrl
lbl_8004C520:
/* 8004C520 00048180  48 18 E6 09 */	bl func_801DAB28
/* 8004C524 00048184  2C 03 00 00 */	cmpwi r3, 0
/* 8004C528 00048188  41 82 00 14 */	beq lbl_8004C53C
/* 8004C52C 0004818C  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004C530 00048190  38 80 00 28 */	li r4, 0x28
/* 8004C534 00048194  48 18 E7 61 */	bl func_801DAC94
/* 8004C538 00048198  48 00 00 08 */	b lbl_8004C540
lbl_8004C53C:
/* 8004C53C 0004819C  38 60 00 00 */	li r3, 0
lbl_8004C540:
/* 8004C540 000481A0  2C 03 00 00 */	cmpwi r3, 0
/* 8004C544 000481A4  41 82 00 14 */	beq lbl_8004C558
/* 8004C548 000481A8  80 BE 00 14 */	lwz r5, 0x14(r30)
/* 8004C54C 000481AC  80 9F 0C 04 */	lwz r4, 0xc04(r31)
/* 8004C550 000481B0  80 A5 00 1C */	lwz r5, 0x1c(r5)
/* 8004C554 000481B4  48 1D 24 F5 */	bl func_8021EA48
lbl_8004C558:
/* 8004C558 000481B8  2C 03 00 00 */	cmpwi r3, 0
/* 8004C55C 000481BC  90 7E 00 18 */	stw r3, 0x18(r30)
/* 8004C560 000481C0  41 82 00 B4 */	beq lbl_8004C614
/* 8004C564 000481C4  80 9E 00 14 */	lwz r4, 0x14(r30)
/* 8004C568 000481C8  C0 24 00 0C */	lfs f1, 0xc(r4)
/* 8004C56C 000481CC  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004C570 000481D0  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004C574 000481D4  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 8004C578 000481D8  D0 23 00 20 */	stfs f1, 0x20(r3)
/* 8004C57C 000481DC  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004C580 000481E0  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004C584 000481E4  A0 03 00 04 */	lhz r0, 4(r3)
/* 8004C588 000481E8  28 00 00 01 */	cmplwi r0, 1
/* 8004C58C 000481EC  40 82 00 14 */	bne lbl_8004C5A0
/* 8004C590 000481F0  80 7E 00 18 */	lwz r3, 0x18(r30)
/* 8004C594 000481F4  38 00 00 01 */	li r0, 1
/* 8004C598 000481F8  90 03 00 24 */	stw r0, 0x24(r3)
/* 8004C59C 000481FC  48 00 00 10 */	b lbl_8004C5AC
lbl_8004C5A0:
/* 8004C5A0 00048200  80 7E 00 18 */	lwz r3, 0x18(r30)
/* 8004C5A4 00048204  38 00 00 00 */	li r0, 0
/* 8004C5A8 00048208  90 03 00 24 */	stw r0, 0x24(r3)
lbl_8004C5AC:
/* 8004C5AC 0004820C  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004C5B0 00048210  80 9E 00 18 */	lwz r4, 0x18(r30)
/* 8004C5B4 00048214  88 03 00 10 */	lbz r0, 0x10(r3)
/* 8004C5B8 00048218  98 04 00 18 */	stb r0, 0x18(r4)
/* 8004C5BC 0004821C  88 03 00 11 */	lbz r0, 0x11(r3)
/* 8004C5C0 00048220  98 04 00 19 */	stb r0, 0x19(r4)
/* 8004C5C4 00048224  88 03 00 12 */	lbz r0, 0x12(r3)
/* 8004C5C8 00048228  98 04 00 1A */	stb r0, 0x1a(r4)
/* 8004C5CC 0004822C  88 03 00 13 */	lbz r0, 0x13(r3)
/* 8004C5D0 00048230  98 04 00 1B */	stb r0, 0x1b(r4)
/* 8004C5D4 00048234  83 FE 00 18 */	lwz r31, 0x18(r30)
/* 8004C5D8 00048238  81 9F 00 0C */	lwz r12, 0xc(r31)
/* 8004C5DC 0004823C  7F E3 FB 78 */	mr r3, r31
/* 8004C5E0 00048240  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004C5E4 00048244  7D 89 03 A6 */	mtctr r12
/* 8004C5E8 00048248  4E 80 04 21 */	bctrl
/* 8004C5EC 0004824C  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 8004C5F0 00048250  98 7F 00 08 */	stb r3, 8(r31)
/* 8004C5F4 00048254  41 82 00 20 */	beq lbl_8004C614
/* 8004C5F8 00048258  83 FF 00 04 */	lwz r31, 4(r31)
/* 8004C5FC 0004825C  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004C600 00048260  48 1E EA 59 */	bl func_8023B058
/* 8004C604 00048264  2C 03 00 00 */	cmpwi r3, 0
/* 8004C608 00048268  41 82 00 0C */	beq lbl_8004C614
/* 8004C60C 0004826C  7F E4 FB 78 */	mr r4, r31
/* 8004C610 00048270  48 1E ED A9 */	bl func_8023B3B8
lbl_8004C614:
/* 8004C614 00048274  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004C618 00048278  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004C61C 0004827C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004C620 00048280  7C 08 03 A6 */	mtlr r0
/* 8004C624 00048284  38 21 00 20 */	addi r1, r1, 0x20
/* 8004C628 00048288  4E 80 00 20 */	blr
/* 8004C62C 0004828C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004C630 00048290  7C 08 02 A6 */	mflr r0
/* 8004C634 00048294  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004C638 00048298  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004C63C 0004829C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004C640 000482A0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004C644 000482A4  7C 7D 1B 78 */	mr r29, r3
/* 8004C648 000482A8  83 C3 00 18 */	lwz r30, 0x18(r3)
/* 8004C64C 000482AC  2C 1E 00 00 */	cmpwi r30, 0
/* 8004C650 000482B0  41 82 00 70 */	beq lbl_8004C6C0
/* 8004C654 000482B4  88 1E 00 08 */	lbz r0, 8(r30)
/* 8004C658 000482B8  2C 00 00 00 */	cmpwi r0, 0
/* 8004C65C 000482BC  41 82 00 3C */	beq lbl_8004C698
/* 8004C660 000482C0  83 FE 00 04 */	lwz r31, 4(r30)
/* 8004C664 000482C4  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004C668 000482C8  48 1E E9 F1 */	bl func_8023B058
/* 8004C66C 000482CC  2C 03 00 00 */	cmpwi r3, 0
/* 8004C670 000482D0  41 82 00 0C */	beq lbl_8004C67C
/* 8004C674 000482D4  7F E4 FB 78 */	mr r4, r31
/* 8004C678 000482D8  48 1E ED A9 */	bl func_8023B420
lbl_8004C67C:
/* 8004C67C 000482DC  81 9E 00 0C */	lwz r12, 0xc(r30)
/* 8004C680 000482E0  7F C3 F3 78 */	mr r3, r30
/* 8004C684 000482E4  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8004C688 000482E8  7D 89 03 A6 */	mtctr r12
/* 8004C68C 000482EC  4E 80 04 21 */	bctrl
/* 8004C690 000482F0  38 00 00 00 */	li r0, 0
/* 8004C694 000482F4  98 1E 00 08 */	stb r0, 8(r30)
lbl_8004C698:
/* 8004C698 000482F8  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8004C69C 000482FC  2C 03 00 00 */	cmpwi r3, 0
/* 8004C6A0 00048300  41 82 00 18 */	beq lbl_8004C6B8
/* 8004C6A4 00048304  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004C6A8 00048308  38 80 00 01 */	li r4, 1
/* 8004C6AC 0004830C  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004C6B0 00048310  7D 89 03 A6 */	mtctr r12
/* 8004C6B4 00048314  4E 80 04 21 */	bctrl
lbl_8004C6B8:
/* 8004C6B8 00048318  38 00 00 00 */	li r0, 0
/* 8004C6BC 0004831C  90 1D 00 18 */	stw r0, 0x18(r29)
lbl_8004C6C0:
/* 8004C6C0 00048320  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004C6C4 00048324  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004C6C8 00048328  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004C6CC 0004832C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004C6D0 00048330  7C 08 03 A6 */	mtlr r0
/* 8004C6D4 00048334  38 21 00 20 */	addi r1, r1, 0x20
/* 8004C6D8 00048338  4E 80 00 20 */	blr
/* 8004C6DC 0004833C  4E 80 00 20 */	blr

.global func_8004C6E0
func_8004C6E0:
/* 8004C6E0 00048340  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C6E4 00048344  7C 08 02 A6 */	mflr r0
/* 8004C6E8 00048348  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C6EC 0004834C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C6F0 00048350  7C 7F 1B 78 */	mr r31, r3
/* 8004C6F4 00048354  4B FF EA 5D */	bl func_8004B150
/* 8004C6F8 00048358  3C 80 80 41 */	lis r4, lbl_8040A7F0@ha
/* 8004C6FC 0004835C  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004C700 00048360  38 84 A7 F0 */	addi r4, r4, lbl_8040A7F0@l
/* 8004C704 00048364  90 9F 00 10 */	stw r4, 0x10(r31)
/* 8004C708 00048368  48 00 3C 1D */	bl func_80050324
/* 8004C70C 0004836C  38 7F 00 40 */	addi r3, r31, 0x40
/* 8004C710 00048370  48 00 44 25 */	bl func_80050B34
/* 8004C714 00048374  80 9F 00 0C */	lwz r4, 0xc(r31)
/* 8004C718 00048378  38 00 00 00 */	li r0, 0
/* 8004C71C 0004837C  90 1F 00 B4 */	stw r0, 0xb4(r31)
/* 8004C720 00048380  7F E3 FB 78 */	mr r3, r31
/* 8004C724 00048384  38 04 00 08 */	addi r0, r4, 8
/* 8004C728 00048388  90 1F 00 14 */	stw r0, 0x14(r31)
/* 8004C72C 0004838C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C730 00048390  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C734 00048394  7C 08 03 A6 */	mtlr r0
/* 8004C738 00048398  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C73C 0004839C  4E 80 00 20 */	blr
/* 8004C740 000483A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C744 000483A4  7C 08 02 A6 */	mflr r0
/* 8004C748 000483A8  2C 03 00 00 */	cmpwi r3, 0
/* 8004C74C 000483AC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C750 000483B0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C754 000483B4  7C 9F 23 78 */	mr r31, r4
/* 8004C758 000483B8  93 C1 00 08 */	stw r30, 8(r1)
/* 8004C75C 000483BC  7C 7E 1B 78 */	mr r30, r3
/* 8004C760 000483C0  41 82 00 1C */	beq lbl_8004C77C
/* 8004C764 000483C4  38 80 00 00 */	li r4, 0
/* 8004C768 000483C8  4B FF EA 0D */	bl func_8004B174
/* 8004C76C 000483CC  2C 1F 00 00 */	cmpwi r31, 0
/* 8004C770 000483D0  40 81 00 0C */	ble lbl_8004C77C
/* 8004C774 000483D4  7F C3 F3 78 */	mr r3, r30
/* 8004C778 000483D8  48 18 E3 41 */	bl func_801DAAB8
lbl_8004C77C:
/* 8004C77C 000483DC  7F C3 F3 78 */	mr r3, r30
/* 8004C780 000483E0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C784 000483E4  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004C788 000483E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C78C 000483EC  7C 08 03 A6 */	mtlr r0
/* 8004C790 000483F0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C794 000483F4  4E 80 00 20 */	blr
/* 8004C798 000483F8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C79C 000483FC  7C 08 02 A6 */	mflr r0
/* 8004C7A0 00048400  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C7A4 00048404  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C7A8 00048408  7C 7F 1B 78 */	mr r31, r3
/* 8004C7AC 0004840C  4B FF EA 09 */	bl func_8004B1B4
/* 8004C7B0 00048410  2C 03 00 00 */	cmpwi r3, 0
/* 8004C7B4 00048414  41 82 00 0C */	beq lbl_8004C7C0
/* 8004C7B8 00048418  80 03 0C 04 */	lwz r0, 0xc04(r3)
/* 8004C7BC 0004841C  90 1F 00 B4 */	stw r0, 0xb4(r31)
lbl_8004C7C0:
/* 8004C7C0 00048420  38 00 00 00 */	li r0, 0
/* 8004C7C4 00048424  7F E3 FB 78 */	mr r3, r31
/* 8004C7C8 00048428  90 1F 00 B0 */	stw r0, 0xb0(r31)
/* 8004C7CC 0004842C  48 00 00 19 */	bl func_8004C7E4
/* 8004C7D0 00048430  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C7D4 00048434  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C7D8 00048438  7C 08 03 A6 */	mtlr r0
/* 8004C7DC 0004843C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C7E0 00048440  4E 80 00 20 */	blr

.global func_8004C7E4
func_8004C7E4:
/* 8004C7E4 00048444  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C7E8 00048448  7C 08 02 A6 */	mflr r0
/* 8004C7EC 0004844C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C7F0 00048450  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C7F4 00048454  7C 7F 1B 78 */	mr r31, r3
/* 8004C7F8 00048458  93 C1 00 08 */	stw r30, 8(r1)
/* 8004C7FC 0004845C  80 C3 00 14 */	lwz r6, 0x14(r3)
/* 8004C800 00048460  80 A3 00 B0 */	lwz r5, 0xb0(r3)
/* 8004C804 00048464  80 86 00 04 */	lwz r4, 4(r6)
/* 8004C808 00048468  38 04 FF FF */	addi r0, r4, -1
/* 8004C80C 0004846C  7C 05 00 00 */	cmpw r5, r0
/* 8004C810 00048470  40 80 00 18 */	bge lbl_8004C828
/* 8004C814 00048474  38 05 00 01 */	addi r0, r5, 1
/* 8004C818 00048478  38 86 00 08 */	addi r4, r6, 8
/* 8004C81C 0004847C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8004C820 00048480  7F C4 02 14 */	add r30, r4, r0
/* 8004C824 00048484  48 00 00 10 */	b lbl_8004C834
lbl_8004C828:
/* 8004C828 00048488  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8004C82C 0004848C  38 86 00 08 */	addi r4, r6, 8
/* 8004C830 00048490  7F C4 02 14 */	add r30, r4, r0
lbl_8004C834:
/* 8004C834 00048494  1C 05 00 14 */	mulli r0, r5, 0x14
/* 8004C838 00048498  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004C83C 0004849C  7C 84 02 14 */	add r4, r4, r0
/* 8004C840 000484A0  90 83 00 18 */	stw r4, 0x18(r3)
/* 8004C844 000484A4  C0 04 00 10 */	lfs f0, 0x10(r4)
/* 8004C848 000484A8  FC 01 00 00 */	fcmpu cr0, f1, f0
/* 8004C84C 000484AC  40 82 00 30 */	bne lbl_8004C87C
/* 8004C850 000484B0  38 63 00 80 */	addi r3, r3, 0x80
/* 8004C854 000484B4  38 84 00 08 */	addi r4, r4, 8
/* 8004C858 000484B8  4B FF E5 09 */	bl func_8004AD60
/* 8004C85C 000484BC  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004C860 000484C0  7F E3 FB 78 */	mr r3, r31
/* 8004C864 000484C4  C0 04 00 00 */	lfs f0, 0(r4)
/* 8004C868 000484C8  D0 1F 00 7C */	stfs f0, 0x7c(r31)
/* 8004C86C 000484CC  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004C870 000484D0  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004C874 000484D4  7D 89 03 A6 */	mtctr r12
/* 8004C878 000484D8  4E 80 04 21 */	bctrl
lbl_8004C87C:
/* 8004C87C 000484DC  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004C880 000484E0  48 00 3B 09 */	bl func_80050388
/* 8004C884 000484E4  38 7F 00 40 */	addi r3, r31, 0x40
/* 8004C888 000484E8  48 00 43 59 */	bl func_80050BE0
/* 8004C88C 000484EC  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004C890 000484F0  38 9F 00 90 */	addi r4, r31, 0x90
/* 8004C894 000484F4  38 63 00 08 */	addi r3, r3, 8
/* 8004C898 000484F8  4B FF E4 5D */	bl func_8004ACF4
/* 8004C89C 000484FC  38 7E 00 08 */	addi r3, r30, 8
/* 8004C8A0 00048500  38 9F 00 A0 */	addi r4, r31, 0xa0
/* 8004C8A4 00048504  4B FF E4 51 */	bl func_8004ACF4
/* 8004C8A8 00048508  80 DF 00 18 */	lwz r6, 0x18(r31)
/* 8004C8AC 0004850C  38 7F 00 40 */	addi r3, r31, 0x40
/* 8004C8B0 00048510  38 9F 00 90 */	addi r4, r31, 0x90
/* 8004C8B4 00048514  38 BF 00 A0 */	addi r5, r31, 0xa0
/* 8004C8B8 00048518  C0 26 00 10 */	lfs f1, 0x10(r6)
/* 8004C8BC 0004851C  38 DF 00 80 */	addi r6, r31, 0x80
/* 8004C8C0 00048520  38 E0 00 00 */	li r7, 0
/* 8004C8C4 00048524  48 00 42 89 */	bl func_80050B4C
/* 8004C8C8 00048528  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004C8CC 0004852C  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004C8D0 00048530  38 DF 00 7C */	addi r6, r31, 0x7c
/* 8004C8D4 00048534  38 E0 00 00 */	li r7, 0
/* 8004C8D8 00048538  C0 24 00 10 */	lfs f1, 0x10(r4)
/* 8004C8DC 0004853C  38 A4 00 04 */	addi r5, r4, 4
/* 8004C8E0 00048540  48 00 3A 5D */	bl func_8005033C
/* 8004C8E4 00048544  80 7F 00 B0 */	lwz r3, 0xb0(r31)
/* 8004C8E8 00048548  38 00 00 01 */	li r0, 1
/* 8004C8EC 0004854C  98 1F 00 00 */	stb r0, 0(r31)
/* 8004C8F0 00048550  38 03 00 01 */	addi r0, r3, 1
/* 8004C8F4 00048554  90 1F 00 B0 */	stw r0, 0xb0(r31)
/* 8004C8F8 00048558  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C8FC 0004855C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004C900 00048560  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C904 00048564  7C 08 03 A6 */	mtlr r0
/* 8004C908 00048568  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C90C 0004856C  4E 80 00 20 */	blr
/* 8004C910 00048570  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004C914 00048574  7C 08 02 A6 */	mflr r0
/* 8004C918 00048578  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004C91C 0004857C  38 00 00 00 */	li r0, 0
/* 8004C920 00048580  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004C924 00048584  7C 7F 1B 78 */	mr r31, r3
/* 8004C928 00048588  98 03 00 00 */	stb r0, 0(r3)
/* 8004C92C 0004858C  38 63 00 40 */	addi r3, r3, 0x40
/* 8004C930 00048590  48 00 42 B1 */	bl func_80050BE0
/* 8004C934 00048594  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004C938 00048598  48 00 3A 51 */	bl func_80050388
/* 8004C93C 0004859C  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8004C940 000485A0  2C 03 00 00 */	cmpwi r3, 0
/* 8004C944 000485A4  41 82 00 0C */	beq lbl_8004C950
/* 8004C948 000485A8  38 80 00 01 */	li r4, 1
/* 8004C94C 000485AC  48 1A 9A 79 */	bl func_801F63C4
lbl_8004C950:
/* 8004C950 000485B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004C954 000485B4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004C958 000485B8  7C 08 03 A6 */	mtlr r0
/* 8004C95C 000485BC  38 21 00 10 */	addi r1, r1, 0x10
/* 8004C960 000485C0  4E 80 00 20 */	blr
/* 8004C964 000485C4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004C968 000485C8  7C 08 02 A6 */	mflr r0
/* 8004C96C 000485CC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004C970 000485D0  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8004C974 000485D4  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8004C978 000485D8  FF E0 08 90 */	fmr f31, f1
/* 8004C97C 000485DC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004C980 000485E0  7C 7F 1B 78 */	mr r31, r3
/* 8004C984 000485E4  88 03 00 00 */	lbz r0, 0(r3)
/* 8004C988 000485E8  2C 00 00 00 */	cmpwi r0, 0
/* 8004C98C 000485EC  41 82 00 A4 */	beq lbl_8004CA30
/* 8004C990 000485F0  81 83 00 78 */	lwz r12, 0x78(r3)
/* 8004C994 000485F4  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004C998 000485F8  7D 89 03 A6 */	mtctr r12
/* 8004C99C 000485FC  38 63 00 40 */	addi r3, r3, 0x40
/* 8004C9A0 00048600  4E 80 04 21 */	bctrl
/* 8004C9A4 00048604  81 9F 00 3C */	lwz r12, 0x3c(r31)
/* 8004C9A8 00048608  FC 20 F8 90 */	fmr f1, f31
/* 8004C9AC 0004860C  38 7F 00 1C */	addi r3, r31, 0x1c
/* 8004C9B0 00048610  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004C9B4 00048614  7D 89 03 A6 */	mtctr r12
/* 8004C9B8 00048618  4E 80 04 21 */	bctrl
/* 8004C9BC 0004861C  2C 03 00 00 */	cmpwi r3, 0
/* 8004C9C0 00048620  40 82 00 38 */	bne lbl_8004C9F8
/* 8004C9C4 00048624  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004C9C8 00048628  80 9F 00 B0 */	lwz r4, 0xb0(r31)
/* 8004C9CC 0004862C  80 03 00 04 */	lwz r0, 4(r3)
/* 8004C9D0 00048630  7C 04 00 00 */	cmpw r4, r0
/* 8004C9D4 00048634  41 80 00 1C */	blt lbl_8004C9F0
/* 8004C9D8 00048638  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004C9DC 0004863C  7F E3 FB 78 */	mr r3, r31
/* 8004C9E0 00048640  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 8004C9E4 00048644  7D 89 03 A6 */	mtctr r12
/* 8004C9E8 00048648  4E 80 04 21 */	bctrl
/* 8004C9EC 0004864C  48 00 00 0C */	b lbl_8004C9F8
lbl_8004C9F0:
/* 8004C9F0 00048650  7F E3 FB 78 */	mr r3, r31
/* 8004C9F4 00048654  4B FF FD F1 */	bl func_8004C7E4
lbl_8004C9F8:
/* 8004C9F8 00048658  38 7F 00 80 */	addi r3, r31, 0x80
/* 8004C9FC 0004865C  38 81 00 08 */	addi r4, r1, 8
/* 8004CA00 00048660  4B FF E3 61 */	bl func_8004AD60
/* 8004CA04 00048664  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8004CA08 00048668  2C 03 00 00 */	cmpwi r3, 0
/* 8004CA0C 0004866C  41 82 00 24 */	beq lbl_8004CA30
/* 8004CA10 00048670  38 81 00 08 */	addi r4, r1, 8
/* 8004CA14 00048674  48 1A 9A C9 */	bl func_801F64DC
/* 8004CA18 00048678  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8004CA1C 0004867C  C0 3F 00 7C */	lfs f1, 0x7c(r31)
/* 8004CA20 00048680  48 1A 9B 69 */	bl func_801F6588
/* 8004CA24 00048684  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8004CA28 00048688  38 80 00 01 */	li r4, 1
/* 8004CA2C 0004868C  48 1A 99 99 */	bl func_801F63C4
lbl_8004CA30:
/* 8004CA30 00048690  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8004CA34 00048694  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004CA38 00048698  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8004CA3C 0004869C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004CA40 000486A0  7C 08 03 A6 */	mtlr r0
/* 8004CA44 000486A4  38 21 00 30 */	addi r1, r1, 0x30
/* 8004CA48 000486A8  4E 80 00 20 */	blr
/* 8004CA4C 000486AC  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004CA50 000486B0  39 00 00 00 */	li r8, 0
/* 8004CA54 000486B4  C0 22 83 F8 */	lfs f1, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004CA58 000486B8  80 E4 00 04 */	lwz r7, 4(r4)
/* 8004CA5C 000486BC  2C 87 00 00 */	cmpwi cr1, r7, 0
/* 8004CA60 000486C0  4C 85 00 20 */	blelr cr1
/* 8004CA64 000486C4  2C 07 00 08 */	cmpwi r7, 8
/* 8004CA68 000486C8  38 A7 FF F8 */	addi r5, r7, -8
/* 8004CA6C 000486CC  40 81 00 94 */	ble lbl_8004CB00
/* 8004CA70 000486D0  38 C0 00 00 */	li r6, 0
/* 8004CA74 000486D4  41 84 00 18 */	blt cr1, lbl_8004CA8C
/* 8004CA78 000486D8  3C 80 80 00 */	lis r4, 0x7FFFFFFE@ha
/* 8004CA7C 000486DC  38 04 FF FE */	addi r0, r4, 0x7FFFFFFE@l
/* 8004CA80 000486E0  7C 07 00 00 */	cmpw r7, r0
/* 8004CA84 000486E4  41 81 00 08 */	bgt lbl_8004CA8C
/* 8004CA88 000486E8  38 C0 00 01 */	li r6, 1
lbl_8004CA8C:
/* 8004CA8C 000486EC  2C 06 00 00 */	cmpwi r6, 0
/* 8004CA90 000486F0  41 82 00 70 */	beq lbl_8004CB00
/* 8004CA94 000486F4  38 05 00 07 */	addi r0, r5, 7
/* 8004CA98 000486F8  38 80 00 00 */	li r4, 0
/* 8004CA9C 000486FC  54 00 E8 FE */	srwi r0, r0, 3
/* 8004CAA0 00048700  7C 09 03 A6 */	mtctr r0
/* 8004CAA4 00048704  2C 05 00 00 */	cmpwi r5, 0
/* 8004CAA8 00048708  40 81 00 58 */	ble lbl_8004CB00
lbl_8004CAAC:
/* 8004CAAC 0004870C  80 03 00 14 */	lwz r0, 0x14(r3)
/* 8004CAB0 00048710  39 08 00 08 */	addi r8, r8, 8
/* 8004CAB4 00048714  7C A0 22 14 */	add r5, r0, r4
/* 8004CAB8 00048718  38 84 00 A0 */	addi r4, r4, 0xa0
/* 8004CABC 0004871C  C0 45 00 18 */	lfs f2, 0x18(r5)
/* 8004CAC0 00048720  C0 05 00 2C */	lfs f0, 0x2c(r5)
/* 8004CAC4 00048724  EC 21 10 2A */	fadds f1, f1, f2
/* 8004CAC8 00048728  C0 C5 00 40 */	lfs f6, 0x40(r5)
/* 8004CACC 0004872C  C0 A5 00 54 */	lfs f5, 0x54(r5)
/* 8004CAD0 00048730  C0 85 00 68 */	lfs f4, 0x68(r5)
/* 8004CAD4 00048734  EC 21 00 2A */	fadds f1, f1, f0
/* 8004CAD8 00048738  C0 65 00 7C */	lfs f3, 0x7c(r5)
/* 8004CADC 0004873C  C0 45 00 90 */	lfs f2, 0x90(r5)
/* 8004CAE0 00048740  C0 05 00 A4 */	lfs f0, 0xa4(r5)
/* 8004CAE4 00048744  EC 21 30 2A */	fadds f1, f1, f6
/* 8004CAE8 00048748  EC 21 28 2A */	fadds f1, f1, f5
/* 8004CAEC 0004874C  EC 21 20 2A */	fadds f1, f1, f4
/* 8004CAF0 00048750  EC 21 18 2A */	fadds f1, f1, f3
/* 8004CAF4 00048754  EC 21 10 2A */	fadds f1, f1, f2
/* 8004CAF8 00048758  EC 21 00 2A */	fadds f1, f1, f0
/* 8004CAFC 0004875C  42 00 FF B0 */	bdnz lbl_8004CAAC
lbl_8004CB00:
/* 8004CB00 00048760  80 A3 00 14 */	lwz r5, 0x14(r3)
/* 8004CB04 00048764  1C 88 00 14 */	mulli r4, r8, 0x14
/* 8004CB08 00048768  80 65 00 04 */	lwz r3, 4(r5)
/* 8004CB0C 0004876C  7C 08 18 50 */	subf r0, r8, r3
/* 8004CB10 00048770  7C 09 03 A6 */	mtctr r0
/* 8004CB14 00048774  7C 08 18 00 */	cmpw r8, r3
/* 8004CB18 00048778  4C 80 00 20 */	bgelr
lbl_8004CB1C:
/* 8004CB1C 0004877C  7C 65 22 14 */	add r3, r5, r4
/* 8004CB20 00048780  38 84 00 14 */	addi r4, r4, 0x14
/* 8004CB24 00048784  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 8004CB28 00048788  EC 21 00 2A */	fadds f1, f1, f0
/* 8004CB2C 0004878C  42 00 FF F0 */	bdnz lbl_8004CB1C
/* 8004CB30 00048790  4E 80 00 20 */	blr

.global func_8004CB34
func_8004CB34:
/* 8004CB34 00048794  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004CB38 00048798  7C 08 02 A6 */	mflr r0
/* 8004CB3C 0004879C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004CB40 000487A0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004CB44 000487A4  7C 7F 1B 78 */	mr r31, r3
/* 8004CB48 000487A8  4B FF E6 09 */	bl func_8004B150
/* 8004CB4C 000487AC  80 BF 00 0C */	lwz r5, 0xc(r31)
/* 8004CB50 000487B0  3C C0 80 41 */	lis r6, lbl_8040A7AC@ha
/* 8004CB54 000487B4  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 8004CB58 000487B8  38 80 00 00 */	li r4, 0
/* 8004CB5C 000487BC  38 03 FF FF */	addi r0, r3, 0x0000FFFF@l
/* 8004CB60 000487C0  38 C6 A7 AC */	addi r6, r6, lbl_8040A7AC@l
/* 8004CB64 000487C4  38 A5 00 08 */	addi r5, r5, 8
/* 8004CB68 000487C8  90 DF 00 10 */	stw r6, 0x10(r31)
/* 8004CB6C 000487CC  7F E3 FB 78 */	mr r3, r31
/* 8004CB70 000487D0  90 BF 00 14 */	stw r5, 0x14(r31)
/* 8004CB74 000487D4  90 9F 00 18 */	stw r4, 0x18(r31)
/* 8004CB78 000487D8  B0 1F 00 1C */	sth r0, 0x1c(r31)
/* 8004CB7C 000487DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004CB80 000487E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004CB84 000487E4  7C 08 03 A6 */	mtlr r0
/* 8004CB88 000487E8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004CB8C 000487EC  4E 80 00 20 */	blr
/* 8004CB90 000487F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004CB94 000487F4  7C 08 02 A6 */	mflr r0
/* 8004CB98 000487F8  2C 03 00 00 */	cmpwi r3, 0
/* 8004CB9C 000487FC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004CBA0 00048800  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004CBA4 00048804  7C 9F 23 78 */	mr r31, r4
/* 8004CBA8 00048808  93 C1 00 08 */	stw r30, 8(r1)
/* 8004CBAC 0004880C  7C 7E 1B 78 */	mr r30, r3
/* 8004CBB0 00048810  41 82 00 60 */	beq lbl_8004CC10
/* 8004CBB4 00048814  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8004CBB8 00048818  3C 80 80 41 */	lis r4, lbl_8040A7AC@ha
/* 8004CBBC 0004881C  38 84 A7 AC */	addi r4, r4, lbl_8040A7AC@l
/* 8004CBC0 00048820  2C 00 00 00 */	cmpwi r0, 0
/* 8004CBC4 00048824  90 83 00 10 */	stw r4, 0x10(r3)
/* 8004CBC8 00048828  41 82 00 20 */	beq lbl_8004CBE8
/* 8004CBCC 0004882C  41 82 00 1C */	beq lbl_8004CBE8
/* 8004CBD0 00048830  7C 03 03 78 */	mr r3, r0
/* 8004CBD4 00048834  38 80 00 01 */	li r4, 1
/* 8004CBD8 00048838  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004CBDC 0004883C  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004CBE0 00048840  7D 89 03 A6 */	mtctr r12
/* 8004CBE4 00048844  4E 80 04 21 */	bctrl
lbl_8004CBE8:
/* 8004CBE8 00048848  3C 80 00 01 */	lis r4, 0x0000FFFF@ha
/* 8004CBEC 0004884C  7F C3 F3 78 */	mr r3, r30
/* 8004CBF0 00048850  38 04 FF FF */	addi r0, r4, 0x0000FFFF@l
/* 8004CBF4 00048854  B0 1E 00 1C */	sth r0, 0x1c(r30)
/* 8004CBF8 00048858  38 80 00 00 */	li r4, 0
/* 8004CBFC 0004885C  4B FF E5 79 */	bl func_8004B174
/* 8004CC00 00048860  2C 1F 00 00 */	cmpwi r31, 0
/* 8004CC04 00048864  40 81 00 0C */	ble lbl_8004CC10
/* 8004CC08 00048868  7F C3 F3 78 */	mr r3, r30
/* 8004CC0C 0004886C  48 18 DE AD */	bl func_801DAAB8
lbl_8004CC10:
/* 8004CC10 00048870  7F C3 F3 78 */	mr r3, r30
/* 8004CC14 00048874  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004CC18 00048878  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004CC1C 0004887C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004CC20 00048880  7C 08 03 A6 */	mtlr r0
/* 8004CC24 00048884  38 21 00 10 */	addi r1, r1, 0x10
/* 8004CC28 00048888  4E 80 00 20 */	blr
/* 8004CC2C 0004888C  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 8004CC30 00048890  7C 08 02 A6 */	mflr r0
/* 8004CC34 00048894  90 01 00 64 */	stw r0, 0x64(r1)
/* 8004CC38 00048898  DB E1 00 50 */	stfd f31, 0x50(r1)
/* 8004CC3C 0004889C  F3 E1 00 58 */	psq_st f31, 88(r1), 0, qr0
/* 8004CC40 000488A0  93 E1 00 4C */	stw r31, 0x4c(r1)
/* 8004CC44 000488A4  7C 7F 1B 78 */	mr r31, r3
/* 8004CC48 000488A8  93 C1 00 48 */	stw r30, 0x48(r1)
/* 8004CC4C 000488AC  93 A1 00 44 */	stw r29, 0x44(r1)
/* 8004CC50 000488B0  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004CC54 000488B4  80 04 00 2C */	lwz r0, 0x2c(r4)
/* 8004CC58 000488B8  2C 00 00 00 */	cmpwi r0, 0
/* 8004CC5C 000488BC  41 82 02 F8 */	beq lbl_8004CF54
/* 8004CC60 000488C0  80 63 00 04 */	lwz r3, 4(r3)
/* 8004CC64 000488C4  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8004CC68 000488C8  2C 00 00 00 */	cmpwi r0, 0
/* 8004CC6C 000488CC  41 82 02 E8 */	beq lbl_8004CF54
/* 8004CC70 000488D0  4B FE 64 19 */	bl func_80033088
/* 8004CC74 000488D4  38 80 00 00 */	li r4, 0
/* 8004CC78 000488D8  4B FE 6F 05 */	bl func_80033B7C
/* 8004CC7C 000488DC  2C 03 00 00 */	cmpwi r3, 0
/* 8004CC80 000488E0  41 82 02 D4 */	beq lbl_8004CF54
/* 8004CC84 000488E4  4B FE 8C ED */	bl func_80035970
/* 8004CC88 000488E8  C3 E2 83 F8 */	lfs f31, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004CC8C 000488EC  7C 7E 1B 78 */	mr r30, r3
/* 8004CC90 000488F0  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004CC94 000488F4  D3 FF 00 44 */	stfs f31, 0x44(r31)
/* 8004CC98 000488F8  80 03 00 00 */	lwz r0, 0(r3)
/* 8004CC9C 000488FC  54 00 07 7B */	rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8004CCA0 00048900  41 82 00 50 */	beq lbl_8004CCF0
/* 8004CCA4 00048904  48 1D 6B 8D */	bl func_80223830
/* 8004CCA8 00048908  3C 80 00 03 */	lis r4, 0x000343FD@ha
/* 8004CCAC 0004890C  80 A3 00 00 */	lwz r5, 0(r3)
/* 8004CCB0 00048910  38 84 43 FD */	addi r4, r4, 0x000343FD@l
/* 8004CCB4 00048914  3C 00 43 30 */	lis r0, 0x4330
/* 8004CCB8 00048918  7C 85 21 D6 */	mullw r4, r5, r4
/* 8004CCBC 0004891C  90 01 00 30 */	stw r0, 0x30(r1)
/* 8004CCC0 00048920  C8 62 83 F0 */	lfd f3, lbl_806409F0-_SDA2_BASE_(r2)
/* 8004CCC4 00048924  C0 22 84 0C */	lfs f1, lbl_80640A0C-_SDA2_BASE_(r2)
/* 8004CCC8 00048928  C0 02 84 10 */	lfs f0, lbl_80640A10-_SDA2_BASE_(r2)
/* 8004CCCC 0004892C  3C 84 00 27 */	addis r4, r4, 0x27
/* 8004CCD0 00048930  38 84 9E C3 */	addi r4, r4, -24893
/* 8004CCD4 00048934  54 80 84 3E */	srwi r0, r4, 0x10
/* 8004CCD8 00048938  90 83 00 00 */	stw r4, 0(r3)
/* 8004CCDC 0004893C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004CCE0 00048940  C8 41 00 30 */	lfd f2, 0x30(r1)
/* 8004CCE4 00048944  EC 42 18 28 */	fsubs f2, f2, f3
/* 8004CCE8 00048948  EC 22 08 24 */	fdivs f1, f2, f1
/* 8004CCEC 0004894C  EF E0 00 72 */	fmuls f31, f0, f1
lbl_8004CCF0:
/* 8004CCF0 00048950  C0 1E 01 C4 */	lfs f0, 0x1c4(r30)
/* 8004CCF4 00048954  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8004CCF8 00048958  C0 1E 01 C8 */	lfs f0, 0x1c8(r30)
/* 8004CCFC 0004895C  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 8004CD00 00048960  C0 1E 01 CC */	lfs f0, 0x1cc(r30)
/* 8004CD04 00048964  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 8004CD08 00048968  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8004CD0C 0004896C  80 03 00 00 */	lwz r0, 0(r3)
/* 8004CD10 00048970  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8004CD14 00048974  41 82 01 20 */	beq lbl_8004CE34
/* 8004CD18 00048978  7F E3 FB 78 */	mr r3, r31
/* 8004CD1C 0004897C  4B FF E4 99 */	bl func_8004B1B4
/* 8004CD20 00048980  83 A3 0C 04 */	lwz r29, 0xc04(r3)
/* 8004CD24 00048984  38 61 00 24 */	addi r3, r1, 0x24
/* 8004CD28 00048988  38 9E 01 AC */	addi r4, r30, 0x1ac
/* 8004CD2C 0004898C  38 A1 00 18 */	addi r5, r1, 0x18
/* 8004CD30 00048990  48 22 FF B9 */	bl func_8027CCE8
/* 8004CD34 00048994  38 61 00 18 */	addi r3, r1, 0x18
/* 8004CD38 00048998  7C 64 1B 78 */	mr r4, r3
/* 8004CD3C 0004899C  48 22 FF ED */	bl func_8027CD28
/* 8004CD40 000489A0  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004CD44 000489A4  7F A3 EB 78 */	mr r3, r29
/* 8004CD48 000489A8  38 A1 00 24 */	addi r5, r1, 0x24
/* 8004CD4C 000489AC  38 C1 00 18 */	addi r6, r1, 0x18
/* 8004CD50 000489B0  80 84 00 2C */	lwz r4, 0x2c(r4)
/* 8004CD54 000489B4  38 E0 00 00 */	li r7, 0
/* 8004CD58 000489B8  48 1A BB 95 */	bl func_801F88EC
/* 8004CD5C 000489BC  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8004CD60 000489C0  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004CD64 000489C4  B0 1F 00 1C */	sth r0, 0x1c(r31)
/* 8004CD68 000489C8  C0 02 84 14 */	lfs f0, lbl_80640A14-_SDA2_BASE_(r2)
/* 8004CD6C 000489CC  C0 24 00 18 */	lfs f1, 0x18(r4)
/* 8004CD70 000489D0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004CD74 000489D4  40 80 00 10 */	bge lbl_8004CD84
/* 8004CD78 000489D8  C0 02 84 18 */	lfs f0, lbl_80640A18-_SDA2_BASE_(r2)
/* 8004CD7C 000489DC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004CD80 000489E0  41 81 00 44 */	bgt lbl_8004CDC4
lbl_8004CD84:
/* 8004CD84 000489E4  C0 24 00 1C */	lfs f1, 0x1c(r4)
/* 8004CD88 000489E8  C0 02 84 14 */	lfs f0, lbl_80640A14-_SDA2_BASE_(r2)
/* 8004CD8C 000489EC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004CD90 000489F0  40 80 00 10 */	bge lbl_8004CDA0
/* 8004CD94 000489F4  C0 02 84 18 */	lfs f0, lbl_80640A18-_SDA2_BASE_(r2)
/* 8004CD98 000489F8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004CD9C 000489FC  41 81 00 28 */	bgt lbl_8004CDC4
lbl_8004CDA0:
/* 8004CDA0 00048A00  C0 24 00 1C */	lfs f1, 0x1c(r4)
/* 8004CDA4 00048A04  7F A3 EB 78 */	mr r3, r29
/* 8004CDA8 00048A08  C0 04 00 18 */	lfs f0, 0x18(r4)
/* 8004CDAC 00048A0C  38 A1 00 10 */	addi r5, r1, 0x10
/* 8004CDB0 00048A10  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8004CDB4 00048A14  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8004CDB8 00048A18  A0 1F 00 1C */	lhz r0, 0x1c(r31)
/* 8004CDBC 00048A1C  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8004CDC0 00048A20  48 1A BD B1 */	bl func_801F8B70
lbl_8004CDC4:
/* 8004CDC4 00048A24  C0 02 83 F8 */	lfs f0, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004CDC8 00048A28  38 00 00 FF */	li r0, 0xff
/* 8004CDCC 00048A2C  98 1F 00 34 */	stb r0, 0x34(r31)
/* 8004CDD0 00048A30  7F E3 FB 78 */	mr r3, r31
/* 8004CDD4 00048A34  D0 1F 00 20 */	stfs f0, 0x20(r31)
/* 8004CDD8 00048A38  D0 1F 00 24 */	stfs f0, 0x24(r31)
/* 8004CDDC 00048A3C  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004CDE0 00048A40  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004CDE4 00048A44  7D 89 03 A6 */	mtctr r12
/* 8004CDE8 00048A48  4E 80 04 21 */	bctrl
/* 8004CDEC 00048A4C  C0 02 84 1C */	lfs f0, lbl_80640A1C-_SDA2_BASE_(r2)
/* 8004CDF0 00048A50  7F E3 FB 78 */	mr r3, r31
/* 8004CDF4 00048A54  EC 00 00 72 */	fmuls f0, f0, f1
/* 8004CDF8 00048A58  D0 1F 00 38 */	stfs f0, 0x38(r31)
/* 8004CDFC 00048A5C  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004CE00 00048A60  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004CE04 00048A64  7D 89 03 A6 */	mtctr r12
/* 8004CE08 00048A68  4E 80 04 21 */	bctrl
/* 8004CE0C 00048A6C  D0 3F 00 40 */	stfs f1, 0x40(r31)
/* 8004CE10 00048A70  7F E3 FB 78 */	mr r3, r31
/* 8004CE14 00048A74  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004CE18 00048A78  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004CE1C 00048A7C  7D 89 03 A6 */	mtctr r12
/* 8004CE20 00048A80  4E 80 04 21 */	bctrl
/* 8004CE24 00048A84  C0 1F 00 38 */	lfs f0, 0x38(r31)
/* 8004CE28 00048A88  EC 01 00 28 */	fsubs f0, f1, f0
/* 8004CE2C 00048A8C  D0 1F 00 3C */	stfs f0, 0x3c(r31)
/* 8004CE30 00048A90  48 00 01 24 */	b lbl_8004CF54
lbl_8004CE34:
/* 8004CE34 00048A94  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004CE38 00048A98  2C 03 00 00 */	cmpwi r3, 0
/* 8004CE3C 00048A9C  41 82 00 1C */	beq lbl_8004CE58
/* 8004CE40 00048AA0  41 82 00 18 */	beq lbl_8004CE58
/* 8004CE44 00048AA4  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004CE48 00048AA8  38 80 00 01 */	li r4, 1
/* 8004CE4C 00048AAC  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004CE50 00048AB0  7D 89 03 A6 */	mtctr r12
/* 8004CE54 00048AB4  4E 80 04 21 */	bctrl
lbl_8004CE58:
/* 8004CE58 00048AB8  C0 21 00 28 */	lfs f1, 0x28(r1)
/* 8004CE5C 00048ABC  C0 02 84 20 */	lfs f0, lbl_80640A20-_SDA2_BASE_(r2)
/* 8004CE60 00048AC0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004CE64 00048AC4  40 80 00 0C */	bge lbl_8004CE70
/* 8004CE68 00048AC8  C0 02 84 24 */	lfs f0, lbl_80640A24-_SDA2_BASE_(r2)
/* 8004CE6C 00048ACC  D0 01 00 28 */	stfs f0, 0x28(r1)
lbl_8004CE70:
/* 8004CE70 00048AD0  48 18 DC B9 */	bl func_801DAB28
/* 8004CE74 00048AD4  2C 03 00 00 */	cmpwi r3, 0
/* 8004CE78 00048AD8  41 82 00 14 */	beq lbl_8004CE8C
/* 8004CE7C 00048ADC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004CE80 00048AE0  38 80 00 78 */	li r4, 0x78
/* 8004CE84 00048AE4  48 18 DE 11 */	bl func_801DAC94
/* 8004CE88 00048AE8  48 00 00 08 */	b lbl_8004CE90
lbl_8004CE8C:
/* 8004CE8C 00048AEC  38 60 00 00 */	li r3, 0
lbl_8004CE90:
/* 8004CE90 00048AF0  2C 03 00 00 */	cmpwi r3, 0
/* 8004CE94 00048AF4  41 82 00 10 */	beq lbl_8004CEA4
/* 8004CE98 00048AF8  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004CE9C 00048AFC  80 84 00 2C */	lwz r4, 0x2c(r4)
/* 8004CEA0 00048B00  48 1D 2C A5 */	bl func_8021FB44
lbl_8004CEA4:
/* 8004CEA4 00048B04  90 7F 00 18 */	stw r3, 0x18(r31)
/* 8004CEA8 00048B08  3C 80 80 49 */	lis r4, lbl_80493614@ha
/* 8004CEAC 00048B0C  38 84 36 14 */	addi r4, r4, lbl_80493614@l
/* 8004CEB0 00048B10  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 8004CEB4 00048B14  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 8004CEB8 00048B18  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 8004CEBC 00048B1C  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 8004CEC0 00048B20  C0 01 00 2C */	lfs f0, 0x2c(r1)
/* 8004CEC4 00048B24  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 8004CEC8 00048B28  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004CECC 00048B2C  48 1D 36 39 */	bl func_80220504
/* 8004CED0 00048B30  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004CED4 00048B34  7F E3 FB 78 */	mr r3, r31
/* 8004CED8 00048B38  D3 E4 00 44 */	stfs f31, 0x44(r4)
/* 8004CEDC 00048B3C  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 8004CEE0 00048B40  80 9F 00 18 */	lwz r4, 0x18(r31)
/* 8004CEE4 00048B44  C0 25 00 1C */	lfs f1, 0x1c(r5)
/* 8004CEE8 00048B48  C0 05 00 18 */	lfs f0, 0x18(r5)
/* 8004CEEC 00048B4C  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004CEF0 00048B50  D0 04 00 48 */	stfs f0, 0x48(r4)
/* 8004CEF4 00048B54  D0 24 00 4C */	stfs f1, 0x4c(r4)
/* 8004CEF8 00048B58  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004CEFC 00048B5C  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004CF00 00048B60  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004CF04 00048B64  7D 89 03 A6 */	mtctr r12
/* 8004CF08 00048B68  4E 80 04 21 */	bctrl
/* 8004CF0C 00048B6C  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8004CF10 00048B70  D0 23 00 74 */	stfs f1, 0x74(r3)
/* 8004CF14 00048B74  83 DF 00 18 */	lwz r30, 0x18(r31)
/* 8004CF18 00048B78  81 9E 00 0C */	lwz r12, 0xc(r30)
/* 8004CF1C 00048B7C  7F C3 F3 78 */	mr r3, r30
/* 8004CF20 00048B80  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004CF24 00048B84  7D 89 03 A6 */	mtctr r12
/* 8004CF28 00048B88  4E 80 04 21 */	bctrl
/* 8004CF2C 00048B8C  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 8004CF30 00048B90  98 7E 00 08 */	stb r3, 8(r30)
/* 8004CF34 00048B94  41 82 00 20 */	beq lbl_8004CF54
/* 8004CF38 00048B98  83 DE 00 04 */	lwz r30, 4(r30)
/* 8004CF3C 00048B9C  57 C3 86 3E */	rlwinm r3, r30, 0x10, 0x18, 0x1f
/* 8004CF40 00048BA0  48 1E E1 19 */	bl func_8023B058
/* 8004CF44 00048BA4  2C 03 00 00 */	cmpwi r3, 0
/* 8004CF48 00048BA8  41 82 00 0C */	beq lbl_8004CF54
/* 8004CF4C 00048BAC  7F C4 F3 78 */	mr r4, r30
/* 8004CF50 00048BB0  48 1E E4 69 */	bl func_8023B3B8
lbl_8004CF54:
/* 8004CF54 00048BB4  E3 E1 00 58 */	psq_l f31, 88(r1), 0, qr0
/* 8004CF58 00048BB8  80 01 00 64 */	lwz r0, 0x64(r1)
/* 8004CF5C 00048BBC  CB E1 00 50 */	lfd f31, 0x50(r1)
/* 8004CF60 00048BC0  83 E1 00 4C */	lwz r31, 0x4c(r1)
/* 8004CF64 00048BC4  83 C1 00 48 */	lwz r30, 0x48(r1)
/* 8004CF68 00048BC8  83 A1 00 44 */	lwz r29, 0x44(r1)
/* 8004CF6C 00048BCC  7C 08 03 A6 */	mtlr r0
/* 8004CF70 00048BD0  38 21 00 60 */	addi r1, r1, 0x60
/* 8004CF74 00048BD4  4E 80 00 20 */	blr
/* 8004CF78 00048BD8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004CF7C 00048BDC  7C 08 02 A6 */	mflr r0
/* 8004CF80 00048BE0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004CF84 00048BE4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004CF88 00048BE8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004CF8C 00048BEC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004CF90 00048BF0  7C 7D 1B 78 */	mr r29, r3
/* 8004CF94 00048BF4  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004CF98 00048BF8  80 04 00 2C */	lwz r0, 0x2c(r4)
/* 8004CF9C 00048BFC  2C 00 00 00 */	cmpwi r0, 0
/* 8004CFA0 00048C00  41 82 00 A8 */	beq lbl_8004D048
/* 8004CFA4 00048C04  80 04 00 00 */	lwz r0, 0(r4)
/* 8004CFA8 00048C08  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 8004CFAC 00048C0C  41 82 00 28 */	beq lbl_8004CFD4
/* 8004CFB0 00048C10  A0 03 00 1C */	lhz r0, 0x1c(r3)
/* 8004CFB4 00048C14  28 00 FF FF */	cmplwi r0, 0xffff
/* 8004CFB8 00048C18  41 82 00 90 */	beq lbl_8004D048
/* 8004CFBC 00048C1C  4B FF E1 F9 */	bl func_8004B1B4
/* 8004CFC0 00048C20  A0 1D 00 1C */	lhz r0, 0x1c(r29)
/* 8004CFC4 00048C24  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004CFC8 00048C28  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8004CFCC 00048C2C  48 1A BB F9 */	bl func_801F8BC4
/* 8004CFD0 00048C30  48 00 00 78 */	b lbl_8004D048
lbl_8004CFD4:
/* 8004CFD4 00048C34  83 E3 00 18 */	lwz r31, 0x18(r3)
/* 8004CFD8 00048C38  88 1F 00 08 */	lbz r0, 8(r31)
/* 8004CFDC 00048C3C  2C 00 00 00 */	cmpwi r0, 0
/* 8004CFE0 00048C40  41 82 00 3C */	beq lbl_8004D01C
/* 8004CFE4 00048C44  83 DF 00 04 */	lwz r30, 4(r31)
/* 8004CFE8 00048C48  57 C3 86 3E */	rlwinm r3, r30, 0x10, 0x18, 0x1f
/* 8004CFEC 00048C4C  48 1E E0 6D */	bl func_8023B058
/* 8004CFF0 00048C50  2C 03 00 00 */	cmpwi r3, 0
/* 8004CFF4 00048C54  41 82 00 0C */	beq lbl_8004D000
/* 8004CFF8 00048C58  7F C4 F3 78 */	mr r4, r30
/* 8004CFFC 00048C5C  48 1E E4 25 */	bl func_8023B420
lbl_8004D000:
/* 8004D000 00048C60  81 9F 00 0C */	lwz r12, 0xc(r31)
/* 8004D004 00048C64  7F E3 FB 78 */	mr r3, r31
/* 8004D008 00048C68  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8004D00C 00048C6C  7D 89 03 A6 */	mtctr r12
/* 8004D010 00048C70  4E 80 04 21 */	bctrl
/* 8004D014 00048C74  38 00 00 00 */	li r0, 0
/* 8004D018 00048C78  98 1F 00 08 */	stb r0, 8(r31)
lbl_8004D01C:
/* 8004D01C 00048C7C  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8004D020 00048C80  2C 03 00 00 */	cmpwi r3, 0
/* 8004D024 00048C84  41 82 00 24 */	beq lbl_8004D048
/* 8004D028 00048C88  41 82 00 18 */	beq lbl_8004D040
/* 8004D02C 00048C8C  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004D030 00048C90  38 80 00 01 */	li r4, 1
/* 8004D034 00048C94  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D038 00048C98  7D 89 03 A6 */	mtctr r12
/* 8004D03C 00048C9C  4E 80 04 21 */	bctrl
lbl_8004D040:
/* 8004D040 00048CA0  38 00 00 00 */	li r0, 0
/* 8004D044 00048CA4  90 1D 00 18 */	stw r0, 0x18(r29)
lbl_8004D048:
/* 8004D048 00048CA8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004D04C 00048CAC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004D050 00048CB0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004D054 00048CB4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004D058 00048CB8  7C 08 03 A6 */	mtlr r0
/* 8004D05C 00048CBC  38 21 00 20 */	addi r1, r1, 0x20
/* 8004D060 00048CC0  4E 80 00 20 */	blr
/* 8004D064 00048CC4  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8004D068 00048CC8  7C 08 02 A6 */	mflr r0
/* 8004D06C 00048CCC  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004D070 00048CD0  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8004D074 00048CD4  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8004D078 00048CD8  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 8004D07C 00048CDC  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 8004D080 00048CE0  FF C0 08 90 */	fmr f30, f1
/* 8004D084 00048CE4  C3 E2 84 28 */	lfs f31, lbl_80640A28-_SDA2_BASE_(r2)
/* 8004D088 00048CE8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004D08C 00048CEC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004D090 00048CF0  7C 7E 1B 78 */	mr r30, r3
/* 8004D094 00048CF4  C0 03 00 44 */	lfs f0, 0x44(r3)
/* 8004D098 00048CF8  EC 00 08 2A */	fadds f0, f0, f1
/* 8004D09C 00048CFC  D0 03 00 44 */	stfs f0, 0x44(r3)
/* 8004D0A0 00048D00  4B FF E1 15 */	bl func_8004B1B4
/* 8004D0A4 00048D04  83 E3 0C 04 */	lwz r31, 0xc04(r3)
/* 8004D0A8 00048D08  2C 1F 00 00 */	cmpwi r31, 0
/* 8004D0AC 00048D0C  41 82 01 28 */	beq lbl_8004D1D4
/* 8004D0B0 00048D10  A0 9E 00 1C */	lhz r4, 0x1c(r30)
/* 8004D0B4 00048D14  28 04 FF FF */	cmplwi r4, 0xffff
/* 8004D0B8 00048D18  41 82 01 1C */	beq lbl_8004D1D4
/* 8004D0BC 00048D1C  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 8004D0C0 00048D20  80 63 00 00 */	lwz r3, 0(r3)
/* 8004D0C4 00048D24  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 8004D0C8 00048D28  41 82 01 0C */	beq lbl_8004D1D4
/* 8004D0CC 00048D2C  54 60 07 BD */	rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 8004D0D0 00048D30  41 82 00 34 */	beq lbl_8004D104
/* 8004D0D4 00048D34  C0 62 84 2C */	lfs f3, lbl_80640A2C-_SDA2_BASE_(r2)
/* 8004D0D8 00048D38  EC 3F 07 B2 */	fmuls f1, f31, f30
/* 8004D0DC 00048D3C  C0 4D 86 C8 */	lfs f2, lbl_8063D988-_SDA_BASE_(r13)
/* 8004D0E0 00048D40  7F E3 FB 78 */	mr r3, r31
/* 8004D0E4 00048D44  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 8004D0E8 00048D48  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 8004D0EC 00048D4C  EC 43 00 B2 */	fmuls f2, f3, f2
/* 8004D0F0 00048D50  38 BE 00 20 */	addi r5, r30, 0x20
/* 8004D0F4 00048D54  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8004D0F8 00048D58  EC 00 08 2A */	fadds f0, f0, f1
/* 8004D0FC 00048D5C  D0 1E 00 24 */	stfs f0, 0x24(r30)
/* 8004D100 00048D60  48 1A BA 41 */	bl func_801F8B40
lbl_8004D104:
/* 8004D104 00048D64  C0 3E 00 38 */	lfs f1, 0x38(r30)
/* 8004D108 00048D68  C0 1E 00 44 */	lfs f0, 0x44(r30)
/* 8004D10C 00048D6C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D110 00048D70  40 80 00 C4 */	bge lbl_8004D1D4
/* 8004D114 00048D74  81 9E 00 10 */	lwz r12, 0x10(r30)
/* 8004D118 00048D78  7F C3 F3 78 */	mr r3, r30
/* 8004D11C 00048D7C  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D120 00048D80  7D 89 03 A6 */	mtctr r12
/* 8004D124 00048D84  4E 80 04 21 */	bctrl
/* 8004D128 00048D88  D0 3E 00 40 */	stfs f1, 0x40(r30)
/* 8004D12C 00048D8C  7F C3 F3 78 */	mr r3, r30
/* 8004D130 00048D90  81 9E 00 10 */	lwz r12, 0x10(r30)
/* 8004D134 00048D94  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D138 00048D98  7D 89 03 A6 */	mtctr r12
/* 8004D13C 00048D9C  4E 80 04 21 */	bctrl
/* 8004D140 00048DA0  C0 7E 00 38 */	lfs f3, 0x38(r30)
/* 8004D144 00048DA4  C0 42 83 F8 */	lfs f2, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004D148 00048DA8  EC 21 18 28 */	fsubs f1, f1, f3
/* 8004D14C 00048DAC  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 8004D150 00048DB0  D0 3E 00 3C */	stfs f1, 0x3c(r30)
/* 8004D154 00048DB4  40 81 00 80 */	ble lbl_8004D1D4
/* 8004D158 00048DB8  C0 1E 00 40 */	lfs f0, 0x40(r30)
/* 8004D15C 00048DBC  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004D160 00048DC0  40 81 00 74 */	ble lbl_8004D1D4
/* 8004D164 00048DC4  C0 1E 00 44 */	lfs f0, 0x44(r30)
/* 8004D168 00048DC8  EC 00 18 28 */	fsubs f0, f0, f3
/* 8004D16C 00048DCC  EC 20 08 24 */	fdivs f1, f0, f1
/* 8004D170 00048DD0  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 8004D174 00048DD4  40 80 00 08 */	bge lbl_8004D17C
/* 8004D178 00048DD8  FC 20 10 90 */	fmr f1, f2
lbl_8004D17C:
/* 8004D17C 00048DDC  C0 02 84 00 */	lfs f0, lbl_80640A00-_SDA2_BASE_(r2)
/* 8004D180 00048DE0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D184 00048DE4  40 81 00 08 */	ble lbl_8004D18C
/* 8004D188 00048DE8  FC 20 00 90 */	fmr f1, f0
lbl_8004D18C:
/* 8004D18C 00048DEC  88 9E 00 34 */	lbz r4, 0x34(r30)
/* 8004D190 00048DF0  3C 00 43 30 */	lis r0, 0x4330
/* 8004D194 00048DF4  C0 02 84 00 */	lfs f0, lbl_80640A00-_SDA2_BASE_(r2)
/* 8004D198 00048DF8  7F E3 FB 78 */	mr r3, r31
/* 8004D19C 00048DFC  90 81 00 0C */	stw r4, 0xc(r1)
/* 8004D1A0 00048E00  A0 9E 00 1C */	lhz r4, 0x1c(r30)
/* 8004D1A4 00048E04  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004D1A8 00048E08  90 01 00 08 */	stw r0, 8(r1)
/* 8004D1AC 00048E0C  C8 42 83 F0 */	lfd f2, lbl_806409F0-_SDA2_BASE_(r2)
/* 8004D1B0 00048E10  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 8004D1B4 00048E14  C8 21 00 08 */	lfd f1, 8(r1)
/* 8004D1B8 00048E18  EC 21 10 28 */	fsubs f1, f1, f2
/* 8004D1BC 00048E1C  EC 01 00 32 */	fmuls f0, f1, f0
/* 8004D1C0 00048E20  FC 00 00 1E */	fctiwz f0, f0
/* 8004D1C4 00048E24  D8 01 00 10 */	stfd f0, 0x10(r1)
/* 8004D1C8 00048E28  80 A1 00 14 */	lwz r5, 0x14(r1)
/* 8004D1CC 00048E2C  54 A5 06 3E */	clrlwi r5, r5, 0x18
/* 8004D1D0 00048E30  48 1A B9 D1 */	bl func_801F8BA0
lbl_8004D1D4:
/* 8004D1D4 00048E34  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8004D1D8 00048E38  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8004D1DC 00048E3C  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 8004D1E0 00048E40  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 8004D1E4 00048E44  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004D1E8 00048E48  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004D1EC 00048E4C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004D1F0 00048E50  7C 08 03 A6 */	mtlr r0
/* 8004D1F4 00048E54  38 21 00 40 */	addi r1, r1, 0x40
/* 8004D1F8 00048E58  4E 80 00 20 */	blr

.global func_8004D1FC
func_8004D1FC:
/* 8004D1FC 00048E5C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004D200 00048E60  7C 08 02 A6 */	mflr r0
/* 8004D204 00048E64  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D208 00048E68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004D20C 00048E6C  7C 7F 1B 78 */	mr r31, r3
/* 8004D210 00048E70  4B FF DF 41 */	bl func_8004B150
/* 8004D214 00048E74  80 BF 00 0C */	lwz r5, 0xc(r31)
/* 8004D218 00048E78  3C C0 80 41 */	lis r6, lbl_8040A764@ha
/* 8004D21C 00048E7C  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 8004D220 00048E80  38 80 00 00 */	li r4, 0
/* 8004D224 00048E84  38 03 FF FF */	addi r0, r3, 0x0000FFFF@l
/* 8004D228 00048E88  38 C6 A7 64 */	addi r6, r6, lbl_8040A764@l
/* 8004D22C 00048E8C  38 A5 00 08 */	addi r5, r5, 8
/* 8004D230 00048E90  90 DF 00 10 */	stw r6, 0x10(r31)
/* 8004D234 00048E94  7F E3 FB 78 */	mr r3, r31
/* 8004D238 00048E98  90 BF 00 14 */	stw r5, 0x14(r31)
/* 8004D23C 00048E9C  90 9F 00 18 */	stw r4, 0x18(r31)
/* 8004D240 00048EA0  B0 1F 00 1C */	sth r0, 0x1c(r31)
/* 8004D244 00048EA4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004D248 00048EA8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004D24C 00048EAC  7C 08 03 A6 */	mtlr r0
/* 8004D250 00048EB0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004D254 00048EB4  4E 80 00 20 */	blr
/* 8004D258 00048EB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004D25C 00048EBC  7C 08 02 A6 */	mflr r0
/* 8004D260 00048EC0  2C 03 00 00 */	cmpwi r3, 0
/* 8004D264 00048EC4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D268 00048EC8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004D26C 00048ECC  7C 9F 23 78 */	mr r31, r4
/* 8004D270 00048ED0  93 C1 00 08 */	stw r30, 8(r1)
/* 8004D274 00048ED4  7C 7E 1B 78 */	mr r30, r3
/* 8004D278 00048ED8  41 82 00 60 */	beq lbl_8004D2D8
/* 8004D27C 00048EDC  80 03 00 18 */	lwz r0, 0x18(r3)
/* 8004D280 00048EE0  3C 80 80 41 */	lis r4, lbl_8040A764@ha
/* 8004D284 00048EE4  38 84 A7 64 */	addi r4, r4, lbl_8040A764@l
/* 8004D288 00048EE8  2C 00 00 00 */	cmpwi r0, 0
/* 8004D28C 00048EEC  90 83 00 10 */	stw r4, 0x10(r3)
/* 8004D290 00048EF0  41 82 00 20 */	beq lbl_8004D2B0
/* 8004D294 00048EF4  41 82 00 1C */	beq lbl_8004D2B0
/* 8004D298 00048EF8  7C 03 03 78 */	mr r3, r0
/* 8004D29C 00048EFC  38 80 00 01 */	li r4, 1
/* 8004D2A0 00048F00  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004D2A4 00048F04  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D2A8 00048F08  7D 89 03 A6 */	mtctr r12
/* 8004D2AC 00048F0C  4E 80 04 21 */	bctrl
lbl_8004D2B0:
/* 8004D2B0 00048F10  3C 80 00 01 */	lis r4, 0x0000FFFF@ha
/* 8004D2B4 00048F14  7F C3 F3 78 */	mr r3, r30
/* 8004D2B8 00048F18  38 04 FF FF */	addi r0, r4, 0x0000FFFF@l
/* 8004D2BC 00048F1C  B0 1E 00 1C */	sth r0, 0x1c(r30)
/* 8004D2C0 00048F20  38 80 00 00 */	li r4, 0
/* 8004D2C4 00048F24  4B FF DE B1 */	bl func_8004B174
/* 8004D2C8 00048F28  2C 1F 00 00 */	cmpwi r31, 0
/* 8004D2CC 00048F2C  40 81 00 0C */	ble lbl_8004D2D8
/* 8004D2D0 00048F30  7F C3 F3 78 */	mr r3, r30
/* 8004D2D4 00048F34  48 18 D7 E5 */	bl func_801DAAB8
lbl_8004D2D8:
/* 8004D2D8 00048F38  7F C3 F3 78 */	mr r3, r30
/* 8004D2DC 00048F3C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004D2E0 00048F40  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004D2E4 00048F44  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004D2E8 00048F48  7C 08 03 A6 */	mtlr r0
/* 8004D2EC 00048F4C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004D2F0 00048F50  4E 80 00 20 */	blr
/* 8004D2F4 00048F54  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 8004D2F8 00048F58  7C 08 02 A6 */	mflr r0
/* 8004D2FC 00048F5C  90 01 00 64 */	stw r0, 0x64(r1)
/* 8004D300 00048F60  93 E1 00 5C */	stw r31, 0x5c(r1)
/* 8004D304 00048F64  7C 7F 1B 78 */	mr r31, r3
/* 8004D308 00048F68  93 C1 00 58 */	stw r30, 0x58(r1)
/* 8004D30C 00048F6C  93 A1 00 54 */	stw r29, 0x54(r1)
/* 8004D310 00048F70  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004D314 00048F74  80 04 00 24 */	lwz r0, 0x24(r4)
/* 8004D318 00048F78  2C 00 00 00 */	cmpwi r0, 0
/* 8004D31C 00048F7C  41 82 01 C8 */	beq lbl_8004D4E4
/* 8004D320 00048F80  80 63 00 04 */	lwz r3, 4(r3)
/* 8004D324 00048F84  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8004D328 00048F88  2C 03 00 00 */	cmpwi r3, 0
/* 8004D32C 00048F8C  41 82 01 B8 */	beq lbl_8004D4E4
/* 8004D330 00048F90  4B FF AE 71 */	bl func_800481A0
/* 8004D334 00048F94  C0 02 83 F8 */	lfs f0, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004D338 00048F98  7C 7E 1B 78 */	mr r30, r3
/* 8004D33C 00048F9C  D0 1F 00 44 */	stfs f0, 0x44(r31)
/* 8004D340 00048FA0  C0 03 01 C4 */	lfs f0, 0x1c4(r3)
/* 8004D344 00048FA4  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8004D348 00048FA8  C0 03 01 C8 */	lfs f0, 0x1c8(r3)
/* 8004D34C 00048FAC  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 8004D350 00048FB0  C0 03 01 CC */	lfs f0, 0x1cc(r3)
/* 8004D354 00048FB4  7F E3 FB 78 */	mr r3, r31
/* 8004D358 00048FB8  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 8004D35C 00048FBC  4B FF DE 59 */	bl func_8004B1B4
/* 8004D360 00048FC0  2C 03 00 00 */	cmpwi r3, 0
/* 8004D364 00048FC4  7C 7D 1B 78 */	mr r29, r3
/* 8004D368 00048FC8  41 82 01 7C */	beq lbl_8004D4E4
/* 8004D36C 00048FCC  3D 20 80 40 */	lis r9, lbl_80400004@ha
/* 8004D370 00048FD0  85 09 B7 60 */	lwzu r8, -0x48a0(r9)
/* 8004D374 00048FD4  80 E9 00 04 */	lwz r7, lbl_80400004@l(r9)
/* 8004D378 00048FD8  80 C9 00 08 */	lwz r6, 8(r9)
/* 8004D37C 00048FDC  80 A9 00 0C */	lwz r5, 0xc(r9)
/* 8004D380 00048FE0  80 89 00 10 */	lwz r4, 0x10(r9)
/* 8004D384 00048FE4  80 09 00 14 */	lwz r0, 0x14(r9)
/* 8004D388 00048FE8  91 01 00 30 */	stw r8, 0x30(r1)
/* 8004D38C 00048FEC  90 E1 00 34 */	stw r7, 0x34(r1)
/* 8004D390 00048FF0  90 C1 00 38 */	stw r6, 0x38(r1)
/* 8004D394 00048FF4  90 A1 00 3C */	stw r5, 0x3c(r1)
/* 8004D398 00048FF8  90 81 00 40 */	stw r4, 0x40(r1)
/* 8004D39C 00048FFC  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004D3A0 00049000  4B FE C3 35 */	bl func_800396D4
/* 8004D3A4 00049004  2C 03 00 01 */	cmpwi r3, 1
/* 8004D3A8 00049008  40 80 00 10 */	bge lbl_8004D3B8
/* 8004D3AC 0004900C  2C 03 00 06 */	cmpwi r3, 6
/* 8004D3B0 00049010  40 81 00 08 */	ble lbl_8004D3B8
/* 8004D3B4 00049014  38 60 00 03 */	li r3, 3
lbl_8004D3B8:
/* 8004D3B8 00049018  38 03 FF FF */	addi r0, r3, -1
/* 8004D3BC 0004901C  38 81 00 30 */	addi r4, r1, 0x30
/* 8004D3C0 00049020  54 00 10 3A */	slwi r0, r0, 2
/* 8004D3C4 00049024  38 61 00 24 */	addi r3, r1, 0x24
/* 8004D3C8 00049028  7C 04 04 2E */	lfsx f0, r4, r0
/* 8004D3CC 0004902C  38 9E 01 AC */	addi r4, r30, 0x1ac
/* 8004D3D0 00049030  38 A1 00 18 */	addi r5, r1, 0x18
/* 8004D3D4 00049034  D0 1F 00 48 */	stfs f0, 0x48(r31)
/* 8004D3D8 00049038  83 DD 0C 04 */	lwz r30, 0xc04(r29)
/* 8004D3DC 0004903C  48 22 F9 0D */	bl func_8027CCE8
/* 8004D3E0 00049040  38 61 00 18 */	addi r3, r1, 0x18
/* 8004D3E4 00049044  7C 64 1B 78 */	mr r4, r3
/* 8004D3E8 00049048  48 22 F9 41 */	bl func_8027CD28
/* 8004D3EC 0004904C  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004D3F0 00049050  7F C3 F3 78 */	mr r3, r30
/* 8004D3F4 00049054  38 A1 00 24 */	addi r5, r1, 0x24
/* 8004D3F8 00049058  38 C1 00 18 */	addi r6, r1, 0x18
/* 8004D3FC 0004905C  80 84 00 24 */	lwz r4, 0x24(r4)
/* 8004D400 00049060  38 E0 00 00 */	li r7, 0
/* 8004D404 00049064  48 1A B4 E9 */	bl func_801F88EC
/* 8004D408 00049068  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8004D40C 0004906C  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004D410 00049070  B0 1F 00 1C */	sth r0, 0x1c(r31)
/* 8004D414 00049074  C0 02 84 14 */	lfs f0, lbl_80640A14-_SDA2_BASE_(r2)
/* 8004D418 00049078  C0 24 00 08 */	lfs f1, 8(r4)
/* 8004D41C 0004907C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D420 00049080  40 80 00 10 */	bge lbl_8004D430
/* 8004D424 00049084  C0 02 84 18 */	lfs f0, lbl_80640A18-_SDA2_BASE_(r2)
/* 8004D428 00049088  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D42C 0004908C  41 81 00 60 */	bgt lbl_8004D48C
lbl_8004D430:
/* 8004D430 00049090  C0 24 00 0C */	lfs f1, 0xc(r4)
/* 8004D434 00049094  C0 02 84 14 */	lfs f0, lbl_80640A14-_SDA2_BASE_(r2)
/* 8004D438 00049098  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D43C 0004909C  40 80 00 10 */	bge lbl_8004D44C
/* 8004D440 000490A0  C0 02 84 18 */	lfs f0, lbl_80640A18-_SDA2_BASE_(r2)
/* 8004D444 000490A4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D448 000490A8  41 81 00 44 */	bgt lbl_8004D48C
lbl_8004D44C:
/* 8004D44C 000490AC  C0 5F 00 48 */	lfs f2, 0x48(r31)
/* 8004D450 000490B0  7F C3 F3 78 */	mr r3, r30
/* 8004D454 000490B4  C0 24 00 0C */	lfs f1, 0xc(r4)
/* 8004D458 000490B8  38 A1 00 10 */	addi r5, r1, 0x10
/* 8004D45C 000490BC  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004D460 000490C0  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8004D464 000490C4  EC 00 00 B2 */	fmuls f0, f0, f2
/* 8004D468 000490C8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8004D46C 000490CC  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004D470 000490D0  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8004D474 000490D4  80 81 00 08 */	lwz r4, 8(r1)
/* 8004D478 000490D8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D47C 000490DC  90 81 00 10 */	stw r4, 0x10(r1)
/* 8004D480 000490E0  A0 1F 00 1C */	lhz r0, 0x1c(r31)
/* 8004D484 000490E4  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8004D488 000490E8  48 1A B6 E9 */	bl func_801F8B70
lbl_8004D48C:
/* 8004D48C 000490EC  C0 02 83 F8 */	lfs f0, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004D490 000490F0  38 00 00 FF */	li r0, 0xff
/* 8004D494 000490F4  98 1F 00 34 */	stb r0, 0x34(r31)
/* 8004D498 000490F8  7F E3 FB 78 */	mr r3, r31
/* 8004D49C 000490FC  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8004D4A0 00049100  D0 1F 00 20 */	stfs f0, 0x20(r31)
/* 8004D4A4 00049104  D0 1F 00 24 */	stfs f0, 0x24(r31)
/* 8004D4A8 00049108  C0 04 00 18 */	lfs f0, 0x18(r4)
/* 8004D4AC 0004910C  D0 1F 00 38 */	stfs f0, 0x38(r31)
/* 8004D4B0 00049110  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004D4B4 00049114  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D4B8 00049118  7D 89 03 A6 */	mtctr r12
/* 8004D4BC 0004911C  4E 80 04 21 */	bctrl
/* 8004D4C0 00049120  D0 3F 00 40 */	stfs f1, 0x40(r31)
/* 8004D4C4 00049124  7F E3 FB 78 */	mr r3, r31
/* 8004D4C8 00049128  81 9F 00 10 */	lwz r12, 0x10(r31)
/* 8004D4CC 0004912C  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D4D0 00049130  7D 89 03 A6 */	mtctr r12
/* 8004D4D4 00049134  4E 80 04 21 */	bctrl
/* 8004D4D8 00049138  C0 1F 00 38 */	lfs f0, 0x38(r31)
/* 8004D4DC 0004913C  EC 01 00 28 */	fsubs f0, f1, f0
/* 8004D4E0 00049140  D0 1F 00 3C */	stfs f0, 0x3c(r31)
lbl_8004D4E4:
/* 8004D4E4 00049144  80 01 00 64 */	lwz r0, 0x64(r1)
/* 8004D4E8 00049148  83 E1 00 5C */	lwz r31, 0x5c(r1)
/* 8004D4EC 0004914C  83 C1 00 58 */	lwz r30, 0x58(r1)
/* 8004D4F0 00049150  83 A1 00 54 */	lwz r29, 0x54(r1)
/* 8004D4F4 00049154  7C 08 03 A6 */	mtlr r0
/* 8004D4F8 00049158  38 21 00 60 */	addi r1, r1, 0x60
/* 8004D4FC 0004915C  4E 80 00 20 */	blr
/* 8004D500 00049160  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004D504 00049164  7C 08 02 A6 */	mflr r0
/* 8004D508 00049168  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D50C 0004916C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004D510 00049170  7C 7F 1B 78 */	mr r31, r3
/* 8004D514 00049174  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8004D518 00049178  80 04 00 24 */	lwz r0, 0x24(r4)
/* 8004D51C 0004917C  2C 00 00 00 */	cmpwi r0, 0
/* 8004D520 00049180  41 82 00 30 */	beq lbl_8004D550
/* 8004D524 00049184  A0 03 00 1C */	lhz r0, 0x1c(r3)
/* 8004D528 00049188  28 00 FF FF */	cmplwi r0, 0xffff
/* 8004D52C 0004918C  41 82 00 24 */	beq lbl_8004D550
/* 8004D530 00049190  4B FF DC 85 */	bl func_8004B1B4
/* 8004D534 00049194  A0 1F 00 1C */	lhz r0, 0x1c(r31)
/* 8004D538 00049198  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004D53C 0004919C  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8004D540 000491A0  48 1A B6 85 */	bl func_801F8BC4
/* 8004D544 000491A4  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 8004D548 000491A8  38 03 FF FF */	addi r0, r3, 0x0000FFFF@l
/* 8004D54C 000491AC  B0 1F 00 1C */	sth r0, 0x1c(r31)
lbl_8004D550:
/* 8004D550 000491B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004D554 000491B4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004D558 000491B8  7C 08 03 A6 */	mtlr r0
/* 8004D55C 000491BC  38 21 00 10 */	addi r1, r1, 0x10
/* 8004D560 000491C0  4E 80 00 20 */	blr
/* 8004D564 000491C4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004D568 000491C8  7C 08 02 A6 */	mflr r0
/* 8004D56C 000491CC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004D570 000491D0  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 8004D574 000491D4  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 8004D578 000491D8  FF E0 08 90 */	fmr f31, f1
/* 8004D57C 000491DC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004D580 000491E0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004D584 000491E4  7C 7E 1B 78 */	mr r30, r3
/* 8004D588 000491E8  C0 03 00 44 */	lfs f0, 0x44(r3)
/* 8004D58C 000491EC  EC 00 08 2A */	fadds f0, f0, f1
/* 8004D590 000491F0  D0 03 00 44 */	stfs f0, 0x44(r3)
/* 8004D594 000491F4  4B FF DC 21 */	bl func_8004B1B4
/* 8004D598 000491F8  83 E3 0C 04 */	lwz r31, 0xc04(r3)
/* 8004D59C 000491FC  2C 1F 00 00 */	cmpwi r31, 0
/* 8004D5A0 00049200  41 82 01 44 */	beq lbl_8004D6E4
/* 8004D5A4 00049204  A0 1E 00 1C */	lhz r0, 0x1c(r30)
/* 8004D5A8 00049208  28 00 FF FF */	cmplwi r0, 0xffff
/* 8004D5AC 0004920C  41 82 01 38 */	beq lbl_8004D6E4
/* 8004D5B0 00049210  80 DE 00 14 */	lwz r6, 0x14(r30)
/* 8004D5B4 00049214  7F E3 FB 78 */	mr r3, r31
/* 8004D5B8 00049218  C0 7E 00 48 */	lfs f3, 0x48(r30)
/* 8004D5BC 0004921C  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8004D5C0 00049220  C0 06 00 10 */	lfs f0, 0x10(r6)
/* 8004D5C4 00049224  38 BE 00 20 */	addi r5, r30, 0x20
/* 8004D5C8 00049228  C0 82 84 2C */	lfs f4, lbl_80640A2C-_SDA2_BASE_(r2)
/* 8004D5CC 0004922C  EC 40 00 F2 */	fmuls f2, f0, f3
/* 8004D5D0 00049230  C0 0D 86 C8 */	lfs f0, lbl_8063D988-_SDA_BASE_(r13)
/* 8004D5D4 00049234  C0 3E 00 20 */	lfs f1, 0x20(r30)
/* 8004D5D8 00049238  EC A4 00 32 */	fmuls f5, f4, f0
/* 8004D5DC 0004923C  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 8004D5E0 00049240  EC 5F 00 B2 */	fmuls f2, f31, f2
/* 8004D5E4 00049244  EC 42 01 72 */	fmuls f2, f2, f5
/* 8004D5E8 00049248  EC 21 10 2A */	fadds f1, f1, f2
/* 8004D5EC 0004924C  D0 3E 00 20 */	stfs f1, 0x20(r30)
/* 8004D5F0 00049250  C0 26 00 14 */	lfs f1, 0x14(r6)
/* 8004D5F4 00049254  C0 4D 86 C8 */	lfs f2, lbl_8063D988-_SDA_BASE_(r13)
/* 8004D5F8 00049258  EC 21 00 F2 */	fmuls f1, f1, f3
/* 8004D5FC 0004925C  EC 44 00 B2 */	fmuls f2, f4, f2
/* 8004D600 00049260  EC 3F 00 72 */	fmuls f1, f31, f1
/* 8004D604 00049264  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8004D608 00049268  EC 00 08 2A */	fadds f0, f0, f1
/* 8004D60C 0004926C  D0 1E 00 24 */	stfs f0, 0x24(r30)
/* 8004D610 00049270  48 1A B5 31 */	bl func_801F8B40
/* 8004D614 00049274  C0 3E 00 38 */	lfs f1, 0x38(r30)
/* 8004D618 00049278  C0 1E 00 44 */	lfs f0, 0x44(r30)
/* 8004D61C 0004927C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D620 00049280  40 80 00 C4 */	bge lbl_8004D6E4
/* 8004D624 00049284  81 9E 00 10 */	lwz r12, 0x10(r30)
/* 8004D628 00049288  7F C3 F3 78 */	mr r3, r30
/* 8004D62C 0004928C  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D630 00049290  7D 89 03 A6 */	mtctr r12
/* 8004D634 00049294  4E 80 04 21 */	bctrl
/* 8004D638 00049298  D0 3E 00 40 */	stfs f1, 0x40(r30)
/* 8004D63C 0004929C  7F C3 F3 78 */	mr r3, r30
/* 8004D640 000492A0  81 9E 00 10 */	lwz r12, 0x10(r30)
/* 8004D644 000492A4  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004D648 000492A8  7D 89 03 A6 */	mtctr r12
/* 8004D64C 000492AC  4E 80 04 21 */	bctrl
/* 8004D650 000492B0  C0 7E 00 38 */	lfs f3, 0x38(r30)
/* 8004D654 000492B4  C0 42 83 F8 */	lfs f2, lbl_806409F8-_SDA2_BASE_(r2)
/* 8004D658 000492B8  EC 21 18 28 */	fsubs f1, f1, f3
/* 8004D65C 000492BC  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 8004D660 000492C0  D0 3E 00 3C */	stfs f1, 0x3c(r30)
/* 8004D664 000492C4  40 81 00 80 */	ble lbl_8004D6E4
/* 8004D668 000492C8  C0 1E 00 40 */	lfs f0, 0x40(r30)
/* 8004D66C 000492CC  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004D670 000492D0  40 81 00 74 */	ble lbl_8004D6E4
/* 8004D674 000492D4  C0 1E 00 44 */	lfs f0, 0x44(r30)
/* 8004D678 000492D8  EC 00 18 28 */	fsubs f0, f0, f3
/* 8004D67C 000492DC  EC 20 08 24 */	fdivs f1, f0, f1
/* 8004D680 000492E0  FC 01 10 40 */	fcmpo cr0, f1, f2
/* 8004D684 000492E4  40 80 00 08 */	bge lbl_8004D68C
/* 8004D688 000492E8  FC 20 10 90 */	fmr f1, f2
lbl_8004D68C:
/* 8004D68C 000492EC  C0 02 84 00 */	lfs f0, lbl_80640A00-_SDA2_BASE_(r2)
/* 8004D690 000492F0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004D694 000492F4  40 81 00 08 */	ble lbl_8004D69C
/* 8004D698 000492F8  FC 20 00 90 */	fmr f1, f0
lbl_8004D69C:
/* 8004D69C 000492FC  88 9E 00 34 */	lbz r4, 0x34(r30)
/* 8004D6A0 00049300  3C 00 43 30 */	lis r0, 0x4330
/* 8004D6A4 00049304  C0 02 84 00 */	lfs f0, lbl_80640A00-_SDA2_BASE_(r2)
/* 8004D6A8 00049308  7F E3 FB 78 */	mr r3, r31
/* 8004D6AC 0004930C  90 81 00 0C */	stw r4, 0xc(r1)
/* 8004D6B0 00049310  A0 9E 00 1C */	lhz r4, 0x1c(r30)
/* 8004D6B4 00049314  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004D6B8 00049318  90 01 00 08 */	stw r0, 8(r1)
/* 8004D6BC 0004931C  C8 42 83 F0 */	lfd f2, lbl_806409F0-_SDA2_BASE_(r2)
/* 8004D6C0 00049320  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 8004D6C4 00049324  C8 21 00 08 */	lfd f1, 8(r1)
/* 8004D6C8 00049328  EC 21 10 28 */	fsubs f1, f1, f2
/* 8004D6CC 0004932C  EC 01 00 32 */	fmuls f0, f1, f0
/* 8004D6D0 00049330  FC 00 00 1E */	fctiwz f0, f0
/* 8004D6D4 00049334  D8 01 00 10 */	stfd f0, 0x10(r1)
/* 8004D6D8 00049338  80 A1 00 14 */	lwz r5, 0x14(r1)
/* 8004D6DC 0004933C  54 A5 06 3E */	clrlwi r5, r5, 0x18
/* 8004D6E0 00049340  48 1A B4 C1 */	bl func_801F8BA0
lbl_8004D6E4:
/* 8004D6E4 00049344  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 8004D6E8 00049348  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004D6EC 0004934C  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 8004D6F0 00049350  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004D6F4 00049354  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004D6F8 00049358  7C 08 03 A6 */	mtlr r0
/* 8004D6FC 0004935C  38 21 00 30 */	addi r1, r1, 0x30
/* 8004D700 00049360  4E 80 00 20 */	blr

.global func_8004D704
func_8004D704:
/* 8004D704 00049364  38 A0 00 01 */	li r5, 1
/* 8004D708 00049368  38 6D 98 20 */	addi r3, r13, lbl_8063EAE0-_SDA_BASE_
/* 8004D70C 0004936C  38 80 00 04 */	li r4, 4
/* 8004D710 00049370  38 00 00 00 */	li r0, 0
/* 8004D714 00049374  98 AD 98 20 */	stb r5, lbl_8063EAE0-_SDA_BASE_(r13)
/* 8004D718 00049378  B0 83 00 02 */	sth r4, 2(r3)
/* 8004D71C 0004937C  98 03 00 04 */	stb r0, 4(r3)
/* 8004D720 00049380  4E 80 00 20 */	blr

.global func_8004D724
func_8004D724:
/* 8004D724 00049384  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004D728 00049388  7C 08 02 A6 */	mflr r0
/* 8004D72C 0004938C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D730 00049390  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004D734 00049394  83 ED 98 30 */	lwz r31, lbl_8063EAF0-_SDA_BASE_(r13)
/* 8004D738 00049398  2C 1F 00 00 */	cmpwi r31, 0
/* 8004D73C 0004939C  41 82 00 80 */	beq lbl_8004D7BC
/* 8004D740 000493A0  41 82 00 7C */	beq lbl_8004D7BC
/* 8004D744 000493A4  34 7F 35 10 */	addic. r3, r31, 0x3510
/* 8004D748 000493A8  41 82 00 18 */	beq lbl_8004D760
/* 8004D74C 000493AC  3C 80 80 05 */	lis r4, lbl_8004ED5C@ha
/* 8004D750 000493B0  38 A0 00 08 */	li r5, 8
/* 8004D754 000493B4  38 84 ED 5C */	addi r4, r4, lbl_8004ED5C@l
/* 8004D758 000493B8  38 C0 00 20 */	li r6, 0x20
/* 8004D75C 000493BC  48 17 98 05 */	bl __destroy_arr
lbl_8004D760:
/* 8004D760 000493C0  38 7F 34 C0 */	addi r3, r31, 0x34c0
/* 8004D764 000493C4  38 80 FF FF */	li r4, -1
/* 8004D768 000493C8  48 00 12 D9 */	bl func_8004EA40
/* 8004D76C 000493CC  3C 80 80 05 */	lis r4, lbl_8004DEF8@ha
/* 8004D770 000493D0  38 7F 27 C0 */	addi r3, r31, 0x27c0
/* 8004D774 000493D4  38 84 DE F8 */	addi r4, r4, lbl_8004DEF8@l
/* 8004D778 000493D8  38 A0 00 68 */	li r5, 0x68
/* 8004D77C 000493DC  38 C0 00 20 */	li r6, 0x20
/* 8004D780 000493E0  48 17 97 E1 */	bl __destroy_arr
/* 8004D784 000493E4  3C 80 80 04 */	lis r4, lbl_80047908@ha
/* 8004D788 000493E8  38 7F 1D 40 */	addi r3, r31, 0x1d40
/* 8004D78C 000493EC  38 84 79 08 */	addi r4, r4, lbl_80047908@l
/* 8004D790 000493F0  38 A0 00 38 */	li r5, 0x38
/* 8004D794 000493F4  38 C0 00 30 */	li r6, 0x30
/* 8004D798 000493F8  48 17 97 C9 */	bl __destroy_arr
/* 8004D79C 000493FC  3C 80 80 05 */	lis r4, lbl_80048748@ha
/* 8004D7A0 00049400  7F E3 FB 78 */	mr r3, r31
/* 8004D7A4 00049404  38 84 87 48 */	addi r4, r4, lbl_80048748@l
/* 8004D7A8 00049408  38 A0 00 9C */	li r5, 0x9c
/* 8004D7AC 0004940C  38 C0 00 30 */	li r6, 0x30
/* 8004D7B0 00049410  48 17 97 B1 */	bl __destroy_arr
/* 8004D7B4 00049414  7F E3 FB 78 */	mr r3, r31
/* 8004D7B8 00049418  48 18 D3 01 */	bl func_801DAAB8
lbl_8004D7BC:
/* 8004D7BC 0004941C  38 60 36 94 */	li r3, 0x3694
/* 8004D7C0 00049420  48 18 D2 71 */	bl func_801DAA30
/* 8004D7C4 00049424  2C 03 00 00 */	cmpwi r3, 0
/* 8004D7C8 00049428  41 82 00 08 */	beq lbl_8004D7D0
/* 8004D7CC 0004942C  48 00 00 91 */	bl func_8004D85C
lbl_8004D7D0:
/* 8004D7D0 00049430  3C 80 80 05 */	lis r4, lbl_8004D814@ha
/* 8004D7D4 00049434  3C A0 80 05 */	lis r5, lbl_8004D848@ha
/* 8004D7D8 00049438  90 6D 98 30 */	stw r3, lbl_8063EAF0-_SDA_BASE_(r13)
/* 8004D7DC 0004943C  38 84 D8 14 */	addi r4, r4, lbl_8004D814@l
/* 8004D7E0 00049440  80 6D A4 B8 */	lwz r3, lbl_8063F778-_SDA_BASE_(r13)
/* 8004D7E4 00049444  38 A5 D8 48 */	addi r5, r5, lbl_8004D848@l
/* 8004D7E8 00049448  38 C0 00 03 */	li r6, 3
/* 8004D7EC 0004944C  38 E0 00 0C */	li r7, 0xc
/* 8004D7F0 00049450  48 1F 13 69 */	bl func_8023EB58
/* 8004D7F4 00049454  48 00 11 2D */	bl func_8004E920
/* 8004D7F8 00049458  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004D7FC 0004945C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004D800 00049460  7C 08 03 A6 */	mtlr r0
/* 8004D804 00049464  38 21 00 10 */	addi r1, r1, 0x10
/* 8004D808 00049468  4E 80 00 20 */	blr

.global func_8004D80C
func_8004D80C:
/* 8004D80C 0004946C  80 6D 98 30 */	lwz r3, lbl_8063EAF0-_SDA_BASE_(r13)
/* 8004D810 00049470  4E 80 00 20 */	blr
lbl_8004D814:
/* 8004D814 00049474  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004D818 00049478  7C 08 02 A6 */	mflr r0
/* 8004D81C 0004947C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D820 00049480  80 0D 98 30 */	lwz r0, lbl_8063EAF0-_SDA_BASE_(r13)
/* 8004D824 00049484  2C 00 00 00 */	cmpwi r0, 0
/* 8004D828 00049488  41 82 00 10 */	beq lbl_8004D838
/* 8004D82C 0004948C  4B FB 9B 71 */	bl func_8000739C
/* 8004D830 00049490  80 6D 98 30 */	lwz r3, lbl_8063EAF0-_SDA_BASE_(r13)
/* 8004D834 00049494  48 00 01 A5 */	bl func_8004D9D8
lbl_8004D838:
/* 8004D838 00049498  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004D83C 0004949C  7C 08 03 A6 */	mtlr r0
/* 8004D840 000494A0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004D844 000494A4  4E 80 00 20 */	blr
lbl_8004D848:
/* 8004D848 000494A8  80 6D 98 30 */	lwz r3, lbl_8063EAF0-_SDA_BASE_(r13)
/* 8004D84C 000494AC  2C 03 00 00 */	cmpwi r3, 0
/* 8004D850 000494B0  4D 82 00 20 */	beqlr
/* 8004D854 000494B4  48 00 02 30 */	b lbl_8004DA84
/* 8004D858 000494B8  4E 80 00 20 */	blr

.global func_8004D85C
func_8004D85C:
/* 8004D85C 000494BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004D860 000494C0  7C 08 02 A6 */	mflr r0
/* 8004D864 000494C4  3C 80 80 05 */	lis r4, lbl_80048728@ha
/* 8004D868 000494C8  3C A0 80 05 */	lis r5, lbl_80048748@ha
/* 8004D86C 000494CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004D870 000494D0  38 C0 00 9C */	li r6, 0x9c
/* 8004D874 000494D4  38 84 87 28 */	addi r4, r4, lbl_80048728@l
/* 8004D878 000494D8  38 A5 87 48 */	addi r5, r5, lbl_80048748@l
/* 8004D87C 000494DC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004D880 000494E0  7C 7F 1B 78 */	mr r31, r3
/* 8004D884 000494E4  38 E0 00 30 */	li r7, 0x30
/* 8004D888 000494E8  48 17 95 E1 */	bl __construct_array
/* 8004D88C 000494EC  3C 80 80 04 */	lis r4, lbl_800478E4@ha
/* 8004D890 000494F0  3C A0 80 04 */	lis r5, lbl_80047908@ha
/* 8004D894 000494F4  38 7F 1D 40 */	addi r3, r31, 0x1d40
/* 8004D898 000494F8  38 C0 00 38 */	li r6, 0x38
/* 8004D89C 000494FC  38 84 78 E4 */	addi r4, r4, lbl_800478E4@l
/* 8004D8A0 00049500  38 A5 79 08 */	addi r5, r5, lbl_80047908@l
/* 8004D8A4 00049504  38 E0 00 30 */	li r7, 0x30
/* 8004D8A8 00049508  48 17 95 C1 */	bl __construct_array
/* 8004D8AC 0004950C  3C 80 80 05 */	lis r4, lbl_8004DE88@ha
/* 8004D8B0 00049510  3C A0 80 05 */	lis r5, lbl_8004DEF8@ha
/* 8004D8B4 00049514  38 7F 27 C0 */	addi r3, r31, 0x27c0
/* 8004D8B8 00049518  38 C0 00 68 */	li r6, 0x68
/* 8004D8BC 0004951C  38 84 DE 88 */	addi r4, r4, lbl_8004DE88@l
/* 8004D8C0 00049520  38 A5 DE F8 */	addi r5, r5, lbl_8004DEF8@l
/* 8004D8C4 00049524  38 E0 00 20 */	li r7, 0x20
/* 8004D8C8 00049528  48 17 95 A1 */	bl __construct_array
/* 8004D8CC 0004952C  38 7F 34 C0 */	addi r3, r31, 0x34c0
/* 8004D8D0 00049530  48 00 11 21 */	bl func_8004E9F0
/* 8004D8D4 00049534  38 7F 35 10 */	addi r3, r31, 0x3510
/* 8004D8D8 00049538  48 00 17 E5 */	bl func_8004F0BC
/* 8004D8DC 0004953C  38 7F 35 10 */	addi r3, r31, 0x3510
/* 8004D8E0 00049540  48 00 18 4D */	bl func_8004F12C
/* 8004D8E4 00049544  7F E3 FB 78 */	mr r3, r31
/* 8004D8E8 00049548  48 00 00 1D */	bl func_8004D904
/* 8004D8EC 0004954C  7F E3 FB 78 */	mr r3, r31
/* 8004D8F0 00049550  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004D8F4 00049554  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004D8F8 00049558  7C 08 03 A6 */	mtlr r0
/* 8004D8FC 0004955C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004D900 00049560  4E 80 00 20 */	blr

.global func_8004D904
func_8004D904:
/* 8004D904 00049564  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004D908 00049568  7C 08 02 A6 */	mflr r0
/* 8004D90C 0004956C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004D910 00049570  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004D914 00049574  3B E3 1D 40 */	addi r31, r3, 0x1d40
/* 8004D918 00049578  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004D91C 0004957C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004D920 00049580  7C 7D 1B 78 */	mr r29, r3
/* 8004D924 00049584  7F BE EB 78 */	mr r30, r29
/* 8004D928 00049588  48 00 00 10 */	b lbl_8004D938
lbl_8004D92C:
/* 8004D92C 0004958C  7F C3 F3 78 */	mr r3, r30
/* 8004D930 00049590  4B FF AE 6D */	bl func_8004879C
/* 8004D934 00049594  3B DE 00 9C */	addi r30, r30, 0x9c
lbl_8004D938:
/* 8004D938 00049598  7C 1E F8 40 */	cmplw r30, r31
/* 8004D93C 0004959C  40 82 FF F0 */	bne lbl_8004D92C
/* 8004D940 000495A0  7F A3 EB 78 */	mr r3, r29
/* 8004D944 000495A4  48 00 03 89 */	bl func_8004DCCC
/* 8004D948 000495A8  38 7D 35 10 */	addi r3, r29, 0x3510
/* 8004D94C 000495AC  48 00 19 B5 */	bl func_8004F300
/* 8004D950 000495B0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004D954 000495B4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004D958 000495B8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004D95C 000495BC  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004D960 000495C0  7C 08 03 A6 */	mtlr r0
/* 8004D964 000495C4  38 21 00 20 */	addi r1, r1, 0x20
/* 8004D968 000495C8  4E 80 00 20 */	blr

.global func_8004D96C
func_8004D96C:
/* 8004D96C 000495CC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004D970 000495D0  7C 08 02 A6 */	mflr r0
/* 8004D974 000495D4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004D978 000495D8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004D97C 000495DC  3B E3 1D 40 */	addi r31, r3, 0x1d40
/* 8004D980 000495E0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004D984 000495E4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004D988 000495E8  7C 7D 1B 78 */	mr r29, r3
/* 8004D98C 000495EC  7F BE EB 78 */	mr r30, r29
/* 8004D990 000495F0  48 00 00 1C */	b lbl_8004D9AC
lbl_8004D994:
/* 8004D994 000495F4  80 1E 00 8C */	lwz r0, 0x8c(r30)
/* 8004D998 000495F8  28 00 00 0C */	cmplwi r0, 0xc
/* 8004D99C 000495FC  41 82 00 0C */	beq lbl_8004D9A8
/* 8004D9A0 00049600  7F C3 F3 78 */	mr r3, r30
/* 8004D9A4 00049604  4B FF AD F9 */	bl func_8004879C
lbl_8004D9A8:
/* 8004D9A8 00049608  3B DE 00 9C */	addi r30, r30, 0x9c
lbl_8004D9AC:
/* 8004D9AC 0004960C  7C 1E F8 40 */	cmplw r30, r31
/* 8004D9B0 00049610  40 82 FF E4 */	bne lbl_8004D994
/* 8004D9B4 00049614  7F A3 EB 78 */	mr r3, r29
/* 8004D9B8 00049618  48 00 03 6D */	bl func_8004DD24
/* 8004D9BC 0004961C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004D9C0 00049620  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004D9C4 00049624  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004D9C8 00049628  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004D9CC 0004962C  7C 08 03 A6 */	mtlr r0
/* 8004D9D0 00049630  38 21 00 20 */	addi r1, r1, 0x20
/* 8004D9D4 00049634  4E 80 00 20 */	blr

.global func_8004D9D8
func_8004D9D8:
/* 8004D9D8 00049638  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004D9DC 0004963C  7C 08 02 A6 */	mflr r0
/* 8004D9E0 00049640  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004D9E4 00049644  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8004D9E8 00049648  FF E0 08 90 */	fmr f31, f1
/* 8004D9EC 0004964C  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8004D9F0 00049650  3B E3 1D 40 */	addi r31, r3, 0x1d40
/* 8004D9F4 00049654  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8004D9F8 00049658  3B C3 27 C0 */	addi r30, r3, 0x27c0
/* 8004D9FC 0004965C  93 A1 00 0C */	stw r29, 0xc(r1)
/* 8004DA00 00049660  7C 7D 1B 78 */	mr r29, r3
/* 8004DA04 00049664  48 00 00 14 */	b lbl_8004DA18
lbl_8004DA08:
/* 8004DA08 00049668  FC 20 F8 90 */	fmr f1, f31
/* 8004DA0C 0004966C  7F E3 FB 78 */	mr r3, r31
/* 8004DA10 00049670  4B FF A9 41 */	bl func_80048350
/* 8004DA14 00049674  3B FF 00 38 */	addi r31, r31, 0x38
lbl_8004DA18:
/* 8004DA18 00049678  7C 1F F0 40 */	cmplw r31, r30
/* 8004DA1C 0004967C  40 82 FF EC */	bne lbl_8004DA08
/* 8004DA20 00049680  3B FD 34 C0 */	addi r31, r29, 0x34c0
/* 8004DA24 00049684  48 00 00 20 */	b lbl_8004DA44
lbl_8004DA28:
/* 8004DA28 00049688  80 1E 00 34 */	lwz r0, 0x34(r30)
/* 8004DA2C 0004968C  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004DA30 00049690  41 82 00 10 */	beq lbl_8004DA40
/* 8004DA34 00049694  FC 20 F8 90 */	fmr f1, f31
/* 8004DA38 00049698  7F C3 F3 78 */	mr r3, r30
/* 8004DA3C 0004969C  48 00 0B 99 */	bl func_8004E5D4
lbl_8004DA40:
/* 8004DA40 000496A0  3B DE 00 68 */	addi r30, r30, 0x68
lbl_8004DA44:
/* 8004DA44 000496A4  7C 1E F8 40 */	cmplw r30, r31
/* 8004DA48 000496A8  40 82 FF E0 */	bne lbl_8004DA28
/* 8004DA4C 000496AC  FC 20 F8 90 */	fmr f1, f31
/* 8004DA50 000496B0  7F E3 FB 78 */	mr r3, r31
/* 8004DA54 000496B4  48 00 12 8D */	bl func_8004ECE0
/* 8004DA58 000496B8  FC 20 F8 90 */	fmr f1, f31
/* 8004DA5C 000496BC  38 7D 35 10 */	addi r3, r29, 0x3510
/* 8004DA60 000496C0  48 00 18 45 */	bl func_8004F2A4
/* 8004DA64 000496C4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004DA68 000496C8  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004DA6C 000496CC  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004DA70 000496D0  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8004DA74 000496D4  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 8004DA78 000496D8  7C 08 03 A6 */	mtlr r0
/* 8004DA7C 000496DC  38 21 00 20 */	addi r1, r1, 0x20
/* 8004DA80 000496E0  4E 80 00 20 */	blr
lbl_8004DA84:
/* 8004DA84 000496E4  4E 80 00 20 */	blr

.global func_8004DA88
func_8004DA88:
/* 8004DA88 000496E8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004DA8C 000496EC  7C 08 02 A6 */	mflr r0
/* 8004DA90 000496F0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004DA94 000496F4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004DA98 000496F8  3B E3 1D 40 */	addi r31, r3, 0x1d40
/* 8004DA9C 000496FC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004DAA0 00049700  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004DAA4 00049704  7C 9D 23 78 */	mr r29, r4
/* 8004DAA8 00049708  93 81 00 10 */	stw r28, 0x10(r1)
/* 8004DAAC 0004970C  7C 7C 1B 78 */	mr r28, r3
/* 8004DAB0 00049710  7F 9E E3 78 */	mr r30, r28
/* 8004DAB4 00049714  48 00 00 3C */	b lbl_8004DAF0
lbl_8004DAB8:
/* 8004DAB8 00049718  88 1E 00 00 */	lbz r0, 0(r30)
/* 8004DABC 0004971C  2C 00 00 00 */	cmpwi r0, 0
/* 8004DAC0 00049720  41 82 00 2C */	beq lbl_8004DAEC
/* 8004DAC4 00049724  7F A4 EB 78 */	mr r4, r29
/* 8004DAC8 00049728  38 7E 00 08 */	addi r3, r30, 8
/* 8004DACC 0004972C  48 18 09 81 */	bl strcmp
/* 8004DAD0 00049730  2C 03 00 00 */	cmpwi r3, 0
/* 8004DAD4 00049734  40 82 00 18 */	bne lbl_8004DAEC
/* 8004DAD8 00049738  80 9E 00 88 */	lwz r4, 0x88(r30)
/* 8004DADC 0004973C  7F C3 F3 78 */	mr r3, r30
/* 8004DAE0 00049740  38 04 00 01 */	addi r0, r4, 1
/* 8004DAE4 00049744  90 1E 00 88 */	stw r0, 0x88(r30)
/* 8004DAE8 00049748  48 00 00 4C */	b lbl_8004DB34
lbl_8004DAEC:
/* 8004DAEC 0004974C  3B DE 00 9C */	addi r30, r30, 0x9c
lbl_8004DAF0:
/* 8004DAF0 00049750  7C 1E F8 40 */	cmplw r30, r31
/* 8004DAF4 00049754  40 82 FF C4 */	bne lbl_8004DAB8
/* 8004DAF8 00049758  7F 83 E3 78 */	mr r3, r28
/* 8004DAFC 0004975C  48 00 01 2D */	bl func_8004DC28
/* 8004DB00 00049760  2C 03 00 00 */	cmpwi r3, 0
/* 8004DB04 00049764  7C 7E 1B 78 */	mr r30, r3
/* 8004DB08 00049768  41 82 00 28 */	beq lbl_8004DB30
/* 8004DB0C 0004976C  7F A4 EB 78 */	mr r4, r29
/* 8004DB10 00049770  4B FF AD 55 */	bl func_80048864
/* 8004DB14 00049774  2C 03 00 00 */	cmpwi r3, 0
/* 8004DB18 00049778  41 82 00 18 */	beq lbl_8004DB30
/* 8004DB1C 0004977C  80 9E 00 88 */	lwz r4, 0x88(r30)
/* 8004DB20 00049780  7F C3 F3 78 */	mr r3, r30
/* 8004DB24 00049784  38 04 00 01 */	addi r0, r4, 1
/* 8004DB28 00049788  90 1E 00 88 */	stw r0, 0x88(r30)
/* 8004DB2C 0004978C  48 00 00 08 */	b lbl_8004DB34
lbl_8004DB30:
/* 8004DB30 00049790  38 60 00 00 */	li r3, 0
lbl_8004DB34:
/* 8004DB34 00049794  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004DB38 00049798  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004DB3C 0004979C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004DB40 000497A0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004DB44 000497A4  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8004DB48 000497A8  7C 08 03 A6 */	mtlr r0
/* 8004DB4C 000497AC  38 21 00 20 */	addi r1, r1, 0x20
/* 8004DB50 000497B0  4E 80 00 20 */	blr

.global func_8004DB54
func_8004DB54:
/* 8004DB54 000497B4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004DB58 000497B8  7C 08 02 A6 */	mflr r0
/* 8004DB5C 000497BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004DB60 000497C0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004DB64 000497C4  7C BF 2B 78 */	mr r31, r5
/* 8004DB68 000497C8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004DB6C 000497CC  7C 9E 23 78 */	mr r30, r4
/* 8004DB70 000497D0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004DB74 000497D4  7C 7D 1B 78 */	mr r29, r3
/* 8004DB78 000497D8  48 00 00 71 */	bl func_8004DBE8
/* 8004DB7C 000497DC  2C 03 00 00 */	cmpwi r3, 0
/* 8004DB80 000497E0  40 82 00 20 */	bne lbl_8004DBA0
/* 8004DB84 000497E4  7F A3 EB 78 */	mr r3, r29
/* 8004DB88 000497E8  48 00 00 A1 */	bl func_8004DC28
/* 8004DB8C 000497EC  2C 03 00 00 */	cmpwi r3, 0
/* 8004DB90 000497F0  41 82 00 10 */	beq lbl_8004DBA0
/* 8004DB94 000497F4  7F C4 F3 78 */	mr r4, r30
/* 8004DB98 000497F8  7F E5 FB 78 */	mr r5, r31
/* 8004DB9C 000497FC  4B FF AD 6D */	bl func_80048908
lbl_8004DBA0:
/* 8004DBA0 00049800  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004DBA4 00049804  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004DBA8 00049808  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004DBAC 0004980C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004DBB0 00049810  7C 08 03 A6 */	mtlr r0
/* 8004DBB4 00049814  38 21 00 20 */	addi r1, r1, 0x20
/* 8004DBB8 00049818  4E 80 00 20 */	blr

.global func_8004DBBC
func_8004DBBC:
/* 8004DBBC 0004981C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DBC0 00049820  7C 08 02 A6 */	mflr r0
/* 8004DBC4 00049824  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DBC8 00049828  48 00 00 21 */	bl func_8004DBE8
/* 8004DBCC 0004982C  2C 03 00 00 */	cmpwi r3, 0
/* 8004DBD0 00049830  41 82 00 08 */	beq lbl_8004DBD8
/* 8004DBD4 00049834  4B FF AB C9 */	bl func_8004879C
lbl_8004DBD8:
/* 8004DBD8 00049838  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DBDC 0004983C  7C 08 03 A6 */	mtlr r0
/* 8004DBE0 00049840  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DBE4 00049844  4E 80 00 20 */	blr

.global func_8004DBE8
func_8004DBE8:
/* 8004DBE8 00049848  38 03 1D 40 */	addi r0, r3, 0x1d40
/* 8004DBEC 0004984C  48 00 00 2C */	b lbl_8004DC18
lbl_8004DBF0:
/* 8004DBF0 00049850  88 C3 00 00 */	lbz r6, 0(r3)
/* 8004DBF4 00049854  2C 06 00 00 */	cmpwi r6, 0
/* 8004DBF8 00049858  41 82 00 1C */	beq lbl_8004DC14
/* 8004DBFC 0004985C  80 C3 00 8C */	lwz r6, 0x8c(r3)
/* 8004DC00 00049860  7C 04 30 40 */	cmplw r4, r6
/* 8004DC04 00049864  40 82 00 10 */	bne lbl_8004DC14
/* 8004DC08 00049868  80 C3 00 90 */	lwz r6, 0x90(r3)
/* 8004DC0C 0004986C  7C 05 30 40 */	cmplw r5, r6
/* 8004DC10 00049870  4D 82 00 20 */	beqlr
lbl_8004DC14:
/* 8004DC14 00049874  38 63 00 9C */	addi r3, r3, 0x9c
lbl_8004DC18:
/* 8004DC18 00049878  7C 03 00 40 */	cmplw r3, r0
/* 8004DC1C 0004987C  40 82 FF D4 */	bne lbl_8004DBF0
/* 8004DC20 00049880  38 60 00 00 */	li r3, 0
/* 8004DC24 00049884  4E 80 00 20 */	blr

.global func_8004DC28
func_8004DC28:
/* 8004DC28 00049888  38 03 1D 40 */	addi r0, r3, 0x1d40
/* 8004DC2C 0004988C  48 00 00 14 */	b lbl_8004DC40
lbl_8004DC30:
/* 8004DC30 00049890  88 83 00 00 */	lbz r4, 0(r3)
/* 8004DC34 00049894  2C 04 00 00 */	cmpwi r4, 0
/* 8004DC38 00049898  4D 82 00 20 */	beqlr
/* 8004DC3C 0004989C  38 63 00 9C */	addi r3, r3, 0x9c
lbl_8004DC40:
/* 8004DC40 000498A0  7C 03 00 40 */	cmplw r3, r0
/* 8004DC44 000498A4  40 82 FF EC */	bne lbl_8004DC30
/* 8004DC48 000498A8  38 60 00 00 */	li r3, 0
/* 8004DC4C 000498AC  4E 80 00 20 */	blr

.global func_8004DC50
func_8004DC50:
/* 8004DC50 000498B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DC54 000498B4  7C 08 02 A6 */	mflr r0
/* 8004DC58 000498B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DC5C 000498BC  38 03 34 C0 */	addi r0, r3, 0x34c0
/* 8004DC60 000498C0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DC64 000498C4  3B E3 27 C0 */	addi r31, r3, 0x27c0
/* 8004DC68 000498C8  48 00 00 24 */	b lbl_8004DC8C
lbl_8004DC6C:
/* 8004DC6C 000498CC  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 8004DC70 000498D0  54 63 07 FF */	clrlwi. r3, r3, 0x1f
/* 8004DC74 000498D4  40 82 00 14 */	bne lbl_8004DC88
/* 8004DC78 000498D8  7F E3 FB 78 */	mr r3, r31
/* 8004DC7C 000498DC  48 00 02 D1 */	bl func_8004DF4C
/* 8004DC80 000498E0  7F E3 FB 78 */	mr r3, r31
/* 8004DC84 000498E4  48 00 00 14 */	b lbl_8004DC98
lbl_8004DC88:
/* 8004DC88 000498E8  3B FF 00 68 */	addi r31, r31, 0x68
lbl_8004DC8C:
/* 8004DC8C 000498EC  7C 1F 00 40 */	cmplw r31, r0
/* 8004DC90 000498F0  40 82 FF DC */	bne lbl_8004DC6C
/* 8004DC94 000498F4  38 60 00 00 */	li r3, 0
lbl_8004DC98:
/* 8004DC98 000498F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DC9C 000498FC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DCA0 00049900  7C 08 03 A6 */	mtlr r0
/* 8004DCA4 00049904  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DCA8 00049908  4E 80 00 20 */	blr

.global func_8004DCAC
func_8004DCAC:
/* 8004DCAC 0004990C  2C 04 00 00 */	cmpwi r4, 0
/* 8004DCB0 00049910  4D 82 00 20 */	beqlr
/* 8004DCB4 00049914  80 04 00 34 */	lwz r0, 0x34(r4)
/* 8004DCB8 00049918  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004DCBC 0004991C  4D 82 00 20 */	beqlr
/* 8004DCC0 00049920  7C 83 23 78 */	mr r3, r4
/* 8004DCC4 00049924  48 00 02 B4 */	b func_8004DF78
/* 8004DCC8 00049928  4E 80 00 20 */	blr

.global func_8004DCCC
func_8004DCCC:
/* 8004DCCC 0004992C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DCD0 00049930  7C 08 02 A6 */	mflr r0
/* 8004DCD4 00049934  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DCD8 00049938  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DCDC 0004993C  3B E3 34 C0 */	addi r31, r3, 0x34c0
/* 8004DCE0 00049940  93 C1 00 08 */	stw r30, 8(r1)
/* 8004DCE4 00049944  3B C3 27 C0 */	addi r30, r3, 0x27c0
/* 8004DCE8 00049948  48 00 00 1C */	b lbl_8004DD04
lbl_8004DCEC:
/* 8004DCEC 0004994C  80 1E 00 34 */	lwz r0, 0x34(r30)
/* 8004DCF0 00049950  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004DCF4 00049954  41 82 00 0C */	beq lbl_8004DD00
/* 8004DCF8 00049958  7F C3 F3 78 */	mr r3, r30
/* 8004DCFC 0004995C  48 00 02 7D */	bl func_8004DF78
lbl_8004DD00:
/* 8004DD00 00049960  3B DE 00 68 */	addi r30, r30, 0x68
lbl_8004DD04:
/* 8004DD04 00049964  7C 1E F8 40 */	cmplw r30, r31
/* 8004DD08 00049968  40 82 FF E4 */	bne lbl_8004DCEC
/* 8004DD0C 0004996C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DD10 00049970  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DD14 00049974  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004DD18 00049978  7C 08 03 A6 */	mtlr r0
/* 8004DD1C 0004997C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DD20 00049980  4E 80 00 20 */	blr

.global func_8004DD24
func_8004DD24:
/* 8004DD24 00049984  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DD28 00049988  7C 08 02 A6 */	mflr r0
/* 8004DD2C 0004998C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DD30 00049990  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DD34 00049994  3B E3 34 C0 */	addi r31, r3, 0x34c0
/* 8004DD38 00049998  93 C1 00 08 */	stw r30, 8(r1)
/* 8004DD3C 0004999C  3B C3 27 C0 */	addi r30, r3, 0x27c0
/* 8004DD40 000499A0  48 00 00 38 */	b lbl_8004DD78
lbl_8004DD44:
/* 8004DD44 000499A4  80 1E 00 34 */	lwz r0, 0x34(r30)
/* 8004DD48 000499A8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004DD4C 000499AC  41 82 00 28 */	beq lbl_8004DD74
/* 8004DD50 000499B0  80 1E 00 44 */	lwz r0, 0x44(r30)
/* 8004DD54 000499B4  28 00 00 0C */	cmplwi r0, 0xc
/* 8004DD58 000499B8  41 82 00 1C */	beq lbl_8004DD74
/* 8004DD5C 000499BC  28 00 00 64 */	cmplwi r0, 0x64
/* 8004DD60 000499C0  41 80 00 0C */	blt lbl_8004DD6C
/* 8004DD64 000499C4  28 00 00 73 */	cmplwi r0, 0x73
/* 8004DD68 000499C8  40 81 00 0C */	ble lbl_8004DD74
lbl_8004DD6C:
/* 8004DD6C 000499CC  7F C3 F3 78 */	mr r3, r30
/* 8004DD70 000499D0  48 00 02 09 */	bl func_8004DF78
lbl_8004DD74:
/* 8004DD74 000499D4  3B DE 00 68 */	addi r30, r30, 0x68
lbl_8004DD78:
/* 8004DD78 000499D8  7C 1E F8 40 */	cmplw r30, r31
/* 8004DD7C 000499DC  40 82 FF C8 */	bne lbl_8004DD44
/* 8004DD80 000499E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DD84 000499E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DD88 000499E8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004DD8C 000499EC  7C 08 03 A6 */	mtlr r0
/* 8004DD90 000499F0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DD94 000499F4  4E 80 00 20 */	blr

.global func_8004DD98
func_8004DD98:
/* 8004DD98 000499F8  38 83 1D 40 */	addi r4, r3, 0x1d40
/* 8004DD9C 000499FC  38 03 27 C0 */	addi r0, r3, 0x27c0
/* 8004DDA0 00049A00  48 00 00 1C */	b lbl_8004DDBC
lbl_8004DDA4:
/* 8004DDA4 00049A04  80 64 00 00 */	lwz r3, 0(r4)
/* 8004DDA8 00049A08  54 63 07 FF */	clrlwi. r3, r3, 0x1f
/* 8004DDAC 00049A0C  40 82 00 0C */	bne lbl_8004DDB8
/* 8004DDB0 00049A10  7C 83 23 78 */	mr r3, r4
/* 8004DDB4 00049A14  4E 80 00 20 */	blr
lbl_8004DDB8:
/* 8004DDB8 00049A18  38 84 00 38 */	addi r4, r4, 0x38
lbl_8004DDBC:
/* 8004DDBC 00049A1C  7C 04 00 40 */	cmplw r4, r0
/* 8004DDC0 00049A20  40 82 FF E4 */	bne lbl_8004DDA4
/* 8004DDC4 00049A24  38 60 00 00 */	li r3, 0
/* 8004DDC8 00049A28  4E 80 00 20 */	blr

.global func_8004DDCC
func_8004DDCC:
/* 8004DDCC 00049A2C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DDD0 00049A30  7C 08 02 A6 */	mflr r0
/* 8004DDD4 00049A34  2C 04 00 00 */	cmpwi r4, 0
/* 8004DDD8 00049A38  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DDDC 00049A3C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DDE0 00049A40  41 82 00 34 */	beq lbl_8004DE14
/* 8004DDE4 00049A44  80 04 00 00 */	lwz r0, 0(r4)
/* 8004DDE8 00049A48  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8004DDEC 00049A4C  41 82 00 28 */	beq lbl_8004DE14
/* 8004DDF0 00049A50  83 E4 00 24 */	lwz r31, 0x24(r4)
/* 8004DDF4 00049A54  7C 83 23 78 */	mr r3, r4
/* 8004DDF8 00049A58  4B FF 9C B1 */	bl func_80047AA8
/* 8004DDFC 00049A5C  80 1F 00 88 */	lwz r0, 0x88(r31)
/* 8004DE00 00049A60  34 00 FF FF */	addic. r0, r0, -1
/* 8004DE04 00049A64  90 1F 00 88 */	stw r0, 0x88(r31)
/* 8004DE08 00049A68  40 82 00 0C */	bne lbl_8004DE14
/* 8004DE0C 00049A6C  7F E3 FB 78 */	mr r3, r31
/* 8004DE10 00049A70  4B FF A9 8D */	bl func_8004879C
lbl_8004DE14:
/* 8004DE14 00049A74  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DE18 00049A78  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DE1C 00049A7C  7C 08 03 A6 */	mtlr r0
/* 8004DE20 00049A80  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DE24 00049A84  4E 80 00 20 */	blr

.global func_8004DE28
func_8004DE28:
/* 8004DE28 00049A88  38 00 00 20 */	li r0, 0x20
/* 8004DE2C 00049A8C  7C 65 1B 78 */	mr r5, r3
/* 8004DE30 00049A90  38 C0 00 00 */	li r6, 0
/* 8004DE34 00049A94  7C 09 03 A6 */	mtctr r0
lbl_8004DE38:
/* 8004DE38 00049A98  80 05 28 10 */	lwz r0, 0x2810(r5)
/* 8004DE3C 00049A9C  7C 04 00 40 */	cmplw r4, r0
/* 8004DE40 00049AA0  40 82 00 14 */	bne lbl_8004DE54
/* 8004DE44 00049AA4  1C 06 00 68 */	mulli r0, r6, 0x68
/* 8004DE48 00049AA8  7C 63 02 14 */	add r3, r3, r0
/* 8004DE4C 00049AAC  38 63 27 C0 */	addi r3, r3, 0x27c0
/* 8004DE50 00049AB0  4E 80 00 20 */	blr
lbl_8004DE54:
/* 8004DE54 00049AB4  38 A5 00 68 */	addi r5, r5, 0x68
/* 8004DE58 00049AB8  38 C6 00 01 */	addi r6, r6, 1
/* 8004DE5C 00049ABC  42 00 FF DC */	bdnz lbl_8004DE38
/* 8004DE60 00049AC0  38 60 00 00 */	li r3, 0
/* 8004DE64 00049AC4  4E 80 00 20 */	blr

.global func_8004DE68
func_8004DE68:
/* 8004DE68 00049AC8  38 A0 00 01 */	li r5, 1
/* 8004DE6C 00049ACC  38 6D 98 28 */	addi r3, r13, lbl_8063EAE8-_SDA_BASE_
/* 8004DE70 00049AD0  38 80 00 04 */	li r4, 4
/* 8004DE74 00049AD4  38 00 00 00 */	li r0, 0
/* 8004DE78 00049AD8  98 AD 98 28 */	stb r5, lbl_8063EAE8-_SDA_BASE_(r13)
/* 8004DE7C 00049ADC  B0 83 00 02 */	sth r4, 2(r3)
/* 8004DE80 00049AE0  98 03 00 04 */	stb r0, 4(r3)
/* 8004DE84 00049AE4  4E 80 00 20 */	blr
lbl_8004DE88:
/* 8004DE88 00049AE8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DE8C 00049AEC  7C 08 02 A6 */	mflr r0
/* 8004DE90 00049AF0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DE94 00049AF4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DE98 00049AF8  7C 7F 1B 78 */	mr r31, r3
/* 8004DE9C 00049AFC  48 00 26 91 */	bl func_8005052C
/* 8004DEA0 00049B00  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004DEA4 00049B04  38 00 00 00 */	li r0, 0
/* 8004DEA8 00049B08  90 1F 00 40 */	stw r0, 0x40(r31)
/* 8004DEAC 00049B0C  7F E3 FB 78 */	mr r3, r31
/* 8004DEB0 00049B10  90 1F 00 3C */	stw r0, 0x3c(r31)
/* 8004DEB4 00049B14  90 1F 00 38 */	stw r0, 0x38(r31)
/* 8004DEB8 00049B18  D0 1F 00 4C */	stfs f0, 0x4c(r31)
/* 8004DEBC 00049B1C  90 1F 00 34 */	stw r0, 0x34(r31)
/* 8004DEC0 00049B20  90 1F 00 44 */	stw r0, 0x44(r31)
/* 8004DEC4 00049B24  90 1F 00 48 */	stw r0, 0x48(r31)
/* 8004DEC8 00049B28  90 1F 00 54 */	stw r0, 0x54(r31)
/* 8004DECC 00049B2C  48 00 00 81 */	bl func_8004DF4C
/* 8004DED0 00049B30  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004DED4 00049B34  7F E3 FB 78 */	mr r3, r31
/* 8004DED8 00049B38  D0 1F 00 5C */	stfs f0, 0x5c(r31)
/* 8004DEDC 00049B3C  D0 1F 00 60 */	stfs f0, 0x60(r31)
/* 8004DEE0 00049B40  D0 1F 00 64 */	stfs f0, 0x64(r31)
/* 8004DEE4 00049B44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DEE8 00049B48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DEEC 00049B4C  7C 08 03 A6 */	mtlr r0
/* 8004DEF0 00049B50  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DEF4 00049B54  4E 80 00 20 */	blr
lbl_8004DEF8:
/* 8004DEF8 00049B58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DEFC 00049B5C  7C 08 02 A6 */	mflr r0
/* 8004DF00 00049B60  2C 03 00 00 */	cmpwi r3, 0
/* 8004DF04 00049B64  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DF08 00049B68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DF0C 00049B6C  7C 9F 23 78 */	mr r31, r4
/* 8004DF10 00049B70  93 C1 00 08 */	stw r30, 8(r1)
/* 8004DF14 00049B74  7C 7E 1B 78 */	mr r30, r3
/* 8004DF18 00049B78  41 82 00 18 */	beq lbl_8004DF30
/* 8004DF1C 00049B7C  48 00 00 5D */	bl func_8004DF78
/* 8004DF20 00049B80  2C 1F 00 00 */	cmpwi r31, 0
/* 8004DF24 00049B84  40 81 00 0C */	ble lbl_8004DF30
/* 8004DF28 00049B88  7F C3 F3 78 */	mr r3, r30
/* 8004DF2C 00049B8C  48 18 CB 8D */	bl func_801DAAB8
lbl_8004DF30:
/* 8004DF30 00049B90  7F C3 F3 78 */	mr r3, r30
/* 8004DF34 00049B94  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DF38 00049B98  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004DF3C 00049B9C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DF40 00049BA0  7C 08 03 A6 */	mtlr r0
/* 8004DF44 00049BA4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DF48 00049BA8  4E 80 00 20 */	blr

.global func_8004DF4C
func_8004DF4C:
/* 8004DF4C 00049BAC  80 AD 81 88 */	lwz r5, lbl_8063D448-_SDA_BASE_(r13)
/* 8004DF50 00049BB0  3C 00 00 01 */	lis r0, 1
/* 8004DF54 00049BB4  64 A4 82 90 */	oris r4, r5, 0x8290
/* 8004DF58 00049BB8  38 A5 00 01 */	addi r5, r5, 1
/* 8004DF5C 00049BBC  90 83 00 50 */	stw r4, 0x50(r3)
/* 8004DF60 00049BC0  7C 05 00 40 */	cmplw r5, r0
/* 8004DF64 00049BC4  90 AD 81 88 */	stw r5, lbl_8063D448-_SDA_BASE_(r13)
/* 8004DF68 00049BC8  4C 81 00 20 */	blelr
/* 8004DF6C 00049BCC  38 00 00 01 */	li r0, 1
/* 8004DF70 00049BD0  90 0D 81 88 */	stw r0, lbl_8063D448-_SDA_BASE_(r13)
/* 8004DF74 00049BD4  4E 80 00 20 */	blr

.global func_8004DF78
func_8004DF78:
/* 8004DF78 00049BD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DF7C 00049BDC  7C 08 02 A6 */	mflr r0
/* 8004DF80 00049BE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DF84 00049BE4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DF88 00049BE8  93 C1 00 08 */	stw r30, 8(r1)
/* 8004DF8C 00049BEC  7C 7E 1B 78 */	mr r30, r3
/* 8004DF90 00049BF0  80 03 00 40 */	lwz r0, 0x40(r3)
/* 8004DF94 00049BF4  2C 00 00 00 */	cmpwi r0, 0
/* 8004DF98 00049BF8  41 82 00 28 */	beq lbl_8004DFC0
/* 8004DF9C 00049BFC  41 82 00 1C */	beq lbl_8004DFB8
/* 8004DFA0 00049C00  7C 03 03 78 */	mr r3, r0
/* 8004DFA4 00049C04  38 80 00 01 */	li r4, 1
/* 8004DFA8 00049C08  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8004DFAC 00049C0C  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004DFB0 00049C10  7D 89 03 A6 */	mtctr r12
/* 8004DFB4 00049C14  4E 80 04 21 */	bctrl
lbl_8004DFB8:
/* 8004DFB8 00049C18  38 00 00 00 */	li r0, 0
/* 8004DFBC 00049C1C  90 1E 00 40 */	stw r0, 0x40(r30)
lbl_8004DFC0:
/* 8004DFC0 00049C20  80 7E 00 3C */	lwz r3, 0x3c(r30)
/* 8004DFC4 00049C24  2C 03 00 00 */	cmpwi r3, 0
/* 8004DFC8 00049C28  41 82 00 1C */	beq lbl_8004DFE4
/* 8004DFCC 00049C2C  80 9E 00 34 */	lwz r4, 0x34(r30)
/* 8004DFD0 00049C30  54 80 07 BD */	rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 8004DFD4 00049C34  41 82 00 10 */	beq lbl_8004DFE4
/* 8004DFD8 00049C38  54 80 07 FA */	rlwinm r0, r4, 0, 0x1f, 0x1d
/* 8004DFDC 00049C3C  90 1E 00 34 */	stw r0, 0x34(r30)
/* 8004DFE0 00049C40  48 1B 8E 15 */	bl func_80206DF4
lbl_8004DFE4:
/* 8004DFE4 00049C44  80 7E 00 38 */	lwz r3, 0x38(r30)
/* 8004DFE8 00049C48  3B E0 00 00 */	li r31, 0
/* 8004DFEC 00049C4C  93 FE 00 3C */	stw r31, 0x3c(r30)
/* 8004DFF0 00049C50  2C 03 00 00 */	cmpwi r3, 0
/* 8004DFF4 00049C54  41 82 00 0C */	beq lbl_8004E000
/* 8004DFF8 00049C58  48 18 CE AD */	bl func_801DAEA4
/* 8004DFFC 00049C5C  93 FE 00 38 */	stw r31, 0x38(r30)
lbl_8004E000:
/* 8004E000 00049C60  80 1E 00 34 */	lwz r0, 0x34(r30)
/* 8004E004 00049C64  54 00 06 73 */	rlwinm. r0, r0, 0, 0x19, 0x19
/* 8004E008 00049C68  41 82 00 1C */	beq lbl_8004E024
/* 8004E00C 00049C6C  80 7E 00 44 */	lwz r3, 0x44(r30)
/* 8004E010 00049C70  80 9E 00 48 */	lwz r4, 0x48(r30)
/* 8004E014 00049C74  48 18 D5 35 */	bl func_801DB548
/* 8004E018 00049C78  38 00 00 00 */	li r0, 0
/* 8004E01C 00049C7C  90 1E 00 44 */	stw r0, 0x44(r30)
/* 8004E020 00049C80  90 1E 00 48 */	stw r0, 0x48(r30)
lbl_8004E024:
/* 8004E024 00049C84  38 00 00 00 */	li r0, 0
/* 8004E028 00049C88  90 1E 00 34 */	stw r0, 0x34(r30)
/* 8004E02C 00049C8C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004E030 00049C90  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004E034 00049C94  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004E038 00049C98  7C 08 03 A6 */	mtlr r0
/* 8004E03C 00049C9C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004E040 00049CA0  4E 80 00 20 */	blr

.global func_8004E044
func_8004E044:
/* 8004E044 00049CA4  94 21 FE D0 */	stwu r1, -0x130(r1)
/* 8004E048 00049CA8  7C 08 02 A6 */	mflr r0
/* 8004E04C 00049CAC  90 01 01 34 */	stw r0, 0x134(r1)
/* 8004E050 00049CB0  39 61 01 30 */	addi r11, r1, 0x130
/* 8004E054 00049CB4  48 17 90 D5 */	bl _savegpr_27
/* 8004E058 00049CB8  3C A0 80 41 */	lis r5, lbl_8040AAF8@ha
/* 8004E05C 00049CBC  7C 7B 1B 78 */	mr r27, r3
/* 8004E060 00049CC0  7C 86 23 78 */	mr r6, r4
/* 8004E064 00049CC4  38 61 00 10 */	addi r3, r1, 0x10
/* 8004E068 00049CC8  38 85 AA F8 */	addi r4, r5, lbl_8040AAF8@l
/* 8004E06C 00049CCC  38 AD 81 90 */	addi r5, r13, lbl_8063D450-_SDA_BASE_
/* 8004E070 00049CD0  4C C6 31 82 */	crclr 6
/* 8004E074 00049CD4  48 17 EA 89 */	bl sprintf
/* 8004E078 00049CD8  38 61 00 10 */	addi r3, r1, 0x10
/* 8004E07C 00049CDC  38 81 00 08 */	addi r4, r1, 8
/* 8004E080 00049CE0  48 18 EB 41 */	bl func_801DCBC0
/* 8004E084 00049CE4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E088 00049CE8  7C 7E 1B 78 */	mr r30, r3
/* 8004E08C 00049CEC  40 82 00 0C */	bne lbl_8004E098
/* 8004E090 00049CF0  38 60 00 00 */	li r3, 0
/* 8004E094 00049CF4  48 00 00 BC */	b lbl_8004E150
lbl_8004E098:
/* 8004E098 00049CF8  48 1B 8C F5 */	bl func_80206D8C
/* 8004E09C 00049CFC  2C 03 00 00 */	cmpwi r3, 0
/* 8004E0A0 00049D00  7C 7D 1B 78 */	mr r29, r3
/* 8004E0A4 00049D04  40 82 00 14 */	bne lbl_8004E0B8
/* 8004E0A8 00049D08  7F C3 F3 78 */	mr r3, r30
/* 8004E0AC 00049D0C  48 18 CD F9 */	bl func_801DAEA4
/* 8004E0B0 00049D10  38 60 00 00 */	li r3, 0
/* 8004E0B4 00049D14  48 00 00 9C */	b lbl_8004E150
lbl_8004E0B8:
/* 8004E0B8 00049D18  48 18 CA 71 */	bl func_801DAB28
/* 8004E0BC 00049D1C  2C 03 00 00 */	cmpwi r3, 0
/* 8004E0C0 00049D20  41 82 00 14 */	beq lbl_8004E0D4
/* 8004E0C4 00049D24  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004E0C8 00049D28  38 80 01 40 */	li r4, 0x140
/* 8004E0CC 00049D2C  48 18 CB C9 */	bl func_801DAC94
/* 8004E0D0 00049D30  48 00 00 08 */	b lbl_8004E0D8
lbl_8004E0D4:
/* 8004E0D4 00049D34  38 60 00 00 */	li r3, 0
lbl_8004E0D8:
/* 8004E0D8 00049D38  2C 03 00 00 */	cmpwi r3, 0
/* 8004E0DC 00049D3C  7C 7F 1B 78 */	mr r31, r3
/* 8004E0E0 00049D40  41 82 00 10 */	beq lbl_8004E0F0
/* 8004E0E4 00049D44  7F A4 EB 78 */	mr r4, r29
/* 8004E0E8 00049D48  48 1A B8 05 */	bl func_801F98EC
/* 8004E0EC 00049D4C  7C 7F 1B 78 */	mr r31, r3
lbl_8004E0F0:
/* 8004E0F0 00049D50  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E0F4 00049D54  40 82 00 1C */	bne lbl_8004E110
/* 8004E0F8 00049D58  7F A3 EB 78 */	mr r3, r29
/* 8004E0FC 00049D5C  48 1B 8C F9 */	bl func_80206DF4
/* 8004E100 00049D60  7F C3 F3 78 */	mr r3, r30
/* 8004E104 00049D64  48 18 CD A1 */	bl func_801DAEA4
/* 8004E108 00049D68  38 60 00 00 */	li r3, 0
/* 8004E10C 00049D6C  48 00 00 44 */	b lbl_8004E150
lbl_8004E110:
/* 8004E110 00049D70  80 1B 00 34 */	lwz r0, 0x34(r27)
/* 8004E114 00049D74  7F 63 DB 78 */	mr r3, r27
/* 8004E118 00049D78  54 1C 07 7A */	rlwinm r28, r0, 0, 0x1d, 0x1d
/* 8004E11C 00049D7C  4B FF FE 5D */	bl func_8004DF78
/* 8004E120 00049D80  80 BB 00 34 */	lwz r5, 0x34(r27)
/* 8004E124 00049D84  63 83 00 03 */	ori r3, r28, 3
/* 8004E128 00049D88  38 80 1E DC */	li r4, 0x1edc
/* 8004E12C 00049D8C  38 00 00 00 */	li r0, 0
/* 8004E130 00049D90  7C A5 1B 78 */	or r5, r5, r3
/* 8004E134 00049D94  93 DB 00 38 */	stw r30, 0x38(r27)
/* 8004E138 00049D98  38 60 00 01 */	li r3, 1
/* 8004E13C 00049D9C  93 BB 00 3C */	stw r29, 0x3c(r27)
/* 8004E140 00049DA0  93 FB 00 40 */	stw r31, 0x40(r27)
/* 8004E144 00049DA4  90 BB 00 34 */	stw r5, 0x34(r27)
/* 8004E148 00049DA8  90 9B 00 44 */	stw r4, 0x44(r27)
/* 8004E14C 00049DAC  90 1B 00 48 */	stw r0, 0x48(r27)
lbl_8004E150:
/* 8004E150 00049DB0  39 61 01 30 */	addi r11, r1, 0x130
/* 8004E154 00049DB4  48 17 90 21 */	bl _restgpr_27
/* 8004E158 00049DB8  80 01 01 34 */	lwz r0, 0x134(r1)
/* 8004E15C 00049DBC  7C 08 03 A6 */	mtlr r0
/* 8004E160 00049DC0  38 21 01 30 */	addi r1, r1, 0x130
/* 8004E164 00049DC4  4E 80 00 20 */	blr

.global func_8004E168
func_8004E168:
/* 8004E168 00049DC8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E16C 00049DCC  7C 08 02 A6 */	mflr r0
/* 8004E170 00049DD0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004E174 00049DD4  54 A0 00 01 */	rlwinm. r0, r5, 0, 0, 0
/* 8004E178 00049DD8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004E17C 00049DDC  7C BF 2B 78 */	mr r31, r5
/* 8004E180 00049DE0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004E184 00049DE4  7C 9E 23 78 */	mr r30, r4
/* 8004E188 00049DE8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004E18C 00049DEC  7C 7D 1B 78 */	mr r29, r3
/* 8004E190 00049DF0  40 82 00 4C */	bne lbl_8004E1DC
/* 8004E194 00049DF4  54 A0 07 39 */	rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 8004E198 00049DF8  41 82 00 2C */	beq lbl_8004E1C4
/* 8004E19C 00049DFC  54 A0 07 FF */	clrlwi. r0, r5, 0x1f
/* 8004E1A0 00049E00  54 BF 07 76 */	rlwinm r31, r5, 0, 0x1d, 0x1b
/* 8004E1A4 00049E04  41 82 00 08 */	beq lbl_8004E1AC
/* 8004E1A8 00049E08  63 FF 00 40 */	ori r31, r31, 0x40
lbl_8004E1AC:
/* 8004E1AC 00049E0C  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8004E1B0 00049E10  41 82 00 08 */	beq lbl_8004E1B8
/* 8004E1B4 00049E14  63 FF 00 80 */	ori r31, r31, 0x80
lbl_8004E1B8:
/* 8004E1B8 00049E18  57 E0 07 7B */	rlwinm. r0, r31, 0, 0x1d, 0x1d
/* 8004E1BC 00049E1C  41 82 00 08 */	beq lbl_8004E1C4
/* 8004E1C0 00049E20  63 FF 01 00 */	ori r31, r31, 0x100
lbl_8004E1C4:
/* 8004E1C4 00049E24  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 8004E1C8 00049E28  40 82 00 08 */	bne lbl_8004E1D0
/* 8004E1CC 00049E2C  63 FF 00 09 */	ori r31, r31, 9
lbl_8004E1D0:
/* 8004E1D0 00049E30  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8004E1D4 00049E34  40 82 00 08 */	bne lbl_8004E1DC
/* 8004E1D8 00049E38  63 FF 00 12 */	ori r31, r31, 0x12
lbl_8004E1DC:
/* 8004E1DC 00049E3C  2C 04 00 00 */	cmpwi r4, 0
/* 8004E1E0 00049E40  41 82 00 38 */	beq lbl_8004E218
/* 8004E1E4 00049E44  80 83 00 40 */	lwz r4, 0x40(r3)
/* 8004E1E8 00049E48  2C 04 00 00 */	cmpwi r4, 0
/* 8004E1EC 00049E4C  41 82 00 2C */	beq lbl_8004E218
/* 8004E1F0 00049E50  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 8004E1F4 00049E54  2C 03 00 00 */	cmpwi r3, 0
/* 8004E1F8 00049E58  41 82 00 08 */	beq lbl_8004E200
/* 8004E1FC 00049E5C  48 1A 40 2D */	bl func_801F2228
lbl_8004E200:
/* 8004E200 00049E60  80 BD 00 40 */	lwz r5, 0x40(r29)
/* 8004E204 00049E64  7F C3 F3 78 */	mr r3, r30
/* 8004E208 00049E68  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 8004E20C 00049E6C  38 C0 00 00 */	li r6, 0
/* 8004E210 00049E70  38 E0 00 03 */	li r7, 3
/* 8004E214 00049E74  48 1A 3F 79 */	bl func_801F218C
lbl_8004E218:
/* 8004E218 00049E78  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004E21C 00049E7C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004E220 00049E80  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004E224 00049E84  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004E228 00049E88  7C 08 03 A6 */	mtlr r0
/* 8004E22C 00049E8C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E230 00049E90  4E 80 00 20 */	blr

.global func_8004E234
func_8004E234:
/* 8004E234 00049E94  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004E238 00049E98  7C 08 02 A6 */	mflr r0
/* 8004E23C 00049E9C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004E240 00049EA0  39 61 00 30 */	addi r11, r1, 0x30
/* 8004E244 00049EA4  48 17 8E DD */	bl _savegpr_25
/* 8004E248 00049EA8  54 A0 BE BE */	rlwinm r0, r5, 0x17, 0x1a, 0x1f
/* 8004E24C 00049EAC  7C 79 1B 78 */	mr r25, r3
/* 8004E250 00049EB0  28 00 00 05 */	cmplwi r0, 5
/* 8004E254 00049EB4  7C 9A 23 78 */	mr r26, r4
/* 8004E258 00049EB8  7C DC 33 78 */	mr r28, r6
/* 8004E25C 00049EBC  41 82 00 0C */	beq lbl_8004E268
/* 8004E260 00049EC0  38 60 00 00 */	li r3, 0
/* 8004E264 00049EC4  48 00 00 D8 */	b lbl_8004E33C
lbl_8004E268:
/* 8004E268 00049EC8  54 A0 00 5E */	rlwinm r0, r5, 0, 1, 0xf
/* 8004E26C 00049ECC  7F 43 D3 78 */	mr r3, r26
/* 8004E270 00049ED0  60 1B 0E 00 */	ori r27, r0, 0xe00
/* 8004E274 00049ED4  7F 64 DB 78 */	mr r4, r27
/* 8004E278 00049ED8  48 18 D2 45 */	bl func_801DB4BC
/* 8004E27C 00049EDC  2C 03 00 00 */	cmpwi r3, 0
/* 8004E280 00049EE0  7C 7E 1B 78 */	mr r30, r3
/* 8004E284 00049EE4  40 82 00 0C */	bne lbl_8004E290
/* 8004E288 00049EE8  38 60 00 00 */	li r3, 0
/* 8004E28C 00049EEC  48 00 00 B0 */	b lbl_8004E33C
lbl_8004E290:
/* 8004E290 00049EF0  48 18 C8 99 */	bl func_801DAB28
/* 8004E294 00049EF4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E298 00049EF8  41 82 00 14 */	beq lbl_8004E2AC
/* 8004E29C 00049EFC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004E2A0 00049F00  38 80 01 40 */	li r4, 0x140
/* 8004E2A4 00049F04  48 18 C9 F1 */	bl func_801DAC94
/* 8004E2A8 00049F08  48 00 00 08 */	b lbl_8004E2B0
lbl_8004E2AC:
/* 8004E2AC 00049F0C  38 60 00 00 */	li r3, 0
lbl_8004E2B0:
/* 8004E2B0 00049F10  2C 03 00 00 */	cmpwi r3, 0
/* 8004E2B4 00049F14  7C 7F 1B 78 */	mr r31, r3
/* 8004E2B8 00049F18  41 82 00 10 */	beq lbl_8004E2C8
/* 8004E2BC 00049F1C  7F C4 F3 78 */	mr r4, r30
/* 8004E2C0 00049F20  48 1A B6 2D */	bl func_801F98EC
/* 8004E2C4 00049F24  7C 7F 1B 78 */	mr r31, r3
lbl_8004E2C8:
/* 8004E2C8 00049F28  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E2CC 00049F2C  40 82 00 0C */	bne lbl_8004E2D8
/* 8004E2D0 00049F30  38 60 00 00 */	li r3, 0
/* 8004E2D4 00049F34  48 00 00 68 */	b lbl_8004E33C
lbl_8004E2D8:
/* 8004E2D8 00049F38  80 19 00 50 */	lwz r0, 0x50(r25)
/* 8004E2DC 00049F3C  7F 23 CB 78 */	mr r3, r25
/* 8004E2E0 00049F40  90 1F 01 3C */	stw r0, 0x13c(r31)
/* 8004E2E4 00049F44  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8004E2E8 00049F48  54 1D 07 7A */	rlwinm r29, r0, 0, 0x1d, 0x1d
/* 8004E2EC 00049F4C  4B FF FC 8D */	bl func_8004DF78
/* 8004E2F0 00049F50  38 00 00 00 */	li r0, 0
/* 8004E2F4 00049F54  2C 1C 00 00 */	cmpwi r28, 0
/* 8004E2F8 00049F58  90 19 00 38 */	stw r0, 0x38(r25)
/* 8004E2FC 00049F5C  93 D9 00 3C */	stw r30, 0x3c(r25)
/* 8004E300 00049F60  93 F9 00 40 */	stw r31, 0x40(r25)
/* 8004E304 00049F64  93 59 00 44 */	stw r26, 0x44(r25)
/* 8004E308 00049F68  93 79 00 48 */	stw r27, 0x48(r25)
/* 8004E30C 00049F6C  41 82 00 1C */	beq lbl_8004E328
/* 8004E310 00049F70  7F 43 D3 78 */	mr r3, r26
/* 8004E314 00049F74  7F 64 DB 78 */	mr r4, r27
/* 8004E318 00049F78  48 18 D1 E5 */	bl func_801DB4FC
/* 8004E31C 00049F7C  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8004E320 00049F80  60 00 00 40 */	ori r0, r0, 0x40
/* 8004E324 00049F84  90 19 00 34 */	stw r0, 0x34(r25)
lbl_8004E328:
/* 8004E328 00049F88  80 99 00 34 */	lwz r4, 0x34(r25)
/* 8004E32C 00049F8C  63 A0 00 01 */	ori r0, r29, 1
/* 8004E330 00049F90  38 60 00 01 */	li r3, 1
/* 8004E334 00049F94  7C 80 03 78 */	or r0, r4, r0
/* 8004E338 00049F98  90 19 00 34 */	stw r0, 0x34(r25)
lbl_8004E33C:
/* 8004E33C 00049F9C  39 61 00 30 */	addi r11, r1, 0x30
/* 8004E340 00049FA0  48 17 8E 2D */	bl _restgpr_25
/* 8004E344 00049FA4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004E348 00049FA8  7C 08 03 A6 */	mtlr r0
/* 8004E34C 00049FAC  38 21 00 30 */	addi r1, r1, 0x30
/* 8004E350 00049FB0  4E 80 00 20 */	blr

.global func_8004E354
func_8004E354:
/* 8004E354 00049FB4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004E358 00049FB8  7C 08 02 A6 */	mflr r0
/* 8004E35C 00049FBC  3D 40 80 40 */	lis r10, lbl_80400004@ha
/* 8004E360 00049FC0  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004E364 00049FC4  85 2A B7 78 */	lwzu r9, -0x4888(r10)
/* 8004E368 00049FC8  80 63 00 40 */	lwz r3, 0x40(r3)
/* 8004E36C 00049FCC  81 0A 00 04 */	lwz r8, lbl_80400004@l(r10)
/* 8004E370 00049FD0  80 EA 00 08 */	lwz r7, 8(r10)
/* 8004E374 00049FD4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E378 00049FD8  80 CA 00 0C */	lwz r6, 0xc(r10)
/* 8004E37C 00049FDC  80 AA 00 10 */	lwz r5, 0x10(r10)
/* 8004E380 00049FE0  80 0A 00 14 */	lwz r0, 0x14(r10)
/* 8004E384 00049FE4  91 21 00 18 */	stw r9, 0x18(r1)
/* 8004E388 00049FE8  91 01 00 1C */	stw r8, 0x1c(r1)
/* 8004E38C 00049FEC  90 E1 00 20 */	stw r7, 0x20(r1)
/* 8004E390 00049FF0  90 C1 00 24 */	stw r6, 0x24(r1)
/* 8004E394 00049FF4  90 A1 00 28 */	stw r5, 0x28(r1)
/* 8004E398 00049FF8  90 01 00 2C */	stw r0, 0x2c(r1)
/* 8004E39C 00049FFC  41 82 00 F0 */	beq lbl_8004E48C
/* 8004E3A0 0004A000  2C 04 00 01 */	cmpwi r4, 1
/* 8004E3A4 0004A004  41 80 00 0C */	blt lbl_8004E3B0
/* 8004E3A8 0004A008  2C 04 00 06 */	cmpwi r4, 6
/* 8004E3AC 0004A00C  40 81 00 08 */	ble lbl_8004E3B4
lbl_8004E3B0:
/* 8004E3B0 0004A010  38 80 00 03 */	li r4, 3
lbl_8004E3B4:
/* 8004E3B4 0004A014  38 04 FF FF */	addi r0, r4, -1
/* 8004E3B8 0004A018  38 81 00 18 */	addi r4, r1, 0x18
/* 8004E3BC 0004A01C  54 00 10 3A */	slwi r0, r0, 2
/* 8004E3C0 0004A020  2C 03 00 00 */	cmpwi r3, 0
/* 8004E3C4 0004A024  7C 04 04 2E */	lfsx f0, r4, r0
/* 8004E3C8 0004A028  EC 01 00 32 */	fmuls f0, f1, f0
/* 8004E3CC 0004A02C  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004E3D0 0004A030  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004E3D4 0004A034  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8004E3D8 0004A038  41 82 00 B4 */	beq lbl_8004E48C
/* 8004E3DC 0004A03C  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8004E3E0 0004A040  C0 42 84 34 */	lfs f2, lbl_80640A34-_SDA2_BASE_(r2)
/* 8004E3E4 0004A044  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004E3E8 0004A048  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004E3EC 0004A04C  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8004E3F0 0004A050  40 80 00 2C */	bge lbl_8004E41C
/* 8004E3F4 0004A054  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8004E3F8 0004A058  C0 62 84 38 */	lfs f3, lbl_80640A38-_SDA2_BASE_(r2)
/* 8004E3FC 0004A05C  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8004E400 0004A060  40 81 00 1C */	ble lbl_8004E41C
/* 8004E404 0004A064  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E408 0004A068  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004E40C 0004A06C  40 80 00 08 */	bge lbl_8004E414
/* 8004E410 0004A070  48 00 00 08 */	b lbl_8004E418
lbl_8004E414:
/* 8004E414 0004A074  FC 60 10 90 */	fmr f3, f2
lbl_8004E418:
/* 8004E418 0004A078  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_8004E41C:
/* 8004E41C 0004A07C  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 8004E420 0004A080  C0 22 84 34 */	lfs f1, lbl_80640A34-_SDA2_BASE_(r2)
/* 8004E424 0004A084  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004E428 0004A088  40 80 00 28 */	bge lbl_8004E450
/* 8004E42C 0004A08C  C0 62 84 38 */	lfs f3, lbl_80640A38-_SDA2_BASE_(r2)
/* 8004E430 0004A090  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004E434 0004A094  40 81 00 1C */	ble lbl_8004E450
/* 8004E438 0004A098  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E43C 0004A09C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004E440 0004A0A0  40 80 00 08 */	bge lbl_8004E448
/* 8004E444 0004A0A4  48 00 00 08 */	b lbl_8004E44C
lbl_8004E448:
/* 8004E448 0004A0A8  FC 60 08 90 */	fmr f3, f1
lbl_8004E44C:
/* 8004E44C 0004A0AC  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8004E450:
/* 8004E450 0004A0B0  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 8004E454 0004A0B4  C0 22 84 34 */	lfs f1, lbl_80640A34-_SDA2_BASE_(r2)
/* 8004E458 0004A0B8  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004E45C 0004A0BC  40 80 00 28 */	bge lbl_8004E484
/* 8004E460 0004A0C0  C0 62 84 38 */	lfs f3, lbl_80640A38-_SDA2_BASE_(r2)
/* 8004E464 0004A0C4  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004E468 0004A0C8  40 81 00 1C */	ble lbl_8004E484
/* 8004E46C 0004A0CC  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E470 0004A0D0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004E474 0004A0D4  40 80 00 08 */	bge lbl_8004E47C
/* 8004E478 0004A0D8  48 00 00 08 */	b lbl_8004E480
lbl_8004E47C:
/* 8004E47C 0004A0DC  FC 60 08 90 */	fmr f3, f1
lbl_8004E480:
/* 8004E480 0004A0E0  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8004E484:
/* 8004E484 0004A0E4  38 80 00 01 */	li r4, 1
/* 8004E488 0004A0E8  48 1A 42 31 */	bl func_801F26B8
lbl_8004E48C:
/* 8004E48C 0004A0EC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004E490 0004A0F0  7C 08 03 A6 */	mtlr r0
/* 8004E494 0004A0F4  38 21 00 30 */	addi r1, r1, 0x30
/* 8004E498 0004A0F8  4E 80 00 20 */	blr

.global func_8004E49C
func_8004E49C:
/* 8004E49C 0004A0FC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E4A0 0004A100  3D 20 80 40 */	lis r9, lbl_80400004@ha
/* 8004E4A4 0004A104  2C 03 00 01 */	cmpwi r3, 1
/* 8004E4A8 0004A108  85 09 B7 90 */	lwzu r8, -0x4870(r9)
/* 8004E4AC 0004A10C  80 E9 00 04 */	lwz r7, lbl_80400004@l(r9)
/* 8004E4B0 0004A110  80 C9 00 08 */	lwz r6, 8(r9)
/* 8004E4B4 0004A114  80 A9 00 0C */	lwz r5, 0xc(r9)
/* 8004E4B8 0004A118  80 89 00 10 */	lwz r4, 0x10(r9)
/* 8004E4BC 0004A11C  80 09 00 14 */	lwz r0, 0x14(r9)
/* 8004E4C0 0004A120  91 01 00 08 */	stw r8, 8(r1)
/* 8004E4C4 0004A124  90 E1 00 0C */	stw r7, 0xc(r1)
/* 8004E4C8 0004A128  90 C1 00 10 */	stw r6, 0x10(r1)
/* 8004E4CC 0004A12C  90 A1 00 14 */	stw r5, 0x14(r1)
/* 8004E4D0 0004A130  90 81 00 18 */	stw r4, 0x18(r1)
/* 8004E4D4 0004A134  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8004E4D8 0004A138  41 80 00 0C */	blt lbl_8004E4E4
/* 8004E4DC 0004A13C  2C 03 00 06 */	cmpwi r3, 6
/* 8004E4E0 0004A140  40 81 00 08 */	ble lbl_8004E4E8
lbl_8004E4E4:
/* 8004E4E4 0004A144  38 60 00 03 */	li r3, 3
lbl_8004E4E8:
/* 8004E4E8 0004A148  38 03 FF FF */	addi r0, r3, -1
/* 8004E4EC 0004A14C  38 61 00 08 */	addi r3, r1, 8
/* 8004E4F0 0004A150  54 00 10 3A */	slwi r0, r0, 2
/* 8004E4F4 0004A154  7C 03 04 2E */	lfsx f0, r3, r0
/* 8004E4F8 0004A158  EC 21 00 32 */	fmuls f1, f1, f0
/* 8004E4FC 0004A15C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E500 0004A160  4E 80 00 20 */	blr

.global func_8004E504
func_8004E504:
/* 8004E504 0004A164  80 84 00 40 */	lwz r4, 0x40(r4)
/* 8004E508 0004A168  2C 04 00 00 */	cmpwi r4, 0
/* 8004E50C 0004A16C  41 82 00 20 */	beq lbl_8004E52C
/* 8004E510 0004A170  C0 04 00 20 */	lfs f0, 0x20(r4)
/* 8004E514 0004A174  D0 03 00 00 */	stfs f0, 0(r3)
/* 8004E518 0004A178  C0 04 00 24 */	lfs f0, 0x24(r4)
/* 8004E51C 0004A17C  D0 03 00 04 */	stfs f0, 4(r3)
/* 8004E520 0004A180  C0 04 00 28 */	lfs f0, 0x28(r4)
/* 8004E524 0004A184  D0 03 00 08 */	stfs f0, 8(r3)
/* 8004E528 0004A188  4E 80 00 20 */	blr
lbl_8004E52C:
/* 8004E52C 0004A18C  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E530 0004A190  D0 03 00 00 */	stfs f0, 0(r3)
/* 8004E534 0004A194  D0 03 00 04 */	stfs f0, 4(r3)
/* 8004E538 0004A198  D0 03 00 08 */	stfs f0, 8(r3)
/* 8004E53C 0004A19C  4E 80 00 20 */	blr

.global func_8004E540
func_8004E540:
/* 8004E540 0004A1A0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8004E544 0004A1A4  7C 08 02 A6 */	mflr r0
/* 8004E548 0004A1A8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004E54C 0004A1AC  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8004E550 0004A1B0  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8004E554 0004A1B4  FF E0 08 90 */	fmr f31, f1
/* 8004E558 0004A1B8  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8004E55C 0004A1BC  7C BF 2B 78 */	mr r31, r5
/* 8004E560 0004A1C0  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8004E564 0004A1C4  7C 9E 23 78 */	mr r30, r4
/* 8004E568 0004A1C8  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8004E56C 0004A1CC  7C 7D 1B 78 */	mr r29, r3
/* 8004E570 0004A1D0  7F A4 EB 78 */	mr r4, r29
/* 8004E574 0004A1D4  38 61 00 08 */	addi r3, r1, 8
/* 8004E578 0004A1D8  4B FF FF 8D */	bl func_8004E504
/* 8004E57C 0004A1DC  C0 01 00 08 */	lfs f0, 8(r1)
/* 8004E580 0004A1E0  38 9D 00 5C */	addi r4, r29, 0x5c
/* 8004E584 0004A1E4  FC 20 F8 90 */	fmr f1, f31
/* 8004E588 0004A1E8  7F A3 EB 78 */	mr r3, r29
/* 8004E58C 0004A1EC  D0 1D 00 5C */	stfs f0, 0x5c(r29)
/* 8004E590 0004A1F0  7F C5 F3 78 */	mr r5, r30
/* 8004E594 0004A1F4  7C 86 23 78 */	mr r6, r4
/* 8004E598 0004A1F8  7F E7 FB 78 */	mr r7, r31
/* 8004E59C 0004A1FC  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8004E5A0 0004A200  D0 1D 00 60 */	stfs f0, 0x60(r29)
/* 8004E5A4 0004A204  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8004E5A8 0004A208  D0 1D 00 64 */	stfs f0, 0x64(r29)
/* 8004E5AC 0004A20C  48 00 1F 99 */	bl func_80050544
/* 8004E5B0 0004A210  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8004E5B4 0004A214  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004E5B8 0004A218  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8004E5BC 0004A21C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004E5C0 0004A220  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8004E5C4 0004A224  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8004E5C8 0004A228  7C 08 03 A6 */	mtlr r0
/* 8004E5CC 0004A22C  38 21 00 40 */	addi r1, r1, 0x40
/* 8004E5D0 0004A230  4E 80 00 20 */	blr

.global func_8004E5D4
func_8004E5D4:
/* 8004E5D4 0004A234  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004E5D8 0004A238  7C 08 02 A6 */	mflr r0
/* 8004E5DC 0004A23C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004E5E0 0004A240  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004E5E4 0004A244  7C 7F 1B 78 */	mr r31, r3
/* 8004E5E8 0004A248  C0 03 00 4C */	lfs f0, 0x4c(r3)
/* 8004E5EC 0004A24C  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004E5F0 0004A250  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004E5F4 0004A254  81 83 00 30 */	lwz r12, 0x30(r3)
/* 8004E5F8 0004A258  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004E5FC 0004A25C  7D 89 03 A6 */	mtctr r12
/* 8004E600 0004A260  4E 80 04 21 */	bctrl
/* 8004E604 0004A264  2C 03 00 00 */	cmpwi r3, 0
/* 8004E608 0004A268  41 82 00 30 */	beq lbl_8004E638
/* 8004E60C 0004A26C  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 8004E610 0004A270  2C 03 00 00 */	cmpwi r3, 0
/* 8004E614 0004A274  41 82 00 24 */	beq lbl_8004E638
/* 8004E618 0004A278  C0 1F 00 5C */	lfs f0, 0x5c(r31)
/* 8004E61C 0004A27C  38 80 00 01 */	li r4, 1
/* 8004E620 0004A280  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 8004E624 0004A284  C0 1F 00 60 */	lfs f0, 0x60(r31)
/* 8004E628 0004A288  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 8004E62C 0004A28C  C0 1F 00 64 */	lfs f0, 0x64(r31)
/* 8004E630 0004A290  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8004E634 0004A294  48 1A 40 85 */	bl func_801F26B8
lbl_8004E638:
/* 8004E638 0004A298  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 8004E63C 0004A29C  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8004E640 0004A2A0  41 82 00 24 */	beq lbl_8004E664
/* 8004E644 0004A2A4  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 8004E648 0004A2A8  41 82 00 1C */	beq lbl_8004E664
/* 8004E64C 0004A2AC  C0 3F 00 4C */	lfs f1, 0x4c(r31)
/* 8004E650 0004A2B0  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E654 0004A2B4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004E658 0004A2B8  40 80 00 0C */	bge lbl_8004E664
/* 8004E65C 0004A2BC  7F E3 FB 78 */	mr r3, r31
/* 8004E660 0004A2C0  4B FF F9 19 */	bl func_8004DF78
lbl_8004E664:
/* 8004E664 0004A2C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004E668 0004A2C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004E66C 0004A2CC  7C 08 03 A6 */	mtlr r0
/* 8004E670 0004A2D0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004E674 0004A2D4  4E 80 00 20 */	blr

.global func_8004E678
func_8004E678:
/* 8004E678 0004A2D8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E67C 0004A2DC  7C 08 02 A6 */	mflr r0
/* 8004E680 0004A2E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004E684 0004A2E4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004E688 0004A2E8  7C BF 2B 78 */	mr r31, r5
/* 8004E68C 0004A2EC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004E690 0004A2F0  7C 9E 23 78 */	mr r30, r4
/* 8004E694 0004A2F4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004E698 0004A2F8  7C 7D 1B 78 */	mr r29, r3
/* 8004E69C 0004A2FC  80 03 00 40 */	lwz r0, 0x40(r3)
/* 8004E6A0 0004A300  2C 00 00 00 */	cmpwi r0, 0
/* 8004E6A4 0004A304  41 82 00 C0 */	beq lbl_8004E764
/* 8004E6A8 0004A308  4B FE 49 E1 */	bl func_80033088
/* 8004E6AC 0004A30C  80 9D 00 40 */	lwz r4, 0x40(r29)
/* 8004E6B0 0004A310  80 84 01 38 */	lwz r4, 0x138(r4)
/* 8004E6B4 0004A314  2C 04 00 00 */	cmpwi r4, 0
/* 8004E6B8 0004A318  41 82 00 10 */	beq lbl_8004E6C8
/* 8004E6BC 0004A31C  A0 04 01 48 */	lhz r0, 0x148(r4)
/* 8004E6C0 0004A320  60 00 00 08 */	ori r0, r0, 8
/* 8004E6C4 0004A324  B0 04 01 48 */	sth r0, 0x148(r4)
lbl_8004E6C8:
/* 8004E6C8 0004A328  2C 1E 00 00 */	cmpwi r30, 0
/* 8004E6CC 0004A32C  41 82 00 1C */	beq lbl_8004E6E8
/* 8004E6D0 0004A330  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E6D4 0004A334  41 82 00 14 */	beq lbl_8004E6E8
/* 8004E6D8 0004A338  80 7D 00 40 */	lwz r3, 0x40(r29)
/* 8004E6DC 0004A33C  38 00 00 00 */	li r0, 0
/* 8004E6E0 0004A340  90 03 01 2C */	stw r0, 0x12c(r3)
/* 8004E6E4 0004A344  48 00 00 80 */	b lbl_8004E764
lbl_8004E6E8:
/* 8004E6E8 0004A348  2C 1E 00 00 */	cmpwi r30, 0
/* 8004E6EC 0004A34C  41 82 00 2C */	beq lbl_8004E718
/* 8004E6F0 0004A350  2C 03 00 00 */	cmpwi r3, 0
/* 8004E6F4 0004A354  41 82 00 0C */	beq lbl_8004E700
/* 8004E6F8 0004A358  38 80 00 00 */	li r4, 0
/* 8004E6FC 0004A35C  4B FE 54 81 */	bl func_80033B7C
lbl_8004E700:
/* 8004E700 0004A360  2C 03 00 00 */	cmpwi r3, 0
/* 8004E704 0004A364  41 82 00 60 */	beq lbl_8004E764
/* 8004E708 0004A368  4B FE 72 69 */	bl func_80035970
/* 8004E70C 0004A36C  80 9D 00 40 */	lwz r4, 0x40(r29)
/* 8004E710 0004A370  90 64 01 2C */	stw r3, 0x12c(r4)
/* 8004E714 0004A374  48 00 00 50 */	b lbl_8004E764
lbl_8004E718:
/* 8004E718 0004A378  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E71C 0004A37C  41 82 00 2C */	beq lbl_8004E748
/* 8004E720 0004A380  2C 03 00 00 */	cmpwi r3, 0
/* 8004E724 0004A384  41 82 00 0C */	beq lbl_8004E730
/* 8004E728 0004A388  38 80 00 01 */	li r4, 1
/* 8004E72C 0004A38C  4B FE 54 51 */	bl func_80033B7C
lbl_8004E730:
/* 8004E730 0004A390  2C 03 00 00 */	cmpwi r3, 0
/* 8004E734 0004A394  41 82 00 30 */	beq lbl_8004E764
/* 8004E738 0004A398  4B FE 72 39 */	bl func_80035970
/* 8004E73C 0004A39C  80 9D 00 40 */	lwz r4, 0x40(r29)
/* 8004E740 0004A3A0  90 64 01 2C */	stw r3, 0x12c(r4)
/* 8004E744 0004A3A4  48 00 00 20 */	b lbl_8004E764
lbl_8004E748:
/* 8004E748 0004A3A8  80 7D 00 40 */	lwz r3, 0x40(r29)
/* 8004E74C 0004A3AC  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004E750 0004A3B0  2C 03 00 00 */	cmpwi r3, 0
/* 8004E754 0004A3B4  41 82 00 10 */	beq lbl_8004E764
/* 8004E758 0004A3B8  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 8004E75C 0004A3BC  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8004E760 0004A3C0  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_8004E764:
/* 8004E764 0004A3C4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004E768 0004A3C8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004E76C 0004A3CC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004E770 0004A3D0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004E774 0004A3D4  7C 08 03 A6 */	mtlr r0
/* 8004E778 0004A3D8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E77C 0004A3DC  4E 80 00 20 */	blr

.global func_8004E780
func_8004E780:
/* 8004E780 0004A3E0  80 03 00 34 */	lwz r0, 0x34(r3)
/* 8004E784 0004A3E4  90 83 00 54 */	stw r4, 0x54(r3)
/* 8004E788 0004A3E8  60 00 00 10 */	ori r0, r0, 0x10
/* 8004E78C 0004A3EC  90 03 00 34 */	stw r0, 0x34(r3)
/* 8004E790 0004A3F0  4E 80 00 20 */	blr

.global func_8004E794
func_8004E794:
/* 8004E794 0004A3F4  80 03 00 34 */	lwz r0, 0x34(r3)
/* 8004E798 0004A3F8  80 83 00 40 */	lwz r4, 0x40(r3)
/* 8004E79C 0004A3FC  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8004E7A0 0004A400  2C 04 00 00 */	cmpwi r4, 0
/* 8004E7A4 0004A404  90 03 00 34 */	stw r0, 0x34(r3)
/* 8004E7A8 0004A408  4D 82 00 20 */	beqlr
/* 8004E7AC 0004A40C  80 64 01 38 */	lwz r3, 0x138(r4)
/* 8004E7B0 0004A410  2C 03 00 00 */	cmpwi r3, 0
/* 8004E7B4 0004A414  4D 82 00 20 */	beqlr
/* 8004E7B8 0004A418  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 8004E7BC 0004A41C  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 8004E7C0 0004A420  B0 03 01 48 */	sth r0, 0x148(r3)
/* 8004E7C4 0004A424  4E 80 00 20 */	blr

.global func_8004E7C8
func_8004E7C8:
/* 8004E7C8 0004A428  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004E7CC 0004A42C  7C 08 02 A6 */	mflr r0
/* 8004E7D0 0004A430  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004E7D4 0004A434  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004E7D8 0004A438  7C 7F 1B 78 */	mr r31, r3
/* 8004E7DC 0004A43C  80 83 00 40 */	lwz r4, 0x40(r3)
/* 8004E7E0 0004A440  2C 04 00 00 */	cmpwi r4, 0
/* 8004E7E4 0004A444  41 82 00 64 */	beq lbl_8004E848
/* 8004E7E8 0004A448  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8004E7EC 0004A44C  60 00 00 01 */	ori r0, r0, 1
/* 8004E7F0 0004A450  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004E7F4 0004A454  90 04 01 04 */	stw r0, 0x104(r4)
/* 8004E7F8 0004A458  D0 24 01 08 */	stfs f1, 0x108(r4)
/* 8004E7FC 0004A45C  80 63 00 40 */	lwz r3, 0x40(r3)
/* 8004E800 0004A460  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004E804 0004A464  48 1B 90 3D */	bl func_80207840
/* 8004E808 0004A468  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 8004E80C 0004A46C  D0 3F 00 4C */	stfs f1, 0x4c(r31)
/* 8004E810 0004A470  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8004E814 0004A474  41 82 00 20 */	beq lbl_8004E834
/* 8004E818 0004A478  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 8004E81C 0004A47C  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004E820 0004A480  2C 03 00 00 */	cmpwi r3, 0
/* 8004E824 0004A484  41 82 00 10 */	beq lbl_8004E834
/* 8004E828 0004A488  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 8004E82C 0004A48C  60 00 00 20 */	ori r0, r0, 0x20
/* 8004E830 0004A490  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_8004E834:
/* 8004E834 0004A494  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 8004E838 0004A498  38 00 00 00 */	li r0, 0
/* 8004E83C 0004A49C  90 1F 00 58 */	stw r0, 0x58(r31)
/* 8004E840 0004A4A0  60 60 00 08 */	ori r0, r3, 8
/* 8004E844 0004A4A4  90 1F 00 34 */	stw r0, 0x34(r31)
lbl_8004E848:
/* 8004E848 0004A4A8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004E84C 0004A4AC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004E850 0004A4B0  7C 08 03 A6 */	mtlr r0
/* 8004E854 0004A4B4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004E858 0004A4B8  4E 80 00 20 */	blr

.global func_8004E85C
func_8004E85C:
/* 8004E85C 0004A4BC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004E860 0004A4C0  7C 08 02 A6 */	mflr r0
/* 8004E864 0004A4C4  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004E868 0004A4C8  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8004E86C 0004A4CC  7C DF 33 78 */	mr r31, r6
/* 8004E870 0004A4D0  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8004E874 0004A4D4  7C 9E 23 78 */	mr r30, r4
/* 8004E878 0004A4D8  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8004E87C 0004A4DC  7C 7D 1B 78 */	mr r29, r3
/* 8004E880 0004A4E0  80 03 00 34 */	lwz r0, 0x34(r3)
/* 8004E884 0004A4E4  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8004E888 0004A4E8  41 82 00 7C */	beq lbl_8004E904
/* 8004E88C 0004A4EC  4B FF 6D 05 */	bl func_80045590
/* 8004E890 0004A4F0  80 8D A4 C8 */	lwz r4, lbl_8063F788-_SDA_BASE_(r13)
/* 8004E894 0004A4F4  80 BD 00 58 */	lwz r5, 0x58(r29)
/* 8004E898 0004A4F8  80 04 00 88 */	lwz r0, 0x88(r4)
/* 8004E89C 0004A4FC  7C 05 00 40 */	cmplw r5, r0
/* 8004E8A0 0004A500  41 82 00 64 */	beq lbl_8004E904
/* 8004E8A4 0004A504  7F C4 F3 78 */	mr r4, r30
/* 8004E8A8 0004A508  4B FF 79 E5 */	bl func_8004628C
/* 8004E8AC 0004A50C  2C 03 00 00 */	cmpwi r3, 0
/* 8004E8B0 0004A510  41 82 00 54 */	beq lbl_8004E904
/* 8004E8B4 0004A514  80 6D A4 C8 */	lwz r3, lbl_8063F788-_SDA_BASE_(r13)
/* 8004E8B8 0004A518  80 03 00 88 */	lwz r0, 0x88(r3)
/* 8004E8BC 0004A51C  90 1D 00 58 */	stw r0, 0x58(r29)
/* 8004E8C0 0004A520  4B FF EF 4D */	bl func_8004D80C
/* 8004E8C4 0004A524  C0 3F 00 04 */	lfs f1, 4(r31)
/* 8004E8C8 0004A528  38 A1 00 10 */	addi r5, r1, 0x10
/* 8004E8CC 0004A52C  C0 02 84 3C */	lfs f0, lbl_80640A3C-_SDA2_BASE_(r2)
/* 8004E8D0 0004A530  38 C1 00 08 */	addi r6, r1, 8
/* 8004E8D4 0004A534  C0 7F 00 08 */	lfs f3, 8(r31)
/* 8004E8D8 0004A538  38 63 35 10 */	addi r3, r3, 0x3510
/* 8004E8DC 0004A53C  C0 5F 00 00 */	lfs f2, 0(r31)
/* 8004E8E0 0004A540  EC 21 00 28 */	fsubs f1, f1, f0
/* 8004E8E4 0004A544  C0 02 84 40 */	lfs f0, lbl_80640A40-_SDA2_BASE_(r2)
/* 8004E8E8 0004A548  D0 41 00 10 */	stfs f2, 0x10(r1)
/* 8004E8EC 0004A54C  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8004E8F0 0004A550  D0 61 00 18 */	stfs f3, 0x18(r1)
/* 8004E8F4 0004A554  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004E8F8 0004A558  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004E8FC 0004A55C  80 9D 00 54 */	lwz r4, 0x54(r29)
/* 8004E900 0004A560  48 00 08 D9 */	bl func_8004F1D8
lbl_8004E904:
/* 8004E904 0004A564  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004E908 0004A568  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004E90C 0004A56C  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8004E910 0004A570  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8004E914 0004A574  7C 08 03 A6 */	mtlr r0
/* 8004E918 0004A578  38 21 00 30 */	addi r1, r1, 0x30
/* 8004E91C 0004A57C  4E 80 00 20 */	blr

.global func_8004E920
func_8004E920:
/* 8004E920 0004A580  3C 60 80 05 */	lis r3, lbl_8004E92C@ha
/* 8004E924 0004A584  38 63 E9 2C */	addi r3, r3, lbl_8004E92C@l
/* 8004E928 0004A588  48 1B 6B B8 */	b func_802054E0
lbl_8004E92C:
/* 8004E92C 0004A58C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E930 0004A590  7C 08 02 A6 */	mflr r0
/* 8004E934 0004A594  2C 03 00 00 */	cmpwi r3, 0
/* 8004E938 0004A598  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004E93C 0004A59C  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8004E940 0004A5A0  FF E0 08 90 */	fmr f31, f1
/* 8004E944 0004A5A4  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8004E948 0004A5A8  7C DF 33 78 */	mr r31, r6
/* 8004E94C 0004A5AC  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8004E950 0004A5B0  7C BE 2B 78 */	mr r30, r5
/* 8004E954 0004A5B4  93 A1 00 0C */	stw r29, 0xc(r1)
/* 8004E958 0004A5B8  7C 9D 23 78 */	mr r29, r4
/* 8004E95C 0004A5BC  93 81 00 08 */	stw r28, 8(r1)
/* 8004E960 0004A5C0  7C 7C 1B 78 */	mr r28, r3
/* 8004E964 0004A5C4  40 82 00 0C */	bne lbl_8004E970
/* 8004E968 0004A5C8  38 60 00 00 */	li r3, 0
/* 8004E96C 0004A5CC  48 00 00 40 */	b lbl_8004E9AC
lbl_8004E970:
/* 8004E970 0004A5D0  4B FF EE 9D */	bl func_8004D80C
/* 8004E974 0004A5D4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E978 0004A5D8  41 82 00 30 */	beq lbl_8004E9A8
/* 8004E97C 0004A5DC  2C 1C 00 00 */	cmpwi r28, 0
/* 8004E980 0004A5E0  41 82 00 28 */	beq lbl_8004E9A8
/* 8004E984 0004A5E4  80 9C 01 3C */	lwz r4, 0x13c(r28)
/* 8004E988 0004A5E8  4B FF F4 A1 */	bl func_8004DE28
/* 8004E98C 0004A5EC  2C 03 00 00 */	cmpwi r3, 0
/* 8004E990 0004A5F0  41 82 00 18 */	beq lbl_8004E9A8
/* 8004E994 0004A5F4  FC 20 F8 90 */	fmr f1, f31
/* 8004E998 0004A5F8  7F A4 EB 78 */	mr r4, r29
/* 8004E99C 0004A5FC  7F C5 F3 78 */	mr r5, r30
/* 8004E9A0 0004A600  7F E6 FB 78 */	mr r6, r31
/* 8004E9A4 0004A604  4B FF FE B9 */	bl func_8004E85C
lbl_8004E9A8:
/* 8004E9A8 0004A608  38 60 00 00 */	li r3, 0
lbl_8004E9AC:
/* 8004E9AC 0004A60C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004E9B0 0004A610  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004E9B4 0004A614  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004E9B8 0004A618  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8004E9BC 0004A61C  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 8004E9C0 0004A620  83 81 00 08 */	lwz r28, 8(r1)
/* 8004E9C4 0004A624  7C 08 03 A6 */	mtlr r0
/* 8004E9C8 0004A628  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E9CC 0004A62C  4E 80 00 20 */	blr

.global func_8004E9D0
func_8004E9D0:
/* 8004E9D0 0004A630  38 A0 00 01 */	li r5, 1
/* 8004E9D4 0004A634  38 6D 98 38 */	addi r3, r13, lbl_8063EAF8-_SDA_BASE_
/* 8004E9D8 0004A638  38 80 00 04 */	li r4, 4
/* 8004E9DC 0004A63C  38 00 00 00 */	li r0, 0
/* 8004E9E0 0004A640  98 AD 98 38 */	stb r5, lbl_8063EAF8-_SDA_BASE_(r13)
/* 8004E9E4 0004A644  B0 83 00 02 */	sth r4, 2(r3)
/* 8004E9E8 0004A648  98 03 00 04 */	stb r0, 4(r3)
/* 8004E9EC 0004A64C  4E 80 00 20 */	blr

.global func_8004E9F0
func_8004E9F0:
/* 8004E9F0 0004A650  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004E9F4 0004A654  7C 08 02 A6 */	mflr r0
/* 8004E9F8 0004A658  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004E9FC 0004A65C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004EA00 0004A660  7C 7F 1B 78 */	mr r31, r3
/* 8004EA04 0004A664  38 63 00 14 */	addi r3, r3, 0x14
/* 8004EA08 0004A668  48 00 21 2D */	bl func_80050B34
/* 8004EA0C 0004A66C  C0 02 84 48 */	lfs f0, lbl_80640A48-_SDA2_BASE_(r2)
/* 8004EA10 0004A670  38 00 00 00 */	li r0, 0
/* 8004EA14 0004A674  90 1F 00 00 */	stw r0, 0(r31)
/* 8004EA18 0004A678  7F E3 FB 78 */	mr r3, r31
/* 8004EA1C 0004A67C  D0 1F 00 04 */	stfs f0, 4(r31)
/* 8004EA20 0004A680  D0 1F 00 08 */	stfs f0, 8(r31)
/* 8004EA24 0004A684  D0 1F 00 0C */	stfs f0, 0xc(r31)
/* 8004EA28 0004A688  D0 1F 00 10 */	stfs f0, 0x10(r31)
/* 8004EA2C 0004A68C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004EA30 0004A690  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004EA34 0004A694  7C 08 03 A6 */	mtlr r0
/* 8004EA38 0004A698  38 21 00 10 */	addi r1, r1, 0x10
/* 8004EA3C 0004A69C  4E 80 00 20 */	blr

.global func_8004EA40
func_8004EA40:
/* 8004EA40 0004A6A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004EA44 0004A6A4  7C 08 02 A6 */	mflr r0
/* 8004EA48 0004A6A8  2C 03 00 00 */	cmpwi r3, 0
/* 8004EA4C 0004A6AC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004EA50 0004A6B0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004EA54 0004A6B4  7C 9F 23 78 */	mr r31, r4
/* 8004EA58 0004A6B8  93 C1 00 08 */	stw r30, 8(r1)
/* 8004EA5C 0004A6BC  7C 7E 1B 78 */	mr r30, r3
/* 8004EA60 0004A6C0  41 82 00 18 */	beq lbl_8004EA78
/* 8004EA64 0004A6C4  48 00 00 31 */	bl func_8004EA94
/* 8004EA68 0004A6C8  2C 1F 00 00 */	cmpwi r31, 0
/* 8004EA6C 0004A6CC  40 81 00 0C */	ble lbl_8004EA78
/* 8004EA70 0004A6D0  7F C3 F3 78 */	mr r3, r30
/* 8004EA74 0004A6D4  48 18 C0 45 */	bl func_801DAAB8
lbl_8004EA78:
/* 8004EA78 0004A6D8  7F C3 F3 78 */	mr r3, r30
/* 8004EA7C 0004A6DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004EA80 0004A6E0  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004EA84 0004A6E4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004EA88 0004A6E8  7C 08 03 A6 */	mtlr r0
/* 8004EA8C 0004A6EC  38 21 00 10 */	addi r1, r1, 0x10
/* 8004EA90 0004A6F0  4E 80 00 20 */	blr

.global func_8004EA94
func_8004EA94:
/* 8004EA94 0004A6F4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004EA98 0004A6F8  7C 08 02 A6 */	mflr r0
/* 8004EA9C 0004A6FC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004EAA0 0004A700  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004EAA4 0004A704  7C 7F 1B 78 */	mr r31, r3
/* 8004EAA8 0004A708  80 03 00 00 */	lwz r0, 0(r3)
/* 8004EAAC 0004A70C  2C 00 00 00 */	cmpwi r0, 0
/* 8004EAB0 0004A710  41 82 00 14 */	beq lbl_8004EAC4
/* 8004EAB4 0004A714  7C 03 03 78 */	mr r3, r0
/* 8004EAB8 0004A718  48 19 1E 4D */	bl func_801E0904
/* 8004EABC 0004A71C  38 00 00 00 */	li r0, 0
/* 8004EAC0 0004A720  90 1F 00 00 */	stw r0, 0(r31)
lbl_8004EAC4:
/* 8004EAC4 0004A724  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004EAC8 0004A728  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004EACC 0004A72C  7C 08 03 A6 */	mtlr r0
/* 8004EAD0 0004A730  38 21 00 10 */	addi r1, r1, 0x10
/* 8004EAD4 0004A734  4E 80 00 20 */	blr

.global func_8004EAD8
func_8004EAD8:
/* 8004EAD8 0004A738  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004EADC 0004A73C  3C E0 43 30 */	lis r7, 0x4330
/* 8004EAE0 0004A740  88 04 00 00 */	lbz r0, 0(r4)
/* 8004EAE4 0004A744  88 C4 00 01 */	lbz r6, 1(r4)
/* 8004EAE8 0004A748  90 01 00 0C */	stw r0, 0xc(r1)
/* 8004EAEC 0004A74C  C8 82 84 50 */	lfd f4, lbl_80640A50-_SDA2_BASE_(r2)
/* 8004EAF0 0004A750  90 E1 00 08 */	stw r7, 8(r1)
/* 8004EAF4 0004A754  88 64 00 02 */	lbz r3, 2(r4)
/* 8004EAF8 0004A758  C8 01 00 08 */	lfd f0, 8(r1)
/* 8004EAFC 0004A75C  90 E1 00 10 */	stw r7, 0x10(r1)
/* 8004EB00 0004A760  EC 60 20 28 */	fsubs f3, f0, f4
/* 8004EB04 0004A764  88 04 00 03 */	lbz r0, 3(r4)
/* 8004EB08 0004A768  90 C1 00 14 */	stw r6, 0x14(r1)
/* 8004EB0C 0004A76C  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8004EB10 0004A770  90 61 00 0C */	stw r3, 0xc(r1)
/* 8004EB14 0004A774  EC 40 20 28 */	fsubs f2, f0, f4
/* 8004EB18 0004A778  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004EB1C 0004A77C  C8 21 00 08 */	lfd f1, 8(r1)
/* 8004EB20 0004A780  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8004EB24 0004A784  EC 21 20 28 */	fsubs f1, f1, f4
/* 8004EB28 0004A788  D0 65 00 00 */	stfs f3, 0(r5)
/* 8004EB2C 0004A78C  EC 00 20 28 */	fsubs f0, f0, f4
/* 8004EB30 0004A790  D0 45 00 04 */	stfs f2, 4(r5)
/* 8004EB34 0004A794  D0 25 00 08 */	stfs f1, 8(r5)
/* 8004EB38 0004A798  D0 05 00 0C */	stfs f0, 0xc(r5)
/* 8004EB3C 0004A79C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004EB40 0004A7A0  4E 80 00 20 */	blr

.global func_8004EB44
func_8004EB44:
/* 8004EB44 0004A7A4  C0 04 00 00 */	lfs f0, 0(r4)
/* 8004EB48 0004A7A8  C0 44 00 04 */	lfs f2, 4(r4)
/* 8004EB4C 0004A7AC  C0 24 00 08 */	lfs f1, 8(r4)
/* 8004EB50 0004A7B0  FC 60 00 1E */	fctiwz f3, f0
/* 8004EB54 0004A7B4  C0 04 00 0C */	lfs f0, 0xc(r4)
/* 8004EB58 0004A7B8  FC 40 10 1E */	fctiwz f2, f2
/* 8004EB5C 0004A7BC  FC 20 08 1E */	fctiwz f1, f1
/* 8004EB60 0004A7C0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004EB64 0004A7C4  FC 00 00 1E */	fctiwz f0, f0
/* 8004EB68 0004A7C8  D8 61 00 08 */	stfd f3, 8(r1)
/* 8004EB6C 0004A7CC  D8 41 00 10 */	stfd f2, 0x10(r1)
/* 8004EB70 0004A7D0  80 C1 00 0C */	lwz r6, 0xc(r1)
/* 8004EB74 0004A7D4  D8 21 00 18 */	stfd f1, 0x18(r1)
/* 8004EB78 0004A7D8  80 81 00 14 */	lwz r4, 0x14(r1)
/* 8004EB7C 0004A7DC  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8004EB80 0004A7E0  80 61 00 1C */	lwz r3, 0x1c(r1)
/* 8004EB84 0004A7E4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004EB88 0004A7E8  98 C5 00 00 */	stb r6, 0(r5)
/* 8004EB8C 0004A7EC  98 85 00 01 */	stb r4, 1(r5)
/* 8004EB90 0004A7F0  98 65 00 02 */	stb r3, 2(r5)
/* 8004EB94 0004A7F4  98 05 00 03 */	stb r0, 3(r5)
/* 8004EB98 0004A7F8  38 21 00 30 */	addi r1, r1, 0x30
/* 8004EB9C 0004A7FC  4E 80 00 20 */	blr

.global func_8004EBA0
func_8004EBA0:
/* 8004EBA0 0004A800  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004EBA4 0004A804  7C 08 02 A6 */	mflr r0
/* 8004EBA8 0004A808  38 A3 00 04 */	addi r5, r3, 4
/* 8004EBAC 0004A80C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004EBB0 0004A810  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004EBB4 0004A814  7C 9F 23 78 */	mr r31, r4
/* 8004EBB8 0004A818  93 C1 00 08 */	stw r30, 8(r1)
/* 8004EBBC 0004A81C  7C 7E 1B 78 */	mr r30, r3
/* 8004EBC0 0004A820  4B FF FF 19 */	bl func_8004EAD8
/* 8004EBC4 0004A824  80 7E 00 00 */	lwz r3, 0(r30)
/* 8004EBC8 0004A828  2C 03 00 00 */	cmpwi r3, 0
/* 8004EBCC 0004A82C  40 82 00 20 */	bne lbl_8004EBEC
/* 8004EBD0 0004A830  7F E3 FB 78 */	mr r3, r31
/* 8004EBD4 0004A834  38 80 00 00 */	li r4, 0
/* 8004EBD8 0004A838  38 A0 00 00 */	li r5, 0
/* 8004EBDC 0004A83C  38 C0 00 00 */	li r6, 0
/* 8004EBE0 0004A840  48 19 1C 31 */	bl func_801E0810
/* 8004EBE4 0004A844  90 7E 00 00 */	stw r3, 0(r30)
/* 8004EBE8 0004A848  48 00 00 0C */	b lbl_8004EBF4
lbl_8004EBEC:
/* 8004EBEC 0004A84C  7F E4 FB 78 */	mr r4, r31
/* 8004EBF0 0004A850  48 19 1D ED */	bl func_801E09DC
lbl_8004EBF4:
/* 8004EBF4 0004A854  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004EBF8 0004A858  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004EBFC 0004A85C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004EC00 0004A860  7C 08 03 A6 */	mtlr r0
/* 8004EC04 0004A864  38 21 00 10 */	addi r1, r1, 0x10
/* 8004EC08 0004A868  4E 80 00 20 */	blr

.global func_8004EC0C
func_8004EC0C:
/* 8004EC0C 0004A86C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8004EC10 0004A870  7C 08 02 A6 */	mflr r0
/* 8004EC14 0004A874  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004EC18 0004A878  DB E1 00 38 */	stfd f31, 0x38(r1)
/* 8004EC1C 0004A87C  FF E0 08 90 */	fmr f31, f1
/* 8004EC20 0004A880  93 E1 00 34 */	stw r31, 0x34(r1)
/* 8004EC24 0004A884  7C BF 2B 78 */	mr r31, r5
/* 8004EC28 0004A888  93 C1 00 30 */	stw r30, 0x30(r1)
/* 8004EC2C 0004A88C  7C 9E 23 78 */	mr r30, r4
/* 8004EC30 0004A890  93 A1 00 2C */	stw r29, 0x2c(r1)
/* 8004EC34 0004A894  7C 7D 1B 78 */	mr r29, r3
/* 8004EC38 0004A898  80 03 00 00 */	lwz r0, 0(r3)
/* 8004EC3C 0004A89C  2C 00 00 00 */	cmpwi r0, 0
/* 8004EC40 0004A8A0  40 82 00 30 */	bne lbl_8004EC70
/* 8004EC44 0004A8A4  38 00 00 00 */	li r0, 0
/* 8004EC48 0004A8A8  38 61 00 08 */	addi r3, r1, 8
/* 8004EC4C 0004A8AC  98 01 00 08 */	stb r0, 8(r1)
/* 8004EC50 0004A8B0  38 80 00 00 */	li r4, 0
/* 8004EC54 0004A8B4  38 A0 00 00 */	li r5, 0
/* 8004EC58 0004A8B8  38 C0 00 00 */	li r6, 0
/* 8004EC5C 0004A8BC  98 01 00 09 */	stb r0, 9(r1)
/* 8004EC60 0004A8C0  98 01 00 0A */	stb r0, 0xa(r1)
/* 8004EC64 0004A8C4  98 01 00 0B */	stb r0, 0xb(r1)
/* 8004EC68 0004A8C8  48 19 1B A9 */	bl func_801E0810
/* 8004EC6C 0004A8CC  90 7D 00 00 */	stw r3, 0(r29)
lbl_8004EC70:
/* 8004EC70 0004A8D0  80 7D 00 00 */	lwz r3, 0(r29)
/* 8004EC74 0004A8D4  38 81 00 08 */	addi r4, r1, 8
/* 8004EC78 0004A8D8  48 19 1D 01 */	bl func_801E0978
/* 8004EC7C 0004A8DC  7F A3 EB 78 */	mr r3, r29
/* 8004EC80 0004A8E0  7F C4 F3 78 */	mr r4, r30
/* 8004EC84 0004A8E4  38 A1 00 10 */	addi r5, r1, 0x10
/* 8004EC88 0004A8E8  4B FF FE 51 */	bl func_8004EAD8
/* 8004EC8C 0004A8EC  7F A3 EB 78 */	mr r3, r29
/* 8004EC90 0004A8F0  38 81 00 08 */	addi r4, r1, 8
/* 8004EC94 0004A8F4  38 BD 00 04 */	addi r5, r29, 4
/* 8004EC98 0004A8F8  4B FF FE 41 */	bl func_8004EAD8
/* 8004EC9C 0004A8FC  FC 20 F8 90 */	fmr f1, f31
/* 8004ECA0 0004A900  38 9D 00 04 */	addi r4, r29, 4
/* 8004ECA4 0004A904  7C 86 23 78 */	mr r6, r4
/* 8004ECA8 0004A908  7F E7 FB 78 */	mr r7, r31
/* 8004ECAC 0004A90C  38 7D 00 14 */	addi r3, r29, 0x14
/* 8004ECB0 0004A910  38 A1 00 10 */	addi r5, r1, 0x10
/* 8004ECB4 0004A914  48 00 1E 99 */	bl func_80050B4C
/* 8004ECB8 0004A918  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004ECBC 0004A91C  CB E1 00 38 */	lfd f31, 0x38(r1)
/* 8004ECC0 0004A920  83 E1 00 34 */	lwz r31, 0x34(r1)
/* 8004ECC4 0004A924  83 C1 00 30 */	lwz r30, 0x30(r1)
/* 8004ECC8 0004A928  83 A1 00 2C */	lwz r29, 0x2c(r1)
/* 8004ECCC 0004A92C  7C 08 03 A6 */	mtlr r0
/* 8004ECD0 0004A930  38 21 00 40 */	addi r1, r1, 0x40
/* 8004ECD4 0004A934  4E 80 00 20 */	blr

.global func_8004ECD8
func_8004ECD8:
/* 8004ECD8 0004A938  38 63 00 14 */	addi r3, r3, 0x14
/* 8004ECDC 0004A93C  48 00 1F 04 */	b func_80050BE0

.global func_8004ECE0
func_8004ECE0:
/* 8004ECE0 0004A940  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004ECE4 0004A944  7C 08 02 A6 */	mflr r0
/* 8004ECE8 0004A948  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004ECEC 0004A94C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004ECF0 0004A950  7C 7F 1B 78 */	mr r31, r3
/* 8004ECF4 0004A954  80 03 00 00 */	lwz r0, 0(r3)
/* 8004ECF8 0004A958  2C 00 00 00 */	cmpwi r0, 0
/* 8004ECFC 0004A95C  41 82 00 3C */	beq lbl_8004ED38
/* 8004ED00 0004A960  81 83 00 4C */	lwz r12, 0x4c(r3)
/* 8004ED04 0004A964  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004ED08 0004A968  7D 89 03 A6 */	mtctr r12
/* 8004ED0C 0004A96C  38 63 00 14 */	addi r3, r3, 0x14
/* 8004ED10 0004A970  4E 80 04 21 */	bctrl
/* 8004ED14 0004A974  2C 03 00 00 */	cmpwi r3, 0
/* 8004ED18 0004A978  41 82 00 20 */	beq lbl_8004ED38
/* 8004ED1C 0004A97C  7F E3 FB 78 */	mr r3, r31
/* 8004ED20 0004A980  38 9F 00 04 */	addi r4, r31, 4
/* 8004ED24 0004A984  38 A1 00 08 */	addi r5, r1, 8
/* 8004ED28 0004A988  4B FF FE 1D */	bl func_8004EB44
/* 8004ED2C 0004A98C  80 7F 00 00 */	lwz r3, 0(r31)
/* 8004ED30 0004A990  38 81 00 08 */	addi r4, r1, 8
/* 8004ED34 0004A994  48 19 1C A9 */	bl func_801E09DC
lbl_8004ED38:
/* 8004ED38 0004A998  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004ED3C 0004A99C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004ED40 0004A9A0  7C 08 03 A6 */	mtlr r0
/* 8004ED44 0004A9A4  38 21 00 20 */	addi r1, r1, 0x20
/* 8004ED48 0004A9A8  4E 80 00 20 */	blr
lbl_8004ED4C:
/* 8004ED4C 0004A9AC  38 00 00 00 */	li r0, 0
/* 8004ED50 0004A9B0  90 03 00 04 */	stw r0, 4(r3)
/* 8004ED54 0004A9B4  98 03 00 00 */	stb r0, 0(r3)
/* 8004ED58 0004A9B8  4E 80 00 20 */	blr
lbl_8004ED5C:
/* 8004ED5C 0004A9BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004ED60 0004A9C0  7C 08 02 A6 */	mflr r0
/* 8004ED64 0004A9C4  2C 03 00 00 */	cmpwi r3, 0
/* 8004ED68 0004A9C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004ED6C 0004A9CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004ED70 0004A9D0  7C 9F 23 78 */	mr r31, r4
/* 8004ED74 0004A9D4  93 C1 00 08 */	stw r30, 8(r1)
/* 8004ED78 0004A9D8  7C 7E 1B 78 */	mr r30, r3
/* 8004ED7C 0004A9DC  41 82 00 18 */	beq lbl_8004ED94
/* 8004ED80 0004A9E0  48 00 00 31 */	bl func_8004EDB0
/* 8004ED84 0004A9E4  2C 1F 00 00 */	cmpwi r31, 0
/* 8004ED88 0004A9E8  40 81 00 0C */	ble lbl_8004ED94
/* 8004ED8C 0004A9EC  7F C3 F3 78 */	mr r3, r30
/* 8004ED90 0004A9F0  48 18 BD 29 */	bl func_801DAAB8
lbl_8004ED94:
/* 8004ED94 0004A9F4  7F C3 F3 78 */	mr r3, r30
/* 8004ED98 0004A9F8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004ED9C 0004A9FC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004EDA0 0004AA00  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004EDA4 0004AA04  7C 08 03 A6 */	mtlr r0
/* 8004EDA8 0004AA08  38 21 00 10 */	addi r1, r1, 0x10
/* 8004EDAC 0004AA0C  4E 80 00 20 */	blr

.global func_8004EDB0
func_8004EDB0:
/* 8004EDB0 0004AA10  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004EDB4 0004AA14  7C 08 02 A6 */	mflr r0
/* 8004EDB8 0004AA18  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004EDBC 0004AA1C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004EDC0 0004AA20  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004EDC4 0004AA24  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004EDC8 0004AA28  7C 7D 1B 78 */	mr r29, r3
/* 8004EDCC 0004AA2C  83 C3 00 04 */	lwz r30, 4(r3)
/* 8004EDD0 0004AA30  2C 1E 00 00 */	cmpwi r30, 0
/* 8004EDD4 0004AA34  41 82 00 70 */	beq lbl_8004EE44
/* 8004EDD8 0004AA38  88 1E 00 08 */	lbz r0, 8(r30)
/* 8004EDDC 0004AA3C  2C 00 00 00 */	cmpwi r0, 0
/* 8004EDE0 0004AA40  41 82 00 3C */	beq lbl_8004EE1C
/* 8004EDE4 0004AA44  83 FE 00 04 */	lwz r31, 4(r30)
/* 8004EDE8 0004AA48  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004EDEC 0004AA4C  48 1E C2 6D */	bl func_8023B058
/* 8004EDF0 0004AA50  2C 03 00 00 */	cmpwi r3, 0
/* 8004EDF4 0004AA54  41 82 00 0C */	beq lbl_8004EE00
/* 8004EDF8 0004AA58  7F E4 FB 78 */	mr r4, r31
/* 8004EDFC 0004AA5C  48 1E C6 25 */	bl func_8023B420
lbl_8004EE00:
/* 8004EE00 0004AA60  81 9E 00 0C */	lwz r12, 0xc(r30)
/* 8004EE04 0004AA64  7F C3 F3 78 */	mr r3, r30
/* 8004EE08 0004AA68  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8004EE0C 0004AA6C  7D 89 03 A6 */	mtctr r12
/* 8004EE10 0004AA70  4E 80 04 21 */	bctrl
/* 8004EE14 0004AA74  38 00 00 00 */	li r0, 0
/* 8004EE18 0004AA78  98 1E 00 08 */	stb r0, 8(r30)
lbl_8004EE1C:
/* 8004EE1C 0004AA7C  80 7D 00 04 */	lwz r3, 4(r29)
/* 8004EE20 0004AA80  2C 03 00 00 */	cmpwi r3, 0
/* 8004EE24 0004AA84  41 82 00 18 */	beq lbl_8004EE3C
/* 8004EE28 0004AA88  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004EE2C 0004AA8C  38 80 00 01 */	li r4, 1
/* 8004EE30 0004AA90  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004EE34 0004AA94  7D 89 03 A6 */	mtctr r12
/* 8004EE38 0004AA98  4E 80 04 21 */	bctrl
lbl_8004EE3C:
/* 8004EE3C 0004AA9C  38 00 00 00 */	li r0, 0
/* 8004EE40 0004AAA0  90 1D 00 04 */	stw r0, 4(r29)
lbl_8004EE44:
/* 8004EE44 0004AAA4  38 00 00 00 */	li r0, 0
/* 8004EE48 0004AAA8  98 1D 00 00 */	stb r0, 0(r29)
/* 8004EE4C 0004AAAC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004EE50 0004AAB0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004EE54 0004AAB4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004EE58 0004AAB8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004EE5C 0004AABC  7C 08 03 A6 */	mtlr r0
/* 8004EE60 0004AAC0  38 21 00 20 */	addi r1, r1, 0x20
/* 8004EE64 0004AAC4  4E 80 00 20 */	blr

.global func_8004EE68
func_8004EE68:
/* 8004EE68 0004AAC8  88 63 00 00 */	lbz r3, 0(r3)
/* 8004EE6C 0004AACC  4E 80 00 20 */	blr

.global func_8004EE70
func_8004EE70:
/* 8004EE70 0004AAD0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8004EE74 0004AAD4  7C 08 02 A6 */	mflr r0
/* 8004EE78 0004AAD8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004EE7C 0004AADC  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8004EE80 0004AAE0  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8004EE84 0004AAE4  FF E0 08 90 */	fmr f31, f1
/* 8004EE88 0004AAE8  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8004EE8C 0004AAEC  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8004EE90 0004AAF0  7C FE 3B 78 */	mr r30, r7
/* 8004EE94 0004AAF4  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8004EE98 0004AAF8  7C DD 33 78 */	mr r29, r6
/* 8004EE9C 0004AAFC  93 81 00 20 */	stw r28, 0x20(r1)
/* 8004EEA0 0004AB00  7C 7C 1B 78 */	mr r28, r3
/* 8004EEA4 0004AB04  7C 83 23 78 */	mr r3, r4
/* 8004EEA8 0004AB08  7C A4 2B 78 */	mr r4, r5
/* 8004EEAC 0004AB0C  48 18 C6 11 */	bl func_801DB4BC
/* 8004EEB0 0004AB10  2C 03 00 00 */	cmpwi r3, 0
/* 8004EEB4 0004AB14  7C 7F 1B 78 */	mr r31, r3
/* 8004EEB8 0004AB18  40 82 00 0C */	bne lbl_8004EEC4
/* 8004EEBC 0004AB1C  38 60 00 00 */	li r3, 0
/* 8004EEC0 0004AB20  48 00 00 FC */	b lbl_8004EFBC
lbl_8004EEC4:
/* 8004EEC4 0004AB24  7F 83 E3 78 */	mr r3, r28
/* 8004EEC8 0004AB28  4B FF FE E9 */	bl func_8004EDB0
/* 8004EECC 0004AB2C  48 18 BC 5D */	bl func_801DAB28
/* 8004EED0 0004AB30  2C 03 00 00 */	cmpwi r3, 0
/* 8004EED4 0004AB34  41 82 00 14 */	beq lbl_8004EEE8
/* 8004EED8 0004AB38  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004EEDC 0004AB3C  38 80 00 78 */	li r4, 0x78
/* 8004EEE0 0004AB40  48 18 BD B5 */	bl func_801DAC94
/* 8004EEE4 0004AB44  48 00 00 08 */	b lbl_8004EEEC
lbl_8004EEE8:
/* 8004EEE8 0004AB48  38 60 00 00 */	li r3, 0
lbl_8004EEEC:
/* 8004EEEC 0004AB4C  2C 03 00 00 */	cmpwi r3, 0
/* 8004EEF0 0004AB50  41 82 00 0C */	beq lbl_8004EEFC
/* 8004EEF4 0004AB54  7F E4 FB 78 */	mr r4, r31
/* 8004EEF8 0004AB58  48 1D 0C 4D */	bl func_8021FB44
lbl_8004EEFC:
/* 8004EEFC 0004AB5C  2C 03 00 00 */	cmpwi r3, 0
/* 8004EF00 0004AB60  90 7C 00 04 */	stw r3, 4(r28)
/* 8004EF04 0004AB64  40 82 00 0C */	bne lbl_8004EF10
/* 8004EF08 0004AB68  38 60 00 00 */	li r3, 0
/* 8004EF0C 0004AB6C  48 00 00 B0 */	b lbl_8004EFBC
lbl_8004EF10:
/* 8004EF10 0004AB70  C0 1D 00 00 */	lfs f0, 0(r29)
/* 8004EF14 0004AB74  38 81 00 08 */	addi r4, r1, 8
/* 8004EF18 0004AB78  C0 3D 00 04 */	lfs f1, 4(r29)
/* 8004EF1C 0004AB7C  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 8004EF20 0004AB80  C0 1D 00 08 */	lfs f0, 8(r29)
/* 8004EF24 0004AB84  D0 23 00 18 */	stfs f1, 0x18(r3)
/* 8004EF28 0004AB88  C0 22 84 58 */	lfs f1, lbl_80640A58-_SDA2_BASE_(r2)
/* 8004EF2C 0004AB8C  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 8004EF30 0004AB90  C0 02 84 5C */	lfs f0, lbl_80640A5C-_SDA2_BASE_(r2)
/* 8004EF34 0004AB94  D0 21 00 08 */	stfs f1, 8(r1)
/* 8004EF38 0004AB98  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004EF3C 0004AB9C  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8004EF40 0004ABA0  80 7C 00 04 */	lwz r3, 4(r28)
/* 8004EF44 0004ABA4  48 1D 15 C1 */	bl func_80220504
/* 8004EF48 0004ABA8  C0 02 84 58 */	lfs f0, lbl_80640A58-_SDA2_BASE_(r2)
/* 8004EF4C 0004ABAC  80 7C 00 04 */	lwz r3, 4(r28)
/* 8004EF50 0004ABB0  C0 3E 00 00 */	lfs f1, 0(r30)
/* 8004EF54 0004ABB4  D0 03 00 44 */	stfs f0, 0x44(r3)
/* 8004EF58 0004ABB8  C0 1E 00 04 */	lfs f0, 4(r30)
/* 8004EF5C 0004ABBC  80 7C 00 04 */	lwz r3, 4(r28)
/* 8004EF60 0004ABC0  D0 23 00 48 */	stfs f1, 0x48(r3)
/* 8004EF64 0004ABC4  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004EF68 0004ABC8  80 7C 00 04 */	lwz r3, 4(r28)
/* 8004EF6C 0004ABCC  D3 E3 00 74 */	stfs f31, 0x74(r3)
/* 8004EF70 0004ABD0  83 FC 00 04 */	lwz r31, 4(r28)
/* 8004EF74 0004ABD4  81 9F 00 0C */	lwz r12, 0xc(r31)
/* 8004EF78 0004ABD8  7F E3 FB 78 */	mr r3, r31
/* 8004EF7C 0004ABDC  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004EF80 0004ABE0  7D 89 03 A6 */	mtctr r12
/* 8004EF84 0004ABE4  4E 80 04 21 */	bctrl
/* 8004EF88 0004ABE8  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 8004EF8C 0004ABEC  98 7F 00 08 */	stb r3, 8(r31)
/* 8004EF90 0004ABF0  41 82 00 20 */	beq lbl_8004EFB0
/* 8004EF94 0004ABF4  83 FF 00 04 */	lwz r31, 4(r31)
/* 8004EF98 0004ABF8  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004EF9C 0004ABFC  48 1E C0 BD */	bl func_8023B058
/* 8004EFA0 0004AC00  2C 03 00 00 */	cmpwi r3, 0
/* 8004EFA4 0004AC04  41 82 00 0C */	beq lbl_8004EFB0
/* 8004EFA8 0004AC08  7F E4 FB 78 */	mr r4, r31
/* 8004EFAC 0004AC0C  48 1E C4 0D */	bl func_8023B3B8
lbl_8004EFB0:
/* 8004EFB0 0004AC10  38 00 00 01 */	li r0, 1
/* 8004EFB4 0004AC14  38 60 00 01 */	li r3, 1
/* 8004EFB8 0004AC18  98 1C 00 00 */	stb r0, 0(r28)
lbl_8004EFBC:
/* 8004EFBC 0004AC1C  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8004EFC0 0004AC20  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004EFC4 0004AC24  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8004EFC8 0004AC28  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004EFCC 0004AC2C  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8004EFD0 0004AC30  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8004EFD4 0004AC34  83 81 00 20 */	lwz r28, 0x20(r1)
/* 8004EFD8 0004AC38  7C 08 03 A6 */	mtlr r0
/* 8004EFDC 0004AC3C  38 21 00 40 */	addi r1, r1, 0x40
/* 8004EFE0 0004AC40  4E 80 00 20 */	blr

.global func_8004EFE4
func_8004EFE4:
/* 8004EFE4 0004AC44  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004EFE8 0004AC48  7C 08 02 A6 */	mflr r0
/* 8004EFEC 0004AC4C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004EFF0 0004AC50  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004EFF4 0004AC54  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004EFF8 0004AC58  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004EFFC 0004AC5C  7C 7D 1B 78 */	mr r29, r3
/* 8004F000 0004AC60  4B FF FE 69 */	bl func_8004EE68
/* 8004F004 0004AC64  2C 03 00 00 */	cmpwi r3, 0
/* 8004F008 0004AC68  41 82 00 98 */	beq lbl_8004F0A0
/* 8004F00C 0004AC6C  83 DD 00 04 */	lwz r30, 4(r29)
/* 8004F010 0004AC70  C0 02 84 58 */	lfs f0, lbl_80640A58-_SDA2_BASE_(r2)
/* 8004F014 0004AC74  C0 3E 00 70 */	lfs f1, 0x70(r30)
/* 8004F018 0004AC78  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004F01C 0004AC7C  4C 40 13 82 */	cror 2, 0, 2
/* 8004F020 0004AC80  40 82 00 80 */	bne lbl_8004F0A0
/* 8004F024 0004AC84  38 00 00 00 */	li r0, 0
/* 8004F028 0004AC88  2C 1E 00 00 */	cmpwi r30, 0
/* 8004F02C 0004AC8C  98 1D 00 00 */	stb r0, 0(r29)
/* 8004F030 0004AC90  41 82 00 70 */	beq lbl_8004F0A0
/* 8004F034 0004AC94  88 1E 00 08 */	lbz r0, 8(r30)
/* 8004F038 0004AC98  2C 00 00 00 */	cmpwi r0, 0
/* 8004F03C 0004AC9C  41 82 00 3C */	beq lbl_8004F078
/* 8004F040 0004ACA0  83 FE 00 04 */	lwz r31, 4(r30)
/* 8004F044 0004ACA4  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004F048 0004ACA8  48 1E C0 11 */	bl func_8023B058
/* 8004F04C 0004ACAC  2C 03 00 00 */	cmpwi r3, 0
/* 8004F050 0004ACB0  41 82 00 0C */	beq lbl_8004F05C
/* 8004F054 0004ACB4  7F E4 FB 78 */	mr r4, r31
/* 8004F058 0004ACB8  48 1E C3 C9 */	bl func_8023B420
lbl_8004F05C:
/* 8004F05C 0004ACBC  81 9E 00 0C */	lwz r12, 0xc(r30)
/* 8004F060 0004ACC0  7F C3 F3 78 */	mr r3, r30
/* 8004F064 0004ACC4  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 8004F068 0004ACC8  7D 89 03 A6 */	mtctr r12
/* 8004F06C 0004ACCC  4E 80 04 21 */	bctrl
/* 8004F070 0004ACD0  38 00 00 00 */	li r0, 0
/* 8004F074 0004ACD4  98 1E 00 08 */	stb r0, 8(r30)
lbl_8004F078:
/* 8004F078 0004ACD8  80 7D 00 04 */	lwz r3, 4(r29)
/* 8004F07C 0004ACDC  2C 03 00 00 */	cmpwi r3, 0
/* 8004F080 0004ACE0  41 82 00 18 */	beq lbl_8004F098
/* 8004F084 0004ACE4  81 83 00 0C */	lwz r12, 0xc(r3)
/* 8004F088 0004ACE8  38 80 00 01 */	li r4, 1
/* 8004F08C 0004ACEC  81 8C 00 18 */	lwz r12, 0x18(r12)
/* 8004F090 0004ACF0  7D 89 03 A6 */	mtctr r12
/* 8004F094 0004ACF4  4E 80 04 21 */	bctrl
lbl_8004F098:
/* 8004F098 0004ACF8  38 00 00 00 */	li r0, 0
/* 8004F09C 0004ACFC  90 1D 00 04 */	stw r0, 4(r29)
lbl_8004F0A0:
/* 8004F0A0 0004AD00  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004F0A4 0004AD04  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004F0A8 0004AD08  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004F0AC 0004AD0C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004F0B0 0004AD10  7C 08 03 A6 */	mtlr r0
/* 8004F0B4 0004AD14  38 21 00 20 */	addi r1, r1, 0x20
/* 8004F0B8 0004AD18  4E 80 00 20 */	blr

.global func_8004F0BC
func_8004F0BC:
/* 8004F0BC 0004AD1C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F0C0 0004AD20  7C 08 02 A6 */	mflr r0
/* 8004F0C4 0004AD24  3C 80 80 05 */	lis r4, lbl_8004ED4C@ha
/* 8004F0C8 0004AD28  3C A0 80 05 */	lis r5, lbl_8004ED5C@ha
/* 8004F0CC 0004AD2C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F0D0 0004AD30  38 C0 00 08 */	li r6, 8
/* 8004F0D4 0004AD34  38 84 ED 4C */	addi r4, r4, lbl_8004ED4C@l
/* 8004F0D8 0004AD38  38 A5 ED 5C */	addi r5, r5, lbl_8004ED5C@l
/* 8004F0DC 0004AD3C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004F0E0 0004AD40  7C 7F 1B 78 */	mr r31, r3
/* 8004F0E4 0004AD44  38 E0 00 20 */	li r7, 0x20
/* 8004F0E8 0004AD48  48 17 7D 81 */	bl __construct_array
/* 8004F0EC 0004AD4C  38 7F 01 00 */	addi r3, r31, 0x100
/* 8004F0F0 0004AD50  38 80 00 00 */	li r4, 0
/* 8004F0F4 0004AD54  38 A0 00 80 */	li r5, 0x80
/* 8004F0F8 0004AD58  4B FB 50 0D */	bl memset
/* 8004F0FC 0004AD5C  7F E3 FB 78 */	mr r3, r31
/* 8004F100 0004AD60  38 80 00 00 */	li r4, 0
/* 8004F104 0004AD64  38 A0 01 00 */	li r5, 0x100
/* 8004F108 0004AD68  4B FB 4F FD */	bl memset
/* 8004F10C 0004AD6C  C0 02 84 60 */	lfs f0, lbl_80640A60-_SDA2_BASE_(r2)
/* 8004F110 0004AD70  7F E3 FB 78 */	mr r3, r31
/* 8004F114 0004AD74  D0 1F 01 80 */	stfs f0, 0x180(r31)
/* 8004F118 0004AD78  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004F11C 0004AD7C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F120 0004AD80  7C 08 03 A6 */	mtlr r0
/* 8004F124 0004AD84  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F128 0004AD88  4E 80 00 20 */	blr

.global func_8004F12C
func_8004F12C:
/* 8004F12C 0004AD8C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F130 0004AD90  7C 08 02 A6 */	mflr r0
/* 8004F134 0004AD94  38 80 00 00 */	li r4, 0
/* 8004F138 0004AD98  38 A0 00 80 */	li r5, 0x80
/* 8004F13C 0004AD9C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F140 0004ADA0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004F144 0004ADA4  7C 7F 1B 78 */	mr r31, r3
/* 8004F148 0004ADA8  38 63 01 00 */	addi r3, r3, 0x100
/* 8004F14C 0004ADAC  4B FB 4F B9 */	bl memset
/* 8004F150 0004ADB0  7F E3 FB 78 */	mr r3, r31
/* 8004F154 0004ADB4  38 80 00 00 */	li r4, 0
/* 8004F158 0004ADB8  38 A0 01 00 */	li r5, 0x100
/* 8004F15C 0004ADBC  4B FB 4F A9 */	bl memset
/* 8004F160 0004ADC0  C0 02 84 60 */	lfs f0, lbl_80640A60-_SDA2_BASE_(r2)
/* 8004F164 0004ADC4  3C A0 11 9C */	lis r5, 0x119C0C00@ha
/* 8004F168 0004ADC8  7F E3 FB 78 */	mr r3, r31
/* 8004F16C 0004ADCC  38 80 00 0C */	li r4, 0xc
/* 8004F170 0004ADD0  D0 1F 01 80 */	stfs f0, 0x180(r31)
/* 8004F174 0004ADD4  38 A5 0C 00 */	addi r5, r5, 0x119C0C00@l
/* 8004F178 0004ADD8  48 00 00 19 */	bl func_8004F190
/* 8004F17C 0004ADDC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F180 0004ADE0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004F184 0004ADE4  7C 08 03 A6 */	mtlr r0
/* 8004F188 0004ADE8  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F18C 0004ADEC  4E 80 00 20 */	blr

.global func_8004F190
func_8004F190:
/* 8004F190 0004ADF0  38 00 00 10 */	li r0, 0x10
/* 8004F194 0004ADF4  7C 66 1B 78 */	mr r6, r3
/* 8004F198 0004ADF8  38 E0 00 00 */	li r7, 0
/* 8004F19C 0004ADFC  7C 09 03 A6 */	mtctr r0
lbl_8004F1A0:
/* 8004F1A0 0004AE00  80 06 01 00 */	lwz r0, 0x100(r6)
/* 8004F1A4 0004AE04  2C 00 00 00 */	cmpwi r0, 0
/* 8004F1A8 0004AE08  40 82 00 1C */	bne lbl_8004F1C4
/* 8004F1AC 0004AE0C  54 E0 18 38 */	slwi r0, r7, 3
/* 8004F1B0 0004AE10  7C C3 02 14 */	add r6, r3, r0
/* 8004F1B4 0004AE14  38 67 00 01 */	addi r3, r7, 1
/* 8004F1B8 0004AE18  90 86 01 00 */	stw r4, 0x100(r6)
/* 8004F1BC 0004AE1C  90 A6 01 04 */	stw r5, 0x104(r6)
/* 8004F1C0 0004AE20  4E 80 00 20 */	blr
lbl_8004F1C4:
/* 8004F1C4 0004AE24  38 C6 00 08 */	addi r6, r6, 8
/* 8004F1C8 0004AE28  38 E7 00 01 */	addi r7, r7, 1
/* 8004F1CC 0004AE2C  42 00 FF D4 */	bdnz lbl_8004F1A0
/* 8004F1D0 0004AE30  38 60 00 00 */	li r3, 0
/* 8004F1D4 0004AE34  4E 80 00 20 */	blr

.global func_8004F1D8
func_8004F1D8:
/* 8004F1D8 0004AE38  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004F1DC 0004AE3C  7C 08 02 A6 */	mflr r0
/* 8004F1E0 0004AE40  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004F1E4 0004AE44  39 61 00 20 */	addi r11, r1, 0x20
/* 8004F1E8 0004AE48  48 17 7F 3D */	bl _savegpr_26
/* 8004F1EC 0004AE4C  2C 04 00 00 */	cmpwi r4, 0
/* 8004F1F0 0004AE50  7C 7A 1B 78 */	mr r26, r3
/* 8004F1F4 0004AE54  7C BB 2B 78 */	mr r27, r5
/* 8004F1F8 0004AE58  7C DC 33 78 */	mr r28, r6
/* 8004F1FC 0004AE5C  41 82 00 14 */	beq lbl_8004F210
/* 8004F200 0004AE60  28 04 00 0F */	cmplwi r4, 0xf
/* 8004F204 0004AE64  41 80 00 0C */	blt lbl_8004F210
/* 8004F208 0004AE68  38 60 00 00 */	li r3, 0
/* 8004F20C 0004AE6C  48 00 00 80 */	b lbl_8004F28C
lbl_8004F210:
/* 8004F210 0004AE70  38 04 FF FF */	addi r0, r4, -1
/* 8004F214 0004AE74  54 00 18 38 */	slwi r0, r0, 3
/* 8004F218 0004AE78  7F E3 02 14 */	add r31, r3, r0
/* 8004F21C 0004AE7C  80 7F 01 00 */	lwz r3, 0x100(r31)
/* 8004F220 0004AE80  80 9F 01 04 */	lwz r4, 0x104(r31)
/* 8004F224 0004AE84  48 18 C2 99 */	bl func_801DB4BC
/* 8004F228 0004AE88  2C 03 00 00 */	cmpwi r3, 0
/* 8004F22C 0004AE8C  40 82 00 0C */	bne lbl_8004F238
/* 8004F230 0004AE90  38 60 00 00 */	li r3, 0
/* 8004F234 0004AE94  48 00 00 58 */	b lbl_8004F28C
lbl_8004F238:
/* 8004F238 0004AE98  7F 5E D3 78 */	mr r30, r26
/* 8004F23C 0004AE9C  3B A0 00 00 */	li r29, 0
lbl_8004F240:
/* 8004F240 0004AEA0  7F C3 F3 78 */	mr r3, r30
/* 8004F244 0004AEA4  4B FF FC 25 */	bl func_8004EE68
/* 8004F248 0004AEA8  2C 03 00 00 */	cmpwi r3, 0
/* 8004F24C 0004AEAC  40 82 00 2C */	bne lbl_8004F278
/* 8004F250 0004AEB0  57 A0 18 38 */	slwi r0, r29, 3
/* 8004F254 0004AEB4  80 9F 01 00 */	lwz r4, 0x100(r31)
/* 8004F258 0004AEB8  80 BF 01 04 */	lwz r5, 0x104(r31)
/* 8004F25C 0004AEBC  7F 66 DB 78 */	mr r6, r27
/* 8004F260 0004AEC0  C0 3A 01 80 */	lfs f1, 0x180(r26)
/* 8004F264 0004AEC4  7F 87 E3 78 */	mr r7, r28
/* 8004F268 0004AEC8  7C 7A 02 14 */	add r3, r26, r0
/* 8004F26C 0004AECC  4B FF FC 05 */	bl func_8004EE70
/* 8004F270 0004AED0  38 7D 00 01 */	addi r3, r29, 1
/* 8004F274 0004AED4  48 00 00 18 */	b lbl_8004F28C
lbl_8004F278:
/* 8004F278 0004AED8  3B BD 00 01 */	addi r29, r29, 1
/* 8004F27C 0004AEDC  3B DE 00 08 */	addi r30, r30, 8
/* 8004F280 0004AEE0  28 1D 00 20 */	cmplwi r29, 0x20
/* 8004F284 0004AEE4  41 80 FF BC */	blt lbl_8004F240
/* 8004F288 0004AEE8  38 60 00 00 */	li r3, 0
lbl_8004F28C:
/* 8004F28C 0004AEEC  39 61 00 20 */	addi r11, r1, 0x20
/* 8004F290 0004AEF0  48 17 7E E1 */	bl _restgpr_26
/* 8004F294 0004AEF4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004F298 0004AEF8  7C 08 03 A6 */	mtlr r0
/* 8004F29C 0004AEFC  38 21 00 20 */	addi r1, r1, 0x20
/* 8004F2A0 0004AF00  4E 80 00 20 */	blr

.global func_8004F2A4
func_8004F2A4:
/* 8004F2A4 0004AF04  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004F2A8 0004AF08  7C 08 02 A6 */	mflr r0
/* 8004F2AC 0004AF0C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004F2B0 0004AF10  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8004F2B4 0004AF14  FF E0 08 90 */	fmr f31, f1
/* 8004F2B8 0004AF18  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8004F2BC 0004AF1C  7C 7F 1B 78 */	mr r31, r3
/* 8004F2C0 0004AF20  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8004F2C4 0004AF24  3B C0 00 00 */	li r30, 0
lbl_8004F2C8:
/* 8004F2C8 0004AF28  FC 20 F8 90 */	fmr f1, f31
/* 8004F2CC 0004AF2C  7F E3 FB 78 */	mr r3, r31
/* 8004F2D0 0004AF30  4B FF FD 15 */	bl func_8004EFE4
/* 8004F2D4 0004AF34  3B DE 00 01 */	addi r30, r30, 1
/* 8004F2D8 0004AF38  3B FF 00 08 */	addi r31, r31, 8
/* 8004F2DC 0004AF3C  28 1E 00 20 */	cmplwi r30, 0x20
/* 8004F2E0 0004AF40  41 80 FF E8 */	blt lbl_8004F2C8
/* 8004F2E4 0004AF44  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004F2E8 0004AF48  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004F2EC 0004AF4C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004F2F0 0004AF50  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8004F2F4 0004AF54  7C 08 03 A6 */	mtlr r0
/* 8004F2F8 0004AF58  38 21 00 20 */	addi r1, r1, 0x20
/* 8004F2FC 0004AF5C  4E 80 00 20 */	blr

.global func_8004F300
func_8004F300:
/* 8004F300 0004AF60  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F304 0004AF64  7C 08 02 A6 */	mflr r0
/* 8004F308 0004AF68  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F30C 0004AF6C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004F310 0004AF70  7C 7F 1B 78 */	mr r31, r3
/* 8004F314 0004AF74  93 C1 00 08 */	stw r30, 8(r1)
/* 8004F318 0004AF78  3B C0 00 00 */	li r30, 0
lbl_8004F31C:
/* 8004F31C 0004AF7C  7F E3 FB 78 */	mr r3, r31
/* 8004F320 0004AF80  4B FF FB 49 */	bl func_8004EE68
/* 8004F324 0004AF84  2C 03 00 00 */	cmpwi r3, 0
/* 8004F328 0004AF88  41 82 00 0C */	beq lbl_8004F334
/* 8004F32C 0004AF8C  7F E3 FB 78 */	mr r3, r31
/* 8004F330 0004AF90  4B FF FA 81 */	bl func_8004EDB0
lbl_8004F334:
/* 8004F334 0004AF94  3B DE 00 01 */	addi r30, r30, 1
/* 8004F338 0004AF98  3B FF 00 08 */	addi r31, r31, 8
/* 8004F33C 0004AF9C  28 1E 00 20 */	cmplwi r30, 0x20
/* 8004F340 0004AFA0  41 80 FF DC */	blt lbl_8004F31C
/* 8004F344 0004AFA4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F348 0004AFA8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004F34C 0004AFAC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004F350 0004AFB0  7C 08 03 A6 */	mtlr r0
/* 8004F354 0004AFB4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F358 0004AFB8  4E 80 00 20 */	blr

.global func_8004F35C
func_8004F35C:
/* 8004F35C 0004AFBC  38 A0 00 01 */	li r5, 1
/* 8004F360 0004AFC0  38 6D 98 40 */	addi r3, r13, lbl_8063EB00-_SDA_BASE_
/* 8004F364 0004AFC4  38 80 00 04 */	li r4, 4
/* 8004F368 0004AFC8  38 00 00 00 */	li r0, 0
/* 8004F36C 0004AFCC  98 AD 98 40 */	stb r5, lbl_8063EB00-_SDA_BASE_(r13)
/* 8004F370 0004AFD0  B0 83 00 02 */	sth r4, 2(r3)
/* 8004F374 0004AFD4  98 03 00 04 */	stb r0, 4(r3)
/* 8004F378 0004AFD8  4E 80 00 20 */	blr

.global func_8004F37C
func_8004F37C:
/* 8004F37C 0004AFDC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F380 0004AFE0  7C 08 02 A6 */	mflr r0
/* 8004F384 0004AFE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F388 0004AFE8  80 6D 98 50 */	lwz r3, lbl_8063EB10-_SDA_BASE_(r13)
/* 8004F38C 0004AFEC  2C 03 00 00 */	cmpwi r3, 0
/* 8004F390 0004AFF0  41 82 00 0C */	beq lbl_8004F39C
/* 8004F394 0004AFF4  38 80 00 01 */	li r4, 1
/* 8004F398 0004AFF8  48 00 00 D1 */	bl func_8004F468
lbl_8004F39C:
/* 8004F39C 0004AFFC  38 60 00 08 */	li r3, 8
/* 8004F3A0 0004B000  48 18 B6 91 */	bl func_801DAA30
/* 8004F3A4 0004B004  2C 03 00 00 */	cmpwi r3, 0
/* 8004F3A8 0004B008  41 82 00 08 */	beq lbl_8004F3B0
/* 8004F3AC 0004B00C  48 00 00 79 */	bl func_8004F424
lbl_8004F3B0:
/* 8004F3B0 0004B010  3C 80 80 05 */	lis r4, lbl_8004F3E4@ha
/* 8004F3B4 0004B014  3C A0 80 05 */	lis r5, lbl_8004F418@ha
/* 8004F3B8 0004B018  90 6D 98 50 */	stw r3, lbl_8063EB10-_SDA_BASE_(r13)
/* 8004F3BC 0004B01C  38 84 F3 E4 */	addi r4, r4, lbl_8004F3E4@l
/* 8004F3C0 0004B020  80 6D A4 B8 */	lwz r3, lbl_8063F778-_SDA_BASE_(r13)
/* 8004F3C4 0004B024  38 A5 F4 18 */	addi r5, r5, lbl_8004F418@l
/* 8004F3C8 0004B028  38 C0 00 03 */	li r6, 3
/* 8004F3CC 0004B02C  38 E0 00 0C */	li r7, 0xc
/* 8004F3D0 0004B030  48 1E F7 89 */	bl func_8023EB58
/* 8004F3D4 0004B034  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F3D8 0004B038  7C 08 03 A6 */	mtlr r0
/* 8004F3DC 0004B03C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F3E0 0004B040  4E 80 00 20 */	blr
lbl_8004F3E4:
/* 8004F3E4 0004B044  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F3E8 0004B048  7C 08 02 A6 */	mflr r0
/* 8004F3EC 0004B04C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F3F0 0004B050  80 0D 98 50 */	lwz r0, lbl_8063EB10-_SDA_BASE_(r13)
/* 8004F3F4 0004B054  2C 00 00 00 */	cmpwi r0, 0
/* 8004F3F8 0004B058  41 82 00 10 */	beq lbl_8004F408
/* 8004F3FC 0004B05C  4B FB 7F A1 */	bl func_8000739C
/* 8004F400 0004B060  80 6D 98 50 */	lwz r3, lbl_8063EB10-_SDA_BASE_(r13)
/* 8004F404 0004B064  48 00 00 C9 */	bl func_8004F4CC
lbl_8004F408:
/* 8004F408 0004B068  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F40C 0004B06C  7C 08 03 A6 */	mtlr r0
/* 8004F410 0004B070  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F414 0004B074  4E 80 00 20 */	blr
lbl_8004F418:
/* 8004F418 0004B078  4E 80 00 20 */	blr

.global func_8004F41C
func_8004F41C:
/* 8004F41C 0004B07C  80 6D 98 50 */	lwz r3, lbl_8063EB10-_SDA_BASE_(r13)
/* 8004F420 0004B080  4E 80 00 20 */	blr

.global func_8004F424
func_8004F424:
/* 8004F424 0004B084  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F428 0004B088  7C 08 02 A6 */	mflr r0
/* 8004F42C 0004B08C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F430 0004B090  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004F434 0004B094  7C 7F 1B 78 */	mr r31, r3
/* 8004F438 0004B098  38 60 01 74 */	li r3, 0x174
/* 8004F43C 0004B09C  48 18 B5 F5 */	bl func_801DAA30
/* 8004F440 0004B0A0  2C 03 00 00 */	cmpwi r3, 0
/* 8004F444 0004B0A4  41 82 00 08 */	beq lbl_8004F44C
/* 8004F448 0004B0A8  48 00 00 8D */	bl func_8004F4D4
lbl_8004F44C:
/* 8004F44C 0004B0AC  90 7F 00 04 */	stw r3, 4(r31)
/* 8004F450 0004B0B0  7F E3 FB 78 */	mr r3, r31
/* 8004F454 0004B0B4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004F458 0004B0B8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F45C 0004B0BC  7C 08 03 A6 */	mtlr r0
/* 8004F460 0004B0C0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F464 0004B0C4  4E 80 00 20 */	blr

.global func_8004F468
func_8004F468:
/* 8004F468 0004B0C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F46C 0004B0CC  7C 08 02 A6 */	mflr r0
/* 8004F470 0004B0D0  2C 03 00 00 */	cmpwi r3, 0
/* 8004F474 0004B0D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F478 0004B0D8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004F47C 0004B0DC  7C 9F 23 78 */	mr r31, r4
/* 8004F480 0004B0E0  93 C1 00 08 */	stw r30, 8(r1)
/* 8004F484 0004B0E4  7C 7E 1B 78 */	mr r30, r3
/* 8004F488 0004B0E8  41 82 00 20 */	beq lbl_8004F4A8
/* 8004F48C 0004B0EC  80 63 00 04 */	lwz r3, 4(r3)
/* 8004F490 0004B0F0  38 80 00 01 */	li r4, 1
/* 8004F494 0004B0F4  48 00 01 29 */	bl func_8004F5BC
/* 8004F498 0004B0F8  2C 1F 00 00 */	cmpwi r31, 0
/* 8004F49C 0004B0FC  40 81 00 0C */	ble lbl_8004F4A8
/* 8004F4A0 0004B100  7F C3 F3 78 */	mr r3, r30
/* 8004F4A4 0004B104  48 18 B6 15 */	bl func_801DAAB8
lbl_8004F4A8:
/* 8004F4A8 0004B108  7F C3 F3 78 */	mr r3, r30
/* 8004F4AC 0004B10C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004F4B0 0004B110  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004F4B4 0004B114  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F4B8 0004B118  7C 08 03 A6 */	mtlr r0
/* 8004F4BC 0004B11C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F4C0 0004B120  4E 80 00 20 */	blr

.global func_8004F4C4
func_8004F4C4:
/* 8004F4C4 0004B124  80 63 00 04 */	lwz r3, 4(r3)
/* 8004F4C8 0004B128  4E 80 00 20 */	blr

.global func_8004F4CC
func_8004F4CC:
/* 8004F4CC 0004B12C  80 63 00 04 */	lwz r3, 4(r3)
/* 8004F4D0 0004B130  48 00 04 30 */	b lbl_8004F900

.global func_8004F4D4
func_8004F4D4:
/* 8004F4D4 0004B134  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004F4D8 0004B138  7C 08 02 A6 */	mflr r0
/* 8004F4DC 0004B13C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004F4E0 0004B140  38 00 00 00 */	li r0, 0
/* 8004F4E4 0004B144  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004F4E8 0004B148  3B E3 01 24 */	addi r31, r3, 0x124
/* 8004F4EC 0004B14C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004F4F0 0004B150  3B C3 00 4C */	addi r30, r3, 0x4c
/* 8004F4F4 0004B154  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004F4F8 0004B158  7C 7D 1B 78 */	mr r29, r3
/* 8004F4FC 0004B15C  90 03 00 00 */	stw r0, 0(r3)
lbl_8004F500:
/* 8004F500 0004B160  7F C3 F3 78 */	mr r3, r30
/* 8004F504 0004B164  48 00 0E 21 */	bl func_80050324
/* 8004F508 0004B168  3B DE 00 24 */	addi r30, r30, 0x24
/* 8004F50C 0004B16C  7C 1E F8 40 */	cmplw r30, r31
/* 8004F510 0004B170  41 80 FF F0 */	blt lbl_8004F500
/* 8004F514 0004B174  7F E3 FB 78 */	mr r3, r31
/* 8004F518 0004B178  48 00 16 1D */	bl func_80050B34
/* 8004F51C 0004B17C  C0 62 84 68 */	lfs f3, lbl_80640A68-_SDA2_BASE_(r2)
/* 8004F520 0004B180  38 A0 00 00 */	li r5, 0
/* 8004F524 0004B184  C0 22 84 70 */	lfs f1, lbl_80640A70-_SDA2_BASE_(r2)
/* 8004F528 0004B188  38 00 FF FF */	li r0, -1
/* 8004F52C 0004B18C  C0 42 84 6C */	lfs f2, lbl_80640A6C-_SDA2_BASE_(r2)
/* 8004F530 0004B190  7F A3 EB 78 */	mr r3, r29
/* 8004F534 0004B194  C0 02 84 74 */	lfs f0, lbl_80640A74-_SDA2_BASE_(r2)
/* 8004F538 0004B198  38 80 00 00 */	li r4, 0
/* 8004F53C 0004B19C  90 BD 00 2C */	stw r5, 0x2c(r29)
/* 8004F540 0004B1A0  90 BD 00 30 */	stw r5, 0x30(r29)
/* 8004F544 0004B1A4  90 BD 00 34 */	stw r5, 0x34(r29)
/* 8004F548 0004B1A8  90 BD 00 38 */	stw r5, 0x38(r29)
/* 8004F54C 0004B1AC  90 BD 00 3C */	stw r5, 0x3c(r29)
/* 8004F550 0004B1B0  90 BD 00 40 */	stw r5, 0x40(r29)
/* 8004F554 0004B1B4  90 BD 00 44 */	stw r5, 0x44(r29)
/* 8004F558 0004B1B8  90 BD 00 48 */	stw r5, 0x48(r29)
/* 8004F55C 0004B1BC  90 1D 01 60 */	stw r0, 0x160(r29)
/* 8004F560 0004B1C0  98 BD 01 70 */	stb r5, 0x170(r29)
/* 8004F564 0004B1C4  D0 7D 00 14 */	stfs f3, 0x14(r29)
/* 8004F568 0004B1C8  D0 5D 00 18 */	stfs f2, 0x18(r29)
/* 8004F56C 0004B1CC  D0 7D 00 1C */	stfs f3, 0x1c(r29)
/* 8004F570 0004B1D0  D0 7D 00 20 */	stfs f3, 0x20(r29)
/* 8004F574 0004B1D4  D0 7D 00 24 */	stfs f3, 0x24(r29)
/* 8004F578 0004B1D8  D0 7D 00 28 */	stfs f3, 0x28(r29)
/* 8004F57C 0004B1DC  D0 3D 00 04 */	stfs f1, 4(r29)
/* 8004F580 0004B1E0  D0 3D 00 08 */	stfs f1, 8(r29)
/* 8004F584 0004B1E4  D0 3D 00 0C */	stfs f1, 0xc(r29)
/* 8004F588 0004B1E8  D0 3D 00 10 */	stfs f1, 0x10(r29)
/* 8004F58C 0004B1EC  D0 1D 01 64 */	stfs f0, 0x164(r29)
/* 8004F590 0004B1F0  D0 7D 01 68 */	stfs f3, 0x168(r29)
/* 8004F594 0004B1F4  D0 7D 01 6C */	stfs f3, 0x16c(r29)
/* 8004F598 0004B1F8  48 00 00 95 */	bl func_8004F62C
/* 8004F59C 0004B1FC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004F5A0 0004B200  7F A3 EB 78 */	mr r3, r29
/* 8004F5A4 0004B204  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004F5A8 0004B208  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004F5AC 0004B20C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004F5B0 0004B210  7C 08 03 A6 */	mtlr r0
/* 8004F5B4 0004B214  38 21 00 20 */	addi r1, r1, 0x20
/* 8004F5B8 0004B218  4E 80 00 20 */	blr

.global func_8004F5BC
func_8004F5BC:
/* 8004F5BC 0004B21C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004F5C0 0004B220  7C 08 02 A6 */	mflr r0
/* 8004F5C4 0004B224  2C 03 00 00 */	cmpwi r3, 0
/* 8004F5C8 0004B228  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004F5CC 0004B22C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004F5D0 0004B230  7C 9F 23 78 */	mr r31, r4
/* 8004F5D4 0004B234  93 C1 00 08 */	stw r30, 8(r1)
/* 8004F5D8 0004B238  7C 7E 1B 78 */	mr r30, r3
/* 8004F5DC 0004B23C  41 82 00 34 */	beq lbl_8004F610
/* 8004F5E0 0004B240  80 63 00 00 */	lwz r3, 0(r3)
/* 8004F5E4 0004B244  2C 03 00 00 */	cmpwi r3, 0
/* 8004F5E8 0004B248  41 82 00 18 */	beq lbl_8004F600
/* 8004F5EC 0004B24C  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8004F5F0 0004B250  38 80 00 01 */	li r4, 1
/* 8004F5F4 0004B254  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004F5F8 0004B258  7D 89 03 A6 */	mtctr r12
/* 8004F5FC 0004B25C  4E 80 04 21 */	bctrl
lbl_8004F600:
/* 8004F600 0004B260  2C 1F 00 00 */	cmpwi r31, 0
/* 8004F604 0004B264  40 81 00 0C */	ble lbl_8004F610
/* 8004F608 0004B268  7F C3 F3 78 */	mr r3, r30
/* 8004F60C 0004B26C  48 18 B4 AD */	bl func_801DAAB8
lbl_8004F610:
/* 8004F610 0004B270  7F C3 F3 78 */	mr r3, r30
/* 8004F614 0004B274  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004F618 0004B278  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004F61C 0004B27C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004F620 0004B280  7C 08 03 A6 */	mtlr r0
/* 8004F624 0004B284  38 21 00 10 */	addi r1, r1, 0x10
/* 8004F628 0004B288  4E 80 00 20 */	blr

.global func_8004F62C
func_8004F62C:
/* 8004F62C 0004B28C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8004F630 0004B290  7C 08 02 A6 */	mflr r0
/* 8004F634 0004B294  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004F638 0004B298  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8004F63C 0004B29C  7C 7F 1B 78 */	mr r31, r3
/* 8004F640 0004B2A0  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8004F644 0004B2A4  7C 9E 23 78 */	mr r30, r4
/* 8004F648 0004B2A8  80 A3 00 00 */	lwz r5, 0(r3)
/* 8004F64C 0004B2AC  2C 05 00 00 */	cmpwi r5, 0
/* 8004F650 0004B2B0  41 82 00 10 */	beq lbl_8004F660
/* 8004F654 0004B2B4  80 03 01 60 */	lwz r0, 0x160(r3)
/* 8004F658 0004B2B8  7C 00 20 00 */	cmpw r0, r4
/* 8004F65C 0004B2BC  41 82 02 8C */	beq lbl_8004F8E8
lbl_8004F660:
/* 8004F660 0004B2C0  2C 05 00 00 */	cmpwi r5, 0
/* 8004F664 0004B2C4  41 82 00 20 */	beq lbl_8004F684
/* 8004F668 0004B2C8  41 82 00 1C */	beq lbl_8004F684
/* 8004F66C 0004B2CC  81 85 01 00 */	lwz r12, 0x100(r5)
/* 8004F670 0004B2D0  7C A3 2B 78 */	mr r3, r5
/* 8004F674 0004B2D4  38 80 00 01 */	li r4, 1
/* 8004F678 0004B2D8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004F67C 0004B2DC  7D 89 03 A6 */	mtctr r12
/* 8004F680 0004B2E0  4E 80 04 21 */	bctrl
lbl_8004F684:
/* 8004F684 0004B2E4  2C 1E 00 01 */	cmpwi r30, 1
/* 8004F688 0004B2E8  93 DF 01 60 */	stw r30, 0x160(r31)
/* 8004F68C 0004B2EC  41 82 00 18 */	beq lbl_8004F6A4
/* 8004F690 0004B2F0  40 80 00 08 */	bge lbl_8004F698
/* 8004F694 0004B2F4  48 00 00 C0 */	b lbl_8004F754
lbl_8004F698:
/* 8004F698 0004B2F8  2C 1E 00 03 */	cmpwi r30, 3
/* 8004F69C 0004B2FC  40 80 00 B8 */	bge lbl_8004F754
/* 8004F6A0 0004B300  48 00 00 5C */	b lbl_8004F6FC
lbl_8004F6A4:
/* 8004F6A4 0004B304  48 18 B4 85 */	bl func_801DAB28
/* 8004F6A8 0004B308  2C 03 00 00 */	cmpwi r3, 0
/* 8004F6AC 0004B30C  41 82 00 14 */	beq lbl_8004F6C0
/* 8004F6B0 0004B310  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004F6B4 0004B314  38 80 01 38 */	li r4, 0x138
/* 8004F6B8 0004B318  48 18 B5 DD */	bl func_801DAC94
/* 8004F6BC 0004B31C  48 00 00 08 */	b lbl_8004F6C4
lbl_8004F6C0:
/* 8004F6C0 0004B320  38 60 00 00 */	li r3, 0
lbl_8004F6C4:
/* 8004F6C4 0004B324  2C 03 00 00 */	cmpwi r3, 0
/* 8004F6C8 0004B328  41 82 00 2C */	beq lbl_8004F6F4
/* 8004F6CC 0004B32C  38 00 00 FF */	li r0, 0xff
/* 8004F6D0 0004B330  38 E1 00 10 */	addi r7, r1, 0x10
/* 8004F6D4 0004B334  98 01 00 10 */	stb r0, 0x10(r1)
/* 8004F6D8 0004B338  38 80 00 01 */	li r4, 1
/* 8004F6DC 0004B33C  38 A0 00 01 */	li r5, 1
/* 8004F6E0 0004B340  38 C0 00 00 */	li r6, 0
/* 8004F6E4 0004B344  98 01 00 11 */	stb r0, 0x11(r1)
/* 8004F6E8 0004B348  98 01 00 12 */	stb r0, 0x12(r1)
/* 8004F6EC 0004B34C  98 01 00 13 */	stb r0, 0x13(r1)
/* 8004F6F0 0004B350  48 19 68 8D */	bl func_801E5F7C
lbl_8004F6F4:
/* 8004F6F4 0004B354  90 7F 00 00 */	stw r3, 0(r31)
/* 8004F6F8 0004B358  48 00 00 B8 */	b lbl_8004F7B0
lbl_8004F6FC:
/* 8004F6FC 0004B35C  48 18 B4 2D */	bl func_801DAB28
/* 8004F700 0004B360  2C 03 00 00 */	cmpwi r3, 0
/* 8004F704 0004B364  41 82 00 14 */	beq lbl_8004F718
/* 8004F708 0004B368  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004F70C 0004B36C  38 80 01 38 */	li r4, 0x138
/* 8004F710 0004B370  48 18 B5 85 */	bl func_801DAC94
/* 8004F714 0004B374  48 00 00 08 */	b lbl_8004F71C
lbl_8004F718:
/* 8004F718 0004B378  38 60 00 00 */	li r3, 0
lbl_8004F71C:
/* 8004F71C 0004B37C  2C 03 00 00 */	cmpwi r3, 0
/* 8004F720 0004B380  41 82 00 2C */	beq lbl_8004F74C
/* 8004F724 0004B384  38 00 00 FF */	li r0, 0xff
/* 8004F728 0004B388  38 E1 00 0C */	addi r7, r1, 0xc
/* 8004F72C 0004B38C  98 01 00 0C */	stb r0, 0xc(r1)
/* 8004F730 0004B390  38 80 00 02 */	li r4, 2
/* 8004F734 0004B394  38 A0 00 01 */	li r5, 1
/* 8004F738 0004B398  38 C0 00 00 */	li r6, 0
/* 8004F73C 0004B39C  98 01 00 0D */	stb r0, 0xd(r1)
/* 8004F740 0004B3A0  98 01 00 0E */	stb r0, 0xe(r1)
/* 8004F744 0004B3A4  98 01 00 0F */	stb r0, 0xf(r1)
/* 8004F748 0004B3A8  48 19 68 35 */	bl func_801E5F7C
lbl_8004F74C:
/* 8004F74C 0004B3AC  90 7F 00 00 */	stw r3, 0(r31)
/* 8004F750 0004B3B0  48 00 00 60 */	b lbl_8004F7B0
lbl_8004F754:
/* 8004F754 0004B3B4  48 18 B3 D5 */	bl func_801DAB28
/* 8004F758 0004B3B8  2C 03 00 00 */	cmpwi r3, 0
/* 8004F75C 0004B3BC  41 82 00 14 */	beq lbl_8004F770
/* 8004F760 0004B3C0  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004F764 0004B3C4  38 80 01 38 */	li r4, 0x138
/* 8004F768 0004B3C8  48 18 B5 2D */	bl func_801DAC94
/* 8004F76C 0004B3CC  48 00 00 08 */	b lbl_8004F774
lbl_8004F770:
/* 8004F770 0004B3D0  38 60 00 00 */	li r3, 0
lbl_8004F774:
/* 8004F774 0004B3D4  2C 03 00 00 */	cmpwi r3, 0
/* 8004F778 0004B3D8  41 82 00 2C */	beq lbl_8004F7A4
/* 8004F77C 0004B3DC  38 00 00 FF */	li r0, 0xff
/* 8004F780 0004B3E0  38 E1 00 08 */	addi r7, r1, 8
/* 8004F784 0004B3E4  98 01 00 08 */	stb r0, 8(r1)
/* 8004F788 0004B3E8  38 80 00 00 */	li r4, 0
/* 8004F78C 0004B3EC  38 A0 00 01 */	li r5, 1
/* 8004F790 0004B3F0  38 C0 00 01 */	li r6, 1
/* 8004F794 0004B3F4  98 01 00 09 */	stb r0, 9(r1)
/* 8004F798 0004B3F8  98 01 00 0A */	stb r0, 0xa(r1)
/* 8004F79C 0004B3FC  98 01 00 0B */	stb r0, 0xb(r1)
/* 8004F7A0 0004B400  48 19 67 DD */	bl func_801E5F7C
lbl_8004F7A4:
/* 8004F7A4 0004B404  38 00 00 00 */	li r0, 0
/* 8004F7A8 0004B408  90 7F 00 00 */	stw r3, 0(r31)
/* 8004F7AC 0004B40C  90 1F 01 60 */	stw r0, 0x160(r31)
lbl_8004F7B0:
/* 8004F7B0 0004B410  88 9F 01 70 */	lbz r4, 0x170(r31)
/* 8004F7B4 0004B414  7F E3 FB 78 */	mr r3, r31
/* 8004F7B8 0004B418  48 00 02 81 */	bl func_8004FA38
/* 8004F7BC 0004B41C  7F E3 FB 78 */	mr r3, r31
/* 8004F7C0 0004B420  38 9F 00 14 */	addi r4, r31, 0x14
/* 8004F7C4 0004B424  48 00 05 1D */	bl func_8004FCE0
/* 8004F7C8 0004B428  7F E3 FB 78 */	mr r3, r31
/* 8004F7CC 0004B42C  38 9F 00 20 */	addi r4, r31, 0x20
/* 8004F7D0 0004B430  48 00 06 29 */	bl func_8004FDF8
/* 8004F7D4 0004B434  7F E3 FB 78 */	mr r3, r31
/* 8004F7D8 0004B438  38 9F 01 64 */	addi r4, r31, 0x164
/* 8004F7DC 0004B43C  48 00 08 45 */	bl func_80050020
/* 8004F7E0 0004B440  C0 1F 00 04 */	lfs f0, 4(r31)
/* 8004F7E4 0004B444  7F E3 FB 78 */	mr r3, r31
/* 8004F7E8 0004B448  38 81 00 14 */	addi r4, r1, 0x14
/* 8004F7EC 0004B44C  FC 00 00 1E */	fctiwz f0, f0
/* 8004F7F0 0004B450  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 8004F7F4 0004B454  80 01 00 1C */	lwz r0, 0x1c(r1)
/* 8004F7F8 0004B458  98 01 00 14 */	stb r0, 0x14(r1)
/* 8004F7FC 0004B45C  C0 1F 00 08 */	lfs f0, 8(r31)
/* 8004F800 0004B460  FC 00 00 1E */	fctiwz f0, f0
/* 8004F804 0004B464  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8004F808 0004B468  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004F80C 0004B46C  98 01 00 15 */	stb r0, 0x15(r1)
/* 8004F810 0004B470  C0 1F 00 0C */	lfs f0, 0xc(r31)
/* 8004F814 0004B474  FC 00 00 1E */	fctiwz f0, f0
/* 8004F818 0004B478  D8 01 00 28 */	stfd f0, 0x28(r1)
/* 8004F81C 0004B47C  80 01 00 2C */	lwz r0, 0x2c(r1)
/* 8004F820 0004B480  98 01 00 16 */	stb r0, 0x16(r1)
/* 8004F824 0004B484  C0 1F 00 10 */	lfs f0, 0x10(r31)
/* 8004F828 0004B488  FC 00 00 1E */	fctiwz f0, f0
/* 8004F82C 0004B48C  D8 01 00 30 */	stfd f0, 0x30(r1)
/* 8004F830 0004B490  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004F834 0004B494  98 01 00 17 */	stb r0, 0x17(r1)
/* 8004F838 0004B498  48 00 06 BD */	bl func_8004FEF4
/* 8004F83C 0004B49C  38 00 00 02 */	li r0, 2
/* 8004F840 0004B4A0  7F E4 FB 78 */	mr r4, r31
/* 8004F844 0004B4A4  38 A0 00 00 */	li r5, 0
/* 8004F848 0004B4A8  7C 09 03 A6 */	mtctr r0
lbl_8004F84C:
/* 8004F84C 0004B4AC  80 64 00 2C */	lwz r3, 0x2c(r4)
/* 8004F850 0004B4B0  2C 03 00 00 */	cmpwi r3, 0
/* 8004F854 0004B4B4  41 82 00 18 */	beq lbl_8004F86C
/* 8004F858 0004B4B8  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004F85C 0004B4BC  2C 03 00 00 */	cmpwi r3, 0
/* 8004F860 0004B4C0  41 82 00 0C */	beq lbl_8004F86C
/* 8004F864 0004B4C4  80 1F 00 00 */	lwz r0, 0(r31)
/* 8004F868 0004B4C8  90 03 00 40 */	stw r0, 0x40(r3)
lbl_8004F86C:
/* 8004F86C 0004B4CC  80 64 00 30 */	lwz r3, 0x30(r4)
/* 8004F870 0004B4D0  2C 03 00 00 */	cmpwi r3, 0
/* 8004F874 0004B4D4  41 82 00 18 */	beq lbl_8004F88C
/* 8004F878 0004B4D8  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004F87C 0004B4DC  2C 03 00 00 */	cmpwi r3, 0
/* 8004F880 0004B4E0  41 82 00 0C */	beq lbl_8004F88C
/* 8004F884 0004B4E4  80 1F 00 00 */	lwz r0, 0(r31)
/* 8004F888 0004B4E8  90 03 00 40 */	stw r0, 0x40(r3)
lbl_8004F88C:
/* 8004F88C 0004B4EC  80 64 00 34 */	lwz r3, 0x34(r4)
/* 8004F890 0004B4F0  2C 03 00 00 */	cmpwi r3, 0
/* 8004F894 0004B4F4  41 82 00 18 */	beq lbl_8004F8AC
/* 8004F898 0004B4F8  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004F89C 0004B4FC  2C 03 00 00 */	cmpwi r3, 0
/* 8004F8A0 0004B500  41 82 00 0C */	beq lbl_8004F8AC
/* 8004F8A4 0004B504  80 1F 00 00 */	lwz r0, 0(r31)
/* 8004F8A8 0004B508  90 03 00 40 */	stw r0, 0x40(r3)
lbl_8004F8AC:
/* 8004F8AC 0004B50C  80 64 00 38 */	lwz r3, 0x38(r4)
/* 8004F8B0 0004B510  2C 03 00 00 */	cmpwi r3, 0
/* 8004F8B4 0004B514  41 82 00 18 */	beq lbl_8004F8CC
/* 8004F8B8 0004B518  80 63 0C 04 */	lwz r3, 0xc04(r3)
/* 8004F8BC 0004B51C  2C 03 00 00 */	cmpwi r3, 0
/* 8004F8C0 0004B520  41 82 00 0C */	beq lbl_8004F8CC
/* 8004F8C4 0004B524  80 1F 00 00 */	lwz r0, 0(r31)
/* 8004F8C8 0004B528  90 03 00 40 */	stw r0, 0x40(r3)
lbl_8004F8CC:
/* 8004F8CC 0004B52C  38 84 00 10 */	addi r4, r4, 0x10
/* 8004F8D0 0004B530  38 A5 00 03 */	addi r5, r5, 3
/* 8004F8D4 0004B534  42 00 FF 78 */	bdnz lbl_8004F84C
/* 8004F8D8 0004B538  80 7F 00 00 */	lwz r3, 0(r31)
/* 8004F8DC 0004B53C  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 8004F8E0 0004B540  60 00 00 02 */	ori r0, r0, 2
/* 8004F8E4 0004B544  B0 03 00 10 */	sth r0, 0x10(r3)
lbl_8004F8E8:
/* 8004F8E8 0004B548  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004F8EC 0004B54C  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8004F8F0 0004B550  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 8004F8F4 0004B554  7C 08 03 A6 */	mtlr r0
/* 8004F8F8 0004B558  38 21 00 40 */	addi r1, r1, 0x40
/* 8004F8FC 0004B55C  4E 80 00 20 */	blr
lbl_8004F900:
/* 8004F900 0004B560  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8004F904 0004B564  7C 08 02 A6 */	mflr r0
/* 8004F908 0004B568  90 01 00 54 */	stw r0, 0x54(r1)
/* 8004F90C 0004B56C  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 8004F910 0004B570  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 8004F914 0004B574  FF E0 08 90 */	fmr f31, f1
/* 8004F918 0004B578  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8004F91C 0004B57C  3B E3 00 4C */	addi r31, r3, 0x4c
/* 8004F920 0004B580  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8004F924 0004B584  3B C0 00 00 */	li r30, 0
/* 8004F928 0004B588  93 A1 00 34 */	stw r29, 0x34(r1)
/* 8004F92C 0004B58C  7C 7D 1B 78 */	mr r29, r3
lbl_8004F930:
/* 8004F930 0004B590  81 9F 00 20 */	lwz r12, 0x20(r31)
/* 8004F934 0004B594  FC 20 F8 90 */	fmr f1, f31
/* 8004F938 0004B598  7F E3 FB 78 */	mr r3, r31
/* 8004F93C 0004B59C  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004F940 0004B5A0  7D 89 03 A6 */	mtctr r12
/* 8004F944 0004B5A4  4E 80 04 21 */	bctrl
/* 8004F948 0004B5A8  2C 03 00 00 */	cmpwi r3, 0
/* 8004F94C 0004B5AC  41 82 00 3C */	beq lbl_8004F988
/* 8004F950 0004B5B0  80 7D 00 00 */	lwz r3, 0(r29)
/* 8004F954 0004B5B4  2C 03 00 00 */	cmpwi r3, 0
/* 8004F958 0004B5B8  41 82 00 30 */	beq lbl_8004F988
/* 8004F95C 0004B5BC  C0 1D 00 14 */	lfs f0, 0x14(r29)
/* 8004F960 0004B5C0  38 80 00 01 */	li r4, 1
/* 8004F964 0004B5C4  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 8004F968 0004B5C8  C0 1D 00 18 */	lfs f0, 0x18(r29)
/* 8004F96C 0004B5CC  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 8004F970 0004B5D0  C0 1D 00 1C */	lfs f0, 0x1c(r29)
/* 8004F974 0004B5D4  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8004F978 0004B5D8  48 1A 2D 41 */	bl func_801F26B8
/* 8004F97C 0004B5DC  80 7D 00 00 */	lwz r3, 0(r29)
/* 8004F980 0004B5E0  38 9D 00 20 */	addi r4, r29, 0x20
/* 8004F984 0004B5E4  48 19 6B 59 */	bl func_801E64DC
lbl_8004F988:
/* 8004F988 0004B5E8  3B DE 00 01 */	addi r30, r30, 1
/* 8004F98C 0004B5EC  3B FF 00 24 */	addi r31, r31, 0x24
/* 8004F990 0004B5F0  2C 1E 00 06 */	cmpwi r30, 6
/* 8004F994 0004B5F4  41 80 FF 9C */	blt lbl_8004F930
/* 8004F998 0004B5F8  81 9D 01 5C */	lwz r12, 0x15c(r29)
/* 8004F99C 0004B5FC  FC 20 F8 90 */	fmr f1, f31
/* 8004F9A0 0004B600  38 7D 01 24 */	addi r3, r29, 0x124
/* 8004F9A4 0004B604  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004F9A8 0004B608  7D 89 03 A6 */	mtctr r12
/* 8004F9AC 0004B60C  4E 80 04 21 */	bctrl
/* 8004F9B0 0004B610  2C 03 00 00 */	cmpwi r3, 0
/* 8004F9B4 0004B614  41 82 00 60 */	beq lbl_8004FA14
/* 8004F9B8 0004B618  C0 1D 00 04 */	lfs f0, 4(r29)
/* 8004F9BC 0004B61C  C0 5D 00 08 */	lfs f2, 8(r29)
/* 8004F9C0 0004B620  FC 60 00 1E */	fctiwz f3, f0
/* 8004F9C4 0004B624  C0 3D 00 0C */	lfs f1, 0xc(r29)
/* 8004F9C8 0004B628  C0 1D 00 10 */	lfs f0, 0x10(r29)
/* 8004F9CC 0004B62C  FC 40 10 1E */	fctiwz f2, f2
/* 8004F9D0 0004B630  FC 20 08 1E */	fctiwz f1, f1
/* 8004F9D4 0004B634  80 DD 00 00 */	lwz r6, 0(r29)
/* 8004F9D8 0004B638  FC 00 00 1E */	fctiwz f0, f0
/* 8004F9DC 0004B63C  D8 61 00 08 */	stfd f3, 8(r1)
/* 8004F9E0 0004B640  2C 06 00 00 */	cmpwi r6, 0
/* 8004F9E4 0004B644  D8 41 00 10 */	stfd f2, 0x10(r1)
/* 8004F9E8 0004B648  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8004F9EC 0004B64C  D8 21 00 18 */	stfd f1, 0x18(r1)
/* 8004F9F0 0004B650  80 61 00 14 */	lwz r3, 0x14(r1)
/* 8004F9F4 0004B654  D8 01 00 20 */	stfd f0, 0x20(r1)
/* 8004F9F8 0004B658  80 81 00 1C */	lwz r4, 0x1c(r1)
/* 8004F9FC 0004B65C  80 A1 00 24 */	lwz r5, 0x24(r1)
/* 8004FA00 0004B660  41 82 00 14 */	beq lbl_8004FA14
/* 8004FA04 0004B664  98 06 01 10 */	stb r0, 0x110(r6)
/* 8004FA08 0004B668  98 66 01 11 */	stb r3, 0x111(r6)
/* 8004FA0C 0004B66C  98 86 01 12 */	stb r4, 0x112(r6)
/* 8004FA10 0004B670  98 A6 01 13 */	stb r5, 0x113(r6)
lbl_8004FA14:
/* 8004FA14 0004B674  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 8004FA18 0004B678  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8004FA1C 0004B67C  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 8004FA20 0004B680  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8004FA24 0004B684  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 8004FA28 0004B688  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 8004FA2C 0004B68C  7C 08 03 A6 */	mtlr r0
/* 8004FA30 0004B690  38 21 00 50 */	addi r1, r1, 0x50
/* 8004FA34 0004B694  4E 80 00 20 */	blr

.global func_8004FA38
func_8004FA38:
/* 8004FA38 0004B698  2C 04 00 00 */	cmpwi r4, 0
/* 8004FA3C 0004B69C  98 83 01 70 */	stb r4, 0x170(r3)
/* 8004FA40 0004B6A0  41 82 00 20 */	beq lbl_8004FA60
/* 8004FA44 0004B6A4  80 83 00 00 */	lwz r4, 0(r3)
/* 8004FA48 0004B6A8  2C 04 00 00 */	cmpwi r4, 0
/* 8004FA4C 0004B6AC  41 82 00 14 */	beq lbl_8004FA60
/* 8004FA50 0004B6B0  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8004FA54 0004B6B4  60 00 00 01 */	ori r0, r0, 1
/* 8004FA58 0004B6B8  90 04 01 04 */	stw r0, 0x104(r4)
/* 8004FA5C 0004B6BC  4E 80 00 20 */	blr
lbl_8004FA60:
/* 8004FA60 0004B6C0  80 63 00 00 */	lwz r3, 0(r3)
/* 8004FA64 0004B6C4  2C 03 00 00 */	cmpwi r3, 0
/* 8004FA68 0004B6C8  4D 82 00 20 */	beqlr
/* 8004FA6C 0004B6CC  80 03 01 04 */	lwz r0, 0x104(r3)
/* 8004FA70 0004B6D0  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 8004FA74 0004B6D4  90 03 01 04 */	stw r0, 0x104(r3)
/* 8004FA78 0004B6D8  4E 80 00 20 */	blr

.global func_8004FA7C
func_8004FA7C:
/* 8004FA7C 0004B6DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004FA80 0004B6E0  7C 08 02 A6 */	mflr r0
/* 8004FA84 0004B6E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004FA88 0004B6E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004FA8C 0004B6EC  7C 9F 23 78 */	mr r31, r4
/* 8004FA90 0004B6F0  93 C1 00 08 */	stw r30, 8(r1)
/* 8004FA94 0004B6F4  7C 7E 1B 78 */	mr r30, r3
/* 8004FA98 0004B6F8  48 00 06 2D */	bl func_800500C4
/* 8004FA9C 0004B6FC  2C 03 FF FF */	cmpwi r3, -1
/* 8004FAA0 0004B700  41 81 00 58 */	bgt lbl_8004FAF8
/* 8004FAA4 0004B704  2C 1F 00 00 */	cmpwi r31, 0
/* 8004FAA8 0004B708  41 82 00 18 */	beq lbl_8004FAC0
/* 8004FAAC 0004B70C  80 7F 0C 04 */	lwz r3, 0xc04(r31)
/* 8004FAB0 0004B710  2C 03 00 00 */	cmpwi r3, 0
/* 8004FAB4 0004B714  41 82 00 0C */	beq lbl_8004FAC0
/* 8004FAB8 0004B718  80 1E 00 00 */	lwz r0, 0(r30)
/* 8004FABC 0004B71C  90 03 00 40 */	stw r0, 0x40(r3)
lbl_8004FAC0:
/* 8004FAC0 0004B720  38 00 00 08 */	li r0, 8
/* 8004FAC4 0004B724  7F C3 F3 78 */	mr r3, r30
/* 8004FAC8 0004B728  38 80 00 00 */	li r4, 0
/* 8004FACC 0004B72C  7C 09 03 A6 */	mtctr r0
lbl_8004FAD0:
/* 8004FAD0 0004B730  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 8004FAD4 0004B734  2C 00 00 00 */	cmpwi r0, 0
/* 8004FAD8 0004B738  40 82 00 14 */	bne lbl_8004FAEC
/* 8004FADC 0004B73C  54 80 10 3A */	slwi r0, r4, 2
/* 8004FAE0 0004B740  7C 7E 02 14 */	add r3, r30, r0
/* 8004FAE4 0004B744  93 E3 00 2C */	stw r31, 0x2c(r3)
/* 8004FAE8 0004B748  48 00 00 10 */	b lbl_8004FAF8
lbl_8004FAEC:
/* 8004FAEC 0004B74C  38 63 00 04 */	addi r3, r3, 4
/* 8004FAF0 0004B750  38 84 00 01 */	addi r4, r4, 1
/* 8004FAF4 0004B754  42 00 FF DC */	bdnz lbl_8004FAD0
lbl_8004FAF8:
/* 8004FAF8 0004B758  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004FAFC 0004B75C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004FB00 0004B760  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004FB04 0004B764  7C 08 03 A6 */	mtlr r0
/* 8004FB08 0004B768  38 21 00 10 */	addi r1, r1, 0x10
/* 8004FB0C 0004B76C  4E 80 00 20 */	blr

.global func_8004FB10
func_8004FB10:
/* 8004FB10 0004B770  38 00 00 02 */	li r0, 2
/* 8004FB14 0004B774  38 C0 00 00 */	li r6, 0
/* 8004FB18 0004B778  38 80 00 00 */	li r4, 0
/* 8004FB1C 0004B77C  7C 09 03 A6 */	mtctr r0
lbl_8004FB20:
/* 8004FB20 0004B780  80 A3 00 2C */	lwz r5, 0x2c(r3)
/* 8004FB24 0004B784  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB28 0004B788  41 82 00 18 */	beq lbl_8004FB40
/* 8004FB2C 0004B78C  80 A5 0C 04 */	lwz r5, 0xc04(r5)
/* 8004FB30 0004B790  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB34 0004B794  41 82 00 08 */	beq lbl_8004FB3C
/* 8004FB38 0004B798  90 85 00 40 */	stw r4, 0x40(r5)
lbl_8004FB3C:
/* 8004FB3C 0004B79C  90 83 00 2C */	stw r4, 0x2c(r3)
lbl_8004FB40:
/* 8004FB40 0004B7A0  80 A3 00 30 */	lwz r5, 0x30(r3)
/* 8004FB44 0004B7A4  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB48 0004B7A8  41 82 00 18 */	beq lbl_8004FB60
/* 8004FB4C 0004B7AC  80 A5 0C 04 */	lwz r5, 0xc04(r5)
/* 8004FB50 0004B7B0  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB54 0004B7B4  41 82 00 08 */	beq lbl_8004FB5C
/* 8004FB58 0004B7B8  90 85 00 40 */	stw r4, 0x40(r5)
lbl_8004FB5C:
/* 8004FB5C 0004B7BC  90 83 00 30 */	stw r4, 0x30(r3)
lbl_8004FB60:
/* 8004FB60 0004B7C0  80 A3 00 34 */	lwz r5, 0x34(r3)
/* 8004FB64 0004B7C4  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB68 0004B7C8  41 82 00 18 */	beq lbl_8004FB80
/* 8004FB6C 0004B7CC  80 A5 0C 04 */	lwz r5, 0xc04(r5)
/* 8004FB70 0004B7D0  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB74 0004B7D4  41 82 00 08 */	beq lbl_8004FB7C
/* 8004FB78 0004B7D8  90 85 00 40 */	stw r4, 0x40(r5)
lbl_8004FB7C:
/* 8004FB7C 0004B7DC  90 83 00 34 */	stw r4, 0x34(r3)
lbl_8004FB80:
/* 8004FB80 0004B7E0  80 A3 00 38 */	lwz r5, 0x38(r3)
/* 8004FB84 0004B7E4  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB88 0004B7E8  41 82 00 18 */	beq lbl_8004FBA0
/* 8004FB8C 0004B7EC  80 A5 0C 04 */	lwz r5, 0xc04(r5)
/* 8004FB90 0004B7F0  2C 05 00 00 */	cmpwi r5, 0
/* 8004FB94 0004B7F4  41 82 00 08 */	beq lbl_8004FB9C
/* 8004FB98 0004B7F8  90 85 00 40 */	stw r4, 0x40(r5)
lbl_8004FB9C:
/* 8004FB9C 0004B7FC  90 83 00 38 */	stw r4, 0x38(r3)
lbl_8004FBA0:
/* 8004FBA0 0004B800  38 63 00 10 */	addi r3, r3, 0x10
/* 8004FBA4 0004B804  38 C6 00 03 */	addi r6, r6, 3
/* 8004FBA8 0004B808  42 00 FF 78 */	bdnz lbl_8004FB20
/* 8004FBAC 0004B80C  4E 80 00 20 */	blr

.global func_8004FBB0
func_8004FBB0:
/* 8004FBB0 0004B810  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004FBB4 0004B814  7C 08 02 A6 */	mflr r0
/* 8004FBB8 0004B818  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004FBBC 0004B81C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004FBC0 0004B820  7C 7F 1B 78 */	mr r31, r3
/* 8004FBC4 0004B824  48 00 05 01 */	bl func_800500C4
/* 8004FBC8 0004B828  2C 03 00 00 */	cmpwi r3, 0
/* 8004FBCC 0004B82C  41 80 00 34 */	blt lbl_8004FC00
/* 8004FBD0 0004B830  54 60 10 3A */	slwi r0, r3, 2
/* 8004FBD4 0004B834  7C 7F 02 14 */	add r3, r31, r0
/* 8004FBD8 0004B838  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 8004FBDC 0004B83C  2C 04 00 00 */	cmpwi r4, 0
/* 8004FBE0 0004B840  41 82 00 08 */	beq lbl_8004FBE8
/* 8004FBE4 0004B844  80 84 0C 04 */	lwz r4, 0xc04(r4)
lbl_8004FBE8:
/* 8004FBE8 0004B848  2C 04 00 00 */	cmpwi r4, 0
/* 8004FBEC 0004B84C  41 82 00 0C */	beq lbl_8004FBF8
/* 8004FBF0 0004B850  38 00 00 00 */	li r0, 0
/* 8004FBF4 0004B854  90 04 00 40 */	stw r0, 0x40(r4)
lbl_8004FBF8:
/* 8004FBF8 0004B858  38 00 00 00 */	li r0, 0
/* 8004FBFC 0004B85C  90 03 00 2C */	stw r0, 0x2c(r3)
lbl_8004FC00:
/* 8004FC00 0004B860  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004FC04 0004B864  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004FC08 0004B868  7C 08 03 A6 */	mtlr r0
/* 8004FC0C 0004B86C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004FC10 0004B870  4E 80 00 20 */	blr

.global func_8004FC14
func_8004FC14:
/* 8004FC14 0004B874  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004FC18 0004B878  7C 08 02 A6 */	mflr r0
/* 8004FC1C 0004B87C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004FC20 0004B880  54 A0 00 01 */	rlwinm. r0, r5, 0, 0, 0
/* 8004FC24 0004B884  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004FC28 0004B888  7C BF 2B 78 */	mr r31, r5
/* 8004FC2C 0004B88C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004FC30 0004B890  7C 9E 23 78 */	mr r30, r4
/* 8004FC34 0004B894  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004FC38 0004B898  7C 7D 1B 78 */	mr r29, r3
/* 8004FC3C 0004B89C  40 82 00 4C */	bne lbl_8004FC88
/* 8004FC40 0004B8A0  54 A0 07 39 */	rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 8004FC44 0004B8A4  41 82 00 2C */	beq lbl_8004FC70
/* 8004FC48 0004B8A8  54 A0 07 FF */	clrlwi. r0, r5, 0x1f
/* 8004FC4C 0004B8AC  54 BF 07 76 */	rlwinm r31, r5, 0, 0x1d, 0x1b
/* 8004FC50 0004B8B0  41 82 00 08 */	beq lbl_8004FC58
/* 8004FC54 0004B8B4  63 FF 00 40 */	ori r31, r31, 0x40
lbl_8004FC58:
/* 8004FC58 0004B8B8  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8004FC5C 0004B8BC  41 82 00 08 */	beq lbl_8004FC64
/* 8004FC60 0004B8C0  63 FF 00 80 */	ori r31, r31, 0x80
lbl_8004FC64:
/* 8004FC64 0004B8C4  57 E0 07 7B */	rlwinm. r0, r31, 0, 0x1d, 0x1d
/* 8004FC68 0004B8C8  41 82 00 08 */	beq lbl_8004FC70
/* 8004FC6C 0004B8CC  63 FF 01 00 */	ori r31, r31, 0x100
lbl_8004FC70:
/* 8004FC70 0004B8D0  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 8004FC74 0004B8D4  40 82 00 08 */	bne lbl_8004FC7C
/* 8004FC78 0004B8D8  63 FF 00 09 */	ori r31, r31, 9
lbl_8004FC7C:
/* 8004FC7C 0004B8DC  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8004FC80 0004B8E0  40 82 00 08 */	bne lbl_8004FC88
/* 8004FC84 0004B8E4  63 FF 00 12 */	ori r31, r31, 0x12
lbl_8004FC88:
/* 8004FC88 0004B8E8  2C 04 00 00 */	cmpwi r4, 0
/* 8004FC8C 0004B8EC  41 82 00 38 */	beq lbl_8004FCC4
/* 8004FC90 0004B8F0  80 83 00 00 */	lwz r4, 0(r3)
/* 8004FC94 0004B8F4  2C 04 00 00 */	cmpwi r4, 0
/* 8004FC98 0004B8F8  41 82 00 2C */	beq lbl_8004FCC4
/* 8004FC9C 0004B8FC  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 8004FCA0 0004B900  2C 03 00 00 */	cmpwi r3, 0
/* 8004FCA4 0004B904  41 82 00 08 */	beq lbl_8004FCAC
/* 8004FCA8 0004B908  48 1A 25 81 */	bl func_801F2228
lbl_8004FCAC:
/* 8004FCAC 0004B90C  80 BD 00 00 */	lwz r5, 0(r29)
/* 8004FCB0 0004B910  7F C3 F3 78 */	mr r3, r30
/* 8004FCB4 0004B914  57 E4 06 3E */	clrlwi r4, r31, 0x18
/* 8004FCB8 0004B918  38 C0 00 00 */	li r6, 0
/* 8004FCBC 0004B91C  38 E0 00 03 */	li r7, 3
/* 8004FCC0 0004B920  48 1A 24 CD */	bl func_801F218C
lbl_8004FCC4:
/* 8004FCC4 0004B924  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004FCC8 0004B928  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004FCCC 0004B92C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004FCD0 0004B930  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004FCD4 0004B934  7C 08 03 A6 */	mtlr r0
/* 8004FCD8 0004B938  38 21 00 20 */	addi r1, r1, 0x20
/* 8004FCDC 0004B93C  4E 80 00 20 */	blr

.global func_8004FCE0
func_8004FCE0:
/* 8004FCE0 0004B940  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004FCE4 0004B944  7C 08 02 A6 */	mflr r0
/* 8004FCE8 0004B948  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004FCEC 0004B94C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004FCF0 0004B950  7C 9F 23 78 */	mr r31, r4
/* 8004FCF4 0004B954  93 C1 00 08 */	stw r30, 8(r1)
/* 8004FCF8 0004B958  7C 7E 1B 78 */	mr r30, r3
/* 8004FCFC 0004B95C  80 A3 00 00 */	lwz r5, 0(r3)
/* 8004FD00 0004B960  2C 05 00 00 */	cmpwi r5, 0
/* 8004FD04 0004B964  41 82 00 28 */	beq lbl_8004FD2C
/* 8004FD08 0004B968  C0 04 00 00 */	lfs f0, 0(r4)
/* 8004FD0C 0004B96C  7C A3 2B 78 */	mr r3, r5
/* 8004FD10 0004B970  D0 05 00 20 */	stfs f0, 0x20(r5)
/* 8004FD14 0004B974  C0 04 00 04 */	lfs f0, 4(r4)
/* 8004FD18 0004B978  D0 05 00 24 */	stfs f0, 0x24(r5)
/* 8004FD1C 0004B97C  C0 04 00 08 */	lfs f0, 8(r4)
/* 8004FD20 0004B980  38 80 00 01 */	li r4, 1
/* 8004FD24 0004B984  D0 05 00 28 */	stfs f0, 0x28(r5)
/* 8004FD28 0004B988  48 1A 29 91 */	bl func_801F26B8
lbl_8004FD2C:
/* 8004FD2C 0004B98C  C0 1F 00 00 */	lfs f0, 0(r31)
/* 8004FD30 0004B990  D0 1E 00 14 */	stfs f0, 0x14(r30)
/* 8004FD34 0004B994  C0 1F 00 04 */	lfs f0, 4(r31)
/* 8004FD38 0004B998  D0 1E 00 18 */	stfs f0, 0x18(r30)
/* 8004FD3C 0004B99C  C0 1F 00 08 */	lfs f0, 8(r31)
/* 8004FD40 0004B9A0  D0 1E 00 1C */	stfs f0, 0x1c(r30)
/* 8004FD44 0004B9A4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004FD48 0004B9A8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004FD4C 0004B9AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004FD50 0004B9B0  7C 08 03 A6 */	mtlr r0
/* 8004FD54 0004B9B4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004FD58 0004B9B8  4E 80 00 20 */	blr

.global func_8004FD5C
func_8004FD5C:
/* 8004FD5C 0004B9BC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004FD60 0004B9C0  7C 08 02 A6 */	mflr r0
/* 8004FD64 0004B9C4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004FD68 0004B9C8  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8004FD6C 0004B9CC  FF E0 08 90 */	fmr f31, f1
/* 8004FD70 0004B9D0  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8004FD74 0004B9D4  7C BF 2B 78 */	mr r31, r5
/* 8004FD78 0004B9D8  7F E7 FB 78 */	mr r7, r31
/* 8004FD7C 0004B9DC  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8004FD80 0004B9E0  7C 9E 23 78 */	mr r30, r4
/* 8004FD84 0004B9E4  38 83 00 14 */	addi r4, r3, 0x14
/* 8004FD88 0004B9E8  93 A1 00 0C */	stw r29, 0xc(r1)
/* 8004FD8C 0004B9EC  7C 7D 1B 78 */	mr r29, r3
/* 8004FD90 0004B9F0  7F C5 F3 78 */	mr r5, r30
/* 8004FD94 0004B9F4  7C 86 23 78 */	mr r6, r4
/* 8004FD98 0004B9F8  38 63 00 4C */	addi r3, r3, 0x4c
/* 8004FD9C 0004B9FC  48 00 05 A1 */	bl func_8005033C
/* 8004FDA0 0004BA00  FC 20 F8 90 */	fmr f1, f31
/* 8004FDA4 0004BA04  38 9D 00 18 */	addi r4, r29, 0x18
/* 8004FDA8 0004BA08  7C 86 23 78 */	mr r6, r4
/* 8004FDAC 0004BA0C  7F E7 FB 78 */	mr r7, r31
/* 8004FDB0 0004BA10  38 7D 00 70 */	addi r3, r29, 0x70
/* 8004FDB4 0004BA14  38 BE 00 04 */	addi r5, r30, 4
/* 8004FDB8 0004BA18  48 00 05 85 */	bl func_8005033C
/* 8004FDBC 0004BA1C  FC 20 F8 90 */	fmr f1, f31
/* 8004FDC0 0004BA20  38 9D 00 1C */	addi r4, r29, 0x1c
/* 8004FDC4 0004BA24  7C 86 23 78 */	mr r6, r4
/* 8004FDC8 0004BA28  7F E7 FB 78 */	mr r7, r31
/* 8004FDCC 0004BA2C  38 7D 00 94 */	addi r3, r29, 0x94
/* 8004FDD0 0004BA30  38 BE 00 08 */	addi r5, r30, 8
/* 8004FDD4 0004BA34  48 00 05 69 */	bl func_8005033C
/* 8004FDD8 0004BA38  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004FDDC 0004BA3C  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004FDE0 0004BA40  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004FDE4 0004BA44  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8004FDE8 0004BA48  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 8004FDEC 0004BA4C  7C 08 03 A6 */	mtlr r0
/* 8004FDF0 0004BA50  38 21 00 20 */	addi r1, r1, 0x20
/* 8004FDF4 0004BA54  4E 80 00 20 */	blr

.global func_8004FDF8
func_8004FDF8:
/* 8004FDF8 0004BA58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004FDFC 0004BA5C  7C 08 02 A6 */	mflr r0
/* 8004FE00 0004BA60  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004FE04 0004BA64  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004FE08 0004BA68  7C 9F 23 78 */	mr r31, r4
/* 8004FE0C 0004BA6C  93 C1 00 08 */	stw r30, 8(r1)
/* 8004FE10 0004BA70  7C 7E 1B 78 */	mr r30, r3
/* 8004FE14 0004BA74  80 03 00 00 */	lwz r0, 0(r3)
/* 8004FE18 0004BA78  2C 00 00 00 */	cmpwi r0, 0
/* 8004FE1C 0004BA7C  41 82 00 0C */	beq lbl_8004FE28
/* 8004FE20 0004BA80  7C 03 03 78 */	mr r3, r0
/* 8004FE24 0004BA84  48 19 66 B9 */	bl func_801E64DC
lbl_8004FE28:
/* 8004FE28 0004BA88  C0 1F 00 00 */	lfs f0, 0(r31)
/* 8004FE2C 0004BA8C  D0 1E 00 20 */	stfs f0, 0x20(r30)
/* 8004FE30 0004BA90  C0 1F 00 04 */	lfs f0, 4(r31)
/* 8004FE34 0004BA94  D0 1E 00 24 */	stfs f0, 0x24(r30)
/* 8004FE38 0004BA98  C0 1F 00 08 */	lfs f0, 8(r31)
/* 8004FE3C 0004BA9C  D0 1E 00 28 */	stfs f0, 0x28(r30)
/* 8004FE40 0004BAA0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004FE44 0004BAA4  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004FE48 0004BAA8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004FE4C 0004BAAC  7C 08 03 A6 */	mtlr r0
/* 8004FE50 0004BAB0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004FE54 0004BAB4  4E 80 00 20 */	blr

.global func_8004FE58
func_8004FE58:
/* 8004FE58 0004BAB8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004FE5C 0004BABC  7C 08 02 A6 */	mflr r0
/* 8004FE60 0004BAC0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004FE64 0004BAC4  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8004FE68 0004BAC8  FF E0 08 90 */	fmr f31, f1
/* 8004FE6C 0004BACC  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8004FE70 0004BAD0  7C BF 2B 78 */	mr r31, r5
/* 8004FE74 0004BAD4  7F E7 FB 78 */	mr r7, r31
/* 8004FE78 0004BAD8  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8004FE7C 0004BADC  7C 9E 23 78 */	mr r30, r4
/* 8004FE80 0004BAE0  38 83 00 20 */	addi r4, r3, 0x20
/* 8004FE84 0004BAE4  93 A1 00 0C */	stw r29, 0xc(r1)
/* 8004FE88 0004BAE8  7C 7D 1B 78 */	mr r29, r3
/* 8004FE8C 0004BAEC  7F C5 F3 78 */	mr r5, r30
/* 8004FE90 0004BAF0  7C 86 23 78 */	mr r6, r4
/* 8004FE94 0004BAF4  38 63 00 B8 */	addi r3, r3, 0xb8
/* 8004FE98 0004BAF8  48 00 04 A5 */	bl func_8005033C
/* 8004FE9C 0004BAFC  FC 20 F8 90 */	fmr f1, f31
/* 8004FEA0 0004BB00  38 9D 00 24 */	addi r4, r29, 0x24
/* 8004FEA4 0004BB04  7C 86 23 78 */	mr r6, r4
/* 8004FEA8 0004BB08  7F E7 FB 78 */	mr r7, r31
/* 8004FEAC 0004BB0C  38 7D 00 DC */	addi r3, r29, 0xdc
/* 8004FEB0 0004BB10  38 BE 00 04 */	addi r5, r30, 4
/* 8004FEB4 0004BB14  48 00 04 89 */	bl func_8005033C
/* 8004FEB8 0004BB18  FC 20 F8 90 */	fmr f1, f31
/* 8004FEBC 0004BB1C  38 9D 00 28 */	addi r4, r29, 0x28
/* 8004FEC0 0004BB20  7C 86 23 78 */	mr r6, r4
/* 8004FEC4 0004BB24  7F E7 FB 78 */	mr r7, r31
/* 8004FEC8 0004BB28  38 7D 01 00 */	addi r3, r29, 0x100
/* 8004FECC 0004BB2C  38 BE 00 08 */	addi r5, r30, 8
/* 8004FED0 0004BB30  48 00 04 6D */	bl func_8005033C
/* 8004FED4 0004BB34  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004FED8 0004BB38  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004FEDC 0004BB3C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004FEE0 0004BB40  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8004FEE4 0004BB44  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 8004FEE8 0004BB48  7C 08 03 A6 */	mtlr r0
/* 8004FEEC 0004BB4C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004FEF0 0004BB50  4E 80 00 20 */	blr

.global func_8004FEF4
func_8004FEF4:
/* 8004FEF4 0004BB54  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004FEF8 0004BB58  3C 00 43 30 */	lis r0, 0x4330
/* 8004FEFC 0004BB5C  80 A3 00 00 */	lwz r5, 0(r3)
/* 8004FF00 0004BB60  90 01 00 08 */	stw r0, 8(r1)
/* 8004FF04 0004BB64  2C 05 00 00 */	cmpwi r5, 0
/* 8004FF08 0004BB68  90 01 00 10 */	stw r0, 0x10(r1)
/* 8004FF0C 0004BB6C  41 82 00 24 */	beq lbl_8004FF30
/* 8004FF10 0004BB70  88 04 00 00 */	lbz r0, 0(r4)
/* 8004FF14 0004BB74  98 05 01 10 */	stb r0, 0x110(r5)
/* 8004FF18 0004BB78  88 04 00 01 */	lbz r0, 1(r4)
/* 8004FF1C 0004BB7C  98 05 01 11 */	stb r0, 0x111(r5)
/* 8004FF20 0004BB80  88 04 00 02 */	lbz r0, 2(r4)
/* 8004FF24 0004BB84  98 05 01 12 */	stb r0, 0x112(r5)
/* 8004FF28 0004BB88  88 04 00 03 */	lbz r0, 3(r4)
/* 8004FF2C 0004BB8C  98 05 01 13 */	stb r0, 0x113(r5)
lbl_8004FF30:
/* 8004FF30 0004BB90  88 04 00 00 */	lbz r0, 0(r4)
/* 8004FF34 0004BB94  C8 22 84 78 */	lfd f1, lbl_80640A78-_SDA2_BASE_(r2)
/* 8004FF38 0004BB98  90 01 00 0C */	stw r0, 0xc(r1)
/* 8004FF3C 0004BB9C  C8 01 00 08 */	lfd f0, 8(r1)
/* 8004FF40 0004BBA0  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004FF44 0004BBA4  D0 03 00 04 */	stfs f0, 4(r3)
/* 8004FF48 0004BBA8  88 04 00 01 */	lbz r0, 1(r4)
/* 8004FF4C 0004BBAC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004FF50 0004BBB0  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8004FF54 0004BBB4  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004FF58 0004BBB8  D0 03 00 08 */	stfs f0, 8(r3)
/* 8004FF5C 0004BBBC  88 04 00 02 */	lbz r0, 2(r4)
/* 8004FF60 0004BBC0  90 01 00 0C */	stw r0, 0xc(r1)
/* 8004FF64 0004BBC4  C8 01 00 08 */	lfd f0, 8(r1)
/* 8004FF68 0004BBC8  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004FF6C 0004BBCC  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 8004FF70 0004BBD0  88 04 00 03 */	lbz r0, 3(r4)
/* 8004FF74 0004BBD4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004FF78 0004BBD8  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 8004FF7C 0004BBDC  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004FF80 0004BBE0  D0 03 00 10 */	stfs f0, 0x10(r3)
/* 8004FF84 0004BBE4  38 21 00 20 */	addi r1, r1, 0x20
/* 8004FF88 0004BBE8  4E 80 00 20 */	blr

.global func_8004FF8C
func_8004FF8C:
/* 8004FF8C 0004BBEC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004FF90 0004BBF0  7C 08 02 A6 */	mflr r0
/* 8004FF94 0004BBF4  3C C0 43 30 */	lis r6, 0x4330
/* 8004FF98 0004BBF8  7C A7 2B 78 */	mr r7, r5
/* 8004FF9C 0004BBFC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004FFA0 0004BC00  38 A1 00 08 */	addi r5, r1, 8
/* 8004FFA4 0004BC04  C8 42 84 78 */	lfd f2, lbl_80640A78-_SDA2_BASE_(r2)
/* 8004FFA8 0004BC08  88 04 00 00 */	lbz r0, 0(r4)
/* 8004FFAC 0004BC0C  90 C1 00 18 */	stw r6, 0x18(r1)
/* 8004FFB0 0004BC10  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8004FFB4 0004BC14  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8004FFB8 0004BC18  90 C1 00 20 */	stw r6, 0x20(r1)
/* 8004FFBC 0004BC1C  EC 00 10 28 */	fsubs f0, f0, f2
/* 8004FFC0 0004BC20  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004FFC4 0004BC24  88 04 00 01 */	lbz r0, 1(r4)
/* 8004FFC8 0004BC28  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004FFCC 0004BC2C  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 8004FFD0 0004BC30  EC 00 10 28 */	fsubs f0, f0, f2
/* 8004FFD4 0004BC34  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004FFD8 0004BC38  88 04 00 02 */	lbz r0, 2(r4)
/* 8004FFDC 0004BC3C  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8004FFE0 0004BC40  C8 01 00 18 */	lfd f0, 0x18(r1)
/* 8004FFE4 0004BC44  EC 00 10 28 */	fsubs f0, f0, f2
/* 8004FFE8 0004BC48  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8004FFEC 0004BC4C  88 04 00 03 */	lbz r0, 3(r4)
/* 8004FFF0 0004BC50  38 83 00 04 */	addi r4, r3, 4
/* 8004FFF4 0004BC54  7C 86 23 78 */	mr r6, r4
/* 8004FFF8 0004BC58  38 63 01 24 */	addi r3, r3, 0x124
/* 8004FFFC 0004BC5C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80050000 0004BC60  C8 01 00 20 */	lfd f0, 0x20(r1)
/* 80050004 0004BC64  EC 00 10 28 */	fsubs f0, f0, f2
/* 80050008 0004BC68  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8005000C 0004BC6C  48 00 0B 41 */	bl func_80050B4C
/* 80050010 0004BC70  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80050014 0004BC74  7C 08 03 A6 */	mtlr r0
/* 80050018 0004BC78  38 21 00 30 */	addi r1, r1, 0x30
/* 8005001C 0004BC7C  4E 80 00 20 */	blr

.global func_80050020
func_80050020:
/* 80050020 0004BC80  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80050024 0004BC84  7C 08 02 A6 */	mflr r0
/* 80050028 0004BC88  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005002C 0004BC8C  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80050030 0004BC90  7C 7F 1B 78 */	mr r31, r3
/* 80050034 0004BC94  C0 04 00 00 */	lfs f0, 0(r4)
/* 80050038 0004BC98  D0 03 01 64 */	stfs f0, 0x164(r3)
/* 8005003C 0004BC9C  C0 04 00 04 */	lfs f0, 4(r4)
/* 80050040 0004BCA0  D0 03 01 68 */	stfs f0, 0x168(r3)
/* 80050044 0004BCA4  C0 04 00 08 */	lfs f0, 8(r4)
/* 80050048 0004BCA8  D0 03 01 6C */	stfs f0, 0x16c(r3)
/* 8005004C 0004BCAC  38 61 00 18 */	addi r3, r1, 0x18
/* 80050050 0004BCB0  C0 44 00 08 */	lfs f2, 8(r4)
/* 80050054 0004BCB4  C0 24 00 04 */	lfs f1, 4(r4)
/* 80050058 0004BCB8  C0 04 00 00 */	lfs f0, 0(r4)
/* 8005005C 0004BCBC  38 81 00 08 */	addi r4, r1, 8
/* 80050060 0004BCC0  D0 01 00 08 */	stfs f0, 8(r1)
/* 80050064 0004BCC4  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 80050068 0004BCC8  D0 41 00 10 */	stfs f2, 0x10(r1)
/* 8005006C 0004BCCC  48 1D 36 55 */	bl func_802236C0
/* 80050070 0004BCD0  80 7F 00 00 */	lwz r3, 0(r31)
/* 80050074 0004BCD4  2C 03 00 00 */	cmpwi r3, 0
/* 80050078 0004BCD8  41 82 00 38 */	beq lbl_800500B0
/* 8005007C 0004BCDC  C0 01 00 18 */	lfs f0, 0x18(r1)
/* 80050080 0004BCE0  38 80 00 01 */	li r4, 1
/* 80050084 0004BCE4  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80050088 0004BCE8  C0 01 00 1C */	lfs f0, 0x1c(r1)
/* 8005008C 0004BCEC  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80050090 0004BCF0  C0 01 00 20 */	lfs f0, 0x20(r1)
/* 80050094 0004BCF4  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80050098 0004BCF8  C0 01 00 24 */	lfs f0, 0x24(r1)
/* 8005009C 0004BCFC  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 800500A0 0004BD00  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 800500A4 0004BD04  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 800500A8 0004BD08  B0 03 00 10 */	sth r0, 0x10(r3)
/* 800500AC 0004BD0C  48 1A 26 0D */	bl func_801F26B8
lbl_800500B0:
/* 800500B0 0004BD10  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800500B4 0004BD14  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 800500B8 0004BD18  7C 08 03 A6 */	mtlr r0
/* 800500BC 0004BD1C  38 21 00 30 */	addi r1, r1, 0x30
/* 800500C0 0004BD20  4E 80 00 20 */	blr

.global func_800500C4
func_800500C4:
/* 800500C4 0004BD24  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 800500C8 0004BD28  7C 00 20 40 */	cmplw r0, r4
/* 800500CC 0004BD2C  40 82 00 0C */	bne lbl_800500D8
/* 800500D0 0004BD30  38 60 00 00 */	li r3, 0
/* 800500D4 0004BD34  4E 80 00 20 */	blr
lbl_800500D8:
/* 800500D8 0004BD38  80 03 00 30 */	lwz r0, 0x30(r3)
/* 800500DC 0004BD3C  7C 00 20 40 */	cmplw r0, r4
/* 800500E0 0004BD40  40 82 00 0C */	bne lbl_800500EC
/* 800500E4 0004BD44  38 60 00 01 */	li r3, 1
/* 800500E8 0004BD48  4E 80 00 20 */	blr
lbl_800500EC:
/* 800500EC 0004BD4C  80 03 00 34 */	lwz r0, 0x34(r3)
/* 800500F0 0004BD50  7C 00 20 40 */	cmplw r0, r4
/* 800500F4 0004BD54  40 82 00 0C */	bne lbl_80050100
/* 800500F8 0004BD58  38 60 00 02 */	li r3, 2
/* 800500FC 0004BD5C  4E 80 00 20 */	blr
lbl_80050100:
/* 80050100 0004BD60  80 03 00 38 */	lwz r0, 0x38(r3)
/* 80050104 0004BD64  7C 00 20 40 */	cmplw r0, r4
/* 80050108 0004BD68  40 82 00 0C */	bne lbl_80050114
/* 8005010C 0004BD6C  38 60 00 03 */	li r3, 3
/* 80050110 0004BD70  4E 80 00 20 */	blr
lbl_80050114:
/* 80050114 0004BD74  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 80050118 0004BD78  7C 00 20 40 */	cmplw r0, r4
/* 8005011C 0004BD7C  40 82 00 0C */	bne lbl_80050128
/* 80050120 0004BD80  38 60 00 04 */	li r3, 4
/* 80050124 0004BD84  4E 80 00 20 */	blr
lbl_80050128:
/* 80050128 0004BD88  80 03 00 40 */	lwz r0, 0x40(r3)
/* 8005012C 0004BD8C  7C 00 20 40 */	cmplw r0, r4
/* 80050130 0004BD90  40 82 00 0C */	bne lbl_8005013C
/* 80050134 0004BD94  38 60 00 05 */	li r3, 5
/* 80050138 0004BD98  4E 80 00 20 */	blr
lbl_8005013C:
/* 8005013C 0004BD9C  80 03 00 44 */	lwz r0, 0x44(r3)
/* 80050140 0004BDA0  7C 00 20 40 */	cmplw r0, r4
/* 80050144 0004BDA4  40 82 00 0C */	bne lbl_80050150
/* 80050148 0004BDA8  38 60 00 06 */	li r3, 6
/* 8005014C 0004BDAC  4E 80 00 20 */	blr
lbl_80050150:
/* 80050150 0004BDB0  80 03 00 48 */	lwz r0, 0x48(r3)
/* 80050154 0004BDB4  7C 00 20 40 */	cmplw r0, r4
/* 80050158 0004BDB8  40 82 00 0C */	bne lbl_80050164
/* 8005015C 0004BDBC  38 60 00 07 */	li r3, 7
/* 80050160 0004BDC0  4E 80 00 20 */	blr
lbl_80050164:
/* 80050164 0004BDC4  38 60 FF FF */	li r3, -1
/* 80050168 0004BDC8  4E 80 00 20 */	blr

.global func_8005016C
func_8005016C:
/* 8005016C 0004BDCC  38 A0 00 01 */	li r5, 1
/* 80050170 0004BDD0  38 6D 98 48 */	addi r3, r13, lbl_8063EB08-_SDA_BASE_
/* 80050174 0004BDD4  38 80 00 04 */	li r4, 4
/* 80050178 0004BDD8  38 00 00 00 */	li r0, 0
/* 8005017C 0004BDDC  98 AD 98 48 */	stb r5, lbl_8063EB08-_SDA_BASE_(r13)
/* 80050180 0004BDE0  B0 83 00 02 */	sth r4, 2(r3)
/* 80050184 0004BDE4  98 03 00 04 */	stb r0, 4(r3)
/* 80050188 0004BDE8  4E 80 00 20 */	blr

.global func_8005018C
func_8005018C:
/* 8005018C 0004BDEC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80050190 0004BDF0  7C 08 02 A6 */	mflr r0
/* 80050194 0004BDF4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80050198 0004BDF8  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8005019C 0004BDFC  FF E0 08 90 */	fmr f31, f1
/* 800501A0 0004BE00  93 E1 00 14 */	stw r31, 0x14(r1)
/* 800501A4 0004BE04  7C 7F 1B 78 */	mr r31, r3
/* 800501A8 0004BE08  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 800501AC 0004BE0C  88 04 04 68 */	lbz r0, 0x468(r4)
/* 800501B0 0004BE10  2C 00 00 00 */	cmpwi r0, 0
/* 800501B4 0004BE14  41 82 00 0C */	beq lbl_800501C0
/* 800501B8 0004BE18  7C 83 23 78 */	mr r3, r4
/* 800501BC 0004BE1C  48 1A ED AD */	bl func_801FEF68
lbl_800501C0:
/* 800501C0 0004BE20  2C 1F 00 02 */	cmpwi r31, 2
/* 800501C4 0004BE24  41 82 00 70 */	beq lbl_80050234
/* 800501C8 0004BE28  40 80 00 DC */	bge lbl_800502A4
/* 800501CC 0004BE2C  2C 1F 00 01 */	cmpwi r31, 1
/* 800501D0 0004BE30  40 80 00 08 */	bge lbl_800501D8
/* 800501D4 0004BE34  48 00 00 D0 */	b lbl_800502A4
lbl_800501D8:
/* 800501D8 0004BE38  80 CD A1 50 */	lwz r6, lbl_8063F410-_SDA_BASE_(r13)
/* 800501DC 0004BE3C  3C 60 1B 7A */	lis r3, 0x1B7A0C00@ha
/* 800501E0 0004BE40  38 83 0C 00 */	addi r4, r3, 0x1B7A0C00@l
/* 800501E4 0004BE44  3B E0 00 00 */	li r31, 0
/* 800501E8 0004BE48  D3 E6 04 58 */	stfs f31, 0x458(r6)
/* 800501EC 0004BE4C  38 A0 00 17 */	li r5, 0x17
/* 800501F0 0004BE50  38 00 00 FF */	li r0, 0xff
/* 800501F4 0004BE54  38 60 00 0A */	li r3, 0xa
/* 800501F8 0004BE58  9B E6 04 60 */	stb r31, 0x460(r6)
/* 800501FC 0004BE5C  9B E6 04 61 */	stb r31, 0x461(r6)
/* 80050200 0004BE60  80 CD A1 50 */	lwz r6, lbl_8063F410-_SDA_BASE_(r13)
/* 80050204 0004BE64  B0 A6 04 62 */	sth r5, 0x462(r6)
/* 80050208 0004BE68  D3 E6 04 5C */	stfs f31, 0x45c(r6)
/* 8005020C 0004BE6C  80 AD A1 50 */	lwz r5, lbl_8063F410-_SDA_BASE_(r13)
/* 80050210 0004BE70  9B E5 04 94 */	stb r31, 0x494(r5)
/* 80050214 0004BE74  9B E5 04 95 */	stb r31, 0x495(r5)
/* 80050218 0004BE78  9B E5 04 96 */	stb r31, 0x496(r5)
/* 8005021C 0004BE7C  98 05 04 97 */	stb r0, 0x497(r5)
/* 80050220 0004BE80  48 18 B2 9D */	bl func_801DB4BC
/* 80050224 0004BE84  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80050228 0004BE88  93 E4 04 9C */	stw r31, 0x49c(r4)
/* 8005022C 0004BE8C  90 64 04 A0 */	stw r3, 0x4a0(r4)
/* 80050230 0004BE90  48 00 00 68 */	b lbl_80050298
lbl_80050234:
/* 80050234 0004BE94  80 ED A1 50 */	lwz r7, lbl_8063F410-_SDA_BASE_(r13)
/* 80050238 0004BE98  3C 60 1B 7A */	lis r3, 0x1B7A0C00@ha
/* 8005023C 0004BE9C  38 83 0C 00 */	addi r4, r3, 0x1B7A0C00@l
/* 80050240 0004BEA0  38 C0 00 01 */	li r6, 1
/* 80050244 0004BEA4  D3 E7 04 58 */	stfs f31, 0x458(r7)
/* 80050248 0004BEA8  38 A0 00 17 */	li r5, 0x17
/* 8005024C 0004BEAC  3B E0 00 00 */	li r31, 0
/* 80050250 0004BEB0  38 00 00 FF */	li r0, 0xff
/* 80050254 0004BEB4  98 C7 04 60 */	stb r6, 0x460(r7)
/* 80050258 0004BEB8  38 60 00 0A */	li r3, 0xa
/* 8005025C 0004BEBC  98 C7 04 61 */	stb r6, 0x461(r7)
/* 80050260 0004BEC0  80 CD A1 50 */	lwz r6, lbl_8063F410-_SDA_BASE_(r13)
/* 80050264 0004BEC4  B0 A6 04 62 */	sth r5, 0x462(r6)
/* 80050268 0004BEC8  D3 E6 04 5C */	stfs f31, 0x45c(r6)
/* 8005026C 0004BECC  80 AD A1 50 */	lwz r5, lbl_8063F410-_SDA_BASE_(r13)
/* 80050270 0004BED0  9B E5 04 94 */	stb r31, 0x494(r5)
/* 80050274 0004BED4  9B E5 04 95 */	stb r31, 0x495(r5)
/* 80050278 0004BED8  9B E5 04 96 */	stb r31, 0x496(r5)
/* 8005027C 0004BEDC  98 05 04 97 */	stb r0, 0x497(r5)
/* 80050280 0004BEE0  48 18 B2 3D */	bl func_801DB4BC
/* 80050284 0004BEE4  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 80050288 0004BEE8  93 E4 04 9C */	stw r31, 0x49c(r4)
/* 8005028C 0004BEEC  90 64 04 A0 */	stw r3, 0x4a0(r4)
/* 80050290 0004BEF0  48 00 00 08 */	b lbl_80050298
/* 80050294 0004BEF4  48 00 00 10 */	b lbl_800502A4
lbl_80050298:
/* 80050298 0004BEF8  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 8005029C 0004BEFC  38 80 00 01 */	li r4, 1
/* 800502A0 0004BF00  48 1A EB 8D */	bl func_801FEE2C
lbl_800502A4:
/* 800502A4 0004BF04  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800502A8 0004BF08  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 800502AC 0004BF0C  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 800502B0 0004BF10  7C 08 03 A6 */	mtlr r0
/* 800502B4 0004BF14  38 21 00 20 */	addi r1, r1, 0x20
/* 800502B8 0004BF18  4E 80 00 20 */	blr

.global func_800502BC
func_800502BC:
/* 800502BC 0004BF1C  80 8D A1 50 */	lwz r4, lbl_8063F410-_SDA_BASE_(r13)
/* 800502C0 0004BF20  88 04 04 68 */	lbz r0, 0x468(r4)
/* 800502C4 0004BF24  2C 00 00 00 */	cmpwi r0, 0
/* 800502C8 0004BF28  41 82 00 34 */	beq lbl_800502FC
/* 800502CC 0004BF2C  C0 44 04 74 */	lfs f2, 0x474(r4)
/* 800502D0 0004BF30  38 60 00 00 */	li r3, 0
/* 800502D4 0004BF34  C0 24 04 78 */	lfs f1, 0x478(r4)
/* 800502D8 0004BF38  C0 02 84 80 */	lfs f0, lbl_80640A80-_SDA2_BASE_(r2)
/* 800502DC 0004BF3C  EC 22 08 28 */	fsubs f1, f2, f1
/* 800502E0 0004BF40  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800502E4 0004BF44  4C 80 00 20 */	bgelr
/* 800502E8 0004BF48  C0 02 84 84 */	lfs f0, lbl_80640A84-_SDA2_BASE_(r2)
/* 800502EC 0004BF4C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800502F0 0004BF50  4C 81 00 20 */	blelr
/* 800502F4 0004BF54  38 60 00 01 */	li r3, 1
/* 800502F8 0004BF58  4E 80 00 20 */	blr
lbl_800502FC:
/* 800502FC 0004BF5C  38 60 00 00 */	li r3, 0
/* 80050300 0004BF60  4E 80 00 20 */	blr

.global func_80050304
func_80050304:
/* 80050304 0004BF64  38 A0 00 01 */	li r5, 1
/* 80050308 0004BF68  38 6D 98 58 */	addi r3, r13, lbl_8063EB18-_SDA_BASE_
/* 8005030C 0004BF6C  38 80 00 04 */	li r4, 4
/* 80050310 0004BF70  38 00 00 00 */	li r0, 0
/* 80050314 0004BF74  98 AD 98 58 */	stb r5, lbl_8063EB18-_SDA_BASE_(r13)
/* 80050318 0004BF78  B0 83 00 02 */	sth r4, 2(r3)
/* 8005031C 0004BF7C  98 03 00 04 */	stb r0, 4(r3)
/* 80050320 0004BF80  4E 80 00 20 */	blr

.global func_80050324
func_80050324:
/* 80050324 0004BF84  3C 80 80 41 */	lis r4, lbl_8040AC88@ha
/* 80050328 0004BF88  38 00 00 00 */	li r0, 0
/* 8005032C 0004BF8C  38 84 AC 88 */	addi r4, r4, lbl_8040AC88@l
/* 80050330 0004BF90  90 03 00 00 */	stw r0, 0(r3)
/* 80050334 0004BF94  90 83 00 20 */	stw r4, 0x20(r3)
/* 80050338 0004BF98  4E 80 00 20 */	blr

.global func_8005033C
func_8005033C:
/* 8005033C 0004BF9C  C0 62 84 88 */	lfs f3, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050340 0004BFA0  FC 03 08 00 */	fcmpu cr0, f3, f1
/* 80050344 0004BFA4  40 82 00 14 */	bne lbl_80050358
/* 80050348 0004BFA8  C0 05 00 00 */	lfs f0, 0(r5)
/* 8005034C 0004BFAC  38 60 00 00 */	li r3, 0
/* 80050350 0004BFB0  D0 06 00 00 */	stfs f0, 0(r6)
/* 80050354 0004BFB4  4E 80 00 20 */	blr
lbl_80050358:
/* 80050358 0004BFB8  C0 44 00 00 */	lfs f2, 0(r4)
/* 8005035C 0004BFBC  38 00 00 01 */	li r0, 1
/* 80050360 0004BFC0  C0 05 00 00 */	lfs f0, 0(r5)
/* 80050364 0004BFC4  90 03 00 00 */	stw r0, 0(r3)
/* 80050368 0004BFC8  D0 43 00 04 */	stfs f2, 4(r3)
/* 8005036C 0004BFCC  D0 03 00 08 */	stfs f0, 8(r3)
/* 80050370 0004BFD0  D0 23 00 10 */	stfs f1, 0x10(r3)
/* 80050374 0004BFD4  D0 63 00 14 */	stfs f3, 0x14(r3)
/* 80050378 0004BFD8  90 E3 00 18 */	stw r7, 0x18(r3)
/* 8005037C 0004BFDC  90 C3 00 0C */	stw r6, 0xc(r3)
/* 80050380 0004BFE0  38 60 00 01 */	li r3, 1
/* 80050384 0004BFE4  4E 80 00 20 */	blr

.global func_80050388
func_80050388:
/* 80050388 0004BFE8  38 00 00 00 */	li r0, 0
/* 8005038C 0004BFEC  90 03 00 00 */	stw r0, 0(r3)
/* 80050390 0004BFF0  4E 80 00 20 */	blr
/* 80050394 0004BFF4  80 03 00 00 */	lwz r0, 0(r3)
/* 80050398 0004BFF8  2C 00 00 00 */	cmpwi r0, 0
/* 8005039C 0004BFFC  40 82 00 0C */	bne lbl_800503A8
/* 800503A0 0004C000  38 60 00 00 */	li r3, 0
/* 800503A4 0004C004  4E 80 00 20 */	blr
lbl_800503A8:
/* 800503A8 0004C008  C0 43 00 14 */	lfs f2, 0x14(r3)
/* 800503AC 0004C00C  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 800503B0 0004C010  EC 22 08 2A */	fadds f1, f2, f1
/* 800503B4 0004C014  C0 62 84 8C */	lfs f3, lbl_80640A8C-_SDA2_BASE_(r2)
/* 800503B8 0004C018  EC 81 00 24 */	fdivs f4, f1, f0
/* 800503BC 0004C01C  D0 23 00 14 */	stfs f1, 0x14(r3)
/* 800503C0 0004C020  FC 04 18 40 */	fcmpo cr0, f4, f3
/* 800503C4 0004C024  4C 41 13 82 */	cror 2, 1, 2
/* 800503C8 0004C028  40 82 00 20 */	bne lbl_800503E8
/* 800503CC 0004C02C  C0 03 00 08 */	lfs f0, 8(r3)
/* 800503D0 0004C030  38 00 00 00 */	li r0, 0
/* 800503D4 0004C034  80 83 00 0C */	lwz r4, 0xc(r3)
/* 800503D8 0004C038  D0 04 00 00 */	stfs f0, 0(r4)
/* 800503DC 0004C03C  90 03 00 00 */	stw r0, 0(r3)
/* 800503E0 0004C040  38 60 00 01 */	li r3, 1
/* 800503E4 0004C044  4E 80 00 20 */	blr
lbl_800503E8:
/* 800503E8 0004C048  80 03 00 18 */	lwz r0, 0x18(r3)
/* 800503EC 0004C04C  28 00 00 08 */	cmplwi r0, 8
/* 800503F0 0004C050  41 81 01 08 */	bgt lbl_800504F8
/* 800503F4 0004C054  3C 80 80 41 */	lis r4, lbl_8040AB08@ha
/* 800503F8 0004C058  54 00 10 3A */	slwi r0, r0, 2
/* 800503FC 0004C05C  38 84 AB 08 */	addi r4, r4, lbl_8040AB08@l
/* 80050400 0004C060  7C 84 00 2E */	lwzx r4, r4, r0
/* 80050404 0004C064  7C 89 03 A6 */	mtctr r4
/* 80050408 0004C068  4E 80 04 20 */	bctr
/* 8005040C 0004C06C  48 00 00 F4 */	b lbl_80050500
/* 80050410 0004C070  EC 84 01 32 */	fmuls f4, f4, f4
/* 80050414 0004C074  48 00 00 EC */	b lbl_80050500
/* 80050418 0004C078  EC 04 01 32 */	fmuls f0, f4, f4
/* 8005041C 0004C07C  EC 84 00 32 */	fmuls f4, f4, f0
/* 80050420 0004C080  48 00 00 E0 */	b lbl_80050500
/* 80050424 0004C084  EC 04 18 28 */	fsubs f0, f4, f3
/* 80050428 0004C088  EC 00 00 32 */	fmuls f0, f0, f0
/* 8005042C 0004C08C  EC 83 00 28 */	fsubs f4, f3, f0
/* 80050430 0004C090  48 00 00 D0 */	b lbl_80050500
/* 80050434 0004C094  EC 24 18 28 */	fsubs f1, f4, f3
/* 80050438 0004C098  EC 01 00 72 */	fmuls f0, f1, f1
/* 8005043C 0004C09C  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050440 0004C0A0  EC 83 00 2A */	fadds f4, f3, f0
/* 80050444 0004C0A4  48 00 00 BC */	b lbl_80050500
/* 80050448 0004C0A8  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 8005044C 0004C0AC  FC 04 10 40 */	fcmpo cr0, f4, f2
/* 80050450 0004C0B0  40 80 00 18 */	bge lbl_80050468
/* 80050454 0004C0B4  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050458 0004C0B8  EC 20 01 32 */	fmuls f1, f0, f4
/* 8005045C 0004C0BC  EC 02 00 72 */	fmuls f0, f2, f1
/* 80050460 0004C0C0  EC 80 00 72 */	fmuls f4, f0, f1
/* 80050464 0004C0C4  48 00 00 9C */	b lbl_80050500
lbl_80050468:
/* 80050468 0004C0C8  EC 24 18 28 */	fsubs f1, f4, f3
/* 8005046C 0004C0CC  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050470 0004C0D0  EC 00 00 72 */	fmuls f0, f0, f1
/* 80050474 0004C0D4  EC 00 00 32 */	fmuls f0, f0, f0
/* 80050478 0004C0D8  EC 03 00 28 */	fsubs f0, f3, f0
/* 8005047C 0004C0DC  EC 02 00 32 */	fmuls f0, f2, f0
/* 80050480 0004C0E0  EC 82 00 2A */	fadds f4, f2, f0
/* 80050484 0004C0E4  48 00 00 7C */	b lbl_80050500
/* 80050488 0004C0E8  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 8005048C 0004C0EC  FC 04 10 40 */	fcmpo cr0, f4, f2
/* 80050490 0004C0F0  40 80 00 1C */	bge lbl_800504AC
/* 80050494 0004C0F4  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050498 0004C0F8  EC 20 01 32 */	fmuls f1, f0, f4
/* 8005049C 0004C0FC  EC 02 00 72 */	fmuls f0, f2, f1
/* 800504A0 0004C100  EC 00 00 72 */	fmuls f0, f0, f1
/* 800504A4 0004C104  EC 81 00 32 */	fmuls f4, f1, f0
/* 800504A8 0004C108  48 00 00 58 */	b lbl_80050500
lbl_800504AC:
/* 800504AC 0004C10C  EC 24 18 28 */	fsubs f1, f4, f3
/* 800504B0 0004C110  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800504B4 0004C114  EC 20 00 72 */	fmuls f1, f0, f1
/* 800504B8 0004C118  EC 01 00 72 */	fmuls f0, f1, f1
/* 800504BC 0004C11C  EC 01 00 32 */	fmuls f0, f1, f0
/* 800504C0 0004C120  EC 03 00 2A */	fadds f0, f3, f0
/* 800504C4 0004C124  EC 02 00 32 */	fmuls f0, f2, f0
/* 800504C8 0004C128  EC 82 00 2A */	fadds f4, f2, f0
/* 800504CC 0004C12C  48 00 00 34 */	b lbl_80050500
/* 800504D0 0004C130  EC 04 01 32 */	fmuls f0, f4, f4
/* 800504D4 0004C134  EC 04 00 32 */	fmuls f0, f4, f0
/* 800504D8 0004C138  EC 84 00 32 */	fmuls f4, f4, f0
/* 800504DC 0004C13C  48 00 00 24 */	b lbl_80050500
/* 800504E0 0004C140  EC 24 18 28 */	fsubs f1, f4, f3
/* 800504E4 0004C144  EC 01 00 72 */	fmuls f0, f1, f1
/* 800504E8 0004C148  EC 01 00 32 */	fmuls f0, f1, f0
/* 800504EC 0004C14C  EC 01 00 32 */	fmuls f0, f1, f0
/* 800504F0 0004C150  EC 83 00 28 */	fsubs f4, f3, f0
/* 800504F4 0004C154  48 00 00 0C */	b lbl_80050500
lbl_800504F8:
/* 800504F8 0004C158  38 60 00 00 */	li r3, 0
/* 800504FC 0004C15C  4E 80 00 20 */	blr
lbl_80050500:
/* 80050500 0004C160  C0 23 00 08 */	lfs f1, 8(r3)
/* 80050504 0004C164  38 00 00 01 */	li r0, 1
/* 80050508 0004C168  C0 03 00 04 */	lfs f0, 4(r3)
/* 8005050C 0004C16C  80 83 00 0C */	lwz r4, 0xc(r3)
/* 80050510 0004C170  EC 21 00 28 */	fsubs f1, f1, f0
/* 80050514 0004C174  EC 21 01 32 */	fmuls f1, f1, f4
/* 80050518 0004C178  EC 21 00 2A */	fadds f1, f1, f0
/* 8005051C 0004C17C  D0 24 00 00 */	stfs f1, 0(r4)
/* 80050520 0004C180  90 03 00 00 */	stw r0, 0(r3)
/* 80050524 0004C184  38 60 00 01 */	li r3, 1
/* 80050528 0004C188  4E 80 00 20 */	blr

.global func_8005052C
func_8005052C:
/* 8005052C 0004C18C  3C 80 80 41 */	lis r4, lbl_8040AC00@ha
/* 80050530 0004C190  38 00 00 00 */	li r0, 0
/* 80050534 0004C194  38 84 AC 00 */	addi r4, r4, lbl_8040AC00@l
/* 80050538 0004C198  90 03 00 00 */	stw r0, 0(r3)
/* 8005053C 0004C19C  90 83 00 30 */	stw r4, 0x30(r3)
/* 80050540 0004C1A0  4E 80 00 20 */	blr

.global func_80050544
func_80050544:
/* 80050544 0004C1A4  C0 E2 84 88 */	lfs f7, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050548 0004C1A8  FC 07 08 00 */	fcmpu cr0, f7, f1
/* 8005054C 0004C1AC  40 82 00 24 */	bne lbl_80050570
/* 80050550 0004C1B0  C0 45 00 00 */	lfs f2, 0(r5)
/* 80050554 0004C1B4  38 60 00 00 */	li r3, 0
/* 80050558 0004C1B8  C0 25 00 04 */	lfs f1, 4(r5)
/* 8005055C 0004C1BC  C0 05 00 08 */	lfs f0, 8(r5)
/* 80050560 0004C1C0  D0 46 00 00 */	stfs f2, 0(r6)
/* 80050564 0004C1C4  D0 26 00 04 */	stfs f1, 4(r6)
/* 80050568 0004C1C8  D0 06 00 08 */	stfs f0, 8(r6)
/* 8005056C 0004C1CC  4E 80 00 20 */	blr
lbl_80050570:
/* 80050570 0004C1D0  C0 C4 00 00 */	lfs f6, 0(r4)
/* 80050574 0004C1D4  38 00 00 01 */	li r0, 1
/* 80050578 0004C1D8  C0 A4 00 04 */	lfs f5, 4(r4)
/* 8005057C 0004C1DC  C0 84 00 08 */	lfs f4, 8(r4)
/* 80050580 0004C1E0  C0 65 00 00 */	lfs f3, 0(r5)
/* 80050584 0004C1E4  C0 45 00 04 */	lfs f2, 4(r5)
/* 80050588 0004C1E8  C0 05 00 08 */	lfs f0, 8(r5)
/* 8005058C 0004C1EC  90 03 00 00 */	stw r0, 0(r3)
/* 80050590 0004C1F0  D0 C3 00 04 */	stfs f6, 4(r3)
/* 80050594 0004C1F4  D0 A3 00 08 */	stfs f5, 8(r3)
/* 80050598 0004C1F8  D0 83 00 0C */	stfs f4, 0xc(r3)
/* 8005059C 0004C1FC  D0 63 00 10 */	stfs f3, 0x10(r3)
/* 800505A0 0004C200  D0 43 00 14 */	stfs f2, 0x14(r3)
/* 800505A4 0004C204  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 800505A8 0004C208  D0 23 00 20 */	stfs f1, 0x20(r3)
/* 800505AC 0004C20C  D0 E3 00 24 */	stfs f7, 0x24(r3)
/* 800505B0 0004C210  90 E3 00 28 */	stw r7, 0x28(r3)
/* 800505B4 0004C214  90 C3 00 1C */	stw r6, 0x1c(r3)
/* 800505B8 0004C218  38 60 00 01 */	li r3, 1
/* 800505BC 0004C21C  4E 80 00 20 */	blr

.global func_800505C0
func_800505C0:
/* 800505C0 0004C220  38 00 00 00 */	li r0, 0
/* 800505C4 0004C224  90 03 00 00 */	stw r0, 0(r3)
/* 800505C8 0004C228  4E 80 00 20 */	blr
/* 800505CC 0004C22C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 800505D0 0004C230  7C 08 02 A6 */	mflr r0
/* 800505D4 0004C234  90 01 00 34 */	stw r0, 0x34(r1)
/* 800505D8 0004C238  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 800505DC 0004C23C  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 800505E0 0004C240  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800505E4 0004C244  7C 7F 1B 78 */	mr r31, r3
/* 800505E8 0004C248  80 03 00 00 */	lwz r0, 0(r3)
/* 800505EC 0004C24C  2C 00 00 00 */	cmpwi r0, 0
/* 800505F0 0004C250  40 82 00 0C */	bne lbl_800505FC
/* 800505F4 0004C254  38 60 00 00 */	li r3, 0
/* 800505F8 0004C258  48 00 01 DC */	b lbl_800507D4
lbl_800505FC:
/* 800505FC 0004C25C  C0 43 00 24 */	lfs f2, 0x24(r3)
/* 80050600 0004C260  C0 03 00 20 */	lfs f0, 0x20(r3)
/* 80050604 0004C264  EC 22 08 2A */	fadds f1, f2, f1
/* 80050608 0004C268  C0 62 84 8C */	lfs f3, lbl_80640A8C-_SDA2_BASE_(r2)
/* 8005060C 0004C26C  EF E1 00 24 */	fdivs f31, f1, f0
/* 80050610 0004C270  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80050614 0004C274  FC 1F 18 40 */	fcmpo cr0, f31, f3
/* 80050618 0004C278  4C 41 13 82 */	cror 2, 1, 2
/* 8005061C 0004C27C  40 82 00 30 */	bne lbl_8005064C
/* 80050620 0004C280  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 80050624 0004C284  38 00 00 00 */	li r0, 0
/* 80050628 0004C288  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 8005062C 0004C28C  D0 04 00 00 */	stfs f0, 0(r4)
/* 80050630 0004C290  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80050634 0004C294  D0 04 00 04 */	stfs f0, 4(r4)
/* 80050638 0004C298  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 8005063C 0004C29C  D0 04 00 08 */	stfs f0, 8(r4)
/* 80050640 0004C2A0  90 03 00 00 */	stw r0, 0(r3)
/* 80050644 0004C2A4  38 60 00 01 */	li r3, 1
/* 80050648 0004C2A8  48 00 01 8C */	b lbl_800507D4
lbl_8005064C:
/* 8005064C 0004C2AC  80 03 00 28 */	lwz r0, 0x28(r3)
/* 80050650 0004C2B0  28 00 00 08 */	cmplwi r0, 8
/* 80050654 0004C2B4  41 81 01 08 */	bgt lbl_8005075C
/* 80050658 0004C2B8  3C 80 80 41 */	lis r4, lbl_8040AB2C@ha
/* 8005065C 0004C2BC  54 00 10 3A */	slwi r0, r0, 2
/* 80050660 0004C2C0  38 84 AB 2C */	addi r4, r4, lbl_8040AB2C@l
/* 80050664 0004C2C4  7C 84 00 2E */	lwzx r4, r4, r0
/* 80050668 0004C2C8  7C 89 03 A6 */	mtctr r4
/* 8005066C 0004C2CC  4E 80 04 20 */	bctr
/* 80050670 0004C2D0  48 00 00 F4 */	b lbl_80050764
/* 80050674 0004C2D4  EF FF 07 F2 */	fmuls f31, f31, f31
/* 80050678 0004C2D8  48 00 00 EC */	b lbl_80050764
/* 8005067C 0004C2DC  EC 1F 07 F2 */	fmuls f0, f31, f31
/* 80050680 0004C2E0  EF FF 00 32 */	fmuls f31, f31, f0
/* 80050684 0004C2E4  48 00 00 E0 */	b lbl_80050764
/* 80050688 0004C2E8  EC 1F 18 28 */	fsubs f0, f31, f3
/* 8005068C 0004C2EC  EC 00 00 32 */	fmuls f0, f0, f0
/* 80050690 0004C2F0  EF E3 00 28 */	fsubs f31, f3, f0
/* 80050694 0004C2F4  48 00 00 D0 */	b lbl_80050764
/* 80050698 0004C2F8  EC 3F 18 28 */	fsubs f1, f31, f3
/* 8005069C 0004C2FC  EC 01 00 72 */	fmuls f0, f1, f1
/* 800506A0 0004C300  EC 01 00 32 */	fmuls f0, f1, f0
/* 800506A4 0004C304  EF E3 00 2A */	fadds f31, f3, f0
/* 800506A8 0004C308  48 00 00 BC */	b lbl_80050764
/* 800506AC 0004C30C  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 800506B0 0004C310  FC 1F 10 40 */	fcmpo cr0, f31, f2
/* 800506B4 0004C314  40 80 00 18 */	bge lbl_800506CC
/* 800506B8 0004C318  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800506BC 0004C31C  EC 20 07 F2 */	fmuls f1, f0, f31
/* 800506C0 0004C320  EC 02 00 72 */	fmuls f0, f2, f1
/* 800506C4 0004C324  EF E0 00 72 */	fmuls f31, f0, f1
/* 800506C8 0004C328  48 00 00 9C */	b lbl_80050764
lbl_800506CC:
/* 800506CC 0004C32C  EC 3F 18 28 */	fsubs f1, f31, f3
/* 800506D0 0004C330  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800506D4 0004C334  EC 00 00 72 */	fmuls f0, f0, f1
/* 800506D8 0004C338  EC 00 00 32 */	fmuls f0, f0, f0
/* 800506DC 0004C33C  EC 03 00 28 */	fsubs f0, f3, f0
/* 800506E0 0004C340  EC 02 00 32 */	fmuls f0, f2, f0
/* 800506E4 0004C344  EF E2 00 2A */	fadds f31, f2, f0
/* 800506E8 0004C348  48 00 00 7C */	b lbl_80050764
/* 800506EC 0004C34C  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 800506F0 0004C350  FC 1F 10 40 */	fcmpo cr0, f31, f2
/* 800506F4 0004C354  40 80 00 1C */	bge lbl_80050710
/* 800506F8 0004C358  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800506FC 0004C35C  EC 20 07 F2 */	fmuls f1, f0, f31
/* 80050700 0004C360  EC 02 00 72 */	fmuls f0, f2, f1
/* 80050704 0004C364  EC 00 00 72 */	fmuls f0, f0, f1
/* 80050708 0004C368  EF E1 00 32 */	fmuls f31, f1, f0
/* 8005070C 0004C36C  48 00 00 58 */	b lbl_80050764
lbl_80050710:
/* 80050710 0004C370  EC 3F 18 28 */	fsubs f1, f31, f3
/* 80050714 0004C374  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050718 0004C378  EC 20 00 72 */	fmuls f1, f0, f1
/* 8005071C 0004C37C  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050720 0004C380  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050724 0004C384  EC 03 00 2A */	fadds f0, f3, f0
/* 80050728 0004C388  EC 02 00 32 */	fmuls f0, f2, f0
/* 8005072C 0004C38C  EF E2 00 2A */	fadds f31, f2, f0
/* 80050730 0004C390  48 00 00 34 */	b lbl_80050764
/* 80050734 0004C394  EC 1F 07 F2 */	fmuls f0, f31, f31
/* 80050738 0004C398  EC 1F 00 32 */	fmuls f0, f31, f0
/* 8005073C 0004C39C  EF FF 00 32 */	fmuls f31, f31, f0
/* 80050740 0004C3A0  48 00 00 24 */	b lbl_80050764
/* 80050744 0004C3A4  EC 3F 18 28 */	fsubs f1, f31, f3
/* 80050748 0004C3A8  EC 01 00 72 */	fmuls f0, f1, f1
/* 8005074C 0004C3AC  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050750 0004C3B0  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050754 0004C3B4  EF E3 00 28 */	fsubs f31, f3, f0
/* 80050758 0004C3B8  48 00 00 0C */	b lbl_80050764
lbl_8005075C:
/* 8005075C 0004C3BC  38 60 00 00 */	li r3, 0
/* 80050760 0004C3C0  48 00 00 74 */	b lbl_800507D4
lbl_80050764:
/* 80050764 0004C3C4  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 80050768 0004C3C8  38 9F 00 04 */	addi r4, r31, 4
/* 8005076C 0004C3CC  D0 01 00 08 */	stfs f0, 8(r1)
/* 80050770 0004C3D0  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80050774 0004C3D4  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80050778 0004C3D8  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 8005077C 0004C3DC  38 61 00 08 */	addi r3, r1, 8
/* 80050780 0004C3E0  7C 65 1B 78 */	mr r5, r3
/* 80050784 0004C3E4  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80050788 0004C3E8  48 22 C5 61 */	bl func_8027CCE8
/* 8005078C 0004C3EC  FC 20 F8 90 */	fmr f1, f31
/* 80050790 0004C3F0  38 61 00 08 */	addi r3, r1, 8
/* 80050794 0004C3F4  7C 64 1B 78 */	mr r4, r3
/* 80050798 0004C3F8  48 22 C5 75 */	bl func_8027CD0C
/* 8005079C 0004C3FC  38 61 00 08 */	addi r3, r1, 8
/* 800507A0 0004C400  38 9F 00 04 */	addi r4, r31, 4
/* 800507A4 0004C404  7C 65 1B 78 */	mr r5, r3
/* 800507A8 0004C408  48 22 C5 1D */	bl func_8027CCC4
/* 800507AC 0004C40C  80 9F 00 1C */	lwz r4, 0x1c(r31)
/* 800507B0 0004C410  38 00 00 01 */	li r0, 1
/* 800507B4 0004C414  C0 01 00 08 */	lfs f0, 8(r1)
/* 800507B8 0004C418  38 60 00 01 */	li r3, 1
/* 800507BC 0004C41C  D0 04 00 00 */	stfs f0, 0(r4)
/* 800507C0 0004C420  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 800507C4 0004C424  D0 04 00 04 */	stfs f0, 4(r4)
/* 800507C8 0004C428  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 800507CC 0004C42C  D0 04 00 08 */	stfs f0, 8(r4)
/* 800507D0 0004C430  90 1F 00 00 */	stw r0, 0(r31)
lbl_800507D4:
/* 800507D4 0004C434  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 800507D8 0004C438  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800507DC 0004C43C  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 800507E0 0004C440  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800507E4 0004C444  7C 08 03 A6 */	mtlr r0
/* 800507E8 0004C448  38 21 00 30 */	addi r1, r1, 0x30
/* 800507EC 0004C44C  4E 80 00 20 */	blr

.global func_800507F0
func_800507F0:
/* 800507F0 0004C450  3C 80 80 41 */	lis r4, lbl_8040ABC8@ha
/* 800507F4 0004C454  38 00 00 00 */	li r0, 0
/* 800507F8 0004C458  38 84 AB C8 */	addi r4, r4, lbl_8040ABC8@l
/* 800507FC 0004C45C  90 03 00 00 */	stw r0, 0(r3)
/* 80050800 0004C460  90 83 00 20 */	stw r4, 0x20(r3)
/* 80050804 0004C464  4E 80 00 20 */	blr

.global func_80050808
func_80050808:
/* 80050808 0004C468  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005080C 0004C46C  C0 02 84 88 */	lfs f0, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050810 0004C470  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80050814 0004C474  FC 00 08 00 */	fcmpu cr0, f0, f1
/* 80050818 0004C478  93 C1 00 08 */	stw r30, 8(r1)
/* 8005081C 0004C47C  40 82 00 2C */	bne lbl_80050848
/* 80050820 0004C480  89 05 00 00 */	lbz r8, 0(r5)
/* 80050824 0004C484  38 60 00 00 */	li r3, 0
/* 80050828 0004C488  88 E5 00 01 */	lbz r7, 1(r5)
/* 8005082C 0004C48C  88 85 00 02 */	lbz r4, 2(r5)
/* 80050830 0004C490  88 05 00 03 */	lbz r0, 3(r5)
/* 80050834 0004C494  99 06 00 00 */	stb r8, 0(r6)
/* 80050838 0004C498  98 E6 00 01 */	stb r7, 1(r6)
/* 8005083C 0004C49C  98 86 00 02 */	stb r4, 2(r6)
/* 80050840 0004C4A0  98 06 00 03 */	stb r0, 3(r6)
/* 80050844 0004C4A4  48 00 00 60 */	b lbl_800508A4
lbl_80050848:
/* 80050848 0004C4A8  8B E4 00 00 */	lbz r31, 0(r4)
/* 8005084C 0004C4AC  3B C0 00 01 */	li r30, 1
/* 80050850 0004C4B0  89 84 00 01 */	lbz r12, 1(r4)
/* 80050854 0004C4B4  89 64 00 02 */	lbz r11, 2(r4)
/* 80050858 0004C4B8  89 44 00 03 */	lbz r10, 3(r4)
/* 8005085C 0004C4BC  89 25 00 00 */	lbz r9, 0(r5)
/* 80050860 0004C4C0  89 05 00 01 */	lbz r8, 1(r5)
/* 80050864 0004C4C4  88 85 00 02 */	lbz r4, 2(r5)
/* 80050868 0004C4C8  88 05 00 03 */	lbz r0, 3(r5)
/* 8005086C 0004C4CC  93 C3 00 00 */	stw r30, 0(r3)
/* 80050870 0004C4D0  9B E3 00 04 */	stb r31, 4(r3)
/* 80050874 0004C4D4  99 83 00 05 */	stb r12, 5(r3)
/* 80050878 0004C4D8  99 63 00 06 */	stb r11, 6(r3)
/* 8005087C 0004C4DC  99 43 00 07 */	stb r10, 7(r3)
/* 80050880 0004C4E0  99 23 00 08 */	stb r9, 8(r3)
/* 80050884 0004C4E4  99 03 00 09 */	stb r8, 9(r3)
/* 80050888 0004C4E8  98 83 00 0A */	stb r4, 0xa(r3)
/* 8005088C 0004C4EC  98 03 00 0B */	stb r0, 0xb(r3)
/* 80050890 0004C4F0  D0 23 00 10 */	stfs f1, 0x10(r3)
/* 80050894 0004C4F4  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 80050898 0004C4F8  90 E3 00 18 */	stw r7, 0x18(r3)
/* 8005089C 0004C4FC  90 C3 00 0C */	stw r6, 0xc(r3)
/* 800508A0 0004C500  38 60 00 01 */	li r3, 1
lbl_800508A4:
/* 800508A4 0004C504  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800508A8 0004C508  83 C1 00 08 */	lwz r30, 8(r1)
/* 800508AC 0004C50C  38 21 00 10 */	addi r1, r1, 0x10
/* 800508B0 0004C510  4E 80 00 20 */	blr
/* 800508B4 0004C514  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800508B8 0004C518  3C 80 43 30 */	lis r4, 0x4330
/* 800508BC 0004C51C  80 03 00 00 */	lwz r0, 0(r3)
/* 800508C0 0004C520  90 81 00 08 */	stw r4, 8(r1)
/* 800508C4 0004C524  2C 00 00 00 */	cmpwi r0, 0
/* 800508C8 0004C528  90 81 00 10 */	stw r4, 0x10(r1)
/* 800508CC 0004C52C  40 82 00 0C */	bne lbl_800508D8
/* 800508D0 0004C530  38 60 00 00 */	li r3, 0
/* 800508D4 0004C534  48 00 02 58 */	b lbl_80050B2C
lbl_800508D8:
/* 800508D8 0004C538  C0 43 00 14 */	lfs f2, 0x14(r3)
/* 800508DC 0004C53C  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 800508E0 0004C540  EC 22 08 2A */	fadds f1, f2, f1
/* 800508E4 0004C544  C0 62 84 8C */	lfs f3, lbl_80640A8C-_SDA2_BASE_(r2)
/* 800508E8 0004C548  EC A1 00 24 */	fdivs f5, f1, f0
/* 800508EC 0004C54C  D0 23 00 14 */	stfs f1, 0x14(r3)
/* 800508F0 0004C550  FC 05 18 40 */	fcmpo cr0, f5, f3
/* 800508F4 0004C554  4C 41 13 82 */	cror 2, 1, 2
/* 800508F8 0004C558  40 82 00 38 */	bne lbl_80050930
/* 800508FC 0004C55C  80 A3 00 0C */	lwz r5, 0xc(r3)
/* 80050900 0004C560  38 00 00 00 */	li r0, 0
/* 80050904 0004C564  88 83 00 08 */	lbz r4, 8(r3)
/* 80050908 0004C568  98 85 00 00 */	stb r4, 0(r5)
/* 8005090C 0004C56C  88 83 00 09 */	lbz r4, 9(r3)
/* 80050910 0004C570  98 85 00 01 */	stb r4, 1(r5)
/* 80050914 0004C574  88 83 00 0A */	lbz r4, 0xa(r3)
/* 80050918 0004C578  98 85 00 02 */	stb r4, 2(r5)
/* 8005091C 0004C57C  88 83 00 0B */	lbz r4, 0xb(r3)
/* 80050920 0004C580  98 85 00 03 */	stb r4, 3(r5)
/* 80050924 0004C584  90 03 00 00 */	stw r0, 0(r3)
/* 80050928 0004C588  38 60 00 01 */	li r3, 1
/* 8005092C 0004C58C  48 00 02 00 */	b lbl_80050B2C
lbl_80050930:
/* 80050930 0004C590  80 03 00 18 */	lwz r0, 0x18(r3)
/* 80050934 0004C594  28 00 00 08 */	cmplwi r0, 8
/* 80050938 0004C598  41 81 01 08 */	bgt lbl_80050A40
/* 8005093C 0004C59C  3C 80 80 41 */	lis r4, lbl_8040AB50@ha
/* 80050940 0004C5A0  54 00 10 3A */	slwi r0, r0, 2
/* 80050944 0004C5A4  38 84 AB 50 */	addi r4, r4, lbl_8040AB50@l
/* 80050948 0004C5A8  7C 84 00 2E */	lwzx r4, r4, r0
/* 8005094C 0004C5AC  7C 89 03 A6 */	mtctr r4
/* 80050950 0004C5B0  4E 80 04 20 */	bctr
/* 80050954 0004C5B4  48 00 00 F4 */	b lbl_80050A48
/* 80050958 0004C5B8  EC A5 01 72 */	fmuls f5, f5, f5
/* 8005095C 0004C5BC  48 00 00 EC */	b lbl_80050A48
/* 80050960 0004C5C0  EC 05 01 72 */	fmuls f0, f5, f5
/* 80050964 0004C5C4  EC A5 00 32 */	fmuls f5, f5, f0
/* 80050968 0004C5C8  48 00 00 E0 */	b lbl_80050A48
/* 8005096C 0004C5CC  EC 05 18 28 */	fsubs f0, f5, f3
/* 80050970 0004C5D0  EC 00 00 32 */	fmuls f0, f0, f0
/* 80050974 0004C5D4  EC A3 00 28 */	fsubs f5, f3, f0
/* 80050978 0004C5D8  48 00 00 D0 */	b lbl_80050A48
/* 8005097C 0004C5DC  EC 25 18 28 */	fsubs f1, f5, f3
/* 80050980 0004C5E0  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050984 0004C5E4  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050988 0004C5E8  EC A3 00 2A */	fadds f5, f3, f0
/* 8005098C 0004C5EC  48 00 00 BC */	b lbl_80050A48
/* 80050990 0004C5F0  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 80050994 0004C5F4  FC 05 10 40 */	fcmpo cr0, f5, f2
/* 80050998 0004C5F8  40 80 00 18 */	bge lbl_800509B0
/* 8005099C 0004C5FC  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800509A0 0004C600  EC 20 01 72 */	fmuls f1, f0, f5
/* 800509A4 0004C604  EC 02 00 72 */	fmuls f0, f2, f1
/* 800509A8 0004C608  EC A0 00 72 */	fmuls f5, f0, f1
/* 800509AC 0004C60C  48 00 00 9C */	b lbl_80050A48
lbl_800509B0:
/* 800509B0 0004C610  EC 25 18 28 */	fsubs f1, f5, f3
/* 800509B4 0004C614  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800509B8 0004C618  EC 00 00 72 */	fmuls f0, f0, f1
/* 800509BC 0004C61C  EC 00 00 32 */	fmuls f0, f0, f0
/* 800509C0 0004C620  EC 03 00 28 */	fsubs f0, f3, f0
/* 800509C4 0004C624  EC 02 00 32 */	fmuls f0, f2, f0
/* 800509C8 0004C628  EC A2 00 2A */	fadds f5, f2, f0
/* 800509CC 0004C62C  48 00 00 7C */	b lbl_80050A48
/* 800509D0 0004C630  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 800509D4 0004C634  FC 05 10 40 */	fcmpo cr0, f5, f2
/* 800509D8 0004C638  40 80 00 1C */	bge lbl_800509F4
/* 800509DC 0004C63C  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800509E0 0004C640  EC 20 01 72 */	fmuls f1, f0, f5
/* 800509E4 0004C644  EC 02 00 72 */	fmuls f0, f2, f1
/* 800509E8 0004C648  EC 00 00 72 */	fmuls f0, f0, f1
/* 800509EC 0004C64C  EC A1 00 32 */	fmuls f5, f1, f0
/* 800509F0 0004C650  48 00 00 58 */	b lbl_80050A48
lbl_800509F4:
/* 800509F4 0004C654  EC 25 18 28 */	fsubs f1, f5, f3
/* 800509F8 0004C658  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 800509FC 0004C65C  EC 20 00 72 */	fmuls f1, f0, f1
/* 80050A00 0004C660  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050A04 0004C664  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050A08 0004C668  EC 03 00 2A */	fadds f0, f3, f0
/* 80050A0C 0004C66C  EC 02 00 32 */	fmuls f0, f2, f0
/* 80050A10 0004C670  EC A2 00 2A */	fadds f5, f2, f0
/* 80050A14 0004C674  48 00 00 34 */	b lbl_80050A48
/* 80050A18 0004C678  EC 05 01 72 */	fmuls f0, f5, f5
/* 80050A1C 0004C67C  EC 05 00 32 */	fmuls f0, f5, f0
/* 80050A20 0004C680  EC A5 00 32 */	fmuls f5, f5, f0
/* 80050A24 0004C684  48 00 00 24 */	b lbl_80050A48
/* 80050A28 0004C688  EC 25 18 28 */	fsubs f1, f5, f3
/* 80050A2C 0004C68C  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050A30 0004C690  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050A34 0004C694  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050A38 0004C698  EC A3 00 28 */	fsubs f5, f3, f0
/* 80050A3C 0004C69C  48 00 00 0C */	b lbl_80050A48
lbl_80050A40:
/* 80050A40 0004C6A0  38 60 00 00 */	li r3, 0
/* 80050A44 0004C6A4  48 00 00 E8 */	b lbl_80050B2C
lbl_80050A48:
/* 80050A48 0004C6A8  88 83 00 08 */	lbz r4, 8(r3)
/* 80050A4C 0004C6AC  38 00 00 01 */	li r0, 1
/* 80050A50 0004C6B0  88 A3 00 04 */	lbz r5, 4(r3)
/* 80050A54 0004C6B4  89 03 00 09 */	lbz r8, 9(r3)
/* 80050A58 0004C6B8  7C 85 20 50 */	subf r4, r5, r4
/* 80050A5C 0004C6BC  88 C3 00 05 */	lbz r6, 5(r3)
/* 80050A60 0004C6C0  54 84 06 3E */	clrlwi r4, r4, 0x18
/* 80050A64 0004C6C4  89 23 00 0A */	lbz r9, 0xa(r3)
/* 80050A68 0004C6C8  90 81 00 0C */	stw r4, 0xc(r1)
/* 80050A6C 0004C6CC  7D 06 40 50 */	subf r8, r6, r8
/* 80050A70 0004C6D0  55 04 06 3E */	clrlwi r4, r8, 0x18
/* 80050A74 0004C6D4  88 E3 00 06 */	lbz r7, 6(r3)
/* 80050A78 0004C6D8  90 81 00 14 */	stw r4, 0x14(r1)
/* 80050A7C 0004C6DC  7D 27 48 50 */	subf r9, r7, r9
/* 80050A80 0004C6E0  89 43 00 0B */	lbz r10, 0xb(r3)
/* 80050A84 0004C6E4  89 03 00 07 */	lbz r8, 7(r3)
/* 80050A88 0004C6E8  55 24 06 3E */	clrlwi r4, r9, 0x18
/* 80050A8C 0004C6EC  C8 01 00 08 */	lfd f0, 8(r1)
/* 80050A90 0004C6F0  C8 82 84 98 */	lfd f4, lbl_80640A98-_SDA2_BASE_(r2)
/* 80050A94 0004C6F4  7D 48 50 50 */	subf r10, r8, r10
/* 80050A98 0004C6F8  90 81 00 0C */	stw r4, 0xc(r1)
/* 80050A9C 0004C6FC  55 44 06 3E */	clrlwi r4, r10, 0x18
/* 80050AA0 0004C700  C8 21 00 10 */	lfd f1, 0x10(r1)
/* 80050AA4 0004C704  EC 60 20 28 */	fsubs f3, f0, f4
/* 80050AA8 0004C708  C8 01 00 08 */	lfd f0, 8(r1)
/* 80050AAC 0004C70C  EC 41 20 28 */	fsubs f2, f1, f4
/* 80050AB0 0004C710  90 81 00 14 */	stw r4, 0x14(r1)
/* 80050AB4 0004C714  EC 20 20 28 */	fsubs f1, f0, f4
/* 80050AB8 0004C718  80 83 00 0C */	lwz r4, 0xc(r3)
/* 80050ABC 0004C71C  EC 63 01 72 */	fmuls f3, f3, f5
/* 80050AC0 0004C720  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 80050AC4 0004C724  EC 42 01 72 */	fmuls f2, f2, f5
/* 80050AC8 0004C728  FC 60 18 1E */	fctiwz f3, f3
/* 80050ACC 0004C72C  EC 00 20 28 */	fsubs f0, f0, f4
/* 80050AD0 0004C730  EC 21 01 72 */	fmuls f1, f1, f5
/* 80050AD4 0004C734  FC 40 10 1E */	fctiwz f2, f2
/* 80050AD8 0004C738  D8 61 00 18 */	stfd f3, 0x18(r1)
/* 80050ADC 0004C73C  EC 00 01 72 */	fmuls f0, f0, f5
/* 80050AE0 0004C740  FC 20 08 1E */	fctiwz f1, f1
/* 80050AE4 0004C744  81 21 00 1C */	lwz r9, 0x1c(r1)
/* 80050AE8 0004C748  D8 41 00 20 */	stfd f2, 0x20(r1)
/* 80050AEC 0004C74C  7D 29 2A 14 */	add r9, r9, r5
/* 80050AF0 0004C750  FC 00 00 1E */	fctiwz f0, f0
/* 80050AF4 0004C754  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 80050AF8 0004C758  80 A1 00 24 */	lwz r5, 0x24(r1)
/* 80050AFC 0004C75C  81 41 00 2C */	lwz r10, 0x2c(r1)
/* 80050B00 0004C760  99 24 00 00 */	stb r9, 0(r4)
/* 80050B04 0004C764  7C A5 32 14 */	add r5, r5, r6
/* 80050B08 0004C768  7D 4A 3A 14 */	add r10, r10, r7
/* 80050B0C 0004C76C  D8 01 00 30 */	stfd f0, 0x30(r1)
/* 80050B10 0004C770  98 A4 00 01 */	stb r5, 1(r4)
/* 80050B14 0004C774  80 C1 00 34 */	lwz r6, 0x34(r1)
/* 80050B18 0004C778  99 44 00 02 */	stb r10, 2(r4)
/* 80050B1C 0004C77C  7C C6 42 14 */	add r6, r6, r8
/* 80050B20 0004C780  98 C4 00 03 */	stb r6, 3(r4)
/* 80050B24 0004C784  90 03 00 00 */	stw r0, 0(r3)
/* 80050B28 0004C788  38 60 00 01 */	li r3, 1
lbl_80050B2C:
/* 80050B2C 0004C78C  38 21 00 40 */	addi r1, r1, 0x40
/* 80050B30 0004C790  4E 80 00 20 */	blr

.global func_80050B34
func_80050B34:
/* 80050B34 0004C794  3C 80 80 41 */	lis r4, lbl_8040AB98@ha
/* 80050B38 0004C798  38 00 00 00 */	li r0, 0
/* 80050B3C 0004C79C  38 84 AB 98 */	addi r4, r4, lbl_8040AB98@l
/* 80050B40 0004C7A0  90 03 00 00 */	stw r0, 0(r3)
/* 80050B44 0004C7A4  90 83 00 38 */	stw r4, 0x38(r3)
/* 80050B48 0004C7A8  4E 80 00 20 */	blr

.global func_80050B4C
func_80050B4C:
/* 80050B4C 0004C7AC  C1 22 84 88 */	lfs f9, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050B50 0004C7B0  FC 09 08 00 */	fcmpu cr0, f9, f1
/* 80050B54 0004C7B4  40 82 00 2C */	bne lbl_80050B80
/* 80050B58 0004C7B8  C0 65 00 00 */	lfs f3, 0(r5)
/* 80050B5C 0004C7BC  38 60 00 00 */	li r3, 0
/* 80050B60 0004C7C0  C0 45 00 04 */	lfs f2, 4(r5)
/* 80050B64 0004C7C4  C0 25 00 08 */	lfs f1, 8(r5)
/* 80050B68 0004C7C8  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80050B6C 0004C7CC  D0 66 00 00 */	stfs f3, 0(r6)
/* 80050B70 0004C7D0  D0 46 00 04 */	stfs f2, 4(r6)
/* 80050B74 0004C7D4  D0 26 00 08 */	stfs f1, 8(r6)
/* 80050B78 0004C7D8  D0 06 00 0C */	stfs f0, 0xc(r6)
/* 80050B7C 0004C7DC  4E 80 00 20 */	blr
lbl_80050B80:
/* 80050B80 0004C7E0  C1 04 00 00 */	lfs f8, 0(r4)
/* 80050B84 0004C7E4  38 00 00 01 */	li r0, 1
/* 80050B88 0004C7E8  C0 E4 00 04 */	lfs f7, 4(r4)
/* 80050B8C 0004C7EC  C0 C4 00 08 */	lfs f6, 8(r4)
/* 80050B90 0004C7F0  C0 A4 00 0C */	lfs f5, 0xc(r4)
/* 80050B94 0004C7F4  C0 85 00 00 */	lfs f4, 0(r5)
/* 80050B98 0004C7F8  C0 65 00 04 */	lfs f3, 4(r5)
/* 80050B9C 0004C7FC  C0 45 00 08 */	lfs f2, 8(r5)
/* 80050BA0 0004C800  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80050BA4 0004C804  90 03 00 00 */	stw r0, 0(r3)
/* 80050BA8 0004C808  D1 03 00 04 */	stfs f8, 4(r3)
/* 80050BAC 0004C80C  D0 E3 00 08 */	stfs f7, 8(r3)
/* 80050BB0 0004C810  D0 C3 00 0C */	stfs f6, 0xc(r3)
/* 80050BB4 0004C814  D0 A3 00 10 */	stfs f5, 0x10(r3)
/* 80050BB8 0004C818  D0 83 00 14 */	stfs f4, 0x14(r3)
/* 80050BBC 0004C81C  D0 63 00 18 */	stfs f3, 0x18(r3)
/* 80050BC0 0004C820  D0 43 00 1C */	stfs f2, 0x1c(r3)
/* 80050BC4 0004C824  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80050BC8 0004C828  D0 23 00 28 */	stfs f1, 0x28(r3)
/* 80050BCC 0004C82C  D1 23 00 2C */	stfs f9, 0x2c(r3)
/* 80050BD0 0004C830  90 E3 00 30 */	stw r7, 0x30(r3)
/* 80050BD4 0004C834  90 C3 00 24 */	stw r6, 0x24(r3)
/* 80050BD8 0004C838  38 60 00 01 */	li r3, 1
/* 80050BDC 0004C83C  4E 80 00 20 */	blr

.global func_80050BE0
func_80050BE0:
/* 80050BE0 0004C840  38 00 00 00 */	li r0, 0
/* 80050BE4 0004C844  90 03 00 00 */	stw r0, 0(r3)
/* 80050BE8 0004C848  4E 80 00 20 */	blr
/* 80050BEC 0004C84C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80050BF0 0004C850  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 80050BF4 0004C854  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 80050BF8 0004C858  DB C1 00 20 */	stfd f30, 0x20(r1)
/* 80050BFC 0004C85C  F3 C1 00 28 */	psq_st f30, 40(r1), 0, qr0
/* 80050C00 0004C860  80 03 00 00 */	lwz r0, 0(r3)
/* 80050C04 0004C864  2C 00 00 00 */	cmpwi r0, 0
/* 80050C08 0004C868  40 82 00 0C */	bne lbl_80050C14
/* 80050C0C 0004C86C  38 60 00 00 */	li r3, 0
/* 80050C10 0004C870  48 00 02 10 */	b lbl_80050E20
lbl_80050C14:
/* 80050C14 0004C874  C0 43 00 2C */	lfs f2, 0x2c(r3)
/* 80050C18 0004C878  C0 03 00 28 */	lfs f0, 0x28(r3)
/* 80050C1C 0004C87C  EC 22 08 2A */	fadds f1, f2, f1
/* 80050C20 0004C880  C0 62 84 8C */	lfs f3, lbl_80640A8C-_SDA2_BASE_(r2)
/* 80050C24 0004C884  EF C1 00 24 */	fdivs f30, f1, f0
/* 80050C28 0004C888  D0 23 00 2C */	stfs f1, 0x2c(r3)
/* 80050C2C 0004C88C  FC 1E 18 40 */	fcmpo cr0, f30, f3
/* 80050C30 0004C890  4C 41 13 82 */	cror 2, 1, 2
/* 80050C34 0004C894  40 82 00 38 */	bne lbl_80050C6C
/* 80050C38 0004C898  80 83 00 24 */	lwz r4, 0x24(r3)
/* 80050C3C 0004C89C  38 00 00 00 */	li r0, 0
/* 80050C40 0004C8A0  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80050C44 0004C8A4  D0 04 00 00 */	stfs f0, 0(r4)
/* 80050C48 0004C8A8  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 80050C4C 0004C8AC  D0 04 00 04 */	stfs f0, 4(r4)
/* 80050C50 0004C8B0  C0 03 00 1C */	lfs f0, 0x1c(r3)
/* 80050C54 0004C8B4  D0 04 00 08 */	stfs f0, 8(r4)
/* 80050C58 0004C8B8  C0 03 00 20 */	lfs f0, 0x20(r3)
/* 80050C5C 0004C8BC  D0 04 00 0C */	stfs f0, 0xc(r4)
/* 80050C60 0004C8C0  90 03 00 00 */	stw r0, 0(r3)
/* 80050C64 0004C8C4  38 60 00 01 */	li r3, 1
/* 80050C68 0004C8C8  48 00 01 B8 */	b lbl_80050E20
lbl_80050C6C:
/* 80050C6C 0004C8CC  80 03 00 30 */	lwz r0, 0x30(r3)
/* 80050C70 0004C8D0  28 00 00 08 */	cmplwi r0, 8
/* 80050C74 0004C8D4  41 81 01 08 */	bgt lbl_80050D7C
/* 80050C78 0004C8D8  3C 80 80 41 */	lis r4, lbl_8040AB74@ha
/* 80050C7C 0004C8DC  54 00 10 3A */	slwi r0, r0, 2
/* 80050C80 0004C8E0  38 84 AB 74 */	addi r4, r4, lbl_8040AB74@l
/* 80050C84 0004C8E4  7C 84 00 2E */	lwzx r4, r4, r0
/* 80050C88 0004C8E8  7C 89 03 A6 */	mtctr r4
/* 80050C8C 0004C8EC  4E 80 04 20 */	bctr
/* 80050C90 0004C8F0  48 00 00 F4 */	b lbl_80050D84
/* 80050C94 0004C8F4  EF DE 07 B2 */	fmuls f30, f30, f30
/* 80050C98 0004C8F8  48 00 00 EC */	b lbl_80050D84
/* 80050C9C 0004C8FC  EC 1E 07 B2 */	fmuls f0, f30, f30
/* 80050CA0 0004C900  EF DE 00 32 */	fmuls f30, f30, f0
/* 80050CA4 0004C904  48 00 00 E0 */	b lbl_80050D84
/* 80050CA8 0004C908  EC 1E 18 28 */	fsubs f0, f30, f3
/* 80050CAC 0004C90C  EC 00 00 32 */	fmuls f0, f0, f0
/* 80050CB0 0004C910  EF C3 00 28 */	fsubs f30, f3, f0
/* 80050CB4 0004C914  48 00 00 D0 */	b lbl_80050D84
/* 80050CB8 0004C918  EC 3E 18 28 */	fsubs f1, f30, f3
/* 80050CBC 0004C91C  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050CC0 0004C920  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050CC4 0004C924  EF C3 00 2A */	fadds f30, f3, f0
/* 80050CC8 0004C928  48 00 00 BC */	b lbl_80050D84
/* 80050CCC 0004C92C  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 80050CD0 0004C930  FC 1E 10 40 */	fcmpo cr0, f30, f2
/* 80050CD4 0004C934  40 80 00 18 */	bge lbl_80050CEC
/* 80050CD8 0004C938  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050CDC 0004C93C  EC 20 07 B2 */	fmuls f1, f0, f30
/* 80050CE0 0004C940  EC 02 00 72 */	fmuls f0, f2, f1
/* 80050CE4 0004C944  EF C0 00 72 */	fmuls f30, f0, f1
/* 80050CE8 0004C948  48 00 00 9C */	b lbl_80050D84
lbl_80050CEC:
/* 80050CEC 0004C94C  EC 3E 18 28 */	fsubs f1, f30, f3
/* 80050CF0 0004C950  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050CF4 0004C954  EC 00 00 72 */	fmuls f0, f0, f1
/* 80050CF8 0004C958  EC 00 00 32 */	fmuls f0, f0, f0
/* 80050CFC 0004C95C  EC 03 00 28 */	fsubs f0, f3, f0
/* 80050D00 0004C960  EC 02 00 32 */	fmuls f0, f2, f0
/* 80050D04 0004C964  EF C2 00 2A */	fadds f30, f2, f0
/* 80050D08 0004C968  48 00 00 7C */	b lbl_80050D84
/* 80050D0C 0004C96C  C0 42 84 90 */	lfs f2, lbl_80640A90-_SDA2_BASE_(r2)
/* 80050D10 0004C970  FC 1E 10 40 */	fcmpo cr0, f30, f2
/* 80050D14 0004C974  40 80 00 1C */	bge lbl_80050D30
/* 80050D18 0004C978  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050D1C 0004C97C  EC 20 07 B2 */	fmuls f1, f0, f30
/* 80050D20 0004C980  EC 02 00 72 */	fmuls f0, f2, f1
/* 80050D24 0004C984  EC 00 00 72 */	fmuls f0, f0, f1
/* 80050D28 0004C988  EF C1 00 32 */	fmuls f30, f1, f0
/* 80050D2C 0004C98C  48 00 00 58 */	b lbl_80050D84
lbl_80050D30:
/* 80050D30 0004C990  EC 3E 18 28 */	fsubs f1, f30, f3
/* 80050D34 0004C994  C0 02 84 94 */	lfs f0, lbl_80640A94-_SDA2_BASE_(r2)
/* 80050D38 0004C998  EC 20 00 72 */	fmuls f1, f0, f1
/* 80050D3C 0004C99C  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050D40 0004C9A0  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050D44 0004C9A4  EC 03 00 2A */	fadds f0, f3, f0
/* 80050D48 0004C9A8  EC 02 00 32 */	fmuls f0, f2, f0
/* 80050D4C 0004C9AC  EF C2 00 2A */	fadds f30, f2, f0
/* 80050D50 0004C9B0  48 00 00 34 */	b lbl_80050D84
/* 80050D54 0004C9B4  EC 1E 07 B2 */	fmuls f0, f30, f30
/* 80050D58 0004C9B8  EC 1E 00 32 */	fmuls f0, f30, f0
/* 80050D5C 0004C9BC  EF DE 00 32 */	fmuls f30, f30, f0
/* 80050D60 0004C9C0  48 00 00 24 */	b lbl_80050D84
/* 80050D64 0004C9C4  EC 3E 18 28 */	fsubs f1, f30, f3
/* 80050D68 0004C9C8  EC 01 00 72 */	fmuls f0, f1, f1
/* 80050D6C 0004C9CC  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050D70 0004C9D0  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050D74 0004C9D4  EF C3 00 28 */	fsubs f30, f3, f0
/* 80050D78 0004C9D8  48 00 00 0C */	b lbl_80050D84
lbl_80050D7C:
/* 80050D7C 0004C9DC  38 60 00 00 */	li r3, 0
/* 80050D80 0004C9E0  48 00 00 A0 */	b lbl_80050E20
lbl_80050D84:
/* 80050D84 0004C9E4  C3 E3 00 14 */	lfs f31, 0x14(r3)
/* 80050D88 0004C9E8  38 00 00 01 */	li r0, 1
/* 80050D8C 0004C9EC  C0 23 00 04 */	lfs f1, 4(r3)
/* 80050D90 0004C9F0  C1 A3 00 18 */	lfs f13, 0x18(r3)
/* 80050D94 0004C9F4  ED 5F 08 28 */	fsubs f10, f31, f1
/* 80050D98 0004C9F8  C1 23 00 08 */	lfs f9, 8(r3)
/* 80050D9C 0004C9FC  C1 83 00 1C */	lfs f12, 0x1c(r3)
/* 80050DA0 0004CA00  ED 0D 48 28 */	fsubs f8, f13, f9
/* 80050DA4 0004CA04  C0 E3 00 0C */	lfs f7, 0xc(r3)
/* 80050DA8 0004CA08  EC 0A 07 B2 */	fmuls f0, f10, f30
/* 80050DAC 0004CA0C  C1 63 00 20 */	lfs f11, 0x20(r3)
/* 80050DB0 0004CA10  EC CC 38 28 */	fsubs f6, f12, f7
/* 80050DB4 0004CA14  C0 A3 00 10 */	lfs f5, 0x10(r3)
/* 80050DB8 0004CA18  EC 48 07 B2 */	fmuls f2, f8, f30
/* 80050DBC 0004CA1C  80 83 00 24 */	lwz r4, 0x24(r3)
/* 80050DC0 0004CA20  EC 60 08 2A */	fadds f3, f0, f1
/* 80050DC4 0004CA24  D3 E1 00 08 */	stfs f31, 8(r1)
/* 80050DC8 0004CA28  EC 8B 28 28 */	fsubs f4, f11, f5
/* 80050DCC 0004CA2C  EC 26 07 B2 */	fmuls f1, f6, f30
/* 80050DD0 0004CA30  EC 42 48 2A */	fadds f2, f2, f9
/* 80050DD4 0004CA34  D0 64 00 00 */	stfs f3, 0(r4)
/* 80050DD8 0004CA38  EC 04 07 B2 */	fmuls f0, f4, f30
/* 80050DDC 0004CA3C  D1 A1 00 0C */	stfs f13, 0xc(r1)
/* 80050DE0 0004CA40  EC 21 38 2A */	fadds f1, f1, f7
/* 80050DE4 0004CA44  D0 44 00 04 */	stfs f2, 4(r4)
/* 80050DE8 0004CA48  EC 00 28 2A */	fadds f0, f0, f5
/* 80050DEC 0004CA4C  D1 81 00 10 */	stfs f12, 0x10(r1)
/* 80050DF0 0004CA50  D0 24 00 08 */	stfs f1, 8(r4)
/* 80050DF4 0004CA54  D1 61 00 14 */	stfs f11, 0x14(r1)
/* 80050DF8 0004CA58  D1 41 00 08 */	stfs f10, 8(r1)
/* 80050DFC 0004CA5C  D1 01 00 0C */	stfs f8, 0xc(r1)
/* 80050E00 0004CA60  D0 C1 00 10 */	stfs f6, 0x10(r1)
/* 80050E04 0004CA64  D0 04 00 0C */	stfs f0, 0xc(r4)
/* 80050E08 0004CA68  90 03 00 00 */	stw r0, 0(r3)
/* 80050E0C 0004CA6C  38 60 00 01 */	li r3, 1
/* 80050E10 0004CA70  D0 61 00 08 */	stfs f3, 8(r1)
/* 80050E14 0004CA74  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80050E18 0004CA78  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 80050E1C 0004CA7C  D0 01 00 14 */	stfs f0, 0x14(r1)
lbl_80050E20:
/* 80050E20 0004CA80  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 80050E24 0004CA84  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 80050E28 0004CA88  E3 C1 00 28 */	psq_l f30, 40(r1), 0, qr0
/* 80050E2C 0004CA8C  CB C1 00 20 */	lfd f30, 0x20(r1)
/* 80050E30 0004CA90  38 21 00 40 */	addi r1, r1, 0x40
/* 80050E34 0004CA94  4E 80 00 20 */	blr

.global func_80050E38
func_80050E38:
/* 80050E38 0004CA98  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80050E3C 0004CA9C  7C 08 02 A6 */	mflr r0
/* 80050E40 0004CAA0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80050E44 0004CAA4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80050E48 0004CAA8  7C 7F 1B 78 */	mr r31, r3
/* 80050E4C 0004CAAC  4B FF F4 D9 */	bl func_80050324
/* 80050E50 0004CAB0  3C 80 80 41 */	lis r4, lbl_8040AC58@ha
/* 80050E54 0004CAB4  38 7F 00 3C */	addi r3, r31, 0x3c
/* 80050E58 0004CAB8  38 84 AC 58 */	addi r4, r4, lbl_8040AC58@l
/* 80050E5C 0004CABC  90 9F 00 20 */	stw r4, 0x20(r31)
/* 80050E60 0004CAC0  4B FF F4 C5 */	bl func_80050324
/* 80050E64 0004CAC4  7F E3 FB 78 */	mr r3, r31
/* 80050E68 0004CAC8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80050E6C 0004CACC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80050E70 0004CAD0  7C 08 03 A6 */	mtlr r0
/* 80050E74 0004CAD4  38 21 00 10 */	addi r1, r1, 0x10
/* 80050E78 0004CAD8  4E 80 00 20 */	blr

.global func_80050E7C
func_80050E7C:
/* 80050E7C 0004CADC  C0 A2 84 88 */	lfs f5, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050E80 0004CAE0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80050E84 0004CAE4  FC 05 10 00 */	fcmpu cr0, f5, f2
/* 80050E88 0004CAE8  40 82 00 10 */	bne lbl_80050E98
/* 80050E8C 0004CAEC  D0 A5 00 00 */	stfs f5, 0(r5)
/* 80050E90 0004CAF0  38 60 00 00 */	li r3, 0
/* 80050E94 0004CAF4  48 00 00 68 */	b lbl_80050EFC
lbl_80050E98:
/* 80050E98 0004CAF8  54 89 08 3C */	slwi r9, r4, 1
/* 80050E9C 0004CAFC  3C 00 43 30 */	lis r0, 0x4330
/* 80050EA0 0004CB00  6D 24 80 00 */	xoris r4, r9, 0x8000
/* 80050EA4 0004CB04  39 40 00 01 */	li r10, 1
/* 80050EA8 0004CB08  90 81 00 0C */	stw r4, 0xc(r1)
/* 80050EAC 0004CB0C  38 80 00 00 */	li r4, 0
/* 80050EB0 0004CB10  C8 82 84 A0 */	lfd f4, lbl_80640AA0-_SDA2_BASE_(r2)
/* 80050EB4 0004CB14  FC 00 10 18 */	frsp f0, f2
/* 80050EB8 0004CB18  90 01 00 08 */	stw r0, 8(r1)
/* 80050EBC 0004CB1C  C8 61 00 08 */	lfd f3, 8(r1)
/* 80050EC0 0004CB20  91 43 00 00 */	stw r10, 0(r3)
/* 80050EC4 0004CB24  EC 63 20 28 */	fsubs f3, f3, f4
/* 80050EC8 0004CB28  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 80050ECC 0004CB2C  EC 00 18 24 */	fdivs f0, f0, f3
/* 80050ED0 0004CB30  91 23 00 28 */	stw r9, 0x28(r3)
/* 80050ED4 0004CB34  90 83 00 2C */	stw r4, 0x2c(r3)
/* 80050ED8 0004CB38  D0 43 00 10 */	stfs f2, 0x10(r3)
/* 80050EDC 0004CB3C  D0 A3 00 14 */	stfs f5, 0x14(r3)
/* 80050EE0 0004CB40  90 A3 00 0C */	stw r5, 0xc(r3)
/* 80050EE4 0004CB44  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 80050EE8 0004CB48  98 E3 00 34 */	stb r7, 0x34(r3)
/* 80050EEC 0004CB4C  99 03 00 35 */	stb r8, 0x35(r3)
/* 80050EF0 0004CB50  D0 23 00 38 */	stfs f1, 0x38(r3)
/* 80050EF4 0004CB54  90 C3 00 18 */	stw r6, 0x18(r3)
/* 80050EF8 0004CB58  38 60 00 01 */	li r3, 1
lbl_80050EFC:
/* 80050EFC 0004CB5C  38 21 00 10 */	addi r1, r1, 0x10
/* 80050F00 0004CB60  4E 80 00 20 */	blr
/* 80050F04 0004CB64  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80050F08 0004CB68  7C 08 02 A6 */	mflr r0
/* 80050F0C 0004CB6C  90 01 00 34 */	stw r0, 0x34(r1)
/* 80050F10 0004CB70  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 80050F14 0004CB74  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 80050F18 0004CB78  FF E0 08 90 */	fmr f31, f1
/* 80050F1C 0004CB7C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80050F20 0004CB80  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80050F24 0004CB84  7C 7E 1B 78 */	mr r30, r3
/* 80050F28 0004CB88  80 03 00 00 */	lwz r0, 0(r3)
/* 80050F2C 0004CB8C  2C 00 00 00 */	cmpwi r0, 0
/* 80050F30 0004CB90  40 82 00 0C */	bne lbl_80050F3C
/* 80050F34 0004CB94  38 60 00 00 */	li r3, 0
/* 80050F38 0004CB98  48 00 01 90 */	b lbl_800510C8
lbl_80050F3C:
/* 80050F3C 0004CB9C  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80050F40 0004CBA0  C0 43 00 10 */	lfs f2, 0x10(r3)
/* 80050F44 0004CBA4  EC 60 08 2A */	fadds f3, f0, f1
/* 80050F48 0004CBA8  C0 02 84 8C */	lfs f0, lbl_80640A8C-_SDA2_BASE_(r2)
/* 80050F4C 0004CBAC  EC 83 10 24 */	fdivs f4, f3, f2
/* 80050F50 0004CBB0  D0 63 00 14 */	stfs f3, 0x14(r3)
/* 80050F54 0004CBB4  FC 04 00 40 */	fcmpo cr0, f4, f0
/* 80050F58 0004CBB8  4C 41 13 82 */	cror 2, 1, 2
/* 80050F5C 0004CBBC  40 82 00 44 */	bne lbl_80050FA0
/* 80050F60 0004CBC0  88 03 00 35 */	lbz r0, 0x35(r3)
/* 80050F64 0004CBC4  2C 00 00 00 */	cmpwi r0, 0
/* 80050F68 0004CBC8  41 82 00 1C */	beq lbl_80050F84
/* 80050F6C 0004CBCC  C0 22 84 90 */	lfs f1, lbl_80640A90-_SDA2_BASE_(r2)
/* 80050F70 0004CBD0  C0 03 00 38 */	lfs f0, 0x38(r3)
/* 80050F74 0004CBD4  80 83 00 0C */	lwz r4, 0xc(r3)
/* 80050F78 0004CBD8  EC 01 00 32 */	fmuls f0, f1, f0
/* 80050F7C 0004CBDC  D0 04 00 00 */	stfs f0, 0(r4)
/* 80050F80 0004CBE0  48 00 00 10 */	b lbl_80050F90
lbl_80050F84:
/* 80050F84 0004CBE4  C0 02 84 88 */	lfs f0, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050F88 0004CBE8  80 83 00 0C */	lwz r4, 0xc(r3)
/* 80050F8C 0004CBEC  D0 04 00 00 */	stfs f0, 0(r4)
lbl_80050F90:
/* 80050F90 0004CBF0  38 00 00 00 */	li r0, 0
/* 80050F94 0004CBF4  90 03 00 00 */	stw r0, 0(r3)
/* 80050F98 0004CBF8  38 60 00 01 */	li r3, 1
/* 80050F9C 0004CBFC  48 00 01 2C */	b lbl_800510C8
lbl_80050FA0:
/* 80050FA0 0004CC00  83 E3 00 2C */	lwz r31, 0x2c(r3)
/* 80050FA4 0004CC04  3C 00 43 30 */	lis r0, 0x4330
/* 80050FA8 0004CC08  90 01 00 10 */	stw r0, 0x10(r1)
/* 80050FAC 0004CC0C  6F E0 80 00 */	xoris r0, r31, 0x8000
/* 80050FB0 0004CC10  C8 42 84 A0 */	lfd f2, lbl_80640AA0-_SDA2_BASE_(r2)
/* 80050FB4 0004CC14  90 01 00 14 */	stw r0, 0x14(r1)
/* 80050FB8 0004CC18  C0 03 00 30 */	lfs f0, 0x30(r3)
/* 80050FBC 0004CC1C  C8 21 00 10 */	lfd f1, 0x10(r1)
/* 80050FC0 0004CC20  EC 21 10 28 */	fsubs f1, f1, f2
/* 80050FC4 0004CC24  EC 00 00 72 */	fmuls f0, f0, f1
/* 80050FC8 0004CC28  FC 03 00 40 */	fcmpo cr0, f3, f0
/* 80050FCC 0004CC2C  4C 41 13 82 */	cror 2, 1, 2
/* 80050FD0 0004CC30  40 82 00 D4 */	bne lbl_800510A4
/* 80050FD4 0004CC34  80 83 00 28 */	lwz r4, 0x28(r3)
/* 80050FD8 0004CC38  38 04 FF FF */	addi r0, r4, -1
/* 80050FDC 0004CC3C  7C 1F 00 00 */	cmpw r31, r0
/* 80050FE0 0004CC40  41 80 00 14 */	blt lbl_80050FF4
/* 80050FE4 0004CC44  C0 02 84 88 */	lfs f0, lbl_80640A88-_SDA2_BASE_(r2)
/* 80050FE8 0004CC48  FC 80 00 90 */	fmr f4, f0
/* 80050FEC 0004CC4C  D0 01 00 08 */	stfs f0, 8(r1)
/* 80050FF0 0004CC50  48 00 00 60 */	b lbl_80051050
lbl_80050FF4:
/* 80050FF4 0004CC54  88 03 00 34 */	lbz r0, 0x34(r3)
/* 80050FF8 0004CC58  2C 00 00 00 */	cmpwi r0, 0
/* 80050FFC 0004CC5C  41 82 00 20 */	beq lbl_8005101C
/* 80051000 0004CC60  C0 02 84 A8 */	lfs f0, lbl_80640AA8-_SDA2_BASE_(r2)
/* 80051004 0004CC64  EC 20 01 32 */	fmuls f1, f0, f4
/* 80051008 0004CC68  48 18 30 71 */	bl cos
/* 8005100C 0004CC6C  FC 20 08 18 */	frsp f1, f1
/* 80051010 0004CC70  C0 1E 00 24 */	lfs f0, 0x24(r30)
/* 80051014 0004CC74  EC 80 00 72 */	fmuls f4, f0, f1
/* 80051018 0004CC78  48 00 00 08 */	b lbl_80051020
lbl_8005101C:
/* 8005101C 0004CC7C  C0 83 00 24 */	lfs f4, 0x24(r3)
lbl_80051020:
/* 80051020 0004CC80  57 E3 0F FE */	srwi r3, r31, 0x1f
/* 80051024 0004CC84  57 E0 07 FE */	clrlwi r0, r31, 0x1f
/* 80051028 0004CC88  7C 00 1A 78 */	xor r0, r0, r3
/* 8005102C 0004CC8C  7C 03 00 51 */	subf. r0, r3, r0
/* 80051030 0004CC90  40 82 00 10 */	bne lbl_80051040
/* 80051034 0004CC94  C0 02 84 90 */	lfs f0, lbl_80640A90-_SDA2_BASE_(r2)
/* 80051038 0004CC98  EC 00 01 32 */	fmuls f0, f0, f4
/* 8005103C 0004CC9C  48 00 00 10 */	b lbl_8005104C
lbl_80051040:
/* 80051040 0004CCA0  FC 20 20 50 */	fneg f1, f4
/* 80051044 0004CCA4  C0 02 84 90 */	lfs f0, lbl_80640A90-_SDA2_BASE_(r2)
/* 80051048 0004CCA8  EC 00 00 72 */	fmuls f0, f0, f1
lbl_8005104C:
/* 8005104C 0004CCAC  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80051050:
/* 80051050 0004CCB0  88 1E 00 35 */	lbz r0, 0x35(r30)
/* 80051054 0004CCB4  2C 00 00 00 */	cmpwi r0, 0
/* 80051058 0004CCB8  41 82 00 24 */	beq lbl_8005107C
/* 8005105C 0004CCBC  C0 62 84 90 */	lfs f3, lbl_80640A90-_SDA2_BASE_(r2)
/* 80051060 0004CCC0  FC 00 00 18 */	frsp f0, f0
/* 80051064 0004CCC4  C0 5E 00 38 */	lfs f2, 0x38(r30)
/* 80051068 0004CCC8  EC 23 01 32 */	fmuls f1, f3, f4
/* 8005106C 0004CCCC  EC 43 00 B2 */	fmuls f2, f3, f2
/* 80051070 0004CCD0  EC 22 08 28 */	fsubs f1, f2, f1
/* 80051074 0004CCD4  EC 00 08 2A */	fadds f0, f0, f1
/* 80051078 0004CCD8  D0 01 00 08 */	stfs f0, 8(r1)
lbl_8005107C:
/* 8005107C 0004CCDC  80 9E 00 0C */	lwz r4, 0xc(r30)
/* 80051080 0004CCE0  38 7E 00 3C */	addi r3, r30, 0x3c
/* 80051084 0004CCE4  C0 3E 00 30 */	lfs f1, 0x30(r30)
/* 80051088 0004CCE8  38 A1 00 08 */	addi r5, r1, 8
/* 8005108C 0004CCEC  80 FE 00 18 */	lwz r7, 0x18(r30)
/* 80051090 0004CCF0  7C 86 23 78 */	mr r6, r4
/* 80051094 0004CCF4  4B FF F2 A9 */	bl func_8005033C
/* 80051098 0004CCF8  80 7E 00 2C */	lwz r3, 0x2c(r30)
/* 8005109C 0004CCFC  38 03 00 01 */	addi r0, r3, 1
/* 800510A0 0004CD00  90 1E 00 2C */	stw r0, 0x2c(r30)
lbl_800510A4:
/* 800510A4 0004CD04  81 9E 00 5C */	lwz r12, 0x5c(r30)
/* 800510A8 0004CD08  FC 20 F8 90 */	fmr f1, f31
/* 800510AC 0004CD0C  38 7E 00 3C */	addi r3, r30, 0x3c
/* 800510B0 0004CD10  81 8C 00 08 */	lwz r12, 8(r12)
/* 800510B4 0004CD14  7D 89 03 A6 */	mtctr r12
/* 800510B8 0004CD18  4E 80 04 21 */	bctrl
/* 800510BC 0004CD1C  38 00 00 01 */	li r0, 1
/* 800510C0 0004CD20  38 60 00 01 */	li r3, 1
/* 800510C4 0004CD24  90 1E 00 00 */	stw r0, 0(r30)
lbl_800510C8:
/* 800510C8 0004CD28  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 800510CC 0004CD2C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800510D0 0004CD30  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 800510D4 0004CD34  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800510D8 0004CD38  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800510DC 0004CD3C  7C 08 03 A6 */	mtlr r0
/* 800510E0 0004CD40  38 21 00 30 */	addi r1, r1, 0x30
/* 800510E4 0004CD44  4E 80 00 20 */	blr

.global func_800510E8
func_800510E8:
/* 800510E8 0004CD48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800510EC 0004CD4C  7C 08 02 A6 */	mflr r0
/* 800510F0 0004CD50  90 01 00 14 */	stw r0, 0x14(r1)
/* 800510F4 0004CD54  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800510F8 0004CD58  7C 7F 1B 78 */	mr r31, r3
/* 800510FC 0004CD5C  4B FF F2 29 */	bl func_80050324
/* 80051100 0004CD60  3C 80 80 41 */	lis r4, lbl_8040AC28@ha
/* 80051104 0004CD64  38 7F 00 3C */	addi r3, r31, 0x3c
/* 80051108 0004CD68  38 84 AC 28 */	addi r4, r4, lbl_8040AC28@l
/* 8005110C 0004CD6C  90 9F 00 20 */	stw r4, 0x20(r31)
/* 80051110 0004CD70  4B FF F2 15 */	bl func_80050324
/* 80051114 0004CD74  38 7F 00 60 */	addi r3, r31, 0x60
/* 80051118 0004CD78  4B FF FD 21 */	bl func_80050E38
/* 8005111C 0004CD7C  7F E3 FB 78 */	mr r3, r31
/* 80051120 0004CD80  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80051124 0004CD84  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80051128 0004CD88  7C 08 03 A6 */	mtlr r0
/* 8005112C 0004CD8C  38 21 00 10 */	addi r1, r1, 0x10
/* 80051130 0004CD90  4E 80 00 20 */	blr

.global func_80051134
func_80051134:
/* 80051134 0004CD94  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80051138 0004CD98  7C 08 02 A6 */	mflr r0
/* 8005113C 0004CD9C  90 01 00 54 */	stw r0, 0x54(r1)
/* 80051140 0004CDA0  DB E1 00 40 */	stfd f31, 0x40(r1)
/* 80051144 0004CDA4  F3 E1 00 48 */	psq_st f31, 72(r1), 0, qr0
/* 80051148 0004CDA8  DB C1 00 30 */	stfd f30, 0x30(r1)
/* 8005114C 0004CDAC  F3 C1 00 38 */	psq_st f30, 56(r1), 0, qr0
/* 80051150 0004CDB0  DB A1 00 20 */	stfd f29, 0x20(r1)
/* 80051154 0004CDB4  F3 A1 00 28 */	psq_st f29, 40(r1), 0, qr0
/* 80051158 0004CDB8  FF A0 18 90 */	fmr f29, f3
/* 8005115C 0004CDBC  C0 C2 84 88 */	lfs f6, lbl_80640A88-_SDA2_BASE_(r2)
/* 80051160 0004CDC0  FF C0 20 90 */	fmr f30, f4
/* 80051164 0004CDC4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80051168 0004CDC8  FF E0 28 90 */	fmr f31, f5
/* 8005116C 0004CDCC  FC 06 10 00 */	fcmpu cr0, f6, f2
/* 80051170 0004CDD0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80051174 0004CDD4  7C BE 2B 78 */	mr r30, r5
/* 80051178 0004CDD8  7C C8 33 78 */	mr r8, r6
/* 8005117C 0004CDDC  7C FF 3B 78 */	mr r31, r7
/* 80051180 0004CDE0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80051184 0004CDE4  7C 9D 23 78 */	mr r29, r4
/* 80051188 0004CDE8  93 81 00 10 */	stw r28, 0x10(r1)
/* 8005118C 0004CDEC  7C 7C 1B 78 */	mr r28, r3
/* 80051190 0004CDF0  41 82 00 0C */	beq lbl_8005119C
/* 80051194 0004CDF4  FC 06 18 00 */	fcmpu cr0, f6, f3
/* 80051198 0004CDF8  40 82 00 14 */	bne lbl_800511AC
lbl_8005119C:
/* 8005119C 0004CDFC  C0 02 84 88 */	lfs f0, lbl_80640A88-_SDA2_BASE_(r2)
/* 800511A0 0004CE00  38 60 00 00 */	li r3, 0
/* 800511A4 0004CE04  D0 05 00 00 */	stfs f0, 0(r5)
/* 800511A8 0004CE08  48 00 00 EC */	b lbl_80051294
lbl_800511AC:
/* 800511AC 0004CE0C  EC A2 18 2A */	fadds f5, f2, f3
/* 800511B0 0004CE10  38 00 00 01 */	li r0, 1
/* 800511B4 0004CE14  90 03 00 00 */	stw r0, 0(r3)
/* 800511B8 0004CE18  FC 00 08 18 */	frsp f0, f1
/* 800511BC 0004CE1C  7F C4 F3 78 */	mr r4, r30
/* 800511C0 0004CE20  7F C6 F3 78 */	mr r6, r30
/* 800511C4 0004CE24  D0 C3 00 14 */	stfs f6, 0x14(r3)
/* 800511C8 0004CE28  7D 07 43 78 */	mr r7, r8
/* 800511CC 0004CE2C  90 A3 00 0C */	stw r5, 0xc(r3)
/* 800511D0 0004CE30  D0 23 00 24 */	stfs f1, 0x24(r3)
/* 800511D4 0004CE34  D0 43 00 28 */	stfs f2, 0x28(r3)
/* 800511D8 0004CE38  D0 63 00 2C */	stfs f3, 0x2c(r3)
/* 800511DC 0004CE3C  D0 A3 00 10 */	stfs f5, 0x10(r3)
/* 800511E0 0004CE40  D0 83 00 38 */	stfs f4, 0x38(r3)
/* 800511E4 0004CE44  C0 25 00 00 */	lfs f1, 0(r5)
/* 800511E8 0004CE48  38 A1 00 08 */	addi r5, r1, 8
/* 800511EC 0004CE4C  EC 01 00 2A */	fadds f0, f1, f0
/* 800511F0 0004CE50  D0 01 00 08 */	stfs f0, 8(r1)
/* 800511F4 0004CE54  C0 23 00 28 */	lfs f1, 0x28(r3)
/* 800511F8 0004CE58  38 63 00 3C */	addi r3, r3, 0x3c
/* 800511FC 0004CE5C  4B FF F1 41 */	bl func_8005033C
/* 80051200 0004CE60  2C 1F 00 00 */	cmpwi r31, 0
/* 80051204 0004CE64  41 82 00 50 */	beq lbl_80051254
/* 80051208 0004CE68  C0 02 84 90 */	lfs f0, lbl_80640A90-_SDA2_BASE_(r2)
/* 8005120C 0004CE6C  FC 20 F8 90 */	fmr f1, f31
/* 80051210 0004CE70  C0 9E 00 00 */	lfs f4, 0(r30)
/* 80051214 0004CE74  FC 40 E8 90 */	fmr f2, f29
/* 80051218 0004CE78  EC 00 07 F2 */	fmuls f0, f0, f31
/* 8005121C 0004CE7C  C0 7C 00 24 */	lfs f3, 0x24(r28)
/* 80051220 0004CE80  7F A4 EB 78 */	mr r4, r29
/* 80051224 0004CE84  EC 84 18 2A */	fadds f4, f4, f3
/* 80051228 0004CE88  38 7C 00 60 */	addi r3, r28, 0x60
/* 8005122C 0004CE8C  EC 7E 00 28 */	fsubs f3, f30, f0
/* 80051230 0004CE90  38 BC 00 34 */	addi r5, r28, 0x34
/* 80051234 0004CE94  38 C0 00 00 */	li r6, 0
/* 80051238 0004CE98  38 E0 00 01 */	li r7, 1
/* 8005123C 0004CE9C  EC 04 18 28 */	fsubs f0, f4, f3
/* 80051240 0004CEA0  D0 7C 00 30 */	stfs f3, 0x30(r28)
/* 80051244 0004CEA4  39 00 00 01 */	li r8, 1
/* 80051248 0004CEA8  D0 1C 00 34 */	stfs f0, 0x34(r28)
/* 8005124C 0004CEAC  4B FF FC 31 */	bl func_80050E7C
/* 80051250 0004CEB0  48 00 00 40 */	b lbl_80051290
lbl_80051254:
/* 80051254 0004CEB4  C0 3E 00 00 */	lfs f1, 0(r30)
/* 80051258 0004CEB8  FC 40 E8 90 */	fmr f2, f29
/* 8005125C 0004CEBC  C0 1C 00 24 */	lfs f0, 0x24(r28)
/* 80051260 0004CEC0  7F A4 EB 78 */	mr r4, r29
/* 80051264 0004CEC4  D0 3C 00 30 */	stfs f1, 0x30(r28)
/* 80051268 0004CEC8  38 7C 00 60 */	addi r3, r28, 0x60
/* 8005126C 0004CECC  FC 20 00 50 */	fneg f1, f0
/* 80051270 0004CED0  C0 7E 00 00 */	lfs f3, 0(r30)
/* 80051274 0004CED4  38 BC 00 34 */	addi r5, r28, 0x34
/* 80051278 0004CED8  38 C0 00 00 */	li r6, 0
/* 8005127C 0004CEDC  38 E0 00 01 */	li r7, 1
/* 80051280 0004CEE0  D0 7C 00 38 */	stfs f3, 0x38(r28)
/* 80051284 0004CEE4  39 00 00 00 */	li r8, 0
/* 80051288 0004CEE8  D0 1C 00 34 */	stfs f0, 0x34(r28)
/* 8005128C 0004CEEC  4B FF FB F1 */	bl func_80050E7C
lbl_80051290:
/* 80051290 0004CEF0  38 60 00 01 */	li r3, 1
lbl_80051294:
/* 80051294 0004CEF4  E3 E1 00 48 */	psq_l f31, 72(r1), 0, qr0
/* 80051298 0004CEF8  CB E1 00 40 */	lfd f31, 0x40(r1)
/* 8005129C 0004CEFC  E3 C1 00 38 */	psq_l f30, 56(r1), 0, qr0
/* 800512A0 0004CF00  CB C1 00 30 */	lfd f30, 0x30(r1)
/* 800512A4 0004CF04  E3 A1 00 28 */	psq_l f29, 40(r1), 0, qr0
/* 800512A8 0004CF08  CB A1 00 20 */	lfd f29, 0x20(r1)
/* 800512AC 0004CF0C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800512B0 0004CF10  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800512B4 0004CF14  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800512B8 0004CF18  80 01 00 54 */	lwz r0, 0x54(r1)
/* 800512BC 0004CF1C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 800512C0 0004CF20  7C 08 03 A6 */	mtlr r0
/* 800512C4 0004CF24  38 21 00 50 */	addi r1, r1, 0x50
/* 800512C8 0004CF28  4E 80 00 20 */	blr
/* 800512CC 0004CF2C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800512D0 0004CF30  7C 08 02 A6 */	mflr r0
/* 800512D4 0004CF34  90 01 00 14 */	stw r0, 0x14(r1)
/* 800512D8 0004CF38  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800512DC 0004CF3C  7C 7F 1B 78 */	mr r31, r3
/* 800512E0 0004CF40  80 03 00 00 */	lwz r0, 0(r3)
/* 800512E4 0004CF44  2C 00 00 00 */	cmpwi r0, 0
/* 800512E8 0004CF48  40 82 00 0C */	bne lbl_800512F4
/* 800512EC 0004CF4C  38 60 00 00 */	li r3, 0
/* 800512F0 0004CF50  48 00 00 B4 */	b lbl_800513A4
lbl_800512F4:
/* 800512F4 0004CF54  C0 43 00 14 */	lfs f2, 0x14(r3)
/* 800512F8 0004CF58  C0 03 00 10 */	lfs f0, 0x10(r3)
/* 800512FC 0004CF5C  EC 42 08 2A */	fadds f2, f2, f1
/* 80051300 0004CF60  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80051304 0004CF64  D0 43 00 14 */	stfs f2, 0x14(r3)
/* 80051308 0004CF68  4C 41 13 82 */	cror 2, 1, 2
/* 8005130C 0004CF6C  40 82 00 20 */	bne lbl_8005132C
/* 80051310 0004CF70  C0 03 00 38 */	lfs f0, 0x38(r3)
/* 80051314 0004CF74  38 00 00 00 */	li r0, 0
/* 80051318 0004CF78  80 83 00 0C */	lwz r4, 0xc(r3)
/* 8005131C 0004CF7C  D0 04 00 00 */	stfs f0, 0(r4)
/* 80051320 0004CF80  90 03 00 00 */	stw r0, 0(r3)
/* 80051324 0004CF84  38 60 00 01 */	li r3, 1
/* 80051328 0004CF88  48 00 00 7C */	b lbl_800513A4
lbl_8005132C:
/* 8005132C 0004CF8C  C0 03 00 28 */	lfs f0, 0x28(r3)
/* 80051330 0004CF90  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80051334 0004CF94  40 80 00 1C */	bge lbl_80051350
/* 80051338 0004CF98  81 83 00 5C */	lwz r12, 0x5c(r3)
/* 8005133C 0004CF9C  81 8C 00 08 */	lwz r12, 8(r12)
/* 80051340 0004CFA0  7D 89 03 A6 */	mtctr r12
/* 80051344 0004CFA4  38 63 00 3C */	addi r3, r3, 0x3c
/* 80051348 0004CFA8  4E 80 04 21 */	bctrl
/* 8005134C 0004CFAC  48 00 00 4C */	b lbl_80051398
lbl_80051350:
/* 80051350 0004CFB0  81 83 00 80 */	lwz r12, 0x80(r3)
/* 80051354 0004CFB4  81 8C 00 08 */	lwz r12, 8(r12)
/* 80051358 0004CFB8  7D 89 03 A6 */	mtctr r12
/* 8005135C 0004CFBC  38 63 00 60 */	addi r3, r3, 0x60
/* 80051360 0004CFC0  4E 80 04 21 */	bctrl
/* 80051364 0004CFC4  2C 03 00 00 */	cmpwi r3, 0
/* 80051368 0004CFC8  41 82 00 30 */	beq lbl_80051398
/* 8005136C 0004CFCC  C0 3F 00 30 */	lfs f1, 0x30(r31)
/* 80051370 0004CFD0  C0 1F 00 34 */	lfs f0, 0x34(r31)
/* 80051374 0004CFD4  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 80051378 0004CFD8  EC 21 00 2A */	fadds f1, f1, f0
/* 8005137C 0004CFDC  C0 02 84 AC */	lfs f0, lbl_80640AAC-_SDA2_BASE_(r2)
/* 80051380 0004CFE0  D0 23 00 00 */	stfs f1, 0(r3)
/* 80051384 0004CFE4  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 80051388 0004CFE8  C0 23 00 00 */	lfs f1, 0(r3)
/* 8005138C 0004CFEC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80051390 0004CFF0  40 80 00 08 */	bge lbl_80051398
/* 80051394 0004CFF4  D0 03 00 00 */	stfs f0, 0(r3)
lbl_80051398:
/* 80051398 0004CFF8  38 00 00 01 */	li r0, 1
/* 8005139C 0004CFFC  38 60 00 01 */	li r3, 1
/* 800513A0 0004D000  90 1F 00 00 */	stw r0, 0(r31)
lbl_800513A4:
/* 800513A4 0004D004  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800513A8 0004D008  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800513AC 0004D00C  7C 08 03 A6 */	mtlr r0
/* 800513B0 0004D010  38 21 00 10 */	addi r1, r1, 0x10
/* 800513B4 0004D014  4E 80 00 20 */	blr

.global func_800513B8
func_800513B8:
/* 800513B8 0004D018  38 83 02 50 */	addi r4, r3, 0x250
/* 800513BC 0004D01C  38 03 11 C8 */	addi r0, r3, 0x11c8
/* 800513C0 0004D020  7C 84 00 40 */	cmplw cr1, r4, r0
/* 800513C4 0004D024  40 84 00 84 */	bge cr1, lbl_80051448
/* 800513C8 0004D028  7C A4 00 50 */	subf r5, r4, r0
/* 800513CC 0004D02C  3C 80 66 66 */	lis r4, 0x66666667@ha
/* 800513D0 0004D030  38 C5 00 27 */	addi r6, r5, 0x27
/* 800513D4 0004D034  38 04 66 67 */	addi r0, r4, 0x66666667@l
/* 800513D8 0004D038  7C 00 30 96 */	mulhw r0, r0, r6
/* 800513DC 0004D03C  7C 00 26 70 */	srawi r0, r0, 4
/* 800513E0 0004D040  54 04 0F FE */	srwi r4, r0, 0x1f
/* 800513E4 0004D044  7C E0 22 14 */	add r7, r0, r4
/* 800513E8 0004D048  39 07 00 01 */	addi r8, r7, 1
/* 800513EC 0004D04C  2C 08 00 08 */	cmpwi r8, 8
/* 800513F0 0004D050  40 81 00 58 */	ble lbl_80051448
/* 800513F4 0004D054  38 80 00 00 */	li r4, 0
/* 800513F8 0004D058  41 85 00 28 */	bgt cr1, lbl_80051420
/* 800513FC 0004D05C  54 A0 00 01 */	rlwinm. r0, r5, 0, 0, 0
/* 80051400 0004D060  38 A0 00 01 */	li r5, 1
/* 80051404 0004D064  40 82 00 10 */	bne lbl_80051414
/* 80051408 0004D068  54 C0 00 01 */	rlwinm. r0, r6, 0, 0, 0
/* 8005140C 0004D06C  41 82 00 08 */	beq lbl_80051414
/* 80051410 0004D070  38 A0 00 00 */	li r5, 0
lbl_80051414:
/* 80051414 0004D074  2C 05 00 00 */	cmpwi r5, 0
/* 80051418 0004D078  41 82 00 08 */	beq lbl_80051420
/* 8005141C 0004D07C  38 80 00 01 */	li r4, 1
lbl_80051420:
/* 80051420 0004D080  2C 04 00 00 */	cmpwi r4, 0
/* 80051424 0004D084  41 82 00 24 */	beq lbl_80051448
/* 80051428 0004D088  54 E5 00 01 */	rlwinm. r5, r7, 0, 0, 0
/* 8005142C 0004D08C  38 80 00 01 */	li r4, 1
/* 80051430 0004D090  40 82 00 14 */	bne lbl_80051444
/* 80051434 0004D094  55 00 00 00 */	rlwinm r0, r8, 0, 0, 0
/* 80051438 0004D098  7C 05 00 00 */	cmpw r5, r0
/* 8005143C 0004D09C  41 82 00 08 */	beq lbl_80051444
/* 80051440 0004D0A0  38 80 00 00 */	li r4, 0
lbl_80051444:
/* 80051444 0004D0A4  2C 04 00 00 */	cmpwi r4, 0
lbl_80051448:
/* 80051448 0004D0A8  C0 02 84 B0 */	lfs f0, lbl_80640AB0-_SDA2_BASE_(r2)
/* 8005144C 0004D0AC  38 00 00 14 */	li r0, 0x14
/* 80051450 0004D0B0  90 03 00 10 */	stw r0, 0x10(r3)
/* 80051454 0004D0B4  D0 03 00 00 */	stfs f0, 0(r3)
/* 80051458 0004D0B8  D0 03 00 04 */	stfs f0, 4(r3)
/* 8005145C 0004D0BC  D0 03 00 08 */	stfs f0, 8(r3)
/* 80051460 0004D0C0  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 80051464 0004D0C4  4E 80 00 20 */	blr

.global func_80051468
func_80051468:
/* 80051468 0004D0C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005146C 0004D0CC  7C 08 02 A6 */	mflr r0
/* 80051470 0004D0D0  2C 03 00 00 */	cmpwi r3, 0
/* 80051474 0004D0D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80051478 0004D0D8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005147C 0004D0DC  7C 7F 1B 78 */	mr r31, r3
/* 80051480 0004D0E0  41 82 00 10 */	beq lbl_80051490
/* 80051484 0004D0E4  2C 04 00 00 */	cmpwi r4, 0
/* 80051488 0004D0E8  40 81 00 08 */	ble lbl_80051490
/* 8005148C 0004D0EC  48 18 96 2D */	bl func_801DAAB8
lbl_80051490:
/* 80051490 0004D0F0  7F E3 FB 78 */	mr r3, r31
/* 80051494 0004D0F4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80051498 0004D0F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005149C 0004D0FC  7C 08 03 A6 */	mtlr r0
/* 800514A0 0004D100  38 21 00 10 */	addi r1, r1, 0x10
/* 800514A4 0004D104  4E 80 00 20 */	blr

.global func_800514A8
func_800514A8:
/* 800514A8 0004D108  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 800514AC 0004D10C  7C 08 02 A6 */	mflr r0
/* 800514B0 0004D110  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 800514B4 0004D114  DB E1 00 90 */	stfd f31, 0x90(r1)
/* 800514B8 0004D118  F3 E1 00 98 */	psq_st f31, 152(r1), 0, qr0
/* 800514BC 0004D11C  DB C1 00 80 */	stfd f30, 0x80(r1)
/* 800514C0 0004D120  F3 C1 00 88 */	psq_st f30, 136(r1), 0, qr0
/* 800514C4 0004D124  DB A1 00 70 */	stfd f29, 0x70(r1)
/* 800514C8 0004D128  F3 A1 00 78 */	psq_st f29, 120(r1), 0, qr0
/* 800514CC 0004D12C  DB 81 00 60 */	stfd f28, 0x60(r1)
/* 800514D0 0004D130  F3 81 00 68 */	psq_st f28, 104(r1), 0, qr0
/* 800514D4 0004D134  39 61 00 60 */	addi r11, r1, 0x60
/* 800514D8 0004D138  48 17 5C 25 */	bl _savegpr_16
/* 800514DC 0004D13C  7C 7F 1B 78 */	mr r31, r3
/* 800514E0 0004D140  48 18 F3 09 */	bl func_801E07E8
/* 800514E4 0004D144  2C 03 00 00 */	cmpwi r3, 0
/* 800514E8 0004D148  40 82 03 1C */	bne lbl_80051804
/* 800514EC 0004D14C  4B FB 5B 99 */	bl func_80007084
/* 800514F0 0004D150  2C 03 00 00 */	cmpwi r3, 0
/* 800514F4 0004D154  40 82 03 10 */	bne lbl_80051804
/* 800514F8 0004D158  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 800514FC 0004D15C  88 03 00 82 */	lbz r0, 0x82(r3)
/* 80051500 0004D160  2C 00 00 00 */	cmpwi r0, 0
/* 80051504 0004D164  40 82 03 00 */	bne lbl_80051804
/* 80051508 0004D168  48 1F 32 C5 */	bl func_802447CC
/* 8005150C 0004D16C  54 72 06 3F */	clrlwi. r18, r3, 0x18
/* 80051510 0004D170  41 82 02 F4 */	beq lbl_80051804
/* 80051514 0004D174  C3 82 84 B0 */	lfs f28, lbl_80640AB0-_SDA2_BASE_(r2)
/* 80051518 0004D178  3A B2 FF FF */	addi r21, r18, -1
/* 8005151C 0004D17C  CB A2 84 C0 */	lfd f29, lbl_80640AC0-_SDA2_BASE_(r2)
/* 80051520 0004D180  3A 20 00 00 */	li r17, 0
/* 80051524 0004D184  C3 C2 84 BC */	lfs f30, lbl_80640ABC-_SDA2_BASE_(r2)
/* 80051528 0004D188  3F C0 43 30 */	lis r30, 0x4330
/* 8005152C 0004D18C  C3 E2 84 B8 */	lfs f31, lbl_80640AB8-_SDA2_BASE_(r2)
/* 80051530 0004D190  3A E0 00 04 */	li r23, 4
/* 80051534 0004D194  3B 00 00 02 */	li r24, 2
/* 80051538 0004D198  3B 20 00 01 */	li r25, 1
/* 8005153C 0004D19C  3B 40 00 05 */	li r26, 5
/* 80051540 0004D1A0  3B 60 00 00 */	li r27, 0
/* 80051544 0004D1A4  3B 80 00 07 */	li r28, 7
/* 80051548 0004D1A8  3B A0 00 03 */	li r29, 3
/* 8005154C 0004D1AC  48 00 02 AC */	b lbl_800517F8
lbl_80051550:
/* 80051550 0004D1B0  7C 11 A8 50 */	subf r0, r17, r21
/* 80051554 0004D1B4  54 14 06 3F */	clrlwi. r20, r0, 0x18
/* 80051558 0004D1B8  40 82 00 14 */	bne lbl_8005156C
/* 8005155C 0004D1BC  38 60 00 24 */	li r3, 0x24
/* 80051560 0004D1C0  48 00 94 99 */	bl func_8005A9F8
/* 80051564 0004D1C4  7C 76 1B 78 */	mr r22, r3
/* 80051568 0004D1C8  48 00 00 10 */	b lbl_80051578
lbl_8005156C:
/* 8005156C 0004D1CC  38 60 00 25 */	li r3, 0x25
/* 80051570 0004D1D0  48 00 94 89 */	bl func_8005A9F8
/* 80051574 0004D1D4  7C 76 1B 78 */	mr r22, r3
lbl_80051578:
/* 80051578 0004D1D8  7F E3 FB 78 */	mr r3, r31
/* 8005157C 0004D1DC  7E 84 A3 78 */	mr r4, r20
/* 80051580 0004D1E0  48 00 03 D5 */	bl func_80051954
/* 80051584 0004D1E4  56 80 1D 78 */	rlwinm r0, r20, 3, 0x15, 0x1c
/* 80051588 0004D1E8  7F E3 FB 78 */	mr r3, r31
/* 8005158C 0004D1EC  7E 7F 02 14 */	add r19, r31, r0
/* 80051590 0004D1F0  7E 85 A3 78 */	mr r5, r20
/* 80051594 0004D1F4  7E 64 9B 78 */	mr r4, r19
/* 80051598 0004D1F8  48 00 0A 3D */	bl func_80051FD4
/* 8005159C 0004D1FC  C0 22 84 B4 */	lfs f1, lbl_80640AB4-_SDA2_BASE_(r2)
/* 800515A0 0004D200  7E 83 A3 78 */	mr r3, r20
/* 800515A4 0004D204  FC 40 08 90 */	fmr f2, f1
/* 800515A8 0004D208  48 24 DD FD */	bl func_8029F3A4
/* 800515AC 0004D20C  92 E1 00 08 */	stw r23, 8(r1)
/* 800515B0 0004D210  38 60 00 00 */	li r3, 0
/* 800515B4 0004D214  38 80 00 04 */	li r4, 4
/* 800515B8 0004D218  38 A0 00 00 */	li r5, 0
/* 800515BC 0004D21C  38 C0 00 00 */	li r6, 0
/* 800515C0 0004D220  38 E0 00 01 */	li r7, 1
/* 800515C4 0004D224  39 00 00 05 */	li r8, 5
/* 800515C8 0004D228  39 20 00 01 */	li r9, 1
/* 800515CC 0004D22C  39 40 00 01 */	li r10, 1
/* 800515D0 0004D230  48 1E B9 61 */	bl func_8023CF30
/* 800515D4 0004D234  7C 64 1B 78 */	mr r4, r3
/* 800515D8 0004D238  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 800515DC 0004D23C  48 1E 6A E1 */	bl func_802380BC
/* 800515E0 0004D240  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 800515E4 0004D244  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800515E8 0004D248  93 03 01 84 */	stw r24, 0x184(r3)
/* 800515EC 0004D24C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800515F0 0004D250  80 03 00 10 */	lwz r0, 0x10(r3)
/* 800515F4 0004D254  60 00 00 02 */	ori r0, r0, 2
/* 800515F8 0004D258  90 03 00 10 */	stw r0, 0x10(r3)
/* 800515FC 0004D25C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051600 0004D260  80 03 00 00 */	lwz r0, 0(r3)
/* 80051604 0004D264  60 00 00 02 */	ori r0, r0, 2
/* 80051608 0004D268  90 03 00 00 */	stw r0, 0(r3)
/* 8005160C 0004D26C  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80051610 0004D270  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051614 0004D274  93 23 0A 24 */	stw r25, 0xa24(r3)
/* 80051618 0004D278  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005161C 0004D27C  92 E3 0A 28 */	stw r23, 0xa28(r3)
/* 80051620 0004D280  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051624 0004D284  93 43 0A 2C */	stw r26, 0xa2c(r3)
/* 80051628 0004D288  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005162C 0004D28C  93 43 0A 30 */	stw r26, 0xa30(r3)
/* 80051630 0004D290  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051634 0004D294  80 03 00 64 */	lwz r0, 0x64(r3)
/* 80051638 0004D298  60 00 00 01 */	ori r0, r0, 1
/* 8005163C 0004D29C  90 03 00 64 */	stw r0, 0x64(r3)
/* 80051640 0004D2A0  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051644 0004D2A4  80 03 00 00 */	lwz r0, 0(r3)
/* 80051648 0004D2A8  60 00 00 40 */	ori r0, r0, 0x40
/* 8005164C 0004D2AC  90 03 00 00 */	stw r0, 0(r3)
/* 80051650 0004D2B0  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80051654 0004D2B4  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051658 0004D2B8  9B 23 0A 36 */	stb r25, 0xa36(r3)
/* 8005165C 0004D2BC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051660 0004D2C0  9B 23 0A 37 */	stb r25, 0xa37(r3)
/* 80051664 0004D2C4  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051668 0004D2C8  9B 63 0A 38 */	stb r27, 0xa38(r3)
/* 8005166C 0004D2CC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051670 0004D2D0  80 03 00 64 */	lwz r0, 0x64(r3)
/* 80051674 0004D2D4  60 00 00 04 */	ori r0, r0, 4
/* 80051678 0004D2D8  90 03 00 64 */	stw r0, 0x64(r3)
/* 8005167C 0004D2DC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051680 0004D2E0  80 03 00 00 */	lwz r0, 0(r3)
/* 80051684 0004D2E4  60 00 00 40 */	ori r0, r0, 0x40
/* 80051688 0004D2E8  90 03 00 00 */	stw r0, 0(r3)
/* 8005168C 0004D2EC  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80051690 0004D2F0  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051694 0004D2F4  93 83 0A 44 */	stw r28, 0xa44(r3)
/* 80051698 0004D2F8  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005169C 0004D2FC  9B 63 0A 50 */	stb r27, 0xa50(r3)
/* 800516A0 0004D300  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516A4 0004D304  93 63 0A 48 */	stw r27, 0xa48(r3)
/* 800516A8 0004D308  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516AC 0004D30C  93 83 0A 4C */	stw r28, 0xa4c(r3)
/* 800516B0 0004D310  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516B4 0004D314  9B 63 0A 51 */	stb r27, 0xa51(r3)
/* 800516B8 0004D318  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516BC 0004D31C  9B 63 0A 52 */	stb r27, 0xa52(r3)
/* 800516C0 0004D320  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516C4 0004D324  80 03 00 64 */	lwz r0, 0x64(r3)
/* 800516C8 0004D328  60 00 00 10 */	ori r0, r0, 0x10
/* 800516CC 0004D32C  90 03 00 64 */	stw r0, 0x64(r3)
/* 800516D0 0004D330  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516D4 0004D334  80 03 00 00 */	lwz r0, 0(r3)
/* 800516D8 0004D338  60 00 00 40 */	ori r0, r0, 0x40
/* 800516DC 0004D33C  90 03 00 00 */	stw r0, 0(r3)
/* 800516E0 0004D340  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 800516E4 0004D344  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516E8 0004D348  9B 63 0A 3C */	stb r27, 0xa3c(r3)
/* 800516EC 0004D34C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516F0 0004D350  93 A3 0A 40 */	stw r29, 0xa40(r3)
/* 800516F4 0004D354  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800516F8 0004D358  80 03 00 64 */	lwz r0, 0x64(r3)
/* 800516FC 0004D35C  60 00 00 08 */	ori r0, r0, 8
/* 80051700 0004D360  90 03 00 64 */	stw r0, 0x64(r3)
/* 80051704 0004D364  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051708 0004D368  80 03 00 00 */	lwz r0, 0(r3)
/* 8005170C 0004D36C  60 00 00 40 */	ori r0, r0, 0x40
/* 80051710 0004D370  90 03 00 00 */	stw r0, 0(r3)
/* 80051714 0004D374  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80051718 0004D378  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005171C 0004D37C  80 03 15 3C */	lwz r0, 0x153c(r3)
/* 80051720 0004D380  7C 00 B0 40 */	cmplw r0, r22
/* 80051724 0004D384  40 82 00 14 */	bne lbl_80051738
/* 80051728 0004D388  88 16 00 07 */	lbz r0, 7(r22)
/* 8005172C 0004D38C  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 80051730 0004D390  2C 00 00 01 */	cmpwi r0, 1
/* 80051734 0004D394  40 82 00 1C */	bne lbl_80051750
lbl_80051738:
/* 80051738 0004D398  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005173C 0004D39C  92 C3 15 3C */	stw r22, 0x153c(r3)
/* 80051740 0004D3A0  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80051744 0004D3A4  80 03 15 38 */	lwz r0, 0x1538(r3)
/* 80051748 0004D3A8  60 00 00 01 */	ori r0, r0, 1
/* 8005174C 0004D3AC  90 03 15 38 */	stw r0, 0x1538(r3)
lbl_80051750:
/* 80051750 0004D3B0  56 80 34 B2 */	rlwinm r0, r20, 6, 0x12, 0x19
/* 80051754 0004D3B4  3A 00 00 07 */	li r16, 7
/* 80051758 0004D3B8  7E DF 02 14 */	add r22, r31, r0
/* 8005175C 0004D3BC  3A 96 00 4C */	addi r20, r22, 0x4c
/* 80051760 0004D3C0  3A D6 00 38 */	addi r22, r22, 0x38
lbl_80051764:
/* 80051764 0004D3C4  C0 16 00 14 */	lfs f0, 0x14(r22)
/* 80051768 0004D3C8  FC 1C 00 00 */	fcmpu cr0, f28, f0
/* 8005176C 0004D3CC  40 82 00 10 */	bne lbl_8005177C
/* 80051770 0004D3D0  C0 16 00 18 */	lfs f0, 0x18(r22)
/* 80051774 0004D3D4  FC 1C 00 00 */	fcmpu cr0, f28, f0
/* 80051778 0004D3D8  41 82 00 44 */	beq lbl_800517BC
lbl_8005177C:
/* 8005177C 0004D3DC  7E 00 07 74 */	extsb r0, r16
/* 80051780 0004D3E0  93 C1 00 10 */	stw r30, 0x10(r1)
/* 80051784 0004D3E4  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80051788 0004D3E8  7F E3 FB 78 */	mr r3, r31
/* 8005178C 0004D3EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80051790 0004D3F0  7E 84 A3 78 */	mr r4, r20
/* 80051794 0004D3F4  C8 01 00 10 */	lfd f0, 0x10(r1)
/* 80051798 0004D3F8  EC 00 E8 28 */	fsubs f0, f0, f29
/* 8005179C 0004D3FC  EC 1E 00 28 */	fsubs f0, f30, f0
/* 800517A0 0004D400  EC 00 F0 24 */	fdivs f0, f0, f30
/* 800517A4 0004D404  EC 1F 00 32 */	fmuls f0, f31, f0
/* 800517A8 0004D408  FC 00 00 1E */	fctiwz f0, f0
/* 800517AC 0004D40C  D8 01 00 18 */	stfd f0, 0x18(r1)
/* 800517B0 0004D410  80 A1 00 1C */	lwz r5, 0x1c(r1)
/* 800517B4 0004D414  54 A5 06 3E */	clrlwi r5, r5, 0x18
/* 800517B8 0004D418  48 00 00 85 */	bl func_8005183C
lbl_800517BC:
/* 800517BC 0004D41C  36 10 FF FF */	addic. r16, r16, -1
/* 800517C0 0004D420  3A D6 FF F8 */	addi r22, r22, -8
/* 800517C4 0004D424  3A 94 FF F8 */	addi r20, r20, -8
/* 800517C8 0004D428  41 81 FF 9C */	bgt lbl_80051764
/* 800517CC 0004D42C  C0 13 00 00 */	lfs f0, 0(r19)
/* 800517D0 0004D430  FC 1C 00 00 */	fcmpu cr0, f28, f0
/* 800517D4 0004D434  40 82 00 10 */	bne lbl_800517E4
/* 800517D8 0004D438  C0 13 00 04 */	lfs f0, 4(r19)
/* 800517DC 0004D43C  FC 1C 00 00 */	fcmpu cr0, f28, f0
/* 800517E0 0004D440  41 82 00 14 */	beq lbl_800517F4
lbl_800517E4:
/* 800517E4 0004D444  7F E3 FB 78 */	mr r3, r31
/* 800517E8 0004D448  7E 64 9B 78 */	mr r4, r19
/* 800517EC 0004D44C  38 A0 00 FF */	li r5, 0xff
/* 800517F0 0004D450  48 00 00 4D */	bl func_8005183C
lbl_800517F4:
/* 800517F4 0004D454  3A 31 00 01 */	addi r17, r17, 1
lbl_800517F8:
/* 800517F8 0004D458  56 20 06 3E */	clrlwi r0, r17, 0x18
/* 800517FC 0004D45C  7C 00 90 40 */	cmplw r0, r18
/* 80051800 0004D460  41 80 FD 50 */	blt lbl_80051550
lbl_80051804:
/* 80051804 0004D464  E3 E1 00 98 */	psq_l f31, 152(r1), 0, qr0
/* 80051808 0004D468  CB E1 00 90 */	lfd f31, 0x90(r1)
/* 8005180C 0004D46C  E3 C1 00 88 */	psq_l f30, 136(r1), 0, qr0
/* 80051810 0004D470  CB C1 00 80 */	lfd f30, 0x80(r1)
/* 80051814 0004D474  E3 A1 00 78 */	psq_l f29, 120(r1), 0, qr0
/* 80051818 0004D478  CB A1 00 70 */	lfd f29, 0x70(r1)
/* 8005181C 0004D47C  E3 81 00 68 */	psq_l f28, 104(r1), 0, qr0
/* 80051820 0004D480  39 61 00 60 */	addi r11, r1, 0x60
/* 80051824 0004D484  CB 81 00 60 */	lfd f28, 0x60(r1)
/* 80051828 0004D488  48 17 59 21 */	bl _restgpr_16
/* 8005182C 0004D48C  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 80051830 0004D490  7C 08 03 A6 */	mtlr r0
/* 80051834 0004D494  38 21 00 A0 */	addi r1, r1, 0xa0
/* 80051838 0004D498  4E 80 00 20 */	blr

.global func_8005183C
func_8005183C:
/* 8005183C 0004D49C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80051840 0004D4A0  7C 08 02 A6 */	mflr r0
/* 80051844 0004D4A4  38 C0 00 FF */	li r6, 0xff
/* 80051848 0004D4A8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005184C 0004D4AC  38 00 00 80 */	li r0, 0x80
/* 80051850 0004D4B0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80051854 0004D4B4  7C 9F 23 78 */	mr r31, r4
/* 80051858 0004D4B8  38 80 00 04 */	li r4, 4
/* 8005185C 0004D4BC  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80051860 0004D4C0  98 C1 00 08 */	stb r6, 8(r1)
/* 80051864 0004D4C4  90 03 17 38 */	stw r0, 0x1738(r3)
/* 80051868 0004D4C8  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005186C 0004D4CC  98 C1 00 09 */	stb r6, 9(r1)
/* 80051870 0004D4D0  98 C1 00 0A */	stb r6, 0xa(r1)
/* 80051874 0004D4D4  98 A1 00 0B */	stb r5, 0xb(r1)
/* 80051878 0004D4D8  48 1E 1C B5 */	bl func_8023352C
/* 8005187C 0004D4DC  C0 42 84 C8 */	lfs f2, lbl_80640AC8-_SDA2_BASE_(r2)
/* 80051880 0004D4E0  3C 60 CC 01 */	lis r3, 0xCC008000@ha
/* 80051884 0004D4E4  C0 1F 00 00 */	lfs f0, 0(r31)
/* 80051888 0004D4E8  C0 3F 00 04 */	lfs f1, 4(r31)
/* 8005188C 0004D4EC  EC 00 10 28 */	fsubs f0, f0, f2
/* 80051890 0004D4F0  80 01 00 08 */	lwz r0, 8(r1)
/* 80051894 0004D4F4  EC 21 10 28 */	fsubs f1, f1, f2
/* 80051898 0004D4F8  D0 03 80 00 */	stfs f0, 0xCC008000@l(r3)
/* 8005189C 0004D4FC  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 800518A0 0004D500  90 03 80 00 */	stw r0, -0x8000(r3)
/* 800518A4 0004D504  C0 02 84 B0 */	lfs f0, lbl_80640AB0-_SDA2_BASE_(r2)
/* 800518A8 0004D508  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 800518AC 0004D50C  C0 02 84 B0 */	lfs f0, lbl_80640AB0-_SDA2_BASE_(r2)
/* 800518B0 0004D510  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 800518B4 0004D514  C0 1F 00 00 */	lfs f0, 0(r31)
/* 800518B8 0004D518  C0 3F 00 04 */	lfs f1, 4(r31)
/* 800518BC 0004D51C  EC 02 00 2A */	fadds f0, f2, f0
/* 800518C0 0004D520  EC 21 10 28 */	fsubs f1, f1, f2
/* 800518C4 0004D524  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 800518C8 0004D528  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 800518CC 0004D52C  90 03 80 00 */	stw r0, -0x8000(r3)
/* 800518D0 0004D530  C0 02 84 CC */	lfs f0, lbl_80640ACC-_SDA2_BASE_(r2)
/* 800518D4 0004D534  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 800518D8 0004D538  C0 02 84 B0 */	lfs f0, lbl_80640AB0-_SDA2_BASE_(r2)
/* 800518DC 0004D53C  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 800518E0 0004D540  C0 1F 00 00 */	lfs f0, 0(r31)
/* 800518E4 0004D544  C0 3F 00 04 */	lfs f1, 4(r31)
/* 800518E8 0004D548  EC 02 00 2A */	fadds f0, f2, f0
/* 800518EC 0004D54C  EC 22 08 2A */	fadds f1, f2, f1
/* 800518F0 0004D550  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 800518F4 0004D554  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 800518F8 0004D558  90 03 80 00 */	stw r0, -0x8000(r3)
/* 800518FC 0004D55C  C0 02 84 CC */	lfs f0, lbl_80640ACC-_SDA2_BASE_(r2)
/* 80051900 0004D560  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 80051904 0004D564  C0 02 84 CC */	lfs f0, lbl_80640ACC-_SDA2_BASE_(r2)
/* 80051908 0004D568  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 8005190C 0004D56C  C0 1F 00 00 */	lfs f0, 0(r31)
/* 80051910 0004D570  C0 3F 00 04 */	lfs f1, 4(r31)
/* 80051914 0004D574  EC 00 10 28 */	fsubs f0, f0, f2
/* 80051918 0004D578  EC 22 08 2A */	fadds f1, f2, f1
/* 8005191C 0004D57C  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 80051920 0004D580  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 80051924 0004D584  90 03 80 00 */	stw r0, -0x8000(r3)
/* 80051928 0004D588  C0 02 84 B0 */	lfs f0, lbl_80640AB0-_SDA2_BASE_(r2)
/* 8005192C 0004D58C  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 80051930 0004D590  C0 02 84 CC */	lfs f0, lbl_80640ACC-_SDA2_BASE_(r2)
/* 80051934 0004D594  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 80051938 0004D598  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005193C 0004D59C  48 1E 1C 45 */	bl func_80233580
/* 80051940 0004D5A0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80051944 0004D5A4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80051948 0004D5A8  7C 08 03 A6 */	mtlr r0
/* 8005194C 0004D5AC  38 21 00 20 */	addi r1, r1, 0x20
/* 80051950 0004D5B0  4E 80 00 20 */	blr

.global func_80051954
func_80051954:
/* 80051954 0004D5B4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80051958 0004D5B8  7C 08 02 A6 */	mflr r0
/* 8005195C 0004D5BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80051960 0004D5C0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80051964 0004D5C4  7C 9F 23 78 */	mr r31, r4
/* 80051968 0004D5C8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8005196C 0004D5CC  7C 7E 1B 78 */	mr r30, r3
/* 80051970 0004D5D0  7F E3 FB 78 */	mr r3, r31
/* 80051974 0004D5D4  48 1F 2E 29 */	bl func_8024479C
/* 80051978 0004D5D8  2C 03 00 00 */	cmpwi r3, 0
/* 8005197C 0004D5DC  41 82 01 1C */	beq lbl_80051A98
/* 80051980 0004D5E0  C0 02 84 B0 */	lfs f0, lbl_80640AB0-_SDA2_BASE_(r2)
/* 80051984 0004D5E4  57 E6 1D 78 */	rlwinm r6, r31, 3, 0x15, 0x1c
/* 80051988 0004D5E8  7C BE 32 14 */	add r5, r30, r6
/* 8005198C 0004D5EC  7C 1E 35 2E */	stfsx f0, r30, r6
/* 80051990 0004D5F0  D0 05 00 04 */	stfs f0, 4(r5)
/* 80051994 0004D5F4  80 03 00 40 */	lwz r0, 0x40(r3)
/* 80051998 0004D5F8  2C 00 00 00 */	cmpwi r0, 0
/* 8005199C 0004D5FC  41 82 00 FC */	beq lbl_80051A98
/* 800519A0 0004D600  7C 64 1B 78 */	mr r4, r3
/* 800519A4 0004D604  38 E0 00 00 */	li r7, 0
/* 800519A8 0004D608  48 00 00 E4 */	b lbl_80051A8C
lbl_800519AC:
/* 800519AC 0004D60C  80 03 00 40 */	lwz r0, 0x40(r3)
/* 800519B0 0004D610  2C 00 00 00 */	cmpwi r0, 0
/* 800519B4 0004D614  40 81 00 0C */	ble lbl_800519C0
/* 800519B8 0004D618  7C 00 38 00 */	cmpw r0, r7
/* 800519BC 0004D61C  41 81 00 0C */	bgt lbl_800519C8
lbl_800519C0:
/* 800519C0 0004D620  38 00 00 00 */	li r0, 0
/* 800519C4 0004D624  48 00 00 34 */	b lbl_800519F8
lbl_800519C8:
/* 800519C8 0004D628  88 04 00 A2 */	lbz r0, 0xa2(r4)
/* 800519CC 0004D62C  7C 00 07 75 */	extsb. r0, r0
/* 800519D0 0004D630  40 81 00 0C */	ble lbl_800519DC
/* 800519D4 0004D634  2C 00 00 02 */	cmpwi r0, 2
/* 800519D8 0004D638  40 81 00 0C */	ble lbl_800519E4
lbl_800519DC:
/* 800519DC 0004D63C  38 00 00 00 */	li r0, 0
/* 800519E0 0004D640  48 00 00 18 */	b lbl_800519F8
lbl_800519E4:
/* 800519E4 0004D644  C0 04 00 64 */	lfs f0, 0x64(r4)
/* 800519E8 0004D648  38 00 00 01 */	li r0, 1
/* 800519EC 0004D64C  D0 05 00 00 */	stfs f0, 0(r5)
/* 800519F0 0004D650  C0 04 00 68 */	lfs f0, 0x68(r4)
/* 800519F4 0004D654  D0 05 00 04 */	stfs f0, 4(r5)
lbl_800519F8:
/* 800519F8 0004D658  2C 00 00 00 */	cmpwi r0, 0
/* 800519FC 0004D65C  41 82 00 88 */	beq lbl_80051A84
/* 80051A00 0004D660  80 7E 00 10 */	lwz r3, 0x10(r30)
/* 80051A04 0004D664  3C 00 43 30 */	lis r0, 0x4330
/* 80051A08 0004D668  C0 22 84 D8 */	lfs f1, lbl_80640AD8-_SDA2_BASE_(r2)
/* 80051A0C 0004D66C  7C 9E 32 14 */	add r4, r30, r6
/* 80051A10 0004D670  6C 63 80 00 */	xoris r3, r3, 0x8000
/* 80051A14 0004D674  7C 1E 34 2E */	lfsx f0, r30, r6
/* 80051A18 0004D678  90 61 00 0C */	stw r3, 0xc(r1)
/* 80051A1C 0004D67C  EC 21 00 32 */	fmuls f1, f1, f0
/* 80051A20 0004D680  C0 C2 84 D4 */	lfs f6, lbl_80640AD4-_SDA2_BASE_(r2)
/* 80051A24 0004D684  90 01 00 08 */	stw r0, 8(r1)
/* 80051A28 0004D688  C8 82 84 C0 */	lfd f4, lbl_80640AC0-_SDA2_BASE_(r2)
/* 80051A2C 0004D68C  C8 01 00 08 */	lfd f0, 8(r1)
/* 80051A30 0004D690  EC A6 00 72 */	fmuls f5, f6, f1
/* 80051A34 0004D694  C0 22 84 D0 */	lfs f1, lbl_80640AD0-_SDA2_BASE_(r2)
/* 80051A38 0004D698  EC 60 20 28 */	fsubs f3, f0, f4
/* 80051A3C 0004D69C  90 01 00 10 */	stw r0, 0x10(r1)
/* 80051A40 0004D6A0  C0 42 84 E0 */	lfs f2, lbl_80640AE0-_SDA2_BASE_(r2)
/* 80051A44 0004D6A4  C0 02 84 DC */	lfs f0, lbl_80640ADC-_SDA2_BASE_(r2)
/* 80051A48 0004D6A8  EC 65 18 24 */	fdivs f3, f5, f3
/* 80051A4C 0004D6AC  EC 21 18 2A */	fadds f1, f1, f3
/* 80051A50 0004D6B0  7C 3E 35 2E */	stfsx f1, r30, r6
/* 80051A54 0004D6B4  80 1E 00 10 */	lwz r0, 0x10(r30)
/* 80051A58 0004D6B8  C0 24 00 04 */	lfs f1, 4(r4)
/* 80051A5C 0004D6BC  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80051A60 0004D6C0  EC 42 00 72 */	fmuls f2, f2, f1
/* 80051A64 0004D6C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80051A68 0004D6C8  C8 21 00 10 */	lfd f1, 0x10(r1)
/* 80051A6C 0004D6CC  EC 46 00 B2 */	fmuls f2, f6, f2
/* 80051A70 0004D6D0  EC 21 20 28 */	fsubs f1, f1, f4
/* 80051A74 0004D6D4  EC 22 08 24 */	fdivs f1, f2, f1
/* 80051A78 0004D6D8  EC 00 08 2A */	fadds f0, f0, f1
/* 80051A7C 0004D6DC  D0 04 00 04 */	stfs f0, 4(r4)
/* 80051A80 0004D6E0  48 00 00 18 */	b lbl_80051A98
lbl_80051A84:
/* 80051A84 0004D6E4  38 84 00 84 */	addi r4, r4, 0x84
/* 80051A88 0004D6E8  38 E7 00 01 */	addi r7, r7, 1
lbl_80051A8C:
/* 80051A8C 0004D6EC  80 03 00 40 */	lwz r0, 0x40(r3)
/* 80051A90 0004D6F0  7C 07 00 00 */	cmpw r7, r0
/* 80051A94 0004D6F4  41 80 FF 18 */	blt lbl_800519AC
lbl_80051A98:
/* 80051A98 0004D6F8  57 E0 1D 78 */	rlwinm r0, r31, 3, 0x15, 0x1c
/* 80051A9C 0004D6FC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80051AA0 0004D700  7C 9E 02 14 */	add r4, r30, r0
/* 80051AA4 0004D704  7C 7E 00 2E */	lwzx r3, r30, r0
/* 80051AA8 0004D708  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80051AAC 0004D70C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80051AB0 0004D710  80 84 00 04 */	lwz r4, 4(r4)
/* 80051AB4 0004D714  7C 08 03 A6 */	mtlr r0
/* 80051AB8 0004D718  38 21 00 20 */	addi r1, r1, 0x20
/* 80051ABC 0004D71C  4E 80 00 20 */	blr

.global func_80051AC0
func_80051AC0:
/* 80051AC0 0004D720  28 04 00 64 */	cmplwi r4, 0x64
/* 80051AC4 0004D724  4C 80 00 20 */	bgelr
/* 80051AC8 0004D728  1C 04 00 28 */	mulli r0, r4, 0x28
/* 80051ACC 0004D72C  C0 05 00 00 */	lfs f0, 0(r5)
/* 80051AD0 0004D730  7C 63 02 14 */	add r3, r3, r0
/* 80051AD4 0004D734  D0 03 02 28 */	stfs f0, 0x228(r3)
/* 80051AD8 0004D738  C0 05 00 10 */	lfs f0, 0x10(r5)
/* 80051ADC 0004D73C  D0 03 02 2C */	stfs f0, 0x22c(r3)
/* 80051AE0 0004D740  C0 05 00 04 */	lfs f0, 4(r5)
/* 80051AE4 0004D744  D0 03 02 30 */	stfs f0, 0x230(r3)
/* 80051AE8 0004D748  C0 05 00 14 */	lfs f0, 0x14(r5)
/* 80051AEC 0004D74C  D0 03 02 34 */	stfs f0, 0x234(r3)
/* 80051AF0 0004D750  C0 05 00 08 */	lfs f0, 8(r5)
/* 80051AF4 0004D754  D0 03 02 38 */	stfs f0, 0x238(r3)
/* 80051AF8 0004D758  C0 05 00 18 */	lfs f0, 0x18(r5)
/* 80051AFC 0004D75C  D0 03 02 3C */	stfs f0, 0x23c(r3)
/* 80051B00 0004D760  C0 05 00 0C */	lfs f0, 0xc(r5)
/* 80051B04 0004D764  D0 03 02 40 */	stfs f0, 0x240(r3)
/* 80051B08 0004D768  C0 05 00 1C */	lfs f0, 0x1c(r5)
/* 80051B0C 0004D76C  D0 03 02 44 */	stfs f0, 0x244(r3)
/* 80051B10 0004D770  4E 80 00 20 */	blr
lbl_80051B14:
/* 80051B14 0004D774  28 04 00 64 */	cmplwi r4, 0x64
/* 80051B18 0004D778  4C 80 00 20 */	bgelr
/* 80051B1C 0004D77C  1C 04 00 28 */	mulli r0, r4, 0x28
/* 80051B20 0004D780  7C 63 02 14 */	add r3, r3, r0
/* 80051B24 0004D784  C0 03 02 28 */	lfs f0, 0x228(r3)
/* 80051B28 0004D788  D0 05 00 00 */	stfs f0, 0(r5)
/* 80051B2C 0004D78C  C0 03 02 2C */	lfs f0, 0x22c(r3)
/* 80051B30 0004D790  D0 05 00 10 */	stfs f0, 0x10(r5)
/* 80051B34 0004D794  C0 03 02 30 */	lfs f0, 0x230(r3)
/* 80051B38 0004D798  D0 05 00 04 */	stfs f0, 4(r5)
/* 80051B3C 0004D79C  C0 03 02 34 */	lfs f0, 0x234(r3)
/* 80051B40 0004D7A0  D0 05 00 14 */	stfs f0, 0x14(r5)
/* 80051B44 0004D7A4  C0 03 02 38 */	lfs f0, 0x238(r3)
/* 80051B48 0004D7A8  D0 05 00 08 */	stfs f0, 8(r5)
/* 80051B4C 0004D7AC  C0 03 02 3C */	lfs f0, 0x23c(r3)
/* 80051B50 0004D7B0  D0 05 00 18 */	stfs f0, 0x18(r5)
/* 80051B54 0004D7B4  C0 03 02 40 */	lfs f0, 0x240(r3)
/* 80051B58 0004D7B8  D0 05 00 0C */	stfs f0, 0xc(r5)
/* 80051B5C 0004D7BC  C0 03 02 44 */	lfs f0, 0x244(r3)
/* 80051B60 0004D7C0  D0 05 00 1C */	stfs f0, 0x1c(r5)
/* 80051B64 0004D7C4  4E 80 00 20 */	blr

.global func_80051B68
func_80051B68:
/* 80051B68 0004D7C8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80051B6C 0004D7CC  7C 08 02 A6 */	mflr r0
/* 80051B70 0004D7D0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80051B74 0004D7D4  54 80 1D 78 */	rlwinm r0, r4, 3, 0x15, 0x1c
/* 80051B78 0004D7D8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80051B7C 0004D7DC  3B E3 02 28 */	addi r31, r3, 0x228
/* 80051B80 0004D7E0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80051B84 0004D7E4  7F C3 02 14 */	add r30, r3, r0
/* 80051B88 0004D7E8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80051B8C 0004D7EC  3B A0 00 00 */	li r29, 0
/* 80051B90 0004D7F0  93 81 00 10 */	stw r28, 0x10(r1)
/* 80051B94 0004D7F4  7C 7C 1B 78 */	mr r28, r3
lbl_80051B98:
/* 80051B98 0004D7F8  7F 83 E3 78 */	mr r3, r28
/* 80051B9C 0004D7FC  7F C4 F3 78 */	mr r4, r30
/* 80051BA0 0004D800  7F E5 FB 78 */	mr r5, r31
/* 80051BA4 0004D804  48 00 00 49 */	bl func_80051BEC
/* 80051BA8 0004D808  2C 03 00 00 */	cmpwi r3, 0
/* 80051BAC 0004D80C  41 82 00 0C */	beq lbl_80051BB8
/* 80051BB0 0004D810  7F A3 EB 78 */	mr r3, r29
/* 80051BB4 0004D814  48 00 00 18 */	b lbl_80051BCC
lbl_80051BB8:
/* 80051BB8 0004D818  3B BD 00 01 */	addi r29, r29, 1
/* 80051BBC 0004D81C  3B FF 00 28 */	addi r31, r31, 0x28
/* 80051BC0 0004D820  2C 1D 00 64 */	cmpwi r29, 0x64
/* 80051BC4 0004D824  41 80 FF D4 */	blt lbl_80051B98
/* 80051BC8 0004D828  38 60 00 00 */	li r3, 0
lbl_80051BCC:
/* 80051BCC 0004D82C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80051BD0 0004D830  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80051BD4 0004D834  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80051BD8 0004D838  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80051BDC 0004D83C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80051BE0 0004D840  7C 08 03 A6 */	mtlr r0
/* 80051BE4 0004D844  38 21 00 20 */	addi r1, r1, 0x20
/* 80051BE8 0004D848  4E 80 00 20 */	blr

.global func_80051BEC
func_80051BEC:
/* 80051BEC 0004D84C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80051BF0 0004D850  38 00 00 04 */	li r0, 4
/* 80051BF4 0004D854  7C AC 2B 78 */	mr r12, r5
/* 80051BF8 0004D858  38 C0 00 00 */	li r6, 0
/* 80051BFC 0004D85C  C0 24 00 00 */	lfs f1, 0(r4)
/* 80051C00 0004D860  C0 04 00 04 */	lfs f0, 4(r4)
/* 80051C04 0004D864  38 80 00 00 */	li r4, 0
/* 80051C08 0004D868  FC 20 08 1E */	fctiwz f1, f1
/* 80051C0C 0004D86C  FC 00 00 1E */	fctiwz f0, f0
/* 80051C10 0004D870  D8 21 00 08 */	stfd f1, 8(r1)
/* 80051C14 0004D874  D8 01 00 10 */	stfd f0, 0x10(r1)
/* 80051C18 0004D878  80 E1 00 0C */	lwz r7, 0xc(r1)
/* 80051C1C 0004D87C  81 01 00 14 */	lwz r8, 0x14(r1)
/* 80051C20 0004D880  7C 09 03 A6 */	mtctr r0
lbl_80051C24:
/* 80051C24 0004D884  C0 25 00 00 */	lfs f1, 0(r5)
/* 80051C28 0004D888  2C 06 00 03 */	cmpwi r6, 3
/* 80051C2C 0004D88C  C0 05 00 04 */	lfs f0, 4(r5)
/* 80051C30 0004D890  38 A5 00 08 */	addi r5, r5, 8
/* 80051C34 0004D894  FC 20 08 1E */	fctiwz f1, f1
/* 80051C38 0004D898  FC 00 00 1E */	fctiwz f0, f0
/* 80051C3C 0004D89C  D8 21 00 10 */	stfd f1, 0x10(r1)
/* 80051C40 0004D8A0  D8 01 00 08 */	stfd f0, 8(r1)
/* 80051C44 0004D8A4  81 21 00 14 */	lwz r9, 0x14(r1)
/* 80051C48 0004D8A8  81 41 00 0C */	lwz r10, 0xc(r1)
/* 80051C4C 0004D8AC  41 80 00 28 */	blt lbl_80051C74
/* 80051C50 0004D8B0  C0 2C 00 00 */	lfs f1, 0(r12)
/* 80051C54 0004D8B4  C0 0C 00 04 */	lfs f0, 4(r12)
/* 80051C58 0004D8B8  FC 20 08 1E */	fctiwz f1, f1
/* 80051C5C 0004D8BC  FC 00 00 1E */	fctiwz f0, f0
/* 80051C60 0004D8C0  D8 21 00 10 */	stfd f1, 0x10(r1)
/* 80051C64 0004D8C4  D8 01 00 08 */	stfd f0, 8(r1)
/* 80051C68 0004D8C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80051C6C 0004D8CC  81 61 00 0C */	lwz r11, 0xc(r1)
/* 80051C70 0004D8D0  48 00 00 24 */	b lbl_80051C94
lbl_80051C74:
/* 80051C74 0004D8D4  C0 25 00 00 */	lfs f1, 0(r5)
/* 80051C78 0004D8D8  C0 05 00 04 */	lfs f0, 4(r5)
/* 80051C7C 0004D8DC  FC 20 08 1E */	fctiwz f1, f1
/* 80051C80 0004D8E0  FC 00 00 1E */	fctiwz f0, f0
/* 80051C84 0004D8E4  D8 21 00 10 */	stfd f1, 0x10(r1)
/* 80051C88 0004D8E8  D8 01 00 08 */	stfd f0, 8(r1)
/* 80051C8C 0004D8EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80051C90 0004D8F0  81 61 00 0C */	lwz r11, 0xc(r1)
lbl_80051C94:
/* 80051C94 0004D8F4  7C 0A 40 00 */	cmpw r10, r8
/* 80051C98 0004D8F8  41 81 00 0C */	bgt lbl_80051CA4
/* 80051C9C 0004D8FC  7C 08 58 00 */	cmpw r8, r11
/* 80051CA0 0004D900  41 80 00 14 */	blt lbl_80051CB4
lbl_80051CA4:
/* 80051CA4 0004D904  7C 0B 40 00 */	cmpw r11, r8
/* 80051CA8 0004D908  41 81 00 30 */	bgt lbl_80051CD8
/* 80051CAC 0004D90C  7C 08 50 00 */	cmpw r8, r10
/* 80051CB0 0004D910  40 80 00 28 */	bge lbl_80051CD8
lbl_80051CB4:
/* 80051CB4 0004D914  7C 6A 40 50 */	subf r3, r10, r8
/* 80051CB8 0004D918  7C 00 48 50 */	subf r0, r0, r9
/* 80051CBC 0004D91C  7C 63 01 D6 */	mullw r3, r3, r0
/* 80051CC0 0004D920  7C 0B 50 50 */	subf r0, r11, r10
/* 80051CC4 0004D924  7C 03 03 D6 */	divw r0, r3, r0
/* 80051CC8 0004D928  7C 09 02 14 */	add r0, r9, r0
/* 80051CCC 0004D92C  7C 07 00 00 */	cmpw r7, r0
/* 80051CD0 0004D930  40 80 00 08 */	bge lbl_80051CD8
/* 80051CD4 0004D934  38 84 00 01 */	addi r4, r4, 1
lbl_80051CD8:
/* 80051CD8 0004D938  38 C6 00 01 */	addi r6, r6, 1
/* 80051CDC 0004D93C  42 00 FF 48 */	bdnz lbl_80051C24
/* 80051CE0 0004D940  54 83 07 FE */	clrlwi r3, r4, 0x1f
/* 80051CE4 0004D944  38 21 00 20 */	addi r1, r1, 0x20
/* 80051CE8 0004D948  4E 80 00 20 */	blr

.global func_80051CEC
func_80051CEC:
/* 80051CEC 0004D94C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80051CF0 0004D950  7C 08 02 A6 */	mflr r0
/* 80051CF4 0004D954  90 01 00 14 */	stw r0, 0x14(r1)
/* 80051CF8 0004D958  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80051CFC 0004D95C  7C 7F 1B 78 */	mr r31, r3
/* 80051D00 0004D960  38 60 00 00 */	li r3, 0
/* 80051D04 0004D964  48 1F 2A 99 */	bl func_8024479C
/* 80051D08 0004D968  80 03 00 44 */	lwz r0, 0x44(r3)
/* 80051D0C 0004D96C  90 1F 00 94 */	stw r0, 0x94(r31)
/* 80051D10 0004D970  80 03 00 48 */	lwz r0, 0x48(r3)
/* 80051D14 0004D974  90 1F 00 98 */	stw r0, 0x98(r31)
/* 80051D18 0004D978  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 80051D1C 0004D97C  90 1F 00 9C */	stw r0, 0x9c(r31)
/* 80051D20 0004D980  80 83 00 50 */	lwz r4, 0x50(r3)
/* 80051D24 0004D984  80 03 00 54 */	lwz r0, 0x54(r3)
/* 80051D28 0004D988  90 9F 00 A0 */	stw r4, 0xa0(r31)
/* 80051D2C 0004D98C  90 1F 00 A4 */	stw r0, 0xa4(r31)
/* 80051D30 0004D990  80 03 00 58 */	lwz r0, 0x58(r3)
/* 80051D34 0004D994  90 1F 00 A8 */	stw r0, 0xa8(r31)
/* 80051D38 0004D998  C0 03 00 5C */	lfs f0, 0x5c(r3)
/* 80051D3C 0004D99C  D0 1F 00 AC */	stfs f0, 0xac(r31)
/* 80051D40 0004D9A0  C0 03 00 60 */	lfs f0, 0x60(r3)
/* 80051D44 0004D9A4  D0 1F 00 B0 */	stfs f0, 0xb0(r31)
/* 80051D48 0004D9A8  80 83 00 64 */	lwz r4, 0x64(r3)
/* 80051D4C 0004D9AC  80 03 00 68 */	lwz r0, 0x68(r3)
/* 80051D50 0004D9B0  90 9F 00 B4 */	stw r4, 0xb4(r31)
/* 80051D54 0004D9B4  90 1F 00 B8 */	stw r0, 0xb8(r31)
/* 80051D58 0004D9B8  80 83 00 6C */	lwz r4, 0x6c(r3)
/* 80051D5C 0004D9BC  80 03 00 70 */	lwz r0, 0x70(r3)
/* 80051D60 0004D9C0  90 9F 00 BC */	stw r4, 0xbc(r31)
/* 80051D64 0004D9C4  90 1F 00 C0 */	stw r0, 0xc0(r31)
/* 80051D68 0004D9C8  C0 03 00 74 */	lfs f0, 0x74(r3)
/* 80051D6C 0004D9CC  D0 1F 00 C4 */	stfs f0, 0xc4(r31)
/* 80051D70 0004D9D0  80 83 00 78 */	lwz r4, 0x78(r3)
/* 80051D74 0004D9D4  80 03 00 7C */	lwz r0, 0x7c(r3)
/* 80051D78 0004D9D8  90 9F 00 C8 */	stw r4, 0xc8(r31)
/* 80051D7C 0004D9DC  90 1F 00 CC */	stw r0, 0xcc(r31)
/* 80051D80 0004D9E0  80 83 00 80 */	lwz r4, 0x80(r3)
/* 80051D84 0004D9E4  80 03 00 84 */	lwz r0, 0x84(r3)
/* 80051D88 0004D9E8  90 9F 00 D0 */	stw r4, 0xd0(r31)
/* 80051D8C 0004D9EC  90 1F 00 D4 */	stw r0, 0xd4(r31)
/* 80051D90 0004D9F0  C0 03 00 88 */	lfs f0, 0x88(r3)
/* 80051D94 0004D9F4  D0 1F 00 D8 */	stfs f0, 0xd8(r31)
/* 80051D98 0004D9F8  C0 23 00 8C */	lfs f1, 0x8c(r3)
/* 80051D9C 0004D9FC  D0 3F 00 DC */	stfs f1, 0xdc(r31)
/* 80051DA0 0004DA00  C0 03 00 90 */	lfs f0, 0x90(r3)
/* 80051DA4 0004DA04  D0 1F 00 E0 */	stfs f0, 0xe0(r31)
/* 80051DA8 0004DA08  C0 03 00 94 */	lfs f0, 0x94(r3)
/* 80051DAC 0004DA0C  D0 1F 00 E4 */	stfs f0, 0xe4(r31)
/* 80051DB0 0004DA10  80 83 00 98 */	lwz r4, 0x98(r3)
/* 80051DB4 0004DA14  80 03 00 9C */	lwz r0, 0x9c(r3)
/* 80051DB8 0004DA18  90 9F 00 E8 */	stw r4, 0xe8(r31)
/* 80051DBC 0004DA1C  90 1F 00 EC */	stw r0, 0xec(r31)
/* 80051DC0 0004DA20  88 03 00 A0 */	lbz r0, 0xa0(r3)
/* 80051DC4 0004DA24  98 1F 00 F0 */	stb r0, 0xf0(r31)
/* 80051DC8 0004DA28  88 03 00 A1 */	lbz r0, 0xa1(r3)
/* 80051DCC 0004DA2C  98 1F 00 F1 */	stb r0, 0xf1(r31)
/* 80051DD0 0004DA30  88 03 00 A2 */	lbz r0, 0xa2(r3)
/* 80051DD4 0004DA34  98 1F 00 F2 */	stb r0, 0xf2(r31)
/* 80051DD8 0004DA38  88 03 00 A3 */	lbz r0, 0xa3(r3)
/* 80051DDC 0004DA3C  98 1F 00 F3 */	stb r0, 0xf3(r31)
/* 80051DE0 0004DA40  80 83 00 A4 */	lwz r4, 0xa4(r3)
/* 80051DE4 0004DA44  80 03 00 A8 */	lwz r0, 0xa8(r3)
/* 80051DE8 0004DA48  90 9F 00 F4 */	stw r4, 0xf4(r31)
/* 80051DEC 0004DA4C  90 1F 00 F8 */	stw r0, 0xf8(r31)
/* 80051DF0 0004DA50  80 83 00 AC */	lwz r4, 0xac(r3)
/* 80051DF4 0004DA54  80 03 00 B0 */	lwz r0, 0xb0(r3)
/* 80051DF8 0004DA58  90 9F 00 FC */	stw r4, 0xfc(r31)
/* 80051DFC 0004DA5C  90 1F 01 00 */	stw r0, 0x100(r31)
/* 80051E00 0004DA60  80 83 00 B4 */	lwz r4, 0xb4(r3)
/* 80051E04 0004DA64  80 03 00 B8 */	lwz r0, 0xb8(r3)
/* 80051E08 0004DA68  90 9F 01 04 */	stw r4, 0x104(r31)
/* 80051E0C 0004DA6C  90 1F 01 08 */	stw r0, 0x108(r31)
/* 80051E10 0004DA70  80 83 00 BC */	lwz r4, 0xbc(r3)
/* 80051E14 0004DA74  80 03 00 C0 */	lwz r0, 0xc0(r3)
/* 80051E18 0004DA78  90 9F 01 0C */	stw r4, 0x10c(r31)
/* 80051E1C 0004DA7C  90 1F 01 10 */	stw r0, 0x110(r31)
/* 80051E20 0004DA80  80 03 00 C4 */	lwz r0, 0xc4(r3)
/* 80051E24 0004DA84  90 1F 01 14 */	stw r0, 0x114(r31)
/* 80051E28 0004DA88  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80051E2C 0004DA8C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80051E30 0004DA90  7C 08 03 A6 */	mtlr r0
/* 80051E34 0004DA94  38 21 00 10 */	addi r1, r1, 0x10
/* 80051E38 0004DA98  4E 80 00 20 */	blr

.global func_80051E3C
func_80051E3C:
/* 80051E3C 0004DA9C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80051E40 0004DAA0  7C 08 02 A6 */	mflr r0
/* 80051E44 0004DAA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80051E48 0004DAA8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80051E4C 0004DAAC  7C 7F 1B 78 */	mr r31, r3
/* 80051E50 0004DAB0  38 60 00 00 */	li r3, 0
/* 80051E54 0004DAB4  48 1F 29 49 */	bl func_8024479C
/* 80051E58 0004DAB8  80 03 00 44 */	lwz r0, 0x44(r3)
/* 80051E5C 0004DABC  90 1F 00 94 */	stw r0, 0x94(r31)
/* 80051E60 0004DAC0  80 03 00 48 */	lwz r0, 0x48(r3)
/* 80051E64 0004DAC4  90 1F 00 98 */	stw r0, 0x98(r31)
/* 80051E68 0004DAC8  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 80051E6C 0004DACC  90 1F 00 9C */	stw r0, 0x9c(r31)
/* 80051E70 0004DAD0  80 83 00 50 */	lwz r4, 0x50(r3)
/* 80051E74 0004DAD4  80 03 00 54 */	lwz r0, 0x54(r3)
/* 80051E78 0004DAD8  90 9F 00 A0 */	stw r4, 0xa0(r31)
/* 80051E7C 0004DADC  90 1F 00 A4 */	stw r0, 0xa4(r31)
/* 80051E80 0004DAE0  C0 3F 00 A0 */	lfs f1, 0xa0(r31)
/* 80051E84 0004DAE4  80 03 00 58 */	lwz r0, 0x58(r3)
/* 80051E88 0004DAE8  90 1F 00 A8 */	stw r0, 0xa8(r31)
/* 80051E8C 0004DAEC  C0 03 00 5C */	lfs f0, 0x5c(r3)
/* 80051E90 0004DAF0  D0 1F 00 AC */	stfs f0, 0xac(r31)
/* 80051E94 0004DAF4  C0 03 00 60 */	lfs f0, 0x60(r3)
/* 80051E98 0004DAF8  D0 1F 00 B0 */	stfs f0, 0xb0(r31)
/* 80051E9C 0004DAFC  80 83 00 64 */	lwz r4, 0x64(r3)
/* 80051EA0 0004DB00  80 03 00 68 */	lwz r0, 0x68(r3)
/* 80051EA4 0004DB04  90 9F 00 B4 */	stw r4, 0xb4(r31)
/* 80051EA8 0004DB08  90 1F 00 B8 */	stw r0, 0xb8(r31)
/* 80051EAC 0004DB0C  80 83 00 6C */	lwz r4, 0x6c(r3)
/* 80051EB0 0004DB10  80 03 00 70 */	lwz r0, 0x70(r3)
/* 80051EB4 0004DB14  90 9F 00 BC */	stw r4, 0xbc(r31)
/* 80051EB8 0004DB18  90 1F 00 C0 */	stw r0, 0xc0(r31)
/* 80051EBC 0004DB1C  C0 03 00 74 */	lfs f0, 0x74(r3)
/* 80051EC0 0004DB20  D0 1F 00 C4 */	stfs f0, 0xc4(r31)
/* 80051EC4 0004DB24  80 83 00 78 */	lwz r4, 0x78(r3)
/* 80051EC8 0004DB28  80 03 00 7C */	lwz r0, 0x7c(r3)
/* 80051ECC 0004DB2C  90 9F 00 C8 */	stw r4, 0xc8(r31)
/* 80051ED0 0004DB30  90 1F 00 CC */	stw r0, 0xcc(r31)
/* 80051ED4 0004DB34  80 83 00 80 */	lwz r4, 0x80(r3)
/* 80051ED8 0004DB38  80 03 00 84 */	lwz r0, 0x84(r3)
/* 80051EDC 0004DB3C  90 9F 00 D0 */	stw r4, 0xd0(r31)
/* 80051EE0 0004DB40  90 1F 00 D4 */	stw r0, 0xd4(r31)
/* 80051EE4 0004DB44  C0 03 00 88 */	lfs f0, 0x88(r3)
/* 80051EE8 0004DB48  D0 1F 00 D8 */	stfs f0, 0xd8(r31)
/* 80051EEC 0004DB4C  C0 03 00 8C */	lfs f0, 0x8c(r3)
/* 80051EF0 0004DB50  D0 1F 00 DC */	stfs f0, 0xdc(r31)
/* 80051EF4 0004DB54  C0 03 00 90 */	lfs f0, 0x90(r3)
/* 80051EF8 0004DB58  D0 1F 00 E0 */	stfs f0, 0xe0(r31)
/* 80051EFC 0004DB5C  C0 03 00 94 */	lfs f0, 0x94(r3)
/* 80051F00 0004DB60  D0 1F 00 E4 */	stfs f0, 0xe4(r31)
/* 80051F04 0004DB64  80 83 00 98 */	lwz r4, 0x98(r3)
/* 80051F08 0004DB68  80 03 00 9C */	lwz r0, 0x9c(r3)
/* 80051F0C 0004DB6C  90 9F 00 E8 */	stw r4, 0xe8(r31)
/* 80051F10 0004DB70  90 1F 00 EC */	stw r0, 0xec(r31)
/* 80051F14 0004DB74  88 03 00 A0 */	lbz r0, 0xa0(r3)
/* 80051F18 0004DB78  98 1F 00 F0 */	stb r0, 0xf0(r31)
/* 80051F1C 0004DB7C  88 03 00 A1 */	lbz r0, 0xa1(r3)
/* 80051F20 0004DB80  98 1F 00 F1 */	stb r0, 0xf1(r31)
/* 80051F24 0004DB84  88 03 00 A2 */	lbz r0, 0xa2(r3)
/* 80051F28 0004DB88  98 1F 00 F2 */	stb r0, 0xf2(r31)
/* 80051F2C 0004DB8C  88 03 00 A3 */	lbz r0, 0xa3(r3)
/* 80051F30 0004DB90  98 1F 00 F3 */	stb r0, 0xf3(r31)
/* 80051F34 0004DB94  80 83 00 A4 */	lwz r4, 0xa4(r3)
/* 80051F38 0004DB98  80 03 00 A8 */	lwz r0, 0xa8(r3)
/* 80051F3C 0004DB9C  90 9F 00 F4 */	stw r4, 0xf4(r31)
/* 80051F40 0004DBA0  90 1F 00 F8 */	stw r0, 0xf8(r31)
/* 80051F44 0004DBA4  80 83 00 AC */	lwz r4, 0xac(r3)
/* 80051F48 0004DBA8  80 03 00 B0 */	lwz r0, 0xb0(r3)
/* 80051F4C 0004DBAC  90 9F 00 FC */	stw r4, 0xfc(r31)
/* 80051F50 0004DBB0  90 1F 01 00 */	stw r0, 0x100(r31)
/* 80051F54 0004DBB4  80 83 00 B4 */	lwz r4, 0xb4(r3)
/* 80051F58 0004DBB8  80 03 00 B8 */	lwz r0, 0xb8(r3)
/* 80051F5C 0004DBBC  90 9F 01 04 */	stw r4, 0x104(r31)
/* 80051F60 0004DBC0  90 1F 01 08 */	stw r0, 0x108(r31)
/* 80051F64 0004DBC4  80 83 00 BC */	lwz r4, 0xbc(r3)
/* 80051F68 0004DBC8  80 03 00 C0 */	lwz r0, 0xc0(r3)
/* 80051F6C 0004DBCC  90 9F 01 0C */	stw r4, 0x10c(r31)
/* 80051F70 0004DBD0  90 1F 01 10 */	stw r0, 0x110(r31)
/* 80051F74 0004DBD4  80 03 00 C4 */	lwz r0, 0xc4(r3)
/* 80051F78 0004DBD8  90 1F 01 14 */	stw r0, 0x114(r31)
/* 80051F7C 0004DBDC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80051F80 0004DBE0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80051F84 0004DBE4  7C 08 03 A6 */	mtlr r0
/* 80051F88 0004DBE8  38 21 00 10 */	addi r1, r1, 0x10
/* 80051F8C 0004DBEC  4E 80 00 20 */	blr

.global func_80051F90
func_80051F90:
/* 80051F90 0004DBF0  28 04 00 64 */	cmplwi r4, 0x64
/* 80051F94 0004DBF4  4C 80 00 20 */	bgelr
/* 80051F98 0004DBF8  1C 04 00 28 */	mulli r0, r4, 0x28
/* 80051F9C 0004DBFC  7C 63 02 14 */	add r3, r3, r0
/* 80051FA0 0004DC00  B0 A3 02 48 */	sth r5, 0x248(r3)
/* 80051FA4 0004DC04  B0 C3 02 4A */	sth r6, 0x24a(r3)
/* 80051FA8 0004DC08  B0 E3 02 4C */	sth r7, 0x24c(r3)
/* 80051FAC 0004DC0C  B1 03 02 4E */	sth r8, 0x24e(r3)
/* 80051FB0 0004DC10  4E 80 00 20 */	blr

.global func_80051FB4
func_80051FB4:
/* 80051FB4 0004DC14  28 04 00 64 */	cmplwi r4, 0x64
/* 80051FB8 0004DC18  41 80 00 0C */	blt lbl_80051FC4
/* 80051FBC 0004DC1C  38 60 00 00 */	li r3, 0
/* 80051FC0 0004DC20  4E 80 00 20 */	blr
lbl_80051FC4:
/* 80051FC4 0004DC24  1C 04 00 28 */	mulli r0, r4, 0x28
/* 80051FC8 0004DC28  7C 63 02 14 */	add r3, r3, r0
/* 80051FCC 0004DC2C  38 63 02 48 */	addi r3, r3, 0x248
/* 80051FD0 0004DC30  4E 80 00 20 */	blr

.global func_80051FD4
func_80051FD4:
/* 80051FD4 0004DC34  54 A0 34 B2 */	rlwinm r0, r5, 6, 0x12, 0x19
/* 80051FD8 0004DC38  7C 63 02 14 */	add r3, r3, r0
/* 80051FDC 0004DC3C  C0 03 00 44 */	lfs f0, 0x44(r3)
/* 80051FE0 0004DC40  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 80051FE4 0004DC44  C0 03 00 48 */	lfs f0, 0x48(r3)
/* 80051FE8 0004DC48  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 80051FEC 0004DC4C  C0 03 00 3C */	lfs f0, 0x3c(r3)
/* 80051FF0 0004DC50  D0 03 00 44 */	stfs f0, 0x44(r3)
/* 80051FF4 0004DC54  C0 03 00 40 */	lfs f0, 0x40(r3)
/* 80051FF8 0004DC58  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 80051FFC 0004DC5C  C0 03 00 34 */	lfs f0, 0x34(r3)
/* 80052000 0004DC60  D0 03 00 3C */	stfs f0, 0x3c(r3)
/* 80052004 0004DC64  C0 03 00 38 */	lfs f0, 0x38(r3)
/* 80052008 0004DC68  D0 03 00 40 */	stfs f0, 0x40(r3)
/* 8005200C 0004DC6C  C0 03 00 2C */	lfs f0, 0x2c(r3)
/* 80052010 0004DC70  D0 03 00 34 */	stfs f0, 0x34(r3)
/* 80052014 0004DC74  C0 03 00 30 */	lfs f0, 0x30(r3)
/* 80052018 0004DC78  D0 03 00 38 */	stfs f0, 0x38(r3)
/* 8005201C 0004DC7C  C0 03 00 24 */	lfs f0, 0x24(r3)
/* 80052020 0004DC80  D0 03 00 2C */	stfs f0, 0x2c(r3)
/* 80052024 0004DC84  C0 03 00 28 */	lfs f0, 0x28(r3)
/* 80052028 0004DC88  D0 03 00 30 */	stfs f0, 0x30(r3)
/* 8005202C 0004DC8C  C0 03 00 1C */	lfs f0, 0x1c(r3)
/* 80052030 0004DC90  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 80052034 0004DC94  C0 03 00 20 */	lfs f0, 0x20(r3)
/* 80052038 0004DC98  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8005203C 0004DC9C  C0 03 00 14 */	lfs f0, 0x14(r3)
/* 80052040 0004DCA0  D0 03 00 1C */	stfs f0, 0x1c(r3)
/* 80052044 0004DCA4  C0 03 00 18 */	lfs f0, 0x18(r3)
/* 80052048 0004DCA8  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 8005204C 0004DCAC  C0 04 00 00 */	lfs f0, 0(r4)
/* 80052050 0004DCB0  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 80052054 0004DCB4  C0 04 00 04 */	lfs f0, 4(r4)
/* 80052058 0004DCB8  D0 03 00 18 */	stfs f0, 0x18(r3)
/* 8005205C 0004DCBC  4E 80 00 20 */	blr

.global func_80052060
func_80052060:
/* 80052060 0004DCC0  3C 80 80 41 */	lis r4, lbl_8040AEA4@ha
/* 80052064 0004DCC4  38 84 AE A4 */	addi r4, r4, lbl_8040AEA4@l
/* 80052068 0004DCC8  90 83 00 00 */	stw r4, 0(r3)
/* 8005206C 0004DCCC  4E 80 00 20 */	blr
lbl_80052070:
/* 80052070 0004DCD0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80052074 0004DCD4  7C 08 02 A6 */	mflr r0
/* 80052078 0004DCD8  2C 03 00 00 */	cmpwi r3, 0
/* 8005207C 0004DCDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80052080 0004DCE0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80052084 0004DCE4  7C 7F 1B 78 */	mr r31, r3
/* 80052088 0004DCE8  41 82 00 10 */	beq lbl_80052098
/* 8005208C 0004DCEC  2C 04 00 00 */	cmpwi r4, 0
/* 80052090 0004DCF0  40 81 00 08 */	ble lbl_80052098
/* 80052094 0004DCF4  48 18 8A 25 */	bl func_801DAAB8
lbl_80052098:
/* 80052098 0004DCF8  7F E3 FB 78 */	mr r3, r31
/* 8005209C 0004DCFC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800520A0 0004DD00  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800520A4 0004DD04  7C 08 03 A6 */	mtlr r0
/* 800520A8 0004DD08  38 21 00 10 */	addi r1, r1, 0x10
/* 800520AC 0004DD0C  4E 80 00 20 */	blr
/* 800520B0 0004DD10  4E 80 00 20 */	blr
/* 800520B4 0004DD14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800520B8 0004DD18  7C 08 02 A6 */	mflr r0
/* 800520BC 0004DD1C  38 60 03 E8 */	li r3, 0x3e8
/* 800520C0 0004DD20  90 01 00 14 */	stw r0, 0x14(r1)
/* 800520C4 0004DD24  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800520C8 0004DD28  93 C1 00 08 */	stw r30, 8(r1)
/* 800520CC 0004DD2C  48 1F 75 11 */	bl func_802495DC
/* 800520D0 0004DD30  88 0D 81 CC */	lbz r0, lbl_8063D48C-_SDA_BASE_(r13)
/* 800520D4 0004DD34  38 60 00 00 */	li r3, 0
/* 800520D8 0004DD38  90 6D 98 8C */	stw r3, lbl_8063EB4C-_SDA_BASE_(r13)
/* 800520DC 0004DD3C  2C 00 00 00 */	cmpwi r0, 0
/* 800520E0 0004DD40  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800520E4 0004DD44  41 82 01 BC */	beq lbl_800522A0
/* 800520E8 0004DD48  3C 80 80 05 */	lis r4, lbl_80053770@ha
/* 800520EC 0004DD4C  38 60 00 00 */	li r3, 0
/* 800520F0 0004DD50  38 84 37 70 */	addi r4, r4, lbl_80053770@l
/* 800520F4 0004DD54  38 A0 FF FF */	li r5, -1
/* 800520F8 0004DD58  48 20 1E 75 */	bl func_80253F6C
/* 800520FC 0004DD5C  90 6D 98 68 */	stw r3, lbl_8063EB28-_SDA_BASE_(r13)
/* 80052100 0004DD60  3C 60 0B 3E */	lis r3, 0x0B3E1A00@ha
/* 80052104 0004DD64  38 83 1A 00 */	addi r4, r3, 0x0B3E1A00@l
/* 80052108 0004DD68  38 60 03 E8 */	li r3, 0x3e8
/* 8005210C 0004DD6C  48 00 3C 8D */	bl func_80055D98
/* 80052110 0004DD70  3F E0 80 47 */	lis r31, lbl_804753B0@ha
/* 80052114 0004DD74  3C 80 04 4C */	lis r4, 0x044C1A00@ha
/* 80052118 0004DD78  90 7F 53 B0 */	stw r3, lbl_804753B0@l(r31)
/* 8005211C 0004DD7C  38 84 1A 00 */	addi r4, r4, 0x044C1A00@l
/* 80052120 0004DD80  38 60 00 0E */	li r3, 0xe
/* 80052124 0004DD84  48 00 3C 75 */	bl func_80055D98
/* 80052128 0004DD88  3B DF 53 B0 */	addi r30, r31, 0x53b0
/* 8005212C 0004DD8C  3C 80 19 A5 */	lis r4, 0x19A51A00@ha
/* 80052130 0004DD90  90 7E 00 04 */	stw r3, 4(r30)
/* 80052134 0004DD94  38 84 1A 00 */	addi r4, r4, 0x19A51A00@l
/* 80052138 0004DD98  38 60 00 0E */	li r3, 0xe
/* 8005213C 0004DD9C  48 00 3C 5D */	bl func_80055D98
/* 80052140 0004DDA0  90 7E 00 08 */	stw r3, 8(r30)
/* 80052144 0004DDA4  3C 60 0B 3C */	lis r3, 0x0B3C1A00@ha
/* 80052148 0004DDA8  38 83 1A 00 */	addi r4, r3, 0x0B3C1A00@l
/* 8005214C 0004DDAC  38 60 03 E8 */	li r3, 0x3e8
/* 80052150 0004DDB0  48 00 3C 49 */	bl func_80055D98
/* 80052154 0004DDB4  90 7E 00 0C */	stw r3, 0xc(r30)
/* 80052158 0004DDB8  3C 60 0B 3D */	lis r3, 0x0B3D1A00@ha
/* 8005215C 0004DDBC  38 83 1A 00 */	addi r4, r3, 0x0B3D1A00@l
/* 80052160 0004DDC0  38 60 03 E8 */	li r3, 0x3e8
/* 80052164 0004DDC4  48 00 3C 35 */	bl func_80055D98
/* 80052168 0004DDC8  90 7E 00 10 */	stw r3, 0x10(r30)
/* 8005216C 0004DDCC  3C 60 27 61 */	lis r3, 0x27611A00@ha
/* 80052170 0004DDD0  38 83 1A 00 */	addi r4, r3, 0x27611A00@l
/* 80052174 0004DDD4  38 60 03 E8 */	li r3, 0x3e8
/* 80052178 0004DDD8  48 00 3C 21 */	bl func_80055D98
/* 8005217C 0004DDDC  90 7E 00 14 */	stw r3, 0x14(r30)
/* 80052180 0004DDE0  3C A0 80 05 */	lis r5, lbl_80053C48@ha
/* 80052184 0004DDE4  3C C0 80 05 */	lis r6, lbl_80053D24@ha
/* 80052188 0004DDE8  80 7F 53 B0 */	lwz r3, 0x53b0(r31)
/* 8005218C 0004DDEC  38 A5 3C 48 */	addi r5, r5, lbl_80053C48@l
/* 80052190 0004DDF0  38 80 00 00 */	li r4, 0
/* 80052194 0004DDF4  38 C6 3D 24 */	addi r6, r6, lbl_80053D24@l
/* 80052198 0004DDF8  38 E0 FF FF */	li r7, -1
/* 8005219C 0004DDFC  39 00 00 00 */	li r8, 0
/* 800521A0 0004DE00  39 20 00 01 */	li r9, 1
/* 800521A4 0004DE04  39 40 00 00 */	li r10, 0
/* 800521A8 0004DE08  48 20 1A 91 */	bl func_80253C38
/* 800521AC 0004DE0C  3F E0 80 41 */	lis r31, lbl_8040ACB0@ha
/* 800521B0 0004DE10  3C A0 80 05 */	lis r5, lbl_80053FE8@ha
/* 800521B4 0004DE14  B0 7F AC B0 */	sth r3, lbl_8040ACB0@l(r31)
/* 800521B8 0004DE18  3C C0 80 05 */	lis r6, lbl_80054054@ha
/* 800521BC 0004DE1C  80 7E 00 04 */	lwz r3, 4(r30)
/* 800521C0 0004DE20  38 A5 3F E8 */	addi r5, r5, lbl_80053FE8@l
/* 800521C4 0004DE24  38 C6 40 54 */	addi r6, r6, lbl_80054054@l
/* 800521C8 0004DE28  38 80 00 00 */	li r4, 0
/* 800521CC 0004DE2C  38 E0 FF FF */	li r7, -1
/* 800521D0 0004DE30  39 00 00 00 */	li r8, 0
/* 800521D4 0004DE34  39 20 00 01 */	li r9, 1
/* 800521D8 0004DE38  39 40 00 00 */	li r10, 0
/* 800521DC 0004DE3C  48 20 1A 5D */	bl func_80253C38
/* 800521E0 0004DE40  3B FF AC B0 */	addi r31, r31, -21328
/* 800521E4 0004DE44  3C A0 80 05 */	lis r5, lbl_800540C4@ha
/* 800521E8 0004DE48  B0 7F 00 02 */	sth r3, 2(r31)
/* 800521EC 0004DE4C  3C C0 80 05 */	lis r6, lbl_80054154@ha
/* 800521F0 0004DE50  80 7E 00 08 */	lwz r3, 8(r30)
/* 800521F4 0004DE54  38 A5 40 C4 */	addi r5, r5, lbl_800540C4@l
/* 800521F8 0004DE58  38 C6 41 54 */	addi r6, r6, lbl_80054154@l
/* 800521FC 0004DE5C  38 80 00 00 */	li r4, 0
/* 80052200 0004DE60  38 E0 FF FF */	li r7, -1
/* 80052204 0004DE64  39 00 00 00 */	li r8, 0
/* 80052208 0004DE68  39 20 00 01 */	li r9, 1
/* 8005220C 0004DE6C  39 40 00 00 */	li r10, 0
/* 80052210 0004DE70  48 20 1A 29 */	bl func_80253C38
/* 80052214 0004DE74  B0 7F 00 04 */	sth r3, 4(r31)
/* 80052218 0004DE78  3C 80 80 05 */	lis r4, lbl_80054200@ha
/* 8005221C 0004DE7C  3C A0 80 05 */	lis r5, lbl_80054210@ha
/* 80052220 0004DE80  3C C0 80 05 */	lis r6, lbl_800543C0@ha
/* 80052224 0004DE84  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80052228 0004DE88  38 84 42 00 */	addi r4, r4, lbl_80054200@l
/* 8005222C 0004DE8C  38 A5 42 10 */	addi r5, r5, lbl_80054210@l
/* 80052230 0004DE90  38 C6 43 C0 */	addi r6, r6, lbl_800543C0@l
/* 80052234 0004DE94  38 E0 FF FF */	li r7, -1
/* 80052238 0004DE98  39 00 00 00 */	li r8, 0
/* 8005223C 0004DE9C  39 20 00 01 */	li r9, 1
/* 80052240 0004DEA0  39 40 00 00 */	li r10, 0
/* 80052244 0004DEA4  48 20 19 F5 */	bl func_80253C38
/* 80052248 0004DEA8  B0 7F 00 06 */	sth r3, 6(r31)
/* 8005224C 0004DEAC  3C A0 80 05 */	lis r5, lbl_80053DF4@ha
/* 80052250 0004DEB0  80 7E 00 10 */	lwz r3, 0x10(r30)
/* 80052254 0004DEB4  38 A5 3D F4 */	addi r5, r5, lbl_80053DF4@l
/* 80052258 0004DEB8  38 80 00 00 */	li r4, 0
/* 8005225C 0004DEBC  38 C0 00 00 */	li r6, 0
/* 80052260 0004DEC0  38 E0 FF C0 */	li r7, -64
/* 80052264 0004DEC4  39 00 00 00 */	li r8, 0
/* 80052268 0004DEC8  39 20 00 01 */	li r9, 1
/* 8005226C 0004DECC  39 40 00 00 */	li r10, 0
/* 80052270 0004DED0  48 20 19 C9 */	bl func_80253C38
/* 80052274 0004DED4  B0 7F 00 08 */	sth r3, 8(r31)
/* 80052278 0004DED8  38 80 00 00 */	li r4, 0
/* 8005227C 0004DEDC  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 80052280 0004DEE0  38 A0 00 00 */	li r5, 0
/* 80052284 0004DEE4  38 C0 00 00 */	li r6, 0
/* 80052288 0004DEE8  38 E0 FF FF */	li r7, -1
/* 8005228C 0004DEEC  39 00 00 00 */	li r8, 0
/* 80052290 0004DEF0  39 20 00 01 */	li r9, 1
/* 80052294 0004DEF4  39 40 00 00 */	li r10, 0
/* 80052298 0004DEF8  48 20 19 A1 */	bl func_80253C38
/* 8005229C 0004DEFC  B0 7F 00 0A */	sth r3, 0xa(r31)
lbl_800522A0:
/* 800522A0 0004DF00  48 00 52 B9 */	bl func_80057558
/* 800522A4 0004DF04  48 00 54 0D */	bl func_800576B0
/* 800522A8 0004DF08  88 0D 81 CE */	lbz r0, lbl_8063D48E-_SDA_BASE_(r13)
/* 800522AC 0004DF0C  2C 00 00 00 */	cmpwi r0, 0
/* 800522B0 0004DF10  41 82 00 34 */	beq lbl_800522E4
/* 800522B4 0004DF14  38 60 00 0D */	li r3, 0xd
/* 800522B8 0004DF18  38 00 00 00 */	li r0, 0
/* 800522BC 0004DF1C  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800522C0 0004DF20  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800522C4 0004DF24  98 0D 81 CE */	stb r0, lbl_8063D48E-_SDA_BASE_(r13)
/* 800522C8 0004DF28  48 00 2F B9 */	bl func_80055280
/* 800522CC 0004DF2C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800522D0 0004DF30  38 80 00 00 */	li r4, 0
/* 800522D4 0004DF34  48 00 27 61 */	bl func_80054A34
/* 800522D8 0004DF38  38 00 00 01 */	li r0, 1
/* 800522DC 0004DF3C  98 0D 98 88 */	stb r0, lbl_8063EB48-_SDA_BASE_(r13)
/* 800522E0 0004DF40  48 00 00 34 */	b lbl_80052314
lbl_800522E4:
/* 800522E4 0004DF44  38 00 00 0E */	li r0, 0xe
/* 800522E8 0004DF48  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800522EC 0004DF4C  48 00 3F D1 */	bl func_800562BC
/* 800522F0 0004DF50  88 0D 81 CC */	lbz r0, lbl_8063D48C-_SDA_BASE_(r13)
/* 800522F4 0004DF54  2C 00 00 00 */	cmpwi r0, 0
/* 800522F8 0004DF58  40 82 00 10 */	bne lbl_80052308
/* 800522FC 0004DF5C  38 00 00 34 */	li r0, 0x34
/* 80052300 0004DF60  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052304 0004DF64  48 00 00 10 */	b lbl_80052314
lbl_80052308:
/* 80052308 0004DF68  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005230C 0004DF6C  38 80 00 00 */	li r4, 0
/* 80052310 0004DF70  48 00 27 25 */	bl func_80054A34
lbl_80052314:
/* 80052314 0004DF74  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052318 0004DF78  48 00 21 81 */	bl func_80054498
/* 8005231C 0004DF7C  48 11 0C B9 */	bl glplatAbortFrame
/* 80052320 0004DF80  38 60 00 01 */	li r3, 1
/* 80052324 0004DF84  4B FB 52 41 */	bl func_80007564
/* 80052328 0004DF88  38 60 02 61 */	li r3, 0x261
/* 8005232C 0004DF8C  38 80 00 01 */	li r4, 1
/* 80052330 0004DF90  38 A0 00 01 */	li r5, 1
/* 80052334 0004DF94  48 11 06 0D */	bl func_80162940
/* 80052338 0004DF98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005233C 0004DF9C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80052340 0004DFA0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80052344 0004DFA4  7C 08 03 A6 */	mtlr r0
/* 80052348 0004DFA8  38 21 00 10 */	addi r1, r1, 0x10
/* 8005234C 0004DFAC  4E 80 00 20 */	blr
/* 80052350 0004DFB0  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80052354 0004DFB4  7C 08 02 A6 */	mflr r0
/* 80052358 0004DFB8  90 01 00 54 */	stw r0, 0x54(r1)
/* 8005235C 0004DFBC  3C 00 43 30 */	lis r0, 0x4330
/* 80052360 0004DFC0  93 E1 00 4C */	stw r31, 0x4c(r1)
/* 80052364 0004DFC4  93 C1 00 48 */	stw r30, 0x48(r1)
/* 80052368 0004DFC8  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8005236C 0004DFCC  90 01 00 30 */	stw r0, 0x30(r1)
/* 80052370 0004DFD0  88 64 00 82 */	lbz r3, 0x82(r4)
/* 80052374 0004DFD4  90 01 00 38 */	stw r0, 0x38(r1)
/* 80052378 0004DFD8  2C 03 00 00 */	cmpwi r3, 0
/* 8005237C 0004DFDC  40 82 12 BC */	bne lbl_80053638
/* 80052380 0004DFE0  38 60 00 00 */	li r3, 0
/* 80052384 0004DFE4  40 82 00 10 */	bne lbl_80052394
/* 80052388 0004DFE8  88 04 00 83 */	lbz r0, 0x83(r4)
/* 8005238C 0004DFEC  2C 00 00 00 */	cmpwi r0, 0
/* 80052390 0004DFF0  41 82 00 08 */	beq lbl_80052398
lbl_80052394:
/* 80052394 0004DFF4  38 60 00 01 */	li r3, 1
lbl_80052398:
/* 80052398 0004DFF8  2C 03 00 00 */	cmpwi r3, 0
/* 8005239C 0004DFFC  41 82 00 08 */	beq lbl_800523A4
/* 800523A0 0004E000  48 00 12 98 */	b lbl_80053638
lbl_800523A4:
/* 800523A4 0004E004  3C 60 80 00 */	lis r3, 0x8000
/* 800523A8 0004E008  38 80 00 00 */	li r4, 0
/* 800523AC 0004E00C  38 A0 00 00 */	li r5, 0
/* 800523B0 0004E010  38 C0 00 01 */	li r6, 1
/* 800523B4 0004E014  48 00 76 B9 */	bl func_80059A6C
/* 800523B8 0004E018  80 8D 98 6C */	lwz r4, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800523BC 0004E01C  7C 7E 1B 78 */	mr r30, r3
/* 800523C0 0004E020  38 04 FF F2 */	addi r0, r4, -14
/* 800523C4 0004E024  28 00 00 27 */	cmplwi r0, 0x27
/* 800523C8 0004E028  41 81 12 70 */	bgt lbl_80053638
/* 800523CC 0004E02C  3C 80 80 41 */	lis r4, lbl_8040ACD0@ha
/* 800523D0 0004E030  54 00 10 3A */	slwi r0, r0, 2
/* 800523D4 0004E034  38 84 AC D0 */	addi r4, r4, lbl_8040ACD0@l
/* 800523D8 0004E038  7C 84 00 2E */	lwzx r4, r4, r0
/* 800523DC 0004E03C  7C 89 03 A6 */	mtctr r4
/* 800523E0 0004E040  4E 80 04 20 */	bctr
/* 800523E4 0004E044  38 60 00 01 */	li r3, 1
/* 800523E8 0004E048  4B FB 51 7D */	bl func_80007564
/* 800523EC 0004E04C  38 60 00 03 */	li r3, 3
/* 800523F0 0004E050  38 80 00 00 */	li r4, 0
/* 800523F4 0004E054  48 00 3F F9 */	bl func_800563EC
/* 800523F8 0004E058  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800523FC 0004E05C  48 00 23 F9 */	bl func_800547F4
/* 80052400 0004E060  2C 03 00 00 */	cmpwi r3, 0
/* 80052404 0004E064  41 82 12 34 */	beq lbl_80053638
/* 80052408 0004E068  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005240C 0004E06C  48 00 23 E9 */	bl func_800547F4
/* 80052410 0004E070  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052414 0004E074  38 80 00 00 */	li r4, 0
/* 80052418 0004E078  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 8005241C 0004E07C  38 A0 00 00 */	li r5, 0
/* 80052420 0004E080  38 C0 00 00 */	li r6, 0
/* 80052424 0004E084  38 E0 00 00 */	li r7, 0
/* 80052428 0004E088  39 00 00 00 */	li r8, 0
/* 8005242C 0004E08C  48 1A 29 C9 */	bl func_801F4DF4
/* 80052430 0004E090  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052434 0004E094  48 00 2E A5 */	bl func_800552D8
/* 80052438 0004E098  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005243C 0004E09C  38 80 00 01 */	li r4, 1
/* 80052440 0004E0A0  48 00 25 55 */	bl func_80054994
/* 80052444 0004E0A4  38 00 00 0F */	li r0, 0xf
/* 80052448 0004E0A8  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005244C 0004E0AC  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052450 0004E0B0  C8 42 85 18 */	lfd f2, lbl_80640B18-_SDA2_BASE_(r2)
/* 80052454 0004E0B4  88 03 00 59 */	lbz r0, 0x59(r3)
/* 80052458 0004E0B8  C8 03 00 A0 */	lfd f0, 0xa0(r3)
/* 8005245C 0004E0BC  90 01 00 34 */	stw r0, 0x34(r1)
/* 80052460 0004E0C0  C8 21 00 30 */	lfd f1, 0x30(r1)
/* 80052464 0004E0C4  FC 21 10 28 */	fsub f1, f1, f2
/* 80052468 0004E0C8  FC 00 08 24 */	fdiv f0, f0, f1
/* 8005246C 0004E0CC  D8 0D 98 78 */	stfd f0, lbl_8063EB38-_SDA_BASE_(r13)
/* 80052470 0004E0D0  48 00 11 C8 */	b lbl_80053638
/* 80052474 0004E0D4  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80052478 0004E0D8  C8 82 85 18 */	lfd f4, lbl_80640B18-_SDA2_BASE_(r2)
/* 8005247C 0004E0DC  88 03 00 59 */	lbz r0, 0x59(r3)
/* 80052480 0004E0E0  C8 43 00 A0 */	lfd f2, 0xa0(r3)
/* 80052484 0004E0E4  90 01 00 3C */	stw r0, 0x3c(r1)
/* 80052488 0004E0E8  C8 2D 98 78 */	lfd f1, lbl_8063EB38-_SDA_BASE_(r13)
/* 8005248C 0004E0EC  C8 61 00 38 */	lfd f3, 0x38(r1)
/* 80052490 0004E0F0  C8 02 84 F0 */	lfd f0, lbl_80640AF0-_SDA2_BASE_(r2)
/* 80052494 0004E0F4  FC 63 20 28 */	fsub f3, f3, f4
/* 80052498 0004E0F8  FC 42 18 24 */	fdiv f2, f2, f3
/* 8005249C 0004E0FC  FC 22 08 28 */	fsub f1, f2, f1
/* 800524A0 0004E100  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800524A4 0004E104  4C 41 13 82 */	cror 2, 1, 2
/* 800524A8 0004E108  40 82 11 90 */	bne lbl_80053638
/* 800524AC 0004E10C  88 0D 81 CC */	lbz r0, lbl_8063D48C-_SDA_BASE_(r13)
/* 800524B0 0004E110  2C 00 00 00 */	cmpwi r0, 0
/* 800524B4 0004E114  41 82 00 34 */	beq lbl_800524E8
/* 800524B8 0004E118  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800524BC 0004E11C  48 00 29 9D */	bl func_80054E58
/* 800524C0 0004E120  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800524C4 0004E124  48 00 2D B5 */	bl func_80055278
/* 800524C8 0004E128  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 800524CC 0004E12C  38 80 00 00 */	li r4, 0
/* 800524D0 0004E130  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 800524D4 0004E134  38 A0 00 00 */	li r5, 0
/* 800524D8 0004E138  38 C0 00 00 */	li r6, 0
/* 800524DC 0004E13C  38 E0 00 00 */	li r7, 0
/* 800524E0 0004E140  39 00 00 00 */	li r8, 0
/* 800524E4 0004E144  48 1A 29 11 */	bl func_801F4DF4
lbl_800524E8:
/* 800524E8 0004E148  38 00 00 10 */	li r0, 0x10
/* 800524EC 0004E14C  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800524F0 0004E150  48 00 11 48 */	b lbl_80053638
/* 800524F4 0004E154  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800524F8 0004E158  48 00 22 FD */	bl func_800547F4
/* 800524FC 0004E15C  48 1A 3A 51 */	bl func_801F5F4C
/* 80052500 0004E160  2C 03 00 00 */	cmpwi r3, 0
/* 80052504 0004E164  41 82 11 34 */	beq lbl_80053638
/* 80052508 0004E168  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005250C 0004E16C  48 00 22 E9 */	bl func_800547F4
/* 80052510 0004E170  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052514 0004E174  38 80 00 01 */	li r4, 1
/* 80052518 0004E178  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 8005251C 0004E17C  38 A0 00 01 */	li r5, 1
/* 80052520 0004E180  38 C0 00 00 */	li r6, 0
/* 80052524 0004E184  38 E0 00 00 */	li r7, 0
/* 80052528 0004E188  39 00 00 00 */	li r8, 0
/* 8005252C 0004E18C  48 1A 28 C9 */	bl func_801F4DF4
/* 80052530 0004E190  38 00 00 11 */	li r0, 0x11
/* 80052534 0004E194  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80052538 0004E198  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 8005253C 0004E19C  C8 42 85 18 */	lfd f2, lbl_80640B18-_SDA2_BASE_(r2)
/* 80052540 0004E1A0  88 03 00 59 */	lbz r0, 0x59(r3)
/* 80052544 0004E1A4  C8 03 00 A0 */	lfd f0, 0xa0(r3)
/* 80052548 0004E1A8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005254C 0004E1AC  C8 21 00 30 */	lfd f1, 0x30(r1)
/* 80052550 0004E1B0  FC 21 10 28 */	fsub f1, f1, f2
/* 80052554 0004E1B4  FC 00 08 24 */	fdiv f0, f0, f1
/* 80052558 0004E1B8  D8 0D 98 78 */	stfd f0, lbl_8063EB38-_SDA_BASE_(r13)
/* 8005255C 0004E1BC  48 00 10 DC */	b lbl_80053638
/* 80052560 0004E1C0  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052564 0004E1C4  48 00 2D 15 */	bl func_80055278
/* 80052568 0004E1C8  48 1A 39 E5 */	bl func_801F5F4C
/* 8005256C 0004E1CC  2C 03 00 00 */	cmpwi r3, 0
/* 80052570 0004E1D0  41 82 10 C8 */	beq lbl_80053638
/* 80052574 0004E1D4  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052578 0004E1D8  48 00 2D 01 */	bl func_80055278
/* 8005257C 0004E1DC  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052580 0004E1E0  38 80 00 01 */	li r4, 1
/* 80052584 0004E1E4  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80052588 0004E1E8  38 A0 00 01 */	li r5, 1
/* 8005258C 0004E1EC  38 C0 00 00 */	li r6, 0
/* 80052590 0004E1F0  38 E0 00 00 */	li r7, 0
/* 80052594 0004E1F4  39 00 00 00 */	li r8, 0
/* 80052598 0004E1F8  48 1A 28 5D */	bl func_801F4DF4
/* 8005259C 0004E1FC  38 00 00 12 */	li r0, 0x12
/* 800525A0 0004E200  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800525A4 0004E204  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800525A8 0004E208  48 00 22 55 */	bl func_800547FC
/* 800525AC 0004E20C  48 00 10 8C */	b lbl_80053638
/* 800525B0 0004E210  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800525B4 0004E214  48 00 23 D9 */	bl func_8005498C
/* 800525B8 0004E218  48 1A 39 95 */	bl func_801F5F4C
/* 800525BC 0004E21C  2C 03 00 00 */	cmpwi r3, 0
/* 800525C0 0004E220  41 82 10 78 */	beq lbl_80053638
/* 800525C4 0004E224  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800525C8 0004E228  48 00 23 C5 */	bl func_8005498C
/* 800525CC 0004E22C  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 800525D0 0004E230  38 80 00 01 */	li r4, 1
/* 800525D4 0004E234  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 800525D8 0004E238  38 A0 00 01 */	li r5, 1
/* 800525DC 0004E23C  38 C0 00 00 */	li r6, 0
/* 800525E0 0004E240  38 E0 00 00 */	li r7, 0
/* 800525E4 0004E244  39 00 00 00 */	li r8, 0
/* 800525E8 0004E248  48 1A 28 0D */	bl func_801F4DF4
/* 800525EC 0004E24C  38 00 00 13 */	li r0, 0x13
/* 800525F0 0004E250  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800525F4 0004E254  48 00 7E 4D */	bl func_8005A440
/* 800525F8 0004E258  48 00 10 40 */	b lbl_80053638
/* 800525FC 0004E25C  38 60 00 01 */	li r3, 1
/* 80052600 0004E260  4B FB 4F 65 */	bl func_80007564
/* 80052604 0004E264  2C 1E 00 00 */	cmpwi r30, 0
/* 80052608 0004E268  41 82 00 98 */	beq lbl_800526A0
/* 8005260C 0004E26C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052610 0004E270  48 00 21 E5 */	bl func_800547F4
/* 80052614 0004E274  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052618 0004E278  38 80 00 02 */	li r4, 2
/* 8005261C 0004E27C  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80052620 0004E280  38 A0 00 00 */	li r5, 0
/* 80052624 0004E284  38 C0 00 00 */	li r6, 0
/* 80052628 0004E288  38 E0 00 00 */	li r7, 0
/* 8005262C 0004E28C  39 00 00 00 */	li r8, 0
/* 80052630 0004E290  48 1A 27 C5 */	bl func_801F4DF4
/* 80052634 0004E294  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052638 0004E298  48 00 23 55 */	bl func_8005498C
/* 8005263C 0004E29C  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052640 0004E2A0  38 80 00 02 */	li r4, 2
/* 80052644 0004E2A4  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80052648 0004E2A8  38 A0 00 00 */	li r5, 0
/* 8005264C 0004E2AC  38 C0 00 00 */	li r6, 0
/* 80052650 0004E2B0  38 E0 00 00 */	li r7, 0
/* 80052654 0004E2B4  39 00 00 00 */	li r8, 0
/* 80052658 0004E2B8  48 1A 27 9D */	bl func_801F4DF4
/* 8005265C 0004E2BC  38 00 00 14 */	li r0, 0x14
/* 80052660 0004E2C0  38 60 00 01 */	li r3, 1
/* 80052664 0004E2C4  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052668 0004E2C8  48 00 7E 65 */	bl func_8005A4CC
/* 8005266C 0004E2CC  38 60 00 00 */	li r3, 0
/* 80052670 0004E2D0  48 00 3D E9 */	bl func_80056458
/* 80052674 0004E2D4  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052678 0004E2D8  38 80 00 08 */	li r4, 8
/* 8005267C 0004E2DC  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052680 0004E2E0  38 A0 00 01 */	li r5, 1
/* 80052684 0004E2E4  A8 7E 00 0C */	lha r3, 0xc(r30)
/* 80052688 0004E2E8  48 20 17 69 */	bl func_80253DF0
/* 8005268C 0004E2EC  A8 7E 00 0C */	lha r3, 0xc(r30)
/* 80052690 0004E2F0  38 80 00 00 */	li r4, 0
/* 80052694 0004E2F4  38 A0 00 00 */	li r5, 0
/* 80052698 0004E2F8  48 20 17 19 */	bl func_80253DB0
/* 8005269C 0004E2FC  48 00 0F 9C */	b lbl_80053638
lbl_800526A0:
/* 800526A0 0004E300  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 800526A4 0004E304  C8 82 85 18 */	lfd f4, lbl_80640B18-_SDA2_BASE_(r2)
/* 800526A8 0004E308  88 03 00 59 */	lbz r0, 0x59(r3)
/* 800526AC 0004E30C  C8 43 00 A0 */	lfd f2, 0xa0(r3)
/* 800526B0 0004E310  90 01 00 3C */	stw r0, 0x3c(r1)
/* 800526B4 0004E314  C8 2D 98 78 */	lfd f1, lbl_8063EB38-_SDA_BASE_(r13)
/* 800526B8 0004E318  C8 61 00 38 */	lfd f3, 0x38(r1)
/* 800526BC 0004E31C  C8 02 84 F8 */	lfd f0, lbl_80640AF8-_SDA2_BASE_(r2)
/* 800526C0 0004E320  FC 63 20 28 */	fsub f3, f3, f4
/* 800526C4 0004E324  FC 42 18 24 */	fdiv f2, f2, f3
/* 800526C8 0004E328  FC 22 08 28 */	fsub f1, f2, f1
/* 800526CC 0004E32C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800526D0 0004E330  4C 41 13 82 */	cror 2, 1, 2
/* 800526D4 0004E334  40 82 0F 64 */	bne lbl_80053638
/* 800526D8 0004E338  48 00 4E 85 */	bl func_8005755C
/* 800526DC 0004E33C  2C 03 00 00 */	cmpwi r3, 0
/* 800526E0 0004E340  40 82 0F 58 */	bne lbl_80053638
/* 800526E4 0004E344  38 00 00 15 */	li r0, 0x15
/* 800526E8 0004E348  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800526EC 0004E34C  48 00 3B 89 */	bl func_80056274
/* 800526F0 0004E350  38 60 00 01 */	li r3, 1
/* 800526F4 0004E354  48 00 3D 65 */	bl func_80056458
/* 800526F8 0004E358  48 00 0F 40 */	b lbl_80053638
/* 800526FC 0004E35C  48 00 3B FD */	bl func_800562F8
/* 80052700 0004E360  2C 03 00 00 */	cmpwi r3, 0
/* 80052704 0004E364  41 82 0F 34 */	beq lbl_80053638
/* 80052708 0004E368  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005270C 0004E36C  38 80 00 00 */	li r4, 0
/* 80052710 0004E370  48 00 22 85 */	bl func_80054994
/* 80052714 0004E374  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052718 0004E378  48 00 21 FD */	bl func_80054914
/* 8005271C 0004E37C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052720 0004E380  48 00 29 45 */	bl func_80055064
/* 80052724 0004E384  88 0D 98 89 */	lbz r0, lbl_8063EB49-_SDA_BASE_(r13)
/* 80052728 0004E388  2C 00 00 00 */	cmpwi r0, 0
/* 8005272C 0004E38C  41 82 00 0C */	beq lbl_80052738
/* 80052730 0004E390  38 60 01 F4 */	li r3, 0x1f4
/* 80052734 0004E394  48 20 71 11 */	bl func_80259844
lbl_80052738:
/* 80052738 0004E398  38 60 01 F4 */	li r3, 0x1f4
/* 8005273C 0004E39C  38 80 00 01 */	li r4, 1
/* 80052740 0004E3A0  38 A0 00 00 */	li r5, 0
/* 80052744 0004E3A4  38 C0 00 01 */	li r6, 1
/* 80052748 0004E3A8  38 E0 00 00 */	li r7, 0
/* 8005274C 0004E3AC  48 20 70 4D */	bl func_80259798
/* 80052750 0004E3B0  38 60 01 F4 */	li r3, 0x1f4
/* 80052754 0004E3B4  48 20 71 4D */	bl func_802598A0
/* 80052758 0004E3B8  38 00 00 01 */	li r0, 1
/* 8005275C 0004E3BC  98 0D 98 89 */	stb r0, lbl_8063EB49-_SDA_BASE_(r13)
/* 80052760 0004E3C0  48 00 3B 5D */	bl func_800562BC
/* 80052764 0004E3C4  38 00 00 16 */	li r0, 0x16
/* 80052768 0004E3C8  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 8005276C 0004E3CC  48 00 0E CC */	b lbl_80053638
/* 80052770 0004E3D0  48 00 3B 89 */	bl func_800562F8
/* 80052774 0004E3D4  2C 03 00 00 */	cmpwi r3, 0
/* 80052778 0004E3D8  41 82 0E C0 */	beq lbl_80053638
/* 8005277C 0004E3DC  38 00 00 19 */	li r0, 0x19
/* 80052780 0004E3E0  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052784 0004E3E4  48 00 0E B4 */	b lbl_80053638
/* 80052788 0004E3E8  2C 03 00 00 */	cmpwi r3, 0
/* 8005278C 0004E3EC  41 82 00 14 */	beq lbl_800527A0
/* 80052790 0004E3F0  48 00 3A E5 */	bl func_80056274
/* 80052794 0004E3F4  38 00 00 1B */	li r0, 0x1b
/* 80052798 0004E3F8  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 8005279C 0004E3FC  48 00 0E 9C */	b lbl_80053638
lbl_800527A0:
/* 800527A0 0004E400  38 60 01 F4 */	li r3, 0x1f4
/* 800527A4 0004E404  48 20 71 95 */	bl func_80259938
/* 800527A8 0004E408  2C 03 00 01 */	cmpwi r3, 1
/* 800527AC 0004E40C  41 82 0E 8C */	beq lbl_80053638
/* 800527B0 0004E410  38 00 00 1B */	li r0, 0x1b
/* 800527B4 0004E414  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800527B8 0004E418  48 00 3A BD */	bl func_80056274
/* 800527BC 0004E41C  48 00 0E 7C */	b lbl_80053638
/* 800527C0 0004E420  38 00 00 17 */	li r0, 0x17
/* 800527C4 0004E424  38 60 01 F4 */	li r3, 0x1f4
/* 800527C8 0004E428  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800527CC 0004E42C  48 20 70 79 */	bl func_80259844
/* 800527D0 0004E430  38 00 00 00 */	li r0, 0
/* 800527D4 0004E434  98 0D 98 89 */	stb r0, lbl_8063EB49-_SDA_BASE_(r13)
/* 800527D8 0004E438  48 00 0E 60 */	b lbl_80053638
/* 800527DC 0004E43C  48 00 3B 1D */	bl func_800562F8
/* 800527E0 0004E440  2C 03 00 00 */	cmpwi r3, 0
/* 800527E4 0004E444  41 82 0E 54 */	beq lbl_80053638
/* 800527E8 0004E448  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800527EC 0004E44C  38 80 00 00 */	li r4, 0
/* 800527F0 0004E450  48 00 22 45 */	bl func_80054A34
/* 800527F4 0004E454  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800527F8 0004E458  48 00 26 61 */	bl func_80054E58
/* 800527FC 0004E45C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052800 0004E460  48 00 2A 79 */	bl func_80055278
/* 80052804 0004E464  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052808 0004E468  38 80 00 01 */	li r4, 1
/* 8005280C 0004E46C  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80052810 0004E470  38 A0 00 01 */	li r5, 1
/* 80052814 0004E474  38 C0 00 00 */	li r6, 0
/* 80052818 0004E478  38 E0 00 00 */	li r7, 0
/* 8005281C 0004E47C  39 00 00 00 */	li r8, 0
/* 80052820 0004E480  48 1A 25 D5 */	bl func_801F4DF4
/* 80052824 0004E484  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052828 0004E488  48 00 1F D5 */	bl func_800547FC
/* 8005282C 0004E48C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052830 0004E490  48 00 21 5D */	bl func_8005498C
/* 80052834 0004E494  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80052838 0004E498  38 80 00 01 */	li r4, 1
/* 8005283C 0004E49C  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80052840 0004E4A0  38 A0 00 01 */	li r5, 1
/* 80052844 0004E4A4  38 C0 00 00 */	li r6, 0
/* 80052848 0004E4A8  38 E0 00 00 */	li r7, 0
/* 8005284C 0004E4AC  39 00 00 00 */	li r8, 0
/* 80052850 0004E4B0  48 1A 25 A5 */	bl func_801F4DF4
/* 80052854 0004E4B4  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80052858 0004E4B8  38 80 00 01 */	li r4, 1
/* 8005285C 0004E4BC  48 00 21 39 */	bl func_80054994
/* 80052860 0004E4C0  38 60 00 03 */	li r3, 3
/* 80052864 0004E4C4  38 80 00 00 */	li r4, 0
/* 80052868 0004E4C8  48 00 3B 85 */	bl func_800563EC
/* 8005286C 0004E4CC  48 00 3A 51 */	bl func_800562BC
/* 80052870 0004E4D0  38 00 00 18 */	li r0, 0x18
/* 80052874 0004E4D4  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052878 0004E4D8  48 00 0D C0 */	b lbl_80053638
/* 8005287C 0004E4DC  48 00 3A 7D */	bl func_800562F8
/* 80052880 0004E4E0  2C 03 00 00 */	cmpwi r3, 0
/* 80052884 0004E4E4  41 82 0D B4 */	beq lbl_80053638
/* 80052888 0004E4E8  38 00 00 13 */	li r0, 0x13
/* 8005288C 0004E4EC  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80052890 0004E4F0  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052894 0004E4F4  C8 42 85 18 */	lfd f2, lbl_80640B18-_SDA2_BASE_(r2)
/* 80052898 0004E4F8  88 03 00 59 */	lbz r0, 0x59(r3)
/* 8005289C 0004E4FC  C8 03 00 A0 */	lfd f0, 0xa0(r3)
/* 800528A0 0004E500  90 01 00 34 */	stw r0, 0x34(r1)
/* 800528A4 0004E504  C8 21 00 30 */	lfd f1, 0x30(r1)
/* 800528A8 0004E508  FC 21 10 28 */	fsub f1, f1, f2
/* 800528AC 0004E50C  FC 00 08 24 */	fdiv f0, f0, f1
/* 800528B0 0004E510  D8 0D 98 78 */	stfd f0, lbl_8063EB38-_SDA_BASE_(r13)
/* 800528B4 0004E514  48 00 0D 84 */	b lbl_80053638
/* 800528B8 0004E518  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800528BC 0004E51C  48 00 1F 39 */	bl func_800547F4
/* 800528C0 0004E520  48 1A 36 8D */	bl func_801F5F4C
/* 800528C4 0004E524  2C 03 00 00 */	cmpwi r3, 0
/* 800528C8 0004E528  41 82 0D 70 */	beq lbl_80053638
/* 800528CC 0004E52C  38 00 00 1D */	li r0, 0x1d
/* 800528D0 0004E530  38 60 00 00 */	li r3, 0
/* 800528D4 0004E534  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800528D8 0004E538  48 00 35 DD */	bl func_80055EB4
/* 800528DC 0004E53C  38 60 00 04 */	li r3, 4
/* 800528E0 0004E540  38 80 00 00 */	li r4, 0
/* 800528E4 0004E544  48 00 3B 09 */	bl func_800563EC
/* 800528E8 0004E548  38 60 00 01 */	li r3, 1
/* 800528EC 0004E54C  48 10 AC 15 */	bl func_8015D500
/* 800528F0 0004E550  48 0E C7 55 */	bl func_8013F044
/* 800528F4 0004E554  38 60 00 00 */	li r3, 0
/* 800528F8 0004E558  4B FB 4C 6D */	bl func_80007564
/* 800528FC 0004E55C  48 00 0D 3C */	b lbl_80053638
/* 80052900 0004E560  80 8D 98 70 */	lwz r4, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052904 0004E564  2C 04 00 00 */	cmpwi r4, 0
/* 80052908 0004E568  40 82 00 10 */	bne lbl_80052918
/* 8005290C 0004E56C  38 00 00 1F */	li r0, 0x1f
/* 80052910 0004E570  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052914 0004E574  48 00 0D 24 */	b lbl_80053638
lbl_80052918:
/* 80052918 0004E578  38 04 FF FF */	addi r0, r4, -1
/* 8005291C 0004E57C  2C 03 00 00 */	cmpwi r3, 0
/* 80052920 0004E580  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052924 0004E584  41 82 0D 14 */	beq lbl_80053638
/* 80052928 0004E588  38 00 00 1F */	li r0, 0x1f
/* 8005292C 0004E58C  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052930 0004E590  48 00 0D 08 */	b lbl_80053638
/* 80052934 0004E594  80 0D 98 84 */	lwz r0, lbl_8063EB44-_SDA_BASE_(r13)
/* 80052938 0004E598  2C 00 00 00 */	cmpwi r0, 0
/* 8005293C 0004E59C  40 82 00 0C */	bne lbl_80052948
/* 80052940 0004E5A0  48 10 CD 51 */	bl func_8015F690
/* 80052944 0004E5A4  90 6D 98 84 */	stw r3, lbl_8063EB44-_SDA_BASE_(r13)
lbl_80052948:
/* 80052948 0004E5A8  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 8005294C 0004E5AC  38 80 00 08 */	li r4, 8
/* 80052950 0004E5B0  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052954 0004E5B4  38 A0 00 01 */	li r5, 1
/* 80052958 0004E5B8  A8 7E 00 08 */	lha r3, 8(r30)
/* 8005295C 0004E5BC  48 20 14 95 */	bl func_80253DF0
/* 80052960 0004E5C0  80 6D 98 84 */	lwz r3, lbl_8063EB44-_SDA_BASE_(r13)
/* 80052964 0004E5C4  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 80052968 0004E5C8  2C 00 00 01 */	cmpwi r0, 1
/* 8005296C 0004E5CC  41 82 00 28 */	beq lbl_80052994
/* 80052970 0004E5D0  40 80 00 38 */	bge lbl_800529A8
/* 80052974 0004E5D4  2C 00 00 00 */	cmpwi r0, 0
/* 80052978 0004E5D8  40 80 00 08 */	bge lbl_80052980
/* 8005297C 0004E5DC  48 00 00 2C */	b lbl_800529A8
lbl_80052980:
/* 80052980 0004E5E0  A8 7E 00 08 */	lha r3, 8(r30)
/* 80052984 0004E5E4  38 80 00 00 */	li r4, 0
/* 80052988 0004E5E8  38 A0 00 00 */	li r5, 0
/* 8005298C 0004E5EC  48 20 14 25 */	bl func_80253DB0
/* 80052990 0004E5F0  48 00 00 30 */	b lbl_800529C0
lbl_80052994:
/* 80052994 0004E5F4  A8 7E 00 08 */	lha r3, 8(r30)
/* 80052998 0004E5F8  38 80 00 02 */	li r4, 2
/* 8005299C 0004E5FC  38 A0 00 00 */	li r5, 0
/* 800529A0 0004E600  48 20 14 11 */	bl func_80253DB0
/* 800529A4 0004E604  48 00 00 1C */	b lbl_800529C0
lbl_800529A8:
/* 800529A8 0004E608  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 800529AC 0004E60C  38 80 00 04 */	li r4, 4
/* 800529B0 0004E610  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 800529B4 0004E614  38 A0 00 00 */	li r5, 0
/* 800529B8 0004E618  A8 63 00 08 */	lha r3, 8(r3)
/* 800529BC 0004E61C  48 20 13 F5 */	bl func_80253DB0
lbl_800529C0:
/* 800529C0 0004E620  38 60 50 A1 */	li r3, 0x50a1
/* 800529C4 0004E624  38 00 00 20 */	li r0, 0x20
/* 800529C8 0004E628  90 6D 98 8C */	stw r3, lbl_8063EB4C-_SDA_BASE_(r13)
/* 800529CC 0004E62C  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800529D0 0004E630  48 00 0C 68 */	b lbl_80053638
/* 800529D4 0004E634  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 800529D8 0004E638  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 800529DC 0004E63C  A8 63 00 08 */	lha r3, 8(r3)
/* 800529E0 0004E640  48 20 13 F1 */	bl func_80253DD0
/* 800529E4 0004E644  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 800529E8 0004E648  28 00 00 03 */	cmplwi r0, 3
/* 800529EC 0004E64C  40 82 0C 4C */	bne lbl_80053638
/* 800529F0 0004E650  38 00 00 21 */	li r0, 0x21
/* 800529F4 0004E654  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800529F8 0004E658  48 00 0C 40 */	b lbl_80053638
/* 800529FC 0004E65C  2C 03 00 00 */	cmpwi r3, 0
/* 80052A00 0004E660  41 82 0C 38 */	beq lbl_80053638
/* 80052A04 0004E664  80 6D 98 84 */	lwz r3, lbl_8063EB44-_SDA_BASE_(r13)
/* 80052A08 0004E668  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 80052A0C 0004E66C  2C 00 00 01 */	cmpwi r0, 1
/* 80052A10 0004E670  41 82 00 30 */	beq lbl_80052A40
/* 80052A14 0004E674  40 80 00 48 */	bge lbl_80052A5C
/* 80052A18 0004E678  2C 00 00 00 */	cmpwi r0, 0
/* 80052A1C 0004E67C  40 80 00 08 */	bge lbl_80052A24
/* 80052A20 0004E680  48 00 00 3C */	b lbl_80052A5C
lbl_80052A24:
/* 80052A24 0004E684  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052A28 0004E688  38 80 00 01 */	li r4, 1
/* 80052A2C 0004E68C  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052A30 0004E690  38 A0 00 00 */	li r5, 0
/* 80052A34 0004E694  A8 63 00 08 */	lha r3, 8(r3)
/* 80052A38 0004E698  48 20 13 79 */	bl func_80253DB0
/* 80052A3C 0004E69C  48 00 00 38 */	b lbl_80052A74
lbl_80052A40:
/* 80052A40 0004E6A0  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052A44 0004E6A4  38 80 00 03 */	li r4, 3
/* 80052A48 0004E6A8  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052A4C 0004E6AC  38 A0 00 00 */	li r5, 0
/* 80052A50 0004E6B0  A8 63 00 08 */	lha r3, 8(r3)
/* 80052A54 0004E6B4  48 20 13 5D */	bl func_80253DB0
/* 80052A58 0004E6B8  48 00 00 1C */	b lbl_80052A74
lbl_80052A5C:
/* 80052A5C 0004E6BC  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052A60 0004E6C0  38 80 00 05 */	li r4, 5
/* 80052A64 0004E6C4  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052A68 0004E6C8  38 A0 00 00 */	li r5, 0
/* 80052A6C 0004E6CC  A8 63 00 08 */	lha r3, 8(r3)
/* 80052A70 0004E6D0  48 20 13 41 */	bl func_80253DB0
lbl_80052A74:
/* 80052A74 0004E6D4  38 00 00 22 */	li r0, 0x22
/* 80052A78 0004E6D8  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052A7C 0004E6DC  48 00 0B BC */	b lbl_80053638
/* 80052A80 0004E6E0  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052A84 0004E6E4  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052A88 0004E6E8  A8 7E 00 08 */	lha r3, 8(r30)
/* 80052A8C 0004E6EC  48 20 13 45 */	bl func_80253DD0
/* 80052A90 0004E6F0  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052A94 0004E6F4  28 00 00 03 */	cmplwi r0, 3
/* 80052A98 0004E6F8  40 82 0B A0 */	bne lbl_80053638
/* 80052A9C 0004E6FC  A8 7E 00 08 */	lha r3, 8(r30)
/* 80052AA0 0004E700  38 80 00 08 */	li r4, 8
/* 80052AA4 0004E704  38 A0 00 00 */	li r5, 0
/* 80052AA8 0004E708  48 20 13 49 */	bl func_80253DF0
/* 80052AAC 0004E70C  38 00 00 2C */	li r0, 0x2c
/* 80052AB0 0004E710  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052AB4 0004E714  48 00 0B 84 */	b lbl_80053638
/* 80052AB8 0004E718  80 8D 98 70 */	lwz r4, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052ABC 0004E71C  2C 04 00 00 */	cmpwi r4, 0
/* 80052AC0 0004E720  40 82 00 38 */	bne lbl_80052AF8
/* 80052AC4 0004E724  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052AC8 0004E728  38 00 00 24 */	li r0, 0x24
/* 80052ACC 0004E72C  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052AD0 0004E730  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052AD4 0004E734  A8 7E 00 0A */	lha r3, 0xa(r30)
/* 80052AD8 0004E738  38 80 00 08 */	li r4, 8
/* 80052ADC 0004E73C  38 A0 00 01 */	li r5, 1
/* 80052AE0 0004E740  48 20 13 11 */	bl func_80253DF0
/* 80052AE4 0004E744  A8 7E 00 0A */	lha r3, 0xa(r30)
/* 80052AE8 0004E748  38 80 00 00 */	li r4, 0
/* 80052AEC 0004E74C  38 A0 00 00 */	li r5, 0
/* 80052AF0 0004E750  48 20 12 C1 */	bl func_80253DB0
/* 80052AF4 0004E754  48 00 0B 44 */	b lbl_80053638
lbl_80052AF8:
/* 80052AF8 0004E758  38 04 FF FF */	addi r0, r4, -1
/* 80052AFC 0004E75C  2C 03 00 00 */	cmpwi r3, 0
/* 80052B00 0004E760  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052B04 0004E764  41 82 0B 34 */	beq lbl_80053638
/* 80052B08 0004E768  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052B0C 0004E76C  38 00 00 24 */	li r0, 0x24
/* 80052B10 0004E770  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052B14 0004E774  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052B18 0004E778  A8 7E 00 0A */	lha r3, 0xa(r30)
/* 80052B1C 0004E77C  38 80 00 08 */	li r4, 8
/* 80052B20 0004E780  38 A0 00 01 */	li r5, 1
/* 80052B24 0004E784  48 20 12 CD */	bl func_80253DF0
/* 80052B28 0004E788  A8 7E 00 0A */	lha r3, 0xa(r30)
/* 80052B2C 0004E78C  38 80 00 00 */	li r4, 0
/* 80052B30 0004E790  38 A0 00 00 */	li r5, 0
/* 80052B34 0004E794  48 20 12 7D */	bl func_80253DB0
/* 80052B38 0004E798  48 00 0B 00 */	b lbl_80053638
/* 80052B3C 0004E79C  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052B40 0004E7A0  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052B44 0004E7A4  A8 63 00 0A */	lha r3, 0xa(r3)
/* 80052B48 0004E7A8  48 20 12 89 */	bl func_80253DD0
/* 80052B4C 0004E7AC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052B50 0004E7B0  28 00 00 03 */	cmplwi r0, 3
/* 80052B54 0004E7B4  40 82 0A E4 */	bne lbl_80053638
/* 80052B58 0004E7B8  38 60 00 25 */	li r3, 0x25
/* 80052B5C 0004E7BC  38 00 00 00 */	li r0, 0
/* 80052B60 0004E7C0  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052B64 0004E7C4  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052B68 0004E7C8  48 00 0A D0 */	b lbl_80053638
/* 80052B6C 0004E7CC  38 60 00 00 */	li r3, 0
/* 80052B70 0004E7D0  38 80 00 00 */	li r4, 0
/* 80052B74 0004E7D4  48 00 6D 85 */	bl func_800598F8
/* 80052B78 0004E7D8  C0 42 85 00 */	lfs f2, lbl_80640B00-_SDA2_BASE_(r2)
/* 80052B7C 0004E7DC  38 81 00 10 */	addi r4, r1, 0x10
/* 80052B80 0004E7E0  C0 22 85 04 */	lfs f1, lbl_80640B04-_SDA2_BASE_(r2)
/* 80052B84 0004E7E4  38 60 00 32 */	li r3, 0x32
/* 80052B88 0004E7E8  C0 02 85 08 */	lfs f0, lbl_80640B08-_SDA2_BASE_(r2)
/* 80052B8C 0004E7EC  D0 41 00 1C */	stfs f2, 0x1c(r1)
/* 80052B90 0004E7F0  D0 41 00 10 */	stfs f2, 0x10(r1)
/* 80052B94 0004E7F4  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80052B98 0004E7F8  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 80052B9C 0004E7FC  D0 41 00 24 */	stfs f2, 0x24(r1)
/* 80052BA0 0004E800  D0 41 00 20 */	stfs f2, 0x20(r1)
/* 80052BA4 0004E804  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 80052BA8 0004E808  D0 01 00 28 */	stfs f0, 0x28(r1)
/* 80052BAC 0004E80C  48 00 6E 91 */	bl func_80059A3C
/* 80052BB0 0004E810  3C 60 00 80 */	lis r3, 0x00800038@ha
/* 80052BB4 0004E814  38 80 00 01 */	li r4, 1
/* 80052BB8 0004E818  38 63 00 38 */	addi r3, r3, 0x00800038@l
/* 80052BBC 0004E81C  38 A0 00 00 */	li r5, 0
/* 80052BC0 0004E820  38 C0 00 01 */	li r6, 1
/* 80052BC4 0004E824  48 00 6E A9 */	bl func_80059A6C
/* 80052BC8 0004E828  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052BCC 0004E82C  28 00 00 32 */	cmplwi r0, 0x32
/* 80052BD0 0004E830  40 82 00 10 */	bne lbl_80052BE0
/* 80052BD4 0004E834  80 6D 98 70 */	lwz r3, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052BD8 0004E838  38 03 00 01 */	addi r0, r3, 1
/* 80052BDC 0004E83C  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
lbl_80052BE0:
/* 80052BE0 0004E840  C0 42 85 10 */	lfs f2, lbl_80640B10-_SDA2_BASE_(r2)
/* 80052BE4 0004E844  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 80052BE8 0004E848  C0 02 85 0C */	lfs f0, lbl_80640B0C-_SDA2_BASE_(r2)
/* 80052BEC 0004E84C  EC 22 00 72 */	fmuls f1, f2, f1
/* 80052BF0 0004E850  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052BF4 0004E854  EC 00 08 2A */	fadds f0, f0, f1
/* 80052BF8 0004E858  FC 00 00 1E */	fctiwz f0, f0
/* 80052BFC 0004E85C  D8 01 00 40 */	stfd f0, 0x40(r1)
/* 80052C00 0004E860  80 61 00 44 */	lwz r3, 0x44(r1)
/* 80052C04 0004E864  7C 00 18 40 */	cmplw r0, r3
/* 80052C08 0004E868  40 82 0A 30 */	bne lbl_80053638
/* 80052C0C 0004E86C  38 00 00 26 */	li r0, 0x26
/* 80052C10 0004E870  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052C14 0004E874  48 00 0A 24 */	b lbl_80053638
/* 80052C18 0004E878  3C 60 04 00 */	lis r3, 0x400
/* 80052C1C 0004E87C  38 80 00 00 */	li r4, 0
/* 80052C20 0004E880  38 A0 00 00 */	li r5, 0
/* 80052C24 0004E884  38 C0 00 01 */	li r6, 1
/* 80052C28 0004E888  48 00 6E 45 */	bl func_80059A6C
/* 80052C2C 0004E88C  2C 03 00 00 */	cmpwi r3, 0
/* 80052C30 0004E890  41 82 0A 08 */	beq lbl_80053638
/* 80052C34 0004E894  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052C38 0004E898  38 80 00 01 */	li r4, 1
/* 80052C3C 0004E89C  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052C40 0004E8A0  38 A0 00 00 */	li r5, 0
/* 80052C44 0004E8A4  A8 63 00 0A */	lha r3, 0xa(r3)
/* 80052C48 0004E8A8  48 20 11 69 */	bl func_80253DB0
/* 80052C4C 0004E8AC  38 00 00 27 */	li r0, 0x27
/* 80052C50 0004E8B0  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052C54 0004E8B4  48 00 09 E4 */	b lbl_80053638
/* 80052C58 0004E8B8  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052C5C 0004E8BC  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052C60 0004E8C0  A8 7E 00 0A */	lha r3, 0xa(r30)
/* 80052C64 0004E8C4  48 20 11 6D */	bl func_80253DD0
/* 80052C68 0004E8C8  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052C6C 0004E8CC  28 00 00 03 */	cmplwi r0, 3
/* 80052C70 0004E8D0  40 82 09 C8 */	bne lbl_80053638
/* 80052C74 0004E8D4  A8 7E 00 0A */	lha r3, 0xa(r30)
/* 80052C78 0004E8D8  38 80 00 08 */	li r4, 8
/* 80052C7C 0004E8DC  38 A0 00 00 */	li r5, 0
/* 80052C80 0004E8E0  48 20 11 71 */	bl func_80253DF0
/* 80052C84 0004E8E4  3C 60 04 00 */	lis r3, 0x400
/* 80052C88 0004E8E8  38 80 00 00 */	li r4, 0
/* 80052C8C 0004E8EC  38 A0 00 00 */	li r5, 0
/* 80052C90 0004E8F0  38 C0 00 01 */	li r6, 1
/* 80052C94 0004E8F4  48 00 6D D9 */	bl func_80059A6C
/* 80052C98 0004E8F8  2C 03 00 00 */	cmpwi r3, 0
/* 80052C9C 0004E8FC  41 82 09 9C */	beq lbl_80053638
/* 80052CA0 0004E900  A8 7E 00 06 */	lha r3, 6(r30)
/* 80052CA4 0004E904  38 80 00 08 */	li r4, 8
/* 80052CA8 0004E908  38 A0 00 01 */	li r5, 1
/* 80052CAC 0004E90C  48 20 11 45 */	bl func_80253DF0
/* 80052CB0 0004E910  A8 7E 00 06 */	lha r3, 6(r30)
/* 80052CB4 0004E914  38 80 00 08 */	li r4, 8
/* 80052CB8 0004E918  38 A0 00 00 */	li r5, 0
/* 80052CBC 0004E91C  48 20 10 F5 */	bl func_80253DB0
/* 80052CC0 0004E920  38 60 00 28 */	li r3, 0x28
/* 80052CC4 0004E924  38 00 00 00 */	li r0, 0
/* 80052CC8 0004E928  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052CCC 0004E92C  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052CD0 0004E930  48 00 09 68 */	b lbl_80053638
/* 80052CD4 0004E934  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052CD8 0004E938  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052CDC 0004E93C  A8 63 00 06 */	lha r3, 6(r3)
/* 80052CE0 0004E940  48 20 10 F1 */	bl func_80253DD0
/* 80052CE4 0004E944  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052CE8 0004E948  28 00 00 03 */	cmplwi r0, 3
/* 80052CEC 0004E94C  40 82 09 4C */	bne lbl_80053638
/* 80052CF0 0004E950  38 00 00 29 */	li r0, 0x29
/* 80052CF4 0004E954  38 60 00 00 */	li r3, 0
/* 80052CF8 0004E958  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052CFC 0004E95C  38 80 00 00 */	li r4, 0
/* 80052D00 0004E960  48 00 6B F9 */	bl func_800598F8
/* 80052D04 0004E964  48 00 09 34 */	b lbl_80053638
/* 80052D08 0004E968  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052D0C 0004E96C  28 00 00 01 */	cmplwi r0, 1
/* 80052D10 0004E970  40 82 00 2C */	bne lbl_80052D3C
/* 80052D14 0004E974  3C 60 04 00 */	lis r3, 0x400
/* 80052D18 0004E978  38 80 00 00 */	li r4, 0
/* 80052D1C 0004E97C  38 A0 00 00 */	li r5, 0
/* 80052D20 0004E980  38 C0 00 01 */	li r6, 1
/* 80052D24 0004E984  48 00 6D 49 */	bl func_80059A6C
/* 80052D28 0004E988  2C 03 00 00 */	cmpwi r3, 0
/* 80052D2C 0004E98C  41 82 00 10 */	beq lbl_80052D3C
/* 80052D30 0004E990  38 00 00 02 */	li r0, 2
/* 80052D34 0004E994  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052D38 0004E998  48 00 09 00 */	b lbl_80053638
lbl_80052D3C:
/* 80052D3C 0004E99C  38 60 00 38 */	li r3, 0x38
/* 80052D40 0004E9A0  38 80 00 00 */	li r4, 0
/* 80052D44 0004E9A4  38 A0 00 00 */	li r5, 0
/* 80052D48 0004E9A8  38 C0 00 01 */	li r6, 1
/* 80052D4C 0004E9AC  48 00 6D 21 */	bl func_80059A6C
/* 80052D50 0004E9B0  54 60 00 01 */	rlwinm. r0, r3, 0, 0, 0
/* 80052D54 0004E9B4  41 82 00 BC */	beq lbl_80052E10
/* 80052D58 0004E9B8  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052D5C 0004E9BC  28 00 00 02 */	cmplwi r0, 2
/* 80052D60 0004E9C0  40 82 08 D8 */	bne lbl_80053638
/* 80052D64 0004E9C4  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052D68 0004E9C8  2C 00 00 02 */	cmpwi r0, 2
/* 80052D6C 0004E9CC  41 82 00 4C */	beq lbl_80052DB8
/* 80052D70 0004E9D0  40 80 00 10 */	bge lbl_80052D80
/* 80052D74 0004E9D4  2C 00 00 01 */	cmpwi r0, 1
/* 80052D78 0004E9D8  40 80 00 14 */	bge lbl_80052D8C
/* 80052D7C 0004E9DC  48 00 08 BC */	b lbl_80053638
lbl_80052D80:
/* 80052D80 0004E9E0  2C 00 00 04 */	cmpwi r0, 4
/* 80052D84 0004E9E4  40 80 08 B4 */	bge lbl_80053638
/* 80052D88 0004E9E8  48 00 00 5C */	b lbl_80052DE4
lbl_80052D8C:
/* 80052D8C 0004E9EC  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052D90 0004E9F0  38 80 00 03 */	li r4, 3
/* 80052D94 0004E9F4  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052D98 0004E9F8  38 A0 00 00 */	li r5, 0
/* 80052D9C 0004E9FC  A8 63 00 06 */	lha r3, 6(r3)
/* 80052DA0 0004EA00  48 20 10 11 */	bl func_80253DB0
/* 80052DA4 0004EA04  38 00 00 2A */	li r0, 0x2a
/* 80052DA8 0004EA08  38 60 00 01 */	li r3, 1
/* 80052DAC 0004EA0C  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052DB0 0004EA10  48 00 77 1D */	bl func_8005A4CC
/* 80052DB4 0004EA14  48 00 08 84 */	b lbl_80053638
lbl_80052DB8:
/* 80052DB8 0004EA18  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052DBC 0004EA1C  38 80 00 04 */	li r4, 4
/* 80052DC0 0004EA20  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052DC4 0004EA24  38 A0 00 00 */	li r5, 0
/* 80052DC8 0004EA28  A8 63 00 06 */	lha r3, 6(r3)
/* 80052DCC 0004EA2C  48 20 0F E5 */	bl func_80253DB0
/* 80052DD0 0004EA30  38 00 00 2A */	li r0, 0x2a
/* 80052DD4 0004EA34  38 60 00 01 */	li r3, 1
/* 80052DD8 0004EA38  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052DDC 0004EA3C  48 00 76 F1 */	bl func_8005A4CC
/* 80052DE0 0004EA40  48 00 08 58 */	b lbl_80053638
lbl_80052DE4:
/* 80052DE4 0004EA44  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052DE8 0004EA48  38 80 00 05 */	li r4, 5
/* 80052DEC 0004EA4C  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052DF0 0004EA50  38 A0 00 00 */	li r5, 0
/* 80052DF4 0004EA54  A8 63 00 06 */	lha r3, 6(r3)
/* 80052DF8 0004EA58  48 20 0F B9 */	bl func_80253DB0
/* 80052DFC 0004EA5C  38 00 00 2A */	li r0, 0x2a
/* 80052E00 0004EA60  38 60 00 01 */	li r3, 1
/* 80052E04 0004EA64  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052E08 0004EA68  48 00 76 C5 */	bl func_8005A4CC
/* 80052E0C 0004EA6C  48 00 08 2C */	b lbl_80053638
lbl_80052E10:
/* 80052E10 0004EA70  2C 03 00 02 */	cmpwi r3, 2
/* 80052E14 0004EA74  41 82 00 58 */	beq lbl_80052E6C
/* 80052E18 0004EA78  40 80 00 10 */	bge lbl_80052E28
/* 80052E1C 0004EA7C  2C 03 00 01 */	cmpwi r3, 1
/* 80052E20 0004EA80  40 80 00 14 */	bge lbl_80052E34
/* 80052E24 0004EA84  48 00 08 14 */	b lbl_80053638
lbl_80052E28:
/* 80052E28 0004EA88  2C 03 00 04 */	cmpwi r3, 4
/* 80052E2C 0004EA8C  40 80 08 0C */	bge lbl_80053638
/* 80052E30 0004EA90  48 00 00 60 */	b lbl_80052E90
lbl_80052E34:
/* 80052E34 0004EA94  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052E38 0004EA98  38 80 00 00 */	li r4, 0
/* 80052E3C 0004EA9C  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052E40 0004EAA0  38 A0 00 00 */	li r5, 0
/* 80052E44 0004EAA4  A8 63 00 06 */	lha r3, 6(r3)
/* 80052E48 0004EAA8  48 20 0F 69 */	bl func_80253DB0
/* 80052E4C 0004EAAC  38 60 00 03 */	li r3, 3
/* 80052E50 0004EAB0  48 00 76 7D */	bl func_8005A4CC
/* 80052E54 0004EAB4  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052E58 0004EAB8  2C 00 00 00 */	cmpwi r0, 0
/* 80052E5C 0004EABC  40 82 07 DC */	bne lbl_80053638
/* 80052E60 0004EAC0  38 00 00 01 */	li r0, 1
/* 80052E64 0004EAC4  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052E68 0004EAC8  48 00 07 D0 */	b lbl_80053638
lbl_80052E6C:
/* 80052E6C 0004EACC  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052E70 0004EAD0  38 80 00 01 */	li r4, 1
/* 80052E74 0004EAD4  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052E78 0004EAD8  38 A0 00 00 */	li r5, 0
/* 80052E7C 0004EADC  A8 63 00 06 */	lha r3, 6(r3)
/* 80052E80 0004EAE0  48 20 0F 31 */	bl func_80253DB0
/* 80052E84 0004EAE4  38 60 00 03 */	li r3, 3
/* 80052E88 0004EAE8  48 00 76 45 */	bl func_8005A4CC
/* 80052E8C 0004EAEC  48 00 07 AC */	b lbl_80053638
lbl_80052E90:
/* 80052E90 0004EAF0  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80052E94 0004EAF4  38 80 00 02 */	li r4, 2
/* 80052E98 0004EAF8  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 80052E9C 0004EAFC  38 A0 00 00 */	li r5, 0
/* 80052EA0 0004EB00  A8 63 00 06 */	lha r3, 6(r3)
/* 80052EA4 0004EB04  48 20 0F 0D */	bl func_80253DB0
/* 80052EA8 0004EB08  38 60 00 03 */	li r3, 3
/* 80052EAC 0004EB0C  48 00 76 21 */	bl func_8005A4CC
/* 80052EB0 0004EB10  48 00 07 88 */	b lbl_80053638
/* 80052EB4 0004EB14  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052EB8 0004EB18  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052EBC 0004EB1C  A8 7E 00 06 */	lha r3, 6(r30)
/* 80052EC0 0004EB20  48 20 0F 11 */	bl func_80253DD0
/* 80052EC4 0004EB24  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052EC8 0004EB28  28 00 00 03 */	cmplwi r0, 3
/* 80052ECC 0004EB2C  40 82 07 6C */	bne lbl_80053638
/* 80052ED0 0004EB30  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052ED4 0004EB34  2C 00 00 03 */	cmpwi r0, 3
/* 80052ED8 0004EB38  41 82 00 20 */	beq lbl_80052EF8
/* 80052EDC 0004EB3C  40 80 07 5C */	bge lbl_80053638
/* 80052EE0 0004EB40  2C 00 00 02 */	cmpwi r0, 2
/* 80052EE4 0004EB44  40 80 00 08 */	bge lbl_80052EEC
/* 80052EE8 0004EB48  48 00 07 50 */	b lbl_80053638
lbl_80052EEC:
/* 80052EEC 0004EB4C  38 00 00 03 */	li r0, 3
/* 80052EF0 0004EB50  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80052EF4 0004EB54  48 00 07 44 */	b lbl_80053638
lbl_80052EF8:
/* 80052EF8 0004EB58  3C 60 04 00 */	lis r3, 0x400
/* 80052EFC 0004EB5C  38 80 00 00 */	li r4, 0
/* 80052F00 0004EB60  38 A0 00 00 */	li r5, 0
/* 80052F04 0004EB64  38 C0 00 01 */	li r6, 1
/* 80052F08 0004EB68  48 00 6B 65 */	bl func_80059A6C
/* 80052F0C 0004EB6C  2C 03 00 00 */	cmpwi r3, 0
/* 80052F10 0004EB70  41 82 07 28 */	beq lbl_80053638
/* 80052F14 0004EB74  A8 7E 00 06 */	lha r3, 6(r30)
/* 80052F18 0004EB78  38 80 00 07 */	li r4, 7
/* 80052F1C 0004EB7C  38 A0 00 00 */	li r5, 0
/* 80052F20 0004EB80  48 20 0E 91 */	bl func_80253DB0
/* 80052F24 0004EB84  38 00 00 2B */	li r0, 0x2b
/* 80052F28 0004EB88  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052F2C 0004EB8C  48 00 07 0C */	b lbl_80053638
/* 80052F30 0004EB90  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052F34 0004EB94  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052F38 0004EB98  A8 7E 00 06 */	lha r3, 6(r30)
/* 80052F3C 0004EB9C  48 20 0E 95 */	bl func_80253DD0
/* 80052F40 0004EBA0  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80052F44 0004EBA4  28 00 00 03 */	cmplwi r0, 3
/* 80052F48 0004EBA8  40 82 06 F0 */	bne lbl_80053638
/* 80052F4C 0004EBAC  A8 7E 00 06 */	lha r3, 6(r30)
/* 80052F50 0004EBB0  38 80 00 08 */	li r4, 8
/* 80052F54 0004EBB4  38 A0 00 00 */	li r5, 0
/* 80052F58 0004EBB8  48 20 0E 99 */	bl func_80253DF0
/* 80052F5C 0004EBBC  38 00 00 2C */	li r0, 0x2c
/* 80052F60 0004EBC0  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052F64 0004EBC4  48 00 06 D4 */	b lbl_80053638
/* 80052F68 0004EBC8  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052F6C 0004EBCC  38 A1 00 08 */	addi r5, r1, 8
/* 80052F70 0004EBD0  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 80052F74 0004EBD4  38 80 00 08 */	li r4, 8
/* 80052F78 0004EBD8  A8 7E 00 02 */	lha r3, 2(r30)
/* 80052F7C 0004EBDC  48 20 0E D1 */	bl func_80253E4C
/* 80052F80 0004EBE0  80 01 00 08 */	lwz r0, 8(r1)
/* 80052F84 0004EBE4  2C 00 00 00 */	cmpwi r0, 0
/* 80052F88 0004EBE8  40 82 00 44 */	bne lbl_80052FCC
/* 80052F8C 0004EBEC  A8 7E 00 02 */	lha r3, 2(r30)
/* 80052F90 0004EBF0  38 80 00 08 */	li r4, 8
/* 80052F94 0004EBF4  38 A0 00 01 */	li r5, 1
/* 80052F98 0004EBF8  48 20 0E 59 */	bl func_80253DF0
/* 80052F9C 0004EBFC  A8 7E 00 04 */	lha r3, 4(r30)
/* 80052FA0 0004EC00  38 80 00 08 */	li r4, 8
/* 80052FA4 0004EC04  38 A0 00 01 */	li r5, 1
/* 80052FA8 0004EC08  48 20 0E 49 */	bl func_80253DF0
/* 80052FAC 0004EC0C  A8 7E 00 02 */	lha r3, 2(r30)
/* 80052FB0 0004EC10  38 80 00 05 */	li r4, 5
/* 80052FB4 0004EC14  38 A0 00 00 */	li r5, 0
/* 80052FB8 0004EC18  48 20 0D F9 */	bl func_80253DB0
/* 80052FBC 0004EC1C  A8 7E 00 04 */	lha r3, 4(r30)
/* 80052FC0 0004EC20  38 80 00 00 */	li r4, 0
/* 80052FC4 0004EC24  38 A0 00 00 */	li r5, 0
/* 80052FC8 0004EC28  48 20 0D E9 */	bl func_80253DB0
lbl_80052FCC:
/* 80052FCC 0004EC2C  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80052FD0 0004EC30  38 80 00 08 */	li r4, 8
/* 80052FD4 0004EC34  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 80052FD8 0004EC38  38 A0 00 01 */	li r5, 1
/* 80052FDC 0004EC3C  48 20 0E 15 */	bl func_80253DF0
/* 80052FE0 0004EC40  A8 7E AC B0 */	lha r3, -0x5350(r30)
/* 80052FE4 0004EC44  38 80 00 08 */	li r4, 8
/* 80052FE8 0004EC48  38 A0 00 00 */	li r5, 0
/* 80052FEC 0004EC4C  48 20 0D C5 */	bl func_80253DB0
/* 80052FF0 0004EC50  38 00 00 2D */	li r0, 0x2d
/* 80052FF4 0004EC54  38 60 00 00 */	li r3, 0
/* 80052FF8 0004EC58  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80052FFC 0004EC5C  38 80 00 00 */	li r4, 0
/* 80053000 0004EC60  48 00 68 F9 */	bl func_800598F8
/* 80053004 0004EC64  38 60 00 01 */	li r3, 1
/* 80053008 0004EC68  38 80 00 00 */	li r4, 0
/* 8005300C 0004EC6C  38 A0 00 00 */	li r5, 0
/* 80053010 0004EC70  38 C0 00 02 */	li r6, 2
/* 80053014 0004EC74  38 E0 00 03 */	li r7, 3
/* 80053018 0004EC78  39 00 00 00 */	li r8, 0
/* 8005301C 0004EC7C  48 00 69 AD */	bl func_800599C8
/* 80053020 0004EC80  38 60 00 02 */	li r3, 2
/* 80053024 0004EC84  38 80 00 00 */	li r4, 0
/* 80053028 0004EC88  38 A0 00 01 */	li r5, 1
/* 8005302C 0004EC8C  38 C0 00 00 */	li r6, 0
/* 80053030 0004EC90  38 E0 00 63 */	li r7, 0x63
/* 80053034 0004EC94  39 00 00 00 */	li r8, 0
/* 80053038 0004EC98  48 00 69 91 */	bl func_800599C8
/* 8005303C 0004EC9C  38 60 00 03 */	li r3, 3
/* 80053040 0004ECA0  38 80 00 01 */	li r4, 1
/* 80053044 0004ECA4  38 A0 00 00 */	li r5, 0
/* 80053048 0004ECA8  38 C0 00 63 */	li r6, 0x63
/* 8005304C 0004ECAC  38 E0 00 00 */	li r7, 0
/* 80053050 0004ECB0  39 00 00 00 */	li r8, 0
/* 80053054 0004ECB4  48 00 69 75 */	bl func_800599C8
/* 80053058 0004ECB8  38 60 00 63 */	li r3, 0x63
/* 8005305C 0004ECBC  38 80 00 02 */	li r4, 2
/* 80053060 0004ECC0  38 A0 00 03 */	li r5, 3
/* 80053064 0004ECC4  38 C0 00 00 */	li r6, 0
/* 80053068 0004ECC8  38 E0 00 00 */	li r7, 0
/* 8005306C 0004ECCC  39 00 00 00 */	li r8, 0
/* 80053070 0004ECD0  48 00 69 59 */	bl func_800599C8
/* 80053074 0004ECD4  38 00 2E 55 */	li r0, 0x2e55
/* 80053078 0004ECD8  90 0D 98 8C */	stw r0, lbl_8063EB4C-_SDA_BASE_(r13)
/* 8005307C 0004ECDC  48 00 05 BC */	b lbl_80053638
/* 80053080 0004ECE0  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 80053084 0004ECE4  A8 63 AC B0 */	lha r3, lbl_8040ACB0@l(r3)
/* 80053088 0004ECE8  48 20 0D 49 */	bl func_80253DD0
/* 8005308C 0004ECEC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80053090 0004ECF0  28 00 00 03 */	cmplwi r0, 3
/* 80053094 0004ECF4  40 82 05 A4 */	bne lbl_80053638
/* 80053098 0004ECF8  38 00 00 2E */	li r0, 0x2e
/* 8005309C 0004ECFC  38 60 00 00 */	li r3, 0
/* 800530A0 0004ED00  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800530A4 0004ED04  48 00 13 ED */	bl func_80054490
/* 800530A8 0004ED08  38 60 00 01 */	li r3, 1
/* 800530AC 0004ED0C  48 00 13 E5 */	bl func_80054490
/* 800530B0 0004ED10  38 60 00 02 */	li r3, 2
/* 800530B4 0004ED14  48 00 13 DD */	bl func_80054490
/* 800530B8 0004ED18  38 60 00 03 */	li r3, 3
/* 800530BC 0004ED1C  48 00 13 D5 */	bl func_80054490
/* 800530C0 0004ED20  48 00 05 78 */	b lbl_80053638
/* 800530C4 0004ED24  38 60 00 29 */	li r3, 0x29
/* 800530C8 0004ED28  38 80 00 01 */	li r4, 1
/* 800530CC 0004ED2C  38 A0 00 00 */	li r5, 0
/* 800530D0 0004ED30  38 C0 00 01 */	li r6, 1
/* 800530D4 0004ED34  48 00 69 99 */	bl func_80059A6C
/* 800530D8 0004ED38  54 60 00 01 */	rlwinm. r0, r3, 0, 0, 0
/* 800530DC 0004ED3C  41 82 01 5C */	beq lbl_80053238
/* 800530E0 0004ED40  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 800530E4 0004ED44  2C 04 00 63 */	cmpwi r4, 0x63
/* 800530E8 0004ED48  41 82 01 0C */	beq lbl_800531F4
/* 800530EC 0004ED4C  40 80 00 28 */	bge lbl_80053114
/* 800530F0 0004ED50  2C 04 00 02 */	cmpwi r4, 2
/* 800530F4 0004ED54  41 82 00 78 */	beq lbl_8005316C
/* 800530F8 0004ED58  40 80 00 10 */	bge lbl_80053108
/* 800530FC 0004ED5C  2C 04 00 01 */	cmpwi r4, 1
/* 80053100 0004ED60  40 80 00 28 */	bge lbl_80053128
/* 80053104 0004ED64  48 00 05 34 */	b lbl_80053638
lbl_80053108:
/* 80053108 0004ED68  2C 04 00 04 */	cmpwi r4, 4
/* 8005310C 0004ED6C  40 80 05 2C */	bge lbl_80053638
/* 80053110 0004ED70  48 00 00 A0 */	b lbl_800531B0
lbl_80053114:
/* 80053114 0004ED74  3C 60 00 01 */	lis r3, 0x0000FFFF@ha
/* 80053118 0004ED78  38 03 FF FF */	addi r0, r3, 0x0000FFFF@l
/* 8005311C 0004ED7C  7C 04 00 00 */	cmpw r4, r0
/* 80053120 0004ED80  41 82 00 D4 */	beq lbl_800531F4
/* 80053124 0004ED84  48 00 05 14 */	b lbl_80053638
lbl_80053128:
/* 80053128 0004ED88  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 8005312C 0004ED8C  38 80 00 03 */	li r4, 3
/* 80053130 0004ED90  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 80053134 0004ED94  38 A0 00 00 */	li r5, 0
/* 80053138 0004ED98  48 20 0C 79 */	bl func_80253DB0
/* 8005313C 0004ED9C  38 7E AC B0 */	addi r3, r30, -21328
/* 80053140 0004EDA0  38 80 00 06 */	li r4, 6
/* 80053144 0004EDA4  A8 63 00 02 */	lha r3, 2(r3)
/* 80053148 0004EDA8  38 A0 00 00 */	li r5, 0
/* 8005314C 0004EDAC  48 20 0C 65 */	bl func_80253DB0
/* 80053150 0004EDB0  38 60 00 2F */	li r3, 0x2f
/* 80053154 0004EDB4  38 00 00 01 */	li r0, 1
/* 80053158 0004EDB8  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 8005315C 0004EDBC  38 60 00 01 */	li r3, 1
/* 80053160 0004EDC0  90 0D 98 80 */	stw r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 80053164 0004EDC4  48 00 73 69 */	bl func_8005A4CC
/* 80053168 0004EDC8  48 00 04 D0 */	b lbl_80053638
lbl_8005316C:
/* 8005316C 0004EDCC  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80053170 0004EDD0  38 80 00 04 */	li r4, 4
/* 80053174 0004EDD4  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 80053178 0004EDD8  38 A0 00 00 */	li r5, 0
/* 8005317C 0004EDDC  48 20 0C 35 */	bl func_80253DB0
/* 80053180 0004EDE0  38 7E AC B0 */	addi r3, r30, -21328
/* 80053184 0004EDE4  38 80 00 06 */	li r4, 6
/* 80053188 0004EDE8  A8 63 00 02 */	lha r3, 2(r3)
/* 8005318C 0004EDEC  38 A0 00 00 */	li r5, 0
/* 80053190 0004EDF0  48 20 0C 21 */	bl func_80253DB0
/* 80053194 0004EDF4  38 60 00 2F */	li r3, 0x2f
/* 80053198 0004EDF8  38 00 00 02 */	li r0, 2
/* 8005319C 0004EDFC  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800531A0 0004EE00  38 60 00 01 */	li r3, 1
/* 800531A4 0004EE04  90 0D 98 80 */	stw r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 800531A8 0004EE08  48 00 73 25 */	bl func_8005A4CC
/* 800531AC 0004EE0C  48 00 04 8C */	b lbl_80053638
lbl_800531B0:
/* 800531B0 0004EE10  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 800531B4 0004EE14  38 80 00 05 */	li r4, 5
/* 800531B8 0004EE18  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 800531BC 0004EE1C  38 A0 00 00 */	li r5, 0
/* 800531C0 0004EE20  48 20 0B F1 */	bl func_80253DB0
/* 800531C4 0004EE24  38 7E AC B0 */	addi r3, r30, -21328
/* 800531C8 0004EE28  38 80 00 06 */	li r4, 6
/* 800531CC 0004EE2C  A8 63 00 02 */	lha r3, 2(r3)
/* 800531D0 0004EE30  38 A0 00 00 */	li r5, 0
/* 800531D4 0004EE34  48 20 0B DD */	bl func_80253DB0
/* 800531D8 0004EE38  38 60 00 2F */	li r3, 0x2f
/* 800531DC 0004EE3C  38 00 00 03 */	li r0, 3
/* 800531E0 0004EE40  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800531E4 0004EE44  38 60 00 01 */	li r3, 1
/* 800531E8 0004EE48  90 0D 98 80 */	stw r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 800531EC 0004EE4C  48 00 72 E1 */	bl func_8005A4CC
/* 800531F0 0004EE50  48 00 04 48 */	b lbl_80053638
lbl_800531F4:
/* 800531F4 0004EE54  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 800531F8 0004EE58  38 80 00 06 */	li r4, 6
/* 800531FC 0004EE5C  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 80053200 0004EE60  38 A0 00 00 */	li r5, 0
/* 80053204 0004EE64  48 20 0B AD */	bl func_80253DB0
/* 80053208 0004EE68  38 7E AC B0 */	addi r3, r30, -21328
/* 8005320C 0004EE6C  38 80 00 01 */	li r4, 1
/* 80053210 0004EE70  A8 63 00 02 */	lha r3, 2(r3)
/* 80053214 0004EE74  38 A0 00 00 */	li r5, 0
/* 80053218 0004EE78  48 20 0B 99 */	bl func_80253DB0
/* 8005321C 0004EE7C  38 60 00 2F */	li r3, 0x2f
/* 80053220 0004EE80  38 00 00 63 */	li r0, 0x63
/* 80053224 0004EE84  90 6D 98 6C */	stw r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053228 0004EE88  38 60 00 02 */	li r3, 2
/* 8005322C 0004EE8C  90 0D 98 80 */	stw r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 80053230 0004EE90  48 00 72 9D */	bl func_8005A4CC
/* 80053234 0004EE94  48 00 04 04 */	b lbl_80053638
lbl_80053238:
/* 80053238 0004EE98  2C 03 00 03 */	cmpwi r3, 3
/* 8005323C 0004EE9C  41 82 00 8C */	beq lbl_800532C8
/* 80053240 0004EEA0  40 80 00 14 */	bge lbl_80053254
/* 80053244 0004EEA4  2C 03 00 01 */	cmpwi r3, 1
/* 80053248 0004EEA8  41 82 00 18 */	beq lbl_80053260
/* 8005324C 0004EEAC  40 80 00 48 */	bge lbl_80053294
/* 80053250 0004EEB0  48 00 03 E8 */	b lbl_80053638
lbl_80053254:
/* 80053254 0004EEB4  2C 03 00 63 */	cmpwi r3, 0x63
/* 80053258 0004EEB8  41 82 00 A4 */	beq lbl_800532FC
/* 8005325C 0004EEBC  48 00 03 DC */	b lbl_80053638
lbl_80053260:
/* 80053260 0004EEC0  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80053264 0004EEC4  38 80 00 00 */	li r4, 0
/* 80053268 0004EEC8  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 8005326C 0004EECC  38 A0 00 00 */	li r5, 0
/* 80053270 0004EED0  48 20 0B 41 */	bl func_80253DB0
/* 80053274 0004EED4  38 7E AC B0 */	addi r3, r30, -21328
/* 80053278 0004EED8  38 80 00 06 */	li r4, 6
/* 8005327C 0004EEDC  A8 63 00 02 */	lha r3, 2(r3)
/* 80053280 0004EEE0  38 A0 00 00 */	li r5, 0
/* 80053284 0004EEE4  48 20 0B 2D */	bl func_80253DB0
/* 80053288 0004EEE8  38 00 2E 55 */	li r0, 0x2e55
/* 8005328C 0004EEEC  90 0D 98 8C */	stw r0, lbl_8063EB4C-_SDA_BASE_(r13)
/* 80053290 0004EEF0  48 00 03 A8 */	b lbl_80053638
lbl_80053294:
/* 80053294 0004EEF4  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80053298 0004EEF8  38 80 00 01 */	li r4, 1
/* 8005329C 0004EEFC  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 800532A0 0004EF00  38 A0 00 00 */	li r5, 0
/* 800532A4 0004EF04  48 20 0B 0D */	bl func_80253DB0
/* 800532A8 0004EF08  38 7E AC B0 */	addi r3, r30, -21328
/* 800532AC 0004EF0C  38 80 00 06 */	li r4, 6
/* 800532B0 0004EF10  A8 63 00 02 */	lha r3, 2(r3)
/* 800532B4 0004EF14  38 A0 00 00 */	li r5, 0
/* 800532B8 0004EF18  48 20 0A F9 */	bl func_80253DB0
/* 800532BC 0004EF1C  38 00 2E 56 */	li r0, 0x2e56
/* 800532C0 0004EF20  90 0D 98 8C */	stw r0, lbl_8063EB4C-_SDA_BASE_(r13)
/* 800532C4 0004EF24  48 00 03 74 */	b lbl_80053638
lbl_800532C8:
/* 800532C8 0004EF28  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 800532CC 0004EF2C  38 80 00 02 */	li r4, 2
/* 800532D0 0004EF30  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 800532D4 0004EF34  38 A0 00 00 */	li r5, 0
/* 800532D8 0004EF38  48 20 0A D9 */	bl func_80253DB0
/* 800532DC 0004EF3C  38 7E AC B0 */	addi r3, r30, -21328
/* 800532E0 0004EF40  38 80 00 06 */	li r4, 6
/* 800532E4 0004EF44  A8 63 00 02 */	lha r3, 2(r3)
/* 800532E8 0004EF48  38 A0 00 00 */	li r5, 0
/* 800532EC 0004EF4C  48 20 0A C5 */	bl func_80253DB0
/* 800532F0 0004EF50  38 00 2E 57 */	li r0, 0x2e57
/* 800532F4 0004EF54  90 0D 98 8C */	stw r0, lbl_8063EB4C-_SDA_BASE_(r13)
/* 800532F8 0004EF58  48 00 03 40 */	b lbl_80053638
lbl_800532FC:
/* 800532FC 0004EF5C  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80053300 0004EF60  38 80 00 06 */	li r4, 6
/* 80053304 0004EF64  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 80053308 0004EF68  38 A0 00 00 */	li r5, 0
/* 8005330C 0004EF6C  48 20 0A A5 */	bl func_80253DB0
/* 80053310 0004EF70  38 7E AC B0 */	addi r3, r30, -21328
/* 80053314 0004EF74  38 80 00 00 */	li r4, 0
/* 80053318 0004EF78  A8 63 00 02 */	lha r3, 2(r3)
/* 8005331C 0004EF7C  38 A0 00 00 */	li r5, 0
/* 80053320 0004EF80  48 20 0A 91 */	bl func_80253DB0
/* 80053324 0004EF84  38 00 52 56 */	li r0, 0x5256
/* 80053328 0004EF88  90 0D 98 8C */	stw r0, lbl_8063EB4C-_SDA_BASE_(r13)
/* 8005332C 0004EF8C  48 00 03 0C */	b lbl_80053638
/* 80053330 0004EF90  80 0D 98 80 */	lwz r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 80053334 0004EF94  28 00 00 63 */	cmplwi r0, 0x63
/* 80053338 0004EF98  41 82 00 58 */	beq lbl_80053390
/* 8005333C 0004EF9C  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80053340 0004EFA0  A8 7E AC B0 */	lha r3, lbl_8040ACB0@l(r30)
/* 80053344 0004EFA4  48 20 0A 8D */	bl func_80253DD0
/* 80053348 0004EFA8  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005334C 0004EFAC  28 00 00 03 */	cmplwi r0, 3
/* 80053350 0004EFB0  40 82 02 E8 */	bne lbl_80053638
/* 80053354 0004EFB4  80 0D 98 80 */	lwz r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 80053358 0004EFB8  28 00 00 03 */	cmplwi r0, 3
/* 8005335C 0004EFBC  40 82 00 24 */	bne lbl_80053380
/* 80053360 0004EFC0  48 02 9C 59 */	bl func_8007CFB8
/* 80053364 0004EFC4  38 00 00 32 */	li r0, 0x32
/* 80053368 0004EFC8  A8 7E AC B0 */	lha r3, -0x5350(r30)
/* 8005336C 0004EFCC  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053370 0004EFD0  38 80 00 07 */	li r4, 7
/* 80053374 0004EFD4  38 A0 00 00 */	li r5, 0
/* 80053378 0004EFD8  48 20 0A 39 */	bl func_80253DB0
/* 8005337C 0004EFDC  48 00 02 BC */	b lbl_80053638
lbl_80053380:
/* 80053380 0004EFE0  38 00 00 31 */	li r0, 0x31
/* 80053384 0004EFE4  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053388 0004EFE8  48 00 2E ED */	bl func_80056274
/* 8005338C 0004EFEC  48 00 02 AC */	b lbl_80053638
lbl_80053390:
/* 80053390 0004EFF0  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 80053394 0004EFF4  3B FE AC B0 */	addi r31, r30, lbl_8040ACB0@l
/* 80053398 0004EFF8  A8 7F 00 02 */	lha r3, 2(r31)
/* 8005339C 0004EFFC  48 20 0A 35 */	bl func_80253DD0
/* 800533A0 0004F000  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 800533A4 0004F004  28 00 00 03 */	cmplwi r0, 3
/* 800533A8 0004F008  40 82 02 90 */	bne lbl_80053638
/* 800533AC 0004F00C  38 00 00 30 */	li r0, 0x30
/* 800533B0 0004F010  A8 7E AC B0 */	lha r3, -0x5350(r30)
/* 800533B4 0004F014  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800533B8 0004F018  38 80 00 07 */	li r4, 7
/* 800533BC 0004F01C  38 A0 00 00 */	li r5, 0
/* 800533C0 0004F020  48 20 09 F1 */	bl func_80253DB0
/* 800533C4 0004F024  A8 7F 00 02 */	lha r3, 2(r31)
/* 800533C8 0004F028  38 80 00 04 */	li r4, 4
/* 800533CC 0004F02C  38 A0 00 00 */	li r5, 0
/* 800533D0 0004F030  48 20 09 E1 */	bl func_80253DB0
/* 800533D4 0004F034  A8 7F 00 04 */	lha r3, 4(r31)
/* 800533D8 0004F038  38 80 00 02 */	li r4, 2
/* 800533DC 0004F03C  38 A0 00 00 */	li r5, 0
/* 800533E0 0004F040  48 20 09 D1 */	bl func_80253DB0
/* 800533E4 0004F044  A8 7F 00 0C */	lha r3, 0xc(r31)
/* 800533E8 0004F048  38 80 00 02 */	li r4, 2
/* 800533EC 0004F04C  38 A0 00 00 */	li r5, 0
/* 800533F0 0004F050  48 20 09 C1 */	bl func_80253DB0
/* 800533F4 0004F054  38 60 00 00 */	li r3, 0
/* 800533F8 0004F058  48 00 30 61 */	bl func_80056458
/* 800533FC 0004F05C  48 00 02 3C */	b lbl_80053638
/* 80053400 0004F060  3F E0 80 41 */	lis r31, lbl_8040ACB0@ha
/* 80053404 0004F064  A8 7F AC B0 */	lha r3, lbl_8040ACB0@l(r31)
/* 80053408 0004F068  48 20 09 C9 */	bl func_80253DD0
/* 8005340C 0004F06C  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80053410 0004F070  28 00 00 03 */	cmplwi r0, 3
/* 80053414 0004F074  40 82 02 24 */	bne lbl_80053638
/* 80053418 0004F078  A8 7F AC B0 */	lha r3, -0x5350(r31)
/* 8005341C 0004F07C  38 80 00 08 */	li r4, 8
/* 80053420 0004F080  38 A0 00 00 */	li r5, 0
/* 80053424 0004F084  48 20 09 CD */	bl func_80253DF0
/* 80053428 0004F088  3B FF AC B0 */	addi r31, r31, -21328
/* 8005342C 0004F08C  38 80 00 08 */	li r4, 8
/* 80053430 0004F090  A8 7F 00 02 */	lha r3, 2(r31)
/* 80053434 0004F094  38 A0 00 00 */	li r5, 0
/* 80053438 0004F098  48 20 09 B9 */	bl func_80253DF0
/* 8005343C 0004F09C  A8 7F 00 04 */	lha r3, 4(r31)
/* 80053440 0004F0A0  38 80 00 08 */	li r4, 8
/* 80053444 0004F0A4  38 A0 00 00 */	li r5, 0
/* 80053448 0004F0A8  48 20 09 A9 */	bl func_80253DF0
/* 8005344C 0004F0AC  A8 7F 00 0C */	lha r3, 0xc(r31)
/* 80053450 0004F0B0  38 80 00 08 */	li r4, 8
/* 80053454 0004F0B4  38 A0 00 00 */	li r5, 0
/* 80053458 0004F0B8  48 20 09 99 */	bl func_80253DF0
/* 8005345C 0004F0BC  38 60 00 00 */	li r3, 0
/* 80053460 0004F0C0  48 00 2F F9 */	bl func_80056458
/* 80053464 0004F0C4  38 60 00 03 */	li r3, 3
/* 80053468 0004F0C8  38 80 00 01 */	li r4, 1
/* 8005346C 0004F0CC  48 00 2F 81 */	bl func_800563EC
/* 80053470 0004F0D0  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053474 0004F0D4  48 00 15 19 */	bl func_8005498C
/* 80053478 0004F0D8  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 8005347C 0004F0DC  38 80 00 01 */	li r4, 1
/* 80053480 0004F0E0  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80053484 0004F0E4  38 A0 00 01 */	li r5, 1
/* 80053488 0004F0E8  38 C0 00 00 */	li r6, 0
/* 8005348C 0004F0EC  38 E0 00 00 */	li r7, 0
/* 80053490 0004F0F0  39 00 00 00 */	li r8, 0
/* 80053494 0004F0F4  48 1A 19 61 */	bl func_801F4DF4
/* 80053498 0004F0F8  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005349C 0004F0FC  48 00 13 59 */	bl func_800547F4
/* 800534A0 0004F100  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 800534A4 0004F104  38 80 00 01 */	li r4, 1
/* 800534A8 0004F108  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 800534AC 0004F10C  38 A0 00 01 */	li r5, 1
/* 800534B0 0004F110  38 C0 00 00 */	li r6, 0
/* 800534B4 0004F114  38 E0 00 00 */	li r7, 0
/* 800534B8 0004F118  39 00 00 00 */	li r8, 0
/* 800534BC 0004F11C  48 1A 19 39 */	bl func_801F4DF4
/* 800534C0 0004F120  38 60 00 00 */	li r3, 0
/* 800534C4 0004F124  38 00 00 13 */	li r0, 0x13
/* 800534C8 0004F128  90 6D 98 8C */	stw r3, lbl_8063EB4C-_SDA_BASE_(r13)
/* 800534CC 0004F12C  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 800534D0 0004F130  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800534D4 0004F134  C8 42 85 18 */	lfd f2, lbl_80640B18-_SDA2_BASE_(r2)
/* 800534D8 0004F138  88 03 00 59 */	lbz r0, 0x59(r3)
/* 800534DC 0004F13C  C8 03 00 A0 */	lfd f0, 0xa0(r3)
/* 800534E0 0004F140  90 01 00 3C */	stw r0, 0x3c(r1)
/* 800534E4 0004F144  C8 21 00 38 */	lfd f1, 0x38(r1)
/* 800534E8 0004F148  FC 21 10 28 */	fsub f1, f1, f2
/* 800534EC 0004F14C  FC 00 08 24 */	fdiv f0, f0, f1
/* 800534F0 0004F150  D8 0D 98 78 */	stfd f0, lbl_8063EB38-_SDA_BASE_(r13)
/* 800534F4 0004F154  48 00 01 44 */	b lbl_80053638
/* 800534F8 0004F158  48 00 2E 01 */	bl func_800562F8
/* 800534FC 0004F15C  2C 03 00 00 */	cmpwi r3, 0
/* 80053500 0004F160  41 82 01 38 */	beq lbl_80053638
/* 80053504 0004F164  80 0D 98 80 */	lwz r0, lbl_8063EB40-_SDA_BASE_(r13)
/* 80053508 0004F168  2C 00 00 02 */	cmpwi r0, 2
/* 8005350C 0004F16C  41 82 00 24 */	beq lbl_80053530
/* 80053510 0004F170  40 80 01 28 */	bge lbl_80053638
/* 80053514 0004F174  2C 00 00 01 */	cmpwi r0, 1
/* 80053518 0004F178  40 80 00 08 */	bge lbl_80053520
/* 8005351C 0004F17C  48 00 01 1C */	b lbl_80053638
lbl_80053520:
/* 80053520 0004F180  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 80053524 0004F184  38 80 08 34 */	li r4, 0x834
/* 80053528 0004F188  48 1D 32 81 */	bl func_802267A8
/* 8005352C 0004F18C  48 00 01 0C */	b lbl_80053638
lbl_80053530:
/* 80053530 0004F190  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 80053534 0004F194  38 80 0A F1 */	li r4, 0xaf1
/* 80053538 0004F198  48 1D 32 71 */	bl func_802267A8
/* 8005353C 0004F19C  48 00 00 FC */	b lbl_80053638
/* 80053540 0004F1A0  3F E0 80 41 */	lis r31, lbl_8040ACB0@ha
/* 80053544 0004F1A4  A8 7F AC B0 */	lha r3, lbl_8040ACB0@l(r31)
/* 80053548 0004F1A8  48 20 08 89 */	bl func_80253DD0
/* 8005354C 0004F1AC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80053550 0004F1B0  28 00 00 03 */	cmplwi r0, 3
/* 80053554 0004F1B4  40 82 00 E4 */	bne lbl_80053638
/* 80053558 0004F1B8  A8 7F AC B0 */	lha r3, -0x5350(r31)
/* 8005355C 0004F1BC  38 80 00 08 */	li r4, 8
/* 80053560 0004F1C0  38 A0 00 00 */	li r5, 0
/* 80053564 0004F1C4  48 20 08 8D */	bl func_80253DF0
/* 80053568 0004F1C8  38 80 00 33 */	li r4, 0x33
/* 8005356C 0004F1CC  38 60 00 00 */	li r3, 0
/* 80053570 0004F1D0  38 00 00 01 */	li r0, 1
/* 80053574 0004F1D4  90 8D 98 6C */	stw r4, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053578 0004F1D8  98 6D 81 CC */	stb r3, lbl_8063D48C-_SDA_BASE_(r13)
/* 8005357C 0004F1DC  98 0D 81 CD */	stb r0, lbl_8063D48D-_SDA_BASE_(r13)
/* 80053580 0004F1E0  48 02 9E 4D */	bl func_8007D3CC
/* 80053584 0004F1E4  38 00 2E 55 */	li r0, 0x2e55
/* 80053588 0004F1E8  90 0D 98 8C */	stw r0, lbl_8063EB4C-_SDA_BASE_(r13)
/* 8005358C 0004F1EC  48 00 00 AC */	b lbl_80053638
/* 80053590 0004F1F0  48 02 9E 5D */	bl func_8007D3EC
/* 80053594 0004F1F4  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 80053598 0004F1F8  41 82 00 A0 */	beq lbl_80053638
/* 8005359C 0004F1FC  48 02 9D 25 */	bl func_8007D2C0
/* 800535A0 0004F200  38 00 00 34 */	li r0, 0x34
/* 800535A4 0004F204  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800535A8 0004F208  48 00 00 90 */	b lbl_80053638
/* 800535AC 0004F20C  38 60 00 01 */	li r3, 1
/* 800535B0 0004F210  38 00 00 2C */	li r0, 0x2c
/* 800535B4 0004F214  98 6D 81 CC */	stb r3, lbl_8063D48C-_SDA_BASE_(r13)
/* 800535B8 0004F218  98 6D 81 CD */	stb r3, lbl_8063D48D-_SDA_BASE_(r13)
/* 800535BC 0004F21C  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800535C0 0004F220  48 10 C0 D1 */	bl func_8015F690
/* 800535C4 0004F224  7C 7F 1B 78 */	mr r31, r3
/* 800535C8 0004F228  4B FB 92 21 */	bl func_8000C7E8
/* 800535CC 0004F22C  88 9F 00 45 */	lbz r4, 0x45(r31)
/* 800535D0 0004F230  4B FB A2 41 */	bl func_8000D810
/* 800535D4 0004F234  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 800535D8 0004F238  2C 00 00 02 */	cmpwi r0, 2
/* 800535DC 0004F23C  40 82 00 10 */	bne lbl_800535EC
/* 800535E0 0004F240  80 6D A4 F0 */	lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 800535E4 0004F244  48 1F 11 65 */	bl func_80244748
/* 800535E8 0004F248  48 00 00 50 */	b lbl_80053638
lbl_800535EC:
/* 800535EC 0004F24C  80 6D A4 F0 */	lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 800535F0 0004F250  48 1F 11 0D */	bl func_802446FC
/* 800535F4 0004F254  48 00 00 44 */	b lbl_80053638
/* 800535F8 0004F258  48 10 C0 99 */	bl func_8015F690
/* 800535FC 0004F25C  7C 7F 1B 78 */	mr r31, r3
/* 80053600 0004F260  4B FB 91 E9 */	bl func_8000C7E8
/* 80053604 0004F264  88 9F 00 45 */	lbz r4, 0x45(r31)
/* 80053608 0004F268  4B FB A2 09 */	bl func_8000D810
/* 8005360C 0004F26C  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 80053610 0004F270  2C 00 00 02 */	cmpwi r0, 2
/* 80053614 0004F274  40 82 00 10 */	bne lbl_80053624
/* 80053618 0004F278  80 6D A4 F0 */	lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 8005361C 0004F27C  48 1F 11 2D */	bl func_80244748
/* 80053620 0004F280  48 00 00 0C */	b lbl_8005362C
lbl_80053624:
/* 80053624 0004F284  80 6D A4 F0 */	lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 80053628 0004F288  48 1F 10 D5 */	bl func_802446FC
lbl_8005362C:
/* 8005362C 0004F28C  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 80053630 0004F290  38 80 0A F1 */	li r4, 0xaf1
/* 80053634 0004F294  48 1D 31 75 */	bl func_802267A8
lbl_80053638:
/* 80053638 0004F298  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8005363C 0004F29C  83 E1 00 4C */	lwz r31, 0x4c(r1)
/* 80053640 0004F2A0  83 C1 00 48 */	lwz r30, 0x48(r1)
/* 80053644 0004F2A4  7C 08 03 A6 */	mtlr r0
/* 80053648 0004F2A8  38 21 00 50 */	addi r1, r1, 0x50
/* 8005364C 0004F2AC  4E 80 00 20 */	blr
/* 80053650 0004F2B0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80053654 0004F2B4  7C 08 02 A6 */	mflr r0
/* 80053658 0004F2B8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005365C 0004F2BC  39 61 00 20 */	addi r11, r1, 0x20
/* 80053660 0004F2C0  48 17 3A C9 */	bl _savegpr_27
/* 80053664 0004F2C4  88 0D 81 CC */	lbz r0, lbl_8063D48C-_SDA_BASE_(r13)
/* 80053668 0004F2C8  2C 00 00 00 */	cmpwi r0, 0
/* 8005366C 0004F2CC  41 82 00 B8 */	beq lbl_80053724
/* 80053670 0004F2D0  3F 60 80 41 */	lis r27, lbl_8040ACB0@ha
/* 80053674 0004F2D4  A0 7B AC B0 */	lhz r3, lbl_8040ACB0@l(r27)
/* 80053678 0004F2D8  48 20 06 55 */	bl func_80253CCC
/* 8005367C 0004F2DC  3B 9B AC B0 */	addi r28, r27, -21328
/* 80053680 0004F2E0  A0 7C 00 02 */	lhz r3, 2(r28)
/* 80053684 0004F2E4  48 20 06 49 */	bl func_80253CCC
/* 80053688 0004F2E8  A0 7C 00 04 */	lhz r3, 4(r28)
/* 8005368C 0004F2EC  48 20 06 41 */	bl func_80253CCC
/* 80053690 0004F2F0  A0 7C 00 06 */	lhz r3, 6(r28)
/* 80053694 0004F2F4  48 20 06 39 */	bl func_80253CCC
/* 80053698 0004F2F8  A0 7C 00 08 */	lhz r3, 8(r28)
/* 8005369C 0004F2FC  48 20 06 31 */	bl func_80253CCC
/* 800536A0 0004F300  A0 7C 00 0A */	lhz r3, 0xa(r28)
/* 800536A4 0004F304  48 20 06 29 */	bl func_80253CCC
/* 800536A8 0004F308  3F A0 80 47 */	lis r29, lbl_804753B0@ha
/* 800536AC 0004F30C  80 7D 53 B0 */	lwz r3, lbl_804753B0@l(r29)
/* 800536B0 0004F310  48 00 27 81 */	bl func_80055E30
/* 800536B4 0004F314  3B DD 53 B0 */	addi r30, r29, 0x53b0
/* 800536B8 0004F318  80 7E 00 04 */	lwz r3, 4(r30)
/* 800536BC 0004F31C  48 00 27 75 */	bl func_80055E30
/* 800536C0 0004F320  80 7E 00 08 */	lwz r3, 8(r30)
/* 800536C4 0004F324  48 00 27 6D */	bl func_80055E30
/* 800536C8 0004F328  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 800536CC 0004F32C  48 00 27 65 */	bl func_80055E30
/* 800536D0 0004F330  80 7E 00 10 */	lwz r3, 0x10(r30)
/* 800536D4 0004F334  48 00 27 5D */	bl func_80055E30
/* 800536D8 0004F338  80 7E 00 14 */	lwz r3, 0x14(r30)
/* 800536DC 0004F33C  48 00 27 55 */	bl func_80055E30
/* 800536E0 0004F340  3B E0 FF FF */	li r31, -1
/* 800536E4 0004F344  38 00 00 00 */	li r0, 0
/* 800536E8 0004F348  B3 FB AC B0 */	sth r31, -0x5350(r27)
/* 800536EC 0004F34C  80 6D 98 68 */	lwz r3, lbl_8063EB28-_SDA_BASE_(r13)
/* 800536F0 0004F350  90 1D 53 B0 */	stw r0, 0x53b0(r29)
/* 800536F4 0004F354  B3 FC 00 02 */	sth r31, 2(r28)
/* 800536F8 0004F358  90 1E 00 04 */	stw r0, 4(r30)
/* 800536FC 0004F35C  B3 FC 00 04 */	sth r31, 4(r28)
/* 80053700 0004F360  90 1E 00 08 */	stw r0, 8(r30)
/* 80053704 0004F364  B3 FC 00 06 */	sth r31, 6(r28)
/* 80053708 0004F368  90 1E 00 0C */	stw r0, 0xc(r30)
/* 8005370C 0004F36C  B3 FC 00 08 */	sth r31, 8(r28)
/* 80053710 0004F370  90 1E 00 10 */	stw r0, 0x10(r30)
/* 80053714 0004F374  B3 FC 00 0A */	sth r31, 0xa(r28)
/* 80053718 0004F378  90 1E 00 14 */	stw r0, 0x14(r30)
/* 8005371C 0004F37C  48 20 08 71 */	bl func_80253F8C
/* 80053720 0004F380  93 ED 98 68 */	stw r31, lbl_8063EB28-_SDA_BASE_(r13)
lbl_80053724:
/* 80053724 0004F384  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053728 0004F388  48 00 10 09 */	bl func_80054730
/* 8005372C 0004F38C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053730 0004F390  48 00 11 E5 */	bl func_80054914
/* 80053734 0004F394  38 00 00 00 */	li r0, 0
/* 80053738 0004F398  38 60 03 E8 */	li r3, 0x3e8
/* 8005373C 0004F39C  90 0D 98 84 */	stw r0, lbl_8063EB44-_SDA_BASE_(r13)
/* 80053740 0004F3A0  48 1F 61 51 */	bl func_80249890
/* 80053744 0004F3A4  38 60 03 E8 */	li r3, 0x3e8
/* 80053748 0004F3A8  48 18 7F 2D */	bl func_801DB674
/* 8005374C 0004F3AC  38 60 00 01 */	li r3, 1
/* 80053750 0004F3B0  4B FB 3E 15 */	bl func_80007564
/* 80053754 0004F3B4  39 61 00 20 */	addi r11, r1, 0x20
/* 80053758 0004F3B8  48 17 3A 1D */	bl _restgpr_27
/* 8005375C 0004F3BC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80053760 0004F3C0  7C 08 03 A6 */	mtlr r0
/* 80053764 0004F3C4  38 21 00 20 */	addi r1, r1, 0x20
/* 80053768 0004F3C8  4E 80 00 20 */	blr
/* 8005376C 0004F3CC  4E 80 00 20 */	blr
lbl_80053770:
/* 80053770 0004F3D0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80053774 0004F3D4  7C 08 02 A6 */	mflr r0
/* 80053778 0004F3D8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005377C 0004F3DC  DB E1 00 20 */	stfd f31, 0x20(r1)
/* 80053780 0004F3E0  F3 E1 00 28 */	psq_st f31, 40(r1), 0, qr0
/* 80053784 0004F3E4  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80053788 0004F3E8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8005378C 0004F3EC  FC 40 08 90 */	fmr f2, f1
/* 80053790 0004F3F0  C0 62 85 20 */	lfs f3, lbl_80640B20-_SDA2_BASE_(r2)
/* 80053794 0004F3F4  FC A0 08 90 */	fmr f5, f1
/* 80053798 0004F3F8  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005379C 0004F3FC  C0 82 85 24 */	lfs f4, lbl_80640B24-_SDA2_BASE_(r2)
/* 800537A0 0004F400  C0 C2 85 28 */	lfs f6, lbl_80640B28-_SDA2_BASE_(r2)
/* 800537A4 0004F404  48 1E 14 55 */	bl func_80234BF8
/* 800537A8 0004F408  80 0D 98 6C */	lwz r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800537AC 0004F40C  28 00 00 2E */	cmplwi r0, 0x2e
/* 800537B0 0004F410  41 81 03 40 */	bgt lbl_80053AF0
/* 800537B4 0004F414  3C 60 80 41 */	lis r3, lbl_8040ADCC@ha
/* 800537B8 0004F418  54 00 10 3A */	slwi r0, r0, 2
/* 800537BC 0004F41C  38 63 AD CC */	addi r3, r3, lbl_8040ADCC@l
/* 800537C0 0004F420  7C 63 00 2E */	lwzx r3, r3, r0
/* 800537C4 0004F424  7C 69 03 A6 */	mtctr r3
/* 800537C8 0004F428  4E 80 04 20 */	bctr
/* 800537CC 0004F42C  48 00 2A F1 */	bl func_800562BC
/* 800537D0 0004F430  38 00 00 02 */	li r0, 2
/* 800537D4 0004F434  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800537D8 0004F438  48 00 03 18 */	b lbl_80053AF0
/* 800537DC 0004F43C  48 00 2B 1D */	bl func_800562F8
/* 800537E0 0004F440  2C 03 00 00 */	cmpwi r3, 0
/* 800537E4 0004F444  41 82 03 0C */	beq lbl_80053AF0
/* 800537E8 0004F448  38 60 00 01 */	li r3, 1
/* 800537EC 0004F44C  48 00 26 C9 */	bl func_80055EB4
/* 800537F0 0004F450  48 10 BF B1 */	bl func_8015F7A0
/* 800537F4 0004F454  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 800537F8 0004F458  38 00 00 03 */	li r0, 3
/* 800537FC 0004F45C  38 60 00 00 */	li r3, 0
/* 80053800 0004F460  D8 24 00 00 */	stfd f1, 0(r4)
/* 80053804 0004F464  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053808 0004F468  48 00 0C 8D */	bl func_80054494
/* 8005380C 0004F46C  48 00 02 E4 */	b lbl_80053AF0
/* 80053810 0004F470  48 10 BF 91 */	bl func_8015F7A0
/* 80053814 0004F474  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053818 0004F478  C8 42 85 30 */	lfd f2, lbl_80640B30-_SDA2_BASE_(r2)
/* 8005381C 0004F47C  C8 63 00 00 */	lfd f3, 0(r3)
/* 80053820 0004F480  C0 02 84 EC */	lfs f0, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80053824 0004F484  FC 21 18 28 */	fsub f1, f1, f3
/* 80053828 0004F488  FF E2 00 72 */	fmul f31, f2, f1
/* 8005382C 0004F48C  FF E0 F8 18 */	frsp f31, f31
/* 80053830 0004F490  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 80053834 0004F494  4C 41 13 82 */	cror 2, 1, 2
/* 80053838 0004F498  40 82 00 1C */	bne lbl_80053854
/* 8005383C 0004F49C  38 00 00 04 */	li r0, 4
/* 80053840 0004F4A0  FF E0 00 90 */	fmr f31, f0
/* 80053844 0004F4A4  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053848 0004F4A8  48 10 BF 59 */	bl func_8015F7A0
/* 8005384C 0004F4AC  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053850 0004F4B0  D8 23 00 00 */	stfd f1, 0(r3)
lbl_80053854:
/* 80053854 0004F4B4  C0 02 85 38 */	lfs f0, lbl_80640B38-_SDA2_BASE_(r2)
/* 80053858 0004F4B8  EC 00 07 F2 */	fmuls f0, f0, f31
/* 8005385C 0004F4BC  FC 00 00 1E */	fctiwz f0, f0
/* 80053860 0004F4C0  D8 01 00 08 */	stfd f0, 8(r1)
/* 80053864 0004F4C4  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80053868 0004F4C8  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8005386C 0004F4CC  48 00 0C 29 */	bl func_80054494
/* 80053870 0004F4D0  48 00 02 80 */	b lbl_80053AF0
/* 80053874 0004F4D4  48 10 BF 2D */	bl func_8015F7A0
/* 80053878 0004F4D8  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005387C 0004F4DC  C0 02 84 EC */	lfs f0, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80053880 0004F4E0  C8 43 00 00 */	lfd f2, 0(r3)
/* 80053884 0004F4E4  FC 21 10 28 */	fsub f1, f1, f2
/* 80053888 0004F4E8  FC 20 08 18 */	frsp f1, f1
/* 8005388C 0004F4EC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80053890 0004F4F0  4C 41 13 82 */	cror 2, 1, 2
/* 80053894 0004F4F4  40 82 00 0C */	bne lbl_800538A0
/* 80053898 0004F4F8  38 00 00 05 */	li r0, 5
/* 8005389C 0004F4FC  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
lbl_800538A0:
/* 800538A0 0004F500  38 60 00 FF */	li r3, 0xff
/* 800538A4 0004F504  48 00 0B F1 */	bl func_80054494
/* 800538A8 0004F508  48 00 02 48 */	b lbl_80053AF0
/* 800538AC 0004F50C  48 10 BE F5 */	bl func_8015F7A0
/* 800538B0 0004F510  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800538B4 0004F514  C0 02 85 3C */	lfs f0, lbl_80640B3C-_SDA2_BASE_(r2)
/* 800538B8 0004F518  C8 43 00 00 */	lfd f2, 0(r3)
/* 800538BC 0004F51C  FC 21 10 28 */	fsub f1, f1, f2
/* 800538C0 0004F520  FC 20 08 18 */	frsp f1, f1
/* 800538C4 0004F524  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800538C8 0004F528  4C 41 13 82 */	cror 2, 1, 2
/* 800538CC 0004F52C  40 82 00 18 */	bne lbl_800538E4
/* 800538D0 0004F530  38 00 00 06 */	li r0, 6
/* 800538D4 0004F534  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800538D8 0004F538  48 10 BE C9 */	bl func_8015F7A0
/* 800538DC 0004F53C  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 800538E0 0004F540  D8 23 00 00 */	stfd f1, 0(r3)
lbl_800538E4:
/* 800538E4 0004F544  38 60 00 80 */	li r3, 0x80
/* 800538E8 0004F548  38 80 00 01 */	li r4, 1
/* 800538EC 0004F54C  38 A0 00 00 */	li r5, 0
/* 800538F0 0004F550  38 C0 00 01 */	li r6, 1
/* 800538F4 0004F554  48 00 61 79 */	bl func_80059A6C
/* 800538F8 0004F558  3C 03 80 00 */	addis r0, r3, 0x8000
/* 800538FC 0004F55C  28 00 00 00 */	cmplwi r0, 0
/* 80053900 0004F560  40 82 00 18 */	bne lbl_80053918
/* 80053904 0004F564  38 00 00 06 */	li r0, 6
/* 80053908 0004F568  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 8005390C 0004F56C  48 10 BE 95 */	bl func_8015F7A0
/* 80053910 0004F570  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053914 0004F574  D8 23 00 00 */	stfd f1, 0(r3)
lbl_80053918:
/* 80053918 0004F578  38 60 00 FF */	li r3, 0xff
/* 8005391C 0004F57C  48 00 0B 79 */	bl func_80054494
/* 80053920 0004F580  48 00 01 D0 */	b lbl_80053AF0
/* 80053924 0004F584  48 10 BE 7D */	bl func_8015F7A0
/* 80053928 0004F588  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 8005392C 0004F58C  C8 42 85 30 */	lfd f2, lbl_80640B30-_SDA2_BASE_(r2)
/* 80053930 0004F590  C8 63 00 00 */	lfd f3, 0(r3)
/* 80053934 0004F594  C0 02 84 EC */	lfs f0, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80053938 0004F598  FC 21 18 28 */	fsub f1, f1, f3
/* 8005393C 0004F59C  FF E2 00 72 */	fmul f31, f2, f1
/* 80053940 0004F5A0  FF E0 F8 18 */	frsp f31, f31
/* 80053944 0004F5A4  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 80053948 0004F5A8  4C 41 13 82 */	cror 2, 1, 2
/* 8005394C 0004F5AC  40 82 00 1C */	bne lbl_80053968
/* 80053950 0004F5B0  38 00 00 07 */	li r0, 7
/* 80053954 0004F5B4  FF E0 00 90 */	fmr f31, f0
/* 80053958 0004F5B8  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 8005395C 0004F5BC  48 10 BE 45 */	bl func_8015F7A0
/* 80053960 0004F5C0  80 6D 81 C8 */	lwz r3, lbl_8063D488-_SDA_BASE_(r13)
/* 80053964 0004F5C4  D8 23 00 00 */	stfd f1, 0(r3)
lbl_80053968:
/* 80053968 0004F5C8  C0 22 84 EC */	lfs f1, lbl_80640AEC-_SDA2_BASE_(r2)
/* 8005396C 0004F5CC  C0 02 85 38 */	lfs f0, lbl_80640B38-_SDA2_BASE_(r2)
/* 80053970 0004F5D0  EC 21 F8 28 */	fsubs f1, f1, f31
/* 80053974 0004F5D4  EC 00 00 72 */	fmuls f0, f0, f1
/* 80053978 0004F5D8  FC 00 00 1E */	fctiwz f0, f0
/* 8005397C 0004F5DC  D8 01 00 08 */	stfd f0, 8(r1)
/* 80053980 0004F5E0  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80053984 0004F5E4  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 80053988 0004F5E8  48 00 0B 0D */	bl func_80054494
/* 8005398C 0004F5EC  48 00 01 64 */	b lbl_80053AF0
/* 80053990 0004F5F0  C0 42 85 3C */	lfs f2, lbl_80640B3C-_SDA2_BASE_(r2)
/* 80053994 0004F5F4  38 00 00 0E */	li r0, 0xe
/* 80053998 0004F5F8  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 8005399C 0004F5FC  38 60 00 00 */	li r3, 0
/* 800539A0 0004F600  C0 02 85 0C */	lfs f0, lbl_80640B0C-_SDA2_BASE_(r2)
/* 800539A4 0004F604  EC 22 00 72 */	fmuls f1, f2, f1
/* 800539A8 0004F608  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 800539AC 0004F60C  EC 00 08 2A */	fadds f0, f0, f1
/* 800539B0 0004F610  FC 00 00 1E */	fctiwz f0, f0
/* 800539B4 0004F614  D8 01 00 08 */	stfd f0, 8(r1)
/* 800539B8 0004F618  80 01 00 0C */	lwz r0, 0xc(r1)
/* 800539BC 0004F61C  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 800539C0 0004F620  48 00 0A D5 */	bl func_80054494
/* 800539C4 0004F624  38 60 00 03 */	li r3, 3
/* 800539C8 0004F628  38 80 00 01 */	li r4, 1
/* 800539CC 0004F62C  48 00 2A 21 */	bl func_800563EC
/* 800539D0 0004F630  48 00 01 20 */	b lbl_80053AF0
/* 800539D4 0004F634  48 00 58 69 */	bl func_8005923C
/* 800539D8 0004F638  2C 03 00 00 */	cmpwi r3, 0
/* 800539DC 0004F63C  41 82 01 14 */	beq lbl_80053AF0
/* 800539E0 0004F640  C0 42 85 3C */	lfs f2, lbl_80640B3C-_SDA2_BASE_(r2)
/* 800539E4 0004F644  38 00 00 0E */	li r0, 0xe
/* 800539E8 0004F648  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 800539EC 0004F64C  38 60 00 03 */	li r3, 3
/* 800539F0 0004F650  C0 02 85 0C */	lfs f0, lbl_80640B0C-_SDA2_BASE_(r2)
/* 800539F4 0004F654  38 80 00 01 */	li r4, 1
/* 800539F8 0004F658  EC 22 00 72 */	fmuls f1, f2, f1
/* 800539FC 0004F65C  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053A00 0004F660  EC 00 08 2A */	fadds f0, f0, f1
/* 80053A04 0004F664  FC 00 00 1E */	fctiwz f0, f0
/* 80053A08 0004F668  D8 01 00 08 */	stfd f0, 8(r1)
/* 80053A0C 0004F66C  80 01 00 0C */	lwz r0, 0xc(r1)
/* 80053A10 0004F670  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80053A14 0004F674  48 00 29 D9 */	bl func_800563EC
/* 80053A18 0004F678  48 00 28 19 */	bl func_80056230
/* 80053A1C 0004F67C  48 00 00 D4 */	b lbl_80053AF0
/* 80053A20 0004F680  4B FB 5D D1 */	bl func_800097F0
/* 80053A24 0004F684  48 10 9B 5D */	bl func_8015D580
/* 80053A28 0004F688  2C 03 00 00 */	cmpwi r3, 0
/* 80053A2C 0004F68C  41 82 00 C4 */	beq lbl_80053AF0
/* 80053A30 0004F690  48 10 AB FD */	bl func_8015E62C
/* 80053A34 0004F694  2C 03 00 00 */	cmpwi r3, 0
/* 80053A38 0004F698  41 82 00 34 */	beq lbl_80053A6C
/* 80053A3C 0004F69C  C0 42 85 40 */	lfs f2, lbl_80640B40-_SDA2_BASE_(r2)
/* 80053A40 0004F6A0  38 00 00 1E */	li r0, 0x1e
/* 80053A44 0004F6A4  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 80053A48 0004F6A8  C0 02 85 0C */	lfs f0, lbl_80640B0C-_SDA2_BASE_(r2)
/* 80053A4C 0004F6AC  EC 22 00 72 */	fmuls f1, f2, f1
/* 80053A50 0004F6B0  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053A54 0004F6B4  EC 00 08 2A */	fadds f0, f0, f1
/* 80053A58 0004F6B8  FC 00 00 1E */	fctiwz f0, f0
/* 80053A5C 0004F6BC  D8 01 00 08 */	stfd f0, 8(r1)
/* 80053A60 0004F6C0  80 01 00 0C */	lwz r0, 0xc(r1)
/* 80053A64 0004F6C4  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80053A68 0004F6C8  48 00 00 48 */	b lbl_80053AB0
lbl_80053A6C:
/* 80053A6C 0004F6CC  C0 42 85 40 */	lfs f2, lbl_80640B40-_SDA2_BASE_(r2)
/* 80053A70 0004F6D0  38 00 00 23 */	li r0, 0x23
/* 80053A74 0004F6D4  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 80053A78 0004F6D8  C0 02 85 0C */	lfs f0, lbl_80640B0C-_SDA2_BASE_(r2)
/* 80053A7C 0004F6DC  EC 22 00 72 */	fmuls f1, f2, f1
/* 80053A80 0004F6E0  90 0D 98 6C */	stw r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053A84 0004F6E4  EC 00 08 2A */	fadds f0, f0, f1
/* 80053A88 0004F6E8  FC 00 00 1E */	fctiwz f0, f0
/* 80053A8C 0004F6EC  D8 01 00 08 */	stfd f0, 8(r1)
/* 80053A90 0004F6F0  80 01 00 0C */	lwz r0, 0xc(r1)
/* 80053A94 0004F6F4  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80053A98 0004F6F8  48 10 BB C9 */	bl func_8015F660
/* 80053A9C 0004F6FC  3C 03 00 01 */	addis r0, r3, 1
/* 80053AA0 0004F700  28 00 FF FF */	cmplwi r0, 0xffff
/* 80053AA4 0004F704  40 82 00 0C */	bne lbl_80053AB0
/* 80053AA8 0004F708  38 00 00 00 */	li r0, 0
/* 80053AAC 0004F70C  90 0D 98 70 */	stw r0, lbl_8063EB30-_SDA_BASE_(r13)
lbl_80053AB0:
/* 80053AB0 0004F710  48 10 BB E1 */	bl func_8015F690
/* 80053AB4 0004F714  7C 7F 1B 78 */	mr r31, r3
/* 80053AB8 0004F718  4B FB 8D 31 */	bl func_8000C7E8
/* 80053ABC 0004F71C  88 9F 00 45 */	lbz r4, 0x45(r31)
/* 80053AC0 0004F720  4B FB 9D 51 */	bl func_8000D810
/* 80053AC4 0004F724  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 80053AC8 0004F728  2C 00 00 02 */	cmpwi r0, 2
/* 80053ACC 0004F72C  40 82 00 10 */	bne lbl_80053ADC
/* 80053AD0 0004F730  80 6D A4 F0 */	lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 80053AD4 0004F734  48 1F 0C 75 */	bl func_80244748
/* 80053AD8 0004F738  48 00 00 0C */	b lbl_80053AE4
lbl_80053ADC:
/* 80053ADC 0004F73C  80 6D A4 F0 */	lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 80053AE0 0004F740  48 1F 0C 1D */	bl func_802446FC
lbl_80053AE4:
/* 80053AE4 0004F744  4B FB 5C F5 */	bl func_800097D8
/* 80053AE8 0004F748  48 00 00 08 */	b lbl_80053AF0
/* 80053AEC 0004F74C  48 00 69 61 */	bl func_8005A44C
lbl_80053AF0:
/* 80053AF0 0004F750  80 6D 98 6C */	lwz r3, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80053AF4 0004F754  38 03 FF E2 */	addi r0, r3, -30
/* 80053AF8 0004F758  28 00 00 16 */	cmplwi r0, 0x16
/* 80053AFC 0004F75C  41 81 01 30 */	bgt lbl_80053C2C
/* 80053B00 0004F760  3C 60 80 41 */	lis r3, lbl_8040AD70@ha
/* 80053B04 0004F764  54 00 10 3A */	slwi r0, r0, 2
/* 80053B08 0004F768  38 63 AD 70 */	addi r3, r3, lbl_8040AD70@l
/* 80053B0C 0004F76C  7C 63 00 2E */	lwzx r3, r3, r0
/* 80053B10 0004F770  7C 69 03 A6 */	mtctr r3
/* 80053B14 0004F774  4E 80 04 20 */	bctr
/* 80053B18 0004F778  48 10 BB 49 */	bl func_8015F660
/* 80053B1C 0004F77C  7C 64 1B 78 */	mr r4, r3
/* 80053B20 0004F780  38 60 00 01 */	li r3, 1
/* 80053B24 0004F784  48 10 89 D1 */	bl func_8015C4F4
/* 80053B28 0004F788  48 00 01 04 */	b lbl_80053C2C
/* 80053B2C 0004F78C  48 10 BB 35 */	bl func_8015F660
/* 80053B30 0004F790  7C 64 1B 78 */	mr r4, r3
/* 80053B34 0004F794  38 60 00 01 */	li r3, 1
/* 80053B38 0004F798  48 10 89 BD */	bl func_8015C4F4
/* 80053B3C 0004F79C  48 00 00 F0 */	b lbl_80053C2C
/* 80053B40 0004F7A0  80 8D 98 8C */	lwz r4, lbl_8063EB4C-_SDA_BASE_(r13)
/* 80053B44 0004F7A4  38 60 00 01 */	li r3, 1
/* 80053B48 0004F7A8  48 10 89 AD */	bl func_8015C4F4
/* 80053B4C 0004F7AC  48 00 00 E0 */	b lbl_80053C2C
/* 80053B50 0004F7B0  80 8D 98 8C */	lwz r4, lbl_8063EB4C-_SDA_BASE_(r13)
/* 80053B54 0004F7B4  38 60 00 00 */	li r3, 0
/* 80053B58 0004F7B8  48 10 89 9D */	bl func_8015C4F4
/* 80053B5C 0004F7BC  48 00 00 D0 */	b lbl_80053C2C
/* 80053B60 0004F7C0  88 0D 81 CD */	lbz r0, lbl_8063D48D-_SDA_BASE_(r13)
/* 80053B64 0004F7C4  2C 00 00 00 */	cmpwi r0, 0
/* 80053B68 0004F7C8  41 82 00 C4 */	beq lbl_80053C2C
/* 80053B6C 0004F7CC  80 8D 98 8C */	lwz r4, lbl_8063EB4C-_SDA_BASE_(r13)
/* 80053B70 0004F7D0  38 60 00 00 */	li r3, 0
/* 80053B74 0004F7D4  48 10 89 81 */	bl func_8015C4F4
/* 80053B78 0004F7D8  48 00 00 B4 */	b lbl_80053C2C
/* 80053B7C 0004F7DC  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80053B80 0004F7E0  2C 00 00 01 */	cmpwi r0, 1
/* 80053B84 0004F7E4  41 82 00 20 */	beq lbl_80053BA4
/* 80053B88 0004F7E8  40 80 00 10 */	bge lbl_80053B98
/* 80053B8C 0004F7EC  2C 00 00 00 */	cmpwi r0, 0
/* 80053B90 0004F7F0  40 80 00 9C */	bge lbl_80053C2C
/* 80053B94 0004F7F4  48 00 00 30 */	b lbl_80053BC4
lbl_80053B98:
/* 80053B98 0004F7F8  2C 00 00 03 */	cmpwi r0, 3
/* 80053B9C 0004F7FC  40 80 00 28 */	bge lbl_80053BC4
/* 80053BA0 0004F800  48 00 00 14 */	b lbl_80053BB4
lbl_80053BA4:
/* 80053BA4 0004F804  38 60 00 01 */	li r3, 1
/* 80053BA8 0004F808  38 80 43 FC */	li r4, 0x43fc
/* 80053BAC 0004F80C  48 10 89 49 */	bl func_8015C4F4
/* 80053BB0 0004F810  48 00 00 7C */	b lbl_80053C2C
lbl_80053BB4:
/* 80053BB4 0004F814  38 60 00 01 */	li r3, 1
/* 80053BB8 0004F818  38 80 43 FD */	li r4, 0x43fd
/* 80053BBC 0004F81C  48 10 89 39 */	bl func_8015C4F4
/* 80053BC0 0004F820  48 00 00 6C */	b lbl_80053C2C
lbl_80053BC4:
/* 80053BC4 0004F824  38 60 00 01 */	li r3, 1
/* 80053BC8 0004F828  38 80 43 FE */	li r4, 0x43fe
/* 80053BCC 0004F82C  48 10 89 29 */	bl func_8015C4F4
/* 80053BD0 0004F830  48 00 00 5C */	b lbl_80053C2C
/* 80053BD4 0004F834  38 60 00 01 */	li r3, 1
/* 80053BD8 0004F838  38 80 43 F9 */	li r4, 0x43f9
/* 80053BDC 0004F83C  48 10 89 19 */	bl func_8015C4F4
/* 80053BE0 0004F840  48 00 00 4C */	b lbl_80053C2C
/* 80053BE4 0004F844  C0 42 85 44 */	lfs f2, lbl_80640B44-_SDA2_BASE_(r2)
/* 80053BE8 0004F848  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 80053BEC 0004F84C  C0 02 85 0C */	lfs f0, lbl_80640B0C-_SDA2_BASE_(r2)
/* 80053BF0 0004F850  EC 22 00 72 */	fmuls f1, f2, f1
/* 80053BF4 0004F854  80 0D 98 70 */	lwz r0, lbl_8063EB30-_SDA_BASE_(r13)
/* 80053BF8 0004F858  EC 00 08 2A */	fadds f0, f0, f1
/* 80053BFC 0004F85C  FC 00 00 1E */	fctiwz f0, f0
/* 80053C00 0004F860  D8 01 00 08 */	stfd f0, 8(r1)
/* 80053C04 0004F864  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80053C08 0004F868  7C 00 18 40 */	cmplw r0, r3
/* 80053C0C 0004F86C  41 80 00 20 */	blt lbl_80053C2C
/* 80053C10 0004F870  38 60 00 01 */	li r3, 1
/* 80053C14 0004F874  38 80 43 FA */	li r4, 0x43fa
/* 80053C18 0004F878  48 10 88 DD */	bl func_8015C4F4
/* 80053C1C 0004F87C  48 00 00 10 */	b lbl_80053C2C
/* 80053C20 0004F880  38 60 00 01 */	li r3, 1
/* 80053C24 0004F884  38 80 43 FB */	li r4, 0x43fb
/* 80053C28 0004F888  48 10 88 CD */	bl func_8015C4F4
lbl_80053C2C:
/* 80053C2C 0004F88C  E3 E1 00 28 */	psq_l f31, 40(r1), 0, qr0
/* 80053C30 0004F890  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80053C34 0004F894  CB E1 00 20 */	lfd f31, 0x20(r1)
/* 80053C38 0004F898  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80053C3C 0004F89C  7C 08 03 A6 */	mtlr r0
/* 80053C40 0004F8A0  38 21 00 30 */	addi r1, r1, 0x30
/* 80053C44 0004F8A4  4E 80 00 20 */	blr
lbl_80053C48:
/* 80053C48 0004F8A8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80053C4C 0004F8AC  7C 08 02 A6 */	mflr r0
/* 80053C50 0004F8B0  38 A0 00 03 */	li r5, 3
/* 80053C54 0004F8B4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80053C58 0004F8B8  38 C1 00 08 */	addi r6, r1, 8
/* 80053C5C 0004F8BC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80053C60 0004F8C0  7C 9F 23 78 */	mr r31, r4
/* 80053C64 0004F8C4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80053C68 0004F8C8  7C 7E 1B 78 */	mr r30, r3
/* 80053C6C 0004F8CC  48 20 02 21 */	bl func_80253E8C
/* 80053C70 0004F8D0  80 01 00 08 */	lwz r0, 8(r1)
/* 80053C74 0004F8D4  2C 00 00 08 */	cmpwi r0, 8
/* 80053C78 0004F8D8  41 82 00 48 */	beq lbl_80053CC0
/* 80053C7C 0004F8DC  40 80 00 10 */	bge lbl_80053C8C
/* 80053C80 0004F8E0  2C 00 00 05 */	cmpwi r0, 5
/* 80053C84 0004F8E4  41 82 00 14 */	beq lbl_80053C98
/* 80053C88 0004F8E8  48 00 00 84 */	b lbl_80053D0C
lbl_80053C8C:
/* 80053C8C 0004F8EC  2C 00 00 0A */	cmpwi r0, 0xa
/* 80053C90 0004F8F0  41 82 00 58 */	beq lbl_80053CE8
/* 80053C94 0004F8F4  48 00 00 78 */	b lbl_80053D0C
lbl_80053C98:
/* 80053C98 0004F8F8  38 00 00 FF */	li r0, 0xff
/* 80053C9C 0004F8FC  7F C3 F3 78 */	mr r3, r30
/* 80053CA0 0004F900  98 1F 00 02 */	stb r0, 2(r31)
/* 80053CA4 0004F904  7F E4 FB 78 */	mr r4, r31
/* 80053CA8 0004F908  38 A0 00 02 */	li r5, 2
/* 80053CAC 0004F90C  38 C0 2E 52 */	li r6, 0x2e52
/* 80053CB0 0004F910  98 1F 00 03 */	stb r0, 3(r31)
/* 80053CB4 0004F914  98 1F 00 04 */	stb r0, 4(r31)
/* 80053CB8 0004F918  48 20 01 FD */	bl func_80253EB4
/* 80053CBC 0004F91C  48 00 00 50 */	b lbl_80053D0C
lbl_80053CC0:
/* 80053CC0 0004F920  38 00 00 FF */	li r0, 0xff
/* 80053CC4 0004F924  7F C3 F3 78 */	mr r3, r30
/* 80053CC8 0004F928  98 1F 00 02 */	stb r0, 2(r31)
/* 80053CCC 0004F92C  7F E4 FB 78 */	mr r4, r31
/* 80053CD0 0004F930  38 A0 00 02 */	li r5, 2
/* 80053CD4 0004F934  38 C0 2E 53 */	li r6, 0x2e53
/* 80053CD8 0004F938  98 1F 00 03 */	stb r0, 3(r31)
/* 80053CDC 0004F93C  98 1F 00 04 */	stb r0, 4(r31)
/* 80053CE0 0004F940  48 20 01 D5 */	bl func_80253EB4
/* 80053CE4 0004F944  48 00 00 28 */	b lbl_80053D0C
lbl_80053CE8:
/* 80053CE8 0004F948  38 00 00 FF */	li r0, 0xff
/* 80053CEC 0004F94C  7F C3 F3 78 */	mr r3, r30
/* 80053CF0 0004F950  98 1F 00 02 */	stb r0, 2(r31)
/* 80053CF4 0004F954  7F E4 FB 78 */	mr r4, r31
/* 80053CF8 0004F958  38 A0 00 02 */	li r5, 2
/* 80053CFC 0004F95C  38 C0 2E 54 */	li r6, 0x2e54
/* 80053D00 0004F960  98 1F 00 03 */	stb r0, 3(r31)
/* 80053D04 0004F964  98 1F 00 04 */	stb r0, 4(r31)
/* 80053D08 0004F968  48 20 01 AD */	bl func_80253EB4
lbl_80053D0C:
/* 80053D0C 0004F96C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80053D10 0004F970  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80053D14 0004F974  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80053D18 0004F978  7C 08 03 A6 */	mtlr r0
/* 80053D1C 0004F97C  38 21 00 20 */	addi r1, r1, 0x20
/* 80053D20 0004F980  4E 80 00 20 */	blr
lbl_80053D24:
/* 80053D24 0004F984  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80053D28 0004F988  7C 08 02 A6 */	mflr r0
/* 80053D2C 0004F98C  38 A0 00 03 */	li r5, 3
/* 80053D30 0004F990  90 01 00 44 */	stw r0, 0x44(r1)
/* 80053D34 0004F994  38 C1 00 08 */	addi r6, r1, 8
/* 80053D38 0004F998  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80053D3C 0004F99C  7C 9F 23 78 */	mr r31, r4
/* 80053D40 0004F9A0  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80053D44 0004F9A4  7C 7E 1B 78 */	mr r30, r3
/* 80053D48 0004F9A8  48 20 01 95 */	bl func_80253EDC
/* 80053D4C 0004F9AC  80 01 00 08 */	lwz r0, 8(r1)
/* 80053D50 0004F9B0  2C 00 00 01 */	cmpwi r0, 1
/* 80053D54 0004F9B4  41 82 00 44 */	beq lbl_80053D98
/* 80053D58 0004F9B8  40 80 00 10 */	bge lbl_80053D68
/* 80053D5C 0004F9BC  2C 00 00 00 */	cmpwi r0, 0
/* 80053D60 0004F9C0  40 80 00 14 */	bge lbl_80053D74
/* 80053D64 0004F9C4  48 00 00 78 */	b lbl_80053DDC
lbl_80053D68:
/* 80053D68 0004F9C8  2C 00 00 03 */	cmpwi r0, 3
/* 80053D6C 0004F9CC  40 80 00 70 */	bge lbl_80053DDC
/* 80053D70 0004F9D0  48 00 00 4C */	b lbl_80053DBC
lbl_80053D74:
/* 80053D74 0004F9D4  7F C3 F3 78 */	mr r3, r30
/* 80053D78 0004F9D8  7F E4 FB 78 */	mr r4, r31
/* 80053D7C 0004F9DC  38 C1 00 10 */	addi r6, r1, 0x10
/* 80053D80 0004F9E0  38 A0 00 06 */	li r5, 6
/* 80053D84 0004F9E4  48 20 01 59 */	bl func_80253EDC
/* 80053D88 0004F9E8  38 81 00 10 */	addi r4, r1, 0x10
/* 80053D8C 0004F9EC  38 60 00 01 */	li r3, 1
/* 80053D90 0004F9F0  48 00 5C AD */	bl func_80059A3C
/* 80053D94 0004F9F4  48 00 00 48 */	b lbl_80053DDC
lbl_80053D98:
/* 80053D98 0004F9F8  7F C3 F3 78 */	mr r3, r30
/* 80053D9C 0004F9FC  7F E4 FB 78 */	mr r4, r31
/* 80053DA0 0004FA00  38 C1 00 10 */	addi r6, r1, 0x10
/* 80053DA4 0004FA04  38 A0 00 06 */	li r5, 6
/* 80053DA8 0004FA08  48 20 01 35 */	bl func_80253EDC
/* 80053DAC 0004FA0C  38 81 00 10 */	addi r4, r1, 0x10
/* 80053DB0 0004FA10  38 60 00 02 */	li r3, 2
/* 80053DB4 0004FA14  48 00 5C 89 */	bl func_80059A3C
/* 80053DB8 0004FA18  48 00 00 24 */	b lbl_80053DDC
lbl_80053DBC:
/* 80053DBC 0004FA1C  7F C3 F3 78 */	mr r3, r30
/* 80053DC0 0004FA20  7F E4 FB 78 */	mr r4, r31
/* 80053DC4 0004FA24  38 C1 00 10 */	addi r6, r1, 0x10
/* 80053DC8 0004FA28  38 A0 00 06 */	li r5, 6
/* 80053DCC 0004FA2C  48 20 01 11 */	bl func_80253EDC
/* 80053DD0 0004FA30  38 81 00 10 */	addi r4, r1, 0x10
/* 80053DD4 0004FA34  38 60 00 03 */	li r3, 3
/* 80053DD8 0004FA38  48 00 5C 65 */	bl func_80059A3C
lbl_80053DDC:
/* 80053DDC 0004FA3C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80053DE0 0004FA40  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80053DE4 0004FA44  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80053DE8 0004FA48  7C 08 03 A6 */	mtlr r0
/* 80053DEC 0004FA4C  38 21 00 40 */	addi r1, r1, 0x40
/* 80053DF0 0004FA50  4E 80 00 20 */	blr
lbl_80053DF4:
/* 80053DF4 0004FA54  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80053DF8 0004FA58  7C 08 02 A6 */	mflr r0
/* 80053DFC 0004FA5C  3D 80 80 40 */	lis r12, lbl_803FB7A8@ha
/* 80053E00 0004FA60  90 01 00 34 */	stw r0, 0x34(r1)
/* 80053E04 0004FA64  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80053E08 0004FA68  7C 9F 23 78 */	mr r31, r4
/* 80053E0C 0004FA6C  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80053E10 0004FA70  7C 7E 1B 78 */	mr r30, r3
/* 80053E14 0004FA74  93 A1 00 24 */	stw r29, 0x24(r1)
/* 80053E18 0004FA78  80 AD 98 84 */	lwz r5, lbl_8063EB44-_SDA_BASE_(r13)
/* 80053E1C 0004FA7C  A5 6C B7 A8 */	lhzu r11, lbl_803FB7A8@l(r12)
/* 80053E20 0004FA80  80 05 00 4C */	lwz r0, 0x4c(r5)
/* 80053E24 0004FA84  A1 4C 00 02 */	lhz r10, 2(r12)
/* 80053E28 0004FA88  A1 2C 00 04 */	lhz r9, 4(r12)
/* 80053E2C 0004FA8C  2C 00 00 01 */	cmpwi r0, 1
/* 80053E30 0004FA90  A1 0C 00 06 */	lhz r8, 6(r12)
/* 80053E34 0004FA94  A0 EC 00 08 */	lhz r7, 8(r12)
/* 80053E38 0004FA98  A0 CC 00 0A */	lhz r6, 0xa(r12)
/* 80053E3C 0004FA9C  A0 AC 00 0C */	lhz r5, 0xc(r12)
/* 80053E40 0004FAA0  A0 8C 00 0E */	lhz r4, 0xe(r12)
/* 80053E44 0004FAA4  A0 6C 00 10 */	lhz r3, 0x10(r12)
/* 80053E48 0004FAA8  B1 61 00 0C */	sth r11, 0xc(r1)
/* 80053E4C 0004FAAC  B1 41 00 0E */	sth r10, 0xe(r1)
/* 80053E50 0004FAB0  B1 21 00 10 */	sth r9, 0x10(r1)
/* 80053E54 0004FAB4  B1 01 00 12 */	sth r8, 0x12(r1)
/* 80053E58 0004FAB8  B0 E1 00 14 */	sth r7, 0x14(r1)
/* 80053E5C 0004FABC  B0 C1 00 16 */	sth r6, 0x16(r1)
/* 80053E60 0004FAC0  B0 A1 00 18 */	sth r5, 0x18(r1)
/* 80053E64 0004FAC4  B0 81 00 1A */	sth r4, 0x1a(r1)
/* 80053E68 0004FAC8  B0 61 00 1C */	sth r3, 0x1c(r1)
/* 80053E6C 0004FACC  41 82 00 1C */	beq lbl_80053E88
/* 80053E70 0004FAD0  40 80 00 20 */	bge lbl_80053E90
/* 80053E74 0004FAD4  2C 00 00 00 */	cmpwi r0, 0
/* 80053E78 0004FAD8  40 80 00 08 */	bge lbl_80053E80
/* 80053E7C 0004FADC  48 00 00 14 */	b lbl_80053E90
lbl_80053E80:
/* 80053E80 0004FAE0  3B A0 00 00 */	li r29, 0
/* 80053E84 0004FAE4  48 00 00 10 */	b lbl_80053E94
lbl_80053E88:
/* 80053E88 0004FAE8  3B A0 00 01 */	li r29, 1
/* 80053E8C 0004FAEC  48 00 00 08 */	b lbl_80053E94
lbl_80053E90:
/* 80053E90 0004FAF0  3B A0 00 02 */	li r29, 2
lbl_80053E94:
/* 80053E94 0004FAF4  7F C3 F3 78 */	mr r3, r30
/* 80053E98 0004FAF8  7F E4 FB 78 */	mr r4, r31
/* 80053E9C 0004FAFC  38 C1 00 08 */	addi r6, r1, 8
/* 80053EA0 0004FB00  38 A0 00 03 */	li r5, 3
/* 80053EA4 0004FB04  48 1F FF E9 */	bl func_80253E8C
/* 80053EA8 0004FB08  80 61 00 08 */	lwz r3, 8(r1)
/* 80053EAC 0004FB0C  38 03 FF FC */	addi r0, r3, -4
/* 80053EB0 0004FB10  28 00 00 06 */	cmplwi r0, 6
/* 80053EB4 0004FB14  41 81 01 18 */	bgt lbl_80053FCC
/* 80053EB8 0004FB18  3C 60 80 41 */	lis r3, lbl_8040AE88@ha
/* 80053EBC 0004FB1C  54 00 10 3A */	slwi r0, r0, 2
/* 80053EC0 0004FB20  38 63 AE 88 */	addi r3, r3, lbl_8040AE88@l
/* 80053EC4 0004FB24  7C 63 00 2E */	lwzx r3, r3, r0
/* 80053EC8 0004FB28  7C 69 03 A6 */	mtctr r3
/* 80053ECC 0004FB2C  4E 80 04 20 */	bctr
/* 80053ED0 0004FB30  1C 1D 00 06 */	mulli r0, r29, 6
/* 80053ED4 0004FB34  38 A1 00 0C */	addi r5, r1, 0xc
/* 80053ED8 0004FB38  7F C3 F3 78 */	mr r3, r30
/* 80053EDC 0004FB3C  7F E4 FB 78 */	mr r4, r31
/* 80053EE0 0004FB40  7C C5 02 2E */	lhzx r6, r5, r0
/* 80053EE4 0004FB44  38 A0 00 02 */	li r5, 2
/* 80053EE8 0004FB48  48 1F FF CD */	bl func_80253EB4
/* 80053EEC 0004FB4C  48 00 00 E0 */	b lbl_80053FCC
/* 80053EF0 0004FB50  28 1D 00 02 */	cmplwi r29, 2
/* 80053EF4 0004FB54  40 82 00 1C */	bne lbl_80053F10
/* 80053EF8 0004FB58  7F C3 F3 78 */	mr r3, r30
/* 80053EFC 0004FB5C  7F E4 FB 78 */	mr r4, r31
/* 80053F00 0004FB60  38 A0 00 02 */	li r5, 2
/* 80053F04 0004FB64  38 C0 51 77 */	li r6, 0x5177
/* 80053F08 0004FB68  48 1F FF AD */	bl func_80253EB4
/* 80053F0C 0004FB6C  48 00 00 C0 */	b lbl_80053FCC
lbl_80053F10:
/* 80053F10 0004FB70  7F C3 F3 78 */	mr r3, r30
/* 80053F14 0004FB74  7F E4 FB 78 */	mr r4, r31
/* 80053F18 0004FB78  38 A0 00 02 */	li r5, 2
/* 80053F1C 0004FB7C  38 C0 50 99 */	li r6, 0x5099
/* 80053F20 0004FB80  48 1F FF 95 */	bl func_80253EB4
/* 80053F24 0004FB84  48 00 00 A8 */	b lbl_80053FCC
/* 80053F28 0004FB88  28 1D 00 02 */	cmplwi r29, 2
/* 80053F2C 0004FB8C  40 82 00 1C */	bne lbl_80053F48
/* 80053F30 0004FB90  7F C3 F3 78 */	mr r3, r30
/* 80053F34 0004FB94  7F E4 FB 78 */	mr r4, r31
/* 80053F38 0004FB98  38 A0 00 02 */	li r5, 2
/* 80053F3C 0004FB9C  38 C0 51 78 */	li r6, 0x5178
/* 80053F40 0004FBA0  48 1F FF 75 */	bl func_80253EB4
/* 80053F44 0004FBA4  48 00 00 88 */	b lbl_80053FCC
lbl_80053F48:
/* 80053F48 0004FBA8  7F C3 F3 78 */	mr r3, r30
/* 80053F4C 0004FBAC  7F E4 FB 78 */	mr r4, r31
/* 80053F50 0004FBB0  38 A0 00 02 */	li r5, 2
/* 80053F54 0004FBB4  38 C0 50 9E */	li r6, 0x509e
/* 80053F58 0004FBB8  48 1F FF 5D */	bl func_80253EB4
/* 80053F5C 0004FBBC  48 00 00 70 */	b lbl_80053FCC
/* 80053F60 0004FBC0  1C 1D 00 06 */	mulli r0, r29, 6
/* 80053F64 0004FBC4  38 A1 00 0E */	addi r5, r1, 0xe
/* 80053F68 0004FBC8  7F C3 F3 78 */	mr r3, r30
/* 80053F6C 0004FBCC  7F E4 FB 78 */	mr r4, r31
/* 80053F70 0004FBD0  7C C5 02 2E */	lhzx r6, r5, r0
/* 80053F74 0004FBD4  38 A0 00 02 */	li r5, 2
/* 80053F78 0004FBD8  48 1F FF 3D */	bl func_80253EB4
/* 80053F7C 0004FBDC  48 00 00 50 */	b lbl_80053FCC
/* 80053F80 0004FBE0  7F C3 F3 78 */	mr r3, r30
/* 80053F84 0004FBE4  7F E4 FB 78 */	mr r4, r31
/* 80053F88 0004FBE8  38 A0 00 02 */	li r5, 2
/* 80053F8C 0004FBEC  38 C0 50 9F */	li r6, 0x509f
/* 80053F90 0004FBF0  48 1F FF 25 */	bl func_80253EB4
/* 80053F94 0004FBF4  48 00 00 38 */	b lbl_80053FCC
/* 80053F98 0004FBF8  1C 1D 00 06 */	mulli r0, r29, 6
/* 80053F9C 0004FBFC  38 A1 00 10 */	addi r5, r1, 0x10
/* 80053FA0 0004FC00  7F C3 F3 78 */	mr r3, r30
/* 80053FA4 0004FC04  7F E4 FB 78 */	mr r4, r31
/* 80053FA8 0004FC08  7C C5 02 2E */	lhzx r6, r5, r0
/* 80053FAC 0004FC0C  38 A0 00 02 */	li r5, 2
/* 80053FB0 0004FC10  48 1F FF 05 */	bl func_80253EB4
/* 80053FB4 0004FC14  48 00 00 18 */	b lbl_80053FCC
/* 80053FB8 0004FC18  7F C3 F3 78 */	mr r3, r30
/* 80053FBC 0004FC1C  7F E4 FB 78 */	mr r4, r31
/* 80053FC0 0004FC20  38 A0 00 02 */	li r5, 2
/* 80053FC4 0004FC24  38 C0 50 A0 */	li r6, 0x50a0
/* 80053FC8 0004FC28  48 1F FE ED */	bl func_80253EB4
lbl_80053FCC:
/* 80053FCC 0004FC2C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80053FD0 0004FC30  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80053FD4 0004FC34  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80053FD8 0004FC38  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 80053FDC 0004FC3C  7C 08 03 A6 */	mtlr r0
/* 80053FE0 0004FC40  38 21 00 30 */	addi r1, r1, 0x30
/* 80053FE4 0004FC44  4E 80 00 20 */	blr
lbl_80053FE8:
/* 80053FE8 0004FC48  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80053FEC 0004FC4C  7C 08 02 A6 */	mflr r0
/* 80053FF0 0004FC50  38 A0 00 03 */	li r5, 3
/* 80053FF4 0004FC54  90 01 00 24 */	stw r0, 0x24(r1)
/* 80053FF8 0004FC58  38 C1 00 08 */	addi r6, r1, 8
/* 80053FFC 0004FC5C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80054000 0004FC60  7C 9F 23 78 */	mr r31, r4
/* 80054004 0004FC64  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80054008 0004FC68  7C 7E 1B 78 */	mr r30, r3
/* 8005400C 0004FC6C  48 1F FE 81 */	bl func_80253E8C
/* 80054010 0004FC70  80 01 00 08 */	lwz r0, 8(r1)
/* 80054014 0004FC74  2C 00 00 02 */	cmpwi r0, 2
/* 80054018 0004FC78  41 82 00 08 */	beq lbl_80054020
/* 8005401C 0004FC7C  48 00 00 20 */	b lbl_8005403C
lbl_80054020:
/* 80054020 0004FC80  38 60 00 1A */	li r3, 0x1a
/* 80054024 0004FC84  48 00 69 D5 */	bl func_8005A9F8
/* 80054028 0004FC88  7C 66 1B 78 */	mr r6, r3
/* 8005402C 0004FC8C  7F C3 F3 78 */	mr r3, r30
/* 80054030 0004FC90  7F E4 FB 78 */	mr r4, r31
/* 80054034 0004FC94  38 A0 00 01 */	li r5, 1
/* 80054038 0004FC98  48 1F FE 7D */	bl func_80253EB4
lbl_8005403C:
/* 8005403C 0004FC9C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80054040 0004FCA0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80054044 0004FCA4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80054048 0004FCA8  7C 08 03 A6 */	mtlr r0
/* 8005404C 0004FCAC  38 21 00 20 */	addi r1, r1, 0x20
/* 80054050 0004FCB0  4E 80 00 20 */	blr
lbl_80054054:
/* 80054054 0004FCB4  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80054058 0004FCB8  7C 08 02 A6 */	mflr r0
/* 8005405C 0004FCBC  38 A0 00 03 */	li r5, 3
/* 80054060 0004FCC0  90 01 00 44 */	stw r0, 0x44(r1)
/* 80054064 0004FCC4  38 C1 00 08 */	addi r6, r1, 8
/* 80054068 0004FCC8  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8005406C 0004FCCC  7C 9F 23 78 */	mr r31, r4
/* 80054070 0004FCD0  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80054074 0004FCD4  7C 7E 1B 78 */	mr r30, r3
/* 80054078 0004FCD8  48 1F FE 65 */	bl func_80253EDC
/* 8005407C 0004FCDC  80 01 00 08 */	lwz r0, 8(r1)
/* 80054080 0004FCE0  2C 00 00 01 */	cmpwi r0, 1
/* 80054084 0004FCE4  41 82 00 08 */	beq lbl_8005408C
/* 80054088 0004FCE8  48 00 00 24 */	b lbl_800540AC
lbl_8005408C:
/* 8005408C 0004FCEC  7F C3 F3 78 */	mr r3, r30
/* 80054090 0004FCF0  7F E4 FB 78 */	mr r4, r31
/* 80054094 0004FCF4  38 C1 00 10 */	addi r6, r1, 0x10
/* 80054098 0004FCF8  38 A0 00 06 */	li r5, 6
/* 8005409C 0004FCFC  48 1F FE 41 */	bl func_80253EDC
/* 800540A0 0004FD00  38 81 00 10 */	addi r4, r1, 0x10
/* 800540A4 0004FD04  38 60 00 63 */	li r3, 0x63
/* 800540A8 0004FD08  48 00 59 95 */	bl func_80059A3C
lbl_800540AC:
/* 800540AC 0004FD0C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 800540B0 0004FD10  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 800540B4 0004FD14  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 800540B8 0004FD18  7C 08 03 A6 */	mtlr r0
/* 800540BC 0004FD1C  38 21 00 40 */	addi r1, r1, 0x40
/* 800540C0 0004FD20  4E 80 00 20 */	blr
lbl_800540C4:
/* 800540C4 0004FD24  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800540C8 0004FD28  7C 08 02 A6 */	mflr r0
/* 800540CC 0004FD2C  38 A0 00 03 */	li r5, 3
/* 800540D0 0004FD30  90 01 00 24 */	stw r0, 0x24(r1)
/* 800540D4 0004FD34  38 C1 00 08 */	addi r6, r1, 8
/* 800540D8 0004FD38  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800540DC 0004FD3C  7C 9F 23 78 */	mr r31, r4
/* 800540E0 0004FD40  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800540E4 0004FD44  7C 7E 1B 78 */	mr r30, r3
/* 800540E8 0004FD48  48 1F FD A5 */	bl func_80253E8C
/* 800540EC 0004FD4C  80 01 00 08 */	lwz r0, 8(r1)
/* 800540F0 0004FD50  2C 00 00 01 */	cmpwi r0, 1
/* 800540F4 0004FD54  41 82 00 08 */	beq lbl_800540FC
/* 800540F8 0004FD58  48 00 00 44 */	b lbl_8005413C
lbl_800540FC:
/* 800540FC 0004FD5C  80 0D 98 6C */	lwz r0, lbl_8063EB2C-_SDA_BASE_(r13)
/* 80054100 0004FD60  28 00 00 32 */	cmplwi r0, 0x32
/* 80054104 0004FD64  41 82 00 38 */	beq lbl_8005413C
/* 80054108 0004FD68  28 00 00 33 */	cmplwi r0, 0x33
/* 8005410C 0004FD6C  41 82 00 30 */	beq lbl_8005413C
/* 80054110 0004FD70  28 00 00 34 */	cmplwi r0, 0x34
/* 80054114 0004FD74  41 82 00 28 */	beq lbl_8005413C
/* 80054118 0004FD78  38 00 00 FF */	li r0, 0xff
/* 8005411C 0004FD7C  7F C3 F3 78 */	mr r3, r30
/* 80054120 0004FD80  98 1F 00 02 */	stb r0, 2(r31)
/* 80054124 0004FD84  7F E4 FB 78 */	mr r4, r31
/* 80054128 0004FD88  38 A0 00 02 */	li r5, 2
/* 8005412C 0004FD8C  38 C0 2E 51 */	li r6, 0x2e51
/* 80054130 0004FD90  98 1F 00 03 */	stb r0, 3(r31)
/* 80054134 0004FD94  98 1F 00 04 */	stb r0, 4(r31)
/* 80054138 0004FD98  48 1F FD 7D */	bl func_80253EB4
lbl_8005413C:
/* 8005413C 0004FD9C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80054140 0004FDA0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80054144 0004FDA4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80054148 0004FDA8  7C 08 03 A6 */	mtlr r0
/* 8005414C 0004FDAC  38 21 00 20 */	addi r1, r1, 0x20
/* 80054150 0004FDB0  4E 80 00 20 */	blr
lbl_80054154:
/* 80054154 0004FDB4  4E 80 00 20 */	blr

.global func_80054158
func_80054158:
/* 80054158 0004FDB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005415C 0004FDBC  7C 08 02 A6 */	mflr r0
/* 80054160 0004FDC0  38 80 00 08 */	li r4, 8
/* 80054164 0004FDC4  38 A0 00 00 */	li r5, 0
/* 80054168 0004FDC8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005416C 0004FDCC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80054170 0004FDD0  3F E0 80 41 */	lis r31, lbl_8040ACB0@ha
/* 80054174 0004FDD4  3B FF AC B0 */	addi r31, r31, lbl_8040ACB0@l
/* 80054178 0004FDD8  A8 7F 00 02 */	lha r3, 2(r31)
/* 8005417C 0004FDDC  48 1F FC 75 */	bl func_80253DF0
/* 80054180 0004FDE0  A8 7F 00 04 */	lha r3, 4(r31)
/* 80054184 0004FDE4  38 80 00 08 */	li r4, 8
/* 80054188 0004FDE8  38 A0 00 00 */	li r5, 0
/* 8005418C 0004FDEC  48 1F FC 65 */	bl func_80253DF0
/* 80054190 0004FDF0  38 00 00 00 */	li r0, 0
/* 80054194 0004FDF4  98 0D 81 CD */	stb r0, lbl_8063D48D-_SDA_BASE_(r13)
/* 80054198 0004FDF8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005419C 0004FDFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800541A0 0004FE00  7C 08 03 A6 */	mtlr r0
/* 800541A4 0004FE04  38 21 00 10 */	addi r1, r1, 0x10
/* 800541A8 0004FE08  4E 80 00 20 */	blr

.global func_800541AC
func_800541AC:
/* 800541AC 0004FE0C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800541B0 0004FE10  7C 08 02 A6 */	mflr r0
/* 800541B4 0004FE14  38 80 00 08 */	li r4, 8
/* 800541B8 0004FE18  38 A0 00 01 */	li r5, 1
/* 800541BC 0004FE1C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800541C0 0004FE20  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800541C4 0004FE24  3F E0 80 41 */	lis r31, lbl_8040ACB0@ha
/* 800541C8 0004FE28  3B FF AC B0 */	addi r31, r31, lbl_8040ACB0@l
/* 800541CC 0004FE2C  A8 7F 00 02 */	lha r3, 2(r31)
/* 800541D0 0004FE30  48 1F FC 21 */	bl func_80253DF0
/* 800541D4 0004FE34  A8 7F 00 04 */	lha r3, 4(r31)
/* 800541D8 0004FE38  38 80 00 08 */	li r4, 8
/* 800541DC 0004FE3C  38 A0 00 01 */	li r5, 1
/* 800541E0 0004FE40  48 1F FC 11 */	bl func_80253DF0
/* 800541E4 0004FE44  38 00 00 01 */	li r0, 1
/* 800541E8 0004FE48  98 0D 81 CD */	stb r0, lbl_8063D48D-_SDA_BASE_(r13)
/* 800541EC 0004FE4C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800541F0 0004FE50  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800541F4 0004FE54  7C 08 03 A6 */	mtlr r0
/* 800541F8 0004FE58  38 21 00 10 */	addi r1, r1, 0x10
/* 800541FC 0004FE5C  4E 80 00 20 */	blr
lbl_80054200:
/* 80054200 0004FE60  C0 22 85 10 */	lfs f1, lbl_80640B10-_SDA2_BASE_(r2)
/* 80054204 0004FE64  7C 63 07 34 */	extsh r3, r3
/* 80054208 0004FE68  38 80 00 04 */	li r4, 4
/* 8005420C 0004FE6C  48 1F FC 04 */	b func_80253E10
lbl_80054210:
/* 80054210 0004FE70  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80054214 0004FE74  7C 08 02 A6 */	mflr r0
/* 80054218 0004FE78  38 A0 00 03 */	li r5, 3
/* 8005421C 0004FE7C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80054220 0004FE80  38 C1 00 0C */	addi r6, r1, 0xc
/* 80054224 0004FE84  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80054228 0004FE88  7C 9F 23 78 */	mr r31, r4
/* 8005422C 0004FE8C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80054230 0004FE90  7C 7E 1B 78 */	mr r30, r3
/* 80054234 0004FE94  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80054238 0004FE98  48 1F FC 55 */	bl func_80253E8C
/* 8005423C 0004FE9C  80 01 00 0C */	lwz r0, 0xc(r1)
/* 80054240 0004FEA0  2C 00 00 06 */	cmpwi r0, 6
/* 80054244 0004FEA4  41 82 00 8C */	beq lbl_800542D0
/* 80054248 0004FEA8  40 80 00 10 */	bge lbl_80054258
/* 8005424C 0004FEAC  2C 00 00 04 */	cmpwi r0, 4
/* 80054250 0004FEB0  41 82 00 14 */	beq lbl_80054264
/* 80054254 0004FEB4  48 00 01 50 */	b lbl_800543A4
lbl_80054258:
/* 80054258 0004FEB8  2C 00 00 08 */	cmpwi r0, 8
/* 8005425C 0004FEBC  41 82 00 E0 */	beq lbl_8005433C
/* 80054260 0004FEC0  48 00 01 44 */	b lbl_800543A4
lbl_80054264:
/* 80054264 0004FEC4  7F C3 F3 78 */	mr r3, r30
/* 80054268 0004FEC8  7F E4 FB 78 */	mr r4, r31
/* 8005426C 0004FECC  38 C1 00 08 */	addi r6, r1, 8
/* 80054270 0004FED0  38 A0 00 05 */	li r5, 5
/* 80054274 0004FED4  48 1F FC 19 */	bl func_80253E8C
/* 80054278 0004FED8  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 8005427C 0004FEDC  38 60 43 FF */	li r3, 0x43ff
/* 80054280 0004FEE0  83 A1 00 08 */	lwz r29, 8(r1)
/* 80054284 0004FEE4  38 04 00 0C */	addi r0, r4, 0xc
/* 80054288 0004FEE8  90 1D 00 00 */	stw r0, 0(r29)
/* 8005428C 0004FEEC  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 80054290 0004FEF0  38 84 00 0C */	addi r4, r4, 0xc
/* 80054294 0004FEF4  48 1F C1 45 */	bl func_802503D8
/* 80054298 0004FEF8  38 E0 00 FF */	li r7, 0xff
/* 8005429C 0004FEFC  38 00 00 84 */	li r0, 0x84
/* 800542A0 0004FF00  98 FD 00 04 */	stb r7, 4(r29)
/* 800542A4 0004FF04  7F C3 F3 78 */	mr r3, r30
/* 800542A8 0004FF08  7F E4 FB 78 */	mr r4, r31
/* 800542AC 0004FF0C  38 A0 00 02 */	li r5, 2
/* 800542B0 0004FF10  98 FD 00 05 */	stb r7, 5(r29)
/* 800542B4 0004FF14  38 C0 FF FE */	li r6, -2
/* 800542B8 0004FF18  98 FD 00 06 */	stb r7, 6(r29)
/* 800542BC 0004FF1C  88 FF 00 05 */	lbz r7, 5(r31)
/* 800542C0 0004FF20  98 FD 00 07 */	stb r7, 7(r29)
/* 800542C4 0004FF24  98 1D 00 09 */	stb r0, 9(r29)
/* 800542C8 0004FF28  48 1F FB ED */	bl func_80253EB4
/* 800542CC 0004FF2C  48 00 00 D8 */	b lbl_800543A4
lbl_800542D0:
/* 800542D0 0004FF30  7F C3 F3 78 */	mr r3, r30
/* 800542D4 0004FF34  7F E4 FB 78 */	mr r4, r31
/* 800542D8 0004FF38  38 C1 00 08 */	addi r6, r1, 8
/* 800542DC 0004FF3C  38 A0 00 05 */	li r5, 5
/* 800542E0 0004FF40  48 1F FB AD */	bl func_80253E8C
/* 800542E4 0004FF44  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 800542E8 0004FF48  38 60 44 00 */	li r3, 0x4400
/* 800542EC 0004FF4C  83 A1 00 08 */	lwz r29, 8(r1)
/* 800542F0 0004FF50  38 04 00 14 */	addi r0, r4, 0x14
/* 800542F4 0004FF54  90 1D 00 00 */	stw r0, 0(r29)
/* 800542F8 0004FF58  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 800542FC 0004FF5C  38 84 00 14 */	addi r4, r4, 0x14
/* 80054300 0004FF60  48 1F C0 D9 */	bl func_802503D8
/* 80054304 0004FF64  38 E0 00 FF */	li r7, 0xff
/* 80054308 0004FF68  38 00 00 84 */	li r0, 0x84
/* 8005430C 0004FF6C  98 FD 00 04 */	stb r7, 4(r29)
/* 80054310 0004FF70  7F C3 F3 78 */	mr r3, r30
/* 80054314 0004FF74  7F E4 FB 78 */	mr r4, r31
/* 80054318 0004FF78  38 A0 00 02 */	li r5, 2
/* 8005431C 0004FF7C  98 FD 00 05 */	stb r7, 5(r29)
/* 80054320 0004FF80  38 C0 FF FE */	li r6, -2
/* 80054324 0004FF84  98 FD 00 06 */	stb r7, 6(r29)
/* 80054328 0004FF88  88 FF 00 05 */	lbz r7, 5(r31)
/* 8005432C 0004FF8C  98 FD 00 07 */	stb r7, 7(r29)
/* 80054330 0004FF90  98 1D 00 09 */	stb r0, 9(r29)
/* 80054334 0004FF94  48 1F FB 81 */	bl func_80253EB4
/* 80054338 0004FF98  48 00 00 6C */	b lbl_800543A4
lbl_8005433C:
/* 8005433C 0004FF9C  7F C3 F3 78 */	mr r3, r30
/* 80054340 0004FFA0  7F E4 FB 78 */	mr r4, r31
/* 80054344 0004FFA4  38 C1 00 08 */	addi r6, r1, 8
/* 80054348 0004FFA8  38 A0 00 05 */	li r5, 5
/* 8005434C 0004FFAC  48 1F FB 41 */	bl func_80253E8C
/* 80054350 0004FFB0  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 80054354 0004FFB4  38 60 44 01 */	li r3, 0x4401
/* 80054358 0004FFB8  83 A1 00 08 */	lwz r29, 8(r1)
/* 8005435C 0004FFBC  38 04 00 1C */	addi r0, r4, 0x1c
/* 80054360 0004FFC0  90 1D 00 00 */	stw r0, 0(r29)
/* 80054364 0004FFC4  80 8D 81 C8 */	lwz r4, lbl_8063D488-_SDA_BASE_(r13)
/* 80054368 0004FFC8  38 84 00 1C */	addi r4, r4, 0x1c
/* 8005436C 0004FFCC  48 1F C0 6D */	bl func_802503D8
/* 80054370 0004FFD0  38 E0 00 FF */	li r7, 0xff
/* 80054374 0004FFD4  38 00 00 84 */	li r0, 0x84
/* 80054378 0004FFD8  98 FD 00 04 */	stb r7, 4(r29)
/* 8005437C 0004FFDC  7F C3 F3 78 */	mr r3, r30
/* 80054380 0004FFE0  7F E4 FB 78 */	mr r4, r31
/* 80054384 0004FFE4  38 A0 00 02 */	li r5, 2
/* 80054388 0004FFE8  98 FD 00 05 */	stb r7, 5(r29)
/* 8005438C 0004FFEC  38 C0 FF FE */	li r6, -2
/* 80054390 0004FFF0  98 FD 00 06 */	stb r7, 6(r29)
/* 80054394 0004FFF4  88 FF 00 05 */	lbz r7, 5(r31)
/* 80054398 0004FFF8  98 FD 00 07 */	stb r7, 7(r29)
/* 8005439C 0004FFFC  98 1D 00 09 */	stb r0, 9(r29)
/* 800543A0 00050000  48 1F FB 15 */	bl func_80253EB4
lbl_800543A4:
/* 800543A4 00050004  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800543A8 00050008  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 800543AC 0005000C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 800543B0 00050010  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 800543B4 00050014  7C 08 03 A6 */	mtlr r0
/* 800543B8 00050018  38 21 00 20 */	addi r1, r1, 0x20
/* 800543BC 0005001C  4E 80 00 20 */	blr
lbl_800543C0:
/* 800543C0 00050020  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800543C4 00050024  7C 08 02 A6 */	mflr r0
/* 800543C8 00050028  38 A0 00 03 */	li r5, 3
/* 800543CC 0005002C  90 01 00 44 */	stw r0, 0x44(r1)
/* 800543D0 00050030  38 C1 00 08 */	addi r6, r1, 8
/* 800543D4 00050034  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 800543D8 00050038  7C 9F 23 78 */	mr r31, r4
/* 800543DC 0005003C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 800543E0 00050040  7C 7E 1B 78 */	mr r30, r3
/* 800543E4 00050044  48 1F FA F9 */	bl func_80253EDC
/* 800543E8 00050048  80 01 00 08 */	lwz r0, 8(r1)
/* 800543EC 0005004C  2C 00 00 01 */	cmpwi r0, 1
/* 800543F0 00050050  41 82 00 44 */	beq lbl_80054434
/* 800543F4 00050054  40 80 00 10 */	bge lbl_80054404
/* 800543F8 00050058  2C 00 00 00 */	cmpwi r0, 0
/* 800543FC 0005005C  40 80 00 14 */	bge lbl_80054410
/* 80054400 00050060  48 00 00 78 */	b lbl_80054478
lbl_80054404:
/* 80054404 00050064  2C 00 00 03 */	cmpwi r0, 3
/* 80054408 00050068  40 80 00 70 */	bge lbl_80054478
/* 8005440C 0005006C  48 00 00 4C */	b lbl_80054458
lbl_80054410:
/* 80054410 00050070  7F C3 F3 78 */	mr r3, r30
/* 80054414 00050074  7F E4 FB 78 */	mr r4, r31
/* 80054418 00050078  38 C1 00 10 */	addi r6, r1, 0x10
/* 8005441C 0005007C  38 A0 00 06 */	li r5, 6
/* 80054420 00050080  48 1F FA BD */	bl func_80253EDC
/* 80054424 00050084  38 81 00 10 */	addi r4, r1, 0x10
/* 80054428 00050088  38 60 00 01 */	li r3, 1
/* 8005442C 0005008C  48 00 56 11 */	bl func_80059A3C
/* 80054430 00050090  48 00 00 48 */	b lbl_80054478
lbl_80054434:
/* 80054434 00050094  7F C3 F3 78 */	mr r3, r30
/* 80054438 00050098  7F E4 FB 78 */	mr r4, r31
/* 8005443C 0005009C  38 C1 00 10 */	addi r6, r1, 0x10
/* 80054440 000500A0  38 A0 00 06 */	li r5, 6
/* 80054444 000500A4  48 1F FA 99 */	bl func_80253EDC
/* 80054448 000500A8  38 81 00 10 */	addi r4, r1, 0x10
/* 8005444C 000500AC  38 60 00 02 */	li r3, 2
/* 80054450 000500B0  48 00 55 ED */	bl func_80059A3C
/* 80054454 000500B4  48 00 00 24 */	b lbl_80054478
lbl_80054458:
/* 80054458 000500B8  7F C3 F3 78 */	mr r3, r30
/* 8005445C 000500BC  7F E4 FB 78 */	mr r4, r31
/* 80054460 000500C0  38 C1 00 10 */	addi r6, r1, 0x10
/* 80054464 000500C4  38 A0 00 06 */	li r5, 6
/* 80054468 000500C8  48 1F FA 75 */	bl func_80253EDC
/* 8005446C 000500CC  38 81 00 10 */	addi r4, r1, 0x10
/* 80054470 000500D0  38 60 00 03 */	li r3, 3
/* 80054474 000500D4  48 00 55 C9 */	bl func_80059A3C
lbl_80054478:
/* 80054478 000500D8  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8005447C 000500DC  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 80054480 000500E0  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80054484 000500E4  7C 08 03 A6 */	mtlr r0
/* 80054488 000500E8  38 21 00 40 */	addi r1, r1, 0x40
/* 8005448C 000500EC  4E 80 00 20 */	blr

.global func_80054490
func_80054490:
/* 80054490 000500F0  4E 80 00 20 */	blr

.global func_80054494
func_80054494:
/* 80054494 000500F4  4E 80 00 20 */	blr

.global func_80054498
func_80054498:
/* 80054498 000500F8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005449C 000500FC  7C 08 02 A6 */	mflr r0
/* 800544A0 00050100  90 01 00 14 */	stw r0, 0x14(r1)
/* 800544A4 00050104  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800544A8 00050108  7C 7F 1B 78 */	mr r31, r3
/* 800544AC 0005010C  38 60 00 04 */	li r3, 4
/* 800544B0 00050110  93 C1 00 08 */	stw r30, 8(r1)
/* 800544B4 00050114  48 1E 6B A5 */	bl func_8023B058
/* 800544B8 00050118  3C 80 21 32 */	lis r4, 0x21320400@ha
/* 800544BC 0005011C  7C 7E 1B 78 */	mr r30, r3
/* 800544C0 00050120  38 84 04 00 */	addi r4, r4, 0x21320400@l
/* 800544C4 00050124  38 60 03 E8 */	li r3, 0x3e8
/* 800544C8 00050128  48 18 6F F5 */	bl func_801DB4BC
/* 800544CC 0005012C  2C 03 00 00 */	cmpwi r3, 0
/* 800544D0 00050130  90 7F 00 54 */	stw r3, 0x54(r31)
/* 800544D4 00050134  41 82 02 44 */	beq lbl_80054718
/* 800544D8 00050138  80 1F 00 28 */	lwz r0, 0x28(r31)
/* 800544DC 0005013C  2C 00 00 00 */	cmpwi r0, 0
/* 800544E0 00050140  41 82 00 0C */	beq lbl_800544EC
/* 800544E4 00050144  7F E3 FB 78 */	mr r3, r31
/* 800544E8 00050148  48 00 02 49 */	bl func_80054730
lbl_800544EC:
/* 800544EC 0005014C  2C 1E 00 00 */	cmpwi r30, 0
/* 800544F0 00050150  41 82 00 10 */	beq lbl_80054500
/* 800544F4 00050154  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 800544F8 00050158  90 1F 00 4C */	stw r0, 0x4c(r31)
/* 800544FC 0005015C  48 00 00 0C */	b lbl_80054508
lbl_80054500:
/* 80054500 00050160  38 00 00 00 */	li r0, 0
/* 80054504 00050164  90 1F 00 4C */	stw r0, 0x4c(r31)
lbl_80054508:
/* 80054508 00050168  80 7F 00 54 */	lwz r3, 0x54(r31)
/* 8005450C 0005016C  7C 64 1B 78 */	mr r4, r3
/* 80054510 00050170  48 18 EF CD */	bl func_801E34DC
/* 80054514 00050174  48 18 66 15 */	bl func_801DAB28
/* 80054518 00050178  2C 03 00 00 */	cmpwi r3, 0
/* 8005451C 0005017C  41 82 00 14 */	beq lbl_80054530
/* 80054520 00050180  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80054524 00050184  38 80 00 14 */	li r4, 0x14
/* 80054528 00050188  48 18 67 6D */	bl func_801DAC94
/* 8005452C 0005018C  48 00 00 08 */	b lbl_80054534
lbl_80054530:
/* 80054530 00050190  38 60 00 00 */	li r3, 0
lbl_80054534:
/* 80054534 00050194  2C 03 00 00 */	cmpwi r3, 0
/* 80054538 00050198  41 82 00 0C */	beq lbl_80054544
/* 8005453C 0005019C  80 9F 00 54 */	lwz r4, 0x54(r31)
/* 80054540 000501A0  48 1A 5B 55 */	bl func_801FA094
lbl_80054544:
/* 80054544 000501A4  2C 03 00 00 */	cmpwi r3, 0
/* 80054548 000501A8  90 7F 00 28 */	stw r3, 0x28(r31)
/* 8005454C 000501AC  41 82 01 CC */	beq lbl_80054718
/* 80054550 000501B0  80 83 00 04 */	lwz r4, 4(r3)
/* 80054554 000501B4  2C 04 00 00 */	cmpwi r4, 0
/* 80054558 000501B8  40 82 00 0C */	bne lbl_80054564
/* 8005455C 000501BC  38 60 00 00 */	li r3, 0
/* 80054560 000501C0  48 00 00 20 */	b lbl_80054580
lbl_80054564:
/* 80054564 000501C4  80 63 00 00 */	lwz r3, 0(r3)
/* 80054568 000501C8  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8005456C 000501CC  2C 00 00 00 */	cmpwi r0, 0
/* 80054570 000501D0  40 82 00 0C */	bne lbl_8005457C
/* 80054574 000501D4  38 60 00 00 */	li r3, 0
/* 80054578 000501D8  48 00 00 08 */	b lbl_80054580
lbl_8005457C:
/* 8005457C 000501DC  80 64 00 00 */	lwz r3, 0(r4)
lbl_80054580:
/* 80054580 000501E0  2C 03 00 00 */	cmpwi r3, 0
/* 80054584 000501E4  90 7F 00 38 */	stw r3, 0x38(r31)
/* 80054588 000501E8  41 82 00 A8 */	beq lbl_80054630
/* 8005458C 000501EC  48 1A F2 85 */	bl func_80203810
/* 80054590 000501F0  80 7F 00 38 */	lwz r3, 0x38(r31)
/* 80054594 000501F4  48 1A C2 C5 */	bl func_80200858
/* 80054598 000501F8  80 7F 00 38 */	lwz r3, 0x38(r31)
/* 8005459C 000501FC  80 83 00 10 */	lwz r4, 0x10(r3)
/* 800545A0 00050200  2C 04 00 00 */	cmpwi r4, 0
/* 800545A4 00050204  40 82 00 0C */	bne lbl_800545B0
/* 800545A8 00050208  38 00 00 00 */	li r0, 0
/* 800545AC 0005020C  48 00 00 4C */	b lbl_800545F8
lbl_800545B0:
/* 800545B0 00050210  A0 03 00 E0 */	lhz r0, 0xe0(r3)
/* 800545B4 00050214  2C 00 00 00 */	cmpwi r0, 0
/* 800545B8 00050218  40 82 00 0C */	bne lbl_800545C4
/* 800545BC 0005021C  38 00 00 00 */	li r0, 0
/* 800545C0 00050220  48 00 00 38 */	b lbl_800545F8
lbl_800545C4:
/* 800545C4 00050224  80 A3 00 08 */	lwz r5, 8(r3)
/* 800545C8 00050228  A0 84 00 00 */	lhz r4, 0(r4)
/* 800545CC 0005022C  2C 05 00 00 */	cmpwi r5, 0
/* 800545D0 00050230  40 82 00 0C */	bne lbl_800545DC
/* 800545D4 00050234  38 00 00 00 */	li r0, 0
/* 800545D8 00050238  48 00 00 20 */	b lbl_800545F8
lbl_800545DC:
/* 800545DC 0005023C  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 800545E0 00050240  7C 04 00 40 */	cmplw r4, r0
/* 800545E4 00050244  41 80 00 0C */	blt lbl_800545F0
/* 800545E8 00050248  38 00 00 00 */	li r0, 0
/* 800545EC 0005024C  48 00 00 0C */	b lbl_800545F8
lbl_800545F0:
/* 800545F0 00050250  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 800545F4 00050254  7C 05 00 2E */	lwzx r0, r5, r0
lbl_800545F8:
/* 800545F8 00050258  2C 1E 00 00 */	cmpwi r30, 0
/* 800545FC 0005025C  41 82 00 10 */	beq lbl_8005460C
/* 80054600 00050260  2C 00 00 00 */	cmpwi r0, 0
/* 80054604 00050264  41 82 00 08 */	beq lbl_8005460C
/* 80054608 00050268  90 1E 00 0C */	stw r0, 0xc(r30)
lbl_8005460C:
/* 8005460C 0005026C  80 7F 00 38 */	lwz r3, 0x38(r31)
/* 80054610 00050270  38 80 00 00 */	li r4, 0
/* 80054614 00050274  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054618 00050278  38 A0 00 01 */	li r5, 1
/* 8005461C 0005027C  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80054620 00050280  38 C0 00 00 */	li r6, 0
/* 80054624 00050284  38 E0 00 00 */	li r7, 0
/* 80054628 00050288  39 00 00 00 */	li r8, 0
/* 8005462C 0005028C  48 1A 07 C9 */	bl func_801F4DF4
lbl_80054630:
/* 80054630 00050290  38 00 00 01 */	li r0, 1
/* 80054634 00050294  7F E3 FB 78 */	mr r3, r31
/* 80054638 00050298  98 1F 00 24 */	stb r0, 0x24(r31)
/* 8005463C 0005029C  38 80 00 00 */	li r4, 0
/* 80054640 000502A0  48 00 03 55 */	bl func_80054994
/* 80054644 000502A4  48 18 64 E5 */	bl func_801DAB28
/* 80054648 000502A8  2C 03 00 00 */	cmpwi r3, 0
/* 8005464C 000502AC  41 82 00 18 */	beq lbl_80054664
/* 80054650 000502B0  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80054654 000502B4  38 80 01 40 */	li r4, 0x140
/* 80054658 000502B8  48 18 66 3D */	bl func_801DAC94
/* 8005465C 000502BC  7C 7E 1B 78 */	mr r30, r3
/* 80054660 000502C0  48 00 00 08 */	b lbl_80054668
lbl_80054664:
/* 80054664 000502C4  3B C0 00 00 */	li r30, 0
lbl_80054668:
/* 80054668 000502C8  2C 1E 00 00 */	cmpwi r30, 0
/* 8005466C 000502CC  41 82 00 24 */	beq lbl_80054690
/* 80054670 000502D0  3C 80 2B 65 */	lis r4, 0x2B650A00@ha
/* 80054674 000502D4  38 60 03 E8 */	li r3, 0x3e8
/* 80054678 000502D8  38 84 0A 00 */	addi r4, r4, 0x2B650A00@l
/* 8005467C 000502DC  48 18 6E 41 */	bl func_801DB4BC
/* 80054680 000502E0  7C 64 1B 78 */	mr r4, r3
/* 80054684 000502E4  7F C3 F3 78 */	mr r3, r30
/* 80054688 000502E8  48 1A 52 65 */	bl func_801F98EC
/* 8005468C 000502EC  7C 7E 1B 78 */	mr r30, r3
lbl_80054690:
/* 80054690 000502F0  2C 1E 00 00 */	cmpwi r30, 0
/* 80054694 000502F4  93 DF 00 64 */	stw r30, 0x64(r31)
/* 80054698 000502F8  41 82 00 80 */	beq lbl_80054718
/* 8005469C 000502FC  80 7F 00 38 */	lwz r3, 0x38(r31)
/* 800546A0 00050300  80 83 00 08 */	lwz r4, 8(r3)
/* 800546A4 00050304  2C 04 00 00 */	cmpwi r4, 0
/* 800546A8 00050308  40 82 00 0C */	bne lbl_800546B4
/* 800546AC 0005030C  38 60 00 00 */	li r3, 0
/* 800546B0 00050310  48 00 00 1C */	b lbl_800546CC
lbl_800546B4:
/* 800546B4 00050314  A0 03 00 DE */	lhz r0, 0xde(r3)
/* 800546B8 00050318  28 00 00 01 */	cmplwi r0, 1
/* 800546BC 0005031C  41 81 00 0C */	bgt lbl_800546C8
/* 800546C0 00050320  38 60 00 00 */	li r3, 0
/* 800546C4 00050324  48 00 00 08 */	b lbl_800546CC
lbl_800546C8:
/* 800546C8 00050328  80 64 00 04 */	lwz r3, 4(r4)
lbl_800546CC:
/* 800546CC 0005032C  7F C5 F3 78 */	mr r5, r30
/* 800546D0 00050330  38 80 00 07 */	li r4, 7
/* 800546D4 00050334  38 C0 00 00 */	li r6, 0
/* 800546D8 00050338  38 E0 00 03 */	li r7, 3
/* 800546DC 0005033C  48 19 DA B1 */	bl func_801F218C
/* 800546E0 00050340  80 7F 00 64 */	lwz r3, 0x64(r31)
/* 800546E4 00050344  80 63 01 38 */	lwz r3, 0x138(r3)
/* 800546E8 00050348  2C 03 00 00 */	cmpwi r3, 0
/* 800546EC 0005034C  41 82 00 10 */	beq lbl_800546FC
/* 800546F0 00050350  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 800546F4 00050354  60 00 00 10 */	ori r0, r0, 0x10
/* 800546F8 00050358  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_800546FC:
/* 800546FC 0005035C  80 7F 00 64 */	lwz r3, 0x64(r31)
/* 80054700 00050360  80 63 01 38 */	lwz r3, 0x138(r3)
/* 80054704 00050364  2C 03 00 00 */	cmpwi r3, 0
/* 80054708 00050368  41 82 00 10 */	beq lbl_80054718
/* 8005470C 0005036C  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80054710 00050370  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80054714 00050374  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_80054718:
/* 80054718 00050378  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005471C 0005037C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80054720 00050380  83 C1 00 08 */	lwz r30, 8(r1)
/* 80054724 00050384  7C 08 03 A6 */	mtlr r0
/* 80054728 00050388  38 21 00 10 */	addi r1, r1, 0x10
/* 8005472C 0005038C  4E 80 00 20 */	blr

.global func_80054730
func_80054730:
/* 80054730 00050390  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80054734 00050394  7C 08 02 A6 */	mflr r0
/* 80054738 00050398  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005473C 0005039C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80054740 000503A0  7C 7F 1B 78 */	mr r31, r3
/* 80054744 000503A4  38 60 00 04 */	li r3, 4
/* 80054748 000503A8  48 1E 69 11 */	bl func_8023B058
/* 8005474C 000503AC  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 80054750 000503B0  2C 00 00 00 */	cmpwi r0, 0
/* 80054754 000503B4  41 82 00 10 */	beq lbl_80054764
/* 80054758 000503B8  90 03 00 0C */	stw r0, 0xc(r3)
/* 8005475C 000503BC  38 00 00 00 */	li r0, 0
/* 80054760 000503C0  90 1F 00 4C */	stw r0, 0x4c(r31)
lbl_80054764:
/* 80054764 000503C4  80 1F 00 28 */	lwz r0, 0x28(r31)
/* 80054768 000503C8  2C 00 00 00 */	cmpwi r0, 0
/* 8005476C 000503CC  41 82 00 5C */	beq lbl_800547C8
/* 80054770 000503D0  80 7F 00 64 */	lwz r3, 0x64(r31)
/* 80054774 000503D4  2C 03 00 00 */	cmpwi r3, 0
/* 80054778 000503D8  41 82 00 24 */	beq lbl_8005479C
/* 8005477C 000503DC  41 82 00 18 */	beq lbl_80054794
/* 80054780 000503E0  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80054784 000503E4  38 80 00 01 */	li r4, 1
/* 80054788 000503E8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8005478C 000503EC  7D 89 03 A6 */	mtctr r12
/* 80054790 000503F0  4E 80 04 21 */	bctrl
lbl_80054794:
/* 80054794 000503F4  38 00 00 00 */	li r0, 0
/* 80054798 000503F8  90 1F 00 64 */	stw r0, 0x64(r31)
lbl_8005479C:
/* 8005479C 000503FC  80 7F 00 38 */	lwz r3, 0x38(r31)
/* 800547A0 00050400  2C 03 00 00 */	cmpwi r3, 0
/* 800547A4 00050404  41 82 00 10 */	beq lbl_800547B4
/* 800547A8 00050408  48 1A F1 A9 */	bl func_80203950
/* 800547AC 0005040C  38 00 00 00 */	li r0, 0
/* 800547B0 00050410  90 1F 00 38 */	stw r0, 0x38(r31)
lbl_800547B4:
/* 800547B4 00050414  80 7F 00 28 */	lwz r3, 0x28(r31)
/* 800547B8 00050418  38 80 00 01 */	li r4, 1
/* 800547BC 0005041C  48 1A 5A D9 */	bl func_801FA294
/* 800547C0 00050420  38 00 00 00 */	li r0, 0
/* 800547C4 00050424  90 1F 00 28 */	stw r0, 0x28(r31)
lbl_800547C8:
/* 800547C8 00050428  80 7F 00 54 */	lwz r3, 0x54(r31)
/* 800547CC 0005042C  2C 03 00 00 */	cmpwi r3, 0
/* 800547D0 00050430  41 82 00 10 */	beq lbl_800547E0
/* 800547D4 00050434  48 18 F0 1D */	bl func_801E37F0
/* 800547D8 00050438  38 00 00 00 */	li r0, 0
/* 800547DC 0005043C  90 1F 00 54 */	stw r0, 0x54(r31)
lbl_800547E0:
/* 800547E0 00050440  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800547E4 00050444  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800547E8 00050448  7C 08 03 A6 */	mtlr r0
/* 800547EC 0005044C  38 21 00 10 */	addi r1, r1, 0x10
/* 800547F0 00050450  4E 80 00 20 */	blr

.global func_800547F4
func_800547F4:
/* 800547F4 00050454  80 63 00 38 */	lwz r3, 0x38(r3)
/* 800547F8 00050458  4E 80 00 20 */	blr

.global func_800547FC
func_800547FC:
/* 800547FC 0005045C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80054800 00050460  7C 08 02 A6 */	mflr r0
/* 80054804 00050464  90 01 00 14 */	stw r0, 0x14(r1)
/* 80054808 00050468  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005480C 0005046C  93 C1 00 08 */	stw r30, 8(r1)
/* 80054810 00050470  7C 7E 1B 78 */	mr r30, r3
/* 80054814 00050474  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 80054818 00050478  2C 00 00 00 */	cmpwi r0, 0
/* 8005481C 0005047C  41 82 00 08 */	beq lbl_80054824
/* 80054820 00050480  48 00 00 F5 */	bl func_80054914
lbl_80054824:
/* 80054824 00050484  7F C3 F3 78 */	mr r3, r30
/* 80054828 00050488  48 00 0B 01 */	bl func_80055328
/* 8005482C 0005048C  7C 7F 1B 78 */	mr r31, r3
/* 80054830 00050490  7F C3 F3 78 */	mr r3, r30
/* 80054834 00050494  48 00 0A C5 */	bl func_800552F8
/* 80054838 00050498  7F E4 FB 78 */	mr r4, r31
/* 8005483C 0005049C  48 18 6C 81 */	bl func_801DB4BC
/* 80054840 000504A0  2C 03 00 00 */	cmpwi r3, 0
/* 80054844 000504A4  90 7E 00 58 */	stw r3, 0x58(r30)
/* 80054848 000504A8  41 82 00 B4 */	beq lbl_800548FC
/* 8005484C 000504AC  7C 64 1B 78 */	mr r4, r3
/* 80054850 000504B0  48 18 EC 8D */	bl func_801E34DC
/* 80054854 000504B4  48 18 62 D5 */	bl func_801DAB28
/* 80054858 000504B8  2C 03 00 00 */	cmpwi r3, 0
/* 8005485C 000504BC  41 82 00 14 */	beq lbl_80054870
/* 80054860 000504C0  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80054864 000504C4  38 80 00 14 */	li r4, 0x14
/* 80054868 000504C8  48 18 64 2D */	bl func_801DAC94
/* 8005486C 000504CC  48 00 00 08 */	b lbl_80054874
lbl_80054870:
/* 80054870 000504D0  38 60 00 00 */	li r3, 0
lbl_80054874:
/* 80054874 000504D4  2C 03 00 00 */	cmpwi r3, 0
/* 80054878 000504D8  41 82 00 0C */	beq lbl_80054884
/* 8005487C 000504DC  80 9E 00 58 */	lwz r4, 0x58(r30)
/* 80054880 000504E0  48 1A 58 15 */	bl func_801FA094
lbl_80054884:
/* 80054884 000504E4  2C 03 00 00 */	cmpwi r3, 0
/* 80054888 000504E8  90 7E 00 2C */	stw r3, 0x2c(r30)
/* 8005488C 000504EC  41 82 00 70 */	beq lbl_800548FC
/* 80054890 000504F0  80 83 00 04 */	lwz r4, 4(r3)
/* 80054894 000504F4  2C 04 00 00 */	cmpwi r4, 0
/* 80054898 000504F8  40 82 00 0C */	bne lbl_800548A4
/* 8005489C 000504FC  38 60 00 00 */	li r3, 0
/* 800548A0 00050500  48 00 00 20 */	b lbl_800548C0
lbl_800548A4:
/* 800548A4 00050504  80 63 00 00 */	lwz r3, 0(r3)
/* 800548A8 00050508  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 800548AC 0005050C  2C 00 00 00 */	cmpwi r0, 0
/* 800548B0 00050510  40 82 00 0C */	bne lbl_800548BC
/* 800548B4 00050514  38 60 00 00 */	li r3, 0
/* 800548B8 00050518  48 00 00 08 */	b lbl_800548C0
lbl_800548BC:
/* 800548BC 0005051C  80 64 00 00 */	lwz r3, 0(r4)
lbl_800548C0:
/* 800548C0 00050520  2C 03 00 00 */	cmpwi r3, 0
/* 800548C4 00050524  90 7E 00 40 */	stw r3, 0x40(r30)
/* 800548C8 00050528  41 82 00 34 */	beq lbl_800548FC
/* 800548CC 0005052C  48 1A EF 45 */	bl func_80203810
/* 800548D0 00050530  80 7E 00 40 */	lwz r3, 0x40(r30)
/* 800548D4 00050534  48 1A BF 85 */	bl func_80200858
/* 800548D8 00050538  80 7E 00 40 */	lwz r3, 0x40(r30)
/* 800548DC 0005053C  38 80 00 00 */	li r4, 0
/* 800548E0 00050540  C0 22 84 E8 */	lfs f1, lbl_80640AE8-_SDA2_BASE_(r2)
/* 800548E4 00050544  38 A0 00 00 */	li r5, 0
/* 800548E8 00050548  C0 42 84 EC */	lfs f2, lbl_80640AEC-_SDA2_BASE_(r2)
/* 800548EC 0005054C  38 C0 00 00 */	li r6, 0
/* 800548F0 00050550  38 E0 00 00 */	li r7, 0
/* 800548F4 00050554  39 00 00 00 */	li r8, 0
/* 800548F8 00050558  48 1A 04 FD */	bl func_801F4DF4
lbl_800548FC:
/* 800548FC 0005055C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80054900 00050560  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80054904 00050564  83 C1 00 08 */	lwz r30, 8(r1)
/* 80054908 00050568  7C 08 03 A6 */	mtlr r0
/* 8005490C 0005056C  38 21 00 10 */	addi r1, r1, 0x10
/* 80054910 00050570  4E 80 00 20 */	blr

.global func_80054914
func_80054914:
/* 80054914 00050574  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80054918 00050578  7C 08 02 A6 */	mflr r0
/* 8005491C 0005057C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80054920 00050580  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80054924 00050584  7C 7F 1B 78 */	mr r31, r3
/* 80054928 00050588  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 8005492C 0005058C  2C 00 00 00 */	cmpwi r0, 0
/* 80054930 00050590  41 82 00 30 */	beq lbl_80054960
/* 80054934 00050594  80 63 00 40 */	lwz r3, 0x40(r3)
/* 80054938 00050598  2C 03 00 00 */	cmpwi r3, 0
/* 8005493C 0005059C  41 82 00 10 */	beq lbl_8005494C
/* 80054940 000505A0  48 1A F0 11 */	bl func_80203950
/* 80054944 000505A4  38 00 00 00 */	li r0, 0
/* 80054948 000505A8  90 1F 00 40 */	stw r0, 0x40(r31)
lbl_8005494C:
/* 8005494C 000505AC  80 7F 00 2C */	lwz r3, 0x2c(r31)
/* 80054950 000505B0  38 80 00 01 */	li r4, 1
/* 80054954 000505B4  48 1A 59 41 */	bl func_801FA294
/* 80054958 000505B8  38 00 00 00 */	li r0, 0
/* 8005495C 000505BC  90 1F 00 2C */	stw r0, 0x2c(r31)
lbl_80054960:
/* 80054960 000505C0  80 7F 00 58 */	lwz r3, 0x58(r31)
/* 80054964 000505C4  2C 03 00 00 */	cmpwi r3, 0
/* 80054968 000505C8  41 82 00 10 */	beq lbl_80054978
/* 8005496C 000505CC  48 18 EE 85 */	bl func_801E37F0
/* 80054970 000505D0  38 00 00 00 */	li r0, 0
/* 80054974 000505D4  90 1F 00 58 */	stw r0, 0x58(r31)
lbl_80054978:
/* 80054978 000505D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005497C 000505DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80054980 000505E0  7C 08 03 A6 */	mtlr r0
/* 80054984 000505E4  38 21 00 10 */	addi r1, r1, 0x10
/* 80054988 000505E8  4E 80 00 20 */	blr

.global func_8005498C
func_8005498C:
/* 8005498C 000505EC  80 63 00 40 */	lwz r3, 0x40(r3)
/* 80054990 000505F0  4E 80 00 20 */	blr

.global func_80054994
func_80054994:
/* 80054994 000505F4  88 03 00 24 */	lbz r0, 0x24(r3)
/* 80054998 000505F8  7C 00 20 40 */	cmplw r0, r4
/* 8005499C 000505FC  4D 82 00 20 */	beqlr
/* 800549A0 00050600  80 A3 00 28 */	lwz r5, 0x28(r3)
/* 800549A4 00050604  2C 05 00 00 */	cmpwi r5, 0
/* 800549A8 00050608  41 82 00 84 */	beq lbl_80054A2C
/* 800549AC 0005060C  80 A5 00 00 */	lwz r5, 0(r5)
/* 800549B0 00050610  39 00 00 00 */	li r8, 0
/* 800549B4 00050614  A0 05 00 18 */	lhz r0, 0x18(r5)
/* 800549B8 00050618  7C 09 03 A6 */	mtctr r0
/* 800549BC 0005061C  28 00 00 00 */	cmplwi r0, 0
/* 800549C0 00050620  40 81 00 6C */	ble lbl_80054A2C
lbl_800549C4:
/* 800549C4 00050624  80 A3 00 28 */	lwz r5, 0x28(r3)
/* 800549C8 00050628  80 E5 00 04 */	lwz r7, 4(r5)
/* 800549CC 0005062C  2C 07 00 00 */	cmpwi r7, 0
/* 800549D0 00050630  40 82 00 0C */	bne lbl_800549DC
/* 800549D4 00050634  38 A0 00 00 */	li r5, 0
/* 800549D8 00050638  48 00 00 28 */	b lbl_80054A00
lbl_800549DC:
/* 800549DC 0005063C  80 A5 00 00 */	lwz r5, 0(r5)
/* 800549E0 00050640  55 06 04 3E */	clrlwi r6, r8, 0x10
/* 800549E4 00050644  A0 05 00 18 */	lhz r0, 0x18(r5)
/* 800549E8 00050648  7C 06 00 40 */	cmplw r6, r0
/* 800549EC 0005064C  41 80 00 0C */	blt lbl_800549F8
/* 800549F0 00050650  38 A0 00 00 */	li r5, 0
/* 800549F4 00050654  48 00 00 0C */	b lbl_80054A00
lbl_800549F8:
/* 800549F8 00050658  55 00 13 BA */	rlwinm r0, r8, 2, 0xe, 0x1d
/* 800549FC 0005065C  7C A7 00 2E */	lwzx r5, r7, r0
lbl_80054A00:
/* 80054A00 00050660  2C 04 00 00 */	cmpwi r4, 0
/* 80054A04 00050664  41 82 00 14 */	beq lbl_80054A18
/* 80054A08 00050668  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80054A0C 0005066C  60 00 00 01 */	ori r0, r0, 1
/* 80054A10 00050670  B0 05 00 DC */	sth r0, 0xdc(r5)
/* 80054A14 00050674  48 00 00 10 */	b lbl_80054A24
lbl_80054A18:
/* 80054A18 00050678  A0 05 00 DC */	lhz r0, 0xdc(r5)
/* 80054A1C 0005067C  54 00 04 3C */	rlwinm r0, r0, 0, 0x10, 0x1e
/* 80054A20 00050680  B0 05 00 DC */	sth r0, 0xdc(r5)
lbl_80054A24:
/* 80054A24 00050684  39 08 00 01 */	addi r8, r8, 1
/* 80054A28 00050688  42 00 FF 9C */	bdnz lbl_800549C4
lbl_80054A2C:
/* 80054A2C 0005068C  98 83 00 24 */	stb r4, 0x24(r3)
/* 80054A30 00050690  4E 80 00 20 */	blr

.global func_80054A34
func_80054A34:
/* 80054A34 00050694  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80054A38 00050698  7C 08 02 A6 */	mflr r0
/* 80054A3C 0005069C  90 01 00 34 */	stw r0, 0x34(r1)
/* 80054A40 000506A0  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80054A44 000506A4  7C 9F 23 78 */	mr r31, r4
/* 80054A48 000506A8  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80054A4C 000506AC  7C 7E 1B 78 */	mr r30, r3
/* 80054A50 000506B0  93 A1 00 24 */	stw r29, 0x24(r1)
/* 80054A54 000506B4  93 81 00 20 */	stw r28, 0x20(r1)
/* 80054A58 000506B8  A0 03 00 70 */	lhz r0, 0x70(r3)
/* 80054A5C 000506BC  54 00 A7 BF */	rlwinm. r0, r0, 0x14, 0x1e, 0x1f
/* 80054A60 000506C0  41 82 00 08 */	beq lbl_80054A68
/* 80054A64 000506C4  48 00 06 01 */	bl func_80055064
lbl_80054A68:
/* 80054A68 000506C8  2C 1F 00 02 */	cmpwi r31, 2
/* 80054A6C 000506CC  41 82 02 5C */	beq lbl_80054CC8
/* 80054A70 000506D0  40 80 00 14 */	bge lbl_80054A84
/* 80054A74 000506D4  2C 1F 00 00 */	cmpwi r31, 0
/* 80054A78 000506D8  41 82 00 18 */	beq lbl_80054A90
/* 80054A7C 000506DC  40 80 02 2C */	bge lbl_80054CA8
/* 80054A80 000506E0  48 00 02 84 */	b lbl_80054D04
lbl_80054A84:
/* 80054A84 000506E4  2C 1F 00 04 */	cmpwi r31, 4
/* 80054A88 000506E8  40 80 02 7C */	bge lbl_80054D04
/* 80054A8C 000506EC  48 00 02 5C */	b lbl_80054CE8
lbl_80054A90:
/* 80054A90 000506F0  7F C3 F3 78 */	mr r3, r30
/* 80054A94 000506F4  48 00 09 61 */	bl func_800553F4
/* 80054A98 000506F8  7F C3 F3 78 */	mr r3, r30
/* 80054A9C 000506FC  48 00 08 F1 */	bl func_8005538C
/* 80054AA0 00050700  7C 7D 1B 78 */	mr r29, r3
/* 80054AA4 00050704  7F C3 F3 78 */	mr r3, r30
/* 80054AA8 00050708  48 00 08 51 */	bl func_800552F8
/* 80054AAC 0005070C  7F A4 EB 78 */	mr r4, r29
/* 80054AB0 00050710  48 18 6A 0D */	bl func_801DB4BC
/* 80054AB4 00050714  90 7E 00 5C */	stw r3, 0x5c(r30)
/* 80054AB8 00050718  48 18 60 71 */	bl func_801DAB28
/* 80054ABC 0005071C  2C 03 00 00 */	cmpwi r3, 0
/* 80054AC0 00050720  41 82 00 18 */	beq lbl_80054AD8
/* 80054AC4 00050724  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80054AC8 00050728  38 80 01 40 */	li r4, 0x140
/* 80054ACC 0005072C  48 18 61 C9 */	bl func_801DAC94
/* 80054AD0 00050730  7C 7C 1B 78 */	mr r28, r3
/* 80054AD4 00050734  48 00 00 08 */	b lbl_80054ADC
lbl_80054AD8:
/* 80054AD8 00050738  3B 80 00 00 */	li r28, 0
lbl_80054ADC:
/* 80054ADC 0005073C  2C 1C 00 00 */	cmpwi r28, 0
/* 80054AE0 00050740  41 82 00 30 */	beq lbl_80054B10
/* 80054AE4 00050744  7F C3 F3 78 */	mr r3, r30
/* 80054AE8 00050748  48 00 08 71 */	bl func_80055358
/* 80054AEC 0005074C  7C 7D 1B 78 */	mr r29, r3
/* 80054AF0 00050750  7F C3 F3 78 */	mr r3, r30
/* 80054AF4 00050754  48 00 08 05 */	bl func_800552F8
/* 80054AF8 00050758  7F A4 EB 78 */	mr r4, r29
/* 80054AFC 0005075C  48 18 69 C1 */	bl func_801DB4BC
/* 80054B00 00050760  7C 64 1B 78 */	mr r4, r3
/* 80054B04 00050764  7F 83 E3 78 */	mr r3, r28
/* 80054B08 00050768  48 1A 4D E5 */	bl func_801F98EC
/* 80054B0C 0005076C  7C 7C 1B 78 */	mr r28, r3
lbl_80054B10:
/* 80054B10 00050770  2C 1C 00 00 */	cmpwi r28, 0
/* 80054B14 00050774  93 9E 00 60 */	stw r28, 0x60(r30)
/* 80054B18 00050778  41 82 01 28 */	beq lbl_80054C40
/* 80054B1C 0005077C  C0 02 84 EC */	lfs f0, lbl_80640AEC-_SDA2_BASE_(r2)
/* 80054B20 00050780  C0 42 85 48 */	lfs f2, lbl_80640B48-_SDA2_BASE_(r2)
/* 80054B24 00050784  D0 1C 00 48 */	stfs f0, 0x48(r28)
/* 80054B28 00050788  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 80054B2C 0005078C  D0 1C 00 4C */	stfs f0, 0x4c(r28)
/* 80054B30 00050790  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80054B34 00050794  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80054B38 00050798  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80054B3C 0005079C  D0 1C 00 50 */	stfs f0, 0x50(r28)
/* 80054B40 000507A0  40 80 00 2C */	bge lbl_80054B6C
/* 80054B44 000507A4  C0 3C 00 48 */	lfs f1, 0x48(r28)
/* 80054B48 000507A8  C0 62 85 4C */	lfs f3, lbl_80640B4C-_SDA2_BASE_(r2)
/* 80054B4C 000507AC  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 80054B50 000507B0  40 81 00 1C */	ble lbl_80054B6C
/* 80054B54 000507B4  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054B58 000507B8  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80054B5C 000507BC  40 80 00 08 */	bge lbl_80054B64
/* 80054B60 000507C0  48 00 00 08 */	b lbl_80054B68
lbl_80054B64:
/* 80054B64 000507C4  FC 60 10 90 */	fmr f3, f2
lbl_80054B68:
/* 80054B68 000507C8  D0 7C 00 48 */	stfs f3, 0x48(r28)
lbl_80054B6C:
/* 80054B6C 000507CC  C0 5C 00 4C */	lfs f2, 0x4c(r28)
/* 80054B70 000507D0  C0 22 85 48 */	lfs f1, lbl_80640B48-_SDA2_BASE_(r2)
/* 80054B74 000507D4  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80054B78 000507D8  40 80 00 28 */	bge lbl_80054BA0
/* 80054B7C 000507DC  C0 62 85 4C */	lfs f3, lbl_80640B4C-_SDA2_BASE_(r2)
/* 80054B80 000507E0  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80054B84 000507E4  40 81 00 1C */	ble lbl_80054BA0
/* 80054B88 000507E8  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054B8C 000507EC  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80054B90 000507F0  40 80 00 08 */	bge lbl_80054B98
/* 80054B94 000507F4  48 00 00 08 */	b lbl_80054B9C
lbl_80054B98:
/* 80054B98 000507F8  FC 60 08 90 */	fmr f3, f1
lbl_80054B9C:
/* 80054B9C 000507FC  D0 7C 00 4C */	stfs f3, 0x4c(r28)
lbl_80054BA0:
/* 80054BA0 00050800  C0 5C 00 50 */	lfs f2, 0x50(r28)
/* 80054BA4 00050804  C0 22 85 48 */	lfs f1, lbl_80640B48-_SDA2_BASE_(r2)
/* 80054BA8 00050808  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 80054BAC 0005080C  40 80 00 28 */	bge lbl_80054BD4
/* 80054BB0 00050810  C0 62 85 4C */	lfs f3, lbl_80640B4C-_SDA2_BASE_(r2)
/* 80054BB4 00050814  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 80054BB8 00050818  40 81 00 1C */	ble lbl_80054BD4
/* 80054BBC 0005081C  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054BC0 00050820  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80054BC4 00050824  40 80 00 08 */	bge lbl_80054BCC
/* 80054BC8 00050828  48 00 00 08 */	b lbl_80054BD0
lbl_80054BCC:
/* 80054BCC 0005082C  FC 60 08 90 */	fmr f3, f1
lbl_80054BD0:
/* 80054BD0 00050830  D0 7C 00 50 */	stfs f3, 0x50(r28)
lbl_80054BD4:
/* 80054BD4 00050834  7F 83 E3 78 */	mr r3, r28
/* 80054BD8 00050838  38 80 00 01 */	li r4, 1
/* 80054BDC 0005083C  48 19 DA DD */	bl func_801F26B8
/* 80054BE0 00050840  80 7E 00 60 */	lwz r3, 0x60(r30)
/* 80054BE4 00050844  80 63 01 38 */	lwz r3, 0x138(r3)
/* 80054BE8 00050848  2C 03 00 00 */	cmpwi r3, 0
/* 80054BEC 0005084C  41 82 00 10 */	beq lbl_80054BFC
/* 80054BF0 00050850  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80054BF4 00050854  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 80054BF8 00050858  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_80054BFC:
/* 80054BFC 0005085C  80 7E 00 60 */	lwz r3, 0x60(r30)
/* 80054C00 00050860  80 63 01 38 */	lwz r3, 0x138(r3)
/* 80054C04 00050864  2C 03 00 00 */	cmpwi r3, 0
/* 80054C08 00050868  41 82 00 10 */	beq lbl_80054C18
/* 80054C0C 0005086C  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 80054C10 00050870  60 00 00 08 */	ori r0, r0, 8
/* 80054C14 00050874  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_80054C18:
/* 80054C18 00050878  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054C1C 0005087C  38 80 00 01 */	li r4, 1
/* 80054C20 00050880  80 7E 00 60 */	lwz r3, 0x60(r30)
/* 80054C24 00050884  D0 01 00 08 */	stfs f0, 8(r1)
/* 80054C28 00050888  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 80054C2C 0005088C  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 80054C30 00050890  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80054C34 00050894  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80054C38 00050898  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 80054C3C 0005089C  48 19 DA 7D */	bl func_801F26B8
lbl_80054C40:
/* 80054C40 000508A0  7F C3 F3 78 */	mr r3, r30
/* 80054C44 000508A4  48 00 07 7D */	bl func_800553C0
/* 80054C48 000508A8  7C 7D 1B 78 */	mr r29, r3
/* 80054C4C 000508AC  7F C3 F3 78 */	mr r3, r30
/* 80054C50 000508B0  48 00 06 A9 */	bl func_800552F8
/* 80054C54 000508B4  7F A4 EB 78 */	mr r4, r29
/* 80054C58 000508B8  48 00 11 41 */	bl func_80055D98
/* 80054C5C 000508BC  3C C0 80 47 */	lis r6, lbl_804753B0@ha
/* 80054C60 000508C0  38 80 00 00 */	li r4, 0
/* 80054C64 000508C4  38 C6 53 B0 */	addi r6, r6, lbl_804753B0@l
/* 80054C68 000508C8  38 A0 00 00 */	li r5, 0
/* 80054C6C 000508CC  90 66 00 18 */	stw r3, 0x18(r6)
/* 80054C70 000508D0  38 C0 00 00 */	li r6, 0
/* 80054C74 000508D4  38 E0 FF FF */	li r7, -1
/* 80054C78 000508D8  39 00 00 00 */	li r8, 0
/* 80054C7C 000508DC  39 20 00 01 */	li r9, 1
/* 80054C80 000508E0  39 40 00 00 */	li r10, 0
/* 80054C84 000508E4  48 1F EF B5 */	bl func_80253C38
/* 80054C88 000508E8  3C C0 80 41 */	lis r6, lbl_8040ACB0@ha
/* 80054C8C 000508EC  38 80 00 09 */	li r4, 9
/* 80054C90 000508F0  38 C6 AC B0 */	addi r6, r6, lbl_8040ACB0@l
/* 80054C94 000508F4  38 A0 00 00 */	li r5, 0
/* 80054C98 000508F8  B0 66 00 0C */	sth r3, 0xc(r6)
/* 80054C9C 000508FC  7C 63 07 34 */	extsh r3, r3
/* 80054CA0 00050900  48 1F F1 51 */	bl func_80253DF0
/* 80054CA4 00050904  48 00 00 60 */	b lbl_80054D04
lbl_80054CA8:
/* 80054CA8 00050908  38 60 00 6F */	li r3, 0x6f
/* 80054CAC 0005090C  48 1F 49 31 */	bl func_802495DC
/* 80054CB0 00050910  3C 80 0B 51 */	lis r4, 0x0B510400@ha
/* 80054CB4 00050914  38 60 00 6F */	li r3, 0x6f
/* 80054CB8 00050918  38 84 04 00 */	addi r4, r4, 0x0B510400@l
/* 80054CBC 0005091C  48 18 68 01 */	bl func_801DB4BC
/* 80054CC0 00050920  90 7E 00 5C */	stw r3, 0x5c(r30)
/* 80054CC4 00050924  48 00 00 40 */	b lbl_80054D04
lbl_80054CC8:
/* 80054CC8 00050928  38 60 00 6F */	li r3, 0x6f
/* 80054CCC 0005092C  48 1F 49 11 */	bl func_802495DC
/* 80054CD0 00050930  3C 80 0B 51 */	lis r4, 0x0B510400@ha
/* 80054CD4 00050934  38 60 00 6F */	li r3, 0x6f
/* 80054CD8 00050938  38 84 04 00 */	addi r4, r4, 0x0B510400@l
/* 80054CDC 0005093C  48 18 67 E1 */	bl func_801DB4BC
/* 80054CE0 00050940  90 7E 00 5C */	stw r3, 0x5c(r30)
/* 80054CE4 00050944  48 00 00 20 */	b lbl_80054D04
lbl_80054CE8:
/* 80054CE8 00050948  38 60 04 06 */	li r3, 0x406
/* 80054CEC 0005094C  48 1F 48 F1 */	bl func_802495DC
/* 80054CF0 00050950  3C 80 23 9E */	lis r4, 0x239E0400@ha
/* 80054CF4 00050954  38 60 04 06 */	li r3, 0x406
/* 80054CF8 00050958  38 84 04 00 */	addi r4, r4, 0x239E0400@l
/* 80054CFC 0005095C  48 18 67 C1 */	bl func_801DB4BC
/* 80054D00 00050960  90 7E 00 5C */	stw r3, 0x5c(r30)
lbl_80054D04:
/* 80054D04 00050964  80 1E 00 5C */	lwz r0, 0x5c(r30)
/* 80054D08 00050968  A0 7E 00 70 */	lhz r3, 0x70(r30)
/* 80054D0C 0005096C  53 E3 74 22 */	rlwimi r3, r31, 0xe, 0x10, 0x11
/* 80054D10 00050970  2C 00 00 00 */	cmpwi r0, 0
/* 80054D14 00050974  B0 7E 00 70 */	sth r3, 0x70(r30)
/* 80054D18 00050978  41 82 01 20 */	beq lbl_80054E38
/* 80054D1C 0005097C  80 7E 00 30 */	lwz r3, 0x30(r30)
/* 80054D20 00050980  2C 03 00 00 */	cmpwi r3, 0
/* 80054D24 00050984  41 82 00 0C */	beq lbl_80054D30
/* 80054D28 00050988  38 80 00 01 */	li r4, 1
/* 80054D2C 0005098C  48 1A 55 69 */	bl func_801FA294
lbl_80054D30:
/* 80054D30 00050990  80 7E 00 5C */	lwz r3, 0x5c(r30)
/* 80054D34 00050994  7C 64 1B 78 */	mr r4, r3
/* 80054D38 00050998  48 18 E7 A5 */	bl func_801E34DC
/* 80054D3C 0005099C  48 18 5D ED */	bl func_801DAB28
/* 80054D40 000509A0  2C 03 00 00 */	cmpwi r3, 0
/* 80054D44 000509A4  41 82 00 14 */	beq lbl_80054D58
/* 80054D48 000509A8  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80054D4C 000509AC  38 80 00 14 */	li r4, 0x14
/* 80054D50 000509B0  48 18 5F 45 */	bl func_801DAC94
/* 80054D54 000509B4  48 00 00 08 */	b lbl_80054D5C
lbl_80054D58:
/* 80054D58 000509B8  38 60 00 00 */	li r3, 0
lbl_80054D5C:
/* 80054D5C 000509BC  2C 03 00 00 */	cmpwi r3, 0
/* 80054D60 000509C0  41 82 00 0C */	beq lbl_80054D6C
/* 80054D64 000509C4  80 9E 00 5C */	lwz r4, 0x5c(r30)
/* 80054D68 000509C8  48 1A 53 2D */	bl func_801FA094
lbl_80054D6C:
/* 80054D6C 000509CC  2C 03 00 00 */	cmpwi r3, 0
/* 80054D70 000509D0  90 7E 00 30 */	stw r3, 0x30(r30)
/* 80054D74 000509D4  41 82 00 C4 */	beq lbl_80054E38
/* 80054D78 000509D8  80 83 00 04 */	lwz r4, 4(r3)
/* 80054D7C 000509DC  2C 04 00 00 */	cmpwi r4, 0
/* 80054D80 000509E0  40 82 00 0C */	bne lbl_80054D8C
/* 80054D84 000509E4  38 60 00 00 */	li r3, 0
/* 80054D88 000509E8  48 00 00 20 */	b lbl_80054DA8
lbl_80054D8C:
/* 80054D8C 000509EC  80 63 00 00 */	lwz r3, 0(r3)
/* 80054D90 000509F0  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80054D94 000509F4  2C 00 00 00 */	cmpwi r0, 0
/* 80054D98 000509F8  40 82 00 0C */	bne lbl_80054DA4
/* 80054D9C 000509FC  38 60 00 00 */	li r3, 0
/* 80054DA0 00050A00  48 00 00 08 */	b lbl_80054DA8
lbl_80054DA4:
/* 80054DA4 00050A04  80 64 00 00 */	lwz r3, 0(r4)
lbl_80054DA8:
/* 80054DA8 00050A08  2C 03 00 00 */	cmpwi r3, 0
/* 80054DAC 00050A0C  90 7E 00 3C */	stw r3, 0x3c(r30)
/* 80054DB0 00050A10  41 82 00 78 */	beq lbl_80054E28
/* 80054DB4 00050A14  48 1A BA A5 */	bl func_80200858
/* 80054DB8 00050A18  A0 1E 00 70 */	lhz r0, 0x70(r30)
/* 80054DBC 00050A1C  54 00 97 BE */	rlwinm r0, r0, 0x12, 0x1e, 0x1f
/* 80054DC0 00050A20  28 00 00 03 */	cmplwi r0, 3
/* 80054DC4 00050A24  40 82 00 64 */	bne lbl_80054E28
/* 80054DC8 00050A28  3C 80 27 52 */	lis r4, 0x27522400@ha
/* 80054DCC 00050A2C  38 60 04 06 */	li r3, 0x406
/* 80054DD0 00050A30  38 84 24 00 */	addi r4, r4, 0x27522400@l
/* 80054DD4 00050A34  48 18 66 E9 */	bl func_801DB4BC
/* 80054DD8 00050A38  48 18 FB 99 */	bl func_801E4970
/* 80054DDC 00050A3C  2C 03 00 00 */	cmpwi r3, 0
/* 80054DE0 00050A40  90 7E 00 68 */	stw r3, 0x68(r30)
/* 80054DE4 00050A44  41 82 00 44 */	beq lbl_80054E28
/* 80054DE8 00050A48  80 9E 00 3C */	lwz r4, 0x3c(r30)
/* 80054DEC 00050A4C  80 A4 00 08 */	lwz r5, 8(r4)
/* 80054DF0 00050A50  2C 05 00 00 */	cmpwi r5, 0
/* 80054DF4 00050A54  40 82 00 0C */	bne lbl_80054E00
/* 80054DF8 00050A58  38 80 00 00 */	li r4, 0
/* 80054DFC 00050A5C  48 00 00 1C */	b lbl_80054E18
lbl_80054E00:
/* 80054E00 00050A60  A0 04 00 DE */	lhz r0, 0xde(r4)
/* 80054E04 00050A64  28 00 00 09 */	cmplwi r0, 9
/* 80054E08 00050A68  41 81 00 0C */	bgt lbl_80054E14
/* 80054E0C 00050A6C  38 80 00 00 */	li r4, 0
/* 80054E10 00050A70  48 00 00 08 */	b lbl_80054E18
lbl_80054E14:
/* 80054E14 00050A74  80 85 00 24 */	lwz r4, 0x24(r5)
lbl_80054E18:
/* 80054E18 00050A78  48 18 FD 49 */	bl func_801E4B60
/* 80054E1C 00050A7C  80 7E 00 68 */	lwz r3, 0x68(r30)
/* 80054E20 00050A80  38 80 00 00 */	li r4, 0
/* 80054E24 00050A84  48 18 FD A9 */	bl func_801E4BCC
lbl_80054E28:
/* 80054E28 00050A88  A0 1E 00 70 */	lhz r0, 0x70(r30)
/* 80054E2C 00050A8C  38 60 00 01 */	li r3, 1
/* 80054E30 00050A90  50 60 64 A6 */	rlwimi r0, r3, 0xc, 0x12, 0x13
/* 80054E34 00050A94  B0 1E 00 70 */	sth r0, 0x70(r30)
lbl_80054E38:
/* 80054E38 00050A98  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80054E3C 00050A9C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80054E40 00050AA0  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80054E44 00050AA4  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 80054E48 00050AA8  83 81 00 20 */	lwz r28, 0x20(r1)
/* 80054E4C 00050AAC  7C 08 03 A6 */	mtlr r0
/* 80054E50 00050AB0  38 21 00 30 */	addi r1, r1, 0x30
/* 80054E54 00050AB4  4E 80 00 20 */	blr

.global func_80054E58
func_80054E58:
/* 80054E58 00050AB8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80054E5C 00050ABC  7C 08 02 A6 */	mflr r0
/* 80054E60 00050AC0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80054E64 00050AC4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80054E68 00050AC8  7C 7F 1B 78 */	mr r31, r3
/* 80054E6C 00050ACC  38 60 00 02 */	li r3, 2
/* 80054E70 00050AD0  48 1E 61 E9 */	bl func_8023B058
/* 80054E74 00050AD4  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 80054E78 00050AD8  54 00 A7 BE */	rlwinm r0, r0, 0x14, 0x1e, 0x1f
/* 80054E7C 00050ADC  28 00 00 01 */	cmplwi r0, 1
/* 80054E80 00050AE0  40 82 01 D0 */	bne lbl_80055050
/* 80054E84 00050AE4  2C 03 00 00 */	cmpwi r3, 0
/* 80054E88 00050AE8  41 82 00 10 */	beq lbl_80054E98
/* 80054E8C 00050AEC  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80054E90 00050AF0  90 1F 00 50 */	stw r0, 0x50(r31)
/* 80054E94 00050AF4  48 00 00 0C */	b lbl_80054EA0
lbl_80054E98:
/* 80054E98 00050AF8  38 00 00 00 */	li r0, 0
/* 80054E9C 00050AFC  90 1F 00 50 */	stw r0, 0x50(r31)
lbl_80054EA0:
/* 80054EA0 00050B00  80 BF 00 3C */	lwz r5, 0x3c(r31)
/* 80054EA4 00050B04  2C 05 00 00 */	cmpwi r5, 0
/* 80054EA8 00050B08  41 82 00 74 */	beq lbl_80054F1C
/* 80054EAC 00050B0C  80 85 00 10 */	lwz r4, 0x10(r5)
/* 80054EB0 00050B10  2C 04 00 00 */	cmpwi r4, 0
/* 80054EB4 00050B14  40 82 00 0C */	bne lbl_80054EC0
/* 80054EB8 00050B18  38 00 00 00 */	li r0, 0
/* 80054EBC 00050B1C  48 00 00 4C */	b lbl_80054F08
lbl_80054EC0:
/* 80054EC0 00050B20  A0 05 00 E0 */	lhz r0, 0xe0(r5)
/* 80054EC4 00050B24  2C 00 00 00 */	cmpwi r0, 0
/* 80054EC8 00050B28  40 82 00 0C */	bne lbl_80054ED4
/* 80054ECC 00050B2C  38 00 00 00 */	li r0, 0
/* 80054ED0 00050B30  48 00 00 38 */	b lbl_80054F08
lbl_80054ED4:
/* 80054ED4 00050B34  80 C5 00 08 */	lwz r6, 8(r5)
/* 80054ED8 00050B38  A0 84 00 00 */	lhz r4, 0(r4)
/* 80054EDC 00050B3C  2C 06 00 00 */	cmpwi r6, 0
/* 80054EE0 00050B40  40 82 00 0C */	bne lbl_80054EEC
/* 80054EE4 00050B44  38 00 00 00 */	li r0, 0
/* 80054EE8 00050B48  48 00 00 20 */	b lbl_80054F08
lbl_80054EEC:
/* 80054EEC 00050B4C  A0 05 00 DE */	lhz r0, 0xde(r5)
/* 80054EF0 00050B50  7C 04 00 40 */	cmplw r4, r0
/* 80054EF4 00050B54  41 80 00 0C */	blt lbl_80054F00
/* 80054EF8 00050B58  38 00 00 00 */	li r0, 0
/* 80054EFC 00050B5C  48 00 00 0C */	b lbl_80054F08
lbl_80054F00:
/* 80054F00 00050B60  54 80 13 BA */	rlwinm r0, r4, 2, 0xe, 0x1d
/* 80054F04 00050B64  7C 06 00 2E */	lwzx r0, r6, r0
lbl_80054F08:
/* 80054F08 00050B68  2C 03 00 00 */	cmpwi r3, 0
/* 80054F0C 00050B6C  41 82 00 10 */	beq lbl_80054F1C
/* 80054F10 00050B70  2C 00 00 00 */	cmpwi r0, 0
/* 80054F14 00050B74  41 82 00 08 */	beq lbl_80054F1C
/* 80054F18 00050B78  90 03 00 0C */	stw r0, 0xc(r3)
lbl_80054F1C:
/* 80054F1C 00050B7C  80 7F 00 30 */	lwz r3, 0x30(r31)
/* 80054F20 00050B80  2C 03 00 00 */	cmpwi r3, 0
/* 80054F24 00050B84  41 82 01 0C */	beq lbl_80055030
/* 80054F28 00050B88  80 8D A1 A8 */	lwz r4, lbl_8063F468-_SDA_BASE_(r13)
/* 80054F2C 00050B8C  80 04 01 24 */	lwz r0, 0x124(r4)
/* 80054F30 00050B90  90 1F 00 34 */	stw r0, 0x34(r31)
/* 80054F34 00050B94  48 1A DA 9D */	bl func_802029D0
/* 80054F38 00050B98  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 80054F3C 00050B9C  54 00 97 BF */	rlwinm. r0, r0, 0x12, 0x1e, 0x1f
/* 80054F40 00050BA0  40 82 00 64 */	bne lbl_80054FA4
/* 80054F44 00050BA4  80 7F 00 60 */	lwz r3, 0x60(r31)
/* 80054F48 00050BA8  2C 03 00 00 */	cmpwi r3, 0
/* 80054F4C 00050BAC  41 82 00 1C */	beq lbl_80054F68
/* 80054F50 00050BB0  80 03 01 04 */	lwz r0, 0x104(r3)
/* 80054F54 00050BB4  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054F58 00050BB8  60 00 00 01 */	ori r0, r0, 1
/* 80054F5C 00050BBC  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80054F60 00050BC0  90 03 01 04 */	stw r0, 0x104(r3)
/* 80054F64 00050BC4  D0 03 01 08 */	stfs f0, 0x108(r3)
lbl_80054F68:
/* 80054F68 00050BC8  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054F6C 00050BCC  38 80 00 00 */	li r4, 0
/* 80054F70 00050BD0  C0 02 85 50 */	lfs f0, lbl_80640B50-_SDA2_BASE_(r2)
/* 80054F74 00050BD4  98 83 04 0D */	stb r4, 0x40d(r3)
/* 80054F78 00050BD8  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054F7C 00050BDC  D0 03 04 50 */	stfs f0, 0x450(r3)
/* 80054F80 00050BE0  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054F84 00050BE4  80 03 04 18 */	lwz r0, 0x418(r3)
/* 80054F88 00050BE8  2C 00 00 00 */	cmpwi r0, 0
/* 80054F8C 00050BEC  41 82 00 10 */	beq lbl_80054F9C
/* 80054F90 00050BF0  38 00 00 01 */	li r0, 1
/* 80054F94 00050BF4  98 03 04 0E */	stb r0, 0x40e(r3)
/* 80054F98 00050BF8  48 00 00 98 */	b lbl_80055030
lbl_80054F9C:
/* 80054F9C 00050BFC  98 83 04 0E */	stb r4, 0x40e(r3)
/* 80054FA0 00050C00  48 00 00 90 */	b lbl_80055030
lbl_80054FA4:
/* 80054FA4 00050C04  28 00 00 03 */	cmplwi r0, 3
/* 80054FA8 00050C08  40 82 00 88 */	bne lbl_80055030
/* 80054FAC 00050C0C  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054FB0 00050C10  38 A0 00 01 */	li r5, 1
/* 80054FB4 00050C14  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 80054FB8 00050C18  38 00 00 32 */	li r0, 0x32
/* 80054FBC 00050C1C  98 A3 04 0D */	stb r5, 0x40d(r3)
/* 80054FC0 00050C20  38 80 00 00 */	li r4, 0
/* 80054FC4 00050C24  C0 42 85 54 */	lfs f2, lbl_80640B54-_SDA2_BASE_(r2)
/* 80054FC8 00050C28  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054FCC 00050C2C  C0 22 85 58 */	lfs f1, lbl_80640B58-_SDA2_BASE_(r2)
/* 80054FD0 00050C30  98 03 04 31 */	stb r0, 0x431(r3)
/* 80054FD4 00050C34  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054FD8 00050C38  D0 01 00 08 */	stfs f0, 8(r1)
/* 80054FDC 00050C3C  D0 43 04 2C */	stfs f2, 0x42c(r3)
/* 80054FE0 00050C40  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054FE4 00050C44  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80054FE8 00050C48  98 A3 04 30 */	stb r5, 0x430(r3)
/* 80054FEC 00050C4C  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054FF0 00050C50  90 83 04 34 */	stw r4, 0x434(r3)
/* 80054FF4 00050C54  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80054FF8 00050C58  D0 23 04 50 */	stfs f1, 0x450(r3)
/* 80054FFC 00050C5C  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80055000 00050C60  D0 03 04 24 */	stfs f0, 0x424(r3)
/* 80055004 00050C64  D0 03 04 28 */	stfs f0, 0x428(r3)
/* 80055008 00050C68  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 8005500C 00050C6C  80 03 04 18 */	lwz r0, 0x418(r3)
/* 80055010 00050C70  2C 00 00 00 */	cmpwi r0, 0
/* 80055014 00050C74  41 82 00 0C */	beq lbl_80055020
/* 80055018 00050C78  98 A3 04 0E */	stb r5, 0x40e(r3)
/* 8005501C 00050C7C  48 00 00 08 */	b lbl_80055024
lbl_80055020:
/* 80055020 00050C80  98 83 04 0E */	stb r4, 0x40e(r3)
lbl_80055024:
/* 80055024 00050C84  80 7F 00 68 */	lwz r3, 0x68(r31)
/* 80055028 00050C88  38 80 00 01 */	li r4, 1
/* 8005502C 00050C8C  48 18 FB A1 */	bl func_801E4BCC
lbl_80055030:
/* 80055030 00050C90  80 7F 00 3C */	lwz r3, 0x3c(r31)
/* 80055034 00050C94  2C 03 00 00 */	cmpwi r3, 0
/* 80055038 00050C98  41 82 00 08 */	beq lbl_80055040
/* 8005503C 00050C9C  48 1A B5 59 */	bl func_80200594
lbl_80055040:
/* 80055040 00050CA0  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 80055044 00050CA4  38 60 00 02 */	li r3, 2
/* 80055048 00050CA8  50 60 64 A6 */	rlwimi r0, r3, 0xc, 0x12, 0x13
/* 8005504C 00050CAC  B0 1F 00 70 */	sth r0, 0x70(r31)
lbl_80055050:
/* 80055050 00050CB0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80055054 00050CB4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80055058 00050CB8  7C 08 03 A6 */	mtlr r0
/* 8005505C 00050CBC  38 21 00 20 */	addi r1, r1, 0x20
/* 80055060 00050CC0  4E 80 00 20 */	blr

.global func_80055064
func_80055064:
/* 80055064 00050CC4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80055068 00050CC8  7C 08 02 A6 */	mflr r0
/* 8005506C 00050CCC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055070 00050CD0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80055074 00050CD4  7C 7F 1B 78 */	mr r31, r3
/* 80055078 00050CD8  38 60 00 02 */	li r3, 2
/* 8005507C 00050CDC  93 C1 00 08 */	stw r30, 8(r1)
/* 80055080 00050CE0  48 1E 5F D9 */	bl func_8023B058
/* 80055084 00050CE4  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 80055088 00050CE8  7C 7E 1B 78 */	mr r30, r3
/* 8005508C 00050CEC  2C 00 00 00 */	cmpwi r0, 0
/* 80055090 00050CF0  41 82 00 14 */	beq lbl_800550A4
/* 80055094 00050CF4  7C 03 03 78 */	mr r3, r0
/* 80055098 00050CF8  48 1A D9 39 */	bl func_802029D0
/* 8005509C 00050CFC  38 00 00 00 */	li r0, 0
/* 800550A0 00050D00  90 1F 00 34 */	stw r0, 0x34(r31)
lbl_800550A4:
/* 800550A4 00050D04  80 1F 00 50 */	lwz r0, 0x50(r31)
/* 800550A8 00050D08  2C 00 00 00 */	cmpwi r0, 0
/* 800550AC 00050D0C  41 82 00 10 */	beq lbl_800550BC
/* 800550B0 00050D10  90 1E 00 0C */	stw r0, 0xc(r30)
/* 800550B4 00050D14  38 00 00 00 */	li r0, 0
/* 800550B8 00050D18  90 1F 00 50 */	stw r0, 0x50(r31)
lbl_800550BC:
/* 800550BC 00050D1C  80 1F 00 30 */	lwz r0, 0x30(r31)
/* 800550C0 00050D20  2C 00 00 00 */	cmpwi r0, 0
/* 800550C4 00050D24  41 82 00 74 */	beq lbl_80055138
/* 800550C8 00050D28  80 7F 00 3C */	lwz r3, 0x3c(r31)
/* 800550CC 00050D2C  2C 03 00 00 */	cmpwi r3, 0
/* 800550D0 00050D30  41 82 00 28 */	beq lbl_800550F8
/* 800550D4 00050D34  48 1A B7 85 */	bl func_80200858
/* 800550D8 00050D38  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 800550DC 00050D3C  54 00 97 BE */	rlwinm r0, r0, 0x12, 0x1e, 0x1f
/* 800550E0 00050D40  28 00 00 03 */	cmplwi r0, 3
/* 800550E4 00050D44  40 82 00 14 */	bne lbl_800550F8
/* 800550E8 00050D48  80 7F 00 68 */	lwz r3, 0x68(r31)
/* 800550EC 00050D4C  48 18 F9 99 */	bl func_801E4A84
/* 800550F0 00050D50  38 00 00 00 */	li r0, 0
/* 800550F4 00050D54  90 1F 00 68 */	stw r0, 0x68(r31)
lbl_800550F8:
/* 800550F8 00050D58  80 7F 00 30 */	lwz r3, 0x30(r31)
/* 800550FC 00050D5C  38 80 00 01 */	li r4, 1
/* 80055100 00050D60  48 1A 51 95 */	bl func_801FA294
/* 80055104 00050D64  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 80055108 00050D68  38 60 00 00 */	li r3, 0
/* 8005510C 00050D6C  90 7F 00 30 */	stw r3, 0x30(r31)
/* 80055110 00050D70  54 00 97 BE */	rlwinm r0, r0, 0x12, 0x1e, 0x1f
/* 80055114 00050D74  28 00 00 03 */	cmplwi r0, 3
/* 80055118 00050D78  41 82 00 0C */	beq lbl_80055124
/* 8005511C 00050D7C  2C 00 00 00 */	cmpwi r0, 0
/* 80055120 00050D80  40 82 00 18 */	bne lbl_80055138
lbl_80055124:
/* 80055124 00050D84  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80055128 00050D88  38 00 00 00 */	li r0, 0
/* 8005512C 00050D8C  98 03 04 0D */	stb r0, 0x40d(r3)
/* 80055130 00050D90  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80055134 00050D94  98 03 04 0E */	stb r0, 0x40e(r3)
lbl_80055138:
/* 80055138 00050D98  80 7F 00 5C */	lwz r3, 0x5c(r31)
/* 8005513C 00050D9C  2C 03 00 00 */	cmpwi r3, 0
/* 80055140 00050DA0  41 82 00 10 */	beq lbl_80055150
/* 80055144 00050DA4  48 18 E6 AD */	bl func_801E37F0
/* 80055148 00050DA8  38 00 00 00 */	li r0, 0
/* 8005514C 00050DAC  90 1F 00 5C */	stw r0, 0x5c(r31)
lbl_80055150:
/* 80055150 00050DB0  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 80055154 00050DB4  54 00 97 BE */	rlwinm r0, r0, 0x12, 0x1e, 0x1f
/* 80055158 00050DB8  2C 00 00 02 */	cmpwi r0, 2
/* 8005515C 00050DBC  41 82 00 D4 */	beq lbl_80055230
/* 80055160 00050DC0  40 80 00 14 */	bge lbl_80055174
/* 80055164 00050DC4  2C 00 00 00 */	cmpwi r0, 0
/* 80055168 00050DC8  41 82 00 18 */	beq lbl_80055180
/* 8005516C 00050DCC  40 80 00 B0 */	bge lbl_8005521C
/* 80055170 00050DD0  48 00 00 E4 */	b lbl_80055254
lbl_80055174:
/* 80055174 00050DD4  2C 00 00 04 */	cmpwi r0, 4
/* 80055178 00050DD8  40 80 00 DC */	bge lbl_80055254
/* 8005517C 00050DDC  48 00 00 C8 */	b lbl_80055244
lbl_80055180:
/* 80055180 00050DE0  80 7F 00 60 */	lwz r3, 0x60(r31)
/* 80055184 00050DE4  2C 03 00 00 */	cmpwi r3, 0
/* 80055188 00050DE8  41 82 00 24 */	beq lbl_800551AC
/* 8005518C 00050DEC  41 82 00 18 */	beq lbl_800551A4
/* 80055190 00050DF0  81 83 01 00 */	lwz r12, 0x100(r3)
/* 80055194 00050DF4  38 80 00 01 */	li r4, 1
/* 80055198 00050DF8  81 8C 00 08 */	lwz r12, 8(r12)
/* 8005519C 00050DFC  7D 89 03 A6 */	mtctr r12
/* 800551A0 00050E00  4E 80 04 21 */	bctrl
lbl_800551A4:
/* 800551A4 00050E04  38 00 00 00 */	li r0, 0
/* 800551A8 00050E08  90 1F 00 60 */	stw r0, 0x60(r31)
lbl_800551AC:
/* 800551AC 00050E0C  3F C0 80 41 */	lis r30, lbl_8040ACB0@ha
/* 800551B0 00050E10  38 80 00 02 */	li r4, 2
/* 800551B4 00050E14  3B DE AC B0 */	addi r30, r30, lbl_8040ACB0@l
/* 800551B8 00050E18  38 A0 00 00 */	li r5, 0
/* 800551BC 00050E1C  A8 7E 00 0C */	lha r3, 0xc(r30)
/* 800551C0 00050E20  48 1F EB F1 */	bl func_80253DB0
/* 800551C4 00050E24  A8 1E 00 0C */	lha r0, 0xc(r30)
/* 800551C8 00050E28  2C 00 FF FF */	cmpwi r0, -1
/* 800551CC 00050E2C  41 82 00 0C */	beq lbl_800551D8
/* 800551D0 00050E30  54 03 04 3E */	clrlwi r3, r0, 0x10
/* 800551D4 00050E34  48 1F EA F9 */	bl func_80253CCC
lbl_800551D8:
/* 800551D8 00050E38  3C 60 80 47 */	lis r3, lbl_804753B0@ha
/* 800551DC 00050E3C  38 63 53 B0 */	addi r3, r3, lbl_804753B0@l
/* 800551E0 00050E40  80 63 00 18 */	lwz r3, 0x18(r3)
/* 800551E4 00050E44  2C 03 00 00 */	cmpwi r3, 0
/* 800551E8 00050E48  41 82 00 08 */	beq lbl_800551F0
/* 800551EC 00050E4C  48 00 0C 45 */	bl func_80055E30
lbl_800551F0:
/* 800551F0 00050E50  3C 60 80 41 */	lis r3, lbl_8040ACB0@ha
/* 800551F4 00050E54  3C 80 80 47 */	lis r4, lbl_804753B0@ha
/* 800551F8 00050E58  38 63 AC B0 */	addi r3, r3, lbl_8040ACB0@l
/* 800551FC 00050E5C  38 A0 FF FF */	li r5, -1
/* 80055200 00050E60  B0 A3 00 0C */	sth r5, 0xc(r3)
/* 80055204 00050E64  38 84 53 B0 */	addi r4, r4, lbl_804753B0@l
/* 80055208 00050E68  38 00 00 00 */	li r0, 0
/* 8005520C 00050E6C  7F E3 FB 78 */	mr r3, r31
/* 80055210 00050E70  90 04 00 18 */	stw r0, 0x18(r4)
/* 80055214 00050E74  48 00 02 15 */	bl func_80055428
/* 80055218 00050E78  48 00 00 3C */	b lbl_80055254
lbl_8005521C:
/* 8005521C 00050E7C  38 60 00 6F */	li r3, 0x6f
/* 80055220 00050E80  48 1F 46 71 */	bl func_80249890
/* 80055224 00050E84  38 60 00 6F */	li r3, 0x6f
/* 80055228 00050E88  48 18 64 4D */	bl func_801DB674
/* 8005522C 00050E8C  48 00 00 28 */	b lbl_80055254
lbl_80055230:
/* 80055230 00050E90  38 60 00 6F */	li r3, 0x6f
/* 80055234 00050E94  48 1F 46 5D */	bl func_80249890
/* 80055238 00050E98  38 60 00 6F */	li r3, 0x6f
/* 8005523C 00050E9C  48 18 64 39 */	bl func_801DB674
/* 80055240 00050EA0  48 00 00 14 */	b lbl_80055254
lbl_80055244:
/* 80055244 00050EA4  38 60 04 06 */	li r3, 0x406
/* 80055248 00050EA8  48 1F 46 49 */	bl func_80249890
/* 8005524C 00050EAC  38 60 04 06 */	li r3, 0x406
/* 80055250 00050EB0  48 18 64 25 */	bl func_801DB674
lbl_80055254:
/* 80055254 00050EB4  A0 1F 00 70 */	lhz r0, 0x70(r31)
/* 80055258 00050EB8  54 00 05 22 */	rlwinm r0, r0, 0, 0x14, 0x11
/* 8005525C 00050EBC  B0 1F 00 70 */	sth r0, 0x70(r31)
/* 80055260 00050EC0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80055264 00050EC4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80055268 00050EC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005526C 00050ECC  7C 08 03 A6 */	mtlr r0
/* 80055270 00050ED0  38 21 00 10 */	addi r1, r1, 0x10
/* 80055274 00050ED4  4E 80 00 20 */	blr

.global func_80055278
func_80055278:
/* 80055278 00050ED8  80 63 00 3C */	lwz r3, 0x3c(r3)
/* 8005527C 00050EDC  4E 80 00 20 */	blr

.global func_80055280
func_80055280:
/* 80055280 00050EE0  A0 03 00 70 */	lhz r0, 0x70(r3)
/* 80055284 00050EE4  38 80 00 00 */	li r4, 0
/* 80055288 00050EE8  90 83 00 28 */	stw r4, 0x28(r3)
/* 8005528C 00050EEC  54 00 05 1E */	rlwinm r0, r0, 0, 0x14, 0xf
/* 80055290 00050EF0  90 83 00 2C */	stw r4, 0x2c(r3)
/* 80055294 00050EF4  90 83 00 30 */	stw r4, 0x30(r3)
/* 80055298 00050EF8  90 83 00 34 */	stw r4, 0x34(r3)
/* 8005529C 00050EFC  90 83 00 38 */	stw r4, 0x38(r3)
/* 800552A0 00050F00  90 83 00 40 */	stw r4, 0x40(r3)
/* 800552A4 00050F04  90 83 00 3C */	stw r4, 0x3c(r3)
/* 800552A8 00050F08  90 83 00 44 */	stw r4, 0x44(r3)
/* 800552AC 00050F0C  90 83 00 48 */	stw r4, 0x48(r3)
/* 800552B0 00050F10  90 83 00 4C */	stw r4, 0x4c(r3)
/* 800552B4 00050F14  90 83 00 50 */	stw r4, 0x50(r3)
/* 800552B8 00050F18  90 83 00 54 */	stw r4, 0x54(r3)
/* 800552BC 00050F1C  90 83 00 58 */	stw r4, 0x58(r3)
/* 800552C0 00050F20  90 83 00 5C */	stw r4, 0x5c(r3)
/* 800552C4 00050F24  90 83 00 60 */	stw r4, 0x60(r3)
/* 800552C8 00050F28  90 83 00 64 */	stw r4, 0x64(r3)
/* 800552CC 00050F2C  90 83 00 68 */	stw r4, 0x68(r3)
/* 800552D0 00050F30  B0 03 00 70 */	sth r0, 0x70(r3)
/* 800552D4 00050F34  4E 80 00 20 */	blr

.global func_800552D8
func_800552D8:
/* 800552D8 00050F38  80 63 00 64 */	lwz r3, 0x64(r3)
/* 800552DC 00050F3C  C0 02 84 E8 */	lfs f0, lbl_80640AE8-_SDA2_BASE_(r2)
/* 800552E0 00050F40  80 03 01 04 */	lwz r0, 0x104(r3)
/* 800552E4 00050F44  60 00 00 01 */	ori r0, r0, 1
/* 800552E8 00050F48  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 800552EC 00050F4C  90 03 01 04 */	stw r0, 0x104(r3)
/* 800552F0 00050F50  D0 03 01 08 */	stfs f0, 0x108(r3)
/* 800552F4 00050F54  4E 80 00 20 */	blr

.global func_800552F8
func_800552F8:
/* 800552F8 00050F58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800552FC 00050F5C  7C 08 02 A6 */	mflr r0
/* 80055300 00050F60  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055304 00050F64  48 00 38 A1 */	bl VMBASEIsPageValid
/* 80055308 00050F68  3C 80 80 40 */	lis r4, lbl_803FB7BC@ha
/* 8005530C 00050F6C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80055310 00050F70  38 84 B7 BC */	addi r4, r4, lbl_803FB7BC@l
/* 80055314 00050F74  7C 64 00 2E */	lwzx r3, r4, r0
/* 80055318 00050F78  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005531C 00050F7C  7C 08 03 A6 */	mtlr r0
/* 80055320 00050F80  38 21 00 10 */	addi r1, r1, 0x10
/* 80055324 00050F84  4E 80 00 20 */	blr

.global func_80055328
func_80055328:
/* 80055328 00050F88  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005532C 00050F8C  7C 08 02 A6 */	mflr r0
/* 80055330 00050F90  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055334 00050F94  48 00 38 71 */	bl VMBASEIsPageValid
/* 80055338 00050F98  3C 80 80 40 */	lis r4, lbl_803FB7D0@ha
/* 8005533C 00050F9C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80055340 00050FA0  38 84 B7 D0 */	addi r4, r4, lbl_803FB7D0@l
/* 80055344 00050FA4  7C 64 00 2E */	lwzx r3, r4, r0
/* 80055348 00050FA8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005534C 00050FAC  7C 08 03 A6 */	mtlr r0
/* 80055350 00050FB0  38 21 00 10 */	addi r1, r1, 0x10
/* 80055354 00050FB4  4E 80 00 20 */	blr

.global func_80055358
func_80055358:
/* 80055358 00050FB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005535C 00050FBC  7C 08 02 A6 */	mflr r0
/* 80055360 00050FC0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055364 00050FC4  48 00 38 41 */	bl VMBASEIsPageValid
/* 80055368 00050FC8  3C 80 80 40 */	lis r4, lbl_803FB7D0@ha
/* 8005536C 00050FCC  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80055370 00050FD0  38 84 B7 D0 */	addi r4, r4, lbl_803FB7D0@l
/* 80055374 00050FD4  7C 64 02 14 */	add r3, r4, r0
/* 80055378 00050FD8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005537C 00050FDC  80 63 00 14 */	lwz r3, 0x14(r3)
/* 80055380 00050FE0  7C 08 03 A6 */	mtlr r0
/* 80055384 00050FE4  38 21 00 10 */	addi r1, r1, 0x10
/* 80055388 00050FE8  4E 80 00 20 */	blr

.global func_8005538C
func_8005538C:
/* 8005538C 00050FEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80055390 00050FF0  7C 08 02 A6 */	mflr r0
/* 80055394 00050FF4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055398 00050FF8  48 00 38 0D */	bl VMBASEIsPageValid
/* 8005539C 00050FFC  3C 80 80 40 */	lis r4, lbl_803FB7D0@ha
/* 800553A0 00051000  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800553A4 00051004  38 84 B7 D0 */	addi r4, r4, lbl_803FB7D0@l
/* 800553A8 00051008  7C 64 02 14 */	add r3, r4, r0
/* 800553AC 0005100C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800553B0 00051010  80 63 00 28 */	lwz r3, 0x28(r3)
/* 800553B4 00051014  7C 08 03 A6 */	mtlr r0
/* 800553B8 00051018  38 21 00 10 */	addi r1, r1, 0x10
/* 800553BC 0005101C  4E 80 00 20 */	blr

.global func_800553C0
func_800553C0:
/* 800553C0 00051020  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800553C4 00051024  7C 08 02 A6 */	mflr r0
/* 800553C8 00051028  90 01 00 14 */	stw r0, 0x14(r1)
/* 800553CC 0005102C  48 00 37 D9 */	bl VMBASEIsPageValid
/* 800553D0 00051030  3C 80 80 40 */	lis r4, lbl_803FB7D0@ha
/* 800553D4 00051034  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800553D8 00051038  38 84 B7 D0 */	addi r4, r4, lbl_803FB7D0@l
/* 800553DC 0005103C  7C 64 02 14 */	add r3, r4, r0
/* 800553E0 00051040  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800553E4 00051044  80 63 00 3C */	lwz r3, 0x3c(r3)
/* 800553E8 00051048  7C 08 03 A6 */	mtlr r0
/* 800553EC 0005104C  38 21 00 10 */	addi r1, r1, 0x10
/* 800553F0 00051050  4E 80 00 20 */	blr

.global func_800553F4
func_800553F4:
/* 800553F4 00051054  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800553F8 00051058  7C 08 02 A6 */	mflr r0
/* 800553FC 0005105C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055400 00051060  48 00 37 A5 */	bl VMBASEIsPageValid
/* 80055404 00051064  3C 80 80 40 */	lis r4, lbl_803FB7BC@ha
/* 80055408 00051068  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005540C 0005106C  38 84 B7 BC */	addi r4, r4, lbl_803FB7BC@l
/* 80055410 00051070  7C 64 00 2E */	lwzx r3, r4, r0
/* 80055414 00051074  48 1F 41 C9 */	bl func_802495DC
/* 80055418 00051078  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005541C 0005107C  7C 08 03 A6 */	mtlr r0
/* 80055420 00051080  38 21 00 10 */	addi r1, r1, 0x10
/* 80055424 00051084  4E 80 00 20 */	blr

.global func_80055428
func_80055428:
/* 80055428 00051088  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005542C 0005108C  7C 08 02 A6 */	mflr r0
/* 80055430 00051090  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055434 00051094  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80055438 00051098  48 00 37 6D */	bl VMBASEIsPageValid
/* 8005543C 0005109C  3F E0 80 40 */	lis r31, lbl_803FB7BC@ha
/* 80055440 000510A0  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80055444 000510A4  3B FF B7 BC */	addi r31, r31, lbl_803FB7BC@l
/* 80055448 000510A8  7C 7F 00 2E */	lwzx r3, r31, r0
/* 8005544C 000510AC  48 18 62 29 */	bl func_801DB674
/* 80055450 000510B0  48 00 37 55 */	bl VMBASEIsPageValid
/* 80055454 000510B4  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80055458 000510B8  7C 7F 00 2E */	lwzx r3, r31, r0
/* 8005545C 000510BC  48 1F 44 35 */	bl func_80249890
/* 80055460 000510C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80055464 000510C4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80055468 000510C8  7C 08 03 A6 */	mtlr r0
/* 8005546C 000510CC  38 21 00 10 */	addi r1, r1, 0x10
/* 80055470 000510D0  4E 80 00 20 */	blr
/* 80055474 000510D4  38 60 00 00 */	li r3, 0
/* 80055478 000510D8  4E 80 00 20 */	blr

.global func_8005547C
func_8005547C:
/* 8005547C 000510DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80055480 000510E0  7C 08 02 A6 */	mflr r0
/* 80055484 000510E4  38 60 00 01 */	li r3, 1
/* 80055488 000510E8  38 8D 98 60 */	addi r4, r13, lbl_8063EB20-_SDA_BASE_
/* 8005548C 000510EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055490 000510F0  38 A0 00 04 */	li r5, 4
/* 80055494 000510F4  38 00 00 00 */	li r0, 0
/* 80055498 000510F8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005549C 000510FC  3F E0 80 47 */	lis r31, lbl_80475338@ha
/* 800554A0 00051100  3B FF 53 38 */	addi r31, r31, lbl_80475338@l
/* 800554A4 00051104  98 6D 98 60 */	stb r3, lbl_8063EB20-_SDA_BASE_(r13)
/* 800554A8 00051108  38 6D 98 90 */	addi r3, r13, lbl_8063EB50-_SDA_BASE_
/* 800554AC 0005110C  B0 A4 00 02 */	sth r5, 2(r4)
/* 800554B0 00051110  98 04 00 04 */	stb r0, 4(r4)
/* 800554B4 00051114  4B FF CB AD */	bl func_80052060
/* 800554B8 00051118  3C 80 80 05 */	lis r4, lbl_80052070@ha
/* 800554BC 0005111C  38 BF 00 B8 */	addi r5, r31, 0xb8
/* 800554C0 00051120  38 84 20 70 */	addi r4, r4, lbl_80052070@l
/* 800554C4 00051124  38 6D 98 90 */	addi r3, r13, lbl_8063EB50-_SDA_BASE_
/* 800554C8 00051128  48 17 17 81 */	bl __register_global_object_tmp
/* 800554CC 0005112C  38 7F 00 D0 */	addi r3, r31, 0xd0
/* 800554D0 00051130  38 80 07 D0 */	li r4, 0x7d0
/* 800554D4 00051134  38 AD 98 90 */	addi r5, r13, lbl_8063EB50-_SDA_BASE_
/* 800554D8 00051138  48 1D 09 6D */	bl func_80225E44
/* 800554DC 0005113C  3C 80 80 22 */	lis r4, func_80225EE0@ha
/* 800554E0 00051140  38 7F 00 D0 */	addi r3, r31, 0xd0
/* 800554E4 00051144  38 84 5E E0 */	addi r4, r4, func_80225EE0@l
/* 800554E8 00051148  38 BF 00 C4 */	addi r5, r31, 0xc4
/* 800554EC 0005114C  48 17 17 5D */	bl __register_global_object_tmp
/* 800554F0 00051150  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800554F4 00051154  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800554F8 00051158  7C 08 03 A6 */	mtlr r0
/* 800554FC 0005115C  38 21 00 10 */	addi r1, r1, 0x10
/* 80055500 00051160  4E 80 00 20 */	blr

.global func_80055504
func_80055504:
/* 80055504 00051164  38 6D 98 A0 */	addi r3, r13, lbl_8063EB60-_SDA_BASE_
/* 80055508 00051168  48 00 00 54 */	b lbl_8005555C

.global func_8005550C
func_8005550C:
/* 8005550C 0005116C  3C 80 80 41 */	lis r4, lbl_8040AF00@ha
/* 80055510 00051170  38 84 AF 00 */	addi r4, r4, lbl_8040AF00@l
/* 80055514 00051174  90 83 00 00 */	stw r4, 0(r3)
/* 80055518 00051178  4E 80 00 20 */	blr
lbl_8005551C:
/* 8005551C 0005117C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80055520 00051180  7C 08 02 A6 */	mflr r0
/* 80055524 00051184  2C 03 00 00 */	cmpwi r3, 0
/* 80055528 00051188  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005552C 0005118C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80055530 00051190  7C 7F 1B 78 */	mr r31, r3
/* 80055534 00051194  41 82 00 10 */	beq lbl_80055544
/* 80055538 00051198  2C 04 00 00 */	cmpwi r4, 0
/* 8005553C 0005119C  40 81 00 08 */	ble lbl_80055544
/* 80055540 000511A0  48 18 55 79 */	bl func_801DAAB8
lbl_80055544:
/* 80055544 000511A4  7F E3 FB 78 */	mr r3, r31
/* 80055548 000511A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005554C 000511AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80055550 000511B0  7C 08 03 A6 */	mtlr r0
/* 80055554 000511B4  38 21 00 10 */	addi r1, r1, 0x10
/* 80055558 000511B8  4E 80 00 20 */	blr
lbl_8005555C:
/* 8005555C 000511BC  4E 80 00 20 */	blr
/* 80055560 000511C0  38 60 00 01 */	li r3, 1
/* 80055564 000511C4  4B FB 42 A4 */	b func_80009808
/* 80055568 000511C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005556C 000511CC  7C 08 02 A6 */	mflr r0
/* 80055570 000511D0  2C 04 08 FC */	cmpwi r4, 0x8fc
/* 80055574 000511D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055578 000511D8  41 82 01 00 */	beq lbl_80055678
/* 8005557C 000511DC  40 80 00 44 */	bge lbl_800555C0
/* 80055580 000511E0  2C 04 08 35 */	cmpwi r4, 0x835
/* 80055584 000511E4  41 82 01 10 */	beq lbl_80055694
/* 80055588 000511E8  40 80 00 20 */	bge lbl_800555A8
/* 8005558C 000511EC  2C 04 07 D2 */	cmpwi r4, 0x7d2
/* 80055590 000511F0  41 82 00 64 */	beq lbl_800555F4
/* 80055594 000511F4  40 80 00 08 */	bge lbl_8005559C
/* 80055598 000511F8  48 00 00 FC */	b lbl_80055694
lbl_8005559C:
/* 8005559C 000511FC  2C 04 08 34 */	cmpwi r4, 0x834
/* 800555A0 00051200  40 80 00 B0 */	bge lbl_80055650
/* 800555A4 00051204  48 00 00 F0 */	b lbl_80055694
lbl_800555A8:
/* 800555A8 00051208  2C 04 08 99 */	cmpwi r4, 0x899
/* 800555AC 0005120C  41 82 00 B8 */	beq lbl_80055664
/* 800555B0 00051210  40 80 00 E4 */	bge lbl_80055694
/* 800555B4 00051214  2C 04 08 98 */	cmpwi r4, 0x898
/* 800555B8 00051218  40 80 00 A0 */	bge lbl_80055658
/* 800555BC 0005121C  48 00 00 D8 */	b lbl_80055694
lbl_800555C0:
/* 800555C0 00051220  2C 04 0A F1 */	cmpwi r4, 0xaf1
/* 800555C4 00051224  41 82 00 BC */	beq lbl_80055680
/* 800555C8 00051228  40 80 00 14 */	bge lbl_800555DC
/* 800555CC 0005122C  2C 04 09 60 */	cmpwi r4, 0x960
/* 800555D0 00051230  41 82 00 C4 */	beq lbl_80055694
/* 800555D4 00051234  41 80 00 C0 */	blt lbl_80055694
/* 800555D8 00051238  48 00 00 BC */	b lbl_80055694
lbl_800555DC:
/* 800555DC 0005123C  2C 04 0B 54 */	cmpwi r4, 0xb54
/* 800555E0 00051240  41 82 00 B0 */	beq lbl_80055690
/* 800555E4 00051244  40 80 00 B0 */	bge lbl_80055694
/* 800555E8 00051248  2C 04 0A F3 */	cmpwi r4, 0xaf3
/* 800555EC 0005124C  40 80 00 A8 */	bge lbl_80055694
/* 800555F0 00051250  48 00 00 98 */	b lbl_80055688
lbl_800555F4:
/* 800555F4 00051254  48 1C E2 3D */	bl func_80223830
/* 800555F8 00051258  3C 80 00 03 */	lis r4, 0x000343FD@ha
/* 800555FC 0005125C  80 C3 00 00 */	lwz r6, 0(r3)
/* 80055600 00051260  38 04 43 FD */	addi r0, r4, 0x000343FD@l
/* 80055604 00051264  3C A0 88 89 */	lis r5, 0x88888889@ha
/* 80055608 00051268  7C C6 01 D6 */	mullw r6, r6, r0
/* 8005560C 0005126C  38 80 00 00 */	li r4, 0
/* 80055610 00051270  38 05 88 89 */	addi r0, r5, 0x88888889@l
/* 80055614 00051274  38 A0 00 00 */	li r5, 0
/* 80055618 00051278  3C C6 00 27 */	addis r6, r6, 0x27
/* 8005561C 0005127C  38 E6 9E C3 */	addi r7, r6, -24893
/* 80055620 00051280  54 E6 84 3E */	srwi r6, r7, 0x10
/* 80055624 00051284  90 E3 00 00 */	stw r7, 0(r3)
/* 80055628 00051288  7C 00 30 96 */	mulhw r0, r0, r6
/* 8005562C 0005128C  7C 00 32 14 */	add r0, r0, r6
/* 80055630 00051290  7C 00 1E 70 */	srawi r0, r0, 3
/* 80055634 00051294  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80055638 00051298  7C 00 1A 14 */	add r0, r0, r3
/* 8005563C 0005129C  1C 00 00 0F */	mulli r0, r0, 0xf
/* 80055640 000512A0  7C 60 30 50 */	subf r3, r0, r6
/* 80055644 000512A4  38 63 00 01 */	addi r3, r3, 1
/* 80055648 000512A8  48 05 4E C1 */	bl func_800AA508
/* 8005564C 000512AC  48 00 00 48 */	b lbl_80055694
lbl_80055650:
/* 80055650 000512B0  48 0A ED 91 */	bl func_801043E0
/* 80055654 000512B4  48 00 00 40 */	b lbl_80055694
lbl_80055658:
/* 80055658 000512B8  48 02 B5 01 */	bl func_80080B58
/* 8005565C 000512BC  48 02 BC 0D */	bl func_80081268
/* 80055660 000512C0  48 00 00 34 */	b lbl_80055694
lbl_80055664:
/* 80055664 000512C4  48 04 A0 9D */	bl func_8009F700
/* 80055668 000512C8  38 60 00 00 */	li r3, 0
/* 8005566C 000512CC  38 80 00 00 */	li r4, 0
/* 80055670 000512D0  48 04 A6 E5 */	bl func_8009FD54
/* 80055674 000512D4  48 00 00 20 */	b lbl_80055694
lbl_80055678:
/* 80055678 000512D8  48 06 49 B1 */	bl func_800BA028
/* 8005567C 000512DC  48 00 00 18 */	b lbl_80055694
lbl_80055680:
/* 80055680 000512E0  48 0C 8B D9 */	bl func_8011E258
/* 80055684 000512E4  48 00 00 10 */	b lbl_80055694
lbl_80055688:
/* 80055688 000512E8  48 0E 9C 95 */	bl func_8013F31C
/* 8005568C 000512EC  48 00 00 08 */	b lbl_80055694
lbl_80055690:
/* 80055690 000512F0  48 05 49 A9 */	bl func_800AA038
lbl_80055694:
/* 80055694 000512F4  38 60 00 00 */	li r3, 0
/* 80055698 000512F8  4B FB 41 71 */	bl func_80009808
/* 8005569C 000512FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800556A0 00051300  7C 08 03 A6 */	mtlr r0
/* 800556A4 00051304  38 21 00 10 */	addi r1, r1, 0x10
/* 800556A8 00051308  4E 80 00 20 */	blr
/* 800556AC 0005130C  2C 04 08 FC */	cmpwi r4, 0x8fc
/* 800556B0 00051310  41 82 00 7C */	beq lbl_8005572C
/* 800556B4 00051314  40 80 00 3C */	bge lbl_800556F0
/* 800556B8 00051318  2C 04 08 35 */	cmpwi r4, 0x835
/* 800556BC 0005131C  4D 82 00 20 */	beqlr
/* 800556C0 00051320  40 80 00 18 */	bge lbl_800556D8
/* 800556C4 00051324  2C 04 07 D3 */	cmpwi r4, 0x7d3
/* 800556C8 00051328  4D 80 00 20 */	bltlr
/* 800556CC 0005132C  2C 04 08 34 */	cmpwi r4, 0x834
/* 800556D0 00051330  40 80 00 54 */	bge lbl_80055724
/* 800556D4 00051334  4E 80 00 20 */	blr
lbl_800556D8:
/* 800556D8 00051338  2C 04 08 99 */	cmpwi r4, 0x899
/* 800556DC 0005133C  4D 82 00 20 */	beqlr
/* 800556E0 00051340  4C 80 00 20 */	bgelr
/* 800556E4 00051344  2C 04 08 98 */	cmpwi r4, 0x898
/* 800556E8 00051348  40 80 00 40 */	bge lbl_80055728
/* 800556EC 0005134C  4E 80 00 20 */	blr
lbl_800556F0:
/* 800556F0 00051350  2C 04 0A F1 */	cmpwi r4, 0xaf1
/* 800556F4 00051354  41 82 00 3C */	beq lbl_80055730
/* 800556F8 00051358  40 80 00 14 */	bge lbl_8005570C
/* 800556FC 0005135C  2C 04 09 60 */	cmpwi r4, 0x960
/* 80055700 00051360  4D 82 00 20 */	beqlr
/* 80055704 00051364  4D 80 00 20 */	bltlr
/* 80055708 00051368  4E 80 00 20 */	blr
lbl_8005570C:
/* 8005570C 0005136C  2C 04 0B 54 */	cmpwi r4, 0xb54
/* 80055710 00051370  41 82 00 28 */	beq lbl_80055738
/* 80055714 00051374  4C 80 00 20 */	bgelr
/* 80055718 00051378  2C 04 0A F3 */	cmpwi r4, 0xaf3
/* 8005571C 0005137C  4C 80 00 20 */	bgelr
/* 80055720 00051380  48 00 00 14 */	b lbl_80055734
lbl_80055724:
/* 80055724 00051384  48 0A FB 74 */	b func_80105298
lbl_80055728:
/* 80055728 00051388  48 02 BB E0 */	b func_80081308
lbl_8005572C:
/* 8005572C 0005138C  48 06 C9 48 */	b func_800C2074
lbl_80055730:
/* 80055730 00051390  48 0C 9A 98 */	b func_8011F1C8
lbl_80055734:
/* 80055734 00051394  48 0E A9 34 */	b func_80140068
lbl_80055738:
/* 80055738 00051398  48 05 49 4C */	b func_800AA084
/* 8005573C 0005139C  4E 80 00 20 */	blr
/* 80055740 000513A0  2C 04 08 FC */	cmpwi r4, 0x8fc
/* 80055744 000513A4  41 82 00 88 */	beq lbl_800557CC
/* 80055748 000513A8  40 80 00 40 */	bge lbl_80055788
/* 8005574C 000513AC  2C 04 08 35 */	cmpwi r4, 0x835
/* 80055750 000513B0  4D 82 00 20 */	beqlr
/* 80055754 000513B4  40 80 00 1C */	bge lbl_80055770
/* 80055758 000513B8  2C 04 07 D2 */	cmpwi r4, 0x7d2
/* 8005575C 000513BC  41 82 00 60 */	beq lbl_800557BC
/* 80055760 000513C0  4D 80 00 20 */	bltlr
/* 80055764 000513C4  2C 04 08 34 */	cmpwi r4, 0x834
/* 80055768 000513C8  40 80 00 58 */	bge lbl_800557C0
/* 8005576C 000513CC  4E 80 00 20 */	blr
lbl_80055770:
/* 80055770 000513D0  2C 04 08 99 */	cmpwi r4, 0x899
/* 80055774 000513D4  41 82 00 54 */	beq lbl_800557C8
/* 80055778 000513D8  4C 80 00 20 */	bgelr
/* 8005577C 000513DC  2C 04 08 98 */	cmpwi r4, 0x898
/* 80055780 000513E0  40 80 00 44 */	bge lbl_800557C4
/* 80055784 000513E4  4E 80 00 20 */	blr
lbl_80055788:
/* 80055788 000513E8  2C 04 0A F1 */	cmpwi r4, 0xaf1
/* 8005578C 000513EC  41 82 00 44 */	beq lbl_800557D0
/* 80055790 000513F0  40 80 00 14 */	bge lbl_800557A4
/* 80055794 000513F4  2C 04 09 60 */	cmpwi r4, 0x960
/* 80055798 000513F8  4D 82 00 20 */	beqlr
/* 8005579C 000513FC  4D 80 00 20 */	bltlr
/* 800557A0 00051400  4E 80 00 20 */	blr
lbl_800557A4:
/* 800557A4 00051404  2C 04 0B 54 */	cmpwi r4, 0xb54
/* 800557A8 00051408  41 82 00 30 */	beq lbl_800557D8
/* 800557AC 0005140C  4C 80 00 20 */	bgelr
/* 800557B0 00051410  2C 04 0A F3 */	cmpwi r4, 0xaf3
/* 800557B4 00051414  4C 80 00 20 */	bgelr
/* 800557B8 00051418  48 00 00 1C */	b lbl_800557D4
lbl_800557BC:
/* 800557BC 0005141C  48 05 62 30 */	b func_800AB9EC
lbl_800557C0:
/* 800557C0 00051420  48 0A F9 D0 */	b func_80105190
lbl_800557C4:
/* 800557C4 00051424  48 02 B7 48 */	b func_80080F0C
lbl_800557C8:
/* 800557C8 00051428  48 04 A4 D4 */	b func_8009FC9C
lbl_800557CC:
/* 800557CC 0005142C  48 06 4A DC */	b func_800BA2A8
lbl_800557D0:
/* 800557D0 00051430  48 0C 98 80 */	b func_8011F050
lbl_800557D4:
/* 800557D4 00051434  48 0E A7 E4 */	b func_8013FFB8
lbl_800557D8:
/* 800557D8 00051438  48 05 48 A8 */	b func_800AA080
/* 800557DC 0005143C  4E 80 00 20 */	blr
/* 800557E0 00051440  4E 80 00 20 */	blr

.global func_800557E4
func_800557E4:
/* 800557E4 00051444  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800557E8 00051448  7C 08 02 A6 */	mflr r0
/* 800557EC 0005144C  38 60 00 01 */	li r3, 1
/* 800557F0 00051450  38 8D 98 98 */	addi r4, r13, lbl_8063EB58-_SDA_BASE_
/* 800557F4 00051454  90 01 00 14 */	stw r0, 0x14(r1)
/* 800557F8 00051458  38 A0 00 04 */	li r5, 4
/* 800557FC 0005145C  38 00 00 00 */	li r0, 0
/* 80055800 00051460  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80055804 00051464  93 C1 00 08 */	stw r30, 8(r1)
/* 80055808 00051468  3F C0 80 47 */	lis r30, lbl_80475428@ha
/* 8005580C 0005146C  3B DE 54 28 */	addi r30, r30, lbl_80475428@l
/* 80055810 00051470  98 6D 98 98 */	stb r3, lbl_8063EB58-_SDA_BASE_(r13)
/* 80055814 00051474  38 6D 98 A0 */	addi r3, r13, lbl_8063EB60-_SDA_BASE_
/* 80055818 00051478  B0 A4 00 02 */	sth r5, 2(r4)
/* 8005581C 0005147C  98 04 00 04 */	stb r0, 4(r4)
/* 80055820 00051480  4B FF FC ED */	bl func_8005550C
/* 80055824 00051484  3C 80 80 05 */	lis r4, lbl_8005551C@ha
/* 80055828 00051488  38 BE 00 00 */	addi r5, r30, 0
/* 8005582C 0005148C  38 84 55 1C */	addi r4, r4, lbl_8005551C@l
/* 80055830 00051490  38 6D 98 A0 */	addi r3, r13, lbl_8063EB60-_SDA_BASE_
/* 80055834 00051494  48 17 14 15 */	bl __register_global_object_tmp
/* 80055838 00051498  38 7E 00 18 */	addi r3, r30, 0x18
/* 8005583C 0005149C  38 80 07 D1 */	li r4, 0x7d1
/* 80055840 000514A0  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055844 000514A4  48 1D 06 01 */	bl func_80225E44
/* 80055848 000514A8  3F E0 80 22 */	lis r31, func_80225EE0@ha
/* 8005584C 000514AC  38 7E 00 18 */	addi r3, r30, 0x18
/* 80055850 000514B0  38 9F 5E E0 */	addi r4, r31, func_80225EE0@l
/* 80055854 000514B4  38 BE 00 0C */	addi r5, r30, 0xc
/* 80055858 000514B8  48 17 13 F1 */	bl __register_global_object_tmp
/* 8005585C 000514BC  38 7E 00 40 */	addi r3, r30, 0x40
/* 80055860 000514C0  38 80 07 D2 */	li r4, 0x7d2
/* 80055864 000514C4  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055868 000514C8  48 1D 05 DD */	bl func_80225E44
/* 8005586C 000514CC  38 7E 00 40 */	addi r3, r30, 0x40
/* 80055870 000514D0  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055874 000514D4  38 BE 00 34 */	addi r5, r30, 0x34
/* 80055878 000514D8  48 17 13 D1 */	bl __register_global_object_tmp
/* 8005587C 000514DC  38 7E 00 68 */	addi r3, r30, 0x68
/* 80055880 000514E0  38 80 08 34 */	li r4, 0x834
/* 80055884 000514E4  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055888 000514E8  48 1D 05 BD */	bl func_80225E44
/* 8005588C 000514EC  38 7E 00 68 */	addi r3, r30, 0x68
/* 80055890 000514F0  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055894 000514F4  38 BE 00 5C */	addi r5, r30, 0x5c
/* 80055898 000514F8  48 17 13 B1 */	bl __register_global_object_tmp
/* 8005589C 000514FC  38 7E 00 90 */	addi r3, r30, 0x90
/* 800558A0 00051500  38 80 08 98 */	li r4, 0x898
/* 800558A4 00051504  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 800558A8 00051508  48 1D 05 9D */	bl func_80225E44
/* 800558AC 0005150C  38 7E 00 90 */	addi r3, r30, 0x90
/* 800558B0 00051510  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 800558B4 00051514  38 BE 00 84 */	addi r5, r30, 0x84
/* 800558B8 00051518  48 17 13 91 */	bl __register_global_object_tmp
/* 800558BC 0005151C  38 7E 00 B8 */	addi r3, r30, 0xb8
/* 800558C0 00051520  38 80 08 99 */	li r4, 0x899
/* 800558C4 00051524  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 800558C8 00051528  48 1D 05 7D */	bl func_80225E44
/* 800558CC 0005152C  38 7E 00 B8 */	addi r3, r30, 0xb8
/* 800558D0 00051530  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 800558D4 00051534  38 BE 00 AC */	addi r5, r30, 0xac
/* 800558D8 00051538  48 17 13 71 */	bl __register_global_object_tmp
/* 800558DC 0005153C  38 7E 00 E0 */	addi r3, r30, 0xe0
/* 800558E0 00051540  38 80 08 FC */	li r4, 0x8fc
/* 800558E4 00051544  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 800558E8 00051548  48 1D 05 5D */	bl func_80225E44
/* 800558EC 0005154C  38 7E 00 E0 */	addi r3, r30, 0xe0
/* 800558F0 00051550  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 800558F4 00051554  38 BE 00 D4 */	addi r5, r30, 0xd4
/* 800558F8 00051558  48 17 13 51 */	bl __register_global_object_tmp
/* 800558FC 0005155C  38 7E 01 08 */	addi r3, r30, 0x108
/* 80055900 00051560  38 80 09 60 */	li r4, 0x960
/* 80055904 00051564  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055908 00051568  48 1D 05 3D */	bl func_80225E44
/* 8005590C 0005156C  38 7E 01 08 */	addi r3, r30, 0x108
/* 80055910 00051570  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055914 00051574  38 BE 00 FC */	addi r5, r30, 0xfc
/* 80055918 00051578  48 17 13 31 */	bl __register_global_object_tmp
/* 8005591C 0005157C  38 7E 01 30 */	addi r3, r30, 0x130
/* 80055920 00051580  38 80 0A F0 */	li r4, 0xaf0
/* 80055924 00051584  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055928 00051588  48 1D 05 1D */	bl func_80225E44
/* 8005592C 0005158C  38 7E 01 30 */	addi r3, r30, 0x130
/* 80055930 00051590  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055934 00051594  38 BE 01 24 */	addi r5, r30, 0x124
/* 80055938 00051598  48 17 13 11 */	bl __register_global_object_tmp
/* 8005593C 0005159C  38 7E 01 58 */	addi r3, r30, 0x158
/* 80055940 000515A0  38 80 0A F1 */	li r4, 0xaf1
/* 80055944 000515A4  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055948 000515A8  48 1D 04 FD */	bl func_80225E44
/* 8005594C 000515AC  38 7E 01 58 */	addi r3, r30, 0x158
/* 80055950 000515B0  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055954 000515B4  38 BE 01 4C */	addi r5, r30, 0x14c
/* 80055958 000515B8  48 17 12 F1 */	bl __register_global_object_tmp
/* 8005595C 000515BC  38 7E 01 80 */	addi r3, r30, 0x180
/* 80055960 000515C0  38 80 0A F2 */	li r4, 0xaf2
/* 80055964 000515C4  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055968 000515C8  48 1D 04 DD */	bl func_80225E44
/* 8005596C 000515CC  38 7E 01 80 */	addi r3, r30, 0x180
/* 80055970 000515D0  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055974 000515D4  38 BE 01 74 */	addi r5, r30, 0x174
/* 80055978 000515D8  48 17 12 D1 */	bl __register_global_object_tmp
/* 8005597C 000515DC  38 7E 01 A8 */	addi r3, r30, 0x1a8
/* 80055980 000515E0  38 80 0B 54 */	li r4, 0xb54
/* 80055984 000515E4  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 80055988 000515E8  48 1D 04 BD */	bl func_80225E44
/* 8005598C 000515EC  38 7E 01 A8 */	addi r3, r30, 0x1a8
/* 80055990 000515F0  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 80055994 000515F4  38 BE 01 9C */	addi r5, r30, 0x19c
/* 80055998 000515F8  48 17 12 B1 */	bl __register_global_object_tmp
/* 8005599C 000515FC  38 7E 01 D0 */	addi r3, r30, 0x1d0
/* 800559A0 00051600  38 80 08 35 */	li r4, 0x835
/* 800559A4 00051604  38 AD 98 A0 */	addi r5, r13, lbl_8063EB60-_SDA_BASE_
/* 800559A8 00051608  48 1D 04 9D */	bl func_80225E44
/* 800559AC 0005160C  38 7E 01 D0 */	addi r3, r30, 0x1d0
/* 800559B0 00051610  38 9F 5E E0 */	addi r4, r31, 0x5ee0
/* 800559B4 00051614  38 BE 01 C4 */	addi r5, r30, 0x1c4
/* 800559B8 00051618  48 17 12 91 */	bl __register_global_object_tmp
/* 800559BC 0005161C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800559C0 00051620  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800559C4 00051624  83 C1 00 08 */	lwz r30, 8(r1)
/* 800559C8 00051628  7C 08 03 A6 */	mtlr r0
/* 800559CC 0005162C  38 21 00 10 */	addi r1, r1, 0x10
/* 800559D0 00051630  4E 80 00 20 */	blr

.global func_800559D4
func_800559D4:
/* 800559D4 00051634  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800559D8 00051638  7C 08 02 A6 */	mflr r0
/* 800559DC 0005163C  3C A0 80 05 */	lis r5, lbl_8005757C@ha
/* 800559E0 00051640  39 20 00 01 */	li r9, 1
/* 800559E4 00051644  90 01 00 14 */	stw r0, 0x14(r1)
/* 800559E8 00051648  38 00 00 00 */	li r0, 0
/* 800559EC 0005164C  38 A5 75 7C */	addi r5, r5, lbl_8005757C@l
/* 800559F0 00051650  38 C0 00 00 */	li r6, 0
/* 800559F4 00051654  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800559F8 00051658  3F E0 00 0A */	lis r31, 0x0009FC78@ha
/* 800559FC 0005165C  38 9F FC 78 */	addi r4, r31, 0x0009FC78@l
/* 80055A00 00051660  38 E0 20 00 */	li r7, 0x2000
/* 80055A04 00051664  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A08 00051668  39 00 00 08 */	li r8, 8
/* 80055A0C 0005166C  90 0A 00 04 */	stw r0, 4(r10)
/* 80055A10 00051670  90 0A 00 00 */	stw r0, 0(r10)
/* 80055A14 00051674  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A18 00051678  54 63 00 7E */	clrlwi r3, r3, 1
/* 80055A1C 0005167C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A20 00051680  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A24 00051684  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A28 00051688  54 63 00 80 */	rlwinm r3, r3, 0, 2, 0
/* 80055A2C 0005168C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A30 00051690  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A34 00051694  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A38 00051698  54 63 00 C2 */	rlwinm r3, r3, 0, 3, 1
/* 80055A3C 0005169C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A40 000516A0  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A44 000516A4  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A48 000516A8  54 63 01 04 */	rlwinm r3, r3, 0, 4, 2
/* 80055A4C 000516AC  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A50 000516B0  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A54 000516B4  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A58 000516B8  64 63 08 00 */	oris r3, r3, 0x800
/* 80055A5C 000516BC  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A60 000516C0  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A64 000516C4  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A68 000516C8  54 63 01 88 */	rlwinm r3, r3, 0, 6, 4
/* 80055A6C 000516CC  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A70 000516D0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A74 000516D4  90 03 00 20 */	stw r0, 0x20(r3)
/* 80055A78 000516D8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A7C 000516DC  90 03 00 1C */	stw r0, 0x1c(r3)
/* 80055A80 000516E0  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A84 000516E4  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A88 000516E8  54 63 07 76 */	rlwinm r3, r3, 0, 0x1d, 0x1b
/* 80055A8C 000516EC  90 6A 00 08 */	stw r3, 8(r10)
/* 80055A90 000516F0  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055A94 000516F4  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055A98 000516F8  54 63 02 4E */	rlwinm r3, r3, 0, 9, 7
/* 80055A9C 000516FC  90 6A 00 08 */	stw r3, 8(r10)
/* 80055AA0 00051700  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AA4 00051704  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055AA8 00051708  54 63 02 90 */	rlwinm r3, r3, 0, 0xa, 8
/* 80055AAC 0005170C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055AB0 00051710  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AB4 00051714  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055AB8 00051718  54 63 03 14 */	rlwinm r3, r3, 0, 0xc, 0xa
/* 80055ABC 0005171C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055AC0 00051720  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AC4 00051724  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055AC8 00051728  54 63 03 56 */	rlwinm r3, r3, 0, 0xd, 0xb
/* 80055ACC 0005172C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055AD0 00051730  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AD4 00051734  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055AD8 00051738  54 63 05 66 */	rlwinm r3, r3, 0, 0x15, 0x13
/* 80055ADC 0005173C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055AE0 00051740  81 4D 81 E0 */	lwz r10, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AE4 00051744  80 6A 00 08 */	lwz r3, 8(r10)
/* 80055AE8 00051748  54 63 06 B0 */	rlwinm r3, r3, 0, 0x1a, 0x18
/* 80055AEC 0005174C  90 6A 00 08 */	stw r3, 8(r10)
/* 80055AF0 00051750  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AF4 00051754  98 03 10 81 */	stb r0, 0x1081(r3)
/* 80055AF8 00051758  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055AFC 0005175C  90 03 10 7C */	stw r0, 0x107c(r3)
/* 80055B00 00051760  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055B04 00051764  98 03 10 80 */	stb r0, 0x1080(r3)
/* 80055B08 00051768  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055B0C 0005176C  80 03 00 08 */	lwz r0, 8(r3)
/* 80055B10 00051770  60 00 00 08 */	ori r0, r0, 8
/* 80055B14 00051774  90 03 00 08 */	stw r0, 8(r3)
/* 80055B18 00051778  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055B1C 0005177C  80 03 00 08 */	lwz r0, 8(r3)
/* 80055B20 00051780  64 00 00 80 */	oris r0, r0, 0x80
/* 80055B24 00051784  90 03 00 08 */	stw r0, 8(r3)
/* 80055B28 00051788  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80055B2C 0005178C  48 1C E6 E9 */	bl func_80224214
/* 80055B30 00051790  38 60 00 80 */	li r3, 0x80
/* 80055B34 00051794  48 00 6E 75 */	bl func_8005C9A8
/* 80055B38 00051798  38 60 00 60 */	li r3, 0x60
/* 80055B3C 0005179C  48 00 6E 7D */	bl func_8005C9B8
/* 80055B40 000517A0  48 00 4A 49 */	bl func_8005A588
/* 80055B44 000517A4  38 60 00 0E */	li r3, 0xe
/* 80055B48 000517A8  48 1F 3A 95 */	bl func_802495DC
/* 80055B4C 000517AC  4B FF F9 B9 */	bl func_80055504
/* 80055B50 000517B0  3C A0 80 05 */	lis r5, lbl_80055EDC@ha
/* 80055B54 000517B4  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80055B58 000517B8  38 9F FB F1 */	addi r4, r31, -1039
/* 80055B5C 000517BC  38 C0 00 00 */	li r6, 0
/* 80055B60 000517C0  38 A5 5E DC */	addi r5, r5, lbl_80055EDC@l
/* 80055B64 000517C4  38 E0 20 00 */	li r7, 0x2000
/* 80055B68 000517C8  39 00 00 08 */	li r8, 8
/* 80055B6C 000517CC  39 20 00 01 */	li r9, 1
/* 80055B70 000517D0  48 1C E6 A5 */	bl func_80224214
/* 80055B74 000517D4  3C A0 80 05 */	lis r5, lbl_8005606C@ha
/* 80055B78 000517D8  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80055B7C 000517DC  38 9F 2C 2A */	addi r4, r31, 0x2c2a
/* 80055B80 000517E0  38 C0 00 00 */	li r6, 0
/* 80055B84 000517E4  38 A5 60 6C */	addi r5, r5, lbl_8005606C@l
/* 80055B88 000517E8  38 E0 20 00 */	li r7, 0x2000
/* 80055B8C 000517EC  39 00 00 08 */	li r8, 8
/* 80055B90 000517F0  39 20 00 01 */	li r9, 1
/* 80055B94 000517F4  48 1C E6 81 */	bl func_80224214
/* 80055B98 000517F8  3C A0 80 05 */	lis r5, lbl_80056120@ha
/* 80055B9C 000517FC  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80055BA0 00051800  38 9F FB FD */	addi r4, r31, -1027
/* 80055BA4 00051804  38 C0 00 00 */	li r6, 0
/* 80055BA8 00051808  38 A5 61 20 */	addi r5, r5, lbl_80056120@l
/* 80055BAC 0005180C  38 E0 20 00 */	li r7, 0x2000
/* 80055BB0 00051810  39 00 00 08 */	li r8, 8
/* 80055BB4 00051814  39 20 00 01 */	li r9, 1
/* 80055BB8 00051818  48 1C E6 5D */	bl func_80224214
/* 80055BBC 0005181C  48 00 48 95 */	bl func_8005A450
/* 80055BC0 00051820  38 60 00 00 */	li r3, 0
/* 80055BC4 00051824  48 00 02 F1 */	bl func_80055EB4
/* 80055BC8 00051828  48 05 48 A9 */	bl func_800AA470
/* 80055BCC 0005182C  48 0A 2F 39 */	bl func_800F8B04
/* 80055BD0 00051830  48 0A E7 85 */	bl func_80104354
/* 80055BD4 00051834  48 09 3B 6D */	bl func_800E9740
/* 80055BD8 00051838  48 08 E7 49 */	bl func_800E4320
/* 80055BDC 0005183C  48 0C 86 21 */	bl func_8011E1FC
/* 80055BE0 00051840  48 0E 4D 51 */	bl func_8013A930
/* 80055BE4 00051844  48 0D C1 0D */	bl func_80131CF0
/* 80055BE8 00051848  48 10 25 D1 */	bl func_801581B8
/* 80055BEC 0005184C  48 10 CB A5 */	bl func_80162790
/* 80055BF0 00051850  38 60 00 00 */	li r3, 0
/* 80055BF4 00051854  48 10 CC 29 */	bl func_8016281C
/* 80055BF8 00051858  38 60 00 01 */	li r3, 1
/* 80055BFC 0005185C  48 10 CC 21 */	bl func_8016281C
/* 80055C00 00051860  38 60 00 02 */	li r3, 2
/* 80055C04 00051864  48 10 CC 19 */	bl func_8016281C
/* 80055C08 00051868  38 60 00 03 */	li r3, 3
/* 80055C0C 0005186C  48 10 CC 11 */	bl func_8016281C
/* 80055C10 00051870  3C 80 1D 57 */	lis r4, 0x1D571A00@ha
/* 80055C14 00051874  38 60 00 0E */	li r3, 0xe
/* 80055C18 00051878  38 84 1A 00 */	addi r4, r4, 0x1D571A00@l
/* 80055C1C 0005187C  48 00 01 7D */	bl func_80055D98
/* 80055C20 00051880  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055C24 00051884  3C C0 80 05 */	lis r6, lbl_800564CC@ha
/* 80055C28 00051888  38 80 00 00 */	li r4, 0
/* 80055C2C 0005188C  38 E0 FF FF */	li r7, -1
/* 80055C30 00051890  90 65 10 40 */	stw r3, 0x1040(r5)
/* 80055C34 00051894  38 C6 64 CC */	addi r6, r6, lbl_800564CC@l
/* 80055C38 00051898  38 A0 00 00 */	li r5, 0
/* 80055C3C 0005189C  39 00 00 01 */	li r8, 1
/* 80055C40 000518A0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055C44 000518A4  39 20 00 01 */	li r9, 1
/* 80055C48 000518A8  39 40 00 00 */	li r10, 0
/* 80055C4C 000518AC  80 63 10 40 */	lwz r3, 0x1040(r3)
/* 80055C50 000518B0  48 1F DF E9 */	bl func_80253C38
/* 80055C54 000518B4  80 CD 81 E0 */	lwz r6, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055C58 000518B8  38 80 00 01 */	li r4, 1
/* 80055C5C 000518BC  38 A0 00 00 */	li r5, 0
/* 80055C60 000518C0  B0 66 10 44 */	sth r3, 0x1044(r6)
/* 80055C64 000518C4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055C68 000518C8  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80055C6C 000518CC  48 1F E1 45 */	bl func_80253DB0
/* 80055C70 000518D0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055C74 000518D4  38 80 00 09 */	li r4, 9
/* 80055C78 000518D8  38 A0 00 03 */	li r5, 3
/* 80055C7C 000518DC  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80055C80 000518E0  48 1F E1 71 */	bl func_80253DF0
/* 80055C84 000518E4  3C 80 21 88 */	lis r4, 0x21881A00@ha
/* 80055C88 000518E8  38 60 00 0E */	li r3, 0xe
/* 80055C8C 000518EC  38 84 1A 00 */	addi r4, r4, 0x21881A00@l
/* 80055C90 000518F0  48 00 01 09 */	bl func_80055D98
/* 80055C94 000518F4  80 ED 81 E0 */	lwz r7, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055C98 000518F8  3C 80 80 05 */	lis r4, lbl_8005654C@ha
/* 80055C9C 000518FC  3C A0 80 05 */	lis r5, lbl_800565BC@ha
/* 80055CA0 00051900  3C C0 80 05 */	lis r6, lbl_80056630@ha
/* 80055CA4 00051904  90 67 10 48 */	stw r3, 0x1048(r7)
/* 80055CA8 00051908  38 84 65 4C */	addi r4, r4, lbl_8005654C@l
/* 80055CAC 0005190C  38 A5 65 BC */	addi r5, r5, lbl_800565BC@l
/* 80055CB0 00051910  38 C6 66 30 */	addi r6, r6, lbl_80056630@l
/* 80055CB4 00051914  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055CB8 00051918  38 E0 FF FF */	li r7, -1
/* 80055CBC 0005191C  39 00 00 01 */	li r8, 1
/* 80055CC0 00051920  39 20 00 01 */	li r9, 1
/* 80055CC4 00051924  80 63 10 48 */	lwz r3, 0x1048(r3)
/* 80055CC8 00051928  39 40 00 00 */	li r10, 0
/* 80055CCC 0005192C  48 1F DF 6D */	bl func_80253C38
/* 80055CD0 00051930  80 CD 81 E0 */	lwz r6, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055CD4 00051934  38 80 00 00 */	li r4, 0
/* 80055CD8 00051938  38 A0 00 00 */	li r5, 0
/* 80055CDC 0005193C  B0 66 10 4C */	sth r3, 0x104c(r6)
/* 80055CE0 00051940  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055CE4 00051944  A8 63 10 4C */	lha r3, 0x104c(r3)
/* 80055CE8 00051948  48 1F E0 C9 */	bl func_80253DB0
/* 80055CEC 0005194C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055CF0 00051950  38 80 00 09 */	li r4, 9
/* 80055CF4 00051954  38 A0 00 02 */	li r5, 2
/* 80055CF8 00051958  A8 63 10 4C */	lha r3, 0x104c(r3)
/* 80055CFC 0005195C  48 1F E0 F5 */	bl func_80253DF0
/* 80055D00 00051960  3C 80 23 88 */	lis r4, 0x23881A00@ha
/* 80055D04 00051964  38 60 00 0E */	li r3, 0xe
/* 80055D08 00051968  38 84 1A 00 */	addi r4, r4, 0x23881A00@l
/* 80055D0C 0005196C  48 00 00 8D */	bl func_80055D98
/* 80055D10 00051970  80 ED 81 E0 */	lwz r7, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055D14 00051974  3C 80 80 05 */	lis r4, lbl_800568C0@ha
/* 80055D18 00051978  3C A0 80 05 */	lis r5, lbl_8005694C@ha
/* 80055D1C 0005197C  3C C0 80 05 */	lis r6, lbl_80056978@ha
/* 80055D20 00051980  90 67 10 50 */	stw r3, 0x1050(r7)
/* 80055D24 00051984  38 84 68 C0 */	addi r4, r4, lbl_800568C0@l
/* 80055D28 00051988  38 A5 69 4C */	addi r5, r5, lbl_8005694C@l
/* 80055D2C 0005198C  38 C6 69 78 */	addi r6, r6, lbl_80056978@l
/* 80055D30 00051990  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055D34 00051994  38 E0 FF FF */	li r7, -1
/* 80055D38 00051998  39 00 00 01 */	li r8, 1
/* 80055D3C 0005199C  39 20 00 01 */	li r9, 1
/* 80055D40 000519A0  80 63 10 50 */	lwz r3, 0x1050(r3)
/* 80055D44 000519A4  39 40 00 00 */	li r10, 0
/* 80055D48 000519A8  48 1F DE F1 */	bl func_80253C38
/* 80055D4C 000519AC  80 CD 81 E0 */	lwz r6, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055D50 000519B0  38 80 00 00 */	li r4, 0
/* 80055D54 000519B4  38 A0 00 00 */	li r5, 0
/* 80055D58 000519B8  B0 66 10 54 */	sth r3, 0x1054(r6)
/* 80055D5C 000519BC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055D60 000519C0  A8 63 10 54 */	lha r3, 0x1054(r3)
/* 80055D64 000519C4  48 1F E0 4D */	bl func_80253DB0
/* 80055D68 000519C8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055D6C 000519CC  38 80 00 09 */	li r4, 9
/* 80055D70 000519D0  38 A0 00 02 */	li r5, 2
/* 80055D74 000519D4  A8 63 10 54 */	lha r3, 0x1054(r3)
/* 80055D78 000519D8  48 1F E0 79 */	bl func_80253DF0
/* 80055D7C 000519DC  48 10 B3 E9 */	bl func_80161164
/* 80055D80 000519E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80055D84 000519E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80055D88 000519E8  7C 08 03 A6 */	mtlr r0
/* 80055D8C 000519EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80055D90 000519F0  4E 80 00 20 */	blr

.global lbl_80055D94
lbl_80055D94:
/* 80055D94 000519F4  48 00 6C 34 */	b lbl_8005C9C8

.global func_80055D98
func_80055D98:
/* 80055D98 000519F8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80055D9C 000519FC  7C 08 02 A6 */	mflr r0
/* 80055DA0 00051A00  90 01 00 24 */	stw r0, 0x24(r1)
/* 80055DA4 00051A04  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80055DA8 00051A08  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80055DAC 00051A0C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80055DB0 00051A10  7C 9D 23 78 */	mr r29, r4
/* 80055DB4 00051A14  93 81 00 10 */	stw r28, 0x10(r1)
/* 80055DB8 00051A18  7C 7C 1B 78 */	mr r28, r3
/* 80055DBC 00051A1C  48 18 58 29 */	bl func_801DB5E4
/* 80055DC0 00051A20  7C 7F 1B 78 */	mr r31, r3
/* 80055DC4 00051A24  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80055DC8 00051A28  38 1F 00 1F */	addi r0, r31, 0x1f
/* 80055DCC 00051A2C  38 A0 00 20 */	li r5, 0x20
/* 80055DD0 00051A30  54 04 00 34 */	rlwinm r4, r0, 0, 0, 0x1a
/* 80055DD4 00051A34  48 18 4F 39 */	bl func_801DAD0C
/* 80055DD8 00051A38  7C 7E 1B 78 */	mr r30, r3
/* 80055DDC 00051A3C  7F 83 E3 78 */	mr r3, r28
/* 80055DE0 00051A40  7F A4 EB 78 */	mr r4, r29
/* 80055DE4 00051A44  48 18 56 D9 */	bl func_801DB4BC
/* 80055DE8 00051A48  7C 64 1B 78 */	mr r4, r3
/* 80055DEC 00051A4C  7F C3 F3 78 */	mr r3, r30
/* 80055DF0 00051A50  7F E5 FB 78 */	mr r5, r31
/* 80055DF4 00051A54  4B FA E2 0D */	bl memcpy
/* 80055DF8 00051A58  7F C3 F3 78 */	mr r3, r30
/* 80055DFC 00051A5C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80055E00 00051A60  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80055E04 00051A64  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80055E08 00051A68  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80055E0C 00051A6C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80055E10 00051A70  7C 08 03 A6 */	mtlr r0
/* 80055E14 00051A74  38 21 00 20 */	addi r1, r1, 0x20
/* 80055E18 00051A78  4E 80 00 20 */	blr

.global func_80055E1C
func_80055E1C:
/* 80055E1C 00051A7C  7C 64 1B 78 */	mr r4, r3
/* 80055E20 00051A80  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80055E24 00051A84  38 04 00 1F */	addi r0, r4, 0x1f
/* 80055E28 00051A88  54 04 00 34 */	rlwinm r4, r0, 0, 0, 0x1a
/* 80055E2C 00051A8C  48 18 4E 68 */	b func_801DAC94

.global func_80055E30
func_80055E30:
/* 80055E30 00051A90  7C 64 1B 78 */	mr r4, r3
/* 80055E34 00051A94  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80055E38 00051A98  48 18 4F 10 */	b func_801DAD48

.global func_80055E3C
func_80055E3C:
/* 80055E3C 00051A9C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80055E40 00051AA0  7C 08 02 A6 */	mflr r0
/* 80055E44 00051AA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80055E48 00051AA8  48 18 A9 A1 */	bl func_801E07E8
/* 80055E4C 00051AAC  2C 03 00 00 */	cmpwi r3, 0
/* 80055E50 00051AB0  41 82 00 0C */	beq lbl_80055E5C
/* 80055E54 00051AB4  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 80055E58 00051AB8  48 00 00 4C */	b lbl_80055EA4
lbl_80055E5C:
/* 80055E5C 00051ABC  4B FB 12 29 */	bl func_80007084
/* 80055E60 00051AC0  2C 03 00 00 */	cmpwi r3, 0
/* 80055E64 00051AC4  41 82 00 0C */	beq lbl_80055E70
/* 80055E68 00051AC8  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 80055E6C 00051ACC  48 00 00 38 */	b lbl_80055EA4
lbl_80055E70:
/* 80055E70 00051AD0  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80055E74 00051AD4  88 03 00 82 */	lbz r0, 0x82(r3)
/* 80055E78 00051AD8  2C 00 00 00 */	cmpwi r0, 0
/* 80055E7C 00051ADC  41 82 00 0C */	beq lbl_80055E88
/* 80055E80 00051AE0  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 80055E84 00051AE4  48 00 00 20 */	b lbl_80055EA4
lbl_80055E88:
/* 80055E88 00051AE8  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055E8C 00051AEC  80 64 00 00 */	lwz r3, 0(r4)
/* 80055E90 00051AF0  80 84 00 04 */	lwz r4, 4(r4)
/* 80055E94 00051AF4  48 17 17 E5 */	bl func_801C7678
/* 80055E98 00051AF8  C0 42 85 64 */	lfs f2, lbl_80640B64-_SDA2_BASE_(r2)
/* 80055E9C 00051AFC  EC 01 10 24 */	fdivs f0, f1, f2
/* 80055EA0 00051B00  EC 20 10 24 */	fdivs f1, f0, f2
lbl_80055EA4:
/* 80055EA4 00051B04  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80055EA8 00051B08  7C 08 03 A6 */	mtlr r0
/* 80055EAC 00051B0C  38 21 00 10 */	addi r1, r1, 0x10
/* 80055EB0 00051B10  4E 80 00 20 */	blr

.global func_80055EB4
func_80055EB4:
/* 80055EB4 00051B14  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055EB8 00051B18  80 04 00 08 */	lwz r0, 8(r4)
/* 80055EBC 00051B1C  50 60 F8 00 */	rlwimi r0, r3, 0x1f, 0, 0
/* 80055EC0 00051B20  90 04 00 08 */	stw r0, 8(r4)
/* 80055EC4 00051B24  4E 80 00 20 */	blr

.global func_80055EC8
func_80055EC8:
/* 80055EC8 00051B28  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055ECC 00051B2C  80 03 00 08 */	lwz r0, 8(r3)
/* 80055ED0 00051B30  64 00 10 00 */	oris r0, r0, 0x1000
/* 80055ED4 00051B34  90 03 00 08 */	stw r0, 8(r3)
/* 80055ED8 00051B38  4E 80 00 20 */	blr
lbl_80055EDC:
/* 80055EDC 00051B3C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80055EE0 00051B40  7C 08 02 A6 */	mflr r0
/* 80055EE4 00051B44  90 01 00 34 */	stw r0, 0x34(r1)
/* 80055EE8 00051B48  39 61 00 30 */	addi r11, r1, 0x30
/* 80055EEC 00051B4C  48 17 12 3D */	bl _savegpr_27
/* 80055EF0 00051B50  48 21 C8 C9 */	bl OSGetTime
/* 80055EF4 00051B54  7C 7D 1B 78 */	mr r29, r3
/* 80055EF8 00051B58  38 60 00 04 */	li r3, 4
/* 80055EFC 00051B5C  64 63 00 04 */	oris r3, r3, 4
/* 80055F00 00051B60  7C 9C 23 78 */	mr r28, r4
/* 80055F04 00051B64  3B 60 00 00 */	li r27, 0
/* 80055F08 00051B68  7C 72 E3 A6 */	mtspr 0x392, r3
/* 80055F0C 00051B6C  38 60 00 05 */	li r3, 5
/* 80055F10 00051B70  64 63 00 05 */	oris r3, r3, 5
/* 80055F14 00051B74  7C 73 E3 A6 */	mtspr 0x393, r3
/* 80055F18 00051B78  38 60 00 06 */	li r3, 6
/* 80055F1C 00051B7C  64 63 00 06 */	oris r3, r3, 6
/* 80055F20 00051B80  7C 74 E3 A6 */	mtspr 0x394, r3
/* 80055F24 00051B84  38 60 00 07 */	li r3, 7
/* 80055F28 00051B88  64 63 00 07 */	oris r3, r3, 7
/* 80055F2C 00051B8C  7C 75 E3 A6 */	mtspr 0x395, r3
/* 80055F30 00051B90  3C 80 43 1C */	lis r4, 0x431BDE83@ha
/* 80055F34 00051B94  3F E0 80 00 */	lis r31, 0x8000
/* 80055F38 00051B98  3B C4 DE 83 */	addi r30, r4, 0x431BDE83@l
lbl_80055F3C:
/* 80055F3C 00051B9C  48 21 C8 7D */	bl OSGetTime
/* 80055F40 00051BA0  80 1F 00 F8 */	lwz r0, 0xf8(r31)
/* 80055F44 00051BA4  7C FC 20 10 */	subfc r7, r28, r4
/* 80055F48 00051BA8  7C DD 19 10 */	subfe r6, r29, r3
/* 80055F4C 00051BAC  38 A0 00 00 */	li r5, 0
/* 80055F50 00051BB0  54 00 F0 BE */	srwi r0, r0, 2
/* 80055F54 00051BB4  54 E4 18 38 */	slwi r4, r7, 3
/* 80055F58 00051BB8  7C 1E 00 16 */	mulhwu r0, r30, r0
/* 80055F5C 00051BBC  54 C3 18 38 */	slwi r3, r6, 3
/* 80055F60 00051BC0  50 E3 1F 7E */	rlwimi r3, r7, 3, 0x1d, 0x1f
/* 80055F64 00051BC4  54 06 8B FE */	srwi r6, r0, 0xf
/* 80055F68 00051BC8  48 17 12 25 */	bl __div2u
/* 80055F6C 00051BCC  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055F70 00051BD0  90 85 00 04 */	stw r4, 4(r5)
/* 80055F74 00051BD4  90 65 00 00 */	stw r3, 0(r5)
/* 80055F78 00051BD8  48 21 C8 41 */	bl OSGetTime
/* 80055F7C 00051BDC  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055F80 00051BE0  7C 9C 23 78 */	mr r28, r4
/* 80055F84 00051BE4  7C 7D 1B 78 */	mr r29, r3
/* 80055F88 00051BE8  80 05 00 08 */	lwz r0, 8(r5)
/* 80055F8C 00051BEC  54 00 0F FF */	rlwinm. r0, r0, 1, 0x1f, 0x1f
/* 80055F90 00051BF0  41 82 00 08 */	beq lbl_80055F98
/* 80055F94 00051BF4  48 00 02 1D */	bl func_800561B0
lbl_80055F98:
/* 80055F98 00051BF8  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055F9C 00051BFC  80 85 00 08 */	lwz r4, 8(r5)
/* 80055FA0 00051C00  54 80 DF FF */	rlwinm. r0, r4, 0x1b, 0x1f, 0x1f
/* 80055FA4 00051C04  40 82 00 30 */	bne lbl_80055FD4
/* 80055FA8 00051C08  54 80 B7 FF */	rlwinm. r0, r4, 0x16, 0x1f, 0x1f
/* 80055FAC 00051C0C  41 82 00 28 */	beq lbl_80055FD4
/* 80055FB0 00051C10  C0 25 10 88 */	lfs f1, 0x1088(r5)
/* 80055FB4 00051C14  C0 05 10 8C */	lfs f0, 0x108c(r5)
/* 80055FB8 00051C18  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80055FBC 00051C1C  40 80 00 18 */	bge lbl_80055FD4
/* 80055FC0 00051C20  4B FF FE 7D */	bl func_80055E3C
/* 80055FC4 00051C24  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055FC8 00051C28  C0 04 10 88 */	lfs f0, 0x1088(r4)
/* 80055FCC 00051C2C  EC 00 08 2A */	fadds f0, f0, f1
/* 80055FD0 00051C30  D0 04 10 88 */	stfs f0, 0x1088(r4)
lbl_80055FD4:
/* 80055FD4 00051C34  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80055FD8 00051C38  80 85 00 08 */	lwz r4, 8(r5)
/* 80055FDC 00051C3C  54 80 E7 FF */	rlwinm. r0, r4, 0x1c, 0x1f, 0x1f
/* 80055FE0 00051C40  40 82 00 80 */	bne lbl_80056060
/* 80055FE4 00051C44  54 80 C7 FF */	rlwinm. r0, r4, 0x18, 0x1f, 0x1f
/* 80055FE8 00051C48  41 82 00 78 */	beq lbl_80056060
/* 80055FEC 00051C4C  C0 25 10 90 */	lfs f1, 0x1090(r5)
/* 80055FF0 00051C50  C0 05 10 94 */	lfs f0, 0x1094(r5)
/* 80055FF4 00051C54  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80055FF8 00051C58  40 80 00 68 */	bge lbl_80056060
/* 80055FFC 00051C5C  4B FF FE 41 */	bl func_80055E3C
/* 80056000 00051C60  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056004 00051C64  C0 04 10 90 */	lfs f0, 0x1090(r4)
/* 80056008 00051C68  EC 00 08 2A */	fadds f0, f0, f1
/* 8005600C 00051C6C  D0 04 10 90 */	stfs f0, 0x1090(r4)
/* 80056010 00051C70  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056014 00051C74  C0 24 10 94 */	lfs f1, 0x1094(r4)
/* 80056018 00051C78  C0 04 10 90 */	lfs f0, 0x1090(r4)
/* 8005601C 00051C7C  EC 01 00 28 */	fsubs f0, f1, f0
/* 80056020 00051C80  FC 00 00 1E */	fctiwz f0, f0
/* 80056024 00051C84  D8 01 00 08 */	stfd f0, 8(r1)
/* 80056028 00051C88  80 A1 00 0C */	lwz r5, 0xc(r1)
/* 8005602C 00051C8C  54 A4 04 3E */	clrlwi r4, r5, 0x10
/* 80056030 00051C90  28 04 00 05 */	cmplwi r4, 5
/* 80056034 00051C94  41 81 00 2C */	bgt lbl_80056060
/* 80056038 00051C98  57 60 04 3E */	clrlwi r0, r27, 0x10
/* 8005603C 00051C9C  7C 00 20 40 */	cmplw r0, r4
/* 80056040 00051CA0  41 82 00 20 */	beq lbl_80056060
/* 80056044 00051CA4  2C 04 00 00 */	cmpwi r4, 0
/* 80056048 00051CA8  41 82 00 18 */	beq lbl_80056060
/* 8005604C 00051CAC  C0 22 85 68 */	lfs f1, lbl_80640B68-_SDA2_BASE_(r2)
/* 80056050 00051CB0  7C BB 2B 78 */	mr r27, r5
/* 80056054 00051CB4  38 60 02 34 */	li r3, 0x234
/* 80056058 00051CB8  38 80 00 00 */	li r4, 0
/* 8005605C 00051CBC  4B FB 51 15 */	bl func_8000B170
lbl_80056060:
/* 80056060 00051CC0  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80056064 00051CC4  48 1C E5 25 */	bl func_80224588
/* 80056068 00051CC8  4B FF FE D4 */	b lbl_80055F3C
lbl_8005606C:
/* 8005606C 00051CCC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056070 00051CD0  7C 08 02 A6 */	mflr r0
/* 80056074 00051CD4  38 60 00 04 */	li r3, 4
/* 80056078 00051CD8  64 63 00 04 */	oris r3, r3, 4
/* 8005607C 00051CDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056080 00051CE0  7C 72 E3 A6 */	mtspr 0x392, r3
/* 80056084 00051CE4  38 60 00 05 */	li r3, 5
/* 80056088 00051CE8  64 63 00 05 */	oris r3, r3, 5
/* 8005608C 00051CEC  7C 73 E3 A6 */	mtspr 0x393, r3
/* 80056090 00051CF0  38 60 00 06 */	li r3, 6
/* 80056094 00051CF4  64 63 00 06 */	oris r3, r3, 6
/* 80056098 00051CF8  7C 74 E3 A6 */	mtspr 0x394, r3
/* 8005609C 00051CFC  38 60 00 07 */	li r3, 7
/* 800560A0 00051D00  64 63 00 07 */	oris r3, r3, 7
/* 800560A4 00051D04  7C 75 E3 A6 */	mtspr 0x395, r3
lbl_800560A8:
/* 800560A8 00051D08  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800560AC 00051D0C  80 04 00 08 */	lwz r0, 8(r4)
/* 800560B0 00051D10  54 00 17 FF */	rlwinm. r0, r0, 2, 0x1f, 0x1f
/* 800560B4 00051D14  41 82 00 38 */	beq lbl_800560EC
/* 800560B8 00051D18  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 800560BC 00051D1C  80 84 00 10 */	lwz r4, 0x10(r4)
/* 800560C0 00051D20  48 1D 06 41 */	bl func_80226700
/* 800560C4 00051D24  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 800560C8 00051D28  48 1D 09 A1 */	bl func_80226A68
/* 800560CC 00051D2C  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800560D0 00051D30  80 04 00 18 */	lwz r0, 0x18(r4)
/* 800560D4 00051D34  80 84 00 14 */	lwz r4, 0x14(r4)
/* 800560D8 00051D38  90 04 00 00 */	stw r0, 0(r4)
/* 800560DC 00051D3C  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800560E0 00051D40  80 04 00 08 */	lwz r0, 8(r4)
/* 800560E4 00051D44  54 00 00 80 */	rlwinm r0, r0, 0, 2, 0
/* 800560E8 00051D48  90 04 00 08 */	stw r0, 8(r4)
lbl_800560EC:
/* 800560EC 00051D4C  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800560F0 00051D50  80 04 00 08 */	lwz r0, 8(r4)
/* 800560F4 00051D54  54 00 1F FF */	rlwinm. r0, r0, 3, 0x1f, 0x1f
/* 800560F8 00051D58  41 82 00 1C */	beq lbl_80056114
/* 800560FC 00051D5C  80 6D A3 80 */	lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 80056100 00051D60  48 1D 06 3D */	bl func_8022673C
/* 80056104 00051D64  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056108 00051D68  80 04 00 08 */	lwz r0, 8(r4)
/* 8005610C 00051D6C  54 00 00 C2 */	rlwinm r0, r0, 0, 3, 1
/* 80056110 00051D70  90 04 00 08 */	stw r0, 8(r4)
lbl_80056114:
/* 80056114 00051D74  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80056118 00051D78  48 1C E4 71 */	bl func_80224588
/* 8005611C 00051D7C  4B FF FF 8C */	b lbl_800560A8
lbl_80056120:
/* 80056120 00051D80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056124 00051D84  7C 08 02 A6 */	mflr r0
/* 80056128 00051D88  38 60 00 04 */	li r3, 4
/* 8005612C 00051D8C  64 63 00 04 */	oris r3, r3, 4
/* 80056130 00051D90  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056134 00051D94  7C 72 E3 A6 */	mtspr 0x392, r3
/* 80056138 00051D98  38 60 00 05 */	li r3, 5
/* 8005613C 00051D9C  64 63 00 05 */	oris r3, r3, 5
/* 80056140 00051DA0  7C 73 E3 A6 */	mtspr 0x393, r3
/* 80056144 00051DA4  38 60 00 06 */	li r3, 6
/* 80056148 00051DA8  64 63 00 06 */	oris r3, r3, 6
/* 8005614C 00051DAC  7C 74 E3 A6 */	mtspr 0x394, r3
/* 80056150 00051DB0  38 60 00 07 */	li r3, 7
/* 80056154 00051DB4  64 63 00 07 */	oris r3, r3, 7
/* 80056158 00051DB8  7C 75 E3 A6 */	mtspr 0x395, r3
lbl_8005615C:
/* 8005615C 00051DBC  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056160 00051DC0  80 04 00 08 */	lwz r0, 8(r4)
/* 80056164 00051DC4  54 00 27 FF */	rlwinm. r0, r0, 4, 0x1f, 0x1f
/* 80056168 00051DC8  41 82 00 18 */	beq lbl_80056180
/* 8005616C 00051DCC  48 0A BA AD */	bl func_80101C18
/* 80056170 00051DD0  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056174 00051DD4  80 04 00 08 */	lwz r0, 8(r4)
/* 80056178 00051DD8  54 00 01 04 */	rlwinm r0, r0, 0, 4, 2
/* 8005617C 00051DDC  90 04 00 08 */	stw r0, 8(r4)
lbl_80056180:
/* 80056180 00051DE0  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056184 00051DE4  80 04 00 08 */	lwz r0, 8(r4)
/* 80056188 00051DE8  54 00 37 FF */	rlwinm. r0, r0, 6, 0x1f, 0x1f
/* 8005618C 00051DEC  41 82 00 18 */	beq lbl_800561A4
/* 80056190 00051DF0  48 00 15 1D */	bl func_800576AC
/* 80056194 00051DF4  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056198 00051DF8  80 04 00 08 */	lwz r0, 8(r4)
/* 8005619C 00051DFC  54 00 01 88 */	rlwinm r0, r0, 0, 6, 4
/* 800561A0 00051E00  90 04 00 08 */	stw r0, 8(r4)
lbl_800561A4:
/* 800561A4 00051E04  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 800561A8 00051E08  48 1C E3 E1 */	bl func_80224588
/* 800561AC 00051E0C  4B FF FF B0 */	b lbl_8005615C

.global func_800561B0
func_800561B0:
/* 800561B0 00051E10  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800561B4 00051E14  7C 08 02 A6 */	mflr r0
/* 800561B8 00051E18  90 01 00 14 */	stw r0, 0x14(r1)
/* 800561BC 00051E1C  DB E1 00 08 */	stfd f31, 8(r1)
/* 800561C0 00051E20  48 10 95 E1 */	bl func_8015F7A0
/* 800561C4 00051E24  FF E0 08 90 */	fmr f31, f1
/* 800561C8 00051E28  4B FF FC 75 */	bl func_80055E3C
/* 800561CC 00051E2C  FC 3F 08 2A */	fadd f1, f31, f1
/* 800561D0 00051E30  48 10 95 89 */	bl func_8015F758
/* 800561D4 00051E34  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800561D8 00051E38  CB E1 00 08 */	lfd f31, 8(r1)
/* 800561DC 00051E3C  7C 08 03 A6 */	mtlr r0
/* 800561E0 00051E40  38 21 00 10 */	addi r1, r1, 0x10
/* 800561E4 00051E44  4E 80 00 20 */	blr

.global func_800561E8
func_800561E8:
/* 800561E8 00051E48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800561EC 00051E4C  7C 08 02 A6 */	mflr r0
/* 800561F0 00051E50  90 01 00 14 */	stw r0, 0x14(r1)
/* 800561F4 00051E54  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800561F8 00051E58  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 800561FC 00051E5C  48 1F DB E5 */	bl func_80253DE0
/* 80056200 00051E60  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80056204 00051E64  28 00 00 02 */	cmplwi r0, 2
/* 80056208 00051E68  41 82 00 18 */	beq lbl_80056220
/* 8005620C 00051E6C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056210 00051E70  38 80 00 02 */	li r4, 2
/* 80056214 00051E74  38 A0 00 00 */	li r5, 0
/* 80056218 00051E78  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 8005621C 00051E7C  48 1F DB 95 */	bl func_80253DB0
lbl_80056220:
/* 80056220 00051E80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056224 00051E84  7C 08 03 A6 */	mtlr r0
/* 80056228 00051E88  38 21 00 10 */	addi r1, r1, 0x10
/* 8005622C 00051E8C  4E 80 00 20 */	blr

.global func_80056230
func_80056230:
/* 80056230 00051E90  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056234 00051E94  7C 08 02 A6 */	mflr r0
/* 80056238 00051E98  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005623C 00051E9C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056240 00051EA0  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80056244 00051EA4  48 1F DB 9D */	bl func_80253DE0
/* 80056248 00051EA8  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 8005624C 00051EAC  41 82 00 18 */	beq lbl_80056264
/* 80056250 00051EB0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056254 00051EB4  38 80 00 00 */	li r4, 0
/* 80056258 00051EB8  38 A0 00 00 */	li r5, 0
/* 8005625C 00051EBC  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80056260 00051EC0  48 1F DB 51 */	bl func_80253DB0
lbl_80056264:
/* 80056264 00051EC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056268 00051EC8  7C 08 03 A6 */	mtlr r0
/* 8005626C 00051ECC  38 21 00 10 */	addi r1, r1, 0x10
/* 80056270 00051ED0  4E 80 00 20 */	blr

.global func_80056274
func_80056274:
/* 80056274 00051ED4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056278 00051ED8  7C 08 02 A6 */	mflr r0
/* 8005627C 00051EDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056280 00051EE0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056284 00051EE4  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80056288 00051EE8  48 1F DB 59 */	bl func_80253DE0
/* 8005628C 00051EEC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80056290 00051EF0  28 00 00 02 */	cmplwi r0, 2
/* 80056294 00051EF4  41 82 00 18 */	beq lbl_800562AC
/* 80056298 00051EF8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005629C 00051EFC  38 80 00 02 */	li r4, 2
/* 800562A0 00051F00  38 A0 00 00 */	li r5, 0
/* 800562A4 00051F04  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 800562A8 00051F08  48 1F DB 09 */	bl func_80253DB0
lbl_800562AC:
/* 800562AC 00051F0C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800562B0 00051F10  7C 08 03 A6 */	mtlr r0
/* 800562B4 00051F14  38 21 00 10 */	addi r1, r1, 0x10
/* 800562B8 00051F18  4E 80 00 20 */	blr

.global func_800562BC
func_800562BC:
/* 800562BC 00051F1C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800562C0 00051F20  38 80 00 00 */	li r4, 0
/* 800562C4 00051F24  38 A0 00 00 */	li r5, 0
/* 800562C8 00051F28  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 800562CC 00051F2C  48 1F DA E4 */	b func_80253DB0

.global func_800562D0
func_800562D0:
/* 800562D0 00051F30  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800562D4 00051F34  38 80 00 05 */	li r4, 5
/* 800562D8 00051F38  38 A0 00 00 */	li r5, 0
/* 800562DC 00051F3C  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 800562E0 00051F40  48 1F DA D0 */	b func_80253DB0

.global func_800562E4
func_800562E4:
/* 800562E4 00051F44  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800562E8 00051F48  38 80 00 04 */	li r4, 4
/* 800562EC 00051F4C  38 A0 00 00 */	li r5, 0
/* 800562F0 00051F50  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 800562F4 00051F54  48 1F DA BC */	b func_80253DB0

.global func_800562F8
func_800562F8:
/* 800562F8 00051F58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800562FC 00051F5C  7C 08 02 A6 */	mflr r0
/* 80056300 00051F60  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056304 00051F64  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056308 00051F68  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 8005630C 00051F6C  48 1F DA C5 */	bl func_80253DD0
/* 80056310 00051F70  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80056314 00051F74  38 03 FF FD */	addi r0, r3, -3
/* 80056318 00051F78  7C 00 00 34 */	cntlzw r0, r0
/* 8005631C 00051F7C  54 03 D9 7E */	srwi r3, r0, 5
/* 80056320 00051F80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056324 00051F84  7C 08 03 A6 */	mtlr r0
/* 80056328 00051F88  38 21 00 10 */	addi r1, r1, 0x10
/* 8005632C 00051F8C  4E 80 00 20 */	blr

.global func_80056330
func_80056330:
/* 80056330 00051F90  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056334 00051F94  38 80 00 01 */	li r4, 1
/* 80056338 00051F98  38 A0 00 00 */	li r5, 0
/* 8005633C 00051F9C  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80056340 00051FA0  48 1F DA 70 */	b func_80253DB0

.global func_80056344
func_80056344:
/* 80056344 00051FA4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056348 00051FA8  38 80 00 03 */	li r4, 3
/* 8005634C 00051FAC  38 A0 00 00 */	li r5, 0
/* 80056350 00051FB0  A8 63 10 44 */	lha r3, 0x1044(r3)
/* 80056354 00051FB4  48 1F DA 5C */	b func_80253DB0

.global func_80056358
func_80056358:
/* 80056358 00051FB8  81 0D 81 E0 */	lwz r8, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005635C 00051FBC  80 08 00 08 */	lwz r0, 8(r8)
/* 80056360 00051FC0  50 60 B2 52 */	rlwimi r0, r3, 0x16, 9, 9
/* 80056364 00051FC4  90 08 00 08 */	stw r0, 8(r8)
/* 80056368 00051FC8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005636C 00051FCC  80 03 00 08 */	lwz r0, 8(r3)
/* 80056370 00051FD0  50 80 AA 94 */	rlwimi r0, r4, 0x15, 0xa, 0xa
/* 80056374 00051FD4  90 03 00 08 */	stw r0, 8(r3)
/* 80056378 00051FD8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005637C 00051FDC  80 03 00 08 */	lwz r0, 8(r3)
/* 80056380 00051FE0  50 A0 A2 D6 */	rlwimi r0, r5, 0x14, 0xb, 0xb
/* 80056384 00051FE4  90 03 00 08 */	stw r0, 8(r3)
/* 80056388 00051FE8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005638C 00051FEC  80 03 00 08 */	lwz r0, 8(r3)
/* 80056390 00051FF0  50 C0 7B 60 */	rlwimi r0, r6, 0xf, 0xd, 0x10
/* 80056394 00051FF4  90 03 00 08 */	stw r0, 8(r3)
/* 80056398 00051FF8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005639C 00051FFC  80 03 00 08 */	lwz r0, 8(r3)
/* 800563A0 00052000  50 E0 9B 18 */	rlwimi r0, r7, 0x13, 0xc, 0xc
/* 800563A4 00052004  90 03 00 08 */	stw r0, 8(r3)
/* 800563A8 00052008  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800563AC 0005200C  80 83 00 0C */	lwz r4, 0xc(r3)
/* 800563B0 00052010  54 84 00 80 */	rlwinm r4, r4, 0, 2, 0
/* 800563B4 00052014  90 83 00 0C */	stw r4, 0xc(r3)
/* 800563B8 00052018  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800563BC 0005201C  80 03 00 0C */	lwz r0, 0xc(r3)
/* 800563C0 00052020  50 80 08 00 */	rlwimi r0, r4, 1, 0, 0
/* 800563C4 00052024  90 03 00 0C */	stw r0, 0xc(r3)
/* 800563C8 00052028  4E 80 00 20 */	blr

.global func_800563CC
func_800563CC:
/* 800563CC 0005202C  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800563D0 00052030  80 04 00 08 */	lwz r0, 8(r4)
/* 800563D4 00052034  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 800563D8 00052038  90 04 00 08 */	stw r0, 8(r4)
/* 800563DC 0005203C  4E 80 00 20 */	blr

.global func_800563E0
func_800563E0:
/* 800563E0 00052040  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800563E4 00052044  98 64 10 81 */	stb r3, 0x1081(r4)
/* 800563E8 00052048  4E 80 00 20 */	blr

.global func_800563EC
func_800563EC:
/* 800563EC 0005204C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800563F0 00052050  7C 08 02 A6 */	mflr r0
/* 800563F4 00052054  2C 04 00 00 */	cmpwi r4, 0
/* 800563F8 00052058  90 01 00 14 */	stw r0, 0x14(r1)
/* 800563FC 0005205C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056400 00052060  7C 7F 1B 78 */	mr r31, r3
/* 80056404 00052064  41 82 00 14 */	beq lbl_80056418
/* 80056408 00052068  C0 22 85 68 */	lfs f1, lbl_80640B68-_SDA2_BASE_(r2)
/* 8005640C 0005206C  38 80 00 00 */	li r4, 0
/* 80056410 00052070  4B FB 4D 61 */	bl func_8000B170
/* 80056414 00052074  48 00 00 30 */	b lbl_80056444
lbl_80056418:
/* 80056418 00052078  4B FB 0C 75 */	bl func_8000708C
/* 8005641C 0005207C  2C 03 00 00 */	cmpwi r3, 0
/* 80056420 00052080  41 82 00 24 */	beq lbl_80056444
/* 80056424 00052084  7F E3 FB 78 */	mr r3, r31
/* 80056428 00052088  4B FB 50 99 */	bl func_8000B4C0
/* 8005642C 0005208C  2C 03 00 00 */	cmpwi r3, 0
/* 80056430 00052090  40 82 00 14 */	bne lbl_80056444
/* 80056434 00052094  C0 22 85 68 */	lfs f1, lbl_80640B68-_SDA2_BASE_(r2)
/* 80056438 00052098  7F E3 FB 78 */	mr r3, r31
/* 8005643C 0005209C  38 80 00 00 */	li r4, 0
/* 80056440 000520A0  4B FB 4D 31 */	bl func_8000B170
lbl_80056444:
/* 80056444 000520A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056448 000520A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005644C 000520AC  7C 08 03 A6 */	mtlr r0
/* 80056450 000520B0  38 21 00 10 */	addi r1, r1, 0x10
/* 80056454 000520B4  4E 80 00 20 */	blr

.global func_80056458
func_80056458:
/* 80056458 000520B8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005645C 000520BC  7C 08 02 A6 */	mflr r0
/* 80056460 000520C0  2C 03 00 00 */	cmpwi r3, 0
/* 80056464 000520C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056468 000520C8  41 82 00 2C */	beq lbl_80056494
/* 8005646C 000520CC  C0 42 85 70 */	lfs f2, lbl_80640B70-_SDA2_BASE_(r2)
/* 80056470 000520D0  C0 2D 86 C8 */	lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 80056474 000520D4  C0 02 85 6C */	lfs f0, lbl_80640B6C-_SDA2_BASE_(r2)
/* 80056478 000520D8  EC 22 00 72 */	fmuls f1, f2, f1
/* 8005647C 000520DC  EC 00 08 2A */	fadds f0, f0, f1
/* 80056480 000520E0  FC 00 00 1E */	fctiwz f0, f0
/* 80056484 000520E4  D8 01 00 08 */	stfd f0, 8(r1)
/* 80056488 000520E8  80 61 00 0C */	lwz r3, 0xc(r1)
/* 8005648C 000520EC  4B FB 50 E5 */	bl func_8000B570
/* 80056490 000520F0  48 00 00 0C */	b lbl_8005649C
lbl_80056494:
/* 80056494 000520F4  38 60 00 00 */	li r3, 0
/* 80056498 000520F8  4B FB 50 D9 */	bl func_8000B570
lbl_8005649C:
/* 8005649C 000520FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800564A0 00052100  7C 08 03 A6 */	mtlr r0
/* 800564A4 00052104  38 21 00 10 */	addi r1, r1, 0x10
/* 800564A8 00052108  4E 80 00 20 */	blr

.global func_800564AC
func_800564AC:
/* 800564AC 0005210C  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800564B0 00052110  90 64 10 84 */	stw r3, 0x1084(r4)
/* 800564B4 00052114  4E 80 00 20 */	blr

.global func_800564B8
func_800564B8:
/* 800564B8 00052118  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800564BC 0005211C  98 65 10 80 */	stb r3, 0x1080(r5)
/* 800564C0 00052120  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800564C4 00052124  90 83 10 7C */	stw r4, 0x107c(r3)
/* 800564C8 00052128  4E 80 00 20 */	blr
lbl_800564CC:
/* 800564CC 0005212C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800564D0 00052130  7C 08 02 A6 */	mflr r0
/* 800564D4 00052134  90 01 00 14 */	stw r0, 0x14(r1)
/* 800564D8 00052138  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800564DC 0005213C  80 83 10 7C */	lwz r4, 0x107c(r3)
/* 800564E0 00052140  2C 04 00 00 */	cmpwi r4, 0
/* 800564E4 00052144  41 82 00 18 */	beq lbl_800564FC
/* 800564E8 00052148  88 63 10 80 */	lbz r3, 0x1080(r3)
/* 800564EC 0005214C  48 10 60 09 */	bl func_8015C4F4
/* 800564F0 00052150  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800564F4 00052154  38 00 00 00 */	li r0, 0
/* 800564F8 00052158  90 03 10 7C */	stw r0, 0x107c(r3)
lbl_800564FC:
/* 800564FC 0005215C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056500 00052160  7C 08 03 A6 */	mtlr r0
/* 80056504 00052164  38 21 00 10 */	addi r1, r1, 0x10
/* 80056508 00052168  4E 80 00 20 */	blr

.global func_8005650C
func_8005650C:
/* 8005650C 0005216C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056510 00052170  80 83 10 84 */	lwz r4, 0x1084(r3)
/* 80056514 00052174  2C 04 00 00 */	cmpwi r4, 0
/* 80056518 00052178  4D 82 00 20 */	beqlr
/* 8005651C 0005217C  38 60 00 09 */	li r3, 9
/* 80056520 00052180  48 10 5F D4 */	b func_8015C4F4
/* 80056524 00052184  4E 80 00 20 */	blr

.global func_80056528
func_80056528:
/* 80056528 00052188  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005652C 0005218C  80 83 00 0C */	lwz r4, 0xc(r3)
/* 80056530 00052190  64 84 40 00 */	oris r4, r4, 0x4000
/* 80056534 00052194  90 83 00 0C */	stw r4, 0xc(r3)
/* 80056538 00052198  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005653C 0005219C  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80056540 000521A0  50 80 08 00 */	rlwimi r0, r4, 1, 0, 0
/* 80056544 000521A4  90 03 00 0C */	stw r0, 0xc(r3)
/* 80056548 000521A8  4E 80 00 20 */	blr
lbl_8005654C:
/* 8005654C 000521AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056550 000521B0  7C 08 02 A6 */	mflr r0
/* 80056554 000521B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056558 000521B8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005655C 000521BC  80 03 00 08 */	lwz r0, 8(r3)
/* 80056560 000521C0  54 00 57 FF */	rlwinm. r0, r0, 0xa, 0x1f, 0x1f
/* 80056564 000521C4  41 82 00 10 */	beq lbl_80056574
/* 80056568 000521C8  48 10 E6 41 */	bl func_80164BA8
/* 8005656C 000521CC  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056570 000521D0  90 64 10 58 */	stw r3, 0x1058(r4)
lbl_80056574:
/* 80056574 000521D4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056578 000521D8  80 03 00 08 */	lwz r0, 8(r3)
/* 8005657C 000521DC  54 00 6F FF */	rlwinm. r0, r0, 0xd, 0x1f, 0x1f
/* 80056580 000521E0  41 82 00 2C */	beq lbl_800565AC
/* 80056584 000521E4  48 10 E7 F5 */	bl func_80164D78
/* 80056588 000521E8  2C 03 00 00 */	cmpwi r3, 0
/* 8005658C 000521EC  40 82 00 20 */	bne lbl_800565AC
/* 80056590 000521F0  48 10 E8 19 */	bl func_80164DA8
/* 80056594 000521F4  2C 03 00 01 */	cmpwi r3, 1
/* 80056598 000521F8  40 82 00 14 */	bne lbl_800565AC
/* 8005659C 000521FC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800565A0 00052200  80 03 00 08 */	lwz r0, 8(r3)
/* 800565A4 00052204  54 00 03 56 */	rlwinm r0, r0, 0, 0xd, 0xb
/* 800565A8 00052208  90 03 00 08 */	stw r0, 8(r3)
lbl_800565AC:
/* 800565AC 0005220C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800565B0 00052210  7C 08 03 A6 */	mtlr r0
/* 800565B4 00052214  38 21 00 10 */	addi r1, r1, 0x10
/* 800565B8 00052218  4E 80 00 20 */	blr
lbl_800565BC:
/* 800565BC 0005221C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 800565C0 00052220  7C 08 02 A6 */	mflr r0
/* 800565C4 00052224  38 A0 00 03 */	li r5, 3
/* 800565C8 00052228  90 01 00 24 */	stw r0, 0x24(r1)
/* 800565CC 0005222C  38 C1 00 08 */	addi r6, r1, 8
/* 800565D0 00052230  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 800565D4 00052234  7C 9F 23 78 */	mr r31, r4
/* 800565D8 00052238  93 C1 00 18 */	stw r30, 0x18(r1)
/* 800565DC 0005223C  7C 7E 1B 78 */	mr r30, r3
/* 800565E0 00052240  48 1F D8 AD */	bl func_80253E8C
/* 800565E4 00052244  80 01 00 08 */	lwz r0, 8(r1)
/* 800565E8 00052248  2C 00 00 02 */	cmpwi r0, 2
/* 800565EC 0005224C  41 82 00 08 */	beq lbl_800565F4
/* 800565F0 00052250  48 00 00 28 */	b lbl_80056618
lbl_800565F4:
/* 800565F4 00052254  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800565F8 00052258  80 03 00 08 */	lwz r0, 8(r3)
/* 800565FC 0005225C  54 00 67 FF */	rlwinm. r0, r0, 0xc, 0x1f, 0x1f
/* 80056600 00052260  40 82 00 18 */	bne lbl_80056618
/* 80056604 00052264  7F C3 F3 78 */	mr r3, r30
/* 80056608 00052268  7F E4 FB 78 */	mr r4, r31
/* 8005660C 0005226C  38 A0 00 01 */	li r5, 1
/* 80056610 00052270  38 C0 00 00 */	li r6, 0
/* 80056614 00052274  48 1F D8 A1 */	bl func_80253EB4
lbl_80056618:
/* 80056618 00052278  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005661C 0005227C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80056620 00052280  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80056624 00052284  7C 08 03 A6 */	mtlr r0
/* 80056628 00052288  38 21 00 20 */	addi r1, r1, 0x20
/* 8005662C 0005228C  4E 80 00 20 */	blr
lbl_80056630:
/* 80056630 00052290  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 80056634 00052294  7C 08 02 A6 */	mflr r0
/* 80056638 00052298  90 01 00 74 */	stw r0, 0x74(r1)
/* 8005663C 0005229C  39 61 00 70 */	addi r11, r1, 0x70
/* 80056640 000522A0  48 17 0A E9 */	bl _savegpr_27
/* 80056644 000522A4  7C 7E 1B 78 */	mr r30, r3
/* 80056648 000522A8  7C 9F 23 78 */	mr r31, r4
/* 8005664C 000522AC  38 C1 00 08 */	addi r6, r1, 8
/* 80056650 000522B0  38 A0 00 03 */	li r5, 3
/* 80056654 000522B4  48 1F D8 89 */	bl func_80253EDC
/* 80056658 000522B8  80 61 00 08 */	lwz r3, 8(r1)
/* 8005665C 000522BC  2C 03 00 02 */	cmpwi r3, 2
/* 80056660 000522C0  41 82 01 1C */	beq lbl_8005677C
/* 80056664 000522C4  40 80 00 10 */	bge lbl_80056674
/* 80056668 000522C8  2C 03 00 00 */	cmpwi r3, 0
/* 8005666C 000522CC  40 80 01 68 */	bge lbl_800567D4
/* 80056670 000522D0  48 00 02 38 */	b lbl_800568A8
lbl_80056674:
/* 80056674 000522D4  2C 03 00 04 */	cmpwi r3, 4
/* 80056678 000522D8  40 80 02 30 */	bge lbl_800568A8
/* 8005667C 000522DC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056680 000522E0  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80056684 000522E4  54 00 0F FF */	rlwinm. r0, r0, 1, 0x1f, 0x1f
/* 80056688 000522E8  41 82 00 48 */	beq lbl_800566D0
/* 8005668C 000522EC  C0 1F 00 48 */	lfs f0, 0x48(r31)
/* 80056690 000522F0  C0 82 85 74 */	lfs f4, lbl_80640B74-_SDA2_BASE_(r2)
/* 80056694 000522F4  C0 5F 00 4C */	lfs f2, 0x4c(r31)
/* 80056698 000522F8  EC 60 20 2A */	fadds f3, f0, f4
/* 8005669C 000522FC  C0 3F 00 50 */	lfs f1, 0x50(r31)
/* 800566A0 00052300  C0 1F 00 54 */	lfs f0, 0x54(r31)
/* 800566A4 00052304  EC 42 20 2A */	fadds f2, f2, f4
/* 800566A8 00052308  EC 21 20 2A */	fadds f1, f1, f4
/* 800566AC 0005230C  EC 00 20 2A */	fadds f0, f0, f4
/* 800566B0 00052310  D0 7F 00 48 */	stfs f3, 0x48(r31)
/* 800566B4 00052314  D0 5F 00 4C */	stfs f2, 0x4c(r31)
/* 800566B8 00052318  D0 3F 00 50 */	stfs f1, 0x50(r31)
/* 800566BC 0005231C  D0 1F 00 54 */	stfs f0, 0x54(r31)
/* 800566C0 00052320  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800566C4 00052324  80 03 00 0C */	lwz r0, 0xc(r3)
/* 800566C8 00052328  54 00 00 7E */	clrlwi r0, r0, 1
/* 800566CC 0005232C  90 03 00 0C */	stw r0, 0xc(r3)
lbl_800566D0:
/* 800566D0 00052330  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800566D4 00052334  80 03 00 08 */	lwz r0, 8(r3)
/* 800566D8 00052338  54 00 67 FF */	rlwinm. r0, r0, 0xc, 0x1f, 0x1f
/* 800566DC 0005233C  41 82 01 CC */	beq lbl_800568A8
/* 800566E0 00052340  7F C3 F3 78 */	mr r3, r30
/* 800566E4 00052344  7F E4 FB 78 */	mr r4, r31
/* 800566E8 00052348  38 C1 00 10 */	addi r6, r1, 0x10
/* 800566EC 0005234C  38 A0 00 06 */	li r5, 6
/* 800566F0 00052350  48 1F D7 ED */	bl func_80253EDC
/* 800566F4 00052354  C0 A1 00 10 */	lfs f5, 0x10(r1)
/* 800566F8 00052358  38 A0 FF 00 */	li r5, -256
/* 800566FC 0005235C  C0 61 00 20 */	lfs f3, 0x20(r1)
/* 80056700 00052360  38 60 00 08 */	li r3, 8
/* 80056704 00052364  C0 21 00 14 */	lfs f1, 0x14(r1)
/* 80056708 00052368  FC 80 28 1E */	fctiwz f4, f5
/* 8005670C 0005236C  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 80056710 00052370  FC 40 18 1E */	fctiwz f2, f3
/* 80056714 00052374  EC 21 28 28 */	fsubs f1, f1, f5
/* 80056718 00052378  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005671C 0005237C  EC 00 18 28 */	fsubs f0, f0, f3
/* 80056720 00052380  D8 41 00 38 */	stfd f2, 0x38(r1)
/* 80056724 00052384  FC 20 08 1E */	fctiwz f1, f1
/* 80056728 00052388  88 DF 00 11 */	lbz r6, 0x11(r31)
/* 8005672C 0005238C  FC 00 00 1E */	fctiwz f0, f0
/* 80056730 00052390  D8 81 00 30 */	stfd f4, 0x30(r1)
/* 80056734 00052394  80 04 00 08 */	lwz r0, 8(r4)
/* 80056738 00052398  7C DE 2B 78 */	or r30, r6, r5
/* 8005673C 0005239C  D8 21 00 40 */	stfd f1, 0x40(r1)
/* 80056740 000523A0  54 04 8F 3E */	rlwinm r4, r0, 0x11, 0x1c, 0x1f
/* 80056744 000523A4  83 E1 00 34 */	lwz r31, 0x34(r1)
/* 80056748 000523A8  D8 01 00 48 */	stfd f0, 0x48(r1)
/* 8005674C 000523AC  83 A1 00 3C */	lwz r29, 0x3c(r1)
/* 80056750 000523B0  83 81 00 44 */	lwz r28, 0x44(r1)
/* 80056754 000523B4  83 61 00 4C */	lwz r27, 0x4c(r1)
/* 80056758 000523B8  48 10 5B B1 */	bl func_8015C308
/* 8005675C 000523BC  7F E4 FB 78 */	mr r4, r31
/* 80056760 000523C0  7F A5 EB 78 */	mr r5, r29
/* 80056764 000523C4  7F C8 F3 78 */	mr r8, r30
/* 80056768 000523C8  7F 86 07 34 */	extsh r6, r28
/* 8005676C 000523CC  7F 67 07 34 */	extsh r7, r27
/* 80056770 000523D0  38 60 03 ED */	li r3, 0x3ed
/* 80056774 000523D4  48 1F 99 C1 */	bl func_80250134
/* 80056778 000523D8  48 00 01 30 */	b lbl_800568A8
lbl_8005677C:
/* 8005677C 000523DC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056780 000523E0  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80056784 000523E4  54 00 17 FF */	rlwinm. r0, r0, 2, 0x1f, 0x1f
/* 80056788 000523E8  41 82 01 20 */	beq lbl_800568A8
/* 8005678C 000523EC  C0 1F 00 48 */	lfs f0, 0x48(r31)
/* 80056790 000523F0  C0 82 85 74 */	lfs f4, lbl_80640B74-_SDA2_BASE_(r2)
/* 80056794 000523F4  C0 5F 00 4C */	lfs f2, 0x4c(r31)
/* 80056798 000523F8  EC 60 20 2A */	fadds f3, f0, f4
/* 8005679C 000523FC  C0 3F 00 50 */	lfs f1, 0x50(r31)
/* 800567A0 00052400  C0 1F 00 54 */	lfs f0, 0x54(r31)
/* 800567A4 00052404  EC 42 20 2A */	fadds f2, f2, f4
/* 800567A8 00052408  EC 21 20 2A */	fadds f1, f1, f4
/* 800567AC 0005240C  EC 00 20 2A */	fadds f0, f0, f4
/* 800567B0 00052410  D0 7F 00 48 */	stfs f3, 0x48(r31)
/* 800567B4 00052414  D0 5F 00 4C */	stfs f2, 0x4c(r31)
/* 800567B8 00052418  D0 3F 00 50 */	stfs f1, 0x50(r31)
/* 800567BC 0005241C  D0 1F 00 54 */	stfs f0, 0x54(r31)
/* 800567C0 00052420  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800567C4 00052424  80 03 00 0C */	lwz r0, 0xc(r3)
/* 800567C8 00052428  54 00 00 80 */	rlwinm r0, r0, 0, 2, 0
/* 800567CC 0005242C  90 03 00 0C */	stw r0, 0xc(r3)
/* 800567D0 00052430  48 00 00 D8 */	b lbl_800568A8
lbl_800567D4:
/* 800567D4 00052434  28 03 00 01 */	cmplwi r3, 1
/* 800567D8 00052438  40 82 00 18 */	bne lbl_800567F0
/* 800567DC 0005243C  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800567E0 00052440  80 05 00 08 */	lwz r0, 8(r5)
/* 800567E4 00052444  38 85 00 08 */	addi r4, r5, 8
/* 800567E8 00052448  54 00 5F FF */	rlwinm. r0, r0, 0xb, 0x1f, 0x1f
/* 800567EC 0005244C  40 82 00 20 */	bne lbl_8005680C
lbl_800567F0:
/* 800567F0 00052450  2C 03 00 00 */	cmpwi r3, 0
/* 800567F4 00052454  40 82 00 B4 */	bne lbl_800568A8
/* 800567F8 00052458  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800567FC 0005245C  80 05 00 08 */	lwz r0, 8(r5)
/* 80056800 00052460  38 85 00 08 */	addi r4, r5, 8
/* 80056804 00052464  54 00 5F FF */	rlwinm. r0, r0, 0xb, 0x1f, 0x1f
/* 80056808 00052468  40 82 00 A0 */	bne lbl_800568A8
lbl_8005680C:
/* 8005680C 0005246C  80 05 10 58 */	lwz r0, 0x1058(r5)
/* 80056810 00052470  2C 00 00 02 */	cmpwi r0, 2
/* 80056814 00052474  41 82 00 48 */	beq lbl_8005685C
/* 80056818 00052478  40 80 00 14 */	bge lbl_8005682C
/* 8005681C 0005247C  2C 00 00 00 */	cmpwi r0, 0
/* 80056820 00052480  41 82 00 18 */	beq lbl_80056838
/* 80056824 00052484  40 80 00 24 */	bge lbl_80056848
/* 80056828 00052488  48 00 00 5C */	b lbl_80056884
lbl_8005682C:
/* 8005682C 0005248C  2C 00 00 04 */	cmpwi r0, 4
/* 80056830 00052490  40 80 00 54 */	bge lbl_80056884
/* 80056834 00052494  48 00 00 3C */	b lbl_80056870
lbl_80056838:
/* 80056838 00052498  80 04 00 00 */	lwz r0, 0(r4)
/* 8005683C 0005249C  54 00 05 20 */	rlwinm r0, r0, 0, 0x14, 0x10
/* 80056840 000524A0  90 04 00 00 */	stw r0, 0(r4)
/* 80056844 000524A4  48 00 00 4C */	b lbl_80056890
lbl_80056848:
/* 80056848 000524A8  80 04 00 00 */	lwz r0, 0(r4)
/* 8005684C 000524AC  38 60 00 01 */	li r3, 1
/* 80056850 000524B0  50 60 64 66 */	rlwimi r0, r3, 0xc, 0x11, 0x13
/* 80056854 000524B4  90 04 00 00 */	stw r0, 0(r4)
/* 80056858 000524B8  48 00 00 38 */	b lbl_80056890
lbl_8005685C:
/* 8005685C 000524BC  80 04 00 00 */	lwz r0, 0(r4)
/* 80056860 000524C0  38 60 00 02 */	li r3, 2
/* 80056864 000524C4  50 60 64 66 */	rlwimi r0, r3, 0xc, 0x11, 0x13
/* 80056868 000524C8  90 04 00 00 */	stw r0, 0(r4)
/* 8005686C 000524CC  48 00 00 24 */	b lbl_80056890
lbl_80056870:
/* 80056870 000524D0  80 04 00 00 */	lwz r0, 0(r4)
/* 80056874 000524D4  38 60 00 03 */	li r3, 3
/* 80056878 000524D8  50 60 64 66 */	rlwimi r0, r3, 0xc, 0x11, 0x13
/* 8005687C 000524DC  90 04 00 00 */	stw r0, 0(r4)
/* 80056880 000524E0  48 00 00 10 */	b lbl_80056890
lbl_80056884:
/* 80056884 000524E4  80 04 00 00 */	lwz r0, 0(r4)
/* 80056888 000524E8  60 00 70 00 */	ori r0, r0, 0x7000
/* 8005688C 000524EC  90 04 00 00 */	stw r0, 0(r4)
lbl_80056890:
/* 80056890 000524F0  80 CD 81 E0 */	lwz r6, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056894 000524F4  7F C3 F3 78 */	mr r3, r30
/* 80056898 000524F8  7F E4 FB 78 */	mr r4, r31
/* 8005689C 000524FC  38 A0 00 06 */	li r5, 6
/* 800568A0 00052500  38 C6 10 5C */	addi r6, r6, 0x105c
/* 800568A4 00052504  48 1F D6 39 */	bl func_80253EDC
lbl_800568A8:
/* 800568A8 00052508  39 61 00 70 */	addi r11, r1, 0x70
/* 800568AC 0005250C  48 17 08 C9 */	bl _restgpr_27
/* 800568B0 00052510  80 01 00 74 */	lwz r0, 0x74(r1)
/* 800568B4 00052514  7C 08 03 A6 */	mtlr r0
/* 800568B8 00052518  38 21 00 70 */	addi r1, r1, 0x70
/* 800568BC 0005251C  4E 80 00 20 */	blr
lbl_800568C0:
/* 800568C0 00052520  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800568C4 00052524  7C 08 02 A6 */	mflr r0
/* 800568C8 00052528  38 80 00 08 */	li r4, 8
/* 800568CC 0005252C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800568D0 00052530  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800568D4 00052534  7C 7F 1B 78 */	mr r31, r3
/* 800568D8 00052538  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800568DC 0005253C  80 05 00 08 */	lwz r0, 8(r5)
/* 800568E0 00052540  54 05 D7 FE */	rlwinm r5, r0, 0x1a, 0x1f, 0x1f
/* 800568E4 00052544  48 1F D5 0D */	bl func_80253DF0
/* 800568E8 00052548  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800568EC 0005254C  80 03 00 08 */	lwz r0, 8(r3)
/* 800568F0 00052550  54 00 D7 FF */	rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 800568F4 00052554  41 82 00 44 */	beq lbl_80056938
/* 800568F8 00052558  88 03 10 81 */	lbz r0, 0x1081(r3)
/* 800568FC 0005255C  2C 00 00 01 */	cmpwi r0, 1
/* 80056900 00052560  41 82 00 28 */	beq lbl_80056928
/* 80056904 00052564  40 80 00 34 */	bge lbl_80056938
/* 80056908 00052568  2C 00 00 00 */	cmpwi r0, 0
/* 8005690C 0005256C  40 80 00 08 */	bge lbl_80056914
/* 80056910 00052570  48 00 00 28 */	b lbl_80056938
lbl_80056914:
/* 80056914 00052574  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 80056918 00052578  7F E3 FB 78 */	mr r3, r31
/* 8005691C 0005257C  38 80 00 04 */	li r4, 4
/* 80056920 00052580  48 1F D4 F1 */	bl func_80253E10
/* 80056924 00052584  48 00 00 14 */	b lbl_80056938
lbl_80056928:
/* 80056928 00052588  C0 22 85 78 */	lfs f1, lbl_80640B78-_SDA2_BASE_(r2)
/* 8005692C 0005258C  7F E3 FB 78 */	mr r3, r31
/* 80056930 00052590  38 80 00 04 */	li r4, 4
/* 80056934 00052594  48 1F D4 DD */	bl func_80253E10
lbl_80056938:
/* 80056938 00052598  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005693C 0005259C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056940 000525A0  7C 08 03 A6 */	mtlr r0
/* 80056944 000525A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80056948 000525A8  4E 80 00 20 */	blr
lbl_8005694C:
/* 8005694C 000525AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056950 000525B0  7C 08 02 A6 */	mflr r0
/* 80056954 000525B4  7C 63 07 34 */	extsh r3, r3
/* 80056958 000525B8  38 A0 00 03 */	li r5, 3
/* 8005695C 000525BC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056960 000525C0  38 C1 00 08 */	addi r6, r1, 8
/* 80056964 000525C4  48 1F D5 29 */	bl func_80253E8C
/* 80056968 000525C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005696C 000525CC  7C 08 03 A6 */	mtlr r0
/* 80056970 000525D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80056974 000525D4  4E 80 00 20 */	blr
lbl_80056978:
/* 80056978 000525D8  4E 80 00 20 */	blr

.global func_8005697C
func_8005697C:
/* 8005697C 000525DC  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80056980 000525E0  7C 08 02 A6 */	mflr r0
/* 80056984 000525E4  38 80 00 74 */	li r4, 0x74
/* 80056988 000525E8  90 01 00 54 */	stw r0, 0x54(r1)
/* 8005698C 000525EC  38 A1 00 08 */	addi r5, r1, 8
/* 80056990 000525F0  48 38 45 6D */	bl func_803DAEFC
/* 80056994 000525F4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056998 000525F8  38 81 00 08 */	addi r4, r1, 8
/* 8005699C 000525FC  38 A0 00 20 */	li r5, 0x20
/* 800569A0 00052600  A0 03 10 3C */	lhz r0, 0x103c(r3)
/* 800569A4 00052604  54 00 35 32 */	rlwinm r0, r0, 6, 0x14, 0x19
/* 800569A8 00052608  7C 63 02 14 */	add r3, r3, r0
/* 800569AC 0005260C  38 63 00 3C */	addi r3, r3, 0x3c
/* 800569B0 00052610  48 12 06 D1 */	bl func_80177080
/* 800569B4 00052614  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800569B8 00052618  A0 64 10 3C */	lhz r3, 0x103c(r4)
/* 800569BC 0005261C  38 03 00 01 */	addi r0, r3, 1
/* 800569C0 00052620  B0 04 10 3C */	sth r0, 0x103c(r4)
/* 800569C4 00052624  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800569C8 00052628  A0 64 10 3C */	lhz r3, 0x103c(r4)
/* 800569CC 0005262C  38 03 FF FF */	addi r0, r3, -1
/* 800569D0 00052630  54 00 35 32 */	rlwinm r0, r0, 6, 0x14, 0x19
/* 800569D4 00052634  7C 64 02 14 */	add r3, r4, r0
/* 800569D8 00052638  80 01 00 54 */	lwz r0, 0x54(r1)
/* 800569DC 0005263C  38 63 00 3C */	addi r3, r3, 0x3c
/* 800569E0 00052640  7C 08 03 A6 */	mtlr r0
/* 800569E4 00052644  38 21 00 50 */	addi r1, r1, 0x50
/* 800569E8 00052648  4E 80 00 20 */	blr

.global func_800569EC
func_800569EC:
/* 800569EC 0005264C  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 800569F0 00052650  7C 08 02 A6 */	mflr r0
/* 800569F4 00052654  38 80 00 74 */	li r4, 0x74
/* 800569F8 00052658  90 01 00 54 */	stw r0, 0x54(r1)
/* 800569FC 0005265C  38 A1 00 08 */	addi r5, r1, 8
/* 80056A00 00052660  48 38 6F DD */	bl func_803DD9DC
/* 80056A04 00052664  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056A08 00052668  38 81 00 08 */	addi r4, r1, 8
/* 80056A0C 0005266C  38 A0 00 20 */	li r5, 0x20
/* 80056A10 00052670  A0 03 10 3C */	lhz r0, 0x103c(r3)
/* 80056A14 00052674  54 00 35 32 */	rlwinm r0, r0, 6, 0x14, 0x19
/* 80056A18 00052678  7C 63 02 14 */	add r3, r3, r0
/* 80056A1C 0005267C  38 63 00 3C */	addi r3, r3, 0x3c
/* 80056A20 00052680  48 12 06 61 */	bl func_80177080
/* 80056A24 00052684  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056A28 00052688  A0 64 10 3C */	lhz r3, 0x103c(r4)
/* 80056A2C 0005268C  38 03 00 01 */	addi r0, r3, 1
/* 80056A30 00052690  B0 04 10 3C */	sth r0, 0x103c(r4)
/* 80056A34 00052694  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80056A38 00052698  A0 64 10 3C */	lhz r3, 0x103c(r4)
/* 80056A3C 0005269C  38 03 FF FF */	addi r0, r3, -1
/* 80056A40 000526A0  54 00 35 32 */	rlwinm r0, r0, 6, 0x14, 0x19
/* 80056A44 000526A4  7C 64 02 14 */	add r3, r4, r0
/* 80056A48 000526A8  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80056A4C 000526AC  38 63 00 3C */	addi r3, r3, 0x3c
/* 80056A50 000526B0  7C 08 03 A6 */	mtlr r0
/* 80056A54 000526B4  38 21 00 50 */	addi r1, r1, 0x50
/* 80056A58 000526B8  4E 80 00 20 */	blr

.global func_80056A5C
func_80056A5C:
/* 80056A5C 000526BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056A60 000526C0  7C 08 02 A6 */	mflr r0
/* 80056A64 000526C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056A68 000526C8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056A6C 000526CC  7C 7F 1B 78 */	mr r31, r3
/* 80056A70 000526D0  48 00 01 65 */	bl func_80056BD4
/* 80056A74 000526D4  2C 03 00 00 */	cmpwi r3, 0
/* 80056A78 000526D8  40 82 00 0C */	bne lbl_80056A84
/* 80056A7C 000526DC  38 60 00 02 */	li r3, 2
/* 80056A80 000526E0  48 00 00 84 */	b lbl_80056B04
lbl_80056A84:
/* 80056A84 000526E4  7F E3 FB 78 */	mr r3, r31
/* 80056A88 000526E8  38 80 00 AC */	li r4, 0xac
/* 80056A8C 000526EC  38 A0 00 00 */	li r5, 0
/* 80056A90 000526F0  48 38 44 6D */	bl func_803DAEFC
/* 80056A94 000526F4  2C 03 00 00 */	cmpwi r3, 0
/* 80056A98 000526F8  41 82 00 0C */	beq lbl_80056AA4
/* 80056A9C 000526FC  38 60 00 02 */	li r3, 2
/* 80056AA0 00052700  48 00 00 64 */	b lbl_80056B04
lbl_80056AA4:
/* 80056AA4 00052704  7F E3 FB 78 */	mr r3, r31
/* 80056AA8 00052708  38 80 00 AF */	li r4, 0xaf
/* 80056AAC 0005270C  38 A0 00 00 */	li r5, 0
/* 80056AB0 00052710  48 38 44 4D */	bl func_803DAEFC
/* 80056AB4 00052714  2C 03 00 00 */	cmpwi r3, 0
/* 80056AB8 00052718  40 82 00 0C */	bne lbl_80056AC4
/* 80056ABC 0005271C  38 60 00 02 */	li r3, 2
/* 80056AC0 00052720  48 00 00 44 */	b lbl_80056B04
lbl_80056AC4:
/* 80056AC4 00052724  7F E3 FB 78 */	mr r3, r31
/* 80056AC8 00052728  38 80 00 6F */	li r4, 0x6f
/* 80056ACC 0005272C  38 A0 00 00 */	li r5, 0
/* 80056AD0 00052730  48 38 44 2D */	bl func_803DAEFC
/* 80056AD4 00052734  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80056AD8 00052738  2C 00 00 01 */	cmpwi r0, 1
/* 80056ADC 0005273C  41 82 00 1C */	beq lbl_80056AF8
/* 80056AE0 00052740  40 80 00 20 */	bge lbl_80056B00
/* 80056AE4 00052744  2C 00 00 00 */	cmpwi r0, 0
/* 80056AE8 00052748  40 80 00 08 */	bge lbl_80056AF0
/* 80056AEC 0005274C  48 00 00 14 */	b lbl_80056B00
lbl_80056AF0:
/* 80056AF0 00052750  38 60 00 00 */	li r3, 0
/* 80056AF4 00052754  48 00 00 10 */	b lbl_80056B04
lbl_80056AF8:
/* 80056AF8 00052758  38 60 00 01 */	li r3, 1
/* 80056AFC 0005275C  48 00 00 08 */	b lbl_80056B04
lbl_80056B00:
/* 80056B00 00052760  38 60 00 02 */	li r3, 2
lbl_80056B04:
/* 80056B04 00052764  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056B08 00052768  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056B0C 0005276C  7C 08 03 A6 */	mtlr r0
/* 80056B10 00052770  38 21 00 10 */	addi r1, r1, 0x10
/* 80056B14 00052774  4E 80 00 20 */	blr

.global func_80056B18
func_80056B18:
/* 80056B18 00052778  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056B1C 0005277C  7C 08 02 A6 */	mflr r0
/* 80056B20 00052780  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056B24 00052784  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056B28 00052788  7C 7F 1B 78 */	mr r31, r3
/* 80056B2C 0005278C  48 00 01 21 */	bl func_80056C4C
/* 80056B30 00052790  2C 03 00 00 */	cmpwi r3, 0
/* 80056B34 00052794  40 82 00 0C */	bne lbl_80056B40
/* 80056B38 00052798  38 60 00 02 */	li r3, 2
/* 80056B3C 0005279C  48 00 00 84 */	b lbl_80056BC0
lbl_80056B40:
/* 80056B40 000527A0  7F E3 FB 78 */	mr r3, r31
/* 80056B44 000527A4  38 80 00 AC */	li r4, 0xac
/* 80056B48 000527A8  38 A0 00 00 */	li r5, 0
/* 80056B4C 000527AC  48 38 6E 91 */	bl func_803DD9DC
/* 80056B50 000527B0  2C 03 00 00 */	cmpwi r3, 0
/* 80056B54 000527B4  41 82 00 0C */	beq lbl_80056B60
/* 80056B58 000527B8  38 60 00 02 */	li r3, 2
/* 80056B5C 000527BC  48 00 00 64 */	b lbl_80056BC0
lbl_80056B60:
/* 80056B60 000527C0  7F E3 FB 78 */	mr r3, r31
/* 80056B64 000527C4  38 80 00 AF */	li r4, 0xaf
/* 80056B68 000527C8  38 A0 00 00 */	li r5, 0
/* 80056B6C 000527CC  48 38 6E 71 */	bl func_803DD9DC
/* 80056B70 000527D0  2C 03 00 00 */	cmpwi r3, 0
/* 80056B74 000527D4  40 82 00 0C */	bne lbl_80056B80
/* 80056B78 000527D8  38 60 00 02 */	li r3, 2
/* 80056B7C 000527DC  48 00 00 44 */	b lbl_80056BC0
lbl_80056B80:
/* 80056B80 000527E0  7F E3 FB 78 */	mr r3, r31
/* 80056B84 000527E4  38 80 00 6F */	li r4, 0x6f
/* 80056B88 000527E8  38 A0 00 00 */	li r5, 0
/* 80056B8C 000527EC  48 38 6E 51 */	bl func_803DD9DC
/* 80056B90 000527F0  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80056B94 000527F4  2C 00 00 01 */	cmpwi r0, 1
/* 80056B98 000527F8  41 82 00 1C */	beq lbl_80056BB4
/* 80056B9C 000527FC  40 80 00 20 */	bge lbl_80056BBC
/* 80056BA0 00052800  2C 00 00 00 */	cmpwi r0, 0
/* 80056BA4 00052804  40 80 00 08 */	bge lbl_80056BAC
/* 80056BA8 00052808  48 00 00 14 */	b lbl_80056BBC
lbl_80056BAC:
/* 80056BAC 0005280C  38 60 00 00 */	li r3, 0
/* 80056BB0 00052810  48 00 00 10 */	b lbl_80056BC0
lbl_80056BB4:
/* 80056BB4 00052814  38 60 00 01 */	li r3, 1
/* 80056BB8 00052818  48 00 00 08 */	b lbl_80056BC0
lbl_80056BBC:
/* 80056BBC 0005281C  38 60 00 02 */	li r3, 2
lbl_80056BC0:
/* 80056BC0 00052820  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056BC4 00052824  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056BC8 00052828  7C 08 03 A6 */	mtlr r0
/* 80056BCC 0005282C  38 21 00 10 */	addi r1, r1, 0x10
/* 80056BD0 00052830  4E 80 00 20 */	blr

.global func_80056BD4
func_80056BD4:
/* 80056BD4 00052834  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056BD8 00052838  7C 08 02 A6 */	mflr r0
/* 80056BDC 0005283C  2C 03 00 00 */	cmpwi r3, 0
/* 80056BE0 00052840  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056BE4 00052844  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056BE8 00052848  7C 7F 1B 78 */	mr r31, r3
/* 80056BEC 0005284C  40 82 00 0C */	bne lbl_80056BF8
/* 80056BF0 00052850  38 60 00 00 */	li r3, 0
/* 80056BF4 00052854  48 00 00 44 */	b lbl_80056C38
lbl_80056BF8:
/* 80056BF8 00052858  38 80 00 05 */	li r4, 5
/* 80056BFC 0005285C  38 A0 00 00 */	li r5, 0
/* 80056C00 00052860  48 38 42 FD */	bl func_803DAEFC
/* 80056C04 00052864  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 80056C08 00052868  41 82 00 0C */	beq lbl_80056C14
/* 80056C0C 0005286C  28 00 01 EF */	cmplwi r0, 0x1ef
/* 80056C10 00052870  40 81 00 0C */	ble lbl_80056C1C
lbl_80056C14:
/* 80056C14 00052874  38 60 00 00 */	li r3, 0
/* 80056C18 00052878  48 00 00 20 */	b lbl_80056C38
lbl_80056C1C:
/* 80056C1C 0005287C  7F E3 FB 78 */	mr r3, r31
/* 80056C20 00052880  38 80 00 AB */	li r4, 0xab
/* 80056C24 00052884  38 A0 00 00 */	li r5, 0
/* 80056C28 00052888  48 38 42 D5 */	bl func_803DAEFC
/* 80056C2C 0005288C  7C 03 00 D0 */	neg r0, r3
/* 80056C30 00052890  7C 00 1B 78 */	or r0, r0, r3
/* 80056C34 00052894  54 03 0F FE */	srwi r3, r0, 0x1f
lbl_80056C38:
/* 80056C38 00052898  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056C3C 0005289C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056C40 000528A0  7C 08 03 A6 */	mtlr r0
/* 80056C44 000528A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80056C48 000528A8  4E 80 00 20 */	blr

.global func_80056C4C
func_80056C4C:
/* 80056C4C 000528AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056C50 000528B0  7C 08 02 A6 */	mflr r0
/* 80056C54 000528B4  2C 03 00 00 */	cmpwi r3, 0
/* 80056C58 000528B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056C5C 000528BC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056C60 000528C0  7C 7F 1B 78 */	mr r31, r3
/* 80056C64 000528C4  40 82 00 0C */	bne lbl_80056C70
/* 80056C68 000528C8  38 60 00 00 */	li r3, 0
/* 80056C6C 000528CC  48 00 00 44 */	b lbl_80056CB0
lbl_80056C70:
/* 80056C70 000528D0  38 80 00 05 */	li r4, 5
/* 80056C74 000528D4  38 A0 00 00 */	li r5, 0
/* 80056C78 000528D8  48 38 6D 65 */	bl func_803DD9DC
/* 80056C7C 000528DC  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 80056C80 000528E0  41 82 00 0C */	beq lbl_80056C8C
/* 80056C84 000528E4  28 00 01 EF */	cmplwi r0, 0x1ef
/* 80056C88 000528E8  40 81 00 0C */	ble lbl_80056C94
lbl_80056C8C:
/* 80056C8C 000528EC  38 60 00 00 */	li r3, 0
/* 80056C90 000528F0  48 00 00 20 */	b lbl_80056CB0
lbl_80056C94:
/* 80056C94 000528F4  7F E3 FB 78 */	mr r3, r31
/* 80056C98 000528F8  38 80 00 AB */	li r4, 0xab
/* 80056C9C 000528FC  38 A0 00 00 */	li r5, 0
/* 80056CA0 00052900  48 38 6D 3D */	bl func_803DD9DC
/* 80056CA4 00052904  7C 03 00 D0 */	neg r0, r3
/* 80056CA8 00052908  7C 00 1B 78 */	or r0, r0, r3
/* 80056CAC 0005290C  54 03 0F FE */	srwi r3, r0, 0x1f
lbl_80056CB0:
/* 80056CB0 00052910  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056CB4 00052914  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056CB8 00052918  7C 08 03 A6 */	mtlr r0
/* 80056CBC 0005291C  38 21 00 10 */	addi r1, r1, 0x10
/* 80056CC0 00052920  4E 80 00 20 */	blr

.global func_80056CC4
func_80056CC4:
/* 80056CC4 00052924  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056CC8 00052928  7C 08 02 A6 */	mflr r0
/* 80056CCC 0005292C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056CD0 00052930  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056CD4 00052934  7C 7F 1B 78 */	mr r31, r3
/* 80056CD8 00052938  4B FF FE FD */	bl func_80056BD4
/* 80056CDC 0005293C  2C 03 00 00 */	cmpwi r3, 0
/* 80056CE0 00052940  40 82 00 10 */	bne lbl_80056CF0
/* 80056CE4 00052944  38 60 00 0A */	li r3, 0xa
/* 80056CE8 00052948  48 1F 96 0D */	bl func_802502F4
/* 80056CEC 0005294C  48 00 00 78 */	b lbl_80056D64
lbl_80056CF0:
/* 80056CF0 00052950  7F E3 FB 78 */	mr r3, r31
/* 80056CF4 00052954  38 80 00 AC */	li r4, 0xac
/* 80056CF8 00052958  38 A0 00 00 */	li r5, 0
/* 80056CFC 0005295C  48 38 42 01 */	bl func_803DAEFC
/* 80056D00 00052960  2C 03 00 00 */	cmpwi r3, 0
/* 80056D04 00052964  41 82 00 34 */	beq lbl_80056D38
/* 80056D08 00052968  7F E3 FB 78 */	mr r3, r31
/* 80056D0C 0005296C  38 80 00 03 */	li r4, 3
/* 80056D10 00052970  38 A0 00 00 */	li r5, 0
/* 80056D14 00052974  48 38 41 E9 */	bl func_803DAEFC
/* 80056D18 00052978  2C 03 00 00 */	cmpwi r3, 0
/* 80056D1C 0005297C  41 82 00 10 */	beq lbl_80056D2C
/* 80056D20 00052980  38 60 01 F9 */	li r3, 0x1f9
/* 80056D24 00052984  48 1F 95 D1 */	bl func_802502F4
/* 80056D28 00052988  48 00 00 3C */	b lbl_80056D64
lbl_80056D2C:
/* 80056D2C 0005298C  38 60 01 F8 */	li r3, 0x1f8
/* 80056D30 00052990  48 1F 95 C5 */	bl func_802502F4
/* 80056D34 00052994  48 00 00 30 */	b lbl_80056D64
lbl_80056D38:
/* 80056D38 00052998  7F E3 FB 78 */	mr r3, r31
/* 80056D3C 0005299C  38 80 00 05 */	li r4, 5
/* 80056D40 000529A0  38 A0 00 00 */	li r5, 0
/* 80056D44 000529A4  48 38 41 B9 */	bl func_803DAEFC
/* 80056D48 000529A8  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 80056D4C 000529AC  7C 64 1B 78 */	mr r4, r3
/* 80056D50 000529B0  38 A5 CE 34 */	addi r5, r5, lbl_8063CE34@l
/* 80056D54 000529B4  38 65 00 10 */	addi r3, r5, 0x10
/* 80056D58 000529B8  48 33 B2 3D */	bl func_80391F94
/* 80056D5C 000529BC  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80056D60 000529C0  48 1F 95 95 */	bl func_802502F4
lbl_80056D64:
/* 80056D64 000529C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056D68 000529C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056D6C 000529CC  7C 08 03 A6 */	mtlr r0
/* 80056D70 000529D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80056D74 000529D4  4E 80 00 20 */	blr

.global func_80056D78
func_80056D78:
/* 80056D78 000529D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056D7C 000529DC  7C 08 02 A6 */	mflr r0
/* 80056D80 000529E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056D84 000529E4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056D88 000529E8  7C 7F 1B 78 */	mr r31, r3
/* 80056D8C 000529EC  4B FF FE C1 */	bl func_80056C4C
/* 80056D90 000529F0  2C 03 00 00 */	cmpwi r3, 0
/* 80056D94 000529F4  40 82 00 10 */	bne lbl_80056DA4
/* 80056D98 000529F8  38 60 00 0A */	li r3, 0xa
/* 80056D9C 000529FC  48 1F 95 59 */	bl func_802502F4
/* 80056DA0 00052A00  48 00 00 78 */	b lbl_80056E18
lbl_80056DA4:
/* 80056DA4 00052A04  7F E3 FB 78 */	mr r3, r31
/* 80056DA8 00052A08  38 80 00 AC */	li r4, 0xac
/* 80056DAC 00052A0C  38 A0 00 00 */	li r5, 0
/* 80056DB0 00052A10  48 38 6C 2D */	bl func_803DD9DC
/* 80056DB4 00052A14  2C 03 00 00 */	cmpwi r3, 0
/* 80056DB8 00052A18  41 82 00 34 */	beq lbl_80056DEC
/* 80056DBC 00052A1C  7F E3 FB 78 */	mr r3, r31
/* 80056DC0 00052A20  38 80 00 03 */	li r4, 3
/* 80056DC4 00052A24  38 A0 00 00 */	li r5, 0
/* 80056DC8 00052A28  48 38 6C 15 */	bl func_803DD9DC
/* 80056DCC 00052A2C  2C 03 00 00 */	cmpwi r3, 0
/* 80056DD0 00052A30  41 82 00 10 */	beq lbl_80056DE0
/* 80056DD4 00052A34  38 60 01 F9 */	li r3, 0x1f9
/* 80056DD8 00052A38  48 1F 95 1D */	bl func_802502F4
/* 80056DDC 00052A3C  48 00 00 3C */	b lbl_80056E18
lbl_80056DE0:
/* 80056DE0 00052A40  38 60 01 F8 */	li r3, 0x1f8
/* 80056DE4 00052A44  48 1F 95 11 */	bl func_802502F4
/* 80056DE8 00052A48  48 00 00 30 */	b lbl_80056E18
lbl_80056DEC:
/* 80056DEC 00052A4C  7F E3 FB 78 */	mr r3, r31
/* 80056DF0 00052A50  38 80 00 05 */	li r4, 5
/* 80056DF4 00052A54  38 A0 00 00 */	li r5, 0
/* 80056DF8 00052A58  48 38 6B E5 */	bl func_803DD9DC
/* 80056DFC 00052A5C  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 80056E00 00052A60  7C 64 1B 78 */	mr r4, r3
/* 80056E04 00052A64  38 A5 CE 34 */	addi r5, r5, lbl_8063CE34@l
/* 80056E08 00052A68  38 65 00 10 */	addi r3, r5, 0x10
/* 80056E0C 00052A6C  48 33 B1 89 */	bl func_80391F94
/* 80056E10 00052A70  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80056E14 00052A74  48 1F 94 E1 */	bl func_802502F4
lbl_80056E18:
/* 80056E18 00052A78  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056E1C 00052A7C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056E20 00052A80  7C 08 03 A6 */	mtlr r0
/* 80056E24 00052A84  38 21 00 10 */	addi r1, r1, 0x10
/* 80056E28 00052A88  4E 80 00 20 */	blr

.global func_80056E2C
func_80056E2C:
/* 80056E2C 00052A8C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056E30 00052A90  7C 08 02 A6 */	mflr r0
/* 80056E34 00052A94  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056E38 00052A98  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056E3C 00052A9C  7C 7F 1B 78 */	mr r31, r3
/* 80056E40 00052AA0  4B FF FD 95 */	bl func_80056BD4
/* 80056E44 00052AA4  2C 03 00 00 */	cmpwi r3, 0
/* 80056E48 00052AA8  40 82 00 0C */	bne lbl_80056E54
/* 80056E4C 00052AAC  38 60 00 00 */	li r3, 0
/* 80056E50 00052AB0  48 00 00 20 */	b lbl_80056E70
lbl_80056E54:
/* 80056E54 00052AB4  7F E3 FB 78 */	mr r3, r31
/* 80056E58 00052AB8  38 80 00 AC */	li r4, 0xac
/* 80056E5C 00052ABC  38 A0 00 00 */	li r5, 0
/* 80056E60 00052AC0  48 38 40 9D */	bl func_803DAEFC
/* 80056E64 00052AC4  7C 03 00 D0 */	neg r0, r3
/* 80056E68 00052AC8  7C 00 1B 78 */	or r0, r0, r3
/* 80056E6C 00052ACC  54 03 0F FE */	srwi r3, r0, 0x1f
lbl_80056E70:
/* 80056E70 00052AD0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056E74 00052AD4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056E78 00052AD8  7C 08 03 A6 */	mtlr r0
/* 80056E7C 00052ADC  38 21 00 10 */	addi r1, r1, 0x10
/* 80056E80 00052AE0  4E 80 00 20 */	blr

.global func_80056E84
func_80056E84:
/* 80056E84 00052AE4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056E88 00052AE8  7C 08 02 A6 */	mflr r0
/* 80056E8C 00052AEC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056E90 00052AF0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056E94 00052AF4  7C 7F 1B 78 */	mr r31, r3
/* 80056E98 00052AF8  4B FF FD B5 */	bl func_80056C4C
/* 80056E9C 00052AFC  2C 03 00 00 */	cmpwi r3, 0
/* 80056EA0 00052B00  40 82 00 0C */	bne lbl_80056EAC
/* 80056EA4 00052B04  38 60 00 00 */	li r3, 0
/* 80056EA8 00052B08  48 00 00 20 */	b lbl_80056EC8
lbl_80056EAC:
/* 80056EAC 00052B0C  7F E3 FB 78 */	mr r3, r31
/* 80056EB0 00052B10  38 80 00 AC */	li r4, 0xac
/* 80056EB4 00052B14  38 A0 00 00 */	li r5, 0
/* 80056EB8 00052B18  48 38 6B 25 */	bl func_803DD9DC
/* 80056EBC 00052B1C  7C 03 00 D0 */	neg r0, r3
/* 80056EC0 00052B20  7C 00 1B 78 */	or r0, r0, r3
/* 80056EC4 00052B24  54 03 0F FE */	srwi r3, r0, 0x1f
lbl_80056EC8:
/* 80056EC8 00052B28  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056ECC 00052B2C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056ED0 00052B30  7C 08 03 A6 */	mtlr r0
/* 80056ED4 00052B34  38 21 00 10 */	addi r1, r1, 0x10
/* 80056ED8 00052B38  4E 80 00 20 */	blr

.global func_80056EDC
func_80056EDC:
/* 80056EDC 00052B3C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056EE0 00052B40  7C 08 02 A6 */	mflr r0
/* 80056EE4 00052B44  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056EE8 00052B48  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056EEC 00052B4C  7C 7F 1B 78 */	mr r31, r3
/* 80056EF0 00052B50  4B FF FC E5 */	bl func_80056BD4
/* 80056EF4 00052B54  2C 03 00 00 */	cmpwi r3, 0
/* 80056EF8 00052B58  40 82 00 0C */	bne lbl_80056F04
/* 80056EFC 00052B5C  38 60 00 00 */	li r3, 0
/* 80056F00 00052B60  48 00 00 20 */	b lbl_80056F20
lbl_80056F04:
/* 80056F04 00052B64  7F E3 FB 78 */	mr r3, r31
/* 80056F08 00052B68  38 80 00 03 */	li r4, 3
/* 80056F0C 00052B6C  38 A0 00 00 */	li r5, 0
/* 80056F10 00052B70  48 38 3F ED */	bl func_803DAEFC
/* 80056F14 00052B74  7C 03 00 D0 */	neg r0, r3
/* 80056F18 00052B78  7C 00 1B 78 */	or r0, r0, r3
/* 80056F1C 00052B7C  54 03 0F FE */	srwi r3, r0, 0x1f
lbl_80056F20:
/* 80056F20 00052B80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056F24 00052B84  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056F28 00052B88  7C 08 03 A6 */	mtlr r0
/* 80056F2C 00052B8C  38 21 00 10 */	addi r1, r1, 0x10
/* 80056F30 00052B90  4E 80 00 20 */	blr

.global func_80056F34
func_80056F34:
/* 80056F34 00052B94  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056F38 00052B98  7C 08 02 A6 */	mflr r0
/* 80056F3C 00052B9C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056F40 00052BA0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056F44 00052BA4  7C 9F 23 78 */	mr r31, r4
/* 80056F48 00052BA8  48 38 52 55 */	bl func_803DC19C
/* 80056F4C 00052BAC  7F E4 FB 78 */	mr r4, r31
/* 80056F50 00052BB0  48 00 00 19 */	bl func_80056F68
/* 80056F54 00052BB4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80056F58 00052BB8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80056F5C 00052BBC  7C 08 03 A6 */	mtlr r0
/* 80056F60 00052BC0  38 21 00 10 */	addi r1, r1, 0x10
/* 80056F64 00052BC4  4E 80 00 20 */	blr

.global func_80056F68
func_80056F68:
/* 80056F68 00052BC8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80056F6C 00052BCC  7C 08 02 A6 */	mflr r0
/* 80056F70 00052BD0  38 A0 00 00 */	li r5, 0
/* 80056F74 00052BD4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80056F78 00052BD8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80056F7C 00052BDC  7C 9F 23 78 */	mr r31, r4
/* 80056F80 00052BE0  38 80 00 05 */	li r4, 5
/* 80056F84 00052BE4  93 C1 00 08 */	stw r30, 8(r1)
/* 80056F88 00052BE8  7C 7E 1B 78 */	mr r30, r3
/* 80056F8C 00052BEC  48 38 3F 71 */	bl func_803DAEFC
/* 80056F90 00052BF0  2C 03 01 ED */	cmpwi r3, 0x1ed
/* 80056F94 00052BF4  40 82 00 BC */	bne lbl_80057050
/* 80056F98 00052BF8  7F C3 F3 78 */	mr r3, r30
/* 80056F9C 00052BFC  38 80 00 70 */	li r4, 0x70
/* 80056FA0 00052C00  38 A0 00 00 */	li r5, 0
/* 80056FA4 00052C04  48 38 3F 59 */	bl func_803DAEFC
/* 80056FA8 00052C08  28 03 00 11 */	cmplwi r3, 0x11
/* 80056FAC 00052C0C  41 81 00 9C */	bgt lbl_80057048
/* 80056FB0 00052C10  3C 80 80 41 */	lis r4, lbl_8040AF58@ha
/* 80056FB4 00052C14  54 60 10 3A */	slwi r0, r3, 2
/* 80056FB8 00052C18  38 84 AF 58 */	addi r4, r4, lbl_8040AF58@l
/* 80056FBC 00052C1C  7C 84 00 2E */	lwzx r4, r4, r0
/* 80056FC0 00052C20  7C 89 03 A6 */	mtctr r4
/* 80056FC4 00052C24  4E 80 04 20 */	bctr
/* 80056FC8 00052C28  38 60 00 01 */	li r3, 1
/* 80056FCC 00052C2C  48 00 01 04 */	b lbl_800570D0
/* 80056FD0 00052C30  38 60 00 02 */	li r3, 2
/* 80056FD4 00052C34  48 00 00 FC */	b lbl_800570D0
/* 80056FD8 00052C38  38 60 00 03 */	li r3, 3
/* 80056FDC 00052C3C  48 00 00 F4 */	b lbl_800570D0
/* 80056FE0 00052C40  38 60 00 04 */	li r3, 4
/* 80056FE4 00052C44  48 00 00 EC */	b lbl_800570D0
/* 80056FE8 00052C48  38 60 00 05 */	li r3, 5
/* 80056FEC 00052C4C  48 00 00 E4 */	b lbl_800570D0
/* 80056FF0 00052C50  38 60 00 06 */	li r3, 6
/* 80056FF4 00052C54  48 00 00 DC */	b lbl_800570D0
/* 80056FF8 00052C58  38 60 00 07 */	li r3, 7
/* 80056FFC 00052C5C  48 00 00 D4 */	b lbl_800570D0
/* 80057000 00052C60  38 60 00 08 */	li r3, 8
/* 80057004 00052C64  48 00 00 CC */	b lbl_800570D0
/* 80057008 00052C68  38 60 00 0A */	li r3, 0xa
/* 8005700C 00052C6C  48 00 00 C4 */	b lbl_800570D0
/* 80057010 00052C70  38 60 00 0B */	li r3, 0xb
/* 80057014 00052C74  48 00 00 BC */	b lbl_800570D0
/* 80057018 00052C78  38 60 00 0C */	li r3, 0xc
/* 8005701C 00052C7C  48 00 00 B4 */	b lbl_800570D0
/* 80057020 00052C80  38 60 00 0D */	li r3, 0xd
/* 80057024 00052C84  48 00 00 AC */	b lbl_800570D0
/* 80057028 00052C88  38 60 00 0E */	li r3, 0xe
/* 8005702C 00052C8C  48 00 00 A4 */	b lbl_800570D0
/* 80057030 00052C90  38 60 00 0F */	li r3, 0xf
/* 80057034 00052C94  48 00 00 9C */	b lbl_800570D0
/* 80057038 00052C98  38 60 00 10 */	li r3, 0x10
/* 8005703C 00052C9C  48 00 00 94 */	b lbl_800570D0
/* 80057040 00052CA0  38 60 00 11 */	li r3, 0x11
/* 80057044 00052CA4  48 00 00 8C */	b lbl_800570D0
lbl_80057048:
/* 80057048 00052CA8  38 60 00 00 */	li r3, 0
/* 8005704C 00052CAC  48 00 00 84 */	b lbl_800570D0
lbl_80057050:
/* 80057050 00052CB0  2C 1F 00 00 */	cmpwi r31, 0
/* 80057054 00052CB4  40 82 00 1C */	bne lbl_80057070
/* 80057058 00052CB8  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 8005705C 00052CBC  7C 64 1B 78 */	mr r4, r3
/* 80057060 00052CC0  38 A5 CE 34 */	addi r5, r5, lbl_8063CE34@l
/* 80057064 00052CC4  38 65 00 10 */	addi r3, r5, 0x10
/* 80057068 00052CC8  48 33 A9 5D */	bl func_803919C4
/* 8005706C 00052CCC  48 00 00 64 */	b lbl_800570D0
lbl_80057070:
/* 80057070 00052CD0  2C 03 01 9D */	cmpwi r3, 0x19d
/* 80057074 00052CD4  40 82 00 48 */	bne lbl_800570BC
/* 80057078 00052CD8  7F C3 F3 78 */	mr r3, r30
/* 8005707C 00052CDC  38 80 00 70 */	li r4, 0x70
/* 80057080 00052CE0  38 A0 00 00 */	li r5, 0
/* 80057084 00052CE4  48 38 3E 79 */	bl func_803DAEFC
/* 80057088 00052CE8  2C 03 00 01 */	cmpwi r3, 1
/* 8005708C 00052CEC  41 82 00 20 */	beq lbl_800570AC
/* 80057090 00052CF0  40 80 00 08 */	bge lbl_80057098
/* 80057094 00052CF4  48 00 00 10 */	b lbl_800570A4
lbl_80057098:
/* 80057098 00052CF8  2C 03 00 03 */	cmpwi r3, 3
/* 8005709C 00052CFC  40 80 00 08 */	bge lbl_800570A4
/* 800570A0 00052D00  48 00 00 14 */	b lbl_800570B4
lbl_800570A4:
/* 800570A4 00052D04  38 60 00 0C */	li r3, 0xc
/* 800570A8 00052D08  48 00 00 28 */	b lbl_800570D0
lbl_800570AC:
/* 800570AC 00052D0C  38 60 00 04 */	li r3, 4
/* 800570B0 00052D10  48 00 00 20 */	b lbl_800570D0
lbl_800570B4:
/* 800570B4 00052D14  38 60 00 08 */	li r3, 8
/* 800570B8 00052D18  48 00 00 18 */	b lbl_800570D0
lbl_800570BC:
/* 800570BC 00052D1C  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 800570C0 00052D20  7C 64 1B 78 */	mr r4, r3
/* 800570C4 00052D24  38 A5 CE 34 */	addi r5, r5, lbl_8063CE34@l
/* 800570C8 00052D28  38 65 00 10 */	addi r3, r5, 0x10
/* 800570CC 00052D2C  48 33 A9 2D */	bl func_803919F8
lbl_800570D0:
/* 800570D0 00052D30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800570D4 00052D34  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800570D8 00052D38  83 C1 00 08 */	lwz r30, 8(r1)
/* 800570DC 00052D3C  7C 08 03 A6 */	mtlr r0
/* 800570E0 00052D40  38 21 00 10 */	addi r1, r1, 0x10
/* 800570E4 00052D44  4E 80 00 20 */	blr

.global func_800570E8
func_800570E8:
/* 800570E8 00052D48  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800570EC 00052D4C  7C 08 02 A6 */	mflr r0
/* 800570F0 00052D50  90 01 00 44 */	stw r0, 0x44(r1)
/* 800570F4 00052D54  38 00 00 00 */	li r0, 0
/* 800570F8 00052D58  38 A1 00 08 */	addi r5, r1, 8
/* 800570FC 00052D5C  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80057100 00052D60  7C 9F 23 78 */	mr r31, r4
/* 80057104 00052D64  38 80 00 97 */	li r4, 0x97
/* 80057108 00052D68  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8005710C 00052D6C  7C 7E 1B 78 */	mr r30, r3
/* 80057110 00052D70  90 01 00 08 */	stw r0, 8(r1)
/* 80057114 00052D74  48 38 45 65 */	bl func_803DB678
/* 80057118 00052D78  7F C3 F3 78 */	mr r3, r30
/* 8005711C 00052D7C  38 A1 00 08 */	addi r5, r1, 8
/* 80057120 00052D80  38 80 00 6E */	li r4, 0x6e
/* 80057124 00052D84  48 38 45 55 */	bl func_803DB678
/* 80057128 00052D88  38 00 00 37 */	li r0, 0x37
/* 8005712C 00052D8C  7F C3 F3 78 */	mr r3, r30
/* 80057130 00052D90  90 01 00 08 */	stw r0, 8(r1)
/* 80057134 00052D94  38 A1 00 08 */	addi r5, r1, 8
/* 80057138 00052D98  38 80 00 98 */	li r4, 0x98
/* 8005713C 00052D9C  48 38 45 3D */	bl func_803DB678
/* 80057140 00052DA0  38 00 00 10 */	li r0, 0x10
/* 80057144 00052DA4  7F C3 F3 78 */	mr r3, r30
/* 80057148 00052DA8  90 01 00 08 */	stw r0, 8(r1)
/* 8005714C 00052DAC  38 A1 00 08 */	addi r5, r1, 8
/* 80057150 00052DB0  38 80 00 79 */	li r4, 0x79
/* 80057154 00052DB4  48 38 45 25 */	bl func_803DB678
/* 80057158 00052DB8  A0 1F 00 00 */	lhz r0, 0(r31)
/* 8005715C 00052DBC  7F C3 F3 78 */	mr r3, r30
/* 80057160 00052DC0  38 A1 00 08 */	addi r5, r1, 8
/* 80057164 00052DC4  38 80 00 94 */	li r4, 0x94
/* 80057168 00052DC8  90 01 00 08 */	stw r0, 8(r1)
/* 8005716C 00052DCC  48 38 45 0D */	bl func_803DB678
/* 80057170 00052DD0  A0 1F 00 02 */	lhz r0, 2(r31)
/* 80057174 00052DD4  7F C3 F3 78 */	mr r3, r30
/* 80057178 00052DD8  38 A1 00 08 */	addi r5, r1, 8
/* 8005717C 00052DDC  38 80 00 95 */	li r4, 0x95
/* 80057180 00052DE0  90 01 00 08 */	stw r0, 8(r1)
/* 80057184 00052DE4  48 38 44 F5 */	bl func_803DB678
/* 80057188 00052DE8  A0 1F 00 04 */	lhz r0, 4(r31)
/* 8005718C 00052DEC  7F C3 F3 78 */	mr r3, r30
/* 80057190 00052DF0  38 A1 00 08 */	addi r5, r1, 8
/* 80057194 00052DF4  38 80 00 96 */	li r4, 0x96
/* 80057198 00052DF8  90 01 00 08 */	stw r0, 8(r1)
/* 8005719C 00052DFC  48 38 44 DD */	bl func_803DB678
/* 800571A0 00052E00  A0 1F 00 06 */	lhz r0, 6(r31)
/* 800571A4 00052E04  7F C3 F3 78 */	mr r3, r30
/* 800571A8 00052E08  38 A1 00 08 */	addi r5, r1, 8
/* 800571AC 00052E0C  38 80 00 9B */	li r4, 0x9b
/* 800571B0 00052E10  90 01 00 08 */	stw r0, 8(r1)
/* 800571B4 00052E14  48 38 44 C5 */	bl func_803DB678
/* 800571B8 00052E18  80 1F 00 08 */	lwz r0, 8(r31)
/* 800571BC 00052E1C  7F C3 F3 78 */	mr r3, r30
/* 800571C0 00052E20  38 A1 00 08 */	addi r5, r1, 8
/* 800571C4 00052E24  38 80 00 07 */	li r4, 7
/* 800571C8 00052E28  90 01 00 08 */	stw r0, 8(r1)
/* 800571CC 00052E2C  48 38 44 AD */	bl func_803DB678
/* 800571D0 00052E30  38 61 00 10 */	addi r3, r1, 0x10
/* 800571D4 00052E34  38 9F 00 0C */	addi r4, r31, 0xc
/* 800571D8 00052E38  38 A0 00 10 */	li r5, 0x10
/* 800571DC 00052E3C  48 11 FC D9 */	bl func_80176EB4
/* 800571E0 00052E40  7F C3 F3 78 */	mr r3, r30
/* 800571E4 00052E44  38 A1 00 10 */	addi r5, r1, 0x10
/* 800571E8 00052E48  38 80 00 8F */	li r4, 0x8f
/* 800571EC 00052E4C  48 38 44 8D */	bl func_803DB678
/* 800571F0 00052E50  80 01 00 44 */	lwz r0, 0x44(r1)
/* 800571F4 00052E54  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 800571F8 00052E58  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 800571FC 00052E5C  7C 08 03 A6 */	mtlr r0
/* 80057200 00052E60  38 21 00 40 */	addi r1, r1, 0x40
/* 80057204 00052E64  4E 80 00 20 */	blr

.global func_80057208
func_80057208:
/* 80057208 00052E68  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005720C 00052E6C  7C 08 02 A6 */	mflr r0
/* 80057210 00052E70  90 01 00 24 */	stw r0, 0x24(r1)
/* 80057214 00052E74  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80057218 00052E78  7C 7F 1B 78 */	mr r31, r3
/* 8005721C 00052E7C  4B FF FA 31 */	bl func_80056C4C
/* 80057220 00052E80  2C 03 00 00 */	cmpwi r3, 0
/* 80057224 00052E84  41 82 00 F4 */	beq lbl_80057318
/* 80057228 00052E88  7F E3 FB 78 */	mr r3, r31
/* 8005722C 00052E8C  38 80 00 36 */	li r4, 0x36
/* 80057230 00052E90  38 A0 00 00 */	li r5, 0
/* 80057234 00052E94  48 38 67 A9 */	bl func_803DD9DC
/* 80057238 00052E98  2C 03 00 00 */	cmpwi r3, 0
/* 8005723C 00052E9C  41 82 00 28 */	beq lbl_80057264
/* 80057240 00052EA0  7F E3 FB 78 */	mr r3, r31
/* 80057244 00052EA4  38 80 00 42 */	li r4, 0x42
/* 80057248 00052EA8  38 A0 00 00 */	li r5, 0
/* 8005724C 00052EAC  48 38 67 91 */	bl func_803DD9DC
/* 80057250 00052EB0  90 61 00 08 */	stw r3, 8(r1)
/* 80057254 00052EB4  7F E3 FB 78 */	mr r3, r31
/* 80057258 00052EB8  38 A1 00 08 */	addi r5, r1, 8
/* 8005725C 00052EBC  38 80 00 3A */	li r4, 0x3a
/* 80057260 00052EC0  48 38 42 C5 */	bl func_803DB524
lbl_80057264:
/* 80057264 00052EC4  7F E3 FB 78 */	mr r3, r31
/* 80057268 00052EC8  38 80 00 37 */	li r4, 0x37
/* 8005726C 00052ECC  38 A0 00 00 */	li r5, 0
/* 80057270 00052ED0  48 38 67 6D */	bl func_803DD9DC
/* 80057274 00052ED4  2C 03 00 00 */	cmpwi r3, 0
/* 80057278 00052ED8  41 82 00 28 */	beq lbl_800572A0
/* 8005727C 00052EDC  7F E3 FB 78 */	mr r3, r31
/* 80057280 00052EE0  38 80 00 43 */	li r4, 0x43
/* 80057284 00052EE4  38 A0 00 00 */	li r5, 0
/* 80057288 00052EE8  48 38 67 55 */	bl func_803DD9DC
/* 8005728C 00052EEC  90 61 00 08 */	stw r3, 8(r1)
/* 80057290 00052EF0  7F E3 FB 78 */	mr r3, r31
/* 80057294 00052EF4  38 A1 00 08 */	addi r5, r1, 8
/* 80057298 00052EF8  38 80 00 3B */	li r4, 0x3b
/* 8005729C 00052EFC  48 38 42 89 */	bl func_803DB524
lbl_800572A0:
/* 800572A0 00052F00  7F E3 FB 78 */	mr r3, r31
/* 800572A4 00052F04  38 80 00 38 */	li r4, 0x38
/* 800572A8 00052F08  38 A0 00 00 */	li r5, 0
/* 800572AC 00052F0C  48 38 67 31 */	bl func_803DD9DC
/* 800572B0 00052F10  2C 03 00 00 */	cmpwi r3, 0
/* 800572B4 00052F14  41 82 00 28 */	beq lbl_800572DC
/* 800572B8 00052F18  7F E3 FB 78 */	mr r3, r31
/* 800572BC 00052F1C  38 80 00 44 */	li r4, 0x44
/* 800572C0 00052F20  38 A0 00 00 */	li r5, 0
/* 800572C4 00052F24  48 38 67 19 */	bl func_803DD9DC
/* 800572C8 00052F28  90 61 00 08 */	stw r3, 8(r1)
/* 800572CC 00052F2C  7F E3 FB 78 */	mr r3, r31
/* 800572D0 00052F30  38 A1 00 08 */	addi r5, r1, 8
/* 800572D4 00052F34  38 80 00 3C */	li r4, 0x3c
/* 800572D8 00052F38  48 38 42 4D */	bl func_803DB524
lbl_800572DC:
/* 800572DC 00052F3C  7F E3 FB 78 */	mr r3, r31
/* 800572E0 00052F40  38 80 00 39 */	li r4, 0x39
/* 800572E4 00052F44  38 A0 00 00 */	li r5, 0
/* 800572E8 00052F48  48 38 66 F5 */	bl func_803DD9DC
/* 800572EC 00052F4C  2C 03 00 00 */	cmpwi r3, 0
/* 800572F0 00052F50  41 82 00 28 */	beq lbl_80057318
/* 800572F4 00052F54  7F E3 FB 78 */	mr r3, r31
/* 800572F8 00052F58  38 80 00 45 */	li r4, 0x45
/* 800572FC 00052F5C  38 A0 00 00 */	li r5, 0
/* 80057300 00052F60  48 38 66 DD */	bl func_803DD9DC
/* 80057304 00052F64  90 61 00 08 */	stw r3, 8(r1)
/* 80057308 00052F68  7F E3 FB 78 */	mr r3, r31
/* 8005730C 00052F6C  38 A1 00 08 */	addi r5, r1, 8
/* 80057310 00052F70  38 80 00 3D */	li r4, 0x3d
/* 80057314 00052F74  48 38 42 11 */	bl func_803DB524
lbl_80057318:
/* 80057318 00052F78  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005731C 00052F7C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80057320 00052F80  7C 08 03 A6 */	mtlr r0
/* 80057324 00052F84  38 21 00 20 */	addi r1, r1, 0x20
/* 80057328 00052F88  4E 80 00 20 */	blr

.global func_8005732C
func_8005732C:
/* 8005732C 00052F8C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80057330 00052F90  7C 08 02 A6 */	mflr r0
/* 80057334 00052F94  90 01 00 24 */	stw r0, 0x24(r1)
/* 80057338 00052F98  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8005733C 00052F9C  7C 7F 1B 78 */	mr r31, r3
/* 80057340 00052FA0  4B FF F8 95 */	bl func_80056BD4
/* 80057344 00052FA4  2C 03 00 00 */	cmpwi r3, 0
/* 80057348 00052FA8  41 82 00 F4 */	beq lbl_8005743C
/* 8005734C 00052FAC  7F E3 FB 78 */	mr r3, r31
/* 80057350 00052FB0  38 80 00 36 */	li r4, 0x36
/* 80057354 00052FB4  38 A0 00 00 */	li r5, 0
/* 80057358 00052FB8  48 38 3B A5 */	bl func_803DAEFC
/* 8005735C 00052FBC  2C 03 00 00 */	cmpwi r3, 0
/* 80057360 00052FC0  41 82 00 28 */	beq lbl_80057388
/* 80057364 00052FC4  7F E3 FB 78 */	mr r3, r31
/* 80057368 00052FC8  38 80 00 42 */	li r4, 0x42
/* 8005736C 00052FCC  38 A0 00 00 */	li r5, 0
/* 80057370 00052FD0  48 38 3B 8D */	bl func_803DAEFC
/* 80057374 00052FD4  90 61 00 08 */	stw r3, 8(r1)
/* 80057378 00052FD8  7F E3 FB 78 */	mr r3, r31
/* 8005737C 00052FDC  38 A1 00 08 */	addi r5, r1, 8
/* 80057380 00052FE0  38 80 00 3A */	li r4, 0x3a
/* 80057384 00052FE4  48 38 42 F5 */	bl func_803DB678
lbl_80057388:
/* 80057388 00052FE8  7F E3 FB 78 */	mr r3, r31
/* 8005738C 00052FEC  38 80 00 37 */	li r4, 0x37
/* 80057390 00052FF0  38 A0 00 00 */	li r5, 0
/* 80057394 00052FF4  48 38 3B 69 */	bl func_803DAEFC
/* 80057398 00052FF8  2C 03 00 00 */	cmpwi r3, 0
/* 8005739C 00052FFC  41 82 00 28 */	beq lbl_800573C4
/* 800573A0 00053000  7F E3 FB 78 */	mr r3, r31
/* 800573A4 00053004  38 80 00 43 */	li r4, 0x43
/* 800573A8 00053008  38 A0 00 00 */	li r5, 0
/* 800573AC 0005300C  48 38 3B 51 */	bl func_803DAEFC
/* 800573B0 00053010  90 61 00 08 */	stw r3, 8(r1)
/* 800573B4 00053014  7F E3 FB 78 */	mr r3, r31
/* 800573B8 00053018  38 A1 00 08 */	addi r5, r1, 8
/* 800573BC 0005301C  38 80 00 3B */	li r4, 0x3b
/* 800573C0 00053020  48 38 42 B9 */	bl func_803DB678
lbl_800573C4:
/* 800573C4 00053024  7F E3 FB 78 */	mr r3, r31
/* 800573C8 00053028  38 80 00 38 */	li r4, 0x38
/* 800573CC 0005302C  38 A0 00 00 */	li r5, 0
/* 800573D0 00053030  48 38 3B 2D */	bl func_803DAEFC
/* 800573D4 00053034  2C 03 00 00 */	cmpwi r3, 0
/* 800573D8 00053038  41 82 00 28 */	beq lbl_80057400
/* 800573DC 0005303C  7F E3 FB 78 */	mr r3, r31
/* 800573E0 00053040  38 80 00 44 */	li r4, 0x44
/* 800573E4 00053044  38 A0 00 00 */	li r5, 0
/* 800573E8 00053048  48 38 3B 15 */	bl func_803DAEFC
/* 800573EC 0005304C  90 61 00 08 */	stw r3, 8(r1)
/* 800573F0 00053050  7F E3 FB 78 */	mr r3, r31
/* 800573F4 00053054  38 A1 00 08 */	addi r5, r1, 8
/* 800573F8 00053058  38 80 00 3C */	li r4, 0x3c
/* 800573FC 0005305C  48 38 42 7D */	bl func_803DB678
lbl_80057400:
/* 80057400 00053060  7F E3 FB 78 */	mr r3, r31
/* 80057404 00053064  38 80 00 39 */	li r4, 0x39
/* 80057408 00053068  38 A0 00 00 */	li r5, 0
/* 8005740C 0005306C  48 38 3A F1 */	bl func_803DAEFC
/* 80057410 00053070  2C 03 00 00 */	cmpwi r3, 0
/* 80057414 00053074  41 82 00 28 */	beq lbl_8005743C
/* 80057418 00053078  7F E3 FB 78 */	mr r3, r31
/* 8005741C 0005307C  38 80 00 45 */	li r4, 0x45
/* 80057420 00053080  38 A0 00 00 */	li r5, 0
/* 80057424 00053084  48 38 3A D9 */	bl func_803DAEFC
/* 80057428 00053088  90 61 00 08 */	stw r3, 8(r1)
/* 8005742C 0005308C  7F E3 FB 78 */	mr r3, r31
/* 80057430 00053090  38 A1 00 08 */	addi r5, r1, 8
/* 80057434 00053094  38 80 00 3D */	li r4, 0x3d
/* 80057438 00053098  48 38 42 41 */	bl func_803DB678
lbl_8005743C:
/* 8005743C 0005309C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80057440 000530A0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80057444 000530A4  7C 08 03 A6 */	mtlr r0
/* 80057448 000530A8  38 21 00 20 */	addi r1, r1, 0x20
/* 8005744C 000530AC  4E 80 00 20 */	blr

.global func_80057450
func_80057450:
/* 80057450 000530B0  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 80057454 000530B4  7C 08 02 A6 */	mflr r0
/* 80057458 000530B8  38 80 00 05 */	li r4, 5
/* 8005745C 000530BC  38 A0 00 00 */	li r5, 0
/* 80057460 000530C0  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 80057464 000530C4  93 E1 00 9C */	stw r31, 0x9c(r1)
/* 80057468 000530C8  7C 7F 1B 78 */	mr r31, r3
/* 8005746C 000530CC  48 38 3A 91 */	bl func_803DAEFC
/* 80057470 000530D0  3C A0 80 64 */	lis r5, lbl_8063CE34@ha
/* 80057474 000530D4  7C 64 1B 78 */	mr r4, r3
/* 80057478 000530D8  38 A5 CE 34 */	addi r5, r5, lbl_8063CE34@l
/* 8005747C 000530DC  38 65 00 10 */	addi r3, r5, 0x10
/* 80057480 000530E0  48 33 AB 15 */	bl func_80391F94
/* 80057484 000530E4  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80057488 000530E8  38 81 00 50 */	addi r4, r1, 0x50
/* 8005748C 000530EC  48 1F 8F 4D */	bl func_802503D8
/* 80057490 000530F0  38 61 00 10 */	addi r3, r1, 0x10
/* 80057494 000530F4  38 81 00 50 */	addi r4, r1, 0x50
/* 80057498 000530F8  38 A0 00 20 */	li r5, 0x20
/* 8005749C 000530FC  48 11 FA 19 */	bl func_80176EB4
/* 800574A0 00053100  7F E3 FB 78 */	mr r3, r31
/* 800574A4 00053104  38 A1 00 10 */	addi r5, r1, 0x10
/* 800574A8 00053108  38 80 00 74 */	li r4, 0x74
/* 800574AC 0005310C  48 38 41 CD */	bl func_803DB678
/* 800574B0 00053110  38 00 00 00 */	li r0, 0
/* 800574B4 00053114  7F E3 FB 78 */	mr r3, r31
/* 800574B8 00053118  90 01 00 08 */	stw r0, 8(r1)
/* 800574BC 0005311C  38 A1 00 08 */	addi r5, r1, 8
/* 800574C0 00053120  38 80 00 4D */	li r4, 0x4d
/* 800574C4 00053124  48 38 41 B5 */	bl func_803DB678
/* 800574C8 00053128  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 800574CC 0005312C  83 E1 00 9C */	lwz r31, 0x9c(r1)
/* 800574D0 00053130  7C 08 03 A6 */	mtlr r0
/* 800574D4 00053134  38 21 00 A0 */	addi r1, r1, 0xa0
/* 800574D8 00053138  4E 80 00 20 */	blr

.global func_800574DC
func_800574DC:
/* 800574DC 0005313C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800574E0 00053140  7C 08 02 A6 */	mflr r0
/* 800574E4 00053144  90 01 00 14 */	stw r0, 0x14(r1)
/* 800574E8 00053148  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800574EC 0005314C  7C 9F 23 78 */	mr r31, r4
/* 800574F0 00053150  93 C1 00 08 */	stw r30, 8(r1)
/* 800574F4 00053154  7C 7E 1B 78 */	mr r30, r3
/* 800574F8 00053158  7C A3 2B 78 */	mr r3, r5
/* 800574FC 0005315C  4B FF F5 61 */	bl func_80056A5C
/* 80057500 00053160  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 80057504 00053164  2C 00 00 01 */	cmpwi r0, 1
/* 80057508 00053168  41 82 00 1C */	beq lbl_80057524
/* 8005750C 0005316C  40 80 00 34 */	bge lbl_80057540
/* 80057510 00053170  2C 00 00 00 */	cmpwi r0, 0
/* 80057514 00053174  40 80 00 08 */	bge lbl_8005751C
/* 80057518 00053178  48 00 00 28 */	b lbl_80057540
lbl_8005751C:
/* 8005751C 0005317C  38 C0 0E 8D */	li r6, 0xe8d
/* 80057520 00053180  48 00 00 10 */	b lbl_80057530
lbl_80057524:
/* 80057524 00053184  38 C0 0E 90 */	li r6, 0xe90
/* 80057528 00053188  48 00 00 08 */	b lbl_80057530
/* 8005752C 0005318C  48 00 00 14 */	b lbl_80057540
lbl_80057530:
/* 80057530 00053190  7F C3 F3 78 */	mr r3, r30
/* 80057534 00053194  7F E4 FB 78 */	mr r4, r31
/* 80057538 00053198  38 A0 00 02 */	li r5, 2
/* 8005753C 0005319C  48 1F C9 79 */	bl func_80253EB4
lbl_80057540:
/* 80057540 000531A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80057544 000531A4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80057548 000531A8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8005754C 000531AC  7C 08 03 A6 */	mtlr r0
/* 80057550 000531B0  38 21 00 10 */	addi r1, r1, 0x10
/* 80057554 000531B4  4E 80 00 20 */	blr

.global func_80057558
func_80057558:
/* 80057558 000531B8  4E 80 00 20 */	blr

.global func_8005755C
func_8005755C:
/* 8005755C 000531BC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057560 000531C0  80 03 00 08 */	lwz r0, 8(r3)
/* 80057564 000531C4  54 03 EF FE */	rlwinm r3, r0, 0x1d, 0x1f, 0x1f
/* 80057568 000531C8  4E 80 00 20 */	blr

.global func_8005756C
func_8005756C:
/* 8005756C 000531CC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057570 000531D0  80 03 00 08 */	lwz r0, 8(r3)
/* 80057574 000531D4  54 03 4F FE */	rlwinm r3, r0, 9, 0x1f, 0x1f
/* 80057578 000531D8  4E 80 00 20 */	blr
lbl_8005757C:
/* 8005757C 000531DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80057580 000531E0  7C 08 02 A6 */	mflr r0
/* 80057584 000531E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80057588 000531E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005758C 000531EC  3F E0 80 41 */	lis r31, lbl_8040AF58@ha
/* 80057590 000531F0  3B FF AF 58 */	addi r31, r31, lbl_8040AF58@l
/* 80057594 000531F4  48 00 00 0C */	b lbl_800575A0
lbl_80057598:
/* 80057598 000531F8  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8005759C 000531FC  48 1C CF ED */	bl func_80224588
lbl_800575A0:
/* 800575A0 00053200  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800575A4 00053204  80 03 00 08 */	lwz r0, 8(r3)
/* 800575A8 00053208  54 00 2F FF */	rlwinm. r0, r0, 5, 0x1f, 0x1f
/* 800575AC 0005320C  41 82 FF EC */	beq lbl_80057598
/* 800575B0 00053210  38 00 00 00 */	li r0, 0
/* 800575B4 00053214  38 7F 00 48 */	addi r3, r31, 0x48
/* 800575B8 00053218  98 0D 98 AE */	stb r0, lbl_8063EB6E-_SDA_BASE_(r13)
/* 800575BC 0005321C  48 18 57 D9 */	bl func_801DCD94
/* 800575C0 00053220  38 7F 00 58 */	addi r3, r31, 0x58
/* 800575C4 00053224  48 18 57 D1 */	bl func_801DCD94
/* 800575C8 00053228  38 7F 00 68 */	addi r3, r31, 0x68
/* 800575CC 0005322C  48 18 57 C9 */	bl func_801DCD94
/* 800575D0 00053230  38 7F 00 78 */	addi r3, r31, 0x78
/* 800575D4 00053234  48 18 57 C1 */	bl func_801DCD94
/* 800575D8 00053238  38 7F 00 88 */	addi r3, r31, 0x88
/* 800575DC 0005323C  48 18 57 B9 */	bl func_801DCD94
/* 800575E0 00053240  38 7F 00 98 */	addi r3, r31, 0x98
/* 800575E4 00053244  48 18 57 B1 */	bl func_801DCD94
/* 800575E8 00053248  38 7F 00 A8 */	addi r3, r31, 0xa8
/* 800575EC 0005324C  48 18 57 A9 */	bl func_801DCD94
/* 800575F0 00053250  38 7F 00 B8 */	addi r3, r31, 0xb8
/* 800575F4 00053254  48 18 57 A1 */	bl func_801DCD94
/* 800575F8 00053258  38 7F 00 C8 */	addi r3, r31, 0xc8
/* 800575FC 0005325C  48 18 57 99 */	bl func_801DCD94
/* 80057600 00053260  38 7F 00 D8 */	addi r3, r31, 0xd8
/* 80057604 00053264  48 18 57 91 */	bl func_801DCD94
/* 80057608 00053268  38 7F 00 E8 */	addi r3, r31, 0xe8
/* 8005760C 0005326C  48 18 57 89 */	bl func_801DCD94
/* 80057610 00053270  38 7F 00 F8 */	addi r3, r31, 0xf8
/* 80057614 00053274  48 18 57 81 */	bl func_801DCD94
/* 80057618 00053278  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005761C 0005327C  80 03 00 08 */	lwz r0, 8(r3)
/* 80057620 00053280  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80057624 00053284  90 03 00 08 */	stw r0, 8(r3)
/* 80057628 00053288  48 00 00 0C */	b lbl_80057634
lbl_8005762C:
/* 8005762C 0005328C  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80057630 00053290  48 1C CF 59 */	bl func_80224588
lbl_80057634:
/* 80057634 00053294  88 0D 98 AE */	lbz r0, lbl_8063EB6E-_SDA_BASE_(r13)
/* 80057638 00053298  2C 00 00 00 */	cmpwi r0, 0
/* 8005763C 0005329C  41 82 FF F0 */	beq lbl_8005762C
/* 80057640 000532A0  38 7F 01 08 */	addi r3, r31, 0x108
/* 80057644 000532A4  48 18 57 51 */	bl func_801DCD94
/* 80057648 000532A8  38 7F 01 18 */	addi r3, r31, 0x118
/* 8005764C 000532AC  48 18 57 49 */	bl func_801DCD94
/* 80057650 000532B0  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057654 000532B4  3C 60 00 0A */	lis r3, 0x0009FC78@ha
/* 80057658 000532B8  38 83 FC 78 */	addi r4, r3, 0x0009FC78@l
/* 8005765C 000532BC  80 05 00 08 */	lwz r0, 8(r5)
/* 80057660 000532C0  54 00 02 4E */	rlwinm r0, r0, 0, 9, 7
/* 80057664 000532C4  90 05 00 08 */	stw r0, 8(r5)
/* 80057668 000532C8  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8005766C 000532CC  48 1C CE 95 */	bl func_80224500
/* 80057670 000532D0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80057674 000532D4  38 60 00 00 */	li r3, 0
/* 80057678 000532D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005767C 000532DC  7C 08 03 A6 */	mtlr r0
/* 80057680 000532E0  38 21 00 10 */	addi r1, r1, 0x10
/* 80057684 000532E4  4E 80 00 20 */	blr

.global func_80057688
func_80057688:
/* 80057688 000532E8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005768C 000532EC  80 03 00 08 */	lwz r0, 8(r3)
/* 80057690 000532F0  64 00 04 00 */	oris r0, r0, 0x400
/* 80057694 000532F4  90 03 00 08 */	stw r0, 8(r3)
/* 80057698 000532F8  4E 80 00 20 */	blr

.global func_8005769C
func_8005769C:
/* 8005769C 000532FC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800576A0 00053300  80 03 00 08 */	lwz r0, 8(r3)
/* 800576A4 00053304  54 03 37 FE */	rlwinm r3, r0, 6, 0x1f, 0x1f
/* 800576A8 00053308  4E 80 00 20 */	blr

.global func_800576AC
func_800576AC:
/* 800576AC 0005330C  48 08 CD 24 */	b func_800E43D0

.global func_800576B0
func_800576B0:
/* 800576B0 00053310  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800576B4 00053314  7C 08 02 A6 */	mflr r0
/* 800576B8 00053318  90 01 00 14 */	stw r0, 0x14(r1)
/* 800576BC 0005331C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800576C0 00053320  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800576C4 00053324  80 03 00 08 */	lwz r0, 8(r3)
/* 800576C8 00053328  54 00 02 0A */	rlwinm r0, r0, 0, 8, 5
/* 800576CC 0005332C  90 03 00 08 */	stw r0, 8(r3)
/* 800576D0 00053330  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800576D4 00053334  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 800576D8 00053338  2C 00 00 00 */	cmpwi r0, 0
/* 800576DC 0005333C  40 82 01 CC */	bne lbl_800578A8
/* 800576E0 00053340  38 60 04 01 */	li r3, 0x401
/* 800576E4 00053344  48 1F 1E F9 */	bl func_802495DC
/* 800576E8 00053348  38 60 04 01 */	li r3, 0x401
/* 800576EC 0005334C  3C 80 04 4A */	lis r4, 0x44a
/* 800576F0 00053350  4B FF E6 A9 */	bl func_80055D98
/* 800576F4 00053354  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800576F8 00053358  90 64 00 1C */	stw r3, 0x1c(r4)
/* 800576FC 0005335C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057700 00053360  83 E3 00 1C */	lwz r31, 0x1c(r3)
/* 80057704 00053364  7F E3 FB 78 */	mr r3, r31
/* 80057708 00053368  7F E4 FB 78 */	mr r4, r31
/* 8005770C 0005336C  48 18 BD D1 */	bl func_801E34DC
/* 80057710 00053370  48 18 34 19 */	bl func_801DAB28
/* 80057714 00053374  2C 03 00 00 */	cmpwi r3, 0
/* 80057718 00053378  41 82 00 14 */	beq lbl_8005772C
/* 8005771C 0005337C  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80057720 00053380  38 80 00 14 */	li r4, 0x14
/* 80057724 00053384  48 18 35 71 */	bl func_801DAC94
/* 80057728 00053388  48 00 00 08 */	b lbl_80057730
lbl_8005772C:
/* 8005772C 0005338C  38 60 00 00 */	li r3, 0
lbl_80057730:
/* 80057730 00053390  2C 03 00 00 */	cmpwi r3, 0
/* 80057734 00053394  41 82 00 0C */	beq lbl_80057740
/* 80057738 00053398  7F E4 FB 78 */	mr r4, r31
/* 8005773C 0005339C  48 1A 29 59 */	bl func_801FA094
lbl_80057740:
/* 80057740 000533A0  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057744 000533A4  38 00 00 00 */	li r0, 0
/* 80057748 000533A8  90 64 00 28 */	stw r3, 0x28(r4)
/* 8005774C 000533AC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057750 000533B0  90 03 00 30 */	stw r0, 0x30(r3)
/* 80057754 000533B4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057758 000533B8  80 63 00 28 */	lwz r3, 0x28(r3)
/* 8005775C 000533BC  80 83 00 04 */	lwz r4, 4(r3)
/* 80057760 000533C0  2C 04 00 00 */	cmpwi r4, 0
/* 80057764 000533C4  40 82 00 0C */	bne lbl_80057770
/* 80057768 000533C8  38 60 00 00 */	li r3, 0
/* 8005776C 000533CC  48 00 00 20 */	b lbl_8005778C
lbl_80057770:
/* 80057770 000533D0  80 63 00 00 */	lwz r3, 0(r3)
/* 80057774 000533D4  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80057778 000533D8  2C 00 00 00 */	cmpwi r0, 0
/* 8005777C 000533DC  40 82 00 0C */	bne lbl_80057788
/* 80057780 000533E0  38 60 00 00 */	li r3, 0
/* 80057784 000533E4  48 00 00 08 */	b lbl_8005778C
lbl_80057788:
/* 80057788 000533E8  80 64 00 00 */	lwz r3, 0(r4)
lbl_8005778C:
/* 8005778C 000533EC  2C 03 00 00 */	cmpwi r3, 0
/* 80057790 000533F0  41 82 00 08 */	beq lbl_80057798
/* 80057794 000533F4  48 1A 90 C5 */	bl func_80200858
lbl_80057798:
/* 80057798 000533F8  3C 80 1B 9B */	lis r4, 0x1B9B1A00@ha
/* 8005779C 000533FC  38 60 04 01 */	li r3, 0x401
/* 800577A0 00053400  38 84 1A 00 */	addi r4, r4, 0x1B9B1A00@l
/* 800577A4 00053404  4B FF E5 F5 */	bl func_80055D98
/* 800577A8 00053408  80 ED 81 E0 */	lwz r7, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800577AC 0005340C  38 80 00 00 */	li r4, 0
/* 800577B0 00053410  38 A0 00 00 */	li r5, 0
/* 800577B4 00053414  38 C0 00 00 */	li r6, 0
/* 800577B8 00053418  90 67 00 20 */	stw r3, 0x20(r7)
/* 800577BC 0005341C  38 E0 FF FF */	li r7, -1
/* 800577C0 00053420  39 00 00 00 */	li r8, 0
/* 800577C4 00053424  39 20 00 01 */	li r9, 1
/* 800577C8 00053428  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800577CC 0005342C  39 40 00 00 */	li r10, 0
/* 800577D0 00053430  80 63 00 20 */	lwz r3, 0x20(r3)
/* 800577D4 00053434  48 1F C4 65 */	bl func_80253C38
/* 800577D8 00053438  80 CD 81 E0 */	lwz r6, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800577DC 0005343C  38 80 00 0A */	li r4, 0xa
/* 800577E0 00053440  38 A0 00 01 */	li r5, 1
/* 800577E4 00053444  B0 66 00 34 */	sth r3, 0x34(r6)
/* 800577E8 00053448  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800577EC 0005344C  A8 63 00 34 */	lha r3, 0x34(r3)
/* 800577F0 00053450  48 1F C6 01 */	bl func_80253DF0
/* 800577F4 00053454  38 60 04 01 */	li r3, 0x401
/* 800577F8 00053458  3C 80 23 80 */	lis r4, 0x2380
/* 800577FC 0005345C  4B FF E5 9D */	bl func_80055D98
/* 80057800 00053460  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057804 00053464  90 64 00 24 */	stw r3, 0x24(r4)
/* 80057808 00053468  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005780C 0005346C  83 E3 00 24 */	lwz r31, 0x24(r3)
/* 80057810 00053470  7F E3 FB 78 */	mr r3, r31
/* 80057814 00053474  7F E4 FB 78 */	mr r4, r31
/* 80057818 00053478  48 18 BC C5 */	bl func_801E34DC
/* 8005781C 0005347C  48 18 33 0D */	bl func_801DAB28
/* 80057820 00053480  2C 03 00 00 */	cmpwi r3, 0
/* 80057824 00053484  41 82 00 14 */	beq lbl_80057838
/* 80057828 00053488  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8005782C 0005348C  38 80 00 14 */	li r4, 0x14
/* 80057830 00053490  48 18 34 65 */	bl func_801DAC94
/* 80057834 00053494  48 00 00 08 */	b lbl_8005783C
lbl_80057838:
/* 80057838 00053498  38 60 00 00 */	li r3, 0
lbl_8005783C:
/* 8005783C 0005349C  2C 03 00 00 */	cmpwi r3, 0
/* 80057840 000534A0  41 82 00 0C */	beq lbl_8005784C
/* 80057844 000534A4  7F E4 FB 78 */	mr r4, r31
/* 80057848 000534A8  48 1A 28 4D */	bl func_801FA094
lbl_8005784C:
/* 8005784C 000534AC  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057850 000534B0  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80057854 000534B4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057858 000534B8  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 8005785C 000534BC  80 83 00 04 */	lwz r4, 4(r3)
/* 80057860 000534C0  2C 04 00 00 */	cmpwi r4, 0
/* 80057864 000534C4  40 82 00 0C */	bne lbl_80057870
/* 80057868 000534C8  38 60 00 00 */	li r3, 0
/* 8005786C 000534CC  48 00 00 20 */	b lbl_8005788C
lbl_80057870:
/* 80057870 000534D0  80 63 00 00 */	lwz r3, 0(r3)
/* 80057874 000534D4  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80057878 000534D8  2C 00 00 00 */	cmpwi r0, 0
/* 8005787C 000534DC  40 82 00 0C */	bne lbl_80057888
/* 80057880 000534E0  38 60 00 00 */	li r3, 0
/* 80057884 000534E4  48 00 00 08 */	b lbl_8005788C
lbl_80057888:
/* 80057888 000534E8  80 64 00 00 */	lwz r3, 0(r4)
lbl_8005788C:
/* 8005788C 000534EC  2C 03 00 00 */	cmpwi r3, 0
/* 80057890 000534F0  41 82 00 08 */	beq lbl_80057898
/* 80057894 000534F4  48 1A 8F C5 */	bl func_80200858
lbl_80057898:
/* 80057898 000534F8  38 60 04 01 */	li r3, 0x401
/* 8005789C 000534FC  48 1F 1F F5 */	bl func_80249890
/* 800578A0 00053500  38 60 04 01 */	li r3, 0x401
/* 800578A4 00053504  48 18 3D D1 */	bl func_801DB674
lbl_800578A8:
/* 800578A8 00053508  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800578AC 0005350C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800578B0 00053510  7C 08 03 A6 */	mtlr r0
/* 800578B4 00053514  38 21 00 10 */	addi r1, r1, 0x10
/* 800578B8 00053518  4E 80 00 20 */	blr

.global func_800578BC
func_800578BC:
/* 800578BC 0005351C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800578C0 00053520  7C 08 02 A6 */	mflr r0
/* 800578C4 00053524  90 01 00 14 */	stw r0, 0x14(r1)
/* 800578C8 00053528  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800578CC 0005352C  80 03 00 08 */	lwz r0, 8(r3)
/* 800578D0 00053530  54 00 47 BE */	rlwinm r0, r0, 8, 0x1e, 0x1f
/* 800578D4 00053534  2C 00 00 03 */	cmpwi r0, 3
/* 800578D8 00053538  41 82 00 20 */	beq lbl_800578F8
/* 800578DC 0005353C  40 80 00 24 */	bge lbl_80057900
/* 800578E0 00053540  2C 00 00 02 */	cmpwi r0, 2
/* 800578E4 00053544  40 80 00 08 */	bge lbl_800578EC
/* 800578E8 00053548  48 00 00 18 */	b lbl_80057900
lbl_800578EC:
/* 800578EC 0005354C  38 60 00 02 */	li r3, 2
/* 800578F0 00053550  48 00 06 C5 */	bl func_80057FB4
/* 800578F4 00053554  48 00 00 0C */	b lbl_80057900
lbl_800578F8:
/* 800578F8 00053558  38 60 00 03 */	li r3, 3
/* 800578FC 0005355C  48 00 06 B9 */	bl func_80057FB4
lbl_80057900:
/* 80057900 00053560  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057904 00053564  80 63 00 28 */	lwz r3, 0x28(r3)
/* 80057908 00053568  2C 03 00 00 */	cmpwi r3, 0
/* 8005790C 0005356C  41 82 00 20 */	beq lbl_8005792C
/* 80057910 00053570  38 80 00 01 */	li r4, 1
/* 80057914 00053574  48 1A 29 81 */	bl func_801FA294
/* 80057918 00053578  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005791C 0005357C  38 00 00 00 */	li r0, 0
/* 80057920 00053580  90 03 00 28 */	stw r0, 0x28(r3)
/* 80057924 00053584  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057928 00053588  98 03 04 0D */	stb r0, 0x40d(r3)
lbl_8005792C:
/* 8005792C 0005358C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057930 00053590  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 80057934 00053594  2C 03 00 00 */	cmpwi r3, 0
/* 80057938 00053598  41 82 00 18 */	beq lbl_80057950
/* 8005793C 0005359C  38 80 00 01 */	li r4, 1
/* 80057940 000535A0  48 1A 29 55 */	bl func_801FA294
/* 80057944 000535A4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057948 000535A8  38 00 00 00 */	li r0, 0
/* 8005794C 000535AC  90 03 00 2C */	stw r0, 0x2c(r3)
lbl_80057950:
/* 80057950 000535B0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057954 000535B4  80 63 00 30 */	lwz r3, 0x30(r3)
/* 80057958 000535B8  2C 03 00 00 */	cmpwi r3, 0
/* 8005795C 000535BC  40 82 00 08 */	bne lbl_80057964
/* 80057960 000535C0  48 1A B0 71 */	bl func_802029D0
lbl_80057964:
/* 80057964 000535C4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057968 000535C8  38 00 00 00 */	li r0, 0
/* 8005796C 000535CC  90 03 00 30 */	stw r0, 0x30(r3)
/* 80057970 000535D0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057974 000535D4  A0 63 00 34 */	lhz r3, 0x34(r3)
/* 80057978 000535D8  48 1F C3 55 */	bl func_80253CCC
/* 8005797C 000535DC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057980 000535E0  80 63 00 1C */	lwz r3, 0x1c(r3)
/* 80057984 000535E4  2C 03 00 00 */	cmpwi r3, 0
/* 80057988 000535E8  41 82 00 14 */	beq lbl_8005799C
/* 8005798C 000535EC  48 18 BE 65 */	bl func_801E37F0
/* 80057990 000535F0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057994 000535F4  80 63 00 1C */	lwz r3, 0x1c(r3)
/* 80057998 000535F8  4B FF E4 99 */	bl func_80055E30
lbl_8005799C:
/* 8005799C 000535FC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800579A0 00053600  80 63 00 20 */	lwz r3, 0x20(r3)
/* 800579A4 00053604  2C 03 00 00 */	cmpwi r3, 0
/* 800579A8 00053608  41 82 00 08 */	beq lbl_800579B0
/* 800579AC 0005360C  4B FF E4 85 */	bl func_80055E30
lbl_800579B0:
/* 800579B0 00053610  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800579B4 00053614  80 63 00 24 */	lwz r3, 0x24(r3)
/* 800579B8 00053618  2C 03 00 00 */	cmpwi r3, 0
/* 800579BC 0005361C  41 82 00 14 */	beq lbl_800579D0
/* 800579C0 00053620  48 18 BE 31 */	bl func_801E37F0
/* 800579C4 00053624  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800579C8 00053628  80 63 00 24 */	lwz r3, 0x24(r3)
/* 800579CC 0005362C  4B FF E4 65 */	bl func_80055E30
lbl_800579D0:
/* 800579D0 00053630  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800579D4 00053634  38 00 00 00 */	li r0, 0
/* 800579D8 00053638  90 03 00 1C */	stw r0, 0x1c(r3)
/* 800579DC 0005363C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800579E0 00053640  90 03 00 20 */	stw r0, 0x20(r3)
/* 800579E4 00053644  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800579E8 00053648  90 03 00 24 */	stw r0, 0x24(r3)
/* 800579EC 0005364C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800579F0 00053650  7C 08 03 A6 */	mtlr r0
/* 800579F4 00053654  38 21 00 10 */	addi r1, r1, 0x10
/* 800579F8 00053658  4E 80 00 20 */	blr

.global func_800579FC
func_800579FC:
/* 800579FC 0005365C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80057A00 00053660  7C 08 02 A6 */	mflr r0
/* 80057A04 00053664  90 01 00 34 */	stw r0, 0x34(r1)
/* 80057A08 00053668  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80057A0C 0005366C  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80057A10 00053670  93 A1 00 24 */	stw r29, 0x24(r1)
/* 80057A14 00053674  93 81 00 20 */	stw r28, 0x20(r1)
/* 80057A18 00053678  7C 7C 1B 78 */	mr r28, r3
/* 80057A1C 0005367C  38 60 00 02 */	li r3, 2
/* 80057A20 00053680  48 1E 36 39 */	bl func_8023B058
/* 80057A24 00053684  2C 1C 00 02 */	cmpwi r28, 2
/* 80057A28 00053688  7C 7F 1B 78 */	mr r31, r3
/* 80057A2C 0005368C  41 82 00 F0 */	beq lbl_80057B1C
/* 80057A30 00053690  40 80 00 10 */	bge lbl_80057A40
/* 80057A34 00053694  2C 1C 00 01 */	cmpwi r28, 1
/* 80057A38 00053698  40 80 00 14 */	bge lbl_80057A4C
/* 80057A3C 0005369C  48 00 05 58 */	b lbl_80057F94
lbl_80057A40:
/* 80057A40 000536A0  2C 1C 00 04 */	cmpwi r28, 4
/* 80057A44 000536A4  40 80 05 50 */	bge lbl_80057F94
/* 80057A48 000536A8  48 00 02 94 */	b lbl_80057CDC
lbl_80057A4C:
/* 80057A4C 000536AC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057A50 000536B0  80 03 00 08 */	lwz r0, 8(r3)
/* 80057A54 000536B4  54 00 47 BE */	rlwinm r0, r0, 8, 0x1e, 0x1f
/* 80057A58 000536B8  28 00 00 01 */	cmplwi r0, 1
/* 80057A5C 000536BC  41 82 05 38 */	beq lbl_80057F94
/* 80057A60 000536C0  28 00 00 02 */	cmplwi r0, 2
/* 80057A64 000536C4  40 82 00 8C */	bne lbl_80057AF0
/* 80057A68 000536C8  38 60 00 02 */	li r3, 2
/* 80057A6C 000536CC  48 1E 35 ED */	bl func_8023B058
/* 80057A70 000536D0  2C 03 00 00 */	cmpwi r3, 0
/* 80057A74 000536D4  41 82 00 20 */	beq lbl_80057A94
/* 80057A78 000536D8  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057A7C 000536DC  80 84 00 38 */	lwz r4, 0x38(r4)
/* 80057A80 000536E0  2C 04 00 00 */	cmpwi r4, 0
/* 80057A84 000536E4  41 82 00 10 */	beq lbl_80057A94
/* 80057A88 000536E8  38 00 00 00 */	li r0, 0
/* 80057A8C 000536EC  90 03 00 20 */	stw r0, 0x20(r3)
/* 80057A90 000536F0  90 83 00 0C */	stw r4, 0xc(r3)
lbl_80057A94:
/* 80057A94 000536F4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057A98 000536F8  80 63 00 28 */	lwz r3, 0x28(r3)
/* 80057A9C 000536FC  80 83 00 04 */	lwz r4, 4(r3)
/* 80057AA0 00053700  2C 04 00 00 */	cmpwi r4, 0
/* 80057AA4 00053704  40 82 00 0C */	bne lbl_80057AB0
/* 80057AA8 00053708  38 60 00 00 */	li r3, 0
/* 80057AAC 0005370C  48 00 00 20 */	b lbl_80057ACC
lbl_80057AB0:
/* 80057AB0 00053710  80 63 00 00 */	lwz r3, 0(r3)
/* 80057AB4 00053714  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80057AB8 00053718  2C 00 00 00 */	cmpwi r0, 0
/* 80057ABC 0005371C  40 82 00 0C */	bne lbl_80057AC8
/* 80057AC0 00053720  38 60 00 00 */	li r3, 0
/* 80057AC4 00053724  48 00 00 08 */	b lbl_80057ACC
lbl_80057AC8:
/* 80057AC8 00053728  80 64 00 00 */	lwz r3, 0(r4)
lbl_80057ACC:
/* 80057ACC 0005372C  2C 03 00 00 */	cmpwi r3, 0
/* 80057AD0 00053730  41 82 00 08 */	beq lbl_80057AD8
/* 80057AD4 00053734  48 1A 8D 85 */	bl func_80200858
lbl_80057AD8:
/* 80057AD8 00053738  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057ADC 0005373C  80 63 00 30 */	lwz r3, 0x30(r3)
/* 80057AE0 00053740  48 1A AE F1 */	bl func_802029D0
/* 80057AE4 00053744  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057AE8 00053748  38 00 00 00 */	li r0, 0
/* 80057AEC 0005374C  98 03 04 0D */	stb r0, 0x40d(r3)
lbl_80057AF0:
/* 80057AF0 00053750  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057AF4 00053754  38 C0 00 01 */	li r6, 1
/* 80057AF8 00053758  38 80 00 08 */	li r4, 8
/* 80057AFC 0005375C  38 A0 00 01 */	li r5, 1
/* 80057B00 00053760  80 03 00 08 */	lwz r0, 8(r3)
/* 80057B04 00053764  50 C0 C1 8E */	rlwimi r0, r6, 0x18, 6, 7
/* 80057B08 00053768  90 03 00 08 */	stw r0, 8(r3)
/* 80057B0C 0005376C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057B10 00053770  A8 63 00 34 */	lha r3, 0x34(r3)
/* 80057B14 00053774  48 1F C2 DD */	bl func_80253DF0
/* 80057B18 00053778  48 00 04 7C */	b lbl_80057F94
lbl_80057B1C:
/* 80057B1C 0005377C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057B20 00053780  80 03 00 08 */	lwz r0, 8(r3)
/* 80057B24 00053784  54 00 47 BE */	rlwinm r0, r0, 8, 0x1e, 0x1f
/* 80057B28 00053788  28 00 00 02 */	cmplwi r0, 2
/* 80057B2C 0005378C  41 82 04 68 */	beq lbl_80057F94
/* 80057B30 00053790  28 00 00 01 */	cmplwi r0, 1
/* 80057B34 00053794  40 82 00 14 */	bne lbl_80057B48
/* 80057B38 00053798  A8 63 00 34 */	lha r3, 0x34(r3)
/* 80057B3C 0005379C  38 80 00 08 */	li r4, 8
/* 80057B40 000537A0  38 A0 00 00 */	li r5, 0
/* 80057B44 000537A4  48 1F C2 AD */	bl func_80253DF0
lbl_80057B48:
/* 80057B48 000537A8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057B4C 000537AC  80 03 00 08 */	lwz r0, 8(r3)
/* 80057B50 000537B0  54 00 47 BE */	rlwinm r0, r0, 8, 0x1e, 0x1f
/* 80057B54 000537B4  28 00 00 03 */	cmplwi r0, 3
/* 80057B58 000537B8  40 82 00 0C */	bne lbl_80057B64
/* 80057B5C 000537BC  38 60 00 03 */	li r3, 3
/* 80057B60 000537C0  48 00 04 55 */	bl func_80057FB4
lbl_80057B64:
/* 80057B64 000537C4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057B68 000537C8  38 80 00 02 */	li r4, 2
/* 80057B6C 000537CC  2C 1F 00 00 */	cmpwi r31, 0
/* 80057B70 000537D0  80 03 00 08 */	lwz r0, 8(r3)
/* 80057B74 000537D4  50 80 C1 8E */	rlwimi r0, r4, 0x18, 6, 7
/* 80057B78 000537D8  90 03 00 08 */	stw r0, 8(r3)
/* 80057B7C 000537DC  41 82 00 24 */	beq lbl_80057BA0
/* 80057B80 000537E0  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80057B84 000537E4  2C 00 00 00 */	cmpwi r0, 0
/* 80057B88 000537E8  40 82 00 0C */	bne lbl_80057B94
/* 80057B8C 000537EC  80 1F 00 0C */	lwz r0, 0xc(r31)
/* 80057B90 000537F0  48 00 00 08 */	b lbl_80057B98
lbl_80057B94:
/* 80057B94 000537F4  80 1F 00 24 */	lwz r0, 0x24(r31)
lbl_80057B98:
/* 80057B98 000537F8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057B9C 000537FC  90 03 00 38 */	stw r0, 0x38(r3)
lbl_80057BA0:
/* 80057BA0 00053800  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057BA4 00053804  80 04 00 28 */	lwz r0, 0x28(r4)
/* 80057BA8 00053808  2C 00 00 00 */	cmpwi r0, 0
/* 80057BAC 0005380C  41 82 03 E8 */	beq lbl_80057F94
/* 80057BB0 00053810  80 6D A1 A8 */	lwz r3, lbl_8063F468-_SDA_BASE_(r13)
/* 80057BB4 00053814  80 03 01 24 */	lwz r0, 0x124(r3)
/* 80057BB8 00053818  90 04 00 30 */	stw r0, 0x30(r4)
/* 80057BBC 0005381C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057BC0 00053820  80 63 00 28 */	lwz r3, 0x28(r3)
/* 80057BC4 00053824  48 1A AE 0D */	bl func_802029D0
/* 80057BC8 00053828  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057BCC 0005382C  38 00 00 01 */	li r0, 1
/* 80057BD0 00053830  C0 02 85 60 */	lfs f0, lbl_80640B60-_SDA2_BASE_(r2)
/* 80057BD4 00053834  38 80 00 00 */	li r4, 0
/* 80057BD8 00053838  98 03 04 0D */	stb r0, 0x40d(r3)
/* 80057BDC 0005383C  38 00 00 32 */	li r0, 0x32
/* 80057BE0 00053840  C0 22 85 7C */	lfs f1, lbl_80640B7C-_SDA2_BASE_(r2)
/* 80057BE4 00053844  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057BE8 00053848  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80057BEC 0005384C  D0 23 04 2C */	stfs f1, 0x42c(r3)
/* 80057BF0 00053850  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057BF4 00053854  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 80057BF8 00053858  98 83 04 30 */	stb r4, 0x430(r3)
/* 80057BFC 0005385C  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057C00 00053860  90 83 04 34 */	stw r4, 0x434(r3)
/* 80057C04 00053864  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057C08 00053868  98 03 04 31 */	stb r0, 0x431(r3)
/* 80057C0C 0005386C  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057C10 00053870  D0 03 04 24 */	stfs f0, 0x424(r3)
/* 80057C14 00053874  D0 03 04 28 */	stfs f0, 0x428(r3)
/* 80057C18 00053878  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057C1C 0005387C  80 63 00 28 */	lwz r3, 0x28(r3)
/* 80057C20 00053880  80 83 00 04 */	lwz r4, 4(r3)
/* 80057C24 00053884  2C 04 00 00 */	cmpwi r4, 0
/* 80057C28 00053888  40 82 00 0C */	bne lbl_80057C34
/* 80057C2C 0005388C  3B C0 00 00 */	li r30, 0
/* 80057C30 00053890  48 00 00 20 */	b lbl_80057C50
lbl_80057C34:
/* 80057C34 00053894  80 63 00 00 */	lwz r3, 0(r3)
/* 80057C38 00053898  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80057C3C 0005389C  2C 00 00 00 */	cmpwi r0, 0
/* 80057C40 000538A0  40 82 00 0C */	bne lbl_80057C4C
/* 80057C44 000538A4  3B C0 00 00 */	li r30, 0
/* 80057C48 000538A8  48 00 00 08 */	b lbl_80057C50
lbl_80057C4C:
/* 80057C4C 000538AC  83 C4 00 00 */	lwz r30, 0(r4)
lbl_80057C50:
/* 80057C50 000538B0  2C 1E 00 00 */	cmpwi r30, 0
/* 80057C54 000538B4  41 82 03 40 */	beq lbl_80057F94
/* 80057C58 000538B8  7F C3 F3 78 */	mr r3, r30
/* 80057C5C 000538BC  48 1A 89 39 */	bl func_80200594
/* 80057C60 000538C0  80 7E 00 10 */	lwz r3, 0x10(r30)
/* 80057C64 000538C4  2C 03 00 00 */	cmpwi r3, 0
/* 80057C68 000538C8  40 82 00 0C */	bne lbl_80057C74
/* 80057C6C 000538CC  38 60 00 00 */	li r3, 0
/* 80057C70 000538D0  48 00 00 4C */	b lbl_80057CBC
lbl_80057C74:
/* 80057C74 000538D4  A0 1E 00 E0 */	lhz r0, 0xe0(r30)
/* 80057C78 000538D8  2C 00 00 00 */	cmpwi r0, 0
/* 80057C7C 000538DC  40 82 00 0C */	bne lbl_80057C88
/* 80057C80 000538E0  38 60 00 00 */	li r3, 0
/* 80057C84 000538E4  48 00 00 38 */	b lbl_80057CBC
lbl_80057C88:
/* 80057C88 000538E8  80 9E 00 08 */	lwz r4, 8(r30)
/* 80057C8C 000538EC  A0 63 00 00 */	lhz r3, 0(r3)
/* 80057C90 000538F0  2C 04 00 00 */	cmpwi r4, 0
/* 80057C94 000538F4  40 82 00 0C */	bne lbl_80057CA0
/* 80057C98 000538F8  38 60 00 00 */	li r3, 0
/* 80057C9C 000538FC  48 00 00 20 */	b lbl_80057CBC
lbl_80057CA0:
/* 80057CA0 00053900  A0 1E 00 DE */	lhz r0, 0xde(r30)
/* 80057CA4 00053904  7C 03 00 40 */	cmplw r3, r0
/* 80057CA8 00053908  41 80 00 0C */	blt lbl_80057CB4
/* 80057CAC 0005390C  38 60 00 00 */	li r3, 0
/* 80057CB0 00053910  48 00 00 0C */	b lbl_80057CBC
lbl_80057CB4:
/* 80057CB4 00053914  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 80057CB8 00053918  7C 64 00 2E */	lwzx r3, r4, r0
lbl_80057CBC:
/* 80057CBC 0005391C  2C 1F 00 00 */	cmpwi r31, 0
/* 80057CC0 00053920  41 82 02 D4 */	beq lbl_80057F94
/* 80057CC4 00053924  2C 03 00 00 */	cmpwi r3, 0
/* 80057CC8 00053928  41 82 02 CC */	beq lbl_80057F94
/* 80057CCC 0005392C  38 00 00 00 */	li r0, 0
/* 80057CD0 00053930  90 1F 00 20 */	stw r0, 0x20(r31)
/* 80057CD4 00053934  90 7F 00 0C */	stw r3, 0xc(r31)
/* 80057CD8 00053938  48 00 02 BC */	b lbl_80057F94
lbl_80057CDC:
/* 80057CDC 0005393C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057CE0 00053940  80 03 00 08 */	lwz r0, 8(r3)
/* 80057CE4 00053944  54 00 47 BE */	rlwinm r0, r0, 8, 0x1e, 0x1f
/* 80057CE8 00053948  28 00 00 03 */	cmplwi r0, 3
/* 80057CEC 0005394C  41 82 02 A8 */	beq lbl_80057F94
/* 80057CF0 00053950  28 00 00 01 */	cmplwi r0, 1
/* 80057CF4 00053954  40 82 00 14 */	bne lbl_80057D08
/* 80057CF8 00053958  A8 63 00 34 */	lha r3, 0x34(r3)
/* 80057CFC 0005395C  38 80 00 08 */	li r4, 8
/* 80057D00 00053960  38 A0 00 00 */	li r5, 0
/* 80057D04 00053964  48 1F C0 ED */	bl func_80253DF0
lbl_80057D08:
/* 80057D08 00053968  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057D0C 0005396C  80 03 00 08 */	lwz r0, 8(r3)
/* 80057D10 00053970  54 00 47 BE */	rlwinm r0, r0, 8, 0x1e, 0x1f
/* 80057D14 00053974  28 00 00 02 */	cmplwi r0, 2
/* 80057D18 00053978  40 82 00 0C */	bne lbl_80057D24
/* 80057D1C 0005397C  38 60 00 02 */	li r3, 2
/* 80057D20 00053980  48 00 02 95 */	bl func_80057FB4
lbl_80057D24:
/* 80057D24 00053984  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057D28 00053988  2C 1F 00 00 */	cmpwi r31, 0
/* 80057D2C 0005398C  80 03 00 08 */	lwz r0, 8(r3)
/* 80057D30 00053990  64 00 03 00 */	oris r0, r0, 0x300
/* 80057D34 00053994  90 03 00 08 */	stw r0, 8(r3)
/* 80057D38 00053998  41 82 00 24 */	beq lbl_80057D5C
/* 80057D3C 0005399C  80 1F 00 20 */	lwz r0, 0x20(r31)
/* 80057D40 000539A0  2C 00 00 00 */	cmpwi r0, 0
/* 80057D44 000539A4  40 82 00 0C */	bne lbl_80057D50
/* 80057D48 000539A8  80 1F 00 0C */	lwz r0, 0xc(r31)
/* 80057D4C 000539AC  48 00 00 08 */	b lbl_80057D54
lbl_80057D50:
/* 80057D50 000539B0  80 1F 00 24 */	lwz r0, 0x24(r31)
lbl_80057D54:
/* 80057D54 000539B4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057D58 000539B8  90 03 00 38 */	stw r0, 0x38(r3)
lbl_80057D5C:
/* 80057D5C 000539BC  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057D60 000539C0  80 04 00 2C */	lwz r0, 0x2c(r4)
/* 80057D64 000539C4  2C 00 00 00 */	cmpwi r0, 0
/* 80057D68 000539C8  41 82 02 2C */	beq lbl_80057F94
/* 80057D6C 000539CC  80 6D A1 A8 */	lwz r3, lbl_8063F468-_SDA_BASE_(r13)
/* 80057D70 000539D0  80 03 01 24 */	lwz r0, 0x124(r3)
/* 80057D74 000539D4  90 04 00 30 */	stw r0, 0x30(r4)
/* 80057D78 000539D8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057D7C 000539DC  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 80057D80 000539E0  48 1A AC 51 */	bl func_802029D0
/* 80057D84 000539E4  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057D88 000539E8  38 A0 00 01 */	li r5, 1
/* 80057D8C 000539EC  C0 02 85 80 */	lfs f0, lbl_80640B80-_SDA2_BASE_(r2)
/* 80057D90 000539F0  38 00 00 28 */	li r0, 0x28
/* 80057D94 000539F4  98 A3 04 0D */	stb r5, 0x40d(r3)
/* 80057D98 000539F8  38 80 00 00 */	li r4, 0
/* 80057D9C 000539FC  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DA0 00053A00  D0 03 04 2C */	stfs f0, 0x42c(r3)
/* 80057DA4 00053A04  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DA8 00053A08  98 03 04 31 */	stb r0, 0x431(r3)
/* 80057DAC 00053A0C  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DB0 00053A10  98 83 04 30 */	stb r4, 0x430(r3)
/* 80057DB4 00053A14  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DB8 00053A18  80 03 04 18 */	lwz r0, 0x418(r3)
/* 80057DBC 00053A1C  2C 00 00 00 */	cmpwi r0, 0
/* 80057DC0 00053A20  41 82 00 0C */	beq lbl_80057DCC
/* 80057DC4 00053A24  98 A3 04 0E */	stb r5, 0x40e(r3)
/* 80057DC8 00053A28  48 00 00 08 */	b lbl_80057DD0
lbl_80057DCC:
/* 80057DCC 00053A2C  98 83 04 0E */	stb r4, 0x40e(r3)
lbl_80057DD0:
/* 80057DD0 00053A30  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DD4 00053A34  38 00 00 00 */	li r0, 0
/* 80057DD8 00053A38  C0 02 85 60 */	lfs f0, lbl_80640B60-_SDA2_BASE_(r2)
/* 80057DDC 00053A3C  90 03 04 34 */	stw r0, 0x434(r3)
/* 80057DE0 00053A40  C0 22 85 6C */	lfs f1, lbl_80640B6C-_SDA2_BASE_(r2)
/* 80057DE4 00053A44  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DE8 00053A48  D0 01 00 08 */	stfs f0, 8(r1)
/* 80057DEC 00053A4C  D0 23 04 50 */	stfs f1, 0x450(r3)
/* 80057DF0 00053A50  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80057DF4 00053A54  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80057DF8 00053A58  D0 03 04 24 */	stfs f0, 0x424(r3)
/* 80057DFC 00053A5C  D0 03 04 28 */	stfs f0, 0x428(r3)
/* 80057E00 00053A60  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057E04 00053A64  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 80057E08 00053A68  80 83 00 04 */	lwz r4, 4(r3)
/* 80057E0C 00053A6C  2C 04 00 00 */	cmpwi r4, 0
/* 80057E10 00053A70  40 82 00 0C */	bne lbl_80057E1C
/* 80057E14 00053A74  3B C0 00 00 */	li r30, 0
/* 80057E18 00053A78  48 00 00 20 */	b lbl_80057E38
lbl_80057E1C:
/* 80057E1C 00053A7C  80 63 00 00 */	lwz r3, 0(r3)
/* 80057E20 00053A80  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80057E24 00053A84  2C 00 00 00 */	cmpwi r0, 0
/* 80057E28 00053A88  40 82 00 0C */	bne lbl_80057E34
/* 80057E2C 00053A8C  3B C0 00 00 */	li r30, 0
/* 80057E30 00053A90  48 00 00 08 */	b lbl_80057E38
lbl_80057E34:
/* 80057E34 00053A94  83 C4 00 00 */	lwz r30, 0(r4)
lbl_80057E38:
/* 80057E38 00053A98  80 6D A1 A8 */	lwz r3, lbl_8063F468-_SDA_BASE_(r13)
/* 80057E3C 00053A9C  83 A3 01 38 */	lwz r29, 0x138(r3)
/* 80057E40 00053AA0  57 BC 86 3E */	rlwinm r28, r29, 0x10, 0x18, 0x1f
/* 80057E44 00053AA4  7F 83 E3 78 */	mr r3, r28
/* 80057E48 00053AA8  48 1E 32 11 */	bl func_8023B058
/* 80057E4C 00053AAC  2C 03 00 00 */	cmpwi r3, 0
/* 80057E50 00053AB0  41 82 00 10 */	beq lbl_80057E60
/* 80057E54 00053AB4  7F A4 EB 78 */	mr r4, r29
/* 80057E58 00053AB8  48 1E 34 D9 */	bl func_8023B330
/* 80057E5C 00053ABC  48 00 00 08 */	b lbl_80057E64
lbl_80057E60:
/* 80057E60 00053AC0  38 60 00 00 */	li r3, 0
lbl_80057E64:
/* 80057E64 00053AC4  2C 03 00 00 */	cmpwi r3, 0
/* 80057E68 00053AC8  40 82 00 1C */	bne lbl_80057E84
/* 80057E6C 00053ACC  7F 83 E3 78 */	mr r3, r28
/* 80057E70 00053AD0  48 1E 31 E9 */	bl func_8023B058
/* 80057E74 00053AD4  2C 03 00 00 */	cmpwi r3, 0
/* 80057E78 00053AD8  41 82 00 0C */	beq lbl_80057E84
/* 80057E7C 00053ADC  7F A4 EB 78 */	mr r4, r29
/* 80057E80 00053AE0  48 1E 35 39 */	bl func_8023B3B8
lbl_80057E84:
/* 80057E84 00053AE4  80 6D A1 A8 */	lwz r3, lbl_8063F468-_SDA_BASE_(r13)
/* 80057E88 00053AE8  83 A3 01 44 */	lwz r29, 0x144(r3)
/* 80057E8C 00053AEC  57 BC 86 3E */	rlwinm r28, r29, 0x10, 0x18, 0x1f
/* 80057E90 00053AF0  7F 83 E3 78 */	mr r3, r28
/* 80057E94 00053AF4  48 1E 31 C5 */	bl func_8023B058
/* 80057E98 00053AF8  2C 03 00 00 */	cmpwi r3, 0
/* 80057E9C 00053AFC  41 82 00 10 */	beq lbl_80057EAC
/* 80057EA0 00053B00  7F A4 EB 78 */	mr r4, r29
/* 80057EA4 00053B04  48 1E 34 8D */	bl func_8023B330
/* 80057EA8 00053B08  48 00 00 08 */	b lbl_80057EB0
lbl_80057EAC:
/* 80057EAC 00053B0C  38 60 00 00 */	li r3, 0
lbl_80057EB0:
/* 80057EB0 00053B10  2C 03 00 00 */	cmpwi r3, 0
/* 80057EB4 00053B14  40 82 00 1C */	bne lbl_80057ED0
/* 80057EB8 00053B18  7F 83 E3 78 */	mr r3, r28
/* 80057EBC 00053B1C  48 1E 31 9D */	bl func_8023B058
/* 80057EC0 00053B20  2C 03 00 00 */	cmpwi r3, 0
/* 80057EC4 00053B24  41 82 00 0C */	beq lbl_80057ED0
/* 80057EC8 00053B28  7F A4 EB 78 */	mr r4, r29
/* 80057ECC 00053B2C  48 1E 34 ED */	bl func_8023B3B8
lbl_80057ED0:
/* 80057ED0 00053B30  2C 1E 00 00 */	cmpwi r30, 0
/* 80057ED4 00053B34  41 82 00 C0 */	beq lbl_80057F94
/* 80057ED8 00053B38  7F C3 F3 78 */	mr r3, r30
/* 80057EDC 00053B3C  48 1A 86 B9 */	bl func_80200594
/* 80057EE0 00053B40  80 7E 00 10 */	lwz r3, 0x10(r30)
/* 80057EE4 00053B44  2C 03 00 00 */	cmpwi r3, 0
/* 80057EE8 00053B48  40 82 00 0C */	bne lbl_80057EF4
/* 80057EEC 00053B4C  3B C0 00 00 */	li r30, 0
/* 80057EF0 00053B50  48 00 00 4C */	b lbl_80057F3C
lbl_80057EF4:
/* 80057EF4 00053B54  A0 1E 00 E0 */	lhz r0, 0xe0(r30)
/* 80057EF8 00053B58  2C 00 00 00 */	cmpwi r0, 0
/* 80057EFC 00053B5C  40 82 00 0C */	bne lbl_80057F08
/* 80057F00 00053B60  3B C0 00 00 */	li r30, 0
/* 80057F04 00053B64  48 00 00 38 */	b lbl_80057F3C
lbl_80057F08:
/* 80057F08 00053B68  80 9E 00 08 */	lwz r4, 8(r30)
/* 80057F0C 00053B6C  A0 63 00 00 */	lhz r3, 0(r3)
/* 80057F10 00053B70  2C 04 00 00 */	cmpwi r4, 0
/* 80057F14 00053B74  40 82 00 0C */	bne lbl_80057F20
/* 80057F18 00053B78  3B C0 00 00 */	li r30, 0
/* 80057F1C 00053B7C  48 00 00 20 */	b lbl_80057F3C
lbl_80057F20:
/* 80057F20 00053B80  A0 1E 00 DE */	lhz r0, 0xde(r30)
/* 80057F24 00053B84  7C 03 00 40 */	cmplw r3, r0
/* 80057F28 00053B88  41 80 00 0C */	blt lbl_80057F34
/* 80057F2C 00053B8C  3B C0 00 00 */	li r30, 0
/* 80057F30 00053B90  48 00 00 0C */	b lbl_80057F3C
lbl_80057F34:
/* 80057F34 00053B94  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 80057F38 00053B98  7F C4 00 2E */	lwzx r30, r4, r0
lbl_80057F3C:
/* 80057F3C 00053B9C  2C 1F 00 00 */	cmpwi r31, 0
/* 80057F40 00053BA0  41 82 00 54 */	beq lbl_80057F94
/* 80057F44 00053BA4  2C 1E 00 00 */	cmpwi r30, 0
/* 80057F48 00053BA8  41 82 00 4C */	beq lbl_80057F94
/* 80057F4C 00053BAC  38 00 00 00 */	li r0, 0
/* 80057F50 00053BB0  7F C3 F3 78 */	mr r3, r30
/* 80057F54 00053BB4  90 1F 00 20 */	stw r0, 0x20(r31)
/* 80057F58 00053BB8  38 80 00 00 */	li r4, 0
/* 80057F5C 00053BBC  93 DF 00 0C */	stw r30, 0xc(r31)
/* 80057F60 00053BC0  81 9E 01 00 */	lwz r12, 0x100(r30)
/* 80057F64 00053BC4  81 8C 00 10 */	lwz r12, 0x10(r12)
/* 80057F68 00053BC8  7D 89 03 A6 */	mtctr r12
/* 80057F6C 00053BCC  4E 80 04 21 */	bctrl
/* 80057F70 00053BD0  80 1E 01 04 */	lwz r0, 0x104(r30)
/* 80057F74 00053BD4  54 00 07 BE */	clrlwi r0, r0, 0x1e
/* 80057F78 00053BD8  28 00 00 01 */	cmplwi r0, 1
/* 80057F7C 00053BDC  40 82 00 18 */	bne lbl_80057F94
/* 80057F80 00053BE0  C0 02 85 84 */	lfs f0, lbl_80640B84-_SDA2_BASE_(r2)
/* 80057F84 00053BE4  D0 1E 01 68 */	stfs f0, 0x168(r30)
/* 80057F88 00053BE8  80 1E 01 04 */	lwz r0, 0x104(r30)
/* 80057F8C 00053BEC  60 00 00 08 */	ori r0, r0, 8
/* 80057F90 00053BF0  90 1E 01 04 */	stw r0, 0x104(r30)
lbl_80057F94:
/* 80057F94 00053BF4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80057F98 00053BF8  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80057F9C 00053BFC  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80057FA0 00053C00  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 80057FA4 00053C04  83 81 00 20 */	lwz r28, 0x20(r1)
/* 80057FA8 00053C08  7C 08 03 A6 */	mtlr r0
/* 80057FAC 00053C0C  38 21 00 30 */	addi r1, r1, 0x30
/* 80057FB0 00053C10  4E 80 00 20 */	blr

.global func_80057FB4
func_80057FB4:
/* 80057FB4 00053C14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80057FB8 00053C18  7C 08 02 A6 */	mflr r0
/* 80057FBC 00053C1C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80057FC0 00053C20  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80057FC4 00053C24  7C 7F 1B 78 */	mr r31, r3
/* 80057FC8 00053C28  38 60 00 02 */	li r3, 2
/* 80057FCC 00053C2C  48 1E 30 8D */	bl func_8023B058
/* 80057FD0 00053C30  2C 1F 00 02 */	cmpwi r31, 2
/* 80057FD4 00053C34  41 82 00 54 */	beq lbl_80058028
/* 80057FD8 00053C38  40 80 00 10 */	bge lbl_80057FE8
/* 80057FDC 00053C3C  2C 1F 00 01 */	cmpwi r31, 1
/* 80057FE0 00053C40  40 80 00 14 */	bge lbl_80057FF4
/* 80057FE4 00053C44  48 00 01 80 */	b lbl_80058164
lbl_80057FE8:
/* 80057FE8 00053C48  2C 1F 00 04 */	cmpwi r31, 4
/* 80057FEC 00053C4C  40 80 01 78 */	bge lbl_80058164
/* 80057FF0 00053C50  48 00 00 D8 */	b lbl_800580C8
lbl_80057FF4:
/* 80057FF4 00053C54  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80057FF8 00053C58  80 03 00 20 */	lwz r0, 0x20(r3)
/* 80057FFC 00053C5C  2C 00 00 00 */	cmpwi r0, 0
/* 80058000 00053C60  41 82 01 64 */	beq lbl_80058164
/* 80058004 00053C64  A8 63 00 34 */	lha r3, 0x34(r3)
/* 80058008 00053C68  38 80 00 08 */	li r4, 8
/* 8005800C 00053C6C  38 A0 00 00 */	li r5, 0
/* 80058010 00053C70  48 1F BD E1 */	bl func_80253DF0
/* 80058014 00053C74  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058018 00053C78  80 03 00 08 */	lwz r0, 8(r3)
/* 8005801C 00053C7C  54 00 02 0A */	rlwinm r0, r0, 0, 8, 5
/* 80058020 00053C80  90 03 00 08 */	stw r0, 8(r3)
/* 80058024 00053C84  48 00 01 40 */	b lbl_80058164
lbl_80058028:
/* 80058028 00053C88  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005802C 00053C8C  80 04 00 1C */	lwz r0, 0x1c(r4)
/* 80058030 00053C90  2C 00 00 00 */	cmpwi r0, 0
/* 80058034 00053C94  41 82 01 30 */	beq lbl_80058164
/* 80058038 00053C98  2C 03 00 00 */	cmpwi r3, 0
/* 8005803C 00053C9C  41 82 00 1C */	beq lbl_80058058
/* 80058040 00053CA0  80 84 00 38 */	lwz r4, 0x38(r4)
/* 80058044 00053CA4  2C 04 00 00 */	cmpwi r4, 0
/* 80058048 00053CA8  41 82 00 10 */	beq lbl_80058058
/* 8005804C 00053CAC  38 00 00 00 */	li r0, 0
/* 80058050 00053CB0  90 03 00 20 */	stw r0, 0x20(r3)
/* 80058054 00053CB4  90 83 00 0C */	stw r4, 0xc(r3)
lbl_80058058:
/* 80058058 00053CB8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005805C 00053CBC  80 63 00 28 */	lwz r3, 0x28(r3)
/* 80058060 00053CC0  80 83 00 04 */	lwz r4, 4(r3)
/* 80058064 00053CC4  2C 04 00 00 */	cmpwi r4, 0
/* 80058068 00053CC8  40 82 00 0C */	bne lbl_80058074
/* 8005806C 00053CCC  38 60 00 00 */	li r3, 0
/* 80058070 00053CD0  48 00 00 20 */	b lbl_80058090
lbl_80058074:
/* 80058074 00053CD4  80 63 00 00 */	lwz r3, 0(r3)
/* 80058078 00053CD8  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8005807C 00053CDC  2C 00 00 00 */	cmpwi r0, 0
/* 80058080 00053CE0  40 82 00 0C */	bne lbl_8005808C
/* 80058084 00053CE4  38 60 00 00 */	li r3, 0
/* 80058088 00053CE8  48 00 00 08 */	b lbl_80058090
lbl_8005808C:
/* 8005808C 00053CEC  80 64 00 00 */	lwz r3, 0(r4)
lbl_80058090:
/* 80058090 00053CF0  2C 03 00 00 */	cmpwi r3, 0
/* 80058094 00053CF4  41 82 00 08 */	beq lbl_8005809C
/* 80058098 00053CF8  48 1A 87 C1 */	bl func_80200858
lbl_8005809C:
/* 8005809C 00053CFC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800580A0 00053D00  80 63 00 30 */	lwz r3, 0x30(r3)
/* 800580A4 00053D04  48 1A A9 2D */	bl func_802029D0
/* 800580A8 00053D08  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 800580AC 00053D0C  38 00 00 00 */	li r0, 0
/* 800580B0 00053D10  98 03 04 0D */	stb r0, 0x40d(r3)
/* 800580B4 00053D14  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800580B8 00053D18  80 03 00 08 */	lwz r0, 8(r3)
/* 800580BC 00053D1C  54 00 02 0A */	rlwinm r0, r0, 0, 8, 5
/* 800580C0 00053D20  90 03 00 08 */	stw r0, 8(r3)
/* 800580C4 00053D24  48 00 00 A0 */	b lbl_80058164
lbl_800580C8:
/* 800580C8 00053D28  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800580CC 00053D2C  80 04 00 24 */	lwz r0, 0x24(r4)
/* 800580D0 00053D30  2C 00 00 00 */	cmpwi r0, 0
/* 800580D4 00053D34  41 82 00 90 */	beq lbl_80058164
/* 800580D8 00053D38  2C 03 00 00 */	cmpwi r3, 0
/* 800580DC 00053D3C  41 82 00 1C */	beq lbl_800580F8
/* 800580E0 00053D40  80 84 00 38 */	lwz r4, 0x38(r4)
/* 800580E4 00053D44  2C 04 00 00 */	cmpwi r4, 0
/* 800580E8 00053D48  41 82 00 10 */	beq lbl_800580F8
/* 800580EC 00053D4C  38 00 00 00 */	li r0, 0
/* 800580F0 00053D50  90 03 00 20 */	stw r0, 0x20(r3)
/* 800580F4 00053D54  90 83 00 0C */	stw r4, 0xc(r3)
lbl_800580F8:
/* 800580F8 00053D58  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800580FC 00053D5C  80 63 00 2C */	lwz r3, 0x2c(r3)
/* 80058100 00053D60  80 83 00 04 */	lwz r4, 4(r3)
/* 80058104 00053D64  2C 04 00 00 */	cmpwi r4, 0
/* 80058108 00053D68  40 82 00 0C */	bne lbl_80058114
/* 8005810C 00053D6C  38 60 00 00 */	li r3, 0
/* 80058110 00053D70  48 00 00 20 */	b lbl_80058130
lbl_80058114:
/* 80058114 00053D74  80 63 00 00 */	lwz r3, 0(r3)
/* 80058118 00053D78  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 8005811C 00053D7C  2C 00 00 00 */	cmpwi r0, 0
/* 80058120 00053D80  40 82 00 0C */	bne lbl_8005812C
/* 80058124 00053D84  38 60 00 00 */	li r3, 0
/* 80058128 00053D88  48 00 00 08 */	b lbl_80058130
lbl_8005812C:
/* 8005812C 00053D8C  80 64 00 00 */	lwz r3, 0(r4)
lbl_80058130:
/* 80058130 00053D90  2C 03 00 00 */	cmpwi r3, 0
/* 80058134 00053D94  41 82 00 08 */	beq lbl_8005813C
/* 80058138 00053D98  48 1A 87 21 */	bl func_80200858
lbl_8005813C:
/* 8005813C 00053D9C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058140 00053DA0  80 63 00 30 */	lwz r3, 0x30(r3)
/* 80058144 00053DA4  48 1A A8 8D */	bl func_802029D0
/* 80058148 00053DA8  80 6D A1 50 */	lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 8005814C 00053DAC  38 00 00 00 */	li r0, 0
/* 80058150 00053DB0  98 03 04 0D */	stb r0, 0x40d(r3)
/* 80058154 00053DB4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058158 00053DB8  80 03 00 08 */	lwz r0, 8(r3)
/* 8005815C 00053DBC  54 00 02 0A */	rlwinm r0, r0, 0, 8, 5
/* 80058160 00053DC0  90 03 00 08 */	stw r0, 8(r3)
lbl_80058164:
/* 80058164 00053DC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058168 00053DC8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005816C 00053DCC  7C 08 03 A6 */	mtlr r0
/* 80058170 00053DD0  38 21 00 10 */	addi r1, r1, 0x10
/* 80058174 00053DD4  4E 80 00 20 */	blr

.global lbl_80058178
lbl_80058178:
/* 80058178 00053DD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005817C 00053DDC  7C 08 02 A6 */	mflr r0
/* 80058180 00053DE0  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 80058184 00053DE4  38 A0 00 06 */	li r5, 6
/* 80058188 00053DE8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005818C 00053DEC  38 80 00 04 */	li r4, 4
/* 80058190 00053DF0  38 00 00 05 */	li r0, 5
/* 80058194 00053DF4  FC 40 08 90 */	fmr f2, f1
/* 80058198 00053DF8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005819C 00053DFC  3B E0 00 01 */	li r31, 1
/* 800581A0 00053E00  FC A0 08 90 */	fmr f5, f1
/* 800581A4 00053E04  C0 62 85 88 */	lfs f3, lbl_80640B88-_SDA2_BASE_(r2)
/* 800581A8 00053E08  93 C1 00 08 */	stw r30, 8(r1)
/* 800581AC 00053E0C  3B C0 00 00 */	li r30, 0
/* 800581B0 00053E10  C0 82 85 8C */	lfs f4, lbl_80640B8C-_SDA2_BASE_(r2)
/* 800581B4 00053E14  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 800581B8 00053E18  C0 C2 85 90 */	lfs f6, lbl_80640B90-_SDA2_BASE_(r2)
/* 800581BC 00053E1C  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 800581C0 00053E20  98 A3 01 2C */	stb r5, 0x12c(r3)
/* 800581C4 00053E24  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 800581C8 00053E28  93 C3 01 30 */	stw r30, 0x130(r3)
/* 800581CC 00053E2C  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 800581D0 00053E30  80 65 00 04 */	lwz r3, 4(r5)
/* 800581D4 00053E34  60 63 00 04 */	ori r3, r3, 4
/* 800581D8 00053E38  90 65 00 04 */	stw r3, 4(r5)
/* 800581DC 00053E3C  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 800581E0 00053E40  80 65 00 00 */	lwz r3, 0(r5)
/* 800581E4 00053E44  60 63 00 01 */	ori r3, r3, 1
/* 800581E8 00053E48  90 65 00 00 */	stw r3, 0(r5)
/* 800581EC 00053E4C  80 AD A3 D8 */	lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 800581F0 00053E50  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 800581F4 00053E54  93 E3 0A 24 */	stw r31, 0xa24(r3)
/* 800581F8 00053E58  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 800581FC 00053E5C  90 83 0A 28 */	stw r4, 0xa28(r3)
/* 80058200 00053E60  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 80058204 00053E64  90 03 0A 2C */	stw r0, 0xa2c(r3)
/* 80058208 00053E68  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005820C 00053E6C  90 03 0A 30 */	stw r0, 0xa30(r3)
/* 80058210 00053E70  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 80058214 00053E74  80 03 00 64 */	lwz r0, 0x64(r3)
/* 80058218 00053E78  60 00 00 01 */	ori r0, r0, 1
/* 8005821C 00053E7C  90 03 00 64 */	stw r0, 0x64(r3)
/* 80058220 00053E80  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 80058224 00053E84  80 03 00 00 */	lwz r0, 0(r3)
/* 80058228 00053E88  60 00 00 40 */	ori r0, r0, 0x40
/* 8005822C 00053E8C  90 03 00 00 */	stw r0, 0(r3)
/* 80058230 00053E90  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80058234 00053E94  48 1D CD AD */	bl func_80234FE0
/* 80058238 00053E98  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 8005823C 00053E9C  38 80 00 03 */	li r4, 3
/* 80058240 00053EA0  38 00 00 07 */	li r0, 7
/* 80058244 00053EA4  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 80058248 00053EA8  9B E3 0A 36 */	stb r31, 0xa36(r3)
/* 8005824C 00053EAC  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 80058250 00053EB0  9B C3 0A 37 */	stb r30, 0xa37(r3)
/* 80058254 00053EB4  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 80058258 00053EB8  9B C3 0A 38 */	stb r30, 0xa38(r3)
/* 8005825C 00053EBC  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 80058260 00053EC0  80 65 00 64 */	lwz r3, 0x64(r5)
/* 80058264 00053EC4  60 63 00 04 */	ori r3, r3, 4
/* 80058268 00053EC8  90 65 00 64 */	stw r3, 0x64(r5)
/* 8005826C 00053ECC  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 80058270 00053ED0  80 65 00 00 */	lwz r3, 0(r5)
/* 80058274 00053ED4  60 63 00 40 */	ori r3, r3, 0x40
/* 80058278 00053ED8  90 65 00 00 */	stw r3, 0(r5)
/* 8005827C 00053EDC  80 AD A3 D8 */	lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 80058280 00053EE0  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 80058284 00053EE4  9B C3 0A 3C */	stb r30, 0xa3c(r3)
/* 80058288 00053EE8  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005828C 00053EEC  90 83 0A 40 */	stw r4, 0xa40(r3)
/* 80058290 00053EF0  80 85 16 38 */	lwz r4, 0x1638(r5)
/* 80058294 00053EF4  80 64 00 64 */	lwz r3, 0x64(r4)
/* 80058298 00053EF8  60 63 00 08 */	ori r3, r3, 8
/* 8005829C 00053EFC  90 64 00 64 */	stw r3, 0x64(r4)
/* 800582A0 00053F00  80 85 16 38 */	lwz r4, 0x1638(r5)
/* 800582A4 00053F04  80 64 00 00 */	lwz r3, 0(r4)
/* 800582A8 00053F08  60 63 00 40 */	ori r3, r3, 0x40
/* 800582AC 00053F0C  90 64 00 00 */	stw r3, 0(r4)
/* 800582B0 00053F10  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 800582B4 00053F14  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582B8 00053F18  90 03 0A 44 */	stw r0, 0xa44(r3)
/* 800582BC 00053F1C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582C0 00053F20  9B C3 0A 50 */	stb r30, 0xa50(r3)
/* 800582C4 00053F24  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582C8 00053F28  93 C3 0A 48 */	stw r30, 0xa48(r3)
/* 800582CC 00053F2C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582D0 00053F30  90 03 0A 4C */	stw r0, 0xa4c(r3)
/* 800582D4 00053F34  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582D8 00053F38  9B C3 0A 51 */	stb r30, 0xa51(r3)
/* 800582DC 00053F3C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582E0 00053F40  9B E3 0A 52 */	stb r31, 0xa52(r3)
/* 800582E4 00053F44  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582E8 00053F48  80 03 00 64 */	lwz r0, 0x64(r3)
/* 800582EC 00053F4C  60 00 00 10 */	ori r0, r0, 0x10
/* 800582F0 00053F50  90 03 00 64 */	stw r0, 0x64(r3)
/* 800582F4 00053F54  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 800582F8 00053F58  80 03 00 00 */	lwz r0, 0(r3)
/* 800582FC 00053F5C  60 00 00 40 */	ori r0, r0, 0x40
/* 80058300 00053F60  90 03 00 00 */	stw r0, 0(r3)
/* 80058304 00053F64  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80058308 00053F68  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005830C 00053F6C  93 C3 01 84 */	stw r30, 0x184(r3)
/* 80058310 00053F70  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80058314 00053F74  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80058318 00053F78  60 00 00 02 */	ori r0, r0, 2
/* 8005831C 00053F7C  90 03 00 10 */	stw r0, 0x10(r3)
/* 80058320 00053F80  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80058324 00053F84  80 03 00 00 */	lwz r0, 0(r3)
/* 80058328 00053F88  60 00 00 02 */	ori r0, r0, 2
/* 8005832C 00053F8C  90 03 00 00 */	stw r0, 0(r3)
/* 80058330 00053F90  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80058334 00053F94  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80058338 00053F98  93 E3 01 88 */	stw r31, 0x188(r3)
/* 8005833C 00053F9C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80058340 00053FA0  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80058344 00053FA4  60 00 00 04 */	ori r0, r0, 4
/* 80058348 00053FA8  90 03 00 10 */	stw r0, 0x10(r3)
/* 8005834C 00053FAC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80058350 00053FB0  80 03 00 00 */	lwz r0, 0(r3)
/* 80058354 00053FB4  60 00 00 02 */	ori r0, r0, 2
/* 80058358 00053FB8  90 03 00 00 */	stw r0, 0(r3)
/* 8005835C 00053FBC  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 80058360 00053FC0  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 80058364 00053FC4  9B C3 0A 87 */	stb r30, 0xa87(r3)
/* 80058368 00053FC8  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005836C 00053FCC  80 03 00 64 */	lwz r0, 0x64(r3)
/* 80058370 00053FD0  60 00 00 40 */	ori r0, r0, 0x40
/* 80058374 00053FD4  90 03 00 64 */	stw r0, 0x64(r3)
/* 80058378 00053FD8  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 8005837C 00053FDC  80 03 00 00 */	lwz r0, 0(r3)
/* 80058380 00053FE0  60 00 00 40 */	ori r0, r0, 0x40
/* 80058384 00053FE4  90 03 00 00 */	stw r0, 0(r3)
/* 80058388 00053FE8  4B FF E1 85 */	bl func_8005650C
/* 8005838C 00053FEC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058390 00053FF0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80058394 00053FF4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80058398 00053FF8  7C 08 03 A6 */	mtlr r0
/* 8005839C 00053FFC  38 21 00 10 */	addi r1, r1, 0x10
/* 800583A0 00054000  4E 80 00 20 */	blr

.global func_800583A4
func_800583A4:
/* 800583A4 00054004  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800583A8 00054008  80 03 00 08 */	lwz r0, 8(r3)
/* 800583AC 0005400C  60 00 02 00 */	ori r0, r0, 0x200
/* 800583B0 00054010  90 03 00 08 */	stw r0, 8(r3)
/* 800583B4 00054014  4E 80 00 20 */	blr

.global func_800583B8
func_800583B8:
/* 800583B8 00054018  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800583BC 0005401C  80 03 00 08 */	lwz r0, 8(r3)
/* 800583C0 00054020  54 00 05 EA */	rlwinm r0, r0, 0, 0x17, 0x15
/* 800583C4 00054024  90 03 00 08 */	stw r0, 8(r3)
/* 800583C8 00054028  4E 80 00 20 */	blr

.global func_800583CC
func_800583CC:
/* 800583CC 0005402C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800583D0 00054030  80 03 00 08 */	lwz r0, 8(r3)
/* 800583D4 00054034  54 00 05 A8 */	rlwinm r0, r0, 0, 0x16, 0x14
/* 800583D8 00054038  90 03 00 08 */	stw r0, 8(r3)
/* 800583DC 0005403C  4E 80 00 20 */	blr

.global func_800583E0
func_800583E0:
/* 800583E0 00054040  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800583E4 00054044  80 03 00 08 */	lwz r0, 8(r3)
/* 800583E8 00054048  60 00 00 80 */	ori r0, r0, 0x80
/* 800583EC 0005404C  90 03 00 08 */	stw r0, 8(r3)
/* 800583F0 00054050  4E 80 00 20 */	blr

.global func_800583F4
func_800583F4:
/* 800583F4 00054054  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800583F8 00054058  80 03 00 08 */	lwz r0, 8(r3)
/* 800583FC 0005405C  54 00 06 6E */	rlwinm r0, r0, 0, 0x19, 0x17
/* 80058400 00054060  90 03 00 08 */	stw r0, 8(r3)
/* 80058404 00054064  4E 80 00 20 */	blr

.global func_80058408
func_80058408:
/* 80058408 00054068  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005840C 0005406C  80 03 00 08 */	lwz r0, 8(r3)
/* 80058410 00054070  54 00 06 2C */	rlwinm r0, r0, 0, 0x18, 0x16
/* 80058414 00054074  90 03 00 08 */	stw r0, 8(r3)
/* 80058418 00054078  4E 80 00 20 */	blr

.global func_8005841C
func_8005841C:
/* 8005841C 0005407C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058420 00054080  80 03 00 08 */	lwz r0, 8(r3)
/* 80058424 00054084  54 00 05 A8 */	rlwinm r0, r0, 0, 0x16, 0x14
/* 80058428 00054088  90 03 00 08 */	stw r0, 8(r3)
/* 8005842C 0005408C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058430 00054090  80 03 00 08 */	lwz r0, 8(r3)
/* 80058434 00054094  54 00 05 EA */	rlwinm r0, r0, 0, 0x17, 0x15
/* 80058438 00054098  90 03 00 08 */	stw r0, 8(r3)
/* 8005843C 0005409C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058440 000540A0  80 03 00 08 */	lwz r0, 8(r3)
/* 80058444 000540A4  54 00 06 2C */	rlwinm r0, r0, 0, 0x18, 0x16
/* 80058448 000540A8  90 03 00 08 */	stw r0, 8(r3)
/* 8005844C 000540AC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058450 000540B0  80 03 00 08 */	lwz r0, 8(r3)
/* 80058454 000540B4  54 00 06 6E */	rlwinm r0, r0, 0, 0x19, 0x17
/* 80058458 000540B8  90 03 00 08 */	stw r0, 8(r3)
/* 8005845C 000540BC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058460 000540C0  80 03 00 08 */	lwz r0, 8(r3)
/* 80058464 000540C4  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 80058468 000540C8  90 03 00 08 */	stw r0, 8(r3)
/* 8005846C 000540CC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058470 000540D0  80 03 00 08 */	lwz r0, 8(r3)
/* 80058474 000540D4  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 80058478 000540D8  90 03 00 08 */	stw r0, 8(r3)
/* 8005847C 000540DC  4E 80 00 20 */	blr

.global func_80058480
func_80058480:
/* 80058480 000540E0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058484 000540E4  80 03 00 08 */	lwz r0, 8(r3)
/* 80058488 000540E8  54 03 B7 FE */	rlwinm r3, r0, 0x16, 0x1f, 0x1f
/* 8005848C 000540EC  4E 80 00 20 */	blr

.global func_80058490
func_80058490:
/* 80058490 000540F0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058494 000540F4  80 03 00 08 */	lwz r0, 8(r3)
/* 80058498 000540F8  54 03 BF FE */	rlwinm r3, r0, 0x17, 0x1f, 0x1f
/* 8005849C 000540FC  4E 80 00 20 */	blr

.global func_800584A0
func_800584A0:
/* 800584A0 00054100  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800584A4 00054104  80 03 00 08 */	lwz r0, 8(r3)
/* 800584A8 00054108  54 03 C7 FE */	rlwinm r3, r0, 0x18, 0x1f, 0x1f
/* 800584AC 0005410C  4E 80 00 20 */	blr

.global func_800584B0
func_800584B0:
/* 800584B0 00054110  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800584B4 00054114  80 03 00 08 */	lwz r0, 8(r3)
/* 800584B8 00054118  54 03 CF FE */	rlwinm r3, r0, 0x19, 0x1f, 0x1f
/* 800584BC 0005411C  4E 80 00 20 */	blr

.global func_800584C0
func_800584C0:
/* 800584C0 00054120  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800584C4 00054124  80 03 00 08 */	lwz r0, 8(r3)
/* 800584C8 00054128  60 00 00 10 */	ori r0, r0, 0x10
/* 800584CC 0005412C  90 03 00 08 */	stw r0, 8(r3)
/* 800584D0 00054130  4E 80 00 20 */	blr

.global func_800584D4
func_800584D4:
/* 800584D4 00054134  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800584D8 00054138  80 03 00 08 */	lwz r0, 8(r3)
/* 800584DC 0005413C  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 800584E0 00054140  90 03 00 08 */	stw r0, 8(r3)
/* 800584E4 00054144  4E 80 00 20 */	blr

.global func_800584E8
func_800584E8:
/* 800584E8 00054148  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800584EC 0005414C  7C 08 02 A6 */	mflr r0
/* 800584F0 00054150  90 01 00 14 */	stw r0, 0x14(r1)
/* 800584F4 00054154  48 0C 44 81 */	bl func_8011C974
/* 800584F8 00054158  A0 03 00 94 */	lhz r0, 0x94(r3)
/* 800584FC 0005415C  2C 00 00 00 */	cmpwi r0, 0
/* 80058500 00054160  40 82 00 18 */	bne lbl_80058518
/* 80058504 00054164  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058508 00054168  80 03 00 08 */	lwz r0, 8(r3)
/* 8005850C 0005416C  54 00 05 A8 */	rlwinm r0, r0, 0, 0x16, 0x14
/* 80058510 00054170  90 03 00 08 */	stw r0, 8(r3)
/* 80058514 00054174  48 00 00 5C */	b lbl_80058570
lbl_80058518:
/* 80058518 00054178  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005851C 0005417C  3C 00 43 30 */	lis r0, 0x4330
/* 80058520 00054180  90 01 00 08 */	stw r0, 8(r1)
/* 80058524 00054184  80 04 00 08 */	lwz r0, 8(r4)
/* 80058528 00054188  C8 62 85 98 */	lfd f3, lbl_80640B98-_SDA2_BASE_(r2)
/* 8005852C 0005418C  60 00 04 00 */	ori r0, r0, 0x400
/* 80058530 00054190  C0 22 85 84 */	lfs f1, lbl_80640B84-_SDA2_BASE_(r2)
/* 80058534 00054194  90 04 00 08 */	stw r0, 8(r4)
/* 80058538 00054198  C0 02 85 60 */	lfs f0, lbl_80640B60-_SDA2_BASE_(r2)
/* 8005853C 0005419C  A0 03 00 94 */	lhz r0, 0x94(r3)
/* 80058540 000541A0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058544 000541A4  90 01 00 0C */	stw r0, 0xc(r1)
/* 80058548 000541A8  C8 41 00 08 */	lfd f2, 8(r1)
/* 8005854C 000541AC  EC 42 18 28 */	fsubs f2, f2, f3
/* 80058550 000541B0  EC 21 00 B2 */	fmuls f1, f1, f2
/* 80058554 000541B4  D0 23 10 8C */	stfs f1, 0x108c(r3)
/* 80058558 000541B8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005855C 000541BC  D0 03 10 88 */	stfs f0, 0x1088(r3)
/* 80058560 000541C0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058564 000541C4  80 03 00 08 */	lwz r0, 8(r3)
/* 80058568 000541C8  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 8005856C 000541CC  90 03 00 08 */	stw r0, 8(r3)
lbl_80058570:
/* 80058570 000541D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058574 000541D4  7C 08 03 A6 */	mtlr r0
/* 80058578 000541D8  38 21 00 10 */	addi r1, r1, 0x10
/* 8005857C 000541DC  4E 80 00 20 */	blr

.global func_80058580
func_80058580:
/* 80058580 000541E0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80058584 000541E4  7C 08 02 A6 */	mflr r0
/* 80058588 000541E8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005858C 000541EC  48 0C 43 E9 */	bl func_8011C974
/* 80058590 000541F0  A0 03 00 92 */	lhz r0, 0x92(r3)
/* 80058594 000541F4  2C 00 00 00 */	cmpwi r0, 0
/* 80058598 000541F8  40 82 00 18 */	bne lbl_800585B0
/* 8005859C 000541FC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800585A0 00054200  80 03 00 08 */	lwz r0, 8(r3)
/* 800585A4 00054204  54 00 06 2C */	rlwinm r0, r0, 0, 0x18, 0x16
/* 800585A8 00054208  90 03 00 08 */	stw r0, 8(r3)
/* 800585AC 0005420C  48 00 00 54 */	b lbl_80058600
lbl_800585B0:
/* 800585B0 00054210  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800585B4 00054214  3C 00 43 30 */	lis r0, 0x4330
/* 800585B8 00054218  90 01 00 08 */	stw r0, 8(r1)
/* 800585BC 0005421C  80 04 00 08 */	lwz r0, 8(r4)
/* 800585C0 00054220  C8 42 85 98 */	lfd f2, lbl_80640B98-_SDA2_BASE_(r2)
/* 800585C4 00054224  60 00 01 00 */	ori r0, r0, 0x100
/* 800585C8 00054228  C0 02 85 60 */	lfs f0, lbl_80640B60-_SDA2_BASE_(r2)
/* 800585CC 0005422C  90 04 00 08 */	stw r0, 8(r4)
/* 800585D0 00054230  A0 03 00 92 */	lhz r0, 0x92(r3)
/* 800585D4 00054234  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800585D8 00054238  90 01 00 0C */	stw r0, 0xc(r1)
/* 800585DC 0005423C  C8 21 00 08 */	lfd f1, 8(r1)
/* 800585E0 00054240  EC 21 10 28 */	fsubs f1, f1, f2
/* 800585E4 00054244  D0 23 10 94 */	stfs f1, 0x1094(r3)
/* 800585E8 00054248  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800585EC 0005424C  D0 03 10 90 */	stfs f0, 0x1090(r3)
/* 800585F0 00054250  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800585F4 00054254  80 03 00 08 */	lwz r0, 8(r3)
/* 800585F8 00054258  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 800585FC 0005425C  90 03 00 08 */	stw r0, 8(r3)
lbl_80058600:
/* 80058600 00054260  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058604 00054264  7C 08 03 A6 */	mtlr r0
/* 80058608 00054268  38 21 00 10 */	addi r1, r1, 0x10
/* 8005860C 0005426C  4E 80 00 20 */	blr

.global func_80058610
func_80058610:
/* 80058610 00054270  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80058614 00054274  7C 08 02 A6 */	mflr r0
/* 80058618 00054278  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005861C 0005427C  48 0C 43 59 */	bl func_8011C974
/* 80058620 00054280  A0 03 00 94 */	lhz r0, 0x94(r3)
/* 80058624 00054284  2C 00 00 00 */	cmpwi r0, 0
/* 80058628 00054288  40 82 00 0C */	bne lbl_80058634
/* 8005862C 0005428C  38 60 00 00 */	li r3, 0
/* 80058630 00054290  48 00 00 20 */	b lbl_80058650
lbl_80058634:
/* 80058634 00054294  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058638 00054298  C0 23 10 88 */	lfs f1, 0x1088(r3)
/* 8005863C 0005429C  C0 03 10 8C */	lfs f0, 0x108c(r3)
/* 80058640 000542A0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80058644 000542A4  4C 41 13 82 */	cror 2, 1, 2
/* 80058648 000542A8  7C 60 00 26 */	mfcr r3
/* 8005864C 000542AC  54 63 1F FE */	rlwinm r3, r3, 3, 0x1f, 0x1f
lbl_80058650:
/* 80058650 000542B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058654 000542B4  7C 08 03 A6 */	mtlr r0
/* 80058658 000542B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8005865C 000542BC  4E 80 00 20 */	blr

.global func_80058660
func_80058660:
/* 80058660 000542C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80058664 000542C4  7C 08 02 A6 */	mflr r0
/* 80058668 000542C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005866C 000542CC  48 0C 43 09 */	bl func_8011C974
/* 80058670 000542D0  A0 03 00 92 */	lhz r0, 0x92(r3)
/* 80058674 000542D4  2C 00 00 00 */	cmpwi r0, 0
/* 80058678 000542D8  40 82 00 0C */	bne lbl_80058684
/* 8005867C 000542DC  38 60 00 00 */	li r3, 0
/* 80058680 000542E0  48 00 00 20 */	b lbl_800586A0
lbl_80058684:
/* 80058684 000542E4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80058688 000542E8  C0 23 10 90 */	lfs f1, 0x1090(r3)
/* 8005868C 000542EC  C0 03 10 94 */	lfs f0, 0x1094(r3)
/* 80058690 000542F0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80058694 000542F4  4C 41 13 82 */	cror 2, 1, 2
/* 80058698 000542F8  7C 60 00 26 */	mfcr r3
/* 8005869C 000542FC  54 63 1F FE */	rlwinm r3, r3, 3, 0x1f, 0x1f
lbl_800586A0:
/* 800586A0 00054300  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800586A4 00054304  7C 08 03 A6 */	mtlr r0
/* 800586A8 00054308  38 21 00 10 */	addi r1, r1, 0x10
/* 800586AC 0005430C  4E 80 00 20 */	blr

.global func_800586B0
func_800586B0:
/* 800586B0 00054310  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800586B4 00054314  7C 08 02 A6 */	mflr r0
/* 800586B8 00054318  90 01 00 14 */	stw r0, 0x14(r1)
/* 800586BC 0005431C  48 0C 42 B9 */	bl func_8011C974
/* 800586C0 00054320  A0 03 00 94 */	lhz r0, 0x94(r3)
/* 800586C4 00054324  2C 00 00 00 */	cmpwi r0, 0
/* 800586C8 00054328  40 82 00 0C */	bne lbl_800586D4
/* 800586CC 0005432C  38 60 00 00 */	li r3, 0
/* 800586D0 00054330  48 00 00 34 */	b lbl_80058704
lbl_800586D4:
/* 800586D4 00054334  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800586D8 00054338  C0 23 10 88 */	lfs f1, 0x1088(r3)
/* 800586DC 0005433C  C0 03 10 8C */	lfs f0, 0x108c(r3)
/* 800586E0 00054340  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800586E4 00054344  4C 41 13 82 */	cror 2, 1, 2
/* 800586E8 00054348  40 82 00 0C */	bne lbl_800586F4
/* 800586EC 0005434C  38 60 00 00 */	li r3, 0
/* 800586F0 00054350  48 00 00 14 */	b lbl_80058704
lbl_800586F4:
/* 800586F4 00054354  EC 00 08 28 */	fsubs f0, f0, f1
/* 800586F8 00054358  FC 00 00 1E */	fctiwz f0, f0
/* 800586FC 0005435C  D8 01 00 08 */	stfd f0, 8(r1)
/* 80058700 00054360  80 61 00 0C */	lwz r3, 0xc(r1)
lbl_80058704:
/* 80058704 00054364  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058708 00054368  7C 08 03 A6 */	mtlr r0
/* 8005870C 0005436C  38 21 00 10 */	addi r1, r1, 0x10
/* 80058710 00054370  4E 80 00 20 */	blr

.global func_80058714
func_80058714:
/* 80058714 00054374  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80058718 00054378  7C 08 02 A6 */	mflr r0
/* 8005871C 0005437C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80058720 00054380  48 0C 42 55 */	bl func_8011C974
/* 80058724 00054384  A0 03 00 92 */	lhz r0, 0x92(r3)
/* 80058728 00054388  2C 00 00 00 */	cmpwi r0, 0
/* 8005872C 0005438C  40 82 00 0C */	bne lbl_80058738
/* 80058730 00054390  38 60 00 00 */	li r3, 0
/* 80058734 00054394  48 00 00 34 */	b lbl_80058768
lbl_80058738:
/* 80058738 00054398  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005873C 0005439C  C0 23 10 90 */	lfs f1, 0x1090(r3)
/* 80058740 000543A0  C0 03 10 94 */	lfs f0, 0x1094(r3)
/* 80058744 000543A4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80058748 000543A8  4C 41 13 82 */	cror 2, 1, 2
/* 8005874C 000543AC  40 82 00 0C */	bne lbl_80058758
/* 80058750 000543B0  38 60 00 00 */	li r3, 0
/* 80058754 000543B4  48 00 00 14 */	b lbl_80058768
lbl_80058758:
/* 80058758 000543B8  EC 00 08 28 */	fsubs f0, f0, f1
/* 8005875C 000543BC  FC 00 00 1E */	fctiwz f0, f0
/* 80058760 000543C0  D8 01 00 08 */	stfd f0, 8(r1)
/* 80058764 000543C4  80 61 00 0C */	lwz r3, 0xc(r1)
lbl_80058768:
/* 80058768 000543C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005876C 000543CC  7C 08 03 A6 */	mtlr r0
/* 80058770 000543D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80058774 000543D4  4E 80 00 20 */	blr

.global func_80058778
func_80058778:
/* 80058778 000543D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005877C 000543DC  7C 08 02 A6 */	mflr r0
/* 80058780 000543E0  2C 03 00 00 */	cmpwi r3, 0
/* 80058784 000543E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80058788 000543E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005878C 000543EC  41 82 02 D0 */	beq lbl_80058A5C
/* 80058790 000543F0  38 60 00 00 */	li r3, 0
/* 80058794 000543F4  48 00 03 7D */	bl func_80058B10
/* 80058798 000543F8  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005879C 000543FC  2C 00 00 02 */	cmpwi r0, 2
/* 800587A0 00054400  41 82 01 30 */	beq lbl_800588D0
/* 800587A4 00054404  40 80 00 14 */	bge lbl_800587B8
/* 800587A8 00054408  2C 00 00 00 */	cmpwi r0, 0
/* 800587AC 0005440C  41 82 00 1C */	beq lbl_800587C8
/* 800587B0 00054410  40 80 00 9C */	bge lbl_8005884C
/* 800587B4 00054414  48 00 03 48 */	b lbl_80058AFC
lbl_800587B8:
/* 800587B8 00054418  2C 00 00 04 */	cmpwi r0, 4
/* 800587BC 0005441C  41 82 02 1C */	beq lbl_800589D8
/* 800587C0 00054420  40 80 03 3C */	bge lbl_80058AFC
/* 800587C4 00054424  48 00 01 90 */	b lbl_80058954
lbl_800587C8:
/* 800587C8 00054428  38 60 05 DC */	li r3, 0x5dc
/* 800587CC 0005442C  48 1F 0E 11 */	bl func_802495DC
/* 800587D0 00054430  38 60 05 DC */	li r3, 0x5dc
/* 800587D4 00054434  3C 80 27 C0 */	lis r4, 0x27c0
/* 800587D8 00054438  48 18 2E 0D */	bl func_801DB5E4
/* 800587DC 0005443C  7C 7F 1B 78 */	mr r31, r3
/* 800587E0 00054440  38 60 05 DC */	li r3, 0x5dc
/* 800587E4 00054444  3C 80 27 C0 */	lis r4, 0x27c0
/* 800587E8 00054448  48 18 2C D5 */	bl func_801DB4BC
/* 800587EC 0005444C  7C 64 1B 78 */	mr r4, r3
/* 800587F0 00054450  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 800587F4 00054454  7F E5 FB 78 */	mr r5, r31
/* 800587F8 00054458  4B FA B8 09 */	bl memcpy
/* 800587FC 0005445C  38 60 05 DC */	li r3, 0x5dc
/* 80058800 00054460  3C 80 27 C1 */	lis r4, 0x27c1
/* 80058804 00054464  48 18 2D E1 */	bl func_801DB5E4
/* 80058808 00054468  7C 7F 1B 78 */	mr r31, r3
/* 8005880C 0005446C  38 60 05 DC */	li r3, 0x5dc
/* 80058810 00054470  3C 80 27 C1 */	lis r4, 0x27c1
/* 80058814 00054474  48 18 2C A9 */	bl func_801DB4BC
/* 80058818 00054478  7C 64 1B 78 */	mr r4, r3
/* 8005881C 0005447C  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058820 00054480  7F E5 FB 78 */	mr r5, r31
/* 80058824 00054484  4B FA B7 DD */	bl memcpy
/* 80058828 00054488  38 60 05 DC */	li r3, 0x5dc
/* 8005882C 0005448C  48 1F 10 65 */	bl func_80249890
/* 80058830 00054490  38 60 05 DC */	li r3, 0x5dc
/* 80058834 00054494  48 18 2E 41 */	bl func_801DB674
/* 80058838 00054498  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 8005883C 0005449C  48 1F 78 21 */	bl func_8025005C
/* 80058840 000544A0  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058844 000544A4  48 1F 78 29 */	bl func_8025006C
/* 80058848 000544A8  48 00 02 B4 */	b lbl_80058AFC
lbl_8005884C:
/* 8005884C 000544AC  38 60 05 DE */	li r3, 0x5de
/* 80058850 000544B0  48 1F 0D 8D */	bl func_802495DC
/* 80058854 000544B4  38 60 05 DE */	li r3, 0x5de
/* 80058858 000544B8  3C 80 2B 82 */	lis r4, 0x2b82
/* 8005885C 000544BC  48 18 2D 89 */	bl func_801DB5E4
/* 80058860 000544C0  7C 7F 1B 78 */	mr r31, r3
/* 80058864 000544C4  38 60 05 DE */	li r3, 0x5de
/* 80058868 000544C8  3C 80 2B 82 */	lis r4, 0x2b82
/* 8005886C 000544CC  48 18 2C 51 */	bl func_801DB4BC
/* 80058870 000544D0  7C 64 1B 78 */	mr r4, r3
/* 80058874 000544D4  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058878 000544D8  7F E5 FB 78 */	mr r5, r31
/* 8005887C 000544DC  4B FA B7 85 */	bl memcpy
/* 80058880 000544E0  38 60 05 DE */	li r3, 0x5de
/* 80058884 000544E4  3C 80 2B 83 */	lis r4, 0x2b83
/* 80058888 000544E8  48 18 2D 5D */	bl func_801DB5E4
/* 8005888C 000544EC  7C 7F 1B 78 */	mr r31, r3
/* 80058890 000544F0  38 60 05 DE */	li r3, 0x5de
/* 80058894 000544F4  3C 80 2B 83 */	lis r4, 0x2b83
/* 80058898 000544F8  48 18 2C 25 */	bl func_801DB4BC
/* 8005889C 000544FC  7C 64 1B 78 */	mr r4, r3
/* 800588A0 00054500  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 800588A4 00054504  7F E5 FB 78 */	mr r5, r31
/* 800588A8 00054508  4B FA B7 59 */	bl memcpy
/* 800588AC 0005450C  38 60 05 DE */	li r3, 0x5de
/* 800588B0 00054510  48 1F 0F E1 */	bl func_80249890
/* 800588B4 00054514  38 60 05 DE */	li r3, 0x5de
/* 800588B8 00054518  48 18 2D BD */	bl func_801DB674
/* 800588BC 0005451C  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 800588C0 00054520  48 1F 77 9D */	bl func_8025005C
/* 800588C4 00054524  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 800588C8 00054528  48 1F 77 A5 */	bl func_8025006C
/* 800588CC 0005452C  48 00 02 30 */	b lbl_80058AFC
lbl_800588D0:
/* 800588D0 00054530  38 60 05 E0 */	li r3, 0x5e0
/* 800588D4 00054534  48 1F 0D 09 */	bl func_802495DC
/* 800588D8 00054538  38 60 05 E0 */	li r3, 0x5e0
/* 800588DC 0005453C  3C 80 2B 86 */	lis r4, 0x2b86
/* 800588E0 00054540  48 18 2D 05 */	bl func_801DB5E4
/* 800588E4 00054544  7C 7F 1B 78 */	mr r31, r3
/* 800588E8 00054548  38 60 05 E0 */	li r3, 0x5e0
/* 800588EC 0005454C  3C 80 2B 86 */	lis r4, 0x2b86
/* 800588F0 00054550  48 18 2B CD */	bl func_801DB4BC
/* 800588F4 00054554  7C 64 1B 78 */	mr r4, r3
/* 800588F8 00054558  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 800588FC 0005455C  7F E5 FB 78 */	mr r5, r31
/* 80058900 00054560  4B FA B7 01 */	bl memcpy
/* 80058904 00054564  38 60 05 E0 */	li r3, 0x5e0
/* 80058908 00054568  3C 80 2B 87 */	lis r4, 0x2b87
/* 8005890C 0005456C  48 18 2C D9 */	bl func_801DB5E4
/* 80058910 00054570  7C 7F 1B 78 */	mr r31, r3
/* 80058914 00054574  38 60 05 E0 */	li r3, 0x5e0
/* 80058918 00054578  3C 80 2B 87 */	lis r4, 0x2b87
/* 8005891C 0005457C  48 18 2B A1 */	bl func_801DB4BC
/* 80058920 00054580  7C 64 1B 78 */	mr r4, r3
/* 80058924 00054584  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058928 00054588  7F E5 FB 78 */	mr r5, r31
/* 8005892C 0005458C  4B FA B6 D5 */	bl memcpy
/* 80058930 00054590  38 60 05 E0 */	li r3, 0x5e0
/* 80058934 00054594  48 1F 0F 5D */	bl func_80249890
/* 80058938 00054598  38 60 05 E0 */	li r3, 0x5e0
/* 8005893C 0005459C  48 18 2D 39 */	bl func_801DB674
/* 80058940 000545A0  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058944 000545A4  48 1F 77 19 */	bl func_8025005C
/* 80058948 000545A8  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 8005894C 000545AC  48 1F 77 21 */	bl func_8025006C
/* 80058950 000545B0  48 00 01 AC */	b lbl_80058AFC
lbl_80058954:
/* 80058954 000545B4  38 60 05 DD */	li r3, 0x5dd
/* 80058958 000545B8  48 1F 0C 85 */	bl func_802495DC
/* 8005895C 000545BC  38 60 05 DD */	li r3, 0x5dd
/* 80058960 000545C0  3C 80 2B 80 */	lis r4, 0x2b80
/* 80058964 000545C4  48 18 2C 81 */	bl func_801DB5E4
/* 80058968 000545C8  7C 7F 1B 78 */	mr r31, r3
/* 8005896C 000545CC  38 60 05 DD */	li r3, 0x5dd
/* 80058970 000545D0  3C 80 2B 80 */	lis r4, 0x2b80
/* 80058974 000545D4  48 18 2B 49 */	bl func_801DB4BC
/* 80058978 000545D8  7C 64 1B 78 */	mr r4, r3
/* 8005897C 000545DC  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058980 000545E0  7F E5 FB 78 */	mr r5, r31
/* 80058984 000545E4  4B FA B6 7D */	bl memcpy
/* 80058988 000545E8  38 60 05 DD */	li r3, 0x5dd
/* 8005898C 000545EC  3C 80 2B 81 */	lis r4, 0x2b81
/* 80058990 000545F0  48 18 2C 55 */	bl func_801DB5E4
/* 80058994 000545F4  7C 7F 1B 78 */	mr r31, r3
/* 80058998 000545F8  38 60 05 DD */	li r3, 0x5dd
/* 8005899C 000545FC  3C 80 2B 81 */	lis r4, 0x2b81
/* 800589A0 00054600  48 18 2B 1D */	bl func_801DB4BC
/* 800589A4 00054604  7C 64 1B 78 */	mr r4, r3
/* 800589A8 00054608  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 800589AC 0005460C  7F E5 FB 78 */	mr r5, r31
/* 800589B0 00054610  4B FA B6 51 */	bl memcpy
/* 800589B4 00054614  38 60 05 DD */	li r3, 0x5dd
/* 800589B8 00054618  48 1F 0E D9 */	bl func_80249890
/* 800589BC 0005461C  38 60 05 DD */	li r3, 0x5dd
/* 800589C0 00054620  48 18 2C B5 */	bl func_801DB674
/* 800589C4 00054624  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 800589C8 00054628  48 1F 76 95 */	bl func_8025005C
/* 800589CC 0005462C  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 800589D0 00054630  48 1F 76 9D */	bl func_8025006C
/* 800589D4 00054634  48 00 01 28 */	b lbl_80058AFC
lbl_800589D8:
/* 800589D8 00054638  38 60 05 DF */	li r3, 0x5df
/* 800589DC 0005463C  48 1F 0C 01 */	bl func_802495DC
/* 800589E0 00054640  38 60 05 DF */	li r3, 0x5df
/* 800589E4 00054644  3C 80 2B 84 */	lis r4, 0x2b84
/* 800589E8 00054648  48 18 2B FD */	bl func_801DB5E4
/* 800589EC 0005464C  7C 7F 1B 78 */	mr r31, r3
/* 800589F0 00054650  38 60 05 DF */	li r3, 0x5df
/* 800589F4 00054654  3C 80 2B 84 */	lis r4, 0x2b84
/* 800589F8 00054658  48 18 2A C5 */	bl func_801DB4BC
/* 800589FC 0005465C  7C 64 1B 78 */	mr r4, r3
/* 80058A00 00054660  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058A04 00054664  7F E5 FB 78 */	mr r5, r31
/* 80058A08 00054668  4B FA B5 F9 */	bl memcpy
/* 80058A0C 0005466C  38 60 05 DF */	li r3, 0x5df
/* 80058A10 00054670  3C 80 2B 85 */	lis r4, 0x2b85
/* 80058A14 00054674  48 18 2B D1 */	bl func_801DB5E4
/* 80058A18 00054678  7C 7F 1B 78 */	mr r31, r3
/* 80058A1C 0005467C  38 60 05 DF */	li r3, 0x5df
/* 80058A20 00054680  3C 80 2B 85 */	lis r4, 0x2b85
/* 80058A24 00054684  48 18 2A 99 */	bl func_801DB4BC
/* 80058A28 00054688  7C 64 1B 78 */	mr r4, r3
/* 80058A2C 0005468C  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058A30 00054690  7F E5 FB 78 */	mr r5, r31
/* 80058A34 00054694  4B FA B5 CD */	bl memcpy
/* 80058A38 00054698  38 60 05 DF */	li r3, 0x5df
/* 80058A3C 0005469C  48 1F 0E 55 */	bl func_80249890
/* 80058A40 000546A0  38 60 05 DF */	li r3, 0x5df
/* 80058A44 000546A4  48 18 2C 31 */	bl func_801DB674
/* 80058A48 000546A8  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058A4C 000546AC  48 1F 76 11 */	bl func_8025005C
/* 80058A50 000546B0  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058A54 000546B4  48 1F 76 19 */	bl func_8025006C
/* 80058A58 000546B8  48 00 00 A4 */	b lbl_80058AFC
lbl_80058A5C:
/* 80058A5C 000546BC  48 10 6C 35 */	bl func_8015F690
/* 80058A60 000546C0  80 03 00 48 */	lwz r0, 0x48(r3)
/* 80058A64 000546C4  2C 00 00 00 */	cmpwi r0, 0
/* 80058A68 000546C8  41 82 00 14 */	beq lbl_80058A7C
/* 80058A6C 000546CC  41 80 00 10 */	blt lbl_80058A7C
/* 80058A70 000546D0  2C 00 00 05 */	cmpwi r0, 5
/* 80058A74 000546D4  40 80 00 08 */	bge lbl_80058A7C
/* 80058A78 000546D8  48 00 00 84 */	b lbl_80058AFC
lbl_80058A7C:
/* 80058A7C 000546DC  38 60 05 DC */	li r3, 0x5dc
/* 80058A80 000546E0  48 1F 0B 5D */	bl func_802495DC
/* 80058A84 000546E4  38 60 05 DC */	li r3, 0x5dc
/* 80058A88 000546E8  3C 80 27 C0 */	lis r4, 0x27c0
/* 80058A8C 000546EC  48 18 2B 59 */	bl func_801DB5E4
/* 80058A90 000546F0  7C 7F 1B 78 */	mr r31, r3
/* 80058A94 000546F4  38 60 05 DC */	li r3, 0x5dc
/* 80058A98 000546F8  3C 80 27 C0 */	lis r4, 0x27c0
/* 80058A9C 000546FC  48 18 2A 21 */	bl func_801DB4BC
/* 80058AA0 00054700  7C 64 1B 78 */	mr r4, r3
/* 80058AA4 00054704  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058AA8 00054708  7F E5 FB 78 */	mr r5, r31
/* 80058AAC 0005470C  4B FA B5 55 */	bl memcpy
/* 80058AB0 00054710  38 60 05 DC */	li r3, 0x5dc
/* 80058AB4 00054714  3C 80 27 C1 */	lis r4, 0x27c1
/* 80058AB8 00054718  48 18 2B 2D */	bl func_801DB5E4
/* 80058ABC 0005471C  7C 7F 1B 78 */	mr r31, r3
/* 80058AC0 00054720  38 60 05 DC */	li r3, 0x5dc
/* 80058AC4 00054724  3C 80 27 C1 */	lis r4, 0x27c1
/* 80058AC8 00054728  48 18 29 F5 */	bl func_801DB4BC
/* 80058ACC 0005472C  7C 64 1B 78 */	mr r4, r3
/* 80058AD0 00054730  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058AD4 00054734  7F E5 FB 78 */	mr r5, r31
/* 80058AD8 00054738  4B FA B5 29 */	bl memcpy
/* 80058ADC 0005473C  38 60 05 DC */	li r3, 0x5dc
/* 80058AE0 00054740  48 1F 0D B1 */	bl func_80249890
/* 80058AE4 00054744  38 60 05 DC */	li r3, 0x5dc
/* 80058AE8 00054748  48 18 2B 8D */	bl func_801DB674
/* 80058AEC 0005474C  80 6D 96 48 */	lwz r3, lbl_8063E908-_SDA_BASE_(r13)
/* 80058AF0 00054750  48 1F 75 6D */	bl func_8025005C
/* 80058AF4 00054754  80 6D 96 4C */	lwz r3, lbl_8063E90C-_SDA_BASE_(r13)
/* 80058AF8 00054758  48 1F 75 75 */	bl func_8025006C
lbl_80058AFC:
/* 80058AFC 0005475C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058B00 00054760  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80058B04 00054764  7C 08 03 A6 */	mtlr r0
/* 80058B08 00054768  38 21 00 10 */	addi r1, r1, 0x10
/* 80058B0C 0005476C  4E 80 00 20 */	blr

.global func_80058B10
func_80058B10:
/* 80058B10 00054770  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80058B14 00054774  7C 08 02 A6 */	mflr r0
/* 80058B18 00054778  90 01 00 14 */	stw r0, 0x14(r1)
/* 80058B1C 0005477C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80058B20 00054780  7C 7F 1B 78 */	mr r31, r3
/* 80058B24 00054784  48 29 39 25 */	bl func_802EC448
/* 80058B28 00054788  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 80058B2C 0005478C  2C 00 00 04 */	cmpwi r0, 4
/* 80058B30 00054790  41 82 00 38 */	beq lbl_80058B68
/* 80058B34 00054794  40 80 00 14 */	bge lbl_80058B48
/* 80058B38 00054798  2C 00 00 02 */	cmpwi r0, 2
/* 80058B3C 0005479C  41 82 00 1C */	beq lbl_80058B58
/* 80058B40 000547A0  40 80 00 20 */	bge lbl_80058B60
/* 80058B44 000547A4  48 00 00 48 */	b lbl_80058B8C
lbl_80058B48:
/* 80058B48 000547A8  2C 00 00 06 */	cmpwi r0, 6
/* 80058B4C 000547AC  41 82 00 2C */	beq lbl_80058B78
/* 80058B50 000547B0  40 80 00 3C */	bge lbl_80058B8C
/* 80058B54 000547B4  48 00 00 1C */	b lbl_80058B70
lbl_80058B58:
/* 80058B58 000547B8  38 60 00 01 */	li r3, 1
/* 80058B5C 000547BC  48 00 00 34 */	b lbl_80058B90
lbl_80058B60:
/* 80058B60 000547C0  38 60 00 03 */	li r3, 3
/* 80058B64 000547C4  48 00 00 2C */	b lbl_80058B90
lbl_80058B68:
/* 80058B68 000547C8  38 60 00 02 */	li r3, 2
/* 80058B6C 000547CC  48 00 00 24 */	b lbl_80058B90
lbl_80058B70:
/* 80058B70 000547D0  38 60 00 04 */	li r3, 4
/* 80058B74 000547D4  48 00 00 1C */	b lbl_80058B90
lbl_80058B78:
/* 80058B78 000547D8  7C 1F 00 D0 */	neg r0, r31
/* 80058B7C 000547DC  7C 00 FB 78 */	or r0, r0, r31
/* 80058B80 000547E0  7C 00 FE 70 */	srawi r0, r0, 0x1f
/* 80058B84 000547E4  70 03 00 05 */	andi. r3, r0, 5
/* 80058B88 000547E8  48 00 00 08 */	b lbl_80058B90
lbl_80058B8C:
/* 80058B8C 000547EC  38 60 00 00 */	li r3, 0
lbl_80058B90:
/* 80058B90 000547F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058B94 000547F4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80058B98 000547F8  7C 08 03 A6 */	mtlr r0
/* 80058B9C 000547FC  38 21 00 10 */	addi r1, r1, 0x10
/* 80058BA0 00054800  4E 80 00 20 */	blr

.global VMBASEIsPageValid
VMBASEIsPageValid:
/* 80058BA4 00054804  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80058BA8 00054808  7C 08 02 A6 */	mflr r0
/* 80058BAC 0005480C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80058BB0 00054810  48 10 6A E1 */	bl func_8015F690
/* 80058BB4 00054814  80 03 00 48 */	lwz r0, 0x48(r3)
/* 80058BB8 00054818  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 80058BBC 0005481C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80058BC0 00054820  7C 08 03 A6 */	mtlr r0
/* 80058BC4 00054824  38 21 00 10 */	addi r1, r1, 0x10
/* 80058BC8 00054828  4E 80 00 20 */	blr

.global func_80058BCC
func_80058BCC:
/* 80058BCC 0005482C  28 03 00 01 */	cmplwi r3, 1
/* 80058BD0 00054830  41 80 00 24 */	blt lbl_80058BF4
/* 80058BD4 00054834  28 03 00 0C */	cmplwi r3, 0xc
/* 80058BD8 00054838  41 81 00 1C */	bgt lbl_80058BF4
/* 80058BDC 0005483C  38 03 FF FF */	addi r0, r3, -1
/* 80058BE0 00054840  3C 60 80 41 */	lis r3, lbl_8040B088@ha
/* 80058BE4 00054844  54 00 08 3C */	slwi r0, r0, 1
/* 80058BE8 00054848  38 63 B0 88 */	addi r3, r3, lbl_8040B088@l
/* 80058BEC 0005484C  7C 63 02 2E */	lhzx r3, r3, r0
/* 80058BF0 00054850  4E 80 00 20 */	blr
lbl_80058BF4:
/* 80058BF4 00054854  38 60 00 00 */	li r3, 0
/* 80058BF8 00054858  4E 80 00 20 */	blr

.global func_80058BFC
func_80058BFC:
/* 80058BFC 0005485C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80058C00 00054860  7C 08 02 A6 */	mflr r0
/* 80058C04 00054864  90 01 00 24 */	stw r0, 0x24(r1)
/* 80058C08 00054868  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80058C0C 0005486C  3B E0 00 00 */	li r31, 0
/* 80058C10 00054870  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80058C14 00054874  7C BE 2B 78 */	mr r30, r5
/* 80058C18 00054878  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80058C1C 0005487C  7C 9D 23 78 */	mr r29, r4
/* 80058C20 00054880  93 81 00 10 */	stw r28, 0x10(r1)
/* 80058C24 00054884  7C 7C 1B 78 */	mr r28, r3
/* 80058C28 00054888  93 E1 00 08 */	stw r31, 8(r1)
/* 80058C2C 0005488C  B3 E1 00 0C */	sth r31, 0xc(r1)
/* 80058C30 00054890  4B FF FF 75 */	bl VMBASEIsPageValid
/* 80058C34 00054894  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 80058C38 00054898  28 00 00 01 */	cmplwi r0, 1
/* 80058C3C 0005489C  40 82 00 18 */	bne lbl_80058C54
/* 80058C40 000548A0  38 60 00 2E */	li r3, 0x2e
/* 80058C44 000548A4  38 00 00 20 */	li r0, 0x20
/* 80058C48 000548A8  B0 61 00 08 */	sth r3, 8(r1)
/* 80058C4C 000548AC  B0 01 00 0A */	sth r0, 0xa(r1)
/* 80058C50 000548B0  48 00 00 10 */	b lbl_80058C60
lbl_80058C54:
/* 80058C54 000548B4  38 00 00 20 */	li r0, 0x20
/* 80058C58 000548B8  B3 E1 00 0A */	sth r31, 0xa(r1)
/* 80058C5C 000548BC  B0 01 00 08 */	sth r0, 8(r1)
lbl_80058C60:
/* 80058C60 000548C0  38 81 00 08 */	addi r4, r1, 8
/* 80058C64 000548C4  38 60 00 0F */	li r3, 0xf
/* 80058C68 000548C8  48 10 36 A1 */	bl func_8015C308
/* 80058C6C 000548CC  7F 84 E3 78 */	mr r4, r28
/* 80058C70 000548D0  7F A5 EB 78 */	mr r5, r29
/* 80058C74 000548D4  7F C8 F3 78 */	mr r8, r30
/* 80058C78 000548D8  38 60 03 F9 */	li r3, 0x3f9
/* 80058C7C 000548DC  38 C0 00 00 */	li r6, 0
/* 80058C80 000548E0  38 E0 00 00 */	li r7, 0
/* 80058C84 000548E4  48 1F 74 B1 */	bl func_80250134
/* 80058C88 000548E8  38 60 03 F9 */	li r3, 0x3f9
/* 80058C8C 000548EC  38 80 00 01 */	li r4, 1
/* 80058C90 000548F0  38 A0 00 00 */	li r5, 0
/* 80058C94 000548F4  48 1F 77 05 */	bl func_80250398
/* 80058C98 000548F8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80058C9C 000548FC  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80058CA0 00054900  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80058CA4 00054904  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80058CA8 00054908  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80058CAC 0005490C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80058CB0 00054910  7C 08 03 A6 */	mtlr r0
/* 80058CB4 00054914  38 21 00 20 */	addi r1, r1, 0x20
/* 80058CB8 00054918  4E 80 00 20 */	blr

.global func_80058CBC
func_80058CBC:
/* 80058CBC 0005491C  38 00 00 03 */	li r0, 3
/* 80058CC0 00054920  7C 65 1B 78 */	mr r5, r3
/* 80058CC4 00054924  39 00 00 00 */	li r8, 0
/* 80058CC8 00054928  7C 66 1B 78 */	mr r6, r3
/* 80058CCC 0005492C  7C 09 03 A6 */	mtctr r0
lbl_80058CD0:
/* 80058CD0 00054930  A0 E5 00 04 */	lhz r7, 4(r5)
/* 80058CD4 00054934  28 07 FF FF */	cmplwi r7, 0xffff
/* 80058CD8 00054938  40 82 00 28 */	bne lbl_80058D00
/* 80058CDC 0005493C  A0 86 00 06 */	lhz r4, 6(r6)
/* 80058CE0 00054940  28 04 FF FF */	cmplwi r4, 0xffff
/* 80058CE4 00054944  40 82 00 1C */	bne lbl_80058D00
/* 80058CE8 00054948  7D 00 07 34 */	extsh r0, r8
/* 80058CEC 0005494C  38 A0 00 00 */	li r5, 0
/* 80058CF0 00054950  54 00 08 3C */	slwi r0, r0, 1
/* 80058CF4 00054954  7C 83 02 14 */	add r4, r3, r0
/* 80058CF8 00054958  B0 A4 00 04 */	sth r5, 4(r4)
/* 80058CFC 0005495C  48 00 00 D0 */	b lbl_80058DCC
lbl_80058D00:
/* 80058D00 00054960  2C 07 00 00 */	cmpwi r7, 0
/* 80058D04 00054964  41 82 00 C8 */	beq lbl_80058DCC
/* 80058D08 00054968  A0 E5 00 06 */	lhz r7, 6(r5)
/* 80058D0C 0005496C  39 08 00 01 */	addi r8, r8, 1
/* 80058D10 00054970  7D 00 07 34 */	extsh r0, r8
/* 80058D14 00054974  28 07 FF FF */	cmplwi r7, 0xffff
/* 80058D18 00054978  40 82 00 24 */	bne lbl_80058D3C
/* 80058D1C 0005497C  A0 86 00 08 */	lhz r4, 8(r6)
/* 80058D20 00054980  28 04 FF FF */	cmplwi r4, 0xffff
/* 80058D24 00054984  40 82 00 18 */	bne lbl_80058D3C
/* 80058D28 00054988  54 00 08 3C */	slwi r0, r0, 1
/* 80058D2C 0005498C  38 A0 00 00 */	li r5, 0
/* 80058D30 00054990  7C 83 02 14 */	add r4, r3, r0
/* 80058D34 00054994  B0 A4 00 04 */	sth r5, 4(r4)
/* 80058D38 00054998  48 00 00 94 */	b lbl_80058DCC
lbl_80058D3C:
/* 80058D3C 0005499C  2C 07 00 00 */	cmpwi r7, 0
/* 80058D40 000549A0  41 82 00 8C */	beq lbl_80058DCC
/* 80058D44 000549A4  A0 E5 00 08 */	lhz r7, 8(r5)
/* 80058D48 000549A8  39 08 00 01 */	addi r8, r8, 1
/* 80058D4C 000549AC  7D 00 07 34 */	extsh r0, r8
/* 80058D50 000549B0  28 07 FF FF */	cmplwi r7, 0xffff
/* 80058D54 000549B4  40 82 00 24 */	bne lbl_80058D78
/* 80058D58 000549B8  A0 86 00 0A */	lhz r4, 0xa(r6)
/* 80058D5C 000549BC  28 04 FF FF */	cmplwi r4, 0xffff
/* 80058D60 000549C0  40 82 00 18 */	bne lbl_80058D78
/* 80058D64 000549C4  54 00 08 3C */	slwi r0, r0, 1
/* 80058D68 000549C8  38 A0 00 00 */	li r5, 0
/* 80058D6C 000549CC  7C 83 02 14 */	add r4, r3, r0
/* 80058D70 000549D0  B0 A4 00 04 */	sth r5, 4(r4)
/* 80058D74 000549D4  48 00 00 58 */	b lbl_80058DCC
lbl_80058D78:
/* 80058D78 000549D8  2C 07 00 00 */	cmpwi r7, 0
/* 80058D7C 000549DC  41 82 00 50 */	beq lbl_80058DCC
/* 80058D80 000549E0  A0 E5 00 0A */	lhz r7, 0xa(r5)
/* 80058D84 000549E4  39 08 00 01 */	addi r8, r8, 1
/* 80058D88 000549E8  7D 00 07 34 */	extsh r0, r8
/* 80058D8C 000549EC  28 07 FF FF */	cmplwi r7, 0xffff
/* 80058D90 000549F0  40 82 00 24 */	bne lbl_80058DB4
/* 80058D94 000549F4  A0 86 00 0C */	lhz r4, 0xc(r6)
/* 80058D98 000549F8  28 04 FF FF */	cmplwi r4, 0xffff
/* 80058D9C 000549FC  40 82 00 18 */	bne lbl_80058DB4
/* 80058DA0 00054A00  54 00 08 3C */	slwi r0, r0, 1
/* 80058DA4 00054A04  38 A0 00 00 */	li r5, 0
/* 80058DA8 00054A08  7C 83 02 14 */	add r4, r3, r0
/* 80058DAC 00054A0C  B0 A4 00 04 */	sth r5, 4(r4)
/* 80058DB0 00054A10  48 00 00 1C */	b lbl_80058DCC
lbl_80058DB4:
/* 80058DB4 00054A14  2C 07 00 00 */	cmpwi r7, 0
/* 80058DB8 00054A18  41 82 00 14 */	beq lbl_80058DCC
/* 80058DBC 00054A1C  39 08 00 01 */	addi r8, r8, 1
/* 80058DC0 00054A20  38 C6 00 08 */	addi r6, r6, 8
/* 80058DC4 00054A24  38 A5 00 08 */	addi r5, r5, 8
/* 80058DC8 00054A28  42 00 FF 08 */	bdnz lbl_80058CD0
lbl_80058DCC:
/* 80058DCC 00054A2C  A0 A3 00 16 */	lhz r5, 0x16(r3)
/* 80058DD0 00054A30  3C 80 00 01 */	lis r4, 0x0000FFFF@ha
/* 80058DD4 00054A34  38 84 FF FF */	addi r4, r4, 0x0000FFFF@l
/* 80058DD8 00054A38  38 00 00 13 */	li r0, 0x13
/* 80058DDC 00054A3C  B0 A3 00 1A */	sth r5, 0x1a(r3)
/* 80058DE0 00054A40  A0 A3 00 14 */	lhz r5, 0x14(r3)
/* 80058DE4 00054A44  B0 A3 00 18 */	sth r5, 0x18(r3)
/* 80058DE8 00054A48  A0 A3 00 12 */	lhz r5, 0x12(r3)
/* 80058DEC 00054A4C  B0 A3 00 16 */	sth r5, 0x16(r3)
/* 80058DF0 00054A50  A0 A3 00 10 */	lhz r5, 0x10(r3)
/* 80058DF4 00054A54  B0 A3 00 14 */	sth r5, 0x14(r3)
/* 80058DF8 00054A58  A0 A3 00 0E */	lhz r5, 0xe(r3)
/* 80058DFC 00054A5C  B0 A3 00 12 */	sth r5, 0x12(r3)
/* 80058E00 00054A60  A0 A3 00 0C */	lhz r5, 0xc(r3)
/* 80058E04 00054A64  B0 A3 00 10 */	sth r5, 0x10(r3)
/* 80058E08 00054A68  A0 A3 00 0A */	lhz r5, 0xa(r3)
/* 80058E0C 00054A6C  B0 A3 00 0E */	sth r5, 0xe(r3)
/* 80058E10 00054A70  A0 A3 00 08 */	lhz r5, 8(r3)
/* 80058E14 00054A74  B0 A3 00 0C */	sth r5, 0xc(r3)
/* 80058E18 00054A78  A0 A3 00 06 */	lhz r5, 6(r3)
/* 80058E1C 00054A7C  B0 A3 00 0A */	sth r5, 0xa(r3)
/* 80058E20 00054A80  A0 A3 00 04 */	lhz r5, 4(r3)
/* 80058E24 00054A84  B0 A3 00 08 */	sth r5, 8(r3)
/* 80058E28 00054A88  B0 83 00 04 */	sth r4, 4(r3)
/* 80058E2C 00054A8C  B0 03 00 06 */	sth r0, 6(r3)
/* 80058E30 00054A90  4E 80 00 20 */	blr

.global func_80058E34
func_80058E34:
/* 80058E34 00054A94  A0 03 00 04 */	lhz r0, 4(r3)
/* 80058E38 00054A98  28 00 FF FF */	cmplwi r0, 0xffff
/* 80058E3C 00054A9C  4C 82 00 20 */	bnelr
/* 80058E40 00054AA0  A0 03 00 06 */	lhz r0, 6(r3)
/* 80058E44 00054AA4  28 00 00 13 */	cmplwi r0, 0x13
/* 80058E48 00054AA8  4C 82 00 20 */	bnelr
/* 80058E4C 00054AAC  A0 03 00 08 */	lhz r0, 8(r3)
/* 80058E50 00054AB0  B0 03 00 04 */	sth r0, 4(r3)
/* 80058E54 00054AB4  A0 03 00 0A */	lhz r0, 0xa(r3)
/* 80058E58 00054AB8  B0 03 00 06 */	sth r0, 6(r3)
/* 80058E5C 00054ABC  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80058E60 00054AC0  B0 03 00 08 */	sth r0, 8(r3)
/* 80058E64 00054AC4  A0 03 00 0E */	lhz r0, 0xe(r3)
/* 80058E68 00054AC8  B0 03 00 0A */	sth r0, 0xa(r3)
/* 80058E6C 00054ACC  A0 03 00 10 */	lhz r0, 0x10(r3)
/* 80058E70 00054AD0  B0 03 00 0C */	sth r0, 0xc(r3)
/* 80058E74 00054AD4  A0 03 00 12 */	lhz r0, 0x12(r3)
/* 80058E78 00054AD8  B0 03 00 0E */	sth r0, 0xe(r3)
/* 80058E7C 00054ADC  A0 03 00 14 */	lhz r0, 0x14(r3)
/* 80058E80 00054AE0  B0 03 00 10 */	sth r0, 0x10(r3)
/* 80058E84 00054AE4  A0 03 00 16 */	lhz r0, 0x16(r3)
/* 80058E88 00054AE8  B0 03 00 12 */	sth r0, 0x12(r3)
/* 80058E8C 00054AEC  A0 03 00 18 */	lhz r0, 0x18(r3)
/* 80058E90 00054AF0  B0 03 00 14 */	sth r0, 0x14(r3)
/* 80058E94 00054AF4  A0 03 00 1A */	lhz r0, 0x1a(r3)
/* 80058E98 00054AF8  B0 03 00 16 */	sth r0, 0x16(r3)
/* 80058E9C 00054AFC  4E 80 00 20 */	blr

.global func_80058EA0
func_80058EA0:
/* 80058EA0 00054B00  38 00 00 0A */	li r0, 0xa
/* 80058EA4 00054B04  7C 64 1B 78 */	mr r4, r3
/* 80058EA8 00054B08  38 E0 00 00 */	li r7, 0
/* 80058EAC 00054B0C  7C 65 1B 78 */	mr r5, r3
/* 80058EB0 00054B10  7C 09 03 A6 */	mtctr r0
lbl_80058EB4:
/* 80058EB4 00054B14  A0 C4 00 04 */	lhz r6, 4(r4)
/* 80058EB8 00054B18  28 06 FF FF */	cmplwi r6, 0xffff
/* 80058EBC 00054B1C  40 82 00 54 */	bne lbl_80058F10
/* 80058EC0 00054B20  A0 05 00 06 */	lhz r0, 6(r5)
/* 80058EC4 00054B24  28 00 FF FF */	cmplwi r0, 0xffff
/* 80058EC8 00054B28  40 82 00 48 */	bne lbl_80058F10
/* 80058ECC 00054B2C  7C E7 07 34 */	extsh r7, r7
/* 80058ED0 00054B30  3C C0 00 01 */	lis r6, 0x0000FFFF@ha
/* 80058ED4 00054B34  54 E0 08 3C */	slwi r0, r7, 1
/* 80058ED8 00054B38  38 A0 00 13 */	li r5, 0x13
/* 80058EDC 00054B3C  38 87 00 01 */	addi r4, r7, 1
/* 80058EE0 00054B40  39 06 FF FF */	addi r8, r6, 0x0000FFFF@l
/* 80058EE4 00054B44  7C C3 02 14 */	add r6, r3, r0
/* 80058EE8 00054B48  38 07 00 02 */	addi r0, r7, 2
/* 80058EEC 00054B4C  54 84 08 3C */	slwi r4, r4, 1
/* 80058EF0 00054B50  B1 06 00 04 */	sth r8, 4(r6)
/* 80058EF4 00054B54  7C 83 22 14 */	add r4, r3, r4
/* 80058EF8 00054B58  54 00 08 3C */	slwi r0, r0, 1
/* 80058EFC 00054B5C  B0 A4 00 04 */	sth r5, 4(r4)
/* 80058F00 00054B60  7C 83 02 14 */	add r4, r3, r0
/* 80058F04 00054B64  38 00 00 00 */	li r0, 0
/* 80058F08 00054B68  B0 04 00 04 */	sth r0, 4(r4)
/* 80058F0C 00054B6C  48 00 00 60 */	b lbl_80058F6C
lbl_80058F10:
/* 80058F10 00054B70  2C 06 00 00 */	cmpwi r6, 0
/* 80058F14 00054B74  40 82 00 48 */	bne lbl_80058F5C
/* 80058F18 00054B78  7C E7 07 34 */	extsh r7, r7
/* 80058F1C 00054B7C  3C C0 00 01 */	lis r6, 0x0000FFFF@ha
/* 80058F20 00054B80  54 E0 08 3C */	slwi r0, r7, 1
/* 80058F24 00054B84  38 A0 00 13 */	li r5, 0x13
/* 80058F28 00054B88  38 87 00 01 */	addi r4, r7, 1
/* 80058F2C 00054B8C  39 06 FF FF */	addi r8, r6, 0x0000FFFF@l
/* 80058F30 00054B90  7C C3 02 14 */	add r6, r3, r0
/* 80058F34 00054B94  38 07 00 02 */	addi r0, r7, 2
/* 80058F38 00054B98  54 84 08 3C */	slwi r4, r4, 1
/* 80058F3C 00054B9C  B1 06 00 04 */	sth r8, 4(r6)
/* 80058F40 00054BA0  7C 83 22 14 */	add r4, r3, r4
/* 80058F44 00054BA4  54 00 08 3C */	slwi r0, r0, 1
/* 80058F48 00054BA8  B0 A4 00 04 */	sth r5, 4(r4)
/* 80058F4C 00054BAC  7C 83 02 14 */	add r4, r3, r0
/* 80058F50 00054BB0  38 00 00 00 */	li r0, 0
/* 80058F54 00054BB4  B0 04 00 04 */	sth r0, 4(r4)
/* 80058F58 00054BB8  48 00 00 14 */	b lbl_80058F6C
lbl_80058F5C:
/* 80058F5C 00054BBC  38 E7 00 01 */	addi r7, r7, 1
/* 80058F60 00054BC0  38 A5 00 02 */	addi r5, r5, 2
/* 80058F64 00054BC4  38 84 00 02 */	addi r4, r4, 2
/* 80058F68 00054BC8  42 00 FF 4C */	bdnz lbl_80058EB4
lbl_80058F6C:
/* 80058F6C 00054BCC  A0 A3 00 16 */	lhz r5, 0x16(r3)
/* 80058F70 00054BD0  3C 80 00 01 */	lis r4, 0x0000FFFF@ha
/* 80058F74 00054BD4  38 84 FF FF */	addi r4, r4, 0x0000FFFF@l
/* 80058F78 00054BD8  38 00 00 14 */	li r0, 0x14
/* 80058F7C 00054BDC  B0 A3 00 1A */	sth r5, 0x1a(r3)
/* 80058F80 00054BE0  A0 A3 00 14 */	lhz r5, 0x14(r3)
/* 80058F84 00054BE4  B0 A3 00 18 */	sth r5, 0x18(r3)
/* 80058F88 00054BE8  A0 A3 00 12 */	lhz r5, 0x12(r3)
/* 80058F8C 00054BEC  B0 A3 00 16 */	sth r5, 0x16(r3)
/* 80058F90 00054BF0  A0 A3 00 10 */	lhz r5, 0x10(r3)
/* 80058F94 00054BF4  B0 A3 00 14 */	sth r5, 0x14(r3)
/* 80058F98 00054BF8  A0 A3 00 0E */	lhz r5, 0xe(r3)
/* 80058F9C 00054BFC  B0 A3 00 12 */	sth r5, 0x12(r3)
/* 80058FA0 00054C00  A0 A3 00 0C */	lhz r5, 0xc(r3)
/* 80058FA4 00054C04  B0 A3 00 10 */	sth r5, 0x10(r3)
/* 80058FA8 00054C08  A0 A3 00 0A */	lhz r5, 0xa(r3)
/* 80058FAC 00054C0C  B0 A3 00 0E */	sth r5, 0xe(r3)
/* 80058FB0 00054C10  A0 A3 00 08 */	lhz r5, 8(r3)
/* 80058FB4 00054C14  B0 A3 00 0C */	sth r5, 0xc(r3)
/* 80058FB8 00054C18  A0 A3 00 06 */	lhz r5, 6(r3)
/* 80058FBC 00054C1C  B0 A3 00 0A */	sth r5, 0xa(r3)
/* 80058FC0 00054C20  A0 A3 00 04 */	lhz r5, 4(r3)
/* 80058FC4 00054C24  B0 A3 00 08 */	sth r5, 8(r3)
/* 80058FC8 00054C28  B0 83 00 04 */	sth r4, 4(r3)
/* 80058FCC 00054C2C  B0 03 00 06 */	sth r0, 6(r3)
/* 80058FD0 00054C30  4E 80 00 20 */	blr

.global func_80058FD4
func_80058FD4:
/* 80058FD4 00054C34  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80058FD8 00054C38  7C 08 02 A6 */	mflr r0
/* 80058FDC 00054C3C  2C 04 00 00 */	cmpwi r4, 0
/* 80058FE0 00054C40  90 01 00 54 */	stw r0, 0x54(r1)
/* 80058FE4 00054C44  3C 00 43 30 */	lis r0, 0x4330
/* 80058FE8 00054C48  93 E1 00 4C */	stw r31, 0x4c(r1)
/* 80058FEC 00054C4C  3B E0 FF 00 */	li r31, -256
/* 80058FF0 00054C50  50 7F 06 3E */	rlwimi r31, r3, 0, 0x18, 0x1f
/* 80058FF4 00054C54  93 C1 00 48 */	stw r30, 0x48(r1)
/* 80058FF8 00054C58  93 A1 00 44 */	stw r29, 0x44(r1)
/* 80058FFC 00054C5C  93 81 00 40 */	stw r28, 0x40(r1)
/* 80059000 00054C60  3F 80 80 40 */	lis r28, lbl_803FB820@ha
/* 80059004 00054C64  3B 9C B8 20 */	addi r28, r28, lbl_803FB820@l
/* 80059008 00054C68  90 01 00 28 */	stw r0, 0x28(r1)
/* 8005900C 00054C6C  90 01 00 30 */	stw r0, 0x30(r1)
/* 80059010 00054C70  41 82 00 F4 */	beq lbl_80059104
/* 80059014 00054C74  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80059018 00054C78  88 03 00 7A */	lbz r0, 0x7a(r3)
/* 8005901C 00054C7C  2C 00 00 00 */	cmpwi r0, 0
/* 80059020 00054C80  41 82 00 78 */	beq lbl_80059098
/* 80059024 00054C84  C0 62 85 A0 */	lfs f3, lbl_80640BA0-_SDA2_BASE_(r2)
/* 80059028 00054C88  38 60 00 01 */	li r3, 1
/* 8005902C 00054C8C  C0 42 85 A4 */	lfs f2, lbl_80640BA4-_SDA2_BASE_(r2)
/* 80059030 00054C90  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 80059034 00054C94  C0 02 85 8C */	lfs f0, lbl_80640B8C-_SDA2_BASE_(r2)
/* 80059038 00054C98  D0 61 00 14 */	stfs f3, 0x14(r1)
/* 8005903C 00054C9C  D0 61 00 08 */	stfs f3, 8(r1)
/* 80059040 00054CA0  D0 41 00 10 */	stfs f2, 0x10(r1)
/* 80059044 00054CA4  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 80059048 00054CA8  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 8005904C 00054CAC  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 80059050 00054CB0  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 80059054 00054CB4  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 80059058 00054CB8  4B FF FA B9 */	bl func_80058B10
/* 8005905C 00054CBC  54 63 1D 78 */	rlwinm r3, r3, 3, 0x15, 0x1c
/* 80059060 00054CC0  38 1C 00 18 */	addi r0, r28, 0x18
/* 80059064 00054CC4  7F A0 1A 14 */	add r29, r0, r3
/* 80059068 00054CC8  38 60 00 01 */	li r3, 1
/* 8005906C 00054CCC  4B FF FA A5 */	bl func_80058B10
/* 80059070 00054CD0  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80059074 00054CD4  38 7C 00 00 */	addi r3, r28, 0
/* 80059078 00054CD8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005907C 00054CDC  80 9D 00 04 */	lwz r4, 4(r29)
/* 80059080 00054CE0  48 00 1B E1 */	bl func_8005AC60
/* 80059084 00054CE4  7F E5 FB 78 */	mr r5, r31
/* 80059088 00054CE8  38 81 00 08 */	addi r4, r1, 8
/* 8005908C 00054CEC  38 C0 00 00 */	li r6, 0
/* 80059090 00054CF0  48 00 1E E9 */	bl func_8005AF78
/* 80059094 00054CF4  48 00 01 54 */	b lbl_800591E8
lbl_80059098:
/* 80059098 00054CF8  C0 42 85 60 */	lfs f2, lbl_80640B60-_SDA2_BASE_(r2)
/* 8005909C 00054CFC  38 60 00 01 */	li r3, 1
/* 800590A0 00054D00  C0 22 85 88 */	lfs f1, lbl_80640B88-_SDA2_BASE_(r2)
/* 800590A4 00054D04  C0 02 85 8C */	lfs f0, lbl_80640B8C-_SDA2_BASE_(r2)
/* 800590A8 00054D08  D0 41 00 14 */	stfs f2, 0x14(r1)
/* 800590AC 00054D0C  D0 41 00 08 */	stfs f2, 8(r1)
/* 800590B0 00054D10  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 800590B4 00054D14  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 800590B8 00054D18  D0 41 00 1C */	stfs f2, 0x1c(r1)
/* 800590BC 00054D1C  D0 41 00 18 */	stfs f2, 0x18(r1)
/* 800590C0 00054D20  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 800590C4 00054D24  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 800590C8 00054D28  4B FF FA 49 */	bl func_80058B10
/* 800590CC 00054D2C  54 7E 1D 78 */	rlwinm r30, r3, 3, 0x15, 0x1c
/* 800590D0 00054D30  3B BC 00 18 */	addi r29, r28, 0x18
/* 800590D4 00054D34  38 60 00 01 */	li r3, 1
/* 800590D8 00054D38  4B FF FA 39 */	bl func_80058B10
/* 800590DC 00054D3C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800590E0 00054D40  38 7C 00 00 */	addi r3, r28, 0
/* 800590E4 00054D44  7C 63 00 2E */	lwzx r3, r3, r0
/* 800590E8 00054D48  7C 9D F0 2E */	lwzx r4, r29, r30
/* 800590EC 00054D4C  48 00 1B 75 */	bl func_8005AC60
/* 800590F0 00054D50  7F E5 FB 78 */	mr r5, r31
/* 800590F4 00054D54  38 81 00 08 */	addi r4, r1, 8
/* 800590F8 00054D58  38 C0 00 00 */	li r6, 0
/* 800590FC 00054D5C  48 00 1E 7D */	bl func_8005AF78
/* 80059100 00054D60  48 00 00 E8 */	b lbl_800591E8
lbl_80059104:
/* 80059104 00054D64  38 60 00 01 */	li r3, 1
/* 80059108 00054D68  4B FF FA 09 */	bl func_80058B10
/* 8005910C 00054D6C  54 7D 15 BA */	rlwinm r29, r3, 2, 0x16, 0x1d
/* 80059110 00054D70  3B DC 00 48 */	addi r30, r28, 0x48
/* 80059114 00054D74  38 60 00 01 */	li r3, 1
/* 80059118 00054D78  4B FF F9 F9 */	bl func_80058B10
/* 8005911C 00054D7C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 80059120 00054D80  38 7C 00 00 */	addi r3, r28, 0
/* 80059124 00054D84  7C 63 00 2E */	lwzx r3, r3, r0
/* 80059128 00054D88  7C 9E E8 2E */	lwzx r4, r30, r29
/* 8005912C 00054D8C  48 00 1B 35 */	bl func_8005AC60
/* 80059130 00054D90  7C 7C 1B 78 */	mr r28, r3
/* 80059134 00054D94  48 1E 54 0D */	bl func_8023E540
/* 80059138 00054D98  7C 7E 1B 78 */	mr r30, r3
/* 8005913C 00054D9C  7F 83 E3 78 */	mr r3, r28
/* 80059140 00054DA0  48 1E 54 09 */	bl func_8023E548
/* 80059144 00054DA4  57 C0 04 3E */	clrlwi r0, r30, 0x10
/* 80059148 00054DA8  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005914C 00054DAC  20 60 02 80 */	subfic r3, r0, 0x280
/* 80059150 00054DB0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80059154 00054DB4  54 60 0F FE */	srwi r0, r3, 0x1f
/* 80059158 00054DB8  C8 62 85 98 */	lfd f3, lbl_80640B98-_SDA2_BASE_(r2)
/* 8005915C 00054DBC  7C 00 1A 14 */	add r0, r0, r3
/* 80059160 00054DC0  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 80059164 00054DC4  7C 00 0E 70 */	srawi r0, r0, 1
/* 80059168 00054DC8  C8 A2 85 A8 */	lfd f5, lbl_80640BA8-_SDA2_BASE_(r2)
/* 8005916C 00054DCC  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80059170 00054DD0  20 64 01 E0 */	subfic r3, r4, 0x1e0
/* 80059174 00054DD4  90 01 00 2C */	stw r0, 0x2c(r1)
/* 80059178 00054DD8  54 60 0F FE */	srwi r0, r3, 0x1f
/* 8005917C 00054DDC  7C 00 1A 14 */	add r0, r0, r3
/* 80059180 00054DE0  EC 40 18 28 */	fsubs f2, f0, f3
/* 80059184 00054DE4  7C 00 0E 70 */	srawi r0, r0, 1
/* 80059188 00054DE8  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 8005918C 00054DEC  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 80059190 00054DF0  90 81 00 34 */	stw r4, 0x34(r1)
/* 80059194 00054DF4  EC 80 28 28 */	fsubs f4, f0, f5
/* 80059198 00054DF8  90 01 00 2C */	stw r0, 0x2c(r1)
/* 8005919C 00054DFC  7F 83 E3 78 */	mr r3, r28
/* 800591A0 00054E00  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 800591A4 00054E04  7F E5 FB 78 */	mr r5, r31
/* 800591A8 00054E08  C8 21 00 28 */	lfd f1, 0x28(r1)
/* 800591AC 00054E0C  EC 00 18 28 */	fsubs f0, f0, f3
/* 800591B0 00054E10  D0 81 00 14 */	stfs f4, 0x14(r1)
/* 800591B4 00054E14  EC 21 28 28 */	fsubs f1, f1, f5
/* 800591B8 00054E18  38 81 00 08 */	addi r4, r1, 8
/* 800591BC 00054E1C  EC 44 10 2A */	fadds f2, f4, f2
/* 800591C0 00054E20  D0 81 00 08 */	stfs f4, 8(r1)
/* 800591C4 00054E24  EC 01 00 2A */	fadds f0, f1, f0
/* 800591C8 00054E28  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 800591CC 00054E2C  38 C0 00 00 */	li r6, 0
/* 800591D0 00054E30  D0 41 00 10 */	stfs f2, 0x10(r1)
/* 800591D4 00054E34  D0 41 00 0C */	stfs f2, 0xc(r1)
/* 800591D8 00054E38  D0 21 00 18 */	stfs f1, 0x18(r1)
/* 800591DC 00054E3C  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 800591E0 00054E40  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 800591E4 00054E44  48 00 1D 95 */	bl func_8005AF78
lbl_800591E8:
/* 800591E8 00054E48  80 01 00 54 */	lwz r0, 0x54(r1)
/* 800591EC 00054E4C  83 E1 00 4C */	lwz r31, 0x4c(r1)
/* 800591F0 00054E50  83 C1 00 48 */	lwz r30, 0x48(r1)
/* 800591F4 00054E54  83 A1 00 44 */	lwz r29, 0x44(r1)
/* 800591F8 00054E58  83 81 00 40 */	lwz r28, 0x40(r1)
/* 800591FC 00054E5C  7C 08 03 A6 */	mtlr r0
/* 80059200 00054E60  38 21 00 50 */	addi r1, r1, 0x50
/* 80059204 00054E64  4E 80 00 20 */	blr

.global func_80059208
func_80059208:
/* 80059208 00054E68  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005920C 00054E6C  3C A0 80 06 */	lis r5, lbl_80059288@ha
/* 80059210 00054E70  38 A5 92 88 */	addi r5, r5, lbl_80059288@l
/* 80059214 00054E74  38 80 00 C8 */	li r4, 0xc8
/* 80059218 00054E78  80 03 00 08 */	lwz r0, 8(r3)
/* 8005921C 00054E7C  38 C0 00 00 */	li r6, 0
/* 80059220 00054E80  38 E0 20 00 */	li r7, 0x2000
/* 80059224 00054E84  39 00 00 08 */	li r8, 8
/* 80059228 00054E88  54 00 07 B8 */	rlwinm r0, r0, 0, 0x1e, 0x1c
/* 8005922C 00054E8C  39 20 00 01 */	li r9, 1
/* 80059230 00054E90  90 03 00 08 */	stw r0, 8(r3)
/* 80059234 00054E94  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80059238 00054E98  48 1C AF DC */	b func_80224214

.global func_8005923C
func_8005923C:
/* 8005923C 00054E9C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059240 00054EA0  80 03 00 08 */	lwz r0, 8(r3)
/* 80059244 00054EA4  54 03 F7 FE */	rlwinm r3, r0, 0x1e, 0x1f, 0x1f
/* 80059248 00054EA8  4E 80 00 20 */	blr

.global func_8005924C
func_8005924C:
/* 8005924C 00054EAC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059250 00054EB0  80 03 00 08 */	lwz r0, 8(r3)
/* 80059254 00054EB4  54 03 07 FE */	clrlwi r3, r0, 0x1f
/* 80059258 00054EB8  4E 80 00 20 */	blr

.global func_8005925C
func_8005925C:
/* 8005925C 00054EBC  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059260 00054EC0  2C 03 00 00 */	cmpwi r3, 0
/* 80059264 00054EC4  80 04 00 08 */	lwz r0, 8(r4)
/* 80059268 00054EC8  50 60 0F BC */	rlwimi r0, r3, 1, 0x1e, 0x1e
/* 8005926C 00054ECC  90 04 00 08 */	stw r0, 8(r4)
/* 80059270 00054ED0  4C 82 00 20 */	bnelr
/* 80059274 00054ED4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059278 00054ED8  80 03 00 08 */	lwz r0, 8(r3)
/* 8005927C 00054EDC  54 00 00 3C */	rlwinm r0, r0, 0, 0, 0x1e
/* 80059280 00054EE0  90 03 00 08 */	stw r0, 8(r3)
/* 80059284 00054EE4  4E 80 00 20 */	blr
lbl_80059288:
/* 80059288 00054EE8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005928C 00054EEC  7C 08 02 A6 */	mflr r0
/* 80059290 00054EF0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80059294 00054EF4  39 61 00 20 */	addi r11, r1, 0x20
/* 80059298 00054EF8  48 16 DE 91 */	bl _savegpr_27
/* 8005929C 00054EFC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800592A0 00054F00  38 00 00 00 */	li r0, 0
/* 800592A4 00054F04  3C 80 80 06 */	lis r4, lbl_80059414@ha
/* 800592A8 00054F08  C0 02 85 60 */	lfs f0, lbl_80640B60-_SDA2_BASE_(r2)
/* 800592AC 00054F0C  98 03 10 A8 */	stb r0, 0x10a8(r3)
/* 800592B0 00054F10  38 84 94 14 */	addi r4, r4, lbl_80059414@l
/* 800592B4 00054F14  38 60 00 00 */	li r3, 0
/* 800592B8 00054F18  38 A0 FF FF */	li r5, -1
/* 800592BC 00054F1C  80 CD 81 E0 */	lwz r6, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800592C0 00054F20  D0 06 10 98 */	stfs f0, 0x1098(r6)
/* 800592C4 00054F24  48 1F AC A9 */	bl func_80253F6C
/* 800592C8 00054F28  7C 7F 1B 78 */	mr r31, r3
/* 800592CC 00054F2C  48 00 16 C9 */	bl func_8005A994
/* 800592D0 00054F30  48 00 00 0C */	b lbl_800592DC
lbl_800592D4:
/* 800592D4 00054F34  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 800592D8 00054F38  48 1C B2 B1 */	bl func_80224588
lbl_800592DC:
/* 800592DC 00054F3C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800592E0 00054F40  80 03 00 08 */	lwz r0, 8(r3)
/* 800592E4 00054F44  54 00 FF FF */	rlwinm. r0, r0, 0x1f, 0x1f, 0x1f
/* 800592E8 00054F48  41 82 FF EC */	beq lbl_800592D4
/* 800592EC 00054F4C  38 60 00 01 */	li r3, 1
/* 800592F0 00054F50  4B FF F8 21 */	bl func_80058B10
/* 800592F4 00054F54  3C 80 80 40 */	lis r4, lbl_803FB820@ha
/* 800592F8 00054F58  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800592FC 00054F5C  38 84 B8 20 */	addi r4, r4, lbl_803FB820@l
/* 80059300 00054F60  7C 64 00 2E */	lwzx r3, r4, r0
/* 80059304 00054F64  48 1F 02 D9 */	bl func_802495DC
/* 80059308 00054F68  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005930C 00054F6C  38 00 00 01 */	li r0, 1
/* 80059310 00054F70  98 03 10 A8 */	stb r0, 0x10a8(r3)
/* 80059314 00054F74  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059318 00054F78  80 03 00 08 */	lwz r0, 8(r3)
/* 8005931C 00054F7C  60 00 00 01 */	ori r0, r0, 1
/* 80059320 00054F80  90 03 00 08 */	stw r0, 8(r3)
/* 80059324 00054F84  48 21 94 95 */	bl OSGetTime
/* 80059328 00054F88  3C A0 43 1C */	lis r5, 0x431BDE83@ha
/* 8005932C 00054F8C  7C 9B 23 78 */	mr r27, r4
/* 80059330 00054F90  7C 7C 1B 78 */	mr r28, r3
/* 80059334 00054F94  3F C0 80 00 */	lis r30, 0x8000
/* 80059338 00054F98  3B A5 DE 83 */	addi r29, r5, 0x431BDE83@l
lbl_8005933C:
/* 8005933C 00054F9C  48 21 94 7D */	bl OSGetTime
/* 80059340 00054FA0  80 1E 00 F8 */	lwz r0, 0xf8(r30)
/* 80059344 00054FA4  7C DB 20 10 */	subfc r6, r27, r4
/* 80059348 00054FA8  7C 7C 19 10 */	subfe r3, r28, r3
/* 8005934C 00054FAC  38 A0 00 00 */	li r5, 0
/* 80059350 00054FB0  54 00 F0 BE */	srwi r0, r0, 2
/* 80059354 00054FB4  54 C4 18 38 */	slwi r4, r6, 3
/* 80059358 00054FB8  7C 1D 00 16 */	mulhwu r0, r29, r0
/* 8005935C 00054FBC  54 63 18 38 */	slwi r3, r3, 3
/* 80059360 00054FC0  50 C3 1F 7E */	rlwimi r3, r6, 3, 0x1d, 0x1f
/* 80059364 00054FC4  54 06 8B FE */	srwi r6, r0, 0xf
/* 80059368 00054FC8  48 16 DE 25 */	bl __div2u
/* 8005936C 00054FCC  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059370 00054FD0  90 85 10 A4 */	stw r4, 0x10a4(r5)
/* 80059374 00054FD4  90 65 10 A0 */	stw r3, 0x10a0(r5)
/* 80059378 00054FD8  48 21 94 41 */	bl OSGetTime
/* 8005937C 00054FDC  7C 9B 23 78 */	mr r27, r4
/* 80059380 00054FE0  7C 7C 1B 78 */	mr r28, r3
/* 80059384 00054FE4  48 00 04 41 */	bl func_800597C4
/* 80059388 00054FE8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005938C 00054FEC  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 80059390 00054FF0  EC 00 08 2A */	fadds f0, f0, f1
/* 80059394 00054FF4  D0 03 10 98 */	stfs f0, 0x1098(r3)
/* 80059398 00054FF8  80 6D A3 40 */	lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8005939C 00054FFC  48 1C B1 ED */	bl func_80224588
/* 800593A0 00055000  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800593A4 00055004  88 03 10 A8 */	lbz r0, 0x10a8(r3)
/* 800593A8 00055008  28 00 00 0F */	cmplwi r0, 0xf
/* 800593AC 0005500C  40 82 FF 90 */	bne lbl_8005933C
/* 800593B0 00055010  38 60 00 01 */	li r3, 1
/* 800593B4 00055014  4B FF F7 5D */	bl func_80058B10
/* 800593B8 00055018  3F C0 80 40 */	lis r30, lbl_803FB820@ha
/* 800593BC 0005501C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800593C0 00055020  3B DE B8 20 */	addi r30, r30, lbl_803FB820@l
/* 800593C4 00055024  7C 7E 00 2E */	lwzx r3, r30, r0
/* 800593C8 00055028  48 1F 04 C9 */	bl func_80249890
/* 800593CC 0005502C  38 60 00 01 */	li r3, 1
/* 800593D0 00055030  4B FF F7 41 */	bl func_80058B10
/* 800593D4 00055034  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800593D8 00055038  7C 7E 00 2E */	lwzx r3, r30, r0
/* 800593DC 0005503C  48 18 22 99 */	bl func_801DB674
/* 800593E0 00055040  7F E3 FB 78 */	mr r3, r31
/* 800593E4 00055044  48 1F AB A9 */	bl func_80253F8C
/* 800593E8 00055048  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800593EC 0005504C  39 61 00 20 */	addi r11, r1, 0x20
/* 800593F0 00055050  38 60 00 00 */	li r3, 0
/* 800593F4 00055054  80 04 00 08 */	lwz r0, 8(r4)
/* 800593F8 00055058  60 00 00 04 */	ori r0, r0, 4
/* 800593FC 0005505C  90 04 00 08 */	stw r0, 8(r4)
/* 80059400 00055060  48 16 DD 75 */	bl _restgpr_27
/* 80059404 00055064  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80059408 00055068  7C 08 03 A6 */	mtlr r0
/* 8005940C 0005506C  38 21 00 20 */	addi r1, r1, 0x20
/* 80059410 00055070  4E 80 00 20 */	blr
lbl_80059414:
/* 80059414 00055074  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80059418 00055078  7C 08 02 A6 */	mflr r0
/* 8005941C 0005507C  38 60 00 00 */	li r3, 0
/* 80059420 00055080  90 01 00 14 */	stw r0, 0x14(r1)
/* 80059424 00055084  48 1E B3 79 */	bl func_8024479C
/* 80059428 00055088  80 AD 81 E0 */	lwz r5, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005942C 0005508C  88 05 10 A8 */	lbz r0, 0x10a8(r5)
/* 80059430 00055090  28 00 00 0E */	cmplwi r0, 0xe
/* 80059434 00055094  41 81 03 80 */	bgt lbl_800597B4
/* 80059438 00055098  3C 80 80 41 */	lis r4, lbl_8040B0A0@ha
/* 8005943C 0005509C  54 00 10 3A */	slwi r0, r0, 2
/* 80059440 000550A0  38 84 B0 A0 */	addi r4, r4, lbl_8040B0A0@l
/* 80059444 000550A4  7C 84 00 2E */	lwzx r4, r4, r0
/* 80059448 000550A8  7C 89 03 A6 */	mtctr r4
/* 8005944C 000550AC  4E 80 04 20 */	bctr
/* 80059450 000550B0  C0 05 10 98 */	lfs f0, 0x1098(r5)
/* 80059454 000550B4  38 60 00 00 */	li r3, 0
/* 80059458 000550B8  38 80 00 01 */	li r4, 1
/* 8005945C 000550BC  D0 05 10 9C */	stfs f0, 0x109c(r5)
/* 80059460 000550C0  4B FF FB 75 */	bl func_80058FD4
/* 80059464 000550C4  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059468 000550C8  38 00 00 02 */	li r0, 2
/* 8005946C 000550CC  98 03 10 A8 */	stb r0, 0x10a8(r3)
/* 80059470 000550D0  48 00 03 44 */	b lbl_800597B4
/* 80059474 000550D4  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 80059478 000550D8  C0 05 10 9C */	lfs f0, 0x109c(r5)
/* 8005947C 000550DC  C0 22 85 B0 */	lfs f1, lbl_80640BB0-_SDA2_BASE_(r2)
/* 80059480 000550E0  EC 42 00 28 */	fsubs f2, f2, f0
/* 80059484 000550E4  C0 02 85 68 */	lfs f0, lbl_80640B68-_SDA2_BASE_(r2)
/* 80059488 000550E8  EC 21 00 B2 */	fmuls f1, f1, f2
/* 8005948C 000550EC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80059490 000550F0  4C 41 13 82 */	cror 2, 1, 2
/* 80059494 000550F4  40 82 00 1C */	bne lbl_800594B0
/* 80059498 000550F8  38 00 00 03 */	li r0, 3
/* 8005949C 000550FC  FC 20 00 90 */	fmr f1, f0
/* 800594A0 00055100  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 800594A4 00055104  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800594A8 00055108  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 800594AC 0005510C  D0 03 10 9C */	stfs f0, 0x109c(r3)
lbl_800594B0:
/* 800594B0 00055110  C0 02 85 B4 */	lfs f0, lbl_80640BB4-_SDA2_BASE_(r2)
/* 800594B4 00055114  38 80 00 01 */	li r4, 1
/* 800594B8 00055118  EC 00 00 72 */	fmuls f0, f0, f1
/* 800594BC 0005511C  FC 00 00 1E */	fctiwz f0, f0
/* 800594C0 00055120  D8 01 00 08 */	stfd f0, 8(r1)
/* 800594C4 00055124  80 61 00 0C */	lwz r3, 0xc(r1)
/* 800594C8 00055128  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 800594CC 0005512C  4B FF FB 09 */	bl func_80058FD4
/* 800594D0 00055130  48 00 02 E4 */	b lbl_800597B4
/* 800594D4 00055134  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 800594D8 00055138  C0 25 10 9C */	lfs f1, 0x109c(r5)
/* 800594DC 0005513C  C0 02 85 B0 */	lfs f0, lbl_80640BB0-_SDA2_BASE_(r2)
/* 800594E0 00055140  EC 22 08 28 */	fsubs f1, f2, f1
/* 800594E4 00055144  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800594E8 00055148  4C 41 13 82 */	cror 2, 1, 2
/* 800594EC 0005514C  40 82 00 0C */	bne lbl_800594F8
/* 800594F0 00055150  38 00 00 04 */	li r0, 4
/* 800594F4 00055154  98 05 10 A8 */	stb r0, 0x10a8(r5)
lbl_800594F8:
/* 800594F8 00055158  38 60 00 FF */	li r3, 0xff
/* 800594FC 0005515C  38 80 00 01 */	li r4, 1
/* 80059500 00055160  4B FF FA D5 */	bl func_80058FD4
/* 80059504 00055164  48 00 02 B0 */	b lbl_800597B4
/* 80059508 00055168  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 8005950C 0005516C  C0 25 10 9C */	lfs f1, 0x109c(r5)
/* 80059510 00055170  C0 02 85 B8 */	lfs f0, lbl_80640BB8-_SDA2_BASE_(r2)
/* 80059514 00055174  EC 22 08 28 */	fsubs f1, f2, f1
/* 80059518 00055178  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8005951C 0005517C  4C 41 13 82 */	cror 2, 1, 2
/* 80059520 00055180  40 82 00 1C */	bne lbl_8005953C
/* 80059524 00055184  38 00 00 05 */	li r0, 5
/* 80059528 00055188  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 8005952C 0005518C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059530 00055190  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 80059534 00055194  D0 03 10 9C */	stfs f0, 0x109c(r3)
/* 80059538 00055198  48 00 00 2C */	b lbl_80059564
lbl_8005953C:
/* 8005953C 0005519C  2C 03 00 00 */	cmpwi r3, 0
/* 80059540 000551A0  41 82 00 24 */	beq lbl_80059564
/* 80059544 000551A4  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80059548 000551A8  70 00 1F 1F */	andi. r0, r0, 0x1f1f
/* 8005954C 000551AC  41 82 00 18 */	beq lbl_80059564
/* 80059550 000551B0  38 00 00 05 */	li r0, 5
/* 80059554 000551B4  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 80059558 000551B8  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 8005955C 000551BC  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 80059560 000551C0  D0 03 10 9C */	stfs f0, 0x109c(r3)
lbl_80059564:
/* 80059564 000551C4  38 60 00 FF */	li r3, 0xff
/* 80059568 000551C8  38 80 00 01 */	li r4, 1
/* 8005956C 000551CC  4B FF FA 69 */	bl func_80058FD4
/* 80059570 000551D0  48 00 02 44 */	b lbl_800597B4
/* 80059574 000551D4  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 80059578 000551D8  C0 05 10 9C */	lfs f0, 0x109c(r5)
/* 8005957C 000551DC  C0 22 85 B0 */	lfs f1, lbl_80640BB0-_SDA2_BASE_(r2)
/* 80059580 000551E0  EC 42 00 28 */	fsubs f2, f2, f0
/* 80059584 000551E4  C0 02 85 68 */	lfs f0, lbl_80640B68-_SDA2_BASE_(r2)
/* 80059588 000551E8  EC 41 00 B2 */	fmuls f2, f1, f2
/* 8005958C 000551EC  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80059590 000551F0  4C 41 13 82 */	cror 2, 1, 2
/* 80059594 000551F4  40 82 00 1C */	bne lbl_800595B0
/* 80059598 000551F8  38 00 00 06 */	li r0, 6
/* 8005959C 000551FC  FC 40 00 90 */	fmr f2, f0
/* 800595A0 00055200  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 800595A4 00055204  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800595A8 00055208  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 800595AC 0005520C  D0 03 10 9C */	stfs f0, 0x109c(r3)
lbl_800595B0:
/* 800595B0 00055210  C0 22 85 68 */	lfs f1, lbl_80640B68-_SDA2_BASE_(r2)
/* 800595B4 00055214  38 80 00 01 */	li r4, 1
/* 800595B8 00055218  C0 02 85 B4 */	lfs f0, lbl_80640BB4-_SDA2_BASE_(r2)
/* 800595BC 0005521C  EC 21 10 28 */	fsubs f1, f1, f2
/* 800595C0 00055220  EC 00 00 72 */	fmuls f0, f0, f1
/* 800595C4 00055224  FC 00 00 1E */	fctiwz f0, f0
/* 800595C8 00055228  D8 01 00 08 */	stfd f0, 8(r1)
/* 800595CC 0005522C  80 61 00 0C */	lwz r3, 0xc(r1)
/* 800595D0 00055230  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 800595D4 00055234  4B FF FA 01 */	bl func_80058FD4
/* 800595D8 00055238  48 00 01 DC */	b lbl_800597B4
/* 800595DC 0005523C  38 60 00 00 */	li r3, 0
/* 800595E0 00055240  38 80 00 01 */	li r4, 1
/* 800595E4 00055244  4B FF F9 F1 */	bl func_80058FD4
/* 800595E8 00055248  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800595EC 0005524C  38 00 00 0D */	li r0, 0xd
/* 800595F0 00055250  98 03 10 A8 */	stb r0, 0x10a8(r3)
/* 800595F4 00055254  48 00 01 C0 */	b lbl_800597B4
/* 800595F8 00055258  C0 05 10 98 */	lfs f0, 0x1098(r5)
/* 800595FC 0005525C  38 60 00 00 */	li r3, 0
/* 80059600 00055260  38 80 00 00 */	li r4, 0
/* 80059604 00055264  D0 05 10 9C */	stfs f0, 0x109c(r5)
/* 80059608 00055268  4B FF F9 CD */	bl func_80058FD4
/* 8005960C 0005526C  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059610 00055270  38 00 00 08 */	li r0, 8
/* 80059614 00055274  98 03 10 A8 */	stb r0, 0x10a8(r3)
/* 80059618 00055278  48 00 01 9C */	b lbl_800597B4
/* 8005961C 0005527C  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 80059620 00055280  C0 05 10 9C */	lfs f0, 0x109c(r5)
/* 80059624 00055284  C0 22 85 B0 */	lfs f1, lbl_80640BB0-_SDA2_BASE_(r2)
/* 80059628 00055288  EC 42 00 28 */	fsubs f2, f2, f0
/* 8005962C 0005528C  C0 02 85 68 */	lfs f0, lbl_80640B68-_SDA2_BASE_(r2)
/* 80059630 00055290  EC 21 00 B2 */	fmuls f1, f1, f2
/* 80059634 00055294  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80059638 00055298  4C 41 13 82 */	cror 2, 1, 2
/* 8005963C 0005529C  40 82 00 1C */	bne lbl_80059658
/* 80059640 000552A0  38 00 00 09 */	li r0, 9
/* 80059644 000552A4  FC 20 00 90 */	fmr f1, f0
/* 80059648 000552A8  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 8005964C 000552AC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059650 000552B0  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 80059654 000552B4  D0 03 10 9C */	stfs f0, 0x109c(r3)
lbl_80059658:
/* 80059658 000552B8  C0 02 85 B4 */	lfs f0, lbl_80640BB4-_SDA2_BASE_(r2)
/* 8005965C 000552BC  38 80 00 00 */	li r4, 0
/* 80059660 000552C0  EC 00 00 72 */	fmuls f0, f0, f1
/* 80059664 000552C4  FC 00 00 1E */	fctiwz f0, f0
/* 80059668 000552C8  D8 01 00 08 */	stfd f0, 8(r1)
/* 8005966C 000552CC  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80059670 000552D0  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 80059674 000552D4  4B FF F9 61 */	bl func_80058FD4
/* 80059678 000552D8  48 00 01 3C */	b lbl_800597B4
/* 8005967C 000552DC  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 80059680 000552E0  C0 25 10 9C */	lfs f1, 0x109c(r5)
/* 80059684 000552E4  C0 02 85 B0 */	lfs f0, lbl_80640BB0-_SDA2_BASE_(r2)
/* 80059688 000552E8  EC 22 08 28 */	fsubs f1, f2, f1
/* 8005968C 000552EC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80059690 000552F0  4C 41 13 82 */	cror 2, 1, 2
/* 80059694 000552F4  40 82 00 0C */	bne lbl_800596A0
/* 80059698 000552F8  38 00 00 0A */	li r0, 0xa
/* 8005969C 000552FC  98 05 10 A8 */	stb r0, 0x10a8(r5)
lbl_800596A0:
/* 800596A0 00055300  38 60 00 FF */	li r3, 0xff
/* 800596A4 00055304  38 80 00 00 */	li r4, 0
/* 800596A8 00055308  4B FF F9 2D */	bl func_80058FD4
/* 800596AC 0005530C  48 00 01 08 */	b lbl_800597B4
/* 800596B0 00055310  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 800596B4 00055314  C0 25 10 9C */	lfs f1, 0x109c(r5)
/* 800596B8 00055318  C0 02 85 BC */	lfs f0, lbl_80640BBC-_SDA2_BASE_(r2)
/* 800596BC 0005531C  EC 22 08 28 */	fsubs f1, f2, f1
/* 800596C0 00055320  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 800596C4 00055324  4C 41 13 82 */	cror 2, 1, 2
/* 800596C8 00055328  40 82 00 1C */	bne lbl_800596E4
/* 800596CC 0005532C  38 00 00 0B */	li r0, 0xb
/* 800596D0 00055330  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 800596D4 00055334  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 800596D8 00055338  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 800596DC 0005533C  D0 03 10 9C */	stfs f0, 0x109c(r3)
/* 800596E0 00055340  48 00 00 2C */	b lbl_8005970C
lbl_800596E4:
/* 800596E4 00055344  2C 03 00 00 */	cmpwi r3, 0
/* 800596E8 00055348  41 82 00 24 */	beq lbl_8005970C
/* 800596EC 0005534C  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 800596F0 00055350  70 00 1F 1F */	andi. r0, r0, 0x1f1f
/* 800596F4 00055354  41 82 00 18 */	beq lbl_8005970C
/* 800596F8 00055358  38 00 00 0B */	li r0, 0xb
/* 800596FC 0005535C  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 80059700 00055360  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059704 00055364  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 80059708 00055368  D0 03 10 9C */	stfs f0, 0x109c(r3)
lbl_8005970C:
/* 8005970C 0005536C  38 60 00 FF */	li r3, 0xff
/* 80059710 00055370  38 80 00 00 */	li r4, 0
/* 80059714 00055374  4B FF F8 C1 */	bl func_80058FD4
/* 80059718 00055378  48 00 00 9C */	b lbl_800597B4
/* 8005971C 0005537C  C0 45 10 98 */	lfs f2, 0x1098(r5)
/* 80059720 00055380  C0 05 10 9C */	lfs f0, 0x109c(r5)
/* 80059724 00055384  C0 22 85 B0 */	lfs f1, lbl_80640BB0-_SDA2_BASE_(r2)
/* 80059728 00055388  EC 42 00 28 */	fsubs f2, f2, f0
/* 8005972C 0005538C  C0 02 85 68 */	lfs f0, lbl_80640B68-_SDA2_BASE_(r2)
/* 80059730 00055390  EC 41 00 B2 */	fmuls f2, f1, f2
/* 80059734 00055394  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 80059738 00055398  4C 41 13 82 */	cror 2, 1, 2
/* 8005973C 0005539C  40 82 00 1C */	bne lbl_80059758
/* 80059740 000553A0  38 00 00 0C */	li r0, 0xc
/* 80059744 000553A4  FC 40 00 90 */	fmr f2, f0
/* 80059748 000553A8  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 8005974C 000553AC  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059750 000553B0  C0 03 10 98 */	lfs f0, 0x1098(r3)
/* 80059754 000553B4  D0 03 10 9C */	stfs f0, 0x109c(r3)
lbl_80059758:
/* 80059758 000553B8  C0 22 85 68 */	lfs f1, lbl_80640B68-_SDA2_BASE_(r2)
/* 8005975C 000553BC  38 80 00 00 */	li r4, 0
/* 80059760 000553C0  C0 02 85 B4 */	lfs f0, lbl_80640BB4-_SDA2_BASE_(r2)
/* 80059764 000553C4  EC 21 10 28 */	fsubs f1, f1, f2
/* 80059768 000553C8  EC 00 00 72 */	fmuls f0, f0, f1
/* 8005976C 000553CC  FC 00 00 1E */	fctiwz f0, f0
/* 80059770 000553D0  D8 01 00 08 */	stfd f0, 8(r1)
/* 80059774 000553D4  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80059778 000553D8  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8005977C 000553DC  4B FF F8 59 */	bl func_80058FD4
/* 80059780 000553E0  48 00 00 34 */	b lbl_800597B4
/* 80059784 000553E4  38 60 00 00 */	li r3, 0
/* 80059788 000553E8  38 80 00 00 */	li r4, 0
/* 8005978C 000553EC  4B FF F8 49 */	bl func_80058FD4
/* 80059790 000553F0  80 6D 81 E0 */	lwz r3, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059794 000553F4  38 00 00 0D */	li r0, 0xd
/* 80059798 000553F8  98 03 10 A8 */	stb r0, 0x10a8(r3)
/* 8005979C 000553FC  48 00 00 18 */	b lbl_800597B4
/* 800597A0 00055400  38 00 00 0E */	li r0, 0xe
/* 800597A4 00055404  98 05 10 A8 */	stb r0, 0x10a8(r5)
/* 800597A8 00055408  48 00 00 0C */	b lbl_800597B4
/* 800597AC 0005540C  38 00 00 0F */	li r0, 0xf
/* 800597B0 00055410  98 05 10 A8 */	stb r0, 0x10a8(r5)
lbl_800597B4:
/* 800597B4 00055414  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800597B8 00055418  7C 08 03 A6 */	mtlr r0
/* 800597BC 0005541C  38 21 00 10 */	addi r1, r1, 0x10
/* 800597C0 00055420  4E 80 00 20 */	blr

.global func_800597C4
func_800597C4:
/* 800597C4 00055424  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800597C8 00055428  7C 08 02 A6 */	mflr r0
/* 800597CC 0005542C  90 01 00 14 */	stw r0, 0x14(r1)
/* 800597D0 00055430  48 18 70 19 */	bl func_801E07E8
/* 800597D4 00055434  2C 03 00 00 */	cmpwi r3, 0
/* 800597D8 00055438  41 82 00 0C */	beq lbl_800597E4
/* 800597DC 0005543C  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 800597E0 00055440  48 00 00 4C */	b lbl_8005982C
lbl_800597E4:
/* 800597E4 00055444  4B FA D8 A1 */	bl func_80007084
/* 800597E8 00055448  2C 03 00 00 */	cmpwi r3, 0
/* 800597EC 0005544C  41 82 00 0C */	beq lbl_800597F8
/* 800597F0 00055450  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 800597F4 00055454  48 00 00 38 */	b lbl_8005982C
lbl_800597F8:
/* 800597F8 00055458  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 800597FC 0005545C  88 03 00 82 */	lbz r0, 0x82(r3)
/* 80059800 00055460  2C 00 00 00 */	cmpwi r0, 0
/* 80059804 00055464  41 82 00 0C */	beq lbl_80059810
/* 80059808 00055468  C0 22 85 60 */	lfs f1, lbl_80640B60-_SDA2_BASE_(r2)
/* 8005980C 0005546C  48 00 00 20 */	b lbl_8005982C
lbl_80059810:
/* 80059810 00055470  80 8D 81 E0 */	lwz r4, lbl_8063D4A0-_SDA_BASE_(r13)
/* 80059814 00055474  80 64 10 A0 */	lwz r3, 0x10a0(r4)
/* 80059818 00055478  80 84 10 A4 */	lwz r4, 0x10a4(r4)
/* 8005981C 0005547C  48 16 DE 5D */	bl func_801C7678
/* 80059820 00055480  C0 42 85 64 */	lfs f2, lbl_80640B64-_SDA2_BASE_(r2)
/* 80059824 00055484  EC 01 10 24 */	fdivs f0, f1, f2
/* 80059828 00055488  EC 20 10 24 */	fdivs f1, f0, f2
lbl_8005982C:
/* 8005982C 0005548C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80059830 00055490  7C 08 03 A6 */	mtlr r0
/* 80059834 00055494  38 21 00 10 */	addi r1, r1, 0x10
/* 80059838 00055498  4E 80 00 20 */	blr

.global func_8005983C
func_8005983C:
/* 8005983C 0005549C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80059840 000554A0  7C 08 02 A6 */	mflr r0
/* 80059844 000554A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80059848 000554A8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005984C 000554AC  7C 7F 1B 78 */	mr r31, r3
/* 80059850 000554B0  4B FF F3 55 */	bl VMBASEIsPageValid
/* 80059854 000554B4  1C 1F 00 14 */	mulli r0, r31, 0x14
/* 80059858 000554B8  54 64 15 BA */	rlwinm r4, r3, 2, 0x16, 0x1d
/* 8005985C 000554BC  3C 60 80 40 */	lis r3, lbl_803FB880@ha
/* 80059860 000554C0  38 63 B8 80 */	addi r3, r3, lbl_803FB880@l
/* 80059864 000554C4  7C 04 02 14 */	add r0, r4, r0
/* 80059868 000554C8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005986C 000554CC  48 1E FD 71 */	bl func_802495DC
/* 80059870 000554D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80059874 000554D4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80059878 000554D8  7C 08 03 A6 */	mtlr r0
/* 8005987C 000554DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80059880 000554E0  4E 80 00 20 */	blr

.global func_80059884
func_80059884:
/* 80059884 000554E4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80059888 000554E8  7C 08 02 A6 */	mflr r0
/* 8005988C 000554EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80059890 000554F0  1C 03 00 14 */	mulli r0, r3, 0x14
/* 80059894 000554F4  3C 60 80 40 */	lis r3, lbl_803FB880@ha
/* 80059898 000554F8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005989C 000554FC  38 63 B8 80 */	addi r3, r3, lbl_803FB880@l
/* 800598A0 00055500  7F E3 02 14 */	add r31, r3, r0
/* 800598A4 00055504  4B FF F3 01 */	bl VMBASEIsPageValid
/* 800598A8 00055508  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800598AC 0005550C  7C 7F 00 2E */	lwzx r3, r31, r0
/* 800598B0 00055510  48 18 1D C5 */	bl func_801DB674
/* 800598B4 00055514  4B FF F2 F1 */	bl VMBASEIsPageValid
/* 800598B8 00055518  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 800598BC 0005551C  7C 7F 00 2E */	lwzx r3, r31, r0
/* 800598C0 00055520  48 1E FF D1 */	bl func_80249890
/* 800598C4 00055524  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800598C8 00055528  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 800598CC 0005552C  7C 08 03 A6 */	mtlr r0
/* 800598D0 00055530  38 21 00 10 */	addi r1, r1, 0x10
/* 800598D4 00055534  4E 80 00 20 */	blr

.global func_800598D8
func_800598D8:
/* 800598D8 00055538  38 A0 00 01 */	li r5, 1
/* 800598DC 0005553C  38 6D 98 A8 */	addi r3, r13, lbl_8063EB68-_SDA_BASE_
/* 800598E0 00055540  38 80 00 04 */	li r4, 4
/* 800598E4 00055544  38 00 00 00 */	li r0, 0
/* 800598E8 00055548  98 AD 98 A8 */	stb r5, lbl_8063EB68-_SDA_BASE_(r13)
/* 800598EC 0005554C  B0 83 00 02 */	sth r4, 2(r3)
/* 800598F0 00055550  98 03 00 04 */	stb r0, 4(r3)
/* 800598F4 00055554  4E 80 00 20 */	blr

.global func_800598F8
func_800598F8:
/* 800598F8 00055558  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 800598FC 0005555C  7C 08 02 A6 */	mflr r0
/* 80059900 00055560  C0 02 85 C0 */	lfs f0, lbl_80640BC0-_SDA2_BASE_(r2)
/* 80059904 00055564  90 01 00 44 */	stw r0, 0x44(r1)
/* 80059908 00055568  38 00 00 00 */	li r0, 0
/* 8005990C 0005556C  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80059910 00055570  3F E0 80 47 */	lis r31, lbl_804766D8@ha
/* 80059914 00055574  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80059918 00055578  3B C0 00 00 */	li r30, 0
/* 8005991C 0005557C  93 A1 00 34 */	stw r29, 0x34(r1)
/* 80059920 00055580  7C 9D 23 78 */	mr r29, r4
/* 80059924 00055584  93 81 00 30 */	stw r28, 0x30(r1)
/* 80059928 00055588  7C 7C 1B 78 */	mr r28, r3
/* 8005992C 0005558C  90 0D 98 D8 */	stw r0, lbl_8063EB98-_SDA_BASE_(r13)
/* 80059930 00055590  90 0D 98 DC */	stw r0, lbl_8063EB9C-_SDA_BASE_(r13)
/* 80059934 00055594  90 0D 98 E0 */	stw r0, lbl_8063EBA0-_SDA_BASE_(r13)
/* 80059938 00055598  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8005993C 0005559C  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 80059940 000555A0  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 80059944 000555A4  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 80059948 000555A8  D0 01 00 14 */	stfs f0, 0x14(r1)
/* 8005994C 000555AC  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 80059950 000555B0  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 80059954 000555B4  D0 01 00 08 */	stfs f0, 8(r1)
lbl_80059958:
/* 80059958 000555B8  7F C4 F3 78 */	mr r4, r30
/* 8005995C 000555BC  38 7F 66 D8 */	addi r3, r31, lbl_804766D8@l
/* 80059960 000555C0  38 A1 00 08 */	addi r5, r1, 8
/* 80059964 000555C4  4B FF 81 5D */	bl func_80051AC0
/* 80059968 000555C8  7F C4 F3 78 */	mr r4, r30
/* 8005996C 000555CC  38 7F 66 D8 */	addi r3, r31, 0x66d8
/* 80059970 000555D0  38 A0 00 00 */	li r5, 0
/* 80059974 000555D4  38 C0 00 00 */	li r6, 0
/* 80059978 000555D8  38 E0 00 00 */	li r7, 0
/* 8005997C 000555DC  39 00 00 00 */	li r8, 0
/* 80059980 000555E0  4B FF 86 11 */	bl func_80051F90
/* 80059984 000555E4  3B DE 00 01 */	addi r30, r30, 1
/* 80059988 000555E8  28 1E 00 64 */	cmplwi r30, 0x64
/* 8005998C 000555EC  41 80 FF CC */	blt lbl_80059958
/* 80059990 000555F0  38 00 00 00 */	li r0, 0
/* 80059994 000555F4  9B 8D 98 BC */	stb r28, lbl_8063EB7C-_SDA_BASE_(r13)
/* 80059998 000555F8  9B AD 98 BD */	stb r29, lbl_8063EB7D-_SDA_BASE_(r13)
/* 8005999C 000555FC  98 0D 98 EC */	stb r0, lbl_8063EBAC-_SDA_BASE_(r13)
/* 800599A0 00055600  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 800599A4 00055604  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 800599A8 00055608  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 800599AC 0005560C  83 81 00 30 */	lwz r28, 0x30(r1)
/* 800599B0 00055610  80 01 00 44 */	lwz r0, 0x44(r1)
/* 800599B4 00055614  7C 08 03 A6 */	mtlr r0
/* 800599B8 00055618  38 21 00 40 */	addi r1, r1, 0x40
/* 800599BC 0005561C  4E 80 00 20 */	blr

.global func_800599C0
func_800599C0:
/* 800599C0 00055620  98 6D 98 EC */	stb r3, lbl_8063EBAC-_SDA_BASE_(r13)
/* 800599C4 00055624  4E 80 00 20 */	blr

.global func_800599C8
func_800599C8:
/* 800599C8 00055628  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 800599CC 0005562C  7C 08 02 A6 */	mflr r0
/* 800599D0 00055630  7C 8B 23 78 */	mr r11, r4
/* 800599D4 00055634  7C AA 2B 78 */	mr r10, r5
/* 800599D8 00055638  90 01 00 14 */	stw r0, 0x14(r1)
/* 800599DC 0005563C  7C C9 33 78 */	mr r9, r6
/* 800599E0 00055640  7C E0 3B 78 */	mr r0, r7
/* 800599E4 00055644  7D 65 5B 78 */	mr r5, r11
/* 800599E8 00055648  93 E1 00 0C */	stw r31, 0xc(r1)
/* 800599EC 0005564C  7D 1F 43 78 */	mr r31, r8
/* 800599F0 00055650  7D 46 53 78 */	mr r6, r10
/* 800599F4 00055654  7D 27 4B 78 */	mr r7, r9
/* 800599F8 00055658  93 C1 00 08 */	stw r30, 8(r1)
/* 800599FC 0005565C  7C 7E 1B 78 */	mr r30, r3
/* 80059A00 00055660  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 80059A04 00055664  7C 08 03 78 */	mr r8, r0
/* 80059A08 00055668  7F C4 F3 78 */	mr r4, r30
/* 80059A0C 0005566C  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 80059A10 00055670  4B FF 85 81 */	bl func_80051F90
/* 80059A14 00055674  3C 60 80 47 */	lis r3, lbl_804778A0@ha
/* 80059A18 00055678  57 C0 08 3C */	slwi r0, r30, 1
/* 80059A1C 0005567C  38 63 78 A0 */	addi r3, r3, lbl_804778A0@l
/* 80059A20 00055680  7F E3 03 2E */	sthx r31, r3, r0
/* 80059A24 00055684  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80059A28 00055688  83 C1 00 08 */	lwz r30, 8(r1)
/* 80059A2C 0005568C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80059A30 00055690  7C 08 03 A6 */	mtlr r0
/* 80059A34 00055694  38 21 00 10 */	addi r1, r1, 0x10
/* 80059A38 00055698  4E 80 00 20 */	blr

.global func_80059A3C
func_80059A3C:
/* 80059A3C 0005569C  7C 60 1B 78 */	mr r0, r3
/* 80059A40 000556A0  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 80059A44 000556A4  7C 85 23 78 */	mr r5, r4
/* 80059A48 000556A8  7C 04 03 78 */	mr r4, r0
/* 80059A4C 000556AC  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 80059A50 000556B0  4B FF 80 70 */	b func_80051AC0

.global func_80059A54
func_80059A54:
/* 80059A54 000556B4  7C 60 1B 78 */	mr r0, r3
/* 80059A58 000556B8  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 80059A5C 000556BC  7C 85 23 78 */	mr r5, r4
/* 80059A60 000556C0  7C 04 03 78 */	mr r4, r0
/* 80059A64 000556C4  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 80059A68 000556C8  4B FF 80 AC */	b lbl_80051B14

.global func_80059A6C
func_80059A6C:
/* 80059A6C 000556CC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80059A70 000556D0  7C 08 02 A6 */	mflr r0
/* 80059A74 000556D4  90 01 00 34 */	stw r0, 0x34(r1)
/* 80059A78 000556D8  39 61 00 30 */	addi r11, r1, 0x30
/* 80059A7C 000556DC  48 16 D6 A9 */	bl _savegpr_26
/* 80059A80 000556E0  54 60 00 85 */	rlwinm. r0, r3, 0, 2, 2
/* 80059A84 000556E4  7C 7A 1B 78 */	mr r26, r3
/* 80059A88 000556E8  7C 9B 23 78 */	mr r27, r4
/* 80059A8C 000556EC  7C BC 2B 78 */	mr r28, r5
/* 80059A90 000556F0  7C DD 33 78 */	mr r29, r6
/* 80059A94 000556F4  3B C0 00 00 */	li r30, 0
/* 80059A98 000556F8  41 82 00 4C */	beq lbl_80059AE4
/* 80059A9C 000556FC  7F 63 DB 78 */	mr r3, r27
/* 80059AA0 00055700  38 81 00 08 */	addi r4, r1, 8
/* 80059AA4 00055704  48 24 F2 D5 */	bl func_802A8D78
/* 80059AA8 00055708  2C 03 00 00 */	cmpwi r3, 0
/* 80059AAC 0005570C  41 82 00 0C */	beq lbl_80059AB8
/* 80059AB0 00055710  38 60 00 00 */	li r3, 0
/* 80059AB4 00055714  48 00 09 6C */	b lbl_8005A420
lbl_80059AB8:
/* 80059AB8 00055718  80 01 00 08 */	lwz r0, 8(r1)
/* 80059ABC 0005571C  28 00 00 FC */	cmplwi r0, 0xfc
/* 80059AC0 00055720  41 82 00 14 */	beq lbl_80059AD4
/* 80059AC4 00055724  28 00 00 FD */	cmplwi r0, 0xfd
/* 80059AC8 00055728  41 82 00 0C */	beq lbl_80059AD4
/* 80059ACC 0005572C  28 00 00 FF */	cmplwi r0, 0xff
/* 80059AD0 00055730  40 82 00 0C */	bne lbl_80059ADC
lbl_80059AD4:
/* 80059AD4 00055734  38 60 00 00 */	li r3, 0
/* 80059AD8 00055738  48 00 09 48 */	b lbl_8005A420
lbl_80059ADC:
/* 80059ADC 0005573C  38 60 00 01 */	li r3, 1
/* 80059AE0 00055740  48 00 09 40 */	b lbl_8005A420
lbl_80059AE4:
/* 80059AE4 00055744  48 18 6D 05 */	bl func_801E07E8
/* 80059AE8 00055748  2C 03 00 00 */	cmpwi r3, 0
/* 80059AEC 0005574C  41 82 00 0C */	beq lbl_80059AF8
/* 80059AF0 00055750  38 60 00 00 */	li r3, 0
/* 80059AF4 00055754  48 00 09 2C */	b lbl_8005A420
lbl_80059AF8:
/* 80059AF8 00055758  4B FA D5 8D */	bl func_80007084
/* 80059AFC 0005575C  2C 03 00 00 */	cmpwi r3, 0
/* 80059B00 00055760  41 82 00 0C */	beq lbl_80059B0C
/* 80059B04 00055764  38 60 00 00 */	li r3, 0
/* 80059B08 00055768  48 00 09 18 */	b lbl_8005A420
lbl_80059B0C:
/* 80059B0C 0005576C  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 80059B10 00055770  88 03 00 82 */	lbz r0, 0x82(r3)
/* 80059B14 00055774  2C 00 00 00 */	cmpwi r0, 0
/* 80059B18 00055778  41 82 00 0C */	beq lbl_80059B24
/* 80059B1C 0005577C  38 60 00 00 */	li r3, 0
/* 80059B20 00055780  48 00 09 00 */	b lbl_8005A420
lbl_80059B24:
/* 80059B24 00055784  2C 1D 00 00 */	cmpwi r29, 0
/* 80059B28 00055788  41 82 00 08 */	beq lbl_80059B30
/* 80059B2C 0005578C  4B FA D9 A9 */	bl func_800074D4
lbl_80059B30:
/* 80059B30 00055790  7F 83 E3 78 */	mr r3, r28
/* 80059B34 00055794  48 1E AC 69 */	bl func_8024479C
/* 80059B38 00055798  2C 03 00 00 */	cmpwi r3, 0
/* 80059B3C 0005579C  7C 7F 1B 78 */	mr r31, r3
/* 80059B40 000557A0  40 82 00 0C */	bne lbl_80059B4C
/* 80059B44 000557A4  38 60 00 00 */	li r3, 0
/* 80059B48 000557A8  48 00 08 D8 */	b lbl_8005A420
lbl_80059B4C:
/* 80059B4C 000557AC  48 0D 54 7D */	bl func_8012EFC8
/* 80059B50 000557B0  2C 03 00 00 */	cmpwi r3, 0
/* 80059B54 000557B4  41 82 00 0C */	beq lbl_80059B60
/* 80059B58 000557B8  38 60 00 00 */	li r3, 0
/* 80059B5C 000557BC  48 00 08 C4 */	b lbl_8005A420
lbl_80059B60:
/* 80059B60 000557C0  57 40 00 01 */	rlwinm. r0, r26, 0, 0, 0
/* 80059B64 000557C4  41 82 00 28 */	beq lbl_80059B8C
/* 80059B68 000557C8  7F 63 DB 78 */	mr r3, r27
/* 80059B6C 000557CC  48 1E AC 31 */	bl func_8024479C
/* 80059B70 000557D0  2C 03 00 00 */	cmpwi r3, 0
/* 80059B74 000557D4  40 82 00 0C */	bne lbl_80059B80
/* 80059B78 000557D8  38 60 00 00 */	li r3, 0
/* 80059B7C 000557DC  48 00 08 A4 */	b lbl_8005A420
lbl_80059B80:
/* 80059B80 000557E0  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80059B84 000557E4  54 03 04 5E */	rlwinm r3, r0, 0, 0x11, 0xf
/* 80059B88 000557E8  48 00 08 98 */	b lbl_8005A420
lbl_80059B8C:
/* 80059B8C 000557EC  57 40 00 43 */	rlwinm. r0, r26, 0, 1, 1
/* 80059B90 000557F0  41 82 00 28 */	beq lbl_80059BB8
/* 80059B94 000557F4  7F 63 DB 78 */	mr r3, r27
/* 80059B98 000557F8  48 1E AC 05 */	bl func_8024479C
/* 80059B9C 000557FC  2C 03 00 00 */	cmpwi r3, 0
/* 80059BA0 00055800  40 82 00 0C */	bne lbl_80059BAC
/* 80059BA4 00055804  38 60 00 00 */	li r3, 0
/* 80059BA8 00055808  48 00 08 78 */	b lbl_8005A420
lbl_80059BAC:
/* 80059BAC 0005580C  80 03 00 20 */	lwz r0, 0x20(r3)
/* 80059BB0 00055810  54 03 04 5E */	rlwinm r3, r0, 0, 0x11, 0xf
/* 80059BB4 00055814  48 00 08 6C */	b lbl_8005A420
lbl_80059BB8:
/* 80059BB8 00055818  80 0D 98 E8 */	lwz r0, lbl_8063EBA8-_SDA_BASE_(r13)
/* 80059BBC 0005581C  2C 00 00 00 */	cmpwi r0, 0
/* 80059BC0 00055820  40 82 00 0C */	bne lbl_80059BCC
/* 80059BC4 00055824  48 10 5A CD */	bl func_8015F690
/* 80059BC8 00055828  90 6D 98 E8 */	stw r3, lbl_8063EBA8-_SDA_BASE_(r13)
lbl_80059BCC:
/* 80059BCC 0005582C  80 6D 98 E8 */	lwz r3, lbl_8063EBA8-_SDA_BASE_(r13)
/* 80059BD0 00055830  88 0D 81 EE */	lbz r0, lbl_8063D4AE-_SDA_BASE_(r13)
/* 80059BD4 00055834  80 63 00 4C */	lwz r3, 0x4c(r3)
/* 80059BD8 00055838  7C 00 18 00 */	cmpw r0, r3
/* 80059BDC 0005583C  41 82 00 C8 */	beq lbl_80059CA4
/* 80059BE0 00055840  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 80059BE4 00055844  98 6D 81 EE */	stb r3, lbl_8063D4AE-_SDA_BASE_(r13)
/* 80059BE8 00055848  2C 00 00 01 */	cmpwi r0, 1
/* 80059BEC 0005584C  41 82 00 54 */	beq lbl_80059C40
/* 80059BF0 00055850  40 80 00 10 */	bge lbl_80059C00
/* 80059BF4 00055854  2C 00 00 00 */	cmpwi r0, 0
/* 80059BF8 00055858  40 80 00 14 */	bge lbl_80059C0C
/* 80059BFC 0005585C  48 00 00 A8 */	b lbl_80059CA4
lbl_80059C00:
/* 80059C00 00055860  2C 00 00 03 */	cmpwi r0, 3
/* 80059C04 00055864  40 80 00 A0 */	bge lbl_80059CA4
/* 80059C08 00055868  48 00 00 6C */	b lbl_80059C74
lbl_80059C0C:
/* 80059C0C 0005586C  39 00 00 01 */	li r8, 1
/* 80059C10 00055870  38 E0 00 02 */	li r7, 2
/* 80059C14 00055874  38 C0 00 04 */	li r6, 4
/* 80059C18 00055878  38 A0 00 08 */	li r5, 8
/* 80059C1C 0005587C  38 80 08 00 */	li r4, 0x800
/* 80059C20 00055880  38 60 04 00 */	li r3, 0x400
/* 80059C24 00055884  91 0D 98 C0 */	stw r8, lbl_8063EB80-_SDA_BASE_(r13)
/* 80059C28 00055888  90 ED 98 C4 */	stw r7, lbl_8063EB84-_SDA_BASE_(r13)
/* 80059C2C 0005588C  90 CD 98 C8 */	stw r6, lbl_8063EB88-_SDA_BASE_(r13)
/* 80059C30 00055890  90 AD 98 CC */	stw r5, lbl_8063EB8C-_SDA_BASE_(r13)
/* 80059C34 00055894  90 8D 98 D0 */	stw r4, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059C38 00055898  90 6D 98 D4 */	stw r3, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059C3C 0005589C  48 00 00 68 */	b lbl_80059CA4
lbl_80059C40:
/* 80059C40 000558A0  39 00 00 01 */	li r8, 1
/* 80059C44 000558A4  38 E0 00 02 */	li r7, 2
/* 80059C48 000558A8  38 C0 00 04 */	li r6, 4
/* 80059C4C 000558AC  38 A0 00 08 */	li r5, 8
/* 80059C50 000558B0  38 80 04 00 */	li r4, 0x400
/* 80059C54 000558B4  38 60 08 00 */	li r3, 0x800
/* 80059C58 000558B8  91 0D 98 C0 */	stw r8, lbl_8063EB80-_SDA_BASE_(r13)
/* 80059C5C 000558BC  90 ED 98 C4 */	stw r7, lbl_8063EB84-_SDA_BASE_(r13)
/* 80059C60 000558C0  90 CD 98 C8 */	stw r6, lbl_8063EB88-_SDA_BASE_(r13)
/* 80059C64 000558C4  90 AD 98 CC */	stw r5, lbl_8063EB8C-_SDA_BASE_(r13)
/* 80059C68 000558C8  90 8D 98 D0 */	stw r4, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059C6C 000558CC  90 6D 98 D4 */	stw r3, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059C70 000558D0  48 00 00 34 */	b lbl_80059CA4
lbl_80059C74:
/* 80059C74 000558D4  39 00 00 08 */	li r8, 8
/* 80059C78 000558D8  38 E0 00 04 */	li r7, 4
/* 80059C7C 000558DC  38 C0 00 01 */	li r6, 1
/* 80059C80 000558E0  38 A0 00 02 */	li r5, 2
/* 80059C84 000558E4  38 80 01 00 */	li r4, 0x100
/* 80059C88 000558E8  38 60 02 00 */	li r3, 0x200
/* 80059C8C 000558EC  91 0D 98 C0 */	stw r8, lbl_8063EB80-_SDA_BASE_(r13)
/* 80059C90 000558F0  90 ED 98 C4 */	stw r7, lbl_8063EB84-_SDA_BASE_(r13)
/* 80059C94 000558F4  90 CD 98 C8 */	stw r6, lbl_8063EB88-_SDA_BASE_(r13)
/* 80059C98 000558F8  90 AD 98 CC */	stw r5, lbl_8063EB8C-_SDA_BASE_(r13)
/* 80059C9C 000558FC  90 8D 98 D0 */	stw r4, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059CA0 00055900  90 6D 98 D4 */	stw r3, lbl_8063EB94-_SDA_BASE_(r13)
lbl_80059CA4:
/* 80059CA4 00055904  57 43 00 C7 */	rlwinm. r3, r26, 0, 3, 3
/* 80059CA8 00055908  41 82 00 3C */	beq lbl_80059CE4
/* 80059CAC 0005590C  7F 63 DB 78 */	mr r3, r27
/* 80059CB0 00055910  48 1E AA ED */	bl func_8024479C
/* 80059CB4 00055914  2C 03 00 00 */	cmpwi r3, 0
/* 80059CB8 00055918  41 82 00 24 */	beq lbl_80059CDC
/* 80059CBC 0005591C  80 AD 98 D0 */	lwz r5, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059CC0 00055920  80 8D 98 D4 */	lwz r4, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059CC4 00055924  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80059CC8 00055928  7C A3 23 78 */	or r3, r5, r4
/* 80059CCC 0005592C  7C 60 00 39 */	and. r0, r3, r0
/* 80059CD0 00055930  41 82 00 0C */	beq lbl_80059CDC
/* 80059CD4 00055934  38 60 00 01 */	li r3, 1
/* 80059CD8 00055938  48 00 07 48 */	b lbl_8005A420
lbl_80059CDC:
/* 80059CDC 0005593C  38 60 00 00 */	li r3, 0
/* 80059CE0 00055940  48 00 07 40 */	b lbl_8005A420
lbl_80059CE4:
/* 80059CE4 00055944  57 43 01 4B */	rlwinm. r3, r26, 0, 5, 5
/* 80059CE8 00055948  41 82 00 34 */	beq lbl_80059D1C
/* 80059CEC 0005594C  7F 63 DB 78 */	mr r3, r27
/* 80059CF0 00055950  48 1E AA AD */	bl func_8024479C
/* 80059CF4 00055954  2C 03 00 00 */	cmpwi r3, 0
/* 80059CF8 00055958  41 82 00 1C */	beq lbl_80059D14
/* 80059CFC 0005595C  80 8D 98 D0 */	lwz r4, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059D00 00055960  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80059D04 00055964  7C 80 00 39 */	and. r0, r4, r0
/* 80059D08 00055968  41 82 00 0C */	beq lbl_80059D14
/* 80059D0C 0005596C  38 60 00 01 */	li r3, 1
/* 80059D10 00055970  48 00 07 10 */	b lbl_8005A420
lbl_80059D14:
/* 80059D14 00055974  38 60 00 00 */	li r3, 0
/* 80059D18 00055978  48 00 07 08 */	b lbl_8005A420
lbl_80059D1C:
/* 80059D1C 0005597C  57 43 01 09 */	rlwinm. r3, r26, 0, 4, 4
/* 80059D20 00055980  41 82 00 34 */	beq lbl_80059D54
/* 80059D24 00055984  7F 63 DB 78 */	mr r3, r27
/* 80059D28 00055988  48 1E AA 75 */	bl func_8024479C
/* 80059D2C 0005598C  2C 03 00 00 */	cmpwi r3, 0
/* 80059D30 00055990  41 82 00 1C */	beq lbl_80059D4C
/* 80059D34 00055994  80 8D 98 D4 */	lwz r4, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059D38 00055998  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 80059D3C 0005599C  7C 80 00 39 */	and. r0, r4, r0
/* 80059D40 000559A0  41 82 00 0C */	beq lbl_80059D4C
/* 80059D44 000559A4  38 60 00 01 */	li r3, 1
/* 80059D48 000559A8  48 00 06 D8 */	b lbl_8005A420
lbl_80059D4C:
/* 80059D4C 000559AC  38 60 00 00 */	li r3, 0
/* 80059D50 000559B0  48 00 06 D0 */	b lbl_8005A420
lbl_80059D54:
/* 80059D54 000559B4  57 43 01 CF */	rlwinm. r3, r26, 0, 7, 7
/* 80059D58 000559B8  41 82 00 34 */	beq lbl_80059D8C
/* 80059D5C 000559BC  7F 63 DB 78 */	mr r3, r27
/* 80059D60 000559C0  48 1E AA 3D */	bl func_8024479C
/* 80059D64 000559C4  2C 03 00 00 */	cmpwi r3, 0
/* 80059D68 000559C8  41 82 00 1C */	beq lbl_80059D84
/* 80059D6C 000559CC  80 8D 98 D0 */	lwz r4, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059D70 000559D0  80 03 00 20 */	lwz r0, 0x20(r3)
/* 80059D74 000559D4  7C 80 00 39 */	and. r0, r4, r0
/* 80059D78 000559D8  41 82 00 0C */	beq lbl_80059D84
/* 80059D7C 000559DC  38 60 00 01 */	li r3, 1
/* 80059D80 000559E0  48 00 06 A0 */	b lbl_8005A420
lbl_80059D84:
/* 80059D84 000559E4  38 60 00 00 */	li r3, 0
/* 80059D88 000559E8  48 00 06 98 */	b lbl_8005A420
lbl_80059D8C:
/* 80059D8C 000559EC  57 43 01 8D */	rlwinm. r3, r26, 0, 6, 6
/* 80059D90 000559F0  41 82 00 34 */	beq lbl_80059DC4
/* 80059D94 000559F4  7F 63 DB 78 */	mr r3, r27
/* 80059D98 000559F8  48 1E AA 05 */	bl func_8024479C
/* 80059D9C 000559FC  2C 03 00 00 */	cmpwi r3, 0
/* 80059DA0 00055A00  41 82 00 1C */	beq lbl_80059DBC
/* 80059DA4 00055A04  80 8D 98 D4 */	lwz r4, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059DA8 00055A08  80 03 00 20 */	lwz r0, 0x20(r3)
/* 80059DAC 00055A0C  7C 80 00 39 */	and. r0, r4, r0
/* 80059DB0 00055A10  41 82 00 0C */	beq lbl_80059DBC
/* 80059DB4 00055A14  38 60 00 01 */	li r3, 1
/* 80059DB8 00055A18  48 00 06 68 */	b lbl_8005A420
lbl_80059DBC:
/* 80059DBC 00055A1C  38 60 00 00 */	li r3, 0
/* 80059DC0 00055A20  48 00 06 60 */	b lbl_8005A420
lbl_80059DC4:
/* 80059DC4 00055A24  57 43 06 31 */	rlwinm. r3, r26, 0, 0x18, 0x18
/* 80059DC8 00055A28  41 82 00 24 */	beq lbl_80059DEC
/* 80059DCC 00055A2C  80 7F 00 1C */	lwz r3, 0x1c(r31)
/* 80059DD0 00055A30  3C 00 80 00 */	lis r0, 0x8000
/* 80059DD4 00055A34  70 64 1F 1F */	andi. r4, r3, 0x1f1f
/* 80059DD8 00055A38  7C 64 00 D0 */	neg r3, r4
/* 80059DDC 00055A3C  7C 63 23 78 */	or r3, r3, r4
/* 80059DE0 00055A40  7C 63 FE 70 */	srawi r3, r3, 0x1f
/* 80059DE4 00055A44  7C 03 18 38 */	and r3, r0, r3
/* 80059DE8 00055A48  48 00 06 38 */	b lbl_8005A420
lbl_80059DEC:
/* 80059DEC 00055A4C  80 7F 00 1C */	lwz r3, 0x1c(r31)
/* 80059DF0 00055A50  80 AD 98 D0 */	lwz r5, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059DF4 00055A54  54 7D 04 5E */	rlwinm r29, r3, 0, 0x11, 0xf
/* 80059DF8 00055A58  7F A3 28 39 */	and. r3, r29, r5
/* 80059DFC 00055A5C  41 82 00 0C */	beq lbl_80059E08
/* 80059E00 00055A60  38 60 00 01 */	li r3, 1
/* 80059E04 00055A64  98 6D 98 BC */	stb r3, lbl_8063EB7C-_SDA_BASE_(r13)
lbl_80059E08:
/* 80059E08 00055A68  80 CD 98 D4 */	lwz r6, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059E0C 00055A6C  7F A3 30 39 */	and. r3, r29, r6
/* 80059E10 00055A70  41 82 00 0C */	beq lbl_80059E1C
/* 80059E14 00055A74  38 60 00 01 */	li r3, 1
/* 80059E18 00055A78  98 6D 98 BD */	stb r3, lbl_8063EB7D-_SDA_BASE_(r13)
lbl_80059E1C:
/* 80059E1C 00055A7C  80 9F 00 20 */	lwz r4, 0x20(r31)
/* 80059E20 00055A80  7C A3 33 78 */	or r3, r5, r6
/* 80059E24 00055A84  54 9F 04 5E */	rlwinm r31, r4, 0, 0x11, 0xf
/* 80059E28 00055A88  7F E3 18 39 */	and. r3, r31, r3
/* 80059E2C 00055A8C  41 82 00 64 */	beq lbl_80059E90
/* 80059E30 00055A90  80 CD 98 CC */	lwz r6, lbl_8063EB8C-_SDA_BASE_(r13)
/* 80059E34 00055A94  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 80059E38 00055A98  80 AD 98 C8 */	lwz r5, lbl_8063EB88-_SDA_BASE_(r13)
/* 80059E3C 00055A9C  28 00 00 02 */	cmplwi r0, 2
/* 80059E40 00055AA0  80 8D 98 C0 */	lwz r4, lbl_8063EB80-_SDA_BASE_(r13)
/* 80059E44 00055AA4  38 00 FF FF */	li r0, -1
/* 80059E48 00055AA8  80 6D 98 C4 */	lwz r3, lbl_8063EB84-_SDA_BASE_(r13)
/* 80059E4C 00055AAC  7C C5 2B 78 */	or r5, r6, r5
/* 80059E50 00055AB0  7C 83 1B 78 */	or r3, r4, r3
/* 80059E54 00055AB4  7C A3 1B 78 */	or r3, r5, r3
/* 80059E58 00055AB8  7C 60 02 78 */	xor r0, r3, r0
/* 80059E5C 00055ABC  7F BD 00 38 */	and r29, r29, r0
/* 80059E60 00055AC0  7F FF 00 38 */	and r31, r31, r0
/* 80059E64 00055AC4  41 82 00 4C */	beq lbl_80059EB0
/* 80059E68 00055AC8  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 80059E6C 00055ACC  7F 84 E3 78 */	mr r4, r28
/* 80059E70 00055AD0  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 80059E74 00055AD4  4B FF 7C F5 */	bl func_80051B68
/* 80059E78 00055AD8  57 40 02 11 */	rlwinm. r0, r26, 0, 8, 8
/* 80059E7C 00055ADC  90 6D 98 E0 */	stw r3, lbl_8063EBA0-_SDA_BASE_(r13)
/* 80059E80 00055AE0  40 82 00 30 */	bne lbl_80059EB0
/* 80059E84 00055AE4  38 00 00 00 */	li r0, 0
/* 80059E88 00055AE8  90 0D 98 E0 */	stw r0, lbl_8063EBA0-_SDA_BASE_(r13)
/* 80059E8C 00055AEC  48 00 00 24 */	b lbl_80059EB0
lbl_80059E90:
/* 80059E90 00055AF0  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 80059E94 00055AF4  28 00 00 02 */	cmplwi r0, 2
/* 80059E98 00055AF8  41 82 00 18 */	beq lbl_80059EB0
/* 80059E9C 00055AFC  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 80059EA0 00055B00  7F 84 E3 78 */	mr r4, r28
/* 80059EA4 00055B04  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 80059EA8 00055B08  4B FF 7C C1 */	bl func_80051B68
/* 80059EAC 00055B0C  90 6D 98 E0 */	stw r3, lbl_8063EBA0-_SDA_BASE_(r13)
lbl_80059EB0:
/* 80059EB0 00055B10  88 0D 98 BC */	lbz r0, lbl_8063EB7C-_SDA_BASE_(r13)
/* 80059EB4 00055B14  2C 00 00 00 */	cmpwi r0, 0
/* 80059EB8 00055B18  40 82 00 18 */	bne lbl_80059ED0
/* 80059EBC 00055B1C  80 6D 98 D0 */	lwz r3, lbl_8063EB90-_SDA_BASE_(r13)
/* 80059EC0 00055B20  38 00 FF FF */	li r0, -1
/* 80059EC4 00055B24  7C 60 02 78 */	xor r0, r3, r0
/* 80059EC8 00055B28  7F BD 00 38 */	and r29, r29, r0
/* 80059ECC 00055B2C  7F FF 00 38 */	and r31, r31, r0
lbl_80059ED0:
/* 80059ED0 00055B30  88 0D 98 BD */	lbz r0, lbl_8063EB7D-_SDA_BASE_(r13)
/* 80059ED4 00055B34  2C 00 00 00 */	cmpwi r0, 0
/* 80059ED8 00055B38  40 82 00 18 */	bne lbl_80059EF0
/* 80059EDC 00055B3C  80 6D 98 D4 */	lwz r3, lbl_8063EB94-_SDA_BASE_(r13)
/* 80059EE0 00055B40  38 00 FF FF */	li r0, -1
/* 80059EE4 00055B44  7C 60 02 78 */	xor r0, r3, r0
/* 80059EE8 00055B48  7F BD 00 38 */	and r29, r29, r0
/* 80059EEC 00055B4C  7F FF 00 38 */	and r31, r31, r0
lbl_80059EF0:
/* 80059EF0 00055B50  80 8D 98 E0 */	lwz r4, lbl_8063EBA0-_SDA_BASE_(r13)
/* 80059EF4 00055B54  2C 04 00 00 */	cmpwi r4, 0
/* 80059EF8 00055B58  40 82 00 28 */	bne lbl_80059F20
/* 80059EFC 00055B5C  80 0D 98 D8 */	lwz r0, lbl_8063EB98-_SDA_BASE_(r13)
/* 80059F00 00055B60  2C 00 00 00 */	cmpwi r0, 0
/* 80059F04 00055B64  40 82 00 10 */	bne lbl_80059F14
/* 80059F08 00055B68  93 6D 98 D8 */	stw r27, lbl_8063EB98-_SDA_BASE_(r13)
/* 80059F0C 00055B6C  7F 7E DB 78 */	mr r30, r27
/* 80059F10 00055B70  48 00 00 7C */	b lbl_80059F8C
lbl_80059F14:
/* 80059F14 00055B74  38 00 00 00 */	li r0, 0
/* 80059F18 00055B78  90 0D 98 DC */	stw r0, lbl_8063EB9C-_SDA_BASE_(r13)
/* 80059F1C 00055B7C  48 00 00 70 */	b lbl_80059F8C
lbl_80059F20:
/* 80059F20 00055B80  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 80059F24 00055B84  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 80059F28 00055B88  4B FF 80 8D */	bl func_80051FB4
/* 80059F2C 00055B8C  80 8D 98 E0 */	lwz r4, lbl_8063EBA0-_SDA_BASE_(r13)
/* 80059F30 00055B90  3C 60 80 47 */	lis r3, lbl_804778A0@ha
/* 80059F34 00055B94  38 63 78 A0 */	addi r3, r3, lbl_804778A0@l
/* 80059F38 00055B98  54 80 08 3C */	slwi r0, r4, 1
/* 80059F3C 00055B9C  7C 03 02 2E */	lhzx r0, r3, r0
/* 80059F40 00055BA0  2C 00 00 00 */	cmpwi r0, 0
/* 80059F44 00055BA4  41 82 00 0C */	beq lbl_80059F50
/* 80059F48 00055BA8  7C 04 03 78 */	mr r4, r0
/* 80059F4C 00055BAC  90 0D 98 E0 */	stw r0, lbl_8063EBA0-_SDA_BASE_(r13)
lbl_80059F50:
/* 80059F50 00055BB0  80 0D 98 D8 */	lwz r0, lbl_8063EB98-_SDA_BASE_(r13)
/* 80059F54 00055BB4  7C 00 20 00 */	cmpw r0, r4
/* 80059F58 00055BB8  41 82 00 10 */	beq lbl_80059F68
/* 80059F5C 00055BBC  80 0D 98 DC */	lwz r0, lbl_8063EB9C-_SDA_BASE_(r13)
/* 80059F60 00055BC0  7C 00 20 00 */	cmpw r0, r4
/* 80059F64 00055BC4  40 82 00 0C */	bne lbl_80059F70
lbl_80059F68:
/* 80059F68 00055BC8  90 8D 98 DC */	stw r4, lbl_8063EB9C-_SDA_BASE_(r13)
/* 80059F6C 00055BCC  48 00 00 20 */	b lbl_80059F8C
lbl_80059F70:
/* 80059F70 00055BD0  57 40 06 F7 */	rlwinm. r0, r26, 0, 0x1b, 0x1b
/* 80059F74 00055BD4  90 8D 98 D8 */	stw r4, lbl_8063EB98-_SDA_BASE_(r13)
/* 80059F78 00055BD8  7C 9E 23 78 */	mr r30, r4
/* 80059F7C 00055BDC  90 8D 98 DC */	stw r4, lbl_8063EB9C-_SDA_BASE_(r13)
/* 80059F80 00055BE0  40 82 00 0C */	bne lbl_80059F8C
/* 80059F84 00055BE4  38 60 00 03 */	li r3, 3
/* 80059F88 00055BE8  48 00 05 45 */	bl func_8005A4CC
lbl_80059F8C:
/* 80059F8C 00055BEC  57 40 07 7D */	rlwinm. r0, r26, 0, 0x1d, 0x1e
/* 80059F90 00055BF0  41 82 00 AC */	beq lbl_8005A03C
/* 80059F94 00055BF4  80 0D 98 C0 */	lwz r0, lbl_8063EB80-_SDA_BASE_(r13)
/* 80059F98 00055BF8  7F A0 00 39 */	and. r0, r29, r0
/* 80059F9C 00055BFC  41 82 00 14 */	beq lbl_80059FB0
/* 80059FA0 00055C00  38 60 00 00 */	li r3, 0
/* 80059FA4 00055C04  38 00 00 01 */	li r0, 1
/* 80059FA8 00055C08  98 6D 98 B8 */	stb r3, lbl_8063EB78-_SDA_BASE_(r13)
/* 80059FAC 00055C0C  98 0D 81 EA */	stb r0, lbl_8063D4AA-_SDA_BASE_(r13)
lbl_80059FB0:
/* 80059FB0 00055C10  80 0D 98 C4 */	lwz r0, lbl_8063EB84-_SDA_BASE_(r13)
/* 80059FB4 00055C14  7F A0 00 39 */	and. r0, r29, r0
/* 80059FB8 00055C18  41 82 00 14 */	beq lbl_80059FCC
/* 80059FBC 00055C1C  38 60 00 00 */	li r3, 0
/* 80059FC0 00055C20  38 00 00 01 */	li r0, 1
/* 80059FC4 00055C24  98 6D 98 B9 */	stb r3, lbl_8063EB79-_SDA_BASE_(r13)
/* 80059FC8 00055C28  98 0D 81 EB */	stb r0, lbl_8063D4AB-_SDA_BASE_(r13)
lbl_80059FCC:
/* 80059FCC 00055C2C  80 0D 98 C8 */	lwz r0, lbl_8063EB88-_SDA_BASE_(r13)
/* 80059FD0 00055C30  7F A0 00 39 */	and. r0, r29, r0
/* 80059FD4 00055C34  41 82 00 14 */	beq lbl_80059FE8
/* 80059FD8 00055C38  38 60 00 00 */	li r3, 0
/* 80059FDC 00055C3C  38 00 00 01 */	li r0, 1
/* 80059FE0 00055C40  98 6D 98 B7 */	stb r3, lbl_8063EB77-_SDA_BASE_(r13)
/* 80059FE4 00055C44  98 0D 81 E9 */	stb r0, lbl_8063D4A9-_SDA_BASE_(r13)
lbl_80059FE8:
/* 80059FE8 00055C48  80 0D 98 CC */	lwz r0, lbl_8063EB8C-_SDA_BASE_(r13)
/* 80059FEC 00055C4C  7F A0 00 39 */	and. r0, r29, r0
/* 80059FF0 00055C50  41 82 00 14 */	beq lbl_8005A004
/* 80059FF4 00055C54  38 60 00 00 */	li r3, 0
/* 80059FF8 00055C58  38 00 00 01 */	li r0, 1
/* 80059FFC 00055C5C  98 6D 98 B6 */	stb r3, lbl_8063EB76-_SDA_BASE_(r13)
/* 8005A000 00055C60  98 0D 81 E8 */	stb r0, lbl_8063D4A8-_SDA_BASE_(r13)
lbl_8005A004:
/* 8005A004 00055C64  80 0D 98 D0 */	lwz r0, lbl_8063EB90-_SDA_BASE_(r13)
/* 8005A008 00055C68  7F A0 00 39 */	and. r0, r29, r0
/* 8005A00C 00055C6C  41 82 00 14 */	beq lbl_8005A020
/* 8005A010 00055C70  38 60 00 00 */	li r3, 0
/* 8005A014 00055C74  38 00 00 01 */	li r0, 1
/* 8005A018 00055C78  98 6D 98 BA */	stb r3, lbl_8063EB7A-_SDA_BASE_(r13)
/* 8005A01C 00055C7C  98 0D 81 EC */	stb r0, lbl_8063D4AC-_SDA_BASE_(r13)
lbl_8005A020:
/* 8005A020 00055C80  80 0D 98 D4 */	lwz r0, lbl_8063EB94-_SDA_BASE_(r13)
/* 8005A024 00055C84  7F A0 00 39 */	and. r0, r29, r0
/* 8005A028 00055C88  41 82 00 14 */	beq lbl_8005A03C
/* 8005A02C 00055C8C  38 60 00 00 */	li r3, 0
/* 8005A030 00055C90  38 00 00 01 */	li r0, 1
/* 8005A034 00055C94  98 6D 98 BB */	stb r3, lbl_8063EB7B-_SDA_BASE_(r13)
/* 8005A038 00055C98  98 0D 81 ED */	stb r0, lbl_8063D4AD-_SDA_BASE_(r13)
lbl_8005A03C:
/* 8005A03C 00055C9C  57 40 07 BD */	rlwinm. r0, r26, 0, 0x1e, 0x1e
/* 8005A040 00055CA0  41 82 01 74 */	beq lbl_8005A1B4
/* 8005A044 00055CA4  80 8D 98 C0 */	lwz r4, lbl_8063EB80-_SDA_BASE_(r13)
/* 8005A048 00055CA8  7F E0 20 39 */	and. r0, r31, r4
/* 8005A04C 00055CAC  41 82 00 54 */	beq lbl_8005A0A0
/* 8005A050 00055CB0  88 6D 98 B8 */	lbz r3, lbl_8063EB78-_SDA_BASE_(r13)
/* 8005A054 00055CB4  88 0D 81 EA */	lbz r0, lbl_8063D4AA-_SDA_BASE_(r13)
/* 8005A058 00055CB8  38 63 00 01 */	addi r3, r3, 1
/* 8005A05C 00055CBC  2C 00 00 00 */	cmpwi r0, 0
/* 8005A060 00055CC0  98 6D 98 B8 */	stb r3, lbl_8063EB78-_SDA_BASE_(r13)
/* 8005A064 00055CC4  41 82 00 24 */	beq lbl_8005A088
/* 8005A068 00055CC8  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A06C 00055CCC  28 00 00 0F */	cmplwi r0, 0xf
/* 8005A070 00055CD0  40 81 00 30 */	ble lbl_8005A0A0
/* 8005A074 00055CD4  38 00 00 00 */	li r0, 0
/* 8005A078 00055CD8  7F BD 23 78 */	or r29, r29, r4
/* 8005A07C 00055CDC  98 0D 98 B8 */	stb r0, lbl_8063EB78-_SDA_BASE_(r13)
/* 8005A080 00055CE0  98 0D 81 EA */	stb r0, lbl_8063D4AA-_SDA_BASE_(r13)
/* 8005A084 00055CE4  48 00 00 1C */	b lbl_8005A0A0
lbl_8005A088:
/* 8005A088 00055CE8  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A08C 00055CEC  28 00 00 05 */	cmplwi r0, 5
/* 8005A090 00055CF0  40 81 00 10 */	ble lbl_8005A0A0
/* 8005A094 00055CF4  38 00 00 00 */	li r0, 0
/* 8005A098 00055CF8  7F BD 23 78 */	or r29, r29, r4
/* 8005A09C 00055CFC  98 0D 98 B8 */	stb r0, lbl_8063EB78-_SDA_BASE_(r13)
lbl_8005A0A0:
/* 8005A0A0 00055D00  80 8D 98 C4 */	lwz r4, lbl_8063EB84-_SDA_BASE_(r13)
/* 8005A0A4 00055D04  7F E0 20 39 */	and. r0, r31, r4
/* 8005A0A8 00055D08  41 82 00 54 */	beq lbl_8005A0FC
/* 8005A0AC 00055D0C  88 6D 98 B9 */	lbz r3, lbl_8063EB79-_SDA_BASE_(r13)
/* 8005A0B0 00055D10  88 0D 81 EB */	lbz r0, lbl_8063D4AB-_SDA_BASE_(r13)
/* 8005A0B4 00055D14  38 63 00 01 */	addi r3, r3, 1
/* 8005A0B8 00055D18  2C 00 00 00 */	cmpwi r0, 0
/* 8005A0BC 00055D1C  98 6D 98 B9 */	stb r3, lbl_8063EB79-_SDA_BASE_(r13)
/* 8005A0C0 00055D20  41 82 00 24 */	beq lbl_8005A0E4
/* 8005A0C4 00055D24  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A0C8 00055D28  28 00 00 0F */	cmplwi r0, 0xf
/* 8005A0CC 00055D2C  40 81 00 30 */	ble lbl_8005A0FC
/* 8005A0D0 00055D30  38 00 00 00 */	li r0, 0
/* 8005A0D4 00055D34  7F BD 23 78 */	or r29, r29, r4
/* 8005A0D8 00055D38  98 0D 98 B9 */	stb r0, lbl_8063EB79-_SDA_BASE_(r13)
/* 8005A0DC 00055D3C  98 0D 81 EB */	stb r0, lbl_8063D4AB-_SDA_BASE_(r13)
/* 8005A0E0 00055D40  48 00 00 1C */	b lbl_8005A0FC
lbl_8005A0E4:
/* 8005A0E4 00055D44  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A0E8 00055D48  28 00 00 05 */	cmplwi r0, 5
/* 8005A0EC 00055D4C  40 81 00 10 */	ble lbl_8005A0FC
/* 8005A0F0 00055D50  38 00 00 00 */	li r0, 0
/* 8005A0F4 00055D54  7F BD 23 78 */	or r29, r29, r4
/* 8005A0F8 00055D58  98 0D 98 B9 */	stb r0, lbl_8063EB79-_SDA_BASE_(r13)
lbl_8005A0FC:
/* 8005A0FC 00055D5C  80 8D 98 C8 */	lwz r4, lbl_8063EB88-_SDA_BASE_(r13)
/* 8005A100 00055D60  7F E0 20 39 */	and. r0, r31, r4
/* 8005A104 00055D64  41 82 00 54 */	beq lbl_8005A158
/* 8005A108 00055D68  88 6D 98 B7 */	lbz r3, lbl_8063EB77-_SDA_BASE_(r13)
/* 8005A10C 00055D6C  88 0D 81 E9 */	lbz r0, lbl_8063D4A9-_SDA_BASE_(r13)
/* 8005A110 00055D70  38 63 00 01 */	addi r3, r3, 1
/* 8005A114 00055D74  2C 00 00 00 */	cmpwi r0, 0
/* 8005A118 00055D78  98 6D 98 B7 */	stb r3, lbl_8063EB77-_SDA_BASE_(r13)
/* 8005A11C 00055D7C  41 82 00 24 */	beq lbl_8005A140
/* 8005A120 00055D80  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A124 00055D84  28 00 00 0F */	cmplwi r0, 0xf
/* 8005A128 00055D88  40 81 00 30 */	ble lbl_8005A158
/* 8005A12C 00055D8C  38 00 00 00 */	li r0, 0
/* 8005A130 00055D90  7F BD 23 78 */	or r29, r29, r4
/* 8005A134 00055D94  98 0D 98 B7 */	stb r0, lbl_8063EB77-_SDA_BASE_(r13)
/* 8005A138 00055D98  98 0D 81 E9 */	stb r0, lbl_8063D4A9-_SDA_BASE_(r13)
/* 8005A13C 00055D9C  48 00 00 1C */	b lbl_8005A158
lbl_8005A140:
/* 8005A140 00055DA0  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A144 00055DA4  28 00 00 05 */	cmplwi r0, 5
/* 8005A148 00055DA8  40 81 00 10 */	ble lbl_8005A158
/* 8005A14C 00055DAC  38 00 00 00 */	li r0, 0
/* 8005A150 00055DB0  7F BD 23 78 */	or r29, r29, r4
/* 8005A154 00055DB4  98 0D 98 B7 */	stb r0, lbl_8063EB77-_SDA_BASE_(r13)
lbl_8005A158:
/* 8005A158 00055DB8  80 8D 98 CC */	lwz r4, lbl_8063EB8C-_SDA_BASE_(r13)
/* 8005A15C 00055DBC  7F E0 20 39 */	and. r0, r31, r4
/* 8005A160 00055DC0  41 82 00 54 */	beq lbl_8005A1B4
/* 8005A164 00055DC4  88 6D 98 B6 */	lbz r3, lbl_8063EB76-_SDA_BASE_(r13)
/* 8005A168 00055DC8  88 0D 81 E8 */	lbz r0, lbl_8063D4A8-_SDA_BASE_(r13)
/* 8005A16C 00055DCC  38 63 00 01 */	addi r3, r3, 1
/* 8005A170 00055DD0  2C 00 00 00 */	cmpwi r0, 0
/* 8005A174 00055DD4  98 6D 98 B6 */	stb r3, lbl_8063EB76-_SDA_BASE_(r13)
/* 8005A178 00055DD8  41 82 00 24 */	beq lbl_8005A19C
/* 8005A17C 00055DDC  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A180 00055DE0  28 00 00 0F */	cmplwi r0, 0xf
/* 8005A184 00055DE4  40 81 00 30 */	ble lbl_8005A1B4
/* 8005A188 00055DE8  38 00 00 00 */	li r0, 0
/* 8005A18C 00055DEC  7F BD 23 78 */	or r29, r29, r4
/* 8005A190 00055DF0  98 0D 98 B6 */	stb r0, lbl_8063EB76-_SDA_BASE_(r13)
/* 8005A194 00055DF4  98 0D 81 E8 */	stb r0, lbl_8063D4A8-_SDA_BASE_(r13)
/* 8005A198 00055DF8  48 00 00 1C */	b lbl_8005A1B4
lbl_8005A19C:
/* 8005A19C 00055DFC  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A1A0 00055E00  28 00 00 05 */	cmplwi r0, 5
/* 8005A1A4 00055E04  40 81 00 10 */	ble lbl_8005A1B4
/* 8005A1A8 00055E08  38 00 00 00 */	li r0, 0
/* 8005A1AC 00055E0C  7F BD 23 78 */	or r29, r29, r4
/* 8005A1B0 00055E10  98 0D 98 B6 */	stb r0, lbl_8063EB76-_SDA_BASE_(r13)
lbl_8005A1B4:
/* 8005A1B4 00055E14  57 40 07 7B */	rlwinm. r0, r26, 0, 0x1d, 0x1d
/* 8005A1B8 00055E18  41 82 00 BC */	beq lbl_8005A274
/* 8005A1BC 00055E1C  80 8D 98 D0 */	lwz r4, lbl_8063EB90-_SDA_BASE_(r13)
/* 8005A1C0 00055E20  7F E0 20 39 */	and. r0, r31, r4
/* 8005A1C4 00055E24  41 82 00 54 */	beq lbl_8005A218
/* 8005A1C8 00055E28  88 6D 98 BA */	lbz r3, lbl_8063EB7A-_SDA_BASE_(r13)
/* 8005A1CC 00055E2C  88 0D 81 EC */	lbz r0, lbl_8063D4AC-_SDA_BASE_(r13)
/* 8005A1D0 00055E30  38 63 00 01 */	addi r3, r3, 1
/* 8005A1D4 00055E34  2C 00 00 00 */	cmpwi r0, 0
/* 8005A1D8 00055E38  98 6D 98 BA */	stb r3, lbl_8063EB7A-_SDA_BASE_(r13)
/* 8005A1DC 00055E3C  41 82 00 24 */	beq lbl_8005A200
/* 8005A1E0 00055E40  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A1E4 00055E44  28 00 00 0F */	cmplwi r0, 0xf
/* 8005A1E8 00055E48  40 81 00 30 */	ble lbl_8005A218
/* 8005A1EC 00055E4C  38 00 00 00 */	li r0, 0
/* 8005A1F0 00055E50  7F BD 23 78 */	or r29, r29, r4
/* 8005A1F4 00055E54  98 0D 98 BA */	stb r0, lbl_8063EB7A-_SDA_BASE_(r13)
/* 8005A1F8 00055E58  98 0D 81 EC */	stb r0, lbl_8063D4AC-_SDA_BASE_(r13)
/* 8005A1FC 00055E5C  48 00 00 1C */	b lbl_8005A218
lbl_8005A200:
/* 8005A200 00055E60  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A204 00055E64  28 00 00 05 */	cmplwi r0, 5
/* 8005A208 00055E68  40 81 00 10 */	ble lbl_8005A218
/* 8005A20C 00055E6C  38 00 00 00 */	li r0, 0
/* 8005A210 00055E70  7F BD 23 78 */	or r29, r29, r4
/* 8005A214 00055E74  98 0D 98 BA */	stb r0, lbl_8063EB7A-_SDA_BASE_(r13)
lbl_8005A218:
/* 8005A218 00055E78  80 8D 98 D4 */	lwz r4, lbl_8063EB94-_SDA_BASE_(r13)
/* 8005A21C 00055E7C  7F E0 20 39 */	and. r0, r31, r4
/* 8005A220 00055E80  41 82 00 54 */	beq lbl_8005A274
/* 8005A224 00055E84  88 6D 98 BB */	lbz r3, lbl_8063EB7B-_SDA_BASE_(r13)
/* 8005A228 00055E88  88 0D 81 ED */	lbz r0, lbl_8063D4AD-_SDA_BASE_(r13)
/* 8005A22C 00055E8C  38 63 00 01 */	addi r3, r3, 1
/* 8005A230 00055E90  2C 00 00 00 */	cmpwi r0, 0
/* 8005A234 00055E94  98 6D 98 BB */	stb r3, lbl_8063EB7B-_SDA_BASE_(r13)
/* 8005A238 00055E98  41 82 00 24 */	beq lbl_8005A25C
/* 8005A23C 00055E9C  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A240 00055EA0  28 00 00 0F */	cmplwi r0, 0xf
/* 8005A244 00055EA4  40 81 00 30 */	ble lbl_8005A274
/* 8005A248 00055EA8  38 00 00 00 */	li r0, 0
/* 8005A24C 00055EAC  7F BD 23 78 */	or r29, r29, r4
/* 8005A250 00055EB0  98 0D 98 BB */	stb r0, lbl_8063EB7B-_SDA_BASE_(r13)
/* 8005A254 00055EB4  98 0D 81 ED */	stb r0, lbl_8063D4AD-_SDA_BASE_(r13)
/* 8005A258 00055EB8  48 00 00 1C */	b lbl_8005A274
lbl_8005A25C:
/* 8005A25C 00055EBC  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A260 00055EC0  28 00 00 05 */	cmplwi r0, 5
/* 8005A264 00055EC4  40 81 00 10 */	ble lbl_8005A274
/* 8005A268 00055EC8  38 00 00 00 */	li r0, 0
/* 8005A26C 00055ECC  7F BD 23 78 */	or r29, r29, r4
/* 8005A270 00055ED0  98 0D 98 BB */	stb r0, lbl_8063EB7B-_SDA_BASE_(r13)
lbl_8005A274:
/* 8005A274 00055ED4  80 0D 98 D0 */	lwz r0, lbl_8063EB90-_SDA_BASE_(r13)
/* 8005A278 00055ED8  7F A0 00 39 */	and. r0, r29, r0
/* 8005A27C 00055EDC  41 82 00 4C */	beq lbl_8005A2C8
/* 8005A280 00055EE0  80 6D 98 D8 */	lwz r3, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A284 00055EE4  2C 03 00 00 */	cmpwi r3, 0
/* 8005A288 00055EE8  41 82 00 40 */	beq lbl_8005A2C8
/* 8005A28C 00055EEC  88 0D 98 EC */	lbz r0, lbl_8063EBAC-_SDA_BASE_(r13)
/* 8005A290 00055EF0  7C 03 00 00 */	cmpw r3, r0
/* 8005A294 00055EF4  40 82 00 18 */	bne lbl_8005A2AC
/* 8005A298 00055EF8  57 40 06 B5 */	rlwinm. r0, r26, 0, 0x1a, 0x1a
/* 8005A29C 00055EFC  40 82 00 20 */	bne lbl_8005A2BC
/* 8005A2A0 00055F00  38 60 00 02 */	li r3, 2
/* 8005A2A4 00055F04  48 00 02 29 */	bl func_8005A4CC
/* 8005A2A8 00055F08  48 00 00 14 */	b lbl_8005A2BC
lbl_8005A2AC:
/* 8005A2AC 00055F0C  57 40 07 39 */	rlwinm. r0, r26, 0, 0x1c, 0x1c
/* 8005A2B0 00055F10  40 82 00 0C */	bne lbl_8005A2BC
/* 8005A2B4 00055F14  38 60 00 01 */	li r3, 1
/* 8005A2B8 00055F18  48 00 02 15 */	bl func_8005A4CC
lbl_8005A2BC:
/* 8005A2BC 00055F1C  80 0D 98 D8 */	lwz r0, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A2C0 00055F20  64 03 80 00 */	oris r3, r0, 0x8000
/* 8005A2C4 00055F24  48 00 01 5C */	b lbl_8005A420
lbl_8005A2C8:
/* 8005A2C8 00055F28  80 0D 98 D4 */	lwz r0, lbl_8063EB94-_SDA_BASE_(r13)
/* 8005A2CC 00055F2C  7F A0 00 39 */	and. r0, r29, r0
/* 8005A2D0 00055F30  41 82 00 4C */	beq lbl_8005A31C
/* 8005A2D4 00055F34  57 40 06 73 */	rlwinm. r0, r26, 0, 0x19, 0x19
/* 8005A2D8 00055F38  41 82 00 24 */	beq lbl_8005A2FC
/* 8005A2DC 00055F3C  57 40 06 B5 */	rlwinm. r0, r26, 0, 0x1a, 0x1a
/* 8005A2E0 00055F40  40 82 00 0C */	bne lbl_8005A2EC
/* 8005A2E4 00055F44  38 60 00 02 */	li r3, 2
/* 8005A2E8 00055F48  48 00 01 E5 */	bl func_8005A4CC
lbl_8005A2EC:
/* 8005A2EC 00055F4C  80 0D 98 D8 */	lwz r0, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A2F0 00055F50  64 03 80 00 */	oris r3, r0, 0x8000
/* 8005A2F4 00055F54  60 63 40 00 */	ori r3, r3, 0x4000
/* 8005A2F8 00055F58  48 00 01 28 */	b lbl_8005A420
lbl_8005A2FC:
/* 8005A2FC 00055F5C  57 40 07 FF */	clrlwi. r0, r26, 0x1f
/* 8005A300 00055F60  41 82 00 1C */	beq lbl_8005A31C
/* 8005A304 00055F64  57 40 06 B5 */	rlwinm. r0, r26, 0, 0x1a, 0x1a
/* 8005A308 00055F68  40 82 00 0C */	bne lbl_8005A314
/* 8005A30C 00055F6C  38 60 00 02 */	li r3, 2
/* 8005A310 00055F70  48 00 01 BD */	bl func_8005A4CC
lbl_8005A314:
/* 8005A314 00055F74  38 60 FF FF */	li r3, -1
/* 8005A318 00055F78  48 00 01 08 */	b lbl_8005A420
lbl_8005A31C:
/* 8005A31C 00055F7C  80 AD 98 CC */	lwz r5, lbl_8063EB8C-_SDA_BASE_(r13)
/* 8005A320 00055F80  80 8D 98 C8 */	lwz r4, lbl_8063EB88-_SDA_BASE_(r13)
/* 8005A324 00055F84  80 6D 98 C0 */	lwz r3, lbl_8063EB80-_SDA_BASE_(r13)
/* 8005A328 00055F88  80 0D 98 C4 */	lwz r0, lbl_8063EB84-_SDA_BASE_(r13)
/* 8005A32C 00055F8C  7C A4 23 78 */	or r4, r5, r4
/* 8005A330 00055F90  7C 60 03 78 */	or r0, r3, r0
/* 8005A334 00055F94  7C 80 03 78 */	or r0, r4, r0
/* 8005A338 00055F98  7F A0 00 39 */	and. r0, r29, r0
/* 8005A33C 00055F9C  41 82 00 E0 */	beq lbl_8005A41C
/* 8005A340 00055FA0  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 8005A344 00055FA4  80 8D 98 D8 */	lwz r4, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A348 00055FA8  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 8005A34C 00055FAC  4B FF 7C 69 */	bl func_80051FB4
/* 8005A350 00055FB0  80 0D 98 CC */	lwz r0, lbl_8063EB8C-_SDA_BASE_(r13)
/* 8005A354 00055FB4  7F A0 00 39 */	and. r0, r29, r0
/* 8005A358 00055FB8  41 82 00 2C */	beq lbl_8005A384
/* 8005A35C 00055FBC  A0 63 00 00 */	lhz r3, 0(r3)
/* 8005A360 00055FC0  2C 03 00 00 */	cmpwi r3, 0
/* 8005A364 00055FC4  41 82 00 B8 */	beq lbl_8005A41C
/* 8005A368 00055FC8  57 40 06 F7 */	rlwinm. r0, r26, 0, 0x1b, 0x1b
/* 8005A36C 00055FCC  90 6D 98 D8 */	stw r3, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A370 00055FD0  40 82 00 0C */	bne lbl_8005A37C
/* 8005A374 00055FD4  38 60 00 03 */	li r3, 3
/* 8005A378 00055FD8  48 00 01 55 */	bl func_8005A4CC
lbl_8005A37C:
/* 8005A37C 00055FDC  83 CD 98 D8 */	lwz r30, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A380 00055FE0  48 00 00 9C */	b lbl_8005A41C
lbl_8005A384:
/* 8005A384 00055FE4  80 0D 98 C8 */	lwz r0, lbl_8063EB88-_SDA_BASE_(r13)
/* 8005A388 00055FE8  7F A0 00 39 */	and. r0, r29, r0
/* 8005A38C 00055FEC  41 82 00 2C */	beq lbl_8005A3B8
/* 8005A390 00055FF0  A0 63 00 06 */	lhz r3, 6(r3)
/* 8005A394 00055FF4  2C 03 00 00 */	cmpwi r3, 0
/* 8005A398 00055FF8  41 82 00 84 */	beq lbl_8005A41C
/* 8005A39C 00055FFC  57 40 06 F7 */	rlwinm. r0, r26, 0, 0x1b, 0x1b
/* 8005A3A0 00056000  90 6D 98 D8 */	stw r3, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A3A4 00056004  40 82 00 0C */	bne lbl_8005A3B0
/* 8005A3A8 00056008  38 60 00 03 */	li r3, 3
/* 8005A3AC 0005600C  48 00 01 21 */	bl func_8005A4CC
lbl_8005A3B0:
/* 8005A3B0 00056010  83 CD 98 D8 */	lwz r30, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A3B4 00056014  48 00 00 68 */	b lbl_8005A41C
lbl_8005A3B8:
/* 8005A3B8 00056018  80 0D 98 C0 */	lwz r0, lbl_8063EB80-_SDA_BASE_(r13)
/* 8005A3BC 0005601C  7F A0 00 39 */	and. r0, r29, r0
/* 8005A3C0 00056020  41 82 00 2C */	beq lbl_8005A3EC
/* 8005A3C4 00056024  A0 63 00 02 */	lhz r3, 2(r3)
/* 8005A3C8 00056028  2C 03 00 00 */	cmpwi r3, 0
/* 8005A3CC 0005602C  41 82 00 50 */	beq lbl_8005A41C
/* 8005A3D0 00056030  57 40 06 F7 */	rlwinm. r0, r26, 0, 0x1b, 0x1b
/* 8005A3D4 00056034  90 6D 98 D8 */	stw r3, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A3D8 00056038  40 82 00 0C */	bne lbl_8005A3E4
/* 8005A3DC 0005603C  38 60 00 03 */	li r3, 3
/* 8005A3E0 00056040  48 00 00 ED */	bl func_8005A4CC
lbl_8005A3E4:
/* 8005A3E4 00056044  83 CD 98 D8 */	lwz r30, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A3E8 00056048  48 00 00 34 */	b lbl_8005A41C
lbl_8005A3EC:
/* 8005A3EC 0005604C  80 0D 98 C4 */	lwz r0, lbl_8063EB84-_SDA_BASE_(r13)
/* 8005A3F0 00056050  7F A0 00 39 */	and. r0, r29, r0
/* 8005A3F4 00056054  41 82 00 28 */	beq lbl_8005A41C
/* 8005A3F8 00056058  A0 63 00 04 */	lhz r3, 4(r3)
/* 8005A3FC 0005605C  2C 03 00 00 */	cmpwi r3, 0
/* 8005A400 00056060  41 82 00 1C */	beq lbl_8005A41C
/* 8005A404 00056064  57 40 06 F7 */	rlwinm. r0, r26, 0, 0x1b, 0x1b
/* 8005A408 00056068  90 6D 98 D8 */	stw r3, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A40C 0005606C  40 82 00 0C */	bne lbl_8005A418
/* 8005A410 00056070  38 60 00 03 */	li r3, 3
/* 8005A414 00056074  48 00 00 B9 */	bl func_8005A4CC
lbl_8005A418:
/* 8005A418 00056078  83 CD 98 D8 */	lwz r30, lbl_8063EB98-_SDA_BASE_(r13)
lbl_8005A41C:
/* 8005A41C 0005607C  7F C3 F3 78 */	mr r3, r30
lbl_8005A420:
/* 8005A420 00056080  39 61 00 30 */	addi r11, r1, 0x30
/* 8005A424 00056084  48 16 CD 4D */	bl _restgpr_26
/* 8005A428 00056088  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005A42C 0005608C  7C 08 03 A6 */	mtlr r0
/* 8005A430 00056090  38 21 00 30 */	addi r1, r1, 0x30
/* 8005A434 00056094  4E 80 00 20 */	blr

.global func_8005A438
func_8005A438:
/* 8005A438 00056098  90 6D 98 D8 */	stw r3, lbl_8063EB98-_SDA_BASE_(r13)
/* 8005A43C 0005609C  4E 80 00 20 */	blr

.global func_8005A440
func_8005A440:
/* 8005A440 000560A0  38 00 00 01 */	li r0, 1
/* 8005A444 000560A4  98 0D 98 E4 */	stb r0, lbl_8063EBA4-_SDA_BASE_(r13)
/* 8005A448 000560A8  4E 80 00 20 */	blr

.global func_8005A44C
func_8005A44C:
/* 8005A44C 000560AC  4E 80 00 20 */	blr

.global func_8005A450
func_8005A450:
/* 8005A450 000560B0  3C 60 80 06 */	lis r3, lbl_8005A45C@ha
/* 8005A454 000560B4  38 63 A4 5C */	addi r3, r3, lbl_8005A45C@l
/* 8005A458 000560B8  48 1F 99 48 */	b func_80253DA0
lbl_8005A45C:
/* 8005A45C 000560BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005A460 000560C0  7C 08 02 A6 */	mflr r0
/* 8005A464 000560C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005A468 000560C8  88 0D 98 E4 */	lbz r0, lbl_8063EBA4-_SDA_BASE_(r13)
/* 8005A46C 000560CC  2C 00 00 00 */	cmpwi r0, 0
/* 8005A470 000560D0  41 82 00 4C */	beq lbl_8005A4BC
/* 8005A474 000560D4  80 0D 98 E8 */	lwz r0, lbl_8063EBA8-_SDA_BASE_(r13)
/* 8005A478 000560D8  2C 00 00 00 */	cmpwi r0, 0
/* 8005A47C 000560DC  40 82 00 0C */	bne lbl_8005A488
/* 8005A480 000560E0  48 10 52 11 */	bl func_8015F690
/* 8005A484 000560E4  90 6D 98 E8 */	stw r3, lbl_8063EBA8-_SDA_BASE_(r13)
lbl_8005A488:
/* 8005A488 000560E8  80 6D 98 E8 */	lwz r3, lbl_8063EBA8-_SDA_BASE_(r13)
/* 8005A48C 000560EC  2C 03 00 00 */	cmpwi r3, 0
/* 8005A490 000560F0  41 82 00 20 */	beq lbl_8005A4B0
/* 8005A494 000560F4  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005A498 000560F8  2C 00 00 02 */	cmpwi r0, 2
/* 8005A49C 000560FC  41 82 00 20 */	beq lbl_8005A4BC
/* 8005A4A0 00056100  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 8005A4A4 00056104  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 8005A4A8 00056108  4B FF 70 01 */	bl func_800514A8
/* 8005A4AC 0005610C  48 00 00 10 */	b lbl_8005A4BC
lbl_8005A4B0:
/* 8005A4B0 00056110  3C 60 80 47 */	lis r3, lbl_804766D8@ha
/* 8005A4B4 00056114  38 63 66 D8 */	addi r3, r3, lbl_804766D8@l
/* 8005A4B8 00056118  4B FF 6F F1 */	bl func_800514A8
lbl_8005A4BC:
/* 8005A4BC 0005611C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005A4C0 00056120  7C 08 03 A6 */	mtlr r0
/* 8005A4C4 00056124  38 21 00 10 */	addi r1, r1, 0x10
/* 8005A4C8 00056128  4E 80 00 20 */	blr

.global func_8005A4CC
func_8005A4CC:
/* 8005A4CC 0005612C  2C 03 00 02 */	cmpwi r3, 2
/* 8005A4D0 00056130  41 82 00 30 */	beq lbl_8005A500
/* 8005A4D4 00056134  40 80 00 10 */	bge lbl_8005A4E4
/* 8005A4D8 00056138  2C 03 00 01 */	cmpwi r3, 1
/* 8005A4DC 0005613C  40 80 00 14 */	bge lbl_8005A4F0
/* 8005A4E0 00056140  4E 80 00 20 */	blr
lbl_8005A4E4:
/* 8005A4E4 00056144  2C 03 00 04 */	cmpwi r3, 4
/* 8005A4E8 00056148  4C 80 00 20 */	bgelr
/* 8005A4EC 0005614C  48 00 00 24 */	b lbl_8005A510
lbl_8005A4F0:
/* 8005A4F0 00056150  C0 22 85 C4 */	lfs f1, lbl_80640BC4-_SDA2_BASE_(r2)
/* 8005A4F4 00056154  38 60 02 1F */	li r3, 0x21f
/* 8005A4F8 00056158  38 80 00 00 */	li r4, 0
/* 8005A4FC 0005615C  4B FB 0C 74 */	b func_8000B170
lbl_8005A500:
/* 8005A500 00056160  C0 22 85 C4 */	lfs f1, lbl_80640BC4-_SDA2_BASE_(r2)
/* 8005A504 00056164  38 60 02 20 */	li r3, 0x220
/* 8005A508 00056168  38 80 00 00 */	li r4, 0
/* 8005A50C 0005616C  4B FB 0C 64 */	b func_8000B170
lbl_8005A510:
/* 8005A510 00056170  C0 22 85 C4 */	lfs f1, lbl_80640BC4-_SDA2_BASE_(r2)
/* 8005A514 00056174  38 60 02 1E */	li r3, 0x21e
/* 8005A518 00056178  38 80 00 00 */	li r4, 0
/* 8005A51C 0005617C  4B FB 0C 54 */	b func_8000B170
/* 8005A520 00056180  4E 80 00 20 */	blr

.global func_8005A524
func_8005A524:
/* 8005A524 00056184  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005A528 00056188  7C 08 02 A6 */	mflr r0
/* 8005A52C 0005618C  38 A0 00 01 */	li r5, 1
/* 8005A530 00056190  38 8D 98 B0 */	addi r4, r13, lbl_8063EB70-_SDA_BASE_
/* 8005A534 00056194  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005A538 00056198  38 60 00 04 */	li r3, 4
/* 8005A53C 0005619C  38 00 00 00 */	li r0, 0
/* 8005A540 000561A0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005A544 000561A4  3F E0 80 47 */	lis r31, lbl_804766D8@ha
/* 8005A548 000561A8  B0 64 00 02 */	sth r3, 2(r4)
/* 8005A54C 000561AC  38 7F 66 D8 */	addi r3, r31, lbl_804766D8@l
/* 8005A550 000561B0  98 AD 98 B0 */	stb r5, lbl_8063EB70-_SDA_BASE_(r13)
/* 8005A554 000561B4  98 04 00 04 */	stb r0, 4(r4)
/* 8005A558 000561B8  4B FF 6E 61 */	bl func_800513B8
/* 8005A55C 000561BC  3C 80 80 05 */	lis r4, func_80051468@ha
/* 8005A560 000561C0  3C A0 80 47 */	lis r5, lbl_804766C8@ha
/* 8005A564 000561C4  38 7F 66 D8 */	addi r3, r31, 0x66d8
/* 8005A568 000561C8  38 84 14 68 */	addi r4, r4, func_80051468@l
/* 8005A56C 000561CC  38 A5 66 C8 */	addi r5, r5, lbl_804766C8@l
/* 8005A570 000561D0  48 16 C6 D9 */	bl __register_global_object_tmp
/* 8005A574 000561D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005A578 000561D8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005A57C 000561DC  7C 08 03 A6 */	mtlr r0
/* 8005A580 000561E0  38 21 00 10 */	addi r1, r1, 0x10
/* 8005A584 000561E4  4E 80 00 20 */	blr

.global func_8005A588
func_8005A588:
/* 8005A588 000561E8  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005A58C 000561EC  7C 08 02 A6 */	mflr r0
/* 8005A590 000561F0  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005A594 000561F4  39 61 00 30 */	addi r11, r1, 0x30
/* 8005A598 000561F8  48 16 CB 81 */	bl _savegpr_23
/* 8005A59C 000561FC  3B 00 00 00 */	li r24, 0
/* 8005A5A0 00056200  38 60 00 00 */	li r3, 0
/* 8005A5A4 00056204  4B FF E5 6D */	bl func_80058B10
/* 8005A5A8 00056208  3C 80 80 40 */	lis r4, lbl_803FB8D0@ha
/* 8005A5AC 0005620C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005A5B0 00056210  38 84 B8 D0 */	addi r4, r4, lbl_803FB8D0@l
/* 8005A5B4 00056214  7C 64 00 2E */	lwzx r3, r4, r0
/* 8005A5B8 00056218  48 1E F0 25 */	bl func_802495DC
/* 8005A5BC 0005621C  3C A0 80 47 */	lis r5, lbl_80477D68@ha
/* 8005A5C0 00056220  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005A5C4 00056224  38 00 00 10 */	li r0, 0x10
/* 8005A5C8 00056228  39 00 00 00 */	li r8, 0
/* 8005A5CC 0005622C  38 A5 7D 68 */	addi r5, r5, lbl_80477D68@l
/* 8005A5D0 00056230  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005A5D4 00056234  38 80 00 00 */	li r4, 0
/* 8005A5D8 00056238  7C 09 03 A6 */	mtctr r0
lbl_8005A5DC:
/* 8005A5DC 0005623C  55 00 13 BA */	rlwinm r0, r8, 2, 0xe, 0x1d
/* 8005A5E0 00056240  39 08 00 08 */	addi r8, r8, 8
/* 8005A5E4 00056244  7C E3 02 14 */	add r7, r3, r0
/* 8005A5E8 00056248  7C 85 01 2E */	stwx r4, r5, r0
/* 8005A5EC 0005624C  7C C5 02 14 */	add r6, r5, r0
/* 8005A5F0 00056250  55 00 13 BA */	rlwinm r0, r8, 2, 0xe, 0x1d
/* 8005A5F4 00056254  90 87 00 00 */	stw r4, 0(r7)
/* 8005A5F8 00056258  39 08 00 08 */	addi r8, r8, 8
/* 8005A5FC 0005625C  90 86 00 04 */	stw r4, 4(r6)
/* 8005A600 00056260  90 87 00 04 */	stw r4, 4(r7)
/* 8005A604 00056264  90 86 00 08 */	stw r4, 8(r6)
/* 8005A608 00056268  90 87 00 08 */	stw r4, 8(r7)
/* 8005A60C 0005626C  90 86 00 0C */	stw r4, 0xc(r6)
/* 8005A610 00056270  90 87 00 0C */	stw r4, 0xc(r7)
/* 8005A614 00056274  90 86 00 10 */	stw r4, 0x10(r6)
/* 8005A618 00056278  90 87 00 10 */	stw r4, 0x10(r7)
/* 8005A61C 0005627C  90 86 00 14 */	stw r4, 0x14(r6)
/* 8005A620 00056280  90 87 00 14 */	stw r4, 0x14(r7)
/* 8005A624 00056284  90 86 00 18 */	stw r4, 0x18(r6)
/* 8005A628 00056288  90 86 00 1C */	stw r4, 0x1c(r6)
/* 8005A62C 0005628C  7C C5 02 14 */	add r6, r5, r0
/* 8005A630 00056290  90 87 00 18 */	stw r4, 0x18(r7)
/* 8005A634 00056294  90 87 00 1C */	stw r4, 0x1c(r7)
/* 8005A638 00056298  7C E3 02 14 */	add r7, r3, r0
/* 8005A63C 0005629C  7C 85 01 2E */	stwx r4, r5, r0
/* 8005A640 000562A0  7C 83 01 2E */	stwx r4, r3, r0
/* 8005A644 000562A4  90 86 00 04 */	stw r4, 4(r6)
/* 8005A648 000562A8  90 87 00 04 */	stw r4, 4(r7)
/* 8005A64C 000562AC  90 86 00 08 */	stw r4, 8(r6)
/* 8005A650 000562B0  90 87 00 08 */	stw r4, 8(r7)
/* 8005A654 000562B4  90 86 00 0C */	stw r4, 0xc(r6)
/* 8005A658 000562B8  90 87 00 0C */	stw r4, 0xc(r7)
/* 8005A65C 000562BC  90 86 00 10 */	stw r4, 0x10(r6)
/* 8005A660 000562C0  90 87 00 10 */	stw r4, 0x10(r7)
/* 8005A664 000562C4  90 86 00 14 */	stw r4, 0x14(r6)
/* 8005A668 000562C8  90 87 00 14 */	stw r4, 0x14(r7)
/* 8005A66C 000562CC  90 86 00 18 */	stw r4, 0x18(r6)
/* 8005A670 000562D0  90 87 00 18 */	stw r4, 0x18(r7)
/* 8005A674 000562D4  90 86 00 1C */	stw r4, 0x1c(r6)
/* 8005A678 000562D8  90 87 00 1C */	stw r4, 0x1c(r7)
/* 8005A67C 000562DC  42 00 FF 60 */	bdnz lbl_8005A5DC
/* 8005A680 000562E0  3F 60 80 41 */	lis r27, lbl_8040B0E0@ha
/* 8005A684 000562E4  3F 40 80 40 */	lis r26, lbl_803FB8E4@ha
/* 8005A688 000562E8  3F 20 80 40 */	lis r25, lbl_803FB8D0@ha
/* 8005A68C 000562EC  3E E0 80 47 */	lis r23, lbl_80477D68@ha
/* 8005A690 000562F0  3B 7B B0 E0 */	addi r27, r27, lbl_8040B0E0@l
/* 8005A694 000562F4  3B 5A B8 E4 */	addi r26, r26, lbl_803FB8E4@l
/* 8005A698 000562F8  3B 39 B8 D0 */	addi r25, r25, lbl_803FB8D0@l
/* 8005A69C 000562FC  3A F7 7D 68 */	addi r23, r23, lbl_80477D68@l
/* 8005A6A0 00056300  3B A0 00 00 */	li r29, 0
lbl_8005A6A4:
/* 8005A6A4 00056304  57 BC 13 BA */	rlwinm r28, r29, 2, 0xe, 0x1d
/* 8005A6A8 00056308  38 60 00 00 */	li r3, 0
/* 8005A6AC 0005630C  4B FF E4 65 */	bl func_80058B10
/* 8005A6B0 00056310  54 60 06 3E */	clrlwi r0, r3, 0x18
/* 8005A6B4 00056314  1C 00 01 40 */	mulli r0, r0, 0x140
/* 8005A6B8 00056318  7C 1C 02 14 */	add r0, r28, r0
/* 8005A6BC 0005631C  7F DB 00 2E */	lwzx r30, r27, r0
/* 8005A6C0 00056320  2C 1E 00 00 */	cmpwi r30, 0
/* 8005A6C4 00056324  41 82 00 50 */	beq lbl_8005A714
/* 8005A6C8 00056328  57 A0 04 3E */	clrlwi r0, r29, 0x10
/* 8005A6CC 0005632C  7C 1A 00 AE */	lbzx r0, r26, r0
/* 8005A6D0 00056330  2C 00 00 00 */	cmpwi r0, 0
/* 8005A6D4 00056334  40 82 00 0C */	bne lbl_8005A6E0
/* 8005A6D8 00056338  38 60 00 0A */	li r3, 0xa
/* 8005A6DC 0005633C  48 00 00 14 */	b lbl_8005A6F0
lbl_8005A6E0:
/* 8005A6E0 00056340  38 60 00 00 */	li r3, 0
/* 8005A6E4 00056344  4B FF E4 2D */	bl func_80058B10
/* 8005A6E8 00056348  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005A6EC 0005634C  7C 79 00 2E */	lwzx r3, r25, r0
lbl_8005A6F0:
/* 8005A6F0 00056350  7F C4 F3 78 */	mr r4, r30
/* 8005A6F4 00056354  48 18 0E F1 */	bl func_801DB5E4
/* 8005A6F8 00056358  3B BD 00 01 */	addi r29, r29, 1
/* 8005A6FC 0005635C  38 03 01 1F */	addi r0, r3, 0x11f
/* 8005A700 00056360  28 1D 01 00 */	cmplwi r29, 0x100
/* 8005A704 00056364  7F 17 E1 2E */	stwx r24, r23, r28
/* 8005A708 00056368  54 00 00 34 */	rlwinm r0, r0, 0, 0, 0x1a
/* 8005A70C 0005636C  7F 18 02 14 */	add r24, r24, r0
/* 8005A710 00056370  41 80 FF 94 */	blt lbl_8005A6A4
lbl_8005A714:
/* 8005A714 00056374  7F 03 C3 78 */	mr r3, r24
/* 8005A718 00056378  48 1F 5C 25 */	bl func_8025033C
/* 8005A71C 0005637C  3C A0 80 47 */	lis r5, lbl_80477968@ha
/* 8005A720 00056380  3C 80 80 47 */	lis r4, lbl_80477D68@ha
/* 8005A724 00056384  90 65 79 68 */	stw r3, lbl_80477968@l(r5)
/* 8005A728 00056388  38 00 00 33 */	li r0, 0x33
/* 8005A72C 0005638C  38 65 79 68 */	addi r3, r5, 0x7968
/* 8005A730 00056390  38 84 7D 68 */	addi r4, r4, lbl_80477D68@l
/* 8005A734 00056394  39 00 00 01 */	li r8, 1
/* 8005A738 00056398  7C 09 03 A6 */	mtctr r0
lbl_8005A73C:
/* 8005A73C 0005639C  55 07 13 BA */	rlwinm r7, r8, 2, 0xe, 0x1d
/* 8005A740 000563A0  7C C4 38 2E */	lwzx r6, r4, r7
/* 8005A744 000563A4  2C 06 00 00 */	cmpwi r6, 0
/* 8005A748 000563A8  41 82 00 10 */	beq lbl_8005A758
/* 8005A74C 000563AC  80 05 79 68 */	lwz r0, 0x7968(r5)
/* 8005A750 000563B0  7C 00 32 14 */	add r0, r0, r6
/* 8005A754 000563B4  7C 03 39 2E */	stwx r0, r3, r7
lbl_8005A758:
/* 8005A758 000563B8  39 08 00 01 */	addi r8, r8, 1
/* 8005A75C 000563BC  55 07 13 BA */	rlwinm r7, r8, 2, 0xe, 0x1d
/* 8005A760 000563C0  7C C4 38 2E */	lwzx r6, r4, r7
/* 8005A764 000563C4  2C 06 00 00 */	cmpwi r6, 0
/* 8005A768 000563C8  41 82 00 10 */	beq lbl_8005A778
/* 8005A76C 000563CC  80 05 79 68 */	lwz r0, 0x7968(r5)
/* 8005A770 000563D0  7C 00 32 14 */	add r0, r0, r6
/* 8005A774 000563D4  7C 03 39 2E */	stwx r0, r3, r7
lbl_8005A778:
/* 8005A778 000563D8  39 08 00 01 */	addi r8, r8, 1
/* 8005A77C 000563DC  55 07 13 BA */	rlwinm r7, r8, 2, 0xe, 0x1d
/* 8005A780 000563E0  7C C4 38 2E */	lwzx r6, r4, r7
/* 8005A784 000563E4  2C 06 00 00 */	cmpwi r6, 0
/* 8005A788 000563E8  41 82 00 10 */	beq lbl_8005A798
/* 8005A78C 000563EC  80 05 79 68 */	lwz r0, 0x7968(r5)
/* 8005A790 000563F0  7C 00 32 14 */	add r0, r0, r6
/* 8005A794 000563F4  7C 03 39 2E */	stwx r0, r3, r7
lbl_8005A798:
/* 8005A798 000563F8  39 08 00 01 */	addi r8, r8, 1
/* 8005A79C 000563FC  55 07 13 BA */	rlwinm r7, r8, 2, 0xe, 0x1d
/* 8005A7A0 00056400  7C C4 38 2E */	lwzx r6, r4, r7
/* 8005A7A4 00056404  2C 06 00 00 */	cmpwi r6, 0
/* 8005A7A8 00056408  41 82 00 10 */	beq lbl_8005A7B8
/* 8005A7AC 0005640C  80 05 79 68 */	lwz r0, 0x7968(r5)
/* 8005A7B0 00056410  7C 00 32 14 */	add r0, r0, r6
/* 8005A7B4 00056414  7C 03 39 2E */	stwx r0, r3, r7
lbl_8005A7B8:
/* 8005A7B8 00056418  39 08 00 01 */	addi r8, r8, 1
/* 8005A7BC 0005641C  55 07 13 BA */	rlwinm r7, r8, 2, 0xe, 0x1d
/* 8005A7C0 00056420  7C C4 38 2E */	lwzx r6, r4, r7
/* 8005A7C4 00056424  2C 06 00 00 */	cmpwi r6, 0
/* 8005A7C8 00056428  41 82 00 10 */	beq lbl_8005A7D8
/* 8005A7CC 0005642C  80 05 79 68 */	lwz r0, 0x7968(r5)
/* 8005A7D0 00056430  7C 00 32 14 */	add r0, r0, r6
/* 8005A7D4 00056434  7C 03 39 2E */	stwx r0, r3, r7
lbl_8005A7D8:
/* 8005A7D8 00056438  39 08 00 01 */	addi r8, r8, 1
/* 8005A7DC 0005643C  42 00 FF 60 */	bdnz lbl_8005A73C
/* 8005A7E0 00056440  3E E0 80 47 */	lis r23, lbl_80477968@ha
/* 8005A7E4 00056444  3F A0 80 41 */	lis r29, lbl_8040B0E0@ha
/* 8005A7E8 00056448  3F C0 80 40 */	lis r30, lbl_803FB8E4@ha
/* 8005A7EC 0005644C  3F E0 80 40 */	lis r31, lbl_803FB8D0@ha
/* 8005A7F0 00056450  3B BD B0 E0 */	addi r29, r29, lbl_8040B0E0@l
/* 8005A7F4 00056454  3A F7 79 68 */	addi r23, r23, lbl_80477968@l
/* 8005A7F8 00056458  3B DE B8 E4 */	addi r30, r30, lbl_803FB8E4@l
/* 8005A7FC 0005645C  3B FF B8 D0 */	addi r31, r31, lbl_803FB8D0@l
/* 8005A800 00056460  3B 60 00 00 */	li r27, 0
lbl_8005A804:
/* 8005A804 00056464  57 7C 13 BA */	rlwinm r28, r27, 2, 0xe, 0x1d
/* 8005A808 00056468  7C 17 E0 2E */	lwzx r0, r23, r28
/* 8005A80C 0005646C  2C 00 00 00 */	cmpwi r0, 0
/* 8005A810 00056470  41 82 01 30 */	beq lbl_8005A940
/* 8005A814 00056474  38 60 00 00 */	li r3, 0
/* 8005A818 00056478  4B FF E2 F9 */	bl func_80058B10
/* 8005A81C 0005647C  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8005A820 00056480  57 60 04 3E */	clrlwi r0, r27, 0x10
/* 8005A824 00056484  1C 63 01 40 */	mulli r3, r3, 0x140
/* 8005A828 00056488  7C 1E 00 AE */	lbzx r0, r30, r0
/* 8005A82C 0005648C  2C 00 00 00 */	cmpwi r0, 0
/* 8005A830 00056490  7C 1C 1A 14 */	add r0, r28, r3
/* 8005A834 00056494  7F 5D 00 2E */	lwzx r26, r29, r0
/* 8005A838 00056498  40 82 00 0C */	bne lbl_8005A844
/* 8005A83C 0005649C  3B 20 00 0A */	li r25, 0xa
/* 8005A840 000564A0  48 00 00 14 */	b lbl_8005A854
lbl_8005A844:
/* 8005A844 000564A4  38 60 00 00 */	li r3, 0
/* 8005A848 000564A8  4B FF E2 C9 */	bl func_80058B10
/* 8005A84C 000564AC  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005A850 000564B0  7F 3F 00 2E */	lwzx r25, r31, r0
lbl_8005A854:
/* 8005A854 000564B4  7F 23 CB 78 */	mr r3, r25
/* 8005A858 000564B8  7F 44 D3 78 */	mr r4, r26
/* 8005A85C 000564BC  48 18 0D 89 */	bl func_801DB5E4
/* 8005A860 000564C0  7C 78 1B 78 */	mr r24, r3
/* 8005A864 000564C4  7F 23 CB 78 */	mr r3, r25
/* 8005A868 000564C8  7F 44 D3 78 */	mr r4, r26
/* 8005A86C 000564CC  48 18 0C 51 */	bl func_801DB4BC
/* 8005A870 000564D0  88 03 00 07 */	lbz r0, 7(r3)
/* 8005A874 000564D4  7C 64 1B 78 */	mr r4, r3
/* 8005A878 000564D8  54 00 06 3C */	rlwinm r0, r0, 0, 0x18, 0x1e
/* 8005A87C 000564DC  98 03 00 07 */	stb r0, 7(r3)
/* 8005A880 000564E0  80 A3 00 28 */	lwz r5, 0x28(r3)
/* 8005A884 000564E4  54 A0 00 01 */	rlwinm. r0, r5, 0, 0, 0
/* 8005A888 000564E8  41 82 00 0C */	beq lbl_8005A894
/* 8005A88C 000564EC  7C 03 28 50 */	subf r0, r3, r5
/* 8005A890 000564F0  90 03 00 28 */	stw r0, 0x28(r3)
lbl_8005A894:
/* 8005A894 000564F4  80 03 00 08 */	lwz r0, 8(r3)
/* 8005A898 000564F8  2C 00 00 01 */	cmpwi r0, 1
/* 8005A89C 000564FC  41 81 00 18 */	bgt lbl_8005A8B4
/* 8005A8A0 00056500  80 A3 00 48 */	lwz r5, 0x48(r3)
/* 8005A8A4 00056504  54 A0 00 01 */	rlwinm. r0, r5, 0, 0, 0
/* 8005A8A8 00056508  41 82 00 0C */	beq lbl_8005A8B4
/* 8005A8AC 0005650C  7C 03 28 50 */	subf r0, r3, r5
/* 8005A8B0 00056510  90 03 00 48 */	stw r0, 0x48(r3)
lbl_8005A8B4:
/* 8005A8B4 00056514  7C 77 E0 2E */	lwzx r3, r23, r28
/* 8005A8B8 00056518  7F 05 C3 78 */	mr r5, r24
/* 8005A8BC 0005651C  4B FA 97 45 */	bl memcpy
/* 8005A8C0 00056520  7C 77 E0 2E */	lwzx r3, r23, r28
/* 8005A8C4 00056524  48 1E 2E 09 */	bl func_8023D6CC
/* 8005A8C8 00056528  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8005A8CC 0005652C  7C 7C 1B 78 */	mr r28, r3
/* 8005A8D0 00056530  88 04 00 7A */	lbz r0, 0x7a(r4)
/* 8005A8D4 00056534  2C 00 00 00 */	cmpwi r0, 0
/* 8005A8D8 00056538  41 82 00 38 */	beq lbl_8005A910
/* 8005A8DC 0005653C  2C 03 00 00 */	cmpwi r3, 0
/* 8005A8E0 00056540  41 82 00 30 */	beq lbl_8005A910
/* 8005A8E4 00056544  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8005A8E8 00056548  2C 05 00 02 */	cmpwi r5, 2
/* 8005A8EC 0005654C  40 80 00 08 */	bge lbl_8005A8F4
/* 8005A8F0 00056550  38 A0 00 02 */	li r5, 2
lbl_8005A8F4:
/* 8005A8F4 00056554  80 9C 00 18 */	lwz r4, 0x18(r28)
/* 8005A8F8 00056558  7F 83 E3 78 */	mr r3, r28
/* 8005A8FC 0005655C  2C 04 00 02 */	cmpwi r4, 2
/* 8005A900 00056560  40 80 00 08 */	bge lbl_8005A908
/* 8005A904 00056564  38 80 00 02 */	li r4, 2
lbl_8005A908:
/* 8005A908 00056568  80 DC 00 20 */	lwz r6, 0x20(r28)
/* 8005A90C 0005656C  48 1E 3A BD */	bl func_8023E3C8
lbl_8005A910:
/* 8005A910 00056570  7F 83 E3 78 */	mr r3, r28
/* 8005A914 00056574  7F 04 C3 78 */	mr r4, r24
/* 8005A918 00056578  48 20 FD 3D */	bl DCFlushRange
/* 8005A91C 0005657C  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005A920 00056580  28 19 00 0A */	cmplwi r25, 0xa
/* 8005A924 00056584  A0 03 16 FE */	lhz r0, 0x16fe(r3)
/* 8005A928 00056588  60 00 00 02 */	ori r0, r0, 2
/* 8005A92C 0005658C  B0 03 16 FE */	sth r0, 0x16fe(r3)
/* 8005A930 00056590  40 82 00 10 */	bne lbl_8005A940
/* 8005A934 00056594  7F 23 CB 78 */	mr r3, r25
/* 8005A938 00056598  7F 44 D3 78 */	mr r4, r26
/* 8005A93C 0005659C  48 18 0D 09 */	bl func_801DB644
lbl_8005A940:
/* 8005A940 000565A0  3B 7B 00 01 */	addi r27, r27, 1
/* 8005A944 000565A4  28 1B 01 00 */	cmplwi r27, 0x100
/* 8005A948 000565A8  41 80 FE BC */	blt lbl_8005A804
/* 8005A94C 000565AC  38 60 00 00 */	li r3, 0
/* 8005A950 000565B0  4B FF E1 C1 */	bl func_80058B10
/* 8005A954 000565B4  3F 00 80 40 */	lis r24, lbl_803FB8D0@ha
/* 8005A958 000565B8  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005A95C 000565BC  3B 18 B8 D0 */	addi r24, r24, lbl_803FB8D0@l
/* 8005A960 000565C0  7C 78 00 2E */	lwzx r3, r24, r0
/* 8005A964 000565C4  48 1E EF 2D */	bl func_80249890
/* 8005A968 000565C8  38 60 00 00 */	li r3, 0
/* 8005A96C 000565CC  4B FF E1 A5 */	bl func_80058B10
/* 8005A970 000565D0  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005A974 000565D4  7C 78 00 2E */	lwzx r3, r24, r0
/* 8005A978 000565D8  48 18 0C FD */	bl func_801DB674
/* 8005A97C 000565DC  39 61 00 30 */	addi r11, r1, 0x30
/* 8005A980 000565E0  48 16 C7 E5 */	bl _restgpr_23
/* 8005A984 000565E4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005A988 000565E8  7C 08 03 A6 */	mtlr r0
/* 8005A98C 000565EC  38 21 00 30 */	addi r1, r1, 0x30
/* 8005A990 000565F0  4E 80 00 20 */	blr

.global func_8005A994
func_8005A994:
/* 8005A994 000565F4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005A998 000565F8  7C 08 02 A6 */	mflr r0
/* 8005A99C 000565FC  38 60 03 D4 */	li r3, 0x3d4
/* 8005A9A0 00056600  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005A9A4 00056604  48 18 00 8D */	bl func_801DAA30
/* 8005A9A8 00056608  2C 03 00 00 */	cmpwi r3, 0
/* 8005A9AC 0005660C  41 82 00 34 */	beq lbl_8005A9E0
/* 8005A9B0 00056610  38 80 00 01 */	li r4, 1
/* 8005A9B4 00056614  38 00 00 04 */	li r0, 4
/* 8005A9B8 00056618  90 81 00 08 */	stw r4, 8(r1)
/* 8005A9BC 0005661C  38 80 00 00 */	li r4, 0
/* 8005A9C0 00056620  38 A0 00 04 */	li r5, 4
/* 8005A9C4 00056624  38 C0 00 00 */	li r6, 0
/* 8005A9C8 00056628  90 01 00 0C */	stw r0, 0xc(r1)
/* 8005A9CC 0005662C  38 E0 00 00 */	li r7, 0
/* 8005A9D0 00056630  39 00 00 01 */	li r8, 1
/* 8005A9D4 00056634  39 20 00 05 */	li r9, 5
/* 8005A9D8 00056638  39 40 00 01 */	li r10, 1
/* 8005A9DC 0005663C  48 1E 1E 39 */	bl func_8023C814
lbl_8005A9E0:
/* 8005A9E0 00056640  80 8D 81 F0 */	lwz r4, lbl_8063D4B0-_SDA_BASE_(r13)
/* 8005A9E4 00056644  90 64 00 00 */	stw r3, 0(r4)
/* 8005A9E8 00056648  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005A9EC 0005664C  7C 08 03 A6 */	mtlr r0
/* 8005A9F0 00056650  38 21 00 10 */	addi r1, r1, 0x10
/* 8005A9F4 00056654  4E 80 00 20 */	blr

.global func_8005A9F8
func_8005A9F8:
/* 8005A9F8 00056658  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005A9FC 0005665C  7C 08 02 A6 */	mflr r0
/* 8005AA00 00056660  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005AA04 00056664  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005AA08 00056668  7C 7F 1B 78 */	mr r31, r3
/* 8005AA0C 0005666C  80 0D 98 FC */	lwz r0, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005AA10 00056670  2C 00 00 00 */	cmpwi r0, 0
/* 8005AA14 00056674  40 82 00 0C */	bne lbl_8005AA20
/* 8005AA18 00056678  48 10 4C 79 */	bl func_8015F690
/* 8005AA1C 0005667C  90 6D 98 FC */	stw r3, lbl_8063EBBC-_SDA_BASE_(r13)
lbl_8005AA20:
/* 8005AA20 00056680  2C 1F 00 41 */	cmpwi r31, 0x41
/* 8005AA24 00056684  41 82 00 D8 */	beq lbl_8005AAFC
/* 8005AA28 00056688  40 80 00 1C */	bge lbl_8005AA44
/* 8005AA2C 0005668C  2C 1F 00 1B */	cmpwi r31, 0x1b
/* 8005AA30 00056690  41 82 00 7C */	beq lbl_8005AAAC
/* 8005AA34 00056694  40 80 02 08 */	bge lbl_8005AC3C
/* 8005AA38 00056698  2C 1F 00 1A */	cmpwi r31, 0x1a
/* 8005AA3C 0005669C  40 80 00 20 */	bge lbl_8005AA5C
/* 8005AA40 000566A0  48 00 01 FC */	b lbl_8005AC3C
lbl_8005AA44:
/* 8005AA44 000566A4  2C 1F 00 44 */	cmpwi r31, 0x44
/* 8005AA48 000566A8  41 82 01 A4 */	beq lbl_8005ABEC
/* 8005AA4C 000566AC  40 80 01 F0 */	bge lbl_8005AC3C
/* 8005AA50 000566B0  2C 1F 00 43 */	cmpwi r31, 0x43
/* 8005AA54 000566B4  40 80 01 48 */	bge lbl_8005AB9C
/* 8005AA58 000566B8  48 00 00 F4 */	b lbl_8005AB4C
lbl_8005AA5C:
/* 8005AA5C 000566BC  80 6D 98 FC */	lwz r3, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005AA60 000566C0  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005AA64 000566C4  2C 00 00 01 */	cmpwi r0, 1
/* 8005AA68 000566C8  41 82 00 24 */	beq lbl_8005AA8C
/* 8005AA6C 000566CC  40 80 00 30 */	bge lbl_8005AA9C
/* 8005AA70 000566D0  2C 00 00 00 */	cmpwi r0, 0
/* 8005AA74 000566D4  40 80 00 08 */	bge lbl_8005AA7C
/* 8005AA78 000566D8  48 00 00 24 */	b lbl_8005AA9C
lbl_8005AA7C:
/* 8005AA7C 000566DC  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AA80 000566E0  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AA84 000566E4  80 63 00 68 */	lwz r3, 0x68(r3)
/* 8005AA88 000566E8  48 00 01 C4 */	b lbl_8005AC4C
lbl_8005AA8C:
/* 8005AA8C 000566EC  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AA90 000566F0  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AA94 000566F4  80 63 00 70 */	lwz r3, 0x70(r3)
/* 8005AA98 000566F8  48 00 01 B4 */	b lbl_8005AC4C
lbl_8005AA9C:
/* 8005AA9C 000566FC  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AAA0 00056700  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AAA4 00056704  80 63 00 78 */	lwz r3, 0x78(r3)
/* 8005AAA8 00056708  48 00 01 A4 */	b lbl_8005AC4C
lbl_8005AAAC:
/* 8005AAAC 0005670C  80 6D 98 FC */	lwz r3, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005AAB0 00056710  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005AAB4 00056714  2C 00 00 01 */	cmpwi r0, 1
/* 8005AAB8 00056718  41 82 00 24 */	beq lbl_8005AADC
/* 8005AABC 0005671C  40 80 00 30 */	bge lbl_8005AAEC
/* 8005AAC0 00056720  2C 00 00 00 */	cmpwi r0, 0
/* 8005AAC4 00056724  40 80 00 08 */	bge lbl_8005AACC
/* 8005AAC8 00056728  48 00 00 24 */	b lbl_8005AAEC
lbl_8005AACC:
/* 8005AACC 0005672C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AAD0 00056730  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AAD4 00056734  80 63 00 6C */	lwz r3, 0x6c(r3)
/* 8005AAD8 00056738  48 00 01 74 */	b lbl_8005AC4C
lbl_8005AADC:
/* 8005AADC 0005673C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AAE0 00056740  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AAE4 00056744  80 63 00 74 */	lwz r3, 0x74(r3)
/* 8005AAE8 00056748  48 00 01 64 */	b lbl_8005AC4C
lbl_8005AAEC:
/* 8005AAEC 0005674C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AAF0 00056750  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AAF4 00056754  80 63 00 7C */	lwz r3, 0x7c(r3)
/* 8005AAF8 00056758  48 00 01 54 */	b lbl_8005AC4C
lbl_8005AAFC:
/* 8005AAFC 0005675C  80 6D 98 FC */	lwz r3, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005AB00 00056760  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005AB04 00056764  2C 00 00 01 */	cmpwi r0, 1
/* 8005AB08 00056768  41 82 00 24 */	beq lbl_8005AB2C
/* 8005AB0C 0005676C  40 80 00 30 */	bge lbl_8005AB3C
/* 8005AB10 00056770  2C 00 00 00 */	cmpwi r0, 0
/* 8005AB14 00056774  40 80 00 08 */	bge lbl_8005AB1C
/* 8005AB18 00056778  48 00 00 24 */	b lbl_8005AB3C
lbl_8005AB1C:
/* 8005AB1C 0005677C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AB20 00056780  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AB24 00056784  80 63 01 04 */	lwz r3, 0x104(r3)
/* 8005AB28 00056788  48 00 01 24 */	b lbl_8005AC4C
lbl_8005AB2C:
/* 8005AB2C 0005678C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AB30 00056790  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AB34 00056794  80 63 01 14 */	lwz r3, 0x114(r3)
/* 8005AB38 00056798  48 00 01 14 */	b lbl_8005AC4C
lbl_8005AB3C:
/* 8005AB3C 0005679C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AB40 000567A0  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AB44 000567A4  80 63 01 24 */	lwz r3, 0x124(r3)
/* 8005AB48 000567A8  48 00 01 04 */	b lbl_8005AC4C
lbl_8005AB4C:
/* 8005AB4C 000567AC  80 6D 98 FC */	lwz r3, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005AB50 000567B0  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005AB54 000567B4  2C 00 00 01 */	cmpwi r0, 1
/* 8005AB58 000567B8  41 82 00 24 */	beq lbl_8005AB7C
/* 8005AB5C 000567BC  40 80 00 30 */	bge lbl_8005AB8C
/* 8005AB60 000567C0  2C 00 00 00 */	cmpwi r0, 0
/* 8005AB64 000567C4  40 80 00 08 */	bge lbl_8005AB6C
/* 8005AB68 000567C8  48 00 00 24 */	b lbl_8005AB8C
lbl_8005AB6C:
/* 8005AB6C 000567CC  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AB70 000567D0  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AB74 000567D4  80 63 01 08 */	lwz r3, 0x108(r3)
/* 8005AB78 000567D8  48 00 00 D4 */	b lbl_8005AC4C
lbl_8005AB7C:
/* 8005AB7C 000567DC  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AB80 000567E0  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AB84 000567E4  80 63 01 18 */	lwz r3, 0x118(r3)
/* 8005AB88 000567E8  48 00 00 C4 */	b lbl_8005AC4C
lbl_8005AB8C:
/* 8005AB8C 000567EC  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AB90 000567F0  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AB94 000567F4  80 63 01 28 */	lwz r3, 0x128(r3)
/* 8005AB98 000567F8  48 00 00 B4 */	b lbl_8005AC4C
lbl_8005AB9C:
/* 8005AB9C 000567FC  80 6D 98 FC */	lwz r3, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005ABA0 00056800  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005ABA4 00056804  2C 00 00 01 */	cmpwi r0, 1
/* 8005ABA8 00056808  41 82 00 24 */	beq lbl_8005ABCC
/* 8005ABAC 0005680C  40 80 00 30 */	bge lbl_8005ABDC
/* 8005ABB0 00056810  2C 00 00 00 */	cmpwi r0, 0
/* 8005ABB4 00056814  40 80 00 08 */	bge lbl_8005ABBC
/* 8005ABB8 00056818  48 00 00 24 */	b lbl_8005ABDC
lbl_8005ABBC:
/* 8005ABBC 0005681C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005ABC0 00056820  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005ABC4 00056824  80 63 01 0C */	lwz r3, 0x10c(r3)
/* 8005ABC8 00056828  48 00 00 84 */	b lbl_8005AC4C
lbl_8005ABCC:
/* 8005ABCC 0005682C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005ABD0 00056830  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005ABD4 00056834  80 63 01 1C */	lwz r3, 0x11c(r3)
/* 8005ABD8 00056838  48 00 00 74 */	b lbl_8005AC4C
lbl_8005ABDC:
/* 8005ABDC 0005683C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005ABE0 00056840  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005ABE4 00056844  80 63 01 2C */	lwz r3, 0x12c(r3)
/* 8005ABE8 00056848  48 00 00 64 */	b lbl_8005AC4C
lbl_8005ABEC:
/* 8005ABEC 0005684C  80 6D 98 FC */	lwz r3, lbl_8063EBBC-_SDA_BASE_(r13)
/* 8005ABF0 00056850  80 03 00 4C */	lwz r0, 0x4c(r3)
/* 8005ABF4 00056854  2C 00 00 01 */	cmpwi r0, 1
/* 8005ABF8 00056858  41 82 00 24 */	beq lbl_8005AC1C
/* 8005ABFC 0005685C  40 80 00 30 */	bge lbl_8005AC2C
/* 8005AC00 00056860  2C 00 00 00 */	cmpwi r0, 0
/* 8005AC04 00056864  40 80 00 08 */	bge lbl_8005AC0C
/* 8005AC08 00056868  48 00 00 24 */	b lbl_8005AC2C
lbl_8005AC0C:
/* 8005AC0C 0005686C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AC10 00056870  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AC14 00056874  80 63 01 10 */	lwz r3, 0x110(r3)
/* 8005AC18 00056878  48 00 00 34 */	b lbl_8005AC4C
lbl_8005AC1C:
/* 8005AC1C 0005687C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AC20 00056880  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AC24 00056884  80 63 01 20 */	lwz r3, 0x120(r3)
/* 8005AC28 00056888  48 00 00 24 */	b lbl_8005AC4C
lbl_8005AC2C:
/* 8005AC2C 0005688C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AC30 00056890  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AC34 00056894  80 63 01 30 */	lwz r3, 0x130(r3)
/* 8005AC38 00056898  48 00 00 14 */	b lbl_8005AC4C
lbl_8005AC3C:
/* 8005AC3C 0005689C  3C 60 80 47 */	lis r3, lbl_80477968@ha
/* 8005AC40 000568A0  57 E0 10 3A */	slwi r0, r31, 2
/* 8005AC44 000568A4  38 63 79 68 */	addi r3, r3, lbl_80477968@l
/* 8005AC48 000568A8  7C 63 00 2E */	lwzx r3, r3, r0
lbl_8005AC4C:
/* 8005AC4C 000568AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005AC50 000568B0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005AC54 000568B4  7C 08 03 A6 */	mtlr r0
/* 8005AC58 000568B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8005AC5C 000568BC  4E 80 00 20 */	blr

.global func_8005AC60
func_8005AC60:
/* 8005AC60 000568C0  48 18 08 5C */	b func_801DB4BC

.global func_8005AC64
func_8005AC64:
/* 8005AC64 000568C4  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 8005AC68 000568C8  7C 08 02 A6 */	mflr r0
/* 8005AC6C 000568CC  90 01 00 84 */	stw r0, 0x84(r1)
/* 8005AC70 000568D0  DB E1 00 70 */	stfd f31, 0x70(r1)
/* 8005AC74 000568D4  F3 E1 00 78 */	psq_st f31, 120(r1), 0, qr0
/* 8005AC78 000568D8  2C 06 00 00 */	cmpwi r6, 0
/* 8005AC7C 000568DC  93 E1 00 6C */	stw r31, 0x6c(r1)
/* 8005AC80 000568E0  7C FF 3B 78 */	mr r31, r7
/* 8005AC84 000568E4  93 C1 00 68 */	stw r30, 0x68(r1)
/* 8005AC88 000568E8  7C DE 33 78 */	mr r30, r6
/* 8005AC8C 000568EC  93 A1 00 64 */	stw r29, 0x64(r1)
/* 8005AC90 000568F0  7C 9D 23 78 */	mr r29, r4
/* 8005AC94 000568F4  93 81 00 60 */	stw r28, 0x60(r1)
/* 8005AC98 000568F8  7C 7C 1B 78 */	mr r28, r3
/* 8005AC9C 000568FC  41 82 01 00 */	beq lbl_8005AD9C
/* 8005ACA0 00056900  38 C1 00 28 */	addi r6, r1, 0x28
/* 8005ACA4 00056904  38 A0 00 06 */	li r5, 6
/* 8005ACA8 00056908  48 1F 92 35 */	bl func_80253EDC
/* 8005ACAC 0005690C  3C 00 43 30 */	lis r0, 0x4330
/* 8005ACB0 00056910  93 C1 00 4C */	stw r30, 0x4c(r1)
/* 8005ACB4 00056914  C8 62 85 D8 */	lfd f3, lbl_80640BD8-_SDA2_BASE_(r2)
/* 8005ACB8 00056918  38 60 00 19 */	li r3, 0x19
/* 8005ACBC 0005691C  90 01 00 48 */	stw r0, 0x48(r1)
/* 8005ACC0 00056920  C0 21 00 2C */	lfs f1, 0x2c(r1)
/* 8005ACC4 00056924  C8 01 00 48 */	lfd f0, 0x48(r1)
/* 8005ACC8 00056928  93 E1 00 54 */	stw r31, 0x54(r1)
/* 8005ACCC 0005692C  EC 80 18 28 */	fsubs f4, f0, f3
/* 8005ACD0 00056930  C0 01 00 28 */	lfs f0, 0x28(r1)
/* 8005ACD4 00056934  90 01 00 50 */	stw r0, 0x50(r1)
/* 8005ACD8 00056938  EC A1 00 28 */	fsubs f5, f1, f0
/* 8005ACDC 0005693C  C0 5D 00 38 */	lfs f2, 0x38(r29)
/* 8005ACE0 00056940  C8 01 00 50 */	lfd f0, 0x50(r1)
/* 8005ACE4 00056944  C0 22 85 C8 */	lfs f1, lbl_80640BC8-_SDA2_BASE_(r2)
/* 8005ACE8 00056948  EC 60 18 28 */	fsubs f3, f0, f3
/* 8005ACEC 0005694C  C0 02 85 CC */	lfs f0, lbl_80640BCC-_SDA2_BASE_(r2)
/* 8005ACF0 00056950  EF E4 18 24 */	fdivs f31, f4, f3
/* 8005ACF4 00056954  EC 65 07 F2 */	fmuls f3, f5, f31
/* 8005ACF8 00056958  EC 42 18 2A */	fadds f2, f2, f3
/* 8005ACFC 0005695C  D0 5D 00 3C */	stfs f2, 0x3c(r29)
/* 8005AD00 00056960  D0 5D 00 40 */	stfs f2, 0x40(r29)
/* 8005AD04 00056964  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8005AD08 00056968  D0 21 00 08 */	stfs f1, 8(r1)
/* 8005AD0C 0005696C  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8005AD10 00056970  D0 21 00 20 */	stfs f1, 0x20(r1)
/* 8005AD14 00056974  D0 01 00 1C */	stfs f0, 0x1c(r1)
/* 8005AD18 00056978  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8005AD1C 0005697C  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8005AD20 00056980  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 8005AD24 00056984  4B FF FC D5 */	bl func_8005A9F8
/* 8005AD28 00056988  7C 66 1B 78 */	mr r6, r3
/* 8005AD2C 0005698C  7F 83 E3 78 */	mr r3, r28
/* 8005AD30 00056990  7F A4 EB 78 */	mr r4, r29
/* 8005AD34 00056994  38 A0 00 02 */	li r5, 2
/* 8005AD38 00056998  48 1F 91 CD */	bl func_80253F04
/* 8005AD3C 0005699C  7F 83 E3 78 */	mr r3, r28
/* 8005AD40 000569A0  7F A4 EB 78 */	mr r4, r29
/* 8005AD44 000569A4  38 C1 00 08 */	addi r6, r1, 8
/* 8005AD48 000569A8  38 A0 00 01 */	li r5, 1
/* 8005AD4C 000569AC  48 1F 91 B9 */	bl func_80253F04
/* 8005AD50 000569B0  C0 02 85 D0 */	lfs f0, lbl_80640BD0-_SDA2_BASE_(r2)
/* 8005AD54 000569B4  38 00 00 00 */	li r0, 0
/* 8005AD58 000569B8  38 60 00 FF */	li r3, 0xff
/* 8005AD5C 000569BC  98 1D 00 0F */	stb r0, 0xf(r29)
/* 8005AD60 000569C0  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 8005AD64 000569C4  98 7D 00 0E */	stb r3, 0xe(r29)
/* 8005AD68 000569C8  98 1D 00 10 */	stb r0, 0x10(r29)
/* 8005AD6C 000569CC  40 81 00 10 */	ble lbl_8005AD7C
/* 8005AD70 000569D0  98 7D 00 0E */	stb r3, 0xe(r29)
/* 8005AD74 000569D4  98 7D 00 0F */	stb r3, 0xf(r29)
/* 8005AD78 000569D8  98 1D 00 10 */	stb r0, 0x10(r29)
lbl_8005AD7C:
/* 8005AD7C 000569DC  C0 02 85 D4 */	lfs f0, lbl_80640BD4-_SDA2_BASE_(r2)
/* 8005AD80 000569E0  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 8005AD84 000569E4  40 81 00 18 */	ble lbl_8005AD9C
/* 8005AD88 000569E8  38 60 00 00 */	li r3, 0
/* 8005AD8C 000569EC  38 00 00 FF */	li r0, 0xff
/* 8005AD90 000569F0  98 7D 00 0E */	stb r3, 0xe(r29)
/* 8005AD94 000569F4  98 1D 00 0F */	stb r0, 0xf(r29)
/* 8005AD98 000569F8  98 7D 00 10 */	stb r3, 0x10(r29)
lbl_8005AD9C:
/* 8005AD9C 000569FC  E3 E1 00 78 */	psq_l f31, 120(r1), 0, qr0
/* 8005ADA0 00056A00  80 01 00 84 */	lwz r0, 0x84(r1)
/* 8005ADA4 00056A04  CB E1 00 70 */	lfd f31, 0x70(r1)
/* 8005ADA8 00056A08  83 E1 00 6C */	lwz r31, 0x6c(r1)
/* 8005ADAC 00056A0C  83 C1 00 68 */	lwz r30, 0x68(r1)
/* 8005ADB0 00056A10  83 A1 00 64 */	lwz r29, 0x64(r1)
/* 8005ADB4 00056A14  83 81 00 60 */	lwz r28, 0x60(r1)
/* 8005ADB8 00056A18  7C 08 03 A6 */	mtlr r0
/* 8005ADBC 00056A1C  38 21 00 80 */	addi r1, r1, 0x80
/* 8005ADC0 00056A20  4E 80 00 20 */	blr

.global func_8005ADC4
func_8005ADC4:
/* 8005ADC4 00056A24  70 60 0F 88 */	andi. r0, r3, 0xf88
/* 8005ADC8 00056A28  41 82 00 0C */	beq lbl_8005ADD4
/* 8005ADCC 00056A2C  38 60 00 04 */	li r3, 4
/* 8005ADD0 00056A30  4B FF FC 28 */	b func_8005A9F8
lbl_8005ADD4:
/* 8005ADD4 00056A34  54 60 06 73 */	rlwinm. r0, r3, 0, 0x19, 0x19
/* 8005ADD8 00056A38  41 82 00 0C */	beq lbl_8005ADE4
/* 8005ADDC 00056A3C  38 60 00 03 */	li r3, 3
/* 8005ADE0 00056A40  4B FF FC 18 */	b func_8005A9F8
lbl_8005ADE4:
/* 8005ADE4 00056A44  54 60 06 B5 */	rlwinm. r0, r3, 0, 0x1a, 0x1a
/* 8005ADE8 00056A48  41 82 00 0C */	beq lbl_8005ADF4
/* 8005ADEC 00056A4C  38 60 00 02 */	li r3, 2
/* 8005ADF0 00056A50  4B FF FC 08 */	b func_8005A9F8
lbl_8005ADF4:
/* 8005ADF4 00056A54  54 60 06 F7 */	rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 8005ADF8 00056A58  41 82 00 0C */	beq lbl_8005AE04
/* 8005ADFC 00056A5C  38 60 00 00 */	li r3, 0
/* 8005AE00 00056A60  4B FF FB F8 */	b func_8005A9F8
lbl_8005AE04:
/* 8005AE04 00056A64  54 60 07 7F */	clrlwi. r0, r3, 0x1d
/* 8005AE08 00056A68  41 82 00 0C */	beq lbl_8005AE14
/* 8005AE0C 00056A6C  38 60 00 05 */	li r3, 5
/* 8005AE10 00056A70  4B FF FB E8 */	b func_8005A9F8
lbl_8005AE14:
/* 8005AE14 00056A74  38 60 00 00 */	li r3, 0
/* 8005AE18 00056A78  4E 80 00 20 */	blr

.global func_8005AE1C
func_8005AE1C:
/* 8005AE1C 00056A7C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005AE20 00056A80  7C 08 02 A6 */	mflr r0
/* 8005AE24 00056A84  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005AE28 00056A88  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005AE2C 00056A8C  7C 7F 1B 78 */	mr r31, r3
/* 8005AE30 00056A90  4B FF BD A5 */	bl func_80056BD4
/* 8005AE34 00056A94  2C 03 00 00 */	cmpwi r3, 0
/* 8005AE38 00056A98  41 82 00 50 */	beq lbl_8005AE88
/* 8005AE3C 00056A9C  7F E3 FB 78 */	mr r3, r31
/* 8005AE40 00056AA0  38 80 00 03 */	li r4, 3
/* 8005AE44 00056AA4  38 A0 00 00 */	li r5, 0
/* 8005AE48 00056AA8  48 38 00 B5 */	bl func_803DAEFC
/* 8005AE4C 00056AAC  2C 03 00 00 */	cmpwi r3, 0
/* 8005AE50 00056AB0  41 82 00 10 */	beq lbl_8005AE60
/* 8005AE54 00056AB4  38 60 00 2D */	li r3, 0x2d
/* 8005AE58 00056AB8  4B FF FB A1 */	bl func_8005A9F8
/* 8005AE5C 00056ABC  48 00 00 30 */	b lbl_8005AE8C
lbl_8005AE60:
/* 8005AE60 00056AC0  7F E3 FB 78 */	mr r3, r31
/* 8005AE64 00056AC4  38 80 00 9A */	li r4, 0x9a
/* 8005AE68 00056AC8  38 A0 00 00 */	li r5, 0
/* 8005AE6C 00056ACC  48 38 00 91 */	bl func_803DAEFC
/* 8005AE70 00056AD0  3C 80 80 41 */	lis r4, lbl_8040B720@ha
/* 8005AE74 00056AD4  54 60 10 3A */	slwi r0, r3, 2
/* 8005AE78 00056AD8  38 84 B7 20 */	addi r4, r4, lbl_8040B720@l
/* 8005AE7C 00056ADC  7C 64 00 2E */	lwzx r3, r4, r0
/* 8005AE80 00056AE0  4B FF FB 79 */	bl func_8005A9F8
/* 8005AE84 00056AE4  48 00 00 08 */	b lbl_8005AE8C
lbl_8005AE88:
/* 8005AE88 00056AE8  38 60 00 00 */	li r3, 0
lbl_8005AE8C:
/* 8005AE8C 00056AEC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005AE90 00056AF0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005AE94 00056AF4  7C 08 03 A6 */	mtlr r0
/* 8005AE98 00056AF8  38 21 00 10 */	addi r1, r1, 0x10
/* 8005AE9C 00056AFC  4E 80 00 20 */	blr

.global func_8005AEA0
func_8005AEA0:
/* 8005AEA0 00056B00  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8005AEA4 00056B04  7C 08 02 A6 */	mflr r0
/* 8005AEA8 00056B08  2C 07 00 00 */	cmpwi r7, 0
/* 8005AEAC 00056B0C  90 01 00 44 */	stw r0, 0x44(r1)
/* 8005AEB0 00056B10  3C 00 43 30 */	lis r0, 0x4330
/* 8005AEB4 00056B14  C0 64 00 00 */	lfs f3, 0(r4)
/* 8005AEB8 00056B18  C0 24 00 04 */	lfs f1, 4(r4)
/* 8005AEBC 00056B1C  C0 84 00 10 */	lfs f4, 0x10(r4)
/* 8005AEC0 00056B20  C0 04 00 18 */	lfs f0, 0x18(r4)
/* 8005AEC4 00056B24  EC A1 18 28 */	fsubs f5, f1, f3
/* 8005AEC8 00056B28  90 01 00 28 */	stw r0, 0x28(r1)
/* 8005AECC 00056B2C  EC C0 20 28 */	fsubs f6, f0, f4
/* 8005AED0 00056B30  90 01 00 30 */	stw r0, 0x30(r1)
/* 8005AED4 00056B34  41 82 00 30 */	beq lbl_8005AF04
/* 8005AED8 00056B38  90 A1 00 2C */	stw r5, 0x2c(r1)
/* 8005AEDC 00056B3C  C8 42 85 D8 */	lfd f2, lbl_80640BD8-_SDA2_BASE_(r2)
/* 8005AEE0 00056B40  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 8005AEE4 00056B44  90 C1 00 34 */	stw r6, 0x34(r1)
/* 8005AEE8 00056B48  EC 20 10 28 */	fsubs f1, f0, f2
/* 8005AEEC 00056B4C  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 8005AEF0 00056B50  EC A5 08 24 */	fdivs f5, f5, f1
/* 8005AEF4 00056B54  EC 00 10 28 */	fsubs f0, f0, f2
/* 8005AEF8 00056B58  EC 05 00 32 */	fmuls f0, f5, f0
/* 8005AEFC 00056B5C  EC 63 00 2A */	fadds f3, f3, f0
/* 8005AF00 00056B60  48 00 00 2C */	b lbl_8005AF2C
lbl_8005AF04:
/* 8005AF04 00056B64  90 A1 00 2C */	stw r5, 0x2c(r1)
/* 8005AF08 00056B68  C8 42 85 D8 */	lfd f2, lbl_80640BD8-_SDA2_BASE_(r2)
/* 8005AF0C 00056B6C  C8 01 00 28 */	lfd f0, 0x28(r1)
/* 8005AF10 00056B70  90 C1 00 34 */	stw r6, 0x34(r1)
/* 8005AF14 00056B74  EC 20 10 28 */	fsubs f1, f0, f2
/* 8005AF18 00056B78  C8 01 00 30 */	lfd f0, 0x30(r1)
/* 8005AF1C 00056B7C  EC C6 08 24 */	fdivs f6, f6, f1
/* 8005AF20 00056B80  EC 00 10 28 */	fsubs f0, f0, f2
/* 8005AF24 00056B84  EC 06 00 32 */	fmuls f0, f6, f0
/* 8005AF28 00056B88  EC 84 00 2A */	fadds f4, f4, f0
lbl_8005AF2C:
/* 8005AF2C 00056B8C  EC 23 28 2A */	fadds f1, f3, f5
/* 8005AF30 00056B90  38 A0 FF 00 */	li r5, -256
/* 8005AF34 00056B94  EC 04 30 2A */	fadds f0, f4, f6
/* 8005AF38 00056B98  D0 61 00 14 */	stfs f3, 0x14(r1)
/* 8005AF3C 00056B9C  38 81 00 08 */	addi r4, r1, 8
/* 8005AF40 00056BA0  51 05 06 3E */	rlwimi r5, r8, 0, 0x18, 0x1f
/* 8005AF44 00056BA4  D0 61 00 08 */	stfs f3, 8(r1)
/* 8005AF48 00056BA8  38 C0 00 00 */	li r6, 0
/* 8005AF4C 00056BAC  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8005AF50 00056BB0  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 8005AF54 00056BB4  D0 81 00 1C */	stfs f4, 0x1c(r1)
/* 8005AF58 00056BB8  D0 81 00 18 */	stfs f4, 0x18(r1)
/* 8005AF5C 00056BBC  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8005AF60 00056BC0  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 8005AF64 00056BC4  48 00 00 15 */	bl func_8005AF78
/* 8005AF68 00056BC8  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8005AF6C 00056BCC  7C 08 03 A6 */	mtlr r0
/* 8005AF70 00056BD0  38 21 00 40 */	addi r1, r1, 0x40
/* 8005AF74 00056BD4  4E 80 00 20 */	blr

.global func_8005AF78
func_8005AF78:
/* 8005AF78 00056BD8  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8005AF7C 00056BDC  7C 08 02 A6 */	mflr r0
/* 8005AF80 00056BE0  2C 03 00 00 */	cmpwi r3, 0
/* 8005AF84 00056BE4  90 01 00 44 */	stw r0, 0x44(r1)
/* 8005AF88 00056BE8  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8005AF8C 00056BEC  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8005AF90 00056BF0  7C 9E 23 78 */	mr r30, r4
/* 8005AF94 00056BF4  41 82 02 E8 */	beq lbl_8005B27C
/* 8005AF98 00056BF8  2C 06 00 00 */	cmpwi r6, 0
/* 8005AF9C 00056BFC  40 82 00 30 */	bne lbl_8005AFCC
/* 8005AFA0 00056C00  C0 22 85 C8 */	lfs f1, lbl_80640BC8-_SDA2_BASE_(r2)
/* 8005AFA4 00056C04  C0 02 85 CC */	lfs f0, lbl_80640BCC-_SDA2_BASE_(r2)
/* 8005AFA8 00056C08  D0 21 00 28 */	stfs f1, 0x28(r1)
/* 8005AFAC 00056C0C  D0 21 00 10 */	stfs f1, 0x10(r1)
/* 8005AFB0 00056C10  D0 01 00 20 */	stfs f0, 0x20(r1)
/* 8005AFB4 00056C14  D0 01 00 18 */	stfs f0, 0x18(r1)
/* 8005AFB8 00056C18  D0 21 00 1C */	stfs f1, 0x1c(r1)
/* 8005AFBC 00056C1C  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8005AFC0 00056C20  D0 01 00 2C */	stfs f0, 0x2c(r1)
/* 8005AFC4 00056C24  D0 01 00 24 */	stfs f0, 0x24(r1)
/* 8005AFC8 00056C28  48 00 00 44 */	b lbl_8005B00C
lbl_8005AFCC:
/* 8005AFCC 00056C2C  C0 E6 00 00 */	lfs f7, 0(r6)
/* 8005AFD0 00056C30  C0 C6 00 08 */	lfs f6, 8(r6)
/* 8005AFD4 00056C34  C0 A6 00 10 */	lfs f5, 0x10(r6)
/* 8005AFD8 00056C38  C0 86 00 18 */	lfs f4, 0x18(r6)
/* 8005AFDC 00056C3C  C0 66 00 04 */	lfs f3, 4(r6)
/* 8005AFE0 00056C40  C0 46 00 0C */	lfs f2, 0xc(r6)
/* 8005AFE4 00056C44  C0 26 00 14 */	lfs f1, 0x14(r6)
/* 8005AFE8 00056C48  C0 06 00 1C */	lfs f0, 0x1c(r6)
/* 8005AFEC 00056C4C  D0 E1 00 10 */	stfs f7, 0x10(r1)
/* 8005AFF0 00056C50  D0 C1 00 18 */	stfs f6, 0x18(r1)
/* 8005AFF4 00056C54  D0 A1 00 20 */	stfs f5, 0x20(r1)
/* 8005AFF8 00056C58  D0 81 00 28 */	stfs f4, 0x28(r1)
/* 8005AFFC 00056C5C  D0 61 00 14 */	stfs f3, 0x14(r1)
/* 8005B000 00056C60  D0 41 00 1C */	stfs f2, 0x1c(r1)
/* 8005B004 00056C64  D0 21 00 24 */	stfs f1, 0x24(r1)
/* 8005B008 00056C68  D0 01 00 2C */	stfs f0, 0x2c(r1)
lbl_8005B00C:
/* 8005B00C 00056C6C  81 0D A3 D8 */	lwz r8, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B010 00056C70  54 A0 46 3E */	srwi r0, r5, 0x18
/* 8005B014 00056C74  54 A7 86 3E */	rlwinm r7, r5, 0x10, 0x18, 0x1f
/* 8005B018 00056C78  54 A6 C6 3E */	rlwinm r6, r5, 0x18, 0x18, 0x1f
/* 8005B01C 00056C7C  80 88 16 38 */	lwz r4, 0x1638(r8)
/* 8005B020 00056C80  98 01 00 08 */	stb r0, 8(r1)
/* 8005B024 00056C84  80 04 15 3C */	lwz r0, 0x153c(r4)
/* 8005B028 00056C88  98 E1 00 09 */	stb r7, 9(r1)
/* 8005B02C 00056C8C  7C 00 18 40 */	cmplw r0, r3
/* 8005B030 00056C90  98 C1 00 0A */	stb r6, 0xa(r1)
/* 8005B034 00056C94  98 A1 00 0B */	stb r5, 0xb(r1)
/* 8005B038 00056C98  40 82 00 14 */	bne lbl_8005B04C
/* 8005B03C 00056C9C  88 03 00 07 */	lbz r0, 7(r3)
/* 8005B040 00056CA0  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 8005B044 00056CA4  2C 00 00 01 */	cmpwi r0, 1
/* 8005B048 00056CA8  40 82 00 1C */	bne lbl_8005B064
lbl_8005B04C:
/* 8005B04C 00056CAC  80 88 16 38 */	lwz r4, 0x1638(r8)
/* 8005B050 00056CB0  90 64 15 3C */	stw r3, 0x153c(r4)
/* 8005B054 00056CB4  80 68 16 38 */	lwz r3, 0x1638(r8)
/* 8005B058 00056CB8  80 03 15 38 */	lwz r0, 0x1538(r3)
/* 8005B05C 00056CBC  60 00 00 01 */	ori r0, r0, 1
/* 8005B060 00056CC0  90 03 15 38 */	stw r0, 0x1538(r3)
lbl_8005B064:
/* 8005B064 00056CC4  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B068 00056CC8  38 A0 00 02 */	li r5, 2
/* 8005B06C 00056CCC  3B E0 00 01 */	li r31, 1
/* 8005B070 00056CD0  38 80 00 04 */	li r4, 4
/* 8005B074 00056CD4  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 8005B078 00056CD8  38 00 00 05 */	li r0, 5
/* 8005B07C 00056CDC  90 A3 01 84 */	stw r5, 0x184(r3)
/* 8005B080 00056CE0  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 8005B084 00056CE4  80 65 00 10 */	lwz r3, 0x10(r5)
/* 8005B088 00056CE8  60 63 00 02 */	ori r3, r3, 2
/* 8005B08C 00056CEC  90 65 00 10 */	stw r3, 0x10(r5)
/* 8005B090 00056CF0  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 8005B094 00056CF4  80 65 00 00 */	lwz r3, 0(r5)
/* 8005B098 00056CF8  60 63 00 02 */	ori r3, r3, 2
/* 8005B09C 00056CFC  90 65 00 00 */	stw r3, 0(r5)
/* 8005B0A0 00056D00  80 AD A3 D8 */	lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B0A4 00056D04  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005B0A8 00056D08  93 E3 0A 24 */	stw r31, 0xa24(r3)
/* 8005B0AC 00056D0C  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005B0B0 00056D10  90 83 0A 28 */	stw r4, 0xa28(r3)
/* 8005B0B4 00056D14  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005B0B8 00056D18  90 03 0A 2C */	stw r0, 0xa2c(r3)
/* 8005B0BC 00056D1C  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005B0C0 00056D20  90 03 0A 30 */	stw r0, 0xa30(r3)
/* 8005B0C4 00056D24  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005B0C8 00056D28  80 03 00 64 */	lwz r0, 0x64(r3)
/* 8005B0CC 00056D2C  60 00 00 01 */	ori r0, r0, 1
/* 8005B0D0 00056D30  90 03 00 64 */	stw r0, 0x64(r3)
/* 8005B0D4 00056D34  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 8005B0D8 00056D38  80 03 00 00 */	lwz r0, 0(r3)
/* 8005B0DC 00056D3C  60 00 00 40 */	ori r0, r0, 0x40
/* 8005B0E0 00056D40  90 03 00 00 */	stw r0, 0(r3)
/* 8005B0E4 00056D44  80 8D 81 F0 */	lwz r4, lbl_8063D4B0-_SDA_BASE_(r13)
/* 8005B0E8 00056D48  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B0EC 00056D4C  80 84 00 00 */	lwz r4, 0(r4)
/* 8005B0F0 00056D50  48 1D CF CD */	bl func_802380BC
/* 8005B0F4 00056D54  81 2D A3 D8 */	lwz r9, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B0F8 00056D58  39 00 00 00 */	li r8, 0
/* 8005B0FC 00056D5C  38 C0 00 07 */	li r6, 7
/* 8005B100 00056D60  38 A0 00 03 */	li r5, 3
/* 8005B104 00056D64  80 69 16 38 */	lwz r3, 0x1638(r9)
/* 8005B108 00056D68  38 00 00 80 */	li r0, 0x80
/* 8005B10C 00056D6C  38 80 00 04 */	li r4, 4
/* 8005B110 00056D70  9B E3 0A 36 */	stb r31, 0xa36(r3)
/* 8005B114 00056D74  80 69 16 38 */	lwz r3, 0x1638(r9)
/* 8005B118 00056D78  9B E3 0A 37 */	stb r31, 0xa37(r3)
/* 8005B11C 00056D7C  80 69 16 38 */	lwz r3, 0x1638(r9)
/* 8005B120 00056D80  99 03 0A 38 */	stb r8, 0xa38(r3)
/* 8005B124 00056D84  80 E9 16 38 */	lwz r7, 0x1638(r9)
/* 8005B128 00056D88  80 67 00 64 */	lwz r3, 0x64(r7)
/* 8005B12C 00056D8C  60 63 00 04 */	ori r3, r3, 4
/* 8005B130 00056D90  90 67 00 64 */	stw r3, 0x64(r7)
/* 8005B134 00056D94  80 E9 16 38 */	lwz r7, 0x1638(r9)
/* 8005B138 00056D98  80 67 00 00 */	lwz r3, 0(r7)
/* 8005B13C 00056D9C  60 63 00 40 */	ori r3, r3, 0x40
/* 8005B140 00056DA0  90 67 00 00 */	stw r3, 0(r7)
/* 8005B144 00056DA4  80 ED A3 D8 */	lwz r7, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B148 00056DA8  80 67 16 38 */	lwz r3, 0x1638(r7)
/* 8005B14C 00056DAC  90 C3 0A 44 */	stw r6, 0xa44(r3)
/* 8005B150 00056DB0  80 67 16 38 */	lwz r3, 0x1638(r7)
/* 8005B154 00056DB4  99 03 0A 50 */	stb r8, 0xa50(r3)
/* 8005B158 00056DB8  80 67 16 38 */	lwz r3, 0x1638(r7)
/* 8005B15C 00056DBC  91 03 0A 48 */	stw r8, 0xa48(r3)
/* 8005B160 00056DC0  80 67 16 38 */	lwz r3, 0x1638(r7)
/* 8005B164 00056DC4  90 C3 0A 4C */	stw r6, 0xa4c(r3)
/* 8005B168 00056DC8  80 67 16 38 */	lwz r3, 0x1638(r7)
/* 8005B16C 00056DCC  99 03 0A 51 */	stb r8, 0xa51(r3)
/* 8005B170 00056DD0  80 67 16 38 */	lwz r3, 0x1638(r7)
/* 8005B174 00056DD4  99 03 0A 52 */	stb r8, 0xa52(r3)
/* 8005B178 00056DD8  80 C7 16 38 */	lwz r6, 0x1638(r7)
/* 8005B17C 00056DDC  80 66 00 64 */	lwz r3, 0x64(r6)
/* 8005B180 00056DE0  60 63 00 10 */	ori r3, r3, 0x10
/* 8005B184 00056DE4  90 66 00 64 */	stw r3, 0x64(r6)
/* 8005B188 00056DE8  80 C7 16 38 */	lwz r6, 0x1638(r7)
/* 8005B18C 00056DEC  80 66 00 00 */	lwz r3, 0(r6)
/* 8005B190 00056DF0  60 63 00 40 */	ori r3, r3, 0x40
/* 8005B194 00056DF4  90 66 00 00 */	stw r3, 0(r6)
/* 8005B198 00056DF8  80 CD A3 D8 */	lwz r6, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B19C 00056DFC  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 8005B1A0 00056E00  99 03 0A 3C */	stb r8, 0xa3c(r3)
/* 8005B1A4 00056E04  80 66 16 38 */	lwz r3, 0x1638(r6)
/* 8005B1A8 00056E08  90 A3 0A 40 */	stw r5, 0xa40(r3)
/* 8005B1AC 00056E0C  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 8005B1B0 00056E10  80 65 00 64 */	lwz r3, 0x64(r5)
/* 8005B1B4 00056E14  60 63 00 08 */	ori r3, r3, 8
/* 8005B1B8 00056E18  90 65 00 64 */	stw r3, 0x64(r5)
/* 8005B1BC 00056E1C  80 A6 16 38 */	lwz r5, 0x1638(r6)
/* 8005B1C0 00056E20  80 65 00 00 */	lwz r3, 0(r5)
/* 8005B1C4 00056E24  60 63 00 40 */	ori r3, r3, 0x40
/* 8005B1C8 00056E28  90 65 00 00 */	stw r3, 0(r5)
/* 8005B1CC 00056E2C  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B1D0 00056E30  90 03 17 38 */	stw r0, 0x1738(r3)
/* 8005B1D4 00056E34  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B1D8 00056E38  48 1D 83 55 */	bl func_8023352C
/* 8005B1DC 00056E3C  C0 3E 00 10 */	lfs f1, 0x10(r30)
/* 8005B1E0 00056E40  3C 60 CC 01 */	lis r3, 0xCC008000@ha
/* 8005B1E4 00056E44  C0 1E 00 00 */	lfs f0, 0(r30)
/* 8005B1E8 00056E48  80 01 00 08 */	lwz r0, 8(r1)
/* 8005B1EC 00056E4C  D0 03 80 00 */	stfs f0, 0xCC008000@l(r3)
/* 8005B1F0 00056E50  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8005B1F4 00056E54  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 8005B1F8 00056E58  C0 21 00 14 */	lfs f1, 0x14(r1)
/* 8005B1FC 00056E5C  90 03 80 00 */	stw r0, -0x8000(r3)
/* 8005B200 00056E60  C0 41 00 18 */	lfs f2, 0x18(r1)
/* 8005B204 00056E64  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 8005B208 00056E68  C0 61 00 1C */	lfs f3, 0x1c(r1)
/* 8005B20C 00056E6C  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 8005B210 00056E70  C0 81 00 20 */	lfs f4, 0x20(r1)
/* 8005B214 00056E74  C0 3E 00 14 */	lfs f1, 0x14(r30)
/* 8005B218 00056E78  C0 1E 00 04 */	lfs f0, 4(r30)
/* 8005B21C 00056E7C  C0 A1 00 24 */	lfs f5, 0x24(r1)
/* 8005B220 00056E80  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 8005B224 00056E84  C0 C1 00 28 */	lfs f6, 0x28(r1)
/* 8005B228 00056E88  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 8005B22C 00056E8C  C0 E1 00 2C */	lfs f7, 0x2c(r1)
/* 8005B230 00056E90  90 03 80 00 */	stw r0, -0x8000(r3)
/* 8005B234 00056E94  D0 43 80 00 */	stfs f2, -0x8000(r3)
/* 8005B238 00056E98  D0 63 80 00 */	stfs f3, -0x8000(r3)
/* 8005B23C 00056E9C  C0 3E 00 18 */	lfs f1, 0x18(r30)
/* 8005B240 00056EA0  C0 1E 00 08 */	lfs f0, 8(r30)
/* 8005B244 00056EA4  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 8005B248 00056EA8  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 8005B24C 00056EAC  90 03 80 00 */	stw r0, -0x8000(r3)
/* 8005B250 00056EB0  D0 83 80 00 */	stfs f4, -0x8000(r3)
/* 8005B254 00056EB4  D0 A3 80 00 */	stfs f5, -0x8000(r3)
/* 8005B258 00056EB8  C0 3E 00 1C */	lfs f1, 0x1c(r30)
/* 8005B25C 00056EBC  C0 1E 00 0C */	lfs f0, 0xc(r30)
/* 8005B260 00056EC0  D0 03 80 00 */	stfs f0, -0x8000(r3)
/* 8005B264 00056EC4  D0 23 80 00 */	stfs f1, -0x8000(r3)
/* 8005B268 00056EC8  90 03 80 00 */	stw r0, -0x8000(r3)
/* 8005B26C 00056ECC  D0 C3 80 00 */	stfs f6, -0x8000(r3)
/* 8005B270 00056ED0  D0 E3 80 00 */	stfs f7, -0x8000(r3)
/* 8005B274 00056ED4  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005B278 00056ED8  48 1D 83 09 */	bl func_80233580
lbl_8005B27C:
/* 8005B27C 00056EDC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8005B280 00056EE0  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8005B284 00056EE4  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 8005B288 00056EE8  7C 08 03 A6 */	mtlr r0
/* 8005B28C 00056EEC  38 21 00 40 */	addi r1, r1, 0x40
/* 8005B290 00056EF0  4E 80 00 20 */	blr

.global func_8005B294
func_8005B294:
/* 8005B294 00056EF4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005B298 00056EF8  7C 08 02 A6 */	mflr r0
/* 8005B29C 00056EFC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005B2A0 00056F00  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8005B2A4 00056F04  7C BF 2B 78 */	mr r31, r5
/* 8005B2A8 00056F08  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8005B2AC 00056F0C  7C 9E 23 78 */	mr r30, r4
/* 8005B2B0 00056F10  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8005B2B4 00056F14  7C 7D 1B 78 */	mr r29, r3
/* 8005B2B8 00056F18  7F E3 FB 78 */	mr r3, r31
/* 8005B2BC 00056F1C  4B FF B9 19 */	bl func_80056BD4
/* 8005B2C0 00056F20  2C 03 00 00 */	cmpwi r3, 0
/* 8005B2C4 00056F24  41 82 00 48 */	beq lbl_8005B30C
/* 8005B2C8 00056F28  7F E3 FB 78 */	mr r3, r31
/* 8005B2CC 00056F2C  38 80 00 06 */	li r4, 6
/* 8005B2D0 00056F30  38 A0 00 00 */	li r5, 0
/* 8005B2D4 00056F34  48 37 FC 29 */	bl func_803DAEFC
/* 8005B2D8 00056F38  2C 03 00 00 */	cmpwi r3, 0
/* 8005B2DC 00056F3C  41 82 00 30 */	beq lbl_8005B30C
/* 8005B2E0 00056F40  7F E3 FB 78 */	mr r3, r31
/* 8005B2E4 00056F44  4B FF BB 49 */	bl func_80056E2C
/* 8005B2E8 00056F48  2C 03 00 00 */	cmpwi r3, 0
/* 8005B2EC 00056F4C  40 82 00 20 */	bne lbl_8005B30C
/* 8005B2F0 00056F50  38 60 00 18 */	li r3, 0x18
/* 8005B2F4 00056F54  4B FF F7 05 */	bl func_8005A9F8
/* 8005B2F8 00056F58  7C 66 1B 78 */	mr r6, r3
/* 8005B2FC 00056F5C  7F A3 EB 78 */	mr r3, r29
/* 8005B300 00056F60  7F C4 F3 78 */	mr r4, r30
/* 8005B304 00056F64  38 A0 00 01 */	li r5, 1
/* 8005B308 00056F68  48 1F 8B AD */	bl func_80253EB4
lbl_8005B30C:
/* 8005B30C 00056F6C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005B310 00056F70  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8005B314 00056F74  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8005B318 00056F78  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8005B31C 00056F7C  7C 08 03 A6 */	mtlr r0
/* 8005B320 00056F80  38 21 00 20 */	addi r1, r1, 0x20
/* 8005B324 00056F84  4E 80 00 20 */	blr

.global func_8005B328
func_8005B328:
/* 8005B328 00056F88  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8005B32C 00056F8C  7C 08 02 A6 */	mflr r0
/* 8005B330 00056F90  90 01 00 44 */	stw r0, 0x44(r1)
/* 8005B334 00056F94  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8005B338 00056F98  7C DF 33 78 */	mr r31, r6
/* 8005B33C 00056F9C  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8005B340 00056FA0  7C BE 2B 78 */	mr r30, r5
/* 8005B344 00056FA4  93 A1 00 34 */	stw r29, 0x34(r1)
/* 8005B348 00056FA8  7C 9D 23 78 */	mr r29, r4
/* 8005B34C 00056FAC  93 81 00 30 */	stw r28, 0x30(r1)
/* 8005B350 00056FB0  7C 7C 1B 78 */	mr r28, r3
/* 8005B354 00056FB4  7F C3 F3 78 */	mr r3, r30
/* 8005B358 00056FB8  4B FF B8 7D */	bl func_80056BD4
/* 8005B35C 00056FBC  2C 03 00 00 */	cmpwi r3, 0
/* 8005B360 00056FC0  41 82 00 3C */	beq lbl_8005B39C
/* 8005B364 00056FC4  7F C3 F3 78 */	mr r3, r30
/* 8005B368 00056FC8  7F E4 FB 78 */	mr r4, r31
/* 8005B36C 00056FCC  38 A1 00 08 */	addi r5, r1, 8
/* 8005B370 00056FD0  48 00 17 B5 */	bl func_8005CB24
/* 8005B374 00056FD4  7C 66 1B 78 */	mr r6, r3
/* 8005B378 00056FD8  7F 83 E3 78 */	mr r3, r28
/* 8005B37C 00056FDC  7F A4 EB 78 */	mr r4, r29
/* 8005B380 00056FE0  38 A0 00 02 */	li r5, 2
/* 8005B384 00056FE4  48 1F 8B 81 */	bl func_80253F04
/* 8005B388 00056FE8  7F 83 E3 78 */	mr r3, r28
/* 8005B38C 00056FEC  7F A4 EB 78 */	mr r4, r29
/* 8005B390 00056FF0  38 C1 00 08 */	addi r6, r1, 8
/* 8005B394 00056FF4  38 A0 00 01 */	li r5, 1
/* 8005B398 00056FF8  48 1F 8B 6D */	bl func_80253F04
lbl_8005B39C:
/* 8005B39C 00056FFC  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8005B3A0 00057000  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8005B3A4 00057004  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 8005B3A8 00057008  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 8005B3AC 0005700C  83 81 00 30 */	lwz r28, 0x30(r1)
/* 8005B3B0 00057010  7C 08 03 A6 */	mtlr r0
/* 8005B3B4 00057014  38 21 00 40 */	addi r1, r1, 0x40
/* 8005B3B8 00057018  4E 80 00 20 */	blr

.global func_8005B3BC
func_8005B3BC:
/* 8005B3BC 0005701C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005B3C0 00057020  7C 08 02 A6 */	mflr r0
/* 8005B3C4 00057024  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005B3C8 00057028  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8005B3CC 0005702C  7C BF 2B 78 */	mr r31, r5
/* 8005B3D0 00057030  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8005B3D4 00057034  7C 9E 23 78 */	mr r30, r4
/* 8005B3D8 00057038  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8005B3DC 0005703C  7C 7D 1B 78 */	mr r29, r3
/* 8005B3E0 00057040  7F E3 FB 78 */	mr r3, r31
/* 8005B3E4 00057044  4B FF B8 69 */	bl func_80056C4C
/* 8005B3E8 00057048  2C 03 00 00 */	cmpwi r3, 0
/* 8005B3EC 0005704C  41 82 00 7C */	beq lbl_8005B468
/* 8005B3F0 00057050  7F E3 FB 78 */	mr r3, r31
/* 8005B3F4 00057054  38 80 00 A2 */	li r4, 0xa2
/* 8005B3F8 00057058  38 A0 00 00 */	li r5, 0
/* 8005B3FC 0005705C  48 38 25 E1 */	bl func_803DD9DC
/* 8005B400 00057060  2C 03 00 00 */	cmpwi r3, 0
/* 8005B404 00057064  40 82 00 24 */	bne lbl_8005B428
/* 8005B408 00057068  38 60 00 01 */	li r3, 1
/* 8005B40C 0005706C  4B FF F5 ED */	bl func_8005A9F8
/* 8005B410 00057070  7C 66 1B 78 */	mr r6, r3
/* 8005B414 00057074  7F A3 EB 78 */	mr r3, r29
/* 8005B418 00057078  7F C4 F3 78 */	mr r4, r30
/* 8005B41C 0005707C  38 A0 00 01 */	li r5, 1
/* 8005B420 00057080  48 1F 8A 95 */	bl func_80253EB4
/* 8005B424 00057084  48 00 00 44 */	b lbl_8005B468
lbl_8005B428:
/* 8005B428 00057088  7F E3 FB 78 */	mr r3, r31
/* 8005B42C 0005708C  38 80 00 9F */	li r4, 0x9f
/* 8005B430 00057090  38 A0 00 00 */	li r5, 0
/* 8005B434 00057094  48 38 25 A9 */	bl func_803DD9DC
/* 8005B438 00057098  2C 03 00 00 */	cmpwi r3, 0
/* 8005B43C 0005709C  41 82 00 2C */	beq lbl_8005B468
/* 8005B440 000570A0  7F E3 FB 78 */	mr r3, r31
/* 8005B444 000570A4  38 80 00 9F */	li r4, 0x9f
/* 8005B448 000570A8  38 A0 00 00 */	li r5, 0
/* 8005B44C 000570AC  48 38 25 91 */	bl func_803DD9DC
/* 8005B450 000570B0  4B FF F9 75 */	bl func_8005ADC4
/* 8005B454 000570B4  7C 66 1B 78 */	mr r6, r3
/* 8005B458 000570B8  7F A3 EB 78 */	mr r3, r29
/* 8005B45C 000570BC  7F C4 F3 78 */	mr r4, r30
/* 8005B460 000570C0  38 A0 00 01 */	li r5, 1
/* 8005B464 000570C4  48 1F 8A 51 */	bl func_80253EB4
lbl_8005B468:
/* 8005B468 000570C8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005B46C 000570CC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8005B470 000570D0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8005B474 000570D4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8005B478 000570D8  7C 08 03 A6 */	mtlr r0
/* 8005B47C 000570DC  38 21 00 20 */	addi r1, r1, 0x20
/* 8005B480 000570E0  4E 80 00 20 */	blr

.global func_8005B484
func_8005B484:
/* 8005B484 000570E4  38 A0 00 01 */	li r5, 1
/* 8005B488 000570E8  38 6D 98 F0 */	addi r3, r13, lbl_8063EBB0-_SDA_BASE_
/* 8005B48C 000570EC  38 80 00 04 */	li r4, 4
/* 8005B490 000570F0  38 00 00 00 */	li r0, 0
/* 8005B494 000570F4  98 AD 98 F0 */	stb r5, lbl_8063EBB0-_SDA_BASE_(r13)
/* 8005B498 000570F8  B0 83 00 02 */	sth r4, 2(r3)
/* 8005B49C 000570FC  98 03 00 04 */	stb r0, 4(r3)
/* 8005B4A0 00057100  4E 80 00 20 */	blr
lbl_8005B4A4:
/* 8005B4A4 00057104  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005B4A8 00057108  7C 08 02 A6 */	mflr r0
/* 8005B4AC 0005710C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005B4B0 00057110  39 61 00 20 */	addi r11, r1, 0x20
/* 8005B4B4 00057114  48 16 BC 75 */	bl _savegpr_27
/* 8005B4B8 00057118  80 03 00 24 */	lwz r0, 0x24(r3)
/* 8005B4BC 0005711C  7C 7B 1B 78 */	mr r27, r3
/* 8005B4C0 00057120  90 83 00 28 */	stw r4, 0x28(r3)
/* 8005B4C4 00057124  7C 9C 23 78 */	mr r28, r4
/* 8005B4C8 00057128  2C 00 00 00 */	cmpwi r0, 0
/* 8005B4CC 0005712C  40 82 00 1C */	bne lbl_8005B4E8
/* 8005B4D0 00057130  1C 84 00 28 */	mulli r4, r4, 0x28
/* 8005B4D4 00057134  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8005B4D8 00057138  38 04 00 1F */	addi r0, r4, 0x1f
/* 8005B4DC 0005713C  54 04 00 34 */	rlwinm r4, r0, 0, 0, 0x1a
/* 8005B4E0 00057140  48 17 F7 B5 */	bl func_801DAC94
/* 8005B4E4 00057144  90 7B 00 24 */	stw r3, 0x24(r27)
lbl_8005B4E8:
/* 8005B4E8 00057148  1C BC 00 28 */	mulli r5, r28, 0x28
/* 8005B4EC 0005714C  80 7B 00 24 */	lwz r3, 0x24(r27)
/* 8005B4F0 00057150  38 80 00 00 */	li r4, 0
/* 8005B4F4 00057154  4B FA 8C 11 */	bl memset
/* 8005B4F8 00057158  1C 9C 26 80 */	mulli r4, r28, 0x2680
/* 8005B4FC 0005715C  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8005B500 00057160  38 A0 00 20 */	li r5, 0x20
/* 8005B504 00057164  48 17 F8 05 */	bl func_801DAD08
/* 8005B508 00057168  7C 7D 1B 78 */	mr r29, r3
/* 8005B50C 0005716C  3B C0 00 00 */	li r30, 0
/* 8005B510 00057170  3B E0 00 00 */	li r31, 0
/* 8005B514 00057174  48 00 00 40 */	b lbl_8005B554
lbl_8005B518:
/* 8005B518 00057178  80 1B 00 24 */	lwz r0, 0x24(r27)
/* 8005B51C 0005717C  7C 60 FA 14 */	add r3, r0, r31
/* 8005B520 00057180  80 03 00 08 */	lwz r0, 8(r3)
/* 8005B524 00057184  2C 00 00 00 */	cmpwi r0, 0
/* 8005B528 00057188  40 82 00 0C */	bne lbl_8005B534
/* 8005B52C 0005718C  93 A3 00 08 */	stw r29, 8(r3)
/* 8005B530 00057190  3B BD 26 80 */	addi r29, r29, 0x2680
lbl_8005B534:
/* 8005B534 00057194  80 1B 00 24 */	lwz r0, 0x24(r27)
/* 8005B538 00057198  38 80 00 00 */	li r4, 0
/* 8005B53C 0005719C  38 A0 26 80 */	li r5, 0x2680
/* 8005B540 000571A0  7C 60 FA 14 */	add r3, r0, r31
/* 8005B544 000571A4  80 63 00 08 */	lwz r3, 8(r3)
/* 8005B548 000571A8  4B FA 8B BD */	bl memset
/* 8005B54C 000571AC  3B FF 00 28 */	addi r31, r31, 0x28
/* 8005B550 000571B0  3B DE 00 01 */	addi r30, r30, 1
lbl_8005B554:
/* 8005B554 000571B4  7C 1E E0 40 */	cmplw r30, r28
/* 8005B558 000571B8  41 80 FF C0 */	blt lbl_8005B518
/* 8005B55C 000571BC  38 7B 00 30 */	addi r3, r27, 0x30
/* 8005B560 000571C0  38 80 00 00 */	li r4, 0
/* 8005B564 000571C4  38 A0 00 44 */	li r5, 0x44
/* 8005B568 000571C8  4B FA 8B 9D */	bl memset
/* 8005B56C 000571CC  38 7B 00 74 */	addi r3, r27, 0x74
/* 8005B570 000571D0  38 80 00 00 */	li r4, 0
/* 8005B574 000571D4  38 A0 00 22 */	li r5, 0x22
/* 8005B578 000571D8  4B FA 8B 8D */	bl memset
/* 8005B57C 000571DC  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005B580 000571E0  38 80 00 00 */	li r4, 0
/* 8005B584 000571E4  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8005B588 000571E8  B0 9B 00 96 */	sth r4, 0x96(r27)
/* 8005B58C 000571EC  38 63 00 04 */	addi r3, r3, 4
/* 8005B590 000571F0  38 00 00 01 */	li r0, 1
/* 8005B594 000571F4  98 9B 00 98 */	stb r4, 0x98(r27)
/* 8005B598 000571F8  39 61 00 20 */	addi r11, r1, 0x20
/* 8005B59C 000571FC  90 7B 00 20 */	stw r3, 0x20(r27)
/* 8005B5A0 00057200  90 9B 00 2C */	stw r4, 0x2c(r27)
/* 8005B5A4 00057204  98 0D 99 06 */	stb r0, lbl_8063EBC6-_SDA_BASE_(r13)
/* 8005B5A8 00057208  48 16 BB CD */	bl _restgpr_27
/* 8005B5AC 0005720C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005B5B0 00057210  7C 08 03 A6 */	mtlr r0
/* 8005B5B4 00057214  38 21 00 20 */	addi r1, r1, 0x20
/* 8005B5B8 00057218  4E 80 00 20 */	blr
lbl_8005B5BC:
/* 8005B5BC 0005721C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005B5C0 00057220  7C 08 02 A6 */	mflr r0
/* 8005B5C4 00057224  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005B5C8 00057228  39 61 00 20 */	addi r11, r1, 0x20
/* 8005B5CC 0005722C  48 16 BB 5D */	bl _savegpr_27
/* 8005B5D0 00057230  80 03 00 AC */	lwz r0, 0xac(r3)
/* 8005B5D4 00057234  7C 7B 1B 78 */	mr r27, r3
/* 8005B5D8 00057238  90 83 00 B0 */	stw r4, 0xb0(r3)
/* 8005B5DC 0005723C  7C 9C 23 78 */	mr r28, r4
/* 8005B5E0 00057240  2C 00 00 00 */	cmpwi r0, 0
/* 8005B5E4 00057244  40 82 00 1C */	bne lbl_8005B600
/* 8005B5E8 00057248  1C 84 00 28 */	mulli r4, r4, 0x28
/* 8005B5EC 0005724C  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8005B5F0 00057250  38 04 00 1F */	addi r0, r4, 0x1f
/* 8005B5F4 00057254  54 04 00 34 */	rlwinm r4, r0, 0, 0, 0x1a
/* 8005B5F8 00057258  48 17 F6 9D */	bl func_801DAC94
/* 8005B5FC 0005725C  90 7B 00 AC */	stw r3, 0xac(r27)
lbl_8005B600:
/* 8005B600 00057260  1C BC 00 28 */	mulli r5, r28, 0x28
/* 8005B604 00057264  80 7B 00 AC */	lwz r3, 0xac(r27)
/* 8005B608 00057268  38 80 00 00 */	li r4, 0
/* 8005B60C 0005726C  4B FA 8A F9 */	bl memset
/* 8005B610 00057270  1C 9C 31 C0 */	mulli r4, r28, 0x31c0
/* 8005B614 00057274  80 6D 96 2C */	lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8005B618 00057278  38 A0 00 20 */	li r5, 0x20
/* 8005B61C 0005727C  48 17 F6 ED */	bl func_801DAD08
/* 8005B620 00057280  7C 7D 1B 78 */	mr r29, r3
/* 8005B624 00057284  3B C0 00 00 */	li r30, 0
/* 8005B628 00057288  3B E0 00 00 */	li r31, 0
/* 8005B62C 0005728C  48 00 00 40 */	b lbl_8005B66C
lbl_8005B630:
/* 8005B630 00057290  80 1B 00 AC */	lwz r0, 0xac(r27)
/* 8005B634 00057294  7C 60 FA 14 */	add r3, r0, r31
/* 8005B638 00057298  80 03 00 08 */	lwz r0, 8(r3)
/* 8005B63C 0005729C  2C 00 00 00 */	cmpwi r0, 0
/* 8005B640 000572A0  40 82 00 0C */	bne lbl_8005B64C
/* 8005B644 000572A4  93 A3 00 08 */	stw r29, 8(r3)
/* 8005B648 000572A8  3B BD 31 C0 */	addi r29, r29, 0x31c0
lbl_8005B64C:
/* 8005B64C 000572AC  80 1B 00 AC */	lwz r0, 0xac(r27)
/* 8005B650 000572B0  38 80 00 00 */	li r4, 0
/* 8005B654 000572B4  38 A0 31 C0 */	li r5, 0x31c0
/* 8005B658 000572B8  7C 60 FA 14 */	add r3, r0, r31
/* 8005B65C 000572BC  80 63 00 08 */	lwz r3, 8(r3)
/* 8005B660 000572C0  4B FA 8A A5 */	bl memset
/* 8005B664 000572C4  3B FF 00 28 */	addi r31, r31, 0x28
/* 8005B668 000572C8  3B DE 00 01 */	addi r30, r30, 1
lbl_8005B66C:
/* 8005B66C 000572CC  7C 1E E0 40 */	cmplw r30, r28
/* 8005B670 000572D0  41 80 FF C0 */	blt lbl_8005B630
/* 8005B674 000572D4  38 7B 00 B8 */	addi r3, r27, 0xb8
/* 8005B678 000572D8  38 80 00 00 */	li r4, 0
/* 8005B67C 000572DC  38 A0 00 44 */	li r5, 0x44
/* 8005B680 000572E0  4B FA 8A 85 */	bl memset
/* 8005B684 000572E4  38 7B 00 FC */	addi r3, r27, 0xfc
/* 8005B688 000572E8  38 80 00 00 */	li r4, 0
/* 8005B68C 000572EC  38 A0 00 22 */	li r5, 0x22
/* 8005B690 000572F0  4B FA 8A 75 */	bl memset
/* 8005B694 000572F4  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005B698 000572F8  38 80 00 00 */	li r4, 0
/* 8005B69C 000572FC  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8005B6A0 00057300  B0 9B 01 1E */	sth r4, 0x11e(r27)
/* 8005B6A4 00057304  38 63 00 4C */	addi r3, r3, 0x4c
/* 8005B6A8 00057308  38 00 00 01 */	li r0, 1
/* 8005B6AC 0005730C  98 9B 01 20 */	stb r4, 0x120(r27)
/* 8005B6B0 00057310  39 61 00 20 */	addi r11, r1, 0x20
/* 8005B6B4 00057314  90 7B 00 A8 */	stw r3, 0xa8(r27)
/* 8005B6B8 00057318  90 9B 00 B4 */	stw r4, 0xb4(r27)
/* 8005B6BC 0005731C  98 0D 99 07 */	stb r0, lbl_8063EBC7-_SDA_BASE_(r13)
/* 8005B6C0 00057320  48 16 BA B5 */	bl _restgpr_27
/* 8005B6C4 00057324  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005B6C8 00057328  7C 08 03 A6 */	mtlr r0
/* 8005B6CC 0005732C  38 21 00 20 */	addi r1, r1, 0x20
/* 8005B6D0 00057330  4E 80 00 20 */	blr

.global func_8005B6D4
func_8005B6D4:
/* 8005B6D4 00057334  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005B6D8 00057338  7C 08 02 A6 */	mflr r0
/* 8005B6DC 0005733C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005B6E0 00057340  39 61 00 30 */	addi r11, r1, 0x30
/* 8005B6E4 00057344  48 16 BA 3D */	bl _savegpr_25
/* 8005B6E8 00057348  2C 04 00 00 */	cmpwi r4, 0
/* 8005B6EC 0005734C  7C 7A 1B 78 */	mr r26, r3
/* 8005B6F0 00057350  7C 9B 23 78 */	mr r27, r4
/* 8005B6F4 00057354  7C BC 2B 78 */	mr r28, r5
/* 8005B6F8 00057358  7C DD 33 78 */	mr r29, r6
/* 8005B6FC 0005735C  3B E0 00 01 */	li r31, 1
/* 8005B700 00057360  41 82 00 0C */	beq lbl_8005B70C
/* 8005B704 00057364  28 04 01 EF */	cmplwi r4, 0x1ef
/* 8005B708 00057368  40 81 00 0C */	ble lbl_8005B714
lbl_8005B70C:
/* 8005B70C 0005736C  38 60 00 01 */	li r3, 1
/* 8005B710 00057370  48 00 02 34 */	b lbl_8005B944
lbl_8005B714:
/* 8005B714 00057374  80 63 00 20 */	lwz r3, 0x20(r3)
/* 8005B718 00057378  48 33 52 05 */	bl func_8039091C
/* 8005B71C 0005737C  3F 20 80 64 */	lis r25, lbl_8063CE34@ha
/* 8005B720 00057380  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005B724 00057384  3B 39 CE 34 */	addi r25, r25, lbl_8063CE34@l
/* 8005B728 00057388  38 79 00 64 */	addi r3, r25, 0x64
/* 8005B72C 0005738C  48 33 CE B5 */	bl func_803985E0
/* 8005B730 00057390  7C 7E 1B 78 */	mr r30, r3
/* 8005B734 00057394  80 7A 00 20 */	lwz r3, 0x20(r26)
/* 8005B738 00057398  7F 64 DB 78 */	mr r4, r27
/* 8005B73C 0005739C  48 33 51 E1 */	bl func_8039091C
/* 8005B740 000573A0  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005B744 000573A4  38 79 00 64 */	addi r3, r25, 0x64
/* 8005B748 000573A8  48 33 CF 01 */	bl func_80398648
/* 8005B74C 000573AC  7C 03 F0 40 */	cmplw r3, r30
/* 8005B750 000573B0  57 9E 82 1E */	rlwinm r30, r28, 0x10, 8, 0xf
/* 8005B754 000573B4  53 7E 04 3E */	rlwimi r30, r27, 0, 0x10, 0x1f
/* 8005B758 000573B8  40 82 00 08 */	bne lbl_8005B760
/* 8005B75C 000573BC  7F 7E DB 78 */	mr r30, r27
lbl_8005B760:
/* 8005B760 000573C0  2C 1B 01 9E */	cmpwi r27, 0x19e
/* 8005B764 000573C4  40 80 00 28 */	bge lbl_8005B78C
/* 8005B768 000573C8  2C 1B 01 82 */	cmpwi r27, 0x182
/* 8005B76C 000573CC  41 82 00 44 */	beq lbl_8005B7B0
/* 8005B770 000573D0  40 80 00 10 */	bge lbl_8005B780
/* 8005B774 000573D4  2C 1B 00 C9 */	cmpwi r27, 0xc9
/* 8005B778 000573D8  41 82 00 38 */	beq lbl_8005B7B0
/* 8005B77C 000573DC  48 00 00 3C */	b lbl_8005B7B8
lbl_8005B780:
/* 8005B780 000573E0  2C 1B 01 9C */	cmpwi r27, 0x19c
/* 8005B784 000573E4  40 80 00 2C */	bge lbl_8005B7B0
/* 8005B788 000573E8  48 00 00 30 */	b lbl_8005B7B8
lbl_8005B78C:
/* 8005B78C 000573EC  2C 1B 01 ED */	cmpwi r27, 0x1ed
/* 8005B790 000573F0  40 80 00 18 */	bge lbl_8005B7A8
/* 8005B794 000573F4  2C 1B 01 A8 */	cmpwi r27, 0x1a8
/* 8005B798 000573F8  40 80 00 20 */	bge lbl_8005B7B8
/* 8005B79C 000573FC  2C 1B 01 A5 */	cmpwi r27, 0x1a5
/* 8005B7A0 00057400  40 80 00 10 */	bge lbl_8005B7B0
/* 8005B7A4 00057404  48 00 00 14 */	b lbl_8005B7B8
lbl_8005B7A8:
/* 8005B7A8 00057408  2C 1B 01 EF */	cmpwi r27, 0x1ef
/* 8005B7AC 0005740C  40 80 00 0C */	bge lbl_8005B7B8
lbl_8005B7B0:
/* 8005B7B0 00057410  57 A0 90 1A */	slwi r0, r29, 0x12
/* 8005B7B4 00057414  7F DE 03 78 */	or r30, r30, r0
lbl_8005B7B8:
/* 8005B7B8 00057418  80 BA 00 28 */	lwz r5, 0x28(r26)
/* 8005B7BC 0005741C  38 C0 00 00 */	li r6, 0
/* 8005B7C0 00057420  38 60 00 00 */	li r3, 0
/* 8005B7C4 00057424  7C A9 03 A6 */	mtctr r5
/* 8005B7C8 00057428  28 05 00 00 */	cmplwi r5, 0
/* 8005B7CC 0005742C  40 81 00 38 */	ble lbl_8005B804
lbl_8005B7D0:
/* 8005B7D0 00057430  80 9A 00 24 */	lwz r4, 0x24(r26)
/* 8005B7D4 00057434  7C 04 18 2E */	lwzx r0, r4, r3
/* 8005B7D8 00057438  7C 1E 00 40 */	cmplw r30, r0
/* 8005B7DC 0005743C  40 82 00 1C */	bne lbl_8005B7F8
/* 8005B7E0 00057440  1C 06 00 28 */	mulli r0, r6, 0x28
/* 8005B7E4 00057444  38 A0 00 02 */	li r5, 2
/* 8005B7E8 00057448  38 60 00 00 */	li r3, 0
/* 8005B7EC 0005744C  7C 84 02 14 */	add r4, r4, r0
/* 8005B7F0 00057450  98 A4 00 0E */	stb r5, 0xe(r4)
/* 8005B7F4 00057454  48 00 01 50 */	b lbl_8005B944
lbl_8005B7F8:
/* 8005B7F8 00057458  38 63 00 28 */	addi r3, r3, 0x28
/* 8005B7FC 0005745C  38 C6 00 01 */	addi r6, r6, 1
/* 8005B800 00057460  42 00 FF D0 */	bdnz lbl_8005B7D0
lbl_8005B804:
/* 8005B804 00057464  80 DA 00 2C */	lwz r6, 0x2c(r26)
/* 8005B808 00057468  7C 06 28 50 */	subf r0, r6, r5
/* 8005B80C 0005746C  7C C7 33 78 */	mr r7, r6
/* 8005B810 00057470  1C 66 00 28 */	mulli r3, r6, 0x28
/* 8005B814 00057474  7C 09 03 A6 */	mtctr r0
/* 8005B818 00057478  7C 06 28 40 */	cmplw r6, r5
/* 8005B81C 0005747C  40 80 00 38 */	bge lbl_8005B854
lbl_8005B820:
/* 8005B820 00057480  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B824 00057484  7C 80 1A 14 */	add r4, r0, r3
/* 8005B828 00057488  88 04 00 0E */	lbz r0, 0xe(r4)
/* 8005B82C 0005748C  2C 00 00 00 */	cmpwi r0, 0
/* 8005B830 00057490  40 82 00 18 */	bne lbl_8005B848
/* 8005B834 00057494  88 04 00 0D */	lbz r0, 0xd(r4)
/* 8005B838 00057498  28 00 00 02 */	cmplwi r0, 2
/* 8005B83C 0005749C  41 82 00 0C */	beq lbl_8005B848
/* 8005B840 000574A0  3B E0 00 00 */	li r31, 0
/* 8005B844 000574A4  48 00 00 10 */	b lbl_8005B854
lbl_8005B848:
/* 8005B848 000574A8  38 63 00 28 */	addi r3, r3, 0x28
/* 8005B84C 000574AC  38 E7 00 01 */	addi r7, r7, 1
/* 8005B850 000574B0  42 00 FF D0 */	bdnz lbl_8005B820
lbl_8005B854:
/* 8005B854 000574B4  2C 1F 00 00 */	cmpwi r31, 0
/* 8005B858 000574B8  41 82 00 4C */	beq lbl_8005B8A4
/* 8005B85C 000574BC  38 E0 00 00 */	li r7, 0
/* 8005B860 000574C0  38 60 00 00 */	li r3, 0
/* 8005B864 000574C4  7C C9 03 A6 */	mtctr r6
/* 8005B868 000574C8  28 06 00 00 */	cmplwi r6, 0
/* 8005B86C 000574CC  40 81 00 38 */	ble lbl_8005B8A4
lbl_8005B870:
/* 8005B870 000574D0  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B874 000574D4  7C 80 1A 14 */	add r4, r0, r3
/* 8005B878 000574D8  88 04 00 0E */	lbz r0, 0xe(r4)
/* 8005B87C 000574DC  2C 00 00 00 */	cmpwi r0, 0
/* 8005B880 000574E0  40 82 00 18 */	bne lbl_8005B898
/* 8005B884 000574E4  88 04 00 0D */	lbz r0, 0xd(r4)
/* 8005B888 000574E8  28 00 00 02 */	cmplwi r0, 2
/* 8005B88C 000574EC  41 82 00 0C */	beq lbl_8005B898
/* 8005B890 000574F0  3B E0 00 00 */	li r31, 0
/* 8005B894 000574F4  48 00 00 10 */	b lbl_8005B8A4
lbl_8005B898:
/* 8005B898 000574F8  38 63 00 28 */	addi r3, r3, 0x28
/* 8005B89C 000574FC  38 E7 00 01 */	addi r7, r7, 1
/* 8005B8A0 00057500  42 00 FF D0 */	bdnz lbl_8005B870
lbl_8005B8A4:
/* 8005B8A4 00057504  2C 1F 00 00 */	cmpwi r31, 0
/* 8005B8A8 00057508  41 82 00 0C */	beq lbl_8005B8B4
/* 8005B8AC 0005750C  38 60 00 01 */	li r3, 1
/* 8005B8B0 00057510  48 00 00 94 */	b lbl_8005B944
lbl_8005B8B4:
/* 8005B8B4 00057514  1F E7 00 28 */	mulli r31, r7, 0x28
/* 8005B8B8 00057518  80 7A 00 24 */	lwz r3, 0x24(r26)
/* 8005B8BC 0005751C  7C 03 F8 2E */	lwzx r0, r3, r31
/* 8005B8C0 00057520  2C 00 00 00 */	cmpwi r0, 0
/* 8005B8C4 00057524  41 82 00 10 */	beq lbl_8005B8D4
/* 8005B8C8 00057528  7C 63 FA 14 */	add r3, r3, r31
/* 8005B8CC 0005752C  80 63 00 08 */	lwz r3, 8(r3)
/* 8005B8D0 00057530  48 1E 2A 01 */	bl func_8023E2D0
lbl_8005B8D4:
/* 8005B8D4 00057534  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B8D8 00057538  38 A0 00 01 */	li r5, 1
/* 8005B8DC 0005753C  38 80 00 02 */	li r4, 2
/* 8005B8E0 00057540  7C 60 FA 14 */	add r3, r0, r31
/* 8005B8E4 00057544  B3 63 00 04 */	sth r27, 4(r3)
/* 8005B8E8 00057548  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B8EC 0005754C  7C 60 FA 14 */	add r3, r0, r31
/* 8005B8F0 00057550  9B 83 00 06 */	stb r28, 6(r3)
/* 8005B8F4 00057554  80 7A 00 24 */	lwz r3, 0x24(r26)
/* 8005B8F8 00057558  7F C3 F9 2E */	stwx r30, r3, r31
/* 8005B8FC 0005755C  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B900 00057560  7C 60 FA 14 */	add r3, r0, r31
/* 8005B904 00057564  98 A3 00 0D */	stb r5, 0xd(r3)
/* 8005B908 00057568  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B90C 0005756C  7C 60 FA 14 */	add r3, r0, r31
/* 8005B910 00057570  98 83 00 0E */	stb r4, 0xe(r3)
/* 8005B914 00057574  80 1A 00 24 */	lwz r0, 0x24(r26)
/* 8005B918 00057578  7C 60 FA 14 */	add r3, r0, r31
/* 8005B91C 0005757C  B3 A3 00 10 */	sth r29, 0x10(r3)
/* 8005B920 00057580  80 7A 00 2C */	lwz r3, 0x2c(r26)
/* 8005B924 00057584  80 1A 00 28 */	lwz r0, 0x28(r26)
/* 8005B928 00057588  38 63 00 01 */	addi r3, r3, 1
/* 8005B92C 0005758C  7C 03 00 40 */	cmplw r3, r0
/* 8005B930 00057590  90 7A 00 2C */	stw r3, 0x2c(r26)
/* 8005B934 00057594  40 82 00 0C */	bne lbl_8005B940
/* 8005B938 00057598  38 00 00 00 */	li r0, 0
/* 8005B93C 0005759C  90 1A 00 2C */	stw r0, 0x2c(r26)
lbl_8005B940:
/* 8005B940 000575A0  38 60 00 00 */	li r3, 0
lbl_8005B944:
/* 8005B944 000575A4  39 61 00 30 */	addi r11, r1, 0x30
/* 8005B948 000575A8  48 16 B8 25 */	bl _restgpr_25
/* 8005B94C 000575AC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005B950 000575B0  7C 08 03 A6 */	mtlr r0
/* 8005B954 000575B4  38 21 00 30 */	addi r1, r1, 0x30
/* 8005B958 000575B8  4E 80 00 20 */	blr

.global func_8005B95C
func_8005B95C:
/* 8005B95C 000575BC  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 8005B960 000575C0  7C 08 02 A6 */	mflr r0
/* 8005B964 000575C4  90 01 00 74 */	stw r0, 0x74(r1)
/* 8005B968 000575C8  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 8005B96C 000575CC  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 8005B970 000575D0  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 8005B974 000575D4  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 8005B978 000575D8  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 8005B97C 000575DC  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 8005B980 000575E0  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 8005B984 000575E4  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 8005B988 000575E8  39 61 00 30 */	addi r11, r1, 0x30
/* 8005B98C 000575EC  48 16 B7 8D */	bl _savegpr_23
/* 8005B990 000575F0  2C 04 00 00 */	cmpwi r4, 0
/* 8005B994 000575F4  7C 7B 1B 78 */	mr r27, r3
/* 8005B998 000575F8  7C 97 23 78 */	mr r23, r4
/* 8005B99C 000575FC  7C B8 2B 78 */	mr r24, r5
/* 8005B9A0 00057600  7C DC 33 78 */	mr r28, r6
/* 8005B9A4 00057604  7C FD 3B 78 */	mr r29, r7
/* 8005B9A8 00057608  7D 1E 43 78 */	mr r30, r8
/* 8005B9AC 0005760C  7D 39 4B 78 */	mr r25, r9
/* 8005B9B0 00057610  41 82 00 0C */	beq lbl_8005B9BC
/* 8005B9B4 00057614  28 04 01 EF */	cmplwi r4, 0x1ef
/* 8005B9B8 00057618  40 81 00 38 */	ble lbl_8005B9F0
lbl_8005B9BC:
/* 8005B9BC 0005761C  C0 22 85 E0 */	lfs f1, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005B9C0 00057620  38 60 00 29 */	li r3, 0x29
/* 8005B9C4 00057624  C0 02 85 E4 */	lfs f0, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005B9C8 00057628  D0 28 00 0C */	stfs f1, 0xc(r8)
/* 8005B9CC 0005762C  D0 28 00 04 */	stfs f1, 4(r8)
/* 8005B9D0 00057630  D0 28 00 18 */	stfs f1, 0x18(r8)
/* 8005B9D4 00057634  D0 28 00 00 */	stfs f1, 0(r8)
/* 8005B9D8 00057638  D0 08 00 1C */	stfs f0, 0x1c(r8)
/* 8005B9DC 0005763C  D0 08 00 14 */	stfs f0, 0x14(r8)
/* 8005B9E0 00057640  D0 08 00 10 */	stfs f0, 0x10(r8)
/* 8005B9E4 00057644  D0 08 00 08 */	stfs f0, 8(r8)
/* 8005B9E8 00057648  4B FF F0 11 */	bl func_8005A9F8
/* 8005B9EC 0005764C  48 00 02 30 */	b lbl_8005BC1C
lbl_8005B9F0:
/* 8005B9F0 00057650  80 63 00 20 */	lwz r3, 0x20(r3)
/* 8005B9F4 00057654  48 33 4F 29 */	bl func_8039091C
/* 8005B9F8 00057658  3F 40 80 64 */	lis r26, lbl_8063CE34@ha
/* 8005B9FC 0005765C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005BA00 00057660  3B 5A CE 34 */	addi r26, r26, lbl_8063CE34@l
/* 8005BA04 00057664  38 7A 00 64 */	addi r3, r26, 0x64
/* 8005BA08 00057668  48 33 CB D9 */	bl func_803985E0
/* 8005BA0C 0005766C  7C 7F 1B 78 */	mr r31, r3
/* 8005BA10 00057670  80 7B 00 20 */	lwz r3, 0x20(r27)
/* 8005BA14 00057674  7E E4 BB 78 */	mr r4, r23
/* 8005BA18 00057678  48 33 4F 05 */	bl func_8039091C
/* 8005BA1C 0005767C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005BA20 00057680  38 7A 00 64 */	addi r3, r26, 0x64
/* 8005BA24 00057684  48 33 CC 25 */	bl func_80398648
/* 8005BA28 00057688  7C 03 F8 40 */	cmplw r3, r31
/* 8005BA2C 0005768C  57 06 82 1E */	rlwinm r6, r24, 0x10, 8, 0xf
/* 8005BA30 00057690  52 E6 04 3E */	rlwimi r6, r23, 0, 0x10, 0x1f
/* 8005BA34 00057694  40 82 00 08 */	bne lbl_8005BA3C
/* 8005BA38 00057698  7E E6 BB 78 */	mr r6, r23
lbl_8005BA3C:
/* 8005BA3C 0005769C  2C 17 01 9E */	cmpwi r23, 0x19e
/* 8005BA40 000576A0  40 80 00 28 */	bge lbl_8005BA68
/* 8005BA44 000576A4  2C 17 01 82 */	cmpwi r23, 0x182
/* 8005BA48 000576A8  41 82 00 44 */	beq lbl_8005BA8C
/* 8005BA4C 000576AC  40 80 00 10 */	bge lbl_8005BA5C
/* 8005BA50 000576B0  2C 17 00 C9 */	cmpwi r23, 0xc9
/* 8005BA54 000576B4  41 82 00 38 */	beq lbl_8005BA8C
/* 8005BA58 000576B8  48 00 00 3C */	b lbl_8005BA94
lbl_8005BA5C:
/* 8005BA5C 000576BC  2C 17 01 9C */	cmpwi r23, 0x19c
/* 8005BA60 000576C0  40 80 00 2C */	bge lbl_8005BA8C
/* 8005BA64 000576C4  48 00 00 30 */	b lbl_8005BA94
lbl_8005BA68:
/* 8005BA68 000576C8  2C 17 01 ED */	cmpwi r23, 0x1ed
/* 8005BA6C 000576CC  40 80 00 18 */	bge lbl_8005BA84
/* 8005BA70 000576D0  2C 17 01 A8 */	cmpwi r23, 0x1a8
/* 8005BA74 000576D4  40 80 00 20 */	bge lbl_8005BA94
/* 8005BA78 000576D8  2C 17 01 A5 */	cmpwi r23, 0x1a5
/* 8005BA7C 000576DC  40 80 00 10 */	bge lbl_8005BA8C
/* 8005BA80 000576E0  48 00 00 14 */	b lbl_8005BA94
lbl_8005BA84:
/* 8005BA84 000576E4  2C 17 01 EF */	cmpwi r23, 0x1ef
/* 8005BA88 000576E8  40 80 00 0C */	bge lbl_8005BA94
lbl_8005BA8C:
/* 8005BA8C 000576EC  57 20 90 1A */	slwi r0, r25, 0x12
/* 8005BA90 000576F0  7C C6 03 78 */	or r6, r6, r0
lbl_8005BA94:
/* 8005BA94 000576F4  80 1B 00 28 */	lwz r0, 0x28(r27)
/* 8005BA98 000576F8  38 A0 00 00 */	li r5, 0
/* 8005BA9C 000576FC  38 60 00 00 */	li r3, 0
/* 8005BAA0 00057700  7C 09 03 A6 */	mtctr r0
/* 8005BAA4 00057704  28 00 00 00 */	cmplwi r0, 0
/* 8005BAA8 00057708  40 81 01 44 */	ble lbl_8005BBEC
lbl_8005BAAC:
/* 8005BAAC 0005770C  80 9B 00 24 */	lwz r4, 0x24(r27)
/* 8005BAB0 00057710  7C 04 18 2E */	lwzx r0, r4, r3
/* 8005BAB4 00057714  7C 06 00 40 */	cmplw r6, r0
/* 8005BAB8 00057718  40 82 01 28 */	bne lbl_8005BBE0
/* 8005BABC 0005771C  1F E5 00 28 */	mulli r31, r5, 0x28
/* 8005BAC0 00057720  7C 64 FA 14 */	add r3, r4, r31
/* 8005BAC4 00057724  88 03 00 0D */	lbz r0, 0xd(r3)
/* 8005BAC8 00057728  28 00 00 03 */	cmplwi r0, 3
/* 8005BACC 0005772C  40 82 00 D0 */	bne lbl_8005BB9C
/* 8005BAD0 00057730  C3 A2 85 E0 */	lfs f29, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005BAD4 00057734  C3 82 85 E4 */	lfs f28, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005BAD8 00057738  FF E0 E8 90 */	fmr f31, f29
/* 8005BADC 0005773C  80 63 00 08 */	lwz r3, 8(r3)
/* 8005BAE0 00057740  FF C0 E0 90 */	fmr f30, f28
/* 8005BAE4 00057744  48 1E 2A 65 */	bl func_8023E548
/* 8005BAE8 00057748  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005BAEC 0005774C  28 00 00 30 */	cmplwi r0, 0x30
/* 8005BAF0 00057750  40 81 00 20 */	ble lbl_8005BB10
/* 8005BAF4 00057754  2C 1C 00 00 */	cmpwi r28, 0
/* 8005BAF8 00057758  41 82 00 10 */	beq lbl_8005BB08
/* 8005BAFC 0005775C  C3 A2 85 E8 */	lfs f29, lbl_80640BE8-_SDA2_BASE_(r2)
/* 8005BB00 00057760  C3 82 85 E4 */	lfs f28, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005BB04 00057764  48 00 00 0C */	b lbl_8005BB10
lbl_8005BB08:
/* 8005BB08 00057768  C3 A2 85 E0 */	lfs f29, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005BB0C 0005776C  C3 82 85 E8 */	lfs f28, lbl_80640BE8-_SDA2_BASE_(r2)
lbl_8005BB10:
/* 8005BB10 00057770  80 1B 00 24 */	lwz r0, 0x24(r27)
/* 8005BB14 00057774  7C 60 FA 14 */	add r3, r0, r31
/* 8005BB18 00057778  80 63 00 08 */	lwz r3, 8(r3)
/* 8005BB1C 0005777C  48 1E 2A 25 */	bl func_8023E540
/* 8005BB20 00057780  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005BB24 00057784  28 00 00 30 */	cmplwi r0, 0x30
/* 8005BB28 00057788  40 81 00 24 */	ble lbl_8005BB4C
/* 8005BB2C 0005778C  2C 1D 00 00 */	cmpwi r29, 0
/* 8005BB30 00057790  41 82 00 10 */	beq lbl_8005BB40
/* 8005BB34 00057794  C3 E2 85 E8 */	lfs f31, lbl_80640BE8-_SDA2_BASE_(r2)
/* 8005BB38 00057798  C3 C2 85 E4 */	lfs f30, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005BB3C 0005779C  48 00 00 20 */	b lbl_8005BB5C
lbl_8005BB40:
/* 8005BB40 000577A0  C3 E2 85 E0 */	lfs f31, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005BB44 000577A4  C3 C2 85 E8 */	lfs f30, lbl_80640BE8-_SDA2_BASE_(r2)
/* 8005BB48 000577A8  48 00 00 14 */	b lbl_8005BB5C
lbl_8005BB4C:
/* 8005BB4C 000577AC  2C 1D 00 00 */	cmpwi r29, 0
/* 8005BB50 000577B0  41 82 00 0C */	beq lbl_8005BB5C
/* 8005BB54 000577B4  C3 E2 85 E4 */	lfs f31, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005BB58 000577B8  C3 C2 85 E0 */	lfs f30, lbl_80640BE0-_SDA2_BASE_(r2)
lbl_8005BB5C:
/* 8005BB5C 000577BC  D3 FE 00 18 */	stfs f31, 0x18(r30)
/* 8005BB60 000577C0  38 80 00 02 */	li r4, 2
/* 8005BB64 000577C4  D3 FE 00 00 */	stfs f31, 0(r30)
/* 8005BB68 000577C8  D3 DE 00 10 */	stfs f30, 0x10(r30)
/* 8005BB6C 000577CC  D3 DE 00 08 */	stfs f30, 8(r30)
/* 8005BB70 000577D0  D3 BE 00 0C */	stfs f29, 0xc(r30)
/* 8005BB74 000577D4  D3 BE 00 04 */	stfs f29, 4(r30)
/* 8005BB78 000577D8  D3 9E 00 1C */	stfs f28, 0x1c(r30)
/* 8005BB7C 000577DC  D3 9E 00 14 */	stfs f28, 0x14(r30)
/* 8005BB80 000577E0  80 1B 00 24 */	lwz r0, 0x24(r27)
/* 8005BB84 000577E4  7C 60 FA 14 */	add r3, r0, r31
/* 8005BB88 000577E8  98 83 00 0E */	stb r4, 0xe(r3)
/* 8005BB8C 000577EC  80 1B 00 24 */	lwz r0, 0x24(r27)
/* 8005BB90 000577F0  7C 60 FA 14 */	add r3, r0, r31
/* 8005BB94 000577F4  80 63 00 08 */	lwz r3, 8(r3)
/* 8005BB98 000577F8  48 00 00 84 */	b lbl_8005BC1C
lbl_8005BB9C:
/* 8005BB9C 000577FC  C0 22 85 E0 */	lfs f1, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005BBA0 00057800  38 A0 00 02 */	li r5, 2
/* 8005BBA4 00057804  C0 02 85 E4 */	lfs f0, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005BBA8 00057808  38 60 00 29 */	li r3, 0x29
/* 8005BBAC 0005780C  D0 3E 00 0C */	stfs f1, 0xc(r30)
/* 8005BBB0 00057810  D0 3E 00 04 */	stfs f1, 4(r30)
/* 8005BBB4 00057814  D0 3E 00 18 */	stfs f1, 0x18(r30)
/* 8005BBB8 00057818  D0 3E 00 00 */	stfs f1, 0(r30)
/* 8005BBBC 0005781C  D0 1E 00 1C */	stfs f0, 0x1c(r30)
/* 8005BBC0 00057820  D0 1E 00 14 */	stfs f0, 0x14(r30)
/* 8005BBC4 00057824  D0 1E 00 10 */	stfs f0, 0x10(r30)
/* 8005BBC8 00057828  D0 1E 00 08 */	stfs f0, 8(r30)
/* 8005BBCC 0005782C  80 1B 00 24 */	lwz r0, 0x24(r27)
/* 8005BBD0 00057830  7C 80 FA 14 */	add r4, r0, r31
/* 8005BBD4 00057834  98 A4 00 0E */	stb r5, 0xe(r4)
/* 8005BBD8 00057838  4B FF EE 21 */	bl func_8005A9F8
/* 8005BBDC 0005783C  48 00 00 40 */	b lbl_8005BC1C
lbl_8005BBE0:
/* 8005BBE0 00057840  38 63 00 28 */	addi r3, r3, 0x28
/* 8005BBE4 00057844  38 A5 00 01 */	addi r5, r5, 1
/* 8005BBE8 00057848  42 00 FE C4 */	bdnz lbl_8005BAAC
lbl_8005BBEC:
/* 8005BBEC 0005784C  C0 22 85 E0 */	lfs f1, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005BBF0 00057850  38 60 00 29 */	li r3, 0x29
/* 8005BBF4 00057854  C0 02 85 E4 */	lfs f0, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005BBF8 00057858  D0 3E 00 0C */	stfs f1, 0xc(r30)
/* 8005BBFC 0005785C  D0 3E 00 04 */	stfs f1, 4(r30)
/* 8005BC00 00057860  D0 3E 00 18 */	stfs f1, 0x18(r30)
/* 8005BC04 00057864  D0 3E 00 00 */	stfs f1, 0(r30)
/* 8005BC08 00057868  D0 1E 00 1C */	stfs f0, 0x1c(r30)
/* 8005BC0C 0005786C  D0 1E 00 14 */	stfs f0, 0x14(r30)
/* 8005BC10 00057870  D0 1E 00 10 */	stfs f0, 0x10(r30)
/* 8005BC14 00057874  D0 1E 00 08 */	stfs f0, 8(r30)
/* 8005BC18 00057878  4B FF ED E1 */	bl func_8005A9F8
lbl_8005BC1C:
/* 8005BC1C 0005787C  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 8005BC20 00057880  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 8005BC24 00057884  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 8005BC28 00057888  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 8005BC2C 0005788C  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 8005BC30 00057890  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 8005BC34 00057894  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 8005BC38 00057898  39 61 00 30 */	addi r11, r1, 0x30
/* 8005BC3C 0005789C  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 8005BC40 000578A0  48 16 B5 25 */	bl _restgpr_23
/* 8005BC44 000578A4  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8005BC48 000578A8  7C 08 03 A6 */	mtlr r0
/* 8005BC4C 000578AC  38 21 00 70 */	addi r1, r1, 0x70
/* 8005BC50 000578B0  4E 80 00 20 */	blr
lbl_8005BC54:
/* 8005BC54 000578B4  7C 66 1B 78 */	mr r6, r3
/* 8005BC58 000578B8  38 E0 00 00 */	li r7, 0
/* 8005BC5C 000578BC  38 A0 00 01 */	li r5, 1
/* 8005BC60 000578C0  48 00 00 20 */	b lbl_8005BC80
lbl_8005BC64:
/* 8005BC64 000578C4  A0 06 00 74 */	lhz r0, 0x74(r6)
/* 8005BC68 000578C8  38 C6 00 02 */	addi r6, r6, 2
/* 8005BC6C 000578CC  80 83 00 24 */	lwz r4, 0x24(r3)
/* 8005BC70 000578D0  38 E7 00 01 */	addi r7, r7, 1
/* 8005BC74 000578D4  1C 00 00 28 */	mulli r0, r0, 0x28
/* 8005BC78 000578D8  7C 84 02 14 */	add r4, r4, r0
/* 8005BC7C 000578DC  98 A4 00 0C */	stb r5, 0xc(r4)
lbl_8005BC80:
/* 8005BC80 000578E0  A0 03 00 96 */	lhz r0, 0x96(r3)
/* 8005BC84 000578E4  7C 07 00 40 */	cmplw r7, r0
/* 8005BC88 000578E8  41 80 FF DC */	blt lbl_8005BC64
/* 8005BC8C 000578EC  4E 80 00 20 */	blr
lbl_8005BC90:
/* 8005BC90 000578F0  3C 60 80 48 */	lis r3, lbl_80478178@ha
/* 8005BC94 000578F4  54 A4 04 3E */	clrlwi r4, r5, 0x10
/* 8005BC98 000578F8  38 63 81 78 */	addi r3, r3, lbl_80478178@l
/* 8005BC9C 000578FC  4B FF FF B8 */	b lbl_8005BC54

.global func_8005BCA0
func_8005BCA0:
/* 8005BCA0 00057900  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005BCA4 00057904  7C 08 02 A6 */	mflr r0
/* 8005BCA8 00057908  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005BCAC 0005790C  39 61 00 30 */	addi r11, r1, 0x30
/* 8005BCB0 00057910  48 16 B4 65 */	bl _savegpr_22
/* 8005BCB4 00057914  88 0D 99 06 */	lbz r0, lbl_8063EBC6-_SDA_BASE_(r13)
/* 8005BCB8 00057918  7C 77 1B 78 */	mr r23, r3
/* 8005BCBC 0005791C  3B 40 00 00 */	li r26, 0
/* 8005BCC0 00057920  2C 00 00 00 */	cmpwi r0, 0
/* 8005BCC4 00057924  41 82 03 90 */	beq lbl_8005C054
/* 8005BCC8 00057928  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005BCCC 0005792C  3B 20 00 00 */	li r25, 0
/* 8005BCD0 00057930  3B 60 00 00 */	li r27, 0
/* 8005BCD4 00057934  3B 80 00 00 */	li r28, 0
/* 8005BCD8 00057938  3B A3 CE 34 */	addi r29, r3, lbl_8063CE34@l
/* 8005BCDC 0005793C  3B E0 00 03 */	li r31, 3
/* 8005BCE0 00057940  3B C0 00 02 */	li r30, 2
/* 8005BCE4 00057944  48 00 03 08 */	b lbl_8005BFEC
lbl_8005BCE8:
/* 8005BCE8 00057948  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BCEC 0005794C  7C 80 DA 14 */	add r4, r0, r27
/* 8005BCF0 00057950  7C 1B 00 2E */	lwzx r0, r27, r0
/* 8005BCF4 00057954  2C 00 00 00 */	cmpwi r0, 0
/* 8005BCF8 00057958  41 82 02 EC */	beq lbl_8005BFE4
/* 8005BCFC 0005795C  88 64 00 0E */	lbz r3, 0xe(r4)
/* 8005BD00 00057960  2C 03 00 00 */	cmpwi r3, 0
/* 8005BD04 00057964  41 82 00 0C */	beq lbl_8005BD10
/* 8005BD08 00057968  38 03 FF FF */	addi r0, r3, -1
/* 8005BD0C 0005796C  98 04 00 0E */	stb r0, 0xe(r4)
lbl_8005BD10:
/* 8005BD10 00057970  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BD14 00057974  7C 60 DA 14 */	add r3, r0, r27
/* 8005BD18 00057978  88 03 00 0D */	lbz r0, 0xd(r3)
/* 8005BD1C 0005797C  2C 00 00 02 */	cmpwi r0, 2
/* 8005BD20 00057980  41 82 01 88 */	beq lbl_8005BEA8
/* 8005BD24 00057984  40 80 02 C0 */	bge lbl_8005BFE4
/* 8005BD28 00057988  2C 00 00 01 */	cmpwi r0, 1
/* 8005BD2C 0005798C  40 80 00 0C */	bge lbl_8005BD38
/* 8005BD30 00057990  48 00 02 B4 */	b lbl_8005BFE4
/* 8005BD34 00057994  48 00 02 B0 */	b lbl_8005BFE4
lbl_8005BD38:
/* 8005BD38 00057998  88 17 00 98 */	lbz r0, 0x98(r23)
/* 8005BD3C 0005799C  A2 C3 00 04 */	lhz r22, 4(r3)
/* 8005BD40 000579A0  2C 00 00 00 */	cmpwi r0, 0
/* 8005BD44 000579A4  A3 03 00 10 */	lhz r24, 0x10(r3)
/* 8005BD48 000579A8  40 82 02 9C */	bne lbl_8005BFE4
/* 8005BD4C 000579AC  A0 17 00 96 */	lhz r0, 0x96(r23)
/* 8005BD50 000579B0  28 00 00 10 */	cmplwi r0, 0x10
/* 8005BD54 000579B4  40 80 02 90 */	bge lbl_8005BFE4
/* 8005BD58 000579B8  80 77 00 20 */	lwz r3, 0x20(r23)
/* 8005BD5C 000579BC  7E C4 B3 78 */	mr r4, r22
/* 8005BD60 000579C0  48 33 4B BD */	bl func_8039091C
/* 8005BD64 000579C4  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BD68 000579C8  7C 64 1B 78 */	mr r4, r3
/* 8005BD6C 000579CC  2C 16 01 9E */	cmpwi r22, 0x19e
/* 8005BD70 000579D0  7C 60 DA 14 */	add r3, r0, r27
/* 8005BD74 000579D4  9B 83 00 0C */	stb r28, 0xc(r3)
/* 8005BD78 000579D8  40 80 00 28 */	bge lbl_8005BDA0
/* 8005BD7C 000579DC  2C 16 01 82 */	cmpwi r22, 0x182
/* 8005BD80 000579E0  41 82 00 44 */	beq lbl_8005BDC4
/* 8005BD84 000579E4  40 80 00 10 */	bge lbl_8005BD94
/* 8005BD88 000579E8  2C 16 00 C9 */	cmpwi r22, 0xc9
/* 8005BD8C 000579EC  41 82 00 38 */	beq lbl_8005BDC4
/* 8005BD90 000579F0  48 00 00 88 */	b lbl_8005BE18
lbl_8005BD94:
/* 8005BD94 000579F4  2C 16 01 9C */	cmpwi r22, 0x19c
/* 8005BD98 000579F8  40 80 00 2C */	bge lbl_8005BDC4
/* 8005BD9C 000579FC  48 00 00 7C */	b lbl_8005BE18
lbl_8005BDA0:
/* 8005BDA0 00057A00  2C 16 01 ED */	cmpwi r22, 0x1ed
/* 8005BDA4 00057A04  40 80 00 18 */	bge lbl_8005BDBC
/* 8005BDA8 00057A08  2C 16 01 A8 */	cmpwi r22, 0x1a8
/* 8005BDAC 00057A0C  40 80 00 6C */	bge lbl_8005BE18
/* 8005BDB0 00057A10  2C 16 01 A5 */	cmpwi r22, 0x1a5
/* 8005BDB4 00057A14  40 80 00 10 */	bge lbl_8005BDC4
/* 8005BDB8 00057A18  48 00 00 60 */	b lbl_8005BE18
lbl_8005BDBC:
/* 8005BDBC 00057A1C  2C 16 01 EF */	cmpwi r22, 0x1ef
/* 8005BDC0 00057A20  40 80 00 58 */	bge lbl_8005BE18
lbl_8005BDC4:
/* 8005BDC4 00057A24  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BDC8 00057A28  7C 60 DA 14 */	add r3, r0, r27
/* 8005BDCC 00057A2C  88 03 00 06 */	lbz r0, 6(r3)
/* 8005BDD0 00057A30  28 00 00 01 */	cmplwi r0, 1
/* 8005BDD4 00057A34  40 82 00 24 */	bne lbl_8005BDF8
/* 8005BDD8 00057A38  54 80 04 3E */	clrlwi r0, r4, 0x10
/* 8005BDDC 00057A3C  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005BDE0 00057A40  7C 80 C2 14 */	add r4, r0, r24
/* 8005BDE4 00057A44  48 33 C8 65 */	bl func_80398648
/* 8005BDE8 00057A48  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BDEC 00057A4C  7C 80 DA 14 */	add r4, r0, r27
/* 8005BDF0 00057A50  90 64 00 14 */	stw r3, 0x14(r4)
/* 8005BDF4 00057A54  48 00 00 6C */	b lbl_8005BE60
lbl_8005BDF8:
/* 8005BDF8 00057A58  54 80 04 3E */	clrlwi r0, r4, 0x10
/* 8005BDFC 00057A5C  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005BE00 00057A60  7C 80 C2 14 */	add r4, r0, r24
/* 8005BE04 00057A64  48 33 C7 DD */	bl func_803985E0
/* 8005BE08 00057A68  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BE0C 00057A6C  7C 80 DA 14 */	add r4, r0, r27
/* 8005BE10 00057A70  90 64 00 14 */	stw r3, 0x14(r4)
/* 8005BE14 00057A74  48 00 00 4C */	b lbl_8005BE60
lbl_8005BE18:
/* 8005BE18 00057A78  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BE1C 00057A7C  7C 60 DA 14 */	add r3, r0, r27
/* 8005BE20 00057A80  88 03 00 06 */	lbz r0, 6(r3)
/* 8005BE24 00057A84  28 00 00 01 */	cmplwi r0, 1
/* 8005BE28 00057A88  40 82 00 20 */	bne lbl_8005BE48
/* 8005BE2C 00057A8C  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005BE30 00057A90  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8005BE34 00057A94  48 33 C8 15 */	bl func_80398648
/* 8005BE38 00057A98  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BE3C 00057A9C  7C 80 DA 14 */	add r4, r0, r27
/* 8005BE40 00057AA0  90 64 00 14 */	stw r3, 0x14(r4)
/* 8005BE44 00057AA4  48 00 00 1C */	b lbl_8005BE60
lbl_8005BE48:
/* 8005BE48 00057AA8  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005BE4C 00057AAC  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8005BE50 00057AB0  48 33 C7 91 */	bl func_803985E0
/* 8005BE54 00057AB4  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BE58 00057AB8  7C 80 DA 14 */	add r4, r0, r27
/* 8005BE5C 00057ABC  90 64 00 14 */	stw r3, 0x14(r4)
lbl_8005BE60:
/* 8005BE60 00057AC0  80 77 00 24 */	lwz r3, 0x24(r23)
/* 8005BE64 00057AC4  A0 17 00 96 */	lhz r0, 0x96(r23)
/* 8005BE68 00057AC8  7C 63 DA 14 */	add r3, r3, r27
/* 8005BE6C 00057ACC  54 00 10 3A */	slwi r0, r0, 2
/* 8005BE70 00057AD0  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8005BE74 00057AD4  7C 77 02 14 */	add r3, r23, r0
/* 8005BE78 00057AD8  90 83 00 30 */	stw r4, 0x30(r3)
/* 8005BE7C 00057ADC  A0 17 00 96 */	lhz r0, 0x96(r23)
/* 8005BE80 00057AE0  54 00 08 3C */	slwi r0, r0, 1
/* 8005BE84 00057AE4  7C 77 02 14 */	add r3, r23, r0
/* 8005BE88 00057AE8  B3 23 00 74 */	sth r25, 0x74(r3)
/* 8005BE8C 00057AEC  A0 77 00 96 */	lhz r3, 0x96(r23)
/* 8005BE90 00057AF0  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BE94 00057AF4  38 63 00 01 */	addi r3, r3, 1
/* 8005BE98 00057AF8  B0 77 00 96 */	sth r3, 0x96(r23)
/* 8005BE9C 00057AFC  7C 60 DA 14 */	add r3, r0, r27
/* 8005BEA0 00057B00  9B C3 00 0D */	stb r30, 0xd(r3)
/* 8005BEA4 00057B04  48 00 01 40 */	b lbl_8005BFE4
lbl_8005BEA8:
/* 8005BEA8 00057B08  88 03 00 0C */	lbz r0, 0xc(r3)
/* 8005BEAC 00057B0C  2C 00 00 00 */	cmpwi r0, 0
/* 8005BEB0 00057B10  41 82 01 34 */	beq lbl_8005BFE4
/* 8005BEB4 00057B14  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8005BEB8 00057B18  38 60 03 E9 */	li r3, 0x3e9
/* 8005BEBC 00057B1C  48 17 F6 01 */	bl func_801DB4BC
/* 8005BEC0 00057B20  88 03 00 07 */	lbz r0, 7(r3)
/* 8005BEC4 00057B24  54 00 06 3C */	rlwinm r0, r0, 0, 0x18, 0x1e
/* 8005BEC8 00057B28  98 03 00 07 */	stb r0, 7(r3)
/* 8005BECC 00057B2C  80 83 00 28 */	lwz r4, 0x28(r3)
/* 8005BED0 00057B30  54 80 00 01 */	rlwinm. r0, r4, 0, 0, 0
/* 8005BED4 00057B34  41 82 00 0C */	beq lbl_8005BEE0
/* 8005BED8 00057B38  7C 03 20 50 */	subf r0, r3, r4
/* 8005BEDC 00057B3C  90 03 00 28 */	stw r0, 0x28(r3)
lbl_8005BEE0:
/* 8005BEE0 00057B40  80 03 00 08 */	lwz r0, 8(r3)
/* 8005BEE4 00057B44  2C 00 00 01 */	cmpwi r0, 1
/* 8005BEE8 00057B48  41 81 00 18 */	bgt lbl_8005BF00
/* 8005BEEC 00057B4C  80 83 00 48 */	lwz r4, 0x48(r3)
/* 8005BEF0 00057B50  54 80 00 01 */	rlwinm. r0, r4, 0, 0, 0
/* 8005BEF4 00057B54  41 82 00 0C */	beq lbl_8005BF00
/* 8005BEF8 00057B58  7C 03 20 50 */	subf r0, r3, r4
/* 8005BEFC 00057B5C  90 03 00 48 */	stw r0, 0x48(r3)
lbl_8005BF00:
/* 8005BF00 00057B60  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BF04 00057B64  7C 64 1B 78 */	mr r4, r3
/* 8005BF08 00057B68  38 A0 26 80 */	li r5, 0x2680
/* 8005BF0C 00057B6C  7C 60 DA 14 */	add r3, r0, r27
/* 8005BF10 00057B70  80 63 00 08 */	lwz r3, 8(r3)
/* 8005BF14 00057B74  4B FA 80 ED */	bl memcpy
/* 8005BF18 00057B78  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BF1C 00057B7C  38 60 03 E9 */	li r3, 0x3e9
/* 8005BF20 00057B80  7C 80 DA 14 */	add r4, r0, r27
/* 8005BF24 00057B84  80 84 00 14 */	lwz r4, 0x14(r4)
/* 8005BF28 00057B88  48 17 F7 1D */	bl func_801DB644
/* 8005BF2C 00057B8C  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BF30 00057B90  7C 60 DA 14 */	add r3, r0, r27
/* 8005BF34 00057B94  80 63 00 08 */	lwz r3, 8(r3)
/* 8005BF38 00057B98  48 1E 17 95 */	bl func_8023D6CC
/* 8005BF3C 00057B9C  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8005BF40 00057BA0  7C 78 1B 78 */	mr r24, r3
/* 8005BF44 00057BA4  88 04 00 7A */	lbz r0, 0x7a(r4)
/* 8005BF48 00057BA8  2C 00 00 00 */	cmpwi r0, 0
/* 8005BF4C 00057BAC  41 82 00 38 */	beq lbl_8005BF84
/* 8005BF50 00057BB0  2C 03 00 00 */	cmpwi r3, 0
/* 8005BF54 00057BB4  41 82 00 30 */	beq lbl_8005BF84
/* 8005BF58 00057BB8  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8005BF5C 00057BBC  2C 05 00 02 */	cmpwi r5, 2
/* 8005BF60 00057BC0  40 80 00 08 */	bge lbl_8005BF68
/* 8005BF64 00057BC4  38 A0 00 02 */	li r5, 2
lbl_8005BF68:
/* 8005BF68 00057BC8  80 98 00 18 */	lwz r4, 0x18(r24)
/* 8005BF6C 00057BCC  7F 03 C3 78 */	mr r3, r24
/* 8005BF70 00057BD0  2C 04 00 02 */	cmpwi r4, 2
/* 8005BF74 00057BD4  40 80 00 08 */	bge lbl_8005BF7C
/* 8005BF78 00057BD8  38 80 00 02 */	li r4, 2
lbl_8005BF7C:
/* 8005BF7C 00057BDC  80 D8 00 20 */	lwz r6, 0x20(r24)
/* 8005BF80 00057BE0  48 1E 24 49 */	bl func_8023E3C8
lbl_8005BF84:
/* 8005BF84 00057BE4  7F 03 C3 78 */	mr r3, r24
/* 8005BF88 00057BE8  38 80 26 80 */	li r4, 0x2680
/* 8005BF8C 00057BEC  48 20 E6 C9 */	bl DCFlushRange
/* 8005BF90 00057BF0  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005BF94 00057BF4  A0 03 16 FE */	lhz r0, 0x16fe(r3)
/* 8005BF98 00057BF8  60 00 00 02 */	ori r0, r0, 2
/* 8005BF9C 00057BFC  B0 03 16 FE */	sth r0, 0x16fe(r3)
/* 8005BFA0 00057C00  80 17 00 24 */	lwz r0, 0x24(r23)
/* 8005BFA4 00057C04  7C 60 DA 14 */	add r3, r0, r27
/* 8005BFA8 00057C08  9B E3 00 0D */	stb r31, 0xd(r3)
/* 8005BFAC 00057C0C  A0 77 00 96 */	lhz r3, 0x96(r23)
/* 8005BFB0 00057C10  38 63 FF FF */	addi r3, r3, -1
/* 8005BFB4 00057C14  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8005BFB8 00057C18  B0 77 00 96 */	sth r3, 0x96(r23)
/* 8005BFBC 00057C1C  7C 77 02 14 */	add r3, r23, r0
/* 8005BFC0 00057C20  93 83 00 30 */	stw r28, 0x30(r3)
/* 8005BFC4 00057C24  A0 17 00 96 */	lhz r0, 0x96(r23)
/* 8005BFC8 00057C28  54 00 08 3C */	slwi r0, r0, 1
/* 8005BFCC 00057C2C  7C 77 02 14 */	add r3, r23, r0
/* 8005BFD0 00057C30  B3 83 00 74 */	sth r28, 0x74(r3)
/* 8005BFD4 00057C34  A0 17 00 96 */	lhz r0, 0x96(r23)
/* 8005BFD8 00057C38  2C 00 00 00 */	cmpwi r0, 0
/* 8005BFDC 00057C3C  40 82 00 08 */	bne lbl_8005BFE4
/* 8005BFE0 00057C40  3B 40 00 01 */	li r26, 1
lbl_8005BFE4:
/* 8005BFE4 00057C44  3B 7B 00 28 */	addi r27, r27, 0x28
/* 8005BFE8 00057C48  3B 39 00 01 */	addi r25, r25, 1
lbl_8005BFEC:
/* 8005BFEC 00057C4C  80 17 00 28 */	lwz r0, 0x28(r23)
/* 8005BFF0 00057C50  7C 19 00 40 */	cmplw r25, r0
/* 8005BFF4 00057C54  41 80 FC F4 */	blt lbl_8005BCE8
/* 8005BFF8 00057C58  88 17 00 98 */	lbz r0, 0x98(r23)
/* 8005BFFC 00057C5C  2C 00 00 00 */	cmpwi r0, 0
/* 8005C000 00057C60  40 82 00 3C */	bne lbl_8005C03C
/* 8005C004 00057C64  A0 17 00 96 */	lhz r0, 0x96(r23)
/* 8005C008 00057C68  2C 00 00 00 */	cmpwi r0, 0
/* 8005C00C 00057C6C  41 82 00 30 */	beq lbl_8005C03C
/* 8005C010 00057C70  38 00 00 01 */	li r0, 1
/* 8005C014 00057C74  38 60 03 E9 */	li r3, 0x3e9
/* 8005C018 00057C78  98 17 00 98 */	stb r0, 0x98(r23)
/* 8005C01C 00057C7C  48 1E D9 51 */	bl func_8024996C
/* 8005C020 00057C80  3C A0 80 06 */	lis r5, lbl_8005BC90@ha
/* 8005C024 00057C84  A0 F7 00 96 */	lhz r7, 0x96(r23)
/* 8005C028 00057C88  38 97 00 30 */	addi r4, r23, 0x30
/* 8005C02C 00057C8C  38 60 03 E9 */	li r3, 0x3e9
/* 8005C030 00057C90  38 A5 BC 90 */	addi r5, r5, lbl_8005BC90@l
/* 8005C034 00057C94  38 C0 00 00 */	li r6, 0
/* 8005C038 00057C98  48 1E D7 85 */	bl func_802497BC
lbl_8005C03C:
/* 8005C03C 00057C9C  2C 1A 00 00 */	cmpwi r26, 0
/* 8005C040 00057CA0  41 82 00 14 */	beq lbl_8005C054
/* 8005C044 00057CA4  38 60 03 E9 */	li r3, 0x3e9
/* 8005C048 00057CA8  48 1E D9 25 */	bl func_8024996C
/* 8005C04C 00057CAC  38 00 00 00 */	li r0, 0
/* 8005C050 00057CB0  98 17 00 98 */	stb r0, 0x98(r23)
lbl_8005C054:
/* 8005C054 00057CB4  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C058 00057CB8  48 16 B1 09 */	bl _restgpr_22
/* 8005C05C 00057CBC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005C060 00057CC0  7C 08 03 A6 */	mtlr r0
/* 8005C064 00057CC4  38 21 00 30 */	addi r1, r1, 0x30
/* 8005C068 00057CC8  4E 80 00 20 */	blr

.global func_8005C06C
func_8005C06C:
/* 8005C06C 00057CCC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005C070 00057CD0  7C 08 02 A6 */	mflr r0
/* 8005C074 00057CD4  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005C078 00057CD8  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C07C 00057CDC  48 16 B0 A5 */	bl _savegpr_25
/* 8005C080 00057CE0  2C 04 00 00 */	cmpwi r4, 0
/* 8005C084 00057CE4  7C 7A 1B 78 */	mr r26, r3
/* 8005C088 00057CE8  7C 9B 23 78 */	mr r27, r4
/* 8005C08C 00057CEC  7C BC 2B 78 */	mr r28, r5
/* 8005C090 00057CF0  7C DD 33 78 */	mr r29, r6
/* 8005C094 00057CF4  3B E0 00 01 */	li r31, 1
/* 8005C098 00057CF8  41 82 00 0C */	beq lbl_8005C0A4
/* 8005C09C 00057CFC  28 04 01 EF */	cmplwi r4, 0x1ef
/* 8005C0A0 00057D00  40 81 00 0C */	ble lbl_8005C0AC
lbl_8005C0A4:
/* 8005C0A4 00057D04  38 60 00 01 */	li r3, 1
/* 8005C0A8 00057D08  48 00 02 34 */	b lbl_8005C2DC
lbl_8005C0AC:
/* 8005C0AC 00057D0C  80 63 00 A8 */	lwz r3, 0xa8(r3)
/* 8005C0B0 00057D10  48 33 A9 7D */	bl func_80396A2C
/* 8005C0B4 00057D14  3F 20 80 64 */	lis r25, lbl_8063CE34@ha
/* 8005C0B8 00057D18  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005C0BC 00057D1C  3B 39 CE 34 */	addi r25, r25, lbl_8063CE34@l
/* 8005C0C0 00057D20  38 79 00 64 */	addi r3, r25, 0x64
/* 8005C0C4 00057D24  48 33 C5 51 */	bl func_80398614
/* 8005C0C8 00057D28  7C 7E 1B 78 */	mr r30, r3
/* 8005C0CC 00057D2C  80 7A 00 A8 */	lwz r3, 0xa8(r26)
/* 8005C0D0 00057D30  7F 64 DB 78 */	mr r4, r27
/* 8005C0D4 00057D34  48 33 A9 59 */	bl func_80396A2C
/* 8005C0D8 00057D38  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005C0DC 00057D3C  38 79 00 64 */	addi r3, r25, 0x64
/* 8005C0E0 00057D40  48 33 C5 9D */	bl func_8039867C
/* 8005C0E4 00057D44  7C 03 F0 40 */	cmplw r3, r30
/* 8005C0E8 00057D48  57 9E 82 1E */	rlwinm r30, r28, 0x10, 8, 0xf
/* 8005C0EC 00057D4C  53 7E 04 3E */	rlwimi r30, r27, 0, 0x10, 0x1f
/* 8005C0F0 00057D50  40 82 00 08 */	bne lbl_8005C0F8
/* 8005C0F4 00057D54  7F 7E DB 78 */	mr r30, r27
lbl_8005C0F8:
/* 8005C0F8 00057D58  2C 1B 01 9E */	cmpwi r27, 0x19e
/* 8005C0FC 00057D5C  40 80 00 28 */	bge lbl_8005C124
/* 8005C100 00057D60  2C 1B 01 82 */	cmpwi r27, 0x182
/* 8005C104 00057D64  41 82 00 44 */	beq lbl_8005C148
/* 8005C108 00057D68  40 80 00 10 */	bge lbl_8005C118
/* 8005C10C 00057D6C  2C 1B 00 C9 */	cmpwi r27, 0xc9
/* 8005C110 00057D70  41 82 00 38 */	beq lbl_8005C148
/* 8005C114 00057D74  48 00 00 3C */	b lbl_8005C150
lbl_8005C118:
/* 8005C118 00057D78  2C 1B 01 9C */	cmpwi r27, 0x19c
/* 8005C11C 00057D7C  40 80 00 2C */	bge lbl_8005C148
/* 8005C120 00057D80  48 00 00 30 */	b lbl_8005C150
lbl_8005C124:
/* 8005C124 00057D84  2C 1B 01 ED */	cmpwi r27, 0x1ed
/* 8005C128 00057D88  40 80 00 18 */	bge lbl_8005C140
/* 8005C12C 00057D8C  2C 1B 01 A8 */	cmpwi r27, 0x1a8
/* 8005C130 00057D90  40 80 00 20 */	bge lbl_8005C150
/* 8005C134 00057D94  2C 1B 01 A5 */	cmpwi r27, 0x1a5
/* 8005C138 00057D98  40 80 00 10 */	bge lbl_8005C148
/* 8005C13C 00057D9C  48 00 00 14 */	b lbl_8005C150
lbl_8005C140:
/* 8005C140 00057DA0  2C 1B 01 EF */	cmpwi r27, 0x1ef
/* 8005C144 00057DA4  40 80 00 0C */	bge lbl_8005C150
lbl_8005C148:
/* 8005C148 00057DA8  57 A0 90 1A */	slwi r0, r29, 0x12
/* 8005C14C 00057DAC  7F DE 03 78 */	or r30, r30, r0
lbl_8005C150:
/* 8005C150 00057DB0  80 BA 00 B0 */	lwz r5, 0xb0(r26)
/* 8005C154 00057DB4  38 C0 00 00 */	li r6, 0
/* 8005C158 00057DB8  38 60 00 00 */	li r3, 0
/* 8005C15C 00057DBC  7C A9 03 A6 */	mtctr r5
/* 8005C160 00057DC0  28 05 00 00 */	cmplwi r5, 0
/* 8005C164 00057DC4  40 81 00 38 */	ble lbl_8005C19C
lbl_8005C168:
/* 8005C168 00057DC8  80 9A 00 AC */	lwz r4, 0xac(r26)
/* 8005C16C 00057DCC  7C 04 18 2E */	lwzx r0, r4, r3
/* 8005C170 00057DD0  7C 1E 00 40 */	cmplw r30, r0
/* 8005C174 00057DD4  40 82 00 1C */	bne lbl_8005C190
/* 8005C178 00057DD8  1C 06 00 28 */	mulli r0, r6, 0x28
/* 8005C17C 00057DDC  38 A0 00 02 */	li r5, 2
/* 8005C180 00057DE0  38 60 00 00 */	li r3, 0
/* 8005C184 00057DE4  7C 84 02 14 */	add r4, r4, r0
/* 8005C188 00057DE8  98 A4 00 0E */	stb r5, 0xe(r4)
/* 8005C18C 00057DEC  48 00 01 50 */	b lbl_8005C2DC
lbl_8005C190:
/* 8005C190 00057DF0  38 63 00 28 */	addi r3, r3, 0x28
/* 8005C194 00057DF4  38 C6 00 01 */	addi r6, r6, 1
/* 8005C198 00057DF8  42 00 FF D0 */	bdnz lbl_8005C168
lbl_8005C19C:
/* 8005C19C 00057DFC  80 DA 00 B4 */	lwz r6, 0xb4(r26)
/* 8005C1A0 00057E00  7C 06 28 50 */	subf r0, r6, r5
/* 8005C1A4 00057E04  7C C7 33 78 */	mr r7, r6
/* 8005C1A8 00057E08  1C 66 00 28 */	mulli r3, r6, 0x28
/* 8005C1AC 00057E0C  7C 09 03 A6 */	mtctr r0
/* 8005C1B0 00057E10  7C 06 28 40 */	cmplw r6, r5
/* 8005C1B4 00057E14  40 80 00 38 */	bge lbl_8005C1EC
lbl_8005C1B8:
/* 8005C1B8 00057E18  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C1BC 00057E1C  7C 80 1A 14 */	add r4, r0, r3
/* 8005C1C0 00057E20  88 04 00 0E */	lbz r0, 0xe(r4)
/* 8005C1C4 00057E24  2C 00 00 00 */	cmpwi r0, 0
/* 8005C1C8 00057E28  40 82 00 18 */	bne lbl_8005C1E0
/* 8005C1CC 00057E2C  88 04 00 0D */	lbz r0, 0xd(r4)
/* 8005C1D0 00057E30  28 00 00 02 */	cmplwi r0, 2
/* 8005C1D4 00057E34  41 82 00 0C */	beq lbl_8005C1E0
/* 8005C1D8 00057E38  3B E0 00 00 */	li r31, 0
/* 8005C1DC 00057E3C  48 00 00 10 */	b lbl_8005C1EC
lbl_8005C1E0:
/* 8005C1E0 00057E40  38 63 00 28 */	addi r3, r3, 0x28
/* 8005C1E4 00057E44  38 E7 00 01 */	addi r7, r7, 1
/* 8005C1E8 00057E48  42 00 FF D0 */	bdnz lbl_8005C1B8
lbl_8005C1EC:
/* 8005C1EC 00057E4C  2C 1F 00 00 */	cmpwi r31, 0
/* 8005C1F0 00057E50  41 82 00 4C */	beq lbl_8005C23C
/* 8005C1F4 00057E54  38 E0 00 00 */	li r7, 0
/* 8005C1F8 00057E58  38 60 00 00 */	li r3, 0
/* 8005C1FC 00057E5C  7C C9 03 A6 */	mtctr r6
/* 8005C200 00057E60  28 06 00 00 */	cmplwi r6, 0
/* 8005C204 00057E64  40 81 00 38 */	ble lbl_8005C23C
lbl_8005C208:
/* 8005C208 00057E68  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C20C 00057E6C  7C 80 1A 14 */	add r4, r0, r3
/* 8005C210 00057E70  88 04 00 0E */	lbz r0, 0xe(r4)
/* 8005C214 00057E74  2C 00 00 00 */	cmpwi r0, 0
/* 8005C218 00057E78  40 82 00 18 */	bne lbl_8005C230
/* 8005C21C 00057E7C  88 04 00 0D */	lbz r0, 0xd(r4)
/* 8005C220 00057E80  28 00 00 02 */	cmplwi r0, 2
/* 8005C224 00057E84  41 82 00 0C */	beq lbl_8005C230
/* 8005C228 00057E88  3B E0 00 00 */	li r31, 0
/* 8005C22C 00057E8C  48 00 00 10 */	b lbl_8005C23C
lbl_8005C230:
/* 8005C230 00057E90  38 63 00 28 */	addi r3, r3, 0x28
/* 8005C234 00057E94  38 E7 00 01 */	addi r7, r7, 1
/* 8005C238 00057E98  42 00 FF D0 */	bdnz lbl_8005C208
lbl_8005C23C:
/* 8005C23C 00057E9C  2C 1F 00 00 */	cmpwi r31, 0
/* 8005C240 00057EA0  41 82 00 0C */	beq lbl_8005C24C
/* 8005C244 00057EA4  38 60 00 01 */	li r3, 1
/* 8005C248 00057EA8  48 00 00 94 */	b lbl_8005C2DC
lbl_8005C24C:
/* 8005C24C 00057EAC  1F E7 00 28 */	mulli r31, r7, 0x28
/* 8005C250 00057EB0  80 7A 00 AC */	lwz r3, 0xac(r26)
/* 8005C254 00057EB4  7C 03 F8 2E */	lwzx r0, r3, r31
/* 8005C258 00057EB8  2C 00 00 00 */	cmpwi r0, 0
/* 8005C25C 00057EBC  41 82 00 10 */	beq lbl_8005C26C
/* 8005C260 00057EC0  7C 63 FA 14 */	add r3, r3, r31
/* 8005C264 00057EC4  80 63 00 08 */	lwz r3, 8(r3)
/* 8005C268 00057EC8  48 1E 20 69 */	bl func_8023E2D0
lbl_8005C26C:
/* 8005C26C 00057ECC  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C270 00057ED0  38 A0 00 01 */	li r5, 1
/* 8005C274 00057ED4  38 80 00 02 */	li r4, 2
/* 8005C278 00057ED8  7C 60 FA 14 */	add r3, r0, r31
/* 8005C27C 00057EDC  B3 63 00 04 */	sth r27, 4(r3)
/* 8005C280 00057EE0  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C284 00057EE4  7C 60 FA 14 */	add r3, r0, r31
/* 8005C288 00057EE8  9B 83 00 06 */	stb r28, 6(r3)
/* 8005C28C 00057EEC  80 7A 00 AC */	lwz r3, 0xac(r26)
/* 8005C290 00057EF0  7F C3 F9 2E */	stwx r30, r3, r31
/* 8005C294 00057EF4  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C298 00057EF8  7C 60 FA 14 */	add r3, r0, r31
/* 8005C29C 00057EFC  98 A3 00 0D */	stb r5, 0xd(r3)
/* 8005C2A0 00057F00  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C2A4 00057F04  7C 60 FA 14 */	add r3, r0, r31
/* 8005C2A8 00057F08  98 83 00 0E */	stb r4, 0xe(r3)
/* 8005C2AC 00057F0C  80 1A 00 AC */	lwz r0, 0xac(r26)
/* 8005C2B0 00057F10  7C 60 FA 14 */	add r3, r0, r31
/* 8005C2B4 00057F14  B3 A3 00 10 */	sth r29, 0x10(r3)
/* 8005C2B8 00057F18  80 7A 00 B4 */	lwz r3, 0xb4(r26)
/* 8005C2BC 00057F1C  80 1A 00 B0 */	lwz r0, 0xb0(r26)
/* 8005C2C0 00057F20  38 63 00 01 */	addi r3, r3, 1
/* 8005C2C4 00057F24  7C 03 00 40 */	cmplw r3, r0
/* 8005C2C8 00057F28  90 7A 00 B4 */	stw r3, 0xb4(r26)
/* 8005C2CC 00057F2C  40 82 00 0C */	bne lbl_8005C2D8
/* 8005C2D0 00057F30  38 00 00 00 */	li r0, 0
/* 8005C2D4 00057F34  90 1A 00 B4 */	stw r0, 0xb4(r26)
lbl_8005C2D8:
/* 8005C2D8 00057F38  38 60 00 00 */	li r3, 0
lbl_8005C2DC:
/* 8005C2DC 00057F3C  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C2E0 00057F40  48 16 AE 8D */	bl _restgpr_25
/* 8005C2E4 00057F44  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005C2E8 00057F48  7C 08 03 A6 */	mtlr r0
/* 8005C2EC 00057F4C  38 21 00 30 */	addi r1, r1, 0x30
/* 8005C2F0 00057F50  4E 80 00 20 */	blr

.global func_8005C2F4
func_8005C2F4:
/* 8005C2F4 00057F54  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 8005C2F8 00057F58  7C 08 02 A6 */	mflr r0
/* 8005C2FC 00057F5C  90 01 00 74 */	stw r0, 0x74(r1)
/* 8005C300 00057F60  DB E1 00 60 */	stfd f31, 0x60(r1)
/* 8005C304 00057F64  F3 E1 00 68 */	psq_st f31, 104(r1), 0, qr0
/* 8005C308 00057F68  DB C1 00 50 */	stfd f30, 0x50(r1)
/* 8005C30C 00057F6C  F3 C1 00 58 */	psq_st f30, 88(r1), 0, qr0
/* 8005C310 00057F70  DB A1 00 40 */	stfd f29, 0x40(r1)
/* 8005C314 00057F74  F3 A1 00 48 */	psq_st f29, 72(r1), 0, qr0
/* 8005C318 00057F78  DB 81 00 30 */	stfd f28, 0x30(r1)
/* 8005C31C 00057F7C  F3 81 00 38 */	psq_st f28, 56(r1), 0, qr0
/* 8005C320 00057F80  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C324 00057F84  48 16 AD F9 */	bl _savegpr_24
/* 8005C328 00057F88  2C 04 00 00 */	cmpwi r4, 0
/* 8005C32C 00057F8C  7C 7E 1B 78 */	mr r30, r3
/* 8005C330 00057F90  7C 98 23 78 */	mr r24, r4
/* 8005C334 00057F94  7C B9 2B 78 */	mr r25, r5
/* 8005C338 00057F98  7C DA 33 78 */	mr r26, r6
/* 8005C33C 00057F9C  7C FF 3B 78 */	mr r31, r7
/* 8005C340 00057FA0  7D 1B 43 78 */	mr r27, r8
/* 8005C344 00057FA4  41 82 00 0C */	beq lbl_8005C350
/* 8005C348 00057FA8  28 04 01 EF */	cmplwi r4, 0x1ef
/* 8005C34C 00057FAC  40 81 00 34 */	ble lbl_8005C380
lbl_8005C350:
/* 8005C350 00057FB0  C0 22 85 E0 */	lfs f1, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005C354 00057FB4  38 60 00 00 */	li r3, 0
/* 8005C358 00057FB8  C0 02 85 E4 */	lfs f0, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005C35C 00057FBC  D0 27 00 0C */	stfs f1, 0xc(r7)
/* 8005C360 00057FC0  D0 27 00 04 */	stfs f1, 4(r7)
/* 8005C364 00057FC4  D0 27 00 18 */	stfs f1, 0x18(r7)
/* 8005C368 00057FC8  D0 27 00 00 */	stfs f1, 0(r7)
/* 8005C36C 00057FCC  D0 07 00 1C */	stfs f0, 0x1c(r7)
/* 8005C370 00057FD0  D0 07 00 14 */	stfs f0, 0x14(r7)
/* 8005C374 00057FD4  D0 07 00 10 */	stfs f0, 0x10(r7)
/* 8005C378 00057FD8  D0 07 00 08 */	stfs f0, 8(r7)
/* 8005C37C 00057FDC  48 00 01 DC */	b lbl_8005C558
lbl_8005C380:
/* 8005C380 00057FE0  80 63 00 A8 */	lwz r3, 0xa8(r3)
/* 8005C384 00057FE4  48 33 A6 A9 */	bl func_80396A2C
/* 8005C388 00057FE8  3F 80 80 64 */	lis r28, lbl_8063CE34@ha
/* 8005C38C 00057FEC  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005C390 00057FF0  3B 9C CE 34 */	addi r28, r28, lbl_8063CE34@l
/* 8005C394 00057FF4  38 7C 00 64 */	addi r3, r28, 0x64
/* 8005C398 00057FF8  48 33 C2 7D */	bl func_80398614
/* 8005C39C 00057FFC  7C 7D 1B 78 */	mr r29, r3
/* 8005C3A0 00058000  80 7E 00 A8 */	lwz r3, 0xa8(r30)
/* 8005C3A4 00058004  7F 04 C3 78 */	mr r4, r24
/* 8005C3A8 00058008  48 33 A6 85 */	bl func_80396A2C
/* 8005C3AC 0005800C  54 64 04 3E */	clrlwi r4, r3, 0x10
/* 8005C3B0 00058010  38 7C 00 64 */	addi r3, r28, 0x64
/* 8005C3B4 00058014  48 33 C2 C9 */	bl func_8039867C
/* 8005C3B8 00058018  7C 03 E8 40 */	cmplw r3, r29
/* 8005C3BC 0005801C  57 26 82 1E */	rlwinm r6, r25, 0x10, 8, 0xf
/* 8005C3C0 00058020  53 06 04 3E */	rlwimi r6, r24, 0, 0x10, 0x1f
/* 8005C3C4 00058024  40 82 00 08 */	bne lbl_8005C3CC
/* 8005C3C8 00058028  7F 06 C3 78 */	mr r6, r24
lbl_8005C3CC:
/* 8005C3CC 0005802C  2C 18 01 9E */	cmpwi r24, 0x19e
/* 8005C3D0 00058030  40 80 00 28 */	bge lbl_8005C3F8
/* 8005C3D4 00058034  2C 18 01 82 */	cmpwi r24, 0x182
/* 8005C3D8 00058038  41 82 00 44 */	beq lbl_8005C41C
/* 8005C3DC 0005803C  40 80 00 10 */	bge lbl_8005C3EC
/* 8005C3E0 00058040  2C 18 00 C9 */	cmpwi r24, 0xc9
/* 8005C3E4 00058044  41 82 00 38 */	beq lbl_8005C41C
/* 8005C3E8 00058048  48 00 00 3C */	b lbl_8005C424
lbl_8005C3EC:
/* 8005C3EC 0005804C  2C 18 01 9C */	cmpwi r24, 0x19c
/* 8005C3F0 00058050  40 80 00 2C */	bge lbl_8005C41C
/* 8005C3F4 00058054  48 00 00 30 */	b lbl_8005C424
lbl_8005C3F8:
/* 8005C3F8 00058058  2C 18 01 ED */	cmpwi r24, 0x1ed
/* 8005C3FC 0005805C  40 80 00 18 */	bge lbl_8005C414
/* 8005C400 00058060  2C 18 01 A8 */	cmpwi r24, 0x1a8
/* 8005C404 00058064  40 80 00 20 */	bge lbl_8005C424
/* 8005C408 00058068  2C 18 01 A5 */	cmpwi r24, 0x1a5
/* 8005C40C 0005806C  40 80 00 10 */	bge lbl_8005C41C
/* 8005C410 00058070  48 00 00 14 */	b lbl_8005C424
lbl_8005C414:
/* 8005C414 00058074  2C 18 01 EF */	cmpwi r24, 0x1ef
/* 8005C418 00058078  40 80 00 0C */	bge lbl_8005C424
lbl_8005C41C:
/* 8005C41C 0005807C  57 60 90 1A */	slwi r0, r27, 0x12
/* 8005C420 00058080  7C C6 03 78 */	or r6, r6, r0
lbl_8005C424:
/* 8005C424 00058084  80 1E 00 B0 */	lwz r0, 0xb0(r30)
/* 8005C428 00058088  38 A0 00 00 */	li r5, 0
/* 8005C42C 0005808C  38 60 00 00 */	li r3, 0
/* 8005C430 00058090  7C 09 03 A6 */	mtctr r0
/* 8005C434 00058094  28 00 00 00 */	cmplwi r0, 0
/* 8005C438 00058098  40 81 00 F4 */	ble lbl_8005C52C
lbl_8005C43C:
/* 8005C43C 0005809C  80 9E 00 AC */	lwz r4, 0xac(r30)
/* 8005C440 000580A0  7C 04 18 2E */	lwzx r0, r4, r3
/* 8005C444 000580A4  7C 06 00 40 */	cmplw r6, r0
/* 8005C448 000580A8  40 82 00 D8 */	bne lbl_8005C520
/* 8005C44C 000580AC  1F 85 00 28 */	mulli r28, r5, 0x28
/* 8005C450 000580B0  7C 64 E2 14 */	add r3, r4, r28
/* 8005C454 000580B4  88 03 00 0D */	lbz r0, 0xd(r3)
/* 8005C458 000580B8  28 00 00 03 */	cmplwi r0, 3
/* 8005C45C 000580BC  40 82 00 84 */	bne lbl_8005C4E0
/* 8005C460 000580C0  C3 A2 85 E0 */	lfs f29, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005C464 000580C4  C3 82 85 E4 */	lfs f28, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005C468 000580C8  FF E0 E8 90 */	fmr f31, f29
/* 8005C46C 000580CC  80 63 00 08 */	lwz r3, 8(r3)
/* 8005C470 000580D0  FF C0 E0 90 */	fmr f30, f28
/* 8005C474 000580D4  48 1E 20 D5 */	bl func_8023E548
/* 8005C478 000580D8  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005C47C 000580DC  28 00 00 36 */	cmplwi r0, 0x36
/* 8005C480 000580E0  40 81 00 20 */	ble lbl_8005C4A0
/* 8005C484 000580E4  2C 1A 00 00 */	cmpwi r26, 0
/* 8005C488 000580E8  41 82 00 10 */	beq lbl_8005C498
/* 8005C48C 000580EC  C3 A2 85 E8 */	lfs f29, lbl_80640BE8-_SDA2_BASE_(r2)
/* 8005C490 000580F0  C3 82 85 E4 */	lfs f28, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005C494 000580F4  48 00 00 0C */	b lbl_8005C4A0
lbl_8005C498:
/* 8005C498 000580F8  C3 A2 85 E0 */	lfs f29, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005C49C 000580FC  C3 82 85 E8 */	lfs f28, lbl_80640BE8-_SDA2_BASE_(r2)
lbl_8005C4A0:
/* 8005C4A0 00058100  D3 FF 00 18 */	stfs f31, 0x18(r31)
/* 8005C4A4 00058104  38 80 00 02 */	li r4, 2
/* 8005C4A8 00058108  D3 FF 00 00 */	stfs f31, 0(r31)
/* 8005C4AC 0005810C  D3 DF 00 10 */	stfs f30, 0x10(r31)
/* 8005C4B0 00058110  D3 DF 00 08 */	stfs f30, 8(r31)
/* 8005C4B4 00058114  D3 BF 00 0C */	stfs f29, 0xc(r31)
/* 8005C4B8 00058118  D3 BF 00 04 */	stfs f29, 4(r31)
/* 8005C4BC 0005811C  D3 9F 00 1C */	stfs f28, 0x1c(r31)
/* 8005C4C0 00058120  D3 9F 00 14 */	stfs f28, 0x14(r31)
/* 8005C4C4 00058124  80 1E 00 AC */	lwz r0, 0xac(r30)
/* 8005C4C8 00058128  7C 60 E2 14 */	add r3, r0, r28
/* 8005C4CC 0005812C  98 83 00 0E */	stb r4, 0xe(r3)
/* 8005C4D0 00058130  80 1E 00 AC */	lwz r0, 0xac(r30)
/* 8005C4D4 00058134  7C 60 E2 14 */	add r3, r0, r28
/* 8005C4D8 00058138  80 63 00 08 */	lwz r3, 8(r3)
/* 8005C4DC 0005813C  48 00 00 7C */	b lbl_8005C558
lbl_8005C4E0:
/* 8005C4E0 00058140  C0 22 85 E0 */	lfs f1, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005C4E4 00058144  38 A0 00 02 */	li r5, 2
/* 8005C4E8 00058148  C0 02 85 E4 */	lfs f0, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005C4EC 0005814C  38 60 00 00 */	li r3, 0
/* 8005C4F0 00058150  D0 3F 00 0C */	stfs f1, 0xc(r31)
/* 8005C4F4 00058154  D0 3F 00 04 */	stfs f1, 4(r31)
/* 8005C4F8 00058158  D0 3F 00 18 */	stfs f1, 0x18(r31)
/* 8005C4FC 0005815C  D0 3F 00 00 */	stfs f1, 0(r31)
/* 8005C500 00058160  D0 1F 00 1C */	stfs f0, 0x1c(r31)
/* 8005C504 00058164  D0 1F 00 14 */	stfs f0, 0x14(r31)
/* 8005C508 00058168  D0 1F 00 10 */	stfs f0, 0x10(r31)
/* 8005C50C 0005816C  D0 1F 00 08 */	stfs f0, 8(r31)
/* 8005C510 00058170  80 1E 00 AC */	lwz r0, 0xac(r30)
/* 8005C514 00058174  7C 80 E2 14 */	add r4, r0, r28
/* 8005C518 00058178  98 A4 00 0E */	stb r5, 0xe(r4)
/* 8005C51C 0005817C  48 00 00 3C */	b lbl_8005C558
lbl_8005C520:
/* 8005C520 00058180  38 63 00 28 */	addi r3, r3, 0x28
/* 8005C524 00058184  38 A5 00 01 */	addi r5, r5, 1
/* 8005C528 00058188  42 00 FF 14 */	bdnz lbl_8005C43C
lbl_8005C52C:
/* 8005C52C 0005818C  C0 22 85 E0 */	lfs f1, lbl_80640BE0-_SDA2_BASE_(r2)
/* 8005C530 00058190  38 60 00 00 */	li r3, 0
/* 8005C534 00058194  C0 02 85 E4 */	lfs f0, lbl_80640BE4-_SDA2_BASE_(r2)
/* 8005C538 00058198  D0 3F 00 0C */	stfs f1, 0xc(r31)
/* 8005C53C 0005819C  D0 3F 00 04 */	stfs f1, 4(r31)
/* 8005C540 000581A0  D0 3F 00 18 */	stfs f1, 0x18(r31)
/* 8005C544 000581A4  D0 3F 00 00 */	stfs f1, 0(r31)
/* 8005C548 000581A8  D0 1F 00 1C */	stfs f0, 0x1c(r31)
/* 8005C54C 000581AC  D0 1F 00 14 */	stfs f0, 0x14(r31)
/* 8005C550 000581B0  D0 1F 00 10 */	stfs f0, 0x10(r31)
/* 8005C554 000581B4  D0 1F 00 08 */	stfs f0, 8(r31)
lbl_8005C558:
/* 8005C558 000581B8  E3 E1 00 68 */	psq_l f31, 104(r1), 0, qr0
/* 8005C55C 000581BC  CB E1 00 60 */	lfd f31, 0x60(r1)
/* 8005C560 000581C0  E3 C1 00 58 */	psq_l f30, 88(r1), 0, qr0
/* 8005C564 000581C4  CB C1 00 50 */	lfd f30, 0x50(r1)
/* 8005C568 000581C8  E3 A1 00 48 */	psq_l f29, 72(r1), 0, qr0
/* 8005C56C 000581CC  CB A1 00 40 */	lfd f29, 0x40(r1)
/* 8005C570 000581D0  E3 81 00 38 */	psq_l f28, 56(r1), 0, qr0
/* 8005C574 000581D4  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C578 000581D8  CB 81 00 30 */	lfd f28, 0x30(r1)
/* 8005C57C 000581DC  48 16 AB ED */	bl _restgpr_24
/* 8005C580 000581E0  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8005C584 000581E4  7C 08 03 A6 */	mtlr r0
/* 8005C588 000581E8  38 21 00 70 */	addi r1, r1, 0x70
/* 8005C58C 000581EC  4E 80 00 20 */	blr
lbl_8005C590:
/* 8005C590 000581F0  7C 66 1B 78 */	mr r6, r3
/* 8005C594 000581F4  38 E0 00 00 */	li r7, 0
/* 8005C598 000581F8  38 A0 00 01 */	li r5, 1
/* 8005C59C 000581FC  48 00 00 20 */	b lbl_8005C5BC
lbl_8005C5A0:
/* 8005C5A0 00058200  A0 06 00 FC */	lhz r0, 0xfc(r6)
/* 8005C5A4 00058204  38 C6 00 02 */	addi r6, r6, 2
/* 8005C5A8 00058208  80 83 00 AC */	lwz r4, 0xac(r3)
/* 8005C5AC 0005820C  38 E7 00 01 */	addi r7, r7, 1
/* 8005C5B0 00058210  1C 00 00 28 */	mulli r0, r0, 0x28
/* 8005C5B4 00058214  7C 84 02 14 */	add r4, r4, r0
/* 8005C5B8 00058218  98 A4 00 0C */	stb r5, 0xc(r4)
lbl_8005C5BC:
/* 8005C5BC 0005821C  A0 03 01 1E */	lhz r0, 0x11e(r3)
/* 8005C5C0 00058220  7C 07 00 40 */	cmplw r7, r0
/* 8005C5C4 00058224  41 80 FF DC */	blt lbl_8005C5A0
/* 8005C5C8 00058228  4E 80 00 20 */	blr
lbl_8005C5CC:
/* 8005C5CC 0005822C  3C 60 80 48 */	lis r3, lbl_80478178@ha
/* 8005C5D0 00058230  54 A4 04 3E */	clrlwi r4, r5, 0x10
/* 8005C5D4 00058234  38 63 81 78 */	addi r3, r3, lbl_80478178@l
/* 8005C5D8 00058238  4B FF FF B8 */	b lbl_8005C590

.global func_8005C5DC
func_8005C5DC:
/* 8005C5DC 0005823C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005C5E0 00058240  7C 08 02 A6 */	mflr r0
/* 8005C5E4 00058244  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005C5E8 00058248  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C5EC 0005824C  48 16 AB 29 */	bl _savegpr_22
/* 8005C5F0 00058250  88 0D 99 07 */	lbz r0, lbl_8063EBC7-_SDA_BASE_(r13)
/* 8005C5F4 00058254  7C 77 1B 78 */	mr r23, r3
/* 8005C5F8 00058258  3B 40 00 00 */	li r26, 0
/* 8005C5FC 0005825C  2C 00 00 00 */	cmpwi r0, 0
/* 8005C600 00058260  41 82 03 90 */	beq lbl_8005C990
/* 8005C604 00058264  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005C608 00058268  3B 20 00 00 */	li r25, 0
/* 8005C60C 0005826C  3B 60 00 00 */	li r27, 0
/* 8005C610 00058270  3B 80 00 00 */	li r28, 0
/* 8005C614 00058274  3B A3 CE 34 */	addi r29, r3, lbl_8063CE34@l
/* 8005C618 00058278  3B E0 00 03 */	li r31, 3
/* 8005C61C 0005827C  3B C0 00 02 */	li r30, 2
/* 8005C620 00058280  48 00 03 08 */	b lbl_8005C928
lbl_8005C624:
/* 8005C624 00058284  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C628 00058288  7C 80 DA 14 */	add r4, r0, r27
/* 8005C62C 0005828C  7C 1B 00 2E */	lwzx r0, r27, r0
/* 8005C630 00058290  2C 00 00 00 */	cmpwi r0, 0
/* 8005C634 00058294  41 82 02 EC */	beq lbl_8005C920
/* 8005C638 00058298  88 64 00 0E */	lbz r3, 0xe(r4)
/* 8005C63C 0005829C  2C 03 00 00 */	cmpwi r3, 0
/* 8005C640 000582A0  41 82 00 0C */	beq lbl_8005C64C
/* 8005C644 000582A4  38 03 FF FF */	addi r0, r3, -1
/* 8005C648 000582A8  98 04 00 0E */	stb r0, 0xe(r4)
lbl_8005C64C:
/* 8005C64C 000582AC  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C650 000582B0  7C 60 DA 14 */	add r3, r0, r27
/* 8005C654 000582B4  88 03 00 0D */	lbz r0, 0xd(r3)
/* 8005C658 000582B8  2C 00 00 02 */	cmpwi r0, 2
/* 8005C65C 000582BC  41 82 01 88 */	beq lbl_8005C7E4
/* 8005C660 000582C0  40 80 02 C0 */	bge lbl_8005C920
/* 8005C664 000582C4  2C 00 00 01 */	cmpwi r0, 1
/* 8005C668 000582C8  40 80 00 0C */	bge lbl_8005C674
/* 8005C66C 000582CC  48 00 02 B4 */	b lbl_8005C920
/* 8005C670 000582D0  48 00 02 B0 */	b lbl_8005C920
lbl_8005C674:
/* 8005C674 000582D4  88 17 01 20 */	lbz r0, 0x120(r23)
/* 8005C678 000582D8  A2 C3 00 04 */	lhz r22, 4(r3)
/* 8005C67C 000582DC  2C 00 00 00 */	cmpwi r0, 0
/* 8005C680 000582E0  A3 03 00 10 */	lhz r24, 0x10(r3)
/* 8005C684 000582E4  40 82 02 9C */	bne lbl_8005C920
/* 8005C688 000582E8  A0 17 01 1E */	lhz r0, 0x11e(r23)
/* 8005C68C 000582EC  28 00 00 10 */	cmplwi r0, 0x10
/* 8005C690 000582F0  40 80 02 90 */	bge lbl_8005C920
/* 8005C694 000582F4  80 77 00 A8 */	lwz r3, 0xa8(r23)
/* 8005C698 000582F8  7E C4 B3 78 */	mr r4, r22
/* 8005C69C 000582FC  48 33 A3 91 */	bl func_80396A2C
/* 8005C6A0 00058300  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C6A4 00058304  7C 64 1B 78 */	mr r4, r3
/* 8005C6A8 00058308  2C 16 01 9E */	cmpwi r22, 0x19e
/* 8005C6AC 0005830C  7C 60 DA 14 */	add r3, r0, r27
/* 8005C6B0 00058310  9B 83 00 0C */	stb r28, 0xc(r3)
/* 8005C6B4 00058314  40 80 00 28 */	bge lbl_8005C6DC
/* 8005C6B8 00058318  2C 16 01 82 */	cmpwi r22, 0x182
/* 8005C6BC 0005831C  41 82 00 44 */	beq lbl_8005C700
/* 8005C6C0 00058320  40 80 00 10 */	bge lbl_8005C6D0
/* 8005C6C4 00058324  2C 16 00 C9 */	cmpwi r22, 0xc9
/* 8005C6C8 00058328  41 82 00 38 */	beq lbl_8005C700
/* 8005C6CC 0005832C  48 00 00 88 */	b lbl_8005C754
lbl_8005C6D0:
/* 8005C6D0 00058330  2C 16 01 9C */	cmpwi r22, 0x19c
/* 8005C6D4 00058334  40 80 00 2C */	bge lbl_8005C700
/* 8005C6D8 00058338  48 00 00 7C */	b lbl_8005C754
lbl_8005C6DC:
/* 8005C6DC 0005833C  2C 16 01 ED */	cmpwi r22, 0x1ed
/* 8005C6E0 00058340  40 80 00 18 */	bge lbl_8005C6F8
/* 8005C6E4 00058344  2C 16 01 A8 */	cmpwi r22, 0x1a8
/* 8005C6E8 00058348  40 80 00 6C */	bge lbl_8005C754
/* 8005C6EC 0005834C  2C 16 01 A5 */	cmpwi r22, 0x1a5
/* 8005C6F0 00058350  40 80 00 10 */	bge lbl_8005C700
/* 8005C6F4 00058354  48 00 00 60 */	b lbl_8005C754
lbl_8005C6F8:
/* 8005C6F8 00058358  2C 16 01 EF */	cmpwi r22, 0x1ef
/* 8005C6FC 0005835C  40 80 00 58 */	bge lbl_8005C754
lbl_8005C700:
/* 8005C700 00058360  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C704 00058364  7C 60 DA 14 */	add r3, r0, r27
/* 8005C708 00058368  88 03 00 06 */	lbz r0, 6(r3)
/* 8005C70C 0005836C  28 00 00 01 */	cmplwi r0, 1
/* 8005C710 00058370  40 82 00 24 */	bne lbl_8005C734
/* 8005C714 00058374  54 80 04 3E */	clrlwi r0, r4, 0x10
/* 8005C718 00058378  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005C71C 0005837C  7C 80 C2 14 */	add r4, r0, r24
/* 8005C720 00058380  48 33 BF 5D */	bl func_8039867C
/* 8005C724 00058384  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C728 00058388  7C 80 DA 14 */	add r4, r0, r27
/* 8005C72C 0005838C  90 64 00 14 */	stw r3, 0x14(r4)
/* 8005C730 00058390  48 00 00 6C */	b lbl_8005C79C
lbl_8005C734:
/* 8005C734 00058394  54 80 04 3E */	clrlwi r0, r4, 0x10
/* 8005C738 00058398  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005C73C 0005839C  7C 80 C2 14 */	add r4, r0, r24
/* 8005C740 000583A0  48 33 BE D5 */	bl func_80398614
/* 8005C744 000583A4  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C748 000583A8  7C 80 DA 14 */	add r4, r0, r27
/* 8005C74C 000583AC  90 64 00 14 */	stw r3, 0x14(r4)
/* 8005C750 000583B0  48 00 00 4C */	b lbl_8005C79C
lbl_8005C754:
/* 8005C754 000583B4  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C758 000583B8  7C 60 DA 14 */	add r3, r0, r27
/* 8005C75C 000583BC  88 03 00 06 */	lbz r0, 6(r3)
/* 8005C760 000583C0  28 00 00 01 */	cmplwi r0, 1
/* 8005C764 000583C4  40 82 00 20 */	bne lbl_8005C784
/* 8005C768 000583C8  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005C76C 000583CC  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8005C770 000583D0  48 33 BF 0D */	bl func_8039867C
/* 8005C774 000583D4  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C778 000583D8  7C 80 DA 14 */	add r4, r0, r27
/* 8005C77C 000583DC  90 64 00 14 */	stw r3, 0x14(r4)
/* 8005C780 000583E0  48 00 00 1C */	b lbl_8005C79C
lbl_8005C784:
/* 8005C784 000583E4  38 7D 00 64 */	addi r3, r29, 0x64
/* 8005C788 000583E8  54 84 04 3E */	clrlwi r4, r4, 0x10
/* 8005C78C 000583EC  48 33 BE 89 */	bl func_80398614
/* 8005C790 000583F0  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C794 000583F4  7C 80 DA 14 */	add r4, r0, r27
/* 8005C798 000583F8  90 64 00 14 */	stw r3, 0x14(r4)
lbl_8005C79C:
/* 8005C79C 000583FC  80 77 00 AC */	lwz r3, 0xac(r23)
/* 8005C7A0 00058400  A0 17 01 1E */	lhz r0, 0x11e(r23)
/* 8005C7A4 00058404  7C 63 DA 14 */	add r3, r3, r27
/* 8005C7A8 00058408  54 00 10 3A */	slwi r0, r0, 2
/* 8005C7AC 0005840C  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8005C7B0 00058410  7C 77 02 14 */	add r3, r23, r0
/* 8005C7B4 00058414  90 83 00 B8 */	stw r4, 0xb8(r3)
/* 8005C7B8 00058418  A0 17 01 1E */	lhz r0, 0x11e(r23)
/* 8005C7BC 0005841C  54 00 08 3C */	slwi r0, r0, 1
/* 8005C7C0 00058420  7C 77 02 14 */	add r3, r23, r0
/* 8005C7C4 00058424  B3 23 00 FC */	sth r25, 0xfc(r3)
/* 8005C7C8 00058428  A0 77 01 1E */	lhz r3, 0x11e(r23)
/* 8005C7CC 0005842C  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C7D0 00058430  38 63 00 01 */	addi r3, r3, 1
/* 8005C7D4 00058434  B0 77 01 1E */	sth r3, 0x11e(r23)
/* 8005C7D8 00058438  7C 60 DA 14 */	add r3, r0, r27
/* 8005C7DC 0005843C  9B C3 00 0D */	stb r30, 0xd(r3)
/* 8005C7E0 00058440  48 00 01 40 */	b lbl_8005C920
lbl_8005C7E4:
/* 8005C7E4 00058444  88 03 00 0C */	lbz r0, 0xc(r3)
/* 8005C7E8 00058448  2C 00 00 00 */	cmpwi r0, 0
/* 8005C7EC 0005844C  41 82 01 34 */	beq lbl_8005C920
/* 8005C7F0 00058450  80 83 00 14 */	lwz r4, 0x14(r3)
/* 8005C7F4 00058454  38 60 03 EE */	li r3, 0x3ee
/* 8005C7F8 00058458  48 17 EC C5 */	bl func_801DB4BC
/* 8005C7FC 0005845C  88 03 00 07 */	lbz r0, 7(r3)
/* 8005C800 00058460  54 00 06 3C */	rlwinm r0, r0, 0, 0x18, 0x1e
/* 8005C804 00058464  98 03 00 07 */	stb r0, 7(r3)
/* 8005C808 00058468  80 83 00 28 */	lwz r4, 0x28(r3)
/* 8005C80C 0005846C  54 80 00 01 */	rlwinm. r0, r4, 0, 0, 0
/* 8005C810 00058470  41 82 00 0C */	beq lbl_8005C81C
/* 8005C814 00058474  7C 03 20 50 */	subf r0, r3, r4
/* 8005C818 00058478  90 03 00 28 */	stw r0, 0x28(r3)
lbl_8005C81C:
/* 8005C81C 0005847C  80 03 00 08 */	lwz r0, 8(r3)
/* 8005C820 00058480  2C 00 00 01 */	cmpwi r0, 1
/* 8005C824 00058484  41 81 00 18 */	bgt lbl_8005C83C
/* 8005C828 00058488  80 83 00 48 */	lwz r4, 0x48(r3)
/* 8005C82C 0005848C  54 80 00 01 */	rlwinm. r0, r4, 0, 0, 0
/* 8005C830 00058490  41 82 00 0C */	beq lbl_8005C83C
/* 8005C834 00058494  7C 03 20 50 */	subf r0, r3, r4
/* 8005C838 00058498  90 03 00 48 */	stw r0, 0x48(r3)
lbl_8005C83C:
/* 8005C83C 0005849C  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C840 000584A0  7C 64 1B 78 */	mr r4, r3
/* 8005C844 000584A4  38 A0 31 C0 */	li r5, 0x31c0
/* 8005C848 000584A8  7C 60 DA 14 */	add r3, r0, r27
/* 8005C84C 000584AC  80 63 00 08 */	lwz r3, 8(r3)
/* 8005C850 000584B0  4B FA 77 B1 */	bl memcpy
/* 8005C854 000584B4  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C858 000584B8  38 60 03 EE */	li r3, 0x3ee
/* 8005C85C 000584BC  7C 80 DA 14 */	add r4, r0, r27
/* 8005C860 000584C0  80 84 00 14 */	lwz r4, 0x14(r4)
/* 8005C864 000584C4  48 17 ED E1 */	bl func_801DB644
/* 8005C868 000584C8  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C86C 000584CC  7C 60 DA 14 */	add r3, r0, r27
/* 8005C870 000584D0  80 63 00 08 */	lwz r3, 8(r3)
/* 8005C874 000584D4  48 1E 0E 59 */	bl func_8023D6CC
/* 8005C878 000584D8  80 8D A3 D8 */	lwz r4, lbl_8063F698-_SDA_BASE_(r13)
/* 8005C87C 000584DC  7C 78 1B 78 */	mr r24, r3
/* 8005C880 000584E0  88 04 00 7A */	lbz r0, 0x7a(r4)
/* 8005C884 000584E4  2C 00 00 00 */	cmpwi r0, 0
/* 8005C888 000584E8  41 82 00 38 */	beq lbl_8005C8C0
/* 8005C88C 000584EC  2C 03 00 00 */	cmpwi r3, 0
/* 8005C890 000584F0  41 82 00 30 */	beq lbl_8005C8C0
/* 8005C894 000584F4  80 A3 00 1C */	lwz r5, 0x1c(r3)
/* 8005C898 000584F8  2C 05 00 02 */	cmpwi r5, 2
/* 8005C89C 000584FC  40 80 00 08 */	bge lbl_8005C8A4
/* 8005C8A0 00058500  38 A0 00 02 */	li r5, 2
lbl_8005C8A4:
/* 8005C8A4 00058504  80 98 00 18 */	lwz r4, 0x18(r24)
/* 8005C8A8 00058508  7F 03 C3 78 */	mr r3, r24
/* 8005C8AC 0005850C  2C 04 00 02 */	cmpwi r4, 2
/* 8005C8B0 00058510  40 80 00 08 */	bge lbl_8005C8B8
/* 8005C8B4 00058514  38 80 00 02 */	li r4, 2
lbl_8005C8B8:
/* 8005C8B8 00058518  80 D8 00 20 */	lwz r6, 0x20(r24)
/* 8005C8BC 0005851C  48 1E 1B 0D */	bl func_8023E3C8
lbl_8005C8C0:
/* 8005C8C0 00058520  7F 03 C3 78 */	mr r3, r24
/* 8005C8C4 00058524  38 80 31 C0 */	li r4, 0x31c0
/* 8005C8C8 00058528  48 20 DD 8D */	bl DCFlushRange
/* 8005C8CC 0005852C  80 6D A3 D8 */	lwz r3, lbl_8063F698-_SDA_BASE_(r13)
/* 8005C8D0 00058530  A0 03 16 FE */	lhz r0, 0x16fe(r3)
/* 8005C8D4 00058534  60 00 00 02 */	ori r0, r0, 2
/* 8005C8D8 00058538  B0 03 16 FE */	sth r0, 0x16fe(r3)
/* 8005C8DC 0005853C  80 17 00 AC */	lwz r0, 0xac(r23)
/* 8005C8E0 00058540  7C 60 DA 14 */	add r3, r0, r27
/* 8005C8E4 00058544  9B E3 00 0D */	stb r31, 0xd(r3)
/* 8005C8E8 00058548  A0 77 01 1E */	lhz r3, 0x11e(r23)
/* 8005C8EC 0005854C  38 63 FF FF */	addi r3, r3, -1
/* 8005C8F0 00058550  54 60 13 BA */	rlwinm r0, r3, 2, 0xe, 0x1d
/* 8005C8F4 00058554  B0 77 01 1E */	sth r3, 0x11e(r23)
/* 8005C8F8 00058558  7C 77 02 14 */	add r3, r23, r0
/* 8005C8FC 0005855C  93 83 00 B8 */	stw r28, 0xb8(r3)
/* 8005C900 00058560  A0 17 01 1E */	lhz r0, 0x11e(r23)
/* 8005C904 00058564  54 00 08 3C */	slwi r0, r0, 1
/* 8005C908 00058568  7C 77 02 14 */	add r3, r23, r0
/* 8005C90C 0005856C  B3 83 00 FC */	sth r28, 0xfc(r3)
/* 8005C910 00058570  A0 17 01 1E */	lhz r0, 0x11e(r23)
/* 8005C914 00058574  2C 00 00 00 */	cmpwi r0, 0
/* 8005C918 00058578  40 82 00 08 */	bne lbl_8005C920
/* 8005C91C 0005857C  3B 40 00 01 */	li r26, 1
lbl_8005C920:
/* 8005C920 00058580  3B 7B 00 28 */	addi r27, r27, 0x28
/* 8005C924 00058584  3B 39 00 01 */	addi r25, r25, 1
lbl_8005C928:
/* 8005C928 00058588  80 17 00 B0 */	lwz r0, 0xb0(r23)
/* 8005C92C 0005858C  7C 19 00 40 */	cmplw r25, r0
/* 8005C930 00058590  41 80 FC F4 */	blt lbl_8005C624
/* 8005C934 00058594  88 17 01 20 */	lbz r0, 0x120(r23)
/* 8005C938 00058598  2C 00 00 00 */	cmpwi r0, 0
/* 8005C93C 0005859C  40 82 00 3C */	bne lbl_8005C978
/* 8005C940 000585A0  A0 17 01 1E */	lhz r0, 0x11e(r23)
/* 8005C944 000585A4  2C 00 00 00 */	cmpwi r0, 0
/* 8005C948 000585A8  41 82 00 30 */	beq lbl_8005C978
/* 8005C94C 000585AC  38 00 00 01 */	li r0, 1
/* 8005C950 000585B0  38 60 03 EE */	li r3, 0x3ee
/* 8005C954 000585B4  98 17 01 20 */	stb r0, 0x120(r23)
/* 8005C958 000585B8  48 1E D0 15 */	bl func_8024996C
/* 8005C95C 000585BC  3C A0 80 06 */	lis r5, lbl_8005C5CC@ha
/* 8005C960 000585C0  A0 F7 01 1E */	lhz r7, 0x11e(r23)
/* 8005C964 000585C4  38 97 00 B8 */	addi r4, r23, 0xb8
/* 8005C968 000585C8  38 60 03 EE */	li r3, 0x3ee
/* 8005C96C 000585CC  38 A5 C5 CC */	addi r5, r5, lbl_8005C5CC@l
/* 8005C970 000585D0  38 C0 00 00 */	li r6, 0
/* 8005C974 000585D4  48 1E CE 49 */	bl func_802497BC
lbl_8005C978:
/* 8005C978 000585D8  2C 1A 00 00 */	cmpwi r26, 0
/* 8005C97C 000585DC  41 82 00 14 */	beq lbl_8005C990
/* 8005C980 000585E0  38 60 03 EE */	li r3, 0x3ee
/* 8005C984 000585E4  48 1E CF E9 */	bl func_8024996C
/* 8005C988 000585E8  38 00 00 00 */	li r0, 0
/* 8005C98C 000585EC  98 17 01 20 */	stb r0, 0x120(r23)
lbl_8005C990:
/* 8005C990 000585F0  39 61 00 30 */	addi r11, r1, 0x30
/* 8005C994 000585F4  48 16 A7 CD */	bl _restgpr_22
/* 8005C998 000585F8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005C99C 000585FC  7C 08 03 A6 */	mtlr r0
/* 8005C9A0 00058600  38 21 00 30 */	addi r1, r1, 0x30
/* 8005C9A4 00058604  4E 80 00 20 */	blr

.global func_8005C9A8
func_8005C9A8:
/* 8005C9A8 00058608  3C A0 80 48 */	lis r5, lbl_80478178@ha
/* 8005C9AC 0005860C  7C 64 1B 78 */	mr r4, r3
/* 8005C9B0 00058610  38 65 81 78 */	addi r3, r5, lbl_80478178@l
/* 8005C9B4 00058614  4B FF EA F0 */	b lbl_8005B4A4

.global func_8005C9B8
func_8005C9B8:
/* 8005C9B8 00058618  3C A0 80 48 */	lis r5, lbl_80478178@ha
/* 8005C9BC 0005861C  7C 64 1B 78 */	mr r4, r3
/* 8005C9C0 00058620  38 65 81 78 */	addi r3, r5, lbl_80478178@l
/* 8005C9C4 00058624  4B FF EB F8 */	b lbl_8005B5BC
lbl_8005C9C8:
/* 8005C9C8 00058628  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005C9CC 0005862C  7C 08 02 A6 */	mflr r0
/* 8005C9D0 00058630  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005C9D4 00058634  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005C9D8 00058638  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005C9DC 0005863C  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005C9E0 00058640  4B FF F2 C1 */	bl func_8005BCA0
/* 8005C9E4 00058644  38 7F 81 78 */	addi r3, r31, -32392
/* 8005C9E8 00058648  4B FF FB F5 */	bl func_8005C5DC
/* 8005C9EC 0005864C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005C9F0 00058650  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005C9F4 00058654  7C 08 03 A6 */	mtlr r0
/* 8005C9F8 00058658  38 21 00 10 */	addi r1, r1, 0x10
/* 8005C9FC 0005865C  4E 80 00 20 */	blr

.global func_8005CA00
func_8005CA00:
/* 8005CA00 00058660  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005CA04 00058664  7C 08 02 A6 */	mflr r0
/* 8005CA08 00058668  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005CA0C 0005866C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8005CA10 00058670  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8005CA14 00058674  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8005CA18 00058678  93 81 00 10 */	stw r28, 0x10(r1)
/* 8005CA1C 0005867C  7C 7C 1B 78 */	mr r28, r3
/* 8005CA20 00058680  4B FF A1 B5 */	bl func_80056BD4
/* 8005CA24 00058684  2C 03 00 00 */	cmpwi r3, 0
/* 8005CA28 00058688  40 82 00 20 */	bne lbl_8005CA48
/* 8005CA2C 0005868C  3C 60 80 48 */	lis r3, lbl_80478178@ha
/* 8005CA30 00058690  38 80 00 00 */	li r4, 0
/* 8005CA34 00058694  38 63 81 78 */	addi r3, r3, lbl_80478178@l
/* 8005CA38 00058698  38 A0 00 00 */	li r5, 0
/* 8005CA3C 0005869C  38 C0 00 00 */	li r6, 0
/* 8005CA40 000586A0  4B FF EC 95 */	bl func_8005B6D4
/* 8005CA44 000586A4  48 00 00 C0 */	b lbl_8005CB04
lbl_8005CA48:
/* 8005CA48 000586A8  7F 83 E3 78 */	mr r3, r28
/* 8005CA4C 000586AC  38 80 00 05 */	li r4, 5
/* 8005CA50 000586B0  38 A0 00 00 */	li r5, 0
/* 8005CA54 000586B4  48 37 E4 A9 */	bl func_803DAEFC
/* 8005CA58 000586B8  54 7F 04 3E */	clrlwi r31, r3, 0x10
/* 8005CA5C 000586BC  7F 83 E3 78 */	mr r3, r28
/* 8005CA60 000586C0  38 80 00 6F */	li r4, 0x6f
/* 8005CA64 000586C4  38 A0 00 00 */	li r5, 0
/* 8005CA68 000586C8  48 37 E4 95 */	bl func_803DAEFC
/* 8005CA6C 000586CC  54 7E 06 3E */	clrlwi r30, r3, 0x18
/* 8005CA70 000586D0  7F 83 E3 78 */	mr r3, r28
/* 8005CA74 000586D4  4B FF A3 B9 */	bl func_80056E2C
/* 8005CA78 000586D8  2C 03 00 00 */	cmpwi r3, 0
/* 8005CA7C 000586DC  41 82 00 18 */	beq lbl_8005CA94
/* 8005CA80 000586E0  28 1F 01 EA */	cmplwi r31, 0x1ea
/* 8005CA84 000586E4  3B A0 00 00 */	li r29, 0
/* 8005CA88 000586E8  40 82 00 08 */	bne lbl_8005CA90
/* 8005CA8C 000586EC  3B A0 00 01 */	li r29, 1
lbl_8005CA90:
/* 8005CA90 000586F0  3B E0 01 EE */	li r31, 0x1ee
lbl_8005CA94:
/* 8005CA94 000586F4  2C 1F 01 EE */	cmpwi r31, 0x1ee
/* 8005CA98 000586F8  41 82 00 18 */	beq lbl_8005CAB0
/* 8005CA9C 000586FC  7F 83 E3 78 */	mr r3, r28
/* 8005CAA0 00058700  38 80 00 70 */	li r4, 0x70
/* 8005CAA4 00058704  38 A0 00 00 */	li r5, 0
/* 8005CAA8 00058708  48 37 E4 55 */	bl func_803DAEFC
/* 8005CAAC 0005870C  54 7D 04 3E */	clrlwi r29, r3, 0x10
lbl_8005CAB0:
/* 8005CAB0 00058710  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005CAB4 00058714  7F E4 FB 78 */	mr r4, r31
/* 8005CAB8 00058718  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8005CABC 0005871C  38 63 00 04 */	addi r3, r3, 4
/* 8005CAC0 00058720  48 33 3E 91 */	bl func_80390950
/* 8005CAC4 00058724  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005CAC8 00058728  7C 1D 00 40 */	cmplw r29, r0
/* 8005CACC 0005872C  41 80 00 20 */	blt lbl_8005CAEC
/* 8005CAD0 00058730  3C 60 80 48 */	lis r3, lbl_80478178@ha
/* 8005CAD4 00058734  38 80 00 00 */	li r4, 0
/* 8005CAD8 00058738  38 63 81 78 */	addi r3, r3, lbl_80478178@l
/* 8005CADC 0005873C  38 A0 00 00 */	li r5, 0
/* 8005CAE0 00058740  38 C0 00 00 */	li r6, 0
/* 8005CAE4 00058744  4B FF EB F1 */	bl func_8005B6D4
/* 8005CAE8 00058748  48 00 00 1C */	b lbl_8005CB04
lbl_8005CAEC:
/* 8005CAEC 0005874C  3C 60 80 48 */	lis r3, lbl_80478178@ha
/* 8005CAF0 00058750  7F E4 FB 78 */	mr r4, r31
/* 8005CAF4 00058754  7F C5 F3 78 */	mr r5, r30
/* 8005CAF8 00058758  7F A6 EB 78 */	mr r6, r29
/* 8005CAFC 0005875C  38 63 81 78 */	addi r3, r3, lbl_80478178@l
/* 8005CB00 00058760  4B FF EB D5 */	bl func_8005B6D4
lbl_8005CB04:
/* 8005CB04 00058764  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005CB08 00058768  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8005CB0C 0005876C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8005CB10 00058770  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8005CB14 00058774  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8005CB18 00058778  7C 08 03 A6 */	mtlr r0
/* 8005CB1C 0005877C  38 21 00 20 */	addi r1, r1, 0x20
/* 8005CB20 00058780  4E 80 00 20 */	blr

.global func_8005CB24
func_8005CB24:
/* 8005CB24 00058784  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005CB28 00058788  7C 08 02 A6 */	mflr r0
/* 8005CB2C 0005878C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005CB30 00058790  39 61 00 30 */	addi r11, r1, 0x30
/* 8005CB34 00058794  48 16 A5 E9 */	bl _savegpr_24
/* 8005CB38 00058798  7C 78 1B 78 */	mr r24, r3
/* 8005CB3C 0005879C  7C 99 23 78 */	mr r25, r4
/* 8005CB40 000587A0  7C BA 2B 78 */	mr r26, r5
/* 8005CB44 000587A4  4B FF A0 91 */	bl func_80056BD4
/* 8005CB48 000587A8  2C 03 00 00 */	cmpwi r3, 0
/* 8005CB4C 000587AC  40 82 00 40 */	bne lbl_8005CB8C
/* 8005CB50 000587B0  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005CB54 000587B4  38 80 00 00 */	li r4, 0
/* 8005CB58 000587B8  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005CB5C 000587BC  38 A0 00 00 */	li r5, 0
/* 8005CB60 000587C0  38 C0 00 00 */	li r6, 0
/* 8005CB64 000587C4  4B FF EB 71 */	bl func_8005B6D4
/* 8005CB68 000587C8  7F 48 D3 78 */	mr r8, r26
/* 8005CB6C 000587CC  38 7F 81 78 */	addi r3, r31, -32392
/* 8005CB70 000587D0  38 80 00 00 */	li r4, 0
/* 8005CB74 000587D4  38 A0 00 00 */	li r5, 0
/* 8005CB78 000587D8  38 C0 00 00 */	li r6, 0
/* 8005CB7C 000587DC  38 E0 00 00 */	li r7, 0
/* 8005CB80 000587E0  39 20 00 00 */	li r9, 0
/* 8005CB84 000587E4  4B FF ED D9 */	bl func_8005B95C
/* 8005CB88 000587E8  48 00 01 34 */	b lbl_8005CCBC
lbl_8005CB8C:
/* 8005CB8C 000587EC  7F 03 C3 78 */	mr r3, r24
/* 8005CB90 000587F0  38 80 00 05 */	li r4, 5
/* 8005CB94 000587F4  38 A0 00 00 */	li r5, 0
/* 8005CB98 000587F8  48 37 E3 65 */	bl func_803DAEFC
/* 8005CB9C 000587FC  54 7E 04 3E */	clrlwi r30, r3, 0x10
/* 8005CBA0 00058800  7F 03 C3 78 */	mr r3, r24
/* 8005CBA4 00058804  38 80 00 6F */	li r4, 0x6f
/* 8005CBA8 00058808  38 A0 00 00 */	li r5, 0
/* 8005CBAC 0005880C  48 37 E3 51 */	bl func_803DAEFC
/* 8005CBB0 00058810  54 7D 06 3E */	clrlwi r29, r3, 0x18
/* 8005CBB4 00058814  7F 03 C3 78 */	mr r3, r24
/* 8005CBB8 00058818  3B 80 00 00 */	li r28, 0
/* 8005CBBC 0005881C  4B FF A2 71 */	bl func_80056E2C
/* 8005CBC0 00058820  2C 03 00 00 */	cmpwi r3, 0
/* 8005CBC4 00058824  41 82 00 20 */	beq lbl_8005CBE4
/* 8005CBC8 00058828  28 1E 01 EA */	cmplwi r30, 0x1ea
/* 8005CBCC 0005882C  3B 60 00 00 */	li r27, 0
/* 8005CBD0 00058830  40 82 00 08 */	bne lbl_8005CBD8
/* 8005CBD4 00058834  3B 60 00 01 */	li r27, 1
lbl_8005CBD8:
/* 8005CBD8 00058838  3B A0 00 02 */	li r29, 2
/* 8005CBDC 0005883C  3B C0 01 EE */	li r30, 0x1ee
/* 8005CBE0 00058840  48 00 00 2C */	b lbl_8005CC0C
lbl_8005CBE4:
/* 8005CBE4 00058844  3F E0 80 48 */	lis r31, lbl_804782A8@ha
/* 8005CBE8 00058848  7F 03 C3 78 */	mr r3, r24
/* 8005CBEC 0005884C  38 9F 82 A8 */	addi r4, r31, lbl_804782A8@l
/* 8005CBF0 00058850  48 37 FB 59 */	bl func_803DC748
/* 8005CBF4 00058854  38 7F 82 A8 */	addi r3, r31, -32088
/* 8005CBF8 00058858  48 37 F4 D9 */	bl func_803DC0D0
/* 8005CBFC 0005885C  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8005CC00 00058860  7C 03 00 D0 */	neg r0, r3
/* 8005CC04 00058864  7C 00 1B 78 */	or r0, r0, r3
/* 8005CC08 00058868  54 1C 0F FE */	srwi r28, r0, 0x1f
lbl_8005CC0C:
/* 8005CC0C 0005886C  2C 1E 01 EE */	cmpwi r30, 0x1ee
/* 8005CC10 00058870  41 82 00 18 */	beq lbl_8005CC28
/* 8005CC14 00058874  7F 03 C3 78 */	mr r3, r24
/* 8005CC18 00058878  38 80 00 70 */	li r4, 0x70
/* 8005CC1C 0005887C  38 A0 00 00 */	li r5, 0
/* 8005CC20 00058880  48 37 E2 DD */	bl func_803DAEFC
/* 8005CC24 00058884  54 7B 04 3E */	clrlwi r27, r3, 0x10
lbl_8005CC28:
/* 8005CC28 00058888  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005CC2C 0005888C  7F C4 F3 78 */	mr r4, r30
/* 8005CC30 00058890  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8005CC34 00058894  38 63 00 04 */	addi r3, r3, 4
/* 8005CC38 00058898  48 33 3D 19 */	bl func_80390950
/* 8005CC3C 0005889C  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005CC40 000588A0  7C 1B 00 40 */	cmplw r27, r0
/* 8005CC44 000588A4  41 80 00 40 */	blt lbl_8005CC84
/* 8005CC48 000588A8  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005CC4C 000588AC  38 80 00 00 */	li r4, 0
/* 8005CC50 000588B0  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005CC54 000588B4  38 A0 00 00 */	li r5, 0
/* 8005CC58 000588B8  38 C0 00 00 */	li r6, 0
/* 8005CC5C 000588BC  4B FF EA 79 */	bl func_8005B6D4
/* 8005CC60 000588C0  7F 48 D3 78 */	mr r8, r26
/* 8005CC64 000588C4  38 7F 81 78 */	addi r3, r31, -32392
/* 8005CC68 000588C8  38 80 00 00 */	li r4, 0
/* 8005CC6C 000588CC  38 A0 00 00 */	li r5, 0
/* 8005CC70 000588D0  38 C0 00 00 */	li r6, 0
/* 8005CC74 000588D4  38 E0 00 00 */	li r7, 0
/* 8005CC78 000588D8  39 20 00 00 */	li r9, 0
/* 8005CC7C 000588DC  4B FF EC E1 */	bl func_8005B95C
/* 8005CC80 000588E0  48 00 00 3C */	b lbl_8005CCBC
lbl_8005CC84:
/* 8005CC84 000588E4  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005CC88 000588E8  7F C4 F3 78 */	mr r4, r30
/* 8005CC8C 000588EC  7F A5 EB 78 */	mr r5, r29
/* 8005CC90 000588F0  7F 66 DB 78 */	mr r6, r27
/* 8005CC94 000588F4  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005CC98 000588F8  4B FF EA 3D */	bl func_8005B6D4
/* 8005CC9C 000588FC  7F C4 F3 78 */	mr r4, r30
/* 8005CCA0 00058900  7F A5 EB 78 */	mr r5, r29
/* 8005CCA4 00058904  7F 86 E3 78 */	mr r6, r28
/* 8005CCA8 00058908  7F 27 CB 78 */	mr r7, r25
/* 8005CCAC 0005890C  7F 48 D3 78 */	mr r8, r26
/* 8005CCB0 00058910  7F 69 DB 78 */	mr r9, r27
/* 8005CCB4 00058914  38 7F 81 78 */	addi r3, r31, -32392
/* 8005CCB8 00058918  4B FF EC A5 */	bl func_8005B95C
lbl_8005CCBC:
/* 8005CCBC 0005891C  39 61 00 30 */	addi r11, r1, 0x30
/* 8005CCC0 00058920  48 16 A4 A9 */	bl _restgpr_24
/* 8005CCC4 00058924  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005CCC8 00058928  7C 08 03 A6 */	mtlr r0
/* 8005CCCC 0005892C  38 21 00 30 */	addi r1, r1, 0x30
/* 8005CCD0 00058930  4E 80 00 20 */	blr

.global func_8005CCD4
func_8005CCD4:
/* 8005CCD4 00058934  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005CCD8 00058938  7C 08 02 A6 */	mflr r0
/* 8005CCDC 0005893C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005CCE0 00058940  39 61 00 30 */	addi r11, r1, 0x30
/* 8005CCE4 00058944  48 16 A4 3D */	bl _savegpr_25
/* 8005CCE8 00058948  7C 79 1B 78 */	mr r25, r3
/* 8005CCEC 0005894C  7C BA 2B 78 */	mr r26, r5
/* 8005CCF0 00058950  4B FF 9E E5 */	bl func_80056BD4
/* 8005CCF4 00058954  2C 03 00 00 */	cmpwi r3, 0
/* 8005CCF8 00058958  40 82 00 3C */	bne lbl_8005CD34
/* 8005CCFC 0005895C  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005CD00 00058960  38 80 00 00 */	li r4, 0
/* 8005CD04 00058964  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005CD08 00058968  38 A0 00 00 */	li r5, 0
/* 8005CD0C 0005896C  38 C0 00 00 */	li r6, 0
/* 8005CD10 00058970  4B FF F3 5D */	bl func_8005C06C
/* 8005CD14 00058974  7F 47 D3 78 */	mr r7, r26
/* 8005CD18 00058978  38 7F 81 78 */	addi r3, r31, -32392
/* 8005CD1C 0005897C  38 80 00 00 */	li r4, 0
/* 8005CD20 00058980  38 A0 00 00 */	li r5, 0
/* 8005CD24 00058984  38 C0 00 00 */	li r6, 0
/* 8005CD28 00058988  39 00 00 00 */	li r8, 0
/* 8005CD2C 0005898C  4B FF F5 C9 */	bl func_8005C2F4
/* 8005CD30 00058990  48 00 01 2C */	b lbl_8005CE5C
lbl_8005CD34:
/* 8005CD34 00058994  7F 23 CB 78 */	mr r3, r25
/* 8005CD38 00058998  38 80 00 05 */	li r4, 5
/* 8005CD3C 0005899C  38 A0 00 00 */	li r5, 0
/* 8005CD40 000589A0  48 37 E1 BD */	bl func_803DAEFC
/* 8005CD44 000589A4  54 7E 04 3E */	clrlwi r30, r3, 0x10
/* 8005CD48 000589A8  7F 23 CB 78 */	mr r3, r25
/* 8005CD4C 000589AC  38 80 00 6F */	li r4, 0x6f
/* 8005CD50 000589B0  38 A0 00 00 */	li r5, 0
/* 8005CD54 000589B4  48 37 E1 A9 */	bl func_803DAEFC
/* 8005CD58 000589B8  54 7D 06 3E */	clrlwi r29, r3, 0x18
/* 8005CD5C 000589BC  7F 23 CB 78 */	mr r3, r25
/* 8005CD60 000589C0  3B 80 00 00 */	li r28, 0
/* 8005CD64 000589C4  4B FF A0 C9 */	bl func_80056E2C
/* 8005CD68 000589C8  2C 03 00 00 */	cmpwi r3, 0
/* 8005CD6C 000589CC  41 82 00 20 */	beq lbl_8005CD8C
/* 8005CD70 000589D0  28 1E 01 EA */	cmplwi r30, 0x1ea
/* 8005CD74 000589D4  3B 60 00 00 */	li r27, 0
/* 8005CD78 000589D8  40 82 00 08 */	bne lbl_8005CD80
/* 8005CD7C 000589DC  3B 60 00 01 */	li r27, 1
lbl_8005CD80:
/* 8005CD80 000589E0  3B C0 01 EE */	li r30, 0x1ee
/* 8005CD84 000589E4  3B A0 00 02 */	li r29, 2
/* 8005CD88 000589E8  48 00 00 2C */	b lbl_8005CDB4
lbl_8005CD8C:
/* 8005CD8C 000589EC  3F E0 80 48 */	lis r31, lbl_804782A8@ha
/* 8005CD90 000589F0  7F 23 CB 78 */	mr r3, r25
/* 8005CD94 000589F4  38 9F 82 A8 */	addi r4, r31, lbl_804782A8@l
/* 8005CD98 000589F8  48 37 F9 B1 */	bl func_803DC748
/* 8005CD9C 000589FC  38 7F 82 A8 */	addi r3, r31, -32088
/* 8005CDA0 00058A00  48 37 F3 31 */	bl func_803DC0D0
/* 8005CDA4 00058A04  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8005CDA8 00058A08  7C 03 00 D0 */	neg r0, r3
/* 8005CDAC 00058A0C  7C 00 1B 78 */	or r0, r0, r3
/* 8005CDB0 00058A10  54 1C 0F FE */	srwi r28, r0, 0x1f
lbl_8005CDB4:
/* 8005CDB4 00058A14  2C 1E 01 EE */	cmpwi r30, 0x1ee
/* 8005CDB8 00058A18  41 82 00 18 */	beq lbl_8005CDD0
/* 8005CDBC 00058A1C  7F 23 CB 78 */	mr r3, r25
/* 8005CDC0 00058A20  38 80 00 70 */	li r4, 0x70
/* 8005CDC4 00058A24  38 A0 00 00 */	li r5, 0
/* 8005CDC8 00058A28  48 37 E1 35 */	bl func_803DAEFC
/* 8005CDCC 00058A2C  54 7B 04 3E */	clrlwi r27, r3, 0x10
lbl_8005CDD0:
/* 8005CDD0 00058A30  3C 60 80 64 */	lis r3, lbl_8063CE34@ha
/* 8005CDD4 00058A34  7F C4 F3 78 */	mr r4, r30
/* 8005CDD8 00058A38  38 63 CE 34 */	addi r3, r3, lbl_8063CE34@l
/* 8005CDDC 00058A3C  38 63 00 4C */	addi r3, r3, 0x4c
/* 8005CDE0 00058A40  48 33 9C 81 */	bl func_80396A60
/* 8005CDE4 00058A44  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005CDE8 00058A48  7C 1B 00 40 */	cmplw r27, r0
/* 8005CDEC 00058A4C  41 80 00 3C */	blt lbl_8005CE28
/* 8005CDF0 00058A50  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005CDF4 00058A54  38 80 00 00 */	li r4, 0
/* 8005CDF8 00058A58  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005CDFC 00058A5C  38 A0 00 00 */	li r5, 0
/* 8005CE00 00058A60  38 C0 00 00 */	li r6, 0
/* 8005CE04 00058A64  4B FF F2 69 */	bl func_8005C06C
/* 8005CE08 00058A68  7F 47 D3 78 */	mr r7, r26
/* 8005CE0C 00058A6C  38 7F 81 78 */	addi r3, r31, -32392
/* 8005CE10 00058A70  38 80 00 00 */	li r4, 0
/* 8005CE14 00058A74  38 A0 00 00 */	li r5, 0
/* 8005CE18 00058A78  38 C0 00 00 */	li r6, 0
/* 8005CE1C 00058A7C  39 00 00 00 */	li r8, 0
/* 8005CE20 00058A80  4B FF F4 D5 */	bl func_8005C2F4
/* 8005CE24 00058A84  48 00 00 38 */	b lbl_8005CE5C
lbl_8005CE28:
/* 8005CE28 00058A88  3F E0 80 48 */	lis r31, lbl_80478178@ha
/* 8005CE2C 00058A8C  7F C4 F3 78 */	mr r4, r30
/* 8005CE30 00058A90  7F A5 EB 78 */	mr r5, r29
/* 8005CE34 00058A94  7F 66 DB 78 */	mr r6, r27
/* 8005CE38 00058A98  38 7F 81 78 */	addi r3, r31, lbl_80478178@l
/* 8005CE3C 00058A9C  4B FF F2 31 */	bl func_8005C06C
/* 8005CE40 00058AA0  7F C4 F3 78 */	mr r4, r30
/* 8005CE44 00058AA4  7F A5 EB 78 */	mr r5, r29
/* 8005CE48 00058AA8  7F 86 E3 78 */	mr r6, r28
/* 8005CE4C 00058AAC  7F 47 D3 78 */	mr r7, r26
/* 8005CE50 00058AB0  7F 68 DB 78 */	mr r8, r27
/* 8005CE54 00058AB4  38 7F 81 78 */	addi r3, r31, -32392
/* 8005CE58 00058AB8  4B FF F4 9D */	bl func_8005C2F4
lbl_8005CE5C:
/* 8005CE5C 00058ABC  39 61 00 30 */	addi r11, r1, 0x30
/* 8005CE60 00058AC0  48 16 A3 0D */	bl _restgpr_25
/* 8005CE64 00058AC4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005CE68 00058AC8  7C 08 03 A6 */	mtlr r0
/* 8005CE6C 00058ACC  38 21 00 30 */	addi r1, r1, 0x30
/* 8005CE70 00058AD0  4E 80 00 20 */	blr

.global func_8005CE74
func_8005CE74:
/* 8005CE74 00058AD4  39 00 00 01 */	li r8, 1
/* 8005CE78 00058AD8  38 CD 99 00 */	addi r6, r13, lbl_8063EBC0-_SDA_BASE_
/* 8005CE7C 00058ADC  38 E0 00 04 */	li r7, 4
/* 8005CE80 00058AE0  38 00 00 00 */	li r0, 0
/* 8005CE84 00058AE4  3C 60 80 48 */	lis r3, lbl_80478178@ha
/* 8005CE88 00058AE8  3C 80 80 06 */	lis r4, lbl_8005CEAC@ha
/* 8005CE8C 00058AEC  3C A0 80 48 */	lis r5, lbl_80478168@ha
/* 8005CE90 00058AF0  99 0D 99 00 */	stb r8, lbl_8063EBC0-_SDA_BASE_(r13)
/* 8005CE94 00058AF4  38 63 81 78 */	addi r3, r3, lbl_80478178@l
/* 8005CE98 00058AF8  38 84 CE AC */	addi r4, r4, lbl_8005CEAC@l
/* 8005CE9C 00058AFC  B0 E6 00 02 */	sth r7, 2(r6)
/* 8005CEA0 00058B00  38 A5 81 68 */	addi r5, r5, lbl_80478168@l
/* 8005CEA4 00058B04  98 06 00 04 */	stb r0, 4(r6)
/* 8005CEA8 00058B08  48 16 9D A0 */	b __register_global_object_tmp
lbl_8005CEAC:
/* 8005CEAC 00058B0C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005CEB0 00058B10  7C 08 02 A6 */	mflr r0
/* 8005CEB4 00058B14  2C 03 00 00 */	cmpwi r3, 0
/* 8005CEB8 00058B18  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005CEBC 00058B1C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8005CEC0 00058B20  7C 7F 1B 78 */	mr r31, r3
/* 8005CEC4 00058B24  41 82 00 10 */	beq lbl_8005CED4
/* 8005CEC8 00058B28  2C 04 00 00 */	cmpwi r4, 0
/* 8005CECC 00058B2C  40 81 00 08 */	ble lbl_8005CED4
/* 8005CED0 00058B30  48 17 DB E9 */	bl func_801DAAB8
lbl_8005CED4:
/* 8005CED4 00058B34  7F E3 FB 78 */	mr r3, r31
/* 8005CED8 00058B38  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8005CEDC 00058B3C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005CEE0 00058B40  7C 08 03 A6 */	mtlr r0
/* 8005CEE4 00058B44  38 21 00 10 */	addi r1, r1, 0x10
/* 8005CEE8 00058B48  4E 80 00 20 */	blr

.global func_8005CEEC
func_8005CEEC:
/* 8005CEEC 00058B4C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8005CEF0 00058B50  7C 08 02 A6 */	mflr r0
/* 8005CEF4 00058B54  38 60 00 00 */	li r3, 0
/* 8005CEF8 00058B58  90 01 00 14 */	stw r0, 0x14(r1)
/* 8005CEFC 00058B5C  4B FF C9 41 */	bl func_8005983C
/* 8005CF00 00058B60  38 60 03 F7 */	li r3, 0x3f7
/* 8005CF04 00058B64  48 1E C6 D9 */	bl func_802495DC
/* 8005CF08 00058B68  48 01 16 4D */	bl func_8006E554
/* 8005CF0C 00058B6C  3C A0 80 48 */	lis r5, lbl_80478408@ha
/* 8005CF10 00058B70  38 00 00 20 */	li r0, 0x20
/* 8005CF14 00058B74  38 A5 84 08 */	addi r5, r5, lbl_80478408@l
/* 8005CF18 00058B78  38 C0 00 00 */	li r6, 0
/* 8005CF1C 00058B7C  38 60 00 00 */	li r3, 0
/* 8005CF20 00058B80  7C 09 03 A6 */	mtctr r0
lbl_8005CF24:
/* 8005CF24 00058B84  7C 85 1A 14 */	add r4, r5, r3
/* 8005CF28 00058B88  38 63 00 02 */	addi r3, r3, 2
/* 8005CF2C 00058B8C  B0 C4 00 64 */	sth r6, 0x64(r4)
/* 8005CF30 00058B90  42 00 FF F4 */	bdnz lbl_8005CF24
/* 8005CF34 00058B94  C0 22 85 F0 */	lfs f1, lbl_80640BF0-_SDA2_BASE_(r2)
/* 8005CF38 00058B98  48 1F 3F 95 */	bl func_80250ECC
/* 8005CF3C 00058B9C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005CF40 00058BA0  7C 08 03 A6 */	mtlr r0
/* 8005CF44 00058BA4  38 21 00 10 */	addi r1, r1, 0x10
/* 8005CF48 00058BA8  4E 80 00 20 */	blr

.global func_8005CF4C
func_8005CF4C:
/* 8005CF4C 00058BAC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005CF50 00058BB0  7C 08 02 A6 */	mflr r0
/* 8005CF54 00058BB4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005CF58 00058BB8  39 61 00 20 */	addi r11, r1, 0x20
/* 8005CF5C 00058BBC  48 16 A1 D5 */	bl _savegpr_29
/* 8005CF60 00058BC0  3F A0 80 48 */	lis r29, lbl_80478388@ha
/* 8005CF64 00058BC4  3B BD 83 88 */	addi r29, r29, lbl_80478388@l
/* 8005CF68 00058BC8  4B FF B4 B5 */	bl func_8005841C
/* 8005CF6C 00058BCC  38 00 00 16 */	li r0, 0x16
/* 8005CF70 00058BD0  39 1D 01 3C */	addi r8, r29, 0x13c
/* 8005CF74 00058BD4  98 0D 99 22 */	stb r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005CF78 00058BD8  38 DD 00 80 */	addi r6, r29, 0x80
/* 8005CF7C 00058BDC  39 20 00 00 */	li r9, 0
/* 8005CF80 00058BE0  38 00 00 06 */	li r0, 6
lbl_8005CF84:
/* 8005CF84 00058BE4  39 40 00 00 */	li r10, 0
/* 8005CF88 00058BE8  38 60 00 00 */	li r3, 0
/* 8005CF8C 00058BEC  38 80 00 00 */	li r4, 0
/* 8005CF90 00058BF0  7C 09 03 A6 */	mtctr r0
lbl_8005CF94:
/* 8005CF94 00058BF4  2C 09 00 02 */	cmpwi r9, 2
/* 8005CF98 00058BF8  41 82 00 4C */	beq lbl_8005CFE4
/* 8005CF9C 00058BFC  40 80 00 14 */	bge lbl_8005CFB0
/* 8005CFA0 00058C00  2C 09 00 00 */	cmpwi r9, 0
/* 8005CFA4 00058C04  41 82 00 18 */	beq lbl_8005CFBC
/* 8005CFA8 00058C08  40 80 00 24 */	bge lbl_8005CFCC
/* 8005CFAC 00058C0C  48 00 00 64 */	b lbl_8005D010
lbl_8005CFB0:
/* 8005CFB0 00058C10  2C 09 00 04 */	cmpwi r9, 4
/* 8005CFB4 00058C14  40 80 00 5C */	bge lbl_8005D010
/* 8005CFB8 00058C18  48 00 00 44 */	b lbl_8005CFFC
lbl_8005CFBC:
/* 8005CFBC 00058C1C  7C E8 1A 14 */	add r7, r8, r3
/* 8005CFC0 00058C20  7C A6 22 14 */	add r5, r6, r4
/* 8005CFC4 00058C24  90 E5 00 04 */	stw r7, 4(r5)
/* 8005CFC8 00058C28  48 00 00 48 */	b lbl_8005D010
lbl_8005CFCC:
/* 8005CFCC 00058C2C  38 EA 00 06 */	addi r7, r10, 6
/* 8005CFD0 00058C30  7C A6 22 14 */	add r5, r6, r4
/* 8005CFD4 00058C34  1C E7 00 DC */	mulli r7, r7, 0xdc
/* 8005CFD8 00058C38  7C E8 3A 14 */	add r7, r8, r7
/* 8005CFDC 00058C3C  90 E5 00 34 */	stw r7, 0x34(r5)
/* 8005CFE0 00058C40  48 00 00 30 */	b lbl_8005D010
lbl_8005CFE4:
/* 8005CFE4 00058C44  38 EA 00 0C */	addi r7, r10, 0xc
/* 8005CFE8 00058C48  7C A6 22 14 */	add r5, r6, r4
/* 8005CFEC 00058C4C  1C E7 00 DC */	mulli r7, r7, 0xdc
/* 8005CFF0 00058C50  7C E8 3A 14 */	add r7, r8, r7
/* 8005CFF4 00058C54  90 E5 00 1C */	stw r7, 0x1c(r5)
/* 8005CFF8 00058C58  48 00 00 18 */	b lbl_8005D010
lbl_8005CFFC:
/* 8005CFFC 00058C5C  38 EA 00 12 */	addi r7, r10, 0x12
/* 8005D000 00058C60  7C A6 22 14 */	add r5, r6, r4
/* 8005D004 00058C64  1C E7 00 DC */	mulli r7, r7, 0xdc
/* 8005D008 00058C68  7C E8 3A 14 */	add r7, r8, r7
/* 8005D00C 00058C6C  90 E5 00 4C */	stw r7, 0x4c(r5)
lbl_8005D010:
/* 8005D010 00058C70  39 4A 00 01 */	addi r10, r10, 1
/* 8005D014 00058C74  38 63 00 DC */	addi r3, r3, 0xdc
/* 8005D018 00058C78  38 84 00 04 */	addi r4, r4, 4
/* 8005D01C 00058C7C  42 00 FF 78 */	bdnz lbl_8005CF94
/* 8005D020 00058C80  39 29 00 01 */	addi r9, r9, 1
/* 8005D024 00058C84  28 09 00 04 */	cmplwi r9, 4
/* 8005D028 00058C88  41 80 FF 5C */	blt lbl_8005CF84
/* 8005D02C 00058C8C  3B DD 00 80 */	addi r30, r29, 0x80
/* 8005D030 00058C90  38 80 00 00 */	li r4, 0
/* 8005D034 00058C94  A0 1E 00 B2 */	lhz r0, 0xb2(r30)
/* 8005D038 00058C98  38 6D 99 19 */	addi r3, r13, lbl_8063EBD9-_SDA_BASE_
/* 8005D03C 00058C9C  98 83 00 01 */	stb r4, 1(r3)
/* 8005D040 00058CA0  54 00 05 E4 */	rlwinm r0, r0, 0, 0x17, 0x12
/* 8005D044 00058CA4  98 8D 99 19 */	stb r4, lbl_8063EBD9-_SDA_BASE_(r13)
/* 8005D048 00058CA8  B0 1E 00 B2 */	sth r0, 0xb2(r30)
/* 8005D04C 00058CAC  4B FF BB 59 */	bl VMBASEIsPageValid
/* 8005D050 00058CB0  3C 80 80 40 */	lis r4, lbl_803FB938@ha
/* 8005D054 00058CB4  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005D058 00058CB8  38 84 B9 38 */	addi r4, r4, lbl_803FB938@l
/* 8005D05C 00058CBC  7C 64 00 2E */	lwzx r3, r4, r0
/* 8005D060 00058CC0  48 1E C5 7D */	bl func_802495DC
/* 8005D064 00058CC4  38 60 03 EA */	li r3, 0x3ea
/* 8005D068 00058CC8  48 1E C5 75 */	bl func_802495DC
/* 8005D06C 00058CCC  38 60 03 F6 */	li r3, 0x3f6
/* 8005D070 00058CD0  48 1E C5 6D */	bl func_802495DC
/* 8005D074 00058CD4  38 60 03 FF */	li r3, 0x3ff
/* 8005D078 00058CD8  48 1E C5 65 */	bl func_802495DC
/* 8005D07C 00058CDC  48 10 26 15 */	bl func_8015F690
/* 8005D080 00058CE0  7C 7F 1B 78 */	mr r31, r3
/* 8005D084 00058CE4  48 0B F8 F1 */	bl func_8011C974
/* 8005D088 00058CE8  90 7E 00 B4 */	stw r3, 0xb4(r30)
/* 8005D08C 00058CEC  80 1F 00 4C */	lwz r0, 0x4c(r31)
/* 8005D090 00058CF0  B0 1E 00 A4 */	sth r0, 0xa4(r30)
/* 8005D094 00058CF4  48 01 16 95 */	bl func_8006E728
/* 8005D098 00058CF8  A0 1E 00 B2 */	lhz r0, 0xb2(r30)
/* 8005D09C 00058CFC  3C 60 05 F9 */	lis r3, 0x05F91A00@ha
/* 8005D0A0 00058D00  38 83 1A 00 */	addi r4, r3, 0x05F91A00@l
/* 8005D0A4 00058D04  60 00 20 00 */	ori r0, r0, 0x2000
/* 8005D0A8 00058D08  38 60 03 F6 */	li r3, 0x3f6
/* 8005D0AC 00058D0C  B0 1E 00 B2 */	sth r0, 0xb2(r30)
/* 8005D0B0 00058D10  4B FF 8C E9 */	bl func_80055D98
/* 8005D0B4 00058D14  90 7D 00 00 */	stw r3, 0(r29)
/* 8005D0B8 00058D18  3C 60 05 FA */	lis r3, 0x05FA1A00@ha
/* 8005D0BC 00058D1C  38 83 1A 00 */	addi r4, r3, 0x05FA1A00@l
/* 8005D0C0 00058D20  38 60 03 F6 */	li r3, 0x3f6
/* 8005D0C4 00058D24  4B FF 8C D5 */	bl func_80055D98
/* 8005D0C8 00058D28  3B FD 00 00 */	addi r31, r29, 0
/* 8005D0CC 00058D2C  3C 80 05 FB */	lis r4, 0x05FB1A00@ha
/* 8005D0D0 00058D30  90 7F 00 04 */	stw r3, 4(r31)
/* 8005D0D4 00058D34  38 84 1A 00 */	addi r4, r4, 0x05FB1A00@l
/* 8005D0D8 00058D38  38 60 03 F6 */	li r3, 0x3f6
/* 8005D0DC 00058D3C  4B FF 8C BD */	bl func_80055D98
/* 8005D0E0 00058D40  90 7F 00 08 */	stw r3, 8(r31)
/* 8005D0E4 00058D44  3C 60 04 4B */	lis r3, 0x044B1A00@ha
/* 8005D0E8 00058D48  38 83 1A 00 */	addi r4, r3, 0x044B1A00@l
/* 8005D0EC 00058D4C  38 60 00 0E */	li r3, 0xe
/* 8005D0F0 00058D50  4B FF 8C A9 */	bl func_80055D98
/* 8005D0F4 00058D54  90 7F 00 0C */	stw r3, 0xc(r31)
/* 8005D0F8 00058D58  3C 60 05 FC */	lis r3, 0x05FC1A00@ha
/* 8005D0FC 00058D5C  38 83 1A 00 */	addi r4, r3, 0x05FC1A00@l
/* 8005D100 00058D60  38 60 03 F6 */	li r3, 0x3f6
/* 8005D104 00058D64  4B FF 8C 95 */	bl func_80055D98
/* 8005D108 00058D68  90 7F 00 10 */	stw r3, 0x10(r31)
/* 8005D10C 00058D6C  3C 60 04 4C */	lis r3, 0x044C1A00@ha
/* 8005D110 00058D70  38 83 1A 00 */	addi r4, r3, 0x044C1A00@l
/* 8005D114 00058D74  38 60 00 0E */	li r3, 0xe
/* 8005D118 00058D78  4B FF 8C 81 */	bl func_80055D98
/* 8005D11C 00058D7C  90 7F 00 14 */	stw r3, 0x14(r31)
/* 8005D120 00058D80  3C 60 1B AE */	lis r3, 0x1BAE1A00@ha
/* 8005D124 00058D84  38 83 1A 00 */	addi r4, r3, 0x1BAE1A00@l
/* 8005D128 00058D88  38 60 03 F6 */	li r3, 0x3f6
/* 8005D12C 00058D8C  4B FF 8C 6D */	bl func_80055D98
/* 8005D130 00058D90  90 7F 00 18 */	stw r3, 0x18(r31)
/* 8005D134 00058D94  3C 60 04 50 */	lis r3, 0x04501A00@ha
/* 8005D138 00058D98  38 83 1A 00 */	addi r4, r3, 0x04501A00@l
/* 8005D13C 00058D9C  38 60 00 0E */	li r3, 0xe
/* 8005D140 00058DA0  4B FF 8C 59 */	bl func_80055D98
/* 8005D144 00058DA4  90 7F 00 28 */	stw r3, 0x28(r31)
/* 8005D148 00058DA8  3C A0 80 07 */	lis r5, func_8006A878@ha
/* 8005D14C 00058DAC  3C C0 80 07 */	lis r6, func_8006BE3C@ha
/* 8005D150 00058DB0  80 7D 00 00 */	lwz r3, 0(r29)
/* 8005D154 00058DB4  38 A5 A8 78 */	addi r5, r5, func_8006A878@l
/* 8005D158 00058DB8  38 80 00 00 */	li r4, 0
/* 8005D15C 00058DBC  38 C6 BE 3C */	addi r6, r6, func_8006BE3C@l
/* 8005D160 00058DC0  38 E0 FF FF */	li r7, -1
/* 8005D164 00058DC4  39 00 00 00 */	li r8, 0
/* 8005D168 00058DC8  39 20 00 01 */	li r9, 1
/* 8005D16C 00058DCC  39 40 00 00 */	li r10, 0
/* 8005D170 00058DD0  48 1F 6A C9 */	bl func_80253C38
/* 8005D174 00058DD4  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005D178 00058DD8  3C A0 80 07 */	lis r5, func_8006AAB4@ha
/* 8005D17C 00058DDC  B0 7D B7 68 */	sth r3, lbl_8040B768@l(r29)
/* 8005D180 00058DE0  3C C0 80 07 */	lis r6, func_8006BF58@ha
/* 8005D184 00058DE4  80 7F 00 04 */	lwz r3, 4(r31)
/* 8005D188 00058DE8  38 A5 AA B4 */	addi r5, r5, func_8006AAB4@l
/* 8005D18C 00058DEC  38 C6 BF 58 */	addi r6, r6, func_8006BF58@l
/* 8005D190 00058DF0  38 80 00 00 */	li r4, 0
/* 8005D194 00058DF4  38 E0 FF FF */	li r7, -1
/* 8005D198 00058DF8  39 00 00 00 */	li r8, 0
/* 8005D19C 00058DFC  39 20 00 01 */	li r9, 1
/* 8005D1A0 00058E00  39 40 00 00 */	li r10, 0
/* 8005D1A4 00058E04  48 1F 6A 95 */	bl func_80253C38
/* 8005D1A8 00058E08  3B BD B7 68 */	addi r29, r29, -18584
/* 8005D1AC 00058E0C  3C A0 80 07 */	lis r5, func_8006B5F0@ha
/* 8005D1B0 00058E10  B0 7D 00 02 */	sth r3, 2(r29)
/* 8005D1B4 00058E14  3C C0 80 07 */	lis r6, func_8006C128@ha
/* 8005D1B8 00058E18  80 7F 00 08 */	lwz r3, 8(r31)
/* 8005D1BC 00058E1C  38 A5 B5 F0 */	addi r5, r5, func_8006B5F0@l
/* 8005D1C0 00058E20  38 C6 C1 28 */	addi r6, r6, func_8006C128@l
/* 8005D1C4 00058E24  38 80 00 00 */	li r4, 0
/* 8005D1C8 00058E28  38 E0 FF FF */	li r7, -1
/* 8005D1CC 00058E2C  39 00 00 00 */	li r8, 0
/* 8005D1D0 00058E30  39 20 00 01 */	li r9, 1
/* 8005D1D4 00058E34  39 40 00 00 */	li r10, 0
/* 8005D1D8 00058E38  48 1F 6A 61 */	bl func_80253C38
/* 8005D1DC 00058E3C  B0 7D 00 04 */	sth r3, 4(r29)
/* 8005D1E0 00058E40  3C 80 80 07 */	lis r4, func_8006BC5C@ha
/* 8005D1E4 00058E44  3C A0 80 07 */	lis r5, func_8006BCBC@ha
/* 8005D1E8 00058E48  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 8005D1EC 00058E4C  38 84 BC 5C */	addi r4, r4, func_8006BC5C@l
/* 8005D1F0 00058E50  38 C0 00 00 */	li r6, 0
/* 8005D1F4 00058E54  38 A5 BC BC */	addi r5, r5, func_8006BCBC@l
/* 8005D1F8 00058E58  38 E0 FF FF */	li r7, -1
/* 8005D1FC 00058E5C  39 00 00 00 */	li r8, 0
/* 8005D200 00058E60  39 20 00 01 */	li r9, 1
/* 8005D204 00058E64  39 40 00 00 */	li r10, 0
/* 8005D208 00058E68  48 1F 6A 31 */	bl func_80253C38
/* 8005D20C 00058E6C  B0 7D 00 06 */	sth r3, 6(r29)
/* 8005D210 00058E70  3C A0 80 07 */	lis r5, func_8006C3F0@ha
/* 8005D214 00058E74  3C C0 80 07 */	lis r6, func_8006CE28@ha
/* 8005D218 00058E78  80 7F 00 10 */	lwz r3, 0x10(r31)
/* 8005D21C 00058E7C  38 A5 C3 F0 */	addi r5, r5, func_8006C3F0@l
/* 8005D220 00058E80  38 80 00 00 */	li r4, 0
/* 8005D224 00058E84  38 C6 CE 28 */	addi r6, r6, func_8006CE28@l
/* 8005D228 00058E88  38 E0 FF FF */	li r7, -1
/* 8005D22C 00058E8C  39 00 00 00 */	li r8, 0
/* 8005D230 00058E90  39 20 00 01 */	li r9, 1
/* 8005D234 00058E94  39 40 00 00 */	li r10, 0
/* 8005D238 00058E98  48 1F 6A 01 */	bl func_80253C38
/* 8005D23C 00058E9C  B0 7D 00 08 */	sth r3, 8(r29)
/* 8005D240 00058EA0  3C A0 80 07 */	lis r5, func_8006E234@ha
/* 8005D244 00058EA4  3C C0 80 07 */	lis r6, func_8006E2A0@ha
/* 8005D248 00058EA8  80 7F 00 14 */	lwz r3, 0x14(r31)
/* 8005D24C 00058EAC  38 A5 E2 34 */	addi r5, r5, func_8006E234@l
/* 8005D250 00058EB0  38 80 00 00 */	li r4, 0
/* 8005D254 00058EB4  38 C6 E2 A0 */	addi r6, r6, func_8006E2A0@l
/* 8005D258 00058EB8  38 E0 FF FF */	li r7, -1
/* 8005D25C 00058EBC  39 00 00 00 */	li r8, 0
/* 8005D260 00058EC0  39 20 00 01 */	li r9, 1
/* 8005D264 00058EC4  39 40 00 00 */	li r10, 0
/* 8005D268 00058EC8  48 1F 69 D1 */	bl func_80253C38
/* 8005D26C 00058ECC  B0 7D 00 0A */	sth r3, 0xa(r29)
/* 8005D270 00058ED0  3C 80 80 06 */	lis r4, func_8006318C@ha
/* 8005D274 00058ED4  3C A0 80 06 */	lis r5, func_800631B0@ha
/* 8005D278 00058ED8  3C C0 80 06 */	lis r6, func_80063510@ha
/* 8005D27C 00058EDC  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8005D280 00058EE0  38 84 31 8C */	addi r4, r4, func_8006318C@l
/* 8005D284 00058EE4  38 A5 31 B0 */	addi r5, r5, func_800631B0@l
/* 8005D288 00058EE8  38 C6 35 10 */	addi r6, r6, func_80063510@l
/* 8005D28C 00058EEC  38 E0 FF FF */	li r7, -1
/* 8005D290 00058EF0  39 00 00 00 */	li r8, 0
/* 8005D294 00058EF4  39 20 00 01 */	li r9, 1
/* 8005D298 00058EF8  39 40 00 00 */	li r10, 0
/* 8005D29C 00058EFC  48 1F 69 9D */	bl func_80253C38
/* 8005D2A0 00058F00  B0 7D 00 0C */	sth r3, 0xc(r29)
/* 8005D2A4 00058F04  3C 80 80 07 */	lis r4, func_8006E340@ha
/* 8005D2A8 00058F08  3C A0 80 07 */	lis r5, func_8006E350@ha
/* 8005D2AC 00058F0C  3C C0 80 07 */	lis r6, func_8006E494@ha
/* 8005D2B0 00058F10  80 7F 00 28 */	lwz r3, 0x28(r31)
/* 8005D2B4 00058F14  38 84 E3 40 */	addi r4, r4, func_8006E340@l
/* 8005D2B8 00058F18  38 A5 E3 50 */	addi r5, r5, func_8006E350@l
/* 8005D2BC 00058F1C  38 C6 E4 94 */	addi r6, r6, func_8006E494@l
/* 8005D2C0 00058F20  38 E0 FF FF */	li r7, -1
/* 8005D2C4 00058F24  39 00 00 00 */	li r8, 0
/* 8005D2C8 00058F28  39 20 00 01 */	li r9, 1
/* 8005D2CC 00058F2C  39 40 00 00 */	li r10, 0
/* 8005D2D0 00058F30  48 1F 69 69 */	bl func_80253C38
/* 8005D2D4 00058F34  B0 7D 00 14 */	sth r3, 0x14(r29)
/* 8005D2D8 00058F38  3C 60 1C C7 */	lis r3, 0x1CC71A00@ha
/* 8005D2DC 00058F3C  38 83 1A 00 */	addi r4, r3, 0x1CC71A00@l
/* 8005D2E0 00058F40  38 60 03 F6 */	li r3, 0x3f6
/* 8005D2E4 00058F44  4B FF 8A B5 */	bl func_80055D98
/* 8005D2E8 00058F48  90 7F 00 40 */	stw r3, 0x40(r31)
/* 8005D2EC 00058F4C  3C 60 1C C8 */	lis r3, 0x1CC81A00@ha
/* 8005D2F0 00058F50  38 83 1A 00 */	addi r4, r3, 0x1CC81A00@l
/* 8005D2F4 00058F54  38 60 03 F6 */	li r3, 0x3f6
/* 8005D2F8 00058F58  4B FF 8A A1 */	bl func_80055D98
/* 8005D2FC 00058F5C  90 7F 00 44 */	stw r3, 0x44(r31)
/* 8005D300 00058F60  3C 60 1C C9 */	lis r3, 0x1CC91A00@ha
/* 8005D304 00058F64  38 83 1A 00 */	addi r4, r3, 0x1CC91A00@l
/* 8005D308 00058F68  38 60 03 F6 */	li r3, 0x3f6
/* 8005D30C 00058F6C  4B FF 8A 8D */	bl func_80055D98
/* 8005D310 00058F70  90 7F 00 48 */	stw r3, 0x48(r31)
/* 8005D314 00058F74  3C 60 1C CA */	lis r3, 0x1CCA1A00@ha
/* 8005D318 00058F78  38 83 1A 00 */	addi r4, r3, 0x1CCA1A00@l
/* 8005D31C 00058F7C  38 60 03 F6 */	li r3, 0x3f6
/* 8005D320 00058F80  4B FF 8A 79 */	bl func_80055D98
/* 8005D324 00058F84  90 7F 00 4C */	stw r3, 0x4c(r31)
/* 8005D328 00058F88  3C 60 1C CB */	lis r3, 0x1CCB1A00@ha
/* 8005D32C 00058F8C  38 83 1A 00 */	addi r4, r3, 0x1CCB1A00@l
/* 8005D330 00058F90  38 60 03 F6 */	li r3, 0x3f6
/* 8005D334 00058F94  4B FF 8A 65 */	bl func_80055D98
/* 8005D338 00058F98  90 7F 00 50 */	stw r3, 0x50(r31)
/* 8005D33C 00058F9C  3C 60 1C CC */	lis r3, 0x1CCC1A00@ha
/* 8005D340 00058FA0  38 83 1A 00 */	addi r4, r3, 0x1CCC1A00@l
/* 8005D344 00058FA4  38 60 03 F6 */	li r3, 0x3f6
/* 8005D348 00058FA8  4B FF 8A 51 */	bl func_80055D98
/* 8005D34C 00058FAC  90 7F 00 54 */	stw r3, 0x54(r31)
/* 8005D350 00058FB0  3C 80 80 06 */	lis r4, func_80063514@ha
/* 8005D354 00058FB4  3C A0 80 06 */	lis r5, func_800635A8@ha
/* 8005D358 00058FB8  3C C0 80 06 */	lis r6, func_80063B20@ha
/* 8005D35C 00058FBC  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 8005D360 00058FC0  38 84 35 14 */	addi r4, r4, func_80063514@l
/* 8005D364 00058FC4  38 A5 35 A8 */	addi r5, r5, func_800635A8@l
/* 8005D368 00058FC8  38 C6 3B 20 */	addi r6, r6, func_80063B20@l
/* 8005D36C 00058FCC  38 E0 FF FF */	li r7, -1
/* 8005D370 00058FD0  39 00 00 00 */	li r8, 0
/* 8005D374 00058FD4  39 20 00 01 */	li r9, 1
/* 8005D378 00058FD8  39 40 00 00 */	li r10, 0
/* 8005D37C 00058FDC  48 1F 68 BD */	bl func_80253C38
/* 8005D380 00058FE0  B0 7D 00 20 */	sth r3, 0x20(r29)
/* 8005D384 00058FE4  3C 80 80 06 */	lis r4, func_80064558@ha
/* 8005D388 00058FE8  3C A0 80 06 */	lis r5, func_8006455C@ha
/* 8005D38C 00058FEC  3C C0 80 06 */	lis r6, func_80064900@ha
/* 8005D390 00058FF0  80 7F 00 44 */	lwz r3, 0x44(r31)
/* 8005D394 00058FF4  38 84 45 58 */	addi r4, r4, func_80064558@l
/* 8005D398 00058FF8  38 A5 45 5C */	addi r5, r5, func_8006455C@l
/* 8005D39C 00058FFC  38 C6 49 00 */	addi r6, r6, func_80064900@l
/* 8005D3A0 00059000  38 E0 FF FF */	li r7, -1
/* 8005D3A4 00059004  39 00 00 00 */	li r8, 0
/* 8005D3A8 00059008  39 20 00 01 */	li r9, 1
/* 8005D3AC 0005900C  39 40 00 00 */	li r10, 0
/* 8005D3B0 00059010  48 1F 68 89 */	bl func_80253C38
/* 8005D3B4 00059014  B0 7D 00 22 */	sth r3, 0x22(r29)
/* 8005D3B8 00059018  3C 80 80 06 */	lis r4, func_800649CC@ha
/* 8005D3BC 0005901C  3C A0 80 06 */	lis r5, func_80064A1C@ha
/* 8005D3C0 00059020  3C C0 80 06 */	lis r6, func_800654FC@ha
/* 8005D3C4 00059024  80 7F 00 48 */	lwz r3, 0x48(r31)
/* 8005D3C8 00059028  38 84 49 CC */	addi r4, r4, func_800649CC@l
/* 8005D3CC 0005902C  38 A5 4A 1C */	addi r5, r5, func_80064A1C@l
/* 8005D3D0 00059030  38 C6 54 FC */	addi r6, r6, func_800654FC@l
/* 8005D3D4 00059034  38 E0 FF FF */	li r7, -1
/* 8005D3D8 00059038  39 00 00 00 */	li r8, 0
/* 8005D3DC 0005903C  39 20 00 01 */	li r9, 1
/* 8005D3E0 00059040  39 40 00 00 */	li r10, 0
/* 8005D3E4 00059044  48 1F 68 55 */	bl func_80253C38
/* 8005D3E8 00059048  B0 7D 00 24 */	sth r3, 0x24(r29)
/* 8005D3EC 0005904C  3C 80 80 06 */	lis r4, func_80066B40@ha
/* 8005D3F0 00059050  3C A0 80 06 */	lis r5, func_80066B6C@ha
/* 8005D3F4 00059054  3C C0 80 06 */	lis r6, func_80066DBC@ha
/* 8005D3F8 00059058  80 7F 00 4C */	lwz r3, 0x4c(r31)
/* 8005D3FC 0005905C  38 84 6B 40 */	addi r4, r4, func_80066B40@l
/* 8005D400 00059060  38 A5 6B 6C */	addi r5, r5, func_80066B6C@l
/* 8005D404 00059064  38 C6 6D BC */	addi r6, r6, func_80066DBC@l
/* 8005D408 00059068  38 E0 FF FF */	li r7, -1
/* 8005D40C 0005906C  39 00 00 00 */	li r8, 0
/* 8005D410 00059070  39 20 00 01 */	li r9, 1
/* 8005D414 00059074  39 40 00 00 */	li r10, 0
/* 8005D418 00059078  48 1F 68 21 */	bl func_80253C38
/* 8005D41C 0005907C  B0 7D 00 26 */	sth r3, 0x26(r29)
/* 8005D420 00059080  3C 80 80 06 */	lis r4, func_800675A0@ha
/* 8005D424 00059084  3C A0 80 06 */	lis r5, func_800675CC@ha
/* 8005D428 00059088  3C C0 80 06 */	lis r6, func_80067B50@ha
/* 8005D42C 0005908C  80 7F 00 50 */	lwz r3, 0x50(r31)
/* 8005D430 00059090  38 84 75 A0 */	addi r4, r4, func_800675A0@l
/* 8005D434 00059094  38 A5 75 CC */	addi r5, r5, func_800675CC@l
/* 8005D438 00059098  38 C6 7B 50 */	addi r6, r6, func_80067B50@l
/* 8005D43C 0005909C  38 E0 FF FF */	li r7, -1
/* 8005D440 000590A0  39 00 00 00 */	li r8, 0
/* 8005D444 000590A4  39 20 00 01 */	li r9, 1
/* 8005D448 000590A8  39 40 00 00 */	li r10, 0
/* 8005D44C 000590AC  48 1F 67 ED */	bl func_80253C38
/* 8005D450 000590B0  B0 7D 00 28 */	sth r3, 0x28(r29)
/* 8005D454 000590B4  3C 80 80 06 */	lis r4, func_80067FD8@ha
/* 8005D458 000590B8  3C A0 80 07 */	lis r5, func_8006806C@ha
/* 8005D45C 000590BC  3C C0 80 07 */	lis r6, func_80068338@ha
/* 8005D460 000590C0  80 7F 00 54 */	lwz r3, 0x54(r31)
/* 8005D464 000590C4  38 84 7F D8 */	addi r4, r4, func_80067FD8@l
/* 8005D468 000590C8  38 A5 80 6C */	addi r5, r5, func_8006806C@l
/* 8005D46C 000590CC  38 C6 83 38 */	addi r6, r6, func_80068338@l
/* 8005D470 000590D0  38 E0 FF FF */	li r7, -1
/* 8005D474 000590D4  39 00 00 00 */	li r8, 0
/* 8005D478 000590D8  39 20 00 01 */	li r9, 1
/* 8005D47C 000590DC  39 40 00 00 */	li r10, 0
/* 8005D480 000590E0  48 1F 67 B9 */	bl func_80253C38
/* 8005D484 000590E4  B0 7D 00 2A */	sth r3, 0x2a(r29)
/* 8005D488 000590E8  3C 60 21 C0 */	lis r3, 0x21C01A00@ha
/* 8005D48C 000590EC  38 83 1A 00 */	addi r4, r3, 0x21C01A00@l
/* 8005D490 000590F0  38 60 03 F6 */	li r3, 0x3f6
/* 8005D494 000590F4  4B FF 89 05 */	bl func_80055D98
/* 8005D498 000590F8  90 7F 00 68 */	stw r3, 0x68(r31)
/* 8005D49C 000590FC  3C 60 21 C1 */	lis r3, 0x21C11A00@ha
/* 8005D4A0 00059100  38 83 1A 00 */	addi r4, r3, 0x21C11A00@l
/* 8005D4A4 00059104  38 60 03 F6 */	li r3, 0x3f6
/* 8005D4A8 00059108  4B FF 88 F1 */	bl func_80055D98
/* 8005D4AC 0005910C  90 7F 00 6C */	stw r3, 0x6c(r31)
/* 8005D4B0 00059110  3C A0 80 07 */	lis r5, func_80068F34@ha
/* 8005D4B4 00059114  3C C0 80 07 */	lis r6, func_80068FEC@ha
/* 8005D4B8 00059118  80 7F 00 68 */	lwz r3, 0x68(r31)
/* 8005D4BC 0005911C  38 A5 8F 34 */	addi r5, r5, func_80068F34@l
/* 8005D4C0 00059120  38 80 00 00 */	li r4, 0
/* 8005D4C4 00059124  38 C6 8F EC */	addi r6, r6, func_80068FEC@l
/* 8005D4C8 00059128  38 E0 FF FF */	li r7, -1
/* 8005D4CC 0005912C  39 00 00 01 */	li r8, 1
/* 8005D4D0 00059130  39 20 00 01 */	li r9, 1
/* 8005D4D4 00059134  39 40 00 00 */	li r10, 0
/* 8005D4D8 00059138  48 1F 67 61 */	bl func_80253C38
/* 8005D4DC 0005913C  B0 7D 00 34 */	sth r3, 0x34(r29)
/* 8005D4E0 00059140  3C 80 80 07 */	lis r4, func_80069130@ha
/* 8005D4E4 00059144  3C A0 80 07 */	lis r5, func_80069230@ha
/* 8005D4E8 00059148  3C C0 80 07 */	lis r6, func_800692D8@ha
/* 8005D4EC 0005914C  80 7F 00 6C */	lwz r3, 0x6c(r31)
/* 8005D4F0 00059150  38 84 91 30 */	addi r4, r4, func_80069130@l
/* 8005D4F4 00059154  38 A5 92 30 */	addi r5, r5, func_80069230@l
/* 8005D4F8 00059158  38 C6 92 D8 */	addi r6, r6, func_800692D8@l
/* 8005D4FC 0005915C  38 E0 FF FF */	li r7, -1
/* 8005D500 00059160  39 00 00 01 */	li r8, 1
/* 8005D504 00059164  39 20 00 01 */	li r9, 1
/* 8005D508 00059168  39 40 00 00 */	li r10, 0
/* 8005D50C 0005916C  48 1F 67 2D */	bl func_80253C38
/* 8005D510 00059170  B0 7D 00 36 */	sth r3, 0x36(r29)
/* 8005D514 00059174  3C 60 27 54 */	lis r3, 0x27541A00@ha
/* 8005D518 00059178  38 83 1A 00 */	addi r4, r3, 0x27541A00@l
/* 8005D51C 0005917C  38 60 03 F6 */	li r3, 0x3f6
/* 8005D520 00059180  4B FF 88 79 */	bl func_80055D98
/* 8005D524 00059184  3C 80 80 07 */	lis r4, func_80069510@ha
/* 8005D528 00059188  3C A0 80 07 */	lis r5, func_80069600@ha
/* 8005D52C 0005918C  3C C0 80 07 */	lis r6, func_80069668@ha
/* 8005D530 00059190  90 7F 00 70 */	stw r3, 0x70(r31)
/* 8005D534 00059194  38 84 95 10 */	addi r4, r4, func_80069510@l
/* 8005D538 00059198  38 A5 96 00 */	addi r5, r5, func_80069600@l
/* 8005D53C 0005919C  38 C6 96 68 */	addi r6, r6, func_80069668@l
/* 8005D540 000591A0  38 E0 FF FF */	li r7, -1
/* 8005D544 000591A4  39 00 00 00 */	li r8, 0
/* 8005D548 000591A8  39 20 00 01 */	li r9, 1
/* 8005D54C 000591AC  39 40 00 00 */	li r10, 0
/* 8005D550 000591B0  48 1F 66 E9 */	bl func_80253C38
/* 8005D554 000591B4  B0 7D 00 38 */	sth r3, 0x38(r29)
/* 8005D558 000591B8  38 60 00 00 */	li r3, 0
/* 8005D55C 000591BC  38 80 00 00 */	li r4, 0
/* 8005D560 000591C0  38 A0 FF FF */	li r5, -1
/* 8005D564 000591C4  48 1F 6A 09 */	bl func_80253F6C
/* 8005D568 000591C8  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005D56C 000591CC  38 60 00 00 */	li r3, 0
/* 8005D570 000591D0  38 80 00 00 */	li r4, 0
/* 8005D574 000591D4  38 A0 FF FF */	li r5, -1
/* 8005D578 000591D8  48 1F 69 F5 */	bl func_80253F6C
/* 8005D57C 000591DC  90 6D 82 00 */	stw r3, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005D580 000591E0  38 60 00 00 */	li r3, 0
/* 8005D584 000591E4  38 80 00 00 */	li r4, 0
/* 8005D588 000591E8  38 A0 FF FF */	li r5, -1
/* 8005D58C 000591EC  48 1F 69 E1 */	bl func_80253F6C
/* 8005D590 000591F0  90 6D 82 04 */	stw r3, lbl_8063D4C4-_SDA_BASE_(r13)
/* 8005D594 000591F4  38 60 00 00 */	li r3, 0
/* 8005D598 000591F8  38 80 00 00 */	li r4, 0
/* 8005D59C 000591FC  38 A0 FF FF */	li r5, -1
/* 8005D5A0 00059200  48 1F 69 CD */	bl func_80253F6C
/* 8005D5A4 00059204  90 6D 82 08 */	stw r3, lbl_8063D4C8-_SDA_BASE_(r13)
/* 8005D5A8 00059208  38 60 00 00 */	li r3, 0
/* 8005D5AC 0005920C  38 80 00 00 */	li r4, 0
/* 8005D5B0 00059210  38 A0 FF FF */	li r5, -1
/* 8005D5B4 00059214  48 1F 69 B9 */	bl func_80253F6C
/* 8005D5B8 00059218  90 6D 82 0C */	stw r3, lbl_8063D4CC-_SDA_BASE_(r13)
/* 8005D5BC 0005921C  38 60 00 00 */	li r3, 0
/* 8005D5C0 00059220  48 09 B6 35 */	bl func_800F8BF4
/* 8005D5C4 00059224  38 60 03 FF */	li r3, 0x3ff
/* 8005D5C8 00059228  48 1E C2 C9 */	bl func_80249890
/* 8005D5CC 0005922C  38 60 03 FF */	li r3, 0x3ff
/* 8005D5D0 00059230  48 17 E0 A5 */	bl func_801DB674
/* 8005D5D4 00059234  38 60 03 F6 */	li r3, 0x3f6
/* 8005D5D8 00059238  48 1E C2 B9 */	bl func_80249890
/* 8005D5DC 0005923C  38 60 03 F6 */	li r3, 0x3f6
/* 8005D5E0 00059240  48 17 E0 95 */	bl func_801DB674
/* 8005D5E4 00059244  A0 7E 00 B2 */	lhz r3, 0xb2(r30)
/* 8005D5E8 00059248  38 00 00 01 */	li r0, 1
/* 8005D5EC 0005924C  C8 02 85 F8 */	lfd f0, lbl_80640BF8-_SDA2_BASE_(r2)
/* 8005D5F0 00059250  38 80 00 03 */	li r4, 3
/* 8005D5F4 00059254  54 63 04 9E */	rlwinm r3, r3, 0, 0x12, 0xf
/* 8005D5F8 00059258  98 9E 00 B0 */	stb r4, 0xb0(r30)
/* 8005D5FC 0005925C  39 61 00 20 */	addi r11, r1, 0x20
/* 8005D600 00059260  98 9E 00 B1 */	stb r4, 0xb1(r30)
/* 8005D604 00059264  B0 7E 00 B2 */	sth r3, 0xb2(r30)
/* 8005D608 00059268  D8 0D 99 60 */	stfd f0, lbl_8063EC20-_SDA_BASE_(r13)
/* 8005D60C 0005926C  D8 0D 99 58 */	stfd f0, lbl_8063EC18-_SDA_BASE_(r13)
/* 8005D610 00059270  D8 0D 99 48 */	stfd f0, lbl_8063EC08-_SDA_BASE_(r13)
/* 8005D614 00059274  D8 0D 99 40 */	stfd f0, lbl_8063EC00-_SDA_BASE_(r13)
/* 8005D618 00059278  D8 0D 99 30 */	stfd f0, lbl_8063EBF0-_SDA_BASE_(r13)
/* 8005D61C 0005927C  D8 0D 99 28 */	stfd f0, lbl_8063EBE8-_SDA_BASE_(r13)
/* 8005D620 00059280  98 0D 99 68 */	stb r0, lbl_8063EC28-_SDA_BASE_(r13)
/* 8005D624 00059284  98 0D 99 50 */	stb r0, lbl_8063EC10-_SDA_BASE_(r13)
/* 8005D628 00059288  98 0D 99 38 */	stb r0, lbl_8063EBF8-_SDA_BASE_(r13)
/* 8005D62C 0005928C  48 16 9B 51 */	bl _restgpr_29
/* 8005D630 00059290  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005D634 00059294  7C 08 03 A6 */	mtlr r0
/* 8005D638 00059298  38 21 00 20 */	addi r1, r1, 0x20
/* 8005D63C 0005929C  4E 80 00 20 */	blr

.global func_8005D640
func_8005D640:
/* 8005D640 000592A0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8005D644 000592A4  7C 08 02 A6 */	mflr r0
/* 8005D648 000592A8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8005D64C 000592AC  39 61 00 30 */	addi r11, r1, 0x30
/* 8005D650 000592B0  48 16 9A D1 */	bl _savegpr_25
/* 8005D654 000592B4  38 60 00 00 */	li r3, 0
/* 8005D658 000592B8  48 0F FC E9 */	bl func_8015D340
/* 8005D65C 000592BC  3F 80 80 41 */	lis r28, lbl_8040B768@ha
/* 8005D660 000592C0  A8 1C B7 68 */	lha r0, lbl_8040B768@l(r28)
/* 8005D664 000592C4  2C 00 FF FF */	cmpwi r0, -1
/* 8005D668 000592C8  41 82 01 0C */	beq lbl_8005D774
/* 8005D66C 000592CC  48 01 1A D1 */	bl func_8006F13C
/* 8005D670 000592D0  48 01 1C 99 */	bl func_8006F308
/* 8005D674 000592D4  3F 60 80 48 */	lis r27, lbl_80478388@ha
/* 8005D678 000592D8  3B BC B7 68 */	addi r29, r28, -18584
/* 8005D67C 000592DC  3B 20 00 00 */	li r25, 0
/* 8005D680 000592E0  3B C0 FF FF */	li r30, -1
/* 8005D684 000592E4  3B 7B 83 88 */	addi r27, r27, lbl_80478388@l
/* 8005D688 000592E8  3B E0 00 00 */	li r31, 0
lbl_8005D68C:
/* 8005D68C 000592EC  57 3A 13 BA */	rlwinm r26, r25, 2, 0xe, 0x1d
/* 8005D690 000592F0  7C 1B D0 2E */	lwzx r0, r27, r26
/* 8005D694 000592F4  2C 00 00 00 */	cmpwi r0, 0
/* 8005D698 000592F8  41 82 00 20 */	beq lbl_8005D6B8
/* 8005D69C 000592FC  57 3C 0B FC */	rlwinm r28, r25, 1, 0xf, 0x1e
/* 8005D6A0 00059300  7C 7D E2 2E */	lhzx r3, r29, r28
/* 8005D6A4 00059304  48 1F 66 29 */	bl func_80253CCC
/* 8005D6A8 00059308  7C 7B D0 2E */	lwzx r3, r27, r26
/* 8005D6AC 0005930C  4B FF 87 85 */	bl func_80055E30
/* 8005D6B0 00059310  7F DD E3 2E */	sthx r30, r29, r28
/* 8005D6B4 00059314  7F FB D1 2E */	stwx r31, r27, r26
lbl_8005D6B8:
/* 8005D6B8 00059318  3B 39 00 01 */	addi r25, r25, 1
/* 8005D6BC 0005931C  28 19 00 20 */	cmplwi r25, 0x20
/* 8005D6C0 00059320  41 80 FF CC */	blt lbl_8005D68C
/* 8005D6C4 00059324  38 00 00 00 */	li r0, 0
/* 8005D6C8 00059328  80 6D 81 FC */	lwz r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005D6CC 0005932C  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005D6D0 00059330  B0 0D 99 16 */	sth r0, lbl_8063EBD6-_SDA_BASE_(r13)
/* 8005D6D4 00059334  48 1F 68 B9 */	bl func_80253F8C
/* 8005D6D8 00059338  3B E0 FF FF */	li r31, -1
/* 8005D6DC 0005933C  80 6D 82 00 */	lwz r3, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005D6E0 00059340  93 ED 81 FC */	stw r31, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005D6E4 00059344  48 1F 68 A9 */	bl func_80253F8C
/* 8005D6E8 00059348  93 ED 82 00 */	stw r31, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005D6EC 0005934C  80 6D 82 04 */	lwz r3, lbl_8063D4C4-_SDA_BASE_(r13)
/* 8005D6F0 00059350  48 1F 68 9D */	bl func_80253F8C
/* 8005D6F4 00059354  93 ED 82 04 */	stw r31, lbl_8063D4C4-_SDA_BASE_(r13)
/* 8005D6F8 00059358  80 6D 82 08 */	lwz r3, lbl_8063D4C8-_SDA_BASE_(r13)
/* 8005D6FC 0005935C  48 1F 68 91 */	bl func_80253F8C
/* 8005D700 00059360  93 ED 82 08 */	stw r31, lbl_8063D4C8-_SDA_BASE_(r13)
/* 8005D704 00059364  80 6D 82 0C */	lwz r3, lbl_8063D4CC-_SDA_BASE_(r13)
/* 8005D708 00059368  48 1F 68 85 */	bl func_80253F8C
/* 8005D70C 0005936C  93 ED 82 0C */	stw r31, lbl_8063D4CC-_SDA_BASE_(r13)
/* 8005D710 00059370  48 01 17 01 */	bl func_8006EE10
/* 8005D714 00059374  38 60 03 EA */	li r3, 0x3ea
/* 8005D718 00059378  48 1E C1 79 */	bl func_80249890
/* 8005D71C 0005937C  38 60 03 EA */	li r3, 0x3ea
/* 8005D720 00059380  48 17 DF 55 */	bl func_801DB674
/* 8005D724 00059384  4B FF B4 81 */	bl VMBASEIsPageValid
/* 8005D728 00059388  3F E0 80 40 */	lis r31, lbl_803FB938@ha
/* 8005D72C 0005938C  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005D730 00059390  3B FF B9 38 */	addi r31, r31, lbl_803FB938@l
/* 8005D734 00059394  7C 7F 00 2E */	lwzx r3, r31, r0
/* 8005D738 00059398  48 1E C1 59 */	bl func_80249890
/* 8005D73C 0005939C  4B FF B4 69 */	bl VMBASEIsPageValid
/* 8005D740 000593A0  54 60 15 BA */	rlwinm r0, r3, 2, 0x16, 0x1d
/* 8005D744 000593A4  7C 7F 00 2E */	lwzx r3, r31, r0
/* 8005D748 000593A8  48 17 DF 2D */	bl func_801DB674
/* 8005D74C 000593AC  48 09 BB 8D */	bl func_800F92D8
/* 8005D750 000593B0  38 60 03 F7 */	li r3, 0x3f7
/* 8005D754 000593B4  48 1E C1 3D */	bl func_80249890
/* 8005D758 000593B8  38 60 03 F7 */	li r3, 0x3f7
/* 8005D75C 000593BC  48 17 DF 19 */	bl func_801DB674
/* 8005D760 000593C0  38 60 00 00 */	li r3, 0
/* 8005D764 000593C4  4B FF C1 21 */	bl func_80059884
/* 8005D768 000593C8  38 00 00 16 */	li r0, 0x16
/* 8005D76C 000593CC  98 0D 99 22 */	stb r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005D770 000593D0  48 1F 37 65 */	bl func_80250ED4
lbl_8005D774:
/* 8005D774 000593D4  39 61 00 30 */	addi r11, r1, 0x30
/* 8005D778 000593D8  48 16 99 F5 */	bl _restgpr_25
/* 8005D77C 000593DC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8005D780 000593E0  7C 08 03 A6 */	mtlr r0
/* 8005D784 000593E4  38 21 00 30 */	addi r1, r1, 0x30
/* 8005D788 000593E8  4E 80 00 20 */	blr

.global func_8005D78C
func_8005D78C:
/* 8005D78C 000593EC  28 04 00 09 */	cmplwi r4, 9
/* 8005D790 000593F0  40 82 00 1C */	bne lbl_8005D7AC
/* 8005D794 000593F4  3C E0 80 48 */	lis r7, lbl_80478408@ha
/* 8005D798 000593F8  38 00 00 00 */	li r0, 0
/* 8005D79C 000593FC  38 E7 84 08 */	addi r7, r7, lbl_80478408@l
/* 8005D7A0 00059400  B0 A7 00 84 */	sth r5, 0x84(r7)
/* 8005D7A4 00059404  B0 C7 00 86 */	sth r6, 0x86(r7)
/* 8005D7A8 00059408  90 07 00 B8 */	stw r0, 0xb8(r7)
lbl_8005D7AC:
/* 8005D7AC 0005940C  38 C0 00 01 */	li r6, 1
/* 8005D7B0 00059410  48 00 00 20 */	b func_8005D7D0

.global func_8005D7B4
func_8005D7B4:
/* 8005D7B4 00059414  3C C0 80 48 */	lis r6, lbl_80478408@ha
/* 8005D7B8 00059418  38 A0 00 0F */	li r5, 0xf
/* 8005D7BC 0005941C  38 C6 84 08 */	addi r6, r6, lbl_80478408@l
/* 8005D7C0 00059420  90 86 00 B8 */	stw r4, 0xb8(r6)
/* 8005D7C4 00059424  38 80 00 09 */	li r4, 9
/* 8005D7C8 00059428  38 C0 00 01 */	li r6, 1
/* 8005D7CC 0005942C  48 00 00 04 */	b func_8005D7D0

.global func_8005D7D0
func_8005D7D0:
/* 8005D7D0 00059430  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8005D7D4 00059434  7C 08 02 A6 */	mflr r0
/* 8005D7D8 00059438  90 01 00 44 */	stw r0, 0x44(r1)
/* 8005D7DC 0005943C  39 61 00 40 */	addi r11, r1, 0x40
/* 8005D7E0 00059440  48 16 99 45 */	bl _savegpr_26
/* 8005D7E4 00059444  28 03 00 02 */	cmplwi r3, 2
/* 8005D7E8 00059448  7C 7A 1B 78 */	mr r26, r3
/* 8005D7EC 0005944C  7C 9D 23 78 */	mr r29, r4
/* 8005D7F0 00059450  7C BE 2B 78 */	mr r30, r5
/* 8005D7F4 00059454  41 80 00 24 */	blt lbl_8005D818
/* 8005D7F8 00059458  2C 04 00 14 */	cmpwi r4, 0x14
/* 8005D7FC 0005945C  41 82 00 1C */	beq lbl_8005D818
/* 8005D800 00059460  40 80 14 08 */	bge lbl_8005EC08
/* 8005D804 00059464  2C 04 00 11 */	cmpwi r4, 0x11
/* 8005D808 00059468  40 80 14 00 */	bge lbl_8005EC08
/* 8005D80C 0005946C  2C 04 00 0D */	cmpwi r4, 0xd
/* 8005D810 00059470  40 80 00 08 */	bge lbl_8005D818
/* 8005D814 00059474  48 00 13 F4 */	b lbl_8005EC08
lbl_8005D818:
/* 8005D818 00059478  3C E0 80 48 */	lis r7, lbl_80478408@ha
/* 8005D81C 0005947C  38 E7 84 08 */	addi r7, r7, lbl_80478408@l
/* 8005D820 00059480  80 E7 00 B4 */	lwz r7, 0xb4(r7)
/* 8005D824 00059484  80 07 00 0C */	lwz r0, 0xc(r7)
/* 8005D828 00059488  2C 00 00 03 */	cmpwi r0, 3
/* 8005D82C 0005948C  40 82 00 70 */	bne lbl_8005D89C
/* 8005D830 00059490  28 04 00 12 */	cmplwi r4, 0x12
/* 8005D834 00059494  40 82 00 20 */	bne lbl_8005D854
/* 8005D838 00059498  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005D83C 0005949C  38 80 00 08 */	li r4, 8
/* 8005D840 000594A0  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005D844 000594A4  38 A0 00 01 */	li r5, 1
/* 8005D848 000594A8  A8 63 00 38 */	lha r3, 0x38(r3)
/* 8005D84C 000594AC  48 1F 65 A5 */	bl func_80253DF0
/* 8005D850 000594B0  48 00 13 B8 */	b lbl_8005EC08
lbl_8005D854:
/* 8005D854 000594B4  28 04 00 13 */	cmplwi r4, 0x13
/* 8005D858 000594B8  40 82 00 20 */	bne lbl_8005D878
/* 8005D85C 000594BC  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005D860 000594C0  38 80 00 08 */	li r4, 8
/* 8005D864 000594C4  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005D868 000594C8  38 A0 00 00 */	li r5, 0
/* 8005D86C 000594CC  A8 63 00 38 */	lha r3, 0x38(r3)
/* 8005D870 000594D0  48 1F 65 81 */	bl func_80253DF0
/* 8005D874 000594D4  48 00 13 94 */	b lbl_8005EC08
lbl_8005D878:
/* 8005D878 000594D8  28 04 00 11 */	cmplwi r4, 0x11
/* 8005D87C 000594DC  40 82 00 20 */	bne lbl_8005D89C
/* 8005D880 000594E0  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005D884 000594E4  38 80 00 08 */	li r4, 8
/* 8005D888 000594E8  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005D88C 000594EC  38 A0 00 00 */	li r5, 0
/* 8005D890 000594F0  A8 63 00 06 */	lha r3, 6(r3)
/* 8005D894 000594F4  48 1F 65 5D */	bl func_80253DF0
/* 8005D898 000594F8  48 00 13 70 */	b lbl_8005EC08
lbl_8005D89C:
/* 8005D89C 000594FC  2C 00 00 01 */	cmpwi r0, 1
/* 8005D8A0 00059500  40 82 01 14 */	bne lbl_8005D9B4
/* 8005D8A4 00059504  88 07 00 1B */	lbz r0, 0x1b(r7)
/* 8005D8A8 00059508  28 00 00 02 */	cmplwi r0, 2
/* 8005D8AC 0005950C  40 82 01 08 */	bne lbl_8005D9B4
/* 8005D8B0 00059510  2C 06 00 00 */	cmpwi r6, 0
/* 8005D8B4 00059514  41 82 01 00 */	beq lbl_8005D9B4
/* 8005D8B8 00059518  28 04 00 15 */	cmplwi r4, 0x15
/* 8005D8BC 0005951C  40 82 00 BC */	bne lbl_8005D978
/* 8005D8C0 00059520  3F A0 80 48 */	lis r29, lbl_80478408@ha
/* 8005D8C4 00059524  3B BD 84 08 */	addi r29, r29, lbl_80478408@l
/* 8005D8C8 00059528  A0 1D 00 6E */	lhz r0, 0x6e(r29)
/* 8005D8CC 0005952C  2C 00 00 00 */	cmpwi r0, 0
/* 8005D8D0 00059530  40 82 13 38 */	bne lbl_8005EC08
/* 8005D8D4 00059534  3F 80 80 41 */	lis r28, lbl_8040B768@ha
/* 8005D8D8 00059538  38 80 00 08 */	li r4, 8
/* 8005D8DC 0005953C  3B 9C B7 68 */	addi r28, r28, lbl_8040B768@l
/* 8005D8E0 00059540  38 A0 00 00 */	li r5, 0
/* 8005D8E4 00059544  A8 7C 00 14 */	lha r3, 0x14(r28)
/* 8005D8E8 00059548  48 1F 65 09 */	bl func_80253DF0
/* 8005D8EC 0005954C  A8 7C 00 20 */	lha r3, 0x20(r28)
/* 8005D8F0 00059550  38 80 00 08 */	li r4, 8
/* 8005D8F4 00059554  38 A0 00 00 */	li r5, 0
/* 8005D8F8 00059558  48 1F 64 F9 */	bl func_80253DF0
/* 8005D8FC 0005955C  A8 7C 00 22 */	lha r3, 0x22(r28)
/* 8005D900 00059560  38 80 00 08 */	li r4, 8
/* 8005D904 00059564  38 A0 00 00 */	li r5, 0
/* 8005D908 00059568  48 1F 64 E9 */	bl func_80253DF0
/* 8005D90C 0005956C  A8 7C 00 24 */	lha r3, 0x24(r28)
/* 8005D910 00059570  38 80 00 08 */	li r4, 8
/* 8005D914 00059574  38 A0 00 00 */	li r5, 0
/* 8005D918 00059578  48 1F 64 D9 */	bl func_80253DF0
/* 8005D91C 0005957C  A8 7C 00 26 */	lha r3, 0x26(r28)
/* 8005D920 00059580  38 80 00 08 */	li r4, 8
/* 8005D924 00059584  38 A0 00 00 */	li r5, 0
/* 8005D928 00059588  48 1F 64 C9 */	bl func_80253DF0
/* 8005D92C 0005958C  A8 7C 00 28 */	lha r3, 0x28(r28)
/* 8005D930 00059590  38 80 00 08 */	li r4, 8
/* 8005D934 00059594  38 A0 00 00 */	li r5, 0
/* 8005D938 00059598  48 1F 64 B9 */	bl func_80253DF0
/* 8005D93C 0005959C  A8 7C 00 2A */	lha r3, 0x2a(r28)
/* 8005D940 000595A0  38 80 00 08 */	li r4, 8
/* 8005D944 000595A4  38 A0 00 00 */	li r5, 0
/* 8005D948 000595A8  48 1F 64 A9 */	bl func_80253DF0
/* 8005D94C 000595AC  38 00 00 08 */	li r0, 8
/* 8005D950 000595B0  A0 7D 00 84 */	lhz r3, 0x84(r29)
/* 8005D954 000595B4  B0 1D 00 90 */	sth r0, 0x90(r29)
/* 8005D958 000595B8  48 1F 29 7D */	bl func_802502D4
/* 8005D95C 000595BC  A0 1D 00 B2 */	lhz r0, 0xb2(r29)
/* 8005D960 000595C0  38 60 00 00 */	li r3, 0
/* 8005D964 000595C4  98 7D 00 B0 */	stb r3, 0xb0(r29)
/* 8005D968 000595C8  54 00 04 9E */	rlwinm r0, r0, 0, 0x12, 0xf
/* 8005D96C 000595CC  B0 7D 00 8E */	sth r3, 0x8e(r29)
/* 8005D970 000595D0  B0 1D 00 B2 */	sth r0, 0xb2(r29)
/* 8005D974 000595D4  48 00 12 94 */	b lbl_8005EC08
lbl_8005D978:
/* 8005D978 000595D8  3C E0 80 48 */	lis r7, lbl_80478408@ha
/* 8005D97C 000595DC  54 68 0D FC */	rlwinm r8, r3, 1, 0x17, 0x1e
/* 8005D980 000595E0  38 E7 84 08 */	addi r7, r7, lbl_80478408@l
/* 8005D984 000595E4  28 03 00 01 */	cmplwi r3, 1
/* 8005D988 000595E8  7C C7 1A 14 */	add r6, r7, r3
/* 8005D98C 000595EC  38 00 00 0F */	li r0, 0xf
/* 8005D990 000595F0  98 66 00 A6 */	stb r3, 0xa6(r6)
/* 8005D994 000595F4  7C 67 42 14 */	add r3, r7, r8
/* 8005D998 000595F8  B0 83 00 A8 */	sth r4, 0xa8(r3)
/* 8005D99C 000595FC  B0 A3 00 AC */	sth r5, 0xac(r3)
/* 8005D9A0 00059600  98 06 00 B0 */	stb r0, 0xb0(r6)
/* 8005D9A4 00059604  40 82 12 64 */	bne lbl_8005EC08
/* 8005D9A8 00059608  38 00 00 11 */	li r0, 0x11
/* 8005D9AC 0005960C  98 06 00 B0 */	stb r0, 0xb0(r6)
/* 8005D9B0 00059610  48 00 12 58 */	b lbl_8005EC08
lbl_8005D9B4:
/* 8005D9B4 00059614  3F E0 80 48 */	lis r31, lbl_80478408@ha
/* 8005D9B8 00059618  3C 80 80 41 */	lis r4, lbl_8040B768@ha
/* 8005D9BC 0005961C  3B FF 84 08 */	addi r31, r31, lbl_80478408@l
/* 8005D9C0 00059620  38 A1 00 18 */	addi r5, r1, 0x18
/* 8005D9C4 00059624  38 84 B7 68 */	addi r4, r4, lbl_8040B768@l
/* 8005D9C8 00059628  B0 7F 00 6E */	sth r3, 0x6e(r31)
/* 8005D9CC 0005962C  A8 64 00 06 */	lha r3, 6(r4)
/* 8005D9D0 00059630  38 80 00 08 */	li r4, 8
/* 8005D9D4 00059634  48 1F 64 79 */	bl func_80253E4C
/* 8005D9D8 00059638  2C 1D 00 10 */	cmpwi r29, 0x10
/* 8005D9DC 0005963C  9B AD 99 22 */	stb r29, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005D9E0 00059640  41 82 01 F8 */	beq lbl_8005DBD8
/* 8005D9E4 00059644  40 80 00 1C */	bge lbl_8005DA00
/* 8005D9E8 00059648  2C 1D 00 0E */	cmpwi r29, 0xe
/* 8005D9EC 0005964C  41 82 01 54 */	beq lbl_8005DB40
/* 8005D9F0 00059650  40 80 01 B8 */	bge lbl_8005DBA8
/* 8005D9F4 00059654  2C 1D 00 0D */	cmpwi r29, 0xd
/* 8005D9F8 00059658  40 80 00 14 */	bge lbl_8005DA0C
/* 8005D9FC 0005965C  48 00 02 18 */	b lbl_8005DC14
lbl_8005DA00:
/* 8005DA00 00059660  2C 1D 00 14 */	cmpwi r29, 0x14
/* 8005DA04 00059664  41 82 01 D4 */	beq lbl_8005DBD8
/* 8005DA08 00059668  48 00 02 0C */	b lbl_8005DC14
lbl_8005DA0C:
/* 8005DA0C 0005966C  A0 1F 00 A0 */	lhz r0, 0xa0(r31)
/* 8005DA10 00059670  28 00 00 26 */	cmplwi r0, 0x26
/* 8005DA14 00059674  41 82 01 14 */	beq lbl_8005DB28
/* 8005DA18 00059678  48 01 15 B1 */	bl func_8006EFC8
/* 8005DA1C 0005967C  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8005DA20 00059680  80 03 00 08 */	lwz r0, 8(r3)
/* 8005DA24 00059684  2C 00 00 03 */	cmpwi r0, 3
/* 8005DA28 00059688  41 82 00 48 */	beq lbl_8005DA70
/* 8005DA2C 0005968C  40 80 00 14 */	bge lbl_8005DA40
/* 8005DA30 00059690  2C 00 00 01 */	cmpwi r0, 1
/* 8005DA34 00059694  41 82 00 18 */	beq lbl_8005DA4C
/* 8005DA38 00059698  40 80 00 20 */	bge lbl_8005DA58
/* 8005DA3C 0005969C  48 00 00 34 */	b lbl_8005DA70
lbl_8005DA40:
/* 8005DA40 000596A0  2C 00 00 05 */	cmpwi r0, 5
/* 8005DA44 000596A4  40 80 00 2C */	bge lbl_8005DA70
/* 8005DA48 000596A8  48 00 00 1C */	b lbl_8005DA64
lbl_8005DA4C:
/* 8005DA4C 000596AC  38 00 00 02 */	li r0, 2
/* 8005DA50 000596B0  B0 1F 00 9C */	sth r0, 0x9c(r31)
/* 8005DA54 000596B4  48 00 00 2C */	b lbl_8005DA80
lbl_8005DA58:
/* 8005DA58 000596B8  38 00 00 02 */	li r0, 2
/* 8005DA5C 000596BC  B0 1F 00 9C */	sth r0, 0x9c(r31)
/* 8005DA60 000596C0  48 00 00 20 */	b lbl_8005DA80
lbl_8005DA64:
/* 8005DA64 000596C4  38 00 00 04 */	li r0, 4
/* 8005DA68 000596C8  B0 1F 00 9C */	sth r0, 0x9c(r31)
/* 8005DA6C 000596CC  48 00 00 14 */	b lbl_8005DA80
lbl_8005DA70:
/* 8005DA70 000596D0  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005DA74 000596D4  38 00 00 02 */	li r0, 2
/* 8005DA78 000596D8  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005DA7C 000596DC  B0 03 00 9C */	sth r0, 0x9c(r3)
lbl_8005DA80:
/* 8005DA80 000596E0  57 C0 06 F7 */	rlwinm. r0, r30, 0, 0x1b, 0x1b
/* 8005DA84 000596E4  41 82 00 1C */	beq lbl_8005DAA0
/* 8005DA88 000596E8  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005DA8C 000596EC  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005DA90 000596F0  A0 03 00 8C */	lhz r0, 0x8c(r3)
/* 8005DA94 000596F4  7C 00 F3 78 */	or r0, r0, r30
/* 8005DA98 000596F8  B0 03 00 8C */	sth r0, 0x8c(r3)
/* 8005DA9C 000596FC  48 00 00 10 */	b lbl_8005DAAC
lbl_8005DAA0:
/* 8005DAA0 00059700  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005DAA4 00059704  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005DAA8 00059708  B3 C3 00 8C */	sth r30, 0x8c(r3)
lbl_8005DAAC:
/* 8005DAAC 0005970C  3C E0 80 48 */	lis r7, lbl_80478408@ha
/* 8005DAB0 00059710  3C 60 80 06 */	lis r3, func_80062F08@ha
/* 8005DAB4 00059714  38 E7 84 08 */	addi r7, r7, lbl_80478408@l
/* 8005DAB8 00059718  38 A0 08 00 */	li r5, 0x800
/* 8005DABC 0005971C  38 C0 00 00 */	li r6, 0
/* 8005DAC0 00059720  38 00 00 25 */	li r0, 0x25
/* 8005DAC4 00059724  3C 80 80 06 */	lis r4, func_80062FF8@ha
/* 8005DAC8 00059728  B0 A7 00 6A */	sth r5, 0x6a(r7)
/* 8005DACC 0005972C  80 AD 82 04 */	lwz r5, lbl_8063D4C4-_SDA_BASE_(r13)
/* 8005DAD0 00059730  38 63 2F 08 */	addi r3, r3, func_80062F08@l
/* 8005DAD4 00059734  B0 C7 00 9E */	sth r6, 0x9e(r7)
/* 8005DAD8 00059738  38 84 2F F8 */	addi r4, r4, func_80062FF8@l
/* 8005DADC 0005973C  B0 07 00 A0 */	sth r0, 0xa0(r7)
/* 8005DAE0 00059740  48 1F 64 8D */	bl func_80253F6C
/* 8005DAE4 00059744  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005DAE8 00059748  90 6D 82 04 */	stw r3, lbl_8063D4C4-_SDA_BASE_(r13)
/* 8005DAEC 0005974C  2C 00 00 00 */	cmpwi r0, 0
/* 8005DAF0 00059750  40 82 00 2C */	bne lbl_8005DB1C
/* 8005DAF4 00059754  3F 80 80 41 */	lis r28, lbl_8040B768@ha
/* 8005DAF8 00059758  38 80 00 08 */	li r4, 8
/* 8005DAFC 0005975C  3B 9C B7 68 */	addi r28, r28, lbl_8040B768@l
/* 8005DB00 00059760  38 A0 00 01 */	li r5, 1
/* 8005DB04 00059764  A8 7C 00 06 */	lha r3, 6(r28)
/* 8005DB08 00059768  48 1F 62 E9 */	bl func_80253DF0
/* 8005DB0C 0005976C  A8 7C 00 06 */	lha r3, 6(r28)
/* 8005DB10 00059770  38 80 00 00 */	li r4, 0
/* 8005DB14 00059774  38 A0 00 00 */	li r5, 0
/* 8005DB18 00059778  48 1F 62 99 */	bl func_80253DB0
lbl_8005DB1C:
/* 8005DB1C 0005977C  38 60 00 01 */	li r3, 1
/* 8005DB20 00059780  48 00 49 75 */	bl func_80062494
/* 8005DB24 00059784  48 00 10 E4 */	b lbl_8005EC08
lbl_8005DB28:
/* 8005DB28 00059788  57 C0 06 F7 */	rlwinm. r0, r30, 0, 0x1b, 0x1b
/* 8005DB2C 0005978C  41 82 10 DC */	beq lbl_8005EC08
/* 8005DB30 00059790  A0 1F 00 8C */	lhz r0, 0x8c(r31)
/* 8005DB34 00059794  7C 00 F3 78 */	or r0, r0, r30
/* 8005DB38 00059798  B0 1F 00 8C */	sth r0, 0x8c(r31)
/* 8005DB3C 0005979C  48 00 10 CC */	b lbl_8005EC08
lbl_8005DB40:
/* 8005DB40 000597A0  2C 1A 00 02 */	cmpwi r26, 2
/* 8005DB44 000597A4  41 82 00 44 */	beq lbl_8005DB88
/* 8005DB48 000597A8  40 80 00 14 */	bge lbl_8005DB5C
/* 8005DB4C 000597AC  2C 1A 00 00 */	cmpwi r26, 0
/* 8005DB50 000597B0  41 82 00 18 */	beq lbl_8005DB68
/* 8005DB54 000597B4  40 80 00 24 */	bge lbl_8005DB78
/* 8005DB58 000597B8  48 00 10 B0 */	b lbl_8005EC08
lbl_8005DB5C:
/* 8005DB5C 000597BC  2C 1A 00 04 */	cmpwi r26, 4
/* 8005DB60 000597C0  40 80 10 A8 */	bge lbl_8005EC08
/* 8005DB64 000597C4  48 00 00 34 */	b lbl_8005DB98
lbl_8005DB68:
/* 8005DB68 000597C8  A0 1F 00 9E */	lhz r0, 0x9e(r31)
/* 8005DB6C 000597CC  60 00 00 01 */	ori r0, r0, 1
/* 8005DB70 000597D0  B0 1F 00 9E */	sth r0, 0x9e(r31)
/* 8005DB74 000597D4  48 00 10 94 */	b lbl_8005EC08
lbl_8005DB78:
/* 8005DB78 000597D8  A0 1F 00 9E */	lhz r0, 0x9e(r31)
/* 8005DB7C 000597DC  60 00 00 02 */	ori r0, r0, 2
/* 8005DB80 000597E0  B0 1F 00 9E */	sth r0, 0x9e(r31)
/* 8005DB84 000597E4  48 00 10 84 */	b lbl_8005EC08
lbl_8005DB88:
/* 8005DB88 000597E8  A0 1F 00 9E */	lhz r0, 0x9e(r31)
/* 8005DB8C 000597EC  60 00 00 04 */	ori r0, r0, 4
/* 8005DB90 000597F0  B0 1F 00 9E */	sth r0, 0x9e(r31)
/* 8005DB94 000597F4  48 00 10 74 */	b lbl_8005EC08
lbl_8005DB98:
/* 8005DB98 000597F8  A0 1F 00 9E */	lhz r0, 0x9e(r31)
/* 8005DB9C 000597FC  60 00 00 08 */	ori r0, r0, 8
/* 8005DBA0 00059800  B0 1F 00 9E */	sth r0, 0x9e(r31)
/* 8005DBA4 00059804  48 00 10 64 */	b lbl_8005EC08
lbl_8005DBA8:
/* 8005DBA8 00059808  38 A0 00 27 */	li r5, 0x27
/* 8005DBAC 0005980C  38 00 00 1D */	li r0, 0x1d
/* 8005DBB0 00059810  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005DBB4 00059814  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005DBB8 00059818  B0 BF 00 A0 */	sth r5, 0xa0(r31)
/* 8005DBBC 0005981C  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005DBC0 00059820  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005DBC4 00059824  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005DBC8 00059828  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005DBCC 0005982C  48 1F 63 A1 */	bl func_80253F6C
/* 8005DBD0 00059830  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005DBD4 00059834  48 00 10 34 */	b lbl_8005EC08
lbl_8005DBD8:
/* 8005DBD8 00059838  3C A0 80 48 */	lis r5, lbl_80478408@ha
/* 8005DBDC 0005983C  38 A5 84 08 */	addi r5, r5, lbl_80478408@l
/* 8005DBE0 00059840  A0 05 00 9A */	lhz r0, 0x9a(r5)
/* 8005DBE4 00059844  2C 00 00 00 */	cmpwi r0, 0
/* 8005DBE8 00059848  40 82 10 20 */	bne lbl_8005EC08
/* 8005DBEC 0005984C  38 00 00 01 */	li r0, 1
/* 8005DBF0 00059850  3C 60 80 06 */	lis r3, func_80062FFC@ha
/* 8005DBF4 00059854  3C 80 80 06 */	lis r4, func_8006314C@ha
/* 8005DBF8 00059858  B0 05 00 9A */	sth r0, 0x9a(r5)
/* 8005DBFC 0005985C  80 AD 82 08 */	lwz r5, lbl_8063D4C8-_SDA_BASE_(r13)
/* 8005DC00 00059860  38 63 2F FC */	addi r3, r3, func_80062FFC@l
/* 8005DC04 00059864  38 84 31 4C */	addi r4, r4, func_8006314C@l
/* 8005DC08 00059868  48 1F 63 65 */	bl func_80253F6C
/* 8005DC0C 0005986C  90 6D 82 08 */	stw r3, lbl_8063D4C8-_SDA_BASE_(r13)
/* 8005DC10 00059870  48 00 0F F8 */	b lbl_8005EC08
lbl_8005DC14:
/* 8005DC14 00059874  38 00 00 00 */	li r0, 0
/* 8005DC18 00059878  2C 1D 00 0D */	cmpwi r29, 0xd
/* 8005DC1C 0005987C  9B AD 99 22 */	stb r29, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005DC20 00059880  B0 0D 99 16 */	sth r0, lbl_8063EBD6-_SDA_BASE_(r13)
/* 8005DC24 00059884  40 80 00 0C */	bge lbl_8005DC30
/* 8005DC28 00059888  2C 1D 00 09 */	cmpwi r29, 9
/* 8005DC2C 0005988C  40 80 01 1C */	bge lbl_8005DD48
lbl_8005DC30:
/* 8005DC30 00059890  38 60 00 01 */	li r3, 1
/* 8005DC34 00059894  48 00 48 61 */	bl func_80062494
/* 8005DC38 00059898  3F 80 80 48 */	lis r28, lbl_80478408@ha
/* 8005DC3C 0005989C  3B 60 00 00 */	li r27, 0
/* 8005DC40 000598A0  3B 9C 84 08 */	addi r28, r28, lbl_80478408@l
/* 8005DC44 000598A4  3B E0 00 00 */	li r31, 0
lbl_8005DC48:
/* 8005DC48 000598A8  7C 7C FA 14 */	add r3, r28, r31
/* 8005DC4C 000598AC  83 43 00 04 */	lwz r26, 4(r3)
/* 8005DC50 000598B0  7F 43 D3 78 */	mr r3, r26
/* 8005DC54 000598B4  4B FF 8F F9 */	bl func_80056C4C
/* 8005DC58 000598B8  2C 03 00 00 */	cmpwi r3, 0
/* 8005DC5C 000598BC  41 82 00 10 */	beq lbl_8005DC6C
/* 8005DC60 000598C0  7F 43 D3 78 */	mr r3, r26
/* 8005DC64 000598C4  48 37 E5 39 */	bl func_803DC19C
/* 8005DC68 000598C8  4B FF ED 99 */	bl func_8005CA00
lbl_8005DC6C:
/* 8005DC6C 000598CC  3B 7B 00 01 */	addi r27, r27, 1
/* 8005DC70 000598D0  3B FF 00 04 */	addi r31, r31, 4
/* 8005DC74 000598D4  28 1B 00 06 */	cmplwi r27, 6
/* 8005DC78 000598D8  41 80 FF D0 */	blt lbl_8005DC48
/* 8005DC7C 000598DC  3F 80 80 48 */	lis r28, lbl_80478408@ha
/* 8005DC80 000598E0  3B 60 00 00 */	li r27, 0
/* 8005DC84 000598E4  3B 9C 84 08 */	addi r28, r28, lbl_80478408@l
/* 8005DC88 000598E8  3B E0 00 00 */	li r31, 0
lbl_8005DC8C:
/* 8005DC8C 000598EC  7C 7C FA 14 */	add r3, r28, r31
/* 8005DC90 000598F0  83 43 00 1C */	lwz r26, 0x1c(r3)
/* 8005DC94 000598F4  7F 43 D3 78 */	mr r3, r26
/* 8005DC98 000598F8  4B FF 8F B5 */	bl func_80056C4C
/* 8005DC9C 000598FC  2C 03 00 00 */	cmpwi r3, 0
/* 8005DCA0 00059900  41 82 00 10 */	beq lbl_8005DCB0
/* 8005DCA4 00059904  7F 43 D3 78 */	mr r3, r26
/* 8005DCA8 00059908  48 37 E4 F5 */	bl func_803DC19C
/* 8005DCAC 0005990C  4B FF ED 55 */	bl func_8005CA00
lbl_8005DCB0:
/* 8005DCB0 00059910  3B 7B 00 01 */	addi r27, r27, 1
/* 8005DCB4 00059914  3B FF 00 04 */	addi r31, r31, 4
/* 8005DCB8 00059918  28 1B 00 06 */	cmplwi r27, 6
/* 8005DCBC 0005991C  41 80 FF D0 */	blt lbl_8005DC8C
/* 8005DCC0 00059920  3F 80 80 48 */	lis r28, lbl_80478408@ha
/* 8005DCC4 00059924  3B 60 00 00 */	li r27, 0
/* 8005DCC8 00059928  3B 9C 84 08 */	addi r28, r28, lbl_80478408@l
/* 8005DCCC 0005992C  3B E0 00 00 */	li r31, 0
lbl_8005DCD0:
/* 8005DCD0 00059930  7C 7C FA 14 */	add r3, r28, r31
/* 8005DCD4 00059934  83 43 00 34 */	lwz r26, 0x34(r3)
/* 8005DCD8 00059938  7F 43 D3 78 */	mr r3, r26
/* 8005DCDC 0005993C  4B FF 8F 71 */	bl func_80056C4C
/* 8005DCE0 00059940  2C 03 00 00 */	cmpwi r3, 0
/* 8005DCE4 00059944  41 82 00 10 */	beq lbl_8005DCF4
/* 8005DCE8 00059948  7F 43 D3 78 */	mr r3, r26
/* 8005DCEC 0005994C  48 37 E4 B1 */	bl func_803DC19C
/* 8005DCF0 00059950  4B FF ED 11 */	bl func_8005CA00
lbl_8005DCF4:
/* 8005DCF4 00059954  3B 7B 00 01 */	addi r27, r27, 1
/* 8005DCF8 00059958  3B FF 00 04 */	addi r31, r31, 4
/* 8005DCFC 0005995C  28 1B 00 06 */	cmplwi r27, 6
/* 8005DD00 00059960  41 80 FF D0 */	blt lbl_8005DCD0
/* 8005DD04 00059964  3F 80 80 48 */	lis r28, lbl_80478408@ha
/* 8005DD08 00059968  3B 60 00 00 */	li r27, 0
/* 8005DD0C 0005996C  3B 9C 84 08 */	addi r28, r28, lbl_80478408@l
/* 8005DD10 00059970  3B E0 00 00 */	li r31, 0
lbl_8005DD14:
/* 8005DD14 00059974  7C 7C FA 14 */	add r3, r28, r31
/* 8005DD18 00059978  83 43 00 4C */	lwz r26, 0x4c(r3)
/* 8005DD1C 0005997C  7F 43 D3 78 */	mr r3, r26
/* 8005DD20 00059980  4B FF 8F 2D */	bl func_80056C4C
/* 8005DD24 00059984  2C 03 00 00 */	cmpwi r3, 0
/* 8005DD28 00059988  41 82 00 10 */	beq lbl_8005DD38
/* 8005DD2C 0005998C  7F 43 D3 78 */	mr r3, r26
/* 8005DD30 00059990  48 37 E4 6D */	bl func_803DC19C
/* 8005DD34 00059994  4B FF EC CD */	bl func_8005CA00
lbl_8005DD38:
/* 8005DD38 00059998  3B 7B 00 01 */	addi r27, r27, 1
/* 8005DD3C 0005999C  3B FF 00 04 */	addi r31, r31, 4
/* 8005DD40 000599A0  28 1B 00 06 */	cmplwi r27, 6
/* 8005DD44 000599A4  41 80 FF D0 */	blt lbl_8005DD14
lbl_8005DD48:
/* 8005DD48 000599A8  28 1D 00 09 */	cmplwi r29, 9
/* 8005DD4C 000599AC  41 82 00 14 */	beq lbl_8005DD60
/* 8005DD50 000599B0  28 1D 00 0B */	cmplwi r29, 0xb
/* 8005DD54 000599B4  41 82 00 0C */	beq lbl_8005DD60
/* 8005DD58 000599B8  38 00 00 01 */	li r0, 1
/* 8005DD5C 000599BC  98 0D 81 F8 */	stb r0, lbl_8063D4B8-_SDA_BASE_(r13)
lbl_8005DD60:
/* 8005DD60 000599C0  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005DD64 000599C4  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005DD68 000599C8  A0 03 00 6E */	lhz r0, 0x6e(r3)
/* 8005DD6C 000599CC  2C 00 00 00 */	cmpwi r0, 0
/* 8005DD70 000599D0  40 82 00 3C */	bne lbl_8005DDAC
/* 8005DD74 000599D4  88 6D 99 22 */	lbz r3, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005DD78 000599D8  28 03 00 03 */	cmplwi r3, 3
/* 8005DD7C 000599DC  40 82 00 14 */	bne lbl_8005DD90
/* 8005DD80 000599E0  28 1E 00 01 */	cmplwi r30, 1
/* 8005DD84 000599E4  40 82 00 0C */	bne lbl_8005DD90
/* 8005DD88 000599E8  38 00 00 00 */	li r0, 0
/* 8005DD8C 000599EC  98 0D 81 F8 */	stb r0, lbl_8063D4B8-_SDA_BASE_(r13)
lbl_8005DD90:
/* 8005DD90 000599F0  28 03 00 08 */	cmplwi r3, 8
/* 8005DD94 000599F4  40 82 00 4C */	bne lbl_8005DDE0
/* 8005DD98 000599F8  28 1E 00 01 */	cmplwi r30, 1
/* 8005DD9C 000599FC  40 82 00 44 */	bne lbl_8005DDE0
/* 8005DDA0 00059A00  38 00 00 00 */	li r0, 0
/* 8005DDA4 00059A04  98 0D 81 F8 */	stb r0, lbl_8063D4B8-_SDA_BASE_(r13)
/* 8005DDA8 00059A08  48 00 00 38 */	b lbl_8005DDE0
lbl_8005DDAC:
/* 8005DDAC 00059A0C  88 6D 99 22 */	lbz r3, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005DDB0 00059A10  28 03 00 03 */	cmplwi r3, 3
/* 8005DDB4 00059A14  40 82 00 14 */	bne lbl_8005DDC8
/* 8005DDB8 00059A18  28 1E 00 01 */	cmplwi r30, 1
/* 8005DDBC 00059A1C  40 82 00 0C */	bne lbl_8005DDC8
/* 8005DDC0 00059A20  38 00 00 00 */	li r0, 0
/* 8005DDC4 00059A24  98 0D 81 F8 */	stb r0, lbl_8063D4B8-_SDA_BASE_(r13)
lbl_8005DDC8:
/* 8005DDC8 00059A28  28 03 00 08 */	cmplwi r3, 8
/* 8005DDCC 00059A2C  40 82 00 14 */	bne lbl_8005DDE0
/* 8005DDD0 00059A30  28 1E 00 01 */	cmplwi r30, 1
/* 8005DDD4 00059A34  40 82 00 0C */	bne lbl_8005DDE0
/* 8005DDD8 00059A38  38 00 00 00 */	li r0, 0
/* 8005DDDC 00059A3C  98 0D 81 F8 */	stb r0, lbl_8063D4B8-_SDA_BASE_(r13)
lbl_8005DDE0:
/* 8005DDE0 00059A40  3F E0 80 48 */	lis r31, lbl_80478408@ha
/* 8005DDE4 00059A44  3B FF 84 08 */	addi r31, r31, lbl_80478408@l
/* 8005DDE8 00059A48  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8005DDEC 00059A4C  80 03 00 0C */	lwz r0, 0xc(r3)
/* 8005DDF0 00059A50  2C 00 00 01 */	cmpwi r0, 1
/* 8005DDF4 00059A54  40 82 07 9C */	bne lbl_8005E590
/* 8005DDF8 00059A58  88 03 00 1B */	lbz r0, 0x1b(r3)
/* 8005DDFC 00059A5C  28 00 00 02 */	cmplwi r0, 2
/* 8005DE00 00059A60  40 82 07 90 */	bne lbl_8005E590
/* 8005DE04 00059A64  28 1D 00 0C */	cmplwi r29, 0xc
/* 8005DE08 00059A68  41 81 02 F0 */	bgt lbl_8005E0F8
/* 8005DE0C 00059A6C  3C 60 80 41 */	lis r3, lbl_8040B85C@ha
/* 8005DE10 00059A70  57 A0 10 3A */	slwi r0, r29, 2
/* 8005DE14 00059A74  38 63 B8 5C */	addi r3, r3, lbl_8040B85C@l
/* 8005DE18 00059A78  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005DE1C 00059A7C  7C 69 03 A6 */	mtctr r3
/* 8005DE20 00059A80  4E 80 04 20 */	bctr
/* 8005DE24 00059A84  48 01 11 A5 */	bl func_8006EFC8
/* 8005DE28 00059A88  38 00 00 00 */	li r0, 0
/* 8005DE2C 00059A8C  38 60 00 00 */	li r3, 0
/* 8005DE30 00059A90  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DE34 00059A94  48 00 30 01 */	bl func_80060E34
/* 8005DE38 00059A98  A0 1F 00 B2 */	lhz r0, 0xb2(r31)
/* 8005DE3C 00059A9C  B3 DF 00 8A */	sth r30, 0x8a(r31)
/* 8005DE40 00059AA0  54 00 04 9E */	rlwinm r0, r0, 0, 0x12, 0xf
/* 8005DE44 00059AA4  B0 1F 00 B2 */	sth r0, 0xb2(r31)
/* 8005DE48 00059AA8  48 00 02 B0 */	b lbl_8005E0F8
/* 8005DE4C 00059AAC  48 01 11 7D */	bl func_8006EFC8
/* 8005DE50 00059AB0  38 00 00 01 */	li r0, 1
/* 8005DE54 00059AB4  38 60 00 02 */	li r3, 2
/* 8005DE58 00059AB8  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DE5C 00059ABC  48 00 2F D9 */	bl func_80060E34
/* 8005DE60 00059AC0  A0 1F 00 B2 */	lhz r0, 0xb2(r31)
/* 8005DE64 00059AC4  B3 DF 00 8A */	sth r30, 0x8a(r31)
/* 8005DE68 00059AC8  54 00 04 9E */	rlwinm r0, r0, 0, 0x12, 0xf
/* 8005DE6C 00059ACC  B0 1F 00 B2 */	sth r0, 0xb2(r31)
/* 8005DE70 00059AD0  48 00 02 88 */	b lbl_8005E0F8
/* 8005DE74 00059AD4  48 01 11 55 */	bl func_8006EFC8
/* 8005DE78 00059AD8  38 00 00 00 */	li r0, 0
/* 8005DE7C 00059ADC  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DE80 00059AE0  48 00 02 78 */	b lbl_8005E0F8
/* 8005DE84 00059AE4  48 01 11 45 */	bl func_8006EFC8
/* 8005DE88 00059AE8  38 00 00 00 */	li r0, 0
/* 8005DE8C 00059AEC  B3 DF 00 A2 */	sth r30, 0xa2(r31)
/* 8005DE90 00059AF0  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DE94 00059AF4  48 00 02 64 */	b lbl_8005E0F8
/* 8005DE98 00059AF8  48 01 11 31 */	bl func_8006EFC8
/* 8005DE9C 00059AFC  38 00 00 01 */	li r0, 1
/* 8005DEA0 00059B00  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DEA4 00059B04  48 00 02 54 */	b lbl_8005E0F8
/* 8005DEA8 00059B08  48 01 11 21 */	bl func_8006EFC8
/* 8005DEAC 00059B0C  38 00 00 01 */	li r0, 1
/* 8005DEB0 00059B10  B3 DF 00 A2 */	sth r30, 0xa2(r31)
/* 8005DEB4 00059B14  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DEB8 00059B18  48 00 02 40 */	b lbl_8005E0F8
/* 8005DEBC 00059B1C  48 01 11 0D */	bl func_8006EFC8
/* 8005DEC0 00059B20  38 00 00 FF */	li r0, 0xff
/* 8005DEC4 00059B24  28 1D 00 03 */	cmplwi r29, 3
/* 8005DEC8 00059B28  B0 0D 99 1E */	sth r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005DECC 00059B2C  40 82 00 18 */	bne lbl_8005DEE4
/* 8005DED0 00059B30  38 60 00 01 */	li r3, 1
/* 8005DED4 00059B34  38 00 00 00 */	li r0, 0
/* 8005DED8 00059B38  B0 6D 99 20 */	sth r3, lbl_8063EBE0-_SDA_BASE_(r13)
/* 8005DEDC 00059B3C  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DEE0 00059B40  48 00 02 18 */	b lbl_8005E0F8
lbl_8005DEE4:
/* 8005DEE4 00059B44  38 60 00 02 */	li r3, 2
/* 8005DEE8 00059B48  38 00 00 01 */	li r0, 1
/* 8005DEEC 00059B4C  B0 6D 99 20 */	sth r3, lbl_8063EBE0-_SDA_BASE_(r13)
/* 8005DEF0 00059B50  B0 1F 00 64 */	sth r0, 0x64(r31)
/* 8005DEF4 00059B54  48 00 02 04 */	b lbl_8005E0F8
/* 8005DEF8 00059B58  38 00 00 1D */	li r0, 0x1d
/* 8005DEFC 00059B5C  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005DF00 00059B60  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005DF04 00059B64  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005DF08 00059B68  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005DF0C 00059B6C  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005DF10 00059B70  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005DF14 00059B74  48 1F 60 59 */	bl func_80253F6C
/* 8005DF18 00059B78  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005DF1C 00059B7C  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005DF20 00059B80  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005DF24 00059B84  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005DF28 00059B88  A8 7E 00 20 */	lha r3, 0x20(r30)
/* 8005DF2C 00059B8C  38 80 00 08 */	li r4, 8
/* 8005DF30 00059B90  48 1F 5F 1D */	bl func_80253E4C
/* 8005DF34 00059B94  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005DF38 00059B98  2C 00 00 00 */	cmpwi r0, 0
/* 8005DF3C 00059B9C  41 82 00 14 */	beq lbl_8005DF50
/* 8005DF40 00059BA0  A8 7E 00 20 */	lha r3, 0x20(r30)
/* 8005DF44 00059BA4  38 80 00 08 */	li r4, 8
/* 8005DF48 00059BA8  38 A0 00 00 */	li r5, 0
/* 8005DF4C 00059BAC  48 1F 5E A5 */	bl func_80253DF0
lbl_8005DF50:
/* 8005DF50 00059BB0  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005DF54 00059BB4  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005DF58 00059BB8  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005DF5C 00059BBC  38 80 00 08 */	li r4, 8
/* 8005DF60 00059BC0  A8 7E 00 22 */	lha r3, 0x22(r30)
/* 8005DF64 00059BC4  48 1F 5E E9 */	bl func_80253E4C
/* 8005DF68 00059BC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005DF6C 00059BCC  2C 00 00 00 */	cmpwi r0, 0
/* 8005DF70 00059BD0  41 82 00 14 */	beq lbl_8005DF84
/* 8005DF74 00059BD4  A8 7E 00 22 */	lha r3, 0x22(r30)
/* 8005DF78 00059BD8  38 80 00 08 */	li r4, 8
/* 8005DF7C 00059BDC  38 A0 00 00 */	li r5, 0
/* 8005DF80 00059BE0  48 1F 5E 71 */	bl func_80253DF0
lbl_8005DF84:
/* 8005DF84 00059BE4  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005DF88 00059BE8  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005DF8C 00059BEC  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005DF90 00059BF0  38 80 00 08 */	li r4, 8
/* 8005DF94 00059BF4  A8 7E 00 24 */	lha r3, 0x24(r30)
/* 8005DF98 00059BF8  48 1F 5E B5 */	bl func_80253E4C
/* 8005DF9C 00059BFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005DFA0 00059C00  2C 00 00 00 */	cmpwi r0, 0
/* 8005DFA4 00059C04  41 82 00 14 */	beq lbl_8005DFB8
/* 8005DFA8 00059C08  A8 7E 00 24 */	lha r3, 0x24(r30)
/* 8005DFAC 00059C0C  38 80 00 08 */	li r4, 8
/* 8005DFB0 00059C10  38 A0 00 00 */	li r5, 0
/* 8005DFB4 00059C14  48 1F 5E 3D */	bl func_80253DF0
lbl_8005DFB8:
/* 8005DFB8 00059C18  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005DFBC 00059C1C  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005DFC0 00059C20  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005DFC4 00059C24  38 80 00 08 */	li r4, 8
/* 8005DFC8 00059C28  A8 7E 00 26 */	lha r3, 0x26(r30)
/* 8005DFCC 00059C2C  48 1F 5E 81 */	bl func_80253E4C
/* 8005DFD0 00059C30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005DFD4 00059C34  2C 00 00 00 */	cmpwi r0, 0
/* 8005DFD8 00059C38  41 82 00 14 */	beq lbl_8005DFEC
/* 8005DFDC 00059C3C  A8 7E 00 26 */	lha r3, 0x26(r30)
/* 8005DFE0 00059C40  38 80 00 08 */	li r4, 8
/* 8005DFE4 00059C44  38 A0 00 00 */	li r5, 0
/* 8005DFE8 00059C48  48 1F 5E 09 */	bl func_80253DF0
lbl_8005DFEC:
/* 8005DFEC 00059C4C  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005DFF0 00059C50  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005DFF4 00059C54  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005DFF8 00059C58  38 80 00 08 */	li r4, 8
/* 8005DFFC 00059C5C  A8 7E 00 28 */	lha r3, 0x28(r30)
/* 8005E000 00059C60  48 1F 5E 4D */	bl func_80253E4C
/* 8005E004 00059C64  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005E008 00059C68  2C 00 00 00 */	cmpwi r0, 0
/* 8005E00C 00059C6C  41 82 00 14 */	beq lbl_8005E020
/* 8005E010 00059C70  A8 7E 00 28 */	lha r3, 0x28(r30)
/* 8005E014 00059C74  38 80 00 08 */	li r4, 8
/* 8005E018 00059C78  38 A0 00 00 */	li r5, 0
/* 8005E01C 00059C7C  48 1F 5D D5 */	bl func_80253DF0
lbl_8005E020:
/* 8005E020 00059C80  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005E024 00059C84  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005E028 00059C88  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005E02C 00059C8C  38 80 00 08 */	li r4, 8
/* 8005E030 00059C90  A8 7E 00 2A */	lha r3, 0x2a(r30)
/* 8005E034 00059C94  48 1F 5E 19 */	bl func_80253E4C
/* 8005E038 00059C98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005E03C 00059C9C  2C 00 00 00 */	cmpwi r0, 0
/* 8005E040 00059CA0  41 82 00 14 */	beq lbl_8005E054
/* 8005E044 00059CA4  A8 7E 00 2A */	lha r3, 0x2a(r30)
/* 8005E048 00059CA8  38 80 00 08 */	li r4, 8
/* 8005E04C 00059CAC  38 A0 00 00 */	li r5, 0
/* 8005E050 00059CB0  48 1F 5D A1 */	bl func_80253DF0
lbl_8005E054:
/* 8005E054 00059CB4  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005E058 00059CB8  38 A1 00 14 */	addi r5, r1, 0x14
/* 8005E05C 00059CBC  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005E060 00059CC0  38 80 00 08 */	li r4, 8
/* 8005E064 00059CC4  A8 7E 00 14 */	lha r3, 0x14(r30)
/* 8005E068 00059CC8  48 1F 5D E5 */	bl func_80253E4C
/* 8005E06C 00059CCC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8005E070 00059CD0  2C 00 00 00 */	cmpwi r0, 0
/* 8005E074 00059CD4  41 82 00 14 */	beq lbl_8005E088
/* 8005E078 00059CD8  A8 7E 00 14 */	lha r3, 0x14(r30)
/* 8005E07C 00059CDC  38 80 00 08 */	li r4, 8
/* 8005E080 00059CE0  38 A0 00 00 */	li r5, 0
/* 8005E084 00059CE4  48 1F 5D 6D */	bl func_80253DF0
lbl_8005E088:
/* 8005E088 00059CE8  3C A0 80 48 */	lis r5, lbl_80478408@ha
/* 8005E08C 00059CEC  38 00 00 20 */	li r0, 0x20
/* 8005E090 00059CF0  38 A5 84 08 */	addi r5, r5, lbl_80478408@l
/* 8005E094 00059CF4  38 E0 00 00 */	li r7, 0
/* 8005E098 00059CF8  38 60 00 00 */	li r3, 0
/* 8005E09C 00059CFC  38 C0 00 00 */	li r6, 0
/* 8005E0A0 00059D00  7C 09 03 A6 */	mtctr r0
lbl_8005E0A4:
/* 8005E0A4 00059D04  28 07 00 10 */	cmplwi r7, 0x10
/* 8005E0A8 00059D08  41 82 00 0C */	beq lbl_8005E0B4
/* 8005E0AC 00059D0C  7C 85 1A 14 */	add r4, r5, r3
/* 8005E0B0 00059D10  B0 C4 00 64 */	sth r6, 0x64(r4)
lbl_8005E0B4:
/* 8005E0B4 00059D14  38 E7 00 01 */	addi r7, r7, 1
/* 8005E0B8 00059D18  38 63 00 02 */	addi r3, r3, 2
/* 8005E0BC 00059D1C  42 00 FF E8 */	bdnz lbl_8005E0A4
/* 8005E0C0 00059D20  3F C0 80 48 */	lis r30, lbl_80478408@ha
/* 8005E0C4 00059D24  3B DE 84 08 */	addi r30, r30, lbl_80478408@l
/* 8005E0C8 00059D28  A0 7E 00 84 */	lhz r3, 0x84(r30)
/* 8005E0CC 00059D2C  48 1F 22 09 */	bl func_802502D4
/* 8005E0D0 00059D30  A0 9E 00 B2 */	lhz r4, 0xb2(r30)
/* 8005E0D4 00059D34  38 60 00 03 */	li r3, 3
/* 8005E0D8 00059D38  38 A0 00 08 */	li r5, 8
/* 8005E0DC 00059D3C  38 00 00 01 */	li r0, 1
/* 8005E0E0 00059D40  54 84 04 9E */	rlwinm r4, r4, 0, 0x12, 0xf
/* 8005E0E4 00059D44  B0 BE 00 90 */	sth r5, 0x90(r30)
/* 8005E0E8 00059D48  98 7E 00 B0 */	stb r3, 0xb0(r30)
/* 8005E0EC 00059D4C  B0 9E 00 B2 */	sth r4, 0xb2(r30)
/* 8005E0F0 00059D50  98 7E 00 B1 */	stb r3, 0xb1(r30)
/* 8005E0F4 00059D54  B0 1E 00 8E */	sth r0, 0x8e(r30)
lbl_8005E0F8:
/* 8005E0F8 00059D58  3F E0 80 48 */	lis r31, lbl_80478408@ha
/* 8005E0FC 00059D5C  3B FF 84 08 */	addi r31, r31, lbl_80478408@l
/* 8005E100 00059D60  A0 1F 00 8E */	lhz r0, 0x8e(r31)
/* 8005E104 00059D64  28 00 00 01 */	cmplwi r0, 1
/* 8005E108 00059D68  41 82 03 60 */	beq lbl_8005E468
/* 8005E10C 00059D6C  28 1D 00 0B */	cmplwi r29, 0xb
/* 8005E110 00059D70  41 81 0A F8 */	bgt lbl_8005EC08
/* 8005E114 00059D74  3C 60 80 41 */	lis r3, lbl_8040B82C@ha
/* 8005E118 00059D78  57 A0 10 3A */	slwi r0, r29, 2
/* 8005E11C 00059D7C  38 63 B8 2C */	addi r3, r3, lbl_8040B82C@l
/* 8005E120 00059D80  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005E124 00059D84  7C 69 03 A6 */	mtctr r3
/* 8005E128 00059D88  4E 80 04 20 */	bctr
/* 8005E12C 00059D8C  38 00 00 FF */	li r0, 0xff
/* 8005E130 00059D90  38 A0 00 00 */	li r5, 0
/* 8005E134 00059D94  3B A0 00 01 */	li r29, 1
/* 8005E138 00059D98  3C 60 80 07 */	lis r3, func_8006966C@ha
/* 8005E13C 00059D9C  3C 80 80 07 */	lis r4, func_8006A74C@ha
/* 8005E140 00059DA0  B0 AD 99 14 */	sth r5, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E144 00059DA4  80 AD 82 00 */	lwz r5, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E148 00059DA8  38 63 96 6C */	addi r3, r3, func_8006966C@l
/* 8005E14C 00059DAC  B3 BF 00 90 */	sth r29, 0x90(r31)
/* 8005E150 00059DB0  38 84 A7 4C */	addi r4, r4, func_8006A74C@l
/* 8005E154 00059DB4  B0 1F 00 92 */	sth r0, 0x92(r31)
/* 8005E158 00059DB8  B0 1F 00 94 */	sth r0, 0x94(r31)
/* 8005E15C 00059DBC  B0 1F 00 96 */	sth r0, 0x96(r31)
/* 8005E160 00059DC0  48 1F 5E 0D */	bl func_80253F6C
/* 8005E164 00059DC4  90 6D 82 00 */	stw r3, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E168 00059DC8  B3 BF 00 8E */	sth r29, 0x8e(r31)
/* 8005E16C 00059DCC  48 00 0A 9C */	b lbl_8005EC08
/* 8005E170 00059DD0  A0 1F 00 B2 */	lhz r0, 0xb2(r31)
/* 8005E174 00059DD4  54 00 97 FF */	rlwinm. r0, r0, 0x12, 0x1f, 0x1f
/* 8005E178 00059DD8  41 82 0A 90 */	beq lbl_8005EC08
/* 8005E17C 00059DDC  38 80 00 FF */	li r4, 0xff
/* 8005E180 00059DE0  38 60 00 03 */	li r3, 3
/* 8005E184 00059DE4  38 00 00 01 */	li r0, 1
/* 8005E188 00059DE8  B0 9F 00 92 */	sth r4, 0x92(r31)
/* 8005E18C 00059DEC  B0 9F 00 94 */	sth r4, 0x94(r31)
/* 8005E190 00059DF0  B0 9F 00 96 */	sth r4, 0x96(r31)
/* 8005E194 00059DF4  B0 7F 00 90 */	sth r3, 0x90(r31)
/* 8005E198 00059DF8  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E19C 00059DFC  48 00 0A 6C */	b lbl_8005EC08
/* 8005E1A0 00059E00  A0 1F 00 B2 */	lhz r0, 0xb2(r31)
/* 8005E1A4 00059E04  54 00 8F FF */	rlwinm. r0, r0, 0x11, 0x1f, 0x1f
/* 8005E1A8 00059E08  41 82 00 2C */	beq lbl_8005E1D4
/* 8005E1AC 00059E0C  38 60 00 FF */	li r3, 0xff
/* 8005E1B0 00059E10  38 A0 00 05 */	li r5, 5
/* 8005E1B4 00059E14  38 80 00 FD */	li r4, 0xfd
/* 8005E1B8 00059E18  38 00 00 01 */	li r0, 1
/* 8005E1BC 00059E1C  B0 BF 00 90 */	sth r5, 0x90(r31)
/* 8005E1C0 00059E20  B0 9F 00 92 */	sth r4, 0x92(r31)
/* 8005E1C4 00059E24  B0 7F 00 94 */	sth r3, 0x94(r31)
/* 8005E1C8 00059E28  B0 7F 00 96 */	sth r3, 0x96(r31)
/* 8005E1CC 00059E2C  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E1D0 00059E30  48 00 0A 38 */	b lbl_8005EC08
lbl_8005E1D4:
/* 8005E1D4 00059E34  88 0D 81 F8 */	lbz r0, lbl_8063D4B8-_SDA_BASE_(r13)
/* 8005E1D8 00059E38  2C 00 00 00 */	cmpwi r0, 0
/* 8005E1DC 00059E3C  40 82 0A 2C */	bne lbl_8005EC08
/* 8005E1E0 00059E40  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E1E4 00059E44  38 00 00 FF */	li r0, 0xff
/* 8005E1E8 00059E48  38 60 00 05 */	li r3, 5
/* 8005E1EC 00059E4C  38 A0 00 FD */	li r5, 0xfd
/* 8005E1F0 00059E50  B0 BF 00 92 */	sth r5, 0x92(r31)
/* 8005E1F4 00059E54  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E1F8 00059E58  38 80 00 08 */	li r4, 8
/* 8005E1FC 00059E5C  38 A0 00 01 */	li r5, 1
/* 8005E200 00059E60  B0 7F 00 90 */	sth r3, 0x90(r31)
/* 8005E204 00059E64  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E208 00059E68  B0 1F 00 94 */	sth r0, 0x94(r31)
/* 8005E20C 00059E6C  B0 1F 00 96 */	sth r0, 0x96(r31)
/* 8005E210 00059E70  48 1F 5B E1 */	bl func_80253DF0
/* 8005E214 00059E74  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E218 00059E78  38 80 00 08 */	li r4, 8
/* 8005E21C 00059E7C  38 A0 00 01 */	li r5, 1
/* 8005E220 00059E80  48 1F 5B D1 */	bl func_80253DF0
/* 8005E224 00059E84  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E228 00059E88  38 80 00 08 */	li r4, 8
/* 8005E22C 00059E8C  38 A0 00 01 */	li r5, 1
/* 8005E230 00059E90  48 1F 5B C1 */	bl func_80253DF0
/* 8005E234 00059E94  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E238 00059E98  38 80 00 02 */	li r4, 2
/* 8005E23C 00059E9C  38 A0 00 00 */	li r5, 0
/* 8005E240 00059EA0  48 1F 5B 71 */	bl func_80253DB0
/* 8005E244 00059EA4  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E248 00059EA8  38 80 00 02 */	li r4, 2
/* 8005E24C 00059EAC  38 A0 00 00 */	li r5, 0
/* 8005E250 00059EB0  48 1F 5B 61 */	bl func_80253DB0
/* 8005E254 00059EB4  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E258 00059EB8  38 80 00 02 */	li r4, 2
/* 8005E25C 00059EBC  38 A0 00 00 */	li r5, 0
/* 8005E260 00059EC0  48 1F 5B 51 */	bl func_80253DB0
/* 8005E264 00059EC4  3C 60 80 07 */	lis r3, func_8006966C@ha
/* 8005E268 00059EC8  3C 80 80 07 */	lis r4, func_8006A74C@ha
/* 8005E26C 00059ECC  80 AD 82 00 */	lwz r5, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E270 00059ED0  38 63 96 6C */	addi r3, r3, func_8006966C@l
/* 8005E274 00059ED4  38 84 A7 4C */	addi r4, r4, func_8006A74C@l
/* 8005E278 00059ED8  48 1F 5C F5 */	bl func_80253F6C
/* 8005E27C 00059EDC  38 00 00 01 */	li r0, 1
/* 8005E280 00059EE0  90 6D 82 00 */	stw r3, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E284 00059EE4  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E288 00059EE8  48 00 09 80 */	b lbl_8005EC08
/* 8005E28C 00059EEC  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E290 00059EF0  38 60 00 05 */	li r3, 5
/* 8005E294 00059EF4  38 00 00 FF */	li r0, 0xff
/* 8005E298 00059EF8  B0 7F 00 90 */	sth r3, 0x90(r31)
/* 8005E29C 00059EFC  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E2A0 00059F00  38 A1 00 10 */	addi r5, r1, 0x10
/* 8005E2A4 00059F04  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E2A8 00059F08  38 80 00 08 */	li r4, 8
/* 8005E2AC 00059F0C  B0 1F 00 96 */	sth r0, 0x96(r31)
/* 8005E2B0 00059F10  48 1F 5B 9D */	bl func_80253E4C
/* 8005E2B4 00059F14  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8005E2B8 00059F18  2C 00 00 00 */	cmpwi r0, 0
/* 8005E2BC 00059F1C  41 82 00 18 */	beq lbl_8005E2D4
/* 8005E2C0 00059F20  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E2C4 00059F24  48 1F 5B 1D */	bl func_80253DE0
/* 8005E2C8 00059F28  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005E2CC 00059F2C  28 00 00 02 */	cmplwi r0, 2
/* 8005E2D0 00059F30  41 82 00 2C */	beq lbl_8005E2FC
lbl_8005E2D4:
/* 8005E2D4 00059F34  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E2D8 00059F38  38 80 00 08 */	li r4, 8
/* 8005E2DC 00059F3C  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E2E0 00059F40  38 A0 00 01 */	li r5, 1
/* 8005E2E4 00059F44  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E2E8 00059F48  48 1F 5B 09 */	bl func_80253DF0
/* 8005E2EC 00059F4C  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E2F0 00059F50  38 80 00 02 */	li r4, 2
/* 8005E2F4 00059F54  38 A0 00 00 */	li r5, 0
/* 8005E2F8 00059F58  48 1F 5A B9 */	bl func_80253DB0
lbl_8005E2FC:
/* 8005E2FC 00059F5C  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E300 00059F60  38 A1 00 10 */	addi r5, r1, 0x10
/* 8005E304 00059F64  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E308 00059F68  38 80 00 08 */	li r4, 8
/* 8005E30C 00059F6C  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E310 00059F70  48 1F 5B 3D */	bl func_80253E4C
/* 8005E314 00059F74  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8005E318 00059F78  2C 00 00 00 */	cmpwi r0, 0
/* 8005E31C 00059F7C  41 82 00 18 */	beq lbl_8005E334
/* 8005E320 00059F80  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E324 00059F84  48 1F 5A BD */	bl func_80253DE0
/* 8005E328 00059F88  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005E32C 00059F8C  28 00 00 02 */	cmplwi r0, 2
/* 8005E330 00059F90  41 82 00 2C */	beq lbl_8005E35C
lbl_8005E334:
/* 8005E334 00059F94  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E338 00059F98  38 80 00 08 */	li r4, 8
/* 8005E33C 00059F9C  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E340 00059FA0  38 A0 00 01 */	li r5, 1
/* 8005E344 00059FA4  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E348 00059FA8  48 1F 5A A9 */	bl func_80253DF0
/* 8005E34C 00059FAC  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E350 00059FB0  38 80 00 02 */	li r4, 2
/* 8005E354 00059FB4  38 A0 00 00 */	li r5, 0
/* 8005E358 00059FB8  48 1F 5A 59 */	bl func_80253DB0
lbl_8005E35C:
/* 8005E35C 00059FBC  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E360 00059FC0  38 A1 00 10 */	addi r5, r1, 0x10
/* 8005E364 00059FC4  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E368 00059FC8  38 80 00 08 */	li r4, 8
/* 8005E36C 00059FCC  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E370 00059FD0  48 1F 5A DD */	bl func_80253E4C
/* 8005E374 00059FD4  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8005E378 00059FD8  2C 00 00 00 */	cmpwi r0, 0
/* 8005E37C 00059FDC  41 82 00 18 */	beq lbl_8005E394
/* 8005E380 00059FE0  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E384 00059FE4  48 1F 5A 5D */	bl func_80253DE0
/* 8005E388 00059FE8  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 8005E38C 00059FEC  28 00 00 02 */	cmplwi r0, 2
/* 8005E390 00059FF0  41 82 00 2C */	beq lbl_8005E3BC
lbl_8005E394:
/* 8005E394 00059FF4  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E398 00059FF8  38 80 00 08 */	li r4, 8
/* 8005E39C 00059FFC  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E3A0 0005A000  38 A0 00 01 */	li r5, 1
/* 8005E3A4 0005A004  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E3A8 0005A008  48 1F 5A 49 */	bl func_80253DF0
/* 8005E3AC 0005A00C  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E3B0 0005A010  38 80 00 02 */	li r4, 2
/* 8005E3B4 0005A014  38 A0 00 00 */	li r5, 0
/* 8005E3B8 0005A018  48 1F 59 F9 */	bl func_80253DB0
lbl_8005E3BC:
/* 8005E3BC 0005A01C  3C 60 80 07 */	lis r3, func_8006966C@ha
/* 8005E3C0 0005A020  3C 80 80 07 */	lis r4, func_8006A74C@ha
/* 8005E3C4 0005A024  80 AD 82 00 */	lwz r5, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E3C8 0005A028  38 63 96 6C */	addi r3, r3, func_8006966C@l
/* 8005E3CC 0005A02C  38 84 A7 4C */	addi r4, r4, func_8006A74C@l
/* 8005E3D0 0005A030  48 1F 5B 9D */	bl func_80253F6C
/* 8005E3D4 0005A034  3C 80 80 48 */	lis r4, lbl_80478408@ha
/* 8005E3D8 0005A038  38 00 00 01 */	li r0, 1
/* 8005E3DC 0005A03C  38 84 84 08 */	addi r4, r4, lbl_80478408@l
/* 8005E3E0 0005A040  90 6D 82 00 */	stw r3, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E3E4 0005A044  B0 04 00 8E */	sth r0, 0x8e(r4)
/* 8005E3E8 0005A048  48 00 08 20 */	b lbl_8005EC08
/* 8005E3EC 0005A04C  38 00 00 20 */	li r0, 0x20
/* 8005E3F0 0005A050  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005E3F4 0005A054  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E3F8 0005A058  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E3FC 0005A05C  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E400 0005A060  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005E404 0005A064  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E408 0005A068  48 1F 5B 65 */	bl func_80253F6C
/* 8005E40C 0005A06C  38 00 00 01 */	li r0, 1
/* 8005E410 0005A070  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E414 0005A074  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E418 0005A078  48 00 07 F0 */	b lbl_8005EC08
/* 8005E41C 0005A07C  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E420 0005A080  38 80 00 01 */	li r4, 1
/* 8005E424 0005A084  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E428 0005A088  38 A0 00 00 */	li r5, 0
/* 8005E42C 0005A08C  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E430 0005A090  48 1F 59 81 */	bl func_80253DB0
/* 8005E434 0005A094  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E438 0005A098  38 80 00 01 */	li r4, 1
/* 8005E43C 0005A09C  38 A0 00 00 */	li r5, 0
/* 8005E440 0005A0A0  48 1F 59 71 */	bl func_80253DB0
/* 8005E444 0005A0A4  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E448 0005A0A8  38 80 00 01 */	li r4, 1
/* 8005E44C 0005A0AC  38 A0 00 00 */	li r5, 0
/* 8005E450 0005A0B0  48 1F 59 61 */	bl func_80253DB0
/* 8005E454 0005A0B4  38 60 00 06 */	li r3, 6
/* 8005E458 0005A0B8  38 00 00 01 */	li r0, 1
/* 8005E45C 0005A0BC  B0 7F 00 90 */	sth r3, 0x90(r31)
/* 8005E460 0005A0C0  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E464 0005A0C4  48 00 07 A4 */	b lbl_8005EC08
lbl_8005E468:
/* 8005E468 0005A0C8  28 1D 00 0B */	cmplwi r29, 0xb
/* 8005E46C 0005A0CC  41 81 07 9C */	bgt lbl_8005EC08
/* 8005E470 0005A0D0  3C 60 80 41 */	lis r3, lbl_8040B7FC@ha
/* 8005E474 0005A0D4  57 A0 10 3A */	slwi r0, r29, 2
/* 8005E478 0005A0D8  38 63 B7 FC */	addi r3, r3, lbl_8040B7FC@l
/* 8005E47C 0005A0DC  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005E480 0005A0E0  7C 69 03 A6 */	mtctr r3
/* 8005E484 0005A0E4  4E 80 04 20 */	bctr
/* 8005E488 0005A0E8  38 00 00 20 */	li r0, 0x20
/* 8005E48C 0005A0EC  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005E490 0005A0F0  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E494 0005A0F4  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E498 0005A0F8  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E49C 0005A0FC  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005E4A0 0005A100  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E4A4 0005A104  48 1F 5A C9 */	bl func_80253F6C
/* 8005E4A8 0005A108  38 00 00 01 */	li r0, 1
/* 8005E4AC 0005A10C  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E4B0 0005A110  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E4B4 0005A114  48 00 07 54 */	b lbl_8005EC08
/* 8005E4B8 0005A118  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E4BC 0005A11C  38 A1 00 0C */	addi r5, r1, 0xc
/* 8005E4C0 0005A120  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E4C4 0005A124  38 80 00 08 */	li r4, 8
/* 8005E4C8 0005A128  A8 7D 00 28 */	lha r3, 0x28(r29)
/* 8005E4CC 0005A12C  48 1F 59 81 */	bl func_80253E4C
/* 8005E4D0 0005A130  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8005E4D4 0005A134  2C 00 00 00 */	cmpwi r0, 0
/* 8005E4D8 0005A138  41 82 07 30 */	beq lbl_8005EC08
/* 8005E4DC 0005A13C  A8 7D 00 28 */	lha r3, 0x28(r29)
/* 8005E4E0 0005A140  38 80 00 01 */	li r4, 1
/* 8005E4E4 0005A144  38 A0 00 00 */	li r5, 0
/* 8005E4E8 0005A148  48 1F 58 C9 */	bl func_80253DB0
/* 8005E4EC 0005A14C  38 60 00 04 */	li r3, 4
/* 8005E4F0 0005A150  38 00 00 01 */	li r0, 1
/* 8005E4F4 0005A154  B0 7F 00 90 */	sth r3, 0x90(r31)
/* 8005E4F8 0005A158  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E4FC 0005A15C  48 00 07 0C */	b lbl_8005EC08
/* 8005E500 0005A160  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E504 0005A164  38 80 00 01 */	li r4, 1
/* 8005E508 0005A168  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E50C 0005A16C  38 A0 00 00 */	li r5, 0
/* 8005E510 0005A170  A8 7D 00 20 */	lha r3, 0x20(r29)
/* 8005E514 0005A174  48 1F 58 9D */	bl func_80253DB0
/* 8005E518 0005A178  A8 7D 00 22 */	lha r3, 0x22(r29)
/* 8005E51C 0005A17C  38 80 00 01 */	li r4, 1
/* 8005E520 0005A180  38 A0 00 00 */	li r5, 0
/* 8005E524 0005A184  48 1F 58 8D */	bl func_80253DB0
/* 8005E528 0005A188  A8 7D 00 26 */	lha r3, 0x26(r29)
/* 8005E52C 0005A18C  38 80 00 01 */	li r4, 1
/* 8005E530 0005A190  38 A0 00 00 */	li r5, 0
/* 8005E534 0005A194  48 1F 58 7D */	bl func_80253DB0
/* 8005E538 0005A198  38 60 00 06 */	li r3, 6
/* 8005E53C 0005A19C  38 00 00 01 */	li r0, 1
/* 8005E540 0005A1A0  B0 7F 00 90 */	sth r3, 0x90(r31)
/* 8005E544 0005A1A4  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005E548 0005A1A8  48 00 06 C0 */	b lbl_8005EC08
/* 8005E54C 0005A1AC  38 00 00 FF */	li r0, 0xff
/* 8005E550 0005A1B0  38 A0 00 00 */	li r5, 0
/* 8005E554 0005A1B4  3B A0 00 01 */	li r29, 1
/* 8005E558 0005A1B8  3C 60 80 07 */	lis r3, func_8006966C@ha
/* 8005E55C 0005A1BC  3C 80 80 07 */	lis r4, func_8006A74C@ha
/* 8005E560 0005A1C0  B0 AD 99 14 */	sth r5, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E564 0005A1C4  80 AD 82 00 */	lwz r5, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E568 0005A1C8  38 63 96 6C */	addi r3, r3, func_8006966C@l
/* 8005E56C 0005A1CC  B3 BF 00 90 */	sth r29, 0x90(r31)
/* 8005E570 0005A1D0  38 84 A7 4C */	addi r4, r4, func_8006A74C@l
/* 8005E574 0005A1D4  B0 1F 00 92 */	sth r0, 0x92(r31)
/* 8005E578 0005A1D8  B0 1F 00 94 */	sth r0, 0x94(r31)
/* 8005E57C 0005A1DC  B0 1F 00 96 */	sth r0, 0x96(r31)
/* 8005E580 0005A1E0  48 1F 59 ED */	bl func_80253F6C
/* 8005E584 0005A1E4  90 6D 82 00 */	stw r3, lbl_8063D4C0-_SDA_BASE_(r13)
/* 8005E588 0005A1E8  B3 BF 00 8E */	sth r29, 0x8e(r31)
/* 8005E58C 0005A1EC  48 00 06 7C */	b lbl_8005EC08
lbl_8005E590:
/* 8005E590 0005A1F0  28 1D 00 0C */	cmplwi r29, 0xc
/* 8005E594 0005A1F4  41 81 06 74 */	bgt lbl_8005EC08
/* 8005E598 0005A1F8  3C 60 80 41 */	lis r3, lbl_8040B7C8@ha
/* 8005E59C 0005A1FC  57 A0 10 3A */	slwi r0, r29, 2
/* 8005E5A0 0005A200  38 63 B7 C8 */	addi r3, r3, lbl_8040B7C8@l
/* 8005E5A4 0005A204  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005E5A8 0005A208  7C 69 03 A6 */	mtctr r3
/* 8005E5AC 0005A20C  4E 80 04 20 */	bctr
/* 8005E5B0 0005A210  48 01 0A 19 */	bl func_8006EFC8
/* 8005E5B4 0005A214  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E5B8 0005A218  38 60 00 01 */	li r3, 1
/* 8005E5BC 0005A21C  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E5C0 0005A220  2C 00 00 00 */	cmpwi r0, 0
/* 8005E5C4 0005A224  40 82 00 2C */	bne lbl_8005E5F0
/* 8005E5C8 0005A228  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E5CC 0005A22C  38 80 00 08 */	li r4, 8
/* 8005E5D0 0005A230  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E5D4 0005A234  38 A0 00 01 */	li r5, 1
/* 8005E5D8 0005A238  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E5DC 0005A23C  48 1F 58 15 */	bl func_80253DF0
/* 8005E5E0 0005A240  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E5E4 0005A244  38 80 00 00 */	li r4, 0
/* 8005E5E8 0005A248  38 A0 00 00 */	li r5, 0
/* 8005E5EC 0005A24C  48 1F 57 C5 */	bl func_80253DB0
lbl_8005E5F0:
/* 8005E5F0 0005A250  38 60 00 00 */	li r3, 0
/* 8005E5F4 0005A254  48 00 28 41 */	bl func_80060E34
/* 8005E5F8 0005A258  3C A0 80 48 */	lis r5, lbl_80478408@ha
/* 8005E5FC 0005A25C  3C 60 80 06 */	lis r3, func_8005F310@ha
/* 8005E600 0005A260  38 A5 84 08 */	addi r5, r5, lbl_80478408@l
/* 8005E604 0005A264  38 00 00 00 */	li r0, 0
/* 8005E608 0005A268  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E60C 0005A26C  B0 05 00 64 */	sth r0, 0x64(r5)
/* 8005E610 0005A270  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E614 0005A274  38 63 F3 10 */	addi r3, r3, func_8005F310@l
/* 8005E618 0005A278  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E61C 0005A27C  48 1F 59 51 */	bl func_80253F6C
/* 8005E620 0005A280  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E624 0005A284  48 00 05 E4 */	b lbl_8005EC08
/* 8005E628 0005A288  48 01 09 A1 */	bl func_8006EFC8
/* 8005E62C 0005A28C  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E630 0005A290  38 60 00 01 */	li r3, 1
/* 8005E634 0005A294  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E638 0005A298  2C 00 00 00 */	cmpwi r0, 0
/* 8005E63C 0005A29C  40 82 00 2C */	bne lbl_8005E668
/* 8005E640 0005A2A0  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E644 0005A2A4  38 80 00 08 */	li r4, 8
/* 8005E648 0005A2A8  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E64C 0005A2AC  38 A0 00 01 */	li r5, 1
/* 8005E650 0005A2B0  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E654 0005A2B4  48 1F 57 9D */	bl func_80253DF0
/* 8005E658 0005A2B8  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E65C 0005A2BC  38 80 00 00 */	li r4, 0
/* 8005E660 0005A2C0  38 A0 00 00 */	li r5, 0
/* 8005E664 0005A2C4  48 1F 57 4D */	bl func_80253DB0
lbl_8005E668:
/* 8005E668 0005A2C8  38 60 00 02 */	li r3, 2
/* 8005E66C 0005A2CC  48 00 27 C9 */	bl func_80060E34
/* 8005E670 0005A2D0  3C C0 80 48 */	lis r6, lbl_80478408@ha
/* 8005E674 0005A2D4  3C 60 80 06 */	lis r3, func_8005F310@ha
/* 8005E678 0005A2D8  38 C6 84 08 */	addi r6, r6, lbl_80478408@l
/* 8005E67C 0005A2DC  38 00 00 01 */	li r0, 1
/* 8005E680 0005A2E0  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E684 0005A2E4  B0 06 00 64 */	sth r0, 0x64(r6)
/* 8005E688 0005A2E8  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E68C 0005A2EC  38 63 F3 10 */	addi r3, r3, func_8005F310@l
/* 8005E690 0005A2F0  B3 C6 00 74 */	sth r30, 0x74(r6)
/* 8005E694 0005A2F4  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E698 0005A2F8  48 1F 58 D5 */	bl func_80253F6C
/* 8005E69C 0005A2FC  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E6A0 0005A300  48 00 05 68 */	b lbl_8005EC08
/* 8005E6A4 0005A304  48 01 09 25 */	bl func_8006EFC8
/* 8005E6A8 0005A308  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E6AC 0005A30C  38 60 00 0A */	li r3, 0xa
/* 8005E6B0 0005A310  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E6B4 0005A314  2C 00 00 00 */	cmpwi r0, 0
/* 8005E6B8 0005A318  40 82 00 2C */	bne lbl_8005E6E4
/* 8005E6BC 0005A31C  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E6C0 0005A320  38 80 00 08 */	li r4, 8
/* 8005E6C4 0005A324  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E6C8 0005A328  38 A0 00 01 */	li r5, 1
/* 8005E6CC 0005A32C  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E6D0 0005A330  48 1F 57 21 */	bl func_80253DF0
/* 8005E6D4 0005A334  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E6D8 0005A338  38 80 00 00 */	li r4, 0
/* 8005E6DC 0005A33C  38 A0 00 00 */	li r5, 0
/* 8005E6E0 0005A340  48 1F 56 D1 */	bl func_80253DB0
lbl_8005E6E4:
/* 8005E6E4 0005A344  38 60 00 00 */	li r3, 0
/* 8005E6E8 0005A348  48 00 27 4D */	bl func_80060E34
/* 8005E6EC 0005A34C  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005E6F0 0005A350  38 80 00 00 */	li r4, 0
/* 8005E6F4 0005A354  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005E6F8 0005A358  A0 03 00 B2 */	lhz r0, 0xb2(r3)
/* 8005E6FC 0005A35C  B0 83 00 64 */	sth r4, 0x64(r3)
/* 8005E700 0005A360  54 00 97 FF */	rlwinm. r0, r0, 0x12, 0x1f, 0x1f
/* 8005E704 0005A364  41 82 00 0C */	beq lbl_8005E710
/* 8005E708 0005A368  38 00 00 0B */	li r0, 0xb
/* 8005E70C 0005A36C  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
lbl_8005E710:
/* 8005E710 0005A370  3C 60 80 06 */	lis r3, func_8005F9BC@ha
/* 8005E714 0005A374  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E718 0005A378  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E71C 0005A37C  38 63 F9 BC */	addi r3, r3, func_8005F9BC@l
/* 8005E720 0005A380  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E724 0005A384  48 1F 58 49 */	bl func_80253F6C
/* 8005E728 0005A388  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E72C 0005A38C  48 00 04 DC */	b lbl_8005EC08
/* 8005E730 0005A390  48 01 08 99 */	bl func_8006EFC8
/* 8005E734 0005A394  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E738 0005A398  38 60 00 10 */	li r3, 0x10
/* 8005E73C 0005A39C  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E740 0005A3A0  2C 00 00 00 */	cmpwi r0, 0
/* 8005E744 0005A3A4  40 82 00 2C */	bne lbl_8005E770
/* 8005E748 0005A3A8  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E74C 0005A3AC  38 80 00 08 */	li r4, 8
/* 8005E750 0005A3B0  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E754 0005A3B4  38 A0 00 01 */	li r5, 1
/* 8005E758 0005A3B8  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E75C 0005A3BC  48 1F 56 95 */	bl func_80253DF0
/* 8005E760 0005A3C0  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E764 0005A3C4  38 80 00 00 */	li r4, 0
/* 8005E768 0005A3C8  38 A0 00 00 */	li r5, 0
/* 8005E76C 0005A3CC  48 1F 56 45 */	bl func_80253DB0
lbl_8005E770:
/* 8005E770 0005A3D0  38 60 00 01 */	li r3, 1
/* 8005E774 0005A3D4  48 00 26 C1 */	bl func_80060E34
/* 8005E778 0005A3D8  3C C0 80 48 */	lis r6, lbl_80478408@ha
/* 8005E77C 0005A3DC  3C 60 80 06 */	lis r3, func_800600B4@ha
/* 8005E780 0005A3E0  38 C6 84 08 */	addi r6, r6, lbl_80478408@l
/* 8005E784 0005A3E4  38 00 00 00 */	li r0, 0
/* 8005E788 0005A3E8  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E78C 0005A3EC  B0 06 00 64 */	sth r0, 0x64(r6)
/* 8005E790 0005A3F0  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E794 0005A3F4  38 63 00 B4 */	addi r3, r3, func_800600B4@l
/* 8005E798 0005A3F8  B3 C6 00 A2 */	sth r30, 0xa2(r6)
/* 8005E79C 0005A3FC  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E7A0 0005A400  48 1F 57 CD */	bl func_80253F6C
/* 8005E7A4 0005A404  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E7A8 0005A408  48 00 04 60 */	b lbl_8005EC08
/* 8005E7AC 0005A40C  48 01 08 1D */	bl func_8006EFC8
/* 8005E7B0 0005A410  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E7B4 0005A414  38 60 00 0A */	li r3, 0xa
/* 8005E7B8 0005A418  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E7BC 0005A41C  2C 00 00 00 */	cmpwi r0, 0
/* 8005E7C0 0005A420  40 82 00 2C */	bne lbl_8005E7EC
/* 8005E7C4 0005A424  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E7C8 0005A428  38 80 00 08 */	li r4, 8
/* 8005E7CC 0005A42C  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E7D0 0005A430  38 A0 00 01 */	li r5, 1
/* 8005E7D4 0005A434  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E7D8 0005A438  48 1F 56 19 */	bl func_80253DF0
/* 8005E7DC 0005A43C  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E7E0 0005A440  38 80 00 00 */	li r4, 0
/* 8005E7E4 0005A444  38 A0 00 00 */	li r5, 0
/* 8005E7E8 0005A448  48 1F 55 C9 */	bl func_80253DB0
lbl_8005E7EC:
/* 8005E7EC 0005A44C  38 60 00 02 */	li r3, 2
/* 8005E7F0 0005A450  48 00 26 45 */	bl func_80060E34
/* 8005E7F4 0005A454  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005E7F8 0005A458  38 80 00 01 */	li r4, 1
/* 8005E7FC 0005A45C  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005E800 0005A460  A0 03 00 B2 */	lhz r0, 0xb2(r3)
/* 8005E804 0005A464  B0 83 00 64 */	sth r4, 0x64(r3)
/* 8005E808 0005A468  54 00 97 FF */	rlwinm. r0, r0, 0x12, 0x1f, 0x1f
/* 8005E80C 0005A46C  41 82 00 0C */	beq lbl_8005E818
/* 8005E810 0005A470  38 00 00 0B */	li r0, 0xb
/* 8005E814 0005A474  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
lbl_8005E818:
/* 8005E818 0005A478  3C 60 80 06 */	lis r3, func_8005F9BC@ha
/* 8005E81C 0005A47C  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E820 0005A480  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E824 0005A484  38 63 F9 BC */	addi r3, r3, func_8005F9BC@l
/* 8005E828 0005A488  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E82C 0005A48C  48 1F 57 41 */	bl func_80253F6C
/* 8005E830 0005A490  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E834 0005A494  48 00 03 D4 */	b lbl_8005EC08
/* 8005E838 0005A498  48 01 07 91 */	bl func_8006EFC8
/* 8005E83C 0005A49C  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E840 0005A4A0  38 60 00 10 */	li r3, 0x10
/* 8005E844 0005A4A4  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E848 0005A4A8  2C 00 00 00 */	cmpwi r0, 0
/* 8005E84C 0005A4AC  40 82 00 2C */	bne lbl_8005E878
/* 8005E850 0005A4B0  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E854 0005A4B4  38 80 00 08 */	li r4, 8
/* 8005E858 0005A4B8  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E85C 0005A4BC  38 A0 00 01 */	li r5, 1
/* 8005E860 0005A4C0  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E864 0005A4C4  48 1F 55 8D */	bl func_80253DF0
/* 8005E868 0005A4C8  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005E86C 0005A4CC  38 80 00 00 */	li r4, 0
/* 8005E870 0005A4D0  38 A0 00 00 */	li r5, 0
/* 8005E874 0005A4D4  48 1F 55 3D */	bl func_80253DB0
lbl_8005E878:
/* 8005E878 0005A4D8  38 60 00 03 */	li r3, 3
/* 8005E87C 0005A4DC  48 00 25 B9 */	bl func_80060E34
/* 8005E880 0005A4E0  3C C0 80 48 */	lis r6, lbl_80478408@ha
/* 8005E884 0005A4E4  3C 60 80 06 */	lis r3, func_800600B4@ha
/* 8005E888 0005A4E8  38 C6 84 08 */	addi r6, r6, lbl_80478408@l
/* 8005E88C 0005A4EC  38 00 00 01 */	li r0, 1
/* 8005E890 0005A4F0  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E894 0005A4F4  B0 06 00 64 */	sth r0, 0x64(r6)
/* 8005E898 0005A4F8  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E89C 0005A4FC  38 63 00 B4 */	addi r3, r3, func_800600B4@l
/* 8005E8A0 0005A500  B3 C6 00 A2 */	sth r30, 0xa2(r6)
/* 8005E8A4 0005A504  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E8A8 0005A508  48 1F 56 C5 */	bl func_80253F6C
/* 8005E8AC 0005A50C  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E8B0 0005A510  48 00 03 58 */	b lbl_8005EC08
/* 8005E8B4 0005A514  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005E8B8 0005A518  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005E8BC 0005A51C  A0 03 00 B2 */	lhz r0, 0xb2(r3)
/* 8005E8C0 0005A520  54 00 8F FF */	rlwinm. r0, r0, 0x11, 0x1f, 0x1f
/* 8005E8C4 0005A524  41 82 00 2C */	beq lbl_8005E8F0
/* 8005E8C8 0005A528  38 00 00 28 */	li r0, 0x28
/* 8005E8CC 0005A52C  3C 60 80 06 */	lis r3, func_80060E84@ha
/* 8005E8D0 0005A530  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E8D4 0005A534  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E8D8 0005A538  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E8DC 0005A53C  38 63 0E 84 */	addi r3, r3, func_80060E84@l
/* 8005E8E0 0005A540  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E8E4 0005A544  48 1F 56 89 */	bl func_80253F6C
/* 8005E8E8 0005A548  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E8EC 0005A54C  48 00 03 1C */	b lbl_8005EC08
lbl_8005E8F0:
/* 8005E8F0 0005A550  80 01 00 18 */	lwz r0, 0x18(r1)
/* 8005E8F4 0005A554  38 60 00 16 */	li r3, 0x16
/* 8005E8F8 0005A558  B0 6D 99 14 */	sth r3, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E8FC 0005A55C  2C 00 00 00 */	cmpwi r0, 0
/* 8005E900 0005A560  40 82 00 2C */	bne lbl_8005E92C
/* 8005E904 0005A564  3F C0 80 41 */	lis r30, lbl_8040B768@ha
/* 8005E908 0005A568  38 80 00 08 */	li r4, 8
/* 8005E90C 0005A56C  3B DE B7 68 */	addi r30, r30, lbl_8040B768@l
/* 8005E910 0005A570  38 A0 00 01 */	li r5, 1
/* 8005E914 0005A574  A8 7E 00 06 */	lha r3, 6(r30)
/* 8005E918 0005A578  48 1F 54 D9 */	bl func_80253DF0
/* 8005E91C 0005A57C  A8 7E 00 06 */	lha r3, 6(r30)
/* 8005E920 0005A580  38 80 00 00 */	li r4, 0
/* 8005E924 0005A584  38 A0 00 00 */	li r5, 0
/* 8005E928 0005A588  48 1F 54 89 */	bl func_80253DB0
lbl_8005E92C:
/* 8005E92C 0005A58C  48 01 08 09 */	bl func_8006F134
/* 8005E930 0005A590  38 60 00 04 */	li r3, 4
/* 8005E934 0005A594  48 00 25 01 */	bl func_80060E34
/* 8005E938 0005A598  38 00 00 FF */	li r0, 0xff
/* 8005E93C 0005A59C  28 1D 00 03 */	cmplwi r29, 3
/* 8005E940 0005A5A0  B0 0D 99 1E */	sth r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005E944 0005A5A4  40 82 00 20 */	bne lbl_8005E964
/* 8005E948 0005A5A8  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005E94C 0005A5AC  38 80 00 01 */	li r4, 1
/* 8005E950 0005A5B0  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005E954 0005A5B4  38 00 00 00 */	li r0, 0
/* 8005E958 0005A5B8  B0 8D 99 20 */	sth r4, lbl_8063EBE0-_SDA_BASE_(r13)
/* 8005E95C 0005A5BC  B0 03 00 64 */	sth r0, 0x64(r3)
/* 8005E960 0005A5C0  48 00 00 1C */	b lbl_8005E97C
lbl_8005E964:
/* 8005E964 0005A5C4  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005E968 0005A5C8  38 80 00 02 */	li r4, 2
/* 8005E96C 0005A5CC  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005E970 0005A5D0  38 00 00 01 */	li r0, 1
/* 8005E974 0005A5D4  B0 8D 99 20 */	sth r4, lbl_8063EBE0-_SDA_BASE_(r13)
/* 8005E978 0005A5D8  B0 03 00 64 */	sth r0, 0x64(r3)
lbl_8005E97C:
/* 8005E97C 0005A5DC  3C 60 80 06 */	lis r3, func_80060E84@ha
/* 8005E980 0005A5E0  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E984 0005A5E4  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E988 0005A5E8  38 63 0E 84 */	addi r3, r3, func_80060E84@l
/* 8005E98C 0005A5EC  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E990 0005A5F0  48 1F 55 DD */	bl func_80253F6C
/* 8005E994 0005A5F4  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E998 0005A5F8  48 00 02 70 */	b lbl_8005EC08
/* 8005E99C 0005A5FC  38 00 00 1D */	li r0, 0x1d
/* 8005E9A0 0005A600  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005E9A4 0005A604  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005E9A8 0005A608  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005E9AC 0005A60C  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E9B0 0005A610  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005E9B4 0005A614  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005E9B8 0005A618  48 1F 55 B5 */	bl func_80253F6C
/* 8005E9BC 0005A61C  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E9C0 0005A620  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005E9C4 0005A624  A8 7D B7 68 */	lha r3, lbl_8040B768@l(r29)
/* 8005E9C8 0005A628  38 A1 00 08 */	addi r5, r1, 8
/* 8005E9CC 0005A62C  38 80 00 08 */	li r4, 8
/* 8005E9D0 0005A630  48 1F 54 7D */	bl func_80253E4C
/* 8005E9D4 0005A634  80 01 00 08 */	lwz r0, 8(r1)
/* 8005E9D8 0005A638  2C 00 00 00 */	cmpwi r0, 0
/* 8005E9DC 0005A63C  41 82 00 14 */	beq lbl_8005E9F0
/* 8005E9E0 0005A640  A8 7D B7 68 */	lha r3, -0x4898(r29)
/* 8005E9E4 0005A644  38 80 00 08 */	li r4, 8
/* 8005E9E8 0005A648  38 A0 00 00 */	li r5, 0
/* 8005E9EC 0005A64C  48 1F 54 05 */	bl func_80253DF0
lbl_8005E9F0:
/* 8005E9F0 0005A650  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005E9F4 0005A654  38 A1 00 08 */	addi r5, r1, 8
/* 8005E9F8 0005A658  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005E9FC 0005A65C  38 80 00 08 */	li r4, 8
/* 8005EA00 0005A660  A8 7D 00 02 */	lha r3, 2(r29)
/* 8005EA04 0005A664  48 1F 54 49 */	bl func_80253E4C
/* 8005EA08 0005A668  80 01 00 08 */	lwz r0, 8(r1)
/* 8005EA0C 0005A66C  2C 00 00 00 */	cmpwi r0, 0
/* 8005EA10 0005A670  41 82 00 14 */	beq lbl_8005EA24
/* 8005EA14 0005A674  A8 7D 00 02 */	lha r3, 2(r29)
/* 8005EA18 0005A678  38 80 00 08 */	li r4, 8
/* 8005EA1C 0005A67C  38 A0 00 00 */	li r5, 0
/* 8005EA20 0005A680  48 1F 53 D1 */	bl func_80253DF0
lbl_8005EA24:
/* 8005EA24 0005A684  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005EA28 0005A688  38 A1 00 08 */	addi r5, r1, 8
/* 8005EA2C 0005A68C  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005EA30 0005A690  38 80 00 08 */	li r4, 8
/* 8005EA34 0005A694  A8 7D 00 04 */	lha r3, 4(r29)
/* 8005EA38 0005A698  48 1F 54 15 */	bl func_80253E4C
/* 8005EA3C 0005A69C  80 01 00 08 */	lwz r0, 8(r1)
/* 8005EA40 0005A6A0  2C 00 00 00 */	cmpwi r0, 0
/* 8005EA44 0005A6A4  41 82 00 14 */	beq lbl_8005EA58
/* 8005EA48 0005A6A8  A8 7D 00 04 */	lha r3, 4(r29)
/* 8005EA4C 0005A6AC  38 80 00 08 */	li r4, 8
/* 8005EA50 0005A6B0  38 A0 00 00 */	li r5, 0
/* 8005EA54 0005A6B4  48 1F 53 9D */	bl func_80253DF0
lbl_8005EA58:
/* 8005EA58 0005A6B8  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005EA5C 0005A6BC  38 A1 00 08 */	addi r5, r1, 8
/* 8005EA60 0005A6C0  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005EA64 0005A6C4  38 80 00 08 */	li r4, 8
/* 8005EA68 0005A6C8  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005EA6C 0005A6CC  48 1F 53 E1 */	bl func_80253E4C
/* 8005EA70 0005A6D0  80 01 00 08 */	lwz r0, 8(r1)
/* 8005EA74 0005A6D4  2C 00 00 00 */	cmpwi r0, 0
/* 8005EA78 0005A6D8  41 82 00 14 */	beq lbl_8005EA8C
/* 8005EA7C 0005A6DC  A8 7D 00 06 */	lha r3, 6(r29)
/* 8005EA80 0005A6E0  38 80 00 08 */	li r4, 8
/* 8005EA84 0005A6E4  38 A0 00 00 */	li r5, 0
/* 8005EA88 0005A6E8  48 1F 53 69 */	bl func_80253DF0
lbl_8005EA8C:
/* 8005EA8C 0005A6EC  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005EA90 0005A6F0  38 A1 00 08 */	addi r5, r1, 8
/* 8005EA94 0005A6F4  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005EA98 0005A6F8  38 80 00 08 */	li r4, 8
/* 8005EA9C 0005A6FC  A8 7D 00 08 */	lha r3, 8(r29)
/* 8005EAA0 0005A700  48 1F 53 AD */	bl func_80253E4C
/* 8005EAA4 0005A704  80 01 00 08 */	lwz r0, 8(r1)
/* 8005EAA8 0005A708  2C 00 00 00 */	cmpwi r0, 0
/* 8005EAAC 0005A70C  41 82 00 14 */	beq lbl_8005EAC0
/* 8005EAB0 0005A710  A8 7D 00 08 */	lha r3, 8(r29)
/* 8005EAB4 0005A714  38 80 00 08 */	li r4, 8
/* 8005EAB8 0005A718  38 A0 00 00 */	li r5, 0
/* 8005EABC 0005A71C  48 1F 53 35 */	bl func_80253DF0
lbl_8005EAC0:
/* 8005EAC0 0005A720  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005EAC4 0005A724  38 A1 00 08 */	addi r5, r1, 8
/* 8005EAC8 0005A728  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005EACC 0005A72C  38 80 00 08 */	li r4, 8
/* 8005EAD0 0005A730  A8 7D 00 0A */	lha r3, 0xa(r29)
/* 8005EAD4 0005A734  48 1F 53 79 */	bl func_80253E4C
/* 8005EAD8 0005A738  80 01 00 08 */	lwz r0, 8(r1)
/* 8005EADC 0005A73C  2C 00 00 00 */	cmpwi r0, 0
/* 8005EAE0 0005A740  41 82 00 14 */	beq lbl_8005EAF4
/* 8005EAE4 0005A744  A8 7D 00 0A */	lha r3, 0xa(r29)
/* 8005EAE8 0005A748  38 80 00 08 */	li r4, 8
/* 8005EAEC 0005A74C  38 A0 00 00 */	li r5, 0
/* 8005EAF0 0005A750  48 1F 53 01 */	bl func_80253DF0
lbl_8005EAF4:
/* 8005EAF4 0005A754  3F A0 80 41 */	lis r29, lbl_8040B768@ha
/* 8005EAF8 0005A758  38 A1 00 08 */	addi r5, r1, 8
/* 8005EAFC 0005A75C  3B BD B7 68 */	addi r29, r29, lbl_8040B768@l
/* 8005EB00 0005A760  38 80 00 08 */	li r4, 8
/* 8005EB04 0005A764  A8 7D 00 14 */	lha r3, 0x14(r29)
/* 8005EB08 0005A768  48 1F 53 45 */	bl func_80253E4C
/* 8005EB0C 0005A76C  80 01 00 08 */	lwz r0, 8(r1)
/* 8005EB10 0005A770  2C 00 00 00 */	cmpwi r0, 0
/* 8005EB14 0005A774  41 82 00 14 */	beq lbl_8005EB28
/* 8005EB18 0005A778  A8 7D 00 14 */	lha r3, 0x14(r29)
/* 8005EB1C 0005A77C  38 80 00 08 */	li r4, 8
/* 8005EB20 0005A780  38 A0 00 00 */	li r5, 0
/* 8005EB24 0005A784  48 1F 52 CD */	bl func_80253DF0
lbl_8005EB28:
/* 8005EB28 0005A788  48 09 AB 05 */	bl func_800F962C
/* 8005EB2C 0005A78C  3F A0 80 48 */	lis r29, lbl_80478408@ha
/* 8005EB30 0005A790  3B BD 84 08 */	addi r29, r29, lbl_80478408@l
/* 8005EB34 0005A794  A0 7D 00 84 */	lhz r3, 0x84(r29)
/* 8005EB38 0005A798  48 1F 17 9D */	bl func_802502D4
/* 8005EB3C 0005A79C  A0 7D 00 B2 */	lhz r3, 0xb2(r29)
/* 8005EB40 0005A7A0  38 00 00 03 */	li r0, 3
/* 8005EB44 0005A7A4  98 1D 00 B0 */	stb r0, 0xb0(r29)
/* 8005EB48 0005A7A8  98 1D 00 B1 */	stb r0, 0xb1(r29)
/* 8005EB4C 0005A7AC  54 60 04 9E */	rlwinm r0, r3, 0, 0x12, 0xf
/* 8005EB50 0005A7B0  B0 1D 00 B2 */	sth r0, 0xb2(r29)
/* 8005EB54 0005A7B4  48 00 00 B4 */	b lbl_8005EC08
/* 8005EB58 0005A7B8  38 00 00 20 */	li r0, 0x20
/* 8005EB5C 0005A7BC  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005EB60 0005A7C0  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005EB64 0005A7C4  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005EB68 0005A7C8  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005EB6C 0005A7CC  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005EB70 0005A7D0  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005EB74 0005A7D4  48 1F 53 F9 */	bl func_80253F6C
/* 8005EB78 0005A7D8  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005EB7C 0005A7DC  48 00 00 8C */	b lbl_8005EC08
/* 8005EB80 0005A7E0  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005EB84 0005A7E4  38 00 00 22 */	li r0, 0x22
/* 8005EB88 0005A7E8  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005EB8C 0005A7EC  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005EB90 0005A7F0  A0 03 00 B2 */	lhz r0, 0xb2(r3)
/* 8005EB94 0005A7F4  54 00 8F FF */	rlwinm. r0, r0, 0x11, 0x1f, 0x1f
/* 8005EB98 0005A7F8  41 82 00 14 */	beq lbl_8005EBAC
/* 8005EB9C 0005A7FC  A0 03 00 64 */	lhz r0, 0x64(r3)
/* 8005EBA0 0005A800  38 80 00 00 */	li r4, 0
/* 8005EBA4 0005A804  38 6D 99 19 */	addi r3, r13, lbl_8063EBD9-_SDA_BASE_
/* 8005EBA8 0005A808  7C 83 01 AE */	stbx r4, r3, r0
lbl_8005EBAC:
/* 8005EBAC 0005A80C  3C 60 80 06 */	lis r3, func_80060B30@ha
/* 8005EBB0 0005A810  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005EBB4 0005A814  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005EBB8 0005A818  38 63 0B 30 */	addi r3, r3, func_80060B30@l
/* 8005EBBC 0005A81C  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005EBC0 0005A820  48 1F 53 AD */	bl func_80253F6C
/* 8005EBC4 0005A824  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005EBC8 0005A828  48 00 00 40 */	b lbl_8005EC08
/* 8005EBCC 0005A82C  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005EBD0 0005A830  38 00 00 0E */	li r0, 0xe
/* 8005EBD4 0005A834  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005EBD8 0005A838  B0 0D 99 14 */	sth r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005EBDC 0005A83C  A8 63 00 02 */	lha r3, 2(r3)
/* 8005EBE0 0005A840  38 80 00 09 */	li r4, 9
/* 8005EBE4 0005A844  38 A0 00 00 */	li r5, 0
/* 8005EBE8 0005A848  48 1F 51 C9 */	bl func_80253DB0
/* 8005EBEC 0005A84C  3C 60 80 06 */	lis r3, func_8005F9BC@ha
/* 8005EBF0 0005A850  3C 80 80 06 */	lis r4, func_80060E04@ha
/* 8005EBF4 0005A854  80 AD 81 FC */	lwz r5, lbl_8063D4BC-_SDA_BASE_(r13)
/* 8005EBF8 0005A858  38 63 F9 BC */	addi r3, r3, func_8005F9BC@l
/* 8005EBFC 0005A85C  38 84 0E 04 */	addi r4, r4, func_80060E04@l
/* 8005EC00 0005A860  48 1F 53 6D */	bl func_80253F6C
/* 8005EC04 0005A864  90 6D 81 FC */	stw r3, lbl_8063D4BC-_SDA_BASE_(r13)
lbl_8005EC08:
/* 8005EC08 0005A868  39 61 00 40 */	addi r11, r1, 0x40
/* 8005EC0C 0005A86C  48 16 85 65 */	bl _restgpr_26
/* 8005EC10 0005A870  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8005EC14 0005A874  7C 08 03 A6 */	mtlr r0
/* 8005EC18 0005A878  38 21 00 40 */	addi r1, r1, 0x40
/* 8005EC1C 0005A87C  4E 80 00 20 */	blr

.global func_8005EC20
func_8005EC20:
/* 8005EC20 0005A880  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8005EC24 0005A884  7C 08 02 A6 */	mflr r0
/* 8005EC28 0005A888  28 03 00 02 */	cmplwi r3, 2
/* 8005EC2C 0005A88C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8005EC30 0005A890  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8005EC34 0005A894  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8005EC38 0005A898  7C 7E 1B 78 */	mr r30, r3
/* 8005EC3C 0005A89C  41 80 00 24 */	blt lbl_8005EC60
/* 8005EC40 0005A8A0  88 0D 99 22 */	lbz r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005EC44 0005A8A4  2C 00 00 11 */	cmpwi r0, 0x11
/* 8005EC48 0005A8A8  40 80 00 0C */	bge lbl_8005EC54
/* 8005EC4C 0005A8AC  2C 00 00 0D */	cmpwi r0, 0xd
/* 8005EC50 0005A8B0  40 80 00 10 */	bge lbl_8005EC60
lbl_8005EC54:
/* 8005EC54 0005A8B4  3C 60 00 01 */	lis r3, 0x0000F4FA@ha
/* 8005EC58 0005A8B8  38 63 F4 FA */	addi r3, r3, 0x0000F4FA@l
/* 8005EC5C 0005A8BC  48 00 05 24 */	b lbl_8005F180
lbl_8005EC60:
/* 8005EC60 0005A8C0  3F E0 80 48 */	lis r31, lbl_80478408@ha
/* 8005EC64 0005A8C4  3B FF 84 08 */	addi r31, r31, lbl_80478408@l
/* 8005EC68 0005A8C8  B0 7F 00 70 */	sth r3, 0x70(r31)
/* 8005EC6C 0005A8CC  80 7F 00 B4 */	lwz r3, 0xb4(r31)
/* 8005EC70 0005A8D0  80 03 00 0C */	lwz r0, 0xc(r3)
/* 8005EC74 0005A8D4  2C 00 00 01 */	cmpwi r0, 1
/* 8005EC78 0005A8D8  40 82 01 94 */	bne lbl_8005EE0C
/* 8005EC7C 0005A8DC  88 03 00 1B */	lbz r0, 0x1b(r3)
/* 8005EC80 0005A8E0  28 00 00 02 */	cmplwi r0, 2
/* 8005EC84 0005A8E4  40 82 01 88 */	bne lbl_8005EE0C
/* 8005EC88 0005A8E8  88 1F 00 B0 */	lbz r0, 0xb0(r31)
/* 8005EC8C 0005A8EC  28 00 00 0F */	cmplwi r0, 0xf
/* 8005EC90 0005A8F0  40 82 00 24 */	bne lbl_8005ECB4
/* 8005EC94 0005A8F4  88 7F 00 A6 */	lbz r3, 0xa6(r31)
/* 8005EC98 0005A8F8  38 C0 00 00 */	li r6, 0
/* 8005EC9C 0005A8FC  A0 9F 00 A8 */	lhz r4, 0xa8(r31)
/* 8005ECA0 0005A900  A0 BF 00 AC */	lhz r5, 0xac(r31)
/* 8005ECA4 0005A904  4B FF EB 2D */	bl func_8005D7D0
/* 8005ECA8 0005A908  38 00 00 0E */	li r0, 0xe
/* 8005ECAC 0005A90C  98 1F 00 B0 */	stb r0, 0xb0(r31)
/* 8005ECB0 0005A910  48 00 00 80 */	b lbl_8005ED30
lbl_8005ECB4:
/* 8005ECB4 0005A914  2C 00 00 00 */	cmpwi r0, 0
/* 8005ECB8 0005A918  40 82 00 44 */	bne lbl_8005ECFC
/* 8005ECBC 0005A91C  88 7F 00 B1 */	lbz r3, 0xb1(r31)
/* 8005ECC0 0005A920  2C 03 00 0F */	cmpwi r3, 0xf
/* 8005ECC4 0005A924  41 82 00 1C */	beq lbl_8005ECE0
/* 8005ECC8 0005A928  41 80 00 34 */	blt lbl_8005ECFC
/* 8005ECCC 0005A92C  2C 03 00 1A */	cmpwi r3, 0x1a
/* 8005ECD0 0005A930  40 80 00 2C */	bge lbl_8005ECFC
/* 8005ECD4 0005A934  38 03 FF FF */	addi r0, r3, -1
/* 8005ECD8 0005A938  98 1F 00 B1 */	stb r0, 0xb1(r31)
/* 8005ECDC 0005A93C  48 00 00 20 */	b lbl_8005ECFC
lbl_8005ECE0:
/* 8005ECE0 0005A940  88 7F 00 A7 */	lbz r3, 0xa7(r31)
/* 8005ECE4 0005A944  38 C0 00 00 */	li r6, 0
/* 8005ECE8 0005A948  A0 9F 00 AA */	lhz r4, 0xaa(r31)
/* 8005ECEC 0005A94C  A0 BF 00 AE */	lhz r5, 0xae(r31)
/* 8005ECF0 0005A950  4B FF EA E1 */	bl func_8005D7D0
/* 8005ECF4 0005A954  38 00 00 0E */	li r0, 0xe
/* 8005ECF8 0005A958  98 1F 00 B1 */	stb r0, 0xb1(r31)
lbl_8005ECFC:
/* 8005ECFC 0005A95C  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005ED00 0005A960  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005ED04 0005A964  88 03 00 B0 */	lbz r0, 0xb0(r3)
/* 8005ED08 0005A968  2C 00 00 0E */	cmpwi r0, 0xe
/* 8005ED0C 0005A96C  41 82 00 24 */	beq lbl_8005ED30
/* 8005ED10 0005A970  40 80 00 0C */	bge lbl_8005ED1C
/* 8005ED14 0005A974  2C 00 00 00 */	cmpwi r0, 0
/* 8005ED18 0005A978  41 82 00 18 */	beq lbl_8005ED30
lbl_8005ED1C:
/* 8005ED1C 0005A97C  3C 80 80 48 */	lis r4, lbl_80478408@ha
/* 8005ED20 0005A980  38 84 84 08 */	addi r4, r4, lbl_80478408@l
/* 8005ED24 0005A984  88 64 00 B0 */	lbz r3, 0xb0(r4)
/* 8005ED28 0005A988  38 03 FF FF */	addi r0, r3, -1
/* 8005ED2C 0005A98C  98 04 00 B0 */	stb r0, 0xb0(r4)
lbl_8005ED30:
/* 8005ED30 0005A990  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005ED34 0005A994  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005ED38 0005A998  7C 63 F2 14 */	add r3, r3, r30
/* 8005ED3C 0005A99C  88 03 00 B0 */	lbz r0, 0xb0(r3)
/* 8005ED40 0005A9A0  2C 00 00 0E */	cmpwi r0, 0xe
/* 8005ED44 0005A9A4  41 82 00 0C */	beq lbl_8005ED50
/* 8005ED48 0005A9A8  38 60 FF FF */	li r3, -1
/* 8005ED4C 0005A9AC  48 00 04 34 */	b lbl_8005F180
lbl_8005ED50:
/* 8005ED50 0005A9B0  88 0D 99 22 */	lbz r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005ED54 0005A9B4  2C 00 00 04 */	cmpwi r0, 4
/* 8005ED58 0005A9B8  41 82 00 34 */	beq lbl_8005ED8C
/* 8005ED5C 0005A9BC  40 80 00 1C */	bge lbl_8005ED78
/* 8005ED60 0005A9C0  2C 00 00 01 */	cmpwi r0, 1
/* 8005ED64 0005A9C4  41 82 00 A8 */	beq lbl_8005EE0C
/* 8005ED68 0005A9C8  40 80 00 64 */	bge lbl_8005EDCC
/* 8005ED6C 0005A9CC  2C 00 00 00 */	cmpwi r0, 0
/* 8005ED70 0005A9D0  40 80 00 1C */	bge lbl_8005ED8C
/* 8005ED74 0005A9D4  48 00 00 98 */	b lbl_8005EE0C
lbl_8005ED78:
/* 8005ED78 0005A9D8  2C 00 00 09 */	cmpwi r0, 9
/* 8005ED7C 0005A9DC  40 80 00 90 */	bge lbl_8005EE0C
/* 8005ED80 0005A9E0  2C 00 00 07 */	cmpwi r0, 7
/* 8005ED84 0005A9E4  40 80 00 48 */	bge lbl_8005EDCC
/* 8005ED88 0005A9E8  48 00 00 84 */	b lbl_8005EE0C
lbl_8005ED8C:
/* 8005ED8C 0005A9EC  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005ED90 0005A9F0  38 A1 00 10 */	addi r5, r1, 0x10
/* 8005ED94 0005A9F4  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005ED98 0005A9F8  38 80 00 08 */	li r4, 8
/* 8005ED9C 0005A9FC  A8 63 00 28 */	lha r3, 0x28(r3)
/* 8005EDA0 0005AA00  48 1F 50 AD */	bl func_80253E4C
/* 8005EDA4 0005AA04  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8005EDA8 0005AA08  2C 00 00 00 */	cmpwi r0, 0
/* 8005EDAC 0005AA0C  41 82 00 60 */	beq lbl_8005EE0C
/* 8005EDB0 0005AA10  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005EDB4 0005AA14  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005EDB8 0005AA18  A0 03 00 90 */	lhz r0, 0x90(r3)
/* 8005EDBC 0005AA1C  28 00 00 08 */	cmplwi r0, 8
/* 8005EDC0 0005AA20  41 82 00 4C */	beq lbl_8005EE0C
/* 8005EDC4 0005AA24  38 60 FF FF */	li r3, -1
/* 8005EDC8 0005AA28  48 00 03 B8 */	b lbl_8005F180
lbl_8005EDCC:
/* 8005EDCC 0005AA2C  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005EDD0 0005AA30  38 A1 00 10 */	addi r5, r1, 0x10
/* 8005EDD4 0005AA34  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005EDD8 0005AA38  38 80 00 08 */	li r4, 8
/* 8005EDDC 0005AA3C  A8 63 00 26 */	lha r3, 0x26(r3)
/* 8005EDE0 0005AA40  48 1F 50 6D */	bl func_80253E4C
/* 8005EDE4 0005AA44  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8005EDE8 0005AA48  2C 00 00 00 */	cmpwi r0, 0
/* 8005EDEC 0005AA4C  41 82 00 20 */	beq lbl_8005EE0C
/* 8005EDF0 0005AA50  3C 60 80 48 */	lis r3, lbl_80478408@ha
/* 8005EDF4 0005AA54  38 63 84 08 */	addi r3, r3, lbl_80478408@l
/* 8005EDF8 0005AA58  A0 03 00 90 */	lhz r0, 0x90(r3)
/* 8005EDFC 0005AA5C  28 00 00 08 */	cmplwi r0, 8
/* 8005EE00 0005AA60  41 82 00 0C */	beq lbl_8005EE0C
/* 8005EE04 0005AA64  38 60 FF FF */	li r3, -1
/* 8005EE08 0005AA68  48 00 03 78 */	b lbl_8005F180
lbl_8005EE0C:
/* 8005EE0C 0005AA6C  3F E0 80 48 */	lis r31, lbl_80478408@ha
/* 8005EE10 0005AA70  3B FF 84 08 */	addi r31, r31, lbl_80478408@l
/* 8005EE14 0005AA74  A0 1F 00 8E */	lhz r0, 0x8e(r31)
/* 8005EE18 0005AA78  2C 00 00 00 */	cmpwi r0, 0
/* 8005EE1C 0005AA7C  41 82 02 5C */	beq lbl_8005F078
/* 8005EE20 0005AA80  28 00 00 02 */	cmplwi r0, 2
/* 8005EE24 0005AA84  40 82 00 0C */	bne lbl_8005EE30
/* 8005EE28 0005AA88  38 60 FF FF */	li r3, -1
/* 8005EE2C 0005AA8C  48 00 03 54 */	b lbl_8005F180
lbl_8005EE30:
/* 8005EE30 0005AA90  88 0D 99 22 */	lbz r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005EE34 0005AA94  28 00 00 0C */	cmplwi r0, 0xc
/* 8005EE38 0005AA98  41 81 02 38 */	bgt lbl_8005F070
/* 8005EE3C 0005AA9C  3C 60 80 41 */	lis r3, lbl_8040B904@ha
/* 8005EE40 0005AAA0  54 00 10 3A */	slwi r0, r0, 2
/* 8005EE44 0005AAA4  38 63 B9 04 */	addi r3, r3, lbl_8040B904@l
/* 8005EE48 0005AAA8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005EE4C 0005AAAC  7C 69 03 A6 */	mtctr r3
/* 8005EE50 0005AAB0  4E 80 04 20 */	bctr
/* 8005EE54 0005AAB4  A0 1F 00 92 */	lhz r0, 0x92(r31)
/* 8005EE58 0005AAB8  28 00 00 FF */	cmplwi r0, 0xff
/* 8005EE5C 0005AABC  41 82 00 34 */	beq lbl_8005EE90
/* 8005EE60 0005AAC0  28 00 00 FB */	cmplwi r0, 0xfb
/* 8005EE64 0005AAC4  40 82 00 0C */	bne lbl_8005EE70
/* 8005EE68 0005AAC8  38 00 00 02 */	li r0, 2
/* 8005EE6C 0005AACC  B0 1F 00 8E */	sth r0, 0x8e(r31)
lbl_8005EE70:
/* 8005EE70 0005AAD0  3C 80 80 48 */	lis r4, lbl_80478408@ha
/* 8005EE74 0005AAD4  38 00 00 0D */	li r0, 0xd
/* 8005EE78 0005AAD8  38 84 84 08 */	addi r4, r4, lbl_80478408@l
/* 8005EE7C 0005AADC  7C 64 F2 14 */	add r3, r4, r30
/* 8005EE80 0005AAE0  98 03 00 B0 */	stb r0, 0xb0(r3)
/* 8005EE84 0005AAE4  A0 04 00 92 */	lhz r0, 0x92(r4)
/* 8005EE88 0005AAE8  60 03 F0 00 */	ori r3, r0, 0xf000
/* 8005EE8C 0005AAEC  48 00 02 F4 */	b lbl_8005F180
lbl_8005EE90:
/* 8005EE90 0005AAF0  48 01 01 39 */	bl func_8006EFC8
/* 8005EE94 0005AAF4  38 60 FF FF */	li r3, -1
/* 8005EE98 0005AAF8  48 00 02 E8 */	b lbl_8005F180
/* 8005EE9C 0005AAFC  A0 1F 00 94 */	lhz r0, 0x94(r31)
/* 8005EEA0 0005AB00  28 00 00 FF */	cmplwi r0, 0xff
/* 8005EEA4 0005AB04  41 82 00 34 */	beq lbl_8005EED8
/* 8005EEA8 0005AB08  28 00 00 FB */	cmplwi r0, 0xfb
/* 8005EEAC 0005AB0C  40 82 00 0C */	bne lbl_8005EEB8
/* 8005EEB0 0005AB10  38 00 00 02 */	li r0, 2
/* 8005EEB4 0005AB14  B0 1F 00 8E */	sth r0, 0x8e(r31)
lbl_8005EEB8:
/* 8005EEB8 0005AB18  3C 80 80 48 */	lis r4, lbl_80478408@ha
/* 8005EEBC 0005AB1C  38 00 00 0D */	li r0, 0xd
/* 8005EEC0 0005AB20  38 84 84 08 */	addi r4, r4, lbl_80478408@l
/* 8005EEC4 0005AB24  7C 64 F2 14 */	add r3, r4, r30
/* 8005EEC8 0005AB28  98 03 00 B0 */	stb r0, 0xb0(r3)
/* 8005EECC 0005AB2C  A0 04 00 94 */	lhz r0, 0x94(r4)
/* 8005EED0 0005AB30  60 03 F1 00 */	ori r3, r0, 0xf100
/* 8005EED4 0005AB34  48 00 02 AC */	b lbl_8005F180
lbl_8005EED8:
/* 8005EED8 0005AB38  48 01 00 F1 */	bl func_8006EFC8
/* 8005EEDC 0005AB3C  38 60 FF FF */	li r3, -1
/* 8005EEE0 0005AB40  48 00 02 A0 */	b lbl_8005F180
/* 8005EEE4 0005AB44  A0 1F 00 96 */	lhz r0, 0x96(r31)
/* 8005EEE8 0005AB48  28 00 00 FF */	cmplwi r0, 0xff
/* 8005EEEC 0005AB4C  41 82 00 38 */	beq lbl_8005EF24
/* 8005EEF0 0005AB50  A0 1F 00 94 */	lhz r0, 0x94(r31)
/* 8005EEF4 0005AB54  28 00 00 FB */	cmplwi r0, 0xfb
/* 8005EEF8 0005AB58  41 82 00 0C */	beq lbl_8005EF04
/* 8005EEFC 0005AB5C  38 00 00 02 */	li r0, 2
/* 8005EF00 0005AB60  B0 1F 00 8E */	sth r0, 0x8e(r31)
lbl_8005EF04:
/* 8005EF04 0005AB64  3C 80 80 48 */	lis r4, lbl_80478408@ha
/* 8005EF08 0005AB68  38 00 00 0D */	li r0, 0xd
/* 8005EF0C 0005AB6C  38 84 84 08 */	addi r4, r4, lbl_80478408@l
/* 8005EF10 0005AB70  7C 64 F2 14 */	add r3, r4, r30
/* 8005EF14 0005AB74  98 03 00 B0 */	stb r0, 0xb0(r3)
/* 8005EF18 0005AB78  A0 04 00 96 */	lhz r0, 0x96(r4)
/* 8005EF1C 0005AB7C  60 03 F2 00 */	ori r3, r0, 0xf200
/* 8005EF20 0005AB80  48 00 02 60 */	b lbl_8005F180
lbl_8005EF24:
/* 8005EF24 0005AB84  48 01 00 A5 */	bl func_8006EFC8
/* 8005EF28 0005AB88  38 60 FF FF */	li r3, -1
/* 8005EF2C 0005AB8C  48 00 02 54 */	b lbl_8005F180
/* 8005EF30 0005AB90  A0 1F 00 96 */	lhz r0, 0x96(r31)
/* 8005EF34 0005AB94  28 00 00 FF */	cmplwi r0, 0xff
/* 8005EF38 0005AB98  41 82 00 24 */	beq lbl_8005EF5C
/* 8005EF3C 0005AB9C  38 00 00 02 */	li r0, 2
/* 8005EF40 0005ABA0  7C 7F F2 14 */	add r3, r31, r30
/* 8005EF44 0005ABA4  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005EF48 0005ABA8  38 00 00 0D */	li r0, 0xd
/* 8005EF4C 0005ABAC  98 03 00 B0 */	stb r0, 0xb0(r3)
/* 8005EF50 0005ABB0  A0 1F 00 96 */	lhz r0, 0x96(r31)
/* 8005EF54 0005ABB4  60 03 F3 00 */	ori r3, r0, 0xf300
/* 8005EF58 0005ABB8  48 00 02 28 */	b lbl_8005F180
lbl_8005EF5C:
/* 8005EF5C 0005ABBC  48 01 00 6D */	bl func_8006EFC8
/* 8005EF60 0005ABC0  38 60 FF FF */	li r3, -1
/* 8005EF64 0005ABC4  48 00 02 1C */	b lbl_8005F180
/* 8005EF68 0005ABC8  A0 CD 99 1E */	lhz r6, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005EF6C 0005ABCC  28 06 00 FA */	cmplwi r6, 0xfa
/* 8005EF70 0005ABD0  40 82 00 28 */	bne lbl_8005EF98
/* 8005EF74 0005ABD4  38 A0 00 FF */	li r5, 0xff
/* 8005EF78 0005ABD8  38 80 00 02 */	li r4, 2
/* 8005EF7C 0005ABDC  B0 BF 00 92 */	sth r5, 0x92(r31)
/* 8005EF80 0005ABE0  7C 7F F2 14 */	add r3, r31, r30
/* 8005EF84 0005ABE4  38 00 00 0D */	li r0, 0xd
/* 8005EF88 0005ABE8  B0 BF 00 94 */	sth r5, 0x94(r31)
/* 8005EF8C 0005ABEC  B0 BF 00 96 */	sth r5, 0x96(r31)
/* 8005EF90 0005ABF0  B0 9F 00 8E */	sth r4, 0x8e(r31)
/* 8005EF94 0005ABF4  98 03 00 B0 */	stb r0, 0xb0(r3)
lbl_8005EF98:
/* 8005EF98 0005ABF8  54 C0 06 3E */	clrlwi r0, r6, 0x18
/* 8005EF9C 0005ABFC  60 03 F4 00 */	ori r3, r0, 0xf400
/* 8005EFA0 0005AC00  48 00 01 E0 */	b lbl_8005F180
/* 8005EFA4 0005AC04  A0 0D 99 14 */	lhz r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005EFA8 0005AC08  28 00 00 15 */	cmplwi r0, 0x15
/* 8005EFAC 0005AC0C  41 82 00 0C */	beq lbl_8005EFB8
/* 8005EFB0 0005AC10  38 60 FF FF */	li r3, -1
/* 8005EFB4 0005AC14  48 00 01 CC */	b lbl_8005F180
lbl_8005EFB8:
/* 8005EFB8 0005AC18  38 00 00 02 */	li r0, 2
/* 8005EFBC 0005AC1C  3C 60 00 01 */	lis r3, 0x0000F5FA@ha
/* 8005EFC0 0005AC20  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005EFC4 0005AC24  7C 9F F2 14 */	add r4, r31, r30
/* 8005EFC8 0005AC28  38 00 00 0D */	li r0, 0xd
/* 8005EFCC 0005AC2C  38 63 F5 FA */	addi r3, r3, 0x0000F5FA@l
/* 8005EFD0 0005AC30  98 04 00 B0 */	stb r0, 0xb0(r4)
/* 8005EFD4 0005AC34  48 00 01 AC */	b lbl_8005F180
/* 8005EFD8 0005AC38  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005EFDC 0005AC3C  38 A1 00 0C */	addi r5, r1, 0xc
/* 8005EFE0 0005AC40  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005EFE4 0005AC44  38 80 00 08 */	li r4, 8
/* 8005EFE8 0005AC48  A8 63 00 26 */	lha r3, 0x26(r3)
/* 8005EFEC 0005AC4C  48 1F 4E 61 */	bl func_80253E4C
/* 8005EFF0 0005AC50  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8005EFF4 0005AC54  2C 00 00 00 */	cmpwi r0, 0
/* 8005EFF8 0005AC58  41 82 00 0C */	beq lbl_8005F004
/* 8005EFFC 0005AC5C  38 60 FF FF */	li r3, -1
/* 8005F000 0005AC60  48 00 01 80 */	b lbl_8005F180
lbl_8005F004:
/* 8005F004 0005AC64  38 00 00 02 */	li r0, 2
/* 8005F008 0005AC68  3C 60 00 01 */	lis r3, 0x0000F5FA@ha
/* 8005F00C 0005AC6C  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005F010 0005AC70  7C 9F F2 14 */	add r4, r31, r30
/* 8005F014 0005AC74  38 00 00 0D */	li r0, 0xd
/* 8005F018 0005AC78  38 63 F5 FA */	addi r3, r3, 0x0000F5FA@l
/* 8005F01C 0005AC7C  98 04 00 B0 */	stb r0, 0xb0(r4)
/* 8005F020 0005AC80  48 00 01 60 */	b lbl_8005F180
/* 8005F024 0005AC84  3C 60 80 41 */	lis r3, lbl_8040B768@ha
/* 8005F028 0005AC88  38 A1 00 08 */	addi r5, r1, 8
/* 8005F02C 0005AC8C  38 63 B7 68 */	addi r3, r3, lbl_8040B768@l
/* 8005F030 0005AC90  38 80 00 08 */	li r4, 8
/* 8005F034 0005AC94  A8 63 00 28 */	lha r3, 0x28(r3)
/* 8005F038 0005AC98  48 1F 4E 15 */	bl func_80253E4C
/* 8005F03C 0005AC9C  80 01 00 08 */	lwz r0, 8(r1)
/* 8005F040 0005ACA0  2C 00 00 00 */	cmpwi r0, 0
/* 8005F044 0005ACA4  41 82 00 0C */	beq lbl_8005F050
/* 8005F048 0005ACA8  38 60 FF FF */	li r3, -1
/* 8005F04C 0005ACAC  48 00 01 34 */	b lbl_8005F180
lbl_8005F050:
/* 8005F050 0005ACB0  38 00 00 02 */	li r0, 2
/* 8005F054 0005ACB4  3C 60 00 01 */	lis r3, 0x0000F5FA@ha
/* 8005F058 0005ACB8  B0 1F 00 8E */	sth r0, 0x8e(r31)
/* 8005F05C 0005ACBC  7C 9F F2 14 */	add r4, r31, r30
/* 8005F060 0005ACC0  38 00 00 0D */	li r0, 0xd
/* 8005F064 0005ACC4  38 63 F5 FA */	addi r3, r3, 0x0000F5FA@l
/* 8005F068 0005ACC8  98 04 00 B0 */	stb r0, 0xb0(r4)
/* 8005F06C 0005ACCC  48 00 01 14 */	b lbl_8005F180
lbl_8005F070:
/* 8005F070 0005ACD0  38 60 FF FF */	li r3, -1
/* 8005F074 0005ACD4  48 00 01 0C */	b lbl_8005F180
lbl_8005F078:
/* 8005F078 0005ACD8  88 0D 99 22 */	lbz r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005F07C 0005ACDC  28 00 00 0F */	cmplwi r0, 0xf
/* 8005F080 0005ACE0  41 81 00 50 */	bgt lbl_8005F0D0
/* 8005F084 0005ACE4  3C 60 80 41 */	lis r3, lbl_8040B8C4@ha
/* 8005F088 0005ACE8  54 00 10 3A */	slwi r0, r0, 2
/* 8005F08C 0005ACEC  38 63 B8 C4 */	addi r3, r3, lbl_8040B8C4@l
/* 8005F090 0005ACF0  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005F094 0005ACF4  7C 69 03 A6 */	mtctr r3
/* 8005F098 0005ACF8  4E 80 04 20 */	bctr
/* 8005F09C 0005ACFC  48 00 FF 2D */	bl func_8006EFC8
/* 8005F0A0 0005AD00  48 00 00 30 */	b lbl_8005F0D0
/* 8005F0A4 0005AD04  3C 60 00 01 */	lis r3, 0x0000F4FA@ha
/* 8005F0A8 0005AD08  38 63 F4 FA */	addi r3, r3, 0x0000F4FA@l
/* 8005F0AC 0005AD0C  48 00 00 D4 */	b lbl_8005F180
/* 8005F0B0 0005AD10  A0 0D 99 14 */	lhz r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005F0B4 0005AD14  38 60 FF FF */	li r3, -1
/* 8005F0B8 0005AD18  28 00 00 15 */	cmplwi r0, 0x15
/* 8005F0BC 0005AD1C  40 82 00 C4 */	bne lbl_8005F180
/* 8005F0C0 0005AD20  A0 0D 99 1E */	lhz r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005F0C4 0005AD24  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8005F0C8 0005AD28  60 03 F4 00 */	ori r3, r0, 0xf400
/* 8005F0CC 0005AD2C  48 00 00 B4 */	b lbl_8005F180
lbl_8005F0D0:
/* 8005F0D0 0005AD30  A0 0D 99 14 */	lhz r0, lbl_8063EBD4-_SDA_BASE_(r13)
/* 8005F0D4 0005AD34  28 00 00 15 */	cmplwi r0, 0x15
/* 8005F0D8 0005AD38  41 82 00 0C */	beq lbl_8005F0E4
/* 8005F0DC 0005AD3C  38 60 FF FF */	li r3, -1
/* 8005F0E0 0005AD40  48 00 00 A0 */	b lbl_8005F180
lbl_8005F0E4:
/* 8005F0E4 0005AD44  88 0D 99 22 */	lbz r0, lbl_8063EBE2-_SDA_BASE_(r13)
/* 8005F0E8 0005AD48  28 00 00 0C */	cmplwi r0, 0xc
/* 8005F0EC 0005AD4C  41 81 00 90 */	bgt lbl_8005F17C
/* 8005F0F0 0005AD50  3C 60 80 41 */	lis r3, lbl_8040B890@ha
/* 8005F0F4 0005AD54  54 00 10 3A */	slwi r0, r0, 2
/* 8005F0F8 0005AD58  38 63 B8 90 */	addi r3, r3, lbl_8040B890@l
/* 8005F0FC 0005AD5C  7C 63 00 2E */	lwzx r3, r3, r0
/* 8005F100 0005AD60  7C 69 03 A6 */	mtctr r3
/* 8005F104 0005AD64  4E 80 04 20 */	bctr
/* 8005F108 0005AD68  A0 0D 99 1E */	lhz r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005F10C 0005AD6C  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8005F110 0005AD70  60 03 F0 00 */	ori r3, r0, 0xf000
/* 8005F114 0005AD74  48 00 00 6C */	b lbl_8005F180
/* 8005F118 0005AD78  A0 0D 99 1E */	lhz r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005F11C 0005AD7C  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8005F120 0005AD80  60 03 F1 00 */	ori r3, r0, 0xf100
/* 8005F124 0005AD84  48 00 00 5C */	b lbl_8005F180
/* 8005F128 0005AD88  A0 0D 99 1E */	lhz r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005F12C 0005AD8C  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8005F130 0005AD90  60 03 F2 00 */	ori r3, r0, 0xf200
/* 8005F134 0005AD94  48 00 00 4C */	b lbl_8005F180
/* 8005F138 0005AD98  A0 0D 99 1E */	lhz r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005F13C 0005AD9C  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8005F140 0005ADA0  60 03 F3 00 */	ori r3, r0, 0xf300
/* 8005F144 0005ADA4  48 00 00 3C */	b lbl_8005F180
/* 8005F148 0005ADA8  A0 0D 99 1E */	lhz r0, lbl_8063EBDE-_SDA_BASE_(r13)
/* 8005F14C 0005ADAC  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8005F150 0005ADB0  60 03 F4 00 */	ori r3, r0, 0xf400
/* 8005F154 0005ADB4  48 00 00 2C */	b lbl_8005F180
/* 8005F158 0005ADB8  3C 60 00 01 */	lis r3, 0x0000F5FA@ha
/* 8005F15C 0005ADBC  38 63 F5 FA */	addi r3, r3, 0x0000F5FA@l
/* 8005F160 0005ADC0  48 00 00 20 */	b lbl_8005F180
/* 8005F164 0005ADC4  3C 60 00 01 */	lis r3, 0x0000F5FA@ha
/* 8005F168 0005ADC8  38 63 F5 FA */	addi r3, r3, 0x0000F5FA@l
/* 8005F16C 0005ADCC  48 00 00 14 */	b lbl_8005F180
/* 8005F170 0005ADD0  3C 60 00 01 */	lis r3, 0x0000F5FA@ha
/* 8005F174 0005ADD4  38 63 F5 FA */	addi r3, r3, 0x0000F5FA@l
/* 8005F178 0005ADD8  48 00 00 08 */	b lbl_8005F180
lbl_8005F17C:
/* 8005F17C 0005ADDC  38 60 FF FF */	li r3, -1
lbl_8005F180:
/* 8005F180 0005ADE0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8005F184 0005ADE4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8005F188 0005ADE8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8005F18C 0005ADEC  7C 08 03 A6 */	mtlr r0
/* 8005F190 0005ADF0  38 21 00 20 */	addi r1, r1, 0x20
/* 8005F194 0005ADF4  4E 80 00 20 */	blr