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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80044F28
func_80044F28:
/* 80044F28 00040B88 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80044F2C 00040B8C 7C 08 02 A6 */ mflr r0
/* 80044F30 00040B90 90 01 00 14 */ stw r0, 0x14(r1)
/* 80044F34 00040B94 38 00 00 00 */ li r0, 0
/* 80044F38 00040B98 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80044F3C 00040B9C 7C 7F 1B 78 */ mr r31, r3
/* 80044F40 00040BA0 98 03 00 40 */ stb r0, 0x40(r3)
/* 80044F44 00040BA4 98 03 00 41 */ stb r0, 0x41(r3)
/* 80044F48 00040BA8 98 03 00 42 */ stb r0, 0x42(r3)
/* 80044F4C 00040BAC 98 03 00 10 */ stb r0, 0x10(r3)
/* 80044F50 00040BB0 98 03 00 11 */ stb r0, 0x11(r3)
/* 80044F54 00040BB4 98 03 00 12 */ stb r0, 0x12(r3)
/* 80044F58 00040BB8 48 00 00 1D */ bl func_80044F74
/* 80044F5C 00040BBC 7F E3 FB 78 */ mr r3, r31
/* 80044F60 00040BC0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80044F64 00040BC4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80044F68 00040BC8 7C 08 03 A6 */ mtlr r0
/* 80044F6C 00040BCC 38 21 00 10 */ addi r1, r1, 0x10
/* 80044F70 00040BD0 4E 80 00 20 */ blr
.global func_80044F74
func_80044F74:
/* 80044F74 00040BD4 38 00 00 00 */ li r0, 0
/* 80044F78 00040BD8 90 03 00 04 */ stw r0, 4(r3)
/* 80044F7C 00040BDC 90 03 00 08 */ stw r0, 8(r3)
/* 80044F80 00040BE0 90 03 00 0C */ stw r0, 0xc(r3)
/* 80044F84 00040BE4 B0 03 00 3C */ sth r0, 0x3c(r3)
/* 80044F88 00040BE8 98 03 00 3E */ stb r0, 0x3e(r3)
/* 80044F8C 00040BEC 98 03 00 43 */ stb r0, 0x43(r3)
/* 80044F90 00040BF0 98 03 00 3F */ stb r0, 0x3f(r3)
/* 80044F94 00040BF4 98 03 00 40 */ stb r0, 0x40(r3)
/* 80044F98 00040BF8 98 03 00 41 */ stb r0, 0x41(r3)
/* 80044F9C 00040BFC 98 03 00 42 */ stb r0, 0x42(r3)
/* 80044FA0 00040C00 98 03 00 10 */ stb r0, 0x10(r3)
/* 80044FA4 00040C04 98 03 00 11 */ stb r0, 0x11(r3)
/* 80044FA8 00040C08 98 03 00 12 */ stb r0, 0x12(r3)
/* 80044FAC 00040C0C 4E 80 00 20 */ blr
.global func_80044FB0
func_80044FB0:
/* 80044FB0 00040C10 88 63 00 3F */ lbz r3, 0x3f(r3)
/* 80044FB4 00040C14 4E 80 00 20 */ blr
.global func_80044FB8
func_80044FB8:
/* 80044FB8 00040C18 80 03 00 08 */ lwz r0, 8(r3)
/* 80044FBC 00040C1C 38 80 00 00 */ li r4, 0
/* 80044FC0 00040C20 2C 00 00 00 */ cmpwi r0, 0
/* 80044FC4 00040C24 41 82 00 08 */ beq lbl_80044FCC
/* 80044FC8 00040C28 38 80 00 01 */ li r4, 1
lbl_80044FCC:
/* 80044FCC 00040C2C 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80044FD0 00040C30 2C 00 00 00 */ cmpwi r0, 0
/* 80044FD4 00040C34 41 82 00 08 */ beq lbl_80044FDC
/* 80044FD8 00040C38 38 84 00 01 */ addi r4, r4, 1
lbl_80044FDC:
/* 80044FDC 00040C3C 7C 83 23 78 */ mr r3, r4
/* 80044FE0 00040C40 4E 80 00 20 */ blr
.global func_80044FE4
func_80044FE4:
/* 80044FE4 00040C44 38 00 00 00 */ li r0, 0
/* 80044FE8 00040C48 39 00 00 01 */ li r8, 1
/* 80044FEC 00040C4C 99 03 00 3F */ stb r8, 0x3f(r3)
/* 80044FF0 00040C50 90 83 00 00 */ stw r4, 0(r3)
/* 80044FF4 00040C54 90 A3 00 04 */ stw r5, 4(r3)
/* 80044FF8 00040C58 90 C3 00 08 */ stw r6, 8(r3)
/* 80044FFC 00040C5C 90 E3 00 0C */ stw r7, 0xc(r3)
/* 80045000 00040C60 98 03 00 40 */ stb r0, 0x40(r3)
/* 80045004 00040C64 98 03 00 41 */ stb r0, 0x41(r3)
/* 80045008 00040C68 98 03 00 42 */ stb r0, 0x42(r3)
/* 8004500C 00040C6C 4E 80 00 20 */ blr
.global func_80045010
func_80045010:
/* 80045010 00040C70 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80045014 00040C74 7C 08 02 A6 */ mflr r0
/* 80045018 00040C78 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004501C 00040C7C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80045020 00040C80 7C 7F 1B 78 */ mr r31, r3
/* 80045024 00040C84 88 03 00 3F */ lbz r0, 0x3f(r3)
/* 80045028 00040C88 2C 00 00 00 */ cmpwi r0, 0
/* 8004502C 00040C8C 41 82 00 2C */ beq lbl_80045058
/* 80045030 00040C90 88 03 00 40 */ lbz r0, 0x40(r3)
/* 80045034 00040C94 2C 00 00 00 */ cmpwi r0, 0
/* 80045038 00040C98 41 82 00 18 */ beq lbl_80045050
/* 8004503C 00040C9C 80 63 00 04 */ lwz r3, 4(r3)
/* 80045040 00040CA0 4B FF 7E CD */ bl func_8003CF0C
/* 80045044 00040CA4 38 00 00 00 */ li r0, 0
/* 80045048 00040CA8 90 1F 00 04 */ stw r0, 4(r31)
/* 8004504C 00040CAC 98 1F 00 40 */ stb r0, 0x40(r31)
lbl_80045050:
/* 80045050 00040CB0 7F E3 FB 78 */ mr r3, r31
/* 80045054 00040CB4 48 00 00 19 */ bl func_8004506C
lbl_80045058:
/* 80045058 00040CB8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004505C 00040CBC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80045060 00040CC0 7C 08 03 A6 */ mtlr r0
/* 80045064 00040CC4 38 21 00 10 */ addi r1, r1, 0x10
/* 80045068 00040CC8 4E 80 00 20 */ blr
.global func_8004506C
func_8004506C:
/* 8004506C 00040CCC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80045070 00040CD0 7C 08 02 A6 */ mflr r0
/* 80045074 00040CD4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80045078 00040CD8 39 61 00 20 */ addi r11, r1, 0x20
/* 8004507C 00040CDC 48 18 20 AD */ bl _savegpr_27
/* 80045080 00040CE0 7C 7B 1B 78 */ mr r27, r3
/* 80045084 00040CE4 3B 80 00 00 */ li r28, 0
/* 80045088 00040CE8 7F 7E DB 78 */ mr r30, r27
/* 8004508C 00040CEC 3B E0 00 00 */ li r31, 0
lbl_80045090:
/* 80045090 00040CF0 7F BB E2 14 */ add r29, r27, r28
/* 80045094 00040CF4 88 1D 00 41 */ lbz r0, 0x41(r29)
/* 80045098 00040CF8 2C 00 00 00 */ cmpwi r0, 0
/* 8004509C 00040CFC 41 82 00 14 */ beq lbl_800450B0
/* 800450A0 00040D00 80 7E 00 08 */ lwz r3, 8(r30)
/* 800450A4 00040D04 4B FF 7E 69 */ bl func_8003CF0C
/* 800450A8 00040D08 93 FE 00 08 */ stw r31, 8(r30)
/* 800450AC 00040D0C 9B FD 00 41 */ stb r31, 0x41(r29)
lbl_800450B0:
/* 800450B0 00040D10 3B 9C 00 01 */ addi r28, r28, 1
/* 800450B4 00040D14 3B DE 00 04 */ addi r30, r30, 4
/* 800450B8 00040D18 2C 1C 00 02 */ cmpwi r28, 2
/* 800450BC 00040D1C 41 80 FF D4 */ blt lbl_80045090
/* 800450C0 00040D20 39 61 00 20 */ addi r11, r1, 0x20
/* 800450C4 00040D24 48 18 20 B1 */ bl _restgpr_27
/* 800450C8 00040D28 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800450CC 00040D2C 7C 08 03 A6 */ mtlr r0
/* 800450D0 00040D30 38 21 00 20 */ addi r1, r1, 0x20
/* 800450D4 00040D34 4E 80 00 20 */ blr
.global func_800450D8
func_800450D8:
/* 800450D8 00040D38 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800450DC 00040D3C 7C 08 02 A6 */ mflr r0
/* 800450E0 00040D40 90 01 00 24 */ stw r0, 0x24(r1)
/* 800450E4 00040D44 39 61 00 20 */ addi r11, r1, 0x20
/* 800450E8 00040D48 48 18 20 3D */ bl _savegpr_26
/* 800450EC 00040D4C 7C 7A 1B 78 */ mr r26, r3
/* 800450F0 00040D50 80 63 00 04 */ lwz r3, 4(r3)
/* 800450F4 00040D54 7C 9B 23 78 */ mr r27, r4
/* 800450F8 00040D58 7C BC 2B 78 */ mr r28, r5
/* 800450FC 00040D5C 7C DD 33 78 */ mr r29, r6
/* 80045100 00040D60 7C FE 3B 78 */ mr r30, r7
/* 80045104 00040D64 7D 1F 43 78 */ mr r31, r8
/* 80045108 00040D68 4B FF 7E 05 */ bl func_8003CF0C
/* 8004510C 00040D6C 4B FF 90 51 */ bl func_8003E15C
/* 80045110 00040D70 4B FF 90 AD */ bl func_8003E1BC
/* 80045114 00040D74 2C 03 00 00 */ cmpwi r3, 0
/* 80045118 00040D78 90 7A 00 04 */ stw r3, 4(r26)
/* 8004511C 00040D7C 41 82 00 2C */ beq lbl_80045148
/* 80045120 00040D80 7F 84 E3 78 */ mr r4, r28
/* 80045124 00040D84 7F A5 EB 78 */ mr r5, r29
/* 80045128 00040D88 7F E7 FB 78 */ mr r7, r31
/* 8004512C 00040D8C 7F C6 07 74 */ extsb r6, r30
/* 80045130 00040D90 4B FF 7F 91 */ bl func_8003D0C0
/* 80045134 00040D94 80 7A 00 04 */ lwz r3, 4(r26)
/* 80045138 00040D98 38 80 00 02 */ li r4, 2
/* 8004513C 00040D9C 38 00 00 01 */ li r0, 1
/* 80045140 00040DA0 B0 83 05 0C */ sth r4, 0x50c(r3)
/* 80045144 00040DA4 98 1A 00 40 */ stb r0, 0x40(r26)
lbl_80045148:
/* 80045148 00040DA8 38 60 00 00 */ li r3, 0
/* 8004514C 00040DAC 38 00 00 01 */ li r0, 1
/* 80045150 00040DB0 98 7A 00 10 */ stb r3, 0x10(r26)
/* 80045154 00040DB4 39 61 00 20 */ addi r11, r1, 0x20
/* 80045158 00040DB8 98 1A 00 3F */ stb r0, 0x3f(r26)
/* 8004515C 00040DBC 93 7A 00 00 */ stw r27, 0(r26)
/* 80045160 00040DC0 48 18 20 11 */ bl _restgpr_26
/* 80045164 00040DC4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80045168 00040DC8 7C 08 03 A6 */ mtlr r0
/* 8004516C 00040DCC 38 21 00 20 */ addi r1, r1, 0x20
/* 80045170 00040DD0 4E 80 00 20 */ blr
lbl_80045174:
/* 80045174 00040DD4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80045178 00040DD8 7C 08 02 A6 */ mflr r0
/* 8004517C 00040DDC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80045180 00040DE0 39 61 00 30 */ addi r11, r1, 0x30
/* 80045184 00040DE4 48 18 1F A5 */ bl _savegpr_27
/* 80045188 00040DE8 83 C3 00 04 */ lwz r30, 4(r3)
/* 8004518C 00040DEC 7C 7B 1B 78 */ mr r27, r3
/* 80045190 00040DF0 7C 9C 23 78 */ mr r28, r4
/* 80045194 00040DF4 7C BD 2B 78 */ mr r29, r5
/* 80045198 00040DF8 2C 1E 00 00 */ cmpwi r30, 0
/* 8004519C 00040DFC 41 82 01 44 */ beq lbl_800452E0
/* 800451A0 00040E00 A0 1E 05 0C */ lhz r0, 0x50c(r30)
/* 800451A4 00040E04 28 00 00 02 */ cmplwi r0, 2
/* 800451A8 00040E08 41 82 00 08 */ beq lbl_800451B0
/* 800451AC 00040E0C 48 00 01 34 */ b lbl_800452E0
lbl_800451B0:
/* 800451B0 00040E10 39 40 00 00 */ li r10, 0
/* 800451B4 00040E14 39 20 00 01 */ li r9, 1
/* 800451B8 00040E18 1C CA 00 AC */ mulli r6, r10, 0xac
/* 800451BC 00040E1C 39 9E 05 24 */ addi r12, r30, 0x524
/* 800451C0 00040E20 89 7E 05 21 */ lbz r11, 0x521(r30)
/* 800451C4 00040E24 39 00 00 02 */ li r8, 2
/* 800451C8 00040E28 A3 FE 05 1C */ lhz r31, 0x51c(r30)
/* 800451CC 00040E2C 38 E0 00 03 */ li r7, 3
/* 800451D0 00040E30 1C 89 00 AC */ mulli r4, r9, 0xac
/* 800451D4 00040E34 7C CC 32 14 */ add r6, r12, r6
/* 800451D8 00040E38 88 06 00 19 */ lbz r0, 0x19(r6)
/* 800451DC 00040E3C 38 A0 00 04 */ li r5, 4
/* 800451E0 00040E40 39 40 00 05 */ li r10, 5
/* 800451E4 00040E44 98 01 00 08 */ stb r0, 8(r1)
/* 800451E8 00040E48 7C 8C 22 14 */ add r4, r12, r4
/* 800451EC 00040E4C 39 20 00 06 */ li r9, 6
/* 800451F0 00040E50 1C 08 00 AC */ mulli r0, r8, 0xac
/* 800451F4 00040E54 88 C4 00 19 */ lbz r6, 0x19(r4)
/* 800451F8 00040E58 39 00 00 07 */ li r8, 7
/* 800451FC 00040E5C 98 C1 00 09 */ stb r6, 9(r1)
/* 80045200 00040E60 7D 7E 07 74 */ extsb r30, r11
/* 80045204 00040E64 7C 8C 02 14 */ add r4, r12, r0
/* 80045208 00040E68 1C 07 00 AC */ mulli r0, r7, 0xac
/* 8004520C 00040E6C 88 C4 00 19 */ lbz r6, 0x19(r4)
/* 80045210 00040E70 38 E0 00 08 */ li r7, 8
/* 80045214 00040E74 98 C1 00 0A */ stb r6, 0xa(r1)
/* 80045218 00040E78 7C 8C 02 14 */ add r4, r12, r0
/* 8004521C 00040E7C 1C 05 00 AC */ mulli r0, r5, 0xac
/* 80045220 00040E80 88 C4 00 19 */ lbz r6, 0x19(r4)
/* 80045224 00040E84 38 A0 00 09 */ li r5, 9
/* 80045228 00040E88 98 C1 00 0B */ stb r6, 0xb(r1)
/* 8004522C 00040E8C 7C 8C 02 14 */ add r4, r12, r0
/* 80045230 00040E90 88 04 00 19 */ lbz r0, 0x19(r4)
/* 80045234 00040E94 1C CA 00 AC */ mulli r6, r10, 0xac
/* 80045238 00040E98 98 01 00 0C */ stb r0, 0xc(r1)
/* 8004523C 00040E9C 7C CC 32 14 */ add r6, r12, r6
/* 80045240 00040EA0 1C 89 00 AC */ mulli r4, r9, 0xac
/* 80045244 00040EA4 88 06 00 19 */ lbz r0, 0x19(r6)
/* 80045248 00040EA8 98 01 00 0D */ stb r0, 0xd(r1)
/* 8004524C 00040EAC 7C 8C 22 14 */ add r4, r12, r4
/* 80045250 00040EB0 88 C4 00 19 */ lbz r6, 0x19(r4)
/* 80045254 00040EB4 1C 08 00 AC */ mulli r0, r8, 0xac
/* 80045258 00040EB8 98 C1 00 0E */ stb r6, 0xe(r1)
/* 8004525C 00040EBC 7C 8C 02 14 */ add r4, r12, r0
/* 80045260 00040EC0 88 C4 00 19 */ lbz r6, 0x19(r4)
/* 80045264 00040EC4 1C 07 00 AC */ mulli r0, r7, 0xac
/* 80045268 00040EC8 98 C1 00 0F */ stb r6, 0xf(r1)
/* 8004526C 00040ECC 7C 8C 02 14 */ add r4, r12, r0
/* 80045270 00040ED0 88 C4 00 19 */ lbz r6, 0x19(r4)
/* 80045274 00040ED4 1C 05 00 AC */ mulli r0, r5, 0xac
/* 80045278 00040ED8 98 C1 00 10 */ stb r6, 0x10(r1)
/* 8004527C 00040EDC 7C 8C 02 14 */ add r4, r12, r0
/* 80045280 00040EE0 88 04 00 19 */ lbz r0, 0x19(r4)
/* 80045284 00040EE4 98 01 00 11 */ stb r0, 0x11(r1)
/* 80045288 00040EE8 80 63 00 04 */ lwz r3, 4(r3)
/* 8004528C 00040EEC 4B FF 7C 81 */ bl func_8003CF0C
/* 80045290 00040EF0 4B FF 8E CD */ bl func_8003E15C
/* 80045294 00040EF4 4B FF 8F 29 */ bl func_8003E1BC
/* 80045298 00040EF8 2C 03 00 00 */ cmpwi r3, 0
/* 8004529C 00040EFC 90 7B 00 04 */ stw r3, 4(r27)
/* 800452A0 00040F00 41 82 00 2C */ beq lbl_800452CC
/* 800452A4 00040F04 7F E4 FB 78 */ mr r4, r31
/* 800452A8 00040F08 7F A5 EB 78 */ mr r5, r29
/* 800452AC 00040F0C 7F C6 F3 78 */ mr r6, r30
/* 800452B0 00040F10 38 E1 00 08 */ addi r7, r1, 8
/* 800452B4 00040F14 4B FF 7E 0D */ bl func_8003D0C0
/* 800452B8 00040F18 80 7B 00 04 */ lwz r3, 4(r27)
/* 800452BC 00040F1C 38 80 00 02 */ li r4, 2
/* 800452C0 00040F20 38 00 00 01 */ li r0, 1
/* 800452C4 00040F24 B0 83 05 0C */ sth r4, 0x50c(r3)
/* 800452C8 00040F28 98 1B 00 40 */ stb r0, 0x40(r27)
lbl_800452CC:
/* 800452CC 00040F2C 38 60 00 00 */ li r3, 0
/* 800452D0 00040F30 38 00 00 01 */ li r0, 1
/* 800452D4 00040F34 98 7B 00 10 */ stb r3, 0x10(r27)
/* 800452D8 00040F38 98 1B 00 3F */ stb r0, 0x3f(r27)
/* 800452DC 00040F3C 93 9B 00 00 */ stw r28, 0(r27)
lbl_800452E0:
/* 800452E0 00040F40 39 61 00 30 */ addi r11, r1, 0x30
/* 800452E4 00040F44 48 18 1E 91 */ bl _restgpr_27
/* 800452E8 00040F48 80 01 00 34 */ lwz r0, 0x34(r1)
/* 800452EC 00040F4C 7C 08 03 A6 */ mtlr r0
/* 800452F0 00040F50 38 21 00 30 */ addi r1, r1, 0x30
/* 800452F4 00040F54 4E 80 00 20 */ blr
.global func_800452F8
func_800452F8:
/* 800452F8 00040F58 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 800452FC 00040F5C 7C 08 02 A6 */ mflr r0
/* 80045300 00040F60 90 01 00 34 */ stw r0, 0x34(r1)
/* 80045304 00040F64 39 61 00 30 */ addi r11, r1, 0x30
/* 80045308 00040F68 48 18 1E 15 */ bl _savegpr_24
/* 8004530C 00040F6C 54 80 10 3A */ slwi r0, r4, 2
/* 80045310 00040F70 7C 78 1B 78 */ mr r24, r3
/* 80045314 00040F74 7F E3 02 14 */ add r31, r3, r0
/* 80045318 00040F78 7C 99 23 78 */ mr r25, r4
/* 8004531C 00040F7C 80 7F 00 08 */ lwz r3, 8(r31)
/* 80045320 00040F80 7C BA 2B 78 */ mr r26, r5
/* 80045324 00040F84 7C DB 33 78 */ mr r27, r6
/* 80045328 00040F88 7C FC 3B 78 */ mr r28, r7
/* 8004532C 00040F8C 7D 1D 43 78 */ mr r29, r8
/* 80045330 00040F90 7D 3E 4B 78 */ mr r30, r9
/* 80045334 00040F94 4B FF 7B D9 */ bl func_8003CF0C
/* 80045338 00040F98 4B FF 8E 25 */ bl func_8003E15C
/* 8004533C 00040F9C 4B FF 8E 81 */ bl func_8003E1BC
/* 80045340 00040FA0 2C 03 00 00 */ cmpwi r3, 0
/* 80045344 00040FA4 90 7F 00 08 */ stw r3, 8(r31)
/* 80045348 00040FA8 41 82 00 28 */ beq lbl_80045370
/* 8004534C 00040FAC 7F 44 D3 78 */ mr r4, r26
/* 80045350 00040FB0 7F 65 DB 78 */ mr r5, r27
/* 80045354 00040FB4 7F 86 E3 78 */ mr r6, r28
/* 80045358 00040FB8 7F A7 EB 78 */ mr r7, r29
/* 8004535C 00040FBC 7F C8 F3 78 */ mr r8, r30
/* 80045360 00040FC0 4B FF 7B F5 */ bl func_8003CF54
/* 80045364 00040FC4 7C 78 CA 14 */ add r3, r24, r25
/* 80045368 00040FC8 38 00 00 01 */ li r0, 1
/* 8004536C 00040FCC 98 03 00 41 */ stb r0, 0x41(r3)
lbl_80045370:
/* 80045370 00040FD0 7C 78 CA 14 */ add r3, r24, r25
/* 80045374 00040FD4 38 00 00 00 */ li r0, 0
/* 80045378 00040FD8 98 03 00 11 */ stb r0, 0x11(r3)
/* 8004537C 00040FDC 38 00 00 01 */ li r0, 1
/* 80045380 00040FE0 39 61 00 30 */ addi r11, r1, 0x30
/* 80045384 00040FE4 98 18 00 3F */ stb r0, 0x3f(r24)
/* 80045388 00040FE8 48 18 1D E1 */ bl _restgpr_24
/* 8004538C 00040FEC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80045390 00040FF0 7C 08 03 A6 */ mtlr r0
/* 80045394 00040FF4 38 21 00 30 */ addi r1, r1, 0x30
/* 80045398 00040FF8 4E 80 00 20 */ blr
.global func_8004539C
func_8004539C:
/* 8004539C 00040FFC 2C 04 00 00 */ cmpwi r4, 0
/* 800453A0 00041000 4D 82 00 20 */ beqlr
/* 800453A4 00041004 C0 04 00 00 */ lfs f0, 0(r4)
/* 800453A8 00041008 D0 03 00 14 */ stfs f0, 0x14(r3)
/* 800453AC 0004100C C0 04 00 04 */ lfs f0, 4(r4)
/* 800453B0 00041010 D0 03 00 18 */ stfs f0, 0x18(r3)
/* 800453B4 00041014 C0 04 00 08 */ lfs f0, 8(r4)
/* 800453B8 00041018 D0 03 00 1C */ stfs f0, 0x1c(r3)
/* 800453BC 0004101C 4E 80 00 20 */ blr
.global func_800453C0
func_800453C0:
/* 800453C0 00041020 2C 04 00 00 */ cmpwi r4, 0
/* 800453C4 00041024 41 82 00 1C */ beq lbl_800453E0
/* 800453C8 00041028 C0 04 00 00 */ lfs f0, 0(r4)
/* 800453CC 0004102C D0 03 00 20 */ stfs f0, 0x20(r3)
/* 800453D0 00041030 C0 04 00 04 */ lfs f0, 4(r4)
/* 800453D4 00041034 D0 03 00 24 */ stfs f0, 0x24(r3)
/* 800453D8 00041038 C0 04 00 08 */ lfs f0, 8(r4)
/* 800453DC 0004103C D0 03 00 28 */ stfs f0, 0x28(r3)
lbl_800453E0:
/* 800453E0 00041040 2C 05 00 00 */ cmpwi r5, 0
/* 800453E4 00041044 4D 82 00 20 */ beqlr
/* 800453E8 00041048 C0 05 00 00 */ lfs f0, 0(r5)
/* 800453EC 0004104C D0 03 00 2C */ stfs f0, 0x2c(r3)
/* 800453F0 00041050 C0 05 00 04 */ lfs f0, 4(r5)
/* 800453F4 00041054 D0 03 00 30 */ stfs f0, 0x30(r3)
/* 800453F8 00041058 C0 05 00 08 */ lfs f0, 8(r5)
/* 800453FC 0004105C D0 03 00 34 */ stfs f0, 0x34(r3)
/* 80045400 00041060 4E 80 00 20 */ blr
.global func_80045404
func_80045404:
/* 80045404 00041064 2C 04 00 00 */ cmpwi r4, 0
/* 80045408 00041068 4D 82 00 20 */ beqlr
/* 8004540C 0004106C C0 03 00 14 */ lfs f0, 0x14(r3)
/* 80045410 00041070 D0 04 00 00 */ stfs f0, 0(r4)
/* 80045414 00041074 C0 03 00 18 */ lfs f0, 0x18(r3)
/* 80045418 00041078 D0 04 00 04 */ stfs f0, 4(r4)
/* 8004541C 0004107C C0 03 00 1C */ lfs f0, 0x1c(r3)
/* 80045420 00041080 D0 04 00 08 */ stfs f0, 8(r4)
/* 80045424 00041084 4E 80 00 20 */ blr
.global func_80045428
func_80045428:
/* 80045428 00041088 2C 04 00 00 */ cmpwi r4, 0
/* 8004542C 0004108C 41 82 00 1C */ beq lbl_80045448
/* 80045430 00041090 C0 03 00 20 */ lfs f0, 0x20(r3)
/* 80045434 00041094 D0 04 00 00 */ stfs f0, 0(r4)
/* 80045438 00041098 C0 03 00 24 */ lfs f0, 0x24(r3)
/* 8004543C 0004109C D0 04 00 04 */ stfs f0, 4(r4)
/* 80045440 000410A0 C0 03 00 28 */ lfs f0, 0x28(r3)
/* 80045444 000410A4 D0 04 00 08 */ stfs f0, 8(r4)
lbl_80045448:
/* 80045448 000410A8 2C 05 00 00 */ cmpwi r5, 0
/* 8004544C 000410AC 4D 82 00 20 */ beqlr
/* 80045450 000410B0 C0 03 00 2C */ lfs f0, 0x2c(r3)
/* 80045454 000410B4 D0 05 00 00 */ stfs f0, 0(r5)
/* 80045458 000410B8 C0 03 00 30 */ lfs f0, 0x30(r3)
/* 8004545C 000410BC D0 05 00 04 */ stfs f0, 4(r5)
/* 80045460 000410C0 C0 03 00 34 */ lfs f0, 0x34(r3)
/* 80045464 000410C4 D0 05 00 08 */ stfs f0, 8(r5)
/* 80045468 000410C8 4E 80 00 20 */ blr
.global func_8004546C
func_8004546C:
/* 8004546C 000410CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80045470 000410D0 7C 08 02 A6 */ mflr r0
/* 80045474 000410D4 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80045478 000410D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004547C 000410DC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80045480 000410E0 7C 7F 1B 78 */ mr r31, r3
/* 80045484 000410E4 C0 23 00 38 */ lfs f1, 0x38(r3)
/* 80045488 000410E8 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 8004548C 000410EC D0 01 00 08 */ stfs f0, 8(r1)
/* 80045490 000410F0 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80045494 000410F4 80 63 00 04 */ lwz r3, 4(r3)
/* 80045498 000410F8 2C 03 00 00 */ cmpwi r3, 0
/* 8004549C 000410FC 41 82 00 18 */ beq lbl_800454B4
/* 800454A0 00041100 38 9F 00 14 */ addi r4, r31, 0x14
/* 800454A4 00041104 4B FF 33 79 */ bl func_8003881C
/* 800454A8 00041108 80 7F 00 04 */ lwz r3, 4(r31)
/* 800454AC 0004110C 38 81 00 08 */ addi r4, r1, 8
/* 800454B0 00041110 4B FF 36 21 */ bl func_80038AD0
lbl_800454B4:
/* 800454B4 00041114 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800454B8 00041118 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800454BC 0004111C 7C 08 03 A6 */ mtlr r0
/* 800454C0 00041120 38 21 00 20 */ addi r1, r1, 0x20
/* 800454C4 00041124 4E 80 00 20 */ blr
.global func_800454C8
func_800454C8:
/* 800454C8 00041128 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 800454CC 0004112C 7C 08 02 A6 */ mflr r0
/* 800454D0 00041130 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800454D4 00041134 90 01 00 34 */ stw r0, 0x34(r1)
/* 800454D8 00041138 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 800454DC 0004113C 7C 7F 1B 78 */ mr r31, r3
/* 800454E0 00041140 93 C1 00 28 */ stw r30, 0x28(r1)
/* 800454E4 00041144 3B C3 00 20 */ addi r30, r3, 0x20
/* 800454E8 00041148 93 A1 00 24 */ stw r29, 0x24(r1)
/* 800454EC 0004114C 3B A0 00 00 */ li r29, 0
/* 800454F0 00041150 C0 23 00 38 */ lfs f1, 0x38(r3)
/* 800454F4 00041154 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 800454F8 00041158 D0 01 00 08 */ stfs f0, 8(r1)
/* 800454FC 0004115C D0 01 00 10 */ stfs f0, 0x10(r1)
lbl_80045500:
/* 80045500 00041160 80 7F 00 08 */ lwz r3, 8(r31)
/* 80045504 00041164 2C 03 00 00 */ cmpwi r3, 0
/* 80045508 00041168 41 82 00 18 */ beq lbl_80045520
/* 8004550C 0004116C 7F C4 F3 78 */ mr r4, r30
/* 80045510 00041170 4B FF 33 0D */ bl func_8003881C
/* 80045514 00041174 80 7F 00 08 */ lwz r3, 8(r31)
/* 80045518 00041178 38 81 00 08 */ addi r4, r1, 8
/* 8004551C 0004117C 4B FF 35 B5 */ bl func_80038AD0
lbl_80045520:
/* 80045520 00041180 3B BD 00 01 */ addi r29, r29, 1
/* 80045524 00041184 3B DE 00 0C */ addi r30, r30, 0xc
/* 80045528 00041188 2C 1D 00 02 */ cmpwi r29, 2
/* 8004552C 0004118C 3B FF 00 04 */ addi r31, r31, 4
/* 80045530 00041190 41 80 FF D0 */ blt lbl_80045500
/* 80045534 00041194 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80045538 00041198 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8004553C 0004119C 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80045540 000411A0 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80045544 000411A4 7C 08 03 A6 */ mtlr r0
/* 80045548 000411A8 38 21 00 30 */ addi r1, r1, 0x30
/* 8004554C 000411AC 4E 80 00 20 */ blr
.global func_80045550
func_80045550:
/* 80045550 000411B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80045554 000411B4 7C 08 02 A6 */ mflr r0
/* 80045558 000411B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004555C 000411BC 80 0D 97 F8 */ lwz r0, lbl_8063EAB8-_SDA_BASE_(r13)
/* 80045560 000411C0 2C 00 00 00 */ cmpwi r0, 0
/* 80045564 000411C4 40 82 00 1C */ bne lbl_80045580
/* 80045568 000411C8 38 60 01 6C */ li r3, 0x16c
/* 8004556C 000411CC 48 19 54 C5 */ bl __nw__FUl
/* 80045570 000411D0 2C 03 00 00 */ cmpwi r3, 0
/* 80045574 000411D4 41 82 00 08 */ beq lbl_8004557C
/* 80045578 000411D8 48 00 00 21 */ bl func_80045598
lbl_8004557C:
/* 8004557C 000411DC 90 6D 97 F8 */ stw r3, lbl_8063EAB8-_SDA_BASE_(r13)
lbl_80045580:
/* 80045580 000411E0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80045584 000411E4 7C 08 03 A6 */ mtlr r0
/* 80045588 000411E8 38 21 00 10 */ addi r1, r1, 0x10
/* 8004558C 000411EC 4E 80 00 20 */ blr
.global func_80045590
func_80045590:
/* 80045590 000411F0 80 6D 97 F8 */ lwz r3, lbl_8063EAB8-_SDA_BASE_(r13)
/* 80045594 000411F4 4E 80 00 20 */ blr
.global func_80045598
func_80045598:
/* 80045598 000411F8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004559C 000411FC 7C 08 02 A6 */ mflr r0
/* 800455A0 00041200 90 01 00 24 */ stw r0, 0x24(r1)
/* 800455A4 00041204 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 800455A8 00041208 3B E3 01 1C */ addi r31, r3, 0x11c
/* 800455AC 0004120C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 800455B0 00041210 3B C3 00 0C */ addi r30, r3, 0xc
/* 800455B4 00041214 93 A1 00 14 */ stw r29, 0x14(r1)
/* 800455B8 00041218 7C 7D 1B 78 */ mr r29, r3
lbl_800455BC:
/* 800455BC 0004121C 7F C3 F3 78 */ mr r3, r30
/* 800455C0 00041220 4B FF F9 69 */ bl func_80044F28
/* 800455C4 00041224 3B DE 00 44 */ addi r30, r30, 0x44
/* 800455C8 00041228 7C 1E F8 40 */ cmplw r30, r31
/* 800455CC 0004122C 41 80 FF F0 */ blt lbl_800455BC
/* 800455D0 00041230 7F A3 EB 78 */ mr r3, r29
/* 800455D4 00041234 48 00 00 25 */ bl func_800455F8
/* 800455D8 00041238 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800455DC 0004123C 7F A3 EB 78 */ mr r3, r29
/* 800455E0 00041240 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800455E4 00041244 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800455E8 00041248 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800455EC 0004124C 7C 08 03 A6 */ mtlr r0
/* 800455F0 00041250 38 21 00 20 */ addi r1, r1, 0x20
/* 800455F4 00041254 4E 80 00 20 */ blr
.global func_800455F8
func_800455F8:
/* 800455F8 00041258 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800455FC 0004125C 7C 08 02 A6 */ mflr r0
/* 80045600 00041260 90 01 00 24 */ stw r0, 0x24(r1)
/* 80045604 00041264 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80045608 00041268 3B E3 00 0C */ addi r31, r3, 0xc
/* 8004560C 0004126C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80045610 00041270 3B C0 00 00 */ li r30, 0
/* 80045614 00041274 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80045618 00041278 7C 7D 1B 78 */ mr r29, r3
lbl_8004561C:
/* 8004561C 0004127C 7F E3 FB 78 */ mr r3, r31
/* 80045620 00041280 4B FF F9 55 */ bl func_80044F74
/* 80045624 00041284 3B DE 00 01 */ addi r30, r30, 1
/* 80045628 00041288 3B FF 00 44 */ addi r31, r31, 0x44
/* 8004562C 0004128C 2C 1E 00 04 */ cmpwi r30, 4
/* 80045630 00041290 41 80 FF EC */ blt lbl_8004561C
/* 80045634 00041294 38 00 00 00 */ li r0, 0
/* 80045638 00041298 38 C0 00 01 */ li r6, 1
/* 8004563C 0004129C 90 DD 00 00 */ stw r6, 0(r29)
/* 80045640 000412A0 38 7D 01 2C */ addi r3, r29, 0x12c
/* 80045644 000412A4 38 80 00 00 */ li r4, 0
/* 80045648 000412A8 38 A0 00 10 */ li r5, 0x10
/* 8004564C 000412AC 90 DD 01 24 */ stw r6, 0x124(r29)
/* 80045650 000412B0 B0 1D 01 1E */ sth r0, 0x11e(r29)
/* 80045654 000412B4 B0 1D 01 20 */ sth r0, 0x120(r29)
/* 80045658 000412B8 98 1D 01 28 */ stb r0, 0x128(r29)
/* 8004565C 000412BC 90 1D 00 08 */ stw r0, 8(r29)
/* 80045660 000412C0 90 1D 01 64 */ stw r0, 0x164(r29)
/* 80045664 000412C4 90 1D 01 68 */ stw r0, 0x168(r29)
/* 80045668 000412C8 98 1D 01 1C */ stb r0, 0x11c(r29)
/* 8004566C 000412CC 4B FB EA 99 */ bl memset
/* 80045670 000412D0 38 7D 01 3C */ addi r3, r29, 0x13c
/* 80045674 000412D4 38 80 00 00 */ li r4, 0
/* 80045678 000412D8 38 A0 00 10 */ li r5, 0x10
/* 8004567C 000412DC 4B FB EA 89 */ bl memset
/* 80045680 000412E0 38 7D 01 4C */ addi r3, r29, 0x14c
/* 80045684 000412E4 38 80 00 00 */ li r4, 0
/* 80045688 000412E8 38 A0 00 10 */ li r5, 0x10
/* 8004568C 000412EC 4B FB EA 79 */ bl memset
/* 80045690 000412F0 38 7D 01 5C */ addi r3, r29, 0x15c
/* 80045694 000412F4 38 80 00 00 */ li r4, 0
/* 80045698 000412F8 38 A0 00 08 */ li r5, 8
/* 8004569C 000412FC 4B FB EA 69 */ bl memset
/* 800456A0 00041300 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800456A4 00041304 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800456A8 00041308 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800456AC 0004130C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800456B0 00041310 7C 08 03 A6 */ mtlr r0
/* 800456B4 00041314 38 21 00 20 */ addi r1, r1, 0x20
/* 800456B8 00041318 4E 80 00 20 */ blr
.global func_800456BC
func_800456BC:
/* 800456BC 0004131C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800456C0 00041320 7C 08 02 A6 */ mflr r0
/* 800456C4 00041324 90 01 00 24 */ stw r0, 0x24(r1)
/* 800456C8 00041328 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 800456CC 0004132C 3B E3 00 0C */ addi r31, r3, 0xc
/* 800456D0 00041330 93 C1 00 18 */ stw r30, 0x18(r1)
/* 800456D4 00041334 3B C0 00 00 */ li r30, 0
/* 800456D8 00041338 93 A1 00 14 */ stw r29, 0x14(r1)
/* 800456DC 0004133C 7C 7D 1B 78 */ mr r29, r3
lbl_800456E0:
/* 800456E0 00041340 7F E3 FB 78 */ mr r3, r31
/* 800456E4 00041344 4B FF F9 2D */ bl func_80045010
/* 800456E8 00041348 7F E3 FB 78 */ mr r3, r31
/* 800456EC 0004134C 4B FF F8 89 */ bl func_80044F74
/* 800456F0 00041350 3B DE 00 01 */ addi r30, r30, 1
/* 800456F4 00041354 3B FF 00 44 */ addi r31, r31, 0x44
/* 800456F8 00041358 2C 1E 00 04 */ cmpwi r30, 4
/* 800456FC 0004135C 41 80 FF E4 */ blt lbl_800456E0
/* 80045700 00041360 38 00 00 00 */ li r0, 0
/* 80045704 00041364 B0 1D 01 1E */ sth r0, 0x11e(r29)
/* 80045708 00041368 B0 1D 01 20 */ sth r0, 0x120(r29)
/* 8004570C 0004136C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80045710 00041370 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80045714 00041374 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80045718 00041378 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004571C 0004137C 7C 08 03 A6 */ mtlr r0
/* 80045720 00041380 38 21 00 20 */ addi r1, r1, 0x20
/* 80045724 00041384 4E 80 00 20 */ blr
.global func_80045728
func_80045728:
/* 80045728 00041388 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004572C 0004138C 7C 08 02 A6 */ mflr r0
/* 80045730 00041390 2C 04 00 00 */ cmpwi r4, 0
/* 80045734 00041394 90 01 00 14 */ stw r0, 0x14(r1)
/* 80045738 00041398 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004573C 0004139C 7C 7F 1B 78 */ mr r31, r3
/* 80045740 000413A0 41 80 00 28 */ blt lbl_80045768
/* 80045744 000413A4 2C 04 00 03 */ cmpwi r4, 3
/* 80045748 000413A8 41 81 00 20 */ bgt lbl_80045768
/* 8004574C 000413AC 1C 04 00 44 */ mulli r0, r4, 0x44
/* 80045750 000413B0 7C 63 02 14 */ add r3, r3, r0
/* 80045754 000413B4 38 63 00 0C */ addi r3, r3, 0xc
/* 80045758 000413B8 4B FF F8 8D */ bl func_80044FE4
/* 8004575C 000413BC A0 7F 01 1E */ lhz r3, 0x11e(r31)
/* 80045760 000413C0 38 03 00 01 */ addi r0, r3, 1
/* 80045764 000413C4 B0 1F 01 1E */ sth r0, 0x11e(r31)
lbl_80045768:
/* 80045768 000413C8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004576C 000413CC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80045770 000413D0 7C 08 03 A6 */ mtlr r0
/* 80045774 000413D4 38 21 00 10 */ addi r1, r1, 0x10
/* 80045778 000413D8 4E 80 00 20 */ blr
.global func_8004577C
func_8004577C:
/* 8004577C 000413DC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80045780 000413E0 7C 08 02 A6 */ mflr r0
/* 80045784 000413E4 2C 04 00 00 */ cmpwi r4, 0
/* 80045788 000413E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004578C 000413EC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80045790 000413F0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80045794 000413F4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80045798 000413F8 7C 7D 1B 78 */ mr r29, r3
/* 8004579C 000413FC 41 80 00 5C */ blt lbl_800457F8
/* 800457A0 00041400 2C 04 00 03 */ cmpwi r4, 3
/* 800457A4 00041404 41 81 00 54 */ bgt lbl_800457F8
/* 800457A8 00041408 1C 04 00 44 */ mulli r0, r4, 0x44
/* 800457AC 0004140C 7C E7 07 74 */ extsb r7, r7
/* 800457B0 00041410 7C 63 02 14 */ add r3, r3, r0
/* 800457B4 00041414 38 63 00 0C */ addi r3, r3, 0xc
/* 800457B8 00041418 4B FF F9 21 */ bl func_800450D8
/* 800457BC 0004141C 38 00 00 00 */ li r0, 0
/* 800457C0 00041420 3B FD 00 0C */ addi r31, r29, 0xc
/* 800457C4 00041424 B0 1D 01 1E */ sth r0, 0x11e(r29)
/* 800457C8 00041428 3B C0 00 00 */ li r30, 0
lbl_800457CC:
/* 800457CC 0004142C 7F E3 FB 78 */ mr r3, r31
/* 800457D0 00041430 4B FF F7 E1 */ bl func_80044FB0
/* 800457D4 00041434 2C 03 00 00 */ cmpwi r3, 0
/* 800457D8 00041438 41 82 00 10 */ beq lbl_800457E8
/* 800457DC 0004143C A0 7D 01 1E */ lhz r3, 0x11e(r29)
/* 800457E0 00041440 38 03 00 01 */ addi r0, r3, 1
/* 800457E4 00041444 B0 1D 01 1E */ sth r0, 0x11e(r29)
lbl_800457E8:
/* 800457E8 00041448 3B DE 00 01 */ addi r30, r30, 1
/* 800457EC 0004144C 3B FF 00 44 */ addi r31, r31, 0x44
/* 800457F0 00041450 2C 1E 00 04 */ cmpwi r30, 4
/* 800457F4 00041454 41 80 FF D8 */ blt lbl_800457CC
lbl_800457F8:
/* 800457F8 00041458 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800457FC 0004145C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80045800 00041460 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80045804 00041464 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80045808 00041468 7C 08 03 A6 */ mtlr r0
/* 8004580C 0004146C 38 21 00 20 */ addi r1, r1, 0x20
/* 80045810 00041470 4E 80 00 20 */ blr
.global func_80045814
func_80045814:
/* 80045814 00041474 2C 04 00 00 */ cmpwi r4, 0
/* 80045818 00041478 4D 80 00 20 */ bltlr
/* 8004581C 0004147C 2C 04 00 03 */ cmpwi r4, 3
/* 80045820 00041480 4D 81 00 20 */ bgtlr
/* 80045824 00041484 1C 04 00 44 */ mulli r0, r4, 0x44
/* 80045828 00041488 7C 63 02 14 */ add r3, r3, r0
/* 8004582C 0004148C 38 63 00 0C */ addi r3, r3, 0xc
/* 80045830 00041490 4B FF F9 44 */ b lbl_80045174
/* 80045834 00041494 4E 80 00 20 */ blr
.global func_80045838
func_80045838:
/* 80045838 00041498 2C 04 00 00 */ cmpwi r4, 0
/* 8004583C 0004149C 41 80 00 0C */ blt lbl_80045848
/* 80045840 000414A0 2C 04 00 03 */ cmpwi r4, 3
/* 80045844 000414A4 40 81 00 0C */ ble lbl_80045850
lbl_80045848:
/* 80045848 000414A8 38 60 00 00 */ li r3, 0
/* 8004584C 000414AC 4E 80 00 20 */ blr
lbl_80045850:
/* 80045850 000414B0 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 80045854 000414B4 1C 00 00 44 */ mulli r0, r0, 0x44
/* 80045858 000414B8 7C 63 02 14 */ add r3, r3, r0
/* 8004585C 000414BC 88 63 00 1C */ lbz r3, 0x1c(r3)
/* 80045860 000414C0 4E 80 00 20 */ blr
.global func_80045864
func_80045864:
/* 80045864 000414C4 2C 04 00 00 */ cmpwi r4, 0
/* 80045868 000414C8 4D 80 00 20 */ bltlr
/* 8004586C 000414CC 2C 04 00 03 */ cmpwi r4, 3
/* 80045870 000414D0 40 81 00 08 */ ble lbl_80045878
/* 80045874 000414D4 4E 80 00 20 */ blr
lbl_80045878:
/* 80045878 000414D8 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 8004587C 000414DC 38 80 00 01 */ li r4, 1
/* 80045880 000414E0 1C 00 00 44 */ mulli r0, r0, 0x44
/* 80045884 000414E4 7C 63 02 14 */ add r3, r3, r0
/* 80045888 000414E8 98 83 00 1C */ stb r4, 0x1c(r3)
/* 8004588C 000414EC 4E 80 00 20 */ blr
.global func_80045890
func_80045890:
/* 80045890 000414F0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80045894 000414F4 7C 08 02 A6 */ mflr r0
/* 80045898 000414F8 90 01 00 34 */ stw r0, 0x34(r1)
/* 8004589C 000414FC 39 61 00 30 */ addi r11, r1, 0x30
/* 800458A0 00041500 48 18 18 7D */ bl _savegpr_24
/* 800458A4 00041504 7C 78 1B 78 */ mr r24, r3
/* 800458A8 00041508 7C 99 23 78 */ mr r25, r4
/* 800458AC 0004150C 7C BA 2B 78 */ mr r26, r5
/* 800458B0 00041510 7C DB 33 78 */ mr r27, r6
/* 800458B4 00041514 7C FC 3B 78 */ mr r28, r7
/* 800458B8 00041518 7D 1D 43 78 */ mr r29, r8
/* 800458BC 0004151C 7D 3E 4B 78 */ mr r30, r9
/* 800458C0 00041520 4B FF 04 DD */ bl func_80035D9C
/* 800458C4 00041524 2C 19 00 00 */ cmpwi r25, 0
/* 800458C8 00041528 7C 7F 1B 78 */ mr r31, r3
/* 800458CC 0004152C 41 80 00 78 */ blt lbl_80045944
/* 800458D0 00041530 2C 19 00 03 */ cmpwi r25, 3
/* 800458D4 00041534 40 81 00 08 */ ble lbl_800458DC
/* 800458D8 00041538 48 00 00 6C */ b lbl_80045944
lbl_800458DC:
/* 800458DC 0004153C A0 18 01 1E */ lhz r0, 0x11e(r24)
/* 800458E0 00041540 28 00 00 02 */ cmplwi r0, 2
/* 800458E4 00041544 40 82 00 1C */ bne lbl_80045900
/* 800458E8 00041548 57 20 07 FE */ clrlwi r0, r25, 0x1f
/* 800458EC 0004154C 57 24 FF FE */ rlwinm r4, r25, 0x1f, 0x1f, 0x1f
/* 800458F0 00041550 1C 00 00 44 */ mulli r0, r0, 0x44
/* 800458F4 00041554 7C 78 02 14 */ add r3, r24, r0
/* 800458F8 00041558 38 63 00 0C */ addi r3, r3, 0xc
/* 800458FC 0004155C 48 00 00 24 */ b lbl_80045920
lbl_80045900:
/* 80045900 00041560 28 00 00 04 */ cmplwi r0, 4
/* 80045904 00041564 40 82 00 40 */ bne lbl_80045944
/* 80045908 00041568 1C 19 00 44 */ mulli r0, r25, 0x44
/* 8004590C 0004156C 38 80 00 00 */ li r4, 0
/* 80045910 00041570 7C 78 02 14 */ add r3, r24, r0
/* 80045914 00041574 38 63 00 0C */ addi r3, r3, 0xc
/* 80045918 00041578 48 00 00 08 */ b lbl_80045920
/* 8004591C 0004157C 48 00 00 28 */ b lbl_80045944
lbl_80045920:
/* 80045920 00041580 7F 45 D3 78 */ mr r5, r26
/* 80045924 00041584 7F 66 DB 78 */ mr r6, r27
/* 80045928 00041588 7F 87 E3 78 */ mr r7, r28
/* 8004592C 0004158C 7F A8 EB 78 */ mr r8, r29
/* 80045930 00041590 7F C9 F3 78 */ mr r9, r30
/* 80045934 00041594 4B FF F9 C5 */ bl func_800452F8
/* 80045938 00041598 7F E3 FB 78 */ mr r3, r31
/* 8004593C 0004159C 7F 24 CB 78 */ mr r4, r25
/* 80045940 000415A0 4B FF 13 AD */ bl func_80036CEC
lbl_80045944:
/* 80045944 000415A4 39 61 00 30 */ addi r11, r1, 0x30
/* 80045948 000415A8 48 18 18 21 */ bl _restgpr_24
/* 8004594C 000415AC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80045950 000415B0 7C 08 03 A6 */ mtlr r0
/* 80045954 000415B4 38 21 00 30 */ addi r1, r1, 0x30
/* 80045958 000415B8 4E 80 00 20 */ blr
.global func_8004595C
func_8004595C:
/* 8004595C 000415BC 2C 04 00 00 */ cmpwi r4, 0
/* 80045960 000415C0 41 80 00 0C */ blt lbl_8004596C
/* 80045964 000415C4 2C 04 00 03 */ cmpwi r4, 3
/* 80045968 000415C8 40 81 00 0C */ ble lbl_80045974
lbl_8004596C:
/* 8004596C 000415CC 38 60 00 00 */ li r3, 0
/* 80045970 000415D0 4E 80 00 20 */ blr
lbl_80045974:
/* 80045974 000415D4 A0 03 01 1E */ lhz r0, 0x11e(r3)
/* 80045978 000415D8 28 00 00 02 */ cmplwi r0, 2
/* 8004597C 000415DC 40 82 00 1C */ bne lbl_80045998
/* 80045980 000415E0 54 80 07 FE */ clrlwi r0, r4, 0x1f
/* 80045984 000415E4 54 84 FF FE */ rlwinm r4, r4, 0x1f, 0x1f, 0x1f
/* 80045988 000415E8 1C 00 00 44 */ mulli r0, r0, 0x44
/* 8004598C 000415EC 7C 63 02 14 */ add r3, r3, r0
/* 80045990 000415F0 38 03 00 0C */ addi r0, r3, 0xc
/* 80045994 000415F4 48 00 00 28 */ b lbl_800459BC
lbl_80045998:
/* 80045998 000415F8 28 00 00 04 */ cmplwi r0, 4
/* 8004599C 000415FC 40 82 00 18 */ bne lbl_800459B4
/* 800459A0 00041600 1C 04 00 44 */ mulli r0, r4, 0x44
/* 800459A4 00041604 38 80 00 00 */ li r4, 0
/* 800459A8 00041608 7C 63 02 14 */ add r3, r3, r0
/* 800459AC 0004160C 38 03 00 0C */ addi r0, r3, 0xc
/* 800459B0 00041610 48 00 00 0C */ b lbl_800459BC
lbl_800459B4:
/* 800459B4 00041614 38 60 00 00 */ li r3, 0
/* 800459B8 00041618 4E 80 00 20 */ blr
lbl_800459BC:
/* 800459BC 0004161C 7C 60 22 14 */ add r3, r0, r4
/* 800459C0 00041620 88 63 00 11 */ lbz r3, 0x11(r3)
/* 800459C4 00041624 4E 80 00 20 */ blr
.global func_800459C8
func_800459C8:
/* 800459C8 00041628 2C 04 00 00 */ cmpwi r4, 0
/* 800459CC 0004162C 4D 80 00 20 */ bltlr
/* 800459D0 00041630 2C 04 00 03 */ cmpwi r4, 3
/* 800459D4 00041634 40 81 00 08 */ ble lbl_800459DC
/* 800459D8 00041638 4E 80 00 20 */ blr
lbl_800459DC:
/* 800459DC 0004163C A0 03 01 1E */ lhz r0, 0x11e(r3)
/* 800459E0 00041640 28 00 00 02 */ cmplwi r0, 2
/* 800459E4 00041644 40 82 00 1C */ bne lbl_80045A00
/* 800459E8 00041648 54 80 07 FE */ clrlwi r0, r4, 0x1f
/* 800459EC 0004164C 54 84 FF FE */ rlwinm r4, r4, 0x1f, 0x1f, 0x1f
/* 800459F0 00041650 1C 00 00 44 */ mulli r0, r0, 0x44
/* 800459F4 00041654 7C 63 02 14 */ add r3, r3, r0
/* 800459F8 00041658 38 03 00 0C */ addi r0, r3, 0xc
/* 800459FC 0004165C 48 00 00 24 */ b lbl_80045A20
lbl_80045A00:
/* 80045A00 00041660 28 00 00 04 */ cmplwi r0, 4
/* 80045A04 00041664 4C 82 00 20 */ bnelr
/* 80045A08 00041668 1C 04 00 44 */ mulli r0, r4, 0x44
/* 80045A0C 0004166C 38 80 00 00 */ li r4, 0
/* 80045A10 00041670 7C 63 02 14 */ add r3, r3, r0
/* 80045A14 00041674 38 03 00 0C */ addi r0, r3, 0xc
/* 80045A18 00041678 48 00 00 08 */ b lbl_80045A20
/* 80045A1C 0004167C 4E 80 00 20 */ blr
lbl_80045A20:
/* 80045A20 00041680 7C 60 22 14 */ add r3, r0, r4
/* 80045A24 00041684 38 00 00 01 */ li r0, 1
/* 80045A28 00041688 98 03 00 11 */ stb r0, 0x11(r3)
/* 80045A2C 0004168C 4E 80 00 20 */ blr
.global func_80045A30
func_80045A30:
/* 80045A30 00041690 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80045A34 00041694 7C 08 02 A6 */ mflr r0
/* 80045A38 00041698 90 01 00 24 */ stw r0, 0x24(r1)
/* 80045A3C 0004169C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80045A40 000416A0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80045A44 000416A4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80045A48 000416A8 7C 9D 23 78 */ mr r29, r4
/* 80045A4C 000416AC 93 81 00 10 */ stw r28, 0x10(r1)
/* 80045A50 000416B0 7C 7C 1B 78 */ mr r28, r3
/* 80045A54 000416B4 4B FF 03 49 */ bl func_80035D9C
/* 80045A58 000416B8 7C 7F 1B 78 */ mr r31, r3
/* 80045A5C 000416BC 3B C0 00 00 */ li r30, 0
lbl_80045A60:
/* 80045A60 000416C0 7F E3 FB 78 */ mr r3, r31
/* 80045A64 000416C4 7F C4 F3 78 */ mr r4, r30
/* 80045A68 000416C8 4B FF 12 AD */ bl func_80036D14
/* 80045A6C 000416CC A0 A3 00 00 */ lhz r5, 0(r3)
/* 80045A70 000416D0 7C 69 1B 78 */ mr r9, r3
/* 80045A74 000416D4 2C 05 00 00 */ cmpwi r5, 0
/* 80045A78 000416D8 41 82 00 50 */ beq lbl_80045AC8
/* 80045A7C 000416DC 88 C9 00 04 */ lbz r6, 4(r9)
/* 80045A80 000416E0 7F 83 E3 78 */ mr r3, r28
/* 80045A84 000416E4 A0 E9 00 02 */ lhz r7, 2(r9)
/* 80045A88 000416E8 7F C4 F3 78 */ mr r4, r30
/* 80045A8C 000416EC 89 09 00 05 */ lbz r8, 5(r9)
/* 80045A90 000416F0 81 29 00 0C */ lwz r9, 0xc(r9)
/* 80045A94 000416F4 4B FF FD FD */ bl func_80045890
/* 80045A98 000416F8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80045A9C 000416FC 48 1D EA ED */ bl func_80224588
/* 80045AA0 00041700 7F 83 E3 78 */ mr r3, r28
/* 80045AA4 00041704 7F C4 F3 78 */ mr r4, r30
/* 80045AA8 00041708 38 A0 00 00 */ li r5, 0
/* 80045AAC 0004170C 48 00 00 55 */ bl func_80045B00
/* 80045AB0 00041710 2C 1D 00 00 */ cmpwi r29, 0
/* 80045AB4 00041714 40 82 00 14 */ bne lbl_80045AC8
/* 80045AB8 00041718 2C 03 00 00 */ cmpwi r3, 0
/* 80045ABC 0004171C 41 82 00 0C */ beq lbl_80045AC8
/* 80045AC0 00041720 38 80 00 00 */ li r4, 0
/* 80045AC4 00041724 4B FF 22 69 */ bl func_80037D2C
lbl_80045AC8:
/* 80045AC8 00041728 3B DE 00 01 */ addi r30, r30, 1
/* 80045ACC 0004172C 2C 1E 00 04 */ cmpwi r30, 4
/* 80045AD0 00041730 41 80 FF 90 */ blt lbl_80045A60
/* 80045AD4 00041734 7F 83 E3 78 */ mr r3, r28
/* 80045AD8 00041738 38 80 00 01 */ li r4, 1
/* 80045ADC 0004173C 48 00 02 21 */ bl func_80045CFC
/* 80045AE0 00041740 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80045AE4 00041744 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80045AE8 00041748 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80045AEC 0004174C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80045AF0 00041750 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80045AF4 00041754 7C 08 03 A6 */ mtlr r0
/* 80045AF8 00041758 38 21 00 20 */ addi r1, r1, 0x20
/* 80045AFC 0004175C 4E 80 00 20 */ blr
.global func_80045B00
func_80045B00:
/* 80045B00 00041760 2C 04 01 00 */ cmpwi r4, 0x100
/* 80045B04 00041764 38 A0 00 00 */ li r5, 0
/* 80045B08 00041768 40 82 00 0C */ bne lbl_80045B14
/* 80045B0C 0004176C 80 63 00 08 */ lwz r3, 8(r3)
/* 80045B10 00041770 4E 80 00 20 */ blr
lbl_80045B14:
/* 80045B14 00041774 2C 04 01 01 */ cmpwi r4, 0x101
/* 80045B18 00041778 40 82 00 0C */ bne lbl_80045B24
/* 80045B1C 0004177C 80 63 00 04 */ lwz r3, 4(r3)
/* 80045B20 00041780 4E 80 00 20 */ blr
lbl_80045B24:
/* 80045B24 00041784 54 80 06 31 */ rlwinm. r0, r4, 0, 0x18, 0x18
/* 80045B28 00041788 41 82 00 18 */ beq lbl_80045B40
/* 80045B2C 0004178C 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 80045B30 00041790 1C 00 00 44 */ mulli r0, r0, 0x44
/* 80045B34 00041794 7C 63 02 14 */ add r3, r3, r0
/* 80045B38 00041798 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80045B3C 0004179C 4E 80 00 20 */ blr
lbl_80045B40:
/* 80045B40 000417A0 A0 03 01 1E */ lhz r0, 0x11e(r3)
/* 80045B44 000417A4 28 00 00 02 */ cmplwi r0, 2
/* 80045B48 000417A8 40 82 00 20 */ bne lbl_80045B68
/* 80045B4C 000417AC 54 85 07 FE */ clrlwi r5, r4, 0x1f
/* 80045B50 000417B0 54 80 0F 7A */ rlwinm r0, r4, 1, 0x1d, 0x1d
/* 80045B54 000417B4 1C 85 00 44 */ mulli r4, r5, 0x44
/* 80045B58 000417B8 7C 63 22 14 */ add r3, r3, r4
/* 80045B5C 000417BC 7C 63 02 14 */ add r3, r3, r0
/* 80045B60 000417C0 80 A3 00 14 */ lwz r5, 0x14(r3)
/* 80045B64 000417C4 48 00 00 1C */ b lbl_80045B80
lbl_80045B68:
/* 80045B68 000417C8 28 00 00 04 */ cmplwi r0, 4
/* 80045B6C 000417CC 40 82 00 14 */ bne lbl_80045B80
/* 80045B70 000417D0 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 80045B74 000417D4 1C 00 00 44 */ mulli r0, r0, 0x44
/* 80045B78 000417D8 7C 63 02 14 */ add r3, r3, r0
/* 80045B7C 000417DC 80 A3 00 14 */ lwz r5, 0x14(r3)
lbl_80045B80:
/* 80045B80 000417E0 7C A3 2B 78 */ mr r3, r5
/* 80045B84 000417E4 4E 80 00 20 */ blr
.global func_80045B88
func_80045B88:
/* 80045B88 000417E8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80045B8C 000417EC 7C 08 02 A6 */ mflr r0
/* 80045B90 000417F0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80045B94 000417F4 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 80045B98 000417F8 1C 00 00 44 */ mulli r0, r0, 0x44
/* 80045B9C 000417FC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80045BA0 00041800 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80045BA4 00041804 7C 03 02 14 */ add r0, r3, r0
/* 80045BA8 00041808 37 E0 00 0C */ addic. r31, r0, 0xc
/* 80045BAC 0004180C 7C DE 33 78 */ mr r30, r6
/* 80045BB0 00041810 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80045BB4 00041814 7C BD 2B 78 */ mr r29, r5
/* 80045BB8 00041818 40 82 00 0C */ bne lbl_80045BC4
/* 80045BBC 0004181C 38 60 00 00 */ li r3, 0
/* 80045BC0 00041820 48 00 00 3C */ b lbl_80045BFC
lbl_80045BC4:
/* 80045BC4 00041824 7F E3 FB 78 */ mr r3, r31
/* 80045BC8 00041828 4B FF F3 E9 */ bl func_80044FB0
/* 80045BCC 0004182C 2C 03 00 00 */ cmpwi r3, 0
/* 80045BD0 00041830 40 82 00 0C */ bne lbl_80045BDC
/* 80045BD4 00041834 38 60 00 00 */ li r3, 0
/* 80045BD8 00041838 48 00 00 24 */ b lbl_80045BFC
lbl_80045BDC:
/* 80045BDC 0004183C 7F E3 FB 78 */ mr r3, r31
/* 80045BE0 00041840 7F A4 EB 78 */ mr r4, r29
/* 80045BE4 00041844 4B FF F8 21 */ bl func_80045404
/* 80045BE8 00041848 7F E3 FB 78 */ mr r3, r31
/* 80045BEC 0004184C 4B FF F8 81 */ bl func_8004546C
/* 80045BF0 00041850 C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80045BF4 00041854 38 60 00 01 */ li r3, 1
/* 80045BF8 00041858 D0 1E 00 00 */ stfs f0, 0(r30)
lbl_80045BFC:
/* 80045BFC 0004185C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80045C00 00041860 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80045C04 00041864 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80045C08 00041868 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80045C0C 0004186C 7C 08 03 A6 */ mtlr r0
/* 80045C10 00041870 38 21 00 20 */ addi r1, r1, 0x20
/* 80045C14 00041874 4E 80 00 20 */ blr
.global func_80045C18
func_80045C18:
/* 80045C18 00041878 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80045C1C 0004187C 7C 08 02 A6 */ mflr r0
/* 80045C20 00041880 2C 07 00 00 */ cmpwi r7, 0
/* 80045C24 00041884 90 01 00 24 */ stw r0, 0x24(r1)
/* 80045C28 00041888 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80045C2C 0004188C 7C BF 2B 78 */ mr r31, r5
/* 80045C30 00041890 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80045C34 00041894 7C DE 33 78 */ mr r30, r6
/* 80045C38 00041898 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80045C3C 0004189C 7C 9D 23 78 */ mr r29, r4
/* 80045C40 000418A0 93 81 00 10 */ stw r28, 0x10(r1)
/* 80045C44 000418A4 7C 7C 1B 78 */ mr r28, r3
/* 80045C48 000418A8 41 82 00 0C */ beq lbl_80045C54
/* 80045C4C 000418AC 38 80 00 00 */ li r4, 0
/* 80045C50 000418B0 48 00 00 AD */ bl func_80045CFC
lbl_80045C54:
/* 80045C54 000418B4 A0 1C 01 1E */ lhz r0, 0x11e(r28)
/* 80045C58 000418B8 28 00 00 04 */ cmplwi r0, 4
/* 80045C5C 000418BC 40 82 00 2C */ bne lbl_80045C88
/* 80045C60 000418C0 1C 1D 00 44 */ mulli r0, r29, 0x44
/* 80045C64 000418C4 7F E4 FB 78 */ mr r4, r31
/* 80045C68 000418C8 38 A0 00 00 */ li r5, 0
/* 80045C6C 000418CC 7C 7C 02 14 */ add r3, r28, r0
/* 80045C70 000418D0 3B E3 00 0C */ addi r31, r3, 0xc
/* 80045C74 000418D4 7F E3 FB 78 */ mr r3, r31
/* 80045C78 000418D8 4B FF F7 B1 */ bl func_80045428
/* 80045C7C 000418DC C0 1F 00 38 */ lfs f0, 0x38(r31)
/* 80045C80 000418E0 D0 1E 00 00 */ stfs f0, 0(r30)
/* 80045C84 000418E4 48 00 00 54 */ b lbl_80045CD8
lbl_80045C88:
/* 80045C88 000418E8 28 00 00 02 */ cmplwi r0, 2
/* 80045C8C 000418EC 40 82 00 44 */ bne lbl_80045CD0
/* 80045C90 000418F0 57 A3 07 FE */ clrlwi r3, r29, 0x1f
/* 80045C94 000418F4 57 A0 07 BD */ rlwinm. r0, r29, 0, 0x1e, 0x1e
/* 80045C98 000418F8 1C 03 00 44 */ mulli r0, r3, 0x44
/* 80045C9C 000418FC 7C 7C 02 14 */ add r3, r28, r0
/* 80045CA0 00041900 38 63 00 0C */ addi r3, r3, 0xc
/* 80045CA4 00041904 C0 03 00 38 */ lfs f0, 0x38(r3)
/* 80045CA8 00041908 D0 1E 00 00 */ stfs f0, 0(r30)
/* 80045CAC 0004190C 41 82 00 14 */ beq lbl_80045CC0
/* 80045CB0 00041910 7F E5 FB 78 */ mr r5, r31
/* 80045CB4 00041914 38 80 00 00 */ li r4, 0
/* 80045CB8 00041918 4B FF F7 71 */ bl func_80045428
/* 80045CBC 0004191C 48 00 00 1C */ b lbl_80045CD8
lbl_80045CC0:
/* 80045CC0 00041920 7F E4 FB 78 */ mr r4, r31
/* 80045CC4 00041924 38 A0 00 00 */ li r5, 0
/* 80045CC8 00041928 4B FF F7 61 */ bl func_80045428
/* 80045CCC 0004192C 48 00 00 0C */ b lbl_80045CD8
lbl_80045CD0:
/* 80045CD0 00041930 38 60 00 00 */ li r3, 0
/* 80045CD4 00041934 48 00 00 08 */ b lbl_80045CDC
lbl_80045CD8:
/* 80045CD8 00041938 38 60 00 01 */ li r3, 1
lbl_80045CDC:
/* 80045CDC 0004193C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80045CE0 00041940 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80045CE4 00041944 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80045CE8 00041948 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80045CEC 0004194C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80045CF0 00041950 7C 08 03 A6 */ mtlr r0
/* 80045CF4 00041954 38 21 00 20 */ addi r1, r1, 0x20
/* 80045CF8 00041958 4E 80 00 20 */ blr
.global func_80045CFC
func_80045CFC:
/* 80045CFC 0004195C 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 80045D00 00041960 7C 08 02 A6 */ mflr r0
/* 80045D04 00041964 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80045D08 00041968 DB E1 00 B0 */ stfd f31, 0xb0(r1)
/* 80045D0C 0004196C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0
/* 80045D10 00041970 DB C1 00 A0 */ stfd f30, 0xa0(r1)
/* 80045D14 00041974 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0
/* 80045D18 00041978 DB A1 00 90 */ stfd f29, 0x90(r1)
/* 80045D1C 0004197C F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0
/* 80045D20 00041980 DB 81 00 80 */ stfd f28, 0x80(r1)
/* 80045D24 00041984 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0
/* 80045D28 00041988 DB 61 00 70 */ stfd f27, 0x70(r1)
/* 80045D2C 0004198C F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0
/* 80045D30 00041990 DB 41 00 60 */ stfd f26, 0x60(r1)
/* 80045D34 00041994 F3 41 00 68 */ psq_st f26, 104(r1), 0, qr0
/* 80045D38 00041998 DB 21 00 50 */ stfd f25, 0x50(r1)
/* 80045D3C 0004199C F3 21 00 58 */ psq_st f25, 88(r1), 0, qr0
/* 80045D40 000419A0 39 61 00 50 */ addi r11, r1, 0x50
/* 80045D44 000419A4 48 18 13 DD */ bl _savegpr_25
/* 80045D48 000419A8 C3 62 83 8C */ lfs f27, lbl_8064098C-_SDA2_BASE_(r2)
/* 80045D4C 000419AC 7C 7E 1B 78 */ mr r30, r3
/* 80045D50 000419B0 7C 9F 23 78 */ mr r31, r4
/* 80045D54 000419B4 4B FF 84 09 */ bl func_8003E15C
/* 80045D58 000419B8 2C 03 00 00 */ cmpwi r3, 0
/* 80045D5C 000419BC 41 82 00 B4 */ beq lbl_80045E10
/* 80045D60 000419C0 3B BE 00 0C */ addi r29, r30, 0xc
/* 80045D64 000419C4 3B 20 FF FF */ li r25, -1
/* 80045D68 000419C8 3B 40 00 00 */ li r26, 0
lbl_80045D6C:
/* 80045D6C 000419CC 7F A3 EB 78 */ mr r3, r29
/* 80045D70 000419D0 4B FF F2 41 */ bl func_80044FB0
/* 80045D74 000419D4 2C 03 00 00 */ cmpwi r3, 0
/* 80045D78 000419D8 41 82 00 38 */ beq lbl_80045DB0
/* 80045D7C 000419DC 7F BC EB 78 */ mr r28, r29
/* 80045D80 000419E0 3B 60 00 00 */ li r27, 0
lbl_80045D84:
/* 80045D84 000419E4 80 7C 00 08 */ lwz r3, 8(r28)
/* 80045D88 000419E8 2C 03 00 00 */ cmpwi r3, 0
/* 80045D8C 000419EC 41 82 00 14 */ beq lbl_80045DA0
/* 80045D90 000419F0 4B FF 39 45 */ bl func_800396D4
/* 80045D94 000419F4 7C 19 18 00 */ cmpw r25, r3
/* 80045D98 000419F8 40 80 00 08 */ bge lbl_80045DA0
/* 80045D9C 000419FC 7C 79 1B 78 */ mr r25, r3
lbl_80045DA0:
/* 80045DA0 00041A00 3B 7B 00 01 */ addi r27, r27, 1
/* 80045DA4 00041A04 3B 9C 00 04 */ addi r28, r28, 4
/* 80045DA8 00041A08 2C 1B 00 02 */ cmpwi r27, 2
/* 80045DAC 00041A0C 41 80 FF D8 */ blt lbl_80045D84
lbl_80045DB0:
/* 80045DB0 00041A10 3B 5A 00 01 */ addi r26, r26, 1
/* 80045DB4 00041A14 3B BD 00 44 */ addi r29, r29, 0x44
/* 80045DB8 00041A18 2C 1A 00 04 */ cmpwi r26, 4
/* 80045DBC 00041A1C 41 80 FF B0 */ blt lbl_80045D6C
/* 80045DC0 00041A20 2C 19 00 02 */ cmpwi r25, 2
/* 80045DC4 00041A24 41 81 00 08 */ bgt lbl_80045DCC
/* 80045DC8 00041A28 C3 62 83 90 */ lfs f27, lbl_80640990-_SDA2_BASE_(r2)
lbl_80045DCC:
/* 80045DCC 00041A2C 2C 19 00 03 */ cmpwi r25, 3
/* 80045DD0 00041A30 40 82 00 08 */ bne lbl_80045DD8
/* 80045DD4 00041A34 C3 62 83 8C */ lfs f27, lbl_8064098C-_SDA2_BASE_(r2)
lbl_80045DD8:
/* 80045DD8 00041A38 2C 19 00 04 */ cmpwi r25, 4
/* 80045DDC 00041A3C 40 82 00 08 */ bne lbl_80045DE4
/* 80045DE0 00041A40 C3 62 83 94 */ lfs f27, lbl_80640994-_SDA2_BASE_(r2)
lbl_80045DE4:
/* 80045DE4 00041A44 2C 19 00 05 */ cmpwi r25, 5
/* 80045DE8 00041A48 40 82 00 08 */ bne lbl_80045DF0
/* 80045DEC 00041A4C C3 62 83 98 */ lfs f27, lbl_80640998-_SDA2_BASE_(r2)
lbl_80045DF0:
/* 80045DF0 00041A50 2C 19 00 06 */ cmpwi r25, 6
/* 80045DF4 00041A54 41 80 00 08 */ blt lbl_80045DFC
/* 80045DF8 00041A58 C3 62 83 9C */ lfs f27, lbl_8064099C-_SDA2_BASE_(r2)
lbl_80045DFC:
/* 80045DFC 00041A5C 2C 19 00 01 */ cmpwi r25, 1
/* 80045E00 00041A60 93 3E 01 24 */ stw r25, 0x124(r30)
/* 80045E04 00041A64 40 80 00 0C */ bge lbl_80045E10
/* 80045E08 00041A68 38 00 00 01 */ li r0, 1
/* 80045E0C 00041A6C 90 1E 01 24 */ stw r0, 0x124(r30)
lbl_80045E10:
/* 80045E10 00041A70 3B 7E 00 0C */ addi r27, r30, 0xc
/* 80045E14 00041A74 C3 A2 83 88 */ lfs f29, lbl_80640988-_SDA2_BASE_(r2)
/* 80045E18 00041A78 C3 22 83 B0 */ lfs f25, lbl_806409B0-_SDA2_BASE_(r2)
/* 80045E1C 00041A7C 7F 7D DB 78 */ mr r29, r27
/* 80045E20 00041A80 C3 42 83 AC */ lfs f26, lbl_806409AC-_SDA2_BASE_(r2)
/* 80045E24 00041A84 3B 40 00 00 */ li r26, 0
/* 80045E28 00041A88 C3 C2 83 A0 */ lfs f30, lbl_806409A0-_SDA2_BASE_(r2)
/* 80045E2C 00041A8C C3 E2 83 A4 */ lfs f31, lbl_806409A4-_SDA2_BASE_(r2)
lbl_80045E30:
/* 80045E30 00041A90 7F A3 EB 78 */ mr r3, r29
/* 80045E34 00041A94 4B FF F1 7D */ bl func_80044FB0
/* 80045E38 00041A98 2C 03 00 00 */ cmpwi r3, 0
/* 80045E3C 00041A9C 41 82 02 1C */ beq lbl_80046058
/* 80045E40 00041AA0 57 5C 07 FF */ clrlwi. r28, r26, 0x1f
/* 80045E44 00041AA4 D3 A1 00 20 */ stfs f29, 0x20(r1)
/* 80045E48 00041AA8 D3 A1 00 24 */ stfs f29, 0x24(r1)
/* 80045E4C 00041AAC D3 A1 00 28 */ stfs f29, 0x28(r1)
/* 80045E50 00041AB0 D3 A1 00 14 */ stfs f29, 0x14(r1)
/* 80045E54 00041AB4 D3 A1 00 18 */ stfs f29, 0x18(r1)
/* 80045E58 00041AB8 D3 A1 00 1C */ stfs f29, 0x1c(r1)
/* 80045E5C 00041ABC 40 82 00 20 */ bne lbl_80045E7C
/* 80045E60 00041AC0 FC 00 D8 50 */ fneg f0, f27
/* 80045E64 00041AC4 FF 80 E8 90 */ fmr f28, f29
/* 80045E68 00041AC8 EC 3E 00 32 */ fmuls f1, f30, f0
/* 80045E6C 00041ACC EC 1F 00 32 */ fmuls f0, f31, f0
/* 80045E70 00041AD0 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 80045E74 00041AD4 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 80045E78 00041AD8 48 00 00 18 */ b lbl_80045E90
lbl_80045E7C:
/* 80045E7C 00041ADC EC 3E 06 F2 */ fmuls f1, f30, f27
/* 80045E80 00041AE0 C3 82 83 A8 */ lfs f28, lbl_806409A8-_SDA2_BASE_(r2)
/* 80045E84 00041AE4 EC 1F 06 F2 */ fmuls f0, f31, f27
/* 80045E88 00041AE8 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 80045E8C 00041AEC D0 01 00 1C */ stfs f0, 0x1c(r1)
lbl_80045E90:
/* 80045E90 00041AF0 1C 1C 00 44 */ mulli r0, r28, 0x44
/* 80045E94 00041AF4 3B 20 00 00 */ li r25, 0
/* 80045E98 00041AF8 7C 7E 02 14 */ add r3, r30, r0
/* 80045E9C 00041AFC 38 63 00 0C */ addi r3, r3, 0xc
/* 80045EA0 00041B00 4B FF F1 11 */ bl func_80044FB0
/* 80045EA4 00041B04 2C 03 00 00 */ cmpwi r3, 0
/* 80045EA8 00041B08 41 82 00 08 */ beq lbl_80045EB0
/* 80045EAC 00041B0C 3B 20 00 01 */ li r25, 1
lbl_80045EB0:
/* 80045EB0 00041B10 63 80 00 02 */ ori r0, r28, 2
/* 80045EB4 00041B14 1C 00 00 44 */ mulli r0, r0, 0x44
/* 80045EB8 00041B18 7C 7E 02 14 */ add r3, r30, r0
/* 80045EBC 00041B1C 38 63 00 0C */ addi r3, r3, 0xc
/* 80045EC0 00041B20 4B FF F0 F1 */ bl func_80044FB0
/* 80045EC4 00041B24 2C 03 00 00 */ cmpwi r3, 0
/* 80045EC8 00041B28 41 82 00 08 */ beq lbl_80045ED0
/* 80045ECC 00041B2C 3B 39 00 01 */ addi r25, r25, 1
lbl_80045ED0:
/* 80045ED0 00041B30 2C 19 00 01 */ cmpwi r25, 1
/* 80045ED4 00041B34 40 82 00 0C */ bne lbl_80045EE0
/* 80045ED8 00041B38 D3 A1 00 20 */ stfs f29, 0x20(r1)
/* 80045EDC 00041B3C 48 00 00 34 */ b lbl_80045F10
lbl_80045EE0:
/* 80045EE0 00041B40 2C 19 00 02 */ cmpwi r25, 2
/* 80045EE4 00041B44 40 82 00 2C */ bne lbl_80045F10
/* 80045EE8 00041B48 57 40 07 BF */ clrlwi. r0, r26, 0x1e
/* 80045EEC 00041B4C 41 82 00 0C */ beq lbl_80045EF8
/* 80045EF0 00041B50 2C 00 00 03 */ cmpwi r0, 3
/* 80045EF4 00041B54 40 82 00 10 */ bne lbl_80045F04
lbl_80045EF8:
/* 80045EF8 00041B58 EC 1A 06 F2 */ fmuls f0, f26, f27
/* 80045EFC 00041B5C D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80045F00 00041B60 48 00 00 10 */ b lbl_80045F10
lbl_80045F04:
/* 80045F04 00041B64 FC 00 D8 50 */ fneg f0, f27
/* 80045F08 00041B68 EC 1A 00 32 */ fmuls f0, f26, f0
/* 80045F0C 00041B6C D0 01 00 20 */ stfs f0, 0x20(r1)
lbl_80045F10:
/* 80045F10 00041B70 C0 01 00 28 */ lfs f0, 0x28(r1)
/* 80045F14 00041B74 7F A3 EB 78 */ mr r3, r29
/* 80045F18 00041B78 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80045F1C 00041B7C 4B FF F0 9D */ bl func_80044FB8
/* 80045F20 00041B80 2C 03 00 02 */ cmpwi r3, 2
/* 80045F24 00041B84 41 82 00 A0 */ beq lbl_80045FC4
/* 80045F28 00041B88 40 80 01 24 */ bge lbl_8004604C
/* 80045F2C 00041B8C 2C 03 00 01 */ cmpwi r3, 1
/* 80045F30 00041B90 40 80 00 08 */ bge lbl_80045F38
/* 80045F34 00041B94 48 00 01 18 */ b lbl_8004604C
lbl_80045F38:
/* 80045F38 00041B98 80 1E 00 00 */ lwz r0, 0(r30)
/* 80045F3C 00041B9C 2C 00 00 00 */ cmpwi r0, 0
/* 80045F40 00041BA0 40 82 00 1C */ bne lbl_80045F5C
/* 80045F44 00041BA4 EC 39 06 F2 */ fmuls f1, f25, f27
/* 80045F48 00041BA8 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80045F4C 00041BAC D3 A1 00 14 */ stfs f29, 0x14(r1)
/* 80045F50 00041BB0 EC 00 08 2A */ fadds f0, f0, f1
/* 80045F54 00041BB4 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80045F58 00041BB8 48 00 00 48 */ b lbl_80045FA0
lbl_80045F5C:
/* 80045F5C 00041BBC 2C 00 00 02 */ cmpwi r0, 2
/* 80045F60 00041BC0 40 82 00 40 */ bne lbl_80045FA0
/* 80045F64 00041BC4 C0 21 00 20 */ lfs f1, 0x20(r1)
/* 80045F68 00041BC8 57 40 07 BF */ clrlwi. r0, r26, 0x1e
/* 80045F6C 00041BCC D0 21 00 14 */ stfs f1, 0x14(r1)
/* 80045F70 00041BD0 41 82 00 0C */ beq lbl_80045F7C
/* 80045F74 00041BD4 2C 00 00 03 */ cmpwi r0, 3
/* 80045F78 00041BD8 40 82 00 18 */ bne lbl_80045F90
lbl_80045F7C:
/* 80045F7C 00041BDC EC 39 06 F2 */ fmuls f1, f25, f27
/* 80045F80 00041BE0 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80045F84 00041BE4 EC 00 08 2A */ fadds f0, f0, f1
/* 80045F88 00041BE8 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80045F8C 00041BEC 48 00 00 14 */ b lbl_80045FA0
lbl_80045F90:
/* 80045F90 00041BF0 FC 00 D8 50 */ fneg f0, f27
/* 80045F94 00041BF4 EC 19 00 32 */ fmuls f0, f25, f0
/* 80045F98 00041BF8 EC 01 00 2A */ fadds f0, f1, f0
/* 80045F9C 00041BFC D0 01 00 20 */ stfs f0, 0x20(r1)
lbl_80045FA0:
/* 80045FA0 00041C00 7F A3 EB 78 */ mr r3, r29
/* 80045FA4 00041C04 38 81 00 20 */ addi r4, r1, 0x20
/* 80045FA8 00041C08 4B FF F3 F5 */ bl func_8004539C
/* 80045FAC 00041C0C 38 81 00 14 */ addi r4, r1, 0x14
/* 80045FB0 00041C10 7F A3 EB 78 */ mr r3, r29
/* 80045FB4 00041C14 7C 85 23 78 */ mr r5, r4
/* 80045FB8 00041C18 4B FF F4 09 */ bl func_800453C0
/* 80045FBC 00041C1C D3 9D 00 38 */ stfs f28, 0x38(r29)
/* 80045FC0 00041C20 48 00 00 98 */ b lbl_80046058
lbl_80045FC4:
/* 80045FC4 00041C24 C0 41 00 14 */ lfs f2, 0x14(r1)
/* 80045FC8 00041C28 C0 21 00 18 */ lfs f1, 0x18(r1)
/* 80045FCC 00041C2C C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 80045FD0 00041C30 D0 41 00 08 */ stfs f2, 8(r1)
/* 80045FD4 00041C34 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80045FD8 00041C38 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80045FDC 00041C3C 80 1E 00 00 */ lwz r0, 0(r30)
/* 80045FE0 00041C40 2C 00 00 00 */ cmpwi r0, 0
/* 80045FE4 00041C44 40 82 00 10 */ bne lbl_80045FF4
/* 80045FE8 00041C48 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80045FEC 00041C4C D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80045FF0 00041C50 48 00 00 1C */ b lbl_8004600C
lbl_80045FF4:
/* 80045FF4 00041C54 EC 5A 06 F2 */ fmuls f2, f26, f27
/* 80045FF8 00041C58 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80045FFC 00041C5C EC 20 10 2A */ fadds f1, f0, f2
/* 80046000 00041C60 EC 00 10 28 */ fsubs f0, f0, f2
/* 80046004 00041C64 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 80046008 00041C68 D0 01 00 08 */ stfs f0, 8(r1)
lbl_8004600C:
/* 8004600C 00041C6C 7F A3 EB 78 */ mr r3, r29
/* 80046010 00041C70 38 81 00 20 */ addi r4, r1, 0x20
/* 80046014 00041C74 4B FF F3 89 */ bl func_8004539C
/* 80046018 00041C78 2C 1C 00 00 */ cmpwi r28, 0
/* 8004601C 00041C7C 41 82 00 18 */ beq lbl_80046034
/* 80046020 00041C80 7F A3 EB 78 */ mr r3, r29
/* 80046024 00041C84 38 81 00 08 */ addi r4, r1, 8
/* 80046028 00041C88 38 A1 00 14 */ addi r5, r1, 0x14
/* 8004602C 00041C8C 4B FF F3 95 */ bl func_800453C0
/* 80046030 00041C90 48 00 00 14 */ b lbl_80046044
lbl_80046034:
/* 80046034 00041C94 7F A3 EB 78 */ mr r3, r29
/* 80046038 00041C98 38 81 00 14 */ addi r4, r1, 0x14
/* 8004603C 00041C9C 38 A1 00 08 */ addi r5, r1, 8
/* 80046040 00041CA0 4B FF F3 81 */ bl func_800453C0
lbl_80046044:
/* 80046044 00041CA4 D3 9D 00 38 */ stfs f28, 0x38(r29)
/* 80046048 00041CA8 48 00 00 10 */ b lbl_80046058
lbl_8004604C:
/* 8004604C 00041CAC 7F A3 EB 78 */ mr r3, r29
/* 80046050 00041CB0 38 81 00 20 */ addi r4, r1, 0x20
/* 80046054 00041CB4 4B FF F3 49 */ bl func_8004539C
lbl_80046058:
/* 80046058 00041CB8 3B 5A 00 01 */ addi r26, r26, 1
/* 8004605C 00041CBC 3B BD 00 44 */ addi r29, r29, 0x44
/* 80046060 00041CC0 2C 1A 00 04 */ cmpwi r26, 4
/* 80046064 00041CC4 41 80 FD CC */ blt lbl_80045E30
/* 80046068 00041CC8 2C 1F 00 00 */ cmpwi r31, 0
/* 8004606C 00041CCC 41 82 00 40 */ beq lbl_800460AC
/* 80046070 00041CD0 3B 20 00 00 */ li r25, 0
/* 80046074 00041CD4 48 00 00 2C */ b lbl_800460A0
lbl_80046078:
/* 80046078 00041CD8 7F 63 DB 78 */ mr r3, r27
/* 8004607C 00041CDC 4B FF EF 35 */ bl func_80044FB0
/* 80046080 00041CE0 2C 03 00 00 */ cmpwi r3, 0
/* 80046084 00041CE4 41 82 00 14 */ beq lbl_80046098
/* 80046088 00041CE8 7F 63 DB 78 */ mr r3, r27
/* 8004608C 00041CEC 4B FF F3 E1 */ bl func_8004546C
/* 80046090 00041CF0 7F 63 DB 78 */ mr r3, r27
/* 80046094 00041CF4 4B FF F4 35 */ bl func_800454C8
lbl_80046098:
/* 80046098 00041CF8 3B 7B 00 44 */ addi r27, r27, 0x44
/* 8004609C 00041CFC 3B 39 00 01 */ addi r25, r25, 1
lbl_800460A0:
/* 800460A0 00041D00 A0 1E 01 1E */ lhz r0, 0x11e(r30)
/* 800460A4 00041D04 7C 19 00 00 */ cmpw r25, r0
/* 800460A8 00041D08 41 80 FF D0 */ blt lbl_80046078
lbl_800460AC:
/* 800460AC 00041D0C 7F C3 F3 78 */ mr r3, r30
/* 800460B0 00041D10 48 00 09 35 */ bl func_800469E4
/* 800460B4 00041D14 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0
/* 800460B8 00041D18 CB E1 00 B0 */ lfd f31, 0xb0(r1)
/* 800460BC 00041D1C E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0
/* 800460C0 00041D20 CB C1 00 A0 */ lfd f30, 0xa0(r1)
/* 800460C4 00041D24 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0
/* 800460C8 00041D28 CB A1 00 90 */ lfd f29, 0x90(r1)
/* 800460CC 00041D2C E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0
/* 800460D0 00041D30 CB 81 00 80 */ lfd f28, 0x80(r1)
/* 800460D4 00041D34 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0
/* 800460D8 00041D38 CB 61 00 70 */ lfd f27, 0x70(r1)
/* 800460DC 00041D3C E3 41 00 68 */ psq_l f26, 104(r1), 0, qr0
/* 800460E0 00041D40 CB 41 00 60 */ lfd f26, 0x60(r1)
/* 800460E4 00041D44 E3 21 00 58 */ psq_l f25, 88(r1), 0, qr0
/* 800460E8 00041D48 39 61 00 50 */ addi r11, r1, 0x50
/* 800460EC 00041D4C CB 21 00 50 */ lfd f25, 0x50(r1)
/* 800460F0 00041D50 48 18 10 7D */ bl _restgpr_25
/* 800460F4 00041D54 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 800460F8 00041D58 7C 08 03 A6 */ mtlr r0
/* 800460FC 00041D5C 38 21 00 C0 */ addi r1, r1, 0xc0
/* 80046100 00041D60 4E 80 00 20 */ blr
.global func_80046104
func_80046104:
/* 80046104 00041D64 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80046108 00041D68 7C 08 02 A6 */ mflr r0
/* 8004610C 00041D6C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80046110 00041D70 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80046114 00041D74 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80046118 00041D78 7C BE 2B 78 */ mr r30, r5
/* 8004611C 00041D7C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80046120 00041D80 7C 9D 23 78 */ mr r29, r4
/* 80046124 00041D84 93 81 00 10 */ stw r28, 0x10(r1)
/* 80046128 00041D88 7C 7C 1B 78 */ mr r28, r3
/* 8004612C 00041D8C 4B FF 80 31 */ bl func_8003E15C
/* 80046130 00041D90 2C 03 00 00 */ cmpwi r3, 0
/* 80046134 00041D94 7C 7F 1B 78 */ mr r31, r3
/* 80046138 00041D98 41 82 00 60 */ beq lbl_80046198
/* 8004613C 00041D9C 80 9C 00 08 */ lwz r4, 8(r28)
/* 80046140 00041DA0 2C 04 00 00 */ cmpwi r4, 0
/* 80046144 00041DA4 41 82 00 08 */ beq lbl_8004614C
/* 80046148 00041DA8 4B FF 80 F1 */ bl func_8003E238
lbl_8004614C:
/* 8004614C 00041DAC 7F E3 FB 78 */ mr r3, r31
/* 80046150 00041DB0 4B FF 80 6D */ bl func_8003E1BC
/* 80046154 00041DB4 2C 03 00 00 */ cmpwi r3, 0
/* 80046158 00041DB8 90 7C 00 08 */ stw r3, 8(r28)
/* 8004615C 00041DBC 41 82 00 3C */ beq lbl_80046198
/* 80046160 00041DC0 7F A4 EB 78 */ mr r4, r29
/* 80046164 00041DC4 7F C5 F3 78 */ mr r5, r30
/* 80046168 00041DC8 4B FF 17 BD */ bl func_80037924
/* 8004616C 00041DCC 80 7C 00 08 */ lwz r3, 8(r28)
/* 80046170 00041DD0 38 80 00 03 */ li r4, 3
/* 80046174 00041DD4 38 00 01 00 */ li r0, 0x100
/* 80046178 00041DD8 B0 83 05 0C */ sth r4, 0x50c(r3)
/* 8004617C 00041DDC 80 7C 00 08 */ lwz r3, 8(r28)
/* 80046180 00041DE0 B0 03 0C 68 */ sth r0, 0xc68(r3)
/* 80046184 00041DE4 80 7C 00 08 */ lwz r3, 8(r28)
/* 80046188 00041DE8 80 63 0C 00 */ lwz r3, 0xc00(r3)
/* 8004618C 00041DEC 2C 03 00 00 */ cmpwi r3, 0
/* 80046190 00041DF0 41 82 00 08 */ beq lbl_80046198
/* 80046194 00041DF4 48 1B C8 3D */ bl func_802029D0
lbl_80046198:
/* 80046198 00041DF8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004619C 00041DFC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800461A0 00041E00 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800461A4 00041E04 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800461A8 00041E08 83 81 00 10 */ lwz r28, 0x10(r1)
/* 800461AC 00041E0C 7C 08 03 A6 */ mtlr r0
/* 800461B0 00041E10 38 21 00 20 */ addi r1, r1, 0x20
/* 800461B4 00041E14 4E 80 00 20 */ blr
.global func_800461B8
func_800461B8:
/* 800461B8 00041E18 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800461BC 00041E1C 7C 08 02 A6 */ mflr r0
/* 800461C0 00041E20 90 01 00 24 */ stw r0, 0x24(r1)
/* 800461C4 00041E24 39 61 00 20 */ addi r11, r1, 0x20
/* 800461C8 00041E28 48 18 0F 61 */ bl _savegpr_27
/* 800461CC 00041E2C 7C 7B 1B 78 */ mr r27, r3
/* 800461D0 00041E30 4B FF 7F 8D */ bl func_8003E15C
/* 800461D4 00041E34 2C 03 00 00 */ cmpwi r3, 0
/* 800461D8 00041E38 7C 7D 1B 78 */ mr r29, r3
/* 800461DC 00041E3C 41 82 00 98 */ beq lbl_80046274
/* 800461E0 00041E40 7F 63 DB 78 */ mr r3, r27
/* 800461E4 00041E44 48 00 06 7D */ bl func_80046860
/* 800461E8 00041E48 80 7B 01 64 */ lwz r3, 0x164(r27)
/* 800461EC 00041E4C 2C 03 00 00 */ cmpwi r3, 0
/* 800461F0 00041E50 41 82 00 24 */ beq lbl_80046214
/* 800461F4 00041E54 41 82 00 18 */ beq lbl_8004620C
/* 800461F8 00041E58 81 83 01 00 */ lwz r12, 0x100(r3)
/* 800461FC 00041E5C 38 80 00 01 */ li r4, 1
/* 80046200 00041E60 81 8C 00 08 */ lwz r12, 8(r12)
/* 80046204 00041E64 7D 89 03 A6 */ mtctr r12
/* 80046208 00041E68 4E 80 04 21 */ bctrl
lbl_8004620C:
/* 8004620C 00041E6C 38 00 00 00 */ li r0, 0
/* 80046210 00041E70 90 1B 01 64 */ stw r0, 0x164(r27)
lbl_80046214:
/* 80046214 00041E74 7F 7E DB 78 */ mr r30, r27
/* 80046218 00041E78 3B 80 00 00 */ li r28, 0
/* 8004621C 00041E7C 3B E0 00 00 */ li r31, 0
lbl_80046220:
/* 80046220 00041E80 80 7E 01 5C */ lwz r3, 0x15c(r30)
/* 80046224 00041E84 2C 03 00 00 */ cmpwi r3, 0
/* 80046228 00041E88 41 82 00 20 */ beq lbl_80046248
/* 8004622C 00041E8C 41 82 00 18 */ beq lbl_80046244
/* 80046230 00041E90 81 83 01 00 */ lwz r12, 0x100(r3)
/* 80046234 00041E94 38 80 00 01 */ li r4, 1
/* 80046238 00041E98 81 8C 00 08 */ lwz r12, 8(r12)
/* 8004623C 00041E9C 7D 89 03 A6 */ mtctr r12
/* 80046240 00041EA0 4E 80 04 21 */ bctrl
lbl_80046244:
/* 80046244 00041EA4 93 FE 01 5C */ stw r31, 0x15c(r30)
lbl_80046248:
/* 80046248 00041EA8 3B 9C 00 01 */ addi r28, r28, 1
/* 8004624C 00041EAC 3B DE 00 04 */ addi r30, r30, 4
/* 80046250 00041EB0 2C 1C 00 02 */ cmpwi r28, 2
/* 80046254 00041EB4 41 80 FF CC */ blt lbl_80046220
/* 80046258 00041EB8 80 9B 00 08 */ lwz r4, 8(r27)
/* 8004625C 00041EBC 2C 04 00 00 */ cmpwi r4, 0
/* 80046260 00041EC0 41 82 00 14 */ beq lbl_80046274
/* 80046264 00041EC4 7F A3 EB 78 */ mr r3, r29
/* 80046268 00041EC8 4B FF 7F D1 */ bl func_8003E238
/* 8004626C 00041ECC 38 00 00 00 */ li r0, 0
/* 80046270 00041ED0 90 1B 00 08 */ stw r0, 8(r27)
lbl_80046274:
/* 80046274 00041ED4 39 61 00 20 */ addi r11, r1, 0x20
/* 80046278 00041ED8 48 18 0E FD */ bl _restgpr_27
/* 8004627C 00041EDC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80046280 00041EE0 7C 08 03 A6 */ mtlr r0
/* 80046284 00041EE4 38 21 00 20 */ addi r1, r1, 0x20
/* 80046288 00041EE8 4E 80 00 20 */ blr
.global func_8004628C
func_8004628C:
/* 8004628C 00041EEC 80 63 00 08 */ lwz r3, 8(r3)
/* 80046290 00041EF0 2C 03 00 00 */ cmpwi r3, 0
/* 80046294 00041EF4 40 82 00 0C */ bne lbl_800462A0
/* 80046298 00041EF8 38 60 00 00 */ li r3, 0
/* 8004629C 00041EFC 4E 80 00 20 */ blr
lbl_800462A0:
/* 800462A0 00041F00 80 C3 0C 00 */ lwz r6, 0xc00(r3)
/* 800462A4 00041F04 2C 06 00 00 */ cmpwi r6, 0
/* 800462A8 00041F08 40 82 00 0C */ bne lbl_800462B4
/* 800462AC 00041F0C 38 60 00 00 */ li r3, 0
/* 800462B0 00041F10 4E 80 00 20 */ blr
lbl_800462B4:
/* 800462B4 00041F14 80 66 00 00 */ lwz r3, 0(r6)
/* 800462B8 00041F18 39 60 00 00 */ li r11, 0
/* 800462BC 00041F1C A0 E3 00 18 */ lhz r7, 0x18(r3)
/* 800462C0 00041F20 48 00 00 E0 */ b lbl_800463A0
lbl_800462C4:
/* 800462C4 00041F24 81 06 00 04 */ lwz r8, 4(r6)
/* 800462C8 00041F28 2C 08 00 00 */ cmpwi r8, 0
/* 800462CC 00041F2C 40 82 00 0C */ bne lbl_800462D8
/* 800462D0 00041F30 38 A0 00 00 */ li r5, 0
/* 800462D4 00041F34 48 00 00 28 */ b lbl_800462FC
lbl_800462D8:
/* 800462D8 00041F38 80 66 00 00 */ lwz r3, 0(r6)
/* 800462DC 00041F3C 55 65 04 3E */ clrlwi r5, r11, 0x10
/* 800462E0 00041F40 A0 03 00 18 */ lhz r0, 0x18(r3)
/* 800462E4 00041F44 7C 05 00 40 */ cmplw r5, r0
/* 800462E8 00041F48 41 80 00 0C */ blt lbl_800462F4
/* 800462EC 00041F4C 38 A0 00 00 */ li r5, 0
/* 800462F0 00041F50 48 00 00 0C */ b lbl_800462FC
lbl_800462F4:
/* 800462F4 00041F54 55 60 13 BA */ rlwinm r0, r11, 2, 0xe, 0x1d
/* 800462F8 00041F58 7C A8 00 2E */ lwzx r5, r8, r0
lbl_800462FC:
/* 800462FC 00041F5C 2C 05 00 00 */ cmpwi r5, 0
/* 80046300 00041F60 40 82 00 0C */ bne lbl_8004630C
/* 80046304 00041F64 38 60 00 00 */ li r3, 0
/* 80046308 00041F68 4E 80 00 20 */ blr
lbl_8004630C:
/* 8004630C 00041F6C A1 05 00 EC */ lhz r8, 0xec(r5)
/* 80046310 00041F70 39 80 00 00 */ li r12, 0
/* 80046314 00041F74 48 00 00 7C */ b lbl_80046390
lbl_80046318:
/* 80046318 00041F78 81 25 00 28 */ lwz r9, 0x28(r5)
/* 8004631C 00041F7C 2C 09 00 00 */ cmpwi r9, 0
/* 80046320 00041F80 40 82 00 0C */ bne lbl_8004632C
/* 80046324 00041F84 38 00 00 00 */ li r0, 0
/* 80046328 00041F88 48 00 00 54 */ b lbl_8004637C
lbl_8004632C:
/* 8004632C 00041F8C A0 05 00 EC */ lhz r0, 0xec(r5)
/* 80046330 00041F90 55 83 04 3E */ clrlwi r3, r12, 0x10
/* 80046334 00041F94 7C 03 00 40 */ cmplw r3, r0
/* 80046338 00041F98 41 80 00 0C */ blt lbl_80046344
/* 8004633C 00041F9C 38 00 00 00 */ li r0, 0
/* 80046340 00041FA0 48 00 00 3C */ b lbl_8004637C
lbl_80046344:
/* 80046344 00041FA4 81 45 00 08 */ lwz r10, 8(r5)
/* 80046348 00041FA8 55 80 0B FC */ rlwinm r0, r12, 1, 0xf, 0x1e
/* 8004634C 00041FAC 7C 69 02 2E */ lhzx r3, r9, r0
/* 80046350 00041FB0 2C 0A 00 00 */ cmpwi r10, 0
/* 80046354 00041FB4 40 82 00 0C */ bne lbl_80046360
/* 80046358 00041FB8 38 00 00 00 */ li r0, 0
/* 8004635C 00041FBC 48 00 00 20 */ b lbl_8004637C
lbl_80046360:
/* 80046360 00041FC0 A0 05 00 DE */ lhz r0, 0xde(r5)
/* 80046364 00041FC4 7C 03 00 40 */ cmplw r3, r0
/* 80046368 00041FC8 41 80 00 0C */ blt lbl_80046374
/* 8004636C 00041FCC 38 00 00 00 */ li r0, 0
/* 80046370 00041FD0 48 00 00 0C */ b lbl_8004637C
lbl_80046374:
/* 80046374 00041FD4 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d
/* 80046378 00041FD8 7C 0A 00 2E */ lwzx r0, r10, r0
lbl_8004637C:
/* 8004637C 00041FDC 7C 04 00 40 */ cmplw r4, r0
/* 80046380 00041FE0 40 82 00 0C */ bne lbl_8004638C
/* 80046384 00041FE4 38 60 00 01 */ li r3, 1
/* 80046388 00041FE8 4E 80 00 20 */ blr
lbl_8004638C:
/* 8004638C 00041FEC 39 8C 00 01 */ addi r12, r12, 1
lbl_80046390:
/* 80046390 00041FF0 55 80 04 3E */ clrlwi r0, r12, 0x10
/* 80046394 00041FF4 7C 00 40 40 */ cmplw r0, r8
/* 80046398 00041FF8 41 80 FF 80 */ blt lbl_80046318
/* 8004639C 00041FFC 39 6B 00 01 */ addi r11, r11, 1
lbl_800463A0:
/* 800463A0 00042000 55 60 04 3E */ clrlwi r0, r11, 0x10
/* 800463A4 00042004 7C 00 38 40 */ cmplw r0, r7
/* 800463A8 00042008 41 80 FF 1C */ blt lbl_800462C4
/* 800463AC 0004200C 38 60 00 00 */ li r3, 0
/* 800463B0 00042010 4E 80 00 20 */ blr
.global func_800463B4
func_800463B4:
/* 800463B4 00042014 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 800463B8 00042018 7C 08 02 A6 */ mflr r0
/* 800463BC 0004201C 90 01 00 14 */ stw r0, 0x14(r1)
/* 800463C0 00042020 93 E1 00 0C */ stw r31, 0xc(r1)
/* 800463C4 00042024 93 C1 00 08 */ stw r30, 8(r1)
/* 800463C8 00042028 7C 7E 1B 78 */ mr r30, r3
/* 800463CC 0004202C 80 03 01 64 */ lwz r0, 0x164(r3)
/* 800463D0 00042030 2C 00 00 00 */ cmpwi r0, 0
/* 800463D4 00042034 40 82 00 6C */ bne lbl_80046440
/* 800463D8 00042038 3C 80 20 FE */ lis r4, 0x20FE0E00@ha
/* 800463DC 0004203C 38 60 00 0C */ li r3, 0xc
/* 800463E0 00042040 38 84 0E 00 */ addi r4, r4, 0x20FE0E00@l
/* 800463E4 00042044 48 19 50 D9 */ bl func_801DB4BC
/* 800463E8 00042048 2C 03 00 00 */ cmpwi r3, 0
/* 800463EC 0004204C 7C 7F 1B 78 */ mr r31, r3
/* 800463F0 00042050 41 82 00 50 */ beq lbl_80046440
/* 800463F4 00042054 48 19 47 35 */ bl func_801DAB28
/* 800463F8 00042058 2C 03 00 00 */ cmpwi r3, 0
/* 800463FC 0004205C 41 82 00 14 */ beq lbl_80046410
/* 80046400 00042060 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80046404 00042064 38 80 01 40 */ li r4, 0x140
/* 80046408 00042068 48 19 48 8D */ bl func_801DAC94
/* 8004640C 0004206C 48 00 00 08 */ b lbl_80046414
lbl_80046410:
/* 80046410 00042070 38 60 00 00 */ li r3, 0
lbl_80046414:
/* 80046414 00042074 2C 03 00 00 */ cmpwi r3, 0
/* 80046418 00042078 41 82 00 0C */ beq lbl_80046424
/* 8004641C 0004207C 7F E4 FB 78 */ mr r4, r31
/* 80046420 00042080 48 1B 34 CD */ bl func_801F98EC
lbl_80046424:
/* 80046424 00042084 90 7E 01 64 */ stw r3, 0x164(r30)
/* 80046428 00042088 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004642C 0004208C 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80046430 00042090 60 00 00 01 */ ori r0, r0, 1
/* 80046434 00042094 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046438 00042098 90 03 01 04 */ stw r0, 0x104(r3)
/* 8004643C 0004209C D0 03 01 08 */ stfs f0, 0x108(r3)
lbl_80046440:
/* 80046440 000420A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80046444 000420A4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80046448 000420A8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8004644C 000420AC 7C 08 03 A6 */ mtlr r0
/* 80046450 000420B0 38 21 00 10 */ addi r1, r1, 0x10
/* 80046454 000420B4 4E 80 00 20 */ blr
.global func_80046458
func_80046458:
/* 80046458 000420B8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004645C 000420BC 7C 08 02 A6 */ mflr r0
/* 80046460 000420C0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80046464 000420C4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80046468 000420C8 7C 7F 1B 78 */ mr r31, r3
/* 8004646C 000420CC 80 03 01 64 */ lwz r0, 0x164(r3)
/* 80046470 000420D0 2C 00 00 00 */ cmpwi r0, 0
/* 80046474 000420D4 41 82 00 28 */ beq lbl_8004649C
/* 80046478 000420D8 41 82 00 1C */ beq lbl_80046494
/* 8004647C 000420DC 7C 03 03 78 */ mr r3, r0
/* 80046480 000420E0 38 80 00 01 */ li r4, 1
/* 80046484 000420E4 81 83 01 00 */ lwz r12, 0x100(r3)
/* 80046488 000420E8 81 8C 00 08 */ lwz r12, 8(r12)
/* 8004648C 000420EC 7D 89 03 A6 */ mtctr r12
/* 80046490 000420F0 4E 80 04 21 */ bctrl
lbl_80046494:
/* 80046494 000420F4 38 00 00 00 */ li r0, 0
/* 80046498 000420F8 90 1F 01 64 */ stw r0, 0x164(r31)
lbl_8004649C:
/* 8004649C 000420FC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800464A0 00042100 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800464A4 00042104 7C 08 03 A6 */ mtlr r0
/* 800464A8 00042108 38 21 00 10 */ addi r1, r1, 0x10
/* 800464AC 0004210C 4E 80 00 20 */ blr
.global func_800464B0
func_800464B0:
/* 800464B0 00042110 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 800464B4 00042114 7C 08 02 A6 */ mflr r0
/* 800464B8 00042118 90 01 00 74 */ stw r0, 0x74(r1)
/* 800464BC 0004211C 39 61 00 70 */ addi r11, r1, 0x70
/* 800464C0 00042120 48 18 0C 69 */ bl _savegpr_27
/* 800464C4 00042124 2C 05 00 00 */ cmpwi r5, 0
/* 800464C8 00042128 7C 7B 1B 78 */ mr r27, r3
/* 800464CC 0004212C 7C BC 2B 78 */ mr r28, r5
/* 800464D0 00042130 41 80 03 78 */ blt lbl_80046848
/* 800464D4 00042134 2C 05 00 03 */ cmpwi r5, 3
/* 800464D8 00042138 40 81 00 08 */ ble lbl_800464E0
/* 800464DC 0004213C 48 00 03 6C */ b lbl_80046848
lbl_800464E0:
/* 800464E0 00042140 2C 04 00 01 */ cmpwi r4, 1
/* 800464E4 00042144 41 82 00 38 */ beq lbl_8004651C
/* 800464E8 00042148 40 80 00 10 */ bge lbl_800464F8
/* 800464EC 0004214C 2C 04 00 00 */ cmpwi r4, 0
/* 800464F0 00042150 40 80 00 14 */ bge lbl_80046504
/* 800464F4 00042154 48 00 03 54 */ b lbl_80046848
lbl_800464F8:
/* 800464F8 00042158 2C 04 00 03 */ cmpwi r4, 3
/* 800464FC 0004215C 40 80 03 4C */ bge lbl_80046848
/* 80046500 00042160 48 00 00 34 */ b lbl_80046534
lbl_80046504:
/* 80046504 00042164 54 A0 10 3A */ slwi r0, r5, 2
/* 80046508 00042168 3C 80 1D 52 */ lis r4, 0x1D520A00@ha
/* 8004650C 0004216C 7C 63 02 14 */ add r3, r3, r0
/* 80046510 00042170 3B E4 0A 00 */ addi r31, r4, 0x1D520A00@l
/* 80046514 00042174 3B C3 01 2C */ addi r30, r3, 0x12c
/* 80046518 00042178 48 00 00 38 */ b lbl_80046550
lbl_8004651C:
/* 8004651C 0004217C 54 A0 10 3A */ slwi r0, r5, 2
/* 80046520 00042180 3C 80 1D 51 */ lis r4, 0x1D510A00@ha
/* 80046524 00042184 7C 63 02 14 */ add r3, r3, r0
/* 80046528 00042188 3B E4 0A 00 */ addi r31, r4, 0x1D510A00@l
/* 8004652C 0004218C 3B C3 01 3C */ addi r30, r3, 0x13c
/* 80046530 00042190 48 00 00 20 */ b lbl_80046550
lbl_80046534:
/* 80046534 00042194 54 A0 10 3A */ slwi r0, r5, 2
/* 80046538 00042198 3C 80 27 77 */ lis r4, 0x27770A00@ha
/* 8004653C 0004219C 7C 63 02 14 */ add r3, r3, r0
/* 80046540 000421A0 3B E4 0A 00 */ addi r31, r4, 0x27770A00@l
/* 80046544 000421A4 3B C3 01 4C */ addi r30, r3, 0x14c
/* 80046548 000421A8 48 00 00 08 */ b lbl_80046550
/* 8004654C 000421AC 48 00 02 FC */ b lbl_80046848
lbl_80046550:
/* 80046550 000421B0 7F 63 DB 78 */ mr r3, r27
/* 80046554 000421B4 7F 84 E3 78 */ mr r4, r28
/* 80046558 000421B8 38 A0 00 00 */ li r5, 0
/* 8004655C 000421BC 4B FF F5 A5 */ bl func_80045B00
/* 80046560 000421C0 57 E0 00 5E */ rlwinm r0, r31, 0, 1, 0xf
/* 80046564 000421C4 7C 7F 1B 78 */ mr r31, r3
/* 80046568 000421C8 60 04 0E 00 */ ori r4, r0, 0xe00
/* 8004656C 000421CC 38 60 00 0C */ li r3, 0xc
/* 80046570 000421D0 48 19 4F 4D */ bl func_801DB4BC
/* 80046574 000421D4 2C 03 00 00 */ cmpwi r3, 0
/* 80046578 000421D8 7C 7D 1B 78 */ mr r29, r3
/* 8004657C 000421DC 41 82 02 CC */ beq lbl_80046848
/* 80046580 000421E0 80 7E 00 00 */ lwz r3, 0(r30)
/* 80046584 000421E4 2C 03 00 00 */ cmpwi r3, 0
/* 80046588 000421E8 41 82 00 1C */ beq lbl_800465A4
/* 8004658C 000421EC 41 82 00 18 */ beq lbl_800465A4
/* 80046590 000421F0 81 83 01 00 */ lwz r12, 0x100(r3)
/* 80046594 000421F4 38 80 00 01 */ li r4, 1
/* 80046598 000421F8 81 8C 00 08 */ lwz r12, 8(r12)
/* 8004659C 000421FC 7D 89 03 A6 */ mtctr r12
/* 800465A0 00042200 4E 80 04 21 */ bctrl
lbl_800465A4:
/* 800465A4 00042204 48 19 45 85 */ bl func_801DAB28
/* 800465A8 00042208 2C 03 00 00 */ cmpwi r3, 0
/* 800465AC 0004220C 41 82 00 14 */ beq lbl_800465C0
/* 800465B0 00042210 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800465B4 00042214 38 80 01 40 */ li r4, 0x140
/* 800465B8 00042218 48 19 46 DD */ bl func_801DAC94
/* 800465BC 0004221C 48 00 00 08 */ b lbl_800465C4
lbl_800465C0:
/* 800465C0 00042220 38 60 00 00 */ li r3, 0
lbl_800465C4:
/* 800465C4 00042224 2C 03 00 00 */ cmpwi r3, 0
/* 800465C8 00042228 41 82 00 0C */ beq lbl_800465D4
/* 800465CC 0004222C 7F A4 EB 78 */ mr r4, r29
/* 800465D0 00042230 48 1B 33 1D */ bl func_801F98EC
lbl_800465D4:
/* 800465D4 00042234 90 7E 00 00 */ stw r3, 0(r30)
/* 800465D8 00042238 7F 63 DB 78 */ mr r3, r27
/* 800465DC 0004223C 7F 84 E3 78 */ mr r4, r28
/* 800465E0 00042240 38 A1 00 40 */ addi r5, r1, 0x40
/* 800465E4 00042244 38 C1 00 08 */ addi r6, r1, 8
/* 800465E8 00042248 38 E0 00 01 */ li r7, 1
/* 800465EC 0004224C 4B FF F6 2D */ bl func_80045C18
/* 800465F0 00042250 80 7E 00 00 */ lwz r3, 0(r30)
/* 800465F4 00042254 38 80 00 01 */ li r4, 1
/* 800465F8 00042258 C0 01 00 40 */ lfs f0, 0x40(r1)
/* 800465FC 0004225C D0 03 00 20 */ stfs f0, 0x20(r3)
/* 80046600 00042260 C0 01 00 44 */ lfs f0, 0x44(r1)
/* 80046604 00042264 D0 03 00 24 */ stfs f0, 0x24(r3)
/* 80046608 00042268 C0 01 00 48 */ lfs f0, 0x48(r1)
/* 8004660C 0004226C D0 03 00 28 */ stfs f0, 0x28(r3)
/* 80046610 00042270 48 1A C0 A9 */ bl func_801F26B8
/* 80046614 00042274 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80046618 00042278 38 61 00 30 */ addi r3, r1, 0x30
/* 8004661C 0004227C C0 21 00 08 */ lfs f1, 8(r1)
/* 80046620 00042280 38 81 00 24 */ addi r4, r1, 0x24
/* 80046624 00042284 D0 01 00 24 */ stfs f0, 0x24(r1)
/* 80046628 00042288 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 8004662C 0004228C D0 01 00 2C */ stfs f0, 0x2c(r1)
/* 80046630 00042290 48 1D D0 91 */ bl func_802236C0
/* 80046634 00042294 80 7E 00 00 */ lwz r3, 0(r30)
/* 80046638 00042298 38 80 00 01 */ li r4, 1
/* 8004663C 0004229C C0 01 00 30 */ lfs f0, 0x30(r1)
/* 80046640 000422A0 D0 03 00 2C */ stfs f0, 0x2c(r3)
/* 80046644 000422A4 C0 01 00 34 */ lfs f0, 0x34(r1)
/* 80046648 000422A8 D0 03 00 30 */ stfs f0, 0x30(r3)
/* 8004664C 000422AC C0 01 00 38 */ lfs f0, 0x38(r1)
/* 80046650 000422B0 D0 03 00 34 */ stfs f0, 0x34(r3)
/* 80046654 000422B4 C0 01 00 3C */ lfs f0, 0x3c(r1)
/* 80046658 000422B8 D0 03 00 38 */ stfs f0, 0x38(r3)
/* 8004665C 000422BC A0 03 00 10 */ lhz r0, 0x10(r3)
/* 80046660 000422C0 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80046664 000422C4 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80046668 000422C8 48 1A C0 51 */ bl func_801F26B8
/* 8004666C 000422CC 2C 1F 00 00 */ cmpwi r31, 0
/* 80046670 000422D0 41 82 00 DC */ beq lbl_8004674C
/* 80046674 000422D4 7F E3 FB 78 */ mr r3, r31
/* 80046678 000422D8 4B FF 30 5D */ bl func_800396D4
/* 8004667C 000422DC C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046680 000422E0 48 00 7E 1D */ bl func_8004E49C
/* 80046684 000422E4 FC 00 08 18 */ frsp f0, f1
/* 80046688 000422E8 80 7E 00 00 */ lwz r3, 0(r30)
/* 8004668C 000422EC C0 42 83 B4 */ lfs f2, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046690 000422F0 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 80046694 000422F4 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 80046698 000422F8 D0 03 00 48 */ stfs f0, 0x48(r3)
/* 8004669C 000422FC D0 03 00 4C */ stfs f0, 0x4c(r3)
/* 800466A0 00042300 D0 21 00 1C */ stfs f1, 0x1c(r1)
/* 800466A4 00042304 D0 21 00 20 */ stfs f1, 0x20(r1)
/* 800466A8 00042308 D0 03 00 50 */ stfs f0, 0x50(r3)
/* 800466AC 0004230C 40 80 00 2C */ bge lbl_800466D8
/* 800466B0 00042310 C0 23 00 48 */ lfs f1, 0x48(r3)
/* 800466B4 00042314 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800466B8 00042318 FC 01 18 40 */ fcmpo cr0, f1, f3
/* 800466BC 0004231C 40 81 00 1C */ ble lbl_800466D8
/* 800466C0 00042320 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800466C4 00042324 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800466C8 00042328 40 80 00 08 */ bge lbl_800466D0
/* 800466CC 0004232C 48 00 00 08 */ b lbl_800466D4
lbl_800466D0:
/* 800466D0 00042330 FC 60 10 90 */ fmr f3, f2
lbl_800466D4:
/* 800466D4 00042334 D0 63 00 48 */ stfs f3, 0x48(r3)
lbl_800466D8:
/* 800466D8 00042338 C0 43 00 4C */ lfs f2, 0x4c(r3)
/* 800466DC 0004233C C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 800466E0 00042340 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 800466E4 00042344 40 80 00 28 */ bge lbl_8004670C
/* 800466E8 00042348 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800466EC 0004234C FC 02 18 40 */ fcmpo cr0, f2, f3
/* 800466F0 00042350 40 81 00 1C */ ble lbl_8004670C
/* 800466F4 00042354 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800466F8 00042358 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 800466FC 0004235C 40 80 00 08 */ bge lbl_80046704
/* 80046700 00042360 48 00 00 08 */ b lbl_80046708
lbl_80046704:
/* 80046704 00042364 FC 60 08 90 */ fmr f3, f1
lbl_80046708:
/* 80046708 00042368 D0 63 00 4C */ stfs f3, 0x4c(r3)
lbl_8004670C:
/* 8004670C 0004236C C0 43 00 50 */ lfs f2, 0x50(r3)
/* 80046710 00042370 C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046714 00042374 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 80046718 00042378 40 80 00 28 */ bge lbl_80046740
/* 8004671C 0004237C C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046720 00042380 FC 02 18 40 */ fcmpo cr0, f2, f3
/* 80046724 00042384 40 81 00 1C */ ble lbl_80046740
/* 80046728 00042388 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004672C 0004238C FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80046730 00042390 40 80 00 08 */ bge lbl_80046738
/* 80046734 00042394 48 00 00 08 */ b lbl_8004673C
lbl_80046738:
/* 80046738 00042398 FC 60 08 90 */ fmr f3, f1
lbl_8004673C:
/* 8004673C 0004239C D0 63 00 50 */ stfs f3, 0x50(r3)
lbl_80046740:
/* 80046740 000423A0 38 80 00 01 */ li r4, 1
/* 80046744 000423A4 48 1A BF 75 */ bl func_801F26B8
/* 80046748 000423A8 48 00 00 C8 */ b lbl_80046810
lbl_8004674C:
/* 8004674C 000423AC C0 02 83 8C */ lfs f0, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046750 000423B0 80 7E 00 00 */ lwz r3, 0(r30)
/* 80046754 000423B4 C0 42 83 B4 */ lfs f2, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046758 000423B8 D0 03 00 48 */ stfs f0, 0x48(r3)
/* 8004675C 000423BC FC 00 10 40 */ fcmpo cr0, f0, f2
/* 80046760 000423C0 D0 03 00 4C */ stfs f0, 0x4c(r3)
/* 80046764 000423C4 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80046768 000423C8 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 8004676C 000423CC D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80046770 000423D0 D0 03 00 50 */ stfs f0, 0x50(r3)
/* 80046774 000423D4 40 80 00 2C */ bge lbl_800467A0
/* 80046778 000423D8 C0 23 00 48 */ lfs f1, 0x48(r3)
/* 8004677C 000423DC C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046780 000423E0 FC 01 18 40 */ fcmpo cr0, f1, f3
/* 80046784 000423E4 40 81 00 1C */ ble lbl_800467A0
/* 80046788 000423E8 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004678C 000423EC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80046790 000423F0 40 80 00 08 */ bge lbl_80046798
/* 80046794 000423F4 48 00 00 08 */ b lbl_8004679C
lbl_80046798:
/* 80046798 000423F8 FC 60 10 90 */ fmr f3, f2
lbl_8004679C:
/* 8004679C 000423FC D0 63 00 48 */ stfs f3, 0x48(r3)
lbl_800467A0:
/* 800467A0 00042400 C0 43 00 4C */ lfs f2, 0x4c(r3)
/* 800467A4 00042404 C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 800467A8 00042408 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 800467AC 0004240C 40 80 00 28 */ bge lbl_800467D4
/* 800467B0 00042410 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800467B4 00042414 FC 02 18 40 */ fcmpo cr0, f2, f3
/* 800467B8 00042418 40 81 00 1C */ ble lbl_800467D4
/* 800467BC 0004241C C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800467C0 00042420 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 800467C4 00042424 40 80 00 08 */ bge lbl_800467CC
/* 800467C8 00042428 48 00 00 08 */ b lbl_800467D0
lbl_800467CC:
/* 800467CC 0004242C FC 60 08 90 */ fmr f3, f1
lbl_800467D0:
/* 800467D0 00042430 D0 63 00 4C */ stfs f3, 0x4c(r3)
lbl_800467D4:
/* 800467D4 00042434 C0 43 00 50 */ lfs f2, 0x50(r3)
/* 800467D8 00042438 C0 22 83 B4 */ lfs f1, lbl_806409B4-_SDA2_BASE_(r2)
/* 800467DC 0004243C FC 02 08 40 */ fcmpo cr0, f2, f1
/* 800467E0 00042440 40 80 00 28 */ bge lbl_80046808
/* 800467E4 00042444 C0 62 83 B8 */ lfs f3, lbl_806409B8-_SDA2_BASE_(r2)
/* 800467E8 00042448 FC 02 18 40 */ fcmpo cr0, f2, f3
/* 800467EC 0004244C 40 81 00 1C */ ble lbl_80046808
/* 800467F0 00042450 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800467F4 00042454 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 800467F8 00042458 40 80 00 08 */ bge lbl_80046800
/* 800467FC 0004245C 48 00 00 08 */ b lbl_80046804
lbl_80046800:
/* 80046800 00042460 FC 60 08 90 */ fmr f3, f1
lbl_80046804:
/* 80046804 00042464 D0 63 00 50 */ stfs f3, 0x50(r3)
lbl_80046808:
/* 80046808 00042468 38 80 00 01 */ li r4, 1
/* 8004680C 0004246C 48 1A BE AD */ bl func_801F26B8
lbl_80046810:
/* 80046810 00042470 80 7E 00 00 */ lwz r3, 0(r30)
/* 80046814 00042474 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80046818 00042478 80 03 01 04 */ lwz r0, 0x104(r3)
/* 8004681C 0004247C 60 00 00 01 */ ori r0, r0, 1
/* 80046820 00042480 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046824 00042484 90 03 01 04 */ stw r0, 0x104(r3)
/* 80046828 00042488 D0 03 01 08 */ stfs f0, 0x108(r3)
/* 8004682C 0004248C 80 7E 00 00 */ lwz r3, 0(r30)
/* 80046830 00042490 80 63 01 38 */ lwz r3, 0x138(r3)
/* 80046834 00042494 2C 03 00 00 */ cmpwi r3, 0
/* 80046838 00042498 41 82 00 10 */ beq lbl_80046848
/* 8004683C 0004249C A0 03 01 48 */ lhz r0, 0x148(r3)
/* 80046840 000424A0 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b
/* 80046844 000424A4 B0 03 01 48 */ sth r0, 0x148(r3)
lbl_80046848:
/* 80046848 000424A8 39 61 00 70 */ addi r11, r1, 0x70
/* 8004684C 000424AC 48 18 09 29 */ bl _restgpr_27
/* 80046850 000424B0 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80046854 000424B4 7C 08 03 A6 */ mtlr r0
/* 80046858 000424B8 38 21 00 70 */ addi r1, r1, 0x70
/* 8004685C 000424BC 4E 80 00 20 */ blr
.global func_80046860
func_80046860:
/* 80046860 000424C0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80046864 000424C4 7C 08 02 A6 */ mflr r0
/* 80046868 000424C8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004686C 000424CC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80046870 000424D0 3B E0 00 00 */ li r31, 0
/* 80046874 000424D4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80046878 000424D8 7C 7E 1B 78 */ mr r30, r3
/* 8004687C 000424DC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80046880 000424E0 3B A0 00 00 */ li r29, 0
lbl_80046884:
/* 80046884 000424E4 80 7E 01 2C */ lwz r3, 0x12c(r30)
/* 80046888 000424E8 2C 03 00 00 */ cmpwi r3, 0
/* 8004688C 000424EC 41 82 00 20 */ beq lbl_800468AC
/* 80046890 000424F0 41 82 00 18 */ beq lbl_800468A8
/* 80046894 000424F4 81 83 01 00 */ lwz r12, 0x100(r3)
/* 80046898 000424F8 38 80 00 01 */ li r4, 1
/* 8004689C 000424FC 81 8C 00 08 */ lwz r12, 8(r12)
/* 800468A0 00042500 7D 89 03 A6 */ mtctr r12
/* 800468A4 00042504 4E 80 04 21 */ bctrl
lbl_800468A8:
/* 800468A8 00042508 93 FE 01 2C */ stw r31, 0x12c(r30)
lbl_800468AC:
/* 800468AC 0004250C 80 7E 01 3C */ lwz r3, 0x13c(r30)
/* 800468B0 00042510 2C 03 00 00 */ cmpwi r3, 0
/* 800468B4 00042514 41 82 00 20 */ beq lbl_800468D4
/* 800468B8 00042518 41 82 00 18 */ beq lbl_800468D0
/* 800468BC 0004251C 81 83 01 00 */ lwz r12, 0x100(r3)
/* 800468C0 00042520 38 80 00 01 */ li r4, 1
/* 800468C4 00042524 81 8C 00 08 */ lwz r12, 8(r12)
/* 800468C8 00042528 7D 89 03 A6 */ mtctr r12
/* 800468CC 0004252C 4E 80 04 21 */ bctrl
lbl_800468D0:
/* 800468D0 00042530 93 FE 01 3C */ stw r31, 0x13c(r30)
lbl_800468D4:
/* 800468D4 00042534 80 7E 01 4C */ lwz r3, 0x14c(r30)
/* 800468D8 00042538 2C 03 00 00 */ cmpwi r3, 0
/* 800468DC 0004253C 41 82 00 20 */ beq lbl_800468FC
/* 800468E0 00042540 41 82 00 18 */ beq lbl_800468F8
/* 800468E4 00042544 81 83 01 00 */ lwz r12, 0x100(r3)
/* 800468E8 00042548 38 80 00 01 */ li r4, 1
/* 800468EC 0004254C 81 8C 00 08 */ lwz r12, 8(r12)
/* 800468F0 00042550 7D 89 03 A6 */ mtctr r12
/* 800468F4 00042554 4E 80 04 21 */ bctrl
lbl_800468F8:
/* 800468F8 00042558 93 FE 01 4C */ stw r31, 0x14c(r30)
lbl_800468FC:
/* 800468FC 0004255C 3B BD 00 01 */ addi r29, r29, 1
/* 80046900 00042560 3B DE 00 04 */ addi r30, r30, 4
/* 80046904 00042564 2C 1D 00 04 */ cmpwi r29, 4
/* 80046908 00042568 41 80 FF 7C */ blt lbl_80046884
/* 8004690C 0004256C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80046910 00042570 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80046914 00042574 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80046918 00042578 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8004691C 0004257C 7C 08 03 A6 */ mtlr r0
/* 80046920 00042580 38 21 00 20 */ addi r1, r1, 0x20
/* 80046924 00042584 4E 80 00 20 */ blr
.global func_80046928
func_80046928:
/* 80046928 00042588 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004692C 0004258C 7C 08 02 A6 */ mflr r0
/* 80046930 00042590 2C 05 00 00 */ cmpwi r5, 0
/* 80046934 00042594 90 01 00 14 */ stw r0, 0x14(r1)
/* 80046938 00042598 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004693C 0004259C 41 80 00 94 */ blt lbl_800469D0
/* 80046940 000425A0 2C 05 00 03 */ cmpwi r5, 3
/* 80046944 000425A4 40 81 00 08 */ ble lbl_8004694C
/* 80046948 000425A8 48 00 00 88 */ b lbl_800469D0
lbl_8004694C:
/* 8004694C 000425AC 2C 04 00 01 */ cmpwi r4, 1
/* 80046950 000425B0 41 82 00 30 */ beq lbl_80046980
/* 80046954 000425B4 40 80 00 10 */ bge lbl_80046964
/* 80046958 000425B8 2C 04 00 00 */ cmpwi r4, 0
/* 8004695C 000425BC 40 80 00 14 */ bge lbl_80046970
/* 80046960 000425C0 48 00 00 70 */ b lbl_800469D0
lbl_80046964:
/* 80046964 000425C4 2C 04 00 03 */ cmpwi r4, 3
/* 80046968 000425C8 40 80 00 68 */ bge lbl_800469D0
/* 8004696C 000425CC 48 00 00 24 */ b lbl_80046990
lbl_80046970:
/* 80046970 000425D0 54 A0 10 3A */ slwi r0, r5, 2
/* 80046974 000425D4 7C 63 02 14 */ add r3, r3, r0
/* 80046978 000425D8 3B E3 01 2C */ addi r31, r3, 0x12c
/* 8004697C 000425DC 48 00 00 28 */ b lbl_800469A4
lbl_80046980:
/* 80046980 000425E0 54 A0 10 3A */ slwi r0, r5, 2
/* 80046984 000425E4 7C 63 02 14 */ add r3, r3, r0
/* 80046988 000425E8 3B E3 01 3C */ addi r31, r3, 0x13c
/* 8004698C 000425EC 48 00 00 18 */ b lbl_800469A4
lbl_80046990:
/* 80046990 000425F0 54 A0 10 3A */ slwi r0, r5, 2
/* 80046994 000425F4 7C 63 02 14 */ add r3, r3, r0
/* 80046998 000425F8 3B E3 01 4C */ addi r31, r3, 0x14c
/* 8004699C 000425FC 48 00 00 08 */ b lbl_800469A4
/* 800469A0 00042600 48 00 00 30 */ b lbl_800469D0
lbl_800469A4:
/* 800469A4 00042604 80 7F 00 00 */ lwz r3, 0(r31)
/* 800469A8 00042608 2C 03 00 00 */ cmpwi r3, 0
/* 800469AC 0004260C 41 82 00 24 */ beq lbl_800469D0
/* 800469B0 00042610 41 82 00 18 */ beq lbl_800469C8
/* 800469B4 00042614 81 83 01 00 */ lwz r12, 0x100(r3)
/* 800469B8 00042618 38 80 00 01 */ li r4, 1
/* 800469BC 0004261C 81 8C 00 08 */ lwz r12, 8(r12)
/* 800469C0 00042620 7D 89 03 A6 */ mtctr r12
/* 800469C4 00042624 4E 80 04 21 */ bctrl
lbl_800469C8:
/* 800469C8 00042628 38 00 00 00 */ li r0, 0
/* 800469CC 0004262C 90 1F 00 00 */ stw r0, 0(r31)
lbl_800469D0:
/* 800469D0 00042630 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800469D4 00042634 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800469D8 00042638 7C 08 03 A6 */ mtlr r0
/* 800469DC 0004263C 38 21 00 10 */ addi r1, r1, 0x10
/* 800469E0 00042640 4E 80 00 20 */ blr
.global func_800469E4
func_800469E4:
/* 800469E4 00042644 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 800469E8 00042648 7C 08 02 A6 */ mflr r0
/* 800469EC 0004264C 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 800469F0 00042650 DB E1 00 90 */ stfd f31, 0x90(r1)
/* 800469F4 00042654 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0
/* 800469F8 00042658 DB C1 00 80 */ stfd f30, 0x80(r1)
/* 800469FC 0004265C F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0
/* 80046A00 00042660 DB A1 00 70 */ stfd f29, 0x70(r1)
/* 80046A04 00042664 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0
/* 80046A08 00042668 DB 81 00 60 */ stfd f28, 0x60(r1)
/* 80046A0C 0004266C F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0
/* 80046A10 00042670 39 61 00 60 */ addi r11, r1, 0x60
/* 80046A14 00042674 48 18 07 11 */ bl _savegpr_26
/* 80046A18 00042678 C3 E2 83 B8 */ lfs f31, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046A1C 0004267C 7C 7C 1B 78 */ mr r28, r3
/* 80046A20 00042680 C3 C2 83 B4 */ lfs f30, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046A24 00042684 3B C0 00 00 */ li r30, 0
/* 80046A28 00042688 C3 A2 83 A8 */ lfs f29, lbl_806409A8-_SDA2_BASE_(r2)
/* 80046A2C 0004268C C3 82 83 88 */ lfs f28, lbl_80640988-_SDA2_BASE_(r2)
lbl_80046A30:
/* 80046A30 00042690 57 DF 06 3E */ clrlwi r31, r30, 0x18
/* 80046A34 00042694 3B A0 00 00 */ li r29, 0
lbl_80046A38:
/* 80046A38 00042698 2C 1F 00 00 */ cmpwi r31, 0
/* 80046A3C 0004269C 40 82 00 14 */ bne lbl_80046A50
/* 80046A40 000426A0 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
/* 80046A44 000426A4 7C 7C 02 14 */ add r3, r28, r0
/* 80046A48 000426A8 3B 63 01 2C */ addi r27, r3, 0x12c
/* 80046A4C 000426AC 48 00 00 30 */ b lbl_80046A7C
lbl_80046A50:
/* 80046A50 000426B0 28 1F 00 01 */ cmplwi r31, 1
/* 80046A54 000426B4 40 82 00 14 */ bne lbl_80046A68
/* 80046A58 000426B8 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
/* 80046A5C 000426BC 7C 7C 02 14 */ add r3, r28, r0
/* 80046A60 000426C0 3B 63 01 3C */ addi r27, r3, 0x13c
/* 80046A64 000426C4 48 00 00 18 */ b lbl_80046A7C
lbl_80046A68:
/* 80046A68 000426C8 28 1F 00 02 */ cmplwi r31, 2
/* 80046A6C 000426CC 40 82 01 D0 */ bne lbl_80046C3C
/* 80046A70 000426D0 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
/* 80046A74 000426D4 7C 7C 02 14 */ add r3, r28, r0
/* 80046A78 000426D8 3B 63 01 4C */ addi r27, r3, 0x14c
lbl_80046A7C:
/* 80046A7C 000426DC 80 1B 00 00 */ lwz r0, 0(r27)
/* 80046A80 000426E0 2C 00 00 00 */ cmpwi r0, 0
/* 80046A84 000426E4 41 82 01 B8 */ beq lbl_80046C3C
/* 80046A88 000426E8 7F 83 E3 78 */ mr r3, r28
/* 80046A8C 000426EC 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 80046A90 000426F0 38 A0 00 00 */ li r5, 0
/* 80046A94 000426F4 4B FF F0 6D */ bl func_80045B00
/* 80046A98 000426F8 7C 7A 1B 78 */ mr r26, r3
/* 80046A9C 000426FC 7F 83 E3 78 */ mr r3, r28
/* 80046AA0 00042700 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 80046AA4 00042704 38 A1 00 38 */ addi r5, r1, 0x38
/* 80046AA8 00042708 38 C1 00 08 */ addi r6, r1, 8
/* 80046AAC 0004270C 38 E0 00 00 */ li r7, 0
/* 80046AB0 00042710 4B FF F1 69 */ bl func_80045C18
/* 80046AB4 00042714 57 A0 07 FF */ clrlwi. r0, r29, 0x1f
/* 80046AB8 00042718 D3 81 00 08 */ stfs f28, 8(r1)
/* 80046ABC 0004271C 41 82 00 08 */ beq lbl_80046AC4
/* 80046AC0 00042720 D3 A1 00 08 */ stfs f29, 8(r1)
lbl_80046AC4:
/* 80046AC4 00042724 80 7B 00 00 */ lwz r3, 0(r27)
/* 80046AC8 00042728 38 80 00 01 */ li r4, 1
/* 80046ACC 0004272C C0 01 00 38 */ lfs f0, 0x38(r1)
/* 80046AD0 00042730 D0 03 00 20 */ stfs f0, 0x20(r3)
/* 80046AD4 00042734 C0 01 00 3C */ lfs f0, 0x3c(r1)
/* 80046AD8 00042738 D0 03 00 24 */ stfs f0, 0x24(r3)
/* 80046ADC 0004273C C0 01 00 40 */ lfs f0, 0x40(r1)
/* 80046AE0 00042740 D0 03 00 28 */ stfs f0, 0x28(r3)
/* 80046AE4 00042744 48 1A BB D5 */ bl func_801F26B8
/* 80046AE8 00042748 C0 01 00 08 */ lfs f0, 8(r1)
/* 80046AEC 0004274C 38 61 00 28 */ addi r3, r1, 0x28
/* 80046AF0 00042750 D3 81 00 18 */ stfs f28, 0x18(r1)
/* 80046AF4 00042754 38 81 00 18 */ addi r4, r1, 0x18
/* 80046AF8 00042758 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 80046AFC 0004275C D3 81 00 20 */ stfs f28, 0x20(r1)
/* 80046B00 00042760 48 1D CB C1 */ bl func_802236C0
/* 80046B04 00042764 80 7B 00 00 */ lwz r3, 0(r27)
/* 80046B08 00042768 38 80 00 01 */ li r4, 1
/* 80046B0C 0004276C C0 01 00 28 */ lfs f0, 0x28(r1)
/* 80046B10 00042770 D0 03 00 2C */ stfs f0, 0x2c(r3)
/* 80046B14 00042774 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 80046B18 00042778 D0 03 00 30 */ stfs f0, 0x30(r3)
/* 80046B1C 0004277C C0 01 00 30 */ lfs f0, 0x30(r1)
/* 80046B20 00042780 D0 03 00 34 */ stfs f0, 0x34(r3)
/* 80046B24 00042784 C0 01 00 34 */ lfs f0, 0x34(r1)
/* 80046B28 00042788 D0 03 00 38 */ stfs f0, 0x38(r3)
/* 80046B2C 0004278C A0 03 00 10 */ lhz r0, 0x10(r3)
/* 80046B30 00042790 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80046B34 00042794 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80046B38 00042798 48 1A BB 81 */ bl func_801F26B8
/* 80046B3C 0004279C 2C 1A 00 00 */ cmpwi r26, 0
/* 80046B40 000427A0 41 82 00 18 */ beq lbl_80046B58
/* 80046B44 000427A4 7F 43 D3 78 */ mr r3, r26
/* 80046B48 000427A8 4B FF 2B 8D */ bl func_800396D4
/* 80046B4C 000427AC C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046B50 000427B0 48 00 79 4D */ bl func_8004E49C
/* 80046B54 000427B4 48 00 00 08 */ b lbl_80046B5C
lbl_80046B58:
/* 80046B58 000427B8 C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
lbl_80046B5C:
/* 80046B5C 000427BC FC 00 08 18 */ frsp f0, f1
/* 80046B60 000427C0 80 7B 00 00 */ lwz r3, 0(r27)
/* 80046B64 000427C4 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80046B68 000427C8 D0 03 00 48 */ stfs f0, 0x48(r3)
/* 80046B6C 000427CC FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 80046B70 000427D0 D0 03 00 4C */ stfs f0, 0x4c(r3)
/* 80046B74 000427D4 D0 21 00 10 */ stfs f1, 0x10(r1)
/* 80046B78 000427D8 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 80046B7C 000427DC D0 03 00 50 */ stfs f0, 0x50(r3)
/* 80046B80 000427E0 40 80 00 28 */ bge lbl_80046BA8
/* 80046B84 000427E4 C0 03 00 48 */ lfs f0, 0x48(r3)
/* 80046B88 000427E8 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80046B8C 000427EC 40 81 00 1C */ ble lbl_80046BA8
/* 80046B90 000427F0 FC 00 E0 40 */ fcmpo cr0, f0, f28
/* 80046B94 000427F4 40 80 00 0C */ bge lbl_80046BA0
/* 80046B98 000427F8 FC 00 F8 90 */ fmr f0, f31
/* 80046B9C 000427FC 48 00 00 08 */ b lbl_80046BA4
lbl_80046BA0:
/* 80046BA0 00042800 FC 00 F0 90 */ fmr f0, f30
lbl_80046BA4:
/* 80046BA4 00042804 D0 03 00 48 */ stfs f0, 0x48(r3)
lbl_80046BA8:
/* 80046BA8 00042808 C0 03 00 4C */ lfs f0, 0x4c(r3)
/* 80046BAC 0004280C FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 80046BB0 00042810 40 80 00 24 */ bge lbl_80046BD4
/* 80046BB4 00042814 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80046BB8 00042818 40 81 00 1C */ ble lbl_80046BD4
/* 80046BBC 0004281C FC 00 E0 40 */ fcmpo cr0, f0, f28
/* 80046BC0 00042820 40 80 00 0C */ bge lbl_80046BCC
/* 80046BC4 00042824 FC 00 F8 90 */ fmr f0, f31
/* 80046BC8 00042828 48 00 00 08 */ b lbl_80046BD0
lbl_80046BCC:
/* 80046BCC 0004282C FC 00 F0 90 */ fmr f0, f30
lbl_80046BD0:
/* 80046BD0 00042830 D0 03 00 4C */ stfs f0, 0x4c(r3)
lbl_80046BD4:
/* 80046BD4 00042834 C0 03 00 50 */ lfs f0, 0x50(r3)
/* 80046BD8 00042838 FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 80046BDC 0004283C 40 80 00 24 */ bge lbl_80046C00
/* 80046BE0 00042840 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80046BE4 00042844 40 81 00 1C */ ble lbl_80046C00
/* 80046BE8 00042848 FC 00 E0 40 */ fcmpo cr0, f0, f28
/* 80046BEC 0004284C 40 80 00 0C */ bge lbl_80046BF8
/* 80046BF0 00042850 FC 00 F8 90 */ fmr f0, f31
/* 80046BF4 00042854 48 00 00 08 */ b lbl_80046BFC
lbl_80046BF8:
/* 80046BF8 00042858 FC 00 F0 90 */ fmr f0, f30
lbl_80046BFC:
/* 80046BFC 0004285C D0 03 00 50 */ stfs f0, 0x50(r3)
lbl_80046C00:
/* 80046C00 00042860 38 80 00 01 */ li r4, 1
/* 80046C04 00042864 48 1A BA B5 */ bl func_801F26B8
/* 80046C08 00042868 80 7B 00 00 */ lwz r3, 0(r27)
/* 80046C0C 0004286C 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80046C10 00042870 60 00 00 01 */ ori r0, r0, 1
/* 80046C14 00042874 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046C18 00042878 90 03 01 04 */ stw r0, 0x104(r3)
/* 80046C1C 0004287C D3 83 01 08 */ stfs f28, 0x108(r3)
/* 80046C20 00042880 80 7B 00 00 */ lwz r3, 0(r27)
/* 80046C24 00042884 80 63 01 38 */ lwz r3, 0x138(r3)
/* 80046C28 00042888 2C 03 00 00 */ cmpwi r3, 0
/* 80046C2C 0004288C 41 82 00 10 */ beq lbl_80046C3C
/* 80046C30 00042890 A0 03 01 48 */ lhz r0, 0x148(r3)
/* 80046C34 00042894 60 00 00 08 */ ori r0, r0, 8
/* 80046C38 00042898 B0 03 01 48 */ sth r0, 0x148(r3)
lbl_80046C3C:
/* 80046C3C 0004289C 3B BD 00 01 */ addi r29, r29, 1
/* 80046C40 000428A0 28 1D 00 04 */ cmplwi r29, 4
/* 80046C44 000428A4 41 80 FD F4 */ blt lbl_80046A38
/* 80046C48 000428A8 3B DE 00 01 */ addi r30, r30, 1
/* 80046C4C 000428AC 28 1E 00 03 */ cmplwi r30, 3
/* 80046C50 000428B0 41 80 FD E0 */ blt lbl_80046A30
/* 80046C54 000428B4 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0
/* 80046C58 000428B8 CB E1 00 90 */ lfd f31, 0x90(r1)
/* 80046C5C 000428BC E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0
/* 80046C60 000428C0 CB C1 00 80 */ lfd f30, 0x80(r1)
/* 80046C64 000428C4 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0
/* 80046C68 000428C8 CB A1 00 70 */ lfd f29, 0x70(r1)
/* 80046C6C 000428CC E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0
/* 80046C70 000428D0 39 61 00 60 */ addi r11, r1, 0x60
/* 80046C74 000428D4 CB 81 00 60 */ lfd f28, 0x60(r1)
/* 80046C78 000428D8 48 18 04 F9 */ bl _restgpr_26
/* 80046C7C 000428DC 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 80046C80 000428E0 7C 08 03 A6 */ mtlr r0
/* 80046C84 000428E4 38 21 00 A0 */ addi r1, r1, 0xa0
/* 80046C88 000428E8 4E 80 00 20 */ blr
.global func_80046C8C
func_80046C8C:
/* 80046C8C 000428EC 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 80046C90 000428F0 7C 08 02 A6 */ mflr r0
/* 80046C94 000428F4 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 80046C98 000428F8 DB E1 00 90 */ stfd f31, 0x90(r1)
/* 80046C9C 000428FC F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0
/* 80046CA0 00042900 DB C1 00 80 */ stfd f30, 0x80(r1)
/* 80046CA4 00042904 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0
/* 80046CA8 00042908 DB A1 00 70 */ stfd f29, 0x70(r1)
/* 80046CAC 0004290C F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0
/* 80046CB0 00042910 DB 81 00 60 */ stfd f28, 0x60(r1)
/* 80046CB4 00042914 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0
/* 80046CB8 00042918 39 61 00 60 */ addi r11, r1, 0x60
/* 80046CBC 0004291C 48 18 04 69 */ bl _savegpr_26
/* 80046CC0 00042920 2C 04 00 00 */ cmpwi r4, 0
/* 80046CC4 00042924 7C 7B 1B 78 */ mr r27, r3
/* 80046CC8 00042928 7C 9A 23 78 */ mr r26, r4
/* 80046CCC 0004292C 41 80 01 FC */ blt lbl_80046EC8
/* 80046CD0 00042930 2C 04 00 03 */ cmpwi r4, 3
/* 80046CD4 00042934 40 81 00 08 */ ble lbl_80046CDC
/* 80046CD8 00042938 48 00 01 F0 */ b lbl_80046EC8
lbl_80046CDC:
/* 80046CDC 0004293C 38 A0 00 00 */ li r5, 0
/* 80046CE0 00042940 4B FF EE 21 */ bl func_80045B00
/* 80046CE4 00042944 2C 03 00 00 */ cmpwi r3, 0
/* 80046CE8 00042948 7C 7F 1B 78 */ mr r31, r3
/* 80046CEC 0004294C 41 82 01 DC */ beq lbl_80046EC8
/* 80046CF0 00042950 4B FF 29 E5 */ bl func_800396D4
/* 80046CF4 00042954 C0 22 83 8C */ lfs f1, lbl_8064098C-_SDA2_BASE_(r2)
/* 80046CF8 00042958 48 00 77 A5 */ bl func_8004E49C
/* 80046CFC 0004295C 57 40 10 3A */ slwi r0, r26, 2
/* 80046D00 00042960 FF 80 08 90 */ fmr f28, f1
/* 80046D04 00042964 7C 7B 02 14 */ add r3, r27, r0
/* 80046D08 00042968 C3 C2 83 B8 */ lfs f30, lbl_806409B8-_SDA2_BASE_(r2)
/* 80046D0C 0004296C C3 A2 83 B4 */ lfs f29, lbl_806409B4-_SDA2_BASE_(r2)
/* 80046D10 00042970 3B A3 01 2C */ addi r29, r3, 0x12c
/* 80046D14 00042974 C3 E2 83 88 */ lfs f31, lbl_80640988-_SDA2_BASE_(r2)
/* 80046D18 00042978 3B 83 01 3C */ addi r28, r3, 0x13c
/* 80046D1C 0004297C 3B 63 01 4C */ addi r27, r3, 0x14c
/* 80046D20 00042980 3B C0 00 00 */ li r30, 0
lbl_80046D24:
/* 80046D24 00042984 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 80046D28 00042988 40 82 00 0C */ bne lbl_80046D34
/* 80046D2C 0004298C 7F BA EB 78 */ mr r26, r29
/* 80046D30 00042990 48 00 00 20 */ b lbl_80046D50
lbl_80046D34:
/* 80046D34 00042994 28 00 00 01 */ cmplwi r0, 1
/* 80046D38 00042998 40 82 00 0C */ bne lbl_80046D44
/* 80046D3C 0004299C 7F 9A E3 78 */ mr r26, r28
/* 80046D40 000429A0 48 00 00 10 */ b lbl_80046D50
lbl_80046D44:
/* 80046D44 000429A4 28 00 00 02 */ cmplwi r0, 2
/* 80046D48 000429A8 40 82 01 74 */ bne lbl_80046EBC
/* 80046D4C 000429AC 7F 7A DB 78 */ mr r26, r27
lbl_80046D50:
/* 80046D50 000429B0 80 1A 00 00 */ lwz r0, 0(r26)
/* 80046D54 000429B4 2C 00 00 00 */ cmpwi r0, 0
/* 80046D58 000429B8 41 82 01 64 */ beq lbl_80046EBC
/* 80046D5C 000429BC 7F E4 FB 78 */ mr r4, r31
/* 80046D60 000429C0 38 61 00 30 */ addi r3, r1, 0x30
/* 80046D64 000429C4 4B FF 1A 7D */ bl func_800387E0
/* 80046D68 000429C8 80 7A 00 00 */ lwz r3, 0(r26)
/* 80046D6C 000429CC 38 80 00 01 */ li r4, 1
/* 80046D70 000429D0 C0 01 00 30 */ lfs f0, 0x30(r1)
/* 80046D74 000429D4 D0 03 00 20 */ stfs f0, 0x20(r3)
/* 80046D78 000429D8 C0 01 00 34 */ lfs f0, 0x34(r1)
/* 80046D7C 000429DC D0 03 00 24 */ stfs f0, 0x24(r3)
/* 80046D80 000429E0 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 80046D84 000429E4 D0 03 00 28 */ stfs f0, 0x28(r3)
/* 80046D88 000429E8 48 1A B9 31 */ bl func_801F26B8
/* 80046D8C 000429EC 7F E4 FB 78 */ mr r4, r31
/* 80046D90 000429F0 38 61 00 14 */ addi r3, r1, 0x14
/* 80046D94 000429F4 4B FF 1D 01 */ bl func_80038A94
/* 80046D98 000429F8 38 61 00 20 */ addi r3, r1, 0x20
/* 80046D9C 000429FC 38 81 00 14 */ addi r4, r1, 0x14
/* 80046DA0 00042A00 48 1D C9 21 */ bl func_802236C0
/* 80046DA4 00042A04 80 7A 00 00 */ lwz r3, 0(r26)
/* 80046DA8 00042A08 38 80 00 01 */ li r4, 1
/* 80046DAC 00042A0C C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80046DB0 00042A10 D0 03 00 2C */ stfs f0, 0x2c(r3)
/* 80046DB4 00042A14 C0 01 00 24 */ lfs f0, 0x24(r1)
/* 80046DB8 00042A18 D0 03 00 30 */ stfs f0, 0x30(r3)
/* 80046DBC 00042A1C C0 01 00 28 */ lfs f0, 0x28(r1)
/* 80046DC0 00042A20 D0 03 00 34 */ stfs f0, 0x34(r3)
/* 80046DC4 00042A24 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 80046DC8 00042A28 D0 03 00 38 */ stfs f0, 0x38(r3)
/* 80046DCC 00042A2C A0 03 00 10 */ lhz r0, 0x10(r3)
/* 80046DD0 00042A30 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 80046DD4 00042A34 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80046DD8 00042A38 48 1A B8 E1 */ bl func_801F26B8
/* 80046DDC 00042A3C FC 00 E0 18 */ frsp f0, f28
/* 80046DE0 00042A40 80 7A 00 00 */ lwz r3, 0(r26)
/* 80046DE4 00042A44 D3 81 00 08 */ stfs f28, 8(r1)
/* 80046DE8 00042A48 D0 03 00 48 */ stfs f0, 0x48(r3)
/* 80046DEC 00042A4C FC 00 E8 40 */ fcmpo cr0, f0, f29
/* 80046DF0 00042A50 D0 03 00 4C */ stfs f0, 0x4c(r3)
/* 80046DF4 00042A54 D3 81 00 0C */ stfs f28, 0xc(r1)
/* 80046DF8 00042A58 D3 81 00 10 */ stfs f28, 0x10(r1)
/* 80046DFC 00042A5C D0 03 00 50 */ stfs f0, 0x50(r3)
/* 80046E00 00042A60 40 80 00 28 */ bge lbl_80046E28
/* 80046E04 00042A64 C0 03 00 48 */ lfs f0, 0x48(r3)
/* 80046E08 00042A68 FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 80046E0C 00042A6C 40 81 00 1C */ ble lbl_80046E28
/* 80046E10 00042A70 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80046E14 00042A74 40 80 00 0C */ bge lbl_80046E20
/* 80046E18 00042A78 FC 00 F0 90 */ fmr f0, f30
/* 80046E1C 00042A7C 48 00 00 08 */ b lbl_80046E24
lbl_80046E20:
/* 80046E20 00042A80 FC 00 E8 90 */ fmr f0, f29
lbl_80046E24:
/* 80046E24 00042A84 D0 03 00 48 */ stfs f0, 0x48(r3)
lbl_80046E28:
/* 80046E28 00042A88 C0 03 00 4C */ lfs f0, 0x4c(r3)
/* 80046E2C 00042A8C FC 00 E8 40 */ fcmpo cr0, f0, f29
/* 80046E30 00042A90 40 80 00 24 */ bge lbl_80046E54
/* 80046E34 00042A94 FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 80046E38 00042A98 40 81 00 1C */ ble lbl_80046E54
/* 80046E3C 00042A9C FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80046E40 00042AA0 40 80 00 0C */ bge lbl_80046E4C
/* 80046E44 00042AA4 FC 00 F0 90 */ fmr f0, f30
/* 80046E48 00042AA8 48 00 00 08 */ b lbl_80046E50
lbl_80046E4C:
/* 80046E4C 00042AAC FC 00 E8 90 */ fmr f0, f29
lbl_80046E50:
/* 80046E50 00042AB0 D0 03 00 4C */ stfs f0, 0x4c(r3)
lbl_80046E54:
/* 80046E54 00042AB4 C0 03 00 50 */ lfs f0, 0x50(r3)
/* 80046E58 00042AB8 FC 00 E8 40 */ fcmpo cr0, f0, f29
/* 80046E5C 00042ABC 40 80 00 24 */ bge lbl_80046E80
/* 80046E60 00042AC0 FC 00 F0 40 */ fcmpo cr0, f0, f30
/* 80046E64 00042AC4 40 81 00 1C */ ble lbl_80046E80
/* 80046E68 00042AC8 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 80046E6C 00042ACC 40 80 00 0C */ bge lbl_80046E78
/* 80046E70 00042AD0 FC 00 F0 90 */ fmr f0, f30
/* 80046E74 00042AD4 48 00 00 08 */ b lbl_80046E7C
lbl_80046E78:
/* 80046E78 00042AD8 FC 00 E8 90 */ fmr f0, f29
lbl_80046E7C:
/* 80046E7C 00042ADC D0 03 00 50 */ stfs f0, 0x50(r3)
lbl_80046E80:
/* 80046E80 00042AE0 38 80 00 01 */ li r4, 1
/* 80046E84 00042AE4 48 1A B8 35 */ bl func_801F26B8
/* 80046E88 00042AE8 80 7A 00 00 */ lwz r3, 0(r26)
/* 80046E8C 00042AEC 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80046E90 00042AF0 60 00 00 01 */ ori r0, r0, 1
/* 80046E94 00042AF4 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80046E98 00042AF8 90 03 01 04 */ stw r0, 0x104(r3)
/* 80046E9C 00042AFC D3 E3 01 08 */ stfs f31, 0x108(r3)
/* 80046EA0 00042B00 80 7A 00 00 */ lwz r3, 0(r26)
/* 80046EA4 00042B04 80 63 01 38 */ lwz r3, 0x138(r3)
/* 80046EA8 00042B08 2C 03 00 00 */ cmpwi r3, 0
/* 80046EAC 00042B0C 41 82 00 10 */ beq lbl_80046EBC
/* 80046EB0 00042B10 A0 03 01 48 */ lhz r0, 0x148(r3)
/* 80046EB4 00042B14 60 00 00 08 */ ori r0, r0, 8
/* 80046EB8 00042B18 B0 03 01 48 */ sth r0, 0x148(r3)
lbl_80046EBC:
/* 80046EBC 00042B1C 3B DE 00 01 */ addi r30, r30, 1
/* 80046EC0 00042B20 28 1E 00 03 */ cmplwi r30, 3
/* 80046EC4 00042B24 41 80 FE 60 */ blt lbl_80046D24
lbl_80046EC8:
/* 80046EC8 00042B28 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0
/* 80046ECC 00042B2C CB E1 00 90 */ lfd f31, 0x90(r1)
/* 80046ED0 00042B30 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0
/* 80046ED4 00042B34 CB C1 00 80 */ lfd f30, 0x80(r1)
/* 80046ED8 00042B38 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0
/* 80046EDC 00042B3C CB A1 00 70 */ lfd f29, 0x70(r1)
/* 80046EE0 00042B40 E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0
/* 80046EE4 00042B44 39 61 00 60 */ addi r11, r1, 0x60
/* 80046EE8 00042B48 CB 81 00 60 */ lfd f28, 0x60(r1)
/* 80046EEC 00042B4C 48 18 02 85 */ bl _restgpr_26
/* 80046EF0 00042B50 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 80046EF4 00042B54 7C 08 03 A6 */ mtlr r0
/* 80046EF8 00042B58 38 21 00 A0 */ addi r1, r1, 0xa0
/* 80046EFC 00042B5C 4E 80 00 20 */ blr
.global func_80046F00
func_80046F00:
/* 80046F00 00042B60 2C 04 00 00 */ cmpwi r4, 0
/* 80046F04 00042B64 4D 80 00 20 */ bltlr
/* 80046F08 00042B68 2C 04 00 03 */ cmpwi r4, 3
/* 80046F0C 00042B6C 40 81 00 08 */ ble lbl_80046F14
/* 80046F10 00042B70 4E 80 00 20 */ blr
lbl_80046F14:
/* 80046F14 00042B74 54 84 10 3A */ slwi r4, r4, 2
/* 80046F18 00042B78 38 00 00 03 */ li r0, 3
/* 80046F1C 00042B7C 7C 63 22 14 */ add r3, r3, r4
/* 80046F20 00042B80 39 00 00 00 */ li r8, 0
/* 80046F24 00042B84 38 83 01 2C */ addi r4, r3, 0x12c
/* 80046F28 00042B88 38 C3 01 3C */ addi r6, r3, 0x13c
/* 80046F2C 00042B8C 38 63 01 4C */ addi r3, r3, 0x14c
/* 80046F30 00042B90 7C 09 03 A6 */ mtctr r0
lbl_80046F34:
/* 80046F34 00042B94 55 00 06 3F */ clrlwi. r0, r8, 0x18
/* 80046F38 00042B98 40 82 00 0C */ bne lbl_80046F44
/* 80046F3C 00042B9C 7C 87 23 78 */ mr r7, r4
/* 80046F40 00042BA0 48 00 00 20 */ b lbl_80046F60
lbl_80046F44:
/* 80046F44 00042BA4 28 00 00 01 */ cmplwi r0, 1
/* 80046F48 00042BA8 40 82 00 0C */ bne lbl_80046F54
/* 80046F4C 00042BAC 7C C7 33 78 */ mr r7, r6
/* 80046F50 00042BB0 48 00 00 10 */ b lbl_80046F60
lbl_80046F54:
/* 80046F54 00042BB4 28 00 00 02 */ cmplwi r0, 2
/* 80046F58 00042BB8 40 82 00 38 */ bne lbl_80046F90
/* 80046F5C 00042BBC 7C 67 1B 78 */ mr r7, r3
lbl_80046F60:
/* 80046F60 00042BC0 80 E7 00 00 */ lwz r7, 0(r7)
/* 80046F64 00042BC4 2C 07 00 00 */ cmpwi r7, 0
/* 80046F68 00042BC8 41 82 00 28 */ beq lbl_80046F90
/* 80046F6C 00042BCC 2C 05 00 00 */ cmpwi r5, 0
/* 80046F70 00042BD0 41 82 00 14 */ beq lbl_80046F84
/* 80046F74 00042BD4 A0 07 00 10 */ lhz r0, 0x10(r7)
/* 80046F78 00042BD8 60 00 00 02 */ ori r0, r0, 2
/* 80046F7C 00042BDC B0 07 00 10 */ sth r0, 0x10(r7)
/* 80046F80 00042BE0 48 00 00 10 */ b lbl_80046F90
lbl_80046F84:
/* 80046F84 00042BE4 A0 07 00 10 */ lhz r0, 0x10(r7)
/* 80046F88 00042BE8 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80046F8C 00042BEC B0 07 00 10 */ sth r0, 0x10(r7)
lbl_80046F90:
/* 80046F90 00042BF0 39 08 00 01 */ addi r8, r8, 1
/* 80046F94 00042BF4 42 00 FF A0 */ bdnz lbl_80046F34
/* 80046F98 00042BF8 4E 80 00 20 */ blr
.global func_80046F9C
func_80046F9C:
/* 80046F9C 00042BFC 39 00 00 00 */ li r8, 0
/* 80046FA0 00042C00 38 00 00 02 */ li r0, 2
lbl_80046FA4:
/* 80046FA4 00042C04 55 06 06 3E */ clrlwi r6, r8, 0x18
/* 80046FA8 00042C08 39 20 00 00 */ li r9, 0
/* 80046FAC 00042C0C 7C 09 03 A6 */ mtctr r0
lbl_80046FB0:
/* 80046FB0 00042C10 2C 06 00 00 */ cmpwi r6, 0
/* 80046FB4 00042C14 40 82 00 14 */ bne lbl_80046FC8
/* 80046FB8 00042C18 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d
/* 80046FBC 00042C1C 7C A3 2A 14 */ add r5, r3, r5
/* 80046FC0 00042C20 38 A5 01 2C */ addi r5, r5, 0x12c
/* 80046FC4 00042C24 48 00 00 30 */ b lbl_80046FF4
lbl_80046FC8:
/* 80046FC8 00042C28 28 06 00 01 */ cmplwi r6, 1
/* 80046FCC 00042C2C 40 82 00 14 */ bne lbl_80046FE0
/* 80046FD0 00042C30 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d
/* 80046FD4 00042C34 7C A3 2A 14 */ add r5, r3, r5
/* 80046FD8 00042C38 38 A5 01 3C */ addi r5, r5, 0x13c
/* 80046FDC 00042C3C 48 00 00 18 */ b lbl_80046FF4
lbl_80046FE0:
/* 80046FE0 00042C40 28 06 00 02 */ cmplwi r6, 2
/* 80046FE4 00042C44 40 82 00 40 */ bne lbl_80047024
/* 80046FE8 00042C48 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d
/* 80046FEC 00042C4C 7C A3 2A 14 */ add r5, r3, r5
/* 80046FF0 00042C50 38 A5 01 4C */ addi r5, r5, 0x14c
lbl_80046FF4:
/* 80046FF4 00042C54 80 E5 00 00 */ lwz r7, 0(r5)
/* 80046FF8 00042C58 2C 07 00 00 */ cmpwi r7, 0
/* 80046FFC 00042C5C 41 82 00 28 */ beq lbl_80047024
/* 80047000 00042C60 2C 04 00 00 */ cmpwi r4, 0
/* 80047004 00042C64 41 82 00 14 */ beq lbl_80047018
/* 80047008 00042C68 A0 A7 00 10 */ lhz r5, 0x10(r7)
/* 8004700C 00042C6C 60 A5 00 02 */ ori r5, r5, 2
/* 80047010 00042C70 B0 A7 00 10 */ sth r5, 0x10(r7)
/* 80047014 00042C74 48 00 00 10 */ b lbl_80047024
lbl_80047018:
/* 80047018 00042C78 A0 A7 00 10 */ lhz r5, 0x10(r7)
/* 8004701C 00042C7C 54 A5 07 FA */ rlwinm r5, r5, 0, 0x1f, 0x1d
/* 80047020 00042C80 B0 A7 00 10 */ sth r5, 0x10(r7)
lbl_80047024:
/* 80047024 00042C84 2C 06 00 00 */ cmpwi r6, 0
/* 80047028 00042C88 39 29 00 01 */ addi r9, r9, 1
/* 8004702C 00042C8C 40 82 00 14 */ bne lbl_80047040
/* 80047030 00042C90 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d
/* 80047034 00042C94 7C A3 2A 14 */ add r5, r3, r5
/* 80047038 00042C98 38 A5 01 2C */ addi r5, r5, 0x12c
/* 8004703C 00042C9C 48 00 00 30 */ b lbl_8004706C
lbl_80047040:
/* 80047040 00042CA0 28 06 00 01 */ cmplwi r6, 1
/* 80047044 00042CA4 40 82 00 14 */ bne lbl_80047058
/* 80047048 00042CA8 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d
/* 8004704C 00042CAC 7C A3 2A 14 */ add r5, r3, r5
/* 80047050 00042CB0 38 A5 01 3C */ addi r5, r5, 0x13c
/* 80047054 00042CB4 48 00 00 18 */ b lbl_8004706C
lbl_80047058:
/* 80047058 00042CB8 28 06 00 02 */ cmplwi r6, 2
/* 8004705C 00042CBC 40 82 00 40 */ bne lbl_8004709C
/* 80047060 00042CC0 55 25 15 BA */ rlwinm r5, r9, 2, 0x16, 0x1d
/* 80047064 00042CC4 7C A3 2A 14 */ add r5, r3, r5
/* 80047068 00042CC8 38 A5 01 4C */ addi r5, r5, 0x14c
lbl_8004706C:
/* 8004706C 00042CCC 80 E5 00 00 */ lwz r7, 0(r5)
/* 80047070 00042CD0 2C 07 00 00 */ cmpwi r7, 0
/* 80047074 00042CD4 41 82 00 28 */ beq lbl_8004709C
/* 80047078 00042CD8 2C 04 00 00 */ cmpwi r4, 0
/* 8004707C 00042CDC 41 82 00 14 */ beq lbl_80047090
/* 80047080 00042CE0 A0 A7 00 10 */ lhz r5, 0x10(r7)
/* 80047084 00042CE4 60 A5 00 02 */ ori r5, r5, 2
/* 80047088 00042CE8 B0 A7 00 10 */ sth r5, 0x10(r7)
/* 8004708C 00042CEC 48 00 00 10 */ b lbl_8004709C
lbl_80047090:
/* 80047090 00042CF0 A0 A7 00 10 */ lhz r5, 0x10(r7)
/* 80047094 00042CF4 54 A5 07 FA */ rlwinm r5, r5, 0, 0x1f, 0x1d
/* 80047098 00042CF8 B0 A7 00 10 */ sth r5, 0x10(r7)
lbl_8004709C:
/* 8004709C 00042CFC 39 29 00 01 */ addi r9, r9, 1
/* 800470A0 00042D00 42 00 FF 10 */ bdnz lbl_80046FB0
/* 800470A4 00042D04 39 08 00 01 */ addi r8, r8, 1
/* 800470A8 00042D08 28 08 00 03 */ cmplwi r8, 3
/* 800470AC 00042D0C 41 80 FE F8 */ blt lbl_80046FA4
/* 800470B0 00042D10 4E 80 00 20 */ blr
.global func_800470B4
func_800470B4:
/* 800470B4 00042D14 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 800470B8 00042D18 7C 08 02 A6 */ mflr r0
/* 800470BC 00042D1C 90 01 00 44 */ stw r0, 0x44(r1)
/* 800470C0 00042D20 39 61 00 40 */ addi r11, r1, 0x40
/* 800470C4 00042D24 48 18 00 65 */ bl _savegpr_27
/* 800470C8 00042D28 88 A3 01 28 */ lbz r5, 0x128(r3)
/* 800470CC 00042D2C 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 800470D0 00042D30 7C 7F 1B 78 */ mr r31, r3
/* 800470D4 00042D34 7C 9B 23 78 */ mr r27, r4
/* 800470D8 00042D38 7C 05 00 40 */ cmplw r5, r0
/* 800470DC 00042D3C 41 82 03 78 */ beq lbl_80047454
/* 800470E0 00042D40 98 83 01 28 */ stb r4, 0x128(r3)
/* 800470E4 00042D44 7F FD FB 78 */ mr r29, r31
/* 800470E8 00042D48 3B 80 00 00 */ li r28, 0
/* 800470EC 00042D4C 3B C0 00 00 */ li r30, 0
lbl_800470F0:
/* 800470F0 00042D50 80 7D 01 5C */ lwz r3, 0x15c(r29)
/* 800470F4 00042D54 2C 03 00 00 */ cmpwi r3, 0
/* 800470F8 00042D58 41 82 00 20 */ beq lbl_80047118
/* 800470FC 00042D5C 41 82 00 18 */ beq lbl_80047114
/* 80047100 00042D60 81 83 01 00 */ lwz r12, 0x100(r3)
/* 80047104 00042D64 38 80 00 01 */ li r4, 1
/* 80047108 00042D68 81 8C 00 08 */ lwz r12, 8(r12)
/* 8004710C 00042D6C 7D 89 03 A6 */ mtctr r12
/* 80047110 00042D70 4E 80 04 21 */ bctrl
lbl_80047114:
/* 80047114 00042D74 93 DD 01 5C */ stw r30, 0x15c(r29)
lbl_80047118:
/* 80047118 00042D78 3B 9C 00 01 */ addi r28, r28, 1
/* 8004711C 00042D7C 3B BD 00 04 */ addi r29, r29, 4
/* 80047120 00042D80 2C 1C 00 02 */ cmpwi r28, 2
/* 80047124 00042D84 41 80 FF CC */ blt lbl_800470F0
/* 80047128 00042D88 2C 1B 00 03 */ cmpwi r27, 3
/* 8004712C 00042D8C 41 82 00 28 */ beq lbl_80047154
/* 80047130 00042D90 40 80 00 14 */ bge lbl_80047144
/* 80047134 00042D94 2C 1B 00 01 */ cmpwi r27, 1
/* 80047138 00042D98 41 82 00 88 */ beq lbl_800471C0
/* 8004713C 00042D9C 40 80 00 F0 */ bge lbl_8004722C
/* 80047140 00042DA0 48 00 03 14 */ b lbl_80047454
lbl_80047144:
/* 80047144 00042DA4 2C 1B 00 05 */ cmpwi r27, 5
/* 80047148 00042DA8 41 82 02 A4 */ beq lbl_800473EC
/* 8004714C 00042DAC 40 80 03 08 */ bge lbl_80047454
/* 80047150 00042DB0 48 00 01 C8 */ b lbl_80047318
lbl_80047154:
/* 80047154 00042DB4 3C 80 1A 85 */ lis r4, 0x1A850E00@ha
/* 80047158 00042DB8 38 60 00 0C */ li r3, 0xc
/* 8004715C 00042DBC 38 84 0E 00 */ addi r4, r4, 0x1A850E00@l
/* 80047160 00042DC0 48 19 43 5D */ bl func_801DB4BC
/* 80047164 00042DC4 2C 03 00 00 */ cmpwi r3, 0
/* 80047168 00042DC8 7C 7D 1B 78 */ mr r29, r3
/* 8004716C 00042DCC 41 82 02 E8 */ beq lbl_80047454
/* 80047170 00042DD0 48 19 39 B9 */ bl func_801DAB28
/* 80047174 00042DD4 2C 03 00 00 */ cmpwi r3, 0
/* 80047178 00042DD8 41 82 00 14 */ beq lbl_8004718C
/* 8004717C 00042DDC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047180 00042DE0 38 80 01 40 */ li r4, 0x140
/* 80047184 00042DE4 48 19 3B 11 */ bl func_801DAC94
/* 80047188 00042DE8 48 00 00 08 */ b lbl_80047190
lbl_8004718C:
/* 8004718C 00042DEC 38 60 00 00 */ li r3, 0
lbl_80047190:
/* 80047190 00042DF0 2C 03 00 00 */ cmpwi r3, 0
/* 80047194 00042DF4 41 82 00 0C */ beq lbl_800471A0
/* 80047198 00042DF8 7F A4 EB 78 */ mr r4, r29
/* 8004719C 00042DFC 48 1B 27 51 */ bl func_801F98EC
lbl_800471A0:
/* 800471A0 00042E00 90 7F 01 5C */ stw r3, 0x15c(r31)
/* 800471A4 00042E04 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800471A8 00042E08 80 03 01 04 */ lwz r0, 0x104(r3)
/* 800471AC 00042E0C 60 00 00 01 */ ori r0, r0, 1
/* 800471B0 00042E10 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 800471B4 00042E14 90 03 01 04 */ stw r0, 0x104(r3)
/* 800471B8 00042E18 D0 03 01 08 */ stfs f0, 0x108(r3)
/* 800471BC 00042E1C 48 00 02 98 */ b lbl_80047454
lbl_800471C0:
/* 800471C0 00042E20 3C 80 1B C1 */ lis r4, 0x1BC10E00@ha
/* 800471C4 00042E24 38 60 00 0C */ li r3, 0xc
/* 800471C8 00042E28 38 84 0E 00 */ addi r4, r4, 0x1BC10E00@l
/* 800471CC 00042E2C 48 19 42 F1 */ bl func_801DB4BC
/* 800471D0 00042E30 2C 03 00 00 */ cmpwi r3, 0
/* 800471D4 00042E34 7C 7D 1B 78 */ mr r29, r3
/* 800471D8 00042E38 41 82 02 7C */ beq lbl_80047454
/* 800471DC 00042E3C 48 19 39 4D */ bl func_801DAB28
/* 800471E0 00042E40 2C 03 00 00 */ cmpwi r3, 0
/* 800471E4 00042E44 41 82 00 14 */ beq lbl_800471F8
/* 800471E8 00042E48 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800471EC 00042E4C 38 80 01 40 */ li r4, 0x140
/* 800471F0 00042E50 48 19 3A A5 */ bl func_801DAC94
/* 800471F4 00042E54 48 00 00 08 */ b lbl_800471FC
lbl_800471F8:
/* 800471F8 00042E58 38 60 00 00 */ li r3, 0
lbl_800471FC:
/* 800471FC 00042E5C 2C 03 00 00 */ cmpwi r3, 0
/* 80047200 00042E60 41 82 00 0C */ beq lbl_8004720C
/* 80047204 00042E64 7F A4 EB 78 */ mr r4, r29
/* 80047208 00042E68 48 1B 26 E5 */ bl func_801F98EC
lbl_8004720C:
/* 8004720C 00042E6C 90 7F 01 5C */ stw r3, 0x15c(r31)
/* 80047210 00042E70 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80047214 00042E74 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80047218 00042E78 60 00 00 01 */ ori r0, r0, 1
/* 8004721C 00042E7C 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80047220 00042E80 90 03 01 04 */ stw r0, 0x104(r3)
/* 80047224 00042E84 D0 03 01 08 */ stfs f0, 0x108(r3)
/* 80047228 00042E88 48 00 02 2C */ b lbl_80047454
lbl_8004722C:
/* 8004722C 00042E8C 4B FE EB 71 */ bl func_80035D9C
/* 80047230 00042E90 3C 80 20 9E */ lis r4, 0x209E0E00@ha
/* 80047234 00042E94 7C 7C 1B 78 */ mr r28, r3
/* 80047238 00042E98 38 84 0E 00 */ addi r4, r4, 0x209E0E00@l
/* 8004723C 00042E9C 38 60 00 0C */ li r3, 0xc
/* 80047240 00042EA0 48 19 42 7D */ bl func_801DB4BC
/* 80047244 00042EA4 2C 03 00 00 */ cmpwi r3, 0
/* 80047248 00042EA8 7C 7D 1B 78 */ mr r29, r3
/* 8004724C 00042EAC 41 82 02 08 */ beq lbl_80047454
/* 80047250 00042EB0 48 19 38 D9 */ bl func_801DAB28
/* 80047254 00042EB4 2C 03 00 00 */ cmpwi r3, 0
/* 80047258 00042EB8 41 82 00 14 */ beq lbl_8004726C
/* 8004725C 00042EBC 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047260 00042EC0 38 80 01 40 */ li r4, 0x140
/* 80047264 00042EC4 48 19 3A 31 */ bl func_801DAC94
/* 80047268 00042EC8 48 00 00 08 */ b lbl_80047270
lbl_8004726C:
/* 8004726C 00042ECC 38 60 00 00 */ li r3, 0
lbl_80047270:
/* 80047270 00042ED0 2C 03 00 00 */ cmpwi r3, 0
/* 80047274 00042ED4 41 82 00 0C */ beq lbl_80047280
/* 80047278 00042ED8 7F A4 EB 78 */ mr r4, r29
/* 8004727C 00042EDC 48 1B 26 71 */ bl func_801F98EC
lbl_80047280:
/* 80047280 00042EE0 2C 1C 00 00 */ cmpwi r28, 0
/* 80047284 00042EE4 90 7F 01 5C */ stw r3, 0x15c(r31)
/* 80047288 00042EE8 41 82 00 70 */ beq lbl_800472F8
/* 8004728C 00042EEC 7F 83 E3 78 */ mr r3, r28
/* 80047290 00042EF0 38 80 00 04 */ li r4, 4
/* 80047294 00042EF4 4B FE FC BD */ bl func_80036F50
/* 80047298 00042EF8 2C 03 00 00 */ cmpwi r3, 0
/* 8004729C 00042EFC 41 82 00 5C */ beq lbl_800472F8
/* 800472A0 00042F00 C0 22 83 88 */ lfs f1, lbl_80640988-_SDA2_BASE_(r2)
/* 800472A4 00042F04 38 61 00 18 */ addi r3, r1, 0x18
/* 800472A8 00042F08 C0 02 83 A8 */ lfs f0, lbl_806409A8-_SDA2_BASE_(r2)
/* 800472AC 00042F0C 38 81 00 08 */ addi r4, r1, 8
/* 800472B0 00042F10 D0 21 00 08 */ stfs f1, 8(r1)
/* 800472B4 00042F14 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 800472B8 00042F18 D0 21 00 10 */ stfs f1, 0x10(r1)
/* 800472BC 00042F1C 48 1D C4 05 */ bl func_802236C0
/* 800472C0 00042F20 80 7F 01 5C */ lwz r3, 0x15c(r31)
/* 800472C4 00042F24 38 80 00 01 */ li r4, 1
/* 800472C8 00042F28 C0 01 00 18 */ lfs f0, 0x18(r1)
/* 800472CC 00042F2C D0 03 00 2C */ stfs f0, 0x2c(r3)
/* 800472D0 00042F30 C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 800472D4 00042F34 D0 03 00 30 */ stfs f0, 0x30(r3)
/* 800472D8 00042F38 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 800472DC 00042F3C D0 03 00 34 */ stfs f0, 0x34(r3)
/* 800472E0 00042F40 C0 01 00 24 */ lfs f0, 0x24(r1)
/* 800472E4 00042F44 D0 03 00 38 */ stfs f0, 0x38(r3)
/* 800472E8 00042F48 A0 03 00 10 */ lhz r0, 0x10(r3)
/* 800472EC 00042F4C 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 800472F0 00042F50 B0 03 00 10 */ sth r0, 0x10(r3)
/* 800472F4 00042F54 48 1A B3 C5 */ bl func_801F26B8
lbl_800472F8:
/* 800472F8 00042F58 80 7F 01 5C */ lwz r3, 0x15c(r31)
/* 800472FC 00042F5C C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80047300 00042F60 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80047304 00042F64 60 00 00 01 */ ori r0, r0, 1
/* 80047308 00042F68 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004730C 00042F6C 90 03 01 04 */ stw r0, 0x104(r3)
/* 80047310 00042F70 D0 03 01 08 */ stfs f0, 0x108(r3)
/* 80047314 00042F74 48 00 01 40 */ b lbl_80047454
lbl_80047318:
/* 80047318 00042F78 3C 80 20 9C */ lis r4, 0x209C0E00@ha
/* 8004731C 00042F7C 38 60 00 0C */ li r3, 0xc
/* 80047320 00042F80 38 84 0E 00 */ addi r4, r4, 0x209C0E00@l
/* 80047324 00042F84 48 19 41 99 */ bl func_801DB4BC
/* 80047328 00042F88 2C 03 00 00 */ cmpwi r3, 0
/* 8004732C 00042F8C 7C 7D 1B 78 */ mr r29, r3
/* 80047330 00042F90 41 82 00 50 */ beq lbl_80047380
/* 80047334 00042F94 48 19 37 F5 */ bl func_801DAB28
/* 80047338 00042F98 2C 03 00 00 */ cmpwi r3, 0
/* 8004733C 00042F9C 41 82 00 14 */ beq lbl_80047350
/* 80047340 00042FA0 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047344 00042FA4 38 80 01 40 */ li r4, 0x140
/* 80047348 00042FA8 48 19 39 4D */ bl func_801DAC94
/* 8004734C 00042FAC 48 00 00 08 */ b lbl_80047354
lbl_80047350:
/* 80047350 00042FB0 38 60 00 00 */ li r3, 0
lbl_80047354:
/* 80047354 00042FB4 2C 03 00 00 */ cmpwi r3, 0
/* 80047358 00042FB8 41 82 00 0C */ beq lbl_80047364
/* 8004735C 00042FBC 7F A4 EB 78 */ mr r4, r29
/* 80047360 00042FC0 48 1B 25 8D */ bl func_801F98EC
lbl_80047364:
/* 80047364 00042FC4 90 7F 01 5C */ stw r3, 0x15c(r31)
/* 80047368 00042FC8 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 8004736C 00042FCC 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80047370 00042FD0 60 00 00 01 */ ori r0, r0, 1
/* 80047374 00042FD4 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80047378 00042FD8 90 03 01 04 */ stw r0, 0x104(r3)
/* 8004737C 00042FDC D0 03 01 08 */ stfs f0, 0x108(r3)
lbl_80047380:
/* 80047380 00042FE0 3C 80 20 9D */ lis r4, 0x209D0E00@ha
/* 80047384 00042FE4 38 60 00 0C */ li r3, 0xc
/* 80047388 00042FE8 38 84 0E 00 */ addi r4, r4, 0x209D0E00@l
/* 8004738C 00042FEC 48 19 41 31 */ bl func_801DB4BC
/* 80047390 00042FF0 2C 03 00 00 */ cmpwi r3, 0
/* 80047394 00042FF4 7C 7D 1B 78 */ mr r29, r3
/* 80047398 00042FF8 41 82 00 BC */ beq lbl_80047454
/* 8004739C 00042FFC 48 19 37 8D */ bl func_801DAB28
/* 800473A0 00043000 2C 03 00 00 */ cmpwi r3, 0
/* 800473A4 00043004 41 82 00 14 */ beq lbl_800473B8
/* 800473A8 00043008 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 800473AC 0004300C 38 80 01 40 */ li r4, 0x140
/* 800473B0 00043010 48 19 38 E5 */ bl func_801DAC94
/* 800473B4 00043014 48 00 00 08 */ b lbl_800473BC
lbl_800473B8:
/* 800473B8 00043018 38 60 00 00 */ li r3, 0
lbl_800473BC:
/* 800473BC 0004301C 2C 03 00 00 */ cmpwi r3, 0
/* 800473C0 00043020 41 82 00 0C */ beq lbl_800473CC
/* 800473C4 00043024 7F A4 EB 78 */ mr r4, r29
/* 800473C8 00043028 48 1B 25 25 */ bl func_801F98EC
lbl_800473CC:
/* 800473CC 0004302C 90 7F 01 60 */ stw r3, 0x160(r31)
/* 800473D0 00043030 C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 800473D4 00043034 80 03 01 04 */ lwz r0, 0x104(r3)
/* 800473D8 00043038 60 00 00 01 */ ori r0, r0, 1
/* 800473DC 0004303C 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 800473E0 00043040 90 03 01 04 */ stw r0, 0x104(r3)
/* 800473E4 00043044 D0 03 01 08 */ stfs f0, 0x108(r3)
/* 800473E8 00043048 48 00 00 6C */ b lbl_80047454
lbl_800473EC:
/* 800473EC 0004304C 3C 80 21 E3 */ lis r4, 0x21E30E00@ha
/* 800473F0 00043050 38 60 00 0C */ li r3, 0xc
/* 800473F4 00043054 38 84 0E 00 */ addi r4, r4, 0x21E30E00@l
/* 800473F8 00043058 48 19 40 C5 */ bl func_801DB4BC
/* 800473FC 0004305C 2C 03 00 00 */ cmpwi r3, 0
/* 80047400 00043060 7C 7D 1B 78 */ mr r29, r3
/* 80047404 00043064 41 82 00 50 */ beq lbl_80047454
/* 80047408 00043068 48 19 37 21 */ bl func_801DAB28
/* 8004740C 0004306C 2C 03 00 00 */ cmpwi r3, 0
/* 80047410 00043070 41 82 00 14 */ beq lbl_80047424
/* 80047414 00043074 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80047418 00043078 38 80 01 40 */ li r4, 0x140
/* 8004741C 0004307C 48 19 38 79 */ bl func_801DAC94
/* 80047420 00043080 48 00 00 08 */ b lbl_80047428
lbl_80047424:
/* 80047424 00043084 38 60 00 00 */ li r3, 0
lbl_80047428:
/* 80047428 00043088 2C 03 00 00 */ cmpwi r3, 0
/* 8004742C 0004308C 41 82 00 0C */ beq lbl_80047438
/* 80047430 00043090 7F A4 EB 78 */ mr r4, r29
/* 80047434 00043094 48 1B 24 B9 */ bl func_801F98EC
lbl_80047438:
/* 80047438 00043098 90 7F 01 5C */ stw r3, 0x15c(r31)
/* 8004743C 0004309C C0 02 83 88 */ lfs f0, lbl_80640988-_SDA2_BASE_(r2)
/* 80047440 000430A0 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80047444 000430A4 60 00 00 01 */ ori r0, r0, 1
/* 80047448 000430A8 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004744C 000430AC 90 03 01 04 */ stw r0, 0x104(r3)
/* 80047450 000430B0 D0 03 01 08 */ stfs f0, 0x108(r3)
lbl_80047454:
/* 80047454 000430B4 39 61 00 40 */ addi r11, r1, 0x40
/* 80047458 000430B8 48 17 FD 1D */ bl _restgpr_27
/* 8004745C 000430BC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80047460 000430C0 7C 08 03 A6 */ mtlr r0
/* 80047464 000430C4 38 21 00 40 */ addi r1, r1, 0x40
/* 80047468 000430C8 4E 80 00 20 */ blr
.global func_8004746C
func_8004746C:
/* 8004746C 000430CC 38 80 00 00 */ li r4, 0
/* 80047470 000430D0 4B FF FC 44 */ b func_800470B4
.global func_80047474
func_80047474:
/* 80047474 000430D4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80047478 000430D8 7C 08 02 A6 */ mflr r0
/* 8004747C 000430DC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80047480 000430E0 54 A0 00 5E */ rlwinm r0, r5, 0, 1, 0xf
/* 80047484 000430E4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80047488 000430E8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8004748C 000430EC 7C DE 33 78 */ mr r30, r6
/* 80047490 000430F0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80047494 000430F4 7C 7D 1B 78 */ mr r29, r3
/* 80047498 000430F8 7C 83 23 78 */ mr r3, r4
/* 8004749C 000430FC 60 04 2C 00 */ ori r4, r0, 0x2c00
/* 800474A0 00043100 48 19 40 1D */ bl func_801DB4BC
/* 800474A4 00043104 2C 03 00 00 */ cmpwi r3, 0
/* 800474A8 00043108 7C 7F 1B 78 */ mr r31, r3
/* 800474AC 0004310C 41 82 00 24 */ beq lbl_800474D0
/* 800474B0 00043110 7F C4 F3 78 */ mr r4, r30
/* 800474B4 00043114 48 19 D6 D9 */ bl func_801E4B8C
/* 800474B8 00043118 7F E3 FB 78 */ mr r3, r31
/* 800474BC 0004311C 38 80 00 01 */ li r4, 1
/* 800474C0 00043120 48 19 D7 0D */ bl func_801E4BCC
/* 800474C4 00043124 93 FD 01 68 */ stw r31, 0x168(r29)
/* 800474C8 00043128 38 60 00 01 */ li r3, 1
/* 800474CC 0004312C 48 00 00 08 */ b lbl_800474D4
lbl_800474D0:
/* 800474D0 00043130 38 60 00 00 */ li r3, 0
lbl_800474D4:
/* 800474D4 00043134 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800474D8 00043138 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800474DC 0004313C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800474E0 00043140 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800474E4 00043144 7C 08 03 A6 */ mtlr r0
/* 800474E8 00043148 38 21 00 20 */ addi r1, r1, 0x20
/* 800474EC 0004314C 4E 80 00 20 */ blr
.global func_800474F0
func_800474F0:
/* 800474F0 00043150 80 63 01 68 */ lwz r3, 0x168(r3)
/* 800474F4 00043154 2C 03 00 00 */ cmpwi r3, 0
/* 800474F8 00043158 4D 82 00 20 */ beqlr
/* 800474FC 0004315C 48 19 D6 D0 */ b func_801E4BCC
/* 80047500 00043160 4E 80 00 20 */ blr
.global func_80047504
func_80047504:
/* 80047504 00043164 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80047508 00043168 7C 08 02 A6 */ mflr r0
/* 8004750C 0004316C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80047510 00043170 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80047514 00043174 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80047518 00043178 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8004751C 0004317C 7C 7D 1B 78 */ mr r29, r3
/* 80047520 00043180 4B FE BB 69 */ bl func_80033088
/* 80047524 00043184 80 1D 00 08 */ lwz r0, 8(r29)
/* 80047528 00043188 7C 7E 1B 78 */ mr r30, r3
/* 8004752C 0004318C 2C 00 00 00 */ cmpwi r0, 0
/* 80047530 00043190 41 82 00 90 */ beq lbl_800475C0
/* 80047534 00043194 2C 03 00 00 */ cmpwi r3, 0
/* 80047538 00043198 41 82 00 88 */ beq lbl_800475C0
/* 8004753C 0004319C 48 0D 54 39 */ bl func_8011C974
/* 80047540 000431A0 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80047544 000431A4 37 A3 FC 18 */ addic. r29, r3, -1000
/* 80047548 000431A8 41 80 00 78 */ blt lbl_800475C0
/* 8004754C 000431AC 7F C3 F3 78 */ mr r3, r30
/* 80047550 000431B0 38 80 00 01 */ li r4, 1
/* 80047554 000431B4 4B FE DA 51 */ bl func_80034FA4
/* 80047558 000431B8 7F C3 F3 78 */ mr r3, r30
/* 8004755C 000431BC 38 80 00 00 */ li r4, 0
/* 80047560 000431C0 4B FE DB 21 */ bl func_80035080
/* 80047564 000431C4 3F E0 80 64 */ lis r31, lbl_8063CE34@ha
/* 80047568 000431C8 7F A4 EB 78 */ mr r4, r29
/* 8004756C 000431CC 3B FF CE 34 */ addi r31, r31, lbl_8063CE34@l
/* 80047570 000431D0 38 7F 00 78 */ addi r3, r31, 0x78
/* 80047574 000431D4 48 35 23 DD */ bl func_80399950
/* 80047578 000431D8 54 64 06 3E */ clrlwi r4, r3, 0x18
/* 8004757C 000431DC 7F C3 F3 78 */ mr r3, r30
/* 80047580 000431E0 7C 04 00 D0 */ neg r0, r4
/* 80047584 000431E4 7C 00 23 78 */ or r0, r0, r4
/* 80047588 000431E8 54 04 0F FE */ srwi r4, r0, 0x1f
/* 8004758C 000431EC 4B FE DA ED */ bl func_80035078
/* 80047590 000431F0 7F A4 EB 78 */ mr r4, r29
/* 80047594 000431F4 38 7F 00 78 */ addi r3, r31, 0x78
/* 80047598 000431F8 48 35 23 ED */ bl func_80399984
/* 8004759C 000431FC 7C 60 1B 78 */ mr r0, r3
/* 800475A0 00043200 7F C3 F3 78 */ mr r3, r30
/* 800475A4 00043204 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 800475A8 00043208 4B FE DA F9 */ bl func_800350A0
/* 800475AC 0004320C 7F A4 EB 78 */ mr r4, r29
/* 800475B0 00043210 38 7F 00 78 */ addi r3, r31, 0x78
/* 800475B4 00043214 48 35 24 05 */ bl func_803999B8
/* 800475B8 00043218 7F C3 F3 78 */ mr r3, r30
/* 800475BC 0004321C 4B FE D9 F1 */ bl func_80034FAC
lbl_800475C0:
/* 800475C0 00043220 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800475C4 00043224 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800475C8 00043228 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800475CC 0004322C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800475D0 00043230 7C 08 03 A6 */ mtlr r0
/* 800475D4 00043234 38 21 00 20 */ addi r1, r1, 0x20
/* 800475D8 00043238 4E 80 00 20 */ blr
.global func_800475DC
func_800475DC:
/* 800475DC 0004323C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800475E0 00043240 7C 08 02 A6 */ mflr r0
/* 800475E4 00043244 90 01 00 24 */ stw r0, 0x24(r1)
/* 800475E8 00043248 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 800475EC 0004324C 3B E0 00 00 */ li r31, 0
/* 800475F0 00043250 93 C1 00 18 */ stw r30, 0x18(r1)
/* 800475F4 00043254 93 A1 00 14 */ stw r29, 0x14(r1)
/* 800475F8 00043258 7C 9D 23 78 */ mr r29, r4
/* 800475FC 0004325C 93 81 00 10 */ stw r28, 0x10(r1)
/* 80047600 00043260 7C 7C 1B 78 */ mr r28, r3
/* 80047604 00043264 48 0D 53 71 */ bl func_8011C974
/* 80047608 00043268 80 83 00 10 */ lwz r4, 0x10(r3)
/* 8004760C 0004326C 34 84 FC 18 */ addic. r4, r4, -1000
/* 80047610 00043270 40 80 00 08 */ bge lbl_80047618
/* 80047614 00043274 38 80 00 00 */ li r4, 0
lbl_80047618:
/* 80047618 00043278 80 03 00 00 */ lwz r0, 0(r3)
/* 8004761C 0004327C 2C 1D 00 02 */ cmpwi r29, 2
/* 80047620 00043280 3B C0 00 00 */ li r30, 0
/* 80047624 00043284 54 00 2F FE */ rlwinm r0, r0, 5, 0x1f, 0x1f
/* 80047628 00043288 41 82 00 D4 */ beq lbl_800476FC
/* 8004762C 0004328C 40 80 00 14 */ bge lbl_80047640
/* 80047630 00043290 2C 1D 00 00 */ cmpwi r29, 0
/* 80047634 00043294 41 82 00 18 */ beq lbl_8004764C
/* 80047638 00043298 40 80 00 8C */ bge lbl_800476C4
/* 8004763C 0004329C 48 00 00 EC */ b lbl_80047728
lbl_80047640:
/* 80047640 000432A0 2C 1D 00 04 */ cmpwi r29, 4
/* 80047644 000432A4 40 80 00 E4 */ bge lbl_80047728
/* 80047648 000432A8 48 00 00 CC */ b lbl_80047714
lbl_8004764C:
/* 8004764C 000432AC 2C 00 00 00 */ cmpwi r0, 0
/* 80047650 000432B0 41 82 00 5C */ beq lbl_800476AC
/* 80047654 000432B4 3B E0 00 00 */ li r31, 0
/* 80047658 000432B8 48 00 00 2C */ b lbl_80047684
lbl_8004765C:
/* 8004765C 000432BC 7F 83 E3 78 */ mr r3, r28
/* 80047660 000432C0 38 9F 00 80 */ addi r4, r31, 0x80
/* 80047664 000432C4 38 A0 00 00 */ li r5, 0
/* 80047668 000432C8 4B FF E4 99 */ bl func_80045B00
/* 8004766C 000432CC A0 63 05 1C */ lhz r3, 0x51c(r3)
/* 80047670 000432D0 38 03 FF F8 */ addi r0, r3, -8
/* 80047674 000432D4 7C 1E 00 00 */ cmpw r30, r0
/* 80047678 000432D8 40 80 00 08 */ bge lbl_80047680
/* 8004767C 000432DC 7C 1E 03 78 */ mr r30, r0
lbl_80047680:
/* 80047680 000432E0 3B FF 00 01 */ addi r31, r31, 1
lbl_80047684:
/* 80047684 000432E4 A0 1C 01 1E */ lhz r0, 0x11e(r28)
/* 80047688 000432E8 7C 1F 00 00 */ cmpw r31, r0
/* 8004768C 000432EC 41 80 FF D0 */ blt lbl_8004765C
/* 80047690 000432F0 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 80047694 000432F4 7F C4 F3 78 */ mr r4, r30
/* 80047698 000432F8 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 8004769C 000432FC 38 63 00 78 */ addi r3, r3, 0x78
/* 800476A0 00043300 48 35 21 AD */ bl func_8039984C
/* 800476A4 00043304 7C 7F 1B 78 */ mr r31, r3
/* 800476A8 00043308 48 00 00 80 */ b lbl_80047728
lbl_800476AC:
/* 800476AC 0004330C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 800476B0 00043310 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 800476B4 00043314 38 63 00 78 */ addi r3, r3, 0x78
/* 800476B8 00043318 48 35 21 61 */ bl func_80399818
/* 800476BC 0004331C 7C 7F 1B 78 */ mr r31, r3
/* 800476C0 00043320 48 00 00 68 */ b lbl_80047728
lbl_800476C4:
/* 800476C4 00043324 2C 00 00 00 */ cmpwi r0, 0
/* 800476C8 00043328 41 82 00 1C */ beq lbl_800476E4
/* 800476CC 0004332C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 800476D0 00043330 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 800476D4 00043334 38 63 00 78 */ addi r3, r3, 0x78
/* 800476D8 00043338 48 35 21 DD */ bl func_803998B4
/* 800476DC 0004333C 7C 7F 1B 78 */ mr r31, r3
/* 800476E0 00043340 48 00 00 48 */ b lbl_80047728
lbl_800476E4:
/* 800476E4 00043344 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 800476E8 00043348 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 800476EC 0004334C 38 63 00 78 */ addi r3, r3, 0x78
/* 800476F0 00043350 48 35 21 91 */ bl func_80399880
/* 800476F4 00043354 7C 7F 1B 78 */ mr r31, r3
/* 800476F8 00043358 48 00 00 30 */ b lbl_80047728
lbl_800476FC:
/* 800476FC 0004335C 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 80047700 00043360 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 80047704 00043364 38 63 00 78 */ addi r3, r3, 0x78
/* 80047708 00043368 48 35 21 E1 */ bl func_803998E8
/* 8004770C 0004336C 7C 7F 1B 78 */ mr r31, r3
/* 80047710 00043370 48 00 00 18 */ b lbl_80047728
lbl_80047714:
/* 80047714 00043374 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 80047718 00043378 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 8004771C 0004337C 38 63 00 78 */ addi r3, r3, 0x78
/* 80047720 00043380 48 35 21 FD */ bl func_8039991C
/* 80047724 00043384 7C 7F 1B 78 */ mr r31, r3
lbl_80047728:
/* 80047728 00043388 2C 1F 00 00 */ cmpwi r31, 0
/* 8004772C 0004338C 40 80 00 08 */ bge lbl_80047734
/* 80047730 00043390 3B E0 00 00 */ li r31, 0
lbl_80047734:
/* 80047734 00043394 7F E3 FB 78 */ mr r3, r31
/* 80047738 00043398 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8004773C 0004339C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80047740 000433A0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80047744 000433A4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80047748 000433A8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004774C 000433AC 7C 08 03 A6 */ mtlr r0
/* 80047750 000433B0 38 21 00 20 */ addi r1, r1, 0x20
/* 80047754 000433B4 4E 80 00 20 */ blr
.global func_80047758
func_80047758:
/* 80047758 000433B8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004775C 000433BC 7C 08 02 A6 */ mflr r0
/* 80047760 000433C0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80047764 000433C4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80047768 000433C8 3B E3 00 0C */ addi r31, r3, 0xc
/* 8004776C 000433CC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80047770 000433D0 3B C0 00 00 */ li r30, 0
/* 80047774 000433D4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80047778 000433D8 7C 7D 1B 78 */ mr r29, r3
/* 8004777C 000433DC 48 00 00 24 */ b lbl_800477A0
lbl_80047780:
/* 80047780 000433E0 7F E3 FB 78 */ mr r3, r31
/* 80047784 000433E4 4B FF D8 2D */ bl func_80044FB0
/* 80047788 000433E8 2C 03 00 00 */ cmpwi r3, 0
/* 8004778C 000433EC 41 82 00 0C */ beq lbl_80047798
/* 80047790 000433F0 7F E3 FB 78 */ mr r3, r31
/* 80047794 000433F4 4B FF D8 D9 */ bl func_8004506C
lbl_80047798:
/* 80047798 000433F8 3B FF 00 44 */ addi r31, r31, 0x44
/* 8004779C 000433FC 3B DE 00 01 */ addi r30, r30, 1
lbl_800477A0:
/* 800477A0 00043400 A0 1D 01 1E */ lhz r0, 0x11e(r29)
/* 800477A4 00043404 7C 1E 00 00 */ cmpw r30, r0
/* 800477A8 00043408 41 80 FF D8 */ blt lbl_80047780
/* 800477AC 0004340C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800477B0 00043410 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800477B4 00043414 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800477B8 00043418 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800477BC 0004341C 7C 08 03 A6 */ mtlr r0
/* 800477C0 00043420 38 21 00 20 */ addi r1, r1, 0x20
/* 800477C4 00043424 4E 80 00 20 */ blr
.global func_800477C8
func_800477C8:
/* 800477C8 00043428 38 A0 00 01 */ li r5, 1
/* 800477CC 0004342C 38 6D 97 F0 */ addi r3, r13, lbl_8063EAB0-_SDA_BASE_
/* 800477D0 00043430 38 80 00 04 */ li r4, 4
/* 800477D4 00043434 38 00 00 00 */ li r0, 0
/* 800477D8 00043438 98 AD 97 F0 */ stb r5, lbl_8063EAB0-_SDA_BASE_(r13)
/* 800477DC 0004343C B0 83 00 02 */ sth r4, 2(r3)
/* 800477E0 00043440 98 03 00 04 */ stb r0, 4(r3)
/* 800477E4 00043444 4E 80 00 20 */ blr
|