summaryrefslogtreecommitdiff
path: root/asm/MSL_C/MSL_Common/printf.s
blob: f437ec1a70450d8e43f359902666f9d851f3cd44 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
.include "macros.inc"

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

parse_format:
/* 801CA7C0 001C6420  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 801CA7C4 001C6424  7C 08 02 A6 */	mflr r0
/* 801CA7C8 001C6428  38 E0 00 00 */	li r7, 0
/* 801CA7CC 001C642C  88 C3 00 01 */	lbz r6, 1(r3)
/* 801CA7D0 001C6430  90 01 00 34 */	stw r0, 0x34(r1)
/* 801CA7D4 001C6434  39 00 00 01 */	li r8, 1
/* 801CA7D8 001C6438  7C C6 07 74 */	extsb r6, r6
/* 801CA7DC 001C643C  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 801CA7E0 001C6440  2C 06 00 25 */	cmpwi r6, 0x25
/* 801CA7E4 001C6444  3B E3 00 01 */	addi r31, r3, 1
/* 801CA7E8 001C6448  93 C1 00 28 */	stw r30, 0x28(r1)
/* 801CA7EC 001C644C  7C BE 2B 78 */	mr r30, r5
/* 801CA7F0 001C6450  93 A1 00 24 */	stw r29, 0x24(r1)
/* 801CA7F4 001C6454  7C 9D 23 78 */	mr r29, r4
/* 801CA7F8 001C6458  98 E1 00 09 */	stb r7, 9(r1)
/* 801CA7FC 001C645C  99 01 00 08 */	stb r8, 8(r1)
/* 801CA800 001C6460  98 E1 00 0A */	stb r7, 0xa(r1)
/* 801CA804 001C6464  98 E1 00 0B */	stb r7, 0xb(r1)
/* 801CA808 001C6468  98 E1 00 0C */	stb r7, 0xc(r1)
/* 801CA80C 001C646C  90 E1 00 10 */	stw r7, 0x10(r1)
/* 801CA810 001C6470  90 E1 00 14 */	stw r7, 0x14(r1)
/* 801CA814 001C6474  40 82 00 28 */	bne lbl_801CA83C
/* 801CA818 001C6478  98 C1 00 0D */	stb r6, 0xd(r1)
/* 801CA81C 001C647C  38 7F 00 01 */	addi r3, r31, 1
/* 801CA820 001C6480  80 81 00 08 */	lwz r4, 8(r1)
/* 801CA824 001C6484  80 01 00 0C */	lwz r0, 0xc(r1)
/* 801CA828 001C6488  90 85 00 00 */	stw r4, 0(r5)
/* 801CA82C 001C648C  90 05 00 04 */	stw r0, 4(r5)
/* 801CA830 001C6490  90 E5 00 08 */	stw r7, 8(r5)
/* 801CA834 001C6494  90 E5 00 0C */	stw r7, 0xc(r5)
/* 801CA838 001C6498  48 00 05 68 */	b lbl_801CADA0
lbl_801CA83C:
/* 801CA83C 001C649C  3C 80 80 42 */	lis r4, 0x8042
/* 801CA840 001C64A0  38 00 00 02 */	li r0, 2
lbl_801CA844:
/* 801CA844 001C64A4  38 A6 FF E0 */	addi r5, r6, -32
/* 801CA848 001C64A8  39 20 00 01 */	li r9, 1
/* 801CA84C 001C64AC  28 05 00 10 */	cmplwi r5, 0x10
/* 801CA850 001C64B0  41 81 00 58 */	bgt lbl_801CA8A8
/* 801CA854 001C64B4  38 64 2E 70 */	addi r3, r4, 0x2e70
/* 801CA858 001C64B8  54 A5 10 3A */	slwi r5, r5, 2
/* 801CA85C 001C64BC  7C 63 28 2E */	lwzx r3, r3, r5
/* 801CA860 001C64C0  7C 69 03 A6 */	mtctr r3
/* 801CA864 001C64C4  4E 80 04 20 */	bctr
/* 801CA868 001C64C8  98 E1 00 08 */	stb r7, 8(r1)
/* 801CA86C 001C64CC  48 00 00 40 */	b lbl_801CA8AC
/* 801CA870 001C64D0  99 01 00 09 */	stb r8, 9(r1)
/* 801CA874 001C64D4  48 00 00 38 */	b lbl_801CA8AC
/* 801CA878 001C64D8  88 61 00 09 */	lbz r3, 9(r1)
/* 801CA87C 001C64DC  28 03 00 01 */	cmplwi r3, 1
/* 801CA880 001C64E0  41 82 00 2C */	beq lbl_801CA8AC
/* 801CA884 001C64E4  98 01 00 09 */	stb r0, 9(r1)
/* 801CA888 001C64E8  48 00 00 24 */	b lbl_801CA8AC
/* 801CA88C 001C64EC  99 01 00 0B */	stb r8, 0xb(r1)
/* 801CA890 001C64F0  48 00 00 1C */	b lbl_801CA8AC
/* 801CA894 001C64F4  88 61 00 08 */	lbz r3, 8(r1)
/* 801CA898 001C64F8  2C 03 00 00 */	cmpwi r3, 0
/* 801CA89C 001C64FC  41 82 00 10 */	beq lbl_801CA8AC
/* 801CA8A0 001C6500  98 01 00 08 */	stb r0, 8(r1)
/* 801CA8A4 001C6504  48 00 00 08 */	b lbl_801CA8AC
lbl_801CA8A8:
/* 801CA8A8 001C6508  39 20 00 00 */	li r9, 0
lbl_801CA8AC:
/* 801CA8AC 001C650C  2C 09 00 00 */	cmpwi r9, 0
/* 801CA8B0 001C6510  41 82 00 10 */	beq lbl_801CA8C0
/* 801CA8B4 001C6514  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CA8B8 001C6518  7C C6 07 74 */	extsb r6, r6
/* 801CA8BC 001C651C  4B FF FF 88 */	b lbl_801CA844
lbl_801CA8C0:
/* 801CA8C0 001C6520  2C 06 00 2A */	cmpwi r6, 0x2a
/* 801CA8C4 001C6524  40 82 00 3C */	bne lbl_801CA900
/* 801CA8C8 001C6528  7F A3 EB 78 */	mr r3, r29
/* 801CA8CC 001C652C  38 80 00 01 */	li r4, 1
/* 801CA8D0 001C6530  4B FF C2 B1 */	bl __va_arg
/* 801CA8D4 001C6534  80 03 00 00 */	lwz r0, 0(r3)
/* 801CA8D8 001C6538  2C 00 00 00 */	cmpwi r0, 0
/* 801CA8DC 001C653C  90 01 00 10 */	stw r0, 0x10(r1)
/* 801CA8E0 001C6540  40 80 00 14 */	bge lbl_801CA8F4
/* 801CA8E4 001C6544  7C 00 00 D0 */	neg r0, r0
/* 801CA8E8 001C6548  38 60 00 00 */	li r3, 0
/* 801CA8EC 001C654C  98 61 00 08 */	stb r3, 8(r1)
/* 801CA8F0 001C6550  90 01 00 10 */	stw r0, 0x10(r1)
lbl_801CA8F4:
/* 801CA8F4 001C6554  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CA8F8 001C6558  7C C6 07 74 */	extsb r6, r6
/* 801CA8FC 001C655C  48 00 00 70 */	b lbl_801CA96C
lbl_801CA900:
/* 801CA900 001C6560  3C 60 80 42 */	lis r3, lbl_80422D48@ha
/* 801CA904 001C6564  38 63 2D 48 */	addi r3, r3, lbl_80422D48@l
/* 801CA908 001C6568  80 83 00 38 */	lwz r4, 0x38(r3)
/* 801CA90C 001C656C  48 00 00 20 */	b lbl_801CA92C
lbl_801CA910:
/* 801CA910 001C6570  80 01 00 10 */	lwz r0, 0x10(r1)
/* 801CA914 001C6574  1C 00 00 0A */	mulli r0, r0, 0xa
/* 801CA918 001C6578  7C 66 02 14 */	add r3, r6, r0
/* 801CA91C 001C657C  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CA920 001C6580  38 03 FF D0 */	addi r0, r3, -48
/* 801CA924 001C6584  90 01 00 10 */	stw r0, 0x10(r1)
/* 801CA928 001C6588  7C C6 07 74 */	extsb r6, r6
lbl_801CA92C:
/* 801CA92C 001C658C  2C 06 00 00 */	cmpwi r6, 0
/* 801CA930 001C6590  38 00 00 00 */	li r0, 0
/* 801CA934 001C6594  41 80 00 0C */	blt lbl_801CA940
/* 801CA938 001C6598  2C 06 01 00 */	cmpwi r6, 0x100
/* 801CA93C 001C659C  41 80 00 08 */	blt lbl_801CA944
lbl_801CA940:
/* 801CA940 001C65A0  38 00 00 01 */	li r0, 1
lbl_801CA944:
/* 801CA944 001C65A4  2C 00 00 00 */	cmpwi r0, 0
/* 801CA948 001C65A8  41 82 00 0C */	beq lbl_801CA954
/* 801CA94C 001C65AC  38 00 00 00 */	li r0, 0
/* 801CA950 001C65B0  48 00 00 14 */	b lbl_801CA964
lbl_801CA954:
/* 801CA954 001C65B4  80 64 00 08 */	lwz r3, 8(r4)
/* 801CA958 001C65B8  54 C0 08 3C */	slwi r0, r6, 1
/* 801CA95C 001C65BC  7C 03 02 2E */	lhzx r0, r3, r0
/* 801CA960 001C65C0  54 00 07 38 */	rlwinm r0, r0, 0, 0x1c, 0x1c
lbl_801CA964:
/* 801CA964 001C65C4  2C 00 00 00 */	cmpwi r0, 0
/* 801CA968 001C65C8  40 82 FF A8 */	bne lbl_801CA910
lbl_801CA96C:
/* 801CA96C 001C65CC  80 E1 00 10 */	lwz r7, 0x10(r1)
/* 801CA970 001C65D0  2C 07 01 FD */	cmpwi r7, 0x1fd
/* 801CA974 001C65D4  40 81 00 30 */	ble lbl_801CA9A4
/* 801CA978 001C65D8  38 00 00 FF */	li r0, 0xff
/* 801CA97C 001C65DC  80 A1 00 08 */	lwz r5, 8(r1)
/* 801CA980 001C65E0  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CA984 001C65E4  38 7F 00 01 */	addi r3, r31, 1
/* 801CA988 001C65E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801CA98C 001C65EC  80 81 00 0C */	lwz r4, 0xc(r1)
/* 801CA990 001C65F0  90 BE 00 00 */	stw r5, 0(r30)
/* 801CA994 001C65F4  90 9E 00 04 */	stw r4, 4(r30)
/* 801CA998 001C65F8  90 FE 00 08 */	stw r7, 8(r30)
/* 801CA99C 001C65FC  90 1E 00 0C */	stw r0, 0xc(r30)
/* 801CA9A0 001C6600  48 00 04 00 */	b lbl_801CADA0
lbl_801CA9A4:
/* 801CA9A4 001C6604  2C 06 00 2E */	cmpwi r6, 0x2e
/* 801CA9A8 001C6608  40 82 00 B8 */	bne lbl_801CAA60
/* 801CA9AC 001C660C  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CA9B0 001C6610  38 00 00 01 */	li r0, 1
/* 801CA9B4 001C6614  98 01 00 0A */	stb r0, 0xa(r1)
/* 801CA9B8 001C6618  7C C6 07 74 */	extsb r6, r6
/* 801CA9BC 001C661C  2C 06 00 2A */	cmpwi r6, 0x2a
/* 801CA9C0 001C6620  40 82 00 34 */	bne lbl_801CA9F4
/* 801CA9C4 001C6624  7F A3 EB 78 */	mr r3, r29
/* 801CA9C8 001C6628  38 80 00 01 */	li r4, 1
/* 801CA9CC 001C662C  4B FF C1 B5 */	bl __va_arg
/* 801CA9D0 001C6630  80 03 00 00 */	lwz r0, 0(r3)
/* 801CA9D4 001C6634  2C 00 00 00 */	cmpwi r0, 0
/* 801CA9D8 001C6638  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CA9DC 001C663C  40 80 00 0C */	bge lbl_801CA9E8
/* 801CA9E0 001C6640  38 00 00 00 */	li r0, 0
/* 801CA9E4 001C6644  98 01 00 0A */	stb r0, 0xa(r1)
lbl_801CA9E8:
/* 801CA9E8 001C6648  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CA9EC 001C664C  7C C6 07 74 */	extsb r6, r6
/* 801CA9F0 001C6650  48 00 00 70 */	b lbl_801CAA60
lbl_801CA9F4:
/* 801CA9F4 001C6654  3C 60 80 42 */	lis r3, lbl_80422D48@ha
/* 801CA9F8 001C6658  38 63 2D 48 */	addi r3, r3, lbl_80422D48@l
/* 801CA9FC 001C665C  80 83 00 38 */	lwz r4, 0x38(r3)
/* 801CAA00 001C6660  48 00 00 20 */	b lbl_801CAA20
lbl_801CAA04:
/* 801CAA04 001C6664  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801CAA08 001C6668  1C 00 00 0A */	mulli r0, r0, 0xa
/* 801CAA0C 001C666C  7C 66 02 14 */	add r3, r6, r0
/* 801CAA10 001C6670  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CAA14 001C6674  38 03 FF D0 */	addi r0, r3, -48
/* 801CAA18 001C6678  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CAA1C 001C667C  7C C6 07 74 */	extsb r6, r6
lbl_801CAA20:
/* 801CAA20 001C6680  2C 06 00 00 */	cmpwi r6, 0
/* 801CAA24 001C6684  38 00 00 00 */	li r0, 0
/* 801CAA28 001C6688  41 80 00 0C */	blt lbl_801CAA34
/* 801CAA2C 001C668C  2C 06 01 00 */	cmpwi r6, 0x100
/* 801CAA30 001C6690  41 80 00 08 */	blt lbl_801CAA38
lbl_801CAA34:
/* 801CAA34 001C6694  38 00 00 01 */	li r0, 1
lbl_801CAA38:
/* 801CAA38 001C6698  2C 00 00 00 */	cmpwi r0, 0
/* 801CAA3C 001C669C  41 82 00 0C */	beq lbl_801CAA48
/* 801CAA40 001C66A0  38 00 00 00 */	li r0, 0
/* 801CAA44 001C66A4  48 00 00 14 */	b lbl_801CAA58
lbl_801CAA48:
/* 801CAA48 001C66A8  80 64 00 08 */	lwz r3, 8(r4)
/* 801CAA4C 001C66AC  54 C0 08 3C */	slwi r0, r6, 1
/* 801CAA50 001C66B0  7C 03 02 2E */	lhzx r0, r3, r0
/* 801CAA54 001C66B4  54 00 07 38 */	rlwinm r0, r0, 0, 0x1c, 0x1c
lbl_801CAA58:
/* 801CAA58 001C66B8  2C 00 00 00 */	cmpwi r0, 0
/* 801CAA5C 001C66BC  40 82 FF A8 */	bne lbl_801CAA04
lbl_801CAA60:
/* 801CAA60 001C66C0  2C 06 00 6B */	cmpwi r6, 0x6b
/* 801CAA64 001C66C4  38 80 00 01 */	li r4, 1
/* 801CAA68 001C66C8  41 82 00 D8 */	beq lbl_801CAB40
/* 801CAA6C 001C66CC  40 80 00 28 */	bge lbl_801CAA94
/* 801CAA70 001C66D0  2C 06 00 68 */	cmpwi r6, 0x68
/* 801CAA74 001C66D4  41 82 00 44 */	beq lbl_801CAAB8
/* 801CAA78 001C66D8  40 80 00 10 */	bge lbl_801CAA88
/* 801CAA7C 001C66DC  2C 06 00 4C */	cmpwi r6, 0x4c
/* 801CAA80 001C66E0  41 82 00 90 */	beq lbl_801CAB10
/* 801CAA84 001C66E4  48 00 00 BC */	b lbl_801CAB40
lbl_801CAA88:
/* 801CAA88 001C66E8  2C 06 00 6A */	cmpwi r6, 0x6a
/* 801CAA8C 001C66EC  40 80 00 90 */	bge lbl_801CAB1C
/* 801CAA90 001C66F0  48 00 00 B0 */	b lbl_801CAB40
lbl_801CAA94:
/* 801CAA94 001C66F4  2C 06 00 74 */	cmpwi r6, 0x74
/* 801CAA98 001C66F8  41 82 00 90 */	beq lbl_801CAB28
/* 801CAA9C 001C66FC  40 80 00 10 */	bge lbl_801CAAAC
/* 801CAAA0 001C6700  2C 06 00 6D */	cmpwi r6, 0x6d
/* 801CAAA4 001C6704  40 80 00 9C */	bge lbl_801CAB40
/* 801CAAA8 001C6708  48 00 00 3C */	b lbl_801CAAE4
lbl_801CAAAC:
/* 801CAAAC 001C670C  2C 06 00 7A */	cmpwi r6, 0x7a
/* 801CAAB0 001C6710  41 82 00 84 */	beq lbl_801CAB34
/* 801CAAB4 001C6714  48 00 00 8C */	b lbl_801CAB40
lbl_801CAAB8:
/* 801CAAB8 001C6718  88 1F 00 01 */	lbz r0, 1(r31)
/* 801CAABC 001C671C  38 60 00 02 */	li r3, 2
/* 801CAAC0 001C6720  98 61 00 0C */	stb r3, 0xc(r1)
/* 801CAAC4 001C6724  7C 03 07 74 */	extsb r3, r0
/* 801CAAC8 001C6728  2C 03 00 68 */	cmpwi r3, 0x68
/* 801CAACC 001C672C  40 82 00 78 */	bne lbl_801CAB44
/* 801CAAD0 001C6730  38 00 00 01 */	li r0, 1
/* 801CAAD4 001C6734  7C 66 1B 78 */	mr r6, r3
/* 801CAAD8 001C6738  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAADC 001C673C  3B FF 00 01 */	addi r31, r31, 1
/* 801CAAE0 001C6740  48 00 00 64 */	b lbl_801CAB44
lbl_801CAAE4:
/* 801CAAE4 001C6744  88 1F 00 01 */	lbz r0, 1(r31)
/* 801CAAE8 001C6748  38 60 00 03 */	li r3, 3
/* 801CAAEC 001C674C  98 61 00 0C */	stb r3, 0xc(r1)
/* 801CAAF0 001C6750  7C 03 07 74 */	extsb r3, r0
/* 801CAAF4 001C6754  2C 03 00 6C */	cmpwi r3, 0x6c
/* 801CAAF8 001C6758  40 82 00 4C */	bne lbl_801CAB44
/* 801CAAFC 001C675C  38 00 00 04 */	li r0, 4
/* 801CAB00 001C6760  7C 66 1B 78 */	mr r6, r3
/* 801CAB04 001C6764  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAB08 001C6768  3B FF 00 01 */	addi r31, r31, 1
/* 801CAB0C 001C676C  48 00 00 38 */	b lbl_801CAB44
lbl_801CAB10:
/* 801CAB10 001C6770  38 00 00 09 */	li r0, 9
/* 801CAB14 001C6774  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAB18 001C6778  48 00 00 2C */	b lbl_801CAB44
lbl_801CAB1C:
/* 801CAB1C 001C677C  38 00 00 06 */	li r0, 6
/* 801CAB20 001C6780  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAB24 001C6784  48 00 00 20 */	b lbl_801CAB44
lbl_801CAB28:
/* 801CAB28 001C6788  38 00 00 08 */	li r0, 8
/* 801CAB2C 001C678C  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAB30 001C6790  48 00 00 14 */	b lbl_801CAB44
lbl_801CAB34:
/* 801CAB34 001C6794  38 00 00 07 */	li r0, 7
/* 801CAB38 001C6798  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAB3C 001C679C  48 00 00 08 */	b lbl_801CAB44
lbl_801CAB40:
/* 801CAB40 001C67A0  38 80 00 00 */	li r4, 0
lbl_801CAB44:
/* 801CAB44 001C67A4  2C 04 00 00 */	cmpwi r4, 0
/* 801CAB48 001C67A8  41 82 00 0C */	beq lbl_801CAB54
/* 801CAB4C 001C67AC  8C DF 00 01 */	lbzu r6, 1(r31)
/* 801CAB50 001C67B0  7C C6 07 74 */	extsb r6, r6
lbl_801CAB54:
/* 801CAB54 001C67B4  38 06 FF BF */	addi r0, r6, -65
/* 801CAB58 001C67B8  98 C1 00 0D */	stb r6, 0xd(r1)
/* 801CAB5C 001C67BC  28 00 00 37 */	cmplwi r0, 0x37
/* 801CAB60 001C67C0  41 81 02 14 */	bgt lbl_801CAD74
/* 801CAB64 001C67C4  3C 60 80 42 */	lis r3, lbl_80422D90@ha
/* 801CAB68 001C67C8  54 00 10 3A */	slwi r0, r0, 2
/* 801CAB6C 001C67CC  38 63 2D 90 */	addi r3, r3, lbl_80422D90@l
/* 801CAB70 001C67D0  7C 63 00 2E */	lwzx r3, r3, r0
/* 801CAB74 001C67D4  7C 69 03 A6 */	mtctr r3
/* 801CAB78 001C67D8  4E 80 04 20 */	bctr
/* 801CAB7C 001C67DC  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CAB80 001C67E0  28 00 00 09 */	cmplwi r0, 9
/* 801CAB84 001C67E4  40 82 00 10 */	bne lbl_801CAB94
/* 801CAB88 001C67E8  38 00 00 FF */	li r0, 0xff
/* 801CAB8C 001C67EC  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CAB90 001C67F0  48 00 01 EC */	b lbl_801CAD7C
lbl_801CAB94:
/* 801CAB94 001C67F4  88 01 00 0A */	lbz r0, 0xa(r1)
/* 801CAB98 001C67F8  2C 00 00 00 */	cmpwi r0, 0
/* 801CAB9C 001C67FC  40 82 00 10 */	bne lbl_801CABAC
/* 801CABA0 001C6800  38 00 00 01 */	li r0, 1
/* 801CABA4 001C6804  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CABA8 001C6808  48 00 01 D4 */	b lbl_801CAD7C
lbl_801CABAC:
/* 801CABAC 001C680C  88 01 00 08 */	lbz r0, 8(r1)
/* 801CABB0 001C6810  28 00 00 02 */	cmplwi r0, 2
/* 801CABB4 001C6814  40 82 01 C8 */	bne lbl_801CAD7C
/* 801CABB8 001C6818  38 00 00 01 */	li r0, 1
/* 801CABBC 001C681C  98 01 00 08 */	stb r0, 8(r1)
/* 801CABC0 001C6820  48 00 01 BC */	b lbl_801CAD7C
/* 801CABC4 001C6824  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CABC8 001C6828  28 00 00 02 */	cmplwi r0, 2
/* 801CABCC 001C682C  41 82 00 24 */	beq lbl_801CABF0
/* 801CABD0 001C6830  28 00 00 06 */	cmplwi r0, 6
/* 801CABD4 001C6834  41 82 00 1C */	beq lbl_801CABF0
/* 801CABD8 001C6838  28 00 00 07 */	cmplwi r0, 7
/* 801CABDC 001C683C  41 82 00 14 */	beq lbl_801CABF0
/* 801CABE0 001C6840  28 00 00 08 */	cmplwi r0, 8
/* 801CABE4 001C6844  41 82 00 0C */	beq lbl_801CABF0
/* 801CABE8 001C6848  28 00 00 04 */	cmplwi r0, 4
/* 801CABEC 001C684C  40 82 00 10 */	bne lbl_801CABFC
lbl_801CABF0:
/* 801CABF0 001C6850  38 00 00 FF */	li r0, 0xff
/* 801CABF4 001C6854  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CABF8 001C6858  48 00 01 84 */	b lbl_801CAD7C
lbl_801CABFC:
/* 801CABFC 001C685C  88 01 00 0A */	lbz r0, 0xa(r1)
/* 801CAC00 001C6860  2C 00 00 00 */	cmpwi r0, 0
/* 801CAC04 001C6864  40 82 01 78 */	bne lbl_801CAD7C
/* 801CAC08 001C6868  38 00 00 06 */	li r0, 6
/* 801CAC0C 001C686C  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CAC10 001C6870  48 00 01 6C */	b lbl_801CAD7C
/* 801CAC14 001C6874  88 01 00 0A */	lbz r0, 0xa(r1)
/* 801CAC18 001C6878  2C 00 00 00 */	cmpwi r0, 0
/* 801CAC1C 001C687C  40 82 00 0C */	bne lbl_801CAC28
/* 801CAC20 001C6880  38 00 00 0D */	li r0, 0xd
/* 801CAC24 001C6884  90 01 00 14 */	stw r0, 0x14(r1)
lbl_801CAC28:
/* 801CAC28 001C6888  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CAC2C 001C688C  28 00 00 02 */	cmplwi r0, 2
/* 801CAC30 001C6890  41 82 00 2C */	beq lbl_801CAC5C
/* 801CAC34 001C6894  28 00 00 06 */	cmplwi r0, 6
/* 801CAC38 001C6898  41 82 00 24 */	beq lbl_801CAC5C
/* 801CAC3C 001C689C  28 00 00 07 */	cmplwi r0, 7
/* 801CAC40 001C68A0  41 82 00 1C */	beq lbl_801CAC5C
/* 801CAC44 001C68A4  28 00 00 08 */	cmplwi r0, 8
/* 801CAC48 001C68A8  41 82 00 14 */	beq lbl_801CAC5C
/* 801CAC4C 001C68AC  28 00 00 04 */	cmplwi r0, 4
/* 801CAC50 001C68B0  41 82 00 0C */	beq lbl_801CAC5C
/* 801CAC54 001C68B4  28 00 00 01 */	cmplwi r0, 1
/* 801CAC58 001C68B8  40 82 01 24 */	bne lbl_801CAD7C
lbl_801CAC5C:
/* 801CAC5C 001C68BC  38 00 00 FF */	li r0, 0xff
/* 801CAC60 001C68C0  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CAC64 001C68C4  48 00 01 18 */	b lbl_801CAD7C
/* 801CAC68 001C68C8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801CAC6C 001C68CC  2C 00 00 00 */	cmpwi r0, 0
/* 801CAC70 001C68D0  40 82 00 0C */	bne lbl_801CAC7C
/* 801CAC74 001C68D4  38 00 00 01 */	li r0, 1
/* 801CAC78 001C68D8  90 01 00 14 */	stw r0, 0x14(r1)
lbl_801CAC7C:
/* 801CAC7C 001C68DC  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CAC80 001C68E0  28 00 00 02 */	cmplwi r0, 2
/* 801CAC84 001C68E4  41 82 00 2C */	beq lbl_801CACB0
/* 801CAC88 001C68E8  28 00 00 06 */	cmplwi r0, 6
/* 801CAC8C 001C68EC  41 82 00 24 */	beq lbl_801CACB0
/* 801CAC90 001C68F0  28 00 00 07 */	cmplwi r0, 7
/* 801CAC94 001C68F4  41 82 00 1C */	beq lbl_801CACB0
/* 801CAC98 001C68F8  28 00 00 08 */	cmplwi r0, 8
/* 801CAC9C 001C68FC  41 82 00 14 */	beq lbl_801CACB0
/* 801CACA0 001C6900  28 00 00 04 */	cmplwi r0, 4
/* 801CACA4 001C6904  41 82 00 0C */	beq lbl_801CACB0
/* 801CACA8 001C6908  28 00 00 01 */	cmplwi r0, 1
/* 801CACAC 001C690C  40 82 00 10 */	bne lbl_801CACBC
lbl_801CACB0:
/* 801CACB0 001C6910  38 00 00 FF */	li r0, 0xff
/* 801CACB4 001C6914  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CACB8 001C6918  48 00 00 C4 */	b lbl_801CAD7C
lbl_801CACBC:
/* 801CACBC 001C691C  88 01 00 0A */	lbz r0, 0xa(r1)
/* 801CACC0 001C6920  2C 00 00 00 */	cmpwi r0, 0
/* 801CACC4 001C6924  40 82 00 B8 */	bne lbl_801CAD7C
/* 801CACC8 001C6928  38 00 00 06 */	li r0, 6
/* 801CACCC 001C692C  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CACD0 001C6930  48 00 00 AC */	b lbl_801CAD7C
/* 801CACD4 001C6934  38 A0 00 78 */	li r5, 0x78
/* 801CACD8 001C6938  38 80 00 01 */	li r4, 1
/* 801CACDC 001C693C  38 60 00 03 */	li r3, 3
/* 801CACE0 001C6940  38 00 00 08 */	li r0, 8
/* 801CACE4 001C6944  98 A1 00 0D */	stb r5, 0xd(r1)
/* 801CACE8 001C6948  98 81 00 0B */	stb r4, 0xb(r1)
/* 801CACEC 001C694C  98 61 00 0C */	stb r3, 0xc(r1)
/* 801CACF0 001C6950  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CACF4 001C6954  48 00 00 88 */	b lbl_801CAD7C
/* 801CACF8 001C6958  88 61 00 0C */	lbz r3, 0xc(r1)
/* 801CACFC 001C695C  28 03 00 03 */	cmplwi r3, 3
/* 801CAD00 001C6960  40 82 00 10 */	bne lbl_801CAD10
/* 801CAD04 001C6964  38 00 00 05 */	li r0, 5
/* 801CAD08 001C6968  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAD0C 001C696C  48 00 00 70 */	b lbl_801CAD7C
lbl_801CAD10:
/* 801CAD10 001C6970  88 01 00 0A */	lbz r0, 0xa(r1)
/* 801CAD14 001C6974  2C 00 00 00 */	cmpwi r0, 0
/* 801CAD18 001C6978  40 82 00 0C */	bne lbl_801CAD24
/* 801CAD1C 001C697C  2C 03 00 00 */	cmpwi r3, 0
/* 801CAD20 001C6980  41 82 00 5C */	beq lbl_801CAD7C
lbl_801CAD24:
/* 801CAD24 001C6984  38 00 00 FF */	li r0, 0xff
/* 801CAD28 001C6988  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CAD2C 001C698C  48 00 00 50 */	b lbl_801CAD7C
/* 801CAD30 001C6990  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CAD34 001C6994  28 00 00 03 */	cmplwi r0, 3
/* 801CAD38 001C6998  40 82 00 10 */	bne lbl_801CAD48
/* 801CAD3C 001C699C  38 00 00 05 */	li r0, 5
/* 801CAD40 001C69A0  98 01 00 0C */	stb r0, 0xc(r1)
/* 801CAD44 001C69A4  48 00 00 38 */	b lbl_801CAD7C
lbl_801CAD48:
/* 801CAD48 001C69A8  2C 00 00 00 */	cmpwi r0, 0
/* 801CAD4C 001C69AC  41 82 00 30 */	beq lbl_801CAD7C
/* 801CAD50 001C69B0  38 00 00 FF */	li r0, 0xff
/* 801CAD54 001C69B4  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CAD58 001C69B8  48 00 00 24 */	b lbl_801CAD7C
/* 801CAD5C 001C69BC  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CAD60 001C69C0  28 00 00 09 */	cmplwi r0, 9
/* 801CAD64 001C69C4  40 82 00 18 */	bne lbl_801CAD7C
/* 801CAD68 001C69C8  38 00 00 FF */	li r0, 0xff
/* 801CAD6C 001C69CC  98 01 00 0D */	stb r0, 0xd(r1)
/* 801CAD70 001C69D0  48 00 00 0C */	b lbl_801CAD7C
lbl_801CAD74:
/* 801CAD74 001C69D4  38 00 00 FF */	li r0, 0xff
/* 801CAD78 001C69D8  98 01 00 0D */	stb r0, 0xd(r1)
lbl_801CAD7C:
/* 801CAD7C 001C69DC  80 C1 00 08 */	lwz r6, 8(r1)
/* 801CAD80 001C69E0  38 7F 00 01 */	addi r3, r31, 1
/* 801CAD84 001C69E4  80 A1 00 0C */	lwz r5, 0xc(r1)
/* 801CAD88 001C69E8  80 81 00 10 */	lwz r4, 0x10(r1)
/* 801CAD8C 001C69EC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801CAD90 001C69F0  90 DE 00 00 */	stw r6, 0(r30)
/* 801CAD94 001C69F4  90 BE 00 04 */	stw r5, 4(r30)
/* 801CAD98 001C69F8  90 9E 00 08 */	stw r4, 8(r30)
/* 801CAD9C 001C69FC  90 1E 00 0C */	stw r0, 0xc(r30)
lbl_801CADA0:
/* 801CADA0 001C6A00  80 01 00 34 */	lwz r0, 0x34(r1)
/* 801CADA4 001C6A04  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 801CADA8 001C6A08  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 801CADAC 001C6A0C  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 801CADB0 001C6A10  7C 08 03 A6 */	mtlr r0
/* 801CADB4 001C6A14  38 21 00 30 */	addi r1, r1, 0x30
/* 801CADB8 001C6A18  4E 80 00 20 */	blr

.global long2str
long2str:
/* 801CADBC 001C6A1C  39 00 00 00 */	li r8, 0
/* 801CADC0 001C6A20  2C 03 00 00 */	cmpwi r3, 0
/* 801CADC4 001C6A24  99 04 FF FF */	stb r8, -1(r4)
/* 801CADC8 001C6A28  38 C4 FF FF */	addi r6, r4, -1
/* 801CADCC 001C6A2C  38 E0 00 00 */	li r7, 0
/* 801CADD0 001C6A30  40 82 00 30 */	bne lbl_801CAE00
/* 801CADD4 001C6A34  80 05 00 0C */	lwz r0, 0xc(r5)
/* 801CADD8 001C6A38  2C 00 00 00 */	cmpwi r0, 0
/* 801CADDC 001C6A3C  40 82 00 24 */	bne lbl_801CAE00
/* 801CADE0 001C6A40  88 05 00 03 */	lbz r0, 3(r5)
/* 801CADE4 001C6A44  2C 00 00 00 */	cmpwi r0, 0
/* 801CADE8 001C6A48  41 82 00 10 */	beq lbl_801CADF8
/* 801CADEC 001C6A4C  88 05 00 05 */	lbz r0, 5(r5)
/* 801CADF0 001C6A50  28 00 00 6F */	cmplwi r0, 0x6f
/* 801CADF4 001C6A54  41 82 00 0C */	beq lbl_801CAE00
lbl_801CADF8:
/* 801CADF8 001C6A58  7C C3 33 78 */	mr r3, r6
/* 801CADFC 001C6A5C  4E 80 00 20 */	blr
lbl_801CAE00:
/* 801CAE00 001C6A60  89 25 00 05 */	lbz r9, 5(r5)
/* 801CAE04 001C6A64  39 49 FF A8 */	addi r10, r9, -88
/* 801CAE08 001C6A68  28 0A 00 20 */	cmplwi r10, 0x20
/* 801CAE0C 001C6A6C  41 81 00 6C */	bgt lbl_801CAE78
/* 801CAE10 001C6A70  3D 20 80 42 */	lis r9, lbl_80422EB4@ha
/* 801CAE14 001C6A74  55 4A 10 3A */	slwi r10, r10, 2
/* 801CAE18 001C6A78  39 29 2E B4 */	addi r9, r9, lbl_80422EB4@l
/* 801CAE1C 001C6A7C  7D 29 50 2E */	lwzx r9, r9, r10
/* 801CAE20 001C6A80  7D 29 03 A6 */	mtctr r9
/* 801CAE24 001C6A84  4E 80 04 20 */	bctr
/* 801CAE28 001C6A88  2C 03 00 00 */	cmpwi r3, 0
/* 801CAE2C 001C6A8C  38 00 00 0A */	li r0, 0xa
/* 801CAE30 001C6A90  40 80 00 48 */	bge lbl_801CAE78
/* 801CAE34 001C6A94  3D 03 80 00 */	addis r8, r3, 0x8000
/* 801CAE38 001C6A98  28 08 00 00 */	cmplwi r8, 0
/* 801CAE3C 001C6A9C  41 82 00 08 */	beq lbl_801CAE44
/* 801CAE40 001C6AA0  7C 63 00 D0 */	neg r3, r3
lbl_801CAE44:
/* 801CAE44 001C6AA4  39 00 00 01 */	li r8, 1
/* 801CAE48 001C6AA8  48 00 00 30 */	b lbl_801CAE78
/* 801CAE4C 001C6AAC  39 20 00 00 */	li r9, 0
/* 801CAE50 001C6AB0  38 00 00 08 */	li r0, 8
/* 801CAE54 001C6AB4  99 25 00 01 */	stb r9, 1(r5)
/* 801CAE58 001C6AB8  48 00 00 20 */	b lbl_801CAE78
/* 801CAE5C 001C6ABC  39 20 00 00 */	li r9, 0
/* 801CAE60 001C6AC0  38 00 00 0A */	li r0, 0xa
/* 801CAE64 001C6AC4  99 25 00 01 */	stb r9, 1(r5)
/* 801CAE68 001C6AC8  48 00 00 10 */	b lbl_801CAE78
/* 801CAE6C 001C6ACC  39 20 00 00 */	li r9, 0
/* 801CAE70 001C6AD0  38 00 00 10 */	li r0, 0x10
/* 801CAE74 001C6AD4  99 25 00 01 */	stb r9, 1(r5)
lbl_801CAE78:
/* 801CAE78 001C6AD8  7D 23 03 96 */	divwu r9, r3, r0
/* 801CAE7C 001C6ADC  7D 29 01 D6 */	mullw r9, r9, r0
/* 801CAE80 001C6AE0  7D 69 18 50 */	subf r11, r9, r3
/* 801CAE84 001C6AE4  7C 63 03 96 */	divwu r3, r3, r0
/* 801CAE88 001C6AE8  2C 0B 00 0A */	cmpwi r11, 0xa
/* 801CAE8C 001C6AEC  40 80 00 0C */	bge lbl_801CAE98
/* 801CAE90 001C6AF0  39 6B 00 30 */	addi r11, r11, 0x30
/* 801CAE94 001C6AF4  48 00 00 1C */	b lbl_801CAEB0
lbl_801CAE98:
/* 801CAE98 001C6AF8  89 25 00 05 */	lbz r9, 5(r5)
/* 801CAE9C 001C6AFC  39 4B 00 37 */	addi r10, r11, 0x37
/* 801CAEA0 001C6B00  28 09 00 78 */	cmplwi r9, 0x78
/* 801CAEA4 001C6B04  40 82 00 08 */	bne lbl_801CAEAC
/* 801CAEA8 001C6B08  39 4B 00 57 */	addi r10, r11, 0x57
lbl_801CAEAC:
/* 801CAEAC 001C6B0C  7D 4B 53 78 */	mr r11, r10
lbl_801CAEB0:
/* 801CAEB0 001C6B10  2C 03 00 00 */	cmpwi r3, 0
/* 801CAEB4 001C6B14  99 66 FF FF */	stb r11, -1(r6)
/* 801CAEB8 001C6B18  38 C6 FF FF */	addi r6, r6, -1
/* 801CAEBC 001C6B1C  38 E7 00 01 */	addi r7, r7, 1
/* 801CAEC0 001C6B20  40 82 FF B8 */	bne lbl_801CAE78
/* 801CAEC4 001C6B24  28 00 00 08 */	cmplwi r0, 8
/* 801CAEC8 001C6B28  40 82 00 28 */	bne lbl_801CAEF0
/* 801CAECC 001C6B2C  88 65 00 03 */	lbz r3, 3(r5)
/* 801CAED0 001C6B30  2C 03 00 00 */	cmpwi r3, 0
/* 801CAED4 001C6B34  41 82 00 1C */	beq lbl_801CAEF0
/* 801CAED8 001C6B38  88 66 00 00 */	lbz r3, 0(r6)
/* 801CAEDC 001C6B3C  2C 03 00 30 */	cmpwi r3, 0x30
/* 801CAEE0 001C6B40  41 82 00 10 */	beq lbl_801CAEF0
/* 801CAEE4 001C6B44  38 60 00 30 */	li r3, 0x30
/* 801CAEE8 001C6B48  38 E7 00 01 */	addi r7, r7, 1
/* 801CAEEC 001C6B4C  9C 66 FF FF */	stbu r3, -1(r6)
lbl_801CAEF0:
/* 801CAEF0 001C6B50  88 65 00 00 */	lbz r3, 0(r5)
/* 801CAEF4 001C6B54  28 03 00 02 */	cmplwi r3, 2
/* 801CAEF8 001C6B58  40 82 00 4C */	bne lbl_801CAF44
/* 801CAEFC 001C6B5C  80 65 00 08 */	lwz r3, 8(r5)
/* 801CAF00 001C6B60  2C 08 00 00 */	cmpwi r8, 0
/* 801CAF04 001C6B64  90 65 00 0C */	stw r3, 0xc(r5)
/* 801CAF08 001C6B68  40 82 00 10 */	bne lbl_801CAF18
/* 801CAF0C 001C6B6C  88 65 00 01 */	lbz r3, 1(r5)
/* 801CAF10 001C6B70  2C 03 00 00 */	cmpwi r3, 0
/* 801CAF14 001C6B74  41 82 00 10 */	beq lbl_801CAF24
lbl_801CAF18:
/* 801CAF18 001C6B78  80 65 00 0C */	lwz r3, 0xc(r5)
/* 801CAF1C 001C6B7C  38 63 FF FF */	addi r3, r3, -1
/* 801CAF20 001C6B80  90 65 00 0C */	stw r3, 0xc(r5)
lbl_801CAF24:
/* 801CAF24 001C6B84  28 00 00 10 */	cmplwi r0, 0x10
/* 801CAF28 001C6B88  40 82 00 1C */	bne lbl_801CAF44
/* 801CAF2C 001C6B8C  88 65 00 03 */	lbz r3, 3(r5)
/* 801CAF30 001C6B90  2C 03 00 00 */	cmpwi r3, 0
/* 801CAF34 001C6B94  41 82 00 10 */	beq lbl_801CAF44
/* 801CAF38 001C6B98  80 65 00 0C */	lwz r3, 0xc(r5)
/* 801CAF3C 001C6B9C  38 63 FF FE */	addi r3, r3, -2
/* 801CAF40 001C6BA0  90 65 00 0C */	stw r3, 0xc(r5)
lbl_801CAF44:
/* 801CAF44 001C6BA4  81 25 00 0C */	lwz r9, 0xc(r5)
/* 801CAF48 001C6BA8  7C 66 20 50 */	subf r3, r6, r4
/* 801CAF4C 001C6BAC  7C 69 1A 14 */	add r3, r9, r3
/* 801CAF50 001C6BB0  2C 03 01 FD */	cmpwi r3, 0x1fd
/* 801CAF54 001C6BB4  40 81 00 0C */	ble lbl_801CAF60
/* 801CAF58 001C6BB8  38 60 00 00 */	li r3, 0
/* 801CAF5C 001C6BBC  4E 80 00 20 */	blr
lbl_801CAF60:
/* 801CAF60 001C6BC0  38 80 00 30 */	li r4, 0x30
/* 801CAF64 001C6BC4  48 00 00 0C */	b lbl_801CAF70
lbl_801CAF68:
/* 801CAF68 001C6BC8  9C 86 FF FF */	stbu r4, -1(r6)
/* 801CAF6C 001C6BCC  38 E7 00 01 */	addi r7, r7, 1
lbl_801CAF70:
/* 801CAF70 001C6BD0  80 65 00 0C */	lwz r3, 0xc(r5)
/* 801CAF74 001C6BD4  7C 07 18 00 */	cmpw r7, r3
/* 801CAF78 001C6BD8  41 80 FF F0 */	blt lbl_801CAF68
/* 801CAF7C 001C6BDC  28 00 00 10 */	cmplwi r0, 0x10
/* 801CAF80 001C6BE0  40 82 00 20 */	bne lbl_801CAFA0
/* 801CAF84 001C6BE4  88 05 00 03 */	lbz r0, 3(r5)
/* 801CAF88 001C6BE8  2C 00 00 00 */	cmpwi r0, 0
/* 801CAF8C 001C6BEC  41 82 00 14 */	beq lbl_801CAFA0
/* 801CAF90 001C6BF0  88 65 00 05 */	lbz r3, 5(r5)
/* 801CAF94 001C6BF4  38 00 00 30 */	li r0, 0x30
/* 801CAF98 001C6BF8  98 66 FF FF */	stb r3, -1(r6)
/* 801CAF9C 001C6BFC  9C 06 FF FE */	stbu r0, -2(r6)
lbl_801CAFA0:
/* 801CAFA0 001C6C00  2C 08 00 00 */	cmpwi r8, 0
/* 801CAFA4 001C6C04  41 82 00 10 */	beq lbl_801CAFB4
/* 801CAFA8 001C6C08  38 00 00 2D */	li r0, 0x2d
/* 801CAFAC 001C6C0C  9C 06 FF FF */	stbu r0, -1(r6)
/* 801CAFB0 001C6C10  48 00 00 2C */	b lbl_801CAFDC
lbl_801CAFB4:
/* 801CAFB4 001C6C14  88 05 00 01 */	lbz r0, 1(r5)
/* 801CAFB8 001C6C18  28 00 00 01 */	cmplwi r0, 1
/* 801CAFBC 001C6C1C  40 82 00 10 */	bne lbl_801CAFCC
/* 801CAFC0 001C6C20  38 00 00 2B */	li r0, 0x2b
/* 801CAFC4 001C6C24  9C 06 FF FF */	stbu r0, -1(r6)
/* 801CAFC8 001C6C28  48 00 00 14 */	b lbl_801CAFDC
lbl_801CAFCC:
/* 801CAFCC 001C6C2C  28 00 00 02 */	cmplwi r0, 2
/* 801CAFD0 001C6C30  40 82 00 0C */	bne lbl_801CAFDC
/* 801CAFD4 001C6C34  38 00 00 20 */	li r0, 0x20
/* 801CAFD8 001C6C38  9C 06 FF FF */	stbu r0, -1(r6)
lbl_801CAFDC:
/* 801CAFDC 001C6C3C  7C C3 33 78 */	mr r3, r6
/* 801CAFE0 001C6C40  4E 80 00 20 */	blr

.global longlong2str
longlong2str:
/* 801CAFE4 001C6C44  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 801CAFE8 001C6C48  7C 08 02 A6 */	mflr r0
/* 801CAFEC 001C6C4C  90 01 00 34 */	stw r0, 0x34(r1)
/* 801CAFF0 001C6C50  7C 80 1B 79 */	or. r0, r4, r3
/* 801CAFF4 001C6C54  BE C1 00 08 */	stmw r22, 8(r1)
/* 801CAFF8 001C6C58  3B 20 00 00 */	li r25, 0
/* 801CAFFC 001C6C5C  7C 7F 1B 78 */	mr r31, r3
/* 801CB000 001C6C60  7C 9E 23 78 */	mr r30, r4
/* 801CB004 001C6C64  7C B7 2B 78 */	mr r23, r5
/* 801CB008 001C6C68  7C D8 33 78 */	mr r24, r6
/* 801CB00C 001C6C6C  3B 65 FF FF */	addi r27, r5, -1
/* 801CB010 001C6C70  3B 40 00 00 */	li r26, 0
/* 801CB014 001C6C74  9B 25 FF FF */	stb r25, -1(r5)
/* 801CB018 001C6C78  40 82 00 30 */	bne lbl_801CB048
/* 801CB01C 001C6C7C  80 06 00 0C */	lwz r0, 0xc(r6)
/* 801CB020 001C6C80  2C 00 00 00 */	cmpwi r0, 0
/* 801CB024 001C6C84  40 82 00 24 */	bne lbl_801CB048
/* 801CB028 001C6C88  88 06 00 03 */	lbz r0, 3(r6)
/* 801CB02C 001C6C8C  2C 00 00 00 */	cmpwi r0, 0
/* 801CB030 001C6C90  41 82 00 10 */	beq lbl_801CB040
/* 801CB034 001C6C94  88 06 00 05 */	lbz r0, 5(r6)
/* 801CB038 001C6C98  28 00 00 6F */	cmplwi r0, 0x6f
/* 801CB03C 001C6C9C  41 82 00 0C */	beq lbl_801CB048
lbl_801CB040:
/* 801CB040 001C6CA0  7F 63 DB 78 */	mr r3, r27
/* 801CB044 001C6CA4  48 00 02 2C */	b lbl_801CB270
lbl_801CB048:
/* 801CB048 001C6CA8  88 A6 00 05 */	lbz r5, 5(r6)
/* 801CB04C 001C6CAC  38 05 FF A8 */	addi r0, r5, -88
/* 801CB050 001C6CB0  28 00 00 20 */	cmplwi r0, 0x20
/* 801CB054 001C6CB4  41 81 00 8C */	bgt lbl_801CB0E0
/* 801CB058 001C6CB8  3C A0 80 42 */	lis r5, lbl_80422F38@ha
/* 801CB05C 001C6CBC  54 00 10 3A */	slwi r0, r0, 2
/* 801CB060 001C6CC0  38 A5 2F 38 */	addi r5, r5, lbl_80422F38@l
/* 801CB064 001C6CC4  7C A5 00 2E */	lwzx r5, r5, r0
/* 801CB068 001C6CC8  7C A9 03 A6 */	mtctr r5
/* 801CB06C 001C6CCC  4E 80 04 20 */	bctr
/* 801CB070 001C6CD0  3B A0 00 00 */	li r29, 0
/* 801CB074 001C6CD4  6C 60 80 00 */	xoris r0, r3, 0x8000
/* 801CB078 001C6CD8  6F A6 80 00 */	xoris r6, r29, 0x8000
/* 801CB07C 001C6CDC  3B 80 00 0A */	li r28, 0xa
/* 801CB080 001C6CE0  7C BD 20 10 */	subfc r5, r29, r4
/* 801CB084 001C6CE4  7C C6 01 10 */	subfe r6, r6, r0
/* 801CB088 001C6CE8  7C C0 01 10 */	subfe r6, r0, r0
/* 801CB08C 001C6CEC  7C C6 00 D1 */	neg. r6, r6
/* 801CB090 001C6CF0  41 82 00 50 */	beq lbl_801CB0E0
/* 801CB094 001C6CF4  3C 00 80 00 */	lis r0, 0x8000
/* 801CB098 001C6CF8  7C 60 02 78 */	xor r0, r3, r0
/* 801CB09C 001C6CFC  7C 80 03 79 */	or. r0, r4, r0
/* 801CB0A0 001C6D00  41 82 00 0C */	beq lbl_801CB0AC
/* 801CB0A4 001C6D04  23 C4 00 00 */	subfic r30, r4, 0
/* 801CB0A8 001C6D08  7F E3 01 90 */	subfze r31, r3
lbl_801CB0AC:
/* 801CB0AC 001C6D0C  3B 20 00 01 */	li r25, 1
/* 801CB0B0 001C6D10  48 00 00 30 */	b lbl_801CB0E0
/* 801CB0B4 001C6D14  3B A0 00 00 */	li r29, 0
/* 801CB0B8 001C6D18  3B 80 00 08 */	li r28, 8
/* 801CB0BC 001C6D1C  9B A6 00 01 */	stb r29, 1(r6)
/* 801CB0C0 001C6D20  48 00 00 20 */	b lbl_801CB0E0
/* 801CB0C4 001C6D24  3B A0 00 00 */	li r29, 0
/* 801CB0C8 001C6D28  3B 80 00 0A */	li r28, 0xa
/* 801CB0CC 001C6D2C  9B A6 00 01 */	stb r29, 1(r6)
/* 801CB0D0 001C6D30  48 00 00 10 */	b lbl_801CB0E0
/* 801CB0D4 001C6D34  3B A0 00 00 */	li r29, 0
/* 801CB0D8 001C6D38  3B 80 00 10 */	li r28, 0x10
/* 801CB0DC 001C6D3C  9B A6 00 01 */	stb r29, 1(r6)
lbl_801CB0E0:
/* 801CB0E0 001C6D40  7F E3 FB 78 */	mr r3, r31
/* 801CB0E4 001C6D44  7F C4 F3 78 */	mr r4, r30
/* 801CB0E8 001C6D48  7F A5 EB 78 */	mr r5, r29
/* 801CB0EC 001C6D4C  7F 86 E3 78 */	mr r6, r28
/* 801CB0F0 001C6D50  4B FF C2 C1 */	bl __mod2u
/* 801CB0F4 001C6D54  7C 96 23 78 */	mr r22, r4
/* 801CB0F8 001C6D58  7F E3 FB 78 */	mr r3, r31
/* 801CB0FC 001C6D5C  7F C4 F3 78 */	mr r4, r30
/* 801CB100 001C6D60  7F A5 EB 78 */	mr r5, r29
/* 801CB104 001C6D64  7F 86 E3 78 */	mr r6, r28
/* 801CB108 001C6D68  4B FF C0 85 */	bl __div2u
/* 801CB10C 001C6D6C  2C 16 00 0A */	cmpwi r22, 0xa
/* 801CB110 001C6D70  7C 9E 23 78 */	mr r30, r4
/* 801CB114 001C6D74  7C 7F 1B 78 */	mr r31, r3
/* 801CB118 001C6D78  40 80 00 0C */	bge lbl_801CB124
/* 801CB11C 001C6D7C  38 B6 00 30 */	addi r5, r22, 0x30
/* 801CB120 001C6D80  48 00 00 18 */	b lbl_801CB138
lbl_801CB124:
/* 801CB124 001C6D84  88 18 00 05 */	lbz r0, 5(r24)
/* 801CB128 001C6D88  38 B6 00 37 */	addi r5, r22, 0x37
/* 801CB12C 001C6D8C  28 00 00 78 */	cmplwi r0, 0x78
/* 801CB130 001C6D90  40 82 00 08 */	bne lbl_801CB138
/* 801CB134 001C6D94  38 B6 00 57 */	addi r5, r22, 0x57
lbl_801CB138:
/* 801CB138 001C6D98  7C 80 1B 79 */	or. r0, r4, r3
/* 801CB13C 001C6D9C  9C BB FF FF */	stbu r5, -1(r27)
/* 801CB140 001C6DA0  3B 5A 00 01 */	addi r26, r26, 1
/* 801CB144 001C6DA4  40 82 FF 9C */	bne lbl_801CB0E0
/* 801CB148 001C6DA8  6B 80 00 08 */	xori r0, r28, 8
/* 801CB14C 001C6DAC  7C 00 EB 79 */	or. r0, r0, r29
/* 801CB150 001C6DB0  40 82 00 28 */	bne lbl_801CB178
/* 801CB154 001C6DB4  88 18 00 03 */	lbz r0, 3(r24)
/* 801CB158 001C6DB8  2C 00 00 00 */	cmpwi r0, 0
/* 801CB15C 001C6DBC  41 82 00 1C */	beq lbl_801CB178
/* 801CB160 001C6DC0  88 1B 00 00 */	lbz r0, 0(r27)
/* 801CB164 001C6DC4  2C 00 00 30 */	cmpwi r0, 0x30
/* 801CB168 001C6DC8  41 82 00 10 */	beq lbl_801CB178
/* 801CB16C 001C6DCC  38 00 00 30 */	li r0, 0x30
/* 801CB170 001C6DD0  3B 5A 00 01 */	addi r26, r26, 1
/* 801CB174 001C6DD4  9C 1B FF FF */	stbu r0, -1(r27)
lbl_801CB178:
/* 801CB178 001C6DD8  88 18 00 00 */	lbz r0, 0(r24)
/* 801CB17C 001C6DDC  28 00 00 02 */	cmplwi r0, 2
/* 801CB180 001C6DE0  40 82 00 50 */	bne lbl_801CB1D0
/* 801CB184 001C6DE4  80 18 00 08 */	lwz r0, 8(r24)
/* 801CB188 001C6DE8  2C 19 00 00 */	cmpwi r25, 0
/* 801CB18C 001C6DEC  90 18 00 0C */	stw r0, 0xc(r24)
/* 801CB190 001C6DF0  40 82 00 10 */	bne lbl_801CB1A0
/* 801CB194 001C6DF4  88 18 00 01 */	lbz r0, 1(r24)
/* 801CB198 001C6DF8  2C 00 00 00 */	cmpwi r0, 0
/* 801CB19C 001C6DFC  41 82 00 10 */	beq lbl_801CB1AC
lbl_801CB1A0:
/* 801CB1A0 001C6E00  80 78 00 0C */	lwz r3, 0xc(r24)
/* 801CB1A4 001C6E04  38 03 FF FF */	addi r0, r3, -1
/* 801CB1A8 001C6E08  90 18 00 0C */	stw r0, 0xc(r24)
lbl_801CB1AC:
/* 801CB1AC 001C6E0C  6B 80 00 10 */	xori r0, r28, 0x10
/* 801CB1B0 001C6E10  7C 00 EB 79 */	or. r0, r0, r29
/* 801CB1B4 001C6E14  40 82 00 1C */	bne lbl_801CB1D0
/* 801CB1B8 001C6E18  88 18 00 03 */	lbz r0, 3(r24)
/* 801CB1BC 001C6E1C  2C 00 00 00 */	cmpwi r0, 0
/* 801CB1C0 001C6E20  41 82 00 10 */	beq lbl_801CB1D0
/* 801CB1C4 001C6E24  80 78 00 0C */	lwz r3, 0xc(r24)
/* 801CB1C8 001C6E28  38 03 FF FE */	addi r0, r3, -2
/* 801CB1CC 001C6E2C  90 18 00 0C */	stw r0, 0xc(r24)
lbl_801CB1D0:
/* 801CB1D0 001C6E30  80 78 00 0C */	lwz r3, 0xc(r24)
/* 801CB1D4 001C6E34  7C 1B B8 50 */	subf r0, r27, r23
/* 801CB1D8 001C6E38  7C 03 02 14 */	add r0, r3, r0
/* 801CB1DC 001C6E3C  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 801CB1E0 001C6E40  40 81 00 0C */	ble lbl_801CB1EC
/* 801CB1E4 001C6E44  38 60 00 00 */	li r3, 0
/* 801CB1E8 001C6E48  48 00 00 88 */	b lbl_801CB270
lbl_801CB1EC:
/* 801CB1EC 001C6E4C  38 60 00 30 */	li r3, 0x30
/* 801CB1F0 001C6E50  48 00 00 0C */	b lbl_801CB1FC
lbl_801CB1F4:
/* 801CB1F4 001C6E54  9C 7B FF FF */	stbu r3, -1(r27)
/* 801CB1F8 001C6E58  3B 5A 00 01 */	addi r26, r26, 1
lbl_801CB1FC:
/* 801CB1FC 001C6E5C  80 18 00 0C */	lwz r0, 0xc(r24)
/* 801CB200 001C6E60  7C 1A 00 00 */	cmpw r26, r0
/* 801CB204 001C6E64  41 80 FF F0 */	blt lbl_801CB1F4
/* 801CB208 001C6E68  6B 80 00 10 */	xori r0, r28, 0x10
/* 801CB20C 001C6E6C  7C 00 EB 79 */	or. r0, r0, r29
/* 801CB210 001C6E70  40 82 00 20 */	bne lbl_801CB230
/* 801CB214 001C6E74  88 18 00 03 */	lbz r0, 3(r24)
/* 801CB218 001C6E78  2C 00 00 00 */	cmpwi r0, 0
/* 801CB21C 001C6E7C  41 82 00 14 */	beq lbl_801CB230
/* 801CB220 001C6E80  88 78 00 05 */	lbz r3, 5(r24)
/* 801CB224 001C6E84  38 00 00 30 */	li r0, 0x30
/* 801CB228 001C6E88  98 7B FF FF */	stb r3, -1(r27)
/* 801CB22C 001C6E8C  9C 1B FF FE */	stbu r0, -2(r27)
lbl_801CB230:
/* 801CB230 001C6E90  2C 19 00 00 */	cmpwi r25, 0
/* 801CB234 001C6E94  41 82 00 10 */	beq lbl_801CB244
/* 801CB238 001C6E98  38 00 00 2D */	li r0, 0x2d
/* 801CB23C 001C6E9C  9C 1B FF FF */	stbu r0, -1(r27)
/* 801CB240 001C6EA0  48 00 00 2C */	b lbl_801CB26C
lbl_801CB244:
/* 801CB244 001C6EA4  88 18 00 01 */	lbz r0, 1(r24)
/* 801CB248 001C6EA8  28 00 00 01 */	cmplwi r0, 1
/* 801CB24C 001C6EAC  40 82 00 10 */	bne lbl_801CB25C
/* 801CB250 001C6EB0  38 00 00 2B */	li r0, 0x2b
/* 801CB254 001C6EB4  9C 1B FF FF */	stbu r0, -1(r27)
/* 801CB258 001C6EB8  48 00 00 14 */	b lbl_801CB26C
lbl_801CB25C:
/* 801CB25C 001C6EBC  28 00 00 02 */	cmplwi r0, 2
/* 801CB260 001C6EC0  40 82 00 0C */	bne lbl_801CB26C
/* 801CB264 001C6EC4  38 00 00 20 */	li r0, 0x20
/* 801CB268 001C6EC8  9C 1B FF FF */	stbu r0, -1(r27)
lbl_801CB26C:
/* 801CB26C 001C6ECC  7F 63 DB 78 */	mr r3, r27
lbl_801CB270:
/* 801CB270 001C6ED0  BA C1 00 08 */	lmw r22, 8(r1)
/* 801CB274 001C6ED4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 801CB278 001C6ED8  7C 08 03 A6 */	mtlr r0
/* 801CB27C 001C6EDC  38 21 00 30 */	addi r1, r1, 0x30
/* 801CB280 001C6EE0  4E 80 00 20 */	blr

.global double2hex
double2hex:
/* 801CB284 001C6EE4  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 801CB288 001C6EE8  7C 08 02 A6 */	mflr r0
/* 801CB28C 001C6EEC  90 01 00 94 */	stw r0, 0x94(r1)
/* 801CB290 001C6EF0  DB E1 00 80 */	stfd f31, 0x80(r1)
/* 801CB294 001C6EF4  F3 E1 00 88 */	psq_st f31, 136(r1), 0, qr0
/* 801CB298 001C6EF8  3C A0 80 42 */	lis r5, lbl_80422B98@ha
/* 801CB29C 001C6EFC  80 04 00 0C */	lwz r0, 0xc(r4)
/* 801CB2A0 001C6F00  FF E0 08 90 */	fmr f31, f1
/* 801CB2A4 001C6F04  93 E1 00 7C */	stw r31, 0x7c(r1)
/* 801CB2A8 001C6F08  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 801CB2AC 001C6F0C  93 C1 00 78 */	stw r30, 0x78(r1)
/* 801CB2B0 001C6F10  7C 9E 23 78 */	mr r30, r4
/* 801CB2B4 001C6F14  93 A1 00 74 */	stw r29, 0x74(r1)
/* 801CB2B8 001C6F18  93 81 00 70 */	stw r28, 0x70(r1)
/* 801CB2BC 001C6F1C  7C 7C 1B 78 */	mr r28, r3
/* 801CB2C0 001C6F20  80 A5 2B 98 */	lwz r5, lbl_80422B98@l(r5)
/* 801CB2C4 001C6F24  D8 21 00 08 */	stfd f1, 8(r1)
/* 801CB2C8 001C6F28  8B E5 00 00 */	lbz r31, 0(r5)
/* 801CB2CC 001C6F2C  40 81 00 0C */	ble lbl_801CB2D8
/* 801CB2D0 001C6F30  38 60 00 00 */	li r3, 0
/* 801CB2D4 001C6F34  48 00 03 50 */	b lbl_801CB624
lbl_801CB2D8:
/* 801CB2D8 001C6F38  3B A0 00 00 */	li r29, 0
/* 801CB2DC 001C6F3C  38 00 00 20 */	li r0, 0x20
/* 801CB2E0 001C6F40  9B A1 00 10 */	stb r29, 0x10(r1)
/* 801CB2E4 001C6F44  38 61 00 10 */	addi r3, r1, 0x10
/* 801CB2E8 001C6F48  38 81 00 38 */	addi r4, r1, 0x38
/* 801CB2EC 001C6F4C  B0 01 00 12 */	sth r0, 0x12(r1)
/* 801CB2F0 001C6F50  4B FF D7 59 */	bl __num2dec
/* 801CB2F4 001C6F54  FC 20 FA 10 */	fabs f1, f31
/* 801CB2F8 001C6F58  C8 02 91 48 */	lfd f0, lbl_80641748-_SDA2_BASE_(r2)
/* 801CB2FC 001C6F5C  FC 00 08 00 */	fcmpu cr0, f0, f1
/* 801CB300 001C6F60  40 82 00 20 */	bne lbl_801CB320
/* 801CB304 001C6F64  3B BC FF FA */	addi r29, r28, -6
/* 801CB308 001C6F68  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB30C 001C6F6C  7F A3 EB 78 */	mr r3, r29
/* 801CB310 001C6F70  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB314 001C6F74  48 00 2F BD */	bl strcpy
/* 801CB318 001C6F78  7F A3 EB 78 */	mr r3, r29
/* 801CB31C 001C6F7C  48 00 03 08 */	b lbl_801CB624
lbl_801CB320:
/* 801CB320 001C6F80  88 01 00 3D */	lbz r0, 0x3d(r1)
/* 801CB324 001C6F84  28 00 00 49 */	cmplwi r0, 0x49
/* 801CB328 001C6F88  40 82 00 94 */	bne lbl_801CB3BC
/* 801CB32C 001C6F8C  88 01 00 38 */	lbz r0, 0x38(r1)
/* 801CB330 001C6F90  7C 00 07 75 */	extsb. r0, r0
/* 801CB334 001C6F94  41 82 00 44 */	beq lbl_801CB378
/* 801CB338 001C6F98  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB33C 001C6F9C  3B BC FF FB */	addi r29, r28, -5
/* 801CB340 001C6FA0  28 00 00 41 */	cmplwi r0, 0x41
/* 801CB344 001C6FA4  40 82 00 1C */	bne lbl_801CB360
/* 801CB348 001C6FA8  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB34C 001C6FAC  7F A3 EB 78 */	mr r3, r29
/* 801CB350 001C6FB0  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB354 001C6FB4  38 84 00 06 */	addi r4, r4, 6
/* 801CB358 001C6FB8  48 00 2F 79 */	bl strcpy
/* 801CB35C 001C6FBC  48 00 00 58 */	b lbl_801CB3B4
lbl_801CB360:
/* 801CB360 001C6FC0  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB364 001C6FC4  7F A3 EB 78 */	mr r3, r29
/* 801CB368 001C6FC8  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB36C 001C6FCC  38 84 00 0B */	addi r4, r4, 0xb
/* 801CB370 001C6FD0  48 00 2F 61 */	bl strcpy
/* 801CB374 001C6FD4  48 00 00 40 */	b lbl_801CB3B4
lbl_801CB378:
/* 801CB378 001C6FD8  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB37C 001C6FDC  3B BC FF FC */	addi r29, r28, -4
/* 801CB380 001C6FE0  28 00 00 41 */	cmplwi r0, 0x41
/* 801CB384 001C6FE4  40 82 00 1C */	bne lbl_801CB3A0
/* 801CB388 001C6FE8  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB38C 001C6FEC  7F A3 EB 78 */	mr r3, r29
/* 801CB390 001C6FF0  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB394 001C6FF4  38 84 00 10 */	addi r4, r4, 0x10
/* 801CB398 001C6FF8  48 00 2F 39 */	bl strcpy
/* 801CB39C 001C6FFC  48 00 00 18 */	b lbl_801CB3B4
lbl_801CB3A0:
/* 801CB3A0 001C7000  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB3A4 001C7004  7F A3 EB 78 */	mr r3, r29
/* 801CB3A8 001C7008  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB3AC 001C700C  38 84 00 14 */	addi r4, r4, 0x14
/* 801CB3B0 001C7010  48 00 2F 21 */	bl strcpy
lbl_801CB3B4:
/* 801CB3B4 001C7014  7F A3 EB 78 */	mr r3, r29
/* 801CB3B8 001C7018  48 00 02 6C */	b lbl_801CB624
lbl_801CB3BC:
/* 801CB3BC 001C701C  28 00 00 4E */	cmplwi r0, 0x4e
/* 801CB3C0 001C7020  40 82 00 94 */	bne lbl_801CB454
/* 801CB3C4 001C7024  88 01 00 38 */	lbz r0, 0x38(r1)
/* 801CB3C8 001C7028  7C 00 07 75 */	extsb. r0, r0
/* 801CB3CC 001C702C  41 82 00 44 */	beq lbl_801CB410
/* 801CB3D0 001C7030  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB3D4 001C7034  3B BC FF FB */	addi r29, r28, -5
/* 801CB3D8 001C7038  28 00 00 41 */	cmplwi r0, 0x41
/* 801CB3DC 001C703C  40 82 00 1C */	bne lbl_801CB3F8
/* 801CB3E0 001C7040  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB3E4 001C7044  7F A3 EB 78 */	mr r3, r29
/* 801CB3E8 001C7048  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB3EC 001C704C  38 84 00 18 */	addi r4, r4, 0x18
/* 801CB3F0 001C7050  48 00 2E E1 */	bl strcpy
/* 801CB3F4 001C7054  48 00 00 58 */	b lbl_801CB44C
lbl_801CB3F8:
/* 801CB3F8 001C7058  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB3FC 001C705C  7F A3 EB 78 */	mr r3, r29
/* 801CB400 001C7060  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB404 001C7064  38 84 00 1D */	addi r4, r4, 0x1d
/* 801CB408 001C7068  48 00 2E C9 */	bl strcpy
/* 801CB40C 001C706C  48 00 00 40 */	b lbl_801CB44C
lbl_801CB410:
/* 801CB410 001C7070  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB414 001C7074  3B BC FF FC */	addi r29, r28, -4
/* 801CB418 001C7078  28 00 00 41 */	cmplwi r0, 0x41
/* 801CB41C 001C707C  40 82 00 1C */	bne lbl_801CB438
/* 801CB420 001C7080  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB424 001C7084  7F A3 EB 78 */	mr r3, r29
/* 801CB428 001C7088  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB42C 001C708C  38 84 00 22 */	addi r4, r4, 0x22
/* 801CB430 001C7090  48 00 2E A1 */	bl strcpy
/* 801CB434 001C7094  48 00 00 18 */	b lbl_801CB44C
lbl_801CB438:
/* 801CB438 001C7098  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB43C 001C709C  7F A3 EB 78 */	mr r3, r29
/* 801CB440 001C70A0  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB444 001C70A4  38 84 00 26 */	addi r4, r4, 0x26
/* 801CB448 001C70A8  48 00 2E 89 */	bl strcpy
lbl_801CB44C:
/* 801CB44C 001C70AC  7F A3 EB 78 */	mr r3, r29
/* 801CB450 001C70B0  48 00 01 D4 */	b lbl_801CB624
lbl_801CB454:
/* 801CB454 001C70B4  39 00 00 01 */	li r8, 1
/* 801CB458 001C70B8  38 E0 00 64 */	li r7, 0x64
/* 801CB45C 001C70BC  88 01 00 09 */	lbz r0, 9(r1)
/* 801CB460 001C70C0  7F 84 E3 78 */	mr r4, r28
/* 801CB464 001C70C4  88 61 00 08 */	lbz r3, 8(r1)
/* 801CB468 001C70C8  38 A1 00 18 */	addi r5, r1, 0x18
/* 801CB46C 001C70CC  54 00 88 1C */	slwi r0, r0, 0x11
/* 801CB470 001C70D0  99 01 00 28 */	stb r8, 0x28(r1)
/* 801CB474 001C70D4  50 60 C8 0C */	rlwimi r0, r3, 0x19, 0, 6
/* 801CB478 001C70D8  54 03 5D 7E */	srwi r3, r0, 0x15
/* 801CB47C 001C70DC  99 01 00 29 */	stb r8, 0x29(r1)
/* 801CB480 001C70E0  38 63 FC 01 */	addi r3, r3, -1023
/* 801CB484 001C70E4  9B A1 00 2A */	stb r29, 0x2a(r1)
/* 801CB488 001C70E8  9B A1 00 2B */	stb r29, 0x2b(r1)
/* 801CB48C 001C70EC  80 C1 00 28 */	lwz r6, 0x28(r1)
/* 801CB490 001C70F0  9B A1 00 2C */	stb r29, 0x2c(r1)
/* 801CB494 001C70F4  98 E1 00 2D */	stb r7, 0x2d(r1)
/* 801CB498 001C70F8  80 01 00 2C */	lwz r0, 0x2c(r1)
/* 801CB49C 001C70FC  93 A1 00 30 */	stw r29, 0x30(r1)
/* 801CB4A0 001C7100  91 01 00 34 */	stw r8, 0x34(r1)
/* 801CB4A4 001C7104  90 C1 00 18 */	stw r6, 0x18(r1)
/* 801CB4A8 001C7108  90 01 00 1C */	stw r0, 0x1c(r1)
/* 801CB4AC 001C710C  93 A1 00 20 */	stw r29, 0x20(r1)
/* 801CB4B0 001C7110  91 01 00 24 */	stw r8, 0x24(r1)
/* 801CB4B4 001C7114  4B FF F9 09 */	bl long2str
/* 801CB4B8 001C7118  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB4BC 001C711C  28 00 00 61 */	cmplwi r0, 0x61
/* 801CB4C0 001C7120  40 82 00 14 */	bne lbl_801CB4D4
/* 801CB4C4 001C7124  38 00 00 70 */	li r0, 0x70
/* 801CB4C8 001C7128  38 83 FF FF */	addi r4, r3, -1
/* 801CB4CC 001C712C  98 03 FF FF */	stb r0, -1(r3)
/* 801CB4D0 001C7130  48 00 00 10 */	b lbl_801CB4E0
lbl_801CB4D4:
/* 801CB4D4 001C7134  38 00 00 50 */	li r0, 0x50
/* 801CB4D8 001C7138  38 83 FF FF */	addi r4, r3, -1
/* 801CB4DC 001C713C  98 03 FF FF */	stb r0, -1(r3)
lbl_801CB4E0:
/* 801CB4E0 001C7140  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 801CB4E4 001C7144  39 01 00 08 */	addi r8, r1, 8
/* 801CB4E8 001C7148  54 03 10 3A */	slwi r3, r0, 2
/* 801CB4EC 001C714C  39 23 00 0B */	addi r9, r3, 0xb
/* 801CB4F0 001C7150  7C 09 03 A6 */	mtctr r0
/* 801CB4F4 001C7154  2C 00 00 01 */	cmpwi r0, 1
/* 801CB4F8 001C7158  41 80 00 9C */	blt lbl_801CB594
lbl_801CB4FC:
/* 801CB4FC 001C715C  2C 09 00 40 */	cmpwi r9, 0x40
/* 801CB500 001C7160  40 80 00 84 */	bge lbl_801CB584
/* 801CB504 001C7164  7D 23 1E 70 */	srawi r3, r9, 3
/* 801CB508 001C7168  38 09 FF FC */	addi r0, r9, -4
/* 801CB50C 001C716C  7C E8 1A 14 */	add r7, r8, r3
/* 801CB510 001C7170  55 26 07 7E */	clrlwi r6, r9, 0x1d
/* 801CB514 001C7174  55 23 00 38 */	rlwinm r3, r9, 0, 0, 0x1c
/* 801CB518 001C7178  54 00 00 38 */	rlwinm r0, r0, 0, 0, 0x1c
/* 801CB51C 001C717C  88 A7 00 00 */	lbz r5, 0(r7)
/* 801CB520 001C7180  20 C6 00 07 */	subfic r6, r6, 7
/* 801CB524 001C7184  7C 03 00 00 */	cmpw r3, r0
/* 801CB528 001C7188  7C A0 36 30 */	sraw r0, r5, r6
/* 801CB52C 001C718C  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 801CB530 001C7190  41 82 00 18 */	beq lbl_801CB548
/* 801CB534 001C7194  88 07 FF FF */	lbz r0, -1(r7)
/* 801CB538 001C7198  54 00 40 2E */	slwi r0, r0, 8
/* 801CB53C 001C719C  7C 00 36 30 */	sraw r0, r0, r6
/* 801CB540 001C71A0  7C 60 03 78 */	or r0, r3, r0
/* 801CB544 001C71A4  54 03 06 3E */	clrlwi r3, r0, 0x18
lbl_801CB548:
/* 801CB548 001C71A8  54 63 07 3E */	clrlwi r3, r3, 0x1c
/* 801CB54C 001C71AC  28 03 00 0A */	cmplwi r3, 0xa
/* 801CB550 001C71B0  40 80 00 10 */	bge lbl_801CB560
/* 801CB554 001C71B4  38 03 00 30 */	addi r0, r3, 0x30
/* 801CB558 001C71B8  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 801CB55C 001C71BC  48 00 00 2C */	b lbl_801CB588
lbl_801CB560:
/* 801CB560 001C71C0  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB564 001C71C4  28 00 00 61 */	cmplwi r0, 0x61
/* 801CB568 001C71C8  40 82 00 10 */	bne lbl_801CB578
/* 801CB56C 001C71CC  38 03 00 57 */	addi r0, r3, 0x57
/* 801CB570 001C71D0  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 801CB574 001C71D4  48 00 00 14 */	b lbl_801CB588
lbl_801CB578:
/* 801CB578 001C71D8  38 03 00 37 */	addi r0, r3, 0x37
/* 801CB57C 001C71DC  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 801CB580 001C71E0  48 00 00 08 */	b lbl_801CB588
lbl_801CB584:
/* 801CB584 001C71E4  38 60 00 30 */	li r3, 0x30
lbl_801CB588:
/* 801CB588 001C71E8  9C 64 FF FF */	stbu r3, -1(r4)
/* 801CB58C 001C71EC  39 29 FF FC */	addi r9, r9, -4
/* 801CB590 001C71F0  42 00 FF 6C */	bdnz lbl_801CB4FC
lbl_801CB594:
/* 801CB594 001C71F4  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 801CB598 001C71F8  2C 00 00 00 */	cmpwi r0, 0
/* 801CB59C 001C71FC  40 82 00 10 */	bne lbl_801CB5AC
/* 801CB5A0 001C7200  88 1E 00 03 */	lbz r0, 3(r30)
/* 801CB5A4 001C7204  2C 00 00 00 */	cmpwi r0, 0
/* 801CB5A8 001C7208  41 82 00 08 */	beq lbl_801CB5B0
lbl_801CB5AC:
/* 801CB5AC 001C720C  9F E4 FF FF */	stbu r31, -1(r4)
lbl_801CB5B0:
/* 801CB5B0 001C7210  88 1E 00 05 */	lbz r0, 5(r30)
/* 801CB5B4 001C7214  38 60 00 31 */	li r3, 0x31
/* 801CB5B8 001C7218  98 64 FF FF */	stb r3, -1(r4)
/* 801CB5BC 001C721C  28 00 00 61 */	cmplwi r0, 0x61
/* 801CB5C0 001C7220  40 82 00 10 */	bne lbl_801CB5D0
/* 801CB5C4 001C7224  38 00 00 78 */	li r0, 0x78
/* 801CB5C8 001C7228  9C 04 FF FE */	stbu r0, -2(r4)
/* 801CB5CC 001C722C  48 00 00 0C */	b lbl_801CB5D8
lbl_801CB5D0:
/* 801CB5D0 001C7230  38 00 00 58 */	li r0, 0x58
/* 801CB5D4 001C7234  9C 04 FF FE */	stbu r0, -2(r4)
lbl_801CB5D8:
/* 801CB5D8 001C7238  38 00 00 30 */	li r0, 0x30
/* 801CB5DC 001C723C  9C 04 FF FF */	stbu r0, -1(r4)
/* 801CB5E0 001C7240  88 01 00 38 */	lbz r0, 0x38(r1)
/* 801CB5E4 001C7244  7C 00 07 75 */	extsb. r0, r0
/* 801CB5E8 001C7248  41 82 00 10 */	beq lbl_801CB5F8
/* 801CB5EC 001C724C  38 00 00 2D */	li r0, 0x2d
/* 801CB5F0 001C7250  9C 04 FF FF */	stbu r0, -1(r4)
/* 801CB5F4 001C7254  48 00 00 2C */	b lbl_801CB620
lbl_801CB5F8:
/* 801CB5F8 001C7258  88 1E 00 01 */	lbz r0, 1(r30)
/* 801CB5FC 001C725C  28 00 00 01 */	cmplwi r0, 1
/* 801CB600 001C7260  40 82 00 10 */	bne lbl_801CB610
/* 801CB604 001C7264  38 00 00 2B */	li r0, 0x2b
/* 801CB608 001C7268  9C 04 FF FF */	stbu r0, -1(r4)
/* 801CB60C 001C726C  48 00 00 14 */	b lbl_801CB620
lbl_801CB610:
/* 801CB610 001C7270  28 00 00 02 */	cmplwi r0, 2
/* 801CB614 001C7274  40 82 00 0C */	bne lbl_801CB620
/* 801CB618 001C7278  38 00 00 20 */	li r0, 0x20
/* 801CB61C 001C727C  9C 04 FF FF */	stbu r0, -1(r4)
lbl_801CB620:
/* 801CB620 001C7280  7C 83 23 78 */	mr r3, r4
lbl_801CB624:
/* 801CB624 001C7284  E3 E1 00 88 */	psq_l f31, 136(r1), 0, qr0
/* 801CB628 001C7288  80 01 00 94 */	lwz r0, 0x94(r1)
/* 801CB62C 001C728C  CB E1 00 80 */	lfd f31, 0x80(r1)
/* 801CB630 001C7290  83 E1 00 7C */	lwz r31, 0x7c(r1)
/* 801CB634 001C7294  83 C1 00 78 */	lwz r30, 0x78(r1)
/* 801CB638 001C7298  83 A1 00 74 */	lwz r29, 0x74(r1)
/* 801CB63C 001C729C  83 81 00 70 */	lwz r28, 0x70(r1)
/* 801CB640 001C72A0  7C 08 03 A6 */	mtlr r0
/* 801CB644 001C72A4  38 21 00 90 */	addi r1, r1, 0x90
/* 801CB648 001C72A8  4E 80 00 20 */	blr

.global round_decimal
round_decimal:
/* 801CB64C 001C72AC  2C 04 00 00 */	cmpwi r4, 0
/* 801CB650 001C72B0  40 80 00 20 */	bge lbl_801CB670
lbl_801CB654:
/* 801CB654 001C72B4  38 A0 00 00 */	li r5, 0
/* 801CB658 001C72B8  38 80 00 01 */	li r4, 1
/* 801CB65C 001C72BC  38 00 00 30 */	li r0, 0x30
/* 801CB660 001C72C0  B0 A3 00 02 */	sth r5, 2(r3)
/* 801CB664 001C72C4  98 83 00 04 */	stb r4, 4(r3)
/* 801CB668 001C72C8  98 03 00 05 */	stb r0, 5(r3)
/* 801CB66C 001C72CC  4E 80 00 20 */	blr
lbl_801CB670:
/* 801CB670 001C72D0  88 E3 00 04 */	lbz r7, 4(r3)
/* 801CB674 001C72D4  7C 04 38 00 */	cmpw r4, r7
/* 801CB678 001C72D8  4C 80 00 20 */	bgelr
/* 801CB67C 001C72DC  7C C3 22 14 */	add r6, r3, r4
/* 801CB680 001C72E0  88 A6 00 05 */	lbz r5, 5(r6)
/* 801CB684 001C72E4  39 06 00 05 */	addi r8, r6, 5
/* 801CB688 001C72E8  38 05 FF D0 */	addi r0, r5, -48
/* 801CB68C 001C72EC  7C 06 07 74 */	extsb r6, r0
/* 801CB690 001C72F0  2C 06 00 05 */	cmpwi r6, 5
/* 801CB694 001C72F4  40 82 00 40 */	bne lbl_801CB6D4
/* 801CB698 001C72F8  7C A3 3A 14 */	add r5, r3, r7
/* 801CB69C 001C72FC  38 A5 00 05 */	addi r5, r5, 5
lbl_801CB6A0:
/* 801CB6A0 001C7300  38 A5 FF FF */	addi r5, r5, -1
/* 801CB6A4 001C7304  7C 05 40 40 */	cmplw r5, r8
/* 801CB6A8 001C7308  40 81 00 10 */	ble lbl_801CB6B8
/* 801CB6AC 001C730C  88 05 00 00 */	lbz r0, 0(r5)
/* 801CB6B0 001C7310  2C 00 00 30 */	cmpwi r0, 0x30
/* 801CB6B4 001C7314  41 82 FF EC */	beq lbl_801CB6A0
lbl_801CB6B8:
/* 801CB6B8 001C7318  7C 05 40 40 */	cmplw r5, r8
/* 801CB6BC 001C731C  40 82 00 10 */	bne lbl_801CB6CC
/* 801CB6C0 001C7320  88 08 FF FF */	lbz r0, -1(r8)
/* 801CB6C4 001C7324  54 05 07 FE */	clrlwi r5, r0, 0x1f
/* 801CB6C8 001C7328  48 00 00 20 */	b lbl_801CB6E8
lbl_801CB6CC:
/* 801CB6CC 001C732C  38 A0 00 01 */	li r5, 1
/* 801CB6D0 001C7330  48 00 00 18 */	b lbl_801CB6E8
lbl_801CB6D4:
/* 801CB6D4 001C7334  68 C0 00 05 */	xori r0, r6, 5
/* 801CB6D8 001C7338  7C 05 0E 70 */	srawi r5, r0, 1
/* 801CB6DC 001C733C  7C 00 30 38 */	and r0, r0, r6
/* 801CB6E0 001C7340  7C 00 28 50 */	subf r0, r0, r5
/* 801CB6E4 001C7344  54 05 0F FE */	srwi r5, r0, 0x1f
lbl_801CB6E8:
/* 801CB6E8 001C7348  7C 89 03 A6 */	mtctr r4
/* 801CB6EC 001C734C  2C 04 00 00 */	cmpwi r4, 0
/* 801CB6F0 001C7350  41 82 00 4C */	beq lbl_801CB73C
lbl_801CB6F4:
/* 801CB6F4 001C7354  8C 08 FF FF */	lbzu r0, -1(r8)
/* 801CB6F8 001C7358  7C A0 2A 14 */	add r5, r0, r5
/* 801CB6FC 001C735C  38 05 FF D0 */	addi r0, r5, -48
/* 801CB700 001C7360  7C 06 07 74 */	extsb r6, r0
/* 801CB704 001C7364  68 C0 00 09 */	xori r0, r6, 9
/* 801CB708 001C7368  7C 05 0E 70 */	srawi r5, r0, 1
/* 801CB70C 001C736C  7C 00 30 38 */	and r0, r0, r6
/* 801CB710 001C7370  7C 00 28 50 */	subf r0, r0, r5
/* 801CB714 001C7374  54 05 0F FF */	rlwinm. r5, r0, 1, 0x1f, 0x1f
/* 801CB718 001C7378  40 82 00 0C */	bne lbl_801CB724
/* 801CB71C 001C737C  2C 06 00 00 */	cmpwi r6, 0
/* 801CB720 001C7380  40 82 00 0C */	bne lbl_801CB72C
lbl_801CB724:
/* 801CB724 001C7384  38 84 FF FF */	addi r4, r4, -1
/* 801CB728 001C7388  48 00 00 10 */	b lbl_801CB738
lbl_801CB72C:
/* 801CB72C 001C738C  38 06 00 30 */	addi r0, r6, 0x30
/* 801CB730 001C7390  98 08 00 00 */	stb r0, 0(r8)
/* 801CB734 001C7394  48 00 00 08 */	b lbl_801CB73C
lbl_801CB738:
/* 801CB738 001C7398  42 00 FF BC */	bdnz lbl_801CB6F4
lbl_801CB73C:
/* 801CB73C 001C739C  2C 05 00 00 */	cmpwi r5, 0
/* 801CB740 001C73A0  41 82 00 24 */	beq lbl_801CB764
/* 801CB744 001C73A4  A8 A3 00 02 */	lha r5, 2(r3)
/* 801CB748 001C73A8  38 80 00 01 */	li r4, 1
/* 801CB74C 001C73AC  38 00 00 31 */	li r0, 0x31
/* 801CB750 001C73B0  98 83 00 04 */	stb r4, 4(r3)
/* 801CB754 001C73B4  38 85 00 01 */	addi r4, r5, 1
/* 801CB758 001C73B8  B0 83 00 02 */	sth r4, 2(r3)
/* 801CB75C 001C73BC  98 03 00 05 */	stb r0, 5(r3)
/* 801CB760 001C73C0  4E 80 00 20 */	blr
lbl_801CB764:
/* 801CB764 001C73C4  2C 04 00 00 */	cmpwi r4, 0
/* 801CB768 001C73C8  41 82 FE EC */	beq lbl_801CB654
/* 801CB76C 001C73CC  98 83 00 04 */	stb r4, 4(r3)
/* 801CB770 001C73D0  4E 80 00 20 */	blr

.global float2str
float2str:
/* 801CB774 001C73D4  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 801CB778 001C73D8  7C 08 02 A6 */	mflr r0
/* 801CB77C 001C73DC  3C A0 80 42 */	lis r5, lbl_80422B98@ha
/* 801CB780 001C73E0  90 01 00 54 */	stw r0, 0x54(r1)
/* 801CB784 001C73E4  80 04 00 0C */	lwz r0, 0xc(r4)
/* 801CB788 001C73E8  DB E1 00 48 */	stfd f31, 0x48(r1)
/* 801CB78C 001C73EC  FF E0 08 90 */	fmr f31, f1
/* 801CB790 001C73F0  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 801CB794 001C73F4  93 E1 00 44 */	stw r31, 0x44(r1)
/* 801CB798 001C73F8  93 C1 00 40 */	stw r30, 0x40(r1)
/* 801CB79C 001C73FC  93 A1 00 3C */	stw r29, 0x3c(r1)
/* 801CB7A0 001C7400  7C 9D 23 78 */	mr r29, r4
/* 801CB7A4 001C7404  93 81 00 38 */	stw r28, 0x38(r1)
/* 801CB7A8 001C7408  7C 7C 1B 78 */	mr r28, r3
/* 801CB7AC 001C740C  80 A5 2B 98 */	lwz r5, lbl_80422B98@l(r5)
/* 801CB7B0 001C7410  8B C5 00 00 */	lbz r30, 0(r5)
/* 801CB7B4 001C7414  40 81 00 0C */	ble lbl_801CB7C0
/* 801CB7B8 001C7418  38 60 00 00 */	li r3, 0
/* 801CB7BC 001C741C  48 00 07 64 */	b lbl_801CBF20
lbl_801CB7C0:
/* 801CB7C0 001C7420  38 60 00 00 */	li r3, 0
/* 801CB7C4 001C7424  38 00 00 20 */	li r0, 0x20
/* 801CB7C8 001C7428  98 61 00 08 */	stb r3, 8(r1)
/* 801CB7CC 001C742C  38 61 00 08 */	addi r3, r1, 8
/* 801CB7D0 001C7430  38 81 00 0C */	addi r4, r1, 0xc
/* 801CB7D4 001C7434  B0 01 00 0A */	sth r0, 0xa(r1)
/* 801CB7D8 001C7438  4B FF D2 71 */	bl __num2dec
/* 801CB7DC 001C743C  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CB7E0 001C7440  38 A1 00 11 */	addi r5, r1, 0x11
/* 801CB7E4 001C7444  7C A5 02 14 */	add r5, r5, r0
/* 801CB7E8 001C7448  48 00 00 1C */	b lbl_801CB804
lbl_801CB7EC:
/* 801CB7EC 001C744C  88 81 00 10 */	lbz r4, 0x10(r1)
/* 801CB7F0 001C7450  A8 61 00 0E */	lha r3, 0xe(r1)
/* 801CB7F4 001C7454  38 84 FF FF */	addi r4, r4, -1
/* 801CB7F8 001C7458  38 03 00 01 */	addi r0, r3, 1
/* 801CB7FC 001C745C  98 81 00 10 */	stb r4, 0x10(r1)
/* 801CB800 001C7460  B0 01 00 0E */	sth r0, 0xe(r1)
lbl_801CB804:
/* 801CB804 001C7464  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CB808 001C7468  28 00 00 01 */	cmplwi r0, 1
/* 801CB80C 001C746C  40 81 00 10 */	ble lbl_801CB81C
/* 801CB810 001C7470  8C 05 FF FF */	lbzu r0, -1(r5)
/* 801CB814 001C7474  2C 00 00 30 */	cmpwi r0, 0x30
/* 801CB818 001C7478  41 82 FF D4 */	beq lbl_801CB7EC
lbl_801CB81C:
/* 801CB81C 001C747C  88 01 00 11 */	lbz r0, 0x11(r1)
/* 801CB820 001C7480  2C 00 00 49 */	cmpwi r0, 0x49
/* 801CB824 001C7484  41 82 00 2C */	beq lbl_801CB850
/* 801CB828 001C7488  40 80 00 10 */	bge lbl_801CB838
/* 801CB82C 001C748C  2C 00 00 30 */	cmpwi r0, 0x30
/* 801CB830 001C7490  41 82 00 14 */	beq lbl_801CB844
/* 801CB834 001C7494  48 00 02 4C */	b lbl_801CBA80
lbl_801CB838:
/* 801CB838 001C7498  2C 00 00 4E */	cmpwi r0, 0x4e
/* 801CB83C 001C749C  41 82 01 2C */	beq lbl_801CB968
/* 801CB840 001C74A0  48 00 02 40 */	b lbl_801CBA80
lbl_801CB844:
/* 801CB844 001C74A4  38 00 00 00 */	li r0, 0
/* 801CB848 001C74A8  B0 01 00 0E */	sth r0, 0xe(r1)
/* 801CB84C 001C74AC  48 00 02 34 */	b lbl_801CBA80
lbl_801CB850:
/* 801CB850 001C74B0  C8 02 91 48 */	lfd f0, lbl_80641748-_SDA2_BASE_(r2)
/* 801CB854 001C74B4  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 801CB858 001C74B8  40 80 00 88 */	bge lbl_801CB8E0
/* 801CB85C 001C74BC  88 9D 00 05 */	lbz r4, 5(r29)
/* 801CB860 001C74C0  3B FC FF FB */	addi r31, r28, -5
/* 801CB864 001C74C4  38 00 00 00 */	li r0, 0
/* 801CB868 001C74C8  2C 04 00 00 */	cmpwi r4, 0
/* 801CB86C 001C74CC  41 80 00 0C */	blt lbl_801CB878
/* 801CB870 001C74D0  2C 04 01 00 */	cmpwi r4, 0x100
/* 801CB874 001C74D4  41 80 00 08 */	blt lbl_801CB87C
lbl_801CB878:
/* 801CB878 001C74D8  38 00 00 01 */	li r0, 1
lbl_801CB87C:
/* 801CB87C 001C74DC  2C 00 00 00 */	cmpwi r0, 0
/* 801CB880 001C74E0  41 82 00 0C */	beq lbl_801CB88C
/* 801CB884 001C74E4  38 00 00 00 */	li r0, 0
/* 801CB888 001C74E8  48 00 00 20 */	b lbl_801CB8A8
lbl_801CB88C:
/* 801CB88C 001C74EC  3C 60 80 42 */	lis r3, lbl_80422D48@ha
/* 801CB890 001C74F0  54 80 08 3C */	slwi r0, r4, 1
/* 801CB894 001C74F4  38 63 2D 48 */	addi r3, r3, lbl_80422D48@l
/* 801CB898 001C74F8  80 63 00 38 */	lwz r3, 0x38(r3)
/* 801CB89C 001C74FC  80 63 00 08 */	lwz r3, 8(r3)
/* 801CB8A0 001C7500  7C 03 02 2E */	lhzx r0, r3, r0
/* 801CB8A4 001C7504  54 00 05 AC */	rlwinm r0, r0, 0, 0x16, 0x16
lbl_801CB8A8:
/* 801CB8A8 001C7508  2C 00 00 00 */	cmpwi r0, 0
/* 801CB8AC 001C750C  41 82 00 1C */	beq lbl_801CB8C8
/* 801CB8B0 001C7510  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB8B4 001C7514  7F E3 FB 78 */	mr r3, r31
/* 801CB8B8 001C7518  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB8BC 001C751C  38 84 00 06 */	addi r4, r4, 6
/* 801CB8C0 001C7520  48 00 2A 11 */	bl strcpy
/* 801CB8C4 001C7524  48 00 00 9C */	b lbl_801CB960
lbl_801CB8C8:
/* 801CB8C8 001C7528  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB8CC 001C752C  7F E3 FB 78 */	mr r3, r31
/* 801CB8D0 001C7530  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB8D4 001C7534  38 84 00 0B */	addi r4, r4, 0xb
/* 801CB8D8 001C7538  48 00 29 F9 */	bl strcpy
/* 801CB8DC 001C753C  48 00 00 84 */	b lbl_801CB960
lbl_801CB8E0:
/* 801CB8E0 001C7540  88 9D 00 05 */	lbz r4, 5(r29)
/* 801CB8E4 001C7544  3B FC FF FC */	addi r31, r28, -4
/* 801CB8E8 001C7548  38 00 00 00 */	li r0, 0
/* 801CB8EC 001C754C  2C 04 00 00 */	cmpwi r4, 0
/* 801CB8F0 001C7550  41 80 00 0C */	blt lbl_801CB8FC
/* 801CB8F4 001C7554  2C 04 01 00 */	cmpwi r4, 0x100
/* 801CB8F8 001C7558  41 80 00 08 */	blt lbl_801CB900
lbl_801CB8FC:
/* 801CB8FC 001C755C  38 00 00 01 */	li r0, 1
lbl_801CB900:
/* 801CB900 001C7560  2C 00 00 00 */	cmpwi r0, 0
/* 801CB904 001C7564  41 82 00 0C */	beq lbl_801CB910
/* 801CB908 001C7568  38 00 00 00 */	li r0, 0
/* 801CB90C 001C756C  48 00 00 20 */	b lbl_801CB92C
lbl_801CB910:
/* 801CB910 001C7570  3C 60 80 42 */	lis r3, lbl_80422D48@ha
/* 801CB914 001C7574  54 80 08 3C */	slwi r0, r4, 1
/* 801CB918 001C7578  38 63 2D 48 */	addi r3, r3, lbl_80422D48@l
/* 801CB91C 001C757C  80 63 00 38 */	lwz r3, 0x38(r3)
/* 801CB920 001C7580  80 63 00 08 */	lwz r3, 8(r3)
/* 801CB924 001C7584  7C 03 02 2E */	lhzx r0, r3, r0
/* 801CB928 001C7588  54 00 05 AC */	rlwinm r0, r0, 0, 0x16, 0x16
lbl_801CB92C:
/* 801CB92C 001C758C  2C 00 00 00 */	cmpwi r0, 0
/* 801CB930 001C7590  41 82 00 1C */	beq lbl_801CB94C
/* 801CB934 001C7594  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB938 001C7598  7F E3 FB 78 */	mr r3, r31
/* 801CB93C 001C759C  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB940 001C75A0  38 84 00 10 */	addi r4, r4, 0x10
/* 801CB944 001C75A4  48 00 29 8D */	bl strcpy
/* 801CB948 001C75A8  48 00 00 18 */	b lbl_801CB960
lbl_801CB94C:
/* 801CB94C 001C75AC  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB950 001C75B0  7F E3 FB 78 */	mr r3, r31
/* 801CB954 001C75B4  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB958 001C75B8  38 84 00 14 */	addi r4, r4, 0x14
/* 801CB95C 001C75BC  48 00 29 75 */	bl strcpy
lbl_801CB960:
/* 801CB960 001C75C0  7F E3 FB 78 */	mr r3, r31
/* 801CB964 001C75C4  48 00 05 BC */	b lbl_801CBF20
lbl_801CB968:
/* 801CB968 001C75C8  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CB96C 001C75CC  7C 00 07 75 */	extsb. r0, r0
/* 801CB970 001C75D0  41 82 00 88 */	beq lbl_801CB9F8
/* 801CB974 001C75D4  88 9D 00 05 */	lbz r4, 5(r29)
/* 801CB978 001C75D8  3B FC FF FB */	addi r31, r28, -5
/* 801CB97C 001C75DC  38 00 00 00 */	li r0, 0
/* 801CB980 001C75E0  2C 04 00 00 */	cmpwi r4, 0
/* 801CB984 001C75E4  41 80 00 0C */	blt lbl_801CB990
/* 801CB988 001C75E8  2C 04 01 00 */	cmpwi r4, 0x100
/* 801CB98C 001C75EC  41 80 00 08 */	blt lbl_801CB994
lbl_801CB990:
/* 801CB990 001C75F0  38 00 00 01 */	li r0, 1
lbl_801CB994:
/* 801CB994 001C75F4  2C 00 00 00 */	cmpwi r0, 0
/* 801CB998 001C75F8  41 82 00 0C */	beq lbl_801CB9A4
/* 801CB99C 001C75FC  38 00 00 00 */	li r0, 0
/* 801CB9A0 001C7600  48 00 00 20 */	b lbl_801CB9C0
lbl_801CB9A4:
/* 801CB9A4 001C7604  3C 60 80 42 */	lis r3, lbl_80422D48@ha
/* 801CB9A8 001C7608  54 80 08 3C */	slwi r0, r4, 1
/* 801CB9AC 001C760C  38 63 2D 48 */	addi r3, r3, lbl_80422D48@l
/* 801CB9B0 001C7610  80 63 00 38 */	lwz r3, 0x38(r3)
/* 801CB9B4 001C7614  80 63 00 08 */	lwz r3, 8(r3)
/* 801CB9B8 001C7618  7C 03 02 2E */	lhzx r0, r3, r0
/* 801CB9BC 001C761C  54 00 05 AC */	rlwinm r0, r0, 0, 0x16, 0x16
lbl_801CB9C0:
/* 801CB9C0 001C7620  2C 00 00 00 */	cmpwi r0, 0
/* 801CB9C4 001C7624  41 82 00 1C */	beq lbl_801CB9E0
/* 801CB9C8 001C7628  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB9CC 001C762C  7F E3 FB 78 */	mr r3, r31
/* 801CB9D0 001C7630  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB9D4 001C7634  38 84 00 18 */	addi r4, r4, 0x18
/* 801CB9D8 001C7638  48 00 28 F9 */	bl strcpy
/* 801CB9DC 001C763C  48 00 00 9C */	b lbl_801CBA78
lbl_801CB9E0:
/* 801CB9E0 001C7640  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CB9E4 001C7644  7F E3 FB 78 */	mr r3, r31
/* 801CB9E8 001C7648  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CB9EC 001C764C  38 84 00 1D */	addi r4, r4, 0x1d
/* 801CB9F0 001C7650  48 00 28 E1 */	bl strcpy
/* 801CB9F4 001C7654  48 00 00 84 */	b lbl_801CBA78
lbl_801CB9F8:
/* 801CB9F8 001C7658  88 9D 00 05 */	lbz r4, 5(r29)
/* 801CB9FC 001C765C  3B FC FF FC */	addi r31, r28, -4
/* 801CBA00 001C7660  38 00 00 00 */	li r0, 0
/* 801CBA04 001C7664  2C 04 00 00 */	cmpwi r4, 0
/* 801CBA08 001C7668  41 80 00 0C */	blt lbl_801CBA14
/* 801CBA0C 001C766C  2C 04 01 00 */	cmpwi r4, 0x100
/* 801CBA10 001C7670  41 80 00 08 */	blt lbl_801CBA18
lbl_801CBA14:
/* 801CBA14 001C7674  38 00 00 01 */	li r0, 1
lbl_801CBA18:
/* 801CBA18 001C7678  2C 00 00 00 */	cmpwi r0, 0
/* 801CBA1C 001C767C  41 82 00 0C */	beq lbl_801CBA28
/* 801CBA20 001C7680  38 00 00 00 */	li r0, 0
/* 801CBA24 001C7684  48 00 00 20 */	b lbl_801CBA44
lbl_801CBA28:
/* 801CBA28 001C7688  3C 60 80 42 */	lis r3, lbl_80422D48@ha
/* 801CBA2C 001C768C  54 80 08 3C */	slwi r0, r4, 1
/* 801CBA30 001C7690  38 63 2D 48 */	addi r3, r3, lbl_80422D48@l
/* 801CBA34 001C7694  80 63 00 38 */	lwz r3, 0x38(r3)
/* 801CBA38 001C7698  80 63 00 08 */	lwz r3, 8(r3)
/* 801CBA3C 001C769C  7C 03 02 2E */	lhzx r0, r3, r0
/* 801CBA40 001C76A0  54 00 05 AC */	rlwinm r0, r0, 0, 0x16, 0x16
lbl_801CBA44:
/* 801CBA44 001C76A4  2C 00 00 00 */	cmpwi r0, 0
/* 801CBA48 001C76A8  41 82 00 1C */	beq lbl_801CBA64
/* 801CBA4C 001C76AC  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CBA50 001C76B0  7F E3 FB 78 */	mr r3, r31
/* 801CBA54 001C76B4  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CBA58 001C76B8  38 84 00 22 */	addi r4, r4, 0x22
/* 801CBA5C 001C76BC  48 00 28 75 */	bl strcpy
/* 801CBA60 001C76C0  48 00 00 18 */	b lbl_801CBA78
lbl_801CBA64:
/* 801CBA64 001C76C4  3C 80 80 40 */	lis r4, lbl_803FCCC0@ha
/* 801CBA68 001C76C8  7F E3 FB 78 */	mr r3, r31
/* 801CBA6C 001C76CC  38 84 CC C0 */	addi r4, r4, lbl_803FCCC0@l
/* 801CBA70 001C76D0  38 84 00 26 */	addi r4, r4, 0x26
/* 801CBA74 001C76D4  48 00 28 5D */	bl strcpy
lbl_801CBA78:
/* 801CBA78 001C76D8  7F E3 FB 78 */	mr r3, r31
/* 801CBA7C 001C76DC  48 00 04 A4 */	b lbl_801CBF20
lbl_801CBA80:
/* 801CBA80 001C76E0  A8 A1 00 0E */	lha r5, 0xe(r1)
/* 801CBA84 001C76E4  38 60 00 00 */	li r3, 0
/* 801CBA88 001C76E8  88 81 00 10 */	lbz r4, 0x10(r1)
/* 801CBA8C 001C76EC  3B FC FF FF */	addi r31, r28, -1
/* 801CBA90 001C76F0  88 1D 00 05 */	lbz r0, 5(r29)
/* 801CBA94 001C76F4  7C 84 2A 14 */	add r4, r4, r5
/* 801CBA98 001C76F8  38 84 FF FF */	addi r4, r4, -1
/* 801CBA9C 001C76FC  2C 00 00 65 */	cmpwi r0, 0x65
/* 801CBAA0 001C7700  B0 81 00 0E */	sth r4, 0xe(r1)
/* 801CBAA4 001C7704  98 7C FF FF */	stb r3, -1(r28)
/* 801CBAA8 001C7708  41 82 00 F4 */	beq lbl_801CBB9C
/* 801CBAAC 001C770C  40 80 00 28 */	bge lbl_801CBAD4
/* 801CBAB0 001C7710  2C 00 00 46 */	cmpwi r0, 0x46
/* 801CBAB4 001C7714  41 82 02 4C */	beq lbl_801CBD00
/* 801CBAB8 001C7718  40 80 00 10 */	bge lbl_801CBAC8
/* 801CBABC 001C771C  2C 00 00 45 */	cmpwi r0, 0x45
/* 801CBAC0 001C7720  40 80 00 DC */	bge lbl_801CBB9C
/* 801CBAC4 001C7724  48 00 04 58 */	b lbl_801CBF1C
lbl_801CBAC8:
/* 801CBAC8 001C7728  2C 00 00 48 */	cmpwi r0, 0x48
/* 801CBACC 001C772C  40 80 04 50 */	bge lbl_801CBF1C
/* 801CBAD0 001C7730  48 00 00 14 */	b lbl_801CBAE4
lbl_801CBAD4:
/* 801CBAD4 001C7734  2C 00 00 67 */	cmpwi r0, 0x67
/* 801CBAD8 001C7738  41 82 00 0C */	beq lbl_801CBAE4
/* 801CBADC 001C773C  40 80 04 40 */	bge lbl_801CBF1C
/* 801CBAE0 001C7740  48 00 02 20 */	b lbl_801CBD00
lbl_801CBAE4:
/* 801CBAE4 001C7744  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 801CBAE8 001C7748  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CBAEC 001C774C  7C 00 20 00 */	cmpw r0, r4
/* 801CBAF0 001C7750  40 81 00 0C */	ble lbl_801CBAFC
/* 801CBAF4 001C7754  38 61 00 0C */	addi r3, r1, 0xc
/* 801CBAF8 001C7758  4B FF FB 55 */	bl round_decimal
lbl_801CBAFC:
/* 801CBAFC 001C775C  A8 81 00 0E */	lha r4, 0xe(r1)
/* 801CBB00 001C7760  2C 04 FF FC */	cmpwi r4, -4
/* 801CBB04 001C7764  41 80 00 10 */	blt lbl_801CBB14
/* 801CBB08 001C7768  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 801CBB0C 001C776C  7C 04 18 00 */	cmpw r4, r3
/* 801CBB10 001C7770  41 80 00 50 */	blt lbl_801CBB60
lbl_801CBB14:
/* 801CBB14 001C7774  88 1D 00 03 */	lbz r0, 3(r29)
/* 801CBB18 001C7778  2C 00 00 00 */	cmpwi r0, 0
/* 801CBB1C 001C777C  41 82 00 14 */	beq lbl_801CBB30
/* 801CBB20 001C7780  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 801CBB24 001C7784  38 03 FF FF */	addi r0, r3, -1
/* 801CBB28 001C7788  90 1D 00 0C */	stw r0, 0xc(r29)
/* 801CBB2C 001C778C  48 00 00 10 */	b lbl_801CBB3C
lbl_801CBB30:
/* 801CBB30 001C7790  88 61 00 10 */	lbz r3, 0x10(r1)
/* 801CBB34 001C7794  38 03 FF FF */	addi r0, r3, -1
/* 801CBB38 001C7798  90 1D 00 0C */	stw r0, 0xc(r29)
lbl_801CBB3C:
/* 801CBB3C 001C779C  88 1D 00 05 */	lbz r0, 5(r29)
/* 801CBB40 001C77A0  28 00 00 67 */	cmplwi r0, 0x67
/* 801CBB44 001C77A4  40 82 00 10 */	bne lbl_801CBB54
/* 801CBB48 001C77A8  38 00 00 65 */	li r0, 0x65
/* 801CBB4C 001C77AC  98 1D 00 05 */	stb r0, 5(r29)
/* 801CBB50 001C77B0  48 00 00 4C */	b lbl_801CBB9C
lbl_801CBB54:
/* 801CBB54 001C77B4  38 00 00 45 */	li r0, 0x45
/* 801CBB58 001C77B8  98 1D 00 05 */	stb r0, 5(r29)
/* 801CBB5C 001C77BC  48 00 00 40 */	b lbl_801CBB9C
lbl_801CBB60:
/* 801CBB60 001C77C0  88 1D 00 03 */	lbz r0, 3(r29)
/* 801CBB64 001C77C4  2C 00 00 00 */	cmpwi r0, 0
/* 801CBB68 001C77C8  41 82 00 14 */	beq lbl_801CBB7C
/* 801CBB6C 001C77CC  38 04 00 01 */	addi r0, r4, 1
/* 801CBB70 001C77D0  7C 00 18 50 */	subf r0, r0, r3
/* 801CBB74 001C77D4  90 1D 00 0C */	stw r0, 0xc(r29)
/* 801CBB78 001C77D8  48 00 01 88 */	b lbl_801CBD00
lbl_801CBB7C:
/* 801CBB7C 001C77DC  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CBB80 001C77E0  38 64 00 01 */	addi r3, r4, 1
/* 801CBB84 001C77E4  7C 03 00 51 */	subf. r0, r3, r0
/* 801CBB88 001C77E8  90 1D 00 0C */	stw r0, 0xc(r29)
/* 801CBB8C 001C77EC  40 80 01 74 */	bge lbl_801CBD00
/* 801CBB90 001C77F0  38 00 00 00 */	li r0, 0
/* 801CBB94 001C77F4  90 1D 00 0C */	stw r0, 0xc(r29)
/* 801CBB98 001C77F8  48 00 01 68 */	b lbl_801CBD00
lbl_801CBB9C:
/* 801CBB9C 001C77FC  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 801CBBA0 001C7800  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CBBA4 001C7804  38 83 00 01 */	addi r4, r3, 1
/* 801CBBA8 001C7808  7C 00 20 00 */	cmpw r0, r4
/* 801CBBAC 001C780C  40 81 00 0C */	ble lbl_801CBBB8
/* 801CBBB0 001C7810  38 61 00 0C */	addi r3, r1, 0xc
/* 801CBBB4 001C7814  4B FF FA 99 */	bl round_decimal
lbl_801CBBB8:
/* 801CBBB8 001C7818  A8 C1 00 0E */	lha r6, 0xe(r1)
/* 801CBBBC 001C781C  39 00 00 2B */	li r8, 0x2b
/* 801CBBC0 001C7820  2C 06 00 00 */	cmpwi r6, 0
/* 801CBBC4 001C7824  40 80 00 0C */	bge lbl_801CBBD0
/* 801CBBC8 001C7828  7C C6 00 D0 */	neg r6, r6
/* 801CBBCC 001C782C  39 00 00 2D */	li r8, 0x2d
lbl_801CBBD0:
/* 801CBBD0 001C7830  3C 60 66 66 */	lis r3, 0x66666667@ha
/* 801CBBD4 001C7834  38 E0 00 00 */	li r7, 0
/* 801CBBD8 001C7838  38 A3 66 67 */	addi r5, r3, 0x66666667@l
/* 801CBBDC 001C783C  48 00 00 38 */	b lbl_801CBC14
lbl_801CBBE0:
/* 801CBBE0 001C7840  7C 05 30 96 */	mulhw r0, r5, r6
/* 801CBBE4 001C7844  38 E7 00 01 */	addi r7, r7, 1
/* 801CBBE8 001C7848  7C 03 16 70 */	srawi r3, r0, 2
/* 801CBBEC 001C784C  54 64 0F FE */	srwi r4, r3, 0x1f
/* 801CBBF0 001C7850  7C 00 16 70 */	srawi r0, r0, 2
/* 801CBBF4 001C7854  7C 63 22 14 */	add r3, r3, r4
/* 801CBBF8 001C7858  1C 83 00 0A */	mulli r4, r3, 0xa
/* 801CBBFC 001C785C  54 03 0F FE */	srwi r3, r0, 0x1f
/* 801CBC00 001C7860  7C 84 30 50 */	subf r4, r4, r6
/* 801CBC04 001C7864  7C C0 1A 14 */	add r6, r0, r3
/* 801CBC08 001C7868  38 04 00 30 */	addi r0, r4, 0x30
/* 801CBC0C 001C786C  98 1F FF FF */	stb r0, -1(r31)
/* 801CBC10 001C7870  3B FF FF FF */	addi r31, r31, -1
lbl_801CBC14:
/* 801CBC14 001C7874  2C 06 00 00 */	cmpwi r6, 0
/* 801CBC18 001C7878  40 82 FF C8 */	bne lbl_801CBBE0
/* 801CBC1C 001C787C  2C 07 00 02 */	cmpwi r7, 2
/* 801CBC20 001C7880  41 80 FF C0 */	blt lbl_801CBBE0
/* 801CBC24 001C7884  99 1F FF FF */	stb r8, -1(r31)
/* 801CBC28 001C7888  88 1D 00 05 */	lbz r0, 5(r29)
/* 801CBC2C 001C788C  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 801CBC30 001C7890  9C 1F FF FE */	stbu r0, -2(r31)
/* 801CBC34 001C7894  7C 1F E0 50 */	subf r0, r31, r28
/* 801CBC38 001C7898  7C 03 02 14 */	add r0, r3, r0
/* 801CBC3C 001C789C  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 801CBC40 001C78A0  40 81 00 0C */	ble lbl_801CBC4C
/* 801CBC44 001C78A4  38 60 00 00 */	li r3, 0
/* 801CBC48 001C78A8  48 00 02 D8 */	b lbl_801CBF20
lbl_801CBC4C:
/* 801CBC4C 001C78AC  88 81 00 10 */	lbz r4, 0x10(r1)
/* 801CBC50 001C78B0  38 03 00 01 */	addi r0, r3, 1
/* 801CBC54 001C78B4  7C 04 00 00 */	cmpw r4, r0
/* 801CBC58 001C78B8  40 80 00 20 */	bge lbl_801CBC78
/* 801CBC5C 001C78BC  38 63 00 02 */	addi r3, r3, 2
/* 801CBC60 001C78C0  38 00 00 30 */	li r0, 0x30
/* 801CBC64 001C78C4  7C 64 18 50 */	subf r3, r4, r3
/* 801CBC68 001C78C8  48 00 00 08 */	b lbl_801CBC70
lbl_801CBC6C:
/* 801CBC6C 001C78CC  9C 1F FF FF */	stbu r0, -1(r31)
lbl_801CBC70:
/* 801CBC70 001C78D0  34 63 FF FF */	addic. r3, r3, -1
/* 801CBC74 001C78D4  40 82 FF F8 */	bne lbl_801CBC6C
lbl_801CBC78:
/* 801CBC78 001C78D8  88 61 00 10 */	lbz r3, 0x10(r1)
/* 801CBC7C 001C78DC  38 81 00 11 */	addi r4, r1, 0x11
/* 801CBC80 001C78E0  7C 84 1A 14 */	add r4, r4, r3
/* 801CBC84 001C78E4  48 00 00 0C */	b lbl_801CBC90
lbl_801CBC88:
/* 801CBC88 001C78E8  8C 04 FF FF */	lbzu r0, -1(r4)
/* 801CBC8C 001C78EC  9C 1F FF FF */	stbu r0, -1(r31)
lbl_801CBC90:
/* 801CBC90 001C78F0  34 63 FF FF */	addic. r3, r3, -1
/* 801CBC94 001C78F4  40 82 FF F4 */	bne lbl_801CBC88
/* 801CBC98 001C78F8  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 801CBC9C 001C78FC  2C 00 00 00 */	cmpwi r0, 0
/* 801CBCA0 001C7900  40 82 00 10 */	bne lbl_801CBCB0
/* 801CBCA4 001C7904  88 1D 00 03 */	lbz r0, 3(r29)
/* 801CBCA8 001C7908  2C 00 00 00 */	cmpwi r0, 0
/* 801CBCAC 001C790C  41 82 00 08 */	beq lbl_801CBCB4
lbl_801CBCB0:
/* 801CBCB0 001C7910  9F DF FF FF */	stbu r30, -1(r31)
lbl_801CBCB4:
/* 801CBCB4 001C7914  88 01 00 11 */	lbz r0, 0x11(r1)
/* 801CBCB8 001C7918  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBCBC 001C791C  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CBCC0 001C7920  7C 00 07 75 */	extsb. r0, r0
/* 801CBCC4 001C7924  41 82 00 10 */	beq lbl_801CBCD4
/* 801CBCC8 001C7928  38 00 00 2D */	li r0, 0x2d
/* 801CBCCC 001C792C  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBCD0 001C7930  48 00 02 4C */	b lbl_801CBF1C
lbl_801CBCD4:
/* 801CBCD4 001C7934  88 1D 00 01 */	lbz r0, 1(r29)
/* 801CBCD8 001C7938  28 00 00 01 */	cmplwi r0, 1
/* 801CBCDC 001C793C  40 82 00 10 */	bne lbl_801CBCEC
/* 801CBCE0 001C7940  38 00 00 2B */	li r0, 0x2b
/* 801CBCE4 001C7944  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBCE8 001C7948  48 00 02 34 */	b lbl_801CBF1C
lbl_801CBCEC:
/* 801CBCEC 001C794C  28 00 00 02 */	cmplwi r0, 2
/* 801CBCF0 001C7950  40 82 02 2C */	bne lbl_801CBF1C
/* 801CBCF4 001C7954  38 00 00 20 */	li r0, 0x20
/* 801CBCF8 001C7958  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBCFC 001C795C  48 00 02 20 */	b lbl_801CBF1C
lbl_801CBD00:
/* 801CBD00 001C7960  88 81 00 10 */	lbz r4, 0x10(r1)
/* 801CBD04 001C7964  A8 A1 00 0E */	lha r5, 0xe(r1)
/* 801CBD08 001C7968  7C 65 20 50 */	subf r3, r5, r4
/* 801CBD0C 001C796C  35 03 FF FF */	addic. r8, r3, -1
/* 801CBD10 001C7970  40 80 00 08 */	bge lbl_801CBD18
/* 801CBD14 001C7974  39 00 00 00 */	li r8, 0
lbl_801CBD18:
/* 801CBD18 001C7978  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 801CBD1C 001C797C  7C 08 00 00 */	cmpw r8, r0
/* 801CBD20 001C7980  40 81 00 2C */	ble lbl_801CBD4C
/* 801CBD24 001C7984  7C 00 40 50 */	subf r0, r0, r8
/* 801CBD28 001C7988  38 61 00 0C */	addi r3, r1, 0xc
/* 801CBD2C 001C798C  7C 80 20 50 */	subf r4, r0, r4
/* 801CBD30 001C7990  4B FF F9 1D */	bl round_decimal
/* 801CBD34 001C7994  88 81 00 10 */	lbz r4, 0x10(r1)
/* 801CBD38 001C7998  A8 A1 00 0E */	lha r5, 0xe(r1)
/* 801CBD3C 001C799C  7C 65 20 50 */	subf r3, r5, r4
/* 801CBD40 001C79A0  35 03 FF FF */	addic. r8, r3, -1
/* 801CBD44 001C79A4  40 80 00 08 */	bge lbl_801CBD4C
/* 801CBD48 001C79A8  39 00 00 00 */	li r8, 0
lbl_801CBD4C:
/* 801CBD4C 001C79AC  34 E5 00 01 */	addic. r7, r5, 1
/* 801CBD50 001C79B0  40 80 00 08 */	bge lbl_801CBD58
/* 801CBD54 001C79B4  38 E0 00 00 */	li r7, 0
lbl_801CBD58:
/* 801CBD58 001C79B8  7C 07 42 14 */	add r0, r7, r8
/* 801CBD5C 001C79BC  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 801CBD60 001C79C0  40 81 00 0C */	ble lbl_801CBD6C
/* 801CBD64 001C79C4  38 60 00 00 */	li r3, 0
/* 801CBD68 001C79C8  48 00 01 B8 */	b lbl_801CBF20
lbl_801CBD6C:
/* 801CBD6C 001C79CC  38 C1 00 11 */	addi r6, r1, 0x11
/* 801CBD70 001C79D0  38 A0 00 00 */	li r5, 0
/* 801CBD74 001C79D4  7C C6 22 14 */	add r6, r6, r4
/* 801CBD78 001C79D8  38 60 00 30 */	li r3, 0x30
/* 801CBD7C 001C79DC  48 00 00 0C */	b lbl_801CBD88
lbl_801CBD80:
/* 801CBD80 001C79E0  9C 7F FF FF */	stbu r3, -1(r31)
/* 801CBD84 001C79E4  38 A5 00 01 */	addi r5, r5, 1
lbl_801CBD88:
/* 801CBD88 001C79E8  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 801CBD8C 001C79EC  7C 08 00 50 */	subf r0, r8, r0
/* 801CBD90 001C79F0  7C 05 00 00 */	cmpw r5, r0
/* 801CBD94 001C79F4  41 80 FF EC */	blt lbl_801CBD80
/* 801CBD98 001C79F8  38 60 00 00 */	li r3, 0
/* 801CBD9C 001C79FC  48 00 00 10 */	b lbl_801CBDAC
lbl_801CBDA0:
/* 801CBDA0 001C7A00  8C 06 FF FF */	lbzu r0, -1(r6)
/* 801CBDA4 001C7A04  38 63 00 01 */	addi r3, r3, 1
/* 801CBDA8 001C7A08  9C 1F FF FF */	stbu r0, -1(r31)
lbl_801CBDAC:
/* 801CBDAC 001C7A0C  7C 03 40 00 */	cmpw r3, r8
/* 801CBDB0 001C7A10  40 80 00 10 */	bge lbl_801CBDC0
/* 801CBDB4 001C7A14  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CBDB8 001C7A18  7C 03 00 00 */	cmpw r3, r0
/* 801CBDBC 001C7A1C  41 80 FF E4 */	blt lbl_801CBDA0
lbl_801CBDC0:
/* 801CBDC0 001C7A20  7C 03 40 00 */	cmpw r3, r8
/* 801CBDC4 001C7A24  7C 63 40 50 */	subf r3, r3, r8
/* 801CBDC8 001C7A28  38 80 00 30 */	li r4, 0x30
/* 801CBDCC 001C7A2C  40 80 00 48 */	bge lbl_801CBE14
/* 801CBDD0 001C7A30  54 60 E8 FF */	rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 801CBDD4 001C7A34  7C 09 03 A6 */	mtctr r0
/* 801CBDD8 001C7A38  41 82 00 30 */	beq lbl_801CBE08
lbl_801CBDDC:
/* 801CBDDC 001C7A3C  98 9F FF FF */	stb r4, -1(r31)
/* 801CBDE0 001C7A40  98 9F FF FE */	stb r4, -2(r31)
/* 801CBDE4 001C7A44  98 9F FF FD */	stb r4, -3(r31)
/* 801CBDE8 001C7A48  98 9F FF FC */	stb r4, -4(r31)
/* 801CBDEC 001C7A4C  98 9F FF FB */	stb r4, -5(r31)
/* 801CBDF0 001C7A50  98 9F FF FA */	stb r4, -6(r31)
/* 801CBDF4 001C7A54  98 9F FF F9 */	stb r4, -7(r31)
/* 801CBDF8 001C7A58  9C 9F FF F8 */	stbu r4, -8(r31)
/* 801CBDFC 001C7A5C  42 00 FF E0 */	bdnz lbl_801CBDDC
/* 801CBE00 001C7A60  70 63 00 07 */	andi. r3, r3, 7
/* 801CBE04 001C7A64  41 82 00 10 */	beq lbl_801CBE14
lbl_801CBE08:
/* 801CBE08 001C7A68  7C 69 03 A6 */	mtctr r3
lbl_801CBE0C:
/* 801CBE0C 001C7A6C  9C 9F FF FF */	stbu r4, -1(r31)
/* 801CBE10 001C7A70  42 00 FF FC */	bdnz lbl_801CBE0C
lbl_801CBE14:
/* 801CBE14 001C7A74  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 801CBE18 001C7A78  2C 00 00 00 */	cmpwi r0, 0
/* 801CBE1C 001C7A7C  40 82 00 10 */	bne lbl_801CBE2C
/* 801CBE20 001C7A80  88 1D 00 03 */	lbz r0, 3(r29)
/* 801CBE24 001C7A84  2C 00 00 00 */	cmpwi r0, 0
/* 801CBE28 001C7A88  41 82 00 08 */	beq lbl_801CBE30
lbl_801CBE2C:
/* 801CBE2C 001C7A8C  9F DF FF FF */	stbu r30, -1(r31)
lbl_801CBE30:
/* 801CBE30 001C7A90  2C 07 00 00 */	cmpwi r7, 0
/* 801CBE34 001C7A94  41 82 00 A0 */	beq lbl_801CBED4
/* 801CBE38 001C7A98  38 80 00 00 */	li r4, 0
/* 801CBE3C 001C7A9C  38 60 00 30 */	li r3, 0x30
/* 801CBE40 001C7AA0  48 00 00 0C */	b lbl_801CBE4C
lbl_801CBE44:
/* 801CBE44 001C7AA4  9C 7F FF FF */	stbu r3, -1(r31)
/* 801CBE48 001C7AA8  38 84 00 01 */	addi r4, r4, 1
lbl_801CBE4C:
/* 801CBE4C 001C7AAC  88 01 00 10 */	lbz r0, 0x10(r1)
/* 801CBE50 001C7AB0  7C 00 38 50 */	subf r0, r0, r7
/* 801CBE54 001C7AB4  7C 04 00 00 */	cmpw r4, r0
/* 801CBE58 001C7AB8  41 80 FF EC */	blt lbl_801CBE44
/* 801CBE5C 001C7ABC  7C 04 38 00 */	cmpw r4, r7
/* 801CBE60 001C7AC0  7C 64 38 50 */	subf r3, r4, r7
/* 801CBE64 001C7AC4  40 80 00 78 */	bge lbl_801CBEDC
/* 801CBE68 001C7AC8  54 60 E8 FF */	rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 801CBE6C 001C7ACC  7C 09 03 A6 */	mtctr r0
/* 801CBE70 001C7AD0  41 82 00 50 */	beq lbl_801CBEC0
lbl_801CBE74:
/* 801CBE74 001C7AD4  88 06 FF FF */	lbz r0, -1(r6)
/* 801CBE78 001C7AD8  98 1F FF FF */	stb r0, -1(r31)
/* 801CBE7C 001C7ADC  88 06 FF FE */	lbz r0, -2(r6)
/* 801CBE80 001C7AE0  98 1F FF FE */	stb r0, -2(r31)
/* 801CBE84 001C7AE4  88 06 FF FD */	lbz r0, -3(r6)
/* 801CBE88 001C7AE8  98 1F FF FD */	stb r0, -3(r31)
/* 801CBE8C 001C7AEC  88 06 FF FC */	lbz r0, -4(r6)
/* 801CBE90 001C7AF0  98 1F FF FC */	stb r0, -4(r31)
/* 801CBE94 001C7AF4  88 06 FF FB */	lbz r0, -5(r6)
/* 801CBE98 001C7AF8  98 1F FF FB */	stb r0, -5(r31)
/* 801CBE9C 001C7AFC  88 06 FF FA */	lbz r0, -6(r6)
/* 801CBEA0 001C7B00  98 1F FF FA */	stb r0, -6(r31)
/* 801CBEA4 001C7B04  88 06 FF F9 */	lbz r0, -7(r6)
/* 801CBEA8 001C7B08  98 1F FF F9 */	stb r0, -7(r31)
/* 801CBEAC 001C7B0C  8C 06 FF F8 */	lbzu r0, -8(r6)
/* 801CBEB0 001C7B10  9C 1F FF F8 */	stbu r0, -8(r31)
/* 801CBEB4 001C7B14  42 00 FF C0 */	bdnz lbl_801CBE74
/* 801CBEB8 001C7B18  70 63 00 07 */	andi. r3, r3, 7
/* 801CBEBC 001C7B1C  41 82 00 20 */	beq lbl_801CBEDC
lbl_801CBEC0:
/* 801CBEC0 001C7B20  7C 69 03 A6 */	mtctr r3
lbl_801CBEC4:
/* 801CBEC4 001C7B24  8C 06 FF FF */	lbzu r0, -1(r6)
/* 801CBEC8 001C7B28  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBECC 001C7B2C  42 00 FF F8 */	bdnz lbl_801CBEC4
/* 801CBED0 001C7B30  48 00 00 0C */	b lbl_801CBEDC
lbl_801CBED4:
/* 801CBED4 001C7B34  38 00 00 30 */	li r0, 0x30
/* 801CBED8 001C7B38  9C 1F FF FF */	stbu r0, -1(r31)
lbl_801CBEDC:
/* 801CBEDC 001C7B3C  88 01 00 0C */	lbz r0, 0xc(r1)
/* 801CBEE0 001C7B40  7C 00 07 75 */	extsb. r0, r0
/* 801CBEE4 001C7B44  41 82 00 10 */	beq lbl_801CBEF4
/* 801CBEE8 001C7B48  38 00 00 2D */	li r0, 0x2d
/* 801CBEEC 001C7B4C  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBEF0 001C7B50  48 00 00 2C */	b lbl_801CBF1C
lbl_801CBEF4:
/* 801CBEF4 001C7B54  88 1D 00 01 */	lbz r0, 1(r29)
/* 801CBEF8 001C7B58  28 00 00 01 */	cmplwi r0, 1
/* 801CBEFC 001C7B5C  40 82 00 10 */	bne lbl_801CBF0C
/* 801CBF00 001C7B60  38 00 00 2B */	li r0, 0x2b
/* 801CBF04 001C7B64  9C 1F FF FF */	stbu r0, -1(r31)
/* 801CBF08 001C7B68  48 00 00 14 */	b lbl_801CBF1C
lbl_801CBF0C:
/* 801CBF0C 001C7B6C  28 00 00 02 */	cmplwi r0, 2
/* 801CBF10 001C7B70  40 82 00 0C */	bne lbl_801CBF1C
/* 801CBF14 001C7B74  38 00 00 20 */	li r0, 0x20
/* 801CBF18 001C7B78  9C 1F FF FF */	stbu r0, -1(r31)
lbl_801CBF1C:
/* 801CBF1C 001C7B7C  7F E3 FB 78 */	mr r3, r31
lbl_801CBF20:
/* 801CBF20 001C7B80  80 01 00 54 */	lwz r0, 0x54(r1)
/* 801CBF24 001C7B84  CB E1 00 48 */	lfd f31, 0x48(r1)
/* 801CBF28 001C7B88  83 E1 00 44 */	lwz r31, 0x44(r1)
/* 801CBF2C 001C7B8C  83 C1 00 40 */	lwz r30, 0x40(r1)
/* 801CBF30 001C7B90  83 A1 00 3C */	lwz r29, 0x3c(r1)
/* 801CBF34 001C7B94  83 81 00 38 */	lwz r28, 0x38(r1)
/* 801CBF38 001C7B98  7C 08 03 A6 */	mtlr r0
/* 801CBF3C 001C7B9C  38 21 00 50 */	addi r1, r1, 0x50
/* 801CBF40 001C7BA0  4E 80 00 20 */	blr

.global __pformatter
__pformatter:
/* 801CBF44 001C7BA4  94 21 FD 40 */	stwu r1, -0x2c0(r1)
/* 801CBF48 001C7BA8  7C 08 02 A6 */	mflr r0
/* 801CBF4C 001C7BAC  90 01 02 C4 */	stw r0, 0x2c4(r1)
/* 801CBF50 001C7BB0  BE 01 02 80 */	stmw r16, 0x280(r1)
/* 801CBF54 001C7BB4  3A 00 00 20 */	li r16, 0x20
/* 801CBF58 001C7BB8  3F A0 80 40 */	lis r29, lbl_803FCCC0@ha
/* 801CBF5C 001C7BBC  7C 71 1B 78 */	mr r17, r3
/* 801CBF60 001C7BC0  7C 92 23 78 */	mr r18, r4
/* 801CBF64 001C7BC4  7C B7 2B 78 */	mr r23, r5
/* 801CBF68 001C7BC8  7C D3 33 78 */	mr r19, r6
/* 801CBF6C 001C7BCC  3B BD CC C0 */	addi r29, r29, lbl_803FCCC0@l
/* 801CBF70 001C7BD0  3B 81 02 7F */	addi r28, r1, 0x27f
/* 801CBF74 001C7BD4  3B 20 00 00 */	li r25, 0
/* 801CBF78 001C7BD8  3B E0 00 25 */	li r31, 0x25
/* 801CBF7C 001C7BDC  3F C0 80 42 */	lis r30, 0x8042
/* 801CBF80 001C7BE0  9A 01 00 09 */	stb r16, 9(r1)
/* 801CBF84 001C7BE4  48 00 07 F8 */	b lbl_801CC77C
lbl_801CBF88:
/* 801CBF88 001C7BE8  7E E3 BB 78 */	mr r3, r23
/* 801CBF8C 001C7BEC  38 80 00 25 */	li r4, 0x25
/* 801CBF90 001C7BF0  48 00 26 19 */	bl strchr
/* 801CBF94 001C7BF4  2C 03 00 00 */	cmpwi r3, 0
/* 801CBF98 001C7BF8  7C 78 1B 78 */	mr r24, r3
/* 801CBF9C 001C7BFC  40 82 00 40 */	bne lbl_801CBFDC
/* 801CBFA0 001C7C00  7E E3 BB 78 */	mr r3, r23
/* 801CBFA4 001C7C04  4B FF AB C1 */	bl strlen
/* 801CBFA8 001C7C08  2C 03 00 00 */	cmpwi r3, 0
/* 801CBFAC 001C7C0C  7C 65 1B 78 */	mr r5, r3
/* 801CBFB0 001C7C10  7F 39 1A 14 */	add r25, r25, r3
/* 801CBFB4 001C7C14  41 82 07 D4 */	beq lbl_801CC788
/* 801CBFB8 001C7C18  7E 2C 8B 78 */	mr r12, r17
/* 801CBFBC 001C7C1C  7E 43 93 78 */	mr r3, r18
/* 801CBFC0 001C7C20  7E E4 BB 78 */	mr r4, r23
/* 801CBFC4 001C7C24  7D 89 03 A6 */	mtctr r12
/* 801CBFC8 001C7C28  4E 80 04 21 */	bctrl
/* 801CBFCC 001C7C2C  2C 03 00 00 */	cmpwi r3, 0
/* 801CBFD0 001C7C30  40 82 07 B8 */	bne lbl_801CC788
/* 801CBFD4 001C7C34  38 60 FF FF */	li r3, -1
/* 801CBFD8 001C7C38  48 00 07 B4 */	b lbl_801CC78C
lbl_801CBFDC:
/* 801CBFDC 001C7C3C  7C B7 18 51 */	subf. r5, r23, r3
/* 801CBFE0 001C7C40  7F 39 2A 14 */	add r25, r25, r5
/* 801CBFE4 001C7C44  41 82 00 28 */	beq lbl_801CC00C
/* 801CBFE8 001C7C48  7E 2C 8B 78 */	mr r12, r17
/* 801CBFEC 001C7C4C  7E 43 93 78 */	mr r3, r18
/* 801CBFF0 001C7C50  7E E4 BB 78 */	mr r4, r23
/* 801CBFF4 001C7C54  7D 89 03 A6 */	mtctr r12
/* 801CBFF8 001C7C58  4E 80 04 21 */	bctrl
/* 801CBFFC 001C7C5C  2C 03 00 00 */	cmpwi r3, 0
/* 801CC000 001C7C60  40 82 00 0C */	bne lbl_801CC00C
/* 801CC004 001C7C64  38 60 FF FF */	li r3, -1
/* 801CC008 001C7C68  48 00 07 84 */	b lbl_801CC78C
lbl_801CC00C:
/* 801CC00C 001C7C6C  7F 03 C3 78 */	mr r3, r24
/* 801CC010 001C7C70  7E 64 9B 78 */	mr r4, r19
/* 801CC014 001C7C74  38 A1 00 70 */	addi r5, r1, 0x70
/* 801CC018 001C7C78  4B FF E7 A9 */	bl parse_format
/* 801CC01C 001C7C7C  88 01 00 75 */	lbz r0, 0x75(r1)
/* 801CC020 001C7C80  7C 77 1B 78 */	mr r23, r3
/* 801CC024 001C7C84  2C 00 00 68 */	cmpwi r0, 0x68
/* 801CC028 001C7C88  41 82 05 D4 */	beq lbl_801CC5FC
/* 801CC02C 001C7C8C  40 80 00 60 */	bge lbl_801CC08C
/* 801CC030 001C7C90  2C 00 00 58 */	cmpwi r0, 0x58
/* 801CC034 001C7C94  41 82 02 10 */	beq lbl_801CC244
/* 801CC038 001C7C98  40 80 00 30 */	bge lbl_801CC068
/* 801CC03C 001C7C9C  2C 00 00 41 */	cmpwi r0, 0x41
/* 801CC040 001C7CA0  41 82 03 D0 */	beq lbl_801CC410
/* 801CC044 001C7CA4  40 80 00 10 */	bge lbl_801CC054
/* 801CC048 001C7CA8  2C 00 00 25 */	cmpwi r0, 0x25
/* 801CC04C 001C7CAC  41 82 05 A0 */	beq lbl_801CC5EC
/* 801CC050 001C7CB0  48 00 05 AC */	b lbl_801CC5FC
lbl_801CC054:
/* 801CC054 001C7CB4  2C 00 00 48 */	cmpwi r0, 0x48
/* 801CC058 001C7CB8  40 80 05 A4 */	bge lbl_801CC5FC
/* 801CC05C 001C7CBC  2C 00 00 45 */	cmpwi r0, 0x45
/* 801CC060 001C7CC0  40 80 03 40 */	bge lbl_801CC3A0
/* 801CC064 001C7CC4  48 00 05 98 */	b lbl_801CC5FC
lbl_801CC068:
/* 801CC068 001C7CC8  2C 00 00 63 */	cmpwi r0, 0x63
/* 801CC06C 001C7CCC  41 82 05 60 */	beq lbl_801CC5CC
/* 801CC070 001C7CD0  40 80 00 10 */	bge lbl_801CC080
/* 801CC074 001C7CD4  2C 00 00 61 */	cmpwi r0, 0x61
/* 801CC078 001C7CD8  41 82 03 98 */	beq lbl_801CC410
/* 801CC07C 001C7CDC  48 00 05 80 */	b lbl_801CC5FC
lbl_801CC080:
/* 801CC080 001C7CE0  2C 00 00 65 */	cmpwi r0, 0x65
/* 801CC084 001C7CE4  40 80 03 1C */	bge lbl_801CC3A0
/* 801CC088 001C7CE8  48 00 00 60 */	b lbl_801CC0E8
lbl_801CC08C:
/* 801CC08C 001C7CEC  2C 00 00 74 */	cmpwi r0, 0x74
/* 801CC090 001C7CF0  41 82 05 6C */	beq lbl_801CC5FC
/* 801CC094 001C7CF4  40 80 00 30 */	bge lbl_801CC0C4
/* 801CC098 001C7CF8  2C 00 00 6F */	cmpwi r0, 0x6f
/* 801CC09C 001C7CFC  41 82 01 A8 */	beq lbl_801CC244
/* 801CC0A0 001C7D00  40 80 00 18 */	bge lbl_801CC0B8
/* 801CC0A4 001C7D04  2C 00 00 6E */	cmpwi r0, 0x6e
/* 801CC0A8 001C7D08  40 80 04 AC */	bge lbl_801CC554
/* 801CC0AC 001C7D0C  2C 00 00 6A */	cmpwi r0, 0x6a
/* 801CC0B0 001C7D10  40 80 05 4C */	bge lbl_801CC5FC
/* 801CC0B4 001C7D14  48 00 00 34 */	b lbl_801CC0E8
lbl_801CC0B8:
/* 801CC0B8 001C7D18  2C 00 00 73 */	cmpwi r0, 0x73
/* 801CC0BC 001C7D1C  40 80 03 C4 */	bge lbl_801CC480
/* 801CC0C0 001C7D20  48 00 05 3C */	b lbl_801CC5FC
lbl_801CC0C4:
/* 801CC0C4 001C7D24  2C 00 00 78 */	cmpwi r0, 0x78
/* 801CC0C8 001C7D28  41 82 01 7C */	beq lbl_801CC244
/* 801CC0CC 001C7D2C  40 80 00 10 */	bge lbl_801CC0DC
/* 801CC0D0 001C7D30  2C 00 00 76 */	cmpwi r0, 0x76
/* 801CC0D4 001C7D34  40 80 05 28 */	bge lbl_801CC5FC
/* 801CC0D8 001C7D38  48 00 01 6C */	b lbl_801CC244
lbl_801CC0DC:
/* 801CC0DC 001C7D3C  2C 00 00 FF */	cmpwi r0, 0xff
/* 801CC0E0 001C7D40  41 82 05 1C */	beq lbl_801CC5FC
/* 801CC0E4 001C7D44  48 00 05 18 */	b lbl_801CC5FC
lbl_801CC0E8:
/* 801CC0E8 001C7D48  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC0EC 001C7D4C  28 00 00 03 */	cmplwi r0, 3
/* 801CC0F0 001C7D50  40 82 00 18 */	bne lbl_801CC108
/* 801CC0F4 001C7D54  7E 63 9B 78 */	mr r3, r19
/* 801CC0F8 001C7D58  38 80 00 01 */	li r4, 1
/* 801CC0FC 001C7D5C  4B FF AA 85 */	bl __va_arg
/* 801CC100 001C7D60  82 C3 00 00 */	lwz r22, 0(r3)
/* 801CC104 001C7D64  48 00 00 8C */	b lbl_801CC190
lbl_801CC108:
/* 801CC108 001C7D68  28 00 00 04 */	cmplwi r0, 4
/* 801CC10C 001C7D6C  40 82 00 1C */	bne lbl_801CC128
/* 801CC110 001C7D70  7E 63 9B 78 */	mr r3, r19
/* 801CC114 001C7D74  38 80 00 02 */	li r4, 2
/* 801CC118 001C7D78  4B FF AA 69 */	bl __va_arg
/* 801CC11C 001C7D7C  82 A3 00 00 */	lwz r21, 0(r3)
/* 801CC120 001C7D80  82 83 00 04 */	lwz r20, 4(r3)
/* 801CC124 001C7D84  48 00 00 6C */	b lbl_801CC190
lbl_801CC128:
/* 801CC128 001C7D88  28 00 00 06 */	cmplwi r0, 6
/* 801CC12C 001C7D8C  40 82 00 1C */	bne lbl_801CC148
/* 801CC130 001C7D90  7E 63 9B 78 */	mr r3, r19
/* 801CC134 001C7D94  38 80 00 02 */	li r4, 2
/* 801CC138 001C7D98  4B FF AA 49 */	bl __va_arg
/* 801CC13C 001C7D9C  82 A3 00 00 */	lwz r21, 0(r3)
/* 801CC140 001C7DA0  82 83 00 04 */	lwz r20, 4(r3)
/* 801CC144 001C7DA4  48 00 00 4C */	b lbl_801CC190
lbl_801CC148:
/* 801CC148 001C7DA8  28 00 00 07 */	cmplwi r0, 7
/* 801CC14C 001C7DAC  40 82 00 18 */	bne lbl_801CC164
/* 801CC150 001C7DB0  7E 63 9B 78 */	mr r3, r19
/* 801CC154 001C7DB4  38 80 00 01 */	li r4, 1
/* 801CC158 001C7DB8  4B FF AA 29 */	bl __va_arg
/* 801CC15C 001C7DBC  82 C3 00 00 */	lwz r22, 0(r3)
/* 801CC160 001C7DC0  48 00 00 30 */	b lbl_801CC190
lbl_801CC164:
/* 801CC164 001C7DC4  28 00 00 08 */	cmplwi r0, 8
/* 801CC168 001C7DC8  40 82 00 18 */	bne lbl_801CC180
/* 801CC16C 001C7DCC  7E 63 9B 78 */	mr r3, r19
/* 801CC170 001C7DD0  38 80 00 01 */	li r4, 1
/* 801CC174 001C7DD4  4B FF AA 0D */	bl __va_arg
/* 801CC178 001C7DD8  82 C3 00 00 */	lwz r22, 0(r3)
/* 801CC17C 001C7DDC  48 00 00 14 */	b lbl_801CC190
lbl_801CC180:
/* 801CC180 001C7DE0  7E 63 9B 78 */	mr r3, r19
/* 801CC184 001C7DE4  38 80 00 01 */	li r4, 1
/* 801CC188 001C7DE8  4B FF A9 F9 */	bl __va_arg
/* 801CC18C 001C7DEC  82 C3 00 00 */	lwz r22, 0(r3)
lbl_801CC190:
/* 801CC190 001C7DF0  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC194 001C7DF4  28 00 00 02 */	cmplwi r0, 2
/* 801CC198 001C7DF8  40 82 00 08 */	bne lbl_801CC1A0
/* 801CC19C 001C7DFC  7E D6 07 34 */	extsh r22, r22
lbl_801CC1A0:
/* 801CC1A0 001C7E00  28 00 00 01 */	cmplwi r0, 1
/* 801CC1A4 001C7E04  40 82 00 08 */	bne lbl_801CC1AC
/* 801CC1A8 001C7E08  7E D6 07 74 */	extsb r22, r22
lbl_801CC1AC:
/* 801CC1AC 001C7E0C  28 00 00 04 */	cmplwi r0, 4
/* 801CC1B0 001C7E10  41 82 00 0C */	beq lbl_801CC1BC
/* 801CC1B4 001C7E14  28 00 00 06 */	cmplwi r0, 6
/* 801CC1B8 001C7E18  40 82 00 48 */	bne lbl_801CC200
lbl_801CC1BC:
/* 801CC1BC 001C7E1C  81 21 00 70 */	lwz r9, 0x70(r1)
/* 801CC1C0 001C7E20  7E 84 A3 78 */	mr r4, r20
/* 801CC1C4 001C7E24  81 01 00 74 */	lwz r8, 0x74(r1)
/* 801CC1C8 001C7E28  7E A3 AB 78 */	mr r3, r21
/* 801CC1CC 001C7E2C  80 E1 00 78 */	lwz r7, 0x78(r1)
/* 801CC1D0 001C7E30  38 A1 02 80 */	addi r5, r1, 0x280
/* 801CC1D4 001C7E34  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC1D8 001C7E38  38 C1 00 60 */	addi r6, r1, 0x60
/* 801CC1DC 001C7E3C  91 21 00 60 */	stw r9, 0x60(r1)
/* 801CC1E0 001C7E40  91 01 00 64 */	stw r8, 0x64(r1)
/* 801CC1E4 001C7E44  90 E1 00 68 */	stw r7, 0x68(r1)
/* 801CC1E8 001C7E48  90 01 00 6C */	stw r0, 0x6c(r1)
/* 801CC1EC 001C7E4C  4B FF ED F9 */	bl longlong2str
/* 801CC1F0 001C7E50  2C 03 00 00 */	cmpwi r3, 0
/* 801CC1F4 001C7E54  7C 7A 1B 78 */	mr r26, r3
/* 801CC1F8 001C7E58  41 82 04 04 */	beq lbl_801CC5FC
/* 801CC1FC 001C7E5C  48 00 00 40 */	b lbl_801CC23C
lbl_801CC200:
/* 801CC200 001C7E60  81 01 00 70 */	lwz r8, 0x70(r1)
/* 801CC204 001C7E64  7E C3 B3 78 */	mr r3, r22
/* 801CC208 001C7E68  80 E1 00 74 */	lwz r7, 0x74(r1)
/* 801CC20C 001C7E6C  38 81 02 80 */	addi r4, r1, 0x280
/* 801CC210 001C7E70  80 C1 00 78 */	lwz r6, 0x78(r1)
/* 801CC214 001C7E74  38 A1 00 50 */	addi r5, r1, 0x50
/* 801CC218 001C7E78  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC21C 001C7E7C  91 01 00 50 */	stw r8, 0x50(r1)
/* 801CC220 001C7E80  90 E1 00 54 */	stw r7, 0x54(r1)
/* 801CC224 001C7E84  90 C1 00 58 */	stw r6, 0x58(r1)
/* 801CC228 001C7E88  90 01 00 5C */	stw r0, 0x5c(r1)
/* 801CC22C 001C7E8C  4B FF EB 91 */	bl long2str
/* 801CC230 001C7E90  2C 03 00 00 */	cmpwi r3, 0
/* 801CC234 001C7E94  7C 7A 1B 78 */	mr r26, r3
/* 801CC238 001C7E98  41 82 03 C4 */	beq lbl_801CC5FC
lbl_801CC23C:
/* 801CC23C 001C7E9C  7F 7A E0 50 */	subf r27, r26, r28
/* 801CC240 001C7EA0  48 00 04 00 */	b lbl_801CC640
lbl_801CC244:
/* 801CC244 001C7EA4  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC248 001C7EA8  28 00 00 03 */	cmplwi r0, 3
/* 801CC24C 001C7EAC  40 82 00 18 */	bne lbl_801CC264
/* 801CC250 001C7EB0  7E 63 9B 78 */	mr r3, r19
/* 801CC254 001C7EB4  38 80 00 01 */	li r4, 1
/* 801CC258 001C7EB8  4B FF A9 29 */	bl __va_arg
/* 801CC25C 001C7EBC  82 C3 00 00 */	lwz r22, 0(r3)
/* 801CC260 001C7EC0  48 00 00 8C */	b lbl_801CC2EC
lbl_801CC264:
/* 801CC264 001C7EC4  28 00 00 04 */	cmplwi r0, 4
/* 801CC268 001C7EC8  40 82 00 1C */	bne lbl_801CC284
/* 801CC26C 001C7ECC  7E 63 9B 78 */	mr r3, r19
/* 801CC270 001C7ED0  38 80 00 02 */	li r4, 2
/* 801CC274 001C7ED4  4B FF A9 0D */	bl __va_arg
/* 801CC278 001C7ED8  82 A3 00 00 */	lwz r21, 0(r3)
/* 801CC27C 001C7EDC  82 83 00 04 */	lwz r20, 4(r3)
/* 801CC280 001C7EE0  48 00 00 6C */	b lbl_801CC2EC
lbl_801CC284:
/* 801CC284 001C7EE4  28 00 00 06 */	cmplwi r0, 6
/* 801CC288 001C7EE8  40 82 00 1C */	bne lbl_801CC2A4
/* 801CC28C 001C7EEC  7E 63 9B 78 */	mr r3, r19
/* 801CC290 001C7EF0  38 80 00 02 */	li r4, 2
/* 801CC294 001C7EF4  4B FF A8 ED */	bl __va_arg
/* 801CC298 001C7EF8  82 A3 00 00 */	lwz r21, 0(r3)
/* 801CC29C 001C7EFC  82 83 00 04 */	lwz r20, 4(r3)
/* 801CC2A0 001C7F00  48 00 00 4C */	b lbl_801CC2EC
lbl_801CC2A4:
/* 801CC2A4 001C7F04  28 00 00 07 */	cmplwi r0, 7
/* 801CC2A8 001C7F08  40 82 00 18 */	bne lbl_801CC2C0
/* 801CC2AC 001C7F0C  7E 63 9B 78 */	mr r3, r19
/* 801CC2B0 001C7F10  38 80 00 01 */	li r4, 1
/* 801CC2B4 001C7F14  4B FF A8 CD */	bl __va_arg
/* 801CC2B8 001C7F18  82 C3 00 00 */	lwz r22, 0(r3)
/* 801CC2BC 001C7F1C  48 00 00 30 */	b lbl_801CC2EC
lbl_801CC2C0:
/* 801CC2C0 001C7F20  28 00 00 08 */	cmplwi r0, 8
/* 801CC2C4 001C7F24  40 82 00 18 */	bne lbl_801CC2DC
/* 801CC2C8 001C7F28  7E 63 9B 78 */	mr r3, r19
/* 801CC2CC 001C7F2C  38 80 00 01 */	li r4, 1
/* 801CC2D0 001C7F30  4B FF A8 B1 */	bl __va_arg
/* 801CC2D4 001C7F34  82 C3 00 00 */	lwz r22, 0(r3)
/* 801CC2D8 001C7F38  48 00 00 14 */	b lbl_801CC2EC
lbl_801CC2DC:
/* 801CC2DC 001C7F3C  7E 63 9B 78 */	mr r3, r19
/* 801CC2E0 001C7F40  38 80 00 01 */	li r4, 1
/* 801CC2E4 001C7F44  4B FF A8 9D */	bl __va_arg
/* 801CC2E8 001C7F48  82 C3 00 00 */	lwz r22, 0(r3)
lbl_801CC2EC:
/* 801CC2EC 001C7F4C  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC2F0 001C7F50  28 00 00 02 */	cmplwi r0, 2
/* 801CC2F4 001C7F54  40 82 00 08 */	bne lbl_801CC2FC
/* 801CC2F8 001C7F58  56 D6 04 3E */	clrlwi r22, r22, 0x10
lbl_801CC2FC:
/* 801CC2FC 001C7F5C  28 00 00 01 */	cmplwi r0, 1
/* 801CC300 001C7F60  40 82 00 08 */	bne lbl_801CC308
/* 801CC304 001C7F64  56 D6 06 3E */	clrlwi r22, r22, 0x18
lbl_801CC308:
/* 801CC308 001C7F68  28 00 00 04 */	cmplwi r0, 4
/* 801CC30C 001C7F6C  41 82 00 0C */	beq lbl_801CC318
/* 801CC310 001C7F70  28 00 00 06 */	cmplwi r0, 6
/* 801CC314 001C7F74  40 82 00 48 */	bne lbl_801CC35C
lbl_801CC318:
/* 801CC318 001C7F78  81 21 00 70 */	lwz r9, 0x70(r1)
/* 801CC31C 001C7F7C  7E 84 A3 78 */	mr r4, r20
/* 801CC320 001C7F80  81 01 00 74 */	lwz r8, 0x74(r1)
/* 801CC324 001C7F84  7E A3 AB 78 */	mr r3, r21
/* 801CC328 001C7F88  80 E1 00 78 */	lwz r7, 0x78(r1)
/* 801CC32C 001C7F8C  38 A1 02 80 */	addi r5, r1, 0x280
/* 801CC330 001C7F90  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC334 001C7F94  38 C1 00 40 */	addi r6, r1, 0x40
/* 801CC338 001C7F98  91 21 00 40 */	stw r9, 0x40(r1)
/* 801CC33C 001C7F9C  91 01 00 44 */	stw r8, 0x44(r1)
/* 801CC340 001C7FA0  90 E1 00 48 */	stw r7, 0x48(r1)
/* 801CC344 001C7FA4  90 01 00 4C */	stw r0, 0x4c(r1)
/* 801CC348 001C7FA8  4B FF EC 9D */	bl longlong2str
/* 801CC34C 001C7FAC  2C 03 00 00 */	cmpwi r3, 0
/* 801CC350 001C7FB0  7C 7A 1B 78 */	mr r26, r3
/* 801CC354 001C7FB4  41 82 02 A8 */	beq lbl_801CC5FC
/* 801CC358 001C7FB8  48 00 00 40 */	b lbl_801CC398
lbl_801CC35C:
/* 801CC35C 001C7FBC  81 01 00 70 */	lwz r8, 0x70(r1)
/* 801CC360 001C7FC0  7E C3 B3 78 */	mr r3, r22
/* 801CC364 001C7FC4  80 E1 00 74 */	lwz r7, 0x74(r1)
/* 801CC368 001C7FC8  38 81 02 80 */	addi r4, r1, 0x280
/* 801CC36C 001C7FCC  80 C1 00 78 */	lwz r6, 0x78(r1)
/* 801CC370 001C7FD0  38 A1 00 30 */	addi r5, r1, 0x30
/* 801CC374 001C7FD4  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC378 001C7FD8  91 01 00 30 */	stw r8, 0x30(r1)
/* 801CC37C 001C7FDC  90 E1 00 34 */	stw r7, 0x34(r1)
/* 801CC380 001C7FE0  90 C1 00 38 */	stw r6, 0x38(r1)
/* 801CC384 001C7FE4  90 01 00 3C */	stw r0, 0x3c(r1)
/* 801CC388 001C7FE8  4B FF EA 35 */	bl long2str
/* 801CC38C 001C7FEC  2C 03 00 00 */	cmpwi r3, 0
/* 801CC390 001C7FF0  7C 7A 1B 78 */	mr r26, r3
/* 801CC394 001C7FF4  41 82 02 68 */	beq lbl_801CC5FC
lbl_801CC398:
/* 801CC398 001C7FF8  7F 7A E0 50 */	subf r27, r26, r28
/* 801CC39C 001C7FFC  48 00 02 A4 */	b lbl_801CC640
lbl_801CC3A0:
/* 801CC3A0 001C8000  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC3A4 001C8004  28 00 00 09 */	cmplwi r0, 9
/* 801CC3A8 001C8008  40 82 00 18 */	bne lbl_801CC3C0
/* 801CC3AC 001C800C  7E 63 9B 78 */	mr r3, r19
/* 801CC3B0 001C8010  38 80 00 03 */	li r4, 3
/* 801CC3B4 001C8014  4B FF A7 CD */	bl __va_arg
/* 801CC3B8 001C8018  C8 23 00 00 */	lfd f1, 0(r3)
/* 801CC3BC 001C801C  48 00 00 14 */	b lbl_801CC3D0
lbl_801CC3C0:
/* 801CC3C0 001C8020  7E 63 9B 78 */	mr r3, r19
/* 801CC3C4 001C8024  38 80 00 03 */	li r4, 3
/* 801CC3C8 001C8028  4B FF A7 B9 */	bl __va_arg
/* 801CC3CC 001C802C  C8 23 00 00 */	lfd f1, 0(r3)
lbl_801CC3D0:
/* 801CC3D0 001C8030  80 E1 00 70 */	lwz r7, 0x70(r1)
/* 801CC3D4 001C8034  38 61 02 80 */	addi r3, r1, 0x280
/* 801CC3D8 001C8038  80 C1 00 74 */	lwz r6, 0x74(r1)
/* 801CC3DC 001C803C  38 81 00 20 */	addi r4, r1, 0x20
/* 801CC3E0 001C8040  80 A1 00 78 */	lwz r5, 0x78(r1)
/* 801CC3E4 001C8044  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC3E8 001C8048  90 E1 00 20 */	stw r7, 0x20(r1)
/* 801CC3EC 001C804C  90 C1 00 24 */	stw r6, 0x24(r1)
/* 801CC3F0 001C8050  90 A1 00 28 */	stw r5, 0x28(r1)
/* 801CC3F4 001C8054  90 01 00 2C */	stw r0, 0x2c(r1)
/* 801CC3F8 001C8058  4B FF F3 7D */	bl float2str
/* 801CC3FC 001C805C  2C 03 00 00 */	cmpwi r3, 0
/* 801CC400 001C8060  7C 7A 1B 78 */	mr r26, r3
/* 801CC404 001C8064  41 82 01 F8 */	beq lbl_801CC5FC
/* 801CC408 001C8068  7F 63 E0 50 */	subf r27, r3, r28
/* 801CC40C 001C806C  48 00 02 34 */	b lbl_801CC640
lbl_801CC410:
/* 801CC410 001C8070  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC414 001C8074  28 00 00 09 */	cmplwi r0, 9
/* 801CC418 001C8078  40 82 00 18 */	bne lbl_801CC430
/* 801CC41C 001C807C  7E 63 9B 78 */	mr r3, r19
/* 801CC420 001C8080  38 80 00 03 */	li r4, 3
/* 801CC424 001C8084  4B FF A7 5D */	bl __va_arg
/* 801CC428 001C8088  C8 23 00 00 */	lfd f1, 0(r3)
/* 801CC42C 001C808C  48 00 00 14 */	b lbl_801CC440
lbl_801CC430:
/* 801CC430 001C8090  7E 63 9B 78 */	mr r3, r19
/* 801CC434 001C8094  38 80 00 03 */	li r4, 3
/* 801CC438 001C8098  4B FF A7 49 */	bl __va_arg
/* 801CC43C 001C809C  C8 23 00 00 */	lfd f1, 0(r3)
lbl_801CC440:
/* 801CC440 001C80A0  80 E1 00 70 */	lwz r7, 0x70(r1)
/* 801CC444 001C80A4  38 61 02 80 */	addi r3, r1, 0x280
/* 801CC448 001C80A8  80 C1 00 74 */	lwz r6, 0x74(r1)
/* 801CC44C 001C80AC  38 81 00 10 */	addi r4, r1, 0x10
/* 801CC450 001C80B0  80 A1 00 78 */	lwz r5, 0x78(r1)
/* 801CC454 001C80B4  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC458 001C80B8  90 E1 00 10 */	stw r7, 0x10(r1)
/* 801CC45C 001C80BC  90 C1 00 14 */	stw r6, 0x14(r1)
/* 801CC460 001C80C0  90 A1 00 18 */	stw r5, 0x18(r1)
/* 801CC464 001C80C4  90 01 00 1C */	stw r0, 0x1c(r1)
/* 801CC468 001C80C8  4B FF EE 1D */	bl double2hex
/* 801CC46C 001C80CC  2C 03 00 00 */	cmpwi r3, 0
/* 801CC470 001C80D0  7C 7A 1B 78 */	mr r26, r3
/* 801CC474 001C80D4  41 82 01 88 */	beq lbl_801CC5FC
/* 801CC478 001C80D8  7F 63 E0 50 */	subf r27, r3, r28
/* 801CC47C 001C80DC  48 00 01 C4 */	b lbl_801CC640
lbl_801CC480:
/* 801CC480 001C80E0  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC484 001C80E4  28 00 00 05 */	cmplwi r0, 5
/* 801CC488 001C80E8  40 82 00 3C */	bne lbl_801CC4C4
/* 801CC48C 001C80EC  7E 63 9B 78 */	mr r3, r19
/* 801CC490 001C80F0  38 80 00 01 */	li r4, 1
/* 801CC494 001C80F4  4B FF A6 ED */	bl __va_arg
/* 801CC498 001C80F8  80 83 00 00 */	lwz r4, 0(r3)
/* 801CC49C 001C80FC  2C 04 00 00 */	cmpwi r4, 0
/* 801CC4A0 001C8100  40 82 00 08 */	bne lbl_801CC4A8
/* 801CC4A4 001C8104  38 8D 83 E0 */	addi r4, r13, lbl_8063D6A0-_SDA_BASE_
lbl_801CC4A8:
/* 801CC4A8 001C8108  38 61 00 80 */	addi r3, r1, 0x80
/* 801CC4AC 001C810C  38 A0 02 00 */	li r5, 0x200
/* 801CC4B0 001C8110  4B FF DD 0D */	bl wcstombs
/* 801CC4B4 001C8114  2C 03 00 00 */	cmpwi r3, 0
/* 801CC4B8 001C8118  41 80 01 44 */	blt lbl_801CC5FC
/* 801CC4BC 001C811C  3B 41 00 80 */	addi r26, r1, 0x80
/* 801CC4C0 001C8120  48 00 00 14 */	b lbl_801CC4D4
lbl_801CC4C4:
/* 801CC4C4 001C8124  7E 63 9B 78 */	mr r3, r19
/* 801CC4C8 001C8128  38 80 00 01 */	li r4, 1
/* 801CC4CC 001C812C  4B FF A6 B5 */	bl __va_arg
/* 801CC4D0 001C8130  83 43 00 00 */	lwz r26, 0(r3)
lbl_801CC4D4:
/* 801CC4D4 001C8134  2C 1A 00 00 */	cmpwi r26, 0
/* 801CC4D8 001C8138  40 82 00 08 */	bne lbl_801CC4E0
/* 801CC4DC 001C813C  3B 5D 00 2A */	addi r26, r29, 0x2a
lbl_801CC4E0:
/* 801CC4E0 001C8140  88 01 00 73 */	lbz r0, 0x73(r1)
/* 801CC4E4 001C8144  2C 00 00 00 */	cmpwi r0, 0
/* 801CC4E8 001C8148  41 82 00 2C */	beq lbl_801CC514
/* 801CC4EC 001C814C  88 01 00 72 */	lbz r0, 0x72(r1)
/* 801CC4F0 001C8150  8B 7A 00 00 */	lbz r27, 0(r26)
/* 801CC4F4 001C8154  3B 5A 00 01 */	addi r26, r26, 1
/* 801CC4F8 001C8158  2C 00 00 00 */	cmpwi r0, 0
/* 801CC4FC 001C815C  41 82 01 44 */	beq lbl_801CC640
/* 801CC500 001C8160  80 01 00 7C */	lwz r0, 0x7c(r1)
/* 801CC504 001C8164  7C 1B 00 00 */	cmpw r27, r0
/* 801CC508 001C8168  40 81 01 38 */	ble lbl_801CC640
/* 801CC50C 001C816C  7C 1B 03 78 */	mr r27, r0
/* 801CC510 001C8170  48 00 01 30 */	b lbl_801CC640
lbl_801CC514:
/* 801CC514 001C8174  88 01 00 72 */	lbz r0, 0x72(r1)
/* 801CC518 001C8178  2C 00 00 00 */	cmpwi r0, 0
/* 801CC51C 001C817C  41 82 00 28 */	beq lbl_801CC544
/* 801CC520 001C8180  83 61 00 7C */	lwz r27, 0x7c(r1)
/* 801CC524 001C8184  7F 43 D3 78 */	mr r3, r26
/* 801CC528 001C8188  38 80 00 00 */	li r4, 0
/* 801CC52C 001C818C  7F 65 DB 78 */	mr r5, r27
/* 801CC530 001C8190  4B FF DE 11 */	bl memchr
/* 801CC534 001C8194  2C 03 00 00 */	cmpwi r3, 0
/* 801CC538 001C8198  41 82 01 08 */	beq lbl_801CC640
/* 801CC53C 001C819C  7F 7A 18 50 */	subf r27, r26, r3
/* 801CC540 001C81A0  48 00 01 00 */	b lbl_801CC640
lbl_801CC544:
/* 801CC544 001C81A4  7F 43 D3 78 */	mr r3, r26
/* 801CC548 001C81A8  4B FF A6 1D */	bl strlen
/* 801CC54C 001C81AC  7C 7B 1B 78 */	mr r27, r3
/* 801CC550 001C81B0  48 00 00 F0 */	b lbl_801CC640
lbl_801CC554:
/* 801CC554 001C81B4  7E 63 9B 78 */	mr r3, r19
/* 801CC558 001C81B8  38 80 00 01 */	li r4, 1
/* 801CC55C 001C81BC  4B FF A6 25 */	bl __va_arg
/* 801CC560 001C81C0  88 01 00 74 */	lbz r0, 0x74(r1)
/* 801CC564 001C81C4  80 83 00 00 */	lwz r4, 0(r3)
/* 801CC568 001C81C8  28 00 00 08 */	cmplwi r0, 8
/* 801CC56C 001C81CC  41 81 02 10 */	bgt lbl_801CC77C
/* 801CC570 001C81D0  38 7E 2F BC */	addi r3, r30, 0x2fbc
/* 801CC574 001C81D4  54 00 10 3A */	slwi r0, r0, 2
/* 801CC578 001C81D8  7C 63 00 2E */	lwzx r3, r3, r0
/* 801CC57C 001C81DC  7C 69 03 A6 */	mtctr r3
/* 801CC580 001C81E0  4E 80 04 20 */	bctr
/* 801CC584 001C81E4  93 24 00 00 */	stw r25, 0(r4)
/* 801CC588 001C81E8  48 00 01 F4 */	b lbl_801CC77C
/* 801CC58C 001C81EC  B3 24 00 00 */	sth r25, 0(r4)
/* 801CC590 001C81F0  48 00 01 EC */	b lbl_801CC77C
/* 801CC594 001C81F4  93 24 00 00 */	stw r25, 0(r4)
/* 801CC598 001C81F8  48 00 01 E4 */	b lbl_801CC77C
/* 801CC59C 001C81FC  93 24 00 04 */	stw r25, 4(r4)
/* 801CC5A0 001C8200  7F 20 FE 70 */	srawi r0, r25, 0x1f
/* 801CC5A4 001C8204  90 04 00 00 */	stw r0, 0(r4)
/* 801CC5A8 001C8208  48 00 01 D4 */	b lbl_801CC77C
/* 801CC5AC 001C820C  93 24 00 00 */	stw r25, 0(r4)
/* 801CC5B0 001C8210  48 00 01 CC */	b lbl_801CC77C
/* 801CC5B4 001C8214  93 24 00 00 */	stw r25, 0(r4)
/* 801CC5B8 001C8218  48 00 01 C4 */	b lbl_801CC77C
/* 801CC5BC 001C821C  93 24 00 04 */	stw r25, 4(r4)
/* 801CC5C0 001C8220  7F 20 FE 70 */	srawi r0, r25, 0x1f
/* 801CC5C4 001C8224  90 04 00 00 */	stw r0, 0(r4)
/* 801CC5C8 001C8228  48 00 01 B4 */	b lbl_801CC77C
lbl_801CC5CC:
/* 801CC5CC 001C822C  7E 63 9B 78 */	mr r3, r19
/* 801CC5D0 001C8230  3B 41 00 80 */	addi r26, r1, 0x80
/* 801CC5D4 001C8234  38 80 00 01 */	li r4, 1
/* 801CC5D8 001C8238  4B FF A5 A9 */	bl __va_arg
/* 801CC5DC 001C823C  80 03 00 00 */	lwz r0, 0(r3)
/* 801CC5E0 001C8240  3B 60 00 01 */	li r27, 1
/* 801CC5E4 001C8244  98 01 00 80 */	stb r0, 0x80(r1)
/* 801CC5E8 001C8248  48 00 00 58 */	b lbl_801CC640
lbl_801CC5EC:
/* 801CC5EC 001C824C  9B E1 00 80 */	stb r31, 0x80(r1)
/* 801CC5F0 001C8250  3B 41 00 80 */	addi r26, r1, 0x80
/* 801CC5F4 001C8254  3B 60 00 01 */	li r27, 1
/* 801CC5F8 001C8258  48 00 00 48 */	b lbl_801CC640
lbl_801CC5FC:
/* 801CC5FC 001C825C  7F 03 C3 78 */	mr r3, r24
/* 801CC600 001C8260  4B FF A5 65 */	bl strlen
/* 801CC604 001C8264  2C 03 00 00 */	cmpwi r3, 0
/* 801CC608 001C8268  7C 65 1B 78 */	mr r5, r3
/* 801CC60C 001C826C  7F 39 1A 14 */	add r25, r25, r3
/* 801CC610 001C8270  41 82 00 28 */	beq lbl_801CC638
/* 801CC614 001C8274  7E 2C 8B 78 */	mr r12, r17
/* 801CC618 001C8278  7E 43 93 78 */	mr r3, r18
/* 801CC61C 001C827C  7F 04 C3 78 */	mr r4, r24
/* 801CC620 001C8280  7D 89 03 A6 */	mtctr r12
/* 801CC624 001C8284  4E 80 04 21 */	bctrl
/* 801CC628 001C8288  2C 03 00 00 */	cmpwi r3, 0
/* 801CC62C 001C828C  40 82 00 0C */	bne lbl_801CC638
/* 801CC630 001C8290  38 60 FF FF */	li r3, -1
/* 801CC634 001C8294  48 00 01 58 */	b lbl_801CC78C
lbl_801CC638:
/* 801CC638 001C8298  7F 23 CB 78 */	mr r3, r25
/* 801CC63C 001C829C  48 00 01 50 */	b lbl_801CC78C
lbl_801CC640:
/* 801CC640 001C82A0  88 01 00 70 */	lbz r0, 0x70(r1)
/* 801CC644 001C82A4  7F 78 DB 78 */	mr r24, r27
/* 801CC648 001C82A8  2C 00 00 00 */	cmpwi r0, 0
/* 801CC64C 001C82AC  41 82 00 B0 */	beq lbl_801CC6FC
/* 801CC650 001C82B0  28 00 00 02 */	cmplwi r0, 2
/* 801CC654 001C82B4  38 60 00 20 */	li r3, 0x20
/* 801CC658 001C82B8  40 82 00 08 */	bne lbl_801CC660
/* 801CC65C 001C82BC  38 60 00 30 */	li r3, 0x30
lbl_801CC660:
/* 801CC660 001C82C0  98 61 00 09 */	stb r3, 9(r1)
/* 801CC664 001C82C4  88 1A 00 00 */	lbz r0, 0(r26)
/* 801CC668 001C82C8  7C 00 07 74 */	extsb r0, r0
/* 801CC66C 001C82CC  2C 00 00 2B */	cmpwi r0, 0x2b
/* 801CC670 001C82D0  41 82 00 14 */	beq lbl_801CC684
/* 801CC674 001C82D4  2C 00 00 2D */	cmpwi r0, 0x2d
/* 801CC678 001C82D8  41 82 00 0C */	beq lbl_801CC684
/* 801CC67C 001C82DC  2C 00 00 20 */	cmpwi r0, 0x20
/* 801CC680 001C82E0  40 82 00 70 */	bne lbl_801CC6F0
lbl_801CC684:
/* 801CC684 001C82E4  7C 60 07 74 */	extsb r0, r3
/* 801CC688 001C82E8  2C 00 00 30 */	cmpwi r0, 0x30
/* 801CC68C 001C82EC  40 82 00 64 */	bne lbl_801CC6F0
/* 801CC690 001C82F0  7E 2C 8B 78 */	mr r12, r17
/* 801CC694 001C82F4  7E 43 93 78 */	mr r3, r18
/* 801CC698 001C82F8  7F 44 D3 78 */	mr r4, r26
/* 801CC69C 001C82FC  38 A0 00 01 */	li r5, 1
/* 801CC6A0 001C8300  7D 89 03 A6 */	mtctr r12
/* 801CC6A4 001C8304  4E 80 04 21 */	bctrl
/* 801CC6A8 001C8308  2C 03 00 00 */	cmpwi r3, 0
/* 801CC6AC 001C830C  40 82 00 0C */	bne lbl_801CC6B8
/* 801CC6B0 001C8310  38 60 FF FF */	li r3, -1
/* 801CC6B4 001C8314  48 00 00 D8 */	b lbl_801CC78C
lbl_801CC6B8:
/* 801CC6B8 001C8318  3B 5A 00 01 */	addi r26, r26, 1
/* 801CC6BC 001C831C  3B 7B FF FF */	addi r27, r27, -1
/* 801CC6C0 001C8320  48 00 00 30 */	b lbl_801CC6F0
lbl_801CC6C4:
/* 801CC6C4 001C8324  7E 2C 8B 78 */	mr r12, r17
/* 801CC6C8 001C8328  7E 43 93 78 */	mr r3, r18
/* 801CC6CC 001C832C  38 81 00 09 */	addi r4, r1, 9
/* 801CC6D0 001C8330  38 A0 00 01 */	li r5, 1
/* 801CC6D4 001C8334  7D 89 03 A6 */	mtctr r12
/* 801CC6D8 001C8338  4E 80 04 21 */	bctrl
/* 801CC6DC 001C833C  2C 03 00 00 */	cmpwi r3, 0
/* 801CC6E0 001C8340  40 82 00 0C */	bne lbl_801CC6EC
/* 801CC6E4 001C8344  38 60 FF FF */	li r3, -1
/* 801CC6E8 001C8348  48 00 00 A4 */	b lbl_801CC78C
lbl_801CC6EC:
/* 801CC6EC 001C834C  3B 18 00 01 */	addi r24, r24, 1
lbl_801CC6F0:
/* 801CC6F0 001C8350  80 01 00 78 */	lwz r0, 0x78(r1)
/* 801CC6F4 001C8354  7C 18 00 00 */	cmpw r24, r0
/* 801CC6F8 001C8358  41 80 FF CC */	blt lbl_801CC6C4
lbl_801CC6FC:
/* 801CC6FC 001C835C  2C 1B 00 00 */	cmpwi r27, 0
/* 801CC700 001C8360  41 82 00 2C */	beq lbl_801CC72C
/* 801CC704 001C8364  7E 2C 8B 78 */	mr r12, r17
/* 801CC708 001C8368  7E 43 93 78 */	mr r3, r18
/* 801CC70C 001C836C  7F 44 D3 78 */	mr r4, r26
/* 801CC710 001C8370  7F 65 DB 78 */	mr r5, r27
/* 801CC714 001C8374  7D 89 03 A6 */	mtctr r12
/* 801CC718 001C8378  4E 80 04 21 */	bctrl
/* 801CC71C 001C837C  2C 03 00 00 */	cmpwi r3, 0
/* 801CC720 001C8380  40 82 00 0C */	bne lbl_801CC72C
/* 801CC724 001C8384  38 60 FF FF */	li r3, -1
/* 801CC728 001C8388  48 00 00 64 */	b lbl_801CC78C
lbl_801CC72C:
/* 801CC72C 001C838C  88 01 00 70 */	lbz r0, 0x70(r1)
/* 801CC730 001C8390  2C 00 00 00 */	cmpwi r0, 0
/* 801CC734 001C8394  40 82 00 44 */	bne lbl_801CC778
/* 801CC738 001C8398  48 00 00 34 */	b lbl_801CC76C
lbl_801CC73C:
/* 801CC73C 001C839C  7E 2C 8B 78 */	mr r12, r17
/* 801CC740 001C83A0  7E 43 93 78 */	mr r3, r18
/* 801CC744 001C83A4  9A 01 00 08 */	stb r16, 8(r1)
/* 801CC748 001C83A8  38 81 00 08 */	addi r4, r1, 8
/* 801CC74C 001C83AC  38 A0 00 01 */	li r5, 1
/* 801CC750 001C83B0  7D 89 03 A6 */	mtctr r12
/* 801CC754 001C83B4  4E 80 04 21 */	bctrl
/* 801CC758 001C83B8  2C 03 00 00 */	cmpwi r3, 0
/* 801CC75C 001C83BC  40 82 00 0C */	bne lbl_801CC768
/* 801CC760 001C83C0  38 60 FF FF */	li r3, -1
/* 801CC764 001C83C4  48 00 00 28 */	b lbl_801CC78C
lbl_801CC768:
/* 801CC768 001C83C8  3B 18 00 01 */	addi r24, r24, 1
lbl_801CC76C:
/* 801CC76C 001C83CC  80 01 00 78 */	lwz r0, 0x78(r1)
/* 801CC770 001C83D0  7C 18 00 00 */	cmpw r24, r0
/* 801CC774 001C83D4  41 80 FF C8 */	blt lbl_801CC73C
lbl_801CC778:
/* 801CC778 001C83D8  7F 39 C2 14 */	add r25, r25, r24
lbl_801CC77C:
/* 801CC77C 001C83DC  88 17 00 00 */	lbz r0, 0(r23)
/* 801CC780 001C83E0  7C 00 07 75 */	extsb. r0, r0
/* 801CC784 001C83E4  40 82 F8 04 */	bne lbl_801CBF88
lbl_801CC788:
/* 801CC788 001C83E8  7F 23 CB 78 */	mr r3, r25
lbl_801CC78C:
/* 801CC78C 001C83EC  BA 01 02 80 */	lmw r16, 0x280(r1)
/* 801CC790 001C83F0  80 01 02 C4 */	lwz r0, 0x2c4(r1)
/* 801CC794 001C83F4  7C 08 03 A6 */	mtlr r0
/* 801CC798 001C83F8  38 21 02 C0 */	addi r1, r1, 0x2c0
/* 801CC79C 001C83FC  4E 80 00 20 */	blr

.global __FileWrite
__FileWrite:
/* 801CC7A0 001C8400  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 801CC7A4 001C8404  7C 08 02 A6 */	mflr r0
/* 801CC7A8 001C8408  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CC7AC 001C840C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 801CC7B0 001C8410  7C BF 2B 78 */	mr r31, r5
/* 801CC7B4 001C8414  93 C1 00 08 */	stw r30, 8(r1)
/* 801CC7B8 001C8418  7C 7E 1B 78 */	mr r30, r3
/* 801CC7BC 001C841C  7C 83 23 78 */	mr r3, r4
/* 801CC7C0 001C8420  38 80 00 01 */	li r4, 1
/* 801CC7C4 001C8424  7F C6 F3 78 */	mr r6, r30
/* 801CC7C8 001C8428  4B FF D1 01 */	bl __fwrite
/* 801CC7CC 001C842C  7C 1F 18 40 */	cmplw r31, r3
/* 801CC7D0 001C8430  40 82 00 08 */	bne lbl_801CC7D8
/* 801CC7D4 001C8434  48 00 00 08 */	b lbl_801CC7DC
lbl_801CC7D8:
/* 801CC7D8 001C8438  3B C0 00 00 */	li r30, 0
lbl_801CC7DC:
/* 801CC7DC 001C843C  7F C3 F3 78 */	mr r3, r30
/* 801CC7E0 001C8440  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 801CC7E4 001C8444  83 C1 00 08 */	lwz r30, 8(r1)
/* 801CC7E8 001C8448  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801CC7EC 001C844C  7C 08 03 A6 */	mtlr r0
/* 801CC7F0 001C8450  38 21 00 10 */	addi r1, r1, 0x10
/* 801CC7F4 001C8454  4E 80 00 20 */	blr

.global __StringWrite
__StringWrite:
/* 801CC7F8 001C8458  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 801CC7FC 001C845C  7C 08 02 A6 */	mflr r0
/* 801CC800 001C8460  90 01 00 14 */	stw r0, 0x14(r1)
/* 801CC804 001C8464  93 E1 00 0C */	stw r31, 0xc(r1)
/* 801CC808 001C8468  93 C1 00 08 */	stw r30, 8(r1)
/* 801CC80C 001C846C  7C 7E 1B 78 */	mr r30, r3
/* 801CC810 001C8470  80 C3 00 08 */	lwz r6, 8(r3)
/* 801CC814 001C8474  80 E3 00 04 */	lwz r7, 4(r3)
/* 801CC818 001C8478  7C 06 2A 14 */	add r0, r6, r5
/* 801CC81C 001C847C  7C 00 38 40 */	cmplw r0, r7
/* 801CC820 001C8480  7F E6 38 50 */	subf r31, r6, r7
/* 801CC824 001C8484  41 81 00 08 */	bgt lbl_801CC82C
/* 801CC828 001C8488  7C BF 2B 78 */	mr r31, r5
lbl_801CC82C:
/* 801CC82C 001C848C  80 03 00 00 */	lwz r0, 0(r3)
/* 801CC830 001C8490  7F E5 FB 78 */	mr r5, r31
/* 801CC834 001C8494  7C 60 32 14 */	add r3, r0, r6
/* 801CC838 001C8498  4B E3 77 C9 */	bl memcpy
/* 801CC83C 001C849C  80 1E 00 08 */	lwz r0, 8(r30)
/* 801CC840 001C84A0  38 60 00 01 */	li r3, 1
/* 801CC844 001C84A4  7C 00 FA 14 */	add r0, r0, r31
/* 801CC848 001C84A8  90 1E 00 08 */	stw r0, 8(r30)
/* 801CC84C 001C84AC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 801CC850 001C84B0  83 C1 00 08 */	lwz r30, 8(r1)
/* 801CC854 001C84B4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801CC858 001C84B8  7C 08 03 A6 */	mtlr r0
/* 801CC85C 001C84BC  38 21 00 10 */	addi r1, r1, 0x10
/* 801CC860 001C84C0  4E 80 00 20 */	blr

.global printf
printf:
/* 801CC864 001C84C4  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 801CC868 001C84C8  7C 08 02 A6 */	mflr r0
/* 801CC86C 001C84CC  90 01 00 84 */	stw r0, 0x84(r1)
/* 801CC870 001C84D0  93 E1 00 7C */	stw r31, 0x7c(r1)
/* 801CC874 001C84D4  93 C1 00 78 */	stw r30, 0x78(r1)
/* 801CC878 001C84D8  7C 7E 1B 78 */	mr r30, r3
/* 801CC87C 001C84DC  40 86 00 24 */	bne cr1, lbl_801CC8A0
/* 801CC880 001C84E0  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 801CC884 001C84E4  D8 41 00 30 */	stfd f2, 0x30(r1)
/* 801CC888 001C84E8  D8 61 00 38 */	stfd f3, 0x38(r1)
/* 801CC88C 001C84EC  D8 81 00 40 */	stfd f4, 0x40(r1)
/* 801CC890 001C84F0  D8 A1 00 48 */	stfd f5, 0x48(r1)
/* 801CC894 001C84F4  D8 C1 00 50 */	stfd f6, 0x50(r1)
/* 801CC898 001C84F8  D8 E1 00 58 */	stfd f7, 0x58(r1)
/* 801CC89C 001C84FC  D9 01 00 60 */	stfd f8, 0x60(r1)
lbl_801CC8A0:
/* 801CC8A0 001C8500  3F E0 80 42 */	lis r31, lbl_804228F0@ha
/* 801CC8A4 001C8504  90 81 00 0C */	stw r4, 0xc(r1)
/* 801CC8A8 001C8508  3B FF 28 F0 */	addi r31, r31, lbl_804228F0@l
/* 801CC8AC 001C850C  38 80 FF FF */	li r4, -1
/* 801CC8B0 001C8510  90 61 00 08 */	stw r3, 8(r1)
/* 801CC8B4 001C8514  38 7F 00 50 */	addi r3, r31, 0x50
/* 801CC8B8 001C8518  90 A1 00 10 */	stw r5, 0x10(r1)
/* 801CC8BC 001C851C  90 C1 00 14 */	stw r6, 0x14(r1)
/* 801CC8C0 001C8520  90 E1 00 18 */	stw r7, 0x18(r1)
/* 801CC8C4 001C8524  91 01 00 1C */	stw r8, 0x1c(r1)
/* 801CC8C8 001C8528  91 21 00 20 */	stw r9, 0x20(r1)
/* 801CC8CC 001C852C  91 41 00 24 */	stw r10, 0x24(r1)
/* 801CC8D0 001C8530  48 00 3F 95 */	bl fwide
/* 801CC8D4 001C8534  2C 03 00 00 */	cmpwi r3, 0
/* 801CC8D8 001C8538  41 80 00 0C */	blt lbl_801CC8E4
/* 801CC8DC 001C853C  38 60 FF FF */	li r3, -1
/* 801CC8E0 001C8540  48 00 00 34 */	b lbl_801CC914
lbl_801CC8E4:
/* 801CC8E4 001C8544  38 81 00 88 */	addi r4, r1, 0x88
/* 801CC8E8 001C8548  38 01 00 08 */	addi r0, r1, 8
/* 801CC8EC 001C854C  3C A0 01 00 */	lis r5, 0x100
/* 801CC8F0 001C8550  3C 60 80 1D */	lis r3, __FileWrite@ha
/* 801CC8F4 001C8554  90 A1 00 68 */	stw r5, 0x68(r1)
/* 801CC8F8 001C8558  38 C1 00 68 */	addi r6, r1, 0x68
/* 801CC8FC 001C855C  7F C5 F3 78 */	mr r5, r30
/* 801CC900 001C8560  38 63 C7 A0 */	addi r3, r3, __FileWrite@l
/* 801CC904 001C8564  90 81 00 6C */	stw r4, 0x6c(r1)
/* 801CC908 001C8568  38 9F 00 50 */	addi r4, r31, 0x50
/* 801CC90C 001C856C  90 01 00 70 */	stw r0, 0x70(r1)
/* 801CC910 001C8570  4B FF F6 35 */	bl __pformatter
lbl_801CC914:
/* 801CC914 001C8574  80 01 00 84 */	lwz r0, 0x84(r1)
/* 801CC918 001C8578  83 E1 00 7C */	lwz r31, 0x7c(r1)
/* 801CC91C 001C857C  83 C1 00 78 */	lwz r30, 0x78(r1)
/* 801CC920 001C8580  7C 08 03 A6 */	mtlr r0
/* 801CC924 001C8584  38 21 00 80 */	addi r1, r1, 0x80
/* 801CC928 001C8588  4E 80 00 20 */	blr

.global vprintf
vprintf:
/* 801CC92C 001C858C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 801CC930 001C8590  7C 08 02 A6 */	mflr r0
/* 801CC934 001C8594  90 01 00 24 */	stw r0, 0x24(r1)
/* 801CC938 001C8598  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 801CC93C 001C859C  3F E0 80 42 */	lis r31, lbl_804228F0@ha
/* 801CC940 001C85A0  3B FF 28 F0 */	addi r31, r31, lbl_804228F0@l
/* 801CC944 001C85A4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 801CC948 001C85A8  7C 9E 23 78 */	mr r30, r4
/* 801CC94C 001C85AC  38 80 FF FF */	li r4, -1
/* 801CC950 001C85B0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 801CC954 001C85B4  7C 7D 1B 78 */	mr r29, r3
/* 801CC958 001C85B8  38 7F 00 50 */	addi r3, r31, 0x50
/* 801CC95C 001C85BC  48 00 3F 09 */	bl fwide
/* 801CC960 001C85C0  2C 03 00 00 */	cmpwi r3, 0
/* 801CC964 001C85C4  41 80 00 0C */	blt lbl_801CC970
/* 801CC968 001C85C8  38 60 FF FF */	li r3, -1
/* 801CC96C 001C85CC  48 00 00 1C */	b lbl_801CC988
lbl_801CC970:
/* 801CC970 001C85D0  3C 60 80 1D */	lis r3, __FileWrite@ha
/* 801CC974 001C85D4  7F A5 EB 78 */	mr r5, r29
/* 801CC978 001C85D8  7F C6 F3 78 */	mr r6, r30
/* 801CC97C 001C85DC  38 9F 00 50 */	addi r4, r31, 0x50
/* 801CC980 001C85E0  38 63 C7 A0 */	addi r3, r3, __FileWrite@l
/* 801CC984 001C85E4  4B FF F5 C1 */	bl __pformatter
lbl_801CC988:
/* 801CC988 001C85E8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 801CC98C 001C85EC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 801CC990 001C85F0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 801CC994 001C85F4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 801CC998 001C85F8  7C 08 03 A6 */	mtlr r0
/* 801CC99C 001C85FC  38 21 00 20 */	addi r1, r1, 0x20
/* 801CC9A0 001C8600  4E 80 00 20 */	blr

.global vsprintf
vsprintf:
/* 801CC9A4 001C8604  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 801CC9A8 001C8608  7C 08 02 A6 */	mflr r0
/* 801CC9AC 001C860C  7C A6 2B 78 */	mr r6, r5
/* 801CC9B0 001C8610  7C 85 23 78 */	mr r5, r4
/* 801CC9B4 001C8614  90 01 00 34 */	stw r0, 0x34(r1)
/* 801CC9B8 001C8618  3C E0 80 1D */	lis r7, __StringWrite@ha
/* 801CC9BC 001C861C  38 81 00 08 */	addi r4, r1, 8
/* 801CC9C0 001C8620  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 801CC9C4 001C8624  3B E0 00 00 */	li r31, 0
/* 801CC9C8 001C8628  93 C1 00 28 */	stw r30, 0x28(r1)
/* 801CC9CC 001C862C  3B C0 FF FF */	li r30, -1
/* 801CC9D0 001C8630  93 A1 00 24 */	stw r29, 0x24(r1)
/* 801CC9D4 001C8634  7C 7D 1B 78 */	mr r29, r3
/* 801CC9D8 001C8638  90 61 00 08 */	stw r3, 8(r1)
/* 801CC9DC 001C863C  38 67 C7 F8 */	addi r3, r7, __StringWrite@l
/* 801CC9E0 001C8640  93 C1 00 0C */	stw r30, 0xc(r1)
/* 801CC9E4 001C8644  93 E1 00 10 */	stw r31, 0x10(r1)
/* 801CC9E8 001C8648  4B FF F5 5D */	bl __pformatter
/* 801CC9EC 001C864C  2C 1D 00 00 */	cmpwi r29, 0
/* 801CC9F0 001C8650  41 82 00 18 */	beq lbl_801CCA08
/* 801CC9F4 001C8654  7C 03 F0 40 */	cmplw r3, r30
/* 801CC9F8 001C8658  40 80 00 0C */	bge lbl_801CCA04
/* 801CC9FC 001C865C  7F FD 19 AE */	stbx r31, r29, r3
/* 801CCA00 001C8660  48 00 00 08 */	b lbl_801CCA08
lbl_801CCA04:
/* 801CCA04 001C8664  9B FD FF FE */	stb r31, -2(r29)
lbl_801CCA08:
/* 801CCA08 001C8668  80 01 00 34 */	lwz r0, 0x34(r1)
/* 801CCA0C 001C866C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 801CCA10 001C8670  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 801CCA14 001C8674  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 801CCA18 001C8678  7C 08 03 A6 */	mtlr r0
/* 801CCA1C 001C867C  38 21 00 30 */	addi r1, r1, 0x30
/* 801CCA20 001C8680  4E 80 00 20 */	blr

.global snprintf
snprintf:
/* 801CCA24 001C8684  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 801CCA28 001C8688  7C 08 02 A6 */	mflr r0
/* 801CCA2C 001C868C  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 801CCA30 001C8690  BF 61 00 8C */	stmw r27, 0x8c(r1)
/* 801CCA34 001C8694  7C 7B 1B 78 */	mr r27, r3
/* 801CCA38 001C8698  7C 9C 23 78 */	mr r28, r4
/* 801CCA3C 001C869C  40 86 00 24 */	bne cr1, lbl_801CCA60
/* 801CCA40 001C86A0  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 801CCA44 001C86A4  D8 41 00 30 */	stfd f2, 0x30(r1)
/* 801CCA48 001C86A8  D8 61 00 38 */	stfd f3, 0x38(r1)
/* 801CCA4C 001C86AC  D8 81 00 40 */	stfd f4, 0x40(r1)
/* 801CCA50 001C86B0  D8 A1 00 48 */	stfd f5, 0x48(r1)
/* 801CCA54 001C86B4  D8 C1 00 50 */	stfd f6, 0x50(r1)
/* 801CCA58 001C86B8  D8 E1 00 58 */	stfd f7, 0x58(r1)
/* 801CCA5C 001C86BC  D9 01 00 60 */	stfd f8, 0x60(r1)
lbl_801CCA60:
/* 801CCA60 001C86C0  39 81 00 A8 */	addi r12, r1, 0xa8
/* 801CCA64 001C86C4  38 01 00 08 */	addi r0, r1, 8
/* 801CCA68 001C86C8  3F C0 03 00 */	lis r30, 0x300
/* 801CCA6C 001C86CC  3B E0 00 00 */	li r31, 0
/* 801CCA70 001C86D0  90 A1 00 10 */	stw r5, 0x10(r1)
/* 801CCA74 001C86D4  3B A1 00 74 */	addi r29, r1, 0x74
/* 801CCA78 001C86D8  3D 60 80 1D */	lis r11, __StringWrite@ha
/* 801CCA7C 001C86DC  90 C1 00 14 */	stw r6, 0x14(r1)
/* 801CCA80 001C86E0  7F A6 EB 78 */	mr r6, r29
/* 801CCA84 001C86E4  90 61 00 08 */	stw r3, 8(r1)
/* 801CCA88 001C86E8  90 61 00 68 */	stw r3, 0x68(r1)
/* 801CCA8C 001C86EC  38 6B C7 F8 */	addi r3, r11, __StringWrite@l
/* 801CCA90 001C86F0  90 81 00 0C */	stw r4, 0xc(r1)
/* 801CCA94 001C86F4  90 81 00 6C */	stw r4, 0x6c(r1)
/* 801CCA98 001C86F8  38 81 00 68 */	addi r4, r1, 0x68
/* 801CCA9C 001C86FC  90 E1 00 18 */	stw r7, 0x18(r1)
/* 801CCAA0 001C8700  91 01 00 1C */	stw r8, 0x1c(r1)
/* 801CCAA4 001C8704  91 21 00 20 */	stw r9, 0x20(r1)
/* 801CCAA8 001C8708  91 41 00 24 */	stw r10, 0x24(r1)
/* 801CCAAC 001C870C  93 C1 00 74 */	stw r30, 0x74(r1)
/* 801CCAB0 001C8710  91 81 00 78 */	stw r12, 0x78(r1)
/* 801CCAB4 001C8714  90 01 00 7C */	stw r0, 0x7c(r1)
/* 801CCAB8 001C8718  93 E1 00 70 */	stw r31, 0x70(r1)
/* 801CCABC 001C871C  4B FF F4 89 */	bl __pformatter
/* 801CCAC0 001C8720  2C 1B 00 00 */	cmpwi r27, 0
/* 801CCAC4 001C8724  41 82 00 24 */	beq lbl_801CCAE8
/* 801CCAC8 001C8728  7C 03 E0 40 */	cmplw r3, r28
/* 801CCACC 001C872C  40 80 00 0C */	bge lbl_801CCAD8
/* 801CCAD0 001C8730  7F FB 19 AE */	stbx r31, r27, r3
/* 801CCAD4 001C8734  48 00 00 14 */	b lbl_801CCAE8
lbl_801CCAD8:
/* 801CCAD8 001C8738  2C 1C 00 00 */	cmpwi r28, 0
/* 801CCADC 001C873C  41 82 00 0C */	beq lbl_801CCAE8
/* 801CCAE0 001C8740  7C 9B E2 14 */	add r4, r27, r28
/* 801CCAE4 001C8744  9B E4 FF FF */	stb r31, -1(r4)
lbl_801CCAE8:
/* 801CCAE8 001C8748  BB 61 00 8C */	lmw r27, 0x8c(r1)
/* 801CCAEC 001C874C  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 801CCAF0 001C8750  7C 08 03 A6 */	mtlr r0
/* 801CCAF4 001C8754  38 21 00 A0 */	addi r1, r1, 0xa0
/* 801CCAF8 001C8758  4E 80 00 20 */	blr

.global sprintf
sprintf:
/* 801CCAFC 001C875C  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 801CCB00 001C8760  7C 08 02 A6 */	mflr r0
/* 801CCB04 001C8764  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 801CCB08 001C8768  BF 61 00 8C */	stmw r27, 0x8c(r1)
/* 801CCB0C 001C876C  7C 7B 1B 78 */	mr r27, r3
/* 801CCB10 001C8770  40 86 00 24 */	bne cr1, lbl_801CCB34
/* 801CCB14 001C8774  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 801CCB18 001C8778  D8 41 00 30 */	stfd f2, 0x30(r1)
/* 801CCB1C 001C877C  D8 61 00 38 */	stfd f3, 0x38(r1)
/* 801CCB20 001C8780  D8 81 00 40 */	stfd f4, 0x40(r1)
/* 801CCB24 001C8784  D8 A1 00 48 */	stfd f5, 0x48(r1)
/* 801CCB28 001C8788  D8 C1 00 50 */	stfd f6, 0x50(r1)
/* 801CCB2C 001C878C  D8 E1 00 58 */	stfd f7, 0x58(r1)
/* 801CCB30 001C8790  D9 01 00 60 */	stfd f8, 0x60(r1)
lbl_801CCB34:
/* 801CCB34 001C8794  39 81 00 A8 */	addi r12, r1, 0xa8
/* 801CCB38 001C8798  38 01 00 08 */	addi r0, r1, 8
/* 801CCB3C 001C879C  3F A0 02 00 */	lis r29, 0x200
/* 801CCB40 001C87A0  3B C0 FF FF */	li r30, -1
/* 801CCB44 001C87A4  3B E0 00 00 */	li r31, 0
/* 801CCB48 001C87A8  90 A1 00 10 */	stw r5, 0x10(r1)
/* 801CCB4C 001C87AC  3B 81 00 74 */	addi r28, r1, 0x74
/* 801CCB50 001C87B0  3D 60 80 1D */	lis r11, __StringWrite@ha
/* 801CCB54 001C87B4  90 C1 00 14 */	stw r6, 0x14(r1)
/* 801CCB58 001C87B8  7C 85 23 78 */	mr r5, r4
/* 801CCB5C 001C87BC  7F 86 E3 78 */	mr r6, r28
/* 801CCB60 001C87C0  90 81 00 0C */	stw r4, 0xc(r1)
/* 801CCB64 001C87C4  38 81 00 68 */	addi r4, r1, 0x68
/* 801CCB68 001C87C8  90 61 00 08 */	stw r3, 8(r1)
/* 801CCB6C 001C87CC  90 61 00 68 */	stw r3, 0x68(r1)
/* 801CCB70 001C87D0  38 6B C7 F8 */	addi r3, r11, __StringWrite@l
/* 801CCB74 001C87D4  90 E1 00 18 */	stw r7, 0x18(r1)
/* 801CCB78 001C87D8  91 01 00 1C */	stw r8, 0x1c(r1)
/* 801CCB7C 001C87DC  91 21 00 20 */	stw r9, 0x20(r1)
/* 801CCB80 001C87E0  91 41 00 24 */	stw r10, 0x24(r1)
/* 801CCB84 001C87E4  93 A1 00 74 */	stw r29, 0x74(r1)
/* 801CCB88 001C87E8  91 81 00 78 */	stw r12, 0x78(r1)
/* 801CCB8C 001C87EC  90 01 00 7C */	stw r0, 0x7c(r1)
/* 801CCB90 001C87F0  93 C1 00 6C */	stw r30, 0x6c(r1)
/* 801CCB94 001C87F4  93 E1 00 70 */	stw r31, 0x70(r1)
/* 801CCB98 001C87F8  4B FF F3 AD */	bl __pformatter
/* 801CCB9C 001C87FC  2C 1B 00 00 */	cmpwi r27, 0
/* 801CCBA0 001C8800  41 82 00 18 */	beq lbl_801CCBB8
/* 801CCBA4 001C8804  7C 03 F0 40 */	cmplw r3, r30
/* 801CCBA8 001C8808  40 80 00 0C */	bge lbl_801CCBB4
/* 801CCBAC 001C880C  7F FB 19 AE */	stbx r31, r27, r3
/* 801CCBB0 001C8810  48 00 00 08 */	b lbl_801CCBB8
lbl_801CCBB4:
/* 801CCBB4 001C8814  9B FB FF FE */	stb r31, -2(r27)
lbl_801CCBB8:
/* 801CCBB8 001C8818  BB 61 00 8C */	lmw r27, 0x8c(r1)
/* 801CCBBC 001C881C  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 801CCBC0 001C8820  7C 08 03 A6 */	mtlr r0
/* 801CCBC4 001C8824  38 21 00 A0 */	addi r1, r1, 0xa0
/* 801CCBC8 001C8828  4E 80 00 20 */	blr