summaryrefslogtreecommitdiff
path: root/asm/SDK/VF/pf_entry.s
blob: bf99267eba2c80ba37876d5bd916c85fe717eec8 (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
.include "macros.inc"

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

.global VFiPFENT_compareAttr
VFiPFENT_compareAttr:
/* 8030B2C8 00306F28  2C 03 00 00 */	cmpwi r3, 0
/* 8030B2CC 00306F2C  38 C0 00 01 */	li r6, 1
/* 8030B2D0 00306F30  40 82 00 08 */	bne lbl_8030B2D8
/* 8030B2D4 00306F34  38 60 00 40 */	li r3, 0x40
lbl_8030B2D8:
/* 8030B2D8 00306F38  54 80 06 31 */	rlwinm. r0, r4, 0, 0x18, 0x18
/* 8030B2DC 00306F3C  41 82 00 38 */	beq lbl_8030B314
/* 8030B2E0 00306F40  54 87 06 7F */	clrlwi. r7, r4, 0x19
/* 8030B2E4 00306F44  54 A4 06 7E */	clrlwi r4, r5, 0x19
/* 8030B2E8 00306F48  41 82 00 10 */	beq lbl_8030B2F8
/* 8030B2EC 00306F4C  7C E0 18 38 */	and r0, r7, r3
/* 8030B2F0 00306F50  7C 07 00 00 */	cmpw r7, r0
/* 8030B2F4 00306F54  40 82 00 18 */	bne lbl_8030B30C
lbl_8030B2F8:
/* 8030B2F8 00306F58  2C 04 00 00 */	cmpwi r4, 0
/* 8030B2FC 00306F5C  41 82 00 3C */	beq lbl_8030B338
/* 8030B300 00306F60  7C 80 18 38 */	and r0, r4, r3
/* 8030B304 00306F64  7C 04 00 00 */	cmpw r4, r0
/* 8030B308 00306F68  40 82 00 30 */	bne lbl_8030B338
lbl_8030B30C:
/* 8030B30C 00306F6C  38 C0 00 00 */	li r6, 0
/* 8030B310 00306F70  48 00 00 28 */	b lbl_8030B338
lbl_8030B314:
/* 8030B314 00306F74  28 04 00 7F */	cmplwi r4, 0x7f
/* 8030B318 00306F78  41 82 00 20 */	beq lbl_8030B338
/* 8030B31C 00306F7C  7C 03 20 40 */	cmplw r3, r4
/* 8030B320 00306F80  41 82 00 18 */	beq lbl_8030B338
/* 8030B324 00306F84  7C 60 20 39 */	and. r0, r3, r4
/* 8030B328 00306F88  41 82 00 0C */	beq lbl_8030B334
/* 8030B32C 00306F8C  7C 60 28 39 */	and. r0, r3, r5
/* 8030B330 00306F90  41 82 00 08 */	beq lbl_8030B338
lbl_8030B334:
/* 8030B334 00306F94  38 C0 00 00 */	li r6, 0
lbl_8030B338:
/* 8030B338 00306F98  7C C3 33 78 */	mr r3, r6
/* 8030B33C 00306F9C  4E 80 00 20 */	blr

.global VFiPFENT_compareEntryName
VFiPFENT_compareEntryName:
/* 8030B340 00306FA0  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8030B344 00306FA4  7C 08 02 A6 */	mflr r0
/* 8030B348 00306FA8  90 01 00 34 */	stw r0, 0x34(r1)
/* 8030B34C 00306FAC  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8030B350 00306FB0  3B E0 00 01 */	li r31, 1
/* 8030B354 00306FB4  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8030B358 00306FB8  7C BE 2B 78 */	mr r30, r5
/* 8030B35C 00306FBC  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8030B360 00306FC0  7C 9D 23 78 */	mr r29, r4
/* 8030B364 00306FC4  93 81 00 20 */	stw r28, 0x20(r1)
/* 8030B368 00306FC8  7C 7C 1B 78 */	mr r28, r3
/* 8030B36C 00306FCC  88 03 02 0A */	lbz r0, 0x20a(r3)
/* 8030B370 00306FD0  2C 00 00 00 */	cmpwi r0, 0
/* 8030B374 00306FD4  41 82 00 84 */	beq lbl_8030B3F8
/* 8030B378 00306FD8  88 03 02 0B */	lbz r0, 0x20b(r3)
/* 8030B37C 00306FDC  28 00 00 01 */	cmplwi r0, 1
/* 8030B380 00306FE0  40 82 00 78 */	bne lbl_8030B3F8
/* 8030B384 00306FE4  38 61 00 08 */	addi r3, r1, 8
/* 8030B388 00306FE8  38 9C 02 0E */	addi r4, r28, 0x20e
/* 8030B38C 00306FEC  38 A0 00 00 */	li r5, 0
/* 8030B390 00306FF0  48 00 BE B9 */	bl VFiPFPATH_putShortName
/* 8030B394 00306FF4  38 00 00 0B */	li r0, 0xb
/* 8030B398 00306FF8  38 C1 00 08 */	addi r6, r1, 8
/* 8030B39C 00306FFC  38 80 00 00 */	li r4, 0
/* 8030B3A0 00307000  38 E0 00 00 */	li r7, 0
/* 8030B3A4 00307004  7C 09 03 A6 */	mtctr r0
lbl_8030B3A8:
/* 8030B3A8 00307008  54 E3 04 3E */	clrlwi r3, r7, 0x10
/* 8030B3AC 0030700C  54 80 07 FE */	clrlwi r0, r4, 0x1f
/* 8030B3B0 00307010  7C A6 18 AE */	lbzx r5, r6, r3
/* 8030B3B4 00307014  7C 00 00 D0 */	neg r0, r0
/* 8030B3B8 00307018  54 84 FE 7E */	rlwinm r4, r4, 0x1f, 0x19, 0x1f
/* 8030B3BC 0030701C  38 E7 00 01 */	addi r7, r7, 1
/* 8030B3C0 00307020  54 03 06 30 */	rlwinm r3, r0, 0, 0x18, 0x18
/* 8030B3C4 00307024  7C 05 22 14 */	add r0, r5, r4
/* 8030B3C8 00307028  7C 03 02 14 */	add r0, r3, r0
/* 8030B3CC 0030702C  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8030B3D0 00307030  42 00 FF D8 */	bdnz lbl_8030B3A8
/* 8030B3D4 00307034  88 1C 02 0C */	lbz r0, 0x20c(r28)
/* 8030B3D8 00307038  7C 00 20 40 */	cmplw r0, r4
/* 8030B3DC 0030703C  40 82 00 1C */	bne lbl_8030B3F8
/* 8030B3E0 00307040  7F 83 E3 78 */	mr r3, r28
/* 8030B3E4 00307044  7F A4 EB 78 */	mr r4, r29
/* 8030B3E8 00307048  48 00 B5 5D */	bl VFiPFPATH_cmpNameUni
/* 8030B3EC 0030704C  7C 03 00 D0 */	neg r0, r3
/* 8030B3F0 00307050  7C 00 1B 78 */	or r0, r0, r3
/* 8030B3F4 00307054  54 1F 0F FE */	srwi r31, r0, 0x1f
lbl_8030B3F8:
/* 8030B3F8 00307058  2C 1F 00 01 */	cmpwi r31, 1
/* 8030B3FC 0030705C  40 82 00 60 */	bne lbl_8030B45C
/* 8030B400 00307060  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 8030B404 00307064  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 8030B408 00307068  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 8030B40C 0030706C  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8030B410 00307070  28 00 00 02 */	cmplwi r0, 2
/* 8030B414 00307074  40 82 00 2C */	bne lbl_8030B440
/* 8030B418 00307078  57 C0 07 39 */	rlwinm. r0, r30, 0, 0x1c, 0x1c
/* 8030B41C 0030707C  40 82 00 24 */	bne lbl_8030B440
/* 8030B420 00307080  7F A4 EB 78 */	mr r4, r29
/* 8030B424 00307084  38 7C 02 0E */	addi r3, r28, 0x20e
/* 8030B428 00307088  38 A0 00 00 */	li r5, 0
/* 8030B42C 0030708C  48 00 B5 45 */	bl VFiPFPATH_cmpName
/* 8030B430 00307090  2C 03 00 00 */	cmpwi r3, 0
/* 8030B434 00307094  40 82 00 28 */	bne lbl_8030B45C
/* 8030B438 00307098  3B E0 00 00 */	li r31, 0
/* 8030B43C 0030709C  48 00 00 20 */	b lbl_8030B45C
lbl_8030B440:
/* 8030B440 003070A0  7F A4 EB 78 */	mr r4, r29
/* 8030B444 003070A4  38 7C 02 0E */	addi r3, r28, 0x20e
/* 8030B448 003070A8  38 A0 00 01 */	li r5, 1
/* 8030B44C 003070AC  48 00 B5 25 */	bl VFiPFPATH_cmpName
/* 8030B450 003070B0  2C 03 00 00 */	cmpwi r3, 0
/* 8030B454 003070B4  40 82 00 08 */	bne lbl_8030B45C
/* 8030B458 003070B8  3B E0 00 00 */	li r31, 0
lbl_8030B45C:
/* 8030B45C 003070BC  7F E3 FB 78 */	mr r3, r31
/* 8030B460 003070C0  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8030B464 003070C4  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8030B468 003070C8  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8030B46C 003070CC  83 81 00 20 */	lwz r28, 0x20(r1)
/* 8030B470 003070D0  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8030B474 003070D4  7C 08 03 A6 */	mtlr r0
/* 8030B478 003070D8  38 21 00 30 */	addi r1, r1, 0x30
/* 8030B47C 003070DC  4E 80 00 20 */	blr

.global VFiPFENT_getEntry
VFiPFENT_getEntry:
/* 8030B480 003070E0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8030B484 003070E4  7C 08 02 A6 */	mflr r0
/* 8030B488 003070E8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8030B48C 003070EC  39 61 00 40 */	addi r11, r1, 0x40
/* 8030B490 003070F0  4B EB BC 95 */	bl _savegpr_26
/* 8030B494 003070F4  8B 84 00 57 */	lbz r28, 0x57(r4)
/* 8030B498 003070F8  7C 7E 1B 78 */	mr r30, r3
/* 8030B49C 003070FC  7C 9F 23 78 */	mr r31, r4
/* 8030B4A0 00307100  7C BA 2B 78 */	mr r26, r5
/* 8030B4A4 00307104  57 9D 07 3E */	clrlwi r29, r28, 0x1c
/* 8030B4A8 00307108  7D 1B 43 78 */	mr r27, r8
/* 8030B4AC 0030710C  2C 1D 00 0F */	cmpwi r29, 0xf
/* 8030B4B0 00307110  40 82 00 0C */	bne lbl_8030B4BC
/* 8030B4B4 00307114  38 60 00 01 */	li r3, 1
/* 8030B4B8 00307118  48 00 00 80 */	b lbl_8030B538
lbl_8030B4BC:
/* 8030B4BC 0030711C  7F 83 E3 78 */	mr r3, r28
/* 8030B4C0 00307120  7C C4 33 78 */	mr r4, r6
/* 8030B4C4 00307124  7C E5 3B 78 */	mr r5, r7
/* 8030B4C8 00307128  4B FF FE 01 */	bl VFiPFENT_compareAttr
/* 8030B4CC 0030712C  2C 03 00 00 */	cmpwi r3, 0
/* 8030B4D0 00307130  40 82 00 0C */	bne lbl_8030B4DC
/* 8030B4D4 00307134  38 60 00 01 */	li r3, 1
/* 8030B4D8 00307138  48 00 00 60 */	b lbl_8030B538
lbl_8030B4DC:
/* 8030B4DC 0030713C  57 80 07 39 */	rlwinm. r0, r28, 0, 0x1c, 0x1c
/* 8030B4E0 00307140  41 82 00 10 */	beq lbl_8030B4F0
/* 8030B4E4 00307144  38 00 00 00 */	li r0, 0
/* 8030B4E8 00307148  98 1E 02 0A */	stb r0, 0x20a(r30)
/* 8030B4EC 0030714C  B0 1E 00 00 */	sth r0, 0(r30)
lbl_8030B4F0:
/* 8030B4F0 00307150  88 BF 00 57 */	lbz r5, 0x57(r31)
/* 8030B4F4 00307154  38 7E 02 0E */	addi r3, r30, 0x20e
/* 8030B4F8 00307158  38 9F 00 4C */	addi r4, r31, 0x4c
/* 8030B4FC 0030715C  48 00 BE D5 */	bl VFiPFPATH_getShortName
/* 8030B500 00307160  88 1E 02 0E */	lbz r0, 0x20e(r30)
/* 8030B504 00307164  2C 00 00 05 */	cmpwi r0, 5
/* 8030B508 00307168  40 82 00 0C */	bne lbl_8030B514
/* 8030B50C 0030716C  38 00 FF E5 */	li r0, -27
/* 8030B510 00307170  98 1E 02 0E */	stb r0, 0x20e(r30)
lbl_8030B514:
/* 8030B514 00307174  7F C3 F3 78 */	mr r3, r30
/* 8030B518 00307178  7F 44 D3 78 */	mr r4, r26
/* 8030B51C 0030717C  7F 85 E3 78 */	mr r5, r28
/* 8030B520 00307180  4B FF FE 21 */	bl VFiPFENT_compareEntryName
/* 8030B524 00307184  2C 03 00 01 */	cmpwi r3, 1
/* 8030B528 00307188  40 82 00 10 */	bne lbl_8030B538
/* 8030B52C 0030718C  80 9B 00 00 */	lwz r4, 0(r27)
/* 8030B530 00307190  38 04 00 01 */	addi r0, r4, 1
/* 8030B534 00307194  90 1B 00 00 */	stw r0, 0(r27)
lbl_8030B538:
/* 8030B538 00307198  2C 03 00 01 */	cmpwi r3, 1
/* 8030B53C 0030719C  40 82 00 44 */	bne lbl_8030B580
/* 8030B540 003071A0  2C 1D 00 0F */	cmpwi r29, 0xf
/* 8030B544 003071A4  40 82 00 28 */	bne lbl_8030B56C
/* 8030B548 003071A8  7F C3 F3 78 */	mr r3, r30
/* 8030B54C 003071AC  38 9F 00 4C */	addi r4, r31, 0x4c
/* 8030B550 003071B0  48 00 07 BD */	bl VFiPFENT_LoadLFNEntryFieldsFromBuf
/* 8030B554 003071B4  2C 03 00 00 */	cmpwi r3, 0
/* 8030B558 003071B8  41 82 00 20 */	beq lbl_8030B578
/* 8030B55C 003071BC  38 00 00 00 */	li r0, 0
/* 8030B560 003071C0  98 1E 02 0A */	stb r0, 0x20a(r30)
/* 8030B564 003071C4  B0 1E 00 00 */	sth r0, 0(r30)
/* 8030B568 003071C8  48 00 00 10 */	b lbl_8030B578
lbl_8030B56C:
/* 8030B56C 003071CC  38 00 00 00 */	li r0, 0
/* 8030B570 003071D0  98 1E 02 0A */	stb r0, 0x20a(r30)
/* 8030B574 003071D4  B0 1E 00 00 */	sth r0, 0(r30)
lbl_8030B578:
/* 8030B578 003071D8  38 60 FF FF */	li r3, -1
/* 8030B57C 003071DC  48 00 01 8C */	b lbl_8030B708
lbl_8030B580:
/* 8030B580 003071E0  88 1E 02 0A */	lbz r0, 0x20a(r30)
/* 8030B584 003071E4  2C 00 00 00 */	cmpwi r0, 0
/* 8030B588 003071E8  40 82 00 C4 */	bne lbl_8030B64C
/* 8030B58C 003071EC  88 BF 00 58 */	lbz r5, 0x58(r31)
/* 8030B590 003071F0  54 A0 06 F9 */	rlwinm. r0, r5, 0, 0x1b, 0x1c
/* 8030B594 003071F4  41 82 00 B8 */	beq lbl_8030B64C
/* 8030B598 003071F8  38 7E 02 0E */	addi r3, r30, 0x20e
/* 8030B59C 003071FC  38 81 00 18 */	addi r4, r1, 0x18
/* 8030B5A0 00307200  48 00 C0 8D */	bl VFiPFPATH_getLongNameformShortName
/* 8030B5A4 00307204  7F C3 F3 78 */	mr r3, r30
/* 8030B5A8 00307208  38 81 00 18 */	addi r4, r1, 0x18
/* 8030B5AC 0030720C  48 00 C4 61 */	bl VFiPFPATH_transformInUnicode
/* 8030B5B0 00307210  3C A0 4E C5 */	lis r5, 0x4EC4EC4F@ha
/* 8030B5B4 00307214  38 9E 02 0E */	addi r4, r30, 0x20e
/* 8030B5B8 00307218  38 05 EC 4F */	addi r0, r5, 0x4EC4EC4F@l
/* 8030B5BC 0030721C  7C 00 18 96 */	mulhw r0, r0, r3
/* 8030B5C0 00307220  38 A0 00 00 */	li r5, 0
/* 8030B5C4 00307224  7C 07 16 70 */	srawi r7, r0, 2
/* 8030B5C8 00307228  7C 00 16 70 */	srawi r0, r0, 2
/* 8030B5CC 0030722C  54 06 0F FE */	srwi r6, r0, 0x1f
/* 8030B5D0 00307230  54 E8 0F FE */	srwi r8, r7, 0x1f
/* 8030B5D4 00307234  7C 00 32 14 */	add r0, r0, r6
/* 8030B5D8 00307238  1C 00 00 0D */	mulli r0, r0, 0xd
/* 8030B5DC 0030723C  7C E7 42 14 */	add r7, r7, r8
/* 8030B5E0 00307240  7C C0 18 50 */	subf r6, r0, r3
/* 8030B5E4 00307244  38 61 00 08 */	addi r3, r1, 8
/* 8030B5E8 00307248  7C 06 00 D0 */	neg r0, r6
/* 8030B5EC 0030724C  7C 00 33 78 */	or r0, r0, r6
/* 8030B5F0 00307250  54 00 0F FE */	srwi r0, r0, 0x1f
/* 8030B5F4 00307254  7C 07 02 14 */	add r0, r7, r0
/* 8030B5F8 00307258  98 1E 02 0A */	stb r0, 0x20a(r30)
/* 8030B5FC 0030725C  48 00 BC 4D */	bl VFiPFPATH_putShortName
/* 8030B600 00307260  38 00 00 0B */	li r0, 0xb
/* 8030B604 00307264  38 C1 00 08 */	addi r6, r1, 8
/* 8030B608 00307268  38 80 00 00 */	li r4, 0
/* 8030B60C 0030726C  38 E0 00 00 */	li r7, 0
/* 8030B610 00307270  7C 09 03 A6 */	mtctr r0
lbl_8030B614:
/* 8030B614 00307274  54 E3 04 3E */	clrlwi r3, r7, 0x10
/* 8030B618 00307278  54 80 07 FE */	clrlwi r0, r4, 0x1f
/* 8030B61C 0030727C  7C A6 18 AE */	lbzx r5, r6, r3
/* 8030B620 00307280  7C 00 00 D0 */	neg r0, r0
/* 8030B624 00307284  54 84 FE 7E */	rlwinm r4, r4, 0x1f, 0x19, 0x1f
/* 8030B628 00307288  38 E7 00 01 */	addi r7, r7, 1
/* 8030B62C 0030728C  54 03 06 30 */	rlwinm r3, r0, 0, 0x18, 0x18
/* 8030B630 00307290  7C 05 22 14 */	add r0, r5, r4
/* 8030B634 00307294  7C 03 02 14 */	add r0, r3, r0
/* 8030B638 00307298  54 04 06 3E */	clrlwi r4, r0, 0x18
/* 8030B63C 0030729C  42 00 FF D8 */	bdnz lbl_8030B614
/* 8030B640 003072A0  38 00 00 01 */	li r0, 1
/* 8030B644 003072A4  98 9E 02 0C */	stb r4, 0x20c(r30)
/* 8030B648 003072A8  98 1E 02 0B */	stb r0, 0x20b(r30)
lbl_8030B64C:
/* 8030B64C 003072AC  88 1F 00 57 */	lbz r0, 0x57(r31)
/* 8030B650 003072B0  38 DE 02 1E */	addi r6, r30, 0x21e
/* 8030B654 003072B4  38 BE 02 20 */	addi r5, r30, 0x220
/* 8030B658 003072B8  38 9E 02 22 */	addi r4, r30, 0x222
/* 8030B65C 003072BC  98 1E 02 1C */	stb r0, 0x21c(r30)
/* 8030B660 003072C0  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8030B664 003072C4  38 7E 02 24 */	addi r3, r30, 0x224
/* 8030B668 003072C8  88 FF 00 58 */	lbz r7, 0x58(r31)
/* 8030B66C 003072CC  38 1E 02 26 */	addi r0, r30, 0x226
/* 8030B670 003072D0  98 FE 02 1B */	stb r7, 0x21b(r30)
/* 8030B674 003072D4  88 FF 00 59 */	lbz r7, 0x59(r31)
/* 8030B678 003072D8  98 FE 02 1D */	stb r7, 0x21d(r30)
/* 8030B67C 003072DC  A0 FF 00 5A */	lhz r7, 0x5a(r31)
/* 8030B680 003072E0  7C E0 37 2C */	sthbrx r7, 0, r6
/* 8030B684 003072E4  A0 DF 00 5C */	lhz r6, 0x5c(r31)
/* 8030B688 003072E8  7C C0 2F 2C */	sthbrx r6, 0, r5
/* 8030B68C 003072EC  A0 BF 00 5E */	lhz r5, 0x5e(r31)
/* 8030B690 003072F0  7C A0 27 2C */	sthbrx r5, 0, r4
/* 8030B694 003072F4  A0 9F 00 62 */	lhz r4, 0x62(r31)
/* 8030B698 003072F8  7C 80 1F 2C */	sthbrx r4, 0, r3
/* 8030B69C 003072FC  A0 7F 00 64 */	lhz r3, 0x64(r31)
/* 8030B6A0 00307300  7C 60 07 2C */	sthbrx r3, 0, r0
/* 8030B6A4 00307304  80 9F 00 68 */	lwz r4, 0x68(r31)
/* 8030B6A8 00307308  54 83 42 1E */	rlwinm r3, r4, 8, 8, 0xf
/* 8030B6AC 0030730C  54 80 C4 2E */	rlwinm r0, r4, 0x18, 0x10, 0x17
/* 8030B6B0 00307310  50 83 C0 0E */	rlwimi r3, r4, 0x18, 0, 7
/* 8030B6B4 00307314  50 80 46 3E */	rlwimi r0, r4, 8, 0x18, 0x1f
/* 8030B6B8 00307318  7C 60 03 78 */	or r0, r3, r0
/* 8030B6BC 0030731C  90 1E 02 28 */	stw r0, 0x228(r30)
/* 8030B6C0 00307320  A0 BF 00 60 */	lhz r5, 0x60(r31)
/* 8030B6C4 00307324  A0 9F 00 66 */	lhz r4, 0x66(r31)
/* 8030B6C8 00307328  54 A0 44 2E */	rlwinm r0, r5, 8, 0x10, 0x17
/* 8030B6CC 0030732C  54 83 44 2E */	rlwinm r3, r4, 8, 0x10, 0x17
/* 8030B6D0 00307330  50 A0 C6 3E */	rlwimi r0, r5, 0x18, 0x18, 0x1f
/* 8030B6D4 00307334  50 83 C6 3E */	rlwimi r3, r4, 0x18, 0x18, 0x1f
/* 8030B6D8 00307338  50 03 80 1E */	rlwimi r3, r0, 0x10, 0, 0xf
/* 8030B6DC 0030733C  90 7E 02 34 */	stw r3, 0x234(r30)
/* 8030B6E0 00307340  80 1F 00 44 */	lwz r0, 0x44(r31)
/* 8030B6E4 00307344  90 1E 02 38 */	stw r0, 0x238(r30)
/* 8030B6E8 00307348  A0 1F 00 48 */	lhz r0, 0x48(r31)
/* 8030B6EC 0030734C  B0 1E 02 3C */	sth r0, 0x23c(r30)
/* 8030B6F0 00307350  41 82 00 14 */	beq lbl_8030B704
/* 8030B6F4 00307354  2C 03 00 00 */	cmpwi r3, 0
/* 8030B6F8 00307358  40 82 00 0C */	bne lbl_8030B704
/* 8030B6FC 0030735C  38 00 00 01 */	li r0, 1
/* 8030B700 00307360  90 1E 02 34 */	stw r0, 0x234(r30)
lbl_8030B704:
/* 8030B704 00307364  38 60 00 00 */	li r3, 0
lbl_8030B708:
/* 8030B708 00307368  39 61 00 40 */	addi r11, r1, 0x40
/* 8030B70C 0030736C  4B EB BA 65 */	bl _restgpr_26
/* 8030B710 00307370  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8030B714 00307374  7C 08 03 A6 */	mtlr r0
/* 8030B718 00307378  38 21 00 40 */	addi r1, r1, 0x40
/* 8030B71C 0030737C  4E 80 00 20 */	blr

.global VFiPFENT_searchEmptyTailSFN
VFiPFENT_searchEmptyTailSFN:
/* 8030B720 00307380  94 21 FF 40 */	stwu r1, -0xc0(r1)
/* 8030B724 00307384  7C 08 02 A6 */	mflr r0
/* 8030B728 00307388  90 01 00 C4 */	stw r0, 0xc4(r1)
/* 8030B72C 0030738C  39 61 00 C0 */	addi r11, r1, 0xc0
/* 8030B730 00307390  4B EB B9 F1 */	bl _savegpr_25
/* 8030B734 00307394  83 A3 00 34 */	lwz r29, 0x34(r3)
/* 8030B738 00307398  7C 9A 23 78 */	mr r26, r4
/* 8030B73C 0030739C  7C DC 33 78 */	mr r28, r6
/* 8030B740 003073A0  7C 7E 1B 78 */	mr r30, r3
/* 8030B744 003073A4  80 1D 18 60 */	lwz r0, 0x1860(r29)
/* 8030B748 003073A8  7C BB 2B 78 */	mr r27, r5
/* 8030B74C 003073AC  7F 83 E3 78 */	mr r3, r28
/* 8030B750 003073B0  38 80 00 00 */	li r4, 0
/* 8030B754 003073B4  54 05 10 3A */	slwi r5, r0, 2
/* 8030B758 003073B8  4B FF 98 7D */	bl VFipf_memset
/* 8030B75C 003073BC  80 BE 00 00 */	lwz r5, 0(r30)
/* 8030B760 003073C0  38 61 00 28 */	addi r3, r1, 0x28
/* 8030B764 003073C4  80 1E 00 04 */	lwz r0, 4(r30)
/* 8030B768 003073C8  38 80 00 00 */	li r4, 0
/* 8030B76C 003073CC  90 A1 00 30 */	stw r5, 0x30(r1)
/* 8030B770 003073D0  90 01 00 34 */	stw r0, 0x34(r1)
/* 8030B774 003073D4  80 BE 00 08 */	lwz r5, 8(r30)
/* 8030B778 003073D8  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 8030B77C 003073DC  90 A1 00 38 */	stw r5, 0x38(r1)
/* 8030B780 003073E0  90 01 00 3C */	stw r0, 0x3c(r1)
/* 8030B784 003073E4  80 BE 00 10 */	lwz r5, 0x10(r30)
/* 8030B788 003073E8  80 1E 00 14 */	lwz r0, 0x14(r30)
/* 8030B78C 003073EC  90 A1 00 40 */	stw r5, 0x40(r1)
/* 8030B790 003073F0  90 01 00 44 */	stw r0, 0x44(r1)
/* 8030B794 003073F4  80 BE 00 18 */	lwz r5, 0x18(r30)
/* 8030B798 003073F8  80 1E 00 1C */	lwz r0, 0x1c(r30)
/* 8030B79C 003073FC  90 A1 00 48 */	stw r5, 0x48(r1)
/* 8030B7A0 00307400  90 01 00 4C */	stw r0, 0x4c(r1)
/* 8030B7A4 00307404  80 BE 00 20 */	lwz r5, 0x20(r30)
/* 8030B7A8 00307408  80 1E 00 24 */	lwz r0, 0x24(r30)
/* 8030B7AC 0030740C  90 A1 00 50 */	stw r5, 0x50(r1)
/* 8030B7B0 00307410  90 01 00 54 */	stw r0, 0x54(r1)
/* 8030B7B4 00307414  80 BE 00 28 */	lwz r5, 0x28(r30)
/* 8030B7B8 00307418  80 1E 00 2C */	lwz r0, 0x2c(r30)
/* 8030B7BC 0030741C  90 A1 00 58 */	stw r5, 0x58(r1)
/* 8030B7C0 00307420  90 01 00 5C */	stw r0, 0x5c(r1)
/* 8030B7C4 00307424  80 BE 00 30 */	lwz r5, 0x30(r30)
/* 8030B7C8 00307428  80 1E 00 34 */	lwz r0, 0x34(r30)
/* 8030B7CC 0030742C  90 A1 00 60 */	stw r5, 0x60(r1)
/* 8030B7D0 00307430  90 01 00 64 */	stw r0, 0x64(r1)
/* 8030B7D4 00307434  48 00 27 25 */	bl VFiPFENT_ITER_IteratorInitialize
/* 8030B7D8 00307438  7C 7E 1B 78 */	mr r30, r3
/* 8030B7DC 0030743C  3B E1 00 18 */	addi r31, r1, 0x18
/* 8030B7E0 00307440  3B 20 00 01 */	li r25, 1
/* 8030B7E4 00307444  48 00 02 80 */	b lbl_8030BA64
lbl_8030B7E8:
/* 8030B7E8 00307448  2C 1E 00 00 */	cmpwi r30, 0
/* 8030B7EC 0030744C  41 82 00 0C */	beq lbl_8030B7F8
/* 8030B7F0 00307450  7F C3 F3 78 */	mr r3, r30
/* 8030B7F4 00307454  48 00 02 84 */	b lbl_8030BA78
lbl_8030B7F8:
/* 8030B7F8 00307458  88 01 00 74 */	lbz r0, 0x74(r1)
/* 8030B7FC 0030745C  2C 00 00 00 */	cmpwi r0, 0
/* 8030B800 00307460  41 82 02 74 */	beq lbl_8030BA74
/* 8030B804 00307464  28 00 00 E5 */	cmplwi r0, 0xe5
/* 8030B808 00307468  41 82 02 4C */	beq lbl_8030BA54
/* 8030B80C 0030746C  88 61 00 7F */	lbz r3, 0x7f(r1)
/* 8030B810 00307470  54 60 07 3E */	clrlwi r0, r3, 0x1c
/* 8030B814 00307474  2C 00 00 0F */	cmpwi r0, 0xf
/* 8030B818 00307478  41 82 02 3C */	beq lbl_8030BA54
/* 8030B81C 0030747C  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 8030B820 00307480  40 82 02 34 */	bne lbl_8030BA54
/* 8030B824 00307484  38 61 00 18 */	addi r3, r1, 0x18
/* 8030B828 00307488  38 81 00 74 */	addi r4, r1, 0x74
/* 8030B82C 0030748C  38 A0 00 00 */	li r5, 0
/* 8030B830 00307490  48 00 BB A1 */	bl VFiPFPATH_getShortName
/* 8030B834 00307494  38 61 00 19 */	addi r3, r1, 0x19
/* 8030B838 00307498  38 80 00 01 */	li r4, 1
/* 8030B83C 0030749C  48 00 00 0C */	b lbl_8030B848
lbl_8030B840:
/* 8030B840 003074A0  38 63 00 01 */	addi r3, r3, 1
/* 8030B844 003074A4  38 84 00 01 */	addi r4, r4, 1
lbl_8030B848:
/* 8030B848 003074A8  88 03 00 00 */	lbz r0, 0(r3)
/* 8030B84C 003074AC  7C 00 07 74 */	extsb r0, r0
/* 8030B850 003074B0  2C 00 00 7E */	cmpwi r0, 0x7e
/* 8030B854 003074B4  41 82 00 14 */	beq lbl_8030B868
/* 8030B858 003074B8  2C 00 00 00 */	cmpwi r0, 0
/* 8030B85C 003074BC  41 82 00 0C */	beq lbl_8030B868
/* 8030B860 003074C0  28 04 00 07 */	cmplwi r4, 7
/* 8030B864 003074C4  41 80 FF DC */	blt lbl_8030B840
lbl_8030B868:
/* 8030B868 003074C8  28 04 00 07 */	cmplwi r4, 7
/* 8030B86C 003074CC  40 80 01 E8 */	bge lbl_8030BA54
/* 8030B870 003074D0  7C 1F 20 AE */	lbzx r0, r31, r4
/* 8030B874 003074D4  7C 00 07 74 */	extsb r0, r0
/* 8030B878 003074D8  2C 00 00 7E */	cmpwi r0, 0x7e
/* 8030B87C 003074DC  40 82 01 D8 */	bne lbl_8030BA54
/* 8030B880 003074E0  38 E4 00 01 */	addi r7, r4, 1
/* 8030B884 003074E4  7C 7F 3A 14 */	add r3, r31, r7
/* 8030B888 003074E8  48 00 00 0C */	b lbl_8030B894
lbl_8030B88C:
/* 8030B88C 003074EC  38 63 00 01 */	addi r3, r3, 1
/* 8030B890 003074F0  38 E7 00 01 */	addi r7, r7, 1
lbl_8030B894:
/* 8030B894 003074F4  88 03 00 00 */	lbz r0, 0(r3)
/* 8030B898 003074F8  7C 00 07 74 */	extsb r0, r0
/* 8030B89C 003074FC  2C 00 00 30 */	cmpwi r0, 0x30
/* 8030B8A0 00307500  41 80 00 0C */	blt lbl_8030B8AC
/* 8030B8A4 00307504  2C 00 00 39 */	cmpwi r0, 0x39
/* 8030B8A8 00307508  40 81 FF E4 */	ble lbl_8030B88C
lbl_8030B8AC:
/* 8030B8AC 0030750C  7C 1F 38 AE */	lbzx r0, r31, r7
/* 8030B8B0 00307510  7C 00 07 74 */	extsb r0, r0
/* 8030B8B4 00307514  2C 00 00 2E */	cmpwi r0, 0x2e
/* 8030B8B8 00307518  41 82 00 0C */	beq lbl_8030B8C4
/* 8030B8BC 0030751C  2C 00 00 00 */	cmpwi r0, 0
/* 8030B8C0 00307520  40 82 01 94 */	bne lbl_8030BA54
lbl_8030B8C4:
/* 8030B8C4 00307524  7C 04 38 50 */	subf r0, r4, r7
/* 8030B8C8 00307528  3B C0 00 00 */	li r30, 0
/* 8030B8CC 0030752C  35 00 FF FF */	addic. r8, r0, -1
/* 8030B8D0 00307530  7D 03 43 78 */	mr r3, r8
/* 8030B8D4 00307534  41 82 01 20 */	beq lbl_8030B9F4
/* 8030B8D8 00307538  55 00 E8 FF */	rlwinm. r0, r8, 0x1d, 3, 0x1f
/* 8030B8DC 0030753C  7C 09 03 A6 */	mtctr r0
/* 8030B8E0 00307540  41 82 00 F0 */	beq lbl_8030B9D0
lbl_8030B8E4:
/* 8030B8E4 00307544  7C C8 38 50 */	subf r6, r8, r7
/* 8030B8E8 00307548  39 08 FF FF */	addi r8, r8, -1
/* 8030B8EC 0030754C  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B8F0 00307550  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B8F4 00307554  7C C8 38 50 */	subf r6, r8, r7
/* 8030B8F8 00307558  7C A0 07 74 */	extsb r0, r5
/* 8030B8FC 0030755C  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B900 00307560  7C 80 F2 14 */	add r4, r0, r30
/* 8030B904 00307564  39 08 FF FF */	addi r8, r8, -1
/* 8030B908 00307568  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B90C 0030756C  7C A0 07 74 */	extsb r0, r5
/* 8030B910 00307570  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B914 00307574  7C C8 38 50 */	subf r6, r8, r7
/* 8030B918 00307578  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B91C 0030757C  39 08 FF FF */	addi r8, r8, -1
/* 8030B920 00307580  7C 80 F2 14 */	add r4, r0, r30
/* 8030B924 00307584  7C C8 38 50 */	subf r6, r8, r7
/* 8030B928 00307588  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B92C 0030758C  7C A0 07 74 */	extsb r0, r5
/* 8030B930 00307590  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B934 00307594  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B938 00307598  39 08 FF FF */	addi r8, r8, -1
/* 8030B93C 0030759C  7C 80 F2 14 */	add r4, r0, r30
/* 8030B940 003075A0  7C C8 38 50 */	subf r6, r8, r7
/* 8030B944 003075A4  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B948 003075A8  7C A0 07 74 */	extsb r0, r5
/* 8030B94C 003075AC  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B950 003075B0  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B954 003075B4  39 08 FF FF */	addi r8, r8, -1
/* 8030B958 003075B8  7C 80 F2 14 */	add r4, r0, r30
/* 8030B95C 003075BC  7C C8 38 50 */	subf r6, r8, r7
/* 8030B960 003075C0  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B964 003075C4  7C A0 07 74 */	extsb r0, r5
/* 8030B968 003075C8  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B96C 003075CC  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B970 003075D0  39 08 FF FF */	addi r8, r8, -1
/* 8030B974 003075D4  7C 80 F2 14 */	add r4, r0, r30
/* 8030B978 003075D8  7C C8 38 50 */	subf r6, r8, r7
/* 8030B97C 003075DC  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B980 003075E0  7C A0 07 74 */	extsb r0, r5
/* 8030B984 003075E4  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B988 003075E8  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B98C 003075EC  39 08 FF FF */	addi r8, r8, -1
/* 8030B990 003075F0  7C 80 F2 14 */	add r4, r0, r30
/* 8030B994 003075F4  7C C8 38 50 */	subf r6, r8, r7
/* 8030B998 003075F8  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B99C 003075FC  7C A0 07 74 */	extsb r0, r5
/* 8030B9A0 00307600  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B9A4 00307604  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B9A8 00307608  39 08 FF FF */	addi r8, r8, -1
/* 8030B9AC 0030760C  7C 80 F2 14 */	add r4, r0, r30
/* 8030B9B0 00307610  7C A0 07 74 */	extsb r0, r5
/* 8030B9B4 00307614  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B9B8 00307618  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B9BC 0030761C  7C 80 F2 14 */	add r4, r0, r30
/* 8030B9C0 00307620  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B9C4 00307624  42 00 FF 20 */	bdnz lbl_8030B8E4
/* 8030B9C8 00307628  70 63 00 07 */	andi. r3, r3, 7
/* 8030B9CC 0030762C  41 82 00 28 */	beq lbl_8030B9F4
lbl_8030B9D0:
/* 8030B9D0 00307630  7C 69 03 A6 */	mtctr r3
lbl_8030B9D4:
/* 8030B9D4 00307634  7C C8 38 50 */	subf r6, r8, r7
/* 8030B9D8 00307638  39 08 FF FF */	addi r8, r8, -1
/* 8030B9DC 0030763C  7C BF 30 AE */	lbzx r5, r31, r6
/* 8030B9E0 00307640  1F DE 00 0A */	mulli r30, r30, 0xa
/* 8030B9E4 00307644  7C A0 07 74 */	extsb r0, r5
/* 8030B9E8 00307648  7C 80 F2 14 */	add r4, r0, r30
/* 8030B9EC 0030764C  3B C4 FF D0 */	addi r30, r4, -48
/* 8030B9F0 00307650  42 00 FF E4 */	bdnz lbl_8030B9D4
lbl_8030B9F4:
/* 8030B9F4 00307654  7F 64 DB 78 */	mr r4, r27
/* 8030B9F8 00307658  38 61 00 08 */	addi r3, r1, 8
/* 8030B9FC 0030765C  4B FF 96 F1 */	bl VFipf_strcpy
/* 8030BA00 00307660  7F C4 F3 78 */	mr r4, r30
/* 8030BA04 00307664  38 61 00 08 */	addi r3, r1, 8
/* 8030BA08 00307668  48 00 C7 E5 */	bl VFiPFPATH_parseShortNameNumeric
/* 8030BA0C 0030766C  38 61 00 18 */	addi r3, r1, 0x18
/* 8030BA10 00307670  38 81 00 08 */	addi r4, r1, 8
/* 8030BA14 00307674  48 00 B0 B9 */	bl VFiPFPATH_cmpTailSFN
/* 8030BA18 00307678  2C 03 00 00 */	cmpwi r3, 0
/* 8030BA1C 0030767C  40 82 00 38 */	bne lbl_8030BA54
/* 8030BA20 00307680  7C 1E D0 40 */	cmplw r30, r26
/* 8030BA24 00307684  41 80 00 30 */	blt lbl_8030BA54
/* 8030BA28 00307688  80 1D 18 60 */	lwz r0, 0x1860(r29)
/* 8030BA2C 0030768C  54 00 28 34 */	slwi r0, r0, 5
/* 8030BA30 00307690  7C 1A 02 14 */	add r0, r26, r0
/* 8030BA34 00307694  7C 1E 00 40 */	cmplw r30, r0
/* 8030BA38 00307698  40 80 00 1C */	bge lbl_8030BA54
/* 8030BA3C 0030769C  7F DA F0 50 */	subf r30, r26, r30
/* 8030BA40 003076A0  57 C4 E8 FA */	rlwinm r4, r30, 0x1d, 3, 0x1d
/* 8030BA44 003076A4  7C 7C 20 2E */	lwzx r3, r28, r4
/* 8030BA48 003076A8  7F 20 F0 30 */	slw r0, r25, r30
/* 8030BA4C 003076AC  7C 60 03 78 */	or r0, r3, r0
/* 8030BA50 003076B0  7C 1C 21 2E */	stwx r0, r28, r4
lbl_8030BA54:
/* 8030BA54 003076B4  38 61 00 28 */	addi r3, r1, 0x28
/* 8030BA58 003076B8  38 80 00 00 */	li r4, 0
/* 8030BA5C 003076BC  48 00 26 AD */	bl VFiPFENT_ITER_Advance
/* 8030BA60 003076C0  7C 7E 1B 78 */	mr r30, r3
lbl_8030BA64:
/* 8030BA64 003076C4  38 61 00 28 */	addi r3, r1, 0x28
/* 8030BA68 003076C8  48 00 25 95 */	bl VFiPFENT_ITER_IsAtLogicalEnd
/* 8030BA6C 003076CC  2C 03 00 00 */	cmpwi r3, 0
/* 8030BA70 003076D0  41 82 FD 78 */	beq lbl_8030B7E8
lbl_8030BA74:
/* 8030BA74 003076D4  38 60 00 00 */	li r3, 0
lbl_8030BA78:
/* 8030BA78 003076D8  39 61 00 C0 */	addi r11, r1, 0xc0
/* 8030BA7C 003076DC  4B EB B6 F1 */	bl _restgpr_25
/* 8030BA80 003076E0  80 01 00 C4 */	lwz r0, 0xc4(r1)
/* 8030BA84 003076E4  7C 08 03 A6 */	mtlr r0
/* 8030BA88 003076E8  38 21 00 C0 */	addi r1, r1, 0xc0
/* 8030BA8C 003076EC  4E 80 00 20 */	blr

.global VFiPFENT_findEmptyTailSFN
VFiPFENT_findEmptyTailSFN:
/* 8030BA90 003076F0  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 8030BA94 003076F4  7C 08 02 A6 */	mflr r0
/* 8030BA98 003076F8  90 01 00 74 */	stw r0, 0x74(r1)
/* 8030BA9C 003076FC  39 61 00 70 */	addi r11, r1, 0x70
/* 8030BAA0 00307700  4B EB B6 85 */	bl _savegpr_26
/* 8030BAA4 00307704  83 E3 02 2C */	lwz r31, 0x22c(r3)
/* 8030BAA8 00307708  38 00 00 01 */	li r0, 1
/* 8030BAAC 0030770C  7C 66 1B 78 */	mr r6, r3
/* 8030BAB0 00307710  7C 9D 23 78 */	mr r29, r4
/* 8030BAB4 00307714  90 05 00 00 */	stw r0, 0(r5)
/* 8030BAB8 00307718  7C BE 2B 78 */	mr r30, r5
/* 8030BABC 0030771C  38 61 00 18 */	addi r3, r1, 0x18
/* 8030BAC0 00307720  38 81 00 08 */	addi r4, r1, 8
/* 8030BAC4 00307724  80 A6 02 2C */	lwz r5, 0x22c(r6)
/* 8030BAC8 00307728  38 C6 02 34 */	addi r6, r6, 0x234
/* 8030BACC 0030772C  48 00 55 FD */	bl VFiPFFAT_InitFFD
/* 8030BAD0 00307730  3F 60 00 0F */	lis r27, 0x000F423F@ha
/* 8030BAD4 00307734  3B 40 00 01 */	li r26, 1
/* 8030BAD8 00307738  3B 9B 42 3F */	addi r28, r27, 0x000F423F@l
/* 8030BADC 0030773C  48 00 00 A8 */	b lbl_8030BB84
lbl_8030BAE0:
/* 8030BAE0 00307740  80 DF 18 68 */	lwz r6, 0x1868(r31)
/* 8030BAE4 00307744  7F 44 D3 78 */	mr r4, r26
/* 8030BAE8 00307748  7F A5 EB 78 */	mr r5, r29
/* 8030BAEC 0030774C  38 61 00 18 */	addi r3, r1, 0x18
/* 8030BAF0 00307750  4B FF FC 31 */	bl VFiPFENT_searchEmptyTailSFN
/* 8030BAF4 00307754  2C 03 00 00 */	cmpwi r3, 0
/* 8030BAF8 00307758  41 82 00 08 */	beq lbl_8030BB00
/* 8030BAFC 0030775C  48 00 00 94 */	b lbl_8030BB90
lbl_8030BB00:
/* 8030BB00 00307760  38 A0 00 00 */	li r5, 0
/* 8030BB04 00307764  38 80 00 00 */	li r4, 0
/* 8030BB08 00307768  48 00 00 64 */	b lbl_8030BB6C
lbl_8030BB0C:
/* 8030BB0C 0030776C  80 7F 18 68 */	lwz r3, 0x1868(r31)
/* 8030BB10 00307770  7C 63 20 2E */	lwzx r3, r3, r4
/* 8030BB14 00307774  3C 03 00 01 */	addis r0, r3, 1
/* 8030BB18 00307778  28 00 FF FF */	cmplwi r0, 0xffff
/* 8030BB1C 0030777C  41 82 00 3C */	beq lbl_8030BB58
/* 8030BB20 00307780  54 A4 10 3A */	slwi r4, r5, 2
/* 8030BB24 00307784  48 00 00 1C */	b lbl_8030BB40
lbl_8030BB28:
/* 8030BB28 00307788  7C 04 18 2E */	lwzx r0, r4, r3
/* 8030BB2C 0030778C  54 00 F8 7E */	srwi r0, r0, 1
/* 8030BB30 00307790  7C 04 19 2E */	stwx r0, r4, r3
/* 8030BB34 00307794  80 7E 00 00 */	lwz r3, 0(r30)
/* 8030BB38 00307798  38 03 00 01 */	addi r0, r3, 1
/* 8030BB3C 0030779C  90 1E 00 00 */	stw r0, 0(r30)
lbl_8030BB40:
/* 8030BB40 003077A0  80 7F 18 68 */	lwz r3, 0x1868(r31)
/* 8030BB44 003077A4  7C 04 18 2E */	lwzx r0, r4, r3
/* 8030BB48 003077A8  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8030BB4C 003077AC  40 82 FF DC */	bne lbl_8030BB28
/* 8030BB50 003077B0  3B 5B 42 40 */	addi r26, r27, 0x4240
/* 8030BB54 003077B4  48 00 00 24 */	b lbl_8030BB78
lbl_8030BB58:
/* 8030BB58 003077B8  80 7E 00 00 */	lwz r3, 0(r30)
/* 8030BB5C 003077BC  38 84 00 04 */	addi r4, r4, 4
/* 8030BB60 003077C0  38 A5 00 01 */	addi r5, r5, 1
/* 8030BB64 003077C4  38 03 00 20 */	addi r0, r3, 0x20
/* 8030BB68 003077C8  90 1E 00 00 */	stw r0, 0(r30)
lbl_8030BB6C:
/* 8030BB6C 003077CC  80 1F 18 60 */	lwz r0, 0x1860(r31)
/* 8030BB70 003077D0  7C 05 00 40 */	cmplw r5, r0
/* 8030BB74 003077D4  41 80 FF 98 */	blt lbl_8030BB0C
lbl_8030BB78:
/* 8030BB78 003077D8  80 1F 18 60 */	lwz r0, 0x1860(r31)
/* 8030BB7C 003077DC  54 00 28 34 */	slwi r0, r0, 5
/* 8030BB80 003077E0  7F 5A 02 14 */	add r26, r26, r0
lbl_8030BB84:
/* 8030BB84 003077E4  7C 1A E0 40 */	cmplw r26, r28
/* 8030BB88 003077E8  40 81 FF 58 */	ble lbl_8030BAE0
/* 8030BB8C 003077EC  38 60 00 00 */	li r3, 0
lbl_8030BB90:
/* 8030BB90 003077F0  39 61 00 70 */	addi r11, r1, 0x70
/* 8030BB94 003077F4  4B EB B5 DD */	bl _restgpr_26
/* 8030BB98 003077F8  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8030BB9C 003077FC  7C 08 03 A6 */	mtlr r0
/* 8030BBA0 00307800  38 21 00 70 */	addi r1, r1, 0x70
/* 8030BBA4 00307804  4E 80 00 20 */	blr

.global VFiPFENT_CalcCheckSum
VFiPFENT_CalcCheckSum:
/* 8030BBA8 00307808  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8030BBAC 0030780C  7C 08 02 A6 */	mflr r0
/* 8030BBB0 00307810  7C 64 1B 78 */	mr r4, r3
/* 8030BBB4 00307814  38 A0 00 00 */	li r5, 0
/* 8030BBB8 00307818  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030BBBC 0030781C  38 61 00 08 */	addi r3, r1, 8
/* 8030BBC0 00307820  38 84 02 0E */	addi r4, r4, 0x20e
/* 8030BBC4 00307824  48 00 B6 85 */	bl VFiPFPATH_putShortName
/* 8030BBC8 00307828  38 00 00 0B */	li r0, 0xb
/* 8030BBCC 0030782C  38 C1 00 08 */	addi r6, r1, 8
/* 8030BBD0 00307830  38 60 00 00 */	li r3, 0
/* 8030BBD4 00307834  38 E0 00 00 */	li r7, 0
/* 8030BBD8 00307838  7C 09 03 A6 */	mtctr r0
lbl_8030BBDC:
/* 8030BBDC 0030783C  54 E4 04 3E */	clrlwi r4, r7, 0x10
/* 8030BBE0 00307840  54 60 07 FE */	clrlwi r0, r3, 0x1f
/* 8030BBE4 00307844  7C A6 20 AE */	lbzx r5, r6, r4
/* 8030BBE8 00307848  54 64 FE 7E */	rlwinm r4, r3, 0x1f, 0x19, 0x1f
/* 8030BBEC 0030784C  7C 00 00 D0 */	neg r0, r0
/* 8030BBF0 00307850  38 E7 00 01 */	addi r7, r7, 1
/* 8030BBF4 00307854  54 03 06 30 */	rlwinm r3, r0, 0, 0x18, 0x18
/* 8030BBF8 00307858  7C 05 22 14 */	add r0, r5, r4
/* 8030BBFC 0030785C  7C 03 02 14 */	add r0, r3, r0
/* 8030BC00 00307860  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 8030BC04 00307864  42 00 FF D8 */	bdnz lbl_8030BBDC
/* 8030BC08 00307868  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8030BC0C 0030786C  7C 08 03 A6 */	mtlr r0
/* 8030BC10 00307870  38 21 00 20 */	addi r1, r1, 0x20
/* 8030BC14 00307874  4E 80 00 20 */	blr

.global VFiPFENT_LoadShortNameFromBuf
VFiPFENT_LoadShortNameFromBuf:
/* 8030BC18 00307878  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8030BC1C 0030787C  7C 08 02 A6 */	mflr r0
/* 8030BC20 00307880  88 A4 00 0B */	lbz r5, 0xb(r4)
/* 8030BC24 00307884  90 01 00 14 */	stw r0, 0x14(r1)
/* 8030BC28 00307888  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8030BC2C 0030788C  7C 7F 1B 78 */	mr r31, r3
/* 8030BC30 00307890  38 63 02 0E */	addi r3, r3, 0x20e
/* 8030BC34 00307894  48 00 B7 9D */	bl VFiPFPATH_getShortName
/* 8030BC38 00307898  88 1F 02 0E */	lbz r0, 0x20e(r31)
/* 8030BC3C 0030789C  2C 00 00 05 */	cmpwi r0, 5
/* 8030BC40 003078A0  40 82 00 0C */	bne lbl_8030BC4C
/* 8030BC44 003078A4  38 00 FF E5 */	li r0, -27
/* 8030BC48 003078A8  98 1F 02 0E */	stb r0, 0x20e(r31)
lbl_8030BC4C:
/* 8030BC4C 003078AC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8030BC50 003078B0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8030BC54 003078B4  7C 08 03 A6 */	mtlr r0
/* 8030BC58 003078B8  38 21 00 10 */	addi r1, r1, 0x10
/* 8030BC5C 003078BC  4E 80 00 20 */	blr

.global VFiPFENT_loadEntryNumericFieldsFromBuf
VFiPFENT_loadEntryNumericFieldsFromBuf:
/* 8030BC60 003078C0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8030BC64 003078C4  38 C3 02 1E */	addi r6, r3, 0x21e
/* 8030BC68 003078C8  89 04 00 0B */	lbz r8, 0xb(r4)
/* 8030BC6C 003078CC  38 03 02 20 */	addi r0, r3, 0x220
/* 8030BC70 003078D0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8030BC74 003078D4  38 A3 02 22 */	addi r5, r3, 0x222
/* 8030BC78 003078D8  89 44 00 0C */	lbz r10, 0xc(r4)
/* 8030BC7C 003078DC  39 23 02 24 */	addi r9, r3, 0x224
/* 8030BC80 003078E0  93 C1 00 08 */	stw r30, 8(r1)
/* 8030BC84 003078E4  88 E4 00 0D */	lbz r7, 0xd(r4)
/* 8030BC88 003078E8  99 03 02 1C */	stb r8, 0x21c(r3)
/* 8030BC8C 003078EC  39 03 02 26 */	addi r8, r3, 0x226
/* 8030BC90 003078F0  A1 64 00 0E */	lhz r11, 0xe(r4)
/* 8030BC94 003078F4  99 43 02 1B */	stb r10, 0x21b(r3)
/* 8030BC98 003078F8  A1 44 00 10 */	lhz r10, 0x10(r4)
/* 8030BC9C 003078FC  98 E3 02 1D */	stb r7, 0x21d(r3)
/* 8030BCA0 00307900  A1 84 00 12 */	lhz r12, 0x12(r4)
/* 8030BCA4 00307904  7D 60 37 2C */	sthbrx r11, 0, r6
/* 8030BCA8 00307908  81 64 00 1C */	lwz r11, 0x1c(r4)
/* 8030BCAC 0030790C  7D 40 07 2C */	sthbrx r10, 0, r0
/* 8030BCB0 00307910  A3 E4 00 1A */	lhz r31, 0x1a(r4)
/* 8030BCB4 00307914  55 67 42 1E */	rlwinm r7, r11, 8, 8, 0xf
/* 8030BCB8 00307918  55 66 C4 2E */	rlwinm r6, r11, 0x18, 0x10, 0x17
/* 8030BCBC 0030791C  7D 80 2F 2C */	sthbrx r12, 0, r5
/* 8030BCC0 00307920  A1 44 00 16 */	lhz r10, 0x16(r4)
/* 8030BCC4 00307924  57 E0 44 2E */	rlwinm r0, r31, 8, 0x10, 0x17
/* 8030BCC8 00307928  A3 C4 00 14 */	lhz r30, 0x14(r4)
/* 8030BCCC 0030792C  51 67 C0 0E */	rlwimi r7, r11, 0x18, 0, 7
/* 8030BCD0 00307930  A0 84 00 18 */	lhz r4, 0x18(r4)
/* 8030BCD4 00307934  51 66 46 3E */	rlwimi r6, r11, 8, 0x18, 0x1f
/* 8030BCD8 00307938  7D 40 4F 2C */	sthbrx r10, 0, r9
/* 8030BCDC 0030793C  57 C5 44 2E */	rlwinm r5, r30, 8, 0x10, 0x17
/* 8030BCE0 00307940  53 C5 C6 3E */	rlwimi r5, r30, 0x18, 0x18, 0x1f
/* 8030BCE4 00307944  53 E0 C6 3E */	rlwimi r0, r31, 0x18, 0x18, 0x1f
/* 8030BCE8 00307948  7C 80 47 2C */	sthbrx r4, 0, r8
/* 8030BCEC 0030794C  7C E4 33 78 */	or r4, r7, r6
/* 8030BCF0 00307950  50 A0 80 1E */	rlwimi r0, r5, 0x10, 0, 0xf
/* 8030BCF4 00307954  90 83 02 28 */	stw r4, 0x228(r3)
/* 8030BCF8 00307958  90 03 02 34 */	stw r0, 0x234(r3)
/* 8030BCFC 0030795C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8030BD00 00307960  83 C1 00 08 */	lwz r30, 8(r1)
/* 8030BD04 00307964  38 21 00 10 */	addi r1, r1, 0x10
/* 8030BD08 00307968  4E 80 00 20 */	blr

.global VFiPFENT_LoadLFNEntryFieldsFromBuf
VFiPFENT_LoadLFNEntryFieldsFromBuf:
/* 8030BD0C 0030796C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8030BD10 00307970  7C 08 02 A6 */	mflr r0
/* 8030BD14 00307974  88 E4 00 00 */	lbz r7, 0(r4)
/* 8030BD18 00307978  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030BD1C 0030797C  54 E5 06 B0 */	rlwinm r5, r7, 0, 0x1a, 0x18
/* 8030BD20 00307980  88 C4 00 0D */	lbz r6, 0xd(r4)
/* 8030BD24 00307984  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8030BD28 00307988  2C 05 00 14 */	cmpwi r5, 0x14
/* 8030BD2C 0030798C  7C 7F 1B 78 */	mr r31, r3
/* 8030BD30 00307990  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8030BD34 00307994  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8030BD38 00307998  93 81 00 10 */	stw r28, 0x10(r1)
/* 8030BD3C 0030799C  7C 9C 23 78 */	mr r28, r4
/* 8030BD40 003079A0  40 81 00 1C */	ble lbl_8030BD5C
/* 8030BD44 003079A4  38 00 00 00 */	li r0, 0
/* 8030BD48 003079A8  98 03 02 0B */	stb r0, 0x20b(r3)
/* 8030BD4C 003079AC  98 03 02 0C */	stb r0, 0x20c(r3)
/* 8030BD50 003079B0  98 03 02 0A */	stb r0, 0x20a(r3)
/* 8030BD54 003079B4  38 60 00 21 */	li r3, 0x21
/* 8030BD58 003079B8  48 00 01 6C */	b lbl_8030BEC4
lbl_8030BD5C:
/* 8030BD5C 003079BC  54 E0 06 73 */	rlwinm. r0, r7, 0, 0x19, 0x19
/* 8030BD60 003079C0  41 82 00 18 */	beq lbl_8030BD78
/* 8030BD64 003079C4  38 00 00 00 */	li r0, 0
/* 8030BD68 003079C8  54 A7 06 3E */	clrlwi r7, r5, 0x18
/* 8030BD6C 003079CC  98 03 02 0A */	stb r0, 0x20a(r3)
/* 8030BD70 003079D0  3B C0 00 01 */	li r30, 1
/* 8030BD74 003079D4  48 00 00 50 */	b lbl_8030BDC4
lbl_8030BD78:
/* 8030BD78 003079D8  88 03 02 0A */	lbz r0, 0x20a(r3)
/* 8030BD7C 003079DC  3B C0 00 00 */	li r30, 0
/* 8030BD80 003079E0  2C 00 00 00 */	cmpwi r0, 0
/* 8030BD84 003079E4  40 82 00 0C */	bne lbl_8030BD90
/* 8030BD88 003079E8  38 60 00 21 */	li r3, 0x21
/* 8030BD8C 003079EC  48 00 01 38 */	b lbl_8030BEC4
lbl_8030BD90:
/* 8030BD90 003079F0  88 A3 02 0B */	lbz r5, 0x20b(r3)
/* 8030BD94 003079F4  38 05 FF FF */	addi r0, r5, -1
/* 8030BD98 003079F8  7C 07 00 00 */	cmpw r7, r0
/* 8030BD9C 003079FC  40 82 00 10 */	bne lbl_8030BDAC
/* 8030BDA0 00307A00  88 03 02 0C */	lbz r0, 0x20c(r3)
/* 8030BDA4 00307A04  7C 06 00 40 */	cmplw r6, r0
/* 8030BDA8 00307A08  41 82 00 1C */	beq lbl_8030BDC4
lbl_8030BDAC:
/* 8030BDAC 00307A0C  38 00 00 00 */	li r0, 0
/* 8030BDB0 00307A10  98 03 02 0B */	stb r0, 0x20b(r3)
/* 8030BDB4 00307A14  98 03 02 0C */	stb r0, 0x20c(r3)
/* 8030BDB8 00307A18  98 03 02 0A */	stb r0, 0x20a(r3)
/* 8030BDBC 00307A1C  38 60 00 21 */	li r3, 0x21
/* 8030BDC0 00307A20  48 00 01 04 */	b lbl_8030BEC4
lbl_8030BDC4:
/* 8030BDC4 00307A24  54 E5 06 3E */	clrlwi r5, r7, 0x18
/* 8030BDC8 00307A28  98 E3 02 0B */	stb r7, 0x20b(r3)
/* 8030BDCC 00307A2C  38 05 FF FF */	addi r0, r5, -1
/* 8030BDD0 00307A30  38 84 00 01 */	addi r4, r4, 1
/* 8030BDD4 00307A34  1C 00 00 1A */	mulli r0, r0, 0x1a
/* 8030BDD8 00307A38  98 C3 02 0C */	stb r6, 0x20c(r3)
/* 8030BDDC 00307A3C  38 A0 00 0A */	li r5, 0xa
/* 8030BDE0 00307A40  7F A3 02 14 */	add r29, r3, r0
/* 8030BDE4 00307A44  7F A3 EB 78 */	mr r3, r29
/* 8030BDE8 00307A48  4B FF 90 C5 */	bl VFipf_memcpy
/* 8030BDEC 00307A4C  38 7D 00 0A */	addi r3, r29, 0xa
/* 8030BDF0 00307A50  38 9C 00 0E */	addi r4, r28, 0xe
/* 8030BDF4 00307A54  38 A0 00 0C */	li r5, 0xc
/* 8030BDF8 00307A58  4B FF 90 B5 */	bl VFipf_memcpy
/* 8030BDFC 00307A5C  38 7D 00 16 */	addi r3, r29, 0x16
/* 8030BE00 00307A60  38 9C 00 1C */	addi r4, r28, 0x1c
/* 8030BE04 00307A64  38 A0 00 04 */	li r5, 4
/* 8030BE08 00307A68  4B FF 90 A5 */	bl VFipf_memcpy
/* 8030BE0C 00307A6C  7F A3 EB 78 */	mr r3, r29
/* 8030BE10 00307A70  38 80 00 0A */	li r4, 0xa
/* 8030BE14 00307A74  4B FF 93 AD */	bl VFiPF_LE16_TO_U16_STR
/* 8030BE18 00307A78  38 7D 00 0A */	addi r3, r29, 0xa
/* 8030BE1C 00307A7C  38 80 00 0C */	li r4, 0xc
/* 8030BE20 00307A80  4B FF 93 A1 */	bl VFiPF_LE16_TO_U16_STR
/* 8030BE24 00307A84  38 7D 00 16 */	addi r3, r29, 0x16
/* 8030BE28 00307A88  38 80 00 04 */	li r4, 4
/* 8030BE2C 00307A8C  4B FF 93 95 */	bl VFiPF_LE16_TO_U16_STR
/* 8030BE30 00307A90  2C 1E 00 00 */	cmpwi r30, 0
/* 8030BE34 00307A94  41 82 00 80 */	beq lbl_8030BEB4
/* 8030BE38 00307A98  38 9D 00 1A */	addi r4, r29, 0x1a
/* 8030BE3C 00307A9C  38 60 00 00 */	li r3, 0
/* 8030BE40 00307AA0  38 04 00 01 */	addi r0, r4, 1
/* 8030BE44 00307AA4  B0 7D 00 1A */	sth r3, 0x1a(r29)
/* 8030BE48 00307AA8  7C 1D 00 50 */	subf r0, r29, r0
/* 8030BE4C 00307AAC  54 00 F8 7E */	srwi r0, r0, 1
/* 8030BE50 00307AB0  7C 09 03 A6 */	mtctr r0
/* 8030BE54 00307AB4  7C 1D 20 40 */	cmplw r29, r4
/* 8030BE58 00307AB8  40 80 00 20 */	bge lbl_8030BE78
lbl_8030BE5C:
/* 8030BE5C 00307ABC  A0 1D 00 00 */	lhz r0, 0(r29)
/* 8030BE60 00307AC0  2C 00 00 00 */	cmpwi r0, 0
/* 8030BE64 00307AC4  40 82 00 0C */	bne lbl_8030BE70
/* 8030BE68 00307AC8  3B BD 00 02 */	addi r29, r29, 2
/* 8030BE6C 00307ACC  48 00 00 0C */	b lbl_8030BE78
lbl_8030BE70:
/* 8030BE70 00307AD0  3B BD 00 02 */	addi r29, r29, 2
/* 8030BE74 00307AD4  42 00 FF E8 */	bdnz lbl_8030BE5C
lbl_8030BE78:
/* 8030BE78 00307AD8  38 04 00 01 */	addi r0, r4, 1
/* 8030BE7C 00307ADC  7C 1D 00 50 */	subf r0, r29, r0
/* 8030BE80 00307AE0  54 00 F8 7E */	srwi r0, r0, 1
/* 8030BE84 00307AE4  7C 09 03 A6 */	mtctr r0
/* 8030BE88 00307AE8  7C 1D 20 40 */	cmplw r29, r4
/* 8030BE8C 00307AEC  40 80 00 28 */	bge lbl_8030BEB4
lbl_8030BE90:
/* 8030BE90 00307AF0  A0 1D 00 00 */	lhz r0, 0(r29)
/* 8030BE94 00307AF4  28 00 FF FF */	cmplwi r0, 0xffff
/* 8030BE98 00307AF8  41 82 00 14 */	beq lbl_8030BEAC
/* 8030BE9C 00307AFC  38 00 00 00 */	li r0, 0
/* 8030BEA0 00307B00  38 60 00 21 */	li r3, 0x21
/* 8030BEA4 00307B04  98 1F 02 0A */	stb r0, 0x20a(r31)
/* 8030BEA8 00307B08  48 00 00 1C */	b lbl_8030BEC4
lbl_8030BEAC:
/* 8030BEAC 00307B0C  3B BD 00 02 */	addi r29, r29, 2
/* 8030BEB0 00307B10  42 00 FF E0 */	bdnz lbl_8030BE90
lbl_8030BEB4:
/* 8030BEB4 00307B14  88 9F 02 0A */	lbz r4, 0x20a(r31)
/* 8030BEB8 00307B18  38 60 00 00 */	li r3, 0
/* 8030BEBC 00307B1C  38 04 00 01 */	addi r0, r4, 1
/* 8030BEC0 00307B20  98 1F 02 0A */	stb r0, 0x20a(r31)
lbl_8030BEC4:
/* 8030BEC4 00307B24  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8030BEC8 00307B28  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8030BECC 00307B2C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8030BED0 00307B30  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8030BED4 00307B34  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8030BED8 00307B38  7C 08 03 A6 */	mtlr r0
/* 8030BEDC 00307B3C  38 21 00 20 */	addi r1, r1, 0x20
/* 8030BEE0 00307B40  4E 80 00 20 */	blr

.global VFiPFENT_storeLFNEntryFieldsToBuf
VFiPFENT_storeLFNEntryFieldsToBuf:
/* 8030BEE4 00307B44  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8030BEE8 00307B48  7C 08 02 A6 */	mflr r0
/* 8030BEEC 00307B4C  2C 07 00 00 */	cmpwi r7, 0
/* 8030BEF0 00307B50  90 01 00 14 */	stw r0, 0x14(r1)
/* 8030BEF4 00307B54  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8030BEF8 00307B58  93 C1 00 08 */	stw r30, 8(r1)
/* 8030BEFC 00307B5C  7C 7E 1B 78 */	mr r30, r3
/* 8030BF00 00307B60  41 82 00 10 */	beq lbl_8030BF10
/* 8030BF04 00307B64  60 A0 00 40 */	ori r0, r5, 0x40
/* 8030BF08 00307B68  98 03 00 00 */	stb r0, 0(r3)
/* 8030BF0C 00307B6C  48 00 00 08 */	b lbl_8030BF14
lbl_8030BF10:
/* 8030BF10 00307B70  98 A3 00 00 */	stb r5, 0(r3)
lbl_8030BF14:
/* 8030BF14 00307B74  38 05 FF FF */	addi r0, r5, -1
/* 8030BF18 00307B78  38 A0 00 00 */	li r5, 0
/* 8030BF1C 00307B7C  1C 00 00 1A */	mulli r0, r0, 0x1a
/* 8030BF20 00307B80  39 00 00 0F */	li r8, 0xf
/* 8030BF24 00307B84  2C 07 00 00 */	cmpwi r7, 0
/* 8030BF28 00307B88  99 03 00 0B */	stb r8, 0xb(r3)
/* 8030BF2C 00307B8C  98 C3 00 0D */	stb r6, 0xd(r3)
/* 8030BF30 00307B90  7F E4 02 14 */	add r31, r4, r0
/* 8030BF34 00307B94  98 A3 00 0C */	stb r5, 0xc(r3)
/* 8030BF38 00307B98  B0 A3 00 1A */	sth r5, 0x1a(r3)
/* 8030BF3C 00307B9C  41 82 00 A8 */	beq lbl_8030BFE4
/* 8030BF40 00307BA0  38 BF 00 1A */	addi r5, r31, 0x1a
/* 8030BF44 00307BA4  7F E6 FB 78 */	mr r6, r31
/* 8030BF48 00307BA8  38 05 00 01 */	addi r0, r5, 1
/* 8030BF4C 00307BAC  7C 1F 00 50 */	subf r0, r31, r0
/* 8030BF50 00307BB0  54 00 F8 7E */	srwi r0, r0, 1
/* 8030BF54 00307BB4  7C 09 03 A6 */	mtctr r0
/* 8030BF58 00307BB8  7C 1F 28 40 */	cmplw r31, r5
/* 8030BF5C 00307BBC  40 80 00 20 */	bge lbl_8030BF7C
lbl_8030BF60:
/* 8030BF60 00307BC0  A0 06 00 00 */	lhz r0, 0(r6)
/* 8030BF64 00307BC4  2C 00 00 00 */	cmpwi r0, 0
/* 8030BF68 00307BC8  40 82 00 0C */	bne lbl_8030BF74
/* 8030BF6C 00307BCC  38 C6 00 02 */	addi r6, r6, 2
/* 8030BF70 00307BD0  48 00 00 0C */	b lbl_8030BF7C
lbl_8030BF74:
/* 8030BF74 00307BD4  38 C6 00 02 */	addi r6, r6, 2
/* 8030BF78 00307BD8  42 00 FF E8 */	bdnz lbl_8030BF60
lbl_8030BF7C:
/* 8030BF7C 00307BDC  38 85 00 01 */	addi r4, r5, 1
/* 8030BF80 00307BE0  7C 06 28 40 */	cmplw r6, r5
/* 8030BF84 00307BE4  7C 86 20 50 */	subf r4, r6, r4
/* 8030BF88 00307BE8  3C A0 00 01 */	lis r5, 0x0000FFFF@ha
/* 8030BF8C 00307BEC  38 A5 FF FF */	addi r5, r5, 0x0000FFFF@l
/* 8030BF90 00307BF0  54 84 F8 7E */	srwi r4, r4, 1
/* 8030BF94 00307BF4  40 80 00 50 */	bge lbl_8030BFE4
/* 8030BF98 00307BF8  54 80 E8 FF */	rlwinm. r0, r4, 0x1d, 3, 0x1f
/* 8030BF9C 00307BFC  7C 09 03 A6 */	mtctr r0
/* 8030BFA0 00307C00  41 82 00 34 */	beq lbl_8030BFD4
lbl_8030BFA4:
/* 8030BFA4 00307C04  B0 A6 00 00 */	sth r5, 0(r6)
/* 8030BFA8 00307C08  B0 A6 00 02 */	sth r5, 2(r6)
/* 8030BFAC 00307C0C  B0 A6 00 04 */	sth r5, 4(r6)
/* 8030BFB0 00307C10  B0 A6 00 06 */	sth r5, 6(r6)
/* 8030BFB4 00307C14  B0 A6 00 08 */	sth r5, 8(r6)
/* 8030BFB8 00307C18  B0 A6 00 0A */	sth r5, 0xa(r6)
/* 8030BFBC 00307C1C  B0 A6 00 0C */	sth r5, 0xc(r6)
/* 8030BFC0 00307C20  B0 A6 00 0E */	sth r5, 0xe(r6)
/* 8030BFC4 00307C24  38 C6 00 10 */	addi r6, r6, 0x10
/* 8030BFC8 00307C28  42 00 FF DC */	bdnz lbl_8030BFA4
/* 8030BFCC 00307C2C  70 84 00 07 */	andi. r4, r4, 7
/* 8030BFD0 00307C30  41 82 00 14 */	beq lbl_8030BFE4
lbl_8030BFD4:
/* 8030BFD4 00307C34  7C 89 03 A6 */	mtctr r4
lbl_8030BFD8:
/* 8030BFD8 00307C38  B0 A6 00 00 */	sth r5, 0(r6)
/* 8030BFDC 00307C3C  38 C6 00 02 */	addi r6, r6, 2
/* 8030BFE0 00307C40  42 00 FF F8 */	bdnz lbl_8030BFD8
lbl_8030BFE4:
/* 8030BFE4 00307C44  7F E4 FB 78 */	mr r4, r31
/* 8030BFE8 00307C48  38 A0 00 0A */	li r5, 0xa
/* 8030BFEC 00307C4C  38 63 00 01 */	addi r3, r3, 1
/* 8030BFF0 00307C50  4B FF 8E BD */	bl VFipf_memcpy
/* 8030BFF4 00307C54  38 7E 00 0E */	addi r3, r30, 0xe
/* 8030BFF8 00307C58  38 9F 00 0A */	addi r4, r31, 0xa
/* 8030BFFC 00307C5C  38 A0 00 0C */	li r5, 0xc
/* 8030C000 00307C60  4B FF 8E AD */	bl VFipf_memcpy
/* 8030C004 00307C64  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8030C008 00307C68  38 9F 00 16 */	addi r4, r31, 0x16
/* 8030C00C 00307C6C  38 A0 00 04 */	li r5, 4
/* 8030C010 00307C70  4B FF 8E 9D */	bl VFipf_memcpy
/* 8030C014 00307C74  38 7E 00 01 */	addi r3, r30, 1
/* 8030C018 00307C78  38 80 00 0A */	li r4, 0xa
/* 8030C01C 00307C7C  4B FF 91 A5 */	bl VFiPF_LE16_TO_U16_STR
/* 8030C020 00307C80  38 7E 00 0E */	addi r3, r30, 0xe
/* 8030C024 00307C84  38 80 00 0C */	li r4, 0xc
/* 8030C028 00307C88  4B FF 91 99 */	bl VFiPF_LE16_TO_U16_STR
/* 8030C02C 00307C8C  38 7E 00 1C */	addi r3, r30, 0x1c
/* 8030C030 00307C90  38 80 00 04 */	li r4, 4
/* 8030C034 00307C94  4B FF 91 8D */	bl VFiPF_LE16_TO_U16_STR
/* 8030C038 00307C98  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8030C03C 00307C9C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8030C040 00307CA0  83 C1 00 08 */	lwz r30, 8(r1)
/* 8030C044 00307CA4  7C 08 03 A6 */	mtlr r0
/* 8030C048 00307CA8  38 21 00 10 */	addi r1, r1, 0x10
/* 8030C04C 00307CAC  4E 80 00 20 */	blr

.global VFiPFENT_findEntryPos
VFiPFENT_findEntryPos:
/* 8030C050 00307CB0  94 21 FF 50 */	stwu r1, -0xb0(r1)
/* 8030C054 00307CB4  7C 08 02 A6 */	mflr r0
/* 8030C058 00307CB8  90 01 00 B4 */	stw r0, 0xb4(r1)
/* 8030C05C 00307CBC  39 61 00 B0 */	addi r11, r1, 0xb0
/* 8030C060 00307CC0  4B EB B0 B9 */	bl _savegpr_23
/* 8030C064 00307CC4  2C 03 00 00 */	cmpwi r3, 0
/* 8030C068 00307CC8  7C 79 1B 78 */	mr r25, r3
/* 8030C06C 00307CCC  90 A1 00 08 */	stw r5, 8(r1)
/* 8030C070 00307CD0  7C 9A 23 78 */	mr r26, r4
/* 8030C074 00307CD4  7C DB 33 78 */	mr r27, r6
/* 8030C078 00307CD8  7C FC 3B 78 */	mr r28, r7
/* 8030C07C 00307CDC  7D 1D 43 78 */	mr r29, r8
/* 8030C080 00307CE0  7D 3E 4B 78 */	mr r30, r9
/* 8030C084 00307CE4  7D 5F 53 78 */	mr r31, r10
/* 8030C088 00307CE8  38 60 00 00 */	li r3, 0
/* 8030C08C 00307CEC  40 82 00 1C */	bne lbl_8030C0A8
/* 8030C090 00307CF0  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C094 00307CF4  38 60 00 0A */	li r3, 0xa
/* 8030C098 00307CF8  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C09C 00307CFC  90 09 00 00 */	stw r0, 0(r9)
/* 8030C0A0 00307D00  90 0A 00 00 */	stw r0, 0(r10)
/* 8030C0A4 00307D04  48 00 02 E0 */	b lbl_8030C384
lbl_8030C0A8:
/* 8030C0A8 00307D08  2C 04 00 00 */	cmpwi r4, 0
/* 8030C0AC 00307D0C  40 82 00 1C */	bne lbl_8030C0C8
/* 8030C0B0 00307D10  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C0B4 00307D14  38 60 00 0A */	li r3, 0xa
/* 8030C0B8 00307D18  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C0BC 00307D1C  90 09 00 00 */	stw r0, 0(r9)
/* 8030C0C0 00307D20  90 0A 00 00 */	stw r0, 0(r10)
/* 8030C0C4 00307D24  48 00 02 C0 */	b lbl_8030C384
lbl_8030C0C8:
/* 8030C0C8 00307D28  3D 60 00 0F */	lis r11, 0x000F423F@ha
/* 8030C0CC 00307D2C  39 6B 42 3F */	addi r11, r11, 0x000F423F@l
/* 8030C0D0 00307D30  7C 05 58 40 */	cmplw r5, r11
/* 8030C0D4 00307D34  41 80 00 14 */	blt lbl_8030C0E8
/* 8030C0D8 00307D38  91 69 00 00 */	stw r11, 0(r9)
/* 8030C0DC 00307D3C  38 60 00 0A */	li r3, 0xa
/* 8030C0E0 00307D40  91 6A 00 00 */	stw r11, 0(r10)
/* 8030C0E4 00307D44  48 00 02 A0 */	b lbl_8030C384
lbl_8030C0E8:
/* 8030C0E8 00307D48  2C 06 00 00 */	cmpwi r6, 0
/* 8030C0EC 00307D4C  40 82 00 14 */	bne lbl_8030C100
/* 8030C0F0 00307D50  91 69 00 00 */	stw r11, 0(r9)
/* 8030C0F4 00307D54  38 60 00 0A */	li r3, 0xa
/* 8030C0F8 00307D58  91 6A 00 00 */	stw r11, 0(r10)
/* 8030C0FC 00307D5C  48 00 02 88 */	b lbl_8030C384
lbl_8030C100:
/* 8030C100 00307D60  7C E0 40 39 */	and. r0, r7, r8
/* 8030C104 00307D64  41 82 00 14 */	beq lbl_8030C118
/* 8030C108 00307D68  91 69 00 00 */	stw r11, 0(r9)
/* 8030C10C 00307D6C  38 60 00 0A */	li r3, 0xa
/* 8030C110 00307D70  91 6A 00 00 */	stw r11, 0(r10)
/* 8030C114 00307D74  48 00 02 70 */	b lbl_8030C384
lbl_8030C118:
/* 8030C118 00307D78  38 C0 00 00 */	li r6, 0
/* 8030C11C 00307D7C  3C A0 80 58 */	lis r5, lbl_8057F5C8@ha
/* 8030C120 00307D80  90 C9 00 00 */	stw r6, 0(r9)
/* 8030C124 00307D84  38 A5 F5 C8 */	addi r5, r5, lbl_8057F5C8@l
/* 8030C128 00307D88  90 CA 00 00 */	stw r6, 0(r10)
/* 8030C12C 00307D8C  98 C4 02 0A */	stb r6, 0x20a(r4)
/* 8030C130 00307D90  98 C4 02 0B */	stb r6, 0x20b(r4)
/* 8030C134 00307D94  98 C4 02 0C */	stb r6, 0x20c(r4)
/* 8030C138 00307D98  B0 C4 00 00 */	sth r6, 0(r4)
/* 8030C13C 00307D9C  80 05 00 3C */	lwz r0, 0x3c(r5)
/* 8030C140 00307DA0  90 C1 00 0C */	stw r6, 0xc(r1)
/* 8030C144 00307DA4  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8030C148 00307DA8  28 00 00 02 */	cmplwi r0, 2
/* 8030C14C 00307DAC  40 82 00 10 */	bne lbl_8030C15C
/* 8030C150 00307DB0  7F 63 DB 78 */	mr r3, r27
/* 8030C154 00307DB4  38 81 00 08 */	addi r4, r1, 8
/* 8030C158 00307DB8  48 00 C6 01 */	bl VFiPFPATH_GetExtShortNameIndex
lbl_8030C15C:
/* 8030C15C 00307DBC  80 99 00 00 */	lwz r4, 0(r25)
/* 8030C160 00307DC0  28 03 00 01 */	cmplwi r3, 1
/* 8030C164 00307DC4  80 19 00 04 */	lwz r0, 4(r25)
/* 8030C168 00307DC8  90 81 00 18 */	stw r4, 0x18(r1)
/* 8030C16C 00307DCC  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8030C170 00307DD0  80 79 00 08 */	lwz r3, 8(r25)
/* 8030C174 00307DD4  80 19 00 0C */	lwz r0, 0xc(r25)
/* 8030C178 00307DD8  90 61 00 20 */	stw r3, 0x20(r1)
/* 8030C17C 00307DDC  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030C180 00307DE0  80 79 00 10 */	lwz r3, 0x10(r25)
/* 8030C184 00307DE4  80 19 00 14 */	lwz r0, 0x14(r25)
/* 8030C188 00307DE8  90 61 00 28 */	stw r3, 0x28(r1)
/* 8030C18C 00307DEC  90 01 00 2C */	stw r0, 0x2c(r1)
/* 8030C190 00307DF0  80 79 00 18 */	lwz r3, 0x18(r25)
/* 8030C194 00307DF4  80 19 00 1C */	lwz r0, 0x1c(r25)
/* 8030C198 00307DF8  90 61 00 30 */	stw r3, 0x30(r1)
/* 8030C19C 00307DFC  90 01 00 34 */	stw r0, 0x34(r1)
/* 8030C1A0 00307E00  80 79 00 20 */	lwz r3, 0x20(r25)
/* 8030C1A4 00307E04  80 19 00 24 */	lwz r0, 0x24(r25)
/* 8030C1A8 00307E08  90 61 00 38 */	stw r3, 0x38(r1)
/* 8030C1AC 00307E0C  90 01 00 3C */	stw r0, 0x3c(r1)
/* 8030C1B0 00307E10  80 79 00 28 */	lwz r3, 0x28(r25)
/* 8030C1B4 00307E14  80 19 00 2C */	lwz r0, 0x2c(r25)
/* 8030C1B8 00307E18  90 61 00 40 */	stw r3, 0x40(r1)
/* 8030C1BC 00307E1C  90 01 00 44 */	stw r0, 0x44(r1)
/* 8030C1C0 00307E20  80 79 00 30 */	lwz r3, 0x30(r25)
/* 8030C1C4 00307E24  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8030C1C8 00307E28  90 61 00 48 */	stw r3, 0x48(r1)
/* 8030C1CC 00307E2C  90 01 00 4C */	stw r0, 0x4c(r1)
/* 8030C1D0 00307E30  40 82 00 E4 */	bne lbl_8030C2B4
/* 8030C1D4 00307E34  80 81 00 08 */	lwz r4, 8(r1)
/* 8030C1D8 00307E38  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C1DC 00307E3C  38 84 FF FF */	addi r4, r4, -1
/* 8030C1E0 00307E40  48 00 1D 19 */	bl VFiPFENT_ITER_IteratorInitialize
/* 8030C1E4 00307E44  2C 03 00 00 */	cmpwi r3, 0
/* 8030C1E8 00307E48  41 82 00 18 */	beq lbl_8030C200
/* 8030C1EC 00307E4C  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C1F0 00307E50  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C1F4 00307E54  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C1F8 00307E58  90 1F 00 00 */	stw r0, 0(r31)
/* 8030C1FC 00307E5C  48 00 01 88 */	b lbl_8030C384
lbl_8030C200:
/* 8030C200 00307E60  7F 43 D3 78 */	mr r3, r26
/* 8030C204 00307E64  7F 65 DB 78 */	mr r5, r27
/* 8030C208 00307E68  7F 86 E3 78 */	mr r6, r28
/* 8030C20C 00307E6C  7F A7 EB 78 */	mr r7, r29
/* 8030C210 00307E70  38 81 00 10 */	addi r4, r1, 0x10
/* 8030C214 00307E74  39 01 00 0C */	addi r8, r1, 0xc
/* 8030C218 00307E78  4B FF F2 69 */	bl VFiPFENT_getEntry
/* 8030C21C 00307E7C  2C 03 00 00 */	cmpwi r3, 0
/* 8030C220 00307E80  40 82 00 1C */	bne lbl_8030C23C
/* 8030C224 00307E84  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C228 00307E88  38 60 00 03 */	li r3, 3
/* 8030C22C 00307E8C  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C230 00307E90  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C234 00307E94  90 1F 00 00 */	stw r0, 0(r31)
/* 8030C238 00307E98  48 00 01 4C */	b lbl_8030C384
lbl_8030C23C:
/* 8030C23C 00307E9C  88 01 00 5C */	lbz r0, 0x5c(r1)
/* 8030C240 00307EA0  54 00 06 73 */	rlwinm. r0, r0, 0, 0x19, 0x19
/* 8030C244 00307EA4  41 82 01 2C */	beq lbl_8030C370
/* 8030C248 00307EA8  80 81 00 08 */	lwz r4, 8(r1)
/* 8030C24C 00307EAC  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C250 00307EB0  48 00 1C A9 */	bl VFiPFENT_ITER_IteratorInitialize
/* 8030C254 00307EB4  2C 03 00 00 */	cmpwi r3, 0
/* 8030C258 00307EB8  41 82 00 18 */	beq lbl_8030C270
/* 8030C25C 00307EBC  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C260 00307EC0  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C264 00307EC4  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C268 00307EC8  90 1F 00 00 */	stw r0, 0(r31)
/* 8030C26C 00307ECC  48 00 01 18 */	b lbl_8030C384
lbl_8030C270:
/* 8030C270 00307ED0  7F 43 D3 78 */	mr r3, r26
/* 8030C274 00307ED4  7F 65 DB 78 */	mr r5, r27
/* 8030C278 00307ED8  7F 86 E3 78 */	mr r6, r28
/* 8030C27C 00307EDC  7F A7 EB 78 */	mr r7, r29
/* 8030C280 00307EE0  38 81 00 10 */	addi r4, r1, 0x10
/* 8030C284 00307EE4  39 01 00 0C */	addi r8, r1, 0xc
/* 8030C288 00307EE8  4B FF F1 F9 */	bl VFiPFENT_getEntry
/* 8030C28C 00307EEC  2C 03 00 00 */	cmpwi r3, 0
/* 8030C290 00307EF0  40 82 00 E0 */	bne lbl_8030C370
/* 8030C294 00307EF4  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8030C298 00307EF8  38 60 00 00 */	li r3, 0
/* 8030C29C 00307EFC  90 1A 02 2C */	stw r0, 0x22c(r26)
/* 8030C2A0 00307F00  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8030C2A4 00307F04  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C2A8 00307F08  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8030C2AC 00307F0C  90 1F 00 00 */	stw r0, 0(r31)
/* 8030C2B0 00307F10  48 00 00 D4 */	b lbl_8030C384
lbl_8030C2B4:
/* 8030C2B4 00307F14  80 81 00 08 */	lwz r4, 8(r1)
/* 8030C2B8 00307F18  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C2BC 00307F1C  48 00 1C 3D */	bl VFiPFENT_ITER_IteratorInitialize
/* 8030C2C0 00307F20  7C 77 1B 78 */	mr r23, r3
/* 8030C2C4 00307F24  3B 00 00 00 */	li r24, 0
/* 8030C2C8 00307F28  48 00 00 98 */	b lbl_8030C360
lbl_8030C2CC:
/* 8030C2CC 00307F2C  2C 17 00 00 */	cmpwi r23, 0
/* 8030C2D0 00307F30  41 82 00 1C */	beq lbl_8030C2EC
/* 8030C2D4 00307F34  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C2D8 00307F38  7E E3 BB 78 */	mr r3, r23
/* 8030C2DC 00307F3C  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C2E0 00307F40  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C2E4 00307F44  90 1F 00 00 */	stw r0, 0(r31)
/* 8030C2E8 00307F48  48 00 00 9C */	b lbl_8030C384
lbl_8030C2EC:
/* 8030C2EC 00307F4C  88 01 00 5C */	lbz r0, 0x5c(r1)
/* 8030C2F0 00307F50  2C 00 00 00 */	cmpwi r0, 0
/* 8030C2F4 00307F54  41 82 00 7C */	beq lbl_8030C370
/* 8030C2F8 00307F58  28 00 00 E5 */	cmplwi r0, 0xe5
/* 8030C2FC 00307F5C  40 82 00 10 */	bne lbl_8030C30C
/* 8030C300 00307F60  9B 1A 02 0A */	stb r24, 0x20a(r26)
/* 8030C304 00307F64  B3 1A 00 00 */	sth r24, 0(r26)
/* 8030C308 00307F68  48 00 00 48 */	b lbl_8030C350
lbl_8030C30C:
/* 8030C30C 00307F6C  7F 43 D3 78 */	mr r3, r26
/* 8030C310 00307F70  7F 65 DB 78 */	mr r5, r27
/* 8030C314 00307F74  7F 86 E3 78 */	mr r6, r28
/* 8030C318 00307F78  7F A7 EB 78 */	mr r7, r29
/* 8030C31C 00307F7C  38 81 00 10 */	addi r4, r1, 0x10
/* 8030C320 00307F80  39 01 00 0C */	addi r8, r1, 0xc
/* 8030C324 00307F84  4B FF F1 5D */	bl VFiPFENT_getEntry
/* 8030C328 00307F88  2C 03 00 00 */	cmpwi r3, 0
/* 8030C32C 00307F8C  40 82 00 24 */	bne lbl_8030C350
/* 8030C330 00307F90  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8030C334 00307F94  38 60 00 00 */	li r3, 0
/* 8030C338 00307F98  90 1A 02 2C */	stw r0, 0x22c(r26)
/* 8030C33C 00307F9C  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8030C340 00307FA0  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C344 00307FA4  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8030C348 00307FA8  90 1F 00 00 */	stw r0, 0(r31)
/* 8030C34C 00307FAC  48 00 00 38 */	b lbl_8030C384
lbl_8030C350:
/* 8030C350 00307FB0  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C354 00307FB4  38 80 00 00 */	li r4, 0
/* 8030C358 00307FB8  48 00 1D B1 */	bl VFiPFENT_ITER_Advance
/* 8030C35C 00307FBC  7C 77 1B 78 */	mr r23, r3
lbl_8030C360:
/* 8030C360 00307FC0  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C364 00307FC4  48 00 1C 99 */	bl VFiPFENT_ITER_IsAtLogicalEnd
/* 8030C368 00307FC8  2C 03 00 00 */	cmpwi r3, 0
/* 8030C36C 00307FCC  41 82 FF 60 */	beq lbl_8030C2CC
lbl_8030C370:
/* 8030C370 00307FD0  3C 80 00 0F */	lis r4, 0x000F423F@ha
/* 8030C374 00307FD4  38 60 00 03 */	li r3, 3
/* 8030C378 00307FD8  38 04 42 3F */	addi r0, r4, 0x000F423F@l
/* 8030C37C 00307FDC  90 1E 00 00 */	stw r0, 0(r30)
/* 8030C380 00307FE0  90 1F 00 00 */	stw r0, 0(r31)
lbl_8030C384:
/* 8030C384 00307FE4  39 61 00 B0 */	addi r11, r1, 0xb0
/* 8030C388 00307FE8  4B EB AD DD */	bl _restgpr_23
/* 8030C38C 00307FEC  80 01 00 B4 */	lwz r0, 0xb4(r1)
/* 8030C390 00307FF0  7C 08 03 A6 */	mtlr r0
/* 8030C394 00307FF4  38 21 00 B0 */	addi r1, r1, 0xb0
/* 8030C398 00307FF8  4E 80 00 20 */	blr

.global VFiPFENT_findEntry
VFiPFENT_findEntry:
/* 8030C39C 00307FFC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8030C3A0 00308000  7C 08 02 A6 */	mflr r0
/* 8030C3A4 00308004  90 01 00 14 */	stw r0, 0x14(r1)
/* 8030C3A8 00308008  39 21 00 0C */	addi r9, r1, 0xc
/* 8030C3AC 0030800C  39 41 00 08 */	addi r10, r1, 8
/* 8030C3B0 00308010  4B FF FC A1 */	bl VFiPFENT_findEntryPos
/* 8030C3B4 00308014  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8030C3B8 00308018  7C 08 03 A6 */	mtlr r0
/* 8030C3BC 0030801C  38 21 00 10 */	addi r1, r1, 0x10
/* 8030C3C0 00308020  4E 80 00 20 */	blr

.global VFiPFENT_allocateEntryPos
VFiPFENT_allocateEntryPos:
/* 8030C3C4 00308024  94 21 FD 00 */	stwu r1, -0x300(r1)
/* 8030C3C8 00308028  7C 08 02 A6 */	mflr r0
/* 8030C3CC 0030802C  90 01 03 04 */	stw r0, 0x304(r1)
/* 8030C3D0 00308030  39 61 03 00 */	addi r11, r1, 0x300
/* 8030C3D4 00308034  4B EB AD 2D */	bl _savegpr_17
/* 8030C3D8 00308038  2C 05 00 00 */	cmpwi r5, 0
/* 8030C3DC 0030803C  7C 71 1B 78 */	mr r17, r3
/* 8030C3E0 00308040  7C 92 23 78 */	mr r18, r4
/* 8030C3E4 00308044  7C B3 2B 78 */	mr r19, r5
/* 8030C3E8 00308048  7C D4 33 78 */	mr r20, r6
/* 8030C3EC 0030804C  7C F5 3B 78 */	mr r21, r7
/* 8030C3F0 00308050  7D 16 43 78 */	mr r22, r8
/* 8030C3F4 00308054  40 82 00 0C */	bne lbl_8030C400
/* 8030C3F8 00308058  38 60 00 0A */	li r3, 0xa
/* 8030C3FC 0030805C  48 00 02 CC */	b lbl_8030C6C8
lbl_8030C400:
/* 8030C400 00308060  80 05 00 34 */	lwz r0, 0x34(r5)
/* 8030C404 00308064  2C 00 00 00 */	cmpwi r0, 0
/* 8030C408 00308068  40 82 00 0C */	bne lbl_8030C414
/* 8030C40C 0030806C  38 60 00 0A */	li r3, 0xa
/* 8030C410 00308070  48 00 02 B8 */	b lbl_8030C6C8
lbl_8030C414:
/* 8030C414 00308074  2C 04 00 00 */	cmpwi r4, 0
/* 8030C418 00308078  40 82 00 0C */	bne lbl_8030C424
/* 8030C41C 0030807C  38 60 00 0A */	li r3, 0xa
/* 8030C420 00308080  48 00 02 A8 */	b lbl_8030C6C8
lbl_8030C424:
/* 8030C424 00308084  28 04 00 15 */	cmplwi r4, 0x15
/* 8030C428 00308088  40 81 00 0C */	ble lbl_8030C434
/* 8030C42C 0030808C  38 60 00 0A */	li r3, 0xa
/* 8030C430 00308090  48 00 02 98 */	b lbl_8030C6C8
lbl_8030C434:
/* 8030C434 00308094  3C 60 80 58 */	lis r3, lbl_8057F5C8@ha
/* 8030C438 00308098  38 63 F5 C8 */	addi r3, r3, lbl_8057F5C8@l
/* 8030C43C 0030809C  80 03 00 3C */	lwz r0, 0x3c(r3)
/* 8030C440 003080A0  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8030C444 003080A4  28 00 00 02 */	cmplwi r0, 2
/* 8030C448 003080A8  40 82 00 1C */	bne lbl_8030C464
/* 8030C44C 003080AC  7E A3 AB 78 */	mr r3, r21
/* 8030C450 003080B0  48 00 BF 79 */	bl VFiPFPATH_CheckExtShortNameSignature
/* 8030C454 003080B4  28 03 00 01 */	cmplwi r3, 1
/* 8030C458 003080B8  40 82 00 0C */	bne lbl_8030C464
/* 8030C45C 003080BC  38 60 00 01 */	li r3, 1
/* 8030C460 003080C0  48 00 02 68 */	b lbl_8030C6C8
lbl_8030C464:
/* 8030C464 003080C4  83 F3 00 34 */	lwz r31, 0x34(r19)
/* 8030C468 003080C8  3B C0 FF FF */	li r30, -1
/* 8030C46C 003080CC  3B 00 00 00 */	li r24, 0
/* 8030C470 003080D0  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C474 003080D4  93 D4 00 04 */	stw r30, 4(r20)
/* 8030C478 003080D8  3A E0 00 00 */	li r23, 0
/* 8030C47C 003080DC  3B A0 00 00 */	li r29, 0
/* 8030C480 003080E0  3B 80 FF FF */	li r28, -1
/* 8030C484 003080E4  93 D4 00 00 */	stw r30, 0(r20)
/* 8030C488 003080E8  3B 40 FF FF */	li r26, -1
/* 8030C48C 003080EC  3B 60 FF FF */	li r27, -1
/* 8030C490 003080F0  3B 20 00 00 */	li r25, 0
/* 8030C494 003080F4  93 01 00 54 */	stw r24, 0x54(r1)
/* 8030C498 003080F8  38 80 00 00 */	li r4, 0
/* 8030C49C 003080FC  93 01 00 10 */	stw r24, 0x10(r1)
/* 8030C4A0 00308100  80 B3 00 00 */	lwz r5, 0(r19)
/* 8030C4A4 00308104  80 13 00 04 */	lwz r0, 4(r19)
/* 8030C4A8 00308108  90 A1 00 18 */	stw r5, 0x18(r1)
/* 8030C4AC 0030810C  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8030C4B0 00308110  80 B3 00 08 */	lwz r5, 8(r19)
/* 8030C4B4 00308114  80 13 00 0C */	lwz r0, 0xc(r19)
/* 8030C4B8 00308118  90 A1 00 20 */	stw r5, 0x20(r1)
/* 8030C4BC 0030811C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030C4C0 00308120  80 B3 00 10 */	lwz r5, 0x10(r19)
/* 8030C4C4 00308124  80 13 00 14 */	lwz r0, 0x14(r19)
/* 8030C4C8 00308128  90 A1 00 28 */	stw r5, 0x28(r1)
/* 8030C4CC 0030812C  90 01 00 2C */	stw r0, 0x2c(r1)
/* 8030C4D0 00308130  80 B3 00 18 */	lwz r5, 0x18(r19)
/* 8030C4D4 00308134  80 13 00 1C */	lwz r0, 0x1c(r19)
/* 8030C4D8 00308138  90 A1 00 30 */	stw r5, 0x30(r1)
/* 8030C4DC 0030813C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8030C4E0 00308140  80 B3 00 20 */	lwz r5, 0x20(r19)
/* 8030C4E4 00308144  80 13 00 24 */	lwz r0, 0x24(r19)
/* 8030C4E8 00308148  90 A1 00 38 */	stw r5, 0x38(r1)
/* 8030C4EC 0030814C  90 01 00 3C */	stw r0, 0x3c(r1)
/* 8030C4F0 00308150  80 B3 00 28 */	lwz r5, 0x28(r19)
/* 8030C4F4 00308154  80 13 00 2C */	lwz r0, 0x2c(r19)
/* 8030C4F8 00308158  90 A1 00 40 */	stw r5, 0x40(r1)
/* 8030C4FC 0030815C  90 01 00 44 */	stw r0, 0x44(r1)
/* 8030C500 00308160  80 B3 00 30 */	lwz r5, 0x30(r19)
/* 8030C504 00308164  80 13 00 34 */	lwz r0, 0x34(r19)
/* 8030C508 00308168  90 A1 00 48 */	stw r5, 0x48(r1)
/* 8030C50C 0030816C  90 01 00 4C */	stw r0, 0x4c(r1)
/* 8030C510 00308170  48 00 19 E9 */	bl VFiPFENT_ITER_IteratorInitialize
lbl_8030C514:
/* 8030C514 00308174  2C 03 00 00 */	cmpwi r3, 0
/* 8030C518 00308178  41 82 00 10 */	beq lbl_8030C528
/* 8030C51C 0030817C  2C 03 00 10 */	cmpwi r3, 0x10
/* 8030C520 00308180  41 82 01 80 */	beq lbl_8030C6A0
/* 8030C524 00308184  48 00 01 A4 */	b lbl_8030C6C8
lbl_8030C528:
/* 8030C528 00308188  80 61 00 54 */	lwz r3, 0x54(r1)
/* 8030C52C 0030818C  3C 03 00 01 */	addis r0, r3, 1
/* 8030C530 00308190  28 00 FF FF */	cmplwi r0, 0xffff
/* 8030C534 00308194  41 82 01 6C */	beq lbl_8030C6A0
/* 8030C538 00308198  2C 19 00 00 */	cmpwi r25, 0
/* 8030C53C 0030819C  40 82 00 18 */	bne lbl_8030C554
/* 8030C540 003081A0  2C 18 00 00 */	cmpwi r24, 0
/* 8030C544 003081A4  40 82 00 10 */	bne lbl_8030C554
/* 8030C548 003081A8  A3 A1 00 58 */	lhz r29, 0x58(r1)
/* 8030C54C 003081AC  7C 7E 1B 78 */	mr r30, r3
/* 8030C550 003081B0  7C 7C 1B 78 */	mr r28, r3
lbl_8030C554:
/* 8030C554 003081B4  2C 19 00 00 */	cmpwi r25, 0
/* 8030C558 003081B8  40 82 00 58 */	bne lbl_8030C5B0
/* 8030C55C 003081BC  88 01 00 5C */	lbz r0, 0x5c(r1)
/* 8030C560 003081C0  2C 00 00 00 */	cmpwi r0, 0
/* 8030C564 003081C4  41 82 00 0C */	beq lbl_8030C570
/* 8030C568 003081C8  28 00 00 E5 */	cmplwi r0, 0xe5
/* 8030C56C 003081CC  40 82 00 38 */	bne lbl_8030C5A4
lbl_8030C570:
/* 8030C570 003081D0  7C 1C 18 40 */	cmplw r28, r3
/* 8030C574 003081D4  41 82 00 28 */	beq lbl_8030C59C
/* 8030C578 003081D8  38 1B 00 01 */	addi r0, r27, 1
/* 8030C57C 003081DC  7C 00 00 34 */	cntlzw r0, r0
/* 8030C580 003081E0  54 00 D9 7F */	rlwinm. r0, r0, 0x1b, 5, 0x1f
/* 8030C584 003081E4  41 82 00 08 */	beq lbl_8030C58C
/* 8030C588 003081E8  7C 7B 1B 78 */	mr r27, r3
lbl_8030C58C:
/* 8030C58C 003081EC  2C 00 00 00 */	cmpwi r0, 0
/* 8030C590 003081F0  40 82 00 08 */	bne lbl_8030C598
/* 8030C594 003081F4  7C 7A 1B 78 */	mr r26, r3
lbl_8030C598:
/* 8030C598 003081F8  7C 7C 1B 78 */	mr r28, r3
lbl_8030C59C:
/* 8030C59C 003081FC  3B 18 00 01 */	addi r24, r24, 1
/* 8030C5A0 00308200  48 00 00 10 */	b lbl_8030C5B0
lbl_8030C5A4:
/* 8030C5A4 00308204  3B 00 00 00 */	li r24, 0
/* 8030C5A8 00308208  3B 60 FF FF */	li r27, -1
/* 8030C5AC 0030820C  3B 40 FF FF */	li r26, -1
lbl_8030C5B0:
/* 8030C5B0 00308210  7C 18 90 40 */	cmplw r24, r18
/* 8030C5B4 00308214  41 80 00 20 */	blt lbl_8030C5D4
/* 8030C5B8 00308218  2C 19 00 00 */	cmpwi r25, 0
/* 8030C5BC 0030821C  40 82 00 0C */	bne lbl_8030C5C8
/* 8030C5C0 00308220  82 E1 00 10 */	lwz r23, 0x10(r1)
/* 8030C5C4 00308224  3B 20 00 01 */	li r25, 1
lbl_8030C5C8:
/* 8030C5C8 00308228  88 01 00 5C */	lbz r0, 0x5c(r1)
/* 8030C5CC 0030822C  2C 00 00 00 */	cmpwi r0, 0
/* 8030C5D0 00308230  41 82 00 D0 */	beq lbl_8030C6A0
lbl_8030C5D4:
/* 8030C5D4 00308234  88 01 00 5C */	lbz r0, 0x5c(r1)
/* 8030C5D8 00308238  2C 00 00 00 */	cmpwi r0, 0
/* 8030C5DC 0030823C  41 82 00 64 */	beq lbl_8030C640
/* 8030C5E0 00308240  28 00 00 E5 */	cmplwi r0, 0xe5
/* 8030C5E4 00308244  41 82 00 5C */	beq lbl_8030C640
/* 8030C5E8 00308248  7E A5 AB 78 */	mr r5, r21
/* 8030C5EC 0030824C  38 61 00 80 */	addi r3, r1, 0x80
/* 8030C5F0 00308250  38 81 00 10 */	addi r4, r1, 0x10
/* 8030C5F4 00308254  39 01 00 08 */	addi r8, r1, 8
/* 8030C5F8 00308258  38 C0 00 7F */	li r6, 0x7f
/* 8030C5FC 0030825C  38 E0 00 00 */	li r7, 0
/* 8030C600 00308260  4B FF EE 81 */	bl VFiPFENT_getEntry
/* 8030C604 00308264  2C 03 00 00 */	cmpwi r3, 0
/* 8030C608 00308268  40 82 00 38 */	bne lbl_8030C640
/* 8030C60C 0030826C  38 00 00 48 */	li r0, 0x48
/* 8030C610 00308270  38 B1 FF FC */	addi r5, r17, -4
/* 8030C614 00308274  38 81 00 7C */	addi r4, r1, 0x7c
/* 8030C618 00308278  7C 09 03 A6 */	mtctr r0
lbl_8030C61C:
/* 8030C61C 0030827C  80 64 00 04 */	lwz r3, 4(r4)
/* 8030C620 00308280  84 04 00 08 */	lwzu r0, 8(r4)
/* 8030C624 00308284  90 65 00 04 */	stw r3, 4(r5)
/* 8030C628 00308288  94 05 00 08 */	stwu r0, 8(r5)
/* 8030C62C 0030828C  42 00 FF F0 */	bdnz lbl_8030C61C
/* 8030C630 00308290  80 13 00 34 */	lwz r0, 0x34(r19)
/* 8030C634 00308294  38 60 00 08 */	li r3, 8
/* 8030C638 00308298  90 11 02 2C */	stw r0, 0x22c(r17)
/* 8030C63C 0030829C  48 00 00 8C */	b lbl_8030C6C8
lbl_8030C640:
/* 8030C640 003082A0  A0 61 00 58 */	lhz r3, 0x58(r1)
/* 8030C644 003082A4  A0 1F 00 00 */	lhz r0, 0(r31)
/* 8030C648 003082A8  38 63 00 20 */	addi r3, r3, 0x20
/* 8030C64C 003082AC  7C 03 00 00 */	cmpw r3, r0
/* 8030C650 003082B0  40 82 00 40 */	bne lbl_8030C690
/* 8030C654 003082B4  80 81 00 50 */	lwz r4, 0x50(r1)
/* 8030C658 003082B8  7E 63 9B 78 */	mr r3, r19
/* 8030C65C 003082BC  38 C1 00 0C */	addi r6, r1, 0xc
/* 8030C660 003082C0  38 A0 00 00 */	li r5, 0
/* 8030C664 003082C4  38 84 00 01 */	addi r4, r4, 1
/* 8030C668 003082C8  48 00 39 01 */	bl VFiPFFAT_GetSectorSpecified
/* 8030C66C 003082CC  2C 03 00 00 */	cmpwi r3, 0
/* 8030C670 003082D0  41 82 00 08 */	beq lbl_8030C678
/* 8030C674 003082D4  48 00 00 54 */	b lbl_8030C6C8
lbl_8030C678:
/* 8030C678 003082D8  80 61 00 0C */	lwz r3, 0xc(r1)
/* 8030C67C 003082DC  3C 03 00 01 */	addis r0, r3, 1
/* 8030C680 003082E0  28 00 FF FF */	cmplwi r0, 0xffff
/* 8030C684 003082E4  40 82 00 0C */	bne lbl_8030C690
/* 8030C688 003082E8  28 19 00 01 */	cmplwi r25, 1
/* 8030C68C 003082EC  41 82 00 14 */	beq lbl_8030C6A0
lbl_8030C690:
/* 8030C690 003082F0  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C694 003082F4  38 80 00 01 */	li r4, 1
/* 8030C698 003082F8  48 00 1A 71 */	bl VFiPFENT_ITER_Advance
/* 8030C69C 003082FC  4B FF FE 78 */	b lbl_8030C514
lbl_8030C6A0:
/* 8030C6A0 00308300  2C 19 00 00 */	cmpwi r25, 0
/* 8030C6A4 00308304  40 82 00 0C */	bne lbl_8030C6B0
/* 8030C6A8 00308308  38 60 00 05 */	li r3, 5
/* 8030C6AC 0030830C  48 00 00 1C */	b lbl_8030C6C8
lbl_8030C6B0:
/* 8030C6B0 00308310  93 74 00 00 */	stw r27, 0(r20)
/* 8030C6B4 00308314  38 60 00 00 */	li r3, 0
/* 8030C6B8 00308318  93 54 00 04 */	stw r26, 4(r20)
/* 8030C6BC 0030831C  93 D1 02 38 */	stw r30, 0x238(r17)
/* 8030C6C0 00308320  B3 B1 02 3C */	sth r29, 0x23c(r17)
/* 8030C6C4 00308324  92 F6 00 00 */	stw r23, 0(r22)
lbl_8030C6C8:
/* 8030C6C8 00308328  39 61 03 00 */	addi r11, r1, 0x300
/* 8030C6CC 0030832C  4B EB AA 81 */	bl _restgpr_17
/* 8030C6D0 00308330  80 01 03 04 */	lwz r0, 0x304(r1)
/* 8030C6D4 00308334  7C 08 03 A6 */	mtlr r0
/* 8030C6D8 00308338  38 21 03 00 */	addi r1, r1, 0x300
/* 8030C6DC 0030833C  4E 80 00 20 */	blr

.global VFiPFENT_allocateEntry
VFiPFENT_allocateEntry:
/* 8030C6E0 00308340  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8030C6E4 00308344  7C 08 02 A6 */	mflr r0
/* 8030C6E8 00308348  90 01 00 14 */	stw r0, 0x14(r1)
/* 8030C6EC 0030834C  39 01 00 08 */	addi r8, r1, 8
/* 8030C6F0 00308350  4B FF FC D5 */	bl VFiPFENT_allocateEntryPos
/* 8030C6F4 00308354  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8030C6F8 00308358  7C 08 03 A6 */	mtlr r0
/* 8030C6FC 0030835C  38 21 00 10 */	addi r1, r1, 0x10
/* 8030C700 00308360  4E 80 00 20 */	blr

.global VFiPFENT_GetRootDir
VFiPFENT_GetRootDir:
/* 8030C704 00308364  2C 03 00 00 */	cmpwi r3, 0
/* 8030C708 00308368  40 82 00 0C */	bne lbl_8030C714
/* 8030C70C 0030836C  38 60 00 0A */	li r3, 0xa
/* 8030C710 00308370  4E 80 00 20 */	blr
lbl_8030C714:
/* 8030C714 00308374  2C 04 00 00 */	cmpwi r4, 0
/* 8030C718 00308378  40 82 00 0C */	bne lbl_8030C724
/* 8030C71C 0030837C  38 60 00 0A */	li r3, 0xa
/* 8030C720 00308380  4E 80 00 20 */	blr
lbl_8030C724:
/* 8030C724 00308384  A0 03 18 78 */	lhz r0, 0x1878(r3)
/* 8030C728 00308388  54 00 07 BD */	rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8030C72C 0030838C  40 82 00 0C */	bne lbl_8030C738
/* 8030C730 00308390  38 60 00 09 */	li r3, 9
/* 8030C734 00308394  4E 80 00 20 */	blr
lbl_8030C738:
/* 8030C738 00308398  39 00 00 00 */	li r8, 0
/* 8030C73C 0030839C  39 20 00 5C */	li r9, 0x5c
/* 8030C740 003083A0  38 E0 00 10 */	li r7, 0x10
/* 8030C744 003083A4  38 C0 00 03 */	li r6, 3
/* 8030C748 003083A8  38 A0 00 01 */	li r5, 1
/* 8030C74C 003083AC  38 00 FF FF */	li r0, -1
/* 8030C750 003083B0  90 64 02 2C */	stw r3, 0x22c(r4)
/* 8030C754 003083B4  38 60 00 00 */	li r3, 0
/* 8030C758 003083B8  B1 24 00 00 */	sth r9, 0(r4)
/* 8030C75C 003083BC  B1 04 00 02 */	sth r8, 2(r4)
/* 8030C760 003083C0  99 04 02 0A */	stb r8, 0x20a(r4)
/* 8030C764 003083C4  99 04 02 0B */	stb r8, 0x20b(r4)
/* 8030C768 003083C8  99 04 02 0C */	stb r8, 0x20c(r4)
/* 8030C76C 003083CC  99 24 02 0E */	stb r9, 0x20e(r4)
/* 8030C770 003083D0  99 04 02 0F */	stb r8, 0x20f(r4)
/* 8030C774 003083D4  99 04 02 1B */	stb r8, 0x21b(r4)
/* 8030C778 003083D8  98 E4 02 1C */	stb r7, 0x21c(r4)
/* 8030C77C 003083DC  99 04 02 1D */	stb r8, 0x21d(r4)
/* 8030C780 003083E0  B1 04 02 1E */	sth r8, 0x21e(r4)
/* 8030C784 003083E4  B1 04 02 20 */	sth r8, 0x220(r4)
/* 8030C788 003083E8  B1 04 02 22 */	sth r8, 0x222(r4)
/* 8030C78C 003083EC  B1 04 02 24 */	sth r8, 0x224(r4)
/* 8030C790 003083F0  B1 04 02 26 */	sth r8, 0x226(r4)
/* 8030C794 003083F4  91 04 02 28 */	stw r8, 0x228(r4)
/* 8030C798 003083F8  90 C4 02 30 */	stw r6, 0x230(r4)
/* 8030C79C 003083FC  90 A4 02 34 */	stw r5, 0x234(r4)
/* 8030C7A0 00308400  90 04 02 38 */	stw r0, 0x238(r4)
/* 8030C7A4 00308404  B1 04 02 3C */	sth r8, 0x23c(r4)
/* 8030C7A8 00308408  4E 80 00 20 */	blr

.global VFiPFENT_MakeRootDir
VFiPFENT_MakeRootDir:
/* 8030C7AC 0030840C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8030C7B0 00308410  7C 08 02 A6 */	mflr r0
/* 8030C7B4 00308414  2C 03 00 00 */	cmpwi r3, 0
/* 8030C7B8 00308418  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030C7BC 0030841C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8030C7C0 00308420  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8030C7C4 00308424  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8030C7C8 00308428  7C 7D 1B 78 */	mr r29, r3
/* 8030C7CC 0030842C  40 82 00 0C */	bne lbl_8030C7D8
/* 8030C7D0 00308430  38 60 00 0A */	li r3, 0xa
/* 8030C7D4 00308434  48 00 01 00 */	b lbl_8030C8D4
lbl_8030C7D8:
/* 8030C7D8 00308438  80 03 00 1C */	lwz r0, 0x1c(r3)
/* 8030C7DC 0030843C  2C 00 00 02 */	cmpwi r0, 2
/* 8030C7E0 00308440  41 82 00 14 */	beq lbl_8030C7F4
/* 8030C7E4 00308444  40 80 00 D4 */	bge lbl_8030C8B8
/* 8030C7E8 00308448  2C 00 00 00 */	cmpwi r0, 0
/* 8030C7EC 0030844C  40 80 00 10 */	bge lbl_8030C7FC
/* 8030C7F0 00308450  48 00 00 C8 */	b lbl_8030C8B8
lbl_8030C7F4:
/* 8030C7F4 00308454  48 00 43 D1 */	bl VFiPFFAT_MakeRootDir
/* 8030C7F8 00308458  48 00 00 C8 */	b lbl_8030C8C0
lbl_8030C7FC:
/* 8030C7FC 0030845C  38 A1 00 0C */	addi r5, r1, 0xc
/* 8030C800 00308460  38 80 FF FF */	li r4, -1
/* 8030C804 00308464  4B FF DE B5 */	bl VFiPFCACHE_AllocateDataPage
/* 8030C808 00308468  2C 03 00 00 */	cmpwi r3, 0
/* 8030C80C 0030846C  41 82 00 08 */	beq lbl_8030C814
/* 8030C810 00308470  48 00 00 C4 */	b lbl_8030C8D4
lbl_8030C814:
/* 8030C814 00308474  80 61 00 0C */	lwz r3, 0xc(r1)
/* 8030C818 00308478  38 80 00 00 */	li r4, 0
/* 8030C81C 0030847C  A0 BD 00 00 */	lhz r5, 0(r29)
/* 8030C820 00308480  80 63 00 08 */	lwz r3, 8(r3)
/* 8030C824 00308484  4B FF 87 B1 */	bl VFipf_memset
/* 8030C828 00308488  83 DD 00 2C */	lwz r30, 0x2c(r29)
/* 8030C82C 0030848C  48 00 00 70 */	b lbl_8030C89C
lbl_8030C830:
/* 8030C830 00308490  80 81 00 0C */	lwz r4, 0xc(r1)
/* 8030C834 00308494  7F A3 EB 78 */	mr r3, r29
/* 8030C838 00308498  A0 FD 00 00 */	lhz r7, 0(r29)
/* 8030C83C 0030849C  7F C5 F3 78 */	mr r5, r30
/* 8030C840 003084A0  80 84 00 08 */	lwz r4, 8(r4)
/* 8030C844 003084A4  39 01 00 08 */	addi r8, r1, 8
/* 8030C848 003084A8  38 C0 00 00 */	li r6, 0
/* 8030C84C 003084AC  39 20 00 00 */	li r9, 0
/* 8030C850 003084B0  48 00 C5 99 */	bl VFiPFSEC_WriteData
/* 8030C854 003084B4  2C 03 00 00 */	cmpwi r3, 0
/* 8030C858 003084B8  7C 7F 1B 78 */	mr r31, r3
/* 8030C85C 003084BC  41 82 00 18 */	beq lbl_8030C874
/* 8030C860 003084C0  80 81 00 0C */	lwz r4, 0xc(r1)
/* 8030C864 003084C4  7F A3 EB 78 */	mr r3, r29
/* 8030C868 003084C8  4B FF DF 55 */	bl VFiPFCACHE_FreeDataPage
/* 8030C86C 003084CC  7F E3 FB 78 */	mr r3, r31
/* 8030C870 003084D0  48 00 00 64 */	b lbl_8030C8D4
lbl_8030C874:
/* 8030C874 003084D4  80 61 00 08 */	lwz r3, 8(r1)
/* 8030C878 003084D8  A0 1D 00 00 */	lhz r0, 0(r29)
/* 8030C87C 003084DC  7C 03 00 40 */	cmplw r3, r0
/* 8030C880 003084E0  41 82 00 18 */	beq lbl_8030C898
/* 8030C884 003084E4  80 81 00 0C */	lwz r4, 0xc(r1)
/* 8030C888 003084E8  7F A3 EB 78 */	mr r3, r29
/* 8030C88C 003084EC  4B FF DF 31 */	bl VFiPFCACHE_FreeDataPage
/* 8030C890 003084F0  38 60 00 11 */	li r3, 0x11
/* 8030C894 003084F4  48 00 00 40 */	b lbl_8030C8D4
lbl_8030C898:
/* 8030C898 003084F8  3B DE 00 01 */	addi r30, r30, 1
lbl_8030C89C:
/* 8030C89C 003084FC  80 1D 00 30 */	lwz r0, 0x30(r29)
/* 8030C8A0 00308500  7C 1E 00 40 */	cmplw r30, r0
/* 8030C8A4 00308504  41 80 FF 8C */	blt lbl_8030C830
/* 8030C8A8 00308508  80 81 00 0C */	lwz r4, 0xc(r1)
/* 8030C8AC 0030850C  7F A3 EB 78 */	mr r3, r29
/* 8030C8B0 00308510  4B FF DF 0D */	bl VFiPFCACHE_FreeDataPage
/* 8030C8B4 00308514  48 00 00 0C */	b lbl_8030C8C0
lbl_8030C8B8:
/* 8030C8B8 00308518  38 60 00 07 */	li r3, 7
/* 8030C8BC 0030851C  48 00 00 18 */	b lbl_8030C8D4
lbl_8030C8C0:
/* 8030C8C0 00308520  3C 60 80 44 */	lis r3, lbl_804465D8@ha
/* 8030C8C4 00308524  7F A4 EB 78 */	mr r4, r29
/* 8030C8C8 00308528  38 63 65 D8 */	addi r3, r3, lbl_804465D8@l
/* 8030C8CC 0030852C  48 00 D2 E1 */	bl VFiPFVOL_LoadVolumeLabelFromBuf
/* 8030C8D0 00308530  38 60 00 00 */	li r3, 0
lbl_8030C8D4:
/* 8030C8D4 00308534  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8030C8D8 00308538  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8030C8DC 0030853C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8030C8E0 00308540  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8030C8E4 00308544  7C 08 03 A6 */	mtlr r0
/* 8030C8E8 00308548  38 21 00 20 */	addi r1, r1, 0x20
/* 8030C8EC 0030854C  4E 80 00 20 */	blr

.global VFiPFENT_updateEntry
VFiPFENT_updateEntry:
/* 8030C8F0 00308550  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8030C8F4 00308554  7C 08 02 A6 */	mflr r0
/* 8030C8F8 00308558  2C 03 00 00 */	cmpwi r3, 0
/* 8030C8FC 0030855C  90 01 00 44 */	stw r0, 0x44(r1)
/* 8030C900 00308560  93 E1 00 3C */	stw r31, 0x3c(r1)
/* 8030C904 00308564  93 C1 00 38 */	stw r30, 0x38(r1)
/* 8030C908 00308568  7C 7E 1B 78 */	mr r30, r3
/* 8030C90C 0030856C  93 A1 00 34 */	stw r29, 0x34(r1)
/* 8030C910 00308570  40 82 00 0C */	bne lbl_8030C91C
/* 8030C914 00308574  38 60 00 0A */	li r3, 0xa
/* 8030C918 00308578  48 00 01 68 */	b lbl_8030CA80
lbl_8030C91C:
/* 8030C91C 0030857C  83 E3 02 2C */	lwz r31, 0x22c(r3)
/* 8030C920 00308580  2C 1F 00 00 */	cmpwi r31, 0
/* 8030C924 00308584  40 82 00 0C */	bne lbl_8030C930
/* 8030C928 00308588  38 60 00 0A */	li r3, 0xa
/* 8030C92C 0030858C  48 00 01 54 */	b lbl_8030CA80
lbl_8030C930:
/* 8030C930 00308590  A0 BF 00 24 */	lhz r5, 0x24(r31)
/* 8030C934 00308594  80 1F 00 30 */	lwz r0, 0x30(r31)
/* 8030C938 00308598  80 C3 02 38 */	lwz r6, 0x238(r3)
/* 8030C93C 0030859C  7C 05 00 50 */	subf r0, r5, r0
/* 8030C940 003085A0  7C 06 00 40 */	cmplw r6, r0
/* 8030C944 003085A4  40 80 00 0C */	bge lbl_8030C950
/* 8030C948 003085A8  38 60 00 1C */	li r3, 0x1c
/* 8030C94C 003085AC  48 00 01 34 */	b lbl_8030CA80
lbl_8030C950:
/* 8030C950 003085B0  80 1F 00 08 */	lwz r0, 8(r31)
/* 8030C954 003085B4  7C 06 00 40 */	cmplw r6, r0
/* 8030C958 003085B8  41 80 00 0C */	blt lbl_8030C964
/* 8030C95C 003085BC  38 60 00 10 */	li r3, 0x10
/* 8030C960 003085C0  48 00 01 20 */	b lbl_8030CA80
lbl_8030C964:
/* 8030C964 003085C4  80 03 02 34 */	lwz r0, 0x234(r3)
/* 8030C968 003085C8  28 00 00 01 */	cmplwi r0, 1
/* 8030C96C 003085CC  40 82 00 0C */	bne lbl_8030C978
/* 8030C970 003085D0  38 60 00 0E */	li r3, 0xe
/* 8030C974 003085D4  48 00 01 0C */	b lbl_8030CA80
lbl_8030C978:
/* 8030C978 003085D8  28 04 00 01 */	cmplwi r4, 1
/* 8030C97C 003085DC  40 82 00 10 */	bne lbl_8030C98C
/* 8030C980 003085E0  88 03 02 1C */	lbz r0, 0x21c(r3)
/* 8030C984 003085E4  60 00 00 20 */	ori r0, r0, 0x20
/* 8030C988 003085E8  98 03 02 1C */	stb r0, 0x21c(r3)
lbl_8030C98C:
/* 8030C98C 003085EC  88 BE 02 1C */	lbz r5, 0x21c(r30)
/* 8030C990 003085F0  38 61 00 10 */	addi r3, r1, 0x10
/* 8030C994 003085F4  38 9E 02 0E */	addi r4, r30, 0x20e
/* 8030C998 003085F8  48 00 A8 B1 */	bl VFiPFPATH_putShortName
/* 8030C99C 003085FC  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8030C9A0 00308600  28 00 00 E5 */	cmplwi r0, 0xe5
/* 8030C9A4 00308604  40 82 00 0C */	bne lbl_8030C9B0
/* 8030C9A8 00308608  38 00 00 05 */	li r0, 5
/* 8030C9AC 0030860C  98 01 00 10 */	stb r0, 0x10(r1)
lbl_8030C9B0:
/* 8030C9B0 00308610  88 1E 02 1C */	lbz r0, 0x21c(r30)
/* 8030C9B4 00308614  7F E3 FB 78 */	mr r3, r31
/* 8030C9B8 00308618  3B A1 00 1E */	addi r29, r1, 0x1e
/* 8030C9BC 0030861C  39 81 00 20 */	addi r12, r1, 0x20
/* 8030C9C0 00308620  98 01 00 1B */	stb r0, 0x1b(r1)
/* 8030C9C4 00308624  39 61 00 22 */	addi r11, r1, 0x22
/* 8030C9C8 00308628  39 41 00 26 */	addi r10, r1, 0x26
/* 8030C9CC 0030862C  38 C1 00 28 */	addi r6, r1, 0x28
/* 8030C9D0 00308630  88 FE 02 1B */	lbz r7, 0x21b(r30)
/* 8030C9D4 00308634  38 A1 00 24 */	addi r5, r1, 0x24
/* 8030C9D8 00308638  38 01 00 2A */	addi r0, r1, 0x2a
/* 8030C9DC 0030863C  38 81 00 10 */	addi r4, r1, 0x10
/* 8030C9E0 00308640  98 E1 00 1C */	stb r7, 0x1c(r1)
/* 8030C9E4 00308644  39 01 00 08 */	addi r8, r1, 8
/* 8030C9E8 00308648  38 E0 00 20 */	li r7, 0x20
/* 8030C9EC 0030864C  39 20 00 00 */	li r9, 0
/* 8030C9F0 00308650  8B FE 02 1D */	lbz r31, 0x21d(r30)
/* 8030C9F4 00308654  9B E1 00 1D */	stb r31, 0x1d(r1)
/* 8030C9F8 00308658  A3 FE 02 1E */	lhz r31, 0x21e(r30)
/* 8030C9FC 0030865C  7F E0 EF 2C */	sthbrx r31, 0, r29
/* 8030CA00 00308660  A3 BE 02 20 */	lhz r29, 0x220(r30)
/* 8030CA04 00308664  7F A0 67 2C */	sthbrx r29, 0, r12
/* 8030CA08 00308668  A1 9E 02 22 */	lhz r12, 0x222(r30)
/* 8030CA0C 0030866C  7D 80 5F 2C */	sthbrx r12, 0, r11
/* 8030CA10 00308670  A1 7E 02 24 */	lhz r11, 0x224(r30)
/* 8030CA14 00308674  7D 60 57 2C */	sthbrx r11, 0, r10
/* 8030CA18 00308678  A1 5E 02 26 */	lhz r10, 0x226(r30)
/* 8030CA1C 0030867C  7D 40 37 2C */	sthbrx r10, 0, r6
/* 8030CA20 00308680  80 DE 02 34 */	lwz r6, 0x234(r30)
/* 8030CA24 00308684  54 C6 84 3E */	srwi r6, r6, 0x10
/* 8030CA28 00308688  7C C0 2F 2C */	sthbrx r6, 0, r5
/* 8030CA2C 0030868C  80 BE 02 34 */	lwz r5, 0x234(r30)
/* 8030CA30 00308690  7C A0 07 2C */	sthbrx r5, 0, r0
/* 8030CA34 00308694  80 DE 02 28 */	lwz r6, 0x228(r30)
/* 8030CA38 00308698  54 C5 42 1E */	rlwinm r5, r6, 8, 8, 0xf
/* 8030CA3C 0030869C  54 C0 C4 2E */	rlwinm r0, r6, 0x18, 0x10, 0x17
/* 8030CA40 003086A0  50 C5 C0 0E */	rlwimi r5, r6, 0x18, 0, 7
/* 8030CA44 003086A4  50 C0 46 3E */	rlwimi r0, r6, 8, 0x18, 0x1f
/* 8030CA48 003086A8  7C A0 03 78 */	or r0, r5, r0
/* 8030CA4C 003086AC  90 01 00 2C */	stw r0, 0x2c(r1)
/* 8030CA50 003086B0  80 BE 02 38 */	lwz r5, 0x238(r30)
/* 8030CA54 003086B4  A0 DE 02 3C */	lhz r6, 0x23c(r30)
/* 8030CA58 003086B8  48 00 C3 91 */	bl VFiPFSEC_WriteData
/* 8030CA5C 003086BC  2C 03 00 00 */	cmpwi r3, 0
/* 8030CA60 003086C0  41 82 00 08 */	beq lbl_8030CA68
/* 8030CA64 003086C4  48 00 00 1C */	b lbl_8030CA80
lbl_8030CA68:
/* 8030CA68 003086C8  80 81 00 08 */	lwz r4, 8(r1)
/* 8030CA6C 003086CC  38 64 FF E0 */	addi r3, r4, -32
/* 8030CA70 003086D0  20 04 00 20 */	subfic r0, r4, 0x20
/* 8030CA74 003086D4  7C 60 03 78 */	or r0, r3, r0
/* 8030CA78 003086D8  7C 00 FE 70 */	srawi r0, r0, 0x1f
/* 8030CA7C 003086DC  70 03 00 11 */	andi. r3, r0, 0x11
lbl_8030CA80:
/* 8030CA80 003086E0  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8030CA84 003086E4  83 E1 00 3C */	lwz r31, 0x3c(r1)
/* 8030CA88 003086E8  83 C1 00 38 */	lwz r30, 0x38(r1)
/* 8030CA8C 003086EC  83 A1 00 34 */	lwz r29, 0x34(r1)
/* 8030CA90 003086F0  7C 08 03 A6 */	mtlr r0
/* 8030CA94 003086F4  38 21 00 40 */	addi r1, r1, 0x40
/* 8030CA98 003086F8  4E 80 00 20 */	blr

.global VFiPFENT_AdjustSFN
VFiPFENT_AdjustSFN:
/* 8030CA9C 003086FC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8030CAA0 00308700  7C 08 02 A6 */	mflr r0
/* 8030CAA4 00308704  38 A4 00 01 */	addi r5, r4, 1
/* 8030CAA8 00308708  38 E0 00 01 */	li r7, 1
/* 8030CAAC 0030870C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030CAB0 00308710  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8030CAB4 00308714  7C 9F 23 78 */	mr r31, r4
/* 8030CAB8 00308718  48 00 00 0C */	b lbl_8030CAC4
lbl_8030CABC:
/* 8030CABC 0030871C  38 E7 00 01 */	addi r7, r7, 1
/* 8030CAC0 00308720  38 A5 00 01 */	addi r5, r5, 1
lbl_8030CAC4:
/* 8030CAC4 00308724  88 C5 00 00 */	lbz r6, 0(r5)
/* 8030CAC8 00308728  7C C0 07 74 */	extsb r0, r6
/* 8030CACC 0030872C  2C 00 00 7E */	cmpwi r0, 0x7e
/* 8030CAD0 00308730  41 82 00 14 */	beq lbl_8030CAE4
/* 8030CAD4 00308734  2C 00 00 00 */	cmpwi r0, 0
/* 8030CAD8 00308738  41 82 00 0C */	beq lbl_8030CAE4
/* 8030CADC 0030873C  28 07 00 07 */	cmplwi r7, 7
/* 8030CAE0 00308740  41 80 FF DC */	blt lbl_8030CABC
lbl_8030CAE4:
/* 8030CAE4 00308744  28 07 00 07 */	cmplwi r7, 7
/* 8030CAE8 00308748  40 80 00 78 */	bge lbl_8030CB60
/* 8030CAEC 0030874C  7C C0 07 74 */	extsb r0, r6
/* 8030CAF0 00308750  2C 00 00 7E */	cmpwi r0, 0x7e
/* 8030CAF4 00308754  40 82 00 6C */	bne lbl_8030CB60
/* 8030CAF8 00308758  38 E7 00 01 */	addi r7, r7, 1
/* 8030CAFC 0030875C  7C 84 3A 14 */	add r4, r4, r7
/* 8030CB00 00308760  48 00 00 08 */	b lbl_8030CB08
lbl_8030CB04:
/* 8030CB04 00308764  38 84 00 01 */	addi r4, r4, 1
lbl_8030CB08:
/* 8030CB08 00308768  88 A4 00 00 */	lbz r5, 0(r4)
/* 8030CB0C 0030876C  7C A0 07 74 */	extsb r0, r5
/* 8030CB10 00308770  2C 00 00 30 */	cmpwi r0, 0x30
/* 8030CB14 00308774  41 80 00 0C */	blt lbl_8030CB20
/* 8030CB18 00308778  2C 00 00 39 */	cmpwi r0, 0x39
/* 8030CB1C 0030877C  40 81 FF E8 */	ble lbl_8030CB04
lbl_8030CB20:
/* 8030CB20 00308780  7C A0 07 74 */	extsb r0, r5
/* 8030CB24 00308784  2C 00 00 2E */	cmpwi r0, 0x2e
/* 8030CB28 00308788  41 82 00 0C */	beq lbl_8030CB34
/* 8030CB2C 0030878C  2C 00 00 00 */	cmpwi r0, 0
/* 8030CB30 00308790  40 82 00 30 */	bne lbl_8030CB60
lbl_8030CB34:
/* 8030CB34 00308794  7F E4 FB 78 */	mr r4, r31
/* 8030CB38 00308798  38 A1 00 08 */	addi r5, r1, 8
/* 8030CB3C 0030879C  4B FF EF 55 */	bl VFiPFENT_findEmptyTailSFN
/* 8030CB40 003087A0  2C 03 00 00 */	cmpwi r3, 0
/* 8030CB44 003087A4  41 82 00 08 */	beq lbl_8030CB4C
/* 8030CB48 003087A8  48 00 00 1C */	b lbl_8030CB64
lbl_8030CB4C:
/* 8030CB4C 003087AC  80 81 00 08 */	lwz r4, 8(r1)
/* 8030CB50 003087B0  28 04 00 01 */	cmplwi r4, 1
/* 8030CB54 003087B4  41 82 00 0C */	beq lbl_8030CB60
/* 8030CB58 003087B8  7F E3 FB 78 */	mr r3, r31
/* 8030CB5C 003087BC  48 00 B6 91 */	bl VFiPFPATH_parseShortNameNumeric
lbl_8030CB60:
/* 8030CB60 003087C0  38 60 00 00 */	li r3, 0
lbl_8030CB64:
/* 8030CB64 003087C4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8030CB68 003087C8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8030CB6C 003087CC  7C 08 03 A6 */	mtlr r0
/* 8030CB70 003087D0  38 21 00 20 */	addi r1, r1, 0x20
/* 8030CB74 003087D4  4E 80 00 20 */	blr

.global VFiPFENT_getcurrentDateTimeForEnt
VFiPFENT_getcurrentDateTimeForEnt:
/* 8030CB78 003087D8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8030CB7C 003087DC  7C 08 02 A6 */	mflr r0
/* 8030CB80 003087E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8030CB84 003087E4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8030CB88 003087E8  7C 9F 23 78 */	mr r31, r4
/* 8030CB8C 003087EC  38 81 00 08 */	addi r4, r1, 8
/* 8030CB90 003087F0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8030CB94 003087F4  7C 7E 1B 78 */	mr r30, r3
/* 8030CB98 003087F8  38 61 00 10 */	addi r3, r1, 0x10
/* 8030CB9C 003087FC  48 00 D8 A1 */	bl VFiPFSYS_TimeStamp
/* 8030CBA0 00308800  A0 61 00 10 */	lhz r3, 0x10(r1)
/* 8030CBA4 00308804  A0 81 00 14 */	lhz r4, 0x14(r1)
/* 8030CBA8 00308808  38 03 F8 44 */	addi r0, r3, -1980
/* 8030CBAC 0030880C  A0 61 00 12 */	lhz r3, 0x12(r1)
/* 8030CBB0 00308810  54 00 4C 2C */	rlwinm r0, r0, 9, 0x10, 0x16
/* 8030CBB4 00308814  50 60 2D F4 */	rlwimi r0, r3, 5, 0x17, 0x1a
/* 8030CBB8 00308818  50 80 06 FE */	rlwimi r0, r4, 0, 0x1b, 0x1f
/* 8030CBBC 0030881C  B0 1E 00 00 */	sth r0, 0(r30)
/* 8030CBC0 00308820  A0 01 00 08 */	lhz r0, 8(r1)
/* 8030CBC4 00308824  A0 81 00 0C */	lhz r4, 0xc(r1)
/* 8030CBC8 00308828  A0 61 00 0A */	lhz r3, 0xa(r1)
/* 8030CBCC 0030882C  54 00 5C 28 */	rlwinm r0, r0, 0xb, 0x10, 0x14
/* 8030CBD0 00308830  50 60 2D 74 */	rlwimi r0, r3, 5, 0x15, 0x1a
/* 8030CBD4 00308834  50 80 FE FE */	rlwimi r0, r4, 0x1f, 0x1b, 0x1f
/* 8030CBD8 00308838  B0 1F 00 00 */	sth r0, 0(r31)
/* 8030CBDC 0030883C  A0 01 00 0E */	lhz r0, 0xe(r1)
/* 8030CBE0 00308840  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8030CBE4 00308844  54 03 06 3E */	clrlwi r3, r0, 0x18
/* 8030CBE8 00308848  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8030CBEC 0030884C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8030CBF0 00308850  7C 08 03 A6 */	mtlr r0
/* 8030CBF4 00308854  38 21 00 20 */	addi r1, r1, 0x20
/* 8030CBF8 00308858  4E 80 00 20 */	blr