summaryrefslogtreecommitdiff
path: root/asm/text_11.s
blob: 6d7cab01f30060567a2ef6917cad886f495dde62 (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
.include "macros.inc"

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

.global lbl_8038F424
lbl_8038F424:
/* 8038F424 0038B084  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F428 0038B088  7C 08 02 A6 */	mflr r0
/* 8038F42C 0038B08C  2C 03 00 00 */	cmpwi r3, 0
/* 8038F430 0038B090  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F434 0038B094  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038F438 0038B098  7C 9F 23 78 */	mr r31, r4
/* 8038F43C 0038B09C  93 C1 00 08 */	stw r30, 8(r1)
/* 8038F440 0038B0A0  7C 7E 1B 78 */	mr r30, r3
/* 8038F444 0038B0A4  41 82 01 A0 */	beq lbl_8038F5E4
/* 8038F448 0038B0A8  38 80 FF FF */	li r4, -1
/* 8038F44C 0038B0AC  38 63 00 80 */	addi r3, r3, 0x80
/* 8038F450 0038B0B0  48 00 A8 99 */	bl func_80399CE8
/* 8038F454 0038B0B4  38 7E 00 7C */	addi r3, r30, 0x7c
/* 8038F458 0038B0B8  38 80 FF FF */	li r4, -1
/* 8038F45C 0038B0BC  48 00 A5 D1 */	bl func_80399A2C
/* 8038F460 0038B0C0  38 7E 00 78 */	addi r3, r30, 0x78
/* 8038F464 0038B0C4  38 80 FF FF */	li r4, -1
/* 8038F468 0038B0C8  48 00 A1 85 */	bl func_803995EC
/* 8038F46C 0038B0CC  38 7E 00 74 */	addi r3, r30, 0x74
/* 8038F470 0038B0D0  38 80 FF FF */	li r4, -1
/* 8038F474 0038B0D4  48 00 9E 85 */	bl func_803992F8
/* 8038F478 0038B0D8  38 7E 00 70 */	addi r3, r30, 0x70
/* 8038F47C 0038B0DC  38 80 FF FF */	li r4, -1
/* 8038F480 0038B0E0  48 00 98 B9 */	bl func_80398D38
/* 8038F484 0038B0E4  38 7E 00 6C */	addi r3, r30, 0x6c
/* 8038F488 0038B0E8  38 80 FF FF */	li r4, -1
/* 8038F48C 0038B0EC  48 00 95 55 */	bl func_803989E0
/* 8038F490 0038B0F0  38 7E 00 68 */	addi r3, r30, 0x68
/* 8038F494 0038B0F4  38 80 FF FF */	li r4, -1
/* 8038F498 0038B0F8  48 00 92 59 */	bl func_803986F0
/* 8038F49C 0038B0FC  38 7E 00 64 */	addi r3, r30, 0x64
/* 8038F4A0 0038B100  38 80 FF FF */	li r4, -1
/* 8038F4A4 0038B104  48 00 8F 11 */	bl func_803983B4
/* 8038F4A8 0038B108  38 7E 00 60 */	addi r3, r30, 0x60
/* 8038F4AC 0038B10C  38 80 FF FF */	li r4, -1
/* 8038F4B0 0038B110  48 00 87 9D */	bl func_80397C4C
/* 8038F4B4 0038B114  38 7E 00 5C */	addi r3, r30, 0x5c
/* 8038F4B8 0038B118  38 80 FF FF */	li r4, -1
/* 8038F4BC 0038B11C  48 00 81 F5 */	bl func_803976B0
/* 8038F4C0 0038B120  38 7E 00 58 */	addi r3, r30, 0x58
/* 8038F4C4 0038B124  38 80 FF FF */	li r4, -1
/* 8038F4C8 0038B128  48 00 7E C1 */	bl func_80397388
/* 8038F4CC 0038B12C  38 7E 00 54 */	addi r3, r30, 0x54
/* 8038F4D0 0038B130  38 80 FF FF */	li r4, -1
/* 8038F4D4 0038B134  48 00 7A 0D */	bl func_80396EE0
/* 8038F4D8 0038B138  38 7E 00 50 */	addi r3, r30, 0x50
/* 8038F4DC 0038B13C  38 80 FF FF */	li r4, -1
/* 8038F4E0 0038B140  48 00 75 F5 */	bl func_80396AD4
/* 8038F4E4 0038B144  38 7E 00 4C */	addi r3, r30, 0x4c
/* 8038F4E8 0038B148  38 80 FF FF */	li r4, -1
/* 8038F4EC 0038B14C  48 00 73 15 */	bl func_80396800
/* 8038F4F0 0038B150  38 7E 00 48 */	addi r3, r30, 0x48
/* 8038F4F4 0038B154  38 80 FF FF */	li r4, -1
/* 8038F4F8 0038B158  48 00 30 FD */	bl func_803925F4
/* 8038F4FC 0038B15C  38 7E 00 44 */	addi r3, r30, 0x44
/* 8038F500 0038B160  38 80 FF FF */	li r4, -1
/* 8038F504 0038B164  48 00 6F 6D */	bl func_80396470
/* 8038F508 0038B168  38 7E 00 40 */	addi r3, r30, 0x40
/* 8038F50C 0038B16C  38 80 FF FF */	li r4, -1
/* 8038F510 0038B170  48 00 03 D1 */	bl func_8038F8E0
/* 8038F514 0038B174  38 7E 00 3C */	addi r3, r30, 0x3c
/* 8038F518 0038B178  38 80 FF FF */	li r4, -1
/* 8038F51C 0038B17C  48 00 1F 0D */	bl func_80391428
/* 8038F520 0038B180  38 7E 00 38 */	addi r3, r30, 0x38
/* 8038F524 0038B184  38 80 FF FF */	li r4, -1
/* 8038F528 0038B188  48 00 6C 51 */	bl func_80396178
/* 8038F52C 0038B18C  38 7E 00 34 */	addi r3, r30, 0x34
/* 8038F530 0038B190  38 80 FF FF */	li r4, -1
/* 8038F534 0038B194  48 00 14 CD */	bl func_80390A00
/* 8038F538 0038B198  38 7E 00 30 */	addi r3, r30, 0x30
/* 8038F53C 0038B19C  38 80 FF FF */	li r4, -1
/* 8038F540 0038B1A0  48 00 63 1D */	bl func_8039585C
/* 8038F544 0038B1A4  38 7E 00 2C */	addi r3, r30, 0x2c
/* 8038F548 0038B1A8  38 80 FF FF */	li r4, -1
/* 8038F54C 0038B1AC  48 00 5A 81 */	bl func_80394FCC
/* 8038F550 0038B1B0  38 7E 00 28 */	addi r3, r30, 0x28
/* 8038F554 0038B1B4  38 80 FF FF */	li r4, -1
/* 8038F558 0038B1B8  48 00 66 61 */	bl func_80395BB8
/* 8038F55C 0038B1BC  38 7E 00 24 */	addi r3, r30, 0x24
/* 8038F560 0038B1C0  38 80 FF FF */	li r4, -1
/* 8038F564 0038B1C4  48 00 0E D1 */	bl func_80390434
/* 8038F568 0038B1C8  38 7E 00 20 */	addi r3, r30, 0x20
/* 8038F56C 0038B1CC  38 80 FF FF */	li r4, -1
/* 8038F570 0038B1D0  48 00 0B F1 */	bl func_80390160
/* 8038F574 0038B1D4  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8038F578 0038B1D8  38 80 FF FF */	li r4, -1
/* 8038F57C 0038B1DC  48 00 2D B9 */	bl func_80392334
/* 8038F580 0038B1E0  38 7E 00 18 */	addi r3, r30, 0x18
/* 8038F584 0038B1E4  38 80 FF FF */	li r4, -1
/* 8038F588 0038B1E8  48 00 33 85 */	bl func_8039290C
/* 8038F58C 0038B1EC  38 7E 00 14 */	addi r3, r30, 0x14
/* 8038F590 0038B1F0  38 80 FF FF */	li r4, -1
/* 8038F594 0038B1F4  48 00 2A DD */	bl func_80392070
/* 8038F598 0038B1F8  38 7E 00 10 */	addi r3, r30, 0x10
/* 8038F59C 0038B1FC  38 80 FF FF */	li r4, -1
/* 8038F5A0 0038B200  48 00 20 C1 */	bl func_80391660
/* 8038F5A4 0038B204  38 7E 00 0C */	addi r3, r30, 0xc
/* 8038F5A8 0038B208  38 80 FF FF */	li r4, -1
/* 8038F5AC 0038B20C  48 00 05 6D */	bl func_8038FB18
/* 8038F5B0 0038B210  38 7E 00 08 */	addi r3, r30, 8
/* 8038F5B4 0038B214  38 80 FF FF */	li r4, -1
/* 8038F5B8 0038B218  48 00 00 89 */	bl func_8038F640
/* 8038F5BC 0038B21C  38 7E 00 04 */	addi r3, r30, 4
/* 8038F5C0 0038B220  38 80 FF FF */	li r4, -1
/* 8038F5C4 0038B224  48 00 11 2D */	bl func_803906F0
/* 8038F5C8 0038B228  7F C3 F3 78 */	mr r3, r30
/* 8038F5CC 0038B22C  38 80 FF FF */	li r4, -1
/* 8038F5D0 0038B230  48 00 19 81 */	bl func_80390F50
/* 8038F5D4 0038B234  2C 1F 00 00 */	cmpwi r31, 0
/* 8038F5D8 0038B238  40 81 00 0C */	ble lbl_8038F5E4
/* 8038F5DC 0038B23C  7F C3 F3 78 */	mr r3, r30
/* 8038F5E0 0038B240  4B E4 B4 D9 */	bl __dl__FPv
lbl_8038F5E4:
/* 8038F5E4 0038B244  7F C3 F3 78 */	mr r3, r30
/* 8038F5E8 0038B248  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038F5EC 0038B24C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8038F5F0 0038B250  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F5F4 0038B254  7C 08 03 A6 */	mtlr r0
/* 8038F5F8 0038B258  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F5FC 0038B25C  4E 80 00 20 */	blr 

.global func_8038F600
func_8038F600:
/* 8038F600 0038B260  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F604 0038B264  7C 08 02 A6 */	mflr r0
/* 8038F608 0038B268  2C 04 00 00 */	cmpwi r4, 0
/* 8038F60C 0038B26C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F610 0038B270  38 00 00 00 */	li r0, 0
/* 8038F614 0038B274  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038F618 0038B278  7C 7F 1B 78 */	mr r31, r3
/* 8038F61C 0038B27C  90 03 00 00 */	stw r0, 0(r3)
/* 8038F620 0038B280  41 82 00 08 */	beq lbl_8038F628
/* 8038F624 0038B284  48 00 00 7D */	bl func_8038F6A0
lbl_8038F628:
/* 8038F628 0038B288  7F E3 FB 78 */	mr r3, r31
/* 8038F62C 0038B28C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038F630 0038B290  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F634 0038B294  7C 08 03 A6 */	mtlr r0
/* 8038F638 0038B298  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F63C 0038B29C  4E 80 00 20 */	blr 

.global func_8038F640
func_8038F640:
/* 8038F640 0038B2A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F644 0038B2A4  7C 08 02 A6 */	mflr r0
/* 8038F648 0038B2A8  2C 03 00 00 */	cmpwi r3, 0
/* 8038F64C 0038B2AC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F650 0038B2B0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038F654 0038B2B4  7C 9F 23 78 */	mr r31, r4
/* 8038F658 0038B2B8  93 C1 00 08 */	stw r30, 8(r1)
/* 8038F65C 0038B2BC  7C 7E 1B 78 */	mr r30, r3
/* 8038F660 0038B2C0  41 82 00 24 */	beq lbl_8038F684
/* 8038F664 0038B2C4  80 03 00 00 */	lwz r0, 0(r3)
/* 8038F668 0038B2C8  2C 00 00 00 */	cmpwi r0, 0
/* 8038F66C 0038B2CC  41 82 00 08 */	beq lbl_8038F674
/* 8038F670 0038B2D0  48 00 01 95 */	bl func_8038F804
lbl_8038F674:
/* 8038F674 0038B2D4  2C 1F 00 00 */	cmpwi r31, 0
/* 8038F678 0038B2D8  40 81 00 0C */	ble lbl_8038F684
/* 8038F67C 0038B2DC  7F C3 F3 78 */	mr r3, r30
/* 8038F680 0038B2E0  4B E4 B4 39 */	bl __dl__FPv
lbl_8038F684:
/* 8038F684 0038B2E4  7F C3 F3 78 */	mr r3, r30
/* 8038F688 0038B2E8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038F68C 0038B2EC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8038F690 0038B2F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F694 0038B2F4  7C 08 03 A6 */	mtlr r0
/* 8038F698 0038B2F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F69C 0038B2FC  4E 80 00 20 */	blr 

.global func_8038F6A0
func_8038F6A0:
/* 8038F6A0 0038B300  2C 04 00 00 */	cmpwi r4, 0
/* 8038F6A4 0038B304  40 82 00 0C */	bne lbl_8038F6B0
/* 8038F6A8 0038B308  38 60 FF FF */	li r3, -1
/* 8038F6AC 0038B30C  4E 80 00 20 */	blr 
lbl_8038F6B0:
/* 8038F6B0 0038B310  80 03 00 00 */	lwz r0, 0(r3)
/* 8038F6B4 0038B314  2C 00 00 00 */	cmpwi r0, 0
/* 8038F6B8 0038B318  41 82 00 0C */	beq lbl_8038F6C4
/* 8038F6BC 0038B31C  38 60 FF FE */	li r3, -2
/* 8038F6C0 0038B320  4E 80 00 20 */	blr 
lbl_8038F6C4:
/* 8038F6C4 0038B324  80 04 00 04 */	lwz r0, 4(r4)
/* 8038F6C8 0038B328  28 00 00 04 */	cmplwi r0, 4
/* 8038F6CC 0038B32C  41 82 00 0C */	beq lbl_8038F6D8
/* 8038F6D0 0038B330  38 60 FF FD */	li r3, -3
/* 8038F6D4 0038B334  4E 80 00 20 */	blr 
lbl_8038F6D8:
/* 8038F6D8 0038B338  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8038F6DC 0038B33C  2C 00 00 00 */	cmpwi r0, 0
/* 8038F6E0 0038B340  40 82 01 0C */	bne lbl_8038F7EC
/* 8038F6E4 0038B344  80 04 00 08 */	lwz r0, 8(r4)
/* 8038F6E8 0038B348  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8038F6EC 0038B34C  7C E0 22 14 */	add r7, r0, r4
/* 8038F6F0 0038B350  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8038F6F4 0038B354  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8038F6F8 0038B358  7C C6 22 14 */	add r6, r6, r4
/* 8038F6FC 0038B35C  7C A5 22 14 */	add r5, r5, r4
/* 8038F700 0038B360  90 E4 00 08 */	stw r7, 8(r4)
/* 8038F704 0038B364  2C 00 00 00 */	cmpwi r0, 0
/* 8038F708 0038B368  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8038F70C 0038B36C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8038F710 0038B370  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8038F714 0038B374  41 82 00 0C */	beq lbl_8038F720
/* 8038F718 0038B378  7C 00 22 14 */	add r0, r0, r4
/* 8038F71C 0038B37C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_8038F720:
/* 8038F720 0038B380  2C 07 00 00 */	cmpwi r7, 0
/* 8038F724 0038B384  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8038F728 0038B388  41 82 00 BC */	beq lbl_8038F7E4
/* 8038F72C 0038B38C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 8038F730 0038B390  7C 09 03 A6 */	mtctr r0
/* 8038F734 0038B394  41 82 00 94 */	beq lbl_8038F7C8
lbl_8038F738:
/* 8038F738 0038B398  80 C5 00 00 */	lwz r6, 0(r5)
/* 8038F73C 0038B39C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F740 0038B3A0  7C 00 22 14 */	add r0, r0, r4
/* 8038F744 0038B3A4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F748 0038B3A8  80 C5 00 04 */	lwz r6, 4(r5)
/* 8038F74C 0038B3AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F750 0038B3B0  7C 00 22 14 */	add r0, r0, r4
/* 8038F754 0038B3B4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F758 0038B3B8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8038F75C 0038B3BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F760 0038B3C0  7C 00 22 14 */	add r0, r0, r4
/* 8038F764 0038B3C4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F768 0038B3C8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8038F76C 0038B3CC  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F770 0038B3D0  7C 00 22 14 */	add r0, r0, r4
/* 8038F774 0038B3D4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F778 0038B3D8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8038F77C 0038B3DC  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F780 0038B3E0  7C 00 22 14 */	add r0, r0, r4
/* 8038F784 0038B3E4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F788 0038B3E8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8038F78C 0038B3EC  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F790 0038B3F0  7C 00 22 14 */	add r0, r0, r4
/* 8038F794 0038B3F4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F798 0038B3F8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8038F79C 0038B3FC  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F7A0 0038B400  7C 00 22 14 */	add r0, r0, r4
/* 8038F7A4 0038B404  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F7A8 0038B408  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8038F7AC 0038B40C  38 A5 00 20 */	addi r5, r5, 0x20
/* 8038F7B0 0038B410  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F7B4 0038B414  7C 00 22 14 */	add r0, r0, r4
/* 8038F7B8 0038B418  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F7BC 0038B41C  42 00 FF 7C */	bdnz lbl_8038F738
/* 8038F7C0 0038B420  70 E7 00 07 */	andi. r7, r7, 7
/* 8038F7C4 0038B424  41 82 00 20 */	beq lbl_8038F7E4
lbl_8038F7C8:
/* 8038F7C8 0038B428  7C E9 03 A6 */	mtctr r7
lbl_8038F7CC:
/* 8038F7CC 0038B42C  80 C5 00 00 */	lwz r6, 0(r5)
/* 8038F7D0 0038B430  38 A5 00 04 */	addi r5, r5, 4
/* 8038F7D4 0038B434  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F7D8 0038B438  7C 00 22 14 */	add r0, r0, r4
/* 8038F7DC 0038B43C  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F7E0 0038B440  42 00 FF EC */	bdnz lbl_8038F7CC
lbl_8038F7E4:
/* 8038F7E4 0038B444  38 00 00 01 */	li r0, 1
/* 8038F7E8 0038B448  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8038F7EC:
/* 8038F7EC 0038B44C  90 83 00 00 */	stw r4, 0(r3)
/* 8038F7F0 0038B450  38 60 00 00 */	li r3, 0
/* 8038F7F4 0038B454  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8038F7F8 0038B458  38 05 00 01 */	addi r0, r5, 1
/* 8038F7FC 0038B45C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 8038F800 0038B460  4E 80 00 20 */	blr 

.global func_8038F804
func_8038F804:
/* 8038F804 0038B464  80 83 00 00 */	lwz r4, 0(r3)
/* 8038F808 0038B468  38 A0 00 00 */	li r5, 0
/* 8038F80C 0038B46C  2C 04 00 00 */	cmpwi r4, 0
/* 8038F810 0038B470  41 82 00 20 */	beq lbl_8038F830
/* 8038F814 0038B474  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8038F818 0038B478  2C 05 00 00 */	cmpwi r5, 0
/* 8038F81C 0038B47C  41 82 00 0C */	beq lbl_8038F828
/* 8038F820 0038B480  38 A5 FF FF */	addi r5, r5, -1
/* 8038F824 0038B484  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_8038F828:
/* 8038F828 0038B488  38 00 00 00 */	li r0, 0
/* 8038F82C 0038B48C  90 03 00 00 */	stw r0, 0(r3)
lbl_8038F830:
/* 8038F830 0038B490  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 8038F834 0038B494  4E 80 00 20 */	blr 

.global func_8038F838
func_8038F838:
/* 8038F838 0038B498  80 63 00 00 */	lwz r3, 0(r3)
/* 8038F83C 0038B49C  2C 03 00 00 */	cmpwi r3, 0
/* 8038F840 0038B4A0  40 82 00 0C */	bne lbl_8038F84C
/* 8038F844 0038B4A4  38 60 00 00 */	li r3, 0
/* 8038F848 0038B4A8  4E 80 00 20 */	blr 
lbl_8038F84C:
/* 8038F84C 0038B4AC  2C 04 00 00 */	cmpwi r4, 0
/* 8038F850 0038B4B0  40 80 00 0C */	bge lbl_8038F85C
/* 8038F854 0038B4B4  38 60 00 00 */	li r3, 0
/* 8038F858 0038B4B8  4E 80 00 20 */	blr 
lbl_8038F85C:
/* 8038F85C 0038B4BC  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8038F860 0038B4C0  54 80 10 3A */	slwi r0, r4, 2
/* 8038F864 0038B4C4  7C 63 02 14 */	add r3, r3, r0
/* 8038F868 0038B4C8  4E 80 00 20 */	blr 

.global func_8038F86C
func_8038F86C:
/* 8038F86C 0038B4CC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F870 0038B4D0  7C 08 02 A6 */	mflr r0
/* 8038F874 0038B4D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F878 0038B4D8  4B FF FF C1 */	bl func_8038F838
/* 8038F87C 0038B4DC  2C 03 00 00 */	cmpwi r3, 0
/* 8038F880 0038B4E0  41 82 00 0C */	beq lbl_8038F88C
/* 8038F884 0038B4E4  80 63 00 00 */	lwz r3, 0(r3)
/* 8038F888 0038B4E8  48 00 00 08 */	b lbl_8038F890
lbl_8038F88C:
/* 8038F88C 0038B4EC  38 60 00 00 */	li r3, 0
lbl_8038F890:
/* 8038F890 0038B4F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F894 0038B4F4  7C 08 03 A6 */	mtlr r0
/* 8038F898 0038B4F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F89C 0038B4FC  4E 80 00 20 */	blr 

.global func_8038F8A0
func_8038F8A0:
/* 8038F8A0 0038B500  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F8A4 0038B504  7C 08 02 A6 */	mflr r0
/* 8038F8A8 0038B508  2C 04 00 00 */	cmpwi r4, 0
/* 8038F8AC 0038B50C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F8B0 0038B510  38 00 00 00 */	li r0, 0
/* 8038F8B4 0038B514  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038F8B8 0038B518  7C 7F 1B 78 */	mr r31, r3
/* 8038F8BC 0038B51C  90 03 00 00 */	stw r0, 0(r3)
/* 8038F8C0 0038B520  41 82 00 08 */	beq lbl_8038F8C8
/* 8038F8C4 0038B524  48 00 00 7D */	bl func_8038F940
lbl_8038F8C8:
/* 8038F8C8 0038B528  7F E3 FB 78 */	mr r3, r31
/* 8038F8CC 0038B52C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038F8D0 0038B530  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F8D4 0038B534  7C 08 03 A6 */	mtlr r0
/* 8038F8D8 0038B538  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F8DC 0038B53C  4E 80 00 20 */	blr 

.global func_8038F8E0
func_8038F8E0:
/* 8038F8E0 0038B540  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038F8E4 0038B544  7C 08 02 A6 */	mflr r0
/* 8038F8E8 0038B548  2C 03 00 00 */	cmpwi r3, 0
/* 8038F8EC 0038B54C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F8F0 0038B550  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038F8F4 0038B554  7C 9F 23 78 */	mr r31, r4
/* 8038F8F8 0038B558  93 C1 00 08 */	stw r30, 8(r1)
/* 8038F8FC 0038B55C  7C 7E 1B 78 */	mr r30, r3
/* 8038F900 0038B560  41 82 00 24 */	beq lbl_8038F924
/* 8038F904 0038B564  80 03 00 00 */	lwz r0, 0(r3)
/* 8038F908 0038B568  2C 00 00 00 */	cmpwi r0, 0
/* 8038F90C 0038B56C  41 82 00 08 */	beq lbl_8038F914
/* 8038F910 0038B570  48 00 01 95 */	bl func_8038FAA4
lbl_8038F914:
/* 8038F914 0038B574  2C 1F 00 00 */	cmpwi r31, 0
/* 8038F918 0038B578  40 81 00 0C */	ble lbl_8038F924
/* 8038F91C 0038B57C  7F C3 F3 78 */	mr r3, r30
/* 8038F920 0038B580  4B E4 B1 99 */	bl __dl__FPv
lbl_8038F924:
/* 8038F924 0038B584  7F C3 F3 78 */	mr r3, r30
/* 8038F928 0038B588  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038F92C 0038B58C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8038F930 0038B590  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F934 0038B594  7C 08 03 A6 */	mtlr r0
/* 8038F938 0038B598  38 21 00 10 */	addi r1, r1, 0x10
/* 8038F93C 0038B59C  4E 80 00 20 */	blr 

.global func_8038F940
func_8038F940:
/* 8038F940 0038B5A0  2C 04 00 00 */	cmpwi r4, 0
/* 8038F944 0038B5A4  40 82 00 0C */	bne lbl_8038F950
/* 8038F948 0038B5A8  38 60 FF FF */	li r3, -1
/* 8038F94C 0038B5AC  4E 80 00 20 */	blr 
lbl_8038F950:
/* 8038F950 0038B5B0  80 03 00 00 */	lwz r0, 0(r3)
/* 8038F954 0038B5B4  2C 00 00 00 */	cmpwi r0, 0
/* 8038F958 0038B5B8  41 82 00 0C */	beq lbl_8038F964
/* 8038F95C 0038B5BC  38 60 FF FE */	li r3, -2
/* 8038F960 0038B5C0  4E 80 00 20 */	blr 
lbl_8038F964:
/* 8038F964 0038B5C4  80 04 00 04 */	lwz r0, 4(r4)
/* 8038F968 0038B5C8  28 00 00 0C */	cmplwi r0, 0xc
/* 8038F96C 0038B5CC  41 82 00 0C */	beq lbl_8038F978
/* 8038F970 0038B5D0  38 60 FF FD */	li r3, -3
/* 8038F974 0038B5D4  4E 80 00 20 */	blr 
lbl_8038F978:
/* 8038F978 0038B5D8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8038F97C 0038B5DC  2C 00 00 00 */	cmpwi r0, 0
/* 8038F980 0038B5E0  40 82 01 0C */	bne lbl_8038FA8C
/* 8038F984 0038B5E4  80 04 00 08 */	lwz r0, 8(r4)
/* 8038F988 0038B5E8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8038F98C 0038B5EC  7C E0 22 14 */	add r7, r0, r4
/* 8038F990 0038B5F0  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8038F994 0038B5F4  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8038F998 0038B5F8  7C C6 22 14 */	add r6, r6, r4
/* 8038F99C 0038B5FC  7C A5 22 14 */	add r5, r5, r4
/* 8038F9A0 0038B600  90 E4 00 08 */	stw r7, 8(r4)
/* 8038F9A4 0038B604  2C 00 00 00 */	cmpwi r0, 0
/* 8038F9A8 0038B608  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8038F9AC 0038B60C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8038F9B0 0038B610  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8038F9B4 0038B614  41 82 00 0C */	beq lbl_8038F9C0
/* 8038F9B8 0038B618  7C 00 22 14 */	add r0, r0, r4
/* 8038F9BC 0038B61C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_8038F9C0:
/* 8038F9C0 0038B620  2C 07 00 00 */	cmpwi r7, 0
/* 8038F9C4 0038B624  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8038F9C8 0038B628  41 82 00 BC */	beq lbl_8038FA84
/* 8038F9CC 0038B62C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 8038F9D0 0038B630  7C 09 03 A6 */	mtctr r0
/* 8038F9D4 0038B634  41 82 00 94 */	beq lbl_8038FA68
lbl_8038F9D8:
/* 8038F9D8 0038B638  80 C5 00 00 */	lwz r6, 0(r5)
/* 8038F9DC 0038B63C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F9E0 0038B640  7C 00 22 14 */	add r0, r0, r4
/* 8038F9E4 0038B644  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F9E8 0038B648  80 C5 00 04 */	lwz r6, 4(r5)
/* 8038F9EC 0038B64C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038F9F0 0038B650  7C 00 22 14 */	add r0, r0, r4
/* 8038F9F4 0038B654  7C 06 21 2E */	stwx r0, r6, r4
/* 8038F9F8 0038B658  80 C5 00 08 */	lwz r6, 8(r5)
/* 8038F9FC 0038B65C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA00 0038B660  7C 00 22 14 */	add r0, r0, r4
/* 8038FA04 0038B664  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA08 0038B668  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8038FA0C 0038B66C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA10 0038B670  7C 00 22 14 */	add r0, r0, r4
/* 8038FA14 0038B674  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA18 0038B678  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8038FA1C 0038B67C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA20 0038B680  7C 00 22 14 */	add r0, r0, r4
/* 8038FA24 0038B684  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA28 0038B688  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8038FA2C 0038B68C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA30 0038B690  7C 00 22 14 */	add r0, r0, r4
/* 8038FA34 0038B694  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA38 0038B698  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8038FA3C 0038B69C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA40 0038B6A0  7C 00 22 14 */	add r0, r0, r4
/* 8038FA44 0038B6A4  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA48 0038B6A8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8038FA4C 0038B6AC  38 A5 00 20 */	addi r5, r5, 0x20
/* 8038FA50 0038B6B0  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA54 0038B6B4  7C 00 22 14 */	add r0, r0, r4
/* 8038FA58 0038B6B8  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA5C 0038B6BC  42 00 FF 7C */	bdnz lbl_8038F9D8
/* 8038FA60 0038B6C0  70 E7 00 07 */	andi. r7, r7, 7
/* 8038FA64 0038B6C4  41 82 00 20 */	beq lbl_8038FA84
lbl_8038FA68:
/* 8038FA68 0038B6C8  7C E9 03 A6 */	mtctr r7
lbl_8038FA6C:
/* 8038FA6C 0038B6CC  80 C5 00 00 */	lwz r6, 0(r5)
/* 8038FA70 0038B6D0  38 A5 00 04 */	addi r5, r5, 4
/* 8038FA74 0038B6D4  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FA78 0038B6D8  7C 00 22 14 */	add r0, r0, r4
/* 8038FA7C 0038B6DC  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FA80 0038B6E0  42 00 FF EC */	bdnz lbl_8038FA6C
lbl_8038FA84:
/* 8038FA84 0038B6E4  38 00 00 01 */	li r0, 1
/* 8038FA88 0038B6E8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8038FA8C:
/* 8038FA8C 0038B6EC  90 83 00 00 */	stw r4, 0(r3)
/* 8038FA90 0038B6F0  38 60 00 00 */	li r3, 0
/* 8038FA94 0038B6F4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8038FA98 0038B6F8  38 05 00 01 */	addi r0, r5, 1
/* 8038FA9C 0038B6FC  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 8038FAA0 0038B700  4E 80 00 20 */	blr 

.global func_8038FAA4
func_8038FAA4:
/* 8038FAA4 0038B704  80 83 00 00 */	lwz r4, 0(r3)
/* 8038FAA8 0038B708  38 A0 00 00 */	li r5, 0
/* 8038FAAC 0038B70C  2C 04 00 00 */	cmpwi r4, 0
/* 8038FAB0 0038B710  41 82 00 20 */	beq lbl_8038FAD0
/* 8038FAB4 0038B714  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8038FAB8 0038B718  2C 05 00 00 */	cmpwi r5, 0
/* 8038FABC 0038B71C  41 82 00 0C */	beq lbl_8038FAC8
/* 8038FAC0 0038B720  38 A5 FF FF */	addi r5, r5, -1
/* 8038FAC4 0038B724  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_8038FAC8:
/* 8038FAC8 0038B728  38 00 00 00 */	li r0, 0
/* 8038FACC 0038B72C  90 03 00 00 */	stw r0, 0(r3)
lbl_8038FAD0:
/* 8038FAD0 0038B730  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 8038FAD4 0038B734  4E 80 00 20 */	blr 

.global func_8038FAD8
func_8038FAD8:
/* 8038FAD8 0038B738  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FADC 0038B73C  7C 08 02 A6 */	mflr r0
/* 8038FAE0 0038B740  2C 04 00 00 */	cmpwi r4, 0
/* 8038FAE4 0038B744  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FAE8 0038B748  38 00 00 00 */	li r0, 0
/* 8038FAEC 0038B74C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038FAF0 0038B750  7C 7F 1B 78 */	mr r31, r3
/* 8038FAF4 0038B754  90 03 00 00 */	stw r0, 0(r3)
/* 8038FAF8 0038B758  41 82 00 08 */	beq lbl_8038FB00
/* 8038FAFC 0038B75C  48 00 00 7D */	bl func_8038FB78
lbl_8038FB00:
/* 8038FB00 0038B760  7F E3 FB 78 */	mr r3, r31
/* 8038FB04 0038B764  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038FB08 0038B768  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FB0C 0038B76C  7C 08 03 A6 */	mtlr r0
/* 8038FB10 0038B770  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FB14 0038B774  4E 80 00 20 */	blr 

.global func_8038FB18
func_8038FB18:
/* 8038FB18 0038B778  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FB1C 0038B77C  7C 08 02 A6 */	mflr r0
/* 8038FB20 0038B780  2C 03 00 00 */	cmpwi r3, 0
/* 8038FB24 0038B784  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FB28 0038B788  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038FB2C 0038B78C  7C 9F 23 78 */	mr r31, r4
/* 8038FB30 0038B790  93 C1 00 08 */	stw r30, 8(r1)
/* 8038FB34 0038B794  7C 7E 1B 78 */	mr r30, r3
/* 8038FB38 0038B798  41 82 00 24 */	beq lbl_8038FB5C
/* 8038FB3C 0038B79C  80 03 00 00 */	lwz r0, 0(r3)
/* 8038FB40 0038B7A0  2C 00 00 00 */	cmpwi r0, 0
/* 8038FB44 0038B7A4  41 82 00 08 */	beq lbl_8038FB4C
/* 8038FB48 0038B7A8  48 00 01 95 */	bl func_8038FCDC
lbl_8038FB4C:
/* 8038FB4C 0038B7AC  2C 1F 00 00 */	cmpwi r31, 0
/* 8038FB50 0038B7B0  40 81 00 0C */	ble lbl_8038FB5C
/* 8038FB54 0038B7B4  7F C3 F3 78 */	mr r3, r30
/* 8038FB58 0038B7B8  4B E4 AF 61 */	bl __dl__FPv
lbl_8038FB5C:
/* 8038FB5C 0038B7BC  7F C3 F3 78 */	mr r3, r30
/* 8038FB60 0038B7C0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038FB64 0038B7C4  83 C1 00 08 */	lwz r30, 8(r1)
/* 8038FB68 0038B7C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FB6C 0038B7CC  7C 08 03 A6 */	mtlr r0
/* 8038FB70 0038B7D0  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FB74 0038B7D4  4E 80 00 20 */	blr 

.global func_8038FB78
func_8038FB78:
/* 8038FB78 0038B7D8  2C 04 00 00 */	cmpwi r4, 0
/* 8038FB7C 0038B7DC  40 82 00 0C */	bne lbl_8038FB88
/* 8038FB80 0038B7E0  38 60 FF FF */	li r3, -1
/* 8038FB84 0038B7E4  4E 80 00 20 */	blr 
lbl_8038FB88:
/* 8038FB88 0038B7E8  80 03 00 00 */	lwz r0, 0(r3)
/* 8038FB8C 0038B7EC  2C 00 00 00 */	cmpwi r0, 0
/* 8038FB90 0038B7F0  41 82 00 0C */	beq lbl_8038FB9C
/* 8038FB94 0038B7F4  38 60 FF FE */	li r3, -2
/* 8038FB98 0038B7F8  4E 80 00 20 */	blr 
lbl_8038FB9C:
/* 8038FB9C 0038B7FC  80 04 00 04 */	lwz r0, 4(r4)
/* 8038FBA0 0038B800  28 00 00 28 */	cmplwi r0, 0x28
/* 8038FBA4 0038B804  41 82 00 0C */	beq lbl_8038FBB0
/* 8038FBA8 0038B808  38 60 FF FD */	li r3, -3
/* 8038FBAC 0038B80C  4E 80 00 20 */	blr 
lbl_8038FBB0:
/* 8038FBB0 0038B810  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8038FBB4 0038B814  2C 00 00 00 */	cmpwi r0, 0
/* 8038FBB8 0038B818  40 82 01 0C */	bne lbl_8038FCC4
/* 8038FBBC 0038B81C  80 04 00 08 */	lwz r0, 8(r4)
/* 8038FBC0 0038B820  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8038FBC4 0038B824  7C E0 22 14 */	add r7, r0, r4
/* 8038FBC8 0038B828  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8038FBCC 0038B82C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8038FBD0 0038B830  7C C6 22 14 */	add r6, r6, r4
/* 8038FBD4 0038B834  7C A5 22 14 */	add r5, r5, r4
/* 8038FBD8 0038B838  90 E4 00 08 */	stw r7, 8(r4)
/* 8038FBDC 0038B83C  2C 00 00 00 */	cmpwi r0, 0
/* 8038FBE0 0038B840  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8038FBE4 0038B844  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8038FBE8 0038B848  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8038FBEC 0038B84C  41 82 00 0C */	beq lbl_8038FBF8
/* 8038FBF0 0038B850  7C 00 22 14 */	add r0, r0, r4
/* 8038FBF4 0038B854  90 04 00 20 */	stw r0, 0x20(r4)
lbl_8038FBF8:
/* 8038FBF8 0038B858  2C 07 00 00 */	cmpwi r7, 0
/* 8038FBFC 0038B85C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8038FC00 0038B860  41 82 00 BC */	beq lbl_8038FCBC
/* 8038FC04 0038B864  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 8038FC08 0038B868  7C 09 03 A6 */	mtctr r0
/* 8038FC0C 0038B86C  41 82 00 94 */	beq lbl_8038FCA0
lbl_8038FC10:
/* 8038FC10 0038B870  80 C5 00 00 */	lwz r6, 0(r5)
/* 8038FC14 0038B874  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC18 0038B878  7C 00 22 14 */	add r0, r0, r4
/* 8038FC1C 0038B87C  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC20 0038B880  80 C5 00 04 */	lwz r6, 4(r5)
/* 8038FC24 0038B884  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC28 0038B888  7C 00 22 14 */	add r0, r0, r4
/* 8038FC2C 0038B88C  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC30 0038B890  80 C5 00 08 */	lwz r6, 8(r5)
/* 8038FC34 0038B894  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC38 0038B898  7C 00 22 14 */	add r0, r0, r4
/* 8038FC3C 0038B89C  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC40 0038B8A0  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8038FC44 0038B8A4  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC48 0038B8A8  7C 00 22 14 */	add r0, r0, r4
/* 8038FC4C 0038B8AC  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC50 0038B8B0  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8038FC54 0038B8B4  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC58 0038B8B8  7C 00 22 14 */	add r0, r0, r4
/* 8038FC5C 0038B8BC  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC60 0038B8C0  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8038FC64 0038B8C4  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC68 0038B8C8  7C 00 22 14 */	add r0, r0, r4
/* 8038FC6C 0038B8CC  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC70 0038B8D0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8038FC74 0038B8D4  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC78 0038B8D8  7C 00 22 14 */	add r0, r0, r4
/* 8038FC7C 0038B8DC  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC80 0038B8E0  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8038FC84 0038B8E4  38 A5 00 20 */	addi r5, r5, 0x20
/* 8038FC88 0038B8E8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FC8C 0038B8EC  7C 00 22 14 */	add r0, r0, r4
/* 8038FC90 0038B8F0  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FC94 0038B8F4  42 00 FF 7C */	bdnz lbl_8038FC10
/* 8038FC98 0038B8F8  70 E7 00 07 */	andi. r7, r7, 7
/* 8038FC9C 0038B8FC  41 82 00 20 */	beq lbl_8038FCBC
lbl_8038FCA0:
/* 8038FCA0 0038B900  7C E9 03 A6 */	mtctr r7
lbl_8038FCA4:
/* 8038FCA4 0038B904  80 C5 00 00 */	lwz r6, 0(r5)
/* 8038FCA8 0038B908  38 A5 00 04 */	addi r5, r5, 4
/* 8038FCAC 0038B90C  7C 06 20 2E */	lwzx r0, r6, r4
/* 8038FCB0 0038B910  7C 00 22 14 */	add r0, r0, r4
/* 8038FCB4 0038B914  7C 06 21 2E */	stwx r0, r6, r4
/* 8038FCB8 0038B918  42 00 FF EC */	bdnz lbl_8038FCA4
lbl_8038FCBC:
/* 8038FCBC 0038B91C  38 00 00 01 */	li r0, 1
/* 8038FCC0 0038B920  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8038FCC4:
/* 8038FCC4 0038B924  90 83 00 00 */	stw r4, 0(r3)
/* 8038FCC8 0038B928  38 60 00 00 */	li r3, 0
/* 8038FCCC 0038B92C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8038FCD0 0038B930  38 05 00 01 */	addi r0, r5, 1
/* 8038FCD4 0038B934  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 8038FCD8 0038B938  4E 80 00 20 */	blr 

.global func_8038FCDC
func_8038FCDC:
/* 8038FCDC 0038B93C  80 83 00 00 */	lwz r4, 0(r3)
/* 8038FCE0 0038B940  38 A0 00 00 */	li r5, 0
/* 8038FCE4 0038B944  2C 04 00 00 */	cmpwi r4, 0
/* 8038FCE8 0038B948  41 82 00 20 */	beq lbl_8038FD08
/* 8038FCEC 0038B94C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8038FCF0 0038B950  2C 05 00 00 */	cmpwi r5, 0
/* 8038FCF4 0038B954  41 82 00 0C */	beq lbl_8038FD00
/* 8038FCF8 0038B958  38 A5 FF FF */	addi r5, r5, -1
/* 8038FCFC 0038B95C  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_8038FD00:
/* 8038FD00 0038B960  38 00 00 00 */	li r0, 0
/* 8038FD04 0038B964  90 03 00 00 */	stw r0, 0(r3)
lbl_8038FD08:
/* 8038FD08 0038B968  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 8038FD0C 0038B96C  4E 80 00 20 */	blr 

.global func_8038FD10
func_8038FD10:
/* 8038FD10 0038B970  80 63 00 00 */	lwz r3, 0(r3)
/* 8038FD14 0038B974  2C 03 00 00 */	cmpwi r3, 0
/* 8038FD18 0038B978  40 82 00 0C */	bne lbl_8038FD24
/* 8038FD1C 0038B97C  38 60 00 00 */	li r3, 0
/* 8038FD20 0038B980  4E 80 00 20 */	blr 
lbl_8038FD24:
/* 8038FD24 0038B984  2C 04 00 00 */	cmpwi r4, 0
/* 8038FD28 0038B988  40 80 00 0C */	bge lbl_8038FD34
/* 8038FD2C 0038B98C  38 60 00 00 */	li r3, 0
/* 8038FD30 0038B990  4E 80 00 20 */	blr 
lbl_8038FD34:
/* 8038FD34 0038B994  1C 04 00 28 */	mulli r0, r4, 0x28
/* 8038FD38 0038B998  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8038FD3C 0038B99C  7C 63 02 14 */	add r3, r3, r0
/* 8038FD40 0038B9A0  4E 80 00 20 */	blr 

.global func_8038FD44
func_8038FD44:
/* 8038FD44 0038B9A4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FD48 0038B9A8  7C 08 02 A6 */	mflr r0
/* 8038FD4C 0038B9AC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FD50 0038B9B0  4B FF FF C1 */	bl func_8038FD10
/* 8038FD54 0038B9B4  2C 03 00 00 */	cmpwi r3, 0
/* 8038FD58 0038B9B8  41 82 00 0C */	beq lbl_8038FD64
/* 8038FD5C 0038B9BC  A0 63 00 00 */	lhz r3, 0(r3)
/* 8038FD60 0038B9C0  48 00 00 08 */	b lbl_8038FD68
lbl_8038FD64:
/* 8038FD64 0038B9C4  38 60 00 00 */	li r3, 0
lbl_8038FD68:
/* 8038FD68 0038B9C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FD6C 0038B9CC  7C 08 03 A6 */	mtlr r0
/* 8038FD70 0038B9D0  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FD74 0038B9D4  4E 80 00 20 */	blr 

.global func_8038FD78
func_8038FD78:
/* 8038FD78 0038B9D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FD7C 0038B9DC  7C 08 02 A6 */	mflr r0
/* 8038FD80 0038B9E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FD84 0038B9E4  4B FF FF 8D */	bl func_8038FD10
/* 8038FD88 0038B9E8  2C 03 00 00 */	cmpwi r3, 0
/* 8038FD8C 0038B9EC  41 82 00 0C */	beq lbl_8038FD98
/* 8038FD90 0038B9F0  88 63 00 08 */	lbz r3, 8(r3)
/* 8038FD94 0038B9F4  48 00 00 08 */	b lbl_8038FD9C
lbl_8038FD98:
/* 8038FD98 0038B9F8  38 60 00 00 */	li r3, 0
lbl_8038FD9C:
/* 8038FD9C 0038B9FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FDA0 0038BA00  7C 08 03 A6 */	mtlr r0
/* 8038FDA4 0038BA04  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FDA8 0038BA08  4E 80 00 20 */	blr 

.global func_8038FDAC
func_8038FDAC:
/* 8038FDAC 0038BA0C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FDB0 0038BA10  7C 08 02 A6 */	mflr r0
/* 8038FDB4 0038BA14  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FDB8 0038BA18  4B FF FF 59 */	bl func_8038FD10
/* 8038FDBC 0038BA1C  2C 03 00 00 */	cmpwi r3, 0
/* 8038FDC0 0038BA20  41 82 00 0C */	beq lbl_8038FDCC
/* 8038FDC4 0038BA24  88 63 00 09 */	lbz r3, 9(r3)
/* 8038FDC8 0038BA28  48 00 00 08 */	b lbl_8038FDD0
lbl_8038FDCC:
/* 8038FDCC 0038BA2C  38 60 00 00 */	li r3, 0
lbl_8038FDD0:
/* 8038FDD0 0038BA30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FDD4 0038BA34  7C 08 03 A6 */	mtlr r0
/* 8038FDD8 0038BA38  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FDDC 0038BA3C  4E 80 00 20 */	blr 

.global func_8038FDE0
func_8038FDE0:
/* 8038FDE0 0038BA40  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FDE4 0038BA44  7C 08 02 A6 */	mflr r0
/* 8038FDE8 0038BA48  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FDEC 0038BA4C  4B FF FF 25 */	bl func_8038FD10
/* 8038FDF0 0038BA50  2C 03 00 00 */	cmpwi r3, 0
/* 8038FDF4 0038BA54  41 82 00 0C */	beq lbl_8038FE00
/* 8038FDF8 0038BA58  88 63 00 0A */	lbz r3, 0xa(r3)
/* 8038FDFC 0038BA5C  48 00 00 08 */	b lbl_8038FE04
lbl_8038FE00:
/* 8038FE00 0038BA60  38 60 00 00 */	li r3, 0
lbl_8038FE04:
/* 8038FE04 0038BA64  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FE08 0038BA68  7C 08 03 A6 */	mtlr r0
/* 8038FE0C 0038BA6C  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FE10 0038BA70  4E 80 00 20 */	blr 

.global func_8038FE14
func_8038FE14:
/* 8038FE14 0038BA74  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FE18 0038BA78  7C 08 02 A6 */	mflr r0
/* 8038FE1C 0038BA7C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FE20 0038BA80  4B FF FE F1 */	bl func_8038FD10
/* 8038FE24 0038BA84  2C 03 00 00 */	cmpwi r3, 0
/* 8038FE28 0038BA88  41 82 00 0C */	beq lbl_8038FE34
/* 8038FE2C 0038BA8C  88 63 00 0B */	lbz r3, 0xb(r3)
/* 8038FE30 0038BA90  48 00 00 08 */	b lbl_8038FE38
lbl_8038FE34:
/* 8038FE34 0038BA94  38 60 00 00 */	li r3, 0
lbl_8038FE38:
/* 8038FE38 0038BA98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FE3C 0038BA9C  7C 08 03 A6 */	mtlr r0
/* 8038FE40 0038BAA0  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FE44 0038BAA4  4E 80 00 20 */	blr 

.global func_8038FE48
func_8038FE48:
/* 8038FE48 0038BAA8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FE4C 0038BAAC  7C 08 02 A6 */	mflr r0
/* 8038FE50 0038BAB0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FE54 0038BAB4  4B FF FE BD */	bl func_8038FD10
/* 8038FE58 0038BAB8  2C 03 00 00 */	cmpwi r3, 0
/* 8038FE5C 0038BABC  41 82 00 0C */	beq lbl_8038FE68
/* 8038FE60 0038BAC0  88 63 00 0C */	lbz r3, 0xc(r3)
/* 8038FE64 0038BAC4  48 00 00 08 */	b lbl_8038FE6C
lbl_8038FE68:
/* 8038FE68 0038BAC8  38 60 00 00 */	li r3, 0
lbl_8038FE6C:
/* 8038FE6C 0038BACC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FE70 0038BAD0  7C 08 03 A6 */	mtlr r0
/* 8038FE74 0038BAD4  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FE78 0038BAD8  4E 80 00 20 */	blr 

.global func_8038FE7C
func_8038FE7C:
/* 8038FE7C 0038BADC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FE80 0038BAE0  7C 08 02 A6 */	mflr r0
/* 8038FE84 0038BAE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FE88 0038BAE8  4B FF FE 89 */	bl func_8038FD10
/* 8038FE8C 0038BAEC  2C 03 00 00 */	cmpwi r3, 0
/* 8038FE90 0038BAF0  41 82 00 0C */	beq lbl_8038FE9C
/* 8038FE94 0038BAF4  88 63 00 0D */	lbz r3, 0xd(r3)
/* 8038FE98 0038BAF8  48 00 00 08 */	b lbl_8038FEA0
lbl_8038FE9C:
/* 8038FE9C 0038BAFC  38 60 00 00 */	li r3, 0
lbl_8038FEA0:
/* 8038FEA0 0038BB00  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FEA4 0038BB04  7C 08 03 A6 */	mtlr r0
/* 8038FEA8 0038BB08  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FEAC 0038BB0C  4E 80 00 20 */	blr 

.global func_8038FEB0
func_8038FEB0:
/* 8038FEB0 0038BB10  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FEB4 0038BB14  7C 08 02 A6 */	mflr r0
/* 8038FEB8 0038BB18  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FEBC 0038BB1C  4B FF FE 55 */	bl func_8038FD10
/* 8038FEC0 0038BB20  2C 03 00 00 */	cmpwi r3, 0
/* 8038FEC4 0038BB24  41 82 00 10 */	beq lbl_8038FED4
/* 8038FEC8 0038BB28  A0 03 00 0E */	lhz r0, 0xe(r3)
/* 8038FECC 0038BB2C  54 03 AE FE */	rlwinm r3, r0, 0x15, 0x1b, 0x1f
/* 8038FED0 0038BB30  48 00 00 08 */	b lbl_8038FED8
lbl_8038FED4:
/* 8038FED4 0038BB34  38 60 00 00 */	li r3, 0
lbl_8038FED8:
/* 8038FED8 0038BB38  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FEDC 0038BB3C  7C 08 03 A6 */	mtlr r0
/* 8038FEE0 0038BB40  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FEE4 0038BB44  4E 80 00 20 */	blr 

.global func_8038FEE8
func_8038FEE8:
/* 8038FEE8 0038BB48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FEEC 0038BB4C  7C 08 02 A6 */	mflr r0
/* 8038FEF0 0038BB50  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FEF4 0038BB54  4B FF FE 1D */	bl func_8038FD10
/* 8038FEF8 0038BB58  2C 03 00 00 */	cmpwi r3, 0
/* 8038FEFC 0038BB5C  41 82 00 10 */	beq lbl_8038FF0C
/* 8038FF00 0038BB60  A0 03 00 0E */	lhz r0, 0xe(r3)
/* 8038FF04 0038BB64  54 03 B7 FE */	rlwinm r3, r0, 0x16, 0x1f, 0x1f
/* 8038FF08 0038BB68  48 00 00 08 */	b lbl_8038FF10
lbl_8038FF0C:
/* 8038FF0C 0038BB6C  38 60 00 00 */	li r3, 0
lbl_8038FF10:
/* 8038FF10 0038BB70  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FF14 0038BB74  7C 08 03 A6 */	mtlr r0
/* 8038FF18 0038BB78  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FF1C 0038BB7C  4E 80 00 20 */	blr 

.global func_8038FF20
func_8038FF20:
/* 8038FF20 0038BB80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FF24 0038BB84  7C 08 02 A6 */	mflr r0
/* 8038FF28 0038BB88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FF2C 0038BB8C  4B FF FD E5 */	bl func_8038FD10
/* 8038FF30 0038BB90  2C 03 00 00 */	cmpwi r3, 0
/* 8038FF34 0038BB94  41 82 00 10 */	beq lbl_8038FF44
/* 8038FF38 0038BB98  A0 03 00 0E */	lhz r0, 0xe(r3)
/* 8038FF3C 0038BB9C  54 03 BF FE */	rlwinm r3, r0, 0x17, 0x1f, 0x1f
/* 8038FF40 0038BBA0  48 00 00 08 */	b lbl_8038FF48
lbl_8038FF44:
/* 8038FF44 0038BBA4  38 60 00 00 */	li r3, 0
lbl_8038FF48:
/* 8038FF48 0038BBA8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FF4C 0038BBAC  7C 08 03 A6 */	mtlr r0
/* 8038FF50 0038BBB0  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FF54 0038BBB4  4E 80 00 20 */	blr 

.global func_8038FF58
func_8038FF58:
/* 8038FF58 0038BBB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FF5C 0038BBBC  7C 08 02 A6 */	mflr r0
/* 8038FF60 0038BBC0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FF64 0038BBC4  4B FF FD AD */	bl func_8038FD10
/* 8038FF68 0038BBC8  2C 03 00 00 */	cmpwi r3, 0
/* 8038FF6C 0038BBCC  41 82 00 10 */	beq lbl_8038FF7C
/* 8038FF70 0038BBD0  A0 03 00 0E */	lhz r0, 0xe(r3)
/* 8038FF74 0038BBD4  54 03 DF 3E */	rlwinm r3, r0, 0x1b, 0x1c, 0x1f
/* 8038FF78 0038BBD8  48 00 00 08 */	b lbl_8038FF80
lbl_8038FF7C:
/* 8038FF7C 0038BBDC  38 60 00 00 */	li r3, 0
lbl_8038FF80:
/* 8038FF80 0038BBE0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FF84 0038BBE4  7C 08 03 A6 */	mtlr r0
/* 8038FF88 0038BBE8  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FF8C 0038BBEC  4E 80 00 20 */	blr 

.global func_8038FF90
func_8038FF90:
/* 8038FF90 0038BBF0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FF94 0038BBF4  7C 08 02 A6 */	mflr r0
/* 8038FF98 0038BBF8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FF9C 0038BBFC  4B FF FD 75 */	bl func_8038FD10
/* 8038FFA0 0038BC00  2C 03 00 00 */	cmpwi r3, 0
/* 8038FFA4 0038BC04  41 82 00 10 */	beq lbl_8038FFB4
/* 8038FFA8 0038BC08  A0 03 00 0E */	lhz r0, 0xe(r3)
/* 8038FFAC 0038BC0C  54 03 06 FE */	clrlwi r3, r0, 0x1b
/* 8038FFB0 0038BC10  48 00 00 08 */	b lbl_8038FFB8
lbl_8038FFB4:
/* 8038FFB4 0038BC14  38 60 00 00 */	li r3, 0
lbl_8038FFB8:
/* 8038FFB8 0038BC18  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FFBC 0038BC1C  7C 08 03 A6 */	mtlr r0
/* 8038FFC0 0038BC20  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FFC4 0038BC24  4E 80 00 20 */	blr 

.global func_8038FFC8
func_8038FFC8:
/* 8038FFC8 0038BC28  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038FFCC 0038BC2C  7C 08 02 A6 */	mflr r0
/* 8038FFD0 0038BC30  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FFD4 0038BC34  4B FF FD 3D */	bl func_8038FD10
/* 8038FFD8 0038BC38  2C 03 00 00 */	cmpwi r3, 0
/* 8038FFDC 0038BC3C  41 82 00 0C */	beq lbl_8038FFE8
/* 8038FFE0 0038BC40  88 63 00 10 */	lbz r3, 0x10(r3)
/* 8038FFE4 0038BC44  48 00 00 08 */	b lbl_8038FFEC
lbl_8038FFE8:
/* 8038FFE8 0038BC48  38 60 00 00 */	li r3, 0
lbl_8038FFEC:
/* 8038FFEC 0038BC4C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FFF0 0038BC50  7C 08 03 A6 */	mtlr r0
/* 8038FFF4 0038BC54  38 21 00 10 */	addi r1, r1, 0x10
/* 8038FFF8 0038BC58  4E 80 00 20 */	blr 

.global func_8038FFFC
func_8038FFFC:
/* 8038FFFC 0038BC5C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390000 0038BC60  7C 08 02 A6 */	mflr r0
/* 80390004 0038BC64  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390008 0038BC68  4B FF FD 09 */	bl func_8038FD10
/* 8039000C 0038BC6C  2C 03 00 00 */	cmpwi r3, 0
/* 80390010 0038BC70  41 82 00 0C */	beq lbl_8039001C
/* 80390014 0038BC74  88 63 00 11 */	lbz r3, 0x11(r3)
/* 80390018 0038BC78  48 00 00 08 */	b lbl_80390020
lbl_8039001C:
/* 8039001C 0038BC7C  38 60 00 00 */	li r3, 0
lbl_80390020:
/* 80390020 0038BC80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390024 0038BC84  7C 08 03 A6 */	mtlr r0
/* 80390028 0038BC88  38 21 00 10 */	addi r1, r1, 0x10
/* 8039002C 0038BC8C  4E 80 00 20 */	blr 

.global func_80390030
func_80390030:
/* 80390030 0038BC90  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390034 0038BC94  7C 08 02 A6 */	mflr r0
/* 80390038 0038BC98  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039003C 0038BC9C  4B FF FC D5 */	bl func_8038FD10
/* 80390040 0038BCA0  2C 03 00 00 */	cmpwi r3, 0
/* 80390044 0038BCA4  41 82 00 0C */	beq lbl_80390050
/* 80390048 0038BCA8  88 63 00 12 */	lbz r3, 0x12(r3)
/* 8039004C 0038BCAC  48 00 00 08 */	b lbl_80390054
lbl_80390050:
/* 80390050 0038BCB0  38 60 00 00 */	li r3, 0
lbl_80390054:
/* 80390054 0038BCB4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390058 0038BCB8  7C 08 03 A6 */	mtlr r0
/* 8039005C 0038BCBC  38 21 00 10 */	addi r1, r1, 0x10
/* 80390060 0038BCC0  4E 80 00 20 */	blr 

.global func_80390064
func_80390064:
/* 80390064 0038BCC4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390068 0038BCC8  7C 08 02 A6 */	mflr r0
/* 8039006C 0038BCCC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390070 0038BCD0  4B FF FC A1 */	bl func_8038FD10
/* 80390074 0038BCD4  2C 03 00 00 */	cmpwi r3, 0
/* 80390078 0038BCD8  41 82 00 0C */	beq lbl_80390084
/* 8039007C 0038BCDC  88 63 00 13 */	lbz r3, 0x13(r3)
/* 80390080 0038BCE0  48 00 00 08 */	b lbl_80390088
lbl_80390084:
/* 80390084 0038BCE4  38 60 00 00 */	li r3, 0
lbl_80390088:
/* 80390088 0038BCE8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039008C 0038BCEC  7C 08 03 A6 */	mtlr r0
/* 80390090 0038BCF0  38 21 00 10 */	addi r1, r1, 0x10
/* 80390094 0038BCF4  4E 80 00 20 */	blr 

.global func_80390098
func_80390098:
/* 80390098 0038BCF8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039009C 0038BCFC  7C 08 02 A6 */	mflr r0
/* 803900A0 0038BD00  90 01 00 14 */	stw r0, 0x14(r1)
/* 803900A4 0038BD04  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803900A8 0038BD08  7C BF 2B 78 */	mr r31, r5
/* 803900AC 0038BD0C  4B FF FC 65 */	bl func_8038FD10
/* 803900B0 0038BD10  2C 03 00 00 */	cmpwi r3, 0
/* 803900B4 0038BD14  40 82 00 0C */	bne lbl_803900C0
/* 803900B8 0038BD18  38 60 00 00 */	li r3, 0
/* 803900BC 0038BD1C  48 00 00 1C */	b lbl_803900D8
lbl_803900C0:
/* 803900C0 0038BD20  28 1F 00 14 */	cmplwi r31, 0x14
/* 803900C4 0038BD24  41 80 00 0C */	blt lbl_803900D0
/* 803900C8 0038BD28  38 60 00 00 */	li r3, 0
/* 803900CC 0038BD2C  48 00 00 0C */	b lbl_803900D8
lbl_803900D0:
/* 803900D0 0038BD30  7C 63 FA 14 */	add r3, r3, r31
/* 803900D4 0038BD34  88 63 00 14 */	lbz r3, 0x14(r3)
lbl_803900D8:
/* 803900D8 0038BD38  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803900DC 0038BD3C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803900E0 0038BD40  7C 08 03 A6 */	mtlr r0
/* 803900E4 0038BD44  38 21 00 10 */	addi r1, r1, 0x10
/* 803900E8 0038BD48  4E 80 00 20 */	blr 

.global func_803900EC
func_803900EC:
/* 803900EC 0038BD4C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803900F0 0038BD50  7C 08 02 A6 */	mflr r0
/* 803900F4 0038BD54  90 01 00 14 */	stw r0, 0x14(r1)
/* 803900F8 0038BD58  4B FF FC 19 */	bl func_8038FD10
/* 803900FC 0038BD5C  2C 03 00 00 */	cmpwi r3, 0
/* 80390100 0038BD60  41 82 00 0C */	beq lbl_8039010C
/* 80390104 0038BD64  A0 63 00 02 */	lhz r3, 2(r3)
/* 80390108 0038BD68  48 00 00 08 */	b lbl_80390110
lbl_8039010C:
/* 8039010C 0038BD6C  38 60 00 00 */	li r3, 0
lbl_80390110:
/* 80390110 0038BD70  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390114 0038BD74  7C 08 03 A6 */	mtlr r0
/* 80390118 0038BD78  38 21 00 10 */	addi r1, r1, 0x10
/* 8039011C 0038BD7C  4E 80 00 20 */	blr 

.global func_80390120
func_80390120:
/* 80390120 0038BD80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390124 0038BD84  7C 08 02 A6 */	mflr r0
/* 80390128 0038BD88  2C 04 00 00 */	cmpwi r4, 0
/* 8039012C 0038BD8C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390130 0038BD90  38 00 00 00 */	li r0, 0
/* 80390134 0038BD94  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390138 0038BD98  7C 7F 1B 78 */	mr r31, r3
/* 8039013C 0038BD9C  90 03 00 00 */	stw r0, 0(r3)
/* 80390140 0038BDA0  41 82 00 08 */	beq lbl_80390148
/* 80390144 0038BDA4  48 00 00 7D */	bl func_803901C0
lbl_80390148:
/* 80390148 0038BDA8  7F E3 FB 78 */	mr r3, r31
/* 8039014C 0038BDAC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390150 0038BDB0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390154 0038BDB4  7C 08 03 A6 */	mtlr r0
/* 80390158 0038BDB8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039015C 0038BDBC  4E 80 00 20 */	blr 

.global func_80390160
func_80390160:
/* 80390160 0038BDC0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390164 0038BDC4  7C 08 02 A6 */	mflr r0
/* 80390168 0038BDC8  2C 03 00 00 */	cmpwi r3, 0
/* 8039016C 0038BDCC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390170 0038BDD0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390174 0038BDD4  7C 9F 23 78 */	mr r31, r4
/* 80390178 0038BDD8  93 C1 00 08 */	stw r30, 8(r1)
/* 8039017C 0038BDDC  7C 7E 1B 78 */	mr r30, r3
/* 80390180 0038BDE0  41 82 00 24 */	beq lbl_803901A4
/* 80390184 0038BDE4  80 03 00 00 */	lwz r0, 0(r3)
/* 80390188 0038BDE8  2C 00 00 00 */	cmpwi r0, 0
/* 8039018C 0038BDEC  41 82 00 08 */	beq lbl_80390194
/* 80390190 0038BDF0  48 00 01 95 */	bl func_80390324
lbl_80390194:
/* 80390194 0038BDF4  2C 1F 00 00 */	cmpwi r31, 0
/* 80390198 0038BDF8  40 81 00 0C */	ble lbl_803901A4
/* 8039019C 0038BDFC  7F C3 F3 78 */	mr r3, r30
/* 803901A0 0038BE00  4B E4 A9 19 */	bl __dl__FPv
lbl_803901A4:
/* 803901A4 0038BE04  7F C3 F3 78 */	mr r3, r30
/* 803901A8 0038BE08  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803901AC 0038BE0C  83 C1 00 08 */	lwz r30, 8(r1)
/* 803901B0 0038BE10  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803901B4 0038BE14  7C 08 03 A6 */	mtlr r0
/* 803901B8 0038BE18  38 21 00 10 */	addi r1, r1, 0x10
/* 803901BC 0038BE1C  4E 80 00 20 */	blr 

.global func_803901C0
func_803901C0:
/* 803901C0 0038BE20  2C 04 00 00 */	cmpwi r4, 0
/* 803901C4 0038BE24  40 82 00 0C */	bne lbl_803901D0
/* 803901C8 0038BE28  38 60 FF FF */	li r3, -1
/* 803901CC 0038BE2C  4E 80 00 20 */	blr 
lbl_803901D0:
/* 803901D0 0038BE30  80 03 00 00 */	lwz r0, 0(r3)
/* 803901D4 0038BE34  2C 00 00 00 */	cmpwi r0, 0
/* 803901D8 0038BE38  41 82 00 0C */	beq lbl_803901E4
/* 803901DC 0038BE3C  38 60 FF FE */	li r3, -2
/* 803901E0 0038BE40  4E 80 00 20 */	blr 
lbl_803901E4:
/* 803901E4 0038BE44  80 04 00 04 */	lwz r0, 4(r4)
/* 803901E8 0038BE48  28 00 00 04 */	cmplwi r0, 4
/* 803901EC 0038BE4C  41 82 00 0C */	beq lbl_803901F8
/* 803901F0 0038BE50  38 60 FF FD */	li r3, -3
/* 803901F4 0038BE54  4E 80 00 20 */	blr 
lbl_803901F8:
/* 803901F8 0038BE58  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803901FC 0038BE5C  2C 00 00 00 */	cmpwi r0, 0
/* 80390200 0038BE60  40 82 01 0C */	bne lbl_8039030C
/* 80390204 0038BE64  80 04 00 08 */	lwz r0, 8(r4)
/* 80390208 0038BE68  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039020C 0038BE6C  7C E0 22 14 */	add r7, r0, r4
/* 80390210 0038BE70  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80390214 0038BE74  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80390218 0038BE78  7C C6 22 14 */	add r6, r6, r4
/* 8039021C 0038BE7C  7C A5 22 14 */	add r5, r5, r4
/* 80390220 0038BE80  90 E4 00 08 */	stw r7, 8(r4)
/* 80390224 0038BE84  2C 00 00 00 */	cmpwi r0, 0
/* 80390228 0038BE88  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8039022C 0038BE8C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80390230 0038BE90  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80390234 0038BE94  41 82 00 0C */	beq lbl_80390240
/* 80390238 0038BE98  7C 00 22 14 */	add r0, r0, r4
/* 8039023C 0038BE9C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80390240:
/* 80390240 0038BEA0  2C 07 00 00 */	cmpwi r7, 0
/* 80390244 0038BEA4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80390248 0038BEA8  41 82 00 BC */	beq lbl_80390304
/* 8039024C 0038BEAC  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80390250 0038BEB0  7C 09 03 A6 */	mtctr r0
/* 80390254 0038BEB4  41 82 00 94 */	beq lbl_803902E8
lbl_80390258:
/* 80390258 0038BEB8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039025C 0038BEBC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390260 0038BEC0  7C 00 22 14 */	add r0, r0, r4
/* 80390264 0038BEC4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390268 0038BEC8  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039026C 0038BECC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390270 0038BED0  7C 00 22 14 */	add r0, r0, r4
/* 80390274 0038BED4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390278 0038BED8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039027C 0038BEDC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390280 0038BEE0  7C 00 22 14 */	add r0, r0, r4
/* 80390284 0038BEE4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390288 0038BEE8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039028C 0038BEEC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390290 0038BEF0  7C 00 22 14 */	add r0, r0, r4
/* 80390294 0038BEF4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390298 0038BEF8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039029C 0038BEFC  7C 06 20 2E */	lwzx r0, r6, r4
/* 803902A0 0038BF00  7C 00 22 14 */	add r0, r0, r4
/* 803902A4 0038BF04  7C 06 21 2E */	stwx r0, r6, r4
/* 803902A8 0038BF08  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803902AC 0038BF0C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803902B0 0038BF10  7C 00 22 14 */	add r0, r0, r4
/* 803902B4 0038BF14  7C 06 21 2E */	stwx r0, r6, r4
/* 803902B8 0038BF18  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803902BC 0038BF1C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803902C0 0038BF20  7C 00 22 14 */	add r0, r0, r4
/* 803902C4 0038BF24  7C 06 21 2E */	stwx r0, r6, r4
/* 803902C8 0038BF28  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803902CC 0038BF2C  38 A5 00 20 */	addi r5, r5, 0x20
/* 803902D0 0038BF30  7C 06 20 2E */	lwzx r0, r6, r4
/* 803902D4 0038BF34  7C 00 22 14 */	add r0, r0, r4
/* 803902D8 0038BF38  7C 06 21 2E */	stwx r0, r6, r4
/* 803902DC 0038BF3C  42 00 FF 7C */	bdnz lbl_80390258
/* 803902E0 0038BF40  70 E7 00 07 */	andi. r7, r7, 7
/* 803902E4 0038BF44  41 82 00 20 */	beq lbl_80390304
lbl_803902E8:
/* 803902E8 0038BF48  7C E9 03 A6 */	mtctr r7
lbl_803902EC:
/* 803902EC 0038BF4C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803902F0 0038BF50  38 A5 00 04 */	addi r5, r5, 4
/* 803902F4 0038BF54  7C 06 20 2E */	lwzx r0, r6, r4
/* 803902F8 0038BF58  7C 00 22 14 */	add r0, r0, r4
/* 803902FC 0038BF5C  7C 06 21 2E */	stwx r0, r6, r4
/* 80390300 0038BF60  42 00 FF EC */	bdnz lbl_803902EC
lbl_80390304:
/* 80390304 0038BF64  38 00 00 01 */	li r0, 1
/* 80390308 0038BF68  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039030C:
/* 8039030C 0038BF6C  90 83 00 00 */	stw r4, 0(r3)
/* 80390310 0038BF70  38 60 00 00 */	li r3, 0
/* 80390314 0038BF74  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80390318 0038BF78  38 05 00 01 */	addi r0, r5, 1
/* 8039031C 0038BF7C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80390320 0038BF80  4E 80 00 20 */	blr 

.global func_80390324
func_80390324:
/* 80390324 0038BF84  80 83 00 00 */	lwz r4, 0(r3)
/* 80390328 0038BF88  38 A0 00 00 */	li r5, 0
/* 8039032C 0038BF8C  2C 04 00 00 */	cmpwi r4, 0
/* 80390330 0038BF90  41 82 00 20 */	beq lbl_80390350
/* 80390334 0038BF94  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80390338 0038BF98  2C 05 00 00 */	cmpwi r5, 0
/* 8039033C 0038BF9C  41 82 00 0C */	beq lbl_80390348
/* 80390340 0038BFA0  38 A5 FF FF */	addi r5, r5, -1
/* 80390344 0038BFA4  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80390348:
/* 80390348 0038BFA8  38 00 00 00 */	li r0, 0
/* 8039034C 0038BFAC  90 03 00 00 */	stw r0, 0(r3)
lbl_80390350:
/* 80390350 0038BFB0  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80390354 0038BFB4  4E 80 00 20 */	blr 

.global func_80390358
func_80390358:
/* 80390358 0038BFB8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039035C 0038BFBC  2C 03 00 00 */	cmpwi r3, 0
/* 80390360 0038BFC0  40 82 00 0C */	bne lbl_8039036C
/* 80390364 0038BFC4  38 60 00 00 */	li r3, 0
/* 80390368 0038BFC8  4E 80 00 20 */	blr 
lbl_8039036C:
/* 8039036C 0038BFCC  2C 04 00 00 */	cmpwi r4, 0
/* 80390370 0038BFD0  40 80 00 0C */	bge lbl_8039037C
/* 80390374 0038BFD4  38 60 00 00 */	li r3, 0
/* 80390378 0038BFD8  4E 80 00 20 */	blr 
lbl_8039037C:
/* 8039037C 0038BFDC  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80390380 0038BFE0  54 80 10 3A */	slwi r0, r4, 2
/* 80390384 0038BFE4  7C 63 02 14 */	add r3, r3, r0
/* 80390388 0038BFE8  4E 80 00 20 */	blr 

.global func_8039038C
func_8039038C:
/* 8039038C 0038BFEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390390 0038BFF0  7C 08 02 A6 */	mflr r0
/* 80390394 0038BFF4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390398 0038BFF8  4B FF FF C1 */	bl func_80390358
/* 8039039C 0038BFFC  2C 03 00 00 */	cmpwi r3, 0
/* 803903A0 0038C000  41 82 00 0C */	beq lbl_803903AC
/* 803903A4 0038C004  A0 63 00 00 */	lhz r3, 0(r3)
/* 803903A8 0038C008  48 00 00 08 */	b lbl_803903B0
lbl_803903AC:
/* 803903AC 0038C00C  38 60 00 00 */	li r3, 0
lbl_803903B0:
/* 803903B0 0038C010  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803903B4 0038C014  7C 08 03 A6 */	mtlr r0
/* 803903B8 0038C018  38 21 00 10 */	addi r1, r1, 0x10
/* 803903BC 0038C01C  4E 80 00 20 */	blr 

.global func_803903C0
func_803903C0:
/* 803903C0 0038C020  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803903C4 0038C024  7C 08 02 A6 */	mflr r0
/* 803903C8 0038C028  90 01 00 14 */	stw r0, 0x14(r1)
/* 803903CC 0038C02C  4B FF FF 8D */	bl func_80390358
/* 803903D0 0038C030  2C 03 00 00 */	cmpwi r3, 0
/* 803903D4 0038C034  41 82 00 0C */	beq lbl_803903E0
/* 803903D8 0038C038  A0 63 00 02 */	lhz r3, 2(r3)
/* 803903DC 0038C03C  48 00 00 08 */	b lbl_803903E4
lbl_803903E0:
/* 803903E0 0038C040  38 60 00 00 */	li r3, 0
lbl_803903E4:
/* 803903E4 0038C044  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803903E8 0038C048  7C 08 03 A6 */	mtlr r0
/* 803903EC 0038C04C  38 21 00 10 */	addi r1, r1, 0x10
/* 803903F0 0038C050  4E 80 00 20 */	blr 

.global func_803903F4
func_803903F4:
/* 803903F4 0038C054  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803903F8 0038C058  7C 08 02 A6 */	mflr r0
/* 803903FC 0038C05C  2C 04 00 00 */	cmpwi r4, 0
/* 80390400 0038C060  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390404 0038C064  38 00 00 00 */	li r0, 0
/* 80390408 0038C068  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039040C 0038C06C  7C 7F 1B 78 */	mr r31, r3
/* 80390410 0038C070  90 03 00 00 */	stw r0, 0(r3)
/* 80390414 0038C074  41 82 00 08 */	beq lbl_8039041C
/* 80390418 0038C078  48 00 00 7D */	bl func_80390494
lbl_8039041C:
/* 8039041C 0038C07C  7F E3 FB 78 */	mr r3, r31
/* 80390420 0038C080  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390424 0038C084  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390428 0038C088  7C 08 03 A6 */	mtlr r0
/* 8039042C 0038C08C  38 21 00 10 */	addi r1, r1, 0x10
/* 80390430 0038C090  4E 80 00 20 */	blr 

.global func_80390434
func_80390434:
/* 80390434 0038C094  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390438 0038C098  7C 08 02 A6 */	mflr r0
/* 8039043C 0038C09C  2C 03 00 00 */	cmpwi r3, 0
/* 80390440 0038C0A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390444 0038C0A4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390448 0038C0A8  7C 9F 23 78 */	mr r31, r4
/* 8039044C 0038C0AC  93 C1 00 08 */	stw r30, 8(r1)
/* 80390450 0038C0B0  7C 7E 1B 78 */	mr r30, r3
/* 80390454 0038C0B4  41 82 00 24 */	beq lbl_80390478
/* 80390458 0038C0B8  80 03 00 00 */	lwz r0, 0(r3)
/* 8039045C 0038C0BC  2C 00 00 00 */	cmpwi r0, 0
/* 80390460 0038C0C0  41 82 00 08 */	beq lbl_80390468
/* 80390464 0038C0C4  48 00 01 95 */	bl func_803905F8
lbl_80390468:
/* 80390468 0038C0C8  2C 1F 00 00 */	cmpwi r31, 0
/* 8039046C 0038C0CC  40 81 00 0C */	ble lbl_80390478
/* 80390470 0038C0D0  7F C3 F3 78 */	mr r3, r30
/* 80390474 0038C0D4  4B E4 A6 45 */	bl __dl__FPv
lbl_80390478:
/* 80390478 0038C0D8  7F C3 F3 78 */	mr r3, r30
/* 8039047C 0038C0DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390480 0038C0E0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80390484 0038C0E4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390488 0038C0E8  7C 08 03 A6 */	mtlr r0
/* 8039048C 0038C0EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80390490 0038C0F0  4E 80 00 20 */	blr 

.global func_80390494
func_80390494:
/* 80390494 0038C0F4  2C 04 00 00 */	cmpwi r4, 0
/* 80390498 0038C0F8  40 82 00 0C */	bne lbl_803904A4
/* 8039049C 0038C0FC  38 60 FF FF */	li r3, -1
/* 803904A0 0038C100  4E 80 00 20 */	blr 
lbl_803904A4:
/* 803904A4 0038C104  80 03 00 00 */	lwz r0, 0(r3)
/* 803904A8 0038C108  2C 00 00 00 */	cmpwi r0, 0
/* 803904AC 0038C10C  41 82 00 0C */	beq lbl_803904B8
/* 803904B0 0038C110  38 60 FF FE */	li r3, -2
/* 803904B4 0038C114  4E 80 00 20 */	blr 
lbl_803904B8:
/* 803904B8 0038C118  80 04 00 04 */	lwz r0, 4(r4)
/* 803904BC 0038C11C  28 00 00 12 */	cmplwi r0, 0x12
/* 803904C0 0038C120  41 82 00 0C */	beq lbl_803904CC
/* 803904C4 0038C124  38 60 FF FD */	li r3, -3
/* 803904C8 0038C128  4E 80 00 20 */	blr 
lbl_803904CC:
/* 803904CC 0038C12C  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803904D0 0038C130  2C 00 00 00 */	cmpwi r0, 0
/* 803904D4 0038C134  40 82 01 0C */	bne lbl_803905E0
/* 803904D8 0038C138  80 04 00 08 */	lwz r0, 8(r4)
/* 803904DC 0038C13C  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803904E0 0038C140  7C E0 22 14 */	add r7, r0, r4
/* 803904E4 0038C144  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803904E8 0038C148  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803904EC 0038C14C  7C C6 22 14 */	add r6, r6, r4
/* 803904F0 0038C150  7C A5 22 14 */	add r5, r5, r4
/* 803904F4 0038C154  90 E4 00 08 */	stw r7, 8(r4)
/* 803904F8 0038C158  2C 00 00 00 */	cmpwi r0, 0
/* 803904FC 0038C15C  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80390500 0038C160  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80390504 0038C164  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80390508 0038C168  41 82 00 0C */	beq lbl_80390514
/* 8039050C 0038C16C  7C 00 22 14 */	add r0, r0, r4
/* 80390510 0038C170  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80390514:
/* 80390514 0038C174  2C 07 00 00 */	cmpwi r7, 0
/* 80390518 0038C178  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039051C 0038C17C  41 82 00 BC */	beq lbl_803905D8
/* 80390520 0038C180  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80390524 0038C184  7C 09 03 A6 */	mtctr r0
/* 80390528 0038C188  41 82 00 94 */	beq lbl_803905BC
lbl_8039052C:
/* 8039052C 0038C18C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80390530 0038C190  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390534 0038C194  7C 00 22 14 */	add r0, r0, r4
/* 80390538 0038C198  7C 06 21 2E */	stwx r0, r6, r4
/* 8039053C 0038C19C  80 C5 00 04 */	lwz r6, 4(r5)
/* 80390540 0038C1A0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390544 0038C1A4  7C 00 22 14 */	add r0, r0, r4
/* 80390548 0038C1A8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039054C 0038C1AC  80 C5 00 08 */	lwz r6, 8(r5)
/* 80390550 0038C1B0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390554 0038C1B4  7C 00 22 14 */	add r0, r0, r4
/* 80390558 0038C1B8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039055C 0038C1BC  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80390560 0038C1C0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390564 0038C1C4  7C 00 22 14 */	add r0, r0, r4
/* 80390568 0038C1C8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039056C 0038C1CC  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80390570 0038C1D0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390574 0038C1D4  7C 00 22 14 */	add r0, r0, r4
/* 80390578 0038C1D8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039057C 0038C1DC  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80390580 0038C1E0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390584 0038C1E4  7C 00 22 14 */	add r0, r0, r4
/* 80390588 0038C1E8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039058C 0038C1EC  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80390590 0038C1F0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390594 0038C1F4  7C 00 22 14 */	add r0, r0, r4
/* 80390598 0038C1F8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039059C 0038C1FC  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803905A0 0038C200  38 A5 00 20 */	addi r5, r5, 0x20
/* 803905A4 0038C204  7C 06 20 2E */	lwzx r0, r6, r4
/* 803905A8 0038C208  7C 00 22 14 */	add r0, r0, r4
/* 803905AC 0038C20C  7C 06 21 2E */	stwx r0, r6, r4
/* 803905B0 0038C210  42 00 FF 7C */	bdnz lbl_8039052C
/* 803905B4 0038C214  70 E7 00 07 */	andi. r7, r7, 7
/* 803905B8 0038C218  41 82 00 20 */	beq lbl_803905D8
lbl_803905BC:
/* 803905BC 0038C21C  7C E9 03 A6 */	mtctr r7
lbl_803905C0:
/* 803905C0 0038C220  80 C5 00 00 */	lwz r6, 0(r5)
/* 803905C4 0038C224  38 A5 00 04 */	addi r5, r5, 4
/* 803905C8 0038C228  7C 06 20 2E */	lwzx r0, r6, r4
/* 803905CC 0038C22C  7C 00 22 14 */	add r0, r0, r4
/* 803905D0 0038C230  7C 06 21 2E */	stwx r0, r6, r4
/* 803905D4 0038C234  42 00 FF EC */	bdnz lbl_803905C0
lbl_803905D8:
/* 803905D8 0038C238  38 00 00 01 */	li r0, 1
/* 803905DC 0038C23C  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803905E0:
/* 803905E0 0038C240  90 83 00 00 */	stw r4, 0(r3)
/* 803905E4 0038C244  38 60 00 00 */	li r3, 0
/* 803905E8 0038C248  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803905EC 0038C24C  38 05 00 01 */	addi r0, r5, 1
/* 803905F0 0038C250  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803905F4 0038C254  4E 80 00 20 */	blr 

.global func_803905F8
func_803905F8:
/* 803905F8 0038C258  80 83 00 00 */	lwz r4, 0(r3)
/* 803905FC 0038C25C  38 A0 00 00 */	li r5, 0
/* 80390600 0038C260  2C 04 00 00 */	cmpwi r4, 0
/* 80390604 0038C264  41 82 00 20 */	beq lbl_80390624
/* 80390608 0038C268  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8039060C 0038C26C  2C 05 00 00 */	cmpwi r5, 0
/* 80390610 0038C270  41 82 00 0C */	beq lbl_8039061C
/* 80390614 0038C274  38 A5 FF FF */	addi r5, r5, -1
/* 80390618 0038C278  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_8039061C:
/* 8039061C 0038C27C  38 00 00 00 */	li r0, 0
/* 80390620 0038C280  90 03 00 00 */	stw r0, 0(r3)
lbl_80390624:
/* 80390624 0038C284  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80390628 0038C288  4E 80 00 20 */	blr 

.global func_8039062C
func_8039062C:
/* 8039062C 0038C28C  80 63 00 00 */	lwz r3, 0(r3)
/* 80390630 0038C290  2C 03 00 00 */	cmpwi r3, 0
/* 80390634 0038C294  40 82 00 0C */	bne lbl_80390640
/* 80390638 0038C298  38 60 00 00 */	li r3, 0
/* 8039063C 0038C29C  4E 80 00 20 */	blr 
lbl_80390640:
/* 80390640 0038C2A0  2C 04 00 00 */	cmpwi r4, 0
/* 80390644 0038C2A4  40 80 00 0C */	bge lbl_80390650
/* 80390648 0038C2A8  38 60 00 00 */	li r3, 0
/* 8039064C 0038C2AC  4E 80 00 20 */	blr 
lbl_80390650:
/* 80390650 0038C2B0  1C 04 00 12 */	mulli r0, r4, 0x12
/* 80390654 0038C2B4  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80390658 0038C2B8  7C 63 02 14 */	add r3, r3, r0
/* 8039065C 0038C2BC  4E 80 00 20 */	blr 

.global func_80390660
func_80390660:
/* 80390660 0038C2C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390664 0038C2C4  7C 08 02 A6 */	mflr r0
/* 80390668 0038C2C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039066C 0038C2CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390670 0038C2D0  7C BF 2B 78 */	mr r31, r5
/* 80390674 0038C2D4  4B FF FF B9 */	bl func_8039062C
/* 80390678 0038C2D8  2C 03 00 00 */	cmpwi r3, 0
/* 8039067C 0038C2DC  40 82 00 0C */	bne lbl_80390688
/* 80390680 0038C2E0  38 60 00 00 */	li r3, 0
/* 80390684 0038C2E4  48 00 00 18 */	b lbl_8039069C
lbl_80390688:
/* 80390688 0038C2E8  28 1F 00 12 */	cmplwi r31, 0x12
/* 8039068C 0038C2EC  41 80 00 0C */	blt lbl_80390698
/* 80390690 0038C2F0  38 60 00 00 */	li r3, 0
/* 80390694 0038C2F4  48 00 00 08 */	b lbl_8039069C
lbl_80390698:
/* 80390698 0038C2F8  7C 63 F8 AE */	lbzx r3, r3, r31
lbl_8039069C:
/* 8039069C 0038C2FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803906A0 0038C300  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803906A4 0038C304  7C 08 03 A6 */	mtlr r0
/* 803906A8 0038C308  38 21 00 10 */	addi r1, r1, 0x10
/* 803906AC 0038C30C  4E 80 00 20 */	blr 

.global func_803906B0
func_803906B0:
/* 803906B0 0038C310  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803906B4 0038C314  7C 08 02 A6 */	mflr r0
/* 803906B8 0038C318  2C 04 00 00 */	cmpwi r4, 0
/* 803906BC 0038C31C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803906C0 0038C320  38 00 00 00 */	li r0, 0
/* 803906C4 0038C324  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803906C8 0038C328  7C 7F 1B 78 */	mr r31, r3
/* 803906CC 0038C32C  90 03 00 00 */	stw r0, 0(r3)
/* 803906D0 0038C330  41 82 00 08 */	beq lbl_803906D8
/* 803906D4 0038C334  48 00 00 7D */	bl func_80390750
lbl_803906D8:
/* 803906D8 0038C338  7F E3 FB 78 */	mr r3, r31
/* 803906DC 0038C33C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803906E0 0038C340  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803906E4 0038C344  7C 08 03 A6 */	mtlr r0
/* 803906E8 0038C348  38 21 00 10 */	addi r1, r1, 0x10
/* 803906EC 0038C34C  4E 80 00 20 */	blr 

.global func_803906F0
func_803906F0:
/* 803906F0 0038C350  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803906F4 0038C354  7C 08 02 A6 */	mflr r0
/* 803906F8 0038C358  2C 03 00 00 */	cmpwi r3, 0
/* 803906FC 0038C35C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390700 0038C360  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390704 0038C364  7C 9F 23 78 */	mr r31, r4
/* 80390708 0038C368  93 C1 00 08 */	stw r30, 8(r1)
/* 8039070C 0038C36C  7C 7E 1B 78 */	mr r30, r3
/* 80390710 0038C370  41 82 00 24 */	beq lbl_80390734
/* 80390714 0038C374  80 03 00 00 */	lwz r0, 0(r3)
/* 80390718 0038C378  2C 00 00 00 */	cmpwi r0, 0
/* 8039071C 0038C37C  41 82 00 08 */	beq lbl_80390724
/* 80390720 0038C380  48 00 01 95 */	bl func_803908B4
lbl_80390724:
/* 80390724 0038C384  2C 1F 00 00 */	cmpwi r31, 0
/* 80390728 0038C388  40 81 00 0C */	ble lbl_80390734
/* 8039072C 0038C38C  7F C3 F3 78 */	mr r3, r30
/* 80390730 0038C390  4B E4 A3 89 */	bl __dl__FPv
lbl_80390734:
/* 80390734 0038C394  7F C3 F3 78 */	mr r3, r30
/* 80390738 0038C398  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039073C 0038C39C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80390740 0038C3A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390744 0038C3A4  7C 08 03 A6 */	mtlr r0
/* 80390748 0038C3A8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039074C 0038C3AC  4E 80 00 20 */	blr 

.global func_80390750
func_80390750:
/* 80390750 0038C3B0  2C 04 00 00 */	cmpwi r4, 0
/* 80390754 0038C3B4  40 82 00 0C */	bne lbl_80390760
/* 80390758 0038C3B8  38 60 FF FF */	li r3, -1
/* 8039075C 0038C3BC  4E 80 00 20 */	blr 
lbl_80390760:
/* 80390760 0038C3C0  80 03 00 00 */	lwz r0, 0(r3)
/* 80390764 0038C3C4  2C 00 00 00 */	cmpwi r0, 0
/* 80390768 0038C3C8  41 82 00 0C */	beq lbl_80390774
/* 8039076C 0038C3CC  38 60 FF FE */	li r3, -2
/* 80390770 0038C3D0  4E 80 00 20 */	blr 
lbl_80390774:
/* 80390774 0038C3D4  80 04 00 04 */	lwz r0, 4(r4)
/* 80390778 0038C3D8  28 00 00 08 */	cmplwi r0, 8
/* 8039077C 0038C3DC  41 82 00 0C */	beq lbl_80390788
/* 80390780 0038C3E0  38 60 FF FD */	li r3, -3
/* 80390784 0038C3E4  4E 80 00 20 */	blr 
lbl_80390788:
/* 80390788 0038C3E8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8039078C 0038C3EC  2C 00 00 00 */	cmpwi r0, 0
/* 80390790 0038C3F0  40 82 01 0C */	bne lbl_8039089C
/* 80390794 0038C3F4  80 04 00 08 */	lwz r0, 8(r4)
/* 80390798 0038C3F8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039079C 0038C3FC  7C E0 22 14 */	add r7, r0, r4
/* 803907A0 0038C400  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803907A4 0038C404  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803907A8 0038C408  7C C6 22 14 */	add r6, r6, r4
/* 803907AC 0038C40C  7C A5 22 14 */	add r5, r5, r4
/* 803907B0 0038C410  90 E4 00 08 */	stw r7, 8(r4)
/* 803907B4 0038C414  2C 00 00 00 */	cmpwi r0, 0
/* 803907B8 0038C418  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803907BC 0038C41C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803907C0 0038C420  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803907C4 0038C424  41 82 00 0C */	beq lbl_803907D0
/* 803907C8 0038C428  7C 00 22 14 */	add r0, r0, r4
/* 803907CC 0038C42C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803907D0:
/* 803907D0 0038C430  2C 07 00 00 */	cmpwi r7, 0
/* 803907D4 0038C434  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803907D8 0038C438  41 82 00 BC */	beq lbl_80390894
/* 803907DC 0038C43C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803907E0 0038C440  7C 09 03 A6 */	mtctr r0
/* 803907E4 0038C444  41 82 00 94 */	beq lbl_80390878
lbl_803907E8:
/* 803907E8 0038C448  80 C5 00 00 */	lwz r6, 0(r5)
/* 803907EC 0038C44C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803907F0 0038C450  7C 00 22 14 */	add r0, r0, r4
/* 803907F4 0038C454  7C 06 21 2E */	stwx r0, r6, r4
/* 803907F8 0038C458  80 C5 00 04 */	lwz r6, 4(r5)
/* 803907FC 0038C45C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390800 0038C460  7C 00 22 14 */	add r0, r0, r4
/* 80390804 0038C464  7C 06 21 2E */	stwx r0, r6, r4
/* 80390808 0038C468  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039080C 0038C46C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390810 0038C470  7C 00 22 14 */	add r0, r0, r4
/* 80390814 0038C474  7C 06 21 2E */	stwx r0, r6, r4
/* 80390818 0038C478  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039081C 0038C47C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390820 0038C480  7C 00 22 14 */	add r0, r0, r4
/* 80390824 0038C484  7C 06 21 2E */	stwx r0, r6, r4
/* 80390828 0038C488  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039082C 0038C48C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390830 0038C490  7C 00 22 14 */	add r0, r0, r4
/* 80390834 0038C494  7C 06 21 2E */	stwx r0, r6, r4
/* 80390838 0038C498  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039083C 0038C49C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390840 0038C4A0  7C 00 22 14 */	add r0, r0, r4
/* 80390844 0038C4A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390848 0038C4A8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039084C 0038C4AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390850 0038C4B0  7C 00 22 14 */	add r0, r0, r4
/* 80390854 0038C4B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390858 0038C4B8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039085C 0038C4BC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80390860 0038C4C0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390864 0038C4C4  7C 00 22 14 */	add r0, r0, r4
/* 80390868 0038C4C8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039086C 0038C4CC  42 00 FF 7C */	bdnz lbl_803907E8
/* 80390870 0038C4D0  70 E7 00 07 */	andi. r7, r7, 7
/* 80390874 0038C4D4  41 82 00 20 */	beq lbl_80390894
lbl_80390878:
/* 80390878 0038C4D8  7C E9 03 A6 */	mtctr r7
lbl_8039087C:
/* 8039087C 0038C4DC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80390880 0038C4E0  38 A5 00 04 */	addi r5, r5, 4
/* 80390884 0038C4E4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390888 0038C4E8  7C 00 22 14 */	add r0, r0, r4
/* 8039088C 0038C4EC  7C 06 21 2E */	stwx r0, r6, r4
/* 80390890 0038C4F0  42 00 FF EC */	bdnz lbl_8039087C
lbl_80390894:
/* 80390894 0038C4F4  38 00 00 01 */	li r0, 1
/* 80390898 0038C4F8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039089C:
/* 8039089C 0038C4FC  90 83 00 00 */	stw r4, 0(r3)
/* 803908A0 0038C500  38 60 00 00 */	li r3, 0
/* 803908A4 0038C504  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803908A8 0038C508  38 05 00 01 */	addi r0, r5, 1
/* 803908AC 0038C50C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803908B0 0038C510  4E 80 00 20 */	blr 

.global func_803908B4
func_803908B4:
/* 803908B4 0038C514  80 83 00 00 */	lwz r4, 0(r3)
/* 803908B8 0038C518  38 A0 00 00 */	li r5, 0
/* 803908BC 0038C51C  2C 04 00 00 */	cmpwi r4, 0
/* 803908C0 0038C520  41 82 00 20 */	beq lbl_803908E0
/* 803908C4 0038C524  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803908C8 0038C528  2C 05 00 00 */	cmpwi r5, 0
/* 803908CC 0038C52C  41 82 00 0C */	beq lbl_803908D8
/* 803908D0 0038C530  38 A5 FF FF */	addi r5, r5, -1
/* 803908D4 0038C534  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803908D8:
/* 803908D8 0038C538  38 00 00 00 */	li r0, 0
/* 803908DC 0038C53C  90 03 00 00 */	stw r0, 0(r3)
lbl_803908E0:
/* 803908E0 0038C540  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803908E4 0038C544  4E 80 00 20 */	blr 

.global func_803908E8
func_803908E8:
/* 803908E8 0038C548  80 63 00 00 */	lwz r3, 0(r3)
/* 803908EC 0038C54C  2C 03 00 00 */	cmpwi r3, 0
/* 803908F0 0038C550  40 82 00 0C */	bne lbl_803908FC
/* 803908F4 0038C554  38 60 00 00 */	li r3, 0
/* 803908F8 0038C558  4E 80 00 20 */	blr 
lbl_803908FC:
/* 803908FC 0038C55C  2C 04 00 00 */	cmpwi r4, 0
/* 80390900 0038C560  40 80 00 0C */	bge lbl_8039090C
/* 80390904 0038C564  38 60 00 00 */	li r3, 0
/* 80390908 0038C568  4E 80 00 20 */	blr 
lbl_8039090C:
/* 8039090C 0038C56C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80390910 0038C570  54 80 18 38 */	slwi r0, r4, 3
/* 80390914 0038C574  7C 63 02 14 */	add r3, r3, r0
/* 80390918 0038C578  4E 80 00 20 */	blr 

.global func_8039091C
func_8039091C:
/* 8039091C 0038C57C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390920 0038C580  7C 08 02 A6 */	mflr r0
/* 80390924 0038C584  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390928 0038C588  4B FF FF C1 */	bl func_803908E8
/* 8039092C 0038C58C  2C 03 00 00 */	cmpwi r3, 0
/* 80390930 0038C590  41 82 00 0C */	beq lbl_8039093C
/* 80390934 0038C594  A0 63 00 04 */	lhz r3, 4(r3)
/* 80390938 0038C598  48 00 00 08 */	b lbl_80390940
lbl_8039093C:
/* 8039093C 0038C59C  38 60 00 00 */	li r3, 0
lbl_80390940:
/* 80390940 0038C5A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390944 0038C5A4  7C 08 03 A6 */	mtlr r0
/* 80390948 0038C5A8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039094C 0038C5AC  4E 80 00 20 */	blr 

.global func_80390950
func_80390950:
/* 80390950 0038C5B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390954 0038C5B4  7C 08 02 A6 */	mflr r0
/* 80390958 0038C5B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039095C 0038C5BC  4B FF FF 8D */	bl func_803908E8
/* 80390960 0038C5C0  2C 03 00 00 */	cmpwi r3, 0
/* 80390964 0038C5C4  41 82 00 10 */	beq lbl_80390974
/* 80390968 0038C5C8  80 03 00 04 */	lwz r0, 4(r3)
/* 8039096C 0038C5CC  54 03 FC 7E */	rlwinm r3, r0, 0x1f, 0x11, 0x1f
/* 80390970 0038C5D0  48 00 00 08 */	b lbl_80390978
lbl_80390974:
/* 80390974 0038C5D4  38 60 00 00 */	li r3, 0
lbl_80390978:
/* 80390978 0038C5D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039097C 0038C5DC  7C 08 03 A6 */	mtlr r0
/* 80390980 0038C5E0  38 21 00 10 */	addi r1, r1, 0x10
/* 80390984 0038C5E4  4E 80 00 20 */	blr 

.global func_80390988
func_80390988:
/* 80390988 0038C5E8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039098C 0038C5EC  7C 08 02 A6 */	mflr r0
/* 80390990 0038C5F0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390994 0038C5F4  4B FF FF 55 */	bl func_803908E8
/* 80390998 0038C5F8  2C 03 00 00 */	cmpwi r3, 0
/* 8039099C 0038C5FC  41 82 00 10 */	beq lbl_803909AC
/* 803909A0 0038C600  80 03 00 04 */	lwz r0, 4(r3)
/* 803909A4 0038C604  54 03 07 FE */	clrlwi r3, r0, 0x1f
/* 803909A8 0038C608  48 00 00 08 */	b lbl_803909B0
lbl_803909AC:
/* 803909AC 0038C60C  38 60 00 00 */	li r3, 0
lbl_803909B0:
/* 803909B0 0038C610  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803909B4 0038C614  7C 08 03 A6 */	mtlr r0
/* 803909B8 0038C618  38 21 00 10 */	addi r1, r1, 0x10
/* 803909BC 0038C61C  4E 80 00 20 */	blr 

.global func_803909C0
func_803909C0:
/* 803909C0 0038C620  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803909C4 0038C624  7C 08 02 A6 */	mflr r0
/* 803909C8 0038C628  2C 04 00 00 */	cmpwi r4, 0
/* 803909CC 0038C62C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803909D0 0038C630  38 00 00 00 */	li r0, 0
/* 803909D4 0038C634  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803909D8 0038C638  7C 7F 1B 78 */	mr r31, r3
/* 803909DC 0038C63C  90 03 00 00 */	stw r0, 0(r3)
/* 803909E0 0038C640  41 82 00 08 */	beq lbl_803909E8
/* 803909E4 0038C644  48 00 00 7D */	bl func_80390A60
lbl_803909E8:
/* 803909E8 0038C648  7F E3 FB 78 */	mr r3, r31
/* 803909EC 0038C64C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803909F0 0038C650  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803909F4 0038C654  7C 08 03 A6 */	mtlr r0
/* 803909F8 0038C658  38 21 00 10 */	addi r1, r1, 0x10
/* 803909FC 0038C65C  4E 80 00 20 */	blr 

.global func_80390A00
func_80390A00:
/* 80390A00 0038C660  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390A04 0038C664  7C 08 02 A6 */	mflr r0
/* 80390A08 0038C668  2C 03 00 00 */	cmpwi r3, 0
/* 80390A0C 0038C66C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390A10 0038C670  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390A14 0038C674  7C 9F 23 78 */	mr r31, r4
/* 80390A18 0038C678  93 C1 00 08 */	stw r30, 8(r1)
/* 80390A1C 0038C67C  7C 7E 1B 78 */	mr r30, r3
/* 80390A20 0038C680  41 82 00 24 */	beq lbl_80390A44
/* 80390A24 0038C684  80 03 00 00 */	lwz r0, 0(r3)
/* 80390A28 0038C688  2C 00 00 00 */	cmpwi r0, 0
/* 80390A2C 0038C68C  41 82 00 08 */	beq lbl_80390A34
/* 80390A30 0038C690  48 00 01 95 */	bl func_80390BC4
lbl_80390A34:
/* 80390A34 0038C694  2C 1F 00 00 */	cmpwi r31, 0
/* 80390A38 0038C698  40 81 00 0C */	ble lbl_80390A44
/* 80390A3C 0038C69C  7F C3 F3 78 */	mr r3, r30
/* 80390A40 0038C6A0  4B E4 A0 79 */	bl __dl__FPv
lbl_80390A44:
/* 80390A44 0038C6A4  7F C3 F3 78 */	mr r3, r30
/* 80390A48 0038C6A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390A4C 0038C6AC  83 C1 00 08 */	lwz r30, 8(r1)
/* 80390A50 0038C6B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390A54 0038C6B4  7C 08 03 A6 */	mtlr r0
/* 80390A58 0038C6B8  38 21 00 10 */	addi r1, r1, 0x10
/* 80390A5C 0038C6BC  4E 80 00 20 */	blr 

.global func_80390A60
func_80390A60:
/* 80390A60 0038C6C0  2C 04 00 00 */	cmpwi r4, 0
/* 80390A64 0038C6C4  40 82 00 0C */	bne lbl_80390A70
/* 80390A68 0038C6C8  38 60 FF FF */	li r3, -1
/* 80390A6C 0038C6CC  4E 80 00 20 */	blr 
lbl_80390A70:
/* 80390A70 0038C6D0  80 03 00 00 */	lwz r0, 0(r3)
/* 80390A74 0038C6D4  2C 00 00 00 */	cmpwi r0, 0
/* 80390A78 0038C6D8  41 82 00 0C */	beq lbl_80390A84
/* 80390A7C 0038C6DC  38 60 FF FE */	li r3, -2
/* 80390A80 0038C6E0  4E 80 00 20 */	blr 
lbl_80390A84:
/* 80390A84 0038C6E4  80 04 00 04 */	lwz r0, 4(r4)
/* 80390A88 0038C6E8  28 00 00 76 */	cmplwi r0, 0x76
/* 80390A8C 0038C6EC  41 82 00 0C */	beq lbl_80390A98
/* 80390A90 0038C6F0  38 60 FF FD */	li r3, -3
/* 80390A94 0038C6F4  4E 80 00 20 */	blr 
lbl_80390A98:
/* 80390A98 0038C6F8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80390A9C 0038C6FC  2C 00 00 00 */	cmpwi r0, 0
/* 80390AA0 0038C700  40 82 01 0C */	bne lbl_80390BAC
/* 80390AA4 0038C704  80 04 00 08 */	lwz r0, 8(r4)
/* 80390AA8 0038C708  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80390AAC 0038C70C  7C E0 22 14 */	add r7, r0, r4
/* 80390AB0 0038C710  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80390AB4 0038C714  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80390AB8 0038C718  7C C6 22 14 */	add r6, r6, r4
/* 80390ABC 0038C71C  7C A5 22 14 */	add r5, r5, r4
/* 80390AC0 0038C720  90 E4 00 08 */	stw r7, 8(r4)
/* 80390AC4 0038C724  2C 00 00 00 */	cmpwi r0, 0
/* 80390AC8 0038C728  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80390ACC 0038C72C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80390AD0 0038C730  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80390AD4 0038C734  41 82 00 0C */	beq lbl_80390AE0
/* 80390AD8 0038C738  7C 00 22 14 */	add r0, r0, r4
/* 80390ADC 0038C73C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80390AE0:
/* 80390AE0 0038C740  2C 07 00 00 */	cmpwi r7, 0
/* 80390AE4 0038C744  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80390AE8 0038C748  41 82 00 BC */	beq lbl_80390BA4
/* 80390AEC 0038C74C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80390AF0 0038C750  7C 09 03 A6 */	mtctr r0
/* 80390AF4 0038C754  41 82 00 94 */	beq lbl_80390B88
lbl_80390AF8:
/* 80390AF8 0038C758  80 C5 00 00 */	lwz r6, 0(r5)
/* 80390AFC 0038C75C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B00 0038C760  7C 00 22 14 */	add r0, r0, r4
/* 80390B04 0038C764  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B08 0038C768  80 C5 00 04 */	lwz r6, 4(r5)
/* 80390B0C 0038C76C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B10 0038C770  7C 00 22 14 */	add r0, r0, r4
/* 80390B14 0038C774  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B18 0038C778  80 C5 00 08 */	lwz r6, 8(r5)
/* 80390B1C 0038C77C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B20 0038C780  7C 00 22 14 */	add r0, r0, r4
/* 80390B24 0038C784  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B28 0038C788  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80390B2C 0038C78C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B30 0038C790  7C 00 22 14 */	add r0, r0, r4
/* 80390B34 0038C794  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B38 0038C798  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80390B3C 0038C79C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B40 0038C7A0  7C 00 22 14 */	add r0, r0, r4
/* 80390B44 0038C7A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B48 0038C7A8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80390B4C 0038C7AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B50 0038C7B0  7C 00 22 14 */	add r0, r0, r4
/* 80390B54 0038C7B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B58 0038C7B8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80390B5C 0038C7BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B60 0038C7C0  7C 00 22 14 */	add r0, r0, r4
/* 80390B64 0038C7C4  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B68 0038C7C8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80390B6C 0038C7CC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80390B70 0038C7D0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B74 0038C7D4  7C 00 22 14 */	add r0, r0, r4
/* 80390B78 0038C7D8  7C 06 21 2E */	stwx r0, r6, r4
/* 80390B7C 0038C7DC  42 00 FF 7C */	bdnz lbl_80390AF8
/* 80390B80 0038C7E0  70 E7 00 07 */	andi. r7, r7, 7
/* 80390B84 0038C7E4  41 82 00 20 */	beq lbl_80390BA4
lbl_80390B88:
/* 80390B88 0038C7E8  7C E9 03 A6 */	mtctr r7
lbl_80390B8C:
/* 80390B8C 0038C7EC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80390B90 0038C7F0  38 A5 00 04 */	addi r5, r5, 4
/* 80390B94 0038C7F4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80390B98 0038C7F8  7C 00 22 14 */	add r0, r0, r4
/* 80390B9C 0038C7FC  7C 06 21 2E */	stwx r0, r6, r4
/* 80390BA0 0038C800  42 00 FF EC */	bdnz lbl_80390B8C
lbl_80390BA4:
/* 80390BA4 0038C804  38 00 00 01 */	li r0, 1
/* 80390BA8 0038C808  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80390BAC:
/* 80390BAC 0038C80C  90 83 00 00 */	stw r4, 0(r3)
/* 80390BB0 0038C810  38 60 00 00 */	li r3, 0
/* 80390BB4 0038C814  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80390BB8 0038C818  38 05 00 01 */	addi r0, r5, 1
/* 80390BBC 0038C81C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80390BC0 0038C820  4E 80 00 20 */	blr 

.global func_80390BC4
func_80390BC4:
/* 80390BC4 0038C824  80 83 00 00 */	lwz r4, 0(r3)
/* 80390BC8 0038C828  38 A0 00 00 */	li r5, 0
/* 80390BCC 0038C82C  2C 04 00 00 */	cmpwi r4, 0
/* 80390BD0 0038C830  41 82 00 20 */	beq lbl_80390BF0
/* 80390BD4 0038C834  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80390BD8 0038C838  2C 05 00 00 */	cmpwi r5, 0
/* 80390BDC 0038C83C  41 82 00 0C */	beq lbl_80390BE8
/* 80390BE0 0038C840  38 A5 FF FF */	addi r5, r5, -1
/* 80390BE4 0038C844  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80390BE8:
/* 80390BE8 0038C848  38 00 00 00 */	li r0, 0
/* 80390BEC 0038C84C  90 03 00 00 */	stw r0, 0(r3)
lbl_80390BF0:
/* 80390BF0 0038C850  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80390BF4 0038C854  4E 80 00 20 */	blr 

.global func_80390BF8
func_80390BF8:
/* 80390BF8 0038C858  80 63 00 00 */	lwz r3, 0(r3)
/* 80390BFC 0038C85C  2C 03 00 00 */	cmpwi r3, 0
/* 80390C00 0038C860  40 82 00 0C */	bne lbl_80390C0C
/* 80390C04 0038C864  38 60 00 00 */	li r3, 0
/* 80390C08 0038C868  4E 80 00 20 */	blr 
lbl_80390C0C:
/* 80390C0C 0038C86C  2C 04 00 00 */	cmpwi r4, 0
/* 80390C10 0038C870  40 80 00 0C */	bge lbl_80390C1C
/* 80390C14 0038C874  38 60 00 00 */	li r3, 0
/* 80390C18 0038C878  4E 80 00 20 */	blr 
lbl_80390C1C:
/* 80390C1C 0038C87C  1C 04 00 76 */	mulli r0, r4, 0x76
/* 80390C20 0038C880  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80390C24 0038C884  7C 63 02 14 */	add r3, r3, r0
/* 80390C28 0038C888  4E 80 00 20 */	blr 

.global func_80390C2C
func_80390C2C:
/* 80390C2C 0038C88C  80 63 00 00 */	lwz r3, 0(r3)
/* 80390C30 0038C890  2C 03 00 00 */	cmpwi r3, 0
/* 80390C34 0038C894  41 82 00 0C */	beq lbl_80390C40
/* 80390C38 0038C898  80 63 00 00 */	lwz r3, 0(r3)
/* 80390C3C 0038C89C  4E 80 00 20 */	blr 
lbl_80390C40:
/* 80390C40 0038C8A0  38 60 00 00 */	li r3, 0
/* 80390C44 0038C8A4  4E 80 00 20 */	blr 

.global func_80390C48
func_80390C48:
/* 80390C48 0038C8A8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390C4C 0038C8AC  7C 08 02 A6 */	mflr r0
/* 80390C50 0038C8B0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390C54 0038C8B4  4B FF FF A5 */	bl func_80390BF8
/* 80390C58 0038C8B8  2C 03 00 00 */	cmpwi r3, 0
/* 80390C5C 0038C8BC  41 82 00 0C */	beq lbl_80390C68
/* 80390C60 0038C8C0  A0 63 00 00 */	lhz r3, 0(r3)
/* 80390C64 0038C8C4  48 00 00 08 */	b lbl_80390C6C
lbl_80390C68:
/* 80390C68 0038C8C8  38 60 00 00 */	li r3, 0
lbl_80390C6C:
/* 80390C6C 0038C8CC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390C70 0038C8D0  7C 08 03 A6 */	mtlr r0
/* 80390C74 0038C8D4  38 21 00 10 */	addi r1, r1, 0x10
/* 80390C78 0038C8D8  4E 80 00 20 */	blr 

.global func_80390C7C
func_80390C7C:
/* 80390C7C 0038C8DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390C80 0038C8E0  7C 08 02 A6 */	mflr r0
/* 80390C84 0038C8E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390C88 0038C8E8  4B FF FF 71 */	bl func_80390BF8
/* 80390C8C 0038C8EC  2C 03 00 00 */	cmpwi r3, 0
/* 80390C90 0038C8F0  41 82 00 0C */	beq lbl_80390C9C
/* 80390C94 0038C8F4  88 63 00 6A */	lbz r3, 0x6a(r3)
/* 80390C98 0038C8F8  48 00 00 08 */	b lbl_80390CA0
lbl_80390C9C:
/* 80390C9C 0038C8FC  38 60 00 00 */	li r3, 0
lbl_80390CA0:
/* 80390CA0 0038C900  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390CA4 0038C904  7C 08 03 A6 */	mtlr r0
/* 80390CA8 0038C908  38 21 00 10 */	addi r1, r1, 0x10
/* 80390CAC 0038C90C  4E 80 00 20 */	blr 

.global func_80390CB0
func_80390CB0:
/* 80390CB0 0038C910  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390CB4 0038C914  7C 08 02 A6 */	mflr r0
/* 80390CB8 0038C918  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390CBC 0038C91C  4B FF FF 3D */	bl func_80390BF8
/* 80390CC0 0038C920  2C 03 00 00 */	cmpwi r3, 0
/* 80390CC4 0038C924  41 82 00 0C */	beq lbl_80390CD0
/* 80390CC8 0038C928  88 63 00 6B */	lbz r3, 0x6b(r3)
/* 80390CCC 0038C92C  48 00 00 08 */	b lbl_80390CD4
lbl_80390CD0:
/* 80390CD0 0038C930  38 60 00 00 */	li r3, 0
lbl_80390CD4:
/* 80390CD4 0038C934  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390CD8 0038C938  7C 08 03 A6 */	mtlr r0
/* 80390CDC 0038C93C  38 21 00 10 */	addi r1, r1, 0x10
/* 80390CE0 0038C940  4E 80 00 20 */	blr 

.global func_80390CE4
func_80390CE4:
/* 80390CE4 0038C944  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390CE8 0038C948  7C 08 02 A6 */	mflr r0
/* 80390CEC 0038C94C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390CF0 0038C950  4B FF FF 09 */	bl func_80390BF8
/* 80390CF4 0038C954  2C 03 00 00 */	cmpwi r3, 0
/* 80390CF8 0038C958  41 82 00 0C */	beq lbl_80390D04
/* 80390CFC 0038C95C  88 63 00 6C */	lbz r3, 0x6c(r3)
/* 80390D00 0038C960  48 00 00 08 */	b lbl_80390D08
lbl_80390D04:
/* 80390D04 0038C964  38 60 00 00 */	li r3, 0
lbl_80390D08:
/* 80390D08 0038C968  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390D0C 0038C96C  7C 08 03 A6 */	mtlr r0
/* 80390D10 0038C970  38 21 00 10 */	addi r1, r1, 0x10
/* 80390D14 0038C974  4E 80 00 20 */	blr 

.global func_80390D18
func_80390D18:
/* 80390D18 0038C978  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390D1C 0038C97C  7C 08 02 A6 */	mflr r0
/* 80390D20 0038C980  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390D24 0038C984  4B FF FE D5 */	bl func_80390BF8
/* 80390D28 0038C988  2C 03 00 00 */	cmpwi r3, 0
/* 80390D2C 0038C98C  41 82 00 0C */	beq lbl_80390D38
/* 80390D30 0038C990  88 63 00 6D */	lbz r3, 0x6d(r3)
/* 80390D34 0038C994  48 00 00 08 */	b lbl_80390D3C
lbl_80390D38:
/* 80390D38 0038C998  38 60 00 00 */	li r3, 0
lbl_80390D3C:
/* 80390D3C 0038C99C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390D40 0038C9A0  7C 08 03 A6 */	mtlr r0
/* 80390D44 0038C9A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80390D48 0038C9A8  4E 80 00 20 */	blr 

.global func_80390D4C
func_80390D4C:
/* 80390D4C 0038C9AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390D50 0038C9B0  7C 08 02 A6 */	mflr r0
/* 80390D54 0038C9B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390D58 0038C9B8  4B FF FE A1 */	bl func_80390BF8
/* 80390D5C 0038C9BC  2C 03 00 00 */	cmpwi r3, 0
/* 80390D60 0038C9C0  41 82 00 0C */	beq lbl_80390D6C
/* 80390D64 0038C9C4  88 63 00 6E */	lbz r3, 0x6e(r3)
/* 80390D68 0038C9C8  48 00 00 08 */	b lbl_80390D70
lbl_80390D6C:
/* 80390D6C 0038C9CC  38 60 00 00 */	li r3, 0
lbl_80390D70:
/* 80390D70 0038C9D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390D74 0038C9D4  7C 08 03 A6 */	mtlr r0
/* 80390D78 0038C9D8  38 21 00 10 */	addi r1, r1, 0x10
/* 80390D7C 0038C9DC  4E 80 00 20 */	blr 

.global func_80390D80
func_80390D80:
/* 80390D80 0038C9E0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390D84 0038C9E4  7C 08 02 A6 */	mflr r0
/* 80390D88 0038C9E8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390D8C 0038C9EC  4B FF FE 6D */	bl func_80390BF8
/* 80390D90 0038C9F0  2C 03 00 00 */	cmpwi r3, 0
/* 80390D94 0038C9F4  41 82 00 0C */	beq lbl_80390DA0
/* 80390D98 0038C9F8  88 63 00 6F */	lbz r3, 0x6f(r3)
/* 80390D9C 0038C9FC  48 00 00 08 */	b lbl_80390DA4
lbl_80390DA0:
/* 80390DA0 0038CA00  38 60 00 00 */	li r3, 0
lbl_80390DA4:
/* 80390DA4 0038CA04  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390DA8 0038CA08  7C 08 03 A6 */	mtlr r0
/* 80390DAC 0038CA0C  38 21 00 10 */	addi r1, r1, 0x10
/* 80390DB0 0038CA10  4E 80 00 20 */	blr 

.global func_80390DB4
func_80390DB4:
/* 80390DB4 0038CA14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390DB8 0038CA18  7C 08 02 A6 */	mflr r0
/* 80390DBC 0038CA1C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390DC0 0038CA20  4B FF FE 39 */	bl func_80390BF8
/* 80390DC4 0038CA24  2C 03 00 00 */	cmpwi r3, 0
/* 80390DC8 0038CA28  41 82 00 0C */	beq lbl_80390DD4
/* 80390DCC 0038CA2C  88 63 00 70 */	lbz r3, 0x70(r3)
/* 80390DD0 0038CA30  48 00 00 08 */	b lbl_80390DD8
lbl_80390DD4:
/* 80390DD4 0038CA34  38 60 00 00 */	li r3, 0
lbl_80390DD8:
/* 80390DD8 0038CA38  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390DDC 0038CA3C  7C 08 03 A6 */	mtlr r0
/* 80390DE0 0038CA40  38 21 00 10 */	addi r1, r1, 0x10
/* 80390DE4 0038CA44  4E 80 00 20 */	blr 

.global func_80390DE8
func_80390DE8:
/* 80390DE8 0038CA48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390DEC 0038CA4C  7C 08 02 A6 */	mflr r0
/* 80390DF0 0038CA50  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390DF4 0038CA54  4B FF FE 05 */	bl func_80390BF8
/* 80390DF8 0038CA58  2C 03 00 00 */	cmpwi r3, 0
/* 80390DFC 0038CA5C  41 82 00 0C */	beq lbl_80390E08
/* 80390E00 0038CA60  88 63 00 71 */	lbz r3, 0x71(r3)
/* 80390E04 0038CA64  48 00 00 08 */	b lbl_80390E0C
lbl_80390E08:
/* 80390E08 0038CA68  38 60 00 00 */	li r3, 0
lbl_80390E0C:
/* 80390E0C 0038CA6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390E10 0038CA70  7C 08 03 A6 */	mtlr r0
/* 80390E14 0038CA74  38 21 00 10 */	addi r1, r1, 0x10
/* 80390E18 0038CA78  4E 80 00 20 */	blr 

.global func_80390E1C
func_80390E1C:
/* 80390E1C 0038CA7C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390E20 0038CA80  7C 08 02 A6 */	mflr r0
/* 80390E24 0038CA84  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390E28 0038CA88  4B FF FD D1 */	bl func_80390BF8
/* 80390E2C 0038CA8C  2C 03 00 00 */	cmpwi r3, 0
/* 80390E30 0038CA90  41 82 00 0C */	beq lbl_80390E3C
/* 80390E34 0038CA94  88 63 00 72 */	lbz r3, 0x72(r3)
/* 80390E38 0038CA98  48 00 00 08 */	b lbl_80390E40
lbl_80390E3C:
/* 80390E3C 0038CA9C  38 60 00 00 */	li r3, 0
lbl_80390E40:
/* 80390E40 0038CAA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390E44 0038CAA4  7C 08 03 A6 */	mtlr r0
/* 80390E48 0038CAA8  38 21 00 10 */	addi r1, r1, 0x10
/* 80390E4C 0038CAAC  4E 80 00 20 */	blr 

.global func_80390E50
func_80390E50:
/* 80390E50 0038CAB0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390E54 0038CAB4  7C 08 02 A6 */	mflr r0
/* 80390E58 0038CAB8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390E5C 0038CABC  4B FF FD 9D */	bl func_80390BF8
/* 80390E60 0038CAC0  2C 03 00 00 */	cmpwi r3, 0
/* 80390E64 0038CAC4  41 82 00 0C */	beq lbl_80390E70
/* 80390E68 0038CAC8  88 63 00 73 */	lbz r3, 0x73(r3)
/* 80390E6C 0038CACC  48 00 00 08 */	b lbl_80390E74
lbl_80390E70:
/* 80390E70 0038CAD0  38 60 00 00 */	li r3, 0
lbl_80390E74:
/* 80390E74 0038CAD4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390E78 0038CAD8  7C 08 03 A6 */	mtlr r0
/* 80390E7C 0038CADC  38 21 00 10 */	addi r1, r1, 0x10
/* 80390E80 0038CAE0  4E 80 00 20 */	blr 

.global func_80390E84
func_80390E84:
/* 80390E84 0038CAE4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390E88 0038CAE8  7C 08 02 A6 */	mflr r0
/* 80390E8C 0038CAEC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390E90 0038CAF0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390E94 0038CAF4  7C BF 2B 78 */	mr r31, r5
/* 80390E98 0038CAF8  4B FF FD 61 */	bl func_80390BF8
/* 80390E9C 0038CAFC  2C 03 00 00 */	cmpwi r3, 0
/* 80390EA0 0038CB00  40 82 00 0C */	bne lbl_80390EAC
/* 80390EA4 0038CB04  38 60 00 00 */	li r3, 0
/* 80390EA8 0038CB08  48 00 00 20 */	b lbl_80390EC8
lbl_80390EAC:
/* 80390EAC 0038CB0C  28 1F 00 34 */	cmplwi r31, 0x34
/* 80390EB0 0038CB10  41 80 00 0C */	blt lbl_80390EBC
/* 80390EB4 0038CB14  38 60 00 00 */	li r3, 0
/* 80390EB8 0038CB18  48 00 00 10 */	b lbl_80390EC8
lbl_80390EBC:
/* 80390EBC 0038CB1C  57 E0 08 3C */	slwi r0, r31, 1
/* 80390EC0 0038CB20  7C 63 02 14 */	add r3, r3, r0
/* 80390EC4 0038CB24  A0 63 00 02 */	lhz r3, 2(r3)
lbl_80390EC8:
/* 80390EC8 0038CB28  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390ECC 0038CB2C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390ED0 0038CB30  7C 08 03 A6 */	mtlr r0
/* 80390ED4 0038CB34  38 21 00 10 */	addi r1, r1, 0x10
/* 80390ED8 0038CB38  4E 80 00 20 */	blr 

.global func_80390EDC
func_80390EDC:
/* 80390EDC 0038CB3C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390EE0 0038CB40  7C 08 02 A6 */	mflr r0
/* 80390EE4 0038CB44  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390EE8 0038CB48  4B FF FD 11 */	bl func_80390BF8
/* 80390EEC 0038CB4C  2C 03 00 00 */	cmpwi r3, 0
/* 80390EF0 0038CB50  41 82 00 0C */	beq lbl_80390EFC
/* 80390EF4 0038CB54  88 63 00 74 */	lbz r3, 0x74(r3)
/* 80390EF8 0038CB58  48 00 00 08 */	b lbl_80390F00
lbl_80390EFC:
/* 80390EFC 0038CB5C  38 60 00 00 */	li r3, 0
lbl_80390F00:
/* 80390F00 0038CB60  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390F04 0038CB64  7C 08 03 A6 */	mtlr r0
/* 80390F08 0038CB68  38 21 00 10 */	addi r1, r1, 0x10
/* 80390F0C 0038CB6C  4E 80 00 20 */	blr 

.global func_80390F10
func_80390F10:
/* 80390F10 0038CB70  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390F14 0038CB74  7C 08 02 A6 */	mflr r0
/* 80390F18 0038CB78  2C 04 00 00 */	cmpwi r4, 0
/* 80390F1C 0038CB7C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390F20 0038CB80  38 00 00 00 */	li r0, 0
/* 80390F24 0038CB84  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390F28 0038CB88  7C 7F 1B 78 */	mr r31, r3
/* 80390F2C 0038CB8C  90 03 00 00 */	stw r0, 0(r3)
/* 80390F30 0038CB90  41 82 00 08 */	beq lbl_80390F38
/* 80390F34 0038CB94  48 00 00 7D */	bl func_80390FB0
lbl_80390F38:
/* 80390F38 0038CB98  7F E3 FB 78 */	mr r3, r31
/* 80390F3C 0038CB9C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390F40 0038CBA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390F44 0038CBA4  7C 08 03 A6 */	mtlr r0
/* 80390F48 0038CBA8  38 21 00 10 */	addi r1, r1, 0x10
/* 80390F4C 0038CBAC  4E 80 00 20 */	blr 

.global func_80390F50
func_80390F50:
/* 80390F50 0038CBB0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80390F54 0038CBB4  7C 08 02 A6 */	mflr r0
/* 80390F58 0038CBB8  2C 03 00 00 */	cmpwi r3, 0
/* 80390F5C 0038CBBC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80390F60 0038CBC0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80390F64 0038CBC4  7C 9F 23 78 */	mr r31, r4
/* 80390F68 0038CBC8  93 C1 00 08 */	stw r30, 8(r1)
/* 80390F6C 0038CBCC  7C 7E 1B 78 */	mr r30, r3
/* 80390F70 0038CBD0  41 82 00 24 */	beq lbl_80390F94
/* 80390F74 0038CBD4  80 03 00 00 */	lwz r0, 0(r3)
/* 80390F78 0038CBD8  2C 00 00 00 */	cmpwi r0, 0
/* 80390F7C 0038CBDC  41 82 00 08 */	beq lbl_80390F84
/* 80390F80 0038CBE0  48 00 01 95 */	bl func_80391114
lbl_80390F84:
/* 80390F84 0038CBE4  2C 1F 00 00 */	cmpwi r31, 0
/* 80390F88 0038CBE8  40 81 00 0C */	ble lbl_80390F94
/* 80390F8C 0038CBEC  7F C3 F3 78 */	mr r3, r30
/* 80390F90 0038CBF0  4B E4 9B 29 */	bl __dl__FPv
lbl_80390F94:
/* 80390F94 0038CBF4  7F C3 F3 78 */	mr r3, r30
/* 80390F98 0038CBF8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80390F9C 0038CBFC  83 C1 00 08 */	lwz r30, 8(r1)
/* 80390FA0 0038CC00  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80390FA4 0038CC04  7C 08 03 A6 */	mtlr r0
/* 80390FA8 0038CC08  38 21 00 10 */	addi r1, r1, 0x10
/* 80390FAC 0038CC0C  4E 80 00 20 */	blr 

.global func_80390FB0
func_80390FB0:
/* 80390FB0 0038CC10  2C 04 00 00 */	cmpwi r4, 0
/* 80390FB4 0038CC14  40 82 00 0C */	bne lbl_80390FC0
/* 80390FB8 0038CC18  38 60 FF FF */	li r3, -1
/* 80390FBC 0038CC1C  4E 80 00 20 */	blr 
lbl_80390FC0:
/* 80390FC0 0038CC20  80 03 00 00 */	lwz r0, 0(r3)
/* 80390FC4 0038CC24  2C 00 00 00 */	cmpwi r0, 0
/* 80390FC8 0038CC28  41 82 00 0C */	beq lbl_80390FD4
/* 80390FCC 0038CC2C  38 60 FF FE */	li r3, -2
/* 80390FD0 0038CC30  4E 80 00 20 */	blr 
lbl_80390FD4:
/* 80390FD4 0038CC34  80 04 00 04 */	lwz r0, 4(r4)
/* 80390FD8 0038CC38  28 00 00 48 */	cmplwi r0, 0x48
/* 80390FDC 0038CC3C  41 82 00 0C */	beq lbl_80390FE8
/* 80390FE0 0038CC40  38 60 FF FD */	li r3, -3
/* 80390FE4 0038CC44  4E 80 00 20 */	blr 
lbl_80390FE8:
/* 80390FE8 0038CC48  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80390FEC 0038CC4C  2C 00 00 00 */	cmpwi r0, 0
/* 80390FF0 0038CC50  40 82 01 0C */	bne lbl_803910FC
/* 80390FF4 0038CC54  80 04 00 08 */	lwz r0, 8(r4)
/* 80390FF8 0038CC58  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80390FFC 0038CC5C  7C E0 22 14 */	add r7, r0, r4
/* 80391000 0038CC60  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80391004 0038CC64  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80391008 0038CC68  7C C6 22 14 */	add r6, r6, r4
/* 8039100C 0038CC6C  7C A5 22 14 */	add r5, r5, r4
/* 80391010 0038CC70  90 E4 00 08 */	stw r7, 8(r4)
/* 80391014 0038CC74  2C 00 00 00 */	cmpwi r0, 0
/* 80391018 0038CC78  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8039101C 0038CC7C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80391020 0038CC80  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80391024 0038CC84  41 82 00 0C */	beq lbl_80391030
/* 80391028 0038CC88  7C 00 22 14 */	add r0, r0, r4
/* 8039102C 0038CC8C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80391030:
/* 80391030 0038CC90  2C 07 00 00 */	cmpwi r7, 0
/* 80391034 0038CC94  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80391038 0038CC98  41 82 00 BC */	beq lbl_803910F4
/* 8039103C 0038CC9C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80391040 0038CCA0  7C 09 03 A6 */	mtctr r0
/* 80391044 0038CCA4  41 82 00 94 */	beq lbl_803910D8
lbl_80391048:
/* 80391048 0038CCA8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039104C 0038CCAC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391050 0038CCB0  7C 00 22 14 */	add r0, r0, r4
/* 80391054 0038CCB4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391058 0038CCB8  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039105C 0038CCBC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391060 0038CCC0  7C 00 22 14 */	add r0, r0, r4
/* 80391064 0038CCC4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391068 0038CCC8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039106C 0038CCCC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391070 0038CCD0  7C 00 22 14 */	add r0, r0, r4
/* 80391074 0038CCD4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391078 0038CCD8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039107C 0038CCDC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391080 0038CCE0  7C 00 22 14 */	add r0, r0, r4
/* 80391084 0038CCE4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391088 0038CCE8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039108C 0038CCEC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391090 0038CCF0  7C 00 22 14 */	add r0, r0, r4
/* 80391094 0038CCF4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391098 0038CCF8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039109C 0038CCFC  7C 06 20 2E */	lwzx r0, r6, r4
/* 803910A0 0038CD00  7C 00 22 14 */	add r0, r0, r4
/* 803910A4 0038CD04  7C 06 21 2E */	stwx r0, r6, r4
/* 803910A8 0038CD08  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803910AC 0038CD0C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803910B0 0038CD10  7C 00 22 14 */	add r0, r0, r4
/* 803910B4 0038CD14  7C 06 21 2E */	stwx r0, r6, r4
/* 803910B8 0038CD18  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803910BC 0038CD1C  38 A5 00 20 */	addi r5, r5, 0x20
/* 803910C0 0038CD20  7C 06 20 2E */	lwzx r0, r6, r4
/* 803910C4 0038CD24  7C 00 22 14 */	add r0, r0, r4
/* 803910C8 0038CD28  7C 06 21 2E */	stwx r0, r6, r4
/* 803910CC 0038CD2C  42 00 FF 7C */	bdnz lbl_80391048
/* 803910D0 0038CD30  70 E7 00 07 */	andi. r7, r7, 7
/* 803910D4 0038CD34  41 82 00 20 */	beq lbl_803910F4
lbl_803910D8:
/* 803910D8 0038CD38  7C E9 03 A6 */	mtctr r7
lbl_803910DC:
/* 803910DC 0038CD3C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803910E0 0038CD40  38 A5 00 04 */	addi r5, r5, 4
/* 803910E4 0038CD44  7C 06 20 2E */	lwzx r0, r6, r4
/* 803910E8 0038CD48  7C 00 22 14 */	add r0, r0, r4
/* 803910EC 0038CD4C  7C 06 21 2E */	stwx r0, r6, r4
/* 803910F0 0038CD50  42 00 FF EC */	bdnz lbl_803910DC
lbl_803910F4:
/* 803910F4 0038CD54  38 00 00 01 */	li r0, 1
/* 803910F8 0038CD58  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803910FC:
/* 803910FC 0038CD5C  90 83 00 00 */	stw r4, 0(r3)
/* 80391100 0038CD60  38 60 00 00 */	li r3, 0
/* 80391104 0038CD64  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80391108 0038CD68  38 05 00 01 */	addi r0, r5, 1
/* 8039110C 0038CD6C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80391110 0038CD70  4E 80 00 20 */	blr 

.global func_80391114
func_80391114:
/* 80391114 0038CD74  80 83 00 00 */	lwz r4, 0(r3)
/* 80391118 0038CD78  38 A0 00 00 */	li r5, 0
/* 8039111C 0038CD7C  2C 04 00 00 */	cmpwi r4, 0
/* 80391120 0038CD80  41 82 00 20 */	beq lbl_80391140
/* 80391124 0038CD84  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80391128 0038CD88  2C 05 00 00 */	cmpwi r5, 0
/* 8039112C 0038CD8C  41 82 00 0C */	beq lbl_80391138
/* 80391130 0038CD90  38 A5 FF FF */	addi r5, r5, -1
/* 80391134 0038CD94  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80391138:
/* 80391138 0038CD98  38 00 00 00 */	li r0, 0
/* 8039113C 0038CD9C  90 03 00 00 */	stw r0, 0(r3)
lbl_80391140:
/* 80391140 0038CDA0  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80391144 0038CDA4  4E 80 00 20 */	blr 

.global func_80391148
func_80391148:
/* 80391148 0038CDA8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039114C 0038CDAC  2C 03 00 00 */	cmpwi r3, 0
/* 80391150 0038CDB0  40 82 00 0C */	bne lbl_8039115C
/* 80391154 0038CDB4  38 60 00 00 */	li r3, 0
/* 80391158 0038CDB8  4E 80 00 20 */	blr 
lbl_8039115C:
/* 8039115C 0038CDBC  2C 04 00 00 */	cmpwi r4, 0
/* 80391160 0038CDC0  40 80 00 0C */	bge lbl_8039116C
/* 80391164 0038CDC4  38 60 00 00 */	li r3, 0
/* 80391168 0038CDC8  4E 80 00 20 */	blr 
lbl_8039116C:
/* 8039116C 0038CDCC  1C 04 00 48 */	mulli r0, r4, 0x48
/* 80391170 0038CDD0  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80391174 0038CDD4  7C 63 02 14 */	add r3, r3, r0
/* 80391178 0038CDD8  4E 80 00 20 */	blr 

.global func_8039117C
func_8039117C:
/* 8039117C 0038CDDC  80 63 00 00 */	lwz r3, 0(r3)
/* 80391180 0038CDE0  2C 03 00 00 */	cmpwi r3, 0
/* 80391184 0038CDE4  41 82 00 0C */	beq lbl_80391190
/* 80391188 0038CDE8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039118C 0038CDEC  4E 80 00 20 */	blr 
lbl_80391190:
/* 80391190 0038CDF0  38 60 00 00 */	li r3, 0
/* 80391194 0038CDF4  4E 80 00 20 */	blr 

.global func_80391198
func_80391198:
/* 80391198 0038CDF8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039119C 0038CDFC  7C 08 02 A6 */	mflr r0
/* 803911A0 0038CE00  90 01 00 14 */	stw r0, 0x14(r1)
/* 803911A4 0038CE04  4B FF FF A5 */	bl func_80391148
/* 803911A8 0038CE08  2C 03 00 00 */	cmpwi r3, 0
/* 803911AC 0038CE0C  41 82 00 0C */	beq lbl_803911B8
/* 803911B0 0038CE10  A0 63 00 14 */	lhz r3, 0x14(r3)
/* 803911B4 0038CE14  48 00 00 08 */	b lbl_803911BC
lbl_803911B8:
/* 803911B8 0038CE18  38 60 00 00 */	li r3, 0
lbl_803911BC:
/* 803911BC 0038CE1C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803911C0 0038CE20  7C 08 03 A6 */	mtlr r0
/* 803911C4 0038CE24  38 21 00 10 */	addi r1, r1, 0x10
/* 803911C8 0038CE28  4E 80 00 20 */	blr 

.global func_803911CC
func_803911CC:
/* 803911CC 0038CE2C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803911D0 0038CE30  7C 08 02 A6 */	mflr r0
/* 803911D4 0038CE34  90 01 00 14 */	stw r0, 0x14(r1)
/* 803911D8 0038CE38  4B FF FF 71 */	bl func_80391148
/* 803911DC 0038CE3C  2C 03 00 00 */	cmpwi r3, 0
/* 803911E0 0038CE40  41 82 00 0C */	beq lbl_803911EC
/* 803911E4 0038CE44  88 63 00 18 */	lbz r3, 0x18(r3)
/* 803911E8 0038CE48  48 00 00 08 */	b lbl_803911F0
lbl_803911EC:
/* 803911EC 0038CE4C  38 60 00 00 */	li r3, 0
lbl_803911F0:
/* 803911F0 0038CE50  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803911F4 0038CE54  7C 08 03 A6 */	mtlr r0
/* 803911F8 0038CE58  38 21 00 10 */	addi r1, r1, 0x10
/* 803911FC 0038CE5C  4E 80 00 20 */	blr 

.global func_80391200
func_80391200:
/* 80391200 0038CE60  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391204 0038CE64  7C 08 02 A6 */	mflr r0
/* 80391208 0038CE68  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039120C 0038CE6C  4B FF FF 3D */	bl func_80391148
/* 80391210 0038CE70  2C 03 00 00 */	cmpwi r3, 0
/* 80391214 0038CE74  41 82 00 10 */	beq lbl_80391224
/* 80391218 0038CE78  80 03 00 00 */	lwz r0, 0(r3)
/* 8039121C 0038CE7C  54 03 1F 7E */	srwi r3, r0, 0x1d
/* 80391220 0038CE80  48 00 00 08 */	b lbl_80391228
lbl_80391224:
/* 80391224 0038CE84  38 60 00 00 */	li r3, 0
lbl_80391228:
/* 80391228 0038CE88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039122C 0038CE8C  7C 08 03 A6 */	mtlr r0
/* 80391230 0038CE90  38 21 00 10 */	addi r1, r1, 0x10
/* 80391234 0038CE94  4E 80 00 20 */	blr 

.global func_80391238
func_80391238:
/* 80391238 0038CE98  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039123C 0038CE9C  7C 08 02 A6 */	mflr r0
/* 80391240 0038CEA0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391244 0038CEA4  4B FF FF 05 */	bl func_80391148
/* 80391248 0038CEA8  2C 03 00 00 */	cmpwi r3, 0
/* 8039124C 0038CEAC  41 82 00 10 */	beq lbl_8039125C
/* 80391250 0038CEB0  80 03 00 00 */	lwz r0, 0(r3)
/* 80391254 0038CEB4  54 03 37 FE */	rlwinm r3, r0, 6, 0x1f, 0x1f
/* 80391258 0038CEB8  48 00 00 08 */	b lbl_80391260
lbl_8039125C:
/* 8039125C 0038CEBC  38 60 00 00 */	li r3, 0
lbl_80391260:
/* 80391260 0038CEC0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391264 0038CEC4  7C 08 03 A6 */	mtlr r0
/* 80391268 0038CEC8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039126C 0038CECC  4E 80 00 20 */	blr 

.global func_80391270
func_80391270:
/* 80391270 0038CED0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391274 0038CED4  7C 08 02 A6 */	mflr r0
/* 80391278 0038CED8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039127C 0038CEDC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80391280 0038CEE0  7C BF 2B 78 */	mr r31, r5
/* 80391284 0038CEE4  4B FF FE C5 */	bl func_80391148
/* 80391288 0038CEE8  2C 03 00 00 */	cmpwi r3, 0
/* 8039128C 0038CEEC  40 82 00 0C */	bne lbl_80391298
/* 80391290 0038CEF0  38 60 00 00 */	li r3, 0
/* 80391294 0038CEF4  48 00 00 1C */	b lbl_803912B0
lbl_80391298:
/* 80391298 0038CEF8  28 1F 00 19 */	cmplwi r31, 0x19
/* 8039129C 0038CEFC  41 80 00 0C */	blt lbl_803912A8
/* 803912A0 0038CF00  38 60 00 00 */	li r3, 0
/* 803912A4 0038CF04  48 00 00 0C */	b lbl_803912B0
lbl_803912A8:
/* 803912A8 0038CF08  7C 63 FA 14 */	add r3, r3, r31
/* 803912AC 0038CF0C  88 63 00 19 */	lbz r3, 0x19(r3)
lbl_803912B0:
/* 803912B0 0038CF10  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803912B4 0038CF14  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803912B8 0038CF18  7C 08 03 A6 */	mtlr r0
/* 803912BC 0038CF1C  38 21 00 10 */	addi r1, r1, 0x10
/* 803912C0 0038CF20  4E 80 00 20 */	blr 

.global func_803912C4
func_803912C4:
/* 803912C4 0038CF24  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803912C8 0038CF28  7C 08 02 A6 */	mflr r0
/* 803912CC 0038CF2C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803912D0 0038CF30  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803912D4 0038CF34  7C BF 2B 78 */	mr r31, r5
/* 803912D8 0038CF38  4B FF FE 71 */	bl func_80391148
/* 803912DC 0038CF3C  2C 03 00 00 */	cmpwi r3, 0
/* 803912E0 0038CF40  40 82 00 0C */	bne lbl_803912EC
/* 803912E4 0038CF44  38 60 00 00 */	li r3, 0
/* 803912E8 0038CF48  48 00 00 1C */	b lbl_80391304
lbl_803912EC:
/* 803912EC 0038CF4C  28 1F 00 16 */	cmplwi r31, 0x16
/* 803912F0 0038CF50  41 80 00 0C */	blt lbl_803912FC
/* 803912F4 0038CF54  38 60 00 00 */	li r3, 0
/* 803912F8 0038CF58  48 00 00 0C */	b lbl_80391304
lbl_803912FC:
/* 803912FC 0038CF5C  7C 63 FA 14 */	add r3, r3, r31
/* 80391300 0038CF60  88 63 00 32 */	lbz r3, 0x32(r3)
lbl_80391304:
/* 80391304 0038CF64  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391308 0038CF68  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039130C 0038CF6C  7C 08 03 A6 */	mtlr r0
/* 80391310 0038CF70  38 21 00 10 */	addi r1, r1, 0x10
/* 80391314 0038CF74  4E 80 00 20 */	blr 

.global func_80391318
func_80391318:
/* 80391318 0038CF78  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039131C 0038CF7C  7C 08 02 A6 */	mflr r0
/* 80391320 0038CF80  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391324 0038CF84  4B FF FE 25 */	bl func_80391148
/* 80391328 0038CF88  2C 03 00 00 */	cmpwi r3, 0
/* 8039132C 0038CF8C  41 82 00 0C */	beq lbl_80391338
/* 80391330 0038CF90  80 63 00 04 */	lwz r3, 4(r3)
/* 80391334 0038CF94  48 00 00 08 */	b lbl_8039133C
lbl_80391338:
/* 80391338 0038CF98  38 60 00 00 */	li r3, 0
lbl_8039133C:
/* 8039133C 0038CF9C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391340 0038CFA0  7C 08 03 A6 */	mtlr r0
/* 80391344 0038CFA4  38 21 00 10 */	addi r1, r1, 0x10
/* 80391348 0038CFA8  4E 80 00 20 */	blr 

.global func_8039134C
func_8039134C:
/* 8039134C 0038CFAC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391350 0038CFB0  7C 08 02 A6 */	mflr r0
/* 80391354 0038CFB4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391358 0038CFB8  4B FF FD F1 */	bl func_80391148
/* 8039135C 0038CFBC  2C 03 00 00 */	cmpwi r3, 0
/* 80391360 0038CFC0  41 82 00 0C */	beq lbl_8039136C
/* 80391364 0038CFC4  80 63 00 08 */	lwz r3, 8(r3)
/* 80391368 0038CFC8  48 00 00 08 */	b lbl_80391370
lbl_8039136C:
/* 8039136C 0038CFCC  38 60 00 00 */	li r3, 0
lbl_80391370:
/* 80391370 0038CFD0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391374 0038CFD4  7C 08 03 A6 */	mtlr r0
/* 80391378 0038CFD8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039137C 0038CFDC  4E 80 00 20 */	blr 

.global func_80391380
func_80391380:
/* 80391380 0038CFE0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391384 0038CFE4  7C 08 02 A6 */	mflr r0
/* 80391388 0038CFE8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039138C 0038CFEC  4B FF FD BD */	bl func_80391148
/* 80391390 0038CFF0  2C 03 00 00 */	cmpwi r3, 0
/* 80391394 0038CFF4  41 82 00 0C */	beq lbl_803913A0
/* 80391398 0038CFF8  80 63 00 0C */	lwz r3, 0xc(r3)
/* 8039139C 0038CFFC  48 00 00 08 */	b lbl_803913A4
lbl_803913A0:
/* 803913A0 0038D000  38 60 00 00 */	li r3, 0
lbl_803913A4:
/* 803913A4 0038D004  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803913A8 0038D008  7C 08 03 A6 */	mtlr r0
/* 803913AC 0038D00C  38 21 00 10 */	addi r1, r1, 0x10
/* 803913B0 0038D010  4E 80 00 20 */	blr 

.global func_803913B4
func_803913B4:
/* 803913B4 0038D014  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803913B8 0038D018  7C 08 02 A6 */	mflr r0
/* 803913BC 0038D01C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803913C0 0038D020  4B FF FD 89 */	bl func_80391148
/* 803913C4 0038D024  2C 03 00 00 */	cmpwi r3, 0
/* 803913C8 0038D028  41 82 00 0C */	beq lbl_803913D4
/* 803913CC 0038D02C  C0 23 00 10 */	lfs f1, 0x10(r3)
/* 803913D0 0038D030  48 00 00 08 */	b lbl_803913D8
lbl_803913D4:
/* 803913D4 0038D034  C0 22 A9 08 */	lfs f1, lbl_80642F08-_SDA2_BASE_(r2)
lbl_803913D8:
/* 803913D8 0038D038  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803913DC 0038D03C  7C 08 03 A6 */	mtlr r0
/* 803913E0 0038D040  38 21 00 10 */	addi r1, r1, 0x10
/* 803913E4 0038D044  4E 80 00 20 */	blr 

.global func_803913E8
func_803913E8:
/* 803913E8 0038D048  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803913EC 0038D04C  7C 08 02 A6 */	mflr r0
/* 803913F0 0038D050  2C 04 00 00 */	cmpwi r4, 0
/* 803913F4 0038D054  90 01 00 14 */	stw r0, 0x14(r1)
/* 803913F8 0038D058  38 00 00 00 */	li r0, 0
/* 803913FC 0038D05C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80391400 0038D060  7C 7F 1B 78 */	mr r31, r3
/* 80391404 0038D064  90 03 00 00 */	stw r0, 0(r3)
/* 80391408 0038D068  41 82 00 08 */	beq lbl_80391410
/* 8039140C 0038D06C  48 00 00 7D */	bl func_80391488
lbl_80391410:
/* 80391410 0038D070  7F E3 FB 78 */	mr r3, r31
/* 80391414 0038D074  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80391418 0038D078  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039141C 0038D07C  7C 08 03 A6 */	mtlr r0
/* 80391420 0038D080  38 21 00 10 */	addi r1, r1, 0x10
/* 80391424 0038D084  4E 80 00 20 */	blr 

.global func_80391428
func_80391428:
/* 80391428 0038D088  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039142C 0038D08C  7C 08 02 A6 */	mflr r0
/* 80391430 0038D090  2C 03 00 00 */	cmpwi r3, 0
/* 80391434 0038D094  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391438 0038D098  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039143C 0038D09C  7C 9F 23 78 */	mr r31, r4
/* 80391440 0038D0A0  93 C1 00 08 */	stw r30, 8(r1)
/* 80391444 0038D0A4  7C 7E 1B 78 */	mr r30, r3
/* 80391448 0038D0A8  41 82 00 24 */	beq lbl_8039146C
/* 8039144C 0038D0AC  80 03 00 00 */	lwz r0, 0(r3)
/* 80391450 0038D0B0  2C 00 00 00 */	cmpwi r0, 0
/* 80391454 0038D0B4  41 82 00 08 */	beq lbl_8039145C
/* 80391458 0038D0B8  48 00 01 95 */	bl func_803915EC
lbl_8039145C:
/* 8039145C 0038D0BC  2C 1F 00 00 */	cmpwi r31, 0
/* 80391460 0038D0C0  40 81 00 0C */	ble lbl_8039146C
/* 80391464 0038D0C4  7F C3 F3 78 */	mr r3, r30
/* 80391468 0038D0C8  4B E4 96 51 */	bl __dl__FPv
lbl_8039146C:
/* 8039146C 0038D0CC  7F C3 F3 78 */	mr r3, r30
/* 80391470 0038D0D0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80391474 0038D0D4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80391478 0038D0D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039147C 0038D0DC  7C 08 03 A6 */	mtlr r0
/* 80391480 0038D0E0  38 21 00 10 */	addi r1, r1, 0x10
/* 80391484 0038D0E4  4E 80 00 20 */	blr 

.global func_80391488
func_80391488:
/* 80391488 0038D0E8  2C 04 00 00 */	cmpwi r4, 0
/* 8039148C 0038D0EC  40 82 00 0C */	bne lbl_80391498
/* 80391490 0038D0F0  38 60 FF FF */	li r3, -1
/* 80391494 0038D0F4  4E 80 00 20 */	blr 
lbl_80391498:
/* 80391498 0038D0F8  80 03 00 00 */	lwz r0, 0(r3)
/* 8039149C 0038D0FC  2C 00 00 00 */	cmpwi r0, 0
/* 803914A0 0038D100  41 82 00 0C */	beq lbl_803914AC
/* 803914A4 0038D104  38 60 FF FE */	li r3, -2
/* 803914A8 0038D108  4E 80 00 20 */	blr 
lbl_803914AC:
/* 803914AC 0038D10C  80 04 00 04 */	lwz r0, 4(r4)
/* 803914B0 0038D110  28 00 00 14 */	cmplwi r0, 0x14
/* 803914B4 0038D114  41 82 00 0C */	beq lbl_803914C0
/* 803914B8 0038D118  38 60 FF FD */	li r3, -3
/* 803914BC 0038D11C  4E 80 00 20 */	blr 
lbl_803914C0:
/* 803914C0 0038D120  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803914C4 0038D124  2C 00 00 00 */	cmpwi r0, 0
/* 803914C8 0038D128  40 82 01 0C */	bne lbl_803915D4
/* 803914CC 0038D12C  80 04 00 08 */	lwz r0, 8(r4)
/* 803914D0 0038D130  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803914D4 0038D134  7C E0 22 14 */	add r7, r0, r4
/* 803914D8 0038D138  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803914DC 0038D13C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803914E0 0038D140  7C C6 22 14 */	add r6, r6, r4
/* 803914E4 0038D144  7C A5 22 14 */	add r5, r5, r4
/* 803914E8 0038D148  90 E4 00 08 */	stw r7, 8(r4)
/* 803914EC 0038D14C  2C 00 00 00 */	cmpwi r0, 0
/* 803914F0 0038D150  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803914F4 0038D154  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803914F8 0038D158  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803914FC 0038D15C  41 82 00 0C */	beq lbl_80391508
/* 80391500 0038D160  7C 00 22 14 */	add r0, r0, r4
/* 80391504 0038D164  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80391508:
/* 80391508 0038D168  2C 07 00 00 */	cmpwi r7, 0
/* 8039150C 0038D16C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80391510 0038D170  41 82 00 BC */	beq lbl_803915CC
/* 80391514 0038D174  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80391518 0038D178  7C 09 03 A6 */	mtctr r0
/* 8039151C 0038D17C  41 82 00 94 */	beq lbl_803915B0
lbl_80391520:
/* 80391520 0038D180  80 C5 00 00 */	lwz r6, 0(r5)
/* 80391524 0038D184  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391528 0038D188  7C 00 22 14 */	add r0, r0, r4
/* 8039152C 0038D18C  7C 06 21 2E */	stwx r0, r6, r4
/* 80391530 0038D190  80 C5 00 04 */	lwz r6, 4(r5)
/* 80391534 0038D194  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391538 0038D198  7C 00 22 14 */	add r0, r0, r4
/* 8039153C 0038D19C  7C 06 21 2E */	stwx r0, r6, r4
/* 80391540 0038D1A0  80 C5 00 08 */	lwz r6, 8(r5)
/* 80391544 0038D1A4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391548 0038D1A8  7C 00 22 14 */	add r0, r0, r4
/* 8039154C 0038D1AC  7C 06 21 2E */	stwx r0, r6, r4
/* 80391550 0038D1B0  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80391554 0038D1B4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391558 0038D1B8  7C 00 22 14 */	add r0, r0, r4
/* 8039155C 0038D1BC  7C 06 21 2E */	stwx r0, r6, r4
/* 80391560 0038D1C0  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80391564 0038D1C4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391568 0038D1C8  7C 00 22 14 */	add r0, r0, r4
/* 8039156C 0038D1CC  7C 06 21 2E */	stwx r0, r6, r4
/* 80391570 0038D1D0  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80391574 0038D1D4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391578 0038D1D8  7C 00 22 14 */	add r0, r0, r4
/* 8039157C 0038D1DC  7C 06 21 2E */	stwx r0, r6, r4
/* 80391580 0038D1E0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80391584 0038D1E4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391588 0038D1E8  7C 00 22 14 */	add r0, r0, r4
/* 8039158C 0038D1EC  7C 06 21 2E */	stwx r0, r6, r4
/* 80391590 0038D1F0  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80391594 0038D1F4  38 A5 00 20 */	addi r5, r5, 0x20
/* 80391598 0038D1F8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039159C 0038D1FC  7C 00 22 14 */	add r0, r0, r4
/* 803915A0 0038D200  7C 06 21 2E */	stwx r0, r6, r4
/* 803915A4 0038D204  42 00 FF 7C */	bdnz lbl_80391520
/* 803915A8 0038D208  70 E7 00 07 */	andi. r7, r7, 7
/* 803915AC 0038D20C  41 82 00 20 */	beq lbl_803915CC
lbl_803915B0:
/* 803915B0 0038D210  7C E9 03 A6 */	mtctr r7
lbl_803915B4:
/* 803915B4 0038D214  80 C5 00 00 */	lwz r6, 0(r5)
/* 803915B8 0038D218  38 A5 00 04 */	addi r5, r5, 4
/* 803915BC 0038D21C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803915C0 0038D220  7C 00 22 14 */	add r0, r0, r4
/* 803915C4 0038D224  7C 06 21 2E */	stwx r0, r6, r4
/* 803915C8 0038D228  42 00 FF EC */	bdnz lbl_803915B4
lbl_803915CC:
/* 803915CC 0038D22C  38 00 00 01 */	li r0, 1
/* 803915D0 0038D230  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803915D4:
/* 803915D4 0038D234  90 83 00 00 */	stw r4, 0(r3)
/* 803915D8 0038D238  38 60 00 00 */	li r3, 0
/* 803915DC 0038D23C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803915E0 0038D240  38 05 00 01 */	addi r0, r5, 1
/* 803915E4 0038D244  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803915E8 0038D248  4E 80 00 20 */	blr 

.global func_803915EC
func_803915EC:
/* 803915EC 0038D24C  80 83 00 00 */	lwz r4, 0(r3)
/* 803915F0 0038D250  38 A0 00 00 */	li r5, 0
/* 803915F4 0038D254  2C 04 00 00 */	cmpwi r4, 0
/* 803915F8 0038D258  41 82 00 20 */	beq lbl_80391618
/* 803915FC 0038D25C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80391600 0038D260  2C 05 00 00 */	cmpwi r5, 0
/* 80391604 0038D264  41 82 00 0C */	beq lbl_80391610
/* 80391608 0038D268  38 A5 FF FF */	addi r5, r5, -1
/* 8039160C 0038D26C  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80391610:
/* 80391610 0038D270  38 00 00 00 */	li r0, 0
/* 80391614 0038D274  90 03 00 00 */	stw r0, 0(r3)
lbl_80391618:
/* 80391618 0038D278  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 8039161C 0038D27C  4E 80 00 20 */	blr 

.global func_80391620
func_80391620:
/* 80391620 0038D280  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391624 0038D284  7C 08 02 A6 */	mflr r0
/* 80391628 0038D288  2C 04 00 00 */	cmpwi r4, 0
/* 8039162C 0038D28C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391630 0038D290  38 00 00 00 */	li r0, 0
/* 80391634 0038D294  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80391638 0038D298  7C 7F 1B 78 */	mr r31, r3
/* 8039163C 0038D29C  90 03 00 00 */	stw r0, 0(r3)
/* 80391640 0038D2A0  41 82 00 08 */	beq lbl_80391648
/* 80391644 0038D2A4  48 00 00 7D */	bl func_803916C0
lbl_80391648:
/* 80391648 0038D2A8  7F E3 FB 78 */	mr r3, r31
/* 8039164C 0038D2AC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80391650 0038D2B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391654 0038D2B4  7C 08 03 A6 */	mtlr r0
/* 80391658 0038D2B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039165C 0038D2BC  4E 80 00 20 */	blr 

.global func_80391660
func_80391660:
/* 80391660 0038D2C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391664 0038D2C4  7C 08 02 A6 */	mflr r0
/* 80391668 0038D2C8  2C 03 00 00 */	cmpwi r3, 0
/* 8039166C 0038D2CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391670 0038D2D0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80391674 0038D2D4  7C 9F 23 78 */	mr r31, r4
/* 80391678 0038D2D8  93 C1 00 08 */	stw r30, 8(r1)
/* 8039167C 0038D2DC  7C 7E 1B 78 */	mr r30, r3
/* 80391680 0038D2E0  41 82 00 24 */	beq lbl_803916A4
/* 80391684 0038D2E4  80 03 00 00 */	lwz r0, 0(r3)
/* 80391688 0038D2E8  2C 00 00 00 */	cmpwi r0, 0
/* 8039168C 0038D2EC  41 82 00 08 */	beq lbl_80391694
/* 80391690 0038D2F0  48 00 01 95 */	bl func_80391824
lbl_80391694:
/* 80391694 0038D2F4  2C 1F 00 00 */	cmpwi r31, 0
/* 80391698 0038D2F8  40 81 00 0C */	ble lbl_803916A4
/* 8039169C 0038D2FC  7F C3 F3 78 */	mr r3, r30
/* 803916A0 0038D300  4B E4 94 19 */	bl __dl__FPv
lbl_803916A4:
/* 803916A4 0038D304  7F C3 F3 78 */	mr r3, r30
/* 803916A8 0038D308  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803916AC 0038D30C  83 C1 00 08 */	lwz r30, 8(r1)
/* 803916B0 0038D310  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803916B4 0038D314  7C 08 03 A6 */	mtlr r0
/* 803916B8 0038D318  38 21 00 10 */	addi r1, r1, 0x10
/* 803916BC 0038D31C  4E 80 00 20 */	blr 

.global func_803916C0
func_803916C0:
/* 803916C0 0038D320  2C 04 00 00 */	cmpwi r4, 0
/* 803916C4 0038D324  40 82 00 0C */	bne lbl_803916D0
/* 803916C8 0038D328  38 60 FF FF */	li r3, -1
/* 803916CC 0038D32C  4E 80 00 20 */	blr 
lbl_803916D0:
/* 803916D0 0038D330  80 03 00 00 */	lwz r0, 0(r3)
/* 803916D4 0038D334  2C 00 00 00 */	cmpwi r0, 0
/* 803916D8 0038D338  41 82 00 0C */	beq lbl_803916E4
/* 803916DC 0038D33C  38 60 FF FE */	li r3, -2
/* 803916E0 0038D340  4E 80 00 20 */	blr 
lbl_803916E4:
/* 803916E4 0038D344  80 04 00 04 */	lwz r0, 4(r4)
/* 803916E8 0038D348  28 00 00 34 */	cmplwi r0, 0x34
/* 803916EC 0038D34C  41 82 00 0C */	beq lbl_803916F8
/* 803916F0 0038D350  38 60 FF FD */	li r3, -3
/* 803916F4 0038D354  4E 80 00 20 */	blr 
lbl_803916F8:
/* 803916F8 0038D358  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803916FC 0038D35C  2C 00 00 00 */	cmpwi r0, 0
/* 80391700 0038D360  40 82 01 0C */	bne lbl_8039180C
/* 80391704 0038D364  80 04 00 08 */	lwz r0, 8(r4)
/* 80391708 0038D368  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039170C 0038D36C  7C E0 22 14 */	add r7, r0, r4
/* 80391710 0038D370  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80391714 0038D374  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80391718 0038D378  7C C6 22 14 */	add r6, r6, r4
/* 8039171C 0038D37C  7C A5 22 14 */	add r5, r5, r4
/* 80391720 0038D380  90 E4 00 08 */	stw r7, 8(r4)
/* 80391724 0038D384  2C 00 00 00 */	cmpwi r0, 0
/* 80391728 0038D388  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8039172C 0038D38C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80391730 0038D390  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80391734 0038D394  41 82 00 0C */	beq lbl_80391740
/* 80391738 0038D398  7C 00 22 14 */	add r0, r0, r4
/* 8039173C 0038D39C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80391740:
/* 80391740 0038D3A0  2C 07 00 00 */	cmpwi r7, 0
/* 80391744 0038D3A4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80391748 0038D3A8  41 82 00 BC */	beq lbl_80391804
/* 8039174C 0038D3AC  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80391750 0038D3B0  7C 09 03 A6 */	mtctr r0
/* 80391754 0038D3B4  41 82 00 94 */	beq lbl_803917E8
lbl_80391758:
/* 80391758 0038D3B8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039175C 0038D3BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391760 0038D3C0  7C 00 22 14 */	add r0, r0, r4
/* 80391764 0038D3C4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391768 0038D3C8  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039176C 0038D3CC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391770 0038D3D0  7C 00 22 14 */	add r0, r0, r4
/* 80391774 0038D3D4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391778 0038D3D8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039177C 0038D3DC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391780 0038D3E0  7C 00 22 14 */	add r0, r0, r4
/* 80391784 0038D3E4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391788 0038D3E8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039178C 0038D3EC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80391790 0038D3F0  7C 00 22 14 */	add r0, r0, r4
/* 80391794 0038D3F4  7C 06 21 2E */	stwx r0, r6, r4
/* 80391798 0038D3F8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039179C 0038D3FC  7C 06 20 2E */	lwzx r0, r6, r4
/* 803917A0 0038D400  7C 00 22 14 */	add r0, r0, r4
/* 803917A4 0038D404  7C 06 21 2E */	stwx r0, r6, r4
/* 803917A8 0038D408  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803917AC 0038D40C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803917B0 0038D410  7C 00 22 14 */	add r0, r0, r4
/* 803917B4 0038D414  7C 06 21 2E */	stwx r0, r6, r4
/* 803917B8 0038D418  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803917BC 0038D41C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803917C0 0038D420  7C 00 22 14 */	add r0, r0, r4
/* 803917C4 0038D424  7C 06 21 2E */	stwx r0, r6, r4
/* 803917C8 0038D428  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803917CC 0038D42C  38 A5 00 20 */	addi r5, r5, 0x20
/* 803917D0 0038D430  7C 06 20 2E */	lwzx r0, r6, r4
/* 803917D4 0038D434  7C 00 22 14 */	add r0, r0, r4
/* 803917D8 0038D438  7C 06 21 2E */	stwx r0, r6, r4
/* 803917DC 0038D43C  42 00 FF 7C */	bdnz lbl_80391758
/* 803917E0 0038D440  70 E7 00 07 */	andi. r7, r7, 7
/* 803917E4 0038D444  41 82 00 20 */	beq lbl_80391804
lbl_803917E8:
/* 803917E8 0038D448  7C E9 03 A6 */	mtctr r7
lbl_803917EC:
/* 803917EC 0038D44C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803917F0 0038D450  38 A5 00 04 */	addi r5, r5, 4
/* 803917F4 0038D454  7C 06 20 2E */	lwzx r0, r6, r4
/* 803917F8 0038D458  7C 00 22 14 */	add r0, r0, r4
/* 803917FC 0038D45C  7C 06 21 2E */	stwx r0, r6, r4
/* 80391800 0038D460  42 00 FF EC */	bdnz lbl_803917EC
lbl_80391804:
/* 80391804 0038D464  38 00 00 01 */	li r0, 1
/* 80391808 0038D468  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039180C:
/* 8039180C 0038D46C  90 83 00 00 */	stw r4, 0(r3)
/* 80391810 0038D470  38 60 00 00 */	li r3, 0
/* 80391814 0038D474  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80391818 0038D478  38 05 00 01 */	addi r0, r5, 1
/* 8039181C 0038D47C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80391820 0038D480  4E 80 00 20 */	blr 

.global func_80391824
func_80391824:
/* 80391824 0038D484  80 83 00 00 */	lwz r4, 0(r3)
/* 80391828 0038D488  38 A0 00 00 */	li r5, 0
/* 8039182C 0038D48C  2C 04 00 00 */	cmpwi r4, 0
/* 80391830 0038D490  41 82 00 20 */	beq lbl_80391850
/* 80391834 0038D494  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80391838 0038D498  2C 05 00 00 */	cmpwi r5, 0
/* 8039183C 0038D49C  41 82 00 0C */	beq lbl_80391848
/* 80391840 0038D4A0  38 A5 FF FF */	addi r5, r5, -1
/* 80391844 0038D4A4  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80391848:
/* 80391848 0038D4A8  38 00 00 00 */	li r0, 0
/* 8039184C 0038D4AC  90 03 00 00 */	stw r0, 0(r3)
lbl_80391850:
/* 80391850 0038D4B0  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80391854 0038D4B4  4E 80 00 20 */	blr 

.global func_80391858
func_80391858:
/* 80391858 0038D4B8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039185C 0038D4BC  2C 03 00 00 */	cmpwi r3, 0
/* 80391860 0038D4C0  40 82 00 0C */	bne lbl_8039186C
/* 80391864 0038D4C4  38 60 00 00 */	li r3, 0
/* 80391868 0038D4C8  4E 80 00 20 */	blr 
lbl_8039186C:
/* 8039186C 0038D4CC  2C 04 00 00 */	cmpwi r4, 0
/* 80391870 0038D4D0  40 80 00 0C */	bge lbl_8039187C
/* 80391874 0038D4D4  38 60 00 00 */	li r3, 0
/* 80391878 0038D4D8  4E 80 00 20 */	blr 
lbl_8039187C:
/* 8039187C 0038D4DC  1C 04 00 34 */	mulli r0, r4, 0x34
/* 80391880 0038D4E0  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80391884 0038D4E4  7C 63 02 14 */	add r3, r3, r0
/* 80391888 0038D4E8  4E 80 00 20 */	blr 

.global func_8039188C
func_8039188C:
/* 8039188C 0038D4EC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391890 0038D4F0  7C 08 02 A6 */	mflr r0
/* 80391894 0038D4F4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391898 0038D4F8  4B FF FF C1 */	bl func_80391858
/* 8039189C 0038D4FC  2C 03 00 00 */	cmpwi r3, 0
/* 803918A0 0038D500  41 82 00 0C */	beq lbl_803918AC
/* 803918A4 0038D504  88 63 00 1E */	lbz r3, 0x1e(r3)
/* 803918A8 0038D508  48 00 00 08 */	b lbl_803918B0
lbl_803918AC:
/* 803918AC 0038D50C  38 60 00 00 */	li r3, 0
lbl_803918B0:
/* 803918B0 0038D510  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803918B4 0038D514  7C 08 03 A6 */	mtlr r0
/* 803918B8 0038D518  38 21 00 10 */	addi r1, r1, 0x10
/* 803918BC 0038D51C  4E 80 00 20 */	blr 

.global func_803918C0
func_803918C0:
/* 803918C0 0038D520  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803918C4 0038D524  7C 08 02 A6 */	mflr r0
/* 803918C8 0038D528  90 01 00 14 */	stw r0, 0x14(r1)
/* 803918CC 0038D52C  4B FF FF 8D */	bl func_80391858
/* 803918D0 0038D530  2C 03 00 00 */	cmpwi r3, 0
/* 803918D4 0038D534  41 82 00 0C */	beq lbl_803918E0
/* 803918D8 0038D538  88 63 00 1F */	lbz r3, 0x1f(r3)
/* 803918DC 0038D53C  48 00 00 08 */	b lbl_803918E4
lbl_803918E0:
/* 803918E0 0038D540  38 60 00 00 */	li r3, 0
lbl_803918E4:
/* 803918E4 0038D544  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803918E8 0038D548  7C 08 03 A6 */	mtlr r0
/* 803918EC 0038D54C  38 21 00 10 */	addi r1, r1, 0x10
/* 803918F0 0038D550  4E 80 00 20 */	blr 

.global func_803918F4
func_803918F4:
/* 803918F4 0038D554  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803918F8 0038D558  7C 08 02 A6 */	mflr r0
/* 803918FC 0038D55C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391900 0038D560  4B FF FF 59 */	bl func_80391858
/* 80391904 0038D564  2C 03 00 00 */	cmpwi r3, 0
/* 80391908 0038D568  41 82 00 0C */	beq lbl_80391914
/* 8039190C 0038D56C  88 63 00 20 */	lbz r3, 0x20(r3)
/* 80391910 0038D570  48 00 00 08 */	b lbl_80391918
lbl_80391914:
/* 80391914 0038D574  38 60 00 00 */	li r3, 0
lbl_80391918:
/* 80391918 0038D578  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039191C 0038D57C  7C 08 03 A6 */	mtlr r0
/* 80391920 0038D580  38 21 00 10 */	addi r1, r1, 0x10
/* 80391924 0038D584  4E 80 00 20 */	blr 

.global func_80391928
func_80391928:
/* 80391928 0038D588  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039192C 0038D58C  7C 08 02 A6 */	mflr r0
/* 80391930 0038D590  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391934 0038D594  4B FF FF 25 */	bl func_80391858
/* 80391938 0038D598  2C 03 00 00 */	cmpwi r3, 0
/* 8039193C 0038D59C  41 82 00 0C */	beq lbl_80391948
/* 80391940 0038D5A0  88 63 00 21 */	lbz r3, 0x21(r3)
/* 80391944 0038D5A4  48 00 00 08 */	b lbl_8039194C
lbl_80391948:
/* 80391948 0038D5A8  38 60 00 00 */	li r3, 0
lbl_8039194C:
/* 8039194C 0038D5AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391950 0038D5B0  7C 08 03 A6 */	mtlr r0
/* 80391954 0038D5B4  38 21 00 10 */	addi r1, r1, 0x10
/* 80391958 0038D5B8  4E 80 00 20 */	blr 

.global func_8039195C
func_8039195C:
/* 8039195C 0038D5BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391960 0038D5C0  7C 08 02 A6 */	mflr r0
/* 80391964 0038D5C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391968 0038D5C8  4B FF FE F1 */	bl func_80391858
/* 8039196C 0038D5CC  2C 03 00 00 */	cmpwi r3, 0
/* 80391970 0038D5D0  41 82 00 0C */	beq lbl_8039197C
/* 80391974 0038D5D4  88 63 00 22 */	lbz r3, 0x22(r3)
/* 80391978 0038D5D8  48 00 00 08 */	b lbl_80391980
lbl_8039197C:
/* 8039197C 0038D5DC  38 60 00 00 */	li r3, 0
lbl_80391980:
/* 80391980 0038D5E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391984 0038D5E4  7C 08 03 A6 */	mtlr r0
/* 80391988 0038D5E8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039198C 0038D5EC  4E 80 00 20 */	blr 

.global func_80391990
func_80391990:
/* 80391990 0038D5F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391994 0038D5F4  7C 08 02 A6 */	mflr r0
/* 80391998 0038D5F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039199C 0038D5FC  4B FF FE BD */	bl func_80391858
/* 803919A0 0038D600  2C 03 00 00 */	cmpwi r3, 0
/* 803919A4 0038D604  41 82 00 0C */	beq lbl_803919B0
/* 803919A8 0038D608  88 63 00 23 */	lbz r3, 0x23(r3)
/* 803919AC 0038D60C  48 00 00 08 */	b lbl_803919B4
lbl_803919B0:
/* 803919B0 0038D610  38 60 00 00 */	li r3, 0
lbl_803919B4:
/* 803919B4 0038D614  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803919B8 0038D618  7C 08 03 A6 */	mtlr r0
/* 803919BC 0038D61C  38 21 00 10 */	addi r1, r1, 0x10
/* 803919C0 0038D620  4E 80 00 20 */	blr 

.global func_803919C4
func_803919C4:
/* 803919C4 0038D624  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803919C8 0038D628  7C 08 02 A6 */	mflr r0
/* 803919CC 0038D62C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803919D0 0038D630  4B FF FE 89 */	bl func_80391858
/* 803919D4 0038D634  2C 03 00 00 */	cmpwi r3, 0
/* 803919D8 0038D638  41 82 00 0C */	beq lbl_803919E4
/* 803919DC 0038D63C  88 63 00 24 */	lbz r3, 0x24(r3)
/* 803919E0 0038D640  48 00 00 08 */	b lbl_803919E8
lbl_803919E4:
/* 803919E4 0038D644  38 60 00 00 */	li r3, 0
lbl_803919E8:
/* 803919E8 0038D648  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803919EC 0038D64C  7C 08 03 A6 */	mtlr r0
/* 803919F0 0038D650  38 21 00 10 */	addi r1, r1, 0x10
/* 803919F4 0038D654  4E 80 00 20 */	blr 

.global func_803919F8
func_803919F8:
/* 803919F8 0038D658  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803919FC 0038D65C  7C 08 02 A6 */	mflr r0
/* 80391A00 0038D660  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391A04 0038D664  4B FF FE 55 */	bl func_80391858
/* 80391A08 0038D668  2C 03 00 00 */	cmpwi r3, 0
/* 80391A0C 0038D66C  41 82 00 0C */	beq lbl_80391A18
/* 80391A10 0038D670  88 63 00 25 */	lbz r3, 0x25(r3)
/* 80391A14 0038D674  48 00 00 08 */	b lbl_80391A1C
lbl_80391A18:
/* 80391A18 0038D678  38 60 00 00 */	li r3, 0
lbl_80391A1C:
/* 80391A1C 0038D67C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391A20 0038D680  7C 08 03 A6 */	mtlr r0
/* 80391A24 0038D684  38 21 00 10 */	addi r1, r1, 0x10
/* 80391A28 0038D688  4E 80 00 20 */	blr 

.global func_80391A2C
func_80391A2C:
/* 80391A2C 0038D68C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391A30 0038D690  7C 08 02 A6 */	mflr r0
/* 80391A34 0038D694  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391A38 0038D698  4B FF FE 21 */	bl func_80391858
/* 80391A3C 0038D69C  2C 03 00 00 */	cmpwi r3, 0
/* 80391A40 0038D6A0  41 82 00 0C */	beq lbl_80391A4C
/* 80391A44 0038D6A4  88 63 00 26 */	lbz r3, 0x26(r3)
/* 80391A48 0038D6A8  48 00 00 08 */	b lbl_80391A50
lbl_80391A4C:
/* 80391A4C 0038D6AC  38 60 00 00 */	li r3, 0
lbl_80391A50:
/* 80391A50 0038D6B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391A54 0038D6B4  7C 08 03 A6 */	mtlr r0
/* 80391A58 0038D6B8  38 21 00 10 */	addi r1, r1, 0x10
/* 80391A5C 0038D6BC  4E 80 00 20 */	blr 

.global func_80391A60
func_80391A60:
/* 80391A60 0038D6C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391A64 0038D6C4  7C 08 02 A6 */	mflr r0
/* 80391A68 0038D6C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391A6C 0038D6CC  4B FF FD ED */	bl func_80391858
/* 80391A70 0038D6D0  2C 03 00 00 */	cmpwi r3, 0
/* 80391A74 0038D6D4  41 82 00 0C */	beq lbl_80391A80
/* 80391A78 0038D6D8  88 63 00 27 */	lbz r3, 0x27(r3)
/* 80391A7C 0038D6DC  48 00 00 08 */	b lbl_80391A84
lbl_80391A80:
/* 80391A80 0038D6E0  38 60 00 00 */	li r3, 0
lbl_80391A84:
/* 80391A84 0038D6E4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391A88 0038D6E8  7C 08 03 A6 */	mtlr r0
/* 80391A8C 0038D6EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80391A90 0038D6F0  4E 80 00 20 */	blr 

.global func_80391A94
func_80391A94:
/* 80391A94 0038D6F4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391A98 0038D6F8  7C 08 02 A6 */	mflr r0
/* 80391A9C 0038D6FC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391AA0 0038D700  4B FF FD B9 */	bl func_80391858
/* 80391AA4 0038D704  2C 03 00 00 */	cmpwi r3, 0
/* 80391AA8 0038D708  41 82 00 10 */	beq lbl_80391AB8
/* 80391AAC 0038D70C  A0 03 00 28 */	lhz r0, 0x28(r3)
/* 80391AB0 0038D710  54 03 97 BE */	rlwinm r3, r0, 0x12, 0x1e, 0x1f
/* 80391AB4 0038D714  48 00 00 08 */	b lbl_80391ABC
lbl_80391AB8:
/* 80391AB8 0038D718  38 60 00 00 */	li r3, 0
lbl_80391ABC:
/* 80391ABC 0038D71C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391AC0 0038D720  7C 08 03 A6 */	mtlr r0
/* 80391AC4 0038D724  38 21 00 10 */	addi r1, r1, 0x10
/* 80391AC8 0038D728  4E 80 00 20 */	blr 

.global func_80391ACC
func_80391ACC:
/* 80391ACC 0038D72C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391AD0 0038D730  7C 08 02 A6 */	mflr r0
/* 80391AD4 0038D734  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391AD8 0038D738  4B FF FD 81 */	bl func_80391858
/* 80391ADC 0038D73C  2C 03 00 00 */	cmpwi r3, 0
/* 80391AE0 0038D740  41 82 00 10 */	beq lbl_80391AF0
/* 80391AE4 0038D744  A0 03 00 28 */	lhz r0, 0x28(r3)
/* 80391AE8 0038D748  54 03 A7 BE */	rlwinm r3, r0, 0x14, 0x1e, 0x1f
/* 80391AEC 0038D74C  48 00 00 08 */	b lbl_80391AF4
lbl_80391AF0:
/* 80391AF0 0038D750  38 60 00 00 */	li r3, 0
lbl_80391AF4:
/* 80391AF4 0038D754  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391AF8 0038D758  7C 08 03 A6 */	mtlr r0
/* 80391AFC 0038D75C  38 21 00 10 */	addi r1, r1, 0x10
/* 80391B00 0038D760  4E 80 00 20 */	blr 

.global func_80391B04
func_80391B04:
/* 80391B04 0038D764  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391B08 0038D768  7C 08 02 A6 */	mflr r0
/* 80391B0C 0038D76C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391B10 0038D770  4B FF FD 49 */	bl func_80391858
/* 80391B14 0038D774  2C 03 00 00 */	cmpwi r3, 0
/* 80391B18 0038D778  41 82 00 10 */	beq lbl_80391B28
/* 80391B1C 0038D77C  A0 03 00 28 */	lhz r0, 0x28(r3)
/* 80391B20 0038D780  54 03 B7 BE */	rlwinm r3, r0, 0x16, 0x1e, 0x1f
/* 80391B24 0038D784  48 00 00 08 */	b lbl_80391B2C
lbl_80391B28:
/* 80391B28 0038D788  38 60 00 00 */	li r3, 0
lbl_80391B2C:
/* 80391B2C 0038D78C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391B30 0038D790  7C 08 03 A6 */	mtlr r0
/* 80391B34 0038D794  38 21 00 10 */	addi r1, r1, 0x10
/* 80391B38 0038D798  4E 80 00 20 */	blr 

.global func_80391B3C
func_80391B3C:
/* 80391B3C 0038D79C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391B40 0038D7A0  7C 08 02 A6 */	mflr r0
/* 80391B44 0038D7A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391B48 0038D7A8  4B FF FD 11 */	bl func_80391858
/* 80391B4C 0038D7AC  2C 03 00 00 */	cmpwi r3, 0
/* 80391B50 0038D7B0  41 82 00 10 */	beq lbl_80391B60
/* 80391B54 0038D7B4  A0 03 00 28 */	lhz r0, 0x28(r3)
/* 80391B58 0038D7B8  54 03 C7 BE */	rlwinm r3, r0, 0x18, 0x1e, 0x1f
/* 80391B5C 0038D7BC  48 00 00 08 */	b lbl_80391B64
lbl_80391B60:
/* 80391B60 0038D7C0  38 60 00 00 */	li r3, 0
lbl_80391B64:
/* 80391B64 0038D7C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391B68 0038D7C8  7C 08 03 A6 */	mtlr r0
/* 80391B6C 0038D7CC  38 21 00 10 */	addi r1, r1, 0x10
/* 80391B70 0038D7D0  4E 80 00 20 */	blr 

.global func_80391B74
func_80391B74:
/* 80391B74 0038D7D4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391B78 0038D7D8  7C 08 02 A6 */	mflr r0
/* 80391B7C 0038D7DC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391B80 0038D7E0  4B FF FC D9 */	bl func_80391858
/* 80391B84 0038D7E4  2C 03 00 00 */	cmpwi r3, 0
/* 80391B88 0038D7E8  41 82 00 10 */	beq lbl_80391B98
/* 80391B8C 0038D7EC  A0 03 00 28 */	lhz r0, 0x28(r3)
/* 80391B90 0038D7F0  54 03 D7 BE */	rlwinm r3, r0, 0x1a, 0x1e, 0x1f
/* 80391B94 0038D7F4  48 00 00 08 */	b lbl_80391B9C
lbl_80391B98:
/* 80391B98 0038D7F8  38 60 00 00 */	li r3, 0
lbl_80391B9C:
/* 80391B9C 0038D7FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391BA0 0038D800  7C 08 03 A6 */	mtlr r0
/* 80391BA4 0038D804  38 21 00 10 */	addi r1, r1, 0x10
/* 80391BA8 0038D808  4E 80 00 20 */	blr 

.global func_80391BAC
func_80391BAC:
/* 80391BAC 0038D80C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391BB0 0038D810  7C 08 02 A6 */	mflr r0
/* 80391BB4 0038D814  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391BB8 0038D818  4B FF FC A1 */	bl func_80391858
/* 80391BBC 0038D81C  2C 03 00 00 */	cmpwi r3, 0
/* 80391BC0 0038D820  41 82 00 10 */	beq lbl_80391BD0
/* 80391BC4 0038D824  A0 03 00 28 */	lhz r0, 0x28(r3)
/* 80391BC8 0038D828  54 03 E7 BE */	rlwinm r3, r0, 0x1c, 0x1e, 0x1f
/* 80391BCC 0038D82C  48 00 00 08 */	b lbl_80391BD4
lbl_80391BD0:
/* 80391BD0 0038D830  38 60 00 00 */	li r3, 0
lbl_80391BD4:
/* 80391BD4 0038D834  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391BD8 0038D838  7C 08 03 A6 */	mtlr r0
/* 80391BDC 0038D83C  38 21 00 10 */	addi r1, r1, 0x10
/* 80391BE0 0038D840  4E 80 00 20 */	blr 

.global func_80391BE4
func_80391BE4:
/* 80391BE4 0038D844  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391BE8 0038D848  7C 08 02 A6 */	mflr r0
/* 80391BEC 0038D84C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391BF0 0038D850  4B FF FC 69 */	bl func_80391858
/* 80391BF4 0038D854  2C 03 00 00 */	cmpwi r3, 0
/* 80391BF8 0038D858  41 82 00 0C */	beq lbl_80391C04
/* 80391BFC 0038D85C  A0 63 00 10 */	lhz r3, 0x10(r3)
/* 80391C00 0038D860  48 00 00 08 */	b lbl_80391C08
lbl_80391C04:
/* 80391C04 0038D864  38 60 00 00 */	li r3, 0
lbl_80391C08:
/* 80391C08 0038D868  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391C0C 0038D86C  7C 08 03 A6 */	mtlr r0
/* 80391C10 0038D870  38 21 00 10 */	addi r1, r1, 0x10
/* 80391C14 0038D874  4E 80 00 20 */	blr 

.global func_80391C18
func_80391C18:
/* 80391C18 0038D878  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391C1C 0038D87C  7C 08 02 A6 */	mflr r0
/* 80391C20 0038D880  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391C24 0038D884  4B FF FC 35 */	bl func_80391858
/* 80391C28 0038D888  2C 03 00 00 */	cmpwi r3, 0
/* 80391C2C 0038D88C  41 82 00 0C */	beq lbl_80391C38
/* 80391C30 0038D890  A0 63 00 12 */	lhz r3, 0x12(r3)
/* 80391C34 0038D894  48 00 00 08 */	b lbl_80391C3C
lbl_80391C38:
/* 80391C38 0038D898  38 60 00 00 */	li r3, 0
lbl_80391C3C:
/* 80391C3C 0038D89C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391C40 0038D8A0  7C 08 03 A6 */	mtlr r0
/* 80391C44 0038D8A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80391C48 0038D8A8  4E 80 00 20 */	blr 

.global func_80391C4C
func_80391C4C:
/* 80391C4C 0038D8AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391C50 0038D8B0  7C 08 02 A6 */	mflr r0
/* 80391C54 0038D8B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391C58 0038D8B8  4B FF FC 01 */	bl func_80391858
/* 80391C5C 0038D8BC  2C 03 00 00 */	cmpwi r3, 0
/* 80391C60 0038D8C0  41 82 00 0C */	beq lbl_80391C6C
/* 80391C64 0038D8C4  88 63 00 2A */	lbz r3, 0x2a(r3)
/* 80391C68 0038D8C8  48 00 00 08 */	b lbl_80391C70
lbl_80391C6C:
/* 80391C6C 0038D8CC  38 60 00 00 */	li r3, 0
lbl_80391C70:
/* 80391C70 0038D8D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391C74 0038D8D4  7C 08 03 A6 */	mtlr r0
/* 80391C78 0038D8D8  38 21 00 10 */	addi r1, r1, 0x10
/* 80391C7C 0038D8DC  4E 80 00 20 */	blr 

.global func_80391C80
func_80391C80:
/* 80391C80 0038D8E0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391C84 0038D8E4  7C 08 02 A6 */	mflr r0
/* 80391C88 0038D8E8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391C8C 0038D8EC  4B FF FB CD */	bl func_80391858
/* 80391C90 0038D8F0  2C 03 00 00 */	cmpwi r3, 0
/* 80391C94 0038D8F4  41 82 00 0C */	beq lbl_80391CA0
/* 80391C98 0038D8F8  88 63 00 2B */	lbz r3, 0x2b(r3)
/* 80391C9C 0038D8FC  48 00 00 08 */	b lbl_80391CA4
lbl_80391CA0:
/* 80391CA0 0038D900  38 60 00 00 */	li r3, 0
lbl_80391CA4:
/* 80391CA4 0038D904  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391CA8 0038D908  7C 08 03 A6 */	mtlr r0
/* 80391CAC 0038D90C  38 21 00 10 */	addi r1, r1, 0x10
/* 80391CB0 0038D910  4E 80 00 20 */	blr 

.global func_80391CB4
func_80391CB4:
/* 80391CB4 0038D914  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391CB8 0038D918  7C 08 02 A6 */	mflr r0
/* 80391CBC 0038D91C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391CC0 0038D920  4B FF FB 99 */	bl func_80391858
/* 80391CC4 0038D924  2C 03 00 00 */	cmpwi r3, 0
/* 80391CC8 0038D928  41 82 00 0C */	beq lbl_80391CD4
/* 80391CCC 0038D92C  88 63 00 2C */	lbz r3, 0x2c(r3)
/* 80391CD0 0038D930  48 00 00 08 */	b lbl_80391CD8
lbl_80391CD4:
/* 80391CD4 0038D934  38 60 00 00 */	li r3, 0
lbl_80391CD8:
/* 80391CD8 0038D938  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391CDC 0038D93C  7C 08 03 A6 */	mtlr r0
/* 80391CE0 0038D940  38 21 00 10 */	addi r1, r1, 0x10
/* 80391CE4 0038D944  4E 80 00 20 */	blr 

.global func_80391CE8
func_80391CE8:
/* 80391CE8 0038D948  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391CEC 0038D94C  7C 08 02 A6 */	mflr r0
/* 80391CF0 0038D950  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391CF4 0038D954  4B FF FB 65 */	bl func_80391858
/* 80391CF8 0038D958  2C 03 00 00 */	cmpwi r3, 0
/* 80391CFC 0038D95C  41 82 00 0C */	beq lbl_80391D08
/* 80391D00 0038D960  88 63 00 2D */	lbz r3, 0x2d(r3)
/* 80391D04 0038D964  48 00 00 08 */	b lbl_80391D0C
lbl_80391D08:
/* 80391D08 0038D968  38 60 00 00 */	li r3, 0
lbl_80391D0C:
/* 80391D0C 0038D96C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391D10 0038D970  7C 08 03 A6 */	mtlr r0
/* 80391D14 0038D974  38 21 00 10 */	addi r1, r1, 0x10
/* 80391D18 0038D978  4E 80 00 20 */	blr 

.global func_80391D1C
func_80391D1C:
/* 80391D1C 0038D97C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391D20 0038D980  7C 08 02 A6 */	mflr r0
/* 80391D24 0038D984  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391D28 0038D988  4B FF FB 31 */	bl func_80391858
/* 80391D2C 0038D98C  2C 03 00 00 */	cmpwi r3, 0
/* 80391D30 0038D990  41 82 00 0C */	beq lbl_80391D3C
/* 80391D34 0038D994  88 63 00 2E */	lbz r3, 0x2e(r3)
/* 80391D38 0038D998  48 00 00 08 */	b lbl_80391D40
lbl_80391D3C:
/* 80391D3C 0038D99C  38 60 00 00 */	li r3, 0
lbl_80391D40:
/* 80391D40 0038D9A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391D44 0038D9A4  7C 08 03 A6 */	mtlr r0
/* 80391D48 0038D9A8  38 21 00 10 */	addi r1, r1, 0x10
/* 80391D4C 0038D9AC  4E 80 00 20 */	blr 

.global func_80391D50
func_80391D50:
/* 80391D50 0038D9B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391D54 0038D9B4  7C 08 02 A6 */	mflr r0
/* 80391D58 0038D9B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391D5C 0038D9BC  4B FF FA FD */	bl func_80391858
/* 80391D60 0038D9C0  2C 03 00 00 */	cmpwi r3, 0
/* 80391D64 0038D9C4  41 82 00 0C */	beq lbl_80391D70
/* 80391D68 0038D9C8  88 63 00 2F */	lbz r3, 0x2f(r3)
/* 80391D6C 0038D9CC  48 00 00 08 */	b lbl_80391D74
lbl_80391D70:
/* 80391D70 0038D9D0  38 60 00 00 */	li r3, 0
lbl_80391D74:
/* 80391D74 0038D9D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391D78 0038D9D8  7C 08 03 A6 */	mtlr r0
/* 80391D7C 0038D9DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80391D80 0038D9E0  4E 80 00 20 */	blr 

.global func_80391D84
func_80391D84:
/* 80391D84 0038D9E4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391D88 0038D9E8  7C 08 02 A6 */	mflr r0
/* 80391D8C 0038D9EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391D90 0038D9F0  4B FF FA C9 */	bl func_80391858
/* 80391D94 0038D9F4  2C 03 00 00 */	cmpwi r3, 0
/* 80391D98 0038D9F8  41 82 00 0C */	beq lbl_80391DA4
/* 80391D9C 0038D9FC  88 63 00 30 */	lbz r3, 0x30(r3)
/* 80391DA0 0038DA00  48 00 00 08 */	b lbl_80391DA8
lbl_80391DA4:
/* 80391DA4 0038DA04  38 60 00 00 */	li r3, 0
lbl_80391DA8:
/* 80391DA8 0038DA08  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391DAC 0038DA0C  7C 08 03 A6 */	mtlr r0
/* 80391DB0 0038DA10  38 21 00 10 */	addi r1, r1, 0x10
/* 80391DB4 0038DA14  4E 80 00 20 */	blr 

.global func_80391DB8
func_80391DB8:
/* 80391DB8 0038DA18  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391DBC 0038DA1C  7C 08 02 A6 */	mflr r0
/* 80391DC0 0038DA20  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391DC4 0038DA24  4B FF FA 95 */	bl func_80391858
/* 80391DC8 0038DA28  2C 03 00 00 */	cmpwi r3, 0
/* 80391DCC 0038DA2C  41 82 00 0C */	beq lbl_80391DD8
/* 80391DD0 0038DA30  88 63 00 31 */	lbz r3, 0x31(r3)
/* 80391DD4 0038DA34  48 00 00 08 */	b lbl_80391DDC
lbl_80391DD8:
/* 80391DD8 0038DA38  38 60 00 00 */	li r3, 0
lbl_80391DDC:
/* 80391DDC 0038DA3C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391DE0 0038DA40  7C 08 03 A6 */	mtlr r0
/* 80391DE4 0038DA44  38 21 00 10 */	addi r1, r1, 0x10
/* 80391DE8 0038DA48  4E 80 00 20 */	blr 

.global func_80391DEC
func_80391DEC:
/* 80391DEC 0038DA4C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391DF0 0038DA50  7C 08 02 A6 */	mflr r0
/* 80391DF4 0038DA54  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391DF8 0038DA58  4B FF FA 61 */	bl func_80391858
/* 80391DFC 0038DA5C  2C 03 00 00 */	cmpwi r3, 0
/* 80391E00 0038DA60  41 82 00 0C */	beq lbl_80391E0C
/* 80391E04 0038DA64  A0 63 00 16 */	lhz r3, 0x16(r3)
/* 80391E08 0038DA68  48 00 00 08 */	b lbl_80391E10
lbl_80391E0C:
/* 80391E0C 0038DA6C  38 60 00 00 */	li r3, 0
lbl_80391E10:
/* 80391E10 0038DA70  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391E14 0038DA74  7C 08 03 A6 */	mtlr r0
/* 80391E18 0038DA78  38 21 00 10 */	addi r1, r1, 0x10
/* 80391E1C 0038DA7C  4E 80 00 20 */	blr 

.global func_80391E20
func_80391E20:
/* 80391E20 0038DA80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391E24 0038DA84  7C 08 02 A6 */	mflr r0
/* 80391E28 0038DA88  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391E2C 0038DA8C  4B FF FA 2D */	bl func_80391858
/* 80391E30 0038DA90  2C 03 00 00 */	cmpwi r3, 0
/* 80391E34 0038DA94  41 82 00 0C */	beq lbl_80391E40
/* 80391E38 0038DA98  88 63 00 32 */	lbz r3, 0x32(r3)
/* 80391E3C 0038DA9C  48 00 00 08 */	b lbl_80391E44
lbl_80391E40:
/* 80391E40 0038DAA0  38 60 00 00 */	li r3, 0
lbl_80391E44:
/* 80391E44 0038DAA4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391E48 0038DAA8  7C 08 03 A6 */	mtlr r0
/* 80391E4C 0038DAAC  38 21 00 10 */	addi r1, r1, 0x10
/* 80391E50 0038DAB0  4E 80 00 20 */	blr 

.global func_80391E54
func_80391E54:
/* 80391E54 0038DAB4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391E58 0038DAB8  7C 08 02 A6 */	mflr r0
/* 80391E5C 0038DABC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391E60 0038DAC0  4B FF F9 F9 */	bl func_80391858
/* 80391E64 0038DAC4  2C 03 00 00 */	cmpwi r3, 0
/* 80391E68 0038DAC8  41 82 00 10 */	beq lbl_80391E78
/* 80391E6C 0038DACC  88 03 00 33 */	lbz r0, 0x33(r3)
/* 80391E70 0038DAD0  54 03 FE 7E */	rlwinm r3, r0, 0x1f, 0x19, 0x1f
/* 80391E74 0038DAD4  48 00 00 08 */	b lbl_80391E7C
lbl_80391E78:
/* 80391E78 0038DAD8  38 60 00 00 */	li r3, 0
lbl_80391E7C:
/* 80391E7C 0038DADC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391E80 0038DAE0  7C 08 03 A6 */	mtlr r0
/* 80391E84 0038DAE4  38 21 00 10 */	addi r1, r1, 0x10
/* 80391E88 0038DAE8  4E 80 00 20 */	blr 

.global func_80391E8C
func_80391E8C:
/* 80391E8C 0038DAEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391E90 0038DAF0  7C 08 02 A6 */	mflr r0
/* 80391E94 0038DAF4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391E98 0038DAF8  4B FF F9 C1 */	bl func_80391858
/* 80391E9C 0038DAFC  2C 03 00 00 */	cmpwi r3, 0
/* 80391EA0 0038DB00  41 82 00 10 */	beq lbl_80391EB0
/* 80391EA4 0038DB04  88 03 00 33 */	lbz r0, 0x33(r3)
/* 80391EA8 0038DB08  54 03 07 FE */	clrlwi r3, r0, 0x1f
/* 80391EAC 0038DB0C  48 00 00 08 */	b lbl_80391EB4
lbl_80391EB0:
/* 80391EB0 0038DB10  38 60 00 00 */	li r3, 0
lbl_80391EB4:
/* 80391EB4 0038DB14  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391EB8 0038DB18  7C 08 03 A6 */	mtlr r0
/* 80391EBC 0038DB1C  38 21 00 10 */	addi r1, r1, 0x10
/* 80391EC0 0038DB20  4E 80 00 20 */	blr 

.global func_80391EC4
func_80391EC4:
/* 80391EC4 0038DB24  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391EC8 0038DB28  7C 08 02 A6 */	mflr r0
/* 80391ECC 0038DB2C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391ED0 0038DB30  4B FF F9 89 */	bl func_80391858
/* 80391ED4 0038DB34  2C 03 00 00 */	cmpwi r3, 0
/* 80391ED8 0038DB38  41 82 00 0C */	beq lbl_80391EE4
/* 80391EDC 0038DB3C  80 63 00 00 */	lwz r3, 0(r3)
/* 80391EE0 0038DB40  48 00 00 08 */	b lbl_80391EE8
lbl_80391EE4:
/* 80391EE4 0038DB44  38 60 00 00 */	li r3, 0
lbl_80391EE8:
/* 80391EE8 0038DB48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391EEC 0038DB4C  7C 08 03 A6 */	mtlr r0
/* 80391EF0 0038DB50  38 21 00 10 */	addi r1, r1, 0x10
/* 80391EF4 0038DB54  4E 80 00 20 */	blr 

.global func_80391EF8
func_80391EF8:
/* 80391EF8 0038DB58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391EFC 0038DB5C  7C 08 02 A6 */	mflr r0
/* 80391F00 0038DB60  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391F04 0038DB64  4B FF F9 55 */	bl func_80391858
/* 80391F08 0038DB68  2C 03 00 00 */	cmpwi r3, 0
/* 80391F0C 0038DB6C  41 82 00 0C */	beq lbl_80391F18
/* 80391F10 0038DB70  80 63 00 04 */	lwz r3, 4(r3)
/* 80391F14 0038DB74  48 00 00 08 */	b lbl_80391F1C
lbl_80391F18:
/* 80391F18 0038DB78  38 60 00 00 */	li r3, 0
lbl_80391F1C:
/* 80391F1C 0038DB7C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391F20 0038DB80  7C 08 03 A6 */	mtlr r0
/* 80391F24 0038DB84  38 21 00 10 */	addi r1, r1, 0x10
/* 80391F28 0038DB88  4E 80 00 20 */	blr 

.global func_80391F2C
func_80391F2C:
/* 80391F2C 0038DB8C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391F30 0038DB90  7C 08 02 A6 */	mflr r0
/* 80391F34 0038DB94  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391F38 0038DB98  4B FF F9 21 */	bl func_80391858
/* 80391F3C 0038DB9C  2C 03 00 00 */	cmpwi r3, 0
/* 80391F40 0038DBA0  41 82 00 0C */	beq lbl_80391F4C
/* 80391F44 0038DBA4  80 63 00 08 */	lwz r3, 8(r3)
/* 80391F48 0038DBA8  48 00 00 08 */	b lbl_80391F50
lbl_80391F4C:
/* 80391F4C 0038DBAC  38 60 00 00 */	li r3, 0
lbl_80391F50:
/* 80391F50 0038DBB0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391F54 0038DBB4  7C 08 03 A6 */	mtlr r0
/* 80391F58 0038DBB8  38 21 00 10 */	addi r1, r1, 0x10
/* 80391F5C 0038DBBC  4E 80 00 20 */	blr 

.global func_80391F60
func_80391F60:
/* 80391F60 0038DBC0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391F64 0038DBC4  7C 08 02 A6 */	mflr r0
/* 80391F68 0038DBC8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391F6C 0038DBCC  4B FF F8 ED */	bl func_80391858
/* 80391F70 0038DBD0  2C 03 00 00 */	cmpwi r3, 0
/* 80391F74 0038DBD4  41 82 00 0C */	beq lbl_80391F80
/* 80391F78 0038DBD8  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80391F7C 0038DBDC  48 00 00 08 */	b lbl_80391F84
lbl_80391F80:
/* 80391F80 0038DBE0  38 60 00 00 */	li r3, 0
lbl_80391F84:
/* 80391F84 0038DBE4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391F88 0038DBE8  7C 08 03 A6 */	mtlr r0
/* 80391F8C 0038DBEC  38 21 00 10 */	addi r1, r1, 0x10
/* 80391F90 0038DBF0  4E 80 00 20 */	blr 

.global func_80391F94
func_80391F94:
/* 80391F94 0038DBF4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391F98 0038DBF8  7C 08 02 A6 */	mflr r0
/* 80391F9C 0038DBFC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391FA0 0038DC00  4B FF F8 B9 */	bl func_80391858
/* 80391FA4 0038DC04  2C 03 00 00 */	cmpwi r3, 0
/* 80391FA8 0038DC08  41 82 00 0C */	beq lbl_80391FB4
/* 80391FAC 0038DC0C  A0 63 00 18 */	lhz r3, 0x18(r3)
/* 80391FB0 0038DC10  48 00 00 08 */	b lbl_80391FB8
lbl_80391FB4:
/* 80391FB4 0038DC14  38 60 00 00 */	li r3, 0
lbl_80391FB8:
/* 80391FB8 0038DC18  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391FBC 0038DC1C  7C 08 03 A6 */	mtlr r0
/* 80391FC0 0038DC20  38 21 00 10 */	addi r1, r1, 0x10
/* 80391FC4 0038DC24  4E 80 00 20 */	blr 

.global func_80391FC8
func_80391FC8:
/* 80391FC8 0038DC28  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80391FCC 0038DC2C  7C 08 02 A6 */	mflr r0
/* 80391FD0 0038DC30  90 01 00 14 */	stw r0, 0x14(r1)
/* 80391FD4 0038DC34  4B FF F8 85 */	bl func_80391858
/* 80391FD8 0038DC38  2C 03 00 00 */	cmpwi r3, 0
/* 80391FDC 0038DC3C  41 82 00 0C */	beq lbl_80391FE8
/* 80391FE0 0038DC40  A0 63 00 1A */	lhz r3, 0x1a(r3)
/* 80391FE4 0038DC44  48 00 00 08 */	b lbl_80391FEC
lbl_80391FE8:
/* 80391FE8 0038DC48  38 60 00 00 */	li r3, 0
lbl_80391FEC:
/* 80391FEC 0038DC4C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80391FF0 0038DC50  7C 08 03 A6 */	mtlr r0
/* 80391FF4 0038DC54  38 21 00 10 */	addi r1, r1, 0x10
/* 80391FF8 0038DC58  4E 80 00 20 */	blr 

.global func_80391FFC
func_80391FFC:
/* 80391FFC 0038DC5C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392000 0038DC60  7C 08 02 A6 */	mflr r0
/* 80392004 0038DC64  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392008 0038DC68  4B FF F8 51 */	bl func_80391858
/* 8039200C 0038DC6C  2C 03 00 00 */	cmpwi r3, 0
/* 80392010 0038DC70  41 82 00 0C */	beq lbl_8039201C
/* 80392014 0038DC74  A0 63 00 1C */	lhz r3, 0x1c(r3)
/* 80392018 0038DC78  48 00 00 08 */	b lbl_80392020
lbl_8039201C:
/* 8039201C 0038DC7C  38 60 00 00 */	li r3, 0
lbl_80392020:
/* 80392020 0038DC80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392024 0038DC84  7C 08 03 A6 */	mtlr r0
/* 80392028 0038DC88  38 21 00 10 */	addi r1, r1, 0x10
/* 8039202C 0038DC8C  4E 80 00 20 */	blr 

.global func_80392030
func_80392030:
/* 80392030 0038DC90  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392034 0038DC94  7C 08 02 A6 */	mflr r0
/* 80392038 0038DC98  2C 04 00 00 */	cmpwi r4, 0
/* 8039203C 0038DC9C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392040 0038DCA0  38 00 00 00 */	li r0, 0
/* 80392044 0038DCA4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392048 0038DCA8  7C 7F 1B 78 */	mr r31, r3
/* 8039204C 0038DCAC  90 03 00 00 */	stw r0, 0(r3)
/* 80392050 0038DCB0  41 82 00 08 */	beq lbl_80392058
/* 80392054 0038DCB4  48 00 00 7D */	bl func_803920D0
lbl_80392058:
/* 80392058 0038DCB8  7F E3 FB 78 */	mr r3, r31
/* 8039205C 0038DCBC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80392060 0038DCC0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392064 0038DCC4  7C 08 03 A6 */	mtlr r0
/* 80392068 0038DCC8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039206C 0038DCCC  4E 80 00 20 */	blr 

.global func_80392070
func_80392070:
/* 80392070 0038DCD0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392074 0038DCD4  7C 08 02 A6 */	mflr r0
/* 80392078 0038DCD8  2C 03 00 00 */	cmpwi r3, 0
/* 8039207C 0038DCDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392080 0038DCE0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392084 0038DCE4  7C 9F 23 78 */	mr r31, r4
/* 80392088 0038DCE8  93 C1 00 08 */	stw r30, 8(r1)
/* 8039208C 0038DCEC  7C 7E 1B 78 */	mr r30, r3
/* 80392090 0038DCF0  41 82 00 24 */	beq lbl_803920B4
/* 80392094 0038DCF4  80 03 00 00 */	lwz r0, 0(r3)
/* 80392098 0038DCF8  2C 00 00 00 */	cmpwi r0, 0
/* 8039209C 0038DCFC  41 82 00 08 */	beq lbl_803920A4
/* 803920A0 0038DD00  48 00 01 95 */	bl func_80392234
lbl_803920A4:
/* 803920A4 0038DD04  2C 1F 00 00 */	cmpwi r31, 0
/* 803920A8 0038DD08  40 81 00 0C */	ble lbl_803920B4
/* 803920AC 0038DD0C  7F C3 F3 78 */	mr r3, r30
/* 803920B0 0038DD10  4B E4 8A 09 */	bl __dl__FPv
lbl_803920B4:
/* 803920B4 0038DD14  7F C3 F3 78 */	mr r3, r30
/* 803920B8 0038DD18  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803920BC 0038DD1C  83 C1 00 08 */	lwz r30, 8(r1)
/* 803920C0 0038DD20  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803920C4 0038DD24  7C 08 03 A6 */	mtlr r0
/* 803920C8 0038DD28  38 21 00 10 */	addi r1, r1, 0x10
/* 803920CC 0038DD2C  4E 80 00 20 */	blr 

.global func_803920D0
func_803920D0:
/* 803920D0 0038DD30  2C 04 00 00 */	cmpwi r4, 0
/* 803920D4 0038DD34  40 82 00 0C */	bne lbl_803920E0
/* 803920D8 0038DD38  38 60 FF FF */	li r3, -1
/* 803920DC 0038DD3C  4E 80 00 20 */	blr 
lbl_803920E0:
/* 803920E0 0038DD40  80 03 00 00 */	lwz r0, 0(r3)
/* 803920E4 0038DD44  2C 00 00 00 */	cmpwi r0, 0
/* 803920E8 0038DD48  41 82 00 0C */	beq lbl_803920F4
/* 803920EC 0038DD4C  38 60 FF FE */	li r3, -2
/* 803920F0 0038DD50  4E 80 00 20 */	blr 
lbl_803920F4:
/* 803920F4 0038DD54  80 04 00 04 */	lwz r0, 4(r4)
/* 803920F8 0038DD58  28 00 00 2A */	cmplwi r0, 0x2a
/* 803920FC 0038DD5C  41 82 00 0C */	beq lbl_80392108
/* 80392100 0038DD60  38 60 FF FD */	li r3, -3
/* 80392104 0038DD64  4E 80 00 20 */	blr 
lbl_80392108:
/* 80392108 0038DD68  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8039210C 0038DD6C  2C 00 00 00 */	cmpwi r0, 0
/* 80392110 0038DD70  40 82 01 0C */	bne lbl_8039221C
/* 80392114 0038DD74  80 04 00 08 */	lwz r0, 8(r4)
/* 80392118 0038DD78  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039211C 0038DD7C  7C E0 22 14 */	add r7, r0, r4
/* 80392120 0038DD80  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80392124 0038DD84  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80392128 0038DD88  7C C6 22 14 */	add r6, r6, r4
/* 8039212C 0038DD8C  7C A5 22 14 */	add r5, r5, r4
/* 80392130 0038DD90  90 E4 00 08 */	stw r7, 8(r4)
/* 80392134 0038DD94  2C 00 00 00 */	cmpwi r0, 0
/* 80392138 0038DD98  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8039213C 0038DD9C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80392140 0038DDA0  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80392144 0038DDA4  41 82 00 0C */	beq lbl_80392150
/* 80392148 0038DDA8  7C 00 22 14 */	add r0, r0, r4
/* 8039214C 0038DDAC  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80392150:
/* 80392150 0038DDB0  2C 07 00 00 */	cmpwi r7, 0
/* 80392154 0038DDB4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80392158 0038DDB8  41 82 00 BC */	beq lbl_80392214
/* 8039215C 0038DDBC  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80392160 0038DDC0  7C 09 03 A6 */	mtctr r0
/* 80392164 0038DDC4  41 82 00 94 */	beq lbl_803921F8
lbl_80392168:
/* 80392168 0038DDC8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039216C 0038DDCC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392170 0038DDD0  7C 00 22 14 */	add r0, r0, r4
/* 80392174 0038DDD4  7C 06 21 2E */	stwx r0, r6, r4
/* 80392178 0038DDD8  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039217C 0038DDDC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392180 0038DDE0  7C 00 22 14 */	add r0, r0, r4
/* 80392184 0038DDE4  7C 06 21 2E */	stwx r0, r6, r4
/* 80392188 0038DDE8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039218C 0038DDEC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392190 0038DDF0  7C 00 22 14 */	add r0, r0, r4
/* 80392194 0038DDF4  7C 06 21 2E */	stwx r0, r6, r4
/* 80392198 0038DDF8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039219C 0038DDFC  7C 06 20 2E */	lwzx r0, r6, r4
/* 803921A0 0038DE00  7C 00 22 14 */	add r0, r0, r4
/* 803921A4 0038DE04  7C 06 21 2E */	stwx r0, r6, r4
/* 803921A8 0038DE08  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803921AC 0038DE0C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803921B0 0038DE10  7C 00 22 14 */	add r0, r0, r4
/* 803921B4 0038DE14  7C 06 21 2E */	stwx r0, r6, r4
/* 803921B8 0038DE18  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803921BC 0038DE1C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803921C0 0038DE20  7C 00 22 14 */	add r0, r0, r4
/* 803921C4 0038DE24  7C 06 21 2E */	stwx r0, r6, r4
/* 803921C8 0038DE28  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803921CC 0038DE2C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803921D0 0038DE30  7C 00 22 14 */	add r0, r0, r4
/* 803921D4 0038DE34  7C 06 21 2E */	stwx r0, r6, r4
/* 803921D8 0038DE38  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803921DC 0038DE3C  38 A5 00 20 */	addi r5, r5, 0x20
/* 803921E0 0038DE40  7C 06 20 2E */	lwzx r0, r6, r4
/* 803921E4 0038DE44  7C 00 22 14 */	add r0, r0, r4
/* 803921E8 0038DE48  7C 06 21 2E */	stwx r0, r6, r4
/* 803921EC 0038DE4C  42 00 FF 7C */	bdnz lbl_80392168
/* 803921F0 0038DE50  70 E7 00 07 */	andi. r7, r7, 7
/* 803921F4 0038DE54  41 82 00 20 */	beq lbl_80392214
lbl_803921F8:
/* 803921F8 0038DE58  7C E9 03 A6 */	mtctr r7
lbl_803921FC:
/* 803921FC 0038DE5C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392200 0038DE60  38 A5 00 04 */	addi r5, r5, 4
/* 80392204 0038DE64  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392208 0038DE68  7C 00 22 14 */	add r0, r0, r4
/* 8039220C 0038DE6C  7C 06 21 2E */	stwx r0, r6, r4
/* 80392210 0038DE70  42 00 FF EC */	bdnz lbl_803921FC
lbl_80392214:
/* 80392214 0038DE74  38 00 00 01 */	li r0, 1
/* 80392218 0038DE78  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039221C:
/* 8039221C 0038DE7C  90 83 00 00 */	stw r4, 0(r3)
/* 80392220 0038DE80  38 60 00 00 */	li r3, 0
/* 80392224 0038DE84  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80392228 0038DE88  38 05 00 01 */	addi r0, r5, 1
/* 8039222C 0038DE8C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80392230 0038DE90  4E 80 00 20 */	blr 

.global func_80392234
func_80392234:
/* 80392234 0038DE94  80 83 00 00 */	lwz r4, 0(r3)
/* 80392238 0038DE98  38 A0 00 00 */	li r5, 0
/* 8039223C 0038DE9C  2C 04 00 00 */	cmpwi r4, 0
/* 80392240 0038DEA0  41 82 00 20 */	beq lbl_80392260
/* 80392244 0038DEA4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80392248 0038DEA8  2C 05 00 00 */	cmpwi r5, 0
/* 8039224C 0038DEAC  41 82 00 0C */	beq lbl_80392258
/* 80392250 0038DEB0  38 A5 FF FF */	addi r5, r5, -1
/* 80392254 0038DEB4  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80392258:
/* 80392258 0038DEB8  38 00 00 00 */	li r0, 0
/* 8039225C 0038DEBC  90 03 00 00 */	stw r0, 0(r3)
lbl_80392260:
/* 80392260 0038DEC0  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80392264 0038DEC4  4E 80 00 20 */	blr 

.global func_80392268
func_80392268:
/* 80392268 0038DEC8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039226C 0038DECC  2C 03 00 00 */	cmpwi r3, 0
/* 80392270 0038DED0  40 82 00 0C */	bne lbl_8039227C
/* 80392274 0038DED4  38 60 00 00 */	li r3, 0
/* 80392278 0038DED8  4E 80 00 20 */	blr 
lbl_8039227C:
/* 8039227C 0038DEDC  2C 04 00 00 */	cmpwi r4, 0
/* 80392280 0038DEE0  40 80 00 0C */	bge lbl_8039228C
/* 80392284 0038DEE4  38 60 00 00 */	li r3, 0
/* 80392288 0038DEE8  4E 80 00 20 */	blr 
lbl_8039228C:
/* 8039228C 0038DEEC  1C 04 00 2A */	mulli r0, r4, 0x2a
/* 80392290 0038DEF0  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80392294 0038DEF4  7C 63 02 14 */	add r3, r3, r0
/* 80392298 0038DEF8  4E 80 00 20 */	blr 

.global func_8039229C
func_8039229C:
/* 8039229C 0038DEFC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803922A0 0038DF00  7C 08 02 A6 */	mflr r0
/* 803922A4 0038DF04  90 01 00 14 */	stw r0, 0x14(r1)
/* 803922A8 0038DF08  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803922AC 0038DF0C  7C BF 2B 78 */	mr r31, r5
/* 803922B0 0038DF10  4B FF FF B9 */	bl func_80392268
/* 803922B4 0038DF14  2C 03 00 00 */	cmpwi r3, 0
/* 803922B8 0038DF18  40 82 00 0C */	bne lbl_803922C4
/* 803922BC 0038DF1C  38 60 00 00 */	li r3, 0
/* 803922C0 0038DF20  48 00 00 20 */	b lbl_803922E0
lbl_803922C4:
/* 803922C4 0038DF24  28 1F 00 07 */	cmplwi r31, 7
/* 803922C8 0038DF28  41 80 00 0C */	blt lbl_803922D4
/* 803922CC 0038DF2C  38 60 00 00 */	li r3, 0
/* 803922D0 0038DF30  48 00 00 10 */	b lbl_803922E0
lbl_803922D4:
/* 803922D4 0038DF34  1C 1F 00 06 */	mulli r0, r31, 6
/* 803922D8 0038DF38  7C 63 02 14 */	add r3, r3, r0
/* 803922DC 0038DF3C  A0 63 00 04 */	lhz r3, 4(r3)
lbl_803922E0:
/* 803922E0 0038DF40  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803922E4 0038DF44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803922E8 0038DF48  7C 08 03 A6 */	mtlr r0
/* 803922EC 0038DF4C  38 21 00 10 */	addi r1, r1, 0x10
/* 803922F0 0038DF50  4E 80 00 20 */	blr 

.global func_803922F4
func_803922F4:
/* 803922F4 0038DF54  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803922F8 0038DF58  7C 08 02 A6 */	mflr r0
/* 803922FC 0038DF5C  2C 04 00 00 */	cmpwi r4, 0
/* 80392300 0038DF60  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392304 0038DF64  38 00 00 00 */	li r0, 0
/* 80392308 0038DF68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039230C 0038DF6C  7C 7F 1B 78 */	mr r31, r3
/* 80392310 0038DF70  90 03 00 00 */	stw r0, 0(r3)
/* 80392314 0038DF74  41 82 00 08 */	beq lbl_8039231C
/* 80392318 0038DF78  48 00 00 7D */	bl func_80392394
lbl_8039231C:
/* 8039231C 0038DF7C  7F E3 FB 78 */	mr r3, r31
/* 80392320 0038DF80  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80392324 0038DF84  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392328 0038DF88  7C 08 03 A6 */	mtlr r0
/* 8039232C 0038DF8C  38 21 00 10 */	addi r1, r1, 0x10
/* 80392330 0038DF90  4E 80 00 20 */	blr 

.global func_80392334
func_80392334:
/* 80392334 0038DF94  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392338 0038DF98  7C 08 02 A6 */	mflr r0
/* 8039233C 0038DF9C  2C 03 00 00 */	cmpwi r3, 0
/* 80392340 0038DFA0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392344 0038DFA4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392348 0038DFA8  7C 9F 23 78 */	mr r31, r4
/* 8039234C 0038DFAC  93 C1 00 08 */	stw r30, 8(r1)
/* 80392350 0038DFB0  7C 7E 1B 78 */	mr r30, r3
/* 80392354 0038DFB4  41 82 00 24 */	beq lbl_80392378
/* 80392358 0038DFB8  80 03 00 00 */	lwz r0, 0(r3)
/* 8039235C 0038DFBC  2C 00 00 00 */	cmpwi r0, 0
/* 80392360 0038DFC0  41 82 00 08 */	beq lbl_80392368
/* 80392364 0038DFC4  48 00 01 95 */	bl func_803924F8
lbl_80392368:
/* 80392368 0038DFC8  2C 1F 00 00 */	cmpwi r31, 0
/* 8039236C 0038DFCC  40 81 00 0C */	ble lbl_80392378
/* 80392370 0038DFD0  7F C3 F3 78 */	mr r3, r30
/* 80392374 0038DFD4  4B E4 87 45 */	bl __dl__FPv
lbl_80392378:
/* 80392378 0038DFD8  7F C3 F3 78 */	mr r3, r30
/* 8039237C 0038DFDC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80392380 0038DFE0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80392384 0038DFE4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392388 0038DFE8  7C 08 03 A6 */	mtlr r0
/* 8039238C 0038DFEC  38 21 00 10 */	addi r1, r1, 0x10
/* 80392390 0038DFF0  4E 80 00 20 */	blr 

.global func_80392394
func_80392394:
/* 80392394 0038DFF4  2C 04 00 00 */	cmpwi r4, 0
/* 80392398 0038DFF8  40 82 00 0C */	bne lbl_803923A4
/* 8039239C 0038DFFC  38 60 FF FF */	li r3, -1
/* 803923A0 0038E000  4E 80 00 20 */	blr 
lbl_803923A4:
/* 803923A4 0038E004  80 03 00 00 */	lwz r0, 0(r3)
/* 803923A8 0038E008  2C 00 00 00 */	cmpwi r0, 0
/* 803923AC 0038E00C  41 82 00 0C */	beq lbl_803923B8
/* 803923B0 0038E010  38 60 FF FE */	li r3, -2
/* 803923B4 0038E014  4E 80 00 20 */	blr 
lbl_803923B8:
/* 803923B8 0038E018  80 04 00 04 */	lwz r0, 4(r4)
/* 803923BC 0038E01C  28 00 01 94 */	cmplwi r0, 0x194
/* 803923C0 0038E020  41 82 00 0C */	beq lbl_803923CC
/* 803923C4 0038E024  38 60 FF FD */	li r3, -3
/* 803923C8 0038E028  4E 80 00 20 */	blr 
lbl_803923CC:
/* 803923CC 0038E02C  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803923D0 0038E030  2C 00 00 00 */	cmpwi r0, 0
/* 803923D4 0038E034  40 82 01 0C */	bne lbl_803924E0
/* 803923D8 0038E038  80 04 00 08 */	lwz r0, 8(r4)
/* 803923DC 0038E03C  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803923E0 0038E040  7C E0 22 14 */	add r7, r0, r4
/* 803923E4 0038E044  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803923E8 0038E048  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803923EC 0038E04C  7C C6 22 14 */	add r6, r6, r4
/* 803923F0 0038E050  7C A5 22 14 */	add r5, r5, r4
/* 803923F4 0038E054  90 E4 00 08 */	stw r7, 8(r4)
/* 803923F8 0038E058  2C 00 00 00 */	cmpwi r0, 0
/* 803923FC 0038E05C  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80392400 0038E060  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80392404 0038E064  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80392408 0038E068  41 82 00 0C */	beq lbl_80392414
/* 8039240C 0038E06C  7C 00 22 14 */	add r0, r0, r4
/* 80392410 0038E070  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80392414:
/* 80392414 0038E074  2C 07 00 00 */	cmpwi r7, 0
/* 80392418 0038E078  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039241C 0038E07C  41 82 00 BC */	beq lbl_803924D8
/* 80392420 0038E080  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80392424 0038E084  7C 09 03 A6 */	mtctr r0
/* 80392428 0038E088  41 82 00 94 */	beq lbl_803924BC
lbl_8039242C:
/* 8039242C 0038E08C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392430 0038E090  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392434 0038E094  7C 00 22 14 */	add r0, r0, r4
/* 80392438 0038E098  7C 06 21 2E */	stwx r0, r6, r4
/* 8039243C 0038E09C  80 C5 00 04 */	lwz r6, 4(r5)
/* 80392440 0038E0A0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392444 0038E0A4  7C 00 22 14 */	add r0, r0, r4
/* 80392448 0038E0A8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039244C 0038E0AC  80 C5 00 08 */	lwz r6, 8(r5)
/* 80392450 0038E0B0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392454 0038E0B4  7C 00 22 14 */	add r0, r0, r4
/* 80392458 0038E0B8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039245C 0038E0BC  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80392460 0038E0C0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392464 0038E0C4  7C 00 22 14 */	add r0, r0, r4
/* 80392468 0038E0C8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039246C 0038E0CC  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80392470 0038E0D0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392474 0038E0D4  7C 00 22 14 */	add r0, r0, r4
/* 80392478 0038E0D8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039247C 0038E0DC  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80392480 0038E0E0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392484 0038E0E4  7C 00 22 14 */	add r0, r0, r4
/* 80392488 0038E0E8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039248C 0038E0EC  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80392490 0038E0F0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392494 0038E0F4  7C 00 22 14 */	add r0, r0, r4
/* 80392498 0038E0F8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039249C 0038E0FC  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803924A0 0038E100  38 A5 00 20 */	addi r5, r5, 0x20
/* 803924A4 0038E104  7C 06 20 2E */	lwzx r0, r6, r4
/* 803924A8 0038E108  7C 00 22 14 */	add r0, r0, r4
/* 803924AC 0038E10C  7C 06 21 2E */	stwx r0, r6, r4
/* 803924B0 0038E110  42 00 FF 7C */	bdnz lbl_8039242C
/* 803924B4 0038E114  70 E7 00 07 */	andi. r7, r7, 7
/* 803924B8 0038E118  41 82 00 20 */	beq lbl_803924D8
lbl_803924BC:
/* 803924BC 0038E11C  7C E9 03 A6 */	mtctr r7
lbl_803924C0:
/* 803924C0 0038E120  80 C5 00 00 */	lwz r6, 0(r5)
/* 803924C4 0038E124  38 A5 00 04 */	addi r5, r5, 4
/* 803924C8 0038E128  7C 06 20 2E */	lwzx r0, r6, r4
/* 803924CC 0038E12C  7C 00 22 14 */	add r0, r0, r4
/* 803924D0 0038E130  7C 06 21 2E */	stwx r0, r6, r4
/* 803924D4 0038E134  42 00 FF EC */	bdnz lbl_803924C0
lbl_803924D8:
/* 803924D8 0038E138  38 00 00 01 */	li r0, 1
/* 803924DC 0038E13C  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803924E0:
/* 803924E0 0038E140  90 83 00 00 */	stw r4, 0(r3)
/* 803924E4 0038E144  38 60 00 00 */	li r3, 0
/* 803924E8 0038E148  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803924EC 0038E14C  38 05 00 01 */	addi r0, r5, 1
/* 803924F0 0038E150  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803924F4 0038E154  4E 80 00 20 */	blr 

.global func_803924F8
func_803924F8:
/* 803924F8 0038E158  80 83 00 00 */	lwz r4, 0(r3)
/* 803924FC 0038E15C  38 A0 00 00 */	li r5, 0
/* 80392500 0038E160  2C 04 00 00 */	cmpwi r4, 0
/* 80392504 0038E164  41 82 00 20 */	beq lbl_80392524
/* 80392508 0038E168  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8039250C 0038E16C  2C 05 00 00 */	cmpwi r5, 0
/* 80392510 0038E170  41 82 00 0C */	beq lbl_8039251C
/* 80392514 0038E174  38 A5 FF FF */	addi r5, r5, -1
/* 80392518 0038E178  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_8039251C:
/* 8039251C 0038E17C  38 00 00 00 */	li r0, 0
/* 80392520 0038E180  90 03 00 00 */	stw r0, 0(r3)
lbl_80392524:
/* 80392524 0038E184  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80392528 0038E188  4E 80 00 20 */	blr 

.global func_8039252C
func_8039252C:
/* 8039252C 0038E18C  80 63 00 00 */	lwz r3, 0(r3)
/* 80392530 0038E190  2C 03 00 00 */	cmpwi r3, 0
/* 80392534 0038E194  40 82 00 0C */	bne lbl_80392540
/* 80392538 0038E198  38 60 00 00 */	li r3, 0
/* 8039253C 0038E19C  4E 80 00 20 */	blr 
lbl_80392540:
/* 80392540 0038E1A0  2C 04 00 00 */	cmpwi r4, 0
/* 80392544 0038E1A4  40 80 00 0C */	bge lbl_80392550
/* 80392548 0038E1A8  38 60 00 00 */	li r3, 0
/* 8039254C 0038E1AC  4E 80 00 20 */	blr 
lbl_80392550:
/* 80392550 0038E1B0  1C 04 01 94 */	mulli r0, r4, 0x194
/* 80392554 0038E1B4  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80392558 0038E1B8  7C 63 02 14 */	add r3, r3, r0
/* 8039255C 0038E1BC  4E 80 00 20 */	blr 

.global func_80392560
func_80392560:
/* 80392560 0038E1C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392564 0038E1C4  7C 08 02 A6 */	mflr r0
/* 80392568 0038E1C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039256C 0038E1CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392570 0038E1D0  7C BF 2B 78 */	mr r31, r5
/* 80392574 0038E1D4  4B FF FF B9 */	bl func_8039252C
/* 80392578 0038E1D8  2C 03 00 00 */	cmpwi r3, 0
/* 8039257C 0038E1DC  40 82 00 0C */	bne lbl_80392588
/* 80392580 0038E1E0  38 60 00 00 */	li r3, 0
/* 80392584 0038E1E4  48 00 00 1C */	b lbl_803925A0
lbl_80392588:
/* 80392588 0038E1E8  28 1F 00 65 */	cmplwi r31, 0x65
/* 8039258C 0038E1EC  41 80 00 0C */	blt lbl_80392598
/* 80392590 0038E1F0  38 60 00 00 */	li r3, 0
/* 80392594 0038E1F4  48 00 00 0C */	b lbl_803925A0
lbl_80392598:
/* 80392598 0038E1F8  57 E0 10 3A */	slwi r0, r31, 2
/* 8039259C 0038E1FC  7C 63 00 2E */	lwzx r3, r3, r0
lbl_803925A0:
/* 803925A0 0038E200  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803925A4 0038E204  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803925A8 0038E208  7C 08 03 A6 */	mtlr r0
/* 803925AC 0038E20C  38 21 00 10 */	addi r1, r1, 0x10
/* 803925B0 0038E210  4E 80 00 20 */	blr 

.global func_803925B4
func_803925B4:
/* 803925B4 0038E214  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803925B8 0038E218  7C 08 02 A6 */	mflr r0
/* 803925BC 0038E21C  2C 04 00 00 */	cmpwi r4, 0
/* 803925C0 0038E220  90 01 00 14 */	stw r0, 0x14(r1)
/* 803925C4 0038E224  38 00 00 00 */	li r0, 0
/* 803925C8 0038E228  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803925CC 0038E22C  7C 7F 1B 78 */	mr r31, r3
/* 803925D0 0038E230  90 03 00 00 */	stw r0, 0(r3)
/* 803925D4 0038E234  41 82 00 08 */	beq lbl_803925DC
/* 803925D8 0038E238  48 00 00 7D */	bl func_80392654
lbl_803925DC:
/* 803925DC 0038E23C  7F E3 FB 78 */	mr r3, r31
/* 803925E0 0038E240  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803925E4 0038E244  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803925E8 0038E248  7C 08 03 A6 */	mtlr r0
/* 803925EC 0038E24C  38 21 00 10 */	addi r1, r1, 0x10
/* 803925F0 0038E250  4E 80 00 20 */	blr 

.global func_803925F4
func_803925F4:
/* 803925F4 0038E254  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803925F8 0038E258  7C 08 02 A6 */	mflr r0
/* 803925FC 0038E25C  2C 03 00 00 */	cmpwi r3, 0
/* 80392600 0038E260  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392604 0038E264  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392608 0038E268  7C 9F 23 78 */	mr r31, r4
/* 8039260C 0038E26C  93 C1 00 08 */	stw r30, 8(r1)
/* 80392610 0038E270  7C 7E 1B 78 */	mr r30, r3
/* 80392614 0038E274  41 82 00 24 */	beq lbl_80392638
/* 80392618 0038E278  80 03 00 00 */	lwz r0, 0(r3)
/* 8039261C 0038E27C  2C 00 00 00 */	cmpwi r0, 0
/* 80392620 0038E280  41 82 00 08 */	beq lbl_80392628
/* 80392624 0038E284  48 00 01 95 */	bl func_803927B8
lbl_80392628:
/* 80392628 0038E288  2C 1F 00 00 */	cmpwi r31, 0
/* 8039262C 0038E28C  40 81 00 0C */	ble lbl_80392638
/* 80392630 0038E290  7F C3 F3 78 */	mr r3, r30
/* 80392634 0038E294  4B E4 84 85 */	bl __dl__FPv
lbl_80392638:
/* 80392638 0038E298  7F C3 F3 78 */	mr r3, r30
/* 8039263C 0038E29C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80392640 0038E2A0  83 C1 00 08 */	lwz r30, 8(r1)
/* 80392644 0038E2A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392648 0038E2A8  7C 08 03 A6 */	mtlr r0
/* 8039264C 0038E2AC  38 21 00 10 */	addi r1, r1, 0x10
/* 80392650 0038E2B0  4E 80 00 20 */	blr 

.global func_80392654
func_80392654:
/* 80392654 0038E2B4  2C 04 00 00 */	cmpwi r4, 0
/* 80392658 0038E2B8  40 82 00 0C */	bne lbl_80392664
/* 8039265C 0038E2BC  38 60 FF FF */	li r3, -1
/* 80392660 0038E2C0  4E 80 00 20 */	blr 
lbl_80392664:
/* 80392664 0038E2C4  80 03 00 00 */	lwz r0, 0(r3)
/* 80392668 0038E2C8  2C 00 00 00 */	cmpwi r0, 0
/* 8039266C 0038E2CC  41 82 00 0C */	beq lbl_80392678
/* 80392670 0038E2D0  38 60 FF FE */	li r3, -2
/* 80392674 0038E2D4  4E 80 00 20 */	blr 
lbl_80392678:
/* 80392678 0038E2D8  80 04 00 04 */	lwz r0, 4(r4)
/* 8039267C 0038E2DC  28 00 00 50 */	cmplwi r0, 0x50
/* 80392680 0038E2E0  41 82 00 0C */	beq lbl_8039268C
/* 80392684 0038E2E4  38 60 FF FD */	li r3, -3
/* 80392688 0038E2E8  4E 80 00 20 */	blr 
lbl_8039268C:
/* 8039268C 0038E2EC  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80392690 0038E2F0  2C 00 00 00 */	cmpwi r0, 0
/* 80392694 0038E2F4  40 82 01 0C */	bne lbl_803927A0
/* 80392698 0038E2F8  80 04 00 08 */	lwz r0, 8(r4)
/* 8039269C 0038E2FC  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803926A0 0038E300  7C E0 22 14 */	add r7, r0, r4
/* 803926A4 0038E304  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803926A8 0038E308  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803926AC 0038E30C  7C C6 22 14 */	add r6, r6, r4
/* 803926B0 0038E310  7C A5 22 14 */	add r5, r5, r4
/* 803926B4 0038E314  90 E4 00 08 */	stw r7, 8(r4)
/* 803926B8 0038E318  2C 00 00 00 */	cmpwi r0, 0
/* 803926BC 0038E31C  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803926C0 0038E320  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803926C4 0038E324  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803926C8 0038E328  41 82 00 0C */	beq lbl_803926D4
/* 803926CC 0038E32C  7C 00 22 14 */	add r0, r0, r4
/* 803926D0 0038E330  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803926D4:
/* 803926D4 0038E334  2C 07 00 00 */	cmpwi r7, 0
/* 803926D8 0038E338  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803926DC 0038E33C  41 82 00 BC */	beq lbl_80392798
/* 803926E0 0038E340  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803926E4 0038E344  7C 09 03 A6 */	mtctr r0
/* 803926E8 0038E348  41 82 00 94 */	beq lbl_8039277C
lbl_803926EC:
/* 803926EC 0038E34C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803926F0 0038E350  7C 06 20 2E */	lwzx r0, r6, r4
/* 803926F4 0038E354  7C 00 22 14 */	add r0, r0, r4
/* 803926F8 0038E358  7C 06 21 2E */	stwx r0, r6, r4
/* 803926FC 0038E35C  80 C5 00 04 */	lwz r6, 4(r5)
/* 80392700 0038E360  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392704 0038E364  7C 00 22 14 */	add r0, r0, r4
/* 80392708 0038E368  7C 06 21 2E */	stwx r0, r6, r4
/* 8039270C 0038E36C  80 C5 00 08 */	lwz r6, 8(r5)
/* 80392710 0038E370  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392714 0038E374  7C 00 22 14 */	add r0, r0, r4
/* 80392718 0038E378  7C 06 21 2E */	stwx r0, r6, r4
/* 8039271C 0038E37C  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80392720 0038E380  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392724 0038E384  7C 00 22 14 */	add r0, r0, r4
/* 80392728 0038E388  7C 06 21 2E */	stwx r0, r6, r4
/* 8039272C 0038E38C  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80392730 0038E390  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392734 0038E394  7C 00 22 14 */	add r0, r0, r4
/* 80392738 0038E398  7C 06 21 2E */	stwx r0, r6, r4
/* 8039273C 0038E39C  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80392740 0038E3A0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392744 0038E3A4  7C 00 22 14 */	add r0, r0, r4
/* 80392748 0038E3A8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039274C 0038E3AC  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80392750 0038E3B0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392754 0038E3B4  7C 00 22 14 */	add r0, r0, r4
/* 80392758 0038E3B8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039275C 0038E3BC  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80392760 0038E3C0  38 A5 00 20 */	addi r5, r5, 0x20
/* 80392764 0038E3C4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392768 0038E3C8  7C 00 22 14 */	add r0, r0, r4
/* 8039276C 0038E3CC  7C 06 21 2E */	stwx r0, r6, r4
/* 80392770 0038E3D0  42 00 FF 7C */	bdnz lbl_803926EC
/* 80392774 0038E3D4  70 E7 00 07 */	andi. r7, r7, 7
/* 80392778 0038E3D8  41 82 00 20 */	beq lbl_80392798
lbl_8039277C:
/* 8039277C 0038E3DC  7C E9 03 A6 */	mtctr r7
lbl_80392780:
/* 80392780 0038E3E0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392784 0038E3E4  38 A5 00 04 */	addi r5, r5, 4
/* 80392788 0038E3E8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039278C 0038E3EC  7C 00 22 14 */	add r0, r0, r4
/* 80392790 0038E3F0  7C 06 21 2E */	stwx r0, r6, r4
/* 80392794 0038E3F4  42 00 FF EC */	bdnz lbl_80392780
lbl_80392798:
/* 80392798 0038E3F8  38 00 00 01 */	li r0, 1
/* 8039279C 0038E3FC  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803927A0:
/* 803927A0 0038E400  90 83 00 00 */	stw r4, 0(r3)
/* 803927A4 0038E404  38 60 00 00 */	li r3, 0
/* 803927A8 0038E408  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803927AC 0038E40C  38 05 00 01 */	addi r0, r5, 1
/* 803927B0 0038E410  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803927B4 0038E414  4E 80 00 20 */	blr 

.global func_803927B8
func_803927B8:
/* 803927B8 0038E418  80 83 00 00 */	lwz r4, 0(r3)
/* 803927BC 0038E41C  38 A0 00 00 */	li r5, 0
/* 803927C0 0038E420  2C 04 00 00 */	cmpwi r4, 0
/* 803927C4 0038E424  41 82 00 20 */	beq lbl_803927E4
/* 803927C8 0038E428  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803927CC 0038E42C  2C 05 00 00 */	cmpwi r5, 0
/* 803927D0 0038E430  41 82 00 0C */	beq lbl_803927DC
/* 803927D4 0038E434  38 A5 FF FF */	addi r5, r5, -1
/* 803927D8 0038E438  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803927DC:
/* 803927DC 0038E43C  38 00 00 00 */	li r0, 0
/* 803927E0 0038E440  90 03 00 00 */	stw r0, 0(r3)
lbl_803927E4:
/* 803927E4 0038E444  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803927E8 0038E448  4E 80 00 20 */	blr 

.global func_803927EC
func_803927EC:
/* 803927EC 0038E44C  80 63 00 00 */	lwz r3, 0(r3)
/* 803927F0 0038E450  2C 03 00 00 */	cmpwi r3, 0
/* 803927F4 0038E454  40 82 00 0C */	bne lbl_80392800
/* 803927F8 0038E458  38 60 00 00 */	li r3, 0
/* 803927FC 0038E45C  4E 80 00 20 */	blr 
lbl_80392800:
/* 80392800 0038E460  2C 04 00 00 */	cmpwi r4, 0
/* 80392804 0038E464  40 80 00 0C */	bge lbl_80392810
/* 80392808 0038E468  38 60 00 00 */	li r3, 0
/* 8039280C 0038E46C  4E 80 00 20 */	blr 
lbl_80392810:
/* 80392810 0038E470  1C 04 00 50 */	mulli r0, r4, 0x50
/* 80392814 0038E474  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80392818 0038E478  7C 63 02 14 */	add r3, r3, r0
/* 8039281C 0038E47C  4E 80 00 20 */	blr 

.global func_80392820
func_80392820:
/* 80392820 0038E480  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392824 0038E484  7C 08 02 A6 */	mflr r0
/* 80392828 0038E488  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039282C 0038E48C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392830 0038E490  7C BF 2B 78 */	mr r31, r5
/* 80392834 0038E494  4B FF FF B9 */	bl func_803927EC
/* 80392838 0038E498  2C 03 00 00 */	cmpwi r3, 0
/* 8039283C 0038E49C  40 82 00 0C */	bne lbl_80392848
/* 80392840 0038E4A0  38 60 00 00 */	li r3, 0
/* 80392844 0038E4A4  48 00 00 20 */	b lbl_80392864
lbl_80392848:
/* 80392848 0038E4A8  28 1F 00 14 */	cmplwi r31, 0x14
/* 8039284C 0038E4AC  41 80 00 0C */	blt lbl_80392858
/* 80392850 0038E4B0  38 60 00 00 */	li r3, 0
/* 80392854 0038E4B4  48 00 00 10 */	b lbl_80392864
lbl_80392858:
/* 80392858 0038E4B8  57 E0 10 3A */	slwi r0, r31, 2
/* 8039285C 0038E4BC  7C 63 02 14 */	add r3, r3, r0
/* 80392860 0038E4C0  88 63 00 02 */	lbz r3, 2(r3)
lbl_80392864:
/* 80392864 0038E4C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392868 0038E4C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039286C 0038E4CC  7C 08 03 A6 */	mtlr r0
/* 80392870 0038E4D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80392874 0038E4D4  4E 80 00 20 */	blr 

.global func_80392878
func_80392878:
/* 80392878 0038E4D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039287C 0038E4DC  7C 08 02 A6 */	mflr r0
/* 80392880 0038E4E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392884 0038E4E4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392888 0038E4E8  7C BF 2B 78 */	mr r31, r5
/* 8039288C 0038E4EC  4B FF FF 61 */	bl func_803927EC
/* 80392890 0038E4F0  2C 03 00 00 */	cmpwi r3, 0
/* 80392894 0038E4F4  40 82 00 0C */	bne lbl_803928A0
/* 80392898 0038E4F8  38 60 00 00 */	li r3, 0
/* 8039289C 0038E4FC  48 00 00 1C */	b lbl_803928B8
lbl_803928A0:
/* 803928A0 0038E500  28 1F 00 14 */	cmplwi r31, 0x14
/* 803928A4 0038E504  41 80 00 0C */	blt lbl_803928B0
/* 803928A8 0038E508  38 60 00 00 */	li r3, 0
/* 803928AC 0038E50C  48 00 00 0C */	b lbl_803928B8
lbl_803928B0:
/* 803928B0 0038E510  57 E0 10 3A */	slwi r0, r31, 2
/* 803928B4 0038E514  7C 63 02 2E */	lhzx r3, r3, r0
lbl_803928B8:
/* 803928B8 0038E518  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803928BC 0038E51C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803928C0 0038E520  7C 08 03 A6 */	mtlr r0
/* 803928C4 0038E524  38 21 00 10 */	addi r1, r1, 0x10
/* 803928C8 0038E528  4E 80 00 20 */	blr 

.global func_803928CC
func_803928CC:
/* 803928CC 0038E52C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803928D0 0038E530  7C 08 02 A6 */	mflr r0
/* 803928D4 0038E534  2C 04 00 00 */	cmpwi r4, 0
/* 803928D8 0038E538  90 01 00 14 */	stw r0, 0x14(r1)
/* 803928DC 0038E53C  38 00 00 00 */	li r0, 0
/* 803928E0 0038E540  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803928E4 0038E544  7C 7F 1B 78 */	mr r31, r3
/* 803928E8 0038E548  90 03 00 00 */	stw r0, 0(r3)
/* 803928EC 0038E54C  41 82 00 08 */	beq lbl_803928F4
/* 803928F0 0038E550  48 00 00 7D */	bl func_8039296C
lbl_803928F4:
/* 803928F4 0038E554  7F E3 FB 78 */	mr r3, r31
/* 803928F8 0038E558  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803928FC 0038E55C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392900 0038E560  7C 08 03 A6 */	mtlr r0
/* 80392904 0038E564  38 21 00 10 */	addi r1, r1, 0x10
/* 80392908 0038E568  4E 80 00 20 */	blr 

.global func_8039290C
func_8039290C:
/* 8039290C 0038E56C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392910 0038E570  7C 08 02 A6 */	mflr r0
/* 80392914 0038E574  2C 03 00 00 */	cmpwi r3, 0
/* 80392918 0038E578  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039291C 0038E57C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392920 0038E580  7C 9F 23 78 */	mr r31, r4
/* 80392924 0038E584  93 C1 00 08 */	stw r30, 8(r1)
/* 80392928 0038E588  7C 7E 1B 78 */	mr r30, r3
/* 8039292C 0038E58C  41 82 00 24 */	beq lbl_80392950
/* 80392930 0038E590  80 03 00 00 */	lwz r0, 0(r3)
/* 80392934 0038E594  2C 00 00 00 */	cmpwi r0, 0
/* 80392938 0038E598  41 82 00 08 */	beq lbl_80392940
/* 8039293C 0038E59C  48 00 01 95 */	bl func_80392AD0
lbl_80392940:
/* 80392940 0038E5A0  2C 1F 00 00 */	cmpwi r31, 0
/* 80392944 0038E5A4  40 81 00 0C */	ble lbl_80392950
/* 80392948 0038E5A8  7F C3 F3 78 */	mr r3, r30
/* 8039294C 0038E5AC  4B E4 81 6D */	bl __dl__FPv
lbl_80392950:
/* 80392950 0038E5B0  7F C3 F3 78 */	mr r3, r30
/* 80392954 0038E5B4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80392958 0038E5B8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8039295C 0038E5BC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392960 0038E5C0  7C 08 03 A6 */	mtlr r0
/* 80392964 0038E5C4  38 21 00 10 */	addi r1, r1, 0x10
/* 80392968 0038E5C8  4E 80 00 20 */	blr 

.global func_8039296C
func_8039296C:
/* 8039296C 0038E5CC  2C 04 00 00 */	cmpwi r4, 0
/* 80392970 0038E5D0  40 82 00 0C */	bne lbl_8039297C
/* 80392974 0038E5D4  38 60 FF FF */	li r3, -1
/* 80392978 0038E5D8  4E 80 00 20 */	blr 
lbl_8039297C:
/* 8039297C 0038E5DC  80 03 00 00 */	lwz r0, 0(r3)
/* 80392980 0038E5E0  2C 00 00 00 */	cmpwi r0, 0
/* 80392984 0038E5E4  41 82 00 0C */	beq lbl_80392990
/* 80392988 0038E5E8  38 60 FF FE */	li r3, -2
/* 8039298C 0038E5EC  4E 80 00 20 */	blr 
lbl_80392990:
/* 80392990 0038E5F0  80 04 00 04 */	lwz r0, 4(r4)
/* 80392994 0038E5F4  28 00 00 18 */	cmplwi r0, 0x18
/* 80392998 0038E5F8  41 82 00 0C */	beq lbl_803929A4
/* 8039299C 0038E5FC  38 60 FF FD */	li r3, -3
/* 803929A0 0038E600  4E 80 00 20 */	blr 
lbl_803929A4:
/* 803929A4 0038E604  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803929A8 0038E608  2C 00 00 00 */	cmpwi r0, 0
/* 803929AC 0038E60C  40 82 01 0C */	bne lbl_80392AB8
/* 803929B0 0038E610  80 04 00 08 */	lwz r0, 8(r4)
/* 803929B4 0038E614  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803929B8 0038E618  7C E0 22 14 */	add r7, r0, r4
/* 803929BC 0038E61C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803929C0 0038E620  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803929C4 0038E624  7C C6 22 14 */	add r6, r6, r4
/* 803929C8 0038E628  7C A5 22 14 */	add r5, r5, r4
/* 803929CC 0038E62C  90 E4 00 08 */	stw r7, 8(r4)
/* 803929D0 0038E630  2C 00 00 00 */	cmpwi r0, 0
/* 803929D4 0038E634  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803929D8 0038E638  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803929DC 0038E63C  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803929E0 0038E640  41 82 00 0C */	beq lbl_803929EC
/* 803929E4 0038E644  7C 00 22 14 */	add r0, r0, r4
/* 803929E8 0038E648  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803929EC:
/* 803929EC 0038E64C  2C 07 00 00 */	cmpwi r7, 0
/* 803929F0 0038E650  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803929F4 0038E654  41 82 00 BC */	beq lbl_80392AB0
/* 803929F8 0038E658  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803929FC 0038E65C  7C 09 03 A6 */	mtctr r0
/* 80392A00 0038E660  41 82 00 94 */	beq lbl_80392A94
lbl_80392A04:
/* 80392A04 0038E664  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392A08 0038E668  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A0C 0038E66C  7C 00 22 14 */	add r0, r0, r4
/* 80392A10 0038E670  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A14 0038E674  80 C5 00 04 */	lwz r6, 4(r5)
/* 80392A18 0038E678  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A1C 0038E67C  7C 00 22 14 */	add r0, r0, r4
/* 80392A20 0038E680  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A24 0038E684  80 C5 00 08 */	lwz r6, 8(r5)
/* 80392A28 0038E688  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A2C 0038E68C  7C 00 22 14 */	add r0, r0, r4
/* 80392A30 0038E690  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A34 0038E694  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80392A38 0038E698  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A3C 0038E69C  7C 00 22 14 */	add r0, r0, r4
/* 80392A40 0038E6A0  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A44 0038E6A4  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80392A48 0038E6A8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A4C 0038E6AC  7C 00 22 14 */	add r0, r0, r4
/* 80392A50 0038E6B0  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A54 0038E6B4  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80392A58 0038E6B8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A5C 0038E6BC  7C 00 22 14 */	add r0, r0, r4
/* 80392A60 0038E6C0  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A64 0038E6C4  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80392A68 0038E6C8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A6C 0038E6CC  7C 00 22 14 */	add r0, r0, r4
/* 80392A70 0038E6D0  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A74 0038E6D4  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80392A78 0038E6D8  38 A5 00 20 */	addi r5, r5, 0x20
/* 80392A7C 0038E6DC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392A80 0038E6E0  7C 00 22 14 */	add r0, r0, r4
/* 80392A84 0038E6E4  7C 06 21 2E */	stwx r0, r6, r4
/* 80392A88 0038E6E8  42 00 FF 7C */	bdnz lbl_80392A04
/* 80392A8C 0038E6EC  70 E7 00 07 */	andi. r7, r7, 7
/* 80392A90 0038E6F0  41 82 00 20 */	beq lbl_80392AB0
lbl_80392A94:
/* 80392A94 0038E6F4  7C E9 03 A6 */	mtctr r7
lbl_80392A98:
/* 80392A98 0038E6F8  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392A9C 0038E6FC  38 A5 00 04 */	addi r5, r5, 4
/* 80392AA0 0038E700  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392AA4 0038E704  7C 00 22 14 */	add r0, r0, r4
/* 80392AA8 0038E708  7C 06 21 2E */	stwx r0, r6, r4
/* 80392AAC 0038E70C  42 00 FF EC */	bdnz lbl_80392A98
lbl_80392AB0:
/* 80392AB0 0038E710  38 00 00 01 */	li r0, 1
/* 80392AB4 0038E714  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80392AB8:
/* 80392AB8 0038E718  90 83 00 00 */	stw r4, 0(r3)
/* 80392ABC 0038E71C  38 60 00 00 */	li r3, 0
/* 80392AC0 0038E720  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80392AC4 0038E724  38 05 00 01 */	addi r0, r5, 1
/* 80392AC8 0038E728  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80392ACC 0038E72C  4E 80 00 20 */	blr 

.global func_80392AD0
func_80392AD0:
/* 80392AD0 0038E730  80 83 00 00 */	lwz r4, 0(r3)
/* 80392AD4 0038E734  38 A0 00 00 */	li r5, 0
/* 80392AD8 0038E738  2C 04 00 00 */	cmpwi r4, 0
/* 80392ADC 0038E73C  41 82 00 20 */	beq lbl_80392AFC
/* 80392AE0 0038E740  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80392AE4 0038E744  2C 05 00 00 */	cmpwi r5, 0
/* 80392AE8 0038E748  41 82 00 0C */	beq lbl_80392AF4
/* 80392AEC 0038E74C  38 A5 FF FF */	addi r5, r5, -1
/* 80392AF0 0038E750  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80392AF4:
/* 80392AF4 0038E754  38 00 00 00 */	li r0, 0
/* 80392AF8 0038E758  90 03 00 00 */	stw r0, 0(r3)
lbl_80392AFC:
/* 80392AFC 0038E75C  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80392B00 0038E760  4E 80 00 20 */	blr 

.global func_80392B04
func_80392B04:
/* 80392B04 0038E764  80 63 00 00 */	lwz r3, 0(r3)
/* 80392B08 0038E768  2C 03 00 00 */	cmpwi r3, 0
/* 80392B0C 0038E76C  40 82 00 0C */	bne lbl_80392B18
/* 80392B10 0038E770  38 60 00 00 */	li r3, 0
/* 80392B14 0038E774  4E 80 00 20 */	blr 
lbl_80392B18:
/* 80392B18 0038E778  2C 04 00 00 */	cmpwi r4, 0
/* 80392B1C 0038E77C  40 80 00 0C */	bge lbl_80392B28
/* 80392B20 0038E780  38 60 00 00 */	li r3, 0
/* 80392B24 0038E784  4E 80 00 20 */	blr 
lbl_80392B28:
/* 80392B28 0038E788  1C 04 00 18 */	mulli r0, r4, 0x18
/* 80392B2C 0038E78C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80392B30 0038E790  7C 63 02 14 */	add r3, r3, r0
/* 80392B34 0038E794  4E 80 00 20 */	blr 

.global func_80392B38
func_80392B38:
/* 80392B38 0038E798  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392B3C 0038E79C  7C 08 02 A6 */	mflr r0
/* 80392B40 0038E7A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392B44 0038E7A4  4B FF FF C1 */	bl func_80392B04
/* 80392B48 0038E7A8  2C 03 00 00 */	cmpwi r3, 0
/* 80392B4C 0038E7AC  41 82 00 0C */	beq lbl_80392B58
/* 80392B50 0038E7B0  A0 63 00 00 */	lhz r3, 0(r3)
/* 80392B54 0038E7B4  48 00 00 08 */	b lbl_80392B5C
lbl_80392B58:
/* 80392B58 0038E7B8  38 60 00 00 */	li r3, 0
lbl_80392B5C:
/* 80392B5C 0038E7BC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392B60 0038E7C0  7C 08 03 A6 */	mtlr r0
/* 80392B64 0038E7C4  38 21 00 10 */	addi r1, r1, 0x10
/* 80392B68 0038E7C8  4E 80 00 20 */	blr 

.global func_80392B6C
func_80392B6C:
/* 80392B6C 0038E7CC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392B70 0038E7D0  7C 08 02 A6 */	mflr r0
/* 80392B74 0038E7D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392B78 0038E7D8  4B FF FF 8D */	bl func_80392B04
/* 80392B7C 0038E7DC  2C 03 00 00 */	cmpwi r3, 0
/* 80392B80 0038E7E0  41 82 00 0C */	beq lbl_80392B8C
/* 80392B84 0038E7E4  88 63 00 0E */	lbz r3, 0xe(r3)
/* 80392B88 0038E7E8  48 00 00 08 */	b lbl_80392B90
lbl_80392B8C:
/* 80392B8C 0038E7EC  38 60 00 00 */	li r3, 0
lbl_80392B90:
/* 80392B90 0038E7F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392B94 0038E7F4  7C 08 03 A6 */	mtlr r0
/* 80392B98 0038E7F8  38 21 00 10 */	addi r1, r1, 0x10
/* 80392B9C 0038E7FC  4E 80 00 20 */	blr 

.global func_80392BA0
func_80392BA0:
/* 80392BA0 0038E800  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392BA4 0038E804  7C 08 02 A6 */	mflr r0
/* 80392BA8 0038E808  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392BAC 0038E80C  4B FF FF 59 */	bl func_80392B04
/* 80392BB0 0038E810  2C 03 00 00 */	cmpwi r3, 0
/* 80392BB4 0038E814  41 82 00 0C */	beq lbl_80392BC0
/* 80392BB8 0038E818  88 63 00 0F */	lbz r3, 0xf(r3)
/* 80392BBC 0038E81C  48 00 00 08 */	b lbl_80392BC4
lbl_80392BC0:
/* 80392BC0 0038E820  38 60 00 00 */	li r3, 0
lbl_80392BC4:
/* 80392BC4 0038E824  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392BC8 0038E828  7C 08 03 A6 */	mtlr r0
/* 80392BCC 0038E82C  38 21 00 10 */	addi r1, r1, 0x10
/* 80392BD0 0038E830  4E 80 00 20 */	blr 

.global func_80392BD4
func_80392BD4:
/* 80392BD4 0038E834  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392BD8 0038E838  7C 08 02 A6 */	mflr r0
/* 80392BDC 0038E83C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392BE0 0038E840  4B FF FF 25 */	bl func_80392B04
/* 80392BE4 0038E844  2C 03 00 00 */	cmpwi r3, 0
/* 80392BE8 0038E848  41 82 00 0C */	beq lbl_80392BF4
/* 80392BEC 0038E84C  88 63 00 10 */	lbz r3, 0x10(r3)
/* 80392BF0 0038E850  48 00 00 08 */	b lbl_80392BF8
lbl_80392BF4:
/* 80392BF4 0038E854  38 60 00 00 */	li r3, 0
lbl_80392BF8:
/* 80392BF8 0038E858  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392BFC 0038E85C  7C 08 03 A6 */	mtlr r0
/* 80392C00 0038E860  38 21 00 10 */	addi r1, r1, 0x10
/* 80392C04 0038E864  4E 80 00 20 */	blr 

.global func_80392C08
func_80392C08:
/* 80392C08 0038E868  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392C0C 0038E86C  7C 08 02 A6 */	mflr r0
/* 80392C10 0038E870  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392C14 0038E874  4B FF FE F1 */	bl func_80392B04
/* 80392C18 0038E878  2C 03 00 00 */	cmpwi r3, 0
/* 80392C1C 0038E87C  41 82 00 0C */	beq lbl_80392C28
/* 80392C20 0038E880  88 63 00 11 */	lbz r3, 0x11(r3)
/* 80392C24 0038E884  48 00 00 08 */	b lbl_80392C2C
lbl_80392C28:
/* 80392C28 0038E888  38 60 00 00 */	li r3, 0
lbl_80392C2C:
/* 80392C2C 0038E88C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392C30 0038E890  7C 08 03 A6 */	mtlr r0
/* 80392C34 0038E894  38 21 00 10 */	addi r1, r1, 0x10
/* 80392C38 0038E898  4E 80 00 20 */	blr 

.global func_80392C3C
func_80392C3C:
/* 80392C3C 0038E89C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392C40 0038E8A0  7C 08 02 A6 */	mflr r0
/* 80392C44 0038E8A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392C48 0038E8A8  4B FF FE BD */	bl func_80392B04
/* 80392C4C 0038E8AC  2C 03 00 00 */	cmpwi r3, 0
/* 80392C50 0038E8B0  41 82 00 0C */	beq lbl_80392C5C
/* 80392C54 0038E8B4  88 63 00 12 */	lbz r3, 0x12(r3)
/* 80392C58 0038E8B8  48 00 00 08 */	b lbl_80392C60
lbl_80392C5C:
/* 80392C5C 0038E8BC  38 60 00 00 */	li r3, 0
lbl_80392C60:
/* 80392C60 0038E8C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392C64 0038E8C4  7C 08 03 A6 */	mtlr r0
/* 80392C68 0038E8C8  38 21 00 10 */	addi r1, r1, 0x10
/* 80392C6C 0038E8CC  4E 80 00 20 */	blr 

.global func_80392C70
func_80392C70:
/* 80392C70 0038E8D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392C74 0038E8D4  7C 08 02 A6 */	mflr r0
/* 80392C78 0038E8D8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392C7C 0038E8DC  4B FF FE 89 */	bl func_80392B04
/* 80392C80 0038E8E0  2C 03 00 00 */	cmpwi r3, 0
/* 80392C84 0038E8E4  41 82 00 0C */	beq lbl_80392C90
/* 80392C88 0038E8E8  88 63 00 13 */	lbz r3, 0x13(r3)
/* 80392C8C 0038E8EC  48 00 00 08 */	b lbl_80392C94
lbl_80392C90:
/* 80392C90 0038E8F0  38 60 00 00 */	li r3, 0
lbl_80392C94:
/* 80392C94 0038E8F4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392C98 0038E8F8  7C 08 03 A6 */	mtlr r0
/* 80392C9C 0038E8FC  38 21 00 10 */	addi r1, r1, 0x10
/* 80392CA0 0038E900  4E 80 00 20 */	blr 

.global func_80392CA4
func_80392CA4:
/* 80392CA4 0038E904  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392CA8 0038E908  7C 08 02 A6 */	mflr r0
/* 80392CAC 0038E90C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392CB0 0038E910  4B FF FE 55 */	bl func_80392B04
/* 80392CB4 0038E914  2C 03 00 00 */	cmpwi r3, 0
/* 80392CB8 0038E918  41 82 00 0C */	beq lbl_80392CC4
/* 80392CBC 0038E91C  A0 63 00 02 */	lhz r3, 2(r3)
/* 80392CC0 0038E920  48 00 00 08 */	b lbl_80392CC8
lbl_80392CC4:
/* 80392CC4 0038E924  38 60 00 00 */	li r3, 0
lbl_80392CC8:
/* 80392CC8 0038E928  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392CCC 0038E92C  7C 08 03 A6 */	mtlr r0
/* 80392CD0 0038E930  38 21 00 10 */	addi r1, r1, 0x10
/* 80392CD4 0038E934  4E 80 00 20 */	blr 

.global func_80392CD8
func_80392CD8:
/* 80392CD8 0038E938  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392CDC 0038E93C  7C 08 02 A6 */	mflr r0
/* 80392CE0 0038E940  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392CE4 0038E944  4B FF FE 21 */	bl func_80392B04
/* 80392CE8 0038E948  2C 03 00 00 */	cmpwi r3, 0
/* 80392CEC 0038E94C  41 82 00 0C */	beq lbl_80392CF8
/* 80392CF0 0038E950  88 63 00 14 */	lbz r3, 0x14(r3)
/* 80392CF4 0038E954  48 00 00 08 */	b lbl_80392CFC
lbl_80392CF8:
/* 80392CF8 0038E958  38 60 00 00 */	li r3, 0
lbl_80392CFC:
/* 80392CFC 0038E95C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392D00 0038E960  7C 08 03 A6 */	mtlr r0
/* 80392D04 0038E964  38 21 00 10 */	addi r1, r1, 0x10
/* 80392D08 0038E968  4E 80 00 20 */	blr 

.global func_80392D0C
func_80392D0C:
/* 80392D0C 0038E96C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392D10 0038E970  7C 08 02 A6 */	mflr r0
/* 80392D14 0038E974  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392D18 0038E978  4B FF FD ED */	bl func_80392B04
/* 80392D1C 0038E97C  2C 03 00 00 */	cmpwi r3, 0
/* 80392D20 0038E980  41 82 00 0C */	beq lbl_80392D2C
/* 80392D24 0038E984  88 63 00 15 */	lbz r3, 0x15(r3)
/* 80392D28 0038E988  48 00 00 08 */	b lbl_80392D30
lbl_80392D2C:
/* 80392D2C 0038E98C  38 60 00 00 */	li r3, 0
lbl_80392D30:
/* 80392D30 0038E990  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392D34 0038E994  7C 08 03 A6 */	mtlr r0
/* 80392D38 0038E998  38 21 00 10 */	addi r1, r1, 0x10
/* 80392D3C 0038E99C  4E 80 00 20 */	blr 

.global func_80392D40
func_80392D40:
/* 80392D40 0038E9A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392D44 0038E9A4  7C 08 02 A6 */	mflr r0
/* 80392D48 0038E9A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392D4C 0038E9AC  4B FF FD B9 */	bl func_80392B04
/* 80392D50 0038E9B0  2C 03 00 00 */	cmpwi r3, 0
/* 80392D54 0038E9B4  41 82 00 0C */	beq lbl_80392D60
/* 80392D58 0038E9B8  A0 63 00 08 */	lhz r3, 8(r3)
/* 80392D5C 0038E9BC  48 00 00 08 */	b lbl_80392D64
lbl_80392D60:
/* 80392D60 0038E9C0  38 60 00 00 */	li r3, 0
lbl_80392D64:
/* 80392D64 0038E9C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392D68 0038E9C8  7C 08 03 A6 */	mtlr r0
/* 80392D6C 0038E9CC  38 21 00 10 */	addi r1, r1, 0x10
/* 80392D70 0038E9D0  4E 80 00 20 */	blr 

.global func_80392D74
func_80392D74:
/* 80392D74 0038E9D4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392D78 0038E9D8  7C 08 02 A6 */	mflr r0
/* 80392D7C 0038E9DC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392D80 0038E9E0  4B FF FD 85 */	bl func_80392B04
/* 80392D84 0038E9E4  2C 03 00 00 */	cmpwi r3, 0
/* 80392D88 0038E9E8  41 82 00 0C */	beq lbl_80392D94
/* 80392D8C 0038E9EC  A0 63 00 0A */	lhz r3, 0xa(r3)
/* 80392D90 0038E9F0  48 00 00 08 */	b lbl_80392D98
lbl_80392D94:
/* 80392D94 0038E9F4  38 60 00 00 */	li r3, 0
lbl_80392D98:
/* 80392D98 0038E9F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392D9C 0038E9FC  7C 08 03 A6 */	mtlr r0
/* 80392DA0 0038EA00  38 21 00 10 */	addi r1, r1, 0x10
/* 80392DA4 0038EA04  4E 80 00 20 */	blr 

.global func_80392DA8
func_80392DA8:
/* 80392DA8 0038EA08  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392DAC 0038EA0C  7C 08 02 A6 */	mflr r0
/* 80392DB0 0038EA10  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392DB4 0038EA14  4B FF FD 51 */	bl func_80392B04
/* 80392DB8 0038EA18  2C 03 00 00 */	cmpwi r3, 0
/* 80392DBC 0038EA1C  41 82 00 0C */	beq lbl_80392DC8
/* 80392DC0 0038EA20  A0 63 00 0C */	lhz r3, 0xc(r3)
/* 80392DC4 0038EA24  48 00 00 08 */	b lbl_80392DCC
lbl_80392DC8:
/* 80392DC8 0038EA28  38 60 00 00 */	li r3, 0
lbl_80392DCC:
/* 80392DCC 0038EA2C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392DD0 0038EA30  7C 08 03 A6 */	mtlr r0
/* 80392DD4 0038EA34  38 21 00 10 */	addi r1, r1, 0x10
/* 80392DD8 0038EA38  4E 80 00 20 */	blr 

.global func_80392DDC
func_80392DDC:
/* 80392DDC 0038EA3C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392DE0 0038EA40  7C 08 02 A6 */	mflr r0
/* 80392DE4 0038EA44  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392DE8 0038EA48  4B FF FD 1D */	bl func_80392B04
/* 80392DEC 0038EA4C  2C 03 00 00 */	cmpwi r3, 0
/* 80392DF0 0038EA50  41 82 00 0C */	beq lbl_80392DFC
/* 80392DF4 0038EA54  88 63 00 16 */	lbz r3, 0x16(r3)
/* 80392DF8 0038EA58  48 00 00 08 */	b lbl_80392E00
lbl_80392DFC:
/* 80392DFC 0038EA5C  38 60 00 00 */	li r3, 0
lbl_80392E00:
/* 80392E00 0038EA60  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392E04 0038EA64  7C 08 03 A6 */	mtlr r0
/* 80392E08 0038EA68  38 21 00 10 */	addi r1, r1, 0x10
/* 80392E0C 0038EA6C  4E 80 00 20 */	blr 

.global func_80392E10
func_80392E10:
/* 80392E10 0038EA70  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392E14 0038EA74  7C 08 02 A6 */	mflr r0
/* 80392E18 0038EA78  2C 04 00 00 */	cmpwi r4, 0
/* 80392E1C 0038EA7C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392E20 0038EA80  38 00 00 00 */	li r0, 0
/* 80392E24 0038EA84  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80392E28 0038EA88  7C 7F 1B 78 */	mr r31, r3
/* 80392E2C 0038EA8C  90 03 00 00 */	stw r0, 0(r3)
/* 80392E30 0038EA90  41 82 00 08 */	beq lbl_80392E38
/* 80392E34 0038EA94  48 00 00 1D */	bl func_80392E50
lbl_80392E38:
/* 80392E38 0038EA98  7F E3 FB 78 */	mr r3, r31
/* 80392E3C 0038EA9C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80392E40 0038EAA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80392E44 0038EAA4  7C 08 03 A6 */	mtlr r0
/* 80392E48 0038EAA8  38 21 00 10 */	addi r1, r1, 0x10
/* 80392E4C 0038EAAC  4E 80 00 20 */	blr 

.global func_80392E50
func_80392E50:
/* 80392E50 0038EAB0  2C 04 00 00 */	cmpwi r4, 0
/* 80392E54 0038EAB4  40 82 00 0C */	bne lbl_80392E60
/* 80392E58 0038EAB8  38 60 FF FF */	li r3, -1
/* 80392E5C 0038EABC  4E 80 00 20 */	blr 
lbl_80392E60:
/* 80392E60 0038EAC0  80 03 00 00 */	lwz r0, 0(r3)
/* 80392E64 0038EAC4  2C 00 00 00 */	cmpwi r0, 0
/* 80392E68 0038EAC8  41 82 00 0C */	beq lbl_80392E74
/* 80392E6C 0038EACC  38 60 FF FE */	li r3, -2
/* 80392E70 0038EAD0  4E 80 00 20 */	blr 
lbl_80392E74:
/* 80392E74 0038EAD4  80 04 00 04 */	lwz r0, 4(r4)
/* 80392E78 0038EAD8  28 00 00 08 */	cmplwi r0, 8
/* 80392E7C 0038EADC  41 82 00 0C */	beq lbl_80392E88
/* 80392E80 0038EAE0  38 60 FF FD */	li r3, -3
/* 80392E84 0038EAE4  4E 80 00 20 */	blr 
lbl_80392E88:
/* 80392E88 0038EAE8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80392E8C 0038EAEC  2C 00 00 00 */	cmpwi r0, 0
/* 80392E90 0038EAF0  40 82 01 0C */	bne lbl_80392F9C
/* 80392E94 0038EAF4  80 04 00 08 */	lwz r0, 8(r4)
/* 80392E98 0038EAF8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80392E9C 0038EAFC  7C E0 22 14 */	add r7, r0, r4
/* 80392EA0 0038EB00  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80392EA4 0038EB04  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80392EA8 0038EB08  7C C6 22 14 */	add r6, r6, r4
/* 80392EAC 0038EB0C  7C A5 22 14 */	add r5, r5, r4
/* 80392EB0 0038EB10  90 E4 00 08 */	stw r7, 8(r4)
/* 80392EB4 0038EB14  2C 00 00 00 */	cmpwi r0, 0
/* 80392EB8 0038EB18  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80392EBC 0038EB1C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80392EC0 0038EB20  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80392EC4 0038EB24  41 82 00 0C */	beq lbl_80392ED0
/* 80392EC8 0038EB28  7C 00 22 14 */	add r0, r0, r4
/* 80392ECC 0038EB2C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80392ED0:
/* 80392ED0 0038EB30  2C 07 00 00 */	cmpwi r7, 0
/* 80392ED4 0038EB34  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80392ED8 0038EB38  41 82 00 BC */	beq lbl_80392F94
/* 80392EDC 0038EB3C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80392EE0 0038EB40  7C 09 03 A6 */	mtctr r0
/* 80392EE4 0038EB44  41 82 00 94 */	beq lbl_80392F78
lbl_80392EE8:
/* 80392EE8 0038EB48  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392EEC 0038EB4C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392EF0 0038EB50  7C 00 22 14 */	add r0, r0, r4
/* 80392EF4 0038EB54  7C 06 21 2E */	stwx r0, r6, r4
/* 80392EF8 0038EB58  80 C5 00 04 */	lwz r6, 4(r5)
/* 80392EFC 0038EB5C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F00 0038EB60  7C 00 22 14 */	add r0, r0, r4
/* 80392F04 0038EB64  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F08 0038EB68  80 C5 00 08 */	lwz r6, 8(r5)
/* 80392F0C 0038EB6C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F10 0038EB70  7C 00 22 14 */	add r0, r0, r4
/* 80392F14 0038EB74  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F18 0038EB78  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80392F1C 0038EB7C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F20 0038EB80  7C 00 22 14 */	add r0, r0, r4
/* 80392F24 0038EB84  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F28 0038EB88  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80392F2C 0038EB8C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F30 0038EB90  7C 00 22 14 */	add r0, r0, r4
/* 80392F34 0038EB94  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F38 0038EB98  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80392F3C 0038EB9C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F40 0038EBA0  7C 00 22 14 */	add r0, r0, r4
/* 80392F44 0038EBA4  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F48 0038EBA8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80392F4C 0038EBAC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F50 0038EBB0  7C 00 22 14 */	add r0, r0, r4
/* 80392F54 0038EBB4  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F58 0038EBB8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80392F5C 0038EBBC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80392F60 0038EBC0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F64 0038EBC4  7C 00 22 14 */	add r0, r0, r4
/* 80392F68 0038EBC8  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F6C 0038EBCC  42 00 FF 7C */	bdnz lbl_80392EE8
/* 80392F70 0038EBD0  70 E7 00 07 */	andi. r7, r7, 7
/* 80392F74 0038EBD4  41 82 00 20 */	beq lbl_80392F94
lbl_80392F78:
/* 80392F78 0038EBD8  7C E9 03 A6 */	mtctr r7
lbl_80392F7C:
/* 80392F7C 0038EBDC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80392F80 0038EBE0  38 A5 00 04 */	addi r5, r5, 4
/* 80392F84 0038EBE4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80392F88 0038EBE8  7C 00 22 14 */	add r0, r0, r4
/* 80392F8C 0038EBEC  7C 06 21 2E */	stwx r0, r6, r4
/* 80392F90 0038EBF0  42 00 FF EC */	bdnz lbl_80392F7C
lbl_80392F94:
/* 80392F94 0038EBF4  38 00 00 01 */	li r0, 1
/* 80392F98 0038EBF8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80392F9C:
/* 80392F9C 0038EBFC  90 83 00 00 */	stw r4, 0(r3)
/* 80392FA0 0038EC00  38 60 00 00 */	li r3, 0
/* 80392FA4 0038EC04  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80392FA8 0038EC08  38 05 00 01 */	addi r0, r5, 1
/* 80392FAC 0038EC0C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80392FB0 0038EC10  4E 80 00 20 */	blr 

.global func_80392FB4
func_80392FB4:
/* 80392FB4 0038EC14  80 63 00 00 */	lwz r3, 0(r3)
/* 80392FB8 0038EC18  2C 03 00 00 */	cmpwi r3, 0
/* 80392FBC 0038EC1C  40 82 00 0C */	bne lbl_80392FC8
/* 80392FC0 0038EC20  38 60 00 00 */	li r3, 0
/* 80392FC4 0038EC24  4E 80 00 20 */	blr 
lbl_80392FC8:
/* 80392FC8 0038EC28  2C 04 00 00 */	cmpwi r4, 0
/* 80392FCC 0038EC2C  40 80 00 0C */	bge lbl_80392FD8
/* 80392FD0 0038EC30  38 60 00 00 */	li r3, 0
/* 80392FD4 0038EC34  4E 80 00 20 */	blr 
lbl_80392FD8:
/* 80392FD8 0038EC38  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80392FDC 0038EC3C  54 80 18 38 */	slwi r0, r4, 3
/* 80392FE0 0038EC40  7C 63 02 14 */	add r3, r3, r0
/* 80392FE4 0038EC44  4E 80 00 20 */	blr 

.global func_80392FE8
func_80392FE8:
/* 80392FE8 0038EC48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80392FEC 0038EC4C  7C 08 02 A6 */	mflr r0
/* 80392FF0 0038EC50  90 01 00 14 */	stw r0, 0x14(r1)
/* 80392FF4 0038EC54  4B FF FF C1 */	bl func_80392FB4
/* 80392FF8 0038EC58  2C 03 00 00 */	cmpwi r3, 0
/* 80392FFC 0038EC5C  41 82 00 0C */	beq lbl_80393008
/* 80393000 0038EC60  A8 63 00 00 */	lha r3, 0(r3)
/* 80393004 0038EC64  48 00 00 08 */	b lbl_8039300C
lbl_80393008:
/* 80393008 0038EC68  38 60 00 00 */	li r3, 0
lbl_8039300C:
/* 8039300C 0038EC6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393010 0038EC70  7C 08 03 A6 */	mtlr r0
/* 80393014 0038EC74  38 21 00 10 */	addi r1, r1, 0x10
/* 80393018 0038EC78  4E 80 00 20 */	blr 

.global func_8039301C
func_8039301C:
/* 8039301C 0038EC7C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393020 0038EC80  7C 08 02 A6 */	mflr r0
/* 80393024 0038EC84  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393028 0038EC88  4B FF FF 8D */	bl func_80392FB4
/* 8039302C 0038EC8C  2C 03 00 00 */	cmpwi r3, 0
/* 80393030 0038EC90  41 82 00 0C */	beq lbl_8039303C
/* 80393034 0038EC94  A8 63 00 02 */	lha r3, 2(r3)
/* 80393038 0038EC98  48 00 00 08 */	b lbl_80393040
lbl_8039303C:
/* 8039303C 0038EC9C  38 60 00 00 */	li r3, 0
lbl_80393040:
/* 80393040 0038ECA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393044 0038ECA4  7C 08 03 A6 */	mtlr r0
/* 80393048 0038ECA8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039304C 0038ECAC  4E 80 00 20 */	blr 

.global func_80393050
func_80393050:
/* 80393050 0038ECB0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393054 0038ECB4  7C 08 02 A6 */	mflr r0
/* 80393058 0038ECB8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039305C 0038ECBC  4B FF FF 59 */	bl func_80392FB4
/* 80393060 0038ECC0  2C 03 00 00 */	cmpwi r3, 0
/* 80393064 0038ECC4  41 82 00 0C */	beq lbl_80393070
/* 80393068 0038ECC8  88 63 00 04 */	lbz r3, 4(r3)
/* 8039306C 0038ECCC  48 00 00 08 */	b lbl_80393074
lbl_80393070:
/* 80393070 0038ECD0  38 60 00 00 */	li r3, 0
lbl_80393074:
/* 80393074 0038ECD4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393078 0038ECD8  7C 08 03 A6 */	mtlr r0
/* 8039307C 0038ECDC  38 21 00 10 */	addi r1, r1, 0x10
/* 80393080 0038ECE0  4E 80 00 20 */	blr 

.global func_80393084
func_80393084:
/* 80393084 0038ECE4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393088 0038ECE8  7C 08 02 A6 */	mflr r0
/* 8039308C 0038ECEC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393090 0038ECF0  4B FF FF 25 */	bl func_80392FB4
/* 80393094 0038ECF4  2C 03 00 00 */	cmpwi r3, 0
/* 80393098 0038ECF8  41 82 00 0C */	beq lbl_803930A4
/* 8039309C 0038ECFC  88 63 00 06 */	lbz r3, 6(r3)
/* 803930A0 0038ED00  48 00 00 08 */	b lbl_803930A8
lbl_803930A4:
/* 803930A4 0038ED04  38 60 00 00 */	li r3, 0
lbl_803930A8:
/* 803930A8 0038ED08  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803930AC 0038ED0C  7C 08 03 A6 */	mtlr r0
/* 803930B0 0038ED10  38 21 00 10 */	addi r1, r1, 0x10
/* 803930B4 0038ED14  4E 80 00 20 */	blr 

.global func_803930B8
func_803930B8:
/* 803930B8 0038ED18  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803930BC 0038ED1C  7C 08 02 A6 */	mflr r0
/* 803930C0 0038ED20  2C 04 00 00 */	cmpwi r4, 0
/* 803930C4 0038ED24  90 01 00 14 */	stw r0, 0x14(r1)
/* 803930C8 0038ED28  38 00 00 00 */	li r0, 0
/* 803930CC 0038ED2C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803930D0 0038ED30  7C 7F 1B 78 */	mr r31, r3
/* 803930D4 0038ED34  90 03 00 00 */	stw r0, 0(r3)
/* 803930D8 0038ED38  41 82 00 08 */	beq lbl_803930E0
/* 803930DC 0038ED3C  48 00 00 1D */	bl func_803930F8
lbl_803930E0:
/* 803930E0 0038ED40  7F E3 FB 78 */	mr r3, r31
/* 803930E4 0038ED44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803930E8 0038ED48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803930EC 0038ED4C  7C 08 03 A6 */	mtlr r0
/* 803930F0 0038ED50  38 21 00 10 */	addi r1, r1, 0x10
/* 803930F4 0038ED54  4E 80 00 20 */	blr 

.global func_803930F8
func_803930F8:
/* 803930F8 0038ED58  2C 04 00 00 */	cmpwi r4, 0
/* 803930FC 0038ED5C  40 82 00 0C */	bne lbl_80393108
/* 80393100 0038ED60  38 60 FF FF */	li r3, -1
/* 80393104 0038ED64  4E 80 00 20 */	blr 
lbl_80393108:
/* 80393108 0038ED68  80 03 00 00 */	lwz r0, 0(r3)
/* 8039310C 0038ED6C  2C 00 00 00 */	cmpwi r0, 0
/* 80393110 0038ED70  41 82 00 0C */	beq lbl_8039311C
/* 80393114 0038ED74  38 60 FF FE */	li r3, -2
/* 80393118 0038ED78  4E 80 00 20 */	blr 
lbl_8039311C:
/* 8039311C 0038ED7C  80 04 00 04 */	lwz r0, 4(r4)
/* 80393120 0038ED80  28 00 00 01 */	cmplwi r0, 1
/* 80393124 0038ED84  41 82 00 0C */	beq lbl_80393130
/* 80393128 0038ED88  38 60 FF FD */	li r3, -3
/* 8039312C 0038ED8C  4E 80 00 20 */	blr 
lbl_80393130:
/* 80393130 0038ED90  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80393134 0038ED94  2C 00 00 00 */	cmpwi r0, 0
/* 80393138 0038ED98  40 82 01 0C */	bne lbl_80393244
/* 8039313C 0038ED9C  80 04 00 08 */	lwz r0, 8(r4)
/* 80393140 0038EDA0  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80393144 0038EDA4  7C E0 22 14 */	add r7, r0, r4
/* 80393148 0038EDA8  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039314C 0038EDAC  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80393150 0038EDB0  7C C6 22 14 */	add r6, r6, r4
/* 80393154 0038EDB4  7C A5 22 14 */	add r5, r5, r4
/* 80393158 0038EDB8  90 E4 00 08 */	stw r7, 8(r4)
/* 8039315C 0038EDBC  2C 00 00 00 */	cmpwi r0, 0
/* 80393160 0038EDC0  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80393164 0038EDC4  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80393168 0038EDC8  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8039316C 0038EDCC  41 82 00 0C */	beq lbl_80393178
/* 80393170 0038EDD0  7C 00 22 14 */	add r0, r0, r4
/* 80393174 0038EDD4  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80393178:
/* 80393178 0038EDD8  2C 07 00 00 */	cmpwi r7, 0
/* 8039317C 0038EDDC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80393180 0038EDE0  41 82 00 BC */	beq lbl_8039323C
/* 80393184 0038EDE4  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80393188 0038EDE8  7C 09 03 A6 */	mtctr r0
/* 8039318C 0038EDEC  41 82 00 94 */	beq lbl_80393220
lbl_80393190:
/* 80393190 0038EDF0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80393194 0038EDF4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393198 0038EDF8  7C 00 22 14 */	add r0, r0, r4
/* 8039319C 0038EDFC  7C 06 21 2E */	stwx r0, r6, r4
/* 803931A0 0038EE00  80 C5 00 04 */	lwz r6, 4(r5)
/* 803931A4 0038EE04  7C 06 20 2E */	lwzx r0, r6, r4
/* 803931A8 0038EE08  7C 00 22 14 */	add r0, r0, r4
/* 803931AC 0038EE0C  7C 06 21 2E */	stwx r0, r6, r4
/* 803931B0 0038EE10  80 C5 00 08 */	lwz r6, 8(r5)
/* 803931B4 0038EE14  7C 06 20 2E */	lwzx r0, r6, r4
/* 803931B8 0038EE18  7C 00 22 14 */	add r0, r0, r4
/* 803931BC 0038EE1C  7C 06 21 2E */	stwx r0, r6, r4
/* 803931C0 0038EE20  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803931C4 0038EE24  7C 06 20 2E */	lwzx r0, r6, r4
/* 803931C8 0038EE28  7C 00 22 14 */	add r0, r0, r4
/* 803931CC 0038EE2C  7C 06 21 2E */	stwx r0, r6, r4
/* 803931D0 0038EE30  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803931D4 0038EE34  7C 06 20 2E */	lwzx r0, r6, r4
/* 803931D8 0038EE38  7C 00 22 14 */	add r0, r0, r4
/* 803931DC 0038EE3C  7C 06 21 2E */	stwx r0, r6, r4
/* 803931E0 0038EE40  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803931E4 0038EE44  7C 06 20 2E */	lwzx r0, r6, r4
/* 803931E8 0038EE48  7C 00 22 14 */	add r0, r0, r4
/* 803931EC 0038EE4C  7C 06 21 2E */	stwx r0, r6, r4
/* 803931F0 0038EE50  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803931F4 0038EE54  7C 06 20 2E */	lwzx r0, r6, r4
/* 803931F8 0038EE58  7C 00 22 14 */	add r0, r0, r4
/* 803931FC 0038EE5C  7C 06 21 2E */	stwx r0, r6, r4
/* 80393200 0038EE60  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80393204 0038EE64  38 A5 00 20 */	addi r5, r5, 0x20
/* 80393208 0038EE68  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039320C 0038EE6C  7C 00 22 14 */	add r0, r0, r4
/* 80393210 0038EE70  7C 06 21 2E */	stwx r0, r6, r4
/* 80393214 0038EE74  42 00 FF 7C */	bdnz lbl_80393190
/* 80393218 0038EE78  70 E7 00 07 */	andi. r7, r7, 7
/* 8039321C 0038EE7C  41 82 00 20 */	beq lbl_8039323C
lbl_80393220:
/* 80393220 0038EE80  7C E9 03 A6 */	mtctr r7
lbl_80393224:
/* 80393224 0038EE84  80 C5 00 00 */	lwz r6, 0(r5)
/* 80393228 0038EE88  38 A5 00 04 */	addi r5, r5, 4
/* 8039322C 0038EE8C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393230 0038EE90  7C 00 22 14 */	add r0, r0, r4
/* 80393234 0038EE94  7C 06 21 2E */	stwx r0, r6, r4
/* 80393238 0038EE98  42 00 FF EC */	bdnz lbl_80393224
lbl_8039323C:
/* 8039323C 0038EE9C  38 00 00 01 */	li r0, 1
/* 80393240 0038EEA0  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80393244:
/* 80393244 0038EEA4  90 83 00 00 */	stw r4, 0(r3)
/* 80393248 0038EEA8  38 60 00 00 */	li r3, 0
/* 8039324C 0038EEAC  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80393250 0038EEB0  38 05 00 01 */	addi r0, r5, 1
/* 80393254 0038EEB4  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80393258 0038EEB8  4E 80 00 20 */	blr 

.global func_8039325C
func_8039325C:
/* 8039325C 0038EEBC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393260 0038EEC0  7C 08 02 A6 */	mflr r0
/* 80393264 0038EEC4  2C 04 00 00 */	cmpwi r4, 0
/* 80393268 0038EEC8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039326C 0038EECC  38 00 00 00 */	li r0, 0
/* 80393270 0038EED0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393274 0038EED4  7C 7F 1B 78 */	mr r31, r3
/* 80393278 0038EED8  90 03 00 00 */	stw r0, 0(r3)
/* 8039327C 0038EEDC  41 82 00 08 */	beq lbl_80393284
/* 80393280 0038EEE0  48 00 00 1D */	bl func_8039329C
lbl_80393284:
/* 80393284 0038EEE4  7F E3 FB 78 */	mr r3, r31
/* 80393288 0038EEE8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039328C 0038EEEC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393290 0038EEF0  7C 08 03 A6 */	mtlr r0
/* 80393294 0038EEF4  38 21 00 10 */	addi r1, r1, 0x10
/* 80393298 0038EEF8  4E 80 00 20 */	blr 

.global func_8039329C
func_8039329C:
/* 8039329C 0038EEFC  2C 04 00 00 */	cmpwi r4, 0
/* 803932A0 0038EF00  40 82 00 0C */	bne lbl_803932AC
/* 803932A4 0038EF04  38 60 FF FF */	li r3, -1
/* 803932A8 0038EF08  4E 80 00 20 */	blr 
lbl_803932AC:
/* 803932AC 0038EF0C  80 03 00 00 */	lwz r0, 0(r3)
/* 803932B0 0038EF10  2C 00 00 00 */	cmpwi r0, 0
/* 803932B4 0038EF14  41 82 00 0C */	beq lbl_803932C0
/* 803932B8 0038EF18  38 60 FF FE */	li r3, -2
/* 803932BC 0038EF1C  4E 80 00 20 */	blr 
lbl_803932C0:
/* 803932C0 0038EF20  80 04 00 04 */	lwz r0, 4(r4)
/* 803932C4 0038EF24  28 00 00 38 */	cmplwi r0, 0x38
/* 803932C8 0038EF28  41 82 00 0C */	beq lbl_803932D4
/* 803932CC 0038EF2C  38 60 FF FD */	li r3, -3
/* 803932D0 0038EF30  4E 80 00 20 */	blr 
lbl_803932D4:
/* 803932D4 0038EF34  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803932D8 0038EF38  2C 00 00 00 */	cmpwi r0, 0
/* 803932DC 0038EF3C  40 82 01 0C */	bne lbl_803933E8
/* 803932E0 0038EF40  80 04 00 08 */	lwz r0, 8(r4)
/* 803932E4 0038EF44  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803932E8 0038EF48  7C E0 22 14 */	add r7, r0, r4
/* 803932EC 0038EF4C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803932F0 0038EF50  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803932F4 0038EF54  7C C6 22 14 */	add r6, r6, r4
/* 803932F8 0038EF58  7C A5 22 14 */	add r5, r5, r4
/* 803932FC 0038EF5C  90 E4 00 08 */	stw r7, 8(r4)
/* 80393300 0038EF60  2C 00 00 00 */	cmpwi r0, 0
/* 80393304 0038EF64  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80393308 0038EF68  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8039330C 0038EF6C  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80393310 0038EF70  41 82 00 0C */	beq lbl_8039331C
/* 80393314 0038EF74  7C 00 22 14 */	add r0, r0, r4
/* 80393318 0038EF78  90 04 00 20 */	stw r0, 0x20(r4)
lbl_8039331C:
/* 8039331C 0038EF7C  2C 07 00 00 */	cmpwi r7, 0
/* 80393320 0038EF80  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80393324 0038EF84  41 82 00 BC */	beq lbl_803933E0
/* 80393328 0038EF88  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 8039332C 0038EF8C  7C 09 03 A6 */	mtctr r0
/* 80393330 0038EF90  41 82 00 94 */	beq lbl_803933C4
lbl_80393334:
/* 80393334 0038EF94  80 C5 00 00 */	lwz r6, 0(r5)
/* 80393338 0038EF98  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039333C 0038EF9C  7C 00 22 14 */	add r0, r0, r4
/* 80393340 0038EFA0  7C 06 21 2E */	stwx r0, r6, r4
/* 80393344 0038EFA4  80 C5 00 04 */	lwz r6, 4(r5)
/* 80393348 0038EFA8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039334C 0038EFAC  7C 00 22 14 */	add r0, r0, r4
/* 80393350 0038EFB0  7C 06 21 2E */	stwx r0, r6, r4
/* 80393354 0038EFB4  80 C5 00 08 */	lwz r6, 8(r5)
/* 80393358 0038EFB8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039335C 0038EFBC  7C 00 22 14 */	add r0, r0, r4
/* 80393360 0038EFC0  7C 06 21 2E */	stwx r0, r6, r4
/* 80393364 0038EFC4  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80393368 0038EFC8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039336C 0038EFCC  7C 00 22 14 */	add r0, r0, r4
/* 80393370 0038EFD0  7C 06 21 2E */	stwx r0, r6, r4
/* 80393374 0038EFD4  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80393378 0038EFD8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039337C 0038EFDC  7C 00 22 14 */	add r0, r0, r4
/* 80393380 0038EFE0  7C 06 21 2E */	stwx r0, r6, r4
/* 80393384 0038EFE4  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80393388 0038EFE8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039338C 0038EFEC  7C 00 22 14 */	add r0, r0, r4
/* 80393390 0038EFF0  7C 06 21 2E */	stwx r0, r6, r4
/* 80393394 0038EFF4  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80393398 0038EFF8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039339C 0038EFFC  7C 00 22 14 */	add r0, r0, r4
/* 803933A0 0038F000  7C 06 21 2E */	stwx r0, r6, r4
/* 803933A4 0038F004  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803933A8 0038F008  38 A5 00 20 */	addi r5, r5, 0x20
/* 803933AC 0038F00C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803933B0 0038F010  7C 00 22 14 */	add r0, r0, r4
/* 803933B4 0038F014  7C 06 21 2E */	stwx r0, r6, r4
/* 803933B8 0038F018  42 00 FF 7C */	bdnz lbl_80393334
/* 803933BC 0038F01C  70 E7 00 07 */	andi. r7, r7, 7
/* 803933C0 0038F020  41 82 00 20 */	beq lbl_803933E0
lbl_803933C4:
/* 803933C4 0038F024  7C E9 03 A6 */	mtctr r7
lbl_803933C8:
/* 803933C8 0038F028  80 C5 00 00 */	lwz r6, 0(r5)
/* 803933CC 0038F02C  38 A5 00 04 */	addi r5, r5, 4
/* 803933D0 0038F030  7C 06 20 2E */	lwzx r0, r6, r4
/* 803933D4 0038F034  7C 00 22 14 */	add r0, r0, r4
/* 803933D8 0038F038  7C 06 21 2E */	stwx r0, r6, r4
/* 803933DC 0038F03C  42 00 FF EC */	bdnz lbl_803933C8
lbl_803933E0:
/* 803933E0 0038F040  38 00 00 01 */	li r0, 1
/* 803933E4 0038F044  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803933E8:
/* 803933E8 0038F048  90 83 00 00 */	stw r4, 0(r3)
/* 803933EC 0038F04C  38 60 00 00 */	li r3, 0
/* 803933F0 0038F050  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803933F4 0038F054  38 05 00 01 */	addi r0, r5, 1
/* 803933F8 0038F058  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803933FC 0038F05C  4E 80 00 20 */	blr 

.global func_80393400
func_80393400:
/* 80393400 0038F060  80 63 00 00 */	lwz r3, 0(r3)
/* 80393404 0038F064  2C 03 00 00 */	cmpwi r3, 0
/* 80393408 0038F068  40 82 00 0C */	bne lbl_80393414
/* 8039340C 0038F06C  38 60 00 00 */	li r3, 0
/* 80393410 0038F070  4E 80 00 20 */	blr 
lbl_80393414:
/* 80393414 0038F074  2C 04 00 00 */	cmpwi r4, 0
/* 80393418 0038F078  40 80 00 0C */	bge lbl_80393424
/* 8039341C 0038F07C  38 60 00 00 */	li r3, 0
/* 80393420 0038F080  4E 80 00 20 */	blr 
lbl_80393424:
/* 80393424 0038F084  1C 04 00 38 */	mulli r0, r4, 0x38
/* 80393428 0038F088  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8039342C 0038F08C  7C 63 02 14 */	add r3, r3, r0
/* 80393430 0038F090  4E 80 00 20 */	blr 

.global func_80393434
func_80393434:
/* 80393434 0038F094  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393438 0038F098  7C 08 02 A6 */	mflr r0
/* 8039343C 0038F09C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393440 0038F0A0  4B FF FF C1 */	bl func_80393400
/* 80393444 0038F0A4  2C 03 00 00 */	cmpwi r3, 0
/* 80393448 0038F0A8  41 82 00 0C */	beq lbl_80393454
/* 8039344C 0038F0AC  88 63 00 34 */	lbz r3, 0x34(r3)
/* 80393450 0038F0B0  48 00 00 08 */	b lbl_80393458
lbl_80393454:
/* 80393454 0038F0B4  38 60 00 00 */	li r3, 0
lbl_80393458:
/* 80393458 0038F0B8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039345C 0038F0BC  7C 08 03 A6 */	mtlr r0
/* 80393460 0038F0C0  38 21 00 10 */	addi r1, r1, 0x10
/* 80393464 0038F0C4  4E 80 00 20 */	blr 

.global func_80393468
func_80393468:
/* 80393468 0038F0C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039346C 0038F0CC  7C 08 02 A6 */	mflr r0
/* 80393470 0038F0D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393474 0038F0D4  4B FF FF 8D */	bl func_80393400
/* 80393478 0038F0D8  2C 03 00 00 */	cmpwi r3, 0
/* 8039347C 0038F0DC  41 82 00 0C */	beq lbl_80393488
/* 80393480 0038F0E0  C0 23 00 00 */	lfs f1, 0(r3)
/* 80393484 0038F0E4  48 00 00 08 */	b lbl_8039348C
lbl_80393488:
/* 80393488 0038F0E8  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_8039348C:
/* 8039348C 0038F0EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393490 0038F0F0  7C 08 03 A6 */	mtlr r0
/* 80393494 0038F0F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80393498 0038F0F8  4E 80 00 20 */	blr 

.global func_8039349C
func_8039349C:
/* 8039349C 0038F0FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803934A0 0038F100  7C 08 02 A6 */	mflr r0
/* 803934A4 0038F104  90 01 00 14 */	stw r0, 0x14(r1)
/* 803934A8 0038F108  4B FF FF 59 */	bl func_80393400
/* 803934AC 0038F10C  2C 03 00 00 */	cmpwi r3, 0
/* 803934B0 0038F110  41 82 00 0C */	beq lbl_803934BC
/* 803934B4 0038F114  C0 23 00 04 */	lfs f1, 4(r3)
/* 803934B8 0038F118  48 00 00 08 */	b lbl_803934C0
lbl_803934BC:
/* 803934BC 0038F11C  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_803934C0:
/* 803934C0 0038F120  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803934C4 0038F124  7C 08 03 A6 */	mtlr r0
/* 803934C8 0038F128  38 21 00 10 */	addi r1, r1, 0x10
/* 803934CC 0038F12C  4E 80 00 20 */	blr 

.global func_803934D0
func_803934D0:
/* 803934D0 0038F130  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803934D4 0038F134  7C 08 02 A6 */	mflr r0
/* 803934D8 0038F138  90 01 00 14 */	stw r0, 0x14(r1)
/* 803934DC 0038F13C  4B FF FF 25 */	bl func_80393400
/* 803934E0 0038F140  2C 03 00 00 */	cmpwi r3, 0
/* 803934E4 0038F144  41 82 00 0C */	beq lbl_803934F0
/* 803934E8 0038F148  88 63 00 35 */	lbz r3, 0x35(r3)
/* 803934EC 0038F14C  48 00 00 08 */	b lbl_803934F4
lbl_803934F0:
/* 803934F0 0038F150  38 60 00 00 */	li r3, 0
lbl_803934F4:
/* 803934F4 0038F154  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803934F8 0038F158  7C 08 03 A6 */	mtlr r0
/* 803934FC 0038F15C  38 21 00 10 */	addi r1, r1, 0x10
/* 80393500 0038F160  4E 80 00 20 */	blr 

.global func_80393504
func_80393504:
/* 80393504 0038F164  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393508 0038F168  7C 08 02 A6 */	mflr r0
/* 8039350C 0038F16C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393510 0038F170  4B FF FE F1 */	bl func_80393400
/* 80393514 0038F174  2C 03 00 00 */	cmpwi r3, 0
/* 80393518 0038F178  41 82 00 0C */	beq lbl_80393524
/* 8039351C 0038F17C  C0 23 00 08 */	lfs f1, 8(r3)
/* 80393520 0038F180  48 00 00 08 */	b lbl_80393528
lbl_80393524:
/* 80393524 0038F184  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_80393528:
/* 80393528 0038F188  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039352C 0038F18C  7C 08 03 A6 */	mtlr r0
/* 80393530 0038F190  38 21 00 10 */	addi r1, r1, 0x10
/* 80393534 0038F194  4E 80 00 20 */	blr 

.global func_80393538
func_80393538:
/* 80393538 0038F198  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039353C 0038F19C  7C 08 02 A6 */	mflr r0
/* 80393540 0038F1A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393544 0038F1A4  4B FF FE BD */	bl func_80393400
/* 80393548 0038F1A8  2C 03 00 00 */	cmpwi r3, 0
/* 8039354C 0038F1AC  41 82 00 0C */	beq lbl_80393558
/* 80393550 0038F1B0  C0 23 00 0C */	lfs f1, 0xc(r3)
/* 80393554 0038F1B4  48 00 00 08 */	b lbl_8039355C
lbl_80393558:
/* 80393558 0038F1B8  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_8039355C:
/* 8039355C 0038F1BC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393560 0038F1C0  7C 08 03 A6 */	mtlr r0
/* 80393564 0038F1C4  38 21 00 10 */	addi r1, r1, 0x10
/* 80393568 0038F1C8  4E 80 00 20 */	blr 

.global func_8039356C
func_8039356C:
/* 8039356C 0038F1CC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393570 0038F1D0  7C 08 02 A6 */	mflr r0
/* 80393574 0038F1D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393578 0038F1D8  4B FF FE 89 */	bl func_80393400
/* 8039357C 0038F1DC  2C 03 00 00 */	cmpwi r3, 0
/* 80393580 0038F1E0  41 82 00 0C */	beq lbl_8039358C
/* 80393584 0038F1E4  C0 23 00 10 */	lfs f1, 0x10(r3)
/* 80393588 0038F1E8  48 00 00 08 */	b lbl_80393590
lbl_8039358C:
/* 8039358C 0038F1EC  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_80393590:
/* 80393590 0038F1F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393594 0038F1F4  7C 08 03 A6 */	mtlr r0
/* 80393598 0038F1F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039359C 0038F1FC  4E 80 00 20 */	blr 

.global func_803935A0
func_803935A0:
/* 803935A0 0038F200  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803935A4 0038F204  7C 08 02 A6 */	mflr r0
/* 803935A8 0038F208  90 01 00 14 */	stw r0, 0x14(r1)
/* 803935AC 0038F20C  4B FF FE 55 */	bl func_80393400
/* 803935B0 0038F210  2C 03 00 00 */	cmpwi r3, 0
/* 803935B4 0038F214  41 82 00 0C */	beq lbl_803935C0
/* 803935B8 0038F218  C0 23 00 14 */	lfs f1, 0x14(r3)
/* 803935BC 0038F21C  48 00 00 08 */	b lbl_803935C4
lbl_803935C0:
/* 803935C0 0038F220  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_803935C4:
/* 803935C4 0038F224  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803935C8 0038F228  7C 08 03 A6 */	mtlr r0
/* 803935CC 0038F22C  38 21 00 10 */	addi r1, r1, 0x10
/* 803935D0 0038F230  4E 80 00 20 */	blr 

.global func_803935D4
func_803935D4:
/* 803935D4 0038F234  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803935D8 0038F238  7C 08 02 A6 */	mflr r0
/* 803935DC 0038F23C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803935E0 0038F240  4B FF FE 21 */	bl func_80393400
/* 803935E4 0038F244  2C 03 00 00 */	cmpwi r3, 0
/* 803935E8 0038F248  41 82 00 0C */	beq lbl_803935F4
/* 803935EC 0038F24C  C0 23 00 18 */	lfs f1, 0x18(r3)
/* 803935F0 0038F250  48 00 00 08 */	b lbl_803935F8
lbl_803935F4:
/* 803935F4 0038F254  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_803935F8:
/* 803935F8 0038F258  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803935FC 0038F25C  7C 08 03 A6 */	mtlr r0
/* 80393600 0038F260  38 21 00 10 */	addi r1, r1, 0x10
/* 80393604 0038F264  4E 80 00 20 */	blr 

.global func_80393608
func_80393608:
/* 80393608 0038F268  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039360C 0038F26C  7C 08 02 A6 */	mflr r0
/* 80393610 0038F270  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393614 0038F274  4B FF FD ED */	bl func_80393400
/* 80393618 0038F278  2C 03 00 00 */	cmpwi r3, 0
/* 8039361C 0038F27C  41 82 00 0C */	beq lbl_80393628
/* 80393620 0038F280  C0 23 00 1C */	lfs f1, 0x1c(r3)
/* 80393624 0038F284  48 00 00 08 */	b lbl_8039362C
lbl_80393628:
/* 80393628 0038F288  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_8039362C:
/* 8039362C 0038F28C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393630 0038F290  7C 08 03 A6 */	mtlr r0
/* 80393634 0038F294  38 21 00 10 */	addi r1, r1, 0x10
/* 80393638 0038F298  4E 80 00 20 */	blr 

.global func_8039363C
func_8039363C:
/* 8039363C 0038F29C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393640 0038F2A0  7C 08 02 A6 */	mflr r0
/* 80393644 0038F2A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393648 0038F2A8  4B FF FD B9 */	bl func_80393400
/* 8039364C 0038F2AC  2C 03 00 00 */	cmpwi r3, 0
/* 80393650 0038F2B0  41 82 00 0C */	beq lbl_8039365C
/* 80393654 0038F2B4  C0 23 00 20 */	lfs f1, 0x20(r3)
/* 80393658 0038F2B8  48 00 00 08 */	b lbl_80393660
lbl_8039365C:
/* 8039365C 0038F2BC  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_80393660:
/* 80393660 0038F2C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393664 0038F2C4  7C 08 03 A6 */	mtlr r0
/* 80393668 0038F2C8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039366C 0038F2CC  4E 80 00 20 */	blr 

.global func_80393670
func_80393670:
/* 80393670 0038F2D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393674 0038F2D4  7C 08 02 A6 */	mflr r0
/* 80393678 0038F2D8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039367C 0038F2DC  4B FF FD 85 */	bl func_80393400
/* 80393680 0038F2E0  2C 03 00 00 */	cmpwi r3, 0
/* 80393684 0038F2E4  41 82 00 0C */	beq lbl_80393690
/* 80393688 0038F2E8  C0 23 00 24 */	lfs f1, 0x24(r3)
/* 8039368C 0038F2EC  48 00 00 08 */	b lbl_80393694
lbl_80393690:
/* 80393690 0038F2F0  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_80393694:
/* 80393694 0038F2F4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393698 0038F2F8  7C 08 03 A6 */	mtlr r0
/* 8039369C 0038F2FC  38 21 00 10 */	addi r1, r1, 0x10
/* 803936A0 0038F300  4E 80 00 20 */	blr 

.global func_803936A4
func_803936A4:
/* 803936A4 0038F304  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803936A8 0038F308  7C 08 02 A6 */	mflr r0
/* 803936AC 0038F30C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803936B0 0038F310  4B FF FD 51 */	bl func_80393400
/* 803936B4 0038F314  2C 03 00 00 */	cmpwi r3, 0
/* 803936B8 0038F318  41 82 00 0C */	beq lbl_803936C4
/* 803936BC 0038F31C  C0 23 00 28 */	lfs f1, 0x28(r3)
/* 803936C0 0038F320  48 00 00 08 */	b lbl_803936C8
lbl_803936C4:
/* 803936C4 0038F324  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_803936C8:
/* 803936C8 0038F328  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803936CC 0038F32C  7C 08 03 A6 */	mtlr r0
/* 803936D0 0038F330  38 21 00 10 */	addi r1, r1, 0x10
/* 803936D4 0038F334  4E 80 00 20 */	blr 

.global func_803936D8
func_803936D8:
/* 803936D8 0038F338  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803936DC 0038F33C  7C 08 02 A6 */	mflr r0
/* 803936E0 0038F340  90 01 00 14 */	stw r0, 0x14(r1)
/* 803936E4 0038F344  4B FF FD 1D */	bl func_80393400
/* 803936E8 0038F348  2C 03 00 00 */	cmpwi r3, 0
/* 803936EC 0038F34C  41 82 00 0C */	beq lbl_803936F8
/* 803936F0 0038F350  C0 23 00 2C */	lfs f1, 0x2c(r3)
/* 803936F4 0038F354  48 00 00 08 */	b lbl_803936FC
lbl_803936F8:
/* 803936F8 0038F358  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_803936FC:
/* 803936FC 0038F35C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393700 0038F360  7C 08 03 A6 */	mtlr r0
/* 80393704 0038F364  38 21 00 10 */	addi r1, r1, 0x10
/* 80393708 0038F368  4E 80 00 20 */	blr 

.global func_8039370C
func_8039370C:
/* 8039370C 0038F36C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393710 0038F370  7C 08 02 A6 */	mflr r0
/* 80393714 0038F374  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393718 0038F378  4B FF FC E9 */	bl func_80393400
/* 8039371C 0038F37C  2C 03 00 00 */	cmpwi r3, 0
/* 80393720 0038F380  41 82 00 0C */	beq lbl_8039372C
/* 80393724 0038F384  C0 23 00 30 */	lfs f1, 0x30(r3)
/* 80393728 0038F388  48 00 00 08 */	b lbl_80393730
lbl_8039372C:
/* 8039372C 0038F38C  C0 22 A9 10 */	lfs f1, lbl_80642F10-_SDA2_BASE_(r2)
lbl_80393730:
/* 80393730 0038F390  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393734 0038F394  7C 08 03 A6 */	mtlr r0
/* 80393738 0038F398  38 21 00 10 */	addi r1, r1, 0x10
/* 8039373C 0038F39C  4E 80 00 20 */	blr 

.global func_80393740
func_80393740:
/* 80393740 0038F3A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393744 0038F3A4  7C 08 02 A6 */	mflr r0
/* 80393748 0038F3A8  2C 04 00 00 */	cmpwi r4, 0
/* 8039374C 0038F3AC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393750 0038F3B0  38 00 00 00 */	li r0, 0
/* 80393754 0038F3B4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393758 0038F3B8  7C 7F 1B 78 */	mr r31, r3
/* 8039375C 0038F3BC  90 03 00 00 */	stw r0, 0(r3)
/* 80393760 0038F3C0  41 82 00 08 */	beq lbl_80393768
/* 80393764 0038F3C4  48 00 00 1D */	bl func_80393780
lbl_80393768:
/* 80393768 0038F3C8  7F E3 FB 78 */	mr r3, r31
/* 8039376C 0038F3CC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393770 0038F3D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393774 0038F3D4  7C 08 03 A6 */	mtlr r0
/* 80393778 0038F3D8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039377C 0038F3DC  4E 80 00 20 */	blr 

.global func_80393780
func_80393780:
/* 80393780 0038F3E0  2C 04 00 00 */	cmpwi r4, 0
/* 80393784 0038F3E4  40 82 00 0C */	bne lbl_80393790
/* 80393788 0038F3E8  38 60 FF FF */	li r3, -1
/* 8039378C 0038F3EC  4E 80 00 20 */	blr 
lbl_80393790:
/* 80393790 0038F3F0  80 03 00 00 */	lwz r0, 0(r3)
/* 80393794 0038F3F4  2C 00 00 00 */	cmpwi r0, 0
/* 80393798 0038F3F8  41 82 00 0C */	beq lbl_803937A4
/* 8039379C 0038F3FC  38 60 FF FE */	li r3, -2
/* 803937A0 0038F400  4E 80 00 20 */	blr 
lbl_803937A4:
/* 803937A4 0038F404  80 04 00 04 */	lwz r0, 4(r4)
/* 803937A8 0038F408  28 00 00 46 */	cmplwi r0, 0x46
/* 803937AC 0038F40C  41 82 00 0C */	beq lbl_803937B8
/* 803937B0 0038F410  38 60 FF FD */	li r3, -3
/* 803937B4 0038F414  4E 80 00 20 */	blr 
lbl_803937B8:
/* 803937B8 0038F418  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803937BC 0038F41C  2C 00 00 00 */	cmpwi r0, 0
/* 803937C0 0038F420  40 82 01 0C */	bne lbl_803938CC
/* 803937C4 0038F424  80 04 00 08 */	lwz r0, 8(r4)
/* 803937C8 0038F428  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803937CC 0038F42C  7C E0 22 14 */	add r7, r0, r4
/* 803937D0 0038F430  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803937D4 0038F434  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803937D8 0038F438  7C C6 22 14 */	add r6, r6, r4
/* 803937DC 0038F43C  7C A5 22 14 */	add r5, r5, r4
/* 803937E0 0038F440  90 E4 00 08 */	stw r7, 8(r4)
/* 803937E4 0038F444  2C 00 00 00 */	cmpwi r0, 0
/* 803937E8 0038F448  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803937EC 0038F44C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803937F0 0038F450  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803937F4 0038F454  41 82 00 0C */	beq lbl_80393800
/* 803937F8 0038F458  7C 00 22 14 */	add r0, r0, r4
/* 803937FC 0038F45C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80393800:
/* 80393800 0038F460  2C 07 00 00 */	cmpwi r7, 0
/* 80393804 0038F464  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80393808 0038F468  41 82 00 BC */	beq lbl_803938C4
/* 8039380C 0038F46C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80393810 0038F470  7C 09 03 A6 */	mtctr r0
/* 80393814 0038F474  41 82 00 94 */	beq lbl_803938A8
lbl_80393818:
/* 80393818 0038F478  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039381C 0038F47C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393820 0038F480  7C 00 22 14 */	add r0, r0, r4
/* 80393824 0038F484  7C 06 21 2E */	stwx r0, r6, r4
/* 80393828 0038F488  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039382C 0038F48C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393830 0038F490  7C 00 22 14 */	add r0, r0, r4
/* 80393834 0038F494  7C 06 21 2E */	stwx r0, r6, r4
/* 80393838 0038F498  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039383C 0038F49C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393840 0038F4A0  7C 00 22 14 */	add r0, r0, r4
/* 80393844 0038F4A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80393848 0038F4A8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039384C 0038F4AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393850 0038F4B0  7C 00 22 14 */	add r0, r0, r4
/* 80393854 0038F4B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80393858 0038F4B8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039385C 0038F4BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393860 0038F4C0  7C 00 22 14 */	add r0, r0, r4
/* 80393864 0038F4C4  7C 06 21 2E */	stwx r0, r6, r4
/* 80393868 0038F4C8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039386C 0038F4CC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393870 0038F4D0  7C 00 22 14 */	add r0, r0, r4
/* 80393874 0038F4D4  7C 06 21 2E */	stwx r0, r6, r4
/* 80393878 0038F4D8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039387C 0038F4DC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393880 0038F4E0  7C 00 22 14 */	add r0, r0, r4
/* 80393884 0038F4E4  7C 06 21 2E */	stwx r0, r6, r4
/* 80393888 0038F4E8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039388C 0038F4EC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80393890 0038F4F0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393894 0038F4F4  7C 00 22 14 */	add r0, r0, r4
/* 80393898 0038F4F8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039389C 0038F4FC  42 00 FF 7C */	bdnz lbl_80393818
/* 803938A0 0038F500  70 E7 00 07 */	andi. r7, r7, 7
/* 803938A4 0038F504  41 82 00 20 */	beq lbl_803938C4
lbl_803938A8:
/* 803938A8 0038F508  7C E9 03 A6 */	mtctr r7
lbl_803938AC:
/* 803938AC 0038F50C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803938B0 0038F510  38 A5 00 04 */	addi r5, r5, 4
/* 803938B4 0038F514  7C 06 20 2E */	lwzx r0, r6, r4
/* 803938B8 0038F518  7C 00 22 14 */	add r0, r0, r4
/* 803938BC 0038F51C  7C 06 21 2E */	stwx r0, r6, r4
/* 803938C0 0038F520  42 00 FF EC */	bdnz lbl_803938AC
lbl_803938C4:
/* 803938C4 0038F524  38 00 00 01 */	li r0, 1
/* 803938C8 0038F528  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803938CC:
/* 803938CC 0038F52C  90 83 00 00 */	stw r4, 0(r3)
/* 803938D0 0038F530  38 60 00 00 */	li r3, 0
/* 803938D4 0038F534  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803938D8 0038F538  38 05 00 01 */	addi r0, r5, 1
/* 803938DC 0038F53C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803938E0 0038F540  4E 80 00 20 */	blr 

.global func_803938E4
func_803938E4:
/* 803938E4 0038F544  80 63 00 00 */	lwz r3, 0(r3)
/* 803938E8 0038F548  2C 03 00 00 */	cmpwi r3, 0
/* 803938EC 0038F54C  40 82 00 0C */	bne lbl_803938F8
/* 803938F0 0038F550  38 60 00 00 */	li r3, 0
/* 803938F4 0038F554  4E 80 00 20 */	blr 
lbl_803938F8:
/* 803938F8 0038F558  2C 04 00 00 */	cmpwi r4, 0
/* 803938FC 0038F55C  40 80 00 0C */	bge lbl_80393908
/* 80393900 0038F560  38 60 00 00 */	li r3, 0
/* 80393904 0038F564  4E 80 00 20 */	blr 
lbl_80393908:
/* 80393908 0038F568  1C 04 00 46 */	mulli r0, r4, 0x46
/* 8039390C 0038F56C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80393910 0038F570  7C 63 02 14 */	add r3, r3, r0
/* 80393914 0038F574  4E 80 00 20 */	blr 

.global func_80393918
func_80393918:
/* 80393918 0038F578  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039391C 0038F57C  7C 08 02 A6 */	mflr r0
/* 80393920 0038F580  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393924 0038F584  4B FF FF C1 */	bl func_803938E4
/* 80393928 0038F588  2C 03 00 00 */	cmpwi r3, 0
/* 8039392C 0038F58C  41 82 00 0C */	beq lbl_80393938
/* 80393930 0038F590  88 63 00 2A */	lbz r3, 0x2a(r3)
/* 80393934 0038F594  48 00 00 08 */	b lbl_8039393C
lbl_80393938:
/* 80393938 0038F598  38 60 00 00 */	li r3, 0
lbl_8039393C:
/* 8039393C 0038F59C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393940 0038F5A0  7C 08 03 A6 */	mtlr r0
/* 80393944 0038F5A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80393948 0038F5A8  4E 80 00 20 */	blr 

.global func_8039394C
func_8039394C:
/* 8039394C 0038F5AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393950 0038F5B0  7C 08 02 A6 */	mflr r0
/* 80393954 0038F5B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393958 0038F5B8  4B FF FF 8D */	bl func_803938E4
/* 8039395C 0038F5BC  2C 03 00 00 */	cmpwi r3, 0
/* 80393960 0038F5C0  41 82 00 0C */	beq lbl_8039396C
/* 80393964 0038F5C4  A8 63 00 00 */	lha r3, 0(r3)
/* 80393968 0038F5C8  48 00 00 08 */	b lbl_80393970
lbl_8039396C:
/* 8039396C 0038F5CC  38 60 00 00 */	li r3, 0
lbl_80393970:
/* 80393970 0038F5D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393974 0038F5D4  7C 08 03 A6 */	mtlr r0
/* 80393978 0038F5D8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039397C 0038F5DC  4E 80 00 20 */	blr 

.global func_80393980
func_80393980:
/* 80393980 0038F5E0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393984 0038F5E4  7C 08 02 A6 */	mflr r0
/* 80393988 0038F5E8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039398C 0038F5EC  4B FF FF 59 */	bl func_803938E4
/* 80393990 0038F5F0  2C 03 00 00 */	cmpwi r3, 0
/* 80393994 0038F5F4  41 82 00 0C */	beq lbl_803939A0
/* 80393998 0038F5F8  88 63 00 2B */	lbz r3, 0x2b(r3)
/* 8039399C 0038F5FC  48 00 00 08 */	b lbl_803939A4
lbl_803939A0:
/* 803939A0 0038F600  38 60 00 00 */	li r3, 0
lbl_803939A4:
/* 803939A4 0038F604  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803939A8 0038F608  7C 08 03 A6 */	mtlr r0
/* 803939AC 0038F60C  38 21 00 10 */	addi r1, r1, 0x10
/* 803939B0 0038F610  4E 80 00 20 */	blr 

.global func_803939B4
func_803939B4:
/* 803939B4 0038F614  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803939B8 0038F618  7C 08 02 A6 */	mflr r0
/* 803939BC 0038F61C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803939C0 0038F620  4B FF FF 25 */	bl func_803938E4
/* 803939C4 0038F624  2C 03 00 00 */	cmpwi r3, 0
/* 803939C8 0038F628  41 82 00 0C */	beq lbl_803939D4
/* 803939CC 0038F62C  88 63 00 2C */	lbz r3, 0x2c(r3)
/* 803939D0 0038F630  48 00 00 08 */	b lbl_803939D8
lbl_803939D4:
/* 803939D4 0038F634  38 60 00 00 */	li r3, 0
lbl_803939D8:
/* 803939D8 0038F638  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803939DC 0038F63C  7C 08 03 A6 */	mtlr r0
/* 803939E0 0038F640  38 21 00 10 */	addi r1, r1, 0x10
/* 803939E4 0038F644  4E 80 00 20 */	blr 

.global func_803939E8
func_803939E8:
/* 803939E8 0038F648  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803939EC 0038F64C  7C 08 02 A6 */	mflr r0
/* 803939F0 0038F650  90 01 00 14 */	stw r0, 0x14(r1)
/* 803939F4 0038F654  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803939F8 0038F658  7C BF 2B 78 */	mr r31, r5
/* 803939FC 0038F65C  4B FF FE E9 */	bl func_803938E4
/* 80393A00 0038F660  2C 03 00 00 */	cmpwi r3, 0
/* 80393A04 0038F664  40 82 00 0C */	bne lbl_80393A10
/* 80393A08 0038F668  38 60 00 00 */	li r3, 0
/* 80393A0C 0038F66C  48 00 00 20 */	b lbl_80393A2C
lbl_80393A10:
/* 80393A10 0038F670  28 1F 00 04 */	cmplwi r31, 4
/* 80393A14 0038F674  41 80 00 0C */	blt lbl_80393A20
/* 80393A18 0038F678  38 60 00 00 */	li r3, 0
/* 80393A1C 0038F67C  48 00 00 10 */	b lbl_80393A2C
lbl_80393A20:
/* 80393A20 0038F680  57 E0 08 3C */	slwi r0, r31, 1
/* 80393A24 0038F684  7C 63 02 14 */	add r3, r3, r0
/* 80393A28 0038F688  A8 63 00 02 */	lha r3, 2(r3)
lbl_80393A2C:
/* 80393A2C 0038F68C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393A30 0038F690  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393A34 0038F694  7C 08 03 A6 */	mtlr r0
/* 80393A38 0038F698  38 21 00 10 */	addi r1, r1, 0x10
/* 80393A3C 0038F69C  4E 80 00 20 */	blr 

.global func_80393A40
func_80393A40:
/* 80393A40 0038F6A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393A44 0038F6A4  7C 08 02 A6 */	mflr r0
/* 80393A48 0038F6A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393A4C 0038F6AC  4B FF FE 99 */	bl func_803938E4
/* 80393A50 0038F6B0  2C 03 00 00 */	cmpwi r3, 0
/* 80393A54 0038F6B4  41 82 00 0C */	beq lbl_80393A60
/* 80393A58 0038F6B8  88 63 00 2D */	lbz r3, 0x2d(r3)
/* 80393A5C 0038F6BC  48 00 00 08 */	b lbl_80393A64
lbl_80393A60:
/* 80393A60 0038F6C0  38 60 00 00 */	li r3, 0
lbl_80393A64:
/* 80393A64 0038F6C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393A68 0038F6C8  7C 08 03 A6 */	mtlr r0
/* 80393A6C 0038F6CC  38 21 00 10 */	addi r1, r1, 0x10
/* 80393A70 0038F6D0  4E 80 00 20 */	blr 

.global func_80393A74
func_80393A74:
/* 80393A74 0038F6D4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393A78 0038F6D8  7C 08 02 A6 */	mflr r0
/* 80393A7C 0038F6DC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393A80 0038F6E0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393A84 0038F6E4  7C BF 2B 78 */	mr r31, r5
/* 80393A88 0038F6E8  4B FF FE 5D */	bl func_803938E4
/* 80393A8C 0038F6EC  2C 03 00 00 */	cmpwi r3, 0
/* 80393A90 0038F6F0  40 82 00 0C */	bne lbl_80393A9C
/* 80393A94 0038F6F4  38 60 00 00 */	li r3, 0
/* 80393A98 0038F6F8  48 00 00 1C */	b lbl_80393AB4
lbl_80393A9C:
/* 80393A9C 0038F6FC  28 1F 00 04 */	cmplwi r31, 4
/* 80393AA0 0038F700  41 80 00 0C */	blt lbl_80393AAC
/* 80393AA4 0038F704  38 60 00 00 */	li r3, 0
/* 80393AA8 0038F708  48 00 00 0C */	b lbl_80393AB4
lbl_80393AAC:
/* 80393AAC 0038F70C  7C 63 FA 14 */	add r3, r3, r31
/* 80393AB0 0038F710  88 63 00 2E */	lbz r3, 0x2e(r3)
lbl_80393AB4:
/* 80393AB4 0038F714  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393AB8 0038F718  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393ABC 0038F71C  7C 08 03 A6 */	mtlr r0
/* 80393AC0 0038F720  38 21 00 10 */	addi r1, r1, 0x10
/* 80393AC4 0038F724  4E 80 00 20 */	blr 

.global func_80393AC8
func_80393AC8:
/* 80393AC8 0038F728  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393ACC 0038F72C  7C 08 02 A6 */	mflr r0
/* 80393AD0 0038F730  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393AD4 0038F734  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393AD8 0038F738  7C BF 2B 78 */	mr r31, r5
/* 80393ADC 0038F73C  4B FF FE 09 */	bl func_803938E4
/* 80393AE0 0038F740  2C 03 00 00 */	cmpwi r3, 0
/* 80393AE4 0038F744  40 82 00 0C */	bne lbl_80393AF0
/* 80393AE8 0038F748  38 60 00 00 */	li r3, 0
/* 80393AEC 0038F74C  48 00 00 20 */	b lbl_80393B0C
lbl_80393AF0:
/* 80393AF0 0038F750  28 1F 00 04 */	cmplwi r31, 4
/* 80393AF4 0038F754  41 80 00 0C */	blt lbl_80393B00
/* 80393AF8 0038F758  38 60 00 00 */	li r3, 0
/* 80393AFC 0038F75C  48 00 00 10 */	b lbl_80393B0C
lbl_80393B00:
/* 80393B00 0038F760  57 E0 08 3C */	slwi r0, r31, 1
/* 80393B04 0038F764  7C 63 02 14 */	add r3, r3, r0
/* 80393B08 0038F768  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_80393B0C:
/* 80393B0C 0038F76C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393B10 0038F770  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393B14 0038F774  7C 08 03 A6 */	mtlr r0
/* 80393B18 0038F778  38 21 00 10 */	addi r1, r1, 0x10
/* 80393B1C 0038F77C  4E 80 00 20 */	blr 

.global func_80393B20
func_80393B20:
/* 80393B20 0038F780  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393B24 0038F784  7C 08 02 A6 */	mflr r0
/* 80393B28 0038F788  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393B2C 0038F78C  4B FF FD B9 */	bl func_803938E4
/* 80393B30 0038F790  2C 03 00 00 */	cmpwi r3, 0
/* 80393B34 0038F794  41 82 00 0C */	beq lbl_80393B40
/* 80393B38 0038F798  88 63 00 32 */	lbz r3, 0x32(r3)
/* 80393B3C 0038F79C  48 00 00 08 */	b lbl_80393B44
lbl_80393B40:
/* 80393B40 0038F7A0  38 60 00 00 */	li r3, 0
lbl_80393B44:
/* 80393B44 0038F7A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393B48 0038F7A8  7C 08 03 A6 */	mtlr r0
/* 80393B4C 0038F7AC  38 21 00 10 */	addi r1, r1, 0x10
/* 80393B50 0038F7B0  4E 80 00 20 */	blr 

.global func_80393B54
func_80393B54:
/* 80393B54 0038F7B4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393B58 0038F7B8  7C 08 02 A6 */	mflr r0
/* 80393B5C 0038F7BC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393B60 0038F7C0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393B64 0038F7C4  7C BF 2B 78 */	mr r31, r5
/* 80393B68 0038F7C8  4B FF FD 7D */	bl func_803938E4
/* 80393B6C 0038F7CC  2C 03 00 00 */	cmpwi r3, 0
/* 80393B70 0038F7D0  40 82 00 0C */	bne lbl_80393B7C
/* 80393B74 0038F7D4  38 60 00 00 */	li r3, 0
/* 80393B78 0038F7D8  48 00 00 1C */	b lbl_80393B94
lbl_80393B7C:
/* 80393B7C 0038F7DC  28 1F 00 04 */	cmplwi r31, 4
/* 80393B80 0038F7E0  41 80 00 0C */	blt lbl_80393B8C
/* 80393B84 0038F7E4  38 60 00 00 */	li r3, 0
/* 80393B88 0038F7E8  48 00 00 0C */	b lbl_80393B94
lbl_80393B8C:
/* 80393B8C 0038F7EC  7C 63 FA 14 */	add r3, r3, r31
/* 80393B90 0038F7F0  88 63 00 33 */	lbz r3, 0x33(r3)
lbl_80393B94:
/* 80393B94 0038F7F4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393B98 0038F7F8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393B9C 0038F7FC  7C 08 03 A6 */	mtlr r0
/* 80393BA0 0038F800  38 21 00 10 */	addi r1, r1, 0x10
/* 80393BA4 0038F804  4E 80 00 20 */	blr 

.global func_80393BA8
func_80393BA8:
/* 80393BA8 0038F808  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393BAC 0038F80C  7C 08 02 A6 */	mflr r0
/* 80393BB0 0038F810  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393BB4 0038F814  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393BB8 0038F818  7C BF 2B 78 */	mr r31, r5
/* 80393BBC 0038F81C  4B FF FD 29 */	bl func_803938E4
/* 80393BC0 0038F820  2C 03 00 00 */	cmpwi r3, 0
/* 80393BC4 0038F824  40 82 00 0C */	bne lbl_80393BD0
/* 80393BC8 0038F828  38 60 00 00 */	li r3, 0
/* 80393BCC 0038F82C  48 00 00 20 */	b lbl_80393BEC
lbl_80393BD0:
/* 80393BD0 0038F830  28 1F 00 04 */	cmplwi r31, 4
/* 80393BD4 0038F834  41 80 00 0C */	blt lbl_80393BE0
/* 80393BD8 0038F838  38 60 00 00 */	li r3, 0
/* 80393BDC 0038F83C  48 00 00 10 */	b lbl_80393BEC
lbl_80393BE0:
/* 80393BE0 0038F840  57 E0 08 3C */	slwi r0, r31, 1
/* 80393BE4 0038F844  7C 63 02 14 */	add r3, r3, r0
/* 80393BE8 0038F848  A8 63 00 12 */	lha r3, 0x12(r3)
lbl_80393BEC:
/* 80393BEC 0038F84C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393BF0 0038F850  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393BF4 0038F854  7C 08 03 A6 */	mtlr r0
/* 80393BF8 0038F858  38 21 00 10 */	addi r1, r1, 0x10
/* 80393BFC 0038F85C  4E 80 00 20 */	blr 

.global func_80393C00
func_80393C00:
/* 80393C00 0038F860  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393C04 0038F864  7C 08 02 A6 */	mflr r0
/* 80393C08 0038F868  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393C0C 0038F86C  4B FF FC D9 */	bl func_803938E4
/* 80393C10 0038F870  2C 03 00 00 */	cmpwi r3, 0
/* 80393C14 0038F874  41 82 00 0C */	beq lbl_80393C20
/* 80393C18 0038F878  88 63 00 37 */	lbz r3, 0x37(r3)
/* 80393C1C 0038F87C  48 00 00 08 */	b lbl_80393C24
lbl_80393C20:
/* 80393C20 0038F880  38 60 00 00 */	li r3, 0
lbl_80393C24:
/* 80393C24 0038F884  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393C28 0038F888  7C 08 03 A6 */	mtlr r0
/* 80393C2C 0038F88C  38 21 00 10 */	addi r1, r1, 0x10
/* 80393C30 0038F890  4E 80 00 20 */	blr 

.global func_80393C34
func_80393C34:
/* 80393C34 0038F894  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393C38 0038F898  7C 08 02 A6 */	mflr r0
/* 80393C3C 0038F89C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393C40 0038F8A0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393C44 0038F8A4  7C BF 2B 78 */	mr r31, r5
/* 80393C48 0038F8A8  4B FF FC 9D */	bl func_803938E4
/* 80393C4C 0038F8AC  2C 03 00 00 */	cmpwi r3, 0
/* 80393C50 0038F8B0  40 82 00 0C */	bne lbl_80393C5C
/* 80393C54 0038F8B4  38 60 00 00 */	li r3, 0
/* 80393C58 0038F8B8  48 00 00 1C */	b lbl_80393C74
lbl_80393C5C:
/* 80393C5C 0038F8BC  28 1F 00 04 */	cmplwi r31, 4
/* 80393C60 0038F8C0  41 80 00 0C */	blt lbl_80393C6C
/* 80393C64 0038F8C4  38 60 00 00 */	li r3, 0
/* 80393C68 0038F8C8  48 00 00 0C */	b lbl_80393C74
lbl_80393C6C:
/* 80393C6C 0038F8CC  7C 63 FA 14 */	add r3, r3, r31
/* 80393C70 0038F8D0  88 63 00 38 */	lbz r3, 0x38(r3)
lbl_80393C74:
/* 80393C74 0038F8D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393C78 0038F8D8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393C7C 0038F8DC  7C 08 03 A6 */	mtlr r0
/* 80393C80 0038F8E0  38 21 00 10 */	addi r1, r1, 0x10
/* 80393C84 0038F8E4  4E 80 00 20 */	blr 

.global func_80393C88
func_80393C88:
/* 80393C88 0038F8E8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393C8C 0038F8EC  7C 08 02 A6 */	mflr r0
/* 80393C90 0038F8F0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393C94 0038F8F4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393C98 0038F8F8  7C BF 2B 78 */	mr r31, r5
/* 80393C9C 0038F8FC  4B FF FC 49 */	bl func_803938E4
/* 80393CA0 0038F900  2C 03 00 00 */	cmpwi r3, 0
/* 80393CA4 0038F904  40 82 00 0C */	bne lbl_80393CB0
/* 80393CA8 0038F908  38 60 00 00 */	li r3, 0
/* 80393CAC 0038F90C  48 00 00 20 */	b lbl_80393CCC
lbl_80393CB0:
/* 80393CB0 0038F910  28 1F 00 04 */	cmplwi r31, 4
/* 80393CB4 0038F914  41 80 00 0C */	blt lbl_80393CC0
/* 80393CB8 0038F918  38 60 00 00 */	li r3, 0
/* 80393CBC 0038F91C  48 00 00 10 */	b lbl_80393CCC
lbl_80393CC0:
/* 80393CC0 0038F920  57 E0 08 3C */	slwi r0, r31, 1
/* 80393CC4 0038F924  7C 63 02 14 */	add r3, r3, r0
/* 80393CC8 0038F928  A8 63 00 1A */	lha r3, 0x1a(r3)
lbl_80393CCC:
/* 80393CCC 0038F92C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393CD0 0038F930  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393CD4 0038F934  7C 08 03 A6 */	mtlr r0
/* 80393CD8 0038F938  38 21 00 10 */	addi r1, r1, 0x10
/* 80393CDC 0038F93C  4E 80 00 20 */	blr 

.global func_80393CE0
func_80393CE0:
/* 80393CE0 0038F940  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393CE4 0038F944  7C 08 02 A6 */	mflr r0
/* 80393CE8 0038F948  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393CEC 0038F94C  4B FF FB F9 */	bl func_803938E4
/* 80393CF0 0038F950  2C 03 00 00 */	cmpwi r3, 0
/* 80393CF4 0038F954  41 82 00 0C */	beq lbl_80393D00
/* 80393CF8 0038F958  88 63 00 3C */	lbz r3, 0x3c(r3)
/* 80393CFC 0038F95C  48 00 00 08 */	b lbl_80393D04
lbl_80393D00:
/* 80393D00 0038F960  38 60 00 00 */	li r3, 0
lbl_80393D04:
/* 80393D04 0038F964  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393D08 0038F968  7C 08 03 A6 */	mtlr r0
/* 80393D0C 0038F96C  38 21 00 10 */	addi r1, r1, 0x10
/* 80393D10 0038F970  4E 80 00 20 */	blr 

.global func_80393D14
func_80393D14:
/* 80393D14 0038F974  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393D18 0038F978  7C 08 02 A6 */	mflr r0
/* 80393D1C 0038F97C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393D20 0038F980  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393D24 0038F984  7C BF 2B 78 */	mr r31, r5
/* 80393D28 0038F988  4B FF FB BD */	bl func_803938E4
/* 80393D2C 0038F98C  2C 03 00 00 */	cmpwi r3, 0
/* 80393D30 0038F990  40 82 00 0C */	bne lbl_80393D3C
/* 80393D34 0038F994  38 60 00 00 */	li r3, 0
/* 80393D38 0038F998  48 00 00 1C */	b lbl_80393D54
lbl_80393D3C:
/* 80393D3C 0038F99C  28 1F 00 04 */	cmplwi r31, 4
/* 80393D40 0038F9A0  41 80 00 0C */	blt lbl_80393D4C
/* 80393D44 0038F9A4  38 60 00 00 */	li r3, 0
/* 80393D48 0038F9A8  48 00 00 0C */	b lbl_80393D54
lbl_80393D4C:
/* 80393D4C 0038F9AC  7C 63 FA 14 */	add r3, r3, r31
/* 80393D50 0038F9B0  88 63 00 3D */	lbz r3, 0x3d(r3)
lbl_80393D54:
/* 80393D54 0038F9B4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393D58 0038F9B8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393D5C 0038F9BC  7C 08 03 A6 */	mtlr r0
/* 80393D60 0038F9C0  38 21 00 10 */	addi r1, r1, 0x10
/* 80393D64 0038F9C4  4E 80 00 20 */	blr 

.global func_80393D68
func_80393D68:
/* 80393D68 0038F9C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393D6C 0038F9CC  7C 08 02 A6 */	mflr r0
/* 80393D70 0038F9D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393D74 0038F9D4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393D78 0038F9D8  7C BF 2B 78 */	mr r31, r5
/* 80393D7C 0038F9DC  4B FF FB 69 */	bl func_803938E4
/* 80393D80 0038F9E0  2C 03 00 00 */	cmpwi r3, 0
/* 80393D84 0038F9E4  40 82 00 0C */	bne lbl_80393D90
/* 80393D88 0038F9E8  38 60 00 00 */	li r3, 0
/* 80393D8C 0038F9EC  48 00 00 20 */	b lbl_80393DAC
lbl_80393D90:
/* 80393D90 0038F9F0  28 1F 00 04 */	cmplwi r31, 4
/* 80393D94 0038F9F4  41 80 00 0C */	blt lbl_80393DA0
/* 80393D98 0038F9F8  38 60 00 00 */	li r3, 0
/* 80393D9C 0038F9FC  48 00 00 10 */	b lbl_80393DAC
lbl_80393DA0:
/* 80393DA0 0038FA00  57 E0 08 3C */	slwi r0, r31, 1
/* 80393DA4 0038FA04  7C 63 02 14 */	add r3, r3, r0
/* 80393DA8 0038FA08  A8 63 00 22 */	lha r3, 0x22(r3)
lbl_80393DAC:
/* 80393DAC 0038FA0C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393DB0 0038FA10  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393DB4 0038FA14  7C 08 03 A6 */	mtlr r0
/* 80393DB8 0038FA18  38 21 00 10 */	addi r1, r1, 0x10
/* 80393DBC 0038FA1C  4E 80 00 20 */	blr 

.global func_80393DC0
func_80393DC0:
/* 80393DC0 0038FA20  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393DC4 0038FA24  7C 08 02 A6 */	mflr r0
/* 80393DC8 0038FA28  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393DCC 0038FA2C  4B FF FB 19 */	bl func_803938E4
/* 80393DD0 0038FA30  2C 03 00 00 */	cmpwi r3, 0
/* 80393DD4 0038FA34  41 82 00 0C */	beq lbl_80393DE0
/* 80393DD8 0038FA38  88 63 00 41 */	lbz r3, 0x41(r3)
/* 80393DDC 0038FA3C  48 00 00 08 */	b lbl_80393DE4
lbl_80393DE0:
/* 80393DE0 0038FA40  38 60 00 00 */	li r3, 0
lbl_80393DE4:
/* 80393DE4 0038FA44  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393DE8 0038FA48  7C 08 03 A6 */	mtlr r0
/* 80393DEC 0038FA4C  38 21 00 10 */	addi r1, r1, 0x10
/* 80393DF0 0038FA50  4E 80 00 20 */	blr 

.global func_80393DF4
func_80393DF4:
/* 80393DF4 0038FA54  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393DF8 0038FA58  7C 08 02 A6 */	mflr r0
/* 80393DFC 0038FA5C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393E00 0038FA60  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393E04 0038FA64  7C BF 2B 78 */	mr r31, r5
/* 80393E08 0038FA68  4B FF FA DD */	bl func_803938E4
/* 80393E0C 0038FA6C  2C 03 00 00 */	cmpwi r3, 0
/* 80393E10 0038FA70  40 82 00 0C */	bne lbl_80393E1C
/* 80393E14 0038FA74  38 60 00 00 */	li r3, 0
/* 80393E18 0038FA78  48 00 00 1C */	b lbl_80393E34
lbl_80393E1C:
/* 80393E1C 0038FA7C  28 1F 00 04 */	cmplwi r31, 4
/* 80393E20 0038FA80  41 80 00 0C */	blt lbl_80393E2C
/* 80393E24 0038FA84  38 60 00 00 */	li r3, 0
/* 80393E28 0038FA88  48 00 00 0C */	b lbl_80393E34
lbl_80393E2C:
/* 80393E2C 0038FA8C  7C 63 FA 14 */	add r3, r3, r31
/* 80393E30 0038FA90  88 63 00 42 */	lbz r3, 0x42(r3)
lbl_80393E34:
/* 80393E34 0038FA94  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393E38 0038FA98  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393E3C 0038FA9C  7C 08 03 A6 */	mtlr r0
/* 80393E40 0038FAA0  38 21 00 10 */	addi r1, r1, 0x10
/* 80393E44 0038FAA4  4E 80 00 20 */	blr 

.global func_80393E48
func_80393E48:
/* 80393E48 0038FAA8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80393E4C 0038FAAC  7C 08 02 A6 */	mflr r0
/* 80393E50 0038FAB0  2C 04 00 00 */	cmpwi r4, 0
/* 80393E54 0038FAB4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80393E58 0038FAB8  38 00 00 00 */	li r0, 0
/* 80393E5C 0038FABC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80393E60 0038FAC0  7C 7F 1B 78 */	mr r31, r3
/* 80393E64 0038FAC4  90 03 00 00 */	stw r0, 0(r3)
/* 80393E68 0038FAC8  41 82 00 08 */	beq lbl_80393E70
/* 80393E6C 0038FACC  48 00 00 1D */	bl func_80393E88
lbl_80393E70:
/* 80393E70 0038FAD0  7F E3 FB 78 */	mr r3, r31
/* 80393E74 0038FAD4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80393E78 0038FAD8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80393E7C 0038FADC  7C 08 03 A6 */	mtlr r0
/* 80393E80 0038FAE0  38 21 00 10 */	addi r1, r1, 0x10
/* 80393E84 0038FAE4  4E 80 00 20 */	blr 

.global func_80393E88
func_80393E88:
/* 80393E88 0038FAE8  2C 04 00 00 */	cmpwi r4, 0
/* 80393E8C 0038FAEC  40 82 00 0C */	bne lbl_80393E98
/* 80393E90 0038FAF0  38 60 FF FF */	li r3, -1
/* 80393E94 0038FAF4  4E 80 00 20 */	blr 
lbl_80393E98:
/* 80393E98 0038FAF8  80 03 00 00 */	lwz r0, 0(r3)
/* 80393E9C 0038FAFC  2C 00 00 00 */	cmpwi r0, 0
/* 80393EA0 0038FB00  41 82 00 0C */	beq lbl_80393EAC
/* 80393EA4 0038FB04  38 60 FF FE */	li r3, -2
/* 80393EA8 0038FB08  4E 80 00 20 */	blr 
lbl_80393EAC:
/* 80393EAC 0038FB0C  80 04 00 04 */	lwz r0, 4(r4)
/* 80393EB0 0038FB10  28 00 00 14 */	cmplwi r0, 0x14
/* 80393EB4 0038FB14  41 82 00 0C */	beq lbl_80393EC0
/* 80393EB8 0038FB18  38 60 FF FD */	li r3, -3
/* 80393EBC 0038FB1C  4E 80 00 20 */	blr 
lbl_80393EC0:
/* 80393EC0 0038FB20  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80393EC4 0038FB24  2C 00 00 00 */	cmpwi r0, 0
/* 80393EC8 0038FB28  40 82 01 0C */	bne lbl_80393FD4
/* 80393ECC 0038FB2C  80 04 00 08 */	lwz r0, 8(r4)
/* 80393ED0 0038FB30  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80393ED4 0038FB34  7C E0 22 14 */	add r7, r0, r4
/* 80393ED8 0038FB38  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80393EDC 0038FB3C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80393EE0 0038FB40  7C C6 22 14 */	add r6, r6, r4
/* 80393EE4 0038FB44  7C A5 22 14 */	add r5, r5, r4
/* 80393EE8 0038FB48  90 E4 00 08 */	stw r7, 8(r4)
/* 80393EEC 0038FB4C  2C 00 00 00 */	cmpwi r0, 0
/* 80393EF0 0038FB50  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80393EF4 0038FB54  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80393EF8 0038FB58  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80393EFC 0038FB5C  41 82 00 0C */	beq lbl_80393F08
/* 80393F00 0038FB60  7C 00 22 14 */	add r0, r0, r4
/* 80393F04 0038FB64  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80393F08:
/* 80393F08 0038FB68  2C 07 00 00 */	cmpwi r7, 0
/* 80393F0C 0038FB6C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80393F10 0038FB70  41 82 00 BC */	beq lbl_80393FCC
/* 80393F14 0038FB74  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80393F18 0038FB78  7C 09 03 A6 */	mtctr r0
/* 80393F1C 0038FB7C  41 82 00 94 */	beq lbl_80393FB0
lbl_80393F20:
/* 80393F20 0038FB80  80 C5 00 00 */	lwz r6, 0(r5)
/* 80393F24 0038FB84  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F28 0038FB88  7C 00 22 14 */	add r0, r0, r4
/* 80393F2C 0038FB8C  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F30 0038FB90  80 C5 00 04 */	lwz r6, 4(r5)
/* 80393F34 0038FB94  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F38 0038FB98  7C 00 22 14 */	add r0, r0, r4
/* 80393F3C 0038FB9C  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F40 0038FBA0  80 C5 00 08 */	lwz r6, 8(r5)
/* 80393F44 0038FBA4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F48 0038FBA8  7C 00 22 14 */	add r0, r0, r4
/* 80393F4C 0038FBAC  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F50 0038FBB0  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80393F54 0038FBB4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F58 0038FBB8  7C 00 22 14 */	add r0, r0, r4
/* 80393F5C 0038FBBC  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F60 0038FBC0  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80393F64 0038FBC4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F68 0038FBC8  7C 00 22 14 */	add r0, r0, r4
/* 80393F6C 0038FBCC  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F70 0038FBD0  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80393F74 0038FBD4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F78 0038FBD8  7C 00 22 14 */	add r0, r0, r4
/* 80393F7C 0038FBDC  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F80 0038FBE0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80393F84 0038FBE4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F88 0038FBE8  7C 00 22 14 */	add r0, r0, r4
/* 80393F8C 0038FBEC  7C 06 21 2E */	stwx r0, r6, r4
/* 80393F90 0038FBF0  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80393F94 0038FBF4  38 A5 00 20 */	addi r5, r5, 0x20
/* 80393F98 0038FBF8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393F9C 0038FBFC  7C 00 22 14 */	add r0, r0, r4
/* 80393FA0 0038FC00  7C 06 21 2E */	stwx r0, r6, r4
/* 80393FA4 0038FC04  42 00 FF 7C */	bdnz lbl_80393F20
/* 80393FA8 0038FC08  70 E7 00 07 */	andi. r7, r7, 7
/* 80393FAC 0038FC0C  41 82 00 20 */	beq lbl_80393FCC
lbl_80393FB0:
/* 80393FB0 0038FC10  7C E9 03 A6 */	mtctr r7
lbl_80393FB4:
/* 80393FB4 0038FC14  80 C5 00 00 */	lwz r6, 0(r5)
/* 80393FB8 0038FC18  38 A5 00 04 */	addi r5, r5, 4
/* 80393FBC 0038FC1C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80393FC0 0038FC20  7C 00 22 14 */	add r0, r0, r4
/* 80393FC4 0038FC24  7C 06 21 2E */	stwx r0, r6, r4
/* 80393FC8 0038FC28  42 00 FF EC */	bdnz lbl_80393FB4
lbl_80393FCC:
/* 80393FCC 0038FC2C  38 00 00 01 */	li r0, 1
/* 80393FD0 0038FC30  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80393FD4:
/* 80393FD4 0038FC34  90 83 00 00 */	stw r4, 0(r3)
/* 80393FD8 0038FC38  38 60 00 00 */	li r3, 0
/* 80393FDC 0038FC3C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80393FE0 0038FC40  38 05 00 01 */	addi r0, r5, 1
/* 80393FE4 0038FC44  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80393FE8 0038FC48  4E 80 00 20 */	blr 

.global func_80393FEC
func_80393FEC:
/* 80393FEC 0038FC4C  80 63 00 00 */	lwz r3, 0(r3)
/* 80393FF0 0038FC50  2C 03 00 00 */	cmpwi r3, 0
/* 80393FF4 0038FC54  40 82 00 0C */	bne lbl_80394000
/* 80393FF8 0038FC58  38 60 00 00 */	li r3, 0
/* 80393FFC 0038FC5C  4E 80 00 20 */	blr 
lbl_80394000:
/* 80394000 0038FC60  2C 04 00 00 */	cmpwi r4, 0
/* 80394004 0038FC64  40 80 00 0C */	bge lbl_80394010
/* 80394008 0038FC68  38 60 00 00 */	li r3, 0
/* 8039400C 0038FC6C  4E 80 00 20 */	blr 
lbl_80394010:
/* 80394010 0038FC70  1C 04 00 14 */	mulli r0, r4, 0x14
/* 80394014 0038FC74  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80394018 0038FC78  7C 63 02 14 */	add r3, r3, r0
/* 8039401C 0038FC7C  4E 80 00 20 */	blr 

.global func_80394020
func_80394020:
/* 80394020 0038FC80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394024 0038FC84  7C 08 02 A6 */	mflr r0
/* 80394028 0038FC88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039402C 0038FC8C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394030 0038FC90  7C BF 2B 78 */	mr r31, r5
/* 80394034 0038FC94  4B FF FF B9 */	bl func_80393FEC
/* 80394038 0038FC98  2C 03 00 00 */	cmpwi r3, 0
/* 8039403C 0038FC9C  40 82 00 0C */	bne lbl_80394048
/* 80394040 0038FCA0  38 60 00 00 */	li r3, 0
/* 80394044 0038FCA4  48 00 00 1C */	b lbl_80394060
lbl_80394048:
/* 80394048 0038FCA8  28 1F 00 05 */	cmplwi r31, 5
/* 8039404C 0038FCAC  41 80 00 0C */	blt lbl_80394058
/* 80394050 0038FCB0  38 60 00 00 */	li r3, 0
/* 80394054 0038FCB4  48 00 00 0C */	b lbl_80394060
lbl_80394058:
/* 80394058 0038FCB8  57 E0 08 3C */	slwi r0, r31, 1
/* 8039405C 0038FCBC  7C 63 02 AE */	lhax r3, r3, r0
lbl_80394060:
/* 80394060 0038FCC0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394064 0038FCC4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394068 0038FCC8  7C 08 03 A6 */	mtlr r0
/* 8039406C 0038FCCC  38 21 00 10 */	addi r1, r1, 0x10
/* 80394070 0038FCD0  4E 80 00 20 */	blr 

.global func_80394074
func_80394074:
/* 80394074 0038FCD4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394078 0038FCD8  7C 08 02 A6 */	mflr r0
/* 8039407C 0038FCDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394080 0038FCE0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394084 0038FCE4  7C BF 2B 78 */	mr r31, r5
/* 80394088 0038FCE8  4B FF FF 65 */	bl func_80393FEC
/* 8039408C 0038FCEC  2C 03 00 00 */	cmpwi r3, 0
/* 80394090 0038FCF0  40 82 00 0C */	bne lbl_8039409C
/* 80394094 0038FCF4  38 60 00 00 */	li r3, 0
/* 80394098 0038FCF8  48 00 00 20 */	b lbl_803940B8
lbl_8039409C:
/* 8039409C 0038FCFC  28 1F 00 05 */	cmplwi r31, 5
/* 803940A0 0038FD00  41 80 00 0C */	blt lbl_803940AC
/* 803940A4 0038FD04  38 60 00 00 */	li r3, 0
/* 803940A8 0038FD08  48 00 00 10 */	b lbl_803940B8
lbl_803940AC:
/* 803940AC 0038FD0C  57 E0 08 3C */	slwi r0, r31, 1
/* 803940B0 0038FD10  7C 63 02 14 */	add r3, r3, r0
/* 803940B4 0038FD14  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_803940B8:
/* 803940B8 0038FD18  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803940BC 0038FD1C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803940C0 0038FD20  7C 08 03 A6 */	mtlr r0
/* 803940C4 0038FD24  38 21 00 10 */	addi r1, r1, 0x10
/* 803940C8 0038FD28  4E 80 00 20 */	blr 

.global func_803940CC
func_803940CC:
/* 803940CC 0038FD2C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803940D0 0038FD30  7C 08 02 A6 */	mflr r0
/* 803940D4 0038FD34  2C 04 00 00 */	cmpwi r4, 0
/* 803940D8 0038FD38  90 01 00 14 */	stw r0, 0x14(r1)
/* 803940DC 0038FD3C  38 00 00 00 */	li r0, 0
/* 803940E0 0038FD40  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803940E4 0038FD44  7C 7F 1B 78 */	mr r31, r3
/* 803940E8 0038FD48  90 03 00 00 */	stw r0, 0(r3)
/* 803940EC 0038FD4C  41 82 00 08 */	beq lbl_803940F4
/* 803940F0 0038FD50  48 00 00 1D */	bl func_8039410C
lbl_803940F4:
/* 803940F4 0038FD54  7F E3 FB 78 */	mr r3, r31
/* 803940F8 0038FD58  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803940FC 0038FD5C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394100 0038FD60  7C 08 03 A6 */	mtlr r0
/* 80394104 0038FD64  38 21 00 10 */	addi r1, r1, 0x10
/* 80394108 0038FD68  4E 80 00 20 */	blr 

.global func_8039410C
func_8039410C:
/* 8039410C 0038FD6C  2C 04 00 00 */	cmpwi r4, 0
/* 80394110 0038FD70  40 82 00 0C */	bne lbl_8039411C
/* 80394114 0038FD74  38 60 FF FF */	li r3, -1
/* 80394118 0038FD78  4E 80 00 20 */	blr 
lbl_8039411C:
/* 8039411C 0038FD7C  80 03 00 00 */	lwz r0, 0(r3)
/* 80394120 0038FD80  2C 00 00 00 */	cmpwi r0, 0
/* 80394124 0038FD84  41 82 00 0C */	beq lbl_80394130
/* 80394128 0038FD88  38 60 FF FE */	li r3, -2
/* 8039412C 0038FD8C  4E 80 00 20 */	blr 
lbl_80394130:
/* 80394130 0038FD90  80 04 00 04 */	lwz r0, 4(r4)
/* 80394134 0038FD94  28 00 00 14 */	cmplwi r0, 0x14
/* 80394138 0038FD98  41 82 00 0C */	beq lbl_80394144
/* 8039413C 0038FD9C  38 60 FF FD */	li r3, -3
/* 80394140 0038FDA0  4E 80 00 20 */	blr 
lbl_80394144:
/* 80394144 0038FDA4  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80394148 0038FDA8  2C 00 00 00 */	cmpwi r0, 0
/* 8039414C 0038FDAC  40 82 01 0C */	bne lbl_80394258
/* 80394150 0038FDB0  80 04 00 08 */	lwz r0, 8(r4)
/* 80394154 0038FDB4  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80394158 0038FDB8  7C E0 22 14 */	add r7, r0, r4
/* 8039415C 0038FDBC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394160 0038FDC0  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80394164 0038FDC4  7C C6 22 14 */	add r6, r6, r4
/* 80394168 0038FDC8  7C A5 22 14 */	add r5, r5, r4
/* 8039416C 0038FDCC  90 E4 00 08 */	stw r7, 8(r4)
/* 80394170 0038FDD0  2C 00 00 00 */	cmpwi r0, 0
/* 80394174 0038FDD4  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80394178 0038FDD8  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8039417C 0038FDDC  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80394180 0038FDE0  41 82 00 0C */	beq lbl_8039418C
/* 80394184 0038FDE4  7C 00 22 14 */	add r0, r0, r4
/* 80394188 0038FDE8  90 04 00 20 */	stw r0, 0x20(r4)
lbl_8039418C:
/* 8039418C 0038FDEC  2C 07 00 00 */	cmpwi r7, 0
/* 80394190 0038FDF0  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394194 0038FDF4  41 82 00 BC */	beq lbl_80394250
/* 80394198 0038FDF8  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 8039419C 0038FDFC  7C 09 03 A6 */	mtctr r0
/* 803941A0 0038FE00  41 82 00 94 */	beq lbl_80394234
lbl_803941A4:
/* 803941A4 0038FE04  80 C5 00 00 */	lwz r6, 0(r5)
/* 803941A8 0038FE08  7C 06 20 2E */	lwzx r0, r6, r4
/* 803941AC 0038FE0C  7C 00 22 14 */	add r0, r0, r4
/* 803941B0 0038FE10  7C 06 21 2E */	stwx r0, r6, r4
/* 803941B4 0038FE14  80 C5 00 04 */	lwz r6, 4(r5)
/* 803941B8 0038FE18  7C 06 20 2E */	lwzx r0, r6, r4
/* 803941BC 0038FE1C  7C 00 22 14 */	add r0, r0, r4
/* 803941C0 0038FE20  7C 06 21 2E */	stwx r0, r6, r4
/* 803941C4 0038FE24  80 C5 00 08 */	lwz r6, 8(r5)
/* 803941C8 0038FE28  7C 06 20 2E */	lwzx r0, r6, r4
/* 803941CC 0038FE2C  7C 00 22 14 */	add r0, r0, r4
/* 803941D0 0038FE30  7C 06 21 2E */	stwx r0, r6, r4
/* 803941D4 0038FE34  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803941D8 0038FE38  7C 06 20 2E */	lwzx r0, r6, r4
/* 803941DC 0038FE3C  7C 00 22 14 */	add r0, r0, r4
/* 803941E0 0038FE40  7C 06 21 2E */	stwx r0, r6, r4
/* 803941E4 0038FE44  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803941E8 0038FE48  7C 06 20 2E */	lwzx r0, r6, r4
/* 803941EC 0038FE4C  7C 00 22 14 */	add r0, r0, r4
/* 803941F0 0038FE50  7C 06 21 2E */	stwx r0, r6, r4
/* 803941F4 0038FE54  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803941F8 0038FE58  7C 06 20 2E */	lwzx r0, r6, r4
/* 803941FC 0038FE5C  7C 00 22 14 */	add r0, r0, r4
/* 80394200 0038FE60  7C 06 21 2E */	stwx r0, r6, r4
/* 80394204 0038FE64  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80394208 0038FE68  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039420C 0038FE6C  7C 00 22 14 */	add r0, r0, r4
/* 80394210 0038FE70  7C 06 21 2E */	stwx r0, r6, r4
/* 80394214 0038FE74  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80394218 0038FE78  38 A5 00 20 */	addi r5, r5, 0x20
/* 8039421C 0038FE7C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394220 0038FE80  7C 00 22 14 */	add r0, r0, r4
/* 80394224 0038FE84  7C 06 21 2E */	stwx r0, r6, r4
/* 80394228 0038FE88  42 00 FF 7C */	bdnz lbl_803941A4
/* 8039422C 0038FE8C  70 E7 00 07 */	andi. r7, r7, 7
/* 80394230 0038FE90  41 82 00 20 */	beq lbl_80394250
lbl_80394234:
/* 80394234 0038FE94  7C E9 03 A6 */	mtctr r7
lbl_80394238:
/* 80394238 0038FE98  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039423C 0038FE9C  38 A5 00 04 */	addi r5, r5, 4
/* 80394240 0038FEA0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394244 0038FEA4  7C 00 22 14 */	add r0, r0, r4
/* 80394248 0038FEA8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039424C 0038FEAC  42 00 FF EC */	bdnz lbl_80394238
lbl_80394250:
/* 80394250 0038FEB0  38 00 00 01 */	li r0, 1
/* 80394254 0038FEB4  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80394258:
/* 80394258 0038FEB8  90 83 00 00 */	stw r4, 0(r3)
/* 8039425C 0038FEBC  38 60 00 00 */	li r3, 0
/* 80394260 0038FEC0  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80394264 0038FEC4  38 05 00 01 */	addi r0, r5, 1
/* 80394268 0038FEC8  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 8039426C 0038FECC  4E 80 00 20 */	blr 

.global func_80394270
func_80394270:
/* 80394270 0038FED0  80 63 00 00 */	lwz r3, 0(r3)
/* 80394274 0038FED4  2C 03 00 00 */	cmpwi r3, 0
/* 80394278 0038FED8  40 82 00 0C */	bne lbl_80394284
/* 8039427C 0038FEDC  38 60 00 00 */	li r3, 0
/* 80394280 0038FEE0  4E 80 00 20 */	blr 
lbl_80394284:
/* 80394284 0038FEE4  2C 04 00 00 */	cmpwi r4, 0
/* 80394288 0038FEE8  40 80 00 0C */	bge lbl_80394294
/* 8039428C 0038FEEC  38 60 00 00 */	li r3, 0
/* 80394290 0038FEF0  4E 80 00 20 */	blr 
lbl_80394294:
/* 80394294 0038FEF4  1C 04 00 14 */	mulli r0, r4, 0x14
/* 80394298 0038FEF8  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8039429C 0038FEFC  7C 63 02 14 */	add r3, r3, r0
/* 803942A0 0038FF00  4E 80 00 20 */	blr 

.global func_803942A4
func_803942A4:
/* 803942A4 0038FF04  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803942A8 0038FF08  7C 08 02 A6 */	mflr r0
/* 803942AC 0038FF0C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803942B0 0038FF10  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803942B4 0038FF14  7C BF 2B 78 */	mr r31, r5
/* 803942B8 0038FF18  4B FF FF B9 */	bl func_80394270
/* 803942BC 0038FF1C  2C 03 00 00 */	cmpwi r3, 0
/* 803942C0 0038FF20  40 82 00 0C */	bne lbl_803942CC
/* 803942C4 0038FF24  38 60 00 00 */	li r3, 0
/* 803942C8 0038FF28  48 00 00 1C */	b lbl_803942E4
lbl_803942CC:
/* 803942CC 0038FF2C  28 1F 00 05 */	cmplwi r31, 5
/* 803942D0 0038FF30  41 80 00 0C */	blt lbl_803942DC
/* 803942D4 0038FF34  38 60 00 00 */	li r3, 0
/* 803942D8 0038FF38  48 00 00 0C */	b lbl_803942E4
lbl_803942DC:
/* 803942DC 0038FF3C  57 E0 08 3C */	slwi r0, r31, 1
/* 803942E0 0038FF40  7C 63 02 AE */	lhax r3, r3, r0
lbl_803942E4:
/* 803942E4 0038FF44  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803942E8 0038FF48  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803942EC 0038FF4C  7C 08 03 A6 */	mtlr r0
/* 803942F0 0038FF50  38 21 00 10 */	addi r1, r1, 0x10
/* 803942F4 0038FF54  4E 80 00 20 */	blr 

.global func_803942F8
func_803942F8:
/* 803942F8 0038FF58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803942FC 0038FF5C  7C 08 02 A6 */	mflr r0
/* 80394300 0038FF60  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394304 0038FF64  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394308 0038FF68  7C BF 2B 78 */	mr r31, r5
/* 8039430C 0038FF6C  4B FF FF 65 */	bl func_80394270
/* 80394310 0038FF70  2C 03 00 00 */	cmpwi r3, 0
/* 80394314 0038FF74  40 82 00 0C */	bne lbl_80394320
/* 80394318 0038FF78  38 60 00 00 */	li r3, 0
/* 8039431C 0038FF7C  48 00 00 20 */	b lbl_8039433C
lbl_80394320:
/* 80394320 0038FF80  28 1F 00 05 */	cmplwi r31, 5
/* 80394324 0038FF84  41 80 00 0C */	blt lbl_80394330
/* 80394328 0038FF88  38 60 00 00 */	li r3, 0
/* 8039432C 0038FF8C  48 00 00 10 */	b lbl_8039433C
lbl_80394330:
/* 80394330 0038FF90  57 E0 08 3C */	slwi r0, r31, 1
/* 80394334 0038FF94  7C 63 02 14 */	add r3, r3, r0
/* 80394338 0038FF98  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_8039433C:
/* 8039433C 0038FF9C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394340 0038FFA0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394344 0038FFA4  7C 08 03 A6 */	mtlr r0
/* 80394348 0038FFA8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039434C 0038FFAC  4E 80 00 20 */	blr 

.global func_80394350
func_80394350:
/* 80394350 0038FFB0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394354 0038FFB4  7C 08 02 A6 */	mflr r0
/* 80394358 0038FFB8  2C 04 00 00 */	cmpwi r4, 0
/* 8039435C 0038FFBC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394360 0038FFC0  38 00 00 00 */	li r0, 0
/* 80394364 0038FFC4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394368 0038FFC8  7C 7F 1B 78 */	mr r31, r3
/* 8039436C 0038FFCC  90 03 00 00 */	stw r0, 0(r3)
/* 80394370 0038FFD0  41 82 00 08 */	beq lbl_80394378
/* 80394374 0038FFD4  48 00 00 1D */	bl func_80394390
lbl_80394378:
/* 80394378 0038FFD8  7F E3 FB 78 */	mr r3, r31
/* 8039437C 0038FFDC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394380 0038FFE0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394384 0038FFE4  7C 08 03 A6 */	mtlr r0
/* 80394388 0038FFE8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039438C 0038FFEC  4E 80 00 20 */	blr 

.global func_80394390
func_80394390:
/* 80394390 0038FFF0  2C 04 00 00 */	cmpwi r4, 0
/* 80394394 0038FFF4  40 82 00 0C */	bne lbl_803943A0
/* 80394398 0038FFF8  38 60 FF FF */	li r3, -1
/* 8039439C 0038FFFC  4E 80 00 20 */	blr 
lbl_803943A0:
/* 803943A0 00390000  80 03 00 00 */	lwz r0, 0(r3)
/* 803943A4 00390004  2C 00 00 00 */	cmpwi r0, 0
/* 803943A8 00390008  41 82 00 0C */	beq lbl_803943B4
/* 803943AC 0039000C  38 60 FF FE */	li r3, -2
/* 803943B0 00390010  4E 80 00 20 */	blr 
lbl_803943B4:
/* 803943B4 00390014  80 04 00 04 */	lwz r0, 4(r4)
/* 803943B8 00390018  28 00 00 14 */	cmplwi r0, 0x14
/* 803943BC 0039001C  41 82 00 0C */	beq lbl_803943C8
/* 803943C0 00390020  38 60 FF FD */	li r3, -3
/* 803943C4 00390024  4E 80 00 20 */	blr 
lbl_803943C8:
/* 803943C8 00390028  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803943CC 0039002C  2C 00 00 00 */	cmpwi r0, 0
/* 803943D0 00390030  40 82 01 0C */	bne lbl_803944DC
/* 803943D4 00390034  80 04 00 08 */	lwz r0, 8(r4)
/* 803943D8 00390038  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803943DC 0039003C  7C E0 22 14 */	add r7, r0, r4
/* 803943E0 00390040  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803943E4 00390044  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803943E8 00390048  7C C6 22 14 */	add r6, r6, r4
/* 803943EC 0039004C  7C A5 22 14 */	add r5, r5, r4
/* 803943F0 00390050  90 E4 00 08 */	stw r7, 8(r4)
/* 803943F4 00390054  2C 00 00 00 */	cmpwi r0, 0
/* 803943F8 00390058  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803943FC 0039005C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80394400 00390060  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80394404 00390064  41 82 00 0C */	beq lbl_80394410
/* 80394408 00390068  7C 00 22 14 */	add r0, r0, r4
/* 8039440C 0039006C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80394410:
/* 80394410 00390070  2C 07 00 00 */	cmpwi r7, 0
/* 80394414 00390074  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394418 00390078  41 82 00 BC */	beq lbl_803944D4
/* 8039441C 0039007C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80394420 00390080  7C 09 03 A6 */	mtctr r0
/* 80394424 00390084  41 82 00 94 */	beq lbl_803944B8
lbl_80394428:
/* 80394428 00390088  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039442C 0039008C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394430 00390090  7C 00 22 14 */	add r0, r0, r4
/* 80394434 00390094  7C 06 21 2E */	stwx r0, r6, r4
/* 80394438 00390098  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039443C 0039009C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394440 003900A0  7C 00 22 14 */	add r0, r0, r4
/* 80394444 003900A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394448 003900A8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039444C 003900AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394450 003900B0  7C 00 22 14 */	add r0, r0, r4
/* 80394454 003900B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394458 003900B8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039445C 003900BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394460 003900C0  7C 00 22 14 */	add r0, r0, r4
/* 80394464 003900C4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394468 003900C8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039446C 003900CC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394470 003900D0  7C 00 22 14 */	add r0, r0, r4
/* 80394474 003900D4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394478 003900D8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039447C 003900DC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394480 003900E0  7C 00 22 14 */	add r0, r0, r4
/* 80394484 003900E4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394488 003900E8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039448C 003900EC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394490 003900F0  7C 00 22 14 */	add r0, r0, r4
/* 80394494 003900F4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394498 003900F8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039449C 003900FC  38 A5 00 20 */	addi r5, r5, 0x20
/* 803944A0 00390100  7C 06 20 2E */	lwzx r0, r6, r4
/* 803944A4 00390104  7C 00 22 14 */	add r0, r0, r4
/* 803944A8 00390108  7C 06 21 2E */	stwx r0, r6, r4
/* 803944AC 0039010C  42 00 FF 7C */	bdnz lbl_80394428
/* 803944B0 00390110  70 E7 00 07 */	andi. r7, r7, 7
/* 803944B4 00390114  41 82 00 20 */	beq lbl_803944D4
lbl_803944B8:
/* 803944B8 00390118  7C E9 03 A6 */	mtctr r7
lbl_803944BC:
/* 803944BC 0039011C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803944C0 00390120  38 A5 00 04 */	addi r5, r5, 4
/* 803944C4 00390124  7C 06 20 2E */	lwzx r0, r6, r4
/* 803944C8 00390128  7C 00 22 14 */	add r0, r0, r4
/* 803944CC 0039012C  7C 06 21 2E */	stwx r0, r6, r4
/* 803944D0 00390130  42 00 FF EC */	bdnz lbl_803944BC
lbl_803944D4:
/* 803944D4 00390134  38 00 00 01 */	li r0, 1
/* 803944D8 00390138  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803944DC:
/* 803944DC 0039013C  90 83 00 00 */	stw r4, 0(r3)
/* 803944E0 00390140  38 60 00 00 */	li r3, 0
/* 803944E4 00390144  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803944E8 00390148  38 05 00 01 */	addi r0, r5, 1
/* 803944EC 0039014C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803944F0 00390150  4E 80 00 20 */	blr 

.global func_803944F4
func_803944F4:
/* 803944F4 00390154  80 63 00 00 */	lwz r3, 0(r3)
/* 803944F8 00390158  2C 03 00 00 */	cmpwi r3, 0
/* 803944FC 0039015C  40 82 00 0C */	bne lbl_80394508
/* 80394500 00390160  38 60 00 00 */	li r3, 0
/* 80394504 00390164  4E 80 00 20 */	blr 
lbl_80394508:
/* 80394508 00390168  2C 04 00 00 */	cmpwi r4, 0
/* 8039450C 0039016C  40 80 00 0C */	bge lbl_80394518
/* 80394510 00390170  38 60 00 00 */	li r3, 0
/* 80394514 00390174  4E 80 00 20 */	blr 
lbl_80394518:
/* 80394518 00390178  1C 04 00 14 */	mulli r0, r4, 0x14
/* 8039451C 0039017C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80394520 00390180  7C 63 02 14 */	add r3, r3, r0
/* 80394524 00390184  4E 80 00 20 */	blr 

.global func_80394528
func_80394528:
/* 80394528 00390188  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039452C 0039018C  7C 08 02 A6 */	mflr r0
/* 80394530 00390190  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394534 00390194  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394538 00390198  7C BF 2B 78 */	mr r31, r5
/* 8039453C 0039019C  4B FF FF B9 */	bl func_803944F4
/* 80394540 003901A0  2C 03 00 00 */	cmpwi r3, 0
/* 80394544 003901A4  40 82 00 0C */	bne lbl_80394550
/* 80394548 003901A8  38 60 00 00 */	li r3, 0
/* 8039454C 003901AC  48 00 00 1C */	b lbl_80394568
lbl_80394550:
/* 80394550 003901B0  28 1F 00 05 */	cmplwi r31, 5
/* 80394554 003901B4  41 80 00 0C */	blt lbl_80394560
/* 80394558 003901B8  38 60 00 00 */	li r3, 0
/* 8039455C 003901BC  48 00 00 0C */	b lbl_80394568
lbl_80394560:
/* 80394560 003901C0  57 E0 08 3C */	slwi r0, r31, 1
/* 80394564 003901C4  7C 63 02 AE */	lhax r3, r3, r0
lbl_80394568:
/* 80394568 003901C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039456C 003901CC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394570 003901D0  7C 08 03 A6 */	mtlr r0
/* 80394574 003901D4  38 21 00 10 */	addi r1, r1, 0x10
/* 80394578 003901D8  4E 80 00 20 */	blr 

.global func_8039457C
func_8039457C:
/* 8039457C 003901DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394580 003901E0  7C 08 02 A6 */	mflr r0
/* 80394584 003901E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394588 003901E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039458C 003901EC  7C BF 2B 78 */	mr r31, r5
/* 80394590 003901F0  4B FF FF 65 */	bl func_803944F4
/* 80394594 003901F4  2C 03 00 00 */	cmpwi r3, 0
/* 80394598 003901F8  40 82 00 0C */	bne lbl_803945A4
/* 8039459C 003901FC  38 60 00 00 */	li r3, 0
/* 803945A0 00390200  48 00 00 20 */	b lbl_803945C0
lbl_803945A4:
/* 803945A4 00390204  28 1F 00 05 */	cmplwi r31, 5
/* 803945A8 00390208  41 80 00 0C */	blt lbl_803945B4
/* 803945AC 0039020C  38 60 00 00 */	li r3, 0
/* 803945B0 00390210  48 00 00 10 */	b lbl_803945C0
lbl_803945B4:
/* 803945B4 00390214  57 E0 08 3C */	slwi r0, r31, 1
/* 803945B8 00390218  7C 63 02 14 */	add r3, r3, r0
/* 803945BC 0039021C  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_803945C0:
/* 803945C0 00390220  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803945C4 00390224  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803945C8 00390228  7C 08 03 A6 */	mtlr r0
/* 803945CC 0039022C  38 21 00 10 */	addi r1, r1, 0x10
/* 803945D0 00390230  4E 80 00 20 */	blr 

.global func_803945D4
func_803945D4:
/* 803945D4 00390234  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803945D8 00390238  7C 08 02 A6 */	mflr r0
/* 803945DC 0039023C  2C 04 00 00 */	cmpwi r4, 0
/* 803945E0 00390240  90 01 00 14 */	stw r0, 0x14(r1)
/* 803945E4 00390244  38 00 00 00 */	li r0, 0
/* 803945E8 00390248  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803945EC 0039024C  7C 7F 1B 78 */	mr r31, r3
/* 803945F0 00390250  90 03 00 00 */	stw r0, 0(r3)
/* 803945F4 00390254  41 82 00 08 */	beq lbl_803945FC
/* 803945F8 00390258  48 00 00 1D */	bl func_80394614
lbl_803945FC:
/* 803945FC 0039025C  7F E3 FB 78 */	mr r3, r31
/* 80394600 00390260  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394604 00390264  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394608 00390268  7C 08 03 A6 */	mtlr r0
/* 8039460C 0039026C  38 21 00 10 */	addi r1, r1, 0x10
/* 80394610 00390270  4E 80 00 20 */	blr 

.global func_80394614
func_80394614:
/* 80394614 00390274  2C 04 00 00 */	cmpwi r4, 0
/* 80394618 00390278  40 82 00 0C */	bne lbl_80394624
/* 8039461C 0039027C  38 60 FF FF */	li r3, -1
/* 80394620 00390280  4E 80 00 20 */	blr 
lbl_80394624:
/* 80394624 00390284  80 03 00 00 */	lwz r0, 0(r3)
/* 80394628 00390288  2C 00 00 00 */	cmpwi r0, 0
/* 8039462C 0039028C  41 82 00 0C */	beq lbl_80394638
/* 80394630 00390290  38 60 FF FE */	li r3, -2
/* 80394634 00390294  4E 80 00 20 */	blr 
lbl_80394638:
/* 80394638 00390298  80 04 00 04 */	lwz r0, 4(r4)
/* 8039463C 0039029C  28 00 00 14 */	cmplwi r0, 0x14
/* 80394640 003902A0  41 82 00 0C */	beq lbl_8039464C
/* 80394644 003902A4  38 60 FF FD */	li r3, -3
/* 80394648 003902A8  4E 80 00 20 */	blr 
lbl_8039464C:
/* 8039464C 003902AC  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80394650 003902B0  2C 00 00 00 */	cmpwi r0, 0
/* 80394654 003902B4  40 82 01 0C */	bne lbl_80394760
/* 80394658 003902B8  80 04 00 08 */	lwz r0, 8(r4)
/* 8039465C 003902BC  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80394660 003902C0  7C E0 22 14 */	add r7, r0, r4
/* 80394664 003902C4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394668 003902C8  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8039466C 003902CC  7C C6 22 14 */	add r6, r6, r4
/* 80394670 003902D0  7C A5 22 14 */	add r5, r5, r4
/* 80394674 003902D4  90 E4 00 08 */	stw r7, 8(r4)
/* 80394678 003902D8  2C 00 00 00 */	cmpwi r0, 0
/* 8039467C 003902DC  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80394680 003902E0  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80394684 003902E4  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80394688 003902E8  41 82 00 0C */	beq lbl_80394694
/* 8039468C 003902EC  7C 00 22 14 */	add r0, r0, r4
/* 80394690 003902F0  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80394694:
/* 80394694 003902F4  2C 07 00 00 */	cmpwi r7, 0
/* 80394698 003902F8  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039469C 003902FC  41 82 00 BC */	beq lbl_80394758
/* 803946A0 00390300  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803946A4 00390304  7C 09 03 A6 */	mtctr r0
/* 803946A8 00390308  41 82 00 94 */	beq lbl_8039473C
lbl_803946AC:
/* 803946AC 0039030C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803946B0 00390310  7C 06 20 2E */	lwzx r0, r6, r4
/* 803946B4 00390314  7C 00 22 14 */	add r0, r0, r4
/* 803946B8 00390318  7C 06 21 2E */	stwx r0, r6, r4
/* 803946BC 0039031C  80 C5 00 04 */	lwz r6, 4(r5)
/* 803946C0 00390320  7C 06 20 2E */	lwzx r0, r6, r4
/* 803946C4 00390324  7C 00 22 14 */	add r0, r0, r4
/* 803946C8 00390328  7C 06 21 2E */	stwx r0, r6, r4
/* 803946CC 0039032C  80 C5 00 08 */	lwz r6, 8(r5)
/* 803946D0 00390330  7C 06 20 2E */	lwzx r0, r6, r4
/* 803946D4 00390334  7C 00 22 14 */	add r0, r0, r4
/* 803946D8 00390338  7C 06 21 2E */	stwx r0, r6, r4
/* 803946DC 0039033C  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803946E0 00390340  7C 06 20 2E */	lwzx r0, r6, r4
/* 803946E4 00390344  7C 00 22 14 */	add r0, r0, r4
/* 803946E8 00390348  7C 06 21 2E */	stwx r0, r6, r4
/* 803946EC 0039034C  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803946F0 00390350  7C 06 20 2E */	lwzx r0, r6, r4
/* 803946F4 00390354  7C 00 22 14 */	add r0, r0, r4
/* 803946F8 00390358  7C 06 21 2E */	stwx r0, r6, r4
/* 803946FC 0039035C  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80394700 00390360  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394704 00390364  7C 00 22 14 */	add r0, r0, r4
/* 80394708 00390368  7C 06 21 2E */	stwx r0, r6, r4
/* 8039470C 0039036C  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80394710 00390370  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394714 00390374  7C 00 22 14 */	add r0, r0, r4
/* 80394718 00390378  7C 06 21 2E */	stwx r0, r6, r4
/* 8039471C 0039037C  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80394720 00390380  38 A5 00 20 */	addi r5, r5, 0x20
/* 80394724 00390384  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394728 00390388  7C 00 22 14 */	add r0, r0, r4
/* 8039472C 0039038C  7C 06 21 2E */	stwx r0, r6, r4
/* 80394730 00390390  42 00 FF 7C */	bdnz lbl_803946AC
/* 80394734 00390394  70 E7 00 07 */	andi. r7, r7, 7
/* 80394738 00390398  41 82 00 20 */	beq lbl_80394758
lbl_8039473C:
/* 8039473C 0039039C  7C E9 03 A6 */	mtctr r7
lbl_80394740:
/* 80394740 003903A0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80394744 003903A4  38 A5 00 04 */	addi r5, r5, 4
/* 80394748 003903A8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039474C 003903AC  7C 00 22 14 */	add r0, r0, r4
/* 80394750 003903B0  7C 06 21 2E */	stwx r0, r6, r4
/* 80394754 003903B4  42 00 FF EC */	bdnz lbl_80394740
lbl_80394758:
/* 80394758 003903B8  38 00 00 01 */	li r0, 1
/* 8039475C 003903BC  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80394760:
/* 80394760 003903C0  90 83 00 00 */	stw r4, 0(r3)
/* 80394764 003903C4  38 60 00 00 */	li r3, 0
/* 80394768 003903C8  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8039476C 003903CC  38 05 00 01 */	addi r0, r5, 1
/* 80394770 003903D0  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80394774 003903D4  4E 80 00 20 */	blr 

.global func_80394778
func_80394778:
/* 80394778 003903D8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039477C 003903DC  2C 03 00 00 */	cmpwi r3, 0
/* 80394780 003903E0  40 82 00 0C */	bne lbl_8039478C
/* 80394784 003903E4  38 60 00 00 */	li r3, 0
/* 80394788 003903E8  4E 80 00 20 */	blr 
lbl_8039478C:
/* 8039478C 003903EC  2C 04 00 00 */	cmpwi r4, 0
/* 80394790 003903F0  40 80 00 0C */	bge lbl_8039479C
/* 80394794 003903F4  38 60 00 00 */	li r3, 0
/* 80394798 003903F8  4E 80 00 20 */	blr 
lbl_8039479C:
/* 8039479C 003903FC  1C 04 00 14 */	mulli r0, r4, 0x14
/* 803947A0 00390400  80 63 00 10 */	lwz r3, 0x10(r3)
/* 803947A4 00390404  7C 63 02 14 */	add r3, r3, r0
/* 803947A8 00390408  4E 80 00 20 */	blr 

.global func_803947AC
func_803947AC:
/* 803947AC 0039040C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803947B0 00390410  7C 08 02 A6 */	mflr r0
/* 803947B4 00390414  90 01 00 14 */	stw r0, 0x14(r1)
/* 803947B8 00390418  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803947BC 0039041C  7C BF 2B 78 */	mr r31, r5
/* 803947C0 00390420  4B FF FF B9 */	bl func_80394778
/* 803947C4 00390424  2C 03 00 00 */	cmpwi r3, 0
/* 803947C8 00390428  40 82 00 0C */	bne lbl_803947D4
/* 803947CC 0039042C  38 60 00 00 */	li r3, 0
/* 803947D0 00390430  48 00 00 1C */	b lbl_803947EC
lbl_803947D4:
/* 803947D4 00390434  28 1F 00 05 */	cmplwi r31, 5
/* 803947D8 00390438  41 80 00 0C */	blt lbl_803947E4
/* 803947DC 0039043C  38 60 00 00 */	li r3, 0
/* 803947E0 00390440  48 00 00 0C */	b lbl_803947EC
lbl_803947E4:
/* 803947E4 00390444  57 E0 08 3C */	slwi r0, r31, 1
/* 803947E8 00390448  7C 63 02 AE */	lhax r3, r3, r0
lbl_803947EC:
/* 803947EC 0039044C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803947F0 00390450  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803947F4 00390454  7C 08 03 A6 */	mtlr r0
/* 803947F8 00390458  38 21 00 10 */	addi r1, r1, 0x10
/* 803947FC 0039045C  4E 80 00 20 */	blr 

.global func_80394800
func_80394800:
/* 80394800 00390460  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394804 00390464  7C 08 02 A6 */	mflr r0
/* 80394808 00390468  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039480C 0039046C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394810 00390470  7C BF 2B 78 */	mr r31, r5
/* 80394814 00390474  4B FF FF 65 */	bl func_80394778
/* 80394818 00390478  2C 03 00 00 */	cmpwi r3, 0
/* 8039481C 0039047C  40 82 00 0C */	bne lbl_80394828
/* 80394820 00390480  38 60 00 00 */	li r3, 0
/* 80394824 00390484  48 00 00 20 */	b lbl_80394844
lbl_80394828:
/* 80394828 00390488  28 1F 00 05 */	cmplwi r31, 5
/* 8039482C 0039048C  41 80 00 0C */	blt lbl_80394838
/* 80394830 00390490  38 60 00 00 */	li r3, 0
/* 80394834 00390494  48 00 00 10 */	b lbl_80394844
lbl_80394838:
/* 80394838 00390498  57 E0 08 3C */	slwi r0, r31, 1
/* 8039483C 0039049C  7C 63 02 14 */	add r3, r3, r0
/* 80394840 003904A0  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_80394844:
/* 80394844 003904A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394848 003904A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039484C 003904AC  7C 08 03 A6 */	mtlr r0
/* 80394850 003904B0  38 21 00 10 */	addi r1, r1, 0x10
/* 80394854 003904B4  4E 80 00 20 */	blr 

.global func_80394858
func_80394858:
/* 80394858 003904B8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039485C 003904BC  7C 08 02 A6 */	mflr r0
/* 80394860 003904C0  2C 04 00 00 */	cmpwi r4, 0
/* 80394864 003904C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394868 003904C8  38 00 00 00 */	li r0, 0
/* 8039486C 003904CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394870 003904D0  7C 7F 1B 78 */	mr r31, r3
/* 80394874 003904D4  90 03 00 00 */	stw r0, 0(r3)
/* 80394878 003904D8  41 82 00 08 */	beq lbl_80394880
/* 8039487C 003904DC  48 00 00 1D */	bl func_80394898
lbl_80394880:
/* 80394880 003904E0  7F E3 FB 78 */	mr r3, r31
/* 80394884 003904E4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394888 003904E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039488C 003904EC  7C 08 03 A6 */	mtlr r0
/* 80394890 003904F0  38 21 00 10 */	addi r1, r1, 0x10
/* 80394894 003904F4  4E 80 00 20 */	blr 

.global func_80394898
func_80394898:
/* 80394898 003904F8  2C 04 00 00 */	cmpwi r4, 0
/* 8039489C 003904FC  40 82 00 0C */	bne lbl_803948A8
/* 803948A0 00390500  38 60 FF FF */	li r3, -1
/* 803948A4 00390504  4E 80 00 20 */	blr 
lbl_803948A8:
/* 803948A8 00390508  80 03 00 00 */	lwz r0, 0(r3)
/* 803948AC 0039050C  2C 00 00 00 */	cmpwi r0, 0
/* 803948B0 00390510  41 82 00 0C */	beq lbl_803948BC
/* 803948B4 00390514  38 60 FF FE */	li r3, -2
/* 803948B8 00390518  4E 80 00 20 */	blr 
lbl_803948BC:
/* 803948BC 0039051C  80 04 00 04 */	lwz r0, 4(r4)
/* 803948C0 00390520  28 00 00 14 */	cmplwi r0, 0x14
/* 803948C4 00390524  41 82 00 0C */	beq lbl_803948D0
/* 803948C8 00390528  38 60 FF FD */	li r3, -3
/* 803948CC 0039052C  4E 80 00 20 */	blr 
lbl_803948D0:
/* 803948D0 00390530  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803948D4 00390534  2C 00 00 00 */	cmpwi r0, 0
/* 803948D8 00390538  40 82 01 0C */	bne lbl_803949E4
/* 803948DC 0039053C  80 04 00 08 */	lwz r0, 8(r4)
/* 803948E0 00390540  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803948E4 00390544  7C E0 22 14 */	add r7, r0, r4
/* 803948E8 00390548  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803948EC 0039054C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803948F0 00390550  7C C6 22 14 */	add r6, r6, r4
/* 803948F4 00390554  7C A5 22 14 */	add r5, r5, r4
/* 803948F8 00390558  90 E4 00 08 */	stw r7, 8(r4)
/* 803948FC 0039055C  2C 00 00 00 */	cmpwi r0, 0
/* 80394900 00390560  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80394904 00390564  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80394908 00390568  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8039490C 0039056C  41 82 00 0C */	beq lbl_80394918
/* 80394910 00390570  7C 00 22 14 */	add r0, r0, r4
/* 80394914 00390574  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80394918:
/* 80394918 00390578  2C 07 00 00 */	cmpwi r7, 0
/* 8039491C 0039057C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394920 00390580  41 82 00 BC */	beq lbl_803949DC
/* 80394924 00390584  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80394928 00390588  7C 09 03 A6 */	mtctr r0
/* 8039492C 0039058C  41 82 00 94 */	beq lbl_803949C0
lbl_80394930:
/* 80394930 00390590  80 C5 00 00 */	lwz r6, 0(r5)
/* 80394934 00390594  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394938 00390598  7C 00 22 14 */	add r0, r0, r4
/* 8039493C 0039059C  7C 06 21 2E */	stwx r0, r6, r4
/* 80394940 003905A0  80 C5 00 04 */	lwz r6, 4(r5)
/* 80394944 003905A4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394948 003905A8  7C 00 22 14 */	add r0, r0, r4
/* 8039494C 003905AC  7C 06 21 2E */	stwx r0, r6, r4
/* 80394950 003905B0  80 C5 00 08 */	lwz r6, 8(r5)
/* 80394954 003905B4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394958 003905B8  7C 00 22 14 */	add r0, r0, r4
/* 8039495C 003905BC  7C 06 21 2E */	stwx r0, r6, r4
/* 80394960 003905C0  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80394964 003905C4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394968 003905C8  7C 00 22 14 */	add r0, r0, r4
/* 8039496C 003905CC  7C 06 21 2E */	stwx r0, r6, r4
/* 80394970 003905D0  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80394974 003905D4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394978 003905D8  7C 00 22 14 */	add r0, r0, r4
/* 8039497C 003905DC  7C 06 21 2E */	stwx r0, r6, r4
/* 80394980 003905E0  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80394984 003905E4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394988 003905E8  7C 00 22 14 */	add r0, r0, r4
/* 8039498C 003905EC  7C 06 21 2E */	stwx r0, r6, r4
/* 80394990 003905F0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80394994 003905F4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394998 003905F8  7C 00 22 14 */	add r0, r0, r4
/* 8039499C 003905FC  7C 06 21 2E */	stwx r0, r6, r4
/* 803949A0 00390600  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803949A4 00390604  38 A5 00 20 */	addi r5, r5, 0x20
/* 803949A8 00390608  7C 06 20 2E */	lwzx r0, r6, r4
/* 803949AC 0039060C  7C 00 22 14 */	add r0, r0, r4
/* 803949B0 00390610  7C 06 21 2E */	stwx r0, r6, r4
/* 803949B4 00390614  42 00 FF 7C */	bdnz lbl_80394930
/* 803949B8 00390618  70 E7 00 07 */	andi. r7, r7, 7
/* 803949BC 0039061C  41 82 00 20 */	beq lbl_803949DC
lbl_803949C0:
/* 803949C0 00390620  7C E9 03 A6 */	mtctr r7
lbl_803949C4:
/* 803949C4 00390624  80 C5 00 00 */	lwz r6, 0(r5)
/* 803949C8 00390628  38 A5 00 04 */	addi r5, r5, 4
/* 803949CC 0039062C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803949D0 00390630  7C 00 22 14 */	add r0, r0, r4
/* 803949D4 00390634  7C 06 21 2E */	stwx r0, r6, r4
/* 803949D8 00390638  42 00 FF EC */	bdnz lbl_803949C4
lbl_803949DC:
/* 803949DC 0039063C  38 00 00 01 */	li r0, 1
/* 803949E0 00390640  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803949E4:
/* 803949E4 00390644  90 83 00 00 */	stw r4, 0(r3)
/* 803949E8 00390648  38 60 00 00 */	li r3, 0
/* 803949EC 0039064C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803949F0 00390650  38 05 00 01 */	addi r0, r5, 1
/* 803949F4 00390654  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803949F8 00390658  4E 80 00 20 */	blr 

.global func_803949FC
func_803949FC:
/* 803949FC 0039065C  80 63 00 00 */	lwz r3, 0(r3)
/* 80394A00 00390660  2C 03 00 00 */	cmpwi r3, 0
/* 80394A04 00390664  40 82 00 0C */	bne lbl_80394A10
/* 80394A08 00390668  38 60 00 00 */	li r3, 0
/* 80394A0C 0039066C  4E 80 00 20 */	blr 
lbl_80394A10:
/* 80394A10 00390670  2C 04 00 00 */	cmpwi r4, 0
/* 80394A14 00390674  40 80 00 0C */	bge lbl_80394A20
/* 80394A18 00390678  38 60 00 00 */	li r3, 0
/* 80394A1C 0039067C  4E 80 00 20 */	blr 
lbl_80394A20:
/* 80394A20 00390680  1C 04 00 14 */	mulli r0, r4, 0x14
/* 80394A24 00390684  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80394A28 00390688  7C 63 02 14 */	add r3, r3, r0
/* 80394A2C 0039068C  4E 80 00 20 */	blr 

.global func_80394A30
func_80394A30:
/* 80394A30 00390690  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394A34 00390694  7C 08 02 A6 */	mflr r0
/* 80394A38 00390698  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394A3C 0039069C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394A40 003906A0  7C BF 2B 78 */	mr r31, r5
/* 80394A44 003906A4  4B FF FF B9 */	bl func_803949FC
/* 80394A48 003906A8  2C 03 00 00 */	cmpwi r3, 0
/* 80394A4C 003906AC  40 82 00 0C */	bne lbl_80394A58
/* 80394A50 003906B0  38 60 00 00 */	li r3, 0
/* 80394A54 003906B4  48 00 00 1C */	b lbl_80394A70
lbl_80394A58:
/* 80394A58 003906B8  28 1F 00 05 */	cmplwi r31, 5
/* 80394A5C 003906BC  41 80 00 0C */	blt lbl_80394A68
/* 80394A60 003906C0  38 60 00 00 */	li r3, 0
/* 80394A64 003906C4  48 00 00 0C */	b lbl_80394A70
lbl_80394A68:
/* 80394A68 003906C8  57 E0 08 3C */	slwi r0, r31, 1
/* 80394A6C 003906CC  7C 63 02 AE */	lhax r3, r3, r0
lbl_80394A70:
/* 80394A70 003906D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394A74 003906D4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394A78 003906D8  7C 08 03 A6 */	mtlr r0
/* 80394A7C 003906DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80394A80 003906E0  4E 80 00 20 */	blr 

.global func_80394A84
func_80394A84:
/* 80394A84 003906E4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394A88 003906E8  7C 08 02 A6 */	mflr r0
/* 80394A8C 003906EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394A90 003906F0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394A94 003906F4  7C BF 2B 78 */	mr r31, r5
/* 80394A98 003906F8  4B FF FF 65 */	bl func_803949FC
/* 80394A9C 003906FC  2C 03 00 00 */	cmpwi r3, 0
/* 80394AA0 00390700  40 82 00 0C */	bne lbl_80394AAC
/* 80394AA4 00390704  38 60 00 00 */	li r3, 0
/* 80394AA8 00390708  48 00 00 20 */	b lbl_80394AC8
lbl_80394AAC:
/* 80394AAC 0039070C  28 1F 00 05 */	cmplwi r31, 5
/* 80394AB0 00390710  41 80 00 0C */	blt lbl_80394ABC
/* 80394AB4 00390714  38 60 00 00 */	li r3, 0
/* 80394AB8 00390718  48 00 00 10 */	b lbl_80394AC8
lbl_80394ABC:
/* 80394ABC 0039071C  57 E0 08 3C */	slwi r0, r31, 1
/* 80394AC0 00390720  7C 63 02 14 */	add r3, r3, r0
/* 80394AC4 00390724  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_80394AC8:
/* 80394AC8 00390728  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394ACC 0039072C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394AD0 00390730  7C 08 03 A6 */	mtlr r0
/* 80394AD4 00390734  38 21 00 10 */	addi r1, r1, 0x10
/* 80394AD8 00390738  4E 80 00 20 */	blr 

.global func_80394ADC
func_80394ADC:
/* 80394ADC 0039073C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394AE0 00390740  7C 08 02 A6 */	mflr r0
/* 80394AE4 00390744  2C 04 00 00 */	cmpwi r4, 0
/* 80394AE8 00390748  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394AEC 0039074C  38 00 00 00 */	li r0, 0
/* 80394AF0 00390750  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394AF4 00390754  7C 7F 1B 78 */	mr r31, r3
/* 80394AF8 00390758  90 03 00 00 */	stw r0, 0(r3)
/* 80394AFC 0039075C  41 82 00 08 */	beq lbl_80394B04
/* 80394B00 00390760  48 00 00 1D */	bl func_80394B1C
lbl_80394B04:
/* 80394B04 00390764  7F E3 FB 78 */	mr r3, r31
/* 80394B08 00390768  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394B0C 0039076C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394B10 00390770  7C 08 03 A6 */	mtlr r0
/* 80394B14 00390774  38 21 00 10 */	addi r1, r1, 0x10
/* 80394B18 00390778  4E 80 00 20 */	blr 

.global func_80394B1C
func_80394B1C:
/* 80394B1C 0039077C  2C 04 00 00 */	cmpwi r4, 0
/* 80394B20 00390780  40 82 00 0C */	bne lbl_80394B2C
/* 80394B24 00390784  38 60 FF FF */	li r3, -1
/* 80394B28 00390788  4E 80 00 20 */	blr 
lbl_80394B2C:
/* 80394B2C 0039078C  80 03 00 00 */	lwz r0, 0(r3)
/* 80394B30 00390790  2C 00 00 00 */	cmpwi r0, 0
/* 80394B34 00390794  41 82 00 0C */	beq lbl_80394B40
/* 80394B38 00390798  38 60 FF FE */	li r3, -2
/* 80394B3C 0039079C  4E 80 00 20 */	blr 
lbl_80394B40:
/* 80394B40 003907A0  80 04 00 04 */	lwz r0, 4(r4)
/* 80394B44 003907A4  28 00 00 14 */	cmplwi r0, 0x14
/* 80394B48 003907A8  41 82 00 0C */	beq lbl_80394B54
/* 80394B4C 003907AC  38 60 FF FD */	li r3, -3
/* 80394B50 003907B0  4E 80 00 20 */	blr 
lbl_80394B54:
/* 80394B54 003907B4  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80394B58 003907B8  2C 00 00 00 */	cmpwi r0, 0
/* 80394B5C 003907BC  40 82 01 0C */	bne lbl_80394C68
/* 80394B60 003907C0  80 04 00 08 */	lwz r0, 8(r4)
/* 80394B64 003907C4  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80394B68 003907C8  7C E0 22 14 */	add r7, r0, r4
/* 80394B6C 003907CC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394B70 003907D0  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80394B74 003907D4  7C C6 22 14 */	add r6, r6, r4
/* 80394B78 003907D8  7C A5 22 14 */	add r5, r5, r4
/* 80394B7C 003907DC  90 E4 00 08 */	stw r7, 8(r4)
/* 80394B80 003907E0  2C 00 00 00 */	cmpwi r0, 0
/* 80394B84 003907E4  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80394B88 003907E8  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80394B8C 003907EC  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80394B90 003907F0  41 82 00 0C */	beq lbl_80394B9C
/* 80394B94 003907F4  7C 00 22 14 */	add r0, r0, r4
/* 80394B98 003907F8  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80394B9C:
/* 80394B9C 003907FC  2C 07 00 00 */	cmpwi r7, 0
/* 80394BA0 00390800  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394BA4 00390804  41 82 00 BC */	beq lbl_80394C60
/* 80394BA8 00390808  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80394BAC 0039080C  7C 09 03 A6 */	mtctr r0
/* 80394BB0 00390810  41 82 00 94 */	beq lbl_80394C44
lbl_80394BB4:
/* 80394BB4 00390814  80 C5 00 00 */	lwz r6, 0(r5)
/* 80394BB8 00390818  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394BBC 0039081C  7C 00 22 14 */	add r0, r0, r4
/* 80394BC0 00390820  7C 06 21 2E */	stwx r0, r6, r4
/* 80394BC4 00390824  80 C5 00 04 */	lwz r6, 4(r5)
/* 80394BC8 00390828  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394BCC 0039082C  7C 00 22 14 */	add r0, r0, r4
/* 80394BD0 00390830  7C 06 21 2E */	stwx r0, r6, r4
/* 80394BD4 00390834  80 C5 00 08 */	lwz r6, 8(r5)
/* 80394BD8 00390838  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394BDC 0039083C  7C 00 22 14 */	add r0, r0, r4
/* 80394BE0 00390840  7C 06 21 2E */	stwx r0, r6, r4
/* 80394BE4 00390844  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80394BE8 00390848  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394BEC 0039084C  7C 00 22 14 */	add r0, r0, r4
/* 80394BF0 00390850  7C 06 21 2E */	stwx r0, r6, r4
/* 80394BF4 00390854  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80394BF8 00390858  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394BFC 0039085C  7C 00 22 14 */	add r0, r0, r4
/* 80394C00 00390860  7C 06 21 2E */	stwx r0, r6, r4
/* 80394C04 00390864  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80394C08 00390868  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394C0C 0039086C  7C 00 22 14 */	add r0, r0, r4
/* 80394C10 00390870  7C 06 21 2E */	stwx r0, r6, r4
/* 80394C14 00390874  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80394C18 00390878  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394C1C 0039087C  7C 00 22 14 */	add r0, r0, r4
/* 80394C20 00390880  7C 06 21 2E */	stwx r0, r6, r4
/* 80394C24 00390884  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80394C28 00390888  38 A5 00 20 */	addi r5, r5, 0x20
/* 80394C2C 0039088C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394C30 00390890  7C 00 22 14 */	add r0, r0, r4
/* 80394C34 00390894  7C 06 21 2E */	stwx r0, r6, r4
/* 80394C38 00390898  42 00 FF 7C */	bdnz lbl_80394BB4
/* 80394C3C 0039089C  70 E7 00 07 */	andi. r7, r7, 7
/* 80394C40 003908A0  41 82 00 20 */	beq lbl_80394C60
lbl_80394C44:
/* 80394C44 003908A4  7C E9 03 A6 */	mtctr r7
lbl_80394C48:
/* 80394C48 003908A8  80 C5 00 00 */	lwz r6, 0(r5)
/* 80394C4C 003908AC  38 A5 00 04 */	addi r5, r5, 4
/* 80394C50 003908B0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394C54 003908B4  7C 00 22 14 */	add r0, r0, r4
/* 80394C58 003908B8  7C 06 21 2E */	stwx r0, r6, r4
/* 80394C5C 003908BC  42 00 FF EC */	bdnz lbl_80394C48
lbl_80394C60:
/* 80394C60 003908C0  38 00 00 01 */	li r0, 1
/* 80394C64 003908C4  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80394C68:
/* 80394C68 003908C8  90 83 00 00 */	stw r4, 0(r3)
/* 80394C6C 003908CC  38 60 00 00 */	li r3, 0
/* 80394C70 003908D0  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80394C74 003908D4  38 05 00 01 */	addi r0, r5, 1
/* 80394C78 003908D8  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80394C7C 003908DC  4E 80 00 20 */	blr 

.global func_80394C80
func_80394C80:
/* 80394C80 003908E0  80 63 00 00 */	lwz r3, 0(r3)
/* 80394C84 003908E4  2C 03 00 00 */	cmpwi r3, 0
/* 80394C88 003908E8  40 82 00 0C */	bne lbl_80394C94
/* 80394C8C 003908EC  38 60 00 00 */	li r3, 0
/* 80394C90 003908F0  4E 80 00 20 */	blr 
lbl_80394C94:
/* 80394C94 003908F4  2C 04 00 00 */	cmpwi r4, 0
/* 80394C98 003908F8  40 80 00 0C */	bge lbl_80394CA4
/* 80394C9C 003908FC  38 60 00 00 */	li r3, 0
/* 80394CA0 00390900  4E 80 00 20 */	blr 
lbl_80394CA4:
/* 80394CA4 00390904  1C 04 00 14 */	mulli r0, r4, 0x14
/* 80394CA8 00390908  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80394CAC 0039090C  7C 63 02 14 */	add r3, r3, r0
/* 80394CB0 00390910  4E 80 00 20 */	blr 

.global func_80394CB4
func_80394CB4:
/* 80394CB4 00390914  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394CB8 00390918  7C 08 02 A6 */	mflr r0
/* 80394CBC 0039091C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394CC0 00390920  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394CC4 00390924  7C BF 2B 78 */	mr r31, r5
/* 80394CC8 00390928  4B FF FF B9 */	bl func_80394C80
/* 80394CCC 0039092C  2C 03 00 00 */	cmpwi r3, 0
/* 80394CD0 00390930  40 82 00 0C */	bne lbl_80394CDC
/* 80394CD4 00390934  38 60 00 00 */	li r3, 0
/* 80394CD8 00390938  48 00 00 1C */	b lbl_80394CF4
lbl_80394CDC:
/* 80394CDC 0039093C  28 1F 00 05 */	cmplwi r31, 5
/* 80394CE0 00390940  41 80 00 0C */	blt lbl_80394CEC
/* 80394CE4 00390944  38 60 00 00 */	li r3, 0
/* 80394CE8 00390948  48 00 00 0C */	b lbl_80394CF4
lbl_80394CEC:
/* 80394CEC 0039094C  57 E0 08 3C */	slwi r0, r31, 1
/* 80394CF0 00390950  7C 63 02 AE */	lhax r3, r3, r0
lbl_80394CF4:
/* 80394CF4 00390954  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394CF8 00390958  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394CFC 0039095C  7C 08 03 A6 */	mtlr r0
/* 80394D00 00390960  38 21 00 10 */	addi r1, r1, 0x10
/* 80394D04 00390964  4E 80 00 20 */	blr 

.global func_80394D08
func_80394D08:
/* 80394D08 00390968  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394D0C 0039096C  7C 08 02 A6 */	mflr r0
/* 80394D10 00390970  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394D14 00390974  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394D18 00390978  7C BF 2B 78 */	mr r31, r5
/* 80394D1C 0039097C  4B FF FF 65 */	bl func_80394C80
/* 80394D20 00390980  2C 03 00 00 */	cmpwi r3, 0
/* 80394D24 00390984  40 82 00 0C */	bne lbl_80394D30
/* 80394D28 00390988  38 60 00 00 */	li r3, 0
/* 80394D2C 0039098C  48 00 00 20 */	b lbl_80394D4C
lbl_80394D30:
/* 80394D30 00390990  28 1F 00 05 */	cmplwi r31, 5
/* 80394D34 00390994  41 80 00 0C */	blt lbl_80394D40
/* 80394D38 00390998  38 60 00 00 */	li r3, 0
/* 80394D3C 0039099C  48 00 00 10 */	b lbl_80394D4C
lbl_80394D40:
/* 80394D40 003909A0  57 E0 08 3C */	slwi r0, r31, 1
/* 80394D44 003909A4  7C 63 02 14 */	add r3, r3, r0
/* 80394D48 003909A8  A8 63 00 0A */	lha r3, 0xa(r3)
lbl_80394D4C:
/* 80394D4C 003909AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394D50 003909B0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394D54 003909B4  7C 08 03 A6 */	mtlr r0
/* 80394D58 003909B8  38 21 00 10 */	addi r1, r1, 0x10
/* 80394D5C 003909BC  4E 80 00 20 */	blr 

.global func_80394D60
func_80394D60:
/* 80394D60 003909C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394D64 003909C4  7C 08 02 A6 */	mflr r0
/* 80394D68 003909C8  2C 04 00 00 */	cmpwi r4, 0
/* 80394D6C 003909CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394D70 003909D0  38 00 00 00 */	li r0, 0
/* 80394D74 003909D4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394D78 003909D8  7C 7F 1B 78 */	mr r31, r3
/* 80394D7C 003909DC  90 03 00 00 */	stw r0, 0(r3)
/* 80394D80 003909E0  41 82 00 08 */	beq lbl_80394D88
/* 80394D84 003909E4  48 00 00 1D */	bl func_80394DA0
lbl_80394D88:
/* 80394D88 003909E8  7F E3 FB 78 */	mr r3, r31
/* 80394D8C 003909EC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394D90 003909F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394D94 003909F4  7C 08 03 A6 */	mtlr r0
/* 80394D98 003909F8  38 21 00 10 */	addi r1, r1, 0x10
/* 80394D9C 003909FC  4E 80 00 20 */	blr 

.global func_80394DA0
func_80394DA0:
/* 80394DA0 00390A00  2C 04 00 00 */	cmpwi r4, 0
/* 80394DA4 00390A04  40 82 00 0C */	bne lbl_80394DB0
/* 80394DA8 00390A08  38 60 FF FF */	li r3, -1
/* 80394DAC 00390A0C  4E 80 00 20 */	blr 
lbl_80394DB0:
/* 80394DB0 00390A10  80 03 00 00 */	lwz r0, 0(r3)
/* 80394DB4 00390A14  2C 00 00 00 */	cmpwi r0, 0
/* 80394DB8 00390A18  41 82 00 0C */	beq lbl_80394DC4
/* 80394DBC 00390A1C  38 60 FF FE */	li r3, -2
/* 80394DC0 00390A20  4E 80 00 20 */	blr 
lbl_80394DC4:
/* 80394DC4 00390A24  80 04 00 04 */	lwz r0, 4(r4)
/* 80394DC8 00390A28  28 00 00 0A */	cmplwi r0, 0xa
/* 80394DCC 00390A2C  41 82 00 0C */	beq lbl_80394DD8
/* 80394DD0 00390A30  38 60 FF FD */	li r3, -3
/* 80394DD4 00390A34  4E 80 00 20 */	blr 
lbl_80394DD8:
/* 80394DD8 00390A38  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80394DDC 00390A3C  2C 00 00 00 */	cmpwi r0, 0
/* 80394DE0 00390A40  40 82 01 0C */	bne lbl_80394EEC
/* 80394DE4 00390A44  80 04 00 08 */	lwz r0, 8(r4)
/* 80394DE8 00390A48  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80394DEC 00390A4C  7C E0 22 14 */	add r7, r0, r4
/* 80394DF0 00390A50  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394DF4 00390A54  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80394DF8 00390A58  7C C6 22 14 */	add r6, r6, r4
/* 80394DFC 00390A5C  7C A5 22 14 */	add r5, r5, r4
/* 80394E00 00390A60  90 E4 00 08 */	stw r7, 8(r4)
/* 80394E04 00390A64  2C 00 00 00 */	cmpwi r0, 0
/* 80394E08 00390A68  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80394E0C 00390A6C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80394E10 00390A70  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80394E14 00390A74  41 82 00 0C */	beq lbl_80394E20
/* 80394E18 00390A78  7C 00 22 14 */	add r0, r0, r4
/* 80394E1C 00390A7C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80394E20:
/* 80394E20 00390A80  2C 07 00 00 */	cmpwi r7, 0
/* 80394E24 00390A84  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80394E28 00390A88  41 82 00 BC */	beq lbl_80394EE4
/* 80394E2C 00390A8C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80394E30 00390A90  7C 09 03 A6 */	mtctr r0
/* 80394E34 00390A94  41 82 00 94 */	beq lbl_80394EC8
lbl_80394E38:
/* 80394E38 00390A98  80 C5 00 00 */	lwz r6, 0(r5)
/* 80394E3C 00390A9C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394E40 00390AA0  7C 00 22 14 */	add r0, r0, r4
/* 80394E44 00390AA4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394E48 00390AA8  80 C5 00 04 */	lwz r6, 4(r5)
/* 80394E4C 00390AAC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394E50 00390AB0  7C 00 22 14 */	add r0, r0, r4
/* 80394E54 00390AB4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394E58 00390AB8  80 C5 00 08 */	lwz r6, 8(r5)
/* 80394E5C 00390ABC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394E60 00390AC0  7C 00 22 14 */	add r0, r0, r4
/* 80394E64 00390AC4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394E68 00390AC8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80394E6C 00390ACC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394E70 00390AD0  7C 00 22 14 */	add r0, r0, r4
/* 80394E74 00390AD4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394E78 00390AD8  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80394E7C 00390ADC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394E80 00390AE0  7C 00 22 14 */	add r0, r0, r4
/* 80394E84 00390AE4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394E88 00390AE8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80394E8C 00390AEC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394E90 00390AF0  7C 00 22 14 */	add r0, r0, r4
/* 80394E94 00390AF4  7C 06 21 2E */	stwx r0, r6, r4
/* 80394E98 00390AF8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80394E9C 00390AFC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394EA0 00390B00  7C 00 22 14 */	add r0, r0, r4
/* 80394EA4 00390B04  7C 06 21 2E */	stwx r0, r6, r4
/* 80394EA8 00390B08  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80394EAC 00390B0C  38 A5 00 20 */	addi r5, r5, 0x20
/* 80394EB0 00390B10  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394EB4 00390B14  7C 00 22 14 */	add r0, r0, r4
/* 80394EB8 00390B18  7C 06 21 2E */	stwx r0, r6, r4
/* 80394EBC 00390B1C  42 00 FF 7C */	bdnz lbl_80394E38
/* 80394EC0 00390B20  70 E7 00 07 */	andi. r7, r7, 7
/* 80394EC4 00390B24  41 82 00 20 */	beq lbl_80394EE4
lbl_80394EC8:
/* 80394EC8 00390B28  7C E9 03 A6 */	mtctr r7
lbl_80394ECC:
/* 80394ECC 00390B2C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80394ED0 00390B30  38 A5 00 04 */	addi r5, r5, 4
/* 80394ED4 00390B34  7C 06 20 2E */	lwzx r0, r6, r4
/* 80394ED8 00390B38  7C 00 22 14 */	add r0, r0, r4
/* 80394EDC 00390B3C  7C 06 21 2E */	stwx r0, r6, r4
/* 80394EE0 00390B40  42 00 FF EC */	bdnz lbl_80394ECC
lbl_80394EE4:
/* 80394EE4 00390B44  38 00 00 01 */	li r0, 1
/* 80394EE8 00390B48  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80394EEC:
/* 80394EEC 00390B4C  90 83 00 00 */	stw r4, 0(r3)
/* 80394EF0 00390B50  38 60 00 00 */	li r3, 0
/* 80394EF4 00390B54  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80394EF8 00390B58  38 05 00 01 */	addi r0, r5, 1
/* 80394EFC 00390B5C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80394F00 00390B60  4E 80 00 20 */	blr 

.global func_80394F04
func_80394F04:
/* 80394F04 00390B64  80 63 00 00 */	lwz r3, 0(r3)
/* 80394F08 00390B68  2C 03 00 00 */	cmpwi r3, 0
/* 80394F0C 00390B6C  40 82 00 0C */	bne lbl_80394F18
/* 80394F10 00390B70  38 60 00 00 */	li r3, 0
/* 80394F14 00390B74  4E 80 00 20 */	blr 
lbl_80394F18:
/* 80394F18 00390B78  2C 04 00 00 */	cmpwi r4, 0
/* 80394F1C 00390B7C  40 80 00 0C */	bge lbl_80394F28
/* 80394F20 00390B80  38 60 00 00 */	li r3, 0
/* 80394F24 00390B84  4E 80 00 20 */	blr 
lbl_80394F28:
/* 80394F28 00390B88  1C 04 00 0A */	mulli r0, r4, 0xa
/* 80394F2C 00390B8C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80394F30 00390B90  7C 63 02 14 */	add r3, r3, r0
/* 80394F34 00390B94  4E 80 00 20 */	blr 

.global func_80394F38
func_80394F38:
/* 80394F38 00390B98  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394F3C 00390B9C  7C 08 02 A6 */	mflr r0
/* 80394F40 00390BA0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394F44 00390BA4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394F48 00390BA8  7C BF 2B 78 */	mr r31, r5
/* 80394F4C 00390BAC  4B FF FF B9 */	bl func_80394F04
/* 80394F50 00390BB0  2C 03 00 00 */	cmpwi r3, 0
/* 80394F54 00390BB4  40 82 00 0C */	bne lbl_80394F60
/* 80394F58 00390BB8  38 60 00 00 */	li r3, 0
/* 80394F5C 00390BBC  48 00 00 1C */	b lbl_80394F78
lbl_80394F60:
/* 80394F60 00390BC0  28 1F 00 05 */	cmplwi r31, 5
/* 80394F64 00390BC4  41 80 00 0C */	blt lbl_80394F70
/* 80394F68 00390BC8  38 60 00 00 */	li r3, 0
/* 80394F6C 00390BCC  48 00 00 0C */	b lbl_80394F78
lbl_80394F70:
/* 80394F70 00390BD0  57 E0 08 3C */	slwi r0, r31, 1
/* 80394F74 00390BD4  7C 63 02 AE */	lhax r3, r3, r0
lbl_80394F78:
/* 80394F78 00390BD8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394F7C 00390BDC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394F80 00390BE0  7C 08 03 A6 */	mtlr r0
/* 80394F84 00390BE4  38 21 00 10 */	addi r1, r1, 0x10
/* 80394F88 00390BE8  4E 80 00 20 */	blr 

.global func_80394F8C
func_80394F8C:
/* 80394F8C 00390BEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394F90 00390BF0  7C 08 02 A6 */	mflr r0
/* 80394F94 00390BF4  2C 04 00 00 */	cmpwi r4, 0
/* 80394F98 00390BF8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394F9C 00390BFC  38 00 00 00 */	li r0, 0
/* 80394FA0 00390C00  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394FA4 00390C04  7C 7F 1B 78 */	mr r31, r3
/* 80394FA8 00390C08  90 03 00 00 */	stw r0, 0(r3)
/* 80394FAC 00390C0C  41 82 00 08 */	beq lbl_80394FB4
/* 80394FB0 00390C10  48 00 00 7D */	bl func_8039502C
lbl_80394FB4:
/* 80394FB4 00390C14  7F E3 FB 78 */	mr r3, r31
/* 80394FB8 00390C18  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80394FBC 00390C1C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80394FC0 00390C20  7C 08 03 A6 */	mtlr r0
/* 80394FC4 00390C24  38 21 00 10 */	addi r1, r1, 0x10
/* 80394FC8 00390C28  4E 80 00 20 */	blr 

.global func_80394FCC
func_80394FCC:
/* 80394FCC 00390C2C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80394FD0 00390C30  7C 08 02 A6 */	mflr r0
/* 80394FD4 00390C34  2C 03 00 00 */	cmpwi r3, 0
/* 80394FD8 00390C38  90 01 00 14 */	stw r0, 0x14(r1)
/* 80394FDC 00390C3C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80394FE0 00390C40  7C 9F 23 78 */	mr r31, r4
/* 80394FE4 00390C44  93 C1 00 08 */	stw r30, 8(r1)
/* 80394FE8 00390C48  7C 7E 1B 78 */	mr r30, r3
/* 80394FEC 00390C4C  41 82 00 24 */	beq lbl_80395010
/* 80394FF0 00390C50  80 03 00 00 */	lwz r0, 0(r3)
/* 80394FF4 00390C54  2C 00 00 00 */	cmpwi r0, 0
/* 80394FF8 00390C58  41 82 00 08 */	beq lbl_80395000
/* 80394FFC 00390C5C  48 00 01 95 */	bl func_80395190
lbl_80395000:
/* 80395000 00390C60  2C 1F 00 00 */	cmpwi r31, 0
/* 80395004 00390C64  40 81 00 0C */	ble lbl_80395010
/* 80395008 00390C68  7F C3 F3 78 */	mr r3, r30
/* 8039500C 00390C6C  4B E4 5A AD */	bl __dl__FPv
lbl_80395010:
/* 80395010 00390C70  7F C3 F3 78 */	mr r3, r30
/* 80395014 00390C74  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80395018 00390C78  83 C1 00 08 */	lwz r30, 8(r1)
/* 8039501C 00390C7C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395020 00390C80  7C 08 03 A6 */	mtlr r0
/* 80395024 00390C84  38 21 00 10 */	addi r1, r1, 0x10
/* 80395028 00390C88  4E 80 00 20 */	blr 

.global func_8039502C
func_8039502C:
/* 8039502C 00390C8C  2C 04 00 00 */	cmpwi r4, 0
/* 80395030 00390C90  40 82 00 0C */	bne lbl_8039503C
/* 80395034 00390C94  38 60 FF FF */	li r3, -1
/* 80395038 00390C98  4E 80 00 20 */	blr 
lbl_8039503C:
/* 8039503C 00390C9C  80 03 00 00 */	lwz r0, 0(r3)
/* 80395040 00390CA0  2C 00 00 00 */	cmpwi r0, 0
/* 80395044 00390CA4  41 82 00 0C */	beq lbl_80395050
/* 80395048 00390CA8  38 60 FF FE */	li r3, -2
/* 8039504C 00390CAC  4E 80 00 20 */	blr 
lbl_80395050:
/* 80395050 00390CB0  80 04 00 04 */	lwz r0, 4(r4)
/* 80395054 00390CB4  28 00 00 3C */	cmplwi r0, 0x3c
/* 80395058 00390CB8  41 82 00 0C */	beq lbl_80395064
/* 8039505C 00390CBC  38 60 FF FD */	li r3, -3
/* 80395060 00390CC0  4E 80 00 20 */	blr 
lbl_80395064:
/* 80395064 00390CC4  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80395068 00390CC8  2C 00 00 00 */	cmpwi r0, 0
/* 8039506C 00390CCC  40 82 01 0C */	bne lbl_80395178
/* 80395070 00390CD0  80 04 00 08 */	lwz r0, 8(r4)
/* 80395074 00390CD4  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80395078 00390CD8  7C E0 22 14 */	add r7, r0, r4
/* 8039507C 00390CDC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80395080 00390CE0  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80395084 00390CE4  7C C6 22 14 */	add r6, r6, r4
/* 80395088 00390CE8  7C A5 22 14 */	add r5, r5, r4
/* 8039508C 00390CEC  90 E4 00 08 */	stw r7, 8(r4)
/* 80395090 00390CF0  2C 00 00 00 */	cmpwi r0, 0
/* 80395094 00390CF4  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80395098 00390CF8  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8039509C 00390CFC  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803950A0 00390D00  41 82 00 0C */	beq lbl_803950AC
/* 803950A4 00390D04  7C 00 22 14 */	add r0, r0, r4
/* 803950A8 00390D08  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803950AC:
/* 803950AC 00390D0C  2C 07 00 00 */	cmpwi r7, 0
/* 803950B0 00390D10  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803950B4 00390D14  41 82 00 BC */	beq lbl_80395170
/* 803950B8 00390D18  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803950BC 00390D1C  7C 09 03 A6 */	mtctr r0
/* 803950C0 00390D20  41 82 00 94 */	beq lbl_80395154
lbl_803950C4:
/* 803950C4 00390D24  80 C5 00 00 */	lwz r6, 0(r5)
/* 803950C8 00390D28  7C 06 20 2E */	lwzx r0, r6, r4
/* 803950CC 00390D2C  7C 00 22 14 */	add r0, r0, r4
/* 803950D0 00390D30  7C 06 21 2E */	stwx r0, r6, r4
/* 803950D4 00390D34  80 C5 00 04 */	lwz r6, 4(r5)
/* 803950D8 00390D38  7C 06 20 2E */	lwzx r0, r6, r4
/* 803950DC 00390D3C  7C 00 22 14 */	add r0, r0, r4
/* 803950E0 00390D40  7C 06 21 2E */	stwx r0, r6, r4
/* 803950E4 00390D44  80 C5 00 08 */	lwz r6, 8(r5)
/* 803950E8 00390D48  7C 06 20 2E */	lwzx r0, r6, r4
/* 803950EC 00390D4C  7C 00 22 14 */	add r0, r0, r4
/* 803950F0 00390D50  7C 06 21 2E */	stwx r0, r6, r4
/* 803950F4 00390D54  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803950F8 00390D58  7C 06 20 2E */	lwzx r0, r6, r4
/* 803950FC 00390D5C  7C 00 22 14 */	add r0, r0, r4
/* 80395100 00390D60  7C 06 21 2E */	stwx r0, r6, r4
/* 80395104 00390D64  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80395108 00390D68  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039510C 00390D6C  7C 00 22 14 */	add r0, r0, r4
/* 80395110 00390D70  7C 06 21 2E */	stwx r0, r6, r4
/* 80395114 00390D74  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80395118 00390D78  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039511C 00390D7C  7C 00 22 14 */	add r0, r0, r4
/* 80395120 00390D80  7C 06 21 2E */	stwx r0, r6, r4
/* 80395124 00390D84  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80395128 00390D88  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039512C 00390D8C  7C 00 22 14 */	add r0, r0, r4
/* 80395130 00390D90  7C 06 21 2E */	stwx r0, r6, r4
/* 80395134 00390D94  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80395138 00390D98  38 A5 00 20 */	addi r5, r5, 0x20
/* 8039513C 00390D9C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395140 00390DA0  7C 00 22 14 */	add r0, r0, r4
/* 80395144 00390DA4  7C 06 21 2E */	stwx r0, r6, r4
/* 80395148 00390DA8  42 00 FF 7C */	bdnz lbl_803950C4
/* 8039514C 00390DAC  70 E7 00 07 */	andi. r7, r7, 7
/* 80395150 00390DB0  41 82 00 20 */	beq lbl_80395170
lbl_80395154:
/* 80395154 00390DB4  7C E9 03 A6 */	mtctr r7
lbl_80395158:
/* 80395158 00390DB8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039515C 00390DBC  38 A5 00 04 */	addi r5, r5, 4
/* 80395160 00390DC0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395164 00390DC4  7C 00 22 14 */	add r0, r0, r4
/* 80395168 00390DC8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039516C 00390DCC  42 00 FF EC */	bdnz lbl_80395158
lbl_80395170:
/* 80395170 00390DD0  38 00 00 01 */	li r0, 1
/* 80395174 00390DD4  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80395178:
/* 80395178 00390DD8  90 83 00 00 */	stw r4, 0(r3)
/* 8039517C 00390DDC  38 60 00 00 */	li r3, 0
/* 80395180 00390DE0  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80395184 00390DE4  38 05 00 01 */	addi r0, r5, 1
/* 80395188 00390DE8  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 8039518C 00390DEC  4E 80 00 20 */	blr 

.global func_80395190
func_80395190:
/* 80395190 00390DF0  80 83 00 00 */	lwz r4, 0(r3)
/* 80395194 00390DF4  38 A0 00 00 */	li r5, 0
/* 80395198 00390DF8  2C 04 00 00 */	cmpwi r4, 0
/* 8039519C 00390DFC  41 82 00 20 */	beq lbl_803951BC
/* 803951A0 00390E00  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803951A4 00390E04  2C 05 00 00 */	cmpwi r5, 0
/* 803951A8 00390E08  41 82 00 0C */	beq lbl_803951B4
/* 803951AC 00390E0C  38 A5 FF FF */	addi r5, r5, -1
/* 803951B0 00390E10  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803951B4:
/* 803951B4 00390E14  38 00 00 00 */	li r0, 0
/* 803951B8 00390E18  90 03 00 00 */	stw r0, 0(r3)
lbl_803951BC:
/* 803951BC 00390E1C  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803951C0 00390E20  4E 80 00 20 */	blr 

.global func_803951C4
func_803951C4:
/* 803951C4 00390E24  80 63 00 00 */	lwz r3, 0(r3)
/* 803951C8 00390E28  2C 03 00 00 */	cmpwi r3, 0
/* 803951CC 00390E2C  40 82 00 0C */	bne lbl_803951D8
/* 803951D0 00390E30  38 60 00 00 */	li r3, 0
/* 803951D4 00390E34  4E 80 00 20 */	blr 
lbl_803951D8:
/* 803951D8 00390E38  2C 04 00 00 */	cmpwi r4, 0
/* 803951DC 00390E3C  40 80 00 0C */	bge lbl_803951E8
/* 803951E0 00390E40  38 60 00 00 */	li r3, 0
/* 803951E4 00390E44  4E 80 00 20 */	blr 
lbl_803951E8:
/* 803951E8 00390E48  1C 04 00 3C */	mulli r0, r4, 0x3c
/* 803951EC 00390E4C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 803951F0 00390E50  7C 63 02 14 */	add r3, r3, r0
/* 803951F4 00390E54  4E 80 00 20 */	blr 

.global func_803951F8
func_803951F8:
/* 803951F8 00390E58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803951FC 00390E5C  7C 08 02 A6 */	mflr r0
/* 80395200 00390E60  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395204 00390E64  4B FF FF C1 */	bl func_803951C4
/* 80395208 00390E68  2C 03 00 00 */	cmpwi r3, 0
/* 8039520C 00390E6C  41 82 00 10 */	beq lbl_8039521C
/* 80395210 00390E70  88 03 00 2E */	lbz r0, 0x2e(r3)
/* 80395214 00390E74  54 03 E7 3E */	rlwinm r3, r0, 0x1c, 0x1c, 0x1f
/* 80395218 00390E78  48 00 00 08 */	b lbl_80395220
lbl_8039521C:
/* 8039521C 00390E7C  38 60 00 00 */	li r3, 0
lbl_80395220:
/* 80395220 00390E80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395224 00390E84  7C 08 03 A6 */	mtlr r0
/* 80395228 00390E88  38 21 00 10 */	addi r1, r1, 0x10
/* 8039522C 00390E8C  4E 80 00 20 */	blr 

.global func_80395230
func_80395230:
/* 80395230 00390E90  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395234 00390E94  7C 08 02 A6 */	mflr r0
/* 80395238 00390E98  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039523C 00390E9C  4B FF FF 89 */	bl func_803951C4
/* 80395240 00390EA0  2C 03 00 00 */	cmpwi r3, 0
/* 80395244 00390EA4  41 82 00 10 */	beq lbl_80395254
/* 80395248 00390EA8  88 03 00 2F */	lbz r0, 0x2f(r3)
/* 8039524C 00390EAC  54 03 DF 7E */	rlwinm r3, r0, 0x1b, 0x1d, 0x1f
/* 80395250 00390EB0  48 00 00 08 */	b lbl_80395258
lbl_80395254:
/* 80395254 00390EB4  38 60 00 00 */	li r3, 0
lbl_80395258:
/* 80395258 00390EB8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039525C 00390EBC  7C 08 03 A6 */	mtlr r0
/* 80395260 00390EC0  38 21 00 10 */	addi r1, r1, 0x10
/* 80395264 00390EC4  4E 80 00 20 */	blr 

.global func_80395268
func_80395268:
/* 80395268 00390EC8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039526C 00390ECC  7C 08 02 A6 */	mflr r0
/* 80395270 00390ED0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395274 00390ED4  4B FF FF 51 */	bl func_803951C4
/* 80395278 00390ED8  2C 03 00 00 */	cmpwi r3, 0
/* 8039527C 00390EDC  41 82 00 10 */	beq lbl_8039528C
/* 80395280 00390EE0  88 03 00 2F */	lbz r0, 0x2f(r3)
/* 80395284 00390EE4  54 03 F7 7E */	rlwinm r3, r0, 0x1e, 0x1d, 0x1f
/* 80395288 00390EE8  48 00 00 08 */	b lbl_80395290
lbl_8039528C:
/* 8039528C 00390EEC  38 60 00 00 */	li r3, 0
lbl_80395290:
/* 80395290 00390EF0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395294 00390EF4  7C 08 03 A6 */	mtlr r0
/* 80395298 00390EF8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039529C 00390EFC  4E 80 00 20 */	blr 

.global func_803952A0
func_803952A0:
/* 803952A0 00390F00  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803952A4 00390F04  7C 08 02 A6 */	mflr r0
/* 803952A8 00390F08  90 01 00 14 */	stw r0, 0x14(r1)
/* 803952AC 00390F0C  4B FF FF 19 */	bl func_803951C4
/* 803952B0 00390F10  2C 03 00 00 */	cmpwi r3, 0
/* 803952B4 00390F14  41 82 00 10 */	beq lbl_803952C4
/* 803952B8 00390F18  88 03 00 30 */	lbz r0, 0x30(r3)
/* 803952BC 00390F1C  54 03 DF 7E */	rlwinm r3, r0, 0x1b, 0x1d, 0x1f
/* 803952C0 00390F20  48 00 00 08 */	b lbl_803952C8
lbl_803952C4:
/* 803952C4 00390F24  38 60 00 00 */	li r3, 0
lbl_803952C8:
/* 803952C8 00390F28  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803952CC 00390F2C  7C 08 03 A6 */	mtlr r0
/* 803952D0 00390F30  38 21 00 10 */	addi r1, r1, 0x10
/* 803952D4 00390F34  4E 80 00 20 */	blr 

.global func_803952D8
func_803952D8:
/* 803952D8 00390F38  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803952DC 00390F3C  7C 08 02 A6 */	mflr r0
/* 803952E0 00390F40  90 01 00 14 */	stw r0, 0x14(r1)
/* 803952E4 00390F44  4B FF FE E1 */	bl func_803951C4
/* 803952E8 00390F48  2C 03 00 00 */	cmpwi r3, 0
/* 803952EC 00390F4C  41 82 00 10 */	beq lbl_803952FC
/* 803952F0 00390F50  88 03 00 30 */	lbz r0, 0x30(r3)
/* 803952F4 00390F54  54 03 F7 7E */	rlwinm r3, r0, 0x1e, 0x1d, 0x1f
/* 803952F8 00390F58  48 00 00 08 */	b lbl_80395300
lbl_803952FC:
/* 803952FC 00390F5C  38 60 00 00 */	li r3, 0
lbl_80395300:
/* 80395300 00390F60  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395304 00390F64  7C 08 03 A6 */	mtlr r0
/* 80395308 00390F68  38 21 00 10 */	addi r1, r1, 0x10
/* 8039530C 00390F6C  4E 80 00 20 */	blr 

.global func_80395310
func_80395310:
/* 80395310 00390F70  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395314 00390F74  7C 08 02 A6 */	mflr r0
/* 80395318 00390F78  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039531C 00390F7C  4B FF FE A9 */	bl func_803951C4
/* 80395320 00390F80  2C 03 00 00 */	cmpwi r3, 0
/* 80395324 00390F84  41 82 00 10 */	beq lbl_80395334
/* 80395328 00390F88  88 03 00 31 */	lbz r0, 0x31(r3)
/* 8039532C 00390F8C  54 03 DF 7E */	rlwinm r3, r0, 0x1b, 0x1d, 0x1f
/* 80395330 00390F90  48 00 00 08 */	b lbl_80395338
lbl_80395334:
/* 80395334 00390F94  38 60 00 00 */	li r3, 0
lbl_80395338:
/* 80395338 00390F98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039533C 00390F9C  7C 08 03 A6 */	mtlr r0
/* 80395340 00390FA0  38 21 00 10 */	addi r1, r1, 0x10
/* 80395344 00390FA4  4E 80 00 20 */	blr 

.global func_80395348
func_80395348:
/* 80395348 00390FA8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039534C 00390FAC  7C 08 02 A6 */	mflr r0
/* 80395350 00390FB0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395354 00390FB4  4B FF FE 71 */	bl func_803951C4
/* 80395358 00390FB8  2C 03 00 00 */	cmpwi r3, 0
/* 8039535C 00390FBC  41 82 00 10 */	beq lbl_8039536C
/* 80395360 00390FC0  88 03 00 31 */	lbz r0, 0x31(r3)
/* 80395364 00390FC4  54 03 E7 FE */	rlwinm r3, r0, 0x1c, 0x1f, 0x1f
/* 80395368 00390FC8  48 00 00 08 */	b lbl_80395370
lbl_8039536C:
/* 8039536C 00390FCC  38 60 00 00 */	li r3, 0
lbl_80395370:
/* 80395370 00390FD0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395374 00390FD4  7C 08 03 A6 */	mtlr r0
/* 80395378 00390FD8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039537C 00390FDC  4E 80 00 20 */	blr 

.global func_80395380
func_80395380:
/* 80395380 00390FE0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395384 00390FE4  7C 08 02 A6 */	mflr r0
/* 80395388 00390FE8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039538C 00390FEC  4B FF FE 39 */	bl func_803951C4
/* 80395390 00390FF0  2C 03 00 00 */	cmpwi r3, 0
/* 80395394 00390FF4  41 82 00 10 */	beq lbl_803953A4
/* 80395398 00390FF8  88 03 00 31 */	lbz r0, 0x31(r3)
/* 8039539C 00390FFC  54 03 EF FE */	rlwinm r3, r0, 0x1d, 0x1f, 0x1f
/* 803953A0 00391000  48 00 00 08 */	b lbl_803953A8
lbl_803953A4:
/* 803953A4 00391004  38 60 00 00 */	li r3, 0
lbl_803953A8:
/* 803953A8 00391008  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803953AC 0039100C  7C 08 03 A6 */	mtlr r0
/* 803953B0 00391010  38 21 00 10 */	addi r1, r1, 0x10
/* 803953B4 00391014  4E 80 00 20 */	blr 

.global func_803953B8
func_803953B8:
/* 803953B8 00391018  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803953BC 0039101C  7C 08 02 A6 */	mflr r0
/* 803953C0 00391020  90 01 00 14 */	stw r0, 0x14(r1)
/* 803953C4 00391024  4B FF FE 01 */	bl func_803951C4
/* 803953C8 00391028  2C 03 00 00 */	cmpwi r3, 0
/* 803953CC 0039102C  41 82 00 10 */	beq lbl_803953DC
/* 803953D0 00391030  88 03 00 32 */	lbz r0, 0x32(r3)
/* 803953D4 00391034  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 803953D8 00391038  48 00 00 08 */	b lbl_803953E0
lbl_803953DC:
/* 803953DC 0039103C  38 60 00 00 */	li r3, 0
lbl_803953E0:
/* 803953E0 00391040  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803953E4 00391044  7C 08 03 A6 */	mtlr r0
/* 803953E8 00391048  38 21 00 10 */	addi r1, r1, 0x10
/* 803953EC 0039104C  4E 80 00 20 */	blr 

.global func_803953F0
func_803953F0:
/* 803953F0 00391050  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803953F4 00391054  7C 08 02 A6 */	mflr r0
/* 803953F8 00391058  90 01 00 14 */	stw r0, 0x14(r1)
/* 803953FC 0039105C  4B FF FD C9 */	bl func_803951C4
/* 80395400 00391060  2C 03 00 00 */	cmpwi r3, 0
/* 80395404 00391064  41 82 00 10 */	beq lbl_80395414
/* 80395408 00391068  88 03 00 32 */	lbz r0, 0x32(r3)
/* 8039540C 0039106C  54 03 F7 FE */	rlwinm r3, r0, 0x1e, 0x1f, 0x1f
/* 80395410 00391070  48 00 00 08 */	b lbl_80395418
lbl_80395414:
/* 80395414 00391074  38 60 00 00 */	li r3, 0
lbl_80395418:
/* 80395418 00391078  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039541C 0039107C  7C 08 03 A6 */	mtlr r0
/* 80395420 00391080  38 21 00 10 */	addi r1, r1, 0x10
/* 80395424 00391084  4E 80 00 20 */	blr 

.global func_80395428
func_80395428:
/* 80395428 00391088  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039542C 0039108C  7C 08 02 A6 */	mflr r0
/* 80395430 00391090  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395434 00391094  4B FF FD 91 */	bl func_803951C4
/* 80395438 00391098  2C 03 00 00 */	cmpwi r3, 0
/* 8039543C 0039109C  41 82 00 0C */	beq lbl_80395448
/* 80395440 003910A0  80 63 00 00 */	lwz r3, 0(r3)
/* 80395444 003910A4  48 00 00 08 */	b lbl_8039544C
lbl_80395448:
/* 80395448 003910A8  38 60 00 00 */	li r3, 0
lbl_8039544C:
/* 8039544C 003910AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395450 003910B0  7C 08 03 A6 */	mtlr r0
/* 80395454 003910B4  38 21 00 10 */	addi r1, r1, 0x10
/* 80395458 003910B8  4E 80 00 20 */	blr 

.global func_8039545C
func_8039545C:
/* 8039545C 003910BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395460 003910C0  7C 08 02 A6 */	mflr r0
/* 80395464 003910C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395468 003910C8  4B FF FD 5D */	bl func_803951C4
/* 8039546C 003910CC  2C 03 00 00 */	cmpwi r3, 0
/* 80395470 003910D0  41 82 00 0C */	beq lbl_8039547C
/* 80395474 003910D4  80 63 00 04 */	lwz r3, 4(r3)
/* 80395478 003910D8  48 00 00 08 */	b lbl_80395480
lbl_8039547C:
/* 8039547C 003910DC  38 60 00 00 */	li r3, 0
lbl_80395480:
/* 80395480 003910E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395484 003910E4  7C 08 03 A6 */	mtlr r0
/* 80395488 003910E8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039548C 003910EC  4E 80 00 20 */	blr 

.global func_80395490
func_80395490:
/* 80395490 003910F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395494 003910F4  7C 08 02 A6 */	mflr r0
/* 80395498 003910F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039549C 003910FC  4B FF FD 29 */	bl func_803951C4
/* 803954A0 00391100  2C 03 00 00 */	cmpwi r3, 0
/* 803954A4 00391104  41 82 00 10 */	beq lbl_803954B4
/* 803954A8 00391108  88 03 00 33 */	lbz r0, 0x33(r3)
/* 803954AC 0039110C  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 803954B0 00391110  48 00 00 08 */	b lbl_803954B8
lbl_803954B4:
/* 803954B4 00391114  38 60 00 00 */	li r3, 0
lbl_803954B8:
/* 803954B8 00391118  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803954BC 0039111C  7C 08 03 A6 */	mtlr r0
/* 803954C0 00391120  38 21 00 10 */	addi r1, r1, 0x10
/* 803954C4 00391124  4E 80 00 20 */	blr 

.global func_803954C8
func_803954C8:
/* 803954C8 00391128  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803954CC 0039112C  7C 08 02 A6 */	mflr r0
/* 803954D0 00391130  90 01 00 14 */	stw r0, 0x14(r1)
/* 803954D4 00391134  4B FF FC F1 */	bl func_803951C4
/* 803954D8 00391138  2C 03 00 00 */	cmpwi r3, 0
/* 803954DC 0039113C  41 82 00 0C */	beq lbl_803954E8
/* 803954E0 00391140  80 63 00 08 */	lwz r3, 8(r3)
/* 803954E4 00391144  48 00 00 08 */	b lbl_803954EC
lbl_803954E8:
/* 803954E8 00391148  38 60 00 00 */	li r3, 0
lbl_803954EC:
/* 803954EC 0039114C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803954F0 00391150  7C 08 03 A6 */	mtlr r0
/* 803954F4 00391154  38 21 00 10 */	addi r1, r1, 0x10
/* 803954F8 00391158  4E 80 00 20 */	blr 

.global func_803954FC
func_803954FC:
/* 803954FC 0039115C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395500 00391160  7C 08 02 A6 */	mflr r0
/* 80395504 00391164  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395508 00391168  4B FF FC BD */	bl func_803951C4
/* 8039550C 0039116C  2C 03 00 00 */	cmpwi r3, 0
/* 80395510 00391170  41 82 00 0C */	beq lbl_8039551C
/* 80395514 00391174  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80395518 00391178  48 00 00 08 */	b lbl_80395520
lbl_8039551C:
/* 8039551C 0039117C  38 60 00 00 */	li r3, 0
lbl_80395520:
/* 80395520 00391180  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395524 00391184  7C 08 03 A6 */	mtlr r0
/* 80395528 00391188  38 21 00 10 */	addi r1, r1, 0x10
/* 8039552C 0039118C  4E 80 00 20 */	blr 

.global func_80395530
func_80395530:
/* 80395530 00391190  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395534 00391194  7C 08 02 A6 */	mflr r0
/* 80395538 00391198  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039553C 0039119C  4B FF FC 89 */	bl func_803951C4
/* 80395540 003911A0  2C 03 00 00 */	cmpwi r3, 0
/* 80395544 003911A4  41 82 00 10 */	beq lbl_80395554
/* 80395548 003911A8  88 03 00 34 */	lbz r0, 0x34(r3)
/* 8039554C 003911AC  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 80395550 003911B0  48 00 00 08 */	b lbl_80395558
lbl_80395554:
/* 80395554 003911B4  38 60 00 00 */	li r3, 0
lbl_80395558:
/* 80395558 003911B8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039555C 003911BC  7C 08 03 A6 */	mtlr r0
/* 80395560 003911C0  38 21 00 10 */	addi r1, r1, 0x10
/* 80395564 003911C4  4E 80 00 20 */	blr 

.global func_80395568
func_80395568:
/* 80395568 003911C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039556C 003911CC  7C 08 02 A6 */	mflr r0
/* 80395570 003911D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395574 003911D4  4B FF FC 51 */	bl func_803951C4
/* 80395578 003911D8  2C 03 00 00 */	cmpwi r3, 0
/* 8039557C 003911DC  41 82 00 0C */	beq lbl_80395588
/* 80395580 003911E0  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80395584 003911E4  48 00 00 08 */	b lbl_8039558C
lbl_80395588:
/* 80395588 003911E8  38 60 00 00 */	li r3, 0
lbl_8039558C:
/* 8039558C 003911EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395590 003911F0  7C 08 03 A6 */	mtlr r0
/* 80395594 003911F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80395598 003911F8  4E 80 00 20 */	blr 

.global func_8039559C
func_8039559C:
/* 8039559C 003911FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803955A0 00391200  7C 08 02 A6 */	mflr r0
/* 803955A4 00391204  90 01 00 14 */	stw r0, 0x14(r1)
/* 803955A8 00391208  4B FF FC 1D */	bl func_803951C4
/* 803955AC 0039120C  2C 03 00 00 */	cmpwi r3, 0
/* 803955B0 00391210  41 82 00 0C */	beq lbl_803955BC
/* 803955B4 00391214  80 63 00 14 */	lwz r3, 0x14(r3)
/* 803955B8 00391218  48 00 00 08 */	b lbl_803955C0
lbl_803955BC:
/* 803955BC 0039121C  38 60 00 00 */	li r3, 0
lbl_803955C0:
/* 803955C0 00391220  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803955C4 00391224  7C 08 03 A6 */	mtlr r0
/* 803955C8 00391228  38 21 00 10 */	addi r1, r1, 0x10
/* 803955CC 0039122C  4E 80 00 20 */	blr 

.global func_803955D0
func_803955D0:
/* 803955D0 00391230  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803955D4 00391234  7C 08 02 A6 */	mflr r0
/* 803955D8 00391238  90 01 00 14 */	stw r0, 0x14(r1)
/* 803955DC 0039123C  4B FF FB E9 */	bl func_803951C4
/* 803955E0 00391240  2C 03 00 00 */	cmpwi r3, 0
/* 803955E4 00391244  41 82 00 10 */	beq lbl_803955F4
/* 803955E8 00391248  88 03 00 35 */	lbz r0, 0x35(r3)
/* 803955EC 0039124C  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 803955F0 00391250  48 00 00 08 */	b lbl_803955F8
lbl_803955F4:
/* 803955F4 00391254  38 60 00 00 */	li r3, 0
lbl_803955F8:
/* 803955F8 00391258  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803955FC 0039125C  7C 08 03 A6 */	mtlr r0
/* 80395600 00391260  38 21 00 10 */	addi r1, r1, 0x10
/* 80395604 00391264  4E 80 00 20 */	blr 

.global func_80395608
func_80395608:
/* 80395608 00391268  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039560C 0039126C  7C 08 02 A6 */	mflr r0
/* 80395610 00391270  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395614 00391274  4B FF FB B1 */	bl func_803951C4
/* 80395618 00391278  2C 03 00 00 */	cmpwi r3, 0
/* 8039561C 0039127C  41 82 00 0C */	beq lbl_80395628
/* 80395620 00391280  80 63 00 18 */	lwz r3, 0x18(r3)
/* 80395624 00391284  48 00 00 08 */	b lbl_8039562C
lbl_80395628:
/* 80395628 00391288  38 60 00 00 */	li r3, 0
lbl_8039562C:
/* 8039562C 0039128C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395630 00391290  7C 08 03 A6 */	mtlr r0
/* 80395634 00391294  38 21 00 10 */	addi r1, r1, 0x10
/* 80395638 00391298  4E 80 00 20 */	blr 

.global func_8039563C
func_8039563C:
/* 8039563C 0039129C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395640 003912A0  7C 08 02 A6 */	mflr r0
/* 80395644 003912A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395648 003912A8  4B FF FB 7D */	bl func_803951C4
/* 8039564C 003912AC  2C 03 00 00 */	cmpwi r3, 0
/* 80395650 003912B0  41 82 00 0C */	beq lbl_8039565C
/* 80395654 003912B4  80 63 00 1C */	lwz r3, 0x1c(r3)
/* 80395658 003912B8  48 00 00 08 */	b lbl_80395660
lbl_8039565C:
/* 8039565C 003912BC  38 60 00 00 */	li r3, 0
lbl_80395660:
/* 80395660 003912C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395664 003912C4  7C 08 03 A6 */	mtlr r0
/* 80395668 003912C8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039566C 003912CC  4E 80 00 20 */	blr 

.global func_80395670
func_80395670:
/* 80395670 003912D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395674 003912D4  7C 08 02 A6 */	mflr r0
/* 80395678 003912D8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039567C 003912DC  4B FF FB 49 */	bl func_803951C4
/* 80395680 003912E0  2C 03 00 00 */	cmpwi r3, 0
/* 80395684 003912E4  41 82 00 10 */	beq lbl_80395694
/* 80395688 003912E8  88 03 00 36 */	lbz r0, 0x36(r3)
/* 8039568C 003912EC  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 80395690 003912F0  48 00 00 08 */	b lbl_80395698
lbl_80395694:
/* 80395694 003912F4  38 60 00 00 */	li r3, 0
lbl_80395698:
/* 80395698 003912F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039569C 003912FC  7C 08 03 A6 */	mtlr r0
/* 803956A0 00391300  38 21 00 10 */	addi r1, r1, 0x10
/* 803956A4 00391304  4E 80 00 20 */	blr 

.global func_803956A8
func_803956A8:
/* 803956A8 00391308  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803956AC 0039130C  7C 08 02 A6 */	mflr r0
/* 803956B0 00391310  90 01 00 14 */	stw r0, 0x14(r1)
/* 803956B4 00391314  4B FF FB 11 */	bl func_803951C4
/* 803956B8 00391318  2C 03 00 00 */	cmpwi r3, 0
/* 803956BC 0039131C  41 82 00 0C */	beq lbl_803956C8
/* 803956C0 00391320  80 63 00 20 */	lwz r3, 0x20(r3)
/* 803956C4 00391324  48 00 00 08 */	b lbl_803956CC
lbl_803956C8:
/* 803956C8 00391328  38 60 00 00 */	li r3, 0
lbl_803956CC:
/* 803956CC 0039132C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803956D0 00391330  7C 08 03 A6 */	mtlr r0
/* 803956D4 00391334  38 21 00 10 */	addi r1, r1, 0x10
/* 803956D8 00391338  4E 80 00 20 */	blr 

.global func_803956DC
func_803956DC:
/* 803956DC 0039133C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803956E0 00391340  7C 08 02 A6 */	mflr r0
/* 803956E4 00391344  90 01 00 14 */	stw r0, 0x14(r1)
/* 803956E8 00391348  4B FF FA DD */	bl func_803951C4
/* 803956EC 0039134C  2C 03 00 00 */	cmpwi r3, 0
/* 803956F0 00391350  41 82 00 0C */	beq lbl_803956FC
/* 803956F4 00391354  80 63 00 24 */	lwz r3, 0x24(r3)
/* 803956F8 00391358  48 00 00 08 */	b lbl_80395700
lbl_803956FC:
/* 803956FC 0039135C  38 60 00 00 */	li r3, 0
lbl_80395700:
/* 80395700 00391360  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395704 00391364  7C 08 03 A6 */	mtlr r0
/* 80395708 00391368  38 21 00 10 */	addi r1, r1, 0x10
/* 8039570C 0039136C  4E 80 00 20 */	blr 

.global func_80395710
func_80395710:
/* 80395710 00391370  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395714 00391374  7C 08 02 A6 */	mflr r0
/* 80395718 00391378  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039571C 0039137C  4B FF FA A9 */	bl func_803951C4
/* 80395720 00391380  2C 03 00 00 */	cmpwi r3, 0
/* 80395724 00391384  41 82 00 10 */	beq lbl_80395734
/* 80395728 00391388  88 03 00 37 */	lbz r0, 0x37(r3)
/* 8039572C 0039138C  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 80395730 00391390  48 00 00 08 */	b lbl_80395738
lbl_80395734:
/* 80395734 00391394  38 60 00 00 */	li r3, 0
lbl_80395738:
/* 80395738 00391398  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039573C 0039139C  7C 08 03 A6 */	mtlr r0
/* 80395740 003913A0  38 21 00 10 */	addi r1, r1, 0x10
/* 80395744 003913A4  4E 80 00 20 */	blr 

.global func_80395748
func_80395748:
/* 80395748 003913A8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039574C 003913AC  7C 08 02 A6 */	mflr r0
/* 80395750 003913B0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395754 003913B4  4B FF FA 71 */	bl func_803951C4
/* 80395758 003913B8  2C 03 00 00 */	cmpwi r3, 0
/* 8039575C 003913BC  41 82 00 10 */	beq lbl_8039576C
/* 80395760 003913C0  88 03 00 38 */	lbz r0, 0x38(r3)
/* 80395764 003913C4  54 03 EE FE */	rlwinm r3, r0, 0x1d, 0x1b, 0x1f
/* 80395768 003913C8  48 00 00 08 */	b lbl_80395770
lbl_8039576C:
/* 8039576C 003913CC  38 60 00 00 */	li r3, 0
lbl_80395770:
/* 80395770 003913D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395774 003913D4  7C 08 03 A6 */	mtlr r0
/* 80395778 003913D8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039577C 003913DC  4E 80 00 20 */	blr 

.global func_80395780
func_80395780:
/* 80395780 003913E0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395784 003913E4  7C 08 02 A6 */	mflr r0
/* 80395788 003913E8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039578C 003913EC  4B FF FA 39 */	bl func_803951C4
/* 80395790 003913F0  2C 03 00 00 */	cmpwi r3, 0
/* 80395794 003913F4  41 82 00 0C */	beq lbl_803957A0
/* 80395798 003913F8  A0 63 00 28 */	lhz r3, 0x28(r3)
/* 8039579C 003913FC  48 00 00 08 */	b lbl_803957A4
lbl_803957A0:
/* 803957A0 00391400  38 60 00 00 */	li r3, 0
lbl_803957A4:
/* 803957A4 00391404  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803957A8 00391408  7C 08 03 A6 */	mtlr r0
/* 803957AC 0039140C  38 21 00 10 */	addi r1, r1, 0x10
/* 803957B0 00391410  4E 80 00 20 */	blr 

.global func_803957B4
func_803957B4:
/* 803957B4 00391414  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803957B8 00391418  7C 08 02 A6 */	mflr r0
/* 803957BC 0039141C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803957C0 00391420  4B FF FA 05 */	bl func_803951C4
/* 803957C4 00391424  2C 03 00 00 */	cmpwi r3, 0
/* 803957C8 00391428  41 82 00 0C */	beq lbl_803957D4
/* 803957CC 0039142C  A0 63 00 2A */	lhz r3, 0x2a(r3)
/* 803957D0 00391430  48 00 00 08 */	b lbl_803957D8
lbl_803957D4:
/* 803957D4 00391434  38 60 00 00 */	li r3, 0
lbl_803957D8:
/* 803957D8 00391438  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803957DC 0039143C  7C 08 03 A6 */	mtlr r0
/* 803957E0 00391440  38 21 00 10 */	addi r1, r1, 0x10
/* 803957E4 00391444  4E 80 00 20 */	blr 

.global func_803957E8
func_803957E8:
/* 803957E8 00391448  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803957EC 0039144C  7C 08 02 A6 */	mflr r0
/* 803957F0 00391450  90 01 00 14 */	stw r0, 0x14(r1)
/* 803957F4 00391454  4B FF F9 D1 */	bl func_803951C4
/* 803957F8 00391458  2C 03 00 00 */	cmpwi r3, 0
/* 803957FC 0039145C  41 82 00 0C */	beq lbl_80395808
/* 80395800 00391460  A0 63 00 2C */	lhz r3, 0x2c(r3)
/* 80395804 00391464  48 00 00 08 */	b lbl_8039580C
lbl_80395808:
/* 80395808 00391468  38 60 00 00 */	li r3, 0
lbl_8039580C:
/* 8039580C 0039146C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395810 00391470  7C 08 03 A6 */	mtlr r0
/* 80395814 00391474  38 21 00 10 */	addi r1, r1, 0x10
/* 80395818 00391478  4E 80 00 20 */	blr 

.global func_8039581C
func_8039581C:
/* 8039581C 0039147C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395820 00391480  7C 08 02 A6 */	mflr r0
/* 80395824 00391484  2C 04 00 00 */	cmpwi r4, 0
/* 80395828 00391488  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039582C 0039148C  38 00 00 00 */	li r0, 0
/* 80395830 00391490  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395834 00391494  7C 7F 1B 78 */	mr r31, r3
/* 80395838 00391498  90 03 00 00 */	stw r0, 0(r3)
/* 8039583C 0039149C  41 82 00 08 */	beq lbl_80395844
/* 80395840 003914A0  48 00 00 7D */	bl func_803958BC
lbl_80395844:
/* 80395844 003914A4  7F E3 FB 78 */	mr r3, r31
/* 80395848 003914A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039584C 003914AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395850 003914B0  7C 08 03 A6 */	mtlr r0
/* 80395854 003914B4  38 21 00 10 */	addi r1, r1, 0x10
/* 80395858 003914B8  4E 80 00 20 */	blr 

.global func_8039585C
func_8039585C:
/* 8039585C 003914BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395860 003914C0  7C 08 02 A6 */	mflr r0
/* 80395864 003914C4  2C 03 00 00 */	cmpwi r3, 0
/* 80395868 003914C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039586C 003914CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395870 003914D0  7C 9F 23 78 */	mr r31, r4
/* 80395874 003914D4  93 C1 00 08 */	stw r30, 8(r1)
/* 80395878 003914D8  7C 7E 1B 78 */	mr r30, r3
/* 8039587C 003914DC  41 82 00 24 */	beq lbl_803958A0
/* 80395880 003914E0  80 03 00 00 */	lwz r0, 0(r3)
/* 80395884 003914E4  2C 00 00 00 */	cmpwi r0, 0
/* 80395888 003914E8  41 82 00 08 */	beq lbl_80395890
/* 8039588C 003914EC  48 00 01 95 */	bl func_80395A20
lbl_80395890:
/* 80395890 003914F0  2C 1F 00 00 */	cmpwi r31, 0
/* 80395894 003914F4  40 81 00 0C */	ble lbl_803958A0
/* 80395898 003914F8  7F C3 F3 78 */	mr r3, r30
/* 8039589C 003914FC  4B E4 52 1D */	bl __dl__FPv
lbl_803958A0:
/* 803958A0 00391500  7F C3 F3 78 */	mr r3, r30
/* 803958A4 00391504  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803958A8 00391508  83 C1 00 08 */	lwz r30, 8(r1)
/* 803958AC 0039150C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803958B0 00391510  7C 08 03 A6 */	mtlr r0
/* 803958B4 00391514  38 21 00 10 */	addi r1, r1, 0x10
/* 803958B8 00391518  4E 80 00 20 */	blr 

.global func_803958BC
func_803958BC:
/* 803958BC 0039151C  2C 04 00 00 */	cmpwi r4, 0
/* 803958C0 00391520  40 82 00 0C */	bne lbl_803958CC
/* 803958C4 00391524  38 60 FF FF */	li r3, -1
/* 803958C8 00391528  4E 80 00 20 */	blr 
lbl_803958CC:
/* 803958CC 0039152C  80 03 00 00 */	lwz r0, 0(r3)
/* 803958D0 00391530  2C 00 00 00 */	cmpwi r0, 0
/* 803958D4 00391534  41 82 00 0C */	beq lbl_803958E0
/* 803958D8 00391538  38 60 FF FE */	li r3, -2
/* 803958DC 0039153C  4E 80 00 20 */	blr 
lbl_803958E0:
/* 803958E0 00391540  80 04 00 04 */	lwz r0, 4(r4)
/* 803958E4 00391544  28 00 00 06 */	cmplwi r0, 6
/* 803958E8 00391548  41 82 00 0C */	beq lbl_803958F4
/* 803958EC 0039154C  38 60 FF FD */	li r3, -3
/* 803958F0 00391550  4E 80 00 20 */	blr 
lbl_803958F4:
/* 803958F4 00391554  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 803958F8 00391558  2C 00 00 00 */	cmpwi r0, 0
/* 803958FC 0039155C  40 82 01 0C */	bne lbl_80395A08
/* 80395900 00391560  80 04 00 08 */	lwz r0, 8(r4)
/* 80395904 00391564  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80395908 00391568  7C E0 22 14 */	add r7, r0, r4
/* 8039590C 0039156C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80395910 00391570  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80395914 00391574  7C C6 22 14 */	add r6, r6, r4
/* 80395918 00391578  7C A5 22 14 */	add r5, r5, r4
/* 8039591C 0039157C  90 E4 00 08 */	stw r7, 8(r4)
/* 80395920 00391580  2C 00 00 00 */	cmpwi r0, 0
/* 80395924 00391584  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80395928 00391588  90 C4 00 10 */	stw r6, 0x10(r4)
/* 8039592C 0039158C  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80395930 00391590  41 82 00 0C */	beq lbl_8039593C
/* 80395934 00391594  7C 00 22 14 */	add r0, r0, r4
/* 80395938 00391598  90 04 00 20 */	stw r0, 0x20(r4)
lbl_8039593C:
/* 8039593C 0039159C  2C 07 00 00 */	cmpwi r7, 0
/* 80395940 003915A0  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80395944 003915A4  41 82 00 BC */	beq lbl_80395A00
/* 80395948 003915A8  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 8039594C 003915AC  7C 09 03 A6 */	mtctr r0
/* 80395950 003915B0  41 82 00 94 */	beq lbl_803959E4
lbl_80395954:
/* 80395954 003915B4  80 C5 00 00 */	lwz r6, 0(r5)
/* 80395958 003915B8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039595C 003915BC  7C 00 22 14 */	add r0, r0, r4
/* 80395960 003915C0  7C 06 21 2E */	stwx r0, r6, r4
/* 80395964 003915C4  80 C5 00 04 */	lwz r6, 4(r5)
/* 80395968 003915C8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039596C 003915CC  7C 00 22 14 */	add r0, r0, r4
/* 80395970 003915D0  7C 06 21 2E */	stwx r0, r6, r4
/* 80395974 003915D4  80 C5 00 08 */	lwz r6, 8(r5)
/* 80395978 003915D8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039597C 003915DC  7C 00 22 14 */	add r0, r0, r4
/* 80395980 003915E0  7C 06 21 2E */	stwx r0, r6, r4
/* 80395984 003915E4  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80395988 003915E8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039598C 003915EC  7C 00 22 14 */	add r0, r0, r4
/* 80395990 003915F0  7C 06 21 2E */	stwx r0, r6, r4
/* 80395994 003915F4  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80395998 003915F8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039599C 003915FC  7C 00 22 14 */	add r0, r0, r4
/* 803959A0 00391600  7C 06 21 2E */	stwx r0, r6, r4
/* 803959A4 00391604  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803959A8 00391608  7C 06 20 2E */	lwzx r0, r6, r4
/* 803959AC 0039160C  7C 00 22 14 */	add r0, r0, r4
/* 803959B0 00391610  7C 06 21 2E */	stwx r0, r6, r4
/* 803959B4 00391614  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803959B8 00391618  7C 06 20 2E */	lwzx r0, r6, r4
/* 803959BC 0039161C  7C 00 22 14 */	add r0, r0, r4
/* 803959C0 00391620  7C 06 21 2E */	stwx r0, r6, r4
/* 803959C4 00391624  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803959C8 00391628  38 A5 00 20 */	addi r5, r5, 0x20
/* 803959CC 0039162C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803959D0 00391630  7C 00 22 14 */	add r0, r0, r4
/* 803959D4 00391634  7C 06 21 2E */	stwx r0, r6, r4
/* 803959D8 00391638  42 00 FF 7C */	bdnz lbl_80395954
/* 803959DC 0039163C  70 E7 00 07 */	andi. r7, r7, 7
/* 803959E0 00391640  41 82 00 20 */	beq lbl_80395A00
lbl_803959E4:
/* 803959E4 00391644  7C E9 03 A6 */	mtctr r7
lbl_803959E8:
/* 803959E8 00391648  80 C5 00 00 */	lwz r6, 0(r5)
/* 803959EC 0039164C  38 A5 00 04 */	addi r5, r5, 4
/* 803959F0 00391650  7C 06 20 2E */	lwzx r0, r6, r4
/* 803959F4 00391654  7C 00 22 14 */	add r0, r0, r4
/* 803959F8 00391658  7C 06 21 2E */	stwx r0, r6, r4
/* 803959FC 0039165C  42 00 FF EC */	bdnz lbl_803959E8
lbl_80395A00:
/* 80395A00 00391660  38 00 00 01 */	li r0, 1
/* 80395A04 00391664  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80395A08:
/* 80395A08 00391668  90 83 00 00 */	stw r4, 0(r3)
/* 80395A0C 0039166C  38 60 00 00 */	li r3, 0
/* 80395A10 00391670  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80395A14 00391674  38 05 00 01 */	addi r0, r5, 1
/* 80395A18 00391678  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80395A1C 0039167C  4E 80 00 20 */	blr 

.global func_80395A20
func_80395A20:
/* 80395A20 00391680  80 83 00 00 */	lwz r4, 0(r3)
/* 80395A24 00391684  38 A0 00 00 */	li r5, 0
/* 80395A28 00391688  2C 04 00 00 */	cmpwi r4, 0
/* 80395A2C 0039168C  41 82 00 20 */	beq lbl_80395A4C
/* 80395A30 00391690  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80395A34 00391694  2C 05 00 00 */	cmpwi r5, 0
/* 80395A38 00391698  41 82 00 0C */	beq lbl_80395A44
/* 80395A3C 0039169C  38 A5 FF FF */	addi r5, r5, -1
/* 80395A40 003916A0  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80395A44:
/* 80395A44 003916A4  38 00 00 00 */	li r0, 0
/* 80395A48 003916A8  90 03 00 00 */	stw r0, 0(r3)
lbl_80395A4C:
/* 80395A4C 003916AC  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80395A50 003916B0  4E 80 00 20 */	blr 

.global func_80395A54
func_80395A54:
/* 80395A54 003916B4  80 63 00 00 */	lwz r3, 0(r3)
/* 80395A58 003916B8  2C 03 00 00 */	cmpwi r3, 0
/* 80395A5C 003916BC  40 82 00 0C */	bne lbl_80395A68
/* 80395A60 003916C0  38 60 00 00 */	li r3, 0
/* 80395A64 003916C4  4E 80 00 20 */	blr 
lbl_80395A68:
/* 80395A68 003916C8  2C 04 00 00 */	cmpwi r4, 0
/* 80395A6C 003916CC  40 80 00 0C */	bge lbl_80395A78
/* 80395A70 003916D0  38 60 00 00 */	li r3, 0
/* 80395A74 003916D4  4E 80 00 20 */	blr 
lbl_80395A78:
/* 80395A78 003916D8  1C 04 00 06 */	mulli r0, r4, 6
/* 80395A7C 003916DC  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80395A80 003916E0  7C 63 02 14 */	add r3, r3, r0
/* 80395A84 003916E4  4E 80 00 20 */	blr 

.global func_80395A88
func_80395A88:
/* 80395A88 003916E8  80 63 00 00 */	lwz r3, 0(r3)
/* 80395A8C 003916EC  2C 03 00 00 */	cmpwi r3, 0
/* 80395A90 003916F0  41 82 00 0C */	beq lbl_80395A9C
/* 80395A94 003916F4  80 63 00 00 */	lwz r3, 0(r3)
/* 80395A98 003916F8  4E 80 00 20 */	blr 
lbl_80395A9C:
/* 80395A9C 003916FC  38 60 00 00 */	li r3, 0
/* 80395AA0 00391700  4E 80 00 20 */	blr 

.global func_80395AA4
func_80395AA4:
/* 80395AA4 00391704  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395AA8 00391708  7C 08 02 A6 */	mflr r0
/* 80395AAC 0039170C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395AB0 00391710  4B FF FF A5 */	bl func_80395A54
/* 80395AB4 00391714  2C 03 00 00 */	cmpwi r3, 0
/* 80395AB8 00391718  41 82 00 0C */	beq lbl_80395AC4
/* 80395ABC 0039171C  A0 63 00 00 */	lhz r3, 0(r3)
/* 80395AC0 00391720  48 00 00 08 */	b lbl_80395AC8
lbl_80395AC4:
/* 80395AC4 00391724  38 60 00 00 */	li r3, 0
lbl_80395AC8:
/* 80395AC8 00391728  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395ACC 0039172C  7C 08 03 A6 */	mtlr r0
/* 80395AD0 00391730  38 21 00 10 */	addi r1, r1, 0x10
/* 80395AD4 00391734  4E 80 00 20 */	blr 

.global func_80395AD8
func_80395AD8:
/* 80395AD8 00391738  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395ADC 0039173C  7C 08 02 A6 */	mflr r0
/* 80395AE0 00391740  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395AE4 00391744  4B FF FF 71 */	bl func_80395A54
/* 80395AE8 00391748  2C 03 00 00 */	cmpwi r3, 0
/* 80395AEC 0039174C  41 82 00 0C */	beq lbl_80395AF8
/* 80395AF0 00391750  A0 63 00 02 */	lhz r3, 2(r3)
/* 80395AF4 00391754  48 00 00 08 */	b lbl_80395AFC
lbl_80395AF8:
/* 80395AF8 00391758  38 60 00 00 */	li r3, 0
lbl_80395AFC:
/* 80395AFC 0039175C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395B00 00391760  7C 08 03 A6 */	mtlr r0
/* 80395B04 00391764  38 21 00 10 */	addi r1, r1, 0x10
/* 80395B08 00391768  4E 80 00 20 */	blr 

.global func_80395B0C
func_80395B0C:
/* 80395B0C 0039176C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395B10 00391770  7C 08 02 A6 */	mflr r0
/* 80395B14 00391774  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395B18 00391778  4B FF FF 3D */	bl func_80395A54
/* 80395B1C 0039177C  2C 03 00 00 */	cmpwi r3, 0
/* 80395B20 00391780  41 82 00 0C */	beq lbl_80395B2C
/* 80395B24 00391784  A0 63 00 04 */	lhz r3, 4(r3)
/* 80395B28 00391788  48 00 00 08 */	b lbl_80395B30
lbl_80395B2C:
/* 80395B2C 0039178C  38 60 00 00 */	li r3, 0
lbl_80395B30:
/* 80395B30 00391790  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395B34 00391794  7C 08 03 A6 */	mtlr r0
/* 80395B38 00391798  38 21 00 10 */	addi r1, r1, 0x10
/* 80395B3C 0039179C  4E 80 00 20 */	blr 

.global func_80395B40
func_80395B40:
/* 80395B40 003917A0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395B44 003917A4  7C 08 02 A6 */	mflr r0
/* 80395B48 003917A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395B4C 003917AC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395B50 003917B0  7C BF 2B 78 */	mr r31, r5
/* 80395B54 003917B4  4B FF FF 01 */	bl func_80395A54
/* 80395B58 003917B8  2C 03 00 00 */	cmpwi r3, 0
/* 80395B5C 003917BC  41 82 00 08 */	beq lbl_80395B64
/* 80395B60 003917C0  B3 E3 00 04 */	sth r31, 4(r3)
lbl_80395B64:
/* 80395B64 003917C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395B68 003917C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80395B6C 003917CC  7C 08 03 A6 */	mtlr r0
/* 80395B70 003917D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80395B74 003917D4  4E 80 00 20 */	blr 

.global func_80395B78
func_80395B78:
/* 80395B78 003917D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395B7C 003917DC  7C 08 02 A6 */	mflr r0
/* 80395B80 003917E0  2C 04 00 00 */	cmpwi r4, 0
/* 80395B84 003917E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395B88 003917E8  38 00 00 00 */	li r0, 0
/* 80395B8C 003917EC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395B90 003917F0  7C 7F 1B 78 */	mr r31, r3
/* 80395B94 003917F4  90 03 00 00 */	stw r0, 0(r3)
/* 80395B98 003917F8  41 82 00 08 */	beq lbl_80395BA0
/* 80395B9C 003917FC  48 00 00 7D */	bl func_80395C18
lbl_80395BA0:
/* 80395BA0 00391800  7F E3 FB 78 */	mr r3, r31
/* 80395BA4 00391804  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80395BA8 00391808  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395BAC 0039180C  7C 08 03 A6 */	mtlr r0
/* 80395BB0 00391810  38 21 00 10 */	addi r1, r1, 0x10
/* 80395BB4 00391814  4E 80 00 20 */	blr 

.global func_80395BB8
func_80395BB8:
/* 80395BB8 00391818  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395BBC 0039181C  7C 08 02 A6 */	mflr r0
/* 80395BC0 00391820  2C 03 00 00 */	cmpwi r3, 0
/* 80395BC4 00391824  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395BC8 00391828  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395BCC 0039182C  7C 9F 23 78 */	mr r31, r4
/* 80395BD0 00391830  93 C1 00 08 */	stw r30, 8(r1)
/* 80395BD4 00391834  7C 7E 1B 78 */	mr r30, r3
/* 80395BD8 00391838  41 82 00 24 */	beq lbl_80395BFC
/* 80395BDC 0039183C  80 03 00 00 */	lwz r0, 0(r3)
/* 80395BE0 00391840  2C 00 00 00 */	cmpwi r0, 0
/* 80395BE4 00391844  41 82 00 08 */	beq lbl_80395BEC
/* 80395BE8 00391848  48 00 01 95 */	bl func_80395D7C
lbl_80395BEC:
/* 80395BEC 0039184C  2C 1F 00 00 */	cmpwi r31, 0
/* 80395BF0 00391850  40 81 00 0C */	ble lbl_80395BFC
/* 80395BF4 00391854  7F C3 F3 78 */	mr r3, r30
/* 80395BF8 00391858  4B E4 4E C1 */	bl __dl__FPv
lbl_80395BFC:
/* 80395BFC 0039185C  7F C3 F3 78 */	mr r3, r30
/* 80395C00 00391860  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80395C04 00391864  83 C1 00 08 */	lwz r30, 8(r1)
/* 80395C08 00391868  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395C0C 0039186C  7C 08 03 A6 */	mtlr r0
/* 80395C10 00391870  38 21 00 10 */	addi r1, r1, 0x10
/* 80395C14 00391874  4E 80 00 20 */	blr 

.global func_80395C18
func_80395C18:
/* 80395C18 00391878  2C 04 00 00 */	cmpwi r4, 0
/* 80395C1C 0039187C  40 82 00 0C */	bne lbl_80395C28
/* 80395C20 00391880  38 60 FF FF */	li r3, -1
/* 80395C24 00391884  4E 80 00 20 */	blr 
lbl_80395C28:
/* 80395C28 00391888  80 03 00 00 */	lwz r0, 0(r3)
/* 80395C2C 0039188C  2C 00 00 00 */	cmpwi r0, 0
/* 80395C30 00391890  41 82 00 0C */	beq lbl_80395C3C
/* 80395C34 00391894  38 60 FF FE */	li r3, -2
/* 80395C38 00391898  4E 80 00 20 */	blr 
lbl_80395C3C:
/* 80395C3C 0039189C  80 04 00 04 */	lwz r0, 4(r4)
/* 80395C40 003918A0  28 00 00 54 */	cmplwi r0, 0x54
/* 80395C44 003918A4  41 82 00 0C */	beq lbl_80395C50
/* 80395C48 003918A8  38 60 FF FD */	li r3, -3
/* 80395C4C 003918AC  4E 80 00 20 */	blr 
lbl_80395C50:
/* 80395C50 003918B0  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80395C54 003918B4  2C 00 00 00 */	cmpwi r0, 0
/* 80395C58 003918B8  40 82 01 0C */	bne lbl_80395D64
/* 80395C5C 003918BC  80 04 00 08 */	lwz r0, 8(r4)
/* 80395C60 003918C0  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80395C64 003918C4  7C E0 22 14 */	add r7, r0, r4
/* 80395C68 003918C8  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80395C6C 003918CC  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80395C70 003918D0  7C C6 22 14 */	add r6, r6, r4
/* 80395C74 003918D4  7C A5 22 14 */	add r5, r5, r4
/* 80395C78 003918D8  90 E4 00 08 */	stw r7, 8(r4)
/* 80395C7C 003918DC  2C 00 00 00 */	cmpwi r0, 0
/* 80395C80 003918E0  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80395C84 003918E4  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80395C88 003918E8  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80395C8C 003918EC  41 82 00 0C */	beq lbl_80395C98
/* 80395C90 003918F0  7C 00 22 14 */	add r0, r0, r4
/* 80395C94 003918F4  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80395C98:
/* 80395C98 003918F8  2C 07 00 00 */	cmpwi r7, 0
/* 80395C9C 003918FC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80395CA0 00391900  41 82 00 BC */	beq lbl_80395D5C
/* 80395CA4 00391904  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80395CA8 00391908  7C 09 03 A6 */	mtctr r0
/* 80395CAC 0039190C  41 82 00 94 */	beq lbl_80395D40
lbl_80395CB0:
/* 80395CB0 00391910  80 C5 00 00 */	lwz r6, 0(r5)
/* 80395CB4 00391914  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395CB8 00391918  7C 00 22 14 */	add r0, r0, r4
/* 80395CBC 0039191C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395CC0 00391920  80 C5 00 04 */	lwz r6, 4(r5)
/* 80395CC4 00391924  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395CC8 00391928  7C 00 22 14 */	add r0, r0, r4
/* 80395CCC 0039192C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395CD0 00391930  80 C5 00 08 */	lwz r6, 8(r5)
/* 80395CD4 00391934  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395CD8 00391938  7C 00 22 14 */	add r0, r0, r4
/* 80395CDC 0039193C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395CE0 00391940  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80395CE4 00391944  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395CE8 00391948  7C 00 22 14 */	add r0, r0, r4
/* 80395CEC 0039194C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395CF0 00391950  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80395CF4 00391954  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395CF8 00391958  7C 00 22 14 */	add r0, r0, r4
/* 80395CFC 0039195C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395D00 00391960  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80395D04 00391964  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395D08 00391968  7C 00 22 14 */	add r0, r0, r4
/* 80395D0C 0039196C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395D10 00391970  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80395D14 00391974  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395D18 00391978  7C 00 22 14 */	add r0, r0, r4
/* 80395D1C 0039197C  7C 06 21 2E */	stwx r0, r6, r4
/* 80395D20 00391980  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80395D24 00391984  38 A5 00 20 */	addi r5, r5, 0x20
/* 80395D28 00391988  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395D2C 0039198C  7C 00 22 14 */	add r0, r0, r4
/* 80395D30 00391990  7C 06 21 2E */	stwx r0, r6, r4
/* 80395D34 00391994  42 00 FF 7C */	bdnz lbl_80395CB0
/* 80395D38 00391998  70 E7 00 07 */	andi. r7, r7, 7
/* 80395D3C 0039199C  41 82 00 20 */	beq lbl_80395D5C
lbl_80395D40:
/* 80395D40 003919A0  7C E9 03 A6 */	mtctr r7
lbl_80395D44:
/* 80395D44 003919A4  80 C5 00 00 */	lwz r6, 0(r5)
/* 80395D48 003919A8  38 A5 00 04 */	addi r5, r5, 4
/* 80395D4C 003919AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80395D50 003919B0  7C 00 22 14 */	add r0, r0, r4
/* 80395D54 003919B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80395D58 003919B8  42 00 FF EC */	bdnz lbl_80395D44
lbl_80395D5C:
/* 80395D5C 003919BC  38 00 00 01 */	li r0, 1
/* 80395D60 003919C0  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80395D64:
/* 80395D64 003919C4  90 83 00 00 */	stw r4, 0(r3)
/* 80395D68 003919C8  38 60 00 00 */	li r3, 0
/* 80395D6C 003919CC  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80395D70 003919D0  38 05 00 01 */	addi r0, r5, 1
/* 80395D74 003919D4  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80395D78 003919D8  4E 80 00 20 */	blr 

.global func_80395D7C
func_80395D7C:
/* 80395D7C 003919DC  80 83 00 00 */	lwz r4, 0(r3)
/* 80395D80 003919E0  38 A0 00 00 */	li r5, 0
/* 80395D84 003919E4  2C 04 00 00 */	cmpwi r4, 0
/* 80395D88 003919E8  41 82 00 20 */	beq lbl_80395DA8
/* 80395D8C 003919EC  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80395D90 003919F0  2C 05 00 00 */	cmpwi r5, 0
/* 80395D94 003919F4  41 82 00 0C */	beq lbl_80395DA0
/* 80395D98 003919F8  38 A5 FF FF */	addi r5, r5, -1
/* 80395D9C 003919FC  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80395DA0:
/* 80395DA0 00391A00  38 00 00 00 */	li r0, 0
/* 80395DA4 00391A04  90 03 00 00 */	stw r0, 0(r3)
lbl_80395DA8:
/* 80395DA8 00391A08  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80395DAC 00391A0C  4E 80 00 20 */	blr 

.global func_80395DB0
func_80395DB0:
/* 80395DB0 00391A10  80 63 00 00 */	lwz r3, 0(r3)
/* 80395DB4 00391A14  2C 03 00 00 */	cmpwi r3, 0
/* 80395DB8 00391A18  40 82 00 0C */	bne lbl_80395DC4
/* 80395DBC 00391A1C  38 60 00 00 */	li r3, 0
/* 80395DC0 00391A20  4E 80 00 20 */	blr 
lbl_80395DC4:
/* 80395DC4 00391A24  2C 04 00 00 */	cmpwi r4, 0
/* 80395DC8 00391A28  40 80 00 0C */	bge lbl_80395DD4
/* 80395DCC 00391A2C  38 60 00 00 */	li r3, 0
/* 80395DD0 00391A30  4E 80 00 20 */	blr 
lbl_80395DD4:
/* 80395DD4 00391A34  1C 04 00 54 */	mulli r0, r4, 0x54
/* 80395DD8 00391A38  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80395DDC 00391A3C  7C 63 02 14 */	add r3, r3, r0
/* 80395DE0 00391A40  4E 80 00 20 */	blr 

.global func_80395DE4
func_80395DE4:
/* 80395DE4 00391A44  80 63 00 00 */	lwz r3, 0(r3)
/* 80395DE8 00391A48  2C 03 00 00 */	cmpwi r3, 0
/* 80395DEC 00391A4C  41 82 00 0C */	beq lbl_80395DF8
/* 80395DF0 00391A50  80 63 00 00 */	lwz r3, 0(r3)
/* 80395DF4 00391A54  4E 80 00 20 */	blr 
lbl_80395DF8:
/* 80395DF8 00391A58  38 60 00 00 */	li r3, 0
/* 80395DFC 00391A5C  4E 80 00 20 */	blr 

.global func_80395E00
func_80395E00:
/* 80395E00 00391A60  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395E04 00391A64  7C 08 02 A6 */	mflr r0
/* 80395E08 00391A68  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395E0C 00391A6C  4B FF FF A5 */	bl func_80395DB0
/* 80395E10 00391A70  2C 03 00 00 */	cmpwi r3, 0
/* 80395E14 00391A74  41 82 00 10 */	beq lbl_80395E24
/* 80395E18 00391A78  80 03 00 00 */	lwz r0, 0(r3)
/* 80395E1C 00391A7C  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80395E20 00391A80  48 00 00 08 */	b lbl_80395E28
lbl_80395E24:
/* 80395E24 00391A84  38 60 00 00 */	li r3, 0
lbl_80395E28:
/* 80395E28 00391A88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395E2C 00391A8C  7C 08 03 A6 */	mtlr r0
/* 80395E30 00391A90  38 21 00 10 */	addi r1, r1, 0x10
/* 80395E34 00391A94  4E 80 00 20 */	blr 

.global func_80395E38
func_80395E38:
/* 80395E38 00391A98  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395E3C 00391A9C  7C 08 02 A6 */	mflr r0
/* 80395E40 00391AA0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395E44 00391AA4  4B FF FF 6D */	bl func_80395DB0
/* 80395E48 00391AA8  2C 03 00 00 */	cmpwi r3, 0
/* 80395E4C 00391AAC  41 82 00 10 */	beq lbl_80395E5C
/* 80395E50 00391AB0  80 03 00 00 */	lwz r0, 0(r3)
/* 80395E54 00391AB4  54 03 27 7E */	rlwinm r3, r0, 4, 0x1d, 0x1f
/* 80395E58 00391AB8  48 00 00 08 */	b lbl_80395E60
lbl_80395E5C:
/* 80395E5C 00391ABC  38 60 00 00 */	li r3, 0
lbl_80395E60:
/* 80395E60 00391AC0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395E64 00391AC4  7C 08 03 A6 */	mtlr r0
/* 80395E68 00391AC8  38 21 00 10 */	addi r1, r1, 0x10
/* 80395E6C 00391ACC  4E 80 00 20 */	blr 

.global func_80395E70
func_80395E70:
/* 80395E70 00391AD0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395E74 00391AD4  7C 08 02 A6 */	mflr r0
/* 80395E78 00391AD8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395E7C 00391ADC  4B FF FF 35 */	bl func_80395DB0
/* 80395E80 00391AE0  2C 03 00 00 */	cmpwi r3, 0
/* 80395E84 00391AE4  41 82 00 0C */	beq lbl_80395E90
/* 80395E88 00391AE8  80 63 00 04 */	lwz r3, 4(r3)
/* 80395E8C 00391AEC  48 00 00 08 */	b lbl_80395E94
lbl_80395E90:
/* 80395E90 00391AF0  38 60 00 00 */	li r3, 0
lbl_80395E94:
/* 80395E94 00391AF4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395E98 00391AF8  7C 08 03 A6 */	mtlr r0
/* 80395E9C 00391AFC  38 21 00 10 */	addi r1, r1, 0x10
/* 80395EA0 00391B00  4E 80 00 20 */	blr 

.global func_80395EA4
func_80395EA4:
/* 80395EA4 00391B04  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395EA8 00391B08  7C 08 02 A6 */	mflr r0
/* 80395EAC 00391B0C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395EB0 00391B10  4B FF FF 01 */	bl func_80395DB0
/* 80395EB4 00391B14  2C 03 00 00 */	cmpwi r3, 0
/* 80395EB8 00391B18  41 82 00 0C */	beq lbl_80395EC4
/* 80395EBC 00391B1C  80 63 00 08 */	lwz r3, 8(r3)
/* 80395EC0 00391B20  48 00 00 08 */	b lbl_80395EC8
lbl_80395EC4:
/* 80395EC4 00391B24  38 60 00 00 */	li r3, 0
lbl_80395EC8:
/* 80395EC8 00391B28  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395ECC 00391B2C  7C 08 03 A6 */	mtlr r0
/* 80395ED0 00391B30  38 21 00 10 */	addi r1, r1, 0x10
/* 80395ED4 00391B34  4E 80 00 20 */	blr 

.global func_80395ED8
func_80395ED8:
/* 80395ED8 00391B38  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395EDC 00391B3C  7C 08 02 A6 */	mflr r0
/* 80395EE0 00391B40  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395EE4 00391B44  4B FF FE CD */	bl func_80395DB0
/* 80395EE8 00391B48  2C 03 00 00 */	cmpwi r3, 0
/* 80395EEC 00391B4C  41 82 00 0C */	beq lbl_80395EF8
/* 80395EF0 00391B50  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80395EF4 00391B54  48 00 00 08 */	b lbl_80395EFC
lbl_80395EF8:
/* 80395EF8 00391B58  38 60 00 00 */	li r3, 0
lbl_80395EFC:
/* 80395EFC 00391B5C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395F00 00391B60  7C 08 03 A6 */	mtlr r0
/* 80395F04 00391B64  38 21 00 10 */	addi r1, r1, 0x10
/* 80395F08 00391B68  4E 80 00 20 */	blr 

.global func_80395F0C
func_80395F0C:
/* 80395F0C 00391B6C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395F10 00391B70  7C 08 02 A6 */	mflr r0
/* 80395F14 00391B74  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395F18 00391B78  4B FF FE 99 */	bl func_80395DB0
/* 80395F1C 00391B7C  2C 03 00 00 */	cmpwi r3, 0
/* 80395F20 00391B80  41 82 00 0C */	beq lbl_80395F2C
/* 80395F24 00391B84  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80395F28 00391B88  48 00 00 08 */	b lbl_80395F30
lbl_80395F2C:
/* 80395F2C 00391B8C  38 60 00 00 */	li r3, 0
lbl_80395F30:
/* 80395F30 00391B90  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395F34 00391B94  7C 08 03 A6 */	mtlr r0
/* 80395F38 00391B98  38 21 00 10 */	addi r1, r1, 0x10
/* 80395F3C 00391B9C  4E 80 00 20 */	blr 

.global func_80395F40
func_80395F40:
/* 80395F40 00391BA0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395F44 00391BA4  7C 08 02 A6 */	mflr r0
/* 80395F48 00391BA8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395F4C 00391BAC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395F50 00391BB0  7C BF 2B 78 */	mr r31, r5
/* 80395F54 00391BB4  4B FF FE 5D */	bl func_80395DB0
/* 80395F58 00391BB8  2C 03 00 00 */	cmpwi r3, 0
/* 80395F5C 00391BBC  40 82 00 0C */	bne lbl_80395F68
/* 80395F60 00391BC0  38 60 00 00 */	li r3, 0
/* 80395F64 00391BC4  48 00 00 1C */	b lbl_80395F80
lbl_80395F68:
/* 80395F68 00391BC8  28 1F 00 14 */	cmplwi r31, 0x14
/* 80395F6C 00391BCC  41 80 00 0C */	blt lbl_80395F78
/* 80395F70 00391BD0  38 60 00 00 */	li r3, 0
/* 80395F74 00391BD4  48 00 00 0C */	b lbl_80395F80
lbl_80395F78:
/* 80395F78 00391BD8  7C 63 FA 14 */	add r3, r3, r31
/* 80395F7C 00391BDC  88 63 00 14 */	lbz r3, 0x14(r3)
lbl_80395F80:
/* 80395F80 00391BE0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395F84 00391BE4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80395F88 00391BE8  7C 08 03 A6 */	mtlr r0
/* 80395F8C 00391BEC  38 21 00 10 */	addi r1, r1, 0x10
/* 80395F90 00391BF0  4E 80 00 20 */	blr 

.global func_80395F94
func_80395F94:
/* 80395F94 00391BF4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395F98 00391BF8  7C 08 02 A6 */	mflr r0
/* 80395F9C 00391BFC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395FA0 00391C00  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395FA4 00391C04  7C BF 2B 78 */	mr r31, r5
/* 80395FA8 00391C08  4B FF FE 09 */	bl func_80395DB0
/* 80395FAC 00391C0C  2C 03 00 00 */	cmpwi r3, 0
/* 80395FB0 00391C10  40 82 00 0C */	bne lbl_80395FBC
/* 80395FB4 00391C14  38 60 00 00 */	li r3, 0
/* 80395FB8 00391C18  48 00 00 1C */	b lbl_80395FD4
lbl_80395FBC:
/* 80395FBC 00391C1C  28 1F 00 04 */	cmplwi r31, 4
/* 80395FC0 00391C20  41 80 00 0C */	blt lbl_80395FCC
/* 80395FC4 00391C24  38 60 00 00 */	li r3, 0
/* 80395FC8 00391C28  48 00 00 0C */	b lbl_80395FD4
lbl_80395FCC:
/* 80395FCC 00391C2C  7C 63 FA 14 */	add r3, r3, r31
/* 80395FD0 00391C30  88 63 00 28 */	lbz r3, 0x28(r3)
lbl_80395FD4:
/* 80395FD4 00391C34  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80395FD8 00391C38  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80395FDC 00391C3C  7C 08 03 A6 */	mtlr r0
/* 80395FE0 00391C40  38 21 00 10 */	addi r1, r1, 0x10
/* 80395FE4 00391C44  4E 80 00 20 */	blr 

.global func_80395FE8
func_80395FE8:
/* 80395FE8 00391C48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80395FEC 00391C4C  7C 08 02 A6 */	mflr r0
/* 80395FF0 00391C50  90 01 00 14 */	stw r0, 0x14(r1)
/* 80395FF4 00391C54  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80395FF8 00391C58  7C BF 2B 78 */	mr r31, r5
/* 80395FFC 00391C5C  4B FF FD B5 */	bl func_80395DB0
/* 80396000 00391C60  2C 03 00 00 */	cmpwi r3, 0
/* 80396004 00391C64  40 82 00 0C */	bne lbl_80396010
/* 80396008 00391C68  38 60 00 00 */	li r3, 0
/* 8039600C 00391C6C  48 00 00 1C */	b lbl_80396028
lbl_80396010:
/* 80396010 00391C70  28 1F 00 08 */	cmplwi r31, 8
/* 80396014 00391C74  41 80 00 0C */	blt lbl_80396020
/* 80396018 00391C78  38 60 00 00 */	li r3, 0
/* 8039601C 00391C7C  48 00 00 0C */	b lbl_80396028
lbl_80396020:
/* 80396020 00391C80  7C 63 FA 14 */	add r3, r3, r31
/* 80396024 00391C84  88 63 00 2C */	lbz r3, 0x2c(r3)
lbl_80396028:
/* 80396028 00391C88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039602C 00391C8C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396030 00391C90  7C 08 03 A6 */	mtlr r0
/* 80396034 00391C94  38 21 00 10 */	addi r1, r1, 0x10
/* 80396038 00391C98  4E 80 00 20 */	blr 

.global func_8039603C
func_8039603C:
/* 8039603C 00391C9C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396040 00391CA0  7C 08 02 A6 */	mflr r0
/* 80396044 00391CA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396048 00391CA8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039604C 00391CAC  7C BF 2B 78 */	mr r31, r5
/* 80396050 00391CB0  4B FF FD 61 */	bl func_80395DB0
/* 80396054 00391CB4  2C 03 00 00 */	cmpwi r3, 0
/* 80396058 00391CB8  40 82 00 0C */	bne lbl_80396064
/* 8039605C 00391CBC  38 60 00 00 */	li r3, 0
/* 80396060 00391CC0  48 00 00 1C */	b lbl_8039607C
lbl_80396064:
/* 80396064 00391CC4  28 1F 00 14 */	cmplwi r31, 0x14
/* 80396068 00391CC8  41 80 00 0C */	blt lbl_80396074
/* 8039606C 00391CCC  38 60 00 00 */	li r3, 0
/* 80396070 00391CD0  48 00 00 0C */	b lbl_8039607C
lbl_80396074:
/* 80396074 00391CD4  7C 63 FA 14 */	add r3, r3, r31
/* 80396078 00391CD8  88 63 00 34 */	lbz r3, 0x34(r3)
lbl_8039607C:
/* 8039607C 00391CDC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396080 00391CE0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396084 00391CE4  7C 08 03 A6 */	mtlr r0
/* 80396088 00391CE8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039608C 00391CEC  4E 80 00 20 */	blr 

.global func_80396090
func_80396090:
/* 80396090 00391CF0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396094 00391CF4  7C 08 02 A6 */	mflr r0
/* 80396098 00391CF8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039609C 00391CFC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803960A0 00391D00  7C BF 2B 78 */	mr r31, r5
/* 803960A4 00391D04  4B FF FD 0D */	bl func_80395DB0
/* 803960A8 00391D08  2C 03 00 00 */	cmpwi r3, 0
/* 803960AC 00391D0C  40 82 00 0C */	bne lbl_803960B8
/* 803960B0 00391D10  38 60 00 00 */	li r3, 0
/* 803960B4 00391D14  48 00 00 1C */	b lbl_803960D0
lbl_803960B8:
/* 803960B8 00391D18  28 1F 00 04 */	cmplwi r31, 4
/* 803960BC 00391D1C  41 80 00 0C */	blt lbl_803960C8
/* 803960C0 00391D20  38 60 00 00 */	li r3, 0
/* 803960C4 00391D24  48 00 00 0C */	b lbl_803960D0
lbl_803960C8:
/* 803960C8 00391D28  7C 63 FA 14 */	add r3, r3, r31
/* 803960CC 00391D2C  88 63 00 48 */	lbz r3, 0x48(r3)
lbl_803960D0:
/* 803960D0 00391D30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803960D4 00391D34  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803960D8 00391D38  7C 08 03 A6 */	mtlr r0
/* 803960DC 00391D3C  38 21 00 10 */	addi r1, r1, 0x10
/* 803960E0 00391D40  4E 80 00 20 */	blr 

.global func_803960E4
func_803960E4:
/* 803960E4 00391D44  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803960E8 00391D48  7C 08 02 A6 */	mflr r0
/* 803960EC 00391D4C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803960F0 00391D50  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803960F4 00391D54  7C BF 2B 78 */	mr r31, r5
/* 803960F8 00391D58  4B FF FC B9 */	bl func_80395DB0
/* 803960FC 00391D5C  2C 03 00 00 */	cmpwi r3, 0
/* 80396100 00391D60  40 82 00 0C */	bne lbl_8039610C
/* 80396104 00391D64  38 60 00 00 */	li r3, 0
/* 80396108 00391D68  48 00 00 1C */	b lbl_80396124
lbl_8039610C:
/* 8039610C 00391D6C  28 1F 00 08 */	cmplwi r31, 8
/* 80396110 00391D70  41 80 00 0C */	blt lbl_8039611C
/* 80396114 00391D74  38 60 00 00 */	li r3, 0
/* 80396118 00391D78  48 00 00 0C */	b lbl_80396124
lbl_8039611C:
/* 8039611C 00391D7C  7C 63 FA 14 */	add r3, r3, r31
/* 80396120 00391D80  88 63 00 4C */	lbz r3, 0x4c(r3)
lbl_80396124:
/* 80396124 00391D84  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396128 00391D88  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039612C 00391D8C  7C 08 03 A6 */	mtlr r0
/* 80396130 00391D90  38 21 00 10 */	addi r1, r1, 0x10
/* 80396134 00391D94  4E 80 00 20 */	blr 

.global func_80396138
func_80396138:
/* 80396138 00391D98  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039613C 00391D9C  7C 08 02 A6 */	mflr r0
/* 80396140 00391DA0  2C 04 00 00 */	cmpwi r4, 0
/* 80396144 00391DA4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396148 00391DA8  38 00 00 00 */	li r0, 0
/* 8039614C 00391DAC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396150 00391DB0  7C 7F 1B 78 */	mr r31, r3
/* 80396154 00391DB4  90 03 00 00 */	stw r0, 0(r3)
/* 80396158 00391DB8  41 82 00 08 */	beq lbl_80396160
/* 8039615C 00391DBC  48 00 00 7D */	bl func_803961D8
lbl_80396160:
/* 80396160 00391DC0  7F E3 FB 78 */	mr r3, r31
/* 80396164 00391DC4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396168 00391DC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039616C 00391DCC  7C 08 03 A6 */	mtlr r0
/* 80396170 00391DD0  38 21 00 10 */	addi r1, r1, 0x10
/* 80396174 00391DD4  4E 80 00 20 */	blr 

.global func_80396178
func_80396178:
/* 80396178 00391DD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039617C 00391DDC  7C 08 02 A6 */	mflr r0
/* 80396180 00391DE0  2C 03 00 00 */	cmpwi r3, 0
/* 80396184 00391DE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396188 00391DE8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039618C 00391DEC  7C 9F 23 78 */	mr r31, r4
/* 80396190 00391DF0  93 C1 00 08 */	stw r30, 8(r1)
/* 80396194 00391DF4  7C 7E 1B 78 */	mr r30, r3
/* 80396198 00391DF8  41 82 00 24 */	beq lbl_803961BC
/* 8039619C 00391DFC  80 03 00 00 */	lwz r0, 0(r3)
/* 803961A0 00391E00  2C 00 00 00 */	cmpwi r0, 0
/* 803961A4 00391E04  41 82 00 08 */	beq lbl_803961AC
/* 803961A8 00391E08  48 00 01 95 */	bl func_8039633C
lbl_803961AC:
/* 803961AC 00391E0C  2C 1F 00 00 */	cmpwi r31, 0
/* 803961B0 00391E10  40 81 00 0C */	ble lbl_803961BC
/* 803961B4 00391E14  7F C3 F3 78 */	mr r3, r30
/* 803961B8 00391E18  4B E4 49 01 */	bl __dl__FPv
lbl_803961BC:
/* 803961BC 00391E1C  7F C3 F3 78 */	mr r3, r30
/* 803961C0 00391E20  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803961C4 00391E24  83 C1 00 08 */	lwz r30, 8(r1)
/* 803961C8 00391E28  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803961CC 00391E2C  7C 08 03 A6 */	mtlr r0
/* 803961D0 00391E30  38 21 00 10 */	addi r1, r1, 0x10
/* 803961D4 00391E34  4E 80 00 20 */	blr 

.global func_803961D8
func_803961D8:
/* 803961D8 00391E38  2C 04 00 00 */	cmpwi r4, 0
/* 803961DC 00391E3C  40 82 00 0C */	bne lbl_803961E8
/* 803961E0 00391E40  38 60 FF FF */	li r3, -1
/* 803961E4 00391E44  4E 80 00 20 */	blr 
lbl_803961E8:
/* 803961E8 00391E48  80 03 00 00 */	lwz r0, 0(r3)
/* 803961EC 00391E4C  2C 00 00 00 */	cmpwi r0, 0
/* 803961F0 00391E50  41 82 00 0C */	beq lbl_803961FC
/* 803961F4 00391E54  38 60 FF FE */	li r3, -2
/* 803961F8 00391E58  4E 80 00 20 */	blr 
lbl_803961FC:
/* 803961FC 00391E5C  80 04 00 04 */	lwz r0, 4(r4)
/* 80396200 00391E60  28 00 00 0E */	cmplwi r0, 0xe
/* 80396204 00391E64  41 82 00 0C */	beq lbl_80396210
/* 80396208 00391E68  38 60 FF FD */	li r3, -3
/* 8039620C 00391E6C  4E 80 00 20 */	blr 
lbl_80396210:
/* 80396210 00391E70  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80396214 00391E74  2C 00 00 00 */	cmpwi r0, 0
/* 80396218 00391E78  40 82 01 0C */	bne lbl_80396324
/* 8039621C 00391E7C  80 04 00 08 */	lwz r0, 8(r4)
/* 80396220 00391E80  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80396224 00391E84  7C E0 22 14 */	add r7, r0, r4
/* 80396228 00391E88  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039622C 00391E8C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80396230 00391E90  7C C6 22 14 */	add r6, r6, r4
/* 80396234 00391E94  7C A5 22 14 */	add r5, r5, r4
/* 80396238 00391E98  90 E4 00 08 */	stw r7, 8(r4)
/* 8039623C 00391E9C  2C 00 00 00 */	cmpwi r0, 0
/* 80396240 00391EA0  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80396244 00391EA4  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80396248 00391EA8  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8039624C 00391EAC  41 82 00 0C */	beq lbl_80396258
/* 80396250 00391EB0  7C 00 22 14 */	add r0, r0, r4
/* 80396254 00391EB4  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80396258:
/* 80396258 00391EB8  2C 07 00 00 */	cmpwi r7, 0
/* 8039625C 00391EBC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396260 00391EC0  41 82 00 BC */	beq lbl_8039631C
/* 80396264 00391EC4  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80396268 00391EC8  7C 09 03 A6 */	mtctr r0
/* 8039626C 00391ECC  41 82 00 94 */	beq lbl_80396300
lbl_80396270:
/* 80396270 00391ED0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396274 00391ED4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396278 00391ED8  7C 00 22 14 */	add r0, r0, r4
/* 8039627C 00391EDC  7C 06 21 2E */	stwx r0, r6, r4
/* 80396280 00391EE0  80 C5 00 04 */	lwz r6, 4(r5)
/* 80396284 00391EE4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396288 00391EE8  7C 00 22 14 */	add r0, r0, r4
/* 8039628C 00391EEC  7C 06 21 2E */	stwx r0, r6, r4
/* 80396290 00391EF0  80 C5 00 08 */	lwz r6, 8(r5)
/* 80396294 00391EF4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396298 00391EF8  7C 00 22 14 */	add r0, r0, r4
/* 8039629C 00391EFC  7C 06 21 2E */	stwx r0, r6, r4
/* 803962A0 00391F00  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803962A4 00391F04  7C 06 20 2E */	lwzx r0, r6, r4
/* 803962A8 00391F08  7C 00 22 14 */	add r0, r0, r4
/* 803962AC 00391F0C  7C 06 21 2E */	stwx r0, r6, r4
/* 803962B0 00391F10  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803962B4 00391F14  7C 06 20 2E */	lwzx r0, r6, r4
/* 803962B8 00391F18  7C 00 22 14 */	add r0, r0, r4
/* 803962BC 00391F1C  7C 06 21 2E */	stwx r0, r6, r4
/* 803962C0 00391F20  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803962C4 00391F24  7C 06 20 2E */	lwzx r0, r6, r4
/* 803962C8 00391F28  7C 00 22 14 */	add r0, r0, r4
/* 803962CC 00391F2C  7C 06 21 2E */	stwx r0, r6, r4
/* 803962D0 00391F30  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803962D4 00391F34  7C 06 20 2E */	lwzx r0, r6, r4
/* 803962D8 00391F38  7C 00 22 14 */	add r0, r0, r4
/* 803962DC 00391F3C  7C 06 21 2E */	stwx r0, r6, r4
/* 803962E0 00391F40  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803962E4 00391F44  38 A5 00 20 */	addi r5, r5, 0x20
/* 803962E8 00391F48  7C 06 20 2E */	lwzx r0, r6, r4
/* 803962EC 00391F4C  7C 00 22 14 */	add r0, r0, r4
/* 803962F0 00391F50  7C 06 21 2E */	stwx r0, r6, r4
/* 803962F4 00391F54  42 00 FF 7C */	bdnz lbl_80396270
/* 803962F8 00391F58  70 E7 00 07 */	andi. r7, r7, 7
/* 803962FC 00391F5C  41 82 00 20 */	beq lbl_8039631C
lbl_80396300:
/* 80396300 00391F60  7C E9 03 A6 */	mtctr r7
lbl_80396304:
/* 80396304 00391F64  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396308 00391F68  38 A5 00 04 */	addi r5, r5, 4
/* 8039630C 00391F6C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396310 00391F70  7C 00 22 14 */	add r0, r0, r4
/* 80396314 00391F74  7C 06 21 2E */	stwx r0, r6, r4
/* 80396318 00391F78  42 00 FF EC */	bdnz lbl_80396304
lbl_8039631C:
/* 8039631C 00391F7C  38 00 00 01 */	li r0, 1
/* 80396320 00391F80  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80396324:
/* 80396324 00391F84  90 83 00 00 */	stw r4, 0(r3)
/* 80396328 00391F88  38 60 00 00 */	li r3, 0
/* 8039632C 00391F8C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80396330 00391F90  38 05 00 01 */	addi r0, r5, 1
/* 80396334 00391F94  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80396338 00391F98  4E 80 00 20 */	blr 

.global func_8039633C
func_8039633C:
/* 8039633C 00391F9C  80 83 00 00 */	lwz r4, 0(r3)
/* 80396340 00391FA0  38 A0 00 00 */	li r5, 0
/* 80396344 00391FA4  2C 04 00 00 */	cmpwi r4, 0
/* 80396348 00391FA8  41 82 00 20 */	beq lbl_80396368
/* 8039634C 00391FAC  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80396350 00391FB0  2C 05 00 00 */	cmpwi r5, 0
/* 80396354 00391FB4  41 82 00 0C */	beq lbl_80396360
/* 80396358 00391FB8  38 A5 FF FF */	addi r5, r5, -1
/* 8039635C 00391FBC  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80396360:
/* 80396360 00391FC0  38 00 00 00 */	li r0, 0
/* 80396364 00391FC4  90 03 00 00 */	stw r0, 0(r3)
lbl_80396368:
/* 80396368 00391FC8  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 8039636C 00391FCC  4E 80 00 20 */	blr 

.global func_80396370
func_80396370:
/* 80396370 00391FD0  80 63 00 00 */	lwz r3, 0(r3)
/* 80396374 00391FD4  2C 03 00 00 */	cmpwi r3, 0
/* 80396378 00391FD8  40 82 00 0C */	bne lbl_80396384
/* 8039637C 00391FDC  38 60 00 00 */	li r3, 0
/* 80396380 00391FE0  4E 80 00 20 */	blr 
lbl_80396384:
/* 80396384 00391FE4  2C 04 00 00 */	cmpwi r4, 0
/* 80396388 00391FE8  40 80 00 0C */	bge lbl_80396394
/* 8039638C 00391FEC  38 60 00 00 */	li r3, 0
/* 80396390 00391FF0  4E 80 00 20 */	blr 
lbl_80396394:
/* 80396394 00391FF4  1C 04 00 0E */	mulli r0, r4, 0xe
/* 80396398 00391FF8  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8039639C 00391FFC  7C 63 02 14 */	add r3, r3, r0
/* 803963A0 00392000  4E 80 00 20 */	blr 

.global func_803963A4
func_803963A4:
/* 803963A4 00392004  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803963A8 00392008  7C 08 02 A6 */	mflr r0
/* 803963AC 0039200C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803963B0 00392010  4B FF FF C1 */	bl func_80396370
/* 803963B4 00392014  2C 03 00 00 */	cmpwi r3, 0
/* 803963B8 00392018  41 82 00 0C */	beq lbl_803963C4
/* 803963BC 0039201C  A0 63 00 00 */	lhz r3, 0(r3)
/* 803963C0 00392020  48 00 00 08 */	b lbl_803963C8
lbl_803963C4:
/* 803963C4 00392024  38 60 00 00 */	li r3, 0
lbl_803963C8:
/* 803963C8 00392028  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803963CC 0039202C  7C 08 03 A6 */	mtlr r0
/* 803963D0 00392030  38 21 00 10 */	addi r1, r1, 0x10
/* 803963D4 00392034  4E 80 00 20 */	blr 

.global func_803963D8
func_803963D8:
/* 803963D8 00392038  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803963DC 0039203C  7C 08 02 A6 */	mflr r0
/* 803963E0 00392040  90 01 00 14 */	stw r0, 0x14(r1)
/* 803963E4 00392044  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803963E8 00392048  7C BF 2B 78 */	mr r31, r5
/* 803963EC 0039204C  4B FF FF 85 */	bl func_80396370
/* 803963F0 00392050  2C 03 00 00 */	cmpwi r3, 0
/* 803963F4 00392054  40 82 00 0C */	bne lbl_80396400
/* 803963F8 00392058  38 60 00 00 */	li r3, 0
/* 803963FC 0039205C  48 00 00 20 */	b lbl_8039641C
lbl_80396400:
/* 80396400 00392060  28 1F 00 06 */	cmplwi r31, 6
/* 80396404 00392064  41 80 00 0C */	blt lbl_80396410
/* 80396408 00392068  38 60 00 00 */	li r3, 0
/* 8039640C 0039206C  48 00 00 10 */	b lbl_8039641C
lbl_80396410:
/* 80396410 00392070  57 E0 08 3C */	slwi r0, r31, 1
/* 80396414 00392074  7C 63 02 14 */	add r3, r3, r0
/* 80396418 00392078  A0 63 00 02 */	lhz r3, 2(r3)
lbl_8039641C:
/* 8039641C 0039207C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396420 00392080  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396424 00392084  7C 08 03 A6 */	mtlr r0
/* 80396428 00392088  38 21 00 10 */	addi r1, r1, 0x10
/* 8039642C 0039208C  4E 80 00 20 */	blr 

.global func_80396430
func_80396430:
/* 80396430 00392090  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396434 00392094  7C 08 02 A6 */	mflr r0
/* 80396438 00392098  2C 04 00 00 */	cmpwi r4, 0
/* 8039643C 0039209C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396440 003920A0  38 00 00 00 */	li r0, 0
/* 80396444 003920A4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396448 003920A8  7C 7F 1B 78 */	mr r31, r3
/* 8039644C 003920AC  90 03 00 00 */	stw r0, 0(r3)
/* 80396450 003920B0  41 82 00 08 */	beq lbl_80396458
/* 80396454 003920B4  48 00 00 7D */	bl func_803964D0
lbl_80396458:
/* 80396458 003920B8  7F E3 FB 78 */	mr r3, r31
/* 8039645C 003920BC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396460 003920C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396464 003920C4  7C 08 03 A6 */	mtlr r0
/* 80396468 003920C8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039646C 003920CC  4E 80 00 20 */	blr 

.global func_80396470
func_80396470:
/* 80396470 003920D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396474 003920D4  7C 08 02 A6 */	mflr r0
/* 80396478 003920D8  2C 03 00 00 */	cmpwi r3, 0
/* 8039647C 003920DC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396480 003920E0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396484 003920E4  7C 9F 23 78 */	mr r31, r4
/* 80396488 003920E8  93 C1 00 08 */	stw r30, 8(r1)
/* 8039648C 003920EC  7C 7E 1B 78 */	mr r30, r3
/* 80396490 003920F0  41 82 00 24 */	beq lbl_803964B4
/* 80396494 003920F4  80 03 00 00 */	lwz r0, 0(r3)
/* 80396498 003920F8  2C 00 00 00 */	cmpwi r0, 0
/* 8039649C 003920FC  41 82 00 08 */	beq lbl_803964A4
/* 803964A0 00392100  48 00 01 95 */	bl func_80396634
lbl_803964A4:
/* 803964A4 00392104  2C 1F 00 00 */	cmpwi r31, 0
/* 803964A8 00392108  40 81 00 0C */	ble lbl_803964B4
/* 803964AC 0039210C  7F C3 F3 78 */	mr r3, r30
/* 803964B0 00392110  4B E4 46 09 */	bl __dl__FPv
lbl_803964B4:
/* 803964B4 00392114  7F C3 F3 78 */	mr r3, r30
/* 803964B8 00392118  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803964BC 0039211C  83 C1 00 08 */	lwz r30, 8(r1)
/* 803964C0 00392120  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803964C4 00392124  7C 08 03 A6 */	mtlr r0
/* 803964C8 00392128  38 21 00 10 */	addi r1, r1, 0x10
/* 803964CC 0039212C  4E 80 00 20 */	blr 

.global func_803964D0
func_803964D0:
/* 803964D0 00392130  2C 04 00 00 */	cmpwi r4, 0
/* 803964D4 00392134  40 82 00 0C */	bne lbl_803964E0
/* 803964D8 00392138  38 60 FF FF */	li r3, -1
/* 803964DC 0039213C  4E 80 00 20 */	blr 
lbl_803964E0:
/* 803964E0 00392140  80 03 00 00 */	lwz r0, 0(r3)
/* 803964E4 00392144  2C 00 00 00 */	cmpwi r0, 0
/* 803964E8 00392148  41 82 00 0C */	beq lbl_803964F4
/* 803964EC 0039214C  38 60 FF FE */	li r3, -2
/* 803964F0 00392150  4E 80 00 20 */	blr 
lbl_803964F4:
/* 803964F4 00392154  80 04 00 04 */	lwz r0, 4(r4)
/* 803964F8 00392158  28 00 00 0C */	cmplwi r0, 0xc
/* 803964FC 0039215C  41 82 00 0C */	beq lbl_80396508
/* 80396500 00392160  38 60 FF FD */	li r3, -3
/* 80396504 00392164  4E 80 00 20 */	blr 
lbl_80396508:
/* 80396508 00392168  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8039650C 0039216C  2C 00 00 00 */	cmpwi r0, 0
/* 80396510 00392170  40 82 01 0C */	bne lbl_8039661C
/* 80396514 00392174  80 04 00 08 */	lwz r0, 8(r4)
/* 80396518 00392178  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039651C 0039217C  7C E0 22 14 */	add r7, r0, r4
/* 80396520 00392180  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396524 00392184  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80396528 00392188  7C C6 22 14 */	add r6, r6, r4
/* 8039652C 0039218C  7C A5 22 14 */	add r5, r5, r4
/* 80396530 00392190  90 E4 00 08 */	stw r7, 8(r4)
/* 80396534 00392194  2C 00 00 00 */	cmpwi r0, 0
/* 80396538 00392198  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8039653C 0039219C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80396540 003921A0  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80396544 003921A4  41 82 00 0C */	beq lbl_80396550
/* 80396548 003921A8  7C 00 22 14 */	add r0, r0, r4
/* 8039654C 003921AC  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80396550:
/* 80396550 003921B0  2C 07 00 00 */	cmpwi r7, 0
/* 80396554 003921B4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396558 003921B8  41 82 00 BC */	beq lbl_80396614
/* 8039655C 003921BC  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80396560 003921C0  7C 09 03 A6 */	mtctr r0
/* 80396564 003921C4  41 82 00 94 */	beq lbl_803965F8
lbl_80396568:
/* 80396568 003921C8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039656C 003921CC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396570 003921D0  7C 00 22 14 */	add r0, r0, r4
/* 80396574 003921D4  7C 06 21 2E */	stwx r0, r6, r4
/* 80396578 003921D8  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039657C 003921DC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396580 003921E0  7C 00 22 14 */	add r0, r0, r4
/* 80396584 003921E4  7C 06 21 2E */	stwx r0, r6, r4
/* 80396588 003921E8  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039658C 003921EC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396590 003921F0  7C 00 22 14 */	add r0, r0, r4
/* 80396594 003921F4  7C 06 21 2E */	stwx r0, r6, r4
/* 80396598 003921F8  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039659C 003921FC  7C 06 20 2E */	lwzx r0, r6, r4
/* 803965A0 00392200  7C 00 22 14 */	add r0, r0, r4
/* 803965A4 00392204  7C 06 21 2E */	stwx r0, r6, r4
/* 803965A8 00392208  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803965AC 0039220C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803965B0 00392210  7C 00 22 14 */	add r0, r0, r4
/* 803965B4 00392214  7C 06 21 2E */	stwx r0, r6, r4
/* 803965B8 00392218  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803965BC 0039221C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803965C0 00392220  7C 00 22 14 */	add r0, r0, r4
/* 803965C4 00392224  7C 06 21 2E */	stwx r0, r6, r4
/* 803965C8 00392228  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803965CC 0039222C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803965D0 00392230  7C 00 22 14 */	add r0, r0, r4
/* 803965D4 00392234  7C 06 21 2E */	stwx r0, r6, r4
/* 803965D8 00392238  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803965DC 0039223C  38 A5 00 20 */	addi r5, r5, 0x20
/* 803965E0 00392240  7C 06 20 2E */	lwzx r0, r6, r4
/* 803965E4 00392244  7C 00 22 14 */	add r0, r0, r4
/* 803965E8 00392248  7C 06 21 2E */	stwx r0, r6, r4
/* 803965EC 0039224C  42 00 FF 7C */	bdnz lbl_80396568
/* 803965F0 00392250  70 E7 00 07 */	andi. r7, r7, 7
/* 803965F4 00392254  41 82 00 20 */	beq lbl_80396614
lbl_803965F8:
/* 803965F8 00392258  7C E9 03 A6 */	mtctr r7
lbl_803965FC:
/* 803965FC 0039225C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396600 00392260  38 A5 00 04 */	addi r5, r5, 4
/* 80396604 00392264  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396608 00392268  7C 00 22 14 */	add r0, r0, r4
/* 8039660C 0039226C  7C 06 21 2E */	stwx r0, r6, r4
/* 80396610 00392270  42 00 FF EC */	bdnz lbl_803965FC
lbl_80396614:
/* 80396614 00392274  38 00 00 01 */	li r0, 1
/* 80396618 00392278  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039661C:
/* 8039661C 0039227C  90 83 00 00 */	stw r4, 0(r3)
/* 80396620 00392280  38 60 00 00 */	li r3, 0
/* 80396624 00392284  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80396628 00392288  38 05 00 01 */	addi r0, r5, 1
/* 8039662C 0039228C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80396630 00392290  4E 80 00 20 */	blr 

.global func_80396634
func_80396634:
/* 80396634 00392294  80 83 00 00 */	lwz r4, 0(r3)
/* 80396638 00392298  38 A0 00 00 */	li r5, 0
/* 8039663C 0039229C  2C 04 00 00 */	cmpwi r4, 0
/* 80396640 003922A0  41 82 00 20 */	beq lbl_80396660
/* 80396644 003922A4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80396648 003922A8  2C 05 00 00 */	cmpwi r5, 0
/* 8039664C 003922AC  41 82 00 0C */	beq lbl_80396658
/* 80396650 003922B0  38 A5 FF FF */	addi r5, r5, -1
/* 80396654 003922B4  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80396658:
/* 80396658 003922B8  38 00 00 00 */	li r0, 0
/* 8039665C 003922BC  90 03 00 00 */	stw r0, 0(r3)
lbl_80396660:
/* 80396660 003922C0  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80396664 003922C4  4E 80 00 20 */	blr 

.global func_80396668
func_80396668:
/* 80396668 003922C8  80 63 00 00 */	lwz r3, 0(r3)
/* 8039666C 003922CC  2C 03 00 00 */	cmpwi r3, 0
/* 80396670 003922D0  40 82 00 0C */	bne lbl_8039667C
/* 80396674 003922D4  38 60 00 00 */	li r3, 0
/* 80396678 003922D8  4E 80 00 20 */	blr 
lbl_8039667C:
/* 8039667C 003922DC  2C 04 00 00 */	cmpwi r4, 0
/* 80396680 003922E0  40 80 00 0C */	bge lbl_8039668C
/* 80396684 003922E4  38 60 00 00 */	li r3, 0
/* 80396688 003922E8  4E 80 00 20 */	blr 
lbl_8039668C:
/* 8039668C 003922EC  1C 04 00 0C */	mulli r0, r4, 0xc
/* 80396690 003922F0  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80396694 003922F4  7C 63 02 14 */	add r3, r3, r0
/* 80396698 003922F8  4E 80 00 20 */	blr 

.global func_8039669C
func_8039669C:
/* 8039669C 003922FC  80 63 00 00 */	lwz r3, 0(r3)
/* 803966A0 00392300  2C 03 00 00 */	cmpwi r3, 0
/* 803966A4 00392304  41 82 00 0C */	beq lbl_803966B0
/* 803966A8 00392308  80 63 00 00 */	lwz r3, 0(r3)
/* 803966AC 0039230C  4E 80 00 20 */	blr 
lbl_803966B0:
/* 803966B0 00392310  38 60 00 00 */	li r3, 0
/* 803966B4 00392314  4E 80 00 20 */	blr 

.global func_803966B8
func_803966B8:
/* 803966B8 00392318  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803966BC 0039231C  7C 08 02 A6 */	mflr r0
/* 803966C0 00392320  90 01 00 14 */	stw r0, 0x14(r1)
/* 803966C4 00392324  4B FF FF A5 */	bl func_80396668
/* 803966C8 00392328  2C 03 00 00 */	cmpwi r3, 0
/* 803966CC 0039232C  41 82 00 0C */	beq lbl_803966D8
/* 803966D0 00392330  88 63 00 08 */	lbz r3, 8(r3)
/* 803966D4 00392334  48 00 00 08 */	b lbl_803966DC
lbl_803966D8:
/* 803966D8 00392338  38 60 00 00 */	li r3, 0
lbl_803966DC:
/* 803966DC 0039233C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803966E0 00392340  7C 08 03 A6 */	mtlr r0
/* 803966E4 00392344  38 21 00 10 */	addi r1, r1, 0x10
/* 803966E8 00392348  4E 80 00 20 */	blr 

.global func_803966EC
func_803966EC:
/* 803966EC 0039234C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803966F0 00392350  7C 08 02 A6 */	mflr r0
/* 803966F4 00392354  90 01 00 14 */	stw r0, 0x14(r1)
/* 803966F8 00392358  4B FF FF 71 */	bl func_80396668
/* 803966FC 0039235C  2C 03 00 00 */	cmpwi r3, 0
/* 80396700 00392360  41 82 00 0C */	beq lbl_8039670C
/* 80396704 00392364  80 63 00 00 */	lwz r3, 0(r3)
/* 80396708 00392368  48 00 00 08 */	b lbl_80396710
lbl_8039670C:
/* 8039670C 0039236C  38 60 00 00 */	li r3, 0
lbl_80396710:
/* 80396710 00392370  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396714 00392374  7C 08 03 A6 */	mtlr r0
/* 80396718 00392378  38 21 00 10 */	addi r1, r1, 0x10
/* 8039671C 0039237C  4E 80 00 20 */	blr 

.global func_80396720
func_80396720:
/* 80396720 00392380  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396724 00392384  7C 08 02 A6 */	mflr r0
/* 80396728 00392388  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039672C 0039238C  4B FF FF 3D */	bl func_80396668
/* 80396730 00392390  2C 03 00 00 */	cmpwi r3, 0
/* 80396734 00392394  41 82 00 0C */	beq lbl_80396740
/* 80396738 00392398  80 63 00 04 */	lwz r3, 4(r3)
/* 8039673C 0039239C  48 00 00 08 */	b lbl_80396744
lbl_80396740:
/* 80396740 003923A0  38 60 00 00 */	li r3, 0
lbl_80396744:
/* 80396744 003923A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396748 003923A8  7C 08 03 A6 */	mtlr r0
/* 8039674C 003923AC  38 21 00 10 */	addi r1, r1, 0x10
/* 80396750 003923B0  4E 80 00 20 */	blr 

.global func_80396754
func_80396754:
/* 80396754 003923B4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396758 003923B8  7C 08 02 A6 */	mflr r0
/* 8039675C 003923BC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396760 003923C0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396764 003923C4  7C BF 2B 78 */	mr r31, r5
/* 80396768 003923C8  4B FF FF 01 */	bl func_80396668
/* 8039676C 003923CC  2C 03 00 00 */	cmpwi r3, 0
/* 80396770 003923D0  41 82 00 08 */	beq lbl_80396778
/* 80396774 003923D4  93 E3 00 04 */	stw r31, 4(r3)
lbl_80396778:
/* 80396778 003923D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039677C 003923DC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396780 003923E0  7C 08 03 A6 */	mtlr r0
/* 80396784 003923E4  38 21 00 10 */	addi r1, r1, 0x10
/* 80396788 003923E8  4E 80 00 20 */	blr 

.global func_8039678C
func_8039678C:
/* 8039678C 003923EC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396790 003923F0  7C 08 02 A6 */	mflr r0
/* 80396794 003923F4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396798 003923F8  4B FF FE D1 */	bl func_80396668
/* 8039679C 003923FC  2C 03 00 00 */	cmpwi r3, 0
/* 803967A0 00392400  41 82 00 0C */	beq lbl_803967AC
/* 803967A4 00392404  88 63 00 09 */	lbz r3, 9(r3)
/* 803967A8 00392408  48 00 00 08 */	b lbl_803967B0
lbl_803967AC:
/* 803967AC 0039240C  38 60 00 00 */	li r3, 0
lbl_803967B0:
/* 803967B0 00392410  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803967B4 00392414  7C 08 03 A6 */	mtlr r0
/* 803967B8 00392418  38 21 00 10 */	addi r1, r1, 0x10
/* 803967BC 0039241C  4E 80 00 20 */	blr 

.global func_803967C0
func_803967C0:
/* 803967C0 00392420  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803967C4 00392424  7C 08 02 A6 */	mflr r0
/* 803967C8 00392428  2C 04 00 00 */	cmpwi r4, 0
/* 803967CC 0039242C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803967D0 00392430  38 00 00 00 */	li r0, 0
/* 803967D4 00392434  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803967D8 00392438  7C 7F 1B 78 */	mr r31, r3
/* 803967DC 0039243C  90 03 00 00 */	stw r0, 0(r3)
/* 803967E0 00392440  41 82 00 08 */	beq lbl_803967E8
/* 803967E4 00392444  48 00 00 7D */	bl func_80396860
lbl_803967E8:
/* 803967E8 00392448  7F E3 FB 78 */	mr r3, r31
/* 803967EC 0039244C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803967F0 00392450  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803967F4 00392454  7C 08 03 A6 */	mtlr r0
/* 803967F8 00392458  38 21 00 10 */	addi r1, r1, 0x10
/* 803967FC 0039245C  4E 80 00 20 */	blr 

.global func_80396800
func_80396800:
/* 80396800 00392460  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396804 00392464  7C 08 02 A6 */	mflr r0
/* 80396808 00392468  2C 03 00 00 */	cmpwi r3, 0
/* 8039680C 0039246C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396810 00392470  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396814 00392474  7C 9F 23 78 */	mr r31, r4
/* 80396818 00392478  93 C1 00 08 */	stw r30, 8(r1)
/* 8039681C 0039247C  7C 7E 1B 78 */	mr r30, r3
/* 80396820 00392480  41 82 00 24 */	beq lbl_80396844
/* 80396824 00392484  80 03 00 00 */	lwz r0, 0(r3)
/* 80396828 00392488  2C 00 00 00 */	cmpwi r0, 0
/* 8039682C 0039248C  41 82 00 08 */	beq lbl_80396834
/* 80396830 00392490  48 00 01 95 */	bl func_803969C4
lbl_80396834:
/* 80396834 00392494  2C 1F 00 00 */	cmpwi r31, 0
/* 80396838 00392498  40 81 00 0C */	ble lbl_80396844
/* 8039683C 0039249C  7F C3 F3 78 */	mr r3, r30
/* 80396840 003924A0  4B E4 42 79 */	bl __dl__FPv
lbl_80396844:
/* 80396844 003924A4  7F C3 F3 78 */	mr r3, r30
/* 80396848 003924A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039684C 003924AC  83 C1 00 08 */	lwz r30, 8(r1)
/* 80396850 003924B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396854 003924B4  7C 08 03 A6 */	mtlr r0
/* 80396858 003924B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039685C 003924BC  4E 80 00 20 */	blr 

.global func_80396860
func_80396860:
/* 80396860 003924C0  2C 04 00 00 */	cmpwi r4, 0
/* 80396864 003924C4  40 82 00 0C */	bne lbl_80396870
/* 80396868 003924C8  38 60 FF FF */	li r3, -1
/* 8039686C 003924CC  4E 80 00 20 */	blr 
lbl_80396870:
/* 80396870 003924D0  80 03 00 00 */	lwz r0, 0(r3)
/* 80396874 003924D4  2C 00 00 00 */	cmpwi r0, 0
/* 80396878 003924D8  41 82 00 0C */	beq lbl_80396884
/* 8039687C 003924DC  38 60 FF FE */	li r3, -2
/* 80396880 003924E0  4E 80 00 20 */	blr 
lbl_80396884:
/* 80396884 003924E4  80 04 00 04 */	lwz r0, 4(r4)
/* 80396888 003924E8  28 00 00 0C */	cmplwi r0, 0xc
/* 8039688C 003924EC  41 82 00 0C */	beq lbl_80396898
/* 80396890 003924F0  38 60 FF FD */	li r3, -3
/* 80396894 003924F4  4E 80 00 20 */	blr 
lbl_80396898:
/* 80396898 003924F8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8039689C 003924FC  2C 00 00 00 */	cmpwi r0, 0
/* 803968A0 00392500  40 82 01 0C */	bne lbl_803969AC
/* 803968A4 00392504  80 04 00 08 */	lwz r0, 8(r4)
/* 803968A8 00392508  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803968AC 0039250C  7C E0 22 14 */	add r7, r0, r4
/* 803968B0 00392510  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803968B4 00392514  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803968B8 00392518  7C C6 22 14 */	add r6, r6, r4
/* 803968BC 0039251C  7C A5 22 14 */	add r5, r5, r4
/* 803968C0 00392520  90 E4 00 08 */	stw r7, 8(r4)
/* 803968C4 00392524  2C 00 00 00 */	cmpwi r0, 0
/* 803968C8 00392528  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803968CC 0039252C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803968D0 00392530  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803968D4 00392534  41 82 00 0C */	beq lbl_803968E0
/* 803968D8 00392538  7C 00 22 14 */	add r0, r0, r4
/* 803968DC 0039253C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803968E0:
/* 803968E0 00392540  2C 07 00 00 */	cmpwi r7, 0
/* 803968E4 00392544  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803968E8 00392548  41 82 00 BC */	beq lbl_803969A4
/* 803968EC 0039254C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803968F0 00392550  7C 09 03 A6 */	mtctr r0
/* 803968F4 00392554  41 82 00 94 */	beq lbl_80396988
lbl_803968F8:
/* 803968F8 00392558  80 C5 00 00 */	lwz r6, 0(r5)
/* 803968FC 0039255C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396900 00392560  7C 00 22 14 */	add r0, r0, r4
/* 80396904 00392564  7C 06 21 2E */	stwx r0, r6, r4
/* 80396908 00392568  80 C5 00 04 */	lwz r6, 4(r5)
/* 8039690C 0039256C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396910 00392570  7C 00 22 14 */	add r0, r0, r4
/* 80396914 00392574  7C 06 21 2E */	stwx r0, r6, r4
/* 80396918 00392578  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039691C 0039257C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396920 00392580  7C 00 22 14 */	add r0, r0, r4
/* 80396924 00392584  7C 06 21 2E */	stwx r0, r6, r4
/* 80396928 00392588  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039692C 0039258C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396930 00392590  7C 00 22 14 */	add r0, r0, r4
/* 80396934 00392594  7C 06 21 2E */	stwx r0, r6, r4
/* 80396938 00392598  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039693C 0039259C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396940 003925A0  7C 00 22 14 */	add r0, r0, r4
/* 80396944 003925A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80396948 003925A8  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039694C 003925AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396950 003925B0  7C 00 22 14 */	add r0, r0, r4
/* 80396954 003925B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80396958 003925B8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039695C 003925BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396960 003925C0  7C 00 22 14 */	add r0, r0, r4
/* 80396964 003925C4  7C 06 21 2E */	stwx r0, r6, r4
/* 80396968 003925C8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039696C 003925CC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80396970 003925D0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396974 003925D4  7C 00 22 14 */	add r0, r0, r4
/* 80396978 003925D8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039697C 003925DC  42 00 FF 7C */	bdnz lbl_803968F8
/* 80396980 003925E0  70 E7 00 07 */	andi. r7, r7, 7
/* 80396984 003925E4  41 82 00 20 */	beq lbl_803969A4
lbl_80396988:
/* 80396988 003925E8  7C E9 03 A6 */	mtctr r7
lbl_8039698C:
/* 8039698C 003925EC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396990 003925F0  38 A5 00 04 */	addi r5, r5, 4
/* 80396994 003925F4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396998 003925F8  7C 00 22 14 */	add r0, r0, r4
/* 8039699C 003925FC  7C 06 21 2E */	stwx r0, r6, r4
/* 803969A0 00392600  42 00 FF EC */	bdnz lbl_8039698C
lbl_803969A4:
/* 803969A4 00392604  38 00 00 01 */	li r0, 1
/* 803969A8 00392608  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803969AC:
/* 803969AC 0039260C  90 83 00 00 */	stw r4, 0(r3)
/* 803969B0 00392610  38 60 00 00 */	li r3, 0
/* 803969B4 00392614  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803969B8 00392618  38 05 00 01 */	addi r0, r5, 1
/* 803969BC 0039261C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803969C0 00392620  4E 80 00 20 */	blr 

.global func_803969C4
func_803969C4:
/* 803969C4 00392624  80 83 00 00 */	lwz r4, 0(r3)
/* 803969C8 00392628  38 A0 00 00 */	li r5, 0
/* 803969CC 0039262C  2C 04 00 00 */	cmpwi r4, 0
/* 803969D0 00392630  41 82 00 20 */	beq lbl_803969F0
/* 803969D4 00392634  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803969D8 00392638  2C 05 00 00 */	cmpwi r5, 0
/* 803969DC 0039263C  41 82 00 0C */	beq lbl_803969E8
/* 803969E0 00392640  38 A5 FF FF */	addi r5, r5, -1
/* 803969E4 00392644  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803969E8:
/* 803969E8 00392648  38 00 00 00 */	li r0, 0
/* 803969EC 0039264C  90 03 00 00 */	stw r0, 0(r3)
lbl_803969F0:
/* 803969F0 00392650  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803969F4 00392654  4E 80 00 20 */	blr 

.global func_803969F8
func_803969F8:
/* 803969F8 00392658  80 63 00 00 */	lwz r3, 0(r3)
/* 803969FC 0039265C  2C 03 00 00 */	cmpwi r3, 0
/* 80396A00 00392660  40 82 00 0C */	bne lbl_80396A0C
/* 80396A04 00392664  38 60 00 00 */	li r3, 0
/* 80396A08 00392668  4E 80 00 20 */	blr 
lbl_80396A0C:
/* 80396A0C 0039266C  2C 04 00 00 */	cmpwi r4, 0
/* 80396A10 00392670  40 80 00 0C */	bge lbl_80396A1C
/* 80396A14 00392674  38 60 00 00 */	li r3, 0
/* 80396A18 00392678  4E 80 00 20 */	blr 
lbl_80396A1C:
/* 80396A1C 0039267C  1C 04 00 0C */	mulli r0, r4, 0xc
/* 80396A20 00392680  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80396A24 00392684  7C 63 02 14 */	add r3, r3, r0
/* 80396A28 00392688  4E 80 00 20 */	blr 

.global func_80396A2C
func_80396A2C:
/* 80396A2C 0039268C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396A30 00392690  7C 08 02 A6 */	mflr r0
/* 80396A34 00392694  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396A38 00392698  4B FF FF C1 */	bl func_803969F8
/* 80396A3C 0039269C  2C 03 00 00 */	cmpwi r3, 0
/* 80396A40 003926A0  41 82 00 0C */	beq lbl_80396A4C
/* 80396A44 003926A4  A0 63 00 04 */	lhz r3, 4(r3)
/* 80396A48 003926A8  48 00 00 08 */	b lbl_80396A50
lbl_80396A4C:
/* 80396A4C 003926AC  38 60 00 00 */	li r3, 0
lbl_80396A50:
/* 80396A50 003926B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396A54 003926B4  7C 08 03 A6 */	mtlr r0
/* 80396A58 003926B8  38 21 00 10 */	addi r1, r1, 0x10
/* 80396A5C 003926BC  4E 80 00 20 */	blr 

.global func_80396A60
func_80396A60:
/* 80396A60 003926C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396A64 003926C4  7C 08 02 A6 */	mflr r0
/* 80396A68 003926C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396A6C 003926CC  4B FF FF 8D */	bl func_803969F8
/* 80396A70 003926D0  2C 03 00 00 */	cmpwi r3, 0
/* 80396A74 003926D4  41 82 00 0C */	beq lbl_80396A80
/* 80396A78 003926D8  A0 63 00 06 */	lhz r3, 6(r3)
/* 80396A7C 003926DC  48 00 00 08 */	b lbl_80396A84
lbl_80396A80:
/* 80396A80 003926E0  38 60 00 00 */	li r3, 0
lbl_80396A84:
/* 80396A84 003926E4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396A88 003926E8  7C 08 03 A6 */	mtlr r0
/* 80396A8C 003926EC  38 21 00 10 */	addi r1, r1, 0x10
/* 80396A90 003926F0  4E 80 00 20 */	blr 

.global func_80396A94
func_80396A94:
/* 80396A94 003926F4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396A98 003926F8  7C 08 02 A6 */	mflr r0
/* 80396A9C 003926FC  2C 04 00 00 */	cmpwi r4, 0
/* 80396AA0 00392700  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396AA4 00392704  38 00 00 00 */	li r0, 0
/* 80396AA8 00392708  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396AAC 0039270C  7C 7F 1B 78 */	mr r31, r3
/* 80396AB0 00392710  90 03 00 00 */	stw r0, 0(r3)
/* 80396AB4 00392714  41 82 00 08 */	beq lbl_80396ABC
/* 80396AB8 00392718  48 00 00 7D */	bl func_80396B34
lbl_80396ABC:
/* 80396ABC 0039271C  7F E3 FB 78 */	mr r3, r31
/* 80396AC0 00392720  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396AC4 00392724  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396AC8 00392728  7C 08 03 A6 */	mtlr r0
/* 80396ACC 0039272C  38 21 00 10 */	addi r1, r1, 0x10
/* 80396AD0 00392730  4E 80 00 20 */	blr 

.global func_80396AD4
func_80396AD4:
/* 80396AD4 00392734  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396AD8 00392738  7C 08 02 A6 */	mflr r0
/* 80396ADC 0039273C  2C 03 00 00 */	cmpwi r3, 0
/* 80396AE0 00392740  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396AE4 00392744  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396AE8 00392748  7C 9F 23 78 */	mr r31, r4
/* 80396AEC 0039274C  93 C1 00 08 */	stw r30, 8(r1)
/* 80396AF0 00392750  7C 7E 1B 78 */	mr r30, r3
/* 80396AF4 00392754  41 82 00 24 */	beq lbl_80396B18
/* 80396AF8 00392758  80 03 00 00 */	lwz r0, 0(r3)
/* 80396AFC 0039275C  2C 00 00 00 */	cmpwi r0, 0
/* 80396B00 00392760  41 82 00 08 */	beq lbl_80396B08
/* 80396B04 00392764  48 00 01 95 */	bl func_80396C98
lbl_80396B08:
/* 80396B08 00392768  2C 1F 00 00 */	cmpwi r31, 0
/* 80396B0C 0039276C  40 81 00 0C */	ble lbl_80396B18
/* 80396B10 00392770  7F C3 F3 78 */	mr r3, r30
/* 80396B14 00392774  4B E4 3F A5 */	bl __dl__FPv
lbl_80396B18:
/* 80396B18 00392778  7F C3 F3 78 */	mr r3, r30
/* 80396B1C 0039277C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396B20 00392780  83 C1 00 08 */	lwz r30, 8(r1)
/* 80396B24 00392784  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396B28 00392788  7C 08 03 A6 */	mtlr r0
/* 80396B2C 0039278C  38 21 00 10 */	addi r1, r1, 0x10
/* 80396B30 00392790  4E 80 00 20 */	blr 

.global func_80396B34
func_80396B34:
/* 80396B34 00392794  2C 04 00 00 */	cmpwi r4, 0
/* 80396B38 00392798  40 82 00 0C */	bne lbl_80396B44
/* 80396B3C 0039279C  38 60 FF FF */	li r3, -1
/* 80396B40 003927A0  4E 80 00 20 */	blr 
lbl_80396B44:
/* 80396B44 003927A4  80 03 00 00 */	lwz r0, 0(r3)
/* 80396B48 003927A8  2C 00 00 00 */	cmpwi r0, 0
/* 80396B4C 003927AC  41 82 00 0C */	beq lbl_80396B58
/* 80396B50 003927B0  38 60 FF FE */	li r3, -2
/* 80396B54 003927B4  4E 80 00 20 */	blr 
lbl_80396B58:
/* 80396B58 003927B8  80 04 00 04 */	lwz r0, 4(r4)
/* 80396B5C 003927BC  28 00 00 20 */	cmplwi r0, 0x20
/* 80396B60 003927C0  41 82 00 0C */	beq lbl_80396B6C
/* 80396B64 003927C4  38 60 FF FD */	li r3, -3
/* 80396B68 003927C8  4E 80 00 20 */	blr 
lbl_80396B6C:
/* 80396B6C 003927CC  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80396B70 003927D0  2C 00 00 00 */	cmpwi r0, 0
/* 80396B74 003927D4  40 82 01 0C */	bne lbl_80396C80
/* 80396B78 003927D8  80 04 00 08 */	lwz r0, 8(r4)
/* 80396B7C 003927DC  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80396B80 003927E0  7C E0 22 14 */	add r7, r0, r4
/* 80396B84 003927E4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396B88 003927E8  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80396B8C 003927EC  7C C6 22 14 */	add r6, r6, r4
/* 80396B90 003927F0  7C A5 22 14 */	add r5, r5, r4
/* 80396B94 003927F4  90 E4 00 08 */	stw r7, 8(r4)
/* 80396B98 003927F8  2C 00 00 00 */	cmpwi r0, 0
/* 80396B9C 003927FC  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80396BA0 00392800  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80396BA4 00392804  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80396BA8 00392808  41 82 00 0C */	beq lbl_80396BB4
/* 80396BAC 0039280C  7C 00 22 14 */	add r0, r0, r4
/* 80396BB0 00392810  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80396BB4:
/* 80396BB4 00392814  2C 07 00 00 */	cmpwi r7, 0
/* 80396BB8 00392818  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396BBC 0039281C  41 82 00 BC */	beq lbl_80396C78
/* 80396BC0 00392820  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80396BC4 00392824  7C 09 03 A6 */	mtctr r0
/* 80396BC8 00392828  41 82 00 94 */	beq lbl_80396C5C
lbl_80396BCC:
/* 80396BCC 0039282C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396BD0 00392830  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396BD4 00392834  7C 00 22 14 */	add r0, r0, r4
/* 80396BD8 00392838  7C 06 21 2E */	stwx r0, r6, r4
/* 80396BDC 0039283C  80 C5 00 04 */	lwz r6, 4(r5)
/* 80396BE0 00392840  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396BE4 00392844  7C 00 22 14 */	add r0, r0, r4
/* 80396BE8 00392848  7C 06 21 2E */	stwx r0, r6, r4
/* 80396BEC 0039284C  80 C5 00 08 */	lwz r6, 8(r5)
/* 80396BF0 00392850  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396BF4 00392854  7C 00 22 14 */	add r0, r0, r4
/* 80396BF8 00392858  7C 06 21 2E */	stwx r0, r6, r4
/* 80396BFC 0039285C  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80396C00 00392860  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396C04 00392864  7C 00 22 14 */	add r0, r0, r4
/* 80396C08 00392868  7C 06 21 2E */	stwx r0, r6, r4
/* 80396C0C 0039286C  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80396C10 00392870  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396C14 00392874  7C 00 22 14 */	add r0, r0, r4
/* 80396C18 00392878  7C 06 21 2E */	stwx r0, r6, r4
/* 80396C1C 0039287C  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80396C20 00392880  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396C24 00392884  7C 00 22 14 */	add r0, r0, r4
/* 80396C28 00392888  7C 06 21 2E */	stwx r0, r6, r4
/* 80396C2C 0039288C  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80396C30 00392890  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396C34 00392894  7C 00 22 14 */	add r0, r0, r4
/* 80396C38 00392898  7C 06 21 2E */	stwx r0, r6, r4
/* 80396C3C 0039289C  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80396C40 003928A0  38 A5 00 20 */	addi r5, r5, 0x20
/* 80396C44 003928A4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396C48 003928A8  7C 00 22 14 */	add r0, r0, r4
/* 80396C4C 003928AC  7C 06 21 2E */	stwx r0, r6, r4
/* 80396C50 003928B0  42 00 FF 7C */	bdnz lbl_80396BCC
/* 80396C54 003928B4  70 E7 00 07 */	andi. r7, r7, 7
/* 80396C58 003928B8  41 82 00 20 */	beq lbl_80396C78
lbl_80396C5C:
/* 80396C5C 003928BC  7C E9 03 A6 */	mtctr r7
lbl_80396C60:
/* 80396C60 003928C0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396C64 003928C4  38 A5 00 04 */	addi r5, r5, 4
/* 80396C68 003928C8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396C6C 003928CC  7C 00 22 14 */	add r0, r0, r4
/* 80396C70 003928D0  7C 06 21 2E */	stwx r0, r6, r4
/* 80396C74 003928D4  42 00 FF EC */	bdnz lbl_80396C60
lbl_80396C78:
/* 80396C78 003928D8  38 00 00 01 */	li r0, 1
/* 80396C7C 003928DC  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80396C80:
/* 80396C80 003928E0  90 83 00 00 */	stw r4, 0(r3)
/* 80396C84 003928E4  38 60 00 00 */	li r3, 0
/* 80396C88 003928E8  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80396C8C 003928EC  38 05 00 01 */	addi r0, r5, 1
/* 80396C90 003928F0  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80396C94 003928F4  4E 80 00 20 */	blr 

.global func_80396C98
func_80396C98:
/* 80396C98 003928F8  80 83 00 00 */	lwz r4, 0(r3)
/* 80396C9C 003928FC  38 A0 00 00 */	li r5, 0
/* 80396CA0 00392900  2C 04 00 00 */	cmpwi r4, 0
/* 80396CA4 00392904  41 82 00 20 */	beq lbl_80396CC4
/* 80396CA8 00392908  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80396CAC 0039290C  2C 05 00 00 */	cmpwi r5, 0
/* 80396CB0 00392910  41 82 00 0C */	beq lbl_80396CBC
/* 80396CB4 00392914  38 A5 FF FF */	addi r5, r5, -1
/* 80396CB8 00392918  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80396CBC:
/* 80396CBC 0039291C  38 00 00 00 */	li r0, 0
/* 80396CC0 00392920  90 03 00 00 */	stw r0, 0(r3)
lbl_80396CC4:
/* 80396CC4 00392924  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80396CC8 00392928  4E 80 00 20 */	blr 

.global func_80396CCC
func_80396CCC:
/* 80396CCC 0039292C  80 63 00 00 */	lwz r3, 0(r3)
/* 80396CD0 00392930  2C 03 00 00 */	cmpwi r3, 0
/* 80396CD4 00392934  40 82 00 0C */	bne lbl_80396CE0
/* 80396CD8 00392938  38 60 00 00 */	li r3, 0
/* 80396CDC 0039293C  4E 80 00 20 */	blr 
lbl_80396CE0:
/* 80396CE0 00392940  2C 04 00 00 */	cmpwi r4, 0
/* 80396CE4 00392944  40 80 00 0C */	bge lbl_80396CF0
/* 80396CE8 00392948  38 60 00 00 */	li r3, 0
/* 80396CEC 0039294C  4E 80 00 20 */	blr 
lbl_80396CF0:
/* 80396CF0 00392950  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80396CF4 00392954  54 80 28 34 */	slwi r0, r4, 5
/* 80396CF8 00392958  7C 63 02 14 */	add r3, r3, r0
/* 80396CFC 0039295C  4E 80 00 20 */	blr 

.global func_80396D00
func_80396D00:
/* 80396D00 00392960  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396D04 00392964  7C 08 02 A6 */	mflr r0
/* 80396D08 00392968  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396D0C 0039296C  4B FF FF C1 */	bl func_80396CCC
/* 80396D10 00392970  2C 03 00 00 */	cmpwi r3, 0
/* 80396D14 00392974  41 82 00 0C */	beq lbl_80396D20
/* 80396D18 00392978  80 63 00 00 */	lwz r3, 0(r3)
/* 80396D1C 0039297C  48 00 00 08 */	b lbl_80396D24
lbl_80396D20:
/* 80396D20 00392980  38 60 00 00 */	li r3, 0
lbl_80396D24:
/* 80396D24 00392984  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396D28 00392988  7C 08 03 A6 */	mtlr r0
/* 80396D2C 0039298C  38 21 00 10 */	addi r1, r1, 0x10
/* 80396D30 00392990  4E 80 00 20 */	blr 

.global func_80396D34
func_80396D34:
/* 80396D34 00392994  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396D38 00392998  7C 08 02 A6 */	mflr r0
/* 80396D3C 0039299C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396D40 003929A0  4B FF FF 8D */	bl func_80396CCC
/* 80396D44 003929A4  2C 03 00 00 */	cmpwi r3, 0
/* 80396D48 003929A8  41 82 00 0C */	beq lbl_80396D54
/* 80396D4C 003929AC  80 63 00 04 */	lwz r3, 4(r3)
/* 80396D50 003929B0  48 00 00 08 */	b lbl_80396D58
lbl_80396D54:
/* 80396D54 003929B4  38 60 00 00 */	li r3, 0
lbl_80396D58:
/* 80396D58 003929B8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396D5C 003929BC  7C 08 03 A6 */	mtlr r0
/* 80396D60 003929C0  38 21 00 10 */	addi r1, r1, 0x10
/* 80396D64 003929C4  4E 80 00 20 */	blr 

.global func_80396D68
func_80396D68:
/* 80396D68 003929C8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396D6C 003929CC  7C 08 02 A6 */	mflr r0
/* 80396D70 003929D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396D74 003929D4  4B FF FF 59 */	bl func_80396CCC
/* 80396D78 003929D8  2C 03 00 00 */	cmpwi r3, 0
/* 80396D7C 003929DC  41 82 00 0C */	beq lbl_80396D88
/* 80396D80 003929E0  80 63 00 08 */	lwz r3, 8(r3)
/* 80396D84 003929E4  48 00 00 08 */	b lbl_80396D8C
lbl_80396D88:
/* 80396D88 003929E8  38 60 00 00 */	li r3, 0
lbl_80396D8C:
/* 80396D8C 003929EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396D90 003929F0  7C 08 03 A6 */	mtlr r0
/* 80396D94 003929F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80396D98 003929F8  4E 80 00 20 */	blr 

.global func_80396D9C
func_80396D9C:
/* 80396D9C 003929FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396DA0 00392A00  7C 08 02 A6 */	mflr r0
/* 80396DA4 00392A04  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396DA8 00392A08  4B FF FF 25 */	bl func_80396CCC
/* 80396DAC 00392A0C  2C 03 00 00 */	cmpwi r3, 0
/* 80396DB0 00392A10  41 82 00 0C */	beq lbl_80396DBC
/* 80396DB4 00392A14  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80396DB8 00392A18  48 00 00 08 */	b lbl_80396DC0
lbl_80396DBC:
/* 80396DBC 00392A1C  38 60 00 00 */	li r3, 0
lbl_80396DC0:
/* 80396DC0 00392A20  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396DC4 00392A24  7C 08 03 A6 */	mtlr r0
/* 80396DC8 00392A28  38 21 00 10 */	addi r1, r1, 0x10
/* 80396DCC 00392A2C  4E 80 00 20 */	blr 

.global func_80396DD0
func_80396DD0:
/* 80396DD0 00392A30  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396DD4 00392A34  7C 08 02 A6 */	mflr r0
/* 80396DD8 00392A38  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396DDC 00392A3C  4B FF FE F1 */	bl func_80396CCC
/* 80396DE0 00392A40  2C 03 00 00 */	cmpwi r3, 0
/* 80396DE4 00392A44  41 82 00 0C */	beq lbl_80396DF0
/* 80396DE8 00392A48  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80396DEC 00392A4C  48 00 00 08 */	b lbl_80396DF4
lbl_80396DF0:
/* 80396DF0 00392A50  38 60 00 00 */	li r3, 0
lbl_80396DF4:
/* 80396DF4 00392A54  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396DF8 00392A58  7C 08 03 A6 */	mtlr r0
/* 80396DFC 00392A5C  38 21 00 10 */	addi r1, r1, 0x10
/* 80396E00 00392A60  4E 80 00 20 */	blr 

.global func_80396E04
func_80396E04:
/* 80396E04 00392A64  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396E08 00392A68  7C 08 02 A6 */	mflr r0
/* 80396E0C 00392A6C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396E10 00392A70  4B FF FE BD */	bl func_80396CCC
/* 80396E14 00392A74  2C 03 00 00 */	cmpwi r3, 0
/* 80396E18 00392A78  41 82 00 0C */	beq lbl_80396E24
/* 80396E1C 00392A7C  80 63 00 14 */	lwz r3, 0x14(r3)
/* 80396E20 00392A80  48 00 00 08 */	b lbl_80396E28
lbl_80396E24:
/* 80396E24 00392A84  38 60 00 00 */	li r3, 0
lbl_80396E28:
/* 80396E28 00392A88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396E2C 00392A8C  7C 08 03 A6 */	mtlr r0
/* 80396E30 00392A90  38 21 00 10 */	addi r1, r1, 0x10
/* 80396E34 00392A94  4E 80 00 20 */	blr 

.global func_80396E38
func_80396E38:
/* 80396E38 00392A98  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396E3C 00392A9C  7C 08 02 A6 */	mflr r0
/* 80396E40 00392AA0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396E44 00392AA4  4B FF FE 89 */	bl func_80396CCC
/* 80396E48 00392AA8  2C 03 00 00 */	cmpwi r3, 0
/* 80396E4C 00392AAC  41 82 00 0C */	beq lbl_80396E58
/* 80396E50 00392AB0  80 63 00 18 */	lwz r3, 0x18(r3)
/* 80396E54 00392AB4  48 00 00 08 */	b lbl_80396E5C
lbl_80396E58:
/* 80396E58 00392AB8  38 60 00 00 */	li r3, 0
lbl_80396E5C:
/* 80396E5C 00392ABC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396E60 00392AC0  7C 08 03 A6 */	mtlr r0
/* 80396E64 00392AC4  38 21 00 10 */	addi r1, r1, 0x10
/* 80396E68 00392AC8  4E 80 00 20 */	blr 

.global func_80396E6C
func_80396E6C:
/* 80396E6C 00392ACC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396E70 00392AD0  7C 08 02 A6 */	mflr r0
/* 80396E74 00392AD4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396E78 00392AD8  4B FF FE 55 */	bl func_80396CCC
/* 80396E7C 00392ADC  2C 03 00 00 */	cmpwi r3, 0
/* 80396E80 00392AE0  41 82 00 0C */	beq lbl_80396E8C
/* 80396E84 00392AE4  80 63 00 1C */	lwz r3, 0x1c(r3)
/* 80396E88 00392AE8  48 00 00 08 */	b lbl_80396E90
lbl_80396E8C:
/* 80396E8C 00392AEC  38 60 00 00 */	li r3, 0
lbl_80396E90:
/* 80396E90 00392AF0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396E94 00392AF4  7C 08 03 A6 */	mtlr r0
/* 80396E98 00392AF8  38 21 00 10 */	addi r1, r1, 0x10
/* 80396E9C 00392AFC  4E 80 00 20 */	blr 

.global func_80396EA0
func_80396EA0:
/* 80396EA0 00392B00  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396EA4 00392B04  7C 08 02 A6 */	mflr r0
/* 80396EA8 00392B08  2C 04 00 00 */	cmpwi r4, 0
/* 80396EAC 00392B0C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396EB0 00392B10  38 00 00 00 */	li r0, 0
/* 80396EB4 00392B14  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396EB8 00392B18  7C 7F 1B 78 */	mr r31, r3
/* 80396EBC 00392B1C  90 03 00 00 */	stw r0, 0(r3)
/* 80396EC0 00392B20  41 82 00 08 */	beq lbl_80396EC8
/* 80396EC4 00392B24  48 00 00 7D */	bl func_80396F40
lbl_80396EC8:
/* 80396EC8 00392B28  7F E3 FB 78 */	mr r3, r31
/* 80396ECC 00392B2C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396ED0 00392B30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396ED4 00392B34  7C 08 03 A6 */	mtlr r0
/* 80396ED8 00392B38  38 21 00 10 */	addi r1, r1, 0x10
/* 80396EDC 00392B3C  4E 80 00 20 */	blr 

.global func_80396EE0
func_80396EE0:
/* 80396EE0 00392B40  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80396EE4 00392B44  7C 08 02 A6 */	mflr r0
/* 80396EE8 00392B48  2C 03 00 00 */	cmpwi r3, 0
/* 80396EEC 00392B4C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80396EF0 00392B50  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80396EF4 00392B54  7C 9F 23 78 */	mr r31, r4
/* 80396EF8 00392B58  93 C1 00 08 */	stw r30, 8(r1)
/* 80396EFC 00392B5C  7C 7E 1B 78 */	mr r30, r3
/* 80396F00 00392B60  41 82 00 24 */	beq lbl_80396F24
/* 80396F04 00392B64  80 03 00 00 */	lwz r0, 0(r3)
/* 80396F08 00392B68  2C 00 00 00 */	cmpwi r0, 0
/* 80396F0C 00392B6C  41 82 00 08 */	beq lbl_80396F14
/* 80396F10 00392B70  48 00 01 95 */	bl func_803970A4
lbl_80396F14:
/* 80396F14 00392B74  2C 1F 00 00 */	cmpwi r31, 0
/* 80396F18 00392B78  40 81 00 0C */	ble lbl_80396F24
/* 80396F1C 00392B7C  7F C3 F3 78 */	mr r3, r30
/* 80396F20 00392B80  4B E4 3B 99 */	bl __dl__FPv
lbl_80396F24:
/* 80396F24 00392B84  7F C3 F3 78 */	mr r3, r30
/* 80396F28 00392B88  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80396F2C 00392B8C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80396F30 00392B90  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80396F34 00392B94  7C 08 03 A6 */	mtlr r0
/* 80396F38 00392B98  38 21 00 10 */	addi r1, r1, 0x10
/* 80396F3C 00392B9C  4E 80 00 20 */	blr 

.global func_80396F40
func_80396F40:
/* 80396F40 00392BA0  2C 04 00 00 */	cmpwi r4, 0
/* 80396F44 00392BA4  40 82 00 0C */	bne lbl_80396F50
/* 80396F48 00392BA8  38 60 FF FF */	li r3, -1
/* 80396F4C 00392BAC  4E 80 00 20 */	blr 
lbl_80396F50:
/* 80396F50 00392BB0  80 03 00 00 */	lwz r0, 0(r3)
/* 80396F54 00392BB4  2C 00 00 00 */	cmpwi r0, 0
/* 80396F58 00392BB8  41 82 00 0C */	beq lbl_80396F64
/* 80396F5C 00392BBC  38 60 FF FE */	li r3, -2
/* 80396F60 00392BC0  4E 80 00 20 */	blr 
lbl_80396F64:
/* 80396F64 00392BC4  80 04 00 04 */	lwz r0, 4(r4)
/* 80396F68 00392BC8  28 00 00 2C */	cmplwi r0, 0x2c
/* 80396F6C 00392BCC  41 82 00 0C */	beq lbl_80396F78
/* 80396F70 00392BD0  38 60 FF FD */	li r3, -3
/* 80396F74 00392BD4  4E 80 00 20 */	blr 
lbl_80396F78:
/* 80396F78 00392BD8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80396F7C 00392BDC  2C 00 00 00 */	cmpwi r0, 0
/* 80396F80 00392BE0  40 82 01 0C */	bne lbl_8039708C
/* 80396F84 00392BE4  80 04 00 08 */	lwz r0, 8(r4)
/* 80396F88 00392BE8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80396F8C 00392BEC  7C E0 22 14 */	add r7, r0, r4
/* 80396F90 00392BF0  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396F94 00392BF4  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80396F98 00392BF8  7C C6 22 14 */	add r6, r6, r4
/* 80396F9C 00392BFC  7C A5 22 14 */	add r5, r5, r4
/* 80396FA0 00392C00  90 E4 00 08 */	stw r7, 8(r4)
/* 80396FA4 00392C04  2C 00 00 00 */	cmpwi r0, 0
/* 80396FA8 00392C08  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80396FAC 00392C0C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80396FB0 00392C10  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80396FB4 00392C14  41 82 00 0C */	beq lbl_80396FC0
/* 80396FB8 00392C18  7C 00 22 14 */	add r0, r0, r4
/* 80396FBC 00392C1C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80396FC0:
/* 80396FC0 00392C20  2C 07 00 00 */	cmpwi r7, 0
/* 80396FC4 00392C24  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80396FC8 00392C28  41 82 00 BC */	beq lbl_80397084
/* 80396FCC 00392C2C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80396FD0 00392C30  7C 09 03 A6 */	mtctr r0
/* 80396FD4 00392C34  41 82 00 94 */	beq lbl_80397068
lbl_80396FD8:
/* 80396FD8 00392C38  80 C5 00 00 */	lwz r6, 0(r5)
/* 80396FDC 00392C3C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396FE0 00392C40  7C 00 22 14 */	add r0, r0, r4
/* 80396FE4 00392C44  7C 06 21 2E */	stwx r0, r6, r4
/* 80396FE8 00392C48  80 C5 00 04 */	lwz r6, 4(r5)
/* 80396FEC 00392C4C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80396FF0 00392C50  7C 00 22 14 */	add r0, r0, r4
/* 80396FF4 00392C54  7C 06 21 2E */	stwx r0, r6, r4
/* 80396FF8 00392C58  80 C5 00 08 */	lwz r6, 8(r5)
/* 80396FFC 00392C5C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397000 00392C60  7C 00 22 14 */	add r0, r0, r4
/* 80397004 00392C64  7C 06 21 2E */	stwx r0, r6, r4
/* 80397008 00392C68  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039700C 00392C6C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397010 00392C70  7C 00 22 14 */	add r0, r0, r4
/* 80397014 00392C74  7C 06 21 2E */	stwx r0, r6, r4
/* 80397018 00392C78  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039701C 00392C7C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397020 00392C80  7C 00 22 14 */	add r0, r0, r4
/* 80397024 00392C84  7C 06 21 2E */	stwx r0, r6, r4
/* 80397028 00392C88  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039702C 00392C8C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397030 00392C90  7C 00 22 14 */	add r0, r0, r4
/* 80397034 00392C94  7C 06 21 2E */	stwx r0, r6, r4
/* 80397038 00392C98  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039703C 00392C9C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397040 00392CA0  7C 00 22 14 */	add r0, r0, r4
/* 80397044 00392CA4  7C 06 21 2E */	stwx r0, r6, r4
/* 80397048 00392CA8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039704C 00392CAC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80397050 00392CB0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397054 00392CB4  7C 00 22 14 */	add r0, r0, r4
/* 80397058 00392CB8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039705C 00392CBC  42 00 FF 7C */	bdnz lbl_80396FD8
/* 80397060 00392CC0  70 E7 00 07 */	andi. r7, r7, 7
/* 80397064 00392CC4  41 82 00 20 */	beq lbl_80397084
lbl_80397068:
/* 80397068 00392CC8  7C E9 03 A6 */	mtctr r7
lbl_8039706C:
/* 8039706C 00392CCC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80397070 00392CD0  38 A5 00 04 */	addi r5, r5, 4
/* 80397074 00392CD4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397078 00392CD8  7C 00 22 14 */	add r0, r0, r4
/* 8039707C 00392CDC  7C 06 21 2E */	stwx r0, r6, r4
/* 80397080 00392CE0  42 00 FF EC */	bdnz lbl_8039706C
lbl_80397084:
/* 80397084 00392CE4  38 00 00 01 */	li r0, 1
/* 80397088 00392CE8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039708C:
/* 8039708C 00392CEC  90 83 00 00 */	stw r4, 0(r3)
/* 80397090 00392CF0  38 60 00 00 */	li r3, 0
/* 80397094 00392CF4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397098 00392CF8  38 05 00 01 */	addi r0, r5, 1
/* 8039709C 00392CFC  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803970A0 00392D00  4E 80 00 20 */	blr 

.global func_803970A4
func_803970A4:
/* 803970A4 00392D04  80 83 00 00 */	lwz r4, 0(r3)
/* 803970A8 00392D08  38 A0 00 00 */	li r5, 0
/* 803970AC 00392D0C  2C 04 00 00 */	cmpwi r4, 0
/* 803970B0 00392D10  41 82 00 20 */	beq lbl_803970D0
/* 803970B4 00392D14  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803970B8 00392D18  2C 05 00 00 */	cmpwi r5, 0
/* 803970BC 00392D1C  41 82 00 0C */	beq lbl_803970C8
/* 803970C0 00392D20  38 A5 FF FF */	addi r5, r5, -1
/* 803970C4 00392D24  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803970C8:
/* 803970C8 00392D28  38 00 00 00 */	li r0, 0
/* 803970CC 00392D2C  90 03 00 00 */	stw r0, 0(r3)
lbl_803970D0:
/* 803970D0 00392D30  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803970D4 00392D34  4E 80 00 20 */	blr 

.global func_803970D8
func_803970D8:
/* 803970D8 00392D38  80 63 00 00 */	lwz r3, 0(r3)
/* 803970DC 00392D3C  2C 03 00 00 */	cmpwi r3, 0
/* 803970E0 00392D40  40 82 00 0C */	bne lbl_803970EC
/* 803970E4 00392D44  38 60 00 00 */	li r3, 0
/* 803970E8 00392D48  4E 80 00 20 */	blr 
lbl_803970EC:
/* 803970EC 00392D4C  2C 04 00 00 */	cmpwi r4, 0
/* 803970F0 00392D50  40 80 00 0C */	bge lbl_803970FC
/* 803970F4 00392D54  38 60 00 00 */	li r3, 0
/* 803970F8 00392D58  4E 80 00 20 */	blr 
lbl_803970FC:
/* 803970FC 00392D5C  1C 04 00 2C */	mulli r0, r4, 0x2c
/* 80397100 00392D60  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80397104 00392D64  7C 63 02 14 */	add r3, r3, r0
/* 80397108 00392D68  4E 80 00 20 */	blr 

.global func_8039710C
func_8039710C:
/* 8039710C 00392D6C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397110 00392D70  7C 08 02 A6 */	mflr r0
/* 80397114 00392D74  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397118 00392D78  4B FF FF C1 */	bl func_803970D8
/* 8039711C 00392D7C  2C 03 00 00 */	cmpwi r3, 0
/* 80397120 00392D80  41 82 00 0C */	beq lbl_8039712C
/* 80397124 00392D84  80 63 00 00 */	lwz r3, 0(r3)
/* 80397128 00392D88  48 00 00 08 */	b lbl_80397130
lbl_8039712C:
/* 8039712C 00392D8C  38 60 00 00 */	li r3, 0
lbl_80397130:
/* 80397130 00392D90  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397134 00392D94  7C 08 03 A6 */	mtlr r0
/* 80397138 00392D98  38 21 00 10 */	addi r1, r1, 0x10
/* 8039713C 00392D9C  4E 80 00 20 */	blr 

.global func_80397140
func_80397140:
/* 80397140 00392DA0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397144 00392DA4  7C 08 02 A6 */	mflr r0
/* 80397148 00392DA8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039714C 00392DAC  4B FF FF 8D */	bl func_803970D8
/* 80397150 00392DB0  2C 03 00 00 */	cmpwi r3, 0
/* 80397154 00392DB4  41 82 00 0C */	beq lbl_80397160
/* 80397158 00392DB8  80 63 00 04 */	lwz r3, 4(r3)
/* 8039715C 00392DBC  48 00 00 08 */	b lbl_80397164
lbl_80397160:
/* 80397160 00392DC0  38 60 00 00 */	li r3, 0
lbl_80397164:
/* 80397164 00392DC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397168 00392DC8  7C 08 03 A6 */	mtlr r0
/* 8039716C 00392DCC  38 21 00 10 */	addi r1, r1, 0x10
/* 80397170 00392DD0  4E 80 00 20 */	blr 

.global func_80397174
func_80397174:
/* 80397174 00392DD4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397178 00392DD8  7C 08 02 A6 */	mflr r0
/* 8039717C 00392DDC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397180 00392DE0  4B FF FF 59 */	bl func_803970D8
/* 80397184 00392DE4  2C 03 00 00 */	cmpwi r3, 0
/* 80397188 00392DE8  41 82 00 0C */	beq lbl_80397194
/* 8039718C 00392DEC  80 63 00 08 */	lwz r3, 8(r3)
/* 80397190 00392DF0  48 00 00 08 */	b lbl_80397198
lbl_80397194:
/* 80397194 00392DF4  38 60 00 00 */	li r3, 0
lbl_80397198:
/* 80397198 00392DF8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039719C 00392DFC  7C 08 03 A6 */	mtlr r0
/* 803971A0 00392E00  38 21 00 10 */	addi r1, r1, 0x10
/* 803971A4 00392E04  4E 80 00 20 */	blr 

.global func_803971A8
func_803971A8:
/* 803971A8 00392E08  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803971AC 00392E0C  7C 08 02 A6 */	mflr r0
/* 803971B0 00392E10  90 01 00 14 */	stw r0, 0x14(r1)
/* 803971B4 00392E14  4B FF FF 25 */	bl func_803970D8
/* 803971B8 00392E18  2C 03 00 00 */	cmpwi r3, 0
/* 803971BC 00392E1C  41 82 00 0C */	beq lbl_803971C8
/* 803971C0 00392E20  80 63 00 0C */	lwz r3, 0xc(r3)
/* 803971C4 00392E24  48 00 00 08 */	b lbl_803971CC
lbl_803971C8:
/* 803971C8 00392E28  38 60 00 00 */	li r3, 0
lbl_803971CC:
/* 803971CC 00392E2C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803971D0 00392E30  7C 08 03 A6 */	mtlr r0
/* 803971D4 00392E34  38 21 00 10 */	addi r1, r1, 0x10
/* 803971D8 00392E38  4E 80 00 20 */	blr 

.global func_803971DC
func_803971DC:
/* 803971DC 00392E3C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803971E0 00392E40  7C 08 02 A6 */	mflr r0
/* 803971E4 00392E44  90 01 00 14 */	stw r0, 0x14(r1)
/* 803971E8 00392E48  4B FF FE F1 */	bl func_803970D8
/* 803971EC 00392E4C  2C 03 00 00 */	cmpwi r3, 0
/* 803971F0 00392E50  41 82 00 0C */	beq lbl_803971FC
/* 803971F4 00392E54  80 63 00 10 */	lwz r3, 0x10(r3)
/* 803971F8 00392E58  48 00 00 08 */	b lbl_80397200
lbl_803971FC:
/* 803971FC 00392E5C  38 60 00 00 */	li r3, 0
lbl_80397200:
/* 80397200 00392E60  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397204 00392E64  7C 08 03 A6 */	mtlr r0
/* 80397208 00392E68  38 21 00 10 */	addi r1, r1, 0x10
/* 8039720C 00392E6C  4E 80 00 20 */	blr 

.global func_80397210
func_80397210:
/* 80397210 00392E70  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397214 00392E74  7C 08 02 A6 */	mflr r0
/* 80397218 00392E78  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039721C 00392E7C  4B FF FE BD */	bl func_803970D8
/* 80397220 00392E80  2C 03 00 00 */	cmpwi r3, 0
/* 80397224 00392E84  41 82 00 0C */	beq lbl_80397230
/* 80397228 00392E88  80 63 00 14 */	lwz r3, 0x14(r3)
/* 8039722C 00392E8C  48 00 00 08 */	b lbl_80397234
lbl_80397230:
/* 80397230 00392E90  38 60 00 00 */	li r3, 0
lbl_80397234:
/* 80397234 00392E94  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397238 00392E98  7C 08 03 A6 */	mtlr r0
/* 8039723C 00392E9C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397240 00392EA0  4E 80 00 20 */	blr 

.global func_80397244
func_80397244:
/* 80397244 00392EA4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397248 00392EA8  7C 08 02 A6 */	mflr r0
/* 8039724C 00392EAC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397250 00392EB0  4B FF FE 89 */	bl func_803970D8
/* 80397254 00392EB4  2C 03 00 00 */	cmpwi r3, 0
/* 80397258 00392EB8  41 82 00 0C */	beq lbl_80397264
/* 8039725C 00392EBC  80 63 00 18 */	lwz r3, 0x18(r3)
/* 80397260 00392EC0  48 00 00 08 */	b lbl_80397268
lbl_80397264:
/* 80397264 00392EC4  38 60 00 00 */	li r3, 0
lbl_80397268:
/* 80397268 00392EC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039726C 00392ECC  7C 08 03 A6 */	mtlr r0
/* 80397270 00392ED0  38 21 00 10 */	addi r1, r1, 0x10
/* 80397274 00392ED4  4E 80 00 20 */	blr 

.global func_80397278
func_80397278:
/* 80397278 00392ED8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039727C 00392EDC  7C 08 02 A6 */	mflr r0
/* 80397280 00392EE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397284 00392EE4  4B FF FE 55 */	bl func_803970D8
/* 80397288 00392EE8  2C 03 00 00 */	cmpwi r3, 0
/* 8039728C 00392EEC  41 82 00 0C */	beq lbl_80397298
/* 80397290 00392EF0  88 63 00 28 */	lbz r3, 0x28(r3)
/* 80397294 00392EF4  48 00 00 08 */	b lbl_8039729C
lbl_80397298:
/* 80397298 00392EF8  38 60 00 00 */	li r3, 0
lbl_8039729C:
/* 8039729C 00392EFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803972A0 00392F00  7C 08 03 A6 */	mtlr r0
/* 803972A4 00392F04  38 21 00 10 */	addi r1, r1, 0x10
/* 803972A8 00392F08  4E 80 00 20 */	blr 

.global func_803972AC
func_803972AC:
/* 803972AC 00392F0C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803972B0 00392F10  7C 08 02 A6 */	mflr r0
/* 803972B4 00392F14  90 01 00 14 */	stw r0, 0x14(r1)
/* 803972B8 00392F18  4B FF FE 21 */	bl func_803970D8
/* 803972BC 00392F1C  2C 03 00 00 */	cmpwi r3, 0
/* 803972C0 00392F20  41 82 00 0C */	beq lbl_803972CC
/* 803972C4 00392F24  C0 23 00 1C */	lfs f1, 0x1c(r3)
/* 803972C8 00392F28  48 00 00 08 */	b lbl_803972D0
lbl_803972CC:
/* 803972CC 00392F2C  C0 22 A9 18 */	lfs f1, lbl_80642F18-_SDA2_BASE_(r2)
lbl_803972D0:
/* 803972D0 00392F30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803972D4 00392F34  7C 08 03 A6 */	mtlr r0
/* 803972D8 00392F38  38 21 00 10 */	addi r1, r1, 0x10
/* 803972DC 00392F3C  4E 80 00 20 */	blr 

.global func_803972E0
func_803972E0:
/* 803972E0 00392F40  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803972E4 00392F44  7C 08 02 A6 */	mflr r0
/* 803972E8 00392F48  90 01 00 14 */	stw r0, 0x14(r1)
/* 803972EC 00392F4C  4B FF FD ED */	bl func_803970D8
/* 803972F0 00392F50  2C 03 00 00 */	cmpwi r3, 0
/* 803972F4 00392F54  41 82 00 0C */	beq lbl_80397300
/* 803972F8 00392F58  C0 23 00 20 */	lfs f1, 0x20(r3)
/* 803972FC 00392F5C  48 00 00 08 */	b lbl_80397304
lbl_80397300:
/* 80397300 00392F60  C0 22 A9 18 */	lfs f1, lbl_80642F18-_SDA2_BASE_(r2)
lbl_80397304:
/* 80397304 00392F64  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397308 00392F68  7C 08 03 A6 */	mtlr r0
/* 8039730C 00392F6C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397310 00392F70  4E 80 00 20 */	blr 

.global func_80397314
func_80397314:
/* 80397314 00392F74  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397318 00392F78  7C 08 02 A6 */	mflr r0
/* 8039731C 00392F7C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397320 00392F80  4B FF FD B9 */	bl func_803970D8
/* 80397324 00392F84  2C 03 00 00 */	cmpwi r3, 0
/* 80397328 00392F88  41 82 00 0C */	beq lbl_80397334
/* 8039732C 00392F8C  80 63 00 24 */	lwz r3, 0x24(r3)
/* 80397330 00392F90  48 00 00 08 */	b lbl_80397338
lbl_80397334:
/* 80397334 00392F94  38 60 00 00 */	li r3, 0
lbl_80397338:
/* 80397338 00392F98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039733C 00392F9C  7C 08 03 A6 */	mtlr r0
/* 80397340 00392FA0  38 21 00 10 */	addi r1, r1, 0x10
/* 80397344 00392FA4  4E 80 00 20 */	blr 

.global func_80397348
func_80397348:
/* 80397348 00392FA8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039734C 00392FAC  7C 08 02 A6 */	mflr r0
/* 80397350 00392FB0  2C 04 00 00 */	cmpwi r4, 0
/* 80397354 00392FB4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397358 00392FB8  38 00 00 00 */	li r0, 0
/* 8039735C 00392FBC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397360 00392FC0  7C 7F 1B 78 */	mr r31, r3
/* 80397364 00392FC4  90 03 00 00 */	stw r0, 0(r3)
/* 80397368 00392FC8  41 82 00 08 */	beq lbl_80397370
/* 8039736C 00392FCC  48 00 00 7D */	bl func_803973E8
lbl_80397370:
/* 80397370 00392FD0  7F E3 FB 78 */	mr r3, r31
/* 80397374 00392FD4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397378 00392FD8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039737C 00392FDC  7C 08 03 A6 */	mtlr r0
/* 80397380 00392FE0  38 21 00 10 */	addi r1, r1, 0x10
/* 80397384 00392FE4  4E 80 00 20 */	blr 

.global func_80397388
func_80397388:
/* 80397388 00392FE8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039738C 00392FEC  7C 08 02 A6 */	mflr r0
/* 80397390 00392FF0  2C 03 00 00 */	cmpwi r3, 0
/* 80397394 00392FF4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397398 00392FF8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039739C 00392FFC  7C 9F 23 78 */	mr r31, r4
/* 803973A0 00393000  93 C1 00 08 */	stw r30, 8(r1)
/* 803973A4 00393004  7C 7E 1B 78 */	mr r30, r3
/* 803973A8 00393008  41 82 00 24 */	beq lbl_803973CC
/* 803973AC 0039300C  80 03 00 00 */	lwz r0, 0(r3)
/* 803973B0 00393010  2C 00 00 00 */	cmpwi r0, 0
/* 803973B4 00393014  41 82 00 08 */	beq lbl_803973BC
/* 803973B8 00393018  48 00 01 95 */	bl func_8039754C
lbl_803973BC:
/* 803973BC 0039301C  2C 1F 00 00 */	cmpwi r31, 0
/* 803973C0 00393020  40 81 00 0C */	ble lbl_803973CC
/* 803973C4 00393024  7F C3 F3 78 */	mr r3, r30
/* 803973C8 00393028  4B E4 36 F1 */	bl __dl__FPv
lbl_803973CC:
/* 803973CC 0039302C  7F C3 F3 78 */	mr r3, r30
/* 803973D0 00393030  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803973D4 00393034  83 C1 00 08 */	lwz r30, 8(r1)
/* 803973D8 00393038  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803973DC 0039303C  7C 08 03 A6 */	mtlr r0
/* 803973E0 00393040  38 21 00 10 */	addi r1, r1, 0x10
/* 803973E4 00393044  4E 80 00 20 */	blr 

.global func_803973E8
func_803973E8:
/* 803973E8 00393048  2C 04 00 00 */	cmpwi r4, 0
/* 803973EC 0039304C  40 82 00 0C */	bne lbl_803973F8
/* 803973F0 00393050  38 60 FF FF */	li r3, -1
/* 803973F4 00393054  4E 80 00 20 */	blr 
lbl_803973F8:
/* 803973F8 00393058  80 03 00 00 */	lwz r0, 0(r3)
/* 803973FC 0039305C  2C 00 00 00 */	cmpwi r0, 0
/* 80397400 00393060  41 82 00 0C */	beq lbl_8039740C
/* 80397404 00393064  38 60 FF FE */	li r3, -2
/* 80397408 00393068  4E 80 00 20 */	blr 
lbl_8039740C:
/* 8039740C 0039306C  80 04 00 04 */	lwz r0, 4(r4)
/* 80397410 00393070  28 00 00 06 */	cmplwi r0, 6
/* 80397414 00393074  41 82 00 0C */	beq lbl_80397420
/* 80397418 00393078  38 60 FF FD */	li r3, -3
/* 8039741C 0039307C  4E 80 00 20 */	blr 
lbl_80397420:
/* 80397420 00393080  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80397424 00393084  2C 00 00 00 */	cmpwi r0, 0
/* 80397428 00393088  40 82 01 0C */	bne lbl_80397534
/* 8039742C 0039308C  80 04 00 08 */	lwz r0, 8(r4)
/* 80397430 00393090  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80397434 00393094  7C E0 22 14 */	add r7, r0, r4
/* 80397438 00393098  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039743C 0039309C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80397440 003930A0  7C C6 22 14 */	add r6, r6, r4
/* 80397444 003930A4  7C A5 22 14 */	add r5, r5, r4
/* 80397448 003930A8  90 E4 00 08 */	stw r7, 8(r4)
/* 8039744C 003930AC  2C 00 00 00 */	cmpwi r0, 0
/* 80397450 003930B0  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80397454 003930B4  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80397458 003930B8  90 A4 00 18 */	stw r5, 0x18(r4)
/* 8039745C 003930BC  41 82 00 0C */	beq lbl_80397468
/* 80397460 003930C0  7C 00 22 14 */	add r0, r0, r4
/* 80397464 003930C4  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80397468:
/* 80397468 003930C8  2C 07 00 00 */	cmpwi r7, 0
/* 8039746C 003930CC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80397470 003930D0  41 82 00 BC */	beq lbl_8039752C
/* 80397474 003930D4  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80397478 003930D8  7C 09 03 A6 */	mtctr r0
/* 8039747C 003930DC  41 82 00 94 */	beq lbl_80397510
lbl_80397480:
/* 80397480 003930E0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80397484 003930E4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397488 003930E8  7C 00 22 14 */	add r0, r0, r4
/* 8039748C 003930EC  7C 06 21 2E */	stwx r0, r6, r4
/* 80397490 003930F0  80 C5 00 04 */	lwz r6, 4(r5)
/* 80397494 003930F4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397498 003930F8  7C 00 22 14 */	add r0, r0, r4
/* 8039749C 003930FC  7C 06 21 2E */	stwx r0, r6, r4
/* 803974A0 00393100  80 C5 00 08 */	lwz r6, 8(r5)
/* 803974A4 00393104  7C 06 20 2E */	lwzx r0, r6, r4
/* 803974A8 00393108  7C 00 22 14 */	add r0, r0, r4
/* 803974AC 0039310C  7C 06 21 2E */	stwx r0, r6, r4
/* 803974B0 00393110  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803974B4 00393114  7C 06 20 2E */	lwzx r0, r6, r4
/* 803974B8 00393118  7C 00 22 14 */	add r0, r0, r4
/* 803974BC 0039311C  7C 06 21 2E */	stwx r0, r6, r4
/* 803974C0 00393120  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803974C4 00393124  7C 06 20 2E */	lwzx r0, r6, r4
/* 803974C8 00393128  7C 00 22 14 */	add r0, r0, r4
/* 803974CC 0039312C  7C 06 21 2E */	stwx r0, r6, r4
/* 803974D0 00393130  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803974D4 00393134  7C 06 20 2E */	lwzx r0, r6, r4
/* 803974D8 00393138  7C 00 22 14 */	add r0, r0, r4
/* 803974DC 0039313C  7C 06 21 2E */	stwx r0, r6, r4
/* 803974E0 00393140  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 803974E4 00393144  7C 06 20 2E */	lwzx r0, r6, r4
/* 803974E8 00393148  7C 00 22 14 */	add r0, r0, r4
/* 803974EC 0039314C  7C 06 21 2E */	stwx r0, r6, r4
/* 803974F0 00393150  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 803974F4 00393154  38 A5 00 20 */	addi r5, r5, 0x20
/* 803974F8 00393158  7C 06 20 2E */	lwzx r0, r6, r4
/* 803974FC 0039315C  7C 00 22 14 */	add r0, r0, r4
/* 80397500 00393160  7C 06 21 2E */	stwx r0, r6, r4
/* 80397504 00393164  42 00 FF 7C */	bdnz lbl_80397480
/* 80397508 00393168  70 E7 00 07 */	andi. r7, r7, 7
/* 8039750C 0039316C  41 82 00 20 */	beq lbl_8039752C
lbl_80397510:
/* 80397510 00393170  7C E9 03 A6 */	mtctr r7
lbl_80397514:
/* 80397514 00393174  80 C5 00 00 */	lwz r6, 0(r5)
/* 80397518 00393178  38 A5 00 04 */	addi r5, r5, 4
/* 8039751C 0039317C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397520 00393180  7C 00 22 14 */	add r0, r0, r4
/* 80397524 00393184  7C 06 21 2E */	stwx r0, r6, r4
/* 80397528 00393188  42 00 FF EC */	bdnz lbl_80397514
lbl_8039752C:
/* 8039752C 0039318C  38 00 00 01 */	li r0, 1
/* 80397530 00393190  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80397534:
/* 80397534 00393194  90 83 00 00 */	stw r4, 0(r3)
/* 80397538 00393198  38 60 00 00 */	li r3, 0
/* 8039753C 0039319C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397540 003931A0  38 05 00 01 */	addi r0, r5, 1
/* 80397544 003931A4  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80397548 003931A8  4E 80 00 20 */	blr 

.global func_8039754C
func_8039754C:
/* 8039754C 003931AC  80 83 00 00 */	lwz r4, 0(r3)
/* 80397550 003931B0  38 A0 00 00 */	li r5, 0
/* 80397554 003931B4  2C 04 00 00 */	cmpwi r4, 0
/* 80397558 003931B8  41 82 00 20 */	beq lbl_80397578
/* 8039755C 003931BC  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397560 003931C0  2C 05 00 00 */	cmpwi r5, 0
/* 80397564 003931C4  41 82 00 0C */	beq lbl_80397570
/* 80397568 003931C8  38 A5 FF FF */	addi r5, r5, -1
/* 8039756C 003931CC  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80397570:
/* 80397570 003931D0  38 00 00 00 */	li r0, 0
/* 80397574 003931D4  90 03 00 00 */	stw r0, 0(r3)
lbl_80397578:
/* 80397578 003931D8  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 8039757C 003931DC  4E 80 00 20 */	blr 

.global func_80397580
func_80397580:
/* 80397580 003931E0  80 63 00 00 */	lwz r3, 0(r3)
/* 80397584 003931E4  2C 03 00 00 */	cmpwi r3, 0
/* 80397588 003931E8  40 82 00 0C */	bne lbl_80397594
/* 8039758C 003931EC  38 60 00 00 */	li r3, 0
/* 80397590 003931F0  4E 80 00 20 */	blr 
lbl_80397594:
/* 80397594 003931F4  2C 04 00 00 */	cmpwi r4, 0
/* 80397598 003931F8  40 80 00 0C */	bge lbl_803975A4
/* 8039759C 003931FC  38 60 00 00 */	li r3, 0
/* 803975A0 00393200  4E 80 00 20 */	blr 
lbl_803975A4:
/* 803975A4 00393204  1C 04 00 06 */	mulli r0, r4, 6
/* 803975A8 00393208  80 63 00 10 */	lwz r3, 0x10(r3)
/* 803975AC 0039320C  7C 63 02 14 */	add r3, r3, r0
/* 803975B0 00393210  4E 80 00 20 */	blr 

.global func_803975B4
func_803975B4:
/* 803975B4 00393214  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803975B8 00393218  7C 08 02 A6 */	mflr r0
/* 803975BC 0039321C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803975C0 00393220  4B FF FF C1 */	bl func_80397580
/* 803975C4 00393224  2C 03 00 00 */	cmpwi r3, 0
/* 803975C8 00393228  41 82 00 0C */	beq lbl_803975D4
/* 803975CC 0039322C  A0 63 00 00 */	lhz r3, 0(r3)
/* 803975D0 00393230  48 00 00 08 */	b lbl_803975D8
lbl_803975D4:
/* 803975D4 00393234  38 60 00 00 */	li r3, 0
lbl_803975D8:
/* 803975D8 00393238  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803975DC 0039323C  7C 08 03 A6 */	mtlr r0
/* 803975E0 00393240  38 21 00 10 */	addi r1, r1, 0x10
/* 803975E4 00393244  4E 80 00 20 */	blr 

.global func_803975E8
func_803975E8:
/* 803975E8 00393248  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803975EC 0039324C  7C 08 02 A6 */	mflr r0
/* 803975F0 00393250  90 01 00 14 */	stw r0, 0x14(r1)
/* 803975F4 00393254  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803975F8 00393258  7C BF 2B 78 */	mr r31, r5
/* 803975FC 0039325C  4B FF FF 85 */	bl func_80397580
/* 80397600 00393260  2C 03 00 00 */	cmpwi r3, 0
/* 80397604 00393264  40 82 00 0C */	bne lbl_80397610
/* 80397608 00393268  38 60 00 00 */	li r3, 0
/* 8039760C 0039326C  48 00 00 1C */	b lbl_80397628
lbl_80397610:
/* 80397610 00393270  28 1F 00 03 */	cmplwi r31, 3
/* 80397614 00393274  41 80 00 0C */	blt lbl_80397620
/* 80397618 00393278  38 60 00 00 */	li r3, 0
/* 8039761C 0039327C  48 00 00 0C */	b lbl_80397628
lbl_80397620:
/* 80397620 00393280  7C 63 FA 14 */	add r3, r3, r31
/* 80397624 00393284  88 63 00 02 */	lbz r3, 2(r3)
lbl_80397628:
/* 80397628 00393288  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039762C 0039328C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397630 00393290  7C 08 03 A6 */	mtlr r0
/* 80397634 00393294  38 21 00 10 */	addi r1, r1, 0x10
/* 80397638 00393298  4E 80 00 20 */	blr 

.global func_8039763C
func_8039763C:
/* 8039763C 0039329C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397640 003932A0  7C 08 02 A6 */	mflr r0
/* 80397644 003932A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397648 003932A8  4B FF FF 39 */	bl func_80397580
/* 8039764C 003932AC  2C 03 00 00 */	cmpwi r3, 0
/* 80397650 003932B0  41 82 00 0C */	beq lbl_8039765C
/* 80397654 003932B4  88 63 00 05 */	lbz r3, 5(r3)
/* 80397658 003932B8  48 00 00 08 */	b lbl_80397660
lbl_8039765C:
/* 8039765C 003932BC  38 60 00 00 */	li r3, 0
lbl_80397660:
/* 80397660 003932C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397664 003932C4  7C 08 03 A6 */	mtlr r0
/* 80397668 003932C8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039766C 003932CC  4E 80 00 20 */	blr 

.global func_80397670
func_80397670:
/* 80397670 003932D0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397674 003932D4  7C 08 02 A6 */	mflr r0
/* 80397678 003932D8  2C 04 00 00 */	cmpwi r4, 0
/* 8039767C 003932DC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397680 003932E0  38 00 00 00 */	li r0, 0
/* 80397684 003932E4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397688 003932E8  7C 7F 1B 78 */	mr r31, r3
/* 8039768C 003932EC  90 03 00 00 */	stw r0, 0(r3)
/* 80397690 003932F0  41 82 00 08 */	beq lbl_80397698
/* 80397694 003932F4  48 00 00 7D */	bl func_80397710
lbl_80397698:
/* 80397698 003932F8  7F E3 FB 78 */	mr r3, r31
/* 8039769C 003932FC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803976A0 00393300  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803976A4 00393304  7C 08 03 A6 */	mtlr r0
/* 803976A8 00393308  38 21 00 10 */	addi r1, r1, 0x10
/* 803976AC 0039330C  4E 80 00 20 */	blr 

.global func_803976B0
func_803976B0:
/* 803976B0 00393310  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803976B4 00393314  7C 08 02 A6 */	mflr r0
/* 803976B8 00393318  2C 03 00 00 */	cmpwi r3, 0
/* 803976BC 0039331C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803976C0 00393320  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803976C4 00393324  7C 9F 23 78 */	mr r31, r4
/* 803976C8 00393328  93 C1 00 08 */	stw r30, 8(r1)
/* 803976CC 0039332C  7C 7E 1B 78 */	mr r30, r3
/* 803976D0 00393330  41 82 00 24 */	beq lbl_803976F4
/* 803976D4 00393334  80 03 00 00 */	lwz r0, 0(r3)
/* 803976D8 00393338  2C 00 00 00 */	cmpwi r0, 0
/* 803976DC 0039333C  41 82 00 08 */	beq lbl_803976E4
/* 803976E0 00393340  48 00 01 95 */	bl func_80397874
lbl_803976E4:
/* 803976E4 00393344  2C 1F 00 00 */	cmpwi r31, 0
/* 803976E8 00393348  40 81 00 0C */	ble lbl_803976F4
/* 803976EC 0039334C  7F C3 F3 78 */	mr r3, r30
/* 803976F0 00393350  4B E4 33 C9 */	bl __dl__FPv
lbl_803976F4:
/* 803976F4 00393354  7F C3 F3 78 */	mr r3, r30
/* 803976F8 00393358  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803976FC 0039335C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80397700 00393360  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397704 00393364  7C 08 03 A6 */	mtlr r0
/* 80397708 00393368  38 21 00 10 */	addi r1, r1, 0x10
/* 8039770C 0039336C  4E 80 00 20 */	blr 

.global func_80397710
func_80397710:
/* 80397710 00393370  2C 04 00 00 */	cmpwi r4, 0
/* 80397714 00393374  40 82 00 0C */	bne lbl_80397720
/* 80397718 00393378  38 60 FF FF */	li r3, -1
/* 8039771C 0039337C  4E 80 00 20 */	blr 
lbl_80397720:
/* 80397720 00393380  80 03 00 00 */	lwz r0, 0(r3)
/* 80397724 00393384  2C 00 00 00 */	cmpwi r0, 0
/* 80397728 00393388  41 82 00 0C */	beq lbl_80397734
/* 8039772C 0039338C  38 60 FF FE */	li r3, -2
/* 80397730 00393390  4E 80 00 20 */	blr 
lbl_80397734:
/* 80397734 00393394  80 04 00 04 */	lwz r0, 4(r4)
/* 80397738 00393398  28 00 00 0E */	cmplwi r0, 0xe
/* 8039773C 0039339C  41 82 00 0C */	beq lbl_80397748
/* 80397740 003933A0  38 60 FF FD */	li r3, -3
/* 80397744 003933A4  4E 80 00 20 */	blr 
lbl_80397748:
/* 80397748 003933A8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8039774C 003933AC  2C 00 00 00 */	cmpwi r0, 0
/* 80397750 003933B0  40 82 01 0C */	bne lbl_8039785C
/* 80397754 003933B4  80 04 00 08 */	lwz r0, 8(r4)
/* 80397758 003933B8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039775C 003933BC  7C E0 22 14 */	add r7, r0, r4
/* 80397760 003933C0  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80397764 003933C4  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80397768 003933C8  7C C6 22 14 */	add r6, r6, r4
/* 8039776C 003933CC  7C A5 22 14 */	add r5, r5, r4
/* 80397770 003933D0  90 E4 00 08 */	stw r7, 8(r4)
/* 80397774 003933D4  2C 00 00 00 */	cmpwi r0, 0
/* 80397778 003933D8  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 8039777C 003933DC  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80397780 003933E0  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80397784 003933E4  41 82 00 0C */	beq lbl_80397790
/* 80397788 003933E8  7C 00 22 14 */	add r0, r0, r4
/* 8039778C 003933EC  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80397790:
/* 80397790 003933F0  2C 07 00 00 */	cmpwi r7, 0
/* 80397794 003933F4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80397798 003933F8  41 82 00 BC */	beq lbl_80397854
/* 8039779C 003933FC  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803977A0 00393400  7C 09 03 A6 */	mtctr r0
/* 803977A4 00393404  41 82 00 94 */	beq lbl_80397838
lbl_803977A8:
/* 803977A8 00393408  80 C5 00 00 */	lwz r6, 0(r5)
/* 803977AC 0039340C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803977B0 00393410  7C 00 22 14 */	add r0, r0, r4
/* 803977B4 00393414  7C 06 21 2E */	stwx r0, r6, r4
/* 803977B8 00393418  80 C5 00 04 */	lwz r6, 4(r5)
/* 803977BC 0039341C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803977C0 00393420  7C 00 22 14 */	add r0, r0, r4
/* 803977C4 00393424  7C 06 21 2E */	stwx r0, r6, r4
/* 803977C8 00393428  80 C5 00 08 */	lwz r6, 8(r5)
/* 803977CC 0039342C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803977D0 00393430  7C 00 22 14 */	add r0, r0, r4
/* 803977D4 00393434  7C 06 21 2E */	stwx r0, r6, r4
/* 803977D8 00393438  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803977DC 0039343C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803977E0 00393440  7C 00 22 14 */	add r0, r0, r4
/* 803977E4 00393444  7C 06 21 2E */	stwx r0, r6, r4
/* 803977E8 00393448  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803977EC 0039344C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803977F0 00393450  7C 00 22 14 */	add r0, r0, r4
/* 803977F4 00393454  7C 06 21 2E */	stwx r0, r6, r4
/* 803977F8 00393458  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 803977FC 0039345C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397800 00393460  7C 00 22 14 */	add r0, r0, r4
/* 80397804 00393464  7C 06 21 2E */	stwx r0, r6, r4
/* 80397808 00393468  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039780C 0039346C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397810 00393470  7C 00 22 14 */	add r0, r0, r4
/* 80397814 00393474  7C 06 21 2E */	stwx r0, r6, r4
/* 80397818 00393478  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039781C 0039347C  38 A5 00 20 */	addi r5, r5, 0x20
/* 80397820 00393480  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397824 00393484  7C 00 22 14 */	add r0, r0, r4
/* 80397828 00393488  7C 06 21 2E */	stwx r0, r6, r4
/* 8039782C 0039348C  42 00 FF 7C */	bdnz lbl_803977A8
/* 80397830 00393490  70 E7 00 07 */	andi. r7, r7, 7
/* 80397834 00393494  41 82 00 20 */	beq lbl_80397854
lbl_80397838:
/* 80397838 00393498  7C E9 03 A6 */	mtctr r7
lbl_8039783C:
/* 8039783C 0039349C  80 C5 00 00 */	lwz r6, 0(r5)
/* 80397840 003934A0  38 A5 00 04 */	addi r5, r5, 4
/* 80397844 003934A4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397848 003934A8  7C 00 22 14 */	add r0, r0, r4
/* 8039784C 003934AC  7C 06 21 2E */	stwx r0, r6, r4
/* 80397850 003934B0  42 00 FF EC */	bdnz lbl_8039783C
lbl_80397854:
/* 80397854 003934B4  38 00 00 01 */	li r0, 1
/* 80397858 003934B8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039785C:
/* 8039785C 003934BC  90 83 00 00 */	stw r4, 0(r3)
/* 80397860 003934C0  38 60 00 00 */	li r3, 0
/* 80397864 003934C4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397868 003934C8  38 05 00 01 */	addi r0, r5, 1
/* 8039786C 003934CC  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80397870 003934D0  4E 80 00 20 */	blr 

.global func_80397874
func_80397874:
/* 80397874 003934D4  80 83 00 00 */	lwz r4, 0(r3)
/* 80397878 003934D8  38 A0 00 00 */	li r5, 0
/* 8039787C 003934DC  2C 04 00 00 */	cmpwi r4, 0
/* 80397880 003934E0  41 82 00 20 */	beq lbl_803978A0
/* 80397884 003934E4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397888 003934E8  2C 05 00 00 */	cmpwi r5, 0
/* 8039788C 003934EC  41 82 00 0C */	beq lbl_80397898
/* 80397890 003934F0  38 A5 FF FF */	addi r5, r5, -1
/* 80397894 003934F4  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80397898:
/* 80397898 003934F8  38 00 00 00 */	li r0, 0
/* 8039789C 003934FC  90 03 00 00 */	stw r0, 0(r3)
lbl_803978A0:
/* 803978A0 00393500  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803978A4 00393504  4E 80 00 20 */	blr 

.global func_803978A8
func_803978A8:
/* 803978A8 00393508  80 63 00 00 */	lwz r3, 0(r3)
/* 803978AC 0039350C  2C 03 00 00 */	cmpwi r3, 0
/* 803978B0 00393510  40 82 00 0C */	bne lbl_803978BC
/* 803978B4 00393514  38 60 00 00 */	li r3, 0
/* 803978B8 00393518  4E 80 00 20 */	blr 
lbl_803978BC:
/* 803978BC 0039351C  2C 04 00 00 */	cmpwi r4, 0
/* 803978C0 00393520  40 80 00 0C */	bge lbl_803978CC
/* 803978C4 00393524  38 60 00 00 */	li r3, 0
/* 803978C8 00393528  4E 80 00 20 */	blr 
lbl_803978CC:
/* 803978CC 0039352C  1C 04 00 0E */	mulli r0, r4, 0xe
/* 803978D0 00393530  80 63 00 10 */	lwz r3, 0x10(r3)
/* 803978D4 00393534  7C 63 02 14 */	add r3, r3, r0
/* 803978D8 00393538  4E 80 00 20 */	blr 

.global func_803978DC
func_803978DC:
/* 803978DC 0039353C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803978E0 00393540  7C 08 02 A6 */	mflr r0
/* 803978E4 00393544  90 01 00 14 */	stw r0, 0x14(r1)
/* 803978E8 00393548  4B FF FF C1 */	bl func_803978A8
/* 803978EC 0039354C  2C 03 00 00 */	cmpwi r3, 0
/* 803978F0 00393550  41 82 00 0C */	beq lbl_803978FC
/* 803978F4 00393554  A0 63 00 00 */	lhz r3, 0(r3)
/* 803978F8 00393558  48 00 00 08 */	b lbl_80397900
lbl_803978FC:
/* 803978FC 0039355C  38 60 00 00 */	li r3, 0
lbl_80397900:
/* 80397900 00393560  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397904 00393564  7C 08 03 A6 */	mtlr r0
/* 80397908 00393568  38 21 00 10 */	addi r1, r1, 0x10
/* 8039790C 0039356C  4E 80 00 20 */	blr 

.global func_80397910
func_80397910:
/* 80397910 00393570  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397914 00393574  7C 08 02 A6 */	mflr r0
/* 80397918 00393578  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039791C 0039357C  4B FF FF 8D */	bl func_803978A8
/* 80397920 00393580  2C 03 00 00 */	cmpwi r3, 0
/* 80397924 00393584  41 82 00 0C */	beq lbl_80397930
/* 80397928 00393588  A0 63 00 02 */	lhz r3, 2(r3)
/* 8039792C 0039358C  48 00 00 08 */	b lbl_80397934
lbl_80397930:
/* 80397930 00393590  38 60 00 00 */	li r3, 0
lbl_80397934:
/* 80397934 00393594  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397938 00393598  7C 08 03 A6 */	mtlr r0
/* 8039793C 0039359C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397940 003935A0  4E 80 00 20 */	blr 

.global func_80397944
func_80397944:
/* 80397944 003935A4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397948 003935A8  7C 08 02 A6 */	mflr r0
/* 8039794C 003935AC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397950 003935B0  4B FF FF 59 */	bl func_803978A8
/* 80397954 003935B4  2C 03 00 00 */	cmpwi r3, 0
/* 80397958 003935B8  41 82 00 0C */	beq lbl_80397964
/* 8039795C 003935BC  A0 63 00 04 */	lhz r3, 4(r3)
/* 80397960 003935C0  48 00 00 08 */	b lbl_80397968
lbl_80397964:
/* 80397964 003935C4  38 60 00 00 */	li r3, 0
lbl_80397968:
/* 80397968 003935C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039796C 003935CC  7C 08 03 A6 */	mtlr r0
/* 80397970 003935D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80397974 003935D4  4E 80 00 20 */	blr 

.global func_80397978
func_80397978:
/* 80397978 003935D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039797C 003935DC  7C 08 02 A6 */	mflr r0
/* 80397980 003935E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397984 003935E4  4B FF FF 25 */	bl func_803978A8
/* 80397988 003935E8  2C 03 00 00 */	cmpwi r3, 0
/* 8039798C 003935EC  41 82 00 0C */	beq lbl_80397998
/* 80397990 003935F0  A0 63 00 06 */	lhz r3, 6(r3)
/* 80397994 003935F4  48 00 00 08 */	b lbl_8039799C
lbl_80397998:
/* 80397998 003935F8  38 60 00 00 */	li r3, 0
lbl_8039799C:
/* 8039799C 003935FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803979A0 00393600  7C 08 03 A6 */	mtlr r0
/* 803979A4 00393604  38 21 00 10 */	addi r1, r1, 0x10
/* 803979A8 00393608  4E 80 00 20 */	blr 

.global func_803979AC
func_803979AC:
/* 803979AC 0039360C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803979B0 00393610  7C 08 02 A6 */	mflr r0
/* 803979B4 00393614  90 01 00 14 */	stw r0, 0x14(r1)
/* 803979B8 00393618  4B FF FE F1 */	bl func_803978A8
/* 803979BC 0039361C  2C 03 00 00 */	cmpwi r3, 0
/* 803979C0 00393620  41 82 00 0C */	beq lbl_803979CC
/* 803979C4 00393624  A0 63 00 08 */	lhz r3, 8(r3)
/* 803979C8 00393628  48 00 00 08 */	b lbl_803979D0
lbl_803979CC:
/* 803979CC 0039362C  38 60 00 00 */	li r3, 0
lbl_803979D0:
/* 803979D0 00393630  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803979D4 00393634  7C 08 03 A6 */	mtlr r0
/* 803979D8 00393638  38 21 00 10 */	addi r1, r1, 0x10
/* 803979DC 0039363C  4E 80 00 20 */	blr 

.global func_803979E0
func_803979E0:
/* 803979E0 00393640  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803979E4 00393644  7C 08 02 A6 */	mflr r0
/* 803979E8 00393648  90 01 00 14 */	stw r0, 0x14(r1)
/* 803979EC 0039364C  4B FF FE BD */	bl func_803978A8
/* 803979F0 00393650  2C 03 00 00 */	cmpwi r3, 0
/* 803979F4 00393654  41 82 00 0C */	beq lbl_80397A00
/* 803979F8 00393658  A0 63 00 0A */	lhz r3, 0xa(r3)
/* 803979FC 0039365C  48 00 00 08 */	b lbl_80397A04
lbl_80397A00:
/* 80397A00 00393660  38 60 00 00 */	li r3, 0
lbl_80397A04:
/* 80397A04 00393664  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397A08 00393668  7C 08 03 A6 */	mtlr r0
/* 80397A0C 0039366C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397A10 00393670  4E 80 00 20 */	blr 

.global func_80397A14
func_80397A14:
/* 80397A14 00393674  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397A18 00393678  7C 08 02 A6 */	mflr r0
/* 80397A1C 0039367C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397A20 00393680  4B FF FE 89 */	bl func_803978A8
/* 80397A24 00393684  2C 03 00 00 */	cmpwi r3, 0
/* 80397A28 00393688  41 82 00 10 */	beq lbl_80397A38
/* 80397A2C 0039368C  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397A30 00393690  54 03 8F FE */	rlwinm r3, r0, 0x11, 0x1f, 0x1f
/* 80397A34 00393694  48 00 00 08 */	b lbl_80397A3C
lbl_80397A38:
/* 80397A38 00393698  38 60 00 00 */	li r3, 0
lbl_80397A3C:
/* 80397A3C 0039369C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397A40 003936A0  7C 08 03 A6 */	mtlr r0
/* 80397A44 003936A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80397A48 003936A8  4E 80 00 20 */	blr 

.global func_80397A4C
func_80397A4C:
/* 80397A4C 003936AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397A50 003936B0  7C 08 02 A6 */	mflr r0
/* 80397A54 003936B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397A58 003936B8  4B FF FE 51 */	bl func_803978A8
/* 80397A5C 003936BC  2C 03 00 00 */	cmpwi r3, 0
/* 80397A60 003936C0  41 82 00 10 */	beq lbl_80397A70
/* 80397A64 003936C4  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397A68 003936C8  54 03 97 FE */	rlwinm r3, r0, 0x12, 0x1f, 0x1f
/* 80397A6C 003936CC  48 00 00 08 */	b lbl_80397A74
lbl_80397A70:
/* 80397A70 003936D0  38 60 00 00 */	li r3, 0
lbl_80397A74:
/* 80397A74 003936D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397A78 003936D8  7C 08 03 A6 */	mtlr r0
/* 80397A7C 003936DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80397A80 003936E0  4E 80 00 20 */	blr 

.global func_80397A84
func_80397A84:
/* 80397A84 003936E4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397A88 003936E8  7C 08 02 A6 */	mflr r0
/* 80397A8C 003936EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397A90 003936F0  4B FF FE 19 */	bl func_803978A8
/* 80397A94 003936F4  2C 03 00 00 */	cmpwi r3, 0
/* 80397A98 003936F8  41 82 00 10 */	beq lbl_80397AA8
/* 80397A9C 003936FC  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397AA0 00393700  54 03 9F FE */	rlwinm r3, r0, 0x13, 0x1f, 0x1f
/* 80397AA4 00393704  48 00 00 08 */	b lbl_80397AAC
lbl_80397AA8:
/* 80397AA8 00393708  38 60 00 00 */	li r3, 0
lbl_80397AAC:
/* 80397AAC 0039370C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397AB0 00393710  7C 08 03 A6 */	mtlr r0
/* 80397AB4 00393714  38 21 00 10 */	addi r1, r1, 0x10
/* 80397AB8 00393718  4E 80 00 20 */	blr 

.global func_80397ABC
func_80397ABC:
/* 80397ABC 0039371C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397AC0 00393720  7C 08 02 A6 */	mflr r0
/* 80397AC4 00393724  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397AC8 00393728  4B FF FD E1 */	bl func_803978A8
/* 80397ACC 0039372C  2C 03 00 00 */	cmpwi r3, 0
/* 80397AD0 00393730  41 82 00 10 */	beq lbl_80397AE0
/* 80397AD4 00393734  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397AD8 00393738  54 03 A7 FE */	rlwinm r3, r0, 0x14, 0x1f, 0x1f
/* 80397ADC 0039373C  48 00 00 08 */	b lbl_80397AE4
lbl_80397AE0:
/* 80397AE0 00393740  38 60 00 00 */	li r3, 0
lbl_80397AE4:
/* 80397AE4 00393744  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397AE8 00393748  7C 08 03 A6 */	mtlr r0
/* 80397AEC 0039374C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397AF0 00393750  4E 80 00 20 */	blr 

.global func_80397AF4
func_80397AF4:
/* 80397AF4 00393754  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397AF8 00393758  7C 08 02 A6 */	mflr r0
/* 80397AFC 0039375C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397B00 00393760  4B FF FD A9 */	bl func_803978A8
/* 80397B04 00393764  2C 03 00 00 */	cmpwi r3, 0
/* 80397B08 00393768  41 82 00 10 */	beq lbl_80397B18
/* 80397B0C 0039376C  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397B10 00393770  54 03 AF FE */	rlwinm r3, r0, 0x15, 0x1f, 0x1f
/* 80397B14 00393774  48 00 00 08 */	b lbl_80397B1C
lbl_80397B18:
/* 80397B18 00393778  38 60 00 00 */	li r3, 0
lbl_80397B1C:
/* 80397B1C 0039377C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397B20 00393780  7C 08 03 A6 */	mtlr r0
/* 80397B24 00393784  38 21 00 10 */	addi r1, r1, 0x10
/* 80397B28 00393788  4E 80 00 20 */	blr 

.global func_80397B2C
func_80397B2C:
/* 80397B2C 0039378C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397B30 00393790  7C 08 02 A6 */	mflr r0
/* 80397B34 00393794  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397B38 00393798  4B FF FD 71 */	bl func_803978A8
/* 80397B3C 0039379C  2C 03 00 00 */	cmpwi r3, 0
/* 80397B40 003937A0  41 82 00 10 */	beq lbl_80397B50
/* 80397B44 003937A4  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397B48 003937A8  54 03 B7 FE */	rlwinm r3, r0, 0x16, 0x1f, 0x1f
/* 80397B4C 003937AC  48 00 00 08 */	b lbl_80397B54
lbl_80397B50:
/* 80397B50 003937B0  38 60 00 00 */	li r3, 0
lbl_80397B54:
/* 80397B54 003937B4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397B58 003937B8  7C 08 03 A6 */	mtlr r0
/* 80397B5C 003937BC  38 21 00 10 */	addi r1, r1, 0x10
/* 80397B60 003937C0  4E 80 00 20 */	blr 

.global func_80397B64
func_80397B64:
/* 80397B64 003937C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397B68 003937C8  7C 08 02 A6 */	mflr r0
/* 80397B6C 003937CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397B70 003937D0  4B FF FD 39 */	bl func_803978A8
/* 80397B74 003937D4  2C 03 00 00 */	cmpwi r3, 0
/* 80397B78 003937D8  41 82 00 10 */	beq lbl_80397B88
/* 80397B7C 003937DC  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397B80 003937E0  54 03 BF FE */	rlwinm r3, r0, 0x17, 0x1f, 0x1f
/* 80397B84 003937E4  48 00 00 08 */	b lbl_80397B8C
lbl_80397B88:
/* 80397B88 003937E8  38 60 00 00 */	li r3, 0
lbl_80397B8C:
/* 80397B8C 003937EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397B90 003937F0  7C 08 03 A6 */	mtlr r0
/* 80397B94 003937F4  38 21 00 10 */	addi r1, r1, 0x10
/* 80397B98 003937F8  4E 80 00 20 */	blr 

.global func_80397B9C
func_80397B9C:
/* 80397B9C 003937FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397BA0 00393800  7C 08 02 A6 */	mflr r0
/* 80397BA4 00393804  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397BA8 00393808  4B FF FD 01 */	bl func_803978A8
/* 80397BAC 0039380C  2C 03 00 00 */	cmpwi r3, 0
/* 80397BB0 00393810  41 82 00 10 */	beq lbl_80397BC0
/* 80397BB4 00393814  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397BB8 00393818  54 03 CF BE */	rlwinm r3, r0, 0x19, 0x1e, 0x1f
/* 80397BBC 0039381C  48 00 00 08 */	b lbl_80397BC4
lbl_80397BC0:
/* 80397BC0 00393820  38 60 00 00 */	li r3, 0
lbl_80397BC4:
/* 80397BC4 00393824  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397BC8 00393828  7C 08 03 A6 */	mtlr r0
/* 80397BCC 0039382C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397BD0 00393830  4E 80 00 20 */	blr 

.global func_80397BD4
func_80397BD4:
/* 80397BD4 00393834  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397BD8 00393838  7C 08 02 A6 */	mflr r0
/* 80397BDC 0039383C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397BE0 00393840  4B FF FC C9 */	bl func_803978A8
/* 80397BE4 00393844  2C 03 00 00 */	cmpwi r3, 0
/* 80397BE8 00393848  41 82 00 10 */	beq lbl_80397BF8
/* 80397BEC 0039384C  A0 03 00 0C */	lhz r0, 0xc(r3)
/* 80397BF0 00393850  54 03 06 7E */	clrlwi r3, r0, 0x19
/* 80397BF4 00393854  48 00 00 08 */	b lbl_80397BFC
lbl_80397BF8:
/* 80397BF8 00393858  38 60 00 00 */	li r3, 0
lbl_80397BFC:
/* 80397BFC 0039385C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397C00 00393860  7C 08 03 A6 */	mtlr r0
/* 80397C04 00393864  38 21 00 10 */	addi r1, r1, 0x10
/* 80397C08 00393868  4E 80 00 20 */	blr 

.global func_80397C0C
func_80397C0C:
/* 80397C0C 0039386C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397C10 00393870  7C 08 02 A6 */	mflr r0
/* 80397C14 00393874  2C 04 00 00 */	cmpwi r4, 0
/* 80397C18 00393878  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397C1C 0039387C  38 00 00 00 */	li r0, 0
/* 80397C20 00393880  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397C24 00393884  7C 7F 1B 78 */	mr r31, r3
/* 80397C28 00393888  90 03 00 00 */	stw r0, 0(r3)
/* 80397C2C 0039388C  41 82 00 08 */	beq lbl_80397C34
/* 80397C30 00393890  48 00 00 7D */	bl func_80397CAC
lbl_80397C34:
/* 80397C34 00393894  7F E3 FB 78 */	mr r3, r31
/* 80397C38 00393898  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397C3C 0039389C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397C40 003938A0  7C 08 03 A6 */	mtlr r0
/* 80397C44 003938A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80397C48 003938A8  4E 80 00 20 */	blr 

.global func_80397C4C
func_80397C4C:
/* 80397C4C 003938AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397C50 003938B0  7C 08 02 A6 */	mflr r0
/* 80397C54 003938B4  2C 03 00 00 */	cmpwi r3, 0
/* 80397C58 003938B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397C5C 003938BC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397C60 003938C0  7C 9F 23 78 */	mr r31, r4
/* 80397C64 003938C4  93 C1 00 08 */	stw r30, 8(r1)
/* 80397C68 003938C8  7C 7E 1B 78 */	mr r30, r3
/* 80397C6C 003938CC  41 82 00 24 */	beq lbl_80397C90
/* 80397C70 003938D0  80 03 00 00 */	lwz r0, 0(r3)
/* 80397C74 003938D4  2C 00 00 00 */	cmpwi r0, 0
/* 80397C78 003938D8  41 82 00 08 */	beq lbl_80397C80
/* 80397C7C 003938DC  48 00 01 95 */	bl func_80397E10
lbl_80397C80:
/* 80397C80 003938E0  2C 1F 00 00 */	cmpwi r31, 0
/* 80397C84 003938E4  40 81 00 0C */	ble lbl_80397C90
/* 80397C88 003938E8  7F C3 F3 78 */	mr r3, r30
/* 80397C8C 003938EC  4B E4 2E 2D */	bl __dl__FPv
lbl_80397C90:
/* 80397C90 003938F0  7F C3 F3 78 */	mr r3, r30
/* 80397C94 003938F4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397C98 003938F8  83 C1 00 08 */	lwz r30, 8(r1)
/* 80397C9C 003938FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397CA0 00393900  7C 08 03 A6 */	mtlr r0
/* 80397CA4 00393904  38 21 00 10 */	addi r1, r1, 0x10
/* 80397CA8 00393908  4E 80 00 20 */	blr 

.global func_80397CAC
func_80397CAC:
/* 80397CAC 0039390C  2C 04 00 00 */	cmpwi r4, 0
/* 80397CB0 00393910  40 82 00 0C */	bne lbl_80397CBC
/* 80397CB4 00393914  38 60 FF FF */	li r3, -1
/* 80397CB8 00393918  4E 80 00 20 */	blr 
lbl_80397CBC:
/* 80397CBC 0039391C  80 03 00 00 */	lwz r0, 0(r3)
/* 80397CC0 00393920  2C 00 00 00 */	cmpwi r0, 0
/* 80397CC4 00393924  41 82 00 0C */	beq lbl_80397CD0
/* 80397CC8 00393928  38 60 FF FE */	li r3, -2
/* 80397CCC 0039392C  4E 80 00 20 */	blr 
lbl_80397CD0:
/* 80397CD0 00393930  80 04 00 04 */	lwz r0, 4(r4)
/* 80397CD4 00393934  28 00 00 5C */	cmplwi r0, 0x5c
/* 80397CD8 00393938  41 82 00 0C */	beq lbl_80397CE4
/* 80397CDC 0039393C  38 60 FF FD */	li r3, -3
/* 80397CE0 00393940  4E 80 00 20 */	blr 
lbl_80397CE4:
/* 80397CE4 00393944  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80397CE8 00393948  2C 00 00 00 */	cmpwi r0, 0
/* 80397CEC 0039394C  40 82 01 0C */	bne lbl_80397DF8
/* 80397CF0 00393950  80 04 00 08 */	lwz r0, 8(r4)
/* 80397CF4 00393954  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80397CF8 00393958  7C E0 22 14 */	add r7, r0, r4
/* 80397CFC 0039395C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80397D00 00393960  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80397D04 00393964  7C C6 22 14 */	add r6, r6, r4
/* 80397D08 00393968  7C A5 22 14 */	add r5, r5, r4
/* 80397D0C 0039396C  90 E4 00 08 */	stw r7, 8(r4)
/* 80397D10 00393970  2C 00 00 00 */	cmpwi r0, 0
/* 80397D14 00393974  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80397D18 00393978  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80397D1C 0039397C  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80397D20 00393980  41 82 00 0C */	beq lbl_80397D2C
/* 80397D24 00393984  7C 00 22 14 */	add r0, r0, r4
/* 80397D28 00393988  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80397D2C:
/* 80397D2C 0039398C  2C 07 00 00 */	cmpwi r7, 0
/* 80397D30 00393990  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80397D34 00393994  41 82 00 BC */	beq lbl_80397DF0
/* 80397D38 00393998  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80397D3C 0039399C  7C 09 03 A6 */	mtctr r0
/* 80397D40 003939A0  41 82 00 94 */	beq lbl_80397DD4
lbl_80397D44:
/* 80397D44 003939A4  80 C5 00 00 */	lwz r6, 0(r5)
/* 80397D48 003939A8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397D4C 003939AC  7C 00 22 14 */	add r0, r0, r4
/* 80397D50 003939B0  7C 06 21 2E */	stwx r0, r6, r4
/* 80397D54 003939B4  80 C5 00 04 */	lwz r6, 4(r5)
/* 80397D58 003939B8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397D5C 003939BC  7C 00 22 14 */	add r0, r0, r4
/* 80397D60 003939C0  7C 06 21 2E */	stwx r0, r6, r4
/* 80397D64 003939C4  80 C5 00 08 */	lwz r6, 8(r5)
/* 80397D68 003939C8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397D6C 003939CC  7C 00 22 14 */	add r0, r0, r4
/* 80397D70 003939D0  7C 06 21 2E */	stwx r0, r6, r4
/* 80397D74 003939D4  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80397D78 003939D8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397D7C 003939DC  7C 00 22 14 */	add r0, r0, r4
/* 80397D80 003939E0  7C 06 21 2E */	stwx r0, r6, r4
/* 80397D84 003939E4  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80397D88 003939E8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397D8C 003939EC  7C 00 22 14 */	add r0, r0, r4
/* 80397D90 003939F0  7C 06 21 2E */	stwx r0, r6, r4
/* 80397D94 003939F4  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80397D98 003939F8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397D9C 003939FC  7C 00 22 14 */	add r0, r0, r4
/* 80397DA0 00393A00  7C 06 21 2E */	stwx r0, r6, r4
/* 80397DA4 00393A04  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80397DA8 00393A08  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397DAC 00393A0C  7C 00 22 14 */	add r0, r0, r4
/* 80397DB0 00393A10  7C 06 21 2E */	stwx r0, r6, r4
/* 80397DB4 00393A14  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80397DB8 00393A18  38 A5 00 20 */	addi r5, r5, 0x20
/* 80397DBC 00393A1C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397DC0 00393A20  7C 00 22 14 */	add r0, r0, r4
/* 80397DC4 00393A24  7C 06 21 2E */	stwx r0, r6, r4
/* 80397DC8 00393A28  42 00 FF 7C */	bdnz lbl_80397D44
/* 80397DCC 00393A2C  70 E7 00 07 */	andi. r7, r7, 7
/* 80397DD0 00393A30  41 82 00 20 */	beq lbl_80397DF0
lbl_80397DD4:
/* 80397DD4 00393A34  7C E9 03 A6 */	mtctr r7
lbl_80397DD8:
/* 80397DD8 00393A38  80 C5 00 00 */	lwz r6, 0(r5)
/* 80397DDC 00393A3C  38 A5 00 04 */	addi r5, r5, 4
/* 80397DE0 00393A40  7C 06 20 2E */	lwzx r0, r6, r4
/* 80397DE4 00393A44  7C 00 22 14 */	add r0, r0, r4
/* 80397DE8 00393A48  7C 06 21 2E */	stwx r0, r6, r4
/* 80397DEC 00393A4C  42 00 FF EC */	bdnz lbl_80397DD8
lbl_80397DF0:
/* 80397DF0 00393A50  38 00 00 01 */	li r0, 1
/* 80397DF4 00393A54  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80397DF8:
/* 80397DF8 00393A58  90 83 00 00 */	stw r4, 0(r3)
/* 80397DFC 00393A5C  38 60 00 00 */	li r3, 0
/* 80397E00 00393A60  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397E04 00393A64  38 05 00 01 */	addi r0, r5, 1
/* 80397E08 00393A68  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80397E0C 00393A6C  4E 80 00 20 */	blr 

.global func_80397E10
func_80397E10:
/* 80397E10 00393A70  80 83 00 00 */	lwz r4, 0(r3)
/* 80397E14 00393A74  38 A0 00 00 */	li r5, 0
/* 80397E18 00393A78  2C 04 00 00 */	cmpwi r4, 0
/* 80397E1C 00393A7C  41 82 00 20 */	beq lbl_80397E3C
/* 80397E20 00393A80  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80397E24 00393A84  2C 05 00 00 */	cmpwi r5, 0
/* 80397E28 00393A88  41 82 00 0C */	beq lbl_80397E34
/* 80397E2C 00393A8C  38 A5 FF FF */	addi r5, r5, -1
/* 80397E30 00393A90  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80397E34:
/* 80397E34 00393A94  38 00 00 00 */	li r0, 0
/* 80397E38 00393A98  90 03 00 00 */	stw r0, 0(r3)
lbl_80397E3C:
/* 80397E3C 00393A9C  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80397E40 00393AA0  4E 80 00 20 */	blr 

.global func_80397E44
func_80397E44:
/* 80397E44 00393AA4  80 63 00 00 */	lwz r3, 0(r3)
/* 80397E48 00393AA8  2C 03 00 00 */	cmpwi r3, 0
/* 80397E4C 00393AAC  40 82 00 0C */	bne lbl_80397E58
/* 80397E50 00393AB0  38 60 00 00 */	li r3, 0
/* 80397E54 00393AB4  4E 80 00 20 */	blr 
lbl_80397E58:
/* 80397E58 00393AB8  2C 04 00 00 */	cmpwi r4, 0
/* 80397E5C 00393ABC  40 80 00 0C */	bge lbl_80397E68
/* 80397E60 00393AC0  38 60 00 00 */	li r3, 0
/* 80397E64 00393AC4  4E 80 00 20 */	blr 
lbl_80397E68:
/* 80397E68 00393AC8  1C 04 00 5C */	mulli r0, r4, 0x5c
/* 80397E6C 00393ACC  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80397E70 00393AD0  7C 63 02 14 */	add r3, r3, r0
/* 80397E74 00393AD4  4E 80 00 20 */	blr 

.global func_80397E78
func_80397E78:
/* 80397E78 00393AD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397E7C 00393ADC  7C 08 02 A6 */	mflr r0
/* 80397E80 00393AE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397E84 00393AE4  4B FF FF C1 */	bl func_80397E44
/* 80397E88 00393AE8  2C 03 00 00 */	cmpwi r3, 0
/* 80397E8C 00393AEC  41 82 00 0C */	beq lbl_80397E98
/* 80397E90 00393AF0  A0 63 00 30 */	lhz r3, 0x30(r3)
/* 80397E94 00393AF4  48 00 00 08 */	b lbl_80397E9C
lbl_80397E98:
/* 80397E98 00393AF8  38 60 00 00 */	li r3, 0
lbl_80397E9C:
/* 80397E9C 00393AFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397EA0 00393B00  7C 08 03 A6 */	mtlr r0
/* 80397EA4 00393B04  38 21 00 10 */	addi r1, r1, 0x10
/* 80397EA8 00393B08  4E 80 00 20 */	blr 

.global func_80397EAC
func_80397EAC:
/* 80397EAC 00393B0C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397EB0 00393B10  7C 08 02 A6 */	mflr r0
/* 80397EB4 00393B14  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397EB8 00393B18  4B FF FF 8D */	bl func_80397E44
/* 80397EBC 00393B1C  2C 03 00 00 */	cmpwi r3, 0
/* 80397EC0 00393B20  41 82 00 0C */	beq lbl_80397ECC
/* 80397EC4 00393B24  88 63 00 4A */	lbz r3, 0x4a(r3)
/* 80397EC8 00393B28  48 00 00 08 */	b lbl_80397ED0
lbl_80397ECC:
/* 80397ECC 00393B2C  38 60 00 00 */	li r3, 0
lbl_80397ED0:
/* 80397ED0 00393B30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397ED4 00393B34  7C 08 03 A6 */	mtlr r0
/* 80397ED8 00393B38  38 21 00 10 */	addi r1, r1, 0x10
/* 80397EDC 00393B3C  4E 80 00 20 */	blr 

.global func_80397EE0
func_80397EE0:
/* 80397EE0 00393B40  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397EE4 00393B44  7C 08 02 A6 */	mflr r0
/* 80397EE8 00393B48  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397EEC 00393B4C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397EF0 00393B50  7C BF 2B 78 */	mr r31, r5
/* 80397EF4 00393B54  4B FF FF 51 */	bl func_80397E44
/* 80397EF8 00393B58  2C 03 00 00 */	cmpwi r3, 0
/* 80397EFC 00393B5C  40 82 00 0C */	bne lbl_80397F08
/* 80397F00 00393B60  38 60 00 00 */	li r3, 0
/* 80397F04 00393B64  48 00 00 1C */	b lbl_80397F20
lbl_80397F08:
/* 80397F08 00393B68  28 1F 00 02 */	cmplwi r31, 2
/* 80397F0C 00393B6C  41 80 00 0C */	blt lbl_80397F18
/* 80397F10 00393B70  38 60 00 00 */	li r3, 0
/* 80397F14 00393B74  48 00 00 0C */	b lbl_80397F20
lbl_80397F18:
/* 80397F18 00393B78  7C 63 FA 14 */	add r3, r3, r31
/* 80397F1C 00393B7C  88 63 00 4B */	lbz r3, 0x4b(r3)
lbl_80397F20:
/* 80397F20 00393B80  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397F24 00393B84  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397F28 00393B88  7C 08 03 A6 */	mtlr r0
/* 80397F2C 00393B8C  38 21 00 10 */	addi r1, r1, 0x10
/* 80397F30 00393B90  4E 80 00 20 */	blr 

.global func_80397F34
func_80397F34:
/* 80397F34 00393B94  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397F38 00393B98  7C 08 02 A6 */	mflr r0
/* 80397F3C 00393B9C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397F40 00393BA0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397F44 00393BA4  7C BF 2B 78 */	mr r31, r5
/* 80397F48 00393BA8  4B FF FE FD */	bl func_80397E44
/* 80397F4C 00393BAC  2C 03 00 00 */	cmpwi r3, 0
/* 80397F50 00393BB0  40 82 00 0C */	bne lbl_80397F5C
/* 80397F54 00393BB4  38 60 00 00 */	li r3, 0
/* 80397F58 00393BB8  48 00 00 20 */	b lbl_80397F78
lbl_80397F5C:
/* 80397F5C 00393BBC  28 1F 00 02 */	cmplwi r31, 2
/* 80397F60 00393BC0  41 80 00 0C */	blt lbl_80397F6C
/* 80397F64 00393BC4  38 60 00 00 */	li r3, 0
/* 80397F68 00393BC8  48 00 00 10 */	b lbl_80397F78
lbl_80397F6C:
/* 80397F6C 00393BCC  57 E0 08 3C */	slwi r0, r31, 1
/* 80397F70 00393BD0  7C 63 02 14 */	add r3, r3, r0
/* 80397F74 00393BD4  A0 63 00 36 */	lhz r3, 0x36(r3)
lbl_80397F78:
/* 80397F78 00393BD8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397F7C 00393BDC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397F80 00393BE0  7C 08 03 A6 */	mtlr r0
/* 80397F84 00393BE4  38 21 00 10 */	addi r1, r1, 0x10
/* 80397F88 00393BE8  4E 80 00 20 */	blr 

.global func_80397F8C
func_80397F8C:
/* 80397F8C 00393BEC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397F90 00393BF0  7C 08 02 A6 */	mflr r0
/* 80397F94 00393BF4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397F98 00393BF8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80397F9C 00393BFC  7C BF 2B 78 */	mr r31, r5
/* 80397FA0 00393C00  4B FF FE A5 */	bl func_80397E44
/* 80397FA4 00393C04  2C 03 00 00 */	cmpwi r3, 0
/* 80397FA8 00393C08  40 82 00 0C */	bne lbl_80397FB4
/* 80397FAC 00393C0C  38 60 00 00 */	li r3, 0
/* 80397FB0 00393C10  48 00 00 1C */	b lbl_80397FCC
lbl_80397FB4:
/* 80397FB4 00393C14  28 1F 00 02 */	cmplwi r31, 2
/* 80397FB8 00393C18  41 80 00 0C */	blt lbl_80397FC4
/* 80397FBC 00393C1C  38 60 00 00 */	li r3, 0
/* 80397FC0 00393C20  48 00 00 0C */	b lbl_80397FCC
lbl_80397FC4:
/* 80397FC4 00393C24  7C 63 FA 14 */	add r3, r3, r31
/* 80397FC8 00393C28  88 63 00 4D */	lbz r3, 0x4d(r3)
lbl_80397FCC:
/* 80397FCC 00393C2C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80397FD0 00393C30  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80397FD4 00393C34  7C 08 03 A6 */	mtlr r0
/* 80397FD8 00393C38  38 21 00 10 */	addi r1, r1, 0x10
/* 80397FDC 00393C3C  4E 80 00 20 */	blr 

.global func_80397FE0
func_80397FE0:
/* 80397FE0 00393C40  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80397FE4 00393C44  7C 08 02 A6 */	mflr r0
/* 80397FE8 00393C48  90 01 00 14 */	stw r0, 0x14(r1)
/* 80397FEC 00393C4C  4B FF FE 59 */	bl func_80397E44
/* 80397FF0 00393C50  2C 03 00 00 */	cmpwi r3, 0
/* 80397FF4 00393C54  41 82 00 0C */	beq lbl_80398000
/* 80397FF8 00393C58  88 63 00 4F */	lbz r3, 0x4f(r3)
/* 80397FFC 00393C5C  48 00 00 08 */	b lbl_80398004
lbl_80398000:
/* 80398000 00393C60  38 60 00 00 */	li r3, 0
lbl_80398004:
/* 80398004 00393C64  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398008 00393C68  7C 08 03 A6 */	mtlr r0
/* 8039800C 00393C6C  38 21 00 10 */	addi r1, r1, 0x10
/* 80398010 00393C70  4E 80 00 20 */	blr 

.global func_80398014
func_80398014:
/* 80398014 00393C74  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398018 00393C78  7C 08 02 A6 */	mflr r0
/* 8039801C 00393C7C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398020 00393C80  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80398024 00393C84  7C BF 2B 78 */	mr r31, r5
/* 80398028 00393C88  4B FF FE 1D */	bl func_80397E44
/* 8039802C 00393C8C  2C 03 00 00 */	cmpwi r3, 0
/* 80398030 00393C90  40 82 00 0C */	bne lbl_8039803C
/* 80398034 00393C94  38 60 00 00 */	li r3, 0
/* 80398038 00393C98  48 00 00 1C */	b lbl_80398054
lbl_8039803C:
/* 8039803C 00393C9C  28 1F 00 03 */	cmplwi r31, 3
/* 80398040 00393CA0  41 80 00 0C */	blt lbl_8039804C
/* 80398044 00393CA4  38 60 00 00 */	li r3, 0
/* 80398048 00393CA8  48 00 00 0C */	b lbl_80398054
lbl_8039804C:
/* 8039804C 00393CAC  7C 63 FA 14 */	add r3, r3, r31
/* 80398050 00393CB0  88 63 00 51 */	lbz r3, 0x51(r3)
lbl_80398054:
/* 80398054 00393CB4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398058 00393CB8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039805C 00393CBC  7C 08 03 A6 */	mtlr r0
/* 80398060 00393CC0  38 21 00 10 */	addi r1, r1, 0x10
/* 80398064 00393CC4  4E 80 00 20 */	blr 

.global func_80398068
func_80398068:
/* 80398068 00393CC8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039806C 00393CCC  7C 08 02 A6 */	mflr r0
/* 80398070 00393CD0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398074 00393CD4  4B FF FD D1 */	bl func_80397E44
/* 80398078 00393CD8  2C 03 00 00 */	cmpwi r3, 0
/* 8039807C 00393CDC  41 82 00 0C */	beq lbl_80398088
/* 80398080 00393CE0  A0 63 00 3A */	lhz r3, 0x3a(r3)
/* 80398084 00393CE4  48 00 00 08 */	b lbl_8039808C
lbl_80398088:
/* 80398088 00393CE8  38 60 00 00 */	li r3, 0
lbl_8039808C:
/* 8039808C 00393CEC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398090 00393CF0  7C 08 03 A6 */	mtlr r0
/* 80398094 00393CF4  38 21 00 10 */	addi r1, r1, 0x10
/* 80398098 00393CF8  4E 80 00 20 */	blr 

.global func_8039809C
func_8039809C:
/* 8039809C 00393CFC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803980A0 00393D00  7C 08 02 A6 */	mflr r0
/* 803980A4 00393D04  90 01 00 14 */	stw r0, 0x14(r1)
/* 803980A8 00393D08  4B FF FD 9D */	bl func_80397E44
/* 803980AC 00393D0C  2C 03 00 00 */	cmpwi r3, 0
/* 803980B0 00393D10  41 82 00 0C */	beq lbl_803980BC
/* 803980B4 00393D14  88 63 00 54 */	lbz r3, 0x54(r3)
/* 803980B8 00393D18  48 00 00 08 */	b lbl_803980C0
lbl_803980BC:
/* 803980BC 00393D1C  38 60 00 00 */	li r3, 0
lbl_803980C0:
/* 803980C0 00393D20  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803980C4 00393D24  7C 08 03 A6 */	mtlr r0
/* 803980C8 00393D28  38 21 00 10 */	addi r1, r1, 0x10
/* 803980CC 00393D2C  4E 80 00 20 */	blr 

.global func_803980D0
func_803980D0:
/* 803980D0 00393D30  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803980D4 00393D34  7C 08 02 A6 */	mflr r0
/* 803980D8 00393D38  90 01 00 14 */	stw r0, 0x14(r1)
/* 803980DC 00393D3C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803980E0 00393D40  7C BF 2B 78 */	mr r31, r5
/* 803980E4 00393D44  4B FF FD 61 */	bl func_80397E44
/* 803980E8 00393D48  2C 03 00 00 */	cmpwi r3, 0
/* 803980EC 00393D4C  40 82 00 0C */	bne lbl_803980F8
/* 803980F0 00393D50  38 60 00 00 */	li r3, 0
/* 803980F4 00393D54  48 00 00 20 */	b lbl_80398114
lbl_803980F8:
/* 803980F8 00393D58  28 1F 00 02 */	cmplwi r31, 2
/* 803980FC 00393D5C  41 80 00 0C */	blt lbl_80398108
/* 80398100 00393D60  38 60 00 00 */	li r3, 0
/* 80398104 00393D64  48 00 00 10 */	b lbl_80398114
lbl_80398108:
/* 80398108 00393D68  57 E0 20 36 */	slwi r0, r31, 4
/* 8039810C 00393D6C  7C 63 02 14 */	add r3, r3, r0
/* 80398110 00393D70  88 63 00 0C */	lbz r3, 0xc(r3)
lbl_80398114:
/* 80398114 00393D74  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398118 00393D78  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039811C 00393D7C  7C 08 03 A6 */	mtlr r0
/* 80398120 00393D80  38 21 00 10 */	addi r1, r1, 0x10
/* 80398124 00393D84  4E 80 00 20 */	blr 

.global func_80398128
func_80398128:
/* 80398128 00393D88  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039812C 00393D8C  7C 08 02 A6 */	mflr r0
/* 80398130 00393D90  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398134 00393D94  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80398138 00393D98  7C BF 2B 78 */	mr r31, r5
/* 8039813C 00393D9C  4B FF FD 09 */	bl func_80397E44
/* 80398140 00393DA0  2C 03 00 00 */	cmpwi r3, 0
/* 80398144 00393DA4  40 82 00 0C */	bne lbl_80398150
/* 80398148 00393DA8  38 60 00 00 */	li r3, 0
/* 8039814C 00393DAC  48 00 00 1C */	b lbl_80398168
lbl_80398150:
/* 80398150 00393DB0  28 1F 00 02 */	cmplwi r31, 2
/* 80398154 00393DB4  41 80 00 0C */	blt lbl_80398160
/* 80398158 00393DB8  38 60 00 00 */	li r3, 0
/* 8039815C 00393DBC  48 00 00 0C */	b lbl_80398168
lbl_80398160:
/* 80398160 00393DC0  57 E0 20 36 */	slwi r0, r31, 4
/* 80398164 00393DC4  7C 63 00 2E */	lwzx r3, r3, r0
lbl_80398168:
/* 80398168 00393DC8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039816C 00393DCC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398170 00393DD0  7C 08 03 A6 */	mtlr r0
/* 80398174 00393DD4  38 21 00 10 */	addi r1, r1, 0x10
/* 80398178 00393DD8  4E 80 00 20 */	blr 

.global func_8039817C
func_8039817C:
/* 8039817C 00393DDC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398180 00393DE0  7C 08 02 A6 */	mflr r0
/* 80398184 00393DE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398188 00393DE8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039818C 00393DEC  7C BF 2B 78 */	mr r31, r5
/* 80398190 00393DF0  4B FF FC B5 */	bl func_80397E44
/* 80398194 00393DF4  2C 03 00 00 */	cmpwi r3, 0
/* 80398198 00393DF8  40 82 00 0C */	bne lbl_803981A4
/* 8039819C 00393DFC  38 60 00 00 */	li r3, 0
/* 803981A0 00393E00  48 00 00 20 */	b lbl_803981C0
lbl_803981A4:
/* 803981A4 00393E04  28 1F 00 02 */	cmplwi r31, 2
/* 803981A8 00393E08  41 80 00 0C */	blt lbl_803981B4
/* 803981AC 00393E0C  38 60 00 00 */	li r3, 0
/* 803981B0 00393E10  48 00 00 10 */	b lbl_803981C0
lbl_803981B4:
/* 803981B4 00393E14  57 E0 20 36 */	slwi r0, r31, 4
/* 803981B8 00393E18  7C 63 02 14 */	add r3, r3, r0
/* 803981BC 00393E1C  80 63 00 04 */	lwz r3, 4(r3)
lbl_803981C0:
/* 803981C0 00393E20  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803981C4 00393E24  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803981C8 00393E28  7C 08 03 A6 */	mtlr r0
/* 803981CC 00393E2C  38 21 00 10 */	addi r1, r1, 0x10
/* 803981D0 00393E30  4E 80 00 20 */	blr 

.global func_803981D4
func_803981D4:
/* 803981D4 00393E34  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803981D8 00393E38  7C 08 02 A6 */	mflr r0
/* 803981DC 00393E3C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803981E0 00393E40  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803981E4 00393E44  7C BF 2B 78 */	mr r31, r5
/* 803981E8 00393E48  4B FF FC 5D */	bl func_80397E44
/* 803981EC 00393E4C  2C 03 00 00 */	cmpwi r3, 0
/* 803981F0 00393E50  40 82 00 0C */	bne lbl_803981FC
/* 803981F4 00393E54  38 60 00 00 */	li r3, 0
/* 803981F8 00393E58  48 00 00 20 */	b lbl_80398218
lbl_803981FC:
/* 803981FC 00393E5C  28 1F 00 02 */	cmplwi r31, 2
/* 80398200 00393E60  41 80 00 0C */	blt lbl_8039820C
/* 80398204 00393E64  38 60 00 00 */	li r3, 0
/* 80398208 00393E68  48 00 00 10 */	b lbl_80398218
lbl_8039820C:
/* 8039820C 00393E6C  57 E0 20 36 */	slwi r0, r31, 4
/* 80398210 00393E70  7C 63 02 14 */	add r3, r3, r0
/* 80398214 00393E74  80 63 00 08 */	lwz r3, 8(r3)
lbl_80398218:
/* 80398218 00393E78  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039821C 00393E7C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398220 00393E80  7C 08 03 A6 */	mtlr r0
/* 80398224 00393E84  38 21 00 10 */	addi r1, r1, 0x10
/* 80398228 00393E88  4E 80 00 20 */	blr 

.global func_8039822C
func_8039822C:
/* 8039822C 00393E8C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398230 00393E90  7C 08 02 A6 */	mflr r0
/* 80398234 00393E94  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398238 00393E98  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039823C 00393E9C  7C BF 2B 78 */	mr r31, r5
/* 80398240 00393EA0  4B FF FC 05 */	bl func_80397E44
/* 80398244 00393EA4  2C 03 00 00 */	cmpwi r3, 0
/* 80398248 00393EA8  40 82 00 0C */	bne lbl_80398254
/* 8039824C 00393EAC  38 60 00 00 */	li r3, 0
/* 80398250 00393EB0  48 00 00 20 */	b lbl_80398270
lbl_80398254:
/* 80398254 00393EB4  28 1F 00 04 */	cmplwi r31, 4
/* 80398258 00393EB8  41 80 00 0C */	blt lbl_80398264
/* 8039825C 00393EBC  38 60 00 00 */	li r3, 0
/* 80398260 00393EC0  48 00 00 10 */	b lbl_80398270
lbl_80398264:
/* 80398264 00393EC4  57 E0 10 3A */	slwi r0, r31, 2
/* 80398268 00393EC8  7C 63 02 14 */	add r3, r3, r0
/* 8039826C 00393ECC  80 63 00 20 */	lwz r3, 0x20(r3)
lbl_80398270:
/* 80398270 00393ED0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398274 00393ED4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398278 00393ED8  7C 08 03 A6 */	mtlr r0
/* 8039827C 00393EDC  38 21 00 10 */	addi r1, r1, 0x10
/* 80398280 00393EE0  4E 80 00 20 */	blr 

.global func_80398284
func_80398284:
/* 80398284 00393EE4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398288 00393EE8  7C 08 02 A6 */	mflr r0
/* 8039828C 00393EEC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398290 00393EF0  4B FF FB B5 */	bl func_80397E44
/* 80398294 00393EF4  2C 03 00 00 */	cmpwi r3, 0
/* 80398298 00393EF8  41 82 00 0C */	beq lbl_803982A4
/* 8039829C 00393EFC  88 63 00 55 */	lbz r3, 0x55(r3)
/* 803982A0 00393F00  48 00 00 08 */	b lbl_803982A8
lbl_803982A4:
/* 803982A4 00393F04  38 60 00 00 */	li r3, 0
lbl_803982A8:
/* 803982A8 00393F08  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803982AC 00393F0C  7C 08 03 A6 */	mtlr r0
/* 803982B0 00393F10  38 21 00 10 */	addi r1, r1, 0x10
/* 803982B4 00393F14  4E 80 00 20 */	blr 

.global func_803982B8
func_803982B8:
/* 803982B8 00393F18  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803982BC 00393F1C  7C 08 02 A6 */	mflr r0
/* 803982C0 00393F20  90 01 00 14 */	stw r0, 0x14(r1)
/* 803982C4 00393F24  4B FF FB 81 */	bl func_80397E44
/* 803982C8 00393F28  2C 03 00 00 */	cmpwi r3, 0
/* 803982CC 00393F2C  41 82 00 0C */	beq lbl_803982D8
/* 803982D0 00393F30  88 63 00 56 */	lbz r3, 0x56(r3)
/* 803982D4 00393F34  48 00 00 08 */	b lbl_803982DC
lbl_803982D8:
/* 803982D8 00393F38  38 60 00 00 */	li r3, 0
lbl_803982DC:
/* 803982DC 00393F3C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803982E0 00393F40  7C 08 03 A6 */	mtlr r0
/* 803982E4 00393F44  38 21 00 10 */	addi r1, r1, 0x10
/* 803982E8 00393F48  4E 80 00 20 */	blr 

.global func_803982EC
func_803982EC:
/* 803982EC 00393F4C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803982F0 00393F50  7C 08 02 A6 */	mflr r0
/* 803982F4 00393F54  90 01 00 14 */	stw r0, 0x14(r1)
/* 803982F8 00393F58  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803982FC 00393F5C  7C BF 2B 78 */	mr r31, r5
/* 80398300 00393F60  4B FF FB 45 */	bl func_80397E44
/* 80398304 00393F64  2C 03 00 00 */	cmpwi r3, 0
/* 80398308 00393F68  40 82 00 0C */	bne lbl_80398314
/* 8039830C 00393F6C  38 60 00 00 */	li r3, 0
/* 80398310 00393F70  48 00 00 1C */	b lbl_8039832C
lbl_80398314:
/* 80398314 00393F74  28 1F 00 02 */	cmplwi r31, 2
/* 80398318 00393F78  41 80 00 0C */	blt lbl_80398324
/* 8039831C 00393F7C  38 60 00 00 */	li r3, 0
/* 80398320 00393F80  48 00 00 0C */	b lbl_8039832C
lbl_80398324:
/* 80398324 00393F84  7C 63 FA 14 */	add r3, r3, r31
/* 80398328 00393F88  88 63 00 57 */	lbz r3, 0x57(r3)
lbl_8039832C:
/* 8039832C 00393F8C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398330 00393F90  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398334 00393F94  7C 08 03 A6 */	mtlr r0
/* 80398338 00393F98  38 21 00 10 */	addi r1, r1, 0x10
/* 8039833C 00393F9C  4E 80 00 20 */	blr 

.global func_80398340
func_80398340:
/* 80398340 00393FA0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398344 00393FA4  7C 08 02 A6 */	mflr r0
/* 80398348 00393FA8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039834C 00393FAC  4B FF FA F9 */	bl func_80397E44
/* 80398350 00393FB0  2C 03 00 00 */	cmpwi r3, 0
/* 80398354 00393FB4  41 82 00 0C */	beq lbl_80398360
/* 80398358 00393FB8  A0 63 00 48 */	lhz r3, 0x48(r3)
/* 8039835C 00393FBC  48 00 00 08 */	b lbl_80398364
lbl_80398360:
/* 80398360 00393FC0  38 60 00 00 */	li r3, 0
lbl_80398364:
/* 80398364 00393FC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398368 00393FC8  7C 08 03 A6 */	mtlr r0
/* 8039836C 00393FCC  38 21 00 10 */	addi r1, r1, 0x10
/* 80398370 00393FD0  4E 80 00 20 */	blr 

.global func_80398374
func_80398374:
/* 80398374 00393FD4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398378 00393FD8  7C 08 02 A6 */	mflr r0
/* 8039837C 00393FDC  2C 04 00 00 */	cmpwi r4, 0
/* 80398380 00393FE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398384 00393FE4  38 00 00 00 */	li r0, 0
/* 80398388 00393FE8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039838C 00393FEC  7C 7F 1B 78 */	mr r31, r3
/* 80398390 00393FF0  90 03 00 00 */	stw r0, 0(r3)
/* 80398394 00393FF4  41 82 00 08 */	beq lbl_8039839C
/* 80398398 00393FF8  48 00 00 7D */	bl func_80398414
lbl_8039839C:
/* 8039839C 00393FFC  7F E3 FB 78 */	mr r3, r31
/* 803983A0 00394000  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803983A4 00394004  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803983A8 00394008  7C 08 03 A6 */	mtlr r0
/* 803983AC 0039400C  38 21 00 10 */	addi r1, r1, 0x10
/* 803983B0 00394010  4E 80 00 20 */	blr 

.global func_803983B4
func_803983B4:
/* 803983B4 00394014  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803983B8 00394018  7C 08 02 A6 */	mflr r0
/* 803983BC 0039401C  2C 03 00 00 */	cmpwi r3, 0
/* 803983C0 00394020  90 01 00 14 */	stw r0, 0x14(r1)
/* 803983C4 00394024  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803983C8 00394028  7C 9F 23 78 */	mr r31, r4
/* 803983CC 0039402C  93 C1 00 08 */	stw r30, 8(r1)
/* 803983D0 00394030  7C 7E 1B 78 */	mr r30, r3
/* 803983D4 00394034  41 82 00 24 */	beq lbl_803983F8
/* 803983D8 00394038  80 03 00 00 */	lwz r0, 0(r3)
/* 803983DC 0039403C  2C 00 00 00 */	cmpwi r0, 0
/* 803983E0 00394040  41 82 00 08 */	beq lbl_803983E8
/* 803983E4 00394044  48 00 01 95 */	bl func_80398578
lbl_803983E8:
/* 803983E8 00394048  2C 1F 00 00 */	cmpwi r31, 0
/* 803983EC 0039404C  40 81 00 0C */	ble lbl_803983F8
/* 803983F0 00394050  7F C3 F3 78 */	mr r3, r30
/* 803983F4 00394054  4B E4 26 C5 */	bl __dl__FPv
lbl_803983F8:
/* 803983F8 00394058  7F C3 F3 78 */	mr r3, r30
/* 803983FC 0039405C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398400 00394060  83 C1 00 08 */	lwz r30, 8(r1)
/* 80398404 00394064  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398408 00394068  7C 08 03 A6 */	mtlr r0
/* 8039840C 0039406C  38 21 00 10 */	addi r1, r1, 0x10
/* 80398410 00394070  4E 80 00 20 */	blr 

.global func_80398414
func_80398414:
/* 80398414 00394074  2C 04 00 00 */	cmpwi r4, 0
/* 80398418 00394078  40 82 00 0C */	bne lbl_80398424
/* 8039841C 0039407C  38 60 FF FF */	li r3, -1
/* 80398420 00394080  4E 80 00 20 */	blr 
lbl_80398424:
/* 80398424 00394084  80 03 00 00 */	lwz r0, 0(r3)
/* 80398428 00394088  2C 00 00 00 */	cmpwi r0, 0
/* 8039842C 0039408C  41 82 00 0C */	beq lbl_80398438
/* 80398430 00394090  38 60 FF FE */	li r3, -2
/* 80398434 00394094  4E 80 00 20 */	blr 
lbl_80398438:
/* 80398438 00394098  80 04 00 04 */	lwz r0, 4(r4)
/* 8039843C 0039409C  28 00 00 10 */	cmplwi r0, 0x10
/* 80398440 003940A0  41 82 00 0C */	beq lbl_8039844C
/* 80398444 003940A4  38 60 FF FD */	li r3, -3
/* 80398448 003940A8  4E 80 00 20 */	blr 
lbl_8039844C:
/* 8039844C 003940AC  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80398450 003940B0  2C 00 00 00 */	cmpwi r0, 0
/* 80398454 003940B4  40 82 01 0C */	bne lbl_80398560
/* 80398458 003940B8  80 04 00 08 */	lwz r0, 8(r4)
/* 8039845C 003940BC  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80398460 003940C0  7C E0 22 14 */	add r7, r0, r4
/* 80398464 003940C4  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80398468 003940C8  80 04 00 20 */	lwz r0, 0x20(r4)
/* 8039846C 003940CC  7C C6 22 14 */	add r6, r6, r4
/* 80398470 003940D0  7C A5 22 14 */	add r5, r5, r4
/* 80398474 003940D4  90 E4 00 08 */	stw r7, 8(r4)
/* 80398478 003940D8  2C 00 00 00 */	cmpwi r0, 0
/* 8039847C 003940DC  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80398480 003940E0  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80398484 003940E4  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80398488 003940E8  41 82 00 0C */	beq lbl_80398494
/* 8039848C 003940EC  7C 00 22 14 */	add r0, r0, r4
/* 80398490 003940F0  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80398494:
/* 80398494 003940F4  2C 07 00 00 */	cmpwi r7, 0
/* 80398498 003940F8  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 8039849C 003940FC  41 82 00 BC */	beq lbl_80398558
/* 803984A0 00394100  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803984A4 00394104  7C 09 03 A6 */	mtctr r0
/* 803984A8 00394108  41 82 00 94 */	beq lbl_8039853C
lbl_803984AC:
/* 803984AC 0039410C  80 C5 00 00 */	lwz r6, 0(r5)
/* 803984B0 00394110  7C 06 20 2E */	lwzx r0, r6, r4
/* 803984B4 00394114  7C 00 22 14 */	add r0, r0, r4
/* 803984B8 00394118  7C 06 21 2E */	stwx r0, r6, r4
/* 803984BC 0039411C  80 C5 00 04 */	lwz r6, 4(r5)
/* 803984C0 00394120  7C 06 20 2E */	lwzx r0, r6, r4
/* 803984C4 00394124  7C 00 22 14 */	add r0, r0, r4
/* 803984C8 00394128  7C 06 21 2E */	stwx r0, r6, r4
/* 803984CC 0039412C  80 C5 00 08 */	lwz r6, 8(r5)
/* 803984D0 00394130  7C 06 20 2E */	lwzx r0, r6, r4
/* 803984D4 00394134  7C 00 22 14 */	add r0, r0, r4
/* 803984D8 00394138  7C 06 21 2E */	stwx r0, r6, r4
/* 803984DC 0039413C  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 803984E0 00394140  7C 06 20 2E */	lwzx r0, r6, r4
/* 803984E4 00394144  7C 00 22 14 */	add r0, r0, r4
/* 803984E8 00394148  7C 06 21 2E */	stwx r0, r6, r4
/* 803984EC 0039414C  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 803984F0 00394150  7C 06 20 2E */	lwzx r0, r6, r4
/* 803984F4 00394154  7C 00 22 14 */	add r0, r0, r4
/* 803984F8 00394158  7C 06 21 2E */	stwx r0, r6, r4
/* 803984FC 0039415C  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80398500 00394160  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398504 00394164  7C 00 22 14 */	add r0, r0, r4
/* 80398508 00394168  7C 06 21 2E */	stwx r0, r6, r4
/* 8039850C 0039416C  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80398510 00394170  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398514 00394174  7C 00 22 14 */	add r0, r0, r4
/* 80398518 00394178  7C 06 21 2E */	stwx r0, r6, r4
/* 8039851C 0039417C  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80398520 00394180  38 A5 00 20 */	addi r5, r5, 0x20
/* 80398524 00394184  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398528 00394188  7C 00 22 14 */	add r0, r0, r4
/* 8039852C 0039418C  7C 06 21 2E */	stwx r0, r6, r4
/* 80398530 00394190  42 00 FF 7C */	bdnz lbl_803984AC
/* 80398534 00394194  70 E7 00 07 */	andi. r7, r7, 7
/* 80398538 00394198  41 82 00 20 */	beq lbl_80398558
lbl_8039853C:
/* 8039853C 0039419C  7C E9 03 A6 */	mtctr r7
lbl_80398540:
/* 80398540 003941A0  80 C5 00 00 */	lwz r6, 0(r5)
/* 80398544 003941A4  38 A5 00 04 */	addi r5, r5, 4
/* 80398548 003941A8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039854C 003941AC  7C 00 22 14 */	add r0, r0, r4
/* 80398550 003941B0  7C 06 21 2E */	stwx r0, r6, r4
/* 80398554 003941B4  42 00 FF EC */	bdnz lbl_80398540
lbl_80398558:
/* 80398558 003941B8  38 00 00 01 */	li r0, 1
/* 8039855C 003941BC  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80398560:
/* 80398560 003941C0  90 83 00 00 */	stw r4, 0(r3)
/* 80398564 003941C4  38 60 00 00 */	li r3, 0
/* 80398568 003941C8  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8039856C 003941CC  38 05 00 01 */	addi r0, r5, 1
/* 80398570 003941D0  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80398574 003941D4  4E 80 00 20 */	blr 

.global func_80398578
func_80398578:
/* 80398578 003941D8  80 83 00 00 */	lwz r4, 0(r3)
/* 8039857C 003941DC  38 A0 00 00 */	li r5, 0
/* 80398580 003941E0  2C 04 00 00 */	cmpwi r4, 0
/* 80398584 003941E4  41 82 00 20 */	beq lbl_803985A4
/* 80398588 003941E8  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 8039858C 003941EC  2C 05 00 00 */	cmpwi r5, 0
/* 80398590 003941F0  41 82 00 0C */	beq lbl_8039859C
/* 80398594 003941F4  38 A5 FF FF */	addi r5, r5, -1
/* 80398598 003941F8  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_8039859C:
/* 8039859C 003941FC  38 00 00 00 */	li r0, 0
/* 803985A0 00394200  90 03 00 00 */	stw r0, 0(r3)
lbl_803985A4:
/* 803985A4 00394204  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803985A8 00394208  4E 80 00 20 */	blr 

.global func_803985AC
func_803985AC:
/* 803985AC 0039420C  80 63 00 00 */	lwz r3, 0(r3)
/* 803985B0 00394210  2C 03 00 00 */	cmpwi r3, 0
/* 803985B4 00394214  40 82 00 0C */	bne lbl_803985C0
/* 803985B8 00394218  38 60 00 00 */	li r3, 0
/* 803985BC 0039421C  4E 80 00 20 */	blr 
lbl_803985C0:
/* 803985C0 00394220  2C 04 00 00 */	cmpwi r4, 0
/* 803985C4 00394224  40 80 00 0C */	bge lbl_803985D0
/* 803985C8 00394228  38 60 00 00 */	li r3, 0
/* 803985CC 0039422C  4E 80 00 20 */	blr 
lbl_803985D0:
/* 803985D0 00394230  80 63 00 10 */	lwz r3, 0x10(r3)
/* 803985D4 00394234  54 80 20 36 */	slwi r0, r4, 4
/* 803985D8 00394238  7C 63 02 14 */	add r3, r3, r0
/* 803985DC 0039423C  4E 80 00 20 */	blr 

.global func_803985E0
func_803985E0:
/* 803985E0 00394240  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803985E4 00394244  7C 08 02 A6 */	mflr r0
/* 803985E8 00394248  90 01 00 14 */	stw r0, 0x14(r1)
/* 803985EC 0039424C  4B FF FF C1 */	bl func_803985AC
/* 803985F0 00394250  2C 03 00 00 */	cmpwi r3, 0
/* 803985F4 00394254  41 82 00 0C */	beq lbl_80398600
/* 803985F8 00394258  80 63 00 00 */	lwz r3, 0(r3)
/* 803985FC 0039425C  48 00 00 08 */	b lbl_80398604
lbl_80398600:
/* 80398600 00394260  38 60 00 00 */	li r3, 0
lbl_80398604:
/* 80398604 00394264  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398608 00394268  7C 08 03 A6 */	mtlr r0
/* 8039860C 0039426C  38 21 00 10 */	addi r1, r1, 0x10
/* 80398610 00394270  4E 80 00 20 */	blr 

.global func_80398614
func_80398614:
/* 80398614 00394274  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398618 00394278  7C 08 02 A6 */	mflr r0
/* 8039861C 0039427C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398620 00394280  4B FF FF 8D */	bl func_803985AC
/* 80398624 00394284  2C 03 00 00 */	cmpwi r3, 0
/* 80398628 00394288  41 82 00 0C */	beq lbl_80398634
/* 8039862C 0039428C  80 63 00 04 */	lwz r3, 4(r3)
/* 80398630 00394290  48 00 00 08 */	b lbl_80398638
lbl_80398634:
/* 80398634 00394294  38 60 00 00 */	li r3, 0
lbl_80398638:
/* 80398638 00394298  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039863C 0039429C  7C 08 03 A6 */	mtlr r0
/* 80398640 003942A0  38 21 00 10 */	addi r1, r1, 0x10
/* 80398644 003942A4  4E 80 00 20 */	blr 

.global func_80398648
func_80398648:
/* 80398648 003942A8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039864C 003942AC  7C 08 02 A6 */	mflr r0
/* 80398650 003942B0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398654 003942B4  4B FF FF 59 */	bl func_803985AC
/* 80398658 003942B8  2C 03 00 00 */	cmpwi r3, 0
/* 8039865C 003942BC  41 82 00 0C */	beq lbl_80398668
/* 80398660 003942C0  80 63 00 08 */	lwz r3, 8(r3)
/* 80398664 003942C4  48 00 00 08 */	b lbl_8039866C
lbl_80398668:
/* 80398668 003942C8  38 60 00 00 */	li r3, 0
lbl_8039866C:
/* 8039866C 003942CC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398670 003942D0  7C 08 03 A6 */	mtlr r0
/* 80398674 003942D4  38 21 00 10 */	addi r1, r1, 0x10
/* 80398678 003942D8  4E 80 00 20 */	blr 

.global func_8039867C
func_8039867C:
/* 8039867C 003942DC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398680 003942E0  7C 08 02 A6 */	mflr r0
/* 80398684 003942E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398688 003942E8  4B FF FF 25 */	bl func_803985AC
/* 8039868C 003942EC  2C 03 00 00 */	cmpwi r3, 0
/* 80398690 003942F0  41 82 00 0C */	beq lbl_8039869C
/* 80398694 003942F4  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80398698 003942F8  48 00 00 08 */	b lbl_803986A0
lbl_8039869C:
/* 8039869C 003942FC  38 60 00 00 */	li r3, 0
lbl_803986A0:
/* 803986A0 00394300  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803986A4 00394304  7C 08 03 A6 */	mtlr r0
/* 803986A8 00394308  38 21 00 10 */	addi r1, r1, 0x10
/* 803986AC 0039430C  4E 80 00 20 */	blr 

.global func_803986B0
func_803986B0:
/* 803986B0 00394310  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803986B4 00394314  7C 08 02 A6 */	mflr r0
/* 803986B8 00394318  2C 04 00 00 */	cmpwi r4, 0
/* 803986BC 0039431C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803986C0 00394320  38 00 00 00 */	li r0, 0
/* 803986C4 00394324  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803986C8 00394328  7C 7F 1B 78 */	mr r31, r3
/* 803986CC 0039432C  90 03 00 00 */	stw r0, 0(r3)
/* 803986D0 00394330  41 82 00 08 */	beq lbl_803986D8
/* 803986D4 00394334  48 00 00 7D */	bl func_80398750
lbl_803986D8:
/* 803986D8 00394338  7F E3 FB 78 */	mr r3, r31
/* 803986DC 0039433C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803986E0 00394340  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803986E4 00394344  7C 08 03 A6 */	mtlr r0
/* 803986E8 00394348  38 21 00 10 */	addi r1, r1, 0x10
/* 803986EC 0039434C  4E 80 00 20 */	blr 

.global func_803986F0
func_803986F0:
/* 803986F0 00394350  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803986F4 00394354  7C 08 02 A6 */	mflr r0
/* 803986F8 00394358  2C 03 00 00 */	cmpwi r3, 0
/* 803986FC 0039435C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398700 00394360  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80398704 00394364  7C 9F 23 78 */	mr r31, r4
/* 80398708 00394368  93 C1 00 08 */	stw r30, 8(r1)
/* 8039870C 0039436C  7C 7E 1B 78 */	mr r30, r3
/* 80398710 00394370  41 82 00 24 */	beq lbl_80398734
/* 80398714 00394374  80 03 00 00 */	lwz r0, 0(r3)
/* 80398718 00394378  2C 00 00 00 */	cmpwi r0, 0
/* 8039871C 0039437C  41 82 00 08 */	beq lbl_80398724
/* 80398720 00394380  48 00 01 95 */	bl func_803988B4
lbl_80398724:
/* 80398724 00394384  2C 1F 00 00 */	cmpwi r31, 0
/* 80398728 00394388  40 81 00 0C */	ble lbl_80398734
/* 8039872C 0039438C  7F C3 F3 78 */	mr r3, r30
/* 80398730 00394390  4B E4 23 89 */	bl __dl__FPv
lbl_80398734:
/* 80398734 00394394  7F C3 F3 78 */	mr r3, r30
/* 80398738 00394398  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039873C 0039439C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80398740 003943A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398744 003943A4  7C 08 03 A6 */	mtlr r0
/* 80398748 003943A8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039874C 003943AC  4E 80 00 20 */	blr 

.global func_80398750
func_80398750:
/* 80398750 003943B0  2C 04 00 00 */	cmpwi r4, 0
/* 80398754 003943B4  40 82 00 0C */	bne lbl_80398760
/* 80398758 003943B8  38 60 FF FF */	li r3, -1
/* 8039875C 003943BC  4E 80 00 20 */	blr 
lbl_80398760:
/* 80398760 003943C0  80 03 00 00 */	lwz r0, 0(r3)
/* 80398764 003943C4  2C 00 00 00 */	cmpwi r0, 0
/* 80398768 003943C8  41 82 00 0C */	beq lbl_80398774
/* 8039876C 003943CC  38 60 FF FE */	li r3, -2
/* 80398770 003943D0  4E 80 00 20 */	blr 
lbl_80398774:
/* 80398774 003943D4  80 04 00 04 */	lwz r0, 4(r4)
/* 80398778 003943D8  28 00 00 04 */	cmplwi r0, 4
/* 8039877C 003943DC  41 82 00 0C */	beq lbl_80398788
/* 80398780 003943E0  38 60 FF FD */	li r3, -3
/* 80398784 003943E4  4E 80 00 20 */	blr 
lbl_80398788:
/* 80398788 003943E8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 8039878C 003943EC  2C 00 00 00 */	cmpwi r0, 0
/* 80398790 003943F0  40 82 01 0C */	bne lbl_8039889C
/* 80398794 003943F4  80 04 00 08 */	lwz r0, 8(r4)
/* 80398798 003943F8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 8039879C 003943FC  7C E0 22 14 */	add r7, r0, r4
/* 803987A0 00394400  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803987A4 00394404  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803987A8 00394408  7C C6 22 14 */	add r6, r6, r4
/* 803987AC 0039440C  7C A5 22 14 */	add r5, r5, r4
/* 803987B0 00394410  90 E4 00 08 */	stw r7, 8(r4)
/* 803987B4 00394414  2C 00 00 00 */	cmpwi r0, 0
/* 803987B8 00394418  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803987BC 0039441C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803987C0 00394420  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803987C4 00394424  41 82 00 0C */	beq lbl_803987D0
/* 803987C8 00394428  7C 00 22 14 */	add r0, r0, r4
/* 803987CC 0039442C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803987D0:
/* 803987D0 00394430  2C 07 00 00 */	cmpwi r7, 0
/* 803987D4 00394434  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803987D8 00394438  41 82 00 BC */	beq lbl_80398894
/* 803987DC 0039443C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803987E0 00394440  7C 09 03 A6 */	mtctr r0
/* 803987E4 00394444  41 82 00 94 */	beq lbl_80398878
lbl_803987E8:
/* 803987E8 00394448  80 C5 00 00 */	lwz r6, 0(r5)
/* 803987EC 0039444C  7C 06 20 2E */	lwzx r0, r6, r4
/* 803987F0 00394450  7C 00 22 14 */	add r0, r0, r4
/* 803987F4 00394454  7C 06 21 2E */	stwx r0, r6, r4
/* 803987F8 00394458  80 C5 00 04 */	lwz r6, 4(r5)
/* 803987FC 0039445C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398800 00394460  7C 00 22 14 */	add r0, r0, r4
/* 80398804 00394464  7C 06 21 2E */	stwx r0, r6, r4
/* 80398808 00394468  80 C5 00 08 */	lwz r6, 8(r5)
/* 8039880C 0039446C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398810 00394470  7C 00 22 14 */	add r0, r0, r4
/* 80398814 00394474  7C 06 21 2E */	stwx r0, r6, r4
/* 80398818 00394478  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 8039881C 0039447C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398820 00394480  7C 00 22 14 */	add r0, r0, r4
/* 80398824 00394484  7C 06 21 2E */	stwx r0, r6, r4
/* 80398828 00394488  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 8039882C 0039448C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398830 00394490  7C 00 22 14 */	add r0, r0, r4
/* 80398834 00394494  7C 06 21 2E */	stwx r0, r6, r4
/* 80398838 00394498  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 8039883C 0039449C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398840 003944A0  7C 00 22 14 */	add r0, r0, r4
/* 80398844 003944A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80398848 003944A8  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 8039884C 003944AC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398850 003944B0  7C 00 22 14 */	add r0, r0, r4
/* 80398854 003944B4  7C 06 21 2E */	stwx r0, r6, r4
/* 80398858 003944B8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 8039885C 003944BC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80398860 003944C0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398864 003944C4  7C 00 22 14 */	add r0, r0, r4
/* 80398868 003944C8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039886C 003944CC  42 00 FF 7C */	bdnz lbl_803987E8
/* 80398870 003944D0  70 E7 00 07 */	andi. r7, r7, 7
/* 80398874 003944D4  41 82 00 20 */	beq lbl_80398894
lbl_80398878:
/* 80398878 003944D8  7C E9 03 A6 */	mtctr r7
lbl_8039887C:
/* 8039887C 003944DC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80398880 003944E0  38 A5 00 04 */	addi r5, r5, 4
/* 80398884 003944E4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398888 003944E8  7C 00 22 14 */	add r0, r0, r4
/* 8039888C 003944EC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398890 003944F0  42 00 FF EC */	bdnz lbl_8039887C
lbl_80398894:
/* 80398894 003944F4  38 00 00 01 */	li r0, 1
/* 80398898 003944F8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_8039889C:
/* 8039889C 003944FC  90 83 00 00 */	stw r4, 0(r3)
/* 803988A0 00394500  38 60 00 00 */	li r3, 0
/* 803988A4 00394504  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803988A8 00394508  38 05 00 01 */	addi r0, r5, 1
/* 803988AC 0039450C  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803988B0 00394510  4E 80 00 20 */	blr 

.global func_803988B4
func_803988B4:
/* 803988B4 00394514  80 83 00 00 */	lwz r4, 0(r3)
/* 803988B8 00394518  38 A0 00 00 */	li r5, 0
/* 803988BC 0039451C  2C 04 00 00 */	cmpwi r4, 0
/* 803988C0 00394520  41 82 00 20 */	beq lbl_803988E0
/* 803988C4 00394524  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803988C8 00394528  2C 05 00 00 */	cmpwi r5, 0
/* 803988CC 0039452C  41 82 00 0C */	beq lbl_803988D8
/* 803988D0 00394530  38 A5 FF FF */	addi r5, r5, -1
/* 803988D4 00394534  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803988D8:
/* 803988D8 00394538  38 00 00 00 */	li r0, 0
/* 803988DC 0039453C  90 03 00 00 */	stw r0, 0(r3)
lbl_803988E0:
/* 803988E0 00394540  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803988E4 00394544  4E 80 00 20 */	blr 

.global func_803988E8
func_803988E8:
/* 803988E8 00394548  80 63 00 00 */	lwz r3, 0(r3)
/* 803988EC 0039454C  2C 03 00 00 */	cmpwi r3, 0
/* 803988F0 00394550  40 82 00 0C */	bne lbl_803988FC
/* 803988F4 00394554  38 60 00 00 */	li r3, 0
/* 803988F8 00394558  4E 80 00 20 */	blr 
lbl_803988FC:
/* 803988FC 0039455C  2C 04 00 00 */	cmpwi r4, 0
/* 80398900 00394560  40 80 00 0C */	bge lbl_8039890C
/* 80398904 00394564  38 60 00 00 */	li r3, 0
/* 80398908 00394568  4E 80 00 20 */	blr 
lbl_8039890C:
/* 8039890C 0039456C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80398910 00394570  54 80 10 3A */	slwi r0, r4, 2
/* 80398914 00394574  7C 63 02 14 */	add r3, r3, r0
/* 80398918 00394578  4E 80 00 20 */	blr 

.global func_8039891C
func_8039891C:
/* 8039891C 0039457C  80 63 00 00 */	lwz r3, 0(r3)
/* 80398920 00394580  2C 03 00 00 */	cmpwi r3, 0
/* 80398924 00394584  41 82 00 0C */	beq lbl_80398930
/* 80398928 00394588  80 63 00 00 */	lwz r3, 0(r3)
/* 8039892C 0039458C  4E 80 00 20 */	blr 
lbl_80398930:
/* 80398930 00394590  38 60 00 00 */	li r3, 0
/* 80398934 00394594  4E 80 00 20 */	blr 

.global func_80398938
func_80398938:
/* 80398938 00394598  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039893C 0039459C  7C 08 02 A6 */	mflr r0
/* 80398940 003945A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398944 003945A4  4B FF FF A5 */	bl func_803988E8
/* 80398948 003945A8  2C 03 00 00 */	cmpwi r3, 0
/* 8039894C 003945AC  41 82 00 0C */	beq lbl_80398958
/* 80398950 003945B0  A0 63 00 00 */	lhz r3, 0(r3)
/* 80398954 003945B4  48 00 00 08 */	b lbl_8039895C
lbl_80398958:
/* 80398958 003945B8  38 60 00 00 */	li r3, 0
lbl_8039895C:
/* 8039895C 003945BC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398960 003945C0  7C 08 03 A6 */	mtlr r0
/* 80398964 003945C4  38 21 00 10 */	addi r1, r1, 0x10
/* 80398968 003945C8  4E 80 00 20 */	blr 

.global func_8039896C
func_8039896C:
/* 8039896C 003945CC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398970 003945D0  7C 08 02 A6 */	mflr r0
/* 80398974 003945D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398978 003945D8  4B FF FF 71 */	bl func_803988E8
/* 8039897C 003945DC  2C 03 00 00 */	cmpwi r3, 0
/* 80398980 003945E0  41 82 00 0C */	beq lbl_8039898C
/* 80398984 003945E4  88 63 00 02 */	lbz r3, 2(r3)
/* 80398988 003945E8  48 00 00 08 */	b lbl_80398990
lbl_8039898C:
/* 8039898C 003945EC  38 60 00 00 */	li r3, 0
lbl_80398990:
/* 80398990 003945F0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398994 003945F4  7C 08 03 A6 */	mtlr r0
/* 80398998 003945F8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039899C 003945FC  4E 80 00 20 */	blr 

.global func_803989A0
func_803989A0:
/* 803989A0 00394600  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803989A4 00394604  7C 08 02 A6 */	mflr r0
/* 803989A8 00394608  2C 04 00 00 */	cmpwi r4, 0
/* 803989AC 0039460C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803989B0 00394610  38 00 00 00 */	li r0, 0
/* 803989B4 00394614  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803989B8 00394618  7C 7F 1B 78 */	mr r31, r3
/* 803989BC 0039461C  90 03 00 00 */	stw r0, 0(r3)
/* 803989C0 00394620  41 82 00 08 */	beq lbl_803989C8
/* 803989C4 00394624  48 00 00 7D */	bl func_80398A40
lbl_803989C8:
/* 803989C8 00394628  7F E3 FB 78 */	mr r3, r31
/* 803989CC 0039462C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803989D0 00394630  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803989D4 00394634  7C 08 03 A6 */	mtlr r0
/* 803989D8 00394638  38 21 00 10 */	addi r1, r1, 0x10
/* 803989DC 0039463C  4E 80 00 20 */	blr 

.global func_803989E0
func_803989E0:
/* 803989E0 00394640  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803989E4 00394644  7C 08 02 A6 */	mflr r0
/* 803989E8 00394648  2C 03 00 00 */	cmpwi r3, 0
/* 803989EC 0039464C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803989F0 00394650  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803989F4 00394654  7C 9F 23 78 */	mr r31, r4
/* 803989F8 00394658  93 C1 00 08 */	stw r30, 8(r1)
/* 803989FC 0039465C  7C 7E 1B 78 */	mr r30, r3
/* 80398A00 00394660  41 82 00 24 */	beq lbl_80398A24
/* 80398A04 00394664  80 03 00 00 */	lwz r0, 0(r3)
/* 80398A08 00394668  2C 00 00 00 */	cmpwi r0, 0
/* 80398A0C 0039466C  41 82 00 08 */	beq lbl_80398A14
/* 80398A10 00394670  48 00 01 95 */	bl func_80398BA4
lbl_80398A14:
/* 80398A14 00394674  2C 1F 00 00 */	cmpwi r31, 0
/* 80398A18 00394678  40 81 00 0C */	ble lbl_80398A24
/* 80398A1C 0039467C  7F C3 F3 78 */	mr r3, r30
/* 80398A20 00394680  4B E4 20 99 */	bl __dl__FPv
lbl_80398A24:
/* 80398A24 00394684  7F C3 F3 78 */	mr r3, r30
/* 80398A28 00394688  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398A2C 0039468C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80398A30 00394690  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398A34 00394694  7C 08 03 A6 */	mtlr r0
/* 80398A38 00394698  38 21 00 10 */	addi r1, r1, 0x10
/* 80398A3C 0039469C  4E 80 00 20 */	blr 

.global func_80398A40
func_80398A40:
/* 80398A40 003946A0  2C 04 00 00 */	cmpwi r4, 0
/* 80398A44 003946A4  40 82 00 0C */	bne lbl_80398A50
/* 80398A48 003946A8  38 60 FF FF */	li r3, -1
/* 80398A4C 003946AC  4E 80 00 20 */	blr 
lbl_80398A50:
/* 80398A50 003946B0  80 03 00 00 */	lwz r0, 0(r3)
/* 80398A54 003946B4  2C 00 00 00 */	cmpwi r0, 0
/* 80398A58 003946B8  41 82 00 0C */	beq lbl_80398A64
/* 80398A5C 003946BC  38 60 FF FE */	li r3, -2
/* 80398A60 003946C0  4E 80 00 20 */	blr 
lbl_80398A64:
/* 80398A64 003946C4  80 04 00 04 */	lwz r0, 4(r4)
/* 80398A68 003946C8  28 00 00 0C */	cmplwi r0, 0xc
/* 80398A6C 003946CC  41 82 00 0C */	beq lbl_80398A78
/* 80398A70 003946D0  38 60 FF FD */	li r3, -3
/* 80398A74 003946D4  4E 80 00 20 */	blr 
lbl_80398A78:
/* 80398A78 003946D8  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80398A7C 003946DC  2C 00 00 00 */	cmpwi r0, 0
/* 80398A80 003946E0  40 82 01 0C */	bne lbl_80398B8C
/* 80398A84 003946E4  80 04 00 08 */	lwz r0, 8(r4)
/* 80398A88 003946E8  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80398A8C 003946EC  7C E0 22 14 */	add r7, r0, r4
/* 80398A90 003946F0  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80398A94 003946F4  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80398A98 003946F8  7C C6 22 14 */	add r6, r6, r4
/* 80398A9C 003946FC  7C A5 22 14 */	add r5, r5, r4
/* 80398AA0 00394700  90 E4 00 08 */	stw r7, 8(r4)
/* 80398AA4 00394704  2C 00 00 00 */	cmpwi r0, 0
/* 80398AA8 00394708  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80398AAC 0039470C  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80398AB0 00394710  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80398AB4 00394714  41 82 00 0C */	beq lbl_80398AC0
/* 80398AB8 00394718  7C 00 22 14 */	add r0, r0, r4
/* 80398ABC 0039471C  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80398AC0:
/* 80398AC0 00394720  2C 07 00 00 */	cmpwi r7, 0
/* 80398AC4 00394724  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80398AC8 00394728  41 82 00 BC */	beq lbl_80398B84
/* 80398ACC 0039472C  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80398AD0 00394730  7C 09 03 A6 */	mtctr r0
/* 80398AD4 00394734  41 82 00 94 */	beq lbl_80398B68
lbl_80398AD8:
/* 80398AD8 00394738  80 C5 00 00 */	lwz r6, 0(r5)
/* 80398ADC 0039473C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398AE0 00394740  7C 00 22 14 */	add r0, r0, r4
/* 80398AE4 00394744  7C 06 21 2E */	stwx r0, r6, r4
/* 80398AE8 00394748  80 C5 00 04 */	lwz r6, 4(r5)
/* 80398AEC 0039474C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398AF0 00394750  7C 00 22 14 */	add r0, r0, r4
/* 80398AF4 00394754  7C 06 21 2E */	stwx r0, r6, r4
/* 80398AF8 00394758  80 C5 00 08 */	lwz r6, 8(r5)
/* 80398AFC 0039475C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B00 00394760  7C 00 22 14 */	add r0, r0, r4
/* 80398B04 00394764  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B08 00394768  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80398B0C 0039476C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B10 00394770  7C 00 22 14 */	add r0, r0, r4
/* 80398B14 00394774  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B18 00394778  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80398B1C 0039477C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B20 00394780  7C 00 22 14 */	add r0, r0, r4
/* 80398B24 00394784  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B28 00394788  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80398B2C 0039478C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B30 00394790  7C 00 22 14 */	add r0, r0, r4
/* 80398B34 00394794  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B38 00394798  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80398B3C 0039479C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B40 003947A0  7C 00 22 14 */	add r0, r0, r4
/* 80398B44 003947A4  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B48 003947A8  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80398B4C 003947AC  38 A5 00 20 */	addi r5, r5, 0x20
/* 80398B50 003947B0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B54 003947B4  7C 00 22 14 */	add r0, r0, r4
/* 80398B58 003947B8  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B5C 003947BC  42 00 FF 7C */	bdnz lbl_80398AD8
/* 80398B60 003947C0  70 E7 00 07 */	andi. r7, r7, 7
/* 80398B64 003947C4  41 82 00 20 */	beq lbl_80398B84
lbl_80398B68:
/* 80398B68 003947C8  7C E9 03 A6 */	mtctr r7
lbl_80398B6C:
/* 80398B6C 003947CC  80 C5 00 00 */	lwz r6, 0(r5)
/* 80398B70 003947D0  38 A5 00 04 */	addi r5, r5, 4
/* 80398B74 003947D4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398B78 003947D8  7C 00 22 14 */	add r0, r0, r4
/* 80398B7C 003947DC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398B80 003947E0  42 00 FF EC */	bdnz lbl_80398B6C
lbl_80398B84:
/* 80398B84 003947E4  38 00 00 01 */	li r0, 1
/* 80398B88 003947E8  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80398B8C:
/* 80398B8C 003947EC  90 83 00 00 */	stw r4, 0(r3)
/* 80398B90 003947F0  38 60 00 00 */	li r3, 0
/* 80398B94 003947F4  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80398B98 003947F8  38 05 00 01 */	addi r0, r5, 1
/* 80398B9C 003947FC  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80398BA0 00394800  4E 80 00 20 */	blr 

.global func_80398BA4
func_80398BA4:
/* 80398BA4 00394804  80 83 00 00 */	lwz r4, 0(r3)
/* 80398BA8 00394808  38 A0 00 00 */	li r5, 0
/* 80398BAC 0039480C  2C 04 00 00 */	cmpwi r4, 0
/* 80398BB0 00394810  41 82 00 20 */	beq lbl_80398BD0
/* 80398BB4 00394814  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80398BB8 00394818  2C 05 00 00 */	cmpwi r5, 0
/* 80398BBC 0039481C  41 82 00 0C */	beq lbl_80398BC8
/* 80398BC0 00394820  38 A5 FF FF */	addi r5, r5, -1
/* 80398BC4 00394824  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80398BC8:
/* 80398BC8 00394828  38 00 00 00 */	li r0, 0
/* 80398BCC 0039482C  90 03 00 00 */	stw r0, 0(r3)
lbl_80398BD0:
/* 80398BD0 00394830  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80398BD4 00394834  4E 80 00 20 */	blr 

.global func_80398BD8
func_80398BD8:
/* 80398BD8 00394838  80 63 00 00 */	lwz r3, 0(r3)
/* 80398BDC 0039483C  2C 03 00 00 */	cmpwi r3, 0
/* 80398BE0 00394840  40 82 00 0C */	bne lbl_80398BEC
/* 80398BE4 00394844  38 60 00 00 */	li r3, 0
/* 80398BE8 00394848  4E 80 00 20 */	blr 
lbl_80398BEC:
/* 80398BEC 0039484C  2C 04 00 00 */	cmpwi r4, 0
/* 80398BF0 00394850  40 80 00 0C */	bge lbl_80398BFC
/* 80398BF4 00394854  38 60 00 00 */	li r3, 0
/* 80398BF8 00394858  4E 80 00 20 */	blr 
lbl_80398BFC:
/* 80398BFC 0039485C  1C 04 00 0C */	mulli r0, r4, 0xc
/* 80398C00 00394860  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80398C04 00394864  7C 63 02 14 */	add r3, r3, r0
/* 80398C08 00394868  4E 80 00 20 */	blr 

.global func_80398C0C
func_80398C0C:
/* 80398C0C 0039486C  80 63 00 00 */	lwz r3, 0(r3)
/* 80398C10 00394870  2C 03 00 00 */	cmpwi r3, 0
/* 80398C14 00394874  41 82 00 0C */	beq lbl_80398C20
/* 80398C18 00394878  80 63 00 00 */	lwz r3, 0(r3)
/* 80398C1C 0039487C  4E 80 00 20 */	blr 
lbl_80398C20:
/* 80398C20 00394880  38 60 00 00 */	li r3, 0
/* 80398C24 00394884  4E 80 00 20 */	blr 

.global func_80398C28
func_80398C28:
/* 80398C28 00394888  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398C2C 0039488C  7C 08 02 A6 */	mflr r0
/* 80398C30 00394890  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398C34 00394894  4B FF FF A5 */	bl func_80398BD8
/* 80398C38 00394898  2C 03 00 00 */	cmpwi r3, 0
/* 80398C3C 0039489C  41 82 00 0C */	beq lbl_80398C48
/* 80398C40 003948A0  A0 63 00 00 */	lhz r3, 0(r3)
/* 80398C44 003948A4  48 00 00 08 */	b lbl_80398C4C
lbl_80398C48:
/* 80398C48 003948A8  38 60 00 00 */	li r3, 0
lbl_80398C4C:
/* 80398C4C 003948AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398C50 003948B0  7C 08 03 A6 */	mtlr r0
/* 80398C54 003948B4  38 21 00 10 */	addi r1, r1, 0x10
/* 80398C58 003948B8  4E 80 00 20 */	blr 

.global func_80398C5C
func_80398C5C:
/* 80398C5C 003948BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398C60 003948C0  7C 08 02 A6 */	mflr r0
/* 80398C64 003948C4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398C68 003948C8  4B FF FF 71 */	bl func_80398BD8
/* 80398C6C 003948CC  2C 03 00 00 */	cmpwi r3, 0
/* 80398C70 003948D0  41 82 00 0C */	beq lbl_80398C7C
/* 80398C74 003948D4  A0 63 00 04 */	lhz r3, 4(r3)
/* 80398C78 003948D8  48 00 00 08 */	b lbl_80398C80
lbl_80398C7C:
/* 80398C7C 003948DC  38 60 00 00 */	li r3, 0
lbl_80398C80:
/* 80398C80 003948E0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398C84 003948E4  7C 08 03 A6 */	mtlr r0
/* 80398C88 003948E8  38 21 00 10 */	addi r1, r1, 0x10
/* 80398C8C 003948EC  4E 80 00 20 */	blr 

.global func_80398C90
func_80398C90:
/* 80398C90 003948F0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398C94 003948F4  7C 08 02 A6 */	mflr r0
/* 80398C98 003948F8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398C9C 003948FC  4B FF FF 3D */	bl func_80398BD8
/* 80398CA0 00394900  2C 03 00 00 */	cmpwi r3, 0
/* 80398CA4 00394904  41 82 00 0C */	beq lbl_80398CB0
/* 80398CA8 00394908  A0 63 00 06 */	lhz r3, 6(r3)
/* 80398CAC 0039490C  48 00 00 08 */	b lbl_80398CB4
lbl_80398CB0:
/* 80398CB0 00394910  38 60 00 00 */	li r3, 0
lbl_80398CB4:
/* 80398CB4 00394914  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398CB8 00394918  7C 08 03 A6 */	mtlr r0
/* 80398CBC 0039491C  38 21 00 10 */	addi r1, r1, 0x10
/* 80398CC0 00394920  4E 80 00 20 */	blr 

.global func_80398CC4
func_80398CC4:
/* 80398CC4 00394924  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398CC8 00394928  7C 08 02 A6 */	mflr r0
/* 80398CCC 0039492C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398CD0 00394930  4B FF FF 09 */	bl func_80398BD8
/* 80398CD4 00394934  2C 03 00 00 */	cmpwi r3, 0
/* 80398CD8 00394938  41 82 00 0C */	beq lbl_80398CE4
/* 80398CDC 0039493C  A0 63 00 08 */	lhz r3, 8(r3)
/* 80398CE0 00394940  48 00 00 08 */	b lbl_80398CE8
lbl_80398CE4:
/* 80398CE4 00394944  38 60 00 00 */	li r3, 0
lbl_80398CE8:
/* 80398CE8 00394948  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398CEC 0039494C  7C 08 03 A6 */	mtlr r0
/* 80398CF0 00394950  38 21 00 10 */	addi r1, r1, 0x10
/* 80398CF4 00394954  4E 80 00 20 */	blr 

.global func_80398CF8
func_80398CF8:
/* 80398CF8 00394958  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398CFC 0039495C  7C 08 02 A6 */	mflr r0
/* 80398D00 00394960  2C 04 00 00 */	cmpwi r4, 0
/* 80398D04 00394964  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398D08 00394968  38 00 00 00 */	li r0, 0
/* 80398D0C 0039496C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80398D10 00394970  7C 7F 1B 78 */	mr r31, r3
/* 80398D14 00394974  90 03 00 00 */	stw r0, 0(r3)
/* 80398D18 00394978  41 82 00 08 */	beq lbl_80398D20
/* 80398D1C 0039497C  48 00 00 7D */	bl func_80398D98
lbl_80398D20:
/* 80398D20 00394980  7F E3 FB 78 */	mr r3, r31
/* 80398D24 00394984  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398D28 00394988  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398D2C 0039498C  7C 08 03 A6 */	mtlr r0
/* 80398D30 00394990  38 21 00 10 */	addi r1, r1, 0x10
/* 80398D34 00394994  4E 80 00 20 */	blr 

.global func_80398D38
func_80398D38:
/* 80398D38 00394998  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398D3C 0039499C  7C 08 02 A6 */	mflr r0
/* 80398D40 003949A0  2C 03 00 00 */	cmpwi r3, 0
/* 80398D44 003949A4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398D48 003949A8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80398D4C 003949AC  7C 9F 23 78 */	mr r31, r4
/* 80398D50 003949B0  93 C1 00 08 */	stw r30, 8(r1)
/* 80398D54 003949B4  7C 7E 1B 78 */	mr r30, r3
/* 80398D58 003949B8  41 82 00 24 */	beq lbl_80398D7C
/* 80398D5C 003949BC  80 03 00 00 */	lwz r0, 0(r3)
/* 80398D60 003949C0  2C 00 00 00 */	cmpwi r0, 0
/* 80398D64 003949C4  41 82 00 08 */	beq lbl_80398D6C
/* 80398D68 003949C8  48 00 01 95 */	bl func_80398EFC
lbl_80398D6C:
/* 80398D6C 003949CC  2C 1F 00 00 */	cmpwi r31, 0
/* 80398D70 003949D0  40 81 00 0C */	ble lbl_80398D7C
/* 80398D74 003949D4  7F C3 F3 78 */	mr r3, r30
/* 80398D78 003949D8  4B E4 1D 41 */	bl __dl__FPv
lbl_80398D7C:
/* 80398D7C 003949DC  7F C3 F3 78 */	mr r3, r30
/* 80398D80 003949E0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80398D84 003949E4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80398D88 003949E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398D8C 003949EC  7C 08 03 A6 */	mtlr r0
/* 80398D90 003949F0  38 21 00 10 */	addi r1, r1, 0x10
/* 80398D94 003949F4  4E 80 00 20 */	blr 

.global func_80398D98
func_80398D98:
/* 80398D98 003949F8  2C 04 00 00 */	cmpwi r4, 0
/* 80398D9C 003949FC  40 82 00 0C */	bne lbl_80398DA8
/* 80398DA0 00394A00  38 60 FF FF */	li r3, -1
/* 80398DA4 00394A04  4E 80 00 20 */	blr 
lbl_80398DA8:
/* 80398DA8 00394A08  80 03 00 00 */	lwz r0, 0(r3)
/* 80398DAC 00394A0C  2C 00 00 00 */	cmpwi r0, 0
/* 80398DB0 00394A10  41 82 00 0C */	beq lbl_80398DBC
/* 80398DB4 00394A14  38 60 FF FE */	li r3, -2
/* 80398DB8 00394A18  4E 80 00 20 */	blr 
lbl_80398DBC:
/* 80398DBC 00394A1C  80 04 00 04 */	lwz r0, 4(r4)
/* 80398DC0 00394A20  28 00 00 BA */	cmplwi r0, 0xba
/* 80398DC4 00394A24  41 82 00 0C */	beq lbl_80398DD0
/* 80398DC8 00394A28  38 60 FF FD */	li r3, -3
/* 80398DCC 00394A2C  4E 80 00 20 */	blr 
lbl_80398DD0:
/* 80398DD0 00394A30  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80398DD4 00394A34  2C 00 00 00 */	cmpwi r0, 0
/* 80398DD8 00394A38  40 82 01 0C */	bne lbl_80398EE4
/* 80398DDC 00394A3C  80 04 00 08 */	lwz r0, 8(r4)
/* 80398DE0 00394A40  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80398DE4 00394A44  7C E0 22 14 */	add r7, r0, r4
/* 80398DE8 00394A48  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80398DEC 00394A4C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80398DF0 00394A50  7C C6 22 14 */	add r6, r6, r4
/* 80398DF4 00394A54  7C A5 22 14 */	add r5, r5, r4
/* 80398DF8 00394A58  90 E4 00 08 */	stw r7, 8(r4)
/* 80398DFC 00394A5C  2C 00 00 00 */	cmpwi r0, 0
/* 80398E00 00394A60  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80398E04 00394A64  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80398E08 00394A68  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80398E0C 00394A6C  41 82 00 0C */	beq lbl_80398E18
/* 80398E10 00394A70  7C 00 22 14 */	add r0, r0, r4
/* 80398E14 00394A74  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80398E18:
/* 80398E18 00394A78  2C 07 00 00 */	cmpwi r7, 0
/* 80398E1C 00394A7C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80398E20 00394A80  41 82 00 BC */	beq lbl_80398EDC
/* 80398E24 00394A84  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80398E28 00394A88  7C 09 03 A6 */	mtctr r0
/* 80398E2C 00394A8C  41 82 00 94 */	beq lbl_80398EC0
lbl_80398E30:
/* 80398E30 00394A90  80 C5 00 00 */	lwz r6, 0(r5)
/* 80398E34 00394A94  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E38 00394A98  7C 00 22 14 */	add r0, r0, r4
/* 80398E3C 00394A9C  7C 06 21 2E */	stwx r0, r6, r4
/* 80398E40 00394AA0  80 C5 00 04 */	lwz r6, 4(r5)
/* 80398E44 00394AA4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E48 00394AA8  7C 00 22 14 */	add r0, r0, r4
/* 80398E4C 00394AAC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398E50 00394AB0  80 C5 00 08 */	lwz r6, 8(r5)
/* 80398E54 00394AB4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E58 00394AB8  7C 00 22 14 */	add r0, r0, r4
/* 80398E5C 00394ABC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398E60 00394AC0  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80398E64 00394AC4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E68 00394AC8  7C 00 22 14 */	add r0, r0, r4
/* 80398E6C 00394ACC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398E70 00394AD0  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80398E74 00394AD4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E78 00394AD8  7C 00 22 14 */	add r0, r0, r4
/* 80398E7C 00394ADC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398E80 00394AE0  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80398E84 00394AE4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E88 00394AE8  7C 00 22 14 */	add r0, r0, r4
/* 80398E8C 00394AEC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398E90 00394AF0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80398E94 00394AF4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398E98 00394AF8  7C 00 22 14 */	add r0, r0, r4
/* 80398E9C 00394AFC  7C 06 21 2E */	stwx r0, r6, r4
/* 80398EA0 00394B00  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80398EA4 00394B04  38 A5 00 20 */	addi r5, r5, 0x20
/* 80398EA8 00394B08  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398EAC 00394B0C  7C 00 22 14 */	add r0, r0, r4
/* 80398EB0 00394B10  7C 06 21 2E */	stwx r0, r6, r4
/* 80398EB4 00394B14  42 00 FF 7C */	bdnz lbl_80398E30
/* 80398EB8 00394B18  70 E7 00 07 */	andi. r7, r7, 7
/* 80398EBC 00394B1C  41 82 00 20 */	beq lbl_80398EDC
lbl_80398EC0:
/* 80398EC0 00394B20  7C E9 03 A6 */	mtctr r7
lbl_80398EC4:
/* 80398EC4 00394B24  80 C5 00 00 */	lwz r6, 0(r5)
/* 80398EC8 00394B28  38 A5 00 04 */	addi r5, r5, 4
/* 80398ECC 00394B2C  7C 06 20 2E */	lwzx r0, r6, r4
/* 80398ED0 00394B30  7C 00 22 14 */	add r0, r0, r4
/* 80398ED4 00394B34  7C 06 21 2E */	stwx r0, r6, r4
/* 80398ED8 00394B38  42 00 FF EC */	bdnz lbl_80398EC4
lbl_80398EDC:
/* 80398EDC 00394B3C  38 00 00 01 */	li r0, 1
/* 80398EE0 00394B40  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80398EE4:
/* 80398EE4 00394B44  90 83 00 00 */	stw r4, 0(r3)
/* 80398EE8 00394B48  38 60 00 00 */	li r3, 0
/* 80398EEC 00394B4C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80398EF0 00394B50  38 05 00 01 */	addi r0, r5, 1
/* 80398EF4 00394B54  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80398EF8 00394B58  4E 80 00 20 */	blr 

.global func_80398EFC
func_80398EFC:
/* 80398EFC 00394B5C  80 83 00 00 */	lwz r4, 0(r3)
/* 80398F00 00394B60  38 A0 00 00 */	li r5, 0
/* 80398F04 00394B64  2C 04 00 00 */	cmpwi r4, 0
/* 80398F08 00394B68  41 82 00 20 */	beq lbl_80398F28
/* 80398F0C 00394B6C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80398F10 00394B70  2C 05 00 00 */	cmpwi r5, 0
/* 80398F14 00394B74  41 82 00 0C */	beq lbl_80398F20
/* 80398F18 00394B78  38 A5 FF FF */	addi r5, r5, -1
/* 80398F1C 00394B7C  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80398F20:
/* 80398F20 00394B80  38 00 00 00 */	li r0, 0
/* 80398F24 00394B84  90 03 00 00 */	stw r0, 0(r3)
lbl_80398F28:
/* 80398F28 00394B88  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80398F2C 00394B8C  4E 80 00 20 */	blr 

.global func_80398F30
func_80398F30:
/* 80398F30 00394B90  80 63 00 00 */	lwz r3, 0(r3)
/* 80398F34 00394B94  2C 03 00 00 */	cmpwi r3, 0
/* 80398F38 00394B98  40 82 00 0C */	bne lbl_80398F44
/* 80398F3C 00394B9C  38 60 00 00 */	li r3, 0
/* 80398F40 00394BA0  4E 80 00 20 */	blr 
lbl_80398F44:
/* 80398F44 00394BA4  2C 04 00 00 */	cmpwi r4, 0
/* 80398F48 00394BA8  40 80 00 0C */	bge lbl_80398F54
/* 80398F4C 00394BAC  38 60 00 00 */	li r3, 0
/* 80398F50 00394BB0  4E 80 00 20 */	blr 
lbl_80398F54:
/* 80398F54 00394BB4  1C 04 00 BA */	mulli r0, r4, 0xba
/* 80398F58 00394BB8  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80398F5C 00394BBC  7C 63 02 14 */	add r3, r3, r0
/* 80398F60 00394BC0  4E 80 00 20 */	blr 

.global func_80398F64
func_80398F64:
/* 80398F64 00394BC4  80 63 00 00 */	lwz r3, 0(r3)
/* 80398F68 00394BC8  2C 03 00 00 */	cmpwi r3, 0
/* 80398F6C 00394BCC  41 82 00 0C */	beq lbl_80398F78
/* 80398F70 00394BD0  80 63 00 00 */	lwz r3, 0(r3)
/* 80398F74 00394BD4  4E 80 00 20 */	blr 
lbl_80398F78:
/* 80398F78 00394BD8  38 60 00 00 */	li r3, 0
/* 80398F7C 00394BDC  4E 80 00 20 */	blr 

.global func_80398F80
func_80398F80:
/* 80398F80 00394BE0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398F84 00394BE4  7C 08 02 A6 */	mflr r0
/* 80398F88 00394BE8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398F8C 00394BEC  4B FF FF A5 */	bl func_80398F30
/* 80398F90 00394BF0  2C 03 00 00 */	cmpwi r3, 0
/* 80398F94 00394BF4  41 82 00 0C */	beq lbl_80398FA0
/* 80398F98 00394BF8  A0 63 00 00 */	lhz r3, 0(r3)
/* 80398F9C 00394BFC  48 00 00 08 */	b lbl_80398FA4
lbl_80398FA0:
/* 80398FA0 00394C00  38 60 00 00 */	li r3, 0
lbl_80398FA4:
/* 80398FA4 00394C04  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398FA8 00394C08  7C 08 03 A6 */	mtlr r0
/* 80398FAC 00394C0C  38 21 00 10 */	addi r1, r1, 0x10
/* 80398FB0 00394C10  4E 80 00 20 */	blr 

.global func_80398FB4
func_80398FB4:
/* 80398FB4 00394C14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398FB8 00394C18  7C 08 02 A6 */	mflr r0
/* 80398FBC 00394C1C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398FC0 00394C20  4B FF FF 71 */	bl func_80398F30
/* 80398FC4 00394C24  2C 03 00 00 */	cmpwi r3, 0
/* 80398FC8 00394C28  41 82 00 0C */	beq lbl_80398FD4
/* 80398FCC 00394C2C  88 63 00 B8 */	lbz r3, 0xb8(r3)
/* 80398FD0 00394C30  48 00 00 08 */	b lbl_80398FD8
lbl_80398FD4:
/* 80398FD4 00394C34  38 60 00 00 */	li r3, 0
lbl_80398FD8:
/* 80398FD8 00394C38  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80398FDC 00394C3C  7C 08 03 A6 */	mtlr r0
/* 80398FE0 00394C40  38 21 00 10 */	addi r1, r1, 0x10
/* 80398FE4 00394C44  4E 80 00 20 */	blr 

.global func_80398FE8
func_80398FE8:
/* 80398FE8 00394C48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80398FEC 00394C4C  7C 08 02 A6 */	mflr r0
/* 80398FF0 00394C50  90 01 00 14 */	stw r0, 0x14(r1)
/* 80398FF4 00394C54  4B FF FF 3D */	bl func_80398F30
/* 80398FF8 00394C58  2C 03 00 00 */	cmpwi r3, 0
/* 80398FFC 00394C5C  41 82 00 0C */	beq lbl_80399008
/* 80399000 00394C60  88 63 00 B9 */	lbz r3, 0xb9(r3)
/* 80399004 00394C64  48 00 00 08 */	b lbl_8039900C
lbl_80399008:
/* 80399008 00394C68  38 60 00 00 */	li r3, 0
lbl_8039900C:
/* 8039900C 00394C6C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399010 00394C70  7C 08 03 A6 */	mtlr r0
/* 80399014 00394C74  38 21 00 10 */	addi r1, r1, 0x10
/* 80399018 00394C78  4E 80 00 20 */	blr 

.global func_8039901C
func_8039901C:
/* 8039901C 00394C7C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399020 00394C80  7C 08 02 A6 */	mflr r0
/* 80399024 00394C84  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399028 00394C88  4B FF FF 09 */	bl func_80398F30
/* 8039902C 00394C8C  2C 03 00 00 */	cmpwi r3, 0
/* 80399030 00394C90  41 82 00 0C */	beq lbl_8039903C
/* 80399034 00394C94  A0 63 00 02 */	lhz r3, 2(r3)
/* 80399038 00394C98  48 00 00 08 */	b lbl_80399040
lbl_8039903C:
/* 8039903C 00394C9C  38 60 00 00 */	li r3, 0
lbl_80399040:
/* 80399040 00394CA0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399044 00394CA4  7C 08 03 A6 */	mtlr r0
/* 80399048 00394CA8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039904C 00394CAC  4E 80 00 20 */	blr 

.global func_80399050
func_80399050:
/* 80399050 00394CB0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399054 00394CB4  7C 08 02 A6 */	mflr r0
/* 80399058 00394CB8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039905C 00394CBC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399060 00394CC0  7C BF 2B 78 */	mr r31, r5
/* 80399064 00394CC4  4B FF FE CD */	bl func_80398F30
/* 80399068 00394CC8  2C 03 00 00 */	cmpwi r3, 0
/* 8039906C 00394CCC  40 82 00 0C */	bne lbl_80399078
/* 80399070 00394CD0  38 60 00 00 */	li r3, 0
/* 80399074 00394CD4  48 00 00 20 */	b lbl_80399094
lbl_80399078:
/* 80399078 00394CD8  28 1F 00 10 */	cmplwi r31, 0x10
/* 8039907C 00394CDC  41 80 00 0C */	blt lbl_80399088
/* 80399080 00394CE0  38 60 00 00 */	li r3, 0
/* 80399084 00394CE4  48 00 00 10 */	b lbl_80399094
lbl_80399088:
/* 80399088 00394CE8  57 E0 08 3C */	slwi r0, r31, 1
/* 8039908C 00394CEC  7C 63 02 14 */	add r3, r3, r0
/* 80399090 00394CF0  A0 63 00 08 */	lhz r3, 8(r3)
lbl_80399094:
/* 80399094 00394CF4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399098 00394CF8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039909C 00394CFC  7C 08 03 A6 */	mtlr r0
/* 803990A0 00394D00  38 21 00 10 */	addi r1, r1, 0x10
/* 803990A4 00394D04  4E 80 00 20 */	blr 

.global func_803990A8
func_803990A8:
/* 803990A8 00394D08  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803990AC 00394D0C  7C 08 02 A6 */	mflr r0
/* 803990B0 00394D10  90 01 00 14 */	stw r0, 0x14(r1)
/* 803990B4 00394D14  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803990B8 00394D18  7C BF 2B 78 */	mr r31, r5
/* 803990BC 00394D1C  4B FF FE 75 */	bl func_80398F30
/* 803990C0 00394D20  2C 03 00 00 */	cmpwi r3, 0
/* 803990C4 00394D24  40 82 00 0C */	bne lbl_803990D0
/* 803990C8 00394D28  38 60 00 00 */	li r3, 0
/* 803990CC 00394D2C  48 00 00 20 */	b lbl_803990EC
lbl_803990D0:
/* 803990D0 00394D30  28 1F 00 10 */	cmplwi r31, 0x10
/* 803990D4 00394D34  41 80 00 0C */	blt lbl_803990E0
/* 803990D8 00394D38  38 60 00 00 */	li r3, 0
/* 803990DC 00394D3C  48 00 00 10 */	b lbl_803990EC
lbl_803990E0:
/* 803990E0 00394D40  57 E0 08 3C */	slwi r0, r31, 1
/* 803990E4 00394D44  7C 63 02 14 */	add r3, r3, r0
/* 803990E8 00394D48  A0 63 00 28 */	lhz r3, 0x28(r3)
lbl_803990EC:
/* 803990EC 00394D4C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803990F0 00394D50  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803990F4 00394D54  7C 08 03 A6 */	mtlr r0
/* 803990F8 00394D58  38 21 00 10 */	addi r1, r1, 0x10
/* 803990FC 00394D5C  4E 80 00 20 */	blr 

.global func_80399100
func_80399100:
/* 80399100 00394D60  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399104 00394D64  7C 08 02 A6 */	mflr r0
/* 80399108 00394D68  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039910C 00394D6C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399110 00394D70  7C BF 2B 78 */	mr r31, r5
/* 80399114 00394D74  4B FF FE 1D */	bl func_80398F30
/* 80399118 00394D78  2C 03 00 00 */	cmpwi r3, 0
/* 8039911C 00394D7C  40 82 00 0C */	bne lbl_80399128
/* 80399120 00394D80  38 60 00 00 */	li r3, 0
/* 80399124 00394D84  48 00 00 20 */	b lbl_80399144
lbl_80399128:
/* 80399128 00394D88  28 1F 00 10 */	cmplwi r31, 0x10
/* 8039912C 00394D8C  41 80 00 0C */	blt lbl_80399138
/* 80399130 00394D90  38 60 00 00 */	li r3, 0
/* 80399134 00394D94  48 00 00 10 */	b lbl_80399144
lbl_80399138:
/* 80399138 00394D98  57 E0 08 3C */	slwi r0, r31, 1
/* 8039913C 00394D9C  7C 63 02 14 */	add r3, r3, r0
/* 80399140 00394DA0  A0 63 00 48 */	lhz r3, 0x48(r3)
lbl_80399144:
/* 80399144 00394DA4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399148 00394DA8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039914C 00394DAC  7C 08 03 A6 */	mtlr r0
/* 80399150 00394DB0  38 21 00 10 */	addi r1, r1, 0x10
/* 80399154 00394DB4  4E 80 00 20 */	blr 

.global func_80399158
func_80399158:
/* 80399158 00394DB8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039915C 00394DBC  7C 08 02 A6 */	mflr r0
/* 80399160 00394DC0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399164 00394DC4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399168 00394DC8  7C BF 2B 78 */	mr r31, r5
/* 8039916C 00394DCC  4B FF FD C5 */	bl func_80398F30
/* 80399170 00394DD0  2C 03 00 00 */	cmpwi r3, 0
/* 80399174 00394DD4  40 82 00 0C */	bne lbl_80399180
/* 80399178 00394DD8  38 60 00 00 */	li r3, 0
/* 8039917C 00394DDC  48 00 00 20 */	b lbl_8039919C
lbl_80399180:
/* 80399180 00394DE0  28 1F 00 10 */	cmplwi r31, 0x10
/* 80399184 00394DE4  41 80 00 0C */	blt lbl_80399190
/* 80399188 00394DE8  38 60 00 00 */	li r3, 0
/* 8039918C 00394DEC  48 00 00 10 */	b lbl_8039919C
lbl_80399190:
/* 80399190 00394DF0  57 E0 08 3C */	slwi r0, r31, 1
/* 80399194 00394DF4  7C 63 02 14 */	add r3, r3, r0
/* 80399198 00394DF8  A0 63 00 68 */	lhz r3, 0x68(r3)
lbl_8039919C:
/* 8039919C 00394DFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803991A0 00394E00  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803991A4 00394E04  7C 08 03 A6 */	mtlr r0
/* 803991A8 00394E08  38 21 00 10 */	addi r1, r1, 0x10
/* 803991AC 00394E0C  4E 80 00 20 */	blr 

.global func_803991B0
func_803991B0:
/* 803991B0 00394E10  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803991B4 00394E14  7C 08 02 A6 */	mflr r0
/* 803991B8 00394E18  90 01 00 14 */	stw r0, 0x14(r1)
/* 803991BC 00394E1C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803991C0 00394E20  7C BF 2B 78 */	mr r31, r5
/* 803991C4 00394E24  4B FF FD 6D */	bl func_80398F30
/* 803991C8 00394E28  2C 03 00 00 */	cmpwi r3, 0
/* 803991CC 00394E2C  40 82 00 0C */	bne lbl_803991D8
/* 803991D0 00394E30  38 60 00 00 */	li r3, 0
/* 803991D4 00394E34  48 00 00 20 */	b lbl_803991F4
lbl_803991D8:
/* 803991D8 00394E38  28 1F 00 10 */	cmplwi r31, 0x10
/* 803991DC 00394E3C  41 80 00 0C */	blt lbl_803991E8
/* 803991E0 00394E40  38 60 00 00 */	li r3, 0
/* 803991E4 00394E44  48 00 00 10 */	b lbl_803991F4
lbl_803991E8:
/* 803991E8 00394E48  57 E0 08 3C */	slwi r0, r31, 1
/* 803991EC 00394E4C  7C 63 02 14 */	add r3, r3, r0
/* 803991F0 00394E50  A0 63 00 88 */	lhz r3, 0x88(r3)
lbl_803991F4:
/* 803991F4 00394E54  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803991F8 00394E58  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803991FC 00394E5C  7C 08 03 A6 */	mtlr r0
/* 80399200 00394E60  38 21 00 10 */	addi r1, r1, 0x10
/* 80399204 00394E64  4E 80 00 20 */	blr 

.global func_80399208
func_80399208:
/* 80399208 00394E68  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039920C 00394E6C  7C 08 02 A6 */	mflr r0
/* 80399210 00394E70  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399214 00394E74  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399218 00394E78  7C BF 2B 78 */	mr r31, r5
/* 8039921C 00394E7C  4B FF FD 15 */	bl func_80398F30
/* 80399220 00394E80  2C 03 00 00 */	cmpwi r3, 0
/* 80399224 00394E84  40 82 00 0C */	bne lbl_80399230
/* 80399228 00394E88  38 60 00 00 */	li r3, 0
/* 8039922C 00394E8C  48 00 00 20 */	b lbl_8039924C
lbl_80399230:
/* 80399230 00394E90  28 1F 00 04 */	cmplwi r31, 4
/* 80399234 00394E94  41 80 00 0C */	blt lbl_80399240
/* 80399238 00394E98  38 60 00 00 */	li r3, 0
/* 8039923C 00394E9C  48 00 00 10 */	b lbl_8039924C
lbl_80399240:
/* 80399240 00394EA0  57 E0 08 3C */	slwi r0, r31, 1
/* 80399244 00394EA4  7C 63 02 14 */	add r3, r3, r0
/* 80399248 00394EA8  A0 63 00 A8 */	lhz r3, 0xa8(r3)
lbl_8039924C:
/* 8039924C 00394EAC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399250 00394EB0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399254 00394EB4  7C 08 03 A6 */	mtlr r0
/* 80399258 00394EB8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039925C 00394EBC  4E 80 00 20 */	blr 

.global func_80399260
func_80399260:
/* 80399260 00394EC0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399264 00394EC4  7C 08 02 A6 */	mflr r0
/* 80399268 00394EC8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039926C 00394ECC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399270 00394ED0  7C BF 2B 78 */	mr r31, r5
/* 80399274 00394ED4  4B FF FC BD */	bl func_80398F30
/* 80399278 00394ED8  2C 03 00 00 */	cmpwi r3, 0
/* 8039927C 00394EDC  40 82 00 0C */	bne lbl_80399288
/* 80399280 00394EE0  38 60 00 00 */	li r3, 0
/* 80399284 00394EE4  48 00 00 20 */	b lbl_803992A4
lbl_80399288:
/* 80399288 00394EE8  28 1F 00 04 */	cmplwi r31, 4
/* 8039928C 00394EEC  41 80 00 0C */	blt lbl_80399298
/* 80399290 00394EF0  38 60 00 00 */	li r3, 0
/* 80399294 00394EF4  48 00 00 10 */	b lbl_803992A4
lbl_80399298:
/* 80399298 00394EF8  57 E0 08 3C */	slwi r0, r31, 1
/* 8039929C 00394EFC  7C 63 02 14 */	add r3, r3, r0
/* 803992A0 00394F00  A0 63 00 B0 */	lhz r3, 0xb0(r3)
lbl_803992A4:
/* 803992A4 00394F04  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803992A8 00394F08  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803992AC 00394F0C  7C 08 03 A6 */	mtlr r0
/* 803992B0 00394F10  38 21 00 10 */	addi r1, r1, 0x10
/* 803992B4 00394F14  4E 80 00 20 */	blr 

.global func_803992B8
func_803992B8:
/* 803992B8 00394F18  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803992BC 00394F1C  7C 08 02 A6 */	mflr r0
/* 803992C0 00394F20  2C 04 00 00 */	cmpwi r4, 0
/* 803992C4 00394F24  90 01 00 14 */	stw r0, 0x14(r1)
/* 803992C8 00394F28  38 00 00 00 */	li r0, 0
/* 803992CC 00394F2C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803992D0 00394F30  7C 7F 1B 78 */	mr r31, r3
/* 803992D4 00394F34  90 03 00 00 */	stw r0, 0(r3)
/* 803992D8 00394F38  41 82 00 08 */	beq lbl_803992E0
/* 803992DC 00394F3C  48 00 00 7D */	bl func_80399358
lbl_803992E0:
/* 803992E0 00394F40  7F E3 FB 78 */	mr r3, r31
/* 803992E4 00394F44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803992E8 00394F48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803992EC 00394F4C  7C 08 03 A6 */	mtlr r0
/* 803992F0 00394F50  38 21 00 10 */	addi r1, r1, 0x10
/* 803992F4 00394F54  4E 80 00 20 */	blr 

.global func_803992F8
func_803992F8:
/* 803992F8 00394F58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803992FC 00394F5C  7C 08 02 A6 */	mflr r0
/* 80399300 00394F60  2C 03 00 00 */	cmpwi r3, 0
/* 80399304 00394F64  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399308 00394F68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039930C 00394F6C  7C 9F 23 78 */	mr r31, r4
/* 80399310 00394F70  93 C1 00 08 */	stw r30, 8(r1)
/* 80399314 00394F74  7C 7E 1B 78 */	mr r30, r3
/* 80399318 00394F78  41 82 00 24 */	beq lbl_8039933C
/* 8039931C 00394F7C  80 03 00 00 */	lwz r0, 0(r3)
/* 80399320 00394F80  2C 00 00 00 */	cmpwi r0, 0
/* 80399324 00394F84  41 82 00 08 */	beq lbl_8039932C
/* 80399328 00394F88  48 00 01 95 */	bl func_803994BC
lbl_8039932C:
/* 8039932C 00394F8C  2C 1F 00 00 */	cmpwi r31, 0
/* 80399330 00394F90  40 81 00 0C */	ble lbl_8039933C
/* 80399334 00394F94  7F C3 F3 78 */	mr r3, r30
/* 80399338 00394F98  4B E4 17 81 */	bl __dl__FPv
lbl_8039933C:
/* 8039933C 00394F9C  7F C3 F3 78 */	mr r3, r30
/* 80399340 00394FA0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399344 00394FA4  83 C1 00 08 */	lwz r30, 8(r1)
/* 80399348 00394FA8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039934C 00394FAC  7C 08 03 A6 */	mtlr r0
/* 80399350 00394FB0  38 21 00 10 */	addi r1, r1, 0x10
/* 80399354 00394FB4  4E 80 00 20 */	blr 

.global func_80399358
func_80399358:
/* 80399358 00394FB8  2C 04 00 00 */	cmpwi r4, 0
/* 8039935C 00394FBC  40 82 00 0C */	bne lbl_80399368
/* 80399360 00394FC0  38 60 FF FF */	li r3, -1
/* 80399364 00394FC4  4E 80 00 20 */	blr 
lbl_80399368:
/* 80399368 00394FC8  80 03 00 00 */	lwz r0, 0(r3)
/* 8039936C 00394FCC  2C 00 00 00 */	cmpwi r0, 0
/* 80399370 00394FD0  41 82 00 0C */	beq lbl_8039937C
/* 80399374 00394FD4  38 60 FF FE */	li r3, -2
/* 80399378 00394FD8  4E 80 00 20 */	blr 
lbl_8039937C:
/* 8039937C 00394FDC  80 04 00 04 */	lwz r0, 4(r4)
/* 80399380 00394FE0  28 00 00 2C */	cmplwi r0, 0x2c
/* 80399384 00394FE4  41 82 00 0C */	beq lbl_80399390
/* 80399388 00394FE8  38 60 FF FD */	li r3, -3
/* 8039938C 00394FEC  4E 80 00 20 */	blr 
lbl_80399390:
/* 80399390 00394FF0  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80399394 00394FF4  2C 00 00 00 */	cmpwi r0, 0
/* 80399398 00394FF8  40 82 01 0C */	bne lbl_803994A4
/* 8039939C 00394FFC  80 04 00 08 */	lwz r0, 8(r4)
/* 803993A0 00395000  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 803993A4 00395004  7C E0 22 14 */	add r7, r0, r4
/* 803993A8 00395008  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803993AC 0039500C  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803993B0 00395010  7C C6 22 14 */	add r6, r6, r4
/* 803993B4 00395014  7C A5 22 14 */	add r5, r5, r4
/* 803993B8 00395018  90 E4 00 08 */	stw r7, 8(r4)
/* 803993BC 0039501C  2C 00 00 00 */	cmpwi r0, 0
/* 803993C0 00395020  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803993C4 00395024  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803993C8 00395028  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803993CC 0039502C  41 82 00 0C */	beq lbl_803993D8
/* 803993D0 00395030  7C 00 22 14 */	add r0, r0, r4
/* 803993D4 00395034  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803993D8:
/* 803993D8 00395038  2C 07 00 00 */	cmpwi r7, 0
/* 803993DC 0039503C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803993E0 00395040  41 82 00 BC */	beq lbl_8039949C
/* 803993E4 00395044  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803993E8 00395048  7C 09 03 A6 */	mtctr r0
/* 803993EC 0039504C  41 82 00 94 */	beq lbl_80399480
lbl_803993F0:
/* 803993F0 00395050  80 C5 00 00 */	lwz r6, 0(r5)
/* 803993F4 00395054  7C 06 20 2E */	lwzx r0, r6, r4
/* 803993F8 00395058  7C 00 22 14 */	add r0, r0, r4
/* 803993FC 0039505C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399400 00395060  80 C5 00 04 */	lwz r6, 4(r5)
/* 80399404 00395064  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399408 00395068  7C 00 22 14 */	add r0, r0, r4
/* 8039940C 0039506C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399410 00395070  80 C5 00 08 */	lwz r6, 8(r5)
/* 80399414 00395074  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399418 00395078  7C 00 22 14 */	add r0, r0, r4
/* 8039941C 0039507C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399420 00395080  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80399424 00395084  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399428 00395088  7C 00 22 14 */	add r0, r0, r4
/* 8039942C 0039508C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399430 00395090  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80399434 00395094  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399438 00395098  7C 00 22 14 */	add r0, r0, r4
/* 8039943C 0039509C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399440 003950A0  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80399444 003950A4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399448 003950A8  7C 00 22 14 */	add r0, r0, r4
/* 8039944C 003950AC  7C 06 21 2E */	stwx r0, r6, r4
/* 80399450 003950B0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80399454 003950B4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399458 003950B8  7C 00 22 14 */	add r0, r0, r4
/* 8039945C 003950BC  7C 06 21 2E */	stwx r0, r6, r4
/* 80399460 003950C0  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80399464 003950C4  38 A5 00 20 */	addi r5, r5, 0x20
/* 80399468 003950C8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039946C 003950CC  7C 00 22 14 */	add r0, r0, r4
/* 80399470 003950D0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399474 003950D4  42 00 FF 7C */	bdnz lbl_803993F0
/* 80399478 003950D8  70 E7 00 07 */	andi. r7, r7, 7
/* 8039947C 003950DC  41 82 00 20 */	beq lbl_8039949C
lbl_80399480:
/* 80399480 003950E0  7C E9 03 A6 */	mtctr r7
lbl_80399484:
/* 80399484 003950E4  80 C5 00 00 */	lwz r6, 0(r5)
/* 80399488 003950E8  38 A5 00 04 */	addi r5, r5, 4
/* 8039948C 003950EC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399490 003950F0  7C 00 22 14 */	add r0, r0, r4
/* 80399494 003950F4  7C 06 21 2E */	stwx r0, r6, r4
/* 80399498 003950F8  42 00 FF EC */	bdnz lbl_80399484
lbl_8039949C:
/* 8039949C 003950FC  38 00 00 01 */	li r0, 1
/* 803994A0 00395100  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_803994A4:
/* 803994A4 00395104  90 83 00 00 */	stw r4, 0(r3)
/* 803994A8 00395108  38 60 00 00 */	li r3, 0
/* 803994AC 0039510C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803994B0 00395110  38 05 00 01 */	addi r0, r5, 1
/* 803994B4 00395114  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803994B8 00395118  4E 80 00 20 */	blr 

.global func_803994BC
func_803994BC:
/* 803994BC 0039511C  80 83 00 00 */	lwz r4, 0(r3)
/* 803994C0 00395120  38 A0 00 00 */	li r5, 0
/* 803994C4 00395124  2C 04 00 00 */	cmpwi r4, 0
/* 803994C8 00395128  41 82 00 20 */	beq lbl_803994E8
/* 803994CC 0039512C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803994D0 00395130  2C 05 00 00 */	cmpwi r5, 0
/* 803994D4 00395134  41 82 00 0C */	beq lbl_803994E0
/* 803994D8 00395138  38 A5 FF FF */	addi r5, r5, -1
/* 803994DC 0039513C  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803994E0:
/* 803994E0 00395140  38 00 00 00 */	li r0, 0
/* 803994E4 00395144  90 03 00 00 */	stw r0, 0(r3)
lbl_803994E8:
/* 803994E8 00395148  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803994EC 0039514C  4E 80 00 20 */	blr 

.global func_803994F0
func_803994F0:
/* 803994F0 00395150  80 63 00 00 */	lwz r3, 0(r3)
/* 803994F4 00395154  2C 03 00 00 */	cmpwi r3, 0
/* 803994F8 00395158  40 82 00 0C */	bne lbl_80399504
/* 803994FC 0039515C  38 60 00 00 */	li r3, 0
/* 80399500 00395160  4E 80 00 20 */	blr 
lbl_80399504:
/* 80399504 00395164  2C 04 00 00 */	cmpwi r4, 0
/* 80399508 00395168  40 80 00 0C */	bge lbl_80399514
/* 8039950C 0039516C  38 60 00 00 */	li r3, 0
/* 80399510 00395170  4E 80 00 20 */	blr 
lbl_80399514:
/* 80399514 00395174  1C 04 00 2C */	mulli r0, r4, 0x2c
/* 80399518 00395178  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8039951C 0039517C  7C 63 02 14 */	add r3, r3, r0
/* 80399520 00395180  4E 80 00 20 */	blr 

.global func_80399524
func_80399524:
/* 80399524 00395184  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399528 00395188  7C 08 02 A6 */	mflr r0
/* 8039952C 0039518C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399530 00395190  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399534 00395194  7C BF 2B 78 */	mr r31, r5
/* 80399538 00395198  4B FF FF B9 */	bl func_803994F0
/* 8039953C 0039519C  2C 03 00 00 */	cmpwi r3, 0
/* 80399540 003951A0  40 82 00 0C */	bne lbl_8039954C
/* 80399544 003951A4  38 60 00 00 */	li r3, 0
/* 80399548 003951A8  48 00 00 1C */	b lbl_80399564
lbl_8039954C:
/* 8039954C 003951AC  28 1F 00 15 */	cmplwi r31, 0x15
/* 80399550 003951B0  41 80 00 0C */	blt lbl_8039955C
/* 80399554 003951B4  38 60 00 00 */	li r3, 0
/* 80399558 003951B8  48 00 00 0C */	b lbl_80399564
lbl_8039955C:
/* 8039955C 003951BC  57 E0 08 3C */	slwi r0, r31, 1
/* 80399560 003951C0  7C 63 02 2E */	lhzx r3, r3, r0
lbl_80399564:
/* 80399564 003951C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399568 003951C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039956C 003951CC  7C 08 03 A6 */	mtlr r0
/* 80399570 003951D0  38 21 00 10 */	addi r1, r1, 0x10
/* 80399574 003951D4  4E 80 00 20 */	blr 

.global func_80399578
func_80399578:
/* 80399578 003951D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039957C 003951DC  7C 08 02 A6 */	mflr r0
/* 80399580 003951E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399584 003951E4  4B FF FF 6D */	bl func_803994F0
/* 80399588 003951E8  2C 03 00 00 */	cmpwi r3, 0
/* 8039958C 003951EC  41 82 00 0C */	beq lbl_80399598
/* 80399590 003951F0  88 63 00 2A */	lbz r3, 0x2a(r3)
/* 80399594 003951F4  48 00 00 08 */	b lbl_8039959C
lbl_80399598:
/* 80399598 003951F8  38 60 00 00 */	li r3, 0
lbl_8039959C:
/* 8039959C 003951FC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803995A0 00395200  7C 08 03 A6 */	mtlr r0
/* 803995A4 00395204  38 21 00 10 */	addi r1, r1, 0x10
/* 803995A8 00395208  4E 80 00 20 */	blr 

.global func_803995AC
func_803995AC:
/* 803995AC 0039520C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803995B0 00395210  7C 08 02 A6 */	mflr r0
/* 803995B4 00395214  2C 04 00 00 */	cmpwi r4, 0
/* 803995B8 00395218  90 01 00 14 */	stw r0, 0x14(r1)
/* 803995BC 0039521C  38 00 00 00 */	li r0, 0
/* 803995C0 00395220  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803995C4 00395224  7C 7F 1B 78 */	mr r31, r3
/* 803995C8 00395228  90 03 00 00 */	stw r0, 0(r3)
/* 803995CC 0039522C  41 82 00 08 */	beq lbl_803995D4
/* 803995D0 00395230  48 00 00 7D */	bl func_8039964C
lbl_803995D4:
/* 803995D4 00395234  7F E3 FB 78 */	mr r3, r31
/* 803995D8 00395238  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803995DC 0039523C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803995E0 00395240  7C 08 03 A6 */	mtlr r0
/* 803995E4 00395244  38 21 00 10 */	addi r1, r1, 0x10
/* 803995E8 00395248  4E 80 00 20 */	blr 

.global func_803995EC
func_803995EC:
/* 803995EC 0039524C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803995F0 00395250  7C 08 02 A6 */	mflr r0
/* 803995F4 00395254  2C 03 00 00 */	cmpwi r3, 0
/* 803995F8 00395258  90 01 00 14 */	stw r0, 0x14(r1)
/* 803995FC 0039525C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399600 00395260  7C 9F 23 78 */	mr r31, r4
/* 80399604 00395264  93 C1 00 08 */	stw r30, 8(r1)
/* 80399608 00395268  7C 7E 1B 78 */	mr r30, r3
/* 8039960C 0039526C  41 82 00 24 */	beq lbl_80399630
/* 80399610 00395270  80 03 00 00 */	lwz r0, 0(r3)
/* 80399614 00395274  2C 00 00 00 */	cmpwi r0, 0
/* 80399618 00395278  41 82 00 08 */	beq lbl_80399620
/* 8039961C 0039527C  48 00 01 95 */	bl func_803997B0
lbl_80399620:
/* 80399620 00395280  2C 1F 00 00 */	cmpwi r31, 0
/* 80399624 00395284  40 81 00 0C */	ble lbl_80399630
/* 80399628 00395288  7F C3 F3 78 */	mr r3, r30
/* 8039962C 0039528C  4B E4 14 8D */	bl __dl__FPv
lbl_80399630:
/* 80399630 00395290  7F C3 F3 78 */	mr r3, r30
/* 80399634 00395294  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399638 00395298  83 C1 00 08 */	lwz r30, 8(r1)
/* 8039963C 0039529C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399640 003952A0  7C 08 03 A6 */	mtlr r0
/* 80399644 003952A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80399648 003952A8  4E 80 00 20 */	blr 

.global func_8039964C
func_8039964C:
/* 8039964C 003952AC  2C 04 00 00 */	cmpwi r4, 0
/* 80399650 003952B0  40 82 00 0C */	bne lbl_8039965C
/* 80399654 003952B4  38 60 FF FF */	li r3, -1
/* 80399658 003952B8  4E 80 00 20 */	blr 
lbl_8039965C:
/* 8039965C 003952BC  80 03 00 00 */	lwz r0, 0(r3)
/* 80399660 003952C0  2C 00 00 00 */	cmpwi r0, 0
/* 80399664 003952C4  41 82 00 0C */	beq lbl_80399670
/* 80399668 003952C8  38 60 FF FE */	li r3, -2
/* 8039966C 003952CC  4E 80 00 20 */	blr 
lbl_80399670:
/* 80399670 003952D0  80 04 00 04 */	lwz r0, 4(r4)
/* 80399674 003952D4  28 00 00 20 */	cmplwi r0, 0x20
/* 80399678 003952D8  41 82 00 0C */	beq lbl_80399684
/* 8039967C 003952DC  38 60 FF FD */	li r3, -3
/* 80399680 003952E0  4E 80 00 20 */	blr 
lbl_80399684:
/* 80399684 003952E4  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80399688 003952E8  2C 00 00 00 */	cmpwi r0, 0
/* 8039968C 003952EC  40 82 01 0C */	bne lbl_80399798
/* 80399690 003952F0  80 04 00 08 */	lwz r0, 8(r4)
/* 80399694 003952F4  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80399698 003952F8  7C E0 22 14 */	add r7, r0, r4
/* 8039969C 003952FC  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803996A0 00395300  80 04 00 20 */	lwz r0, 0x20(r4)
/* 803996A4 00395304  7C C6 22 14 */	add r6, r6, r4
/* 803996A8 00395308  7C A5 22 14 */	add r5, r5, r4
/* 803996AC 0039530C  90 E4 00 08 */	stw r7, 8(r4)
/* 803996B0 00395310  2C 00 00 00 */	cmpwi r0, 0
/* 803996B4 00395314  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 803996B8 00395318  90 C4 00 10 */	stw r6, 0x10(r4)
/* 803996BC 0039531C  90 A4 00 18 */	stw r5, 0x18(r4)
/* 803996C0 00395320  41 82 00 0C */	beq lbl_803996CC
/* 803996C4 00395324  7C 00 22 14 */	add r0, r0, r4
/* 803996C8 00395328  90 04 00 20 */	stw r0, 0x20(r4)
lbl_803996CC:
/* 803996CC 0039532C  2C 07 00 00 */	cmpwi r7, 0
/* 803996D0 00395330  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 803996D4 00395334  41 82 00 BC */	beq lbl_80399790
/* 803996D8 00395338  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803996DC 0039533C  7C 09 03 A6 */	mtctr r0
/* 803996E0 00395340  41 82 00 94 */	beq lbl_80399774
lbl_803996E4:
/* 803996E4 00395344  80 C5 00 00 */	lwz r6, 0(r5)
/* 803996E8 00395348  7C 06 20 2E */	lwzx r0, r6, r4
/* 803996EC 0039534C  7C 00 22 14 */	add r0, r0, r4
/* 803996F0 00395350  7C 06 21 2E */	stwx r0, r6, r4
/* 803996F4 00395354  80 C5 00 04 */	lwz r6, 4(r5)
/* 803996F8 00395358  7C 06 20 2E */	lwzx r0, r6, r4
/* 803996FC 0039535C  7C 00 22 14 */	add r0, r0, r4
/* 80399700 00395360  7C 06 21 2E */	stwx r0, r6, r4
/* 80399704 00395364  80 C5 00 08 */	lwz r6, 8(r5)
/* 80399708 00395368  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039970C 0039536C  7C 00 22 14 */	add r0, r0, r4
/* 80399710 00395370  7C 06 21 2E */	stwx r0, r6, r4
/* 80399714 00395374  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80399718 00395378  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039971C 0039537C  7C 00 22 14 */	add r0, r0, r4
/* 80399720 00395380  7C 06 21 2E */	stwx r0, r6, r4
/* 80399724 00395384  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80399728 00395388  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039972C 0039538C  7C 00 22 14 */	add r0, r0, r4
/* 80399730 00395390  7C 06 21 2E */	stwx r0, r6, r4
/* 80399734 00395394  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80399738 00395398  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039973C 0039539C  7C 00 22 14 */	add r0, r0, r4
/* 80399740 003953A0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399744 003953A4  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80399748 003953A8  7C 06 20 2E */	lwzx r0, r6, r4
/* 8039974C 003953AC  7C 00 22 14 */	add r0, r0, r4
/* 80399750 003953B0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399754 003953B4  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80399758 003953B8  38 A5 00 20 */	addi r5, r5, 0x20
/* 8039975C 003953BC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399760 003953C0  7C 00 22 14 */	add r0, r0, r4
/* 80399764 003953C4  7C 06 21 2E */	stwx r0, r6, r4
/* 80399768 003953C8  42 00 FF 7C */	bdnz lbl_803996E4
/* 8039976C 003953CC  70 E7 00 07 */	andi. r7, r7, 7
/* 80399770 003953D0  41 82 00 20 */	beq lbl_80399790
lbl_80399774:
/* 80399774 003953D4  7C E9 03 A6 */	mtctr r7
lbl_80399778:
/* 80399778 003953D8  80 C5 00 00 */	lwz r6, 0(r5)
/* 8039977C 003953DC  38 A5 00 04 */	addi r5, r5, 4
/* 80399780 003953E0  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399784 003953E4  7C 00 22 14 */	add r0, r0, r4
/* 80399788 003953E8  7C 06 21 2E */	stwx r0, r6, r4
/* 8039978C 003953EC  42 00 FF EC */	bdnz lbl_80399778
lbl_80399790:
/* 80399790 003953F0  38 00 00 01 */	li r0, 1
/* 80399794 003953F4  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80399798:
/* 80399798 003953F8  90 83 00 00 */	stw r4, 0(r3)
/* 8039979C 003953FC  38 60 00 00 */	li r3, 0
/* 803997A0 00395400  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803997A4 00395404  38 05 00 01 */	addi r0, r5, 1
/* 803997A8 00395408  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 803997AC 0039540C  4E 80 00 20 */	blr 

.global func_803997B0
func_803997B0:
/* 803997B0 00395410  80 83 00 00 */	lwz r4, 0(r3)
/* 803997B4 00395414  38 A0 00 00 */	li r5, 0
/* 803997B8 00395418  2C 04 00 00 */	cmpwi r4, 0
/* 803997BC 0039541C  41 82 00 20 */	beq lbl_803997DC
/* 803997C0 00395420  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 803997C4 00395424  2C 05 00 00 */	cmpwi r5, 0
/* 803997C8 00395428  41 82 00 0C */	beq lbl_803997D4
/* 803997CC 0039542C  38 A5 FF FF */	addi r5, r5, -1
/* 803997D0 00395430  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_803997D4:
/* 803997D4 00395434  38 00 00 00 */	li r0, 0
/* 803997D8 00395438  90 03 00 00 */	stw r0, 0(r3)
lbl_803997DC:
/* 803997DC 0039543C  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 803997E0 00395440  4E 80 00 20 */	blr 

.global func_803997E4
func_803997E4:
/* 803997E4 00395444  80 63 00 00 */	lwz r3, 0(r3)
/* 803997E8 00395448  2C 03 00 00 */	cmpwi r3, 0
/* 803997EC 0039544C  40 82 00 0C */	bne lbl_803997F8
/* 803997F0 00395450  38 60 00 00 */	li r3, 0
/* 803997F4 00395454  4E 80 00 20 */	blr 
lbl_803997F8:
/* 803997F8 00395458  2C 04 00 00 */	cmpwi r4, 0
/* 803997FC 0039545C  40 80 00 0C */	bge lbl_80399808
/* 80399800 00395460  38 60 00 00 */	li r3, 0
/* 80399804 00395464  4E 80 00 20 */	blr 
lbl_80399808:
/* 80399808 00395468  80 63 00 10 */	lwz r3, 0x10(r3)
/* 8039980C 0039546C  54 80 28 34 */	slwi r0, r4, 5
/* 80399810 00395470  7C 63 02 14 */	add r3, r3, r0
/* 80399814 00395474  4E 80 00 20 */	blr 

.global func_80399818
func_80399818:
/* 80399818 00395478  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039981C 0039547C  7C 08 02 A6 */	mflr r0
/* 80399820 00395480  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399824 00395484  4B FF FF C1 */	bl func_803997E4
/* 80399828 00395488  2C 03 00 00 */	cmpwi r3, 0
/* 8039982C 0039548C  41 82 00 0C */	beq lbl_80399838
/* 80399830 00395490  80 63 00 00 */	lwz r3, 0(r3)
/* 80399834 00395494  48 00 00 08 */	b lbl_8039983C
lbl_80399838:
/* 80399838 00395498  38 60 00 00 */	li r3, 0
lbl_8039983C:
/* 8039983C 0039549C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399840 003954A0  7C 08 03 A6 */	mtlr r0
/* 80399844 003954A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80399848 003954A8  4E 80 00 20 */	blr 

.global func_8039984C
func_8039984C:
/* 8039984C 003954AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399850 003954B0  7C 08 02 A6 */	mflr r0
/* 80399854 003954B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399858 003954B8  4B FF FF 8D */	bl func_803997E4
/* 8039985C 003954BC  2C 03 00 00 */	cmpwi r3, 0
/* 80399860 003954C0  41 82 00 0C */	beq lbl_8039986C
/* 80399864 003954C4  80 63 00 04 */	lwz r3, 4(r3)
/* 80399868 003954C8  48 00 00 08 */	b lbl_80399870
lbl_8039986C:
/* 8039986C 003954CC  38 60 00 00 */	li r3, 0
lbl_80399870:
/* 80399870 003954D0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399874 003954D4  7C 08 03 A6 */	mtlr r0
/* 80399878 003954D8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039987C 003954DC  4E 80 00 20 */	blr 

.global func_80399880
func_80399880:
/* 80399880 003954E0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399884 003954E4  7C 08 02 A6 */	mflr r0
/* 80399888 003954E8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039988C 003954EC  4B FF FF 59 */	bl func_803997E4
/* 80399890 003954F0  2C 03 00 00 */	cmpwi r3, 0
/* 80399894 003954F4  41 82 00 0C */	beq lbl_803998A0
/* 80399898 003954F8  80 63 00 08 */	lwz r3, 8(r3)
/* 8039989C 003954FC  48 00 00 08 */	b lbl_803998A4
lbl_803998A0:
/* 803998A0 00395500  38 60 00 00 */	li r3, 0
lbl_803998A4:
/* 803998A4 00395504  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803998A8 00395508  7C 08 03 A6 */	mtlr r0
/* 803998AC 0039550C  38 21 00 10 */	addi r1, r1, 0x10
/* 803998B0 00395510  4E 80 00 20 */	blr 

.global func_803998B4
func_803998B4:
/* 803998B4 00395514  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803998B8 00395518  7C 08 02 A6 */	mflr r0
/* 803998BC 0039551C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803998C0 00395520  4B FF FF 25 */	bl func_803997E4
/* 803998C4 00395524  2C 03 00 00 */	cmpwi r3, 0
/* 803998C8 00395528  41 82 00 0C */	beq lbl_803998D4
/* 803998CC 0039552C  80 63 00 0C */	lwz r3, 0xc(r3)
/* 803998D0 00395530  48 00 00 08 */	b lbl_803998D8
lbl_803998D4:
/* 803998D4 00395534  38 60 00 00 */	li r3, 0
lbl_803998D8:
/* 803998D8 00395538  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803998DC 0039553C  7C 08 03 A6 */	mtlr r0
/* 803998E0 00395540  38 21 00 10 */	addi r1, r1, 0x10
/* 803998E4 00395544  4E 80 00 20 */	blr 

.global func_803998E8
func_803998E8:
/* 803998E8 00395548  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803998EC 0039554C  7C 08 02 A6 */	mflr r0
/* 803998F0 00395550  90 01 00 14 */	stw r0, 0x14(r1)
/* 803998F4 00395554  4B FF FE F1 */	bl func_803997E4
/* 803998F8 00395558  2C 03 00 00 */	cmpwi r3, 0
/* 803998FC 0039555C  41 82 00 0C */	beq lbl_80399908
/* 80399900 00395560  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80399904 00395564  48 00 00 08 */	b lbl_8039990C
lbl_80399908:
/* 80399908 00395568  38 60 00 00 */	li r3, 0
lbl_8039990C:
/* 8039990C 0039556C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399910 00395570  7C 08 03 A6 */	mtlr r0
/* 80399914 00395574  38 21 00 10 */	addi r1, r1, 0x10
/* 80399918 00395578  4E 80 00 20 */	blr 

.global func_8039991C
func_8039991C:
/* 8039991C 0039557C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399920 00395580  7C 08 02 A6 */	mflr r0
/* 80399924 00395584  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399928 00395588  4B FF FE BD */	bl func_803997E4
/* 8039992C 0039558C  2C 03 00 00 */	cmpwi r3, 0
/* 80399930 00395590  41 82 00 0C */	beq lbl_8039993C
/* 80399934 00395594  80 63 00 14 */	lwz r3, 0x14(r3)
/* 80399938 00395598  48 00 00 08 */	b lbl_80399940
lbl_8039993C:
/* 8039993C 0039559C  38 60 00 00 */	li r3, 0
lbl_80399940:
/* 80399940 003955A0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399944 003955A4  7C 08 03 A6 */	mtlr r0
/* 80399948 003955A8  38 21 00 10 */	addi r1, r1, 0x10
/* 8039994C 003955AC  4E 80 00 20 */	blr 

.global func_80399950
func_80399950:
/* 80399950 003955B0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399954 003955B4  7C 08 02 A6 */	mflr r0
/* 80399958 003955B8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039995C 003955BC  4B FF FE 89 */	bl func_803997E4
/* 80399960 003955C0  2C 03 00 00 */	cmpwi r3, 0
/* 80399964 003955C4  41 82 00 0C */	beq lbl_80399970
/* 80399968 003955C8  88 63 00 1C */	lbz r3, 0x1c(r3)
/* 8039996C 003955CC  48 00 00 08 */	b lbl_80399974
lbl_80399970:
/* 80399970 003955D0  38 60 00 00 */	li r3, 0
lbl_80399974:
/* 80399974 003955D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399978 003955D8  7C 08 03 A6 */	mtlr r0
/* 8039997C 003955DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80399980 003955E0  4E 80 00 20 */	blr 

.global func_80399984
func_80399984:
/* 80399984 003955E4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399988 003955E8  7C 08 02 A6 */	mflr r0
/* 8039998C 003955EC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399990 003955F0  4B FF FE 55 */	bl func_803997E4
/* 80399994 003955F4  2C 03 00 00 */	cmpwi r3, 0
/* 80399998 003955F8  41 82 00 0C */	beq lbl_803999A4
/* 8039999C 003955FC  88 63 00 1D */	lbz r3, 0x1d(r3)
/* 803999A0 00395600  48 00 00 08 */	b lbl_803999A8
lbl_803999A4:
/* 803999A4 00395604  38 60 00 00 */	li r3, 0
lbl_803999A8:
/* 803999A8 00395608  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803999AC 0039560C  7C 08 03 A6 */	mtlr r0
/* 803999B0 00395610  38 21 00 10 */	addi r1, r1, 0x10
/* 803999B4 00395614  4E 80 00 20 */	blr 

.global func_803999B8
func_803999B8:
/* 803999B8 00395618  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803999BC 0039561C  7C 08 02 A6 */	mflr r0
/* 803999C0 00395620  90 01 00 14 */	stw r0, 0x14(r1)
/* 803999C4 00395624  4B FF FE 21 */	bl func_803997E4
/* 803999C8 00395628  2C 03 00 00 */	cmpwi r3, 0
/* 803999CC 0039562C  41 82 00 0C */	beq lbl_803999D8
/* 803999D0 00395630  C0 23 00 18 */	lfs f1, 0x18(r3)
/* 803999D4 00395634  48 00 00 08 */	b lbl_803999DC
lbl_803999D8:
/* 803999D8 00395638  C0 22 A9 20 */	lfs f1, lbl_80642F20-_SDA2_BASE_(r2)
lbl_803999DC:
/* 803999DC 0039563C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803999E0 00395640  7C 08 03 A6 */	mtlr r0
/* 803999E4 00395644  38 21 00 10 */	addi r1, r1, 0x10
/* 803999E8 00395648  4E 80 00 20 */	blr 

.global func_803999EC
func_803999EC:
/* 803999EC 0039564C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803999F0 00395650  7C 08 02 A6 */	mflr r0
/* 803999F4 00395654  2C 04 00 00 */	cmpwi r4, 0
/* 803999F8 00395658  90 01 00 14 */	stw r0, 0x14(r1)
/* 803999FC 0039565C  38 00 00 00 */	li r0, 0
/* 80399A00 00395660  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399A04 00395664  7C 7F 1B 78 */	mr r31, r3
/* 80399A08 00395668  90 03 00 00 */	stw r0, 0(r3)
/* 80399A0C 0039566C  41 82 00 08 */	beq lbl_80399A14
/* 80399A10 00395670  48 00 00 7D */	bl func_80399A8C
lbl_80399A14:
/* 80399A14 00395674  7F E3 FB 78 */	mr r3, r31
/* 80399A18 00395678  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399A1C 0039567C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399A20 00395680  7C 08 03 A6 */	mtlr r0
/* 80399A24 00395684  38 21 00 10 */	addi r1, r1, 0x10
/* 80399A28 00395688  4E 80 00 20 */	blr 

.global func_80399A2C
func_80399A2C:
/* 80399A2C 0039568C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399A30 00395690  7C 08 02 A6 */	mflr r0
/* 80399A34 00395694  2C 03 00 00 */	cmpwi r3, 0
/* 80399A38 00395698  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399A3C 0039569C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399A40 003956A0  7C 9F 23 78 */	mr r31, r4
/* 80399A44 003956A4  93 C1 00 08 */	stw r30, 8(r1)
/* 80399A48 003956A8  7C 7E 1B 78 */	mr r30, r3
/* 80399A4C 003956AC  41 82 00 24 */	beq lbl_80399A70
/* 80399A50 003956B0  80 03 00 00 */	lwz r0, 0(r3)
/* 80399A54 003956B4  2C 00 00 00 */	cmpwi r0, 0
/* 80399A58 003956B8  41 82 00 08 */	beq lbl_80399A60
/* 80399A5C 003956BC  48 00 01 95 */	bl func_80399BF0
lbl_80399A60:
/* 80399A60 003956C0  2C 1F 00 00 */	cmpwi r31, 0
/* 80399A64 003956C4  40 81 00 0C */	ble lbl_80399A70
/* 80399A68 003956C8  7F C3 F3 78 */	mr r3, r30
/* 80399A6C 003956CC  4B E4 10 4D */	bl __dl__FPv
lbl_80399A70:
/* 80399A70 003956D0  7F C3 F3 78 */	mr r3, r30
/* 80399A74 003956D4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399A78 003956D8  83 C1 00 08 */	lwz r30, 8(r1)
/* 80399A7C 003956DC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399A80 003956E0  7C 08 03 A6 */	mtlr r0
/* 80399A84 003956E4  38 21 00 10 */	addi r1, r1, 0x10
/* 80399A88 003956E8  4E 80 00 20 */	blr 

.global func_80399A8C
func_80399A8C:
/* 80399A8C 003956EC  2C 04 00 00 */	cmpwi r4, 0
/* 80399A90 003956F0  40 82 00 0C */	bne lbl_80399A9C
/* 80399A94 003956F4  38 60 FF FF */	li r3, -1
/* 80399A98 003956F8  4E 80 00 20 */	blr 
lbl_80399A9C:
/* 80399A9C 003956FC  80 03 00 00 */	lwz r0, 0(r3)
/* 80399AA0 00395700  2C 00 00 00 */	cmpwi r0, 0
/* 80399AA4 00395704  41 82 00 0C */	beq lbl_80399AB0
/* 80399AA8 00395708  38 60 FF FE */	li r3, -2
/* 80399AAC 0039570C  4E 80 00 20 */	blr 
lbl_80399AB0:
/* 80399AB0 00395710  80 04 00 04 */	lwz r0, 4(r4)
/* 80399AB4 00395714  28 00 00 0E */	cmplwi r0, 0xe
/* 80399AB8 00395718  41 82 00 0C */	beq lbl_80399AC4
/* 80399ABC 0039571C  38 60 FF FD */	li r3, -3
/* 80399AC0 00395720  4E 80 00 20 */	blr 
lbl_80399AC4:
/* 80399AC4 00395724  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80399AC8 00395728  2C 00 00 00 */	cmpwi r0, 0
/* 80399ACC 0039572C  40 82 01 0C */	bne lbl_80399BD8
/* 80399AD0 00395730  80 04 00 08 */	lwz r0, 8(r4)
/* 80399AD4 00395734  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80399AD8 00395738  7C E0 22 14 */	add r7, r0, r4
/* 80399ADC 0039573C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80399AE0 00395740  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80399AE4 00395744  7C C6 22 14 */	add r6, r6, r4
/* 80399AE8 00395748  7C A5 22 14 */	add r5, r5, r4
/* 80399AEC 0039574C  90 E4 00 08 */	stw r7, 8(r4)
/* 80399AF0 00395750  2C 00 00 00 */	cmpwi r0, 0
/* 80399AF4 00395754  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80399AF8 00395758  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80399AFC 0039575C  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80399B00 00395760  41 82 00 0C */	beq lbl_80399B0C
/* 80399B04 00395764  7C 00 22 14 */	add r0, r0, r4
/* 80399B08 00395768  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80399B0C:
/* 80399B0C 0039576C  2C 07 00 00 */	cmpwi r7, 0
/* 80399B10 00395770  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80399B14 00395774  41 82 00 BC */	beq lbl_80399BD0
/* 80399B18 00395778  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80399B1C 0039577C  7C 09 03 A6 */	mtctr r0
/* 80399B20 00395780  41 82 00 94 */	beq lbl_80399BB4
lbl_80399B24:
/* 80399B24 00395784  80 C5 00 00 */	lwz r6, 0(r5)
/* 80399B28 00395788  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B2C 0039578C  7C 00 22 14 */	add r0, r0, r4
/* 80399B30 00395790  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B34 00395794  80 C5 00 04 */	lwz r6, 4(r5)
/* 80399B38 00395798  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B3C 0039579C  7C 00 22 14 */	add r0, r0, r4
/* 80399B40 003957A0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B44 003957A4  80 C5 00 08 */	lwz r6, 8(r5)
/* 80399B48 003957A8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B4C 003957AC  7C 00 22 14 */	add r0, r0, r4
/* 80399B50 003957B0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B54 003957B4  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80399B58 003957B8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B5C 003957BC  7C 00 22 14 */	add r0, r0, r4
/* 80399B60 003957C0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B64 003957C4  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80399B68 003957C8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B6C 003957CC  7C 00 22 14 */	add r0, r0, r4
/* 80399B70 003957D0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B74 003957D4  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80399B78 003957D8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B7C 003957DC  7C 00 22 14 */	add r0, r0, r4
/* 80399B80 003957E0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B84 003957E4  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80399B88 003957E8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399B8C 003957EC  7C 00 22 14 */	add r0, r0, r4
/* 80399B90 003957F0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399B94 003957F4  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80399B98 003957F8  38 A5 00 20 */	addi r5, r5, 0x20
/* 80399B9C 003957FC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399BA0 00395800  7C 00 22 14 */	add r0, r0, r4
/* 80399BA4 00395804  7C 06 21 2E */	stwx r0, r6, r4
/* 80399BA8 00395808  42 00 FF 7C */	bdnz lbl_80399B24
/* 80399BAC 0039580C  70 E7 00 07 */	andi. r7, r7, 7
/* 80399BB0 00395810  41 82 00 20 */	beq lbl_80399BD0
lbl_80399BB4:
/* 80399BB4 00395814  7C E9 03 A6 */	mtctr r7
lbl_80399BB8:
/* 80399BB8 00395818  80 C5 00 00 */	lwz r6, 0(r5)
/* 80399BBC 0039581C  38 A5 00 04 */	addi r5, r5, 4
/* 80399BC0 00395820  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399BC4 00395824  7C 00 22 14 */	add r0, r0, r4
/* 80399BC8 00395828  7C 06 21 2E */	stwx r0, r6, r4
/* 80399BCC 0039582C  42 00 FF EC */	bdnz lbl_80399BB8
lbl_80399BD0:
/* 80399BD0 00395830  38 00 00 01 */	li r0, 1
/* 80399BD4 00395834  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80399BD8:
/* 80399BD8 00395838  90 83 00 00 */	stw r4, 0(r3)
/* 80399BDC 0039583C  38 60 00 00 */	li r3, 0
/* 80399BE0 00395840  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80399BE4 00395844  38 05 00 01 */	addi r0, r5, 1
/* 80399BE8 00395848  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80399BEC 0039584C  4E 80 00 20 */	blr 

.global func_80399BF0
func_80399BF0:
/* 80399BF0 00395850  80 83 00 00 */	lwz r4, 0(r3)
/* 80399BF4 00395854  38 A0 00 00 */	li r5, 0
/* 80399BF8 00395858  2C 04 00 00 */	cmpwi r4, 0
/* 80399BFC 0039585C  41 82 00 20 */	beq lbl_80399C1C
/* 80399C00 00395860  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80399C04 00395864  2C 05 00 00 */	cmpwi r5, 0
/* 80399C08 00395868  41 82 00 0C */	beq lbl_80399C14
/* 80399C0C 0039586C  38 A5 FF FF */	addi r5, r5, -1
/* 80399C10 00395870  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80399C14:
/* 80399C14 00395874  38 00 00 00 */	li r0, 0
/* 80399C18 00395878  90 03 00 00 */	stw r0, 0(r3)
lbl_80399C1C:
/* 80399C1C 0039587C  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80399C20 00395880  4E 80 00 20 */	blr 

.global func_80399C24
func_80399C24:
/* 80399C24 00395884  80 63 00 00 */	lwz r3, 0(r3)
/* 80399C28 00395888  2C 03 00 00 */	cmpwi r3, 0
/* 80399C2C 0039588C  40 82 00 0C */	bne lbl_80399C38
/* 80399C30 00395890  38 60 00 00 */	li r3, 0
/* 80399C34 00395894  4E 80 00 20 */	blr 
lbl_80399C38:
/* 80399C38 00395898  2C 04 00 00 */	cmpwi r4, 0
/* 80399C3C 0039589C  40 80 00 0C */	bge lbl_80399C48
/* 80399C40 003958A0  38 60 00 00 */	li r3, 0
/* 80399C44 003958A4  4E 80 00 20 */	blr 
lbl_80399C48:
/* 80399C48 003958A8  1C 04 00 0E */	mulli r0, r4, 0xe
/* 80399C4C 003958AC  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80399C50 003958B0  7C 63 02 14 */	add r3, r3, r0
/* 80399C54 003958B4  4E 80 00 20 */	blr 

.global func_80399C58
func_80399C58:
/* 80399C58 003958B8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399C5C 003958BC  7C 08 02 A6 */	mflr r0
/* 80399C60 003958C0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399C64 003958C4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399C68 003958C8  7C BF 2B 78 */	mr r31, r5
/* 80399C6C 003958CC  4B FF FF B9 */	bl func_80399C24
/* 80399C70 003958D0  2C 03 00 00 */	cmpwi r3, 0
/* 80399C74 003958D4  40 82 00 0C */	bne lbl_80399C80
/* 80399C78 003958D8  38 60 00 00 */	li r3, 0
/* 80399C7C 003958DC  48 00 00 18 */	b lbl_80399C94
lbl_80399C80:
/* 80399C80 003958E0  28 1F 00 0E */	cmplwi r31, 0xe
/* 80399C84 003958E4  41 80 00 0C */	blt lbl_80399C90
/* 80399C88 003958E8  38 60 00 00 */	li r3, 0
/* 80399C8C 003958EC  48 00 00 08 */	b lbl_80399C94
lbl_80399C90:
/* 80399C90 003958F0  7C 63 F8 AE */	lbzx r3, r3, r31
lbl_80399C94:
/* 80399C94 003958F4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399C98 003958F8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399C9C 003958FC  7C 08 03 A6 */	mtlr r0
/* 80399CA0 00395900  38 21 00 10 */	addi r1, r1, 0x10
/* 80399CA4 00395904  4E 80 00 20 */	blr 

.global func_80399CA8
func_80399CA8:
/* 80399CA8 00395908  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399CAC 0039590C  7C 08 02 A6 */	mflr r0
/* 80399CB0 00395910  2C 04 00 00 */	cmpwi r4, 0
/* 80399CB4 00395914  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399CB8 00395918  38 00 00 00 */	li r0, 0
/* 80399CBC 0039591C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399CC0 00395920  7C 7F 1B 78 */	mr r31, r3
/* 80399CC4 00395924  90 03 00 00 */	stw r0, 0(r3)
/* 80399CC8 00395928  41 82 00 08 */	beq lbl_80399CD0
/* 80399CCC 0039592C  48 00 00 7D */	bl func_80399D48
lbl_80399CD0:
/* 80399CD0 00395930  7F E3 FB 78 */	mr r3, r31
/* 80399CD4 00395934  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399CD8 00395938  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399CDC 0039593C  7C 08 03 A6 */	mtlr r0
/* 80399CE0 00395940  38 21 00 10 */	addi r1, r1, 0x10
/* 80399CE4 00395944  4E 80 00 20 */	blr 

.global func_80399CE8
func_80399CE8:
/* 80399CE8 00395948  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399CEC 0039594C  7C 08 02 A6 */	mflr r0
/* 80399CF0 00395950  2C 03 00 00 */	cmpwi r3, 0
/* 80399CF4 00395954  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399CF8 00395958  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399CFC 0039595C  7C 9F 23 78 */	mr r31, r4
/* 80399D00 00395960  93 C1 00 08 */	stw r30, 8(r1)
/* 80399D04 00395964  7C 7E 1B 78 */	mr r30, r3
/* 80399D08 00395968  41 82 00 24 */	beq lbl_80399D2C
/* 80399D0C 0039596C  80 03 00 00 */	lwz r0, 0(r3)
/* 80399D10 00395970  2C 00 00 00 */	cmpwi r0, 0
/* 80399D14 00395974  41 82 00 08 */	beq lbl_80399D1C
/* 80399D18 00395978  48 00 01 95 */	bl func_80399EAC
lbl_80399D1C:
/* 80399D1C 0039597C  2C 1F 00 00 */	cmpwi r31, 0
/* 80399D20 00395980  40 81 00 0C */	ble lbl_80399D2C
/* 80399D24 00395984  7F C3 F3 78 */	mr r3, r30
/* 80399D28 00395988  4B E4 0D 91 */	bl __dl__FPv
lbl_80399D2C:
/* 80399D2C 0039598C  7F C3 F3 78 */	mr r3, r30
/* 80399D30 00395990  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399D34 00395994  83 C1 00 08 */	lwz r30, 8(r1)
/* 80399D38 00395998  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399D3C 0039599C  7C 08 03 A6 */	mtlr r0
/* 80399D40 003959A0  38 21 00 10 */	addi r1, r1, 0x10
/* 80399D44 003959A4  4E 80 00 20 */	blr 

.global func_80399D48
func_80399D48:
/* 80399D48 003959A8  2C 04 00 00 */	cmpwi r4, 0
/* 80399D4C 003959AC  40 82 00 0C */	bne lbl_80399D58
/* 80399D50 003959B0  38 60 FF FF */	li r3, -1
/* 80399D54 003959B4  4E 80 00 20 */	blr 
lbl_80399D58:
/* 80399D58 003959B8  80 03 00 00 */	lwz r0, 0(r3)
/* 80399D5C 003959BC  2C 00 00 00 */	cmpwi r0, 0
/* 80399D60 003959C0  41 82 00 0C */	beq lbl_80399D6C
/* 80399D64 003959C4  38 60 FF FE */	li r3, -2
/* 80399D68 003959C8  4E 80 00 20 */	blr 
lbl_80399D6C:
/* 80399D6C 003959CC  80 04 00 04 */	lwz r0, 4(r4)
/* 80399D70 003959D0  28 00 00 1C */	cmplwi r0, 0x1c
/* 80399D74 003959D4  41 82 00 0C */	beq lbl_80399D80
/* 80399D78 003959D8  38 60 FF FD */	li r3, -3
/* 80399D7C 003959DC  4E 80 00 20 */	blr 
lbl_80399D80:
/* 80399D80 003959E0  A0 04 00 2E */	lhz r0, 0x2e(r4)
/* 80399D84 003959E4  2C 00 00 00 */	cmpwi r0, 0
/* 80399D88 003959E8  40 82 01 0C */	bne lbl_80399E94
/* 80399D8C 003959EC  80 04 00 08 */	lwz r0, 8(r4)
/* 80399D90 003959F0  80 C4 00 10 */	lwz r6, 0x10(r4)
/* 80399D94 003959F4  7C E0 22 14 */	add r7, r0, r4
/* 80399D98 003959F8  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80399D9C 003959FC  80 04 00 20 */	lwz r0, 0x20(r4)
/* 80399DA0 00395A00  7C C6 22 14 */	add r6, r6, r4
/* 80399DA4 00395A04  7C A5 22 14 */	add r5, r5, r4
/* 80399DA8 00395A08  90 E4 00 08 */	stw r7, 8(r4)
/* 80399DAC 00395A0C  2C 00 00 00 */	cmpwi r0, 0
/* 80399DB0 00395A10  80 E4 00 1C */	lwz r7, 0x1c(r4)
/* 80399DB4 00395A14  90 C4 00 10 */	stw r6, 0x10(r4)
/* 80399DB8 00395A18  90 A4 00 18 */	stw r5, 0x18(r4)
/* 80399DBC 00395A1C  41 82 00 0C */	beq lbl_80399DC8
/* 80399DC0 00395A20  7C 00 22 14 */	add r0, r0, r4
/* 80399DC4 00395A24  90 04 00 20 */	stw r0, 0x20(r4)
lbl_80399DC8:
/* 80399DC8 00395A28  2C 07 00 00 */	cmpwi r7, 0
/* 80399DCC 00395A2C  80 A4 00 18 */	lwz r5, 0x18(r4)
/* 80399DD0 00395A30  41 82 00 BC */	beq lbl_80399E8C
/* 80399DD4 00395A34  54 E0 E8 FF */	rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80399DD8 00395A38  7C 09 03 A6 */	mtctr r0
/* 80399DDC 00395A3C  41 82 00 94 */	beq lbl_80399E70
lbl_80399DE0:
/* 80399DE0 00395A40  80 C5 00 00 */	lwz r6, 0(r5)
/* 80399DE4 00395A44  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399DE8 00395A48  7C 00 22 14 */	add r0, r0, r4
/* 80399DEC 00395A4C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399DF0 00395A50  80 C5 00 04 */	lwz r6, 4(r5)
/* 80399DF4 00395A54  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399DF8 00395A58  7C 00 22 14 */	add r0, r0, r4
/* 80399DFC 00395A5C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E00 00395A60  80 C5 00 08 */	lwz r6, 8(r5)
/* 80399E04 00395A64  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E08 00395A68  7C 00 22 14 */	add r0, r0, r4
/* 80399E0C 00395A6C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E10 00395A70  80 C5 00 0C */	lwz r6, 0xc(r5)
/* 80399E14 00395A74  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E18 00395A78  7C 00 22 14 */	add r0, r0, r4
/* 80399E1C 00395A7C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E20 00395A80  80 C5 00 10 */	lwz r6, 0x10(r5)
/* 80399E24 00395A84  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E28 00395A88  7C 00 22 14 */	add r0, r0, r4
/* 80399E2C 00395A8C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E30 00395A90  80 C5 00 14 */	lwz r6, 0x14(r5)
/* 80399E34 00395A94  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E38 00395A98  7C 00 22 14 */	add r0, r0, r4
/* 80399E3C 00395A9C  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E40 00395AA0  80 C5 00 18 */	lwz r6, 0x18(r5)
/* 80399E44 00395AA4  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E48 00395AA8  7C 00 22 14 */	add r0, r0, r4
/* 80399E4C 00395AAC  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E50 00395AB0  80 C5 00 1C */	lwz r6, 0x1c(r5)
/* 80399E54 00395AB4  38 A5 00 20 */	addi r5, r5, 0x20
/* 80399E58 00395AB8  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E5C 00395ABC  7C 00 22 14 */	add r0, r0, r4
/* 80399E60 00395AC0  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E64 00395AC4  42 00 FF 7C */	bdnz lbl_80399DE0
/* 80399E68 00395AC8  70 E7 00 07 */	andi. r7, r7, 7
/* 80399E6C 00395ACC  41 82 00 20 */	beq lbl_80399E8C
lbl_80399E70:
/* 80399E70 00395AD0  7C E9 03 A6 */	mtctr r7
lbl_80399E74:
/* 80399E74 00395AD4  80 C5 00 00 */	lwz r6, 0(r5)
/* 80399E78 00395AD8  38 A5 00 04 */	addi r5, r5, 4
/* 80399E7C 00395ADC  7C 06 20 2E */	lwzx r0, r6, r4
/* 80399E80 00395AE0  7C 00 22 14 */	add r0, r0, r4
/* 80399E84 00395AE4  7C 06 21 2E */	stwx r0, r6, r4
/* 80399E88 00395AE8  42 00 FF EC */	bdnz lbl_80399E74
lbl_80399E8C:
/* 80399E8C 00395AEC  38 00 00 01 */	li r0, 1
/* 80399E90 00395AF0  B0 04 00 2E */	sth r0, 0x2e(r4)
lbl_80399E94:
/* 80399E94 00395AF4  90 83 00 00 */	stw r4, 0(r3)
/* 80399E98 00395AF8  38 60 00 00 */	li r3, 0
/* 80399E9C 00395AFC  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80399EA0 00395B00  38 05 00 01 */	addi r0, r5, 1
/* 80399EA4 00395B04  B0 04 00 2C */	sth r0, 0x2c(r4)
/* 80399EA8 00395B08  4E 80 00 20 */	blr 

.global func_80399EAC
func_80399EAC:
/* 80399EAC 00395B0C  80 83 00 00 */	lwz r4, 0(r3)
/* 80399EB0 00395B10  38 A0 00 00 */	li r5, 0
/* 80399EB4 00395B14  2C 04 00 00 */	cmpwi r4, 0
/* 80399EB8 00395B18  41 82 00 20 */	beq lbl_80399ED8
/* 80399EBC 00395B1C  A0 A4 00 2C */	lhz r5, 0x2c(r4)
/* 80399EC0 00395B20  2C 05 00 00 */	cmpwi r5, 0
/* 80399EC4 00395B24  41 82 00 0C */	beq lbl_80399ED0
/* 80399EC8 00395B28  38 A5 FF FF */	addi r5, r5, -1
/* 80399ECC 00395B2C  B0 A4 00 2C */	sth r5, 0x2c(r4)
lbl_80399ED0:
/* 80399ED0 00395B30  38 00 00 00 */	li r0, 0
/* 80399ED4 00395B34  90 03 00 00 */	stw r0, 0(r3)
lbl_80399ED8:
/* 80399ED8 00395B38  54 A3 04 3E */	clrlwi r3, r5, 0x10
/* 80399EDC 00395B3C  4E 80 00 20 */	blr 

.global func_80399EE0
func_80399EE0:
/* 80399EE0 00395B40  80 63 00 00 */	lwz r3, 0(r3)
/* 80399EE4 00395B44  2C 03 00 00 */	cmpwi r3, 0
/* 80399EE8 00395B48  40 82 00 0C */	bne lbl_80399EF4
/* 80399EEC 00395B4C  38 60 00 00 */	li r3, 0
/* 80399EF0 00395B50  4E 80 00 20 */	blr 
lbl_80399EF4:
/* 80399EF4 00395B54  2C 04 00 00 */	cmpwi r4, 0
/* 80399EF8 00395B58  40 80 00 0C */	bge lbl_80399F04
/* 80399EFC 00395B5C  38 60 00 00 */	li r3, 0
/* 80399F00 00395B60  4E 80 00 20 */	blr 
lbl_80399F04:
/* 80399F04 00395B64  1C 04 00 1C */	mulli r0, r4, 0x1c
/* 80399F08 00395B68  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80399F0C 00395B6C  7C 63 02 14 */	add r3, r3, r0
/* 80399F10 00395B70  4E 80 00 20 */	blr 

.global func_80399F14
func_80399F14:
/* 80399F14 00395B74  80 63 00 00 */	lwz r3, 0(r3)
/* 80399F18 00395B78  2C 03 00 00 */	cmpwi r3, 0
/* 80399F1C 00395B7C  41 82 00 0C */	beq lbl_80399F28
/* 80399F20 00395B80  80 63 00 00 */	lwz r3, 0(r3)
/* 80399F24 00395B84  4E 80 00 20 */	blr 
lbl_80399F28:
/* 80399F28 00395B88  38 60 00 00 */	li r3, 0
/* 80399F2C 00395B8C  4E 80 00 20 */	blr 

.global func_80399F30
func_80399F30:
/* 80399F30 00395B90  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399F34 00395B94  7C 08 02 A6 */	mflr r0
/* 80399F38 00395B98  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399F3C 00395B9C  4B FF FF A5 */	bl func_80399EE0
/* 80399F40 00395BA0  2C 03 00 00 */	cmpwi r3, 0
/* 80399F44 00395BA4  41 82 00 0C */	beq lbl_80399F50
/* 80399F48 00395BA8  88 63 00 18 */	lbz r3, 0x18(r3)
/* 80399F4C 00395BAC  48 00 00 08 */	b lbl_80399F54
lbl_80399F50:
/* 80399F50 00395BB0  38 60 00 00 */	li r3, 0
lbl_80399F54:
/* 80399F54 00395BB4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399F58 00395BB8  7C 08 03 A6 */	mtlr r0
/* 80399F5C 00395BBC  38 21 00 10 */	addi r1, r1, 0x10
/* 80399F60 00395BC0  4E 80 00 20 */	blr 

.global func_80399F64
func_80399F64:
/* 80399F64 00395BC4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399F68 00395BC8  7C 08 02 A6 */	mflr r0
/* 80399F6C 00395BCC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399F70 00395BD0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399F74 00395BD4  7C BF 2B 78 */	mr r31, r5
/* 80399F78 00395BD8  4B FF FF 69 */	bl func_80399EE0
/* 80399F7C 00395BDC  2C 03 00 00 */	cmpwi r3, 0
/* 80399F80 00395BE0  40 82 00 0C */	bne lbl_80399F8C
/* 80399F84 00395BE4  38 60 00 00 */	li r3, 0
/* 80399F88 00395BE8  48 00 00 1C */	b lbl_80399FA4
lbl_80399F8C:
/* 80399F8C 00395BEC  28 1F 00 02 */	cmplwi r31, 2
/* 80399F90 00395BF0  41 80 00 0C */	blt lbl_80399F9C
/* 80399F94 00395BF4  38 60 00 00 */	li r3, 0
/* 80399F98 00395BF8  48 00 00 0C */	b lbl_80399FA4
lbl_80399F9C:
/* 80399F9C 00395BFC  1C 1F 00 0C */	mulli r0, r31, 0xc
/* 80399FA0 00395C00  7C 63 00 2E */	lwzx r3, r3, r0
lbl_80399FA4:
/* 80399FA4 00395C04  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80399FA8 00395C08  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80399FAC 00395C0C  7C 08 03 A6 */	mtlr r0
/* 80399FB0 00395C10  38 21 00 10 */	addi r1, r1, 0x10
/* 80399FB4 00395C14  4E 80 00 20 */	blr 

.global func_80399FB8
func_80399FB8:
/* 80399FB8 00395C18  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80399FBC 00395C1C  7C 08 02 A6 */	mflr r0
/* 80399FC0 00395C20  90 01 00 14 */	stw r0, 0x14(r1)
/* 80399FC4 00395C24  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80399FC8 00395C28  7C BF 2B 78 */	mr r31, r5
/* 80399FCC 00395C2C  4B FF FF 15 */	bl func_80399EE0
/* 80399FD0 00395C30  2C 03 00 00 */	cmpwi r3, 0
/* 80399FD4 00395C34  40 82 00 0C */	bne lbl_80399FE0
/* 80399FD8 00395C38  38 60 00 00 */	li r3, 0
/* 80399FDC 00395C3C  48 00 00 20 */	b lbl_80399FFC
lbl_80399FE0:
/* 80399FE0 00395C40  28 1F 00 02 */	cmplwi r31, 2
/* 80399FE4 00395C44  41 80 00 0C */	blt lbl_80399FF0
/* 80399FE8 00395C48  38 60 00 00 */	li r3, 0
/* 80399FEC 00395C4C  48 00 00 10 */	b lbl_80399FFC
lbl_80399FF0:
/* 80399FF0 00395C50  1C 1F 00 0C */	mulli r0, r31, 0xc
/* 80399FF4 00395C54  7C 63 02 14 */	add r3, r3, r0
/* 80399FF8 00395C58  80 63 00 04 */	lwz r3, 4(r3)
lbl_80399FFC:
/* 80399FFC 00395C5C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039A000 00395C60  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039A004 00395C64  7C 08 03 A6 */	mtlr r0
/* 8039A008 00395C68  38 21 00 10 */	addi r1, r1, 0x10
/* 8039A00C 00395C6C  4E 80 00 20 */	blr 

.global func_8039A010
func_8039A010:
/* 8039A010 00395C70  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8039A014 00395C74  7C 08 02 A6 */	mflr r0
/* 8039A018 00395C78  90 01 00 14 */	stw r0, 0x14(r1)
/* 8039A01C 00395C7C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8039A020 00395C80  7C BF 2B 78 */	mr r31, r5
/* 8039A024 00395C84  4B FF FE BD */	bl func_80399EE0
/* 8039A028 00395C88  2C 03 00 00 */	cmpwi r3, 0
/* 8039A02C 00395C8C  40 82 00 0C */	bne lbl_8039A038
/* 8039A030 00395C90  38 60 00 00 */	li r3, 0
/* 8039A034 00395C94  48 00 00 20 */	b lbl_8039A054
lbl_8039A038:
/* 8039A038 00395C98  28 1F 00 02 */	cmplwi r31, 2
/* 8039A03C 00395C9C  41 80 00 0C */	blt lbl_8039A048
/* 8039A040 00395CA0  38 60 00 00 */	li r3, 0
/* 8039A044 00395CA4  48 00 00 10 */	b lbl_8039A054
lbl_8039A048:
/* 8039A048 00395CA8  1C 1F 00 0C */	mulli r0, r31, 0xc
/* 8039A04C 00395CAC  7C 63 02 14 */	add r3, r3, r0
/* 8039A050 00395CB0  80 63 00 08 */	lwz r3, 8(r3)
lbl_8039A054:
/* 8039A054 00395CB4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8039A058 00395CB8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8039A05C 00395CBC  7C 08 03 A6 */	mtlr r0
/* 8039A060 00395CC0  38 21 00 10 */	addi r1, r1, 0x10
/* 8039A064 00395CC4  4E 80 00 20 */	blr