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