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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global App_MEMalloc
App_MEMalloc:
/* 802B4CC0 002B0920 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B4CC4 002B0924 7C 08 02 A6 */ mflr r0
/* 802B4CC8 002B0928 3C 80 80 44 */ lis r4, lbl_8043E124@ha
/* 802B4CCC 002B092C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4CD0 002B0930 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4CD4 002B0934 7C 7F 1B 78 */ mr r31, r3
/* 802B4CD8 002B0938 38 64 E1 24 */ addi r3, r4, lbl_8043E124@l
/* 802B4CDC 002B093C 4C C6 31 82 */ crclr 6
/* 802B4CE0 002B0940 48 00 48 9D */ bl WUD_DEBUGPrint
/* 802B4CE4 002B0944 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B4CE8 002B0948 7F E3 FB 78 */ mr r3, r31
/* 802B4CEC 002B094C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B4CF0 002B0950 81 84 06 F4 */ lwz r12, 0x6f4(r4)
/* 802B4CF4 002B0954 7D 89 03 A6 */ mtctr r12
/* 802B4CF8 002B0958 4E 80 04 21 */ bctrl
/* 802B4CFC 002B095C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4D00 002B0960 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4D04 002B0964 7C 08 03 A6 */ mtlr r0
/* 802B4D08 002B0968 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4D0C 002B096C 4E 80 00 20 */ blr
.global App_MEMfree
App_MEMfree:
/* 802B4D10 002B0970 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B4D14 002B0974 7C 08 02 A6 */ mflr r0
/* 802B4D18 002B0978 3C 80 80 44 */ lis r4, lbl_8043E134@ha
/* 802B4D1C 002B097C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4D20 002B0980 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4D24 002B0984 7C 7F 1B 78 */ mr r31, r3
/* 802B4D28 002B0988 38 64 E1 34 */ addi r3, r4, lbl_8043E134@l
/* 802B4D2C 002B098C 4C C6 31 82 */ crclr 6
/* 802B4D30 002B0990 48 00 48 4D */ bl WUD_DEBUGPrint
/* 802B4D34 002B0994 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B4D38 002B0998 7F E3 FB 78 */ mr r3, r31
/* 802B4D3C 002B099C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B4D40 002B09A0 81 84 06 F8 */ lwz r12, 0x6f8(r4)
/* 802B4D44 002B09A4 7D 89 03 A6 */ mtctr r12
/* 802B4D48 002B09A8 4E 80 04 21 */ bctrl
/* 802B4D4C 002B09AC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4D50 002B09B0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4D54 002B09B4 7C 08 03 A6 */ mtlr r0
/* 802B4D58 002B09B8 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4D5C 002B09BC 4E 80 00 20 */ blr
SyncFlushCallback:
/* 802B4D60 002B09C0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B4D64 002B09C4 7C 08 02 A6 */ mflr r0
/* 802B4D68 002B09C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4D6C 002B09CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4D70 002B09D0 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B4D74 002B09D4 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B4D78 002B09D8 93 C1 00 08 */ stw r30, 8(r1)
/* 802B4D7C 002B09DC 7C 7E 1B 78 */ mr r30, r3
/* 802B4D80 002B09E0 3C 60 80 44 */ lis r3, lbl_8043E144@ha
/* 802B4D84 002B09E4 88 BF 00 0C */ lbz r5, 0xc(r31)
/* 802B4D88 002B09E8 7F C4 F3 78 */ mr r4, r30
/* 802B4D8C 002B09EC 38 63 E1 44 */ addi r3, r3, lbl_8043E144@l
/* 802B4D90 002B09F0 4C C6 31 82 */ crclr 6
/* 802B4D94 002B09F4 48 00 47 E9 */ bl WUD_DEBUGPrint
/* 802B4D98 002B09F8 88 1F 00 0C */ lbz r0, 0xc(r31)
/* 802B4D9C 002B09FC 2C 00 00 00 */ cmpwi r0, 0
/* 802B4DA0 002B0A00 41 82 00 20 */ beq lbl_802B4DC0
/* 802B4DA4 002B0A04 2C 1E 00 00 */ cmpwi r30, 0
/* 802B4DA8 002B0A08 40 82 00 10 */ bne lbl_802B4DB8
/* 802B4DAC 002B0A0C 38 00 00 17 */ li r0, 0x17
/* 802B4DB0 002B0A10 98 1F 00 0C */ stb r0, 0xc(r31)
/* 802B4DB4 002B0A14 48 00 00 0C */ b lbl_802B4DC0
lbl_802B4DB8:
/* 802B4DB8 002B0A18 38 00 00 FF */ li r0, 0xff
/* 802B4DBC 002B0A1C 98 1F 00 0C */ stb r0, 0xc(r31)
lbl_802B4DC0:
/* 802B4DC0 002B0A20 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4DC4 002B0A24 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4DC8 002B0A28 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B4DCC 002B0A2C 7C 08 03 A6 */ mtlr r0
/* 802B4DD0 002B0A30 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4DD4 002B0A34 4E 80 00 20 */ blr
DeleteFlushCallback:
/* 802B4DD8 002B0A38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B4DDC 002B0A3C 7C 08 02 A6 */ mflr r0
/* 802B4DE0 002B0A40 3C C0 80 44 */ lis r6, lbl_8043E168@ha
/* 802B4DE4 002B0A44 7C 64 1B 78 */ mr r4, r3
/* 802B4DE8 002B0A48 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4DEC 002B0A4C 38 66 E1 68 */ addi r3, r6, lbl_8043E168@l
/* 802B4DF0 002B0A50 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4DF4 002B0A54 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B4DF8 002B0A58 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B4DFC 002B0A5C 88 BF 00 0D */ lbz r5, 0xd(r31)
/* 802B4E00 002B0A60 4C C6 31 82 */ crclr 6
/* 802B4E04 002B0A64 48 00 47 79 */ bl WUD_DEBUGPrint
/* 802B4E08 002B0A68 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 802B4E0C 002B0A6C 2C 00 00 00 */ cmpwi r0, 0
/* 802B4E10 002B0A70 41 82 00 0C */ beq lbl_802B4E1C
/* 802B4E14 002B0A74 38 00 00 08 */ li r0, 8
/* 802B4E18 002B0A78 98 1F 00 0D */ stb r0, 0xd(r31)
lbl_802B4E1C:
/* 802B4E1C 002B0A7C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4E20 002B0A80 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4E24 002B0A84 7C 08 03 A6 */ mtlr r0
/* 802B4E28 002B0A88 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4E2C 002B0A8C 4E 80 00 20 */ blr
ShutFlushCallback:
/* 802B4E30 002B0A90 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B4E34 002B0A94 7C 08 02 A6 */ mflr r0
/* 802B4E38 002B0A98 3C C0 80 44 */ lis r6, lbl_8043E190@ha
/* 802B4E3C 002B0A9C 7C 64 1B 78 */ mr r4, r3
/* 802B4E40 002B0AA0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4E44 002B0AA4 38 66 E1 90 */ addi r3, r6, lbl_8043E190@l
/* 802B4E48 002B0AA8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B4E4C 002B0AAC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B4E50 002B0AB0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B4E54 002B0AB4 88 BF 00 11 */ lbz r5, 0x11(r31)
/* 802B4E58 002B0AB8 4C C6 31 82 */ crclr 6
/* 802B4E5C 002B0ABC 48 00 47 21 */ bl WUD_DEBUGPrint
/* 802B4E60 002B0AC0 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B4E64 002B0AC4 4B FB 4C 15 */ bl OSCancelAlarm
/* 802B4E68 002B0AC8 38 00 00 03 */ li r0, 3
/* 802B4E6C 002B0ACC 98 1F 00 11 */ stb r0, 0x11(r31)
/* 802B4E70 002B0AD0 48 00 B2 45 */ bl BTA_DisableBluetooth
/* 802B4E74 002B0AD4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4E78 002B0AD8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B4E7C 002B0ADC 7C 08 03 A6 */ mtlr r0
/* 802B4E80 002B0AE0 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4E84 002B0AE4 4E 80 00 20 */ blr
.global _resumeSmpSync
_resumeSmpSync:
/* 802B4E88 002B0AE8 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B4E8C 002B0AEC 38 00 00 01 */ li r0, 1
/* 802B4E90 002B0AF0 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B4E94 002B0AF4 98 03 00 0C */ stb r0, 0xc(r3)
/* 802B4E98 002B0AF8 4E 80 00 20 */ blr
.global WUDiIsSyncDisabled
WUDiIsSyncDisabled:
/* 802B4E9C 002B0AFC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B4EA0 002B0B00 7C 08 02 A6 */ mflr r0
/* 802B4EA4 002B0B04 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B4EA8 002B0B08 39 61 00 30 */ addi r11, r1, 0x30
/* 802B4EAC 002B0B0C 4B F1 22 7D */ bl _savegpr_27
/* 802B4EB0 002B0B10 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B4EB4 002B0B14 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B4EB8 002B0B18 4B FB 98 A5 */ bl OSDisableInterrupts
/* 802B4EBC 002B0B1C 38 00 00 00 */ li r0, 0
/* 802B4EC0 002B0B20 98 1F 06 EB */ stb r0, 0x6eb(r31)
/* 802B4EC4 002B0B24 98 1F 06 EA */ stb r0, 0x6ea(r31)
/* 802B4EC8 002B0B28 4B FB 98 BD */ bl OSRestoreInterrupts
/* 802B4ECC 002B0B2C 38 60 00 00 */ li r3, 0
/* 802B4ED0 002B0B30 38 80 00 00 */ li r4, 0
/* 802B4ED4 002B0B34 48 00 B2 B5 */ bl BTA_DmSetVisibility
/* 802B4ED8 002B0B38 88 1F 06 E8 */ lbz r0, 0x6e8(r31)
/* 802B4EDC 002B0B3C 7C 00 07 75 */ extsb. r0, r0
/* 802B4EE0 002B0B40 40 82 00 0C */ bne lbl_802B4EEC
/* 802B4EE4 002B0B44 38 60 00 0E */ li r3, 0xe
/* 802B4EE8 002B0B48 48 00 00 F4 */ b lbl_802B4FDC
lbl_802B4EEC:
/* 802B4EEC 002B0B4C 4B FB 98 71 */ bl OSDisableInterrupts
/* 802B4EF0 002B0B50 8B DF 06 E5 */ lbz r30, 0x6e5(r31)
/* 802B4EF4 002B0B54 4B FB 98 91 */ bl OSRestoreInterrupts
/* 802B4EF8 002B0B58 28 1E 00 04 */ cmplwi r30, 4
/* 802B4EFC 002B0B5C 40 82 00 20 */ bne lbl_802B4F1C
/* 802B4F00 002B0B60 4B FB 98 5D */ bl OSDisableInterrupts
/* 802B4F04 002B0B64 8B DF 06 E4 */ lbz r30, 0x6e4(r31)
/* 802B4F08 002B0B68 4B FB 98 7D */ bl OSRestoreInterrupts
/* 802B4F0C 002B0B6C 28 1E 00 04 */ cmplwi r30, 4
/* 802B4F10 002B0B70 40 82 00 0C */ bne lbl_802B4F1C
/* 802B4F14 002B0B74 38 60 00 0E */ li r3, 0xe
/* 802B4F18 002B0B78 48 00 00 C4 */ b lbl_802B4FDC
lbl_802B4F1C:
/* 802B4F1C 002B0B7C 88 1F 06 E7 */ lbz r0, 0x6e7(r31)
/* 802B4F20 002B0B80 2C 00 00 00 */ cmpwi r0, 0
/* 802B4F24 002B0B84 41 82 00 A0 */ beq lbl_802B4FC4
/* 802B4F28 002B0B88 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B4F2C 002B0B8C 3B 60 00 00 */ li r27, 0
/* 802B4F30 002B0B90 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B4F34 002B0B94 3B 80 00 00 */ li r28, 0
lbl_802B4F38:
/* 802B4F38 002B0B98 4B FB 98 25 */ bl OSDisableInterrupts
/* 802B4F3C 002B0B9C 2C 1B 00 00 */ cmpwi r27, 0
/* 802B4F40 002B0BA0 41 80 00 18 */ blt lbl_802B4F58
/* 802B4F44 002B0BA4 2C 1B 00 0A */ cmpwi r27, 0xa
/* 802B4F48 002B0BA8 40 80 00 10 */ bge lbl_802B4F58
/* 802B4F4C 002B0BAC 7C 9D E2 14 */ add r4, r29, r28
/* 802B4F50 002B0BB0 3B C4 00 E4 */ addi r30, r4, 0xe4
/* 802B4F54 002B0BB4 48 00 00 14 */ b lbl_802B4F68
lbl_802B4F58:
/* 802B4F58 002B0BB8 38 1B FF F6 */ addi r0, r27, -10
/* 802B4F5C 002B0BBC 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802B4F60 002B0BC0 7C 9D 02 14 */ add r4, r29, r0
/* 802B4F64 002B0BC4 3B C4 04 A4 */ addi r30, r4, 0x4a4
lbl_802B4F68:
/* 802B4F68 002B0BC8 4B FB 98 1D */ bl OSRestoreInterrupts
/* 802B4F6C 002B0BCC 88 1E 00 59 */ lbz r0, 0x59(r30)
/* 802B4F70 002B0BD0 28 00 00 09 */ cmplwi r0, 9
/* 802B4F74 002B0BD4 40 82 00 40 */ bne lbl_802B4FB4
/* 802B4F78 002B0BD8 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B4F7C 002B0BDC 38 C0 00 00 */ li r6, 0
/* 802B4F80 002B0BE0 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B4F84 002B0BE4 38 00 00 01 */ li r0, 1
/* 802B4F88 002B0BE8 98 C1 00 10 */ stb r6, 0x10(r1)
/* 802B4F8C 002B0BEC 38 9E 00 40 */ addi r4, r30, 0x40
/* 802B4F90 002B0BF0 88 63 07 0A */ lbz r3, 0x70a(r3)
/* 802B4F94 002B0BF4 38 A1 00 08 */ addi r5, r1, 8
/* 802B4F98 002B0BF8 B0 C1 00 08 */ sth r6, 8(r1)
/* 802B4F9C 002B0BFC B0 C1 00 0A */ sth r6, 0xa(r1)
/* 802B4FA0 002B0C00 B0 01 00 0C */ sth r0, 0xc(r1)
/* 802B4FA4 002B0C04 B0 C1 00 0E */ sth r6, 0xe(r1)
/* 802B4FA8 002B0C08 48 01 3F 01 */ bl BTM_SetPowerMode
/* 802B4FAC 002B0C0C 38 60 00 01 */ li r3, 1
/* 802B4FB0 002B0C10 48 00 00 2C */ b lbl_802B4FDC
lbl_802B4FB4:
/* 802B4FB4 002B0C14 3B 7B 00 01 */ addi r27, r27, 1
/* 802B4FB8 002B0C18 3B 9C 00 60 */ addi r28, r28, 0x60
/* 802B4FBC 002B0C1C 2C 1B 00 10 */ cmpwi r27, 0x10
/* 802B4FC0 002B0C20 41 80 FF 78 */ blt lbl_802B4F38
lbl_802B4FC4:
/* 802B4FC4 002B0C24 88 7F 06 E8 */ lbz r3, 0x6e8(r31)
/* 802B4FC8 002B0C28 7C 60 07 75 */ extsb. r0, r3
/* 802B4FCC 002B0C2C 40 81 00 0C */ ble lbl_802B4FD8
/* 802B4FD0 002B0C30 38 03 FF FF */ addi r0, r3, -1
/* 802B4FD4 002B0C34 98 1F 06 E8 */ stb r0, 0x6e8(r31)
lbl_802B4FD8:
/* 802B4FD8 002B0C38 38 60 00 02 */ li r3, 2
lbl_802B4FDC:
/* 802B4FDC 002B0C3C 39 61 00 30 */ addi r11, r1, 0x30
/* 802B4FE0 002B0C40 4B F1 21 95 */ bl _restgpr_27
/* 802B4FE4 002B0C44 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B4FE8 002B0C48 7C 08 03 A6 */ mtlr r0
/* 802B4FEC 002B0C4C 38 21 00 30 */ addi r1, r1, 0x30
/* 802B4FF0 002B0C50 4E 80 00 20 */ blr
.global WUDiSaveDeviceToNand
WUDiSaveDeviceToNand:
/* 802B4FF4 002B0C54 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B4FF8 002B0C58 7C 08 02 A6 */ mflr r0
/* 802B4FFC 002B0C5C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5000 002B0C60 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B5004 002B0C64 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B5008 002B0C68 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B500C 002B0C6C 93 81 00 10 */ stw r28, 0x10(r1)
/* 802B5010 002B0C70 48 03 59 DD */ bl SCCheckStatus
/* 802B5014 002B0C74 20 83 00 01 */ subfic r4, r3, 1
/* 802B5018 002B0C78 38 03 FF FF */ addi r0, r3, -1
/* 802B501C 002B0C7C 7C 80 03 78 */ or r0, r4, r0
/* 802B5020 002B0C80 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f
/* 802B5024 002B0C84 40 82 00 0C */ bne lbl_802B5030
/* 802B5028 002B0C88 38 60 00 16 */ li r3, 0x16
/* 802B502C 002B0C8C 48 00 00 B4 */ b lbl_802B50E0
lbl_802B5030:
/* 802B5030 002B0C90 3F A0 80 54 */ lis r29, lbl_8053AC28@ha
/* 802B5034 002B0C94 38 80 00 00 */ li r4, 0
/* 802B5038 002B0C98 3B DD AC 28 */ addi r30, r29, lbl_8053AC28@l
/* 802B503C 002B0C9C 38 A0 02 BC */ li r5, 0x2bc
/* 802B5040 002B0CA0 38 7E 00 01 */ addi r3, r30, 1
/* 802B5044 002B0CA4 4B D4 F0 C1 */ bl memset
/* 802B5048 002B0CA8 4B FB 97 15 */ bl OSDisableInterrupts
/* 802B504C 002B0CAC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B5050 002B0CB0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B5054 002B0CB4 8B 9F 00 12 */ lbz r28, 0x12(r31)
/* 802B5058 002B0CB8 4B FB 97 2D */ bl OSRestoreInterrupts
/* 802B505C 002B0CBC 9B 9D AC 28 */ stb r28, -0x53d8(r29)
/* 802B5060 002B0CC0 3B A0 00 00 */ li r29, 0
/* 802B5064 002B0CC4 83 FF 00 64 */ lwz r31, 0x64(r31)
/* 802B5068 002B0CC8 48 00 00 40 */ b lbl_802B50A8
lbl_802B506C:
/* 802B506C 002B0CCC 57 A0 06 3E */ clrlwi r0, r29, 0x18
/* 802B5070 002B0CD0 80 7F 00 00 */ lwz r3, 0(r31)
/* 802B5074 002B0CD4 1F 80 00 46 */ mulli r28, r0, 0x46
/* 802B5078 002B0CD8 38 A0 00 06 */ li r5, 6
/* 802B507C 002B0CDC 38 83 00 40 */ addi r4, r3, 0x40
/* 802B5080 002B0CE0 7C 7E E2 14 */ add r3, r30, r28
/* 802B5084 002B0CE4 38 63 00 01 */ addi r3, r3, 1
/* 802B5088 002B0CE8 4B D4 EF 79 */ bl memcpy
/* 802B508C 002B0CEC 7C 7E E2 14 */ add r3, r30, r28
/* 802B5090 002B0CF0 80 9F 00 00 */ lwz r4, 0(r31)
/* 802B5094 002B0CF4 38 63 00 07 */ addi r3, r3, 7
/* 802B5098 002B0CF8 38 A0 00 40 */ li r5, 0x40
/* 802B509C 002B0CFC 4B D4 EF 65 */ bl memcpy
/* 802B50A0 002B0D00 83 FF 00 08 */ lwz r31, 8(r31)
/* 802B50A4 002B0D04 3B BD 00 01 */ addi r29, r29, 1
lbl_802B50A8:
/* 802B50A8 002B0D08 2C 1F 00 00 */ cmpwi r31, 0
/* 802B50AC 002B0D0C 40 82 FF C0 */ bne lbl_802B506C
/* 802B50B0 002B0D10 3C 60 80 44 */ lis r3, lbl_8043E1B8@ha
/* 802B50B4 002B0D14 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 802B50B8 002B0D18 38 63 E1 B8 */ addi r3, r3, lbl_8043E1B8@l
/* 802B50BC 002B0D1C 4C C6 31 82 */ crclr 6
/* 802B50C0 002B0D20 48 00 44 BD */ bl WUD_DEBUGPrint
/* 802B50C4 002B0D24 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
/* 802B50C8 002B0D28 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
/* 802B50CC 002B0D2C 48 03 75 41 */ bl SCSetBtDeviceInfoArray
/* 802B50D0 002B0D30 2C 03 00 00 */ cmpwi r3, 0
/* 802B50D4 002B0D34 38 60 00 16 */ li r3, 0x16
/* 802B50D8 002B0D38 41 82 00 08 */ beq lbl_802B50E0
/* 802B50DC 002B0D3C 38 60 00 19 */ li r3, 0x19
lbl_802B50E0:
/* 802B50E0 002B0D40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B50E4 002B0D44 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B50E8 002B0D48 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B50EC 002B0D4C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B50F0 002B0D50 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802B50F4 002B0D54 7C 08 03 A6 */ mtlr r0
/* 802B50F8 002B0D58 38 21 00 20 */ addi r1, r1, 0x20
/* 802B50FC 002B0D5C 4E 80 00 20 */ blr
.global WUDiSyncDone
WUDiSyncDone:
/* 802B5100 002B0D60 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B5104 002B0D64 7C 08 02 A6 */ mflr r0
/* 802B5108 002B0D68 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B510C 002B0D6C 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B5110 002B0D70 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802B5114 002B0D74 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802B5118 002B0D78 93 A1 00 24 */ stw r29, 0x24(r1)
/* 802B511C 002B0D7C 3B A3 A4 E0 */ addi r29, r3, lbl_8053A4E0@l
/* 802B5120 002B0D80 93 81 00 20 */ stw r28, 0x20(r1)
/* 802B5124 002B0D84 88 1D 06 E7 */ lbz r0, 0x6e7(r29)
/* 802B5128 002B0D88 2C 00 00 00 */ cmpwi r0, 0
/* 802B512C 002B0D8C 41 82 00 A0 */ beq lbl_802B51CC
/* 802B5130 002B0D90 3B 80 00 00 */ li r28, 0
/* 802B5134 002B0D94 3B C0 00 00 */ li r30, 0
lbl_802B5138:
/* 802B5138 002B0D98 4B FB 96 25 */ bl OSDisableInterrupts
/* 802B513C 002B0D9C 2C 1C 00 00 */ cmpwi r28, 0
/* 802B5140 002B0DA0 41 80 00 18 */ blt lbl_802B5158
/* 802B5144 002B0DA4 2C 1C 00 0A */ cmpwi r28, 0xa
/* 802B5148 002B0DA8 40 80 00 10 */ bge lbl_802B5158
/* 802B514C 002B0DAC 7C 9D F2 14 */ add r4, r29, r30
/* 802B5150 002B0DB0 3B E4 00 E4 */ addi r31, r4, 0xe4
/* 802B5154 002B0DB4 48 00 00 14 */ b lbl_802B5168
lbl_802B5158:
/* 802B5158 002B0DB8 38 1C FF F6 */ addi r0, r28, -10
/* 802B515C 002B0DBC 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802B5160 002B0DC0 7C 9D 02 14 */ add r4, r29, r0
/* 802B5164 002B0DC4 3B E4 04 A4 */ addi r31, r4, 0x4a4
lbl_802B5168:
/* 802B5168 002B0DC8 4B FB 96 1D */ bl OSRestoreInterrupts
/* 802B516C 002B0DCC 88 1F 00 59 */ lbz r0, 0x59(r31)
/* 802B5170 002B0DD0 28 00 00 08 */ cmplwi r0, 8
/* 802B5174 002B0DD4 40 82 00 48 */ bne lbl_802B51BC
/* 802B5178 002B0DD8 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B517C 002B0DDC 38 E0 00 08 */ li r7, 8
/* 802B5180 002B0DE0 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B5184 002B0DE4 38 80 00 02 */ li r4, 2
/* 802B5188 002B0DE8 38 C0 00 01 */ li r6, 1
/* 802B518C 002B0DEC 38 00 00 00 */ li r0, 0
/* 802B5190 002B0DF0 98 81 00 10 */ stb r4, 0x10(r1)
/* 802B5194 002B0DF4 38 9F 00 40 */ addi r4, r31, 0x40
/* 802B5198 002B0DF8 88 63 07 0A */ lbz r3, 0x70a(r3)
/* 802B519C 002B0DFC 38 A1 00 08 */ addi r5, r1, 8
/* 802B51A0 002B0E00 B0 E1 00 08 */ sth r7, 8(r1)
/* 802B51A4 002B0E04 B0 E1 00 0A */ sth r7, 0xa(r1)
/* 802B51A8 002B0E08 B0 C1 00 0C */ sth r6, 0xc(r1)
/* 802B51AC 002B0E0C B0 01 00 0E */ sth r0, 0xe(r1)
/* 802B51B0 002B0E10 48 01 3C F9 */ bl BTM_SetPowerMode
/* 802B51B4 002B0E14 38 60 00 0E */ li r3, 0xe
/* 802B51B8 002B0E18 48 00 00 8C */ b lbl_802B5244
lbl_802B51BC:
/* 802B51BC 002B0E1C 3B 9C 00 01 */ addi r28, r28, 1
/* 802B51C0 002B0E20 3B DE 00 60 */ addi r30, r30, 0x60
/* 802B51C4 002B0E24 2C 1C 00 10 */ cmpwi r28, 0x10
/* 802B51C8 002B0E28 41 80 FF 70 */ blt lbl_802B5138
lbl_802B51CC:
/* 802B51CC 002B0E2C 38 7D 07 10 */ addi r3, r29, 0x710
/* 802B51D0 002B0E30 4B FB 48 A9 */ bl OSCancelAlarm
/* 802B51D4 002B0E34 4B FB 95 89 */ bl OSDisableInterrupts
/* 802B51D8 002B0E38 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B51DC 002B0E3C 38 A0 00 00 */ li r5, 0
/* 802B51E0 002B0E40 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B51E4 002B0E44 38 00 00 01 */ li r0, 1
/* 802B51E8 002B0E48 98 A4 06 EB */ stb r5, 0x6eb(r4)
/* 802B51EC 002B0E4C 98 04 06 EA */ stb r0, 0x6ea(r4)
/* 802B51F0 002B0E50 4B FB 95 95 */ bl OSRestoreInterrupts
/* 802B51F4 002B0E54 38 60 00 00 */ li r3, 0
/* 802B51F8 002B0E58 38 80 00 01 */ li r4, 1
/* 802B51FC 002B0E5C 48 00 AF 8D */ bl BTA_DmSetVisibility
/* 802B5200 002B0E60 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
/* 802B5204 002B0E64 2C 00 00 00 */ cmpwi r0, 0
/* 802B5208 002B0E68 40 82 00 0C */ bne lbl_802B5214
/* 802B520C 002B0E6C 81 9D 00 00 */ lwz r12, 0(r29)
/* 802B5210 002B0E70 48 00 00 08 */ b lbl_802B5218
lbl_802B5214:
/* 802B5214 002B0E74 81 9D 00 04 */ lwz r12, 4(r29)
lbl_802B5218:
/* 802B5218 002B0E78 2C 0C 00 00 */ cmpwi r12, 0
/* 802B521C 002B0E7C 41 82 00 14 */ beq lbl_802B5230
/* 802B5220 002B0E80 88 9D 06 E6 */ lbz r4, 0x6e6(r29)
/* 802B5224 002B0E84 38 60 00 01 */ li r3, 1
/* 802B5228 002B0E88 7D 89 03 A6 */ mtctr r12
/* 802B522C 002B0E8C 4E 80 04 21 */ bctrl
lbl_802B5230:
/* 802B5230 002B0E90 3C 60 80 44 */ lis r3, lbl_8043E1D8@ha
/* 802B5234 002B0E94 38 63 E1 D8 */ addi r3, r3, lbl_8043E1D8@l
/* 802B5238 002B0E98 4C C6 31 82 */ crclr 6
/* 802B523C 002B0E9C 48 00 43 41 */ bl WUD_DEBUGPrint
/* 802B5240 002B0EA0 38 60 00 00 */ li r3, 0
lbl_802B5244:
/* 802B5244 002B0EA4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B5248 002B0EA8 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802B524C 002B0EAC 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802B5250 002B0EB0 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802B5254 002B0EB4 83 81 00 20 */ lwz r28, 0x20(r1)
/* 802B5258 002B0EB8 7C 08 03 A6 */ mtlr r0
/* 802B525C 002B0EBC 38 21 00 30 */ addi r1, r1, 0x30
/* 802B5260 002B0EC0 4E 80 00 20 */ blr
SyncHandler:
/* 802B5264 002B0EC4 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 802B5268 002B0EC8 7C 08 02 A6 */ mflr r0
/* 802B526C 002B0ECC 90 01 00 64 */ stw r0, 0x64(r1)
/* 802B5270 002B0ED0 39 61 00 60 */ addi r11, r1, 0x60
/* 802B5274 002B0ED4 4B F1 1E B1 */ bl _savegpr_26
/* 802B5278 002B0ED8 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B527C 002B0EDC 3F 60 80 44 */ lis r27, lbl_8043E048@ha
/* 802B5280 002B0EE0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B5284 002B0EE4 3B BF 00 00 */ addi r29, r31, 0
/* 802B5288 002B0EE8 3B 7B E0 48 */ addi r27, r27, lbl_8043E048@l
/* 802B528C 002B0EEC 88 1D 00 0C */ lbz r0, 0xc(r29)
/* 802B5290 002B0EF0 2C 00 00 0F */ cmpwi r0, 0xf
/* 802B5294 002B0EF4 41 82 03 C8 */ beq lbl_802B565C
/* 802B5298 002B0EF8 40 80 00 64 */ bge lbl_802B52FC
/* 802B529C 002B0EFC 2C 00 00 07 */ cmpwi r0, 7
/* 802B52A0 002B0F00 41 82 05 C4 */ beq lbl_802B5864
/* 802B52A4 002B0F04 40 80 00 30 */ bge lbl_802B52D4
/* 802B52A8 002B0F08 2C 00 00 03 */ cmpwi r0, 3
/* 802B52AC 002B0F0C 41 82 07 84 */ beq lbl_802B5A30
/* 802B52B0 002B0F10 40 80 00 14 */ bge lbl_802B52C4
/* 802B52B4 002B0F14 2C 00 00 01 */ cmpwi r0, 1
/* 802B52B8 002B0F18 41 82 00 A0 */ beq lbl_802B5358
/* 802B52BC 002B0F1C 40 80 00 A8 */ bge lbl_802B5364
/* 802B52C0 002B0F20 48 00 07 BC */ b lbl_802B5A7C
lbl_802B52C4:
/* 802B52C4 002B0F24 2C 00 00 05 */ cmpwi r0, 5
/* 802B52C8 002B0F28 41 82 02 60 */ beq lbl_802B5528
/* 802B52CC 002B0F2C 40 80 07 BC */ bge lbl_802B5A88
/* 802B52D0 002B0F30 48 00 01 50 */ b lbl_802B5420
lbl_802B52D4:
/* 802B52D4 002B0F34 2C 00 00 0A */ cmpwi r0, 0xa
/* 802B52D8 002B0F38 41 82 06 C4 */ beq lbl_802B599C
/* 802B52DC 002B0F3C 40 80 00 10 */ bge lbl_802B52EC
/* 802B52E0 002B0F40 2C 00 00 09 */ cmpwi r0, 9
/* 802B52E4 002B0F44 40 80 07 98 */ bge lbl_802B5A7C
/* 802B52E8 002B0F48 48 00 06 6C */ b lbl_802B5954
lbl_802B52EC:
/* 802B52EC 002B0F4C 2C 00 00 0D */ cmpwi r0, 0xd
/* 802B52F0 002B0F50 41 82 07 98 */ beq lbl_802B5A88
/* 802B52F4 002B0F54 40 80 07 30 */ bge lbl_802B5A24
/* 802B52F8 002B0F58 48 00 07 84 */ b lbl_802B5A7C
lbl_802B52FC:
/* 802B52FC 002B0F5C 2C 00 00 17 */ cmpwi r0, 0x17
/* 802B5300 002B0F60 41 82 06 C0 */ beq lbl_802B59C0
/* 802B5304 002B0F64 40 80 00 30 */ bge lbl_802B5334
/* 802B5308 002B0F68 2C 00 00 13 */ cmpwi r0, 0x13
/* 802B530C 002B0F6C 41 82 04 08 */ beq lbl_802B5714
/* 802B5310 002B0F70 40 80 00 14 */ bge lbl_802B5324
/* 802B5314 002B0F74 2C 00 00 11 */ cmpwi r0, 0x11
/* 802B5318 002B0F78 41 82 02 E4 */ beq lbl_802B55FC
/* 802B531C 002B0F7C 40 80 03 88 */ bge lbl_802B56A4
/* 802B5320 002B0F80 48 00 02 38 */ b lbl_802B5558
lbl_802B5324:
/* 802B5324 002B0F84 2C 00 00 15 */ cmpwi r0, 0x15
/* 802B5328 002B0F88 41 82 04 BC */ beq lbl_802B57E4
/* 802B532C 002B0F8C 40 80 06 44 */ bge lbl_802B5970
/* 802B5330 002B0F90 48 00 04 4C */ b lbl_802B577C
lbl_802B5334:
/* 802B5334 002B0F94 2C 00 00 1A */ cmpwi r0, 0x1a
/* 802B5338 002B0F98 41 82 07 50 */ beq lbl_802B5A88
/* 802B533C 002B0F9C 40 80 00 10 */ bge lbl_802B534C
/* 802B5340 002B0FA0 2C 00 00 19 */ cmpwi r0, 0x19
/* 802B5344 002B0FA4 40 80 06 38 */ bge lbl_802B597C
/* 802B5348 002B0FA8 48 00 07 40 */ b lbl_802B5A88
lbl_802B534C:
/* 802B534C 002B0FAC 2C 00 00 FF */ cmpwi r0, 0xff
/* 802B5350 002B0FB0 41 82 06 A8 */ beq lbl_802B59F8
/* 802B5354 002B0FB4 48 00 07 28 */ b lbl_802B5A7C
lbl_802B5358:
/* 802B5358 002B0FB8 4B FF FB 45 */ bl WUDiIsSyncDisabled
/* 802B535C 002B0FBC 98 7D 00 0C */ stb r3, 0xc(r29)
/* 802B5360 002B0FC0 48 00 07 28 */ b lbl_802B5A88
lbl_802B5364:
/* 802B5364 002B0FC4 88 1D 06 E7 */ lbz r0, 0x6e7(r29)
/* 802B5368 002B0FC8 38 80 00 01 */ li r4, 1
/* 802B536C 002B0FCC 38 60 00 00 */ li r3, 0
/* 802B5370 002B0FD0 98 81 00 30 */ stb r4, 0x30(r1)
/* 802B5374 002B0FD4 2C 00 00 00 */ cmpwi r0, 0
/* 802B5378 002B0FD8 98 81 00 32 */ stb r4, 0x32(r1)
/* 802B537C 002B0FDC 98 61 00 33 */ stb r3, 0x33(r1)
/* 802B5380 002B0FE0 41 82 00 10 */ beq lbl_802B5390
/* 802B5384 002B0FE4 38 00 00 03 */ li r0, 3
/* 802B5388 002B0FE8 98 01 00 31 */ stb r0, 0x31(r1)
/* 802B538C 002B0FEC 48 00 00 5C */ b lbl_802B53E8
lbl_802B5390:
/* 802B5390 002B0FF0 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
/* 802B5394 002B0FF4 2C 00 00 00 */ cmpwi r0, 0
/* 802B5398 002B0FF8 40 82 00 30 */ bne lbl_802B53C8
/* 802B539C 002B0FFC 4B FB 93 C1 */ bl OSDisableInterrupts
/* 802B53A0 002B1000 8B 7D 06 E5 */ lbz r27, 0x6e5(r29)
/* 802B53A4 002B1004 4B FB 93 E1 */ bl OSRestoreInterrupts
/* 802B53A8 002B1008 28 1B 00 03 */ cmplwi r27, 3
/* 802B53AC 002B100C 38 60 00 05 */ li r3, 5
/* 802B53B0 002B1010 40 82 00 08 */ bne lbl_802B53B8
/* 802B53B4 002B1014 38 60 00 0A */ li r3, 0xa
lbl_802B53B8:
/* 802B53B8 002B1018 88 1D 06 E8 */ lbz r0, 0x6e8(r29)
/* 802B53BC 002B101C 7C 00 18 50 */ subf r0, r0, r3
/* 802B53C0 002B1020 98 01 00 31 */ stb r0, 0x31(r1)
/* 802B53C4 002B1024 48 00 00 24 */ b lbl_802B53E8
lbl_802B53C8:
/* 802B53C8 002B1028 4B FB 93 95 */ bl OSDisableInterrupts
/* 802B53CC 002B102C 8B 7D 06 E5 */ lbz r27, 0x6e5(r29)
/* 802B53D0 002B1030 4B FB 93 B5 */ bl OSRestoreInterrupts
/* 802B53D4 002B1034 28 1B 00 03 */ cmplwi r27, 3
/* 802B53D8 002B1038 38 00 00 03 */ li r0, 3
/* 802B53DC 002B103C 40 82 00 08 */ bne lbl_802B53E4
/* 802B53E0 002B1040 38 00 00 08 */ li r0, 8
lbl_802B53E4:
/* 802B53E4 002B1044 98 01 00 31 */ stb r0, 0x31(r1)
lbl_802B53E8:
/* 802B53E8 002B1048 38 00 00 00 */ li r0, 0
/* 802B53EC 002B104C 38 7F 0B B0 */ addi r3, r31, 0xbb0
/* 802B53F0 002B1050 98 0D AE C1 */ stb r0, lbl_80640181-_SDA_BASE_(r13)
/* 802B53F4 002B1054 38 80 00 00 */ li r4, 0
/* 802B53F8 002B1058 38 A0 01 08 */ li r5, 0x108
/* 802B53FC 002B105C 4B D4 ED 09 */ bl memset
/* 802B5400 002B1060 3C A0 80 2C */ lis r5, WUDSearchCallback@ha
/* 802B5404 002B1064 38 61 00 30 */ addi r3, r1, 0x30
/* 802B5408 002B1068 38 A5 85 94 */ addi r5, r5, WUDSearchCallback@l
/* 802B540C 002B106C 38 80 00 00 */ li r4, 0
/* 802B5410 002B1070 48 00 AD D1 */ bl BTA_DmSearch
/* 802B5414 002B1074 38 00 00 03 */ li r0, 3
/* 802B5418 002B1078 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B541C 002B107C 48 00 06 6C */ b lbl_802B5A88
lbl_802B5420:
/* 802B5420 002B1080 88 0D AE C1 */ lbz r0, lbl_80640181-_SDA_BASE_(r13)
/* 802B5424 002B1084 3B C0 00 01 */ li r30, 1
/* 802B5428 002B1088 2C 00 00 00 */ cmpwi r0, 0
/* 802B542C 002B108C 41 82 00 40 */ beq lbl_802B546C
/* 802B5430 002B1090 38 7F 0B B0 */ addi r3, r31, 0xbb0
/* 802B5434 002B1094 38 9B 01 A0 */ addi r4, r27, 0x1a0
/* 802B5438 002B1098 38 63 00 06 */ addi r3, r3, 6
/* 802B543C 002B109C 38 A0 00 10 */ li r5, 0x10
/* 802B5440 002B10A0 4B F1 4F 59 */ bl memcmp
/* 802B5444 002B10A4 2C 03 00 00 */ cmpwi r3, 0
/* 802B5448 002B10A8 40 82 00 D8 */ bne lbl_802B5520
/* 802B544C 002B10AC 88 6D AE C0 */ lbz r3, lbl_80640180-_SDA_BASE_(r13)
/* 802B5450 002B10B0 88 1D 07 0B */ lbz r0, 0x70b(r29)
/* 802B5454 002B10B4 7C 63 07 74 */ extsb r3, r3
/* 802B5458 002B10B8 7C 00 07 74 */ extsb r0, r0
/* 802B545C 002B10BC 7C 03 00 00 */ cmpw r3, r0
/* 802B5460 002B10C0 40 81 00 C0 */ ble lbl_802B5520
/* 802B5464 002B10C4 3B C0 00 05 */ li r30, 5
/* 802B5468 002B10C8 48 00 00 B8 */ b lbl_802B5520
lbl_802B546C:
/* 802B546C 002B10CC 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
/* 802B5470 002B10D0 2C 00 00 00 */ cmpwi r0, 0
/* 802B5474 002B10D4 40 82 00 AC */ bne lbl_802B5520
/* 802B5478 002B10D8 3B C0 00 18 */ li r30, 0x18
/* 802B547C 002B10DC 4B FB 92 E1 */ bl OSDisableInterrupts
/* 802B5480 002B10E0 8B 7D 06 E5 */ lbz r27, 0x6e5(r29)
/* 802B5484 002B10E4 4B FB 93 01 */ bl OSRestoreInterrupts
/* 802B5488 002B10E8 28 1B 00 03 */ cmplwi r27, 3
/* 802B548C 002B10EC 3B 60 00 02 */ li r27, 2
/* 802B5490 002B10F0 40 82 00 08 */ bne lbl_802B5498
/* 802B5494 002B10F4 3B 60 00 04 */ li r27, 4
lbl_802B5498:
/* 802B5498 002B10F8 4B FB 92 C5 */ bl OSDisableInterrupts
/* 802B549C 002B10FC 3B 9F 00 00 */ addi r28, r31, 0
/* 802B54A0 002B1100 8B 5C 06 E5 */ lbz r26, 0x6e5(r28)
/* 802B54A4 002B1104 4B FB 92 E1 */ bl OSRestoreInterrupts
/* 802B54A8 002B1108 28 1A 00 04 */ cmplwi r26, 4
/* 802B54AC 002B110C 40 82 00 20 */ bne lbl_802B54CC
/* 802B54B0 002B1110 4B FB 92 AD */ bl OSDisableInterrupts
/* 802B54B4 002B1114 8B 5C 06 E4 */ lbz r26, 0x6e4(r28)
/* 802B54B8 002B1118 4B FB 92 CD */ bl OSRestoreInterrupts
/* 802B54BC 002B111C 28 1A 00 04 */ cmplwi r26, 4
/* 802B54C0 002B1120 40 82 00 0C */ bne lbl_802B54CC
/* 802B54C4 002B1124 38 00 00 0E */ li r0, 0xe
/* 802B54C8 002B1128 98 1C 00 0C */ stb r0, 0xc(r28)
lbl_802B54CC:
/* 802B54CC 002B112C 4B FB 92 91 */ bl OSDisableInterrupts
/* 802B54D0 002B1130 38 9F 00 00 */ addi r4, r31, 0
/* 802B54D4 002B1134 38 A0 00 00 */ li r5, 0
/* 802B54D8 002B1138 38 00 00 01 */ li r0, 1
/* 802B54DC 002B113C 98 A4 06 EB */ stb r5, 0x6eb(r4)
/* 802B54E0 002B1140 98 04 06 EA */ stb r0, 0x6ea(r4)
/* 802B54E4 002B1144 4B FB 92 A1 */ bl OSRestoreInterrupts
/* 802B54E8 002B1148 38 60 00 00 */ li r3, 0
/* 802B54EC 002B114C 38 80 00 01 */ li r4, 1
/* 802B54F0 002B1150 48 00 AC 99 */ bl BTA_DmSetVisibility
/* 802B54F4 002B1154 38 7F 0C B8 */ addi r3, r31, 0xcb8
/* 802B54F8 002B1158 4B FB 42 2D */ bl OSCreateAlarm
/* 802B54FC 002B115C 3C 60 80 00 */ lis r3, 0x800000F8@ha
/* 802B5500 002B1160 3C E0 80 2B */ lis r7, _resumeSmpSync@ha
/* 802B5504 002B1164 80 03 00 F8 */ lwz r0, 0x800000F8@l(r3)
/* 802B5508 002B1168 38 7F 0C B8 */ addi r3, r31, 0xcb8
/* 802B550C 002B116C 38 E7 4E 88 */ addi r7, r7, _resumeSmpSync@l
/* 802B5510 002B1170 38 A0 00 00 */ li r5, 0
/* 802B5514 002B1174 54 00 F0 BE */ srwi r0, r0, 2
/* 802B5518 002B1178 7C DB 01 D6 */ mullw r6, r27, r0
/* 802B551C 002B117C 4B FB 44 69 */ bl OSSetAlarm
lbl_802B5520:
/* 802B5520 002B1180 9B DD 00 0C */ stb r30, 0xc(r29)
/* 802B5524 002B1184 48 00 05 64 */ b lbl_802B5A88
lbl_802B5528:
/* 802B5528 002B1188 38 7F 0B B0 */ addi r3, r31, 0xbb0
/* 802B552C 002B118C 3B 40 00 11 */ li r26, 0x11
/* 802B5530 002B1190 48 00 22 35 */ bl WUDiGetDevInfo
/* 802B5534 002B1194 2C 03 00 00 */ cmpwi r3, 0
/* 802B5538 002B1198 41 82 00 18 */ beq lbl_802B5550
/* 802B553C 002B119C 7C 64 1B 78 */ mr r4, r3
/* 802B5540 002B11A0 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B5544 002B11A4 38 A0 00 60 */ li r5, 0x60
/* 802B5548 002B11A8 4B D4 EA B9 */ bl memcpy
/* 802B554C 002B11AC 3B 40 00 10 */ li r26, 0x10
lbl_802B5550:
/* 802B5550 002B11B0 9B 5D 00 0C */ stb r26, 0xc(r29)
/* 802B5554 002B11B4 48 00 05 34 */ b lbl_802B5A88
lbl_802B5558:
/* 802B5558 002B11B8 3B 5F 0C E8 */ addi r26, r31, 0xce8
/* 802B555C 002B11BC 38 60 00 01 */ li r3, 1
/* 802B5560 002B11C0 88 1A 00 5B */ lbz r0, 0x5b(r26)
/* 802B5564 002B11C4 98 7A 00 59 */ stb r3, 0x59(r26)
/* 802B5568 002B11C8 2C 00 00 02 */ cmpwi r0, 2
/* 802B556C 002B11CC 41 82 00 2C */ beq lbl_802B5598
/* 802B5570 002B11D0 40 80 00 14 */ bge lbl_802B5584
/* 802B5574 002B11D4 2C 00 00 00 */ cmpwi r0, 0
/* 802B5578 002B11D8 41 82 00 20 */ beq lbl_802B5598
/* 802B557C 002B11DC 40 80 00 50 */ bge lbl_802B55CC
/* 802B5580 002B11E0 48 00 00 70 */ b lbl_802B55F0
lbl_802B5584:
/* 802B5584 002B11E4 2C 00 00 06 */ cmpwi r0, 6
/* 802B5588 002B11E8 40 80 00 68 */ bge lbl_802B55F0
/* 802B558C 002B11EC 2C 00 00 04 */ cmpwi r0, 4
/* 802B5590 002B11F0 40 80 00 08 */ bge lbl_802B5598
/* 802B5594 002B11F4 48 00 00 38 */ b lbl_802B55CC
lbl_802B5598:
/* 802B5598 002B11F8 38 7F 00 00 */ addi r3, r31, 0
/* 802B559C 002B11FC 88 03 06 E9 */ lbz r0, 0x6e9(r3)
/* 802B55A0 002B1200 2C 00 00 00 */ cmpwi r0, 0
/* 802B55A4 002B1204 40 82 00 1C */ bne lbl_802B55C0
/* 802B55A8 002B1208 7F 43 D3 78 */ mr r3, r26
/* 802B55AC 002B120C 48 00 27 F1 */ bl WUDiMoveBottomStdDevInfoPtr
/* 802B55B0 002B1210 38 7A 00 40 */ addi r3, r26, 0x40
/* 802B55B4 002B1214 48 00 20 6D */ bl WUDiRemoveDevice
/* 802B55B8 002B1218 38 00 00 11 */ li r0, 0x11
/* 802B55BC 002B121C 48 00 00 38 */ b lbl_802B55F4
lbl_802B55C0:
/* 802B55C0 002B1220 38 00 00 04 */ li r0, 4
/* 802B55C4 002B1224 98 1A 00 5B */ stb r0, 0x5b(r26)
/* 802B55C8 002B1228 48 00 00 28 */ b lbl_802B55F0
lbl_802B55CC:
/* 802B55CC 002B122C 7F 43 D3 78 */ mr r3, r26
/* 802B55D0 002B1230 48 00 24 45 */ bl WUDiMoveBottomSmpDevInfoPtr
/* 802B55D4 002B1234 38 7F 00 00 */ addi r3, r31, 0
/* 802B55D8 002B1238 80 63 00 18 */ lwz r3, 0x18(r3)
/* 802B55DC 002B123C 80 63 00 00 */ lwz r3, 0(r3)
/* 802B55E0 002B1240 38 63 00 40 */ addi r3, r3, 0x40
/* 802B55E4 002B1244 48 00 20 3D */ bl WUDiRemoveDevice
/* 802B55E8 002B1248 38 00 00 11 */ li r0, 0x11
/* 802B55EC 002B124C 48 00 00 08 */ b lbl_802B55F4
lbl_802B55F0:
/* 802B55F0 002B1250 38 00 00 0F */ li r0, 0xf
lbl_802B55F4:
/* 802B55F4 002B1254 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B55F8 002B1258 48 00 04 90 */ b lbl_802B5A88
lbl_802B55FC:
/* 802B55FC 002B125C 88 7D 06 E9 */ lbz r3, 0x6e9(r29)
/* 802B5600 002B1260 3B 5F 0C E8 */ addi r26, r31, 0xce8
/* 802B5604 002B1264 38 A0 00 01 */ li r5, 1
/* 802B5608 002B1268 38 9F 0B B0 */ addi r4, r31, 0xbb0
/* 802B560C 002B126C 7C 03 00 D0 */ neg r0, r3
/* 802B5610 002B1270 98 BA 00 59 */ stb r5, 0x59(r26)
/* 802B5614 002B1274 7C 00 1B 78 */ or r0, r0, r3
/* 802B5618 002B1278 38 7A 00 40 */ addi r3, r26, 0x40
/* 802B561C 002B127C 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B5620 002B1280 38 A0 00 06 */ li r5, 6
/* 802B5624 002B1284 98 1A 00 5B */ stb r0, 0x5b(r26)
/* 802B5628 002B1288 4B D4 E9 D9 */ bl memcpy
/* 802B562C 002B128C 38 9F 0B B0 */ addi r4, r31, 0xbb0
/* 802B5630 002B1290 7F 43 D3 78 */ mr r3, r26
/* 802B5634 002B1294 38 84 00 06 */ addi r4, r4, 6
/* 802B5638 002B1298 38 A0 00 40 */ li r5, 0x40
/* 802B563C 002B129C 4B D4 E9 C5 */ bl memcpy
/* 802B5640 002B12A0 38 7A 00 46 */ addi r3, r26, 0x46
/* 802B5644 002B12A4 38 80 00 00 */ li r4, 0
/* 802B5648 002B12A8 38 A0 00 10 */ li r5, 0x10
/* 802B564C 002B12AC 4B D4 EA B9 */ bl memset
/* 802B5650 002B12B0 38 00 00 0F */ li r0, 0xf
/* 802B5654 002B12B4 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B5658 002B12B8 48 00 04 30 */ b lbl_802B5A88
lbl_802B565C:
/* 802B565C 002B12BC 38 7F 0B B0 */ addi r3, r31, 0xbb0
/* 802B5660 002B12C0 38 9B 01 A0 */ addi r4, r27, 0x1a0
/* 802B5664 002B12C4 38 63 00 06 */ addi r3, r3, 6
/* 802B5668 002B12C8 3B 40 00 FF */ li r26, 0xff
/* 802B566C 002B12CC 38 A0 00 10 */ li r5, 0x10
/* 802B5670 002B12D0 4B F1 4D 29 */ bl memcmp
/* 802B5674 002B12D4 2C 03 00 00 */ cmpwi r3, 0
/* 802B5678 002B12D8 40 82 00 24 */ bne lbl_802B569C
/* 802B567C 002B12DC 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B5680 002B12E0 38 00 00 02 */ li r0, 2
/* 802B5684 002B12E4 98 03 00 59 */ stb r0, 0x59(r3)
/* 802B5688 002B12E8 38 63 00 40 */ addi r3, r3, 0x40
/* 802B568C 002B12EC 38 80 00 00 */ li r4, 0
/* 802B5690 002B12F0 38 A0 00 12 */ li r5, 0x12
/* 802B5694 002B12F4 48 00 D1 ED */ bl BTA_HhOpen
/* 802B5698 002B12F8 3B 40 00 06 */ li r26, 6
lbl_802B569C:
/* 802B569C 002B12FC 9B 5D 00 0C */ stb r26, 0xc(r29)
/* 802B56A0 002B1300 48 00 03 E8 */ b lbl_802B5A88
lbl_802B56A4:
/* 802B56A4 002B1304 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B56A8 002B1308 88 03 00 5B */ lbz r0, 0x5b(r3)
/* 802B56AC 002B130C 2C 00 00 03 */ cmpwi r0, 3
/* 802B56B0 002B1310 41 82 00 48 */ beq lbl_802B56F8
/* 802B56B4 002B1314 40 80 00 1C */ bge lbl_802B56D0
/* 802B56B8 002B1318 2C 00 00 01 */ cmpwi r0, 1
/* 802B56BC 002B131C 41 82 00 24 */ beq lbl_802B56E0
/* 802B56C0 002B1320 40 80 00 48 */ bge lbl_802B5708
/* 802B56C4 002B1324 2C 00 00 00 */ cmpwi r0, 0
/* 802B56C8 002B1328 40 80 00 20 */ bge lbl_802B56E8
/* 802B56CC 002B132C 48 00 00 40 */ b lbl_802B570C
lbl_802B56D0:
/* 802B56D0 002B1330 2C 00 00 05 */ cmpwi r0, 5
/* 802B56D4 002B1334 41 82 00 1C */ beq lbl_802B56F0
/* 802B56D8 002B1338 40 80 00 34 */ bge lbl_802B570C
/* 802B56DC 002B133C 48 00 00 24 */ b lbl_802B5700
lbl_802B56E0:
/* 802B56E0 002B1340 38 00 00 13 */ li r0, 0x13
/* 802B56E4 002B1344 48 00 00 28 */ b lbl_802B570C
lbl_802B56E8:
/* 802B56E8 002B1348 38 00 00 14 */ li r0, 0x14
/* 802B56EC 002B134C 48 00 00 20 */ b lbl_802B570C
lbl_802B56F0:
/* 802B56F0 002B1350 38 00 00 15 */ li r0, 0x15
/* 802B56F4 002B1354 48 00 00 18 */ b lbl_802B570C
lbl_802B56F8:
/* 802B56F8 002B1358 38 00 00 17 */ li r0, 0x17
/* 802B56FC 002B135C 48 00 00 10 */ b lbl_802B570C
lbl_802B5700:
/* 802B5700 002B1360 38 00 00 07 */ li r0, 7
/* 802B5704 002B1364 48 00 00 08 */ b lbl_802B570C
lbl_802B5708:
/* 802B5708 002B1368 38 00 00 07 */ li r0, 7
lbl_802B570C:
/* 802B570C 002B136C 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B5710 002B1370 48 00 03 78 */ b lbl_802B5A88
lbl_802B5714:
/* 802B5714 002B1374 4B FB 90 49 */ bl OSDisableInterrupts
/* 802B5718 002B1378 8B 5D 00 13 */ lbz r26, 0x13(r29)
/* 802B571C 002B137C 4B FB 90 69 */ bl OSRestoreInterrupts
/* 802B5720 002B1380 28 1A 00 06 */ cmplwi r26, 6
/* 802B5724 002B1384 40 82 00 14 */ bne lbl_802B5738
/* 802B5728 002B1388 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 802B572C 002B138C 80 63 00 00 */ lwz r3, 0(r3)
/* 802B5730 002B1390 38 63 00 40 */ addi r3, r3, 0x40
/* 802B5734 002B1394 48 00 1E ED */ bl WUDiRemoveDevice
lbl_802B5738:
/* 802B5738 002B1398 48 00 21 05 */ bl WUDiGetNewDevInfo
/* 802B573C 002B139C 7C 7A 1B 78 */ mr r26, r3
/* 802B5740 002B13A0 38 9F 0C E8 */ addi r4, r31, 0xce8
/* 802B5744 002B13A4 38 A0 00 60 */ li r5, 0x60
/* 802B5748 002B13A8 4B D4 E8 B9 */ bl memcpy
/* 802B574C 002B13AC 38 7A 00 40 */ addi r3, r26, 0x40
/* 802B5750 002B13B0 48 00 1D B9 */ bl WUDiRegisterDevice
/* 802B5754 002B13B4 7F 43 D3 78 */ mr r3, r26
/* 802B5758 002B13B8 48 00 21 A5 */ bl WUDiMoveTopSmpDevInfoPtr
/* 802B575C 002B13BC 88 9A 00 56 */ lbz r4, 0x56(r26)
/* 802B5760 002B13C0 38 00 00 17 */ li r0, 0x17
/* 802B5764 002B13C4 38 BA 00 40 */ addi r5, r26, 0x40
/* 802B5768 002B13C8 38 7F 0D 48 */ addi r3, r31, 0xd48
/* 802B576C 002B13CC 54 84 10 3A */ slwi r4, r4, 2
/* 802B5770 002B13D0 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B5774 002B13D4 7C A3 21 2E */ stwx r5, r3, r4
/* 802B5778 002B13D8 48 00 03 10 */ b lbl_802B5A88
lbl_802B577C:
/* 802B577C 002B13DC 4B FB 8F E1 */ bl OSDisableInterrupts
/* 802B5780 002B13E0 8B 5D 00 12 */ lbz r26, 0x12(r29)
/* 802B5784 002B13E4 4B FB 90 01 */ bl OSRestoreInterrupts
/* 802B5788 002B13E8 28 1A 00 0A */ cmplwi r26, 0xa
/* 802B578C 002B13EC 40 82 00 14 */ bne lbl_802B57A0
/* 802B5790 002B13F0 80 7D 00 68 */ lwz r3, 0x68(r29)
/* 802B5794 002B13F4 80 63 00 00 */ lwz r3, 0(r3)
/* 802B5798 002B13F8 38 63 00 40 */ addi r3, r3, 0x40
/* 802B579C 002B13FC 48 00 1E 85 */ bl WUDiRemoveDevice
lbl_802B57A0:
/* 802B57A0 002B1400 48 00 20 9D */ bl WUDiGetNewDevInfo
/* 802B57A4 002B1404 7C 7A 1B 78 */ mr r26, r3
/* 802B57A8 002B1408 38 9F 0C E8 */ addi r4, r31, 0xce8
/* 802B57AC 002B140C 38 A0 00 60 */ li r5, 0x60
/* 802B57B0 002B1410 4B D4 E8 51 */ bl memcpy
/* 802B57B4 002B1414 38 7A 00 40 */ addi r3, r26, 0x40
/* 802B57B8 002B1418 48 00 1D 51 */ bl WUDiRegisterDevice
/* 802B57BC 002B141C 7F 43 D3 78 */ mr r3, r26
/* 802B57C0 002B1420 48 00 24 C5 */ bl WUDiMoveTopStdDevInfoPtr
/* 802B57C4 002B1424 88 9A 00 56 */ lbz r4, 0x56(r26)
/* 802B57C8 002B1428 38 00 00 07 */ li r0, 7
/* 802B57CC 002B142C 38 BA 00 40 */ addi r5, r26, 0x40
/* 802B57D0 002B1430 38 7F 0D 48 */ addi r3, r31, 0xd48
/* 802B57D4 002B1434 54 84 10 3A */ slwi r4, r4, 2
/* 802B57D8 002B1438 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B57DC 002B143C 7C A3 21 2E */ stwx r5, r3, r4
/* 802B57E0 002B1440 48 00 02 A8 */ b lbl_802B5A88
lbl_802B57E4:
/* 802B57E4 002B1444 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B57E8 002B1448 48 00 22 2D */ bl WUDiMoveBottomSmpDevInfoPtr
/* 802B57EC 002B144C 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 802B57F0 002B1450 80 63 00 00 */ lwz r3, 0(r3)
/* 802B57F4 002B1454 38 63 00 40 */ addi r3, r3, 0x40
/* 802B57F8 002B1458 48 00 1E 29 */ bl WUDiRemoveDevice
/* 802B57FC 002B145C 4B FB 8F 61 */ bl OSDisableInterrupts
/* 802B5800 002B1460 8B 5D 00 12 */ lbz r26, 0x12(r29)
/* 802B5804 002B1464 4B FB 8F 81 */ bl OSRestoreInterrupts
/* 802B5808 002B1468 28 1A 00 0A */ cmplwi r26, 0xa
/* 802B580C 002B146C 40 82 00 14 */ bne lbl_802B5820
/* 802B5810 002B1470 80 7D 00 68 */ lwz r3, 0x68(r29)
/* 802B5814 002B1474 80 63 00 00 */ lwz r3, 0(r3)
/* 802B5818 002B1478 38 63 00 40 */ addi r3, r3, 0x40
/* 802B581C 002B147C 48 00 1E 05 */ bl WUDiRemoveDevice
lbl_802B5820:
/* 802B5820 002B1480 48 00 20 1D */ bl WUDiGetNewDevInfo
/* 802B5824 002B1484 7C 7A 1B 78 */ mr r26, r3
/* 802B5828 002B1488 38 9F 0C E8 */ addi r4, r31, 0xce8
/* 802B582C 002B148C 38 A0 00 60 */ li r5, 0x60
/* 802B5830 002B1490 4B D4 E7 D1 */ bl memcpy
/* 802B5834 002B1494 38 7A 00 40 */ addi r3, r26, 0x40
/* 802B5838 002B1498 48 00 1C D1 */ bl WUDiRegisterDevice
/* 802B583C 002B149C 7F 43 D3 78 */ mr r3, r26
/* 802B5840 002B14A0 48 00 24 45 */ bl WUDiMoveTopStdDevInfoPtr
/* 802B5844 002B14A4 88 9A 00 56 */ lbz r4, 0x56(r26)
/* 802B5848 002B14A8 38 00 00 07 */ li r0, 7
/* 802B584C 002B14AC 38 BA 00 40 */ addi r5, r26, 0x40
/* 802B5850 002B14B0 38 7F 0D 48 */ addi r3, r31, 0xd48
/* 802B5854 002B14B4 54 84 10 3A */ slwi r4, r4, 2
/* 802B5858 002B14B8 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B585C 002B14BC 7C A3 21 2E */ stwx r5, r3, r4
/* 802B5860 002B14C0 48 00 02 28 */ b lbl_802B5A88
lbl_802B5864:
/* 802B5864 002B14C4 88 1D 00 0E */ lbz r0, 0xe(r29)
/* 802B5868 002B14C8 2C 00 00 00 */ cmpwi r0, 0
/* 802B586C 002B14CC 41 82 00 0C */ beq lbl_802B5878
/* 802B5870 002B14D0 38 00 00 07 */ li r0, 7
/* 802B5874 002B14D4 48 00 00 D8 */ b lbl_802B594C
lbl_802B5878:
/* 802B5878 002B14D8 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B587C 002B14DC 38 63 00 40 */ addi r3, r3, 0x40
/* 802B5880 002B14E0 48 00 1E E5 */ bl WUDiGetDevInfo
/* 802B5884 002B14E4 7C 7E 1B 78 */ mr r30, r3
/* 802B5888 002B14E8 38 7B 01 B4 */ addi r3, r27, 0x1b4
/* 802B588C 002B14EC 4C C6 31 82 */ crclr 6
/* 802B5890 002B14F0 48 00 3C ED */ bl WUD_DEBUGPrint
/* 802B5894 002B14F4 88 9E 00 40 */ lbz r4, 0x40(r30)
/* 802B5898 002B14F8 38 7B 01 CC */ addi r3, r27, 0x1cc
/* 802B589C 002B14FC 88 BE 00 41 */ lbz r5, 0x41(r30)
/* 802B58A0 002B1500 88 DE 00 42 */ lbz r6, 0x42(r30)
/* 802B58A4 002B1504 88 FE 00 43 */ lbz r7, 0x43(r30)
/* 802B58A8 002B1508 89 1E 00 44 */ lbz r8, 0x44(r30)
/* 802B58AC 002B150C 89 3E 00 45 */ lbz r9, 0x45(r30)
/* 802B58B0 002B1510 4C C6 31 82 */ crclr 6
/* 802B58B4 002B1514 48 00 3C C9 */ bl WUD_DEBUGPrint
/* 802B58B8 002B1518 88 1E 00 4D */ lbz r0, 0x4d(r30)
/* 802B58BC 002B151C 38 7B 01 F8 */ addi r3, r27, 0x1f8
/* 802B58C0 002B1520 90 01 00 08 */ stw r0, 8(r1)
/* 802B58C4 002B1524 88 1E 00 4E */ lbz r0, 0x4e(r30)
/* 802B58C8 002B1528 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B58CC 002B152C 88 1E 00 4F */ lbz r0, 0x4f(r30)
/* 802B58D0 002B1530 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B58D4 002B1534 88 1E 00 50 */ lbz r0, 0x50(r30)
/* 802B58D8 002B1538 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B58DC 002B153C 88 1E 00 51 */ lbz r0, 0x51(r30)
/* 802B58E0 002B1540 90 01 00 18 */ stw r0, 0x18(r1)
/* 802B58E4 002B1544 88 1E 00 52 */ lbz r0, 0x52(r30)
/* 802B58E8 002B1548 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802B58EC 002B154C 88 1E 00 53 */ lbz r0, 0x53(r30)
/* 802B58F0 002B1550 90 01 00 20 */ stw r0, 0x20(r1)
/* 802B58F4 002B1554 88 1E 00 54 */ lbz r0, 0x54(r30)
/* 802B58F8 002B1558 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B58FC 002B155C 88 1E 00 55 */ lbz r0, 0x55(r30)
/* 802B5900 002B1560 90 01 00 28 */ stw r0, 0x28(r1)
/* 802B5904 002B1564 88 9E 00 46 */ lbz r4, 0x46(r30)
/* 802B5908 002B1568 88 BE 00 47 */ lbz r5, 0x47(r30)
/* 802B590C 002B156C 88 DE 00 48 */ lbz r6, 0x48(r30)
/* 802B5910 002B1570 88 FE 00 49 */ lbz r7, 0x49(r30)
/* 802B5914 002B1574 89 1E 00 4A */ lbz r8, 0x4a(r30)
/* 802B5918 002B1578 89 3E 00 4B */ lbz r9, 0x4b(r30)
/* 802B591C 002B157C 89 5E 00 4C */ lbz r10, 0x4c(r30)
/* 802B5920 002B1580 4C C6 31 82 */ crclr 6
/* 802B5924 002B1584 48 00 3C 59 */ bl WUD_DEBUGPrint
/* 802B5928 002B1588 38 00 00 02 */ li r0, 2
/* 802B592C 002B158C 3C C0 80 2C */ lis r6, WUDStoredLinkKeyCallback@ha
/* 802B5930 002B1590 98 1D 00 0E */ stb r0, 0xe(r29)
/* 802B5934 002B1594 38 9E 00 40 */ addi r4, r30, 0x40
/* 802B5938 002B1598 38 BE 00 46 */ addi r5, r30, 0x46
/* 802B593C 002B159C 38 C6 8B 08 */ addi r6, r6, WUDStoredLinkKeyCallback@l
/* 802B5940 002B15A0 38 60 00 01 */ li r3, 1
/* 802B5944 002B15A4 48 01 13 F5 */ bl BTM_WriteStoredLinkKey
/* 802B5948 002B15A8 38 00 00 08 */ li r0, 8
lbl_802B594C:
/* 802B594C 002B15AC 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B5950 002B15B0 48 00 01 38 */ b lbl_802B5A88
lbl_802B5954:
/* 802B5954 002B15B4 88 1D 00 0E */ lbz r0, 0xe(r29)
/* 802B5958 002B15B8 38 60 00 08 */ li r3, 8
/* 802B595C 002B15BC 2C 00 00 00 */ cmpwi r0, 0
/* 802B5960 002B15C0 40 82 00 08 */ bne lbl_802B5968
/* 802B5964 002B15C4 38 60 00 16 */ li r3, 0x16
lbl_802B5968:
/* 802B5968 002B15C8 98 7D 00 0C */ stb r3, 0xc(r29)
/* 802B596C 002B15CC 48 00 01 1C */ b lbl_802B5A88
lbl_802B5970:
/* 802B5970 002B15D0 4B FF F6 85 */ bl WUDiSaveDeviceToNand
/* 802B5974 002B15D4 98 7D 00 0C */ stb r3, 0xc(r29)
/* 802B5978 002B15D8 48 00 01 10 */ b lbl_802B5A88
lbl_802B597C:
/* 802B597C 002B15DC 4B FB 8D E1 */ bl OSDisableInterrupts
/* 802B5980 002B15E0 38 00 00 0D */ li r0, 0xd
/* 802B5984 002B15E4 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B5988 002B15E8 4B FB 8D FD */ bl OSRestoreInterrupts
/* 802B598C 002B15EC 3C 60 80 2B */ lis r3, SyncFlushCallback@ha
/* 802B5990 002B15F0 38 63 4D 60 */ addi r3, r3, SyncFlushCallback@l
/* 802B5994 002B15F4 48 03 64 39 */ bl SCFlushAsync
/* 802B5998 002B15F8 48 00 00 F0 */ b lbl_802B5A88
lbl_802B599C:
/* 802B599C 002B15FC 88 1D 00 0E */ lbz r0, 0xe(r29)
/* 802B59A0 002B1600 3B 40 00 0A */ li r26, 0xa
/* 802B59A4 002B1604 2C 00 00 00 */ cmpwi r0, 0
/* 802B59A8 002B1608 40 82 00 10 */ bne lbl_802B59B8
/* 802B59AC 002B160C 38 7D 06 FC */ addi r3, r29, 0x6fc
/* 802B59B0 002B1610 3B 40 00 14 */ li r26, 0x14
/* 802B59B4 002B1614 48 00 1C 6D */ bl WUDiRemoveDevice
lbl_802B59B8:
/* 802B59B8 002B1618 9B 5D 00 0C */ stb r26, 0xc(r29)
/* 802B59BC 002B161C 48 00 00 CC */ b lbl_802B5A88
lbl_802B59C0:
/* 802B59C0 002B1620 88 DD 06 E6 */ lbz r6, 0x6e6(r29)
/* 802B59C4 002B1624 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B59C8 002B1628 38 80 00 00 */ li r4, 0
/* 802B59CC 002B162C 38 A0 00 60 */ li r5, 0x60
/* 802B59D0 002B1630 38 06 00 01 */ addi r0, r6, 1
/* 802B59D4 002B1634 98 1D 06 E6 */ stb r0, 0x6e6(r29)
/* 802B59D8 002B1638 4B D4 E7 2D */ bl memset
/* 802B59DC 002B163C 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
/* 802B59E0 002B1640 38 60 00 01 */ li r3, 1
/* 802B59E4 002B1644 2C 00 00 00 */ cmpwi r0, 0
/* 802B59E8 002B1648 40 82 00 08 */ bne lbl_802B59F0
/* 802B59EC 002B164C 38 60 00 0E */ li r3, 0xe
lbl_802B59F0:
/* 802B59F0 002B1650 98 7D 00 0C */ stb r3, 0xc(r29)
/* 802B59F4 002B1654 48 00 00 94 */ b lbl_802B5A88
lbl_802B59F8:
/* 802B59F8 002B1658 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B59FC 002B165C 38 80 00 00 */ li r4, 0
/* 802B5A00 002B1660 38 A0 00 60 */ li r5, 0x60
/* 802B5A04 002B1664 4B D4 E7 01 */ bl memset
/* 802B5A08 002B1668 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
/* 802B5A0C 002B166C 38 60 00 01 */ li r3, 1
/* 802B5A10 002B1670 2C 00 00 00 */ cmpwi r0, 0
/* 802B5A14 002B1674 40 82 00 08 */ bne lbl_802B5A1C
/* 802B5A18 002B1678 38 60 00 0E */ li r3, 0xe
lbl_802B5A1C:
/* 802B5A1C 002B167C 98 7D 00 0C */ stb r3, 0xc(r29)
/* 802B5A20 002B1680 48 00 00 68 */ b lbl_802B5A88
lbl_802B5A24:
/* 802B5A24 002B1684 4B FF F6 DD */ bl WUDiSyncDone
/* 802B5A28 002B1688 98 7D 00 0C */ stb r3, 0xc(r29)
/* 802B5A2C 002B168C 48 00 00 5C */ b lbl_802B5A88
lbl_802B5A30:
/* 802B5A30 002B1690 4B FB 8D 2D */ bl OSDisableInterrupts
/* 802B5A34 002B1694 8B 5D 06 E5 */ lbz r26, 0x6e5(r29)
/* 802B5A38 002B1698 4B FB 8D 4D */ bl OSRestoreInterrupts
/* 802B5A3C 002B169C 28 1A 00 04 */ cmplwi r26, 4
/* 802B5A40 002B16A0 40 82 00 30 */ bne lbl_802B5A70
/* 802B5A44 002B16A4 4B FB 8D 19 */ bl OSDisableInterrupts
/* 802B5A48 002B16A8 8B 5D 06 E4 */ lbz r26, 0x6e4(r29)
/* 802B5A4C 002B16AC 4B FB 8D 39 */ bl OSRestoreInterrupts
/* 802B5A50 002B16B0 28 1A 00 04 */ cmplwi r26, 4
/* 802B5A54 002B16B4 40 82 00 1C */ bne lbl_802B5A70
/* 802B5A58 002B16B8 38 7B 02 50 */ addi r3, r27, 0x250
/* 802B5A5C 002B16BC 4C C6 31 82 */ crclr 6
/* 802B5A60 002B16C0 48 00 3B 1D */ bl WUD_DEBUGPrint
/* 802B5A64 002B16C4 48 00 A8 01 */ bl BTA_DmSearchCancel
/* 802B5A68 002B16C8 38 00 00 1A */ li r0, 0x1a
/* 802B5A6C 002B16CC 48 00 00 08 */ b lbl_802B5A74
lbl_802B5A70:
/* 802B5A70 002B16D0 38 00 00 03 */ li r0, 3
lbl_802B5A74:
/* 802B5A74 002B16D4 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B5A78 002B16D8 48 00 00 10 */ b lbl_802B5A88
lbl_802B5A7C:
/* 802B5A7C 002B16DC 38 7B 02 80 */ addi r3, r27, 0x280
/* 802B5A80 002B16E0 4C C6 31 82 */ crclr 6
/* 802B5A84 002B16E4 48 00 3A F9 */ bl WUD_DEBUGPrint
lbl_802B5A88:
/* 802B5A88 002B16E8 39 61 00 60 */ addi r11, r1, 0x60
/* 802B5A8C 002B16EC 4B F1 16 E5 */ bl _restgpr_26
/* 802B5A90 002B16F0 80 01 00 64 */ lwz r0, 0x64(r1)
/* 802B5A94 002B16F4 7C 08 03 A6 */ mtlr r0
/* 802B5A98 002B16F8 38 21 00 60 */ addi r1, r1, 0x60
/* 802B5A9C 002B16FC 4E 80 00 20 */ blr
SyncHandler0:
/* 802B5AA0 002B1700 3D 00 80 54 */ lis r8, lbl_8053B280@ha
/* 802B5AA4 002B1704 3C E0 80 2B */ lis r7, SyncHandler@ha
/* 802B5AA8 002B1708 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
/* 802B5AAC 002B170C 38 A0 00 00 */ li r5, 0
/* 802B5AB0 002B1710 38 E7 52 64 */ addi r7, r7, SyncHandler@l
/* 802B5AB4 002B1714 38 C0 00 00 */ li r6, 0
/* 802B5AB8 002B1718 39 08 10 00 */ addi r8, r8, 0x1000
/* 802B5ABC 002B171C 4B FB 55 A4 */ b OSSwitchFiberEx
.global WUDiTerminateDevice
WUDiTerminateDevice:
/* 802B5AC0 002B1720 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B5AC4 002B1724 7C 08 02 A6 */ mflr r0
/* 802B5AC8 002B1728 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5ACC 002B172C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B5AD0 002B1730 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B5AD4 002B1734 3B C0 00 00 */ li r30, 0
/* 802B5AD8 002B1738 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B5ADC 002B173C 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B5AE0 002B1740 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B5AE4 002B1744 3B FD 00 E4 */ addi r31, r29, 0xe4
lbl_802B5AE8:
/* 802B5AE8 002B1748 88 1F 00 59 */ lbz r0, 0x59(r31)
/* 802B5AEC 002B174C 28 00 00 01 */ cmplwi r0, 1
/* 802B5AF0 002B1750 40 81 00 0C */ ble lbl_802B5AFC
/* 802B5AF4 002B1754 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B5AF8 002B1758 48 00 F3 9D */ bl btm_remove_acl
lbl_802B5AFC:
/* 802B5AFC 002B175C 3B DE 00 01 */ addi r30, r30, 1
/* 802B5B00 002B1760 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B5B04 002B1764 2C 1E 00 0A */ cmpwi r30, 0xa
/* 802B5B08 002B1768 41 80 FF E0 */ blt lbl_802B5AE8
/* 802B5B0C 002B176C 3B FD 04 A4 */ addi r31, r29, 0x4a4
/* 802B5B10 002B1770 3B C0 00 00 */ li r30, 0
lbl_802B5B14:
/* 802B5B14 002B1774 88 1F 00 59 */ lbz r0, 0x59(r31)
/* 802B5B18 002B1778 28 00 00 01 */ cmplwi r0, 1
/* 802B5B1C 002B177C 40 81 00 0C */ ble lbl_802B5B28
/* 802B5B20 002B1780 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B5B24 002B1784 48 00 F3 71 */ bl btm_remove_acl
lbl_802B5B28:
/* 802B5B28 002B1788 3B DE 00 01 */ addi r30, r30, 1
/* 802B5B2C 002B178C 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B5B30 002B1790 2C 1E 00 06 */ cmpwi r30, 6
/* 802B5B34 002B1794 41 80 FF E0 */ blt lbl_802B5B14
/* 802B5B38 002B1798 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B5B3C 002B179C 38 60 00 03 */ li r3, 3
/* 802B5B40 002B17A0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B5B44 002B17A4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B5B48 002B17A8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B5B4C 002B17AC 7C 08 03 A6 */ mtlr r0
/* 802B5B50 002B17B0 38 21 00 20 */ addi r1, r1, 0x20
/* 802B5B54 002B17B4 4E 80 00 20 */ blr
.global WUDiDeleteDevice
WUDiDeleteDevice:
/* 802B5B58 002B17B8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B5B5C 002B17BC 7C 08 02 A6 */ mflr r0
/* 802B5B60 002B17C0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5B64 002B17C4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B5B68 002B17C8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B5B6C 002B17CC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B5B70 002B17D0 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B5B74 002B17D4 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B5B78 002B17D8 4B FB 8B E5 */ bl OSDisableInterrupts
/* 802B5B7C 002B17DC 8B FD 06 E5 */ lbz r31, 0x6e5(r29)
/* 802B5B80 002B17E0 4B FB 8C 05 */ bl OSRestoreInterrupts
/* 802B5B84 002B17E4 2C 1F 00 00 */ cmpwi r31, 0
/* 802B5B88 002B17E8 41 82 00 0C */ beq lbl_802B5B94
/* 802B5B8C 002B17EC 38 60 00 03 */ li r3, 3
/* 802B5B90 002B17F0 48 00 00 60 */ b lbl_802B5BF0
lbl_802B5B94:
/* 802B5B94 002B17F4 3B FD 00 E4 */ addi r31, r29, 0xe4
/* 802B5B98 002B17F8 3B C0 00 00 */ li r30, 0
lbl_802B5B9C:
/* 802B5B9C 002B17FC 88 1F 00 59 */ lbz r0, 0x59(r31)
/* 802B5BA0 002B1800 28 00 00 01 */ cmplwi r0, 1
/* 802B5BA4 002B1804 40 82 00 0C */ bne lbl_802B5BB0
/* 802B5BA8 002B1808 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B5BAC 002B180C 48 00 1A 75 */ bl WUDiRemoveDevice
lbl_802B5BB0:
/* 802B5BB0 002B1810 3B DE 00 01 */ addi r30, r30, 1
/* 802B5BB4 002B1814 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B5BB8 002B1818 2C 1E 00 0A */ cmpwi r30, 0xa
/* 802B5BBC 002B181C 41 80 FF E0 */ blt lbl_802B5B9C
/* 802B5BC0 002B1820 3B FD 04 A4 */ addi r31, r29, 0x4a4
/* 802B5BC4 002B1824 3B C0 00 00 */ li r30, 0
lbl_802B5BC8:
/* 802B5BC8 002B1828 88 1F 00 59 */ lbz r0, 0x59(r31)
/* 802B5BCC 002B182C 28 00 00 01 */ cmplwi r0, 1
/* 802B5BD0 002B1830 40 82 00 0C */ bne lbl_802B5BDC
/* 802B5BD4 002B1834 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B5BD8 002B1838 48 00 1A 49 */ bl WUDiRemoveDevice
lbl_802B5BDC:
/* 802B5BDC 002B183C 3B DE 00 01 */ addi r30, r30, 1
/* 802B5BE0 002B1840 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B5BE4 002B1844 2C 1E 00 06 */ cmpwi r30, 6
/* 802B5BE8 002B1848 41 80 FF E0 */ blt lbl_802B5BC8
/* 802B5BEC 002B184C 38 60 00 05 */ li r3, 5
lbl_802B5BF0:
/* 802B5BF0 002B1850 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B5BF4 002B1854 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B5BF8 002B1858 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B5BFC 002B185C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B5C00 002B1860 7C 08 03 A6 */ mtlr r0
/* 802B5C04 002B1864 38 21 00 20 */ addi r1, r1, 0x20
/* 802B5C08 002B1868 4E 80 00 20 */ blr
DeleteAllHandler:
/* 802B5C0C 002B186C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B5C10 002B1870 7C 08 02 A6 */ mflr r0
/* 802B5C14 002B1874 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5C18 002B1878 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B5C1C 002B187C 3B E0 00 00 */ li r31, 0
/* 802B5C20 002B1880 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B5C24 002B1884 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B5C28 002B1888 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B5C2C 002B188C 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B5C30 002B1890 88 1D 00 0D */ lbz r0, 0xd(r29)
/* 802B5C34 002B1894 9B FD 00 0C */ stb r31, 0xc(r29)
/* 802B5C38 002B1898 28 00 00 08 */ cmplwi r0, 8
/* 802B5C3C 002B189C 41 81 00 E8 */ bgt lbl_802B5D24
/* 802B5C40 002B18A0 3C 60 80 44 */ lis r3, lbl_8043E2E4@ha
/* 802B5C44 002B18A4 54 00 10 3A */ slwi r0, r0, 2
/* 802B5C48 002B18A8 38 63 E2 E4 */ addi r3, r3, lbl_8043E2E4@l
/* 802B5C4C 002B18AC 7C 63 00 2E */ lwzx r3, r3, r0
/* 802B5C50 002B18B0 7C 69 03 A6 */ mtctr r3
/* 802B5C54 002B18B4 4E 80 04 20 */ bctr
/* 802B5C58 002B18B8 38 60 00 00 */ li r3, 0
/* 802B5C5C 002B18BC 38 80 00 00 */ li r4, 0
/* 802B5C60 002B18C0 48 00 A5 29 */ bl BTA_DmSetVisibility
/* 802B5C64 002B18C4 38 00 00 02 */ li r0, 2
/* 802B5C68 002B18C8 98 1D 00 0D */ stb r0, 0xd(r29)
/* 802B5C6C 002B18CC 48 00 00 B8 */ b lbl_802B5D24
/* 802B5C70 002B18D0 4B FF FE 51 */ bl WUDiTerminateDevice
/* 802B5C74 002B18D4 98 7D 00 0D */ stb r3, 0xd(r29)
/* 802B5C78 002B18D8 48 00 00 AC */ b lbl_802B5D24
/* 802B5C7C 002B18DC 4B FF FE DD */ bl WUDiDeleteDevice
/* 802B5C80 002B18E0 98 7D 00 0D */ stb r3, 0xd(r29)
/* 802B5C84 002B18E4 48 00 00 A0 */ b lbl_802B5D24
/* 802B5C88 002B18E8 48 03 4D 65 */ bl SCCheckStatus
/* 802B5C8C 002B18EC 28 03 00 01 */ cmplwi r3, 1
/* 802B5C90 002B18F0 41 82 00 94 */ beq lbl_802B5D24
/* 802B5C94 002B18F4 3F E0 80 54 */ lis r31, lbl_8053AC28@ha
/* 802B5C98 002B18F8 38 80 00 00 */ li r4, 0
/* 802B5C9C 002B18FC 38 7F AC 28 */ addi r3, r31, lbl_8053AC28@l
/* 802B5CA0 002B1900 38 A0 04 61 */ li r5, 0x461
/* 802B5CA4 002B1904 4B D4 E4 61 */ bl memset
/* 802B5CA8 002B1908 38 7F AC 28 */ addi r3, r31, -21464
/* 802B5CAC 002B190C 48 03 69 61 */ bl SCSetBtDeviceInfoArray
/* 802B5CB0 002B1910 2C 03 00 00 */ cmpwi r3, 0
/* 802B5CB4 002B1914 41 82 00 70 */ beq lbl_802B5D24
/* 802B5CB8 002B1918 38 00 00 06 */ li r0, 6
/* 802B5CBC 002B191C 3C 60 80 2B */ lis r3, DeleteFlushCallback@ha
/* 802B5CC0 002B1920 98 1D 00 0D */ stb r0, 0xd(r29)
/* 802B5CC4 002B1924 38 63 4D D8 */ addi r3, r3, DeleteFlushCallback@l
/* 802B5CC8 002B1928 48 03 61 05 */ bl SCFlushAsync
/* 802B5CCC 002B192C 48 00 00 58 */ b lbl_802B5D24
/* 802B5CD0 002B1930 4B FB 8A 8D */ bl OSDisableInterrupts
/* 802B5CD4 002B1934 8B DD 06 EA */ lbz r30, 0x6ea(r29)
/* 802B5CD8 002B1938 4B FB 8A AD */ bl OSRestoreInterrupts
/* 802B5CDC 002B193C 4B FB 8A 81 */ bl OSDisableInterrupts
/* 802B5CE0 002B1940 9B FD 06 EB */ stb r31, 0x6eb(r29)
/* 802B5CE4 002B1944 9B DD 06 EA */ stb r30, 0x6ea(r29)
/* 802B5CE8 002B1948 4B FB 8A 9D */ bl OSRestoreInterrupts
/* 802B5CEC 002B194C 7F C4 F3 78 */ mr r4, r30
/* 802B5CF0 002B1950 38 60 00 00 */ li r3, 0
/* 802B5CF4 002B1954 48 00 A4 95 */ bl BTA_DmSetVisibility
/* 802B5CF8 002B1958 38 7D 07 10 */ addi r3, r29, 0x710
/* 802B5CFC 002B195C 4B FB 3D 7D */ bl OSCancelAlarm
/* 802B5D00 002B1960 81 9D 00 08 */ lwz r12, 8(r29)
/* 802B5D04 002B1964 9B FD 00 0D */ stb r31, 0xd(r29)
/* 802B5D08 002B1968 2C 0C 00 00 */ cmpwi r12, 0
/* 802B5D0C 002B196C 41 82 00 10 */ beq lbl_802B5D1C
/* 802B5D10 002B1970 38 60 00 01 */ li r3, 1
/* 802B5D14 002B1974 7D 89 03 A6 */ mtctr r12
/* 802B5D18 002B1978 4E 80 04 21 */ bctrl
lbl_802B5D1C:
/* 802B5D1C 002B197C 38 00 00 00 */ li r0, 0
/* 802B5D20 002B1980 98 1D 00 0D */ stb r0, 0xd(r29)
lbl_802B5D24:
/* 802B5D24 002B1984 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B5D28 002B1988 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B5D2C 002B198C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B5D30 002B1990 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B5D34 002B1994 7C 08 03 A6 */ mtlr r0
/* 802B5D38 002B1998 38 21 00 20 */ addi r1, r1, 0x20
/* 802B5D3C 002B199C 4E 80 00 20 */ blr
DeleteAllHandler0:
/* 802B5D40 002B19A0 3D 00 80 54 */ lis r8, lbl_8053B280@ha
/* 802B5D44 002B19A4 3C E0 80 2B */ lis r7, DeleteAllHandler@ha
/* 802B5D48 002B19A8 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
/* 802B5D4C 002B19AC 38 A0 00 00 */ li r5, 0
/* 802B5D50 002B19B0 38 E7 5C 0C */ addi r7, r7, DeleteAllHandler@l
/* 802B5D54 002B19B4 38 C0 00 00 */ li r6, 0
/* 802B5D58 002B19B8 39 08 10 00 */ addi r8, r8, 0x1000
/* 802B5D5C 002B19BC 4B FB 53 04 */ b OSSwitchFiberEx
.global WUDiClearUnregisteredDevice
WUDiClearUnregisteredDevice:
/* 802B5D60 002B19C0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B5D64 002B19C4 7C 08 02 A6 */ mflr r0
/* 802B5D68 002B19C8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5D6C 002B19CC 39 61 00 20 */ addi r11, r1, 0x20
/* 802B5D70 002B19D0 4B F1 13 B9 */ bl _savegpr_27
/* 802B5D74 002B19D4 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B5D78 002B19D8 3B 83 A4 E0 */ addi r28, r3, lbl_8053A4E0@l
/* 802B5D7C 002B19DC 88 1C 00 0E */ lbz r0, 0xe(r28)
/* 802B5D80 002B19E0 2C 00 00 00 */ cmpwi r0, 0
/* 802B5D84 002B19E4 40 82 00 D4 */ bne lbl_802B5E58
/* 802B5D88 002B19E8 3B 60 00 00 */ li r27, 0
/* 802B5D8C 002B19EC 3B A0 00 00 */ li r29, 0
lbl_802B5D90:
/* 802B5D90 002B19F0 4B FB 89 CD */ bl OSDisableInterrupts
/* 802B5D94 002B19F4 2C 1B 00 00 */ cmpwi r27, 0
/* 802B5D98 002B19F8 41 80 00 18 */ blt lbl_802B5DB0
/* 802B5D9C 002B19FC 2C 1B 00 0A */ cmpwi r27, 0xa
/* 802B5DA0 002B1A00 40 80 00 10 */ bge lbl_802B5DB0
/* 802B5DA4 002B1A04 7C 9C EA 14 */ add r4, r28, r29
/* 802B5DA8 002B1A08 3B E4 00 E4 */ addi r31, r4, 0xe4
/* 802B5DAC 002B1A0C 48 00 00 14 */ b lbl_802B5DC0
lbl_802B5DB0:
/* 802B5DB0 002B1A10 38 1B FF F6 */ addi r0, r27, -10
/* 802B5DB4 002B1A14 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802B5DB8 002B1A18 7C 9C 02 14 */ add r4, r28, r0
/* 802B5DBC 002B1A1C 3B E4 04 A4 */ addi r31, r4, 0x4a4
lbl_802B5DC0:
/* 802B5DC0 002B1A20 4B FB 89 C5 */ bl OSRestoreInterrupts
/* 802B5DC4 002B1A24 88 1F 00 59 */ lbz r0, 0x59(r31)
/* 802B5DC8 002B1A28 2C 00 00 00 */ cmpwi r0, 0
/* 802B5DCC 002B1A2C 41 82 00 74 */ beq lbl_802B5E40
/* 802B5DD0 002B1A30 88 1F 00 5C */ lbz r0, 0x5c(r31)
/* 802B5DD4 002B1A34 28 00 00 01 */ cmplwi r0, 1
/* 802B5DD8 002B1A38 40 82 00 2C */ bne lbl_802B5E04
/* 802B5DDC 002B1A3C 38 00 00 03 */ li r0, 3
/* 802B5DE0 002B1A40 3C 80 80 2C */ lis r4, WUDStoredLinkKeyCallback@ha
/* 802B5DE4 002B1A44 98 1C 00 0E */ stb r0, 0xe(r28)
/* 802B5DE8 002B1A48 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B5DEC 002B1A4C 38 84 8B 08 */ addi r4, r4, WUDStoredLinkKeyCallback@l
/* 802B5DF0 002B1A50 48 01 10 19 */ bl BTM_DeleteStoredLinkKey
/* 802B5DF4 002B1A54 38 00 00 00 */ li r0, 0
/* 802B5DF8 002B1A58 38 60 00 02 */ li r3, 2
/* 802B5DFC 002B1A5C 98 1F 00 5C */ stb r0, 0x5c(r31)
/* 802B5E00 002B1A60 48 00 00 5C */ b lbl_802B5E5C
lbl_802B5E04:
/* 802B5E04 002B1A64 28 00 00 03 */ cmplwi r0, 3
/* 802B5E08 002B1A68 41 82 00 38 */ beq lbl_802B5E40
/* 802B5E0C 002B1A6C 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B5E10 002B1A70 48 00 19 55 */ bl WUDiGetDevInfo
/* 802B5E14 002B1A74 2C 03 00 00 */ cmpwi r3, 0
/* 802B5E18 002B1A78 7C 7E 1B 78 */ mr r30, r3
/* 802B5E1C 002B1A7C 41 82 00 24 */ beq lbl_802B5E40
/* 802B5E20 002B1A80 4B FB 89 3D */ bl OSDisableInterrupts
/* 802B5E24 002B1A84 7C 7F 1B 78 */ mr r31, r3
/* 802B5E28 002B1A88 7F C3 F3 78 */ mr r3, r30
/* 802B5E2C 002B1A8C 38 80 00 00 */ li r4, 0
/* 802B5E30 002B1A90 38 A0 00 60 */ li r5, 0x60
/* 802B5E34 002B1A94 4B D4 E2 D1 */ bl memset
/* 802B5E38 002B1A98 7F E3 FB 78 */ mr r3, r31
/* 802B5E3C 002B1A9C 4B FB 89 49 */ bl OSRestoreInterrupts
lbl_802B5E40:
/* 802B5E40 002B1AA0 3B 7B 00 01 */ addi r27, r27, 1
/* 802B5E44 002B1AA4 3B BD 00 60 */ addi r29, r29, 0x60
/* 802B5E48 002B1AA8 2C 1B 00 10 */ cmpwi r27, 0x10
/* 802B5E4C 002B1AAC 41 80 FF 44 */ blt lbl_802B5D90
/* 802B5E50 002B1AB0 38 60 00 03 */ li r3, 3
/* 802B5E54 002B1AB4 48 00 00 08 */ b lbl_802B5E5C
lbl_802B5E58:
/* 802B5E58 002B1AB8 38 60 00 02 */ li r3, 2
lbl_802B5E5C:
/* 802B5E5C 002B1ABC 39 61 00 20 */ addi r11, r1, 0x20
/* 802B5E60 002B1AC0 4B F1 13 15 */ bl _restgpr_27
/* 802B5E64 002B1AC4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B5E68 002B1AC8 7C 08 03 A6 */ mtlr r0
/* 802B5E6C 002B1ACC 38 21 00 20 */ addi r1, r1, 0x20
/* 802B5E70 002B1AD0 4E 80 00 20 */ blr
EnableStackHandler:
/* 802B5E74 002B1AD4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B5E78 002B1AD8 7C 08 02 A6 */ mflr r0
/* 802B5E7C 002B1ADC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5E80 002B1AE0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B5E84 002B1AE4 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B5E88 002B1AE8 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B5E8C 002B1AEC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B5E90 002B1AF0 3F C0 80 44 */ lis r30, lbl_8043E048@ha
/* 802B5E94 002B1AF4 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
/* 802B5E98 002B1AF8 88 1F 00 0F */ lbz r0, 0xf(r31)
/* 802B5E9C 002B1AFC 2C 00 00 02 */ cmpwi r0, 2
/* 802B5EA0 002B1B00 41 82 00 50 */ beq lbl_802B5EF0
/* 802B5EA4 002B1B04 40 80 00 10 */ bge lbl_802B5EB4
/* 802B5EA8 002B1B08 2C 00 00 01 */ cmpwi r0, 1
/* 802B5EAC 002B1B0C 40 80 00 14 */ bge lbl_802B5EC0
/* 802B5EB0 002B1B10 48 00 01 80 */ b lbl_802B6030
lbl_802B5EB4:
/* 802B5EB4 002B1B14 2C 00 00 04 */ cmpwi r0, 4
/* 802B5EB8 002B1B18 40 80 01 78 */ bge lbl_802B6030
/* 802B5EBC 002B1B1C 48 00 00 40 */ b lbl_802B5EFC
lbl_802B5EC0:
/* 802B5EC0 002B1B20 80 1F 07 40 */ lwz r0, 0x740(r31)
/* 802B5EC4 002B1B24 28 00 00 01 */ cmplwi r0, 1
/* 802B5EC8 002B1B28 40 82 00 1C */ bne lbl_802B5EE4
/* 802B5ECC 002B1B2C 38 00 00 01 */ li r0, 1
/* 802B5ED0 002B1B30 3C 80 80 2C */ lis r4, WUDStoredLinkKeyCallback@ha
/* 802B5ED4 002B1B34 98 1F 00 0E */ stb r0, 0xe(r31)
/* 802B5ED8 002B1B38 38 84 8B 08 */ addi r4, r4, WUDStoredLinkKeyCallback@l
/* 802B5EDC 002B1B3C 38 60 00 00 */ li r3, 0
/* 802B5EE0 002B1B40 48 01 0D 81 */ bl BTM_ReadStoredLinkKey
lbl_802B5EE4:
/* 802B5EE4 002B1B44 38 00 00 02 */ li r0, 2
/* 802B5EE8 002B1B48 98 1F 00 0F */ stb r0, 0xf(r31)
/* 802B5EEC 002B1B4C 48 00 01 44 */ b lbl_802B6030
lbl_802B5EF0:
/* 802B5EF0 002B1B50 4B FF FE 71 */ bl WUDiClearUnregisteredDevice
/* 802B5EF4 002B1B54 98 7F 00 0F */ stb r3, 0xf(r31)
/* 802B5EF8 002B1B58 48 00 01 38 */ b lbl_802B6030
lbl_802B5EFC:
/* 802B5EFC 002B1B5C 88 1F 00 0E */ lbz r0, 0xe(r31)
/* 802B5F00 002B1B60 2C 00 00 00 */ cmpwi r0, 0
/* 802B5F04 002B1B64 40 82 01 24 */ bne lbl_802B6028
/* 802B5F08 002B1B68 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B5F0C 002B1B6C 4B FB 3B 6D */ bl OSCancelAlarm
/* 802B5F10 002B1B70 38 61 00 08 */ addi r3, r1, 8
/* 802B5F14 002B1B74 48 01 09 71 */ bl BTM_ReadLocalVersion
/* 802B5F18 002B1B78 88 81 00 08 */ lbz r4, 8(r1)
/* 802B5F1C 002B1B7C 38 7E 02 C0 */ addi r3, r30, 0x2c0
/* 802B5F20 002B1B80 4C C6 31 82 */ crclr 6
/* 802B5F24 002B1B84 48 00 36 59 */ bl WUD_DEBUGPrint
/* 802B5F28 002B1B88 A0 81 00 0A */ lhz r4, 0xa(r1)
/* 802B5F2C 002B1B8C 38 7E 02 D8 */ addi r3, r30, 0x2d8
/* 802B5F30 002B1B90 4C C6 31 82 */ crclr 6
/* 802B5F34 002B1B94 48 00 36 49 */ bl WUD_DEBUGPrint
/* 802B5F38 002B1B98 88 81 00 0C */ lbz r4, 0xc(r1)
/* 802B5F3C 002B1B9C 38 7E 02 F0 */ addi r3, r30, 0x2f0
/* 802B5F40 002B1BA0 4C C6 31 82 */ crclr 6
/* 802B5F44 002B1BA4 48 00 36 39 */ bl WUD_DEBUGPrint
/* 802B5F48 002B1BA8 A0 81 00 10 */ lhz r4, 0x10(r1)
/* 802B5F4C 002B1BAC 38 7E 03 08 */ addi r3, r30, 0x308
/* 802B5F50 002B1BB0 4C C6 31 82 */ crclr 6
/* 802B5F54 002B1BB4 48 00 36 29 */ bl WUD_DEBUGPrint
/* 802B5F58 002B1BB8 A0 81 00 0E */ lhz r4, 0xe(r1)
/* 802B5F5C 002B1BBC 38 7E 03 20 */ addi r3, r30, 0x320
/* 802B5F60 002B1BC0 4C C6 31 82 */ crclr 6
/* 802B5F64 002B1BC4 48 00 36 19 */ bl WUD_DEBUGPrint
/* 802B5F68 002B1BC8 A0 01 00 0A */ lhz r0, 0xa(r1)
/* 802B5F6C 002B1BCC 38 7E 03 38 */ addi r3, r30, 0x338
/* 802B5F70 002B1BD0 54 04 05 3E */ clrlwi r4, r0, 0x14
/* 802B5F74 002B1BD4 4C C6 31 82 */ crclr 6
/* 802B5F78 002B1BD8 48 00 36 05 */ bl WUD_DEBUGPrint
/* 802B5F7C 002B1BDC A0 01 00 0A */ lhz r0, 0xa(r1)
/* 802B5F80 002B1BE0 54 00 05 3E */ clrlwi r0, r0, 0x14
/* 802B5F84 002B1BE4 2C 00 00 A7 */ cmpwi r0, 0xa7
/* 802B5F88 002B1BE8 40 82 00 94 */ bne lbl_802B601C
/* 802B5F8C 002B1BEC 38 7E 03 60 */ addi r3, r30, 0x360
/* 802B5F90 002B1BF0 4C C6 31 82 */ crclr 6
/* 802B5F94 002B1BF4 48 00 35 E9 */ bl WUD_DEBUGPrint
/* 802B5F98 002B1BF8 3D 00 80 44 */ lis r8, lbl_8043E54C@ha
/* 802B5F9C 002B1BFC 3C 60 00 01 */ lis r3, 0x0000FC4F@ha
/* 802B5FA0 002B1C00 39 48 E5 4C */ addi r10, r8, lbl_8043E54C@l
/* 802B5FA4 002B1C04 3C C0 80 2B */ lis r6, remove_patch_cb@ha
/* 802B5FA8 002B1C08 88 EA 00 03 */ lbz r7, 3(r10)
/* 802B5FAC 002B1C0C 38 03 FC 4F */ addi r0, r3, 0x0000FC4F@l
/* 802B5FB0 002B1C10 88 8A 00 07 */ lbz r4, 7(r10)
/* 802B5FB4 002B1C14 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 802B5FB8 002B1C18 88 AA 00 02 */ lbz r5, 2(r10)
/* 802B5FBC 002B1C1C 54 E7 40 2E */ slwi r7, r7, 8
/* 802B5FC0 002B1C20 88 0A 00 06 */ lbz r0, 6(r10)
/* 802B5FC4 002B1C24 54 84 40 2E */ slwi r4, r4, 8
/* 802B5FC8 002B1C28 7C A7 2A 14 */ add r5, r7, r5
/* 802B5FCC 002B1C2C 88 EA 00 01 */ lbz r7, 1(r10)
/* 802B5FD0 002B1C30 7C 04 02 14 */ add r0, r4, r0
/* 802B5FD4 002B1C34 88 8A 00 05 */ lbz r4, 5(r10)
/* 802B5FD8 002B1C38 54 A9 40 2E */ slwi r9, r5, 8
/* 802B5FDC 002B1C3C 89 08 E5 4C */ lbz r8, -0x1ab4(r8)
/* 802B5FE0 002B1C40 54 05 40 2E */ slwi r5, r0, 8
/* 802B5FE4 002B1C44 88 0A 00 04 */ lbz r0, 4(r10)
/* 802B5FE8 002B1C48 7D 29 3A 14 */ add r9, r9, r7
/* 802B5FEC 002B1C4C 38 C6 6F 34 */ addi r6, r6, remove_patch_cb@l
/* 802B5FF0 002B1C50 7C E5 22 14 */ add r7, r5, r4
/* 802B5FF4 002B1C54 38 80 00 01 */ li r4, 1
/* 802B5FF8 002B1C58 55 29 40 2E */ slwi r9, r9, 8
/* 802B5FFC 002B1C5C 38 AD AE B0 */ addi r5, r13, lbl_80640170-_SDA_BASE_
/* 802B6000 002B1C60 54 E7 40 2E */ slwi r7, r7, 8
/* 802B6004 002B1C64 7D 09 42 14 */ add r8, r9, r8
/* 802B6008 002B1C68 7C 07 02 14 */ add r0, r7, r0
/* 802B600C 002B1C6C 91 0D AE B4 */ stw r8, lbl_80640174-_SDA_BASE_(r13)
/* 802B6010 002B1C70 90 0D AE BC */ stw r0, lbl_8064017C-_SDA_BASE_(r13)
/* 802B6014 002B1C74 48 01 09 75 */ bl BTM_VendorSpecificCommand
/* 802B6018 002B1C78 48 00 00 08 */ b lbl_802B6020
lbl_802B601C:
/* 802B601C 002B1C7C 48 00 13 95 */ bl WUDiInitSub
lbl_802B6020:
/* 802B6020 002B1C80 38 00 00 04 */ li r0, 4
/* 802B6024 002B1C84 48 00 00 08 */ b lbl_802B602C
lbl_802B6028:
/* 802B6028 002B1C88 38 00 00 02 */ li r0, 2
lbl_802B602C:
/* 802B602C 002B1C8C 98 1F 00 0F */ stb r0, 0xf(r31)
lbl_802B6030:
/* 802B6030 002B1C90 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6034 002B1C94 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B6038 002B1C98 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B603C 002B1C9C 7C 08 03 A6 */ mtlr r0
/* 802B6040 002B1CA0 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6044 002B1CA4 4E 80 00 20 */ blr
EnableStackHandler0:
/* 802B6048 002B1CA8 3D 00 80 54 */ lis r8, lbl_8053B280@ha
/* 802B604C 002B1CAC 3C E0 80 2B */ lis r7, EnableStackHandler@ha
/* 802B6050 002B1CB0 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
/* 802B6054 002B1CB4 38 A0 00 00 */ li r5, 0
/* 802B6058 002B1CB8 38 E7 5E 74 */ addi r7, r7, EnableStackHandler@l
/* 802B605C 002B1CBC 38 C0 00 00 */ li r6, 0
/* 802B6060 002B1CC0 39 08 10 00 */ addi r8, r8, 0x1000
/* 802B6064 002B1CC4 4B FB 4F FC */ b OSSwitchFiberEx
.global WUDiGetRegisteredDevice
WUDiGetRegisteredDevice:
/* 802B6068 002B1CC8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802B606C 002B1CCC 7C 08 02 A6 */ mflr r0
/* 802B6070 002B1CD0 90 01 00 44 */ stw r0, 0x44(r1)
/* 802B6074 002B1CD4 39 61 00 40 */ addi r11, r1, 0x40
/* 802B6078 002B1CD8 4B F1 10 99 */ bl _savegpr_21
/* 802B607C 002B1CDC 3F 20 80 44 */ lis r25, lbl_8043E048@ha
/* 802B6080 002B1CE0 3F 40 80 54 */ lis r26, lbl_8053AC28@ha
/* 802B6084 002B1CE4 3B 39 E0 48 */ addi r25, r25, lbl_8043E048@l
/* 802B6088 002B1CE8 38 80 00 00 */ li r4, 0
/* 802B608C 002B1CEC 38 7A AC 28 */ addi r3, r26, lbl_8053AC28@l
/* 802B6090 002B1CF0 38 A0 04 61 */ li r5, 0x461
/* 802B6094 002B1CF4 4B D4 E0 71 */ bl memset
/* 802B6098 002B1CF8 38 7A AC 28 */ addi r3, r26, -21464
/* 802B609C 002B1CFC 48 03 65 65 */ bl SCGetBtDeviceInfoArray
/* 802B60A0 002B1D00 38 7A AC 28 */ addi r3, r26, -21464
/* 802B60A4 002B1D04 3A C0 00 00 */ li r22, 0
/* 802B60A8 002B1D08 3B 03 00 01 */ addi r24, r3, 1
/* 802B60AC 002B1D0C 3B 60 00 01 */ li r27, 1
/* 802B60B0 002B1D10 3A E3 00 07 */ addi r23, r3, 7
/* 802B60B4 002B1D14 3B 80 00 00 */ li r28, 0
/* 802B60B8 002B1D18 3B A0 00 02 */ li r29, 2
/* 802B60BC 002B1D1C 3F C0 00 01 */ lis r30, 1
/* 802B60C0 002B1D20 3B E0 00 03 */ li r31, 3
/* 802B60C4 002B1D24 48 00 00 A0 */ b lbl_802B6164
lbl_802B60C8:
/* 802B60C8 002B1D28 48 00 17 75 */ bl WUDiGetNewDevInfo
/* 802B60CC 002B1D2C 7C 75 1B 78 */ mr r21, r3
/* 802B60D0 002B1D30 7F 04 C3 78 */ mr r4, r24
/* 802B60D4 002B1D34 38 A0 00 06 */ li r5, 6
/* 802B60D8 002B1D38 38 63 00 40 */ addi r3, r3, 0x40
/* 802B60DC 002B1D3C 4B D4 DF 25 */ bl memcpy
/* 802B60E0 002B1D40 7E A3 AB 78 */ mr r3, r21
/* 802B60E4 002B1D44 7E E4 BB 78 */ mr r4, r23
/* 802B60E8 002B1D48 38 A0 00 40 */ li r5, 0x40
/* 802B60EC 002B1D4C 4B D4 DF 15 */ bl memcpy
/* 802B60F0 002B1D50 9B 75 00 59 */ stb r27, 0x59(r21)
/* 802B60F4 002B1D54 7E A3 AB 78 */ mr r3, r21
/* 802B60F8 002B1D58 38 99 03 7C */ addi r4, r25, 0x37c
/* 802B60FC 002B1D5C 38 A0 00 13 */ li r5, 0x13
/* 802B6100 002B1D60 9B 95 00 5B */ stb r28, 0x5b(r21)
/* 802B6104 002B1D64 9B B5 00 5C */ stb r29, 0x5c(r21)
/* 802B6108 002B1D68 4B F1 42 91 */ bl memcmp
/* 802B610C 002B1D6C 2C 03 00 00 */ cmpwi r3, 0
/* 802B6110 002B1D70 40 82 00 14 */ bne lbl_802B6124
/* 802B6114 002B1D74 9B B5 00 57 */ stb r29, 0x57(r21)
/* 802B6118 002B1D78 38 1E 80 74 */ addi r0, r30, -32652
/* 802B611C 002B1D7C B0 15 00 5E */ sth r0, 0x5e(r21)
/* 802B6120 002B1D80 9B F5 00 58 */ stb r31, 0x58(r21)
lbl_802B6124:
/* 802B6124 002B1D84 88 95 00 40 */ lbz r4, 0x40(r21)
/* 802B6128 002B1D88 38 79 01 CC */ addi r3, r25, 0x1cc
/* 802B612C 002B1D8C 88 B5 00 41 */ lbz r5, 0x41(r21)
/* 802B6130 002B1D90 88 D5 00 42 */ lbz r6, 0x42(r21)
/* 802B6134 002B1D94 88 F5 00 43 */ lbz r7, 0x43(r21)
/* 802B6138 002B1D98 89 15 00 44 */ lbz r8, 0x44(r21)
/* 802B613C 002B1D9C 89 35 00 45 */ lbz r9, 0x45(r21)
/* 802B6140 002B1DA0 4C C6 31 82 */ crclr 6
/* 802B6144 002B1DA4 48 00 34 39 */ bl WUD_DEBUGPrint
/* 802B6148 002B1DA8 7E A4 AB 78 */ mr r4, r21
/* 802B614C 002B1DAC 38 79 03 90 */ addi r3, r25, 0x390
/* 802B6150 002B1DB0 4C C6 31 82 */ crclr 6
/* 802B6154 002B1DB4 48 00 34 29 */ bl WUD_DEBUGPrint
/* 802B6158 002B1DB8 3B 18 00 46 */ addi r24, r24, 0x46
/* 802B615C 002B1DBC 3A F7 00 46 */ addi r23, r23, 0x46
/* 802B6160 002B1DC0 3A D6 00 01 */ addi r22, r22, 1
lbl_802B6164:
/* 802B6164 002B1DC4 88 1A AC 28 */ lbz r0, -0x53d8(r26)
/* 802B6168 002B1DC8 7C 16 00 00 */ cmpw r22, r0
/* 802B616C 002B1DCC 41 80 FF 5C */ blt lbl_802B60C8
/* 802B6170 002B1DD0 39 61 00 40 */ addi r11, r1, 0x40
/* 802B6174 002B1DD4 38 60 00 03 */ li r3, 3
/* 802B6178 002B1DD8 4B F1 0F E5 */ bl _restgpr_21
/* 802B617C 002B1DDC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802B6180 002B1DE0 7C 08 03 A6 */ mtlr r0
/* 802B6184 002B1DE4 38 21 00 40 */ addi r1, r1, 0x40
/* 802B6188 002B1DE8 4E 80 00 20 */ blr
InitHandler:
/* 802B618C 002B1DEC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6190 002B1DF0 7C 08 02 A6 */ mflr r0
/* 802B6194 002B1DF4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B6198 002B1DF8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B619C 002B1DFC 93 C1 00 08 */ stw r30, 8(r1)
/* 802B61A0 002B1E00 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B61A4 002B1E04 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B61A8 002B1E08 88 1E 00 10 */ lbz r0, 0x10(r30)
/* 802B61AC 002B1E0C 2C 00 00 02 */ cmpwi r0, 2
/* 802B61B0 002B1E10 41 82 00 78 */ beq lbl_802B6228
/* 802B61B4 002B1E14 40 80 00 10 */ bge lbl_802B61C4
/* 802B61B8 002B1E18 2C 00 00 01 */ cmpwi r0, 1
/* 802B61BC 002B1E1C 40 80 00 14 */ bge lbl_802B61D0
/* 802B61C0 002B1E20 48 00 00 98 */ b lbl_802B6258
lbl_802B61C4:
/* 802B61C4 002B1E24 2C 00 00 04 */ cmpwi r0, 4
/* 802B61C8 002B1E28 40 80 00 90 */ bge lbl_802B6258
/* 802B61CC 002B1E2C 48 00 00 68 */ b lbl_802B6234
lbl_802B61D0:
/* 802B61D0 002B1E30 3B E0 00 01 */ li r31, 1
/* 802B61D4 002B1E34 4B FB C6 05 */ bl __OSGetSystemTime
/* 802B61D8 002B1E38 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802B61DC 002B1E3C 3C 60 10 62 */ lis r3, 0x10624DD3@ha
/* 802B61E0 002B1E40 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802B61E4 002B1E44 38 63 4D D3 */ addi r3, r3, 0x10624DD3@l
/* 802B61E8 002B1E48 80 AD A7 AC */ lwz r5, lbl_8063FA6C-_SDA_BASE_(r13)
/* 802B61EC 002B1E4C 54 00 F0 BE */ srwi r0, r0, 2
/* 802B61F0 002B1E50 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802B61F4 002B1E54 7C 65 20 50 */ subf r3, r5, r4
/* 802B61F8 002B1E58 54 00 D1 BE */ srwi r0, r0, 6
/* 802B61FC 002B1E5C 7C 03 03 96 */ divwu r0, r3, r0
/* 802B6200 002B1E60 20 00 01 F4 */ subfic r0, r0, 0x1f4
/* 802B6204 002B1E64 2C 00 00 00 */ cmpwi r0, 0
/* 802B6208 002B1E68 40 80 00 18 */ bge lbl_802B6220
/* 802B620C 002B1E6C 48 03 47 E1 */ bl SCCheckStatus
/* 802B6210 002B1E70 28 03 00 01 */ cmplwi r3, 1
/* 802B6214 002B1E74 41 82 00 0C */ beq lbl_802B6220
/* 802B6218 002B1E78 48 00 01 1D */ bl InitCore
/* 802B621C 002B1E7C 3B E0 00 02 */ li r31, 2
lbl_802B6220:
/* 802B6220 002B1E80 9B FE 00 10 */ stb r31, 0x10(r30)
/* 802B6224 002B1E84 48 00 00 34 */ b lbl_802B6258
lbl_802B6228:
/* 802B6228 002B1E88 4B FF FE 41 */ bl WUDiGetRegisteredDevice
/* 802B622C 002B1E8C 98 7E 00 10 */ stb r3, 0x10(r30)
/* 802B6230 002B1E90 48 00 00 28 */ b lbl_802B6258
lbl_802B6234:
/* 802B6234 002B1E94 38 7E 07 10 */ addi r3, r30, 0x710
/* 802B6238 002B1E98 4B FB 38 41 */ bl OSCancelAlarm
/* 802B623C 002B1E9C 38 00 00 01 */ li r0, 1
/* 802B6240 002B1EA0 3C 60 80 2C */ lis r3, WUDSecurityCallback@ha
/* 802B6244 002B1EA4 98 1E 07 08 */ stb r0, 0x708(r30)
/* 802B6248 002B1EA8 38 63 80 40 */ addi r3, r3, WUDSecurityCallback@l
/* 802B624C 002B1EAC 48 00 9D E1 */ bl BTA_EnableBluetooth
/* 802B6250 002B1EB0 38 00 00 04 */ li r0, 4
/* 802B6254 002B1EB4 98 1E 00 10 */ stb r0, 0x10(r30)
lbl_802B6258:
/* 802B6258 002B1EB8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B625C 002B1EBC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6260 002B1EC0 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B6264 002B1EC4 7C 08 03 A6 */ mtlr r0
/* 802B6268 002B1EC8 38 21 00 10 */ addi r1, r1, 0x10
/* 802B626C 002B1ECC 4E 80 00 20 */ blr
InitHandler0:
/* 802B6270 002B1ED0 3D 00 80 54 */ lis r8, lbl_8053B280@ha
/* 802B6274 002B1ED4 3C E0 80 2B */ lis r7, InitHandler@ha
/* 802B6278 002B1ED8 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
/* 802B627C 002B1EDC 38 A0 00 00 */ li r5, 0
/* 802B6280 002B1EE0 38 E7 61 8C */ addi r7, r7, InitHandler@l
/* 802B6284 002B1EE4 38 C0 00 00 */ li r6, 0
/* 802B6288 002B1EE8 39 08 10 00 */ addi r8, r8, 0x1000
/* 802B628C 002B1EEC 4B FB 4D D4 */ b OSSwitchFiberEx
ShutdownHandler:
/* 802B6290 002B1EF0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6294 002B1EF4 7C 08 02 A6 */ mflr r0
/* 802B6298 002B1EF8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B629C 002B1EFC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B62A0 002B1F00 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B62A4 002B1F04 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B62A8 002B1F08 88 1F 00 11 */ lbz r0, 0x11(r31)
/* 802B62AC 002B1F0C 2C 00 00 02 */ cmpwi r0, 2
/* 802B62B0 002B1F10 41 82 00 50 */ beq lbl_802B6300
/* 802B62B4 002B1F14 40 80 00 4C */ bge lbl_802B6300
/* 802B62B8 002B1F18 2C 00 00 01 */ cmpwi r0, 1
/* 802B62BC 002B1F1C 40 80 00 08 */ bge lbl_802B62C4
/* 802B62C0 002B1F20 48 00 00 40 */ b lbl_802B6300
lbl_802B62C4:
/* 802B62C4 002B1F24 48 03 47 29 */ bl SCCheckStatus
/* 802B62C8 002B1F28 28 03 00 01 */ cmplwi r3, 1
/* 802B62CC 002B1F2C 41 82 00 2C */ beq lbl_802B62F8
/* 802B62D0 002B1F30 3C 60 80 54 */ lis r3, lbl_8053AC28@ha
/* 802B62D4 002B1F34 38 63 AC 28 */ addi r3, r3, lbl_8053AC28@l
/* 802B62D8 002B1F38 48 03 63 35 */ bl SCSetBtDeviceInfoArray
/* 802B62DC 002B1F3C 2C 03 00 00 */ cmpwi r3, 0
/* 802B62E0 002B1F40 41 82 00 18 */ beq lbl_802B62F8
/* 802B62E4 002B1F44 3C 60 80 2B */ lis r3, ShutFlushCallback@ha
/* 802B62E8 002B1F48 38 63 4E 30 */ addi r3, r3, ShutFlushCallback@l
/* 802B62EC 002B1F4C 48 03 5A E1 */ bl SCFlushAsync
/* 802B62F0 002B1F50 38 00 00 02 */ li r0, 2
/* 802B62F4 002B1F54 48 00 00 08 */ b lbl_802B62FC
lbl_802B62F8:
/* 802B62F8 002B1F58 38 00 00 01 */ li r0, 1
lbl_802B62FC:
/* 802B62FC 002B1F5C 98 1F 00 11 */ stb r0, 0x11(r31)
lbl_802B6300:
/* 802B6300 002B1F60 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6304 002B1F64 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6308 002B1F68 7C 08 03 A6 */ mtlr r0
/* 802B630C 002B1F6C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6310 002B1F70 4E 80 00 20 */ blr
ShutdownHandler0:
/* 802B6314 002B1F74 3D 00 80 54 */ lis r8, lbl_8053B280@ha
/* 802B6318 002B1F78 3C E0 80 2B */ lis r7, ShutdownHandler@ha
/* 802B631C 002B1F7C 39 08 B2 80 */ addi r8, r8, lbl_8053B280@l
/* 802B6320 002B1F80 38 A0 00 00 */ li r5, 0
/* 802B6324 002B1F84 38 E7 62 90 */ addi r7, r7, ShutdownHandler@l
/* 802B6328 002B1F88 38 C0 00 00 */ li r6, 0
/* 802B632C 002B1F8C 39 08 10 00 */ addi r8, r8, 0x1000
/* 802B6330 002B1F90 4B FB 4D 30 */ b OSSwitchFiberEx
.global InitCore
InitCore:
/* 802B6334 002B1F94 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6338 002B1F98 7C 08 02 A6 */ mflr r0
/* 802B633C 002B1F9C 3C 60 80 44 */ lis r3, lbl_8043E3E4@ha
/* 802B6340 002B1FA0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6344 002B1FA4 38 63 E3 E4 */ addi r3, r3, lbl_8043E3E4@l
/* 802B6348 002B1FA8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B634C 002B1FAC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B6350 002B1FB0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B6354 002B1FB4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B6358 002B1FB8 3B DF 00 00 */ addi r30, r31, 0
/* 802B635C 002B1FBC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B6360 002B1FC0 4C C6 31 82 */ crclr 6
/* 802B6364 002B1FC4 48 00 32 19 */ bl WUD_DEBUGPrint
/* 802B6368 002B1FC8 38 DF 0D 48 */ addi r6, r31, 0xd48
/* 802B636C 002B1FCC 39 40 00 00 */ li r10, 0
/* 802B6370 002B1FD0 91 46 00 00 */ stw r10, 0(r6)
/* 802B6374 002B1FD4 38 FF 1D A0 */ addi r7, r31, 0x1da0
/* 802B6378 002B1FD8 39 1F 1D C0 */ addi r8, r31, 0x1dc0
/* 802B637C 002B1FDC 38 9E 00 58 */ addi r4, r30, 0x58
/* 802B6380 002B1FE0 B1 47 00 00 */ sth r10, 0(r7)
/* 802B6384 002B1FE4 38 7E 00 1C */ addi r3, r30, 0x1c
/* 802B6388 002B1FE8 38 00 00 03 */ li r0, 3
/* 802B638C 002B1FEC 7F C5 F3 78 */ mr r5, r30
/* 802B6390 002B1FF0 B1 48 00 00 */ sth r10, 0(r8)
/* 802B6394 002B1FF4 39 20 00 00 */ li r9, 0
/* 802B6398 002B1FF8 91 46 00 04 */ stw r10, 4(r6)
/* 802B639C 002B1FFC B1 47 00 02 */ sth r10, 2(r7)
/* 802B63A0 002B2000 B1 48 00 02 */ sth r10, 2(r8)
/* 802B63A4 002B2004 91 46 00 08 */ stw r10, 8(r6)
/* 802B63A8 002B2008 B1 47 00 04 */ sth r10, 4(r7)
/* 802B63AC 002B200C B1 48 00 04 */ sth r10, 4(r8)
/* 802B63B0 002B2010 91 46 00 0C */ stw r10, 0xc(r6)
/* 802B63B4 002B2014 B1 47 00 06 */ sth r10, 6(r7)
/* 802B63B8 002B2018 B1 48 00 06 */ sth r10, 6(r8)
/* 802B63BC 002B201C 91 46 00 10 */ stw r10, 0x10(r6)
/* 802B63C0 002B2020 B1 47 00 08 */ sth r10, 8(r7)
/* 802B63C4 002B2024 B1 48 00 08 */ sth r10, 8(r8)
/* 802B63C8 002B2028 91 46 00 14 */ stw r10, 0x14(r6)
/* 802B63CC 002B202C B1 47 00 0A */ sth r10, 0xa(r7)
/* 802B63D0 002B2030 B1 48 00 0A */ sth r10, 0xa(r8)
/* 802B63D4 002B2034 91 46 00 18 */ stw r10, 0x18(r6)
/* 802B63D8 002B2038 B1 47 00 0C */ sth r10, 0xc(r7)
/* 802B63DC 002B203C B1 48 00 0C */ sth r10, 0xc(r8)
/* 802B63E0 002B2040 91 46 00 1C */ stw r10, 0x1c(r6)
/* 802B63E4 002B2044 B1 47 00 0E */ sth r10, 0xe(r7)
/* 802B63E8 002B2048 B1 48 00 0E */ sth r10, 0xe(r8)
/* 802B63EC 002B204C 91 46 00 20 */ stw r10, 0x20(r6)
/* 802B63F0 002B2050 B1 47 00 10 */ sth r10, 0x10(r7)
/* 802B63F4 002B2054 B1 48 00 10 */ sth r10, 0x10(r8)
/* 802B63F8 002B2058 91 46 00 24 */ stw r10, 0x24(r6)
/* 802B63FC 002B205C B1 47 00 12 */ sth r10, 0x12(r7)
/* 802B6400 002B2060 B1 48 00 12 */ sth r10, 0x12(r8)
/* 802B6404 002B2064 91 46 00 28 */ stw r10, 0x28(r6)
/* 802B6408 002B2068 B1 47 00 14 */ sth r10, 0x14(r7)
/* 802B640C 002B206C B1 48 00 14 */ sth r10, 0x14(r8)
/* 802B6410 002B2070 91 46 00 2C */ stw r10, 0x2c(r6)
/* 802B6414 002B2074 B1 47 00 16 */ sth r10, 0x16(r7)
/* 802B6418 002B2078 B1 48 00 16 */ sth r10, 0x16(r8)
/* 802B641C 002B207C 91 46 00 30 */ stw r10, 0x30(r6)
/* 802B6420 002B2080 B1 47 00 18 */ sth r10, 0x18(r7)
/* 802B6424 002B2084 B1 48 00 18 */ sth r10, 0x18(r8)
/* 802B6428 002B2088 91 46 00 34 */ stw r10, 0x34(r6)
/* 802B642C 002B208C B1 47 00 1A */ sth r10, 0x1a(r7)
/* 802B6430 002B2090 B1 48 00 1A */ sth r10, 0x1a(r8)
/* 802B6434 002B2094 91 46 00 38 */ stw r10, 0x38(r6)
/* 802B6438 002B2098 B1 47 00 1C */ sth r10, 0x1c(r7)
/* 802B643C 002B209C B1 48 00 1C */ sth r10, 0x1c(r8)
/* 802B6440 002B20A0 91 46 00 3C */ stw r10, 0x3c(r6)
/* 802B6444 002B20A4 B1 47 00 1E */ sth r10, 0x1e(r7)
/* 802B6448 002B20A8 B1 48 00 1E */ sth r10, 0x1e(r8)
/* 802B644C 002B20AC 90 9E 00 18 */ stw r4, 0x18(r30)
/* 802B6450 002B20B0 90 7E 00 14 */ stw r3, 0x14(r30)
/* 802B6454 002B20B4 7C 09 03 A6 */ mtctr r0
lbl_802B6458:
/* 802B6458 002B20B8 20 09 00 05 */ subfic r0, r9, 5
/* 802B645C 002B20BC 2C 09 00 00 */ cmpwi r9, 0
/* 802B6460 002B20C0 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802B6464 002B20C4 7C 7E 02 14 */ add r3, r30, r0
/* 802B6468 002B20C8 38 03 04 A4 */ addi r0, r3, 0x4a4
/* 802B646C 002B20CC 90 05 00 1C */ stw r0, 0x1c(r5)
/* 802B6470 002B20D0 40 82 00 0C */ bne lbl_802B647C
/* 802B6474 002B20D4 38 00 00 00 */ li r0, 0
/* 802B6478 002B20D8 48 00 00 14 */ b lbl_802B648C
lbl_802B647C:
/* 802B647C 002B20DC 38 09 FF FF */ addi r0, r9, -1
/* 802B6480 002B20E0 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B6484 002B20E4 7C 7E 02 14 */ add r3, r30, r0
/* 802B6488 002B20E8 38 03 00 1C */ addi r0, r3, 0x1c
lbl_802B648C:
/* 802B648C 002B20EC 2C 09 00 05 */ cmpwi r9, 5
/* 802B6490 002B20F0 90 05 00 20 */ stw r0, 0x20(r5)
/* 802B6494 002B20F4 40 82 00 0C */ bne lbl_802B64A0
/* 802B6498 002B20F8 38 00 00 00 */ li r0, 0
/* 802B649C 002B20FC 48 00 00 14 */ b lbl_802B64B0
lbl_802B64A0:
/* 802B64A0 002B2100 38 09 00 01 */ addi r0, r9, 1
/* 802B64A4 002B2104 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B64A8 002B2108 7C 7E 02 14 */ add r3, r30, r0
/* 802B64AC 002B210C 38 03 00 1C */ addi r0, r3, 0x1c
lbl_802B64B0:
/* 802B64B0 002B2110 35 29 00 01 */ addic. r9, r9, 1
/* 802B64B4 002B2114 90 05 00 24 */ stw r0, 0x24(r5)
/* 802B64B8 002B2118 20 09 00 05 */ subfic r0, r9, 5
/* 802B64BC 002B211C 1C 00 00 60 */ mulli r0, r0, 0x60
/* 802B64C0 002B2120 7C 7E 02 14 */ add r3, r30, r0
/* 802B64C4 002B2124 38 03 04 A4 */ addi r0, r3, 0x4a4
/* 802B64C8 002B2128 90 05 00 28 */ stw r0, 0x28(r5)
/* 802B64CC 002B212C 40 82 00 0C */ bne lbl_802B64D8
/* 802B64D0 002B2130 38 00 00 00 */ li r0, 0
/* 802B64D4 002B2134 48 00 00 14 */ b lbl_802B64E8
lbl_802B64D8:
/* 802B64D8 002B2138 38 09 FF FF */ addi r0, r9, -1
/* 802B64DC 002B213C 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B64E0 002B2140 7C 7E 02 14 */ add r3, r30, r0
/* 802B64E4 002B2144 38 03 00 1C */ addi r0, r3, 0x1c
lbl_802B64E8:
/* 802B64E8 002B2148 2C 09 00 05 */ cmpwi r9, 5
/* 802B64EC 002B214C 90 05 00 2C */ stw r0, 0x2c(r5)
/* 802B64F0 002B2150 40 82 00 0C */ bne lbl_802B64FC
/* 802B64F4 002B2154 38 00 00 00 */ li r0, 0
/* 802B64F8 002B2158 48 00 00 14 */ b lbl_802B650C
lbl_802B64FC:
/* 802B64FC 002B215C 38 09 00 01 */ addi r0, r9, 1
/* 802B6500 002B2160 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B6504 002B2164 7C 7E 02 14 */ add r3, r30, r0
/* 802B6508 002B2168 38 03 00 1C */ addi r0, r3, 0x1c
lbl_802B650C:
/* 802B650C 002B216C 90 05 00 30 */ stw r0, 0x30(r5)
/* 802B6510 002B2170 38 A5 00 18 */ addi r5, r5, 0x18
/* 802B6514 002B2174 39 29 00 01 */ addi r9, r9, 1
/* 802B6518 002B2178 42 00 FF 40 */ bdnz lbl_802B6458
/* 802B651C 002B217C 38 9E 00 D8 */ addi r4, r30, 0xd8
/* 802B6520 002B2180 38 7E 00 6C */ addi r3, r30, 0x6c
/* 802B6524 002B2184 90 9E 00 68 */ stw r4, 0x68(r30)
/* 802B6528 002B2188 38 00 00 05 */ li r0, 5
/* 802B652C 002B218C 7F C5 F3 78 */ mr r5, r30
/* 802B6530 002B2190 38 9E 00 E4 */ addi r4, r30, 0xe4
/* 802B6534 002B2194 38 C0 00 00 */ li r6, 0
/* 802B6538 002B2198 90 7E 00 64 */ stw r3, 0x64(r30)
/* 802B653C 002B219C 7C 09 03 A6 */ mtctr r0
lbl_802B6540:
/* 802B6540 002B21A0 2C 06 00 00 */ cmpwi r6, 0
/* 802B6544 002B21A4 90 85 00 6C */ stw r4, 0x6c(r5)
/* 802B6548 002B21A8 40 82 00 0C */ bne lbl_802B6554
/* 802B654C 002B21AC 38 00 00 00 */ li r0, 0
/* 802B6550 002B21B0 48 00 00 14 */ b lbl_802B6564
lbl_802B6554:
/* 802B6554 002B21B4 38 06 FF FF */ addi r0, r6, -1
/* 802B6558 002B21B8 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B655C 002B21BC 7C 7E 02 14 */ add r3, r30, r0
/* 802B6560 002B21C0 38 03 00 6C */ addi r0, r3, 0x6c
lbl_802B6564:
/* 802B6564 002B21C4 2C 06 00 09 */ cmpwi r6, 9
/* 802B6568 002B21C8 90 05 00 70 */ stw r0, 0x70(r5)
/* 802B656C 002B21CC 40 82 00 0C */ bne lbl_802B6578
/* 802B6570 002B21D0 38 00 00 00 */ li r0, 0
/* 802B6574 002B21D4 48 00 00 14 */ b lbl_802B6588
lbl_802B6578:
/* 802B6578 002B21D8 38 06 00 01 */ addi r0, r6, 1
/* 802B657C 002B21DC 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B6580 002B21E0 7C 7E 02 14 */ add r3, r30, r0
/* 802B6584 002B21E4 38 03 00 6C */ addi r0, r3, 0x6c
lbl_802B6588:
/* 802B6588 002B21E8 90 05 00 74 */ stw r0, 0x74(r5)
/* 802B658C 002B21EC 38 84 00 60 */ addi r4, r4, 0x60
/* 802B6590 002B21F0 34 C6 00 01 */ addic. r6, r6, 1
/* 802B6594 002B21F4 90 85 00 78 */ stw r4, 0x78(r5)
/* 802B6598 002B21F8 40 82 00 0C */ bne lbl_802B65A4
/* 802B659C 002B21FC 38 00 00 00 */ li r0, 0
/* 802B65A0 002B2200 48 00 00 14 */ b lbl_802B65B4
lbl_802B65A4:
/* 802B65A4 002B2204 38 06 FF FF */ addi r0, r6, -1
/* 802B65A8 002B2208 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B65AC 002B220C 7C 7E 02 14 */ add r3, r30, r0
/* 802B65B0 002B2210 38 03 00 6C */ addi r0, r3, 0x6c
lbl_802B65B4:
/* 802B65B4 002B2214 2C 06 00 09 */ cmpwi r6, 9
/* 802B65B8 002B2218 90 05 00 7C */ stw r0, 0x7c(r5)
/* 802B65BC 002B221C 40 82 00 0C */ bne lbl_802B65C8
/* 802B65C0 002B2220 38 00 00 00 */ li r0, 0
/* 802B65C4 002B2224 48 00 00 14 */ b lbl_802B65D8
lbl_802B65C8:
/* 802B65C8 002B2228 38 06 00 01 */ addi r0, r6, 1
/* 802B65CC 002B222C 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802B65D0 002B2230 7C 7E 02 14 */ add r3, r30, r0
/* 802B65D4 002B2234 38 03 00 6C */ addi r0, r3, 0x6c
lbl_802B65D8:
/* 802B65D8 002B2238 90 05 00 80 */ stw r0, 0x80(r5)
/* 802B65DC 002B223C 38 84 00 60 */ addi r4, r4, 0x60
/* 802B65E0 002B2240 38 A5 00 18 */ addi r5, r5, 0x18
/* 802B65E4 002B2244 38 C6 00 01 */ addi r6, r6, 1
/* 802B65E8 002B2248 42 00 FF 58 */ bdnz lbl_802B6540
/* 802B65EC 002B224C 3B A0 00 00 */ li r29, 0
/* 802B65F0 002B2250 38 C0 00 01 */ li r6, 1
/* 802B65F4 002B2254 38 00 FF BF */ li r0, -65
/* 802B65F8 002B2258 9B BE 00 0C */ stb r29, 0xc(r30)
/* 802B65FC 002B225C 38 7E 07 02 */ addi r3, r30, 0x702
/* 802B6600 002B2260 38 80 00 00 */ li r4, 0
/* 802B6604 002B2264 9B BE 00 0E */ stb r29, 0xe(r30)
/* 802B6608 002B2268 38 A0 00 06 */ li r5, 6
/* 802B660C 002B226C 9B BE 00 0D */ stb r29, 0xd(r30)
/* 802B6610 002B2270 9B BE 00 0F */ stb r29, 0xf(r30)
/* 802B6614 002B2274 9B BE 00 10 */ stb r29, 0x10(r30)
/* 802B6618 002B2278 9B BE 00 11 */ stb r29, 0x11(r30)
/* 802B661C 002B227C 9B BE 06 E7 */ stb r29, 0x6e7(r30)
/* 802B6620 002B2280 9B BE 06 E9 */ stb r29, 0x6e9(r30)
/* 802B6624 002B2284 98 DE 06 E8 */ stb r6, 0x6e8(r30)
/* 802B6628 002B2288 9B BE 06 EA */ stb r29, 0x6ea(r30)
/* 802B662C 002B228C 9B BE 06 EB */ stb r29, 0x6eb(r30)
/* 802B6630 002B2290 9B BE 07 08 */ stb r29, 0x708(r30)
/* 802B6634 002B2294 9B BE 07 0A */ stb r29, 0x70a(r30)
/* 802B6638 002B2298 98 1E 07 0B */ stb r0, 0x70b(r30)
/* 802B663C 002B229C 4B D4 DA C9 */ bl memset
/* 802B6640 002B22A0 38 7E 06 FC */ addi r3, r30, 0x6fc
/* 802B6644 002B22A4 38 80 00 00 */ li r4, 0
/* 802B6648 002B22A8 38 A0 00 06 */ li r5, 6
/* 802B664C 002B22AC 4B D4 DA B9 */ bl memset
/* 802B6650 002B22B0 38 00 00 0A */ li r0, 0xa
/* 802B6654 002B22B4 B3 BE 07 44 */ sth r29, 0x744(r30)
/* 802B6658 002B22B8 B0 1E 07 46 */ sth r0, 0x746(r30)
/* 802B665C 002B22BC 4B FB 81 01 */ bl OSDisableInterrupts
/* 802B6660 002B22C0 3B DF 00 00 */ addi r30, r31, 0
/* 802B6664 002B22C4 7C 7F 1B 78 */ mr r31, r3
/* 802B6668 002B22C8 38 7E 00 E4 */ addi r3, r30, 0xe4
/* 802B666C 002B22CC 38 80 00 00 */ li r4, 0
/* 802B6670 002B22D0 38 A0 03 C0 */ li r5, 0x3c0
/* 802B6674 002B22D4 4B D4 DA 91 */ bl memset
/* 802B6678 002B22D8 38 7E 04 A4 */ addi r3, r30, 0x4a4
/* 802B667C 002B22DC 38 80 00 00 */ li r4, 0
/* 802B6680 002B22E0 38 A0 02 40 */ li r5, 0x240
/* 802B6684 002B22E4 4B D4 DA 81 */ bl memset
/* 802B6688 002B22E8 9B BE 00 12 */ stb r29, 0x12(r30)
/* 802B668C 002B22EC 7F E3 FB 78 */ mr r3, r31
/* 802B6690 002B22F0 9B BE 00 13 */ stb r29, 0x13(r30)
/* 802B6694 002B22F4 9B BE 06 E4 */ stb r29, 0x6e4(r30)
/* 802B6698 002B22F8 9B BE 06 E5 */ stb r29, 0x6e5(r30)
/* 802B669C 002B22FC 9B BE 06 E6 */ stb r29, 0x6e6(r30)
/* 802B66A0 002B2300 4B FB 80 E5 */ bl OSRestoreInterrupts
/* 802B66A4 002B2304 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B66A8 002B2308 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B66AC 002B230C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B66B0 002B2310 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B66B4 002B2314 7C 08 03 A6 */ mtlr r0
/* 802B66B8 002B2318 38 21 00 20 */ addi r1, r1, 0x20
/* 802B66BC 002B231C 4E 80 00 20 */ blr
.global WUDInit
WUDInit:
/* 802B66C0 002B2320 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B66C4 002B2324 7C 08 02 A6 */ mflr r0
/* 802B66C8 002B2328 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B66CC 002B232C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B66D0 002B2330 93 C1 00 08 */ stw r30, 8(r1)
/* 802B66D4 002B2334 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B66D8 002B2338 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B66DC 002B233C 80 0D AE A8 */ lwz r0, lbl_80640168-_SDA_BASE_(r13)
/* 802B66E0 002B2340 2C 00 00 00 */ cmpwi r0, 0
/* 802B66E4 002B2344 41 82 00 0C */ beq lbl_802B66F0
/* 802B66E8 002B2348 38 60 00 00 */ li r3, 0
/* 802B66EC 002B234C 48 00 00 B4 */ b lbl_802B67A0
lbl_802B66F0:
/* 802B66F0 002B2350 3C 60 80 44 */ lis r3, lbl_8043E3F0@ha
/* 802B66F4 002B2354 38 63 E3 F0 */ addi r3, r3, lbl_8043E3F0@l
/* 802B66F8 002B2358 4C C6 31 82 */ crclr 6
/* 802B66FC 002B235C 48 00 2E 81 */ bl WUD_DEBUGPrint
/* 802B6700 002B2360 48 00 68 D1 */ bl BTA_Init
/* 802B6704 002B2364 88 6D AE AC */ lbz r3, lbl_8064016C-_SDA_BASE_(r13)
/* 802B6708 002B2368 48 00 73 BD */ bl bta_sys_set_trace_level
/* 802B670C 002B236C 88 6D AE AC */ lbz r3, lbl_8064016C-_SDA_BASE_(r13)
/* 802B6710 002B2370 48 01 FC CD */ bl L2CA_SetTraceLevel
/* 802B6714 002B2374 88 6D AE AC */ lbz r3, lbl_8064016C-_SDA_BASE_(r13)
/* 802B6718 002B2378 48 02 C5 15 */ bl SDP_SetTraceLevel
/* 802B671C 002B237C 3C 60 80 44 */ lis r3, lbl_8043E408@ha
/* 802B6720 002B2380 38 63 E4 08 */ addi r3, r3, lbl_8043E408@l
/* 802B6724 002B2384 4C C6 31 82 */ crclr 6
/* 802B6728 002B2388 48 00 2E 55 */ bl WUD_DEBUGPrint
/* 802B672C 002B238C 38 00 00 00 */ li r0, 0
/* 802B6730 002B2390 3B E0 00 01 */ li r31, 1
/* 802B6734 002B2394 90 1E 00 00 */ stw r0, 0(r30)
/* 802B6738 002B2398 90 1E 00 04 */ stw r0, 4(r30)
/* 802B673C 002B239C 90 1E 00 08 */ stw r0, 8(r30)
/* 802B6740 002B23A0 90 1E 06 F0 */ stw r0, 0x6f0(r30)
/* 802B6744 002B23A4 90 1E 06 EC */ stw r0, 0x6ec(r30)
/* 802B6748 002B23A8 9B FE 00 10 */ stb r31, 0x10(r30)
/* 802B674C 002B23AC 48 03 42 01 */ bl SCInit
/* 802B6750 002B23B0 38 7E 07 10 */ addi r3, r30, 0x710
/* 802B6754 002B23B4 4B FB 2F D1 */ bl OSCreateAlarm
/* 802B6758 002B23B8 4B FB C0 61 */ bl OSGetTime
/* 802B675C 002B23BC 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802B6760 002B23C0 3D 20 80 2B */ lis r9, InitHandler0@ha
/* 802B6764 002B23C4 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802B6768 002B23C8 3C C0 10 62 */ lis r6, 0x10624DD3@ha
/* 802B676C 002B23CC 7C 65 1B 78 */ mr r5, r3
/* 802B6770 002B23D0 39 29 62 70 */ addi r9, r9, InitHandler0@l
/* 802B6774 002B23D4 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
/* 802B6778 002B23D8 54 00 F0 BE */ srwi r0, r0, 2
/* 802B677C 002B23DC 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802B6780 002B23E0 7C 86 23 78 */ mr r6, r4
/* 802B6784 002B23E4 38 7E 07 10 */ addi r3, r30, 0x710
/* 802B6788 002B23E8 38 E0 00 00 */ li r7, 0
/* 802B678C 002B23EC 54 00 D1 BE */ srwi r0, r0, 6
/* 802B6790 002B23F0 1D 00 00 0A */ mulli r8, r0, 0xa
/* 802B6794 002B23F4 4B FB 32 61 */ bl OSSetPeriodicAlarm
/* 802B6798 002B23F8 93 ED AE A8 */ stw r31, lbl_80640168-_SDA_BASE_(r13)
/* 802B679C 002B23FC 38 60 00 01 */ li r3, 1
lbl_802B67A0:
/* 802B67A0 002B2400 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B67A4 002B2404 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B67A8 002B2408 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B67AC 002B240C 7C 08 03 A6 */ mtlr r0
/* 802B67B0 002B2410 38 21 00 10 */ addi r1, r1, 0x10
/* 802B67B4 002B2414 4E 80 00 20 */ blr
.global WUDRegisterAllocator
WUDRegisterAllocator:
/* 802B67B8 002B2418 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B67BC 002B241C 7C 08 02 A6 */ mflr r0
/* 802B67C0 002B2420 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B67C4 002B2424 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B67C8 002B2428 7C 9F 23 78 */ mr r31, r4
/* 802B67CC 002B242C 93 C1 00 08 */ stw r30, 8(r1)
/* 802B67D0 002B2430 7C 7E 1B 78 */ mr r30, r3
/* 802B67D4 002B2434 4B FB 7F 89 */ bl OSDisableInterrupts
/* 802B67D8 002B2438 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B67DC 002B243C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B67E0 002B2440 93 C4 06 F4 */ stw r30, 0x6f4(r4)
/* 802B67E4 002B2444 93 E4 06 F8 */ stw r31, 0x6f8(r4)
/* 802B67E8 002B2448 4B FB 7F 9D */ bl OSRestoreInterrupts
/* 802B67EC 002B244C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B67F0 002B2450 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B67F4 002B2454 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B67F8 002B2458 7C 08 03 A6 */ mtlr r0
/* 802B67FC 002B245C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6800 002B2460 4E 80 00 20 */ blr
.global WUDShutdown
WUDShutdown:
/* 802B6804 002B2464 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6808 002B2468 7C 08 02 A6 */ mflr r0
/* 802B680C 002B246C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6810 002B2470 39 61 00 20 */ addi r11, r1, 0x20
/* 802B6814 002B2474 4B F1 09 15 */ bl _savegpr_27
/* 802B6818 002B2478 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B681C 002B247C 3C 60 80 44 */ lis r3, lbl_8043E41C@ha
/* 802B6820 002B2480 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B6824 002B2484 38 63 E4 1C */ addi r3, r3, lbl_8043E41C@l
/* 802B6828 002B2488 4C C6 31 82 */ crclr 6
/* 802B682C 002B248C 48 00 2D 51 */ bl WUD_DEBUGPrint
/* 802B6830 002B2490 4B FB 7F 2D */ bl OSDisableInterrupts
/* 802B6834 002B2494 38 00 00 00 */ li r0, 0
/* 802B6838 002B2498 98 1F 06 EB */ stb r0, 0x6eb(r31)
/* 802B683C 002B249C 98 1F 06 EA */ stb r0, 0x6ea(r31)
/* 802B6840 002B24A0 4B FB 7F 45 */ bl OSRestoreInterrupts
/* 802B6844 002B24A4 38 60 00 00 */ li r3, 0
/* 802B6848 002B24A8 38 80 00 00 */ li r4, 0
/* 802B684C 002B24AC 48 00 99 3D */ bl BTA_DmSetVisibility
/* 802B6850 002B24B0 4B FB 7F 0D */ bl OSDisableInterrupts
/* 802B6854 002B24B4 7C 7E 1B 78 */ mr r30, r3
/* 802B6858 002B24B8 4B FB 7F 05 */ bl OSDisableInterrupts
/* 802B685C 002B24BC 88 1F 00 0C */ lbz r0, 0xc(r31)
/* 802B6860 002B24C0 2C 00 00 00 */ cmpwi r0, 0
/* 802B6864 002B24C4 40 82 00 34 */ bne lbl_802B6898
/* 802B6868 002B24C8 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 802B686C 002B24CC 2C 00 00 00 */ cmpwi r0, 0
/* 802B6870 002B24D0 40 82 00 28 */ bne lbl_802B6898
/* 802B6874 002B24D4 88 1F 00 0F */ lbz r0, 0xf(r31)
/* 802B6878 002B24D8 28 00 00 04 */ cmplwi r0, 4
/* 802B687C 002B24DC 40 82 00 1C */ bne lbl_802B6898
/* 802B6880 002B24E0 88 1F 00 10 */ lbz r0, 0x10(r31)
/* 802B6884 002B24E4 28 00 00 04 */ cmplwi r0, 4
/* 802B6888 002B24E8 40 82 00 10 */ bne lbl_802B6898
/* 802B688C 002B24EC 4B FB 7E F9 */ bl OSRestoreInterrupts
/* 802B6890 002B24F0 38 00 00 00 */ li r0, 0
/* 802B6894 002B24F4 48 00 00 0C */ b lbl_802B68A0
lbl_802B6898:
/* 802B6898 002B24F8 4B FB 7E ED */ bl OSRestoreInterrupts
/* 802B689C 002B24FC 38 00 00 01 */ li r0, 1
lbl_802B68A0:
/* 802B68A0 002B2500 2C 00 00 00 */ cmpwi r0, 0
/* 802B68A4 002B2504 41 82 00 0C */ beq lbl_802B68B0
/* 802B68A8 002B2508 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B68AC 002B250C 4B FB 31 CD */ bl OSCancelAlarm
lbl_802B68B0:
/* 802B68B0 002B2510 3F A0 80 54 */ lis r29, lbl_8053AC28@ha
/* 802B68B4 002B2514 38 80 00 00 */ li r4, 0
/* 802B68B8 002B2518 3B BD AC 28 */ addi r29, r29, lbl_8053AC28@l
/* 802B68BC 002B251C 38 A0 02 BC */ li r5, 0x2bc
/* 802B68C0 002B2520 38 7D 00 01 */ addi r3, r29, 1
/* 802B68C4 002B2524 4B D4 D8 41 */ bl memset
/* 802B68C8 002B2528 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B68CC 002B252C 3B 9D 00 01 */ addi r28, r29, 1
/* 802B68D0 002B2530 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B68D4 002B2534 3B BD 00 07 */ addi r29, r29, 7
/* 802B68D8 002B2538 83 63 00 64 */ lwz r27, 0x64(r3)
/* 802B68DC 002B253C 48 00 00 34 */ b lbl_802B6910
lbl_802B68E0:
/* 802B68E0 002B2540 80 9B 00 00 */ lwz r4, 0(r27)
/* 802B68E4 002B2544 7F 83 E3 78 */ mr r3, r28
/* 802B68E8 002B2548 38 A0 00 06 */ li r5, 6
/* 802B68EC 002B254C 38 84 00 40 */ addi r4, r4, 0x40
/* 802B68F0 002B2550 4B D4 D7 11 */ bl memcpy
/* 802B68F4 002B2554 80 9B 00 00 */ lwz r4, 0(r27)
/* 802B68F8 002B2558 7F A3 EB 78 */ mr r3, r29
/* 802B68FC 002B255C 38 A0 00 40 */ li r5, 0x40
/* 802B6900 002B2560 4B D4 D7 01 */ bl memcpy
/* 802B6904 002B2564 83 7B 00 08 */ lwz r27, 8(r27)
/* 802B6908 002B2568 3B 9C 00 46 */ addi r28, r28, 0x46
/* 802B690C 002B256C 3B BD 00 46 */ addi r29, r29, 0x46
lbl_802B6910:
/* 802B6910 002B2570 2C 1B 00 00 */ cmpwi r27, 0
/* 802B6914 002B2574 40 82 FF CC */ bne lbl_802B68E0
/* 802B6918 002B2578 38 00 00 01 */ li r0, 1
/* 802B691C 002B257C 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B6920 002B2580 98 1F 00 11 */ stb r0, 0x11(r31)
/* 802B6924 002B2584 4B FB 2E 01 */ bl OSCreateAlarm
/* 802B6928 002B2588 4B FB BE 91 */ bl OSGetTime
/* 802B692C 002B258C 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802B6930 002B2590 3D 20 80 2B */ lis r9, ShutdownHandler0@ha
/* 802B6934 002B2594 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802B6938 002B2598 3C C0 10 62 */ lis r6, 0x10624DD3@ha
/* 802B693C 002B259C 7C 65 1B 78 */ mr r5, r3
/* 802B6940 002B25A0 39 29 63 14 */ addi r9, r9, ShutdownHandler0@l
/* 802B6944 002B25A4 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
/* 802B6948 002B25A8 54 00 F0 BE */ srwi r0, r0, 2
/* 802B694C 002B25AC 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802B6950 002B25B0 7C 86 23 78 */ mr r6, r4
/* 802B6954 002B25B4 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B6958 002B25B8 38 E0 00 00 */ li r7, 0
/* 802B695C 002B25BC 54 00 D1 BE */ srwi r0, r0, 6
/* 802B6960 002B25C0 1D 00 00 0A */ mulli r8, r0, 0xa
/* 802B6964 002B25C4 4B FB 30 91 */ bl OSSetPeriodicAlarm
/* 802B6968 002B25C8 38 00 00 04 */ li r0, 4
/* 802B696C 002B25CC 7F C3 F3 78 */ mr r3, r30
/* 802B6970 002B25D0 98 1F 07 08 */ stb r0, 0x708(r31)
/* 802B6974 002B25D4 4B FB 7E 11 */ bl OSRestoreInterrupts
/* 802B6978 002B25D8 39 61 00 20 */ addi r11, r1, 0x20
/* 802B697C 002B25DC 4B F1 07 F9 */ bl _restgpr_27
/* 802B6980 002B25E0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6984 002B25E4 7C 08 03 A6 */ mtlr r0
/* 802B6988 002B25E8 38 21 00 20 */ addi r1, r1, 0x20
/* 802B698C 002B25EC 4E 80 00 20 */ blr
.global WUDGetStatus
WUDGetStatus:
/* 802B6990 002B25F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6994 002B25F4 7C 08 02 A6 */ mflr r0
/* 802B6998 002B25F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B699C 002B25FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B69A0 002B2600 4B FB 7D BD */ bl OSDisableInterrupts
/* 802B69A4 002B2604 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B69A8 002B2608 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B69AC 002B260C 8B E4 07 08 */ lbz r31, 0x708(r4)
/* 802B69B0 002B2610 4B FB 7D D5 */ bl OSRestoreInterrupts
/* 802B69B4 002B2614 7F E3 07 74 */ extsb r3, r31
/* 802B69B8 002B2618 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B69BC 002B261C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B69C0 002B2620 7C 08 03 A6 */ mtlr r0
/* 802B69C4 002B2624 38 21 00 10 */ addi r1, r1, 0x10
/* 802B69C8 002B2628 4E 80 00 20 */ blr
.global WUDGetBufferStatus
WUDGetBufferStatus:
/* 802B69CC 002B262C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B69D0 002B2630 7C 08 02 A6 */ mflr r0
/* 802B69D4 002B2634 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B69D8 002B2638 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B69DC 002B263C 4B FB 7D 81 */ bl OSDisableInterrupts
/* 802B69E0 002B2640 3C A0 80 54 */ lis r5, lbl_8053A4E0@ha
/* 802B69E4 002B2644 38 A5 A4 E0 */ addi r5, r5, lbl_8053A4E0@l
/* 802B69E8 002B2648 A0 85 07 44 */ lhz r4, 0x744(r5)
/* 802B69EC 002B264C A0 05 07 46 */ lhz r0, 0x746(r5)
/* 802B69F0 002B2650 7C 04 00 50 */ subf r0, r4, r0
/* 802B69F4 002B2654 54 1F 06 3E */ clrlwi r31, r0, 0x18
/* 802B69F8 002B2658 4B FB 7D 8D */ bl OSRestoreInterrupts
/* 802B69FC 002B265C 7F E3 FB 78 */ mr r3, r31
/* 802B6A00 002B2660 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6A04 002B2664 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6A08 002B2668 7C 08 03 A6 */ mtlr r0
/* 802B6A0C 002B266C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6A10 002B2670 4E 80 00 20 */ blr
.global WUDSetSniffMode
WUDSetSniffMode:
/* 802B6A14 002B2674 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6A18 002B2678 7C 08 02 A6 */ mflr r0
/* 802B6A1C 002B267C 2C 04 00 00 */ cmpwi r4, 0
/* 802B6A20 002B2680 3C E0 80 54 */ lis r7, lbl_8053A4E0@ha
/* 802B6A24 002B2684 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6A28 002B2688 7C 68 1B 78 */ mr r8, r3
/* 802B6A2C 002B268C 38 E7 A4 E0 */ addi r7, r7, lbl_8053A4E0@l
/* 802B6A30 002B2690 40 81 00 10 */ ble lbl_802B6A40
/* 802B6A34 002B2694 38 00 00 02 */ li r0, 2
/* 802B6A38 002B2698 98 01 00 10 */ stb r0, 0x10(r1)
/* 802B6A3C 002B269C 48 00 00 0C */ b lbl_802B6A48
lbl_802B6A40:
/* 802B6A40 002B26A0 38 00 00 00 */ li r0, 0
/* 802B6A44 002B26A4 98 01 00 10 */ stb r0, 0x10(r1)
lbl_802B6A48:
/* 802B6A48 002B26A8 38 C0 00 01 */ li r6, 1
/* 802B6A4C 002B26AC 38 00 00 00 */ li r0, 0
/* 802B6A50 002B26B0 B0 81 00 08 */ sth r4, 8(r1)
/* 802B6A54 002B26B4 38 A1 00 08 */ addi r5, r1, 8
/* 802B6A58 002B26B8 88 67 07 0A */ lbz r3, 0x70a(r7)
/* 802B6A5C 002B26BC B0 81 00 0A */ sth r4, 0xa(r1)
/* 802B6A60 002B26C0 7D 04 43 78 */ mr r4, r8
/* 802B6A64 002B26C4 B0 C1 00 0C */ sth r6, 0xc(r1)
/* 802B6A68 002B26C8 B0 01 00 0E */ sth r0, 0xe(r1)
/* 802B6A6C 002B26CC 48 01 24 3D */ bl BTM_SetPowerMode
/* 802B6A70 002B26D0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6A74 002B26D4 7C 08 03 A6 */ mtlr r0
/* 802B6A78 002B26D8 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6A7C 002B26DC 4E 80 00 20 */ blr
.global WUDSetSyncSimpleCallback
WUDSetSyncSimpleCallback:
/* 802B6A80 002B26E0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6A84 002B26E4 7C 08 02 A6 */ mflr r0
/* 802B6A88 002B26E8 3C 80 80 44 */ lis r4, lbl_8043E42C@ha
/* 802B6A8C 002B26EC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B6A90 002B26F0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B6A94 002B26F4 93 C1 00 08 */ stw r30, 8(r1)
/* 802B6A98 002B26F8 7C 7E 1B 78 */ mr r30, r3
/* 802B6A9C 002B26FC 38 64 E4 2C */ addi r3, r4, lbl_8043E42C@l
/* 802B6AA0 002B2700 4C C6 31 82 */ crclr 6
/* 802B6AA4 002B2704 48 00 2A D9 */ bl WUD_DEBUGPrint
/* 802B6AA8 002B2708 4B FB 7C B5 */ bl OSDisableInterrupts
/* 802B6AAC 002B270C 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B6AB0 002B2710 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B6AB4 002B2714 83 E4 00 04 */ lwz r31, 4(r4)
/* 802B6AB8 002B2718 93 C4 00 04 */ stw r30, 4(r4)
/* 802B6ABC 002B271C 4B FB 7C C9 */ bl OSRestoreInterrupts
/* 802B6AC0 002B2720 7F E3 FB 78 */ mr r3, r31
/* 802B6AC4 002B2724 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6AC8 002B2728 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B6ACC 002B272C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6AD0 002B2730 7C 08 03 A6 */ mtlr r0
/* 802B6AD4 002B2734 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6AD8 002B2738 4E 80 00 20 */ blr
.global StartSyncDevice
StartSyncDevice:
/* 802B6ADC 002B273C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6AE0 002B2740 7C 08 02 A6 */ mflr r0
/* 802B6AE4 002B2744 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6AE8 002B2748 39 61 00 20 */ addi r11, r1, 0x20
/* 802B6AEC 002B274C 4B F1 06 39 */ bl _savegpr_26
/* 802B6AF0 002B2750 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B6AF4 002B2754 7C 7A 1B 78 */ mr r26, r3
/* 802B6AF8 002B2758 7C 9B 23 78 */ mr r27, r4
/* 802B6AFC 002B275C 7C BC 2B 78 */ mr r28, r5
/* 802B6B00 002B2760 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B6B04 002B2764 3B C0 00 00 */ li r30, 0
/* 802B6B08 002B2768 4B FB 7C 55 */ bl OSDisableInterrupts
/* 802B6B0C 002B276C 8B BF 07 08 */ lbz r29, 0x708(r31)
/* 802B6B10 002B2770 7F BD 07 74 */ extsb r29, r29
/* 802B6B14 002B2774 4B FB 7C 71 */ bl OSRestoreInterrupts
/* 802B6B18 002B2778 28 1D 00 03 */ cmplwi r29, 3
/* 802B6B1C 002B277C 40 82 00 D8 */ bne lbl_802B6BF4
/* 802B6B20 002B2780 4B FB 7C 3D */ bl OSDisableInterrupts
/* 802B6B24 002B2784 88 1F 00 0C */ lbz r0, 0xc(r31)
/* 802B6B28 002B2788 2C 00 00 00 */ cmpwi r0, 0
/* 802B6B2C 002B278C 40 82 00 34 */ bne lbl_802B6B60
/* 802B6B30 002B2790 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 802B6B34 002B2794 2C 00 00 00 */ cmpwi r0, 0
/* 802B6B38 002B2798 40 82 00 28 */ bne lbl_802B6B60
/* 802B6B3C 002B279C 88 1F 00 0F */ lbz r0, 0xf(r31)
/* 802B6B40 002B27A0 28 00 00 04 */ cmplwi r0, 4
/* 802B6B44 002B27A4 40 82 00 1C */ bne lbl_802B6B60
/* 802B6B48 002B27A8 88 1F 00 10 */ lbz r0, 0x10(r31)
/* 802B6B4C 002B27AC 28 00 00 04 */ cmplwi r0, 4
/* 802B6B50 002B27B0 40 82 00 10 */ bne lbl_802B6B60
/* 802B6B54 002B27B4 4B FB 7C 31 */ bl OSRestoreInterrupts
/* 802B6B58 002B27B8 38 00 00 00 */ li r0, 0
/* 802B6B5C 002B27BC 48 00 00 0C */ b lbl_802B6B68
lbl_802B6B60:
/* 802B6B60 002B27C0 4B FB 7C 25 */ bl OSRestoreInterrupts
/* 802B6B64 002B27C4 38 00 00 01 */ li r0, 1
lbl_802B6B68:
/* 802B6B68 002B27C8 2C 00 00 00 */ cmpwi r0, 0
/* 802B6B6C 002B27CC 40 82 00 88 */ bne lbl_802B6BF4
/* 802B6B70 002B27D0 4B FB 7B ED */ bl OSDisableInterrupts
/* 802B6B74 002B27D4 7C 1C 00 D0 */ neg r0, r28
/* 802B6B78 002B27D8 38 A0 00 01 */ li r5, 1
/* 802B6B7C 002B27DC 7C 04 E3 78 */ or r4, r0, r28
/* 802B6B80 002B27E0 7C 7E 1B 78 */ mr r30, r3
/* 802B6B84 002B27E4 38 00 00 00 */ li r0, 0
/* 802B6B88 002B27E8 98 BF 00 0C */ stb r5, 0xc(r31)
/* 802B6B8C 002B27EC 54 84 0F FE */ srwi r4, r4, 0x1f
/* 802B6B90 002B27F0 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B6B94 002B27F4 9B 7F 06 E8 */ stb r27, 0x6e8(r31)
/* 802B6B98 002B27F8 9B 5F 06 E9 */ stb r26, 0x6e9(r31)
/* 802B6B9C 002B27FC 98 9F 06 E7 */ stb r4, 0x6e7(r31)
/* 802B6BA0 002B2800 98 1F 06 E6 */ stb r0, 0x6e6(r31)
/* 802B6BA4 002B2804 4B FB 2B 81 */ bl OSCreateAlarm
/* 802B6BA8 002B2808 4B FB BC 11 */ bl OSGetTime
/* 802B6BAC 002B280C 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802B6BB0 002B2810 3D 20 80 2B */ lis r9, SyncHandler0@ha
/* 802B6BB4 002B2814 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802B6BB8 002B2818 3C C0 10 62 */ lis r6, 0x10624DD3@ha
/* 802B6BBC 002B281C 7C 65 1B 78 */ mr r5, r3
/* 802B6BC0 002B2820 39 29 5A A0 */ addi r9, r9, SyncHandler0@l
/* 802B6BC4 002B2824 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
/* 802B6BC8 002B2828 54 00 F0 BE */ srwi r0, r0, 2
/* 802B6BCC 002B282C 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802B6BD0 002B2830 7C 86 23 78 */ mr r6, r4
/* 802B6BD4 002B2834 38 7F 07 10 */ addi r3, r31, 0x710
/* 802B6BD8 002B2838 38 E0 00 00 */ li r7, 0
/* 802B6BDC 002B283C 54 00 D1 BE */ srwi r0, r0, 6
/* 802B6BE0 002B2840 1D 00 00 14 */ mulli r8, r0, 0x14
/* 802B6BE4 002B2844 4B FB 2E 11 */ bl OSSetPeriodicAlarm
/* 802B6BE8 002B2848 7F C3 F3 78 */ mr r3, r30
/* 802B6BEC 002B284C 4B FB 7B 99 */ bl OSRestoreInterrupts
/* 802B6BF0 002B2850 3B C0 00 01 */ li r30, 1
lbl_802B6BF4:
/* 802B6BF4 002B2854 39 61 00 20 */ addi r11, r1, 0x20
/* 802B6BF8 002B2858 7F C3 F3 78 */ mr r3, r30
/* 802B6BFC 002B285C 4B F1 05 75 */ bl _restgpr_26
/* 802B6C00 002B2860 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6C04 002B2864 7C 08 03 A6 */ mtlr r0
/* 802B6C08 002B2868 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6C0C 002B286C 4E 80 00 20 */ blr
.global WUDStartFastSyncSimple
WUDStartFastSyncSimple:
/* 802B6C10 002B2870 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6C14 002B2874 7C 08 02 A6 */ mflr r0
/* 802B6C18 002B2878 3C 60 80 44 */ lis r3, lbl_8043E47C@ha
/* 802B6C1C 002B287C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B6C20 002B2880 38 63 E4 7C */ addi r3, r3, lbl_8043E47C@l
/* 802B6C24 002B2884 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B6C28 002B2888 93 C1 00 08 */ stw r30, 8(r1)
/* 802B6C2C 002B288C 4C C6 31 82 */ crclr 6
/* 802B6C30 002B2890 48 00 29 4D */ bl WUD_DEBUGPrint
/* 802B6C34 002B2894 38 60 00 01 */ li r3, 1
/* 802B6C38 002B2898 38 80 FF FF */ li r4, -1
/* 802B6C3C 002B289C 38 A0 00 01 */ li r5, 1
/* 802B6C40 002B28A0 4B FF FE 9D */ bl StartSyncDevice
/* 802B6C44 002B28A4 7C 7F 1B 78 */ mr r31, r3
/* 802B6C48 002B28A8 4B FB 7B 15 */ bl OSDisableInterrupts
/* 802B6C4C 002B28AC 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B6C50 002B28B0 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B6C54 002B28B4 83 C4 00 04 */ lwz r30, 4(r4)
/* 802B6C58 002B28B8 4B FB 7B 2D */ bl OSRestoreInterrupts
/* 802B6C5C 002B28BC 2C 1F 00 00 */ cmpwi r31, 0
/* 802B6C60 002B28C0 40 82 00 20 */ bne lbl_802B6C80
/* 802B6C64 002B28C4 2C 1E 00 00 */ cmpwi r30, 0
/* 802B6C68 002B28C8 41 82 00 18 */ beq lbl_802B6C80
/* 802B6C6C 002B28CC 7F CC F3 78 */ mr r12, r30
/* 802B6C70 002B28D0 38 60 FF FF */ li r3, -1
/* 802B6C74 002B28D4 38 80 00 00 */ li r4, 0
/* 802B6C78 002B28D8 7D 89 03 A6 */ mtctr r12
/* 802B6C7C 002B28DC 4E 80 04 21 */ bctrl
lbl_802B6C80:
/* 802B6C80 002B28E0 7F E3 FB 78 */ mr r3, r31
/* 802B6C84 002B28E4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6C88 002B28E8 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B6C8C 002B28EC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6C90 002B28F0 7C 08 03 A6 */ mtlr r0
/* 802B6C94 002B28F4 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6C98 002B28F8 4E 80 00 20 */ blr
.global WUDStopSyncSimple
WUDStopSyncSimple:
/* 802B6C9C 002B28FC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6CA0 002B2900 7C 08 02 A6 */ mflr r0
/* 802B6CA4 002B2904 3C 60 80 44 */ lis r3, lbl_8043E4AC@ha
/* 802B6CA8 002B2908 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6CAC 002B290C 38 63 E4 AC */ addi r3, r3, lbl_8043E4AC@l
/* 802B6CB0 002B2910 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B6CB4 002B2914 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B6CB8 002B2918 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B6CBC 002B291C 4C C6 31 82 */ crclr 6
/* 802B6CC0 002B2920 48 00 28 BD */ bl WUD_DEBUGPrint
/* 802B6CC4 002B2924 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B6CC8 002B2928 3B C0 00 00 */ li r30, 0
/* 802B6CCC 002B292C 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B6CD0 002B2930 4B FB 7A 8D */ bl OSDisableInterrupts
/* 802B6CD4 002B2934 88 1D 07 08 */ lbz r0, 0x708(r29)
/* 802B6CD8 002B2938 7C 7F 1B 78 */ mr r31, r3
/* 802B6CDC 002B293C 2C 00 00 03 */ cmpwi r0, 3
/* 802B6CE0 002B2940 40 82 00 2C */ bne lbl_802B6D0C
/* 802B6CE4 002B2944 88 1D 06 E8 */ lbz r0, 0x6e8(r29)
/* 802B6CE8 002B2948 7C 00 07 75 */ extsb. r0, r0
/* 802B6CEC 002B294C 41 82 00 1C */ beq lbl_802B6D08
/* 802B6CF0 002B2950 88 1D 00 0C */ lbz r0, 0xc(r29)
/* 802B6CF4 002B2954 28 00 00 03 */ cmplwi r0, 3
/* 802B6CF8 002B2958 40 82 00 08 */ bne lbl_802B6D00
/* 802B6CFC 002B295C 48 00 95 69 */ bl BTA_DmSearchCancel
lbl_802B6D00:
/* 802B6D00 002B2960 38 00 00 00 */ li r0, 0
/* 802B6D04 002B2964 98 1D 06 E8 */ stb r0, 0x6e8(r29)
lbl_802B6D08:
/* 802B6D08 002B2968 3B C0 00 01 */ li r30, 1
lbl_802B6D0C:
/* 802B6D0C 002B296C 7F E3 FB 78 */ mr r3, r31
/* 802B6D10 002B2970 4B FB 7A 75 */ bl OSRestoreInterrupts
/* 802B6D14 002B2974 7F C3 F3 78 */ mr r3, r30
/* 802B6D18 002B2978 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B6D1C 002B297C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B6D20 002B2980 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B6D24 002B2984 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6D28 002B2988 7C 08 03 A6 */ mtlr r0
/* 802B6D2C 002B298C 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6D30 002B2990 4E 80 00 20 */ blr
.global WUDSetDisableChannel
WUDSetDisableChannel:
/* 802B6D34 002B2994 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B6D38 002B2998 7C 08 02 A6 */ mflr r0
/* 802B6D3C 002B299C 3C 80 80 44 */ lis r4, lbl_8043E4E0@ha
/* 802B6D40 002B29A0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B6D44 002B29A4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B6D48 002B29A8 3B E0 00 00 */ li r31, 0
/* 802B6D4C 002B29AC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B6D50 002B29B0 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B6D54 002B29B4 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B6D58 002B29B8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B6D5C 002B29BC 7C 7D 1B 78 */ mr r29, r3
/* 802B6D60 002B29C0 38 64 E4 E0 */ addi r3, r4, lbl_8043E4E0@l
/* 802B6D64 002B29C4 4C C6 31 82 */ crclr 6
/* 802B6D68 002B29C8 48 00 28 15 */ bl WUD_DEBUGPrint
/* 802B6D6C 002B29CC 7F A0 07 75 */ extsb. r0, r29
/* 802B6D70 002B29D0 41 80 00 0C */ blt lbl_802B6D7C
/* 802B6D74 002B29D4 2C 00 00 0D */ cmpwi r0, 0xd
/* 802B6D78 002B29D8 40 81 00 0C */ ble lbl_802B6D84
lbl_802B6D7C:
/* 802B6D7C 002B29DC 38 60 00 00 */ li r3, 0
/* 802B6D80 002B29E0 48 00 00 84 */ b lbl_802B6E04
lbl_802B6D84:
/* 802B6D84 002B29E4 4B FB 79 D9 */ bl OSDisableInterrupts
/* 802B6D88 002B29E8 8B DE 07 08 */ lbz r30, 0x708(r30)
/* 802B6D8C 002B29EC 7F DE 07 74 */ extsb r30, r30
/* 802B6D90 002B29F0 4B FB 79 F5 */ bl OSRestoreInterrupts
/* 802B6D94 002B29F4 28 1E 00 03 */ cmplwi r30, 3
/* 802B6D98 002B29F8 40 82 00 68 */ bne lbl_802B6E00
/* 802B6D9C 002B29FC 7F A3 07 75 */ extsb. r3, r29
/* 802B6DA0 002B2A00 40 82 00 10 */ bne lbl_802B6DB0
/* 802B6DA4 002B2A04 38 00 00 FF */ li r0, 0xff
/* 802B6DA8 002B2A08 38 80 00 FF */ li r4, 0xff
/* 802B6DAC 002B2A0C 48 00 00 2C */ b lbl_802B6DD8
lbl_802B6DB0:
/* 802B6DB0 002B2A10 38 63 00 01 */ addi r3, r3, 1
/* 802B6DB4 002B2A14 54 60 10 3A */ slwi r0, r3, 2
/* 802B6DB8 002B2A18 7C 60 1A 14 */ add r3, r0, r3
/* 802B6DBC 002B2A1C 34 03 FF F2 */ addic. r0, r3, -14
/* 802B6DC0 002B2A20 38 83 00 0E */ addi r4, r3, 0xe
/* 802B6DC4 002B2A24 40 80 00 08 */ bge lbl_802B6DCC
/* 802B6DC8 002B2A28 38 00 00 00 */ li r0, 0
lbl_802B6DCC:
/* 802B6DCC 002B2A2C 2C 04 00 4E */ cmpwi r4, 0x4e
/* 802B6DD0 002B2A30 40 81 00 08 */ ble lbl_802B6DD8
/* 802B6DD4 002B2A34 38 80 00 4E */ li r4, 0x4e
lbl_802B6DD8:
/* 802B6DD8 002B2A38 54 03 06 3E */ clrlwi r3, r0, 0x18
/* 802B6DDC 002B2A3C 54 84 06 3E */ clrlwi r4, r4, 0x18
/* 802B6DE0 002B2A40 48 00 ED 0D */ bl BTM_SetAfhChannels
/* 802B6DE4 002B2A44 7C 60 1B 78 */ mr r0, r3
/* 802B6DE8 002B2A48 3C 60 80 44 */ lis r3, lbl_8043E4F8@ha
/* 802B6DEC 002B2A4C 38 63 E4 F8 */ addi r3, r3, lbl_8043E4F8@l
/* 802B6DF0 002B2A50 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B6DF4 002B2A54 4C C6 31 82 */ crclr 6
/* 802B6DF8 002B2A58 48 00 27 85 */ bl WUD_DEBUGPrint
/* 802B6DFC 002B2A5C 3B E0 00 01 */ li r31, 1
lbl_802B6E00:
/* 802B6E00 002B2A60 7F E3 FB 78 */ mr r3, r31
lbl_802B6E04:
/* 802B6E04 002B2A64 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B6E08 002B2A68 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B6E0C 002B2A6C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B6E10 002B2A70 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B6E14 002B2A74 7C 08 03 A6 */ mtlr r0
/* 802B6E18 002B2A78 38 21 00 20 */ addi r1, r1, 0x20
/* 802B6E1C 002B2A7C 4E 80 00 20 */ blr
.global WUDSetHidRecvCallback
WUDSetHidRecvCallback:
/* 802B6E20 002B2A80 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6E24 002B2A84 7C 08 02 A6 */ mflr r0
/* 802B6E28 002B2A88 3C 80 80 44 */ lis r4, lbl_8043E514@ha
/* 802B6E2C 002B2A8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B6E30 002B2A90 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B6E34 002B2A94 93 C1 00 08 */ stw r30, 8(r1)
/* 802B6E38 002B2A98 7C 7E 1B 78 */ mr r30, r3
/* 802B6E3C 002B2A9C 38 64 E5 14 */ addi r3, r4, lbl_8043E514@l
/* 802B6E40 002B2AA0 4C C6 31 82 */ crclr 6
/* 802B6E44 002B2AA4 48 00 27 39 */ bl WUD_DEBUGPrint
/* 802B6E48 002B2AA8 4B FB 79 15 */ bl OSDisableInterrupts
/* 802B6E4C 002B2AAC 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B6E50 002B2AB0 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B6E54 002B2AB4 83 E4 06 EC */ lwz r31, 0x6ec(r4)
/* 802B6E58 002B2AB8 93 C4 06 EC */ stw r30, 0x6ec(r4)
/* 802B6E5C 002B2ABC 4B FB 79 29 */ bl OSRestoreInterrupts
/* 802B6E60 002B2AC0 7F E3 FB 78 */ mr r3, r31
/* 802B6E64 002B2AC4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6E68 002B2AC8 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B6E6C 002B2ACC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6E70 002B2AD0 7C 08 03 A6 */ mtlr r0
/* 802B6E74 002B2AD4 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6E78 002B2AD8 4E 80 00 20 */ blr
.global WUDSetHidConnCallback
WUDSetHidConnCallback:
/* 802B6E7C 002B2ADC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6E80 002B2AE0 7C 08 02 A6 */ mflr r0
/* 802B6E84 002B2AE4 3C 80 80 44 */ lis r4, lbl_8043E530@ha
/* 802B6E88 002B2AE8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B6E8C 002B2AEC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B6E90 002B2AF0 93 C1 00 08 */ stw r30, 8(r1)
/* 802B6E94 002B2AF4 7C 7E 1B 78 */ mr r30, r3
/* 802B6E98 002B2AF8 38 64 E5 30 */ addi r3, r4, lbl_8043E530@l
/* 802B6E9C 002B2AFC 4C C6 31 82 */ crclr 6
/* 802B6EA0 002B2B00 48 00 26 DD */ bl WUD_DEBUGPrint
/* 802B6EA4 002B2B04 4B FB 78 B9 */ bl OSDisableInterrupts
/* 802B6EA8 002B2B08 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B6EAC 002B2B0C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B6EB0 002B2B10 83 E4 06 F0 */ lwz r31, 0x6f0(r4)
/* 802B6EB4 002B2B14 93 C4 06 F0 */ stw r30, 0x6f0(r4)
/* 802B6EB8 002B2B18 4B FB 78 CD */ bl OSRestoreInterrupts
/* 802B6EBC 002B2B1C 7F E3 FB 78 */ mr r3, r31
/* 802B6EC0 002B2B20 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6EC4 002B2B24 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B6EC8 002B2B28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6ECC 002B2B2C 7C 08 03 A6 */ mtlr r0
/* 802B6ED0 002B2B30 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6ED4 002B2B34 4E 80 00 20 */ blr
.global WUDSetVisibility
WUDSetVisibility:
/* 802B6ED8 002B2B38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B6EDC 002B2B3C 7C 08 02 A6 */ mflr r0
/* 802B6EE0 002B2B40 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B6EE4 002B2B44 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B6EE8 002B2B48 7C 9F 23 78 */ mr r31, r4
/* 802B6EEC 002B2B4C 93 C1 00 08 */ stw r30, 8(r1)
/* 802B6EF0 002B2B50 7C 7E 1B 78 */ mr r30, r3
/* 802B6EF4 002B2B54 4B FB 78 69 */ bl OSDisableInterrupts
/* 802B6EF8 002B2B58 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B6EFC 002B2B5C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B6F00 002B2B60 9B C4 06 EB */ stb r30, 0x6eb(r4)
/* 802B6F04 002B2B64 9B E4 06 EA */ stb r31, 0x6ea(r4)
/* 802B6F08 002B2B68 4B FB 78 7D */ bl OSRestoreInterrupts
/* 802B6F0C 002B2B6C 7F C3 F3 78 */ mr r3, r30
/* 802B6F10 002B2B70 7F E4 FB 78 */ mr r4, r31
/* 802B6F14 002B2B74 48 00 92 75 */ bl BTA_DmSetVisibility
/* 802B6F18 002B2B78 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B6F1C 002B2B7C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B6F20 002B2B80 83 C1 00 08 */ lwz r30, 8(r1)
/* 802B6F24 002B2B84 7C 08 03 A6 */ mtlr r0
/* 802B6F28 002B2B88 38 21 00 10 */ addi r1, r1, 0x10
/* 802B6F2C 002B2B8C 4E 80 00 20 */ blr
reset_again_cb:
/* 802B6F30 002B2B90 48 00 04 80 */ b WUDiInitSub
remove_patch_cb:
/* 802B6F34 002B2B94 94 21 FE F0 */ stwu r1, -0x110(r1)
/* 802B6F38 002B2B98 7C 08 02 A6 */ mflr r0
/* 802B6F3C 002B2B9C 2C 03 00 00 */ cmpwi r3, 0
/* 802B6F40 002B2BA0 90 01 01 14 */ stw r0, 0x114(r1)
/* 802B6F44 002B2BA4 40 82 00 14 */ bne lbl_802B6F58
/* 802B6F48 002B2BA8 3C 60 80 2B */ lis r3, reset_again_cb@ha
/* 802B6F4C 002B2BAC 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
/* 802B6F50 002B2BB0 48 00 EA 3D */ bl BTM_DeviceReset
/* 802B6F54 002B2BB4 48 00 01 48 */ b lbl_802B709C
lbl_802B6F58:
/* 802B6F58 002B2BB8 80 6D AE BC */ lwz r3, lbl_8064017C-_SDA_BASE_(r13)
/* 802B6F5C 002B2BBC 38 00 00 FB */ li r0, 0xfb
/* 802B6F60 002B2BC0 28 03 00 FB */ cmplwi r3, 0xfb
/* 802B6F64 002B2BC4 40 80 00 08 */ bge lbl_802B6F6C
/* 802B6F68 002B2BC8 7C 60 1B 78 */ mr r0, r3
lbl_802B6F6C:
/* 802B6F6C 002B2BCC 80 AD AE B4 */ lwz r5, lbl_80640174-_SDA_BASE_(r13)
/* 802B6F70 002B2BD0 54 07 06 3E */ clrlwi r7, r0, 0x18
/* 802B6F74 002B2BD4 2C 87 00 00 */ cmpwi cr1, r7, 0
/* 802B6F78 002B2BD8 38 C0 00 00 */ li r6, 0
/* 802B6F7C 002B2BDC 54 A4 C6 3E */ rlwinm r4, r5, 0x18, 0x18, 0x1f
/* 802B6F80 002B2BE0 54 A3 86 3E */ rlwinm r3, r5, 0x10, 0x18, 0x1f
/* 802B6F84 002B2BE4 54 A0 46 3E */ srwi r0, r5, 0x18
/* 802B6F88 002B2BE8 98 A1 00 08 */ stb r5, 8(r1)
/* 802B6F8C 002B2BEC 98 81 00 09 */ stb r4, 9(r1)
/* 802B6F90 002B2BF0 98 61 00 0A */ stb r3, 0xa(r1)
/* 802B6F94 002B2BF4 98 01 00 0B */ stb r0, 0xb(r1)
/* 802B6F98 002B2BF8 40 85 00 DC */ ble cr1, lbl_802B7074
/* 802B6F9C 002B2BFC 2C 07 00 08 */ cmpwi r7, 8
/* 802B6FA0 002B2C00 38 87 FF F8 */ addi r4, r7, -8
/* 802B6FA4 002B2C04 40 81 00 98 */ ble lbl_802B703C
/* 802B6FA8 002B2C08 38 A0 00 00 */ li r5, 0
/* 802B6FAC 002B2C0C 41 84 00 18 */ blt cr1, lbl_802B6FC4
/* 802B6FB0 002B2C10 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
/* 802B6FB4 002B2C14 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
/* 802B6FB8 002B2C18 7C 07 00 00 */ cmpw r7, r0
/* 802B6FBC 002B2C1C 41 81 00 08 */ bgt lbl_802B6FC4
/* 802B6FC0 002B2C20 38 A0 00 01 */ li r5, 1
lbl_802B6FC4:
/* 802B6FC4 002B2C24 2C 05 00 00 */ cmpwi r5, 0
/* 802B6FC8 002B2C28 41 82 00 74 */ beq lbl_802B703C
/* 802B6FCC 002B2C2C 38 04 00 07 */ addi r0, r4, 7
/* 802B6FD0 002B2C30 3C A0 80 44 */ lis r5, lbl_8043E54C@ha
/* 802B6FD4 002B2C34 54 00 E8 FE */ srwi r0, r0, 3
/* 802B6FD8 002B2C38 39 01 00 08 */ addi r8, r1, 8
/* 802B6FDC 002B2C3C 38 A5 E5 4C */ addi r5, r5, lbl_8043E54C@l
/* 802B6FE0 002B2C40 7C 09 03 A6 */ mtctr r0
/* 802B6FE4 002B2C44 2C 04 00 00 */ cmpwi r4, 0
/* 802B6FE8 002B2C48 40 81 00 54 */ ble lbl_802B703C
lbl_802B6FEC:
/* 802B6FEC 002B2C4C 7C 85 32 14 */ add r4, r5, r6
/* 802B6FF0 002B2C50 38 C6 00 08 */ addi r6, r6, 8
/* 802B6FF4 002B2C54 88 64 00 08 */ lbz r3, 8(r4)
/* 802B6FF8 002B2C58 88 04 00 09 */ lbz r0, 9(r4)
/* 802B6FFC 002B2C5C 98 68 00 04 */ stb r3, 4(r8)
/* 802B7000 002B2C60 88 64 00 0A */ lbz r3, 0xa(r4)
/* 802B7004 002B2C64 98 08 00 05 */ stb r0, 5(r8)
/* 802B7008 002B2C68 88 04 00 0B */ lbz r0, 0xb(r4)
/* 802B700C 002B2C6C 98 68 00 06 */ stb r3, 6(r8)
/* 802B7010 002B2C70 88 64 00 0C */ lbz r3, 0xc(r4)
/* 802B7014 002B2C74 98 08 00 07 */ stb r0, 7(r8)
/* 802B7018 002B2C78 88 04 00 0D */ lbz r0, 0xd(r4)
/* 802B701C 002B2C7C 98 68 00 08 */ stb r3, 8(r8)
/* 802B7020 002B2C80 88 64 00 0E */ lbz r3, 0xe(r4)
/* 802B7024 002B2C84 98 08 00 09 */ stb r0, 9(r8)
/* 802B7028 002B2C88 88 04 00 0F */ lbz r0, 0xf(r4)
/* 802B702C 002B2C8C 98 68 00 0A */ stb r3, 0xa(r8)
/* 802B7030 002B2C90 98 08 00 0B */ stb r0, 0xb(r8)
/* 802B7034 002B2C94 39 08 00 08 */ addi r8, r8, 8
/* 802B7038 002B2C98 42 00 FF B4 */ bdnz lbl_802B6FEC
lbl_802B703C:
/* 802B703C 002B2C9C 38 A1 00 08 */ addi r5, r1, 8
/* 802B7040 002B2CA0 3C 80 80 44 */ lis r4, lbl_8043E54C@ha
/* 802B7044 002B2CA4 7C 06 38 50 */ subf r0, r6, r7
/* 802B7048 002B2CA8 7C A5 32 14 */ add r5, r5, r6
/* 802B704C 002B2CAC 38 84 E5 4C */ addi r4, r4, lbl_8043E54C@l
/* 802B7050 002B2CB0 7C 09 03 A6 */ mtctr r0
/* 802B7054 002B2CB4 7C 06 38 00 */ cmpw r6, r7
/* 802B7058 002B2CB8 40 80 00 1C */ bge lbl_802B7074
lbl_802B705C:
/* 802B705C 002B2CBC 7C 64 32 14 */ add r3, r4, r6
/* 802B7060 002B2CC0 38 C6 00 01 */ addi r6, r6, 1
/* 802B7064 002B2CC4 88 03 00 08 */ lbz r0, 8(r3)
/* 802B7068 002B2CC8 98 05 00 04 */ stb r0, 4(r5)
/* 802B706C 002B2CCC 38 A5 00 01 */ addi r5, r5, 1
/* 802B7070 002B2CD0 42 00 FF EC */ bdnz lbl_802B705C
lbl_802B7074:
/* 802B7074 002B2CD4 3C 60 00 01 */ lis r3, 0x0000FC4C@ha
/* 802B7078 002B2CD8 38 07 00 04 */ addi r0, r7, 4
/* 802B707C 002B2CDC 38 63 FC 4C */ addi r3, r3, 0x0000FC4C@l
/* 802B7080 002B2CE0 3C C0 80 2B */ lis r6, write_patch_cb@ha
/* 802B7084 002B2CE4 90 ED AE B8 */ stw r7, lbl_80640178-_SDA_BASE_(r13)
/* 802B7088 002B2CE8 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 802B708C 002B2CEC 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B7090 002B2CF0 38 A1 00 08 */ addi r5, r1, 8
/* 802B7094 002B2CF4 38 C6 70 AC */ addi r6, r6, write_patch_cb@l
/* 802B7098 002B2CF8 48 00 F8 F1 */ bl BTM_VendorSpecificCommand
lbl_802B709C:
/* 802B709C 002B2CFC 80 01 01 14 */ lwz r0, 0x114(r1)
/* 802B70A0 002B2D00 7C 08 03 A6 */ mtlr r0
/* 802B70A4 002B2D04 38 21 01 10 */ addi r1, r1, 0x110
/* 802B70A8 002B2D08 4E 80 00 20 */ blr
write_patch_cb:
/* 802B70AC 002B2D0C 94 21 FD F0 */ stwu r1, -0x210(r1)
/* 802B70B0 002B2D10 7C 08 02 A6 */ mflr r0
/* 802B70B4 002B2D14 2C 03 00 00 */ cmpwi r3, 0
/* 802B70B8 002B2D18 90 01 02 14 */ stw r0, 0x214(r1)
/* 802B70BC 002B2D1C 93 E1 02 0C */ stw r31, 0x20c(r1)
/* 802B70C0 002B2D20 93 C1 02 08 */ stw r30, 0x208(r1)
/* 802B70C4 002B2D24 41 82 01 F4 */ beq lbl_802B72B8
/* 802B70C8 002B2D28 80 8D AE B8 */ lwz r4, lbl_80640178-_SDA_BASE_(r13)
/* 802B70CC 002B2D2C 80 0D AE BC */ lwz r0, lbl_8064017C-_SDA_BASE_(r13)
/* 802B70D0 002B2D30 7C 00 20 40 */ cmplw r0, r4
/* 802B70D4 002B2D34 40 82 00 80 */ bne lbl_802B7154
/* 802B70D8 002B2D38 3C 60 80 44 */ lis r3, lbl_8043E608@ha
/* 802B70DC 002B2D3C 38 80 00 00 */ li r4, 0
/* 802B70E0 002B2D40 88 63 E6 08 */ lbz r3, lbl_8043E608@l(r3)
/* 802B70E4 002B2D44 38 00 00 13 */ li r0, 0x13
/* 802B70E8 002B2D48 98 8D AE B1 */ stb r4, lbl_80640171-_SDA_BASE_(r13)
/* 802B70EC 002B2D4C 2C 03 00 13 */ cmpwi r3, 0x13
/* 802B70F0 002B2D50 98 6D AE B2 */ stb r3, lbl_80640172-_SDA_BASE_(r13)
/* 802B70F4 002B2D54 40 80 00 08 */ bge lbl_802B70FC
/* 802B70F8 002B2D58 7C 60 1B 78 */ mr r0, r3
lbl_802B70FC:
/* 802B70FC 002B2D5C 54 1F 06 3E */ clrlwi r31, r0, 0x18
/* 802B7100 002B2D60 3C 80 80 44 */ lis r4, lbl_8043E608@ha
/* 802B7104 002B2D64 1F DF 00 0D */ mulli r30, r31, 0xd
/* 802B7108 002B2D68 98 01 01 08 */ stb r0, 0x108(r1)
/* 802B710C 002B2D6C 38 84 E6 08 */ addi r4, r4, lbl_8043E608@l
/* 802B7110 002B2D70 38 61 01 09 */ addi r3, r1, 0x109
/* 802B7114 002B2D74 7F C5 F3 78 */ mr r5, r30
/* 802B7118 002B2D78 38 84 00 01 */ addi r4, r4, 1
/* 802B711C 002B2D7C 4B D4 CE E5 */ bl memcpy
/* 802B7120 002B2D80 88 8D AE B1 */ lbz r4, lbl_80640171-_SDA_BASE_(r13)
/* 802B7124 002B2D84 3C 60 00 01 */ lis r3, 0x0000FC4F@ha
/* 802B7128 002B2D88 38 63 FC 4F */ addi r3, r3, 0x0000FC4F@l
/* 802B712C 002B2D8C 3C C0 80 2B */ lis r6, install_patch_cb@ha
/* 802B7130 002B2D90 7C 84 FA 14 */ add r4, r4, r31
/* 802B7134 002B2D94 38 1E 00 01 */ addi r0, r30, 1
/* 802B7138 002B2D98 98 8D AE B1 */ stb r4, lbl_80640171-_SDA_BASE_(r13)
/* 802B713C 002B2D9C 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 802B7140 002B2DA0 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B7144 002B2DA4 38 A1 01 08 */ addi r5, r1, 0x108
/* 802B7148 002B2DA8 38 C6 72 DC */ addi r6, r6, install_patch_cb@l
/* 802B714C 002B2DAC 48 00 F8 3D */ bl BTM_VendorSpecificCommand
/* 802B7150 002B2DB0 48 00 01 74 */ b lbl_802B72C4
lbl_802B7154:
/* 802B7154 002B2DB4 7C 04 00 50 */ subf r0, r4, r0
/* 802B7158 002B2DB8 38 60 00 FB */ li r3, 0xfb
/* 802B715C 002B2DBC 28 00 00 FB */ cmplwi r0, 0xfb
/* 802B7160 002B2DC0 40 80 00 08 */ bge lbl_802B7168
/* 802B7164 002B2DC4 7C 03 03 78 */ mr r3, r0
lbl_802B7168:
/* 802B7168 002B2DC8 80 0D AE B4 */ lwz r0, lbl_80640174-_SDA_BASE_(r13)
/* 802B716C 002B2DCC 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 802B7170 002B2DD0 2C 83 00 00 */ cmpwi cr1, r3, 0
/* 802B7174 002B2DD4 38 C0 00 00 */ li r6, 0
/* 802B7178 002B2DD8 7C 00 22 14 */ add r0, r0, r4
/* 802B717C 002B2DDC 54 05 C6 3E */ rlwinm r5, r0, 0x18, 0x18, 0x1f
/* 802B7180 002B2DE0 98 01 00 08 */ stb r0, 8(r1)
/* 802B7184 002B2DE4 54 04 86 3E */ rlwinm r4, r0, 0x10, 0x18, 0x1f
/* 802B7188 002B2DE8 54 00 46 3E */ srwi r0, r0, 0x18
/* 802B718C 002B2DEC 98 A1 00 09 */ stb r5, 9(r1)
/* 802B7190 002B2DF0 98 81 00 0A */ stb r4, 0xa(r1)
/* 802B7194 002B2DF4 98 01 00 0B */ stb r0, 0xb(r1)
/* 802B7198 002B2DF8 40 85 00 EC */ ble cr1, lbl_802B7284
/* 802B719C 002B2DFC 2C 03 00 08 */ cmpwi r3, 8
/* 802B71A0 002B2E00 38 E3 FF F8 */ addi r7, r3, -8
/* 802B71A4 002B2E04 40 81 00 A0 */ ble lbl_802B7244
/* 802B71A8 002B2E08 38 A0 00 00 */ li r5, 0
/* 802B71AC 002B2E0C 41 84 00 18 */ blt cr1, lbl_802B71C4
/* 802B71B0 002B2E10 3C 80 80 00 */ lis r4, 0x7FFFFFFE@ha
/* 802B71B4 002B2E14 38 04 FF FE */ addi r0, r4, 0x7FFFFFFE@l
/* 802B71B8 002B2E18 7C 03 00 00 */ cmpw r3, r0
/* 802B71BC 002B2E1C 41 81 00 08 */ bgt lbl_802B71C4
/* 802B71C0 002B2E20 38 A0 00 01 */ li r5, 1
lbl_802B71C4:
/* 802B71C4 002B2E24 2C 05 00 00 */ cmpwi r5, 0
/* 802B71C8 002B2E28 41 82 00 7C */ beq lbl_802B7244
/* 802B71CC 002B2E2C 38 07 00 07 */ addi r0, r7, 7
/* 802B71D0 002B2E30 3C 80 80 44 */ lis r4, lbl_8043E54C@ha
/* 802B71D4 002B2E34 80 AD AE B8 */ lwz r5, lbl_80640178-_SDA_BASE_(r13)
/* 802B71D8 002B2E38 38 84 E5 4C */ addi r4, r4, lbl_8043E54C@l
/* 802B71DC 002B2E3C 54 00 E8 FE */ srwi r0, r0, 3
/* 802B71E0 002B2E40 39 01 00 08 */ addi r8, r1, 8
/* 802B71E4 002B2E44 7D 24 2A 14 */ add r9, r4, r5
/* 802B71E8 002B2E48 7C 09 03 A6 */ mtctr r0
/* 802B71EC 002B2E4C 2C 07 00 00 */ cmpwi r7, 0
/* 802B71F0 002B2E50 40 81 00 54 */ ble lbl_802B7244
lbl_802B71F4:
/* 802B71F4 002B2E54 7C A9 32 14 */ add r5, r9, r6
/* 802B71F8 002B2E58 38 C6 00 08 */ addi r6, r6, 8
/* 802B71FC 002B2E5C 88 85 00 08 */ lbz r4, 8(r5)
/* 802B7200 002B2E60 88 05 00 09 */ lbz r0, 9(r5)
/* 802B7204 002B2E64 98 88 00 04 */ stb r4, 4(r8)
/* 802B7208 002B2E68 88 85 00 0A */ lbz r4, 0xa(r5)
/* 802B720C 002B2E6C 98 08 00 05 */ stb r0, 5(r8)
/* 802B7210 002B2E70 88 05 00 0B */ lbz r0, 0xb(r5)
/* 802B7214 002B2E74 98 88 00 06 */ stb r4, 6(r8)
/* 802B7218 002B2E78 88 85 00 0C */ lbz r4, 0xc(r5)
/* 802B721C 002B2E7C 98 08 00 07 */ stb r0, 7(r8)
/* 802B7220 002B2E80 88 05 00 0D */ lbz r0, 0xd(r5)
/* 802B7224 002B2E84 98 88 00 08 */ stb r4, 8(r8)
/* 802B7228 002B2E88 88 85 00 0E */ lbz r4, 0xe(r5)
/* 802B722C 002B2E8C 98 08 00 09 */ stb r0, 9(r8)
/* 802B7230 002B2E90 88 05 00 0F */ lbz r0, 0xf(r5)
/* 802B7234 002B2E94 98 88 00 0A */ stb r4, 0xa(r8)
/* 802B7238 002B2E98 98 08 00 0B */ stb r0, 0xb(r8)
/* 802B723C 002B2E9C 39 08 00 08 */ addi r8, r8, 8
/* 802B7240 002B2EA0 42 00 FF B4 */ bdnz lbl_802B71F4
lbl_802B7244:
/* 802B7244 002B2EA4 3C 80 80 44 */ lis r4, lbl_8043E54C@ha
/* 802B7248 002B2EA8 80 AD AE B8 */ lwz r5, lbl_80640178-_SDA_BASE_(r13)
/* 802B724C 002B2EAC 38 E1 00 08 */ addi r7, r1, 8
/* 802B7250 002B2EB0 7C 06 18 50 */ subf r0, r6, r3
/* 802B7254 002B2EB4 38 84 E5 4C */ addi r4, r4, lbl_8043E54C@l
/* 802B7258 002B2EB8 7C E7 32 14 */ add r7, r7, r6
/* 802B725C 002B2EBC 7C A4 2A 14 */ add r5, r4, r5
/* 802B7260 002B2EC0 7C 09 03 A6 */ mtctr r0
/* 802B7264 002B2EC4 7C 06 18 00 */ cmpw r6, r3
/* 802B7268 002B2EC8 40 80 00 1C */ bge lbl_802B7284
lbl_802B726C:
/* 802B726C 002B2ECC 7C 85 32 14 */ add r4, r5, r6
/* 802B7270 002B2ED0 38 C6 00 01 */ addi r6, r6, 1
/* 802B7274 002B2ED4 88 04 00 08 */ lbz r0, 8(r4)
/* 802B7278 002B2ED8 98 07 00 04 */ stb r0, 4(r7)
/* 802B727C 002B2EDC 38 E7 00 01 */ addi r7, r7, 1
/* 802B7280 002B2EE0 42 00 FF EC */ bdnz lbl_802B726C
lbl_802B7284:
/* 802B7284 002B2EE4 80 AD AE B8 */ lwz r5, lbl_80640178-_SDA_BASE_(r13)
/* 802B7288 002B2EE8 3C 80 00 01 */ lis r4, 0x0000FC4C@ha
/* 802B728C 002B2EEC 38 03 00 04 */ addi r0, r3, 4
/* 802B7290 002B2EF0 3C C0 80 2B */ lis r6, write_patch_cb@ha
/* 802B7294 002B2EF4 7C 65 1A 14 */ add r3, r5, r3
/* 802B7298 002B2EF8 38 84 FC 4C */ addi r4, r4, 0x0000FC4C@l
/* 802B729C 002B2EFC 90 6D AE B8 */ stw r3, lbl_80640178-_SDA_BASE_(r13)
/* 802B72A0 002B2F00 54 83 04 3E */ clrlwi r3, r4, 0x10
/* 802B72A4 002B2F04 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B72A8 002B2F08 38 A1 00 08 */ addi r5, r1, 8
/* 802B72AC 002B2F0C 38 C6 70 AC */ addi r6, r6, write_patch_cb@l
/* 802B72B0 002B2F10 48 00 F6 D9 */ bl BTM_VendorSpecificCommand
/* 802B72B4 002B2F14 48 00 00 10 */ b lbl_802B72C4
lbl_802B72B8:
/* 802B72B8 002B2F18 3C 60 80 2B */ lis r3, reset_again_cb@ha
/* 802B72BC 002B2F1C 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
/* 802B72C0 002B2F20 48 00 E6 CD */ bl BTM_DeviceReset
lbl_802B72C4:
/* 802B72C4 002B2F24 80 01 02 14 */ lwz r0, 0x214(r1)
/* 802B72C8 002B2F28 83 E1 02 0C */ lwz r31, 0x20c(r1)
/* 802B72CC 002B2F2C 83 C1 02 08 */ lwz r30, 0x208(r1)
/* 802B72D0 002B2F30 7C 08 03 A6 */ mtlr r0
/* 802B72D4 002B2F34 38 21 02 10 */ addi r1, r1, 0x210
/* 802B72D8 002B2F38 4E 80 00 20 */ blr
install_patch_cb:
/* 802B72DC 002B2F3C 94 21 FE F0 */ stwu r1, -0x110(r1)
/* 802B72E0 002B2F40 7C 08 02 A6 */ mflr r0
/* 802B72E4 002B2F44 2C 03 00 00 */ cmpwi r3, 0
/* 802B72E8 002B2F48 90 01 01 14 */ stw r0, 0x114(r1)
/* 802B72EC 002B2F4C 93 E1 01 0C */ stw r31, 0x10c(r1)
/* 802B72F0 002B2F50 93 C1 01 08 */ stw r30, 0x108(r1)
/* 802B72F4 002B2F54 41 82 00 98 */ beq lbl_802B738C
/* 802B72F8 002B2F58 88 AD AE B1 */ lbz r5, lbl_80640171-_SDA_BASE_(r13)
/* 802B72FC 002B2F5C 88 0D AE B2 */ lbz r0, lbl_80640172-_SDA_BASE_(r13)
/* 802B7300 002B2F60 7C 00 28 40 */ cmplw r0, r5
/* 802B7304 002B2F64 40 82 00 14 */ bne lbl_802B7318
/* 802B7308 002B2F68 3C 60 80 2B */ lis r3, reset_again_cb@ha
/* 802B730C 002B2F6C 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
/* 802B7310 002B2F70 48 00 E6 7D */ bl BTM_DeviceReset
/* 802B7314 002B2F74 48 00 00 84 */ b lbl_802B7398
lbl_802B7318:
/* 802B7318 002B2F78 7C 65 00 50 */ subf r3, r5, r0
/* 802B731C 002B2F7C 38 00 00 13 */ li r0, 0x13
/* 802B7320 002B2F80 2C 03 00 13 */ cmpwi r3, 0x13
/* 802B7324 002B2F84 40 80 00 08 */ bge lbl_802B732C
/* 802B7328 002B2F88 7C 60 1B 78 */ mr r0, r3
lbl_802B732C:
/* 802B732C 002B2F8C 54 1F 06 3E */ clrlwi r31, r0, 0x18
/* 802B7330 002B2F90 98 01 00 08 */ stb r0, 8(r1)
/* 802B7334 002B2F94 3C 80 80 44 */ lis r4, lbl_8043E608@ha
/* 802B7338 002B2F98 38 61 00 09 */ addi r3, r1, 9
/* 802B733C 002B2F9C 1C 05 00 0D */ mulli r0, r5, 0xd
/* 802B7340 002B2FA0 38 84 E6 08 */ addi r4, r4, lbl_8043E608@l
/* 802B7344 002B2FA4 1F DF 00 0D */ mulli r30, r31, 0xd
/* 802B7348 002B2FA8 7C 84 02 14 */ add r4, r4, r0
/* 802B734C 002B2FAC 7F C5 F3 78 */ mr r5, r30
/* 802B7350 002B2FB0 38 84 00 01 */ addi r4, r4, 1
/* 802B7354 002B2FB4 4B D4 CC AD */ bl memcpy
/* 802B7358 002B2FB8 88 8D AE B1 */ lbz r4, lbl_80640171-_SDA_BASE_(r13)
/* 802B735C 002B2FBC 3C 60 00 01 */ lis r3, 0x0000FC4F@ha
/* 802B7360 002B2FC0 38 63 FC 4F */ addi r3, r3, 0x0000FC4F@l
/* 802B7364 002B2FC4 3C C0 80 2B */ lis r6, install_patch_cb@ha
/* 802B7368 002B2FC8 7C 84 FA 14 */ add r4, r4, r31
/* 802B736C 002B2FCC 38 1E 00 01 */ addi r0, r30, 1
/* 802B7370 002B2FD0 98 8D AE B1 */ stb r4, lbl_80640171-_SDA_BASE_(r13)
/* 802B7374 002B2FD4 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 802B7378 002B2FD8 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B737C 002B2FDC 38 A1 00 08 */ addi r5, r1, 8
/* 802B7380 002B2FE0 38 C6 72 DC */ addi r6, r6, install_patch_cb@l
/* 802B7384 002B2FE4 48 00 F6 05 */ bl BTM_VendorSpecificCommand
/* 802B7388 002B2FE8 48 00 00 10 */ b lbl_802B7398
lbl_802B738C:
/* 802B738C 002B2FEC 3C 60 80 2B */ lis r3, reset_again_cb@ha
/* 802B7390 002B2FF0 38 63 6F 30 */ addi r3, r3, reset_again_cb@l
/* 802B7394 002B2FF4 48 00 E5 F9 */ bl BTM_DeviceReset
lbl_802B7398:
/* 802B7398 002B2FF8 80 01 01 14 */ lwz r0, 0x114(r1)
/* 802B739C 002B2FFC 83 E1 01 0C */ lwz r31, 0x10c(r1)
/* 802B73A0 002B3000 83 C1 01 08 */ lwz r30, 0x108(r1)
/* 802B73A4 002B3004 7C 08 03 A6 */ mtlr r0
/* 802B73A8 002B3008 38 21 01 10 */ addi r1, r1, 0x110
/* 802B73AC 002B300C 4E 80 00 20 */ blr
.global WUDiInitSub
WUDiInitSub:
/* 802B73B0 002B3010 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B73B4 002B3014 7C 08 02 A6 */ mflr r0
/* 802B73B8 002B3018 3C 60 80 44 */ lis r3, lbl_8043E664@ha
/* 802B73BC 002B301C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B73C0 002B3020 38 63 E6 64 */ addi r3, r3, lbl_8043E664@l
/* 802B73C4 002B3024 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B73C8 002B3028 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B73CC 002B302C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B73D0 002B3030 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B73D4 002B3034 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B73D8 002B3038 93 81 00 10 */ stw r28, 0x10(r1)
/* 802B73DC 002B303C 89 22 A4 30 */ lbz r9, lbl_80642A30-_SDA2_BASE_(r2)
/* 802B73E0 002B3040 89 02 A4 31 */ lbz r8, lbl_80642A31-_SDA2_BASE_(r2)
/* 802B73E4 002B3044 88 E2 A4 32 */ lbz r7, lbl_80642A32-_SDA2_BASE_(r2)
/* 802B73E8 002B3048 88 C2 A4 33 */ lbz r6, lbl_80642A33-_SDA2_BASE_(r2)
/* 802B73EC 002B304C 88 A2 A4 34 */ lbz r5, lbl_80642A34-_SDA2_BASE_(r2)
/* 802B73F0 002B3050 88 82 A4 35 */ lbz r4, lbl_80642A35-_SDA2_BASE_(r2)
/* 802B73F4 002B3054 88 02 A4 36 */ lbz r0, lbl_80642A36-_SDA2_BASE_(r2)
/* 802B73F8 002B3058 99 21 00 0C */ stb r9, 0xc(r1)
/* 802B73FC 002B305C 99 01 00 0D */ stb r8, 0xd(r1)
/* 802B7400 002B3060 98 E1 00 0E */ stb r7, 0xe(r1)
/* 802B7404 002B3064 98 C1 00 0F */ stb r6, 0xf(r1)
/* 802B7408 002B3068 98 A1 00 08 */ stb r5, 8(r1)
/* 802B740C 002B306C 98 81 00 09 */ stb r4, 9(r1)
/* 802B7410 002B3070 98 01 00 0A */ stb r0, 0xa(r1)
/* 802B7414 002B3074 4C C6 31 82 */ crclr 6
/* 802B7418 002B3078 48 00 21 65 */ bl WUD_DEBUGPrint
/* 802B741C 002B307C 38 61 00 0C */ addi r3, r1, 0xc
/* 802B7420 002B3080 48 00 8D 05 */ bl BTA_DmSetDeviceName
/* 802B7424 002B3084 38 61 00 08 */ addi r3, r1, 8
/* 802B7428 002B3088 48 00 F4 A9 */ bl BTM_SetDeviceClass
/* 802B742C 002B308C 3C 60 80 2C */ lis r3, WUDVendorSpecificCallback@ha
/* 802B7430 002B3090 38 63 87 80 */ addi r3, r3, WUDVendorSpecificCallback@l
/* 802B7434 002B3094 48 00 F6 BD */ bl BTM_RegisterForVSEvents
/* 802B7438 002B3098 3C 60 80 2C */ lis r3, WUDDeviceStatusCallback@ha
/* 802B743C 002B309C 38 63 8A B8 */ addi r3, r3, WUDDeviceStatusCallback@l
/* 802B7440 002B30A0 48 00 F5 31 */ bl BTM_RegisterForDeviceStatusNotif
/* 802B7444 002B30A4 3C A0 80 2C */ lis r5, WUDPowerManagerCallback@ha
/* 802B7448 002B30A8 38 9D 07 0A */ addi r4, r29, 0x70a
/* 802B744C 002B30AC 38 A5 8D F4 */ addi r5, r5, WUDPowerManagerCallback@l
/* 802B7450 002B30B0 38 60 00 03 */ li r3, 3
/* 802B7454 002B30B4 48 01 19 99 */ bl BTM_PmRegister
/* 802B7458 002B30B8 3C 60 00 01 */ lis r3, 0x00008000@ha
/* 802B745C 002B30BC 38 03 80 00 */ addi r0, r3, 0x00008000@l
/* 802B7460 002B30C0 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 802B7464 002B30C4 48 00 F7 5D */ bl BTM_WritePageTimeout
/* 802B7468 002B30C8 38 60 00 05 */ li r3, 5
/* 802B746C 002B30CC 48 00 CA 19 */ bl BTM_SetDefaultLinkPolicy
/* 802B7470 002B30D0 38 60 06 40 */ li r3, 0x640
/* 802B7474 002B30D4 48 00 CD DD */ bl BTM_SetDefaultLinkSuperTout
/* 802B7478 002B30D8 7F BF EB 78 */ mr r31, r29
/* 802B747C 002B30DC 3B DD 01 24 */ addi r30, r29, 0x124
/* 802B7480 002B30E0 3B 80 00 00 */ li r28, 0
lbl_802B7484:
/* 802B7484 002B30E4 88 1F 01 3D */ lbz r0, 0x13d(r31)
/* 802B7488 002B30E8 28 00 00 01 */ cmplwi r0, 1
/* 802B748C 002B30EC 40 82 00 0C */ bne lbl_802B7498
/* 802B7490 002B30F0 7F C3 F3 78 */ mr r3, r30
/* 802B7494 002B30F4 48 00 00 75 */ bl WUDiRegisterDevice
lbl_802B7498:
/* 802B7498 002B30F8 3B 9C 00 01 */ addi r28, r28, 1
/* 802B749C 002B30FC 3B DE 00 60 */ addi r30, r30, 0x60
/* 802B74A0 002B3100 2C 1C 00 0A */ cmpwi r28, 0xa
/* 802B74A4 002B3104 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B74A8 002B3108 41 80 FF DC */ blt lbl_802B7484
/* 802B74AC 002B310C 4B FB 72 B1 */ bl OSDisableInterrupts
/* 802B74B0 002B3110 38 00 00 03 */ li r0, 3
/* 802B74B4 002B3114 98 1D 07 08 */ stb r0, 0x708(r29)
/* 802B74B8 002B3118 4B FB 72 CD */ bl OSRestoreInterrupts
/* 802B74BC 002B311C 4B FB 72 A1 */ bl OSDisableInterrupts
/* 802B74C0 002B3120 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B74C4 002B3124 38 A0 00 00 */ li r5, 0
/* 802B74C8 002B3128 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B74CC 002B312C 38 00 00 01 */ li r0, 1
/* 802B74D0 002B3130 98 A4 06 EB */ stb r5, 0x6eb(r4)
/* 802B74D4 002B3134 98 04 06 EA */ stb r0, 0x6ea(r4)
/* 802B74D8 002B3138 4B FB 72 AD */ bl OSRestoreInterrupts
/* 802B74DC 002B313C 38 60 00 00 */ li r3, 0
/* 802B74E0 002B3140 38 80 00 01 */ li r4, 1
/* 802B74E4 002B3144 48 00 8C A5 */ bl BTA_DmSetVisibility
/* 802B74E8 002B3148 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B74EC 002B314C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B74F0 002B3150 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B74F4 002B3154 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B74F8 002B3158 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802B74FC 002B315C 7C 08 03 A6 */ mtlr r0
/* 802B7500 002B3160 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7504 002B3164 4E 80 00 20 */ blr
.global WUDiRegisterDevice
WUDiRegisterDevice:
/* 802B7508 002B3168 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B750C 002B316C 7C 08 02 A6 */ mflr r0
/* 802B7510 002B3170 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B7514 002B3174 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802B7518 002B3178 3F E0 80 44 */ lis r31, lbl_8043E048@ha
/* 802B751C 002B317C 3B FF E0 48 */ addi r31, r31, lbl_8043E048@l
/* 802B7520 002B3180 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802B7524 002B3184 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B7528 002B3188 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B752C 002B318C 93 A1 00 24 */ stw r29, 0x24(r1)
/* 802B7530 002B3190 48 00 02 35 */ bl WUDiGetDevInfo
/* 802B7534 002B3194 7C 7D 1B 78 */ mr r29, r3
/* 802B7538 002B3198 38 83 00 46 */ addi r4, r3, 0x46
/* 802B753C 002B319C 38 A0 00 00 */ li r5, 0
/* 802B7540 002B31A0 38 C0 00 00 */ li r6, 0
/* 802B7544 002B31A4 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7548 002B31A8 48 00 8D E1 */ bl BTA_DmAddDevice
/* 802B754C 002B31AC 7C 60 1B 78 */ mr r0, r3
/* 802B7550 002B31B0 38 7F 06 78 */ addi r3, r31, 0x678
/* 802B7554 002B31B4 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B7558 002B31B8 4C C6 31 82 */ crclr 6
/* 802B755C 002B31BC 48 00 20 21 */ bl WUD_DEBUGPrint
/* 802B7560 002B31C0 7F A3 EB 78 */ mr r3, r29
/* 802B7564 002B31C4 38 9F 01 A0 */ addi r4, r31, 0x1a0
/* 802B7568 002B31C8 38 A0 00 10 */ li r5, 0x10
/* 802B756C 002B31CC 4B F1 2E 2D */ bl memcmp
/* 802B7570 002B31D0 2C 03 00 00 */ cmpwi r3, 0
/* 802B7574 002B31D4 40 82 00 48 */ bne lbl_802B75BC
/* 802B7578 002B31D8 38 1F 00 00 */ addi r0, r31, 0
/* 802B757C 002B31DC 38 60 00 D9 */ li r3, 0xd9
/* 802B7580 002B31E0 B0 61 00 10 */ sth r3, 0x10(r1)
/* 802B7584 002B31E4 38 7F 06 90 */ addi r3, r31, 0x690
/* 802B7588 002B31E8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B758C 002B31EC 4C C6 31 82 */ crclr 6
/* 802B7590 002B31F0 48 00 1F ED */ bl WUD_DEBUGPrint
/* 802B7594 002B31F4 80 81 00 10 */ lwz r4, 0x10(r1)
/* 802B7598 002B31F8 38 7D 00 40 */ addi r3, r29, 0x40
/* 802B759C 002B31FC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B75A0 002B3200 38 E1 00 08 */ addi r7, r1, 8
/* 802B75A4 002B3204 90 81 00 08 */ stw r4, 8(r1)
/* 802B75A8 002B3208 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B75AC 002B320C A0 9D 00 5E */ lhz r4, 0x5e(r29)
/* 802B75B0 002B3210 88 BD 00 57 */ lbz r5, 0x57(r29)
/* 802B75B4 002B3214 88 DD 00 58 */ lbz r6, 0x58(r29)
/* 802B75B8 002B3218 48 00 B4 0D */ bl BTA_HhAddDev
lbl_802B75BC:
/* 802B75BC 002B321C 4B FB 71 A1 */ bl OSDisableInterrupts
/* 802B75C0 002B3220 88 1D 00 5B */ lbz r0, 0x5b(r29)
/* 802B75C4 002B3224 2C 00 00 00 */ cmpwi r0, 0
/* 802B75C8 002B3228 41 82 00 1C */ beq lbl_802B75E4
/* 802B75CC 002B322C 28 00 00 04 */ cmplwi r0, 4
/* 802B75D0 002B3230 41 82 00 14 */ beq lbl_802B75E4
/* 802B75D4 002B3234 28 00 00 02 */ cmplwi r0, 2
/* 802B75D8 002B3238 41 82 00 0C */ beq lbl_802B75E4
/* 802B75DC 002B323C 28 00 00 05 */ cmplwi r0, 5
/* 802B75E0 002B3240 40 82 00 14 */ bne lbl_802B75F4
lbl_802B75E4:
/* 802B75E4 002B3244 88 9E 00 12 */ lbz r4, 0x12(r30)
/* 802B75E8 002B3248 38 04 00 01 */ addi r0, r4, 1
/* 802B75EC 002B324C 98 1E 00 12 */ stb r0, 0x12(r30)
/* 802B75F0 002B3250 48 00 00 10 */ b lbl_802B7600
lbl_802B75F4:
/* 802B75F4 002B3254 88 9E 00 13 */ lbz r4, 0x13(r30)
/* 802B75F8 002B3258 38 04 00 01 */ addi r0, r4, 1
/* 802B75FC 002B325C 98 1E 00 13 */ stb r0, 0x13(r30)
lbl_802B7600:
/* 802B7600 002B3260 4B FB 71 85 */ bl OSRestoreInterrupts
/* 802B7604 002B3264 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B7608 002B3268 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802B760C 002B326C 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802B7610 002B3270 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802B7614 002B3274 7C 08 03 A6 */ mtlr r0
/* 802B7618 002B3278 38 21 00 30 */ addi r1, r1, 0x30
/* 802B761C 002B327C 4E 80 00 20 */ blr
.global WUDiRemoveDevice
WUDiRemoveDevice:
/* 802B7620 002B3280 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7624 002B3284 7C 08 02 A6 */ mflr r0
/* 802B7628 002B3288 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B762C 002B328C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B7630 002B3290 3F E0 80 44 */ lis r31, lbl_8043E048@ha
/* 802B7634 002B3294 3B FF E0 48 */ addi r31, r31, lbl_8043E048@l
/* 802B7638 002B3298 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B763C 002B329C 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B7640 002B32A0 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B7644 002B32A4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B7648 002B32A8 7C 7D 1B 78 */ mr r29, r3
/* 802B764C 002B32AC 93 81 00 10 */ stw r28, 0x10(r1)
/* 802B7650 002B32B0 4B FB 71 0D */ bl OSDisableInterrupts
/* 802B7654 002B32B4 7C 7C 1B 78 */ mr r28, r3
/* 802B7658 002B32B8 38 7F 06 A0 */ addi r3, r31, 0x6a0
/* 802B765C 002B32BC 4C C6 31 82 */ crclr 6
/* 802B7660 002B32C0 48 00 1F 1D */ bl WUD_DEBUGPrint
/* 802B7664 002B32C4 7F A3 EB 78 */ mr r3, r29
/* 802B7668 002B32C8 48 00 00 FD */ bl WUDiGetDevInfo
/* 802B766C 002B32CC 2C 03 00 00 */ cmpwi r3, 0
/* 802B7670 002B32D0 7C 7D 1B 78 */ mr r29, r3
/* 802B7674 002B32D4 41 82 00 C8 */ beq lbl_802B773C
/* 802B7678 002B32D8 88 9D 00 56 */ lbz r4, 0x56(r29)
/* 802B767C 002B32DC 38 7F 06 B8 */ addi r3, r31, 0x6b8
/* 802B7680 002B32E0 88 BD 00 40 */ lbz r5, 0x40(r29)
/* 802B7684 002B32E4 88 DD 00 41 */ lbz r6, 0x41(r29)
/* 802B7688 002B32E8 88 FD 00 42 */ lbz r7, 0x42(r29)
/* 802B768C 002B32EC 89 1D 00 43 */ lbz r8, 0x43(r29)
/* 802B7690 002B32F0 89 3D 00 44 */ lbz r9, 0x44(r29)
/* 802B7694 002B32F4 89 5D 00 45 */ lbz r10, 0x45(r29)
/* 802B7698 002B32F8 4C C6 31 82 */ crclr 6
/* 802B769C 002B32FC 48 00 1E E1 */ bl WUD_DEBUGPrint
/* 802B76A0 002B3300 38 7F 06 F0 */ addi r3, r31, 0x6f0
/* 802B76A4 002B3304 4C C6 31 82 */ crclr 6
/* 802B76A8 002B3308 48 00 1E D5 */ bl WUD_DEBUGPrint
/* 802B76AC 002B330C 7F A3 EB 78 */ mr r3, r29
/* 802B76B0 002B3310 38 9F 01 A0 */ addi r4, r31, 0x1a0
/* 802B76B4 002B3314 38 A0 00 10 */ li r5, 0x10
/* 802B76B8 002B3318 4B F1 2C E1 */ bl memcmp
/* 802B76BC 002B331C 2C 03 00 00 */ cmpwi r3, 0
/* 802B76C0 002B3320 40 82 00 28 */ bne lbl_802B76E8
/* 802B76C4 002B3324 38 7F 07 14 */ addi r3, r31, 0x714
/* 802B76C8 002B3328 4C C6 31 82 */ crclr 6
/* 802B76CC 002B332C 48 00 1E B1 */ bl WUD_DEBUGPrint
/* 802B76D0 002B3330 88 9D 00 56 */ lbz r4, 0x56(r29)
/* 802B76D4 002B3334 38 7F 07 28 */ addi r3, r31, 0x728
/* 802B76D8 002B3338 4C C6 31 82 */ crclr 6
/* 802B76DC 002B333C 48 00 1E A1 */ bl WUD_DEBUGPrint
/* 802B76E0 002B3340 88 7D 00 56 */ lbz r3, 0x56(r29)
/* 802B76E4 002B3344 48 00 B3 89 */ bl BTA_HhRemoveDev
lbl_802B76E8:
/* 802B76E8 002B3348 38 7D 00 40 */ addi r3, r29, 0x40
/* 802B76EC 002B334C 48 00 8D 2D */ bl BTA_DmRemoveDevice
/* 802B76F0 002B3350 7C 60 1B 78 */ mr r0, r3
/* 802B76F4 002B3354 38 7F 07 38 */ addi r3, r31, 0x738
/* 802B76F8 002B3358 54 04 06 3E */ clrlwi r4, r0, 0x18
/* 802B76FC 002B335C 4C C6 31 82 */ crclr 6
/* 802B7700 002B3360 48 00 1E 7D */ bl WUD_DEBUGPrint
/* 802B7704 002B3364 88 1D 00 5B */ lbz r0, 0x5b(r29)
/* 802B7708 002B3368 2C 00 00 00 */ cmpwi r0, 0
/* 802B770C 002B336C 40 82 00 14 */ bne lbl_802B7720
/* 802B7710 002B3370 88 7E 00 12 */ lbz r3, 0x12(r30)
/* 802B7714 002B3374 38 03 FF FF */ addi r0, r3, -1
/* 802B7718 002B3378 98 1E 00 12 */ stb r0, 0x12(r30)
/* 802B771C 002B337C 48 00 00 10 */ b lbl_802B772C
lbl_802B7720:
/* 802B7720 002B3380 88 7E 00 13 */ lbz r3, 0x13(r30)
/* 802B7724 002B3384 38 03 FF FF */ addi r0, r3, -1
/* 802B7728 002B3388 98 1E 00 13 */ stb r0, 0x13(r30)
lbl_802B772C:
/* 802B772C 002B338C 7F A3 EB 78 */ mr r3, r29
/* 802B7730 002B3390 38 80 00 00 */ li r4, 0
/* 802B7734 002B3394 38 A0 00 60 */ li r5, 0x60
/* 802B7738 002B3398 4B D4 C9 CD */ bl memset
lbl_802B773C:
/* 802B773C 002B339C 7F 83 E3 78 */ mr r3, r28
/* 802B7740 002B33A0 4B FB 70 45 */ bl OSRestoreInterrupts
/* 802B7744 002B33A4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B7748 002B33A8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B774C 002B33AC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B7750 002B33B0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B7754 002B33B4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802B7758 002B33B8 7C 08 03 A6 */ mtlr r0
/* 802B775C 002B33BC 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7760 002B33C0 4E 80 00 20 */ blr
.global WUDiGetDevInfo
WUDiGetDevInfo:
/* 802B7764 002B33C4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7768 002B33C8 7C 08 02 A6 */ mflr r0
/* 802B776C 002B33CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B7770 002B33D0 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7774 002B33D4 4B F0 F9 B1 */ bl _savegpr_26
/* 802B7778 002B33D8 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B777C 002B33DC 7C 7A 1B 78 */ mr r26, r3
/* 802B7780 002B33E0 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B7784 002B33E4 3B 80 00 00 */ li r28, 0
/* 802B7788 002B33E8 4B FB 6F D5 */ bl OSDisableInterrupts
/* 802B778C 002B33EC 7C 7B 1B 78 */ mr r27, r3
/* 802B7790 002B33F0 3B FD 01 24 */ addi r31, r29, 0x124
/* 802B7794 002B33F4 3B C0 00 00 */ li r30, 0
lbl_802B7798:
/* 802B7798 002B33F8 7F E3 FB 78 */ mr r3, r31
/* 802B779C 002B33FC 7F 44 D3 78 */ mr r4, r26
/* 802B77A0 002B3400 38 A0 00 06 */ li r5, 6
/* 802B77A4 002B3404 4B F1 2B F5 */ bl memcmp
/* 802B77A8 002B3408 2C 03 00 00 */ cmpwi r3, 0
/* 802B77AC 002B340C 40 82 00 14 */ bne lbl_802B77C0
/* 802B77B0 002B3410 1C 1E 00 60 */ mulli r0, r30, 0x60
/* 802B77B4 002B3414 7C 7D 02 14 */ add r3, r29, r0
/* 802B77B8 002B3418 3B 83 00 E4 */ addi r28, r3, 0xe4
/* 802B77BC 002B341C 48 00 00 14 */ b lbl_802B77D0
lbl_802B77C0:
/* 802B77C0 002B3420 3B DE 00 01 */ addi r30, r30, 1
/* 802B77C4 002B3424 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B77C8 002B3428 2C 1E 00 0A */ cmpwi r30, 0xa
/* 802B77CC 002B342C 41 80 FF CC */ blt lbl_802B7798
lbl_802B77D0:
/* 802B77D0 002B3430 2C 1C 00 00 */ cmpwi r28, 0
/* 802B77D4 002B3434 40 82 00 44 */ bne lbl_802B7818
/* 802B77D8 002B3438 3B FD 04 E4 */ addi r31, r29, 0x4e4
/* 802B77DC 002B343C 3B C0 00 00 */ li r30, 0
lbl_802B77E0:
/* 802B77E0 002B3440 7F E3 FB 78 */ mr r3, r31
/* 802B77E4 002B3444 7F 44 D3 78 */ mr r4, r26
/* 802B77E8 002B3448 38 A0 00 06 */ li r5, 6
/* 802B77EC 002B344C 4B F1 2B AD */ bl memcmp
/* 802B77F0 002B3450 2C 03 00 00 */ cmpwi r3, 0
/* 802B77F4 002B3454 40 82 00 14 */ bne lbl_802B7808
/* 802B77F8 002B3458 1C 1E 00 60 */ mulli r0, r30, 0x60
/* 802B77FC 002B345C 7C 7D 02 14 */ add r3, r29, r0
/* 802B7800 002B3460 3B 83 04 A4 */ addi r28, r3, 0x4a4
/* 802B7804 002B3464 48 00 00 14 */ b lbl_802B7818
lbl_802B7808:
/* 802B7808 002B3468 3B DE 00 01 */ addi r30, r30, 1
/* 802B780C 002B346C 3B FF 00 60 */ addi r31, r31, 0x60
/* 802B7810 002B3470 2C 1E 00 06 */ cmpwi r30, 6
/* 802B7814 002B3474 41 80 FF CC */ blt lbl_802B77E0
lbl_802B7818:
/* 802B7818 002B3478 7F 63 DB 78 */ mr r3, r27
/* 802B781C 002B347C 4B FB 6F 69 */ bl OSRestoreInterrupts
/* 802B7820 002B3480 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7824 002B3484 7F 83 E3 78 */ mr r3, r28
/* 802B7828 002B3488 4B F0 F9 49 */ bl _restgpr_26
/* 802B782C 002B348C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B7830 002B3490 7C 08 03 A6 */ mtlr r0
/* 802B7834 002B3494 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7838 002B3498 4E 80 00 20 */ blr
.global WUDiGetNewDevInfo
WUDiGetNewDevInfo:
/* 802B783C 002B349C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7840 002B34A0 7C 08 02 A6 */ mflr r0
/* 802B7844 002B34A4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B7848 002B34A8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B784C 002B34AC 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B7850 002B34B0 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B7854 002B34B4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B7858 002B34B8 3B C0 00 00 */ li r30, 0
/* 802B785C 002B34BC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B7860 002B34C0 93 81 00 10 */ stw r28, 0x10(r1)
/* 802B7864 002B34C4 4B FB 6E F9 */ bl OSDisableInterrupts
/* 802B7868 002B34C8 88 1F 06 E9 */ lbz r0, 0x6e9(r31)
/* 802B786C 002B34CC 7C 7D 1B 78 */ mr r29, r3
/* 802B7870 002B34D0 2C 00 00 00 */ cmpwi r0, 0
/* 802B7874 002B34D4 40 82 00 54 */ bne lbl_802B78C8
/* 802B7878 002B34D8 38 00 00 0A */ li r0, 0xa
/* 802B787C 002B34DC 7F E3 FB 78 */ mr r3, r31
/* 802B7880 002B34E0 3B 80 00 00 */ li r28, 0
/* 802B7884 002B34E4 7C 09 03 A6 */ mtctr r0
lbl_802B7888:
/* 802B7888 002B34E8 88 03 01 3D */ lbz r0, 0x13d(r3)
/* 802B788C 002B34EC 2C 00 00 00 */ cmpwi r0, 0
/* 802B7890 002B34F0 40 82 00 28 */ bne lbl_802B78B8
/* 802B7894 002B34F4 3C 60 80 44 */ lis r3, lbl_8043E79C@ha
/* 802B7898 002B34F8 7F 84 E3 78 */ mr r4, r28
/* 802B789C 002B34FC 38 63 E7 9C */ addi r3, r3, lbl_8043E79C@l
/* 802B78A0 002B3500 4C C6 31 82 */ crclr 6
/* 802B78A4 002B3504 48 00 1C D9 */ bl WUD_DEBUGPrint
/* 802B78A8 002B3508 1C 1C 00 60 */ mulli r0, r28, 0x60
/* 802B78AC 002B350C 7C 7F 02 14 */ add r3, r31, r0
/* 802B78B0 002B3510 3B C3 00 E4 */ addi r30, r3, 0xe4
/* 802B78B4 002B3514 48 00 00 1C */ b lbl_802B78D0
lbl_802B78B8:
/* 802B78B8 002B3518 38 63 00 60 */ addi r3, r3, 0x60
/* 802B78BC 002B351C 3B 9C 00 01 */ addi r28, r28, 1
/* 802B78C0 002B3520 42 00 FF C8 */ bdnz lbl_802B7888
/* 802B78C4 002B3524 48 00 00 0C */ b lbl_802B78D0
lbl_802B78C8:
/* 802B78C8 002B3528 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 802B78CC 002B352C 83 C3 00 00 */ lwz r30, 0(r3)
lbl_802B78D0:
/* 802B78D0 002B3530 7F A3 EB 78 */ mr r3, r29
/* 802B78D4 002B3534 4B FB 6E B1 */ bl OSRestoreInterrupts
/* 802B78D8 002B3538 7F C3 F3 78 */ mr r3, r30
/* 802B78DC 002B353C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B78E0 002B3540 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B78E4 002B3544 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B78E8 002B3548 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802B78EC 002B354C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B78F0 002B3550 7C 08 03 A6 */ mtlr r0
/* 802B78F4 002B3554 38 21 00 20 */ addi r1, r1, 0x20
/* 802B78F8 002B3558 4E 80 00 20 */ blr
.global WUDiMoveTopSmpDevInfoPtr
WUDiMoveTopSmpDevInfoPtr:
/* 802B78FC 002B355C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7900 002B3560 7C 08 02 A6 */ mflr r0
/* 802B7904 002B3564 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B7908 002B3568 39 61 00 20 */ addi r11, r1, 0x20
/* 802B790C 002B356C 4B F0 F8 1D */ bl _savegpr_27
/* 802B7910 002B3570 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B7914 002B3574 7C 7B 1B 78 */ mr r27, r3
/* 802B7918 002B3578 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B791C 002B357C 4B FB 6E 41 */ bl OSDisableInterrupts
/* 802B7920 002B3580 7C 7D 1B 78 */ mr r29, r3
/* 802B7924 002B3584 7F DC F3 78 */ mr r28, r30
/* 802B7928 002B3588 3B E0 00 00 */ li r31, 0
lbl_802B792C:
/* 802B792C 002B358C 80 7C 00 1C */ lwz r3, 0x1c(r28)
/* 802B7930 002B3590 38 9B 00 40 */ addi r4, r27, 0x40
/* 802B7934 002B3594 38 A0 00 06 */ li r5, 6
/* 802B7938 002B3598 38 63 00 40 */ addi r3, r3, 0x40
/* 802B793C 002B359C 4B F1 2A 5D */ bl memcmp
/* 802B7940 002B35A0 2C 03 00 00 */ cmpwi r3, 0
/* 802B7944 002B35A4 40 82 00 A0 */ bne lbl_802B79E4
/* 802B7948 002B35A8 1F 9F 00 0C */ mulli r28, r31, 0xc
/* 802B794C 002B35AC 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 802B7950 002B35B0 38 A0 00 06 */ li r5, 6
/* 802B7954 002B35B4 80 63 00 00 */ lwz r3, 0(r3)
/* 802B7958 002B35B8 7C 9E E2 14 */ add r4, r30, r28
/* 802B795C 002B35BC 3B E4 00 1C */ addi r31, r4, 0x1c
/* 802B7960 002B35C0 80 84 00 1C */ lwz r4, 0x1c(r4)
/* 802B7964 002B35C4 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7968 002B35C8 38 84 00 40 */ addi r4, r4, 0x40
/* 802B796C 002B35CC 4B F1 2A 2D */ bl memcmp
/* 802B7970 002B35D0 2C 03 00 00 */ cmpwi r3, 0
/* 802B7974 002B35D4 41 82 00 80 */ beq lbl_802B79F4
/* 802B7978 002B35D8 7F 9E E2 14 */ add r28, r30, r28
/* 802B797C 002B35DC 38 A0 00 06 */ li r5, 6
/* 802B7980 002B35E0 80 1C 00 24 */ lwz r0, 0x24(r28)
/* 802B7984 002B35E4 80 7C 00 20 */ lwz r3, 0x20(r28)
/* 802B7988 002B35E8 90 03 00 08 */ stw r0, 8(r3)
/* 802B798C 002B35EC 80 9E 00 18 */ lwz r4, 0x18(r30)
/* 802B7990 002B35F0 80 7F 00 00 */ lwz r3, 0(r31)
/* 802B7994 002B35F4 80 C4 00 00 */ lwz r6, 0(r4)
/* 802B7998 002B35F8 38 83 00 40 */ addi r4, r3, 0x40
/* 802B799C 002B35FC 38 66 00 40 */ addi r3, r6, 0x40
/* 802B79A0 002B3600 4B F1 29 F9 */ bl memcmp
/* 802B79A4 002B3604 2C 03 00 00 */ cmpwi r3, 0
/* 802B79A8 002B3608 40 82 00 10 */ bne lbl_802B79B8
/* 802B79AC 002B360C 80 1C 00 20 */ lwz r0, 0x20(r28)
/* 802B79B0 002B3610 90 1E 00 18 */ stw r0, 0x18(r30)
/* 802B79B4 002B3614 48 00 00 10 */ b lbl_802B79C4
lbl_802B79B8:
/* 802B79B8 002B3618 80 1C 00 20 */ lwz r0, 0x20(r28)
/* 802B79BC 002B361C 80 7C 00 24 */ lwz r3, 0x24(r28)
/* 802B79C0 002B3620 90 03 00 04 */ stw r0, 4(r3)
lbl_802B79C4:
/* 802B79C4 002B3624 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 802B79C8 002B3628 38 00 00 00 */ li r0, 0
/* 802B79CC 002B362C 90 7C 00 24 */ stw r3, 0x24(r28)
/* 802B79D0 002B3630 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 802B79D4 002B3634 93 E3 00 04 */ stw r31, 4(r3)
/* 802B79D8 002B3638 93 FE 00 14 */ stw r31, 0x14(r30)
/* 802B79DC 002B363C 90 1C 00 20 */ stw r0, 0x20(r28)
/* 802B79E0 002B3640 48 00 00 14 */ b lbl_802B79F4
lbl_802B79E4:
/* 802B79E4 002B3644 3B FF 00 01 */ addi r31, r31, 1
/* 802B79E8 002B3648 3B 9C 00 0C */ addi r28, r28, 0xc
/* 802B79EC 002B364C 2C 1F 00 06 */ cmpwi r31, 6
/* 802B79F0 002B3650 41 80 FF 3C */ blt lbl_802B792C
lbl_802B79F4:
/* 802B79F4 002B3654 7F A3 EB 78 */ mr r3, r29
/* 802B79F8 002B3658 4B FB 6D 8D */ bl OSRestoreInterrupts
/* 802B79FC 002B365C 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7A00 002B3660 4B F0 F7 75 */ bl _restgpr_27
/* 802B7A04 002B3664 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B7A08 002B3668 7C 08 03 A6 */ mtlr r0
/* 802B7A0C 002B366C 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7A10 002B3670 4E 80 00 20 */ blr
.global WUDiMoveBottomSmpDevInfoPtr
WUDiMoveBottomSmpDevInfoPtr:
/* 802B7A14 002B3674 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7A18 002B3678 7C 08 02 A6 */ mflr r0
/* 802B7A1C 002B367C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B7A20 002B3680 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7A24 002B3684 4B F0 F7 05 */ bl _savegpr_27
/* 802B7A28 002B3688 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B7A2C 002B368C 7C 7B 1B 78 */ mr r27, r3
/* 802B7A30 002B3690 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B7A34 002B3694 4B FB 6D 29 */ bl OSDisableInterrupts
/* 802B7A38 002B3698 7C 7D 1B 78 */ mr r29, r3
/* 802B7A3C 002B369C 7F DC F3 78 */ mr r28, r30
/* 802B7A40 002B36A0 3B E0 00 00 */ li r31, 0
lbl_802B7A44:
/* 802B7A44 002B36A4 80 7C 00 1C */ lwz r3, 0x1c(r28)
/* 802B7A48 002B36A8 38 9B 00 40 */ addi r4, r27, 0x40
/* 802B7A4C 002B36AC 38 A0 00 06 */ li r5, 6
/* 802B7A50 002B36B0 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7A54 002B36B4 4B F1 29 45 */ bl memcmp
/* 802B7A58 002B36B8 2C 03 00 00 */ cmpwi r3, 0
/* 802B7A5C 002B36BC 40 82 00 A0 */ bne lbl_802B7AFC
/* 802B7A60 002B36C0 1F 9F 00 0C */ mulli r28, r31, 0xc
/* 802B7A64 002B36C4 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 802B7A68 002B36C8 38 A0 00 06 */ li r5, 6
/* 802B7A6C 002B36CC 80 63 00 00 */ lwz r3, 0(r3)
/* 802B7A70 002B36D0 7C 9E E2 14 */ add r4, r30, r28
/* 802B7A74 002B36D4 3B E4 00 1C */ addi r31, r4, 0x1c
/* 802B7A78 002B36D8 80 84 00 1C */ lwz r4, 0x1c(r4)
/* 802B7A7C 002B36DC 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7A80 002B36E0 38 84 00 40 */ addi r4, r4, 0x40
/* 802B7A84 002B36E4 4B F1 29 15 */ bl memcmp
/* 802B7A88 002B36E8 2C 03 00 00 */ cmpwi r3, 0
/* 802B7A8C 002B36EC 41 82 00 80 */ beq lbl_802B7B0C
/* 802B7A90 002B36F0 7F 9E E2 14 */ add r28, r30, r28
/* 802B7A94 002B36F4 38 A0 00 06 */ li r5, 6
/* 802B7A98 002B36F8 80 1C 00 20 */ lwz r0, 0x20(r28)
/* 802B7A9C 002B36FC 80 7C 00 24 */ lwz r3, 0x24(r28)
/* 802B7AA0 002B3700 90 03 00 04 */ stw r0, 4(r3)
/* 802B7AA4 002B3704 80 9E 00 14 */ lwz r4, 0x14(r30)
/* 802B7AA8 002B3708 80 7F 00 00 */ lwz r3, 0(r31)
/* 802B7AAC 002B370C 80 C4 00 00 */ lwz r6, 0(r4)
/* 802B7AB0 002B3710 38 83 00 40 */ addi r4, r3, 0x40
/* 802B7AB4 002B3714 38 66 00 40 */ addi r3, r6, 0x40
/* 802B7AB8 002B3718 4B F1 28 E1 */ bl memcmp
/* 802B7ABC 002B371C 2C 03 00 00 */ cmpwi r3, 0
/* 802B7AC0 002B3720 40 82 00 10 */ bne lbl_802B7AD0
/* 802B7AC4 002B3724 80 1C 00 24 */ lwz r0, 0x24(r28)
/* 802B7AC8 002B3728 90 1E 00 14 */ stw r0, 0x14(r30)
/* 802B7ACC 002B372C 48 00 00 10 */ b lbl_802B7ADC
lbl_802B7AD0:
/* 802B7AD0 002B3730 80 1C 00 24 */ lwz r0, 0x24(r28)
/* 802B7AD4 002B3734 80 7C 00 20 */ lwz r3, 0x20(r28)
/* 802B7AD8 002B3738 90 03 00 08 */ stw r0, 8(r3)
lbl_802B7ADC:
/* 802B7ADC 002B373C 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 802B7AE0 002B3740 38 00 00 00 */ li r0, 0
/* 802B7AE4 002B3744 90 7C 00 20 */ stw r3, 0x20(r28)
/* 802B7AE8 002B3748 80 7E 00 18 */ lwz r3, 0x18(r30)
/* 802B7AEC 002B374C 93 E3 00 08 */ stw r31, 8(r3)
/* 802B7AF0 002B3750 93 FE 00 18 */ stw r31, 0x18(r30)
/* 802B7AF4 002B3754 90 1C 00 24 */ stw r0, 0x24(r28)
/* 802B7AF8 002B3758 48 00 00 14 */ b lbl_802B7B0C
lbl_802B7AFC:
/* 802B7AFC 002B375C 3B FF 00 01 */ addi r31, r31, 1
/* 802B7B00 002B3760 3B 9C 00 0C */ addi r28, r28, 0xc
/* 802B7B04 002B3764 2C 1F 00 06 */ cmpwi r31, 6
/* 802B7B08 002B3768 41 80 FF 3C */ blt lbl_802B7A44
lbl_802B7B0C:
/* 802B7B0C 002B376C 7F A3 EB 78 */ mr r3, r29
/* 802B7B10 002B3770 4B FB 6C 75 */ bl OSRestoreInterrupts
/* 802B7B14 002B3774 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7B18 002B3778 4B F0 F6 5D */ bl _restgpr_27
/* 802B7B1C 002B377C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B7B20 002B3780 7C 08 03 A6 */ mtlr r0
/* 802B7B24 002B3784 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7B28 002B3788 4E 80 00 20 */ blr
.global WUDiMoveTopOfDisconnectedSmpDevice
WUDiMoveTopOfDisconnectedSmpDevice:
/* 802B7B2C 002B378C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B7B30 002B3790 7C 08 02 A6 */ mflr r0
/* 802B7B34 002B3794 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B7B38 002B3798 39 61 00 30 */ addi r11, r1, 0x30
/* 802B7B3C 002B379C 4B F0 F5 D9 */ bl _savegpr_22
/* 802B7B40 002B37A0 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B7B44 002B37A4 7C 79 1B 78 */ mr r25, r3
/* 802B7B48 002B37A8 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B7B4C 002B37AC 4B FB 6C 11 */ bl OSDisableInterrupts
/* 802B7B50 002B37B0 7C 7B 1B 78 */ mr r27, r3
/* 802B7B54 002B37B4 7F BF EB 78 */ mr r31, r29
/* 802B7B58 002B37B8 3B DD 00 1C */ addi r30, r29, 0x1c
/* 802B7B5C 002B37BC 3B 80 00 00 */ li r28, 0
lbl_802B7B60:
/* 802B7B60 002B37C0 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 802B7B64 002B37C4 38 99 00 40 */ addi r4, r25, 0x40
/* 802B7B68 002B37C8 38 A0 00 06 */ li r5, 6
/* 802B7B6C 002B37CC 3A E3 00 40 */ addi r23, r3, 0x40
/* 802B7B70 002B37D0 7E E3 BB 78 */ mr r3, r23
/* 802B7B74 002B37D4 4B F1 28 25 */ bl memcmp
/* 802B7B78 002B37D8 2C 03 00 00 */ cmpwi r3, 0
/* 802B7B7C 002B37DC 40 82 00 D4 */ bne lbl_802B7C50
/* 802B7B80 002B37E0 82 DD 00 14 */ lwz r22, 0x14(r29)
/* 802B7B84 002B37E4 7E DA B3 78 */ mr r26, r22
/* 802B7B88 002B37E8 48 00 00 C0 */ b lbl_802B7C48
lbl_802B7B8C:
/* 802B7B8C 002B37EC 83 1A 00 00 */ lwz r24, 0(r26)
/* 802B7B90 002B37F0 38 99 00 40 */ addi r4, r25, 0x40
/* 802B7B94 002B37F4 38 A0 00 06 */ li r5, 6
/* 802B7B98 002B37F8 38 78 00 40 */ addi r3, r24, 0x40
/* 802B7B9C 002B37FC 4B F1 27 FD */ bl memcmp
/* 802B7BA0 002B3800 2C 03 00 00 */ cmpwi r3, 0
/* 802B7BA4 002B3804 41 82 00 A0 */ beq lbl_802B7C44
/* 802B7BA8 002B3808 88 18 00 59 */ lbz r0, 0x59(r24)
/* 802B7BAC 002B380C 28 00 00 01 */ cmplwi r0, 1
/* 802B7BB0 002B3810 41 81 00 94 */ bgt lbl_802B7C44
/* 802B7BB4 002B3814 80 76 00 00 */ lwz r3, 0(r22)
/* 802B7BB8 002B3818 7E E4 BB 78 */ mr r4, r23
/* 802B7BBC 002B381C 38 A0 00 06 */ li r5, 6
/* 802B7BC0 002B3820 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7BC4 002B3824 4B F1 27 D5 */ bl memcmp
/* 802B7BC8 002B3828 2C 03 00 00 */ cmpwi r3, 0
/* 802B7BCC 002B382C 40 82 00 1C */ bne lbl_802B7BE8
/* 802B7BD0 002B3830 80 16 00 08 */ lwz r0, 8(r22)
/* 802B7BD4 002B3834 7C 1A 00 40 */ cmplw r26, r0
/* 802B7BD8 002B3838 41 82 00 78 */ beq lbl_802B7C50
/* 802B7BDC 002B383C 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 802B7BE0 002B3840 90 1D 00 14 */ stw r0, 0x14(r29)
/* 802B7BE4 002B3844 48 00 00 10 */ b lbl_802B7BF4
lbl_802B7BE8:
/* 802B7BE8 002B3848 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 802B7BEC 002B384C 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 802B7BF0 002B3850 90 03 00 08 */ stw r0, 8(r3)
lbl_802B7BF4:
/* 802B7BF4 002B3854 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 802B7BF8 002B3858 80 7F 00 24 */ lwz r3, 0x24(r31)
/* 802B7BFC 002B385C 90 03 00 04 */ stw r0, 4(r3)
/* 802B7C00 002B3860 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 802B7C04 002B3864 7C 1A 00 40 */ cmplw r26, r0
/* 802B7C08 002B3868 41 82 00 20 */ beq lbl_802B7C28
/* 802B7C0C 002B386C 80 1A 00 04 */ lwz r0, 4(r26)
/* 802B7C10 002B3870 90 1F 00 20 */ stw r0, 0x20(r31)
/* 802B7C14 002B3874 93 5F 00 24 */ stw r26, 0x24(r31)
/* 802B7C18 002B3878 80 7A 00 04 */ lwz r3, 4(r26)
/* 802B7C1C 002B387C 93 C3 00 08 */ stw r30, 8(r3)
/* 802B7C20 002B3880 93 DA 00 04 */ stw r30, 4(r26)
/* 802B7C24 002B3884 48 00 00 2C */ b lbl_802B7C50
lbl_802B7C28:
/* 802B7C28 002B3888 93 5F 00 20 */ stw r26, 0x20(r31)
/* 802B7C2C 002B388C 80 1A 00 08 */ lwz r0, 8(r26)
/* 802B7C30 002B3890 90 1F 00 24 */ stw r0, 0x24(r31)
/* 802B7C34 002B3894 80 7A 00 08 */ lwz r3, 8(r26)
/* 802B7C38 002B3898 93 C3 00 04 */ stw r30, 4(r3)
/* 802B7C3C 002B389C 93 DA 00 08 */ stw r30, 8(r26)
/* 802B7C40 002B38A0 48 00 00 10 */ b lbl_802B7C50
lbl_802B7C44:
/* 802B7C44 002B38A4 83 5A 00 08 */ lwz r26, 8(r26)
lbl_802B7C48:
/* 802B7C48 002B38A8 2C 1A 00 00 */ cmpwi r26, 0
/* 802B7C4C 002B38AC 40 82 FF 40 */ bne lbl_802B7B8C
lbl_802B7C50:
/* 802B7C50 002B38B0 3B 9C 00 01 */ addi r28, r28, 1
/* 802B7C54 002B38B4 3B DE 00 0C */ addi r30, r30, 0xc
/* 802B7C58 002B38B8 2C 1C 00 06 */ cmpwi r28, 6
/* 802B7C5C 002B38BC 3B FF 00 0C */ addi r31, r31, 0xc
/* 802B7C60 002B38C0 41 80 FF 00 */ blt lbl_802B7B60
/* 802B7C64 002B38C4 7F 63 DB 78 */ mr r3, r27
/* 802B7C68 002B38C8 4B FB 6B 1D */ bl OSRestoreInterrupts
/* 802B7C6C 002B38CC 39 61 00 30 */ addi r11, r1, 0x30
/* 802B7C70 002B38D0 4B F0 F4 F1 */ bl _restgpr_22
/* 802B7C74 002B38D4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B7C78 002B38D8 7C 08 03 A6 */ mtlr r0
/* 802B7C7C 002B38DC 38 21 00 30 */ addi r1, r1, 0x30
/* 802B7C80 002B38E0 4E 80 00 20 */ blr
.global WUDiMoveTopStdDevInfoPtr
WUDiMoveTopStdDevInfoPtr:
/* 802B7C84 002B38E4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7C88 002B38E8 7C 08 02 A6 */ mflr r0
/* 802B7C8C 002B38EC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B7C90 002B38F0 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7C94 002B38F4 4B F0 F4 95 */ bl _savegpr_27
/* 802B7C98 002B38F8 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B7C9C 002B38FC 7C 7B 1B 78 */ mr r27, r3
/* 802B7CA0 002B3900 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B7CA4 002B3904 4B FB 6A B9 */ bl OSDisableInterrupts
/* 802B7CA8 002B3908 7C 7D 1B 78 */ mr r29, r3
/* 802B7CAC 002B390C 7F DC F3 78 */ mr r28, r30
/* 802B7CB0 002B3910 3B E0 00 00 */ li r31, 0
lbl_802B7CB4:
/* 802B7CB4 002B3914 80 7C 00 6C */ lwz r3, 0x6c(r28)
/* 802B7CB8 002B3918 38 9B 00 40 */ addi r4, r27, 0x40
/* 802B7CBC 002B391C 38 A0 00 06 */ li r5, 6
/* 802B7CC0 002B3920 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7CC4 002B3924 4B F1 26 D5 */ bl memcmp
/* 802B7CC8 002B3928 2C 03 00 00 */ cmpwi r3, 0
/* 802B7CCC 002B392C 40 82 00 A0 */ bne lbl_802B7D6C
/* 802B7CD0 002B3930 1F 9F 00 0C */ mulli r28, r31, 0xc
/* 802B7CD4 002B3934 80 7E 00 64 */ lwz r3, 0x64(r30)
/* 802B7CD8 002B3938 38 A0 00 06 */ li r5, 6
/* 802B7CDC 002B393C 80 63 00 00 */ lwz r3, 0(r3)
/* 802B7CE0 002B3940 7C 9E E2 14 */ add r4, r30, r28
/* 802B7CE4 002B3944 3B E4 00 6C */ addi r31, r4, 0x6c
/* 802B7CE8 002B3948 80 84 00 6C */ lwz r4, 0x6c(r4)
/* 802B7CEC 002B394C 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7CF0 002B3950 38 84 00 40 */ addi r4, r4, 0x40
/* 802B7CF4 002B3954 4B F1 26 A5 */ bl memcmp
/* 802B7CF8 002B3958 2C 03 00 00 */ cmpwi r3, 0
/* 802B7CFC 002B395C 41 82 00 80 */ beq lbl_802B7D7C
/* 802B7D00 002B3960 7F 9E E2 14 */ add r28, r30, r28
/* 802B7D04 002B3964 38 A0 00 06 */ li r5, 6
/* 802B7D08 002B3968 80 1C 00 74 */ lwz r0, 0x74(r28)
/* 802B7D0C 002B396C 80 7C 00 70 */ lwz r3, 0x70(r28)
/* 802B7D10 002B3970 90 03 00 08 */ stw r0, 8(r3)
/* 802B7D14 002B3974 80 9E 00 68 */ lwz r4, 0x68(r30)
/* 802B7D18 002B3978 80 7F 00 00 */ lwz r3, 0(r31)
/* 802B7D1C 002B397C 80 C4 00 00 */ lwz r6, 0(r4)
/* 802B7D20 002B3980 38 83 00 40 */ addi r4, r3, 0x40
/* 802B7D24 002B3984 38 66 00 40 */ addi r3, r6, 0x40
/* 802B7D28 002B3988 4B F1 26 71 */ bl memcmp
/* 802B7D2C 002B398C 2C 03 00 00 */ cmpwi r3, 0
/* 802B7D30 002B3990 40 82 00 10 */ bne lbl_802B7D40
/* 802B7D34 002B3994 80 1C 00 70 */ lwz r0, 0x70(r28)
/* 802B7D38 002B3998 90 1E 00 68 */ stw r0, 0x68(r30)
/* 802B7D3C 002B399C 48 00 00 10 */ b lbl_802B7D4C
lbl_802B7D40:
/* 802B7D40 002B39A0 80 1C 00 70 */ lwz r0, 0x70(r28)
/* 802B7D44 002B39A4 80 7C 00 74 */ lwz r3, 0x74(r28)
/* 802B7D48 002B39A8 90 03 00 04 */ stw r0, 4(r3)
lbl_802B7D4C:
/* 802B7D4C 002B39AC 80 7E 00 64 */ lwz r3, 0x64(r30)
/* 802B7D50 002B39B0 38 00 00 00 */ li r0, 0
/* 802B7D54 002B39B4 90 7C 00 74 */ stw r3, 0x74(r28)
/* 802B7D58 002B39B8 80 7E 00 64 */ lwz r3, 0x64(r30)
/* 802B7D5C 002B39BC 93 E3 00 04 */ stw r31, 4(r3)
/* 802B7D60 002B39C0 93 FE 00 64 */ stw r31, 0x64(r30)
/* 802B7D64 002B39C4 90 1C 00 70 */ stw r0, 0x70(r28)
/* 802B7D68 002B39C8 48 00 00 14 */ b lbl_802B7D7C
lbl_802B7D6C:
/* 802B7D6C 002B39CC 3B FF 00 01 */ addi r31, r31, 1
/* 802B7D70 002B39D0 3B 9C 00 0C */ addi r28, r28, 0xc
/* 802B7D74 002B39D4 2C 1F 00 0A */ cmpwi r31, 0xa
/* 802B7D78 002B39D8 41 80 FF 3C */ blt lbl_802B7CB4
lbl_802B7D7C:
/* 802B7D7C 002B39DC 7F A3 EB 78 */ mr r3, r29
/* 802B7D80 002B39E0 4B FB 6A 05 */ bl OSRestoreInterrupts
/* 802B7D84 002B39E4 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7D88 002B39E8 4B F0 F3 ED */ bl _restgpr_27
/* 802B7D8C 002B39EC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B7D90 002B39F0 7C 08 03 A6 */ mtlr r0
/* 802B7D94 002B39F4 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7D98 002B39F8 4E 80 00 20 */ blr
.global WUDiMoveBottomStdDevInfoPtr
WUDiMoveBottomStdDevInfoPtr:
/* 802B7D9C 002B39FC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B7DA0 002B3A00 7C 08 02 A6 */ mflr r0
/* 802B7DA4 002B3A04 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B7DA8 002B3A08 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7DAC 002B3A0C 4B F0 F3 7D */ bl _savegpr_27
/* 802B7DB0 002B3A10 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B7DB4 002B3A14 7C 7B 1B 78 */ mr r27, r3
/* 802B7DB8 002B3A18 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B7DBC 002B3A1C 4B FB 69 A1 */ bl OSDisableInterrupts
/* 802B7DC0 002B3A20 7C 7D 1B 78 */ mr r29, r3
/* 802B7DC4 002B3A24 7F DC F3 78 */ mr r28, r30
/* 802B7DC8 002B3A28 3B E0 00 00 */ li r31, 0
lbl_802B7DCC:
/* 802B7DCC 002B3A2C 80 7C 00 6C */ lwz r3, 0x6c(r28)
/* 802B7DD0 002B3A30 38 9B 00 40 */ addi r4, r27, 0x40
/* 802B7DD4 002B3A34 38 A0 00 06 */ li r5, 6
/* 802B7DD8 002B3A38 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7DDC 002B3A3C 4B F1 25 BD */ bl memcmp
/* 802B7DE0 002B3A40 2C 03 00 00 */ cmpwi r3, 0
/* 802B7DE4 002B3A44 40 82 00 A0 */ bne lbl_802B7E84
/* 802B7DE8 002B3A48 1F 9F 00 0C */ mulli r28, r31, 0xc
/* 802B7DEC 002B3A4C 80 7E 00 68 */ lwz r3, 0x68(r30)
/* 802B7DF0 002B3A50 38 A0 00 06 */ li r5, 6
/* 802B7DF4 002B3A54 80 63 00 00 */ lwz r3, 0(r3)
/* 802B7DF8 002B3A58 7C 9E E2 14 */ add r4, r30, r28
/* 802B7DFC 002B3A5C 3B E4 00 6C */ addi r31, r4, 0x6c
/* 802B7E00 002B3A60 80 84 00 6C */ lwz r4, 0x6c(r4)
/* 802B7E04 002B3A64 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7E08 002B3A68 38 84 00 40 */ addi r4, r4, 0x40
/* 802B7E0C 002B3A6C 4B F1 25 8D */ bl memcmp
/* 802B7E10 002B3A70 2C 03 00 00 */ cmpwi r3, 0
/* 802B7E14 002B3A74 41 82 00 80 */ beq lbl_802B7E94
/* 802B7E18 002B3A78 7F 9E E2 14 */ add r28, r30, r28
/* 802B7E1C 002B3A7C 38 A0 00 06 */ li r5, 6
/* 802B7E20 002B3A80 80 1C 00 70 */ lwz r0, 0x70(r28)
/* 802B7E24 002B3A84 80 7C 00 74 */ lwz r3, 0x74(r28)
/* 802B7E28 002B3A88 90 03 00 04 */ stw r0, 4(r3)
/* 802B7E2C 002B3A8C 80 9E 00 64 */ lwz r4, 0x64(r30)
/* 802B7E30 002B3A90 80 7F 00 00 */ lwz r3, 0(r31)
/* 802B7E34 002B3A94 80 C4 00 00 */ lwz r6, 0(r4)
/* 802B7E38 002B3A98 38 83 00 40 */ addi r4, r3, 0x40
/* 802B7E3C 002B3A9C 38 66 00 40 */ addi r3, r6, 0x40
/* 802B7E40 002B3AA0 4B F1 25 59 */ bl memcmp
/* 802B7E44 002B3AA4 2C 03 00 00 */ cmpwi r3, 0
/* 802B7E48 002B3AA8 40 82 00 10 */ bne lbl_802B7E58
/* 802B7E4C 002B3AAC 80 1C 00 74 */ lwz r0, 0x74(r28)
/* 802B7E50 002B3AB0 90 1E 00 64 */ stw r0, 0x64(r30)
/* 802B7E54 002B3AB4 48 00 00 10 */ b lbl_802B7E64
lbl_802B7E58:
/* 802B7E58 002B3AB8 80 1C 00 74 */ lwz r0, 0x74(r28)
/* 802B7E5C 002B3ABC 80 7C 00 70 */ lwz r3, 0x70(r28)
/* 802B7E60 002B3AC0 90 03 00 08 */ stw r0, 8(r3)
lbl_802B7E64:
/* 802B7E64 002B3AC4 80 7E 00 68 */ lwz r3, 0x68(r30)
/* 802B7E68 002B3AC8 38 00 00 00 */ li r0, 0
/* 802B7E6C 002B3ACC 90 7C 00 70 */ stw r3, 0x70(r28)
/* 802B7E70 002B3AD0 80 7E 00 68 */ lwz r3, 0x68(r30)
/* 802B7E74 002B3AD4 93 E3 00 08 */ stw r31, 8(r3)
/* 802B7E78 002B3AD8 93 FE 00 68 */ stw r31, 0x68(r30)
/* 802B7E7C 002B3ADC 90 1C 00 74 */ stw r0, 0x74(r28)
/* 802B7E80 002B3AE0 48 00 00 14 */ b lbl_802B7E94
lbl_802B7E84:
/* 802B7E84 002B3AE4 3B FF 00 01 */ addi r31, r31, 1
/* 802B7E88 002B3AE8 3B 9C 00 0C */ addi r28, r28, 0xc
/* 802B7E8C 002B3AEC 2C 1F 00 0A */ cmpwi r31, 0xa
/* 802B7E90 002B3AF0 41 80 FF 3C */ blt lbl_802B7DCC
lbl_802B7E94:
/* 802B7E94 002B3AF4 7F A3 EB 78 */ mr r3, r29
/* 802B7E98 002B3AF8 4B FB 68 ED */ bl OSRestoreInterrupts
/* 802B7E9C 002B3AFC 39 61 00 20 */ addi r11, r1, 0x20
/* 802B7EA0 002B3B00 4B F0 F2 D5 */ bl _restgpr_27
/* 802B7EA4 002B3B04 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B7EA8 002B3B08 7C 08 03 A6 */ mtlr r0
/* 802B7EAC 002B3B0C 38 21 00 20 */ addi r1, r1, 0x20
/* 802B7EB0 002B3B10 4E 80 00 20 */ blr
.global WUDiMoveTopOfDisconnectedStdDevice
WUDiMoveTopOfDisconnectedStdDevice:
/* 802B7EB4 002B3B14 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B7EB8 002B3B18 7C 08 02 A6 */ mflr r0
/* 802B7EBC 002B3B1C 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B7EC0 002B3B20 39 61 00 30 */ addi r11, r1, 0x30
/* 802B7EC4 002B3B24 4B F0 F2 51 */ bl _savegpr_22
/* 802B7EC8 002B3B28 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B7ECC 002B3B2C 7C 79 1B 78 */ mr r25, r3
/* 802B7ED0 002B3B30 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B7ED4 002B3B34 4B FB 68 89 */ bl OSDisableInterrupts
/* 802B7ED8 002B3B38 7C 7B 1B 78 */ mr r27, r3
/* 802B7EDC 002B3B3C 7F BF EB 78 */ mr r31, r29
/* 802B7EE0 002B3B40 3B DD 00 6C */ addi r30, r29, 0x6c
/* 802B7EE4 002B3B44 3B 80 00 00 */ li r28, 0
lbl_802B7EE8:
/* 802B7EE8 002B3B48 80 7F 00 6C */ lwz r3, 0x6c(r31)
/* 802B7EEC 002B3B4C 38 99 00 40 */ addi r4, r25, 0x40
/* 802B7EF0 002B3B50 38 A0 00 06 */ li r5, 6
/* 802B7EF4 002B3B54 3A E3 00 40 */ addi r23, r3, 0x40
/* 802B7EF8 002B3B58 7E E3 BB 78 */ mr r3, r23
/* 802B7EFC 002B3B5C 4B F1 24 9D */ bl memcmp
/* 802B7F00 002B3B60 2C 03 00 00 */ cmpwi r3, 0
/* 802B7F04 002B3B64 40 82 00 D4 */ bne lbl_802B7FD8
/* 802B7F08 002B3B68 82 DD 00 64 */ lwz r22, 0x64(r29)
/* 802B7F0C 002B3B6C 7E DA B3 78 */ mr r26, r22
/* 802B7F10 002B3B70 48 00 00 C0 */ b lbl_802B7FD0
lbl_802B7F14:
/* 802B7F14 002B3B74 83 1A 00 00 */ lwz r24, 0(r26)
/* 802B7F18 002B3B78 38 99 00 40 */ addi r4, r25, 0x40
/* 802B7F1C 002B3B7C 38 A0 00 06 */ li r5, 6
/* 802B7F20 002B3B80 38 78 00 40 */ addi r3, r24, 0x40
/* 802B7F24 002B3B84 4B F1 24 75 */ bl memcmp
/* 802B7F28 002B3B88 2C 03 00 00 */ cmpwi r3, 0
/* 802B7F2C 002B3B8C 41 82 00 A0 */ beq lbl_802B7FCC
/* 802B7F30 002B3B90 88 18 00 59 */ lbz r0, 0x59(r24)
/* 802B7F34 002B3B94 28 00 00 01 */ cmplwi r0, 1
/* 802B7F38 002B3B98 41 81 00 94 */ bgt lbl_802B7FCC
/* 802B7F3C 002B3B9C 80 76 00 00 */ lwz r3, 0(r22)
/* 802B7F40 002B3BA0 7E E4 BB 78 */ mr r4, r23
/* 802B7F44 002B3BA4 38 A0 00 06 */ li r5, 6
/* 802B7F48 002B3BA8 38 63 00 40 */ addi r3, r3, 0x40
/* 802B7F4C 002B3BAC 4B F1 24 4D */ bl memcmp
/* 802B7F50 002B3BB0 2C 03 00 00 */ cmpwi r3, 0
/* 802B7F54 002B3BB4 40 82 00 1C */ bne lbl_802B7F70
/* 802B7F58 002B3BB8 80 16 00 08 */ lwz r0, 8(r22)
/* 802B7F5C 002B3BBC 7C 1A 00 40 */ cmplw r26, r0
/* 802B7F60 002B3BC0 41 82 00 78 */ beq lbl_802B7FD8
/* 802B7F64 002B3BC4 80 1F 00 74 */ lwz r0, 0x74(r31)
/* 802B7F68 002B3BC8 90 1D 00 64 */ stw r0, 0x64(r29)
/* 802B7F6C 002B3BCC 48 00 00 10 */ b lbl_802B7F7C
lbl_802B7F70:
/* 802B7F70 002B3BD0 80 1F 00 74 */ lwz r0, 0x74(r31)
/* 802B7F74 002B3BD4 80 7F 00 70 */ lwz r3, 0x70(r31)
/* 802B7F78 002B3BD8 90 03 00 08 */ stw r0, 8(r3)
lbl_802B7F7C:
/* 802B7F7C 002B3BDC 80 1F 00 70 */ lwz r0, 0x70(r31)
/* 802B7F80 002B3BE0 80 7F 00 74 */ lwz r3, 0x74(r31)
/* 802B7F84 002B3BE4 90 03 00 04 */ stw r0, 4(r3)
/* 802B7F88 002B3BE8 80 1D 00 64 */ lwz r0, 0x64(r29)
/* 802B7F8C 002B3BEC 7C 1A 00 40 */ cmplw r26, r0
/* 802B7F90 002B3BF0 41 82 00 20 */ beq lbl_802B7FB0
/* 802B7F94 002B3BF4 80 1A 00 04 */ lwz r0, 4(r26)
/* 802B7F98 002B3BF8 90 1F 00 70 */ stw r0, 0x70(r31)
/* 802B7F9C 002B3BFC 93 5F 00 74 */ stw r26, 0x74(r31)
/* 802B7FA0 002B3C00 80 7A 00 04 */ lwz r3, 4(r26)
/* 802B7FA4 002B3C04 93 C3 00 08 */ stw r30, 8(r3)
/* 802B7FA8 002B3C08 93 DA 00 04 */ stw r30, 4(r26)
/* 802B7FAC 002B3C0C 48 00 00 2C */ b lbl_802B7FD8
lbl_802B7FB0:
/* 802B7FB0 002B3C10 93 5F 00 70 */ stw r26, 0x70(r31)
/* 802B7FB4 002B3C14 80 1A 00 08 */ lwz r0, 8(r26)
/* 802B7FB8 002B3C18 90 1F 00 74 */ stw r0, 0x74(r31)
/* 802B7FBC 002B3C1C 80 7A 00 08 */ lwz r3, 8(r26)
/* 802B7FC0 002B3C20 93 C3 00 04 */ stw r30, 4(r3)
/* 802B7FC4 002B3C24 93 DA 00 08 */ stw r30, 8(r26)
/* 802B7FC8 002B3C28 48 00 00 10 */ b lbl_802B7FD8
lbl_802B7FCC:
/* 802B7FCC 002B3C2C 83 5A 00 08 */ lwz r26, 8(r26)
lbl_802B7FD0:
/* 802B7FD0 002B3C30 2C 1A 00 00 */ cmpwi r26, 0
/* 802B7FD4 002B3C34 40 82 FF 40 */ bne lbl_802B7F14
lbl_802B7FD8:
/* 802B7FD8 002B3C38 3B 9C 00 01 */ addi r28, r28, 1
/* 802B7FDC 002B3C3C 3B DE 00 0C */ addi r30, r30, 0xc
/* 802B7FE0 002B3C40 2C 1C 00 0A */ cmpwi r28, 0xa
/* 802B7FE4 002B3C44 3B FF 00 0C */ addi r31, r31, 0xc
/* 802B7FE8 002B3C48 41 80 FF 00 */ blt lbl_802B7EE8
/* 802B7FEC 002B3C4C 7F 63 DB 78 */ mr r3, r27
/* 802B7FF0 002B3C50 4B FB 67 95 */ bl OSRestoreInterrupts
/* 802B7FF4 002B3C54 39 61 00 30 */ addi r11, r1, 0x30
/* 802B7FF8 002B3C58 4B F0 F1 69 */ bl _restgpr_22
/* 802B7FFC 002B3C5C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B8000 002B3C60 7C 08 03 A6 */ mtlr r0
/* 802B8004 002B3C64 38 21 00 30 */ addi r1, r1, 0x30
/* 802B8008 002B3C68 4E 80 00 20 */ blr
CleanupCallback:
/* 802B800C 002B3C6C 2C 03 00 00 */ cmpwi r3, 0
/* 802B8010 002B3C70 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B8014 002B3C74 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B8018 002B3C78 40 82 00 14 */ bne lbl_802B802C
/* 802B801C 002B3C7C 38 00 00 00 */ li r0, 0
/* 802B8020 002B3C80 90 0D AE A8 */ stw r0, lbl_80640168-_SDA_BASE_(r13)
/* 802B8024 002B3C84 98 03 07 08 */ stb r0, 0x708(r3)
/* 802B8028 002B3C88 4E 80 00 20 */ blr
lbl_802B802C:
/* 802B802C 002B3C8C 3C 60 80 44 */ lis r3, lbl_8043E7B4@ha
/* 802B8030 002B3C90 38 63 E7 B4 */ addi r3, r3, lbl_8043E7B4@l
/* 802B8034 002B3C94 4C C6 31 82 */ crclr 6
/* 802B8038 002B3C98 48 00 15 44 */ b WUD_DEBUGPrint
/* 802B803C 002B3C9C 4E 80 00 20 */ blr
WUDSecurityCallback:
/* 802B8040 002B3CA0 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 802B8044 002B3CA4 7C 08 02 A6 */ mflr r0
/* 802B8048 002B3CA8 90 01 00 64 */ stw r0, 0x64(r1)
/* 802B804C 002B3CAC 39 61 00 60 */ addi r11, r1, 0x60
/* 802B8050 002B3CB0 4B F0 F0 D1 */ bl _savegpr_25
/* 802B8054 002B3CB4 3F C0 80 44 */ lis r30, lbl_8043E048@ha
/* 802B8058 002B3CB8 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B805C 002B3CBC 3B FF A4 E0 */ addi r31, r31, lbl_8053A4E0@l
/* 802B8060 002B3CC0 7C 79 1B 78 */ mr r25, r3
/* 802B8064 002B3CC4 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
/* 802B8068 002B3CC8 7C 9C 23 78 */ mr r28, r4
/* 802B806C 002B3CCC 3B BF 00 00 */ addi r29, r31, 0
/* 802B8070 002B3CD0 38 7E 07 8C */ addi r3, r30, 0x78c
/* 802B8074 002B3CD4 4C C6 31 82 */ crclr 6
/* 802B8078 002B3CD8 48 00 15 05 */ bl WUD_DEBUGPrint
/* 802B807C 002B3CDC 28 19 00 08 */ cmplwi r25, 8
/* 802B8080 002B3CE0 41 81 04 FC */ bgt lbl_802B857C
/* 802B8084 002B3CE4 3C 60 80 44 */ lis r3, lbl_8043EA30@ha
/* 802B8088 002B3CE8 57 20 10 3A */ slwi r0, r25, 2
/* 802B808C 002B3CEC 38 63 EA 30 */ addi r3, r3, lbl_8043EA30@l
/* 802B8090 002B3CF0 7C 63 00 2E */ lwzx r3, r3, r0
/* 802B8094 002B3CF4 7C 69 03 A6 */ mtctr r3
/* 802B8098 002B3CF8 4E 80 04 20 */ bctr
/* 802B809C 002B3CFC 7F 84 E3 78 */ mr r4, r28
/* 802B80A0 002B3D00 38 7D 07 02 */ addi r3, r29, 0x702
/* 802B80A4 002B3D04 38 A0 00 06 */ li r5, 6
/* 802B80A8 002B3D08 4B D4 BF 59 */ bl memcpy
/* 802B80AC 002B3D0C 38 7E 07 A8 */ addi r3, r30, 0x7a8
/* 802B80B0 002B3D10 4C C6 31 82 */ crclr 6
/* 802B80B4 002B3D14 48 00 14 C9 */ bl WUD_DEBUGPrint
/* 802B80B8 002B3D18 88 9D 07 02 */ lbz r4, 0x702(r29)
/* 802B80BC 002B3D1C 38 7E 07 B8 */ addi r3, r30, 0x7b8
/* 802B80C0 002B3D20 88 BD 07 03 */ lbz r5, 0x703(r29)
/* 802B80C4 002B3D24 88 DD 07 04 */ lbz r6, 0x704(r29)
/* 802B80C8 002B3D28 88 FD 07 05 */ lbz r7, 0x705(r29)
/* 802B80CC 002B3D2C 89 1D 07 06 */ lbz r8, 0x706(r29)
/* 802B80D0 002B3D30 89 3D 07 07 */ lbz r9, 0x707(r29)
/* 802B80D4 002B3D34 4C C6 31 82 */ crclr 6
/* 802B80D8 002B3D38 48 00 14 A5 */ bl WUD_DEBUGPrint
/* 802B80DC 002B3D3C 3C 80 80 2C */ lis r4, WUDHidHostCallback@ha
/* 802B80E0 002B3D40 38 60 00 12 */ li r3, 0x12
/* 802B80E4 002B3D44 38 84 90 30 */ addi r4, r4, WUDHidHostCallback@l
/* 802B80E8 002B3D48 48 00 A6 75 */ bl BTA_HhEnable
/* 802B80EC 002B3D4C 38 00 00 01 */ li r0, 1
/* 802B80F0 002B3D50 38 7D 07 10 */ addi r3, r29, 0x710
/* 802B80F4 002B3D54 98 1D 00 0F */ stb r0, 0xf(r29)
/* 802B80F8 002B3D58 4B FB 16 2D */ bl OSCreateAlarm
/* 802B80FC 002B3D5C 4B FB A6 BD */ bl OSGetTime
/* 802B8100 002B3D60 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802B8104 002B3D64 3D 20 80 2B */ lis r9, EnableStackHandler0@ha
/* 802B8108 002B3D68 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802B810C 002B3D6C 3C C0 10 62 */ lis r6, 0x10624DD3@ha
/* 802B8110 002B3D70 7C 65 1B 78 */ mr r5, r3
/* 802B8114 002B3D74 39 29 60 48 */ addi r9, r9, EnableStackHandler0@l
/* 802B8118 002B3D78 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
/* 802B811C 002B3D7C 54 00 F0 BE */ srwi r0, r0, 2
/* 802B8120 002B3D80 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802B8124 002B3D84 7C 86 23 78 */ mr r6, r4
/* 802B8128 002B3D88 38 7D 07 10 */ addi r3, r29, 0x710
/* 802B812C 002B3D8C 38 E0 00 00 */ li r7, 0
/* 802B8130 002B3D90 54 00 D1 BE */ srwi r0, r0, 6
/* 802B8134 002B3D94 1D 00 00 0A */ mulli r8, r0, 0xa
/* 802B8138 002B3D98 4B FB 18 BD */ bl OSSetPeriodicAlarm
/* 802B813C 002B3D9C 38 00 00 02 */ li r0, 2
/* 802B8140 002B3DA0 98 1D 07 08 */ stb r0, 0x708(r29)
/* 802B8144 002B3DA4 48 00 04 38 */ b lbl_802B857C
/* 802B8148 002B3DA8 38 7E 07 E0 */ addi r3, r30, 0x7e0
/* 802B814C 002B3DAC 4C C6 31 82 */ crclr 6
/* 802B8150 002B3DB0 48 00 14 2D */ bl WUD_DEBUGPrint
/* 802B8154 002B3DB4 3C 60 80 2C */ lis r3, CleanupCallback@ha
/* 802B8158 002B3DB8 38 63 80 0C */ addi r3, r3, CleanupCallback@l
/* 802B815C 002B3DBC 48 00 4F 51 */ bl BTA_CleanUp
/* 802B8160 002B3DC0 48 00 04 1C */ b lbl_802B857C
/* 802B8164 002B3DC4 38 7E 07 F4 */ addi r3, r30, 0x7f4
/* 802B8168 002B3DC8 4C C6 31 82 */ crclr 6
/* 802B816C 002B3DCC 48 00 14 11 */ bl WUD_DEBUGPrint
/* 802B8170 002B3DD0 88 1D 06 E9 */ lbz r0, 0x6e9(r29)
/* 802B8174 002B3DD4 2C 00 00 00 */ cmpwi r0, 0
/* 802B8178 002B3DD8 40 82 00 0C */ bne lbl_802B8184
/* 802B817C 002B3DDC 3B BD 07 02 */ addi r29, r29, 0x702
/* 802B8180 002B3DE0 48 00 00 08 */ b lbl_802B8188
lbl_802B8184:
/* 802B8184 002B3DE4 7F 9D E3 78 */ mr r29, r28
lbl_802B8188:
/* 802B8188 002B3DE8 3B 7F 0C E8 */ addi r27, r31, 0xce8
/* 802B818C 002B3DEC 88 1B 00 5B */ lbz r0, 0x5b(r27)
/* 802B8190 002B3DF0 28 00 00 04 */ cmplwi r0, 4
/* 802B8194 002B3DF4 40 82 00 14 */ bne lbl_802B81A8
/* 802B8198 002B3DF8 38 7B 00 40 */ addi r3, r27, 0x40
/* 802B819C 002B3DFC 4B FF F4 85 */ bl WUDiRemoveDevice
/* 802B81A0 002B3E00 38 7B 00 40 */ addi r3, r27, 0x40
/* 802B81A4 002B3E04 48 00 CC F1 */ bl btm_remove_acl
lbl_802B81A8:
/* 802B81A8 002B3E08 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B81AC 002B3E0C 38 00 00 01 */ li r0, 1
/* 802B81B0 002B3E10 98 03 00 5A */ stb r0, 0x5a(r3)
/* 802B81B4 002B3E14 4B FB 65 A9 */ bl OSDisableInterrupts
/* 802B81B8 002B3E18 88 1D 00 05 */ lbz r0, 5(r29)
/* 802B81BC 002B3E1C 98 01 00 30 */ stb r0, 0x30(r1)
/* 802B81C0 002B3E20 88 1D 00 04 */ lbz r0, 4(r29)
/* 802B81C4 002B3E24 98 01 00 31 */ stb r0, 0x31(r1)
/* 802B81C8 002B3E28 88 1D 00 03 */ lbz r0, 3(r29)
/* 802B81CC 002B3E2C 98 01 00 32 */ stb r0, 0x32(r1)
/* 802B81D0 002B3E30 88 1D 00 02 */ lbz r0, 2(r29)
/* 802B81D4 002B3E34 98 01 00 33 */ stb r0, 0x33(r1)
/* 802B81D8 002B3E38 88 1D 00 01 */ lbz r0, 1(r29)
/* 802B81DC 002B3E3C 98 01 00 34 */ stb r0, 0x34(r1)
/* 802B81E0 002B3E40 88 1D 00 00 */ lbz r0, 0(r29)
/* 802B81E4 002B3E44 98 01 00 35 */ stb r0, 0x35(r1)
/* 802B81E8 002B3E48 4B FB 65 9D */ bl OSRestoreInterrupts
/* 802B81EC 002B3E4C 7F 83 E3 78 */ mr r3, r28
/* 802B81F0 002B3E50 38 C1 00 30 */ addi r6, r1, 0x30
/* 802B81F4 002B3E54 38 80 00 01 */ li r4, 1
/* 802B81F8 002B3E58 38 A0 00 06 */ li r5, 6
/* 802B81FC 002B3E5C 48 00 80 A1 */ bl BTA_DmPinReply
/* 802B8200 002B3E60 48 00 03 7C */ b lbl_802B857C
/* 802B8204 002B3E64 38 7E 08 08 */ addi r3, r30, 0x808
/* 802B8208 002B3E68 4C C6 31 82 */ crclr 6
/* 802B820C 002B3E6C 48 00 13 71 */ bl WUD_DEBUGPrint
/* 802B8210 002B3E70 88 9C 00 00 */ lbz r4, 0(r28)
/* 802B8214 002B3E74 38 7E 08 20 */ addi r3, r30, 0x820
/* 802B8218 002B3E78 88 BC 00 01 */ lbz r5, 1(r28)
/* 802B821C 002B3E7C 88 DC 00 02 */ lbz r6, 2(r28)
/* 802B8220 002B3E80 88 FC 00 03 */ lbz r7, 3(r28)
/* 802B8224 002B3E84 89 1C 00 04 */ lbz r8, 4(r28)
/* 802B8228 002B3E88 89 3C 00 05 */ lbz r9, 5(r28)
/* 802B822C 002B3E8C 4C C6 31 82 */ crclr 6
/* 802B8230 002B3E90 48 00 13 4D */ bl WUD_DEBUGPrint
/* 802B8234 002B3E94 88 1C 01 06 */ lbz r0, 0x106(r28)
/* 802B8238 002B3E98 38 7E 08 48 */ addi r3, r30, 0x848
/* 802B823C 002B3E9C 90 01 00 08 */ stw r0, 8(r1)
/* 802B8240 002B3EA0 88 1C 01 07 */ lbz r0, 0x107(r28)
/* 802B8244 002B3EA4 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B8248 002B3EA8 88 1C 01 08 */ lbz r0, 0x108(r28)
/* 802B824C 002B3EAC 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B8250 002B3EB0 88 1C 01 09 */ lbz r0, 0x109(r28)
/* 802B8254 002B3EB4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B8258 002B3EB8 88 1C 01 0A */ lbz r0, 0x10a(r28)
/* 802B825C 002B3EBC 90 01 00 18 */ stw r0, 0x18(r1)
/* 802B8260 002B3EC0 88 1C 01 0B */ lbz r0, 0x10b(r28)
/* 802B8264 002B3EC4 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802B8268 002B3EC8 88 1C 01 0C */ lbz r0, 0x10c(r28)
/* 802B826C 002B3ECC 90 01 00 20 */ stw r0, 0x20(r1)
/* 802B8270 002B3ED0 88 1C 01 0D */ lbz r0, 0x10d(r28)
/* 802B8274 002B3ED4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B8278 002B3ED8 88 1C 01 0E */ lbz r0, 0x10e(r28)
/* 802B827C 002B3EDC 90 01 00 28 */ stw r0, 0x28(r1)
/* 802B8280 002B3EE0 88 9C 00 FF */ lbz r4, 0xff(r28)
/* 802B8284 002B3EE4 88 BC 01 00 */ lbz r5, 0x100(r28)
/* 802B8288 002B3EE8 88 DC 01 01 */ lbz r6, 0x101(r28)
/* 802B828C 002B3EEC 88 FC 01 02 */ lbz r7, 0x102(r28)
/* 802B8290 002B3EF0 89 1C 01 03 */ lbz r8, 0x103(r28)
/* 802B8294 002B3EF4 89 3C 01 04 */ lbz r9, 0x104(r28)
/* 802B8298 002B3EF8 89 5C 01 05 */ lbz r10, 0x105(r28)
/* 802B829C 002B3EFC 4C C6 31 82 */ crclr 6
/* 802B82A0 002B3F00 48 00 12 DD */ bl WUD_DEBUGPrint
/* 802B82A4 002B3F04 88 9C 01 0F */ lbz r4, 0x10f(r28)
/* 802B82A8 002B3F08 38 7E 08 A4 */ addi r3, r30, 0x8a4
/* 802B82AC 002B3F0C 4C C6 31 82 */ crclr 6
/* 802B82B0 002B3F10 48 00 12 CD */ bl WUD_DEBUGPrint
/* 802B82B4 002B3F14 88 1C 01 0F */ lbz r0, 0x10f(r28)
/* 802B82B8 002B3F18 2C 00 00 00 */ cmpwi r0, 0
/* 802B82BC 002B3F1C 41 82 02 C0 */ beq lbl_802B857C
/* 802B82C0 002B3F20 7F 83 E3 78 */ mr r3, r28
/* 802B82C4 002B3F24 4B FF F4 A1 */ bl WUDiGetDevInfo
/* 802B82C8 002B3F28 3B 7F 0C E8 */ addi r27, r31, 0xce8
/* 802B82CC 002B3F2C 7C 7A 1B 78 */ mr r26, r3
/* 802B82D0 002B3F30 7F 84 E3 78 */ mr r4, r28
/* 802B82D4 002B3F34 38 A0 00 06 */ li r5, 6
/* 802B82D8 002B3F38 38 7B 00 40 */ addi r3, r27, 0x40
/* 802B82DC 002B3F3C 4B F1 20 BD */ bl memcmp
/* 802B82E0 002B3F40 2C 03 00 00 */ cmpwi r3, 0
/* 802B82E4 002B3F44 40 82 00 18 */ bne lbl_802B82FC
/* 802B82E8 002B3F48 38 00 00 0C */ li r0, 0xc
/* 802B82EC 002B3F4C 2C 1A 00 00 */ cmpwi r26, 0
/* 802B82F0 002B3F50 98 1B 00 59 */ stb r0, 0x59(r27)
/* 802B82F4 002B3F54 40 82 00 08 */ bne lbl_802B82FC
/* 802B82F8 002B3F58 7F 7A DB 78 */ mr r26, r27
lbl_802B82FC:
/* 802B82FC 002B3F5C 38 7A 00 46 */ addi r3, r26, 0x46
/* 802B8300 002B3F60 38 9C 00 FF */ addi r4, r28, 0xff
/* 802B8304 002B3F64 38 A0 00 10 */ li r5, 0x10
/* 802B8308 002B3F68 4B D4 BC F9 */ bl memcpy
/* 802B830C 002B3F6C 48 00 02 70 */ b lbl_802B857C
/* 802B8310 002B3F70 38 7E 08 B4 */ addi r3, r30, 0x8b4
/* 802B8314 002B3F74 4C C6 31 82 */ crclr 6
/* 802B8318 002B3F78 48 00 12 65 */ bl WUD_DEBUGPrint
/* 802B831C 002B3F7C 48 00 02 60 */ b lbl_802B857C
/* 802B8320 002B3F80 38 7E 08 CC */ addi r3, r30, 0x8cc
/* 802B8324 002B3F84 4C C6 31 82 */ crclr 6
/* 802B8328 002B3F88 48 00 12 55 */ bl WUD_DEBUGPrint
/* 802B832C 002B3F8C 88 9C 00 00 */ lbz r4, 0(r28)
/* 802B8330 002B3F90 38 7E 08 E0 */ addi r3, r30, 0x8e0
/* 802B8334 002B3F94 88 BC 00 01 */ lbz r5, 1(r28)
/* 802B8338 002B3F98 88 DC 00 02 */ lbz r6, 2(r28)
/* 802B833C 002B3F9C 88 FC 00 03 */ lbz r7, 3(r28)
/* 802B8340 002B3FA0 89 1C 00 04 */ lbz r8, 4(r28)
/* 802B8344 002B3FA4 89 3C 00 05 */ lbz r9, 5(r28)
/* 802B8348 002B3FA8 4C C6 31 82 */ crclr 6
/* 802B834C 002B3FAC 48 00 12 31 */ bl WUD_DEBUGPrint
/* 802B8350 002B3FB0 7F 83 E3 78 */ mr r3, r28
/* 802B8354 002B3FB4 4B FF F4 11 */ bl WUDiGetDevInfo
/* 802B8358 002B3FB8 2C 03 00 00 */ cmpwi r3, 0
/* 802B835C 002B3FBC 7C 7A 1B 78 */ mr r26, r3
/* 802B8360 002B3FC0 40 82 00 24 */ bne lbl_802B8384
/* 802B8364 002B3FC4 3B 7F 0C E8 */ addi r27, r31, 0xce8
/* 802B8368 002B3FC8 7F 83 E3 78 */ mr r3, r28
/* 802B836C 002B3FCC 38 9B 00 40 */ addi r4, r27, 0x40
/* 802B8370 002B3FD0 38 A0 00 06 */ li r5, 6
/* 802B8374 002B3FD4 4B F1 20 25 */ bl memcmp
/* 802B8378 002B3FD8 2C 03 00 00 */ cmpwi r3, 0
/* 802B837C 002B3FDC 40 82 00 08 */ bne lbl_802B8384
/* 802B8380 002B3FE0 7F 7A DB 78 */ mr r26, r27
lbl_802B8384:
/* 802B8384 002B3FE4 2C 1A 00 00 */ cmpwi r26, 0
/* 802B8388 002B3FE8 41 82 00 1C */ beq lbl_802B83A4
/* 802B838C 002B3FEC 4B FB 63 D1 */ bl OSDisableInterrupts
/* 802B8390 002B3FF0 38 9F 00 00 */ addi r4, r31, 0
/* 802B8394 002B3FF4 8B 64 06 E5 */ lbz r27, 0x6e5(r4)
/* 802B8398 002B3FF8 4B FB 63 ED */ bl OSRestoreInterrupts
/* 802B839C 002B3FFC 28 1B 00 04 */ cmplwi r27, 4
/* 802B83A0 002B4000 40 82 00 44 */ bne lbl_802B83E4
lbl_802B83A4:
/* 802B83A4 002B4004 7F 83 E3 78 */ mr r3, r28
/* 802B83A8 002B4008 48 00 CA ED */ bl btm_remove_acl
/* 802B83AC 002B400C 2C 1A 00 00 */ cmpwi r26, 0
/* 802B83B0 002B4010 38 7E 09 0C */ addi r3, r30, 0x90c
/* 802B83B4 002B4014 38 9E 09 40 */ addi r4, r30, 0x940
/* 802B83B8 002B4018 40 82 00 08 */ bne lbl_802B83C0
/* 802B83BC 002B401C 38 9E 09 34 */ addi r4, r30, 0x934
lbl_802B83C0:
/* 802B83C0 002B4020 88 BC 00 00 */ lbz r5, 0(r28)
/* 802B83C4 002B4024 88 DC 00 01 */ lbz r6, 1(r28)
/* 802B83C8 002B4028 88 FC 00 02 */ lbz r7, 2(r28)
/* 802B83CC 002B402C 89 1C 00 03 */ lbz r8, 3(r28)
/* 802B83D0 002B4030 89 3C 00 04 */ lbz r9, 4(r28)
/* 802B83D4 002B4034 89 5C 00 05 */ lbz r10, 5(r28)
/* 802B83D8 002B4038 4C C6 31 82 */ crclr 6
/* 802B83DC 002B403C 48 00 11 A1 */ bl WUD_DEBUGPrint
/* 802B83E0 002B4040 48 00 01 9C */ b lbl_802B857C
lbl_802B83E4:
/* 802B83E4 002B4044 88 1A 00 59 */ lbz r0, 0x59(r26)
/* 802B83E8 002B4048 38 60 00 03 */ li r3, 3
/* 802B83EC 002B404C 28 00 00 02 */ cmplwi r0, 2
/* 802B83F0 002B4050 40 82 00 08 */ bne lbl_802B83F8
/* 802B83F4 002B4054 38 60 00 0C */ li r3, 0xc
lbl_802B83F8:
/* 802B83F8 002B4058 98 7A 00 59 */ stb r3, 0x59(r26)
/* 802B83FC 002B405C 88 7D 06 E5 */ lbz r3, 0x6e5(r29)
/* 802B8400 002B4060 38 03 00 01 */ addi r0, r3, 1
/* 802B8404 002B4064 98 1D 06 E5 */ stb r0, 0x6e5(r29)
/* 802B8408 002B4068 48 00 01 74 */ b lbl_802B857C
/* 802B840C 002B406C 38 7E 09 50 */ addi r3, r30, 0x950
/* 802B8410 002B4070 4C C6 31 82 */ crclr 6
/* 802B8414 002B4074 48 00 11 69 */ bl WUD_DEBUGPrint
/* 802B8418 002B4078 88 9C 00 00 */ lbz r4, 0(r28)
/* 802B841C 002B407C 38 7E 08 E0 */ addi r3, r30, 0x8e0
/* 802B8420 002B4080 88 BC 00 01 */ lbz r5, 1(r28)
/* 802B8424 002B4084 88 DC 00 02 */ lbz r6, 2(r28)
/* 802B8428 002B4088 88 FC 00 03 */ lbz r7, 3(r28)
/* 802B842C 002B408C 89 1C 00 04 */ lbz r8, 4(r28)
/* 802B8430 002B4090 89 3C 00 05 */ lbz r9, 5(r28)
/* 802B8434 002B4094 4C C6 31 82 */ crclr 6
/* 802B8438 002B4098 48 00 11 45 */ bl WUD_DEBUGPrint
/* 802B843C 002B409C 88 9C 00 06 */ lbz r4, 6(r28)
/* 802B8440 002B40A0 38 7E 09 68 */ addi r3, r30, 0x968
/* 802B8444 002B40A4 4C C6 31 82 */ crclr 6
/* 802B8448 002B40A8 48 00 11 35 */ bl WUD_DEBUGPrint
/* 802B844C 002B40AC 7F 83 E3 78 */ mr r3, r28
/* 802B8450 002B40B0 4B FF F3 15 */ bl WUDiGetDevInfo
/* 802B8454 002B40B4 2C 03 00 00 */ cmpwi r3, 0
/* 802B8458 002B40B8 41 82 00 A4 */ beq lbl_802B84FC
/* 802B845C 002B40BC 38 00 00 01 */ li r0, 1
/* 802B8460 002B40C0 38 BF 0C E8 */ addi r5, r31, 0xce8
/* 802B8464 002B40C4 98 03 00 59 */ stb r0, 0x59(r3)
/* 802B8468 002B40C8 38 65 00 40 */ addi r3, r5, 0x40
/* 802B846C 002B40CC 7F 84 E3 78 */ mr r4, r28
/* 802B8470 002B40D0 38 A0 00 06 */ li r5, 6
/* 802B8474 002B40D4 88 DD 06 E5 */ lbz r6, 0x6e5(r29)
/* 802B8478 002B40D8 38 06 FF FF */ addi r0, r6, -1
/* 802B847C 002B40DC 98 1D 06 E5 */ stb r0, 0x6e5(r29)
/* 802B8480 002B40E0 4B F1 1F 19 */ bl memcmp
/* 802B8484 002B40E4 2C 03 00 00 */ cmpwi r3, 0
/* 802B8488 002B40E8 40 82 00 0C */ bne lbl_802B8494
/* 802B848C 002B40EC 38 00 00 FF */ li r0, 0xff
/* 802B8490 002B40F0 98 1D 00 0C */ stb r0, 0xc(r29)
lbl_802B8494:
/* 802B8494 002B40F4 88 1C 00 06 */ lbz r0, 6(r28)
/* 802B8498 002B40F8 28 00 00 15 */ cmplwi r0, 0x15
/* 802B849C 002B40FC 40 82 00 A0 */ bne lbl_802B853C
/* 802B84A0 002B4100 3B 7F 07 48 */ addi r27, r31, 0x748
/* 802B84A4 002B4104 3B 20 00 00 */ li r25, 0
/* 802B84A8 002B4108 3B E0 00 01 */ li r31, 1
lbl_802B84AC:
/* 802B84AC 002B410C 57 23 06 3E */ clrlwi r3, r25, 0x18
/* 802B84B0 002B4110 7F 84 E3 78 */ mr r4, r28
/* 802B84B4 002B4114 38 03 00 0A */ addi r0, r3, 0xa
/* 802B84B8 002B4118 38 A0 00 06 */ li r5, 6
/* 802B84BC 002B411C 1C 00 00 46 */ mulli r0, r0, 0x46
/* 802B84C0 002B4120 7C 7B 02 14 */ add r3, r27, r0
/* 802B84C4 002B4124 3B 43 00 01 */ addi r26, r3, 1
/* 802B84C8 002B4128 7F 43 D3 78 */ mr r3, r26
/* 802B84CC 002B412C 4B F1 1E CD */ bl memcmp
/* 802B84D0 002B4130 2C 03 00 00 */ cmpwi r3, 0
/* 802B84D4 002B4134 40 82 00 18 */ bne lbl_802B84EC
/* 802B84D8 002B4138 7F 43 D3 78 */ mr r3, r26
/* 802B84DC 002B413C 38 80 00 00 */ li r4, 0
/* 802B84E0 002B4140 38 A0 00 46 */ li r5, 0x46
/* 802B84E4 002B4144 4B D4 BC 21 */ bl memset
/* 802B84E8 002B4148 9B ED AE 59 */ stb r31, lbl_80640119-_SDA_BASE_(r13)
lbl_802B84EC:
/* 802B84EC 002B414C 3B 39 00 01 */ addi r25, r25, 1
/* 802B84F0 002B4150 28 19 00 04 */ cmplwi r25, 4
/* 802B84F4 002B4154 41 80 FF B8 */ blt lbl_802B84AC
/* 802B84F8 002B4158 48 00 00 44 */ b lbl_802B853C
lbl_802B84FC:
/* 802B84FC 002B415C 38 7F 0C E8 */ addi r3, r31, 0xce8
/* 802B8500 002B4160 7F 84 E3 78 */ mr r4, r28
/* 802B8504 002B4164 38 63 00 40 */ addi r3, r3, 0x40
/* 802B8508 002B4168 38 A0 00 06 */ li r5, 6
/* 802B850C 002B416C 4B F1 1E 8D */ bl memcmp
/* 802B8510 002B4170 2C 03 00 00 */ cmpwi r3, 0
/* 802B8514 002B4174 40 82 00 1C */ bne lbl_802B8530
/* 802B8518 002B4178 88 7D 06 E5 */ lbz r3, 0x6e5(r29)
/* 802B851C 002B417C 38 00 00 FF */ li r0, 0xff
/* 802B8520 002B4180 98 1D 00 0C */ stb r0, 0xc(r29)
/* 802B8524 002B4184 38 03 FF FF */ addi r0, r3, -1
/* 802B8528 002B4188 98 1D 06 E5 */ stb r0, 0x6e5(r29)
/* 802B852C 002B418C 48 00 00 10 */ b lbl_802B853C
lbl_802B8530:
/* 802B8530 002B4190 38 7E 09 74 */ addi r3, r30, 0x974
/* 802B8534 002B4194 4C C6 31 82 */ crclr 6
/* 802B8538 002B4198 48 00 10 45 */ bl WUD_DEBUGPrint
lbl_802B853C:
/* 802B853C 002B419C 88 1D 06 E5 */ lbz r0, 0x6e5(r29)
/* 802B8540 002B41A0 28 00 00 FA */ cmplwi r0, 0xfa
/* 802B8544 002B41A4 41 80 00 38 */ blt lbl_802B857C
/* 802B8548 002B41A8 38 7E 09 90 */ addi r3, r30, 0x990
/* 802B854C 002B41AC 4C C6 31 82 */ crclr 6
/* 802B8550 002B41B0 4B D4 F5 75 */ bl OSReport
/* 802B8554 002B41B4 38 00 00 00 */ li r0, 0
/* 802B8558 002B41B8 98 1D 06 E5 */ stb r0, 0x6e5(r29)
/* 802B855C 002B41BC 48 00 00 20 */ b lbl_802B857C
/* 802B8560 002B41C0 38 7E 09 B4 */ addi r3, r30, 0x9b4
/* 802B8564 002B41C4 4C C6 31 82 */ crclr 6
/* 802B8568 002B41C8 48 00 10 15 */ bl WUD_DEBUGPrint
/* 802B856C 002B41CC 48 00 00 10 */ b lbl_802B857C
/* 802B8570 002B41D0 38 7E 09 D0 */ addi r3, r30, 0x9d0
/* 802B8574 002B41D4 4C C6 31 82 */ crclr 6
/* 802B8578 002B41D8 48 00 10 05 */ bl WUD_DEBUGPrint
lbl_802B857C:
/* 802B857C 002B41DC 39 61 00 60 */ addi r11, r1, 0x60
/* 802B8580 002B41E0 4B F0 EB ED */ bl _restgpr_25
/* 802B8584 002B41E4 80 01 00 64 */ lwz r0, 0x64(r1)
/* 802B8588 002B41E8 7C 08 03 A6 */ mtlr r0
/* 802B858C 002B41EC 38 21 00 60 */ addi r1, r1, 0x60
/* 802B8590 002B41F0 4E 80 00 20 */ blr
WUDSearchCallback:
/* 802B8594 002B41F4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802B8598 002B41F8 7C 08 02 A6 */ mflr r0
/* 802B859C 002B41FC 2C 03 00 02 */ cmpwi r3, 2
/* 802B85A0 002B4200 90 01 00 34 */ stw r0, 0x34(r1)
/* 802B85A4 002B4204 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802B85A8 002B4208 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802B85AC 002B420C 93 A1 00 24 */ stw r29, 0x24(r1)
/* 802B85B0 002B4210 3F A0 80 44 */ lis r29, lbl_8043E048@ha
/* 802B85B4 002B4214 3B BD E0 48 */ addi r29, r29, lbl_8043E048@l
/* 802B85B8 002B4218 93 81 00 20 */ stw r28, 0x20(r1)
/* 802B85BC 002B421C 7C 9C 23 78 */ mr r28, r4
/* 802B85C0 002B4220 41 82 00 D0 */ beq lbl_802B8690
/* 802B85C4 002B4224 40 80 00 14 */ bge lbl_802B85D8
/* 802B85C8 002B4228 2C 03 00 00 */ cmpwi r3, 0
/* 802B85CC 002B422C 41 82 00 1C */ beq lbl_802B85E8
/* 802B85D0 002B4230 40 80 00 B0 */ bge lbl_802B8680
/* 802B85D4 002B4234 48 00 01 80 */ b lbl_802B8754
lbl_802B85D8:
/* 802B85D8 002B4238 2C 03 00 04 */ cmpwi r3, 4
/* 802B85DC 002B423C 41 82 01 3C */ beq lbl_802B8718
/* 802B85E0 002B4240 40 80 01 74 */ bge lbl_802B8754
/* 802B85E4 002B4244 48 00 01 14 */ b lbl_802B86F8
lbl_802B85E8:
/* 802B85E8 002B4248 88 04 00 07 */ lbz r0, 7(r4)
/* 802B85EC 002B424C 38 7D 0A 0C */ addi r3, r29, 0xa0c
/* 802B85F0 002B4250 90 01 00 08 */ stw r0, 8(r1)
/* 802B85F4 002B4254 88 04 00 08 */ lbz r0, 8(r4)
/* 802B85F8 002B4258 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B85FC 002B425C 88 04 00 09 */ lbz r0, 9(r4)
/* 802B8600 002B4260 7C 00 07 74 */ extsb r0, r0
/* 802B8604 002B4264 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B8608 002B4268 88 84 00 00 */ lbz r4, 0(r4)
/* 802B860C 002B426C 88 BC 00 01 */ lbz r5, 1(r28)
/* 802B8610 002B4270 88 DC 00 02 */ lbz r6, 2(r28)
/* 802B8614 002B4274 88 FC 00 03 */ lbz r7, 3(r28)
/* 802B8618 002B4278 89 1C 00 04 */ lbz r8, 4(r28)
/* 802B861C 002B427C 89 3C 00 05 */ lbz r9, 5(r28)
/* 802B8620 002B4280 89 5C 00 06 */ lbz r10, 6(r28)
/* 802B8624 002B4284 4C C6 31 82 */ crclr 6
/* 802B8628 002B4288 48 00 0F 55 */ bl WUD_DEBUGPrint
/* 802B862C 002B428C 3F C0 80 54 */ lis r30, lbl_8053A4E0@ha
/* 802B8630 002B4290 88 1C 00 09 */ lbz r0, 9(r28)
/* 802B8634 002B4294 3B DE A4 E0 */ addi r30, r30, lbl_8053A4E0@l
/* 802B8638 002B4298 88 7E 06 E7 */ lbz r3, 0x6e7(r30)
/* 802B863C 002B429C 98 0D AE C0 */ stb r0, lbl_80640180-_SDA_BASE_(r13)
/* 802B8640 002B42A0 28 03 00 01 */ cmplwi r3, 1
/* 802B8644 002B42A4 41 82 00 20 */ beq lbl_802B8664
/* 802B8648 002B42A8 2C 03 00 00 */ cmpwi r3, 0
/* 802B864C 002B42AC 40 82 00 20 */ bne lbl_802B866C
/* 802B8650 002B42B0 4B FB 61 0D */ bl OSDisableInterrupts
/* 802B8654 002B42B4 8B BE 06 E5 */ lbz r29, 0x6e5(r30)
/* 802B8658 002B42B8 4B FB 61 2D */ bl OSRestoreInterrupts
/* 802B865C 002B42BC 28 1D 00 03 */ cmplwi r29, 3
/* 802B8660 002B42C0 40 80 00 0C */ bge lbl_802B866C
lbl_802B8664:
/* 802B8664 002B42C4 38 00 12 C0 */ li r0, 0x12c0
/* 802B8668 002B42C8 48 00 00 0C */ b lbl_802B8674
lbl_802B866C:
/* 802B866C 002B42CC 3C 60 00 01 */ lis r3, 0x00008000@ha
/* 802B8670 002B42D0 38 03 80 00 */ addi r0, r3, 0x00008000@l
lbl_802B8674:
/* 802B8674 002B42D4 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 802B8678 002B42D8 48 00 E5 49 */ bl BTM_WritePageTimeout
/* 802B867C 002B42DC 48 00 00 E4 */ b lbl_802B8760
lbl_802B8680:
/* 802B8680 002B42E0 38 7D 0A 50 */ addi r3, r29, 0xa50
/* 802B8684 002B42E4 4C C6 31 82 */ crclr 6
/* 802B8688 002B42E8 48 00 0E F5 */ bl WUD_DEBUGPrint
/* 802B868C 002B42EC 48 00 00 D4 */ b lbl_802B8760
lbl_802B8690:
/* 802B8690 002B42F0 3F C0 80 54 */ lis r30, lbl_8053B090@ha
/* 802B8694 002B42F4 38 A0 00 06 */ li r5, 6
/* 802B8698 002B42F8 38 7E B0 90 */ addi r3, r30, lbl_8053B090@l
/* 802B869C 002B42FC 4B D4 B9 65 */ bl memcpy
/* 802B86A0 002B4300 3B FE B0 90 */ addi r31, r30, -20336
/* 802B86A4 002B4304 38 9C 00 06 */ addi r4, r28, 6
/* 802B86A8 002B4308 38 7F 00 06 */ addi r3, r31, 6
/* 802B86AC 002B430C 38 A0 00 40 */ li r5, 0x40
/* 802B86B0 002B4310 4B D4 B9 51 */ bl memcpy
/* 802B86B4 002B4314 88 8D AE C1 */ lbz r4, lbl_80640181-_SDA_BASE_(r13)
/* 802B86B8 002B4318 38 7D 0A 64 */ addi r3, r29, 0xa64
/* 802B86BC 002B431C 80 BC 01 00 */ lwz r5, 0x100(r28)
/* 802B86C0 002B4320 39 5F 00 06 */ addi r10, r31, 6
/* 802B86C4 002B4324 38 04 00 01 */ addi r0, r4, 1
/* 802B86C8 002B4328 90 BF 01 00 */ stw r5, 0x100(r31)
/* 802B86CC 002B432C 98 0D AE C1 */ stb r0, lbl_80640181-_SDA_BASE_(r13)
/* 802B86D0 002B4330 90 A1 00 08 */ stw r5, 8(r1)
/* 802B86D4 002B4334 88 9E B0 90 */ lbz r4, -0x4f70(r30)
/* 802B86D8 002B4338 88 BF 00 01 */ lbz r5, 1(r31)
/* 802B86DC 002B433C 88 DF 00 02 */ lbz r6, 2(r31)
/* 802B86E0 002B4340 88 FF 00 03 */ lbz r7, 3(r31)
/* 802B86E4 002B4344 89 1F 00 04 */ lbz r8, 4(r31)
/* 802B86E8 002B4348 89 3F 00 05 */ lbz r9, 5(r31)
/* 802B86EC 002B434C 4C C6 31 82 */ crclr 6
/* 802B86F0 002B4350 48 00 0E 8D */ bl WUD_DEBUGPrint
/* 802B86F4 002B4354 48 00 00 6C */ b lbl_802B8760
lbl_802B86F8:
/* 802B86F8 002B4358 38 7D 0A A4 */ addi r3, r29, 0xaa4
/* 802B86FC 002B435C 4C C6 31 82 */ crclr 6
/* 802B8700 002B4360 48 00 0E 7D */ bl WUD_DEBUGPrint
/* 802B8704 002B4364 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B8708 002B4368 38 00 00 04 */ li r0, 4
/* 802B870C 002B436C 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B8710 002B4370 98 03 00 0C */ stb r0, 0xc(r3)
/* 802B8714 002B4374 48 00 00 4C */ b lbl_802B8760
lbl_802B8718:
/* 802B8718 002B4378 38 7D 0A B8 */ addi r3, r29, 0xab8
/* 802B871C 002B437C 4C C6 31 82 */ crclr 6
/* 802B8720 002B4380 48 00 0E 5D */ bl WUD_DEBUGPrint
/* 802B8724 002B4384 38 00 00 00 */ li r0, 0
/* 802B8728 002B4388 3C 60 80 54 */ lis r3, lbl_8053B090@ha
/* 802B872C 002B438C 98 0D AE C1 */ stb r0, lbl_80640181-_SDA_BASE_(r13)
/* 802B8730 002B4390 38 63 B0 90 */ addi r3, r3, lbl_8053B090@l
/* 802B8734 002B4394 38 80 00 00 */ li r4, 0
/* 802B8738 002B4398 38 A0 01 08 */ li r5, 0x108
/* 802B873C 002B439C 4B D4 B9 C9 */ bl memset
/* 802B8740 002B43A0 3C 60 80 54 */ lis r3, lbl_8053A4E0@ha
/* 802B8744 002B43A4 38 00 00 04 */ li r0, 4
/* 802B8748 002B43A8 38 63 A4 E0 */ addi r3, r3, lbl_8053A4E0@l
/* 802B874C 002B43AC 98 03 00 0C */ stb r0, 0xc(r3)
/* 802B8750 002B43B0 48 00 00 10 */ b lbl_802B8760
lbl_802B8754:
/* 802B8754 002B43B4 38 7D 0A C8 */ addi r3, r29, 0xac8
/* 802B8758 002B43B8 4C C6 31 82 */ crclr 6
/* 802B875C 002B43BC 48 00 0E 21 */ bl WUD_DEBUGPrint
lbl_802B8760:
/* 802B8760 002B43C0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802B8764 002B43C4 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802B8768 002B43C8 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802B876C 002B43CC 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802B8770 002B43D0 83 81 00 20 */ lwz r28, 0x20(r1)
/* 802B8774 002B43D4 7C 08 03 A6 */ mtlr r0
/* 802B8778 002B43D8 38 21 00 30 */ addi r1, r1, 0x30
/* 802B877C 002B43DC 4E 80 00 20 */ blr
WUDVendorSpecificCallback:
/* 802B8780 002B43E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B8784 002B43E4 7C 08 02 A6 */ mflr r0
/* 802B8788 002B43E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B878C 002B43EC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B8790 002B43F0 3F E0 80 54 */ lis r31, lbl_8053A4E0@ha
/* 802B8794 002B43F4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B8798 002B43F8 3F C0 80 44 */ lis r30, lbl_8043E048@ha
/* 802B879C 002B43FC 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
/* 802B87A0 002B4400 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802B87A4 002B4404 7C 9D 23 78 */ mr r29, r4
/* 802B87A8 002B4408 93 81 00 10 */ stw r28, 0x10(r1)
/* 802B87AC 002B440C 3B 9F A4 E0 */ addi r28, r31, lbl_8053A4E0@l
/* 802B87B0 002B4410 88 04 00 00 */ lbz r0, 0(r4)
/* 802B87B4 002B4414 2C 00 00 0A */ cmpwi r0, 0xa
/* 802B87B8 002B4418 41 82 02 A0 */ beq lbl_802B8A58
/* 802B87BC 002B441C 40 80 00 14 */ bge lbl_802B87D0
/* 802B87C0 002B4420 2C 00 00 08 */ cmpwi r0, 8
/* 802B87C4 002B4424 41 82 00 18 */ beq lbl_802B87DC
/* 802B87C8 002B4428 40 80 01 10 */ bge lbl_802B88D8
/* 802B87CC 002B442C 48 00 02 CC */ b lbl_802B8A98
lbl_802B87D0:
/* 802B87D0 002B4430 2C 00 00 10 */ cmpwi r0, 0x10
/* 802B87D4 002B4434 41 82 02 A0 */ beq lbl_802B8A74
/* 802B87D8 002B4438 48 00 02 C0 */ b lbl_802B8A98
lbl_802B87DC:
/* 802B87DC 002B443C 38 7E 0A F8 */ addi r3, r30, 0xaf8
/* 802B87E0 002B4440 4C C6 31 82 */ crclr 6
/* 802B87E4 002B4444 48 00 0D 99 */ bl WUD_DEBUGPrint
/* 802B87E8 002B4448 38 7E 06 38 */ addi r3, r30, 0x638
/* 802B87EC 002B444C 4C C6 31 82 */ crclr 6
/* 802B87F0 002B4450 48 00 0D 8D */ bl WUD_DEBUGPrint
/* 802B87F4 002B4454 4B FB 5F 69 */ bl OSDisableInterrupts
/* 802B87F8 002B4458 83 BF A4 E0 */ lwz r29, -0x5b20(r31)
/* 802B87FC 002B445C 7C 7F 1B 78 */ mr r31, r3
/* 802B8800 002B4460 4B FB 5F 5D */ bl OSDisableInterrupts
/* 802B8804 002B4464 88 1C 00 0C */ lbz r0, 0xc(r28)
/* 802B8808 002B4468 2C 00 00 00 */ cmpwi r0, 0
/* 802B880C 002B446C 40 82 00 34 */ bne lbl_802B8840
/* 802B8810 002B4470 88 1C 00 0D */ lbz r0, 0xd(r28)
/* 802B8814 002B4474 2C 00 00 00 */ cmpwi r0, 0
/* 802B8818 002B4478 40 82 00 28 */ bne lbl_802B8840
/* 802B881C 002B447C 88 1C 00 0F */ lbz r0, 0xf(r28)
/* 802B8820 002B4480 28 00 00 04 */ cmplwi r0, 4
/* 802B8824 002B4484 40 82 00 1C */ bne lbl_802B8840
/* 802B8828 002B4488 88 1C 00 10 */ lbz r0, 0x10(r28)
/* 802B882C 002B448C 28 00 00 04 */ cmplwi r0, 4
/* 802B8830 002B4490 40 82 00 10 */ bne lbl_802B8840
/* 802B8834 002B4494 4B FB 5F 51 */ bl OSRestoreInterrupts
/* 802B8838 002B4498 38 80 00 00 */ li r4, 0
/* 802B883C 002B449C 48 00 00 0C */ b lbl_802B8848
lbl_802B8840:
/* 802B8840 002B44A0 4B FB 5F 45 */ bl OSRestoreInterrupts
/* 802B8844 002B44A4 38 80 00 01 */ li r4, 1
lbl_802B8848:
/* 802B8848 002B44A8 7C 04 00 D0 */ neg r0, r4
/* 802B884C 002B44AC 7F E3 FB 78 */ mr r3, r31
/* 802B8850 002B44B0 7C 00 23 78 */ or r0, r0, r4
/* 802B8854 002B44B4 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B8858 002B44B8 7F E0 00 D0 */ neg r31, r0
/* 802B885C 002B44BC 4B FB 5F 29 */ bl OSRestoreInterrupts
/* 802B8860 002B44C0 2C 1D 00 00 */ cmpwi r29, 0
/* 802B8864 002B44C4 41 82 00 1C */ beq lbl_802B8880
/* 802B8868 002B44C8 7F AC EB 78 */ mr r12, r29
/* 802B886C 002B44CC 7F E3 FB 78 */ mr r3, r31
/* 802B8870 002B44D0 38 80 00 00 */ li r4, 0
/* 802B8874 002B44D4 7D 89 03 A6 */ mtctr r12
/* 802B8878 002B44D8 4E 80 04 21 */ bctrl
/* 802B887C 002B44DC 48 00 02 1C */ b lbl_802B8A98
lbl_802B8880:
/* 802B8880 002B44E0 38 7E 04 1C */ addi r3, r30, 0x41c
/* 802B8884 002B44E4 4C C6 31 82 */ crclr 6
/* 802B8888 002B44E8 48 00 0C F5 */ bl WUD_DEBUGPrint
/* 802B888C 002B44EC 38 60 00 00 */ li r3, 0
/* 802B8890 002B44F0 38 80 00 03 */ li r4, 3
/* 802B8894 002B44F4 38 A0 00 00 */ li r5, 0
/* 802B8898 002B44F8 4B FF E2 45 */ bl StartSyncDevice
/* 802B889C 002B44FC 7C 7F 1B 78 */ mr r31, r3
/* 802B88A0 002B4500 4B FB 5E BD */ bl OSDisableInterrupts
/* 802B88A4 002B4504 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B88A8 002B4508 83 C4 A4 E0 */ lwz r30, lbl_8053A4E0@l(r4)
/* 802B88AC 002B450C 4B FB 5E D9 */ bl OSRestoreInterrupts
/* 802B88B0 002B4510 2C 1F 00 00 */ cmpwi r31, 0
/* 802B88B4 002B4514 40 82 01 E4 */ bne lbl_802B8A98
/* 802B88B8 002B4518 2C 1E 00 00 */ cmpwi r30, 0
/* 802B88BC 002B451C 41 82 01 DC */ beq lbl_802B8A98
/* 802B88C0 002B4520 7F CC F3 78 */ mr r12, r30
/* 802B88C4 002B4524 38 60 FF FF */ li r3, -1
/* 802B88C8 002B4528 38 80 00 00 */ li r4, 0
/* 802B88CC 002B452C 7D 89 03 A6 */ mtctr r12
/* 802B88D0 002B4530 4E 80 04 21 */ bctrl
/* 802B88D4 002B4534 48 00 01 C4 */ b lbl_802B8A98
lbl_802B88D8:
/* 802B88D8 002B4538 38 7E 0B 10 */ addi r3, r30, 0xb10
/* 802B88DC 002B453C 4C C6 31 82 */ crclr 6
/* 802B88E0 002B4540 48 00 0C 9D */ bl WUD_DEBUGPrint
/* 802B88E4 002B4544 38 7E 06 5C */ addi r3, r30, 0x65c
/* 802B88E8 002B4548 4C C6 31 82 */ crclr 6
/* 802B88EC 002B454C 48 00 0C 91 */ bl WUD_DEBUGPrint
/* 802B88F0 002B4550 4B FB 5E 6D */ bl OSDisableInterrupts
/* 802B88F4 002B4554 83 FC 00 08 */ lwz r31, 8(r28)
/* 802B88F8 002B4558 7C 7D 1B 78 */ mr r29, r3
/* 802B88FC 002B455C 4B FB 5E 61 */ bl OSDisableInterrupts
/* 802B8900 002B4560 88 1C 00 0C */ lbz r0, 0xc(r28)
/* 802B8904 002B4564 2C 00 00 00 */ cmpwi r0, 0
/* 802B8908 002B4568 40 82 00 34 */ bne lbl_802B893C
/* 802B890C 002B456C 88 1C 00 0D */ lbz r0, 0xd(r28)
/* 802B8910 002B4570 2C 00 00 00 */ cmpwi r0, 0
/* 802B8914 002B4574 40 82 00 28 */ bne lbl_802B893C
/* 802B8918 002B4578 88 1C 00 0F */ lbz r0, 0xf(r28)
/* 802B891C 002B457C 28 00 00 04 */ cmplwi r0, 4
/* 802B8920 002B4580 40 82 00 1C */ bne lbl_802B893C
/* 802B8924 002B4584 88 1C 00 10 */ lbz r0, 0x10(r28)
/* 802B8928 002B4588 28 00 00 04 */ cmplwi r0, 4
/* 802B892C 002B458C 40 82 00 10 */ bne lbl_802B893C
/* 802B8930 002B4590 4B FB 5E 55 */ bl OSRestoreInterrupts
/* 802B8934 002B4594 38 80 00 00 */ li r4, 0
/* 802B8938 002B4598 48 00 00 0C */ b lbl_802B8944
lbl_802B893C:
/* 802B893C 002B459C 4B FB 5E 49 */ bl OSRestoreInterrupts
/* 802B8940 002B45A0 38 80 00 01 */ li r4, 1
lbl_802B8944:
/* 802B8944 002B45A4 7C 04 00 D0 */ neg r0, r4
/* 802B8948 002B45A8 7F A3 EB 78 */ mr r3, r29
/* 802B894C 002B45AC 7C 00 23 78 */ or r0, r0, r4
/* 802B8950 002B45B0 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802B8954 002B45B4 7F A0 00 D0 */ neg r29, r0
/* 802B8958 002B45B8 4B FB 5E 2D */ bl OSRestoreInterrupts
/* 802B895C 002B45BC 2C 1F 00 00 */ cmpwi r31, 0
/* 802B8960 002B45C0 41 82 00 18 */ beq lbl_802B8978
/* 802B8964 002B45C4 7F EC FB 78 */ mr r12, r31
/* 802B8968 002B45C8 7F A3 EB 78 */ mr r3, r29
/* 802B896C 002B45CC 7D 89 03 A6 */ mtctr r12
/* 802B8970 002B45D0 4E 80 04 21 */ bctrl
/* 802B8974 002B45D4 48 00 01 24 */ b lbl_802B8A98
lbl_802B8978:
/* 802B8978 002B45D8 3F A0 80 54 */ lis r29, lbl_8053A4E0@ha
/* 802B897C 002B45DC 38 7E 04 7C */ addi r3, r30, 0x47c
/* 802B8980 002B45E0 3B BD A4 E0 */ addi r29, r29, lbl_8053A4E0@l
/* 802B8984 002B45E4 4C C6 31 82 */ crclr 6
/* 802B8988 002B45E8 48 00 0B F5 */ bl WUD_DEBUGPrint
/* 802B898C 002B45EC 4B FB 5D D1 */ bl OSDisableInterrupts
/* 802B8990 002B45F0 8B DD 07 08 */ lbz r30, 0x708(r29)
/* 802B8994 002B45F4 7F DE 07 74 */ extsb r30, r30
/* 802B8998 002B45F8 4B FB 5D ED */ bl OSRestoreInterrupts
/* 802B899C 002B45FC 28 1E 00 03 */ cmplwi r30, 3
/* 802B89A0 002B4600 40 82 00 F8 */ bne lbl_802B8A98
/* 802B89A4 002B4604 4B FB 5D B9 */ bl OSDisableInterrupts
/* 802B89A8 002B4608 88 1D 00 0C */ lbz r0, 0xc(r29)
/* 802B89AC 002B460C 2C 00 00 00 */ cmpwi r0, 0
/* 802B89B0 002B4610 40 82 00 34 */ bne lbl_802B89E4
/* 802B89B4 002B4614 88 1D 00 0D */ lbz r0, 0xd(r29)
/* 802B89B8 002B4618 2C 00 00 00 */ cmpwi r0, 0
/* 802B89BC 002B461C 40 82 00 28 */ bne lbl_802B89E4
/* 802B89C0 002B4620 88 1D 00 0F */ lbz r0, 0xf(r29)
/* 802B89C4 002B4624 28 00 00 04 */ cmplwi r0, 4
/* 802B89C8 002B4628 40 82 00 1C */ bne lbl_802B89E4
/* 802B89CC 002B462C 88 1D 00 10 */ lbz r0, 0x10(r29)
/* 802B89D0 002B4630 28 00 00 04 */ cmplwi r0, 4
/* 802B89D4 002B4634 40 82 00 10 */ bne lbl_802B89E4
/* 802B89D8 002B4638 4B FB 5D AD */ bl OSRestoreInterrupts
/* 802B89DC 002B463C 38 00 00 00 */ li r0, 0
/* 802B89E0 002B4640 48 00 00 0C */ b lbl_802B89EC
lbl_802B89E4:
/* 802B89E4 002B4644 4B FB 5D A1 */ bl OSRestoreInterrupts
/* 802B89E8 002B4648 38 00 00 01 */ li r0, 1
lbl_802B89EC:
/* 802B89EC 002B464C 2C 00 00 00 */ cmpwi r0, 0
/* 802B89F0 002B4650 40 82 00 A8 */ bne lbl_802B8A98
/* 802B89F4 002B4654 4B FB 5D 69 */ bl OSDisableInterrupts
/* 802B89F8 002B4658 38 00 00 01 */ li r0, 1
/* 802B89FC 002B465C 7C 7E 1B 78 */ mr r30, r3
/* 802B8A00 002B4660 98 1D 00 0D */ stb r0, 0xd(r29)
/* 802B8A04 002B4664 38 7D 07 10 */ addi r3, r29, 0x710
/* 802B8A08 002B4668 4B FB 0D 1D */ bl OSCreateAlarm
/* 802B8A0C 002B466C 4B FB 9D AD */ bl OSGetTime
/* 802B8A10 002B4670 3C A0 80 00 */ lis r5, 0x800000F8@ha
/* 802B8A14 002B4674 3D 20 80 2B */ lis r9, DeleteAllHandler0@ha
/* 802B8A18 002B4678 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5)
/* 802B8A1C 002B467C 3C C0 10 62 */ lis r6, 0x10624DD3@ha
/* 802B8A20 002B4680 7C 65 1B 78 */ mr r5, r3
/* 802B8A24 002B4684 39 29 5D 40 */ addi r9, r9, DeleteAllHandler0@l
/* 802B8A28 002B4688 38 66 4D D3 */ addi r3, r6, 0x10624DD3@l
/* 802B8A2C 002B468C 54 00 F0 BE */ srwi r0, r0, 2
/* 802B8A30 002B4690 7C 03 00 16 */ mulhwu r0, r3, r0
/* 802B8A34 002B4694 7C 86 23 78 */ mr r6, r4
/* 802B8A38 002B4698 38 7D 07 10 */ addi r3, r29, 0x710
/* 802B8A3C 002B469C 38 E0 00 00 */ li r7, 0
/* 802B8A40 002B46A0 54 00 D1 BE */ srwi r0, r0, 6
/* 802B8A44 002B46A4 1D 00 00 14 */ mulli r8, r0, 0x14
/* 802B8A48 002B46A8 4B FB 0F AD */ bl OSSetPeriodicAlarm
/* 802B8A4C 002B46AC 7F C3 F3 78 */ mr r3, r30
/* 802B8A50 002B46B0 4B FB 5D 35 */ bl OSRestoreInterrupts
/* 802B8A54 002B46B4 48 00 00 44 */ b lbl_802B8A98
lbl_802B8A58:
/* 802B8A58 002B46B8 88 84 00 01 */ lbz r4, 1(r4)
/* 802B8A5C 002B46BC 38 7E 0B 28 */ addi r3, r30, 0xb28
/* 802B8A60 002B46C0 4C C6 31 82 */ crclr 6
/* 802B8A64 002B46C4 48 00 0B 19 */ bl WUD_DEBUGPrint
/* 802B8A68 002B46C8 88 1D 00 01 */ lbz r0, 1(r29)
/* 802B8A6C 002B46CC 98 1C 07 09 */ stb r0, 0x709(r28)
/* 802B8A70 002B46D0 48 00 00 28 */ b lbl_802B8A98
lbl_802B8A74:
/* 802B8A74 002B46D4 88 84 00 01 */ lbz r4, 1(r4)
/* 802B8A78 002B46D8 38 7E 0B 4C */ addi r3, r30, 0xb4c
/* 802B8A7C 002B46DC 4C C6 31 82 */ crclr 6
/* 802B8A80 002B46E0 48 00 0A FD */ bl WUD_DEBUGPrint
/* 802B8A84 002B46E4 38 BE 0B 74 */ addi r5, r30, 0xb74
/* 802B8A88 002B46E8 38 6D 89 C0 */ addi r3, r13, lbl_8063DC80-_SDA_BASE_
/* 802B8A8C 002B46EC 38 80 0F 25 */ li r4, 0xf25
/* 802B8A90 002B46F0 4C C6 31 82 */ crclr 6
/* 802B8A94 002B46F4 4B FB 2A 09 */ bl OSPanic
lbl_802B8A98:
/* 802B8A98 002B46F8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B8A9C 002B46FC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B8AA0 002B4700 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B8AA4 002B4704 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802B8AA8 002B4708 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802B8AAC 002B470C 7C 08 03 A6 */ mtlr r0
/* 802B8AB0 002B4710 38 21 00 20 */ addi r1, r1, 0x20
/* 802B8AB4 002B4714 4E 80 00 20 */ blr
WUDDeviceStatusCallback:
/* 802B8AB8 002B4718 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B8ABC 002B471C 7C 08 02 A6 */ mflr r0
/* 802B8AC0 002B4720 3C 80 80 44 */ lis r4, lbl_8043EBD0@ha
/* 802B8AC4 002B4724 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B8AC8 002B4728 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B8ACC 002B472C 7C 7F 1B 78 */ mr r31, r3
/* 802B8AD0 002B4730 38 64 EB D0 */ addi r3, r4, lbl_8043EBD0@l
/* 802B8AD4 002B4734 4C C6 31 82 */ crclr 6
/* 802B8AD8 002B4738 48 00 0A A5 */ bl WUD_DEBUGPrint
/* 802B8ADC 002B473C 28 1F 00 02 */ cmplwi r31, 2
/* 802B8AE0 002B4740 40 82 00 14 */ bne lbl_802B8AF4
/* 802B8AE4 002B4744 3C 60 80 44 */ lis r3, lbl_8043EBEC@ha
/* 802B8AE8 002B4748 38 63 EB EC */ addi r3, r3, lbl_8043EBEC@l
/* 802B8AEC 002B474C 4C C6 31 82 */ crclr 6
/* 802B8AF0 002B4750 4B D4 EF D5 */ bl OSReport
lbl_802B8AF4:
/* 802B8AF4 002B4754 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B8AF8 002B4758 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B8AFC 002B475C 7C 08 03 A6 */ mtlr r0
/* 802B8B00 002B4760 38 21 00 10 */ addi r1, r1, 0x10
/* 802B8B04 002B4764 4E 80 00 20 */ blr
WUDStoredLinkKeyCallback:
/* 802B8B08 002B4768 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 802B8B0C 002B476C 7C 08 02 A6 */ mflr r0
/* 802B8B10 002B4770 90 01 00 64 */ stw r0, 0x64(r1)
/* 802B8B14 002B4774 39 61 00 60 */ addi r11, r1, 0x60
/* 802B8B18 002B4778 4B F0 E6 01 */ bl _savegpr_23
/* 802B8B1C 002B477C 88 03 00 00 */ lbz r0, 0(r3)
/* 802B8B20 002B4780 3F C0 80 44 */ lis r30, lbl_8043E048@ha
/* 802B8B24 002B4784 3F 80 80 54 */ lis r28, lbl_8053A4E0@ha
/* 802B8B28 002B4788 7C 7A 1B 78 */ mr r26, r3
/* 802B8B2C 002B478C 2C 00 00 03 */ cmpwi r0, 3
/* 802B8B30 002B4790 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
/* 802B8B34 002B4794 3B 9C A4 E0 */ addi r28, r28, lbl_8053A4E0@l
/* 802B8B38 002B4798 41 82 02 20 */ beq lbl_802B8D58
/* 802B8B3C 002B479C 40 80 00 14 */ bge lbl_802B8B50
/* 802B8B40 002B47A0 2C 00 00 01 */ cmpwi r0, 1
/* 802B8B44 002B47A4 41 82 00 18 */ beq lbl_802B8B5C
/* 802B8B48 002B47A8 40 80 01 E0 */ bge lbl_802B8D28
/* 802B8B4C 002B47AC 48 00 02 7C */ b lbl_802B8DC8
lbl_802B8B50:
/* 802B8B50 002B47B0 2C 00 00 05 */ cmpwi r0, 5
/* 802B8B54 002B47B4 40 80 02 74 */ bge lbl_802B8DC8
/* 802B8B58 002B47B8 48 00 02 2C */ b lbl_802B8D84
lbl_802B8B5C:
/* 802B8B5C 002B47BC 38 7E 0B CC */ addi r3, r30, 0xbcc
/* 802B8B60 002B47C0 4C C6 31 82 */ crclr 6
/* 802B8B64 002B47C4 48 00 0A 19 */ bl WUD_DEBUGPrint
/* 802B8B68 002B47C8 3B BA 00 02 */ addi r29, r26, 2
/* 802B8B6C 002B47CC 3B 60 00 00 */ li r27, 0
/* 802B8B70 002B47D0 3A E0 00 01 */ li r23, 1
/* 802B8B74 002B47D4 3B 00 00 03 */ li r24, 3
/* 802B8B78 002B47D8 3B 20 00 06 */ li r25, 6
/* 802B8B7C 002B47DC 48 00 01 9C */ b lbl_802B8D18
lbl_802B8B80:
/* 802B8B80 002B47E0 7F A3 EB 78 */ mr r3, r29
/* 802B8B84 002B47E4 4B FF EB E1 */ bl WUDiGetDevInfo
/* 802B8B88 002B47E8 88 9D 00 00 */ lbz r4, 0(r29)
/* 802B8B8C 002B47EC 7C 7F 1B 78 */ mr r31, r3
/* 802B8B90 002B47F0 88 BD 00 01 */ lbz r5, 1(r29)
/* 802B8B94 002B47F4 38 7E 0B EC */ addi r3, r30, 0xbec
/* 802B8B98 002B47F8 88 DD 00 02 */ lbz r6, 2(r29)
/* 802B8B9C 002B47FC 88 FD 00 03 */ lbz r7, 3(r29)
/* 802B8BA0 002B4800 89 1D 00 04 */ lbz r8, 4(r29)
/* 802B8BA4 002B4804 89 3D 00 05 */ lbz r9, 5(r29)
/* 802B8BA8 002B4808 4C C6 31 82 */ crclr 6
/* 802B8BAC 002B480C 48 00 09 D1 */ bl WUD_DEBUGPrint
/* 802B8BB0 002B4810 88 1D 00 0D */ lbz r0, 0xd(r29)
/* 802B8BB4 002B4814 38 7E 0C 18 */ addi r3, r30, 0xc18
/* 802B8BB8 002B4818 90 01 00 08 */ stw r0, 8(r1)
/* 802B8BBC 002B481C 88 1D 00 0E */ lbz r0, 0xe(r29)
/* 802B8BC0 002B4820 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B8BC4 002B4824 88 1D 00 0F */ lbz r0, 0xf(r29)
/* 802B8BC8 002B4828 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B8BCC 002B482C 88 1D 00 10 */ lbz r0, 0x10(r29)
/* 802B8BD0 002B4830 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B8BD4 002B4834 88 1D 00 11 */ lbz r0, 0x11(r29)
/* 802B8BD8 002B4838 90 01 00 18 */ stw r0, 0x18(r1)
/* 802B8BDC 002B483C 88 1D 00 12 */ lbz r0, 0x12(r29)
/* 802B8BE0 002B4840 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802B8BE4 002B4844 88 1D 00 13 */ lbz r0, 0x13(r29)
/* 802B8BE8 002B4848 90 01 00 20 */ stw r0, 0x20(r1)
/* 802B8BEC 002B484C 88 1D 00 14 */ lbz r0, 0x14(r29)
/* 802B8BF0 002B4850 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B8BF4 002B4854 88 1D 00 15 */ lbz r0, 0x15(r29)
/* 802B8BF8 002B4858 90 01 00 28 */ stw r0, 0x28(r1)
/* 802B8BFC 002B485C 88 9D 00 06 */ lbz r4, 6(r29)
/* 802B8C00 002B4860 88 BD 00 07 */ lbz r5, 7(r29)
/* 802B8C04 002B4864 88 DD 00 08 */ lbz r6, 8(r29)
/* 802B8C08 002B4868 88 FD 00 09 */ lbz r7, 9(r29)
/* 802B8C0C 002B486C 89 1D 00 0A */ lbz r8, 0xa(r29)
/* 802B8C10 002B4870 89 3D 00 0B */ lbz r9, 0xb(r29)
/* 802B8C14 002B4874 89 5D 00 0C */ lbz r10, 0xc(r29)
/* 802B8C18 002B4878 4C C6 31 82 */ crclr 6
/* 802B8C1C 002B487C 48 00 09 61 */ bl WUD_DEBUGPrint
/* 802B8C20 002B4880 2C 1F 00 00 */ cmpwi r31, 0
/* 802B8C24 002B4884 40 82 00 88 */ bne lbl_802B8CAC
/* 802B8C28 002B4888 38 7E 0C 74 */ addi r3, r30, 0xc74
/* 802B8C2C 002B488C 4C C6 31 82 */ crclr 6
/* 802B8C30 002B4890 48 00 09 4D */ bl WUD_DEBUGPrint
/* 802B8C34 002B4894 4B FF EC 09 */ bl WUDiGetNewDevInfo
/* 802B8C38 002B4898 2C 03 00 00 */ cmpwi r3, 0
/* 802B8C3C 002B489C 7C 7F 1B 78 */ mr r31, r3
/* 802B8C40 002B48A0 40 82 00 38 */ bne lbl_802B8C78
/* 802B8C44 002B48A4 7F 83 E3 78 */ mr r3, r28
/* 802B8C48 002B48A8 3B 60 00 00 */ li r27, 0
/* 802B8C4C 002B48AC 7F 29 03 A6 */ mtctr r25
lbl_802B8C50:
/* 802B8C50 002B48B0 88 03 04 FD */ lbz r0, 0x4fd(r3)
/* 802B8C54 002B48B4 2C 00 00 00 */ cmpwi r0, 0
/* 802B8C58 002B48B8 40 82 00 14 */ bne lbl_802B8C6C
/* 802B8C5C 002B48BC 1C 1B 00 60 */ mulli r0, r27, 0x60
/* 802B8C60 002B48C0 7C 7C 02 14 */ add r3, r28, r0
/* 802B8C64 002B48C4 3B E3 04 A4 */ addi r31, r3, 0x4a4
/* 802B8C68 002B48C8 48 00 00 10 */ b lbl_802B8C78
lbl_802B8C6C:
/* 802B8C6C 002B48CC 38 63 00 60 */ addi r3, r3, 0x60
/* 802B8C70 002B48D0 3B 7B 00 01 */ addi r27, r27, 1
/* 802B8C74 002B48D4 42 00 FF DC */ bdnz lbl_802B8C50
lbl_802B8C78:
/* 802B8C78 002B48D8 2C 1F 00 00 */ cmpwi r31, 0
/* 802B8C7C 002B48DC 41 82 00 94 */ beq lbl_802B8D10
/* 802B8C80 002B48E0 9A FF 00 5C */ stb r23, 0x5c(r31)
/* 802B8C84 002B48E4 7F A4 EB 78 */ mr r4, r29
/* 802B8C88 002B48E8 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B8C8C 002B48EC 38 A0 00 06 */ li r5, 6
/* 802B8C90 002B48F0 9A FF 00 59 */ stb r23, 0x59(r31)
/* 802B8C94 002B48F4 4B D4 B3 6D */ bl memcpy
/* 802B8C98 002B48F8 38 7F 00 46 */ addi r3, r31, 0x46
/* 802B8C9C 002B48FC 38 9D 00 06 */ addi r4, r29, 6
/* 802B8CA0 002B4900 38 A0 00 10 */ li r5, 0x10
/* 802B8CA4 002B4904 4B D4 B3 5D */ bl memcpy
/* 802B8CA8 002B4908 48 00 00 68 */ b lbl_802B8D10
lbl_802B8CAC:
/* 802B8CAC 002B490C 7F A4 EB 78 */ mr r4, r29
/* 802B8CB0 002B4910 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B8CB4 002B4914 38 A0 00 06 */ li r5, 6
/* 802B8CB8 002B4918 4B D4 B3 49 */ bl memcpy
/* 802B8CBC 002B491C 38 7F 00 46 */ addi r3, r31, 0x46
/* 802B8CC0 002B4920 38 9D 00 06 */ addi r4, r29, 6
/* 802B8CC4 002B4924 38 A0 00 10 */ li r5, 0x10
/* 802B8CC8 002B4928 4B D4 B3 39 */ bl memcpy
/* 802B8CCC 002B492C 88 1F 00 5C */ lbz r0, 0x5c(r31)
/* 802B8CD0 002B4930 28 00 00 02 */ cmplwi r0, 2
/* 802B8CD4 002B4934 40 82 00 08 */ bne lbl_802B8CDC
/* 802B8CD8 002B4938 9B 1F 00 5C */ stb r24, 0x5c(r31)
lbl_802B8CDC:
/* 802B8CDC 002B493C 7F A4 EB 78 */ mr r4, r29
/* 802B8CE0 002B4940 38 7C 06 FC */ addi r3, r28, 0x6fc
/* 802B8CE4 002B4944 38 A0 00 06 */ li r5, 6
/* 802B8CE8 002B4948 4B D4 B3 19 */ bl memcpy
/* 802B8CEC 002B494C 88 9C 06 FC */ lbz r4, 0x6fc(r28)
/* 802B8CF0 002B4950 38 7E 0C 98 */ addi r3, r30, 0xc98
/* 802B8CF4 002B4954 88 BC 06 FD */ lbz r5, 0x6fd(r28)
/* 802B8CF8 002B4958 88 DC 06 FE */ lbz r6, 0x6fe(r28)
/* 802B8CFC 002B495C 88 FC 06 FF */ lbz r7, 0x6ff(r28)
/* 802B8D00 002B4960 89 1C 07 00 */ lbz r8, 0x700(r28)
/* 802B8D04 002B4964 89 3C 07 01 */ lbz r9, 0x701(r28)
/* 802B8D08 002B4968 4C C6 31 82 */ crclr 6
/* 802B8D0C 002B496C 48 00 08 71 */ bl WUD_DEBUGPrint
lbl_802B8D10:
/* 802B8D10 002B4970 3B BD 00 16 */ addi r29, r29, 0x16
/* 802B8D14 002B4974 3B 7B 00 01 */ addi r27, r27, 1
lbl_802B8D18:
/* 802B8D18 002B4978 88 1A 00 01 */ lbz r0, 1(r26)
/* 802B8D1C 002B497C 7C 1B 00 00 */ cmpw r27, r0
/* 802B8D20 002B4980 41 80 FE 60 */ blt lbl_802B8B80
/* 802B8D24 002B4984 48 00 00 B8 */ b lbl_802B8DDC
lbl_802B8D28:
/* 802B8D28 002B4988 38 7E 0C C0 */ addi r3, r30, 0xcc0
/* 802B8D2C 002B498C 4C C6 31 82 */ crclr 6
/* 802B8D30 002B4990 48 00 08 4D */ bl WUD_DEBUGPrint
/* 802B8D34 002B4994 88 9A 00 01 */ lbz r4, 1(r26)
/* 802B8D38 002B4998 38 7E 0C E4 */ addi r3, r30, 0xce4
/* 802B8D3C 002B499C A0 BA 00 02 */ lhz r5, 2(r26)
/* 802B8D40 002B49A0 A0 DA 00 04 */ lhz r6, 4(r26)
/* 802B8D44 002B49A4 4C C6 31 82 */ crclr 6
/* 802B8D48 002B49A8 48 00 08 35 */ bl WUD_DEBUGPrint
/* 802B8D4C 002B49AC 38 00 00 00 */ li r0, 0
/* 802B8D50 002B49B0 98 1C 00 0E */ stb r0, 0xe(r28)
/* 802B8D54 002B49B4 48 00 00 88 */ b lbl_802B8DDC
lbl_802B8D58:
/* 802B8D58 002B49B8 38 7E 0D 10 */ addi r3, r30, 0xd10
/* 802B8D5C 002B49BC 4C C6 31 82 */ crclr 6
/* 802B8D60 002B49C0 48 00 08 1D */ bl WUD_DEBUGPrint
/* 802B8D64 002B49C4 88 9A 00 01 */ lbz r4, 1(r26)
/* 802B8D68 002B49C8 38 7E 0D 34 */ addi r3, r30, 0xd34
/* 802B8D6C 002B49CC 88 BA 00 02 */ lbz r5, 2(r26)
/* 802B8D70 002B49D0 4C C6 31 82 */ crclr 6
/* 802B8D74 002B49D4 48 00 08 09 */ bl WUD_DEBUGPrint
/* 802B8D78 002B49D8 38 00 00 00 */ li r0, 0
/* 802B8D7C 002B49DC 98 1C 00 0E */ stb r0, 0xe(r28)
/* 802B8D80 002B49E0 48 00 00 5C */ b lbl_802B8DDC
lbl_802B8D84:
/* 802B8D84 002B49E4 38 7E 0D 50 */ addi r3, r30, 0xd50
/* 802B8D88 002B49E8 4C C6 31 82 */ crclr 6
/* 802B8D8C 002B49EC 48 00 07 F1 */ bl WUD_DEBUGPrint
/* 802B8D90 002B49F0 88 9A 00 01 */ lbz r4, 1(r26)
/* 802B8D94 002B49F4 38 7E 0D 34 */ addi r3, r30, 0xd34
/* 802B8D98 002B49F8 A0 BA 00 02 */ lhz r5, 2(r26)
/* 802B8D9C 002B49FC 4C C6 31 82 */ crclr 6
/* 802B8DA0 002B4A00 48 00 07 DD */ bl WUD_DEBUGPrint
/* 802B8DA4 002B4A04 A0 1A 00 02 */ lhz r0, 2(r26)
/* 802B8DA8 002B4A08 2C 00 00 00 */ cmpwi r0, 0
/* 802B8DAC 002B4A0C 40 82 00 10 */ bne lbl_802B8DBC
/* 802B8DB0 002B4A10 38 7E 0D 74 */ addi r3, r30, 0xd74
/* 802B8DB4 002B4A14 4C C6 31 82 */ crclr 6
/* 802B8DB8 002B4A18 48 00 07 C5 */ bl WUD_DEBUGPrint
lbl_802B8DBC:
/* 802B8DBC 002B4A1C 38 00 00 00 */ li r0, 0
/* 802B8DC0 002B4A20 98 1C 00 0E */ stb r0, 0xe(r28)
/* 802B8DC4 002B4A24 48 00 00 18 */ b lbl_802B8DDC
lbl_802B8DC8:
/* 802B8DC8 002B4A28 38 BE 0D 94 */ addi r5, r30, 0xd94
/* 802B8DCC 002B4A2C 38 6D 89 C0 */ addi r3, r13, lbl_8063DC80-_SDA_BASE_
/* 802B8DD0 002B4A30 38 80 0F BD */ li r4, 0xfbd
/* 802B8DD4 002B4A34 4C C6 31 82 */ crclr 6
/* 802B8DD8 002B4A38 4B FB 26 C5 */ bl OSPanic
lbl_802B8DDC:
/* 802B8DDC 002B4A3C 39 61 00 60 */ addi r11, r1, 0x60
/* 802B8DE0 002B4A40 4B F0 E3 85 */ bl _restgpr_23
/* 802B8DE4 002B4A44 80 01 00 64 */ lwz r0, 0x64(r1)
/* 802B8DE8 002B4A48 7C 08 03 A6 */ mtlr r0
/* 802B8DEC 002B4A4C 38 21 00 60 */ addi r1, r1, 0x60
/* 802B8DF0 002B4A50 4E 80 00 20 */ blr
WUDPowerManagerCallback:
/* 802B8DF4 002B4A54 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B8DF8 002B4A58 7C 08 02 A6 */ mflr r0
/* 802B8DFC 002B4A5C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B8E00 002B4A60 39 61 00 20 */ addi r11, r1, 0x20
/* 802B8E04 002B4A64 4B F0 E3 25 */ bl _savegpr_27
/* 802B8E08 002B4A68 3F C0 80 44 */ lis r30, lbl_8043E048@ha
/* 802B8E0C 002B4A6C 7C 7B 1B 78 */ mr r27, r3
/* 802B8E10 002B4A70 3B DE E0 48 */ addi r30, r30, lbl_8043E048@l
/* 802B8E14 002B4A74 7C 9C 23 78 */ mr r28, r4
/* 802B8E18 002B4A78 7C DD 33 78 */ mr r29, r6
/* 802B8E1C 002B4A7C 38 7E 0D A4 */ addi r3, r30, 0xda4
/* 802B8E20 002B4A80 4C C6 31 82 */ crclr 6
/* 802B8E24 002B4A84 48 00 07 59 */ bl WUD_DEBUGPrint
/* 802B8E28 002B4A88 7F A4 EB 78 */ mr r4, r29
/* 802B8E2C 002B4A8C 38 7E 0D C0 */ addi r3, r30, 0xdc0
/* 802B8E30 002B4A90 4C C6 31 82 */ crclr 6
/* 802B8E34 002B4A94 48 00 07 49 */ bl WUD_DEBUGPrint
/* 802B8E38 002B4A98 7F 63 DB 78 */ mr r3, r27
/* 802B8E3C 002B4A9C 4B FF E9 29 */ bl WUDiGetDevInfo
/* 802B8E40 002B4AA0 2C 03 00 00 */ cmpwi r3, 0
/* 802B8E44 002B4AA4 7C 7D 1B 78 */ mr r29, r3
/* 802B8E48 002B4AA8 40 82 00 28 */ bne lbl_802B8E70
/* 802B8E4C 002B4AAC 3F E0 80 54 */ lis r31, lbl_8053B1C8@ha
/* 802B8E50 002B4AB0 7F 64 DB 78 */ mr r4, r27
/* 802B8E54 002B4AB4 3B FF B1 C8 */ addi r31, r31, lbl_8053B1C8@l
/* 802B8E58 002B4AB8 38 A0 00 06 */ li r5, 6
/* 802B8E5C 002B4ABC 38 7F 00 40 */ addi r3, r31, 0x40
/* 802B8E60 002B4AC0 4B F1 15 39 */ bl memcmp
/* 802B8E64 002B4AC4 2C 03 00 00 */ cmpwi r3, 0
/* 802B8E68 002B4AC8 40 82 00 08 */ bne lbl_802B8E70
/* 802B8E6C 002B4ACC 7F FD FB 78 */ mr r29, r31
lbl_802B8E70:
/* 802B8E70 002B4AD0 2C 1C 00 01 */ cmpwi r28, 1
/* 802B8E74 002B4AD4 41 82 00 34 */ beq lbl_802B8EA8
/* 802B8E78 002B4AD8 40 80 00 10 */ bge lbl_802B8E88
/* 802B8E7C 002B4ADC 2C 1C 00 00 */ cmpwi r28, 0
/* 802B8E80 002B4AE0 40 80 00 14 */ bge lbl_802B8E94
/* 802B8E84 002B4AE4 48 00 00 24 */ b lbl_802B8EA8
lbl_802B8E88:
/* 802B8E88 002B4AE8 2C 1C 00 03 */ cmpwi r28, 3
/* 802B8E8C 002B4AEC 40 80 00 1C */ bge lbl_802B8EA8
/* 802B8E90 002B4AF0 48 00 00 10 */ b lbl_802B8EA0
lbl_802B8E94:
/* 802B8E94 002B4AF4 38 00 00 08 */ li r0, 8
/* 802B8E98 002B4AF8 98 1D 00 59 */ stb r0, 0x59(r29)
/* 802B8E9C 002B4AFC 48 00 00 0C */ b lbl_802B8EA8
lbl_802B8EA0:
/* 802B8EA0 002B4B00 38 00 00 09 */ li r0, 9
/* 802B8EA4 002B4B04 98 1D 00 59 */ stb r0, 0x59(r29)
lbl_802B8EA8:
/* 802B8EA8 002B4B08 88 9D 00 40 */ lbz r4, 0x40(r29)
/* 802B8EAC 002B4B0C 38 7E 0D D0 */ addi r3, r30, 0xdd0
/* 802B8EB0 002B4B10 88 BD 00 41 */ lbz r5, 0x41(r29)
/* 802B8EB4 002B4B14 88 DD 00 42 */ lbz r6, 0x42(r29)
/* 802B8EB8 002B4B18 88 FD 00 43 */ lbz r7, 0x43(r29)
/* 802B8EBC 002B4B1C 89 1D 00 44 */ lbz r8, 0x44(r29)
/* 802B8EC0 002B4B20 89 3D 00 45 */ lbz r9, 0x45(r29)
/* 802B8EC4 002B4B24 89 5D 00 59 */ lbz r10, 0x59(r29)
/* 802B8EC8 002B4B28 4C C6 31 82 */ crclr 6
/* 802B8ECC 002B4B2C 48 00 06 B1 */ bl WUD_DEBUGPrint
/* 802B8ED0 002B4B30 39 61 00 20 */ addi r11, r1, 0x20
/* 802B8ED4 002B4B34 4B F0 E2 A1 */ bl _restgpr_27
/* 802B8ED8 002B4B38 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B8EDC 002B4B3C 7C 08 03 A6 */ mtlr r0
/* 802B8EE0 002B4B40 38 21 00 20 */ addi r1, r1, 0x20
/* 802B8EE4 002B4B44 4E 80 00 20 */ blr
.global _WUDGetDevAddr
_WUDGetDevAddr:
/* 802B8EE8 002B4B48 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B8EEC 002B4B4C 7C 08 02 A6 */ mflr r0
/* 802B8EF0 002B4B50 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B8EF4 002B4B54 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B8EF8 002B4B58 7C 7F 1B 78 */ mr r31, r3
/* 802B8EFC 002B4B5C 4B FB 58 61 */ bl OSDisableInterrupts
/* 802B8F00 002B4B60 28 1F 00 10 */ cmplwi r31, 0x10
/* 802B8F04 002B4B64 40 80 00 18 */ bge lbl_802B8F1C
/* 802B8F08 002B4B68 3C 80 80 54 */ lis r4, lbl_8053B228@ha
/* 802B8F0C 002B4B6C 57 E0 15 BA */ rlwinm r0, r31, 2, 0x16, 0x1d
/* 802B8F10 002B4B70 38 84 B2 28 */ addi r4, r4, lbl_8053B228@l
/* 802B8F14 002B4B74 7F E4 00 2E */ lwzx r31, r4, r0
/* 802B8F18 002B4B78 48 00 00 08 */ b lbl_802B8F20
lbl_802B8F1C:
/* 802B8F1C 002B4B7C 3B E0 00 00 */ li r31, 0
lbl_802B8F20:
/* 802B8F20 002B4B80 4B FB 58 65 */ bl OSRestoreInterrupts
/* 802B8F24 002B4B84 7F E3 FB 78 */ mr r3, r31
/* 802B8F28 002B4B88 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B8F2C 002B4B8C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B8F30 002B4B90 7C 08 03 A6 */ mtlr r0
/* 802B8F34 002B4B94 38 21 00 10 */ addi r1, r1, 0x10
/* 802B8F38 002B4B98 4E 80 00 20 */ blr
.global _WUDGetQueuedSize
_WUDGetQueuedSize:
/* 802B8F3C 002B4B9C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B8F40 002B4BA0 7C 08 02 A6 */ mflr r0
/* 802B8F44 002B4BA4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B8F48 002B4BA8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B8F4C 002B4BAC 7C 7F 1B 78 */ mr r31, r3
/* 802B8F50 002B4BB0 4B FB 58 0D */ bl OSDisableInterrupts
/* 802B8F54 002B4BB4 7F E0 07 75 */ extsb. r0, r31
/* 802B8F58 002B4BB8 41 80 00 20 */ blt lbl_802B8F78
/* 802B8F5C 002B4BBC 2C 00 00 10 */ cmpwi r0, 0x10
/* 802B8F60 002B4BC0 40 80 00 18 */ bge lbl_802B8F78
/* 802B8F64 002B4BC4 3C 80 80 54 */ lis r4, lbl_8053C280@ha
/* 802B8F68 002B4BC8 54 00 08 3C */ slwi r0, r0, 1
/* 802B8F6C 002B4BCC 38 84 C2 80 */ addi r4, r4, lbl_8053C280@l
/* 802B8F70 002B4BD0 7F E4 02 2E */ lhzx r31, r4, r0
/* 802B8F74 002B4BD4 48 00 00 08 */ b lbl_802B8F7C
lbl_802B8F78:
/* 802B8F78 002B4BD8 3B E0 00 00 */ li r31, 0
lbl_802B8F7C:
/* 802B8F7C 002B4BDC 4B FB 58 09 */ bl OSRestoreInterrupts
/* 802B8F80 002B4BE0 7F E3 FB 78 */ mr r3, r31
/* 802B8F84 002B4BE4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B8F88 002B4BE8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B8F8C 002B4BEC 7C 08 03 A6 */ mtlr r0
/* 802B8F90 002B4BF0 38 21 00 10 */ addi r1, r1, 0x10
/* 802B8F94 002B4BF4 4E 80 00 20 */ blr
.global _WUDGetNotAckedSize
_WUDGetNotAckedSize:
/* 802B8F98 002B4BF8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B8F9C 002B4BFC 7C 08 02 A6 */ mflr r0
/* 802B8FA0 002B4C00 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B8FA4 002B4C04 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B8FA8 002B4C08 7C 7F 1B 78 */ mr r31, r3
/* 802B8FAC 002B4C0C 4B FB 57 B1 */ bl OSDisableInterrupts
/* 802B8FB0 002B4C10 7F E0 07 75 */ extsb. r0, r31
/* 802B8FB4 002B4C14 41 80 00 20 */ blt lbl_802B8FD4
/* 802B8FB8 002B4C18 2C 00 00 10 */ cmpwi r0, 0x10
/* 802B8FBC 002B4C1C 40 80 00 18 */ bge lbl_802B8FD4
/* 802B8FC0 002B4C20 3C 80 80 54 */ lis r4, lbl_8053C2A0@ha
/* 802B8FC4 002B4C24 54 00 08 3C */ slwi r0, r0, 1
/* 802B8FC8 002B4C28 38 84 C2 A0 */ addi r4, r4, lbl_8053C2A0@l
/* 802B8FCC 002B4C2C 7F E4 02 2E */ lhzx r31, r4, r0
/* 802B8FD0 002B4C30 48 00 00 08 */ b lbl_802B8FD8
lbl_802B8FD4:
/* 802B8FD4 002B4C34 3B E0 00 00 */ li r31, 0
lbl_802B8FD8:
/* 802B8FD8 002B4C38 4B FB 57 AD */ bl OSRestoreInterrupts
/* 802B8FDC 002B4C3C 7F E3 FB 78 */ mr r3, r31
/* 802B8FE0 002B4C40 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B8FE4 002B4C44 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B8FE8 002B4C48 7C 08 03 A6 */ mtlr r0
/* 802B8FEC 002B4C4C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B8FF0 002B4C50 4E 80 00 20 */ blr
.global _WUDGetLinkNumber
_WUDGetLinkNumber:
/* 802B8FF4 002B4C54 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B8FF8 002B4C58 7C 08 02 A6 */ mflr r0
/* 802B8FFC 002B4C5C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B9000 002B4C60 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B9004 002B4C64 4B FB 57 59 */ bl OSDisableInterrupts
/* 802B9008 002B4C68 3C 80 80 54 */ lis r4, lbl_8053A4E0@ha
/* 802B900C 002B4C6C 38 84 A4 E0 */ addi r4, r4, lbl_8053A4E0@l
/* 802B9010 002B4C70 8B E4 06 E5 */ lbz r31, 0x6e5(r4)
/* 802B9014 002B4C74 4B FB 57 71 */ bl OSRestoreInterrupts
/* 802B9018 002B4C78 7F E3 FB 78 */ mr r3, r31
/* 802B901C 002B4C7C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B9020 002B4C80 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B9024 002B4C84 7C 08 03 A6 */ mtlr r0
/* 802B9028 002B4C88 38 21 00 10 */ addi r1, r1, 0x10
/* 802B902C 002B4C8C 4E 80 00 20 */ blr
|