summaryrefslogtreecommitdiff
path: root/asm/SDK/VF/pf_path.s
blob: 8f233588aadb0782abc1903717b6a556a3dffb6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
.include "macros.inc"

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

VFiPFPATH_DoSplitPath:
/* 80315C30 00311890  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80315C34 00311894  7C 08 02 A6 */	mflr r0
/* 80315C38 00311898  90 01 00 44 */	stw r0, 0x44(r1)
/* 80315C3C 0031189C  39 61 00 40 */	addi r11, r1, 0x40
/* 80315C40 003118A0  4B EB 14 E5 */	bl _savegpr_26
/* 80315C44 003118A4  2C 04 00 00 */	cmpwi r4, 0
/* 80315C48 003118A8  7C 7B 1B 78 */	mr r27, r3
/* 80315C4C 003118AC  7C 9C 23 78 */	mr r28, r4
/* 80315C50 003118B0  7C BD 2B 78 */	mr r29, r5
/* 80315C54 003118B4  7C DE 33 78 */	mr r30, r6
/* 80315C58 003118B8  40 82 00 0C */	bne lbl_80315C64
/* 80315C5C 003118BC  38 60 00 0A */	li r3, 0xa
/* 80315C60 003118C0  48 00 01 B0 */	b lbl_80315E10
lbl_80315C64:
/* 80315C64 003118C4  4B FE F6 7D */	bl VFiPFSTR_GetCodeMode
/* 80315C68 003118C8  7C 7A 1B 78 */	mr r26, r3
/* 80315C6C 003118CC  7F 83 E3 78 */	mr r3, r28
/* 80315C70 003118D0  7F 44 D3 78 */	mr r4, r26
/* 80315C74 003118D4  4B FE F6 65 */	bl VFiPFSTR_SetCodeMode
/* 80315C78 003118D8  7F A3 EB 78 */	mr r3, r29
/* 80315C7C 003118DC  7F 44 D3 78 */	mr r4, r26
/* 80315C80 003118E0  4B FE F6 59 */	bl VFiPFSTR_SetCodeMode
/* 80315C84 003118E4  38 00 00 00 */	li r0, 0
/* 80315C88 003118E8  2C 1D 00 00 */	cmpwi r29, 0
/* 80315C8C 003118EC  90 1C 00 00 */	stw r0, 0(r28)
/* 80315C90 003118F0  41 82 00 08 */	beq lbl_80315C98
/* 80315C94 003118F4  90 1D 00 00 */	stw r0, 0(r29)
lbl_80315C98:
/* 80315C98 003118F8  7F 63 DB 78 */	mr r3, r27
/* 80315C9C 003118FC  38 8D 8C F8 */	addi r4, r13, lbl_8063DFB8-_SDA_BASE_
/* 80315CA0 00311900  38 A0 00 01 */	li r5, 1
/* 80315CA4 00311904  38 C0 00 01 */	li r6, 1
/* 80315CA8 00311908  38 E0 00 01 */	li r7, 1
/* 80315CAC 0031190C  4B FE F9 B5 */	bl VFiPFSTR_StrNCmp
/* 80315CB0 00311910  2C 03 00 00 */	cmpwi r3, 0
/* 80315CB4 00311914  40 82 00 10 */	bne lbl_80315CC4
/* 80315CB8 00311918  7F 63 DB 78 */	mr r3, r27
/* 80315CBC 0031191C  38 80 00 02 */	li r4, 2
/* 80315CC0 00311920  4B FE F6 79 */	bl VFiPFSTR_MoveStrPos
lbl_80315CC4:
/* 80315CC4 00311924  83 FB 00 00 */	lwz r31, 0(r27)
/* 80315CC8 00311928  7F C4 F3 78 */	mr r4, r30
/* 80315CCC 0031192C  38 61 00 18 */	addi r3, r1, 0x18
/* 80315CD0 00311930  93 E1 00 18 */	stw r31, 0x18(r1)
/* 80315CD4 00311934  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80315CD8 00311938  93 41 00 24 */	stw r26, 0x24(r1)
/* 80315CDC 0031193C  48 00 0E 2D */	bl VFiPFPATH_GetNextTokenOfPath
/* 80315CE0 00311940  2C 03 00 00 */	cmpwi r3, 0
/* 80315CE4 00311944  41 82 00 08 */	beq lbl_80315CEC
/* 80315CE8 00311948  48 00 01 28 */	b lbl_80315E10
lbl_80315CEC:
/* 80315CEC 0031194C  80 01 00 18 */	lwz r0, 0x18(r1)
/* 80315CF0 00311950  2C 00 00 00 */	cmpwi r0, 0
/* 80315CF4 00311954  41 82 00 14 */	beq lbl_80315D08
/* 80315CF8 00311958  38 61 00 18 */	addi r3, r1, 0x18
/* 80315CFC 0031195C  4B FE F7 CD */	bl VFiPFSTR_StrLen
/* 80315D00 00311960  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 80315D04 00311964  40 82 00 0C */	bne lbl_80315D10
lbl_80315D08:
/* 80315D08 00311968  38 60 00 02 */	li r3, 2
/* 80315D0C 0031196C  48 00 01 04 */	b lbl_80315E10
lbl_80315D10:
/* 80315D10 00311970  80 1B 00 04 */	lwz r0, 4(r27)
/* 80315D14 00311974  80 A1 00 1C */	lwz r5, 0x1c(r1)
/* 80315D18 00311978  7C 00 28 40 */	cmplw r0, r5
/* 80315D1C 0031197C  40 80 00 0C */	bge lbl_80315D28
/* 80315D20 00311980  38 60 00 02 */	li r3, 2
/* 80315D24 00311984  48 00 00 EC */	b lbl_80315E10
lbl_80315D28:
/* 80315D28 00311988  80 81 00 18 */	lwz r4, 0x18(r1)
/* 80315D2C 0031198C  80 61 00 20 */	lwz r3, 0x20(r1)
/* 80315D30 00311990  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80315D34 00311994  90 81 00 08 */	stw r4, 8(r1)
/* 80315D38 00311998  90 A1 00 0C */	stw r5, 0xc(r1)
/* 80315D3C 0031199C  90 61 00 10 */	stw r3, 0x10(r1)
/* 80315D40 003119A0  90 01 00 14 */	stw r0, 0x14(r1)
lbl_80315D44:
/* 80315D44 003119A4  38 61 00 18 */	addi r3, r1, 0x18
/* 80315D48 003119A8  38 8D 8C FC */	addi r4, r13, lbl_8063DFBC-_SDA_BASE_
/* 80315D4C 003119AC  38 A0 00 02 */	li r5, 2
/* 80315D50 003119B0  38 C0 00 00 */	li r6, 0
/* 80315D54 003119B4  38 E0 00 01 */	li r7, 1
/* 80315D58 003119B8  4B FE F9 09 */	bl VFiPFSTR_StrNCmp
/* 80315D5C 003119BC  2C 03 00 00 */	cmpwi r3, 0
/* 80315D60 003119C0  40 82 00 0C */	bne lbl_80315D6C
/* 80315D64 003119C4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80315D68 003119C8  48 00 00 70 */	b lbl_80315DD8
lbl_80315D6C:
/* 80315D6C 003119CC  7F C4 F3 78 */	mr r4, r30
/* 80315D70 003119D0  38 61 00 18 */	addi r3, r1, 0x18
/* 80315D74 003119D4  48 00 0D 95 */	bl VFiPFPATH_GetNextTokenOfPath
/* 80315D78 003119D8  2C 03 00 00 */	cmpwi r3, 0
/* 80315D7C 003119DC  41 82 00 08 */	beq lbl_80315D84
/* 80315D80 003119E0  48 00 00 90 */	b lbl_80315E10
lbl_80315D84:
/* 80315D84 003119E4  38 61 00 18 */	addi r3, r1, 0x18
/* 80315D88 003119E8  4B FE F7 41 */	bl VFiPFSTR_StrLen
/* 80315D8C 003119EC  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 80315D90 003119F0  40 82 00 0C */	bne lbl_80315D9C
/* 80315D94 003119F4  38 60 00 02 */	li r3, 2
/* 80315D98 003119F8  48 00 00 78 */	b lbl_80315E10
lbl_80315D9C:
/* 80315D9C 003119FC  80 1B 00 04 */	lwz r0, 4(r27)
/* 80315DA0 00311A00  80 A1 00 1C */	lwz r5, 0x1c(r1)
/* 80315DA4 00311A04  7C 00 28 40 */	cmplw r0, r5
/* 80315DA8 00311A08  41 80 00 30 */	blt lbl_80315DD8
/* 80315DAC 00311A0C  80 81 00 18 */	lwz r4, 0x18(r1)
/* 80315DB0 00311A10  2C 04 00 00 */	cmpwi r4, 0
/* 80315DB4 00311A14  41 82 00 24 */	beq lbl_80315DD8
/* 80315DB8 00311A18  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80315DBC 00311A1C  80 61 00 20 */	lwz r3, 0x20(r1)
/* 80315DC0 00311A20  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80315DC4 00311A24  90 81 00 08 */	stw r4, 8(r1)
/* 80315DC8 00311A28  90 A1 00 0C */	stw r5, 0xc(r1)
/* 80315DCC 00311A2C  90 61 00 10 */	stw r3, 0x10(r1)
/* 80315DD0 00311A30  90 01 00 14 */	stw r0, 0x14(r1)
/* 80315DD4 00311A34  4B FF FF 70 */	b lbl_80315D44
lbl_80315DD8:
/* 80315DD8 00311A38  80 1B 00 00 */	lwz r0, 0(r27)
/* 80315DDC 00311A3C  2C 1D 00 00 */	cmpwi r29, 0
/* 80315DE0 00311A40  90 1C 00 00 */	stw r0, 0(r28)
/* 80315DE4 00311A44  93 FC 00 04 */	stw r31, 4(r28)
/* 80315DE8 00311A48  41 82 00 24 */	beq lbl_80315E0C
/* 80315DEC 00311A4C  80 A1 00 08 */	lwz r5, 8(r1)
/* 80315DF0 00311A50  80 81 00 0C */	lwz r4, 0xc(r1)
/* 80315DF4 00311A54  80 61 00 10 */	lwz r3, 0x10(r1)
/* 80315DF8 00311A58  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80315DFC 00311A5C  90 BD 00 00 */	stw r5, 0(r29)
/* 80315E00 00311A60  90 9D 00 04 */	stw r4, 4(r29)
/* 80315E04 00311A64  90 7D 00 08 */	stw r3, 8(r29)
/* 80315E08 00311A68  90 1D 00 0C */	stw r0, 0xc(r29)
lbl_80315E0C:
/* 80315E0C 00311A6C  38 60 00 00 */	li r3, 0
lbl_80315E10:
/* 80315E10 00311A70  39 61 00 40 */	addi r11, r1, 0x40
/* 80315E14 00311A74  4B EB 13 5D */	bl _restgpr_26
/* 80315E18 00311A78  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80315E1C 00311A7C  7C 08 03 A6 */	mtlr r0
/* 80315E20 00311A80  38 21 00 40 */	addi r1, r1, 0x40
/* 80315E24 00311A84  4E 80 00 20 */	blr

.global VFiPFPATH_GetNextCharOfPattern
VFiPFPATH_GetNextCharOfPattern:
/* 80315E28 00311A88  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80315E2C 00311A8C  7C 08 02 A6 */	mflr r0
/* 80315E30 00311A90  90 01 00 24 */	stw r0, 0x24(r1)
/* 80315E34 00311A94  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80315E38 00311A98  7C 9F 23 78 */	mr r31, r4
/* 80315E3C 00311A9C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80315E40 00311AA0  7C 7E 1B 78 */	mr r30, r3
/* 80315E44 00311AA4  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80315E48 00311AA8  28 00 00 01 */	cmplwi r0, 1
/* 80315E4C 00311AAC  40 82 00 C4 */	bne lbl_80315F10
/* 80315E50 00311AB0  80 A3 00 00 */	lwz r5, 0(r3)
/* 80315E54 00311AB4  38 00 00 00 */	li r0, 0
/* 80315E58 00311AB8  38 85 00 01 */	addi r4, r5, 1
/* 80315E5C 00311ABC  90 83 00 00 */	stw r4, 0(r3)
/* 80315E60 00311AC0  88 85 00 00 */	lbz r4, 0(r5)
/* 80315E64 00311AC4  7C 86 07 75 */	extsb. r6, r4
/* 80315E68 00311AC8  98 81 00 10 */	stb r4, 0x10(r1)
/* 80315E6C 00311ACC  98 01 00 11 */	stb r0, 0x11(r1)
/* 80315E70 00311AD0  41 82 00 14 */	beq lbl_80315E84
/* 80315E74 00311AD4  80 83 00 04 */	lwz r4, 4(r3)
/* 80315E78 00311AD8  80 03 00 00 */	lwz r0, 0(r3)
/* 80315E7C 00311ADC  7C 04 00 40 */	cmplw r4, r0
/* 80315E80 00311AE0  40 80 00 0C */	bge lbl_80315E8C
lbl_80315E84:
/* 80315E84 00311AE4  38 60 00 00 */	li r3, 0
/* 80315E88 00311AE8  48 00 02 48 */	b lbl_803160D0
lbl_80315E8C:
/* 80315E8C 00311AEC  3C A0 80 58 */	lis r5, lbl_8057F5C8@ha
/* 80315E90 00311AF0  7C C3 33 78 */	mr r3, r6
/* 80315E94 00311AF4  38 A5 F5 C8 */	addi r5, r5, lbl_8057F5C8@l
/* 80315E98 00311AF8  38 80 00 01 */	li r4, 1
/* 80315E9C 00311AFC  81 85 00 30 */	lwz r12, 0x30(r5)
/* 80315EA0 00311B00  7D 89 03 A6 */	mtctr r12
/* 80315EA4 00311B04  4E 80 04 21 */	bctrl
/* 80315EA8 00311B08  2C 03 00 00 */	cmpwi r3, 0
/* 80315EAC 00311B0C  41 82 00 30 */	beq lbl_80315EDC
/* 80315EB0 00311B10  80 7E 00 00 */	lwz r3, 0(r30)
/* 80315EB4 00311B14  88 03 00 00 */	lbz r0, 0(r3)
/* 80315EB8 00311B18  38 63 00 01 */	addi r3, r3, 1
/* 80315EBC 00311B1C  98 01 00 11 */	stb r0, 0x11(r1)
/* 80315EC0 00311B20  90 7E 00 00 */	stw r3, 0(r30)
/* 80315EC4 00311B24  88 61 00 10 */	lbz r3, 0x10(r1)
/* 80315EC8 00311B28  88 01 00 11 */	lbz r0, 0x11(r1)
/* 80315ECC 00311B2C  54 63 40 2E */	slwi r3, r3, 8
/* 80315ED0 00311B30  7C 03 02 14 */	add r0, r3, r0
/* 80315ED4 00311B34  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80315ED8 00311B38  48 00 00 10 */	b lbl_80315EE8
lbl_80315EDC:
/* 80315EDC 00311B3C  88 01 00 10 */	lbz r0, 0x10(r1)
/* 80315EE0 00311B40  7C 00 07 74 */	extsb r0, r0
/* 80315EE4 00311B44  B0 01 00 0C */	sth r0, 0xc(r1)
lbl_80315EE8:
/* 80315EE8 00311B48  2C 1F 00 00 */	cmpwi r31, 0
/* 80315EEC 00311B4C  41 82 00 EC */	beq lbl_80315FD8
/* 80315EF0 00311B50  3C A0 80 58 */	lis r5, lbl_8057F5C8@ha
/* 80315EF4 00311B54  38 61 00 10 */	addi r3, r1, 0x10
/* 80315EF8 00311B58  38 A5 F5 C8 */	addi r5, r5, lbl_8057F5C8@l
/* 80315EFC 00311B5C  38 81 00 0C */	addi r4, r1, 0xc
/* 80315F00 00311B60  81 85 00 24 */	lwz r12, 0x24(r5)
/* 80315F04 00311B64  7D 89 03 A6 */	mtctr r12
/* 80315F08 00311B68  4E 80 04 21 */	bctrl
/* 80315F0C 00311B6C  48 00 00 CC */	b lbl_80315FD8
lbl_80315F10:
/* 80315F10 00311B70  80 A3 00 00 */	lwz r5, 0(r3)
/* 80315F14 00311B74  38 00 00 00 */	li r0, 0
/* 80315F18 00311B78  A0 A5 00 00 */	lhz r5, 0(r5)
/* 80315F1C 00311B7C  98 A1 00 10 */	stb r5, 0x10(r1)
/* 80315F20 00311B80  80 A3 00 00 */	lwz r5, 0(r3)
/* 80315F24 00311B84  A0 A5 00 00 */	lhz r5, 0(r5)
/* 80315F28 00311B88  7C A5 46 70 */	srawi r5, r5, 8
/* 80315F2C 00311B8C  98 A1 00 11 */	stb r5, 0x11(r1)
/* 80315F30 00311B90  80 A3 00 00 */	lwz r5, 0(r3)
/* 80315F34 00311B94  38 A5 00 02 */	addi r5, r5, 2
/* 80315F38 00311B98  90 A3 00 00 */	stw r5, 0(r3)
/* 80315F3C 00311B9C  88 C1 00 10 */	lbz r6, 0x10(r1)
/* 80315F40 00311BA0  98 01 00 12 */	stb r0, 0x12(r1)
/* 80315F44 00311BA4  7C C0 07 75 */	extsb. r0, r6
/* 80315F48 00311BA8  40 82 00 10 */	bne lbl_80315F58
/* 80315F4C 00311BAC  88 01 00 11 */	lbz r0, 0x11(r1)
/* 80315F50 00311BB0  7C 00 07 75 */	extsb. r0, r0
/* 80315F54 00311BB4  41 82 00 14 */	beq lbl_80315F68
lbl_80315F58:
/* 80315F58 00311BB8  80 A3 00 04 */	lwz r5, 4(r3)
/* 80315F5C 00311BBC  80 03 00 00 */	lwz r0, 0(r3)
/* 80315F60 00311BC0  7C 05 00 40 */	cmplw r5, r0
/* 80315F64 00311BC4  40 80 00 0C */	bge lbl_80315F70
lbl_80315F68:
/* 80315F68 00311BC8  38 60 00 00 */	li r3, 0
/* 80315F6C 00311BCC  48 00 01 64 */	b lbl_803160D0
lbl_80315F70:
/* 80315F70 00311BD0  88 01 00 11 */	lbz r0, 0x11(r1)
/* 80315F74 00311BD4  2C 04 00 00 */	cmpwi r4, 0
/* 80315F78 00311BD8  54 00 40 2E */	slwi r0, r0, 8
/* 80315F7C 00311BDC  7C 00 32 14 */	add r0, r0, r6
/* 80315F80 00311BE0  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80315F84 00311BE4  40 82 00 54 */	bne lbl_80315FD8
/* 80315F88 00311BE8  3F C0 80 58 */	lis r30, lbl_8057F5C8@ha
/* 80315F8C 00311BEC  38 61 00 0C */	addi r3, r1, 0xc
/* 80315F90 00311BF0  3B DE F5 C8 */	addi r30, r30, lbl_8057F5C8@l
/* 80315F94 00311BF4  38 81 00 0A */	addi r4, r1, 0xa
/* 80315F98 00311BF8  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 80315F9C 00311BFC  7D 89 03 A6 */	mtctr r12
/* 80315FA0 00311C00  4E 80 04 21 */	bctrl
/* 80315FA4 00311C04  A0 01 00 0A */	lhz r0, 0xa(r1)
/* 80315FA8 00311C08  38 80 00 01 */	li r4, 1
/* 80315FAC 00311C0C  81 9E 00 30 */	lwz r12, 0x30(r30)
/* 80315FB0 00311C10  7C 03 46 70 */	srawi r3, r0, 8
/* 80315FB4 00311C14  7D 89 03 A6 */	mtctr r12
/* 80315FB8 00311C18  4E 80 04 21 */	bctrl
/* 80315FBC 00311C1C  2C 03 00 00 */	cmpwi r3, 0
/* 80315FC0 00311C20  41 82 00 0C */	beq lbl_80315FCC
/* 80315FC4 00311C24  A0 01 00 0A */	lhz r0, 0xa(r1)
/* 80315FC8 00311C28  48 00 00 0C */	b lbl_80315FD4
lbl_80315FCC:
/* 80315FCC 00311C2C  88 01 00 10 */	lbz r0, 0x10(r1)
/* 80315FD0 00311C30  7C 00 07 74 */	extsb r0, r0
lbl_80315FD4:
/* 80315FD4 00311C34  B0 01 00 0C */	sth r0, 0xc(r1)
lbl_80315FD8:
/* 80315FD8 00311C38  A0 61 00 0C */	lhz r3, 0xc(r1)
/* 80315FDC 00311C3C  38 00 00 00 */	li r0, 0
/* 80315FE0 00311C40  28 03 00 61 */	cmplwi r3, 0x61
/* 80315FE4 00311C44  41 80 00 10 */	blt lbl_80315FF4
/* 80315FE8 00311C48  28 03 00 7A */	cmplwi r3, 0x7a
/* 80315FEC 00311C4C  41 81 00 08 */	bgt lbl_80315FF4
/* 80315FF0 00311C50  38 00 00 01 */	li r0, 1
lbl_80315FF4:
/* 80315FF4 00311C54  2C 00 00 00 */	cmpwi r0, 0
/* 80315FF8 00311C58  41 82 00 08 */	beq lbl_80316000
/* 80315FFC 00311C5C  38 63 FF E0 */	addi r3, r3, -32
lbl_80316000:
/* 80316000 00311C60  2C 1F 00 00 */	cmpwi r31, 0
/* 80316004 00311C64  B0 61 00 0C */	sth r3, 0xc(r1)
/* 80316008 00311C68  41 82 00 40 */	beq lbl_80316048
/* 8031600C 00311C6C  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80316010 00311C70  28 03 FF 41 */	cmplwi r3, 0xff41
/* 80316014 00311C74  41 80 00 1C */	blt lbl_80316030
/* 80316018 00311C78  28 03 FF 5A */	cmplwi r3, 0xff5a
/* 8031601C 00311C7C  41 81 00 14 */	bgt lbl_80316030
/* 80316020 00311C80  38 03 FF E0 */	addi r0, r3, -32
/* 80316024 00311C84  38 60 00 01 */	li r3, 1
/* 80316028 00311C88  B0 01 00 08 */	sth r0, 8(r1)
/* 8031602C 00311C8C  48 00 00 08 */	b lbl_80316034
lbl_80316030:
/* 80316030 00311C90  38 60 00 00 */	li r3, 0
lbl_80316034:
/* 80316034 00311C94  28 03 00 01 */	cmplwi r3, 1
/* 80316038 00311C98  40 82 00 94 */	bne lbl_803160CC
/* 8031603C 00311C9C  A0 01 00 08 */	lhz r0, 8(r1)
/* 80316040 00311CA0  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80316044 00311CA4  48 00 00 88 */	b lbl_803160CC
lbl_80316048:
/* 80316048 00311CA8  3C A0 80 58 */	lis r5, lbl_8057F5C8@ha
/* 8031604C 00311CAC  38 61 00 0C */	addi r3, r1, 0xc
/* 80316050 00311CB0  38 A5 F5 C8 */	addi r5, r5, lbl_8057F5C8@l
/* 80316054 00311CB4  38 81 00 08 */	addi r4, r1, 8
/* 80316058 00311CB8  81 85 00 24 */	lwz r12, 0x24(r5)
/* 8031605C 00311CBC  7D 89 03 A6 */	mtctr r12
/* 80316060 00311CC0  4E 80 04 21 */	bctrl
/* 80316064 00311CC4  A0 61 00 08 */	lhz r3, 8(r1)
/* 80316068 00311CC8  28 03 FF 41 */	cmplwi r3, 0xff41
/* 8031606C 00311CCC  41 80 00 1C */	blt lbl_80316088
/* 80316070 00311CD0  28 03 FF 5A */	cmplwi r3, 0xff5a
/* 80316074 00311CD4  41 81 00 14 */	bgt lbl_80316088
/* 80316078 00311CD8  38 03 FF E0 */	addi r0, r3, -32
/* 8031607C 00311CDC  38 60 00 01 */	li r3, 1
/* 80316080 00311CE0  B0 01 00 08 */	sth r0, 8(r1)
/* 80316084 00311CE4  48 00 00 08 */	b lbl_8031608C
lbl_80316088:
/* 80316088 00311CE8  38 60 00 00 */	li r3, 0
lbl_8031608C:
/* 8031608C 00311CEC  28 03 00 01 */	cmplwi r3, 1
/* 80316090 00311CF0  40 82 00 28 */	bne lbl_803160B8
/* 80316094 00311CF4  3C 80 80 58 */	lis r4, lbl_8057F5C8@ha
/* 80316098 00311CF8  38 61 00 08 */	addi r3, r1, 8
/* 8031609C 00311CFC  38 84 F5 C8 */	addi r4, r4, lbl_8057F5C8@l
/* 803160A0 00311D00  81 84 00 28 */	lwz r12, 0x28(r4)
/* 803160A4 00311D04  7C 64 1B 78 */	mr r4, r3
/* 803160A8 00311D08  7D 89 03 A6 */	mtctr r12
/* 803160AC 00311D0C  4E 80 04 21 */	bctrl
/* 803160B0 00311D10  38 60 00 01 */	li r3, 1
/* 803160B4 00311D14  48 00 00 08 */	b lbl_803160BC
lbl_803160B8:
/* 803160B8 00311D18  38 60 00 00 */	li r3, 0
lbl_803160BC:
/* 803160BC 00311D1C  28 03 00 01 */	cmplwi r3, 1
/* 803160C0 00311D20  40 82 00 0C */	bne lbl_803160CC
/* 803160C4 00311D24  A0 01 00 08 */	lhz r0, 8(r1)
/* 803160C8 00311D28  B0 01 00 0C */	sth r0, 0xc(r1)
lbl_803160CC:
/* 803160CC 00311D2C  A0 61 00 0C */	lhz r3, 0xc(r1)
lbl_803160D0:
/* 803160D0 00311D30  80 01 00 24 */	lwz r0, 0x24(r1)
/* 803160D4 00311D34  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 803160D8 00311D38  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 803160DC 00311D3C  7C 08 03 A6 */	mtlr r0
/* 803160E0 00311D40  38 21 00 20 */	addi r1, r1, 0x20
/* 803160E4 00311D44  4E 80 00 20 */	blr

.global VFiPFPATH_DoMatchFileNameWithPattern
VFiPFPATH_DoMatchFileNameWithPattern:
/* 803160E8 00311D48  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 803160EC 00311D4C  7C 08 02 A6 */	mflr r0
/* 803160F0 00311D50  90 01 00 54 */	stw r0, 0x54(r1)
/* 803160F4 00311D54  39 61 00 50 */	addi r11, r1, 0x50
/* 803160F8 00311D58  4B EB 10 25 */	bl _savegpr_24
/* 803160FC 00311D5C  3F A0 80 58 */	lis r29, lbl_8057F5C8@ha
/* 80316100 00311D60  7C 78 1B 78 */	mr r24, r3
/* 80316104 00311D64  7C 99 23 78 */	mr r25, r4
/* 80316108 00311D68  7C BA 2B 78 */	mr r26, r5
/* 8031610C 00311D6C  7C DB 33 78 */	mr r27, r6
/* 80316110 00311D70  7C FC 3B 78 */	mr r28, r7
/* 80316114 00311D74  3B BD F5 C8 */	addi r29, r29, lbl_8057F5C8@l
/* 80316118 00311D78  48 00 04 98 */	b lbl_803165B0
lbl_8031611C:
/* 8031611C 00311D7C  57 40 04 3E */	clrlwi r0, r26, 0x10
/* 80316120 00311D80  2C 00 00 3F */	cmpwi r0, 0x3f
/* 80316124 00311D84  41 82 00 14 */	beq lbl_80316138
/* 80316128 00311D88  40 80 03 40 */	bge lbl_80316468
/* 8031612C 00311D8C  2C 00 00 2A */	cmpwi r0, 0x2a
/* 80316130 00311D90  41 82 00 18 */	beq lbl_80316148
/* 80316134 00311D94  48 00 03 34 */	b lbl_80316468
lbl_80316138:
/* 80316138 00311D98  57 00 04 3F */	clrlwi. r0, r24, 0x10
/* 8031613C 00311D9C  40 82 03 44 */	bne lbl_80316480
/* 80316140 00311DA0  38 60 00 00 */	li r3, 0
/* 80316144 00311DA4  48 00 04 80 */	b lbl_803165C4
lbl_80316148:
/* 80316148 00311DA8  7F 63 DB 78 */	mr r3, r27
/* 8031614C 00311DAC  7F 84 E3 78 */	mr r4, r28
/* 80316150 00311DB0  4B FF FC D9 */	bl VFiPFPATH_GetNextCharOfPattern
/* 80316154 00311DB4  7C 7A 1B 78 */	mr r26, r3
/* 80316158 00311DB8  48 00 00 14 */	b lbl_8031616C
lbl_8031615C:
/* 8031615C 00311DBC  7F 63 DB 78 */	mr r3, r27
/* 80316160 00311DC0  7F 84 E3 78 */	mr r4, r28
/* 80316164 00311DC4  4B FF FC C5 */	bl VFiPFPATH_GetNextCharOfPattern
/* 80316168 00311DC8  7C 7A 1B 78 */	mr r26, r3
lbl_8031616C:
/* 8031616C 00311DCC  57 40 04 3E */	clrlwi r0, r26, 0x10
/* 80316170 00311DD0  28 00 00 2A */	cmplwi r0, 0x2a
/* 80316174 00311DD4  41 82 FF E8 */	beq lbl_8031615C
/* 80316178 00311DD8  28 00 00 3F */	cmplwi r0, 0x3f
/* 8031617C 00311DDC  41 82 FF E0 */	beq lbl_8031615C
/* 80316180 00311DE0  2C 00 00 00 */	cmpwi r0, 0
/* 80316184 00311DE4  40 82 00 0C */	bne lbl_80316190
/* 80316188 00311DE8  38 60 00 01 */	li r3, 1
/* 8031618C 00311DEC  48 00 04 38 */	b lbl_803165C4
lbl_80316190:
/* 80316190 00311DF0  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 80316194 00311DF4  3B E3 F5 C8 */	addi r31, r3, lbl_8057F5C8@l
/* 80316198 00311DF8  48 00 02 C0 */	b lbl_80316458
lbl_8031619C:
/* 8031619C 00311DFC  57 03 04 3E */	clrlwi r3, r24, 0x10
/* 803161A0 00311E00  57 40 04 3E */	clrlwi r0, r26, 0x10
/* 803161A4 00311E04  7C 03 00 40 */	cmplw r3, r0
/* 803161A8 00311E08  40 82 01 90 */	bne lbl_80316338
/* 803161AC 00311E0C  80 B9 00 00 */	lwz r5, 0(r25)
/* 803161B0 00311E10  80 19 00 04 */	lwz r0, 4(r25)
/* 803161B4 00311E14  90 A1 00 18 */	stw r5, 0x18(r1)
/* 803161B8 00311E18  90 01 00 1C */	stw r0, 0x1c(r1)
/* 803161BC 00311E1C  80 79 00 08 */	lwz r3, 8(r25)
/* 803161C0 00311E20  80 19 00 0C */	lwz r0, 0xc(r25)
/* 803161C4 00311E24  2C 03 00 00 */	cmpwi r3, 0
/* 803161C8 00311E28  90 61 00 20 */	stw r3, 0x20(r1)
/* 803161CC 00311E2C  90 01 00 24 */	stw r0, 0x24(r1)
/* 803161D0 00311E30  80 7B 00 00 */	lwz r3, 0(r27)
/* 803161D4 00311E34  80 1B 00 04 */	lwz r0, 4(r27)
/* 803161D8 00311E38  90 61 00 08 */	stw r3, 8(r1)
/* 803161DC 00311E3C  90 01 00 0C */	stw r0, 0xc(r1)
/* 803161E0 00311E40  80 7B 00 08 */	lwz r3, 8(r27)
/* 803161E4 00311E44  80 1B 00 0C */	lwz r0, 0xc(r27)
/* 803161E8 00311E48  90 61 00 10 */	stw r3, 0x10(r1)
/* 803161EC 00311E4C  90 01 00 14 */	stw r0, 0x14(r1)
/* 803161F0 00311E50  41 82 00 80 */	beq lbl_80316270
/* 803161F4 00311E54  A0 61 00 24 */	lhz r3, 0x24(r1)
/* 803161F8 00311E58  28 03 02 0A */	cmplwi r3, 0x20a
/* 803161FC 00311E5C  40 81 00 0C */	ble lbl_80316208
/* 80316200 00311E60  3B 00 00 00 */	li r24, 0
/* 80316204 00311E64  48 00 00 FC */	b lbl_80316300
lbl_80316208:
/* 80316208 00311E68  7C 85 1A 2E */	lhzx r4, r5, r3
/* 8031620C 00311E6C  38 63 00 02 */	addi r3, r3, 2
/* 80316210 00311E70  38 00 00 00 */	li r0, 0
/* 80316214 00311E74  28 04 00 61 */	cmplwi r4, 0x61
/* 80316218 00311E78  B0 61 00 24 */	sth r3, 0x24(r1)
/* 8031621C 00311E7C  41 80 00 10 */	blt lbl_8031622C
/* 80316220 00311E80  28 04 00 7A */	cmplwi r4, 0x7a
/* 80316224 00311E84  41 81 00 08 */	bgt lbl_8031622C
/* 80316228 00311E88  38 00 00 01 */	li r0, 1
lbl_8031622C:
/* 8031622C 00311E8C  2C 00 00 00 */	cmpwi r0, 0
/* 80316230 00311E90  41 82 00 08 */	beq lbl_80316238
/* 80316234 00311E94  38 84 FF E0 */	addi r4, r4, -32
lbl_80316238:
/* 80316238 00311E98  54 98 04 3E */	clrlwi r24, r4, 0x10
/* 8031623C 00311E9C  28 18 FF 41 */	cmplwi r24, 0xff41
/* 80316240 00311EA0  41 80 00 1C */	blt lbl_8031625C
/* 80316244 00311EA4  28 18 FF 5A */	cmplwi r24, 0xff5a
/* 80316248 00311EA8  41 81 00 14 */	bgt lbl_8031625C
/* 8031624C 00311EAC  38 18 FF E0 */	addi r0, r24, -32
/* 80316250 00311EB0  38 60 00 01 */	li r3, 1
/* 80316254 00311EB4  54 1E 04 3E */	clrlwi r30, r0, 0x10
/* 80316258 00311EB8  48 00 00 08 */	b lbl_80316260
lbl_8031625C:
/* 8031625C 00311EBC  38 60 00 00 */	li r3, 0
lbl_80316260:
/* 80316260 00311EC0  28 03 00 01 */	cmplwi r3, 1
/* 80316264 00311EC4  40 82 00 9C */	bne lbl_80316300
/* 80316268 00311EC8  7F D8 F3 78 */	mr r24, r30
/* 8031626C 00311ECC  48 00 00 94 */	b lbl_80316300
lbl_80316270:
/* 80316270 00311ED0  A0 61 00 24 */	lhz r3, 0x24(r1)
/* 80316274 00311ED4  28 03 00 0C */	cmplwi r3, 0xc
/* 80316278 00311ED8  41 80 00 0C */	blt lbl_80316284
/* 8031627C 00311EDC  3B 00 00 00 */	li r24, 0
/* 80316280 00311EE0  48 00 00 80 */	b lbl_80316300
lbl_80316284:
/* 80316284 00311EE4  38 03 00 01 */	addi r0, r3, 1
/* 80316288 00311EE8  81 9F 00 30 */	lwz r12, 0x30(r31)
/* 8031628C 00311EEC  B0 01 00 24 */	sth r0, 0x24(r1)
/* 80316290 00311EF0  38 80 00 01 */	li r4, 1
/* 80316294 00311EF4  7F 05 18 AE */	lbzx r24, r5, r3
/* 80316298 00311EF8  7F 18 07 74 */	extsb r24, r24
/* 8031629C 00311EFC  7F 03 C3 78 */	mr r3, r24
/* 803162A0 00311F00  7D 89 03 A6 */	mtctr r12
/* 803162A4 00311F04  4E 80 04 21 */	bctrl
/* 803162A8 00311F08  2C 03 00 00 */	cmpwi r3, 0
/* 803162AC 00311F0C  41 82 00 24 */	beq lbl_803162D0
/* 803162B0 00311F10  A0 81 00 24 */	lhz r4, 0x24(r1)
/* 803162B4 00311F14  57 00 44 2E */	rlwinm r0, r24, 8, 0x10, 0x17
/* 803162B8 00311F18  80 A1 00 18 */	lwz r5, 0x18(r1)
/* 803162BC 00311F1C  38 64 00 01 */	addi r3, r4, 1
/* 803162C0 00311F20  B0 61 00 24 */	sth r3, 0x24(r1)
/* 803162C4 00311F24  7C 65 20 AE */	lbzx r3, r5, r4
/* 803162C8 00311F28  7C 00 1A 14 */	add r0, r0, r3
/* 803162CC 00311F2C  54 18 04 3E */	clrlwi r24, r0, 0x10
lbl_803162D0:
/* 803162D0 00311F30  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 803162D4 00311F34  38 60 00 00 */	li r3, 0
/* 803162D8 00311F38  28 00 00 61 */	cmplwi r0, 0x61
/* 803162DC 00311F3C  41 80 00 10 */	blt lbl_803162EC
/* 803162E0 00311F40  28 00 00 7A */	cmplwi r0, 0x7a
/* 803162E4 00311F44  41 81 00 08 */	bgt lbl_803162EC
/* 803162E8 00311F48  38 60 00 01 */	li r3, 1
lbl_803162EC:
/* 803162EC 00311F4C  2C 03 00 00 */	cmpwi r3, 0
/* 803162F0 00311F50  57 03 04 3E */	clrlwi r3, r24, 0x10
/* 803162F4 00311F54  41 82 00 08 */	beq lbl_803162FC
/* 803162F8 00311F58  38 63 FF E0 */	addi r3, r3, -32
lbl_803162FC:
/* 803162FC 00311F5C  54 78 04 3E */	clrlwi r24, r3, 0x10
lbl_80316300:
/* 80316300 00311F60  7F 84 E3 78 */	mr r4, r28
/* 80316304 00311F64  38 61 00 08 */	addi r3, r1, 8
/* 80316308 00311F68  4B FF FB 21 */	bl VFiPFPATH_GetNextCharOfPattern
/* 8031630C 00311F6C  7C 7A 1B 78 */	mr r26, r3
/* 80316310 00311F70  7F 87 E3 78 */	mr r7, r28
/* 80316314 00311F74  57 03 04 3E */	clrlwi r3, r24, 0x10
/* 80316318 00311F78  38 81 00 18 */	addi r4, r1, 0x18
/* 8031631C 00311F7C  57 45 04 3E */	clrlwi r5, r26, 0x10
/* 80316320 00311F80  38 C1 00 08 */	addi r6, r1, 8
/* 80316324 00311F84  4B FF FD C5 */	bl VFiPFPATH_DoMatchFileNameWithPattern
/* 80316328 00311F88  2C 03 00 00 */	cmpwi r3, 0
/* 8031632C 00311F8C  41 82 00 0C */	beq lbl_80316338
/* 80316330 00311F90  38 60 00 01 */	li r3, 1
/* 80316334 00311F94  48 00 02 90 */	b lbl_803165C4
lbl_80316338:
/* 80316338 00311F98  80 19 00 08 */	lwz r0, 8(r25)
/* 8031633C 00311F9C  2C 00 00 00 */	cmpwi r0, 0
/* 80316340 00311FA0  41 82 00 84 */	beq lbl_803163C4
/* 80316344 00311FA4  A0 B9 00 0C */	lhz r5, 0xc(r25)
/* 80316348 00311FA8  28 05 02 0A */	cmplwi r5, 0x20a
/* 8031634C 00311FAC  40 81 00 0C */	ble lbl_80316358
/* 80316350 00311FB0  3B 00 00 00 */	li r24, 0
/* 80316354 00311FB4  48 00 01 04 */	b lbl_80316458
lbl_80316358:
/* 80316358 00311FB8  80 99 00 00 */	lwz r4, 0(r25)
/* 8031635C 00311FBC  38 65 00 02 */	addi r3, r5, 2
/* 80316360 00311FC0  38 00 00 00 */	li r0, 0
/* 80316364 00311FC4  7C 84 2A 2E */	lhzx r4, r4, r5
/* 80316368 00311FC8  28 04 00 61 */	cmplwi r4, 0x61
/* 8031636C 00311FCC  B0 79 00 0C */	sth r3, 0xc(r25)
/* 80316370 00311FD0  41 80 00 10 */	blt lbl_80316380
/* 80316374 00311FD4  28 04 00 7A */	cmplwi r4, 0x7a
/* 80316378 00311FD8  41 81 00 08 */	bgt lbl_80316380
/* 8031637C 00311FDC  38 00 00 01 */	li r0, 1
lbl_80316380:
/* 80316380 00311FE0  2C 00 00 00 */	cmpwi r0, 0
/* 80316384 00311FE4  41 82 00 08 */	beq lbl_8031638C
/* 80316388 00311FE8  38 84 FF E0 */	addi r4, r4, -32
lbl_8031638C:
/* 8031638C 00311FEC  54 98 04 3E */	clrlwi r24, r4, 0x10
/* 80316390 00311FF0  28 18 FF 41 */	cmplwi r24, 0xff41
/* 80316394 00311FF4  41 80 00 1C */	blt lbl_803163B0
/* 80316398 00311FF8  28 18 FF 5A */	cmplwi r24, 0xff5a
/* 8031639C 00311FFC  41 81 00 14 */	bgt lbl_803163B0
/* 803163A0 00312000  38 18 FF E0 */	addi r0, r24, -32
/* 803163A4 00312004  38 60 00 01 */	li r3, 1
/* 803163A8 00312008  54 1D 04 3E */	clrlwi r29, r0, 0x10
/* 803163AC 0031200C  48 00 00 08 */	b lbl_803163B4
lbl_803163B0:
/* 803163B0 00312010  38 60 00 00 */	li r3, 0
lbl_803163B4:
/* 803163B4 00312014  28 03 00 01 */	cmplwi r3, 1
/* 803163B8 00312018  40 82 00 A0 */	bne lbl_80316458
/* 803163BC 0031201C  7F B8 EB 78 */	mr r24, r29
/* 803163C0 00312020  48 00 00 98 */	b lbl_80316458
lbl_803163C4:
/* 803163C4 00312024  A0 B9 00 0C */	lhz r5, 0xc(r25)
/* 803163C8 00312028  28 05 00 0C */	cmplwi r5, 0xc
/* 803163CC 0031202C  41 80 00 0C */	blt lbl_803163D8
/* 803163D0 00312030  3B 00 00 00 */	li r24, 0
/* 803163D4 00312034  48 00 00 84 */	b lbl_80316458
lbl_803163D8:
/* 803163D8 00312038  38 05 00 01 */	addi r0, r5, 1
/* 803163DC 0031203C  80 79 00 00 */	lwz r3, 0(r25)
/* 803163E0 00312040  B0 19 00 0C */	sth r0, 0xc(r25)
/* 803163E4 00312044  38 80 00 01 */	li r4, 1
/* 803163E8 00312048  7F 03 28 AE */	lbzx r24, r3, r5
/* 803163EC 0031204C  81 9F 00 30 */	lwz r12, 0x30(r31)
/* 803163F0 00312050  7F 18 07 74 */	extsb r24, r24
/* 803163F4 00312054  7F 03 C3 78 */	mr r3, r24
/* 803163F8 00312058  7D 89 03 A6 */	mtctr r12
/* 803163FC 0031205C  4E 80 04 21 */	bctrl
/* 80316400 00312060  2C 03 00 00 */	cmpwi r3, 0
/* 80316404 00312064  41 82 00 24 */	beq lbl_80316428
/* 80316408 00312068  A0 99 00 0C */	lhz r4, 0xc(r25)
/* 8031640C 0031206C  57 00 44 2E */	rlwinm r0, r24, 8, 0x10, 0x17
/* 80316410 00312070  80 B9 00 00 */	lwz r5, 0(r25)
/* 80316414 00312074  38 64 00 01 */	addi r3, r4, 1
/* 80316418 00312078  B0 79 00 0C */	sth r3, 0xc(r25)
/* 8031641C 0031207C  7C 65 20 AE */	lbzx r3, r5, r4
/* 80316420 00312080  7C 00 1A 14 */	add r0, r0, r3
/* 80316424 00312084  54 18 04 3E */	clrlwi r24, r0, 0x10
lbl_80316428:
/* 80316428 00312088  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 8031642C 0031208C  38 60 00 00 */	li r3, 0
/* 80316430 00312090  28 00 00 61 */	cmplwi r0, 0x61
/* 80316434 00312094  41 80 00 10 */	blt lbl_80316444
/* 80316438 00312098  28 00 00 7A */	cmplwi r0, 0x7a
/* 8031643C 0031209C  41 81 00 08 */	bgt lbl_80316444
/* 80316440 003120A0  38 60 00 01 */	li r3, 1
lbl_80316444:
/* 80316444 003120A4  2C 03 00 00 */	cmpwi r3, 0
/* 80316448 003120A8  57 03 04 3E */	clrlwi r3, r24, 0x10
/* 8031644C 003120AC  41 82 00 08 */	beq lbl_80316454
/* 80316450 003120B0  38 63 FF E0 */	addi r3, r3, -32
lbl_80316454:
/* 80316454 003120B4  54 78 04 3E */	clrlwi r24, r3, 0x10
lbl_80316458:
/* 80316458 003120B8  57 00 04 3F */	clrlwi. r0, r24, 0x10
/* 8031645C 003120BC  40 82 FD 40 */	bne lbl_8031619C
/* 80316460 003120C0  38 60 00 00 */	li r3, 0
/* 80316464 003120C4  48 00 01 60 */	b lbl_803165C4
lbl_80316468:
/* 80316468 003120C8  57 03 04 3E */	clrlwi r3, r24, 0x10
/* 8031646C 003120CC  57 40 04 3E */	clrlwi r0, r26, 0x10
/* 80316470 003120D0  7C 03 00 40 */	cmplw r3, r0
/* 80316474 003120D4  41 82 00 0C */	beq lbl_80316480
/* 80316478 003120D8  38 60 00 00 */	li r3, 0
/* 8031647C 003120DC  48 00 01 48 */	b lbl_803165C4
lbl_80316480:
/* 80316480 003120E0  80 19 00 08 */	lwz r0, 8(r25)
/* 80316484 003120E4  2C 00 00 00 */	cmpwi r0, 0
/* 80316488 003120E8  41 82 00 84 */	beq lbl_8031650C
/* 8031648C 003120EC  A0 B9 00 0C */	lhz r5, 0xc(r25)
/* 80316490 003120F0  28 05 02 0A */	cmplwi r5, 0x20a
/* 80316494 003120F4  40 81 00 0C */	ble lbl_803164A0
/* 80316498 003120F8  3B 00 00 00 */	li r24, 0
/* 8031649C 003120FC  48 00 01 04 */	b lbl_803165A0
lbl_803164A0:
/* 803164A0 00312100  80 99 00 00 */	lwz r4, 0(r25)
/* 803164A4 00312104  38 65 00 02 */	addi r3, r5, 2
/* 803164A8 00312108  38 00 00 00 */	li r0, 0
/* 803164AC 0031210C  7C 84 2A 2E */	lhzx r4, r4, r5
/* 803164B0 00312110  28 04 00 61 */	cmplwi r4, 0x61
/* 803164B4 00312114  B0 79 00 0C */	sth r3, 0xc(r25)
/* 803164B8 00312118  41 80 00 10 */	blt lbl_803164C8
/* 803164BC 0031211C  28 04 00 7A */	cmplwi r4, 0x7a
/* 803164C0 00312120  41 81 00 08 */	bgt lbl_803164C8
/* 803164C4 00312124  38 00 00 01 */	li r0, 1
lbl_803164C8:
/* 803164C8 00312128  2C 00 00 00 */	cmpwi r0, 0
/* 803164CC 0031212C  41 82 00 08 */	beq lbl_803164D4
/* 803164D0 00312130  38 84 FF E0 */	addi r4, r4, -32
lbl_803164D4:
/* 803164D4 00312134  54 98 04 3E */	clrlwi r24, r4, 0x10
/* 803164D8 00312138  28 18 FF 41 */	cmplwi r24, 0xff41
/* 803164DC 0031213C  41 80 00 1C */	blt lbl_803164F8
/* 803164E0 00312140  28 18 FF 5A */	cmplwi r24, 0xff5a
/* 803164E4 00312144  41 81 00 14 */	bgt lbl_803164F8
/* 803164E8 00312148  38 18 FF E0 */	addi r0, r24, -32
/* 803164EC 0031214C  38 60 00 01 */	li r3, 1
/* 803164F0 00312150  54 1F 04 3E */	clrlwi r31, r0, 0x10
/* 803164F4 00312154  48 00 00 08 */	b lbl_803164FC
lbl_803164F8:
/* 803164F8 00312158  38 60 00 00 */	li r3, 0
lbl_803164FC:
/* 803164FC 0031215C  28 03 00 01 */	cmplwi r3, 1
/* 80316500 00312160  40 82 00 A0 */	bne lbl_803165A0
/* 80316504 00312164  7F F8 FB 78 */	mr r24, r31
/* 80316508 00312168  48 00 00 98 */	b lbl_803165A0
lbl_8031650C:
/* 8031650C 0031216C  A0 B9 00 0C */	lhz r5, 0xc(r25)
/* 80316510 00312170  28 05 00 0C */	cmplwi r5, 0xc
/* 80316514 00312174  41 80 00 0C */	blt lbl_80316520
/* 80316518 00312178  3B 00 00 00 */	li r24, 0
/* 8031651C 0031217C  48 00 00 84 */	b lbl_803165A0
lbl_80316520:
/* 80316520 00312180  38 05 00 01 */	addi r0, r5, 1
/* 80316524 00312184  80 79 00 00 */	lwz r3, 0(r25)
/* 80316528 00312188  B0 19 00 0C */	sth r0, 0xc(r25)
/* 8031652C 0031218C  38 80 00 01 */	li r4, 1
/* 80316530 00312190  7F 03 28 AE */	lbzx r24, r3, r5
/* 80316534 00312194  81 9D 00 30 */	lwz r12, 0x30(r29)
/* 80316538 00312198  7F 18 07 74 */	extsb r24, r24
/* 8031653C 0031219C  7F 03 C3 78 */	mr r3, r24
/* 80316540 003121A0  7D 89 03 A6 */	mtctr r12
/* 80316544 003121A4  4E 80 04 21 */	bctrl
/* 80316548 003121A8  2C 03 00 00 */	cmpwi r3, 0
/* 8031654C 003121AC  41 82 00 24 */	beq lbl_80316570
/* 80316550 003121B0  A0 99 00 0C */	lhz r4, 0xc(r25)
/* 80316554 003121B4  57 00 44 2E */	rlwinm r0, r24, 8, 0x10, 0x17
/* 80316558 003121B8  80 B9 00 00 */	lwz r5, 0(r25)
/* 8031655C 003121BC  38 64 00 01 */	addi r3, r4, 1
/* 80316560 003121C0  B0 79 00 0C */	sth r3, 0xc(r25)
/* 80316564 003121C4  7C 65 20 AE */	lbzx r3, r5, r4
/* 80316568 003121C8  7C 00 1A 14 */	add r0, r0, r3
/* 8031656C 003121CC  54 18 04 3E */	clrlwi r24, r0, 0x10
lbl_80316570:
/* 80316570 003121D0  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 80316574 003121D4  38 60 00 00 */	li r3, 0
/* 80316578 003121D8  28 00 00 61 */	cmplwi r0, 0x61
/* 8031657C 003121DC  41 80 00 10 */	blt lbl_8031658C
/* 80316580 003121E0  28 00 00 7A */	cmplwi r0, 0x7a
/* 80316584 003121E4  41 81 00 08 */	bgt lbl_8031658C
/* 80316588 003121E8  38 60 00 01 */	li r3, 1
lbl_8031658C:
/* 8031658C 003121EC  2C 03 00 00 */	cmpwi r3, 0
/* 80316590 003121F0  57 03 04 3E */	clrlwi r3, r24, 0x10
/* 80316594 003121F4  41 82 00 08 */	beq lbl_8031659C
/* 80316598 003121F8  38 63 FF E0 */	addi r3, r3, -32
lbl_8031659C:
/* 8031659C 003121FC  54 78 04 3E */	clrlwi r24, r3, 0x10
lbl_803165A0:
/* 803165A0 00312200  7F 63 DB 78 */	mr r3, r27
/* 803165A4 00312204  7F 84 E3 78 */	mr r4, r28
/* 803165A8 00312208  4B FF F8 81 */	bl VFiPFPATH_GetNextCharOfPattern
/* 803165AC 0031220C  7C 7A 1B 78 */	mr r26, r3
lbl_803165B0:
/* 803165B0 00312210  57 40 04 3F */	clrlwi. r0, r26, 0x10
/* 803165B4 00312214  40 82 FB 68 */	bne lbl_8031611C
/* 803165B8 00312218  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 803165BC 0031221C  7C 00 00 34 */	cntlzw r0, r0
/* 803165C0 00312220  54 03 D9 7E */	srwi r3, r0, 5
lbl_803165C4:
/* 803165C4 00312224  39 61 00 50 */	addi r11, r1, 0x50
/* 803165C8 00312228  4B EB 0B A1 */	bl _restgpr_24
/* 803165CC 0031222C  80 01 00 54 */	lwz r0, 0x54(r1)
/* 803165D0 00312230  7C 08 03 A6 */	mtlr r0
/* 803165D4 00312234  38 21 00 50 */	addi r1, r1, 0x50
/* 803165D8 00312238  4E 80 00 20 */	blr

.global VFiPFPATH_cmpNameImpl
VFiPFPATH_cmpNameImpl:
/* 803165DC 0031223C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 803165E0 00312240  7C 08 02 A6 */	mflr r0
/* 803165E4 00312244  90 01 00 44 */	stw r0, 0x44(r1)
/* 803165E8 00312248  39 61 00 40 */	addi r11, r1, 0x40
/* 803165EC 0031224C  4B EB 0B 2D */	bl _savegpr_23
/* 803165F0 00312250  3C C0 80 58 */	lis r6, lbl_8057F5C8@ha
/* 803165F4 00312254  7C 7A 1B 78 */	mr r26, r3
/* 803165F8 00312258  7C 9B 23 78 */	mr r27, r4
/* 803165FC 0031225C  7C BC 2B 78 */	mr r28, r5
/* 80316600 00312260  3B 06 F5 C8 */	addi r24, r6, lbl_8057F5C8@l
/* 80316604 00312264  3B 20 00 01 */	li r25, 1
/* 80316608 00312268  48 00 03 04 */	b lbl_8031690C
lbl_8031660C:
/* 8031660C 0031226C  81 98 00 2C */	lwz r12, 0x2c(r24)
/* 80316610 00312270  7F 63 DB 78 */	mr r3, r27
/* 80316614 00312274  7D 89 03 A6 */	mtctr r12
/* 80316618 00312278  4E 80 04 21 */	bctrl
/* 8031661C 0031227C  81 98 00 2C */	lwz r12, 0x2c(r24)
/* 80316620 00312280  7C 77 1B 78 */	mr r23, r3
/* 80316624 00312284  7F 43 D3 78 */	mr r3, r26
/* 80316628 00312288  7D 89 03 A6 */	mtctr r12
/* 8031662C 0031228C  4E 80 04 21 */	bctrl
/* 80316630 00312290  2C 17 00 01 */	cmpwi r23, 1
/* 80316634 00312294  7C 7F 1B 78 */	mr r31, r3
/* 80316638 00312298  40 82 00 14 */	bne lbl_8031664C
/* 8031663C 0031229C  88 7B 00 00 */	lbz r3, 0(r27)
/* 80316640 003122A0  7C 63 07 74 */	extsb r3, r3
/* 80316644 003122A4  4B FE E8 51 */	bl VFipf_toupper
/* 80316648 003122A8  48 00 00 10 */	b lbl_80316658
lbl_8031664C:
/* 8031664C 003122AC  7F 63 DB 78 */	mr r3, r27
/* 80316650 003122B0  4B FE EB 61 */	bl VFiPF_GET_LE_U16
/* 80316654 003122B4  54 63 04 3E */	clrlwi r3, r3, 0x10
lbl_80316658:
/* 80316658 003122B8  2C 1F 00 01 */	cmpwi r31, 1
/* 8031665C 003122BC  54 7E 04 3E */	clrlwi r30, r3, 0x10
/* 80316660 003122C0  40 82 00 14 */	bne lbl_80316674
/* 80316664 003122C4  88 7A 00 00 */	lbz r3, 0(r26)
/* 80316668 003122C8  7C 63 07 74 */	extsb r3, r3
/* 8031666C 003122CC  4B FE E8 29 */	bl VFipf_toupper
/* 80316670 003122D0  48 00 00 10 */	b lbl_80316680
lbl_80316674:
/* 80316674 003122D4  7F 43 D3 78 */	mr r3, r26
/* 80316678 003122D8  4B FE EB 39 */	bl VFiPF_GET_LE_U16
/* 8031667C 003122DC  54 63 04 3E */	clrlwi r3, r3, 0x10
lbl_80316680:
/* 80316680 003122E0  2C 17 00 02 */	cmpwi r23, 2
/* 80316684 003122E4  54 7D 04 3E */	clrlwi r29, r3, 0x10
/* 80316688 003122E8  40 82 00 74 */	bne lbl_803166FC
/* 8031668C 003122EC  81 98 00 24 */	lwz r12, 0x24(r24)
/* 80316690 003122F0  7F 63 DB 78 */	mr r3, r27
/* 80316694 003122F4  38 81 00 0A */	addi r4, r1, 0xa
/* 80316698 003122F8  7D 89 03 A6 */	mtctr r12
/* 8031669C 003122FC  4E 80 04 21 */	bctrl
/* 803166A0 00312300  A0 61 00 0A */	lhz r3, 0xa(r1)
/* 803166A4 00312304  28 03 FF 41 */	cmplwi r3, 0xff41
/* 803166A8 00312308  41 80 00 1C */	blt lbl_803166C4
/* 803166AC 0031230C  28 03 FF 5A */	cmplwi r3, 0xff5a
/* 803166B0 00312310  41 81 00 14 */	bgt lbl_803166C4
/* 803166B4 00312314  38 03 FF E0 */	addi r0, r3, -32
/* 803166B8 00312318  38 60 00 01 */	li r3, 1
/* 803166BC 0031231C  B0 01 00 0A */	sth r0, 0xa(r1)
/* 803166C0 00312320  48 00 00 08 */	b lbl_803166C8
lbl_803166C4:
/* 803166C4 00312324  38 60 00 00 */	li r3, 0
lbl_803166C8:
/* 803166C8 00312328  28 03 00 01 */	cmplwi r3, 1
/* 803166CC 0031232C  40 82 00 20 */	bne lbl_803166EC
/* 803166D0 00312330  81 98 00 28 */	lwz r12, 0x28(r24)
/* 803166D4 00312334  38 61 00 0A */	addi r3, r1, 0xa
/* 803166D8 00312338  7C 64 1B 78 */	mr r4, r3
/* 803166DC 0031233C  7D 89 03 A6 */	mtctr r12
/* 803166E0 00312340  4E 80 04 21 */	bctrl
/* 803166E4 00312344  38 60 00 01 */	li r3, 1
/* 803166E8 00312348  48 00 00 08 */	b lbl_803166F0
lbl_803166EC:
/* 803166EC 0031234C  38 60 00 00 */	li r3, 0
lbl_803166F0:
/* 803166F0 00312350  28 03 00 01 */	cmplwi r3, 1
/* 803166F4 00312354  40 82 00 08 */	bne lbl_803166FC
/* 803166F8 00312358  A3 C1 00 0A */	lhz r30, 0xa(r1)
lbl_803166FC:
/* 803166FC 0031235C  2C 1F 00 02 */	cmpwi r31, 2
/* 80316700 00312360  40 82 00 74 */	bne lbl_80316774
/* 80316704 00312364  81 98 00 24 */	lwz r12, 0x24(r24)
/* 80316708 00312368  7F 43 D3 78 */	mr r3, r26
/* 8031670C 0031236C  38 81 00 08 */	addi r4, r1, 8
/* 80316710 00312370  7D 89 03 A6 */	mtctr r12
/* 80316714 00312374  4E 80 04 21 */	bctrl
/* 80316718 00312378  A0 61 00 08 */	lhz r3, 8(r1)
/* 8031671C 0031237C  28 03 FF 41 */	cmplwi r3, 0xff41
/* 80316720 00312380  41 80 00 1C */	blt lbl_8031673C
/* 80316724 00312384  28 03 FF 5A */	cmplwi r3, 0xff5a
/* 80316728 00312388  41 81 00 14 */	bgt lbl_8031673C
/* 8031672C 0031238C  38 03 FF E0 */	addi r0, r3, -32
/* 80316730 00312390  38 60 00 01 */	li r3, 1
/* 80316734 00312394  B0 01 00 08 */	sth r0, 8(r1)
/* 80316738 00312398  48 00 00 08 */	b lbl_80316740
lbl_8031673C:
/* 8031673C 0031239C  38 60 00 00 */	li r3, 0
lbl_80316740:
/* 80316740 003123A0  28 03 00 01 */	cmplwi r3, 1
/* 80316744 003123A4  40 82 00 20 */	bne lbl_80316764
/* 80316748 003123A8  81 98 00 28 */	lwz r12, 0x28(r24)
/* 8031674C 003123AC  38 61 00 08 */	addi r3, r1, 8
/* 80316750 003123B0  7C 64 1B 78 */	mr r4, r3
/* 80316754 003123B4  7D 89 03 A6 */	mtctr r12
/* 80316758 003123B8  4E 80 04 21 */	bctrl
/* 8031675C 003123BC  38 60 00 01 */	li r3, 1
/* 80316760 003123C0  48 00 00 08 */	b lbl_80316768
lbl_80316764:
/* 80316764 003123C4  38 60 00 00 */	li r3, 0
lbl_80316768:
/* 80316768 003123C8  28 03 00 01 */	cmplwi r3, 1
/* 8031676C 003123CC  40 82 00 08 */	bne lbl_80316774
/* 80316770 003123D0  A3 A1 00 08 */	lhz r29, 8(r1)
lbl_80316774:
/* 80316774 003123D4  2C 1E 00 3F */	cmpwi r30, 0x3f
/* 80316778 003123D8  7F 7B BA 14 */	add r27, r27, r23
/* 8031677C 003123DC  41 82 00 14 */	beq lbl_80316790
/* 80316780 003123E0  40 80 01 78 */	bge lbl_803168F8
/* 80316784 003123E4  2C 1E 00 2A */	cmpwi r30, 0x2a
/* 80316788 003123E8  41 82 00 18 */	beq lbl_803167A0
/* 8031678C 003123EC  48 00 01 6C */	b lbl_803168F8
lbl_80316790:
/* 80316790 003123F0  2C 1D 00 00 */	cmpwi r29, 0
/* 80316794 003123F4  40 82 01 74 */	bne lbl_80316908
/* 80316798 003123F8  38 60 00 01 */	li r3, 1
/* 8031679C 003123FC  48 00 01 90 */	b lbl_8031692C
lbl_803167A0:
/* 803167A0 00312400  81 98 00 2C */	lwz r12, 0x2c(r24)
/* 803167A4 00312404  7F 63 DB 78 */	mr r3, r27
/* 803167A8 00312408  7D 89 03 A6 */	mtctr r12
/* 803167AC 0031240C  4E 80 04 21 */	bctrl
/* 803167B0 00312410  2C 03 00 01 */	cmpwi r3, 1
/* 803167B4 00312414  7C 77 1B 78 */	mr r23, r3
/* 803167B8 00312418  41 82 00 14 */	beq lbl_803167CC
/* 803167BC 0031241C  7F 63 DB 78 */	mr r3, r27
/* 803167C0 00312420  4B FE E9 F1 */	bl VFiPF_GET_LE_U16
/* 803167C4 00312424  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 803167C8 00312428  48 00 00 10 */	b lbl_803167D8
lbl_803167CC:
/* 803167CC 0031242C  88 7B 00 00 */	lbz r3, 0(r27)
/* 803167D0 00312430  7C 63 07 74 */	extsb r3, r3
/* 803167D4 00312434  4B FE E6 C1 */	bl VFipf_toupper
lbl_803167D8:
/* 803167D8 00312438  54 7E 04 3E */	clrlwi r30, r3, 0x10
/* 803167DC 0031243C  7F 7B BA 14 */	add r27, r27, r23
/* 803167E0 00312440  28 1E 00 3F */	cmplwi r30, 0x3f
/* 803167E4 00312444  40 82 00 54 */	bne lbl_80316838
/* 803167E8 00312448  2C 1D 00 00 */	cmpwi r29, 0
/* 803167EC 0031244C  40 82 00 0C */	bne lbl_803167F8
/* 803167F0 00312450  38 60 00 01 */	li r3, 1
/* 803167F4 00312454  48 00 01 38 */	b lbl_8031692C
lbl_803167F8:
/* 803167F8 00312458  81 98 00 2C */	lwz r12, 0x2c(r24)
/* 803167FC 0031245C  7F 5A FA 14 */	add r26, r26, r31
/* 80316800 00312460  7F 43 D3 78 */	mr r3, r26
/* 80316804 00312464  7D 89 03 A6 */	mtctr r12
/* 80316808 00312468  4E 80 04 21 */	bctrl
/* 8031680C 0031246C  2C 03 00 01 */	cmpwi r3, 1
/* 80316810 00312470  7C 7F 1B 78 */	mr r31, r3
/* 80316814 00312474  40 82 00 14 */	bne lbl_80316828
/* 80316818 00312478  88 7A 00 00 */	lbz r3, 0(r26)
/* 8031681C 0031247C  7C 63 07 74 */	extsb r3, r3
/* 80316820 00312480  4B FE E6 75 */	bl VFipf_toupper
/* 80316824 00312484  48 00 00 10 */	b lbl_80316834
lbl_80316828:
/* 80316828 00312488  7F 43 D3 78 */	mr r3, r26
/* 8031682C 0031248C  4B FE E9 85 */	bl VFiPF_GET_LE_U16
/* 80316830 00312490  54 63 04 3E */	clrlwi r3, r3, 0x10
lbl_80316834:
/* 80316834 00312494  54 7D 04 3E */	clrlwi r29, r3, 0x10
lbl_80316838:
/* 80316838 00312498  28 1E 00 3F */	cmplwi r30, 0x3f
/* 8031683C 0031249C  41 82 FF 64 */	beq lbl_803167A0
/* 80316840 003124A0  28 1E 00 2A */	cmplwi r30, 0x2a
/* 80316844 003124A4  41 82 FF 5C */	beq lbl_803167A0
/* 80316848 003124A8  2C 1E 00 00 */	cmpwi r30, 0
/* 8031684C 003124AC  40 82 00 88 */	bne lbl_803168D4
/* 80316850 003124B0  38 60 00 00 */	li r3, 0
/* 80316854 003124B4  48 00 00 D8 */	b lbl_8031692C
/* 80316858 003124B8  48 00 00 7C */	b lbl_803168D4
lbl_8031685C:
/* 8031685C 003124BC  7C 1D F0 40 */	cmplw r29, r30
/* 80316860 003124C0  7F 5A FA 14 */	add r26, r26, r31
/* 80316864 003124C4  40 82 00 34 */	bne lbl_80316898
/* 80316868 003124C8  7F 43 D3 78 */	mr r3, r26
/* 8031686C 003124CC  7F 64 DB 78 */	mr r4, r27
/* 80316870 003124D0  7F 85 E3 78 */	mr r5, r28
/* 80316874 003124D4  4B FF FD 69 */	bl VFiPFPATH_cmpNameImpl
/* 80316878 003124D8  2C 03 00 00 */	cmpwi r3, 0
/* 8031687C 003124DC  40 82 00 0C */	bne lbl_80316888
/* 80316880 003124E0  38 60 00 00 */	li r3, 0
/* 80316884 003124E4  48 00 00 A8 */	b lbl_8031692C
lbl_80316888:
/* 80316888 003124E8  80 1C 00 00 */	lwz r0, 0(r28)
/* 8031688C 003124EC  2C 00 00 00 */	cmpwi r0, 0
/* 80316890 003124F0  41 82 00 08 */	beq lbl_80316898
/* 80316894 003124F4  48 00 00 98 */	b lbl_8031692C
lbl_80316898:
/* 80316898 003124F8  81 98 00 2C */	lwz r12, 0x2c(r24)
/* 8031689C 003124FC  7F 43 D3 78 */	mr r3, r26
/* 803168A0 00312500  7D 89 03 A6 */	mtctr r12
/* 803168A4 00312504  4E 80 04 21 */	bctrl
/* 803168A8 00312508  2C 03 00 01 */	cmpwi r3, 1
/* 803168AC 0031250C  7C 7F 1B 78 */	mr r31, r3
/* 803168B0 00312510  40 82 00 14 */	bne lbl_803168C4
/* 803168B4 00312514  88 7A 00 00 */	lbz r3, 0(r26)
/* 803168B8 00312518  7C 63 07 74 */	extsb r3, r3
/* 803168BC 0031251C  4B FE E5 D9 */	bl VFipf_toupper
/* 803168C0 00312520  48 00 00 10 */	b lbl_803168D0
lbl_803168C4:
/* 803168C4 00312524  7F 43 D3 78 */	mr r3, r26
/* 803168C8 00312528  4B FE E8 E9 */	bl VFiPF_GET_LE_U16
/* 803168CC 0031252C  54 63 04 3E */	clrlwi r3, r3, 0x10
lbl_803168D0:
/* 803168D0 00312530  54 7D 04 3E */	clrlwi r29, r3, 0x10
lbl_803168D4:
/* 803168D4 00312534  2C 1D 00 00 */	cmpwi r29, 0
/* 803168D8 00312538  40 82 FF 84 */	bne lbl_8031685C
/* 803168DC 0031253C  88 1A 00 00 */	lbz r0, 0(r26)
/* 803168E0 00312540  7C 00 07 75 */	extsb. r0, r0
/* 803168E4 00312544  41 82 00 10 */	beq lbl_803168F4
/* 803168E8 00312548  88 1B 00 00 */	lbz r0, 0(r27)
/* 803168EC 0031254C  7C 00 07 75 */	extsb. r0, r0
/* 803168F0 00312550  40 82 00 08 */	bne lbl_803168F8
lbl_803168F4:
/* 803168F4 00312554  93 3C 00 00 */	stw r25, 0(r28)
lbl_803168F8:
/* 803168F8 00312558  7C 1D F0 40 */	cmplw r29, r30
/* 803168FC 0031255C  41 82 00 0C */	beq lbl_80316908
/* 80316900 00312560  38 60 00 01 */	li r3, 1
/* 80316904 00312564  48 00 00 28 */	b lbl_8031692C
lbl_80316908:
/* 80316908 00312568  7F 5A FA 14 */	add r26, r26, r31
lbl_8031690C:
/* 8031690C 0031256C  88 1B 00 00 */	lbz r0, 0(r27)
/* 80316910 00312570  7C 00 07 75 */	extsb. r0, r0
/* 80316914 00312574  40 82 FC F8 */	bne lbl_8031660C
/* 80316918 00312578  88 1A 00 00 */	lbz r0, 0(r26)
/* 8031691C 0031257C  7C 03 07 74 */	extsb r3, r0
/* 80316920 00312580  7C 03 00 D0 */	neg r0, r3
/* 80316924 00312584  7C 00 1B 78 */	or r0, r0, r3
/* 80316928 00312588  54 03 0F FE */	srwi r3, r0, 0x1f
lbl_8031692C:
/* 8031692C 0031258C  39 61 00 40 */	addi r11, r1, 0x40
/* 80316930 00312590  4B EB 08 35 */	bl _restgpr_23
/* 80316934 00312594  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80316938 00312598  7C 08 03 A6 */	mtlr r0
/* 8031693C 0031259C  38 21 00 40 */	addi r1, r1, 0x40
/* 80316940 003125A0  4E 80 00 20 */	blr

.global VFiPFPATH_cmpNameUni
VFiPFPATH_cmpNameUni:
/* 80316944 003125A4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80316948 003125A8  7C 08 02 A6 */	mflr r0
/* 8031694C 003125AC  38 A0 00 01 */	li r5, 1
/* 80316950 003125B0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80316954 003125B4  48 00 05 D9 */	bl VFiPFPATH_MatchFileNameWithPattern
/* 80316958 003125B8  7C 60 00 34 */	cntlzw r0, r3
/* 8031695C 003125BC  54 03 D9 7E */	srwi r3, r0, 5
/* 80316960 003125C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80316964 003125C4  7C 08 03 A6 */	mtlr r0
/* 80316968 003125C8  38 21 00 10 */	addi r1, r1, 0x10
/* 8031696C 003125CC  4E 80 00 20 */	blr

.global VFiPFPATH_cmpName
VFiPFPATH_cmpName:
/* 80316970 003125D0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80316974 003125D4  7C 08 02 A6 */	mflr r0
/* 80316978 003125D8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8031697C 003125DC  39 61 00 40 */	addi r11, r1, 0x40
/* 80316980 003125E0  4B EB 07 A9 */	bl _savegpr_27
/* 80316984 003125E4  38 00 00 00 */	li r0, 0
/* 80316988 003125E8  7C 9C 23 78 */	mr r28, r4
/* 8031698C 003125EC  90 01 00 08 */	stw r0, 8(r1)
/* 80316990 003125F0  7C 7B 1B 78 */	mr r27, r3
/* 80316994 003125F4  7C BD 2B 78 */	mr r29, r5
/* 80316998 003125F8  7F 83 E3 78 */	mr r3, r28
/* 8031699C 003125FC  3B E1 00 0C */	addi r31, r1, 0xc
/* 803169A0 00312600  38 80 00 03 */	li r4, 3
/* 803169A4 00312604  4B FE E9 6D */	bl VFiPFSTR_GetStrPos
/* 803169A8 00312608  7C 7E 1B 78 */	mr r30, r3
/* 803169AC 0031260C  7F E3 FB 78 */	mr r3, r31
/* 803169B0 00312610  7F 64 DB 78 */	mr r4, r27
/* 803169B4 00312614  4B FE E7 39 */	bl VFipf_strcpy
/* 803169B8 00312618  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 803169BC 0031261C  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 803169C0 00312620  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 803169C4 00312624  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 803169C8 00312628  28 00 00 02 */	cmplwi r0, 2
/* 803169CC 0031262C  40 82 00 64 */	bne lbl_80316A30
/* 803169D0 00312630  7F 83 E3 78 */	mr r3, r28
/* 803169D4 00312634  4B FE E9 0D */	bl VFiPFSTR_GetCodeMode
/* 803169D8 00312638  28 03 00 02 */	cmplwi r3, 2
/* 803169DC 0031263C  40 82 00 54 */	bne lbl_80316A30
/* 803169E0 00312640  7F E3 FB 78 */	mr r3, r31
/* 803169E4 00312644  38 8D 8D 00 */	addi r4, r13, lbl_8063DFC0-_SDA_BASE_
/* 803169E8 00312648  4B FE E7 29 */	bl VFipf_strcmp
/* 803169EC 0031264C  2C 03 00 00 */	cmpwi r3, 0
/* 803169F0 00312650  41 82 00 40 */	beq lbl_80316A30
/* 803169F4 00312654  7F E3 FB 78 */	mr r3, r31
/* 803169F8 00312658  38 8D 8D 04 */	addi r4, r13, lbl_8063DFC4-_SDA_BASE_
/* 803169FC 0031265C  4B FE E7 15 */	bl VFipf_strcmp
/* 80316A00 00312660  2C 03 00 00 */	cmpwi r3, 0
/* 80316A04 00312664  41 82 00 2C */	beq lbl_80316A30
/* 80316A08 00312668  7F 83 E3 78 */	mr r3, r28
/* 80316A0C 0031266C  38 80 00 03 */	li r4, 3
/* 80316A10 00312670  38 A0 00 01 */	li r5, 1
/* 80316A14 00312674  48 00 1A 21 */	bl VFiPFPATH_CheckExtShortName
/* 80316A18 00312678  2C 03 00 00 */	cmpwi r3, 0
/* 80316A1C 0031267C  40 82 00 14 */	bne lbl_80316A30
/* 80316A20 00312680  2C 1D 00 00 */	cmpwi r29, 0
/* 80316A24 00312684  40 82 00 0C */	bne lbl_80316A30
/* 80316A28 00312688  38 60 00 01 */	li r3, 1
/* 80316A2C 0031268C  48 00 00 88 */	b lbl_80316AB4
lbl_80316A30:
/* 80316A30 00312690  7F C3 F3 78 */	mr r3, r30
/* 80316A34 00312694  38 8D 8D 08 */	addi r4, r13, lbl_8063DFC8-_SDA_BASE_
/* 80316A38 00312698  4B FE E6 D9 */	bl VFipf_strcmp
/* 80316A3C 0031269C  2C 03 00 00 */	cmpwi r3, 0
/* 80316A40 003126A0  40 82 00 3C */	bne lbl_80316A7C
/* 80316A44 003126A4  48 00 00 08 */	b lbl_80316A4C
lbl_80316A48:
/* 80316A48 003126A8  3B FF 00 01 */	addi r31, r31, 1
lbl_80316A4C:
/* 80316A4C 003126AC  88 7F 00 00 */	lbz r3, 0(r31)
/* 80316A50 003126B0  7C 60 07 75 */	extsb. r0, r3
/* 80316A54 003126B4  41 82 00 0C */	beq lbl_80316A60
/* 80316A58 003126B8  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80316A5C 003126BC  40 82 FF EC */	bne lbl_80316A48
lbl_80316A60:
/* 80316A60 003126C0  7C 60 07 75 */	extsb. r0, r3
/* 80316A64 003126C4  40 82 00 40 */	bne lbl_80316AA4
/* 80316A68 003126C8  38 60 00 2E */	li r3, 0x2e
/* 80316A6C 003126CC  38 00 00 00 */	li r0, 0
/* 80316A70 003126D0  98 7F 00 00 */	stb r3, 0(r31)
/* 80316A74 003126D4  98 1F 00 01 */	stb r0, 1(r31)
/* 80316A78 003126D8  48 00 00 2C */	b lbl_80316AA4
lbl_80316A7C:
/* 80316A7C 003126DC  88 1E 00 00 */	lbz r0, 0(r30)
/* 80316A80 003126E0  7C 00 07 75 */	extsb. r0, r0
/* 80316A84 003126E4  40 82 00 0C */	bne lbl_80316A90
/* 80316A88 003126E8  38 60 00 01 */	li r3, 1
/* 80316A8C 003126EC  48 00 00 28 */	b lbl_80316AB4
lbl_80316A90:
/* 80316A90 003126F0  88 01 00 0C */	lbz r0, 0xc(r1)
/* 80316A94 003126F4  7C 00 07 75 */	extsb. r0, r0
/* 80316A98 003126F8  40 82 00 0C */	bne lbl_80316AA4
/* 80316A9C 003126FC  38 60 00 01 */	li r3, 1
/* 80316AA0 00312700  48 00 00 14 */	b lbl_80316AB4
lbl_80316AA4:
/* 80316AA4 00312704  7F C4 F3 78 */	mr r4, r30
/* 80316AA8 00312708  38 61 00 0C */	addi r3, r1, 0xc
/* 80316AAC 0031270C  38 A1 00 08 */	addi r5, r1, 8
/* 80316AB0 00312710  4B FF FB 2D */	bl VFiPFPATH_cmpNameImpl
lbl_80316AB4:
/* 80316AB4 00312714  39 61 00 40 */	addi r11, r1, 0x40
/* 80316AB8 00312718  4B EB 06 BD */	bl _restgpr_27
/* 80316ABC 0031271C  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80316AC0 00312720  7C 08 03 A6 */	mtlr r0
/* 80316AC4 00312724  38 21 00 40 */	addi r1, r1, 0x40
/* 80316AC8 00312728  4E 80 00 20 */	blr

.global VFiPFPATH_cmpTailSFN
VFiPFPATH_cmpTailSFN:
/* 80316ACC 0031272C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80316AD0 00312730  7C 08 02 A6 */	mflr r0
/* 80316AD4 00312734  90 01 00 14 */	stw r0, 0x14(r1)
/* 80316AD8 00312738  4B FE E6 39 */	bl VFipf_strcmp
/* 80316ADC 0031273C  7C 03 00 D0 */	neg r0, r3
/* 80316AE0 00312740  7C 00 1B 78 */	or r0, r0, r3
/* 80316AE4 00312744  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80316AE8 00312748  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80316AEC 0031274C  7C 08 03 A6 */	mtlr r0
/* 80316AF0 00312750  38 21 00 10 */	addi r1, r1, 0x10
/* 80316AF4 00312754  4E 80 00 20 */	blr

.global VFiPFPATH_InitTokenOfPath
VFiPFPATH_InitTokenOfPath:
/* 80316AF8 00312758  90 83 00 00 */	stw r4, 0(r3)
/* 80316AFC 0031275C  90 83 00 04 */	stw r4, 4(r3)
/* 80316B00 00312760  90 A3 00 0C */	stw r5, 0xc(r3)
/* 80316B04 00312764  4E 80 00 20 */	blr

.global VFiPFPATH_GetNextTokenOfPath
VFiPFPATH_GetNextTokenOfPath:
/* 80316B08 00312768  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80316B0C 0031276C  7C 08 02 A6 */	mflr r0
/* 80316B10 00312770  90 01 00 24 */	stw r0, 0x24(r1)
/* 80316B14 00312774  39 61 00 20 */	addi r11, r1, 0x20
/* 80316B18 00312778  4B EB 06 11 */	bl _savegpr_27
/* 80316B1C 0031277C  80 03 00 04 */	lwz r0, 4(r3)
/* 80316B20 00312780  7C 9D 23 78 */	mr r29, r4
/* 80316B24 00312784  7C 7C 1B 78 */	mr r28, r3
/* 80316B28 00312788  3B 60 00 00 */	li r27, 0
/* 80316B2C 0031278C  90 03 00 00 */	stw r0, 0(r3)
/* 80316B30 00312790  38 8D 8C FC */	addi r4, r13, lbl_8063DFBC-_SDA_BASE_
/* 80316B34 00312794  38 A0 00 01 */	li r5, 1
/* 80316B38 00312798  38 C0 00 00 */	li r6, 0
/* 80316B3C 0031279C  38 E0 00 01 */	li r7, 1
/* 80316B40 003127A0  4B FE EB 21 */	bl VFiPFSTR_StrNCmp
/* 80316B44 003127A4  2C 03 00 00 */	cmpwi r3, 0
/* 80316B48 003127A8  40 82 00 18 */	bne lbl_80316B60
/* 80316B4C 003127AC  38 00 00 00 */	li r0, 0
/* 80316B50 003127B0  38 60 00 00 */	li r3, 0
/* 80316B54 003127B4  90 1C 00 04 */	stw r0, 4(r28)
/* 80316B58 003127B8  90 1C 00 00 */	stw r0, 0(r28)
/* 80316B5C 003127BC  48 00 03 18 */	b lbl_80316E74
lbl_80316B60:
/* 80316B60 003127C0  7F 83 E3 78 */	mr r3, r28
/* 80316B64 003127C4  38 8D 8D 0C */	addi r4, r13, lbl_8063DFCC-_SDA_BASE_
/* 80316B68 003127C8  38 A0 00 01 */	li r5, 1
/* 80316B6C 003127CC  38 C0 00 00 */	li r6, 0
/* 80316B70 003127D0  38 E0 00 01 */	li r7, 1
/* 80316B74 003127D4  4B FE EA ED */	bl VFiPFSTR_StrNCmp
/* 80316B78 003127D8  2C 03 00 00 */	cmpwi r3, 0
/* 80316B7C 003127DC  41 82 00 24 */	beq lbl_80316BA0
/* 80316B80 003127E0  7F 83 E3 78 */	mr r3, r28
/* 80316B84 003127E4  38 8D 8D 10 */	addi r4, r13, lbl_8063DFD0-_SDA_BASE_
/* 80316B88 003127E8  38 A0 00 01 */	li r5, 1
/* 80316B8C 003127EC  38 C0 00 00 */	li r6, 0
/* 80316B90 003127F0  38 E0 00 01 */	li r7, 1
/* 80316B94 003127F4  4B FE EA CD */	bl VFiPFSTR_StrNCmp
/* 80316B98 003127F8  2C 03 00 00 */	cmpwi r3, 0
/* 80316B9C 003127FC  40 82 00 10 */	bne lbl_80316BAC
lbl_80316BA0:
/* 80316BA0 00312800  7F 83 E3 78 */	mr r3, r28
/* 80316BA4 00312804  38 80 00 01 */	li r4, 1
/* 80316BA8 00312808  4B FE E7 91 */	bl VFiPFSTR_MoveStrPos
lbl_80316BAC:
/* 80316BAC 0031280C  7F 83 E3 78 */	mr r3, r28
/* 80316BB0 00312810  38 8D 8D 0C */	addi r4, r13, lbl_8063DFCC-_SDA_BASE_
/* 80316BB4 00312814  38 A0 00 01 */	li r5, 1
/* 80316BB8 00312818  38 C0 00 00 */	li r6, 0
/* 80316BBC 0031281C  38 E0 00 01 */	li r7, 1
/* 80316BC0 00312820  4B FE EA A1 */	bl VFiPFSTR_StrNCmp
/* 80316BC4 00312824  2C 03 00 00 */	cmpwi r3, 0
/* 80316BC8 00312828  41 82 00 24 */	beq lbl_80316BEC
/* 80316BCC 0031282C  7F 83 E3 78 */	mr r3, r28
/* 80316BD0 00312830  38 8D 8D 10 */	addi r4, r13, lbl_8063DFD0-_SDA_BASE_
/* 80316BD4 00312834  38 A0 00 01 */	li r5, 1
/* 80316BD8 00312838  38 C0 00 00 */	li r6, 0
/* 80316BDC 0031283C  38 E0 00 01 */	li r7, 1
/* 80316BE0 00312840  4B FE EA 81 */	bl VFiPFSTR_StrNCmp
/* 80316BE4 00312844  2C 03 00 00 */	cmpwi r3, 0
/* 80316BE8 00312848  40 82 00 0C */	bne lbl_80316BF4
lbl_80316BEC:
/* 80316BEC 0031284C  38 60 00 02 */	li r3, 2
/* 80316BF0 00312850  48 00 02 84 */	b lbl_80316E74
lbl_80316BF4:
/* 80316BF4 00312854  7F 83 E3 78 */	mr r3, r28
/* 80316BF8 00312858  4B FE E6 E9 */	bl VFiPFSTR_GetCodeMode
/* 80316BFC 0031285C  80 1C 00 00 */	lwz r0, 0(r28)
/* 80316C00 00312860  3C 80 80 58 */	lis r4, lbl_8057F5C8@ha
/* 80316C04 00312864  38 84 F5 C8 */	addi r4, r4, lbl_8057F5C8@l
/* 80316C08 00312868  7C 7E 1B 78 */	mr r30, r3
/* 80316C0C 0031286C  90 1C 00 04 */	stw r0, 4(r28)
/* 80316C10 00312870  80 04 00 3C */	lwz r0, 0x3c(r4)
/* 80316C14 00312874  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 80316C18 00312878  28 00 00 02 */	cmplwi r0, 2
/* 80316C1C 0031287C  40 82 00 48 */	bne lbl_80316C64
/* 80316C20 00312880  7F 83 E3 78 */	mr r3, r28
/* 80316C24 00312884  7F A5 EB 78 */	mr r5, r29
/* 80316C28 00312888  38 80 00 02 */	li r4, 2
/* 80316C2C 0031288C  48 00 18 09 */	bl VFiPFPATH_CheckExtShortName
/* 80316C30 00312890  2C 03 00 00 */	cmpwi r3, 0
/* 80316C34 00312894  7C 7B 1B 78 */	mr r27, r3
/* 80316C38 00312898  41 82 00 2C */	beq lbl_80316C64
/* 80316C3C 0031289C  28 1E 00 01 */	cmplwi r30, 1
/* 80316C40 003128A0  40 82 00 14 */	bne lbl_80316C54
/* 80316C44 003128A4  80 1C 00 04 */	lwz r0, 4(r28)
/* 80316C48 003128A8  7C 00 1A 14 */	add r0, r0, r3
/* 80316C4C 003128AC  90 1C 00 04 */	stw r0, 4(r28)
/* 80316C50 003128B0  48 00 00 14 */	b lbl_80316C64
lbl_80316C54:
/* 80316C54 003128B4  80 9C 00 04 */	lwz r4, 4(r28)
/* 80316C58 003128B8  54 60 08 3C */	slwi r0, r3, 1
/* 80316C5C 003128BC  7C 04 02 14 */	add r0, r4, r0
/* 80316C60 003128C0  90 1C 00 04 */	stw r0, 4(r28)
lbl_80316C64:
/* 80316C64 003128C4  2C 1B 00 00 */	cmpwi r27, 0
/* 80316C68 003128C8  40 82 02 08 */	bne lbl_80316E70
/* 80316C6C 003128CC  3C 80 80 58 */	lis r4, lbl_8057F5C8@ha
/* 80316C70 003128D0  3C 60 80 40 */	lis r3, lbl_803FE220@ha
/* 80316C74 003128D4  3B E4 F5 C8 */	addi r31, r4, lbl_8057F5C8@l
/* 80316C78 003128D8  3B 63 E2 20 */	addi r27, r3, lbl_803FE220@l
/* 80316C7C 003128DC  48 00 01 D4 */	b lbl_80316E50
lbl_80316C80:
/* 80316C80 003128E0  28 1E 00 01 */	cmplwi r30, 1
/* 80316C84 003128E4  40 82 00 6C */	bne lbl_80316CF0
/* 80316C88 003128E8  80 7C 00 04 */	lwz r3, 4(r28)
/* 80316C8C 003128EC  38 80 00 01 */	li r4, 1
/* 80316C90 003128F0  81 9F 00 30 */	lwz r12, 0x30(r31)
/* 80316C94 003128F4  88 03 00 00 */	lbz r0, 0(r3)
/* 80316C98 003128F8  7C 03 07 74 */	extsb r3, r0
/* 80316C9C 003128FC  7D 89 03 A6 */	mtctr r12
/* 80316CA0 00312900  4E 80 04 21 */	bctrl
/* 80316CA4 00312904  2C 03 00 00 */	cmpwi r3, 0
/* 80316CA8 00312908  41 82 00 48 */	beq lbl_80316CF0
/* 80316CAC 0031290C  80 7C 00 04 */	lwz r3, 4(r28)
/* 80316CB0 00312910  38 80 00 02 */	li r4, 2
/* 80316CB4 00312914  38 63 00 01 */	addi r3, r3, 1
/* 80316CB8 00312918  90 7C 00 04 */	stw r3, 4(r28)
/* 80316CBC 0031291C  88 03 00 00 */	lbz r0, 0(r3)
/* 80316CC0 00312920  81 9F 00 30 */	lwz r12, 0x30(r31)
/* 80316CC4 00312924  7C 03 07 74 */	extsb r3, r0
/* 80316CC8 00312928  7D 89 03 A6 */	mtctr r12
/* 80316CCC 0031292C  4E 80 04 21 */	bctrl
/* 80316CD0 00312930  2C 03 00 00 */	cmpwi r3, 0
/* 80316CD4 00312934  41 82 00 14 */	beq lbl_80316CE8
/* 80316CD8 00312938  80 7C 00 04 */	lwz r3, 4(r28)
/* 80316CDC 0031293C  88 03 00 00 */	lbz r0, 0(r3)
/* 80316CE0 00312940  7C 00 07 75 */	extsb. r0, r0
/* 80316CE4 00312944  40 82 01 48 */	bne lbl_80316E2C
lbl_80316CE8:
/* 80316CE8 00312948  38 60 00 02 */	li r3, 2
/* 80316CEC 0031294C  48 00 01 88 */	b lbl_80316E74
lbl_80316CF0:
/* 80316CF0 00312950  7F 83 E3 78 */	mr r3, r28
/* 80316CF4 00312954  38 8D 8D 0C */	addi r4, r13, lbl_8063DFCC-_SDA_BASE_
/* 80316CF8 00312958  38 A0 00 02 */	li r5, 2
/* 80316CFC 0031295C  38 C0 00 00 */	li r6, 0
/* 80316D00 00312960  38 E0 00 01 */	li r7, 1
/* 80316D04 00312964  4B FE E9 5D */	bl VFiPFSTR_StrNCmp
/* 80316D08 00312968  2C 03 00 00 */	cmpwi r3, 0
/* 80316D0C 0031296C  41 82 01 64 */	beq lbl_80316E70
/* 80316D10 00312970  7F 83 E3 78 */	mr r3, r28
/* 80316D14 00312974  38 8D 8D 10 */	addi r4, r13, lbl_8063DFD0-_SDA_BASE_
/* 80316D18 00312978  38 A0 00 02 */	li r5, 2
/* 80316D1C 0031297C  38 C0 00 00 */	li r6, 0
/* 80316D20 00312980  38 E0 00 01 */	li r7, 1
/* 80316D24 00312984  4B FE E9 3D */	bl VFiPFSTR_StrNCmp
/* 80316D28 00312988  2C 03 00 00 */	cmpwi r3, 0
/* 80316D2C 0031298C  41 82 01 44 */	beq lbl_80316E70
/* 80316D30 00312990  80 1F 00 14 */	lwz r0, 0x14(r31)
/* 80316D34 00312994  54 00 03 DF */	rlwinm. r0, r0, 0, 0xf, 0xf
/* 80316D38 00312998  40 82 00 F4 */	bne lbl_80316E2C
/* 80316D3C 0031299C  28 1E 00 01 */	cmplwi r30, 1
/* 80316D40 003129A0  40 82 00 2C */	bne lbl_80316D6C
/* 80316D44 003129A4  80 7C 00 04 */	lwz r3, 4(r28)
/* 80316D48 003129A8  88 03 00 00 */	lbz r0, 0(r3)
/* 80316D4C 003129AC  28 00 00 80 */	cmplwi r0, 0x80
/* 80316D50 003129B0  40 80 00 1C */	bge lbl_80316D6C
/* 80316D54 003129B4  28 00 00 20 */	cmplwi r0, 0x20
/* 80316D58 003129B8  41 80 00 84 */	blt lbl_80316DDC
/* 80316D5C 003129BC  7C 7B 02 14 */	add r3, r27, r0
/* 80316D60 003129C0  88 03 FF E0 */	lbz r0, -0x20(r3)
/* 80316D64 003129C4  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 80316D68 003129C8  41 82 00 74 */	beq lbl_80316DDC
lbl_80316D6C:
/* 80316D6C 003129CC  28 1E 00 02 */	cmplwi r30, 2
/* 80316D70 003129D0  40 82 00 BC */	bne lbl_80316E2C
/* 80316D74 003129D4  80 9C 00 04 */	lwz r4, 4(r28)
/* 80316D78 003129D8  38 A0 00 01 */	li r5, 1
/* 80316D7C 003129DC  88 64 00 00 */	lbz r3, 0(r4)
/* 80316D80 003129E0  88 04 00 01 */	lbz r0, 1(r4)
/* 80316D84 003129E4  54 63 40 2E */	slwi r3, r3, 8
/* 80316D88 003129E8  7C 63 02 14 */	add r3, r3, r0
/* 80316D8C 003129EC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80316D90 003129F0  28 00 00 80 */	cmplwi r0, 0x80
/* 80316D94 003129F4  40 80 00 40 */	bge lbl_80316DD4
/* 80316D98 003129F8  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 80316D9C 003129FC  38 80 00 00 */	li r4, 0
/* 80316DA0 00312A00  28 03 00 20 */	cmplwi r3, 0x20
/* 80316DA4 00312A04  41 80 00 24 */	blt lbl_80316DC8
/* 80316DA8 00312A08  54 60 04 2F */	rlwinm. r0, r3, 0, 0x10, 0x17
/* 80316DAC 00312A0C  40 82 00 1C */	bne lbl_80316DC8
/* 80316DB0 00312A10  38 03 FF E0 */	addi r0, r3, -32
/* 80316DB4 00312A14  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 80316DB8 00312A18  7C 1B 00 AE */	lbzx r0, r27, r0
/* 80316DBC 00312A1C  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 80316DC0 00312A20  41 82 00 08 */	beq lbl_80316DC8
/* 80316DC4 00312A24  38 80 00 01 */	li r4, 1
lbl_80316DC8:
/* 80316DC8 00312A28  2C 04 00 00 */	cmpwi r4, 0
/* 80316DCC 00312A2C  40 82 00 08 */	bne lbl_80316DD4
/* 80316DD0 00312A30  38 A0 00 00 */	li r5, 0
lbl_80316DD4:
/* 80316DD4 00312A34  2C 05 00 00 */	cmpwi r5, 0
/* 80316DD8 00312A38  40 82 00 54 */	bne lbl_80316E2C
lbl_80316DDC:
/* 80316DDC 00312A3C  2C 1D 00 00 */	cmpwi r29, 0
/* 80316DE0 00312A40  41 82 00 44 */	beq lbl_80316E24
/* 80316DE4 00312A44  7F 83 E3 78 */	mr r3, r28
/* 80316DE8 00312A48  38 8D 8D 14 */	addi r4, r13, lbl_8063DFD4-_SDA_BASE_
/* 80316DEC 00312A4C  38 A0 00 02 */	li r5, 2
/* 80316DF0 00312A50  38 C0 00 00 */	li r6, 0
/* 80316DF4 00312A54  38 E0 00 01 */	li r7, 1
/* 80316DF8 00312A58  4B FE E8 69 */	bl VFiPFSTR_StrNCmp
/* 80316DFC 00312A5C  2C 03 00 00 */	cmpwi r3, 0
/* 80316E00 00312A60  41 82 00 2C */	beq lbl_80316E2C
/* 80316E04 00312A64  7F 83 E3 78 */	mr r3, r28
/* 80316E08 00312A68  38 8D 8D 18 */	addi r4, r13, lbl_8063DFD8-_SDA_BASE_
/* 80316E0C 00312A6C  38 A0 00 02 */	li r5, 2
/* 80316E10 00312A70  38 C0 00 00 */	li r6, 0
/* 80316E14 00312A74  38 E0 00 01 */	li r7, 1
/* 80316E18 00312A78  4B FE E8 49 */	bl VFiPFSTR_StrNCmp
/* 80316E1C 00312A7C  2C 03 00 00 */	cmpwi r3, 0
/* 80316E20 00312A80  41 82 00 0C */	beq lbl_80316E2C
lbl_80316E24:
/* 80316E24 00312A84  38 60 00 02 */	li r3, 2
/* 80316E28 00312A88  48 00 00 4C */	b lbl_80316E74
lbl_80316E2C:
/* 80316E2C 00312A8C  28 1E 00 01 */	cmplwi r30, 1
/* 80316E30 00312A90  40 82 00 14 */	bne lbl_80316E44
/* 80316E34 00312A94  80 7C 00 04 */	lwz r3, 4(r28)
/* 80316E38 00312A98  38 03 00 01 */	addi r0, r3, 1
/* 80316E3C 00312A9C  90 1C 00 04 */	stw r0, 4(r28)
/* 80316E40 00312AA0  48 00 00 10 */	b lbl_80316E50
lbl_80316E44:
/* 80316E44 00312AA4  80 7C 00 04 */	lwz r3, 4(r28)
/* 80316E48 00312AA8  38 03 00 02 */	addi r0, r3, 2
/* 80316E4C 00312AAC  90 1C 00 04 */	stw r0, 4(r28)
lbl_80316E50:
/* 80316E50 00312AB0  7F 83 E3 78 */	mr r3, r28
/* 80316E54 00312AB4  38 8D 8C FC */	addi r4, r13, lbl_8063DFBC-_SDA_BASE_
/* 80316E58 00312AB8  38 A0 00 02 */	li r5, 2
/* 80316E5C 00312ABC  38 C0 00 00 */	li r6, 0
/* 80316E60 00312AC0  38 E0 00 01 */	li r7, 1
/* 80316E64 00312AC4  4B FE E7 FD */	bl VFiPFSTR_StrNCmp
/* 80316E68 00312AC8  2C 03 00 00 */	cmpwi r3, 0
/* 80316E6C 00312ACC  40 82 FE 14 */	bne lbl_80316C80
lbl_80316E70:
/* 80316E70 00312AD0  38 60 00 00 */	li r3, 0
lbl_80316E74:
/* 80316E74 00312AD4  39 61 00 20 */	addi r11, r1, 0x20
/* 80316E78 00312AD8  4B EB 02 FD */	bl _restgpr_27
/* 80316E7C 00312ADC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80316E80 00312AE0  7C 08 03 A6 */	mtlr r0
/* 80316E84 00312AE4  38 21 00 20 */	addi r1, r1, 0x20
/* 80316E88 00312AE8  4E 80 00 20 */	blr

.global VFiPFPATH_SplitPath
VFiPFPATH_SplitPath:
/* 80316E8C 00312AEC  38 C0 00 00 */	li r6, 0
/* 80316E90 00312AF0  4B FF ED A0 */	b VFiPFPATH_DoSplitPath

.global VFiPFPATH_GetVolumeFromPath
VFiPFPATH_GetVolumeFromPath:
/* 80316E94 00312AF4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80316E98 00312AF8  7C 08 02 A6 */	mflr r0
/* 80316E9C 00312AFC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80316EA0 00312B00  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80316EA4 00312B04  7C 7F 1B 78 */	mr r31, r3
/* 80316EA8 00312B08  4B FE E6 21 */	bl VFiPFSTR_StrLen
/* 80316EAC 00312B0C  54 60 04 3F */	clrlwi. r0, r3, 0x10
/* 80316EB0 00312B10  40 82 00 0C */	bne lbl_80316EBC
/* 80316EB4 00312B14  38 60 00 00 */	li r3, 0
/* 80316EB8 00312B18  48 00 00 60 */	b lbl_80316F18
lbl_80316EBC:
/* 80316EBC 00312B1C  7F E3 FB 78 */	mr r3, r31
/* 80316EC0 00312B20  38 80 00 01 */	li r4, 1
/* 80316EC4 00312B24  4B FE E6 19 */	bl VFiPFSTR_StrNumChar
/* 80316EC8 00312B28  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 80316ECC 00312B2C  28 00 00 02 */	cmplwi r0, 2
/* 80316ED0 00312B30  41 80 00 44 */	blt lbl_80316F14
/* 80316ED4 00312B34  7F E3 FB 78 */	mr r3, r31
/* 80316ED8 00312B38  38 8D 8C F8 */	addi r4, r13, lbl_8063DFB8-_SDA_BASE_
/* 80316EDC 00312B3C  38 A0 00 01 */	li r5, 1
/* 80316EE0 00312B40  38 C0 00 01 */	li r6, 1
/* 80316EE4 00312B44  38 E0 00 01 */	li r7, 1
/* 80316EE8 00312B48  4B FE E7 79 */	bl VFiPFSTR_StrNCmp
/* 80316EEC 00312B4C  2C 03 00 00 */	cmpwi r3, 0
/* 80316EF0 00312B50  40 82 00 24 */	bne lbl_80316F14
/* 80316EF4 00312B54  7F E3 FB 78 */	mr r3, r31
/* 80316EF8 00312B58  38 A1 00 08 */	addi r5, r1, 8
/* 80316EFC 00312B5C  38 80 00 01 */	li r4, 1
/* 80316F00 00312B60  4B FE E8 79 */	bl VFiPFSTR_ToUpperNStr
/* 80316F04 00312B64  88 01 00 08 */	lbz r0, 8(r1)
/* 80316F08 00312B68  7C 03 07 74 */	extsb r3, r0
/* 80316F0C 00312B6C  48 00 2C 4D */	bl VFiPFVOL_GetVolumeFromDrvChar
/* 80316F10 00312B70  48 00 00 08 */	b lbl_80316F18
lbl_80316F14:
/* 80316F14 00312B74  48 00 2A F1 */	bl VFiPFVOL_GetCurrentVolume
lbl_80316F18:
/* 80316F18 00312B78  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80316F1C 00312B7C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80316F20 00312B80  7C 08 03 A6 */	mtlr r0
/* 80316F24 00312B84  38 21 00 20 */	addi r1, r1, 0x20
/* 80316F28 00312B88  4E 80 00 20 */	blr

.global VFiPFPATH_MatchFileNameWithPattern
VFiPFPATH_MatchFileNameWithPattern:
/* 80316F2C 00312B8C  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 80316F30 00312B90  7C 08 02 A6 */	mflr r0
/* 80316F34 00312B94  90 01 00 44 */	stw r0, 0x44(r1)
/* 80316F38 00312B98  38 00 00 00 */	li r0, 0
/* 80316F3C 00312B9C  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 80316F40 00312BA0  3B E0 00 01 */	li r31, 1
/* 80316F44 00312BA4  93 C1 00 38 */	stw r30, 0x38(r1)
/* 80316F48 00312BA8  7C BE 2B 78 */	mr r30, r5
/* 80316F4C 00312BAC  93 A1 00 34 */	stw r29, 0x34(r1)
/* 80316F50 00312BB0  7C 9D 23 78 */	mr r29, r4
/* 80316F54 00312BB4  93 81 00 30 */	stw r28, 0x30(r1)
/* 80316F58 00312BB8  7C 7C 1B 78 */	mr r28, r3
/* 80316F5C 00312BBC  88 E2 A4 A0 */	lbz r7, lbl_80642AA0-_SDA2_BASE_(r2)
/* 80316F60 00312BC0  88 C2 A4 A1 */	lbz r6, lbl_80642AA1-_SDA2_BASE_(r2)
/* 80316F64 00312BC4  90 61 00 20 */	stw r3, 0x20(r1)
/* 80316F68 00312BC8  7F A3 EB 78 */	mr r3, r29
/* 80316F6C 00312BCC  98 E1 00 0C */	stb r7, 0xc(r1)
/* 80316F70 00312BD0  98 C1 00 0D */	stb r6, 0xd(r1)
/* 80316F74 00312BD4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80316F78 00312BD8  90 A1 00 28 */	stw r5, 0x28(r1)
/* 80316F7C 00312BDC  B0 01 00 2C */	sth r0, 0x2c(r1)
/* 80316F80 00312BE0  80 A4 00 00 */	lwz r5, 0(r4)
/* 80316F84 00312BE4  80 04 00 04 */	lwz r0, 4(r4)
/* 80316F88 00312BE8  90 A1 00 10 */	stw r5, 0x10(r1)
/* 80316F8C 00312BEC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80316F90 00312BF0  80 A4 00 08 */	lwz r5, 8(r4)
/* 80316F94 00312BF4  80 04 00 0C */	lwz r0, 0xc(r4)
/* 80316F98 00312BF8  90 A1 00 18 */	stw r5, 0x18(r1)
/* 80316F9C 00312BFC  90 01 00 1C */	stw r0, 0x1c(r1)
/* 80316FA0 00312C00  4B FE E3 41 */	bl VFiPFSTR_GetCodeMode
/* 80316FA4 00312C04  28 03 00 01 */	cmplwi r3, 1
/* 80316FA8 00312C08  40 82 00 A4 */	bne lbl_8031704C
/* 80316FAC 00312C0C  2C 1E 00 00 */	cmpwi r30, 0
/* 80316FB0 00312C10  40 82 01 18 */	bne lbl_803170C8
/* 80316FB4 00312C14  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 80316FB8 00312C18  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 80316FBC 00312C1C  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 80316FC0 00312C20  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 80316FC4 00312C24  28 00 00 02 */	cmplwi r0, 2
/* 80316FC8 00312C28  40 82 01 00 */	bne lbl_803170C8
/* 80316FCC 00312C2C  88 8D 8D 1C */	lbz r4, lbl_8063DFDC-_SDA_BASE_(r13)
/* 80316FD0 00312C30  34 61 00 10 */	addic. r3, r1, 0x10
/* 80316FD4 00312C34  88 0D 8D 1D */	lbz r0, lbl_8063DFDD-_SDA_BASE_(r13)
/* 80316FD8 00312C38  3B A0 00 00 */	li r29, 0
/* 80316FDC 00312C3C  98 81 00 08 */	stb r4, 8(r1)
/* 80316FE0 00312C40  98 01 00 09 */	stb r0, 9(r1)
/* 80316FE4 00312C44  40 82 00 0C */	bne lbl_80316FF0
/* 80316FE8 00312C48  3B A0 00 0A */	li r29, 0xa
/* 80316FEC 00312C4C  48 00 00 24 */	b lbl_80317010
lbl_80316FF0:
/* 80316FF0 00312C50  38 81 00 08 */	addi r4, r1, 8
/* 80316FF4 00312C54  38 A0 00 01 */	li r5, 1
/* 80316FF8 00312C58  38 C0 00 00 */	li r6, 0
/* 80316FFC 00312C5C  38 E0 00 02 */	li r7, 2
/* 80317000 00312C60  4B FE E6 61 */	bl VFiPFSTR_StrNCmp
/* 80317004 00312C64  2C 03 00 00 */	cmpwi r3, 0
/* 80317008 00312C68  40 82 00 08 */	bne lbl_80317010
/* 8031700C 00312C6C  3B A0 00 01 */	li r29, 1
lbl_80317010:
/* 80317010 00312C70  28 1D 00 01 */	cmplwi r29, 1
/* 80317014 00312C74  40 82 00 B4 */	bne lbl_803170C8
/* 80317018 00312C78  7F 83 E3 78 */	mr r3, r28
/* 8031701C 00312C7C  38 81 00 0C */	addi r4, r1, 0xc
/* 80317020 00312C80  38 A0 00 02 */	li r5, 2
/* 80317024 00312C84  4B FE E1 25 */	bl VFipf_strncmp
/* 80317028 00312C88  2C 03 00 00 */	cmpwi r3, 0
/* 8031702C 00312C8C  40 82 00 9C */	bne lbl_803170C8
/* 80317030 00312C90  A0 81 00 2C */	lhz r4, 0x2c(r1)
/* 80317034 00312C94  80 61 00 10 */	lwz r3, 0x10(r1)
/* 80317038 00312C98  38 84 00 02 */	addi r4, r4, 2
/* 8031703C 00312C9C  38 03 00 02 */	addi r0, r3, 2
/* 80317040 00312CA0  B0 81 00 2C */	sth r4, 0x2c(r1)
/* 80317044 00312CA4  90 01 00 10 */	stw r0, 0x10(r1)
/* 80317048 00312CA8  48 00 00 80 */	b lbl_803170C8
lbl_8031704C:
/* 8031704C 00312CAC  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 80317050 00312CB0  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 80317054 00312CB4  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 80317058 00312CB8  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8031705C 00312CBC  28 00 00 02 */	cmplwi r0, 2
/* 80317060 00312CC0  40 82 00 68 */	bne lbl_803170C8
/* 80317064 00312CC4  2C 1E 00 00 */	cmpwi r30, 0
/* 80317068 00312CC8  40 82 00 60 */	bne lbl_803170C8
/* 8031706C 00312CCC  7F A3 EB 78 */	mr r3, r29
/* 80317070 00312CD0  38 8D 8D 00 */	addi r4, r13, lbl_8063DFC0-_SDA_BASE_
/* 80317074 00312CD4  38 A0 00 01 */	li r5, 1
/* 80317078 00312CD8  38 C0 00 00 */	li r6, 0
/* 8031707C 00312CDC  38 E0 00 01 */	li r7, 1
/* 80317080 00312CE0  4B FE E5 E1 */	bl VFiPFSTR_StrNCmp
/* 80317084 00312CE4  2C 03 00 00 */	cmpwi r3, 0
/* 80317088 00312CE8  41 82 00 40 */	beq lbl_803170C8
/* 8031708C 00312CEC  7F A3 EB 78 */	mr r3, r29
/* 80317090 00312CF0  38 8D 8D 04 */	addi r4, r13, lbl_8063DFC4-_SDA_BASE_
/* 80317094 00312CF4  38 A0 00 01 */	li r5, 1
/* 80317098 00312CF8  38 C0 00 00 */	li r6, 0
/* 8031709C 00312CFC  38 E0 00 02 */	li r7, 2
/* 803170A0 00312D00  4B FE E5 C1 */	bl VFiPFSTR_StrNCmp
/* 803170A4 00312D04  2C 03 00 00 */	cmpwi r3, 0
/* 803170A8 00312D08  41 82 00 20 */	beq lbl_803170C8
/* 803170AC 00312D0C  7F A3 EB 78 */	mr r3, r29
/* 803170B0 00312D10  38 80 00 01 */	li r4, 1
/* 803170B4 00312D14  38 A0 00 00 */	li r5, 0
/* 803170B8 00312D18  48 00 13 7D */	bl VFiPFPATH_CheckExtShortName
/* 803170BC 00312D1C  2C 03 00 00 */	cmpwi r3, 0
/* 803170C0 00312D20  40 82 00 08 */	bne lbl_803170C8
/* 803170C4 00312D24  3B E0 00 00 */	li r31, 0
lbl_803170C8:
/* 803170C8 00312D28  28 1F 00 01 */	cmplwi r31, 1
/* 803170CC 00312D2C  40 82 01 58 */	bne lbl_80317224
/* 803170D0 00312D30  80 01 00 28 */	lwz r0, 0x28(r1)
/* 803170D4 00312D34  2C 00 00 00 */	cmpwi r0, 0
/* 803170D8 00312D38  41 82 00 84 */	beq lbl_8031715C
/* 803170DC 00312D3C  A0 A1 00 2C */	lhz r5, 0x2c(r1)
/* 803170E0 00312D40  28 05 02 0A */	cmplwi r5, 0x20a
/* 803170E4 00312D44  40 81 00 0C */	ble lbl_803170F0
/* 803170E8 00312D48  3B E0 00 00 */	li r31, 0
/* 803170EC 00312D4C  48 00 01 0C */	b lbl_803171F8
lbl_803170F0:
/* 803170F0 00312D50  80 81 00 20 */	lwz r4, 0x20(r1)
/* 803170F4 00312D54  38 65 00 02 */	addi r3, r5, 2
/* 803170F8 00312D58  38 00 00 00 */	li r0, 0
/* 803170FC 00312D5C  7C 84 2A 2E */	lhzx r4, r4, r5
/* 80317100 00312D60  28 04 00 61 */	cmplwi r4, 0x61
/* 80317104 00312D64  B0 61 00 2C */	sth r3, 0x2c(r1)
/* 80317108 00312D68  41 80 00 10 */	blt lbl_80317118
/* 8031710C 00312D6C  28 04 00 7A */	cmplwi r4, 0x7a
/* 80317110 00312D70  41 81 00 08 */	bgt lbl_80317118
/* 80317114 00312D74  38 00 00 01 */	li r0, 1
lbl_80317118:
/* 80317118 00312D78  2C 00 00 00 */	cmpwi r0, 0
/* 8031711C 00312D7C  41 82 00 08 */	beq lbl_80317124
/* 80317120 00312D80  38 84 FF E0 */	addi r4, r4, -32
lbl_80317124:
/* 80317124 00312D84  54 9F 04 3E */	clrlwi r31, r4, 0x10
/* 80317128 00312D88  28 1F FF 41 */	cmplwi r31, 0xff41
/* 8031712C 00312D8C  41 80 00 1C */	blt lbl_80317148
/* 80317130 00312D90  28 1F FF 5A */	cmplwi r31, 0xff5a
/* 80317134 00312D94  41 81 00 14 */	bgt lbl_80317148
/* 80317138 00312D98  38 1F FF E0 */	addi r0, r31, -32
/* 8031713C 00312D9C  38 60 00 01 */	li r3, 1
/* 80317140 00312DA0  54 1D 04 3E */	clrlwi r29, r0, 0x10
/* 80317144 00312DA4  48 00 00 08 */	b lbl_8031714C
lbl_80317148:
/* 80317148 00312DA8  38 60 00 00 */	li r3, 0
lbl_8031714C:
/* 8031714C 00312DAC  28 03 00 01 */	cmplwi r3, 1
/* 80317150 00312DB0  40 82 00 A8 */	bne lbl_803171F8
/* 80317154 00312DB4  7F BF EB 78 */	mr r31, r29
/* 80317158 00312DB8  48 00 00 A0 */	b lbl_803171F8
lbl_8031715C:
/* 8031715C 00312DBC  A0 C1 00 2C */	lhz r6, 0x2c(r1)
/* 80317160 00312DC0  28 06 00 0C */	cmplwi r6, 0xc
/* 80317164 00312DC4  41 80 00 0C */	blt lbl_80317170
/* 80317168 00312DC8  3B E0 00 00 */	li r31, 0
/* 8031716C 00312DCC  48 00 00 8C */	b lbl_803171F8
lbl_80317170:
/* 80317170 00312DD0  38 06 00 01 */	addi r0, r6, 1
/* 80317174 00312DD4  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 80317178 00312DD8  B0 01 00 2C */	sth r0, 0x2c(r1)
/* 8031717C 00312DDC  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 80317180 00312DE0  80 A1 00 20 */	lwz r5, 0x20(r1)
/* 80317184 00312DE4  38 80 00 01 */	li r4, 1
/* 80317188 00312DE8  81 83 00 30 */	lwz r12, 0x30(r3)
/* 8031718C 00312DEC  7F A5 30 AE */	lbzx r29, r5, r6
/* 80317190 00312DF0  7F BD 07 74 */	extsb r29, r29
/* 80317194 00312DF4  7F A3 EB 78 */	mr r3, r29
/* 80317198 00312DF8  7D 89 03 A6 */	mtctr r12
/* 8031719C 00312DFC  4E 80 04 21 */	bctrl
/* 803171A0 00312E00  2C 03 00 00 */	cmpwi r3, 0
/* 803171A4 00312E04  41 82 00 24 */	beq lbl_803171C8
/* 803171A8 00312E08  A0 81 00 2C */	lhz r4, 0x2c(r1)
/* 803171AC 00312E0C  57 A0 44 2E */	rlwinm r0, r29, 8, 0x10, 0x17
/* 803171B0 00312E10  80 A1 00 20 */	lwz r5, 0x20(r1)
/* 803171B4 00312E14  38 64 00 01 */	addi r3, r4, 1
/* 803171B8 00312E18  B0 61 00 2C */	sth r3, 0x2c(r1)
/* 803171BC 00312E1C  7C 65 20 AE */	lbzx r3, r5, r4
/* 803171C0 00312E20  7C 00 1A 14 */	add r0, r0, r3
/* 803171C4 00312E24  54 1D 04 3E */	clrlwi r29, r0, 0x10
lbl_803171C8:
/* 803171C8 00312E28  57 A0 04 3E */	clrlwi r0, r29, 0x10
/* 803171CC 00312E2C  38 60 00 00 */	li r3, 0
/* 803171D0 00312E30  28 00 00 61 */	cmplwi r0, 0x61
/* 803171D4 00312E34  41 80 00 10 */	blt lbl_803171E4
/* 803171D8 00312E38  28 00 00 7A */	cmplwi r0, 0x7a
/* 803171DC 00312E3C  41 81 00 08 */	bgt lbl_803171E4
/* 803171E0 00312E40  38 60 00 01 */	li r3, 1
lbl_803171E4:
/* 803171E4 00312E44  2C 03 00 00 */	cmpwi r3, 0
/* 803171E8 00312E48  57 A3 04 3E */	clrlwi r3, r29, 0x10
/* 803171EC 00312E4C  41 82 00 08 */	beq lbl_803171F4
/* 803171F0 00312E50  38 63 FF E0 */	addi r3, r3, -32
lbl_803171F4:
/* 803171F4 00312E54  54 7F 04 3E */	clrlwi r31, r3, 0x10
lbl_803171F8:
/* 803171F8 00312E58  7F C4 F3 78 */	mr r4, r30
/* 803171FC 00312E5C  38 61 00 10 */	addi r3, r1, 0x10
/* 80317200 00312E60  4B FF EC 29 */	bl VFiPFPATH_GetNextCharOfPattern
/* 80317204 00312E64  7C 60 1B 78 */	mr r0, r3
/* 80317208 00312E68  7F C7 F3 78 */	mr r7, r30
/* 8031720C 00312E6C  57 E3 04 3E */	clrlwi r3, r31, 0x10
/* 80317210 00312E70  38 81 00 20 */	addi r4, r1, 0x20
/* 80317214 00312E74  54 05 04 3E */	clrlwi r5, r0, 0x10
/* 80317218 00312E78  38 C1 00 10 */	addi r6, r1, 0x10
/* 8031721C 00312E7C  4B FF EE CD */	bl VFiPFPATH_DoMatchFileNameWithPattern
/* 80317220 00312E80  7C 7F 1B 78 */	mr r31, r3
lbl_80317224:
/* 80317224 00312E84  7F E3 FB 78 */	mr r3, r31
/* 80317228 00312E88  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8031722C 00312E8C  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 80317230 00312E90  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 80317234 00312E94  83 81 00 30 */	lwz r28, 0x30(r1)
/* 80317238 00312E98  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8031723C 00312E9C  7C 08 03 A6 */	mtlr r0
/* 80317240 00312EA0  38 21 00 40 */	addi r1, r1, 0x40
/* 80317244 00312EA4  4E 80 00 20 */	blr

.global VFiPFPATH_putShortName
VFiPFPATH_putShortName:
/* 80317248 00312EA8  39 20 00 00 */	li r9, 0
/* 8031724C 00312EAC  48 00 00 18 */	b lbl_80317264
lbl_80317250:
/* 80317250 00312EB0  88 04 00 00 */	lbz r0, 0(r4)
/* 80317254 00312EB4  39 29 00 01 */	addi r9, r9, 1
/* 80317258 00312EB8  38 84 00 01 */	addi r4, r4, 1
/* 8031725C 00312EBC  98 03 00 00 */	stb r0, 0(r3)
/* 80317260 00312EC0  38 63 00 01 */	addi r3, r3, 1
lbl_80317264:
/* 80317264 00312EC4  2C 09 00 08 */	cmpwi r9, 8
/* 80317268 00312EC8  40 80 00 18 */	bge lbl_80317280
/* 8031726C 00312ECC  88 04 00 00 */	lbz r0, 0(r4)
/* 80317270 00312ED0  7C 00 07 75 */	extsb. r0, r0
/* 80317274 00312ED4  41 82 00 0C */	beq lbl_80317280
/* 80317278 00312ED8  2C 00 00 2E */	cmpwi r0, 0x2e
/* 8031727C 00312EDC  40 82 FF D4 */	bne lbl_80317250
lbl_80317280:
/* 80317280 00312EE0  2C 09 00 00 */	cmpwi r9, 0
/* 80317284 00312EE4  40 82 00 34 */	bne lbl_803172B8
/* 80317288 00312EE8  39 20 00 00 */	li r9, 0
/* 8031728C 00312EEC  48 00 00 18 */	b lbl_803172A4
lbl_80317290:
/* 80317290 00312EF0  88 04 00 00 */	lbz r0, 0(r4)
/* 80317294 00312EF4  39 29 00 01 */	addi r9, r9, 1
/* 80317298 00312EF8  38 84 00 01 */	addi r4, r4, 1
/* 8031729C 00312EFC  98 03 00 00 */	stb r0, 0(r3)
/* 803172A0 00312F00  38 63 00 01 */	addi r3, r3, 1
lbl_803172A4:
/* 803172A4 00312F04  2C 09 00 02 */	cmpwi r9, 2
/* 803172A8 00312F08  40 80 00 10 */	bge lbl_803172B8
/* 803172AC 00312F0C  88 04 00 00 */	lbz r0, 0(r4)
/* 803172B0 00312F10  7C 00 07 75 */	extsb. r0, r0
/* 803172B4 00312F14  40 82 FF DC */	bne lbl_80317290
lbl_803172B8:
/* 803172B8 00312F18  2C 89 00 08 */	cmpwi cr1, r9, 8
/* 803172BC 00312F1C  40 85 00 0C */	ble cr1, lbl_803172C8
/* 803172C0 00312F20  38 60 00 0A */	li r3, 0xa
/* 803172C4 00312F24  4E 80 00 20 */	blr
lbl_803172C8:
/* 803172C8 00312F28  54 A8 07 39 */	rlwinm. r8, r5, 0, 0x1c, 0x1c
/* 803172CC 00312F2C  40 82 00 64 */	bne lbl_80317330
/* 803172D0 00312F30  20 C9 00 08 */	subfic r6, r9, 8
/* 803172D4 00312F34  38 E0 00 20 */	li r7, 0x20
/* 803172D8 00312F38  40 84 00 58 */	bge cr1, lbl_80317330
/* 803172DC 00312F3C  54 C5 E8 FF */	rlwinm. r5, r6, 0x1d, 3, 0x1f
/* 803172E0 00312F40  7C C0 33 78 */	mr r0, r6
/* 803172E4 00312F44  7C A9 03 A6 */	mtctr r5
/* 803172E8 00312F48  41 82 00 34 */	beq lbl_8031731C
lbl_803172EC:
/* 803172EC 00312F4C  98 E3 00 00 */	stb r7, 0(r3)
/* 803172F0 00312F50  98 E3 00 01 */	stb r7, 1(r3)
/* 803172F4 00312F54  98 E3 00 02 */	stb r7, 2(r3)
/* 803172F8 00312F58  98 E3 00 03 */	stb r7, 3(r3)
/* 803172FC 00312F5C  98 E3 00 04 */	stb r7, 4(r3)
/* 80317300 00312F60  98 E3 00 05 */	stb r7, 5(r3)
/* 80317304 00312F64  98 E3 00 06 */	stb r7, 6(r3)
/* 80317308 00312F68  98 E3 00 07 */	stb r7, 7(r3)
/* 8031730C 00312F6C  38 63 00 08 */	addi r3, r3, 8
/* 80317310 00312F70  42 00 FF DC */	bdnz lbl_803172EC
/* 80317314 00312F74  70 C6 00 07 */	andi. r6, r6, 7
/* 80317318 00312F78  41 82 00 14 */	beq lbl_8031732C
lbl_8031731C:
/* 8031731C 00312F7C  7C C9 03 A6 */	mtctr r6
lbl_80317320:
/* 80317320 00312F80  98 E3 00 00 */	stb r7, 0(r3)
/* 80317324 00312F84  38 63 00 01 */	addi r3, r3, 1
/* 80317328 00312F88  42 00 FF F8 */	bdnz lbl_80317320
lbl_8031732C:
/* 8031732C 00312F8C  7D 29 02 14 */	add r9, r9, r0
lbl_80317330:
/* 80317330 00312F90  88 04 00 00 */	lbz r0, 0(r4)
/* 80317334 00312F94  7C 00 07 75 */	extsb. r0, r0
/* 80317338 00312F98  41 82 00 34 */	beq lbl_8031736C
/* 8031733C 00312F9C  2C 08 00 00 */	cmpwi r8, 0
/* 80317340 00312FA0  40 82 00 20 */	bne lbl_80317360
/* 80317344 00312FA4  38 84 00 01 */	addi r4, r4, 1
/* 80317348 00312FA8  48 00 00 18 */	b lbl_80317360
lbl_8031734C:
/* 8031734C 00312FAC  88 04 00 00 */	lbz r0, 0(r4)
/* 80317350 00312FB0  39 29 00 01 */	addi r9, r9, 1
/* 80317354 00312FB4  38 84 00 01 */	addi r4, r4, 1
/* 80317358 00312FB8  98 03 00 00 */	stb r0, 0(r3)
/* 8031735C 00312FBC  38 63 00 01 */	addi r3, r3, 1
lbl_80317360:
/* 80317360 00312FC0  88 04 00 00 */	lbz r0, 0(r4)
/* 80317364 00312FC4  7C 00 07 75 */	extsb. r0, r0
/* 80317368 00312FC8  40 82 FF E4 */	bne lbl_8031734C
lbl_8031736C:
/* 8031736C 00312FCC  2C 09 00 0B */	cmpwi r9, 0xb
/* 80317370 00312FD0  20 89 00 0B */	subfic r4, r9, 0xb
/* 80317374 00312FD4  38 A0 00 20 */	li r5, 0x20
/* 80317378 00312FD8  40 80 00 50 */	bge lbl_803173C8
/* 8031737C 00312FDC  54 80 E8 FF */	rlwinm. r0, r4, 0x1d, 3, 0x1f
/* 80317380 00312FE0  7C 09 03 A6 */	mtctr r0
/* 80317384 00312FE4  41 82 00 34 */	beq lbl_803173B8
lbl_80317388:
/* 80317388 00312FE8  98 A3 00 00 */	stb r5, 0(r3)
/* 8031738C 00312FEC  98 A3 00 01 */	stb r5, 1(r3)
/* 80317390 00312FF0  98 A3 00 02 */	stb r5, 2(r3)
/* 80317394 00312FF4  98 A3 00 03 */	stb r5, 3(r3)
/* 80317398 00312FF8  98 A3 00 04 */	stb r5, 4(r3)
/* 8031739C 00312FFC  98 A3 00 05 */	stb r5, 5(r3)
/* 803173A0 00313000  98 A3 00 06 */	stb r5, 6(r3)
/* 803173A4 00313004  98 A3 00 07 */	stb r5, 7(r3)
/* 803173A8 00313008  38 63 00 08 */	addi r3, r3, 8
/* 803173AC 0031300C  42 00 FF DC */	bdnz lbl_80317388
/* 803173B0 00313010  70 84 00 07 */	andi. r4, r4, 7
/* 803173B4 00313014  41 82 00 14 */	beq lbl_803173C8
lbl_803173B8:
/* 803173B8 00313018  7C 89 03 A6 */	mtctr r4
lbl_803173BC:
/* 803173BC 0031301C  98 A3 00 00 */	stb r5, 0(r3)
/* 803173C0 00313020  38 63 00 01 */	addi r3, r3, 1
/* 803173C4 00313024  42 00 FF F8 */	bdnz lbl_803173BC
lbl_803173C8:
/* 803173C8 00313028  38 60 00 00 */	li r3, 0
/* 803173CC 0031302C  4E 80 00 20 */	blr

.global VFiPFPATH_getShortName
VFiPFPATH_getShortName:
/* 803173D0 00313030  88 C4 00 00 */	lbz r6, 0(r4)
/* 803173D4 00313034  38 E0 FF FF */	li r7, -1
/* 803173D8 00313038  2C 06 00 20 */	cmpwi r6, 0x20
/* 803173DC 0031303C  98 C3 00 00 */	stb r6, 0(r3)
/* 803173E0 00313040  41 82 00 08 */	beq lbl_803173E8
/* 803173E4 00313044  38 E0 00 00 */	li r7, 0
lbl_803173E8:
/* 803173E8 00313048  88 C4 00 01 */	lbz r6, 1(r4)
/* 803173EC 0031304C  2C 06 00 20 */	cmpwi r6, 0x20
/* 803173F0 00313050  98 C3 00 01 */	stb r6, 1(r3)
/* 803173F4 00313054  41 82 00 08 */	beq lbl_803173FC
/* 803173F8 00313058  38 E0 00 01 */	li r7, 1
lbl_803173FC:
/* 803173FC 0031305C  88 C4 00 02 */	lbz r6, 2(r4)
/* 80317400 00313060  2C 06 00 20 */	cmpwi r6, 0x20
/* 80317404 00313064  98 C3 00 02 */	stb r6, 2(r3)
/* 80317408 00313068  41 82 00 08 */	beq lbl_80317410
/* 8031740C 0031306C  38 E0 00 02 */	li r7, 2
lbl_80317410:
/* 80317410 00313070  88 C4 00 03 */	lbz r6, 3(r4)
/* 80317414 00313074  2C 06 00 20 */	cmpwi r6, 0x20
/* 80317418 00313078  98 C3 00 03 */	stb r6, 3(r3)
/* 8031741C 0031307C  41 82 00 08 */	beq lbl_80317424
/* 80317420 00313080  38 E0 00 03 */	li r7, 3
lbl_80317424:
/* 80317424 00313084  88 C4 00 04 */	lbz r6, 4(r4)
/* 80317428 00313088  2C 06 00 20 */	cmpwi r6, 0x20
/* 8031742C 0031308C  98 C3 00 04 */	stb r6, 4(r3)
/* 80317430 00313090  41 82 00 08 */	beq lbl_80317438
/* 80317434 00313094  38 E0 00 04 */	li r7, 4
lbl_80317438:
/* 80317438 00313098  88 C4 00 05 */	lbz r6, 5(r4)
/* 8031743C 0031309C  2C 06 00 20 */	cmpwi r6, 0x20
/* 80317440 003130A0  98 C3 00 05 */	stb r6, 5(r3)
/* 80317444 003130A4  41 82 00 08 */	beq lbl_8031744C
/* 80317448 003130A8  38 E0 00 05 */	li r7, 5
lbl_8031744C:
/* 8031744C 003130AC  88 C4 00 06 */	lbz r6, 6(r4)
/* 80317450 003130B0  2C 06 00 20 */	cmpwi r6, 0x20
/* 80317454 003130B4  98 C3 00 06 */	stb r6, 6(r3)
/* 80317458 003130B8  41 82 00 08 */	beq lbl_80317460
/* 8031745C 003130BC  38 E0 00 06 */	li r7, 6
lbl_80317460:
/* 80317460 003130C0  88 C4 00 07 */	lbz r6, 7(r4)
/* 80317464 003130C4  2C 06 00 20 */	cmpwi r6, 0x20
/* 80317468 003130C8  98 C3 00 07 */	stb r6, 7(r3)
/* 8031746C 003130CC  41 82 00 08 */	beq lbl_80317474
/* 80317470 003130D0  38 E0 00 07 */	li r7, 7
lbl_80317474:
/* 80317474 003130D4  34 E7 00 01 */	addic. r7, r7, 1
/* 80317478 003130D8  7C E3 3A 14 */	add r7, r3, r7
/* 8031747C 003130DC  40 82 00 0C */	bne lbl_80317488
/* 80317480 003130E0  38 60 00 0A */	li r3, 0xa
/* 80317484 003130E4  4E 80 00 20 */	blr
lbl_80317488:
/* 80317488 003130E8  88 04 00 08 */	lbz r0, 8(r4)
/* 8031748C 003130EC  38 C0 00 07 */	li r6, 7
/* 80317490 003130F0  28 00 00 20 */	cmplwi r0, 0x20
/* 80317494 003130F4  41 82 00 08 */	beq lbl_8031749C
/* 80317498 003130F8  38 C0 00 08 */	li r6, 8
lbl_8031749C:
/* 8031749C 003130FC  88 04 00 09 */	lbz r0, 9(r4)
/* 803174A0 00313100  28 00 00 20 */	cmplwi r0, 0x20
/* 803174A4 00313104  41 82 00 08 */	beq lbl_803174AC
/* 803174A8 00313108  38 C0 00 09 */	li r6, 9
lbl_803174AC:
/* 803174AC 0031310C  88 04 00 0A */	lbz r0, 0xa(r4)
/* 803174B0 00313110  28 00 00 20 */	cmplwi r0, 0x20
/* 803174B4 00313114  41 82 00 08 */	beq lbl_803174BC
/* 803174B8 00313118  38 C0 00 0A */	li r6, 0xa
lbl_803174BC:
/* 803174BC 0031311C  2C 06 00 07 */	cmpwi r6, 7
/* 803174C0 00313120  40 81 01 5C */	ble lbl_8031761C
/* 803174C4 00313124  54 A0 07 39 */	rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 803174C8 00313128  40 82 00 10 */	bne lbl_803174D8
/* 803174CC 0031312C  38 00 00 2E */	li r0, 0x2e
/* 803174D0 00313130  98 07 00 00 */	stb r0, 0(r7)
/* 803174D4 00313134  38 E7 00 01 */	addi r7, r7, 1
lbl_803174D8:
/* 803174D8 00313138  2C 86 00 08 */	cmpwi cr1, r6, 8
/* 803174DC 0031313C  38 60 00 08 */	li r3, 8
/* 803174E0 00313140  41 84 01 3C */	blt cr1, lbl_8031761C
/* 803174E4 00313144  38 06 FF F9 */	addi r0, r6, -7
/* 803174E8 00313148  39 06 FF F8 */	addi r8, r6, -8
/* 803174EC 0031314C  2C 00 00 08 */	cmpwi r0, 8
/* 803174F0 00313150  40 81 01 00 */	ble lbl_803175F0
/* 803174F4 00313154  39 20 00 00 */	li r9, 0
/* 803174F8 00313158  39 40 00 00 */	li r10, 0
/* 803174FC 0031315C  39 60 00 00 */	li r11, 0
/* 80317500 00313160  41 84 00 18 */	blt cr1, lbl_80317518
/* 80317504 00313164  3C A0 80 00 */	lis r5, 0x7FFFFFFE@ha
/* 80317508 00313168  38 05 FF FE */	addi r0, r5, 0x7FFFFFFE@l
/* 8031750C 0031316C  7C 06 00 00 */	cmpw r6, r0
/* 80317510 00313170  41 81 00 08 */	bgt lbl_80317518
/* 80317514 00313174  39 60 00 01 */	li r11, 1
lbl_80317518:
/* 80317518 00313178  2C 0B 00 00 */	cmpwi r11, 0
/* 8031751C 0031317C  41 82 00 38 */	beq lbl_80317554
/* 80317520 00313180  54 CB 00 00 */	rlwinm r11, r6, 0, 0, 0
/* 80317524 00313184  38 A0 00 01 */	li r5, 1
/* 80317528 00313188  3C 0B 80 00 */	addis r0, r11, 0x8000
/* 8031752C 0031318C  28 00 00 00 */	cmplwi r0, 0
/* 80317530 00313190  40 82 00 18 */	bne lbl_80317548
/* 80317534 00313194  38 06 FF F8 */	addi r0, r6, -8
/* 80317538 00313198  54 00 00 00 */	rlwinm r0, r0, 0, 0, 0
/* 8031753C 0031319C  7C 0B 00 00 */	cmpw r11, r0
/* 80317540 003131A0  41 82 00 08 */	beq lbl_80317548
/* 80317544 003131A4  38 A0 00 00 */	li r5, 0
lbl_80317548:
/* 80317548 003131A8  2C 05 00 00 */	cmpwi r5, 0
/* 8031754C 003131AC  41 82 00 08 */	beq lbl_80317554
/* 80317550 003131B0  39 40 00 01 */	li r10, 1
lbl_80317554:
/* 80317554 003131B4  2C 0A 00 00 */	cmpwi r10, 0
/* 80317558 003131B8  41 82 00 30 */	beq lbl_80317588
/* 8031755C 003131BC  38 06 FF F8 */	addi r0, r6, -8
/* 80317560 003131C0  38 A0 00 01 */	li r5, 1
/* 80317564 003131C4  54 00 00 01 */	rlwinm. r0, r0, 0, 0, 0
/* 80317568 003131C8  40 82 00 14 */	bne lbl_8031757C
/* 8031756C 003131CC  38 06 FF F9 */	addi r0, r6, -7
/* 80317570 003131D0  54 00 00 01 */	rlwinm. r0, r0, 0, 0, 0
/* 80317574 003131D4  41 82 00 08 */	beq lbl_8031757C
/* 80317578 003131D8  38 A0 00 00 */	li r5, 0
lbl_8031757C:
/* 8031757C 003131DC  2C 05 00 00 */	cmpwi r5, 0
/* 80317580 003131E0  41 82 00 08 */	beq lbl_80317588
/* 80317584 003131E4  39 20 00 01 */	li r9, 1
lbl_80317588:
/* 80317588 003131E8  2C 09 00 00 */	cmpwi r9, 0
/* 8031758C 003131EC  41 82 00 64 */	beq lbl_803175F0
/* 80317590 003131F0  55 00 E8 FE */	srwi r0, r8, 3
/* 80317594 003131F4  7C 09 03 A6 */	mtctr r0
/* 80317598 003131F8  2C 08 00 08 */	cmpwi r8, 8
/* 8031759C 003131FC  41 80 00 54 */	blt lbl_803175F0
lbl_803175A0:
/* 803175A0 00313200  7C A4 18 AE */	lbzx r5, r4, r3
/* 803175A4 00313204  7D 04 1A 14 */	add r8, r4, r3
/* 803175A8 00313208  88 08 00 01 */	lbz r0, 1(r8)
/* 803175AC 0031320C  38 63 00 08 */	addi r3, r3, 8
/* 803175B0 00313210  98 A7 00 00 */	stb r5, 0(r7)
/* 803175B4 00313214  88 A8 00 02 */	lbz r5, 2(r8)
/* 803175B8 00313218  98 07 00 01 */	stb r0, 1(r7)
/* 803175BC 0031321C  88 08 00 03 */	lbz r0, 3(r8)
/* 803175C0 00313220  98 A7 00 02 */	stb r5, 2(r7)
/* 803175C4 00313224  88 A8 00 04 */	lbz r5, 4(r8)
/* 803175C8 00313228  98 07 00 03 */	stb r0, 3(r7)
/* 803175CC 0031322C  88 08 00 05 */	lbz r0, 5(r8)
/* 803175D0 00313230  98 A7 00 04 */	stb r5, 4(r7)
/* 803175D4 00313234  88 A8 00 06 */	lbz r5, 6(r8)
/* 803175D8 00313238  98 07 00 05 */	stb r0, 5(r7)
/* 803175DC 0031323C  88 08 00 07 */	lbz r0, 7(r8)
/* 803175E0 00313240  98 A7 00 06 */	stb r5, 6(r7)
/* 803175E4 00313244  98 07 00 07 */	stb r0, 7(r7)
/* 803175E8 00313248  38 E7 00 08 */	addi r7, r7, 8
/* 803175EC 0031324C  42 00 FF B4 */	bdnz lbl_803175A0
lbl_803175F0:
/* 803175F0 00313250  38 06 00 01 */	addi r0, r6, 1
/* 803175F4 00313254  7C 84 1A 14 */	add r4, r4, r3
/* 803175F8 00313258  7C 03 00 50 */	subf r0, r3, r0
/* 803175FC 0031325C  7C 09 03 A6 */	mtctr r0
/* 80317600 00313260  7C 03 30 00 */	cmpw r3, r6
/* 80317604 00313264  41 81 00 18 */	bgt lbl_8031761C
lbl_80317608:
/* 80317608 00313268  88 04 00 00 */	lbz r0, 0(r4)
/* 8031760C 0031326C  38 84 00 01 */	addi r4, r4, 1
/* 80317610 00313270  98 07 00 00 */	stb r0, 0(r7)
/* 80317614 00313274  38 E7 00 01 */	addi r7, r7, 1
/* 80317618 00313278  42 00 FF F0 */	bdnz lbl_80317608
lbl_8031761C:
/* 8031761C 0031327C  38 00 00 00 */	li r0, 0
/* 80317620 00313280  38 60 00 00 */	li r3, 0
/* 80317624 00313284  98 07 00 00 */	stb r0, 0(r7)
/* 80317628 00313288  4E 80 00 20 */	blr

.global VFiPFPATH_getLongNameformShortName
VFiPFPATH_getLongNameformShortName:
/* 8031762C 0031328C  38 00 00 02 */	li r0, 2
/* 80317630 00313290  7C 67 1B 78 */	mr r7, r3
/* 80317634 00313294  7C 86 23 78 */	mr r6, r4
/* 80317638 00313298  54 A8 07 38 */	rlwinm r8, r5, 0, 0x1c, 0x1c
/* 8031763C 0031329C  39 40 00 00 */	li r10, 0
/* 80317640 003132A0  7C 09 03 A6 */	mtctr r0
lbl_80317644:
/* 80317644 003132A4  89 27 00 00 */	lbz r9, 0(r7)
/* 80317648 003132A8  7D 20 07 75 */	extsb. r0, r9
/* 8031764C 003132AC  41 82 01 04 */	beq lbl_80317750
/* 80317650 003132B0  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317654 003132B4  41 82 00 FC */	beq lbl_80317750
/* 80317658 003132B8  2C 08 00 00 */	cmpwi r8, 0
/* 8031765C 003132BC  41 82 00 20 */	beq lbl_8031767C
/* 80317660 003132C0  2C 00 00 41 */	cmpwi r0, 0x41
/* 80317664 003132C4  41 80 00 18 */	blt lbl_8031767C
/* 80317668 003132C8  2C 00 00 5A */	cmpwi r0, 0x5a
/* 8031766C 003132CC  41 81 00 10 */	bgt lbl_8031767C
/* 80317670 003132D0  38 09 00 20 */	addi r0, r9, 0x20
/* 80317674 003132D4  98 06 00 00 */	stb r0, 0(r6)
/* 80317678 003132D8  48 00 00 08 */	b lbl_80317680
lbl_8031767C:
/* 8031767C 003132DC  99 26 00 00 */	stb r9, 0(r6)
lbl_80317680:
/* 80317680 003132E0  89 27 00 01 */	lbz r9, 1(r7)
/* 80317684 003132E4  39 4A 00 01 */	addi r10, r10, 1
/* 80317688 003132E8  7D 20 07 75 */	extsb. r0, r9
/* 8031768C 003132EC  41 82 00 C4 */	beq lbl_80317750
/* 80317690 003132F0  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317694 003132F4  41 82 00 BC */	beq lbl_80317750
/* 80317698 003132F8  2C 08 00 00 */	cmpwi r8, 0
/* 8031769C 003132FC  41 82 00 20 */	beq lbl_803176BC
/* 803176A0 00313300  2C 00 00 41 */	cmpwi r0, 0x41
/* 803176A4 00313304  41 80 00 18 */	blt lbl_803176BC
/* 803176A8 00313308  2C 00 00 5A */	cmpwi r0, 0x5a
/* 803176AC 0031330C  41 81 00 10 */	bgt lbl_803176BC
/* 803176B0 00313310  38 09 00 20 */	addi r0, r9, 0x20
/* 803176B4 00313314  98 06 00 01 */	stb r0, 1(r6)
/* 803176B8 00313318  48 00 00 08 */	b lbl_803176C0
lbl_803176BC:
/* 803176BC 0031331C  99 26 00 01 */	stb r9, 1(r6)
lbl_803176C0:
/* 803176C0 00313320  89 27 00 02 */	lbz r9, 2(r7)
/* 803176C4 00313324  39 4A 00 01 */	addi r10, r10, 1
/* 803176C8 00313328  7D 20 07 75 */	extsb. r0, r9
/* 803176CC 0031332C  41 82 00 84 */	beq lbl_80317750
/* 803176D0 00313330  2C 00 00 2E */	cmpwi r0, 0x2e
/* 803176D4 00313334  41 82 00 7C */	beq lbl_80317750
/* 803176D8 00313338  2C 08 00 00 */	cmpwi r8, 0
/* 803176DC 0031333C  41 82 00 20 */	beq lbl_803176FC
/* 803176E0 00313340  2C 00 00 41 */	cmpwi r0, 0x41
/* 803176E4 00313344  41 80 00 18 */	blt lbl_803176FC
/* 803176E8 00313348  2C 00 00 5A */	cmpwi r0, 0x5a
/* 803176EC 0031334C  41 81 00 10 */	bgt lbl_803176FC
/* 803176F0 00313350  38 09 00 20 */	addi r0, r9, 0x20
/* 803176F4 00313354  98 06 00 02 */	stb r0, 2(r6)
/* 803176F8 00313358  48 00 00 08 */	b lbl_80317700
lbl_803176FC:
/* 803176FC 0031335C  99 26 00 02 */	stb r9, 2(r6)
lbl_80317700:
/* 80317700 00313360  89 27 00 03 */	lbz r9, 3(r7)
/* 80317704 00313364  39 4A 00 01 */	addi r10, r10, 1
/* 80317708 00313368  7D 20 07 75 */	extsb. r0, r9
/* 8031770C 0031336C  41 82 00 44 */	beq lbl_80317750
/* 80317710 00313370  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317714 00313374  41 82 00 3C */	beq lbl_80317750
/* 80317718 00313378  2C 08 00 00 */	cmpwi r8, 0
/* 8031771C 0031337C  41 82 00 20 */	beq lbl_8031773C
/* 80317720 00313380  2C 00 00 41 */	cmpwi r0, 0x41
/* 80317724 00313384  41 80 00 18 */	blt lbl_8031773C
/* 80317728 00313388  2C 00 00 5A */	cmpwi r0, 0x5a
/* 8031772C 0031338C  41 81 00 10 */	bgt lbl_8031773C
/* 80317730 00313390  38 09 00 20 */	addi r0, r9, 0x20
/* 80317734 00313394  98 06 00 03 */	stb r0, 3(r6)
/* 80317738 00313398  48 00 00 08 */	b lbl_80317740
lbl_8031773C:
/* 8031773C 0031339C  99 26 00 03 */	stb r9, 3(r6)
lbl_80317740:
/* 80317740 003133A0  39 4A 00 01 */	addi r10, r10, 1
/* 80317744 003133A4  38 C6 00 04 */	addi r6, r6, 4
/* 80317748 003133A8  38 E7 00 04 */	addi r7, r7, 4
/* 8031774C 003133AC  42 00 FE F8 */	bdnz lbl_80317644
lbl_80317750:
/* 80317750 003133B0  7C 03 50 AE */	lbzx r0, r3, r10
/* 80317754 003133B4  7C 00 07 74 */	extsb r0, r0
/* 80317758 003133B8  2C 00 00 2E */	cmpwi r0, 0x2e
/* 8031775C 003133BC  40 82 00 10 */	bne lbl_8031776C
/* 80317760 003133C0  38 00 00 2E */	li r0, 0x2e
/* 80317764 003133C4  7C 04 51 AE */	stbx r0, r4, r10
/* 80317768 003133C8  39 4A 00 01 */	addi r10, r10, 1
lbl_8031776C:
/* 8031776C 003133CC  38 EA 00 03 */	addi r7, r10, 3
/* 80317770 003133D0  54 A6 06 F6 */	rlwinm r6, r5, 0, 0x1b, 0x1b
/* 80317774 003133D4  7C 0A 38 50 */	subf r0, r10, r7
/* 80317778 003133D8  7C A3 52 14 */	add r5, r3, r10
/* 8031777C 003133DC  7C 64 52 14 */	add r3, r4, r10
/* 80317780 003133E0  7C 09 03 A6 */	mtctr r0
/* 80317784 003133E4  7C 0A 38 00 */	cmpw r10, r7
/* 80317788 003133E8  40 80 00 48 */	bge lbl_803177D0
lbl_8031778C:
/* 8031778C 003133EC  88 E5 00 00 */	lbz r7, 0(r5)
/* 80317790 003133F0  7C E0 07 75 */	extsb. r0, r7
/* 80317794 003133F4  41 82 00 3C */	beq lbl_803177D0
/* 80317798 003133F8  2C 06 00 00 */	cmpwi r6, 0
/* 8031779C 003133FC  41 82 00 20 */	beq lbl_803177BC
/* 803177A0 00313400  2C 00 00 41 */	cmpwi r0, 0x41
/* 803177A4 00313404  41 80 00 18 */	blt lbl_803177BC
/* 803177A8 00313408  2C 00 00 5A */	cmpwi r0, 0x5a
/* 803177AC 0031340C  41 81 00 10 */	bgt lbl_803177BC
/* 803177B0 00313410  38 07 00 20 */	addi r0, r7, 0x20
/* 803177B4 00313414  98 03 00 00 */	stb r0, 0(r3)
/* 803177B8 00313418  48 00 00 08 */	b lbl_803177C0
lbl_803177BC:
/* 803177BC 0031341C  98 E3 00 00 */	stb r7, 0(r3)
lbl_803177C0:
/* 803177C0 00313420  39 4A 00 01 */	addi r10, r10, 1
/* 803177C4 00313424  38 63 00 01 */	addi r3, r3, 1
/* 803177C8 00313428  38 A5 00 01 */	addi r5, r5, 1
/* 803177CC 0031342C  42 00 FF C0 */	bdnz lbl_8031778C
lbl_803177D0:
/* 803177D0 00313430  38 00 00 00 */	li r0, 0
/* 803177D4 00313434  7C 04 51 AE */	stbx r0, r4, r10
/* 803177D8 00313438  4E 80 00 20 */	blr

.global VFiPFPATH_GetLengthFromShortname
VFiPFPATH_GetLengthFromShortname:
/* 803177DC 0031343C  38 C0 00 00 */	li r6, 0
/* 803177E0 00313440  38 E0 00 00 */	li r7, 0
/* 803177E4 00313444  48 00 00 48 */	b lbl_8031782C
lbl_803177E8:
/* 803177E8 00313448  2C 06 00 08 */	cmpwi r6, 8
/* 803177EC 0031344C  40 82 00 2C */	bne lbl_80317818
/* 803177F0 00313450  7C A0 07 74 */	extsb r0, r5
/* 803177F4 00313454  2C 00 00 20 */	cmpwi r0, 0x20
/* 803177F8 00313458  40 82 00 1C */	bne lbl_80317814
/* 803177FC 0031345C  88 04 00 01 */	lbz r0, 1(r4)
/* 80317800 00313460  2C 00 00 20 */	cmpwi r0, 0x20
/* 80317804 00313464  40 82 00 10 */	bne lbl_80317814
/* 80317808 00313468  88 04 00 02 */	lbz r0, 2(r4)
/* 8031780C 0031346C  2C 00 00 20 */	cmpwi r0, 0x20
/* 80317810 00313470  41 82 00 08 */	beq lbl_80317818
lbl_80317814:
/* 80317814 00313474  38 E7 00 01 */	addi r7, r7, 1
lbl_80317818:
/* 80317818 00313478  7C A0 07 74 */	extsb r0, r5
/* 8031781C 0031347C  2C 00 00 20 */	cmpwi r0, 0x20
/* 80317820 00313480  41 82 00 08 */	beq lbl_80317828
/* 80317824 00313484  38 E7 00 01 */	addi r7, r7, 1
lbl_80317828:
/* 80317828 00313488  38 C6 00 01 */	addi r6, r6, 1
lbl_8031782C:
/* 8031782C 0031348C  7C A3 30 AE */	lbzx r5, r3, r6
/* 80317830 00313490  7C 83 32 14 */	add r4, r3, r6
/* 80317834 00313494  7C A0 07 75 */	extsb. r0, r5
/* 80317838 00313498  40 82 FF B0 */	bne lbl_803177E8
/* 8031783C 0031349C  7C E3 3B 78 */	mr r3, r7
/* 80317840 003134A0  4E 80 00 20 */	blr

.global VFiPFPATH_GetLengthFromUnicode
VFiPFPATH_GetLengthFromUnicode:
/* 80317844 003134A4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80317848 003134A8  7C 08 02 A6 */	mflr r0
/* 8031784C 003134AC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80317850 003134B0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80317854 003134B4  3F E0 80 58 */	lis r31, lbl_8057F5C8@ha
/* 80317858 003134B8  3B FF F5 C8 */	addi r31, r31, lbl_8057F5C8@l
/* 8031785C 003134BC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80317860 003134C0  3B C0 00 00 */	li r30, 0
/* 80317864 003134C4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80317868 003134C8  3B A0 00 00 */	li r29, 0
/* 8031786C 003134CC  93 81 00 10 */	stw r28, 0x10(r1)
/* 80317870 003134D0  7C 7C 1B 78 */	mr r28, r3
/* 80317874 003134D4  48 00 00 38 */	b lbl_803178AC
lbl_80317878:
/* 80317878 003134D8  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 8031787C 003134DC  7C 7C 1A 14 */	add r3, r28, r3
/* 80317880 003134E0  38 81 00 08 */	addi r4, r1, 8
/* 80317884 003134E4  7D 89 03 A6 */	mtctr r12
/* 80317888 003134E8  4E 80 04 21 */	bctrl
/* 8031788C 003134EC  38 81 00 0E */	addi r4, r1, 0xe
/* 80317890 003134F0  38 A1 00 0C */	addi r5, r1, 0xc
/* 80317894 003134F4  4B FE D9 0D */	bl VFiPFCODE_Divide_Width
/* 80317898 003134F8  A8 01 00 0C */	lha r0, 0xc(r1)
/* 8031789C 003134FC  A8 61 00 0E */	lha r3, 0xe(r1)
/* 803178A0 00313500  7C 00 0E 70 */	srawi r0, r0, 1
/* 803178A4 00313504  7F BD 1A 14 */	add r29, r29, r3
/* 803178A8 00313508  7F DE 02 14 */	add r30, r30, r0
lbl_803178AC:
/* 803178AC 0031350C  57 C3 08 3C */	slwi r3, r30, 1
/* 803178B0 00313510  7C 1C 1A 2E */	lhzx r0, r28, r3
/* 803178B4 00313514  2C 00 00 00 */	cmpwi r0, 0
/* 803178B8 00313518  40 82 FF C0 */	bne lbl_80317878
/* 803178BC 0031351C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 803178C0 00313520  7F A3 EB 78 */	mr r3, r29
/* 803178C4 00313524  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 803178C8 00313528  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 803178CC 0031352C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 803178D0 00313530  80 01 00 24 */	lwz r0, 0x24(r1)
/* 803178D4 00313534  7C 08 03 A6 */	mtlr r0
/* 803178D8 00313538  38 21 00 20 */	addi r1, r1, 0x20
/* 803178DC 0031353C  4E 80 00 20 */	blr

.global VFiPFPATH_transformFromUnicodeToNormal
VFiPFPATH_transformFromUnicodeToNormal:
/* 803178E0 00313540  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 803178E4 00313544  7C 08 02 A6 */	mflr r0
/* 803178E8 00313548  90 01 00 34 */	stw r0, 0x34(r1)
/* 803178EC 0031354C  39 61 00 30 */	addi r11, r1, 0x30
/* 803178F0 00313550  4B EA F8 35 */	bl _savegpr_26
/* 803178F4 00313554  3C A0 80 58 */	lis r5, lbl_8057F5C8@ha
/* 803178F8 00313558  7C 7F 1B 78 */	mr r31, r3
/* 803178FC 0031355C  3B 85 F5 C8 */	addi r28, r5, lbl_8057F5C8@l
/* 80317900 00313560  7C 9A 23 78 */	mr r26, r4
/* 80317904 00313564  80 1C 00 3C */	lwz r0, 0x3c(r28)
/* 80317908 00313568  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8031790C 0031356C  28 00 00 02 */	cmplwi r0, 2
/* 80317910 00313570  40 82 00 8C */	bne lbl_8031799C
/* 80317914 00313574  38 00 00 00 */	li r0, 0
/* 80317918 00313578  3B 80 00 2E */	li r28, 0x2e
/* 8031791C 0031357C  3B A0 00 20 */	li r29, 0x20
/* 80317920 00313580  B3 81 00 10 */	sth r28, 0x10(r1)
/* 80317924 00313584  7F 5B D3 78 */	mr r27, r26
/* 80317928 00313588  3B C0 00 5F */	li r30, 0x5f
/* 8031792C 0031358C  B0 01 00 12 */	sth r0, 0x12(r1)
/* 80317930 00313590  B3 A1 00 0C */	sth r29, 0xc(r1)
/* 80317934 00313594  B0 01 00 0E */	sth r0, 0xe(r1)
/* 80317938 00313598  48 00 00 54 */	b lbl_8031798C
lbl_8031793C:
/* 8031793C 0031359C  7F 43 D3 78 */	mr r3, r26
/* 80317940 003135A0  38 81 00 10 */	addi r4, r1, 0x10
/* 80317944 003135A4  38 A0 00 01 */	li r5, 1
/* 80317948 003135A8  4B FE DF 61 */	bl VFipf_w_strncmp
/* 8031794C 003135AC  2C 03 00 00 */	cmpwi r3, 0
/* 80317950 003135B0  40 82 00 0C */	bne lbl_8031795C
/* 80317954 003135B4  9B 9F 00 00 */	stb r28, 0(r31)
/* 80317958 003135B8  48 00 00 28 */	b lbl_80317980
lbl_8031795C:
/* 8031795C 003135BC  7F 43 D3 78 */	mr r3, r26
/* 80317960 003135C0  38 81 00 0C */	addi r4, r1, 0xc
/* 80317964 003135C4  38 A0 00 01 */	li r5, 1
/* 80317968 003135C8  4B FE DF 41 */	bl VFipf_w_strncmp
/* 8031796C 003135CC  2C 03 00 00 */	cmpwi r3, 0
/* 80317970 003135D0  40 82 00 0C */	bne lbl_8031797C
/* 80317974 003135D4  9B BF 00 00 */	stb r29, 0(r31)
/* 80317978 003135D8  48 00 00 08 */	b lbl_80317980
lbl_8031797C:
/* 8031797C 003135DC  9B DF 00 00 */	stb r30, 0(r31)
lbl_80317980:
/* 80317980 003135E0  3B FF 00 01 */	addi r31, r31, 1
/* 80317984 003135E4  3B 5A 00 02 */	addi r26, r26, 2
/* 80317988 003135E8  3B 7B 00 02 */	addi r27, r27, 2
lbl_8031798C:
/* 8031798C 003135EC  A0 1B 00 00 */	lhz r0, 0(r27)
/* 80317990 003135F0  2C 00 00 00 */	cmpwi r0, 0
/* 80317994 003135F4  40 82 FF A8 */	bne lbl_8031793C
/* 80317998 003135F8  48 00 00 50 */	b lbl_803179E8
lbl_8031799C:
/* 8031799C 003135FC  3B 60 00 00 */	li r27, 0
/* 803179A0 00313600  48 00 00 38 */	b lbl_803179D8
lbl_803179A4:
/* 803179A4 00313604  81 9C 00 28 */	lwz r12, 0x28(r28)
/* 803179A8 00313608  7F E4 FB 78 */	mr r4, r31
/* 803179AC 0031360C  7C 7A 1A 14 */	add r3, r26, r3
/* 803179B0 00313610  7D 89 03 A6 */	mtctr r12
/* 803179B4 00313614  4E 80 04 21 */	bctrl
/* 803179B8 00313618  38 81 00 0A */	addi r4, r1, 0xa
/* 803179BC 0031361C  38 A1 00 08 */	addi r5, r1, 8
/* 803179C0 00313620  4B FE D7 E1 */	bl VFiPFCODE_Divide_Width
/* 803179C4 00313624  A8 01 00 08 */	lha r0, 8(r1)
/* 803179C8 00313628  A8 61 00 0A */	lha r3, 0xa(r1)
/* 803179CC 0031362C  7C 00 0E 70 */	srawi r0, r0, 1
/* 803179D0 00313630  7F FF 1A 14 */	add r31, r31, r3
/* 803179D4 00313634  7F 7B 02 14 */	add r27, r27, r0
lbl_803179D8:
/* 803179D8 00313638  57 63 08 3C */	slwi r3, r27, 1
/* 803179DC 0031363C  7C 1A 1A 2E */	lhzx r0, r26, r3
/* 803179E0 00313640  2C 00 00 00 */	cmpwi r0, 0
/* 803179E4 00313644  40 82 FF C0 */	bne lbl_803179A4
lbl_803179E8:
/* 803179E8 00313648  38 00 00 00 */	li r0, 0
/* 803179EC 0031364C  39 61 00 30 */	addi r11, r1, 0x30
/* 803179F0 00313650  98 1F 00 00 */	stb r0, 0(r31)
/* 803179F4 00313654  38 60 00 00 */	li r3, 0
/* 803179F8 00313658  4B EA F7 79 */	bl _restgpr_26
/* 803179FC 0031365C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80317A00 00313660  7C 08 03 A6 */	mtlr r0
/* 80317A04 00313664  38 21 00 30 */	addi r1, r1, 0x30
/* 80317A08 00313668  4E 80 00 20 */	blr

.global VFiPFPATH_transformInUnicode
VFiPFPATH_transformInUnicode:
/* 80317A0C 0031366C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80317A10 00313670  7C 08 02 A6 */	mflr r0
/* 80317A14 00313674  90 01 00 34 */	stw r0, 0x34(r1)
/* 80317A18 00313678  39 61 00 30 */	addi r11, r1, 0x30
/* 80317A1C 0031367C  4B EA F7 0D */	bl _savegpr_27
/* 80317A20 00313680  3F E0 80 58 */	lis r31, lbl_8057F5C8@ha
/* 80317A24 00313684  7C 7B 1B 78 */	mr r27, r3
/* 80317A28 00313688  7C 9C 23 78 */	mr r28, r4
/* 80317A2C 0031368C  3B A0 00 00 */	li r29, 0
/* 80317A30 00313690  3B FF F5 C8 */	addi r31, r31, lbl_8057F5C8@l
/* 80317A34 00313694  3B C0 00 00 */	li r30, 0
/* 80317A38 00313698  48 00 00 3C */	b lbl_80317A74
lbl_80317A3C:
/* 80317A3C 0031369C  81 9F 00 24 */	lwz r12, 0x24(r31)
/* 80317A40 003136A0  7F 64 DB 78 */	mr r4, r27
/* 80317A44 003136A4  7C 7C F2 14 */	add r3, r28, r30
/* 80317A48 003136A8  7D 89 03 A6 */	mtctr r12
/* 80317A4C 003136AC  4E 80 04 21 */	bctrl
/* 80317A50 003136B0  38 81 00 0A */	addi r4, r1, 0xa
/* 80317A54 003136B4  38 A1 00 08 */	addi r5, r1, 8
/* 80317A58 003136B8  4B FE D7 49 */	bl VFiPFCODE_Divide_Width
/* 80317A5C 003136BC  A8 61 00 08 */	lha r3, 8(r1)
/* 80317A60 003136C0  3B BD 00 01 */	addi r29, r29, 1
/* 80317A64 003136C4  A8 01 00 0A */	lha r0, 0xa(r1)
/* 80317A68 003136C8  54 63 00 3C */	rlwinm r3, r3, 0, 0, 0x1e
/* 80317A6C 003136CC  7F 7B 1A 14 */	add r27, r27, r3
/* 80317A70 003136D0  7F DE 02 14 */	add r30, r30, r0
lbl_80317A74:
/* 80317A74 003136D4  7C 1C F0 AE */	lbzx r0, r28, r30
/* 80317A78 003136D8  7C 00 07 75 */	extsb. r0, r0
/* 80317A7C 003136DC  40 82 FF C0 */	bne lbl_80317A3C
/* 80317A80 003136E0  38 00 00 00 */	li r0, 0
/* 80317A84 003136E4  39 61 00 30 */	addi r11, r1, 0x30
/* 80317A88 003136E8  B0 1B 00 00 */	sth r0, 0(r27)
/* 80317A8C 003136EC  7F A3 EB 78 */	mr r3, r29
/* 80317A90 003136F0  4B EA F6 E5 */	bl _restgpr_27
/* 80317A94 003136F4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80317A98 003136F8  7C 08 03 A6 */	mtlr r0
/* 80317A9C 003136FC  38 21 00 30 */	addi r1, r1, 0x30
/* 80317AA0 00313700  4E 80 00 20 */	blr

.global VFiPFPATH_parseShortName
VFiPFPATH_parseShortName:
/* 80317AA4 00313704  94 21 FF A0 */	stwu r1, -0x60(r1)
/* 80317AA8 00313708  7C 08 02 A6 */	mflr r0
/* 80317AAC 0031370C  90 01 00 64 */	stw r0, 0x64(r1)
/* 80317AB0 00313710  39 61 00 60 */	addi r11, r1, 0x60
/* 80317AB4 00313714  4B EA F6 41 */	bl __save_gpr
/* 80317AB8 00313718  90 81 00 08 */	stw r4, 8(r1)
/* 80317ABC 0031371C  7C 7F 1B 78 */	mr r31, r3
/* 80317AC0 00313720  7C 83 23 78 */	mr r3, r4
/* 80317AC4 00313724  3A A0 00 00 */	li r21, 0
/* 80317AC8 00313728  3A 80 00 00 */	li r20, 0
/* 80317ACC 0031372C  38 80 00 03 */	li r4, 3
/* 80317AD0 00313730  4B FE D8 41 */	bl VFiPFSTR_GetStrPos
/* 80317AD4 00313734  3C 80 80 58 */	lis r4, lbl_8057F5C8@ha
/* 80317AD8 00313738  7C 76 1B 78 */	mr r22, r3
/* 80317ADC 0031373C  38 84 F5 C8 */	addi r4, r4, lbl_8057F5C8@l
/* 80317AE0 00313740  80 04 00 3C */	lwz r0, 0x3c(r4)
/* 80317AE4 00313744  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80317AE8 00313748  40 82 06 88 */	bne lbl_80318170
/* 80317AEC 0031374C  48 00 00 0C */	b lbl_80317AF8
lbl_80317AF0:
/* 80317AF0 00313750  3A 80 00 01 */	li r20, 1
/* 80317AF4 00313754  3A D6 00 01 */	addi r22, r22, 1
lbl_80317AF8:
/* 80317AF8 00313758  88 16 00 00 */	lbz r0, 0(r22)
/* 80317AFC 0031375C  7C 00 07 74 */	extsb r0, r0
/* 80317B00 00313760  2C 00 00 20 */	cmpwi r0, 0x20
/* 80317B04 00313764  41 82 FF EC */	beq lbl_80317AF0
/* 80317B08 00313768  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317B0C 0031376C  41 82 FF E4 */	beq lbl_80317AF0
/* 80317B10 00313770  3A 00 00 00 */	li r16, 0
/* 80317B14 00313774  38 80 00 00 */	li r4, 0
/* 80317B18 00313778  38 A0 00 00 */	li r5, 0
/* 80317B1C 0031377C  48 00 00 24 */	b lbl_80317B40
lbl_80317B20:
/* 80317B20 00313780  7C 60 07 74 */	extsb r0, r3
/* 80317B24 00313784  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317B28 00313788  40 82 00 14 */	bne lbl_80317B3C
/* 80317B2C 0031378C  56 00 04 3F */	clrlwi. r0, r16, 0x10
/* 80317B30 00313790  41 82 00 08 */	beq lbl_80317B38
/* 80317B34 00313794  7E 04 83 78 */	mr r4, r16
lbl_80317B38:
/* 80317B38 00313798  7C B0 2B 78 */	mr r16, r5
lbl_80317B3C:
/* 80317B3C 0031379C  38 A5 00 01 */	addi r5, r5, 1
lbl_80317B40:
/* 80317B40 003137A0  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 80317B44 003137A4  7C 76 00 AE */	lbzx r3, r22, r0
/* 80317B48 003137A8  7C 60 07 75 */	extsb. r0, r3
/* 80317B4C 003137AC  40 82 FF D4 */	bne lbl_80317B20
/* 80317B50 003137B0  56 00 04 3F */	clrlwi. r0, r16, 0x10
/* 80317B54 003137B4  41 82 00 24 */	beq lbl_80317B78
/* 80317B58 003137B8  7C 60 B2 14 */	add r3, r0, r22
/* 80317B5C 003137BC  88 03 00 01 */	lbz r0, 1(r3)
/* 80317B60 003137C0  7C 00 07 75 */	extsb. r0, r0
/* 80317B64 003137C4  40 82 00 14 */	bne lbl_80317B78
/* 80317B68 003137C8  54 80 04 3F */	clrlwi. r0, r4, 0x10
/* 80317B6C 003137CC  41 82 00 08 */	beq lbl_80317B74
/* 80317B70 003137D0  7C 90 23 78 */	mr r16, r4
lbl_80317B74:
/* 80317B74 003137D4  3A 80 00 01 */	li r20, 1
lbl_80317B78:
/* 80317B78 003137D8  39 E0 00 00 */	li r15, 0
/* 80317B7C 003137DC  3A 61 00 10 */	addi r19, r1, 0x10
/* 80317B80 003137E0  3F 60 80 58 */	lis r27, lbl_8057F5C8@ha
/* 80317B84 003137E4  3F A0 80 40 */	lis r29, lbl_803FE220@ha
/* 80317B88 003137E8  B1 E1 00 10 */	sth r15, 0x10(r1)
/* 80317B8C 003137EC  7E 7A 9B 78 */	mr r26, r19
/* 80317B90 003137F0  7E 7C 9B 78 */	mr r28, r19
/* 80317B94 003137F4  3B 7B F5 C8 */	addi r27, r27, lbl_8057F5C8@l
/* 80317B98 003137F8  B1 E1 00 0E */	sth r15, 0xe(r1)
/* 80317B9C 003137FC  3B BD E2 20 */	addi r29, r29, lbl_803FE220@l
/* 80317BA0 00313800  3B 21 00 0E */	addi r25, r1, 0xe
/* 80317BA4 00313804  3B 00 00 00 */	li r24, 0
/* 80317BA8 00313808  3A 40 00 01 */	li r18, 1
/* 80317BAC 0031380C  3A 20 00 01 */	li r17, 1
/* 80317BB0 00313810  39 C0 00 5F */	li r14, 0x5f
/* 80317BB4 00313814  48 00 02 84 */	b lbl_80317E38
lbl_80317BB8:
/* 80317BB8 00313818  A0 01 00 10 */	lhz r0, 0x10(r1)
/* 80317BBC 0031381C  28 00 00 08 */	cmplwi r0, 8
/* 80317BC0 00313820  41 82 00 18 */	beq lbl_80317BD8
/* 80317BC4 00313824  56 03 04 3F */	clrlwi. r3, r16, 0x10
/* 80317BC8 00313828  41 82 00 18 */	beq lbl_80317BE0
/* 80317BCC 0031382C  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 80317BD0 00313830  7C 00 18 40 */	cmplw r0, r3
/* 80317BD4 00313834  40 82 00 0C */	bne lbl_80317BE0
lbl_80317BD8:
/* 80317BD8 00313838  7C 13 C8 40 */	cmplw r19, r25
/* 80317BDC 0031383C  40 82 02 24 */	bne lbl_80317E00
lbl_80317BE0:
/* 80317BE0 00313840  7C 80 07 74 */	extsb r0, r4
/* 80317BE4 00313844  2C 00 00 20 */	cmpwi r0, 0x20
/* 80317BE8 00313848  41 82 02 10 */	beq lbl_80317DF8
/* 80317BEC 0031384C  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317BF0 00313850  41 82 02 08 */	beq lbl_80317DF8
/* 80317BF4 00313854  81 9B 00 2C */	lwz r12, 0x2c(r27)
/* 80317BF8 00313858  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 80317BFC 0031385C  7C 76 02 14 */	add r3, r22, r0
/* 80317C00 00313860  7D 89 03 A6 */	mtctr r12
/* 80317C04 00313864  4E 80 04 21 */	bctrl
/* 80317C08 00313868  2C 03 00 01 */	cmpwi r3, 1
/* 80317C0C 0031386C  7C 77 1B 78 */	mr r23, r3
/* 80317C10 00313870  41 82 01 44 */	beq lbl_80317D54
/* 80317C14 00313874  57 04 04 3E */	clrlwi r4, r24, 0x10
/* 80317C18 00313878  56 00 04 3E */	clrlwi r0, r16, 0x10
/* 80317C1C 0031387C  7C 04 00 40 */	cmplw r4, r0
/* 80317C20 00313880  41 80 00 0C */	blt lbl_80317C2C
/* 80317C24 00313884  2C 00 00 00 */	cmpwi r0, 0
/* 80317C28 00313888  40 82 00 1C */	bne lbl_80317C44
lbl_80317C2C:
/* 80317C2C 0031388C  A0 01 00 10 */	lhz r0, 0x10(r1)
/* 80317C30 00313890  7C 00 1A 14 */	add r0, r0, r3
/* 80317C34 00313894  2C 00 00 08 */	cmpwi r0, 8
/* 80317C38 00313898  40 81 00 0C */	ble lbl_80317C44
/* 80317C3C 0031389C  3A 80 00 01 */	li r20, 1
/* 80317C40 003138A0  48 00 01 F4 */	b lbl_80317E34
lbl_80317C44:
/* 80317C44 003138A4  56 04 04 3F */	clrlwi. r4, r16, 0x10
/* 80317C48 003138A8  41 82 00 28 */	beq lbl_80317C70
/* 80317C4C 003138AC  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 80317C50 003138B0  7C 00 20 40 */	cmplw r0, r4
/* 80317C54 003138B4  40 81 00 1C */	ble lbl_80317C70
/* 80317C58 003138B8  A0 A1 00 0E */	lhz r5, 0xe(r1)
/* 80317C5C 003138BC  7C 05 1A 14 */	add r0, r5, r3
/* 80317C60 003138C0  2C 00 00 03 */	cmpwi r0, 3
/* 80317C64 003138C4  40 81 00 0C */	ble lbl_80317C70
/* 80317C68 003138C8  3A 80 00 01 */	li r20, 1
/* 80317C6C 003138CC  48 00 01 E8 */	b lbl_80317E54
lbl_80317C70:
/* 80317C70 003138D0  7C 13 D0 40 */	cmplw r19, r26
/* 80317C74 003138D4  40 82 00 D0 */	bne lbl_80317D44
/* 80317C78 003138D8  7E 51 93 78 */	mr r17, r18
/* 80317C7C 003138DC  54 72 04 3E */	clrlwi r18, r3, 0x10
/* 80317C80 003138E0  48 00 00 C4 */	b lbl_80317D44
lbl_80317C84:
/* 80317C84 003138E4  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 80317C88 003138E8  81 9B 00 24 */	lwz r12, 0x24(r27)
/* 80317C8C 003138EC  7C B6 00 AE */	lbzx r5, r22, r0
/* 80317C90 003138F0  7C 76 02 14 */	add r3, r22, r0
/* 80317C94 003138F4  88 03 00 01 */	lbz r0, 1(r3)
/* 80317C98 003138F8  38 81 00 0C */	addi r4, r1, 0xc
/* 80317C9C 003138FC  54 A5 40 2E */	slwi r5, r5, 8
/* 80317CA0 00313900  7C 05 02 14 */	add r0, r5, r0
/* 80317CA4 00313904  54 1E 04 3E */	clrlwi r30, r0, 0x10
/* 80317CA8 00313908  7D 89 03 A6 */	mtctr r12
/* 80317CAC 0031390C  4E 80 04 21 */	bctrl
/* 80317CB0 00313910  A0 61 00 0C */	lhz r3, 0xc(r1)
/* 80317CB4 00313914  28 03 FF 41 */	cmplwi r3, 0xff41
/* 80317CB8 00313918  41 80 00 1C */	blt lbl_80317CD4
/* 80317CBC 0031391C  28 03 FF 5A */	cmplwi r3, 0xff5a
/* 80317CC0 00313920  41 81 00 14 */	bgt lbl_80317CD4
/* 80317CC4 00313924  38 03 FF E0 */	addi r0, r3, -32
/* 80317CC8 00313928  38 60 00 01 */	li r3, 1
/* 80317CCC 0031392C  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80317CD0 00313930  48 00 00 08 */	b lbl_80317CD8
lbl_80317CD4:
/* 80317CD4 00313934  38 60 00 00 */	li r3, 0
lbl_80317CD8:
/* 80317CD8 00313938  28 03 00 01 */	cmplwi r3, 1
/* 80317CDC 0031393C  40 82 00 20 */	bne lbl_80317CFC
/* 80317CE0 00313940  81 9B 00 28 */	lwz r12, 0x28(r27)
/* 80317CE4 00313944  38 61 00 0C */	addi r3, r1, 0xc
/* 80317CE8 00313948  7C 64 1B 78 */	mr r4, r3
/* 80317CEC 0031394C  7D 89 03 A6 */	mtctr r12
/* 80317CF0 00313950  4E 80 04 21 */	bctrl
/* 80317CF4 00313954  38 60 00 01 */	li r3, 1
/* 80317CF8 00313958  48 00 00 08 */	b lbl_80317D00
lbl_80317CFC:
/* 80317CFC 0031395C  38 60 00 00 */	li r3, 0
lbl_80317D00:
/* 80317D00 00313960  2C 03 00 00 */	cmpwi r3, 0
/* 80317D04 00313964  41 82 00 0C */	beq lbl_80317D10
/* 80317D08 00313968  A3 C1 00 0C */	lhz r30, 0xc(r1)
/* 80317D0C 0031396C  3A A0 00 01 */	li r21, 1
lbl_80317D10:
/* 80317D10 00313970  55 E0 04 3E */	clrlwi r0, r15, 0x10
/* 80317D14 00313974  38 6F 00 02 */	addi r3, r15, 2
/* 80317D18 00313978  7C 9F 02 14 */	add r4, r31, r0
/* 80317D1C 0031397C  3A F7 FF FE */	addi r23, r23, -2
/* 80317D20 00313980  57 C0 C6 3E */	rlwinm r0, r30, 0x18, 0x18, 0x1f
/* 80317D24 00313984  54 6F 04 3E */	clrlwi r15, r3, 0x10
/* 80317D28 00313988  98 04 00 00 */	stb r0, 0(r4)
/* 80317D2C 0031398C  38 18 00 02 */	addi r0, r24, 2
/* 80317D30 00313990  54 18 04 3E */	clrlwi r24, r0, 0x10
/* 80317D34 00313994  9B C4 00 01 */	stb r30, 1(r4)
/* 80317D38 00313998  A0 73 00 00 */	lhz r3, 0(r19)
/* 80317D3C 0031399C  38 03 00 02 */	addi r0, r3, 2
/* 80317D40 003139A0  B0 13 00 00 */	sth r0, 0(r19)
lbl_80317D44:
/* 80317D44 003139A4  2C 17 00 00 */	cmpwi r23, 0
/* 80317D48 003139A8  40 82 FF 3C */	bne lbl_80317C84
/* 80317D4C 003139AC  3B 18 FF FF */	addi r24, r24, -1
/* 80317D50 003139B0  48 00 00 E4 */	b lbl_80317E34
lbl_80317D54:
/* 80317D54 003139B4  7C 13 E0 40 */	cmplw r19, r28
/* 80317D58 003139B8  40 82 00 0C */	bne lbl_80317D64
/* 80317D5C 003139BC  7E 51 93 78 */	mr r17, r18
/* 80317D60 003139C0  3A 40 00 01 */	li r18, 1
lbl_80317D64:
/* 80317D64 003139C4  80 1B 00 14 */	lwz r0, 0x14(r27)
/* 80317D68 003139C8  54 00 03 DF */	rlwinm. r0, r0, 0, 0xf, 0xf
/* 80317D6C 003139CC  40 82 00 28 */	bne lbl_80317D94
/* 80317D70 003139D0  7C 16 F0 AE */	lbzx r0, r22, r30
/* 80317D74 003139D4  28 00 00 80 */	cmplwi r0, 0x80
/* 80317D78 003139D8  40 80 00 1C */	bge lbl_80317D94
/* 80317D7C 003139DC  28 00 00 20 */	cmplwi r0, 0x20
/* 80317D80 003139E0  41 80 00 58 */	blt lbl_80317DD8
/* 80317D84 003139E4  7C 7D 02 14 */	add r3, r29, r0
/* 80317D88 003139E8  88 03 FF E0 */	lbz r0, -0x20(r3)
/* 80317D8C 003139EC  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 80317D90 003139F0  41 82 00 48 */	beq lbl_80317DD8
lbl_80317D94:
/* 80317D94 003139F4  7C 76 F0 AE */	lbzx r3, r22, r30
/* 80317D98 003139F8  7C 63 07 74 */	extsb r3, r3
/* 80317D9C 003139FC  4B FE D0 F9 */	bl VFipf_toupper
/* 80317DA0 00313A00  55 E0 04 3E */	clrlwi r0, r15, 0x10
/* 80317DA4 00313A04  39 EF 00 01 */	addi r15, r15, 1
/* 80317DA8 00313A08  7C 7F 01 AE */	stbx r3, r31, r0
/* 80317DAC 00313A0C  A0 73 00 00 */	lhz r3, 0(r19)
/* 80317DB0 00313A10  38 03 00 01 */	addi r0, r3, 1
/* 80317DB4 00313A14  B0 13 00 00 */	sth r0, 0(r19)
/* 80317DB8 00313A18  7C 16 F0 AE */	lbzx r0, r22, r30
/* 80317DBC 00313A1C  7C 00 07 74 */	extsb r0, r0
/* 80317DC0 00313A20  2C 00 00 61 */	cmpwi r0, 0x61
/* 80317DC4 00313A24  41 80 00 70 */	blt lbl_80317E34
/* 80317DC8 00313A28  2C 00 00 7A */	cmpwi r0, 0x7a
/* 80317DCC 00313A2C  41 81 00 68 */	bgt lbl_80317E34
/* 80317DD0 00313A30  3A A0 00 01 */	li r21, 1
/* 80317DD4 00313A34  48 00 00 60 */	b lbl_80317E34
lbl_80317DD8:
/* 80317DD8 00313A38  55 E0 04 3E */	clrlwi r0, r15, 0x10
/* 80317DDC 00313A3C  3A 80 00 01 */	li r20, 1
/* 80317DE0 00313A40  7D DF 01 AE */	stbx r14, r31, r0
/* 80317DE4 00313A44  39 EF 00 01 */	addi r15, r15, 1
/* 80317DE8 00313A48  A0 73 00 00 */	lhz r3, 0(r19)
/* 80317DEC 00313A4C  38 03 00 01 */	addi r0, r3, 1
/* 80317DF0 00313A50  B0 13 00 00 */	sth r0, 0(r19)
/* 80317DF4 00313A54  48 00 00 40 */	b lbl_80317E34
lbl_80317DF8:
/* 80317DF8 00313A58  3A 80 00 01 */	li r20, 1
/* 80317DFC 00313A5C  48 00 00 38 */	b lbl_80317E34
lbl_80317E00:
/* 80317E00 00313A60  7C 80 07 75 */	extsb. r0, r4
/* 80317E04 00313A64  7F 33 CB 78 */	mr r19, r25
/* 80317E08 00313A68  41 82 00 10 */	beq lbl_80317E18
/* 80317E0C 00313A6C  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80317E10 00313A70  41 82 00 08 */	beq lbl_80317E18
/* 80317E14 00313A74  3A 80 00 01 */	li r20, 1
lbl_80317E18:
/* 80317E18 00313A78  56 00 04 3F */	clrlwi. r0, r16, 0x10
/* 80317E1C 00313A7C  41 82 00 38 */	beq lbl_80317E54
/* 80317E20 00313A80  55 E3 04 3E */	clrlwi r3, r15, 0x10
/* 80317E24 00313A84  38 00 00 2E */	li r0, 0x2e
/* 80317E28 00313A88  7C 1F 19 AE */	stbx r0, r31, r3
/* 80317E2C 00313A8C  7E 18 83 78 */	mr r24, r16
/* 80317E30 00313A90  39 EF 00 01 */	addi r15, r15, 1
lbl_80317E34:
/* 80317E34 00313A94  3B 18 00 01 */	addi r24, r24, 1
lbl_80317E38:
/* 80317E38 00313A98  A0 A1 00 0E */	lhz r5, 0xe(r1)
/* 80317E3C 00313A9C  28 05 00 03 */	cmplwi r5, 3
/* 80317E40 00313AA0  40 80 00 14 */	bge lbl_80317E54
/* 80317E44 00313AA4  57 1E 04 3E */	clrlwi r30, r24, 0x10
/* 80317E48 00313AA8  7C 96 F0 AE */	lbzx r4, r22, r30
/* 80317E4C 00313AAC  7C 80 07 75 */	extsb. r0, r4
/* 80317E50 00313AB0  40 82 FD 68 */	bne lbl_80317BB8
lbl_80317E54:
/* 80317E54 00313AB4  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 80317E58 00313AB8  28 00 00 03 */	cmplwi r0, 3
/* 80317E5C 00313ABC  40 82 00 18 */	bne lbl_80317E74
/* 80317E60 00313AC0  57 00 04 3E */	clrlwi r0, r24, 0x10
/* 80317E64 00313AC4  7C 16 00 AE */	lbzx r0, r22, r0
/* 80317E68 00313AC8  7C 00 07 75 */	extsb. r0, r0
/* 80317E6C 00313ACC  41 82 00 08 */	beq lbl_80317E74
/* 80317E70 00313AD0  3A 80 00 01 */	li r20, 1
lbl_80317E74:
/* 80317E74 00313AD4  2C 14 00 00 */	cmpwi r20, 0
/* 80317E78 00313AD8  55 E0 04 3E */	clrlwi r0, r15, 0x10
/* 80317E7C 00313ADC  38 60 00 00 */	li r3, 0
/* 80317E80 00313AE0  7C 7F 01 AE */	stbx r3, r31, r0
/* 80317E84 00313AE4  41 82 02 B4 */	beq lbl_80318138
/* 80317E88 00313AE8  A0 81 00 10 */	lhz r4, 0x10(r1)
/* 80317E8C 00313AEC  28 04 00 08 */	cmplwi r4, 8
/* 80317E90 00313AF0  7C 85 23 78 */	mr r5, r4
/* 80317E94 00313AF4  40 82 00 38 */	bne lbl_80317ECC
/* 80317E98 00313AF8  28 12 00 01 */	cmplwi r18, 1
/* 80317E9C 00313AFC  41 82 00 10 */	beq lbl_80317EAC
/* 80317EA0 00313B00  20 12 00 08 */	subfic r0, r18, 8
/* 80317EA4 00313B04  54 05 04 3E */	clrlwi r5, r0, 0x10
/* 80317EA8 00313B08  48 00 00 34 */	b lbl_80317EDC
lbl_80317EAC:
/* 80317EAC 00313B0C  56 23 04 3E */	clrlwi r3, r17, 0x10
/* 80317EB0 00313B10  38 00 00 02 */	li r0, 2
/* 80317EB4 00313B14  28 03 00 01 */	cmplwi r3, 1
/* 80317EB8 00313B18  41 82 00 08 */	beq lbl_80317EC0
/* 80317EBC 00313B1C  38 03 00 01 */	addi r0, r3, 1
lbl_80317EC0:
/* 80317EC0 00313B20  20 00 00 08 */	subfic r0, r0, 8
/* 80317EC4 00313B24  54 05 04 3E */	clrlwi r5, r0, 0x10
/* 80317EC8 00313B28  48 00 00 14 */	b lbl_80317EDC
lbl_80317ECC:
/* 80317ECC 00313B2C  28 04 00 07 */	cmplwi r4, 7
/* 80317ED0 00313B30  40 82 00 0C */	bne lbl_80317EDC
/* 80317ED4 00313B34  7C 11 20 50 */	subf r0, r17, r4
/* 80317ED8 00313B38  54 05 04 3E */	clrlwi r5, r0, 0x10
lbl_80317EDC:
/* 80317EDC 00313B3C  38 05 00 02 */	addi r0, r5, 2
/* 80317EE0 00313B40  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80317EE4 00313B44  7C 00 20 40 */	cmplw r0, r4
/* 80317EE8 00313B48  40 80 00 50 */	bge lbl_80317F38
/* 80317EEC 00313B4C  7C 00 20 50 */	subf r0, r0, r4
/* 80317EF0 00313B50  38 E0 FF FF */	li r7, -1
/* 80317EF4 00313B54  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80317EF8 00313B58  7C DF 02 14 */	add r6, r31, r0
/* 80317EFC 00313B5C  38 C6 FF FF */	addi r6, r6, -1
/* 80317F00 00313B60  48 00 00 20 */	b lbl_80317F20
lbl_80317F04:
/* 80317F04 00313B64  A0 01 00 10 */	lhz r0, 0x10(r1)
/* 80317F08 00313B68  7C E3 07 34 */	extsh r3, r7
/* 80317F0C 00313B6C  38 E7 00 01 */	addi r7, r7, 1
/* 80317F10 00313B70  7C 86 00 AE */	lbzx r4, r6, r0
/* 80317F14 00313B74  7C 1F 02 14 */	add r0, r31, r0
/* 80317F18 00313B78  38 C6 00 01 */	addi r6, r6, 1
/* 80317F1C 00313B7C  7C 83 01 AE */	stbx r4, r3, r0
lbl_80317F20:
/* 80317F20 00313B80  A0 61 00 0E */	lhz r3, 0xe(r1)
/* 80317F24 00313B84  7C E4 07 34 */	extsh r4, r7
/* 80317F28 00313B88  38 03 00 01 */	addi r0, r3, 1
/* 80317F2C 00313B8C  7C 04 00 00 */	cmpw r4, r0
/* 80317F30 00313B90  41 80 FF D4 */	blt lbl_80317F04
/* 80317F34 00313B94  48 00 01 A4 */	b lbl_803180D8
lbl_80317F38:
/* 80317F38 00313B98  40 81 01 A0 */	ble lbl_803180D8
/* 80317F3C 00313B9C  A0 61 00 0E */	lhz r3, 0xe(r1)
/* 80317F40 00313BA0  7C 04 00 50 */	subf r0, r4, r0
/* 80317F44 00313BA4  54 00 04 3E */	clrlwi r0, r0, 0x10
/* 80317F48 00313BA8  38 E3 00 01 */	addi r7, r3, 1
/* 80317F4C 00313BAC  7C E6 07 34 */	extsh r6, r7
/* 80317F50 00313BB0  2C 86 00 00 */	cmpwi cr1, r6, 0
/* 80317F54 00313BB4  41 84 01 84 */	blt cr1, lbl_803180D8
/* 80317F58 00313BB8  39 06 00 01 */	addi r8, r6, 1
/* 80317F5C 00313BBC  7D 03 07 34 */	extsh r3, r8
/* 80317F60 00313BC0  2C 03 00 08 */	cmpwi r3, 8
/* 80317F64 00313BC4  40 81 01 3C */	ble lbl_803180A0
/* 80317F68 00313BC8  38 80 00 00 */	li r4, 0
/* 80317F6C 00313BCC  38 60 00 00 */	li r3, 0
/* 80317F70 00313BD0  41 84 00 10 */	blt cr1, lbl_80317F80
/* 80317F74 00313BD4  2C 06 80 01 */	cmpwi r6, -32767
/* 80317F78 00313BD8  41 80 00 08 */	blt lbl_80317F80
/* 80317F7C 00313BDC  38 60 00 01 */	li r3, 1
lbl_80317F80:
/* 80317F80 00313BE0  2C 03 00 00 */	cmpwi r3, 0
/* 80317F84 00313BE4  41 82 00 34 */	beq lbl_80317FB8
/* 80317F88 00313BE8  7C E3 07 34 */	extsh r3, r7
/* 80317F8C 00313BEC  38 E0 00 01 */	li r7, 1
/* 80317F90 00313BF0  54 63 00 20 */	rlwinm r3, r3, 0, 0, 0x10
/* 80317F94 00313BF4  7C 63 07 35 */	extsh. r3, r3
/* 80317F98 00313BF8  40 82 00 14 */	bne lbl_80317FAC
/* 80317F9C 00313BFC  55 03 00 20 */	rlwinm r3, r8, 0, 0, 0x10
/* 80317FA0 00313C00  7C 63 07 35 */	extsh. r3, r3
/* 80317FA4 00313C04  41 82 00 08 */	beq lbl_80317FAC
/* 80317FA8 00313C08  38 E0 00 00 */	li r7, 0
lbl_80317FAC:
/* 80317FAC 00313C0C  2C 07 00 00 */	cmpwi r7, 0
/* 80317FB0 00313C10  41 82 00 08 */	beq lbl_80317FB8
/* 80317FB4 00313C14  38 80 00 01 */	li r4, 1
lbl_80317FB8:
/* 80317FB8 00313C18  2C 04 00 00 */	cmpwi r4, 0
/* 80317FBC 00313C1C  41 82 00 E4 */	beq lbl_803180A0
/* 80317FC0 00313C20  7C 9F 02 14 */	add r4, r31, r0
/* 80317FC4 00313C24  54 C3 E8 FE */	srwi r3, r6, 3
/* 80317FC8 00313C28  7C 86 22 14 */	add r4, r6, r4
/* 80317FCC 00313C2C  7C 69 03 A6 */	mtctr r3
/* 80317FD0 00313C30  2C 06 00 08 */	cmpwi r6, 8
/* 80317FD4 00313C34  41 80 00 CC */	blt lbl_803180A0
lbl_80317FD8:
/* 80317FD8 00313C38  A1 01 00 10 */	lhz r8, 0x10(r1)
/* 80317FDC 00313C3C  7C C3 07 34 */	extsh r3, r6
/* 80317FE0 00313C40  38 C6 FF F8 */	addi r6, r6, -8
/* 80317FE4 00313C44  7C FF 42 14 */	add r7, r31, r8
/* 80317FE8 00313C48  7C E3 38 AE */	lbzx r7, r3, r7
/* 80317FEC 00313C4C  7C E4 41 AE */	stbx r7, r4, r8
/* 80317FF0 00313C50  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 80317FF4 00313C54  7D 1F 3A 14 */	add r8, r31, r7
/* 80317FF8 00313C58  7C E4 3A 14 */	add r7, r4, r7
/* 80317FFC 00313C5C  7D 03 42 14 */	add r8, r3, r8
/* 80318000 00313C60  89 08 FF FF */	lbz r8, -1(r8)
/* 80318004 00313C64  99 07 FF FF */	stb r8, -1(r7)
/* 80318008 00313C68  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 8031800C 00313C6C  7D 1F 3A 14 */	add r8, r31, r7
/* 80318010 00313C70  7C E4 3A 14 */	add r7, r4, r7
/* 80318014 00313C74  7D 03 42 14 */	add r8, r3, r8
/* 80318018 00313C78  89 08 FF FE */	lbz r8, -2(r8)
/* 8031801C 00313C7C  99 07 FF FE */	stb r8, -2(r7)
/* 80318020 00313C80  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 80318024 00313C84  7D 1F 3A 14 */	add r8, r31, r7
/* 80318028 00313C88  7C E4 3A 14 */	add r7, r4, r7
/* 8031802C 00313C8C  7D 03 42 14 */	add r8, r3, r8
/* 80318030 00313C90  89 08 FF FD */	lbz r8, -3(r8)
/* 80318034 00313C94  99 07 FF FD */	stb r8, -3(r7)
/* 80318038 00313C98  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 8031803C 00313C9C  7D 1F 3A 14 */	add r8, r31, r7
/* 80318040 00313CA0  7C E4 3A 14 */	add r7, r4, r7
/* 80318044 00313CA4  7D 03 42 14 */	add r8, r3, r8
/* 80318048 00313CA8  89 08 FF FC */	lbz r8, -4(r8)
/* 8031804C 00313CAC  99 07 FF FC */	stb r8, -4(r7)
/* 80318050 00313CB0  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 80318054 00313CB4  7D 1F 3A 14 */	add r8, r31, r7
/* 80318058 00313CB8  7C E4 3A 14 */	add r7, r4, r7
/* 8031805C 00313CBC  7D 03 42 14 */	add r8, r3, r8
/* 80318060 00313CC0  89 08 FF FB */	lbz r8, -5(r8)
/* 80318064 00313CC4  99 07 FF FB */	stb r8, -5(r7)
/* 80318068 00313CC8  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 8031806C 00313CCC  7D 1F 3A 14 */	add r8, r31, r7
/* 80318070 00313CD0  7C E4 3A 14 */	add r7, r4, r7
/* 80318074 00313CD4  7D 03 42 14 */	add r8, r3, r8
/* 80318078 00313CD8  89 08 FF FA */	lbz r8, -6(r8)
/* 8031807C 00313CDC  99 07 FF FA */	stb r8, -6(r7)
/* 80318080 00313CE0  A0 E1 00 10 */	lhz r7, 0x10(r1)
/* 80318084 00313CE4  7D 1F 3A 14 */	add r8, r31, r7
/* 80318088 00313CE8  7C E4 3A 14 */	add r7, r4, r7
/* 8031808C 00313CEC  7C 63 42 14 */	add r3, r3, r8
/* 80318090 00313CF0  38 84 FF F8 */	addi r4, r4, -8
/* 80318094 00313CF4  88 63 FF F9 */	lbz r3, -7(r3)
/* 80318098 00313CF8  98 67 FF F9 */	stb r3, -7(r7)
/* 8031809C 00313CFC  42 00 FF 3C */	bdnz lbl_80317FD8
lbl_803180A0:
/* 803180A0 00313D00  7C C4 07 35 */	extsh. r4, r6
/* 803180A4 00313D04  7C 7F 02 14 */	add r3, r31, r0
/* 803180A8 00313D08  38 04 00 01 */	addi r0, r4, 1
/* 803180AC 00313D0C  7C E4 1A 14 */	add r7, r4, r3
/* 803180B0 00313D10  7C 09 03 A6 */	mtctr r0
/* 803180B4 00313D14  41 80 00 24 */	blt lbl_803180D8
lbl_803180B8:
/* 803180B8 00313D18  A0 81 00 10 */	lhz r4, 0x10(r1)
/* 803180BC 00313D1C  7C C3 07 34 */	extsh r3, r6
/* 803180C0 00313D20  38 C6 FF FF */	addi r6, r6, -1
/* 803180C4 00313D24  7C 1F 22 14 */	add r0, r31, r4
/* 803180C8 00313D28  7C 03 00 AE */	lbzx r0, r3, r0
/* 803180CC 00313D2C  7C 07 21 AE */	stbx r0, r7, r4
/* 803180D0 00313D30  38 E7 FF FF */	addi r7, r7, -1
/* 803180D4 00313D34  42 00 FF E4 */	bdnz lbl_803180B8
lbl_803180D8:
/* 803180D8 00313D38  A0 01 00 10 */	lhz r0, 0x10(r1)
/* 803180DC 00313D3C  2C 00 00 00 */	cmpwi r0, 0
/* 803180E0 00313D40  41 82 00 54 */	beq lbl_80318134
/* 803180E4 00313D44  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 803180E8 00313D48  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 803180EC 00313D4C  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 803180F0 00313D50  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 803180F4 00313D54  28 00 00 02 */	cmplwi r0, 2
/* 803180F8 00313D58  41 82 00 24 */	beq lbl_8031811C
/* 803180FC 00313D5C  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 80318100 00313D60  38 60 00 7E */	li r3, 0x7e
/* 80318104 00313D64  7C 7F 01 AE */	stbx r3, r31, r0
/* 80318108 00313D68  38 A5 00 01 */	addi r5, r5, 1
/* 8031810C 00313D6C  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 80318110 00313D70  38 60 00 31 */	li r3, 0x31
/* 80318114 00313D74  7C 7F 01 AE */	stbx r3, r31, r0
/* 80318118 00313D78  48 00 00 1C */	b lbl_80318134
lbl_8031811C:
/* 8031811C 00313D7C  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 80318120 00313D80  38 60 00 5F */	li r3, 0x5f
/* 80318124 00313D84  7C 7F 01 AE */	stbx r3, r31, r0
/* 80318128 00313D88  38 A5 00 01 */	addi r5, r5, 1
/* 8031812C 00313D8C  54 A0 04 3E */	clrlwi r0, r5, 0x10
/* 80318130 00313D90  7C 7F 01 AE */	stbx r3, r31, r0
lbl_80318134:
/* 80318134 00313D94  3A A0 00 01 */	li r21, 1
lbl_80318138:
/* 80318138 00313D98  80 61 00 08 */	lwz r3, 8(r1)
/* 8031813C 00313D9C  4B FE D1 A5 */	bl VFiPFSTR_GetCodeMode
/* 80318140 00313DA0  28 03 00 02 */	cmplwi r3, 2
/* 80318144 00313DA4  40 82 00 8C */	bne lbl_803181D0
/* 80318148 00313DA8  3A A0 00 01 */	li r21, 1
/* 8031814C 00313DAC  48 00 00 84 */	b lbl_803181D0
/* 80318150 00313DB0  48 00 00 20 */	b lbl_80318170
lbl_80318154:
/* 80318154 00313DB4  7C 60 07 74 */	extsb r0, r3
/* 80318158 00313DB8  2C 00 00 2E */	cmpwi r0, 0x2e
/* 8031815C 00313DBC  41 82 00 10 */	beq lbl_8031816C
/* 80318160 00313DC0  2C 00 00 20 */	cmpwi r0, 0x20
/* 80318164 00313DC4  41 82 00 08 */	beq lbl_8031816C
/* 80318168 00313DC8  3A 80 00 01 */	li r20, 1
lbl_8031816C:
/* 8031816C 00313DCC  3A D6 00 01 */	addi r22, r22, 1
lbl_80318170:
/* 80318170 00313DD0  88 76 00 00 */	lbz r3, 0(r22)
/* 80318174 00313DD4  7C 60 07 75 */	extsb. r0, r3
/* 80318178 00313DD8  41 82 00 0C */	beq lbl_80318184
/* 8031817C 00313DDC  2C 14 00 00 */	cmpwi r20, 0
/* 80318180 00313DE0  41 82 FF D4 */	beq lbl_80318154
lbl_80318184:
/* 80318184 00313DE4  2C 14 00 00 */	cmpwi r20, 0
/* 80318188 00313DE8  41 82 00 3C */	beq lbl_803181C4
/* 8031818C 00313DEC  38 60 00 30 */	li r3, 0x30
/* 80318190 00313DF0  38 A0 00 01 */	li r5, 1
/* 80318194 00313DF4  38 80 00 02 */	li r4, 2
/* 80318198 00313DF8  38 00 00 00 */	li r0, 0
/* 8031819C 00313DFC  98 BF 00 00 */	stb r5, 0(r31)
/* 803181A0 00313E00  98 9F 00 01 */	stb r4, 1(r31)
/* 803181A4 00313E04  98 7F 00 02 */	stb r3, 2(r31)
/* 803181A8 00313E08  98 7F 00 03 */	stb r3, 3(r31)
/* 803181AC 00313E0C  98 7F 00 04 */	stb r3, 4(r31)
/* 803181B0 00313E10  98 7F 00 05 */	stb r3, 5(r31)
/* 803181B4 00313E14  98 7F 00 06 */	stb r3, 6(r31)
/* 803181B8 00313E18  98 7F 00 07 */	stb r3, 7(r31)
/* 803181BC 00313E1C  98 1F 00 08 */	stb r0, 8(r31)
/* 803181C0 00313E20  48 00 00 0C */	b lbl_803181CC
lbl_803181C4:
/* 803181C4 00313E24  38 00 00 00 */	li r0, 0
/* 803181C8 00313E28  98 1F 00 00 */	stb r0, 0(r31)
lbl_803181CC:
/* 803181CC 00313E2C  3A A0 00 01 */	li r21, 1
lbl_803181D0:
/* 803181D0 00313E30  39 61 00 60 */	addi r11, r1, 0x60
/* 803181D4 00313E34  7E A3 AB 78 */	mr r3, r21
/* 803181D8 00313E38  4B EA EF 69 */	bl __restore_gpr
/* 803181DC 00313E3C  80 01 00 64 */	lwz r0, 0x64(r1)
/* 803181E0 00313E40  7C 08 03 A6 */	mtlr r0
/* 803181E4 00313E44  38 21 00 60 */	addi r1, r1, 0x60
/* 803181E8 00313E48  4E 80 00 20 */	blr

.global VFiPFPATH_parseShortNameNumeric
VFiPFPATH_parseShortNameNumeric:
/* 803181EC 00313E4C  2C 04 00 00 */	cmpwi r4, 0
/* 803181F0 00313E50  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803181F4 00313E54  40 82 00 0C */	bne lbl_80318200
/* 803181F8 00313E58  38 60 00 00 */	li r3, 0
/* 803181FC 00313E5C  48 00 01 C4 */	b lbl_803183C0
lbl_80318200:
/* 80318200 00313E60  38 C3 00 01 */	addi r6, r3, 1
/* 80318204 00313E64  38 A0 00 01 */	li r5, 1
/* 80318208 00313E68  48 00 00 0C */	b lbl_80318214
lbl_8031820C:
/* 8031820C 00313E6C  38 A5 00 01 */	addi r5, r5, 1
/* 80318210 00313E70  38 C6 00 01 */	addi r6, r6, 1
lbl_80318214:
/* 80318214 00313E74  88 06 00 00 */	lbz r0, 0(r6)
/* 80318218 00313E78  2C 00 00 7E */	cmpwi r0, 0x7e
/* 8031821C 00313E7C  40 82 FF F0 */	bne lbl_8031820C
/* 80318220 00313E80  38 C5 00 01 */	addi r6, r5, 1
/* 80318224 00313E84  7C E3 32 14 */	add r7, r3, r6
/* 80318228 00313E88  48 00 00 0C */	b lbl_80318234
lbl_8031822C:
/* 8031822C 00313E8C  38 C6 00 01 */	addi r6, r6, 1
/* 80318230 00313E90  38 E7 00 01 */	addi r7, r7, 1
lbl_80318234:
/* 80318234 00313E94  89 07 00 00 */	lbz r8, 0(r7)
/* 80318238 00313E98  7D 00 07 74 */	extsb r0, r8
/* 8031823C 00313E9C  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80318240 00313EA0  41 82 00 0C */	beq lbl_8031824C
/* 80318244 00313EA4  2C 00 00 00 */	cmpwi r0, 0
/* 80318248 00313EA8  40 82 FF E4 */	bne lbl_8031822C
lbl_8031824C:
/* 8031824C 00313EAC  7D 00 07 74 */	extsb r0, r8
/* 80318250 00313EB0  39 66 00 01 */	addi r11, r6, 1
/* 80318254 00313EB4  2C 00 00 2E */	cmpwi r0, 0x2e
/* 80318258 00313EB8  40 82 00 34 */	bne lbl_8031828C
/* 8031825C 00313EBC  7C 03 58 AE */	lbzx r0, r3, r11
/* 80318260 00313EC0  7C 00 07 75 */	extsb. r0, r0
/* 80318264 00313EC4  41 82 00 28 */	beq lbl_8031828C
/* 80318268 00313EC8  39 8B 00 01 */	addi r12, r11, 1
/* 8031826C 00313ECC  7C E3 62 14 */	add r7, r3, r12
/* 80318270 00313ED0  48 00 00 0C */	b lbl_8031827C
lbl_80318274:
/* 80318274 00313ED4  39 8C 00 01 */	addi r12, r12, 1
/* 80318278 00313ED8  38 E7 00 01 */	addi r7, r7, 1
lbl_8031827C:
/* 8031827C 00313EDC  88 07 00 00 */	lbz r0, 0(r7)
/* 80318280 00313EE0  7C 00 07 75 */	extsb. r0, r0
/* 80318284 00313EE4  40 82 FF F0 */	bne lbl_80318274
/* 80318288 00313EE8  48 00 00 08 */	b lbl_80318290
lbl_8031828C:
/* 8031828C 00313EEC  7D 6C 5B 78 */	mr r12, r11
lbl_80318290:
/* 80318290 00313EF0  3C E0 CC CD */	lis r7, 0xCCCCCCCD@ha
/* 80318294 00313EF4  39 21 00 08 */	addi r9, r1, 8
/* 80318298 00313EF8  39 07 CC CD */	addi r8, r7, 0xCCCCCCCD@l
/* 8031829C 00313EFC  39 40 00 00 */	li r10, 0
/* 803182A0 00313F00  48 00 00 2C */	b lbl_803182CC
lbl_803182A4:
/* 803182A4 00313F04  7C E8 20 16 */	mulhwu r7, r8, r4
/* 803182A8 00313F08  39 4A 00 01 */	addi r10, r10, 1
/* 803182AC 00313F0C  7C E0 3B 78 */	mr r0, r7
/* 803182B0 00313F10  54 E7 E8 FE */	srwi r7, r7, 3
/* 803182B4 00313F14  1C E7 00 0A */	mulli r7, r7, 0xa
/* 803182B8 00313F18  7C E7 20 50 */	subf r7, r7, r4
/* 803182BC 00313F1C  54 04 E8 FE */	srwi r4, r0, 3
/* 803182C0 00313F20  38 07 00 30 */	addi r0, r7, 0x30
/* 803182C4 00313F24  98 09 00 00 */	stb r0, 0(r9)
/* 803182C8 00313F28  39 29 00 01 */	addi r9, r9, 1
lbl_803182CC:
/* 803182CC 00313F2C  2C 04 00 00 */	cmpwi r4, 0
/* 803182D0 00313F30  40 82 FF D4 */	bne lbl_803182A4
/* 803182D4 00313F34  7D 05 52 14 */	add r8, r5, r10
/* 803182D8 00313F38  7C 08 58 40 */	cmplw r8, r11
/* 803182DC 00313F3C  41 80 00 44 */	blt lbl_80318320
/* 803182E0 00313F40  39 28 00 01 */	addi r9, r8, 1
/* 803182E4 00313F44  28 09 00 08 */	cmplwi r9, 8
/* 803182E8 00313F48  40 81 00 08 */	ble lbl_803182F0
/* 803182EC 00313F4C  39 20 00 08 */	li r9, 8
lbl_803182F0:
/* 803182F0 00313F50  7C 03 60 AE */	lbzx r0, r3, r12
/* 803182F4 00313F54  7C E3 4A 14 */	add r7, r3, r9
/* 803182F8 00313F58  7C 83 5A 14 */	add r4, r3, r11
/* 803182FC 00313F5C  98 07 00 04 */	stb r0, 4(r7)
/* 80318300 00313F60  88 04 00 02 */	lbz r0, 2(r4)
/* 80318304 00313F64  98 07 00 03 */	stb r0, 3(r7)
/* 80318308 00313F68  88 04 00 01 */	lbz r0, 1(r4)
/* 8031830C 00313F6C  98 07 00 02 */	stb r0, 2(r7)
/* 80318310 00313F70  7C 03 58 AE */	lbzx r0, r3, r11
/* 80318314 00313F74  98 07 00 01 */	stb r0, 1(r7)
/* 80318318 00313F78  7C 03 30 AE */	lbzx r0, r3, r6
/* 8031831C 00313F7C  7C 03 49 AE */	stbx r0, r3, r9
lbl_80318320:
/* 80318320 00313F80  28 08 00 08 */	cmplwi r8, 8
/* 80318324 00313F84  41 80 00 08 */	blt lbl_8031832C
/* 80318328 00313F88  20 AA 00 07 */	subfic r5, r10, 7
lbl_8031832C:
/* 8031832C 00313F8C  38 00 00 7E */	li r0, 0x7e
/* 80318330 00313F90  2C 0A 00 00 */	cmpwi r10, 0
/* 80318334 00313F94  7C 03 29 AE */	stbx r0, r3, r5
/* 80318338 00313F98  38 81 00 08 */	addi r4, r1, 8
/* 8031833C 00313F9C  38 A5 00 01 */	addi r5, r5, 1
/* 80318340 00313FA0  7C 84 52 14 */	add r4, r4, r10
/* 80318344 00313FA4  7C 63 2A 14 */	add r3, r3, r5
/* 80318348 00313FA8  41 82 00 74 */	beq lbl_803183BC
/* 8031834C 00313FAC  55 40 E8 FF */	rlwinm. r0, r10, 0x1d, 3, 0x1f
/* 80318350 00313FB0  7C 09 03 A6 */	mtctr r0
/* 80318354 00313FB4  41 82 00 54 */	beq lbl_803183A8
lbl_80318358:
/* 80318358 00313FB8  88 04 FF FF */	lbz r0, -1(r4)
/* 8031835C 00313FBC  98 03 00 00 */	stb r0, 0(r3)
/* 80318360 00313FC0  88 04 FF FE */	lbz r0, -2(r4)
/* 80318364 00313FC4  98 03 00 01 */	stb r0, 1(r3)
/* 80318368 00313FC8  88 04 FF FD */	lbz r0, -3(r4)
/* 8031836C 00313FCC  98 03 00 02 */	stb r0, 2(r3)
/* 80318370 00313FD0  88 04 FF FC */	lbz r0, -4(r4)
/* 80318374 00313FD4  98 03 00 03 */	stb r0, 3(r3)
/* 80318378 00313FD8  88 04 FF FB */	lbz r0, -5(r4)
/* 8031837C 00313FDC  98 03 00 04 */	stb r0, 4(r3)
/* 80318380 00313FE0  88 04 FF FA */	lbz r0, -6(r4)
/* 80318384 00313FE4  98 03 00 05 */	stb r0, 5(r3)
/* 80318388 00313FE8  88 04 FF F9 */	lbz r0, -7(r4)
/* 8031838C 00313FEC  98 03 00 06 */	stb r0, 6(r3)
/* 80318390 00313FF0  8C 04 FF F8 */	lbzu r0, -8(r4)
/* 80318394 00313FF4  98 03 00 07 */	stb r0, 7(r3)
/* 80318398 00313FF8  38 63 00 08 */	addi r3, r3, 8
/* 8031839C 00313FFC  42 00 FF BC */	bdnz lbl_80318358
/* 803183A0 00314000  71 4A 00 07 */	andi. r10, r10, 7
/* 803183A4 00314004  41 82 00 18 */	beq lbl_803183BC
lbl_803183A8:
/* 803183A8 00314008  7D 49 03 A6 */	mtctr r10
lbl_803183AC:
/* 803183AC 0031400C  8C 04 FF FF */	lbzu r0, -1(r4)
/* 803183B0 00314010  98 03 00 00 */	stb r0, 0(r3)
/* 803183B4 00314014  38 63 00 01 */	addi r3, r3, 1
/* 803183B8 00314018  42 00 FF F4 */	bdnz lbl_803183AC
lbl_803183BC:
/* 803183BC 0031401C  38 60 00 00 */	li r3, 0
lbl_803183C0:
/* 803183C0 00314020  38 21 00 10 */	addi r1, r1, 0x10
/* 803183C4 00314024  4E 80 00 20 */	blr

.global VFiPFPATH_CheckExtShortNameSignature
VFiPFPATH_CheckExtShortNameSignature:
/* 803183C8 00314028  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 803183CC 0031402C  7C 08 02 A6 */	mflr r0
/* 803183D0 00314030  2C 03 00 00 */	cmpwi r3, 0
/* 803183D4 00314034  90 01 00 24 */	stw r0, 0x24(r1)
/* 803183D8 00314038  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 803183DC 0031403C  3B E0 00 00 */	li r31, 0
/* 803183E0 00314040  88 8D 8D 1C */	lbz r4, lbl_8063DFDC-_SDA_BASE_(r13)
/* 803183E4 00314044  88 0D 8D 1D */	lbz r0, lbl_8063DFDD-_SDA_BASE_(r13)
/* 803183E8 00314048  98 81 00 08 */	stb r4, 8(r1)
/* 803183EC 0031404C  98 01 00 09 */	stb r0, 9(r1)
/* 803183F0 00314050  40 82 00 0C */	bne lbl_803183FC
/* 803183F4 00314054  38 60 00 0A */	li r3, 0xa
/* 803183F8 00314058  48 00 00 28 */	b lbl_80318420
lbl_803183FC:
/* 803183FC 0031405C  38 81 00 08 */	addi r4, r1, 8
/* 80318400 00314060  38 A0 00 01 */	li r5, 1
/* 80318404 00314064  38 C0 00 00 */	li r6, 0
/* 80318408 00314068  38 E0 00 02 */	li r7, 2
/* 8031840C 0031406C  4B FE D2 55 */	bl VFiPFSTR_StrNCmp
/* 80318410 00314070  2C 03 00 00 */	cmpwi r3, 0
/* 80318414 00314074  40 82 00 08 */	bne lbl_8031841C
/* 80318418 00314078  3B E0 00 01 */	li r31, 1
lbl_8031841C:
/* 8031841C 0031407C  7F E3 FB 78 */	mr r3, r31
lbl_80318420:
/* 80318420 00314080  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80318424 00314084  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80318428 00314088  7C 08 03 A6 */	mtlr r0
/* 8031842C 0031408C  38 21 00 20 */	addi r1, r1, 0x20
/* 80318430 00314090  4E 80 00 20 */	blr

.global VFiPFPATH_CheckExtShortName
VFiPFPATH_CheckExtShortName:
/* 80318434 00314094  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80318438 00314098  7C 08 02 A6 */	mflr r0
/* 8031843C 0031409C  90 01 00 34 */	stw r0, 0x34(r1)
/* 80318440 003140A0  39 61 00 30 */	addi r11, r1, 0x30
/* 80318444 003140A4  4B EA EC D9 */	bl _savegpr_24
/* 80318448 003140A8  88 C2 A4 A4 */	lbz r6, lbl_80642AA4-_SDA2_BASE_(r2)
/* 8031844C 003140AC  2C 03 00 00 */	cmpwi r3, 0
/* 80318450 003140B0  88 02 A4 A5 */	lbz r0, lbl_80642AA5-_SDA2_BASE_(r2)
/* 80318454 003140B4  7C 7E 1B 78 */	mr r30, r3
/* 80318458 003140B8  98 C1 00 08 */	stb r6, 8(r1)
/* 8031845C 003140BC  7C 9F 23 78 */	mr r31, r4
/* 80318460 003140C0  7C B8 2B 78 */	mr r24, r5
/* 80318464 003140C4  3B 60 00 00 */	li r27, 0
/* 80318468 003140C8  98 01 00 09 */	stb r0, 9(r1)
/* 8031846C 003140CC  3B 20 00 00 */	li r25, 0
/* 80318470 003140D0  40 82 00 0C */	bne lbl_8031847C
/* 80318474 003140D4  38 60 00 0A */	li r3, 0xa
/* 80318478 003140D8  48 00 02 C8 */	b lbl_80318740
lbl_8031847C:
/* 8031847C 003140DC  7F E5 FB 78 */	mr r5, r31
/* 80318480 003140E0  38 81 00 08 */	addi r4, r1, 8
/* 80318484 003140E4  38 C0 00 00 */	li r6, 0
/* 80318488 003140E8  38 E0 00 02 */	li r7, 2
/* 8031848C 003140EC  4B FE D1 D5 */	bl VFiPFSTR_StrNCmp
/* 80318490 003140F0  2C 03 00 00 */	cmpwi r3, 0
/* 80318494 003140F4  41 82 00 84 */	beq lbl_80318518
/* 80318498 003140F8  7F C3 F3 78 */	mr r3, r30
/* 8031849C 003140FC  7F E5 FB 78 */	mr r5, r31
/* 803184A0 00314100  38 8D 8D 18 */	addi r4, r13, lbl_8063DFD8-_SDA_BASE_
/* 803184A4 00314104  38 C0 00 00 */	li r6, 0
/* 803184A8 00314108  38 E0 00 01 */	li r7, 1
/* 803184AC 0031410C  4B FE D1 B5 */	bl VFiPFSTR_StrNCmp
/* 803184B0 00314110  2C 03 00 00 */	cmpwi r3, 0
/* 803184B4 00314114  40 82 00 44 */	bne lbl_803184F8
/* 803184B8 00314118  7F C3 F3 78 */	mr r3, r30
/* 803184BC 0031411C  7F E5 FB 78 */	mr r5, r31
/* 803184C0 00314120  38 8D 8D 18 */	addi r4, r13, lbl_8063DFD8-_SDA_BASE_
/* 803184C4 00314124  38 C0 00 01 */	li r6, 1
/* 803184C8 00314128  38 E0 00 01 */	li r7, 1
/* 803184CC 0031412C  4B FE D1 95 */	bl VFiPFSTR_StrNCmp
/* 803184D0 00314130  2C 03 00 00 */	cmpwi r3, 0
/* 803184D4 00314134  41 82 00 44 */	beq lbl_80318518
/* 803184D8 00314138  7F C3 F3 78 */	mr r3, r30
/* 803184DC 0031413C  7F E5 FB 78 */	mr r5, r31
/* 803184E0 00314140  38 8D 8D 14 */	addi r4, r13, lbl_8063DFD4-_SDA_BASE_
/* 803184E4 00314144  38 C0 00 00 */	li r6, 0
/* 803184E8 00314148  38 E0 00 01 */	li r7, 1
/* 803184EC 0031414C  4B FE D1 75 */	bl VFiPFSTR_StrNCmp
/* 803184F0 00314150  2C 03 00 00 */	cmpwi r3, 0
/* 803184F4 00314154  41 82 00 24 */	beq lbl_80318518
lbl_803184F8:
/* 803184F8 00314158  7F C3 F3 78 */	mr r3, r30
/* 803184FC 0031415C  7F E5 FB 78 */	mr r5, r31
/* 80318500 00314160  38 8D 8D 14 */	addi r4, r13, lbl_8063DFD4-_SDA_BASE_
/* 80318504 00314164  38 C0 00 00 */	li r6, 0
/* 80318508 00314168  38 E0 00 01 */	li r7, 1
/* 8031850C 0031416C  4B FE D1 55 */	bl VFiPFSTR_StrNCmp
/* 80318510 00314170  2C 03 00 00 */	cmpwi r3, 0
/* 80318514 00314174  40 82 02 28 */	bne lbl_8031873C
lbl_80318518:
/* 80318518 00314178  3B 40 00 02 */	li r26, 2
/* 8031851C 0031417C  3B 80 00 04 */	li r28, 4
/* 80318520 00314180  48 00 00 DC */	b lbl_803185FC
lbl_80318524:
/* 80318524 00314184  7F C3 F3 78 */	mr r3, r30
/* 80318528 00314188  4B FE CD B9 */	bl VFiPFSTR_GetCodeMode
/* 8031852C 0031418C  28 03 00 01 */	cmplwi r3, 1
/* 80318530 00314190  40 82 00 28 */	bne lbl_80318558
/* 80318534 00314194  7F C3 F3 78 */	mr r3, r30
/* 80318538 00314198  7F E4 FB 78 */	mr r4, r31
/* 8031853C 0031419C  4B FE CD D5 */	bl VFiPFSTR_GetStrPos
/* 80318540 003141A0  7F 40 07 34 */	extsh r0, r26
/* 80318544 003141A4  7C 03 00 AE */	lbzx r0, r3, r0
/* 80318548 003141A8  7C 03 07 74 */	extsb r3, r0
/* 8031854C 003141AC  38 03 FF D0 */	addi r0, r3, -48
/* 80318550 003141B0  7C 00 07 34 */	extsh r0, r0
/* 80318554 003141B4  48 00 00 1C */	b lbl_80318570
lbl_80318558:
/* 80318558 003141B8  7F C3 F3 78 */	mr r3, r30
/* 8031855C 003141BC  7F E4 FB 78 */	mr r4, r31
/* 80318560 003141C0  4B FE CD B1 */	bl VFiPFSTR_GetStrPos
/* 80318564 003141C4  7C 63 E2 2E */	lhzx r3, r3, r28
/* 80318568 003141C8  38 03 FF D0 */	addi r0, r3, -48
/* 8031856C 003141CC  7C 00 07 34 */	extsh r0, r0
lbl_80318570:
/* 80318570 003141D0  2C 00 00 00 */	cmpwi r0, 0
/* 80318574 003141D4  41 80 00 0C */	blt lbl_80318580
/* 80318578 003141D8  2C 00 00 09 */	cmpwi r0, 9
/* 8031857C 003141DC  40 81 00 78 */	ble lbl_803185F4
lbl_80318580:
/* 80318580 003141E0  2C 18 00 00 */	cmpwi r24, 0
/* 80318584 003141E4  41 82 01 10 */	beq lbl_80318694
/* 80318588 003141E8  7F C3 F3 78 */	mr r3, r30
/* 8031858C 003141EC  7F E5 FB 78 */	mr r5, r31
/* 80318590 003141F0  7F 46 07 34 */	extsh r6, r26
/* 80318594 003141F4  38 8D 8D 14 */	addi r4, r13, lbl_8063DFD4-_SDA_BASE_
/* 80318598 003141F8  38 E0 00 01 */	li r7, 1
/* 8031859C 003141FC  4B FE D0 C5 */	bl VFiPFSTR_StrNCmp
/* 803185A0 00314200  2C 03 00 00 */	cmpwi r3, 0
/* 803185A4 00314204  41 82 00 24 */	beq lbl_803185C8
/* 803185A8 00314208  7F C3 F3 78 */	mr r3, r30
/* 803185AC 0031420C  7F E5 FB 78 */	mr r5, r31
/* 803185B0 00314210  7F 46 07 34 */	extsh r6, r26
/* 803185B4 00314214  38 8D 8D 18 */	addi r4, r13, lbl_8063DFD8-_SDA_BASE_
/* 803185B8 00314218  38 E0 00 01 */	li r7, 1
/* 803185BC 0031421C  4B FE D0 A5 */	bl VFiPFSTR_StrNCmp
/* 803185C0 00314220  2C 03 00 00 */	cmpwi r3, 0
/* 803185C4 00314224  40 82 00 D0 */	bne lbl_80318694
lbl_803185C8:
/* 803185C8 00314228  28 18 00 01 */	cmplwi r24, 1
/* 803185CC 0031422C  40 82 00 28 */	bne lbl_803185F4
/* 803185D0 00314230  7F C3 F3 78 */	mr r3, r30
/* 803185D4 00314234  7F E5 FB 78 */	mr r5, r31
/* 803185D8 00314238  7F 46 07 34 */	extsh r6, r26
/* 803185DC 0031423C  38 8D 8D 14 */	addi r4, r13, lbl_8063DFD4-_SDA_BASE_
/* 803185E0 00314240  38 E0 00 01 */	li r7, 1
/* 803185E4 00314244  4B FE D0 7D */	bl VFiPFSTR_StrNCmp
/* 803185E8 00314248  2C 03 00 00 */	cmpwi r3, 0
/* 803185EC 0031424C  40 82 00 08 */	bne lbl_803185F4
/* 803185F0 00314250  3B 20 00 01 */	li r25, 1
lbl_803185F4:
/* 803185F4 00314254  3B 9C 00 02 */	addi r28, r28, 2
/* 803185F8 00314258  3B 5A 00 01 */	addi r26, r26, 1
lbl_803185FC:
/* 803185FC 0031425C  7F 46 07 34 */	extsh r6, r26
/* 80318600 00314260  2C 06 00 08 */	cmpwi r6, 8
/* 80318604 00314264  40 80 00 90 */	bge lbl_80318694
/* 80318608 00314268  7F C3 F3 78 */	mr r3, r30
/* 8031860C 0031426C  7F E5 FB 78 */	mr r5, r31
/* 80318610 00314270  3B A0 00 00 */	li r29, 0
/* 80318614 00314274  38 8D 8D 0C */	addi r4, r13, lbl_8063DFCC-_SDA_BASE_
/* 80318618 00314278  38 E0 00 01 */	li r7, 1
/* 8031861C 0031427C  4B FE D0 45 */	bl VFiPFSTR_StrNCmp
/* 80318620 00314280  2C 03 00 00 */	cmpwi r3, 0
/* 80318624 00314284  41 82 00 24 */	beq lbl_80318648
/* 80318628 00314288  7F C3 F3 78 */	mr r3, r30
/* 8031862C 0031428C  7F E5 FB 78 */	mr r5, r31
/* 80318630 00314290  7F 46 07 34 */	extsh r6, r26
/* 80318634 00314294  38 8D 8D 10 */	addi r4, r13, lbl_8063DFD0-_SDA_BASE_
/* 80318638 00314298  38 E0 00 01 */	li r7, 1
/* 8031863C 0031429C  4B FE D0 25 */	bl VFiPFSTR_StrNCmp
/* 80318640 003142A0  2C 03 00 00 */	cmpwi r3, 0
/* 80318644 003142A4  40 82 00 08 */	bne lbl_8031864C
lbl_80318648:
/* 80318648 003142A8  3B A0 00 01 */	li r29, 1
lbl_8031864C:
/* 8031864C 003142AC  2C 1D 00 00 */	cmpwi r29, 0
/* 80318650 003142B0  40 82 00 44 */	bne lbl_80318694
/* 80318654 003142B4  7F C3 F3 78 */	mr r3, r30
/* 80318658 003142B8  7F E5 FB 78 */	mr r5, r31
/* 8031865C 003142BC  7F 46 07 34 */	extsh r6, r26
/* 80318660 003142C0  38 8D 8D 20 */	addi r4, r13, lbl_8063DFE0-_SDA_BASE_
/* 80318664 003142C4  38 E0 00 01 */	li r7, 1
/* 80318668 003142C8  4B FE CF F9 */	bl VFiPFSTR_StrNCmp
/* 8031866C 003142CC  2C 03 00 00 */	cmpwi r3, 0
/* 80318670 003142D0  41 82 00 24 */	beq lbl_80318694
/* 80318674 003142D4  7F C3 F3 78 */	mr r3, r30
/* 80318678 003142D8  7F E5 FB 78 */	mr r5, r31
/* 8031867C 003142DC  7F 46 07 34 */	extsh r6, r26
/* 80318680 003142E0  38 8D 8C FC */	addi r4, r13, lbl_8063DFBC-_SDA_BASE_
/* 80318684 003142E4  38 E0 00 01 */	li r7, 1
/* 80318688 003142E8  4B FE CF D9 */	bl VFiPFSTR_StrNCmp
/* 8031868C 003142EC  2C 03 00 00 */	cmpwi r3, 0
/* 80318690 003142F0  40 82 FE 94 */	bne lbl_80318524
lbl_80318694:
/* 80318694 003142F4  7F 40 07 34 */	extsh r0, r26
/* 80318698 003142F8  2C 00 00 08 */	cmpwi r0, 8
/* 8031869C 003142FC  41 82 00 0C */	beq lbl_803186A8
/* 803186A0 00314300  28 19 00 01 */	cmplwi r25, 1
/* 803186A4 00314304  40 82 00 98 */	bne lbl_8031873C
lbl_803186A8:
/* 803186A8 00314308  7F C3 F3 78 */	mr r3, r30
/* 803186AC 0031430C  7F E5 FB 78 */	mr r5, r31
/* 803186B0 00314310  7F 46 07 34 */	extsh r6, r26
/* 803186B4 00314314  38 8D 8D 20 */	addi r4, r13, lbl_8063DFE0-_SDA_BASE_
/* 803186B8 00314318  38 E0 00 01 */	li r7, 1
/* 803186BC 0031431C  4B FE CF A5 */	bl VFiPFSTR_StrNCmp
/* 803186C0 00314320  2C 03 00 00 */	cmpwi r3, 0
/* 803186C4 00314324  41 82 00 74 */	beq lbl_80318738
/* 803186C8 00314328  7F C3 F3 78 */	mr r3, r30
/* 803186CC 0031432C  7F E5 FB 78 */	mr r5, r31
/* 803186D0 00314330  7F 46 07 34 */	extsh r6, r26
/* 803186D4 00314334  3B A0 00 00 */	li r29, 0
/* 803186D8 00314338  38 8D 8D 0C */	addi r4, r13, lbl_8063DFCC-_SDA_BASE_
/* 803186DC 0031433C  38 E0 00 01 */	li r7, 1
/* 803186E0 00314340  4B FE CF 81 */	bl VFiPFSTR_StrNCmp
/* 803186E4 00314344  2C 03 00 00 */	cmpwi r3, 0
/* 803186E8 00314348  41 82 00 24 */	beq lbl_8031870C
/* 803186EC 0031434C  7F C3 F3 78 */	mr r3, r30
/* 803186F0 00314350  7F E5 FB 78 */	mr r5, r31
/* 803186F4 00314354  7F 46 07 34 */	extsh r6, r26
/* 803186F8 00314358  38 8D 8D 10 */	addi r4, r13, lbl_8063DFD0-_SDA_BASE_
/* 803186FC 0031435C  38 E0 00 01 */	li r7, 1
/* 80318700 00314360  4B FE CF 61 */	bl VFiPFSTR_StrNCmp
/* 80318704 00314364  2C 03 00 00 */	cmpwi r3, 0
/* 80318708 00314368  40 82 00 08 */	bne lbl_80318710
lbl_8031870C:
/* 8031870C 0031436C  3B A0 00 01 */	li r29, 1
lbl_80318710:
/* 80318710 00314370  2C 1D 00 00 */	cmpwi r29, 0
/* 80318714 00314374  41 82 00 24 */	beq lbl_80318738
/* 80318718 00314378  7F C3 F3 78 */	mr r3, r30
/* 8031871C 0031437C  7F E5 FB 78 */	mr r5, r31
/* 80318720 00314380  7F 46 07 34 */	extsh r6, r26
/* 80318724 00314384  38 8D 8C FC */	addi r4, r13, lbl_8063DFBC-_SDA_BASE_
/* 80318728 00314388  38 E0 00 01 */	li r7, 1
/* 8031872C 0031438C  4B FE CF 35 */	bl VFiPFSTR_StrNCmp
/* 80318730 00314390  2C 03 00 00 */	cmpwi r3, 0
/* 80318734 00314394  40 82 00 08 */	bne lbl_8031873C
lbl_80318738:
/* 80318738 00314398  7F 5B 07 34 */	extsh r27, r26
lbl_8031873C:
/* 8031873C 0031439C  7F 63 DB 78 */	mr r3, r27
lbl_80318740:
/* 80318740 003143A0  39 61 00 30 */	addi r11, r1, 0x30
/* 80318744 003143A4  4B EA EA 25 */	bl _restgpr_24
/* 80318748 003143A8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8031874C 003143AC  7C 08 03 A6 */	mtlr r0
/* 80318750 003143B0  38 21 00 30 */	addi r1, r1, 0x30
/* 80318754 003143B4  4E 80 00 20 */	blr

.global VFiPFPATH_GetExtShortNameIndex
VFiPFPATH_GetExtShortNameIndex:
/* 80318758 003143B8  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8031875C 003143BC  7C 08 02 A6 */	mflr r0
/* 80318760 003143C0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80318764 003143C4  39 61 00 30 */	addi r11, r1, 0x30
/* 80318768 003143C8  4B EA E9 BD */	bl _savegpr_26
/* 8031876C 003143CC  88 A2 A4 A8 */	lbz r5, lbl_80642AA8-_SDA2_BASE_(r2)
/* 80318770 003143D0  2C 03 00 00 */	cmpwi r3, 0
/* 80318774 003143D4  88 02 A4 A9 */	lbz r0, lbl_80642AA9-_SDA2_BASE_(r2)
/* 80318778 003143D8  7C 7A 1B 78 */	mr r26, r3
/* 8031877C 003143DC  98 A1 00 08 */	stb r5, 8(r1)
/* 80318780 003143E0  7C 9B 23 78 */	mr r27, r4
/* 80318784 003143E4  3B C0 00 00 */	li r30, 0
/* 80318788 003143E8  98 01 00 09 */	stb r0, 9(r1)
/* 8031878C 003143EC  41 82 00 0C */	beq lbl_80318798
/* 80318790 003143F0  2C 04 00 00 */	cmpwi r4, 0
/* 80318794 003143F4  40 82 00 0C */	bne lbl_803187A0
lbl_80318798:
/* 80318798 003143F8  38 60 00 0A */	li r3, 0xa
/* 8031879C 003143FC  48 00 01 48 */	b lbl_803188E4
lbl_803187A0:
/* 803187A0 00314400  38 81 00 08 */	addi r4, r1, 8
/* 803187A4 00314404  38 A0 00 01 */	li r5, 1
/* 803187A8 00314408  38 C0 00 00 */	li r6, 0
/* 803187AC 0031440C  38 E0 00 02 */	li r7, 2
/* 803187B0 00314410  4B FE CE B1 */	bl VFiPFSTR_StrNCmp
/* 803187B4 00314414  2C 03 00 00 */	cmpwi r3, 0
/* 803187B8 00314418  40 82 01 28 */	bne lbl_803188E0
/* 803187BC 0031441C  3B 80 00 00 */	li r28, 0
/* 803187C0 00314420  3B A0 00 02 */	li r29, 2
/* 803187C4 00314424  3B E0 00 04 */	li r31, 4
/* 803187C8 00314428  48 00 00 70 */	b lbl_80318838
lbl_803187CC:
/* 803187CC 0031442C  7F 43 D3 78 */	mr r3, r26
/* 803187D0 00314430  4B FE CB 11 */	bl VFiPFSTR_GetCodeMode
/* 803187D4 00314434  28 03 00 01 */	cmplwi r3, 1
/* 803187D8 00314438  40 82 00 28 */	bne lbl_80318800
/* 803187DC 0031443C  7F 43 D3 78 */	mr r3, r26
/* 803187E0 00314440  38 80 00 01 */	li r4, 1
/* 803187E4 00314444  4B FE CB 2D */	bl VFiPFSTR_GetStrPos
/* 803187E8 00314448  7F A0 07 34 */	extsh r0, r29
/* 803187EC 0031444C  7C 03 00 AE */	lbzx r0, r3, r0
/* 803187F0 00314450  7C 03 07 74 */	extsb r3, r0
/* 803187F4 00314454  38 03 FF D0 */	addi r0, r3, -48
/* 803187F8 00314458  7C 00 07 34 */	extsh r0, r0
/* 803187FC 0031445C  48 00 00 1C */	b lbl_80318818
lbl_80318800:
/* 80318800 00314460  7F 43 D3 78 */	mr r3, r26
/* 80318804 00314464  38 80 00 01 */	li r4, 1
/* 80318808 00314468  4B FE CB 09 */	bl VFiPFSTR_GetStrPos
/* 8031880C 0031446C  7C 63 FA 2E */	lhzx r3, r3, r31
/* 80318810 00314470  38 03 FF D0 */	addi r0, r3, -48
/* 80318814 00314474  7C 00 07 34 */	extsh r0, r0
lbl_80318818:
/* 80318818 00314478  2C 00 00 00 */	cmpwi r0, 0
/* 8031881C 0031447C  41 80 00 44 */	blt lbl_80318860
/* 80318820 00314480  2C 00 00 09 */	cmpwi r0, 9
/* 80318824 00314484  41 81 00 3C */	bgt lbl_80318860
/* 80318828 00314488  1F 9C 00 0A */	mulli r28, r28, 0xa
/* 8031882C 0031448C  3B FF 00 02 */	addi r31, r31, 2
/* 80318830 00314490  3B BD 00 01 */	addi r29, r29, 1
/* 80318834 00314494  7F 9C 02 14 */	add r28, r28, r0
lbl_80318838:
/* 80318838 00314498  7F A6 07 34 */	extsh r6, r29
/* 8031883C 0031449C  2C 06 00 08 */	cmpwi r6, 8
/* 80318840 003144A0  41 80 FF 8C */	blt lbl_803187CC
/* 80318844 003144A4  7F 43 D3 78 */	mr r3, r26
/* 80318848 003144A8  38 8D 8C FC */	addi r4, r13, lbl_8063DFBC-_SDA_BASE_
/* 8031884C 003144AC  38 A0 00 01 */	li r5, 1
/* 80318850 003144B0  38 E0 00 01 */	li r7, 1
/* 80318854 003144B4  4B FE CE 0D */	bl VFiPFSTR_StrNCmp
/* 80318858 003144B8  2C 03 00 00 */	cmpwi r3, 0
/* 8031885C 003144BC  40 82 FF 70 */	bne lbl_803187CC
lbl_80318860:
/* 80318860 003144C0  7F A6 07 34 */	extsh r6, r29
/* 80318864 003144C4  2C 06 00 08 */	cmpwi r6, 8
/* 80318868 003144C8  40 82 00 78 */	bne lbl_803188E0
/* 8031886C 003144CC  7F 43 D3 78 */	mr r3, r26
/* 80318870 003144D0  3B E0 00 00 */	li r31, 0
/* 80318874 003144D4  38 8D 8D 0C */	addi r4, r13, lbl_8063DFCC-_SDA_BASE_
/* 80318878 003144D8  38 A0 00 01 */	li r5, 1
/* 8031887C 003144DC  38 E0 00 01 */	li r7, 1
/* 80318880 003144E0  4B FE CD E1 */	bl VFiPFSTR_StrNCmp
/* 80318884 003144E4  2C 03 00 00 */	cmpwi r3, 0
/* 80318888 003144E8  41 82 00 24 */	beq lbl_803188AC
/* 8031888C 003144EC  7F 43 D3 78 */	mr r3, r26
/* 80318890 003144F0  7F A6 07 34 */	extsh r6, r29
/* 80318894 003144F4  38 8D 8D 10 */	addi r4, r13, lbl_8063DFD0-_SDA_BASE_
/* 80318898 003144F8  38 A0 00 01 */	li r5, 1
/* 8031889C 003144FC  38 E0 00 01 */	li r7, 1
/* 803188A0 00314500  4B FE CD C1 */	bl VFiPFSTR_StrNCmp
/* 803188A4 00314504  2C 03 00 00 */	cmpwi r3, 0
/* 803188A8 00314508  40 82 00 08 */	bne lbl_803188B0
lbl_803188AC:
/* 803188AC 0031450C  3B E0 00 01 */	li r31, 1
lbl_803188B0:
/* 803188B0 00314510  2C 1F 00 00 */	cmpwi r31, 0
/* 803188B4 00314514  41 82 00 24 */	beq lbl_803188D8
/* 803188B8 00314518  7F 43 D3 78 */	mr r3, r26
/* 803188BC 0031451C  7F A6 07 34 */	extsh r6, r29
/* 803188C0 00314520  38 80 00 00 */	li r4, 0
/* 803188C4 00314524  38 A0 00 01 */	li r5, 1
/* 803188C8 00314528  38 E0 00 01 */	li r7, 1
/* 803188CC 0031452C  4B FE CD 95 */	bl VFiPFSTR_StrNCmp
/* 803188D0 00314530  2C 03 00 00 */	cmpwi r3, 0
/* 803188D4 00314534  40 82 00 0C */	bne lbl_803188E0
lbl_803188D8:
/* 803188D8 00314538  93 9B 00 00 */	stw r28, 0(r27)
/* 803188DC 0031453C  3B C0 00 01 */	li r30, 1
lbl_803188E0:
/* 803188E0 00314540  7F C3 F3 78 */	mr r3, r30
lbl_803188E4:
/* 803188E4 00314544  39 61 00 30 */	addi r11, r1, 0x30
/* 803188E8 00314548  4B EA E8 89 */	bl _restgpr_26
/* 803188EC 0031454C  80 01 00 34 */	lwz r0, 0x34(r1)
/* 803188F0 00314550  7C 08 03 A6 */	mtlr r0
/* 803188F4 00314554  38 21 00 30 */	addi r1, r1, 0x30
/* 803188F8 00314558  4E 80 00 20 */	blr

.global VFiPFPATH_AdjustExtShortName
VFiPFPATH_AdjustExtShortName:
/* 803188FC 0031455C  2C 03 00 00 */	cmpwi r3, 0
/* 80318900 00314560  40 82 00 0C */	bne lbl_8031890C
/* 80318904 00314564  38 60 00 0A */	li r3, 0xa
/* 80318908 00314568  4E 80 00 20 */	blr
lbl_8031890C:
/* 8031890C 0031456C  38 63 00 07 */	addi r3, r3, 7
/* 80318910 00314570  38 C0 00 07 */	li r6, 7
/* 80318914 00314574  38 E0 00 0A */	li r7, 0xa
/* 80318918 00314578  39 00 00 01 */	li r8, 1
/* 8031891C 0031457C  48 00 00 3C */	b lbl_80318958
lbl_80318920:
/* 80318920 00314580  7C 04 3B 96 */	divwu r0, r4, r7
/* 80318924 00314584  7C 00 39 D6 */	mullw r0, r0, r7
/* 80318928 00314588  7C 00 20 51 */	subf. r0, r0, r4
/* 8031892C 0031458C  41 82 00 1C */	beq lbl_80318948
/* 80318930 00314590  7C 80 20 50 */	subf r4, r0, r4
/* 80318934 00314594  88 A3 00 00 */	lbz r5, 0(r3)
/* 80318938 00314598  7C 00 43 96 */	divwu r0, r0, r8
/* 8031893C 0031459C  7C 00 07 74 */	extsb r0, r0
/* 80318940 003145A0  7C 05 02 14 */	add r0, r5, r0
/* 80318944 003145A4  98 03 00 00 */	stb r0, 0(r3)
lbl_80318948:
/* 80318948 003145A8  1C E7 00 0A */	mulli r7, r7, 0xa
/* 8031894C 003145AC  38 C6 FF FF */	addi r6, r6, -1
/* 80318950 003145B0  38 63 FF FF */	addi r3, r3, -1
/* 80318954 003145B4  1D 08 00 0A */	mulli r8, r8, 0xa
lbl_80318958:
/* 80318958 003145B8  28 06 00 01 */	cmplwi r6, 1
/* 8031895C 003145BC  40 81 00 0C */	ble lbl_80318968
/* 80318960 003145C0  2C 04 00 00 */	cmpwi r4, 0
/* 80318964 003145C4  40 82 FF BC */	bne lbl_80318920
lbl_80318968:
/* 80318968 003145C8  38 60 00 00 */	li r3, 0
/* 8031896C 003145CC  4E 80 00 20 */	blr