1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
noAlloc:
/* 802A5B84 002A17E4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A5B88 002A17E8 7C 08 02 A6 */ mflr r0
/* 802A5B8C 002A17EC 3C 60 80 44 */ lis r3, lbl_8043C004@ha
/* 802A5B90 002A17F0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A5B94 002A17F4 38 63 C0 04 */ addi r3, r3, lbl_8043C004@l
/* 802A5B98 002A17F8 4C C6 31 82 */ crclr 6
/* 802A5B9C 002A17FC 48 00 DC C5 */ bl DEBUGPrint
/* 802A5BA0 002A1800 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A5BA4 002A1804 38 60 00 00 */ li r3, 0
/* 802A5BA8 002A1808 7C 08 03 A6 */ mtlr r0
/* 802A5BAC 002A180C 38 21 00 10 */ addi r1, r1, 0x10
/* 802A5BB0 002A1810 4E 80 00 20 */ blr
noFree:
/* 802A5BB4 002A1814 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A5BB8 002A1818 7C 08 02 A6 */ mflr r0
/* 802A5BBC 002A181C 3C 60 80 44 */ lis r3, lbl_8043C020@ha
/* 802A5BC0 002A1820 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A5BC4 002A1824 38 63 C0 20 */ addi r3, r3, lbl_8043C020@l
/* 802A5BC8 002A1828 4C C6 31 82 */ crclr 6
/* 802A5BCC 002A182C 48 00 DC 95 */ bl DEBUGPrint
/* 802A5BD0 002A1830 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A5BD4 002A1834 38 60 00 00 */ li r3, 0
/* 802A5BD8 002A1838 7C 08 03 A6 */ mtlr r0
/* 802A5BDC 002A183C 38 21 00 10 */ addi r1, r1, 0x10
/* 802A5BE0 002A1840 4E 80 00 20 */ blr
OnShutdown:
/* 802A5BE4 002A1844 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A5BE8 002A1848 7C 08 02 A6 */ mflr r0
/* 802A5BEC 002A184C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A5BF0 002A1850 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A5BF4 002A1854 7C 7F 1B 78 */ mr r31, r3
/* 802A5BF8 002A1858 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A5BFC 002A185C 7C 9E 23 78 */ mr r30, r4
/* 802A5C00 002A1860 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A5C04 002A1864 3B A0 00 00 */ li r29, 0
/* 802A5C08 002A1868 48 01 0D 89 */ bl WUDGetStatus
/* 802A5C0C 002A186C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A5C10 002A1870 40 82 01 74 */ bne lbl_802A5D84
/* 802A5C14 002A1874 2C 03 00 03 */ cmpwi r3, 3
/* 802A5C18 002A1878 40 82 01 2C */ bne lbl_802A5D44
/* 802A5C1C 002A187C 2C 1E 00 01 */ cmpwi r30, 1
/* 802A5C20 002A1880 41 82 00 D4 */ beq lbl_802A5CF4
/* 802A5C24 002A1884 40 80 00 10 */ bge lbl_802A5C34
/* 802A5C28 002A1888 2C 1E 00 00 */ cmpwi r30, 0
/* 802A5C2C 002A188C 40 80 00 1C */ bge lbl_802A5C48
/* 802A5C30 002A1890 48 00 01 58 */ b lbl_802A5D88
lbl_802A5C34:
/* 802A5C34 002A1894 2C 1E 00 07 */ cmpwi r30, 7
/* 802A5C38 002A1898 40 80 01 50 */ bge lbl_802A5D88
/* 802A5C3C 002A189C 2C 1E 00 04 */ cmpwi r30, 4
/* 802A5C40 002A18A0 40 80 00 B4 */ bge lbl_802A5CF4
/* 802A5C44 002A18A4 48 00 00 28 */ b lbl_802A5C6C
lbl_802A5C48:
/* 802A5C48 002A18A8 3C 60 80 44 */ lis r3, lbl_8043C03C@ha
/* 802A5C4C 002A18AC 38 63 C0 3C */ addi r3, r3, lbl_8043C03C@l
/* 802A5C50 002A18B0 4C C6 31 82 */ crclr 6
/* 802A5C54 002A18B4 48 00 DC 0D */ bl DEBUGPrint
/* 802A5C58 002A18B8 3C 60 80 2A */ lis r3, noAlloc@ha
/* 802A5C5C 002A18BC 3C 80 80 2A */ lis r4, noFree@ha
/* 802A5C60 002A18C0 38 63 5B 84 */ addi r3, r3, noAlloc@l
/* 802A5C64 002A18C4 38 84 5B B4 */ addi r4, r4, noFree@l
/* 802A5C68 002A18C8 48 01 0B 51 */ bl WUDRegisterAllocator
lbl_802A5C6C:
/* 802A5C6C 002A18CC 4B FC 8A F1 */ bl OSDisableInterrupts
/* 802A5C70 002A18D0 88 0D AE 4D */ lbz r0, lbl_8064010D-_SDA_BASE_(r13)
/* 802A5C74 002A18D4 7C 7E 1B 78 */ mr r30, r3
/* 802A5C78 002A18D8 2C 00 00 00 */ cmpwi r0, 0
/* 802A5C7C 002A18DC 41 82 00 0C */ beq lbl_802A5C88
/* 802A5C80 002A18E0 4B FC 8B 05 */ bl OSRestoreInterrupts
/* 802A5C84 002A18E4 48 00 00 68 */ b lbl_802A5CEC
lbl_802A5C88:
/* 802A5C88 002A18E8 38 00 00 01 */ li r0, 1
/* 802A5C8C 002A18EC 38 60 00 00 */ li r3, 0
/* 802A5C90 002A18F0 98 0D AE 4D */ stb r0, lbl_8064010D-_SDA_BASE_(r13)
/* 802A5C94 002A18F4 38 80 00 00 */ li r4, 0
/* 802A5C98 002A18F8 48 01 12 41 */ bl WUDSetVisibility
/* 802A5C9C 002A18FC 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
/* 802A5CA0 002A1900 3B E0 00 0A */ li r31, 0xa
/* 802A5CA4 002A1904 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
/* 802A5CA8 002A1908 3B A3 02 BD */ addi r29, r3, 0x2bd
lbl_802A5CAC:
/* 802A5CAC 002A190C 7F A3 EB 78 */ mr r3, r29
/* 802A5CB0 002A1910 38 80 00 00 */ li r4, 0
/* 802A5CB4 002A1914 38 A0 00 46 */ li r5, 0x46
/* 802A5CB8 002A1918 4B D5 E4 4D */ bl memset
/* 802A5CBC 002A191C 3B FF 00 01 */ addi r31, r31, 1
/* 802A5CC0 002A1920 3B BD 00 46 */ addi r29, r29, 0x46
/* 802A5CC4 002A1924 2C 1F 00 0E */ cmpwi r31, 0xe
/* 802A5CC8 002A1928 41 80 FF E4 */ blt lbl_802A5CAC
/* 802A5CCC 002A192C 3C 60 80 53 */ lis r3, lbl_80536D40@ha
/* 802A5CD0 002A1930 38 63 6D 40 */ addi r3, r3, lbl_80536D40@l
/* 802A5CD4 002A1934 4B FC 3D A5 */ bl OSCancelAlarm
/* 802A5CD8 002A1938 38 60 00 00 */ li r3, 0
/* 802A5CDC 002A193C 48 01 11 45 */ bl WUDSetHidRecvCallback
/* 802A5CE0 002A1940 48 01 0B 25 */ bl WUDShutdown
/* 802A5CE4 002A1944 7F C3 F3 78 */ mr r3, r30
/* 802A5CE8 002A1948 4B FC 8A 9D */ bl OSRestoreInterrupts
lbl_802A5CEC:
/* 802A5CEC 002A194C 3B A0 00 00 */ li r29, 0
/* 802A5CF0 002A1950 48 00 00 98 */ b lbl_802A5D88
lbl_802A5CF4:
/* 802A5CF4 002A1954 4B FC 8A 69 */ bl OSDisableInterrupts
/* 802A5CF8 002A1958 88 0D AE 4D */ lbz r0, lbl_8064010D-_SDA_BASE_(r13)
/* 802A5CFC 002A195C 7C 7E 1B 78 */ mr r30, r3
/* 802A5D00 002A1960 2C 00 00 00 */ cmpwi r0, 0
/* 802A5D04 002A1964 41 82 00 0C */ beq lbl_802A5D10
/* 802A5D08 002A1968 4B FC 8A 7D */ bl OSRestoreInterrupts
/* 802A5D0C 002A196C 48 00 00 30 */ b lbl_802A5D3C
lbl_802A5D10:
/* 802A5D10 002A1970 38 00 00 01 */ li r0, 1
/* 802A5D14 002A1974 98 0D AE 4D */ stb r0, lbl_8064010D-_SDA_BASE_(r13)
/* 802A5D18 002A1978 48 01 A7 49 */ bl BTA_DmSendHciReset
/* 802A5D1C 002A197C 3C 60 80 53 */ lis r3, lbl_80536D40@ha
/* 802A5D20 002A1980 38 63 6D 40 */ addi r3, r3, lbl_80536D40@l
/* 802A5D24 002A1984 4B FC 3D 55 */ bl OSCancelAlarm
/* 802A5D28 002A1988 38 60 00 00 */ li r3, 0
/* 802A5D2C 002A198C 48 01 10 F5 */ bl WUDSetHidRecvCallback
/* 802A5D30 002A1990 48 01 0A D5 */ bl WUDShutdown
/* 802A5D34 002A1994 7F C3 F3 78 */ mr r3, r30
/* 802A5D38 002A1998 4B FC 8A 4D */ bl OSRestoreInterrupts
lbl_802A5D3C:
/* 802A5D3C 002A199C 3B A0 00 00 */ li r29, 0
/* 802A5D40 002A19A0 48 00 00 48 */ b lbl_802A5D88
lbl_802A5D44:
/* 802A5D44 002A19A4 2C 03 00 05 */ cmpwi r3, 5
/* 802A5D48 002A19A8 40 82 00 10 */ bne lbl_802A5D58
/* 802A5D4C 002A19AC 48 01 0F 51 */ bl WUDStopSyncSimple
/* 802A5D50 002A19B0 3B A0 00 00 */ li r29, 0
/* 802A5D54 002A19B4 48 00 00 34 */ b lbl_802A5D88
lbl_802A5D58:
/* 802A5D58 002A19B8 2C 03 00 04 */ cmpwi r3, 4
/* 802A5D5C 002A19BC 41 82 00 10 */ beq lbl_802A5D6C
/* 802A5D60 002A19C0 38 03 FF FF */ addi r0, r3, -1
/* 802A5D64 002A19C4 28 00 00 01 */ cmplwi r0, 1
/* 802A5D68 002A19C8 41 81 00 0C */ bgt lbl_802A5D74
lbl_802A5D6C:
/* 802A5D6C 002A19CC 3B A0 00 00 */ li r29, 0
/* 802A5D70 002A19D0 48 00 00 18 */ b lbl_802A5D88
lbl_802A5D74:
/* 802A5D74 002A19D4 2C 03 00 00 */ cmpwi r3, 0
/* 802A5D78 002A19D8 40 82 00 10 */ bne lbl_802A5D88
/* 802A5D7C 002A19DC 3B A0 00 01 */ li r29, 1
/* 802A5D80 002A19E0 48 00 00 08 */ b lbl_802A5D88
lbl_802A5D84:
/* 802A5D84 002A19E4 3B A0 00 01 */ li r29, 1
lbl_802A5D88:
/* 802A5D88 002A19E8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A5D8C 002A19EC 7F A3 EB 78 */ mr r3, r29
/* 802A5D90 002A19F0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A5D94 002A19F4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A5D98 002A19F8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A5D9C 002A19FC 7C 08 03 A6 */ mtlr r0
/* 802A5DA0 002A1A00 38 21 00 20 */ addi r1, r1, 0x20
/* 802A5DA4 002A1A04 4E 80 00 20 */ blr
.global WPADiSendData
WPADiSendData:
/* 802A5DA8 002A1A08 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 802A5DAC 002A1A0C 7C 08 02 A6 */ mflr r0
/* 802A5DB0 002A1A10 90 01 00 64 */ stw r0, 0x64(r1)
/* 802A5DB4 002A1A14 39 61 00 60 */ addi r11, r1, 0x60
/* 802A5DB8 002A1A18 4B F2 13 65 */ bl _savegpr_24
/* 802A5DBC 002A1A1C 3F E0 80 53 */ lis r31, lbl_80536D70@ha
/* 802A5DC0 002A1A20 54 7E 10 3A */ slwi r30, r3, 2
/* 802A5DC4 002A1A24 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l
/* 802A5DC8 002A1A28 7C 7A 1B 78 */ mr r26, r3
/* 802A5DCC 002A1A2C 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A5DD0 002A1A30 7C 98 23 78 */ mr r24, r4
/* 802A5DD4 002A1A34 4B FC 89 89 */ bl OSDisableInterrupts
/* 802A5DD8 002A1A38 83 9D 08 BC */ lwz r28, 0x8bc(r29)
/* 802A5DDC 002A1A3C 4B FC 89 A9 */ bl OSRestoreInterrupts
/* 802A5DE0 002A1A40 2C 1C 00 00 */ cmpwi r28, 0
/* 802A5DE4 002A1A44 40 82 00 90 */ bne lbl_802A5E74
/* 802A5DE8 002A1A48 4B FC 89 75 */ bl OSDisableInterrupts
/* 802A5DEC 002A1A4C 8B 3D 08 C0 */ lbz r25, 0x8c0(r29)
/* 802A5DF0 002A1A50 4B FC 89 95 */ bl OSRestoreInterrupts
/* 802A5DF4 002A1A54 2C 19 00 00 */ cmpwi r25, 0
/* 802A5DF8 002A1A58 41 82 00 0C */ beq lbl_802A5E04
/* 802A5DFC 002A1A5C 3B 80 FF FE */ li r28, -2
/* 802A5E00 002A1A60 48 00 00 94 */ b lbl_802A5E94
lbl_802A5E04:
/* 802A5E04 002A1A64 83 38 00 00 */ lwz r25, 0(r24)
/* 802A5E08 002A1A68 7F 43 D3 78 */ mr r3, r26
/* 802A5E0C 002A1A6C 83 58 00 04 */ lwz r26, 4(r24)
/* 802A5E10 002A1A70 38 81 00 10 */ addi r4, r1, 0x10
/* 802A5E14 002A1A74 83 78 00 08 */ lwz r27, 8(r24)
/* 802A5E18 002A1A78 81 98 00 0C */ lwz r12, 0xc(r24)
/* 802A5E1C 002A1A7C 81 78 00 10 */ lwz r11, 0x10(r24)
/* 802A5E20 002A1A80 81 58 00 14 */ lwz r10, 0x14(r24)
/* 802A5E24 002A1A84 81 38 00 18 */ lwz r9, 0x18(r24)
/* 802A5E28 002A1A88 81 18 00 1C */ lwz r8, 0x1c(r24)
/* 802A5E2C 002A1A8C 80 F8 00 20 */ lwz r7, 0x20(r24)
/* 802A5E30 002A1A90 80 D8 00 24 */ lwz r6, 0x24(r24)
/* 802A5E34 002A1A94 80 B8 00 28 */ lwz r5, 0x28(r24)
/* 802A5E38 002A1A98 80 18 00 2C */ lwz r0, 0x2c(r24)
/* 802A5E3C 002A1A9C 93 21 00 10 */ stw r25, 0x10(r1)
/* 802A5E40 002A1AA0 93 41 00 14 */ stw r26, 0x14(r1)
/* 802A5E44 002A1AA4 93 61 00 18 */ stw r27, 0x18(r1)
/* 802A5E48 002A1AA8 91 81 00 1C */ stw r12, 0x1c(r1)
/* 802A5E4C 002A1AAC 91 61 00 20 */ stw r11, 0x20(r1)
/* 802A5E50 002A1AB0 91 41 00 24 */ stw r10, 0x24(r1)
/* 802A5E54 002A1AB4 91 21 00 28 */ stw r9, 0x28(r1)
/* 802A5E58 002A1AB8 91 01 00 2C */ stw r8, 0x2c(r1)
/* 802A5E5C 002A1ABC 90 E1 00 30 */ stw r7, 0x30(r1)
/* 802A5E60 002A1AC0 90 C1 00 34 */ stw r6, 0x34(r1)
/* 802A5E64 002A1AC4 90 A1 00 38 */ stw r5, 0x38(r1)
/* 802A5E68 002A1AC8 90 01 00 3C */ stw r0, 0x3c(r1)
/* 802A5E6C 002A1ACC 48 00 69 0D */ bl __SendData
/* 802A5E70 002A1AD0 48 00 00 24 */ b lbl_802A5E94
lbl_802A5E74:
/* 802A5E74 002A1AD4 2C 1C FF FE */ cmpwi r28, -2
/* 802A5E78 002A1AD8 41 82 00 1C */ beq lbl_802A5E94
/* 802A5E7C 002A1ADC 2C 1C FF FD */ cmpwi r28, -3
/* 802A5E80 002A1AE0 40 82 00 14 */ bne lbl_802A5E94
/* 802A5E84 002A1AE4 4B FC 88 D9 */ bl OSDisableInterrupts
/* 802A5E88 002A1AE8 38 00 00 00 */ li r0, 0
/* 802A5E8C 002A1AEC 90 1D 08 BC */ stw r0, 0x8bc(r29)
/* 802A5E90 002A1AF0 4B FC 88 F5 */ bl OSRestoreInterrupts
lbl_802A5E94:
/* 802A5E94 002A1AF4 2C 1C FF FE */ cmpwi r28, -2
/* 802A5E98 002A1AF8 40 82 00 D0 */ bne lbl_802A5F68
/* 802A5E9C 002A1AFC 4B FC C9 3D */ bl __OSGetSystemTime
/* 802A5EA0 002A1B00 80 DD 09 0C */ lwz r6, 0x90c(r29)
/* 802A5EA4 002A1B04 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802A5EA8 002A1B08 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802A5EAC 002A1B0C 38 A0 00 00 */ li r5, 0
/* 802A5EB0 002A1B10 7C 86 20 10 */ subfc r4, r6, r4
/* 802A5EB4 002A1B14 80 FD 09 08 */ lwz r7, 0x908(r29)
/* 802A5EB8 002A1B18 54 06 F0 BE */ srwi r6, r0, 2
/* 802A5EBC 002A1B1C 7C 67 19 10 */ subfe r3, r7, r3
/* 802A5EC0 002A1B20 4B F2 13 B9 */ bl __div2i
/* 802A5EC4 002A1B24 2C 04 00 01 */ cmpwi r4, 1
/* 802A5EC8 002A1B28 40 81 00 A0 */ ble lbl_802A5F68
/* 802A5ECC 002A1B2C 88 0D AE 62 */ lbz r0, lbl_80640122-_SDA_BASE_(r13)
/* 802A5ED0 002A1B30 2C 00 00 00 */ cmpwi r0, 0
/* 802A5ED4 002A1B34 41 82 00 94 */ beq lbl_802A5F68
/* 802A5ED8 002A1B38 88 1D 09 10 */ lbz r0, 0x910(r29)
/* 802A5EDC 002A1B3C 2C 00 00 00 */ cmpwi r0, 0
/* 802A5EE0 002A1B40 40 82 00 78 */ bne lbl_802A5F58
/* 802A5EE4 002A1B44 4B FC C8 F5 */ bl __OSGetSystemTime
/* 802A5EE8 002A1B48 90 9D 09 0C */ stw r4, 0x90c(r29)
/* 802A5EEC 002A1B4C 90 7D 09 08 */ stw r3, 0x908(r29)
/* 802A5EF0 002A1B50 7F 3F F0 2E */ lwzx r25, r31, r30
/* 802A5EF4 002A1B54 4B FC 88 69 */ bl OSDisableInterrupts
/* 802A5EF8 002A1B58 83 39 08 BC */ lwz r25, 0x8bc(r25)
/* 802A5EFC 002A1B5C 4B FC 88 89 */ bl OSRestoreInterrupts
/* 802A5F00 002A1B60 2C 19 FF FF */ cmpwi r25, -1
/* 802A5F04 002A1B64 41 82 00 64 */ beq lbl_802A5F68
/* 802A5F08 002A1B68 7F 3F F0 2E */ lwzx r25, r31, r30
/* 802A5F0C 002A1B6C 4B FC 88 51 */ bl OSDisableInterrupts
/* 802A5F10 002A1B70 8B 39 08 C3 */ lbz r25, 0x8c3(r25)
/* 802A5F14 002A1B74 4B FC 88 71 */ bl OSRestoreInterrupts
/* 802A5F18 002A1B78 7F 23 CB 78 */ mr r3, r25
/* 802A5F1C 002A1B7C 48 01 2F CD */ bl _WUDGetDevAddr
/* 802A5F20 002A1B80 2C 03 00 00 */ cmpwi r3, 0
/* 802A5F24 002A1B84 41 82 00 18 */ beq lbl_802A5F3C
/* 802A5F28 002A1B88 7C 64 1B 78 */ mr r4, r3
/* 802A5F2C 002A1B8C 38 61 00 08 */ addi r3, r1, 8
/* 802A5F30 002A1B90 38 A0 00 06 */ li r5, 6
/* 802A5F34 002A1B94 4B D5 E0 CD */ bl memcpy
/* 802A5F38 002A1B98 48 00 00 14 */ b lbl_802A5F4C
lbl_802A5F3C:
/* 802A5F3C 002A1B9C 38 61 00 08 */ addi r3, r1, 8
/* 802A5F40 002A1BA0 38 80 00 00 */ li r4, 0
/* 802A5F44 002A1BA4 38 A0 00 06 */ li r5, 6
/* 802A5F48 002A1BA8 4B D5 E1 BD */ bl memset
lbl_802A5F4C:
/* 802A5F4C 002A1BAC 38 61 00 08 */ addi r3, r1, 8
/* 802A5F50 002A1BB0 48 01 EF 45 */ bl btm_remove_acl
/* 802A5F54 002A1BB4 48 00 00 14 */ b lbl_802A5F68
lbl_802A5F58:
/* 802A5F58 002A1BB8 4B FC 88 05 */ bl OSDisableInterrupts
/* 802A5F5C 002A1BBC 38 00 FF FD */ li r0, -3
/* 802A5F60 002A1BC0 90 1D 08 BC */ stw r0, 0x8bc(r29)
/* 802A5F64 002A1BC4 4B FC 88 21 */ bl OSRestoreInterrupts
lbl_802A5F68:
/* 802A5F68 002A1BC8 39 61 00 60 */ addi r11, r1, 0x60
/* 802A5F6C 002A1BCC 7F 83 E3 78 */ mr r3, r28
/* 802A5F70 002A1BD0 4B F2 11 F9 */ bl _restgpr_24
/* 802A5F74 002A1BD4 80 01 00 64 */ lwz r0, 0x64(r1)
/* 802A5F78 002A1BD8 7C 08 03 A6 */ mtlr r0
/* 802A5F7C 002A1BDC 38 21 00 60 */ addi r1, r1, 0x60
/* 802A5F80 002A1BE0 4E 80 00 20 */ blr
.global WPADiRadioSensitivity
WPADiRadioSensitivity:
/* 802A5F84 002A1BE4 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A5F88 002A1BE8 3C 80 66 66 */ lis r4, 0x66666667@ha
/* 802A5F8C 002A1BEC 54 63 10 3A */ slwi r3, r3, 2
/* 802A5F90 002A1BF0 38 00 00 64 */ li r0, 0x64
/* 802A5F94 002A1BF4 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A5F98 002A1BF8 38 84 66 67 */ addi r4, r4, 0x66666667@l
/* 802A5F9C 002A1BFC 7C E5 18 2E */ lwzx r7, r5, r3
/* 802A5FA0 002A1C00 A0 67 09 84 */ lhz r3, 0x984(r7)
/* 802A5FA4 002A1C04 88 C7 09 83 */ lbz r6, 0x983(r7)
/* 802A5FA8 002A1C08 1C 63 00 64 */ mulli r3, r3, 0x64
/* 802A5FAC 002A1C0C 54 C5 18 38 */ slwi r5, r6, 3
/* 802A5FB0 002A1C10 7C A5 32 14 */ add r5, r5, r6
/* 802A5FB4 002A1C14 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802A5FB8 002A1C18 54 63 FC 3E */ rlwinm r3, r3, 0x1f, 0x10, 0x1f
/* 802A5FBC 002A1C1C 7C A5 1A 14 */ add r5, r5, r3
/* 802A5FC0 002A1C20 54 A3 04 3E */ clrlwi r3, r5, 0x10
/* 802A5FC4 002A1C24 7C 64 18 96 */ mulhw r3, r4, r3
/* 802A5FC8 002A1C28 7C 63 16 70 */ srawi r3, r3, 2
/* 802A5FCC 002A1C2C 54 64 0F FE */ srwi r4, r3, 0x1f
/* 802A5FD0 002A1C30 7C 63 22 14 */ add r3, r3, r4
/* 802A5FD4 002A1C34 54 65 04 3E */ clrlwi r5, r3, 0x10
/* 802A5FD8 002A1C38 28 05 00 64 */ cmplwi r5, 0x64
/* 802A5FDC 002A1C3C 41 81 00 08 */ bgt lbl_802A5FE4
/* 802A5FE0 002A1C40 7C A0 2B 78 */ mr r0, r5
lbl_802A5FE4:
/* 802A5FE4 002A1C44 98 07 09 83 */ stb r0, 0x983(r7)
/* 802A5FE8 002A1C48 38 80 00 00 */ li r4, 0
/* 802A5FEC 002A1C4C 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 802A5FF0 002A1C50 B0 87 09 84 */ sth r4, 0x984(r7)
/* 802A5FF4 002A1C54 88 07 08 CD */ lbz r0, 0x8cd(r7)
/* 802A5FF8 002A1C58 2C 00 00 00 */ cmpwi r0, 0
/* 802A5FFC 002A1C5C 41 82 00 44 */ beq lbl_802A6040
/* 802A6000 002A1C60 28 03 00 55 */ cmplwi r3, 0x55
/* 802A6004 002A1C64 40 81 00 10 */ ble lbl_802A6014
/* 802A6008 002A1C68 98 87 08 CD */ stb r4, 0x8cd(r7)
/* 802A600C 002A1C6C 98 87 08 CE */ stb r4, 0x8ce(r7)
/* 802A6010 002A1C70 4E 80 00 20 */ blr
lbl_802A6014:
/* 802A6014 002A1C74 28 03 00 50 */ cmplwi r3, 0x50
/* 802A6018 002A1C78 4C 81 00 20 */ blelr
/* 802A601C 002A1C7C 88 67 08 CE */ lbz r3, 0x8ce(r7)
/* 802A6020 002A1C80 38 63 00 01 */ addi r3, r3, 1
/* 802A6024 002A1C84 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802A6028 002A1C88 98 67 08 CE */ stb r3, 0x8ce(r7)
/* 802A602C 002A1C8C 28 00 00 14 */ cmplwi r0, 0x14
/* 802A6030 002A1C90 4D 80 00 20 */ bltlr
/* 802A6034 002A1C94 98 87 08 CD */ stb r4, 0x8cd(r7)
/* 802A6038 002A1C98 98 87 08 CE */ stb r4, 0x8ce(r7)
/* 802A603C 002A1C9C 4E 80 00 20 */ blr
lbl_802A6040:
/* 802A6040 002A1CA0 28 03 00 4B */ cmplwi r3, 0x4b
/* 802A6044 002A1CA4 40 80 00 14 */ bge lbl_802A6058
/* 802A6048 002A1CA8 38 00 00 01 */ li r0, 1
/* 802A604C 002A1CAC 98 07 08 CD */ stb r0, 0x8cd(r7)
/* 802A6050 002A1CB0 98 87 08 CE */ stb r4, 0x8ce(r7)
/* 802A6054 002A1CB4 4E 80 00 20 */ blr
lbl_802A6058:
/* 802A6058 002A1CB8 28 03 00 50 */ cmplwi r3, 0x50
/* 802A605C 002A1CBC 4C 80 00 20 */ bgelr
/* 802A6060 002A1CC0 88 67 08 CE */ lbz r3, 0x8ce(r7)
/* 802A6064 002A1CC4 38 63 00 01 */ addi r3, r3, 1
/* 802A6068 002A1CC8 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802A606C 002A1CCC 98 67 08 CE */ stb r3, 0x8ce(r7)
/* 802A6070 002A1CD0 28 00 00 01 */ cmplwi r0, 1
/* 802A6074 002A1CD4 4D 80 00 20 */ bltlr
/* 802A6078 002A1CD8 38 00 00 01 */ li r0, 1
/* 802A607C 002A1CDC 98 07 08 CD */ stb r0, 0x8cd(r7)
/* 802A6080 002A1CE0 98 87 08 CE */ stb r4, 0x8ce(r7)
/* 802A6084 002A1CE4 4E 80 00 20 */ blr
.global IsControllerDataChanged
IsControllerDataChanged:
/* 802A6088 002A1CE8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A608C 002A1CEC 7C 08 02 A6 */ mflr r0
/* 802A6090 002A1CF0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A6094 002A1CF4 39 61 00 20 */ addi r11, r1, 0x20
/* 802A6098 002A1CF8 4B F2 10 91 */ bl _savegpr_27
/* 802A609C 002A1CFC 80 C3 08 B8 */ lwz r6, 0x8b8(r3)
/* 802A60A0 002A1D00 89 03 08 C2 */ lbz r8, 0x8c2(r3)
/* 802A60A4 002A1D04 28 06 00 02 */ cmplwi r6, 2
/* 802A60A8 002A1D08 41 81 02 14 */ bgt lbl_802A62BC
/* 802A60AC 002A1D0C 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A60B0 002A1D10 A1 04 00 00 */ lhz r8, 0(r4)
/* 802A60B4 002A1D14 A0 E5 00 00 */ lhz r7, 0(r5)
/* 802A60B8 002A1D18 7C 00 07 75 */ extsb. r0, r0
/* 802A60BC 002A1D1C 7C C8 38 50 */ subf r6, r8, r7
/* 802A60C0 002A1D20 7C 07 40 50 */ subf r0, r7, r8
/* 802A60C4 002A1D24 7C C0 03 78 */ or r0, r6, r0
/* 802A60C8 002A1D28 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802A60CC 002A1D2C 40 82 0B 4C */ bne lbl_802A6C18
/* 802A60D0 002A1D30 88 C5 00 29 */ lbz r6, 0x29(r5)
/* 802A60D4 002A1D34 7C C6 07 75 */ extsb. r6, r6
/* 802A60D8 002A1D38 40 82 0B 40 */ bne lbl_802A6C18
/* 802A60DC 002A1D3C A8 E5 00 04 */ lha r7, 4(r5)
/* 802A60E0 002A1D40 A8 C4 00 04 */ lha r6, 4(r4)
/* 802A60E4 002A1D44 7D 47 30 51 */ subf. r10, r7, r6
/* 802A60E8 002A1D48 40 80 00 08 */ bge lbl_802A60F0
/* 802A60EC 002A1D4C 7D 46 38 50 */ subf r10, r6, r7
lbl_802A60F0:
/* 802A60F0 002A1D50 A9 25 00 02 */ lha r9, 2(r5)
/* 802A60F4 002A1D54 69 46 00 0C */ xori r6, r10, 0xc
/* 802A60F8 002A1D58 A9 04 00 02 */ lha r8, 2(r4)
/* 802A60FC 002A1D5C 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6100 002A1D60 7C C6 50 38 */ and r6, r6, r10
/* 802A6104 002A1D64 7C C6 38 50 */ subf r6, r6, r7
/* 802A6108 002A1D68 7D 69 40 51 */ subf. r11, r9, r8
/* 802A610C 002A1D6C 54 CA 0F FE */ srwi r10, r6, 0x1f
/* 802A6110 002A1D70 40 80 00 08 */ bge lbl_802A6118
/* 802A6114 002A1D74 7D 68 48 50 */ subf r11, r8, r9
lbl_802A6118:
/* 802A6118 002A1D78 A9 25 00 06 */ lha r9, 6(r5)
/* 802A611C 002A1D7C 69 66 00 0C */ xori r6, r11, 0xc
/* 802A6120 002A1D80 A9 04 00 06 */ lha r8, 6(r4)
/* 802A6124 002A1D84 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6128 002A1D88 7C C6 58 38 */ and r6, r6, r11
/* 802A612C 002A1D8C 7C C6 38 50 */ subf r6, r6, r7
/* 802A6130 002A1D90 7D 69 40 51 */ subf. r11, r9, r8
/* 802A6134 002A1D94 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6138 002A1D98 40 80 00 08 */ bge lbl_802A6140
/* 802A613C 002A1D9C 7D 68 48 50 */ subf r11, r8, r9
lbl_802A6140:
/* 802A6140 002A1DA0 69 67 00 0C */ xori r7, r11, 0xc
/* 802A6144 002A1DA4 7C C6 53 78 */ or r6, r6, r10
/* 802A6148 002A1DA8 7C E8 0E 70 */ srawi r8, r7, 1
/* 802A614C 002A1DAC 7C E7 58 38 */ and r7, r7, r11
/* 802A6150 002A1DB0 7C E7 40 50 */ subf r7, r7, r8
/* 802A6154 002A1DB4 54 E7 0F FE */ srwi r7, r7, 0x1f
/* 802A6158 002A1DB8 7C E6 33 79 */ or. r6, r7, r6
/* 802A615C 002A1DBC 41 82 00 38 */ beq lbl_802A6194
/* 802A6160 002A1DC0 A0 C3 08 FC */ lhz r6, 0x8fc(r3)
/* 802A6164 002A1DC4 38 C6 00 01 */ addi r6, r6, 1
/* 802A6168 002A1DC8 B0 C3 08 FC */ sth r6, 0x8fc(r3)
/* 802A616C 002A1DCC 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6170 002A1DD0 A0 CD 89 A4 */ lhz r6, lbl_8063DC64-_SDA_BASE_(r13)
/* 802A6174 002A1DD4 7C 07 30 40 */ cmplw r7, r6
/* 802A6178 002A1DD8 40 81 00 60 */ ble lbl_802A61D8
/* 802A617C 002A1DDC 38 C0 00 00 */ li r6, 0
/* 802A6180 002A1DE0 60 00 00 01 */ ori r0, r0, 1
/* 802A6184 002A1DE4 B0 C3 08 FC */ sth r6, 0x8fc(r3)
/* 802A6188 002A1DE8 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A618C 002A1DEC B0 C3 08 FE */ sth r6, 0x8fe(r3)
/* 802A6190 002A1DF0 48 00 00 48 */ b lbl_802A61D8
lbl_802A6194:
/* 802A6194 002A1DF4 A0 C3 08 FE */ lhz r6, 0x8fe(r3)
/* 802A6198 002A1DF8 A0 ED 89 A8 */ lhz r7, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A619C 002A1DFC 39 06 00 01 */ addi r8, r6, 1
/* 802A61A0 002A1E00 7C C8 3B D6 */ divw r6, r8, r7
/* 802A61A4 002A1E04 7C C6 39 D6 */ mullw r6, r6, r7
/* 802A61A8 002A1E08 7C C6 40 50 */ subf r6, r6, r8
/* 802A61AC 002A1E0C B0 C3 08 FE */ sth r6, 0x8fe(r3)
/* 802A61B0 002A1E10 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A61B4 002A1E14 A0 CD 89 A8 */ lhz r6, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A61B8 002A1E18 38 C6 FF FF */ addi r6, r6, -1
/* 802A61BC 002A1E1C 7C 07 30 00 */ cmpw r7, r6
/* 802A61C0 002A1E20 40 82 00 18 */ bne lbl_802A61D8
/* 802A61C4 002A1E24 A0 C3 08 FC */ lhz r6, 0x8fc(r3)
/* 802A61C8 002A1E28 2C 06 00 00 */ cmpwi r6, 0
/* 802A61CC 002A1E2C 41 82 00 0C */ beq lbl_802A61D8
/* 802A61D0 002A1E30 38 C6 FF FF */ addi r6, r6, -1
/* 802A61D4 002A1E34 B0 C3 08 FC */ sth r6, 0x8fc(r3)
lbl_802A61D8:
/* 802A61D8 002A1E38 38 C0 00 04 */ li r6, 4
/* 802A61DC 002A1E3C 39 20 00 00 */ li r9, 0
/* 802A61E0 002A1E40 7C C9 03 A6 */ mtctr r6
lbl_802A61E4:
/* 802A61E4 002A1E44 A8 E5 00 0A */ lha r7, 0xa(r5)
/* 802A61E8 002A1E48 A8 C4 00 0A */ lha r6, 0xa(r4)
/* 802A61EC 002A1E4C 7D 67 30 51 */ subf. r11, r7, r6
/* 802A61F0 002A1E50 40 80 00 08 */ bge lbl_802A61F8
/* 802A61F4 002A1E54 7D 66 38 50 */ subf r11, r6, r7
lbl_802A61F8:
/* 802A61F8 002A1E58 A9 45 00 08 */ lha r10, 8(r5)
/* 802A61FC 002A1E5C 69 66 00 02 */ xori r6, r11, 2
/* 802A6200 002A1E60 A9 04 00 08 */ lha r8, 8(r4)
/* 802A6204 002A1E64 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6208 002A1E68 7C C6 58 38 */ and r6, r6, r11
/* 802A620C 002A1E6C 7C C6 38 50 */ subf r6, r6, r7
/* 802A6210 002A1E70 7D 8A 40 51 */ subf. r12, r10, r8
/* 802A6214 002A1E74 54 CB 0F FE */ srwi r11, r6, 0x1f
/* 802A6218 002A1E78 40 80 00 08 */ bge lbl_802A6220
/* 802A621C 002A1E7C 7D 88 50 50 */ subf r12, r8, r10
lbl_802A6220:
/* 802A6220 002A1E80 69 86 00 02 */ xori r6, r12, 2
/* 802A6224 002A1E84 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6228 002A1E88 7C C6 60 38 */ and r6, r6, r12
/* 802A622C 002A1E8C 7C C6 38 50 */ subf r6, r6, r7
/* 802A6230 002A1E90 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6234 002A1E94 7C C6 5B 79 */ or. r6, r6, r11
/* 802A6238 002A1E98 41 82 00 30 */ beq lbl_802A6268
/* 802A623C 002A1E9C A0 C3 08 F8 */ lhz r6, 0x8f8(r3)
/* 802A6240 002A1EA0 38 C6 00 01 */ addi r6, r6, 1
/* 802A6244 002A1EA4 B0 C3 08 F8 */ sth r6, 0x8f8(r3)
/* 802A6248 002A1EA8 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A624C 002A1EAC A0 CD 89 A6 */ lhz r6, lbl_8063DC66-_SDA_BASE_(r13)
/* 802A6250 002A1EB0 7C 07 30 40 */ cmplw r7, r6
/* 802A6254 002A1EB4 40 81 00 58 */ ble lbl_802A62AC
/* 802A6258 002A1EB8 60 00 00 01 */ ori r0, r0, 1
/* 802A625C 002A1EBC B1 23 08 F8 */ sth r9, 0x8f8(r3)
/* 802A6260 002A1EC0 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A6264 002A1EC4 48 00 00 48 */ b lbl_802A62AC
lbl_802A6268:
/* 802A6268 002A1EC8 A0 C3 08 FA */ lhz r6, 0x8fa(r3)
/* 802A626C 002A1ECC A0 ED 89 AA */ lhz r7, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A6270 002A1ED0 39 06 00 01 */ addi r8, r6, 1
/* 802A6274 002A1ED4 7C C8 3B D6 */ divw r6, r8, r7
/* 802A6278 002A1ED8 7C C6 39 D6 */ mullw r6, r6, r7
/* 802A627C 002A1EDC 7C C6 40 50 */ subf r6, r6, r8
/* 802A6280 002A1EE0 B0 C3 08 FA */ sth r6, 0x8fa(r3)
/* 802A6284 002A1EE4 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6288 002A1EE8 A0 CD 89 AA */ lhz r6, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A628C 002A1EEC 38 C6 FF FF */ addi r6, r6, -1
/* 802A6290 002A1EF0 7C 07 30 00 */ cmpw r7, r6
/* 802A6294 002A1EF4 40 82 00 18 */ bne lbl_802A62AC
/* 802A6298 002A1EF8 A0 C3 08 F8 */ lhz r6, 0x8f8(r3)
/* 802A629C 002A1EFC 2C 06 00 00 */ cmpwi r6, 0
/* 802A62A0 002A1F00 41 82 00 0C */ beq lbl_802A62AC
/* 802A62A4 002A1F04 38 C6 FF FF */ addi r6, r6, -1
/* 802A62A8 002A1F08 B0 C3 08 F8 */ sth r6, 0x8f8(r3)
lbl_802A62AC:
/* 802A62AC 002A1F0C 38 A5 00 08 */ addi r5, r5, 8
/* 802A62B0 002A1F10 38 84 00 08 */ addi r4, r4, 8
/* 802A62B4 002A1F14 42 00 FF 30 */ bdnz lbl_802A61E4
/* 802A62B8 002A1F18 48 00 09 60 */ b lbl_802A6C18
lbl_802A62BC:
/* 802A62BC 002A1F1C 38 06 FF FD */ addi r0, r6, -3
/* 802A62C0 002A1F20 28 00 00 02 */ cmplwi r0, 2
/* 802A62C4 002A1F24 41 81 03 80 */ bgt lbl_802A6644
/* 802A62C8 002A1F28 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A62CC 002A1F2C 7C 86 23 78 */ mr r6, r4
/* 802A62D0 002A1F30 A1 44 00 00 */ lhz r10, 0(r4)
/* 802A62D4 002A1F34 7C A7 2B 78 */ mr r7, r5
/* 802A62D8 002A1F38 A1 25 00 00 */ lhz r9, 0(r5)
/* 802A62DC 002A1F3C 7C 00 07 75 */ extsb. r0, r0
/* 802A62E0 002A1F40 7D 0A 48 50 */ subf r8, r10, r9
/* 802A62E4 002A1F44 7C 09 50 50 */ subf r0, r9, r10
/* 802A62E8 002A1F48 7D 00 03 78 */ or r0, r8, r0
/* 802A62EC 002A1F4C 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802A62F0 002A1F50 40 82 09 28 */ bne lbl_802A6C18
/* 802A62F4 002A1F54 89 05 00 29 */ lbz r8, 0x29(r5)
/* 802A62F8 002A1F58 7D 08 07 75 */ extsb. r8, r8
/* 802A62FC 002A1F5C 40 82 09 1C */ bne lbl_802A6C18
/* 802A6300 002A1F60 A9 25 00 04 */ lha r9, 4(r5)
/* 802A6304 002A1F64 A9 04 00 04 */ lha r8, 4(r4)
/* 802A6308 002A1F68 7D 89 40 51 */ subf. r12, r9, r8
/* 802A630C 002A1F6C 40 80 00 08 */ bge lbl_802A6314
/* 802A6310 002A1F70 7D 88 48 50 */ subf r12, r8, r9
lbl_802A6314:
/* 802A6314 002A1F74 A9 65 00 02 */ lha r11, 2(r5)
/* 802A6318 002A1F78 69 88 00 0C */ xori r8, r12, 0xc
/* 802A631C 002A1F7C A9 44 00 02 */ lha r10, 2(r4)
/* 802A6320 002A1F80 7D 09 0E 70 */ srawi r9, r8, 1
/* 802A6324 002A1F84 7D 08 60 38 */ and r8, r8, r12
/* 802A6328 002A1F88 7D 08 48 50 */ subf r8, r8, r9
/* 802A632C 002A1F8C 7F 8B 50 51 */ subf. r28, r11, r10
/* 802A6330 002A1F90 55 0C 0F FE */ srwi r12, r8, 0x1f
/* 802A6334 002A1F94 40 80 00 08 */ bge lbl_802A633C
/* 802A6338 002A1F98 7F 8A 58 50 */ subf r28, r10, r11
lbl_802A633C:
/* 802A633C 002A1F9C A9 65 00 06 */ lha r11, 6(r5)
/* 802A6340 002A1FA0 6B 88 00 0C */ xori r8, r28, 0xc
/* 802A6344 002A1FA4 A9 44 00 06 */ lha r10, 6(r4)
/* 802A6348 002A1FA8 7D 09 0E 70 */ srawi r9, r8, 1
/* 802A634C 002A1FAC 7D 08 E0 38 */ and r8, r8, r28
/* 802A6350 002A1FB0 7D 08 48 50 */ subf r8, r8, r9
/* 802A6354 002A1FB4 7F 8B 50 51 */ subf. r28, r11, r10
/* 802A6358 002A1FB8 55 08 0F FE */ srwi r8, r8, 0x1f
/* 802A635C 002A1FBC 40 80 00 08 */ bge lbl_802A6364
/* 802A6360 002A1FC0 7F 8A 58 50 */ subf r28, r10, r11
lbl_802A6364:
/* 802A6364 002A1FC4 6B 89 00 0C */ xori r9, r28, 0xc
/* 802A6368 002A1FC8 7D 08 63 78 */ or r8, r8, r12
/* 802A636C 002A1FCC 7D 2A 0E 70 */ srawi r10, r9, 1
/* 802A6370 002A1FD0 7D 29 E0 38 */ and r9, r9, r28
/* 802A6374 002A1FD4 7D 29 50 50 */ subf r9, r9, r10
/* 802A6378 002A1FD8 55 29 0F FE */ srwi r9, r9, 0x1f
/* 802A637C 002A1FDC 7D 28 43 79 */ or. r8, r9, r8
/* 802A6380 002A1FE0 41 82 00 38 */ beq lbl_802A63B8
/* 802A6384 002A1FE4 A1 03 08 FC */ lhz r8, 0x8fc(r3)
/* 802A6388 002A1FE8 39 08 00 01 */ addi r8, r8, 1
/* 802A638C 002A1FEC B1 03 08 FC */ sth r8, 0x8fc(r3)
/* 802A6390 002A1FF0 55 09 04 3E */ clrlwi r9, r8, 0x10
/* 802A6394 002A1FF4 A1 0D 89 A4 */ lhz r8, lbl_8063DC64-_SDA_BASE_(r13)
/* 802A6398 002A1FF8 7C 09 40 40 */ cmplw r9, r8
/* 802A639C 002A1FFC 40 81 00 60 */ ble lbl_802A63FC
/* 802A63A0 002A2000 39 00 00 00 */ li r8, 0
/* 802A63A4 002A2004 60 00 00 01 */ ori r0, r0, 1
/* 802A63A8 002A2008 B1 03 08 FC */ sth r8, 0x8fc(r3)
/* 802A63AC 002A200C 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A63B0 002A2010 B1 03 08 FE */ sth r8, 0x8fe(r3)
/* 802A63B4 002A2014 48 00 00 48 */ b lbl_802A63FC
lbl_802A63B8:
/* 802A63B8 002A2018 A1 03 08 FE */ lhz r8, 0x8fe(r3)
/* 802A63BC 002A201C A1 2D 89 A8 */ lhz r9, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A63C0 002A2020 39 48 00 01 */ addi r10, r8, 1
/* 802A63C4 002A2024 7D 0A 4B D6 */ divw r8, r10, r9
/* 802A63C8 002A2028 7D 08 49 D6 */ mullw r8, r8, r9
/* 802A63CC 002A202C 7D 08 50 50 */ subf r8, r8, r10
/* 802A63D0 002A2030 B1 03 08 FE */ sth r8, 0x8fe(r3)
/* 802A63D4 002A2034 55 09 04 3E */ clrlwi r9, r8, 0x10
/* 802A63D8 002A2038 A1 0D 89 A8 */ lhz r8, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A63DC 002A203C 39 08 FF FF */ addi r8, r8, -1
/* 802A63E0 002A2040 7C 09 40 00 */ cmpw r9, r8
/* 802A63E4 002A2044 40 82 00 18 */ bne lbl_802A63FC
/* 802A63E8 002A2048 A1 03 08 FC */ lhz r8, 0x8fc(r3)
/* 802A63EC 002A204C 2C 08 00 00 */ cmpwi r8, 0
/* 802A63F0 002A2050 41 82 00 0C */ beq lbl_802A63FC
/* 802A63F4 002A2054 39 08 FF FF */ addi r8, r8, -1
/* 802A63F8 002A2058 B1 03 08 FC */ sth r8, 0x8fc(r3)
lbl_802A63FC:
/* 802A63FC 002A205C 39 00 00 04 */ li r8, 4
/* 802A6400 002A2060 39 60 00 00 */ li r11, 0
/* 802A6404 002A2064 7D 09 03 A6 */ mtctr r8
lbl_802A6408:
/* 802A6408 002A2068 A9 27 00 0A */ lha r9, 0xa(r7)
/* 802A640C 002A206C A9 06 00 0A */ lha r8, 0xa(r6)
/* 802A6410 002A2070 7F 89 40 51 */ subf. r28, r9, r8
/* 802A6414 002A2074 40 80 00 08 */ bge lbl_802A641C
/* 802A6418 002A2078 7F 88 48 50 */ subf r28, r8, r9
lbl_802A641C:
/* 802A641C 002A207C A9 87 00 08 */ lha r12, 8(r7)
/* 802A6420 002A2080 6B 88 00 02 */ xori r8, r28, 2
/* 802A6424 002A2084 A9 46 00 08 */ lha r10, 8(r6)
/* 802A6428 002A2088 7D 09 0E 70 */ srawi r9, r8, 1
/* 802A642C 002A208C 7D 08 E0 38 */ and r8, r8, r28
/* 802A6430 002A2090 7D 08 48 50 */ subf r8, r8, r9
/* 802A6434 002A2094 7F 8C 50 51 */ subf. r28, r12, r10
/* 802A6438 002A2098 55 1D 0F FE */ srwi r29, r8, 0x1f
/* 802A643C 002A209C 40 80 00 08 */ bge lbl_802A6444
/* 802A6440 002A20A0 7F 8A 60 50 */ subf r28, r10, r12
lbl_802A6444:
/* 802A6444 002A20A4 6B 88 00 02 */ xori r8, r28, 2
/* 802A6448 002A20A8 7D 09 0E 70 */ srawi r9, r8, 1
/* 802A644C 002A20AC 7D 08 E0 38 */ and r8, r8, r28
/* 802A6450 002A20B0 7D 08 48 50 */ subf r8, r8, r9
/* 802A6454 002A20B4 55 08 0F FE */ srwi r8, r8, 0x1f
/* 802A6458 002A20B8 7D 08 EB 79 */ or. r8, r8, r29
/* 802A645C 002A20BC 41 82 00 30 */ beq lbl_802A648C
/* 802A6460 002A20C0 A1 03 08 F8 */ lhz r8, 0x8f8(r3)
/* 802A6464 002A20C4 39 08 00 01 */ addi r8, r8, 1
/* 802A6468 002A20C8 B1 03 08 F8 */ sth r8, 0x8f8(r3)
/* 802A646C 002A20CC 55 09 04 3E */ clrlwi r9, r8, 0x10
/* 802A6470 002A20D0 A1 0D 89 A6 */ lhz r8, lbl_8063DC66-_SDA_BASE_(r13)
/* 802A6474 002A20D4 7C 09 40 40 */ cmplw r9, r8
/* 802A6478 002A20D8 40 81 00 58 */ ble lbl_802A64D0
/* 802A647C 002A20DC 60 00 00 01 */ ori r0, r0, 1
/* 802A6480 002A20E0 B1 63 08 F8 */ sth r11, 0x8f8(r3)
/* 802A6484 002A20E4 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A6488 002A20E8 48 00 00 48 */ b lbl_802A64D0
lbl_802A648C:
/* 802A648C 002A20EC A1 03 08 FA */ lhz r8, 0x8fa(r3)
/* 802A6490 002A20F0 A1 2D 89 AA */ lhz r9, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A6494 002A20F4 39 48 00 01 */ addi r10, r8, 1
/* 802A6498 002A20F8 7D 0A 4B D6 */ divw r8, r10, r9
/* 802A649C 002A20FC 7D 08 49 D6 */ mullw r8, r8, r9
/* 802A64A0 002A2100 7D 08 50 50 */ subf r8, r8, r10
/* 802A64A4 002A2104 B1 03 08 FA */ sth r8, 0x8fa(r3)
/* 802A64A8 002A2108 55 09 04 3E */ clrlwi r9, r8, 0x10
/* 802A64AC 002A210C A1 0D 89 AA */ lhz r8, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A64B0 002A2110 39 08 FF FF */ addi r8, r8, -1
/* 802A64B4 002A2114 7C 09 40 00 */ cmpw r9, r8
/* 802A64B8 002A2118 40 82 00 18 */ bne lbl_802A64D0
/* 802A64BC 002A211C A1 03 08 F8 */ lhz r8, 0x8f8(r3)
/* 802A64C0 002A2120 2C 08 00 00 */ cmpwi r8, 0
/* 802A64C4 002A2124 41 82 00 0C */ beq lbl_802A64D0
/* 802A64C8 002A2128 39 08 FF FF */ addi r8, r8, -1
/* 802A64CC 002A212C B1 03 08 F8 */ sth r8, 0x8f8(r3)
lbl_802A64D0:
/* 802A64D0 002A2130 38 E7 00 08 */ addi r7, r7, 8
/* 802A64D4 002A2134 38 C6 00 08 */ addi r6, r6, 8
/* 802A64D8 002A2138 42 00 FF 30 */ bdnz lbl_802A6408
/* 802A64DC 002A213C A8 E5 00 2C */ lha r7, 0x2c(r5)
/* 802A64E0 002A2140 A8 C4 00 2C */ lha r6, 0x2c(r4)
/* 802A64E4 002A2144 7D 47 30 51 */ subf. r10, r7, r6
/* 802A64E8 002A2148 40 80 00 08 */ bge lbl_802A64F0
/* 802A64EC 002A214C 7D 46 38 50 */ subf r10, r6, r7
lbl_802A64F0:
/* 802A64F0 002A2150 A9 25 00 2A */ lha r9, 0x2a(r5)
/* 802A64F4 002A2154 69 46 00 0C */ xori r6, r10, 0xc
/* 802A64F8 002A2158 A9 04 00 2A */ lha r8, 0x2a(r4)
/* 802A64FC 002A215C 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6500 002A2160 7C C6 50 38 */ and r6, r6, r10
/* 802A6504 002A2164 7C C6 38 50 */ subf r6, r6, r7
/* 802A6508 002A2168 7D 69 40 51 */ subf. r11, r9, r8
/* 802A650C 002A216C 54 CA 0F FE */ srwi r10, r6, 0x1f
/* 802A6510 002A2170 40 80 00 08 */ bge lbl_802A6518
/* 802A6514 002A2174 7D 68 48 50 */ subf r11, r8, r9
lbl_802A6518:
/* 802A6518 002A2178 A9 25 00 2E */ lha r9, 0x2e(r5)
/* 802A651C 002A217C 69 66 00 0C */ xori r6, r11, 0xc
/* 802A6520 002A2180 A9 04 00 2E */ lha r8, 0x2e(r4)
/* 802A6524 002A2184 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6528 002A2188 7C C6 58 38 */ and r6, r6, r11
/* 802A652C 002A218C 7C C6 38 50 */ subf r6, r6, r7
/* 802A6530 002A2190 7D 69 40 51 */ subf. r11, r9, r8
/* 802A6534 002A2194 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6538 002A2198 40 80 00 08 */ bge lbl_802A6540
/* 802A653C 002A219C 7D 68 48 50 */ subf r11, r8, r9
lbl_802A6540:
/* 802A6540 002A21A0 69 67 00 0C */ xori r7, r11, 0xc
/* 802A6544 002A21A4 7C C6 53 78 */ or r6, r6, r10
/* 802A6548 002A21A8 7C E8 0E 70 */ srawi r8, r7, 1
/* 802A654C 002A21AC 7C E7 58 38 */ and r7, r7, r11
/* 802A6550 002A21B0 7C E7 40 50 */ subf r7, r7, r8
/* 802A6554 002A21B4 54 E7 0F FE */ srwi r7, r7, 0x1f
/* 802A6558 002A21B8 7C E6 33 79 */ or. r6, r7, r6
/* 802A655C 002A21BC 41 82 00 38 */ beq lbl_802A6594
/* 802A6560 002A21C0 A0 C3 09 00 */ lhz r6, 0x900(r3)
/* 802A6564 002A21C4 38 C6 00 01 */ addi r6, r6, 1
/* 802A6568 002A21C8 B0 C3 09 00 */ sth r6, 0x900(r3)
/* 802A656C 002A21CC 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6570 002A21D0 A0 CD 89 A4 */ lhz r6, lbl_8063DC64-_SDA_BASE_(r13)
/* 802A6574 002A21D4 7C 07 30 40 */ cmplw r7, r6
/* 802A6578 002A21D8 40 81 00 60 */ ble lbl_802A65D8
/* 802A657C 002A21DC 38 C0 00 00 */ li r6, 0
/* 802A6580 002A21E0 60 00 00 01 */ ori r0, r0, 1
/* 802A6584 002A21E4 B0 C3 09 00 */ sth r6, 0x900(r3)
/* 802A6588 002A21E8 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A658C 002A21EC B0 C3 09 02 */ sth r6, 0x902(r3)
/* 802A6590 002A21F0 48 00 00 48 */ b lbl_802A65D8
lbl_802A6594:
/* 802A6594 002A21F4 A0 C3 09 02 */ lhz r6, 0x902(r3)
/* 802A6598 002A21F8 A0 ED 89 A8 */ lhz r7, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A659C 002A21FC 39 06 00 01 */ addi r8, r6, 1
/* 802A65A0 002A2200 7C C8 3B D6 */ divw r6, r8, r7
/* 802A65A4 002A2204 7C C6 39 D6 */ mullw r6, r6, r7
/* 802A65A8 002A2208 7C C6 40 50 */ subf r6, r6, r8
/* 802A65AC 002A220C B0 C3 09 02 */ sth r6, 0x902(r3)
/* 802A65B0 002A2210 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A65B4 002A2214 A0 CD 89 A8 */ lhz r6, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A65B8 002A2218 38 C6 FF FF */ addi r6, r6, -1
/* 802A65BC 002A221C 7C 07 30 00 */ cmpw r7, r6
/* 802A65C0 002A2220 40 82 00 18 */ bne lbl_802A65D8
/* 802A65C4 002A2224 A0 C3 09 00 */ lhz r6, 0x900(r3)
/* 802A65C8 002A2228 2C 06 00 00 */ cmpwi r6, 0
/* 802A65CC 002A222C 41 82 00 0C */ beq lbl_802A65D8
/* 802A65D0 002A2230 38 C6 FF FF */ addi r6, r6, -1
/* 802A65D4 002A2234 B0 C3 09 00 */ sth r6, 0x900(r3)
lbl_802A65D8:
/* 802A65D8 002A2238 88 C5 00 30 */ lbz r6, 0x30(r5)
/* 802A65DC 002A223C 88 64 00 30 */ lbz r3, 0x30(r4)
/* 802A65E0 002A2240 7C C6 07 74 */ extsb r6, r6
/* 802A65E4 002A2244 7C 63 07 74 */ extsb r3, r3
/* 802A65E8 002A2248 7C E6 18 51 */ subf. r7, r6, r3
/* 802A65EC 002A224C 40 80 00 08 */ bge lbl_802A65F4
/* 802A65F0 002A2250 7C E3 30 50 */ subf r7, r3, r6
lbl_802A65F4:
/* 802A65F4 002A2254 88 C5 00 31 */ lbz r6, 0x31(r5)
/* 802A65F8 002A2258 68 E3 00 01 */ xori r3, r7, 1
/* 802A65FC 002A225C 88 A4 00 31 */ lbz r5, 0x31(r4)
/* 802A6600 002A2260 7C 64 0E 70 */ srawi r4, r3, 1
/* 802A6604 002A2264 7C 63 38 38 */ and r3, r3, r7
/* 802A6608 002A2268 7C C6 07 74 */ extsb r6, r6
/* 802A660C 002A226C 7C A5 07 74 */ extsb r5, r5
/* 802A6610 002A2270 7C 63 20 50 */ subf r3, r3, r4
/* 802A6614 002A2274 54 63 0F FE */ srwi r3, r3, 0x1f
/* 802A6618 002A2278 7C E6 28 51 */ subf. r7, r6, r5
/* 802A661C 002A227C 7C 00 1B 78 */ or r0, r0, r3
/* 802A6620 002A2280 40 80 00 08 */ bge lbl_802A6628
/* 802A6624 002A2284 7C E5 30 50 */ subf r7, r5, r6
lbl_802A6628:
/* 802A6628 002A2288 68 E3 00 01 */ xori r3, r7, 1
/* 802A662C 002A228C 7C 64 0E 70 */ srawi r4, r3, 1
/* 802A6630 002A2290 7C 63 38 38 */ and r3, r3, r7
/* 802A6634 002A2294 7C 63 20 50 */ subf r3, r3, r4
/* 802A6638 002A2298 54 63 0F FE */ srwi r3, r3, 0x1f
/* 802A663C 002A229C 7C 00 1B 78 */ or r0, r0, r3
/* 802A6640 002A22A0 48 00 05 D8 */ b lbl_802A6C18
lbl_802A6644:
/* 802A6644 002A22A4 38 06 FF FA */ addi r0, r6, -6
/* 802A6648 002A22A8 28 00 00 02 */ cmplwi r0, 2
/* 802A664C 002A22AC 41 81 03 C0 */ bgt lbl_802A6A0C
/* 802A6650 002A22B0 2C 08 00 02 */ cmpwi r8, 2
/* 802A6654 002A22B4 7C 86 23 78 */ mr r6, r4
/* 802A6658 002A22B8 7C A7 2B 78 */ mr r7, r5
/* 802A665C 002A22BC 41 82 00 40 */ beq lbl_802A669C
/* 802A6660 002A22C0 40 80 00 10 */ bge lbl_802A6670
/* 802A6664 002A22C4 2C 08 00 01 */ cmpwi r8, 1
/* 802A6668 002A22C8 40 80 00 14 */ bge lbl_802A667C
/* 802A666C 002A22CC 48 00 00 30 */ b lbl_802A669C
lbl_802A6670:
/* 802A6670 002A22D0 2C 08 00 04 */ cmpwi r8, 4
/* 802A6674 002A22D4 40 80 00 28 */ bge lbl_802A669C
/* 802A6678 002A22D8 48 00 00 14 */ b lbl_802A668C
lbl_802A667C:
/* 802A667C 002A22DC 39 00 00 10 */ li r8, 0x10
/* 802A6680 002A22E0 39 20 00 20 */ li r9, 0x20
/* 802A6684 002A22E4 39 40 00 08 */ li r10, 8
/* 802A6688 002A22E8 48 00 00 20 */ b lbl_802A66A8
lbl_802A668C:
/* 802A668C 002A22EC 39 00 00 04 */ li r8, 4
/* 802A6690 002A22F0 39 20 00 04 */ li r9, 4
/* 802A6694 002A22F4 39 40 00 01 */ li r10, 1
/* 802A6698 002A22F8 48 00 00 10 */ b lbl_802A66A8
lbl_802A669C:
/* 802A669C 002A22FC 39 00 00 01 */ li r8, 1
/* 802A66A0 002A2300 39 20 00 01 */ li r9, 1
/* 802A66A4 002A2304 39 40 00 01 */ li r10, 1
lbl_802A66A8:
/* 802A66A8 002A2308 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A66AC 002A230C A3 C4 00 00 */ lhz r30, 0(r4)
/* 802A66B0 002A2310 A1 85 00 00 */ lhz r12, 0(r5)
/* 802A66B4 002A2314 7C 00 07 75 */ extsb. r0, r0
/* 802A66B8 002A2318 7D 7E 60 50 */ subf r11, r30, r12
/* 802A66BC 002A231C 7C 0C F0 50 */ subf r0, r12, r30
/* 802A66C0 002A2320 7D 60 03 78 */ or r0, r11, r0
/* 802A66C4 002A2324 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802A66C8 002A2328 40 82 05 50 */ bne lbl_802A6C18
/* 802A66CC 002A232C 89 65 00 29 */ lbz r11, 0x29(r5)
/* 802A66D0 002A2330 7D 6B 07 75 */ extsb. r11, r11
/* 802A66D4 002A2334 40 82 05 44 */ bne lbl_802A6C18
/* 802A66D8 002A2338 A9 85 00 04 */ lha r12, 4(r5)
/* 802A66DC 002A233C A9 64 00 04 */ lha r11, 4(r4)
/* 802A66E0 002A2340 7F 8C 58 51 */ subf. r28, r12, r11
/* 802A66E4 002A2344 40 80 00 08 */ bge lbl_802A66EC
/* 802A66E8 002A2348 7F 8B 60 50 */ subf r28, r11, r12
lbl_802A66EC:
/* 802A66EC 002A234C AB E5 00 02 */ lha r31, 2(r5)
/* 802A66F0 002A2350 6B 8B 00 0C */ xori r11, r28, 0xc
/* 802A66F4 002A2354 AB C4 00 02 */ lha r30, 2(r4)
/* 802A66F8 002A2358 7D 6C 0E 70 */ srawi r12, r11, 1
/* 802A66FC 002A235C 7D 6B E0 38 */ and r11, r11, r28
/* 802A6700 002A2360 7D 6B 60 50 */ subf r11, r11, r12
/* 802A6704 002A2364 7F 9F F0 51 */ subf. r28, r31, r30
/* 802A6708 002A2368 55 7D 0F FE */ srwi r29, r11, 0x1f
/* 802A670C 002A236C 40 80 00 08 */ bge lbl_802A6714
/* 802A6710 002A2370 7F 9E F8 50 */ subf r28, r30, r31
lbl_802A6714:
/* 802A6714 002A2374 AB E5 00 06 */ lha r31, 6(r5)
/* 802A6718 002A2378 6B 8B 00 0C */ xori r11, r28, 0xc
/* 802A671C 002A237C AB C4 00 06 */ lha r30, 6(r4)
/* 802A6720 002A2380 7D 6C 0E 70 */ srawi r12, r11, 1
/* 802A6724 002A2384 7D 6B E0 38 */ and r11, r11, r28
/* 802A6728 002A2388 7D 6B 60 50 */ subf r11, r11, r12
/* 802A672C 002A238C 7F 9F F0 51 */ subf. r28, r31, r30
/* 802A6730 002A2390 55 6B 0F FE */ srwi r11, r11, 0x1f
/* 802A6734 002A2394 40 80 00 08 */ bge lbl_802A673C
/* 802A6738 002A2398 7F 9E F8 50 */ subf r28, r30, r31
lbl_802A673C:
/* 802A673C 002A239C 6B 8C 00 0C */ xori r12, r28, 0xc
/* 802A6740 002A23A0 7D 6B EB 78 */ or r11, r11, r29
/* 802A6744 002A23A4 7D 9E 0E 70 */ srawi r30, r12, 1
/* 802A6748 002A23A8 7D 8C E0 38 */ and r12, r12, r28
/* 802A674C 002A23AC 7D 8C F0 50 */ subf r12, r12, r30
/* 802A6750 002A23B0 55 8C 0F FE */ srwi r12, r12, 0x1f
/* 802A6754 002A23B4 7D 8B 5B 79 */ or. r11, r12, r11
/* 802A6758 002A23B8 41 82 00 38 */ beq lbl_802A6790
/* 802A675C 002A23BC A1 63 08 FC */ lhz r11, 0x8fc(r3)
/* 802A6760 002A23C0 39 6B 00 01 */ addi r11, r11, 1
/* 802A6764 002A23C4 B1 63 08 FC */ sth r11, 0x8fc(r3)
/* 802A6768 002A23C8 55 6C 04 3E */ clrlwi r12, r11, 0x10
/* 802A676C 002A23CC A1 6D 89 A4 */ lhz r11, lbl_8063DC64-_SDA_BASE_(r13)
/* 802A6770 002A23D0 7C 0C 58 40 */ cmplw r12, r11
/* 802A6774 002A23D4 40 81 00 60 */ ble lbl_802A67D4
/* 802A6778 002A23D8 39 60 00 00 */ li r11, 0
/* 802A677C 002A23DC 60 00 00 01 */ ori r0, r0, 1
/* 802A6780 002A23E0 B1 63 08 FC */ sth r11, 0x8fc(r3)
/* 802A6784 002A23E4 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A6788 002A23E8 B1 63 08 FE */ sth r11, 0x8fe(r3)
/* 802A678C 002A23EC 48 00 00 48 */ b lbl_802A67D4
lbl_802A6790:
/* 802A6790 002A23F0 A1 63 08 FE */ lhz r11, 0x8fe(r3)
/* 802A6794 002A23F4 A1 8D 89 A8 */ lhz r12, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A6798 002A23F8 3B CB 00 01 */ addi r30, r11, 1
/* 802A679C 002A23FC 7D 7E 63 D6 */ divw r11, r30, r12
/* 802A67A0 002A2400 7D 6B 61 D6 */ mullw r11, r11, r12
/* 802A67A4 002A2404 7D 6B F0 50 */ subf r11, r11, r30
/* 802A67A8 002A2408 B1 63 08 FE */ sth r11, 0x8fe(r3)
/* 802A67AC 002A240C 55 6C 04 3E */ clrlwi r12, r11, 0x10
/* 802A67B0 002A2410 A1 6D 89 A8 */ lhz r11, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A67B4 002A2414 39 6B FF FF */ addi r11, r11, -1
/* 802A67B8 002A2418 7C 0C 58 00 */ cmpw r12, r11
/* 802A67BC 002A241C 40 82 00 18 */ bne lbl_802A67D4
/* 802A67C0 002A2420 A1 63 08 FC */ lhz r11, 0x8fc(r3)
/* 802A67C4 002A2424 2C 0B 00 00 */ cmpwi r11, 0
/* 802A67C8 002A2428 41 82 00 0C */ beq lbl_802A67D4
/* 802A67CC 002A242C 39 6B FF FF */ addi r11, r11, -1
/* 802A67D0 002A2430 B1 63 08 FC */ sth r11, 0x8fc(r3)
lbl_802A67D4:
/* 802A67D4 002A2434 39 60 00 04 */ li r11, 4
/* 802A67D8 002A2438 3B C0 00 00 */ li r30, 0
/* 802A67DC 002A243C 7D 69 03 A6 */ mtctr r11
lbl_802A67E0:
/* 802A67E0 002A2440 A9 87 00 0A */ lha r12, 0xa(r7)
/* 802A67E4 002A2444 A9 66 00 0A */ lha r11, 0xa(r6)
/* 802A67E8 002A2448 7F 8C 58 51 */ subf. r28, r12, r11
/* 802A67EC 002A244C 40 80 00 08 */ bge lbl_802A67F4
/* 802A67F0 002A2450 7F 8B 60 50 */ subf r28, r11, r12
lbl_802A67F4:
/* 802A67F4 002A2454 AB A7 00 08 */ lha r29, 8(r7)
/* 802A67F8 002A2458 6B 8B 00 02 */ xori r11, r28, 2
/* 802A67FC 002A245C AB E6 00 08 */ lha r31, 8(r6)
/* 802A6800 002A2460 7D 6C 0E 70 */ srawi r12, r11, 1
/* 802A6804 002A2464 7D 6B E0 38 */ and r11, r11, r28
/* 802A6808 002A2468 7D 6B 60 50 */ subf r11, r11, r12
/* 802A680C 002A246C 7F 7D F8 51 */ subf. r27, r29, r31
/* 802A6810 002A2470 55 7C 0F FE */ srwi r28, r11, 0x1f
/* 802A6814 002A2474 40 80 00 08 */ bge lbl_802A681C
/* 802A6818 002A2478 7F 7F E8 50 */ subf r27, r31, r29
lbl_802A681C:
/* 802A681C 002A247C 6B 6B 00 02 */ xori r11, r27, 2
/* 802A6820 002A2480 7D 6C 0E 70 */ srawi r12, r11, 1
/* 802A6824 002A2484 7D 6B D8 38 */ and r11, r11, r27
/* 802A6828 002A2488 7D 6B 60 50 */ subf r11, r11, r12
/* 802A682C 002A248C 55 6B 0F FE */ srwi r11, r11, 0x1f
/* 802A6830 002A2490 7D 6B E3 79 */ or. r11, r11, r28
/* 802A6834 002A2494 41 82 00 30 */ beq lbl_802A6864
/* 802A6838 002A2498 A1 63 08 F8 */ lhz r11, 0x8f8(r3)
/* 802A683C 002A249C 39 6B 00 01 */ addi r11, r11, 1
/* 802A6840 002A24A0 B1 63 08 F8 */ sth r11, 0x8f8(r3)
/* 802A6844 002A24A4 55 6C 04 3E */ clrlwi r12, r11, 0x10
/* 802A6848 002A24A8 A1 6D 89 A6 */ lhz r11, lbl_8063DC66-_SDA_BASE_(r13)
/* 802A684C 002A24AC 7C 0C 58 40 */ cmplw r12, r11
/* 802A6850 002A24B0 40 81 00 58 */ ble lbl_802A68A8
/* 802A6854 002A24B4 60 00 00 01 */ ori r0, r0, 1
/* 802A6858 002A24B8 B3 C3 08 F8 */ sth r30, 0x8f8(r3)
/* 802A685C 002A24BC 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A6860 002A24C0 48 00 00 48 */ b lbl_802A68A8
lbl_802A6864:
/* 802A6864 002A24C4 A1 63 08 FA */ lhz r11, 0x8fa(r3)
/* 802A6868 002A24C8 A1 8D 89 AA */ lhz r12, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A686C 002A24CC 3B EB 00 01 */ addi r31, r11, 1
/* 802A6870 002A24D0 7D 7F 63 D6 */ divw r11, r31, r12
/* 802A6874 002A24D4 7D 6B 61 D6 */ mullw r11, r11, r12
/* 802A6878 002A24D8 7D 6B F8 50 */ subf r11, r11, r31
/* 802A687C 002A24DC B1 63 08 FA */ sth r11, 0x8fa(r3)
/* 802A6880 002A24E0 55 6C 04 3E */ clrlwi r12, r11, 0x10
/* 802A6884 002A24E4 A1 6D 89 AA */ lhz r11, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A6888 002A24E8 39 6B FF FF */ addi r11, r11, -1
/* 802A688C 002A24EC 7C 0C 58 00 */ cmpw r12, r11
/* 802A6890 002A24F0 40 82 00 18 */ bne lbl_802A68A8
/* 802A6894 002A24F4 A1 63 08 F8 */ lhz r11, 0x8f8(r3)
/* 802A6898 002A24F8 2C 0B 00 00 */ cmpwi r11, 0
/* 802A689C 002A24FC 41 82 00 0C */ beq lbl_802A68A8
/* 802A68A0 002A2500 39 6B FF FF */ addi r11, r11, -1
/* 802A68A4 002A2504 B1 63 08 F8 */ sth r11, 0x8f8(r3)
lbl_802A68A8:
/* 802A68A8 002A2508 38 E7 00 08 */ addi r7, r7, 8
/* 802A68AC 002A250C 38 C6 00 08 */ addi r6, r6, 8
/* 802A68B0 002A2510 42 00 FF 30 */ bdnz lbl_802A67E0
/* 802A68B4 002A2514 A8 C5 00 2C */ lha r6, 0x2c(r5)
/* 802A68B8 002A2518 A1 64 00 2A */ lhz r11, 0x2a(r4)
/* 802A68BC 002A251C 7D 86 43 D6 */ divw r12, r6, r8
/* 802A68C0 002A2520 A0 C5 00 2A */ lhz r6, 0x2a(r5)
/* 802A68C4 002A2524 A8 64 00 2C */ lha r3, 0x2c(r4)
/* 802A68C8 002A2528 7C EB 30 50 */ subf r7, r11, r6
/* 802A68CC 002A252C 7C C6 58 50 */ subf r6, r6, r11
/* 802A68D0 002A2530 7C E6 33 78 */ or r6, r7, r6
/* 802A68D4 002A2534 7C E3 43 D6 */ divw r7, r3, r8
/* 802A68D8 002A2538 54 C3 0F FE */ srwi r3, r6, 0x1f
/* 802A68DC 002A253C 7C 00 1B 78 */ or r0, r0, r3
/* 802A68E0 002A2540 7F 6C 38 51 */ subf. r27, r12, r7
/* 802A68E4 002A2544 40 80 00 08 */ bge lbl_802A68EC
/* 802A68E8 002A2548 7F 67 60 50 */ subf r27, r7, r12
lbl_802A68EC:
/* 802A68EC 002A254C A8 C5 00 2E */ lha r6, 0x2e(r5)
/* 802A68F0 002A2550 6B 6B 00 01 */ xori r11, r27, 1
/* 802A68F4 002A2554 A8 64 00 2E */ lha r3, 0x2e(r4)
/* 802A68F8 002A2558 7D 67 0E 70 */ srawi r7, r11, 1
/* 802A68FC 002A255C 7D 86 43 D6 */ divw r12, r6, r8
/* 802A6900 002A2560 7D 66 D8 38 */ and r6, r11, r27
/* 802A6904 002A2564 7C C6 38 50 */ subf r6, r6, r7
/* 802A6908 002A2568 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A690C 002A256C 7C 00 33 78 */ or r0, r0, r6
/* 802A6910 002A2570 7C 63 43 D6 */ divw r3, r3, r8
/* 802A6914 002A2574 7F 6C 18 51 */ subf. r27, r12, r3
/* 802A6918 002A2578 40 80 00 08 */ bge lbl_802A6920
/* 802A691C 002A257C 7F 63 60 50 */ subf r27, r3, r12
lbl_802A6920:
/* 802A6920 002A2580 A8 C5 00 30 */ lha r6, 0x30(r5)
/* 802A6924 002A2584 6B 68 00 01 */ xori r8, r27, 1
/* 802A6928 002A2588 A8 64 00 30 */ lha r3, 0x30(r4)
/* 802A692C 002A258C 7D 07 0E 70 */ srawi r7, r8, 1
/* 802A6930 002A2590 7D 66 4B D6 */ divw r11, r6, r9
/* 802A6934 002A2594 7D 06 D8 38 */ and r6, r8, r27
/* 802A6938 002A2598 7C C6 38 50 */ subf r6, r6, r7
/* 802A693C 002A259C 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6940 002A25A0 7C 00 33 78 */ or r0, r0, r6
/* 802A6944 002A25A4 7C 63 4B D6 */ divw r3, r3, r9
/* 802A6948 002A25A8 7D 8B 18 51 */ subf. r12, r11, r3
/* 802A694C 002A25AC 40 80 00 08 */ bge lbl_802A6954
/* 802A6950 002A25B0 7D 83 58 50 */ subf r12, r3, r11
lbl_802A6954:
/* 802A6954 002A25B4 A8 C5 00 32 */ lha r6, 0x32(r5)
/* 802A6958 002A25B8 69 88 00 01 */ xori r8, r12, 1
/* 802A695C 002A25BC A8 64 00 32 */ lha r3, 0x32(r4)
/* 802A6960 002A25C0 7D 07 0E 70 */ srawi r7, r8, 1
/* 802A6964 002A25C4 7D 66 4B D6 */ divw r11, r6, r9
/* 802A6968 002A25C8 7D 06 60 38 */ and r6, r8, r12
/* 802A696C 002A25CC 7C C6 38 50 */ subf r6, r6, r7
/* 802A6970 002A25D0 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6974 002A25D4 7C 00 33 78 */ or r0, r0, r6
/* 802A6978 002A25D8 7C 63 4B D6 */ divw r3, r3, r9
/* 802A697C 002A25DC 7D 8B 18 51 */ subf. r12, r11, r3
/* 802A6980 002A25E0 40 80 00 08 */ bge lbl_802A6988
/* 802A6984 002A25E4 7D 83 58 50 */ subf r12, r3, r11
lbl_802A6988:
/* 802A6988 002A25E8 88 C5 00 34 */ lbz r6, 0x34(r5)
/* 802A698C 002A25EC 69 88 00 01 */ xori r8, r12, 1
/* 802A6990 002A25F0 88 64 00 34 */ lbz r3, 0x34(r4)
/* 802A6994 002A25F4 7D 07 0E 70 */ srawi r7, r8, 1
/* 802A6998 002A25F8 7D 26 53 D6 */ divw r9, r6, r10
/* 802A699C 002A25FC 7D 06 60 38 */ and r6, r8, r12
/* 802A69A0 002A2600 7C C6 38 50 */ subf r6, r6, r7
/* 802A69A4 002A2604 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A69A8 002A2608 7C 00 33 78 */ or r0, r0, r6
/* 802A69AC 002A260C 7C 63 53 D6 */ divw r3, r3, r10
/* 802A69B0 002A2610 7D 09 18 51 */ subf. r8, r9, r3
/* 802A69B4 002A2614 40 80 00 08 */ bge lbl_802A69BC
/* 802A69B8 002A2618 7D 03 48 50 */ subf r8, r3, r9
lbl_802A69BC:
/* 802A69BC 002A261C 88 A5 00 35 */ lbz r5, 0x35(r5)
/* 802A69C0 002A2620 69 07 00 01 */ xori r7, r8, 1
/* 802A69C4 002A2624 88 64 00 35 */ lbz r3, 0x35(r4)
/* 802A69C8 002A2628 7C E6 0E 70 */ srawi r6, r7, 1
/* 802A69CC 002A262C 7C A5 53 D6 */ divw r5, r5, r10
/* 802A69D0 002A2630 7C E4 40 38 */ and r4, r7, r8
/* 802A69D4 002A2634 7C 84 30 50 */ subf r4, r4, r6
/* 802A69D8 002A2638 54 84 0F FE */ srwi r4, r4, 0x1f
/* 802A69DC 002A263C 7C 00 23 78 */ or r0, r0, r4
/* 802A69E0 002A2640 7C 63 53 D6 */ divw r3, r3, r10
/* 802A69E4 002A2644 7C C5 18 51 */ subf. r6, r5, r3
/* 802A69E8 002A2648 40 80 00 08 */ bge lbl_802A69F0
/* 802A69EC 002A264C 7C C3 28 50 */ subf r6, r3, r5
lbl_802A69F0:
/* 802A69F0 002A2650 68 C3 00 01 */ xori r3, r6, 1
/* 802A69F4 002A2654 7C 64 0E 70 */ srawi r4, r3, 1
/* 802A69F8 002A2658 7C 63 30 38 */ and r3, r3, r6
/* 802A69FC 002A265C 7C 63 20 50 */ subf r3, r3, r4
/* 802A6A00 002A2660 54 63 0F FE */ srwi r3, r3, 0x1f
/* 802A6A04 002A2664 7C 00 1B 78 */ or r0, r0, r3
/* 802A6A08 002A2668 48 00 02 10 */ b lbl_802A6C18
lbl_802A6A0C:
/* 802A6A0C 002A266C 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A6A10 002A2670 A1 04 00 00 */ lhz r8, 0(r4)
/* 802A6A14 002A2674 A0 E5 00 00 */ lhz r7, 0(r5)
/* 802A6A18 002A2678 7C 00 07 75 */ extsb. r0, r0
/* 802A6A1C 002A267C 7C C8 38 50 */ subf r6, r8, r7
/* 802A6A20 002A2680 7C 07 40 50 */ subf r0, r7, r8
/* 802A6A24 002A2684 7C C0 03 78 */ or r0, r6, r0
/* 802A6A28 002A2688 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802A6A2C 002A268C 40 82 01 EC */ bne lbl_802A6C18
/* 802A6A30 002A2690 88 C5 00 29 */ lbz r6, 0x29(r5)
/* 802A6A34 002A2694 7C C6 07 75 */ extsb. r6, r6
/* 802A6A38 002A2698 40 82 01 E0 */ bne lbl_802A6C18
/* 802A6A3C 002A269C A8 E5 00 04 */ lha r7, 4(r5)
/* 802A6A40 002A26A0 A8 C4 00 04 */ lha r6, 4(r4)
/* 802A6A44 002A26A4 7D 47 30 51 */ subf. r10, r7, r6
/* 802A6A48 002A26A8 40 80 00 08 */ bge lbl_802A6A50
/* 802A6A4C 002A26AC 7D 46 38 50 */ subf r10, r6, r7
lbl_802A6A50:
/* 802A6A50 002A26B0 A9 25 00 02 */ lha r9, 2(r5)
/* 802A6A54 002A26B4 69 46 00 0C */ xori r6, r10, 0xc
/* 802A6A58 002A26B8 A9 04 00 02 */ lha r8, 2(r4)
/* 802A6A5C 002A26BC 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6A60 002A26C0 7C C6 50 38 */ and r6, r6, r10
/* 802A6A64 002A26C4 7C C6 38 50 */ subf r6, r6, r7
/* 802A6A68 002A26C8 7D 69 40 51 */ subf. r11, r9, r8
/* 802A6A6C 002A26CC 54 CA 0F FE */ srwi r10, r6, 0x1f
/* 802A6A70 002A26D0 40 80 00 08 */ bge lbl_802A6A78
/* 802A6A74 002A26D4 7D 68 48 50 */ subf r11, r8, r9
lbl_802A6A78:
/* 802A6A78 002A26D8 A9 25 00 06 */ lha r9, 6(r5)
/* 802A6A7C 002A26DC 69 66 00 0C */ xori r6, r11, 0xc
/* 802A6A80 002A26E0 A9 04 00 06 */ lha r8, 6(r4)
/* 802A6A84 002A26E4 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6A88 002A26E8 7C C6 58 38 */ and r6, r6, r11
/* 802A6A8C 002A26EC 7C C6 38 50 */ subf r6, r6, r7
/* 802A6A90 002A26F0 7D 69 40 51 */ subf. r11, r9, r8
/* 802A6A94 002A26F4 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6A98 002A26F8 40 80 00 08 */ bge lbl_802A6AA0
/* 802A6A9C 002A26FC 7D 68 48 50 */ subf r11, r8, r9
lbl_802A6AA0:
/* 802A6AA0 002A2700 69 67 00 0C */ xori r7, r11, 0xc
/* 802A6AA4 002A2704 7C C6 53 78 */ or r6, r6, r10
/* 802A6AA8 002A2708 7C E8 0E 70 */ srawi r8, r7, 1
/* 802A6AAC 002A270C 7C E7 58 38 */ and r7, r7, r11
/* 802A6AB0 002A2710 7C E7 40 50 */ subf r7, r7, r8
/* 802A6AB4 002A2714 54 E7 0F FE */ srwi r7, r7, 0x1f
/* 802A6AB8 002A2718 7C E6 33 79 */ or. r6, r7, r6
/* 802A6ABC 002A271C 41 82 00 38 */ beq lbl_802A6AF4
/* 802A6AC0 002A2720 A0 C3 08 FC */ lhz r6, 0x8fc(r3)
/* 802A6AC4 002A2724 38 C6 00 01 */ addi r6, r6, 1
/* 802A6AC8 002A2728 B0 C3 08 FC */ sth r6, 0x8fc(r3)
/* 802A6ACC 002A272C 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6AD0 002A2730 A0 CD 89 A4 */ lhz r6, lbl_8063DC64-_SDA_BASE_(r13)
/* 802A6AD4 002A2734 7C 07 30 40 */ cmplw r7, r6
/* 802A6AD8 002A2738 40 81 00 60 */ ble lbl_802A6B38
/* 802A6ADC 002A273C 38 C0 00 00 */ li r6, 0
/* 802A6AE0 002A2740 60 00 00 01 */ ori r0, r0, 1
/* 802A6AE4 002A2744 B0 C3 08 FC */ sth r6, 0x8fc(r3)
/* 802A6AE8 002A2748 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A6AEC 002A274C B0 C3 08 FE */ sth r6, 0x8fe(r3)
/* 802A6AF0 002A2750 48 00 00 48 */ b lbl_802A6B38
lbl_802A6AF4:
/* 802A6AF4 002A2754 A0 C3 08 FE */ lhz r6, 0x8fe(r3)
/* 802A6AF8 002A2758 A0 ED 89 A8 */ lhz r7, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A6AFC 002A275C 39 06 00 01 */ addi r8, r6, 1
/* 802A6B00 002A2760 7C C8 3B D6 */ divw r6, r8, r7
/* 802A6B04 002A2764 7C C6 39 D6 */ mullw r6, r6, r7
/* 802A6B08 002A2768 7C C6 40 50 */ subf r6, r6, r8
/* 802A6B0C 002A276C B0 C3 08 FE */ sth r6, 0x8fe(r3)
/* 802A6B10 002A2770 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6B14 002A2774 A0 CD 89 A8 */ lhz r6, lbl_8063DC68-_SDA_BASE_(r13)
/* 802A6B18 002A2778 38 C6 FF FF */ addi r6, r6, -1
/* 802A6B1C 002A277C 7C 07 30 00 */ cmpw r7, r6
/* 802A6B20 002A2780 40 82 00 18 */ bne lbl_802A6B38
/* 802A6B24 002A2784 A0 C3 08 FC */ lhz r6, 0x8fc(r3)
/* 802A6B28 002A2788 2C 06 00 00 */ cmpwi r6, 0
/* 802A6B2C 002A278C 41 82 00 0C */ beq lbl_802A6B38
/* 802A6B30 002A2790 38 C6 FF FF */ addi r6, r6, -1
/* 802A6B34 002A2794 B0 C3 08 FC */ sth r6, 0x8fc(r3)
lbl_802A6B38:
/* 802A6B38 002A2798 38 C0 00 04 */ li r6, 4
/* 802A6B3C 002A279C 39 20 00 00 */ li r9, 0
/* 802A6B40 002A27A0 7C C9 03 A6 */ mtctr r6
lbl_802A6B44:
/* 802A6B44 002A27A4 A8 E5 00 0A */ lha r7, 0xa(r5)
/* 802A6B48 002A27A8 A8 C4 00 0A */ lha r6, 0xa(r4)
/* 802A6B4C 002A27AC 7D 67 30 51 */ subf. r11, r7, r6
/* 802A6B50 002A27B0 40 80 00 08 */ bge lbl_802A6B58
/* 802A6B54 002A27B4 7D 66 38 50 */ subf r11, r6, r7
lbl_802A6B58:
/* 802A6B58 002A27B8 A9 45 00 08 */ lha r10, 8(r5)
/* 802A6B5C 002A27BC 69 66 00 02 */ xori r6, r11, 2
/* 802A6B60 002A27C0 A9 04 00 08 */ lha r8, 8(r4)
/* 802A6B64 002A27C4 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6B68 002A27C8 7C C6 58 38 */ and r6, r6, r11
/* 802A6B6C 002A27CC 7C C6 38 50 */ subf r6, r6, r7
/* 802A6B70 002A27D0 7D 8A 40 51 */ subf. r12, r10, r8
/* 802A6B74 002A27D4 54 CB 0F FE */ srwi r11, r6, 0x1f
/* 802A6B78 002A27D8 40 80 00 08 */ bge lbl_802A6B80
/* 802A6B7C 002A27DC 7D 88 50 50 */ subf r12, r8, r10
lbl_802A6B80:
/* 802A6B80 002A27E0 69 86 00 02 */ xori r6, r12, 2
/* 802A6B84 002A27E4 7C C7 0E 70 */ srawi r7, r6, 1
/* 802A6B88 002A27E8 7C C6 60 38 */ and r6, r6, r12
/* 802A6B8C 002A27EC 7C C6 38 50 */ subf r6, r6, r7
/* 802A6B90 002A27F0 54 C6 0F FE */ srwi r6, r6, 0x1f
/* 802A6B94 002A27F4 7C C6 5B 79 */ or. r6, r6, r11
/* 802A6B98 002A27F8 41 82 00 30 */ beq lbl_802A6BC8
/* 802A6B9C 002A27FC A0 C3 08 F8 */ lhz r6, 0x8f8(r3)
/* 802A6BA0 002A2800 38 C6 00 01 */ addi r6, r6, 1
/* 802A6BA4 002A2804 B0 C3 08 F8 */ sth r6, 0x8f8(r3)
/* 802A6BA8 002A2808 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6BAC 002A280C A0 CD 89 A6 */ lhz r6, lbl_8063DC66-_SDA_BASE_(r13)
/* 802A6BB0 002A2810 7C 07 30 40 */ cmplw r7, r6
/* 802A6BB4 002A2814 40 81 00 58 */ ble lbl_802A6C0C
/* 802A6BB8 002A2818 60 00 00 01 */ ori r0, r0, 1
/* 802A6BBC 002A281C B1 23 08 F8 */ sth r9, 0x8f8(r3)
/* 802A6BC0 002A2820 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802A6BC4 002A2824 48 00 00 48 */ b lbl_802A6C0C
lbl_802A6BC8:
/* 802A6BC8 002A2828 A0 C3 08 FA */ lhz r6, 0x8fa(r3)
/* 802A6BCC 002A282C A0 ED 89 AA */ lhz r7, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A6BD0 002A2830 39 06 00 01 */ addi r8, r6, 1
/* 802A6BD4 002A2834 7C C8 3B D6 */ divw r6, r8, r7
/* 802A6BD8 002A2838 7C C6 39 D6 */ mullw r6, r6, r7
/* 802A6BDC 002A283C 7C C6 40 50 */ subf r6, r6, r8
/* 802A6BE0 002A2840 B0 C3 08 FA */ sth r6, 0x8fa(r3)
/* 802A6BE4 002A2844 54 C7 04 3E */ clrlwi r7, r6, 0x10
/* 802A6BE8 002A2848 A0 CD 89 AA */ lhz r6, lbl_8063DC6A-_SDA_BASE_(r13)
/* 802A6BEC 002A284C 38 C6 FF FF */ addi r6, r6, -1
/* 802A6BF0 002A2850 7C 07 30 00 */ cmpw r7, r6
/* 802A6BF4 002A2854 40 82 00 18 */ bne lbl_802A6C0C
/* 802A6BF8 002A2858 A0 C3 08 F8 */ lhz r6, 0x8f8(r3)
/* 802A6BFC 002A285C 2C 06 00 00 */ cmpwi r6, 0
/* 802A6C00 002A2860 41 82 00 0C */ beq lbl_802A6C0C
/* 802A6C04 002A2864 38 C6 FF FF */ addi r6, r6, -1
/* 802A6C08 002A2868 B0 C3 08 F8 */ sth r6, 0x8f8(r3)
lbl_802A6C0C:
/* 802A6C0C 002A286C 38 A5 00 08 */ addi r5, r5, 8
/* 802A6C10 002A2870 38 84 00 08 */ addi r4, r4, 8
/* 802A6C14 002A2874 42 00 FF 30 */ bdnz lbl_802A6B44
lbl_802A6C18:
/* 802A6C18 002A2878 39 61 00 20 */ addi r11, r1, 0x20
/* 802A6C1C 002A287C 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 802A6C20 002A2880 4B F2 05 55 */ bl _restgpr_27
/* 802A6C24 002A2884 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A6C28 002A2888 7C 08 03 A6 */ mtlr r0
/* 802A6C2C 002A288C 38 21 00 20 */ addi r1, r1, 0x20
/* 802A6C30 002A2890 4E 80 00 20 */ blr
.global CheckButtonCombination
CheckButtonCombination:
/* 802A6C34 002A2894 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A6C38 002A2898 7C 08 02 A6 */ mflr r0
/* 802A6C3C 002A289C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A6C40 002A28A0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A6C44 002A28A4 3F E0 80 53 */ lis r31, lbl_80536D70@ha
/* 802A6C48 002A28A8 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l
/* 802A6C4C 002A28AC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A6C50 002A28B0 54 7E 10 3A */ slwi r30, r3, 2
/* 802A6C54 002A28B4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A6C58 002A28B8 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A6C5C 002A28BC 3B 80 FF FF */ li r28, -1
/* 802A6C60 002A28C0 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A6C64 002A28C4 4B FC 7A F9 */ bl OSDisableInterrupts
/* 802A6C68 002A28C8 88 1D 08 C8 */ lbz r0, 0x8c8(r29)
/* 802A6C6C 002A28CC 80 BD 08 B8 */ lwz r5, 0x8b8(r29)
/* 802A6C70 002A28D0 7C 00 00 34 */ cntlzw r0, r0
/* 802A6C74 002A28D4 54 04 DE 3E */ rlwinm r4, r0, 0x1b, 0x18, 0x1f
/* 802A6C78 002A28D8 38 05 FF FD */ addi r0, r5, -3
/* 802A6C7C 002A28DC 1C 84 00 60 */ mulli r4, r4, 0x60
/* 802A6C80 002A28E0 28 00 00 02 */ cmplwi r0, 2
/* 802A6C84 002A28E4 7C 9D 22 14 */ add r4, r29, r4
/* 802A6C88 002A28E8 41 81 00 14 */ bgt lbl_802A6C9C
/* 802A6C8C 002A28EC A0 04 00 A0 */ lhz r0, 0xa0(r4)
/* 802A6C90 002A28F0 28 00 1C 10 */ cmplwi r0, 0x1c10
/* 802A6C94 002A28F4 40 82 00 08 */ bne lbl_802A6C9C
/* 802A6C98 002A28F8 3B 80 00 01 */ li r28, 1
lbl_802A6C9C:
/* 802A6C9C 002A28FC 38 05 FF FA */ addi r0, r5, -6
/* 802A6CA0 002A2900 28 00 00 02 */ cmplwi r0, 2
/* 802A6CA4 002A2904 41 81 00 38 */ bgt lbl_802A6CDC
/* 802A6CA8 002A2908 A0 04 00 A0 */ lhz r0, 0xa0(r4)
/* 802A6CAC 002A290C 28 00 1C 10 */ cmplwi r0, 0x1c10
/* 802A6CB0 002A2910 40 82 00 08 */ bne lbl_802A6CB8
/* 802A6CB4 002A2914 3B 80 00 01 */ li r28, 1
lbl_802A6CB8:
/* 802A6CB8 002A2918 88 04 00 C9 */ lbz r0, 0xc9(r4)
/* 802A6CBC 002A291C 7C 00 07 75 */ extsb. r0, r0
/* 802A6CC0 002A2920 41 82 00 0C */ beq lbl_802A6CCC
/* 802A6CC4 002A2924 3B 80 00 00 */ li r28, 0
/* 802A6CC8 002A2928 48 00 00 14 */ b lbl_802A6CDC
lbl_802A6CCC:
/* 802A6CCC 002A292C A0 04 00 CA */ lhz r0, 0xca(r4)
/* 802A6CD0 002A2930 28 00 14 50 */ cmplwi r0, 0x1450
/* 802A6CD4 002A2934 40 82 00 08 */ bne lbl_802A6CDC
/* 802A6CD8 002A2938 3B 80 00 01 */ li r28, 1
lbl_802A6CDC:
/* 802A6CDC 002A293C 2C 1C 00 00 */ cmpwi r28, 0
/* 802A6CE0 002A2940 40 80 00 10 */ bge lbl_802A6CF0
/* 802A6CE4 002A2944 38 00 00 00 */ li r0, 0
/* 802A6CE8 002A2948 B0 1D 09 12 */ sth r0, 0x912(r29)
/* 802A6CEC 002A294C 48 00 00 10 */ b lbl_802A6CFC
lbl_802A6CF0:
/* 802A6CF0 002A2950 A0 1D 09 12 */ lhz r0, 0x912(r29)
/* 802A6CF4 002A2954 7C 00 E2 14 */ add r0, r0, r28
/* 802A6CF8 002A2958 B0 1D 09 12 */ sth r0, 0x912(r29)
lbl_802A6CFC:
/* 802A6CFC 002A295C 4B FC 7A 89 */ bl OSRestoreInterrupts
/* 802A6D00 002A2960 A0 1D 09 12 */ lhz r0, 0x912(r29)
/* 802A6D04 002A2964 28 00 02 58 */ cmplwi r0, 0x258
/* 802A6D08 002A2968 40 81 00 18 */ ble lbl_802A6D20
/* 802A6D0C 002A296C 7F 9F F0 2E */ lwzx r28, r31, r30
/* 802A6D10 002A2970 4B FC 7A 4D */ bl OSDisableInterrupts
/* 802A6D14 002A2974 38 00 00 00 */ li r0, 0
/* 802A6D18 002A2978 98 1C 09 11 */ stb r0, 0x911(r28)
/* 802A6D1C 002A297C 4B FC 7A 69 */ bl OSRestoreInterrupts
lbl_802A6D20:
/* 802A6D20 002A2980 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A6D24 002A2984 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A6D28 002A2988 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A6D2C 002A298C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A6D30 002A2990 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A6D34 002A2994 7C 08 03 A6 */ mtlr r0
/* 802A6D38 002A2998 38 21 00 20 */ addi r1, r1, 0x20
/* 802A6D3C 002A299C 4E 80 00 20 */ blr
.global WPADiCheckContInputs
WPADiCheckContInputs:
/* 802A6D40 002A29A0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A6D44 002A29A4 7C 08 02 A6 */ mflr r0
/* 802A6D48 002A29A8 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A6D4C 002A29AC 39 61 00 30 */ addi r11, r1, 0x30
/* 802A6D50 002A29B0 4B F2 03 CD */ bl _savegpr_24
/* 802A6D54 002A29B4 3F E0 80 53 */ lis r31, lbl_80536D70@ha
/* 802A6D58 002A29B8 54 7E 10 3A */ slwi r30, r3, 2
/* 802A6D5C 002A29BC 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l
/* 802A6D60 002A29C0 7C 7B 1B 78 */ mr r27, r3
/* 802A6D64 002A29C4 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A6D68 002A29C8 3B 80 00 00 */ li r28, 0
/* 802A6D6C 002A29CC 80 1D 08 BC */ lwz r0, 0x8bc(r29)
/* 802A6D70 002A29D0 2C 00 FF FF */ cmpwi r0, -1
/* 802A6D74 002A29D4 41 82 01 38 */ beq lbl_802A6EAC
/* 802A6D78 002A29D8 4B FC 79 E5 */ bl OSDisableInterrupts
/* 802A6D7C 002A29DC 88 1D 08 C8 */ lbz r0, 0x8c8(r29)
/* 802A6D80 002A29E0 7C 79 1B 78 */ mr r25, r3
/* 802A6D84 002A29E4 7F A3 EB 78 */ mr r3, r29
/* 802A6D88 002A29E8 38 BD 00 40 */ addi r5, r29, 0x40
/* 802A6D8C 002A29EC 7C 00 00 34 */ cntlzw r0, r0
/* 802A6D90 002A29F0 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f
/* 802A6D94 002A29F4 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802A6D98 002A29F8 7C 9D 02 14 */ add r4, r29, r0
/* 802A6D9C 002A29FC 3B 04 00 A0 */ addi r24, r4, 0xa0
/* 802A6DA0 002A2A00 7F 04 C3 78 */ mr r4, r24
/* 802A6DA4 002A2A04 4B FF F2 E5 */ bl IsControllerDataChanged
/* 802A6DA8 002A2A08 2C 03 00 00 */ cmpwi r3, 0
/* 802A6DAC 002A2A0C 7C 7A 1B 78 */ mr r26, r3
/* 802A6DB0 002A2A10 41 82 00 14 */ beq lbl_802A6DC4
/* 802A6DB4 002A2A14 7F 04 C3 78 */ mr r4, r24
/* 802A6DB8 002A2A18 38 7D 00 40 */ addi r3, r29, 0x40
/* 802A6DBC 002A2A1C 38 A0 00 60 */ li r5, 0x60
/* 802A6DC0 002A2A20 4B D5 D2 41 */ bl memcpy
lbl_802A6DC4:
/* 802A6DC4 002A2A24 88 1D 00 69 */ lbz r0, 0x69(r29)
/* 802A6DC8 002A2A28 7C 00 07 75 */ extsb. r0, r0
/* 802A6DCC 002A2A2C 41 82 00 14 */ beq lbl_802A6DE0
/* 802A6DD0 002A2A30 38 7D 00 40 */ addi r3, r29, 0x40
/* 802A6DD4 002A2A34 38 80 00 00 */ li r4, 0
/* 802A6DD8 002A2A38 38 A0 00 60 */ li r5, 0x60
/* 802A6DDC 002A2A3C 4B D5 D3 29 */ bl memset
lbl_802A6DE0:
/* 802A6DE0 002A2A40 7F 23 CB 78 */ mr r3, r25
/* 802A6DE4 002A2A44 4B FC 79 A1 */ bl OSRestoreInterrupts
/* 802A6DE8 002A2A48 7F 63 DB 78 */ mr r3, r27
/* 802A6DEC 002A2A4C 4B FF FE 49 */ bl CheckButtonCombination
/* 802A6DF0 002A2A50 2C 1A 00 00 */ cmpwi r26, 0
/* 802A6DF4 002A2A54 41 82 00 18 */ beq lbl_802A6E0C
/* 802A6DF8 002A2A58 3B 80 00 01 */ li r28, 1
/* 802A6DFC 002A2A5C 4B FC B9 DD */ bl __OSGetSystemTime
/* 802A6E00 002A2A60 90 9D 08 F4 */ stw r4, 0x8f4(r29)
/* 802A6E04 002A2A64 90 7D 08 F0 */ stw r3, 0x8f0(r29)
/* 802A6E08 002A2A68 48 00 00 98 */ b lbl_802A6EA0
lbl_802A6E0C:
/* 802A6E0C 002A2A6C 88 0D AE 62 */ lbz r0, lbl_80640122-_SDA_BASE_(r13)
/* 802A6E10 002A2A70 2C 00 00 00 */ cmpwi r0, 0
/* 802A6E14 002A2A74 41 82 00 8C */ beq lbl_802A6EA0
/* 802A6E18 002A2A78 4B FC B9 C1 */ bl __OSGetSystemTime
/* 802A6E1C 002A2A7C 80 DD 08 F4 */ lwz r6, 0x8f4(r29)
/* 802A6E20 002A2A80 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802A6E24 002A2A84 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802A6E28 002A2A88 38 A0 00 00 */ li r5, 0
/* 802A6E2C 002A2A8C 7C 86 20 10 */ subfc r4, r6, r4
/* 802A6E30 002A2A90 80 FD 08 F0 */ lwz r7, 0x8f0(r29)
/* 802A6E34 002A2A94 54 06 F0 BE */ srwi r6, r0, 2
/* 802A6E38 002A2A98 7C 67 19 10 */ subfe r3, r7, r3
/* 802A6E3C 002A2A9C 4B F2 04 3D */ bl __div2i
/* 802A6E40 002A2AA0 88 0D AE 62 */ lbz r0, lbl_80640122-_SDA_BASE_(r13)
/* 802A6E44 002A2AA4 1C 00 00 3C */ mulli r0, r0, 0x3c
/* 802A6E48 002A2AA8 7C 04 00 00 */ cmpw r4, r0
/* 802A6E4C 002A2AAC 40 81 00 54 */ ble lbl_802A6EA0
/* 802A6E50 002A2AB0 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A6E54 002A2AB4 4B FC 79 09 */ bl OSDisableInterrupts
/* 802A6E58 002A2AB8 83 5D 08 BC */ lwz r26, 0x8bc(r29)
/* 802A6E5C 002A2ABC 4B FC 79 29 */ bl OSRestoreInterrupts
/* 802A6E60 002A2AC0 2C 1A FF FF */ cmpwi r26, -1
/* 802A6E64 002A2AC4 41 82 00 3C */ beq lbl_802A6EA0
/* 802A6E68 002A2AC8 4B FC 78 F5 */ bl OSDisableInterrupts
/* 802A6E6C 002A2ACC 88 1D 09 86 */ lbz r0, 0x986(r29)
/* 802A6E70 002A2AD0 2C 00 00 00 */ cmpwi r0, 0
/* 802A6E74 002A2AD4 41 82 00 0C */ beq lbl_802A6E80
/* 802A6E78 002A2AD8 4B FC 79 0D */ bl OSRestoreInterrupts
/* 802A6E7C 002A2ADC 48 00 00 24 */ b lbl_802A6EA0
lbl_802A6E80:
/* 802A6E80 002A2AE0 38 00 00 01 */ li r0, 1
/* 802A6E84 002A2AE4 98 1D 09 86 */ stb r0, 0x986(r29)
/* 802A6E88 002A2AE8 4B FC 78 FD */ bl OSRestoreInterrupts
/* 802A6E8C 002A2AEC 3C A0 80 2B */ lis r5, CloseCallback@ha
/* 802A6E90 002A2AF0 7F 63 DB 78 */ mr r3, r27
/* 802A6E94 002A2AF4 38 A5 8C 90 */ addi r5, r5, CloseCallback@l
/* 802A6E98 002A2AF8 38 80 00 00 */ li r4, 0
/* 802A6E9C 002A2AFC 48 00 25 41 */ bl WPADControlLed
lbl_802A6EA0:
/* 802A6EA0 002A2B00 2C 1C 00 00 */ cmpwi r28, 0
/* 802A6EA4 002A2B04 41 82 00 08 */ beq lbl_802A6EAC
/* 802A6EA8 002A2B08 4B FD 2F B5 */ bl __VIResetRFIdle
lbl_802A6EAC:
/* 802A6EAC 002A2B0C 39 61 00 30 */ addi r11, r1, 0x30
/* 802A6EB0 002A2B10 4B F2 02 B9 */ bl _restgpr_24
/* 802A6EB4 002A2B14 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A6EB8 002A2B18 7C 08 03 A6 */ mtlr r0
/* 802A6EBC 002A2B1C 38 21 00 30 */ addi r1, r1, 0x30
/* 802A6EC0 002A2B20 4E 80 00 20 */ blr
WPADiManageHandler:
/* 802A6EC4 002A2B24 94 21 FE A0 */ stwu r1, -0x160(r1)
/* 802A6EC8 002A2B28 7C 08 02 A6 */ mflr r0
/* 802A6ECC 002A2B2C 90 01 01 64 */ stw r0, 0x164(r1)
/* 802A6ED0 002A2B30 39 61 01 60 */ addi r11, r1, 0x160
/* 802A6ED4 002A2B34 4B F2 02 39 */ bl _savegpr_20
/* 802A6ED8 002A2B38 48 00 FA B9 */ bl WUDGetStatus
/* 802A6EDC 002A2B3C 2C 03 00 03 */ cmpwi r3, 3
/* 802A6EE0 002A2B40 41 82 00 3C */ beq lbl_802A6F1C
/* 802A6EE4 002A2B44 2C 03 00 02 */ cmpwi r3, 2
/* 802A6EE8 002A2B48 40 82 06 EC */ bne lbl_802A75D4
/* 802A6EEC 002A2B4C 80 0D AE 48 */ lwz r0, lbl_80640108-_SDA_BASE_(r13)
/* 802A6EF0 002A2B50 2C 00 00 00 */ cmpwi r0, 0
/* 802A6EF4 002A2B54 40 82 06 E0 */ bne lbl_802A75D4
/* 802A6EF8 002A2B58 38 00 00 01 */ li r0, 1
/* 802A6EFC 002A2B5C 3C 60 80 2B */ lis r3, WPADiConnCallback@ha
/* 802A6F00 002A2B60 90 0D AE 48 */ stw r0, lbl_80640108-_SDA_BASE_(r13)
/* 802A6F04 002A2B64 38 63 87 08 */ addi r3, r3, WPADiConnCallback@l
/* 802A6F08 002A2B68 48 00 FF 75 */ bl WUDSetHidConnCallback
/* 802A6F0C 002A2B6C 3C 60 80 2B */ lis r3, WPADiRecvCallback@ha
/* 802A6F10 002A2B70 38 63 8B 4C */ addi r3, r3, WPADiRecvCallback@l
/* 802A6F14 002A2B74 48 00 FF 0D */ bl WUDSetHidRecvCallback
/* 802A6F18 002A2B78 48 00 06 BC */ b lbl_802A75D4
lbl_802A6F1C:
/* 802A6F1C 002A2B7C 3F 20 80 53 */ lis r25, lbl_80536D70@ha
/* 802A6F20 002A2B80 3A E0 00 00 */ li r23, 0
/* 802A6F24 002A2B84 3B 39 6D 70 */ addi r25, r25, lbl_80536D70@l
/* 802A6F28 002A2B88 3B 4D AE 40 */ addi r26, r13, lbl_80640100-_SDA_BASE_
/* 802A6F2C 002A2B8C 3B 0D AE 44 */ addi r24, r13, lbl_80640104-_SDA_BASE_
/* 802A6F30 002A2B90 3B A0 00 00 */ li r29, 0
/* 802A6F34 002A2B94 3B C0 00 10 */ li r30, 0x10
/* 802A6F38 002A2B98 3B E0 00 01 */ li r31, 1
lbl_802A6F3C:
/* 802A6F3C 002A2B9C 88 1A 00 00 */ lbz r0, 0(r26)
/* 802A6F40 002A2BA0 3A C0 00 00 */ li r22, 0
/* 802A6F44 002A2BA4 28 00 00 05 */ cmplwi r0, 5
/* 802A6F48 002A2BA8 40 82 01 CC */ bne lbl_802A7114
/* 802A6F4C 002A2BAC 83 79 00 00 */ lwz r27, 0(r25)
/* 802A6F50 002A2BB0 80 1B 08 D8 */ lwz r0, 0x8d8(r27)
/* 802A6F54 002A2BB4 2C 00 00 00 */ cmpwi r0, 0
/* 802A6F58 002A2BB8 41 82 01 AC */ beq lbl_802A7104
/* 802A6F5C 002A2BBC 4B FC 78 01 */ bl OSDisableInterrupts
/* 802A6F60 002A2BC0 7C 7C 1B 78 */ mr r28, r3
/* 802A6F64 002A2BC4 4B FC 77 F9 */ bl OSDisableInterrupts
/* 802A6F68 002A2BC8 88 9B 05 EC */ lbz r4, 0x5ec(r27)
/* 802A6F6C 002A2BCC 88 1B 05 ED */ lbz r0, 0x5ed(r27)
/* 802A6F70 002A2BD0 7C 04 00 50 */ subf r0, r4, r0
/* 802A6F74 002A2BD4 7C 14 07 75 */ extsb. r20, r0
/* 802A6F78 002A2BD8 40 80 00 10 */ bge lbl_802A6F88
/* 802A6F7C 002A2BDC 80 1B 05 F4 */ lwz r0, 0x5f4(r27)
/* 802A6F80 002A2BE0 7C 14 02 14 */ add r0, r20, r0
/* 802A6F84 002A2BE4 7C 14 07 74 */ extsb r20, r0
lbl_802A6F88:
/* 802A6F88 002A2BE8 4B FC 77 FD */ bl OSRestoreInterrupts
/* 802A6F8C 002A2BEC 2C 14 00 00 */ cmpwi r20, 0
/* 802A6F90 002A2BF0 40 82 00 14 */ bne lbl_802A6FA4
/* 802A6F94 002A2BF4 7F 83 E3 78 */ mr r3, r28
/* 802A6F98 002A2BF8 4B FC 77 ED */ bl OSRestoreInterrupts
/* 802A6F9C 002A2BFC 38 00 00 00 */ li r0, 0
/* 802A6FA0 002A2C00 48 00 00 30 */ b lbl_802A6FD0
lbl_802A6FA4:
/* 802A6FA4 002A2C04 88 1B 05 EC */ lbz r0, 0x5ec(r27)
/* 802A6FA8 002A2C08 38 61 00 C8 */ addi r3, r1, 0xc8
/* 802A6FAC 002A2C0C 80 9B 05 F0 */ lwz r4, 0x5f0(r27)
/* 802A6FB0 002A2C10 38 A0 00 30 */ li r5, 0x30
/* 802A6FB4 002A2C14 7C 00 07 74 */ extsb r0, r0
/* 802A6FB8 002A2C18 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A6FBC 002A2C1C 7C 84 02 14 */ add r4, r4, r0
/* 802A6FC0 002A2C20 4B D5 D0 41 */ bl memcpy
/* 802A6FC4 002A2C24 7F 83 E3 78 */ mr r3, r28
/* 802A6FC8 002A2C28 4B FC 77 BD */ bl OSRestoreInterrupts
/* 802A6FCC 002A2C2C 38 00 00 01 */ li r0, 1
lbl_802A6FD0:
/* 802A6FD0 002A2C30 2C 00 00 00 */ cmpwi r0, 0
/* 802A6FD4 002A2C34 41 82 01 30 */ beq lbl_802A7104
/* 802A6FD8 002A2C38 80 01 00 C8 */ lwz r0, 0xc8(r1)
/* 802A6FDC 002A2C3C 28 00 00 12 */ cmplwi r0, 0x12
/* 802A6FE0 002A2C40 41 82 00 10 */ beq lbl_802A6FF0
/* 802A6FE4 002A2C44 80 1B 08 40 */ lwz r0, 0x840(r27)
/* 802A6FE8 002A2C48 2C 00 00 00 */ cmpwi r0, 0
/* 802A6FEC 002A2C4C 41 82 01 18 */ beq lbl_802A7104
lbl_802A6FF0:
/* 802A6FF0 002A2C50 82 C1 00 C8 */ lwz r22, 0xc8(r1)
/* 802A6FF4 002A2C54 7E E3 BB 78 */ mr r3, r23
/* 802A6FF8 002A2C58 82 A1 00 CC */ lwz r21, 0xcc(r1)
/* 802A6FFC 002A2C5C 38 81 00 F8 */ addi r4, r1, 0xf8
/* 802A7000 002A2C60 82 81 00 D0 */ lwz r20, 0xd0(r1)
/* 802A7004 002A2C64 81 81 00 D4 */ lwz r12, 0xd4(r1)
/* 802A7008 002A2C68 81 61 00 D8 */ lwz r11, 0xd8(r1)
/* 802A700C 002A2C6C 81 41 00 DC */ lwz r10, 0xdc(r1)
/* 802A7010 002A2C70 81 21 00 E0 */ lwz r9, 0xe0(r1)
/* 802A7014 002A2C74 81 01 00 E4 */ lwz r8, 0xe4(r1)
/* 802A7018 002A2C78 80 E1 00 E8 */ lwz r7, 0xe8(r1)
/* 802A701C 002A2C7C 80 C1 00 EC */ lwz r6, 0xec(r1)
/* 802A7020 002A2C80 80 A1 00 F0 */ lwz r5, 0xf0(r1)
/* 802A7024 002A2C84 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 802A7028 002A2C88 92 C1 00 F8 */ stw r22, 0xf8(r1)
/* 802A702C 002A2C8C 92 A1 00 FC */ stw r21, 0xfc(r1)
/* 802A7030 002A2C90 92 81 01 00 */ stw r20, 0x100(r1)
/* 802A7034 002A2C94 91 81 01 04 */ stw r12, 0x104(r1)
/* 802A7038 002A2C98 91 61 01 08 */ stw r11, 0x108(r1)
/* 802A703C 002A2C9C 91 41 01 0C */ stw r10, 0x10c(r1)
/* 802A7040 002A2CA0 91 21 01 10 */ stw r9, 0x110(r1)
/* 802A7044 002A2CA4 91 01 01 14 */ stw r8, 0x114(r1)
/* 802A7048 002A2CA8 90 E1 01 18 */ stw r7, 0x118(r1)
/* 802A704C 002A2CAC 90 C1 01 1C */ stw r6, 0x11c(r1)
/* 802A7050 002A2CB0 90 A1 01 20 */ stw r5, 0x120(r1)
/* 802A7054 002A2CB4 90 01 01 24 */ stw r0, 0x124(r1)
/* 802A7058 002A2CB8 4B FF ED 51 */ bl WPADiSendData
/* 802A705C 002A2CBC 2C 03 00 00 */ cmpwi r3, 0
/* 802A7060 002A2CC0 40 82 00 A4 */ bne lbl_802A7104
/* 802A7064 002A2CC4 4B FC 76 F9 */ bl OSDisableInterrupts
/* 802A7068 002A2CC8 7C 7C 1B 78 */ mr r28, r3
/* 802A706C 002A2CCC 4B FC 76 F1 */ bl OSDisableInterrupts
/* 802A7070 002A2CD0 88 9B 05 EC */ lbz r4, 0x5ec(r27)
/* 802A7074 002A2CD4 88 1B 05 ED */ lbz r0, 0x5ed(r27)
/* 802A7078 002A2CD8 7C 04 00 50 */ subf r0, r4, r0
/* 802A707C 002A2CDC 7C 14 07 75 */ extsb. r20, r0
/* 802A7080 002A2CE0 40 80 00 10 */ bge lbl_802A7090
/* 802A7084 002A2CE4 80 1B 05 F4 */ lwz r0, 0x5f4(r27)
/* 802A7088 002A2CE8 7C 14 02 14 */ add r0, r20, r0
/* 802A708C 002A2CEC 7C 14 07 74 */ extsb r20, r0
lbl_802A7090:
/* 802A7090 002A2CF0 4B FC 76 F5 */ bl OSRestoreInterrupts
/* 802A7094 002A2CF4 2C 14 00 00 */ cmpwi r20, 0
/* 802A7098 002A2CF8 40 82 00 10 */ bne lbl_802A70A8
/* 802A709C 002A2CFC 7F 83 E3 78 */ mr r3, r28
/* 802A70A0 002A2D00 4B FC 76 E5 */ bl OSRestoreInterrupts
/* 802A70A4 002A2D04 48 00 00 58 */ b lbl_802A70FC
lbl_802A70A8:
/* 802A70A8 002A2D08 88 1B 05 EC */ lbz r0, 0x5ec(r27)
/* 802A70AC 002A2D0C 38 80 00 00 */ li r4, 0
/* 802A70B0 002A2D10 80 7B 05 F0 */ lwz r3, 0x5f0(r27)
/* 802A70B4 002A2D14 38 A0 00 30 */ li r5, 0x30
/* 802A70B8 002A2D18 7C 00 07 74 */ extsb r0, r0
/* 802A70BC 002A2D1C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A70C0 002A2D20 7C 63 02 14 */ add r3, r3, r0
/* 802A70C4 002A2D24 4B D5 D0 41 */ bl memset
/* 802A70C8 002A2D28 88 1B 05 EC */ lbz r0, 0x5ec(r27)
/* 802A70CC 002A2D2C 7F 83 E3 78 */ mr r3, r28
/* 802A70D0 002A2D30 80 9B 05 F4 */ lwz r4, 0x5f4(r27)
/* 802A70D4 002A2D34 7C 06 07 74 */ extsb r6, r0
/* 802A70D8 002A2D38 38 84 FF FF */ addi r4, r4, -1
/* 802A70DC 002A2D3C 7C A4 30 50 */ subf r5, r4, r6
/* 802A70E0 002A2D40 38 06 00 01 */ addi r0, r6, 1
/* 802A70E4 002A2D44 7C 86 20 50 */ subf r4, r6, r4
/* 802A70E8 002A2D48 7C A4 20 F8 */ nor r4, r5, r4
/* 802A70EC 002A2D4C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A70F0 002A2D50 7C 00 20 78 */ andc r0, r0, r4
/* 802A70F4 002A2D54 98 1B 05 EC */ stb r0, 0x5ec(r27)
/* 802A70F8 002A2D58 4B FC 76 8D */ bl OSRestoreInterrupts
lbl_802A70FC:
/* 802A70FC 002A2D5C 3A C0 00 01 */ li r22, 1
/* 802A7100 002A2D60 48 00 00 08 */ b lbl_802A7108
lbl_802A7104:
/* 802A7104 002A2D64 3A C0 00 00 */ li r22, 0
lbl_802A7108:
/* 802A7108 002A2D68 2C 16 00 00 */ cmpwi r22, 0
/* 802A710C 002A2D6C 41 82 00 08 */ beq lbl_802A7114
/* 802A7110 002A2D70 9B BA 00 00 */ stb r29, 0(r26)
lbl_802A7114:
/* 802A7114 002A2D74 2C 16 00 00 */ cmpwi r22, 0
/* 802A7118 002A2D78 40 82 01 AC */ bne lbl_802A72C4
/* 802A711C 002A2D7C 83 99 00 00 */ lwz r28, 0(r25)
/* 802A7120 002A2D80 80 1C 08 D8 */ lwz r0, 0x8d8(r28)
/* 802A7124 002A2D84 2C 00 00 00 */ cmpwi r0, 0
/* 802A7128 002A2D88 41 82 01 94 */ beq lbl_802A72BC
/* 802A712C 002A2D8C 4B FC 76 31 */ bl OSDisableInterrupts
/* 802A7130 002A2D90 7C 7B 1B 78 */ mr r27, r3
/* 802A7134 002A2D94 4B FC 76 29 */ bl OSDisableInterrupts
/* 802A7138 002A2D98 88 9C 01 60 */ lbz r4, 0x160(r28)
/* 802A713C 002A2D9C 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A7140 002A2DA0 7C 04 00 50 */ subf r0, r4, r0
/* 802A7144 002A2DA4 7C 14 07 75 */ extsb. r20, r0
/* 802A7148 002A2DA8 40 80 00 10 */ bge lbl_802A7158
/* 802A714C 002A2DAC 80 1C 01 68 */ lwz r0, 0x168(r28)
/* 802A7150 002A2DB0 7C 14 02 14 */ add r0, r20, r0
/* 802A7154 002A2DB4 7C 14 07 74 */ extsb r20, r0
lbl_802A7158:
/* 802A7158 002A2DB8 4B FC 76 2D */ bl OSRestoreInterrupts
/* 802A715C 002A2DBC 2C 14 00 00 */ cmpwi r20, 0
/* 802A7160 002A2DC0 40 82 00 14 */ bne lbl_802A7174
/* 802A7164 002A2DC4 7F 63 DB 78 */ mr r3, r27
/* 802A7168 002A2DC8 4B FC 76 1D */ bl OSRestoreInterrupts
/* 802A716C 002A2DCC 38 00 00 00 */ li r0, 0
/* 802A7170 002A2DD0 48 00 00 30 */ b lbl_802A71A0
lbl_802A7174:
/* 802A7174 002A2DD4 88 1C 01 60 */ lbz r0, 0x160(r28)
/* 802A7178 002A2DD8 38 61 00 68 */ addi r3, r1, 0x68
/* 802A717C 002A2DDC 80 9C 01 64 */ lwz r4, 0x164(r28)
/* 802A7180 002A2DE0 38 A0 00 30 */ li r5, 0x30
/* 802A7184 002A2DE4 7C 00 07 74 */ extsb r0, r0
/* 802A7188 002A2DE8 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A718C 002A2DEC 7C 84 02 14 */ add r4, r4, r0
/* 802A7190 002A2DF0 4B D5 CE 71 */ bl memcpy
/* 802A7194 002A2DF4 7F 63 DB 78 */ mr r3, r27
/* 802A7198 002A2DF8 4B FC 75 ED */ bl OSRestoreInterrupts
/* 802A719C 002A2DFC 38 00 00 01 */ li r0, 1
lbl_802A71A0:
/* 802A71A0 002A2E00 2C 00 00 00 */ cmpwi r0, 0
/* 802A71A4 002A2E04 41 82 01 18 */ beq lbl_802A72BC
/* 802A71A8 002A2E08 82 81 00 68 */ lwz r20, 0x68(r1)
/* 802A71AC 002A2E0C 7E E3 BB 78 */ mr r3, r23
/* 802A71B0 002A2E10 82 A1 00 6C */ lwz r21, 0x6c(r1)
/* 802A71B4 002A2E14 38 81 00 98 */ addi r4, r1, 0x98
/* 802A71B8 002A2E18 83 61 00 70 */ lwz r27, 0x70(r1)
/* 802A71BC 002A2E1C 81 81 00 74 */ lwz r12, 0x74(r1)
/* 802A71C0 002A2E20 81 61 00 78 */ lwz r11, 0x78(r1)
/* 802A71C4 002A2E24 81 41 00 7C */ lwz r10, 0x7c(r1)
/* 802A71C8 002A2E28 81 21 00 80 */ lwz r9, 0x80(r1)
/* 802A71CC 002A2E2C 81 01 00 84 */ lwz r8, 0x84(r1)
/* 802A71D0 002A2E30 80 E1 00 88 */ lwz r7, 0x88(r1)
/* 802A71D4 002A2E34 80 C1 00 8C */ lwz r6, 0x8c(r1)
/* 802A71D8 002A2E38 80 A1 00 90 */ lwz r5, 0x90(r1)
/* 802A71DC 002A2E3C 80 01 00 94 */ lwz r0, 0x94(r1)
/* 802A71E0 002A2E40 92 81 00 98 */ stw r20, 0x98(r1)
/* 802A71E4 002A2E44 92 A1 00 9C */ stw r21, 0x9c(r1)
/* 802A71E8 002A2E48 93 61 00 A0 */ stw r27, 0xa0(r1)
/* 802A71EC 002A2E4C 91 81 00 A4 */ stw r12, 0xa4(r1)
/* 802A71F0 002A2E50 91 61 00 A8 */ stw r11, 0xa8(r1)
/* 802A71F4 002A2E54 91 41 00 AC */ stw r10, 0xac(r1)
/* 802A71F8 002A2E58 91 21 00 B0 */ stw r9, 0xb0(r1)
/* 802A71FC 002A2E5C 91 01 00 B4 */ stw r8, 0xb4(r1)
/* 802A7200 002A2E60 90 E1 00 B8 */ stw r7, 0xb8(r1)
/* 802A7204 002A2E64 90 C1 00 BC */ stw r6, 0xbc(r1)
/* 802A7208 002A2E68 90 A1 00 C0 */ stw r5, 0xc0(r1)
/* 802A720C 002A2E6C 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 802A7210 002A2E70 4B FF EB 99 */ bl WPADiSendData
/* 802A7214 002A2E74 2C 03 00 00 */ cmpwi r3, 0
/* 802A7218 002A2E78 40 82 00 A4 */ bne lbl_802A72BC
/* 802A721C 002A2E7C 4B FC 75 41 */ bl OSDisableInterrupts
/* 802A7220 002A2E80 7C 7B 1B 78 */ mr r27, r3
/* 802A7224 002A2E84 4B FC 75 39 */ bl OSDisableInterrupts
/* 802A7228 002A2E88 88 9C 01 60 */ lbz r4, 0x160(r28)
/* 802A722C 002A2E8C 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A7230 002A2E90 7C 04 00 50 */ subf r0, r4, r0
/* 802A7234 002A2E94 7C 14 07 75 */ extsb. r20, r0
/* 802A7238 002A2E98 40 80 00 10 */ bge lbl_802A7248
/* 802A723C 002A2E9C 80 1C 01 68 */ lwz r0, 0x168(r28)
/* 802A7240 002A2EA0 7C 14 02 14 */ add r0, r20, r0
/* 802A7244 002A2EA4 7C 14 07 74 */ extsb r20, r0
lbl_802A7248:
/* 802A7248 002A2EA8 4B FC 75 3D */ bl OSRestoreInterrupts
/* 802A724C 002A2EAC 2C 14 00 00 */ cmpwi r20, 0
/* 802A7250 002A2EB0 40 82 00 10 */ bne lbl_802A7260
/* 802A7254 002A2EB4 7F 63 DB 78 */ mr r3, r27
/* 802A7258 002A2EB8 4B FC 75 2D */ bl OSRestoreInterrupts
/* 802A725C 002A2EBC 48 00 00 58 */ b lbl_802A72B4
lbl_802A7260:
/* 802A7260 002A2EC0 88 1C 01 60 */ lbz r0, 0x160(r28)
/* 802A7264 002A2EC4 38 80 00 00 */ li r4, 0
/* 802A7268 002A2EC8 80 7C 01 64 */ lwz r3, 0x164(r28)
/* 802A726C 002A2ECC 38 A0 00 30 */ li r5, 0x30
/* 802A7270 002A2ED0 7C 00 07 74 */ extsb r0, r0
/* 802A7274 002A2ED4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A7278 002A2ED8 7C 63 02 14 */ add r3, r3, r0
/* 802A727C 002A2EDC 4B D5 CE 89 */ bl memset
/* 802A7280 002A2EE0 88 1C 01 60 */ lbz r0, 0x160(r28)
/* 802A7284 002A2EE4 7F 63 DB 78 */ mr r3, r27
/* 802A7288 002A2EE8 80 9C 01 68 */ lwz r4, 0x168(r28)
/* 802A728C 002A2EEC 7C 06 07 74 */ extsb r6, r0
/* 802A7290 002A2EF0 38 84 FF FF */ addi r4, r4, -1
/* 802A7294 002A2EF4 7C A4 30 50 */ subf r5, r4, r6
/* 802A7298 002A2EF8 38 06 00 01 */ addi r0, r6, 1
/* 802A729C 002A2EFC 7C 86 20 50 */ subf r4, r6, r4
/* 802A72A0 002A2F00 7C A4 20 F8 */ nor r4, r5, r4
/* 802A72A4 002A2F04 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A72A8 002A2F08 7C 00 20 78 */ andc r0, r0, r4
/* 802A72AC 002A2F0C 98 1C 01 60 */ stb r0, 0x160(r28)
/* 802A72B0 002A2F10 4B FC 74 D5 */ bl OSRestoreInterrupts
lbl_802A72B4:
/* 802A72B4 002A2F14 38 00 00 01 */ li r0, 1
/* 802A72B8 002A2F18 48 00 00 08 */ b lbl_802A72C0
lbl_802A72BC:
/* 802A72BC 002A2F1C 38 00 00 00 */ li r0, 0
lbl_802A72C0:
/* 802A72C0 002A2F20 7E D6 03 78 */ or r22, r22, r0
lbl_802A72C4:
/* 802A72C4 002A2F24 82 B9 00 00 */ lwz r21, 0(r25)
/* 802A72C8 002A2F28 80 15 08 BC */ lwz r0, 0x8bc(r21)
/* 802A72CC 002A2F2C 2C 00 FF FF */ cmpwi r0, -1
/* 802A72D0 002A2F30 41 82 00 F4 */ beq lbl_802A73C4
/* 802A72D4 002A2F34 2C 16 00 01 */ cmpwi r22, 1
/* 802A72D8 002A2F38 41 82 00 34 */ beq lbl_802A730C
/* 802A72DC 002A2F3C 4B FC 74 81 */ bl OSDisableInterrupts
/* 802A72E0 002A2F40 88 95 01 60 */ lbz r4, 0x160(r21)
/* 802A72E4 002A2F44 88 15 01 61 */ lbz r0, 0x161(r21)
/* 802A72E8 002A2F48 7C 04 00 50 */ subf r0, r4, r0
/* 802A72EC 002A2F4C 7C 14 07 75 */ extsb. r20, r0
/* 802A72F0 002A2F50 40 80 00 10 */ bge lbl_802A7300
/* 802A72F4 002A2F54 80 15 01 68 */ lwz r0, 0x168(r21)
/* 802A72F8 002A2F58 7C 14 02 14 */ add r0, r20, r0
/* 802A72FC 002A2F5C 7C 14 07 74 */ extsb r20, r0
lbl_802A7300:
/* 802A7300 002A2F60 4B FC 74 85 */ bl OSRestoreInterrupts
/* 802A7304 002A2F64 2C 14 00 00 */ cmpwi r20, 0
/* 802A7308 002A2F68 40 81 00 10 */ ble lbl_802A7318
lbl_802A730C:
/* 802A730C 002A2F6C 80 79 00 00 */ lwz r3, 0(r25)
/* 802A7310 002A2F70 93 A3 08 D0 */ stw r29, 0x8d0(r3)
/* 802A7314 002A2F74 48 00 00 8C */ b lbl_802A73A0
lbl_802A7318:
/* 802A7318 002A2F78 88 18 00 00 */ lbz r0, 0(r24)
/* 802A731C 002A2F7C 28 00 00 05 */ cmplwi r0, 5
/* 802A7320 002A2F80 40 82 00 80 */ bne lbl_802A73A0
/* 802A7324 002A2F84 B3 E1 00 22 */ sth r31, 0x22(r1)
/* 802A7328 002A2F88 7E E3 BB 78 */ mr r3, r23
/* 802A732C 002A2F8C 80 B9 00 00 */ lwz r5, 0(r25)
/* 802A7330 002A2F90 38 81 00 38 */ addi r4, r1, 0x38
/* 802A7334 002A2F94 9B A1 00 0C */ stb r29, 0xc(r1)
/* 802A7338 002A2F98 81 81 00 10 */ lwz r12, 0x10(r1)
/* 802A733C 002A2F9C 93 A5 08 D0 */ stw r29, 0x8d0(r5)
/* 802A7340 002A2FA0 82 C1 00 0C */ lwz r22, 0xc(r1)
/* 802A7344 002A2FA4 81 61 00 14 */ lwz r11, 0x14(r1)
/* 802A7348 002A2FA8 81 41 00 18 */ lwz r10, 0x18(r1)
/* 802A734C 002A2FAC 81 21 00 1C */ lwz r9, 0x1c(r1)
/* 802A7350 002A2FB0 81 01 00 20 */ lwz r8, 0x20(r1)
/* 802A7354 002A2FB4 80 E1 00 24 */ lwz r7, 0x24(r1)
/* 802A7358 002A2FB8 80 C1 00 28 */ lwz r6, 0x28(r1)
/* 802A735C 002A2FBC 80 A1 00 2C */ lwz r5, 0x2c(r1)
/* 802A7360 002A2FC0 80 01 00 30 */ lwz r0, 0x30(r1)
/* 802A7364 002A2FC4 93 C1 00 08 */ stw r30, 8(r1)
/* 802A7368 002A2FC8 93 A1 00 34 */ stw r29, 0x34(r1)
/* 802A736C 002A2FCC 93 C1 00 38 */ stw r30, 0x38(r1)
/* 802A7370 002A2FD0 92 C1 00 3C */ stw r22, 0x3c(r1)
/* 802A7374 002A2FD4 91 81 00 40 */ stw r12, 0x40(r1)
/* 802A7378 002A2FD8 91 61 00 44 */ stw r11, 0x44(r1)
/* 802A737C 002A2FDC 91 41 00 48 */ stw r10, 0x48(r1)
/* 802A7380 002A2FE0 91 21 00 4C */ stw r9, 0x4c(r1)
/* 802A7384 002A2FE4 91 01 00 50 */ stw r8, 0x50(r1)
/* 802A7388 002A2FE8 90 E1 00 54 */ stw r7, 0x54(r1)
/* 802A738C 002A2FEC 90 C1 00 58 */ stw r6, 0x58(r1)
/* 802A7390 002A2FF0 90 A1 00 5C */ stw r5, 0x5c(r1)
/* 802A7394 002A2FF4 90 01 00 60 */ stw r0, 0x60(r1)
/* 802A7398 002A2FF8 93 A1 00 64 */ stw r29, 0x64(r1)
/* 802A739C 002A2FFC 48 00 53 DD */ bl __SendData
lbl_802A73A0:
/* 802A73A0 002A3000 80 79 00 00 */ lwz r3, 0(r25)
/* 802A73A4 002A3004 80 03 08 D0 */ lwz r0, 0x8d0(r3)
/* 802A73A8 002A3008 2C 00 00 00 */ cmpwi r0, 0
/* 802A73AC 002A300C 41 82 00 10 */ beq lbl_802A73BC
/* 802A73B0 002A3010 88 78 00 00 */ lbz r3, 0(r24)
/* 802A73B4 002A3014 38 03 00 01 */ addi r0, r3, 1
/* 802A73B8 002A3018 48 00 00 08 */ b lbl_802A73C0
lbl_802A73BC:
/* 802A73BC 002A301C 38 00 00 00 */ li r0, 0
lbl_802A73C0:
/* 802A73C0 002A3020 98 18 00 00 */ stb r0, 0(r24)
lbl_802A73C4:
/* 802A73C4 002A3024 88 0D AE 3C */ lbz r0, lbl_806400FC-_SDA_BASE_(r13)
/* 802A73C8 002A3028 28 00 00 05 */ cmplwi r0, 5
/* 802A73CC 002A302C 40 82 00 0C */ bne lbl_802A73D8
/* 802A73D0 002A3030 7E E3 BB 78 */ mr r3, r23
/* 802A73D4 002A3034 4B FF F9 6D */ bl WPADiCheckContInputs
lbl_802A73D8:
/* 802A73D8 002A3038 A0 0D AE 3A */ lhz r0, lbl_806400FA-_SDA_BASE_(r13)
/* 802A73DC 002A303C 28 00 00 0A */ cmplwi r0, 0xa
/* 802A73E0 002A3040 40 82 00 0C */ bne lbl_802A73EC
/* 802A73E4 002A3044 7E E3 BB 78 */ mr r3, r23
/* 802A73E8 002A3048 4B FF EB 9D */ bl WPADiRadioSensitivity
lbl_802A73EC:
/* 802A73EC 002A304C 88 7A 00 00 */ lbz r3, 0(r26)
/* 802A73F0 002A3050 28 03 00 05 */ cmplwi r3, 5
/* 802A73F4 002A3054 38 03 00 01 */ addi r0, r3, 1
/* 802A73F8 002A3058 40 82 00 08 */ bne lbl_802A7400
/* 802A73FC 002A305C 7C 60 1B 78 */ mr r0, r3
lbl_802A7400:
/* 802A7400 002A3060 3A F7 00 01 */ addi r23, r23, 1
/* 802A7404 002A3064 98 1A 00 00 */ stb r0, 0(r26)
/* 802A7408 002A3068 2C 17 00 04 */ cmpwi r23, 4
/* 802A740C 002A306C 3B 5A 00 01 */ addi r26, r26, 1
/* 802A7410 002A3070 3B 39 00 04 */ addi r25, r25, 4
/* 802A7414 002A3074 3B 18 00 01 */ addi r24, r24, 1
/* 802A7418 002A3078 41 80 FB 24 */ blt lbl_802A6F3C
/* 802A741C 002A307C A0 0D AE 3E */ lhz r0, lbl_806400FE-_SDA_BASE_(r13)
/* 802A7420 002A3080 28 00 EA 60 */ cmplwi r0, 0xea60
/* 802A7424 002A3084 40 82 00 68 */ bne lbl_802A748C
/* 802A7428 002A3088 3E C0 80 00 */ lis r22, 0x800031A2@ha
/* 802A742C 002A308C 38 80 00 01 */ li r4, 1
/* 802A7430 002A3090 38 76 31 A2 */ addi r3, r22, 0x800031A2@l
/* 802A7434 002A3094 4B FC 31 F5 */ bl DCInvalidateRange
/* 802A7438 002A3098 3C 60 80 44 */ lis r3, lbl_8043C080@ha
/* 802A743C 002A309C 38 63 C0 80 */ addi r3, r3, lbl_8043C080@l
/* 802A7440 002A30A0 4C C6 31 82 */ crclr 6
/* 802A7444 002A30A4 48 00 C4 1D */ bl DEBUGPrint
/* 802A7448 002A30A8 88 6D AE 4C */ lbz r3, lbl_8064010C-_SDA_BASE_(r13)
/* 802A744C 002A30AC 88 16 31 A2 */ lbz r0, 0x31a2(r22)
/* 802A7450 002A30B0 7C 63 07 74 */ extsb r3, r3
/* 802A7454 002A30B4 7C 03 00 00 */ cmpw r3, r0
/* 802A7458 002A30B8 41 82 00 34 */ beq lbl_802A748C
/* 802A745C 002A30BC 4B FC 73 01 */ bl OSDisableInterrupts
/* 802A7460 002A30C0 88 16 31 A2 */ lbz r0, 0x31a2(r22)
/* 802A7464 002A30C4 98 0D AE 4C */ stb r0, lbl_8064010C-_SDA_BASE_(r13)
/* 802A7468 002A30C8 4B FC 73 1D */ bl OSRestoreInterrupts
/* 802A746C 002A30CC 3C 60 80 44 */ lis r3, lbl_8043C0A8@ha
/* 802A7470 002A30D0 88 96 31 A2 */ lbz r4, 0x31a2(r22)
/* 802A7474 002A30D4 38 63 C0 A8 */ addi r3, r3, lbl_8043C0A8@l
/* 802A7478 002A30D8 4C C6 31 82 */ crclr 6
/* 802A747C 002A30DC 48 00 C3 E5 */ bl DEBUGPrint
/* 802A7480 002A30E0 88 0D AE 4C */ lbz r0, lbl_8064010C-_SDA_BASE_(r13)
/* 802A7484 002A30E4 7C 03 07 74 */ extsb r3, r0
/* 802A7488 002A30E8 48 00 F8 AD */ bl WUDSetDisableChannel
lbl_802A748C:
/* 802A748C 002A30EC A0 CD AE 3A */ lhz r6, lbl_806400FA-_SDA_BASE_(r13)
/* 802A7490 002A30F0 3C 60 00 01 */ lis r3, 0x0000EA60@ha
/* 802A7494 002A30F4 38 03 EA 60 */ addi r0, r3, 0x0000EA60@l
/* 802A7498 002A30F8 89 2D AE 3C */ lbz r9, lbl_806400FC-_SDA_BASE_(r13)
/* 802A749C 002A30FC 38 86 FF F6 */ addi r4, r6, -10
/* 802A74A0 002A3100 20 66 00 0A */ subfic r3, r6, 0xa
/* 802A74A4 002A3104 7C 83 18 F8 */ nor r3, r4, r3
/* 802A74A8 002A3108 A1 4D AE 3E */ lhz r10, lbl_806400FE-_SDA_BASE_(r13)
/* 802A74AC 002A310C 7C 68 FE 70 */ srawi r8, r3, 0x1f
/* 802A74B0 002A3110 38 E6 00 01 */ addi r7, r6, 1
/* 802A74B4 002A3114 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 802A74B8 002A3118 38 89 FF FB */ addi r4, r9, -5
/* 802A74BC 002A311C 20 69 00 05 */ subfic r3, r9, 5
/* 802A74C0 002A3120 7C E7 40 78 */ andc r7, r7, r8
/* 802A74C4 002A3124 7C 85 18 F8 */ nor r5, r4, r3
/* 802A74C8 002A3128 7C 80 50 50 */ subf r4, r0, r10
/* 802A74CC 002A312C 7C 6A 00 50 */ subf r3, r10, r0
/* 802A74D0 002A3130 88 0D AE 59 */ lbz r0, lbl_80640119-_SDA_BASE_(r13)
/* 802A74D4 002A3134 7C A6 FE 70 */ srawi r6, r5, 0x1f
/* 802A74D8 002A3138 38 A9 00 01 */ addi r5, r9, 1
/* 802A74DC 002A313C 7C 84 18 F8 */ nor r4, r4, r3
/* 802A74E0 002A3140 38 6A 00 01 */ addi r3, r10, 1
/* 802A74E4 002A3144 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A74E8 002A3148 7C A5 30 78 */ andc r5, r5, r6
/* 802A74EC 002A314C 7C 63 20 78 */ andc r3, r3, r4
/* 802A74F0 002A3150 2C 00 00 00 */ cmpwi r0, 0
/* 802A74F4 002A3154 B0 ED AE 3A */ sth r7, lbl_806400FA-_SDA_BASE_(r13)
/* 802A74F8 002A3158 98 AD AE 3C */ stb r5, lbl_806400FC-_SDA_BASE_(r13)
/* 802A74FC 002A315C B0 6D AE 3E */ sth r3, lbl_806400FE-_SDA_BASE_(r13)
/* 802A7500 002A3160 41 82 00 34 */ beq lbl_802A7534
/* 802A7504 002A3164 48 04 34 E9 */ bl SCCheckStatus
/* 802A7508 002A3168 2C 03 00 00 */ cmpwi r3, 0
/* 802A750C 002A316C 40 82 00 28 */ bne lbl_802A7534
/* 802A7510 002A3170 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
/* 802A7514 002A3174 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
/* 802A7518 002A3178 48 04 50 F5 */ bl SCSetBtDeviceInfoArray
/* 802A751C 002A317C 2C 03 00 01 */ cmpwi r3, 1
/* 802A7520 002A3180 40 82 00 14 */ bne lbl_802A7534
/* 802A7524 002A3184 38 60 00 00 */ li r3, 0
/* 802A7528 002A3188 48 04 48 A5 */ bl SCFlushAsync
/* 802A752C 002A318C 38 00 00 00 */ li r0, 0
/* 802A7530 002A3190 98 0D AE 59 */ stb r0, lbl_80640119-_SDA_BASE_(r13)
lbl_802A7534:
/* 802A7534 002A3194 88 0D AE 4E */ lbz r0, lbl_8064010E-_SDA_BASE_(r13)
/* 802A7538 002A3198 2C 00 00 00 */ cmpwi r0, 0
/* 802A753C 002A319C 41 82 00 94 */ beq lbl_802A75D0
/* 802A7540 002A31A0 48 04 34 AD */ bl SCCheckStatus
/* 802A7544 002A31A4 2C 03 00 00 */ cmpwi r3, 0
/* 802A7548 002A31A8 40 82 00 88 */ bne lbl_802A75D0
/* 802A754C 002A31AC 48 04 50 CD */ bl SCGetBtDpdSensibility
/* 802A7550 002A31B0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802A7554 002A31B4 28 00 00 01 */ cmplwi r0, 1
/* 802A7558 002A31B8 40 80 00 08 */ bge ENCiCheckBreakType
/* 802A755C 002A31BC 38 00 00 01 */ li r0, 1
ENCiCheckBreakType:
/* 802A7560 002A31C0 28 00 00 05 */ cmplwi r0, 5
/* 802A7564 002A31C4 40 81 00 08 */ ble lbl_802A756C
/* 802A7568 002A31C8 38 00 00 05 */ li r0, 5
lbl_802A756C:
/* 802A756C 002A31CC 98 0D AE 61 */ stb r0, lbl_80640121-_SDA_BASE_(r13)
/* 802A7570 002A31D0 48 04 51 6D */ bl SCGetWpadSensorBarPosition
/* 802A7574 002A31D4 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 802A7578 002A31D8 38 03 FF FF */ addi r0, r3, -1
/* 802A757C 002A31DC 7C 00 00 34 */ cntlzw r0, r0
/* 802A7580 002A31E0 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f
/* 802A7584 002A31E4 98 0D AE 60 */ stb r0, lbl_80640120-_SDA_BASE_(r13)
/* 802A7588 002A31E8 48 04 50 F9 */ bl SCGetWpadMotorMode
/* 802A758C 002A31EC 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 802A7590 002A31F0 38 03 FF FF */ addi r0, r3, -1
/* 802A7594 002A31F4 7C 00 00 34 */ cntlzw r0, r0
/* 802A7598 002A31F8 54 00 D9 7E */ srwi r0, r0, 5
/* 802A759C 002A31FC 90 0D AE 5C */ stw r0, lbl_8064011C-_SDA_BASE_(r13)
/* 802A75A0 002A3200 48 04 51 91 */ bl SCGetWpadSpeakerVolume
/* 802A75A4 002A3204 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802A75A8 002A3208 7C 64 1B 78 */ mr r4, r3
/* 802A75AC 002A320C 40 82 00 08 */ bne lbl_802A75B4
/* 802A75B0 002A3210 38 80 00 00 */ li r4, 0
lbl_802A75B4:
/* 802A75B4 002A3214 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802A75B8 002A3218 28 00 00 7F */ cmplwi r0, 0x7f
/* 802A75BC 002A321C 41 80 00 08 */ blt lbl_802A75C4
/* 802A75C0 002A3220 38 80 00 7F */ li r4, 0x7f
lbl_802A75C4:
/* 802A75C4 002A3224 38 00 00 00 */ li r0, 0
/* 802A75C8 002A3228 98 8D AE 5A */ stb r4, lbl_8064011A-_SDA_BASE_(r13)
/* 802A75CC 002A322C 98 0D AE 4E */ stb r0, lbl_8064010E-_SDA_BASE_(r13)
lbl_802A75D0:
/* 802A75D0 002A3230 48 01 B5 09 */ bl BTA_HhGetAclQueueInfo
lbl_802A75D4:
/* 802A75D4 002A3234 39 61 01 60 */ addi r11, r1, 0x160
/* 802A75D8 002A3238 4B F1 FB 81 */ bl _restgpr_20
/* 802A75DC 002A323C 80 01 01 64 */ lwz r0, 0x164(r1)
/* 802A75E0 002A3240 7C 08 03 A6 */ mtlr r0
/* 802A75E4 002A3244 38 21 01 60 */ addi r1, r1, 0x160
/* 802A75E8 002A3248 4E 80 00 20 */ blr
WPADiManageHandler0:
/* 802A75EC 002A324C 3D 00 80 53 */ lis r8, lbl_80536D80@ha
/* 802A75F0 002A3250 3C E0 80 2A */ lis r7, WPADiManageHandler@ha
/* 802A75F4 002A3254 39 08 6D 80 */ addi r8, r8, lbl_80536D80@l
/* 802A75F8 002A3258 38 A0 00 00 */ li r5, 0
/* 802A75FC 002A325C 38 E7 6E C4 */ addi r7, r7, WPADiManageHandler@l
/* 802A7600 002A3260 38 C0 00 00 */ li r6, 0
/* 802A7604 002A3264 39 08 10 00 */ addi r8, r8, 0x1000
/* 802A7608 002A3268 4B FC 3A 58 */ b OSSwitchFiberEx
.global __ClearControlBlock
__ClearControlBlock:
/* 802A760C 002A326C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A7610 002A3270 7C 08 02 A6 */ mflr r0
/* 802A7614 002A3274 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A7618 002A3278 39 61 00 20 */ addi r11, r1, 0x20
/* 802A761C 002A327C 4B F1 FB 0D */ bl _savegpr_27
/* 802A7620 002A3280 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A7624 002A3284 54 60 10 3A */ slwi r0, r3, 2
/* 802A7628 002A3288 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A762C 002A328C 3B 80 00 00 */ li r28, 0
/* 802A7630 002A3290 7F 64 00 2E */ lwzx r27, r4, r0
/* 802A7634 002A3294 3B A0 FF FF */ li r29, -1
/* 802A7638 002A3298 38 00 00 FD */ li r0, 0xfd
/* 802A763C 002A329C 3B C0 00 0C */ li r30, 0xc
/* 802A7640 002A32A0 9B 9B 08 C8 */ stb r28, 0x8c8(r27)
/* 802A7644 002A32A4 7C 7F 1B 78 */ mr r31, r3
/* 802A7648 002A32A8 93 9B 08 50 */ stw r28, 0x850(r27)
/* 802A764C 002A32AC 93 9B 08 D4 */ stw r28, 0x8d4(r27)
/* 802A7650 002A32B0 93 9B 08 9C */ stw r28, 0x89c(r27)
/* 802A7654 002A32B4 93 9B 08 A0 */ stw r28, 0x8a0(r27)
/* 802A7658 002A32B8 93 9B 08 A8 */ stw r28, 0x8a8(r27)
/* 802A765C 002A32BC 93 9B 08 AC */ stw r28, 0x8ac(r27)
/* 802A7660 002A32C0 93 9B 08 B0 */ stw r28, 0x8b0(r27)
/* 802A7664 002A32C4 93 9B 08 B4 */ stw r28, 0x8b4(r27)
/* 802A7668 002A32C8 93 9B 08 B8 */ stw r28, 0x8b8(r27)
/* 802A766C 002A32CC 93 BB 08 BC */ stw r29, 0x8bc(r27)
/* 802A7670 002A32D0 98 1B 08 C1 */ stb r0, 0x8c1(r27)
/* 802A7674 002A32D4 9B 9B 08 C2 */ stb r28, 0x8c2(r27)
/* 802A7678 002A32D8 9B 9B 09 11 */ stb r28, 0x911(r27)
/* 802A767C 002A32DC B3 9B 09 12 */ sth r28, 0x912(r27)
/* 802A7680 002A32E0 9B 9B 08 C0 */ stb r28, 0x8c0(r27)
/* 802A7684 002A32E4 9B DB 08 CA */ stb r30, 0x8ca(r27)
/* 802A7688 002A32E8 9B 9B 08 CB */ stb r28, 0x8cb(r27)
/* 802A768C 002A32EC 9B 9B 08 CC */ stb r28, 0x8cc(r27)
/* 802A7690 002A32F0 B3 9B 08 F8 */ sth r28, 0x8f8(r27)
/* 802A7694 002A32F4 B3 9B 08 FA */ sth r28, 0x8fa(r27)
/* 802A7698 002A32F8 B3 9B 08 FC */ sth r28, 0x8fc(r27)
/* 802A769C 002A32FC B3 9B 08 FE */ sth r28, 0x8fe(r27)
/* 802A76A0 002A3300 B3 9B 09 00 */ sth r28, 0x900(r27)
/* 802A76A4 002A3304 B3 9B 09 02 */ sth r28, 0x902(r27)
/* 802A76A8 002A3308 4B FC B1 31 */ bl __OSGetSystemTime
/* 802A76AC 002A330C 90 9B 08 F4 */ stw r4, 0x8f4(r27)
/* 802A76B0 002A3310 90 7B 08 F0 */ stw r3, 0x8f0(r27)
/* 802A76B4 002A3314 4B FC B1 25 */ bl __OSGetSystemTime
/* 802A76B8 002A3318 90 9B 09 0C */ stw r4, 0x90c(r27)
/* 802A76BC 002A331C 38 00 00 01 */ li r0, 1
/* 802A76C0 002A3320 38 80 00 00 */ li r4, 0
/* 802A76C4 002A3324 38 A0 00 18 */ li r5, 0x18
/* 802A76C8 002A3328 90 7B 09 08 */ stw r3, 0x908(r27)
/* 802A76CC 002A332C 38 7B 08 38 */ addi r3, r27, 0x838
/* 802A76D0 002A3330 9B 9B 09 10 */ stb r28, 0x910(r27)
/* 802A76D4 002A3334 9B 9B 08 C9 */ stb r28, 0x8c9(r27)
/* 802A76D8 002A3338 93 9B 08 C4 */ stw r28, 0x8c4(r27)
/* 802A76DC 002A333C 93 9B 09 74 */ stw r28, 0x974(r27)
/* 802A76E0 002A3340 93 9B 09 78 */ stw r28, 0x978(r27)
/* 802A76E4 002A3344 B3 9B 09 80 */ sth r28, 0x980(r27)
/* 802A76E8 002A3348 93 9B 09 7C */ stw r28, 0x97c(r27)
/* 802A76EC 002A334C 9B BB 08 C3 */ stb r29, 0x8c3(r27)
/* 802A76F0 002A3350 93 9B 08 D8 */ stw r28, 0x8d8(r27)
/* 802A76F4 002A3354 93 9B 08 DC */ stw r28, 0x8dc(r27)
/* 802A76F8 002A3358 93 9B 08 E0 */ stw r28, 0x8e0(r27)
/* 802A76FC 002A335C 98 1B 08 CD */ stb r0, 0x8cd(r27)
/* 802A7700 002A3360 9B 9B 08 CE */ stb r28, 0x8ce(r27)
/* 802A7704 002A3364 9B 9B 08 CF */ stb r28, 0x8cf(r27)
/* 802A7708 002A3368 9B 9B 09 82 */ stb r28, 0x982(r27)
/* 802A770C 002A336C 9B 9B 09 83 */ stb r28, 0x983(r27)
/* 802A7710 002A3370 B3 9B 09 84 */ sth r28, 0x984(r27)
/* 802A7714 002A3374 98 1B 09 86 */ stb r0, 0x986(r27)
/* 802A7718 002A3378 9B 9B 09 8C */ stb r28, 0x98c(r27)
/* 802A771C 002A337C 93 9B 09 88 */ stw r28, 0x988(r27)
/* 802A7720 002A3380 4B D5 C9 E5 */ bl memset
/* 802A7724 002A3384 38 7B 09 34 */ addi r3, r27, 0x934
/* 802A7728 002A3388 38 80 00 00 */ li r4, 0
/* 802A772C 002A338C 38 A0 00 40 */ li r5, 0x40
/* 802A7730 002A3390 4B D5 C9 D5 */ bl memset
/* 802A7734 002A3394 38 7B 00 A0 */ addi r3, r27, 0xa0
/* 802A7738 002A3398 38 80 00 00 */ li r4, 0
/* 802A773C 002A339C 38 A0 00 C0 */ li r5, 0xc0
/* 802A7740 002A33A0 4B D5 C9 C5 */ bl memset
/* 802A7744 002A33A4 38 7B 00 40 */ addi r3, r27, 0x40
/* 802A7748 002A33A8 38 80 00 00 */ li r4, 0
/* 802A774C 002A33AC 38 A0 00 60 */ li r5, 0x60
/* 802A7750 002A33B0 4B D5 C9 B5 */ bl memset
/* 802A7754 002A33B4 38 7B 08 54 */ addi r3, r27, 0x854
/* 802A7758 002A33B8 38 80 00 00 */ li r4, 0
/* 802A775C 002A33BC 38 A0 00 2E */ li r5, 0x2e
/* 802A7760 002A33C0 4B D5 C9 A5 */ bl memset
/* 802A7764 002A33C4 38 7B 08 82 */ addi r3, r27, 0x882
/* 802A7768 002A33C8 38 80 00 00 */ li r4, 0
/* 802A776C 002A33CC 38 A0 00 1A */ li r5, 0x1a
/* 802A7770 002A33D0 4B D5 C9 95 */ bl memset
/* 802A7774 002A33D4 38 7B 09 14 */ addi r3, r27, 0x914
/* 802A7778 002A33D8 38 80 00 00 */ li r4, 0
/* 802A777C 002A33DC 38 A0 00 10 */ li r5, 0x10
/* 802A7780 002A33E0 4B D5 C9 85 */ bl memset
/* 802A7784 002A33E4 38 7B 09 24 */ addi r3, r27, 0x924
/* 802A7788 002A33E8 38 80 00 00 */ li r4, 0
/* 802A778C 002A33EC 38 A0 00 08 */ li r5, 8
/* 802A7790 002A33F0 4B D5 C9 75 */ bl memset
/* 802A7794 002A33F4 38 7B 09 2C */ addi r3, r27, 0x92c
/* 802A7798 002A33F8 38 80 00 00 */ li r4, 0
/* 802A779C 002A33FC 38 A0 00 08 */ li r5, 8
/* 802A77A0 002A3400 4B D5 C9 65 */ bl memset
/* 802A77A4 002A3404 7F 63 DB 78 */ mr r3, r27
/* 802A77A8 002A3408 38 80 00 00 */ li r4, 0
/* 802A77AC 002A340C 38 A0 00 38 */ li r5, 0x38
/* 802A77B0 002A3410 4B D5 C9 55 */ bl memset
/* 802A77B4 002A3414 93 BB 00 38 */ stw r29, 0x38(r27)
/* 802A77B8 002A3418 38 9B 01 6C */ addi r4, r27, 0x16c
/* 802A77BC 002A341C 38 60 00 18 */ li r3, 0x18
/* 802A77C0 002A3420 38 1B 05 F8 */ addi r0, r27, 0x5f8
/* 802A77C4 002A3424 93 BB 00 3C */ stw r29, 0x3c(r27)
/* 802A77C8 002A3428 90 9B 01 64 */ stw r4, 0x164(r27)
/* 802A77CC 002A342C 90 7B 01 68 */ stw r3, 0x168(r27)
/* 802A77D0 002A3430 90 1B 05 F0 */ stw r0, 0x5f0(r27)
/* 802A77D4 002A3434 93 DB 05 F4 */ stw r30, 0x5f4(r27)
/* 802A77D8 002A3438 4B FC 6F 85 */ bl OSDisableInterrupts
/* 802A77DC 002A343C 9B 9B 01 60 */ stb r28, 0x160(r27)
/* 802A77E0 002A3440 7C 7D 1B 78 */ mr r29, r3
/* 802A77E4 002A3444 38 80 00 00 */ li r4, 0
/* 802A77E8 002A3448 9B 9B 01 61 */ stb r28, 0x161(r27)
/* 802A77EC 002A344C 80 1B 01 68 */ lwz r0, 0x168(r27)
/* 802A77F0 002A3450 80 7B 01 64 */ lwz r3, 0x164(r27)
/* 802A77F4 002A3454 1C A0 00 30 */ mulli r5, r0, 0x30
/* 802A77F8 002A3458 4B D5 C9 0D */ bl memset
/* 802A77FC 002A345C 7F A3 EB 78 */ mr r3, r29
/* 802A7800 002A3460 4B FC 6F 85 */ bl OSRestoreInterrupts
/* 802A7804 002A3464 4B FC 6F 59 */ bl OSDisableInterrupts
/* 802A7808 002A3468 9B 9B 05 EC */ stb r28, 0x5ec(r27)
/* 802A780C 002A346C 7C 7D 1B 78 */ mr r29, r3
/* 802A7810 002A3470 38 80 00 00 */ li r4, 0
/* 802A7814 002A3474 9B 9B 05 ED */ stb r28, 0x5ed(r27)
/* 802A7818 002A3478 80 1B 05 F4 */ lwz r0, 0x5f4(r27)
/* 802A781C 002A347C 80 7B 05 F0 */ lwz r3, 0x5f0(r27)
/* 802A7820 002A3480 1C A0 00 30 */ mulli r5, r0, 0x30
/* 802A7824 002A3484 4B D5 C8 E1 */ bl memset
/* 802A7828 002A3488 7F A3 EB 78 */ mr r3, r29
/* 802A782C 002A348C 4B FC 6F 59 */ bl OSRestoreInterrupts
/* 802A7830 002A3490 1C 1F 00 14 */ mulli r0, r31, 0x14
/* 802A7834 002A3494 3C 80 80 54 */ lis r4, lbl_8053A480@ha
/* 802A7838 002A3498 38 6D AE 40 */ addi r3, r13, lbl_80640100-_SDA_BASE_
/* 802A783C 002A349C 38 84 A4 80 */ addi r4, r4, lbl_8053A480@l
/* 802A7840 002A34A0 7F 83 F9 AE */ stbx r28, r3, r31
/* 802A7844 002A34A4 38 6D AE 44 */ addi r3, r13, lbl_80640104-_SDA_BASE_
/* 802A7848 002A34A8 7F 84 01 2E */ stwx r28, r4, r0
/* 802A784C 002A34AC 7C 84 02 14 */ add r4, r4, r0
/* 802A7850 002A34B0 39 61 00 20 */ addi r11, r1, 0x20
/* 802A7854 002A34B4 93 84 00 04 */ stw r28, 4(r4)
/* 802A7858 002A34B8 B3 84 00 08 */ sth r28, 8(r4)
/* 802A785C 002A34BC 93 84 00 0C */ stw r28, 0xc(r4)
/* 802A7860 002A34C0 93 84 00 10 */ stw r28, 0x10(r4)
/* 802A7864 002A34C4 7F 83 F9 AE */ stbx r28, r3, r31
/* 802A7868 002A34C8 4B F1 F9 0D */ bl _restgpr_27
/* 802A786C 002A34CC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A7870 002A34D0 7C 08 03 A6 */ mtlr r0
/* 802A7874 002A34D4 38 21 00 20 */ addi r1, r1, 0x20
/* 802A7878 002A34D8 4E 80 00 20 */ blr
.global WPADiInitSub
WPADiInitSub:
/* 802A787C 002A34DC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A7880 002A34E0 7C 08 02 A6 */ mflr r0
/* 802A7884 002A34E4 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A7888 002A34E8 39 61 00 30 */ addi r11, r1, 0x30
/* 802A788C 002A34EC 4B F1 F8 91 */ bl _savegpr_24
/* 802A7890 002A34F0 3F E0 80 53 */ lis r31, lbl_80536D40@ha
/* 802A7894 002A34F4 3B FF 6D 40 */ addi r31, r31, lbl_80536D40@l
/* 802A7898 002A34F8 4B FC 6E C5 */ bl OSDisableInterrupts
/* 802A789C 002A34FC 3C 80 CD 00 */ lis r4, 0xCD0000C0@ha
/* 802A78A0 002A3500 80 04 00 C0 */ lwz r0, 0xCD0000C0@l(r4)
/* 802A78A4 002A3504 60 00 01 00 */ ori r0, r0, 0x100
/* 802A78A8 002A3508 90 04 00 C0 */ stw r0, 0xc0(r4)
/* 802A78AC 002A350C 4B FC 6E D9 */ bl OSRestoreInterrupts
/* 802A78B0 002A3510 38 9F 10 40 */ addi r4, r31, 0x1040
/* 802A78B4 002A3514 38 00 FF FF */ li r0, -1
/* 802A78B8 002A3518 98 04 00 00 */ stb r0, 0(r4)
/* 802A78BC 002A351C 3C 60 80 44 */ lis r3, lbl_8043C0C0@ha
/* 802A78C0 002A3520 38 63 C0 C0 */ addi r3, r3, lbl_8043C0C0@l
/* 802A78C4 002A3524 98 04 00 01 */ stb r0, 1(r4)
/* 802A78C8 002A3528 98 04 00 02 */ stb r0, 2(r4)
/* 802A78CC 002A352C 98 04 00 03 */ stb r0, 3(r4)
/* 802A78D0 002A3530 98 04 00 04 */ stb r0, 4(r4)
/* 802A78D4 002A3534 98 04 00 05 */ stb r0, 5(r4)
/* 802A78D8 002A3538 98 04 00 06 */ stb r0, 6(r4)
/* 802A78DC 002A353C 98 04 00 07 */ stb r0, 7(r4)
/* 802A78E0 002A3540 98 04 00 08 */ stb r0, 8(r4)
/* 802A78E4 002A3544 98 04 00 09 */ stb r0, 9(r4)
/* 802A78E8 002A3548 98 04 00 0A */ stb r0, 0xa(r4)
/* 802A78EC 002A354C 98 04 00 0B */ stb r0, 0xb(r4)
/* 802A78F0 002A3550 98 04 00 0C */ stb r0, 0xc(r4)
/* 802A78F4 002A3554 98 04 00 0D */ stb r0, 0xd(r4)
/* 802A78F8 002A3558 98 04 00 0E */ stb r0, 0xe(r4)
/* 802A78FC 002A355C 98 04 00 0F */ stb r0, 0xf(r4)
/* 802A7900 002A3560 4C C6 31 82 */ crclr 6
/* 802A7904 002A3564 48 00 BF 5D */ bl DEBUGPrint
/* 802A7908 002A3568 3B BF 10 60 */ addi r29, r31, 0x1060
/* 802A790C 002A356C 3B 9F 00 30 */ addi r28, r31, 0x30
/* 802A7910 002A3570 3B 00 00 00 */ li r24, 0
/* 802A7914 002A3574 3B 6D AE 50 */ addi r27, r13, lbl_80640110-_SDA_BASE_
/* 802A7918 002A3578 3B 4D AE 40 */ addi r26, r13, lbl_80640100-_SDA_BASE_
/* 802A791C 002A357C 3B 2D AE 44 */ addi r25, r13, lbl_80640104-_SDA_BASE_
/* 802A7920 002A3580 3B C0 00 00 */ li r30, 0
lbl_802A7924:
/* 802A7924 002A3584 93 BC 00 00 */ stw r29, 0(r28)
/* 802A7928 002A3588 7F 03 C3 78 */ mr r3, r24
/* 802A792C 002A358C 9B DB 00 00 */ stb r30, 0(r27)
/* 802A7930 002A3590 80 9C 00 00 */ lwz r4, 0(r28)
/* 802A7934 002A3594 93 C4 08 A4 */ stw r30, 0x8a4(r4)
/* 802A7938 002A3598 4B FF FC D5 */ bl __ClearControlBlock
/* 802A793C 002A359C 38 7D 08 E4 */ addi r3, r29, 0x8e4
/* 802A7940 002A35A0 4B FC 99 A9 */ bl OSInitThreadQueue
/* 802A7944 002A35A4 3B 18 00 01 */ addi r24, r24, 1
/* 802A7948 002A35A8 9B DA 00 00 */ stb r30, 0(r26)
/* 802A794C 002A35AC 2C 18 00 04 */ cmpwi r24, 4
/* 802A7950 002A35B0 3B 9C 00 04 */ addi r28, r28, 4
/* 802A7954 002A35B4 9B D9 00 00 */ stb r30, 0(r25)
/* 802A7958 002A35B8 3B 7B 00 01 */ addi r27, r27, 1
/* 802A795C 002A35BC 3B 5A 00 01 */ addi r26, r26, 1
/* 802A7960 002A35C0 3B 39 00 01 */ addi r25, r25, 1
/* 802A7964 002A35C4 3B BD 09 A0 */ addi r29, r29, 0x9a0
/* 802A7968 002A35C8 41 80 FF BC */ blt lbl_802A7924
/* 802A796C 002A35CC 38 00 00 05 */ li r0, 5
/* 802A7970 002A35D0 98 0D AE 62 */ stb r0, lbl_80640122-_SDA_BASE_(r13)
/* 802A7974 002A35D4 4B FC 1C ED */ bl OSGetAppGamename
/* 802A7978 002A35D8 90 6D AE 54 */ stw r3, lbl_80640114-_SDA_BASE_(r13)
/* 802A797C 002A35DC 4B FC 1D 31 */ bl OSGetAppType
/* 802A7980 002A35E0 98 6D AE 58 */ stb r3, lbl_80640118-_SDA_BASE_(r13)
/* 802A7984 002A35E4 48 04 4C 95 */ bl SCGetBtDpdSensibility
/* 802A7988 002A35E8 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802A798C 002A35EC 28 00 00 01 */ cmplwi r0, 1
/* 802A7990 002A35F0 40 80 00 08 */ bge lbl_802A7998
/* 802A7994 002A35F4 38 00 00 01 */ li r0, 1
lbl_802A7998:
/* 802A7998 002A35F8 28 00 00 05 */ cmplwi r0, 5
/* 802A799C 002A35FC 40 81 00 08 */ ble lbl_802A79A4
/* 802A79A0 002A3600 38 00 00 05 */ li r0, 5
lbl_802A79A4:
/* 802A79A4 002A3604 98 0D AE 61 */ stb r0, lbl_80640121-_SDA_BASE_(r13)
/* 802A79A8 002A3608 48 04 4D 35 */ bl SCGetWpadSensorBarPosition
/* 802A79AC 002A360C 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 802A79B0 002A3610 38 03 FF FF */ addi r0, r3, -1
/* 802A79B4 002A3614 7C 00 00 34 */ cntlzw r0, r0
/* 802A79B8 002A3618 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f
/* 802A79BC 002A361C 98 0D AE 60 */ stb r0, lbl_80640120-_SDA_BASE_(r13)
/* 802A79C0 002A3620 48 04 4C C1 */ bl SCGetWpadMotorMode
/* 802A79C4 002A3624 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 802A79C8 002A3628 38 03 FF FF */ addi r0, r3, -1
/* 802A79CC 002A362C 7C 00 00 34 */ cntlzw r0, r0
/* 802A79D0 002A3630 54 00 D9 7E */ srwi r0, r0, 5
/* 802A79D4 002A3634 90 0D AE 5C */ stw r0, lbl_8064011C-_SDA_BASE_(r13)
/* 802A79D8 002A3638 48 04 4D 59 */ bl SCGetWpadSpeakerVolume
/* 802A79DC 002A363C 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802A79E0 002A3640 7C 66 1B 78 */ mr r6, r3
/* 802A79E4 002A3644 40 82 00 08 */ bne lbl_802A79EC
/* 802A79E8 002A3648 38 C0 00 00 */ li r6, 0
lbl_802A79EC:
/* 802A79EC 002A364C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802A79F0 002A3650 28 00 00 7F */ cmplwi r0, 0x7f
/* 802A79F4 002A3654 41 80 00 08 */ blt lbl_802A79FC
/* 802A79F8 002A3658 38 C0 00 7F */ li r6, 0x7f
lbl_802A79FC:
/* 802A79FC 002A365C 38 A0 00 00 */ li r5, 0
/* 802A7A00 002A3660 38 80 00 01 */ li r4, 1
/* 802A7A04 002A3664 38 00 FF FF */ li r0, -1
/* 802A7A08 002A3668 98 CD AE 5A */ stb r6, lbl_8064011A-_SDA_BASE_(r13)
/* 802A7A0C 002A366C 38 7F 00 00 */ addi r3, r31, 0
/* 802A7A10 002A3670 B0 AD AE 3A */ sth r5, lbl_806400FA-_SDA_BASE_(r13)
/* 802A7A14 002A3674 98 AD AE 3C */ stb r5, lbl_806400FC-_SDA_BASE_(r13)
/* 802A7A18 002A3678 B0 AD AE 3E */ sth r5, lbl_806400FE-_SDA_BASE_(r13)
/* 802A7A1C 002A367C 98 AD AE 4D */ stb r5, lbl_8064010D-_SDA_BASE_(r13)
/* 802A7A20 002A3680 98 AD AE 59 */ stb r5, lbl_80640119-_SDA_BASE_(r13)
/* 802A7A24 002A3684 98 8D AE 4E */ stb r4, lbl_8064010E-_SDA_BASE_(r13)
/* 802A7A28 002A3688 98 0D AE 4C */ stb r0, lbl_8064010C-_SDA_BASE_(r13)
/* 802A7A2C 002A368C 4B FC 1C F9 */ bl OSCreateAlarm
/* 802A7A30 002A3690 4B FC AD 89 */ bl OSGetTime
/* 802A7A34 002A3694 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802A7A38 002A3698 3D 20 80 2A */ lis r9, WPADiManageHandler0@ha
/* 802A7A3C 002A369C 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802A7A40 002A36A0 3C C0 10 62 */ lis r6, 0x10624DD3@ha
/* 802A7A44 002A36A4 7C 65 1B 78 */ mr r5, r3
/* 802A7A48 002A36A8 39 29 75 EC */ addi r9, r9, WPADiManageHandler0@l
/* 802A7A4C 002A36AC 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
/* 802A7A50 002A36B0 54 00 F0 BE */ srwi r0, r0, 2
/* 802A7A54 002A36B4 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802A7A58 002A36B8 7C 86 23 78 */ mr r6, r4
/* 802A7A5C 002A36BC 38 7F 00 00 */ addi r3, r31, 0
/* 802A7A60 002A36C0 38 E0 00 00 */ li r7, 0
/* 802A7A64 002A36C4 54 08 D1 BE */ srwi r8, r0, 6
/* 802A7A68 002A36C8 4B FC 1F 8D */ bl OSSetPeriodicAlarm
/* 802A7A6C 002A36CC 80 6D 89 A0 */ lwz r3, lbl_8063DC60-_SDA_BASE_(r13)
/* 802A7A70 002A36D0 4B FC 1B E1 */ bl OSRegisterVersion
/* 802A7A74 002A36D4 39 61 00 30 */ addi r11, r1, 0x30
/* 802A7A78 002A36D8 4B F1 F6 F1 */ bl _restgpr_24
/* 802A7A7C 002A36DC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A7A80 002A36E0 7C 08 03 A6 */ mtlr r0
/* 802A7A84 002A36E4 38 21 00 30 */ addi r1, r1, 0x30
/* 802A7A88 002A36E8 4E 80 00 20 */ blr
.global WPADInit
WPADInit:
/* 802A7A8C 002A36EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A7A90 002A36F0 7C 08 02 A6 */ mflr r0
/* 802A7A94 002A36F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A7A98 002A36F8 88 0D AE 38 */ lbz r0, lbl_806400F8-_SDA_BASE_(r13)
/* 802A7A9C 002A36FC 2C 00 00 00 */ cmpwi r0, 0
/* 802A7AA0 002A3700 40 82 00 18 */ bne lbl_802A7AB8
/* 802A7AA4 002A3704 3C 60 80 44 */ lis r3, lbl_8043C070@ha
/* 802A7AA8 002A3708 38 63 C0 70 */ addi r3, r3, lbl_8043C070@l
/* 802A7AAC 002A370C 4B FC 81 E5 */ bl OSRegisterShutdownFunction
/* 802A7AB0 002A3710 38 00 00 01 */ li r0, 1
/* 802A7AB4 002A3714 98 0D AE 38 */ stb r0, lbl_806400F8-_SDA_BASE_(r13)
lbl_802A7AB8:
/* 802A7AB8 002A3718 48 00 EC 09 */ bl WUDInit
/* 802A7ABC 002A371C 2C 03 00 00 */ cmpwi r3, 0
/* 802A7AC0 002A3720 41 82 00 10 */ beq lbl_802A7AD0
/* 802A7AC4 002A3724 38 00 00 00 */ li r0, 0
/* 802A7AC8 002A3728 90 0D AE 48 */ stw r0, lbl_80640108-_SDA_BASE_(r13)
/* 802A7ACC 002A372C 4B FF FD B1 */ bl WPADiInitSub
lbl_802A7AD0:
/* 802A7AD0 002A3730 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A7AD4 002A3734 7C 08 03 A6 */ mtlr r0
/* 802A7AD8 002A3738 38 21 00 10 */ addi r1, r1, 0x10
/* 802A7ADC 002A373C 4E 80 00 20 */ blr
.global WPADSetDisableChannel
WPADSetDisableChannel:
/* 802A7AE0 002A3740 38 60 00 01 */ li r3, 1
/* 802A7AE4 002A3744 4E 80 00 20 */ blr
.global WPADStartFastSimpleSync
WPADStartFastSimpleSync:
/* 802A7AE8 002A3748 48 00 F1 28 */ b WUDStartFastSyncSimple
.global WPADStopSimpleSync
WPADStopSimpleSync:
/* 802A7AEC 002A374C 48 00 F1 B0 */ b WUDStopSyncSimple
.global WPADSetSimpleSyncCallback
WPADSetSimpleSyncCallback:
/* 802A7AF0 002A3750 48 00 EF 90 */ b WUDSetSyncSimpleCallback
.global WPADRegisterAllocator
WPADRegisterAllocator:
/* 802A7AF4 002A3754 48 00 EC C4 */ b WUDRegisterAllocator
.global WPADGetStatus
WPADGetStatus:
/* 802A7AF8 002A3758 48 00 EE 98 */ b WUDGetStatus
.global WPADGetRadioSensitivity
WPADGetRadioSensitivity:
/* 802A7AFC 002A375C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A7B00 002A3760 7C 08 02 A6 */ mflr r0
/* 802A7B04 002A3764 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A7B08 002A3768 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A7B0C 002A376C 54 60 10 3A */ slwi r0, r3, 2
/* 802A7B10 002A3770 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A7B14 002A3774 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A7B18 002A3778 7F E4 00 2E */ lwzx r31, r4, r0
/* 802A7B1C 002A377C 4B FC 6C 41 */ bl OSDisableInterrupts
/* 802A7B20 002A3780 8B FF 09 83 */ lbz r31, 0x983(r31)
/* 802A7B24 002A3784 4B FC 6C 61 */ bl OSRestoreInterrupts
/* 802A7B28 002A3788 7F E3 FB 78 */ mr r3, r31
/* 802A7B2C 002A378C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A7B30 002A3790 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A7B34 002A3794 7C 08 03 A6 */ mtlr r0
/* 802A7B38 002A3798 38 21 00 10 */ addi r1, r1, 0x10
/* 802A7B3C 002A379C 4E 80 00 20 */ blr
.global WPADGetSensorBarPosition
WPADGetSensorBarPosition:
/* 802A7B40 002A37A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A7B44 002A37A4 7C 08 02 A6 */ mflr r0
/* 802A7B48 002A37A8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A7B4C 002A37AC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A7B50 002A37B0 4B FC 6C 0D */ bl OSDisableInterrupts
/* 802A7B54 002A37B4 8B ED AE 60 */ lbz r31, lbl_80640120-_SDA_BASE_(r13)
/* 802A7B58 002A37B8 4B FC 6C 2D */ bl OSRestoreInterrupts
/* 802A7B5C 002A37BC 7F E3 FB 78 */ mr r3, r31
/* 802A7B60 002A37C0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A7B64 002A37C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A7B68 002A37C8 7C 08 03 A6 */ mtlr r0
/* 802A7B6C 002A37CC 38 21 00 10 */ addi r1, r1, 0x10
/* 802A7B70 002A37D0 4E 80 00 20 */ blr
setupCallback:
/* 802A7B74 002A37D4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A7B78 002A37D8 7C 08 02 A6 */ mflr r0
/* 802A7B7C 002A37DC 2C 04 FF FF */ cmpwi r4, -1
/* 802A7B80 002A37E0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A7B84 002A37E4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A7B88 002A37E8 3F E0 80 53 */ lis r31, lbl_80536D70@ha
/* 802A7B8C 002A37EC 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l
/* 802A7B90 002A37F0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A7B94 002A37F4 54 7E 10 3A */ slwi r30, r3, 2
/* 802A7B98 002A37F8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A7B9C 002A37FC 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A7BA0 002A3800 41 82 00 8C */ beq lbl_802A7C2C
/* 802A7BA4 002A3804 2C 04 00 00 */ cmpwi r4, 0
/* 802A7BA8 002A3808 40 82 00 24 */ bne lbl_802A7BCC
/* 802A7BAC 002A380C 38 00 00 01 */ li r0, 1
/* 802A7BB0 002A3810 90 1D 08 DC */ stw r0, 0x8dc(r29)
/* 802A7BB4 002A3814 81 9D 08 A4 */ lwz r12, 0x8a4(r29)
/* 802A7BB8 002A3818 2C 0C 00 00 */ cmpwi r12, 0
/* 802A7BBC 002A381C 41 82 00 70 */ beq lbl_802A7C2C
/* 802A7BC0 002A3820 7D 89 03 A6 */ mtctr r12
/* 802A7BC4 002A3824 4E 80 04 21 */ bctrl
/* 802A7BC8 002A3828 48 00 00 64 */ b lbl_802A7C2C
lbl_802A7BCC:
/* 802A7BCC 002A382C 4B FC 6B 91 */ bl OSDisableInterrupts
/* 802A7BD0 002A3830 83 BD 08 BC */ lwz r29, 0x8bc(r29)
/* 802A7BD4 002A3834 4B FC 6B B1 */ bl OSRestoreInterrupts
/* 802A7BD8 002A3838 2C 1D FF FF */ cmpwi r29, -1
/* 802A7BDC 002A383C 41 82 00 50 */ beq lbl_802A7C2C
/* 802A7BE0 002A3840 7F DF F0 2E */ lwzx r30, r31, r30
/* 802A7BE4 002A3844 4B FC 6B 79 */ bl OSDisableInterrupts
/* 802A7BE8 002A3848 8B DE 08 C3 */ lbz r30, 0x8c3(r30)
/* 802A7BEC 002A384C 4B FC 6B 99 */ bl OSRestoreInterrupts
/* 802A7BF0 002A3850 7F C3 F3 78 */ mr r3, r30
/* 802A7BF4 002A3854 48 01 12 F5 */ bl _WUDGetDevAddr
/* 802A7BF8 002A3858 2C 03 00 00 */ cmpwi r3, 0
/* 802A7BFC 002A385C 41 82 00 18 */ beq lbl_802A7C14
/* 802A7C00 002A3860 7C 64 1B 78 */ mr r4, r3
/* 802A7C04 002A3864 38 61 00 08 */ addi r3, r1, 8
/* 802A7C08 002A3868 38 A0 00 06 */ li r5, 6
/* 802A7C0C 002A386C 4B D5 C3 F5 */ bl memcpy
/* 802A7C10 002A3870 48 00 00 14 */ b lbl_802A7C24
lbl_802A7C14:
/* 802A7C14 002A3874 38 61 00 08 */ addi r3, r1, 8
/* 802A7C18 002A3878 38 80 00 00 */ li r4, 0
/* 802A7C1C 002A387C 38 A0 00 06 */ li r5, 6
/* 802A7C20 002A3880 4B D5 C4 E5 */ bl memset
lbl_802A7C24:
/* 802A7C24 002A3884 38 61 00 08 */ addi r3, r1, 8
/* 802A7C28 002A3888 48 01 D2 6D */ bl btm_remove_acl
lbl_802A7C2C:
/* 802A7C2C 002A388C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A7C30 002A3890 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A7C34 002A3894 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A7C38 002A3898 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A7C3C 002A389C 7C 08 03 A6 */ mtlr r0
/* 802A7C40 002A38A0 38 21 00 20 */ addi r1, r1, 0x20
/* 802A7C44 002A38A4 4E 80 00 20 */ blr
abortConnCallback:
/* 802A7C48 002A38A8 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802A7C4C 002A38AC 7C 08 02 A6 */ mflr r0
/* 802A7C50 002A38B0 90 01 00 34 */ stw r0, 0x34(r1)
/* 802A7C54 002A38B4 39 61 00 30 */ addi r11, r1, 0x30
/* 802A7C58 002A38B8 4B F1 F4 D1 */ bl _savegpr_27
/* 802A7C5C 002A38BC 3F E0 80 53 */ lis r31, lbl_80536D70@ha
/* 802A7C60 002A38C0 2C 04 00 00 */ cmpwi r4, 0
/* 802A7C64 002A38C4 54 7E 10 3A */ slwi r30, r3, 2
/* 802A7C68 002A38C8 7C 9B 23 78 */ mr r27, r4
/* 802A7C6C 002A38CC 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l
/* 802A7C70 002A38D0 7F 9F F0 2E */ lwzx r28, r31, r30
/* 802A7C74 002A38D4 41 82 00 A0 */ beq lbl_802A7D14
/* 802A7C78 002A38D8 4B FC 6A E5 */ bl OSDisableInterrupts
/* 802A7C7C 002A38DC 38 00 00 00 */ li r0, 0
/* 802A7C80 002A38E0 7C 7D 1B 78 */ mr r29, r3
/* 802A7C84 002A38E4 98 1C 01 60 */ stb r0, 0x160(r28)
/* 802A7C88 002A38E8 38 80 00 00 */ li r4, 0
/* 802A7C8C 002A38EC 98 1C 01 61 */ stb r0, 0x161(r28)
/* 802A7C90 002A38F0 80 1C 01 68 */ lwz r0, 0x168(r28)
/* 802A7C94 002A38F4 80 7C 01 64 */ lwz r3, 0x164(r28)
/* 802A7C98 002A38F8 1C A0 00 30 */ mulli r5, r0, 0x30
/* 802A7C9C 002A38FC 4B D5 C4 69 */ bl memset
/* 802A7CA0 002A3900 7F A3 EB 78 */ mr r3, r29
/* 802A7CA4 002A3904 4B FC 6A E1 */ bl OSRestoreInterrupts
/* 802A7CA8 002A3908 2C 1B FF FF */ cmpwi r27, -1
/* 802A7CAC 002A390C 41 82 00 68 */ beq lbl_802A7D14
/* 802A7CB0 002A3910 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A7CB4 002A3914 4B FC 6A A9 */ bl OSDisableInterrupts
/* 802A7CB8 002A3918 83 BD 08 BC */ lwz r29, 0x8bc(r29)
/* 802A7CBC 002A391C 4B FC 6A C9 */ bl OSRestoreInterrupts
/* 802A7CC0 002A3920 2C 1D FF FF */ cmpwi r29, -1
/* 802A7CC4 002A3924 41 82 00 50 */ beq lbl_802A7D14
/* 802A7CC8 002A3928 7F BF F0 2E */ lwzx r29, r31, r30
/* 802A7CCC 002A392C 4B FC 6A 91 */ bl OSDisableInterrupts
/* 802A7CD0 002A3930 8B BD 08 C3 */ lbz r29, 0x8c3(r29)
/* 802A7CD4 002A3934 4B FC 6A B1 */ bl OSRestoreInterrupts
/* 802A7CD8 002A3938 7F A3 EB 78 */ mr r3, r29
/* 802A7CDC 002A393C 48 01 12 0D */ bl _WUDGetDevAddr
/* 802A7CE0 002A3940 2C 03 00 00 */ cmpwi r3, 0
/* 802A7CE4 002A3944 41 82 00 18 */ beq lbl_802A7CFC
/* 802A7CE8 002A3948 7C 64 1B 78 */ mr r4, r3
/* 802A7CEC 002A394C 38 61 00 08 */ addi r3, r1, 8
/* 802A7CF0 002A3950 38 A0 00 06 */ li r5, 6
/* 802A7CF4 002A3954 4B D5 C3 0D */ bl memcpy
/* 802A7CF8 002A3958 48 00 00 14 */ b lbl_802A7D0C
lbl_802A7CFC:
/* 802A7CFC 002A395C 38 61 00 08 */ addi r3, r1, 8
/* 802A7D00 002A3960 38 80 00 00 */ li r4, 0
/* 802A7D04 002A3964 38 A0 00 06 */ li r5, 6
/* 802A7D08 002A3968 4B D5 C3 FD */ bl memset
lbl_802A7D0C:
/* 802A7D0C 002A396C 38 61 00 08 */ addi r3, r1, 8
/* 802A7D10 002A3970 48 01 D1 85 */ bl btm_remove_acl
lbl_802A7D14:
/* 802A7D14 002A3974 39 61 00 30 */ addi r11, r1, 0x30
/* 802A7D18 002A3978 4B F1 F4 5D */ bl _restgpr_27
/* 802A7D1C 002A397C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802A7D20 002A3980 7C 08 03 A6 */ mtlr r0
/* 802A7D24 002A3984 38 21 00 30 */ addi r1, r1, 0x30
/* 802A7D28 002A3988 4E 80 00 20 */ blr
firmwareCheckCallback:
/* 802A7D2C 002A398C 94 21 FD 80 */ stwu r1, -0x280(r1)
/* 802A7D30 002A3990 7C 08 02 A6 */ mflr r0
/* 802A7D34 002A3994 90 01 02 84 */ stw r0, 0x284(r1)
/* 802A7D38 002A3998 39 61 02 80 */ addi r11, r1, 0x280
/* 802A7D3C 002A399C 4B F1 F3 E9 */ bl _savegpr_26
/* 802A7D40 002A39A0 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A7D44 002A39A4 2C 04 FF FF */ cmpwi r4, -1
/* 802A7D48 002A39A8 54 60 10 3A */ slwi r0, r3, 2
/* 802A7D4C 002A39AC 7C 7B 1B 78 */ mr r27, r3
/* 802A7D50 002A39B0 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A7D54 002A39B4 7C 9A 23 78 */ mr r26, r4
/* 802A7D58 002A39B8 7F A5 00 2E */ lwzx r29, r5, r0
/* 802A7D5C 002A39BC 41 82 08 94 */ beq lbl_802A85F0
/* 802A7D60 002A39C0 4B FC 69 FD */ bl OSDisableInterrupts
/* 802A7D64 002A39C4 7F 44 00 34 */ cntlzw r4, r26
/* 802A7D68 002A39C8 38 00 00 00 */ li r0, 0
/* 802A7D6C 002A39CC 54 84 D9 7E */ srwi r4, r4, 5
/* 802A7D70 002A39D0 90 9D 08 E0 */ stw r4, 0x8e0(r29)
/* 802A7D74 002A39D4 90 1D 08 BC */ stw r0, 0x8bc(r29)
/* 802A7D78 002A39D8 4B FC 6A 0D */ bl OSRestoreInterrupts
/* 802A7D7C 002A39DC 2C 1A 00 00 */ cmpwi r26, 0
/* 802A7D80 002A39E0 3B E0 00 2A */ li r31, 0x2a
/* 802A7D84 002A39E4 40 82 00 08 */ bne lbl_802A7D8C
/* 802A7D88 002A39E8 3B E0 00 14 */ li r31, 0x14
lbl_802A7D8C:
/* 802A7D8C 002A39EC 7F 43 00 34 */ cntlzw r3, r26
/* 802A7D90 002A39F0 80 1D 08 E0 */ lwz r0, 0x8e0(r29)
/* 802A7D94 002A39F4 54 64 DF FE */ rlwinm r4, r3, 0x1b, 0x1f, 0x1f
/* 802A7D98 002A39F8 7C A4 00 D0 */ neg r5, r4
/* 802A7D9C 002A39FC 3C 60 80 44 */ lis r3, lbl_8043C0CC@ha
/* 802A7DA0 002A3A00 2F 00 00 00 */ cmpwi cr6, r0, 0
/* 802A7DA4 002A3A04 3C 80 80 44 */ lis r4, lbl_8043C104@ha
/* 802A7DA8 002A3A08 70 BC 17 6C */ andi. r28, r5, 0x176c
/* 802A7DAC 002A3A0C 38 63 C0 CC */ addi r3, r3, lbl_8043C0CC@l
/* 802A7DB0 002A3A10 38 84 C1 04 */ addi r4, r4, lbl_8043C104@l
/* 802A7DB4 002A3A14 41 9A 00 08 */ beq cr6, lbl_802A7DBC
/* 802A7DB8 002A3A18 38 8D 89 AC */ addi r4, r13, lbl_8063DC6C-_SDA_BASE_
lbl_802A7DBC:
/* 802A7DBC 002A3A1C 4C C6 31 82 */ crclr 6
/* 802A7DC0 002A3A20 48 00 BA A1 */ bl DEBUGPrint
/* 802A7DC4 002A3A24 3F C0 80 2A */ lis r30, abortConnCallback@ha
/* 802A7DC8 002A3A28 38 7D 01 60 */ addi r3, r29, 0x160
/* 802A7DCC 002A3A2C 38 BE 7C 48 */ addi r5, r30, abortConnCallback@l
/* 802A7DD0 002A3A30 38 80 00 00 */ li r4, 0
/* 802A7DD4 002A3A34 48 00 4B D9 */ bl WPADiSendSetReportType
/* 802A7DD8 002A3A38 38 60 00 01 */ li r3, 1
/* 802A7DDC 002A3A3C 38 00 00 00 */ li r0, 0
/* 802A7DE0 002A3A40 B0 61 02 1A */ sth r3, 0x21a(r1)
/* 802A7DE4 002A3A44 39 9E 7C 48 */ addi r12, r30, 0x7c48
/* 802A7DE8 002A3A48 3B C0 00 1A */ li r30, 0x1a
/* 802A7DEC 002A3A4C 81 41 02 08 */ lwz r10, 0x208(r1)
/* 802A7DF0 002A3A50 98 01 02 04 */ stb r0, 0x204(r1)
/* 802A7DF4 002A3A54 81 21 02 0C */ lwz r9, 0x20c(r1)
/* 802A7DF8 002A3A58 81 61 02 04 */ lwz r11, 0x204(r1)
/* 802A7DFC 002A3A5C 81 01 02 10 */ lwz r8, 0x210(r1)
/* 802A7E00 002A3A60 80 E1 02 14 */ lwz r7, 0x214(r1)
/* 802A7E04 002A3A64 80 C1 02 18 */ lwz r6, 0x218(r1)
/* 802A7E08 002A3A68 80 A1 02 1C */ lwz r5, 0x21c(r1)
/* 802A7E0C 002A3A6C 80 81 02 20 */ lwz r4, 0x220(r1)
/* 802A7E10 002A3A70 80 61 02 24 */ lwz r3, 0x224(r1)
/* 802A7E14 002A3A74 80 01 02 28 */ lwz r0, 0x228(r1)
/* 802A7E18 002A3A78 93 C1 02 00 */ stw r30, 0x200(r1)
/* 802A7E1C 002A3A7C 91 81 02 2C */ stw r12, 0x22c(r1)
/* 802A7E20 002A3A80 93 C1 02 30 */ stw r30, 0x230(r1)
/* 802A7E24 002A3A84 91 61 02 34 */ stw r11, 0x234(r1)
/* 802A7E28 002A3A88 91 41 02 38 */ stw r10, 0x238(r1)
/* 802A7E2C 002A3A8C 91 21 02 3C */ stw r9, 0x23c(r1)
/* 802A7E30 002A3A90 91 01 02 40 */ stw r8, 0x240(r1)
/* 802A7E34 002A3A94 90 E1 02 44 */ stw r7, 0x244(r1)
/* 802A7E38 002A3A98 90 C1 02 48 */ stw r6, 0x248(r1)
/* 802A7E3C 002A3A9C 90 A1 02 4C */ stw r5, 0x24c(r1)
/* 802A7E40 002A3AA0 90 81 02 50 */ stw r4, 0x250(r1)
/* 802A7E44 002A3AA4 90 61 02 54 */ stw r3, 0x254(r1)
/* 802A7E48 002A3AA8 90 01 02 58 */ stw r0, 0x258(r1)
/* 802A7E4C 002A3AAC 91 81 02 5C */ stw r12, 0x25c(r1)
/* 802A7E50 002A3AB0 4B FC 69 0D */ bl OSDisableInterrupts
/* 802A7E54 002A3AB4 7C 7E 1B 78 */ mr r30, r3
/* 802A7E58 002A3AB8 4B FC 69 05 */ bl OSDisableInterrupts
/* 802A7E5C 002A3ABC 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802A7E60 002A3AC0 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A7E64 002A3AC4 7C 04 00 50 */ subf r0, r4, r0
/* 802A7E68 002A3AC8 7C 1A 07 75 */ extsb. r26, r0
/* 802A7E6C 002A3ACC 40 80 00 10 */ bge lbl_802A7E7C
/* 802A7E70 002A3AD0 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802A7E74 002A3AD4 7C 1A 02 14 */ add r0, r26, r0
/* 802A7E78 002A3AD8 7C 1A 07 74 */ extsb r26, r0
lbl_802A7E7C:
/* 802A7E7C 002A3ADC 4B FC 69 09 */ bl OSRestoreInterrupts
/* 802A7E80 002A3AE0 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802A7E84 002A3AE4 38 03 FF FF */ addi r0, r3, -1
/* 802A7E88 002A3AE8 7C 00 D0 40 */ cmplw r0, r26
/* 802A7E8C 002A3AEC 40 82 00 10 */ bne lbl_802A7E9C
/* 802A7E90 002A3AF0 7F C3 F3 78 */ mr r3, r30
/* 802A7E94 002A3AF4 4B FC 68 F1 */ bl OSRestoreInterrupts
/* 802A7E98 002A3AF8 48 00 00 78 */ b lbl_802A7F10
lbl_802A7E9C:
/* 802A7E9C 002A3AFC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A7EA0 002A3B00 38 80 00 00 */ li r4, 0
/* 802A7EA4 002A3B04 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A7EA8 002A3B08 38 A0 00 30 */ li r5, 0x30
/* 802A7EAC 002A3B0C 7C 00 07 74 */ extsb r0, r0
/* 802A7EB0 002A3B10 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A7EB4 002A3B14 7C 63 02 14 */ add r3, r3, r0
/* 802A7EB8 002A3B18 4B D5 C2 4D */ bl memset
/* 802A7EBC 002A3B1C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A7EC0 002A3B20 38 81 02 30 */ addi r4, r1, 0x230
/* 802A7EC4 002A3B24 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A7EC8 002A3B28 38 A0 00 30 */ li r5, 0x30
/* 802A7ECC 002A3B2C 7C 00 07 74 */ extsb r0, r0
/* 802A7ED0 002A3B30 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A7ED4 002A3B34 7C 63 02 14 */ add r3, r3, r0
/* 802A7ED8 002A3B38 4B D5 C1 29 */ bl memcpy
/* 802A7EDC 002A3B3C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A7EE0 002A3B40 7F C3 F3 78 */ mr r3, r30
/* 802A7EE4 002A3B44 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802A7EE8 002A3B48 7C 06 07 74 */ extsb r6, r0
/* 802A7EEC 002A3B4C 38 84 FF FF */ addi r4, r4, -1
/* 802A7EF0 002A3B50 7C A4 30 50 */ subf r5, r4, r6
/* 802A7EF4 002A3B54 38 06 00 01 */ addi r0, r6, 1
/* 802A7EF8 002A3B58 7C 86 20 50 */ subf r4, r6, r4
/* 802A7EFC 002A3B5C 7C A4 20 F8 */ nor r4, r5, r4
/* 802A7F00 002A3B60 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A7F04 002A3B64 7C 00 20 78 */ andc r0, r0, r4
/* 802A7F08 002A3B68 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802A7F0C 002A3B6C 4B FC 68 79 */ bl OSRestoreInterrupts
lbl_802A7F10:
/* 802A7F10 002A3B70 38 60 00 01 */ li r3, 1
/* 802A7F14 002A3B74 3B C0 00 11 */ li r30, 0x11
/* 802A7F18 002A3B78 7C 60 D8 30 */ slw r0, r3, r27
/* 802A7F1C 002A3B7C B0 61 01 BA */ sth r3, 0x1ba(r1)
/* 802A7F20 002A3B80 54 00 26 36 */ rlwinm r0, r0, 4, 0x18, 0x1b
/* 802A7F24 002A3B84 81 41 01 A8 */ lwz r10, 0x1a8(r1)
/* 802A7F28 002A3B88 98 01 01 A4 */ stb r0, 0x1a4(r1)
/* 802A7F2C 002A3B8C 3D 80 80 2A */ lis r12, abortConnCallback@ha
/* 802A7F30 002A3B90 39 8C 7C 48 */ addi r12, r12, abortConnCallback@l
/* 802A7F34 002A3B94 81 21 01 AC */ lwz r9, 0x1ac(r1)
/* 802A7F38 002A3B98 81 61 01 A4 */ lwz r11, 0x1a4(r1)
/* 802A7F3C 002A3B9C 81 01 01 B0 */ lwz r8, 0x1b0(r1)
/* 802A7F40 002A3BA0 80 E1 01 B4 */ lwz r7, 0x1b4(r1)
/* 802A7F44 002A3BA4 80 C1 01 B8 */ lwz r6, 0x1b8(r1)
/* 802A7F48 002A3BA8 80 A1 01 BC */ lwz r5, 0x1bc(r1)
/* 802A7F4C 002A3BAC 80 81 01 C0 */ lwz r4, 0x1c0(r1)
/* 802A7F50 002A3BB0 80 61 01 C4 */ lwz r3, 0x1c4(r1)
/* 802A7F54 002A3BB4 80 01 01 C8 */ lwz r0, 0x1c8(r1)
/* 802A7F58 002A3BB8 93 C1 01 A0 */ stw r30, 0x1a0(r1)
/* 802A7F5C 002A3BBC 91 81 01 CC */ stw r12, 0x1cc(r1)
/* 802A7F60 002A3BC0 93 C1 01 D0 */ stw r30, 0x1d0(r1)
/* 802A7F64 002A3BC4 91 61 01 D4 */ stw r11, 0x1d4(r1)
/* 802A7F68 002A3BC8 91 41 01 D8 */ stw r10, 0x1d8(r1)
/* 802A7F6C 002A3BCC 91 21 01 DC */ stw r9, 0x1dc(r1)
/* 802A7F70 002A3BD0 91 01 01 E0 */ stw r8, 0x1e0(r1)
/* 802A7F74 002A3BD4 90 E1 01 E4 */ stw r7, 0x1e4(r1)
/* 802A7F78 002A3BD8 90 C1 01 E8 */ stw r6, 0x1e8(r1)
/* 802A7F7C 002A3BDC 90 A1 01 EC */ stw r5, 0x1ec(r1)
/* 802A7F80 002A3BE0 90 81 01 F0 */ stw r4, 0x1f0(r1)
/* 802A7F84 002A3BE4 90 61 01 F4 */ stw r3, 0x1f4(r1)
/* 802A7F88 002A3BE8 90 01 01 F8 */ stw r0, 0x1f8(r1)
/* 802A7F8C 002A3BEC 91 81 01 FC */ stw r12, 0x1fc(r1)
/* 802A7F90 002A3BF0 4B FC 67 CD */ bl OSDisableInterrupts
/* 802A7F94 002A3BF4 7C 7E 1B 78 */ mr r30, r3
/* 802A7F98 002A3BF8 4B FC 67 C5 */ bl OSDisableInterrupts
/* 802A7F9C 002A3BFC 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802A7FA0 002A3C00 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A7FA4 002A3C04 7C 04 00 50 */ subf r0, r4, r0
/* 802A7FA8 002A3C08 7C 1A 07 75 */ extsb. r26, r0
/* 802A7FAC 002A3C0C 40 80 00 10 */ bge lbl_802A7FBC
/* 802A7FB0 002A3C10 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802A7FB4 002A3C14 7C 1A 02 14 */ add r0, r26, r0
/* 802A7FB8 002A3C18 7C 1A 07 74 */ extsb r26, r0
lbl_802A7FBC:
/* 802A7FBC 002A3C1C 4B FC 67 C9 */ bl OSRestoreInterrupts
/* 802A7FC0 002A3C20 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802A7FC4 002A3C24 38 03 FF FF */ addi r0, r3, -1
/* 802A7FC8 002A3C28 7C 00 D0 40 */ cmplw r0, r26
/* 802A7FCC 002A3C2C 40 82 00 10 */ bne lbl_802A7FDC
/* 802A7FD0 002A3C30 7F C3 F3 78 */ mr r3, r30
/* 802A7FD4 002A3C34 4B FC 67 B1 */ bl OSRestoreInterrupts
/* 802A7FD8 002A3C38 48 00 00 78 */ b lbl_802A8050
lbl_802A7FDC:
/* 802A7FDC 002A3C3C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A7FE0 002A3C40 38 80 00 00 */ li r4, 0
/* 802A7FE4 002A3C44 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A7FE8 002A3C48 38 A0 00 30 */ li r5, 0x30
/* 802A7FEC 002A3C4C 7C 00 07 74 */ extsb r0, r0
/* 802A7FF0 002A3C50 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A7FF4 002A3C54 7C 63 02 14 */ add r3, r3, r0
/* 802A7FF8 002A3C58 4B D5 C1 0D */ bl memset
/* 802A7FFC 002A3C5C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8000 002A3C60 38 81 01 D0 */ addi r4, r1, 0x1d0
/* 802A8004 002A3C64 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8008 002A3C68 38 A0 00 30 */ li r5, 0x30
/* 802A800C 002A3C6C 7C 00 07 74 */ extsb r0, r0
/* 802A8010 002A3C70 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8014 002A3C74 7C 63 02 14 */ add r3, r3, r0
/* 802A8018 002A3C78 4B D5 BF E9 */ bl memcpy
/* 802A801C 002A3C7C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8020 002A3C80 7F C3 F3 78 */ mr r3, r30
/* 802A8024 002A3C84 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802A8028 002A3C88 7C 06 07 74 */ extsb r6, r0
/* 802A802C 002A3C8C 38 84 FF FF */ addi r4, r4, -1
/* 802A8030 002A3C90 7C A4 30 50 */ subf r5, r4, r6
/* 802A8034 002A3C94 38 06 00 01 */ addi r0, r6, 1
/* 802A8038 002A3C98 7C 86 20 50 */ subf r4, r6, r4
/* 802A803C 002A3C9C 7C A4 20 F8 */ nor r4, r5, r4
/* 802A8040 002A3CA0 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A8044 002A3CA4 7C 00 20 78 */ andc r0, r0, r4
/* 802A8048 002A3CA8 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802A804C 002A3CAC 4B FC 67 39 */ bl OSRestoreInterrupts
lbl_802A8050:
/* 802A8050 002A3CB0 3C C0 80 2A */ lis r6, abortConnCallback@ha
/* 802A8054 002A3CB4 38 60 00 2A */ li r3, 0x2a
/* 802A8058 002A3CB8 38 C6 7C 48 */ addi r6, r6, abortConnCallback@l
/* 802A805C 002A3CBC 39 00 00 38 */ li r8, 0x38
/* 802A8060 002A3CC0 38 E0 00 17 */ li r7, 0x17
/* 802A8064 002A3CC4 38 00 00 06 */ li r0, 6
/* 802A8068 002A3CC8 90 61 00 18 */ stw r3, 0x18(r1)
/* 802A806C 002A3CCC 38 61 01 44 */ addi r3, r1, 0x144
/* 802A8070 002A3CD0 38 81 00 18 */ addi r4, r1, 0x18
/* 802A8074 002A3CD4 38 A0 00 04 */ li r5, 4
/* 802A8078 002A3CD8 B1 01 00 0C */ sth r8, 0xc(r1)
/* 802A807C 002A3CDC 90 E1 01 40 */ stw r7, 0x140(r1)
/* 802A8080 002A3CE0 B0 01 01 5A */ sth r0, 0x15a(r1)
/* 802A8084 002A3CE4 90 C1 01 6C */ stw r6, 0x16c(r1)
/* 802A8088 002A3CE8 4B D5 BF 79 */ bl memcpy
/* 802A808C 002A3CEC 38 61 01 48 */ addi r3, r1, 0x148
/* 802A8090 002A3CF0 38 81 00 0C */ addi r4, r1, 0xc
/* 802A8094 002A3CF4 38 A0 00 02 */ li r5, 2
/* 802A8098 002A3CF8 4B D5 BF 69 */ bl memcpy
/* 802A809C 002A3CFC A0 01 00 0C */ lhz r0, 0xc(r1)
/* 802A80A0 002A3D00 3B 7D 09 34 */ addi r27, r29, 0x934
/* 802A80A4 002A3D04 81 81 00 18 */ lwz r12, 0x18(r1)
/* 802A80A8 002A3D08 B0 01 01 60 */ sth r0, 0x160(r1)
/* 802A80AC 002A3D0C 81 61 01 40 */ lwz r11, 0x140(r1)
/* 802A80B0 002A3D10 81 41 01 44 */ lwz r10, 0x144(r1)
/* 802A80B4 002A3D14 81 21 01 48 */ lwz r9, 0x148(r1)
/* 802A80B8 002A3D18 81 01 01 4C */ lwz r8, 0x14c(r1)
/* 802A80BC 002A3D1C 80 E1 01 50 */ lwz r7, 0x150(r1)
/* 802A80C0 002A3D20 80 C1 01 54 */ lwz r6, 0x154(r1)
/* 802A80C4 002A3D24 80 A1 01 58 */ lwz r5, 0x158(r1)
/* 802A80C8 002A3D28 80 81 01 60 */ lwz r4, 0x160(r1)
/* 802A80CC 002A3D2C 80 61 01 68 */ lwz r3, 0x168(r1)
/* 802A80D0 002A3D30 80 01 01 6C */ lwz r0, 0x16c(r1)
/* 802A80D4 002A3D34 93 61 01 5C */ stw r27, 0x15c(r1)
/* 802A80D8 002A3D38 91 81 01 64 */ stw r12, 0x164(r1)
/* 802A80DC 002A3D3C 91 61 01 70 */ stw r11, 0x170(r1)
/* 802A80E0 002A3D40 91 41 01 74 */ stw r10, 0x174(r1)
/* 802A80E4 002A3D44 91 21 01 78 */ stw r9, 0x178(r1)
/* 802A80E8 002A3D48 91 01 01 7C */ stw r8, 0x17c(r1)
/* 802A80EC 002A3D4C 90 E1 01 80 */ stw r7, 0x180(r1)
/* 802A80F0 002A3D50 90 C1 01 84 */ stw r6, 0x184(r1)
/* 802A80F4 002A3D54 90 A1 01 88 */ stw r5, 0x188(r1)
/* 802A80F8 002A3D58 93 61 01 8C */ stw r27, 0x18c(r1)
/* 802A80FC 002A3D5C 90 81 01 90 */ stw r4, 0x190(r1)
/* 802A8100 002A3D60 91 81 01 94 */ stw r12, 0x194(r1)
/* 802A8104 002A3D64 90 61 01 98 */ stw r3, 0x198(r1)
/* 802A8108 002A3D68 90 01 01 9C */ stw r0, 0x19c(r1)
/* 802A810C 002A3D6C 4B FC 66 51 */ bl OSDisableInterrupts
/* 802A8110 002A3D70 7C 7E 1B 78 */ mr r30, r3
/* 802A8114 002A3D74 4B FC 66 49 */ bl OSDisableInterrupts
/* 802A8118 002A3D78 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802A811C 002A3D7C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8120 002A3D80 7C 04 00 50 */ subf r0, r4, r0
/* 802A8124 002A3D84 7C 1A 07 75 */ extsb. r26, r0
/* 802A8128 002A3D88 40 80 00 10 */ bge lbl_802A8138
/* 802A812C 002A3D8C 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802A8130 002A3D90 7C 1A 02 14 */ add r0, r26, r0
/* 802A8134 002A3D94 7C 1A 07 74 */ extsb r26, r0
lbl_802A8138:
/* 802A8138 002A3D98 4B FC 66 4D */ bl OSRestoreInterrupts
/* 802A813C 002A3D9C 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802A8140 002A3DA0 38 03 FF FF */ addi r0, r3, -1
/* 802A8144 002A3DA4 7C 00 D0 40 */ cmplw r0, r26
/* 802A8148 002A3DA8 40 82 00 10 */ bne lbl_802A8158
/* 802A814C 002A3DAC 7F C3 F3 78 */ mr r3, r30
/* 802A8150 002A3DB0 4B FC 66 35 */ bl OSRestoreInterrupts
/* 802A8154 002A3DB4 48 00 00 78 */ b lbl_802A81CC
lbl_802A8158:
/* 802A8158 002A3DB8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A815C 002A3DBC 38 80 00 00 */ li r4, 0
/* 802A8160 002A3DC0 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8164 002A3DC4 38 A0 00 30 */ li r5, 0x30
/* 802A8168 002A3DC8 7C 00 07 74 */ extsb r0, r0
/* 802A816C 002A3DCC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8170 002A3DD0 7C 63 02 14 */ add r3, r3, r0
/* 802A8174 002A3DD4 4B D5 BF 91 */ bl memset
/* 802A8178 002A3DD8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A817C 002A3DDC 38 81 01 70 */ addi r4, r1, 0x170
/* 802A8180 002A3DE0 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8184 002A3DE4 38 A0 00 30 */ li r5, 0x30
/* 802A8188 002A3DE8 7C 00 07 74 */ extsb r0, r0
/* 802A818C 002A3DEC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8190 002A3DF0 7C 63 02 14 */ add r3, r3, r0
/* 802A8194 002A3DF4 4B D5 BE 6D */ bl memcpy
/* 802A8198 002A3DF8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A819C 002A3DFC 7F C3 F3 78 */ mr r3, r30
/* 802A81A0 002A3E00 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802A81A4 002A3E04 7C 06 07 74 */ extsb r6, r0
/* 802A81A8 002A3E08 38 84 FF FF */ addi r4, r4, -1
/* 802A81AC 002A3E0C 7C A4 30 50 */ subf r5, r4, r6
/* 802A81B0 002A3E10 38 06 00 01 */ addi r0, r6, 1
/* 802A81B4 002A3E14 7C 86 20 50 */ subf r4, r6, r4
/* 802A81B8 002A3E18 7C A4 20 F8 */ nor r4, r5, r4
/* 802A81BC 002A3E1C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A81C0 002A3E20 7C 00 20 78 */ andc r0, r0, r4
/* 802A81C4 002A3E24 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802A81C8 002A3E28 4B FC 65 BD */ bl OSRestoreInterrupts
lbl_802A81CC:
/* 802A81CC 002A3E2C 3C C0 80 2A */ lis r6, abortConnCallback@ha
/* 802A81D0 002A3E30 38 60 00 62 */ li r3, 0x62
/* 802A81D4 002A3E34 38 C6 7C 48 */ addi r6, r6, abortConnCallback@l
/* 802A81D8 002A3E38 39 00 00 38 */ li r8, 0x38
/* 802A81DC 002A3E3C 38 E0 00 17 */ li r7, 0x17
/* 802A81E0 002A3E40 38 00 00 06 */ li r0, 6
/* 802A81E4 002A3E44 90 61 00 14 */ stw r3, 0x14(r1)
/* 802A81E8 002A3E48 38 61 00 E4 */ addi r3, r1, 0xe4
/* 802A81EC 002A3E4C 38 81 00 14 */ addi r4, r1, 0x14
/* 802A81F0 002A3E50 38 A0 00 04 */ li r5, 4
/* 802A81F4 002A3E54 B1 01 00 0A */ sth r8, 0xa(r1)
/* 802A81F8 002A3E58 90 E1 00 E0 */ stw r7, 0xe0(r1)
/* 802A81FC 002A3E5C B0 01 00 FA */ sth r0, 0xfa(r1)
/* 802A8200 002A3E60 90 C1 01 0C */ stw r6, 0x10c(r1)
/* 802A8204 002A3E64 4B D5 BD FD */ bl memcpy
/* 802A8208 002A3E68 38 61 00 E8 */ addi r3, r1, 0xe8
/* 802A820C 002A3E6C 38 81 00 0A */ addi r4, r1, 0xa
/* 802A8210 002A3E70 38 A0 00 02 */ li r5, 2
/* 802A8214 002A3E74 4B D5 BD ED */ bl memcpy
/* 802A8218 002A3E78 A0 01 00 0A */ lhz r0, 0xa(r1)
/* 802A821C 002A3E7C 3B 7D 09 34 */ addi r27, r29, 0x934
/* 802A8220 002A3E80 81 81 00 14 */ lwz r12, 0x14(r1)
/* 802A8224 002A3E84 B0 01 01 00 */ sth r0, 0x100(r1)
/* 802A8228 002A3E88 81 61 00 E0 */ lwz r11, 0xe0(r1)
/* 802A822C 002A3E8C 81 41 00 E4 */ lwz r10, 0xe4(r1)
/* 802A8230 002A3E90 81 21 00 E8 */ lwz r9, 0xe8(r1)
/* 802A8234 002A3E94 81 01 00 EC */ lwz r8, 0xec(r1)
/* 802A8238 002A3E98 80 E1 00 F0 */ lwz r7, 0xf0(r1)
/* 802A823C 002A3E9C 80 C1 00 F4 */ lwz r6, 0xf4(r1)
/* 802A8240 002A3EA0 80 A1 00 F8 */ lwz r5, 0xf8(r1)
/* 802A8244 002A3EA4 80 81 01 00 */ lwz r4, 0x100(r1)
/* 802A8248 002A3EA8 80 61 01 08 */ lwz r3, 0x108(r1)
/* 802A824C 002A3EAC 80 01 01 0C */ lwz r0, 0x10c(r1)
/* 802A8250 002A3EB0 93 61 00 FC */ stw r27, 0xfc(r1)
/* 802A8254 002A3EB4 91 81 01 04 */ stw r12, 0x104(r1)
/* 802A8258 002A3EB8 91 61 01 10 */ stw r11, 0x110(r1)
/* 802A825C 002A3EBC 91 41 01 14 */ stw r10, 0x114(r1)
/* 802A8260 002A3EC0 91 21 01 18 */ stw r9, 0x118(r1)
/* 802A8264 002A3EC4 91 01 01 1C */ stw r8, 0x11c(r1)
/* 802A8268 002A3EC8 90 E1 01 20 */ stw r7, 0x120(r1)
/* 802A826C 002A3ECC 90 C1 01 24 */ stw r6, 0x124(r1)
/* 802A8270 002A3ED0 90 A1 01 28 */ stw r5, 0x128(r1)
/* 802A8274 002A3ED4 93 61 01 2C */ stw r27, 0x12c(r1)
/* 802A8278 002A3ED8 90 81 01 30 */ stw r4, 0x130(r1)
/* 802A827C 002A3EDC 91 81 01 34 */ stw r12, 0x134(r1)
/* 802A8280 002A3EE0 90 61 01 38 */ stw r3, 0x138(r1)
/* 802A8284 002A3EE4 90 01 01 3C */ stw r0, 0x13c(r1)
/* 802A8288 002A3EE8 4B FC 64 D5 */ bl OSDisableInterrupts
/* 802A828C 002A3EEC 7C 7E 1B 78 */ mr r30, r3
/* 802A8290 002A3EF0 4B FC 64 CD */ bl OSDisableInterrupts
/* 802A8294 002A3EF4 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802A8298 002A3EF8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A829C 002A3EFC 7C 04 00 50 */ subf r0, r4, r0
/* 802A82A0 002A3F00 7C 1A 07 75 */ extsb. r26, r0
/* 802A82A4 002A3F04 40 80 00 10 */ bge lbl_802A82B4
/* 802A82A8 002A3F08 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802A82AC 002A3F0C 7C 1A 02 14 */ add r0, r26, r0
/* 802A82B0 002A3F10 7C 1A 07 74 */ extsb r26, r0
lbl_802A82B4:
/* 802A82B4 002A3F14 4B FC 64 D1 */ bl OSRestoreInterrupts
/* 802A82B8 002A3F18 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802A82BC 002A3F1C 38 03 FF FF */ addi r0, r3, -1
/* 802A82C0 002A3F20 7C 00 D0 40 */ cmplw r0, r26
/* 802A82C4 002A3F24 40 82 00 10 */ bne lbl_802A82D4
/* 802A82C8 002A3F28 7F C3 F3 78 */ mr r3, r30
/* 802A82CC 002A3F2C 4B FC 64 B9 */ bl OSRestoreInterrupts
/* 802A82D0 002A3F30 48 00 00 78 */ b lbl_802A8348
lbl_802A82D4:
/* 802A82D4 002A3F34 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A82D8 002A3F38 38 80 00 00 */ li r4, 0
/* 802A82DC 002A3F3C 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A82E0 002A3F40 38 A0 00 30 */ li r5, 0x30
/* 802A82E4 002A3F44 7C 00 07 74 */ extsb r0, r0
/* 802A82E8 002A3F48 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A82EC 002A3F4C 7C 63 02 14 */ add r3, r3, r0
/* 802A82F0 002A3F50 4B D5 BE 15 */ bl memset
/* 802A82F4 002A3F54 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A82F8 002A3F58 38 81 01 10 */ addi r4, r1, 0x110
/* 802A82FC 002A3F5C 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8300 002A3F60 38 A0 00 30 */ li r5, 0x30
/* 802A8304 002A3F64 7C 00 07 74 */ extsb r0, r0
/* 802A8308 002A3F68 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A830C 002A3F6C 7C 63 02 14 */ add r3, r3, r0
/* 802A8310 002A3F70 4B D5 BC F1 */ bl memcpy
/* 802A8314 002A3F74 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8318 002A3F78 7F C3 F3 78 */ mr r3, r30
/* 802A831C 002A3F7C 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802A8320 002A3F80 7C 06 07 74 */ extsb r6, r0
/* 802A8324 002A3F84 38 84 FF FF */ addi r4, r4, -1
/* 802A8328 002A3F88 7C A4 30 50 */ subf r5, r4, r6
/* 802A832C 002A3F8C 38 06 00 01 */ addi r0, r6, 1
/* 802A8330 002A3F90 7C 86 20 50 */ subf r4, r6, r4
/* 802A8334 002A3F94 7C A4 20 F8 */ nor r4, r5, r4
/* 802A8338 002A3F98 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A833C 002A3F9C 7C 00 20 78 */ andc r0, r0, r4
/* 802A8340 002A3FA0 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802A8344 002A3FA4 4B FC 64 41 */ bl OSRestoreInterrupts
lbl_802A8348:
/* 802A8348 002A3FA8 3C C0 80 2A */ lis r6, setupCallback@ha
/* 802A834C 002A3FAC 38 E0 00 17 */ li r7, 0x17
/* 802A8350 002A3FB0 38 C6 7B 74 */ addi r6, r6, setupCallback@l
/* 802A8354 002A3FB4 38 00 00 06 */ li r0, 6
/* 802A8358 002A3FB8 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A835C 002A3FBC 38 61 00 84 */ addi r3, r1, 0x84
/* 802A8360 002A3FC0 38 81 00 10 */ addi r4, r1, 0x10
/* 802A8364 002A3FC4 38 A0 00 04 */ li r5, 4
/* 802A8368 002A3FC8 B3 E1 00 08 */ sth r31, 8(r1)
/* 802A836C 002A3FCC 90 E1 00 80 */ stw r7, 0x80(r1)
/* 802A8370 002A3FD0 B0 01 00 9A */ sth r0, 0x9a(r1)
/* 802A8374 002A3FD4 90 C1 00 AC */ stw r6, 0xac(r1)
/* 802A8378 002A3FD8 4B D5 BC 89 */ bl memcpy
/* 802A837C 002A3FDC 38 61 00 88 */ addi r3, r1, 0x88
/* 802A8380 002A3FE0 38 81 00 08 */ addi r4, r1, 8
/* 802A8384 002A3FE4 38 A0 00 02 */ li r5, 2
/* 802A8388 002A3FE8 4B D5 BC 79 */ bl memcpy
/* 802A838C 002A3FEC A0 01 00 08 */ lhz r0, 8(r1)
/* 802A8390 002A3FF0 3B 7D 09 34 */ addi r27, r29, 0x934
/* 802A8394 002A3FF4 81 81 00 10 */ lwz r12, 0x10(r1)
/* 802A8398 002A3FF8 B0 01 00 A0 */ sth r0, 0xa0(r1)
/* 802A839C 002A3FFC 81 61 00 80 */ lwz r11, 0x80(r1)
/* 802A83A0 002A4000 81 41 00 84 */ lwz r10, 0x84(r1)
/* 802A83A4 002A4004 81 21 00 88 */ lwz r9, 0x88(r1)
/* 802A83A8 002A4008 81 01 00 8C */ lwz r8, 0x8c(r1)
/* 802A83AC 002A400C 80 E1 00 90 */ lwz r7, 0x90(r1)
/* 802A83B0 002A4010 80 C1 00 94 */ lwz r6, 0x94(r1)
/* 802A83B4 002A4014 80 A1 00 98 */ lwz r5, 0x98(r1)
/* 802A83B8 002A4018 80 81 00 A0 */ lwz r4, 0xa0(r1)
/* 802A83BC 002A401C 80 61 00 A8 */ lwz r3, 0xa8(r1)
/* 802A83C0 002A4020 80 01 00 AC */ lwz r0, 0xac(r1)
/* 802A83C4 002A4024 93 61 00 9C */ stw r27, 0x9c(r1)
/* 802A83C8 002A4028 91 81 00 A4 */ stw r12, 0xa4(r1)
/* 802A83CC 002A402C 91 61 00 B0 */ stw r11, 0xb0(r1)
/* 802A83D0 002A4030 91 41 00 B4 */ stw r10, 0xb4(r1)
/* 802A83D4 002A4034 91 21 00 B8 */ stw r9, 0xb8(r1)
/* 802A83D8 002A4038 91 01 00 BC */ stw r8, 0xbc(r1)
/* 802A83DC 002A403C 90 E1 00 C0 */ stw r7, 0xc0(r1)
/* 802A83E0 002A4040 90 C1 00 C4 */ stw r6, 0xc4(r1)
/* 802A83E4 002A4044 90 A1 00 C8 */ stw r5, 0xc8(r1)
/* 802A83E8 002A4048 93 61 00 CC */ stw r27, 0xcc(r1)
/* 802A83EC 002A404C 90 81 00 D0 */ stw r4, 0xd0(r1)
/* 802A83F0 002A4050 91 81 00 D4 */ stw r12, 0xd4(r1)
/* 802A83F4 002A4054 90 61 00 D8 */ stw r3, 0xd8(r1)
/* 802A83F8 002A4058 90 01 00 DC */ stw r0, 0xdc(r1)
/* 802A83FC 002A405C 4B FC 63 61 */ bl OSDisableInterrupts
/* 802A8400 002A4060 7C 7A 1B 78 */ mr r26, r3
/* 802A8404 002A4064 4B FC 63 59 */ bl OSDisableInterrupts
/* 802A8408 002A4068 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802A840C 002A406C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8410 002A4070 7C 04 00 50 */ subf r0, r4, r0
/* 802A8414 002A4074 7C 1B 07 75 */ extsb. r27, r0
/* 802A8418 002A4078 40 80 00 10 */ bge lbl_802A8428
/* 802A841C 002A407C 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802A8420 002A4080 7C 1B 02 14 */ add r0, r27, r0
/* 802A8424 002A4084 7C 1B 07 74 */ extsb r27, r0
lbl_802A8428:
/* 802A8428 002A4088 4B FC 63 5D */ bl OSRestoreInterrupts
/* 802A842C 002A408C 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802A8430 002A4090 38 03 FF FF */ addi r0, r3, -1
/* 802A8434 002A4094 7C 00 D8 40 */ cmplw r0, r27
/* 802A8438 002A4098 40 82 00 10 */ bne lbl_802A8448
/* 802A843C 002A409C 7F 43 D3 78 */ mr r3, r26
/* 802A8440 002A40A0 4B FC 63 45 */ bl OSRestoreInterrupts
/* 802A8444 002A40A4 48 00 00 78 */ b lbl_802A84BC
lbl_802A8448:
/* 802A8448 002A40A8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A844C 002A40AC 38 80 00 00 */ li r4, 0
/* 802A8450 002A40B0 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8454 002A40B4 38 A0 00 30 */ li r5, 0x30
/* 802A8458 002A40B8 7C 00 07 74 */ extsb r0, r0
/* 802A845C 002A40BC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8460 002A40C0 7C 63 02 14 */ add r3, r3, r0
/* 802A8464 002A40C4 4B D5 BC A1 */ bl memset
/* 802A8468 002A40C8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A846C 002A40CC 38 81 00 B0 */ addi r4, r1, 0xb0
/* 802A8470 002A40D0 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8474 002A40D4 38 A0 00 30 */ li r5, 0x30
/* 802A8478 002A40D8 7C 00 07 74 */ extsb r0, r0
/* 802A847C 002A40DC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8480 002A40E0 7C 63 02 14 */ add r3, r3, r0
/* 802A8484 002A40E4 4B D5 BB 7D */ bl memcpy
/* 802A8488 002A40E8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A848C 002A40EC 7F 43 D3 78 */ mr r3, r26
/* 802A8490 002A40F0 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802A8494 002A40F4 7C 06 07 74 */ extsb r6, r0
/* 802A8498 002A40F8 38 84 FF FF */ addi r4, r4, -1
/* 802A849C 002A40FC 7C A4 30 50 */ subf r5, r4, r6
/* 802A84A0 002A4100 38 06 00 01 */ addi r0, r6, 1
/* 802A84A4 002A4104 7C 86 20 50 */ subf r4, r6, r4
/* 802A84A8 002A4108 7C A4 20 F8 */ nor r4, r5, r4
/* 802A84AC 002A410C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A84B0 002A4110 7C 00 20 78 */ andc r0, r0, r4
/* 802A84B4 002A4114 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802A84B8 002A4118 4B FC 62 CD */ bl OSRestoreInterrupts
lbl_802A84BC:
/* 802A84BC 002A411C 39 60 00 00 */ li r11, 0
/* 802A84C0 002A4120 38 00 00 01 */ li r0, 1
/* 802A84C4 002A4124 B0 01 00 3A */ sth r0, 0x3a(r1)
/* 802A84C8 002A4128 39 80 00 15 */ li r12, 0x15
/* 802A84CC 002A412C 81 21 00 28 */ lwz r9, 0x28(r1)
/* 802A84D0 002A4130 99 61 00 24 */ stb r11, 0x24(r1)
/* 802A84D4 002A4134 81 01 00 2C */ lwz r8, 0x2c(r1)
/* 802A84D8 002A4138 81 41 00 24 */ lwz r10, 0x24(r1)
/* 802A84DC 002A413C 80 E1 00 30 */ lwz r7, 0x30(r1)
/* 802A84E0 002A4140 80 C1 00 34 */ lwz r6, 0x34(r1)
/* 802A84E4 002A4144 80 A1 00 38 */ lwz r5, 0x38(r1)
/* 802A84E8 002A4148 80 81 00 3C */ lwz r4, 0x3c(r1)
/* 802A84EC 002A414C 80 61 00 40 */ lwz r3, 0x40(r1)
/* 802A84F0 002A4150 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802A84F4 002A4154 91 81 00 20 */ stw r12, 0x20(r1)
/* 802A84F8 002A4158 91 61 00 4C */ stw r11, 0x4c(r1)
/* 802A84FC 002A415C 91 61 00 48 */ stw r11, 0x48(r1)
/* 802A8500 002A4160 91 81 00 50 */ stw r12, 0x50(r1)
/* 802A8504 002A4164 91 41 00 54 */ stw r10, 0x54(r1)
/* 802A8508 002A4168 91 21 00 58 */ stw r9, 0x58(r1)
/* 802A850C 002A416C 91 01 00 5C */ stw r8, 0x5c(r1)
/* 802A8510 002A4170 90 E1 00 60 */ stw r7, 0x60(r1)
/* 802A8514 002A4174 90 C1 00 64 */ stw r6, 0x64(r1)
/* 802A8518 002A4178 90 A1 00 68 */ stw r5, 0x68(r1)
/* 802A851C 002A417C 90 81 00 6C */ stw r4, 0x6c(r1)
/* 802A8520 002A4180 90 61 00 70 */ stw r3, 0x70(r1)
/* 802A8524 002A4184 90 01 00 74 */ stw r0, 0x74(r1)
/* 802A8528 002A4188 91 61 00 78 */ stw r11, 0x78(r1)
/* 802A852C 002A418C 91 61 00 7C */ stw r11, 0x7c(r1)
/* 802A8530 002A4190 4B FC 62 2D */ bl OSDisableInterrupts
/* 802A8534 002A4194 7C 7A 1B 78 */ mr r26, r3
/* 802A8538 002A4198 4B FC 62 25 */ bl OSDisableInterrupts
/* 802A853C 002A419C 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802A8540 002A41A0 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8544 002A41A4 7C 04 00 50 */ subf r0, r4, r0
/* 802A8548 002A41A8 7C 1B 07 75 */ extsb. r27, r0
/* 802A854C 002A41AC 40 80 00 10 */ bge lbl_802A855C
/* 802A8550 002A41B0 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802A8554 002A41B4 7C 1B 02 14 */ add r0, r27, r0
/* 802A8558 002A41B8 7C 1B 07 74 */ extsb r27, r0
lbl_802A855C:
/* 802A855C 002A41BC 4B FC 62 29 */ bl OSRestoreInterrupts
/* 802A8560 002A41C0 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802A8564 002A41C4 38 03 FF FF */ addi r0, r3, -1
/* 802A8568 002A41C8 7C 00 D8 40 */ cmplw r0, r27
/* 802A856C 002A41CC 40 82 00 10 */ bne lbl_802A857C
/* 802A8570 002A41D0 7F 43 D3 78 */ mr r3, r26
/* 802A8574 002A41D4 4B FC 62 11 */ bl OSRestoreInterrupts
/* 802A8578 002A41D8 48 00 00 78 */ b lbl_802A85F0
lbl_802A857C:
/* 802A857C 002A41DC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A8580 002A41E0 38 80 00 00 */ li r4, 0
/* 802A8584 002A41E4 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A8588 002A41E8 38 A0 00 30 */ li r5, 0x30
/* 802A858C 002A41EC 7C 00 07 74 */ extsb r0, r0
/* 802A8590 002A41F0 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8594 002A41F4 7C 63 02 14 */ add r3, r3, r0
/* 802A8598 002A41F8 4B D5 BB 6D */ bl memset
/* 802A859C 002A41FC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A85A0 002A4200 38 81 00 50 */ addi r4, r1, 0x50
/* 802A85A4 002A4204 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802A85A8 002A4208 38 A0 00 30 */ li r5, 0x30
/* 802A85AC 002A420C 7C 00 07 74 */ extsb r0, r0
/* 802A85B0 002A4210 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A85B4 002A4214 7C 63 02 14 */ add r3, r3, r0
/* 802A85B8 002A4218 4B D5 BA 49 */ bl memcpy
/* 802A85BC 002A421C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802A85C0 002A4220 7F 43 D3 78 */ mr r3, r26
/* 802A85C4 002A4224 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802A85C8 002A4228 7C 06 07 74 */ extsb r6, r0
/* 802A85CC 002A422C 38 84 FF FF */ addi r4, r4, -1
/* 802A85D0 002A4230 7C A4 30 50 */ subf r5, r4, r6
/* 802A85D4 002A4234 38 06 00 01 */ addi r0, r6, 1
/* 802A85D8 002A4238 7C 86 20 50 */ subf r4, r6, r4
/* 802A85DC 002A423C 7C A4 20 F8 */ nor r4, r5, r4
/* 802A85E0 002A4240 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A85E4 002A4244 7C 00 20 78 */ andc r0, r0, r4
/* 802A85E8 002A4248 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802A85EC 002A424C 4B FC 61 99 */ bl OSRestoreInterrupts
lbl_802A85F0:
/* 802A85F0 002A4250 39 61 02 80 */ addi r11, r1, 0x280
/* 802A85F4 002A4254 4B F1 EB 7D */ bl _restgpr_26
/* 802A85F8 002A4258 80 01 02 84 */ lwz r0, 0x284(r1)
/* 802A85FC 002A425C 7C 08 03 A6 */ mtlr r0
/* 802A8600 002A4260 38 21 02 80 */ addi r1, r1, 0x280
/* 802A8604 002A4264 4E 80 00 20 */ blr
.global WPADiRetrieveChannel
WPADiRetrieveChannel:
/* 802A8608 002A4268 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A860C 002A426C 7C 08 02 A6 */ mflr r0
/* 802A8610 002A4270 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A8614 002A4274 39 61 00 20 */ addi r11, r1, 0x20
/* 802A8618 002A4278 4B F1 EB 11 */ bl _savegpr_27
/* 802A861C 002A427C 48 01 08 CD */ bl _WUDGetDevAddr
/* 802A8620 002A4280 3F E0 80 54 */ lis r31, lbl_8053AC28@ha
/* 802A8624 002A4284 7C 7C 1B 78 */ mr r28, r3
/* 802A8628 002A4288 3B FF AC 28 */ addi r31, r31, lbl_8053AC28@l
/* 802A862C 002A428C 3B 60 00 00 */ li r27, 0
/* 802A8630 002A4290 3B C0 00 00 */ li r30, 0
/* 802A8634 002A4294 3B AD AE 50 */ addi r29, r13, lbl_80640110-_SDA_BASE_
lbl_802A8638:
/* 802A8638 002A4298 7C 7E FA 14 */ add r3, r30, r31
/* 802A863C 002A429C 7F 84 E3 78 */ mr r4, r28
/* 802A8640 002A42A0 38 63 02 BD */ addi r3, r3, 0x2bd
/* 802A8644 002A42A4 38 A0 00 06 */ li r5, 6
/* 802A8648 002A42A8 4B F2 1D 51 */ bl memcmp
/* 802A864C 002A42AC 2C 03 00 00 */ cmpwi r3, 0
/* 802A8650 002A42B0 40 82 00 24 */ bne lbl_802A8674
/* 802A8654 002A42B4 88 1D 00 00 */ lbz r0, 0(r29)
/* 802A8658 002A42B8 2C 00 00 00 */ cmpwi r0, 0
/* 802A865C 002A42BC 40 82 00 18 */ bne lbl_802A8674
/* 802A8660 002A42C0 38 00 00 01 */ li r0, 1
/* 802A8664 002A42C4 38 6D AE 50 */ addi r3, r13, lbl_80640110-_SDA_BASE_
/* 802A8668 002A42C8 7C 03 D9 AE */ stbx r0, r3, r27
/* 802A866C 002A42CC 7F 63 DB 78 */ mr r3, r27
/* 802A8670 002A42D0 48 00 00 80 */ b lbl_802A86F0
lbl_802A8674:
/* 802A8674 002A42D4 3B 7B 00 01 */ addi r27, r27, 1
/* 802A8678 002A42D8 3B BD 00 01 */ addi r29, r29, 1
/* 802A867C 002A42DC 2C 1B 00 04 */ cmpwi r27, 4
/* 802A8680 002A42E0 3B DE 00 46 */ addi r30, r30, 0x46
/* 802A8684 002A42E4 41 80 FF B4 */ blt lbl_802A8638
/* 802A8688 002A42E8 38 00 00 04 */ li r0, 4
/* 802A868C 002A42EC 3B A0 00 00 */ li r29, 0
/* 802A8690 002A42F0 38 6D AE 50 */ addi r3, r13, lbl_80640110-_SDA_BASE_
/* 802A8694 002A42F4 7C 09 03 A6 */ mtctr r0
lbl_802A8698:
/* 802A8698 002A42F8 88 03 00 00 */ lbz r0, 0(r3)
/* 802A869C 002A42FC 2C 00 00 00 */ cmpwi r0, 0
/* 802A86A0 002A4300 40 82 00 40 */ bne lbl_802A86E0
/* 802A86A4 002A4304 38 1D 00 0A */ addi r0, r29, 0xa
/* 802A86A8 002A4308 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
/* 802A86AC 002A430C 1C 00 00 46 */ mulli r0, r0, 0x46
/* 802A86B0 002A4310 3B E0 00 01 */ li r31, 1
/* 802A86B4 002A4314 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
/* 802A86B8 002A4318 38 8D AE 50 */ addi r4, r13, lbl_80640110-_SDA_BASE_
/* 802A86BC 002A431C 7C 63 02 14 */ add r3, r3, r0
/* 802A86C0 002A4320 7F E4 E9 AE */ stbx r31, r4, r29
/* 802A86C4 002A4324 7F 84 E3 78 */ mr r4, r28
/* 802A86C8 002A4328 38 A0 00 06 */ li r5, 6
/* 802A86CC 002A432C 38 63 00 01 */ addi r3, r3, 1
/* 802A86D0 002A4330 4B D5 B9 31 */ bl memcpy
/* 802A86D4 002A4334 9B ED AE 59 */ stb r31, lbl_80640119-_SDA_BASE_(r13)
/* 802A86D8 002A4338 7F A3 EB 78 */ mr r3, r29
/* 802A86DC 002A433C 48 00 00 14 */ b lbl_802A86F0
lbl_802A86E0:
/* 802A86E0 002A4340 38 63 00 01 */ addi r3, r3, 1
/* 802A86E4 002A4344 3B BD 00 01 */ addi r29, r29, 1
/* 802A86E8 002A4348 42 00 FF B0 */ bdnz lbl_802A8698
/* 802A86EC 002A434C 38 60 FF FF */ li r3, -1
lbl_802A86F0:
/* 802A86F0 002A4350 39 61 00 20 */ addi r11, r1, 0x20
/* 802A86F4 002A4354 4B F1 EA 81 */ bl _restgpr_27
/* 802A86F8 002A4358 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A86FC 002A435C 7C 08 03 A6 */ mtlr r0
/* 802A8700 002A4360 38 21 00 20 */ addi r1, r1, 0x20
/* 802A8704 002A4364 4E 80 00 20 */ blr
WPADiConnCallback:
/* 802A8708 002A4368 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 802A870C 002A436C 7C 08 02 A6 */ mflr r0
/* 802A8710 002A4370 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 802A8714 002A4374 39 61 00 C0 */ addi r11, r1, 0xc0
/* 802A8718 002A4378 4B F1 EA 0D */ bl _savegpr_26
/* 802A871C 002A437C 2C 04 00 00 */ cmpwi r4, 0
/* 802A8720 002A4380 3F E0 80 44 */ lis r31, lbl_8043BFB8@ha
/* 802A8724 002A4384 7C 7A 1B 78 */ mr r26, r3
/* 802A8728 002A4388 3B FF BF B8 */ addi r31, r31, lbl_8043BFB8@l
/* 802A872C 002A438C 41 82 01 E0 */ beq lbl_802A890C
/* 802A8730 002A4390 38 7F 01 5C */ addi r3, r31, 0x15c
/* 802A8734 002A4394 4C C6 31 82 */ crclr 6
/* 802A8738 002A4398 48 00 B1 29 */ bl DEBUGPrint
/* 802A873C 002A439C 7F 43 D3 78 */ mr r3, r26
/* 802A8740 002A43A0 4B FF FE C9 */ bl WPADiRetrieveChannel
/* 802A8744 002A43A4 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A8748 002A43A8 3C 80 80 53 */ lis r4, lbl_80537D80@ha
/* 802A874C 002A43AC 38 84 7D 80 */ addi r4, r4, lbl_80537D80@l
/* 802A8750 002A43B0 54 60 10 3A */ slwi r0, r3, 2
/* 802A8754 002A43B4 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A8758 002A43B8 7C 64 D1 AE */ stbx r3, r4, r26
/* 802A875C 002A43BC 7F 85 00 2E */ lwzx r28, r5, r0
/* 802A8760 002A43C0 4B FF EE AD */ bl __ClearControlBlock
/* 802A8764 002A43C4 9B 5C 08 C3 */ stb r26, 0x8c3(r28)
/* 802A8768 002A43C8 39 60 00 00 */ li r11, 0
/* 802A876C 002A43CC 3C C0 80 2A */ lis r6, firmwareCheckCallback@ha
/* 802A8770 002A43D0 39 40 00 01 */ li r10, 1
/* 802A8774 002A43D4 99 7C 08 C1 */ stb r11, 0x8c1(r28)
/* 802A8778 002A43D8 39 20 00 64 */ li r9, 0x64
/* 802A877C 002A43DC 38 C6 7D 2C */ addi r6, r6, firmwareCheckCallback@l
/* 802A8780 002A43E0 39 00 17 70 */ li r8, 0x1770
/* 802A8784 002A43E4 91 7C 08 B8 */ stw r11, 0x8b8(r28)
/* 802A8788 002A43E8 38 E0 00 17 */ li r7, 0x17
/* 802A878C 002A43EC 38 00 00 06 */ li r0, 6
/* 802A8790 002A43F0 38 61 00 14 */ addi r3, r1, 0x14
/* 802A8794 002A43F4 91 5C 08 D8 */ stw r10, 0x8d8(r28)
/* 802A8798 002A43F8 38 81 00 0C */ addi r4, r1, 0xc
/* 802A879C 002A43FC 38 A0 00 04 */ li r5, 4
/* 802A87A0 002A4400 91 7C 08 BC */ stw r11, 0x8bc(r28)
/* 802A87A4 002A4404 99 3C 09 83 */ stb r9, 0x983(r28)
/* 802A87A8 002A4408 99 7C 09 86 */ stb r11, 0x986(r28)
/* 802A87AC 002A440C 91 01 00 0C */ stw r8, 0xc(r1)
/* 802A87B0 002A4410 B1 41 00 08 */ sth r10, 8(r1)
/* 802A87B4 002A4414 90 E1 00 10 */ stw r7, 0x10(r1)
/* 802A87B8 002A4418 B0 01 00 2A */ sth r0, 0x2a(r1)
/* 802A87BC 002A441C 90 C1 00 3C */ stw r6, 0x3c(r1)
/* 802A87C0 002A4420 4B D5 B8 41 */ bl memcpy
/* 802A87C4 002A4424 38 61 00 18 */ addi r3, r1, 0x18
/* 802A87C8 002A4428 38 81 00 08 */ addi r4, r1, 8
/* 802A87CC 002A442C 38 A0 00 02 */ li r5, 2
/* 802A87D0 002A4430 4B D5 B8 31 */ bl memcpy
/* 802A87D4 002A4434 A0 01 00 08 */ lhz r0, 8(r1)
/* 802A87D8 002A4438 3B BC 09 34 */ addi r29, r28, 0x934
/* 802A87DC 002A443C 81 81 00 0C */ lwz r12, 0xc(r1)
/* 802A87E0 002A4440 B0 01 00 30 */ sth r0, 0x30(r1)
/* 802A87E4 002A4444 81 61 00 10 */ lwz r11, 0x10(r1)
/* 802A87E8 002A4448 81 41 00 14 */ lwz r10, 0x14(r1)
/* 802A87EC 002A444C 81 21 00 18 */ lwz r9, 0x18(r1)
/* 802A87F0 002A4450 81 01 00 1C */ lwz r8, 0x1c(r1)
/* 802A87F4 002A4454 80 E1 00 20 */ lwz r7, 0x20(r1)
/* 802A87F8 002A4458 80 C1 00 24 */ lwz r6, 0x24(r1)
/* 802A87FC 002A445C 80 A1 00 28 */ lwz r5, 0x28(r1)
/* 802A8800 002A4460 80 81 00 30 */ lwz r4, 0x30(r1)
/* 802A8804 002A4464 80 61 00 38 */ lwz r3, 0x38(r1)
/* 802A8808 002A4468 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 802A880C 002A446C 93 A1 00 2C */ stw r29, 0x2c(r1)
/* 802A8810 002A4470 91 81 00 34 */ stw r12, 0x34(r1)
/* 802A8814 002A4474 91 61 00 40 */ stw r11, 0x40(r1)
/* 802A8818 002A4478 91 41 00 44 */ stw r10, 0x44(r1)
/* 802A881C 002A447C 91 21 00 48 */ stw r9, 0x48(r1)
/* 802A8820 002A4480 91 01 00 4C */ stw r8, 0x4c(r1)
/* 802A8824 002A4484 90 E1 00 50 */ stw r7, 0x50(r1)
/* 802A8828 002A4488 90 C1 00 54 */ stw r6, 0x54(r1)
/* 802A882C 002A448C 90 A1 00 58 */ stw r5, 0x58(r1)
/* 802A8830 002A4490 93 A1 00 5C */ stw r29, 0x5c(r1)
/* 802A8834 002A4494 90 81 00 60 */ stw r4, 0x60(r1)
/* 802A8838 002A4498 91 81 00 64 */ stw r12, 0x64(r1)
/* 802A883C 002A449C 90 61 00 68 */ stw r3, 0x68(r1)
/* 802A8840 002A44A0 90 01 00 6C */ stw r0, 0x6c(r1)
/* 802A8844 002A44A4 4B FC 5F 19 */ bl OSDisableInterrupts
/* 802A8848 002A44A8 7C 7D 1B 78 */ mr r29, r3
/* 802A884C 002A44AC 4B FC 5F 11 */ bl OSDisableInterrupts
/* 802A8850 002A44B0 88 9C 01 60 */ lbz r4, 0x160(r28)
/* 802A8854 002A44B4 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A8858 002A44B8 7C 04 00 50 */ subf r0, r4, r0
/* 802A885C 002A44BC 7C 1E 07 75 */ extsb. r30, r0
/* 802A8860 002A44C0 40 80 00 10 */ bge lbl_802A8870
/* 802A8864 002A44C4 80 1C 01 68 */ lwz r0, 0x168(r28)
/* 802A8868 002A44C8 7C 1E 02 14 */ add r0, r30, r0
/* 802A886C 002A44CC 7C 1E 07 74 */ extsb r30, r0
lbl_802A8870:
/* 802A8870 002A44D0 4B FC 5F 15 */ bl OSRestoreInterrupts
/* 802A8874 002A44D4 80 7C 01 68 */ lwz r3, 0x168(r28)
/* 802A8878 002A44D8 38 03 FF FF */ addi r0, r3, -1
/* 802A887C 002A44DC 7C 00 F0 40 */ cmplw r0, r30
/* 802A8880 002A44E0 40 82 00 10 */ bne lbl_802A8890
/* 802A8884 002A44E4 7F A3 EB 78 */ mr r3, r29
/* 802A8888 002A44E8 4B FC 5E FD */ bl OSRestoreInterrupts
/* 802A888C 002A44EC 48 00 00 78 */ b lbl_802A8904
lbl_802A8890:
/* 802A8890 002A44F0 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A8894 002A44F4 38 80 00 00 */ li r4, 0
/* 802A8898 002A44F8 80 7C 01 64 */ lwz r3, 0x164(r28)
/* 802A889C 002A44FC 38 A0 00 30 */ li r5, 0x30
/* 802A88A0 002A4500 7C 00 07 74 */ extsb r0, r0
/* 802A88A4 002A4504 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A88A8 002A4508 7C 63 02 14 */ add r3, r3, r0
/* 802A88AC 002A450C 4B D5 B8 59 */ bl memset
/* 802A88B0 002A4510 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A88B4 002A4514 38 81 00 40 */ addi r4, r1, 0x40
/* 802A88B8 002A4518 80 7C 01 64 */ lwz r3, 0x164(r28)
/* 802A88BC 002A451C 38 A0 00 30 */ li r5, 0x30
/* 802A88C0 002A4520 7C 00 07 74 */ extsb r0, r0
/* 802A88C4 002A4524 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A88C8 002A4528 7C 63 02 14 */ add r3, r3, r0
/* 802A88CC 002A452C 4B D5 B7 35 */ bl memcpy
/* 802A88D0 002A4530 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A88D4 002A4534 7F A3 EB 78 */ mr r3, r29
/* 802A88D8 002A4538 80 9C 01 68 */ lwz r4, 0x168(r28)
/* 802A88DC 002A453C 7C 06 07 74 */ extsb r6, r0
/* 802A88E0 002A4540 38 84 FF FF */ addi r4, r4, -1
/* 802A88E4 002A4544 7C A4 30 50 */ subf r5, r4, r6
/* 802A88E8 002A4548 38 06 00 01 */ addi r0, r6, 1
/* 802A88EC 002A454C 7C 86 20 50 */ subf r4, r6, r4
/* 802A88F0 002A4550 7C A4 20 F8 */ nor r4, r5, r4
/* 802A88F4 002A4554 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A88F8 002A4558 7C 00 20 78 */ andc r0, r0, r4
/* 802A88FC 002A455C 98 1C 01 61 */ stb r0, 0x161(r28)
/* 802A8900 002A4560 4B FC 5E 85 */ bl OSRestoreInterrupts
lbl_802A8904:
/* 802A8904 002A4564 4B FD 15 59 */ bl __VIResetRFIdle
/* 802A8908 002A4568 48 00 02 2C */ b lbl_802A8B34
lbl_802A890C:
/* 802A890C 002A456C 38 7F 01 74 */ addi r3, r31, 0x174
/* 802A8910 002A4570 4C C6 31 82 */ crclr 6
/* 802A8914 002A4574 48 00 AF 4D */ bl DEBUGPrint
/* 802A8918 002A4578 3C 60 80 53 */ lis r3, lbl_80537D80@ha
/* 802A891C 002A457C 38 80 FF FF */ li r4, -1
/* 802A8920 002A4580 38 63 7D 80 */ addi r3, r3, lbl_80537D80@l
/* 802A8924 002A4584 7F A3 D0 AE */ lbzx r29, r3, r26
/* 802A8928 002A4588 7F BD 07 74 */ extsb r29, r29
/* 802A892C 002A458C 7C 83 D1 AE */ stbx r4, r3, r26
/* 802A8930 002A4590 2C 1D FF FF */ cmpwi r29, -1
/* 802A8934 002A4594 41 82 01 F4 */ beq lbl_802A8B28
/* 802A8938 002A4598 3C 60 80 53 */ lis r3, lbl_80536D70@ha
/* 802A893C 002A459C 57 A0 10 3A */ slwi r0, r29, 2
/* 802A8940 002A45A0 38 63 6D 70 */ addi r3, r3, lbl_80536D70@l
/* 802A8944 002A45A4 7F 83 00 2E */ lwzx r28, r3, r0
/* 802A8948 002A45A8 90 9C 08 BC */ stw r4, 0x8bc(r28)
/* 802A894C 002A45AC 81 9C 08 9C */ lwz r12, 0x89c(r28)
/* 802A8950 002A45B0 2C 0C 00 00 */ cmpwi r12, 0
/* 802A8954 002A45B4 41 82 00 18 */ beq lbl_802A896C
/* 802A8958 002A45B8 7F A3 EB 78 */ mr r3, r29
/* 802A895C 002A45BC 38 80 FF FF */ li r4, -1
/* 802A8960 002A45C0 7D 89 03 A6 */ mtctr r12
/* 802A8964 002A45C4 4E 80 04 21 */ bctrl
/* 802A8968 002A45C8 48 00 00 30 */ b lbl_802A8998
lbl_802A896C:
/* 802A896C 002A45CC 1C 1D 00 14 */ mulli r0, r29, 0x14
/* 802A8970 002A45D0 3C 60 80 54 */ lis r3, lbl_8053A480@ha
/* 802A8974 002A45D4 38 63 A4 80 */ addi r3, r3, lbl_8053A480@l
/* 802A8978 002A45D8 7C 63 02 14 */ add r3, r3, r0
/* 802A897C 002A45DC 81 83 00 10 */ lwz r12, 0x10(r3)
/* 802A8980 002A45E0 2C 0C 00 00 */ cmpwi r12, 0
/* 802A8984 002A45E4 41 82 00 14 */ beq lbl_802A8998
/* 802A8988 002A45E8 7F A3 EB 78 */ mr r3, r29
/* 802A898C 002A45EC 38 80 FF FF */ li r4, -1
/* 802A8990 002A45F0 7D 89 03 A6 */ mtctr r12
/* 802A8994 002A45F4 4E 80 04 21 */ bctrl
lbl_802A8998:
/* 802A8998 002A45F8 4B FC 5D C5 */ bl OSDisableInterrupts
/* 802A899C 002A45FC 7C 7B 1B 78 */ mr r27, r3
/* 802A89A0 002A4600 4B FC 5D BD */ bl OSDisableInterrupts
/* 802A89A4 002A4604 88 9C 01 60 */ lbz r4, 0x160(r28)
/* 802A89A8 002A4608 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A89AC 002A460C 7C 04 00 50 */ subf r0, r4, r0
/* 802A89B0 002A4610 7C 1E 07 75 */ extsb. r30, r0
/* 802A89B4 002A4614 40 80 00 10 */ bge lbl_802A89C4
/* 802A89B8 002A4618 80 1C 01 68 */ lwz r0, 0x168(r28)
/* 802A89BC 002A461C 7C 1E 02 14 */ add r0, r30, r0
/* 802A89C0 002A4620 7C 1E 07 74 */ extsb r30, r0
lbl_802A89C4:
/* 802A89C4 002A4624 4B FC 5D C1 */ bl OSRestoreInterrupts
/* 802A89C8 002A4628 2C 1E 00 00 */ cmpwi r30, 0
/* 802A89CC 002A462C 40 82 00 14 */ bne lbl_802A89E0
/* 802A89D0 002A4630 7F 63 DB 78 */ mr r3, r27
/* 802A89D4 002A4634 4B FC 5D B1 */ bl OSRestoreInterrupts
/* 802A89D8 002A4638 3B C0 00 00 */ li r30, 0
/* 802A89DC 002A463C 48 00 00 30 */ b lbl_802A8A0C
lbl_802A89E0:
/* 802A89E0 002A4640 88 1C 01 60 */ lbz r0, 0x160(r28)
/* 802A89E4 002A4644 38 61 00 70 */ addi r3, r1, 0x70
/* 802A89E8 002A4648 80 9C 01 64 */ lwz r4, 0x164(r28)
/* 802A89EC 002A464C 38 A0 00 30 */ li r5, 0x30
/* 802A89F0 002A4650 7C 00 07 74 */ extsb r0, r0
/* 802A89F4 002A4654 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A89F8 002A4658 7C 84 02 14 */ add r4, r4, r0
/* 802A89FC 002A465C 4B D5 B6 05 */ bl memcpy
/* 802A8A00 002A4660 7F 63 DB 78 */ mr r3, r27
/* 802A8A04 002A4664 4B FC 5D 81 */ bl OSRestoreInterrupts
/* 802A8A08 002A4668 3B C0 00 01 */ li r30, 1
lbl_802A8A0C:
/* 802A8A0C 002A466C 2C 1E 00 00 */ cmpwi r30, 0
/* 802A8A10 002A4670 41 82 00 B8 */ beq lbl_802A8AC8
/* 802A8A14 002A4674 81 81 00 9C */ lwz r12, 0x9c(r1)
/* 802A8A18 002A4678 2C 0C 00 00 */ cmpwi r12, 0
/* 802A8A1C 002A467C 41 82 00 14 */ beq lbl_802A8A30
/* 802A8A20 002A4680 7F A3 EB 78 */ mr r3, r29
/* 802A8A24 002A4684 38 80 FF FF */ li r4, -1
/* 802A8A28 002A4688 7D 89 03 A6 */ mtctr r12
/* 802A8A2C 002A468C 4E 80 04 21 */ bctrl
lbl_802A8A30:
/* 802A8A30 002A4690 4B FC 5D 2D */ bl OSDisableInterrupts
/* 802A8A34 002A4694 7C 7A 1B 78 */ mr r26, r3
/* 802A8A38 002A4698 4B FC 5D 25 */ bl OSDisableInterrupts
/* 802A8A3C 002A469C 88 9C 01 60 */ lbz r4, 0x160(r28)
/* 802A8A40 002A46A0 88 1C 01 61 */ lbz r0, 0x161(r28)
/* 802A8A44 002A46A4 7C 04 00 50 */ subf r0, r4, r0
/* 802A8A48 002A46A8 7C 1B 07 75 */ extsb. r27, r0
/* 802A8A4C 002A46AC 40 80 00 10 */ bge lbl_802A8A5C
/* 802A8A50 002A46B0 80 1C 01 68 */ lwz r0, 0x168(r28)
/* 802A8A54 002A46B4 7C 1B 02 14 */ add r0, r27, r0
/* 802A8A58 002A46B8 7C 1B 07 74 */ extsb r27, r0
lbl_802A8A5C:
/* 802A8A5C 002A46BC 4B FC 5D 29 */ bl OSRestoreInterrupts
/* 802A8A60 002A46C0 2C 1B 00 00 */ cmpwi r27, 0
/* 802A8A64 002A46C4 40 82 00 10 */ bne lbl_802A8A74
/* 802A8A68 002A46C8 7F 43 D3 78 */ mr r3, r26
/* 802A8A6C 002A46CC 4B FC 5D 19 */ bl OSRestoreInterrupts
/* 802A8A70 002A46D0 48 00 00 58 */ b lbl_802A8AC8
lbl_802A8A74:
/* 802A8A74 002A46D4 88 1C 01 60 */ lbz r0, 0x160(r28)
/* 802A8A78 002A46D8 38 80 00 00 */ li r4, 0
/* 802A8A7C 002A46DC 80 7C 01 64 */ lwz r3, 0x164(r28)
/* 802A8A80 002A46E0 38 A0 00 30 */ li r5, 0x30
/* 802A8A84 002A46E4 7C 00 07 74 */ extsb r0, r0
/* 802A8A88 002A46E8 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A8A8C 002A46EC 7C 63 02 14 */ add r3, r3, r0
/* 802A8A90 002A46F0 4B D5 B6 75 */ bl memset
/* 802A8A94 002A46F4 88 1C 01 60 */ lbz r0, 0x160(r28)
/* 802A8A98 002A46F8 7F 43 D3 78 */ mr r3, r26
/* 802A8A9C 002A46FC 80 9C 01 68 */ lwz r4, 0x168(r28)
/* 802A8AA0 002A4700 7C 06 07 74 */ extsb r6, r0
/* 802A8AA4 002A4704 38 84 FF FF */ addi r4, r4, -1
/* 802A8AA8 002A4708 7C A4 30 50 */ subf r5, r4, r6
/* 802A8AAC 002A470C 38 06 00 01 */ addi r0, r6, 1
/* 802A8AB0 002A4710 7C 86 20 50 */ subf r4, r6, r4
/* 802A8AB4 002A4714 7C A4 20 F8 */ nor r4, r5, r4
/* 802A8AB8 002A4718 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A8ABC 002A471C 7C 00 20 78 */ andc r0, r0, r4
/* 802A8AC0 002A4720 98 1C 01 60 */ stb r0, 0x160(r28)
/* 802A8AC4 002A4724 4B FC 5C C1 */ bl OSRestoreInterrupts
lbl_802A8AC8:
/* 802A8AC8 002A4728 2C 1E 00 00 */ cmpwi r30, 0
/* 802A8ACC 002A472C 40 82 FE CC */ bne lbl_802A8998
/* 802A8AD0 002A4730 38 7F 01 90 */ addi r3, r31, 0x190
/* 802A8AD4 002A4734 4C C6 31 82 */ crclr 6
/* 802A8AD8 002A4738 48 00 AD 89 */ bl DEBUGPrint
/* 802A8ADC 002A473C 80 9C 08 AC */ lwz r4, 0x8ac(r28)
/* 802A8AE0 002A4740 2C 04 00 00 */ cmpwi r4, 0
/* 802A8AE4 002A4744 41 82 00 10 */ beq lbl_802A8AF4
/* 802A8AE8 002A4748 80 BC 08 B4 */ lwz r5, 0x8b4(r28)
/* 802A8AEC 002A474C 7F A3 EB 78 */ mr r3, r29
/* 802A8AF0 002A4750 48 00 0D 21 */ bl WPADSetAutoSamplingBuf
lbl_802A8AF4:
/* 802A8AF4 002A4754 7F A3 EB 78 */ mr r3, r29
/* 802A8AF8 002A4758 4B FF EB 15 */ bl __ClearControlBlock
/* 802A8AFC 002A475C 38 00 00 00 */ li r0, 0
/* 802A8B00 002A4760 38 6D AE 50 */ addi r3, r13, lbl_80640110-_SDA_BASE_
/* 802A8B04 002A4764 7C 03 E9 AE */ stbx r0, r3, r29
/* 802A8B08 002A4768 81 9C 08 A4 */ lwz r12, 0x8a4(r28)
/* 802A8B0C 002A476C 2C 0C 00 00 */ cmpwi r12, 0
/* 802A8B10 002A4770 41 82 00 24 */ beq lbl_802A8B34
/* 802A8B14 002A4774 7F A3 EB 78 */ mr r3, r29
/* 802A8B18 002A4778 38 80 FF FF */ li r4, -1
/* 802A8B1C 002A477C 7D 89 03 A6 */ mtctr r12
/* 802A8B20 002A4780 4E 80 04 21 */ bctrl
/* 802A8B24 002A4784 48 00 00 10 */ b lbl_802A8B34
lbl_802A8B28:
/* 802A8B28 002A4788 38 7F 01 A8 */ addi r3, r31, 0x1a8
/* 802A8B2C 002A478C 4C C6 31 82 */ crclr 6
/* 802A8B30 002A4790 48 00 AD 31 */ bl DEBUGPrint
lbl_802A8B34:
/* 802A8B34 002A4794 39 61 00 C0 */ addi r11, r1, 0xc0
/* 802A8B38 002A4798 4B F1 E6 39 */ bl _restgpr_26
/* 802A8B3C 002A479C 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 802A8B40 002A47A0 7C 08 03 A6 */ mtlr r0
/* 802A8B44 002A47A4 38 21 00 C0 */ addi r1, r1, 0xc0
/* 802A8B48 002A47A8 4E 80 00 20 */ blr
WPADiRecvCallback:
/* 802A8B4C 002A47AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A8B50 002A47B0 7C 08 02 A6 */ mflr r0
/* 802A8B54 002A47B4 3C A0 80 53 */ lis r5, lbl_80537D80@ha
/* 802A8B58 002A47B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A8B5C 002A47BC 38 A5 7D 80 */ addi r5, r5, lbl_80537D80@l
/* 802A8B60 002A47C0 7C 05 18 AE */ lbzx r0, r5, r3
/* 802A8B64 002A47C4 28 00 00 04 */ cmplwi r0, 4
/* 802A8B68 002A47C8 41 81 00 2C */ bgt lbl_802A8B94
/* 802A8B6C 002A47CC 7C 03 03 78 */ mr r3, r0
/* 802A8B70 002A47D0 48 00 56 B9 */ bl WPADiHIDParser
/* 802A8B74 002A47D4 2C 03 00 00 */ cmpwi r3, 0
/* 802A8B78 002A47D8 7C 64 1B 78 */ mr r4, r3
/* 802A8B7C 002A47DC 41 82 00 2C */ beq lbl_802A8BA8
/* 802A8B80 002A47E0 3C 60 80 44 */ lis r3, lbl_8043C1A8@ha
/* 802A8B84 002A47E4 38 63 C1 A8 */ addi r3, r3, lbl_8043C1A8@l
/* 802A8B88 002A47E8 4C C6 31 82 */ crclr 6
/* 802A8B8C 002A47EC 48 00 AC D5 */ bl DEBUGPrint
/* 802A8B90 002A47F0 48 00 00 18 */ b lbl_802A8BA8
lbl_802A8B94:
/* 802A8B94 002A47F4 3C 60 80 44 */ lis r3, lbl_8043C1C0@ha
/* 802A8B98 002A47F8 7C 04 03 78 */ mr r4, r0
/* 802A8B9C 002A47FC 38 63 C1 C0 */ addi r3, r3, lbl_8043C1C0@l
/* 802A8BA0 002A4800 4C C6 31 82 */ crclr 6
/* 802A8BA4 002A4804 48 00 AC BD */ bl DEBUGPrint
lbl_802A8BA8:
/* 802A8BA8 002A4808 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A8BAC 002A480C 7C 08 03 A6 */ mtlr r0
/* 802A8BB0 002A4810 38 21 00 10 */ addi r1, r1, 0x10
/* 802A8BB4 002A4814 4E 80 00 20 */ blr
.global WPADGetAccGravityUnit
WPADGetAccGravityUnit:
/* 802A8BB8 002A4818 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A8BBC 002A481C 7C 08 02 A6 */ mflr r0
/* 802A8BC0 002A4820 3C C0 80 53 */ lis r6, lbl_80536D70@ha
/* 802A8BC4 002A4824 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A8BC8 002A4828 54 60 10 3A */ slwi r0, r3, 2
/* 802A8BCC 002A482C 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l
/* 802A8BD0 002A4830 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A8BD4 002A4834 7C BF 2B 78 */ mr r31, r5
/* 802A8BD8 002A4838 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A8BDC 002A483C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A8BE0 002A4840 7C 9D 23 78 */ mr r29, r4
/* 802A8BE4 002A4844 7F C6 00 2E */ lwzx r30, r6, r0
/* 802A8BE8 002A4848 4B FC 5B 75 */ bl OSDisableInterrupts
/* 802A8BEC 002A484C 2C 1F 00 00 */ cmpwi r31, 0
/* 802A8BF0 002A4850 41 82 00 80 */ beq lbl_802A8C70
/* 802A8BF4 002A4854 2C 1D 00 01 */ cmpwi r29, 1
/* 802A8BF8 002A4858 41 82 00 48 */ beq lbl_802A8C40
/* 802A8BFC 002A485C 40 80 00 74 */ bge lbl_802A8C70
/* 802A8C00 002A4860 2C 1D 00 00 */ cmpwi r29, 0
/* 802A8C04 002A4864 40 80 00 08 */ bge lbl_802A8C0C
/* 802A8C08 002A4868 48 00 00 68 */ b lbl_802A8C70
lbl_802A8C0C:
/* 802A8C0C 002A486C A8 9E 08 74 */ lha r4, 0x874(r30)
/* 802A8C10 002A4870 A8 1E 08 7A */ lha r0, 0x87a(r30)
/* 802A8C14 002A4874 7C 04 00 50 */ subf r0, r4, r0
/* 802A8C18 002A4878 B0 1F 00 00 */ sth r0, 0(r31)
/* 802A8C1C 002A487C A8 9E 08 76 */ lha r4, 0x876(r30)
/* 802A8C20 002A4880 A8 1E 08 7C */ lha r0, 0x87c(r30)
/* 802A8C24 002A4884 7C 04 00 50 */ subf r0, r4, r0
/* 802A8C28 002A4888 B0 1F 00 02 */ sth r0, 2(r31)
/* 802A8C2C 002A488C A8 9E 08 78 */ lha r4, 0x878(r30)
/* 802A8C30 002A4890 A8 1E 08 7E */ lha r0, 0x87e(r30)
/* 802A8C34 002A4894 7C 04 00 50 */ subf r0, r4, r0
/* 802A8C38 002A4898 B0 1F 00 04 */ sth r0, 4(r31)
/* 802A8C3C 002A489C 48 00 00 34 */ b lbl_802A8C70
lbl_802A8C40:
/* 802A8C40 002A48A0 A8 9E 08 8E */ lha r4, 0x88e(r30)
/* 802A8C44 002A48A4 A8 1E 08 94 */ lha r0, 0x894(r30)
/* 802A8C48 002A48A8 7C 04 00 50 */ subf r0, r4, r0
/* 802A8C4C 002A48AC B0 1F 00 00 */ sth r0, 0(r31)
/* 802A8C50 002A48B0 A8 9E 08 90 */ lha r4, 0x890(r30)
/* 802A8C54 002A48B4 A8 1E 08 96 */ lha r0, 0x896(r30)
/* 802A8C58 002A48B8 7C 04 00 50 */ subf r0, r4, r0
/* 802A8C5C 002A48BC B0 1F 00 02 */ sth r0, 2(r31)
/* 802A8C60 002A48C0 A8 9E 08 92 */ lha r4, 0x892(r30)
/* 802A8C64 002A48C4 A8 1E 08 98 */ lha r0, 0x898(r30)
/* 802A8C68 002A48C8 7C 04 00 50 */ subf r0, r4, r0
/* 802A8C6C 002A48CC B0 1F 00 04 */ sth r0, 4(r31)
lbl_802A8C70:
/* 802A8C70 002A48D0 4B FC 5B 15 */ bl OSRestoreInterrupts
/* 802A8C74 002A48D4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A8C78 002A48D8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A8C7C 002A48DC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A8C80 002A48E0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A8C84 002A48E4 7C 08 03 A6 */ mtlr r0
/* 802A8C88 002A48E8 38 21 00 20 */ addi r1, r1, 0x20
/* 802A8C8C 002A48EC 4E 80 00 20 */ blr
CloseCallback:
/* 802A8C90 002A48F0 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A8C94 002A48F4 2C 04 FF FF */ cmpwi r4, -1
/* 802A8C98 002A48F8 54 60 10 3A */ slwi r0, r3, 2
/* 802A8C9C 002A48FC 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A8CA0 002A4900 7C 65 00 2E */ lwzx r3, r5, r0
/* 802A8CA4 002A4904 4D 82 00 20 */ beqlr
/* 802A8CA8 002A4908 88 63 08 C3 */ lbz r3, 0x8c3(r3)
/* 802A8CAC 002A490C 48 01 9B 70 */ b BTA_HhClose
/* 802A8CB0 002A4910 4E 80 00 20 */ blr
.global WPADDisconnect
WPADDisconnect:
/* 802A8CB4 002A4914 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A8CB8 002A4918 7C 08 02 A6 */ mflr r0
/* 802A8CBC 002A491C 3C A0 80 54 */ lis r5, lbl_8053AC28@ha
/* 802A8CC0 002A4920 38 80 00 00 */ li r4, 0
/* 802A8CC4 002A4924 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A8CC8 002A4928 38 03 00 0A */ addi r0, r3, 0xa
/* 802A8CCC 002A492C 1C 00 00 46 */ mulli r0, r0, 0x46
/* 802A8CD0 002A4930 38 A5 AC 28 */ addi r5, r5, lbl_8053AC28@l
/* 802A8CD4 002A4934 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A8CD8 002A4938 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A8CDC 002A493C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A8CE0 002A4940 93 81 00 10 */ stw r28, 0x10(r1)
/* 802A8CE4 002A4944 7C 7C 1B 78 */ mr r28, r3
/* 802A8CE8 002A4948 7C 65 02 14 */ add r3, r5, r0
/* 802A8CEC 002A494C 38 A0 00 46 */ li r5, 0x46
/* 802A8CF0 002A4950 38 63 00 01 */ addi r3, r3, 1
/* 802A8CF4 002A4954 4B D5 B4 11 */ bl memset
/* 802A8CF8 002A4958 3C 60 80 53 */ lis r3, lbl_80536D70@ha
/* 802A8CFC 002A495C 3B E0 00 01 */ li r31, 1
/* 802A8D00 002A4960 57 80 10 3A */ slwi r0, r28, 2
/* 802A8D04 002A4964 9B ED AE 59 */ stb r31, lbl_80640119-_SDA_BASE_(r13)
/* 802A8D08 002A4968 38 63 6D 70 */ addi r3, r3, lbl_80536D70@l
/* 802A8D0C 002A496C 7F A3 00 2E */ lwzx r29, r3, r0
/* 802A8D10 002A4970 4B FC 5A 4D */ bl OSDisableInterrupts
/* 802A8D14 002A4974 83 DD 08 BC */ lwz r30, 0x8bc(r29)
/* 802A8D18 002A4978 4B FC 5A 6D */ bl OSRestoreInterrupts
/* 802A8D1C 002A497C 2C 1E FF FF */ cmpwi r30, -1
/* 802A8D20 002A4980 41 82 00 38 */ beq lbl_802A8D58
/* 802A8D24 002A4984 4B FC 5A 39 */ bl OSDisableInterrupts
/* 802A8D28 002A4988 88 1D 09 86 */ lbz r0, 0x986(r29)
/* 802A8D2C 002A498C 2C 00 00 00 */ cmpwi r0, 0
/* 802A8D30 002A4990 41 82 00 0C */ beq lbl_802A8D3C
/* 802A8D34 002A4994 4B FC 5A 51 */ bl OSRestoreInterrupts
/* 802A8D38 002A4998 48 00 00 20 */ b lbl_802A8D58
lbl_802A8D3C:
/* 802A8D3C 002A499C 9B FD 09 86 */ stb r31, 0x986(r29)
/* 802A8D40 002A49A0 4B FC 5A 45 */ bl OSRestoreInterrupts
/* 802A8D44 002A49A4 3C A0 80 2B */ lis r5, CloseCallback@ha
/* 802A8D48 002A49A8 7F 83 E3 78 */ mr r3, r28
/* 802A8D4C 002A49AC 38 A5 8C 90 */ addi r5, r5, CloseCallback@l
/* 802A8D50 002A49B0 38 80 00 00 */ li r4, 0
/* 802A8D54 002A49B4 48 00 06 89 */ bl WPADControlLed
lbl_802A8D58:
/* 802A8D58 002A49B8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A8D5C 002A49BC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A8D60 002A49C0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A8D64 002A49C4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A8D68 002A49C8 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802A8D6C 002A49CC 7C 08 03 A6 */ mtlr r0
/* 802A8D70 002A49D0 38 21 00 20 */ addi r1, r1, 0x20
/* 802A8D74 002A49D4 4E 80 00 20 */ blr
.global WPADProbe
WPADProbe:
/* 802A8D78 002A49D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A8D7C 002A49DC 7C 08 02 A6 */ mflr r0
/* 802A8D80 002A49E0 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A8D84 002A49E4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A8D88 002A49E8 54 60 10 3A */ slwi r0, r3, 2
/* 802A8D8C 002A49EC 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A8D90 002A49F0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A8D94 002A49F4 93 C1 00 08 */ stw r30, 8(r1)
/* 802A8D98 002A49F8 7C 9E 23 78 */ mr r30, r4
/* 802A8D9C 002A49FC 7F E5 00 2E */ lwzx r31, r5, r0
/* 802A8DA0 002A4A00 4B FC 59 BD */ bl OSDisableInterrupts
/* 802A8DA4 002A4A04 2C 1E 00 00 */ cmpwi r30, 0
/* 802A8DA8 002A4A08 41 82 00 0C */ beq lbl_802A8DB4
/* 802A8DAC 002A4A0C 88 1F 08 C1 */ lbz r0, 0x8c1(r31)
/* 802A8DB0 002A4A10 90 1E 00 00 */ stw r0, 0(r30)
lbl_802A8DB4:
/* 802A8DB4 002A4A14 83 DF 08 BC */ lwz r30, 0x8bc(r31)
/* 802A8DB8 002A4A18 2C 1E FF FF */ cmpwi r30, -1
/* 802A8DBC 002A4A1C 41 82 00 28 */ beq lbl_802A8DE4
/* 802A8DC0 002A4A20 88 1F 08 C1 */ lbz r0, 0x8c1(r31)
/* 802A8DC4 002A4A24 28 00 00 FD */ cmplwi r0, 0xfd
/* 802A8DC8 002A4A28 40 82 00 0C */ bne lbl_802A8DD4
/* 802A8DCC 002A4A2C 3B C0 FF FF */ li r30, -1
/* 802A8DD0 002A4A30 48 00 00 14 */ b lbl_802A8DE4
lbl_802A8DD4:
/* 802A8DD4 002A4A34 80 1F 08 DC */ lwz r0, 0x8dc(r31)
/* 802A8DD8 002A4A38 2C 00 00 00 */ cmpwi r0, 0
/* 802A8DDC 002A4A3C 40 82 00 08 */ bne lbl_802A8DE4
/* 802A8DE0 002A4A40 3B C0 FF FE */ li r30, -2
lbl_802A8DE4:
/* 802A8DE4 002A4A44 4B FC 59 A1 */ bl OSRestoreInterrupts
/* 802A8DE8 002A4A48 7F C3 F3 78 */ mr r3, r30
/* 802A8DEC 002A4A4C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A8DF0 002A4A50 83 C1 00 08 */ lwz r30, 8(r1)
/* 802A8DF4 002A4A54 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A8DF8 002A4A58 7C 08 03 A6 */ mtlr r0
/* 802A8DFC 002A4A5C 38 21 00 10 */ addi r1, r1, 0x10
/* 802A8E00 002A4A60 4E 80 00 20 */ blr
.global WPADSetSamplingCallback
WPADSetSamplingCallback:
/* 802A8E04 002A4A64 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A8E08 002A4A68 7C 08 02 A6 */ mflr r0
/* 802A8E0C 002A4A6C 3C A0 80 44 */ lis r5, lbl_8043C1EC@ha
/* 802A8E10 002A4A70 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A8E14 002A4A74 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A8E18 002A4A78 7C 7F 1B 78 */ mr r31, r3
/* 802A8E1C 002A4A7C 38 65 C1 EC */ addi r3, r5, lbl_8043C1EC@l
/* 802A8E20 002A4A80 93 C1 00 08 */ stw r30, 8(r1)
/* 802A8E24 002A4A84 7C 9E 23 78 */ mr r30, r4
/* 802A8E28 002A4A88 4C C6 31 82 */ crclr 6
/* 802A8E2C 002A4A8C 48 00 AA 35 */ bl DEBUGPrint
/* 802A8E30 002A4A90 4B FC 59 2D */ bl OSDisableInterrupts
/* 802A8E34 002A4A94 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A8E38 002A4A98 57 E0 10 3A */ slwi r0, r31, 2
/* 802A8E3C 002A4A9C 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A8E40 002A4AA0 7C 84 00 2E */ lwzx r4, r4, r0
/* 802A8E44 002A4AA4 83 E4 08 A8 */ lwz r31, 0x8a8(r4)
/* 802A8E48 002A4AA8 93 C4 08 A8 */ stw r30, 0x8a8(r4)
/* 802A8E4C 002A4AAC 4B FC 59 39 */ bl OSRestoreInterrupts
/* 802A8E50 002A4AB0 7F E3 FB 78 */ mr r3, r31
/* 802A8E54 002A4AB4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A8E58 002A4AB8 83 C1 00 08 */ lwz r30, 8(r1)
/* 802A8E5C 002A4ABC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A8E60 002A4AC0 7C 08 03 A6 */ mtlr r0
/* 802A8E64 002A4AC4 38 21 00 10 */ addi r1, r1, 0x10
/* 802A8E68 002A4AC8 4E 80 00 20 */ blr
.global WPADSetConnectCallback
WPADSetConnectCallback:
/* 802A8E6C 002A4ACC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A8E70 002A4AD0 7C 08 02 A6 */ mflr r0
/* 802A8E74 002A4AD4 3C A0 80 44 */ lis r5, lbl_8043C208@ha
/* 802A8E78 002A4AD8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A8E7C 002A4ADC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A8E80 002A4AE0 7C 7F 1B 78 */ mr r31, r3
/* 802A8E84 002A4AE4 38 65 C2 08 */ addi r3, r5, lbl_8043C208@l
/* 802A8E88 002A4AE8 93 C1 00 08 */ stw r30, 8(r1)
/* 802A8E8C 002A4AEC 7C 9E 23 78 */ mr r30, r4
/* 802A8E90 002A4AF0 4C C6 31 82 */ crclr 6
/* 802A8E94 002A4AF4 48 00 A9 CD */ bl DEBUGPrint
/* 802A8E98 002A4AF8 4B FC 58 C5 */ bl OSDisableInterrupts
/* 802A8E9C 002A4AFC 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A8EA0 002A4B00 57 E0 10 3A */ slwi r0, r31, 2
/* 802A8EA4 002A4B04 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A8EA8 002A4B08 7C 84 00 2E */ lwzx r4, r4, r0
/* 802A8EAC 002A4B0C 83 E4 08 A4 */ lwz r31, 0x8a4(r4)
/* 802A8EB0 002A4B10 93 C4 08 A4 */ stw r30, 0x8a4(r4)
/* 802A8EB4 002A4B14 4B FC 58 D1 */ bl OSRestoreInterrupts
/* 802A8EB8 002A4B18 7F E3 FB 78 */ mr r3, r31
/* 802A8EBC 002A4B1C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A8EC0 002A4B20 83 C1 00 08 */ lwz r30, 8(r1)
/* 802A8EC4 002A4B24 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A8EC8 002A4B28 7C 08 03 A6 */ mtlr r0
/* 802A8ECC 002A4B2C 38 21 00 10 */ addi r1, r1, 0x10
/* 802A8ED0 002A4B30 4E 80 00 20 */ blr
.global WPADSetExtensionCallback
WPADSetExtensionCallback:
/* 802A8ED4 002A4B34 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A8ED8 002A4B38 7C 08 02 A6 */ mflr r0
/* 802A8EDC 002A4B3C 3C A0 80 44 */ lis r5, lbl_8043C224@ha
/* 802A8EE0 002A4B40 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A8EE4 002A4B44 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A8EE8 002A4B48 7C 7F 1B 78 */ mr r31, r3
/* 802A8EEC 002A4B4C 38 65 C2 24 */ addi r3, r5, lbl_8043C224@l
/* 802A8EF0 002A4B50 93 C1 00 08 */ stw r30, 8(r1)
/* 802A8EF4 002A4B54 7C 9E 23 78 */ mr r30, r4
/* 802A8EF8 002A4B58 4C C6 31 82 */ crclr 6
/* 802A8EFC 002A4B5C 48 00 A9 65 */ bl DEBUGPrint
/* 802A8F00 002A4B60 4B FC 58 5D */ bl OSDisableInterrupts
/* 802A8F04 002A4B64 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A8F08 002A4B68 57 E0 10 3A */ slwi r0, r31, 2
/* 802A8F0C 002A4B6C 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A8F10 002A4B70 7C 84 00 2E */ lwzx r4, r4, r0
/* 802A8F14 002A4B74 83 E4 08 A0 */ lwz r31, 0x8a0(r4)
/* 802A8F18 002A4B78 93 C4 08 A0 */ stw r30, 0x8a0(r4)
/* 802A8F1C 002A4B7C 4B FC 58 69 */ bl OSRestoreInterrupts
/* 802A8F20 002A4B80 7F E3 FB 78 */ mr r3, r31
/* 802A8F24 002A4B84 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A8F28 002A4B88 83 C1 00 08 */ lwz r30, 8(r1)
/* 802A8F2C 002A4B8C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A8F30 002A4B90 7C 08 03 A6 */ mtlr r0
/* 802A8F34 002A4B94 38 21 00 10 */ addi r1, r1, 0x10
/* 802A8F38 002A4B98 4E 80 00 20 */ blr
.global WPADGetDataFormat
WPADGetDataFormat:
/* 802A8F3C 002A4B9C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A8F40 002A4BA0 7C 08 02 A6 */ mflr r0
/* 802A8F44 002A4BA4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A8F48 002A4BA8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A8F4C 002A4BAC 7C 7F 1B 78 */ mr r31, r3
/* 802A8F50 002A4BB0 4B FC 58 0D */ bl OSDisableInterrupts
/* 802A8F54 002A4BB4 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A8F58 002A4BB8 57 E0 10 3A */ slwi r0, r31, 2
/* 802A8F5C 002A4BBC 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A8F60 002A4BC0 7C 84 00 2E */ lwzx r4, r4, r0
/* 802A8F64 002A4BC4 83 E4 08 B8 */ lwz r31, 0x8b8(r4)
/* 802A8F68 002A4BC8 4B FC 58 1D */ bl OSRestoreInterrupts
/* 802A8F6C 002A4BCC 7F E3 FB 78 */ mr r3, r31
/* 802A8F70 002A4BD0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A8F74 002A4BD4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A8F78 002A4BD8 7C 08 03 A6 */ mtlr r0
/* 802A8F7C 002A4BDC 38 21 00 10 */ addi r1, r1, 0x10
/* 802A8F80 002A4BE0 4E 80 00 20 */ blr
.global WPADSetDataFormat
WPADSetDataFormat:
/* 802A8F84 002A4BE4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A8F88 002A4BE8 7C 08 02 A6 */ mflr r0
/* 802A8F8C 002A4BEC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A8F90 002A4BF0 39 61 00 20 */ addi r11, r1, 0x20
/* 802A8F94 002A4BF4 4B F1 E1 95 */ bl _savegpr_27
/* 802A8F98 002A4BF8 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A8F9C 002A4BFC 54 60 10 3A */ slwi r0, r3, 2
/* 802A8FA0 002A4C00 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A8FA4 002A4C04 7C 9B 23 78 */ mr r27, r4
/* 802A8FA8 002A4C08 7F E5 00 2E */ lwzx r31, r5, r0
/* 802A8FAC 002A4C0C 4B FC 57 B1 */ bl OSDisableInterrupts
/* 802A8FB0 002A4C10 83 BF 08 DC */ lwz r29, 0x8dc(r31)
/* 802A8FB4 002A4C14 83 DF 08 BC */ lwz r30, 0x8bc(r31)
/* 802A8FB8 002A4C18 83 9F 08 B8 */ lwz r28, 0x8b8(r31)
/* 802A8FBC 002A4C1C 4B FC 57 C9 */ bl OSRestoreInterrupts
/* 802A8FC0 002A4C20 2C 1E FF FF */ cmpwi r30, -1
/* 802A8FC4 002A4C24 41 82 00 54 */ beq lbl_802A9018
/* 802A8FC8 002A4C28 2C 1D 00 00 */ cmpwi r29, 0
/* 802A8FCC 002A4C2C 40 82 00 0C */ bne lbl_802A8FD8
/* 802A8FD0 002A4C30 3B C0 FF FE */ li r30, -2
/* 802A8FD4 002A4C34 48 00 00 44 */ b lbl_802A9018
lbl_802A8FD8:
/* 802A8FD8 002A4C38 7C 1C D8 40 */ cmplw r28, r27
/* 802A8FDC 002A4C3C 41 82 00 38 */ beq lbl_802A9014
/* 802A8FE0 002A4C40 7F 64 DB 78 */ mr r4, r27
/* 802A8FE4 002A4C44 38 7F 01 60 */ addi r3, r31, 0x160
/* 802A8FE8 002A4C48 38 A0 00 00 */ li r5, 0
/* 802A8FEC 002A4C4C 48 00 39 C1 */ bl WPADiSendSetReportType
/* 802A8FF0 002A4C50 2C 03 00 00 */ cmpwi r3, 0
/* 802A8FF4 002A4C54 40 82 00 0C */ bne lbl_802A9000
/* 802A8FF8 002A4C58 3B C0 FF FE */ li r30, -2
/* 802A8FFC 002A4C5C 48 00 00 1C */ b lbl_802A9018
lbl_802A9000:
/* 802A9000 002A4C60 4B FC 57 5D */ bl OSDisableInterrupts
/* 802A9004 002A4C64 93 7F 08 B8 */ stw r27, 0x8b8(r31)
/* 802A9008 002A4C68 4B FC 57 7D */ bl OSRestoreInterrupts
/* 802A900C 002A4C6C 3B C0 00 00 */ li r30, 0
/* 802A9010 002A4C70 48 00 00 08 */ b lbl_802A9018
lbl_802A9014:
/* 802A9014 002A4C74 3B C0 00 00 */ li r30, 0
lbl_802A9018:
/* 802A9018 002A4C78 39 61 00 20 */ addi r11, r1, 0x20
/* 802A901C 002A4C7C 7F C3 F3 78 */ mr r3, r30
/* 802A9020 002A4C80 4B F1 E1 55 */ bl _restgpr_27
/* 802A9024 002A4C84 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A9028 002A4C88 7C 08 03 A6 */ mtlr r0
/* 802A902C 002A4C8C 38 21 00 20 */ addi r1, r1, 0x20
/* 802A9030 002A4C90 4E 80 00 20 */ blr
__infoCallback:
/* 802A9034 002A4C94 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A9038 002A4C98 7C 08 02 A6 */ mflr r0
/* 802A903C 002A4C9C 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A9040 002A4CA0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A9044 002A4CA4 54 60 10 3A */ slwi r0, r3, 2
/* 802A9048 002A4CA8 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A904C 002A4CAC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A9050 002A4CB0 7F E5 00 2E */ lwzx r31, r5, r0
/* 802A9054 002A4CB4 81 9F 09 88 */ lwz r12, 0x988(r31)
/* 802A9058 002A4CB8 2C 0C 00 00 */ cmpwi r12, 0
/* 802A905C 002A4CBC 41 82 00 0C */ beq lbl_802A9068
/* 802A9060 002A4CC0 7D 89 03 A6 */ mtctr r12
/* 802A9064 002A4CC4 4E 80 04 21 */ bctrl
lbl_802A9068:
/* 802A9068 002A4CC8 38 00 00 00 */ li r0, 0
/* 802A906C 002A4CCC 90 1F 09 88 */ stw r0, 0x988(r31)
/* 802A9070 002A4CD0 98 1F 09 8C */ stb r0, 0x98c(r31)
/* 802A9074 002A4CD4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A9078 002A4CD8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A907C 002A4CDC 7C 08 03 A6 */ mtlr r0
/* 802A9080 002A4CE0 38 21 00 10 */ addi r1, r1, 0x10
/* 802A9084 002A4CE4 4E 80 00 20 */ blr
.global WPADGetInfoAsync
WPADGetInfoAsync:
/* 802A9088 002A4CE8 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 802A908C 002A4CEC 7C 08 02 A6 */ mflr r0
/* 802A9090 002A4CF0 90 01 00 94 */ stw r0, 0x94(r1)
/* 802A9094 002A4CF4 39 61 00 90 */ addi r11, r1, 0x90
/* 802A9098 002A4CF8 4B F1 E0 89 */ bl _savegpr_25
/* 802A909C 002A4CFC 3C C0 80 53 */ lis r6, lbl_80536D70@ha
/* 802A90A0 002A4D00 54 60 10 3A */ slwi r0, r3, 2
/* 802A90A4 002A4D04 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l
/* 802A90A8 002A4D08 7C 7C 1B 78 */ mr r28, r3
/* 802A90AC 002A4D0C 7F C6 00 2E */ lwzx r30, r6, r0
/* 802A90B0 002A4D10 7C 9F 23 78 */ mr r31, r4
/* 802A90B4 002A4D14 7C BD 2B 78 */ mr r29, r5
/* 802A90B8 002A4D18 4B FC 56 A5 */ bl OSDisableInterrupts
/* 802A90BC 002A4D1C 83 7E 08 DC */ lwz r27, 0x8dc(r30)
/* 802A90C0 002A4D20 83 5E 08 BC */ lwz r26, 0x8bc(r30)
/* 802A90C4 002A4D24 8B 3E 09 8C */ lbz r25, 0x98c(r30)
/* 802A90C8 002A4D28 4B FC 56 BD */ bl OSRestoreInterrupts
/* 802A90CC 002A4D2C 2C 1A FF FF */ cmpwi r26, -1
/* 802A90D0 002A4D30 41 82 01 98 */ beq lbl_802A9268
/* 802A90D4 002A4D34 2C 1B 00 00 */ cmpwi r27, 0
/* 802A90D8 002A4D38 41 82 00 0C */ beq lbl_802A90E4
/* 802A90DC 002A4D3C 2C 19 00 00 */ cmpwi r25, 0
/* 802A90E0 002A4D40 41 82 00 0C */ beq lbl_802A90EC
lbl_802A90E4:
/* 802A90E4 002A4D44 3B 40 FF FE */ li r26, -2
/* 802A90E8 002A4D48 48 00 01 80 */ b lbl_802A9268
lbl_802A90EC:
/* 802A90EC 002A4D4C 4B FC 56 71 */ bl OSDisableInterrupts
/* 802A90F0 002A4D50 3B 60 00 01 */ li r27, 1
/* 802A90F4 002A4D54 9B 7E 09 8C */ stb r27, 0x98c(r30)
/* 802A90F8 002A4D58 93 BE 09 88 */ stw r29, 0x988(r30)
/* 802A90FC 002A4D5C 4B FC 56 89 */ bl OSRestoreInterrupts
/* 802A9100 002A4D60 38 00 00 00 */ li r0, 0
/* 802A9104 002A4D64 39 80 00 15 */ li r12, 0x15
/* 802A9108 002A4D68 98 01 00 0C */ stb r0, 0xc(r1)
/* 802A910C 002A4D6C 3D 60 80 2B */ lis r11, __infoCallback@ha
/* 802A9110 002A4D70 39 6B 90 34 */ addi r11, r11, __infoCallback@l
/* 802A9114 002A4D74 81 21 00 10 */ lwz r9, 0x10(r1)
/* 802A9118 002A4D78 B3 61 00 22 */ sth r27, 0x22(r1)
/* 802A911C 002A4D7C 81 01 00 14 */ lwz r8, 0x14(r1)
/* 802A9120 002A4D80 81 41 00 0C */ lwz r10, 0xc(r1)
/* 802A9124 002A4D84 80 E1 00 18 */ lwz r7, 0x18(r1)
/* 802A9128 002A4D88 80 C1 00 1C */ lwz r6, 0x1c(r1)
/* 802A912C 002A4D8C 80 A1 00 20 */ lwz r5, 0x20(r1)
/* 802A9130 002A4D90 80 81 00 24 */ lwz r4, 0x24(r1)
/* 802A9134 002A4D94 80 61 00 28 */ lwz r3, 0x28(r1)
/* 802A9138 002A4D98 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 802A913C 002A4D9C 91 81 00 08 */ stw r12, 8(r1)
/* 802A9140 002A4DA0 91 61 00 34 */ stw r11, 0x34(r1)
/* 802A9144 002A4DA4 93 E1 00 30 */ stw r31, 0x30(r1)
/* 802A9148 002A4DA8 91 81 00 38 */ stw r12, 0x38(r1)
/* 802A914C 002A4DAC 91 41 00 3C */ stw r10, 0x3c(r1)
/* 802A9150 002A4DB0 91 21 00 40 */ stw r9, 0x40(r1)
/* 802A9154 002A4DB4 91 01 00 44 */ stw r8, 0x44(r1)
/* 802A9158 002A4DB8 90 E1 00 48 */ stw r7, 0x48(r1)
/* 802A915C 002A4DBC 90 C1 00 4C */ stw r6, 0x4c(r1)
/* 802A9160 002A4DC0 90 A1 00 50 */ stw r5, 0x50(r1)
/* 802A9164 002A4DC4 90 81 00 54 */ stw r4, 0x54(r1)
/* 802A9168 002A4DC8 90 61 00 58 */ stw r3, 0x58(r1)
/* 802A916C 002A4DCC 90 01 00 5C */ stw r0, 0x5c(r1)
/* 802A9170 002A4DD0 93 E1 00 60 */ stw r31, 0x60(r1)
/* 802A9174 002A4DD4 91 61 00 64 */ stw r11, 0x64(r1)
/* 802A9178 002A4DD8 4B FC 55 E5 */ bl OSDisableInterrupts
/* 802A917C 002A4DDC 7C 7F 1B 78 */ mr r31, r3
/* 802A9180 002A4DE0 4B FC 55 DD */ bl OSDisableInterrupts
/* 802A9184 002A4DE4 88 9E 01 60 */ lbz r4, 0x160(r30)
/* 802A9188 002A4DE8 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A918C 002A4DEC 7C 04 00 50 */ subf r0, r4, r0
/* 802A9190 002A4DF0 7C 1B 07 75 */ extsb. r27, r0
/* 802A9194 002A4DF4 40 80 00 10 */ bge lbl_802A91A4
/* 802A9198 002A4DF8 80 1E 01 68 */ lwz r0, 0x168(r30)
/* 802A919C 002A4DFC 7C 1B 02 14 */ add r0, r27, r0
/* 802A91A0 002A4E00 7C 1B 07 74 */ extsb r27, r0
lbl_802A91A4:
/* 802A91A4 002A4E04 4B FC 55 E1 */ bl OSRestoreInterrupts
/* 802A91A8 002A4E08 80 7E 01 68 */ lwz r3, 0x168(r30)
/* 802A91AC 002A4E0C 38 03 FF FF */ addi r0, r3, -1
/* 802A91B0 002A4E10 7C 00 D8 40 */ cmplw r0, r27
/* 802A91B4 002A4E14 40 82 00 14 */ bne lbl_802A91C8
/* 802A91B8 002A4E18 7F E3 FB 78 */ mr r3, r31
/* 802A91BC 002A4E1C 4B FC 55 C9 */ bl OSRestoreInterrupts
/* 802A91C0 002A4E20 38 00 00 00 */ li r0, 0
/* 802A91C4 002A4E24 48 00 00 7C */ b lbl_802A9240
lbl_802A91C8:
/* 802A91C8 002A4E28 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A91CC 002A4E2C 38 80 00 00 */ li r4, 0
/* 802A91D0 002A4E30 80 7E 01 64 */ lwz r3, 0x164(r30)
/* 802A91D4 002A4E34 38 A0 00 30 */ li r5, 0x30
/* 802A91D8 002A4E38 7C 00 07 74 */ extsb r0, r0
/* 802A91DC 002A4E3C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A91E0 002A4E40 7C 63 02 14 */ add r3, r3, r0
/* 802A91E4 002A4E44 4B D5 AF 21 */ bl memset
/* 802A91E8 002A4E48 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A91EC 002A4E4C 38 81 00 38 */ addi r4, r1, 0x38
/* 802A91F0 002A4E50 80 7E 01 64 */ lwz r3, 0x164(r30)
/* 802A91F4 002A4E54 38 A0 00 30 */ li r5, 0x30
/* 802A91F8 002A4E58 7C 00 07 74 */ extsb r0, r0
/* 802A91FC 002A4E5C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9200 002A4E60 7C 63 02 14 */ add r3, r3, r0
/* 802A9204 002A4E64 4B D5 AD FD */ bl memcpy
/* 802A9208 002A4E68 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A920C 002A4E6C 7F E3 FB 78 */ mr r3, r31
/* 802A9210 002A4E70 80 9E 01 68 */ lwz r4, 0x168(r30)
/* 802A9214 002A4E74 7C 06 07 74 */ extsb r6, r0
/* 802A9218 002A4E78 38 84 FF FF */ addi r4, r4, -1
/* 802A921C 002A4E7C 7C A4 30 50 */ subf r5, r4, r6
/* 802A9220 002A4E80 38 06 00 01 */ addi r0, r6, 1
/* 802A9224 002A4E84 7C 86 20 50 */ subf r4, r6, r4
/* 802A9228 002A4E88 7C A4 20 F8 */ nor r4, r5, r4
/* 802A922C 002A4E8C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A9230 002A4E90 7C 00 20 78 */ andc r0, r0, r4
/* 802A9234 002A4E94 98 1E 01 61 */ stb r0, 0x161(r30)
/* 802A9238 002A4E98 4B FC 55 4D */ bl OSRestoreInterrupts
/* 802A923C 002A4E9C 38 00 00 01 */ li r0, 1
lbl_802A9240:
/* 802A9240 002A4EA0 2C 00 00 00 */ cmpwi r0, 0
/* 802A9244 002A4EA4 41 82 00 0C */ beq lbl_802A9250
/* 802A9248 002A4EA8 3B 40 00 00 */ li r26, 0
/* 802A924C 002A4EAC 48 00 00 1C */ b lbl_802A9268
lbl_802A9250:
/* 802A9250 002A4EB0 3B 40 FF FE */ li r26, -2
/* 802A9254 002A4EB4 4B FC 55 09 */ bl OSDisableInterrupts
/* 802A9258 002A4EB8 38 00 00 00 */ li r0, 0
/* 802A925C 002A4EBC 98 1E 09 8C */ stb r0, 0x98c(r30)
/* 802A9260 002A4EC0 90 1E 09 88 */ stw r0, 0x988(r30)
/* 802A9264 002A4EC4 4B FC 55 21 */ bl OSRestoreInterrupts
lbl_802A9268:
/* 802A9268 002A4EC8 2C 1A 00 00 */ cmpwi r26, 0
/* 802A926C 002A4ECC 41 82 00 20 */ beq lbl_802A928C
/* 802A9270 002A4ED0 2C 1D 00 00 */ cmpwi r29, 0
/* 802A9274 002A4ED4 41 82 00 18 */ beq lbl_802A928C
/* 802A9278 002A4ED8 7F AC EB 78 */ mr r12, r29
/* 802A927C 002A4EDC 7F 83 E3 78 */ mr r3, r28
/* 802A9280 002A4EE0 7F 44 D3 78 */ mr r4, r26
/* 802A9284 002A4EE4 7D 89 03 A6 */ mtctr r12
/* 802A9288 002A4EE8 4E 80 04 21 */ bctrl
lbl_802A928C:
/* 802A928C 002A4EEC 39 61 00 90 */ addi r11, r1, 0x90
/* 802A9290 002A4EF0 7F 43 D3 78 */ mr r3, r26
/* 802A9294 002A4EF4 4B F1 DE D9 */ bl _restgpr_25
/* 802A9298 002A4EF8 80 01 00 94 */ lwz r0, 0x94(r1)
/* 802A929C 002A4EFC 7C 08 03 A6 */ mtlr r0
/* 802A92A0 002A4F00 38 21 00 90 */ addi r1, r1, 0x90
/* 802A92A4 002A4F04 4E 80 00 20 */ blr
.global WPADControlMotor
WPADControlMotor:
/* 802A92A8 002A4F08 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A92AC 002A4F0C 7C 08 02 A6 */ mflr r0
/* 802A92B0 002A4F10 3C A0 80 53 */ lis r5, lbl_80536D70@ha
/* 802A92B4 002A4F14 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A92B8 002A4F18 54 60 10 3A */ slwi r0, r3, 2
/* 802A92BC 002A4F1C 38 A5 6D 70 */ addi r5, r5, lbl_80536D70@l
/* 802A92C0 002A4F20 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A92C4 002A4F24 93 C1 00 08 */ stw r30, 8(r1)
/* 802A92C8 002A4F28 7C 9E 23 78 */ mr r30, r4
/* 802A92CC 002A4F2C 7F E5 00 2E */ lwzx r31, r5, r0
/* 802A92D0 002A4F30 4B FC 54 8D */ bl OSDisableInterrupts
/* 802A92D4 002A4F34 80 1F 08 BC */ lwz r0, 0x8bc(r31)
/* 802A92D8 002A4F38 2C 00 FF FF */ cmpwi r0, -1
/* 802A92DC 002A4F3C 40 82 00 0C */ bne lbl_802A92E8
/* 802A92E0 002A4F40 4B FC 54 A5 */ bl OSRestoreInterrupts
/* 802A92E4 002A4F44 48 00 00 78 */ b lbl_802A935C
lbl_802A92E8:
/* 802A92E8 002A4F48 80 0D AE 5C */ lwz r0, lbl_8064011C-_SDA_BASE_(r13)
/* 802A92EC 002A4F4C 2C 00 00 00 */ cmpwi r0, 0
/* 802A92F0 002A4F50 40 82 00 20 */ bne lbl_802A9310
/* 802A92F4 002A4F54 2C 1E 00 00 */ cmpwi r30, 0
/* 802A92F8 002A4F58 40 82 00 10 */ bne lbl_802A9308
/* 802A92FC 002A4F5C 80 1F 08 D4 */ lwz r0, 0x8d4(r31)
/* 802A9300 002A4F60 2C 00 00 01 */ cmpwi r0, 1
/* 802A9304 002A4F64 41 82 00 0C */ beq lbl_802A9310
lbl_802A9308:
/* 802A9308 002A4F68 4B FC 54 7D */ bl OSRestoreInterrupts
/* 802A930C 002A4F6C 48 00 00 50 */ b lbl_802A935C
lbl_802A9310:
/* 802A9310 002A4F70 2C 1E 00 00 */ cmpwi r30, 0
/* 802A9314 002A4F74 40 82 00 10 */ bne lbl_802A9324
/* 802A9318 002A4F78 80 1F 08 D4 */ lwz r0, 0x8d4(r31)
/* 802A931C 002A4F7C 2C 00 00 00 */ cmpwi r0, 0
/* 802A9320 002A4F80 41 82 00 18 */ beq lbl_802A9338
lbl_802A9324:
/* 802A9324 002A4F84 28 1E 00 01 */ cmplwi r30, 1
/* 802A9328 002A4F88 40 82 00 18 */ bne lbl_802A9340
/* 802A932C 002A4F8C 80 1F 08 D4 */ lwz r0, 0x8d4(r31)
/* 802A9330 002A4F90 2C 00 00 01 */ cmpwi r0, 1
/* 802A9334 002A4F94 40 82 00 0C */ bne lbl_802A9340
lbl_802A9338:
/* 802A9338 002A4F98 4B FC 54 4D */ bl OSRestoreInterrupts
/* 802A933C 002A4F9C 48 00 00 20 */ b lbl_802A935C
lbl_802A9340:
/* 802A9340 002A4FA0 7C 9E 00 D0 */ neg r4, r30
/* 802A9344 002A4FA4 38 00 00 01 */ li r0, 1
/* 802A9348 002A4FA8 7C 84 F3 78 */ or r4, r4, r30
/* 802A934C 002A4FAC 54 84 0F FE */ srwi r4, r4, 0x1f
/* 802A9350 002A4FB0 90 9F 08 D4 */ stw r4, 0x8d4(r31)
/* 802A9354 002A4FB4 90 1F 08 D0 */ stw r0, 0x8d0(r31)
/* 802A9358 002A4FB8 4B FC 54 2D */ bl OSRestoreInterrupts
lbl_802A935C:
/* 802A935C 002A4FBC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A9360 002A4FC0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A9364 002A4FC4 83 C1 00 08 */ lwz r30, 8(r1)
/* 802A9368 002A4FC8 7C 08 03 A6 */ mtlr r0
/* 802A936C 002A4FCC 38 21 00 10 */ addi r1, r1, 0x10
/* 802A9370 002A4FD0 4E 80 00 20 */ blr
.global WPADEnableMotor
WPADEnableMotor:
/* 802A9374 002A4FD4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A9378 002A4FD8 7C 08 02 A6 */ mflr r0
/* 802A937C 002A4FDC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A9380 002A4FE0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A9384 002A4FE4 7C 7F 1B 78 */ mr r31, r3
/* 802A9388 002A4FE8 4B FC 53 D5 */ bl OSDisableInterrupts
/* 802A938C 002A4FEC 93 ED AE 5C */ stw r31, lbl_8064011C-_SDA_BASE_(r13)
/* 802A9390 002A4FF0 4B FC 53 F5 */ bl OSRestoreInterrupts
/* 802A9394 002A4FF4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A9398 002A4FF8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A939C 002A4FFC 7C 08 03 A6 */ mtlr r0
/* 802A93A0 002A5000 38 21 00 10 */ addi r1, r1, 0x10
/* 802A93A4 002A5004 4E 80 00 20 */ blr
.global WPADIsMotorEnabled
WPADIsMotorEnabled:
/* 802A93A8 002A5008 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A93AC 002A500C 7C 08 02 A6 */ mflr r0
/* 802A93B0 002A5010 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A93B4 002A5014 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A93B8 002A5018 4B FC 53 A5 */ bl OSDisableInterrupts
/* 802A93BC 002A501C 83 ED AE 5C */ lwz r31, lbl_8064011C-_SDA_BASE_(r13)
/* 802A93C0 002A5020 4B FC 53 C5 */ bl OSRestoreInterrupts
/* 802A93C4 002A5024 7F E3 FB 78 */ mr r3, r31
/* 802A93C8 002A5028 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A93CC 002A502C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A93D0 002A5030 7C 08 03 A6 */ mtlr r0
/* 802A93D4 002A5034 38 21 00 10 */ addi r1, r1, 0x10
/* 802A93D8 002A5038 4E 80 00 20 */ blr
.global WPADControlLed
WPADControlLed:
/* 802A93DC 002A503C 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802A93E0 002A5040 7C 08 02 A6 */ mflr r0
/* 802A93E4 002A5044 90 01 00 84 */ stw r0, 0x84(r1)
/* 802A93E8 002A5048 39 61 00 80 */ addi r11, r1, 0x80
/* 802A93EC 002A504C 4B F1 DD 39 */ bl _savegpr_26
/* 802A93F0 002A5050 3C C0 80 53 */ lis r6, lbl_80536D70@ha
/* 802A93F4 002A5054 54 60 10 3A */ slwi r0, r3, 2
/* 802A93F8 002A5058 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l
/* 802A93FC 002A505C 7C 7C 1B 78 */ mr r28, r3
/* 802A9400 002A5060 7F C6 00 2E */ lwzx r30, r6, r0
/* 802A9404 002A5064 7C 9A 23 78 */ mr r26, r4
/* 802A9408 002A5068 7C BD 2B 78 */ mr r29, r5
/* 802A940C 002A506C 4B FC 53 51 */ bl OSDisableInterrupts
/* 802A9410 002A5070 83 FE 08 BC */ lwz r31, 0x8bc(r30)
/* 802A9414 002A5074 83 7E 08 DC */ lwz r27, 0x8dc(r30)
/* 802A9418 002A5078 4B FC 53 6D */ bl OSRestoreInterrupts
/* 802A941C 002A507C 2C 1F FF FF */ cmpwi r31, -1
/* 802A9420 002A5080 41 82 01 64 */ beq lbl_802A9584
/* 802A9424 002A5084 2C 1B 00 00 */ cmpwi r27, 0
/* 802A9428 002A5088 40 82 00 0C */ bne lbl_802A9434
/* 802A942C 002A508C 3B E0 FF FE */ li r31, -2
/* 802A9430 002A5090 48 00 01 54 */ b lbl_802A9584
lbl_802A9434:
/* 802A9434 002A5094 57 40 26 36 */ rlwinm r0, r26, 4, 0x18, 0x1b
/* 802A9438 002A5098 38 60 00 01 */ li r3, 1
/* 802A943C 002A509C B0 61 00 22 */ sth r3, 0x22(r1)
/* 802A9440 002A50A0 39 80 00 11 */ li r12, 0x11
/* 802A9444 002A50A4 81 41 00 10 */ lwz r10, 0x10(r1)
/* 802A9448 002A50A8 98 01 00 0C */ stb r0, 0xc(r1)
/* 802A944C 002A50AC 81 21 00 14 */ lwz r9, 0x14(r1)
/* 802A9450 002A50B0 81 61 00 0C */ lwz r11, 0xc(r1)
/* 802A9454 002A50B4 81 01 00 18 */ lwz r8, 0x18(r1)
/* 802A9458 002A50B8 80 E1 00 1C */ lwz r7, 0x1c(r1)
/* 802A945C 002A50BC 80 C1 00 20 */ lwz r6, 0x20(r1)
/* 802A9460 002A50C0 80 A1 00 24 */ lwz r5, 0x24(r1)
/* 802A9464 002A50C4 80 81 00 28 */ lwz r4, 0x28(r1)
/* 802A9468 002A50C8 80 61 00 2C */ lwz r3, 0x2c(r1)
/* 802A946C 002A50CC 80 01 00 30 */ lwz r0, 0x30(r1)
/* 802A9470 002A50D0 91 81 00 08 */ stw r12, 8(r1)
/* 802A9474 002A50D4 93 A1 00 34 */ stw r29, 0x34(r1)
/* 802A9478 002A50D8 91 81 00 38 */ stw r12, 0x38(r1)
/* 802A947C 002A50DC 91 61 00 3C */ stw r11, 0x3c(r1)
/* 802A9480 002A50E0 91 41 00 40 */ stw r10, 0x40(r1)
/* 802A9484 002A50E4 91 21 00 44 */ stw r9, 0x44(r1)
/* 802A9488 002A50E8 91 01 00 48 */ stw r8, 0x48(r1)
/* 802A948C 002A50EC 90 E1 00 4C */ stw r7, 0x4c(r1)
/* 802A9490 002A50F0 90 C1 00 50 */ stw r6, 0x50(r1)
/* 802A9494 002A50F4 90 A1 00 54 */ stw r5, 0x54(r1)
/* 802A9498 002A50F8 90 81 00 58 */ stw r4, 0x58(r1)
/* 802A949C 002A50FC 90 61 00 5C */ stw r3, 0x5c(r1)
/* 802A94A0 002A5100 90 01 00 60 */ stw r0, 0x60(r1)
/* 802A94A4 002A5104 93 A1 00 64 */ stw r29, 0x64(r1)
/* 802A94A8 002A5108 4B FC 52 B5 */ bl OSDisableInterrupts
/* 802A94AC 002A510C 7C 7F 1B 78 */ mr r31, r3
/* 802A94B0 002A5110 4B FC 52 AD */ bl OSDisableInterrupts
/* 802A94B4 002A5114 88 9E 01 60 */ lbz r4, 0x160(r30)
/* 802A94B8 002A5118 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A94BC 002A511C 7C 04 00 50 */ subf r0, r4, r0
/* 802A94C0 002A5120 7C 1B 07 75 */ extsb. r27, r0
/* 802A94C4 002A5124 40 80 00 10 */ bge lbl_802A94D4
/* 802A94C8 002A5128 80 1E 01 68 */ lwz r0, 0x168(r30)
/* 802A94CC 002A512C 7C 1B 02 14 */ add r0, r27, r0
/* 802A94D0 002A5130 7C 1B 07 74 */ extsb r27, r0
lbl_802A94D4:
/* 802A94D4 002A5134 4B FC 52 B1 */ bl OSRestoreInterrupts
/* 802A94D8 002A5138 80 7E 01 68 */ lwz r3, 0x168(r30)
/* 802A94DC 002A513C 38 03 FF FF */ addi r0, r3, -1
/* 802A94E0 002A5140 7C 00 D8 40 */ cmplw r0, r27
/* 802A94E4 002A5144 40 82 00 14 */ bne lbl_802A94F8
/* 802A94E8 002A5148 7F E3 FB 78 */ mr r3, r31
/* 802A94EC 002A514C 4B FC 52 99 */ bl OSRestoreInterrupts
/* 802A94F0 002A5150 38 80 00 00 */ li r4, 0
/* 802A94F4 002A5154 48 00 00 7C */ b lbl_802A9570
lbl_802A94F8:
/* 802A94F8 002A5158 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A94FC 002A515C 38 80 00 00 */ li r4, 0
/* 802A9500 002A5160 80 7E 01 64 */ lwz r3, 0x164(r30)
/* 802A9504 002A5164 38 A0 00 30 */ li r5, 0x30
/* 802A9508 002A5168 7C 00 07 74 */ extsb r0, r0
/* 802A950C 002A516C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9510 002A5170 7C 63 02 14 */ add r3, r3, r0
/* 802A9514 002A5174 4B D5 AB F1 */ bl memset
/* 802A9518 002A5178 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A951C 002A517C 38 81 00 38 */ addi r4, r1, 0x38
/* 802A9520 002A5180 80 7E 01 64 */ lwz r3, 0x164(r30)
/* 802A9524 002A5184 38 A0 00 30 */ li r5, 0x30
/* 802A9528 002A5188 7C 00 07 74 */ extsb r0, r0
/* 802A952C 002A518C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9530 002A5190 7C 63 02 14 */ add r3, r3, r0
/* 802A9534 002A5194 4B D5 AA CD */ bl memcpy
/* 802A9538 002A5198 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802A953C 002A519C 7F E3 FB 78 */ mr r3, r31
/* 802A9540 002A51A0 80 9E 01 68 */ lwz r4, 0x168(r30)
/* 802A9544 002A51A4 7C 06 07 74 */ extsb r6, r0
/* 802A9548 002A51A8 38 84 FF FF */ addi r4, r4, -1
/* 802A954C 002A51AC 7C A4 30 50 */ subf r5, r4, r6
/* 802A9550 002A51B0 38 06 00 01 */ addi r0, r6, 1
/* 802A9554 002A51B4 7C 86 20 50 */ subf r4, r6, r4
/* 802A9558 002A51B8 7C A4 20 F8 */ nor r4, r5, r4
/* 802A955C 002A51BC 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A9560 002A51C0 7C 00 20 78 */ andc r0, r0, r4
/* 802A9564 002A51C4 98 1E 01 61 */ stb r0, 0x161(r30)
/* 802A9568 002A51C8 4B FC 52 1D */ bl OSRestoreInterrupts
/* 802A956C 002A51CC 38 80 00 01 */ li r4, 1
lbl_802A9570:
/* 802A9570 002A51D0 7C 64 00 D0 */ neg r3, r4
/* 802A9574 002A51D4 38 00 FF FE */ li r0, -2
/* 802A9578 002A51D8 7C 63 23 78 */ or r3, r3, r4
/* 802A957C 002A51DC 7C 63 FE 70 */ srawi r3, r3, 0x1f
/* 802A9580 002A51E0 7C 1F 18 78 */ andc r31, r0, r3
lbl_802A9584:
/* 802A9584 002A51E4 2C 1F 00 00 */ cmpwi r31, 0
/* 802A9588 002A51E8 41 82 00 20 */ beq lbl_802A95A8
/* 802A958C 002A51EC 2C 1D 00 00 */ cmpwi r29, 0
/* 802A9590 002A51F0 41 82 00 18 */ beq lbl_802A95A8
/* 802A9594 002A51F4 7F AC EB 78 */ mr r12, r29
/* 802A9598 002A51F8 7F 83 E3 78 */ mr r3, r28
/* 802A959C 002A51FC 7F E4 FB 78 */ mr r4, r31
/* 802A95A0 002A5200 7D 89 03 A6 */ mtctr r12
/* 802A95A4 002A5204 4E 80 04 21 */ bctrl
lbl_802A95A8:
/* 802A95A8 002A5208 39 61 00 80 */ addi r11, r1, 0x80
/* 802A95AC 002A520C 7F E3 FB 78 */ mr r3, r31
/* 802A95B0 002A5210 4B F1 DB C1 */ bl _restgpr_26
/* 802A95B4 002A5214 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802A95B8 002A5218 7C 08 03 A6 */ mtlr r0
/* 802A95BC 002A521C 38 21 00 80 */ addi r1, r1, 0x80
/* 802A95C0 002A5220 4E 80 00 20 */ blr
.global WPADSaveConfig
WPADSaveConfig:
/* 802A95C4 002A5224 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A95C8 002A5228 7C 08 02 A6 */ mflr r0
/* 802A95CC 002A522C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A95D0 002A5230 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A95D4 002A5234 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A95D8 002A5238 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A95DC 002A523C 7C 7D 1B 78 */ mr r29, r3
/* 802A95E0 002A5240 48 04 14 0D */ bl SCCheckStatus
/* 802A95E4 002A5244 2C 03 00 00 */ cmpwi r3, 0
/* 802A95E8 002A5248 41 82 00 0C */ beq lbl_802A95F4
/* 802A95EC 002A524C 38 60 00 00 */ li r3, 0
/* 802A95F0 002A5250 48 00 00 64 */ b lbl_802A9654
lbl_802A95F4:
/* 802A95F4 002A5254 4B FC 51 69 */ bl OSDisableInterrupts
/* 802A95F8 002A5258 80 8D AE 5C */ lwz r4, lbl_8064011C-_SDA_BASE_(r13)
/* 802A95FC 002A525C 8B CD AE 5A */ lbz r30, lbl_8064011A-_SDA_BASE_(r13)
/* 802A9600 002A5260 7C 04 00 D0 */ neg r0, r4
/* 802A9604 002A5264 7C 00 23 78 */ or r0, r0, r4
/* 802A9608 002A5268 54 1F 0F FE */ srwi r31, r0, 0x1f
/* 802A960C 002A526C 4B FC 51 79 */ bl OSRestoreInterrupts
/* 802A9610 002A5270 7F C3 F3 78 */ mr r3, r30
/* 802A9614 002A5274 48 04 31 71 */ bl SCSetWpadSpeakerVolume
/* 802A9618 002A5278 54 7E 07 FE */ clrlwi r30, r3, 0x1f
/* 802A961C 002A527C 7F E3 FB 78 */ mr r3, r31
/* 802A9620 002A5280 48 04 30 B5 */ bl SCSetWpadMotorMode
/* 802A9624 002A5284 7F DE 18 39 */ and. r30, r30, r3
/* 802A9628 002A5288 41 82 00 10 */ beq lbl_802A9638
/* 802A962C 002A528C 7F A3 EB 78 */ mr r3, r29
/* 802A9630 002A5290 48 04 27 9D */ bl SCFlushAsync
/* 802A9634 002A5294 48 00 00 1C */ b lbl_802A9650
lbl_802A9638:
/* 802A9638 002A5298 2C 1D 00 00 */ cmpwi r29, 0
/* 802A963C 002A529C 41 82 00 14 */ beq lbl_802A9650
/* 802A9640 002A52A0 7F AC EB 78 */ mr r12, r29
/* 802A9644 002A52A4 38 60 00 02 */ li r3, 2
/* 802A9648 002A52A8 7D 89 03 A6 */ mtctr r12
/* 802A964C 002A52AC 4E 80 04 21 */ bctrl
lbl_802A9650:
/* 802A9650 002A52B0 7F C3 F3 78 */ mr r3, r30
lbl_802A9654:
/* 802A9654 002A52B4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A9658 002A52B8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A965C 002A52BC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A9660 002A52C0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A9664 002A52C4 7C 08 03 A6 */ mtlr r0
/* 802A9668 002A52C8 38 21 00 20 */ addi r1, r1, 0x20
/* 802A966C 002A52CC 4E 80 00 20 */ blr
.global WPADRead
WPADRead:
/* 802A9670 002A52D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A9674 002A52D4 7C 08 02 A6 */ mflr r0
/* 802A9678 002A52D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A967C 002A52DC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A9680 002A52E0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A9684 002A52E4 7C 9E 23 78 */ mr r30, r4
/* 802A9688 002A52E8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A968C 002A52EC 7C 7D 1B 78 */ mr r29, r3
/* 802A9690 002A52F0 4B FC 50 CD */ bl OSDisableInterrupts
/* 802A9694 002A52F4 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A9698 002A52F8 57 A0 10 3A */ slwi r0, r29, 2
/* 802A969C 002A52FC 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A96A0 002A5300 7C 7F 1B 78 */ mr r31, r3
/* 802A96A4 002A5304 7C 84 00 2E */ lwzx r4, r4, r0
/* 802A96A8 002A5308 88 04 08 C8 */ lbz r0, 0x8c8(r4)
/* 802A96AC 002A530C 7C 00 00 34 */ cntlzw r0, r0
/* 802A96B0 002A5310 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f
/* 802A96B4 002A5314 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802A96B8 002A5318 7C 64 02 14 */ add r3, r4, r0
/* 802A96BC 002A531C 88 03 00 C9 */ lbz r0, 0xc9(r3)
/* 802A96C0 002A5320 3B A3 00 A0 */ addi r29, r3, 0xa0
/* 802A96C4 002A5324 7C 00 07 74 */ extsb r0, r0
/* 802A96C8 002A5328 2C 00 FF FE */ cmpwi r0, -2
/* 802A96CC 002A532C 41 82 00 94 */ beq lbl_802A9760
/* 802A96D0 002A5330 40 80 00 10 */ bge lbl_802A96E0
/* 802A96D4 002A5334 2C 00 FF F9 */ cmpwi r0, -7
/* 802A96D8 002A5338 41 82 00 88 */ beq lbl_802A9760
/* 802A96DC 002A533C 48 00 00 98 */ b lbl_802A9774
lbl_802A96E0:
/* 802A96E0 002A5340 2C 00 00 00 */ cmpwi r0, 0
/* 802A96E4 002A5344 41 82 00 08 */ beq lbl_802A96EC
/* 802A96E8 002A5348 48 00 00 8C */ b lbl_802A9774
lbl_802A96EC:
/* 802A96EC 002A534C 80 64 08 B8 */ lwz r3, 0x8b8(r4)
/* 802A96F0 002A5350 28 03 00 02 */ cmplwi r3, 2
/* 802A96F4 002A5354 41 81 00 18 */ bgt lbl_802A970C
/* 802A96F8 002A5358 7F C3 F3 78 */ mr r3, r30
/* 802A96FC 002A535C 7F A4 EB 78 */ mr r4, r29
/* 802A9700 002A5360 38 A0 00 2A */ li r5, 0x2a
/* 802A9704 002A5364 4B D5 A8 FD */ bl memcpy
/* 802A9708 002A5368 48 00 00 E4 */ b lbl_802A97EC
lbl_802A970C:
/* 802A970C 002A536C 38 03 FF FD */ addi r0, r3, -3
/* 802A9710 002A5370 28 00 00 02 */ cmplwi r0, 2
/* 802A9714 002A5374 41 81 00 18 */ bgt lbl_802A972C
/* 802A9718 002A5378 7F C3 F3 78 */ mr r3, r30
/* 802A971C 002A537C 7F A4 EB 78 */ mr r4, r29
/* 802A9720 002A5380 38 A0 00 32 */ li r5, 0x32
/* 802A9724 002A5384 4B D5 A8 DD */ bl memcpy
/* 802A9728 002A5388 48 00 00 C4 */ b lbl_802A97EC
lbl_802A972C:
/* 802A972C 002A538C 38 03 FF FA */ addi r0, r3, -6
/* 802A9730 002A5390 28 00 00 02 */ cmplwi r0, 2
/* 802A9734 002A5394 41 81 00 18 */ bgt lbl_802A974C
/* 802A9738 002A5398 7F C3 F3 78 */ mr r3, r30
/* 802A973C 002A539C 7F A4 EB 78 */ mr r4, r29
/* 802A9740 002A53A0 38 A0 00 36 */ li r5, 0x36
/* 802A9744 002A53A4 4B D5 A8 BD */ bl memcpy
/* 802A9748 002A53A8 48 00 00 A4 */ b lbl_802A97EC
lbl_802A974C:
/* 802A974C 002A53AC 7F C3 F3 78 */ mr r3, r30
/* 802A9750 002A53B0 7F A4 EB 78 */ mr r4, r29
/* 802A9754 002A53B4 38 A0 00 5A */ li r5, 0x5a
/* 802A9758 002A53B8 4B D5 A8 A9 */ bl memcpy
/* 802A975C 002A53BC 48 00 00 90 */ b lbl_802A97EC
lbl_802A9760:
/* 802A9760 002A53C0 7F C3 F3 78 */ mr r3, r30
/* 802A9764 002A53C4 7F A4 EB 78 */ mr r4, r29
/* 802A9768 002A53C8 38 A0 00 2A */ li r5, 0x2a
/* 802A976C 002A53CC 4B D5 A8 95 */ bl memcpy
/* 802A9770 002A53D0 48 00 00 7C */ b lbl_802A97EC
lbl_802A9774:
/* 802A9774 002A53D4 80 64 08 B8 */ lwz r3, 0x8b8(r4)
/* 802A9778 002A53D8 28 03 00 02 */ cmplwi r3, 2
/* 802A977C 002A53DC 41 81 00 18 */ bgt lbl_802A9794
/* 802A9780 002A53E0 7F C3 F3 78 */ mr r3, r30
/* 802A9784 002A53E4 38 80 00 00 */ li r4, 0
/* 802A9788 002A53E8 38 A0 00 2A */ li r5, 0x2a
/* 802A978C 002A53EC 4B D5 A9 79 */ bl memset
/* 802A9790 002A53F0 48 00 00 54 */ b lbl_802A97E4
lbl_802A9794:
/* 802A9794 002A53F4 38 03 FF FD */ addi r0, r3, -3
/* 802A9798 002A53F8 28 00 00 02 */ cmplwi r0, 2
/* 802A979C 002A53FC 41 81 00 18 */ bgt lbl_802A97B4
/* 802A97A0 002A5400 7F C3 F3 78 */ mr r3, r30
/* 802A97A4 002A5404 38 80 00 00 */ li r4, 0
/* 802A97A8 002A5408 38 A0 00 32 */ li r5, 0x32
/* 802A97AC 002A540C 4B D5 A9 59 */ bl memset
/* 802A97B0 002A5410 48 00 00 34 */ b lbl_802A97E4
lbl_802A97B4:
/* 802A97B4 002A5414 38 03 FF FA */ addi r0, r3, -6
/* 802A97B8 002A5418 28 00 00 02 */ cmplwi r0, 2
/* 802A97BC 002A541C 41 81 00 18 */ bgt lbl_802A97D4
/* 802A97C0 002A5420 7F C3 F3 78 */ mr r3, r30
/* 802A97C4 002A5424 38 80 00 00 */ li r4, 0
/* 802A97C8 002A5428 38 A0 00 36 */ li r5, 0x36
/* 802A97CC 002A542C 4B D5 A9 39 */ bl memset
/* 802A97D0 002A5430 48 00 00 14 */ b lbl_802A97E4
lbl_802A97D4:
/* 802A97D4 002A5434 7F C3 F3 78 */ mr r3, r30
/* 802A97D8 002A5438 38 80 00 00 */ li r4, 0
/* 802A97DC 002A543C 38 A0 00 5A */ li r5, 0x5a
/* 802A97E0 002A5440 4B D5 A9 25 */ bl memset
lbl_802A97E4:
/* 802A97E4 002A5444 88 1D 00 29 */ lbz r0, 0x29(r29)
/* 802A97E8 002A5448 98 1E 00 29 */ stb r0, 0x29(r30)
lbl_802A97EC:
/* 802A97EC 002A544C 7F E3 FB 78 */ mr r3, r31
/* 802A97F0 002A5450 4B FC 4F 95 */ bl OSRestoreInterrupts
/* 802A97F4 002A5454 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A97F8 002A5458 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A97FC 002A545C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A9800 002A5460 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A9804 002A5464 7C 08 03 A6 */ mtlr r0
/* 802A9808 002A5468 38 21 00 20 */ addi r1, r1, 0x20
/* 802A980C 002A546C 4E 80 00 20 */ blr
.global WPADSetAutoSamplingBuf
WPADSetAutoSamplingBuf:
/* 802A9810 002A5470 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A9814 002A5474 7C 08 02 A6 */ mflr r0
/* 802A9818 002A5478 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A981C 002A547C 39 61 00 20 */ addi r11, r1, 0x20
/* 802A9820 002A5480 4B F1 D9 05 */ bl _savegpr_26
/* 802A9824 002A5484 3C C0 80 44 */ lis r6, lbl_8043C240@ha
/* 802A9828 002A5488 7C 7A 1B 78 */ mr r26, r3
/* 802A982C 002A548C 7C 9E 23 78 */ mr r30, r4
/* 802A9830 002A5490 7C BF 2B 78 */ mr r31, r5
/* 802A9834 002A5494 38 66 C2 40 */ addi r3, r6, lbl_8043C240@l
/* 802A9838 002A5498 4C C6 31 82 */ crclr 6
/* 802A983C 002A549C 48 00 A0 25 */ bl DEBUGPrint
/* 802A9840 002A54A0 4B FC 4F 1D */ bl OSDisableInterrupts
/* 802A9844 002A54A4 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A9848 002A54A8 57 40 10 3A */ slwi r0, r26, 2
/* 802A984C 002A54AC 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A9850 002A54B0 7C 7B 1B 78 */ mr r27, r3
/* 802A9854 002A54B4 7F 84 00 2E */ lwzx r28, r4, r0
/* 802A9858 002A54B8 3B A0 FF FC */ li r29, -4
/* 802A985C 002A54BC 80 1C 08 BC */ lwz r0, 0x8bc(r28)
/* 802A9860 002A54C0 2C 00 FF FF */ cmpwi r0, -1
/* 802A9864 002A54C4 40 82 00 08 */ bne lbl_802A986C
/* 802A9868 002A54C8 3B A0 FF FF */ li r29, -1
lbl_802A986C:
/* 802A986C 002A54CC 80 7C 08 B8 */ lwz r3, 0x8b8(r28)
/* 802A9870 002A54D0 28 03 00 02 */ cmplwi r3, 2
/* 802A9874 002A54D4 41 81 00 0C */ bgt lbl_802A9880
/* 802A9878 002A54D8 3B 40 00 2A */ li r26, 0x2a
/* 802A987C 002A54DC 48 00 00 2C */ b lbl_802A98A8
lbl_802A9880:
/* 802A9880 002A54E0 38 03 FF FD */ addi r0, r3, -3
/* 802A9884 002A54E4 28 00 00 02 */ cmplwi r0, 2
/* 802A9888 002A54E8 41 81 00 0C */ bgt lbl_802A9894
/* 802A988C 002A54EC 3B 40 00 32 */ li r26, 0x32
/* 802A9890 002A54F0 48 00 00 18 */ b lbl_802A98A8
lbl_802A9894:
/* 802A9894 002A54F4 38 03 FF FA */ addi r0, r3, -6
/* 802A9898 002A54F8 3B 40 00 5A */ li r26, 0x5a
/* 802A989C 002A54FC 28 00 00 02 */ cmplwi r0, 2
/* 802A98A0 002A5500 41 81 00 08 */ bgt lbl_802A98A8
/* 802A98A4 002A5504 3B 40 00 36 */ li r26, 0x36
lbl_802A98A8:
/* 802A98A8 002A5508 2C 1E 00 00 */ cmpwi r30, 0
/* 802A98AC 002A550C 41 82 00 BC */ beq lbl_802A9968
/* 802A98B0 002A5510 7C BA F9 D6 */ mullw r5, r26, r31
/* 802A98B4 002A5514 7F C3 F3 78 */ mr r3, r30
/* 802A98B8 002A5518 38 80 00 00 */ li r4, 0
/* 802A98BC 002A551C 4B D5 A8 49 */ bl memset
/* 802A98C0 002A5520 28 1F 00 00 */ cmplwi r31, 0
/* 802A98C4 002A5524 7F E3 FB 78 */ mr r3, r31
/* 802A98C8 002A5528 38 80 00 00 */ li r4, 0
/* 802A98CC 002A552C 40 81 00 90 */ ble lbl_802A995C
/* 802A98D0 002A5530 57 E0 E8 FF */ rlwinm. r0, r31, 0x1d, 3, 0x1f
/* 802A98D4 002A5534 7C 09 03 A6 */ mtctr r0
/* 802A98D8 002A5538 41 82 00 70 */ beq lbl_802A9948
lbl_802A98DC:
/* 802A98DC 002A553C 7C 7E 22 14 */ add r3, r30, r4
/* 802A98E0 002A5540 7C 84 D2 14 */ add r4, r4, r26
/* 802A98E4 002A5544 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A98E8 002A5548 7C 7E 22 14 */ add r3, r30, r4
/* 802A98EC 002A554C 7C 84 D2 14 */ add r4, r4, r26
/* 802A98F0 002A5550 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A98F4 002A5554 7C 7E 22 14 */ add r3, r30, r4
/* 802A98F8 002A5558 7C 84 D2 14 */ add r4, r4, r26
/* 802A98FC 002A555C 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A9900 002A5560 7C 7E 22 14 */ add r3, r30, r4
/* 802A9904 002A5564 7C 84 D2 14 */ add r4, r4, r26
/* 802A9908 002A5568 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A990C 002A556C 7C 7E 22 14 */ add r3, r30, r4
/* 802A9910 002A5570 7C 84 D2 14 */ add r4, r4, r26
/* 802A9914 002A5574 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A9918 002A5578 7C 7E 22 14 */ add r3, r30, r4
/* 802A991C 002A557C 7C 84 D2 14 */ add r4, r4, r26
/* 802A9920 002A5580 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A9924 002A5584 7C 7E 22 14 */ add r3, r30, r4
/* 802A9928 002A5588 7C 84 D2 14 */ add r4, r4, r26
/* 802A992C 002A558C 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A9930 002A5590 7C 7E 22 14 */ add r3, r30, r4
/* 802A9934 002A5594 7C 84 D2 14 */ add r4, r4, r26
/* 802A9938 002A5598 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A993C 002A559C 42 00 FF A0 */ bdnz lbl_802A98DC
/* 802A9940 002A55A0 73 E3 00 07 */ andi. r3, r31, 7
/* 802A9944 002A55A4 41 82 00 18 */ beq lbl_802A995C
lbl_802A9948:
/* 802A9948 002A55A8 7C 69 03 A6 */ mtctr r3
lbl_802A994C:
/* 802A994C 002A55AC 7C 7E 22 14 */ add r3, r30, r4
/* 802A9950 002A55B0 7C 84 D2 14 */ add r4, r4, r26
/* 802A9954 002A55B4 9B A3 00 29 */ stb r29, 0x29(r3)
/* 802A9958 002A55B8 42 00 FF F4 */ bdnz lbl_802A994C
lbl_802A995C:
/* 802A995C 002A55BC 38 00 FF FF */ li r0, -1
/* 802A9960 002A55C0 90 1C 08 B0 */ stw r0, 0x8b0(r28)
/* 802A9964 002A55C4 93 FC 08 B4 */ stw r31, 0x8b4(r28)
lbl_802A9968:
/* 802A9968 002A55C8 93 DC 08 AC */ stw r30, 0x8ac(r28)
/* 802A996C 002A55CC 7F 63 DB 78 */ mr r3, r27
/* 802A9970 002A55D0 4B FC 4E 15 */ bl OSRestoreInterrupts
/* 802A9974 002A55D4 39 61 00 20 */ addi r11, r1, 0x20
/* 802A9978 002A55D8 4B F1 D7 F9 */ bl _restgpr_26
/* 802A997C 002A55DC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A9980 002A55E0 7C 08 03 A6 */ mtlr r0
/* 802A9984 002A55E4 38 21 00 20 */ addi r1, r1, 0x20
/* 802A9988 002A55E8 4E 80 00 20 */ blr
.global WPADiExcludeButton
WPADiExcludeButton:
/* 802A998C 002A55EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A9990 002A55F0 7C 08 02 A6 */ mflr r0
/* 802A9994 002A55F4 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A9998 002A55F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A999C 002A55FC 54 60 10 3A */ slwi r0, r3, 2
/* 802A99A0 002A5600 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A99A4 002A5604 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A99A8 002A5608 7F E4 00 2E */ lwzx r31, r4, r0
/* 802A99AC 002A560C 4B FC 4D B1 */ bl OSDisableInterrupts
/* 802A99B0 002A5610 88 1F 08 C8 */ lbz r0, 0x8c8(r31)
/* 802A99B4 002A5614 7C 00 00 34 */ cntlzw r0, r0
/* 802A99B8 002A5618 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f
/* 802A99BC 002A561C 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802A99C0 002A5620 7C DF 02 14 */ add r6, r31, r0
/* 802A99C4 002A5624 A0 86 00 A0 */ lhz r4, 0xa0(r6)
/* 802A99C8 002A5628 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 802A99CC 002A562C 2C 00 00 03 */ cmpwi r0, 3
/* 802A99D0 002A5630 40 82 00 0C */ bne lbl_802A99DC
/* 802A99D4 002A5634 54 80 07 FA */ rlwinm r0, r4, 0, 0x1f, 0x1d
/* 802A99D8 002A5638 B0 06 00 A0 */ sth r0, 0xa0(r6)
lbl_802A99DC:
/* 802A99DC 002A563C A0 86 00 A0 */ lhz r4, 0xa0(r6)
/* 802A99E0 002A5640 54 80 07 3A */ rlwinm r0, r4, 0, 0x1c, 0x1d
/* 802A99E4 002A5644 2C 00 00 0C */ cmpwi r0, 0xc
/* 802A99E8 002A5648 40 82 00 0C */ bne lbl_802A99F4
/* 802A99EC 002A564C 54 80 07 B8 */ rlwinm r0, r4, 0, 0x1e, 0x1c
/* 802A99F0 002A5650 B0 06 00 A0 */ sth r0, 0xa0(r6)
lbl_802A99F4:
/* 802A99F4 002A5654 80 9F 08 B8 */ lwz r4, 0x8b8(r31)
/* 802A99F8 002A5658 38 04 FF FA */ addi r0, r4, -6
/* 802A99FC 002A565C 28 00 00 02 */ cmplwi r0, 2
/* 802A9A00 002A5660 41 81 00 38 */ bgt lbl_802A9A38
/* 802A9A04 002A5664 A0 A6 00 CA */ lhz r5, 0xca(r6)
/* 802A9A08 002A5668 70 A4 80 02 */ andi. r4, r5, 0x8002
/* 802A9A0C 002A566C 3C 04 00 00 */ addis r0, r4, 0
/* 802A9A10 002A5670 28 00 80 02 */ cmplwi r0, 0x8002
/* 802A9A14 002A5674 40 82 00 0C */ bne lbl_802A9A20
/* 802A9A18 002A5678 54 A0 04 7E */ clrlwi r0, r5, 0x11
/* 802A9A1C 002A567C B0 06 00 CA */ sth r0, 0xca(r6)
lbl_802A9A20:
/* 802A9A20 002A5680 A0 86 00 CA */ lhz r4, 0xca(r6)
/* 802A9A24 002A5684 70 80 40 01 */ andi. r0, r4, 0x4001
/* 802A9A28 002A5688 2C 00 40 01 */ cmpwi r0, 0x4001
/* 802A9A2C 002A568C 40 82 00 0C */ bne lbl_802A9A38
/* 802A9A30 002A5690 54 80 04 A0 */ rlwinm r0, r4, 0, 0x12, 0x10
/* 802A9A34 002A5694 B0 06 00 CA */ sth r0, 0xca(r6)
lbl_802A9A38:
/* 802A9A38 002A5698 4B FC 4D 4D */ bl OSRestoreInterrupts
/* 802A9A3C 002A569C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A9A40 002A56A0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A9A44 002A56A4 7C 08 03 A6 */ mtlr r0
/* 802A9A48 002A56A8 38 21 00 10 */ addi r1, r1, 0x10
/* 802A9A4C 002A56AC 4E 80 00 20 */ blr
.global WPADiCopyOut
WPADiCopyOut:
/* 802A9A50 002A56B0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802A9A54 002A56B4 7C 08 02 A6 */ mflr r0
/* 802A9A58 002A56B8 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A9A5C 002A56BC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802A9A60 002A56C0 54 60 10 3A */ slwi r0, r3, 2
/* 802A9A64 002A56C4 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A9A68 002A56C8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802A9A6C 002A56CC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802A9A70 002A56D0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802A9A74 002A56D4 7C 7D 1B 78 */ mr r29, r3
/* 802A9A78 002A56D8 7F E4 00 2E */ lwzx r31, r4, r0
/* 802A9A7C 002A56DC 4B FC 4C E1 */ bl OSDisableInterrupts
/* 802A9A80 002A56E0 88 9F 08 C8 */ lbz r4, 0x8c8(r31)
/* 802A9A84 002A56E4 7C 7E 1B 78 */ mr r30, r3
/* 802A9A88 002A56E8 80 1F 08 AC */ lwz r0, 0x8ac(r31)
/* 802A9A8C 002A56EC 7C 83 00 34 */ cntlzw r3, r4
/* 802A9A90 002A56F0 54 63 DE 3E */ rlwinm r3, r3, 0x1b, 0x18, 0x1f
/* 802A9A94 002A56F4 2C 00 00 00 */ cmpwi r0, 0
/* 802A9A98 002A56F8 1C 03 00 60 */ mulli r0, r3, 0x60
/* 802A9A9C 002A56FC 7C 7F 02 14 */ add r3, r31, r0
/* 802A9AA0 002A5700 38 83 00 A0 */ addi r4, r3, 0xa0
/* 802A9AA4 002A5704 41 82 00 E4 */ beq lbl_802A9B88
/* 802A9AA8 002A5708 80 7F 08 B0 */ lwz r3, 0x8b0(r31)
/* 802A9AAC 002A570C 38 63 00 01 */ addi r3, r3, 1
/* 802A9AB0 002A5710 90 7F 08 B0 */ stw r3, 0x8b0(r31)
/* 802A9AB4 002A5714 80 1F 08 B4 */ lwz r0, 0x8b4(r31)
/* 802A9AB8 002A5718 7C 03 00 40 */ cmplw r3, r0
/* 802A9ABC 002A571C 41 80 00 0C */ blt lbl_802A9AC8
/* 802A9AC0 002A5720 38 00 00 00 */ li r0, 0
/* 802A9AC4 002A5724 90 1F 08 B0 */ stw r0, 0x8b0(r31)
lbl_802A9AC8:
/* 802A9AC8 002A5728 80 7F 08 B8 */ lwz r3, 0x8b8(r31)
/* 802A9ACC 002A572C 28 03 00 02 */ cmplwi r3, 2
/* 802A9AD0 002A5730 41 81 00 20 */ bgt lbl_802A9AF0
/* 802A9AD4 002A5734 80 1F 08 B0 */ lwz r0, 0x8b0(r31)
/* 802A9AD8 002A5738 38 A0 00 2A */ li r5, 0x2a
/* 802A9ADC 002A573C 80 7F 08 AC */ lwz r3, 0x8ac(r31)
/* 802A9AE0 002A5740 1C 00 00 2A */ mulli r0, r0, 0x2a
/* 802A9AE4 002A5744 7C 63 02 14 */ add r3, r3, r0
/* 802A9AE8 002A5748 4B D5 A5 19 */ bl memcpy
/* 802A9AEC 002A574C 48 00 00 9C */ b lbl_802A9B88
lbl_802A9AF0:
/* 802A9AF0 002A5750 38 03 FF FD */ addi r0, r3, -3
/* 802A9AF4 002A5754 28 00 00 02 */ cmplwi r0, 2
/* 802A9AF8 002A5758 41 81 00 30 */ bgt lbl_802A9B28
/* 802A9AFC 002A575C 80 7F 08 B0 */ lwz r3, 0x8b0(r31)
/* 802A9B00 002A5760 38 A0 00 2A */ li r5, 0x2a
/* 802A9B04 002A5764 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A9B08 002A5768 1C 63 00 32 */ mulli r3, r3, 0x32
/* 802A9B0C 002A576C 80 DF 08 AC */ lwz r6, 0x8ac(r31)
/* 802A9B10 002A5770 7C 00 07 75 */ extsb. r0, r0
/* 802A9B14 002A5774 7C 66 1A 14 */ add r3, r6, r3
/* 802A9B18 002A5778 40 82 00 08 */ bne lbl_802A9B20
/* 802A9B1C 002A577C 38 A0 00 32 */ li r5, 0x32
lbl_802A9B20:
/* 802A9B20 002A5780 4B D5 A4 E1 */ bl memcpy
/* 802A9B24 002A5784 48 00 00 64 */ b lbl_802A9B88
lbl_802A9B28:
/* 802A9B28 002A5788 38 03 FF FA */ addi r0, r3, -6
/* 802A9B2C 002A578C 28 00 00 02 */ cmplwi r0, 2
/* 802A9B30 002A5790 41 81 00 30 */ bgt lbl_802A9B60
/* 802A9B34 002A5794 80 7F 08 B0 */ lwz r3, 0x8b0(r31)
/* 802A9B38 002A5798 38 A0 00 2A */ li r5, 0x2a
/* 802A9B3C 002A579C 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A9B40 002A57A0 1C 63 00 36 */ mulli r3, r3, 0x36
/* 802A9B44 002A57A4 80 DF 08 AC */ lwz r6, 0x8ac(r31)
/* 802A9B48 002A57A8 7C 00 07 75 */ extsb. r0, r0
/* 802A9B4C 002A57AC 7C 66 1A 14 */ add r3, r6, r3
/* 802A9B50 002A57B0 40 82 00 08 */ bne lbl_802A9B58
/* 802A9B54 002A57B4 38 A0 00 36 */ li r5, 0x36
lbl_802A9B58:
/* 802A9B58 002A57B8 4B D5 A4 A9 */ bl memcpy
/* 802A9B5C 002A57BC 48 00 00 2C */ b lbl_802A9B88
lbl_802A9B60:
/* 802A9B60 002A57C0 80 7F 08 B0 */ lwz r3, 0x8b0(r31)
/* 802A9B64 002A57C4 38 A0 00 2A */ li r5, 0x2a
/* 802A9B68 002A57C8 88 04 00 29 */ lbz r0, 0x29(r4)
/* 802A9B6C 002A57CC 1C 63 00 5A */ mulli r3, r3, 0x5a
/* 802A9B70 002A57D0 80 DF 08 AC */ lwz r6, 0x8ac(r31)
/* 802A9B74 002A57D4 7C 00 07 75 */ extsb. r0, r0
/* 802A9B78 002A57D8 7C 66 1A 14 */ add r3, r6, r3
/* 802A9B7C 002A57DC 40 82 00 08 */ bne lbl_802A9B84
/* 802A9B80 002A57E0 38 A0 00 5A */ li r5, 0x5a
lbl_802A9B84:
/* 802A9B84 002A57E4 4B D5 A4 7D */ bl memcpy
lbl_802A9B88:
/* 802A9B88 002A57E8 81 9F 08 A8 */ lwz r12, 0x8a8(r31)
/* 802A9B8C 002A57EC 2C 0C 00 00 */ cmpwi r12, 0
/* 802A9B90 002A57F0 41 82 00 10 */ beq lbl_802A9BA0
/* 802A9B94 002A57F4 7F A3 EB 78 */ mr r3, r29
/* 802A9B98 002A57F8 7D 89 03 A6 */ mtctr r12
/* 802A9B9C 002A57FC 4E 80 04 21 */ bctrl
lbl_802A9BA0:
/* 802A9BA0 002A5800 A0 9F 09 84 */ lhz r4, 0x984(r31)
/* 802A9BA4 002A5804 7F C3 F3 78 */ mr r3, r30
/* 802A9BA8 002A5808 38 04 00 01 */ addi r0, r4, 1
/* 802A9BAC 002A580C B0 1F 09 84 */ sth r0, 0x984(r31)
/* 802A9BB0 002A5810 4B FC 4B D5 */ bl OSRestoreInterrupts
/* 802A9BB4 002A5814 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802A9BB8 002A5818 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802A9BBC 002A581C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802A9BC0 002A5820 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802A9BC4 002A5824 7C 08 03 A6 */ mtlr r0
/* 802A9BC8 002A5828 38 21 00 20 */ addi r1, r1, 0x20
/* 802A9BCC 002A582C 4E 80 00 20 */ blr
.global WPADIsSpeakerEnabled
WPADIsSpeakerEnabled:
/* 802A9BD0 002A5830 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802A9BD4 002A5834 7C 08 02 A6 */ mflr r0
/* 802A9BD8 002A5838 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802A9BDC 002A583C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802A9BE0 002A5840 54 60 10 3A */ slwi r0, r3, 2
/* 802A9BE4 002A5844 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802A9BE8 002A5848 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802A9BEC 002A584C 7F E4 00 2E */ lwzx r31, r4, r0
/* 802A9BF0 002A5850 4B FC 4B 6D */ bl OSDisableInterrupts
/* 802A9BF4 002A5854 83 FF 08 3C */ lwz r31, 0x83c(r31)
/* 802A9BF8 002A5858 4B FC 4B 8D */ bl OSRestoreInterrupts
/* 802A9BFC 002A585C 7F E3 FB 78 */ mr r3, r31
/* 802A9C00 002A5860 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802A9C04 002A5864 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802A9C08 002A5868 7C 08 03 A6 */ mtlr r0
/* 802A9C0C 002A586C 38 21 00 10 */ addi r1, r1, 0x10
/* 802A9C10 002A5870 4E 80 00 20 */ blr
.global WPADControlSpeaker
WPADControlSpeaker:
/* 802A9C14 002A5874 94 21 FA 00 */ stwu r1, -0x600(r1)
/* 802A9C18 002A5878 7C 08 02 A6 */ mflr r0
/* 802A9C1C 002A587C 90 01 06 04 */ stw r0, 0x604(r1)
/* 802A9C20 002A5880 39 61 06 00 */ addi r11, r1, 0x600
/* 802A9C24 002A5884 4B F1 D4 FD */ bl _savegpr_25
/* 802A9C28 002A5888 89 62 A4 00 */ lbz r11, lbl_80642A00-_SDA2_BASE_(r2)
/* 802A9C2C 002A588C 3C C0 80 53 */ lis r6, lbl_80536D70@ha
/* 802A9C30 002A5890 89 42 A4 01 */ lbz r10, lbl_80642A01-_SDA2_BASE_(r2)
/* 802A9C34 002A5894 7C 99 23 78 */ mr r25, r4
/* 802A9C38 002A5898 89 22 A4 02 */ lbz r9, lbl_80642A02-_SDA2_BASE_(r2)
/* 802A9C3C 002A589C 54 60 10 3A */ slwi r0, r3, 2
/* 802A9C40 002A58A0 89 02 A4 03 */ lbz r8, lbl_80642A03-_SDA2_BASE_(r2)
/* 802A9C44 002A58A4 7C 7B 1B 78 */ mr r27, r3
/* 802A9C48 002A58A8 88 E2 A4 04 */ lbz r7, lbl_80642A04-_SDA2_BASE_(r2)
/* 802A9C4C 002A58AC 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l
/* 802A9C50 002A58B0 88 82 A4 05 */ lbz r4, lbl_80642A05-_SDA2_BASE_(r2)
/* 802A9C54 002A58B4 7C BC 2B 78 */ mr r28, r5
/* 802A9C58 002A58B8 88 62 A4 06 */ lbz r3, lbl_80642A06-_SDA2_BASE_(r2)
/* 802A9C5C 002A58BC 99 61 00 2C */ stb r11, 0x2c(r1)
/* 802A9C60 002A58C0 7F E6 00 2E */ lwzx r31, r6, r0
/* 802A9C64 002A58C4 99 41 00 2D */ stb r10, 0x2d(r1)
/* 802A9C68 002A58C8 99 21 00 2E */ stb r9, 0x2e(r1)
/* 802A9C6C 002A58CC 99 01 00 2F */ stb r8, 0x2f(r1)
/* 802A9C70 002A58D0 98 E1 00 30 */ stb r7, 0x30(r1)
/* 802A9C74 002A58D4 98 81 00 31 */ stb r4, 0x31(r1)
/* 802A9C78 002A58D8 98 61 00 32 */ stb r3, 0x32(r1)
/* 802A9C7C 002A58DC 4B FC 4A E1 */ bl OSDisableInterrupts
/* 802A9C80 002A58E0 83 BF 08 3C */ lwz r29, 0x83c(r31)
/* 802A9C84 002A58E4 83 5F 08 BC */ lwz r26, 0x8bc(r31)
/* 802A9C88 002A58E8 83 DF 08 DC */ lwz r30, 0x8dc(r31)
/* 802A9C8C 002A58EC 4B FC 4A F9 */ bl OSRestoreInterrupts
/* 802A9C90 002A58F0 2C 1A FF FF */ cmpwi r26, -1
/* 802A9C94 002A58F4 41 82 15 64 */ beq lbl_802AB1F8
/* 802A9C98 002A58F8 2C 1E 00 00 */ cmpwi r30, 0
/* 802A9C9C 002A58FC 40 82 00 0C */ bne lbl_802A9CA8
/* 802A9CA0 002A5900 3B 40 FF FE */ li r26, -2
/* 802A9CA4 002A5904 48 00 15 54 */ b lbl_802AB1F8
lbl_802A9CA8:
/* 802A9CA8 002A5908 2C 19 00 00 */ cmpwi r25, 0
/* 802A9CAC 002A590C 40 82 07 18 */ bne lbl_802AA3C4
/* 802A9CB0 002A5910 2C 1D 00 00 */ cmpwi r29, 0
/* 802A9CB4 002A5914 40 82 00 0C */ bne lbl_802A9CC0
/* 802A9CB8 002A5918 3B 40 00 00 */ li r26, 0
/* 802A9CBC 002A591C 48 00 15 3C */ b lbl_802AB1F8
lbl_802A9CC0:
/* 802A9CC0 002A5920 4B FC 4A 9D */ bl OSDisableInterrupts
/* 802A9CC4 002A5924 7C 7D 1B 78 */ mr r29, r3
/* 802A9CC8 002A5928 4B FC 4A 95 */ bl OSDisableInterrupts
/* 802A9CCC 002A592C 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802A9CD0 002A5930 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9CD4 002A5934 7C 04 00 50 */ subf r0, r4, r0
/* 802A9CD8 002A5938 7C 1E 07 75 */ extsb. r30, r0
/* 802A9CDC 002A593C 40 80 00 10 */ bge lbl_802A9CEC
/* 802A9CE0 002A5940 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802A9CE4 002A5944 7C 1E 02 14 */ add r0, r30, r0
/* 802A9CE8 002A5948 7C 1E 07 74 */ extsb r30, r0
lbl_802A9CEC:
/* 802A9CEC 002A594C 4B FC 4A 99 */ bl OSRestoreInterrupts
/* 802A9CF0 002A5950 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802A9CF4 002A5954 38 9E 00 05 */ addi r4, r30, 5
/* 802A9CF8 002A5958 38 03 FF FF */ addi r0, r3, -1
/* 802A9CFC 002A595C 7C 04 00 40 */ cmplw r4, r0
/* 802A9D00 002A5960 41 81 06 B4 */ bgt lbl_802AA3B4
/* 802A9D04 002A5964 38 60 00 01 */ li r3, 1
/* 802A9D08 002A5968 38 00 00 04 */ li r0, 4
/* 802A9D0C 002A596C B0 61 05 92 */ sth r3, 0x592(r1)
/* 802A9D10 002A5970 3B 60 00 19 */ li r27, 0x19
/* 802A9D14 002A5974 39 80 00 00 */ li r12, 0
/* 802A9D18 002A5978 81 41 05 80 */ lwz r10, 0x580(r1)
/* 802A9D1C 002A597C 98 01 05 7C */ stb r0, 0x57c(r1)
/* 802A9D20 002A5980 81 21 05 84 */ lwz r9, 0x584(r1)
/* 802A9D24 002A5984 81 61 05 7C */ lwz r11, 0x57c(r1)
/* 802A9D28 002A5988 81 01 05 88 */ lwz r8, 0x588(r1)
/* 802A9D2C 002A598C 80 E1 05 8C */ lwz r7, 0x58c(r1)
/* 802A9D30 002A5990 80 C1 05 90 */ lwz r6, 0x590(r1)
/* 802A9D34 002A5994 80 A1 05 94 */ lwz r5, 0x594(r1)
/* 802A9D38 002A5998 80 81 05 98 */ lwz r4, 0x598(r1)
/* 802A9D3C 002A599C 80 61 05 9C */ lwz r3, 0x59c(r1)
/* 802A9D40 002A59A0 80 01 05 A0 */ lwz r0, 0x5a0(r1)
/* 802A9D44 002A59A4 93 61 05 78 */ stw r27, 0x578(r1)
/* 802A9D48 002A59A8 91 81 05 A4 */ stw r12, 0x5a4(r1)
/* 802A9D4C 002A59AC 93 61 05 A8 */ stw r27, 0x5a8(r1)
/* 802A9D50 002A59B0 91 61 05 AC */ stw r11, 0x5ac(r1)
/* 802A9D54 002A59B4 91 41 05 B0 */ stw r10, 0x5b0(r1)
/* 802A9D58 002A59B8 91 21 05 B4 */ stw r9, 0x5b4(r1)
/* 802A9D5C 002A59BC 91 01 05 B8 */ stw r8, 0x5b8(r1)
/* 802A9D60 002A59C0 90 E1 05 BC */ stw r7, 0x5bc(r1)
/* 802A9D64 002A59C4 90 C1 05 C0 */ stw r6, 0x5c0(r1)
/* 802A9D68 002A59C8 90 A1 05 C4 */ stw r5, 0x5c4(r1)
/* 802A9D6C 002A59CC 90 81 05 C8 */ stw r4, 0x5c8(r1)
/* 802A9D70 002A59D0 90 61 05 CC */ stw r3, 0x5cc(r1)
/* 802A9D74 002A59D4 90 01 05 D0 */ stw r0, 0x5d0(r1)
/* 802A9D78 002A59D8 91 81 05 D4 */ stw r12, 0x5d4(r1)
/* 802A9D7C 002A59DC 4B FC 49 E1 */ bl OSDisableInterrupts
/* 802A9D80 002A59E0 7C 7E 1B 78 */ mr r30, r3
/* 802A9D84 002A59E4 4B FC 49 D9 */ bl OSDisableInterrupts
/* 802A9D88 002A59E8 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802A9D8C 002A59EC 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9D90 002A59F0 7C 04 00 50 */ subf r0, r4, r0
/* 802A9D94 002A59F4 7C 1B 07 75 */ extsb. r27, r0
/* 802A9D98 002A59F8 40 80 00 10 */ bge lbl_802A9DA8
/* 802A9D9C 002A59FC 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802A9DA0 002A5A00 7C 1B 02 14 */ add r0, r27, r0
/* 802A9DA4 002A5A04 7C 1B 07 74 */ extsb r27, r0
lbl_802A9DA8:
/* 802A9DA8 002A5A08 4B FC 49 DD */ bl OSRestoreInterrupts
/* 802A9DAC 002A5A0C 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802A9DB0 002A5A10 38 03 FF FF */ addi r0, r3, -1
/* 802A9DB4 002A5A14 7C 00 D8 40 */ cmplw r0, r27
/* 802A9DB8 002A5A18 40 82 00 10 */ bne lbl_802A9DC8
/* 802A9DBC 002A5A1C 7F C3 F3 78 */ mr r3, r30
/* 802A9DC0 002A5A20 4B FC 49 C5 */ bl OSRestoreInterrupts
/* 802A9DC4 002A5A24 48 00 00 78 */ b lbl_802A9E3C
lbl_802A9DC8:
/* 802A9DC8 002A5A28 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9DCC 002A5A2C 38 80 00 00 */ li r4, 0
/* 802A9DD0 002A5A30 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802A9DD4 002A5A34 38 A0 00 30 */ li r5, 0x30
/* 802A9DD8 002A5A38 7C 00 07 74 */ extsb r0, r0
/* 802A9DDC 002A5A3C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9DE0 002A5A40 7C 63 02 14 */ add r3, r3, r0
/* 802A9DE4 002A5A44 4B D5 A3 21 */ bl memset
/* 802A9DE8 002A5A48 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9DEC 002A5A4C 38 81 05 A8 */ addi r4, r1, 0x5a8
/* 802A9DF0 002A5A50 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802A9DF4 002A5A54 38 A0 00 30 */ li r5, 0x30
/* 802A9DF8 002A5A58 7C 00 07 74 */ extsb r0, r0
/* 802A9DFC 002A5A5C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9E00 002A5A60 7C 63 02 14 */ add r3, r3, r0
/* 802A9E04 002A5A64 4B D5 A1 FD */ bl memcpy
/* 802A9E08 002A5A68 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9E0C 002A5A6C 7F C3 F3 78 */ mr r3, r30
/* 802A9E10 002A5A70 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802A9E14 002A5A74 7C 06 07 74 */ extsb r6, r0
/* 802A9E18 002A5A78 38 84 FF FF */ addi r4, r4, -1
/* 802A9E1C 002A5A7C 7C A4 30 50 */ subf r5, r4, r6
/* 802A9E20 002A5A80 38 06 00 01 */ addi r0, r6, 1
/* 802A9E24 002A5A84 7C 86 20 50 */ subf r4, r6, r4
/* 802A9E28 002A5A88 7C A4 20 F8 */ nor r4, r5, r4
/* 802A9E2C 002A5A8C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A9E30 002A5A90 7C 00 20 78 */ andc r0, r0, r4
/* 802A9E34 002A5A94 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802A9E38 002A5A98 4B FC 49 4D */ bl OSRestoreInterrupts
lbl_802A9E3C:
/* 802A9E3C 002A5A9C 3C 60 04 A2 */ lis r3, 0x04A20001@ha
/* 802A9E40 002A5AA0 39 20 00 01 */ li r9, 1
/* 802A9E44 002A5AA4 39 03 00 01 */ addi r8, r3, 0x04A20001@l
/* 802A9E48 002A5AA8 38 E0 00 16 */ li r7, 0x16
/* 802A9E4C 002A5AAC 38 C0 00 15 */ li r6, 0x15
/* 802A9E50 002A5AB0 38 00 00 00 */ li r0, 0
/* 802A9E54 002A5AB4 99 21 00 12 */ stb r9, 0x12(r1)
/* 802A9E58 002A5AB8 38 61 05 4C */ addi r3, r1, 0x54c
/* 802A9E5C 002A5ABC 38 81 00 28 */ addi r4, r1, 0x28
/* 802A9E60 002A5AC0 38 A0 00 04 */ li r5, 4
/* 802A9E64 002A5AC4 91 01 00 28 */ stw r8, 0x28(r1)
/* 802A9E68 002A5AC8 99 21 00 11 */ stb r9, 0x11(r1)
/* 802A9E6C 002A5ACC 90 E1 05 48 */ stw r7, 0x548(r1)
/* 802A9E70 002A5AD0 B0 C1 05 62 */ sth r6, 0x562(r1)
/* 802A9E74 002A5AD4 90 01 05 74 */ stw r0, 0x574(r1)
/* 802A9E78 002A5AD8 4B D5 A1 89 */ bl memcpy
/* 802A9E7C 002A5ADC 38 61 05 50 */ addi r3, r1, 0x550
/* 802A9E80 002A5AE0 38 81 00 11 */ addi r4, r1, 0x11
/* 802A9E84 002A5AE4 38 A0 00 01 */ li r5, 1
/* 802A9E88 002A5AE8 4B D5 A1 79 */ bl memcpy
/* 802A9E8C 002A5AEC 38 61 05 51 */ addi r3, r1, 0x551
/* 802A9E90 002A5AF0 38 81 00 12 */ addi r4, r1, 0x12
/* 802A9E94 002A5AF4 38 A0 00 01 */ li r5, 1
/* 802A9E98 002A5AF8 4B D5 A1 69 */ bl memcpy
/* 802A9E9C 002A5AFC 83 61 05 48 */ lwz r27, 0x548(r1)
/* 802A9EA0 002A5B00 81 81 05 4C */ lwz r12, 0x54c(r1)
/* 802A9EA4 002A5B04 81 61 05 50 */ lwz r11, 0x550(r1)
/* 802A9EA8 002A5B08 81 41 05 54 */ lwz r10, 0x554(r1)
/* 802A9EAC 002A5B0C 81 21 05 58 */ lwz r9, 0x558(r1)
/* 802A9EB0 002A5B10 81 01 05 5C */ lwz r8, 0x55c(r1)
/* 802A9EB4 002A5B14 80 E1 05 60 */ lwz r7, 0x560(r1)
/* 802A9EB8 002A5B18 80 C1 05 64 */ lwz r6, 0x564(r1)
/* 802A9EBC 002A5B1C 80 A1 05 68 */ lwz r5, 0x568(r1)
/* 802A9EC0 002A5B20 80 81 05 6C */ lwz r4, 0x56c(r1)
/* 802A9EC4 002A5B24 80 61 05 70 */ lwz r3, 0x570(r1)
/* 802A9EC8 002A5B28 80 01 05 74 */ lwz r0, 0x574(r1)
/* 802A9ECC 002A5B2C 93 61 05 18 */ stw r27, 0x518(r1)
/* 802A9ED0 002A5B30 91 81 05 1C */ stw r12, 0x51c(r1)
/* 802A9ED4 002A5B34 91 61 05 20 */ stw r11, 0x520(r1)
/* 802A9ED8 002A5B38 91 41 05 24 */ stw r10, 0x524(r1)
/* 802A9EDC 002A5B3C 91 21 05 28 */ stw r9, 0x528(r1)
/* 802A9EE0 002A5B40 91 01 05 2C */ stw r8, 0x52c(r1)
/* 802A9EE4 002A5B44 90 E1 05 30 */ stw r7, 0x530(r1)
/* 802A9EE8 002A5B48 90 C1 05 34 */ stw r6, 0x534(r1)
/* 802A9EEC 002A5B4C 90 A1 05 38 */ stw r5, 0x538(r1)
/* 802A9EF0 002A5B50 90 81 05 3C */ stw r4, 0x53c(r1)
/* 802A9EF4 002A5B54 90 61 05 40 */ stw r3, 0x540(r1)
/* 802A9EF8 002A5B58 90 01 05 44 */ stw r0, 0x544(r1)
/* 802A9EFC 002A5B5C 4B FC 48 61 */ bl OSDisableInterrupts
/* 802A9F00 002A5B60 7C 7E 1B 78 */ mr r30, r3
/* 802A9F04 002A5B64 4B FC 48 59 */ bl OSDisableInterrupts
/* 802A9F08 002A5B68 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802A9F0C 002A5B6C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9F10 002A5B70 7C 04 00 50 */ subf r0, r4, r0
/* 802A9F14 002A5B74 7C 1B 07 75 */ extsb. r27, r0
/* 802A9F18 002A5B78 40 80 00 10 */ bge lbl_802A9F28
/* 802A9F1C 002A5B7C 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802A9F20 002A5B80 7C 1B 02 14 */ add r0, r27, r0
/* 802A9F24 002A5B84 7C 1B 07 74 */ extsb r27, r0
lbl_802A9F28:
/* 802A9F28 002A5B88 4B FC 48 5D */ bl OSRestoreInterrupts
/* 802A9F2C 002A5B8C 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802A9F30 002A5B90 38 03 FF FF */ addi r0, r3, -1
/* 802A9F34 002A5B94 7C 00 D8 40 */ cmplw r0, r27
/* 802A9F38 002A5B98 40 82 00 10 */ bne lbl_802A9F48
/* 802A9F3C 002A5B9C 7F C3 F3 78 */ mr r3, r30
/* 802A9F40 002A5BA0 4B FC 48 45 */ bl OSRestoreInterrupts
/* 802A9F44 002A5BA4 48 00 00 78 */ b lbl_802A9FBC
lbl_802A9F48:
/* 802A9F48 002A5BA8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9F4C 002A5BAC 38 80 00 00 */ li r4, 0
/* 802A9F50 002A5BB0 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802A9F54 002A5BB4 38 A0 00 30 */ li r5, 0x30
/* 802A9F58 002A5BB8 7C 00 07 74 */ extsb r0, r0
/* 802A9F5C 002A5BBC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9F60 002A5BC0 7C 63 02 14 */ add r3, r3, r0
/* 802A9F64 002A5BC4 4B D5 A1 A1 */ bl memset
/* 802A9F68 002A5BC8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9F6C 002A5BCC 38 81 05 18 */ addi r4, r1, 0x518
/* 802A9F70 002A5BD0 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802A9F74 002A5BD4 38 A0 00 30 */ li r5, 0x30
/* 802A9F78 002A5BD8 7C 00 07 74 */ extsb r0, r0
/* 802A9F7C 002A5BDC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802A9F80 002A5BE0 7C 63 02 14 */ add r3, r3, r0
/* 802A9F84 002A5BE4 4B D5 A0 7D */ bl memcpy
/* 802A9F88 002A5BE8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802A9F8C 002A5BEC 7F C3 F3 78 */ mr r3, r30
/* 802A9F90 002A5BF0 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802A9F94 002A5BF4 7C 06 07 74 */ extsb r6, r0
/* 802A9F98 002A5BF8 38 84 FF FF */ addi r4, r4, -1
/* 802A9F9C 002A5BFC 7C A4 30 50 */ subf r5, r4, r6
/* 802A9FA0 002A5C00 38 06 00 01 */ addi r0, r6, 1
/* 802A9FA4 002A5C04 7C 86 20 50 */ subf r4, r6, r4
/* 802A9FA8 002A5C08 7C A4 20 F8 */ nor r4, r5, r4
/* 802A9FAC 002A5C0C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802A9FB0 002A5C10 7C 00 20 78 */ andc r0, r0, r4
/* 802A9FB4 002A5C14 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802A9FB8 002A5C18 4B FC 47 CD */ bl OSRestoreInterrupts
lbl_802A9FBC:
/* 802A9FBC 002A5C1C 3C 60 04 A2 */ lis r3, 0x04A20009@ha
/* 802A9FC0 002A5C20 39 20 00 00 */ li r9, 0
/* 802A9FC4 002A5C24 39 03 00 09 */ addi r8, r3, 0x04A20009@l
/* 802A9FC8 002A5C28 38 E0 00 01 */ li r7, 1
/* 802A9FCC 002A5C2C 38 C0 00 16 */ li r6, 0x16
/* 802A9FD0 002A5C30 38 00 00 15 */ li r0, 0x15
/* 802A9FD4 002A5C34 99 21 00 10 */ stb r9, 0x10(r1)
/* 802A9FD8 002A5C38 38 61 04 EC */ addi r3, r1, 0x4ec
/* 802A9FDC 002A5C3C 38 81 00 24 */ addi r4, r1, 0x24
/* 802A9FE0 002A5C40 38 A0 00 04 */ li r5, 4
/* 802A9FE4 002A5C44 91 01 00 24 */ stw r8, 0x24(r1)
/* 802A9FE8 002A5C48 98 E1 00 0F */ stb r7, 0xf(r1)
/* 802A9FEC 002A5C4C 90 C1 04 E8 */ stw r6, 0x4e8(r1)
/* 802A9FF0 002A5C50 B0 01 05 02 */ sth r0, 0x502(r1)
/* 802A9FF4 002A5C54 91 21 05 14 */ stw r9, 0x514(r1)
/* 802A9FF8 002A5C58 4B D5 A0 09 */ bl memcpy
/* 802A9FFC 002A5C5C 38 61 04 F0 */ addi r3, r1, 0x4f0
/* 802AA000 002A5C60 38 81 00 0F */ addi r4, r1, 0xf
/* 802AA004 002A5C64 38 A0 00 01 */ li r5, 1
/* 802AA008 002A5C68 4B D5 9F F9 */ bl memcpy
/* 802AA00C 002A5C6C 38 61 04 F1 */ addi r3, r1, 0x4f1
/* 802AA010 002A5C70 38 81 00 10 */ addi r4, r1, 0x10
/* 802AA014 002A5C74 38 A0 00 01 */ li r5, 1
/* 802AA018 002A5C78 4B D5 9F E9 */ bl memcpy
/* 802AA01C 002A5C7C 83 61 04 E8 */ lwz r27, 0x4e8(r1)
/* 802AA020 002A5C80 81 81 04 EC */ lwz r12, 0x4ec(r1)
/* 802AA024 002A5C84 81 61 04 F0 */ lwz r11, 0x4f0(r1)
/* 802AA028 002A5C88 81 41 04 F4 */ lwz r10, 0x4f4(r1)
/* 802AA02C 002A5C8C 81 21 04 F8 */ lwz r9, 0x4f8(r1)
/* 802AA030 002A5C90 81 01 04 FC */ lwz r8, 0x4fc(r1)
/* 802AA034 002A5C94 80 E1 05 00 */ lwz r7, 0x500(r1)
/* 802AA038 002A5C98 80 C1 05 04 */ lwz r6, 0x504(r1)
/* 802AA03C 002A5C9C 80 A1 05 08 */ lwz r5, 0x508(r1)
/* 802AA040 002A5CA0 80 81 05 0C */ lwz r4, 0x50c(r1)
/* 802AA044 002A5CA4 80 61 05 10 */ lwz r3, 0x510(r1)
/* 802AA048 002A5CA8 80 01 05 14 */ lwz r0, 0x514(r1)
/* 802AA04C 002A5CAC 93 61 04 B8 */ stw r27, 0x4b8(r1)
/* 802AA050 002A5CB0 91 81 04 BC */ stw r12, 0x4bc(r1)
/* 802AA054 002A5CB4 91 61 04 C0 */ stw r11, 0x4c0(r1)
/* 802AA058 002A5CB8 91 41 04 C4 */ stw r10, 0x4c4(r1)
/* 802AA05C 002A5CBC 91 21 04 C8 */ stw r9, 0x4c8(r1)
/* 802AA060 002A5CC0 91 01 04 CC */ stw r8, 0x4cc(r1)
/* 802AA064 002A5CC4 90 E1 04 D0 */ stw r7, 0x4d0(r1)
/* 802AA068 002A5CC8 90 C1 04 D4 */ stw r6, 0x4d4(r1)
/* 802AA06C 002A5CCC 90 A1 04 D8 */ stw r5, 0x4d8(r1)
/* 802AA070 002A5CD0 90 81 04 DC */ stw r4, 0x4dc(r1)
/* 802AA074 002A5CD4 90 61 04 E0 */ stw r3, 0x4e0(r1)
/* 802AA078 002A5CD8 90 01 04 E4 */ stw r0, 0x4e4(r1)
/* 802AA07C 002A5CDC 4B FC 46 E1 */ bl OSDisableInterrupts
/* 802AA080 002A5CE0 7C 7E 1B 78 */ mr r30, r3
/* 802AA084 002A5CE4 4B FC 46 D9 */ bl OSDisableInterrupts
/* 802AA088 002A5CE8 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA08C 002A5CEC 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA090 002A5CF0 7C 04 00 50 */ subf r0, r4, r0
/* 802AA094 002A5CF4 7C 1B 07 75 */ extsb. r27, r0
/* 802AA098 002A5CF8 40 80 00 10 */ bge lbl_802AA0A8
/* 802AA09C 002A5CFC 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA0A0 002A5D00 7C 1B 02 14 */ add r0, r27, r0
/* 802AA0A4 002A5D04 7C 1B 07 74 */ extsb r27, r0
lbl_802AA0A8:
/* 802AA0A8 002A5D08 4B FC 46 DD */ bl OSRestoreInterrupts
/* 802AA0AC 002A5D0C 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA0B0 002A5D10 38 03 FF FF */ addi r0, r3, -1
/* 802AA0B4 002A5D14 7C 00 D8 40 */ cmplw r0, r27
/* 802AA0B8 002A5D18 40 82 00 10 */ bne lbl_802AA0C8
/* 802AA0BC 002A5D1C 7F C3 F3 78 */ mr r3, r30
/* 802AA0C0 002A5D20 4B FC 46 C5 */ bl OSRestoreInterrupts
/* 802AA0C4 002A5D24 48 00 00 78 */ b lbl_802AA13C
lbl_802AA0C8:
/* 802AA0C8 002A5D28 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA0CC 002A5D2C 38 80 00 00 */ li r4, 0
/* 802AA0D0 002A5D30 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA0D4 002A5D34 38 A0 00 30 */ li r5, 0x30
/* 802AA0D8 002A5D38 7C 00 07 74 */ extsb r0, r0
/* 802AA0DC 002A5D3C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA0E0 002A5D40 7C 63 02 14 */ add r3, r3, r0
/* 802AA0E4 002A5D44 4B D5 A0 21 */ bl memset
/* 802AA0E8 002A5D48 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA0EC 002A5D4C 38 81 04 B8 */ addi r4, r1, 0x4b8
/* 802AA0F0 002A5D50 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA0F4 002A5D54 38 A0 00 30 */ li r5, 0x30
/* 802AA0F8 002A5D58 7C 00 07 74 */ extsb r0, r0
/* 802AA0FC 002A5D5C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA100 002A5D60 7C 63 02 14 */ add r3, r3, r0
/* 802AA104 002A5D64 4B D5 9E FD */ bl memcpy
/* 802AA108 002A5D68 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA10C 002A5D6C 7F C3 F3 78 */ mr r3, r30
/* 802AA110 002A5D70 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA114 002A5D74 7C 06 07 74 */ extsb r6, r0
/* 802AA118 002A5D78 38 84 FF FF */ addi r4, r4, -1
/* 802AA11C 002A5D7C 7C A4 30 50 */ subf r5, r4, r6
/* 802AA120 002A5D80 38 06 00 01 */ addi r0, r6, 1
/* 802AA124 002A5D84 7C 86 20 50 */ subf r4, r6, r4
/* 802AA128 002A5D88 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA12C 002A5D8C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA130 002A5D90 7C 00 20 78 */ andc r0, r0, r4
/* 802AA134 002A5D94 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA138 002A5D98 4B FC 46 4D */ bl OSRestoreInterrupts
lbl_802AA13C:
/* 802AA13C 002A5D9C 39 80 00 00 */ li r12, 0
/* 802AA140 002A5DA0 38 00 00 01 */ li r0, 1
/* 802AA144 002A5DA4 B0 01 04 72 */ sth r0, 0x472(r1)
/* 802AA148 002A5DA8 3B 60 00 14 */ li r27, 0x14
/* 802AA14C 002A5DAC 81 41 04 60 */ lwz r10, 0x460(r1)
/* 802AA150 002A5DB0 99 81 04 5C */ stb r12, 0x45c(r1)
/* 802AA154 002A5DB4 81 21 04 64 */ lwz r9, 0x464(r1)
/* 802AA158 002A5DB8 81 61 04 5C */ lwz r11, 0x45c(r1)
/* 802AA15C 002A5DBC 81 01 04 68 */ lwz r8, 0x468(r1)
/* 802AA160 002A5DC0 80 E1 04 6C */ lwz r7, 0x46c(r1)
/* 802AA164 002A5DC4 80 C1 04 70 */ lwz r6, 0x470(r1)
/* 802AA168 002A5DC8 80 A1 04 74 */ lwz r5, 0x474(r1)
/* 802AA16C 002A5DCC 80 81 04 78 */ lwz r4, 0x478(r1)
/* 802AA170 002A5DD0 80 61 04 7C */ lwz r3, 0x47c(r1)
/* 802AA174 002A5DD4 80 01 04 80 */ lwz r0, 0x480(r1)
/* 802AA178 002A5DD8 93 61 04 58 */ stw r27, 0x458(r1)
/* 802AA17C 002A5DDC 91 81 04 84 */ stw r12, 0x484(r1)
/* 802AA180 002A5DE0 93 61 04 88 */ stw r27, 0x488(r1)
/* 802AA184 002A5DE4 91 61 04 8C */ stw r11, 0x48c(r1)
/* 802AA188 002A5DE8 91 41 04 90 */ stw r10, 0x490(r1)
/* 802AA18C 002A5DEC 91 21 04 94 */ stw r9, 0x494(r1)
/* 802AA190 002A5DF0 91 01 04 98 */ stw r8, 0x498(r1)
/* 802AA194 002A5DF4 90 E1 04 9C */ stw r7, 0x49c(r1)
/* 802AA198 002A5DF8 90 C1 04 A0 */ stw r6, 0x4a0(r1)
/* 802AA19C 002A5DFC 90 A1 04 A4 */ stw r5, 0x4a4(r1)
/* 802AA1A0 002A5E00 90 81 04 A8 */ stw r4, 0x4a8(r1)
/* 802AA1A4 002A5E04 90 61 04 AC */ stw r3, 0x4ac(r1)
/* 802AA1A8 002A5E08 90 01 04 B0 */ stw r0, 0x4b0(r1)
/* 802AA1AC 002A5E0C 91 81 04 B4 */ stw r12, 0x4b4(r1)
/* 802AA1B0 002A5E10 4B FC 45 AD */ bl OSDisableInterrupts
/* 802AA1B4 002A5E14 7C 7E 1B 78 */ mr r30, r3
/* 802AA1B8 002A5E18 4B FC 45 A5 */ bl OSDisableInterrupts
/* 802AA1BC 002A5E1C 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA1C0 002A5E20 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA1C4 002A5E24 7C 04 00 50 */ subf r0, r4, r0
/* 802AA1C8 002A5E28 7C 1B 07 75 */ extsb. r27, r0
/* 802AA1CC 002A5E2C 40 80 00 10 */ bge lbl_802AA1DC
/* 802AA1D0 002A5E30 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA1D4 002A5E34 7C 1B 02 14 */ add r0, r27, r0
/* 802AA1D8 002A5E38 7C 1B 07 74 */ extsb r27, r0
lbl_802AA1DC:
/* 802AA1DC 002A5E3C 4B FC 45 A9 */ bl OSRestoreInterrupts
/* 802AA1E0 002A5E40 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA1E4 002A5E44 38 03 FF FF */ addi r0, r3, -1
/* 802AA1E8 002A5E48 7C 00 D8 40 */ cmplw r0, r27
/* 802AA1EC 002A5E4C 40 82 00 10 */ bne lbl_802AA1FC
/* 802AA1F0 002A5E50 7F C3 F3 78 */ mr r3, r30
/* 802AA1F4 002A5E54 4B FC 45 91 */ bl OSRestoreInterrupts
/* 802AA1F8 002A5E58 48 00 00 78 */ b lbl_802AA270
lbl_802AA1FC:
/* 802AA1FC 002A5E5C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA200 002A5E60 38 80 00 00 */ li r4, 0
/* 802AA204 002A5E64 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA208 002A5E68 38 A0 00 30 */ li r5, 0x30
/* 802AA20C 002A5E6C 7C 00 07 74 */ extsb r0, r0
/* 802AA210 002A5E70 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA214 002A5E74 7C 63 02 14 */ add r3, r3, r0
/* 802AA218 002A5E78 4B D5 9E ED */ bl memset
/* 802AA21C 002A5E7C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA220 002A5E80 38 81 04 88 */ addi r4, r1, 0x488
/* 802AA224 002A5E84 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA228 002A5E88 38 A0 00 30 */ li r5, 0x30
/* 802AA22C 002A5E8C 7C 00 07 74 */ extsb r0, r0
/* 802AA230 002A5E90 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA234 002A5E94 7C 63 02 14 */ add r3, r3, r0
/* 802AA238 002A5E98 4B D5 9D C9 */ bl memcpy
/* 802AA23C 002A5E9C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA240 002A5EA0 7F C3 F3 78 */ mr r3, r30
/* 802AA244 002A5EA4 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA248 002A5EA8 7C 06 07 74 */ extsb r6, r0
/* 802AA24C 002A5EAC 38 84 FF FF */ addi r4, r4, -1
/* 802AA250 002A5EB0 7C A4 30 50 */ subf r5, r4, r6
/* 802AA254 002A5EB4 38 06 00 01 */ addi r0, r6, 1
/* 802AA258 002A5EB8 7C 86 20 50 */ subf r4, r6, r4
/* 802AA25C 002A5EBC 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA260 002A5EC0 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA264 002A5EC4 7C 00 20 78 */ andc r0, r0, r4
/* 802AA268 002A5EC8 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA26C 002A5ECC 4B FC 45 19 */ bl OSRestoreInterrupts
lbl_802AA270:
/* 802AA270 002A5ED0 39 60 00 00 */ li r11, 0
/* 802AA274 002A5ED4 38 00 00 01 */ li r0, 1
/* 802AA278 002A5ED8 B0 01 04 12 */ sth r0, 0x412(r1)
/* 802AA27C 002A5EDC 39 80 00 15 */ li r12, 0x15
/* 802AA280 002A5EE0 81 21 04 00 */ lwz r9, 0x400(r1)
/* 802AA284 002A5EE4 99 61 03 FC */ stb r11, 0x3fc(r1)
/* 802AA288 002A5EE8 81 01 04 04 */ lwz r8, 0x404(r1)
/* 802AA28C 002A5EEC 81 41 03 FC */ lwz r10, 0x3fc(r1)
/* 802AA290 002A5EF0 80 E1 04 08 */ lwz r7, 0x408(r1)
/* 802AA294 002A5EF4 80 C1 04 0C */ lwz r6, 0x40c(r1)
/* 802AA298 002A5EF8 80 A1 04 10 */ lwz r5, 0x410(r1)
/* 802AA29C 002A5EFC 80 81 04 14 */ lwz r4, 0x414(r1)
/* 802AA2A0 002A5F00 80 61 04 18 */ lwz r3, 0x418(r1)
/* 802AA2A4 002A5F04 80 01 04 1C */ lwz r0, 0x41c(r1)
/* 802AA2A8 002A5F08 91 81 03 F8 */ stw r12, 0x3f8(r1)
/* 802AA2AC 002A5F0C 93 81 04 24 */ stw r28, 0x424(r1)
/* 802AA2B0 002A5F10 91 61 04 20 */ stw r11, 0x420(r1)
/* 802AA2B4 002A5F14 91 81 04 28 */ stw r12, 0x428(r1)
/* 802AA2B8 002A5F18 91 41 04 2C */ stw r10, 0x42c(r1)
/* 802AA2BC 002A5F1C 91 21 04 30 */ stw r9, 0x430(r1)
/* 802AA2C0 002A5F20 91 01 04 34 */ stw r8, 0x434(r1)
/* 802AA2C4 002A5F24 90 E1 04 38 */ stw r7, 0x438(r1)
/* 802AA2C8 002A5F28 90 C1 04 3C */ stw r6, 0x43c(r1)
/* 802AA2CC 002A5F2C 90 A1 04 40 */ stw r5, 0x440(r1)
/* 802AA2D0 002A5F30 90 81 04 44 */ stw r4, 0x444(r1)
/* 802AA2D4 002A5F34 90 61 04 48 */ stw r3, 0x448(r1)
/* 802AA2D8 002A5F38 90 01 04 4C */ stw r0, 0x44c(r1)
/* 802AA2DC 002A5F3C 91 61 04 50 */ stw r11, 0x450(r1)
/* 802AA2E0 002A5F40 93 81 04 54 */ stw r28, 0x454(r1)
/* 802AA2E4 002A5F44 4B FC 44 79 */ bl OSDisableInterrupts
/* 802AA2E8 002A5F48 7C 7E 1B 78 */ mr r30, r3
/* 802AA2EC 002A5F4C 4B FC 44 71 */ bl OSDisableInterrupts
/* 802AA2F0 002A5F50 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA2F4 002A5F54 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA2F8 002A5F58 7C 04 00 50 */ subf r0, r4, r0
/* 802AA2FC 002A5F5C 7C 1B 07 75 */ extsb. r27, r0
/* 802AA300 002A5F60 40 80 00 10 */ bge lbl_802AA310
/* 802AA304 002A5F64 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA308 002A5F68 7C 1B 02 14 */ add r0, r27, r0
/* 802AA30C 002A5F6C 7C 1B 07 74 */ extsb r27, r0
lbl_802AA310:
/* 802AA310 002A5F70 4B FC 44 75 */ bl OSRestoreInterrupts
/* 802AA314 002A5F74 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA318 002A5F78 38 03 FF FF */ addi r0, r3, -1
/* 802AA31C 002A5F7C 7C 00 D8 40 */ cmplw r0, r27
/* 802AA320 002A5F80 40 82 00 10 */ bne lbl_802AA330
/* 802AA324 002A5F84 7F C3 F3 78 */ mr r3, r30
/* 802AA328 002A5F88 4B FC 44 5D */ bl OSRestoreInterrupts
/* 802AA32C 002A5F8C 48 00 00 78 */ b lbl_802AA3A4
lbl_802AA330:
/* 802AA330 002A5F90 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA334 002A5F94 38 80 00 00 */ li r4, 0
/* 802AA338 002A5F98 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA33C 002A5F9C 38 A0 00 30 */ li r5, 0x30
/* 802AA340 002A5FA0 7C 00 07 74 */ extsb r0, r0
/* 802AA344 002A5FA4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA348 002A5FA8 7C 63 02 14 */ add r3, r3, r0
/* 802AA34C 002A5FAC 4B D5 9D B9 */ bl memset
/* 802AA350 002A5FB0 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA354 002A5FB4 38 81 04 28 */ addi r4, r1, 0x428
/* 802AA358 002A5FB8 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA35C 002A5FBC 38 A0 00 30 */ li r5, 0x30
/* 802AA360 002A5FC0 7C 00 07 74 */ extsb r0, r0
/* 802AA364 002A5FC4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA368 002A5FC8 7C 63 02 14 */ add r3, r3, r0
/* 802AA36C 002A5FCC 4B D5 9C 95 */ bl memcpy
/* 802AA370 002A5FD0 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA374 002A5FD4 7F C3 F3 78 */ mr r3, r30
/* 802AA378 002A5FD8 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA37C 002A5FDC 7C 06 07 74 */ extsb r6, r0
/* 802AA380 002A5FE0 38 84 FF FF */ addi r4, r4, -1
/* 802AA384 002A5FE4 7C A4 30 50 */ subf r5, r4, r6
/* 802AA388 002A5FE8 38 06 00 01 */ addi r0, r6, 1
/* 802AA38C 002A5FEC 7C 86 20 50 */ subf r4, r6, r4
/* 802AA390 002A5FF0 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA394 002A5FF4 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA398 002A5FF8 7C 00 20 78 */ andc r0, r0, r4
/* 802AA39C 002A5FFC 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA3A0 002A6000 4B FC 43 E5 */ bl OSRestoreInterrupts
lbl_802AA3A4:
/* 802AA3A4 002A6004 7F A3 EB 78 */ mr r3, r29
/* 802AA3A8 002A6008 4B FC 43 DD */ bl OSRestoreInterrupts
/* 802AA3AC 002A600C 38 60 00 00 */ li r3, 0
/* 802AA3B0 002A6010 48 00 0E 68 */ b lbl_802AB218
lbl_802AA3B4:
/* 802AA3B4 002A6014 7F A3 EB 78 */ mr r3, r29
/* 802AA3B8 002A6018 3B 40 FF FE */ li r26, -2
/* 802AA3BC 002A601C 4B FC 43 C9 */ bl OSRestoreInterrupts
/* 802AA3C0 002A6020 48 00 0E 38 */ b lbl_802AB1F8
lbl_802AA3C4:
/* 802AA3C4 002A6024 2C 19 00 03 */ cmpwi r25, 3
/* 802AA3C8 002A6028 41 82 0B 40 */ beq lbl_802AAF08
/* 802AA3CC 002A602C 40 80 00 14 */ bge lbl_802AA3E0
/* 802AA3D0 002A6030 2C 19 00 01 */ cmpwi r25, 1
/* 802AA3D4 002A6034 41 82 00 1C */ beq lbl_802AA3F0
/* 802AA3D8 002A6038 40 80 09 DC */ bge lbl_802AADB4
/* 802AA3DC 002A603C 48 00 0E 1C */ b lbl_802AB1F8
lbl_802AA3E0:
/* 802AA3E0 002A6040 2C 19 00 05 */ cmpwi r25, 5
/* 802AA3E4 002A6044 41 82 00 0C */ beq lbl_802AA3F0
/* 802AA3E8 002A6048 40 80 0E 10 */ bge lbl_802AB1F8
/* 802AA3EC 002A604C 48 00 0C 70 */ b lbl_802AB05C
lbl_802AA3F0:
/* 802AA3F0 002A6050 4B FC 43 6D */ bl OSDisableInterrupts
/* 802AA3F4 002A6054 7C 7D 1B 78 */ mr r29, r3
/* 802AA3F8 002A6058 4B FC 43 65 */ bl OSDisableInterrupts
/* 802AA3FC 002A605C 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA400 002A6060 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA404 002A6064 7C 04 00 50 */ subf r0, r4, r0
/* 802AA408 002A6068 7C 1E 07 75 */ extsb. r30, r0
/* 802AA40C 002A606C 40 80 00 10 */ bge lbl_802AA41C
/* 802AA410 002A6070 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA414 002A6074 7C 1E 02 14 */ add r0, r30, r0
/* 802AA418 002A6078 7C 1E 07 74 */ extsb r30, r0
lbl_802AA41C:
/* 802AA41C 002A607C 4B FC 43 69 */ bl OSRestoreInterrupts
/* 802AA420 002A6080 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA424 002A6084 38 9E 00 07 */ addi r4, r30, 7
/* 802AA428 002A6088 38 03 FF FF */ addi r0, r3, -1
/* 802AA42C 002A608C 7C 04 00 40 */ cmplw r4, r0
/* 802AA430 002A6090 41 81 09 74 */ bgt lbl_802AADA4
/* 802AA434 002A6094 38 60 00 01 */ li r3, 1
/* 802AA438 002A6098 38 00 00 04 */ li r0, 4
/* 802AA43C 002A609C B0 61 03 B2 */ sth r3, 0x3b2(r1)
/* 802AA440 002A60A0 3B 60 00 14 */ li r27, 0x14
/* 802AA444 002A60A4 39 80 00 00 */ li r12, 0
/* 802AA448 002A60A8 81 41 03 A0 */ lwz r10, 0x3a0(r1)
/* 802AA44C 002A60AC 98 01 03 9C */ stb r0, 0x39c(r1)
/* 802AA450 002A60B0 81 21 03 A4 */ lwz r9, 0x3a4(r1)
/* 802AA454 002A60B4 81 61 03 9C */ lwz r11, 0x39c(r1)
/* 802AA458 002A60B8 81 01 03 A8 */ lwz r8, 0x3a8(r1)
/* 802AA45C 002A60BC 80 E1 03 AC */ lwz r7, 0x3ac(r1)
/* 802AA460 002A60C0 80 C1 03 B0 */ lwz r6, 0x3b0(r1)
/* 802AA464 002A60C4 80 A1 03 B4 */ lwz r5, 0x3b4(r1)
/* 802AA468 002A60C8 80 81 03 B8 */ lwz r4, 0x3b8(r1)
/* 802AA46C 002A60CC 80 61 03 BC */ lwz r3, 0x3bc(r1)
/* 802AA470 002A60D0 80 01 03 C0 */ lwz r0, 0x3c0(r1)
/* 802AA474 002A60D4 93 61 03 98 */ stw r27, 0x398(r1)
/* 802AA478 002A60D8 91 81 03 C4 */ stw r12, 0x3c4(r1)
/* 802AA47C 002A60DC 93 61 03 C8 */ stw r27, 0x3c8(r1)
/* 802AA480 002A60E0 91 61 03 CC */ stw r11, 0x3cc(r1)
/* 802AA484 002A60E4 91 41 03 D0 */ stw r10, 0x3d0(r1)
/* 802AA488 002A60E8 91 21 03 D4 */ stw r9, 0x3d4(r1)
/* 802AA48C 002A60EC 91 01 03 D8 */ stw r8, 0x3d8(r1)
/* 802AA490 002A60F0 90 E1 03 DC */ stw r7, 0x3dc(r1)
/* 802AA494 002A60F4 90 C1 03 E0 */ stw r6, 0x3e0(r1)
/* 802AA498 002A60F8 90 A1 03 E4 */ stw r5, 0x3e4(r1)
/* 802AA49C 002A60FC 90 81 03 E8 */ stw r4, 0x3e8(r1)
/* 802AA4A0 002A6100 90 61 03 EC */ stw r3, 0x3ec(r1)
/* 802AA4A4 002A6104 90 01 03 F0 */ stw r0, 0x3f0(r1)
/* 802AA4A8 002A6108 91 81 03 F4 */ stw r12, 0x3f4(r1)
/* 802AA4AC 002A610C 4B FC 42 B1 */ bl OSDisableInterrupts
/* 802AA4B0 002A6110 7C 7E 1B 78 */ mr r30, r3
/* 802AA4B4 002A6114 4B FC 42 A9 */ bl OSDisableInterrupts
/* 802AA4B8 002A6118 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA4BC 002A611C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA4C0 002A6120 7C 04 00 50 */ subf r0, r4, r0
/* 802AA4C4 002A6124 7C 1B 07 75 */ extsb. r27, r0
/* 802AA4C8 002A6128 40 80 00 10 */ bge lbl_802AA4D8
/* 802AA4CC 002A612C 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA4D0 002A6130 7C 1B 02 14 */ add r0, r27, r0
/* 802AA4D4 002A6134 7C 1B 07 74 */ extsb r27, r0
lbl_802AA4D8:
/* 802AA4D8 002A6138 4B FC 42 AD */ bl OSRestoreInterrupts
/* 802AA4DC 002A613C 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA4E0 002A6140 38 03 FF FF */ addi r0, r3, -1
/* 802AA4E4 002A6144 7C 00 D8 40 */ cmplw r0, r27
/* 802AA4E8 002A6148 40 82 00 10 */ bne lbl_802AA4F8
/* 802AA4EC 002A614C 7F C3 F3 78 */ mr r3, r30
/* 802AA4F0 002A6150 4B FC 42 95 */ bl OSRestoreInterrupts
/* 802AA4F4 002A6154 48 00 00 78 */ b lbl_802AA56C
lbl_802AA4F8:
/* 802AA4F8 002A6158 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA4FC 002A615C 38 80 00 00 */ li r4, 0
/* 802AA500 002A6160 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA504 002A6164 38 A0 00 30 */ li r5, 0x30
/* 802AA508 002A6168 7C 00 07 74 */ extsb r0, r0
/* 802AA50C 002A616C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA510 002A6170 7C 63 02 14 */ add r3, r3, r0
/* 802AA514 002A6174 4B D5 9B F1 */ bl memset
/* 802AA518 002A6178 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA51C 002A617C 38 81 03 C8 */ addi r4, r1, 0x3c8
/* 802AA520 002A6180 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA524 002A6184 38 A0 00 30 */ li r5, 0x30
/* 802AA528 002A6188 7C 00 07 74 */ extsb r0, r0
/* 802AA52C 002A618C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA530 002A6190 7C 63 02 14 */ add r3, r3, r0
/* 802AA534 002A6194 4B D5 9A CD */ bl memcpy
/* 802AA538 002A6198 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA53C 002A619C 7F C3 F3 78 */ mr r3, r30
/* 802AA540 002A61A0 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA544 002A61A4 7C 06 07 74 */ extsb r6, r0
/* 802AA548 002A61A8 38 84 FF FF */ addi r4, r4, -1
/* 802AA54C 002A61AC 7C A4 30 50 */ subf r5, r4, r6
/* 802AA550 002A61B0 38 06 00 01 */ addi r0, r6, 1
/* 802AA554 002A61B4 7C 86 20 50 */ subf r4, r6, r4
/* 802AA558 002A61B8 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA55C 002A61BC 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA560 002A61C0 7C 00 20 78 */ andc r0, r0, r4
/* 802AA564 002A61C4 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA568 002A61C8 4B FC 42 1D */ bl OSRestoreInterrupts
lbl_802AA56C:
/* 802AA56C 002A61CC 38 60 00 01 */ li r3, 1
/* 802AA570 002A61D0 38 00 00 04 */ li r0, 4
/* 802AA574 002A61D4 B0 61 03 52 */ sth r3, 0x352(r1)
/* 802AA578 002A61D8 3B 60 00 19 */ li r27, 0x19
/* 802AA57C 002A61DC 39 80 00 00 */ li r12, 0
/* 802AA580 002A61E0 81 41 03 40 */ lwz r10, 0x340(r1)
/* 802AA584 002A61E4 98 01 03 3C */ stb r0, 0x33c(r1)
/* 802AA588 002A61E8 81 21 03 44 */ lwz r9, 0x344(r1)
/* 802AA58C 002A61EC 81 61 03 3C */ lwz r11, 0x33c(r1)
/* 802AA590 002A61F0 81 01 03 48 */ lwz r8, 0x348(r1)
/* 802AA594 002A61F4 80 E1 03 4C */ lwz r7, 0x34c(r1)
/* 802AA598 002A61F8 80 C1 03 50 */ lwz r6, 0x350(r1)
/* 802AA59C 002A61FC 80 A1 03 54 */ lwz r5, 0x354(r1)
/* 802AA5A0 002A6200 80 81 03 58 */ lwz r4, 0x358(r1)
/* 802AA5A4 002A6204 80 61 03 5C */ lwz r3, 0x35c(r1)
/* 802AA5A8 002A6208 80 01 03 60 */ lwz r0, 0x360(r1)
/* 802AA5AC 002A620C 93 61 03 38 */ stw r27, 0x338(r1)
/* 802AA5B0 002A6210 91 81 03 64 */ stw r12, 0x364(r1)
/* 802AA5B4 002A6214 93 61 03 68 */ stw r27, 0x368(r1)
/* 802AA5B8 002A6218 91 61 03 6C */ stw r11, 0x36c(r1)
/* 802AA5BC 002A621C 91 41 03 70 */ stw r10, 0x370(r1)
/* 802AA5C0 002A6220 91 21 03 74 */ stw r9, 0x374(r1)
/* 802AA5C4 002A6224 91 01 03 78 */ stw r8, 0x378(r1)
/* 802AA5C8 002A6228 90 E1 03 7C */ stw r7, 0x37c(r1)
/* 802AA5CC 002A622C 90 C1 03 80 */ stw r6, 0x380(r1)
/* 802AA5D0 002A6230 90 A1 03 84 */ stw r5, 0x384(r1)
/* 802AA5D4 002A6234 90 81 03 88 */ stw r4, 0x388(r1)
/* 802AA5D8 002A6238 90 61 03 8C */ stw r3, 0x38c(r1)
/* 802AA5DC 002A623C 90 01 03 90 */ stw r0, 0x390(r1)
/* 802AA5E0 002A6240 91 81 03 94 */ stw r12, 0x394(r1)
/* 802AA5E4 002A6244 4B FC 41 79 */ bl OSDisableInterrupts
/* 802AA5E8 002A6248 7C 7E 1B 78 */ mr r30, r3
/* 802AA5EC 002A624C 4B FC 41 71 */ bl OSDisableInterrupts
/* 802AA5F0 002A6250 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA5F4 002A6254 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA5F8 002A6258 7C 04 00 50 */ subf r0, r4, r0
/* 802AA5FC 002A625C 7C 1B 07 75 */ extsb. r27, r0
/* 802AA600 002A6260 40 80 00 10 */ bge lbl_802AA610
/* 802AA604 002A6264 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA608 002A6268 7C 1B 02 14 */ add r0, r27, r0
/* 802AA60C 002A626C 7C 1B 07 74 */ extsb r27, r0
lbl_802AA610:
/* 802AA610 002A6270 4B FC 41 75 */ bl OSRestoreInterrupts
/* 802AA614 002A6274 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA618 002A6278 38 03 FF FF */ addi r0, r3, -1
/* 802AA61C 002A627C 7C 00 D8 40 */ cmplw r0, r27
/* 802AA620 002A6280 40 82 00 10 */ bne lbl_802AA630
/* 802AA624 002A6284 7F C3 F3 78 */ mr r3, r30
/* 802AA628 002A6288 4B FC 41 5D */ bl OSRestoreInterrupts
/* 802AA62C 002A628C 48 00 00 78 */ b lbl_802AA6A4
lbl_802AA630:
/* 802AA630 002A6290 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA634 002A6294 38 80 00 00 */ li r4, 0
/* 802AA638 002A6298 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA63C 002A629C 38 A0 00 30 */ li r5, 0x30
/* 802AA640 002A62A0 7C 00 07 74 */ extsb r0, r0
/* 802AA644 002A62A4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA648 002A62A8 7C 63 02 14 */ add r3, r3, r0
/* 802AA64C 002A62AC 4B D5 9A B9 */ bl memset
/* 802AA650 002A62B0 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA654 002A62B4 38 81 03 68 */ addi r4, r1, 0x368
/* 802AA658 002A62B8 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA65C 002A62BC 38 A0 00 30 */ li r5, 0x30
/* 802AA660 002A62C0 7C 00 07 74 */ extsb r0, r0
/* 802AA664 002A62C4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA668 002A62C8 7C 63 02 14 */ add r3, r3, r0
/* 802AA66C 002A62CC 4B D5 99 95 */ bl memcpy
/* 802AA670 002A62D0 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA674 002A62D4 7F C3 F3 78 */ mr r3, r30
/* 802AA678 002A62D8 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA67C 002A62DC 7C 06 07 74 */ extsb r6, r0
/* 802AA680 002A62E0 38 84 FF FF */ addi r4, r4, -1
/* 802AA684 002A62E4 7C A4 30 50 */ subf r5, r4, r6
/* 802AA688 002A62E8 38 06 00 01 */ addi r0, r6, 1
/* 802AA68C 002A62EC 7C 86 20 50 */ subf r4, r6, r4
/* 802AA690 002A62F0 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA694 002A62F4 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA698 002A62F8 7C 00 20 78 */ andc r0, r0, r4
/* 802AA69C 002A62FC 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA6A0 002A6300 4B FC 40 E5 */ bl OSRestoreInterrupts
lbl_802AA6A4:
/* 802AA6A4 002A6304 3C 60 04 A2 */ lis r3, 0x04A20009@ha
/* 802AA6A8 002A6308 39 20 00 01 */ li r9, 1
/* 802AA6AC 002A630C 39 03 00 09 */ addi r8, r3, 0x04A20009@l
/* 802AA6B0 002A6310 38 E0 00 16 */ li r7, 0x16
/* 802AA6B4 002A6314 38 C0 00 15 */ li r6, 0x15
/* 802AA6B8 002A6318 38 00 00 00 */ li r0, 0
/* 802AA6BC 002A631C 99 21 00 0E */ stb r9, 0xe(r1)
/* 802AA6C0 002A6320 38 61 03 0C */ addi r3, r1, 0x30c
/* 802AA6C4 002A6324 38 81 00 20 */ addi r4, r1, 0x20
/* 802AA6C8 002A6328 38 A0 00 04 */ li r5, 4
/* 802AA6CC 002A632C 91 01 00 20 */ stw r8, 0x20(r1)
/* 802AA6D0 002A6330 99 21 00 0D */ stb r9, 0xd(r1)
/* 802AA6D4 002A6334 90 E1 03 08 */ stw r7, 0x308(r1)
/* 802AA6D8 002A6338 B0 C1 03 22 */ sth r6, 0x322(r1)
/* 802AA6DC 002A633C 90 01 03 34 */ stw r0, 0x334(r1)
/* 802AA6E0 002A6340 4B D5 99 21 */ bl memcpy
/* 802AA6E4 002A6344 38 61 03 10 */ addi r3, r1, 0x310
/* 802AA6E8 002A6348 38 81 00 0D */ addi r4, r1, 0xd
/* 802AA6EC 002A634C 38 A0 00 01 */ li r5, 1
/* 802AA6F0 002A6350 4B D5 99 11 */ bl memcpy
/* 802AA6F4 002A6354 38 61 03 11 */ addi r3, r1, 0x311
/* 802AA6F8 002A6358 38 81 00 0E */ addi r4, r1, 0xe
/* 802AA6FC 002A635C 38 A0 00 01 */ li r5, 1
/* 802AA700 002A6360 4B D5 99 01 */ bl memcpy
/* 802AA704 002A6364 83 61 03 08 */ lwz r27, 0x308(r1)
/* 802AA708 002A6368 81 81 03 0C */ lwz r12, 0x30c(r1)
/* 802AA70C 002A636C 81 61 03 10 */ lwz r11, 0x310(r1)
/* 802AA710 002A6370 81 41 03 14 */ lwz r10, 0x314(r1)
/* 802AA714 002A6374 81 21 03 18 */ lwz r9, 0x318(r1)
/* 802AA718 002A6378 81 01 03 1C */ lwz r8, 0x31c(r1)
/* 802AA71C 002A637C 80 E1 03 20 */ lwz r7, 0x320(r1)
/* 802AA720 002A6380 80 C1 03 24 */ lwz r6, 0x324(r1)
/* 802AA724 002A6384 80 A1 03 28 */ lwz r5, 0x328(r1)
/* 802AA728 002A6388 80 81 03 2C */ lwz r4, 0x32c(r1)
/* 802AA72C 002A638C 80 61 03 30 */ lwz r3, 0x330(r1)
/* 802AA730 002A6390 80 01 03 34 */ lwz r0, 0x334(r1)
/* 802AA734 002A6394 93 61 02 D8 */ stw r27, 0x2d8(r1)
/* 802AA738 002A6398 91 81 02 DC */ stw r12, 0x2dc(r1)
/* 802AA73C 002A639C 91 61 02 E0 */ stw r11, 0x2e0(r1)
/* 802AA740 002A63A0 91 41 02 E4 */ stw r10, 0x2e4(r1)
/* 802AA744 002A63A4 91 21 02 E8 */ stw r9, 0x2e8(r1)
/* 802AA748 002A63A8 91 01 02 EC */ stw r8, 0x2ec(r1)
/* 802AA74C 002A63AC 90 E1 02 F0 */ stw r7, 0x2f0(r1)
/* 802AA750 002A63B0 90 C1 02 F4 */ stw r6, 0x2f4(r1)
/* 802AA754 002A63B4 90 A1 02 F8 */ stw r5, 0x2f8(r1)
/* 802AA758 002A63B8 90 81 02 FC */ stw r4, 0x2fc(r1)
/* 802AA75C 002A63BC 90 61 03 00 */ stw r3, 0x300(r1)
/* 802AA760 002A63C0 90 01 03 04 */ stw r0, 0x304(r1)
/* 802AA764 002A63C4 4B FC 3F F9 */ bl OSDisableInterrupts
/* 802AA768 002A63C8 7C 7E 1B 78 */ mr r30, r3
/* 802AA76C 002A63CC 4B FC 3F F1 */ bl OSDisableInterrupts
/* 802AA770 002A63D0 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA774 002A63D4 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA778 002A63D8 7C 04 00 50 */ subf r0, r4, r0
/* 802AA77C 002A63DC 7C 1B 07 75 */ extsb. r27, r0
/* 802AA780 002A63E0 40 80 00 10 */ bge lbl_802AA790
/* 802AA784 002A63E4 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA788 002A63E8 7C 1B 02 14 */ add r0, r27, r0
/* 802AA78C 002A63EC 7C 1B 07 74 */ extsb r27, r0
lbl_802AA790:
/* 802AA790 002A63F0 4B FC 3F F5 */ bl OSRestoreInterrupts
/* 802AA794 002A63F4 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA798 002A63F8 38 03 FF FF */ addi r0, r3, -1
/* 802AA79C 002A63FC 7C 00 D8 40 */ cmplw r0, r27
/* 802AA7A0 002A6400 40 82 00 10 */ bne lbl_802AA7B0
/* 802AA7A4 002A6404 7F C3 F3 78 */ mr r3, r30
/* 802AA7A8 002A6408 4B FC 3F DD */ bl OSRestoreInterrupts
/* 802AA7AC 002A640C 48 00 00 78 */ b lbl_802AA824
lbl_802AA7B0:
/* 802AA7B0 002A6410 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA7B4 002A6414 38 80 00 00 */ li r4, 0
/* 802AA7B8 002A6418 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA7BC 002A641C 38 A0 00 30 */ li r5, 0x30
/* 802AA7C0 002A6420 7C 00 07 74 */ extsb r0, r0
/* 802AA7C4 002A6424 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA7C8 002A6428 7C 63 02 14 */ add r3, r3, r0
/* 802AA7CC 002A642C 4B D5 99 39 */ bl memset
/* 802AA7D0 002A6430 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA7D4 002A6434 38 81 02 D8 */ addi r4, r1, 0x2d8
/* 802AA7D8 002A6438 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA7DC 002A643C 38 A0 00 30 */ li r5, 0x30
/* 802AA7E0 002A6440 7C 00 07 74 */ extsb r0, r0
/* 802AA7E4 002A6444 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA7E8 002A6448 7C 63 02 14 */ add r3, r3, r0
/* 802AA7EC 002A644C 4B D5 98 15 */ bl memcpy
/* 802AA7F0 002A6450 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA7F4 002A6454 7F C3 F3 78 */ mr r3, r30
/* 802AA7F8 002A6458 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA7FC 002A645C 7C 06 07 74 */ extsb r6, r0
/* 802AA800 002A6460 38 84 FF FF */ addi r4, r4, -1
/* 802AA804 002A6464 7C A4 30 50 */ subf r5, r4, r6
/* 802AA808 002A6468 38 06 00 01 */ addi r0, r6, 1
/* 802AA80C 002A646C 7C 86 20 50 */ subf r4, r6, r4
/* 802AA810 002A6470 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA814 002A6474 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA818 002A6478 7C 00 20 78 */ andc r0, r0, r4
/* 802AA81C 002A647C 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA820 002A6480 4B FC 3F 65 */ bl OSRestoreInterrupts
lbl_802AA824:
/* 802AA824 002A6484 3C 60 04 A2 */ lis r3, 0x04A20001@ha
/* 802AA828 002A6488 38 80 00 80 */ li r4, 0x80
/* 802AA82C 002A648C 38 A3 00 01 */ addi r5, r3, 0x04A20001@l
/* 802AA830 002A6490 39 00 00 01 */ li r8, 1
/* 802AA834 002A6494 38 E0 00 16 */ li r7, 0x16
/* 802AA838 002A6498 38 C0 00 15 */ li r6, 0x15
/* 802AA83C 002A649C 38 00 00 00 */ li r0, 0
/* 802AA840 002A64A0 98 81 00 0C */ stb r4, 0xc(r1)
/* 802AA844 002A64A4 38 61 02 AC */ addi r3, r1, 0x2ac
/* 802AA848 002A64A8 38 81 00 1C */ addi r4, r1, 0x1c
/* 802AA84C 002A64AC 90 A1 00 1C */ stw r5, 0x1c(r1)
/* 802AA850 002A64B0 38 A0 00 04 */ li r5, 4
/* 802AA854 002A64B4 99 01 00 0B */ stb r8, 0xb(r1)
/* 802AA858 002A64B8 90 E1 02 A8 */ stw r7, 0x2a8(r1)
/* 802AA85C 002A64BC B0 C1 02 C2 */ sth r6, 0x2c2(r1)
/* 802AA860 002A64C0 90 01 02 D4 */ stw r0, 0x2d4(r1)
/* 802AA864 002A64C4 4B D5 97 9D */ bl memcpy
/* 802AA868 002A64C8 38 61 02 B0 */ addi r3, r1, 0x2b0
/* 802AA86C 002A64CC 38 81 00 0B */ addi r4, r1, 0xb
/* 802AA870 002A64D0 38 A0 00 01 */ li r5, 1
/* 802AA874 002A64D4 4B D5 97 8D */ bl memcpy
/* 802AA878 002A64D8 38 61 02 B1 */ addi r3, r1, 0x2b1
/* 802AA87C 002A64DC 38 81 00 0C */ addi r4, r1, 0xc
/* 802AA880 002A64E0 38 A0 00 01 */ li r5, 1
/* 802AA884 002A64E4 4B D5 97 7D */ bl memcpy
/* 802AA888 002A64E8 83 61 02 A8 */ lwz r27, 0x2a8(r1)
/* 802AA88C 002A64EC 81 81 02 AC */ lwz r12, 0x2ac(r1)
/* 802AA890 002A64F0 81 61 02 B0 */ lwz r11, 0x2b0(r1)
/* 802AA894 002A64F4 81 41 02 B4 */ lwz r10, 0x2b4(r1)
/* 802AA898 002A64F8 81 21 02 B8 */ lwz r9, 0x2b8(r1)
/* 802AA89C 002A64FC 81 01 02 BC */ lwz r8, 0x2bc(r1)
/* 802AA8A0 002A6500 80 E1 02 C0 */ lwz r7, 0x2c0(r1)
/* 802AA8A4 002A6504 80 C1 02 C4 */ lwz r6, 0x2c4(r1)
/* 802AA8A8 002A6508 80 A1 02 C8 */ lwz r5, 0x2c8(r1)
/* 802AA8AC 002A650C 80 81 02 CC */ lwz r4, 0x2cc(r1)
/* 802AA8B0 002A6510 80 61 02 D0 */ lwz r3, 0x2d0(r1)
/* 802AA8B4 002A6514 80 01 02 D4 */ lwz r0, 0x2d4(r1)
/* 802AA8B8 002A6518 93 61 02 78 */ stw r27, 0x278(r1)
/* 802AA8BC 002A651C 91 81 02 7C */ stw r12, 0x27c(r1)
/* 802AA8C0 002A6520 91 61 02 80 */ stw r11, 0x280(r1)
/* 802AA8C4 002A6524 91 41 02 84 */ stw r10, 0x284(r1)
/* 802AA8C8 002A6528 91 21 02 88 */ stw r9, 0x288(r1)
/* 802AA8CC 002A652C 91 01 02 8C */ stw r8, 0x28c(r1)
/* 802AA8D0 002A6530 90 E1 02 90 */ stw r7, 0x290(r1)
/* 802AA8D4 002A6534 90 C1 02 94 */ stw r6, 0x294(r1)
/* 802AA8D8 002A6538 90 A1 02 98 */ stw r5, 0x298(r1)
/* 802AA8DC 002A653C 90 81 02 9C */ stw r4, 0x29c(r1)
/* 802AA8E0 002A6540 90 61 02 A0 */ stw r3, 0x2a0(r1)
/* 802AA8E4 002A6544 90 01 02 A4 */ stw r0, 0x2a4(r1)
/* 802AA8E8 002A6548 4B FC 3E 75 */ bl OSDisableInterrupts
/* 802AA8EC 002A654C 7C 7E 1B 78 */ mr r30, r3
/* 802AA8F0 002A6550 4B FC 3E 6D */ bl OSDisableInterrupts
/* 802AA8F4 002A6554 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AA8F8 002A6558 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA8FC 002A655C 7C 04 00 50 */ subf r0, r4, r0
/* 802AA900 002A6560 7C 1B 07 75 */ extsb. r27, r0
/* 802AA904 002A6564 40 80 00 10 */ bge lbl_802AA914
/* 802AA908 002A6568 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AA90C 002A656C 7C 1B 02 14 */ add r0, r27, r0
/* 802AA910 002A6570 7C 1B 07 74 */ extsb r27, r0
lbl_802AA914:
/* 802AA914 002A6574 4B FC 3E 71 */ bl OSRestoreInterrupts
/* 802AA918 002A6578 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AA91C 002A657C 38 03 FF FF */ addi r0, r3, -1
/* 802AA920 002A6580 7C 00 D8 40 */ cmplw r0, r27
/* 802AA924 002A6584 40 82 00 10 */ bne lbl_802AA934
/* 802AA928 002A6588 7F C3 F3 78 */ mr r3, r30
/* 802AA92C 002A658C 4B FC 3E 59 */ bl OSRestoreInterrupts
/* 802AA930 002A6590 48 00 00 78 */ b lbl_802AA9A8
lbl_802AA934:
/* 802AA934 002A6594 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA938 002A6598 38 80 00 00 */ li r4, 0
/* 802AA93C 002A659C 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA940 002A65A0 38 A0 00 30 */ li r5, 0x30
/* 802AA944 002A65A4 7C 00 07 74 */ extsb r0, r0
/* 802AA948 002A65A8 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA94C 002A65AC 7C 63 02 14 */ add r3, r3, r0
/* 802AA950 002A65B0 4B D5 97 B5 */ bl memset
/* 802AA954 002A65B4 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA958 002A65B8 38 81 02 78 */ addi r4, r1, 0x278
/* 802AA95C 002A65BC 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AA960 002A65C0 38 A0 00 30 */ li r5, 0x30
/* 802AA964 002A65C4 7C 00 07 74 */ extsb r0, r0
/* 802AA968 002A65C8 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AA96C 002A65CC 7C 63 02 14 */ add r3, r3, r0
/* 802AA970 002A65D0 4B D5 96 91 */ bl memcpy
/* 802AA974 002A65D4 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AA978 002A65D8 7F C3 F3 78 */ mr r3, r30
/* 802AA97C 002A65DC 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AA980 002A65E0 7C 06 07 74 */ extsb r6, r0
/* 802AA984 002A65E4 38 84 FF FF */ addi r4, r4, -1
/* 802AA988 002A65E8 7C A4 30 50 */ subf r5, r4, r6
/* 802AA98C 002A65EC 38 06 00 01 */ addi r0, r6, 1
/* 802AA990 002A65F0 7C 86 20 50 */ subf r4, r6, r4
/* 802AA994 002A65F4 7C A4 20 F8 */ nor r4, r5, r4
/* 802AA998 002A65F8 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AA99C 002A65FC 7C 00 20 78 */ andc r0, r0, r4
/* 802AA9A0 002A6600 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AA9A4 002A6604 4B FC 3D E1 */ bl OSRestoreInterrupts
lbl_802AA9A8:
/* 802AA9A8 002A6608 88 8D AE 5A */ lbz r4, lbl_8064011A-_SDA_BASE_(r13)
/* 802AA9AC 002A660C 3C 60 04 A2 */ lis r3, 0x04A20001@ha
/* 802AA9B0 002A6610 38 A3 00 01 */ addi r5, r3, 0x04A20001@l
/* 802AA9B4 002A6614 39 00 00 07 */ li r8, 7
/* 802AA9B8 002A6618 38 E0 00 16 */ li r7, 0x16
/* 802AA9BC 002A661C 38 C0 00 15 */ li r6, 0x15
/* 802AA9C0 002A6620 38 00 00 00 */ li r0, 0
/* 802AA9C4 002A6624 98 81 00 30 */ stb r4, 0x30(r1)
/* 802AA9C8 002A6628 38 61 02 1C */ addi r3, r1, 0x21c
/* 802AA9CC 002A662C 38 81 00 18 */ addi r4, r1, 0x18
/* 802AA9D0 002A6630 90 A1 00 18 */ stw r5, 0x18(r1)
/* 802AA9D4 002A6634 38 A0 00 04 */ li r5, 4
/* 802AA9D8 002A6638 99 01 00 0A */ stb r8, 0xa(r1)
/* 802AA9DC 002A663C 90 E1 02 18 */ stw r7, 0x218(r1)
/* 802AA9E0 002A6640 B0 C1 02 32 */ sth r6, 0x232(r1)
/* 802AA9E4 002A6644 90 01 02 44 */ stw r0, 0x244(r1)
/* 802AA9E8 002A6648 4B D5 96 19 */ bl memcpy
/* 802AA9EC 002A664C 38 61 02 20 */ addi r3, r1, 0x220
/* 802AA9F0 002A6650 38 81 00 0A */ addi r4, r1, 0xa
/* 802AA9F4 002A6654 38 A0 00 01 */ li r5, 1
/* 802AA9F8 002A6658 4B D5 96 09 */ bl memcpy
/* 802AA9FC 002A665C 38 61 02 21 */ addi r3, r1, 0x221
/* 802AAA00 002A6660 38 81 00 2C */ addi r4, r1, 0x2c
/* 802AAA04 002A6664 38 A0 00 07 */ li r5, 7
/* 802AAA08 002A6668 4B D5 95 F9 */ bl memcpy
/* 802AAA0C 002A666C 83 61 02 18 */ lwz r27, 0x218(r1)
/* 802AAA10 002A6670 81 81 02 1C */ lwz r12, 0x21c(r1)
/* 802AAA14 002A6674 81 61 02 20 */ lwz r11, 0x220(r1)
/* 802AAA18 002A6678 81 41 02 24 */ lwz r10, 0x224(r1)
/* 802AAA1C 002A667C 81 21 02 28 */ lwz r9, 0x228(r1)
/* 802AAA20 002A6680 81 01 02 2C */ lwz r8, 0x22c(r1)
/* 802AAA24 002A6684 80 E1 02 30 */ lwz r7, 0x230(r1)
/* 802AAA28 002A6688 80 C1 02 34 */ lwz r6, 0x234(r1)
/* 802AAA2C 002A668C 80 A1 02 38 */ lwz r5, 0x238(r1)
/* 802AAA30 002A6690 80 81 02 3C */ lwz r4, 0x23c(r1)
/* 802AAA34 002A6694 80 61 02 40 */ lwz r3, 0x240(r1)
/* 802AAA38 002A6698 80 01 02 44 */ lwz r0, 0x244(r1)
/* 802AAA3C 002A669C 93 61 02 48 */ stw r27, 0x248(r1)
/* 802AAA40 002A66A0 91 81 02 4C */ stw r12, 0x24c(r1)
/* 802AAA44 002A66A4 91 61 02 50 */ stw r11, 0x250(r1)
/* 802AAA48 002A66A8 91 41 02 54 */ stw r10, 0x254(r1)
/* 802AAA4C 002A66AC 91 21 02 58 */ stw r9, 0x258(r1)
/* 802AAA50 002A66B0 91 01 02 5C */ stw r8, 0x25c(r1)
/* 802AAA54 002A66B4 90 E1 02 60 */ stw r7, 0x260(r1)
/* 802AAA58 002A66B8 90 C1 02 64 */ stw r6, 0x264(r1)
/* 802AAA5C 002A66BC 90 A1 02 68 */ stw r5, 0x268(r1)
/* 802AAA60 002A66C0 90 81 02 6C */ stw r4, 0x26c(r1)
/* 802AAA64 002A66C4 90 61 02 70 */ stw r3, 0x270(r1)
/* 802AAA68 002A66C8 90 01 02 74 */ stw r0, 0x274(r1)
/* 802AAA6C 002A66CC 4B FC 3C F1 */ bl OSDisableInterrupts
/* 802AAA70 002A66D0 7C 7E 1B 78 */ mr r30, r3
/* 802AAA74 002A66D4 4B FC 3C E9 */ bl OSDisableInterrupts
/* 802AAA78 002A66D8 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AAA7C 002A66DC 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAA80 002A66E0 7C 04 00 50 */ subf r0, r4, r0
/* 802AAA84 002A66E4 7C 1B 07 75 */ extsb. r27, r0
/* 802AAA88 002A66E8 40 80 00 10 */ bge lbl_802AAA98
/* 802AAA8C 002A66EC 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AAA90 002A66F0 7C 1B 02 14 */ add r0, r27, r0
/* 802AAA94 002A66F4 7C 1B 07 74 */ extsb r27, r0
lbl_802AAA98:
/* 802AAA98 002A66F8 4B FC 3C ED */ bl OSRestoreInterrupts
/* 802AAA9C 002A66FC 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AAAA0 002A6700 38 03 FF FF */ addi r0, r3, -1
/* 802AAAA4 002A6704 7C 00 D8 40 */ cmplw r0, r27
/* 802AAAA8 002A6708 40 82 00 10 */ bne lbl_802AAAB8
/* 802AAAAC 002A670C 7F C3 F3 78 */ mr r3, r30
/* 802AAAB0 002A6710 4B FC 3C D5 */ bl OSRestoreInterrupts
/* 802AAAB4 002A6714 48 00 00 78 */ b lbl_802AAB2C
lbl_802AAAB8:
/* 802AAAB8 002A6718 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAABC 002A671C 38 80 00 00 */ li r4, 0
/* 802AAAC0 002A6720 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAAC4 002A6724 38 A0 00 30 */ li r5, 0x30
/* 802AAAC8 002A6728 7C 00 07 74 */ extsb r0, r0
/* 802AAACC 002A672C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAAD0 002A6730 7C 63 02 14 */ add r3, r3, r0
/* 802AAAD4 002A6734 4B D5 96 31 */ bl memset
/* 802AAAD8 002A6738 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAADC 002A673C 38 81 02 48 */ addi r4, r1, 0x248
/* 802AAAE0 002A6740 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAAE4 002A6744 38 A0 00 30 */ li r5, 0x30
/* 802AAAE8 002A6748 7C 00 07 74 */ extsb r0, r0
/* 802AAAEC 002A674C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAAF0 002A6750 7C 63 02 14 */ add r3, r3, r0
/* 802AAAF4 002A6754 4B D5 95 0D */ bl memcpy
/* 802AAAF8 002A6758 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAAFC 002A675C 7F C3 F3 78 */ mr r3, r30
/* 802AAB00 002A6760 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AAB04 002A6764 7C 06 07 74 */ extsb r6, r0
/* 802AAB08 002A6768 38 84 FF FF */ addi r4, r4, -1
/* 802AAB0C 002A676C 7C A4 30 50 */ subf r5, r4, r6
/* 802AAB10 002A6770 38 06 00 01 */ addi r0, r6, 1
/* 802AAB14 002A6774 7C 86 20 50 */ subf r4, r6, r4
/* 802AAB18 002A6778 7C A4 20 F8 */ nor r4, r5, r4
/* 802AAB1C 002A677C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AAB20 002A6780 7C 00 20 78 */ andc r0, r0, r4
/* 802AAB24 002A6784 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AAB28 002A6788 4B FC 3C 5D */ bl OSRestoreInterrupts
lbl_802AAB2C:
/* 802AAB2C 002A678C 39 80 00 00 */ li r12, 0
/* 802AAB30 002A6790 38 00 00 01 */ li r0, 1
/* 802AAB34 002A6794 B0 01 01 D2 */ sth r0, 0x1d2(r1)
/* 802AAB38 002A6798 3B 60 00 19 */ li r27, 0x19
/* 802AAB3C 002A679C 81 41 01 C0 */ lwz r10, 0x1c0(r1)
/* 802AAB40 002A67A0 99 81 01 BC */ stb r12, 0x1bc(r1)
/* 802AAB44 002A67A4 81 21 01 C4 */ lwz r9, 0x1c4(r1)
/* 802AAB48 002A67A8 81 61 01 BC */ lwz r11, 0x1bc(r1)
/* 802AAB4C 002A67AC 81 01 01 C8 */ lwz r8, 0x1c8(r1)
/* 802AAB50 002A67B0 80 E1 01 CC */ lwz r7, 0x1cc(r1)
/* 802AAB54 002A67B4 80 C1 01 D0 */ lwz r6, 0x1d0(r1)
/* 802AAB58 002A67B8 80 A1 01 D4 */ lwz r5, 0x1d4(r1)
/* 802AAB5C 002A67BC 80 81 01 D8 */ lwz r4, 0x1d8(r1)
/* 802AAB60 002A67C0 80 61 01 DC */ lwz r3, 0x1dc(r1)
/* 802AAB64 002A67C4 80 01 01 E0 */ lwz r0, 0x1e0(r1)
/* 802AAB68 002A67C8 93 61 01 B8 */ stw r27, 0x1b8(r1)
/* 802AAB6C 002A67CC 91 81 01 E4 */ stw r12, 0x1e4(r1)
/* 802AAB70 002A67D0 93 61 01 E8 */ stw r27, 0x1e8(r1)
/* 802AAB74 002A67D4 91 61 01 EC */ stw r11, 0x1ec(r1)
/* 802AAB78 002A67D8 91 41 01 F0 */ stw r10, 0x1f0(r1)
/* 802AAB7C 002A67DC 91 21 01 F4 */ stw r9, 0x1f4(r1)
/* 802AAB80 002A67E0 91 01 01 F8 */ stw r8, 0x1f8(r1)
/* 802AAB84 002A67E4 90 E1 01 FC */ stw r7, 0x1fc(r1)
/* 802AAB88 002A67E8 90 C1 02 00 */ stw r6, 0x200(r1)
/* 802AAB8C 002A67EC 90 A1 02 04 */ stw r5, 0x204(r1)
/* 802AAB90 002A67F0 90 81 02 08 */ stw r4, 0x208(r1)
/* 802AAB94 002A67F4 90 61 02 0C */ stw r3, 0x20c(r1)
/* 802AAB98 002A67F8 90 01 02 10 */ stw r0, 0x210(r1)
/* 802AAB9C 002A67FC 91 81 02 14 */ stw r12, 0x214(r1)
/* 802AABA0 002A6800 4B FC 3B BD */ bl OSDisableInterrupts
/* 802AABA4 002A6804 7C 7E 1B 78 */ mr r30, r3
/* 802AABA8 002A6808 4B FC 3B B5 */ bl OSDisableInterrupts
/* 802AABAC 002A680C 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AABB0 002A6810 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AABB4 002A6814 7C 04 00 50 */ subf r0, r4, r0
/* 802AABB8 002A6818 7C 1B 07 75 */ extsb. r27, r0
/* 802AABBC 002A681C 40 80 00 10 */ bge lbl_802AABCC
/* 802AABC0 002A6820 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AABC4 002A6824 7C 1B 02 14 */ add r0, r27, r0
/* 802AABC8 002A6828 7C 1B 07 74 */ extsb r27, r0
lbl_802AABCC:
/* 802AABCC 002A682C 4B FC 3B B9 */ bl OSRestoreInterrupts
/* 802AABD0 002A6830 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AABD4 002A6834 38 03 FF FF */ addi r0, r3, -1
/* 802AABD8 002A6838 7C 00 D8 40 */ cmplw r0, r27
/* 802AABDC 002A683C 40 82 00 10 */ bne lbl_802AABEC
/* 802AABE0 002A6840 7F C3 F3 78 */ mr r3, r30
/* 802AABE4 002A6844 4B FC 3B A1 */ bl OSRestoreInterrupts
/* 802AABE8 002A6848 48 00 00 78 */ b lbl_802AAC60
lbl_802AABEC:
/* 802AABEC 002A684C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AABF0 002A6850 38 80 00 00 */ li r4, 0
/* 802AABF4 002A6854 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AABF8 002A6858 38 A0 00 30 */ li r5, 0x30
/* 802AABFC 002A685C 7C 00 07 74 */ extsb r0, r0
/* 802AAC00 002A6860 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAC04 002A6864 7C 63 02 14 */ add r3, r3, r0
/* 802AAC08 002A6868 4B D5 94 FD */ bl memset
/* 802AAC0C 002A686C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAC10 002A6870 38 81 01 E8 */ addi r4, r1, 0x1e8
/* 802AAC14 002A6874 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAC18 002A6878 38 A0 00 30 */ li r5, 0x30
/* 802AAC1C 002A687C 7C 00 07 74 */ extsb r0, r0
/* 802AAC20 002A6880 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAC24 002A6884 7C 63 02 14 */ add r3, r3, r0
/* 802AAC28 002A6888 4B D5 93 D9 */ bl memcpy
/* 802AAC2C 002A688C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAC30 002A6890 7F C3 F3 78 */ mr r3, r30
/* 802AAC34 002A6894 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AAC38 002A6898 7C 06 07 74 */ extsb r6, r0
/* 802AAC3C 002A689C 38 84 FF FF */ addi r4, r4, -1
/* 802AAC40 002A68A0 7C A4 30 50 */ subf r5, r4, r6
/* 802AAC44 002A68A4 38 06 00 01 */ addi r0, r6, 1
/* 802AAC48 002A68A8 7C 86 20 50 */ subf r4, r6, r4
/* 802AAC4C 002A68AC 7C A4 20 F8 */ nor r4, r5, r4
/* 802AAC50 002A68B0 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AAC54 002A68B4 7C 00 20 78 */ andc r0, r0, r4
/* 802AAC58 002A68B8 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AAC5C 002A68BC 4B FC 3B 29 */ bl OSRestoreInterrupts
lbl_802AAC60:
/* 802AAC60 002A68C0 39 60 00 00 */ li r11, 0
/* 802AAC64 002A68C4 38 00 00 01 */ li r0, 1
/* 802AAC68 002A68C8 B0 01 01 72 */ sth r0, 0x172(r1)
/* 802AAC6C 002A68CC 39 80 00 15 */ li r12, 0x15
/* 802AAC70 002A68D0 81 21 01 60 */ lwz r9, 0x160(r1)
/* 802AAC74 002A68D4 99 61 01 5C */ stb r11, 0x15c(r1)
/* 802AAC78 002A68D8 81 01 01 64 */ lwz r8, 0x164(r1)
/* 802AAC7C 002A68DC 81 41 01 5C */ lwz r10, 0x15c(r1)
/* 802AAC80 002A68E0 80 E1 01 68 */ lwz r7, 0x168(r1)
/* 802AAC84 002A68E4 80 C1 01 6C */ lwz r6, 0x16c(r1)
/* 802AAC88 002A68E8 80 A1 01 70 */ lwz r5, 0x170(r1)
/* 802AAC8C 002A68EC 80 81 01 74 */ lwz r4, 0x174(r1)
/* 802AAC90 002A68F0 80 61 01 78 */ lwz r3, 0x178(r1)
/* 802AAC94 002A68F4 80 01 01 7C */ lwz r0, 0x17c(r1)
/* 802AAC98 002A68F8 91 81 01 58 */ stw r12, 0x158(r1)
/* 802AAC9C 002A68FC 93 81 01 84 */ stw r28, 0x184(r1)
/* 802AACA0 002A6900 91 61 01 80 */ stw r11, 0x180(r1)
/* 802AACA4 002A6904 91 81 01 88 */ stw r12, 0x188(r1)
/* 802AACA8 002A6908 91 41 01 8C */ stw r10, 0x18c(r1)
/* 802AACAC 002A690C 91 21 01 90 */ stw r9, 0x190(r1)
/* 802AACB0 002A6910 91 01 01 94 */ stw r8, 0x194(r1)
/* 802AACB4 002A6914 90 E1 01 98 */ stw r7, 0x198(r1)
/* 802AACB8 002A6918 90 C1 01 9C */ stw r6, 0x19c(r1)
/* 802AACBC 002A691C 90 A1 01 A0 */ stw r5, 0x1a0(r1)
/* 802AACC0 002A6920 90 81 01 A4 */ stw r4, 0x1a4(r1)
/* 802AACC4 002A6924 90 61 01 A8 */ stw r3, 0x1a8(r1)
/* 802AACC8 002A6928 90 01 01 AC */ stw r0, 0x1ac(r1)
/* 802AACCC 002A692C 91 61 01 B0 */ stw r11, 0x1b0(r1)
/* 802AACD0 002A6930 93 81 01 B4 */ stw r28, 0x1b4(r1)
/* 802AACD4 002A6934 4B FC 3A 89 */ bl OSDisableInterrupts
/* 802AACD8 002A6938 7C 7E 1B 78 */ mr r30, r3
/* 802AACDC 002A693C 4B FC 3A 81 */ bl OSDisableInterrupts
/* 802AACE0 002A6940 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AACE4 002A6944 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AACE8 002A6948 7C 04 00 50 */ subf r0, r4, r0
/* 802AACEC 002A694C 7C 1B 07 75 */ extsb. r27, r0
/* 802AACF0 002A6950 40 80 00 10 */ bge lbl_802AAD00
/* 802AACF4 002A6954 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AACF8 002A6958 7C 1B 02 14 */ add r0, r27, r0
/* 802AACFC 002A695C 7C 1B 07 74 */ extsb r27, r0
lbl_802AAD00:
/* 802AAD00 002A6960 4B FC 3A 85 */ bl OSRestoreInterrupts
/* 802AAD04 002A6964 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AAD08 002A6968 38 03 FF FF */ addi r0, r3, -1
/* 802AAD0C 002A696C 7C 00 D8 40 */ cmplw r0, r27
/* 802AAD10 002A6970 40 82 00 10 */ bne lbl_802AAD20
/* 802AAD14 002A6974 7F C3 F3 78 */ mr r3, r30
/* 802AAD18 002A6978 4B FC 3A 6D */ bl OSRestoreInterrupts
/* 802AAD1C 002A697C 48 00 00 78 */ b lbl_802AAD94
lbl_802AAD20:
/* 802AAD20 002A6980 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAD24 002A6984 38 80 00 00 */ li r4, 0
/* 802AAD28 002A6988 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAD2C 002A698C 38 A0 00 30 */ li r5, 0x30
/* 802AAD30 002A6990 7C 00 07 74 */ extsb r0, r0
/* 802AAD34 002A6994 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAD38 002A6998 7C 63 02 14 */ add r3, r3, r0
/* 802AAD3C 002A699C 4B D5 93 C9 */ bl memset
/* 802AAD40 002A69A0 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAD44 002A69A4 38 81 01 88 */ addi r4, r1, 0x188
/* 802AAD48 002A69A8 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAD4C 002A69AC 38 A0 00 30 */ li r5, 0x30
/* 802AAD50 002A69B0 7C 00 07 74 */ extsb r0, r0
/* 802AAD54 002A69B4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAD58 002A69B8 7C 63 02 14 */ add r3, r3, r0
/* 802AAD5C 002A69BC 4B D5 92 A5 */ bl memcpy
/* 802AAD60 002A69C0 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAD64 002A69C4 7F C3 F3 78 */ mr r3, r30
/* 802AAD68 002A69C8 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AAD6C 002A69CC 7C 06 07 74 */ extsb r6, r0
/* 802AAD70 002A69D0 38 84 FF FF */ addi r4, r4, -1
/* 802AAD74 002A69D4 7C A4 30 50 */ subf r5, r4, r6
/* 802AAD78 002A69D8 38 06 00 01 */ addi r0, r6, 1
/* 802AAD7C 002A69DC 7C 86 20 50 */ subf r4, r6, r4
/* 802AAD80 002A69E0 7C A4 20 F8 */ nor r4, r5, r4
/* 802AAD84 002A69E4 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AAD88 002A69E8 7C 00 20 78 */ andc r0, r0, r4
/* 802AAD8C 002A69EC 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AAD90 002A69F0 4B FC 39 F5 */ bl OSRestoreInterrupts
lbl_802AAD94:
/* 802AAD94 002A69F4 7F A3 EB 78 */ mr r3, r29
/* 802AAD98 002A69F8 4B FC 39 ED */ bl OSRestoreInterrupts
/* 802AAD9C 002A69FC 38 60 00 00 */ li r3, 0
/* 802AADA0 002A6A00 48 00 04 78 */ b lbl_802AB218
lbl_802AADA4:
/* 802AADA4 002A6A04 7F A3 EB 78 */ mr r3, r29
/* 802AADA8 002A6A08 3B 40 FF FE */ li r26, -2
/* 802AADAC 002A6A0C 4B FC 39 D9 */ bl OSRestoreInterrupts
/* 802AADB0 002A6A10 48 00 04 48 */ b lbl_802AB1F8
lbl_802AADB4:
/* 802AADB4 002A6A14 38 60 00 01 */ li r3, 1
/* 802AADB8 002A6A18 38 00 00 04 */ li r0, 4
/* 802AADBC 002A6A1C B0 61 01 12 */ sth r3, 0x112(r1)
/* 802AADC0 002A6A20 39 80 00 19 */ li r12, 0x19
/* 802AADC4 002A6A24 81 41 01 00 */ lwz r10, 0x100(r1)
/* 802AADC8 002A6A28 98 01 00 FC */ stb r0, 0xfc(r1)
/* 802AADCC 002A6A2C 81 21 01 04 */ lwz r9, 0x104(r1)
/* 802AADD0 002A6A30 81 61 00 FC */ lwz r11, 0xfc(r1)
/* 802AADD4 002A6A34 81 01 01 08 */ lwz r8, 0x108(r1)
/* 802AADD8 002A6A38 80 E1 01 0C */ lwz r7, 0x10c(r1)
/* 802AADDC 002A6A3C 80 C1 01 10 */ lwz r6, 0x110(r1)
/* 802AADE0 002A6A40 80 A1 01 14 */ lwz r5, 0x114(r1)
/* 802AADE4 002A6A44 80 81 01 18 */ lwz r4, 0x118(r1)
/* 802AADE8 002A6A48 80 61 01 1C */ lwz r3, 0x11c(r1)
/* 802AADEC 002A6A4C 80 01 01 20 */ lwz r0, 0x120(r1)
/* 802AADF0 002A6A50 91 81 00 F8 */ stw r12, 0xf8(r1)
/* 802AADF4 002A6A54 93 81 01 24 */ stw r28, 0x124(r1)
/* 802AADF8 002A6A58 91 81 01 28 */ stw r12, 0x128(r1)
/* 802AADFC 002A6A5C 91 61 01 2C */ stw r11, 0x12c(r1)
/* 802AAE00 002A6A60 91 41 01 30 */ stw r10, 0x130(r1)
/* 802AAE04 002A6A64 91 21 01 34 */ stw r9, 0x134(r1)
/* 802AAE08 002A6A68 91 01 01 38 */ stw r8, 0x138(r1)
/* 802AAE0C 002A6A6C 90 E1 01 3C */ stw r7, 0x13c(r1)
/* 802AAE10 002A6A70 90 C1 01 40 */ stw r6, 0x140(r1)
/* 802AAE14 002A6A74 90 A1 01 44 */ stw r5, 0x144(r1)
/* 802AAE18 002A6A78 90 81 01 48 */ stw r4, 0x148(r1)
/* 802AAE1C 002A6A7C 90 61 01 4C */ stw r3, 0x14c(r1)
/* 802AAE20 002A6A80 90 01 01 50 */ stw r0, 0x150(r1)
/* 802AAE24 002A6A84 93 81 01 54 */ stw r28, 0x154(r1)
/* 802AAE28 002A6A88 4B FC 39 35 */ bl OSDisableInterrupts
/* 802AAE2C 002A6A8C 7C 7E 1B 78 */ mr r30, r3
/* 802AAE30 002A6A90 4B FC 39 2D */ bl OSDisableInterrupts
/* 802AAE34 002A6A94 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AAE38 002A6A98 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAE3C 002A6A9C 7C 04 00 50 */ subf r0, r4, r0
/* 802AAE40 002A6AA0 7C 1D 07 75 */ extsb. r29, r0
/* 802AAE44 002A6AA4 40 80 00 10 */ bge lbl_802AAE54
/* 802AAE48 002A6AA8 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AAE4C 002A6AAC 7C 1D 02 14 */ add r0, r29, r0
/* 802AAE50 002A6AB0 7C 1D 07 74 */ extsb r29, r0
lbl_802AAE54:
/* 802AAE54 002A6AB4 4B FC 39 31 */ bl OSRestoreInterrupts
/* 802AAE58 002A6AB8 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AAE5C 002A6ABC 38 03 FF FF */ addi r0, r3, -1
/* 802AAE60 002A6AC0 7C 00 E8 40 */ cmplw r0, r29
/* 802AAE64 002A6AC4 40 82 00 14 */ bne lbl_802AAE78
/* 802AAE68 002A6AC8 7F C3 F3 78 */ mr r3, r30
/* 802AAE6C 002A6ACC 4B FC 39 19 */ bl OSRestoreInterrupts
/* 802AAE70 002A6AD0 38 00 00 00 */ li r0, 0
/* 802AAE74 002A6AD4 48 00 00 7C */ b lbl_802AAEF0
lbl_802AAE78:
/* 802AAE78 002A6AD8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAE7C 002A6ADC 38 80 00 00 */ li r4, 0
/* 802AAE80 002A6AE0 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAE84 002A6AE4 38 A0 00 30 */ li r5, 0x30
/* 802AAE88 002A6AE8 7C 00 07 74 */ extsb r0, r0
/* 802AAE8C 002A6AEC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAE90 002A6AF0 7C 63 02 14 */ add r3, r3, r0
/* 802AAE94 002A6AF4 4B D5 92 71 */ bl memset
/* 802AAE98 002A6AF8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAE9C 002A6AFC 38 81 01 28 */ addi r4, r1, 0x128
/* 802AAEA0 002A6B00 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAEA4 002A6B04 38 A0 00 30 */ li r5, 0x30
/* 802AAEA8 002A6B08 7C 00 07 74 */ extsb r0, r0
/* 802AAEAC 002A6B0C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAEB0 002A6B10 7C 63 02 14 */ add r3, r3, r0
/* 802AAEB4 002A6B14 4B D5 91 4D */ bl memcpy
/* 802AAEB8 002A6B18 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAEBC 002A6B1C 7F C3 F3 78 */ mr r3, r30
/* 802AAEC0 002A6B20 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AAEC4 002A6B24 7C 06 07 74 */ extsb r6, r0
/* 802AAEC8 002A6B28 38 84 FF FF */ addi r4, r4, -1
/* 802AAECC 002A6B2C 7C A4 30 50 */ subf r5, r4, r6
/* 802AAED0 002A6B30 38 06 00 01 */ addi r0, r6, 1
/* 802AAED4 002A6B34 7C 86 20 50 */ subf r4, r6, r4
/* 802AAED8 002A6B38 7C A4 20 F8 */ nor r4, r5, r4
/* 802AAEDC 002A6B3C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AAEE0 002A6B40 7C 00 20 78 */ andc r0, r0, r4
/* 802AAEE4 002A6B44 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AAEE8 002A6B48 4B FC 38 9D */ bl OSRestoreInterrupts
/* 802AAEEC 002A6B4C 38 00 00 01 */ li r0, 1
lbl_802AAEF0:
/* 802AAEF0 002A6B50 2C 00 00 00 */ cmpwi r0, 0
/* 802AAEF4 002A6B54 40 82 00 0C */ bne lbl_802AAF00
/* 802AAEF8 002A6B58 3B 40 FF FE */ li r26, -2
/* 802AAEFC 002A6B5C 48 00 02 FC */ b lbl_802AB1F8
lbl_802AAF00:
/* 802AAF00 002A6B60 38 60 00 00 */ li r3, 0
/* 802AAF04 002A6B64 48 00 03 14 */ b lbl_802AB218
lbl_802AAF08:
/* 802AAF08 002A6B68 38 60 00 01 */ li r3, 1
/* 802AAF0C 002A6B6C 38 00 00 00 */ li r0, 0
/* 802AAF10 002A6B70 B0 61 00 B2 */ sth r3, 0xb2(r1)
/* 802AAF14 002A6B74 39 80 00 19 */ li r12, 0x19
/* 802AAF18 002A6B78 81 41 00 A0 */ lwz r10, 0xa0(r1)
/* 802AAF1C 002A6B7C 98 01 00 9C */ stb r0, 0x9c(r1)
/* 802AAF20 002A6B80 81 21 00 A4 */ lwz r9, 0xa4(r1)
/* 802AAF24 002A6B84 81 61 00 9C */ lwz r11, 0x9c(r1)
/* 802AAF28 002A6B88 81 01 00 A8 */ lwz r8, 0xa8(r1)
/* 802AAF2C 002A6B8C 80 E1 00 AC */ lwz r7, 0xac(r1)
/* 802AAF30 002A6B90 80 C1 00 B0 */ lwz r6, 0xb0(r1)
/* 802AAF34 002A6B94 80 A1 00 B4 */ lwz r5, 0xb4(r1)
/* 802AAF38 002A6B98 80 81 00 B8 */ lwz r4, 0xb8(r1)
/* 802AAF3C 002A6B9C 80 61 00 BC */ lwz r3, 0xbc(r1)
/* 802AAF40 002A6BA0 80 01 00 C0 */ lwz r0, 0xc0(r1)
/* 802AAF44 002A6BA4 91 81 00 98 */ stw r12, 0x98(r1)
/* 802AAF48 002A6BA8 93 81 00 C4 */ stw r28, 0xc4(r1)
/* 802AAF4C 002A6BAC 91 81 00 C8 */ stw r12, 0xc8(r1)
/* 802AAF50 002A6BB0 91 61 00 CC */ stw r11, 0xcc(r1)
/* 802AAF54 002A6BB4 91 41 00 D0 */ stw r10, 0xd0(r1)
/* 802AAF58 002A6BB8 91 21 00 D4 */ stw r9, 0xd4(r1)
/* 802AAF5C 002A6BBC 91 01 00 D8 */ stw r8, 0xd8(r1)
/* 802AAF60 002A6BC0 90 E1 00 DC */ stw r7, 0xdc(r1)
/* 802AAF64 002A6BC4 90 C1 00 E0 */ stw r6, 0xe0(r1)
/* 802AAF68 002A6BC8 90 A1 00 E4 */ stw r5, 0xe4(r1)
/* 802AAF6C 002A6BCC 90 81 00 E8 */ stw r4, 0xe8(r1)
/* 802AAF70 002A6BD0 90 61 00 EC */ stw r3, 0xec(r1)
/* 802AAF74 002A6BD4 90 01 00 F0 */ stw r0, 0xf0(r1)
/* 802AAF78 002A6BD8 93 81 00 F4 */ stw r28, 0xf4(r1)
/* 802AAF7C 002A6BDC 4B FC 37 E1 */ bl OSDisableInterrupts
/* 802AAF80 002A6BE0 7C 7E 1B 78 */ mr r30, r3
/* 802AAF84 002A6BE4 4B FC 37 D9 */ bl OSDisableInterrupts
/* 802AAF88 002A6BE8 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AAF8C 002A6BEC 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAF90 002A6BF0 7C 04 00 50 */ subf r0, r4, r0
/* 802AAF94 002A6BF4 7C 1D 07 75 */ extsb. r29, r0
/* 802AAF98 002A6BF8 40 80 00 10 */ bge lbl_802AAFA8
/* 802AAF9C 002A6BFC 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AAFA0 002A6C00 7C 1D 02 14 */ add r0, r29, r0
/* 802AAFA4 002A6C04 7C 1D 07 74 */ extsb r29, r0
lbl_802AAFA8:
/* 802AAFA8 002A6C08 4B FC 37 DD */ bl OSRestoreInterrupts
/* 802AAFAC 002A6C0C 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AAFB0 002A6C10 38 03 FF FF */ addi r0, r3, -1
/* 802AAFB4 002A6C14 7C 00 E8 40 */ cmplw r0, r29
/* 802AAFB8 002A6C18 40 82 00 14 */ bne lbl_802AAFCC
/* 802AAFBC 002A6C1C 7F C3 F3 78 */ mr r3, r30
/* 802AAFC0 002A6C20 4B FC 37 C5 */ bl OSRestoreInterrupts
/* 802AAFC4 002A6C24 38 00 00 00 */ li r0, 0
/* 802AAFC8 002A6C28 48 00 00 7C */ b lbl_802AB044
lbl_802AAFCC:
/* 802AAFCC 002A6C2C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAFD0 002A6C30 38 80 00 00 */ li r4, 0
/* 802AAFD4 002A6C34 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAFD8 002A6C38 38 A0 00 30 */ li r5, 0x30
/* 802AAFDC 002A6C3C 7C 00 07 74 */ extsb r0, r0
/* 802AAFE0 002A6C40 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AAFE4 002A6C44 7C 63 02 14 */ add r3, r3, r0
/* 802AAFE8 002A6C48 4B D5 91 1D */ bl memset
/* 802AAFEC 002A6C4C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AAFF0 002A6C50 38 81 00 C8 */ addi r4, r1, 0xc8
/* 802AAFF4 002A6C54 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AAFF8 002A6C58 38 A0 00 30 */ li r5, 0x30
/* 802AAFFC 002A6C5C 7C 00 07 74 */ extsb r0, r0
/* 802AB000 002A6C60 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB004 002A6C64 7C 63 02 14 */ add r3, r3, r0
/* 802AB008 002A6C68 4B D5 8F F9 */ bl memcpy
/* 802AB00C 002A6C6C 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB010 002A6C70 7F C3 F3 78 */ mr r3, r30
/* 802AB014 002A6C74 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AB018 002A6C78 7C 06 07 74 */ extsb r6, r0
/* 802AB01C 002A6C7C 38 84 FF FF */ addi r4, r4, -1
/* 802AB020 002A6C80 7C A4 30 50 */ subf r5, r4, r6
/* 802AB024 002A6C84 38 06 00 01 */ addi r0, r6, 1
/* 802AB028 002A6C88 7C 86 20 50 */ subf r4, r6, r4
/* 802AB02C 002A6C8C 7C A4 20 F8 */ nor r4, r5, r4
/* 802AB030 002A6C90 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AB034 002A6C94 7C 00 20 78 */ andc r0, r0, r4
/* 802AB038 002A6C98 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AB03C 002A6C9C 4B FC 37 49 */ bl OSRestoreInterrupts
/* 802AB040 002A6CA0 38 00 00 01 */ li r0, 1
lbl_802AB044:
/* 802AB044 002A6CA4 2C 00 00 00 */ cmpwi r0, 0
/* 802AB048 002A6CA8 40 82 00 0C */ bne lbl_802AB054
/* 802AB04C 002A6CAC 3B 40 FF FE */ li r26, -2
/* 802AB050 002A6CB0 48 00 01 A8 */ b lbl_802AB1F8
lbl_802AB054:
/* 802AB054 002A6CB4 38 60 00 00 */ li r3, 0
/* 802AB058 002A6CB8 48 00 01 C0 */ b lbl_802AB218
lbl_802AB05C:
/* 802AB05C 002A6CBC 3C 60 04 A2 */ lis r3, 0x04A20008@ha
/* 802AB060 002A6CC0 38 E0 00 01 */ li r7, 1
/* 802AB064 002A6CC4 38 A3 00 08 */ addi r5, r3, 0x04A20008@l
/* 802AB068 002A6CC8 38 C0 00 16 */ li r6, 0x16
/* 802AB06C 002A6CCC 38 00 00 15 */ li r0, 0x15
/* 802AB070 002A6CD0 90 A1 00 14 */ stw r5, 0x14(r1)
/* 802AB074 002A6CD4 38 61 00 6C */ addi r3, r1, 0x6c
/* 802AB078 002A6CD8 38 81 00 14 */ addi r4, r1, 0x14
/* 802AB07C 002A6CDC 98 E1 00 09 */ stb r7, 9(r1)
/* 802AB080 002A6CE0 38 A0 00 04 */ li r5, 4
/* 802AB084 002A6CE4 98 E1 00 08 */ stb r7, 8(r1)
/* 802AB088 002A6CE8 90 C1 00 68 */ stw r6, 0x68(r1)
/* 802AB08C 002A6CEC B0 01 00 82 */ sth r0, 0x82(r1)
/* 802AB090 002A6CF0 93 81 00 94 */ stw r28, 0x94(r1)
/* 802AB094 002A6CF4 4B D5 8F 6D */ bl memcpy
/* 802AB098 002A6CF8 38 61 00 70 */ addi r3, r1, 0x70
/* 802AB09C 002A6CFC 38 81 00 08 */ addi r4, r1, 8
/* 802AB0A0 002A6D00 38 A0 00 01 */ li r5, 1
/* 802AB0A4 002A6D04 4B D5 8F 5D */ bl memcpy
/* 802AB0A8 002A6D08 38 61 00 71 */ addi r3, r1, 0x71
/* 802AB0AC 002A6D0C 38 81 00 09 */ addi r4, r1, 9
/* 802AB0B0 002A6D10 38 A0 00 01 */ li r5, 1
/* 802AB0B4 002A6D14 4B D5 8F 4D */ bl memcpy
/* 802AB0B8 002A6D18 83 A1 00 68 */ lwz r29, 0x68(r1)
/* 802AB0BC 002A6D1C 81 81 00 6C */ lwz r12, 0x6c(r1)
/* 802AB0C0 002A6D20 81 61 00 70 */ lwz r11, 0x70(r1)
/* 802AB0C4 002A6D24 81 41 00 74 */ lwz r10, 0x74(r1)
/* 802AB0C8 002A6D28 81 21 00 78 */ lwz r9, 0x78(r1)
/* 802AB0CC 002A6D2C 81 01 00 7C */ lwz r8, 0x7c(r1)
/* 802AB0D0 002A6D30 80 E1 00 80 */ lwz r7, 0x80(r1)
/* 802AB0D4 002A6D34 80 C1 00 84 */ lwz r6, 0x84(r1)
/* 802AB0D8 002A6D38 80 A1 00 88 */ lwz r5, 0x88(r1)
/* 802AB0DC 002A6D3C 80 81 00 8C */ lwz r4, 0x8c(r1)
/* 802AB0E0 002A6D40 80 61 00 90 */ lwz r3, 0x90(r1)
/* 802AB0E4 002A6D44 80 01 00 94 */ lwz r0, 0x94(r1)
/* 802AB0E8 002A6D48 93 A1 00 38 */ stw r29, 0x38(r1)
/* 802AB0EC 002A6D4C 91 81 00 3C */ stw r12, 0x3c(r1)
/* 802AB0F0 002A6D50 91 61 00 40 */ stw r11, 0x40(r1)
/* 802AB0F4 002A6D54 91 41 00 44 */ stw r10, 0x44(r1)
/* 802AB0F8 002A6D58 91 21 00 48 */ stw r9, 0x48(r1)
/* 802AB0FC 002A6D5C 91 01 00 4C */ stw r8, 0x4c(r1)
/* 802AB100 002A6D60 90 E1 00 50 */ stw r7, 0x50(r1)
/* 802AB104 002A6D64 90 C1 00 54 */ stw r6, 0x54(r1)
/* 802AB108 002A6D68 90 A1 00 58 */ stw r5, 0x58(r1)
/* 802AB10C 002A6D6C 90 81 00 5C */ stw r4, 0x5c(r1)
/* 802AB110 002A6D70 90 61 00 60 */ stw r3, 0x60(r1)
/* 802AB114 002A6D74 90 01 00 64 */ stw r0, 0x64(r1)
/* 802AB118 002A6D78 4B FC 36 45 */ bl OSDisableInterrupts
/* 802AB11C 002A6D7C 7C 7E 1B 78 */ mr r30, r3
/* 802AB120 002A6D80 4B FC 36 3D */ bl OSDisableInterrupts
/* 802AB124 002A6D84 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AB128 002A6D88 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB12C 002A6D8C 7C 04 00 50 */ subf r0, r4, r0
/* 802AB130 002A6D90 7C 1D 07 75 */ extsb. r29, r0
/* 802AB134 002A6D94 40 80 00 10 */ bge lbl_802AB144
/* 802AB138 002A6D98 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AB13C 002A6D9C 7C 1D 02 14 */ add r0, r29, r0
/* 802AB140 002A6DA0 7C 1D 07 74 */ extsb r29, r0
lbl_802AB144:
/* 802AB144 002A6DA4 4B FC 36 41 */ bl OSRestoreInterrupts
/* 802AB148 002A6DA8 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AB14C 002A6DAC 38 03 FF FF */ addi r0, r3, -1
/* 802AB150 002A6DB0 7C 00 E8 40 */ cmplw r0, r29
/* 802AB154 002A6DB4 40 82 00 14 */ bne lbl_802AB168
/* 802AB158 002A6DB8 7F C3 F3 78 */ mr r3, r30
/* 802AB15C 002A6DBC 4B FC 36 29 */ bl OSRestoreInterrupts
/* 802AB160 002A6DC0 38 00 00 00 */ li r0, 0
/* 802AB164 002A6DC4 48 00 00 7C */ b lbl_802AB1E0
lbl_802AB168:
/* 802AB168 002A6DC8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB16C 002A6DCC 38 80 00 00 */ li r4, 0
/* 802AB170 002A6DD0 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AB174 002A6DD4 38 A0 00 30 */ li r5, 0x30
/* 802AB178 002A6DD8 7C 00 07 74 */ extsb r0, r0
/* 802AB17C 002A6DDC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB180 002A6DE0 7C 63 02 14 */ add r3, r3, r0
/* 802AB184 002A6DE4 4B D5 8F 81 */ bl memset
/* 802AB188 002A6DE8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB18C 002A6DEC 38 81 00 38 */ addi r4, r1, 0x38
/* 802AB190 002A6DF0 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AB194 002A6DF4 38 A0 00 30 */ li r5, 0x30
/* 802AB198 002A6DF8 7C 00 07 74 */ extsb r0, r0
/* 802AB19C 002A6DFC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB1A0 002A6E00 7C 63 02 14 */ add r3, r3, r0
/* 802AB1A4 002A6E04 4B D5 8E 5D */ bl memcpy
/* 802AB1A8 002A6E08 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB1AC 002A6E0C 7F C3 F3 78 */ mr r3, r30
/* 802AB1B0 002A6E10 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AB1B4 002A6E14 7C 06 07 74 */ extsb r6, r0
/* 802AB1B8 002A6E18 38 84 FF FF */ addi r4, r4, -1
/* 802AB1BC 002A6E1C 7C A4 30 50 */ subf r5, r4, r6
/* 802AB1C0 002A6E20 38 06 00 01 */ addi r0, r6, 1
/* 802AB1C4 002A6E24 7C 86 20 50 */ subf r4, r6, r4
/* 802AB1C8 002A6E28 7C A4 20 F8 */ nor r4, r5, r4
/* 802AB1CC 002A6E2C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AB1D0 002A6E30 7C 00 20 78 */ andc r0, r0, r4
/* 802AB1D4 002A6E34 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AB1D8 002A6E38 4B FC 35 AD */ bl OSRestoreInterrupts
/* 802AB1DC 002A6E3C 38 00 00 01 */ li r0, 1
lbl_802AB1E0:
/* 802AB1E0 002A6E40 2C 00 00 00 */ cmpwi r0, 0
/* 802AB1E4 002A6E44 40 82 00 0C */ bne lbl_802AB1F0
/* 802AB1E8 002A6E48 3B 40 FF FE */ li r26, -2
/* 802AB1EC 002A6E4C 48 00 00 0C */ b lbl_802AB1F8
lbl_802AB1F0:
/* 802AB1F0 002A6E50 38 60 00 00 */ li r3, 0
/* 802AB1F4 002A6E54 48 00 00 24 */ b lbl_802AB218
lbl_802AB1F8:
/* 802AB1F8 002A6E58 2C 1C 00 00 */ cmpwi r28, 0
/* 802AB1FC 002A6E5C 41 82 00 18 */ beq lbl_802AB214
/* 802AB200 002A6E60 7F 8C E3 78 */ mr r12, r28
/* 802AB204 002A6E64 7F 63 DB 78 */ mr r3, r27
/* 802AB208 002A6E68 7F 44 D3 78 */ mr r4, r26
/* 802AB20C 002A6E6C 7D 89 03 A6 */ mtctr r12
/* 802AB210 002A6E70 4E 80 04 21 */ bctrl
lbl_802AB214:
/* 802AB214 002A6E74 7F 43 D3 78 */ mr r3, r26
lbl_802AB218:
/* 802AB218 002A6E78 39 61 06 00 */ addi r11, r1, 0x600
/* 802AB21C 002A6E7C 4B F1 BF 51 */ bl _restgpr_25
/* 802AB220 002A6E80 80 01 06 04 */ lwz r0, 0x604(r1)
/* 802AB224 002A6E84 7C 08 03 A6 */ mtlr r0
/* 802AB228 002A6E88 38 21 06 00 */ addi r1, r1, 0x600
/* 802AB22C 002A6E8C 4E 80 00 20 */ blr
.global WPADGetSpeakerVolume
WPADGetSpeakerVolume:
/* 802AB230 002A6E90 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802AB234 002A6E94 7C 08 02 A6 */ mflr r0
/* 802AB238 002A6E98 90 01 00 14 */ stw r0, 0x14(r1)
/* 802AB23C 002A6E9C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802AB240 002A6EA0 4B FC 35 1D */ bl OSDisableInterrupts
/* 802AB244 002A6EA4 8B ED AE 5A */ lbz r31, lbl_8064011A-_SDA_BASE_(r13)
/* 802AB248 002A6EA8 4B FC 35 3D */ bl OSRestoreInterrupts
/* 802AB24C 002A6EAC 7F E3 FB 78 */ mr r3, r31
/* 802AB250 002A6EB0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802AB254 002A6EB4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802AB258 002A6EB8 7C 08 03 A6 */ mtlr r0
/* 802AB25C 002A6EBC 38 21 00 10 */ addi r1, r1, 0x10
/* 802AB260 002A6EC0 4E 80 00 20 */ blr
.global WPADSetSpeakerVolume
WPADSetSpeakerVolume:
/* 802AB264 002A6EC4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802AB268 002A6EC8 7C 08 02 A6 */ mflr r0
/* 802AB26C 002A6ECC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802AB270 002A6ED0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802AB274 002A6ED4 7C 7F 1B 78 */ mr r31, r3
/* 802AB278 002A6ED8 4B FC 34 E5 */ bl OSDisableInterrupts
/* 802AB27C 002A6EDC 2C 1F 00 00 */ cmpwi r31, 0
/* 802AB280 002A6EE0 7F E0 FB 78 */ mr r0, r31
/* 802AB284 002A6EE4 40 82 00 08 */ bne lbl_802AB28C
/* 802AB288 002A6EE8 38 00 00 00 */ li r0, 0
lbl_802AB28C:
/* 802AB28C 002A6EEC 28 1F 00 7F */ cmplwi r31, 0x7f
/* 802AB290 002A6EF0 41 80 00 08 */ blt lbl_802AB298
/* 802AB294 002A6EF4 38 00 00 7F */ li r0, 0x7f
lbl_802AB298:
/* 802AB298 002A6EF8 98 0D AE 5A */ stb r0, lbl_8064011A-_SDA_BASE_(r13)
/* 802AB29C 002A6EFC 4B FC 34 E9 */ bl OSRestoreInterrupts
/* 802AB2A0 002A6F00 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802AB2A4 002A6F04 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802AB2A8 002A6F08 7C 08 03 A6 */ mtlr r0
/* 802AB2AC 002A6F0C 38 21 00 10 */ addi r1, r1, 0x10
/* 802AB2B0 002A6F10 4E 80 00 20 */ blr
.global IsBusyStream
IsBusyStream:
/* 802AB2B4 002A6F14 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802AB2B8 002A6F18 7C 08 02 A6 */ mflr r0
/* 802AB2BC 002A6F1C 90 01 00 34 */ stw r0, 0x34(r1)
/* 802AB2C0 002A6F20 39 61 00 30 */ addi r11, r1, 0x30
/* 802AB2C4 002A6F24 4B F1 BE 51 */ bl _savegpr_22
/* 802AB2C8 002A6F28 3F 60 80 53 */ lis r27, lbl_80536D70@ha
/* 802AB2CC 002A6F2C 54 79 10 3A */ slwi r25, r3, 2
/* 802AB2D0 002A6F30 3B 7B 6D 70 */ addi r27, r27, lbl_80536D70@l
/* 802AB2D4 002A6F34 7F DB C8 2E */ lwzx r30, r27, r25
/* 802AB2D8 002A6F38 4B FC 34 85 */ bl OSDisableInterrupts
/* 802AB2DC 002A6F3C 8B BE 08 CD */ lbz r29, 0x8cd(r30)
/* 802AB2E0 002A6F40 7C 7F 1B 78 */ mr r31, r3
/* 802AB2E4 002A6F44 8B 9E 08 C1 */ lbz r28, 0x8c1(r30)
/* 802AB2E8 002A6F48 48 00 B6 E5 */ bl WUDGetBufferStatus
/* 802AB2EC 002A6F4C 7C 7A 1B 78 */ mr r26, r3
/* 802AB2F0 002A6F50 4B FC 34 6D */ bl OSDisableInterrupts
/* 802AB2F4 002A6F54 88 9E 01 60 */ lbz r4, 0x160(r30)
/* 802AB2F8 002A6F58 88 1E 01 61 */ lbz r0, 0x161(r30)
/* 802AB2FC 002A6F5C 7C 04 00 50 */ subf r0, r4, r0
/* 802AB300 002A6F60 7C 18 07 75 */ extsb. r24, r0
/* 802AB304 002A6F64 40 80 00 10 */ bge lbl_802AB314
/* 802AB308 002A6F68 80 1E 01 68 */ lwz r0, 0x168(r30)
/* 802AB30C 002A6F6C 7C 18 02 14 */ add r0, r24, r0
/* 802AB310 002A6F70 7C 18 07 74 */ extsb r24, r0
lbl_802AB314:
/* 802AB314 002A6F74 4B FC 34 71 */ bl OSRestoreInterrupts
/* 802AB318 002A6F78 7E FB C8 2E */ lwzx r23, r27, r25
/* 802AB31C 002A6F7C 4B FC 34 41 */ bl OSDisableInterrupts
/* 802AB320 002A6F80 82 D7 08 BC */ lwz r22, 0x8bc(r23)
/* 802AB324 002A6F84 8A F7 08 C3 */ lbz r23, 0x8c3(r23)
/* 802AB328 002A6F88 4B FC 34 5D */ bl OSRestoreInterrupts
/* 802AB32C 002A6F8C 2C 16 FF FF */ cmpwi r22, -1
/* 802AB330 002A6F90 41 82 00 0C */ beq lbl_802AB33C
/* 802AB334 002A6F94 7E E3 07 74 */ extsb r3, r23
/* 802AB338 002A6F98 48 00 DC 05 */ bl _WUDGetQueuedSize
lbl_802AB33C:
/* 802AB33C 002A6F9C 7E DB C8 2E */ lwzx r22, r27, r25
/* 802AB340 002A6FA0 4B FC 34 1D */ bl OSDisableInterrupts
/* 802AB344 002A6FA4 82 F6 08 BC */ lwz r23, 0x8bc(r22)
/* 802AB348 002A6FA8 8A D6 08 C3 */ lbz r22, 0x8c3(r22)
/* 802AB34C 002A6FAC 4B FC 34 39 */ bl OSRestoreInterrupts
/* 802AB350 002A6FB0 2C 17 FF FF */ cmpwi r23, -1
/* 802AB354 002A6FB4 40 82 00 0C */ bne lbl_802AB360
/* 802AB358 002A6FB8 3B 60 00 00 */ li r27, 0
/* 802AB35C 002A6FBC 48 00 00 10 */ b lbl_802AB36C
lbl_802AB360:
/* 802AB360 002A6FC0 7E C3 07 74 */ extsb r3, r22
/* 802AB364 002A6FC4 48 00 DC 35 */ bl _WUDGetNotAckedSize
/* 802AB368 002A6FC8 7C 7B 1B 78 */ mr r27, r3
lbl_802AB36C:
/* 802AB36C 002A6FCC 8A DE 08 CF */ lbz r22, 0x8cf(r30)
/* 802AB370 002A6FD0 48 00 DC 85 */ bl _WUDGetLinkNumber
/* 802AB374 002A6FD4 7C 7E 1B 78 */ mr r30, r3
/* 802AB378 002A6FD8 7F E3 FB 78 */ mr r3, r31
/* 802AB37C 002A6FDC 4B FC 34 09 */ bl OSRestoreInterrupts
/* 802AB380 002A6FE0 2C 1D 00 00 */ cmpwi r29, 0
/* 802AB384 002A6FE4 40 82 00 44 */ bne lbl_802AB3C8
/* 802AB388 002A6FE8 57 60 04 3E */ clrlwi r0, r27, 0x10
/* 802AB38C 002A6FEC 28 00 00 03 */ cmplwi r0, 3
/* 802AB390 002A6FF0 41 81 00 38 */ bgt lbl_802AB3C8
/* 802AB394 002A6FF4 57 44 06 3E */ clrlwi r4, r26, 0x18
/* 802AB398 002A6FF8 28 04 00 0A */ cmplwi r4, 0xa
/* 802AB39C 002A6FFC 41 82 00 2C */ beq lbl_802AB3C8
/* 802AB3A0 002A7000 57 C3 0D FC */ rlwinm r3, r30, 1, 0x17, 0x1e
/* 802AB3A4 002A7004 38 03 00 02 */ addi r0, r3, 2
/* 802AB3A8 002A7008 7C 04 00 00 */ cmpw r4, r0
/* 802AB3AC 002A700C 40 80 00 1C */ bge lbl_802AB3C8
/* 802AB3B0 002A7010 28 1C 00 FF */ cmplwi r28, 0xff
/* 802AB3B4 002A7014 41 82 00 14 */ beq lbl_802AB3C8
/* 802AB3B8 002A7018 2C 18 00 15 */ cmpwi r24, 0x15
/* 802AB3BC 002A701C 40 80 00 0C */ bge lbl_802AB3C8
/* 802AB3C0 002A7020 28 16 00 01 */ cmplwi r22, 1
/* 802AB3C4 002A7024 41 80 00 0C */ blt lbl_802AB3D0
lbl_802AB3C8:
/* 802AB3C8 002A7028 38 60 00 01 */ li r3, 1
/* 802AB3CC 002A702C 48 00 00 08 */ b lbl_802AB3D4
lbl_802AB3D0:
/* 802AB3D0 002A7030 38 60 00 00 */ li r3, 0
lbl_802AB3D4:
/* 802AB3D4 002A7034 39 61 00 30 */ addi r11, r1, 0x30
/* 802AB3D8 002A7038 4B F1 BD 89 */ bl _restgpr_22
/* 802AB3DC 002A703C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802AB3E0 002A7040 7C 08 03 A6 */ mtlr r0
/* 802AB3E4 002A7044 38 21 00 30 */ addi r1, r1, 0x30
/* 802AB3E8 002A7048 4E 80 00 20 */ blr
.global WPADCanSendStreamData
WPADCanSendStreamData:
/* 802AB3EC 002A704C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802AB3F0 002A7050 7C 08 02 A6 */ mflr r0
/* 802AB3F4 002A7054 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802AB3F8 002A7058 90 01 00 24 */ stw r0, 0x24(r1)
/* 802AB3FC 002A705C 54 60 10 3A */ slwi r0, r3, 2
/* 802AB400 002A7060 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802AB404 002A7064 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802AB408 002A7068 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802AB40C 002A706C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802AB410 002A7070 7C 7D 1B 78 */ mr r29, r3
/* 802AB414 002A7074 7F E4 00 2E */ lwzx r31, r4, r0
/* 802AB418 002A7078 4B FC 33 45 */ bl OSDisableInterrupts
/* 802AB41C 002A707C 83 DF 08 BC */ lwz r30, 0x8bc(r31)
/* 802AB420 002A7080 83 FF 08 DC */ lwz r31, 0x8dc(r31)
/* 802AB424 002A7084 4B FC 33 61 */ bl OSRestoreInterrupts
/* 802AB428 002A7088 2C 1E FF FF */ cmpwi r30, -1
/* 802AB42C 002A708C 41 82 00 1C */ beq lbl_802AB448
/* 802AB430 002A7090 2C 1F 00 00 */ cmpwi r31, 0
/* 802AB434 002A7094 41 82 00 14 */ beq lbl_802AB448
/* 802AB438 002A7098 7F A3 EB 78 */ mr r3, r29
/* 802AB43C 002A709C 4B FF FE 79 */ bl IsBusyStream
/* 802AB440 002A70A0 2C 03 00 00 */ cmpwi r3, 0
/* 802AB444 002A70A4 41 82 00 0C */ beq lbl_802AB450
lbl_802AB448:
/* 802AB448 002A70A8 38 60 00 00 */ li r3, 0
/* 802AB44C 002A70AC 48 00 00 08 */ b lbl_802AB454
lbl_802AB450:
/* 802AB450 002A70B0 38 60 00 01 */ li r3, 1
lbl_802AB454:
/* 802AB454 002A70B4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802AB458 002A70B8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802AB45C 002A70BC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802AB460 002A70C0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802AB464 002A70C4 7C 08 03 A6 */ mtlr r0
/* 802AB468 002A70C8 38 21 00 20 */ addi r1, r1, 0x20
/* 802AB46C 002A70CC 4E 80 00 20 */ blr
.global WPADSendStreamData
WPADSendStreamData:
/* 802AB470 002A70D0 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802AB474 002A70D4 7C 08 02 A6 */ mflr r0
/* 802AB478 002A70D8 90 01 00 84 */ stw r0, 0x84(r1)
/* 802AB47C 002A70DC 39 61 00 80 */ addi r11, r1, 0x80
/* 802AB480 002A70E0 4B F1 BC A5 */ bl _savegpr_26
/* 802AB484 002A70E4 3C C0 80 53 */ lis r6, lbl_80536D70@ha
/* 802AB488 002A70E8 54 60 10 3A */ slwi r0, r3, 2
/* 802AB48C 002A70EC 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l
/* 802AB490 002A70F0 7C 7A 1B 78 */ mr r26, r3
/* 802AB494 002A70F4 7F E6 00 2E */ lwzx r31, r6, r0
/* 802AB498 002A70F8 7C 9B 23 78 */ mr r27, r4
/* 802AB49C 002A70FC 7C BC 2B 78 */ mr r28, r5
/* 802AB4A0 002A7100 4B FC 32 BD */ bl OSDisableInterrupts
/* 802AB4A4 002A7104 83 DF 08 BC */ lwz r30, 0x8bc(r31)
/* 802AB4A8 002A7108 83 BF 08 DC */ lwz r29, 0x8dc(r31)
/* 802AB4AC 002A710C 4B FC 32 D9 */ bl OSRestoreInterrupts
/* 802AB4B0 002A7110 2C 1E FF FF */ cmpwi r30, -1
/* 802AB4B4 002A7114 40 82 00 0C */ bne lbl_802AB4C0
/* 802AB4B8 002A7118 38 60 FF FF */ li r3, -1
/* 802AB4BC 002A711C 48 00 01 AC */ b lbl_802AB668
lbl_802AB4C0:
/* 802AB4C0 002A7120 2C 1D 00 00 */ cmpwi r29, 0
/* 802AB4C4 002A7124 40 82 00 0C */ bne lbl_802AB4D0
/* 802AB4C8 002A7128 38 60 FF FE */ li r3, -2
/* 802AB4CC 002A712C 48 00 01 9C */ b lbl_802AB668
lbl_802AB4D0:
/* 802AB4D0 002A7130 7F 43 D3 78 */ mr r3, r26
/* 802AB4D4 002A7134 4B FF FD E1 */ bl IsBusyStream
/* 802AB4D8 002A7138 2C 03 00 00 */ cmpwi r3, 0
/* 802AB4DC 002A713C 41 82 00 0C */ beq lbl_802AB4E8
/* 802AB4E0 002A7140 38 60 FF FE */ li r3, -2
/* 802AB4E4 002A7144 48 00 01 84 */ b lbl_802AB668
lbl_802AB4E8:
/* 802AB4E8 002A7148 57 86 1E 38 */ rlwinm r6, r28, 3, 0x18, 0x1c
/* 802AB4EC 002A714C 38 60 00 18 */ li r3, 0x18
/* 802AB4F0 002A7150 38 E0 00 15 */ li r7, 0x15
/* 802AB4F4 002A7154 38 00 00 00 */ li r0, 0
/* 802AB4F8 002A7158 90 61 00 08 */ stw r3, 8(r1)
/* 802AB4FC 002A715C 7F 64 DB 78 */ mr r4, r27
/* 802AB500 002A7160 7F 85 E3 78 */ mr r5, r28
/* 802AB504 002A7164 38 61 00 0D */ addi r3, r1, 0xd
/* 802AB508 002A7168 B0 E1 00 22 */ sth r7, 0x22(r1)
/* 802AB50C 002A716C 98 C1 00 0C */ stb r6, 0xc(r1)
/* 802AB510 002A7170 90 01 00 34 */ stw r0, 0x34(r1)
/* 802AB514 002A7174 4B D5 8A ED */ bl memcpy
/* 802AB518 002A7178 83 C1 00 08 */ lwz r30, 8(r1)
/* 802AB51C 002A717C 81 81 00 0C */ lwz r12, 0xc(r1)
/* 802AB520 002A7180 81 61 00 10 */ lwz r11, 0x10(r1)
/* 802AB524 002A7184 81 41 00 14 */ lwz r10, 0x14(r1)
/* 802AB528 002A7188 81 21 00 18 */ lwz r9, 0x18(r1)
/* 802AB52C 002A718C 81 01 00 1C */ lwz r8, 0x1c(r1)
/* 802AB530 002A7190 80 E1 00 20 */ lwz r7, 0x20(r1)
/* 802AB534 002A7194 80 C1 00 24 */ lwz r6, 0x24(r1)
/* 802AB538 002A7198 80 A1 00 28 */ lwz r5, 0x28(r1)
/* 802AB53C 002A719C 80 81 00 2C */ lwz r4, 0x2c(r1)
/* 802AB540 002A71A0 80 61 00 30 */ lwz r3, 0x30(r1)
/* 802AB544 002A71A4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802AB548 002A71A8 93 C1 00 38 */ stw r30, 0x38(r1)
/* 802AB54C 002A71AC 91 81 00 3C */ stw r12, 0x3c(r1)
/* 802AB550 002A71B0 91 61 00 40 */ stw r11, 0x40(r1)
/* 802AB554 002A71B4 91 41 00 44 */ stw r10, 0x44(r1)
/* 802AB558 002A71B8 91 21 00 48 */ stw r9, 0x48(r1)
/* 802AB55C 002A71BC 91 01 00 4C */ stw r8, 0x4c(r1)
/* 802AB560 002A71C0 90 E1 00 50 */ stw r7, 0x50(r1)
/* 802AB564 002A71C4 90 C1 00 54 */ stw r6, 0x54(r1)
/* 802AB568 002A71C8 90 A1 00 58 */ stw r5, 0x58(r1)
/* 802AB56C 002A71CC 90 81 00 5C */ stw r4, 0x5c(r1)
/* 802AB570 002A71D0 90 61 00 60 */ stw r3, 0x60(r1)
/* 802AB574 002A71D4 90 01 00 64 */ stw r0, 0x64(r1)
/* 802AB578 002A71D8 4B FC 31 E5 */ bl OSDisableInterrupts
/* 802AB57C 002A71DC 7C 7E 1B 78 */ mr r30, r3
/* 802AB580 002A71E0 4B FC 31 DD */ bl OSDisableInterrupts
/* 802AB584 002A71E4 88 9F 01 60 */ lbz r4, 0x160(r31)
/* 802AB588 002A71E8 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB58C 002A71EC 7C 04 00 50 */ subf r0, r4, r0
/* 802AB590 002A71F0 7C 1D 07 75 */ extsb. r29, r0
/* 802AB594 002A71F4 40 80 00 10 */ bge lbl_802AB5A4
/* 802AB598 002A71F8 80 1F 01 68 */ lwz r0, 0x168(r31)
/* 802AB59C 002A71FC 7C 1D 02 14 */ add r0, r29, r0
/* 802AB5A0 002A7200 7C 1D 07 74 */ extsb r29, r0
lbl_802AB5A4:
/* 802AB5A4 002A7204 4B FC 31 E1 */ bl OSRestoreInterrupts
/* 802AB5A8 002A7208 80 7F 01 68 */ lwz r3, 0x168(r31)
/* 802AB5AC 002A720C 38 03 FF FF */ addi r0, r3, -1
/* 802AB5B0 002A7210 7C 00 E8 40 */ cmplw r0, r29
/* 802AB5B4 002A7214 40 82 00 14 */ bne lbl_802AB5C8
/* 802AB5B8 002A7218 7F C3 F3 78 */ mr r3, r30
/* 802AB5BC 002A721C 4B FC 31 C9 */ bl OSRestoreInterrupts
/* 802AB5C0 002A7220 38 00 00 00 */ li r0, 0
/* 802AB5C4 002A7224 48 00 00 7C */ b lbl_802AB640
lbl_802AB5C8:
/* 802AB5C8 002A7228 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB5CC 002A722C 38 80 00 00 */ li r4, 0
/* 802AB5D0 002A7230 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AB5D4 002A7234 38 A0 00 30 */ li r5, 0x30
/* 802AB5D8 002A7238 7C 00 07 74 */ extsb r0, r0
/* 802AB5DC 002A723C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB5E0 002A7240 7C 63 02 14 */ add r3, r3, r0
/* 802AB5E4 002A7244 4B D5 8B 21 */ bl memset
/* 802AB5E8 002A7248 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB5EC 002A724C 38 81 00 38 */ addi r4, r1, 0x38
/* 802AB5F0 002A7250 80 7F 01 64 */ lwz r3, 0x164(r31)
/* 802AB5F4 002A7254 38 A0 00 30 */ li r5, 0x30
/* 802AB5F8 002A7258 7C 00 07 74 */ extsb r0, r0
/* 802AB5FC 002A725C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB600 002A7260 7C 63 02 14 */ add r3, r3, r0
/* 802AB604 002A7264 4B D5 89 FD */ bl memcpy
/* 802AB608 002A7268 88 1F 01 61 */ lbz r0, 0x161(r31)
/* 802AB60C 002A726C 7F C3 F3 78 */ mr r3, r30
/* 802AB610 002A7270 80 9F 01 68 */ lwz r4, 0x168(r31)
/* 802AB614 002A7274 7C 06 07 74 */ extsb r6, r0
/* 802AB618 002A7278 38 84 FF FF */ addi r4, r4, -1
/* 802AB61C 002A727C 7C A4 30 50 */ subf r5, r4, r6
/* 802AB620 002A7280 38 06 00 01 */ addi r0, r6, 1
/* 802AB624 002A7284 7C 86 20 50 */ subf r4, r6, r4
/* 802AB628 002A7288 7C A4 20 F8 */ nor r4, r5, r4
/* 802AB62C 002A728C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AB630 002A7290 7C 00 20 78 */ andc r0, r0, r4
/* 802AB634 002A7294 98 1F 01 61 */ stb r0, 0x161(r31)
/* 802AB638 002A7298 4B FC 31 4D */ bl OSRestoreInterrupts
/* 802AB63C 002A729C 38 00 00 01 */ li r0, 1
lbl_802AB640:
/* 802AB640 002A72A0 2C 00 00 00 */ cmpwi r0, 0
/* 802AB644 002A72A4 40 82 00 0C */ bne lbl_802AB650
/* 802AB648 002A72A8 38 60 FF FE */ li r3, -2
/* 802AB64C 002A72AC 48 00 00 1C */ b lbl_802AB668
lbl_802AB650:
/* 802AB650 002A72B0 4B FC 31 0D */ bl OSDisableInterrupts
/* 802AB654 002A72B4 88 9F 08 CF */ lbz r4, 0x8cf(r31)
/* 802AB658 002A72B8 38 04 00 01 */ addi r0, r4, 1
/* 802AB65C 002A72BC 98 1F 08 CF */ stb r0, 0x8cf(r31)
/* 802AB660 002A72C0 4B FC 31 25 */ bl OSRestoreInterrupts
/* 802AB664 002A72C4 38 60 00 00 */ li r3, 0
lbl_802AB668:
/* 802AB668 002A72C8 39 61 00 80 */ addi r11, r1, 0x80
/* 802AB66C 002A72CC 4B F1 BB 05 */ bl _restgpr_26
/* 802AB670 002A72D0 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802AB674 002A72D4 7C 08 03 A6 */ mtlr r0
/* 802AB678 002A72D8 38 21 00 80 */ addi r1, r1, 0x80
/* 802AB67C 002A72DC 4E 80 00 20 */ blr
.global WPADGetDpdSensitivity
WPADGetDpdSensitivity:
/* 802AB680 002A72E0 88 6D AE 61 */ lbz r3, lbl_80640121-_SDA_BASE_(r13)
/* 802AB684 002A72E4 4E 80 00 20 */ blr
.global WPADIsDpdEnabled
WPADIsDpdEnabled:
/* 802AB688 002A72E8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802AB68C 002A72EC 7C 08 02 A6 */ mflr r0
/* 802AB690 002A72F0 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802AB694 002A72F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802AB698 002A72F8 54 60 10 3A */ slwi r0, r3, 2
/* 802AB69C 002A72FC 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802AB6A0 002A7300 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802AB6A4 002A7304 7F E4 00 2E */ lwzx r31, r4, r0
/* 802AB6A8 002A7308 4B FC 30 B5 */ bl OSDisableInterrupts
/* 802AB6AC 002A730C 83 FF 08 38 */ lwz r31, 0x838(r31)
/* 802AB6B0 002A7310 4B FC 30 D5 */ bl OSRestoreInterrupts
/* 802AB6B4 002A7314 7F E3 FB 78 */ mr r3, r31
/* 802AB6B8 002A7318 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802AB6BC 002A731C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802AB6C0 002A7320 7C 08 03 A6 */ mtlr r0
/* 802AB6C4 002A7324 38 21 00 10 */ addi r1, r1, 0x10
/* 802AB6C8 002A7328 4E 80 00 20 */ blr
__dpdCb:
/* 802AB6CC 002A732C 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802AB6D0 002A7330 54 60 10 3A */ slwi r0, r3, 2
/* 802AB6D4 002A7334 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802AB6D8 002A7338 7C 84 00 2E */ lwzx r4, r4, r0
/* 802AB6DC 002A733C 88 04 08 CC */ lbz r0, 0x8cc(r4)
/* 802AB6E0 002A7340 98 04 08 CB */ stb r0, 0x8cb(r4)
/* 802AB6E4 002A7344 88 64 08 CC */ lbz r3, 0x8cc(r4)
/* 802AB6E8 002A7348 7C 03 00 D0 */ neg r0, r3
/* 802AB6EC 002A734C 7C 00 1B 78 */ or r0, r0, r3
/* 802AB6F0 002A7350 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802AB6F4 002A7354 90 04 08 38 */ stw r0, 0x838(r4)
/* 802AB6F8 002A7358 4E 80 00 20 */ blr
.global WPADControlDpd
WPADControlDpd:
/* 802AB6FC 002A735C 94 21 FB 90 */ stwu r1, -0x470(r1)
/* 802AB700 002A7360 7C 08 02 A6 */ mflr r0
/* 802AB704 002A7364 90 01 04 74 */ stw r0, 0x474(r1)
/* 802AB708 002A7368 39 61 04 70 */ addi r11, r1, 0x470
/* 802AB70C 002A736C 4B F1 BA 11 */ bl _savegpr_24
/* 802AB710 002A7370 3C C0 80 53 */ lis r6, lbl_80536D70@ha
/* 802AB714 002A7374 54 60 10 3A */ slwi r0, r3, 2
/* 802AB718 002A7378 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l
/* 802AB71C 002A737C 7C 7F 1B 78 */ mr r31, r3
/* 802AB720 002A7380 7F A6 00 2E */ lwzx r29, r6, r0
/* 802AB724 002A7384 7C 9B 23 78 */ mr r27, r4
/* 802AB728 002A7388 7C BC 2B 78 */ mr r28, r5
/* 802AB72C 002A738C 4B FC 30 31 */ bl OSDisableInterrupts
/* 802AB730 002A7390 83 5D 08 38 */ lwz r26, 0x838(r29)
/* 802AB734 002A7394 8B 3D 08 CC */ lbz r25, 0x8cc(r29)
/* 802AB738 002A7398 83 1D 08 BC */ lwz r24, 0x8bc(r29)
/* 802AB73C 002A739C 83 DD 08 DC */ lwz r30, 0x8dc(r29)
/* 802AB740 002A73A0 4B FC 30 45 */ bl OSRestoreInterrupts
/* 802AB744 002A73A4 2C 18 FF FF */ cmpwi r24, -1
/* 802AB748 002A73A8 41 82 0F F8 */ beq lbl_802AC740
/* 802AB74C 002A73AC 2C 1E 00 00 */ cmpwi r30, 0
/* 802AB750 002A73B0 40 82 00 0C */ bne lbl_802AB75C
/* 802AB754 002A73B4 3B 00 FF FE */ li r24, -2
/* 802AB758 002A73B8 48 00 0F E8 */ b lbl_802AC740
lbl_802AB75C:
/* 802AB75C 002A73BC 2C 1B 00 00 */ cmpwi r27, 0
/* 802AB760 002A73C0 40 82 04 20 */ bne lbl_802ABB80
/* 802AB764 002A73C4 2C 1A 00 00 */ cmpwi r26, 0
/* 802AB768 002A73C8 40 82 00 0C */ bne lbl_802AB774
/* 802AB76C 002A73CC 3B 00 00 00 */ li r24, 0
/* 802AB770 002A73D0 48 00 0F D0 */ b lbl_802AC740
lbl_802AB774:
/* 802AB774 002A73D4 4B FC 2F E9 */ bl OSDisableInterrupts
/* 802AB778 002A73D8 7C 7E 1B 78 */ mr r30, r3
/* 802AB77C 002A73DC 4B FC 2F E1 */ bl OSDisableInterrupts
/* 802AB780 002A73E0 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AB784 002A73E4 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB788 002A73E8 7C 04 00 50 */ subf r0, r4, r0
/* 802AB78C 002A73EC 7C 1A 07 75 */ extsb. r26, r0
/* 802AB790 002A73F0 40 80 00 10 */ bge lbl_802AB7A0
/* 802AB794 002A73F4 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AB798 002A73F8 7C 1A 02 14 */ add r0, r26, r0
/* 802AB79C 002A73FC 7C 1A 07 74 */ extsb r26, r0
lbl_802AB7A0:
/* 802AB7A0 002A7400 4B FC 2F E5 */ bl OSRestoreInterrupts
/* 802AB7A4 002A7404 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AB7A8 002A7408 38 9A 00 03 */ addi r4, r26, 3
/* 802AB7AC 002A740C 38 03 FF FF */ addi r0, r3, -1
/* 802AB7B0 002A7410 7C 04 00 40 */ cmplw r4, r0
/* 802AB7B4 002A7414 41 81 03 BC */ bgt lbl_802ABB70
/* 802AB7B8 002A7418 39 80 00 00 */ li r12, 0
/* 802AB7BC 002A741C 38 00 00 01 */ li r0, 1
/* 802AB7C0 002A7420 B0 01 04 02 */ sth r0, 0x402(r1)
/* 802AB7C4 002A7424 3B E0 00 13 */ li r31, 0x13
/* 802AB7C8 002A7428 81 41 03 F0 */ lwz r10, 0x3f0(r1)
/* 802AB7CC 002A742C 9B 7D 08 CC */ stb r27, 0x8cc(r29)
/* 802AB7D0 002A7430 81 21 03 F4 */ lwz r9, 0x3f4(r1)
/* 802AB7D4 002A7434 99 81 03 EC */ stb r12, 0x3ec(r1)
/* 802AB7D8 002A7438 81 01 03 F8 */ lwz r8, 0x3f8(r1)
/* 802AB7DC 002A743C 81 61 03 EC */ lwz r11, 0x3ec(r1)
/* 802AB7E0 002A7440 80 E1 03 FC */ lwz r7, 0x3fc(r1)
/* 802AB7E4 002A7444 80 C1 04 00 */ lwz r6, 0x400(r1)
/* 802AB7E8 002A7448 80 A1 04 04 */ lwz r5, 0x404(r1)
/* 802AB7EC 002A744C 80 81 04 08 */ lwz r4, 0x408(r1)
/* 802AB7F0 002A7450 80 61 04 0C */ lwz r3, 0x40c(r1)
/* 802AB7F4 002A7454 80 01 04 10 */ lwz r0, 0x410(r1)
/* 802AB7F8 002A7458 93 E1 03 E8 */ stw r31, 0x3e8(r1)
/* 802AB7FC 002A745C 91 81 04 14 */ stw r12, 0x414(r1)
/* 802AB800 002A7460 93 E1 04 18 */ stw r31, 0x418(r1)
/* 802AB804 002A7464 91 61 04 1C */ stw r11, 0x41c(r1)
/* 802AB808 002A7468 91 41 04 20 */ stw r10, 0x420(r1)
/* 802AB80C 002A746C 91 21 04 24 */ stw r9, 0x424(r1)
/* 802AB810 002A7470 91 01 04 28 */ stw r8, 0x428(r1)
/* 802AB814 002A7474 90 E1 04 2C */ stw r7, 0x42c(r1)
/* 802AB818 002A7478 90 C1 04 30 */ stw r6, 0x430(r1)
/* 802AB81C 002A747C 90 A1 04 34 */ stw r5, 0x434(r1)
/* 802AB820 002A7480 90 81 04 38 */ stw r4, 0x438(r1)
/* 802AB824 002A7484 90 61 04 3C */ stw r3, 0x43c(r1)
/* 802AB828 002A7488 90 01 04 40 */ stw r0, 0x440(r1)
/* 802AB82C 002A748C 91 81 04 44 */ stw r12, 0x444(r1)
/* 802AB830 002A7490 4B FC 2F 2D */ bl OSDisableInterrupts
/* 802AB834 002A7494 7C 7F 1B 78 */ mr r31, r3
/* 802AB838 002A7498 4B FC 2F 25 */ bl OSDisableInterrupts
/* 802AB83C 002A749C 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AB840 002A74A0 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB844 002A74A4 7C 04 00 50 */ subf r0, r4, r0
/* 802AB848 002A74A8 7C 1A 07 75 */ extsb. r26, r0
/* 802AB84C 002A74AC 40 80 00 10 */ bge lbl_802AB85C
/* 802AB850 002A74B0 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AB854 002A74B4 7C 1A 02 14 */ add r0, r26, r0
/* 802AB858 002A74B8 7C 1A 07 74 */ extsb r26, r0
lbl_802AB85C:
/* 802AB85C 002A74BC 4B FC 2F 29 */ bl OSRestoreInterrupts
/* 802AB860 002A74C0 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AB864 002A74C4 38 03 FF FF */ addi r0, r3, -1
/* 802AB868 002A74C8 7C 00 D0 40 */ cmplw r0, r26
/* 802AB86C 002A74CC 40 82 00 10 */ bne lbl_802AB87C
/* 802AB870 002A74D0 7F E3 FB 78 */ mr r3, r31
/* 802AB874 002A74D4 4B FC 2F 11 */ bl OSRestoreInterrupts
/* 802AB878 002A74D8 48 00 00 78 */ b lbl_802AB8F0
lbl_802AB87C:
/* 802AB87C 002A74DC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB880 002A74E0 38 80 00 00 */ li r4, 0
/* 802AB884 002A74E4 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AB888 002A74E8 38 A0 00 30 */ li r5, 0x30
/* 802AB88C 002A74EC 7C 00 07 74 */ extsb r0, r0
/* 802AB890 002A74F0 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB894 002A74F4 7C 63 02 14 */ add r3, r3, r0
/* 802AB898 002A74F8 4B D5 88 6D */ bl memset
/* 802AB89C 002A74FC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB8A0 002A7500 38 81 04 18 */ addi r4, r1, 0x418
/* 802AB8A4 002A7504 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AB8A8 002A7508 38 A0 00 30 */ li r5, 0x30
/* 802AB8AC 002A750C 7C 00 07 74 */ extsb r0, r0
/* 802AB8B0 002A7510 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB8B4 002A7514 7C 63 02 14 */ add r3, r3, r0
/* 802AB8B8 002A7518 4B D5 87 49 */ bl memcpy
/* 802AB8BC 002A751C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB8C0 002A7520 7F E3 FB 78 */ mr r3, r31
/* 802AB8C4 002A7524 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802AB8C8 002A7528 7C 06 07 74 */ extsb r6, r0
/* 802AB8CC 002A752C 38 84 FF FF */ addi r4, r4, -1
/* 802AB8D0 002A7530 7C A4 30 50 */ subf r5, r4, r6
/* 802AB8D4 002A7534 38 06 00 01 */ addi r0, r6, 1
/* 802AB8D8 002A7538 7C 86 20 50 */ subf r4, r6, r4
/* 802AB8DC 002A753C 7C A4 20 F8 */ nor r4, r5, r4
/* 802AB8E0 002A7540 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AB8E4 002A7544 7C 00 20 78 */ andc r0, r0, r4
/* 802AB8E8 002A7548 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802AB8EC 002A754C 4B FC 2E 99 */ bl OSRestoreInterrupts
lbl_802AB8F0:
/* 802AB8F0 002A7550 38 60 00 01 */ li r3, 1
/* 802AB8F4 002A7554 38 00 00 00 */ li r0, 0
/* 802AB8F8 002A7558 B0 61 03 A2 */ sth r3, 0x3a2(r1)
/* 802AB8FC 002A755C 3B 60 00 1A */ li r27, 0x1a
/* 802AB900 002A7560 81 41 03 90 */ lwz r10, 0x390(r1)
/* 802AB904 002A7564 3D 80 80 2B */ lis r12, __dpdCb@ha
/* 802AB908 002A7568 98 01 03 8C */ stb r0, 0x38c(r1)
/* 802AB90C 002A756C 39 8C B6 CC */ addi r12, r12, __dpdCb@l
/* 802AB910 002A7570 81 21 03 94 */ lwz r9, 0x394(r1)
/* 802AB914 002A7574 81 61 03 8C */ lwz r11, 0x38c(r1)
/* 802AB918 002A7578 81 01 03 98 */ lwz r8, 0x398(r1)
/* 802AB91C 002A757C 80 E1 03 9C */ lwz r7, 0x39c(r1)
/* 802AB920 002A7580 80 C1 03 A0 */ lwz r6, 0x3a0(r1)
/* 802AB924 002A7584 80 A1 03 A4 */ lwz r5, 0x3a4(r1)
/* 802AB928 002A7588 80 81 03 A8 */ lwz r4, 0x3a8(r1)
/* 802AB92C 002A758C 80 61 03 AC */ lwz r3, 0x3ac(r1)
/* 802AB930 002A7590 80 01 03 B0 */ lwz r0, 0x3b0(r1)
/* 802AB934 002A7594 93 61 03 88 */ stw r27, 0x388(r1)
/* 802AB938 002A7598 91 81 03 B4 */ stw r12, 0x3b4(r1)
/* 802AB93C 002A759C 93 61 03 B8 */ stw r27, 0x3b8(r1)
/* 802AB940 002A75A0 91 61 03 BC */ stw r11, 0x3bc(r1)
/* 802AB944 002A75A4 91 41 03 C0 */ stw r10, 0x3c0(r1)
/* 802AB948 002A75A8 91 21 03 C4 */ stw r9, 0x3c4(r1)
/* 802AB94C 002A75AC 91 01 03 C8 */ stw r8, 0x3c8(r1)
/* 802AB950 002A75B0 90 E1 03 CC */ stw r7, 0x3cc(r1)
/* 802AB954 002A75B4 90 C1 03 D0 */ stw r6, 0x3d0(r1)
/* 802AB958 002A75B8 90 A1 03 D4 */ stw r5, 0x3d4(r1)
/* 802AB95C 002A75BC 90 81 03 D8 */ stw r4, 0x3d8(r1)
/* 802AB960 002A75C0 90 61 03 DC */ stw r3, 0x3dc(r1)
/* 802AB964 002A75C4 90 01 03 E0 */ stw r0, 0x3e0(r1)
/* 802AB968 002A75C8 91 81 03 E4 */ stw r12, 0x3e4(r1)
/* 802AB96C 002A75CC 4B FC 2D F1 */ bl OSDisableInterrupts
/* 802AB970 002A75D0 7C 7F 1B 78 */ mr r31, r3
/* 802AB974 002A75D4 4B FC 2D E9 */ bl OSDisableInterrupts
/* 802AB978 002A75D8 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AB97C 002A75DC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB980 002A75E0 7C 04 00 50 */ subf r0, r4, r0
/* 802AB984 002A75E4 7C 1A 07 75 */ extsb. r26, r0
/* 802AB988 002A75E8 40 80 00 10 */ bge lbl_802AB998
/* 802AB98C 002A75EC 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AB990 002A75F0 7C 1A 02 14 */ add r0, r26, r0
/* 802AB994 002A75F4 7C 1A 07 74 */ extsb r26, r0
lbl_802AB998:
/* 802AB998 002A75F8 4B FC 2D ED */ bl OSRestoreInterrupts
/* 802AB99C 002A75FC 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AB9A0 002A7600 38 03 FF FF */ addi r0, r3, -1
/* 802AB9A4 002A7604 7C 00 D0 40 */ cmplw r0, r26
/* 802AB9A8 002A7608 40 82 00 10 */ bne lbl_802AB9B8
/* 802AB9AC 002A760C 7F E3 FB 78 */ mr r3, r31
/* 802AB9B0 002A7610 4B FC 2D D5 */ bl OSRestoreInterrupts
/* 802AB9B4 002A7614 48 00 00 78 */ b lbl_802ABA2C
lbl_802AB9B8:
/* 802AB9B8 002A7618 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB9BC 002A761C 38 80 00 00 */ li r4, 0
/* 802AB9C0 002A7620 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AB9C4 002A7624 38 A0 00 30 */ li r5, 0x30
/* 802AB9C8 002A7628 7C 00 07 74 */ extsb r0, r0
/* 802AB9CC 002A762C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB9D0 002A7630 7C 63 02 14 */ add r3, r3, r0
/* 802AB9D4 002A7634 4B D5 87 31 */ bl memset
/* 802AB9D8 002A7638 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB9DC 002A763C 38 81 03 B8 */ addi r4, r1, 0x3b8
/* 802AB9E0 002A7640 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AB9E4 002A7644 38 A0 00 30 */ li r5, 0x30
/* 802AB9E8 002A7648 7C 00 07 74 */ extsb r0, r0
/* 802AB9EC 002A764C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AB9F0 002A7650 7C 63 02 14 */ add r3, r3, r0
/* 802AB9F4 002A7654 4B D5 86 0D */ bl memcpy
/* 802AB9F8 002A7658 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AB9FC 002A765C 7F E3 FB 78 */ mr r3, r31
/* 802ABA00 002A7660 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802ABA04 002A7664 7C 06 07 74 */ extsb r6, r0
/* 802ABA08 002A7668 38 84 FF FF */ addi r4, r4, -1
/* 802ABA0C 002A766C 7C A4 30 50 */ subf r5, r4, r6
/* 802ABA10 002A7670 38 06 00 01 */ addi r0, r6, 1
/* 802ABA14 002A7674 7C 86 20 50 */ subf r4, r6, r4
/* 802ABA18 002A7678 7C A4 20 F8 */ nor r4, r5, r4
/* 802ABA1C 002A767C 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ABA20 002A7680 7C 00 20 78 */ andc r0, r0, r4
/* 802ABA24 002A7684 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802ABA28 002A7688 4B FC 2D 5D */ bl OSRestoreInterrupts
lbl_802ABA2C:
/* 802ABA2C 002A768C 39 60 00 00 */ li r11, 0
/* 802ABA30 002A7690 38 00 00 01 */ li r0, 1
/* 802ABA34 002A7694 B0 01 03 42 */ sth r0, 0x342(r1)
/* 802ABA38 002A7698 39 80 00 15 */ li r12, 0x15
/* 802ABA3C 002A769C 81 21 03 30 */ lwz r9, 0x330(r1)
/* 802ABA40 002A76A0 99 61 03 2C */ stb r11, 0x32c(r1)
/* 802ABA44 002A76A4 81 01 03 34 */ lwz r8, 0x334(r1)
/* 802ABA48 002A76A8 81 41 03 2C */ lwz r10, 0x32c(r1)
/* 802ABA4C 002A76AC 80 E1 03 38 */ lwz r7, 0x338(r1)
/* 802ABA50 002A76B0 80 C1 03 3C */ lwz r6, 0x33c(r1)
/* 802ABA54 002A76B4 80 A1 03 40 */ lwz r5, 0x340(r1)
/* 802ABA58 002A76B8 80 81 03 44 */ lwz r4, 0x344(r1)
/* 802ABA5C 002A76BC 80 61 03 48 */ lwz r3, 0x348(r1)
/* 802ABA60 002A76C0 80 01 03 4C */ lwz r0, 0x34c(r1)
/* 802ABA64 002A76C4 91 81 03 28 */ stw r12, 0x328(r1)
/* 802ABA68 002A76C8 93 81 03 54 */ stw r28, 0x354(r1)
/* 802ABA6C 002A76CC 91 61 03 50 */ stw r11, 0x350(r1)
/* 802ABA70 002A76D0 91 81 03 58 */ stw r12, 0x358(r1)
/* 802ABA74 002A76D4 91 41 03 5C */ stw r10, 0x35c(r1)
/* 802ABA78 002A76D8 91 21 03 60 */ stw r9, 0x360(r1)
/* 802ABA7C 002A76DC 91 01 03 64 */ stw r8, 0x364(r1)
/* 802ABA80 002A76E0 90 E1 03 68 */ stw r7, 0x368(r1)
/* 802ABA84 002A76E4 90 C1 03 6C */ stw r6, 0x36c(r1)
/* 802ABA88 002A76E8 90 A1 03 70 */ stw r5, 0x370(r1)
/* 802ABA8C 002A76EC 90 81 03 74 */ stw r4, 0x374(r1)
/* 802ABA90 002A76F0 90 61 03 78 */ stw r3, 0x378(r1)
/* 802ABA94 002A76F4 90 01 03 7C */ stw r0, 0x37c(r1)
/* 802ABA98 002A76F8 91 61 03 80 */ stw r11, 0x380(r1)
/* 802ABA9C 002A76FC 93 81 03 84 */ stw r28, 0x384(r1)
/* 802ABAA0 002A7700 4B FC 2C BD */ bl OSDisableInterrupts
/* 802ABAA4 002A7704 7C 7F 1B 78 */ mr r31, r3
/* 802ABAA8 002A7708 4B FC 2C B5 */ bl OSDisableInterrupts
/* 802ABAAC 002A770C 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802ABAB0 002A7710 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABAB4 002A7714 7C 04 00 50 */ subf r0, r4, r0
/* 802ABAB8 002A7718 7C 1A 07 75 */ extsb. r26, r0
/* 802ABABC 002A771C 40 80 00 10 */ bge lbl_802ABACC
/* 802ABAC0 002A7720 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802ABAC4 002A7724 7C 1A 02 14 */ add r0, r26, r0
/* 802ABAC8 002A7728 7C 1A 07 74 */ extsb r26, r0
lbl_802ABACC:
/* 802ABACC 002A772C 4B FC 2C B9 */ bl OSRestoreInterrupts
/* 802ABAD0 002A7730 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802ABAD4 002A7734 38 03 FF FF */ addi r0, r3, -1
/* 802ABAD8 002A7738 7C 00 D0 40 */ cmplw r0, r26
/* 802ABADC 002A773C 40 82 00 10 */ bne lbl_802ABAEC
/* 802ABAE0 002A7740 7F E3 FB 78 */ mr r3, r31
/* 802ABAE4 002A7744 4B FC 2C A1 */ bl OSRestoreInterrupts
/* 802ABAE8 002A7748 48 00 00 78 */ b lbl_802ABB60
lbl_802ABAEC:
/* 802ABAEC 002A774C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABAF0 002A7750 38 80 00 00 */ li r4, 0
/* 802ABAF4 002A7754 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABAF8 002A7758 38 A0 00 30 */ li r5, 0x30
/* 802ABAFC 002A775C 7C 00 07 74 */ extsb r0, r0
/* 802ABB00 002A7760 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABB04 002A7764 7C 63 02 14 */ add r3, r3, r0
/* 802ABB08 002A7768 4B D5 85 FD */ bl memset
/* 802ABB0C 002A776C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABB10 002A7770 38 81 03 58 */ addi r4, r1, 0x358
/* 802ABB14 002A7774 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABB18 002A7778 38 A0 00 30 */ li r5, 0x30
/* 802ABB1C 002A777C 7C 00 07 74 */ extsb r0, r0
/* 802ABB20 002A7780 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABB24 002A7784 7C 63 02 14 */ add r3, r3, r0
/* 802ABB28 002A7788 4B D5 84 D9 */ bl memcpy
/* 802ABB2C 002A778C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABB30 002A7790 7F E3 FB 78 */ mr r3, r31
/* 802ABB34 002A7794 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802ABB38 002A7798 7C 06 07 74 */ extsb r6, r0
/* 802ABB3C 002A779C 38 84 FF FF */ addi r4, r4, -1
/* 802ABB40 002A77A0 7C A4 30 50 */ subf r5, r4, r6
/* 802ABB44 002A77A4 38 06 00 01 */ addi r0, r6, 1
/* 802ABB48 002A77A8 7C 86 20 50 */ subf r4, r6, r4
/* 802ABB4C 002A77AC 7C A4 20 F8 */ nor r4, r5, r4
/* 802ABB50 002A77B0 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ABB54 002A77B4 7C 00 20 78 */ andc r0, r0, r4
/* 802ABB58 002A77B8 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802ABB5C 002A77BC 4B FC 2C 29 */ bl OSRestoreInterrupts
lbl_802ABB60:
/* 802ABB60 002A77C0 7F C3 F3 78 */ mr r3, r30
/* 802ABB64 002A77C4 4B FC 2C 21 */ bl OSRestoreInterrupts
/* 802ABB68 002A77C8 38 60 00 00 */ li r3, 0
/* 802ABB6C 002A77CC 48 00 0B F4 */ b lbl_802AC760
lbl_802ABB70:
/* 802ABB70 002A77D0 7F C3 F3 78 */ mr r3, r30
/* 802ABB74 002A77D4 3B 00 FF FE */ li r24, -2
/* 802ABB78 002A77D8 4B FC 2C 0D */ bl OSRestoreInterrupts
/* 802ABB7C 002A77DC 48 00 0B C4 */ b lbl_802AC740
lbl_802ABB80:
/* 802ABB80 002A77E0 7C 1B C8 40 */ cmplw r27, r25
/* 802ABB84 002A77E4 41 82 0B BC */ beq lbl_802AC740
/* 802ABB88 002A77E8 4B FC 2B D5 */ bl OSDisableInterrupts
/* 802ABB8C 002A77EC 7C 7E 1B 78 */ mr r30, r3
/* 802ABB90 002A77F0 4B FC 2B CD */ bl OSDisableInterrupts
/* 802ABB94 002A77F4 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802ABB98 002A77F8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABB9C 002A77FC 7C 04 00 50 */ subf r0, r4, r0
/* 802ABBA0 002A7800 7C 1A 07 75 */ extsb. r26, r0
/* 802ABBA4 002A7804 40 80 00 10 */ bge lbl_802ABBB4
/* 802ABBA8 002A7808 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802ABBAC 002A780C 7C 1A 02 14 */ add r0, r26, r0
/* 802ABBB0 002A7810 7C 1A 07 74 */ extsb r26, r0
lbl_802ABBB4:
/* 802ABBB4 002A7814 4B FC 2B D1 */ bl OSRestoreInterrupts
/* 802ABBB8 002A7818 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802ABBBC 002A781C 38 9A 00 08 */ addi r4, r26, 8
/* 802ABBC0 002A7820 38 03 FF FF */ addi r0, r3, -1
/* 802ABBC4 002A7824 7C 04 00 40 */ cmplw r4, r0
/* 802ABBC8 002A7828 41 81 0B 6C */ bgt lbl_802AC734
/* 802ABBCC 002A782C 38 60 00 01 */ li r3, 1
/* 802ABBD0 002A7830 38 00 00 04 */ li r0, 4
/* 802ABBD4 002A7834 B0 61 02 E2 */ sth r3, 0x2e2(r1)
/* 802ABBD8 002A7838 3B E0 00 13 */ li r31, 0x13
/* 802ABBDC 002A783C 39 80 00 00 */ li r12, 0
/* 802ABBE0 002A7840 81 41 02 D0 */ lwz r10, 0x2d0(r1)
/* 802ABBE4 002A7844 9B 7D 08 CC */ stb r27, 0x8cc(r29)
/* 802ABBE8 002A7848 81 21 02 D4 */ lwz r9, 0x2d4(r1)
/* 802ABBEC 002A784C 98 01 02 CC */ stb r0, 0x2cc(r1)
/* 802ABBF0 002A7850 81 01 02 D8 */ lwz r8, 0x2d8(r1)
/* 802ABBF4 002A7854 81 61 02 CC */ lwz r11, 0x2cc(r1)
/* 802ABBF8 002A7858 80 E1 02 DC */ lwz r7, 0x2dc(r1)
/* 802ABBFC 002A785C 80 C1 02 E0 */ lwz r6, 0x2e0(r1)
/* 802ABC00 002A7860 80 A1 02 E4 */ lwz r5, 0x2e4(r1)
/* 802ABC04 002A7864 80 81 02 E8 */ lwz r4, 0x2e8(r1)
/* 802ABC08 002A7868 80 61 02 EC */ lwz r3, 0x2ec(r1)
/* 802ABC0C 002A786C 80 01 02 F0 */ lwz r0, 0x2f0(r1)
/* 802ABC10 002A7870 93 E1 02 C8 */ stw r31, 0x2c8(r1)
/* 802ABC14 002A7874 91 81 02 F4 */ stw r12, 0x2f4(r1)
/* 802ABC18 002A7878 93 E1 02 F8 */ stw r31, 0x2f8(r1)
/* 802ABC1C 002A787C 91 61 02 FC */ stw r11, 0x2fc(r1)
/* 802ABC20 002A7880 91 41 03 00 */ stw r10, 0x300(r1)
/* 802ABC24 002A7884 91 21 03 04 */ stw r9, 0x304(r1)
/* 802ABC28 002A7888 91 01 03 08 */ stw r8, 0x308(r1)
/* 802ABC2C 002A788C 90 E1 03 0C */ stw r7, 0x30c(r1)
/* 802ABC30 002A7890 90 C1 03 10 */ stw r6, 0x310(r1)
/* 802ABC34 002A7894 90 A1 03 14 */ stw r5, 0x314(r1)
/* 802ABC38 002A7898 90 81 03 18 */ stw r4, 0x318(r1)
/* 802ABC3C 002A789C 90 61 03 1C */ stw r3, 0x31c(r1)
/* 802ABC40 002A78A0 90 01 03 20 */ stw r0, 0x320(r1)
/* 802ABC44 002A78A4 91 81 03 24 */ stw r12, 0x324(r1)
/* 802ABC48 002A78A8 4B FC 2B 15 */ bl OSDisableInterrupts
/* 802ABC4C 002A78AC 7C 7F 1B 78 */ mr r31, r3
/* 802ABC50 002A78B0 4B FC 2B 0D */ bl OSDisableInterrupts
/* 802ABC54 002A78B4 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802ABC58 002A78B8 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABC5C 002A78BC 7C 04 00 50 */ subf r0, r4, r0
/* 802ABC60 002A78C0 7C 1A 07 75 */ extsb. r26, r0
/* 802ABC64 002A78C4 40 80 00 10 */ bge lbl_802ABC74
/* 802ABC68 002A78C8 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802ABC6C 002A78CC 7C 1A 02 14 */ add r0, r26, r0
/* 802ABC70 002A78D0 7C 1A 07 74 */ extsb r26, r0
lbl_802ABC74:
/* 802ABC74 002A78D4 4B FC 2B 11 */ bl OSRestoreInterrupts
/* 802ABC78 002A78D8 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802ABC7C 002A78DC 38 03 FF FF */ addi r0, r3, -1
/* 802ABC80 002A78E0 7C 00 D0 40 */ cmplw r0, r26
/* 802ABC84 002A78E4 40 82 00 10 */ bne lbl_802ABC94
/* 802ABC88 002A78E8 7F E3 FB 78 */ mr r3, r31
/* 802ABC8C 002A78EC 4B FC 2A F9 */ bl OSRestoreInterrupts
/* 802ABC90 002A78F0 48 00 00 78 */ b lbl_802ABD08
lbl_802ABC94:
/* 802ABC94 002A78F4 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABC98 002A78F8 38 80 00 00 */ li r4, 0
/* 802ABC9C 002A78FC 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABCA0 002A7900 38 A0 00 30 */ li r5, 0x30
/* 802ABCA4 002A7904 7C 00 07 74 */ extsb r0, r0
/* 802ABCA8 002A7908 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABCAC 002A790C 7C 63 02 14 */ add r3, r3, r0
/* 802ABCB0 002A7910 4B D5 84 55 */ bl memset
/* 802ABCB4 002A7914 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABCB8 002A7918 38 81 02 F8 */ addi r4, r1, 0x2f8
/* 802ABCBC 002A791C 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABCC0 002A7920 38 A0 00 30 */ li r5, 0x30
/* 802ABCC4 002A7924 7C 00 07 74 */ extsb r0, r0
/* 802ABCC8 002A7928 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABCCC 002A792C 7C 63 02 14 */ add r3, r3, r0
/* 802ABCD0 002A7930 4B D5 83 31 */ bl memcpy
/* 802ABCD4 002A7934 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABCD8 002A7938 7F E3 FB 78 */ mr r3, r31
/* 802ABCDC 002A793C 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802ABCE0 002A7940 7C 06 07 74 */ extsb r6, r0
/* 802ABCE4 002A7944 38 84 FF FF */ addi r4, r4, -1
/* 802ABCE8 002A7948 7C A4 30 50 */ subf r5, r4, r6
/* 802ABCEC 002A794C 38 06 00 01 */ addi r0, r6, 1
/* 802ABCF0 002A7950 7C 86 20 50 */ subf r4, r6, r4
/* 802ABCF4 002A7954 7C A4 20 F8 */ nor r4, r5, r4
/* 802ABCF8 002A7958 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ABCFC 002A795C 7C 00 20 78 */ andc r0, r0, r4
/* 802ABD00 002A7960 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802ABD04 002A7964 4B FC 2A 81 */ bl OSRestoreInterrupts
lbl_802ABD08:
/* 802ABD08 002A7968 38 60 00 01 */ li r3, 1
/* 802ABD0C 002A796C 38 00 00 04 */ li r0, 4
/* 802ABD10 002A7970 B0 61 02 82 */ sth r3, 0x282(r1)
/* 802ABD14 002A7974 3B E0 00 1A */ li r31, 0x1a
/* 802ABD18 002A7978 39 80 00 00 */ li r12, 0
/* 802ABD1C 002A797C 81 41 02 70 */ lwz r10, 0x270(r1)
/* 802ABD20 002A7980 98 01 02 6C */ stb r0, 0x26c(r1)
/* 802ABD24 002A7984 81 21 02 74 */ lwz r9, 0x274(r1)
/* 802ABD28 002A7988 81 61 02 6C */ lwz r11, 0x26c(r1)
/* 802ABD2C 002A798C 81 01 02 78 */ lwz r8, 0x278(r1)
/* 802ABD30 002A7990 80 E1 02 7C */ lwz r7, 0x27c(r1)
/* 802ABD34 002A7994 80 C1 02 80 */ lwz r6, 0x280(r1)
/* 802ABD38 002A7998 80 A1 02 84 */ lwz r5, 0x284(r1)
/* 802ABD3C 002A799C 80 81 02 88 */ lwz r4, 0x288(r1)
/* 802ABD40 002A79A0 80 61 02 8C */ lwz r3, 0x28c(r1)
/* 802ABD44 002A79A4 80 01 02 90 */ lwz r0, 0x290(r1)
/* 802ABD48 002A79A8 93 E1 02 68 */ stw r31, 0x268(r1)
/* 802ABD4C 002A79AC 91 81 02 94 */ stw r12, 0x294(r1)
/* 802ABD50 002A79B0 93 E1 02 98 */ stw r31, 0x298(r1)
/* 802ABD54 002A79B4 91 61 02 9C */ stw r11, 0x29c(r1)
/* 802ABD58 002A79B8 91 41 02 A0 */ stw r10, 0x2a0(r1)
/* 802ABD5C 002A79BC 91 21 02 A4 */ stw r9, 0x2a4(r1)
/* 802ABD60 002A79C0 91 01 02 A8 */ stw r8, 0x2a8(r1)
/* 802ABD64 002A79C4 90 E1 02 AC */ stw r7, 0x2ac(r1)
/* 802ABD68 002A79C8 90 C1 02 B0 */ stw r6, 0x2b0(r1)
/* 802ABD6C 002A79CC 90 A1 02 B4 */ stw r5, 0x2b4(r1)
/* 802ABD70 002A79D0 90 81 02 B8 */ stw r4, 0x2b8(r1)
/* 802ABD74 002A79D4 90 61 02 BC */ stw r3, 0x2bc(r1)
/* 802ABD78 002A79D8 90 01 02 C0 */ stw r0, 0x2c0(r1)
/* 802ABD7C 002A79DC 91 81 02 C4 */ stw r12, 0x2c4(r1)
/* 802ABD80 002A79E0 4B FC 29 DD */ bl OSDisableInterrupts
/* 802ABD84 002A79E4 7C 7F 1B 78 */ mr r31, r3
/* 802ABD88 002A79E8 4B FC 29 D5 */ bl OSDisableInterrupts
/* 802ABD8C 002A79EC 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802ABD90 002A79F0 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABD94 002A79F4 7C 04 00 50 */ subf r0, r4, r0
/* 802ABD98 002A79F8 7C 1A 07 75 */ extsb. r26, r0
/* 802ABD9C 002A79FC 40 80 00 10 */ bge lbl_802ABDAC
/* 802ABDA0 002A7A00 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802ABDA4 002A7A04 7C 1A 02 14 */ add r0, r26, r0
/* 802ABDA8 002A7A08 7C 1A 07 74 */ extsb r26, r0
lbl_802ABDAC:
/* 802ABDAC 002A7A0C 4B FC 29 D9 */ bl OSRestoreInterrupts
/* 802ABDB0 002A7A10 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802ABDB4 002A7A14 38 03 FF FF */ addi r0, r3, -1
/* 802ABDB8 002A7A18 7C 00 D0 40 */ cmplw r0, r26
/* 802ABDBC 002A7A1C 40 82 00 10 */ bne lbl_802ABDCC
/* 802ABDC0 002A7A20 7F E3 FB 78 */ mr r3, r31
/* 802ABDC4 002A7A24 4B FC 29 C1 */ bl OSRestoreInterrupts
/* 802ABDC8 002A7A28 48 00 00 78 */ b lbl_802ABE40
lbl_802ABDCC:
/* 802ABDCC 002A7A2C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABDD0 002A7A30 38 80 00 00 */ li r4, 0
/* 802ABDD4 002A7A34 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABDD8 002A7A38 38 A0 00 30 */ li r5, 0x30
/* 802ABDDC 002A7A3C 7C 00 07 74 */ extsb r0, r0
/* 802ABDE0 002A7A40 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABDE4 002A7A44 7C 63 02 14 */ add r3, r3, r0
/* 802ABDE8 002A7A48 4B D5 83 1D */ bl memset
/* 802ABDEC 002A7A4C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABDF0 002A7A50 38 81 02 98 */ addi r4, r1, 0x298
/* 802ABDF4 002A7A54 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABDF8 002A7A58 38 A0 00 30 */ li r5, 0x30
/* 802ABDFC 002A7A5C 7C 00 07 74 */ extsb r0, r0
/* 802ABE00 002A7A60 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABE04 002A7A64 7C 63 02 14 */ add r3, r3, r0
/* 802ABE08 002A7A68 4B D5 81 F9 */ bl memcpy
/* 802ABE0C 002A7A6C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABE10 002A7A70 7F E3 FB 78 */ mr r3, r31
/* 802ABE14 002A7A74 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802ABE18 002A7A78 7C 06 07 74 */ extsb r6, r0
/* 802ABE1C 002A7A7C 38 84 FF FF */ addi r4, r4, -1
/* 802ABE20 002A7A80 7C A4 30 50 */ subf r5, r4, r6
/* 802ABE24 002A7A84 38 06 00 01 */ addi r0, r6, 1
/* 802ABE28 002A7A88 7C 86 20 50 */ subf r4, r6, r4
/* 802ABE2C 002A7A8C 7C A4 20 F8 */ nor r4, r5, r4
/* 802ABE30 002A7A90 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ABE34 002A7A94 7C 00 20 78 */ andc r0, r0, r4
/* 802ABE38 002A7A98 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802ABE3C 002A7A9C 4B FC 29 49 */ bl OSRestoreInterrupts
lbl_802ABE40:
/* 802ABE40 002A7AA0 3C 60 04 B0 */ lis r3, 0x04B00030@ha
/* 802ABE44 002A7AA4 39 20 00 01 */ li r9, 1
/* 802ABE48 002A7AA8 39 03 00 30 */ addi r8, r3, 0x04B00030@l
/* 802ABE4C 002A7AAC 38 E0 00 16 */ li r7, 0x16
/* 802ABE50 002A7AB0 38 C0 00 15 */ li r6, 0x15
/* 802ABE54 002A7AB4 38 00 00 00 */ li r0, 0
/* 802ABE58 002A7AB8 99 21 00 0F */ stb r9, 0xf(r1)
/* 802ABE5C 002A7ABC 38 61 02 3C */ addi r3, r1, 0x23c
/* 802ABE60 002A7AC0 38 81 00 20 */ addi r4, r1, 0x20
/* 802ABE64 002A7AC4 38 A0 00 04 */ li r5, 4
/* 802ABE68 002A7AC8 91 01 00 20 */ stw r8, 0x20(r1)
/* 802ABE6C 002A7ACC 99 21 00 0E */ stb r9, 0xe(r1)
/* 802ABE70 002A7AD0 90 E1 02 38 */ stw r7, 0x238(r1)
/* 802ABE74 002A7AD4 B0 C1 02 52 */ sth r6, 0x252(r1)
/* 802ABE78 002A7AD8 90 01 02 64 */ stw r0, 0x264(r1)
/* 802ABE7C 002A7ADC 4B D5 81 85 */ bl memcpy
/* 802ABE80 002A7AE0 38 61 02 40 */ addi r3, r1, 0x240
/* 802ABE84 002A7AE4 38 81 00 0E */ addi r4, r1, 0xe
/* 802ABE88 002A7AE8 38 A0 00 01 */ li r5, 1
/* 802ABE8C 002A7AEC 4B D5 81 75 */ bl memcpy
/* 802ABE90 002A7AF0 38 61 02 41 */ addi r3, r1, 0x241
/* 802ABE94 002A7AF4 38 81 00 0F */ addi r4, r1, 0xf
/* 802ABE98 002A7AF8 38 A0 00 01 */ li r5, 1
/* 802ABE9C 002A7AFC 4B D5 81 65 */ bl memcpy
/* 802ABEA0 002A7B00 83 E1 02 38 */ lwz r31, 0x238(r1)
/* 802ABEA4 002A7B04 81 81 02 3C */ lwz r12, 0x23c(r1)
/* 802ABEA8 002A7B08 81 61 02 40 */ lwz r11, 0x240(r1)
/* 802ABEAC 002A7B0C 81 41 02 44 */ lwz r10, 0x244(r1)
/* 802ABEB0 002A7B10 81 21 02 48 */ lwz r9, 0x248(r1)
/* 802ABEB4 002A7B14 81 01 02 4C */ lwz r8, 0x24c(r1)
/* 802ABEB8 002A7B18 80 E1 02 50 */ lwz r7, 0x250(r1)
/* 802ABEBC 002A7B1C 80 C1 02 54 */ lwz r6, 0x254(r1)
/* 802ABEC0 002A7B20 80 A1 02 58 */ lwz r5, 0x258(r1)
/* 802ABEC4 002A7B24 80 81 02 5C */ lwz r4, 0x25c(r1)
/* 802ABEC8 002A7B28 80 61 02 60 */ lwz r3, 0x260(r1)
/* 802ABECC 002A7B2C 80 01 02 64 */ lwz r0, 0x264(r1)
/* 802ABED0 002A7B30 93 E1 02 08 */ stw r31, 0x208(r1)
/* 802ABED4 002A7B34 91 81 02 0C */ stw r12, 0x20c(r1)
/* 802ABED8 002A7B38 91 61 02 10 */ stw r11, 0x210(r1)
/* 802ABEDC 002A7B3C 91 41 02 14 */ stw r10, 0x214(r1)
/* 802ABEE0 002A7B40 91 21 02 18 */ stw r9, 0x218(r1)
/* 802ABEE4 002A7B44 91 01 02 1C */ stw r8, 0x21c(r1)
/* 802ABEE8 002A7B48 90 E1 02 20 */ stw r7, 0x220(r1)
/* 802ABEEC 002A7B4C 90 C1 02 24 */ stw r6, 0x224(r1)
/* 802ABEF0 002A7B50 90 A1 02 28 */ stw r5, 0x228(r1)
/* 802ABEF4 002A7B54 90 81 02 2C */ stw r4, 0x22c(r1)
/* 802ABEF8 002A7B58 90 61 02 30 */ stw r3, 0x230(r1)
/* 802ABEFC 002A7B5C 90 01 02 34 */ stw r0, 0x234(r1)
/* 802ABF00 002A7B60 4B FC 28 5D */ bl OSDisableInterrupts
/* 802ABF04 002A7B64 7C 7F 1B 78 */ mr r31, r3
/* 802ABF08 002A7B68 4B FC 28 55 */ bl OSDisableInterrupts
/* 802ABF0C 002A7B6C 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802ABF10 002A7B70 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABF14 002A7B74 7C 04 00 50 */ subf r0, r4, r0
/* 802ABF18 002A7B78 7C 1A 07 75 */ extsb. r26, r0
/* 802ABF1C 002A7B7C 40 80 00 10 */ bge lbl_802ABF2C
/* 802ABF20 002A7B80 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802ABF24 002A7B84 7C 1A 02 14 */ add r0, r26, r0
/* 802ABF28 002A7B88 7C 1A 07 74 */ extsb r26, r0
lbl_802ABF2C:
/* 802ABF2C 002A7B8C 4B FC 28 59 */ bl OSRestoreInterrupts
/* 802ABF30 002A7B90 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802ABF34 002A7B94 38 03 FF FF */ addi r0, r3, -1
/* 802ABF38 002A7B98 7C 00 D0 40 */ cmplw r0, r26
/* 802ABF3C 002A7B9C 40 82 00 10 */ bne lbl_802ABF4C
/* 802ABF40 002A7BA0 7F E3 FB 78 */ mr r3, r31
/* 802ABF44 002A7BA4 4B FC 28 41 */ bl OSRestoreInterrupts
/* 802ABF48 002A7BA8 48 00 00 78 */ b lbl_802ABFC0
lbl_802ABF4C:
/* 802ABF4C 002A7BAC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABF50 002A7BB0 38 80 00 00 */ li r4, 0
/* 802ABF54 002A7BB4 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABF58 002A7BB8 38 A0 00 30 */ li r5, 0x30
/* 802ABF5C 002A7BBC 7C 00 07 74 */ extsb r0, r0
/* 802ABF60 002A7BC0 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABF64 002A7BC4 7C 63 02 14 */ add r3, r3, r0
/* 802ABF68 002A7BC8 4B D5 81 9D */ bl memset
/* 802ABF6C 002A7BCC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABF70 002A7BD0 38 81 02 08 */ addi r4, r1, 0x208
/* 802ABF74 002A7BD4 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802ABF78 002A7BD8 38 A0 00 30 */ li r5, 0x30
/* 802ABF7C 002A7BDC 7C 00 07 74 */ extsb r0, r0
/* 802ABF80 002A7BE0 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ABF84 002A7BE4 7C 63 02 14 */ add r3, r3, r0
/* 802ABF88 002A7BE8 4B D5 80 79 */ bl memcpy
/* 802ABF8C 002A7BEC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802ABF90 002A7BF0 7F E3 FB 78 */ mr r3, r31
/* 802ABF94 002A7BF4 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802ABF98 002A7BF8 7C 06 07 74 */ extsb r6, r0
/* 802ABF9C 002A7BFC 38 84 FF FF */ addi r4, r4, -1
/* 802ABFA0 002A7C00 7C A4 30 50 */ subf r5, r4, r6
/* 802ABFA4 002A7C04 38 06 00 01 */ addi r0, r6, 1
/* 802ABFA8 002A7C08 7C 86 20 50 */ subf r4, r6, r4
/* 802ABFAC 002A7C0C 7C A4 20 F8 */ nor r4, r5, r4
/* 802ABFB0 002A7C10 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ABFB4 002A7C14 7C 00 20 78 */ andc r0, r0, r4
/* 802ABFB8 002A7C18 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802ABFBC 002A7C1C 4B FC 27 C9 */ bl OSRestoreInterrupts
lbl_802ABFC0:
/* 802ABFC0 002A7C20 88 AD AE 61 */ lbz r5, lbl_80640121-_SDA_BASE_(r13)
/* 802ABFC4 002A7C24 3D 20 04 B0 */ lis r9, 0x4b0
/* 802ABFC8 002A7C28 3C 80 80 40 */ lis r4, lbl_803FDA68@ha
/* 802ABFCC 002A7C2C 38 60 00 09 */ li r3, 9
/* 802ABFD0 002A7C30 39 05 FF FF */ addi r8, r5, -1
/* 802ABFD4 002A7C34 38 A0 00 16 */ li r5, 0x16
/* 802ABFD8 002A7C38 55 07 18 38 */ slwi r7, r8, 3
/* 802ABFDC 002A7C3C 38 C0 00 15 */ li r6, 0x15
/* 802ABFE0 002A7C40 38 00 00 00 */ li r0, 0
/* 802ABFE4 002A7C44 98 61 00 0D */ stb r3, 0xd(r1)
/* 802ABFE8 002A7C48 7C E7 42 14 */ add r7, r7, r8
/* 802ABFEC 002A7C4C 38 84 DA 68 */ addi r4, r4, lbl_803FDA68@l
/* 802ABFF0 002A7C50 90 A1 01 A8 */ stw r5, 0x1a8(r1)
/* 802ABFF4 002A7C54 7F 44 3A 14 */ add r26, r4, r7
/* 802ABFF8 002A7C58 38 61 01 AC */ addi r3, r1, 0x1ac
/* 802ABFFC 002A7C5C 38 81 00 1C */ addi r4, r1, 0x1c
/* 802AC000 002A7C60 91 21 00 1C */ stw r9, 0x1c(r1)
/* 802AC004 002A7C64 38 A0 00 04 */ li r5, 4
/* 802AC008 002A7C68 B0 C1 01 C2 */ sth r6, 0x1c2(r1)
/* 802AC00C 002A7C6C 90 01 01 D4 */ stw r0, 0x1d4(r1)
/* 802AC010 002A7C70 4B D5 7F F1 */ bl memcpy
/* 802AC014 002A7C74 38 61 01 B0 */ addi r3, r1, 0x1b0
/* 802AC018 002A7C78 38 81 00 0D */ addi r4, r1, 0xd
/* 802AC01C 002A7C7C 38 A0 00 01 */ li r5, 1
/* 802AC020 002A7C80 4B D5 7F E1 */ bl memcpy
/* 802AC024 002A7C84 7F 44 D3 78 */ mr r4, r26
/* 802AC028 002A7C88 38 61 01 B1 */ addi r3, r1, 0x1b1
/* 802AC02C 002A7C8C 38 A0 00 09 */ li r5, 9
/* 802AC030 002A7C90 4B D5 7F D1 */ bl memcpy
/* 802AC034 002A7C94 83 E1 01 A8 */ lwz r31, 0x1a8(r1)
/* 802AC038 002A7C98 81 81 01 AC */ lwz r12, 0x1ac(r1)
/* 802AC03C 002A7C9C 81 61 01 B0 */ lwz r11, 0x1b0(r1)
/* 802AC040 002A7CA0 81 41 01 B4 */ lwz r10, 0x1b4(r1)
/* 802AC044 002A7CA4 81 21 01 B8 */ lwz r9, 0x1b8(r1)
/* 802AC048 002A7CA8 81 01 01 BC */ lwz r8, 0x1bc(r1)
/* 802AC04C 002A7CAC 80 E1 01 C0 */ lwz r7, 0x1c0(r1)
/* 802AC050 002A7CB0 80 C1 01 C4 */ lwz r6, 0x1c4(r1)
/* 802AC054 002A7CB4 80 A1 01 C8 */ lwz r5, 0x1c8(r1)
/* 802AC058 002A7CB8 80 81 01 CC */ lwz r4, 0x1cc(r1)
/* 802AC05C 002A7CBC 80 61 01 D0 */ lwz r3, 0x1d0(r1)
/* 802AC060 002A7CC0 80 01 01 D4 */ lwz r0, 0x1d4(r1)
/* 802AC064 002A7CC4 93 E1 01 D8 */ stw r31, 0x1d8(r1)
/* 802AC068 002A7CC8 91 81 01 DC */ stw r12, 0x1dc(r1)
/* 802AC06C 002A7CCC 91 61 01 E0 */ stw r11, 0x1e0(r1)
/* 802AC070 002A7CD0 91 41 01 E4 */ stw r10, 0x1e4(r1)
/* 802AC074 002A7CD4 91 21 01 E8 */ stw r9, 0x1e8(r1)
/* 802AC078 002A7CD8 91 01 01 EC */ stw r8, 0x1ec(r1)
/* 802AC07C 002A7CDC 90 E1 01 F0 */ stw r7, 0x1f0(r1)
/* 802AC080 002A7CE0 90 C1 01 F4 */ stw r6, 0x1f4(r1)
/* 802AC084 002A7CE4 90 A1 01 F8 */ stw r5, 0x1f8(r1)
/* 802AC088 002A7CE8 90 81 01 FC */ stw r4, 0x1fc(r1)
/* 802AC08C 002A7CEC 90 61 02 00 */ stw r3, 0x200(r1)
/* 802AC090 002A7CF0 90 01 02 04 */ stw r0, 0x204(r1)
/* 802AC094 002A7CF4 4B FC 26 C9 */ bl OSDisableInterrupts
/* 802AC098 002A7CF8 7C 7F 1B 78 */ mr r31, r3
/* 802AC09C 002A7CFC 4B FC 26 C1 */ bl OSDisableInterrupts
/* 802AC0A0 002A7D00 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AC0A4 002A7D04 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC0A8 002A7D08 7C 04 00 50 */ subf r0, r4, r0
/* 802AC0AC 002A7D0C 7C 1A 07 75 */ extsb. r26, r0
/* 802AC0B0 002A7D10 40 80 00 10 */ bge lbl_802AC0C0
/* 802AC0B4 002A7D14 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AC0B8 002A7D18 7C 1A 02 14 */ add r0, r26, r0
/* 802AC0BC 002A7D1C 7C 1A 07 74 */ extsb r26, r0
lbl_802AC0C0:
/* 802AC0C0 002A7D20 4B FC 26 C5 */ bl OSRestoreInterrupts
/* 802AC0C4 002A7D24 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AC0C8 002A7D28 38 03 FF FF */ addi r0, r3, -1
/* 802AC0CC 002A7D2C 7C 00 D0 40 */ cmplw r0, r26
/* 802AC0D0 002A7D30 40 82 00 10 */ bne lbl_802AC0E0
/* 802AC0D4 002A7D34 7F E3 FB 78 */ mr r3, r31
/* 802AC0D8 002A7D38 4B FC 26 AD */ bl OSRestoreInterrupts
/* 802AC0DC 002A7D3C 48 00 00 78 */ b lbl_802AC154
lbl_802AC0E0:
/* 802AC0E0 002A7D40 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC0E4 002A7D44 38 80 00 00 */ li r4, 0
/* 802AC0E8 002A7D48 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC0EC 002A7D4C 38 A0 00 30 */ li r5, 0x30
/* 802AC0F0 002A7D50 7C 00 07 74 */ extsb r0, r0
/* 802AC0F4 002A7D54 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC0F8 002A7D58 7C 63 02 14 */ add r3, r3, r0
/* 802AC0FC 002A7D5C 4B D5 80 09 */ bl memset
/* 802AC100 002A7D60 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC104 002A7D64 38 81 01 D8 */ addi r4, r1, 0x1d8
/* 802AC108 002A7D68 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC10C 002A7D6C 38 A0 00 30 */ li r5, 0x30
/* 802AC110 002A7D70 7C 00 07 74 */ extsb r0, r0
/* 802AC114 002A7D74 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC118 002A7D78 7C 63 02 14 */ add r3, r3, r0
/* 802AC11C 002A7D7C 4B D5 7E E5 */ bl memcpy
/* 802AC120 002A7D80 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC124 002A7D84 7F E3 FB 78 */ mr r3, r31
/* 802AC128 002A7D88 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802AC12C 002A7D8C 7C 06 07 74 */ extsb r6, r0
/* 802AC130 002A7D90 38 84 FF FF */ addi r4, r4, -1
/* 802AC134 002A7D94 7C A4 30 50 */ subf r5, r4, r6
/* 802AC138 002A7D98 38 06 00 01 */ addi r0, r6, 1
/* 802AC13C 002A7D9C 7C 86 20 50 */ subf r4, r6, r4
/* 802AC140 002A7DA0 7C A4 20 F8 */ nor r4, r5, r4
/* 802AC144 002A7DA4 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AC148 002A7DA8 7C 00 20 78 */ andc r0, r0, r4
/* 802AC14C 002A7DAC 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802AC150 002A7DB0 4B FC 26 35 */ bl OSRestoreInterrupts
lbl_802AC154:
/* 802AC154 002A7DB4 88 6D AE 61 */ lbz r3, lbl_80640121-_SDA_BASE_(r13)
/* 802AC158 002A7DB8 3C 80 04 B0 */ lis r4, 0x04B0001A@ha
/* 802AC15C 002A7DBC 39 04 00 1A */ addi r8, r4, 0x04B0001A@l
/* 802AC160 002A7DC0 38 A0 00 16 */ li r5, 0x16
/* 802AC164 002A7DC4 38 E3 FF FF */ addi r7, r3, -1
/* 802AC168 002A7DC8 3C 80 80 40 */ lis r4, lbl_803FDA98@ha
/* 802AC16C 002A7DCC 38 60 00 02 */ li r3, 2
/* 802AC170 002A7DD0 38 C0 00 15 */ li r6, 0x15
/* 802AC174 002A7DD4 38 00 00 00 */ li r0, 0
/* 802AC178 002A7DD8 98 61 00 0C */ stb r3, 0xc(r1)
/* 802AC17C 002A7DDC 54 E7 08 3C */ slwi r7, r7, 1
/* 802AC180 002A7DE0 38 84 DA 98 */ addi r4, r4, lbl_803FDA98@l
/* 802AC184 002A7DE4 90 A1 01 48 */ stw r5, 0x148(r1)
/* 802AC188 002A7DE8 7F 44 3A 14 */ add r26, r4, r7
/* 802AC18C 002A7DEC 38 61 01 4C */ addi r3, r1, 0x14c
/* 802AC190 002A7DF0 38 81 00 18 */ addi r4, r1, 0x18
/* 802AC194 002A7DF4 91 01 00 18 */ stw r8, 0x18(r1)
/* 802AC198 002A7DF8 38 A0 00 04 */ li r5, 4
/* 802AC19C 002A7DFC B0 C1 01 62 */ sth r6, 0x162(r1)
/* 802AC1A0 002A7E00 90 01 01 74 */ stw r0, 0x174(r1)
/* 802AC1A4 002A7E04 4B D5 7E 5D */ bl memcpy
/* 802AC1A8 002A7E08 38 61 01 50 */ addi r3, r1, 0x150
/* 802AC1AC 002A7E0C 38 81 00 0C */ addi r4, r1, 0xc
/* 802AC1B0 002A7E10 38 A0 00 01 */ li r5, 1
/* 802AC1B4 002A7E14 4B D5 7E 4D */ bl memcpy
/* 802AC1B8 002A7E18 7F 44 D3 78 */ mr r4, r26
/* 802AC1BC 002A7E1C 38 61 01 51 */ addi r3, r1, 0x151
/* 802AC1C0 002A7E20 38 A0 00 02 */ li r5, 2
/* 802AC1C4 002A7E24 4B D5 7E 3D */ bl memcpy
/* 802AC1C8 002A7E28 83 E1 01 48 */ lwz r31, 0x148(r1)
/* 802AC1CC 002A7E2C 81 81 01 4C */ lwz r12, 0x14c(r1)
/* 802AC1D0 002A7E30 81 61 01 50 */ lwz r11, 0x150(r1)
/* 802AC1D4 002A7E34 81 41 01 54 */ lwz r10, 0x154(r1)
/* 802AC1D8 002A7E38 81 21 01 58 */ lwz r9, 0x158(r1)
/* 802AC1DC 002A7E3C 81 01 01 5C */ lwz r8, 0x15c(r1)
/* 802AC1E0 002A7E40 80 E1 01 60 */ lwz r7, 0x160(r1)
/* 802AC1E4 002A7E44 80 C1 01 64 */ lwz r6, 0x164(r1)
/* 802AC1E8 002A7E48 80 A1 01 68 */ lwz r5, 0x168(r1)
/* 802AC1EC 002A7E4C 80 81 01 6C */ lwz r4, 0x16c(r1)
/* 802AC1F0 002A7E50 80 61 01 70 */ lwz r3, 0x170(r1)
/* 802AC1F4 002A7E54 80 01 01 74 */ lwz r0, 0x174(r1)
/* 802AC1F8 002A7E58 93 E1 01 78 */ stw r31, 0x178(r1)
/* 802AC1FC 002A7E5C 91 81 01 7C */ stw r12, 0x17c(r1)
/* 802AC200 002A7E60 91 61 01 80 */ stw r11, 0x180(r1)
/* 802AC204 002A7E64 91 41 01 84 */ stw r10, 0x184(r1)
/* 802AC208 002A7E68 91 21 01 88 */ stw r9, 0x188(r1)
/* 802AC20C 002A7E6C 91 01 01 8C */ stw r8, 0x18c(r1)
/* 802AC210 002A7E70 90 E1 01 90 */ stw r7, 0x190(r1)
/* 802AC214 002A7E74 90 C1 01 94 */ stw r6, 0x194(r1)
/* 802AC218 002A7E78 90 A1 01 98 */ stw r5, 0x198(r1)
/* 802AC21C 002A7E7C 90 81 01 9C */ stw r4, 0x19c(r1)
/* 802AC220 002A7E80 90 61 01 A0 */ stw r3, 0x1a0(r1)
/* 802AC224 002A7E84 90 01 01 A4 */ stw r0, 0x1a4(r1)
/* 802AC228 002A7E88 4B FC 25 35 */ bl OSDisableInterrupts
/* 802AC22C 002A7E8C 7C 7F 1B 78 */ mr r31, r3
/* 802AC230 002A7E90 4B FC 25 2D */ bl OSDisableInterrupts
/* 802AC234 002A7E94 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AC238 002A7E98 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC23C 002A7E9C 7C 04 00 50 */ subf r0, r4, r0
/* 802AC240 002A7EA0 7C 1A 07 75 */ extsb. r26, r0
/* 802AC244 002A7EA4 40 80 00 10 */ bge lbl_802AC254
/* 802AC248 002A7EA8 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AC24C 002A7EAC 7C 1A 02 14 */ add r0, r26, r0
/* 802AC250 002A7EB0 7C 1A 07 74 */ extsb r26, r0
lbl_802AC254:
/* 802AC254 002A7EB4 4B FC 25 31 */ bl OSRestoreInterrupts
/* 802AC258 002A7EB8 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AC25C 002A7EBC 38 03 FF FF */ addi r0, r3, -1
/* 802AC260 002A7EC0 7C 00 D0 40 */ cmplw r0, r26
/* 802AC264 002A7EC4 40 82 00 10 */ bne lbl_802AC274
/* 802AC268 002A7EC8 7F E3 FB 78 */ mr r3, r31
/* 802AC26C 002A7ECC 4B FC 25 19 */ bl OSRestoreInterrupts
/* 802AC270 002A7ED0 48 00 00 78 */ b lbl_802AC2E8
lbl_802AC274:
/* 802AC274 002A7ED4 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC278 002A7ED8 38 80 00 00 */ li r4, 0
/* 802AC27C 002A7EDC 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC280 002A7EE0 38 A0 00 30 */ li r5, 0x30
/* 802AC284 002A7EE4 7C 00 07 74 */ extsb r0, r0
/* 802AC288 002A7EE8 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC28C 002A7EEC 7C 63 02 14 */ add r3, r3, r0
/* 802AC290 002A7EF0 4B D5 7E 75 */ bl memset
/* 802AC294 002A7EF4 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC298 002A7EF8 38 81 01 78 */ addi r4, r1, 0x178
/* 802AC29C 002A7EFC 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC2A0 002A7F00 38 A0 00 30 */ li r5, 0x30
/* 802AC2A4 002A7F04 7C 00 07 74 */ extsb r0, r0
/* 802AC2A8 002A7F08 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC2AC 002A7F0C 7C 63 02 14 */ add r3, r3, r0
/* 802AC2B0 002A7F10 4B D5 7D 51 */ bl memcpy
/* 802AC2B4 002A7F14 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC2B8 002A7F18 7F E3 FB 78 */ mr r3, r31
/* 802AC2BC 002A7F1C 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802AC2C0 002A7F20 7C 06 07 74 */ extsb r6, r0
/* 802AC2C4 002A7F24 38 84 FF FF */ addi r4, r4, -1
/* 802AC2C8 002A7F28 7C A4 30 50 */ subf r5, r4, r6
/* 802AC2CC 002A7F2C 38 06 00 01 */ addi r0, r6, 1
/* 802AC2D0 002A7F30 7C 86 20 50 */ subf r4, r6, r4
/* 802AC2D4 002A7F34 7C A4 20 F8 */ nor r4, r5, r4
/* 802AC2D8 002A7F38 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AC2DC 002A7F3C 7C 00 20 78 */ andc r0, r0, r4
/* 802AC2E0 002A7F40 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802AC2E4 002A7F44 4B FC 24 A1 */ bl OSRestoreInterrupts
lbl_802AC2E8:
/* 802AC2E8 002A7F48 3C 60 04 B0 */ lis r3, 0x04B00033@ha
/* 802AC2EC 002A7F4C 39 00 00 01 */ li r8, 1
/* 802AC2F0 002A7F50 39 23 00 33 */ addi r9, r3, 0x04B00033@l
/* 802AC2F4 002A7F54 38 E0 00 16 */ li r7, 0x16
/* 802AC2F8 002A7F58 38 C0 00 15 */ li r6, 0x15
/* 802AC2FC 002A7F5C 38 00 00 00 */ li r0, 0
/* 802AC300 002A7F60 9B 61 00 0B */ stb r27, 0xb(r1)
/* 802AC304 002A7F64 38 61 01 1C */ addi r3, r1, 0x11c
/* 802AC308 002A7F68 38 81 00 14 */ addi r4, r1, 0x14
/* 802AC30C 002A7F6C 38 A0 00 04 */ li r5, 4
/* 802AC310 002A7F70 91 21 00 14 */ stw r9, 0x14(r1)
/* 802AC314 002A7F74 99 01 00 0A */ stb r8, 0xa(r1)
/* 802AC318 002A7F78 90 E1 01 18 */ stw r7, 0x118(r1)
/* 802AC31C 002A7F7C B0 C1 01 32 */ sth r6, 0x132(r1)
/* 802AC320 002A7F80 90 01 01 44 */ stw r0, 0x144(r1)
/* 802AC324 002A7F84 4B D5 7C DD */ bl memcpy
/* 802AC328 002A7F88 38 61 01 20 */ addi r3, r1, 0x120
/* 802AC32C 002A7F8C 38 81 00 0A */ addi r4, r1, 0xa
/* 802AC330 002A7F90 38 A0 00 01 */ li r5, 1
/* 802AC334 002A7F94 4B D5 7C CD */ bl memcpy
/* 802AC338 002A7F98 38 61 01 21 */ addi r3, r1, 0x121
/* 802AC33C 002A7F9C 38 81 00 0B */ addi r4, r1, 0xb
/* 802AC340 002A7FA0 38 A0 00 01 */ li r5, 1
/* 802AC344 002A7FA4 4B D5 7C BD */ bl memcpy
/* 802AC348 002A7FA8 83 61 01 18 */ lwz r27, 0x118(r1)
/* 802AC34C 002A7FAC 81 81 01 1C */ lwz r12, 0x11c(r1)
/* 802AC350 002A7FB0 81 61 01 20 */ lwz r11, 0x120(r1)
/* 802AC354 002A7FB4 81 41 01 24 */ lwz r10, 0x124(r1)
/* 802AC358 002A7FB8 81 21 01 28 */ lwz r9, 0x128(r1)
/* 802AC35C 002A7FBC 81 01 01 2C */ lwz r8, 0x12c(r1)
/* 802AC360 002A7FC0 80 E1 01 30 */ lwz r7, 0x130(r1)
/* 802AC364 002A7FC4 80 C1 01 34 */ lwz r6, 0x134(r1)
/* 802AC368 002A7FC8 80 A1 01 38 */ lwz r5, 0x138(r1)
/* 802AC36C 002A7FCC 80 81 01 3C */ lwz r4, 0x13c(r1)
/* 802AC370 002A7FD0 80 61 01 40 */ lwz r3, 0x140(r1)
/* 802AC374 002A7FD4 80 01 01 44 */ lwz r0, 0x144(r1)
/* 802AC378 002A7FD8 93 61 00 E8 */ stw r27, 0xe8(r1)
/* 802AC37C 002A7FDC 91 81 00 EC */ stw r12, 0xec(r1)
/* 802AC380 002A7FE0 91 61 00 F0 */ stw r11, 0xf0(r1)
/* 802AC384 002A7FE4 91 41 00 F4 */ stw r10, 0xf4(r1)
/* 802AC388 002A7FE8 91 21 00 F8 */ stw r9, 0xf8(r1)
/* 802AC38C 002A7FEC 91 01 00 FC */ stw r8, 0xfc(r1)
/* 802AC390 002A7FF0 90 E1 01 00 */ stw r7, 0x100(r1)
/* 802AC394 002A7FF4 90 C1 01 04 */ stw r6, 0x104(r1)
/* 802AC398 002A7FF8 90 A1 01 08 */ stw r5, 0x108(r1)
/* 802AC39C 002A7FFC 90 81 01 0C */ stw r4, 0x10c(r1)
/* 802AC3A0 002A8000 90 61 01 10 */ stw r3, 0x110(r1)
/* 802AC3A4 002A8004 90 01 01 14 */ stw r0, 0x114(r1)
/* 802AC3A8 002A8008 4B FC 23 B5 */ bl OSDisableInterrupts
/* 802AC3AC 002A800C 7C 7F 1B 78 */ mr r31, r3
/* 802AC3B0 002A8010 4B FC 23 AD */ bl OSDisableInterrupts
/* 802AC3B4 002A8014 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AC3B8 002A8018 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC3BC 002A801C 7C 04 00 50 */ subf r0, r4, r0
/* 802AC3C0 002A8020 7C 1A 07 75 */ extsb. r26, r0
/* 802AC3C4 002A8024 40 80 00 10 */ bge lbl_802AC3D4
/* 802AC3C8 002A8028 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AC3CC 002A802C 7C 1A 02 14 */ add r0, r26, r0
/* 802AC3D0 002A8030 7C 1A 07 74 */ extsb r26, r0
lbl_802AC3D4:
/* 802AC3D4 002A8034 4B FC 23 B1 */ bl OSRestoreInterrupts
/* 802AC3D8 002A8038 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AC3DC 002A803C 38 03 FF FF */ addi r0, r3, -1
/* 802AC3E0 002A8040 7C 00 D0 40 */ cmplw r0, r26
/* 802AC3E4 002A8044 40 82 00 10 */ bne lbl_802AC3F4
/* 802AC3E8 002A8048 7F E3 FB 78 */ mr r3, r31
/* 802AC3EC 002A804C 4B FC 23 99 */ bl OSRestoreInterrupts
/* 802AC3F0 002A8050 48 00 00 78 */ b lbl_802AC468
lbl_802AC3F4:
/* 802AC3F4 002A8054 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC3F8 002A8058 38 80 00 00 */ li r4, 0
/* 802AC3FC 002A805C 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC400 002A8060 38 A0 00 30 */ li r5, 0x30
/* 802AC404 002A8064 7C 00 07 74 */ extsb r0, r0
/* 802AC408 002A8068 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC40C 002A806C 7C 63 02 14 */ add r3, r3, r0
/* 802AC410 002A8070 4B D5 7C F5 */ bl memset
/* 802AC414 002A8074 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC418 002A8078 38 81 00 E8 */ addi r4, r1, 0xe8
/* 802AC41C 002A807C 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC420 002A8080 38 A0 00 30 */ li r5, 0x30
/* 802AC424 002A8084 7C 00 07 74 */ extsb r0, r0
/* 802AC428 002A8088 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC42C 002A808C 7C 63 02 14 */ add r3, r3, r0
/* 802AC430 002A8090 4B D5 7B D1 */ bl memcpy
/* 802AC434 002A8094 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC438 002A8098 7F E3 FB 78 */ mr r3, r31
/* 802AC43C 002A809C 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802AC440 002A80A0 7C 06 07 74 */ extsb r6, r0
/* 802AC444 002A80A4 38 84 FF FF */ addi r4, r4, -1
/* 802AC448 002A80A8 7C A4 30 50 */ subf r5, r4, r6
/* 802AC44C 002A80AC 38 06 00 01 */ addi r0, r6, 1
/* 802AC450 002A80B0 7C 86 20 50 */ subf r4, r6, r4
/* 802AC454 002A80B4 7C A4 20 F8 */ nor r4, r5, r4
/* 802AC458 002A80B8 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AC45C 002A80BC 7C 00 20 78 */ andc r0, r0, r4
/* 802AC460 002A80C0 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802AC464 002A80C4 4B FC 23 21 */ bl OSRestoreInterrupts
lbl_802AC468:
/* 802AC468 002A80C8 3C 60 04 B0 */ lis r3, 0x04B00030@ha
/* 802AC46C 002A80CC 3C C0 80 2B */ lis r6, __dpdCb@ha
/* 802AC470 002A80D0 39 23 00 30 */ addi r9, r3, 0x04B00030@l
/* 802AC474 002A80D4 39 00 00 01 */ li r8, 1
/* 802AC478 002A80D8 38 60 00 08 */ li r3, 8
/* 802AC47C 002A80DC 38 C6 B6 CC */ addi r6, r6, __dpdCb@l
/* 802AC480 002A80E0 38 E0 00 16 */ li r7, 0x16
/* 802AC484 002A80E4 38 00 00 15 */ li r0, 0x15
/* 802AC488 002A80E8 98 61 00 09 */ stb r3, 9(r1)
/* 802AC48C 002A80EC 38 61 00 BC */ addi r3, r1, 0xbc
/* 802AC490 002A80F0 38 81 00 10 */ addi r4, r1, 0x10
/* 802AC494 002A80F4 38 A0 00 04 */ li r5, 4
/* 802AC498 002A80F8 91 21 00 10 */ stw r9, 0x10(r1)
/* 802AC49C 002A80FC 99 01 00 08 */ stb r8, 8(r1)
/* 802AC4A0 002A8100 90 E1 00 B8 */ stw r7, 0xb8(r1)
/* 802AC4A4 002A8104 B0 01 00 D2 */ sth r0, 0xd2(r1)
/* 802AC4A8 002A8108 90 C1 00 E4 */ stw r6, 0xe4(r1)
/* 802AC4AC 002A810C 4B D5 7B 55 */ bl memcpy
/* 802AC4B0 002A8110 38 61 00 C0 */ addi r3, r1, 0xc0
/* 802AC4B4 002A8114 38 81 00 08 */ addi r4, r1, 8
/* 802AC4B8 002A8118 38 A0 00 01 */ li r5, 1
/* 802AC4BC 002A811C 4B D5 7B 45 */ bl memcpy
/* 802AC4C0 002A8120 38 61 00 C1 */ addi r3, r1, 0xc1
/* 802AC4C4 002A8124 38 81 00 09 */ addi r4, r1, 9
/* 802AC4C8 002A8128 38 A0 00 01 */ li r5, 1
/* 802AC4CC 002A812C 4B D5 7B 35 */ bl memcpy
/* 802AC4D0 002A8130 83 61 00 B8 */ lwz r27, 0xb8(r1)
/* 802AC4D4 002A8134 81 81 00 BC */ lwz r12, 0xbc(r1)
/* 802AC4D8 002A8138 81 61 00 C0 */ lwz r11, 0xc0(r1)
/* 802AC4DC 002A813C 81 41 00 C4 */ lwz r10, 0xc4(r1)
/* 802AC4E0 002A8140 81 21 00 C8 */ lwz r9, 0xc8(r1)
/* 802AC4E4 002A8144 81 01 00 CC */ lwz r8, 0xcc(r1)
/* 802AC4E8 002A8148 80 E1 00 D0 */ lwz r7, 0xd0(r1)
/* 802AC4EC 002A814C 80 C1 00 D4 */ lwz r6, 0xd4(r1)
/* 802AC4F0 002A8150 80 A1 00 D8 */ lwz r5, 0xd8(r1)
/* 802AC4F4 002A8154 80 81 00 DC */ lwz r4, 0xdc(r1)
/* 802AC4F8 002A8158 80 61 00 E0 */ lwz r3, 0xe0(r1)
/* 802AC4FC 002A815C 80 01 00 E4 */ lwz r0, 0xe4(r1)
/* 802AC500 002A8160 93 61 00 88 */ stw r27, 0x88(r1)
/* 802AC504 002A8164 91 81 00 8C */ stw r12, 0x8c(r1)
/* 802AC508 002A8168 91 61 00 90 */ stw r11, 0x90(r1)
/* 802AC50C 002A816C 91 41 00 94 */ stw r10, 0x94(r1)
/* 802AC510 002A8170 91 21 00 98 */ stw r9, 0x98(r1)
/* 802AC514 002A8174 91 01 00 9C */ stw r8, 0x9c(r1)
/* 802AC518 002A8178 90 E1 00 A0 */ stw r7, 0xa0(r1)
/* 802AC51C 002A817C 90 C1 00 A4 */ stw r6, 0xa4(r1)
/* 802AC520 002A8180 90 A1 00 A8 */ stw r5, 0xa8(r1)
/* 802AC524 002A8184 90 81 00 AC */ stw r4, 0xac(r1)
/* 802AC528 002A8188 90 61 00 B0 */ stw r3, 0xb0(r1)
/* 802AC52C 002A818C 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 802AC530 002A8190 4B FC 22 2D */ bl OSDisableInterrupts
/* 802AC534 002A8194 7C 7F 1B 78 */ mr r31, r3
/* 802AC538 002A8198 4B FC 22 25 */ bl OSDisableInterrupts
/* 802AC53C 002A819C 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AC540 002A81A0 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC544 002A81A4 7C 04 00 50 */ subf r0, r4, r0
/* 802AC548 002A81A8 7C 1A 07 75 */ extsb. r26, r0
/* 802AC54C 002A81AC 40 80 00 10 */ bge lbl_802AC55C
/* 802AC550 002A81B0 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AC554 002A81B4 7C 1A 02 14 */ add r0, r26, r0
/* 802AC558 002A81B8 7C 1A 07 74 */ extsb r26, r0
lbl_802AC55C:
/* 802AC55C 002A81BC 4B FC 22 29 */ bl OSRestoreInterrupts
/* 802AC560 002A81C0 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AC564 002A81C4 38 03 FF FF */ addi r0, r3, -1
/* 802AC568 002A81C8 7C 00 D0 40 */ cmplw r0, r26
/* 802AC56C 002A81CC 40 82 00 10 */ bne lbl_802AC57C
/* 802AC570 002A81D0 7F E3 FB 78 */ mr r3, r31
/* 802AC574 002A81D4 4B FC 22 11 */ bl OSRestoreInterrupts
/* 802AC578 002A81D8 48 00 00 78 */ b lbl_802AC5F0
lbl_802AC57C:
/* 802AC57C 002A81DC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC580 002A81E0 38 80 00 00 */ li r4, 0
/* 802AC584 002A81E4 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC588 002A81E8 38 A0 00 30 */ li r5, 0x30
/* 802AC58C 002A81EC 7C 00 07 74 */ extsb r0, r0
/* 802AC590 002A81F0 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC594 002A81F4 7C 63 02 14 */ add r3, r3, r0
/* 802AC598 002A81F8 4B D5 7B 6D */ bl memset
/* 802AC59C 002A81FC 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC5A0 002A8200 38 81 00 88 */ addi r4, r1, 0x88
/* 802AC5A4 002A8204 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC5A8 002A8208 38 A0 00 30 */ li r5, 0x30
/* 802AC5AC 002A820C 7C 00 07 74 */ extsb r0, r0
/* 802AC5B0 002A8210 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC5B4 002A8214 7C 63 02 14 */ add r3, r3, r0
/* 802AC5B8 002A8218 4B D5 7A 49 */ bl memcpy
/* 802AC5BC 002A821C 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC5C0 002A8220 7F E3 FB 78 */ mr r3, r31
/* 802AC5C4 002A8224 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802AC5C8 002A8228 7C 06 07 74 */ extsb r6, r0
/* 802AC5CC 002A822C 38 84 FF FF */ addi r4, r4, -1
/* 802AC5D0 002A8230 7C A4 30 50 */ subf r5, r4, r6
/* 802AC5D4 002A8234 38 06 00 01 */ addi r0, r6, 1
/* 802AC5D8 002A8238 7C 86 20 50 */ subf r4, r6, r4
/* 802AC5DC 002A823C 7C A4 20 F8 */ nor r4, r5, r4
/* 802AC5E0 002A8240 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AC5E4 002A8244 7C 00 20 78 */ andc r0, r0, r4
/* 802AC5E8 002A8248 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802AC5EC 002A824C 4B FC 21 99 */ bl OSRestoreInterrupts
lbl_802AC5F0:
/* 802AC5F0 002A8250 39 60 00 00 */ li r11, 0
/* 802AC5F4 002A8254 38 00 00 01 */ li r0, 1
/* 802AC5F8 002A8258 B0 01 00 42 */ sth r0, 0x42(r1)
/* 802AC5FC 002A825C 39 80 00 15 */ li r12, 0x15
/* 802AC600 002A8260 81 21 00 30 */ lwz r9, 0x30(r1)
/* 802AC604 002A8264 99 61 00 2C */ stb r11, 0x2c(r1)
/* 802AC608 002A8268 81 01 00 34 */ lwz r8, 0x34(r1)
/* 802AC60C 002A826C 81 41 00 2C */ lwz r10, 0x2c(r1)
/* 802AC610 002A8270 80 E1 00 38 */ lwz r7, 0x38(r1)
/* 802AC614 002A8274 80 C1 00 3C */ lwz r6, 0x3c(r1)
/* 802AC618 002A8278 80 A1 00 40 */ lwz r5, 0x40(r1)
/* 802AC61C 002A827C 80 81 00 44 */ lwz r4, 0x44(r1)
/* 802AC620 002A8280 80 61 00 48 */ lwz r3, 0x48(r1)
/* 802AC624 002A8284 80 01 00 4C */ lwz r0, 0x4c(r1)
/* 802AC628 002A8288 91 81 00 28 */ stw r12, 0x28(r1)
/* 802AC62C 002A828C 93 81 00 54 */ stw r28, 0x54(r1)
/* 802AC630 002A8290 91 61 00 50 */ stw r11, 0x50(r1)
/* 802AC634 002A8294 91 81 00 58 */ stw r12, 0x58(r1)
/* 802AC638 002A8298 91 41 00 5C */ stw r10, 0x5c(r1)
/* 802AC63C 002A829C 91 21 00 60 */ stw r9, 0x60(r1)
/* 802AC640 002A82A0 91 01 00 64 */ stw r8, 0x64(r1)
/* 802AC644 002A82A4 90 E1 00 68 */ stw r7, 0x68(r1)
/* 802AC648 002A82A8 90 C1 00 6C */ stw r6, 0x6c(r1)
/* 802AC64C 002A82AC 90 A1 00 70 */ stw r5, 0x70(r1)
/* 802AC650 002A82B0 90 81 00 74 */ stw r4, 0x74(r1)
/* 802AC654 002A82B4 90 61 00 78 */ stw r3, 0x78(r1)
/* 802AC658 002A82B8 90 01 00 7C */ stw r0, 0x7c(r1)
/* 802AC65C 002A82BC 91 61 00 80 */ stw r11, 0x80(r1)
/* 802AC660 002A82C0 93 81 00 84 */ stw r28, 0x84(r1)
/* 802AC664 002A82C4 4B FC 20 F9 */ bl OSDisableInterrupts
/* 802AC668 002A82C8 7C 7F 1B 78 */ mr r31, r3
/* 802AC66C 002A82CC 4B FC 20 F1 */ bl OSDisableInterrupts
/* 802AC670 002A82D0 88 9D 01 60 */ lbz r4, 0x160(r29)
/* 802AC674 002A82D4 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC678 002A82D8 7C 04 00 50 */ subf r0, r4, r0
/* 802AC67C 002A82DC 7C 1A 07 75 */ extsb. r26, r0
/* 802AC680 002A82E0 40 80 00 10 */ bge lbl_802AC690
/* 802AC684 002A82E4 80 1D 01 68 */ lwz r0, 0x168(r29)
/* 802AC688 002A82E8 7C 1A 02 14 */ add r0, r26, r0
/* 802AC68C 002A82EC 7C 1A 07 74 */ extsb r26, r0
lbl_802AC690:
/* 802AC690 002A82F0 4B FC 20 F5 */ bl OSRestoreInterrupts
/* 802AC694 002A82F4 80 7D 01 68 */ lwz r3, 0x168(r29)
/* 802AC698 002A82F8 38 03 FF FF */ addi r0, r3, -1
/* 802AC69C 002A82FC 7C 00 D0 40 */ cmplw r0, r26
/* 802AC6A0 002A8300 40 82 00 10 */ bne lbl_802AC6B0
/* 802AC6A4 002A8304 7F E3 FB 78 */ mr r3, r31
/* 802AC6A8 002A8308 4B FC 20 DD */ bl OSRestoreInterrupts
/* 802AC6AC 002A830C 48 00 00 78 */ b lbl_802AC724
lbl_802AC6B0:
/* 802AC6B0 002A8310 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC6B4 002A8314 38 80 00 00 */ li r4, 0
/* 802AC6B8 002A8318 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC6BC 002A831C 38 A0 00 30 */ li r5, 0x30
/* 802AC6C0 002A8320 7C 00 07 74 */ extsb r0, r0
/* 802AC6C4 002A8324 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC6C8 002A8328 7C 63 02 14 */ add r3, r3, r0
/* 802AC6CC 002A832C 4B D5 7A 39 */ bl memset
/* 802AC6D0 002A8330 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC6D4 002A8334 38 81 00 58 */ addi r4, r1, 0x58
/* 802AC6D8 002A8338 80 7D 01 64 */ lwz r3, 0x164(r29)
/* 802AC6DC 002A833C 38 A0 00 30 */ li r5, 0x30
/* 802AC6E0 002A8340 7C 00 07 74 */ extsb r0, r0
/* 802AC6E4 002A8344 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AC6E8 002A8348 7C 63 02 14 */ add r3, r3, r0
/* 802AC6EC 002A834C 4B D5 79 15 */ bl memcpy
/* 802AC6F0 002A8350 88 1D 01 61 */ lbz r0, 0x161(r29)
/* 802AC6F4 002A8354 7F E3 FB 78 */ mr r3, r31
/* 802AC6F8 002A8358 80 9D 01 68 */ lwz r4, 0x168(r29)
/* 802AC6FC 002A835C 7C 06 07 74 */ extsb r6, r0
/* 802AC700 002A8360 38 84 FF FF */ addi r4, r4, -1
/* 802AC704 002A8364 7C A4 30 50 */ subf r5, r4, r6
/* 802AC708 002A8368 38 06 00 01 */ addi r0, r6, 1
/* 802AC70C 002A836C 7C 86 20 50 */ subf r4, r6, r4
/* 802AC710 002A8370 7C A4 20 F8 */ nor r4, r5, r4
/* 802AC714 002A8374 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AC718 002A8378 7C 00 20 78 */ andc r0, r0, r4
/* 802AC71C 002A837C 98 1D 01 61 */ stb r0, 0x161(r29)
/* 802AC720 002A8380 4B FC 20 65 */ bl OSRestoreInterrupts
lbl_802AC724:
/* 802AC724 002A8384 7F C3 F3 78 */ mr r3, r30
/* 802AC728 002A8388 4B FC 20 5D */ bl OSRestoreInterrupts
/* 802AC72C 002A838C 38 60 00 00 */ li r3, 0
/* 802AC730 002A8390 48 00 00 30 */ b lbl_802AC760
lbl_802AC734:
/* 802AC734 002A8394 7F C3 F3 78 */ mr r3, r30
/* 802AC738 002A8398 3B 00 FF FE */ li r24, -2
/* 802AC73C 002A839C 4B FC 20 49 */ bl OSRestoreInterrupts
lbl_802AC740:
/* 802AC740 002A83A0 2C 1C 00 00 */ cmpwi r28, 0
/* 802AC744 002A83A4 41 82 00 18 */ beq lbl_802AC75C
/* 802AC748 002A83A8 7F 8C E3 78 */ mr r12, r28
/* 802AC74C 002A83AC 7F E3 FB 78 */ mr r3, r31
/* 802AC750 002A83B0 7F 04 C3 78 */ mr r4, r24
/* 802AC754 002A83B4 7D 89 03 A6 */ mtctr r12
/* 802AC758 002A83B8 4E 80 04 21 */ bctrl
lbl_802AC75C:
/* 802AC75C 002A83BC 7F 03 C3 78 */ mr r3, r24
lbl_802AC760:
/* 802AC760 002A83C0 39 61 04 70 */ addi r11, r1, 0x470
/* 802AC764 002A83C4 4B F1 AA 05 */ bl _restgpr_24
/* 802AC768 002A83C8 80 01 04 74 */ lwz r0, 0x474(r1)
/* 802AC76C 002A83CC 7C 08 03 A6 */ mtlr r0
/* 802AC770 002A83D0 38 21 04 70 */ addi r1, r1, 0x470
/* 802AC774 002A83D4 4E 80 00 20 */ blr
.global __SendData
__SendData:
/* 802AC778 002A83D8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802AC77C 002A83DC 7C 08 02 A6 */ mflr r0
/* 802AC780 002A83E0 90 01 00 44 */ stw r0, 0x44(r1)
/* 802AC784 002A83E4 39 61 00 40 */ addi r11, r1, 0x40
/* 802AC788 002A83E8 4B F1 A9 91 */ bl _savegpr_23
/* 802AC78C 002A83EC 80 04 00 00 */ lwz r0, 0(r4)
/* 802AC790 002A83F0 7C 77 1B 78 */ mr r23, r3
/* 802AC794 002A83F4 A3 24 00 1A */ lhz r25, 0x1a(r4)
/* 802AC798 002A83F8 7C 98 23 78 */ mr r24, r4
/* 802AC79C 002A83FC 54 1B 06 3E */ clrlwi r27, r0, 0x18
/* 802AC7A0 002A8400 3B 44 00 04 */ addi r26, r4, 4
/* 802AC7A4 002A8404 4B FC 1F B9 */ bl OSDisableInterrupts
/* 802AC7A8 002A8408 3C 80 80 53 */ lis r4, lbl_80536D70@ha
/* 802AC7AC 002A840C 56 E0 10 3A */ slwi r0, r23, 2
/* 802AC7B0 002A8410 38 84 6D 70 */ addi r4, r4, lbl_80536D70@l
/* 802AC7B4 002A8414 7F 84 00 2E */ lwzx r28, r4, r0
/* 802AC7B8 002A8418 8B BC 08 C3 */ lbz r29, 0x8c3(r28)
/* 802AC7BC 002A841C 82 FC 08 BC */ lwz r23, 0x8bc(r28)
/* 802AC7C0 002A8420 7F A0 07 75 */ extsb. r0, r29
/* 802AC7C4 002A8424 40 80 00 0C */ bge lbl_802AC7D0
/* 802AC7C8 002A8428 4B FC 1F BD */ bl OSRestoreInterrupts
/* 802AC7CC 002A842C 48 00 01 C8 */ b lbl_802AC994
lbl_802AC7D0:
/* 802AC7D0 002A8430 38 00 FF FE */ li r0, -2
/* 802AC7D4 002A8434 90 1C 08 BC */ stw r0, 0x8bc(r28)
/* 802AC7D8 002A8438 80 9C 08 D4 */ lwz r4, 0x8d4(r28)
/* 802AC7DC 002A843C 80 0D AE 5C */ lwz r0, lbl_8064011C-_SDA_BASE_(r13)
/* 802AC7E0 002A8440 7C 9E 00 38 */ and r30, r4, r0
/* 802AC7E4 002A8444 4B FC 1F A1 */ bl OSRestoreInterrupts
/* 802AC7E8 002A8448 28 1B 00 10 */ cmplwi r27, 0x10
/* 802AC7EC 002A844C 40 82 00 14 */ bne lbl_802AC800
/* 802AC7F0 002A8450 4B FC 1F 6D */ bl OSDisableInterrupts
/* 802AC7F4 002A8454 92 FC 08 BC */ stw r23, 0x8bc(r28)
/* 802AC7F8 002A8458 4B FC 1F 8D */ bl OSRestoreInterrupts
/* 802AC7FC 002A845C 48 00 01 14 */ b lbl_802AC910
lbl_802AC800:
/* 802AC800 002A8460 28 1B 00 18 */ cmplwi r27, 0x18
/* 802AC804 002A8464 40 82 00 20 */ bne lbl_802AC824
/* 802AC808 002A8468 4B FC 1F 55 */ bl OSDisableInterrupts
/* 802AC80C 002A846C 92 FC 08 BC */ stw r23, 0x8bc(r28)
/* 802AC810 002A8470 88 9C 08 CF */ lbz r4, 0x8cf(r28)
/* 802AC814 002A8474 38 04 FF FF */ addi r0, r4, -1
/* 802AC818 002A8478 98 1C 08 CF */ stb r0, 0x8cf(r28)
/* 802AC81C 002A847C 4B FC 1F 69 */ bl OSRestoreInterrupts
/* 802AC820 002A8480 48 00 00 F0 */ b lbl_802AC910
lbl_802AC824:
/* 802AC824 002A8484 4B FC 1F 39 */ bl OSDisableInterrupts
/* 802AC828 002A8488 2C 1B 00 17 */ cmpwi r27, 0x17
/* 802AC82C 002A848C 7C 7F 1B 78 */ mr r31, r3
/* 802AC830 002A8490 41 82 00 24 */ beq lbl_802AC854
/* 802AC834 002A8494 40 80 00 14 */ bge lbl_802AC848
/* 802AC838 002A8498 2C 1B 00 15 */ cmpwi r27, 0x15
/* 802AC83C 002A849C 41 82 00 3C */ beq lbl_802AC878
/* 802AC840 002A84A0 40 80 00 94 */ bge lbl_802AC8D4
/* 802AC844 002A84A4 48 00 00 84 */ b lbl_802AC8C8
lbl_802AC848:
/* 802AC848 002A84A8 2C 1B 00 FF */ cmpwi r27, 0xff
/* 802AC84C 002A84AC 41 82 00 44 */ beq lbl_802AC890
/* 802AC850 002A84B0 48 00 00 78 */ b lbl_802AC8C8
lbl_802AC854:
/* 802AC854 002A84B4 38 00 00 00 */ li r0, 0
/* 802AC858 002A84B8 90 1C 09 7C */ stw r0, 0x97c(r28)
/* 802AC85C 002A84BC 80 18 00 24 */ lwz r0, 0x24(r24)
/* 802AC860 002A84C0 90 1C 09 78 */ stw r0, 0x978(r28)
/* 802AC864 002A84C4 A0 18 00 20 */ lhz r0, 0x20(r24)
/* 802AC868 002A84C8 B0 1C 09 80 */ sth r0, 0x980(r28)
/* 802AC86C 002A84CC 80 18 00 1C */ lwz r0, 0x1c(r24)
/* 802AC870 002A84D0 90 1C 09 74 */ stw r0, 0x974(r28)
/* 802AC874 002A84D4 48 00 00 60 */ b lbl_802AC8D4
lbl_802AC878:
/* 802AC878 002A84D8 92 FC 08 BC */ stw r23, 0x8bc(r28)
/* 802AC87C 002A84DC 38 00 00 01 */ li r0, 1
/* 802AC880 002A84E0 80 78 00 28 */ lwz r3, 0x28(r24)
/* 802AC884 002A84E4 90 7C 08 50 */ stw r3, 0x850(r28)
/* 802AC888 002A84E8 98 1C 08 C0 */ stb r0, 0x8c0(r28)
/* 802AC88C 002A84EC 48 00 00 48 */ b lbl_802AC8D4
lbl_802AC890:
/* 802AC890 002A84F0 38 61 00 08 */ addi r3, r1, 8
/* 802AC894 002A84F4 7F 44 D3 78 */ mr r4, r26
/* 802AC898 002A84F8 38 A0 00 04 */ li r5, 4
/* 802AC89C 002A84FC 4B D5 77 65 */ bl memcpy
/* 802AC8A0 002A8500 4B FC 5F 39 */ bl __OSGetSystemTime
/* 802AC8A4 002A8504 80 C1 00 08 */ lwz r6, 8(r1)
/* 802AC8A8 002A8508 38 A0 00 00 */ li r5, 0
/* 802AC8AC 002A850C 38 00 00 01 */ li r0, 1
/* 802AC8B0 002A8510 7C 86 20 14 */ addc r4, r6, r4
/* 802AC8B4 002A8514 90 9C 09 0C */ stw r4, 0x90c(r28)
/* 802AC8B8 002A8518 7C 65 19 14 */ adde r3, r5, r3
/* 802AC8BC 002A851C 90 7C 09 08 */ stw r3, 0x908(r28)
/* 802AC8C0 002A8520 98 1C 09 10 */ stb r0, 0x910(r28)
/* 802AC8C4 002A8524 48 00 00 D0 */ b lbl_802AC994
lbl_802AC8C8:
/* 802AC8C8 002A8528 88 1A 00 00 */ lbz r0, 0(r26)
/* 802AC8CC 002A852C 60 00 00 02 */ ori r0, r0, 2
/* 802AC8D0 002A8530 98 1A 00 00 */ stb r0, 0(r26)
lbl_802AC8D4:
/* 802AC8D4 002A8534 80 18 00 2C */ lwz r0, 0x2c(r24)
/* 802AC8D8 002A8538 90 1C 08 9C */ stw r0, 0x89c(r28)
/* 802AC8DC 002A853C 9B 7C 09 87 */ stb r27, 0x987(r28)
/* 802AC8E0 002A8540 4B FC 5E F9 */ bl __OSGetSystemTime
/* 802AC8E4 002A8544 3C C0 80 00 */ lis r6, 0x800000F8@ha
/* 802AC8E8 002A8548 38 A0 00 00 */ li r5, 0
/* 802AC8EC 002A854C 80 06 00 F8 */ lwz r0, 0x800000F8@l(r6)
/* 802AC8F0 002A8550 54 00 F8 7C */ rlwinm r0, r0, 0x1f, 1, 0x1e
/* 802AC8F4 002A8554 7C 00 20 14 */ addc r0, r0, r4
/* 802AC8F8 002A8558 90 1C 09 0C */ stw r0, 0x90c(r28)
/* 802AC8FC 002A855C 7C 05 19 14 */ adde r0, r5, r3
/* 802AC900 002A8560 7F E3 FB 78 */ mr r3, r31
/* 802AC904 002A8564 90 1C 09 08 */ stw r0, 0x908(r28)
/* 802AC908 002A8568 98 BC 09 10 */ stb r5, 0x910(r28)
/* 802AC90C 002A856C 4B FC 1E 79 */ bl OSRestoreInterrupts
lbl_802AC910:
/* 802AC910 002A8570 3C 60 80 44 */ lis r3, lbl_8043C25C@ha
/* 802AC914 002A8574 7F 65 DB 78 */ mr r5, r27
/* 802AC918 002A8578 38 63 C2 5C */ addi r3, r3, lbl_8043C25C@l
/* 802AC91C 002A857C 7F A4 07 74 */ extsb r4, r29
/* 802AC920 002A8580 4C C6 31 82 */ crclr 6
/* 802AC924 002A8584 48 00 6F 3D */ bl DEBUGPrint
/* 802AC928 002A8588 38 19 00 12 */ addi r0, r25, 0x12
/* 802AC92C 002A858C 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 802AC930 002A8590 48 00 D1 7D */ bl GKI_getbuf
/* 802AC934 002A8594 38 99 00 01 */ addi r4, r25, 1
/* 802AC938 002A8598 38 00 00 0A */ li r0, 0xa
/* 802AC93C 002A859C 54 84 06 3E */ clrlwi r4, r4, 0x18
/* 802AC940 002A85A0 3B 83 00 12 */ addi r28, r3, 0x12
/* 802AC944 002A85A4 B0 83 00 02 */ sth r4, 2(r3)
/* 802AC948 002A85A8 7C 78 1B 78 */ mr r24, r3
/* 802AC94C 002A85AC 7F 44 D3 78 */ mr r4, r26
/* 802AC950 002A85B0 7F 25 CB 78 */ mr r5, r25
/* 802AC954 002A85B4 B0 03 00 04 */ sth r0, 4(r3)
/* 802AC958 002A85B8 38 7C 00 01 */ addi r3, r28, 1
/* 802AC95C 002A85BC 9B 7C 00 00 */ stb r27, 0(r28)
/* 802AC960 002A85C0 4B D5 76 A1 */ bl memcpy
/* 802AC964 002A85C4 2C 1E 00 00 */ cmpwi r30, 0
/* 802AC968 002A85C8 41 82 00 14 */ beq lbl_802AC97C
/* 802AC96C 002A85CC 88 1C 00 01 */ lbz r0, 1(r28)
/* 802AC970 002A85D0 60 00 00 01 */ ori r0, r0, 1
/* 802AC974 002A85D4 98 1C 00 01 */ stb r0, 1(r28)
/* 802AC978 002A85D8 48 00 00 10 */ b lbl_802AC988
lbl_802AC97C:
/* 802AC97C 002A85DC 88 1C 00 01 */ lbz r0, 1(r28)
/* 802AC980 002A85E0 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e
/* 802AC984 002A85E4 98 1C 00 01 */ stb r0, 1(r28)
lbl_802AC988:
/* 802AC988 002A85E8 7F A3 EB 78 */ mr r3, r29
/* 802AC98C 002A85EC 7F 04 C3 78 */ mr r4, r24
/* 802AC990 002A85F0 48 01 5F A5 */ bl BTA_HhSendData
lbl_802AC994:
/* 802AC994 002A85F4 39 61 00 40 */ addi r11, r1, 0x40
/* 802AC998 002A85F8 4B F1 A7 CD */ bl _restgpr_23
/* 802AC99C 002A85FC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802AC9A0 002A8600 7C 08 03 A6 */ mtlr r0
/* 802AC9A4 002A8604 38 21 00 40 */ addi r1, r1, 0x40
/* 802AC9A8 002A8608 4E 80 00 20 */ blr
.global WPADiSendSetReportType
WPADiSendSetReportType:
/* 802AC9AC 002A860C 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802AC9B0 002A8610 7C 08 02 A6 */ mflr r0
/* 802AC9B4 002A8614 38 E0 00 12 */ li r7, 0x12
/* 802AC9B8 002A8618 38 C0 00 02 */ li r6, 2
/* 802AC9BC 002A861C 90 01 00 84 */ stw r0, 0x84(r1)
/* 802AC9C0 002A8620 38 00 00 04 */ li r0, 4
/* 802AC9C4 002A8624 28 04 00 09 */ cmplwi r4, 9
/* 802AC9C8 002A8628 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 802AC9CC 002A862C 93 C1 00 78 */ stw r30, 0x78(r1)
/* 802AC9D0 002A8630 7C 7E 1B 78 */ mr r30, r3
/* 802AC9D4 002A8634 93 A1 00 74 */ stw r29, 0x74(r1)
/* 802AC9D8 002A8638 90 E1 00 38 */ stw r7, 0x38(r1)
/* 802AC9DC 002A863C B0 C1 00 52 */ sth r6, 0x52(r1)
/* 802AC9E0 002A8640 98 01 00 3C */ stb r0, 0x3c(r1)
/* 802AC9E4 002A8644 90 A1 00 64 */ stw r5, 0x64(r1)
/* 802AC9E8 002A8648 41 81 00 90 */ bgt lbl_802ACA78
/* 802AC9EC 002A864C 3C 60 80 44 */ lis r3, lbl_8043C278@ha
/* 802AC9F0 002A8650 54 80 10 3A */ slwi r0, r4, 2
/* 802AC9F4 002A8654 38 63 C2 78 */ addi r3, r3, lbl_8043C278@l
/* 802AC9F8 002A8658 7C 63 00 2E */ lwzx r3, r3, r0
/* 802AC9FC 002A865C 7C 69 03 A6 */ mtctr r3
/* 802ACA00 002A8660 4E 80 04 20 */ bctr
/* 802ACA04 002A8664 38 00 00 30 */ li r0, 0x30
/* 802ACA08 002A8668 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA0C 002A866C 48 00 00 6C */ b lbl_802ACA78
/* 802ACA10 002A8670 38 00 00 31 */ li r0, 0x31
/* 802ACA14 002A8674 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA18 002A8678 48 00 00 60 */ b lbl_802ACA78
/* 802ACA1C 002A867C 38 00 00 33 */ li r0, 0x33
/* 802ACA20 002A8680 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA24 002A8684 48 00 00 54 */ b lbl_802ACA78
/* 802ACA28 002A8688 38 00 00 32 */ li r0, 0x32
/* 802ACA2C 002A868C 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA30 002A8690 48 00 00 48 */ b lbl_802ACA78
/* 802ACA34 002A8694 38 00 00 35 */ li r0, 0x35
/* 802ACA38 002A8698 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA3C 002A869C 48 00 00 3C */ b lbl_802ACA78
/* 802ACA40 002A86A0 38 00 00 37 */ li r0, 0x37
/* 802ACA44 002A86A4 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA48 002A86A8 48 00 00 30 */ b lbl_802ACA78
/* 802ACA4C 002A86AC 38 00 00 32 */ li r0, 0x32
/* 802ACA50 002A86B0 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA54 002A86B4 48 00 00 24 */ b lbl_802ACA78
/* 802ACA58 002A86B8 38 00 00 35 */ li r0, 0x35
/* 802ACA5C 002A86BC 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA60 002A86C0 48 00 00 18 */ b lbl_802ACA78
/* 802ACA64 002A86C4 38 00 00 37 */ li r0, 0x37
/* 802ACA68 002A86C8 98 01 00 3D */ stb r0, 0x3d(r1)
/* 802ACA6C 002A86CC 48 00 00 0C */ b lbl_802ACA78
/* 802ACA70 002A86D0 38 00 00 3E */ li r0, 0x3e
/* 802ACA74 002A86D4 98 01 00 3D */ stb r0, 0x3d(r1)
lbl_802ACA78:
/* 802ACA78 002A86D8 83 E1 00 38 */ lwz r31, 0x38(r1)
/* 802ACA7C 002A86DC 81 81 00 3C */ lwz r12, 0x3c(r1)
/* 802ACA80 002A86E0 81 61 00 40 */ lwz r11, 0x40(r1)
/* 802ACA84 002A86E4 81 41 00 44 */ lwz r10, 0x44(r1)
/* 802ACA88 002A86E8 81 21 00 48 */ lwz r9, 0x48(r1)
/* 802ACA8C 002A86EC 81 01 00 4C */ lwz r8, 0x4c(r1)
/* 802ACA90 002A86F0 80 E1 00 50 */ lwz r7, 0x50(r1)
/* 802ACA94 002A86F4 80 C1 00 54 */ lwz r6, 0x54(r1)
/* 802ACA98 002A86F8 80 A1 00 58 */ lwz r5, 0x58(r1)
/* 802ACA9C 002A86FC 80 81 00 5C */ lwz r4, 0x5c(r1)
/* 802ACAA0 002A8700 80 61 00 60 */ lwz r3, 0x60(r1)
/* 802ACAA4 002A8704 80 01 00 64 */ lwz r0, 0x64(r1)
/* 802ACAA8 002A8708 93 E1 00 08 */ stw r31, 8(r1)
/* 802ACAAC 002A870C 91 81 00 0C */ stw r12, 0xc(r1)
/* 802ACAB0 002A8710 91 61 00 10 */ stw r11, 0x10(r1)
/* 802ACAB4 002A8714 91 41 00 14 */ stw r10, 0x14(r1)
/* 802ACAB8 002A8718 91 21 00 18 */ stw r9, 0x18(r1)
/* 802ACABC 002A871C 91 01 00 1C */ stw r8, 0x1c(r1)
/* 802ACAC0 002A8720 90 E1 00 20 */ stw r7, 0x20(r1)
/* 802ACAC4 002A8724 90 C1 00 24 */ stw r6, 0x24(r1)
/* 802ACAC8 002A8728 90 A1 00 28 */ stw r5, 0x28(r1)
/* 802ACACC 002A872C 90 81 00 2C */ stw r4, 0x2c(r1)
/* 802ACAD0 002A8730 90 61 00 30 */ stw r3, 0x30(r1)
/* 802ACAD4 002A8734 90 01 00 34 */ stw r0, 0x34(r1)
/* 802ACAD8 002A8738 4B FC 1C 85 */ bl OSDisableInterrupts
/* 802ACADC 002A873C 7C 7F 1B 78 */ mr r31, r3
/* 802ACAE0 002A8740 4B FC 1C 7D */ bl OSDisableInterrupts
/* 802ACAE4 002A8744 88 9E 00 00 */ lbz r4, 0(r30)
/* 802ACAE8 002A8748 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACAEC 002A874C 7C 04 00 50 */ subf r0, r4, r0
/* 802ACAF0 002A8750 7C 1D 07 75 */ extsb. r29, r0
/* 802ACAF4 002A8754 40 80 00 10 */ bge lbl_802ACB04
/* 802ACAF8 002A8758 80 1E 00 08 */ lwz r0, 8(r30)
/* 802ACAFC 002A875C 7C 1D 02 14 */ add r0, r29, r0
/* 802ACB00 002A8760 7C 1D 07 74 */ extsb r29, r0
lbl_802ACB04:
/* 802ACB04 002A8764 4B FC 1C 81 */ bl OSRestoreInterrupts
/* 802ACB08 002A8768 80 7E 00 08 */ lwz r3, 8(r30)
/* 802ACB0C 002A876C 38 03 FF FF */ addi r0, r3, -1
/* 802ACB10 002A8770 7C 00 E8 40 */ cmplw r0, r29
/* 802ACB14 002A8774 40 82 00 14 */ bne lbl_802ACB28
/* 802ACB18 002A8778 7F E3 FB 78 */ mr r3, r31
/* 802ACB1C 002A877C 4B FC 1C 69 */ bl OSRestoreInterrupts
/* 802ACB20 002A8780 38 60 00 00 */ li r3, 0
/* 802ACB24 002A8784 48 00 00 7C */ b lbl_802ACBA0
lbl_802ACB28:
/* 802ACB28 002A8788 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACB2C 002A878C 38 80 00 00 */ li r4, 0
/* 802ACB30 002A8790 80 7E 00 04 */ lwz r3, 4(r30)
/* 802ACB34 002A8794 38 A0 00 30 */ li r5, 0x30
/* 802ACB38 002A8798 7C 00 07 74 */ extsb r0, r0
/* 802ACB3C 002A879C 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ACB40 002A87A0 7C 63 02 14 */ add r3, r3, r0
/* 802ACB44 002A87A4 4B D5 75 C1 */ bl memset
/* 802ACB48 002A87A8 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACB4C 002A87AC 38 81 00 08 */ addi r4, r1, 8
/* 802ACB50 002A87B0 80 7E 00 04 */ lwz r3, 4(r30)
/* 802ACB54 002A87B4 38 A0 00 30 */ li r5, 0x30
/* 802ACB58 002A87B8 7C 00 07 74 */ extsb r0, r0
/* 802ACB5C 002A87BC 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ACB60 002A87C0 7C 63 02 14 */ add r3, r3, r0
/* 802ACB64 002A87C4 4B D5 74 9D */ bl memcpy
/* 802ACB68 002A87C8 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACB6C 002A87CC 7F E3 FB 78 */ mr r3, r31
/* 802ACB70 002A87D0 80 9E 00 08 */ lwz r4, 8(r30)
/* 802ACB74 002A87D4 7C 06 07 74 */ extsb r6, r0
/* 802ACB78 002A87D8 38 84 FF FF */ addi r4, r4, -1
/* 802ACB7C 002A87DC 7C A4 30 50 */ subf r5, r4, r6
/* 802ACB80 002A87E0 38 06 00 01 */ addi r0, r6, 1
/* 802ACB84 002A87E4 7C 86 20 50 */ subf r4, r6, r4
/* 802ACB88 002A87E8 7C A4 20 F8 */ nor r4, r5, r4
/* 802ACB8C 002A87EC 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ACB90 002A87F0 7C 00 20 78 */ andc r0, r0, r4
/* 802ACB94 002A87F4 98 1E 00 01 */ stb r0, 1(r30)
/* 802ACB98 002A87F8 4B FC 1B ED */ bl OSRestoreInterrupts
/* 802ACB9C 002A87FC 38 60 00 01 */ li r3, 1
lbl_802ACBA0:
/* 802ACBA0 002A8800 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802ACBA4 002A8804 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 802ACBA8 002A8808 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 802ACBAC 002A880C 83 A1 00 74 */ lwz r29, 0x74(r1)
/* 802ACBB0 002A8810 7C 08 03 A6 */ mtlr r0
/* 802ACBB4 002A8814 38 21 00 80 */ addi r1, r1, 0x80
/* 802ACBB8 002A8818 4E 80 00 20 */ blr
.global WPADiSendWriteDataCmd
WPADiSendWriteDataCmd:
/* 802ACBBC 002A881C 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802ACBC0 002A8820 7C 08 02 A6 */ mflr r0
/* 802ACBC4 002A8824 39 00 00 01 */ li r8, 1
/* 802ACBC8 002A8828 38 E0 00 16 */ li r7, 0x16
/* 802ACBCC 002A882C 90 01 00 84 */ stw r0, 0x84(r1)
/* 802ACBD0 002A8830 38 00 00 15 */ li r0, 0x15
/* 802ACBD4 002A8834 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 802ACBD8 002A8838 7C 7F 1B 78 */ mr r31, r3
/* 802ACBDC 002A883C 38 61 00 14 */ addi r3, r1, 0x14
/* 802ACBE0 002A8840 93 C1 00 78 */ stw r30, 0x78(r1)
/* 802ACBE4 002A8844 93 A1 00 74 */ stw r29, 0x74(r1)
/* 802ACBE8 002A8848 98 81 00 08 */ stb r4, 8(r1)
/* 802ACBEC 002A884C 38 81 00 0C */ addi r4, r1, 0xc
/* 802ACBF0 002A8850 90 A1 00 0C */ stw r5, 0xc(r1)
/* 802ACBF4 002A8854 38 A0 00 04 */ li r5, 4
/* 802ACBF8 002A8858 99 01 00 09 */ stb r8, 9(r1)
/* 802ACBFC 002A885C 90 E1 00 10 */ stw r7, 0x10(r1)
/* 802ACC00 002A8860 B0 01 00 2A */ sth r0, 0x2a(r1)
/* 802ACC04 002A8864 90 C1 00 3C */ stw r6, 0x3c(r1)
/* 802ACC08 002A8868 4B D5 73 F9 */ bl memcpy
/* 802ACC0C 002A886C 38 61 00 18 */ addi r3, r1, 0x18
/* 802ACC10 002A8870 38 81 00 09 */ addi r4, r1, 9
/* 802ACC14 002A8874 38 A0 00 01 */ li r5, 1
/* 802ACC18 002A8878 4B D5 73 E9 */ bl memcpy
/* 802ACC1C 002A887C 38 61 00 19 */ addi r3, r1, 0x19
/* 802ACC20 002A8880 38 81 00 08 */ addi r4, r1, 8
/* 802ACC24 002A8884 38 A0 00 01 */ li r5, 1
/* 802ACC28 002A8888 4B D5 73 D9 */ bl memcpy
/* 802ACC2C 002A888C 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 802ACC30 002A8890 81 81 00 14 */ lwz r12, 0x14(r1)
/* 802ACC34 002A8894 81 61 00 18 */ lwz r11, 0x18(r1)
/* 802ACC38 002A8898 81 41 00 1C */ lwz r10, 0x1c(r1)
/* 802ACC3C 002A889C 81 21 00 20 */ lwz r9, 0x20(r1)
/* 802ACC40 002A88A0 81 01 00 24 */ lwz r8, 0x24(r1)
/* 802ACC44 002A88A4 80 E1 00 28 */ lwz r7, 0x28(r1)
/* 802ACC48 002A88A8 80 C1 00 2C */ lwz r6, 0x2c(r1)
/* 802ACC4C 002A88AC 80 A1 00 30 */ lwz r5, 0x30(r1)
/* 802ACC50 002A88B0 80 81 00 34 */ lwz r4, 0x34(r1)
/* 802ACC54 002A88B4 80 61 00 38 */ lwz r3, 0x38(r1)
/* 802ACC58 002A88B8 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 802ACC5C 002A88BC 93 C1 00 40 */ stw r30, 0x40(r1)
/* 802ACC60 002A88C0 91 81 00 44 */ stw r12, 0x44(r1)
/* 802ACC64 002A88C4 91 61 00 48 */ stw r11, 0x48(r1)
/* 802ACC68 002A88C8 91 41 00 4C */ stw r10, 0x4c(r1)
/* 802ACC6C 002A88CC 91 21 00 50 */ stw r9, 0x50(r1)
/* 802ACC70 002A88D0 91 01 00 54 */ stw r8, 0x54(r1)
/* 802ACC74 002A88D4 90 E1 00 58 */ stw r7, 0x58(r1)
/* 802ACC78 002A88D8 90 C1 00 5C */ stw r6, 0x5c(r1)
/* 802ACC7C 002A88DC 90 A1 00 60 */ stw r5, 0x60(r1)
/* 802ACC80 002A88E0 90 81 00 64 */ stw r4, 0x64(r1)
/* 802ACC84 002A88E4 90 61 00 68 */ stw r3, 0x68(r1)
/* 802ACC88 002A88E8 90 01 00 6C */ stw r0, 0x6c(r1)
/* 802ACC8C 002A88EC 4B FC 1A D1 */ bl OSDisableInterrupts
/* 802ACC90 002A88F0 7C 7E 1B 78 */ mr r30, r3
/* 802ACC94 002A88F4 4B FC 1A C9 */ bl OSDisableInterrupts
/* 802ACC98 002A88F8 88 9F 00 00 */ lbz r4, 0(r31)
/* 802ACC9C 002A88FC 88 1F 00 01 */ lbz r0, 1(r31)
/* 802ACCA0 002A8900 7C 04 00 50 */ subf r0, r4, r0
/* 802ACCA4 002A8904 7C 1D 07 75 */ extsb. r29, r0
/* 802ACCA8 002A8908 40 80 00 10 */ bge lbl_802ACCB8
/* 802ACCAC 002A890C 80 1F 00 08 */ lwz r0, 8(r31)
/* 802ACCB0 002A8910 7C 1D 02 14 */ add r0, r29, r0
/* 802ACCB4 002A8914 7C 1D 07 74 */ extsb r29, r0
lbl_802ACCB8:
/* 802ACCB8 002A8918 4B FC 1A CD */ bl OSRestoreInterrupts
/* 802ACCBC 002A891C 80 7F 00 08 */ lwz r3, 8(r31)
/* 802ACCC0 002A8920 38 03 FF FF */ addi r0, r3, -1
/* 802ACCC4 002A8924 7C 00 E8 40 */ cmplw r0, r29
/* 802ACCC8 002A8928 40 82 00 14 */ bne lbl_802ACCDC
/* 802ACCCC 002A892C 7F C3 F3 78 */ mr r3, r30
/* 802ACCD0 002A8930 4B FC 1A B5 */ bl OSRestoreInterrupts
/* 802ACCD4 002A8934 38 60 00 00 */ li r3, 0
/* 802ACCD8 002A8938 48 00 00 7C */ b lbl_802ACD54
lbl_802ACCDC:
/* 802ACCDC 002A893C 88 1F 00 01 */ lbz r0, 1(r31)
/* 802ACCE0 002A8940 38 80 00 00 */ li r4, 0
/* 802ACCE4 002A8944 80 7F 00 04 */ lwz r3, 4(r31)
/* 802ACCE8 002A8948 38 A0 00 30 */ li r5, 0x30
/* 802ACCEC 002A894C 7C 00 07 74 */ extsb r0, r0
/* 802ACCF0 002A8950 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ACCF4 002A8954 7C 63 02 14 */ add r3, r3, r0
/* 802ACCF8 002A8958 4B D5 74 0D */ bl memset
/* 802ACCFC 002A895C 88 1F 00 01 */ lbz r0, 1(r31)
/* 802ACD00 002A8960 38 81 00 40 */ addi r4, r1, 0x40
/* 802ACD04 002A8964 80 7F 00 04 */ lwz r3, 4(r31)
/* 802ACD08 002A8968 38 A0 00 30 */ li r5, 0x30
/* 802ACD0C 002A896C 7C 00 07 74 */ extsb r0, r0
/* 802ACD10 002A8970 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ACD14 002A8974 7C 63 02 14 */ add r3, r3, r0
/* 802ACD18 002A8978 4B D5 72 E9 */ bl memcpy
/* 802ACD1C 002A897C 88 1F 00 01 */ lbz r0, 1(r31)
/* 802ACD20 002A8980 7F C3 F3 78 */ mr r3, r30
/* 802ACD24 002A8984 80 9F 00 08 */ lwz r4, 8(r31)
/* 802ACD28 002A8988 7C 06 07 74 */ extsb r6, r0
/* 802ACD2C 002A898C 38 84 FF FF */ addi r4, r4, -1
/* 802ACD30 002A8990 7C A4 30 50 */ subf r5, r4, r6
/* 802ACD34 002A8994 38 06 00 01 */ addi r0, r6, 1
/* 802ACD38 002A8998 7C 86 20 50 */ subf r4, r6, r4
/* 802ACD3C 002A899C 7C A4 20 F8 */ nor r4, r5, r4
/* 802ACD40 002A89A0 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ACD44 002A89A4 7C 00 20 78 */ andc r0, r0, r4
/* 802ACD48 002A89A8 98 1F 00 01 */ stb r0, 1(r31)
/* 802ACD4C 002A89AC 4B FC 1A 39 */ bl OSRestoreInterrupts
/* 802ACD50 002A89B0 38 60 00 01 */ li r3, 1
lbl_802ACD54:
/* 802ACD54 002A89B4 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802ACD58 002A89B8 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 802ACD5C 002A89BC 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 802ACD60 002A89C0 83 A1 00 74 */ lwz r29, 0x74(r1)
/* 802ACD64 002A89C4 7C 08 03 A6 */ mtlr r0
/* 802ACD68 002A89C8 38 21 00 80 */ addi r1, r1, 0x80
/* 802ACD6C 002A89CC 4E 80 00 20 */ blr
.global WPADiSendWriteData
WPADiSendWriteData:
/* 802ACD70 002A89D0 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802ACD74 002A89D4 7C 08 02 A6 */ mflr r0
/* 802ACD78 002A89D8 54 A9 06 FE */ clrlwi r9, r5, 0x1b
/* 802ACD7C 002A89DC 39 00 00 16 */ li r8, 0x16
/* 802ACD80 002A89E0 90 01 00 84 */ stw r0, 0x84(r1)
/* 802ACD84 002A89E4 38 00 00 15 */ li r0, 0x15
/* 802ACD88 002A89E8 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 802ACD8C 002A89EC 7C 9F 23 78 */ mr r31, r4
/* 802ACD90 002A89F0 38 81 00 08 */ addi r4, r1, 8
/* 802ACD94 002A89F4 93 C1 00 78 */ stw r30, 0x78(r1)
/* 802ACD98 002A89F8 7C 7E 1B 78 */ mr r30, r3
/* 802ACD9C 002A89FC 38 61 00 44 */ addi r3, r1, 0x44
/* 802ACDA0 002A8A00 93 A1 00 74 */ stw r29, 0x74(r1)
/* 802ACDA4 002A8A04 7C BD 2B 78 */ mr r29, r5
/* 802ACDA8 002A8A08 38 A0 00 04 */ li r5, 4
/* 802ACDAC 002A8A0C 90 C1 00 08 */ stw r6, 8(r1)
/* 802ACDB0 002A8A10 99 21 00 0C */ stb r9, 0xc(r1)
/* 802ACDB4 002A8A14 91 01 00 40 */ stw r8, 0x40(r1)
/* 802ACDB8 002A8A18 B0 01 00 5A */ sth r0, 0x5a(r1)
/* 802ACDBC 002A8A1C 90 E1 00 6C */ stw r7, 0x6c(r1)
/* 802ACDC0 002A8A20 4B D5 72 41 */ bl memcpy
/* 802ACDC4 002A8A24 38 61 00 48 */ addi r3, r1, 0x48
/* 802ACDC8 002A8A28 38 81 00 0C */ addi r4, r1, 0xc
/* 802ACDCC 002A8A2C 38 A0 00 01 */ li r5, 1
/* 802ACDD0 002A8A30 4B D5 72 31 */ bl memcpy
/* 802ACDD4 002A8A34 7F E4 FB 78 */ mr r4, r31
/* 802ACDD8 002A8A38 7F A5 EB 78 */ mr r5, r29
/* 802ACDDC 002A8A3C 38 61 00 49 */ addi r3, r1, 0x49
/* 802ACDE0 002A8A40 4B D5 72 21 */ bl memcpy
/* 802ACDE4 002A8A44 83 E1 00 40 */ lwz r31, 0x40(r1)
/* 802ACDE8 002A8A48 81 81 00 44 */ lwz r12, 0x44(r1)
/* 802ACDEC 002A8A4C 81 61 00 48 */ lwz r11, 0x48(r1)
/* 802ACDF0 002A8A50 81 41 00 4C */ lwz r10, 0x4c(r1)
/* 802ACDF4 002A8A54 81 21 00 50 */ lwz r9, 0x50(r1)
/* 802ACDF8 002A8A58 81 01 00 54 */ lwz r8, 0x54(r1)
/* 802ACDFC 002A8A5C 80 E1 00 58 */ lwz r7, 0x58(r1)
/* 802ACE00 002A8A60 80 C1 00 5C */ lwz r6, 0x5c(r1)
/* 802ACE04 002A8A64 80 A1 00 60 */ lwz r5, 0x60(r1)
/* 802ACE08 002A8A68 80 81 00 64 */ lwz r4, 0x64(r1)
/* 802ACE0C 002A8A6C 80 61 00 68 */ lwz r3, 0x68(r1)
/* 802ACE10 002A8A70 80 01 00 6C */ lwz r0, 0x6c(r1)
/* 802ACE14 002A8A74 93 E1 00 10 */ stw r31, 0x10(r1)
/* 802ACE18 002A8A78 91 81 00 14 */ stw r12, 0x14(r1)
/* 802ACE1C 002A8A7C 91 61 00 18 */ stw r11, 0x18(r1)
/* 802ACE20 002A8A80 91 41 00 1C */ stw r10, 0x1c(r1)
/* 802ACE24 002A8A84 91 21 00 20 */ stw r9, 0x20(r1)
/* 802ACE28 002A8A88 91 01 00 24 */ stw r8, 0x24(r1)
/* 802ACE2C 002A8A8C 90 E1 00 28 */ stw r7, 0x28(r1)
/* 802ACE30 002A8A90 90 C1 00 2C */ stw r6, 0x2c(r1)
/* 802ACE34 002A8A94 90 A1 00 30 */ stw r5, 0x30(r1)
/* 802ACE38 002A8A98 90 81 00 34 */ stw r4, 0x34(r1)
/* 802ACE3C 002A8A9C 90 61 00 38 */ stw r3, 0x38(r1)
/* 802ACE40 002A8AA0 90 01 00 3C */ stw r0, 0x3c(r1)
/* 802ACE44 002A8AA4 4B FC 19 19 */ bl OSDisableInterrupts
/* 802ACE48 002A8AA8 7C 7F 1B 78 */ mr r31, r3
/* 802ACE4C 002A8AAC 4B FC 19 11 */ bl OSDisableInterrupts
/* 802ACE50 002A8AB0 88 9E 00 00 */ lbz r4, 0(r30)
/* 802ACE54 002A8AB4 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACE58 002A8AB8 7C 04 00 50 */ subf r0, r4, r0
/* 802ACE5C 002A8ABC 7C 1D 07 75 */ extsb. r29, r0
/* 802ACE60 002A8AC0 40 80 00 10 */ bge lbl_802ACE70
/* 802ACE64 002A8AC4 80 1E 00 08 */ lwz r0, 8(r30)
/* 802ACE68 002A8AC8 7C 1D 02 14 */ add r0, r29, r0
/* 802ACE6C 002A8ACC 7C 1D 07 74 */ extsb r29, r0
lbl_802ACE70:
/* 802ACE70 002A8AD0 4B FC 19 15 */ bl OSRestoreInterrupts
/* 802ACE74 002A8AD4 80 7E 00 08 */ lwz r3, 8(r30)
/* 802ACE78 002A8AD8 38 03 FF FF */ addi r0, r3, -1
/* 802ACE7C 002A8ADC 7C 00 E8 40 */ cmplw r0, r29
/* 802ACE80 002A8AE0 40 82 00 14 */ bne lbl_802ACE94
/* 802ACE84 002A8AE4 7F E3 FB 78 */ mr r3, r31
/* 802ACE88 002A8AE8 4B FC 18 FD */ bl OSRestoreInterrupts
/* 802ACE8C 002A8AEC 38 60 00 00 */ li r3, 0
/* 802ACE90 002A8AF0 48 00 00 7C */ b lbl_802ACF0C
lbl_802ACE94:
/* 802ACE94 002A8AF4 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACE98 002A8AF8 38 80 00 00 */ li r4, 0
/* 802ACE9C 002A8AFC 80 7E 00 04 */ lwz r3, 4(r30)
/* 802ACEA0 002A8B00 38 A0 00 30 */ li r5, 0x30
/* 802ACEA4 002A8B04 7C 00 07 74 */ extsb r0, r0
/* 802ACEA8 002A8B08 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ACEAC 002A8B0C 7C 63 02 14 */ add r3, r3, r0
/* 802ACEB0 002A8B10 4B D5 72 55 */ bl memset
/* 802ACEB4 002A8B14 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACEB8 002A8B18 38 81 00 10 */ addi r4, r1, 0x10
/* 802ACEBC 002A8B1C 80 7E 00 04 */ lwz r3, 4(r30)
/* 802ACEC0 002A8B20 38 A0 00 30 */ li r5, 0x30
/* 802ACEC4 002A8B24 7C 00 07 74 */ extsb r0, r0
/* 802ACEC8 002A8B28 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802ACECC 002A8B2C 7C 63 02 14 */ add r3, r3, r0
/* 802ACED0 002A8B30 4B D5 71 31 */ bl memcpy
/* 802ACED4 002A8B34 88 1E 00 01 */ lbz r0, 1(r30)
/* 802ACED8 002A8B38 7F E3 FB 78 */ mr r3, r31
/* 802ACEDC 002A8B3C 80 9E 00 08 */ lwz r4, 8(r30)
/* 802ACEE0 002A8B40 7C 06 07 74 */ extsb r6, r0
/* 802ACEE4 002A8B44 38 84 FF FF */ addi r4, r4, -1
/* 802ACEE8 002A8B48 7C A4 30 50 */ subf r5, r4, r6
/* 802ACEEC 002A8B4C 38 06 00 01 */ addi r0, r6, 1
/* 802ACEF0 002A8B50 7C 86 20 50 */ subf r4, r6, r4
/* 802ACEF4 002A8B54 7C A4 20 F8 */ nor r4, r5, r4
/* 802ACEF8 002A8B58 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802ACEFC 002A8B5C 7C 00 20 78 */ andc r0, r0, r4
/* 802ACF00 002A8B60 98 1E 00 01 */ stb r0, 1(r30)
/* 802ACF04 002A8B64 4B FC 18 81 */ bl OSRestoreInterrupts
/* 802ACF08 002A8B68 38 60 00 01 */ li r3, 1
lbl_802ACF0C:
/* 802ACF0C 002A8B6C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802ACF10 002A8B70 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 802ACF14 002A8B74 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 802ACF18 002A8B78 83 A1 00 74 */ lwz r29, 0x74(r1)
/* 802ACF1C 002A8B7C 7C 08 03 A6 */ mtlr r0
/* 802ACF20 002A8B80 38 21 00 80 */ addi r1, r1, 0x80
/* 802ACF24 002A8B84 4E 80 00 20 */ blr
.global WPADiSendReadData
WPADiSendReadData:
/* 802ACF28 002A8B88 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802ACF2C 002A8B8C 7C 08 02 A6 */ mflr r0
/* 802ACF30 002A8B90 39 00 00 17 */ li r8, 0x17
/* 802ACF34 002A8B94 90 01 00 84 */ stw r0, 0x84(r1)
/* 802ACF38 002A8B98 38 00 00 06 */ li r0, 6
/* 802ACF3C 002A8B9C 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 802ACF40 002A8BA0 93 C1 00 78 */ stw r30, 0x78(r1)
/* 802ACF44 002A8BA4 7C 7E 1B 78 */ mr r30, r3
/* 802ACF48 002A8BA8 38 61 00 44 */ addi r3, r1, 0x44
/* 802ACF4C 002A8BAC 93 A1 00 74 */ stw r29, 0x74(r1)
/* 802ACF50 002A8BB0 7C 9D 23 78 */ mr r29, r4
/* 802ACF54 002A8BB4 38 81 00 0C */ addi r4, r1, 0xc
/* 802ACF58 002A8BB8 B0 A1 00 08 */ sth r5, 8(r1)
/* 802ACF5C 002A8BBC 38 A0 00 04 */ li r5, 4
/* 802ACF60 002A8BC0 90 C1 00 0C */ stw r6, 0xc(r1)
/* 802ACF64 002A8BC4 91 01 00 40 */ stw r8, 0x40(r1)
/* 802ACF68 002A8BC8 B0 01 00 5A */ sth r0, 0x5a(r1)
/* 802ACF6C 002A8BCC 90 E1 00 6C */ stw r7, 0x6c(r1)
/* 802ACF70 002A8BD0 4B D5 70 91 */ bl memcpy
/* 802ACF74 002A8BD4 38 61 00 48 */ addi r3, r1, 0x48
/* 802ACF78 002A8BD8 38 81 00 08 */ addi r4, r1, 8
/* 802ACF7C 002A8BDC 38 A0 00 02 */ li r5, 2
/* 802ACF80 002A8BE0 4B D5 70 81 */ bl memcpy
/* 802ACF84 002A8BE4 A0 01 00 08 */ lhz r0, 8(r1)
/* 802ACF88 002A8BE8 81 81 00 0C */ lwz r12, 0xc(r1)
/* 802ACF8C 002A8BEC B0 01 00 60 */ sth r0, 0x60(r1)
/* 802ACF90 002A8BF0 81 61 00 40 */ lwz r11, 0x40(r1)
/* 802ACF94 002A8BF4 81 41 00 44 */ lwz r10, 0x44(r1)
/* 802ACF98 002A8BF8 81 21 00 48 */ lwz r9, 0x48(r1)
/* 802ACF9C 002A8BFC 81 01 00 4C */ lwz r8, 0x4c(r1)
/* 802ACFA0 002A8C00 80 E1 00 50 */ lwz r7, 0x50(r1)
/* 802ACFA4 002A8C04 80 C1 00 54 */ lwz r6, 0x54(r1)
/* 802ACFA8 002A8C08 80 A1 00 58 */ lwz r5, 0x58(r1)
/* 802ACFAC 002A8C0C 80 81 00 60 */ lwz r4, 0x60(r1)
/* 802ACFB0 002A8C10 80 61 00 68 */ lwz r3, 0x68(r1)
/* 802ACFB4 002A8C14 80 01 00 6C */ lwz r0, 0x6c(r1)
/* 802ACFB8 002A8C18 93 A1 00 5C */ stw r29, 0x5c(r1)
/* 802ACFBC 002A8C1C 91 81 00 64 */ stw r12, 0x64(r1)
/* 802ACFC0 002A8C20 91 61 00 10 */ stw r11, 0x10(r1)
/* 802ACFC4 002A8C24 91 41 00 14 */ stw r10, 0x14(r1)
/* 802ACFC8 002A8C28 91 21 00 18 */ stw r9, 0x18(r1)
/* 802ACFCC 002A8C2C 91 01 00 1C */ stw r8, 0x1c(r1)
/* 802ACFD0 002A8C30 90 E1 00 20 */ stw r7, 0x20(r1)
/* 802ACFD4 002A8C34 90 C1 00 24 */ stw r6, 0x24(r1)
/* 802ACFD8 002A8C38 90 A1 00 28 */ stw r5, 0x28(r1)
/* 802ACFDC 002A8C3C 93 A1 00 2C */ stw r29, 0x2c(r1)
/* 802ACFE0 002A8C40 90 81 00 30 */ stw r4, 0x30(r1)
/* 802ACFE4 002A8C44 91 81 00 34 */ stw r12, 0x34(r1)
/* 802ACFE8 002A8C48 90 61 00 38 */ stw r3, 0x38(r1)
/* 802ACFEC 002A8C4C 90 01 00 3C */ stw r0, 0x3c(r1)
/* 802ACFF0 002A8C50 4B FC 17 6D */ bl OSDisableInterrupts
/* 802ACFF4 002A8C54 7C 7F 1B 78 */ mr r31, r3
/* 802ACFF8 002A8C58 4B FC 17 65 */ bl OSDisableInterrupts
/* 802ACFFC 002A8C5C 88 9E 00 00 */ lbz r4, 0(r30)
/* 802AD000 002A8C60 88 1E 00 01 */ lbz r0, 1(r30)
/* 802AD004 002A8C64 7C 04 00 50 */ subf r0, r4, r0
/* 802AD008 002A8C68 7C 1D 07 75 */ extsb. r29, r0
/* 802AD00C 002A8C6C 40 80 00 10 */ bge lbl_802AD01C
/* 802AD010 002A8C70 80 1E 00 08 */ lwz r0, 8(r30)
/* 802AD014 002A8C74 7C 1D 02 14 */ add r0, r29, r0
/* 802AD018 002A8C78 7C 1D 07 74 */ extsb r29, r0
lbl_802AD01C:
/* 802AD01C 002A8C7C 4B FC 17 69 */ bl OSRestoreInterrupts
/* 802AD020 002A8C80 80 7E 00 08 */ lwz r3, 8(r30)
/* 802AD024 002A8C84 38 03 FF FF */ addi r0, r3, -1
/* 802AD028 002A8C88 7C 00 E8 40 */ cmplw r0, r29
/* 802AD02C 002A8C8C 40 82 00 14 */ bne lbl_802AD040
/* 802AD030 002A8C90 7F E3 FB 78 */ mr r3, r31
/* 802AD034 002A8C94 4B FC 17 51 */ bl OSRestoreInterrupts
/* 802AD038 002A8C98 38 60 00 00 */ li r3, 0
/* 802AD03C 002A8C9C 48 00 00 7C */ b lbl_802AD0B8
lbl_802AD040:
/* 802AD040 002A8CA0 88 1E 00 01 */ lbz r0, 1(r30)
/* 802AD044 002A8CA4 38 80 00 00 */ li r4, 0
/* 802AD048 002A8CA8 80 7E 00 04 */ lwz r3, 4(r30)
/* 802AD04C 002A8CAC 38 A0 00 30 */ li r5, 0x30
/* 802AD050 002A8CB0 7C 00 07 74 */ extsb r0, r0
/* 802AD054 002A8CB4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AD058 002A8CB8 7C 63 02 14 */ add r3, r3, r0
/* 802AD05C 002A8CBC 4B D5 70 A9 */ bl memset
/* 802AD060 002A8CC0 88 1E 00 01 */ lbz r0, 1(r30)
/* 802AD064 002A8CC4 38 81 00 10 */ addi r4, r1, 0x10
/* 802AD068 002A8CC8 80 7E 00 04 */ lwz r3, 4(r30)
/* 802AD06C 002A8CCC 38 A0 00 30 */ li r5, 0x30
/* 802AD070 002A8CD0 7C 00 07 74 */ extsb r0, r0
/* 802AD074 002A8CD4 1C 00 00 30 */ mulli r0, r0, 0x30
/* 802AD078 002A8CD8 7C 63 02 14 */ add r3, r3, r0
/* 802AD07C 002A8CDC 4B D5 6F 85 */ bl memcpy
/* 802AD080 002A8CE0 88 1E 00 01 */ lbz r0, 1(r30)
/* 802AD084 002A8CE4 7F E3 FB 78 */ mr r3, r31
/* 802AD088 002A8CE8 80 9E 00 08 */ lwz r4, 8(r30)
/* 802AD08C 002A8CEC 7C 06 07 74 */ extsb r6, r0
/* 802AD090 002A8CF0 38 84 FF FF */ addi r4, r4, -1
/* 802AD094 002A8CF4 7C A4 30 50 */ subf r5, r4, r6
/* 802AD098 002A8CF8 38 06 00 01 */ addi r0, r6, 1
/* 802AD09C 002A8CFC 7C 86 20 50 */ subf r4, r6, r4
/* 802AD0A0 002A8D00 7C A4 20 F8 */ nor r4, r5, r4
/* 802AD0A4 002A8D04 7C 84 FE 70 */ srawi r4, r4, 0x1f
/* 802AD0A8 002A8D08 7C 00 20 78 */ andc r0, r0, r4
/* 802AD0AC 002A8D0C 98 1E 00 01 */ stb r0, 1(r30)
/* 802AD0B0 002A8D10 4B FC 16 D5 */ bl OSRestoreInterrupts
/* 802AD0B4 002A8D14 38 60 00 01 */ li r3, 1
lbl_802AD0B8:
/* 802AD0B8 002A8D18 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802AD0BC 002A8D1C 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 802AD0C0 002A8D20 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 802AD0C4 002A8D24 83 A1 00 74 */ lwz r29, 0x74(r1)
/* 802AD0C8 002A8D28 7C 08 03 A6 */ mtlr r0
/* 802AD0CC 002A8D2C 38 21 00 80 */ addi r1, r1, 0x80
/* 802AD0D0 002A8D30 4E 80 00 20 */ blr
.global __CanPushCmdQueue
__CanPushCmdQueue:
/* 802AD0D4 002A8D34 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802AD0D8 002A8D38 7C 08 02 A6 */ mflr r0
/* 802AD0DC 002A8D3C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802AD0E0 002A8D40 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802AD0E4 002A8D44 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802AD0E8 002A8D48 7C 9E 23 78 */ mr r30, r4
/* 802AD0EC 002A8D4C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802AD0F0 002A8D50 7C 7D 1B 78 */ mr r29, r3
/* 802AD0F4 002A8D54 4B FC 16 69 */ bl OSDisableInterrupts
/* 802AD0F8 002A8D58 88 9D 00 00 */ lbz r4, 0(r29)
/* 802AD0FC 002A8D5C 88 1D 00 01 */ lbz r0, 1(r29)
/* 802AD100 002A8D60 7C 04 00 50 */ subf r0, r4, r0
/* 802AD104 002A8D64 7C 1F 07 75 */ extsb. r31, r0
/* 802AD108 002A8D68 40 80 00 10 */ bge lbl_802AD118
/* 802AD10C 002A8D6C 80 1D 00 08 */ lwz r0, 8(r29)
/* 802AD110 002A8D70 7C 1F 02 14 */ add r0, r31, r0
/* 802AD114 002A8D74 7C 1F 07 74 */ extsb r31, r0
lbl_802AD118:
/* 802AD118 002A8D78 4B FC 16 6D */ bl OSRestoreInterrupts
/* 802AD11C 002A8D7C 80 7D 00 08 */ lwz r3, 8(r29)
/* 802AD120 002A8D80 7F C0 07 74 */ extsb r0, r30
/* 802AD124 002A8D84 7C 9F 02 14 */ add r4, r31, r0
/* 802AD128 002A8D88 38 03 FF FF */ addi r0, r3, -1
/* 802AD12C 002A8D8C 7C 04 00 40 */ cmplw r4, r0
/* 802AD130 002A8D90 41 81 00 0C */ bgt lbl_802AD13C
/* 802AD134 002A8D94 38 60 00 01 */ li r3, 1
/* 802AD138 002A8D98 48 00 00 08 */ b lbl_802AD140
lbl_802AD13C:
/* 802AD13C 002A8D9C 38 60 00 00 */ li r3, 0
lbl_802AD140:
/* 802AD140 002A8DA0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802AD144 002A8DA4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802AD148 002A8DA8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802AD14C 002A8DAC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802AD150 002A8DB0 7C 08 03 A6 */ mtlr r0
/* 802AD154 002A8DB4 38 21 00 20 */ addi r1, r1, 0x20
/* 802AD158 002A8DB8 4E 80 00 20 */ blr
.global WPADiClearQueue
WPADiClearQueue:
/* 802AD15C 002A8DBC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802AD160 002A8DC0 7C 08 02 A6 */ mflr r0
/* 802AD164 002A8DC4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802AD168 002A8DC8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802AD16C 002A8DCC 93 C1 00 08 */ stw r30, 8(r1)
/* 802AD170 002A8DD0 7C 7E 1B 78 */ mr r30, r3
/* 802AD174 002A8DD4 4B FC 15 E9 */ bl OSDisableInterrupts
/* 802AD178 002A8DD8 80 1E 00 08 */ lwz r0, 8(r30)
/* 802AD17C 002A8DDC 38 80 00 00 */ li r4, 0
/* 802AD180 002A8DE0 7C 7F 1B 78 */ mr r31, r3
/* 802AD184 002A8DE4 98 9E 00 00 */ stb r4, 0(r30)
/* 802AD188 002A8DE8 1C A0 00 30 */ mulli r5, r0, 0x30
/* 802AD18C 002A8DEC 80 7E 00 04 */ lwz r3, 4(r30)
/* 802AD190 002A8DF0 98 9E 00 01 */ stb r4, 1(r30)
/* 802AD194 002A8DF4 38 80 00 00 */ li r4, 0
/* 802AD198 002A8DF8 4B D5 6F 6D */ bl memset
/* 802AD19C 002A8DFC 7F E3 FB 78 */ mr r3, r31
/* 802AD1A0 002A8E00 4B FC 15 E5 */ bl OSRestoreInterrupts
/* 802AD1A4 002A8E04 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802AD1A8 002A8E08 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802AD1AC 002A8E0C 83 C1 00 08 */ lwz r30, 8(r1)
/* 802AD1B0 002A8E10 7C 08 03 A6 */ mtlr r0
/* 802AD1B4 002A8E14 38 21 00 10 */ addi r1, r1, 0x10
/* 802AD1B8 002A8E18 4E 80 00 20 */ blr
|