summaryrefslogtreecommitdiff
path: root/asm/code_80049084.s
blob: 56d2960c6da2444445491b4e41d991d908a17da5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
.include "macros.inc"

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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