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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global strnlen
strnlen:
/* 802A2904 0029E564 7C 65 1B 78 */ mr r5, r3
/* 802A2908 0029E568 48 00 00 08 */ b lbl_802A2910
lbl_802A290C:
/* 802A290C 0029E56C 38 A5 00 01 */ addi r5, r5, 1
lbl_802A2910:
/* 802A2910 0029E570 88 05 00 00 */ lbz r0, 0(r5)
/* 802A2914 0029E574 2C 00 00 00 */ cmpwi r0, 0
/* 802A2918 0029E578 41 82 00 10 */ beq lbl_802A2928
/* 802A291C 0029E57C 2C 04 00 00 */ cmpwi r4, 0
/* 802A2920 0029E580 38 84 FF FF */ addi r4, r4, -1
/* 802A2924 0029E584 40 82 FF E8 */ bne lbl_802A290C
lbl_802A2928:
/* 802A2928 0029E588 7C 63 28 50 */ subf r3, r3, r5
/* 802A292C 0029E58C 4E 80 00 20 */ blr
.global IpcReplyHandler
IpcReplyHandler:
/* 802A2930 0029E590 94 21 FD 20 */ stwu r1, -0x2e0(r1)
/* 802A2934 0029E594 7C 08 02 A6 */ mflr r0
/* 802A2938 0029E598 38 60 00 02 */ li r3, 2
/* 802A293C 0029E59C 90 01 02 E4 */ stw r0, 0x2e4(r1)
/* 802A2940 0029E5A0 93 E1 02 DC */ stw r31, 0x2dc(r1)
/* 802A2944 0029E5A4 93 C1 02 D8 */ stw r30, 0x2d8(r1)
/* 802A2948 0029E5A8 7C 9E 23 78 */ mr r30, r4
/* 802A294C 0029E5AC 93 A1 02 D4 */ stw r29, 0x2d4(r1)
/* 802A2950 0029E5B0 93 81 02 D0 */ stw r28, 0x2d0(r1)
/* 802A2954 0029E5B4 4B FF FF 79 */ bl IPCReadReg
/* 802A2958 0029E5B8 2C 03 00 00 */ cmpwi r3, 0
/* 802A295C 0029E5BC 41 82 02 0C */ beq lbl_802A2B68
/* 802A2960 0029E5C0 3F E3 80 00 */ addis r31, r3, 0x8000
/* 802A2964 0029E5C4 38 60 00 01 */ li r3, 1
/* 802A2968 0029E5C8 4B FF FF 65 */ bl IPCReadReg
/* 802A296C 0029E5CC 54 60 06 B6 */ rlwinm r0, r3, 0, 0x1a, 0x1b
/* 802A2970 0029E5D0 38 60 00 01 */ li r3, 1
/* 802A2974 0029E5D4 60 04 00 04 */ ori r4, r0, 4
/* 802A2978 0029E5D8 4B FF FF 65 */ bl IPCWriteReg
/* 802A297C 0029E5DC 3C 00 40 00 */ lis r0, 0x4000
/* 802A2980 0029E5E0 3C 60 CD 00 */ lis r3, 0xCD000030@ha
/* 802A2984 0029E5E4 90 03 00 30 */ stw r0, 0xCD000030@l(r3)
/* 802A2988 0029E5E8 7F E3 FB 78 */ mr r3, r31
/* 802A298C 0029E5EC 38 80 00 20 */ li r4, 0x20
/* 802A2990 0029E5F0 4B FC 7C 99 */ bl DCInvalidateRange
/* 802A2994 0029E5F4 80 1F 00 08 */ lwz r0, 8(r31)
/* 802A2998 0029E5F8 2C 00 00 06 */ cmpwi r0, 6
/* 802A299C 0029E5FC 41 82 00 54 */ beq lbl_802A29F0
/* 802A29A0 0029E600 40 80 00 10 */ bge lbl_802A29B0
/* 802A29A4 0029E604 2C 00 00 03 */ cmpwi r0, 3
/* 802A29A8 0029E608 41 82 00 14 */ beq lbl_802A29BC
/* 802A29AC 0029E60C 48 00 01 40 */ b lbl_802A2AEC
lbl_802A29B0:
/* 802A29B0 0029E610 2C 00 00 08 */ cmpwi r0, 8
/* 802A29B4 0029E614 40 80 01 38 */ bge lbl_802A2AEC
/* 802A29B8 0029E618 48 00 00 70 */ b lbl_802A2A28
lbl_802A29BC:
/* 802A29BC 0029E61C 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 802A29C0 0029E620 2C 03 00 00 */ cmpwi r3, 0
/* 802A29C4 0029E624 41 82 00 0C */ beq lbl_802A29D0
/* 802A29C8 0029E628 3C 03 80 00 */ addis r0, r3, 0x8000
/* 802A29CC 0029E62C 48 00 00 08 */ b lbl_802A29D4
lbl_802A29D0:
/* 802A29D0 0029E630 38 00 00 00 */ li r0, 0
lbl_802A29D4:
/* 802A29D4 0029E634 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802A29D8 0029E638 80 9F 00 04 */ lwz r4, 4(r31)
/* 802A29DC 0029E63C 2C 04 00 00 */ cmpwi r4, 0
/* 802A29E0 0029E640 40 81 01 0C */ ble lbl_802A2AEC
/* 802A29E4 0029E644 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 802A29E8 0029E648 4B FC 7C 41 */ bl DCInvalidateRange
/* 802A29EC 0029E64C 48 00 01 00 */ b lbl_802A2AEC
lbl_802A29F0:
/* 802A29F0 0029E650 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802A29F4 0029E654 2C 03 00 00 */ cmpwi r3, 0
/* 802A29F8 0029E658 41 82 00 0C */ beq lbl_802A2A04
/* 802A29FC 0029E65C 3C 03 80 00 */ addis r0, r3, 0x8000
/* 802A2A00 0029E660 48 00 00 08 */ b lbl_802A2A08
lbl_802A2A04:
/* 802A2A04 0029E664 38 00 00 00 */ li r0, 0
lbl_802A2A08:
/* 802A2A08 0029E668 90 1F 00 18 */ stw r0, 0x18(r31)
/* 802A2A0C 0029E66C 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 802A2A10 0029E670 80 9F 00 14 */ lwz r4, 0x14(r31)
/* 802A2A14 0029E674 4B FC 7C 15 */ bl DCInvalidateRange
/* 802A2A18 0029E678 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802A2A1C 0029E67C 80 9F 00 1C */ lwz r4, 0x1c(r31)
/* 802A2A20 0029E680 4B FC 7C 09 */ bl DCInvalidateRange
/* 802A2A24 0029E684 48 00 00 C8 */ b lbl_802A2AEC
lbl_802A2A28:
/* 802A2A28 0029E688 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802A2A2C 0029E68C 2C 03 00 00 */ cmpwi r3, 0
/* 802A2A30 0029E690 41 82 00 0C */ beq lbl_802A2A3C
/* 802A2A34 0029E694 3C 63 80 00 */ addis r3, r3, 0x8000
/* 802A2A38 0029E698 48 00 00 08 */ b lbl_802A2A40
lbl_802A2A3C:
/* 802A2A3C 0029E69C 38 60 00 00 */ li r3, 0
lbl_802A2A40:
/* 802A2A40 0029E6A0 90 7F 00 18 */ stw r3, 0x18(r31)
/* 802A2A44 0029E6A4 80 9F 00 10 */ lwz r4, 0x10(r31)
/* 802A2A48 0029E6A8 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 802A2A4C 0029E6AC 7C 04 02 14 */ add r0, r4, r0
/* 802A2A50 0029E6B0 54 04 18 38 */ slwi r4, r0, 3
/* 802A2A54 0029E6B4 4B FC 7B D5 */ bl DCInvalidateRange
/* 802A2A58 0029E6B8 3B 80 00 00 */ li r28, 0
/* 802A2A5C 0029E6BC 3B A0 00 00 */ li r29, 0
/* 802A2A60 0029E6C0 48 00 00 44 */ b lbl_802A2AA4
lbl_802A2A64:
/* 802A2A64 0029E6C4 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802A2A68 0029E6C8 7C 63 E8 2E */ lwzx r3, r3, r29
/* 802A2A6C 0029E6CC 2C 03 00 00 */ cmpwi r3, 0
/* 802A2A70 0029E6D0 41 82 00 0C */ beq lbl_802A2A7C
/* 802A2A74 0029E6D4 3C 03 80 00 */ addis r0, r3, 0x8000
/* 802A2A78 0029E6D8 48 00 00 08 */ b lbl_802A2A80
lbl_802A2A7C:
/* 802A2A7C 0029E6DC 38 00 00 00 */ li r0, 0
lbl_802A2A80:
/* 802A2A80 0029E6E0 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802A2A84 0029E6E4 7C 03 E9 2E */ stwx r0, r3, r29
/* 802A2A88 0029E6E8 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802A2A8C 0029E6EC 7C 83 EA 14 */ add r4, r3, r29
/* 802A2A90 0029E6F0 7C 63 E8 2E */ lwzx r3, r3, r29
/* 802A2A94 0029E6F4 80 84 00 04 */ lwz r4, 4(r4)
/* 802A2A98 0029E6F8 4B FC 7B 91 */ bl DCInvalidateRange
/* 802A2A9C 0029E6FC 3B 9C 00 01 */ addi r28, r28, 1
/* 802A2AA0 0029E700 3B BD 00 08 */ addi r29, r29, 8
lbl_802A2AA4:
/* 802A2AA4 0029E704 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 802A2AA8 0029E708 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 802A2AAC 0029E70C 7C 03 02 14 */ add r0, r3, r0
/* 802A2AB0 0029E710 7C 1C 00 40 */ cmplw r28, r0
/* 802A2AB4 0029E714 41 80 FF B0 */ blt lbl_802A2A64
/* 802A2AB8 0029E718 80 0D AE 00 */ lwz r0, lbl_806400C0-_SDA_BASE_(r13)
/* 802A2ABC 0029E71C 2C 00 00 00 */ cmpwi r0, 0
/* 802A2AC0 0029E720 41 82 00 2C */ beq lbl_802A2AEC
/* 802A2AC4 0029E724 80 0D AE 04 */ lwz r0, lbl_806400C4-_SDA_BASE_(r13)
/* 802A2AC8 0029E728 7C 00 F8 40 */ cmplw r0, r31
/* 802A2ACC 0029E72C 40 82 00 20 */ bne lbl_802A2AEC
/* 802A2AD0 0029E730 80 6D 89 88 */ lwz r3, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2AD4 0029E734 38 00 00 00 */ li r0, 0
/* 802A2AD8 0029E738 90 0D AE 00 */ stw r0, lbl_806400C0-_SDA_BASE_(r13)
/* 802A2ADC 0029E73C 2C 03 00 01 */ cmpwi r3, 1
/* 802A2AE0 0029E740 40 80 00 0C */ bge lbl_802A2AEC
/* 802A2AE4 0029E744 38 03 00 01 */ addi r0, r3, 1
/* 802A2AE8 0029E748 90 0D 89 88 */ stw r0, lbl_8063DC48-_SDA_BASE_(r13)
lbl_802A2AEC:
/* 802A2AEC 0029E74C 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 802A2AF0 0029E750 2C 00 00 00 */ cmpwi r0, 0
/* 802A2AF4 0029E754 41 82 00 48 */ beq lbl_802A2B3C
/* 802A2AF8 0029E758 38 61 00 08 */ addi r3, r1, 8
/* 802A2AFC 0029E75C 4B FC 85 95 */ bl OSClearContext
/* 802A2B00 0029E760 38 61 00 08 */ addi r3, r1, 8
/* 802A2B04 0029E764 4B FC 83 65 */ bl OSSetCurrentContext
/* 802A2B08 0029E768 81 9F 00 20 */ lwz r12, 0x20(r31)
/* 802A2B0C 0029E76C 80 7F 00 04 */ lwz r3, 4(r31)
/* 802A2B10 0029E770 80 9F 00 24 */ lwz r4, 0x24(r31)
/* 802A2B14 0029E774 7D 89 03 A6 */ mtctr r12
/* 802A2B18 0029E778 4E 80 04 21 */ bctrl
/* 802A2B1C 0029E77C 38 61 00 08 */ addi r3, r1, 8
/* 802A2B20 0029E780 4B FC 85 71 */ bl OSClearContext
/* 802A2B24 0029E784 7F C3 F3 78 */ mr r3, r30
/* 802A2B28 0029E788 4B FC 83 41 */ bl OSSetCurrentContext
/* 802A2B2C 0029E78C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A2B30 0029E790 7F E4 FB 78 */ mr r4, r31
/* 802A2B34 0029E794 48 00 18 09 */ bl iosFree
/* 802A2B38 0029E798 48 00 00 0C */ b lbl_802A2B44
lbl_802A2B3C:
/* 802A2B3C 0029E79C 38 7F 00 2C */ addi r3, r31, 0x2c
/* 802A2B40 0029E7A0 4B FC F9 21 */ bl OSWakeupThread
lbl_802A2B44:
/* 802A2B44 0029E7A4 38 60 00 01 */ li r3, 1
/* 802A2B48 0029E7A8 4B FF FD 85 */ bl IPCReadReg
/* 802A2B4C 0029E7AC 54 60 06 B6 */ rlwinm r0, r3, 0, 0x1a, 0x1b
/* 802A2B50 0029E7B0 38 60 00 01 */ li r3, 1
/* 802A2B54 0029E7B4 60 04 00 08 */ ori r4, r0, 8
/* 802A2B58 0029E7B8 4B FF FD 85 */ bl IPCWriteReg
/* 802A2B5C 0029E7BC 80 9F 00 08 */ lwz r4, 8(r31)
/* 802A2B60 0029E7C0 7F E3 FB 78 */ mr r3, r31
/* 802A2B64 0029E7C4 48 00 1B 0D */ bl IPCiProfReply
lbl_802A2B68:
/* 802A2B68 0029E7C8 80 01 02 E4 */ lwz r0, 0x2e4(r1)
/* 802A2B6C 0029E7CC 83 E1 02 DC */ lwz r31, 0x2dc(r1)
/* 802A2B70 0029E7D0 83 C1 02 D8 */ lwz r30, 0x2d8(r1)
/* 802A2B74 0029E7D4 83 A1 02 D4 */ lwz r29, 0x2d4(r1)
/* 802A2B78 0029E7D8 83 81 02 D0 */ lwz r28, 0x2d0(r1)
/* 802A2B7C 0029E7DC 7C 08 03 A6 */ mtlr r0
/* 802A2B80 0029E7E0 38 21 02 E0 */ addi r1, r1, 0x2e0
/* 802A2B84 0029E7E4 4E 80 00 20 */ blr
IPCInterruptHandler:
/* 802A2B88 0029E7E8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A2B8C 0029E7EC 7C 08 02 A6 */ mflr r0
/* 802A2B90 0029E7F0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A2B94 0029E7F4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A2B98 0029E7F8 7C 9F 23 78 */ mr r31, r4
/* 802A2B9C 0029E7FC 93 C1 00 08 */ stw r30, 8(r1)
/* 802A2BA0 0029E800 7C 7E 1B 78 */ mr r30, r3
/* 802A2BA4 0029E804 38 60 00 01 */ li r3, 1
/* 802A2BA8 0029E808 4B FF FD 25 */ bl IPCReadReg
/* 802A2BAC 0029E80C 70 60 00 14 */ andi. r0, r3, 0x14
/* 802A2BB0 0029E810 28 00 00 14 */ cmplwi r0, 0x14
/* 802A2BB4 0029E814 40 82 00 10 */ bne lbl_802A2BC4
/* 802A2BB8 0029E818 7F C3 F3 78 */ mr r3, r30
/* 802A2BBC 0029E81C 7F E4 FB 78 */ mr r4, r31
/* 802A2BC0 0029E820 4B FF FD 71 */ bl IpcReplyHandler
lbl_802A2BC4:
/* 802A2BC4 0029E824 38 60 00 01 */ li r3, 1
/* 802A2BC8 0029E828 4B FF FD 05 */ bl IPCReadReg
/* 802A2BCC 0029E82C 70 60 00 22 */ andi. r0, r3, 0x22
/* 802A2BD0 0029E830 28 00 00 22 */ cmplwi r0, 0x22
/* 802A2BD4 0029E834 40 82 01 54 */ bne lbl_802A2D28
/* 802A2BD8 0029E838 38 60 00 01 */ li r3, 1
/* 802A2BDC 0029E83C 4B FF FC F1 */ bl IPCReadReg
/* 802A2BE0 0029E840 54 60 06 B6 */ rlwinm r0, r3, 0, 0x1a, 0x1b
/* 802A2BE4 0029E844 38 60 00 01 */ li r3, 1
/* 802A2BE8 0029E848 60 04 00 02 */ ori r4, r0, 2
/* 802A2BEC 0029E84C 4B FF FC F1 */ bl IPCWriteReg
/* 802A2BF0 0029E850 3C 00 40 00 */ lis r0, 0x4000
/* 802A2BF4 0029E854 3C 60 CD 00 */ lis r3, 0xCD000030@ha
/* 802A2BF8 0029E858 90 03 00 30 */ stw r0, 0xCD000030@l(r3)
/* 802A2BFC 0029E85C 83 ED 89 88 */ lwz r31, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2C00 0029E860 2C 1F 00 01 */ cmpwi r31, 1
/* 802A2C04 0029E864 40 80 00 10 */ bge lbl_802A2C14
/* 802A2C08 0029E868 3B FF 00 01 */ addi r31, r31, 1
/* 802A2C0C 0029E86C 93 ED 89 88 */ stw r31, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2C10 0029E870 48 00 1A 51 */ bl IPCiProfAck
lbl_802A2C14:
/* 802A2C14 0029E874 2C 1F 00 00 */ cmpwi r31, 0
/* 802A2C18 0029E878 40 81 01 10 */ ble lbl_802A2D28
/* 802A2C1C 0029E87C 80 0D AE 00 */ lwz r0, lbl_806400C0-_SDA_BASE_(r13)
/* 802A2C20 0029E880 2C 00 00 00 */ cmpwi r0, 0
/* 802A2C24 0029E884 41 82 00 38 */ beq lbl_802A2C5C
/* 802A2C28 0029E888 80 6D AE 04 */ lwz r3, lbl_806400C4-_SDA_BASE_(r13)
/* 802A2C2C 0029E88C 38 00 00 00 */ li r0, 0
/* 802A2C30 0029E890 90 03 00 04 */ stw r0, 4(r3)
/* 802A2C34 0029E894 80 6D AE 04 */ lwz r3, lbl_806400C4-_SDA_BASE_(r13)
/* 802A2C38 0029E898 90 0D AE 00 */ stw r0, lbl_806400C0-_SDA_BASE_(r13)
/* 802A2C3C 0029E89C 38 63 00 2C */ addi r3, r3, 0x2c
/* 802A2C40 0029E8A0 4B FC F8 21 */ bl OSWakeupThread
/* 802A2C44 0029E8A4 38 60 00 01 */ li r3, 1
/* 802A2C48 0029E8A8 4B FF FC 85 */ bl IPCReadReg
/* 802A2C4C 0029E8AC 54 60 06 B6 */ rlwinm r0, r3, 0, 0x1a, 0x1b
/* 802A2C50 0029E8B0 38 60 00 01 */ li r3, 1
/* 802A2C54 0029E8B4 60 04 00 08 */ ori r4, r0, 8
/* 802A2C58 0029E8B8 4B FF FC 85 */ bl IPCWriteReg
lbl_802A2C5C:
/* 802A2C5C 0029E8BC 3C 80 80 53 */ lis r4, lbl_80536B60@ha
/* 802A2C60 0029E8C0 38 64 6B 60 */ addi r3, r4, lbl_80536B60@l
/* 802A2C64 0029E8C4 80 84 6B 60 */ lwz r4, 0x6b60(r4)
/* 802A2C68 0029E8C8 80 03 00 04 */ lwz r0, 4(r3)
/* 802A2C6C 0029E8CC 7C 00 20 40 */ cmplw r0, r4
/* 802A2C70 0029E8D0 40 80 00 0C */ bge lbl_802A2C7C
/* 802A2C74 0029E8D4 7C 04 00 50 */ subf r0, r4, r0
/* 802A2C78 0029E8D8 48 00 00 10 */ b lbl_802A2C88
lbl_802A2C7C:
/* 802A2C7C 0029E8DC 7C 04 00 50 */ subf r0, r4, r0
/* 802A2C80 0029E8E0 7C 00 00 34 */ cntlzw r0, r0
/* 802A2C84 0029E8E4 54 00 D9 7E */ srwi r0, r0, 5
lbl_802A2C88:
/* 802A2C88 0029E8E8 2C 00 00 00 */ cmpwi r0, 0
/* 802A2C8C 0029E8EC 40 82 00 9C */ bne lbl_802A2D28
/* 802A2C90 0029E8F0 3C 60 80 53 */ lis r3, lbl_80536B60@ha
/* 802A2C94 0029E8F4 38 63 6B 60 */ addi r3, r3, lbl_80536B60@l
/* 802A2C98 0029E8F8 80 03 00 08 */ lwz r0, 8(r3)
/* 802A2C9C 0029E8FC 54 00 10 3A */ slwi r0, r0, 2
/* 802A2CA0 0029E900 7C 63 02 14 */ add r3, r3, r0
/* 802A2CA4 0029E904 80 83 00 10 */ lwz r4, 0x10(r3)
/* 802A2CA8 0029E908 2C 04 00 00 */ cmpwi r4, 0
/* 802A2CAC 0029E90C 41 82 00 7C */ beq lbl_802A2D28
/* 802A2CB0 0029E910 80 04 00 28 */ lwz r0, 0x28(r4)
/* 802A2CB4 0029E914 2C 00 00 00 */ cmpwi r0, 0
/* 802A2CB8 0029E918 41 82 00 1C */ beq lbl_802A2CD4
/* 802A2CBC 0029E91C 80 6D 89 88 */ lwz r3, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2CC0 0029E920 38 00 00 01 */ li r0, 1
/* 802A2CC4 0029E924 90 0D AE 00 */ stw r0, lbl_806400C0-_SDA_BASE_(r13)
/* 802A2CC8 0029E928 38 03 FF FF */ addi r0, r3, -1
/* 802A2CCC 0029E92C 90 8D AE 04 */ stw r4, lbl_806400C4-_SDA_BASE_(r13)
/* 802A2CD0 0029E930 90 0D 89 88 */ stw r0, lbl_8063DC48-_SDA_BASE_(r13)
lbl_802A2CD4:
/* 802A2CD4 0029E934 3C 84 80 00 */ addis r4, r4, 0x8000
/* 802A2CD8 0029E938 38 60 00 00 */ li r3, 0
/* 802A2CDC 0029E93C 4B FF FC 01 */ bl IPCWriteReg
/* 802A2CE0 0029E940 3C E0 80 53 */ lis r7, lbl_80536B60@ha
/* 802A2CE4 0029E944 80 6D 89 88 */ lwz r3, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2CE8 0029E948 38 C7 6B 60 */ addi r6, r7, lbl_80536B60@l
/* 802A2CEC 0029E94C 80 87 6B 60 */ lwz r4, 0x6b60(r7)
/* 802A2CF0 0029E950 80 A6 00 08 */ lwz r5, 8(r6)
/* 802A2CF4 0029E954 38 03 FF FF */ addi r0, r3, -1
/* 802A2CF8 0029E958 90 0D 89 88 */ stw r0, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2CFC 0029E95C 38 84 00 01 */ addi r4, r4, 1
/* 802A2D00 0029E960 38 05 00 01 */ addi r0, r5, 1
/* 802A2D04 0029E964 38 60 00 01 */ li r3, 1
/* 802A2D08 0029E968 54 00 07 3E */ clrlwi r0, r0, 0x1c
/* 802A2D0C 0029E96C 90 87 6B 60 */ stw r4, 0x6b60(r7)
/* 802A2D10 0029E970 90 06 00 08 */ stw r0, 8(r6)
/* 802A2D14 0029E974 4B FF FB B9 */ bl IPCReadReg
/* 802A2D18 0029E978 54 60 06 B6 */ rlwinm r0, r3, 0, 0x1a, 0x1b
/* 802A2D1C 0029E97C 38 60 00 01 */ li r3, 1
/* 802A2D20 0029E980 60 04 00 01 */ ori r4, r0, 1
/* 802A2D24 0029E984 4B FF FB B9 */ bl IPCWriteReg
lbl_802A2D28:
/* 802A2D28 0029E988 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A2D2C 0029E98C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A2D30 0029E990 83 C1 00 08 */ lwz r30, 8(r1)
/* 802A2D34 0029E994 7C 08 03 A6 */ mtlr r0
/* 802A2D38 0029E998 38 21 00 10 */ addi r1, r1, 0x10
/* 802A2D3C 0029E99C 4E 80 00 20 */ blr
.global IPCCltInit
IPCCltInit:
/* 802A2D40 0029E9A0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A2D44 0029E9A4 7C 08 02 A6 */ mflr r0
/* 802A2D48 0029E9A8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A2D4C 0029E9AC 80 0D AE 08 */ lwz r0, lbl_806400C8-_SDA_BASE_(r13)
/* 802A2D50 0029E9B0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A2D54 0029E9B4 2C 00 00 00 */ cmpwi r0, 0
/* 802A2D58 0029E9B8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A2D5C 0029E9BC 3B C0 00 00 */ li r30, 0
/* 802A2D60 0029E9C0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A2D64 0029E9C4 40 82 00 70 */ bne lbl_802A2DD4
/* 802A2D68 0029E9C8 38 00 00 01 */ li r0, 1
/* 802A2D6C 0029E9CC 90 0D AE 08 */ stw r0, lbl_806400C8-_SDA_BASE_(r13)
/* 802A2D70 0029E9D0 4B FF FB 11 */ bl IPCInit
/* 802A2D74 0029E9D4 4B FF FB 81 */ bl IPCGetBufferLo
/* 802A2D78 0029E9D8 7C 7D 1B 78 */ mr r29, r3
/* 802A2D7C 0029E9DC 3B E3 08 00 */ addi r31, r3, 0x800
/* 802A2D80 0029E9E0 4B FF FB 6D */ bl IPCGetBufferHi
/* 802A2D84 0029E9E4 7C 1F 18 40 */ cmplw r31, r3
/* 802A2D88 0029E9E8 40 81 00 0C */ ble lbl_802A2D94
/* 802A2D8C 0029E9EC 3B C0 FF EA */ li r30, -22
/* 802A2D90 0029E9F0 48 00 00 44 */ b lbl_802A2DD4
lbl_802A2D94:
/* 802A2D94 0029E9F4 7F A3 EB 78 */ mr r3, r29
/* 802A2D98 0029E9F8 38 80 08 00 */ li r4, 0x800
/* 802A2D9C 0029E9FC 48 00 12 69 */ bl iosCreateHeap
/* 802A2DA0 0029EA00 90 6D 89 8C */ stw r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A2DA4 0029EA04 7F E3 FB 78 */ mr r3, r31
/* 802A2DA8 0029EA08 4B FF FB 55 */ bl IPCSetBufferLo
/* 802A2DAC 0029EA0C 3C 80 80 2A */ lis r4, IPCInterruptHandler@ha
/* 802A2DB0 0029EA10 38 60 00 1B */ li r3, 0x1b
/* 802A2DB4 0029EA14 38 84 2B 88 */ addi r4, r4, IPCInterruptHandler@l
/* 802A2DB8 0029EA18 4B FC B9 F1 */ bl __OSSetInterruptHandler
/* 802A2DBC 0029EA1C 38 60 00 10 */ li r3, 0x10
/* 802A2DC0 0029EA20 4B FC BD AD */ bl __OSUnmaskInterrupts
/* 802A2DC4 0029EA24 38 60 00 01 */ li r3, 1
/* 802A2DC8 0029EA28 38 80 00 38 */ li r4, 0x38
/* 802A2DCC 0029EA2C 4B FF FB 11 */ bl IPCWriteReg
/* 802A2DD0 0029EA30 48 00 17 59 */ bl IPCiProfInit
lbl_802A2DD4:
/* 802A2DD4 0029EA34 7F C3 F3 78 */ mr r3, r30
/* 802A2DD8 0029EA38 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A2DDC 0029EA3C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A2DE0 0029EA40 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A2DE4 0029EA44 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A2DE8 0029EA48 7C 08 03 A6 */ mtlr r0
/* 802A2DEC 0029EA4C 38 21 00 20 */ addi r1, r1, 0x20
/* 802A2DF0 0029EA50 4E 80 00 20 */ blr
.global __ios_Ipc2
__ios_Ipc2:
/* 802A2DF4 0029EA54 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A2DF8 0029EA58 7C 08 02 A6 */ mflr r0
/* 802A2DFC 0029EA5C 2C 03 00 00 */ cmpwi r3, 0
/* 802A2E00 0029EA60 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A2E04 0029EA64 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A2E08 0029EA68 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A2E0C 0029EA6C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A2E10 0029EA70 7C 9D 23 78 */ mr r29, r4
/* 802A2E14 0029EA74 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A2E18 0029EA78 7C 7C 1B 78 */ mr r28, r3
/* 802A2E1C 0029EA7C 40 82 00 0C */ bne lbl_802A2E28
/* 802A2E20 0029EA80 3B E0 FF FC */ li r31, -4
/* 802A2E24 0029EA84 48 00 01 DC */ b lbl_802A3000
lbl_802A2E28:
/* 802A2E28 0029EA88 2C 04 00 00 */ cmpwi r4, 0
/* 802A2E2C 0029EA8C 40 82 00 0C */ bne lbl_802A2E38
/* 802A2E30 0029EA90 38 63 00 2C */ addi r3, r3, 0x2c
/* 802A2E34 0029EA94 4B FC E4 B5 */ bl OSInitThreadQueue
lbl_802A2E38:
/* 802A2E38 0029EA98 7F 83 E3 78 */ mr r3, r28
/* 802A2E3C 0029EA9C 38 80 00 20 */ li r4, 0x20
/* 802A2E40 0029EAA0 4B FC 78 15 */ bl DCFlushRange
/* 802A2E44 0029EAA4 4B FC B9 19 */ bl OSDisableInterrupts
/* 802A2E48 0029EAA8 3C 80 80 53 */ lis r4, lbl_80536B60@ha
/* 802A2E4C 0029EAAC 7C 7E 1B 78 */ mr r30, r3
/* 802A2E50 0029EAB0 38 64 6B 60 */ addi r3, r4, lbl_80536B60@l
/* 802A2E54 0029EAB4 80 84 6B 60 */ lwz r4, 0x6b60(r4)
/* 802A2E58 0029EAB8 80 03 00 04 */ lwz r0, 4(r3)
/* 802A2E5C 0029EABC 3B E0 00 00 */ li r31, 0
/* 802A2E60 0029EAC0 7C 00 20 40 */ cmplw r0, r4
/* 802A2E64 0029EAC4 40 80 00 0C */ bge lbl_802A2E70
/* 802A2E68 0029EAC8 7C 04 00 50 */ subf r0, r4, r0
/* 802A2E6C 0029EACC 48 00 00 20 */ b lbl_802A2E8C
lbl_802A2E70:
/* 802A2E70 0029EAD0 7C 84 00 50 */ subf r4, r4, r0
/* 802A2E74 0029EAD4 38 60 00 10 */ li r3, 0x10
/* 802A2E78 0029EAD8 38 04 FF F0 */ addi r0, r4, -16
/* 802A2E7C 0029EADC 7C 83 1B 38 */ orc r3, r4, r3
/* 802A2E80 0029EAE0 54 00 F8 7E */ srwi r0, r0, 1
/* 802A2E84 0029EAE4 7C 00 18 50 */ subf r0, r0, r3
/* 802A2E88 0029EAE8 54 00 0F FE */ srwi r0, r0, 0x1f
lbl_802A2E8C:
/* 802A2E8C 0029EAEC 2C 00 00 00 */ cmpwi r0, 0
/* 802A2E90 0029EAF0 41 82 00 0C */ beq lbl_802A2E9C
/* 802A2E94 0029EAF4 3B E0 FF F8 */ li r31, -8
/* 802A2E98 0029EAF8 48 00 00 44 */ b lbl_802A2EDC
lbl_802A2E9C:
/* 802A2E9C 0029EAFC 3C C0 80 53 */ lis r6, lbl_80536B60@ha
/* 802A2EA0 0029EB00 7F 83 E3 78 */ mr r3, r28
/* 802A2EA4 0029EB04 38 C6 6B 60 */ addi r6, r6, lbl_80536B60@l
/* 802A2EA8 0029EB08 80 06 00 0C */ lwz r0, 0xc(r6)
/* 802A2EAC 0029EB0C 54 00 10 3A */ slwi r0, r0, 2
/* 802A2EB0 0029EB10 7C 86 02 14 */ add r4, r6, r0
/* 802A2EB4 0029EB14 93 84 00 10 */ stw r28, 0x10(r4)
/* 802A2EB8 0029EB18 80 A6 00 0C */ lwz r5, 0xc(r6)
/* 802A2EBC 0029EB1C 80 86 00 04 */ lwz r4, 4(r6)
/* 802A2EC0 0029EB20 38 05 00 01 */ addi r0, r5, 1
/* 802A2EC4 0029EB24 54 05 07 3E */ clrlwi r5, r0, 0x1c
/* 802A2EC8 0029EB28 38 04 00 01 */ addi r0, r4, 1
/* 802A2ECC 0029EB2C 90 A6 00 0C */ stw r5, 0xc(r6)
/* 802A2ED0 0029EB30 90 06 00 04 */ stw r0, 4(r6)
/* 802A2ED4 0029EB34 80 9C 00 08 */ lwz r4, 8(r28)
/* 802A2ED8 0029EB38 48 00 17 09 */ bl IPCiProfQueueReq
lbl_802A2EDC:
/* 802A2EDC 0029EB3C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A2EE0 0029EB40 41 82 00 24 */ beq lbl_802A2F04
/* 802A2EE4 0029EB44 7F C3 F3 78 */ mr r3, r30
/* 802A2EE8 0029EB48 4B FC B8 9D */ bl OSRestoreInterrupts
/* 802A2EEC 0029EB4C 2C 1D 00 00 */ cmpwi r29, 0
/* 802A2EF0 0029EB50 41 82 01 10 */ beq lbl_802A3000
/* 802A2EF4 0029EB54 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A2EF8 0029EB58 7F 84 E3 78 */ mr r4, r28
/* 802A2EFC 0029EB5C 48 00 14 41 */ bl iosFree
/* 802A2F00 0029EB60 48 00 01 00 */ b lbl_802A3000
lbl_802A2F04:
/* 802A2F04 0029EB64 80 0D 89 88 */ lwz r0, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2F08 0029EB68 2C 00 00 00 */ cmpwi r0, 0
/* 802A2F0C 0029EB6C 40 81 00 D0 */ ble lbl_802A2FDC
/* 802A2F10 0029EB70 3C 80 80 53 */ lis r4, lbl_80536B60@ha
/* 802A2F14 0029EB74 38 64 6B 60 */ addi r3, r4, lbl_80536B60@l
/* 802A2F18 0029EB78 80 84 6B 60 */ lwz r4, 0x6b60(r4)
/* 802A2F1C 0029EB7C 80 03 00 04 */ lwz r0, 4(r3)
/* 802A2F20 0029EB80 7C 00 20 40 */ cmplw r0, r4
/* 802A2F24 0029EB84 40 80 00 0C */ bge lbl_802A2F30
/* 802A2F28 0029EB88 7C 04 00 50 */ subf r0, r4, r0
/* 802A2F2C 0029EB8C 48 00 00 10 */ b lbl_802A2F3C
lbl_802A2F30:
/* 802A2F30 0029EB90 7C 04 00 50 */ subf r0, r4, r0
/* 802A2F34 0029EB94 7C 00 00 34 */ cntlzw r0, r0
/* 802A2F38 0029EB98 54 00 D9 7E */ srwi r0, r0, 5
lbl_802A2F3C:
/* 802A2F3C 0029EB9C 2C 00 00 00 */ cmpwi r0, 0
/* 802A2F40 0029EBA0 40 82 00 9C */ bne lbl_802A2FDC
/* 802A2F44 0029EBA4 3C 60 80 53 */ lis r3, lbl_80536B60@ha
/* 802A2F48 0029EBA8 38 63 6B 60 */ addi r3, r3, lbl_80536B60@l
/* 802A2F4C 0029EBAC 80 03 00 08 */ lwz r0, 8(r3)
/* 802A2F50 0029EBB0 54 00 10 3A */ slwi r0, r0, 2
/* 802A2F54 0029EBB4 7C 63 02 14 */ add r3, r3, r0
/* 802A2F58 0029EBB8 80 83 00 10 */ lwz r4, 0x10(r3)
/* 802A2F5C 0029EBBC 2C 04 00 00 */ cmpwi r4, 0
/* 802A2F60 0029EBC0 41 82 00 7C */ beq lbl_802A2FDC
/* 802A2F64 0029EBC4 80 04 00 28 */ lwz r0, 0x28(r4)
/* 802A2F68 0029EBC8 2C 00 00 00 */ cmpwi r0, 0
/* 802A2F6C 0029EBCC 41 82 00 1C */ beq lbl_802A2F88
/* 802A2F70 0029EBD0 80 6D 89 88 */ lwz r3, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2F74 0029EBD4 38 00 00 01 */ li r0, 1
/* 802A2F78 0029EBD8 90 0D AE 00 */ stw r0, lbl_806400C0-_SDA_BASE_(r13)
/* 802A2F7C 0029EBDC 38 03 FF FF */ addi r0, r3, -1
/* 802A2F80 0029EBE0 90 8D AE 04 */ stw r4, lbl_806400C4-_SDA_BASE_(r13)
/* 802A2F84 0029EBE4 90 0D 89 88 */ stw r0, lbl_8063DC48-_SDA_BASE_(r13)
lbl_802A2F88:
/* 802A2F88 0029EBE8 3C 84 80 00 */ addis r4, r4, 0x8000
/* 802A2F8C 0029EBEC 38 60 00 00 */ li r3, 0
/* 802A2F90 0029EBF0 4B FF F9 4D */ bl IPCWriteReg
/* 802A2F94 0029EBF4 3C E0 80 53 */ lis r7, lbl_80536B60@ha
/* 802A2F98 0029EBF8 80 6D 89 88 */ lwz r3, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2F9C 0029EBFC 38 C7 6B 60 */ addi r6, r7, lbl_80536B60@l
/* 802A2FA0 0029EC00 80 87 6B 60 */ lwz r4, 0x6b60(r7)
/* 802A2FA4 0029EC04 80 A6 00 08 */ lwz r5, 8(r6)
/* 802A2FA8 0029EC08 38 03 FF FF */ addi r0, r3, -1
/* 802A2FAC 0029EC0C 90 0D 89 88 */ stw r0, lbl_8063DC48-_SDA_BASE_(r13)
/* 802A2FB0 0029EC10 38 84 00 01 */ addi r4, r4, 1
/* 802A2FB4 0029EC14 38 05 00 01 */ addi r0, r5, 1
/* 802A2FB8 0029EC18 38 60 00 01 */ li r3, 1
/* 802A2FBC 0029EC1C 54 00 07 3E */ clrlwi r0, r0, 0x1c
/* 802A2FC0 0029EC20 90 87 6B 60 */ stw r4, 0x6b60(r7)
/* 802A2FC4 0029EC24 90 06 00 08 */ stw r0, 8(r6)
/* 802A2FC8 0029EC28 4B FF F9 05 */ bl IPCReadReg
/* 802A2FCC 0029EC2C 54 60 06 B6 */ rlwinm r0, r3, 0, 0x1a, 0x1b
/* 802A2FD0 0029EC30 38 60 00 01 */ li r3, 1
/* 802A2FD4 0029EC34 60 04 00 01 */ ori r4, r0, 1
/* 802A2FD8 0029EC38 4B FF F9 05 */ bl IPCWriteReg
lbl_802A2FDC:
/* 802A2FDC 0029EC3C 2C 1D 00 00 */ cmpwi r29, 0
/* 802A2FE0 0029EC40 40 82 00 0C */ bne lbl_802A2FEC
/* 802A2FE4 0029EC44 38 7C 00 2C */ addi r3, r28, 0x2c
/* 802A2FE8 0029EC48 4B FC F3 8D */ bl OSSleepThread
lbl_802A2FEC:
/* 802A2FEC 0029EC4C 7F C3 F3 78 */ mr r3, r30
/* 802A2FF0 0029EC50 4B FC B7 95 */ bl OSRestoreInterrupts
/* 802A2FF4 0029EC54 2C 1D 00 00 */ cmpwi r29, 0
/* 802A2FF8 0029EC58 40 82 00 08 */ bne lbl_802A3000
/* 802A2FFC 0029EC5C 83 FC 00 04 */ lwz r31, 4(r28)
lbl_802A3000:
/* 802A3000 0029EC60 2C 1C 00 00 */ cmpwi r28, 0
/* 802A3004 0029EC64 41 82 00 18 */ beq lbl_802A301C
/* 802A3008 0029EC68 2C 1D 00 00 */ cmpwi r29, 0
/* 802A300C 0029EC6C 40 82 00 10 */ bne lbl_802A301C
/* 802A3010 0029EC70 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3014 0029EC74 7F 84 E3 78 */ mr r4, r28
/* 802A3018 0029EC78 48 00 13 25 */ bl iosFree
lbl_802A301C:
/* 802A301C 0029EC7C 7F E3 FB 78 */ mr r3, r31
/* 802A3020 0029EC80 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A3024 0029EC84 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A3028 0029EC88 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A302C 0029EC8C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A3030 0029EC90 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A3034 0029EC94 7C 08 03 A6 */ mtlr r0
/* 802A3038 0029EC98 38 21 00 20 */ addi r1, r1, 0x20
/* 802A303C 0029EC9C 4E 80 00 20 */ blr
.global IOS_OpenAsync
IOS_OpenAsync:
/* 802A3040 0029ECA0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A3044 0029ECA4 7C 08 02 A6 */ mflr r0
/* 802A3048 0029ECA8 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A304C 0029ECAC 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3050 0029ECB0 4B F2 40 D9 */ bl _savegpr_27
/* 802A3054 0029ECB4 34 01 00 08 */ addic. r0, r1, 8
/* 802A3058 0029ECB8 7C 7B 1B 78 */ mr r27, r3
/* 802A305C 0029ECBC 7C 9C 23 78 */ mr r28, r4
/* 802A3060 0029ECC0 7C BD 2B 78 */ mr r29, r5
/* 802A3064 0029ECC4 7C DF 33 78 */ mr r31, r6
/* 802A3068 0029ECC8 3B C0 00 00 */ li r30, 0
/* 802A306C 0029ECCC 40 82 00 0C */ bne lbl_802A3078
/* 802A3070 0029ECD0 3B C0 FF FC */ li r30, -4
/* 802A3074 0029ECD4 48 00 00 4C */ b lbl_802A30C0
lbl_802A3078:
/* 802A3078 0029ECD8 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A307C 0029ECDC 38 80 00 40 */ li r4, 0x40
/* 802A3080 0029ECE0 38 A0 00 20 */ li r5, 0x20
/* 802A3084 0029ECE4 48 00 12 B5 */ bl iosAllocAligned
/* 802A3088 0029ECE8 2C 03 00 00 */ cmpwi r3, 0
/* 802A308C 0029ECEC 90 61 00 08 */ stw r3, 8(r1)
/* 802A3090 0029ECF0 40 82 00 0C */ bne lbl_802A309C
/* 802A3094 0029ECF4 3B C0 FF EA */ li r30, -22
/* 802A3098 0029ECF8 48 00 00 28 */ b lbl_802A30C0
lbl_802A309C:
/* 802A309C 0029ECFC 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A30A0 0029ED00 38 A0 00 00 */ li r5, 0
/* 802A30A4 0029ED04 38 00 00 01 */ li r0, 1
/* 802A30A8 0029ED08 80 81 00 08 */ lwz r4, 8(r1)
/* 802A30AC 0029ED0C 93 E4 00 24 */ stw r31, 0x24(r4)
/* 802A30B0 0029ED10 80 81 00 08 */ lwz r4, 8(r1)
/* 802A30B4 0029ED14 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A30B8 0029ED18 90 03 00 00 */ stw r0, 0(r3)
/* 802A30BC 0029ED1C 90 A3 00 08 */ stw r5, 8(r3)
lbl_802A30C0:
/* 802A30C0 0029ED20 2C 1E 00 00 */ cmpwi r30, 0
/* 802A30C4 0029ED24 40 82 00 78 */ bne lbl_802A313C
/* 802A30C8 0029ED28 83 E1 00 08 */ lwz r31, 8(r1)
/* 802A30CC 0029ED2C 3B C0 00 00 */ li r30, 0
/* 802A30D0 0029ED30 2C 1F 00 00 */ cmpwi r31, 0
/* 802A30D4 0029ED34 40 82 00 0C */ bne lbl_802A30E0
/* 802A30D8 0029ED38 3B C0 FF FC */ li r30, -4
/* 802A30DC 0029ED3C 48 00 00 48 */ b lbl_802A3124
lbl_802A30E0:
/* 802A30E0 0029ED40 7F 63 DB 78 */ mr r3, r27
/* 802A30E4 0029ED44 38 80 00 40 */ li r4, 0x40
/* 802A30E8 0029ED48 48 00 00 08 */ b lbl_802A30F0
lbl_802A30EC:
/* 802A30EC 0029ED4C 38 63 00 01 */ addi r3, r3, 1
lbl_802A30F0:
/* 802A30F0 0029ED50 88 03 00 00 */ lbz r0, 0(r3)
/* 802A30F4 0029ED54 2C 00 00 00 */ cmpwi r0, 0
/* 802A30F8 0029ED58 41 82 00 10 */ beq lbl_802A3108
/* 802A30FC 0029ED5C 2C 04 00 00 */ cmpwi r4, 0
/* 802A3100 0029ED60 38 84 FF FF */ addi r4, r4, -1
/* 802A3104 0029ED64 40 82 FF E8 */ bne lbl_802A30EC
lbl_802A3108:
/* 802A3108 0029ED68 7C 9B 18 50 */ subf r4, r27, r3
/* 802A310C 0029ED6C 7F 63 DB 78 */ mr r3, r27
/* 802A3110 0029ED70 38 84 00 01 */ addi r4, r4, 1
/* 802A3114 0029ED74 4B FC 75 41 */ bl DCFlushRange
/* 802A3118 0029ED78 3C 1B 80 00 */ addis r0, r27, 0x8000
/* 802A311C 0029ED7C 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802A3120 0029ED80 93 9F 00 10 */ stw r28, 0x10(r31)
lbl_802A3124:
/* 802A3124 0029ED84 2C 1E 00 00 */ cmpwi r30, 0
/* 802A3128 0029ED88 40 82 00 14 */ bne lbl_802A313C
/* 802A312C 0029ED8C 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3130 0029ED90 7F A4 EB 78 */ mr r4, r29
/* 802A3134 0029ED94 4B FF FC C1 */ bl __ios_Ipc2
/* 802A3138 0029ED98 7C 7E 1B 78 */ mr r30, r3
lbl_802A313C:
/* 802A313C 0029ED9C 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3140 0029EDA0 7F C3 F3 78 */ mr r3, r30
/* 802A3144 0029EDA4 4B F2 40 31 */ bl _restgpr_27
/* 802A3148 0029EDA8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A314C 0029EDAC 7C 08 03 A6 */ mtlr r0
/* 802A3150 0029EDB0 38 21 00 30 */ addi r1, r1, 0x30
/* 802A3154 0029EDB4 4E 80 00 20 */ blr
.global IOS_Open
IOS_Open:
/* 802A3158 0029EDB8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A315C 0029EDBC 7C 08 02 A6 */ mflr r0
/* 802A3160 0029EDC0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A3164 0029EDC4 34 01 00 08 */ addic. r0, r1, 8
/* 802A3168 0029EDC8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A316C 0029EDCC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A3170 0029EDD0 3B C0 00 00 */ li r30, 0
/* 802A3174 0029EDD4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A3178 0029EDD8 7C 9D 23 78 */ mr r29, r4
/* 802A317C 0029EDDC 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A3180 0029EDE0 7C 7C 1B 78 */ mr r28, r3
/* 802A3184 0029EDE4 40 82 00 0C */ bne lbl_802A3190
/* 802A3188 0029EDE8 3B C0 FF FC */ li r30, -4
/* 802A318C 0029EDEC 48 00 00 4C */ b lbl_802A31D8
lbl_802A3190:
/* 802A3190 0029EDF0 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3194 0029EDF4 38 80 00 40 */ li r4, 0x40
/* 802A3198 0029EDF8 38 A0 00 20 */ li r5, 0x20
/* 802A319C 0029EDFC 48 00 11 9D */ bl iosAllocAligned
/* 802A31A0 0029EE00 2C 03 00 00 */ cmpwi r3, 0
/* 802A31A4 0029EE04 90 61 00 08 */ stw r3, 8(r1)
/* 802A31A8 0029EE08 40 82 00 0C */ bne lbl_802A31B4
/* 802A31AC 0029EE0C 3B C0 FF EA */ li r30, -22
/* 802A31B0 0029EE10 48 00 00 28 */ b lbl_802A31D8
lbl_802A31B4:
/* 802A31B4 0029EE14 38 A0 00 00 */ li r5, 0
/* 802A31B8 0029EE18 38 00 00 01 */ li r0, 1
/* 802A31BC 0029EE1C 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A31C0 0029EE20 80 81 00 08 */ lwz r4, 8(r1)
/* 802A31C4 0029EE24 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A31C8 0029EE28 80 81 00 08 */ lwz r4, 8(r1)
/* 802A31CC 0029EE2C 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A31D0 0029EE30 90 03 00 00 */ stw r0, 0(r3)
/* 802A31D4 0029EE34 90 A3 00 08 */ stw r5, 8(r3)
lbl_802A31D8:
/* 802A31D8 0029EE38 2C 1E 00 00 */ cmpwi r30, 0
/* 802A31DC 0029EE3C 40 82 00 78 */ bne lbl_802A3254
/* 802A31E0 0029EE40 83 E1 00 08 */ lwz r31, 8(r1)
/* 802A31E4 0029EE44 3B C0 00 00 */ li r30, 0
/* 802A31E8 0029EE48 2C 1F 00 00 */ cmpwi r31, 0
/* 802A31EC 0029EE4C 40 82 00 0C */ bne lbl_802A31F8
/* 802A31F0 0029EE50 3B C0 FF FC */ li r30, -4
/* 802A31F4 0029EE54 48 00 00 48 */ b lbl_802A323C
lbl_802A31F8:
/* 802A31F8 0029EE58 7F 83 E3 78 */ mr r3, r28
/* 802A31FC 0029EE5C 38 80 00 40 */ li r4, 0x40
/* 802A3200 0029EE60 48 00 00 08 */ b lbl_802A3208
lbl_802A3204:
/* 802A3204 0029EE64 38 63 00 01 */ addi r3, r3, 1
lbl_802A3208:
/* 802A3208 0029EE68 88 03 00 00 */ lbz r0, 0(r3)
/* 802A320C 0029EE6C 2C 00 00 00 */ cmpwi r0, 0
/* 802A3210 0029EE70 41 82 00 10 */ beq lbl_802A3220
/* 802A3214 0029EE74 2C 04 00 00 */ cmpwi r4, 0
/* 802A3218 0029EE78 38 84 FF FF */ addi r4, r4, -1
/* 802A321C 0029EE7C 40 82 FF E8 */ bne lbl_802A3204
lbl_802A3220:
/* 802A3220 0029EE80 7C 9C 18 50 */ subf r4, r28, r3
/* 802A3224 0029EE84 7F 83 E3 78 */ mr r3, r28
/* 802A3228 0029EE88 38 84 00 01 */ addi r4, r4, 1
/* 802A322C 0029EE8C 4B FC 74 29 */ bl DCFlushRange
/* 802A3230 0029EE90 3C 1C 80 00 */ addis r0, r28, 0x8000
/* 802A3234 0029EE94 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802A3238 0029EE98 93 BF 00 10 */ stw r29, 0x10(r31)
lbl_802A323C:
/* 802A323C 0029EE9C 2C 1E 00 00 */ cmpwi r30, 0
/* 802A3240 0029EEA0 40 82 00 14 */ bne lbl_802A3254
/* 802A3244 0029EEA4 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3248 0029EEA8 38 80 00 00 */ li r4, 0
/* 802A324C 0029EEAC 4B FF FB A9 */ bl __ios_Ipc2
/* 802A3250 0029EEB0 7C 7E 1B 78 */ mr r30, r3
lbl_802A3254:
/* 802A3254 0029EEB4 7F C3 F3 78 */ mr r3, r30
/* 802A3258 0029EEB8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A325C 0029EEBC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A3260 0029EEC0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A3264 0029EEC4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A3268 0029EEC8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A326C 0029EECC 7C 08 03 A6 */ mtlr r0
/* 802A3270 0029EED0 38 21 00 20 */ addi r1, r1, 0x20
/* 802A3274 0029EED4 4E 80 00 20 */ blr
.global IOS_CloseAsync
IOS_CloseAsync:
/* 802A3278 0029EED8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A327C 0029EEDC 7C 08 02 A6 */ mflr r0
/* 802A3280 0029EEE0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A3284 0029EEE4 34 01 00 08 */ addic. r0, r1, 8
/* 802A3288 0029EEE8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A328C 0029EEEC 3B E0 00 00 */ li r31, 0
/* 802A3290 0029EEF0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A3294 0029EEF4 7C BE 2B 78 */ mr r30, r5
/* 802A3298 0029EEF8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A329C 0029EEFC 7C 9D 23 78 */ mr r29, r4
/* 802A32A0 0029EF00 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A32A4 0029EF04 7C 7C 1B 78 */ mr r28, r3
/* 802A32A8 0029EF08 40 82 00 0C */ bne lbl_802A32B4
/* 802A32AC 0029EF0C 3B E0 FF FC */ li r31, -4
/* 802A32B0 0029EF10 48 00 00 4C */ b lbl_802A32FC
lbl_802A32B4:
/* 802A32B4 0029EF14 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A32B8 0029EF18 38 80 00 40 */ li r4, 0x40
/* 802A32BC 0029EF1C 38 A0 00 20 */ li r5, 0x20
/* 802A32C0 0029EF20 48 00 10 79 */ bl iosAllocAligned
/* 802A32C4 0029EF24 2C 03 00 00 */ cmpwi r3, 0
/* 802A32C8 0029EF28 90 61 00 08 */ stw r3, 8(r1)
/* 802A32CC 0029EF2C 40 82 00 0C */ bne lbl_802A32D8
/* 802A32D0 0029EF30 3B E0 FF EA */ li r31, -22
/* 802A32D4 0029EF34 48 00 00 28 */ b lbl_802A32FC
lbl_802A32D8:
/* 802A32D8 0029EF38 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A32DC 0029EF3C 38 A0 00 00 */ li r5, 0
/* 802A32E0 0029EF40 38 00 00 02 */ li r0, 2
/* 802A32E4 0029EF44 80 81 00 08 */ lwz r4, 8(r1)
/* 802A32E8 0029EF48 93 C4 00 24 */ stw r30, 0x24(r4)
/* 802A32EC 0029EF4C 80 81 00 08 */ lwz r4, 8(r1)
/* 802A32F0 0029EF50 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A32F4 0029EF54 90 03 00 00 */ stw r0, 0(r3)
/* 802A32F8 0029EF58 93 83 00 08 */ stw r28, 8(r3)
lbl_802A32FC:
/* 802A32FC 0029EF5C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3300 0029EF60 40 82 00 14 */ bne lbl_802A3314
/* 802A3304 0029EF64 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3308 0029EF68 7F A4 EB 78 */ mr r4, r29
/* 802A330C 0029EF6C 4B FF FA E9 */ bl __ios_Ipc2
/* 802A3310 0029EF70 7C 7F 1B 78 */ mr r31, r3
lbl_802A3314:
/* 802A3314 0029EF74 7F E3 FB 78 */ mr r3, r31
/* 802A3318 0029EF78 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A331C 0029EF7C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A3320 0029EF80 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A3324 0029EF84 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A3328 0029EF88 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A332C 0029EF8C 7C 08 03 A6 */ mtlr r0
/* 802A3330 0029EF90 38 21 00 20 */ addi r1, r1, 0x20
/* 802A3334 0029EF94 4E 80 00 20 */ blr
.global IOS_Close
IOS_Close:
/* 802A3338 0029EF98 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A333C 0029EF9C 7C 08 02 A6 */ mflr r0
/* 802A3340 0029EFA0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A3344 0029EFA4 34 01 00 08 */ addic. r0, r1, 8
/* 802A3348 0029EFA8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A334C 0029EFAC 3B E0 00 00 */ li r31, 0
/* 802A3350 0029EFB0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A3354 0029EFB4 7C 7E 1B 78 */ mr r30, r3
/* 802A3358 0029EFB8 40 82 00 0C */ bne lbl_802A3364
/* 802A335C 0029EFBC 3B E0 FF FC */ li r31, -4
/* 802A3360 0029EFC0 48 00 00 4C */ b lbl_802A33AC
lbl_802A3364:
/* 802A3364 0029EFC4 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3368 0029EFC8 38 80 00 40 */ li r4, 0x40
/* 802A336C 0029EFCC 38 A0 00 20 */ li r5, 0x20
/* 802A3370 0029EFD0 48 00 0F C9 */ bl iosAllocAligned
/* 802A3374 0029EFD4 2C 03 00 00 */ cmpwi r3, 0
/* 802A3378 0029EFD8 90 61 00 08 */ stw r3, 8(r1)
/* 802A337C 0029EFDC 40 82 00 0C */ bne lbl_802A3388
/* 802A3380 0029EFE0 3B E0 FF EA */ li r31, -22
/* 802A3384 0029EFE4 48 00 00 28 */ b lbl_802A33AC
lbl_802A3388:
/* 802A3388 0029EFE8 38 A0 00 00 */ li r5, 0
/* 802A338C 0029EFEC 38 00 00 02 */ li r0, 2
/* 802A3390 0029EFF0 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A3394 0029EFF4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3398 0029EFF8 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A339C 0029EFFC 80 81 00 08 */ lwz r4, 8(r1)
/* 802A33A0 0029F000 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A33A4 0029F004 90 03 00 00 */ stw r0, 0(r3)
/* 802A33A8 0029F008 93 C3 00 08 */ stw r30, 8(r3)
lbl_802A33AC:
/* 802A33AC 0029F00C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A33B0 0029F010 40 82 00 14 */ bne lbl_802A33C4
/* 802A33B4 0029F014 80 61 00 08 */ lwz r3, 8(r1)
/* 802A33B8 0029F018 38 80 00 00 */ li r4, 0
/* 802A33BC 0029F01C 4B FF FA 39 */ bl __ios_Ipc2
/* 802A33C0 0029F020 7C 7F 1B 78 */ mr r31, r3
lbl_802A33C4:
/* 802A33C4 0029F024 7F E3 FB 78 */ mr r3, r31
/* 802A33C8 0029F028 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A33CC 0029F02C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A33D0 0029F030 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A33D4 0029F034 7C 08 03 A6 */ mtlr r0
/* 802A33D8 0029F038 38 21 00 20 */ addi r1, r1, 0x20
/* 802A33DC 0029F03C 4E 80 00 20 */ blr
.global IOS_ReadAsync
IOS_ReadAsync:
/* 802A33E0 0029F040 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A33E4 0029F044 7C 08 02 A6 */ mflr r0
/* 802A33E8 0029F048 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A33EC 0029F04C 39 61 00 30 */ addi r11, r1, 0x30
/* 802A33F0 0029F050 4B F2 3D 35 */ bl _savegpr_26
/* 802A33F4 0029F054 34 01 00 08 */ addic. r0, r1, 8
/* 802A33F8 0029F058 7C 7A 1B 78 */ mr r26, r3
/* 802A33FC 0029F05C 7C 9B 23 78 */ mr r27, r4
/* 802A3400 0029F060 7C BC 2B 78 */ mr r28, r5
/* 802A3404 0029F064 7C DD 33 78 */ mr r29, r6
/* 802A3408 0029F068 7C FF 3B 78 */ mr r31, r7
/* 802A340C 0029F06C 3B C0 00 00 */ li r30, 0
/* 802A3410 0029F070 40 82 00 0C */ bne lbl_802A341C
/* 802A3414 0029F074 3B C0 FF FC */ li r30, -4
/* 802A3418 0029F078 48 00 00 4C */ b lbl_802A3464
lbl_802A341C:
/* 802A341C 0029F07C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3420 0029F080 38 80 00 40 */ li r4, 0x40
/* 802A3424 0029F084 38 A0 00 20 */ li r5, 0x20
/* 802A3428 0029F088 48 00 0F 11 */ bl iosAllocAligned
/* 802A342C 0029F08C 2C 03 00 00 */ cmpwi r3, 0
/* 802A3430 0029F090 90 61 00 08 */ stw r3, 8(r1)
/* 802A3434 0029F094 40 82 00 0C */ bne lbl_802A3440
/* 802A3438 0029F098 3B C0 FF EA */ li r30, -22
/* 802A343C 0029F09C 48 00 00 28 */ b lbl_802A3464
lbl_802A3440:
/* 802A3440 0029F0A0 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A3444 0029F0A4 38 A0 00 00 */ li r5, 0
/* 802A3448 0029F0A8 38 00 00 03 */ li r0, 3
/* 802A344C 0029F0AC 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3450 0029F0B0 93 E4 00 24 */ stw r31, 0x24(r4)
/* 802A3454 0029F0B4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3458 0029F0B8 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A345C 0029F0BC 90 03 00 00 */ stw r0, 0(r3)
/* 802A3460 0029F0C0 93 43 00 08 */ stw r26, 8(r3)
lbl_802A3464:
/* 802A3464 0029F0C4 2C 1E 00 00 */ cmpwi r30, 0
/* 802A3468 0029F0C8 40 82 00 5C */ bne lbl_802A34C4
/* 802A346C 0029F0CC 83 E1 00 08 */ lwz r31, 8(r1)
/* 802A3470 0029F0D0 3B C0 00 00 */ li r30, 0
/* 802A3474 0029F0D4 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3478 0029F0D8 40 82 00 0C */ bne lbl_802A3484
/* 802A347C 0029F0DC 3B C0 FF FC */ li r30, -4
/* 802A3480 0029F0E0 48 00 00 2C */ b lbl_802A34AC
lbl_802A3484:
/* 802A3484 0029F0E4 7F 63 DB 78 */ mr r3, r27
/* 802A3488 0029F0E8 7F 84 E3 78 */ mr r4, r28
/* 802A348C 0029F0EC 4B FC 71 9D */ bl DCInvalidateRange
/* 802A3490 0029F0F0 2C 1B 00 00 */ cmpwi r27, 0
/* 802A3494 0029F0F4 41 82 00 0C */ beq lbl_802A34A0
/* 802A3498 0029F0F8 3C 1B 80 00 */ addis r0, r27, 0x8000
/* 802A349C 0029F0FC 48 00 00 08 */ b lbl_802A34A4
lbl_802A34A0:
/* 802A34A0 0029F100 38 00 00 00 */ li r0, 0
lbl_802A34A4:
/* 802A34A4 0029F104 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802A34A8 0029F108 93 9F 00 10 */ stw r28, 0x10(r31)
lbl_802A34AC:
/* 802A34AC 0029F10C 2C 1E 00 00 */ cmpwi r30, 0
/* 802A34B0 0029F110 40 82 00 14 */ bne lbl_802A34C4
/* 802A34B4 0029F114 80 61 00 08 */ lwz r3, 8(r1)
/* 802A34B8 0029F118 7F A4 EB 78 */ mr r4, r29
/* 802A34BC 0029F11C 4B FF F9 39 */ bl __ios_Ipc2
/* 802A34C0 0029F120 7C 7E 1B 78 */ mr r30, r3
lbl_802A34C4:
/* 802A34C4 0029F124 39 61 00 30 */ addi r11, r1, 0x30
/* 802A34C8 0029F128 7F C3 F3 78 */ mr r3, r30
/* 802A34CC 0029F12C 4B F2 3C A5 */ bl _restgpr_26
/* 802A34D0 0029F130 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A34D4 0029F134 7C 08 03 A6 */ mtlr r0
/* 802A34D8 0029F138 38 21 00 30 */ addi r1, r1, 0x30
/* 802A34DC 0029F13C 4E 80 00 20 */ blr
.global IOS_Read
IOS_Read:
/* 802A34E0 0029F140 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A34E4 0029F144 7C 08 02 A6 */ mflr r0
/* 802A34E8 0029F148 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A34EC 0029F14C 34 01 00 08 */ addic. r0, r1, 8
/* 802A34F0 0029F150 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A34F4 0029F154 7C 7F 1B 78 */ mr r31, r3
/* 802A34F8 0029F158 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A34FC 0029F15C 3B C0 00 00 */ li r30, 0
/* 802A3500 0029F160 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A3504 0029F164 7C BD 2B 78 */ mr r29, r5
/* 802A3508 0029F168 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A350C 0029F16C 7C 9C 23 78 */ mr r28, r4
/* 802A3510 0029F170 40 82 00 0C */ bne lbl_802A351C
/* 802A3514 0029F174 3B C0 FF FC */ li r30, -4
/* 802A3518 0029F178 48 00 00 4C */ b lbl_802A3564
lbl_802A351C:
/* 802A351C 0029F17C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3520 0029F180 38 80 00 40 */ li r4, 0x40
/* 802A3524 0029F184 38 A0 00 20 */ li r5, 0x20
/* 802A3528 0029F188 48 00 0E 11 */ bl iosAllocAligned
/* 802A352C 0029F18C 2C 03 00 00 */ cmpwi r3, 0
/* 802A3530 0029F190 90 61 00 08 */ stw r3, 8(r1)
/* 802A3534 0029F194 40 82 00 0C */ bne lbl_802A3540
/* 802A3538 0029F198 3B C0 FF EA */ li r30, -22
/* 802A353C 0029F19C 48 00 00 28 */ b lbl_802A3564
lbl_802A3540:
/* 802A3540 0029F1A0 38 A0 00 00 */ li r5, 0
/* 802A3544 0029F1A4 38 00 00 03 */ li r0, 3
/* 802A3548 0029F1A8 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A354C 0029F1AC 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3550 0029F1B0 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A3554 0029F1B4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3558 0029F1B8 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A355C 0029F1BC 90 03 00 00 */ stw r0, 0(r3)
/* 802A3560 0029F1C0 93 E3 00 08 */ stw r31, 8(r3)
lbl_802A3564:
/* 802A3564 0029F1C4 2C 1E 00 00 */ cmpwi r30, 0
/* 802A3568 0029F1C8 40 82 00 5C */ bne lbl_802A35C4
/* 802A356C 0029F1CC 83 E1 00 08 */ lwz r31, 8(r1)
/* 802A3570 0029F1D0 3B C0 00 00 */ li r30, 0
/* 802A3574 0029F1D4 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3578 0029F1D8 40 82 00 0C */ bne lbl_802A3584
/* 802A357C 0029F1DC 3B C0 FF FC */ li r30, -4
/* 802A3580 0029F1E0 48 00 00 2C */ b lbl_802A35AC
lbl_802A3584:
/* 802A3584 0029F1E4 7F 83 E3 78 */ mr r3, r28
/* 802A3588 0029F1E8 7F A4 EB 78 */ mr r4, r29
/* 802A358C 0029F1EC 4B FC 70 9D */ bl DCInvalidateRange
/* 802A3590 0029F1F0 2C 1C 00 00 */ cmpwi r28, 0
/* 802A3594 0029F1F4 41 82 00 0C */ beq lbl_802A35A0
/* 802A3598 0029F1F8 3C 1C 80 00 */ addis r0, r28, 0x8000
/* 802A359C 0029F1FC 48 00 00 08 */ b lbl_802A35A4
lbl_802A35A0:
/* 802A35A0 0029F200 38 00 00 00 */ li r0, 0
lbl_802A35A4:
/* 802A35A4 0029F204 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802A35A8 0029F208 93 BF 00 10 */ stw r29, 0x10(r31)
lbl_802A35AC:
/* 802A35AC 0029F20C 2C 1E 00 00 */ cmpwi r30, 0
/* 802A35B0 0029F210 40 82 00 14 */ bne lbl_802A35C4
/* 802A35B4 0029F214 80 61 00 08 */ lwz r3, 8(r1)
/* 802A35B8 0029F218 38 80 00 00 */ li r4, 0
/* 802A35BC 0029F21C 4B FF F8 39 */ bl __ios_Ipc2
/* 802A35C0 0029F220 7C 7E 1B 78 */ mr r30, r3
lbl_802A35C4:
/* 802A35C4 0029F224 7F C3 F3 78 */ mr r3, r30
/* 802A35C8 0029F228 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A35CC 0029F22C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A35D0 0029F230 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A35D4 0029F234 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A35D8 0029F238 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A35DC 0029F23C 7C 08 03 A6 */ mtlr r0
/* 802A35E0 0029F240 38 21 00 20 */ addi r1, r1, 0x20
/* 802A35E4 0029F244 4E 80 00 20 */ blr
.global IOS_WriteAsync
IOS_WriteAsync:
/* 802A35E8 0029F248 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A35EC 0029F24C 7C 08 02 A6 */ mflr r0
/* 802A35F0 0029F250 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A35F4 0029F254 39 61 00 30 */ addi r11, r1, 0x30
/* 802A35F8 0029F258 4B F2 3B 2D */ bl _savegpr_26
/* 802A35FC 0029F25C 34 01 00 08 */ addic. r0, r1, 8
/* 802A3600 0029F260 7C 7A 1B 78 */ mr r26, r3
/* 802A3604 0029F264 7C 9B 23 78 */ mr r27, r4
/* 802A3608 0029F268 7C BC 2B 78 */ mr r28, r5
/* 802A360C 0029F26C 7C DD 33 78 */ mr r29, r6
/* 802A3610 0029F270 7C FE 3B 78 */ mr r30, r7
/* 802A3614 0029F274 3B E0 00 00 */ li r31, 0
/* 802A3618 0029F278 40 82 00 0C */ bne lbl_802A3624
/* 802A361C 0029F27C 3B E0 FF FC */ li r31, -4
/* 802A3620 0029F280 48 00 00 4C */ b lbl_802A366C
lbl_802A3624:
/* 802A3624 0029F284 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3628 0029F288 38 80 00 40 */ li r4, 0x40
/* 802A362C 0029F28C 38 A0 00 20 */ li r5, 0x20
/* 802A3630 0029F290 48 00 0D 09 */ bl iosAllocAligned
/* 802A3634 0029F294 2C 03 00 00 */ cmpwi r3, 0
/* 802A3638 0029F298 90 61 00 08 */ stw r3, 8(r1)
/* 802A363C 0029F29C 40 82 00 0C */ bne lbl_802A3648
/* 802A3640 0029F2A0 3B E0 FF EA */ li r31, -22
/* 802A3644 0029F2A4 48 00 00 28 */ b lbl_802A366C
lbl_802A3648:
/* 802A3648 0029F2A8 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A364C 0029F2AC 38 A0 00 00 */ li r5, 0
/* 802A3650 0029F2B0 38 00 00 04 */ li r0, 4
/* 802A3654 0029F2B4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3658 0029F2B8 93 C4 00 24 */ stw r30, 0x24(r4)
/* 802A365C 0029F2BC 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3660 0029F2C0 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3664 0029F2C4 90 03 00 00 */ stw r0, 0(r3)
/* 802A3668 0029F2C8 93 43 00 08 */ stw r26, 8(r3)
lbl_802A366C:
/* 802A366C 0029F2CC 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3670 0029F2D0 40 82 00 5C */ bne lbl_802A36CC
/* 802A3674 0029F2D4 80 A1 00 08 */ lwz r5, 8(r1)
/* 802A3678 0029F2D8 3B E0 00 00 */ li r31, 0
/* 802A367C 0029F2DC 2C 05 00 00 */ cmpwi r5, 0
/* 802A3680 0029F2E0 40 82 00 0C */ bne lbl_802A368C
/* 802A3684 0029F2E4 3B E0 FF FC */ li r31, -4
/* 802A3688 0029F2E8 48 00 00 2C */ b lbl_802A36B4
lbl_802A368C:
/* 802A368C 0029F2EC 2C 1B 00 00 */ cmpwi r27, 0
/* 802A3690 0029F2F0 41 82 00 0C */ beq lbl_802A369C
/* 802A3694 0029F2F4 3C 1B 80 00 */ addis r0, r27, 0x8000
/* 802A3698 0029F2F8 48 00 00 08 */ b lbl_802A36A0
lbl_802A369C:
/* 802A369C 0029F2FC 38 00 00 00 */ li r0, 0
lbl_802A36A0:
/* 802A36A0 0029F300 90 05 00 0C */ stw r0, 0xc(r5)
/* 802A36A4 0029F304 7F 63 DB 78 */ mr r3, r27
/* 802A36A8 0029F308 7F 84 E3 78 */ mr r4, r28
/* 802A36AC 0029F30C 93 85 00 10 */ stw r28, 0x10(r5)
/* 802A36B0 0029F310 4B FC 6F A5 */ bl DCFlushRange
lbl_802A36B4:
/* 802A36B4 0029F314 2C 1F 00 00 */ cmpwi r31, 0
/* 802A36B8 0029F318 40 82 00 14 */ bne lbl_802A36CC
/* 802A36BC 0029F31C 80 61 00 08 */ lwz r3, 8(r1)
/* 802A36C0 0029F320 7F A4 EB 78 */ mr r4, r29
/* 802A36C4 0029F324 4B FF F7 31 */ bl __ios_Ipc2
/* 802A36C8 0029F328 7C 7F 1B 78 */ mr r31, r3
lbl_802A36CC:
/* 802A36CC 0029F32C 39 61 00 30 */ addi r11, r1, 0x30
/* 802A36D0 0029F330 7F E3 FB 78 */ mr r3, r31
/* 802A36D4 0029F334 4B F2 3A 9D */ bl _restgpr_26
/* 802A36D8 0029F338 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A36DC 0029F33C 7C 08 03 A6 */ mtlr r0
/* 802A36E0 0029F340 38 21 00 30 */ addi r1, r1, 0x30
/* 802A36E4 0029F344 4E 80 00 20 */ blr
.global IOS_Write
IOS_Write:
/* 802A36E8 0029F348 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A36EC 0029F34C 7C 08 02 A6 */ mflr r0
/* 802A36F0 0029F350 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A36F4 0029F354 34 01 00 08 */ addic. r0, r1, 8
/* 802A36F8 0029F358 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A36FC 0029F35C 3B E0 00 00 */ li r31, 0
/* 802A3700 0029F360 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A3704 0029F364 7C BE 2B 78 */ mr r30, r5
/* 802A3708 0029F368 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A370C 0029F36C 7C 9D 23 78 */ mr r29, r4
/* 802A3710 0029F370 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A3714 0029F374 7C 7C 1B 78 */ mr r28, r3
/* 802A3718 0029F378 40 82 00 0C */ bne lbl_802A3724
/* 802A371C 0029F37C 3B E0 FF FC */ li r31, -4
/* 802A3720 0029F380 48 00 00 4C */ b lbl_802A376C
lbl_802A3724:
/* 802A3724 0029F384 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3728 0029F388 38 80 00 40 */ li r4, 0x40
/* 802A372C 0029F38C 38 A0 00 20 */ li r5, 0x20
/* 802A3730 0029F390 48 00 0C 09 */ bl iosAllocAligned
/* 802A3734 0029F394 2C 03 00 00 */ cmpwi r3, 0
/* 802A3738 0029F398 90 61 00 08 */ stw r3, 8(r1)
/* 802A373C 0029F39C 40 82 00 0C */ bne lbl_802A3748
/* 802A3740 0029F3A0 3B E0 FF EA */ li r31, -22
/* 802A3744 0029F3A4 48 00 00 28 */ b lbl_802A376C
lbl_802A3748:
/* 802A3748 0029F3A8 38 A0 00 00 */ li r5, 0
/* 802A374C 0029F3AC 38 00 00 04 */ li r0, 4
/* 802A3750 0029F3B0 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A3754 0029F3B4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3758 0029F3B8 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A375C 0029F3BC 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3760 0029F3C0 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3764 0029F3C4 90 03 00 00 */ stw r0, 0(r3)
/* 802A3768 0029F3C8 93 83 00 08 */ stw r28, 8(r3)
lbl_802A376C:
/* 802A376C 0029F3CC 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3770 0029F3D0 40 82 00 5C */ bne lbl_802A37CC
/* 802A3774 0029F3D4 80 A1 00 08 */ lwz r5, 8(r1)
/* 802A3778 0029F3D8 3B E0 00 00 */ li r31, 0
/* 802A377C 0029F3DC 2C 05 00 00 */ cmpwi r5, 0
/* 802A3780 0029F3E0 40 82 00 0C */ bne lbl_802A378C
/* 802A3784 0029F3E4 3B E0 FF FC */ li r31, -4
/* 802A3788 0029F3E8 48 00 00 2C */ b lbl_802A37B4
lbl_802A378C:
/* 802A378C 0029F3EC 2C 1D 00 00 */ cmpwi r29, 0
/* 802A3790 0029F3F0 41 82 00 0C */ beq lbl_802A379C
/* 802A3794 0029F3F4 3C 1D 80 00 */ addis r0, r29, 0x8000
/* 802A3798 0029F3F8 48 00 00 08 */ b lbl_802A37A0
lbl_802A379C:
/* 802A379C 0029F3FC 38 00 00 00 */ li r0, 0
lbl_802A37A0:
/* 802A37A0 0029F400 90 05 00 0C */ stw r0, 0xc(r5)
/* 802A37A4 0029F404 7F A3 EB 78 */ mr r3, r29
/* 802A37A8 0029F408 7F C4 F3 78 */ mr r4, r30
/* 802A37AC 0029F40C 93 C5 00 10 */ stw r30, 0x10(r5)
/* 802A37B0 0029F410 4B FC 6E A5 */ bl DCFlushRange
lbl_802A37B4:
/* 802A37B4 0029F414 2C 1F 00 00 */ cmpwi r31, 0
/* 802A37B8 0029F418 40 82 00 14 */ bne lbl_802A37CC
/* 802A37BC 0029F41C 80 61 00 08 */ lwz r3, 8(r1)
/* 802A37C0 0029F420 38 80 00 00 */ li r4, 0
/* 802A37C4 0029F424 4B FF F6 31 */ bl __ios_Ipc2
/* 802A37C8 0029F428 7C 7F 1B 78 */ mr r31, r3
lbl_802A37CC:
/* 802A37CC 0029F42C 7F E3 FB 78 */ mr r3, r31
/* 802A37D0 0029F430 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A37D4 0029F434 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A37D8 0029F438 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A37DC 0029F43C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A37E0 0029F440 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A37E4 0029F444 7C 08 03 A6 */ mtlr r0
/* 802A37E8 0029F448 38 21 00 20 */ addi r1, r1, 0x20
/* 802A37EC 0029F44C 4E 80 00 20 */ blr
.global IOS_SeekAsync
IOS_SeekAsync:
/* 802A37F0 0029F450 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A37F4 0029F454 7C 08 02 A6 */ mflr r0
/* 802A37F8 0029F458 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A37FC 0029F45C 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3800 0029F460 4B F2 39 25 */ bl _savegpr_26
/* 802A3804 0029F464 34 01 00 08 */ addic. r0, r1, 8
/* 802A3808 0029F468 7C 7A 1B 78 */ mr r26, r3
/* 802A380C 0029F46C 7C 9B 23 78 */ mr r27, r4
/* 802A3810 0029F470 7C BC 2B 78 */ mr r28, r5
/* 802A3814 0029F474 7C DD 33 78 */ mr r29, r6
/* 802A3818 0029F478 7C FE 3B 78 */ mr r30, r7
/* 802A381C 0029F47C 3B E0 00 00 */ li r31, 0
/* 802A3820 0029F480 40 82 00 0C */ bne lbl_802A382C
/* 802A3824 0029F484 3B E0 FF FC */ li r31, -4
/* 802A3828 0029F488 48 00 00 4C */ b lbl_802A3874
lbl_802A382C:
/* 802A382C 0029F48C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3830 0029F490 38 80 00 40 */ li r4, 0x40
/* 802A3834 0029F494 38 A0 00 20 */ li r5, 0x20
/* 802A3838 0029F498 48 00 0B 01 */ bl iosAllocAligned
/* 802A383C 0029F49C 2C 03 00 00 */ cmpwi r3, 0
/* 802A3840 0029F4A0 90 61 00 08 */ stw r3, 8(r1)
/* 802A3844 0029F4A4 40 82 00 0C */ bne lbl_802A3850
/* 802A3848 0029F4A8 3B E0 FF EA */ li r31, -22
/* 802A384C 0029F4AC 48 00 00 28 */ b lbl_802A3874
lbl_802A3850:
/* 802A3850 0029F4B0 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A3854 0029F4B4 38 A0 00 00 */ li r5, 0
/* 802A3858 0029F4B8 38 00 00 05 */ li r0, 5
/* 802A385C 0029F4BC 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3860 0029F4C0 93 C4 00 24 */ stw r30, 0x24(r4)
/* 802A3864 0029F4C4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3868 0029F4C8 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A386C 0029F4CC 90 03 00 00 */ stw r0, 0(r3)
/* 802A3870 0029F4D0 93 43 00 08 */ stw r26, 8(r3)
lbl_802A3874:
/* 802A3874 0029F4D4 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3878 0029F4D8 40 82 00 3C */ bne lbl_802A38B4
/* 802A387C 0029F4DC 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3880 0029F4E0 3B E0 00 00 */ li r31, 0
/* 802A3884 0029F4E4 2C 03 00 00 */ cmpwi r3, 0
/* 802A3888 0029F4E8 40 82 00 0C */ bne lbl_802A3894
/* 802A388C 0029F4EC 3B E0 FF FC */ li r31, -4
/* 802A3890 0029F4F0 48 00 00 0C */ b lbl_802A389C
lbl_802A3894:
/* 802A3894 0029F4F4 93 63 00 0C */ stw r27, 0xc(r3)
/* 802A3898 0029F4F8 93 83 00 10 */ stw r28, 0x10(r3)
lbl_802A389C:
/* 802A389C 0029F4FC 2C 1F 00 00 */ cmpwi r31, 0
/* 802A38A0 0029F500 40 82 00 14 */ bne lbl_802A38B4
/* 802A38A4 0029F504 80 61 00 08 */ lwz r3, 8(r1)
/* 802A38A8 0029F508 7F A4 EB 78 */ mr r4, r29
/* 802A38AC 0029F50C 4B FF F5 49 */ bl __ios_Ipc2
/* 802A38B0 0029F510 7C 7F 1B 78 */ mr r31, r3
lbl_802A38B4:
/* 802A38B4 0029F514 39 61 00 30 */ addi r11, r1, 0x30
/* 802A38B8 0029F518 7F E3 FB 78 */ mr r3, r31
/* 802A38BC 0029F51C 4B F2 38 B5 */ bl _restgpr_26
/* 802A38C0 0029F520 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A38C4 0029F524 7C 08 03 A6 */ mtlr r0
/* 802A38C8 0029F528 38 21 00 30 */ addi r1, r1, 0x30
/* 802A38CC 0029F52C 4E 80 00 20 */ blr
.global IOS_Seek
IOS_Seek:
/* 802A38D0 0029F530 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A38D4 0029F534 7C 08 02 A6 */ mflr r0
/* 802A38D8 0029F538 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A38DC 0029F53C 34 01 00 08 */ addic. r0, r1, 8
/* 802A38E0 0029F540 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A38E4 0029F544 3B E0 00 00 */ li r31, 0
/* 802A38E8 0029F548 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A38EC 0029F54C 7C BE 2B 78 */ mr r30, r5
/* 802A38F0 0029F550 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A38F4 0029F554 7C 9D 23 78 */ mr r29, r4
/* 802A38F8 0029F558 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A38FC 0029F55C 7C 7C 1B 78 */ mr r28, r3
/* 802A3900 0029F560 40 82 00 0C */ bne lbl_802A390C
/* 802A3904 0029F564 3B E0 FF FC */ li r31, -4
/* 802A3908 0029F568 48 00 00 4C */ b lbl_802A3954
lbl_802A390C:
/* 802A390C 0029F56C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3910 0029F570 38 80 00 40 */ li r4, 0x40
/* 802A3914 0029F574 38 A0 00 20 */ li r5, 0x20
/* 802A3918 0029F578 48 00 0A 21 */ bl iosAllocAligned
/* 802A391C 0029F57C 2C 03 00 00 */ cmpwi r3, 0
/* 802A3920 0029F580 90 61 00 08 */ stw r3, 8(r1)
/* 802A3924 0029F584 40 82 00 0C */ bne lbl_802A3930
/* 802A3928 0029F588 3B E0 FF EA */ li r31, -22
/* 802A392C 0029F58C 48 00 00 28 */ b lbl_802A3954
lbl_802A3930:
/* 802A3930 0029F590 38 A0 00 00 */ li r5, 0
/* 802A3934 0029F594 38 00 00 05 */ li r0, 5
/* 802A3938 0029F598 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A393C 0029F59C 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3940 0029F5A0 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A3944 0029F5A4 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3948 0029F5A8 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A394C 0029F5AC 90 03 00 00 */ stw r0, 0(r3)
/* 802A3950 0029F5B0 93 83 00 08 */ stw r28, 8(r3)
lbl_802A3954:
/* 802A3954 0029F5B4 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3958 0029F5B8 40 82 00 3C */ bne lbl_802A3994
/* 802A395C 0029F5BC 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3960 0029F5C0 3B E0 00 00 */ li r31, 0
/* 802A3964 0029F5C4 2C 03 00 00 */ cmpwi r3, 0
/* 802A3968 0029F5C8 40 82 00 0C */ bne lbl_802A3974
/* 802A396C 0029F5CC 3B E0 FF FC */ li r31, -4
/* 802A3970 0029F5D0 48 00 00 0C */ b lbl_802A397C
lbl_802A3974:
/* 802A3974 0029F5D4 93 A3 00 0C */ stw r29, 0xc(r3)
/* 802A3978 0029F5D8 93 C3 00 10 */ stw r30, 0x10(r3)
lbl_802A397C:
/* 802A397C 0029F5DC 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3980 0029F5E0 40 82 00 14 */ bne lbl_802A3994
/* 802A3984 0029F5E4 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3988 0029F5E8 38 80 00 00 */ li r4, 0
/* 802A398C 0029F5EC 4B FF F4 69 */ bl __ios_Ipc2
/* 802A3990 0029F5F0 7C 7F 1B 78 */ mr r31, r3
lbl_802A3994:
/* 802A3994 0029F5F4 7F E3 FB 78 */ mr r3, r31
/* 802A3998 0029F5F8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A399C 0029F5FC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A39A0 0029F600 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A39A4 0029F604 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A39A8 0029F608 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A39AC 0029F60C 7C 08 03 A6 */ mtlr r0
/* 802A39B0 0029F610 38 21 00 20 */ addi r1, r1, 0x20
/* 802A39B4 0029F614 4E 80 00 20 */ blr
.global IOS_IoctlAsync
IOS_IoctlAsync:
/* 802A39B8 0029F618 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802A39BC 0029F61C 7C 08 02 A6 */ mflr r0
/* 802A39C0 0029F620 90 01 00 44 */ stw r0, 0x44(r1)
/* 802A39C4 0029F624 39 61 00 40 */ addi r11, r1, 0x40
/* 802A39C8 0029F628 4B F2 37 51 */ bl _savegpr_23
/* 802A39CC 0029F62C 34 01 00 08 */ addic. r0, r1, 8
/* 802A39D0 0029F630 7C 77 1B 78 */ mr r23, r3
/* 802A39D4 0029F634 7C 98 23 78 */ mr r24, r4
/* 802A39D8 0029F638 7C B9 2B 78 */ mr r25, r5
/* 802A39DC 0029F63C 7C DA 33 78 */ mr r26, r6
/* 802A39E0 0029F640 7C FB 3B 78 */ mr r27, r7
/* 802A39E4 0029F644 7D 1C 43 78 */ mr r28, r8
/* 802A39E8 0029F648 7D 3D 4B 78 */ mr r29, r9
/* 802A39EC 0029F64C 7D 5E 53 78 */ mr r30, r10
/* 802A39F0 0029F650 3B E0 00 00 */ li r31, 0
/* 802A39F4 0029F654 40 82 00 0C */ bne lbl_802A3A00
/* 802A39F8 0029F658 3B E0 FF FC */ li r31, -4
/* 802A39FC 0029F65C 48 00 00 4C */ b lbl_802A3A48
lbl_802A3A00:
/* 802A3A00 0029F660 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3A04 0029F664 38 80 00 40 */ li r4, 0x40
/* 802A3A08 0029F668 38 A0 00 20 */ li r5, 0x20
/* 802A3A0C 0029F66C 48 00 09 2D */ bl iosAllocAligned
/* 802A3A10 0029F670 2C 03 00 00 */ cmpwi r3, 0
/* 802A3A14 0029F674 90 61 00 08 */ stw r3, 8(r1)
/* 802A3A18 0029F678 40 82 00 0C */ bne lbl_802A3A24
/* 802A3A1C 0029F67C 3B E0 FF EA */ li r31, -22
/* 802A3A20 0029F680 48 00 00 28 */ b lbl_802A3A48
lbl_802A3A24:
/* 802A3A24 0029F684 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A3A28 0029F688 38 A0 00 00 */ li r5, 0
/* 802A3A2C 0029F68C 38 00 00 06 */ li r0, 6
/* 802A3A30 0029F690 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3A34 0029F694 93 C4 00 24 */ stw r30, 0x24(r4)
/* 802A3A38 0029F698 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3A3C 0029F69C 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3A40 0029F6A0 90 03 00 00 */ stw r0, 0(r3)
/* 802A3A44 0029F6A4 92 E3 00 08 */ stw r23, 8(r3)
lbl_802A3A48:
/* 802A3A48 0029F6A8 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3A4C 0029F6AC 40 82 00 88 */ bne lbl_802A3AD4
/* 802A3A50 0029F6B0 80 A1 00 08 */ lwz r5, 8(r1)
/* 802A3A54 0029F6B4 3B E0 00 00 */ li r31, 0
/* 802A3A58 0029F6B8 2C 05 00 00 */ cmpwi r5, 0
/* 802A3A5C 0029F6BC 40 82 00 0C */ bne lbl_802A3A68
/* 802A3A60 0029F6C0 3B E0 FF FC */ li r31, -4
/* 802A3A64 0029F6C4 48 00 00 58 */ b lbl_802A3ABC
lbl_802A3A68:
/* 802A3A68 0029F6C8 2C 1B 00 00 */ cmpwi r27, 0
/* 802A3A6C 0029F6CC 93 05 00 0C */ stw r24, 0xc(r5)
/* 802A3A70 0029F6D0 41 82 00 0C */ beq lbl_802A3A7C
/* 802A3A74 0029F6D4 3C 1B 80 00 */ addis r0, r27, 0x8000
/* 802A3A78 0029F6D8 48 00 00 08 */ b lbl_802A3A80
lbl_802A3A7C:
/* 802A3A7C 0029F6DC 38 00 00 00 */ li r0, 0
lbl_802A3A80:
/* 802A3A80 0029F6E0 90 05 00 18 */ stw r0, 0x18(r5)
/* 802A3A84 0029F6E4 2C 19 00 00 */ cmpwi r25, 0
/* 802A3A88 0029F6E8 93 85 00 1C */ stw r28, 0x1c(r5)
/* 802A3A8C 0029F6EC 41 82 00 0C */ beq lbl_802A3A98
/* 802A3A90 0029F6F0 3C 19 80 00 */ addis r0, r25, 0x8000
/* 802A3A94 0029F6F4 48 00 00 08 */ b lbl_802A3A9C
lbl_802A3A98:
/* 802A3A98 0029F6F8 38 00 00 00 */ li r0, 0
lbl_802A3A9C:
/* 802A3A9C 0029F6FC 90 05 00 10 */ stw r0, 0x10(r5)
/* 802A3AA0 0029F700 7F 23 CB 78 */ mr r3, r25
/* 802A3AA4 0029F704 7F 44 D3 78 */ mr r4, r26
/* 802A3AA8 0029F708 93 45 00 14 */ stw r26, 0x14(r5)
/* 802A3AAC 0029F70C 4B FC 6B A9 */ bl DCFlushRange
/* 802A3AB0 0029F710 7F 63 DB 78 */ mr r3, r27
/* 802A3AB4 0029F714 7F 84 E3 78 */ mr r4, r28
/* 802A3AB8 0029F718 4B FC 6B 9D */ bl DCFlushRange
lbl_802A3ABC:
/* 802A3ABC 0029F71C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3AC0 0029F720 40 82 00 14 */ bne lbl_802A3AD4
/* 802A3AC4 0029F724 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3AC8 0029F728 7F A4 EB 78 */ mr r4, r29
/* 802A3ACC 0029F72C 4B FF F3 29 */ bl __ios_Ipc2
/* 802A3AD0 0029F730 7C 7F 1B 78 */ mr r31, r3
lbl_802A3AD4:
/* 802A3AD4 0029F734 39 61 00 40 */ addi r11, r1, 0x40
/* 802A3AD8 0029F738 7F E3 FB 78 */ mr r3, r31
/* 802A3ADC 0029F73C 4B F2 36 89 */ bl _restgpr_23
/* 802A3AE0 0029F740 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802A3AE4 0029F744 7C 08 03 A6 */ mtlr r0
/* 802A3AE8 0029F748 38 21 00 40 */ addi r1, r1, 0x40
/* 802A3AEC 0029F74C 4E 80 00 20 */ blr
.global IOS_Ioctl
IOS_Ioctl:
/* 802A3AF0 0029F750 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A3AF4 0029F754 7C 08 02 A6 */ mflr r0
/* 802A3AF8 0029F758 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A3AFC 0029F75C 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3B00 0029F760 4B F2 36 21 */ bl _savegpr_25
/* 802A3B04 0029F764 34 01 00 08 */ addic. r0, r1, 8
/* 802A3B08 0029F768 7C 79 1B 78 */ mr r25, r3
/* 802A3B0C 0029F76C 7C 9A 23 78 */ mr r26, r4
/* 802A3B10 0029F770 7C BB 2B 78 */ mr r27, r5
/* 802A3B14 0029F774 7C DC 33 78 */ mr r28, r6
/* 802A3B18 0029F778 7C FD 3B 78 */ mr r29, r7
/* 802A3B1C 0029F77C 7D 1E 43 78 */ mr r30, r8
/* 802A3B20 0029F780 3B E0 00 00 */ li r31, 0
/* 802A3B24 0029F784 40 82 00 0C */ bne lbl_802A3B30
/* 802A3B28 0029F788 3B E0 FF FC */ li r31, -4
/* 802A3B2C 0029F78C 48 00 00 4C */ b lbl_802A3B78
lbl_802A3B30:
/* 802A3B30 0029F790 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3B34 0029F794 38 80 00 40 */ li r4, 0x40
/* 802A3B38 0029F798 38 A0 00 20 */ li r5, 0x20
/* 802A3B3C 0029F79C 48 00 07 FD */ bl iosAllocAligned
/* 802A3B40 0029F7A0 2C 03 00 00 */ cmpwi r3, 0
/* 802A3B44 0029F7A4 90 61 00 08 */ stw r3, 8(r1)
/* 802A3B48 0029F7A8 40 82 00 0C */ bne lbl_802A3B54
/* 802A3B4C 0029F7AC 3B E0 FF EA */ li r31, -22
/* 802A3B50 0029F7B0 48 00 00 28 */ b lbl_802A3B78
lbl_802A3B54:
/* 802A3B54 0029F7B4 38 A0 00 00 */ li r5, 0
/* 802A3B58 0029F7B8 38 00 00 06 */ li r0, 6
/* 802A3B5C 0029F7BC 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A3B60 0029F7C0 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3B64 0029F7C4 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A3B68 0029F7C8 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3B6C 0029F7CC 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3B70 0029F7D0 90 03 00 00 */ stw r0, 0(r3)
/* 802A3B74 0029F7D4 93 23 00 08 */ stw r25, 8(r3)
lbl_802A3B78:
/* 802A3B78 0029F7D8 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3B7C 0029F7DC 40 82 00 88 */ bne lbl_802A3C04
/* 802A3B80 0029F7E0 80 A1 00 08 */ lwz r5, 8(r1)
/* 802A3B84 0029F7E4 3B E0 00 00 */ li r31, 0
/* 802A3B88 0029F7E8 2C 05 00 00 */ cmpwi r5, 0
/* 802A3B8C 0029F7EC 40 82 00 0C */ bne lbl_802A3B98
/* 802A3B90 0029F7F0 3B E0 FF FC */ li r31, -4
/* 802A3B94 0029F7F4 48 00 00 58 */ b lbl_802A3BEC
lbl_802A3B98:
/* 802A3B98 0029F7F8 2C 1D 00 00 */ cmpwi r29, 0
/* 802A3B9C 0029F7FC 93 45 00 0C */ stw r26, 0xc(r5)
/* 802A3BA0 0029F800 41 82 00 0C */ beq lbl_802A3BAC
/* 802A3BA4 0029F804 3C 1D 80 00 */ addis r0, r29, 0x8000
/* 802A3BA8 0029F808 48 00 00 08 */ b lbl_802A3BB0
lbl_802A3BAC:
/* 802A3BAC 0029F80C 38 00 00 00 */ li r0, 0
lbl_802A3BB0:
/* 802A3BB0 0029F810 90 05 00 18 */ stw r0, 0x18(r5)
/* 802A3BB4 0029F814 2C 1B 00 00 */ cmpwi r27, 0
/* 802A3BB8 0029F818 93 C5 00 1C */ stw r30, 0x1c(r5)
/* 802A3BBC 0029F81C 41 82 00 0C */ beq lbl_802A3BC8
/* 802A3BC0 0029F820 3C 1B 80 00 */ addis r0, r27, 0x8000
/* 802A3BC4 0029F824 48 00 00 08 */ b lbl_802A3BCC
lbl_802A3BC8:
/* 802A3BC8 0029F828 38 00 00 00 */ li r0, 0
lbl_802A3BCC:
/* 802A3BCC 0029F82C 90 05 00 10 */ stw r0, 0x10(r5)
/* 802A3BD0 0029F830 7F 63 DB 78 */ mr r3, r27
/* 802A3BD4 0029F834 7F 84 E3 78 */ mr r4, r28
/* 802A3BD8 0029F838 93 85 00 14 */ stw r28, 0x14(r5)
/* 802A3BDC 0029F83C 4B FC 6A 79 */ bl DCFlushRange
/* 802A3BE0 0029F840 7F A3 EB 78 */ mr r3, r29
/* 802A3BE4 0029F844 7F C4 F3 78 */ mr r4, r30
/* 802A3BE8 0029F848 4B FC 6A 6D */ bl DCFlushRange
lbl_802A3BEC:
/* 802A3BEC 0029F84C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3BF0 0029F850 40 82 00 14 */ bne lbl_802A3C04
/* 802A3BF4 0029F854 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3BF8 0029F858 38 80 00 00 */ li r4, 0
/* 802A3BFC 0029F85C 4B FF F1 F9 */ bl __ios_Ipc2
/* 802A3C00 0029F860 7C 7F 1B 78 */ mr r31, r3
lbl_802A3C04:
/* 802A3C04 0029F864 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3C08 0029F868 7F E3 FB 78 */ mr r3, r31
/* 802A3C0C 0029F86C 4B F2 35 61 */ bl _restgpr_25
/* 802A3C10 0029F870 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A3C14 0029F874 7C 08 03 A6 */ mtlr r0
/* 802A3C18 0029F878 38 21 00 30 */ addi r1, r1, 0x30
/* 802A3C1C 0029F87C 4E 80 00 20 */ blr
.global __ios_Ioctlv
__ios_Ioctlv:
/* 802A3C20 0029F880 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A3C24 0029F884 7C 08 02 A6 */ mflr r0
/* 802A3C28 0029F888 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A3C2C 0029F88C 39 61 00 20 */ addi r11, r1, 0x20
/* 802A3C30 0029F890 4B F2 34 F5 */ bl _savegpr_26
/* 802A3C34 0029F894 2C 03 00 00 */ cmpwi r3, 0
/* 802A3C38 0029F898 7C 7D 1B 78 */ mr r29, r3
/* 802A3C3C 0029F89C 7C FE 3B 78 */ mr r30, r7
/* 802A3C40 0029F8A0 3B E0 00 00 */ li r31, 0
/* 802A3C44 0029F8A4 40 82 00 0C */ bne lbl_802A3C50
/* 802A3C48 0029F8A8 3B E0 FF FC */ li r31, -4
/* 802A3C4C 0029F8AC 48 00 00 F4 */ b lbl_802A3D40
lbl_802A3C50:
/* 802A3C50 0029F8B0 90 83 00 0C */ stw r4, 0xc(r3)
/* 802A3C54 0029F8B4 54 BB 18 38 */ slwi r27, r5, 3
/* 802A3C58 0029F8B8 3B 40 00 00 */ li r26, 0
/* 802A3C5C 0029F8BC 3B 80 00 00 */ li r28, 0
/* 802A3C60 0029F8C0 90 A3 00 10 */ stw r5, 0x10(r3)
/* 802A3C64 0029F8C4 90 C3 00 14 */ stw r6, 0x14(r3)
/* 802A3C68 0029F8C8 90 E3 00 18 */ stw r7, 0x18(r3)
/* 802A3C6C 0029F8CC 48 00 00 48 */ b lbl_802A3CB4
lbl_802A3C70:
/* 802A3C70 0029F8D0 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 802A3C74 0029F8D4 7C 1C DA 14 */ add r0, r28, r27
/* 802A3C78 0029F8D8 7C 83 02 14 */ add r4, r3, r0
/* 802A3C7C 0029F8DC 7C 63 00 2E */ lwzx r3, r3, r0
/* 802A3C80 0029F8E0 80 84 00 04 */ lwz r4, 4(r4)
/* 802A3C84 0029F8E4 4B FC 69 D1 */ bl DCFlushRange
/* 802A3C88 0029F8E8 80 9D 00 18 */ lwz r4, 0x18(r29)
/* 802A3C8C 0029F8EC 7C 7C DA 14 */ add r3, r28, r27
/* 802A3C90 0029F8F0 7C A4 18 2E */ lwzx r5, r4, r3
/* 802A3C94 0029F8F4 2C 05 00 00 */ cmpwi r5, 0
/* 802A3C98 0029F8F8 41 82 00 0C */ beq lbl_802A3CA4
/* 802A3C9C 0029F8FC 3C 05 80 00 */ addis r0, r5, 0x8000
/* 802A3CA0 0029F900 48 00 00 08 */ b lbl_802A3CA8
lbl_802A3CA4:
/* 802A3CA4 0029F904 38 00 00 00 */ li r0, 0
lbl_802A3CA8:
/* 802A3CA8 0029F908 7C 04 19 2E */ stwx r0, r4, r3
/* 802A3CAC 0029F90C 3B 9C 00 08 */ addi r28, r28, 8
/* 802A3CB0 0029F910 3B 5A 00 01 */ addi r26, r26, 1
lbl_802A3CB4:
/* 802A3CB4 0029F914 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 802A3CB8 0029F918 7C 1A 00 40 */ cmplw r26, r0
/* 802A3CBC 0029F91C 41 80 FF B4 */ blt lbl_802A3C70
/* 802A3CC0 0029F920 3B 60 00 00 */ li r27, 0
/* 802A3CC4 0029F924 3B 80 00 00 */ li r28, 0
/* 802A3CC8 0029F928 48 00 00 40 */ b lbl_802A3D08
lbl_802A3CCC:
/* 802A3CCC 0029F92C 80 1D 00 18 */ lwz r0, 0x18(r29)
/* 802A3CD0 0029F930 7C 80 E2 14 */ add r4, r0, r28
/* 802A3CD4 0029F934 7C 7C 00 2E */ lwzx r3, r28, r0
/* 802A3CD8 0029F938 80 84 00 04 */ lwz r4, 4(r4)
/* 802A3CDC 0029F93C 4B FC 69 79 */ bl DCFlushRange
/* 802A3CE0 0029F940 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 802A3CE4 0029F944 7C 83 E0 2E */ lwzx r4, r3, r28
/* 802A3CE8 0029F948 2C 04 00 00 */ cmpwi r4, 0
/* 802A3CEC 0029F94C 41 82 00 0C */ beq lbl_802A3CF8
/* 802A3CF0 0029F950 3C 04 80 00 */ addis r0, r4, 0x8000
/* 802A3CF4 0029F954 48 00 00 08 */ b lbl_802A3CFC
lbl_802A3CF8:
/* 802A3CF8 0029F958 38 00 00 00 */ li r0, 0
lbl_802A3CFC:
/* 802A3CFC 0029F95C 7C 03 E1 2E */ stwx r0, r3, r28
/* 802A3D00 0029F960 3B 9C 00 08 */ addi r28, r28, 8
/* 802A3D04 0029F964 3B 7B 00 01 */ addi r27, r27, 1
lbl_802A3D08:
/* 802A3D08 0029F968 80 9D 00 10 */ lwz r4, 0x10(r29)
/* 802A3D0C 0029F96C 7C 1B 20 40 */ cmplw r27, r4
/* 802A3D10 0029F970 41 80 FF BC */ blt lbl_802A3CCC
/* 802A3D14 0029F974 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 802A3D18 0029F978 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 802A3D1C 0029F97C 7C 04 02 14 */ add r0, r4, r0
/* 802A3D20 0029F980 54 04 18 38 */ slwi r4, r0, 3
/* 802A3D24 0029F984 4B FC 69 31 */ bl DCFlushRange
/* 802A3D28 0029F988 2C 1E 00 00 */ cmpwi r30, 0
/* 802A3D2C 0029F98C 41 82 00 0C */ beq lbl_802A3D38
/* 802A3D30 0029F990 3C 1E 80 00 */ addis r0, r30, 0x8000
/* 802A3D34 0029F994 48 00 00 08 */ b lbl_802A3D3C
lbl_802A3D38:
/* 802A3D38 0029F998 38 00 00 00 */ li r0, 0
lbl_802A3D3C:
/* 802A3D3C 0029F99C 90 1D 00 18 */ stw r0, 0x18(r29)
lbl_802A3D40:
/* 802A3D40 0029F9A0 39 61 00 20 */ addi r11, r1, 0x20
/* 802A3D44 0029F9A4 7F E3 FB 78 */ mr r3, r31
/* 802A3D48 0029F9A8 4B F2 34 29 */ bl _restgpr_26
/* 802A3D4C 0029F9AC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A3D50 0029F9B0 7C 08 03 A6 */ mtlr r0
/* 802A3D54 0029F9B4 38 21 00 20 */ addi r1, r1, 0x20
/* 802A3D58 0029F9B8 4E 80 00 20 */ blr
.global IOS_IoctlvAsync
IOS_IoctlvAsync:
/* 802A3D5C 0029F9BC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A3D60 0029F9C0 7C 08 02 A6 */ mflr r0
/* 802A3D64 0029F9C4 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A3D68 0029F9C8 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3D6C 0029F9CC 4B F2 33 B1 */ bl _savegpr_24
/* 802A3D70 0029F9D0 34 01 00 08 */ addic. r0, r1, 8
/* 802A3D74 0029F9D4 7C 78 1B 78 */ mr r24, r3
/* 802A3D78 0029F9D8 7C 99 23 78 */ mr r25, r4
/* 802A3D7C 0029F9DC 7C BA 2B 78 */ mr r26, r5
/* 802A3D80 0029F9E0 7C DB 33 78 */ mr r27, r6
/* 802A3D84 0029F9E4 7C FC 3B 78 */ mr r28, r7
/* 802A3D88 0029F9E8 7D 1D 43 78 */ mr r29, r8
/* 802A3D8C 0029F9EC 7D 3E 4B 78 */ mr r30, r9
/* 802A3D90 0029F9F0 3B E0 00 00 */ li r31, 0
/* 802A3D94 0029F9F4 40 82 00 0C */ bne lbl_802A3DA0
/* 802A3D98 0029F9F8 3B E0 FF FC */ li r31, -4
/* 802A3D9C 0029F9FC 48 00 00 4C */ b lbl_802A3DE8
lbl_802A3DA0:
/* 802A3DA0 0029FA00 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3DA4 0029FA04 38 80 00 40 */ li r4, 0x40
/* 802A3DA8 0029FA08 38 A0 00 20 */ li r5, 0x20
/* 802A3DAC 0029FA0C 48 00 05 8D */ bl iosAllocAligned
/* 802A3DB0 0029FA10 2C 03 00 00 */ cmpwi r3, 0
/* 802A3DB4 0029FA14 90 61 00 08 */ stw r3, 8(r1)
/* 802A3DB8 0029FA18 40 82 00 0C */ bne lbl_802A3DC4
/* 802A3DBC 0029FA1C 3B E0 FF EA */ li r31, -22
/* 802A3DC0 0029FA20 48 00 00 28 */ b lbl_802A3DE8
lbl_802A3DC4:
/* 802A3DC4 0029FA24 93 A3 00 20 */ stw r29, 0x20(r3)
/* 802A3DC8 0029FA28 38 A0 00 00 */ li r5, 0
/* 802A3DCC 0029FA2C 38 00 00 07 */ li r0, 7
/* 802A3DD0 0029FA30 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3DD4 0029FA34 93 C4 00 24 */ stw r30, 0x24(r4)
/* 802A3DD8 0029FA38 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3DDC 0029FA3C 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3DE0 0029FA40 90 03 00 00 */ stw r0, 0(r3)
/* 802A3DE4 0029FA44 93 03 00 08 */ stw r24, 8(r3)
lbl_802A3DE8:
/* 802A3DE8 0029FA48 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3DEC 0029FA4C 40 82 00 38 */ bne lbl_802A3E24
/* 802A3DF0 0029FA50 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3DF4 0029FA54 7F 24 CB 78 */ mr r4, r25
/* 802A3DF8 0029FA58 7F 45 D3 78 */ mr r5, r26
/* 802A3DFC 0029FA5C 7F 66 DB 78 */ mr r6, r27
/* 802A3E00 0029FA60 7F 87 E3 78 */ mr r7, r28
/* 802A3E04 0029FA64 4B FF FE 1D */ bl __ios_Ioctlv
/* 802A3E08 0029FA68 2C 03 00 00 */ cmpwi r3, 0
/* 802A3E0C 0029FA6C 7C 7F 1B 78 */ mr r31, r3
/* 802A3E10 0029FA70 40 82 00 14 */ bne lbl_802A3E24
/* 802A3E14 0029FA74 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3E18 0029FA78 7F A4 EB 78 */ mr r4, r29
/* 802A3E1C 0029FA7C 4B FF EF D9 */ bl __ios_Ipc2
/* 802A3E20 0029FA80 7C 7F 1B 78 */ mr r31, r3
lbl_802A3E24:
/* 802A3E24 0029FA84 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3E28 0029FA88 7F E3 FB 78 */ mr r3, r31
/* 802A3E2C 0029FA8C 4B F2 33 3D */ bl _restgpr_24
/* 802A3E30 0029FA90 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A3E34 0029FA94 7C 08 03 A6 */ mtlr r0
/* 802A3E38 0029FA98 38 21 00 30 */ addi r1, r1, 0x30
/* 802A3E3C 0029FA9C 4E 80 00 20 */ blr
.global IOS_Ioctlv
IOS_Ioctlv:
/* 802A3E40 0029FAA0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A3E44 0029FAA4 7C 08 02 A6 */ mflr r0
/* 802A3E48 0029FAA8 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A3E4C 0029FAAC 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3E50 0029FAB0 4B F2 32 D5 */ bl _savegpr_26
/* 802A3E54 0029FAB4 34 01 00 08 */ addic. r0, r1, 8
/* 802A3E58 0029FAB8 7C 7A 1B 78 */ mr r26, r3
/* 802A3E5C 0029FABC 7C 9B 23 78 */ mr r27, r4
/* 802A3E60 0029FAC0 7C BC 2B 78 */ mr r28, r5
/* 802A3E64 0029FAC4 7C DD 33 78 */ mr r29, r6
/* 802A3E68 0029FAC8 7C FE 3B 78 */ mr r30, r7
/* 802A3E6C 0029FACC 3B E0 00 00 */ li r31, 0
/* 802A3E70 0029FAD0 40 82 00 0C */ bne lbl_802A3E7C
/* 802A3E74 0029FAD4 3B E0 FF FC */ li r31, -4
/* 802A3E78 0029FAD8 48 00 00 4C */ b lbl_802A3EC4
lbl_802A3E7C:
/* 802A3E7C 0029FADC 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3E80 0029FAE0 38 80 00 40 */ li r4, 0x40
/* 802A3E84 0029FAE4 38 A0 00 20 */ li r5, 0x20
/* 802A3E88 0029FAE8 48 00 04 B1 */ bl iosAllocAligned
/* 802A3E8C 0029FAEC 2C 03 00 00 */ cmpwi r3, 0
/* 802A3E90 0029FAF0 90 61 00 08 */ stw r3, 8(r1)
/* 802A3E94 0029FAF4 40 82 00 0C */ bne lbl_802A3EA0
/* 802A3E98 0029FAF8 3B E0 FF EA */ li r31, -22
/* 802A3E9C 0029FAFC 48 00 00 28 */ b lbl_802A3EC4
lbl_802A3EA0:
/* 802A3EA0 0029FB00 38 A0 00 00 */ li r5, 0
/* 802A3EA4 0029FB04 38 00 00 07 */ li r0, 7
/* 802A3EA8 0029FB08 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A3EAC 0029FB0C 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3EB0 0029FB10 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A3EB4 0029FB14 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3EB8 0029FB18 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3EBC 0029FB1C 90 03 00 00 */ stw r0, 0(r3)
/* 802A3EC0 0029FB20 93 43 00 08 */ stw r26, 8(r3)
lbl_802A3EC4:
/* 802A3EC4 0029FB24 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3EC8 0029FB28 40 82 00 38 */ bne lbl_802A3F00
/* 802A3ECC 0029FB2C 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3ED0 0029FB30 7F 64 DB 78 */ mr r4, r27
/* 802A3ED4 0029FB34 7F 85 E3 78 */ mr r5, r28
/* 802A3ED8 0029FB38 7F A6 EB 78 */ mr r6, r29
/* 802A3EDC 0029FB3C 7F C7 F3 78 */ mr r7, r30
/* 802A3EE0 0029FB40 4B FF FD 41 */ bl __ios_Ioctlv
/* 802A3EE4 0029FB44 2C 03 00 00 */ cmpwi r3, 0
/* 802A3EE8 0029FB48 7C 7F 1B 78 */ mr r31, r3
/* 802A3EEC 0029FB4C 40 82 00 14 */ bne lbl_802A3F00
/* 802A3EF0 0029FB50 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3EF4 0029FB54 38 80 00 00 */ li r4, 0
/* 802A3EF8 0029FB58 4B FF EE FD */ bl __ios_Ipc2
/* 802A3EFC 0029FB5C 7C 7F 1B 78 */ mr r31, r3
lbl_802A3F00:
/* 802A3F00 0029FB60 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3F04 0029FB64 7F E3 FB 78 */ mr r3, r31
/* 802A3F08 0029FB68 4B F2 32 69 */ bl _restgpr_26
/* 802A3F0C 0029FB6C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A3F10 0029FB70 7C 08 03 A6 */ mtlr r0
/* 802A3F14 0029FB74 38 21 00 30 */ addi r1, r1, 0x30
/* 802A3F18 0029FB78 4E 80 00 20 */ blr
.global IOS_IoctlvReboot
IOS_IoctlvReboot:
/* 802A3F1C 0029FB7C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A3F20 0029FB80 7C 08 02 A6 */ mflr r0
/* 802A3F24 0029FB84 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A3F28 0029FB88 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3F2C 0029FB8C 4B F2 31 F9 */ bl _savegpr_26
/* 802A3F30 0029FB90 34 01 00 08 */ addic. r0, r1, 8
/* 802A3F34 0029FB94 7C 7A 1B 78 */ mr r26, r3
/* 802A3F38 0029FB98 7C 9B 23 78 */ mr r27, r4
/* 802A3F3C 0029FB9C 7C BC 2B 78 */ mr r28, r5
/* 802A3F40 0029FBA0 7C DD 33 78 */ mr r29, r6
/* 802A3F44 0029FBA4 7C FE 3B 78 */ mr r30, r7
/* 802A3F48 0029FBA8 3B E0 00 00 */ li r31, 0
/* 802A3F4C 0029FBAC 40 82 00 0C */ bne lbl_802A3F58
/* 802A3F50 0029FBB0 3B E0 FF FC */ li r31, -4
/* 802A3F54 0029FBB4 48 00 00 4C */ b lbl_802A3FA0
lbl_802A3F58:
/* 802A3F58 0029FBB8 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13)
/* 802A3F5C 0029FBBC 38 80 00 40 */ li r4, 0x40
/* 802A3F60 0029FBC0 38 A0 00 20 */ li r5, 0x20
/* 802A3F64 0029FBC4 48 00 03 D5 */ bl iosAllocAligned
/* 802A3F68 0029FBC8 2C 03 00 00 */ cmpwi r3, 0
/* 802A3F6C 0029FBCC 90 61 00 08 */ stw r3, 8(r1)
/* 802A3F70 0029FBD0 40 82 00 0C */ bne lbl_802A3F7C
/* 802A3F74 0029FBD4 3B E0 FF EA */ li r31, -22
/* 802A3F78 0029FBD8 48 00 00 28 */ b lbl_802A3FA0
lbl_802A3F7C:
/* 802A3F7C 0029FBDC 38 A0 00 00 */ li r5, 0
/* 802A3F80 0029FBE0 38 00 00 07 */ li r0, 7
/* 802A3F84 0029FBE4 90 A3 00 20 */ stw r5, 0x20(r3)
/* 802A3F88 0029FBE8 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3F8C 0029FBEC 90 A4 00 24 */ stw r5, 0x24(r4)
/* 802A3F90 0029FBF0 80 81 00 08 */ lwz r4, 8(r1)
/* 802A3F94 0029FBF4 90 A4 00 28 */ stw r5, 0x28(r4)
/* 802A3F98 0029FBF8 90 03 00 00 */ stw r0, 0(r3)
/* 802A3F9C 0029FBFC 93 43 00 08 */ stw r26, 8(r3)
lbl_802A3FA0:
/* 802A3FA0 0029FC00 2C 1F 00 00 */ cmpwi r31, 0
/* 802A3FA4 0029FC04 40 82 00 44 */ bne lbl_802A3FE8
/* 802A3FA8 0029FC08 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3FAC 0029FC0C 38 00 00 01 */ li r0, 1
/* 802A3FB0 0029FC10 7F 64 DB 78 */ mr r4, r27
/* 802A3FB4 0029FC14 7F 85 E3 78 */ mr r5, r28
/* 802A3FB8 0029FC18 90 03 00 28 */ stw r0, 0x28(r3)
/* 802A3FBC 0029FC1C 7F A6 EB 78 */ mr r6, r29
/* 802A3FC0 0029FC20 7F C7 F3 78 */ mr r7, r30
/* 802A3FC4 0029FC24 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3FC8 0029FC28 4B FF FC 59 */ bl __ios_Ioctlv
/* 802A3FCC 0029FC2C 2C 03 00 00 */ cmpwi r3, 0
/* 802A3FD0 0029FC30 7C 7F 1B 78 */ mr r31, r3
/* 802A3FD4 0029FC34 40 82 00 14 */ bne lbl_802A3FE8
/* 802A3FD8 0029FC38 80 61 00 08 */ lwz r3, 8(r1)
/* 802A3FDC 0029FC3C 38 80 00 00 */ li r4, 0
/* 802A3FE0 0029FC40 4B FF EE 15 */ bl __ios_Ipc2
/* 802A3FE4 0029FC44 7C 7F 1B 78 */ mr r31, r3
lbl_802A3FE8:
/* 802A3FE8 0029FC48 39 61 00 30 */ addi r11, r1, 0x30
/* 802A3FEC 0029FC4C 7F E3 FB 78 */ mr r3, r31
/* 802A3FF0 0029FC50 4B F2 31 81 */ bl _restgpr_26
/* 802A3FF4 0029FC54 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A3FF8 0029FC58 7C 08 03 A6 */ mtlr r0
/* 802A3FFC 0029FC5C 38 21 00 30 */ addi r1, r1, 0x30
/* 802A4000 0029FC60 4E 80 00 20 */ blr
|