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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global rfc_send_sabme
rfc_send_sabme:
/* 802DFFC0 002DBC20 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802DFFC4 002DBC24 7C 08 02 A6 */ mflr r0
/* 802DFFC8 002DBC28 90 01 00 24 */ stw r0, 0x24(r1)
/* 802DFFCC 002DBC2C 39 61 00 20 */ addi r11, r1, 0x20
/* 802DFFD0 002DBC30 4B EE 71 59 */ bl _savegpr_27
/* 802DFFD4 002DBC34 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 802DFFD8 002DBC38 7C 7B 1B 78 */ mr r27, r3
/* 802DFFDC 002DBC3C 7C 9C 23 78 */ mr r28, r4
/* 802DFFE0 002DBC40 38 60 00 01 */ li r3, 1
/* 802DFFE4 002DBC44 2C 00 00 00 */ cmpwi r0, 0
/* 802DFFE8 002DBC48 40 82 00 08 */ bne lbl_802DFFF0
/* 802DFFEC 002DBC4C 38 60 00 00 */ li r3, 0
lbl_802DFFF0:
/* 802DFFF0 002DBC50 54 7D 0E 3C */ rlwinm r29, r3, 1, 0x18, 0x1e
/* 802DFFF4 002DBC54 38 60 00 02 */ li r3, 2
/* 802DFFF8 002DBC58 4B FD 9C 55 */ bl GKI_getpoolbuf
/* 802DFFFC 002DBC5C 2C 03 00 00 */ cmpwi r3, 0
/* 802E0000 002DBC60 7C 7E 1B 78 */ mr r30, r3
/* 802E0004 002DBC64 41 82 00 54 */ beq lbl_802E0058
/* 802E0008 002DBC68 38 00 00 09 */ li r0, 9
/* 802E000C 002DBC6C 3B E3 00 11 */ addi r31, r3, 0x11
/* 802E0010 002DBC70 B0 03 00 04 */ sth r0, 4(r3)
/* 802E0014 002DBC74 63 A3 00 01 */ ori r3, r29, 1
/* 802E0018 002DBC78 57 80 15 BA */ rlwinm r0, r28, 2, 0x16, 0x1d
/* 802E001C 002DBC7C 38 A0 00 3F */ li r5, 0x3f
/* 802E0020 002DBC80 7C 63 03 78 */ or r3, r3, r0
/* 802E0024 002DBC84 7F E4 FB 78 */ mr r4, r31
/* 802E0028 002DBC88 98 7F 00 00 */ stb r3, 0(r31)
/* 802E002C 002DBC8C 38 00 00 01 */ li r0, 1
/* 802E0030 002DBC90 38 60 00 03 */ li r3, 3
/* 802E0034 002DBC94 98 BF 00 01 */ stb r5, 1(r31)
/* 802E0038 002DBC98 98 1F 00 02 */ stb r0, 2(r31)
/* 802E003C 002DBC9C 48 00 15 CD */ bl rfc_calc_fcs
/* 802E0040 002DBCA0 98 7F 00 03 */ stb r3, 3(r31)
/* 802E0044 002DBCA4 38 00 00 04 */ li r0, 4
/* 802E0048 002DBCA8 7F 63 DB 78 */ mr r3, r27
/* 802E004C 002DBCAC 7F C4 F3 78 */ mr r4, r30
/* 802E0050 002DBCB0 B0 1E 00 02 */ sth r0, 2(r30)
/* 802E0054 002DBCB4 48 00 1D 31 */ bl rfc_check_send_cmd
lbl_802E0058:
/* 802E0058 002DBCB8 39 61 00 20 */ addi r11, r1, 0x20
/* 802E005C 002DBCBC 4B EE 71 19 */ bl _restgpr_27
/* 802E0060 002DBCC0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0064 002DBCC4 7C 08 03 A6 */ mtlr r0
/* 802E0068 002DBCC8 38 21 00 20 */ addi r1, r1, 0x20
/* 802E006C 002DBCCC 4E 80 00 20 */ blr
.global rfc_send_ua
rfc_send_ua:
/* 802E0070 002DBCD0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0074 002DBCD4 7C 08 02 A6 */ mflr r0
/* 802E0078 002DBCD8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E007C 002DBCDC 39 61 00 20 */ addi r11, r1, 0x20
/* 802E0080 002DBCE0 4B EE 70 A9 */ bl _savegpr_27
/* 802E0084 002DBCE4 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 802E0088 002DBCE8 7C 7B 1B 78 */ mr r27, r3
/* 802E008C 002DBCEC 7C 9C 23 78 */ mr r28, r4
/* 802E0090 002DBCF0 38 60 00 01 */ li r3, 1
/* 802E0094 002DBCF4 2C 00 00 00 */ cmpwi r0, 0
/* 802E0098 002DBCF8 41 82 00 08 */ beq lbl_802E00A0
/* 802E009C 002DBCFC 38 60 00 00 */ li r3, 0
lbl_802E00A0:
/* 802E00A0 002DBD00 54 7D 0E 3C */ rlwinm r29, r3, 1, 0x18, 0x1e
/* 802E00A4 002DBD04 38 60 00 02 */ li r3, 2
/* 802E00A8 002DBD08 4B FD 9B A5 */ bl GKI_getpoolbuf
/* 802E00AC 002DBD0C 2C 03 00 00 */ cmpwi r3, 0
/* 802E00B0 002DBD10 7C 7E 1B 78 */ mr r30, r3
/* 802E00B4 002DBD14 41 82 00 54 */ beq lbl_802E0108
/* 802E00B8 002DBD18 38 00 00 09 */ li r0, 9
/* 802E00BC 002DBD1C 3B E3 00 11 */ addi r31, r3, 0x11
/* 802E00C0 002DBD20 B0 03 00 04 */ sth r0, 4(r3)
/* 802E00C4 002DBD24 63 A3 00 01 */ ori r3, r29, 1
/* 802E00C8 002DBD28 57 80 15 BA */ rlwinm r0, r28, 2, 0x16, 0x1d
/* 802E00CC 002DBD2C 38 A0 00 73 */ li r5, 0x73
/* 802E00D0 002DBD30 7C 63 03 78 */ or r3, r3, r0
/* 802E00D4 002DBD34 7F E4 FB 78 */ mr r4, r31
/* 802E00D8 002DBD38 98 7F 00 00 */ stb r3, 0(r31)
/* 802E00DC 002DBD3C 38 00 00 01 */ li r0, 1
/* 802E00E0 002DBD40 38 60 00 03 */ li r3, 3
/* 802E00E4 002DBD44 98 BF 00 01 */ stb r5, 1(r31)
/* 802E00E8 002DBD48 98 1F 00 02 */ stb r0, 2(r31)
/* 802E00EC 002DBD4C 48 00 15 1D */ bl rfc_calc_fcs
/* 802E00F0 002DBD50 98 7F 00 03 */ stb r3, 3(r31)
/* 802E00F4 002DBD54 38 00 00 04 */ li r0, 4
/* 802E00F8 002DBD58 7F 63 DB 78 */ mr r3, r27
/* 802E00FC 002DBD5C 7F C4 F3 78 */ mr r4, r30
/* 802E0100 002DBD60 B0 1E 00 02 */ sth r0, 2(r30)
/* 802E0104 002DBD64 48 00 1C 81 */ bl rfc_check_send_cmd
lbl_802E0108:
/* 802E0108 002DBD68 39 61 00 20 */ addi r11, r1, 0x20
/* 802E010C 002DBD6C 4B EE 70 69 */ bl _restgpr_27
/* 802E0110 002DBD70 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0114 002DBD74 7C 08 03 A6 */ mtlr r0
/* 802E0118 002DBD78 38 21 00 20 */ addi r1, r1, 0x20
/* 802E011C 002DBD7C 4E 80 00 20 */ blr
.global rfc_send_dm
rfc_send_dm:
/* 802E0120 002DBD80 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0124 002DBD84 7C 08 02 A6 */ mflr r0
/* 802E0128 002DBD88 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E012C 002DBD8C 39 61 00 20 */ addi r11, r1, 0x20
/* 802E0130 002DBD90 4B EE 6F F9 */ bl _savegpr_27
/* 802E0134 002DBD94 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 802E0138 002DBD98 7C 7F 1B 78 */ mr r31, r3
/* 802E013C 002DBD9C 7C 9B 23 78 */ mr r27, r4
/* 802E0140 002DBDA0 7C BE 2B 78 */ mr r30, r5
/* 802E0144 002DBDA4 2C 00 00 00 */ cmpwi r0, 0
/* 802E0148 002DBDA8 38 00 00 01 */ li r0, 1
/* 802E014C 002DBDAC 41 82 00 08 */ beq lbl_802E0154
/* 802E0150 002DBDB0 38 00 00 00 */ li r0, 0
lbl_802E0154:
/* 802E0154 002DBDB4 54 1C 0E 3C */ rlwinm r28, r0, 1, 0x18, 0x1e
/* 802E0158 002DBDB8 38 60 00 02 */ li r3, 2
/* 802E015C 002DBDBC 4B FD 9A F1 */ bl GKI_getpoolbuf
/* 802E0160 002DBDC0 2C 03 00 00 */ cmpwi r3, 0
/* 802E0164 002DBDC4 7C 7D 1B 78 */ mr r29, r3
/* 802E0168 002DBDC8 41 82 00 64 */ beq lbl_802E01CC
/* 802E016C 002DBDCC 7C 1E 00 D0 */ neg r0, r30
/* 802E0170 002DBDD0 38 80 00 09 */ li r4, 9
/* 802E0174 002DBDD4 7C 00 F3 78 */ or r0, r0, r30
/* 802E0178 002DBDD8 B0 83 00 04 */ sth r4, 4(r3)
/* 802E017C 002DBDDC 3B C3 00 11 */ addi r30, r3, 0x11
/* 802E0180 002DBDE0 63 85 00 01 */ ori r5, r28, 1
/* 802E0184 002DBDE4 7C 03 FE 70 */ srawi r3, r0, 0x1f
/* 802E0188 002DBDE8 57 64 15 BA */ rlwinm r4, r27, 2, 0x16, 0x1d
/* 802E018C 002DBDEC 7C A4 23 78 */ or r4, r5, r4
/* 802E0190 002DBDF0 38 00 00 01 */ li r0, 1
/* 802E0194 002DBDF4 54 63 06 F6 */ rlwinm r3, r3, 0, 0x1b, 0x1b
/* 802E0198 002DBDF8 98 9E 00 00 */ stb r4, 0(r30)
/* 802E019C 002DBDFC 60 63 00 0F */ ori r3, r3, 0xf
/* 802E01A0 002DBE00 7F C4 F3 78 */ mr r4, r30
/* 802E01A4 002DBE04 98 7E 00 01 */ stb r3, 1(r30)
/* 802E01A8 002DBE08 38 60 00 03 */ li r3, 3
/* 802E01AC 002DBE0C 98 1E 00 02 */ stb r0, 2(r30)
/* 802E01B0 002DBE10 48 00 14 59 */ bl rfc_calc_fcs
/* 802E01B4 002DBE14 98 7E 00 03 */ stb r3, 3(r30)
/* 802E01B8 002DBE18 38 00 00 04 */ li r0, 4
/* 802E01BC 002DBE1C 7F E3 FB 78 */ mr r3, r31
/* 802E01C0 002DBE20 7F A4 EB 78 */ mr r4, r29
/* 802E01C4 002DBE24 B0 1D 00 02 */ sth r0, 2(r29)
/* 802E01C8 002DBE28 48 00 1B BD */ bl rfc_check_send_cmd
lbl_802E01CC:
/* 802E01CC 002DBE2C 39 61 00 20 */ addi r11, r1, 0x20
/* 802E01D0 002DBE30 4B EE 6F A5 */ bl _restgpr_27
/* 802E01D4 002DBE34 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E01D8 002DBE38 7C 08 03 A6 */ mtlr r0
/* 802E01DC 002DBE3C 38 21 00 20 */ addi r1, r1, 0x20
/* 802E01E0 002DBE40 4E 80 00 20 */ blr
.global rfc_send_disc
rfc_send_disc:
/* 802E01E4 002DBE44 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E01E8 002DBE48 7C 08 02 A6 */ mflr r0
/* 802E01EC 002DBE4C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E01F0 002DBE50 39 61 00 20 */ addi r11, r1, 0x20
/* 802E01F4 002DBE54 4B EE 6F 35 */ bl _savegpr_27
/* 802E01F8 002DBE58 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 802E01FC 002DBE5C 7C 7B 1B 78 */ mr r27, r3
/* 802E0200 002DBE60 7C 9C 23 78 */ mr r28, r4
/* 802E0204 002DBE64 38 60 00 01 */ li r3, 1
/* 802E0208 002DBE68 2C 00 00 00 */ cmpwi r0, 0
/* 802E020C 002DBE6C 40 82 00 08 */ bne lbl_802E0214
/* 802E0210 002DBE70 38 60 00 00 */ li r3, 0
lbl_802E0214:
/* 802E0214 002DBE74 54 7D 0E 3C */ rlwinm r29, r3, 1, 0x18, 0x1e
/* 802E0218 002DBE78 38 60 00 02 */ li r3, 2
/* 802E021C 002DBE7C 4B FD 9A 31 */ bl GKI_getpoolbuf
/* 802E0220 002DBE80 2C 03 00 00 */ cmpwi r3, 0
/* 802E0224 002DBE84 7C 7E 1B 78 */ mr r30, r3
/* 802E0228 002DBE88 41 82 00 54 */ beq lbl_802E027C
/* 802E022C 002DBE8C 38 00 00 09 */ li r0, 9
/* 802E0230 002DBE90 3B E3 00 11 */ addi r31, r3, 0x11
/* 802E0234 002DBE94 B0 03 00 04 */ sth r0, 4(r3)
/* 802E0238 002DBE98 63 A3 00 01 */ ori r3, r29, 1
/* 802E023C 002DBE9C 57 80 15 BA */ rlwinm r0, r28, 2, 0x16, 0x1d
/* 802E0240 002DBEA0 38 A0 00 53 */ li r5, 0x53
/* 802E0244 002DBEA4 7C 63 03 78 */ or r3, r3, r0
/* 802E0248 002DBEA8 7F E4 FB 78 */ mr r4, r31
/* 802E024C 002DBEAC 98 7F 00 00 */ stb r3, 0(r31)
/* 802E0250 002DBEB0 38 00 00 01 */ li r0, 1
/* 802E0254 002DBEB4 38 60 00 03 */ li r3, 3
/* 802E0258 002DBEB8 98 BF 00 01 */ stb r5, 1(r31)
/* 802E025C 002DBEBC 98 1F 00 02 */ stb r0, 2(r31)
/* 802E0260 002DBEC0 48 00 13 A9 */ bl rfc_calc_fcs
/* 802E0264 002DBEC4 98 7F 00 03 */ stb r3, 3(r31)
/* 802E0268 002DBEC8 38 00 00 04 */ li r0, 4
/* 802E026C 002DBECC 7F 63 DB 78 */ mr r3, r27
/* 802E0270 002DBED0 7F C4 F3 78 */ mr r4, r30
/* 802E0274 002DBED4 B0 1E 00 02 */ sth r0, 2(r30)
/* 802E0278 002DBED8 48 00 1B 0D */ bl rfc_check_send_cmd
lbl_802E027C:
/* 802E027C 002DBEDC 39 61 00 20 */ addi r11, r1, 0x20
/* 802E0280 002DBEE0 4B EE 6E F5 */ bl _restgpr_27
/* 802E0284 002DBEE4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0288 002DBEE8 7C 08 03 A6 */ mtlr r0
/* 802E028C 002DBEEC 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0290 002DBEF0 4E 80 00 20 */ blr
.global rfc_send_buf_uih
rfc_send_buf_uih:
/* 802E0294 002DBEF4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0298 002DBEF8 7C 08 02 A6 */ mflr r0
/* 802E029C 002DBEFC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E02A0 002DBF00 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802E02A4 002DBF04 7C BF 2B 78 */ mr r31, r5
/* 802E02A8 002DBF08 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802E02AC 002DBF0C 7C 9E 23 78 */ mr r30, r4
/* 802E02B0 002DBF10 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802E02B4 002DBF14 7C 7D 1B 78 */ mr r29, r3
/* 802E02B8 002DBF18 93 81 00 10 */ stw r28, 0x10(r1)
/* 802E02BC 002DBF1C 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 802E02C0 002DBF20 2C 00 00 00 */ cmpwi r0, 0
/* 802E02C4 002DBF24 38 00 00 01 */ li r0, 1
/* 802E02C8 002DBF28 40 82 00 08 */ bne lbl_802E02D0
/* 802E02CC 002DBF2C 38 00 00 00 */ li r0, 0
lbl_802E02D0:
/* 802E02D0 002DBF30 A0 65 00 04 */ lhz r3, 4(r5)
/* 802E02D4 002DBF34 54 06 0E 3C */ rlwinm r6, r0, 1, 0x18, 0x1e
/* 802E02D8 002DBF38 A0 05 00 02 */ lhz r0, 2(r5)
/* 802E02DC 002DBF3C 38 63 FF FD */ addi r3, r3, -3
/* 802E02E0 002DBF40 28 00 00 7F */ cmplwi r0, 0x7f
/* 802E02E4 002DBF44 B0 65 00 04 */ sth r3, 4(r5)
/* 802E02E8 002DBF48 40 81 00 10 */ ble lbl_802E02F8
/* 802E02EC 002DBF4C 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 802E02F0 002DBF50 38 03 FF FF */ addi r0, r3, -1
/* 802E02F4 002DBF54 B0 05 00 04 */ sth r0, 4(r5)
lbl_802E02F8:
/* 802E02F8 002DBF58 2C 04 00 00 */ cmpwi r4, 0
/* 802E02FC 002DBF5C 41 82 00 10 */ beq lbl_802E030C
/* 802E0300 002DBF60 A0 05 00 06 */ lhz r0, 6(r5)
/* 802E0304 002DBF64 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802E0308 002DBF68 48 00 00 08 */ b lbl_802E0310
lbl_802E030C:
/* 802E030C 002DBF6C 38 00 00 00 */ li r0, 0
lbl_802E0310:
/* 802E0310 002DBF70 2C 00 00 00 */ cmpwi r0, 0
/* 802E0314 002DBF74 41 82 00 10 */ beq lbl_802E0324
/* 802E0318 002DBF78 A0 65 00 04 */ lhz r3, 4(r5)
/* 802E031C 002DBF7C 38 63 FF FF */ addi r3, r3, -1
/* 802E0320 002DBF80 B0 65 00 04 */ sth r3, 4(r5)
lbl_802E0324:
/* 802E0324 002DBF84 7C 60 00 D0 */ neg r3, r0
/* 802E0328 002DBF88 A0 E5 00 04 */ lhz r7, 4(r5)
/* 802E032C 002DBF8C 7C 63 03 78 */ or r3, r3, r0
/* 802E0330 002DBF90 60 C6 00 01 */ ori r6, r6, 1
/* 802E0334 002DBF94 54 84 15 BA */ rlwinm r4, r4, 2, 0x16, 0x1d
/* 802E0338 002DBF98 7C E5 3A 14 */ add r7, r5, r7
/* 802E033C 002DBF9C 7C C4 23 78 */ or r4, r6, r4
/* 802E0340 002DBFA0 7C 63 FE 70 */ srawi r3, r3, 0x1f
/* 802E0344 002DBFA4 54 63 06 F6 */ rlwinm r3, r3, 0, 0x1b, 0x1b
/* 802E0348 002DBFA8 98 87 00 08 */ stb r4, 8(r7)
/* 802E034C 002DBFAC 60 63 00 EF */ ori r3, r3, 0xef
/* 802E0350 002DBFB0 38 87 00 0A */ addi r4, r7, 0xa
/* 802E0354 002DBFB4 98 67 00 09 */ stb r3, 9(r7)
/* 802E0358 002DBFB8 A0 65 00 02 */ lhz r3, 2(r5)
/* 802E035C 002DBFBC 28 03 00 7F */ cmplwi r3, 0x7f
/* 802E0360 002DBFC0 41 81 00 24 */ bgt lbl_802E0384
/* 802E0364 002DBFC4 54 63 0B FC */ rlwinm r3, r3, 1, 0xf, 0x1e
/* 802E0368 002DBFC8 60 63 00 01 */ ori r3, r3, 1
/* 802E036C 002DBFCC 98 64 00 00 */ stb r3, 0(r4)
/* 802E0370 002DBFD0 38 84 00 01 */ addi r4, r4, 1
/* 802E0374 002DBFD4 A0 65 00 02 */ lhz r3, 2(r5)
/* 802E0378 002DBFD8 38 63 00 03 */ addi r3, r3, 3
/* 802E037C 002DBFDC B0 65 00 02 */ sth r3, 2(r5)
/* 802E0380 002DBFE0 48 00 00 28 */ b lbl_802E03A8
lbl_802E0384:
/* 802E0384 002DBFE4 54 63 0E 3C */ rlwinm r3, r3, 1, 0x18, 0x1e
/* 802E0388 002DBFE8 98 64 00 00 */ stb r3, 0(r4)
/* 802E038C 002DBFEC A0 65 00 02 */ lhz r3, 2(r5)
/* 802E0390 002DBFF0 7C 63 3E 70 */ srawi r3, r3, 7
/* 802E0394 002DBFF4 98 64 00 01 */ stb r3, 1(r4)
/* 802E0398 002DBFF8 38 84 00 02 */ addi r4, r4, 2
/* 802E039C 002DBFFC A0 65 00 02 */ lhz r3, 2(r5)
/* 802E03A0 002DC000 38 63 00 04 */ addi r3, r3, 4
/* 802E03A4 002DC004 B0 65 00 02 */ sth r3, 2(r5)
lbl_802E03A8:
/* 802E03A8 002DC008 2C 00 00 00 */ cmpwi r0, 0
/* 802E03AC 002DC00C 41 82 00 14 */ beq lbl_802E03C0
/* 802E03B0 002DC010 98 04 00 00 */ stb r0, 0(r4)
/* 802E03B4 002DC014 A0 65 00 02 */ lhz r3, 2(r5)
/* 802E03B8 002DC018 38 03 00 01 */ addi r0, r3, 1
/* 802E03BC 002DC01C B0 05 00 02 */ sth r0, 2(r5)
lbl_802E03C0:
/* 802E03C0 002DC020 A0 85 00 02 */ lhz r4, 2(r5)
/* 802E03C4 002DC024 38 60 00 02 */ li r3, 2
/* 802E03C8 002DC028 A0 C5 00 04 */ lhz r6, 4(r5)
/* 802E03CC 002DC02C 38 04 00 01 */ addi r0, r4, 1
/* 802E03D0 002DC030 7C C5 32 14 */ add r6, r5, r6
/* 802E03D4 002DC034 B0 05 00 02 */ sth r0, 2(r5)
/* 802E03D8 002DC038 7F 86 22 14 */ add r28, r6, r4
/* 802E03DC 002DC03C 38 86 00 08 */ addi r4, r6, 8
/* 802E03E0 002DC040 48 00 12 29 */ bl rfc_calc_fcs
/* 802E03E4 002DC044 2C 1E 00 00 */ cmpwi r30, 0
/* 802E03E8 002DC048 98 7C 00 08 */ stb r3, 8(r28)
/* 802E03EC 002DC04C 40 82 00 14 */ bne lbl_802E0400
/* 802E03F0 002DC050 7F A3 EB 78 */ mr r3, r29
/* 802E03F4 002DC054 7F E4 FB 78 */ mr r4, r31
/* 802E03F8 002DC058 48 00 19 8D */ bl rfc_check_send_cmd
/* 802E03FC 002DC05C 48 00 00 10 */ b lbl_802E040C
lbl_802E0400:
/* 802E0400 002DC060 A0 7D 00 68 */ lhz r3, 0x68(r29)
/* 802E0404 002DC064 7F E4 FB 78 */ mr r4, r31
/* 802E0408 002DC068 4B FF 5C E9 */ bl L2CA_DataWrite
lbl_802E040C:
/* 802E040C 002DC06C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0410 002DC070 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802E0414 002DC074 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802E0418 002DC078 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802E041C 002DC07C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802E0420 002DC080 7C 08 03 A6 */ mtlr r0
/* 802E0424 002DC084 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0428 002DC088 4E 80 00 20 */ blr
.global rfc_send_pn
rfc_send_pn:
/* 802E042C 002DC08C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0430 002DC090 7C 08 02 A6 */ mflr r0
/* 802E0434 002DC094 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E0438 002DC098 39 61 00 20 */ addi r11, r1, 0x20
/* 802E043C 002DC09C 4B EE 6C E9 */ bl _savegpr_26
/* 802E0440 002DC0A0 7C 7E 1B 78 */ mr r30, r3
/* 802E0444 002DC0A4 7C 9A 23 78 */ mr r26, r4
/* 802E0448 002DC0A8 7C BB 2B 78 */ mr r27, r5
/* 802E044C 002DC0AC 7C DF 33 78 */ mr r31, r6
/* 802E0450 002DC0B0 7C FC 3B 78 */ mr r28, r7
/* 802E0454 002DC0B4 7D 1D 43 78 */ mr r29, r8
/* 802E0458 002DC0B8 38 60 00 02 */ li r3, 2
/* 802E045C 002DC0BC 4B FD 97 F1 */ bl GKI_getpoolbuf
/* 802E0460 002DC0C0 2C 03 00 00 */ cmpwi r3, 0
/* 802E0464 002DC0C4 41 82 00 98 */ beq lbl_802E04FC
/* 802E0468 002DC0C8 7C 1B 00 D0 */ neg r0, r27
/* 802E046C 002DC0CC 38 80 00 0C */ li r4, 0xc
/* 802E0470 002DC0D0 7C 00 DB 78 */ or r0, r0, r27
/* 802E0474 002DC0D4 B0 83 00 04 */ sth r4, 4(r3)
/* 802E0478 002DC0D8 7C 04 FE 70 */ srawi r4, r0, 0x1f
/* 802E047C 002DC0DC 2C 1B 00 00 */ cmpwi r27, 0
/* 802E0480 002DC0E0 54 84 07 BC */ rlwinm r4, r4, 0, 0x1e, 0x1e
/* 802E0484 002DC0E4 38 00 00 11 */ li r0, 0x11
/* 802E0488 002DC0E8 60 84 00 81 */ ori r4, r4, 0x81
/* 802E048C 002DC0EC 39 03 00 18 */ addi r8, r3, 0x18
/* 802E0490 002DC0F0 98 83 00 14 */ stb r4, 0x14(r3)
/* 802E0494 002DC0F4 98 03 00 15 */ stb r0, 0x15(r3)
/* 802E0498 002DC0F8 9B 43 00 16 */ stb r26, 0x16(r3)
/* 802E049C 002DC0FC 9B 83 00 17 */ stb r28, 0x17(r3)
/* 802E04A0 002DC100 41 82 00 14 */ beq lbl_802E04B4
/* 802E04A4 002DC104 38 00 00 00 */ li r0, 0
/* 802E04A8 002DC108 98 08 00 00 */ stb r0, 0(r8)
/* 802E04AC 002DC10C 39 08 00 01 */ addi r8, r8, 1
/* 802E04B0 002DC110 48 00 00 18 */ b lbl_802E04C8
lbl_802E04B4:
/* 802E04B4 002DC114 3C 80 80 57 */ lis r4, lbl_8056C428@ha
/* 802E04B8 002DC118 38 84 C4 28 */ addi r4, r4, lbl_8056C428@l
/* 802E04BC 002DC11C 88 04 00 0B */ lbz r0, 0xb(r4)
/* 802E04C0 002DC120 98 08 00 00 */ stb r0, 0(r8)
/* 802E04C4 002DC124 39 08 00 01 */ addi r8, r8, 1
lbl_802E04C8:
/* 802E04C8 002DC128 38 E0 00 00 */ li r7, 0
/* 802E04CC 002DC12C 57 E6 C6 3E */ rlwinm r6, r31, 0x18, 0x18, 0x1f
/* 802E04D0 002DC130 98 E8 00 00 */ stb r7, 0(r8)
/* 802E04D4 002DC134 38 00 00 0A */ li r0, 0xa
/* 802E04D8 002DC138 7C 65 1B 78 */ mr r5, r3
/* 802E04DC 002DC13C 38 80 00 00 */ li r4, 0
/* 802E04E0 002DC140 9B E8 00 01 */ stb r31, 1(r8)
/* 802E04E4 002DC144 98 C8 00 02 */ stb r6, 2(r8)
/* 802E04E8 002DC148 98 E8 00 03 */ stb r7, 3(r8)
/* 802E04EC 002DC14C 9B A8 00 04 */ stb r29, 4(r8)
/* 802E04F0 002DC150 B0 03 00 02 */ sth r0, 2(r3)
/* 802E04F4 002DC154 7F C3 F3 78 */ mr r3, r30
/* 802E04F8 002DC158 4B FF FD 9D */ bl rfc_send_buf_uih
lbl_802E04FC:
/* 802E04FC 002DC15C 39 61 00 20 */ addi r11, r1, 0x20
/* 802E0500 002DC160 4B EE 6C 71 */ bl _restgpr_26
/* 802E0504 002DC164 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0508 002DC168 7C 08 03 A6 */ mtlr r0
/* 802E050C 002DC16C 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0510 002DC170 4E 80 00 20 */ blr
.global rfc_send_fcon
rfc_send_fcon:
/* 802E0514 002DC174 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802E0518 002DC178 7C 08 02 A6 */ mflr r0
/* 802E051C 002DC17C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802E0520 002DC180 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802E0524 002DC184 7C 9F 23 78 */ mr r31, r4
/* 802E0528 002DC188 93 C1 00 08 */ stw r30, 8(r1)
/* 802E052C 002DC18C 7C 7E 1B 78 */ mr r30, r3
/* 802E0530 002DC190 38 60 00 02 */ li r3, 2
/* 802E0534 002DC194 4B FD 97 19 */ bl GKI_getpoolbuf
/* 802E0538 002DC198 2C 03 00 00 */ cmpwi r3, 0
/* 802E053C 002DC19C 41 82 00 44 */ beq lbl_802E0580
/* 802E0540 002DC1A0 7C 1F 00 D0 */ neg r0, r31
/* 802E0544 002DC1A4 38 80 00 0C */ li r4, 0xc
/* 802E0548 002DC1A8 7C 00 FB 78 */ or r0, r0, r31
/* 802E054C 002DC1AC B0 83 00 04 */ sth r4, 4(r3)
/* 802E0550 002DC1B0 7C 04 FE 70 */ srawi r4, r0, 0x1f
/* 802E0554 002DC1B4 38 C0 00 02 */ li r6, 2
/* 802E0558 002DC1B8 54 84 07 BC */ rlwinm r4, r4, 0, 0x1e, 0x1e
/* 802E055C 002DC1BC 38 00 00 01 */ li r0, 1
/* 802E0560 002DC1C0 60 84 00 A1 */ ori r4, r4, 0xa1
/* 802E0564 002DC1C4 7C 65 1B 78 */ mr r5, r3
/* 802E0568 002DC1C8 98 83 00 14 */ stb r4, 0x14(r3)
/* 802E056C 002DC1CC 38 80 00 00 */ li r4, 0
/* 802E0570 002DC1D0 98 03 00 15 */ stb r0, 0x15(r3)
/* 802E0574 002DC1D4 B0 C3 00 02 */ sth r6, 2(r3)
/* 802E0578 002DC1D8 7F C3 F3 78 */ mr r3, r30
/* 802E057C 002DC1DC 4B FF FD 19 */ bl rfc_send_buf_uih
lbl_802E0580:
/* 802E0580 002DC1E0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802E0584 002DC1E4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802E0588 002DC1E8 83 C1 00 08 */ lwz r30, 8(r1)
/* 802E058C 002DC1EC 7C 08 03 A6 */ mtlr r0
/* 802E0590 002DC1F0 38 21 00 10 */ addi r1, r1, 0x10
/* 802E0594 002DC1F4 4E 80 00 20 */ blr
.global rfc_send_fcoff
rfc_send_fcoff:
/* 802E0598 002DC1F8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802E059C 002DC1FC 7C 08 02 A6 */ mflr r0
/* 802E05A0 002DC200 90 01 00 14 */ stw r0, 0x14(r1)
/* 802E05A4 002DC204 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802E05A8 002DC208 7C 9F 23 78 */ mr r31, r4
/* 802E05AC 002DC20C 93 C1 00 08 */ stw r30, 8(r1)
/* 802E05B0 002DC210 7C 7E 1B 78 */ mr r30, r3
/* 802E05B4 002DC214 38 60 00 02 */ li r3, 2
/* 802E05B8 002DC218 4B FD 96 95 */ bl GKI_getpoolbuf
/* 802E05BC 002DC21C 2C 03 00 00 */ cmpwi r3, 0
/* 802E05C0 002DC220 41 82 00 44 */ beq lbl_802E0604
/* 802E05C4 002DC224 7C 1F 00 D0 */ neg r0, r31
/* 802E05C8 002DC228 38 80 00 0C */ li r4, 0xc
/* 802E05CC 002DC22C 7C 00 FB 78 */ or r0, r0, r31
/* 802E05D0 002DC230 B0 83 00 04 */ sth r4, 4(r3)
/* 802E05D4 002DC234 7C 04 FE 70 */ srawi r4, r0, 0x1f
/* 802E05D8 002DC238 38 C0 00 02 */ li r6, 2
/* 802E05DC 002DC23C 54 84 07 BC */ rlwinm r4, r4, 0, 0x1e, 0x1e
/* 802E05E0 002DC240 38 00 00 01 */ li r0, 1
/* 802E05E4 002DC244 60 84 00 61 */ ori r4, r4, 0x61
/* 802E05E8 002DC248 7C 65 1B 78 */ mr r5, r3
/* 802E05EC 002DC24C 98 83 00 14 */ stb r4, 0x14(r3)
/* 802E05F0 002DC250 38 80 00 00 */ li r4, 0
/* 802E05F4 002DC254 98 03 00 15 */ stb r0, 0x15(r3)
/* 802E05F8 002DC258 B0 C3 00 02 */ sth r6, 2(r3)
/* 802E05FC 002DC25C 7F C3 F3 78 */ mr r3, r30
/* 802E0600 002DC260 4B FF FC 95 */ bl rfc_send_buf_uih
lbl_802E0604:
/* 802E0604 002DC264 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802E0608 002DC268 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802E060C 002DC26C 83 C1 00 08 */ lwz r30, 8(r1)
/* 802E0610 002DC270 7C 08 03 A6 */ mtlr r0
/* 802E0614 002DC274 38 21 00 10 */ addi r1, r1, 0x10
/* 802E0618 002DC278 4E 80 00 20 */ blr
.global rfc_send_msc
rfc_send_msc:
/* 802E061C 002DC27C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0620 002DC280 7C 08 02 A6 */ mflr r0
/* 802E0624 002DC284 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E0628 002DC288 39 61 00 20 */ addi r11, r1, 0x20
/* 802E062C 002DC28C 4B EE 6A F9 */ bl _savegpr_26
/* 802E0630 002DC290 8B E6 00 00 */ lbz r31, 0(r6)
/* 802E0634 002DC294 7C 7C 1B 78 */ mr r28, r3
/* 802E0638 002DC298 8B C6 00 01 */ lbz r30, 1(r6)
/* 802E063C 002DC29C 7C 9A 23 78 */ mr r26, r4
/* 802E0640 002DC2A0 7C BB 2B 78 */ mr r27, r5
/* 802E0644 002DC2A4 7C DD 33 78 */ mr r29, r6
/* 802E0648 002DC2A8 38 60 00 02 */ li r3, 2
/* 802E064C 002DC2AC 4B FD 96 01 */ bl GKI_getpoolbuf
/* 802E0650 002DC2B0 2C 03 00 00 */ cmpwi r3, 0
/* 802E0654 002DC2B4 41 82 00 D0 */ beq lbl_802E0724
/* 802E0658 002DC2B8 7C 1B 00 D0 */ neg r0, r27
/* 802E065C 002DC2BC 7C 9E 00 D0 */ neg r4, r30
/* 802E0660 002DC2C0 7C 00 DB 78 */ or r0, r0, r27
/* 802E0664 002DC2C4 38 C0 00 0C */ li r6, 0xc
/* 802E0668 002DC2C8 7C 85 F3 78 */ or r5, r4, r30
/* 802E066C 002DC2CC B0 C3 00 04 */ sth r6, 4(r3)
/* 802E0670 002DC2D0 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 802E0674 002DC2D4 57 44 15 BA */ rlwinm r4, r26, 2, 0x16, 0x1d
/* 802E0678 002DC2D8 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e
/* 802E067C 002DC2DC 54 A5 0F FE */ srwi r5, r5, 0x1f
/* 802E0680 002DC2E0 60 00 00 E1 */ ori r0, r0, 0xe1
/* 802E0684 002DC2E4 2C 1E 00 00 */ cmpwi r30, 0
/* 802E0688 002DC2E8 39 25 00 02 */ addi r9, r5, 2
/* 802E068C 002DC2EC 98 03 00 14 */ stb r0, 0x14(r3)
/* 802E0690 002DC2F0 55 25 0D FC */ rlwinm r5, r9, 1, 0x17, 0x1e
/* 802E0694 002DC2F4 57 E0 07 FE */ clrlwi r0, r31, 0x1f
/* 802E0698 002DC2F8 60 A6 00 01 */ ori r6, r5, 1
/* 802E069C 002DC2FC 60 85 00 03 */ ori r5, r4, 3
/* 802E06A0 002DC300 98 C3 00 15 */ stb r6, 0x15(r3)
/* 802E06A4 002DC304 57 E4 FF FE */ rlwinm r4, r31, 0x1f, 0x1f, 0x1f
/* 802E06A8 002DC308 7D 00 00 D0 */ neg r8, r0
/* 802E06AC 002DC30C 98 A3 00 16 */ stb r5, 0x16(r3)
/* 802E06B0 002DC310 7C 84 00 D0 */ neg r4, r4
/* 802E06B4 002DC314 57 E0 F7 FE */ rlwinm r0, r31, 0x1e, 0x1f, 0x1f
/* 802E06B8 002DC318 88 FD 00 04 */ lbz r7, 4(r29)
/* 802E06BC 002DC31C 54 8A 07 38 */ rlwinm r10, r4, 0, 0x1c, 0x1c
/* 802E06C0 002DC320 7C C0 00 D0 */ neg r6, r0
/* 802E06C4 002DC324 57 E0 EF FE */ rlwinm r0, r31, 0x1d, 0x1f, 0x1f
/* 802E06C8 002DC328 7C 87 00 D0 */ neg r4, r7
/* 802E06CC 002DC32C 7C 84 3B 78 */ or r4, r4, r7
/* 802E06D0 002DC330 7C A0 00 D0 */ neg r5, r0
/* 802E06D4 002DC334 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802E06D8 002DC338 61 40 00 01 */ ori r0, r10, 1
/* 802E06DC 002DC33C 54 84 07 BC */ rlwinm r4, r4, 0, 0x1e, 0x1e
/* 802E06E0 002DC340 38 E3 00 18 */ addi r7, r3, 0x18
/* 802E06E4 002DC344 51 04 07 7A */ rlwimi r4, r8, 0, 0x1d, 0x1d
/* 802E06E8 002DC348 50 C4 06 72 */ rlwimi r4, r6, 0, 0x19, 0x19
/* 802E06EC 002DC34C 50 A4 06 30 */ rlwimi r4, r5, 0, 0x18, 0x18
/* 802E06F0 002DC350 7C 80 03 78 */ or r0, r4, r0
/* 802E06F4 002DC354 98 03 00 17 */ stb r0, 0x17(r3)
/* 802E06F8 002DC358 41 82 00 10 */ beq lbl_802E0708
/* 802E06FC 002DC35C 57 C0 25 36 */ rlwinm r0, r30, 4, 0x14, 0x1b
/* 802E0700 002DC360 60 00 00 03 */ ori r0, r0, 3
/* 802E0704 002DC364 98 07 00 00 */ stb r0, 0(r7)
lbl_802E0708:
/* 802E0708 002DC368 55 24 06 3E */ clrlwi r4, r9, 0x18
/* 802E070C 002DC36C 7C 65 1B 78 */ mr r5, r3
/* 802E0710 002DC370 38 04 00 02 */ addi r0, r4, 2
/* 802E0714 002DC374 B0 03 00 02 */ sth r0, 2(r3)
/* 802E0718 002DC378 38 80 00 00 */ li r4, 0
/* 802E071C 002DC37C 7F 83 E3 78 */ mr r3, r28
/* 802E0720 002DC380 4B FF FB 75 */ bl rfc_send_buf_uih
lbl_802E0724:
/* 802E0724 002DC384 39 61 00 20 */ addi r11, r1, 0x20
/* 802E0728 002DC388 4B EE 6A 49 */ bl _restgpr_26
/* 802E072C 002DC38C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0730 002DC390 7C 08 03 A6 */ mtlr r0
/* 802E0734 002DC394 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0738 002DC398 4E 80 00 20 */ blr
.global rfc_send_rls
rfc_send_rls:
/* 802E073C 002DC39C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0740 002DC3A0 7C 08 02 A6 */ mflr r0
/* 802E0744 002DC3A4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E0748 002DC3A8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802E074C 002DC3AC 7C DF 33 78 */ mr r31, r6
/* 802E0750 002DC3B0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802E0754 002DC3B4 7C BE 2B 78 */ mr r30, r5
/* 802E0758 002DC3B8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802E075C 002DC3BC 7C 9D 23 78 */ mr r29, r4
/* 802E0760 002DC3C0 93 81 00 10 */ stw r28, 0x10(r1)
/* 802E0764 002DC3C4 7C 7C 1B 78 */ mr r28, r3
/* 802E0768 002DC3C8 38 60 00 02 */ li r3, 2
/* 802E076C 002DC3CC 4B FD 94 E1 */ bl GKI_getpoolbuf
/* 802E0770 002DC3D0 2C 03 00 00 */ cmpwi r3, 0
/* 802E0774 002DC3D4 41 82 00 58 */ beq lbl_802E07CC
/* 802E0778 002DC3D8 7C 1E 00 D0 */ neg r0, r30
/* 802E077C 002DC3DC 38 A0 00 0C */ li r5, 0xc
/* 802E0780 002DC3E0 7C 04 F3 78 */ or r4, r0, r30
/* 802E0784 002DC3E4 B0 A3 00 04 */ sth r5, 4(r3)
/* 802E0788 002DC3E8 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802E078C 002DC3EC 57 A0 15 BA */ rlwinm r0, r29, 2, 0x16, 0x1d
/* 802E0790 002DC3F0 54 85 07 BC */ rlwinm r5, r4, 0, 0x1e, 0x1e
/* 802E0794 002DC3F4 63 E6 00 01 */ ori r6, r31, 1
/* 802E0798 002DC3F8 60 A5 00 51 */ ori r5, r5, 0x51
/* 802E079C 002DC3FC 60 07 00 03 */ ori r7, r0, 3
/* 802E07A0 002DC400 98 A3 00 14 */ stb r5, 0x14(r3)
/* 802E07A4 002DC404 38 80 00 05 */ li r4, 5
/* 802E07A8 002DC408 38 00 00 04 */ li r0, 4
/* 802E07AC 002DC40C 7C 65 1B 78 */ mr r5, r3
/* 802E07B0 002DC410 98 83 00 15 */ stb r4, 0x15(r3)
/* 802E07B4 002DC414 38 80 00 00 */ li r4, 0
/* 802E07B8 002DC418 98 E3 00 16 */ stb r7, 0x16(r3)
/* 802E07BC 002DC41C 98 C3 00 17 */ stb r6, 0x17(r3)
/* 802E07C0 002DC420 B0 03 00 02 */ sth r0, 2(r3)
/* 802E07C4 002DC424 7F 83 E3 78 */ mr r3, r28
/* 802E07C8 002DC428 4B FF FA CD */ bl rfc_send_buf_uih
lbl_802E07CC:
/* 802E07CC 002DC42C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E07D0 002DC430 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802E07D4 002DC434 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802E07D8 002DC438 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802E07DC 002DC43C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802E07E0 002DC440 7C 08 03 A6 */ mtlr r0
/* 802E07E4 002DC444 38 21 00 20 */ addi r1, r1, 0x20
/* 802E07E8 002DC448 4E 80 00 20 */ blr
.global rfc_send_rpn
rfc_send_rpn:
/* 802E07EC 002DC44C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E07F0 002DC450 7C 08 02 A6 */ mflr r0
/* 802E07F4 002DC454 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E07F8 002DC458 39 61 00 20 */ addi r11, r1, 0x20
/* 802E07FC 002DC45C 4B EE 69 2D */ bl _savegpr_27
/* 802E0800 002DC460 7C 7D 1B 78 */ mr r29, r3
/* 802E0804 002DC464 7C 9B 23 78 */ mr r27, r4
/* 802E0808 002DC468 7C BC 2B 78 */ mr r28, r5
/* 802E080C 002DC46C 7C DE 33 78 */ mr r30, r6
/* 802E0810 002DC470 7C FF 3B 78 */ mr r31, r7
/* 802E0814 002DC474 38 60 00 02 */ li r3, 2
/* 802E0818 002DC478 4B FD 94 35 */ bl GKI_getpoolbuf
/* 802E081C 002DC47C 2C 03 00 00 */ cmpwi r3, 0
/* 802E0820 002DC480 7C 65 1B 78 */ mr r5, r3
/* 802E0824 002DC484 41 82 00 CC */ beq lbl_802E08F0
/* 802E0828 002DC488 7C 1C 00 D0 */ neg r0, r28
/* 802E082C 002DC48C 38 80 00 0C */ li r4, 0xc
/* 802E0830 002DC490 7C 00 E3 78 */ or r0, r0, r28
/* 802E0834 002DC494 B0 83 00 04 */ sth r4, 4(r3)
/* 802E0838 002DC498 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 802E083C 002DC49C 2C 1E 00 00 */ cmpwi r30, 0
/* 802E0840 002DC4A0 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e
/* 802E0844 002DC4A4 38 83 00 15 */ addi r4, r3, 0x15
/* 802E0848 002DC4A8 60 00 00 91 */ ori r0, r0, 0x91
/* 802E084C 002DC4AC 98 03 00 14 */ stb r0, 0x14(r3)
/* 802E0850 002DC4B0 40 82 00 20 */ bne lbl_802E0870
/* 802E0854 002DC4B4 38 C0 00 03 */ li r6, 3
/* 802E0858 002DC4B8 57 60 15 BA */ rlwinm r0, r27, 2, 0x16, 0x1d
/* 802E085C 002DC4BC 98 C4 00 00 */ stb r6, 0(r4)
/* 802E0860 002DC4C0 60 00 00 03 */ ori r0, r0, 3
/* 802E0864 002DC4C4 98 04 00 01 */ stb r0, 1(r4)
/* 802E0868 002DC4C8 B0 C3 00 02 */ sth r6, 2(r3)
/* 802E086C 002DC4CC 48 00 00 78 */ b lbl_802E08E4
lbl_802E0870:
/* 802E0870 002DC4D0 38 C0 00 11 */ li r6, 0x11
/* 802E0874 002DC4D4 57 60 15 BA */ rlwinm r0, r27, 2, 0x16, 0x1d
/* 802E0878 002DC4D8 98 C4 00 00 */ stb r6, 0(r4)
/* 802E087C 002DC4DC 60 07 00 03 */ ori r7, r0, 3
/* 802E0880 002DC4E0 57 E6 C6 3E */ rlwinm r6, r31, 0x18, 0x18, 0x1f
/* 802E0884 002DC4E4 38 00 00 0A */ li r0, 0xa
/* 802E0888 002DC4E8 98 E4 00 01 */ stb r7, 1(r4)
/* 802E088C 002DC4EC 88 FE 00 00 */ lbz r7, 0(r30)
/* 802E0890 002DC4F0 98 E4 00 02 */ stb r7, 2(r4)
/* 802E0894 002DC4F4 88 FE 00 02 */ lbz r7, 2(r30)
/* 802E0898 002DC4F8 89 3E 00 03 */ lbz r9, 3(r30)
/* 802E089C 002DC4FC 89 5E 00 04 */ lbz r10, 4(r30)
/* 802E08A0 002DC500 54 E7 10 3A */ slwi r7, r7, 2
/* 802E08A4 002DC504 89 1E 00 01 */ lbz r8, 1(r30)
/* 802E08A8 002DC508 55 29 18 38 */ slwi r9, r9, 3
/* 802E08AC 002DC50C 55 4A 20 36 */ slwi r10, r10, 4
/* 802E08B0 002DC510 7D 07 3B 78 */ or r7, r8, r7
/* 802E08B4 002DC514 7D 27 3B 78 */ or r7, r9, r7
/* 802E08B8 002DC518 7D 47 3B 78 */ or r7, r10, r7
/* 802E08BC 002DC51C 98 E4 00 03 */ stb r7, 3(r4)
/* 802E08C0 002DC520 88 FE 00 05 */ lbz r7, 5(r30)
/* 802E08C4 002DC524 98 E4 00 04 */ stb r7, 4(r4)
/* 802E08C8 002DC528 88 FE 00 07 */ lbz r7, 7(r30)
/* 802E08CC 002DC52C 98 E4 00 05 */ stb r7, 5(r4)
/* 802E08D0 002DC530 88 FE 00 08 */ lbz r7, 8(r30)
/* 802E08D4 002DC534 98 E4 00 06 */ stb r7, 6(r4)
/* 802E08D8 002DC538 9B E4 00 07 */ stb r31, 7(r4)
/* 802E08DC 002DC53C 98 C4 00 08 */ stb r6, 8(r4)
/* 802E08E0 002DC540 B0 03 00 02 */ sth r0, 2(r3)
lbl_802E08E4:
/* 802E08E4 002DC544 7F A3 EB 78 */ mr r3, r29
/* 802E08E8 002DC548 38 80 00 00 */ li r4, 0
/* 802E08EC 002DC54C 4B FF F9 A9 */ bl rfc_send_buf_uih
lbl_802E08F0:
/* 802E08F0 002DC550 39 61 00 20 */ addi r11, r1, 0x20
/* 802E08F4 002DC554 4B EE 68 81 */ bl _restgpr_27
/* 802E08F8 002DC558 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E08FC 002DC55C 7C 08 03 A6 */ mtlr r0
/* 802E0900 002DC560 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0904 002DC564 4E 80 00 20 */ blr
.global rfc_send_test
rfc_send_test:
/* 802E0908 002DC568 A0 05 00 04 */ lhz r0, 4(r5)
/* 802E090C 002DC56C 28 00 00 10 */ cmplwi r0, 0x10
/* 802E0910 002DC570 40 80 00 50 */ bge lbl_802E0960
/* 802E0914 002DC574 A0 C5 00 02 */ lhz r6, 2(r5)
/* 802E0918 002DC578 7C 05 02 14 */ add r0, r5, r0
/* 802E091C 002DC57C 39 00 00 00 */ li r8, 0
/* 802E0920 002DC580 7C E0 32 14 */ add r7, r0, r6
/* 802E0924 002DC584 7C C5 32 14 */ add r6, r5, r6
/* 802E0928 002DC588 38 E7 00 07 */ addi r7, r7, 7
/* 802E092C 002DC58C 39 26 00 17 */ addi r9, r6, 0x17
/* 802E0930 002DC590 48 00 00 18 */ b lbl_802E0948
lbl_802E0934:
/* 802E0934 002DC594 88 07 00 00 */ lbz r0, 0(r7)
/* 802E0938 002DC598 39 08 00 01 */ addi r8, r8, 1
/* 802E093C 002DC59C 38 E7 FF FF */ addi r7, r7, -1
/* 802E0940 002DC5A0 98 09 00 00 */ stb r0, 0(r9)
/* 802E0944 002DC5A4 39 29 FF FF */ addi r9, r9, -1
lbl_802E0948:
/* 802E0948 002DC5A8 A0 05 00 02 */ lhz r0, 2(r5)
/* 802E094C 002DC5AC 55 06 04 3E */ clrlwi r6, r8, 0x10
/* 802E0950 002DC5B0 7C 06 00 40 */ cmplw r6, r0
/* 802E0954 002DC5B4 41 80 FF E0 */ blt lbl_802E0934
/* 802E0958 002DC5B8 38 00 00 10 */ li r0, 0x10
/* 802E095C 002DC5BC B0 05 00 04 */ sth r0, 4(r5)
lbl_802E0960:
/* 802E0960 002DC5C0 7C 04 00 D0 */ neg r0, r4
/* 802E0964 002DC5C4 A0 C5 00 04 */ lhz r6, 4(r5)
/* 802E0968 002DC5C8 7C 00 23 78 */ or r0, r0, r4
/* 802E096C 002DC5CC 38 86 FF FE */ addi r4, r6, -2
/* 802E0970 002DC5D0 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 802E0974 002DC5D4 B0 85 00 04 */ sth r4, 4(r5)
/* 802E0978 002DC5D8 54 86 04 3E */ clrlwi r6, r4, 0x10
/* 802E097C 002DC5DC 38 80 00 00 */ li r4, 0
/* 802E0980 002DC5E0 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e
/* 802E0984 002DC5E4 7C C5 32 14 */ add r6, r5, r6
/* 802E0988 002DC5E8 60 00 00 21 */ ori r0, r0, 0x21
/* 802E098C 002DC5EC 98 06 00 08 */ stb r0, 8(r6)
/* 802E0990 002DC5F0 A0 05 00 02 */ lhz r0, 2(r5)
/* 802E0994 002DC5F4 54 00 08 3C */ slwi r0, r0, 1
/* 802E0998 002DC5F8 60 00 00 01 */ ori r0, r0, 1
/* 802E099C 002DC5FC 98 06 00 09 */ stb r0, 9(r6)
/* 802E09A0 002DC600 A0 C5 00 02 */ lhz r6, 2(r5)
/* 802E09A4 002DC604 38 06 00 02 */ addi r0, r6, 2
/* 802E09A8 002DC608 B0 05 00 02 */ sth r0, 2(r5)
/* 802E09AC 002DC60C 4B FF F8 E8 */ b rfc_send_buf_uih
.global rfc_send_credit
rfc_send_credit:
/* 802E09B0 002DC610 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E09B4 002DC614 7C 08 02 A6 */ mflr r0
/* 802E09B8 002DC618 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E09BC 002DC61C 39 61 00 20 */ addi r11, r1, 0x20
/* 802E09C0 002DC620 4B EE 67 69 */ bl _savegpr_27
/* 802E09C4 002DC624 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 802E09C8 002DC628 7C 7B 1B 78 */ mr r27, r3
/* 802E09CC 002DC62C 7C 9C 23 78 */ mr r28, r4
/* 802E09D0 002DC630 7C BD 2B 78 */ mr r29, r5
/* 802E09D4 002DC634 2C 00 00 00 */ cmpwi r0, 0
/* 802E09D8 002DC638 38 00 00 01 */ li r0, 1
/* 802E09DC 002DC63C 40 82 00 08 */ bne lbl_802E09E4
/* 802E09E0 002DC640 38 00 00 00 */ li r0, 0
lbl_802E09E4:
/* 802E09E4 002DC644 54 1E 0E 3C */ rlwinm r30, r0, 1, 0x18, 0x1e
/* 802E09E8 002DC648 38 60 00 02 */ li r3, 2
/* 802E09EC 002DC64C 4B FD 92 61 */ bl GKI_getpoolbuf
/* 802E09F0 002DC650 2C 03 00 00 */ cmpwi r3, 0
/* 802E09F4 002DC654 7C 7F 1B 78 */ mr r31, r3
/* 802E09F8 002DC658 41 82 00 60 */ beq lbl_802E0A58
/* 802E09FC 002DC65C 38 A0 00 09 */ li r5, 9
/* 802E0A00 002DC660 63 C4 00 01 */ ori r4, r30, 1
/* 802E0A04 002DC664 57 80 15 BA */ rlwinm r0, r28, 2, 0x16, 0x1d
/* 802E0A08 002DC668 B0 A3 00 04 */ sth r5, 4(r3)
/* 802E0A0C 002DC66C 7C 80 03 78 */ or r0, r4, r0
/* 802E0A10 002DC670 38 80 00 FF */ li r4, 0xff
/* 802E0A14 002DC674 98 03 00 11 */ stb r0, 0x11(r3)
/* 802E0A18 002DC678 38 00 00 01 */ li r0, 1
/* 802E0A1C 002DC67C 3B DF 00 15 */ addi r30, r31, 0x15
/* 802E0A20 002DC680 98 83 00 12 */ stb r4, 0x12(r3)
/* 802E0A24 002DC684 98 03 00 13 */ stb r0, 0x13(r3)
/* 802E0A28 002DC688 9B A3 00 14 */ stb r29, 0x14(r3)
/* 802E0A2C 002DC68C 38 60 00 02 */ li r3, 2
/* 802E0A30 002DC690 A0 1F 00 04 */ lhz r0, 4(r31)
/* 802E0A34 002DC694 7C 9F 02 14 */ add r4, r31, r0
/* 802E0A38 002DC698 38 84 00 08 */ addi r4, r4, 8
/* 802E0A3C 002DC69C 48 00 0B CD */ bl rfc_calc_fcs
/* 802E0A40 002DC6A0 98 7E 00 00 */ stb r3, 0(r30)
/* 802E0A44 002DC6A4 38 00 00 05 */ li r0, 5
/* 802E0A48 002DC6A8 7F 63 DB 78 */ mr r3, r27
/* 802E0A4C 002DC6AC 7F E4 FB 78 */ mr r4, r31
/* 802E0A50 002DC6B0 B0 1F 00 02 */ sth r0, 2(r31)
/* 802E0A54 002DC6B4 48 00 13 31 */ bl rfc_check_send_cmd
lbl_802E0A58:
/* 802E0A58 002DC6B8 39 61 00 20 */ addi r11, r1, 0x20
/* 802E0A5C 002DC6BC 4B EE 67 19 */ bl _restgpr_27
/* 802E0A60 002DC6C0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0A64 002DC6C4 7C 08 03 A6 */ mtlr r0
/* 802E0A68 002DC6C8 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0A6C 002DC6CC 4E 80 00 20 */ blr
.global rfc_parse_data
rfc_parse_data:
/* 802E0A70 002DC6D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0A74 002DC6D4 7C 08 02 A6 */ mflr r0
/* 802E0A78 002DC6D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E0A7C 002DC6DC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802E0A80 002DC6E0 3F E0 80 44 */ lis r31, lbl_80444DF8@ha
/* 802E0A84 002DC6E4 3B FF 4D F8 */ addi r31, r31, lbl_80444DF8@l
/* 802E0A88 002DC6E8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802E0A8C 002DC6EC 7C 9E 23 78 */ mr r30, r4
/* 802E0A90 002DC6F0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802E0A94 002DC6F4 7C 7D 1B 78 */ mr r29, r3
/* 802E0A98 002DC6F8 A0 05 00 04 */ lhz r0, 4(r5)
/* 802E0A9C 002DC6FC A1 05 00 02 */ lhz r8, 2(r5)
/* 802E0AA0 002DC700 7C C5 02 14 */ add r6, r5, r0
/* 802E0AA4 002DC704 38 E6 00 08 */ addi r7, r6, 8
/* 802E0AA8 002DC708 28 08 00 03 */ cmplwi r8, 3
/* 802E0AAC 002DC70C 7C E0 3B 78 */ mr r0, r7
/* 802E0AB0 002DC710 40 80 00 30 */ bge lbl_802E0AE0
/* 802E0AB4 002DC714 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0AB8 002DC718 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0ABC 002DC71C 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0AC0 002DC720 28 00 00 01 */ cmplwi r0, 1
/* 802E0AC4 002DC724 41 80 00 14 */ blt lbl_802E0AD8
/* 802E0AC8 002DC728 7D 05 43 78 */ mr r5, r8
/* 802E0ACC 002DC72C 38 9F 00 00 */ addi r4, r31, 0
/* 802E0AD0 002DC730 3C 60 00 09 */ lis r3, 9
/* 802E0AD4 002DC734 4B FD C4 55 */ bl LogMsg_1
lbl_802E0AD8:
/* 802E0AD8 002DC738 38 60 00 32 */ li r3, 0x32
/* 802E0ADC 002DC73C 48 00 04 EC */ b lbl_802E0FC8
lbl_802E0AE0:
/* 802E0AE0 002DC740 89 07 00 00 */ lbz r8, 0(r7)
/* 802E0AE4 002DC744 55 06 07 BC */ rlwinm r6, r8, 0, 0x1e, 0x1e
/* 802E0AE8 002DC748 55 09 07 FF */ clrlwi. r9, r8, 0x1f
/* 802E0AEC 002DC74C 7C C6 0E 70 */ srawi r6, r6, 1
/* 802E0AF0 002DC750 98 C4 00 02 */ stb r6, 2(r4)
/* 802E0AF4 002DC754 88 C7 00 00 */ lbz r6, 0(r7)
/* 802E0AF8 002DC758 38 E7 00 01 */ addi r7, r7, 1
/* 802E0AFC 002DC75C 7C C8 16 70 */ srawi r8, r6, 2
/* 802E0B00 002DC760 99 04 00 00 */ stb r8, 0(r4)
/* 802E0B04 002DC764 40 82 00 1C */ bne lbl_802E0B20
/* 802E0B08 002DC768 88 C7 00 00 */ lbz r6, 0(r7)
/* 802E0B0C 002DC76C 55 08 06 3E */ clrlwi r8, r8, 0x18
/* 802E0B10 002DC770 38 E7 00 01 */ addi r7, r7, 1
/* 802E0B14 002DC774 54 C6 30 32 */ slwi r6, r6, 6
/* 802E0B18 002DC778 7C C8 32 14 */ add r6, r8, r6
/* 802E0B1C 002DC77C 98 C4 00 00 */ stb r6, 0(r4)
lbl_802E0B20:
/* 802E0B20 002DC780 88 C7 00 00 */ lbz r6, 0(r7)
/* 802E0B24 002DC784 54 C6 07 34 */ rlwinm r6, r6, 0, 0x1c, 0x1a
/* 802E0B28 002DC788 98 C4 00 01 */ stb r6, 1(r4)
/* 802E0B2C 002DC78C 88 C7 00 00 */ lbz r6, 0(r7)
/* 802E0B30 002DC790 54 C6 06 F6 */ rlwinm r6, r6, 0, 0x1b, 0x1b
/* 802E0B34 002DC794 7C C6 26 70 */ srawi r6, r6, 4
/* 802E0B38 002DC798 98 C4 00 04 */ stb r6, 4(r4)
/* 802E0B3C 002DC79C 88 C7 00 01 */ lbz r6, 1(r7)
/* 802E0B40 002DC7A0 38 E7 00 02 */ addi r7, r7, 2
/* 802E0B44 002DC7A4 54 CA 07 FF */ clrlwi. r10, r6, 0x1f
/* 802E0B48 002DC7A8 7C C8 0E 70 */ srawi r8, r6, 1
/* 802E0B4C 002DC7AC 40 82 00 18 */ bne lbl_802E0B64
/* 802E0B50 002DC7B0 88 C7 00 00 */ lbz r6, 0(r7)
/* 802E0B54 002DC7B4 38 E7 00 01 */ addi r7, r7, 1
/* 802E0B58 002DC7B8 54 C6 38 30 */ slwi r6, r6, 7
/* 802E0B5C 002DC7BC 7C C8 32 14 */ add r6, r8, r6
/* 802E0B60 002DC7C0 54 C8 04 3E */ clrlwi r8, r6, 0x10
lbl_802E0B64:
/* 802E0B64 002DC7C4 7D 46 00 34 */ cntlzw r6, r10
/* 802E0B68 002DC7C8 7D 29 00 34 */ cntlzw r9, r9
/* 802E0B6C 002DC7CC 54 CB D9 7E */ srwi r11, r6, 5
/* 802E0B70 002DC7D0 A0 C5 00 04 */ lhz r6, 4(r5)
/* 802E0B74 002DC7D4 55 2A D9 7E */ srwi r10, r9, 5
/* 802E0B78 002DC7D8 A1 25 00 02 */ lhz r9, 2(r5)
/* 802E0B7C 002DC7DC 7D 6A 5A 14 */ add r11, r10, r11
/* 802E0B80 002DC7E0 39 4B 00 04 */ addi r10, r11, 4
/* 802E0B84 002DC7E4 7C CB 32 14 */ add r6, r11, r6
/* 802E0B88 002DC7E8 7D 2A 48 50 */ subf r9, r10, r9
/* 802E0B8C 002DC7EC 38 C6 00 03 */ addi r6, r6, 3
/* 802E0B90 002DC7F0 B1 25 00 02 */ sth r9, 2(r5)
/* 802E0B94 002DC7F4 B0 C5 00 04 */ sth r6, 4(r5)
/* 802E0B98 002DC7F8 88 C3 00 72 */ lbz r6, 0x72(r3)
/* 802E0B9C 002DC7FC 28 06 00 02 */ cmplwi r6, 2
/* 802E0BA0 002DC800 40 82 00 50 */ bne lbl_802E0BF0
/* 802E0BA4 002DC804 88 C4 00 01 */ lbz r6, 1(r4)
/* 802E0BA8 002DC808 28 06 00 EF */ cmplwi r6, 0xef
/* 802E0BAC 002DC80C 40 82 00 44 */ bne lbl_802E0BF0
/* 802E0BB0 002DC810 88 C4 00 00 */ lbz r6, 0(r4)
/* 802E0BB4 002DC814 2C 06 00 00 */ cmpwi r6, 0
/* 802E0BB8 002DC818 41 82 00 38 */ beq lbl_802E0BF0
/* 802E0BBC 002DC81C 88 C4 00 04 */ lbz r6, 4(r4)
/* 802E0BC0 002DC820 28 06 00 01 */ cmplwi r6, 1
/* 802E0BC4 002DC824 40 82 00 2C */ bne lbl_802E0BF0
/* 802E0BC8 002DC828 88 C7 00 00 */ lbz r6, 0(r7)
/* 802E0BCC 002DC82C 38 E7 00 01 */ addi r7, r7, 1
/* 802E0BD0 002DC830 98 C4 00 05 */ stb r6, 5(r4)
/* 802E0BD4 002DC834 A1 25 00 02 */ lhz r9, 2(r5)
/* 802E0BD8 002DC838 A0 C5 00 04 */ lhz r6, 4(r5)
/* 802E0BDC 002DC83C 39 29 FF FF */ addi r9, r9, -1
/* 802E0BE0 002DC840 38 C6 00 01 */ addi r6, r6, 1
/* 802E0BE4 002DC844 B1 25 00 02 */ sth r9, 2(r5)
/* 802E0BE8 002DC848 B0 C5 00 04 */ sth r6, 4(r5)
/* 802E0BEC 002DC84C 48 00 00 0C */ b lbl_802E0BF8
lbl_802E0BF0:
/* 802E0BF0 002DC850 38 C0 00 00 */ li r6, 0
/* 802E0BF4 002DC854 98 C4 00 05 */ stb r6, 5(r4)
lbl_802E0BF8:
/* 802E0BF8 002DC858 A0 A5 00 02 */ lhz r5, 2(r5)
/* 802E0BFC 002DC85C 55 06 04 3E */ clrlwi r6, r8, 0x10
/* 802E0C00 002DC860 7C 05 30 40 */ cmplw r5, r6
/* 802E0C04 002DC864 41 82 00 2C */ beq lbl_802E0C30
/* 802E0C08 002DC868 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0C0C 002DC86C 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0C10 002DC870 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0C14 002DC874 28 00 00 01 */ cmplwi r0, 1
/* 802E0C18 002DC878 41 80 00 10 */ blt lbl_802E0C28
/* 802E0C1C 002DC87C 38 9F 00 10 */ addi r4, r31, 0x10
/* 802E0C20 002DC880 3C 60 00 09 */ lis r3, 9
/* 802E0C24 002DC884 4B FD C3 1D */ bl LogMsg_2
lbl_802E0C28:
/* 802E0C28 002DC888 38 60 00 32 */ li r3, 0x32
/* 802E0C2C 002DC88C 48 00 03 9C */ b lbl_802E0FC8
lbl_802E0C30:
/* 802E0C30 002DC890 89 24 00 01 */ lbz r9, 1(r4)
/* 802E0C34 002DC894 7C A7 30 AE */ lbzx r5, r7, r6
/* 802E0C38 002DC898 2C 09 00 43 */ cmpwi r9, 0x43
/* 802E0C3C 002DC89C 41 82 02 0C */ beq lbl_802E0E48
/* 802E0C40 002DC8A0 40 80 00 1C */ bge lbl_802E0C5C
/* 802E0C44 002DC8A4 2C 09 00 2F */ cmpwi r9, 0x2f
/* 802E0C48 002DC8A8 41 82 00 2C */ beq lbl_802E0C74
/* 802E0C4C 002DC8AC 40 80 03 78 */ bge lbl_802E0FC4
/* 802E0C50 002DC8B0 2C 09 00 0F */ cmpwi r9, 0xf
/* 802E0C54 002DC8B4 41 82 01 60 */ beq lbl_802E0DB4
/* 802E0C58 002DC8B8 48 00 03 6C */ b lbl_802E0FC4
lbl_802E0C5C:
/* 802E0C5C 002DC8BC 2C 09 00 EF */ cmpwi r9, 0xef
/* 802E0C60 002DC8C0 41 82 02 88 */ beq lbl_802E0EE8
/* 802E0C64 002DC8C4 40 80 03 60 */ bge lbl_802E0FC4
/* 802E0C68 002DC8C8 2C 09 00 63 */ cmpwi r9, 0x63
/* 802E0C6C 002DC8CC 41 82 00 A8 */ beq lbl_802E0D14
/* 802E0C70 002DC8D0 48 00 03 54 */ b lbl_802E0FC4
lbl_802E0C74:
/* 802E0C74 002DC8D4 88 C3 00 6D */ lbz r6, 0x6d(r3)
/* 802E0C78 002DC8D8 2C 06 00 00 */ cmpwi r6, 0
/* 802E0C7C 002DC8DC 41 82 00 10 */ beq lbl_802E0C8C
/* 802E0C80 002DC8E0 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0C84 002DC8E4 2C 03 00 00 */ cmpwi r3, 0
/* 802E0C88 002DC8E8 40 82 00 5C */ bne lbl_802E0CE4
lbl_802E0C8C:
/* 802E0C8C 002DC8EC 2C 06 00 00 */ cmpwi r6, 0
/* 802E0C90 002DC8F0 40 82 00 10 */ bne lbl_802E0CA0
/* 802E0C94 002DC8F4 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0C98 002DC8F8 2C 03 00 00 */ cmpwi r3, 0
/* 802E0C9C 002DC8FC 41 82 00 48 */ beq lbl_802E0CE4
lbl_802E0CA0:
/* 802E0CA0 002DC900 88 64 00 04 */ lbz r3, 4(r4)
/* 802E0CA4 002DC904 2C 03 00 00 */ cmpwi r3, 0
/* 802E0CA8 002DC908 41 82 00 3C */ beq lbl_802E0CE4
/* 802E0CAC 002DC90C 55 03 04 3F */ clrlwi. r3, r8, 0x10
/* 802E0CB0 002DC910 40 82 00 34 */ bne lbl_802E0CE4
/* 802E0CB4 002DC914 88 64 00 00 */ lbz r3, 0(r4)
/* 802E0CB8 002DC918 2C 03 00 00 */ cmpwi r3, 0
/* 802E0CBC 002DC91C 41 82 00 14 */ beq lbl_802E0CD0
/* 802E0CC0 002DC920 28 03 00 02 */ cmplwi r3, 2
/* 802E0CC4 002DC924 41 80 00 20 */ blt lbl_802E0CE4
/* 802E0CC8 002DC928 28 03 00 3D */ cmplwi r3, 0x3d
/* 802E0CCC 002DC92C 41 81 00 18 */ bgt lbl_802E0CE4
lbl_802E0CD0:
/* 802E0CD0 002DC930 7C 04 03 78 */ mr r4, r0
/* 802E0CD4 002DC934 38 60 00 03 */ li r3, 3
/* 802E0CD8 002DC938 48 00 09 69 */ bl rfc_check_fcs
/* 802E0CDC 002DC93C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E0CE0 002DC940 40 82 00 2C */ bne lbl_802E0D0C
lbl_802E0CE4:
/* 802E0CE4 002DC944 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0CE8 002DC948 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0CEC 002DC94C 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0CF0 002DC950 28 00 00 01 */ cmplwi r0, 1
/* 802E0CF4 002DC954 41 80 00 10 */ blt lbl_802E0D04
/* 802E0CF8 002DC958 38 9F 00 24 */ addi r4, r31, 0x24
/* 802E0CFC 002DC95C 3C 60 00 09 */ lis r3, 9
/* 802E0D00 002DC960 4B FD C2 11 */ bl LogMsg_0
lbl_802E0D04:
/* 802E0D04 002DC964 38 60 00 32 */ li r3, 0x32
/* 802E0D08 002DC968 48 00 02 C0 */ b lbl_802E0FC8
lbl_802E0D0C:
/* 802E0D0C 002DC96C 38 60 00 00 */ li r3, 0
/* 802E0D10 002DC970 48 00 02 B8 */ b lbl_802E0FC8
lbl_802E0D14:
/* 802E0D14 002DC974 88 C3 00 6D */ lbz r6, 0x6d(r3)
/* 802E0D18 002DC978 2C 06 00 00 */ cmpwi r6, 0
/* 802E0D1C 002DC97C 41 82 00 10 */ beq lbl_802E0D2C
/* 802E0D20 002DC980 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0D24 002DC984 2C 03 00 00 */ cmpwi r3, 0
/* 802E0D28 002DC988 41 82 00 5C */ beq lbl_802E0D84
lbl_802E0D2C:
/* 802E0D2C 002DC98C 2C 06 00 00 */ cmpwi r6, 0
/* 802E0D30 002DC990 40 82 00 10 */ bne lbl_802E0D40
/* 802E0D34 002DC994 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0D38 002DC998 2C 03 00 00 */ cmpwi r3, 0
/* 802E0D3C 002DC99C 40 82 00 48 */ bne lbl_802E0D84
lbl_802E0D40:
/* 802E0D40 002DC9A0 88 64 00 04 */ lbz r3, 4(r4)
/* 802E0D44 002DC9A4 2C 03 00 00 */ cmpwi r3, 0
/* 802E0D48 002DC9A8 41 82 00 3C */ beq lbl_802E0D84
/* 802E0D4C 002DC9AC 55 03 04 3F */ clrlwi. r3, r8, 0x10
/* 802E0D50 002DC9B0 40 82 00 34 */ bne lbl_802E0D84
/* 802E0D54 002DC9B4 88 64 00 00 */ lbz r3, 0(r4)
/* 802E0D58 002DC9B8 2C 03 00 00 */ cmpwi r3, 0
/* 802E0D5C 002DC9BC 41 82 00 14 */ beq lbl_802E0D70
/* 802E0D60 002DC9C0 28 03 00 02 */ cmplwi r3, 2
/* 802E0D64 002DC9C4 41 80 00 20 */ blt lbl_802E0D84
/* 802E0D68 002DC9C8 28 03 00 3D */ cmplwi r3, 0x3d
/* 802E0D6C 002DC9CC 41 81 00 18 */ bgt lbl_802E0D84
lbl_802E0D70:
/* 802E0D70 002DC9D0 7C 04 03 78 */ mr r4, r0
/* 802E0D74 002DC9D4 38 60 00 03 */ li r3, 3
/* 802E0D78 002DC9D8 48 00 08 C9 */ bl rfc_check_fcs
/* 802E0D7C 002DC9DC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E0D80 002DC9E0 40 82 00 2C */ bne lbl_802E0DAC
lbl_802E0D84:
/* 802E0D84 002DC9E4 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0D88 002DC9E8 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0D8C 002DC9EC 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0D90 002DC9F0 28 00 00 01 */ cmplwi r0, 1
/* 802E0D94 002DC9F4 41 80 00 10 */ blt lbl_802E0DA4
/* 802E0D98 002DC9F8 3C 60 00 09 */ lis r3, 9
/* 802E0D9C 002DC9FC 38 8D 8A 68 */ addi r4, r13, lbl_8063DD28-_SDA_BASE_
/* 802E0DA0 002DCA00 4B FD C1 71 */ bl LogMsg_0
lbl_802E0DA4:
/* 802E0DA4 002DCA04 38 60 00 32 */ li r3, 0x32
/* 802E0DA8 002DCA08 48 00 02 20 */ b lbl_802E0FC8
lbl_802E0DAC:
/* 802E0DAC 002DCA0C 38 60 00 01 */ li r3, 1
/* 802E0DB0 002DCA10 48 00 02 18 */ b lbl_802E0FC8
lbl_802E0DB4:
/* 802E0DB4 002DCA14 88 C3 00 6D */ lbz r6, 0x6d(r3)
/* 802E0DB8 002DCA18 2C 06 00 00 */ cmpwi r6, 0
/* 802E0DBC 002DCA1C 41 82 00 10 */ beq lbl_802E0DCC
/* 802E0DC0 002DCA20 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0DC4 002DCA24 2C 03 00 00 */ cmpwi r3, 0
/* 802E0DC8 002DCA28 41 82 00 50 */ beq lbl_802E0E18
lbl_802E0DCC:
/* 802E0DCC 002DCA2C 2C 06 00 00 */ cmpwi r6, 0
/* 802E0DD0 002DCA30 40 82 00 10 */ bne lbl_802E0DE0
/* 802E0DD4 002DCA34 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0DD8 002DCA38 2C 03 00 00 */ cmpwi r3, 0
/* 802E0DDC 002DCA3C 40 82 00 3C */ bne lbl_802E0E18
lbl_802E0DE0:
/* 802E0DE0 002DCA40 55 03 04 3F */ clrlwi. r3, r8, 0x10
/* 802E0DE4 002DCA44 40 82 00 34 */ bne lbl_802E0E18
/* 802E0DE8 002DCA48 88 64 00 00 */ lbz r3, 0(r4)
/* 802E0DEC 002DCA4C 2C 03 00 00 */ cmpwi r3, 0
/* 802E0DF0 002DCA50 41 82 00 14 */ beq lbl_802E0E04
/* 802E0DF4 002DCA54 28 03 00 02 */ cmplwi r3, 2
/* 802E0DF8 002DCA58 41 80 00 20 */ blt lbl_802E0E18
/* 802E0DFC 002DCA5C 28 03 00 3D */ cmplwi r3, 0x3d
/* 802E0E00 002DCA60 41 81 00 18 */ bgt lbl_802E0E18
lbl_802E0E04:
/* 802E0E04 002DCA64 7C 04 03 78 */ mr r4, r0
/* 802E0E08 002DCA68 38 60 00 03 */ li r3, 3
/* 802E0E0C 002DCA6C 48 00 08 35 */ bl rfc_check_fcs
/* 802E0E10 002DCA70 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E0E14 002DCA74 40 82 00 2C */ bne lbl_802E0E40
lbl_802E0E18:
/* 802E0E18 002DCA78 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0E1C 002DCA7C 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0E20 002DCA80 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0E24 002DCA84 28 00 00 01 */ cmplwi r0, 1
/* 802E0E28 002DCA88 41 80 00 10 */ blt lbl_802E0E38
/* 802E0E2C 002DCA8C 3C 60 00 09 */ lis r3, 9
/* 802E0E30 002DCA90 38 8D 8A 70 */ addi r4, r13, lbl_8063DD30-_SDA_BASE_
/* 802E0E34 002DCA94 4B FD C0 DD */ bl LogMsg_0
lbl_802E0E38:
/* 802E0E38 002DCA98 38 60 00 32 */ li r3, 0x32
/* 802E0E3C 002DCA9C 48 00 01 8C */ b lbl_802E0FC8
lbl_802E0E40:
/* 802E0E40 002DCAA0 38 60 00 02 */ li r3, 2
/* 802E0E44 002DCAA4 48 00 01 84 */ b lbl_802E0FC8
lbl_802E0E48:
/* 802E0E48 002DCAA8 88 C3 00 6D */ lbz r6, 0x6d(r3)
/* 802E0E4C 002DCAAC 2C 06 00 00 */ cmpwi r6, 0
/* 802E0E50 002DCAB0 41 82 00 10 */ beq lbl_802E0E60
/* 802E0E54 002DCAB4 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0E58 002DCAB8 2C 03 00 00 */ cmpwi r3, 0
/* 802E0E5C 002DCABC 40 82 00 5C */ bne lbl_802E0EB8
lbl_802E0E60:
/* 802E0E60 002DCAC0 2C 06 00 00 */ cmpwi r6, 0
/* 802E0E64 002DCAC4 40 82 00 10 */ bne lbl_802E0E74
/* 802E0E68 002DCAC8 88 64 00 02 */ lbz r3, 2(r4)
/* 802E0E6C 002DCACC 2C 03 00 00 */ cmpwi r3, 0
/* 802E0E70 002DCAD0 41 82 00 48 */ beq lbl_802E0EB8
lbl_802E0E74:
/* 802E0E74 002DCAD4 88 64 00 04 */ lbz r3, 4(r4)
/* 802E0E78 002DCAD8 2C 03 00 00 */ cmpwi r3, 0
/* 802E0E7C 002DCADC 41 82 00 3C */ beq lbl_802E0EB8
/* 802E0E80 002DCAE0 55 03 04 3F */ clrlwi. r3, r8, 0x10
/* 802E0E84 002DCAE4 40 82 00 34 */ bne lbl_802E0EB8
/* 802E0E88 002DCAE8 88 64 00 00 */ lbz r3, 0(r4)
/* 802E0E8C 002DCAEC 2C 03 00 00 */ cmpwi r3, 0
/* 802E0E90 002DCAF0 41 82 00 14 */ beq lbl_802E0EA4
/* 802E0E94 002DCAF4 28 03 00 02 */ cmplwi r3, 2
/* 802E0E98 002DCAF8 41 80 00 20 */ blt lbl_802E0EB8
/* 802E0E9C 002DCAFC 28 03 00 3D */ cmplwi r3, 0x3d
/* 802E0EA0 002DCB00 41 81 00 18 */ bgt lbl_802E0EB8
lbl_802E0EA4:
/* 802E0EA4 002DCB04 7C 04 03 78 */ mr r4, r0
/* 802E0EA8 002DCB08 38 60 00 03 */ li r3, 3
/* 802E0EAC 002DCB0C 48 00 07 95 */ bl rfc_check_fcs
/* 802E0EB0 002DCB10 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E0EB4 002DCB14 40 82 00 2C */ bne lbl_802E0EE0
lbl_802E0EB8:
/* 802E0EB8 002DCB18 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0EBC 002DCB1C 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0EC0 002DCB20 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0EC4 002DCB24 28 00 00 01 */ cmplwi r0, 1
/* 802E0EC8 002DCB28 41 80 00 10 */ blt lbl_802E0ED8
/* 802E0ECC 002DCB2C 38 9F 00 30 */ addi r4, r31, 0x30
/* 802E0ED0 002DCB30 3C 60 00 09 */ lis r3, 9
/* 802E0ED4 002DCB34 4B FD C0 3D */ bl LogMsg_0
lbl_802E0ED8:
/* 802E0ED8 002DCB38 38 60 00 32 */ li r3, 0x32
/* 802E0EDC 002DCB3C 48 00 00 EC */ b lbl_802E0FC8
lbl_802E0EE0:
/* 802E0EE0 002DCB40 38 60 00 03 */ li r3, 3
/* 802E0EE4 002DCB44 48 00 00 E4 */ b lbl_802E0FC8
lbl_802E0EE8:
/* 802E0EE8 002DCB48 88 64 00 00 */ lbz r3, 0(r4)
/* 802E0EEC 002DCB4C 2C 03 00 00 */ cmpwi r3, 0
/* 802E0EF0 002DCB50 41 82 00 3C */ beq lbl_802E0F2C
/* 802E0EF4 002DCB54 28 03 00 02 */ cmplwi r3, 2
/* 802E0EF8 002DCB58 41 80 00 0C */ blt lbl_802E0F04
/* 802E0EFC 002DCB5C 28 03 00 3D */ cmplwi r3, 0x3d
/* 802E0F00 002DCB60 40 81 00 2C */ ble lbl_802E0F2C
lbl_802E0F04:
/* 802E0F04 002DCB64 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0F08 002DCB68 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0F0C 002DCB6C 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0F10 002DCB70 28 00 00 01 */ cmplwi r0, 1
/* 802E0F14 002DCB74 41 80 00 10 */ blt lbl_802E0F24
/* 802E0F18 002DCB78 38 9F 00 3C */ addi r4, r31, 0x3c
/* 802E0F1C 002DCB7C 3C 60 00 09 */ lis r3, 9
/* 802E0F20 002DCB80 4B FD BF F1 */ bl LogMsg_0
lbl_802E0F24:
/* 802E0F24 002DCB84 38 60 00 32 */ li r3, 0x32
/* 802E0F28 002DCB88 48 00 00 A0 */ b lbl_802E0FC8
lbl_802E0F2C:
/* 802E0F2C 002DCB8C 7C 04 03 78 */ mr r4, r0
/* 802E0F30 002DCB90 38 60 00 02 */ li r3, 2
/* 802E0F34 002DCB94 48 00 07 0D */ bl rfc_check_fcs
/* 802E0F38 002DCB98 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E0F3C 002DCB9C 40 82 00 2C */ bne lbl_802E0F68
/* 802E0F40 002DCBA0 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0F44 002DCBA4 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0F48 002DCBA8 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0F4C 002DCBAC 28 00 00 01 */ cmplwi r0, 1
/* 802E0F50 002DCBB0 41 80 00 10 */ blt lbl_802E0F60
/* 802E0F54 002DCBB4 38 9F 00 54 */ addi r4, r31, 0x54
/* 802E0F58 002DCBB8 3C 60 00 09 */ lis r3, 9
/* 802E0F5C 002DCBBC 4B FD BF B5 */ bl LogMsg_0
lbl_802E0F60:
/* 802E0F60 002DCBC0 38 60 00 32 */ li r3, 0x32
/* 802E0F64 002DCBC4 48 00 00 64 */ b lbl_802E0FC8
lbl_802E0F68:
/* 802E0F68 002DCBC8 88 7D 00 6D */ lbz r3, 0x6d(r29)
/* 802E0F6C 002DCBCC 2C 03 00 00 */ cmpwi r3, 0
/* 802E0F70 002DCBD0 41 82 00 10 */ beq lbl_802E0F80
/* 802E0F74 002DCBD4 88 1E 00 02 */ lbz r0, 2(r30)
/* 802E0F78 002DCBD8 2C 00 00 00 */ cmpwi r0, 0
/* 802E0F7C 002DCBDC 40 82 00 18 */ bne lbl_802E0F94
lbl_802E0F80:
/* 802E0F80 002DCBE0 2C 03 00 00 */ cmpwi r3, 0
/* 802E0F84 002DCBE4 40 82 00 38 */ bne lbl_802E0FBC
/* 802E0F88 002DCBE8 88 1E 00 02 */ lbz r0, 2(r30)
/* 802E0F8C 002DCBEC 2C 00 00 00 */ cmpwi r0, 0
/* 802E0F90 002DCBF0 40 82 00 2C */ bne lbl_802E0FBC
lbl_802E0F94:
/* 802E0F94 002DCBF4 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E0F98 002DCBF8 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E0F9C 002DCBFC 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E0FA0 002DCC00 28 00 00 01 */ cmplwi r0, 1
/* 802E0FA4 002DCC04 41 80 00 10 */ blt lbl_802E0FB4
/* 802E0FA8 002DCC08 38 9F 00 64 */ addi r4, r31, 0x64
/* 802E0FAC 002DCC0C 3C 60 00 09 */ lis r3, 9
/* 802E0FB0 002DCC10 4B FD BF 61 */ bl LogMsg_0
lbl_802E0FB4:
/* 802E0FB4 002DCC14 38 60 00 04 */ li r3, 4
/* 802E0FB8 002DCC18 48 00 00 10 */ b lbl_802E0FC8
lbl_802E0FBC:
/* 802E0FBC 002DCC1C 38 60 00 04 */ li r3, 4
/* 802E0FC0 002DCC20 48 00 00 08 */ b lbl_802E0FC8
lbl_802E0FC4:
/* 802E0FC4 002DCC24 38 60 00 32 */ li r3, 0x32
lbl_802E0FC8:
/* 802E0FC8 002DCC28 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E0FCC 002DCC2C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802E0FD0 002DCC30 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802E0FD4 002DCC34 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802E0FD8 002DCC38 7C 08 03 A6 */ mtlr r0
/* 802E0FDC 002DCC3C 38 21 00 20 */ addi r1, r1, 0x20
/* 802E0FE0 002DCC40 4E 80 00 20 */ blr
.global rfc_process_mx_message
rfc_process_mx_message:
/* 802E0FE4 002DCC44 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E0FE8 002DCC48 7C 08 02 A6 */ mflr r0
/* 802E0FEC 002DCC4C 3C E0 80 44 */ lis r7, lbl_80444DF8@ha
/* 802E0FF0 002DCC50 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E0FF4 002DCC54 38 E7 4D F8 */ addi r7, r7, lbl_80444DF8@l
/* 802E0FF8 002DCC58 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802E0FFC 002DCC5C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802E1000 002DCC60 3F C0 80 57 */ lis r30, lbl_8056C428@ha
/* 802E1004 002DCC64 3B DE C4 28 */ addi r30, r30, lbl_8056C428@l
/* 802E1008 002DCC68 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802E100C 002DCC6C 7C 9D 23 78 */ mr r29, r4
/* 802E1010 002DCC70 93 81 00 10 */ stw r28, 0x10(r1)
/* 802E1014 002DCC74 7C 7C 1B 78 */ mr r28, r3
/* 802E1018 002DCC78 A0 04 00 04 */ lhz r0, 4(r4)
/* 802E101C 002DCC7C A0 C4 00 02 */ lhz r6, 2(r4)
/* 802E1020 002DCC80 7C A4 02 14 */ add r5, r4, r0
/* 802E1024 002DCC84 88 05 00 08 */ lbz r0, 8(r5)
/* 802E1028 002DCC88 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 802E102C 002DCC8C 98 1E 00 03 */ stb r0, 3(r30)
/* 802E1030 002DCC90 88 05 00 08 */ lbz r0, 8(r5)
/* 802E1034 002DCC94 54 1F FF FE */ rlwinm r31, r0, 0x1f, 0x1f, 0x1f
/* 802E1038 002DCC98 9B FE 00 02 */ stb r31, 2(r30)
/* 802E103C 002DCC9C 88 05 00 08 */ lbz r0, 8(r5)
/* 802E1040 002DCCA0 54 00 06 3A */ rlwinm r0, r0, 0, 0x18, 0x1d
/* 802E1044 002DCCA4 98 1E 00 01 */ stb r0, 1(r30)
/* 802E1048 002DCCA8 41 82 00 0C */ beq lbl_802E1054
/* 802E104C 002DCCAC 2C 06 00 00 */ cmpwi r6, 0
/* 802E1050 002DCCB0 40 82 00 34 */ bne lbl_802E1084
lbl_802E1054:
/* 802E1054 002DCCB4 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E1058 002DCCB8 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E105C 002DCCBC 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E1060 002DCCC0 28 00 00 01 */ cmplwi r0, 1
/* 802E1064 002DCCC4 41 80 00 14 */ blt lbl_802E1078
/* 802E1068 002DCCC8 88 BE 00 03 */ lbz r5, 3(r30)
/* 802E106C 002DCCCC 38 87 00 78 */ addi r4, r7, 0x78
/* 802E1070 002DCCD0 3C 60 00 09 */ lis r3, 9
/* 802E1074 002DCCD4 4B FD BE CD */ bl LogMsg_2
lbl_802E1078:
/* 802E1078 002DCCD8 7F A3 EB 78 */ mr r3, r29
/* 802E107C 002DCCDC 4B FD 8C B9 */ bl GKI_freebuf
/* 802E1080 002DCCE0 48 00 05 68 */ b lbl_802E15E8
lbl_802E1084:
/* 802E1084 002DCCE4 88 65 00 09 */ lbz r3, 9(r5)
/* 802E1088 002DCCE8 3C C6 00 01 */ addis r6, r6, 1
/* 802E108C 002DCCEC 38 A5 00 0A */ addi r5, r5, 0xa
/* 802E1090 002DCCF0 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 802E1094 002DCCF4 7C 68 0E 70 */ srawi r8, r3, 1
/* 802E1098 002DCCF8 38 C6 FF FE */ addi r6, r6, -2
/* 802E109C 002DCCFC 40 82 00 1C */ bne lbl_802E10B8
/* 802E10A0 002DCD00 88 05 00 00 */ lbz r0, 0(r5)
/* 802E10A4 002DCD04 38 C6 FF FF */ addi r6, r6, -1
/* 802E10A8 002DCD08 38 A5 00 01 */ addi r5, r5, 1
/* 802E10AC 002DCD0C 54 00 38 30 */ slwi r0, r0, 7
/* 802E10B0 002DCD10 7C 08 02 14 */ add r0, r8, r0
/* 802E10B4 002DCD14 54 08 06 3E */ clrlwi r8, r0, 0x18
lbl_802E10B8:
/* 802E10B8 002DCD18 55 00 06 3E */ clrlwi r0, r8, 0x18
/* 802E10BC 002DCD1C 54 C3 04 3E */ clrlwi r3, r6, 0x10
/* 802E10C0 002DCD20 7C 00 18 00 */ cmpw r0, r3
/* 802E10C4 002DCD24 41 82 00 30 */ beq lbl_802E10F4
/* 802E10C8 002DCD28 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E10CC 002DCD2C 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E10D0 002DCD30 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E10D4 002DCD34 28 00 00 01 */ cmplwi r0, 1
/* 802E10D8 002DCD38 41 80 00 10 */ blt lbl_802E10E8
/* 802E10DC 002DCD3C 38 87 00 98 */ addi r4, r7, 0x98
/* 802E10E0 002DCD40 3C 60 00 09 */ lis r3, 9
/* 802E10E4 002DCD44 4B FD BE 2D */ bl LogMsg_0
lbl_802E10E8:
/* 802E10E8 002DCD48 7F A3 EB 78 */ mr r3, r29
/* 802E10EC 002DCD4C 4B FD 8C 49 */ bl GKI_freebuf
/* 802E10F0 002DCD50 48 00 04 F8 */ b lbl_802E15E8
lbl_802E10F4:
/* 802E10F4 002DCD54 88 1E 00 01 */ lbz r0, 1(r30)
/* 802E10F8 002DCD58 2C 00 00 80 */ cmpwi r0, 0x80
/* 802E10FC 002DCD5C 41 82 00 5C */ beq lbl_802E1158
/* 802E1100 002DCD60 40 80 00 34 */ bge lbl_802E1134
/* 802E1104 002DCD64 2C 00 00 50 */ cmpwi r0, 0x50
/* 802E1108 002DCD68 41 82 03 DC */ beq lbl_802E14E4
/* 802E110C 002DCD6C 40 80 00 1C */ bge lbl_802E1128
/* 802E1110 002DCD70 2C 00 00 20 */ cmpwi r0, 0x20
/* 802E1114 002DCD74 41 82 01 18 */ beq lbl_802E122C
/* 802E1118 002DCD78 40 80 04 60 */ bge lbl_802E1578
/* 802E111C 002DCD7C 2C 00 00 10 */ cmpwi r0, 0x10
/* 802E1120 002DCD80 41 82 02 5C */ beq lbl_802E137C
/* 802E1124 002DCD84 48 00 04 54 */ b lbl_802E1578
lbl_802E1128:
/* 802E1128 002DCD88 2C 00 00 60 */ cmpwi r0, 0x60
/* 802E112C 002DCD8C 41 82 01 74 */ beq lbl_802E12A0
/* 802E1130 002DCD90 48 00 04 48 */ b lbl_802E1578
lbl_802E1134:
/* 802E1134 002DCD94 2C 00 00 A0 */ cmpwi r0, 0xa0
/* 802E1138 002DCD98 41 82 01 48 */ beq lbl_802E1280
/* 802E113C 002DCD9C 40 80 00 10 */ bge lbl_802E114C
/* 802E1140 002DCDA0 2C 00 00 90 */ cmpwi r0, 0x90
/* 802E1144 002DCDA4 41 82 02 88 */ beq lbl_802E13CC
/* 802E1148 002DCDA8 48 00 04 30 */ b lbl_802E1578
lbl_802E114C:
/* 802E114C 002DCDAC 2C 00 00 E0 */ cmpwi r0, 0xe0
/* 802E1150 002DCDB0 41 82 01 70 */ beq lbl_802E12C0
/* 802E1154 002DCDB4 48 00 04 24 */ b lbl_802E1578
lbl_802E1158:
/* 802E1158 002DCDB8 28 03 00 08 */ cmplwi r3, 8
/* 802E115C 002DCDBC 40 82 04 1C */ bne lbl_802E1578
/* 802E1160 002DCDC0 88 05 00 00 */ lbz r0, 0(r5)
/* 802E1164 002DCDC4 54 04 06 BF */ clrlwi. r4, r0, 0x1a
/* 802E1168 002DCDC8 98 9E 00 00 */ stb r4, 0(r30)
/* 802E116C 002DCDCC 88 05 00 01 */ lbz r0, 1(r5)
/* 802E1170 002DCDD0 54 00 07 3E */ clrlwi r0, r0, 0x1c
/* 802E1174 002DCDD4 98 1E 00 09 */ stb r0, 9(r30)
/* 802E1178 002DCDD8 88 05 00 01 */ lbz r0, 1(r5)
/* 802E117C 002DCDDC 54 00 06 36 */ rlwinm r0, r0, 0, 0x18, 0x1b
/* 802E1180 002DCDE0 98 1E 00 0A */ stb r0, 0xa(r30)
/* 802E1184 002DCDE4 88 05 00 02 */ lbz r0, 2(r5)
/* 802E1188 002DCDE8 54 00 06 BE */ clrlwi r0, r0, 0x1a
/* 802E118C 002DCDEC 98 1E 00 0B */ stb r0, 0xb(r30)
/* 802E1190 002DCDF0 88 05 00 03 */ lbz r0, 3(r5)
/* 802E1194 002DCDF4 98 1E 00 0C */ stb r0, 0xc(r30)
/* 802E1198 002DCDF8 88 05 00 05 */ lbz r0, 5(r5)
/* 802E119C 002DCDFC 88 65 00 04 */ lbz r3, 4(r5)
/* 802E11A0 002DCE00 54 00 40 2E */ slwi r0, r0, 8
/* 802E11A4 002DCE04 7C 03 02 14 */ add r0, r3, r0
/* 802E11A8 002DCE08 B0 1E 00 0E */ sth r0, 0xe(r30)
/* 802E11AC 002DCE0C 88 05 00 06 */ lbz r0, 6(r5)
/* 802E11B0 002DCE10 98 1E 00 10 */ stb r0, 0x10(r30)
/* 802E11B4 002DCE14 88 05 00 07 */ lbz r0, 7(r5)
/* 802E11B8 002DCE18 54 00 07 7E */ clrlwi r0, r0, 0x1d
/* 802E11BC 002DCE1C 98 1E 00 11 */ stb r0, 0x11(r30)
/* 802E11C0 002DCE20 41 82 00 2C */ beq lbl_802E11EC
/* 802E11C4 002DCE24 41 82 00 14 */ beq lbl_802E11D8
/* 802E11C8 002DCE28 28 04 00 02 */ cmplwi r4, 2
/* 802E11CC 002DCE2C 41 80 00 20 */ blt lbl_802E11EC
/* 802E11D0 002DCE30 28 04 00 3D */ cmplwi r4, 0x3d
/* 802E11D4 002DCE34 41 81 00 18 */ bgt lbl_802E11EC
lbl_802E11D8:
/* 802E11D8 002DCE38 A0 1E 00 0E */ lhz r0, 0xe(r30)
/* 802E11DC 002DCE3C 28 00 00 17 */ cmplwi r0, 0x17
/* 802E11E0 002DCE40 41 80 00 0C */ blt lbl_802E11EC
/* 802E11E4 002DCE44 28 00 7F FF */ cmplwi r0, 0x7fff
/* 802E11E8 002DCE48 40 81 00 28 */ ble lbl_802E1210
lbl_802E11EC:
/* 802E11EC 002DCE4C 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E11F0 002DCE50 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E11F4 002DCE54 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E11F8 002DCE58 28 00 00 01 */ cmplwi r0, 1
/* 802E11FC 002DCE5C 41 80 03 7C */ blt lbl_802E1578
/* 802E1200 002DCE60 38 87 00 A8 */ addi r4, r7, 0xa8
/* 802E1204 002DCE64 3C 60 00 09 */ lis r3, 9
/* 802E1208 002DCE68 4B FD BD 09 */ bl LogMsg_0
/* 802E120C 002DCE6C 48 00 03 6C */ b lbl_802E1578
lbl_802E1210:
/* 802E1210 002DCE70 7F A3 EB 78 */ mr r3, r29
/* 802E1214 002DCE74 4B FD 8B 21 */ bl GKI_freebuf
/* 802E1218 002DCE78 7F 83 E3 78 */ mr r3, r28
/* 802E121C 002DCE7C 7F E4 FB 78 */ mr r4, r31
/* 802E1220 002DCE80 7F C5 F3 78 */ mr r5, r30
/* 802E1224 002DCE84 4B FF E0 85 */ bl rfc_process_pn
/* 802E1228 002DCE88 48 00 03 C0 */ b lbl_802E15E8
lbl_802E122C:
/* 802E122C 002DCE8C 2C 03 00 00 */ cmpwi r3, 0
/* 802E1230 002DCE90 41 82 03 48 */ beq lbl_802E1578
/* 802E1234 002DCE94 90 BE 00 08 */ stw r5, 8(r30)
/* 802E1238 002DCE98 2C 1F 00 00 */ cmpwi r31, 0
/* 802E123C 002DCE9C B0 DE 00 0C */ sth r6, 0xc(r30)
/* 802E1240 002DCEA0 A0 A4 00 04 */ lhz r5, 4(r4)
/* 802E1244 002DCEA4 A0 64 00 02 */ lhz r3, 2(r4)
/* 802E1248 002DCEA8 38 A5 00 02 */ addi r5, r5, 2
/* 802E124C 002DCEAC 38 03 FF FE */ addi r0, r3, -2
/* 802E1250 002DCEB0 B0 A4 00 04 */ sth r5, 4(r4)
/* 802E1254 002DCEB4 B0 04 00 02 */ sth r0, 2(r4)
/* 802E1258 002DCEB8 41 82 00 18 */ beq lbl_802E1270
/* 802E125C 002DCEBC 7F 83 E3 78 */ mr r3, r28
/* 802E1260 002DCEC0 7F A5 EB 78 */ mr r5, r29
/* 802E1264 002DCEC4 38 80 00 00 */ li r4, 0
/* 802E1268 002DCEC8 4B FF F6 A1 */ bl rfc_send_test
/* 802E126C 002DCECC 48 00 03 7C */ b lbl_802E15E8
lbl_802E1270:
/* 802E1270 002DCED0 7F 83 E3 78 */ mr r3, r28
/* 802E1274 002DCED4 7F A4 EB 78 */ mr r4, r29
/* 802E1278 002DCED8 4B FF E6 21 */ bl rfc_process_test_rsp
/* 802E127C 002DCEDC 48 00 03 6C */ b lbl_802E15E8
lbl_802E1280:
/* 802E1280 002DCEE0 2C 03 00 00 */ cmpwi r3, 0
/* 802E1284 002DCEE4 40 82 02 F4 */ bne lbl_802E1578
/* 802E1288 002DCEE8 7F A3 EB 78 */ mr r3, r29
/* 802E128C 002DCEEC 4B FD 8A A9 */ bl GKI_freebuf
/* 802E1290 002DCEF0 7F 83 E3 78 */ mr r3, r28
/* 802E1294 002DCEF4 7F E4 FB 78 */ mr r4, r31
/* 802E1298 002DCEF8 4B FF E6 09 */ bl rfc_process_fcon
/* 802E129C 002DCEFC 48 00 03 4C */ b lbl_802E15E8
lbl_802E12A0:
/* 802E12A0 002DCF00 2C 03 00 00 */ cmpwi r3, 0
/* 802E12A4 002DCF04 40 82 02 D4 */ bne lbl_802E1578
/* 802E12A8 002DCF08 7F A3 EB 78 */ mr r3, r29
/* 802E12AC 002DCF0C 4B FD 8A 89 */ bl GKI_freebuf
/* 802E12B0 002DCF10 7F 83 E3 78 */ mr r3, r28
/* 802E12B4 002DCF14 7F E4 FB 78 */ mr r4, r31
/* 802E12B8 002DCF18 4B FF E6 4D */ bl rfc_process_fcoff
/* 802E12BC 002DCF1C 48 00 03 2C */ b lbl_802E15E8
lbl_802E12C0:
/* 802E12C0 002DCF20 88 85 00 00 */ lbz r4, 0(r5)
/* 802E12C4 002DCF24 54 83 07 BC */ rlwinm r3, r4, 0, 0x1e, 0x1e
/* 802E12C8 002DCF28 54 80 07 FF */ clrlwi. r0, r4, 0x1f
/* 802E12CC 002DCF2C 7C 60 0E 70 */ srawi r0, r3, 1
/* 802E12D0 002DCF30 7C 83 16 70 */ srawi r3, r4, 2
/* 802E12D4 002DCF34 98 7E 00 00 */ stb r3, 0(r30)
/* 802E12D8 002DCF38 41 82 00 28 */ beq lbl_802E1300
/* 802E12DC 002DCF3C 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 802E12E0 002DCF40 41 82 00 20 */ beq lbl_802E1300
/* 802E12E4 002DCF44 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E12E8 002DCF48 41 82 00 18 */ beq lbl_802E1300
/* 802E12EC 002DCF4C 41 82 00 38 */ beq lbl_802E1324
/* 802E12F0 002DCF50 28 00 00 02 */ cmplwi r0, 2
/* 802E12F4 002DCF54 41 80 00 0C */ blt lbl_802E1300
/* 802E12F8 002DCF58 28 00 00 3D */ cmplwi r0, 0x3d
/* 802E12FC 002DCF5C 40 81 00 28 */ ble lbl_802E1324
lbl_802E1300:
/* 802E1300 002DCF60 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E1304 002DCF64 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E1308 002DCF68 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E130C 002DCF6C 28 00 00 01 */ cmplwi r0, 1
/* 802E1310 002DCF70 41 80 02 68 */ blt lbl_802E1578
/* 802E1314 002DCF74 38 87 00 B8 */ addi r4, r7, 0xb8
/* 802E1318 002DCF78 3C 60 00 09 */ lis r3, 9
/* 802E131C 002DCF7C 4B FD BB F5 */ bl LogMsg_0
/* 802E1320 002DCF80 48 00 02 58 */ b lbl_802E1578
lbl_802E1324:
/* 802E1324 002DCF84 55 00 06 3E */ clrlwi r0, r8, 0x18
/* 802E1328 002DCF88 88 65 00 01 */ lbz r3, 1(r5)
/* 802E132C 002DCF8C 28 00 00 03 */ cmplwi r0, 3
/* 802E1330 002DCF90 98 7E 00 09 */ stb r3, 9(r30)
/* 802E1334 002DCF94 40 82 00 20 */ bne lbl_802E1354
/* 802E1338 002DCF98 88 05 00 02 */ lbz r0, 2(r5)
/* 802E133C 002DCF9C 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e
/* 802E1340 002DCFA0 98 1E 00 0A */ stb r0, 0xa(r30)
/* 802E1344 002DCFA4 88 05 00 02 */ lbz r0, 2(r5)
/* 802E1348 002DCFA8 54 00 E7 3E */ rlwinm r0, r0, 0x1c, 0x1c, 0x1f
/* 802E134C 002DCFAC 98 1E 00 0B */ stb r0, 0xb(r30)
/* 802E1350 002DCFB0 48 00 00 10 */ b lbl_802E1360
lbl_802E1354:
/* 802E1354 002DCFB4 38 00 00 00 */ li r0, 0
/* 802E1358 002DCFB8 98 1E 00 0A */ stb r0, 0xa(r30)
/* 802E135C 002DCFBC 98 1E 00 0B */ stb r0, 0xb(r30)
lbl_802E1360:
/* 802E1360 002DCFC0 7F A3 EB 78 */ mr r3, r29
/* 802E1364 002DCFC4 4B FD 89 D1 */ bl GKI_freebuf
/* 802E1368 002DCFC8 7F 83 E3 78 */ mr r3, r28
/* 802E136C 002DCFCC 7F E4 FB 78 */ mr r4, r31
/* 802E1370 002DCFD0 7F C5 F3 78 */ mr r5, r30
/* 802E1374 002DCFD4 4B FF E3 29 */ bl rfc_process_msc
/* 802E1378 002DCFD8 48 00 02 70 */ b lbl_802E15E8
lbl_802E137C:
/* 802E137C 002DCFDC 28 03 00 01 */ cmplwi r3, 1
/* 802E1380 002DCFE0 40 82 01 F8 */ bne lbl_802E1578
/* 802E1384 002DCFE4 2C 1F 00 00 */ cmpwi r31, 0
/* 802E1388 002DCFE8 41 82 01 F0 */ beq lbl_802E1578
/* 802E138C 002DCFEC 88 05 00 00 */ lbz r0, 0(r5)
/* 802E1390 002DCFF0 7F A3 EB 78 */ mr r3, r29
/* 802E1394 002DCFF4 54 00 07 FE */ clrlwi r0, r0, 0x1f
/* 802E1398 002DCFF8 98 1E 00 08 */ stb r0, 8(r30)
/* 802E139C 002DCFFC 88 05 00 00 */ lbz r0, 0(r5)
/* 802E13A0 002DD000 54 00 07 BC */ rlwinm r0, r0, 0, 0x1e, 0x1e
/* 802E13A4 002DD004 7C 00 0E 70 */ srawi r0, r0, 1
/* 802E13A8 002DD008 98 1E 00 09 */ stb r0, 9(r30)
/* 802E13AC 002DD00C 88 05 00 00 */ lbz r0, 0(r5)
/* 802E13B0 002DD010 7C 00 16 70 */ srawi r0, r0, 2
/* 802E13B4 002DD014 98 1E 00 0A */ stb r0, 0xa(r30)
/* 802E13B8 002DD018 4B FD 89 7D */ bl GKI_freebuf
/* 802E13BC 002DD01C 7F 83 E3 78 */ mr r3, r28
/* 802E13C0 002DD020 7F C4 F3 78 */ mr r4, r30
/* 802E13C4 002DD024 4B FF E4 D1 */ bl rfc_process_nsc
/* 802E13C8 002DD028 48 00 02 20 */ b lbl_802E15E8
lbl_802E13CC:
/* 802E13CC 002DD02C 28 03 00 01 */ cmplwi r3, 1
/* 802E13D0 002DD030 41 82 00 0C */ beq lbl_802E13DC
/* 802E13D4 002DD034 28 03 00 08 */ cmplwi r3, 8
/* 802E13D8 002DD038 40 82 01 A0 */ bne lbl_802E1578
lbl_802E13DC:
/* 802E13DC 002DD03C 88 85 00 00 */ lbz r4, 0(r5)
/* 802E13E0 002DD040 54 83 07 BC */ rlwinm r3, r4, 0, 0x1e, 0x1e
/* 802E13E4 002DD044 54 80 07 FF */ clrlwi. r0, r4, 0x1f
/* 802E13E8 002DD048 7C 60 0E 70 */ srawi r0, r3, 1
/* 802E13EC 002DD04C 7C 83 16 70 */ srawi r3, r4, 2
/* 802E13F0 002DD050 98 7E 00 00 */ stb r3, 0(r30)
/* 802E13F4 002DD054 41 82 00 28 */ beq lbl_802E141C
/* 802E13F8 002DD058 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 802E13FC 002DD05C 41 82 00 20 */ beq lbl_802E141C
/* 802E1400 002DD060 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E1404 002DD064 41 82 00 18 */ beq lbl_802E141C
/* 802E1408 002DD068 41 82 00 38 */ beq lbl_802E1440
/* 802E140C 002DD06C 28 00 00 02 */ cmplwi r0, 2
/* 802E1410 002DD070 41 80 00 0C */ blt lbl_802E141C
/* 802E1414 002DD074 28 00 00 3D */ cmplwi r0, 0x3d
/* 802E1418 002DD078 40 81 00 28 */ ble lbl_802E1440
lbl_802E141C:
/* 802E141C 002DD07C 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E1420 002DD080 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E1424 002DD084 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E1428 002DD088 28 00 00 01 */ cmplwi r0, 1
/* 802E142C 002DD08C 41 80 01 4C */ blt lbl_802E1578
/* 802E1430 002DD090 38 87 00 C8 */ addi r4, r7, 0xc8
/* 802E1434 002DD094 3C 60 00 09 */ lis r3, 9
/* 802E1438 002DD098 4B FD BA D9 */ bl LogMsg_0
/* 802E143C 002DD09C 48 00 01 3C */ b lbl_802E1578
lbl_802E1440:
/* 802E1440 002DD0A0 54 C3 04 3E */ clrlwi r3, r6, 0x10
/* 802E1444 002DD0A4 38 03 FF FF */ addi r0, r3, -1
/* 802E1448 002DD0A8 7C 00 00 34 */ cntlzw r0, r0
/* 802E144C 002DD0AC 54 00 DE 3F */ rlwinm. r0, r0, 0x1b, 0x18, 0x1f
/* 802E1450 002DD0B0 98 1E 00 09 */ stb r0, 9(r30)
/* 802E1454 002DD0B4 40 82 00 70 */ bne lbl_802E14C4
/* 802E1458 002DD0B8 88 05 00 01 */ lbz r0, 1(r5)
/* 802E145C 002DD0BC 98 1E 00 0A */ stb r0, 0xa(r30)
/* 802E1460 002DD0C0 88 05 00 02 */ lbz r0, 2(r5)
/* 802E1464 002DD0C4 54 00 07 BE */ clrlwi r0, r0, 0x1e
/* 802E1468 002DD0C8 98 1E 00 0B */ stb r0, 0xb(r30)
/* 802E146C 002DD0CC 88 05 00 02 */ lbz r0, 2(r5)
/* 802E1470 002DD0D0 54 00 F7 FE */ rlwinm r0, r0, 0x1e, 0x1f, 0x1f
/* 802E1474 002DD0D4 98 1E 00 0C */ stb r0, 0xc(r30)
/* 802E1478 002DD0D8 88 05 00 02 */ lbz r0, 2(r5)
/* 802E147C 002DD0DC 54 00 EF FE */ rlwinm r0, r0, 0x1d, 0x1f, 0x1f
/* 802E1480 002DD0E0 98 1E 00 0D */ stb r0, 0xd(r30)
/* 802E1484 002DD0E4 88 05 00 02 */ lbz r0, 2(r5)
/* 802E1488 002DD0E8 54 00 E7 BE */ rlwinm r0, r0, 0x1c, 0x1e, 0x1f
/* 802E148C 002DD0EC 98 1E 00 0E */ stb r0, 0xe(r30)
/* 802E1490 002DD0F0 88 05 00 03 */ lbz r0, 3(r5)
/* 802E1494 002DD0F4 54 00 06 BE */ clrlwi r0, r0, 0x1a
/* 802E1498 002DD0F8 98 1E 00 0F */ stb r0, 0xf(r30)
/* 802E149C 002DD0FC 88 05 00 04 */ lbz r0, 4(r5)
/* 802E14A0 002DD100 98 1E 00 10 */ stb r0, 0x10(r30)
/* 802E14A4 002DD104 88 05 00 05 */ lbz r0, 5(r5)
/* 802E14A8 002DD108 98 1E 00 11 */ stb r0, 0x11(r30)
/* 802E14AC 002DD10C 88 05 00 07 */ lbz r0, 7(r5)
/* 802E14B0 002DD110 88 65 00 06 */ lbz r3, 6(r5)
/* 802E14B4 002DD114 54 00 40 2E */ slwi r0, r0, 8
/* 802E14B8 002DD118 7C 03 02 14 */ add r0, r3, r0
/* 802E14BC 002DD11C 70 00 3F 7F */ andi. r0, r0, 0x3f7f
/* 802E14C0 002DD120 B0 1E 00 12 */ sth r0, 0x12(r30)
lbl_802E14C4:
/* 802E14C4 002DD124 7F A3 EB 78 */ mr r3, r29
/* 802E14C8 002DD128 4B FD 88 6D */ bl GKI_freebuf
/* 802E14CC 002DD12C 88 BE 00 09 */ lbz r5, 9(r30)
/* 802E14D0 002DD130 7F 83 E3 78 */ mr r3, r28
/* 802E14D4 002DD134 7F E4 FB 78 */ mr r4, r31
/* 802E14D8 002DD138 7F C6 F3 78 */ mr r6, r30
/* 802E14DC 002DD13C 4B FF DE B5 */ bl rfc_process_rpn
/* 802E14E0 002DD140 48 00 01 08 */ b lbl_802E15E8
lbl_802E14E4:
/* 802E14E4 002DD144 28 03 00 02 */ cmplwi r3, 2
/* 802E14E8 002DD148 40 82 00 90 */ bne lbl_802E1578
/* 802E14EC 002DD14C 88 C5 00 00 */ lbz r6, 0(r5)
/* 802E14F0 002DD150 54 C3 07 BC */ rlwinm r3, r6, 0, 0x1e, 0x1e
/* 802E14F4 002DD154 54 C0 07 FF */ clrlwi. r0, r6, 0x1f
/* 802E14F8 002DD158 7C 64 0E 70 */ srawi r4, r3, 1
/* 802E14FC 002DD15C 7C C3 16 70 */ srawi r3, r6, 2
/* 802E1500 002DD160 98 7E 00 00 */ stb r3, 0(r30)
/* 802E1504 002DD164 88 05 00 01 */ lbz r0, 1(r5)
/* 802E1508 002DD168 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e
/* 802E150C 002DD16C 98 1E 00 09 */ stb r0, 9(r30)
/* 802E1510 002DD170 41 82 00 28 */ beq lbl_802E1538
/* 802E1514 002DD174 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802E1518 002DD178 41 82 00 20 */ beq lbl_802E1538
/* 802E151C 002DD17C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E1520 002DD180 41 82 00 18 */ beq lbl_802E1538
/* 802E1524 002DD184 41 82 00 38 */ beq lbl_802E155C
/* 802E1528 002DD188 28 00 00 02 */ cmplwi r0, 2
/* 802E152C 002DD18C 41 80 00 0C */ blt lbl_802E1538
/* 802E1530 002DD190 28 00 00 3D */ cmplwi r0, 0x3d
/* 802E1534 002DD194 40 81 00 28 */ ble lbl_802E155C
lbl_802E1538:
/* 802E1538 002DD198 3C 60 80 57 */ lis r3, lbl_8056C428@ha
/* 802E153C 002DD19C 38 63 C4 28 */ addi r3, r3, lbl_8056C428@l
/* 802E1540 002DD1A0 88 03 04 14 */ lbz r0, 0x414(r3)
/* 802E1544 002DD1A4 28 00 00 01 */ cmplwi r0, 1
/* 802E1548 002DD1A8 41 80 00 30 */ blt lbl_802E1578
/* 802E154C 002DD1AC 38 87 00 C8 */ addi r4, r7, 0xc8
/* 802E1550 002DD1B0 3C 60 00 09 */ lis r3, 9
/* 802E1554 002DD1B4 4B FD B9 BD */ bl LogMsg_0
/* 802E1558 002DD1B8 48 00 00 20 */ b lbl_802E1578
lbl_802E155C:
/* 802E155C 002DD1BC 7F A3 EB 78 */ mr r3, r29
/* 802E1560 002DD1C0 4B FD 87 D5 */ bl GKI_freebuf
/* 802E1564 002DD1C4 7F 83 E3 78 */ mr r3, r28
/* 802E1568 002DD1C8 7F E4 FB 78 */ mr r4, r31
/* 802E156C 002DD1CC 7F C5 F3 78 */ mr r5, r30
/* 802E1570 002DD1D0 4B FF E2 99 */ bl rfc_process_rls
/* 802E1574 002DD1D4 48 00 00 74 */ b lbl_802E15E8
lbl_802E1578:
/* 802E1578 002DD1D8 7F A3 EB 78 */ mr r3, r29
/* 802E157C 002DD1DC 4B FD 87 B9 */ bl GKI_freebuf
/* 802E1580 002DD1E0 2C 1F 00 00 */ cmpwi r31, 0
/* 802E1584 002DD1E4 41 82 00 64 */ beq lbl_802E15E8
/* 802E1588 002DD1E8 38 60 00 02 */ li r3, 2
/* 802E158C 002DD1EC 4B FD 86 C1 */ bl GKI_getpoolbuf
/* 802E1590 002DD1F0 2C 03 00 00 */ cmpwi r3, 0
/* 802E1594 002DD1F4 41 82 00 54 */ beq lbl_802E15E8
/* 802E1598 002DD1F8 38 00 00 0C */ li r0, 0xc
/* 802E159C 002DD1FC 3C E0 80 57 */ lis r7, lbl_8056C428@ha
/* 802E15A0 002DD200 B0 03 00 04 */ sth r0, 4(r3)
/* 802E15A4 002DD204 38 00 00 11 */ li r0, 0x11
/* 802E15A8 002DD208 39 00 00 03 */ li r8, 3
/* 802E15AC 002DD20C 38 E7 C4 28 */ addi r7, r7, lbl_8056C428@l
/* 802E15B0 002DD210 98 03 00 14 */ stb r0, 0x14(r3)
/* 802E15B4 002DD214 7C 65 1B 78 */ mr r5, r3
/* 802E15B8 002DD218 38 80 00 00 */ li r4, 0
/* 802E15BC 002DD21C 99 03 00 15 */ stb r8, 0x15(r3)
/* 802E15C0 002DD220 88 07 00 02 */ lbz r0, 2(r7)
/* 802E15C4 002DD224 88 C7 00 03 */ lbz r6, 3(r7)
/* 802E15C8 002DD228 54 00 08 3C */ slwi r0, r0, 1
/* 802E15CC 002DD22C 88 E7 00 01 */ lbz r7, 1(r7)
/* 802E15D0 002DD230 7C C0 03 78 */ or r0, r6, r0
/* 802E15D4 002DD234 7C E0 03 78 */ or r0, r7, r0
/* 802E15D8 002DD238 98 03 00 16 */ stb r0, 0x16(r3)
/* 802E15DC 002DD23C B1 03 00 02 */ sth r8, 2(r3)
/* 802E15E0 002DD240 7F 83 E3 78 */ mr r3, r28
/* 802E15E4 002DD244 4B FF EC B1 */ bl rfc_send_buf_uih
lbl_802E15E8:
/* 802E15E8 002DD248 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E15EC 002DD24C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802E15F0 002DD250 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802E15F4 002DD254 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802E15F8 002DD258 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802E15FC 002DD25C 7C 08 03 A6 */ mtlr r0
/* 802E1600 002DD260 38 21 00 20 */ addi r1, r1, 0x20
/* 802E1604 002DD264 4E 80 00 20 */ blr
|