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
|