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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global btm_acl_init
btm_acl_init:
/* 802C342C 002BF08C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3430 002BF090 38 80 7D 00 */ li r4, 0x7d00
/* 802C3434 002BF094 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3438 002BF098 38 00 00 FF */ li r0, 0xff
/* 802C343C 002BF09C B0 83 04 C6 */ sth r4, 0x4c6(r3)
/* 802C3440 002BF0A0 98 03 27 BF */ stb r0, 0x27bf(r3)
/* 802C3444 002BF0A4 4E 80 00 20 */ blr
.global btm_handle_to_acl_index
btm_handle_to_acl_index:
/* 802C3448 002BF0A8 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C344C 002BF0AC 38 A0 00 00 */ li r5, 0
/* 802C3450 002BF0B0 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C3454 002BF0B4 88 04 01 4D */ lbz r0, 0x14d(r4)
/* 802C3458 002BF0B8 2C 00 00 00 */ cmpwi r0, 0
/* 802C345C 002BF0BC 41 82 00 10 */ beq lbl_802C346C
/* 802C3460 002BF0C0 A0 04 00 34 */ lhz r0, 0x34(r4)
/* 802C3464 002BF0C4 7C 00 18 40 */ cmplw r0, r3
/* 802C3468 002BF0C8 41 82 00 5C */ beq lbl_802C34C4
lbl_802C346C:
/* 802C346C 002BF0CC 88 04 02 69 */ lbz r0, 0x269(r4)
/* 802C3470 002BF0D0 38 A0 00 01 */ li r5, 1
/* 802C3474 002BF0D4 2C 00 00 00 */ cmpwi r0, 0
/* 802C3478 002BF0D8 41 82 00 10 */ beq lbl_802C3488
/* 802C347C 002BF0DC A0 04 01 50 */ lhz r0, 0x150(r4)
/* 802C3480 002BF0E0 7C 00 18 40 */ cmplw r0, r3
/* 802C3484 002BF0E4 41 82 00 40 */ beq lbl_802C34C4
lbl_802C3488:
/* 802C3488 002BF0E8 88 04 03 85 */ lbz r0, 0x385(r4)
/* 802C348C 002BF0EC 38 A0 00 02 */ li r5, 2
/* 802C3490 002BF0F0 2C 00 00 00 */ cmpwi r0, 0
/* 802C3494 002BF0F4 41 82 00 10 */ beq lbl_802C34A4
/* 802C3498 002BF0F8 A0 04 02 6C */ lhz r0, 0x26c(r4)
/* 802C349C 002BF0FC 7C 00 18 40 */ cmplw r0, r3
/* 802C34A0 002BF100 41 82 00 24 */ beq lbl_802C34C4
lbl_802C34A4:
/* 802C34A4 002BF104 88 04 04 A1 */ lbz r0, 0x4a1(r4)
/* 802C34A8 002BF108 38 A0 00 03 */ li r5, 3
/* 802C34AC 002BF10C 2C 00 00 00 */ cmpwi r0, 0
/* 802C34B0 002BF110 41 82 00 10 */ beq lbl_802C34C0
/* 802C34B4 002BF114 A0 04 03 88 */ lhz r0, 0x388(r4)
/* 802C34B8 002BF118 7C 00 18 40 */ cmplw r0, r3
/* 802C34BC 002BF11C 41 82 00 08 */ beq lbl_802C34C4
lbl_802C34C0:
/* 802C34C0 002BF120 38 A0 00 04 */ li r5, 4
lbl_802C34C4:
/* 802C34C4 002BF124 7C A3 2B 78 */ mr r3, r5
/* 802C34C8 002BF128 4E 80 00 20 */ blr
.global btm_acl_created
btm_acl_created:
/* 802C34CC 002BF12C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802C34D0 002BF130 7C 08 02 A6 */ mflr r0
/* 802C34D4 002BF134 90 01 00 34 */ stw r0, 0x34(r1)
/* 802C34D8 002BF138 39 61 00 30 */ addi r11, r1, 0x30
/* 802C34DC 002BF13C 4B F0 3C 45 */ bl _savegpr_25
/* 802C34E0 002BF140 3D 00 80 57 */ lis r8, lbl_80568B78@ha
/* 802C34E4 002BF144 7C 7E 1B 78 */ mr r30, r3
/* 802C34E8 002BF148 39 08 8B 78 */ addi r8, r8, lbl_80568B78@l
/* 802C34EC 002BF14C 7C 99 23 78 */ mr r25, r4
/* 802C34F0 002BF150 7C BA 2B 78 */ mr r26, r5
/* 802C34F4 002BF154 7C DB 33 78 */ mr r27, r6
/* 802C34F8 002BF158 7C FC 3B 78 */ mr r28, r7
/* 802C34FC 002BF15C 3B A8 00 34 */ addi r29, r8, 0x34
/* 802C3500 002BF160 3B E0 00 00 */ li r31, 0
lbl_802C3504:
/* 802C3504 002BF164 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C3508 002BF168 2C 00 00 00 */ cmpwi r0, 0
/* 802C350C 002BF16C 41 82 00 20 */ beq lbl_802C352C
/* 802C3510 002BF170 7F C4 F3 78 */ mr r4, r30
/* 802C3514 002BF174 38 7D 00 08 */ addi r3, r29, 8
/* 802C3518 002BF178 38 A0 00 06 */ li r5, 6
/* 802C351C 002BF17C 4B F0 6E 7D */ bl memcmp
/* 802C3520 002BF180 2C 03 00 00 */ cmpwi r3, 0
/* 802C3524 002BF184 40 82 00 08 */ bne lbl_802C352C
/* 802C3528 002BF188 48 00 00 18 */ b lbl_802C3540
lbl_802C352C:
/* 802C352C 002BF18C 3B FF 00 01 */ addi r31, r31, 1
/* 802C3530 002BF190 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C3534 002BF194 28 1F 00 04 */ cmplwi r31, 4
/* 802C3538 002BF198 41 80 FF CC */ blt lbl_802C3504
/* 802C353C 002BF19C 3B A0 00 00 */ li r29, 0
lbl_802C3540:
/* 802C3540 002BF1A0 2C 1D 00 00 */ cmpwi r29, 0
/* 802C3544 002BF1A4 41 82 00 50 */ beq lbl_802C3594
/* 802C3548 002BF1A8 B3 7D 00 00 */ sth r27, 0(r29)
/* 802C354C 002BF1AC 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3550 002BF1B0 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3554 002BF1B4 9B 9D 01 1A */ stb r28, 0x11a(r29)
/* 802C3558 002BF1B8 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C355C 002BF1BC 28 00 00 04 */ cmplwi r0, 4
/* 802C3560 002BF1C0 41 80 02 68 */ blt lbl_802C37C8
/* 802C3564 002BF1C4 3C 60 00 0D */ lis r3, 0x000D0003@ha
/* 802C3568 002BF1C8 3C 80 80 44 */ lis r4, lbl_80440CC0@ha
/* 802C356C 002BF1CC 88 BE 00 00 */ lbz r5, 0(r30)
/* 802C3570 002BF1D0 38 63 00 03 */ addi r3, r3, 0x000D0003@l
/* 802C3574 002BF1D4 88 DE 00 01 */ lbz r6, 1(r30)
/* 802C3578 002BF1D8 38 84 0C C0 */ addi r4, r4, lbl_80440CC0@l
/* 802C357C 002BF1DC 88 FE 00 02 */ lbz r7, 2(r30)
/* 802C3580 002BF1E0 89 1E 00 03 */ lbz r8, 3(r30)
/* 802C3584 002BF1E4 89 3E 00 04 */ lbz r9, 4(r30)
/* 802C3588 002BF1E8 89 5E 00 05 */ lbz r10, 5(r30)
/* 802C358C 002BF1EC 4B FF 9A 15 */ bl LogMsg_6
/* 802C3590 002BF1F0 48 00 02 38 */ b lbl_802C37C8
lbl_802C3594:
/* 802C3594 002BF1F4 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3598 002BF1F8 38 00 00 04 */ li r0, 4
/* 802C359C 002BF1FC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C35A0 002BF200 38 80 00 00 */ li r4, 0
/* 802C35A4 002BF204 3B E3 00 34 */ addi r31, r3, 0x34
/* 802C35A8 002BF208 7C 09 03 A6 */ mtctr r0
lbl_802C35AC:
/* 802C35AC 002BF20C 88 1F 01 19 */ lbz r0, 0x119(r31)
/* 802C35B0 002BF210 2C 00 00 00 */ cmpwi r0, 0
/* 802C35B4 002BF214 40 82 02 08 */ bne lbl_802C37BC
/* 802C35B8 002BF218 38 60 00 01 */ li r3, 1
/* 802C35BC 002BF21C 38 00 00 00 */ li r0, 0
/* 802C35C0 002BF220 98 7F 01 19 */ stb r3, 0x119(r31)
/* 802C35C4 002BF224 54 83 06 3E */ clrlwi r3, r4, 0x18
/* 802C35C8 002BF228 B3 7F 00 00 */ sth r27, 0(r31)
/* 802C35CC 002BF22C 9B 9F 01 1A */ stb r28, 0x11a(r31)
/* 802C35D0 002BF230 B0 1F 00 04 */ sth r0, 4(r31)
/* 802C35D4 002BF234 48 00 5B D5 */ bl btm_pm_sm_alloc
/* 802C35D8 002BF238 7F C4 F3 78 */ mr r4, r30
/* 802C35DC 002BF23C 38 7F 00 08 */ addi r3, r31, 8
/* 802C35E0 002BF240 38 A0 00 06 */ li r5, 6
/* 802C35E4 002BF244 4B D4 0A 1D */ bl memcpy
/* 802C35E8 002BF248 2C 19 00 00 */ cmpwi r25, 0
/* 802C35EC 002BF24C 41 82 00 14 */ beq lbl_802C3600
/* 802C35F0 002BF250 7F 24 CB 78 */ mr r4, r25
/* 802C35F4 002BF254 38 7F 00 0E */ addi r3, r31, 0xe
/* 802C35F8 002BF258 38 A0 00 03 */ li r5, 3
/* 802C35FC 002BF25C 4B D4 0A 05 */ bl memcpy
lbl_802C3600:
/* 802C3600 002BF260 2C 1A 00 00 */ cmpwi r26, 0
/* 802C3604 002BF264 41 82 00 14 */ beq lbl_802C3618
/* 802C3608 002BF268 7F 44 D3 78 */ mr r4, r26
/* 802C360C 002BF26C 38 7F 00 11 */ addi r3, r31, 0x11
/* 802C3610 002BF270 38 A0 00 F8 */ li r5, 0xf8
/* 802C3614 002BF274 4B D4 09 ED */ bl memcpy
lbl_802C3618:
/* 802C3618 002BF278 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C361C 002BF27C 48 00 D5 11 */ bl btsnd_hcic_read_rmt_clk_offset
/* 802C3620 002BF280 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C3624 002BF284 48 00 D4 8D */ bl btsnd_hcic_rmt_ver_req
/* 802C3628 002BF288 7F 63 DB 78 */ mr r3, r27
/* 802C362C 002BF28C 48 00 1F 39 */ bl btm_find_dev_by_handle
/* 802C3630 002BF290 2C 03 00 00 */ cmpwi r3, 0
/* 802C3634 002BF294 7C 65 1B 78 */ mr r5, r3
/* 802C3638 002BF298 41 82 01 78 */ beq lbl_802C37B0
/* 802C363C 002BF29C 38 00 00 08 */ li r0, 8
/* 802C3640 002BF2A0 38 C0 00 00 */ li r6, 0
/* 802C3644 002BF2A4 7C 09 03 A6 */ mtctr r0
lbl_802C3648:
/* 802C3648 002BF2A8 54 C0 06 3E */ clrlwi r0, r6, 0x18
/* 802C364C 002BF2AC 7C 83 02 14 */ add r4, r3, r0
/* 802C3650 002BF2B0 88 04 00 77 */ lbz r0, 0x77(r4)
/* 802C3654 002BF2B4 2C 00 00 00 */ cmpwi r0, 0
/* 802C3658 002BF2B8 41 82 01 50 */ beq lbl_802C37A8
/* 802C365C 002BF2BC 38 85 00 77 */ addi r4, r5, 0x77
/* 802C3660 002BF2C0 38 7F 01 10 */ addi r3, r31, 0x110
/* 802C3664 002BF2C4 38 A0 00 08 */ li r5, 8
/* 802C3668 002BF2C8 4B D4 09 99 */ bl memcpy
/* 802C366C 002BF2CC 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3670 002BF2D0 38 00 CC F9 */ li r0, -13063
/* 802C3674 002BF2D4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3678 002BF2D8 A0 A3 06 54 */ lhz r5, 0x654(r3)
/* 802C367C 002BF2DC 88 63 06 36 */ lbz r3, 0x636(r3)
/* 802C3680 002BF2E0 70 A4 CC 18 */ andi. r4, r5, 0xcc18
/* 802C3684 002BF2E4 28 03 00 03 */ cmplwi r3, 3
/* 802C3688 002BF2E8 7C 9E 00 38 */ and r30, r4, r0
/* 802C368C 002BF2EC 41 80 00 10 */ blt lbl_802C369C
/* 802C3690 002BF2F0 70 A0 33 06 */ andi. r0, r5, 0x3306
/* 802C3694 002BF2F4 7C 80 03 78 */ or r0, r4, r0
/* 802C3698 002BF2F8 54 1E 04 3E */ clrlwi r30, r0, 0x10
lbl_802C369C:
/* 802C369C 002BF2FC 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C36A0 002BF300 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C36A4 002BF304 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C36A8 002BF308 28 00 00 04 */ cmplwi r0, 4
/* 802C36AC 002BF30C 41 80 00 1C */ blt lbl_802C36C8
/* 802C36B0 002BF310 3C 60 00 0D */ lis r3, 0x000D0003@ha
/* 802C36B4 002BF314 3C 80 80 44 */ lis r4, lbl_80440D00@ha
/* 802C36B8 002BF318 38 63 00 03 */ addi r3, r3, 0x000D0003@l
/* 802C36BC 002BF31C 57 C5 04 3E */ clrlwi r5, r30, 0x10
/* 802C36C0 002BF320 38 84 0D 00 */ addi r4, r4, lbl_80440D00@l
/* 802C36C4 002BF324 4B FF 98 65 */ bl LogMsg_1
lbl_802C36C8:
/* 802C36C8 002BF328 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C36CC 002BF32C 57 C4 04 3E */ clrlwi r4, r30, 0x10
/* 802C36D0 002BF330 48 00 D0 55 */ bl btsnd_hcic_change_conn_type
/* 802C36D4 002BF334 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C36D8 002BF338 41 82 00 08 */ beq lbl_802C36E0
/* 802C36DC 002BF33C B3 DF 00 02 */ sth r30, 2(r31)
lbl_802C36E0:
/* 802C36E0 002BF340 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C36E4 002BF344 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C36E8 002BF348 A0 04 04 C4 */ lhz r0, 0x4c4(r4)
/* 802C36EC 002BF34C 2C 00 00 00 */ cmpwi r0, 0
/* 802C36F0 002BF350 41 82 00 10 */ beq lbl_802C3700
/* 802C36F4 002BF354 38 7F 00 08 */ addi r3, r31, 8
/* 802C36F8 002BF358 38 84 04 C4 */ addi r4, r4, 0x4c4
/* 802C36FC 002BF35C 48 00 05 99 */ bl BTM_SetLinkPolicy
lbl_802C3700:
/* 802C3700 002BF360 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3704 002BF364 3B A0 00 00 */ li r29, 0
/* 802C3708 002BF368 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C370C 002BF36C A3 83 04 C6 */ lhz r28, 0x4c6(r3)
/* 802C3710 002BF370 3B C3 00 34 */ addi r30, r3, 0x34
lbl_802C3714:
/* 802C3714 002BF374 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C3718 002BF378 2C 00 00 00 */ cmpwi r0, 0
/* 802C371C 002BF37C 41 82 00 20 */ beq lbl_802C373C
/* 802C3720 002BF380 38 7E 00 08 */ addi r3, r30, 8
/* 802C3724 002BF384 38 9F 00 08 */ addi r4, r31, 8
/* 802C3728 002BF388 38 A0 00 06 */ li r5, 6
/* 802C372C 002BF38C 4B F0 6C 6D */ bl memcmp
/* 802C3730 002BF390 2C 03 00 00 */ cmpwi r3, 0
/* 802C3734 002BF394 40 82 00 08 */ bne lbl_802C373C
/* 802C3738 002BF398 48 00 00 18 */ b lbl_802C3750
lbl_802C373C:
/* 802C373C 002BF39C 3B BD 00 01 */ addi r29, r29, 1
/* 802C3740 002BF3A0 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C3744 002BF3A4 28 1D 00 04 */ cmplwi r29, 4
/* 802C3748 002BF3A8 41 80 FF CC */ blt lbl_802C3714
/* 802C374C 002BF3AC 3B C0 00 00 */ li r30, 0
lbl_802C3750:
/* 802C3750 002BF3B0 2C 1E 00 00 */ cmpwi r30, 0
/* 802C3754 002BF3B4 41 82 00 20 */ beq lbl_802C3774
/* 802C3758 002BF3B8 B3 9E 01 0E */ sth r28, 0x10e(r30)
/* 802C375C 002BF3BC 88 1E 01 1A */ lbz r0, 0x11a(r30)
/* 802C3760 002BF3C0 2C 00 00 00 */ cmpwi r0, 0
/* 802C3764 002BF3C4 40 82 00 10 */ bne lbl_802C3774
/* 802C3768 002BF3C8 A0 7E 00 00 */ lhz r3, 0(r30)
/* 802C376C 002BF3CC 7F 84 E3 78 */ mr r4, r28
/* 802C3770 002BF3D0 48 00 E4 B5 */ bl btsnd_hcic_write_link_super_tout
lbl_802C3774:
/* 802C3774 002BF3D4 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3778 002BF3D8 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C377C 002BF3DC 81 83 04 C8 */ lwz r12, 0x4c8(r3)
/* 802C3780 002BF3E0 2C 0C 00 00 */ cmpwi r12, 0
/* 802C3784 002BF3E4 41 82 00 44 */ beq lbl_802C37C8
/* 802C3788 002BF3E8 38 7F 00 08 */ addi r3, r31, 8
/* 802C378C 002BF3EC 38 9F 00 0E */ addi r4, r31, 0xe
/* 802C3790 002BF3F0 38 BF 00 11 */ addi r5, r31, 0x11
/* 802C3794 002BF3F4 38 DF 01 10 */ addi r6, r31, 0x110
/* 802C3798 002BF3F8 38 E0 00 01 */ li r7, 1
/* 802C379C 002BF3FC 7D 89 03 A6 */ mtctr r12
/* 802C37A0 002BF400 4E 80 04 21 */ bctrl
/* 802C37A4 002BF404 48 00 00 24 */ b lbl_802C37C8
lbl_802C37A8:
/* 802C37A8 002BF408 38 C6 00 01 */ addi r6, r6, 1
/* 802C37AC 002BF40C 42 00 FE 9C */ bdnz lbl_802C3648
lbl_802C37B0:
/* 802C37B0 002BF410 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C37B4 002BF414 48 00 D2 81 */ bl btsnd_hcic_rmt_features_req
/* 802C37B8 002BF418 48 00 00 10 */ b lbl_802C37C8
lbl_802C37BC:
/* 802C37BC 002BF41C 38 84 00 01 */ addi r4, r4, 1
/* 802C37C0 002BF420 3B FF 01 1C */ addi r31, r31, 0x11c
/* 802C37C4 002BF424 42 00 FD E8 */ bdnz lbl_802C35AC
lbl_802C37C8:
/* 802C37C8 002BF428 39 61 00 30 */ addi r11, r1, 0x30
/* 802C37CC 002BF42C 4B F0 39 A1 */ bl _restgpr_25
/* 802C37D0 002BF430 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802C37D4 002BF434 7C 08 03 A6 */ mtlr r0
/* 802C37D8 002BF438 38 21 00 30 */ addi r1, r1, 0x30
/* 802C37DC 002BF43C 4E 80 00 20 */ blr
.global btm_acl_removed
btm_acl_removed:
/* 802C37E0 002BF440 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C37E4 002BF444 7C 08 02 A6 */ mflr r0
/* 802C37E8 002BF448 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C37EC 002BF44C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C37F0 002BF450 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C37F4 002BF454 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C37F8 002BF458 3B E0 00 00 */ li r31, 0
/* 802C37FC 002BF45C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C3800 002BF460 3B C4 00 34 */ addi r30, r4, 0x34
/* 802C3804 002BF464 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C3808 002BF468 7C 7D 1B 78 */ mr r29, r3
lbl_802C380C:
/* 802C380C 002BF46C 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C3810 002BF470 2C 00 00 00 */ cmpwi r0, 0
/* 802C3814 002BF474 41 82 00 20 */ beq lbl_802C3834
/* 802C3818 002BF478 7F A4 EB 78 */ mr r4, r29
/* 802C381C 002BF47C 38 7E 00 08 */ addi r3, r30, 8
/* 802C3820 002BF480 38 A0 00 06 */ li r5, 6
/* 802C3824 002BF484 4B F0 6B 75 */ bl memcmp
/* 802C3828 002BF488 2C 03 00 00 */ cmpwi r3, 0
/* 802C382C 002BF48C 40 82 00 08 */ bne lbl_802C3834
/* 802C3830 002BF490 48 00 00 18 */ b lbl_802C3848
lbl_802C3834:
/* 802C3834 002BF494 3B FF 00 01 */ addi r31, r31, 1
/* 802C3838 002BF498 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C383C 002BF49C 28 1F 00 04 */ cmplwi r31, 4
/* 802C3840 002BF4A0 41 80 FF CC */ blt lbl_802C380C
/* 802C3844 002BF4A4 3B C0 00 00 */ li r30, 0
lbl_802C3848:
/* 802C3848 002BF4A8 2C 1E 00 00 */ cmpwi r30, 0
/* 802C384C 002BF4AC 41 82 00 3C */ beq lbl_802C3888
/* 802C3850 002BF4B0 38 00 00 00 */ li r0, 0
/* 802C3854 002BF4B4 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3858 002BF4B8 98 1E 01 19 */ stb r0, 0x119(r30)
/* 802C385C 002BF4BC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3860 002BF4C0 81 83 04 C8 */ lwz r12, 0x4c8(r3)
/* 802C3864 002BF4C4 2C 0C 00 00 */ cmpwi r12, 0
/* 802C3868 002BF4C8 41 82 00 20 */ beq lbl_802C3888
/* 802C386C 002BF4CC 7F A3 EB 78 */ mr r3, r29
/* 802C3870 002BF4D0 38 80 00 00 */ li r4, 0
/* 802C3874 002BF4D4 38 A0 00 00 */ li r5, 0
/* 802C3878 002BF4D8 38 C0 00 00 */ li r6, 0
/* 802C387C 002BF4DC 38 E0 00 00 */ li r7, 0
/* 802C3880 002BF4E0 7D 89 03 A6 */ mtctr r12
/* 802C3884 002BF4E4 4E 80 04 21 */ bctrl
lbl_802C3888:
/* 802C3888 002BF4E8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C388C 002BF4EC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C3890 002BF4F0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C3894 002BF4F4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C3898 002BF4F8 7C 08 03 A6 */ mtlr r0
/* 802C389C 002BF4FC 38 21 00 20 */ addi r1, r1, 0x20
/* 802C38A0 002BF500 4E 80 00 20 */ blr
.global btm_acl_device_down
btm_acl_device_down:
/* 802C38A4 002BF504 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802C38A8 002BF508 7C 08 02 A6 */ mflr r0
/* 802C38AC 002BF50C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C38B0 002BF510 90 01 00 14 */ stw r0, 0x14(r1)
/* 802C38B4 002BF514 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C38B8 002BF518 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802C38BC 002BF51C 3B E3 00 34 */ addi r31, r3, 0x34
/* 802C38C0 002BF520 93 C1 00 08 */ stw r30, 8(r1)
/* 802C38C4 002BF524 3B C0 00 00 */ li r30, 0
lbl_802C38C8:
/* 802C38C8 002BF528 88 1F 01 19 */ lbz r0, 0x119(r31)
/* 802C38CC 002BF52C 2C 00 00 00 */ cmpwi r0, 0
/* 802C38D0 002BF530 41 82 00 10 */ beq lbl_802C38E0
/* 802C38D4 002BF534 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C38D8 002BF538 38 80 00 03 */ li r4, 3
/* 802C38DC 002BF53C 48 01 44 3D */ bl l2c_link_hci_disc_comp
lbl_802C38E0:
/* 802C38E0 002BF540 3B DE 00 01 */ addi r30, r30, 1
/* 802C38E4 002BF544 3B FF 01 1C */ addi r31, r31, 0x11c
/* 802C38E8 002BF548 28 1E 00 04 */ cmplwi r30, 4
/* 802C38EC 002BF54C 41 80 FF DC */ blt lbl_802C38C8
/* 802C38F0 002BF550 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802C38F4 002BF554 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802C38F8 002BF558 83 C1 00 08 */ lwz r30, 8(r1)
/* 802C38FC 002BF55C 7C 08 03 A6 */ mtlr r0
/* 802C3900 002BF560 38 21 00 10 */ addi r1, r1, 0x10
/* 802C3904 002BF564 4E 80 00 20 */ blr
.global BTM_SwitchRole
BTM_SwitchRole:
/* 802C3908 002BF568 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802C390C 002BF56C 7C 08 02 A6 */ mflr r0
/* 802C3910 002BF570 90 01 00 34 */ stw r0, 0x34(r1)
/* 802C3914 002BF574 39 61 00 30 */ addi r11, r1, 0x30
/* 802C3918 002BF578 4B F0 38 11 */ bl _savegpr_27
/* 802C391C 002BF57C 3C C0 80 57 */ lis r6, lbl_80568B78@ha
/* 802C3920 002BF580 7C 7C 1B 78 */ mr r28, r3
/* 802C3924 002BF584 38 C6 8B 78 */ addi r6, r6, lbl_80568B78@l
/* 802C3928 002BF588 7C 9D 23 78 */ mr r29, r4
/* 802C392C 002BF58C 88 06 06 40 */ lbz r0, 0x640(r6)
/* 802C3930 002BF590 7C BE 2B 78 */ mr r30, r5
/* 802C3934 002BF594 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 802C3938 002BF598 40 82 00 0C */ bne lbl_802C3944
/* 802C393C 002BF59C 38 60 00 04 */ li r3, 4
/* 802C3940 002BF5A0 48 00 01 CC */ b lbl_802C3B0C
lbl_802C3944:
/* 802C3944 002BF5A4 3B E6 00 34 */ addi r31, r6, 0x34
/* 802C3948 002BF5A8 3B 60 00 00 */ li r27, 0
lbl_802C394C:
/* 802C394C 002BF5AC 88 1F 01 19 */ lbz r0, 0x119(r31)
/* 802C3950 002BF5B0 2C 00 00 00 */ cmpwi r0, 0
/* 802C3954 002BF5B4 41 82 00 20 */ beq lbl_802C3974
/* 802C3958 002BF5B8 7F 84 E3 78 */ mr r4, r28
/* 802C395C 002BF5BC 38 7F 00 08 */ addi r3, r31, 8
/* 802C3960 002BF5C0 38 A0 00 06 */ li r5, 6
/* 802C3964 002BF5C4 4B F0 6A 35 */ bl memcmp
/* 802C3968 002BF5C8 2C 03 00 00 */ cmpwi r3, 0
/* 802C396C 002BF5CC 40 82 00 08 */ bne lbl_802C3974
/* 802C3970 002BF5D0 48 00 00 18 */ b lbl_802C3988
lbl_802C3974:
/* 802C3974 002BF5D4 3B 7B 00 01 */ addi r27, r27, 1
/* 802C3978 002BF5D8 3B FF 01 1C */ addi r31, r31, 0x11c
/* 802C397C 002BF5DC 28 1B 00 04 */ cmplwi r27, 4
/* 802C3980 002BF5E0 41 80 FF CC */ blt lbl_802C394C
/* 802C3984 002BF5E4 3B E0 00 00 */ li r31, 0
lbl_802C3988:
/* 802C3988 002BF5E8 2C 1F 00 00 */ cmpwi r31, 0
/* 802C398C 002BF5EC 40 82 00 0C */ bne lbl_802C3998
/* 802C3990 002BF5F0 38 60 00 07 */ li r3, 7
/* 802C3994 002BF5F4 48 00 01 78 */ b lbl_802C3B0C
lbl_802C3998:
/* 802C3998 002BF5F8 88 1F 01 1A */ lbz r0, 0x11a(r31)
/* 802C399C 002BF5FC 7C 00 E8 40 */ cmplw r0, r29
/* 802C39A0 002BF600 40 82 00 0C */ bne lbl_802C39AC
/* 802C39A4 002BF604 38 60 00 00 */ li r3, 0
/* 802C39A8 002BF608 48 00 01 64 */ b lbl_802C3B0C
lbl_802C39AC:
/* 802C39AC 002BF60C 7F 83 E3 78 */ mr r3, r28
/* 802C39B0 002BF610 48 00 6E 81 */ bl btm_is_sco_active_by_bdaddr
/* 802C39B4 002BF614 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802C39B8 002BF618 28 00 00 01 */ cmplwi r0, 1
/* 802C39BC 002BF61C 40 82 00 0C */ bne lbl_802C39C8
/* 802C39C0 002BF620 38 60 00 03 */ li r3, 3
/* 802C39C4 002BF624 48 00 01 48 */ b lbl_802C3B0C
lbl_802C39C8:
/* 802C39C8 002BF628 88 1F 01 1B */ lbz r0, 0x11b(r31)
/* 802C39CC 002BF62C 2C 00 00 00 */ cmpwi r0, 0
/* 802C39D0 002BF630 41 82 00 34 */ beq lbl_802C3A04
/* 802C39D4 002BF634 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C39D8 002BF638 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C39DC 002BF63C 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C39E0 002BF640 28 00 00 05 */ cmplwi r0, 5
/* 802C39E4 002BF644 41 80 00 18 */ blt lbl_802C39FC
/* 802C39E8 002BF648 3C 60 00 0D */ lis r3, 0x000D0004@ha
/* 802C39EC 002BF64C 3C 80 80 44 */ lis r4, lbl_80440D20@ha
/* 802C39F0 002BF650 38 63 00 04 */ addi r3, r3, 0x000D0004@l
/* 802C39F4 002BF654 38 84 0D 20 */ addi r4, r4, lbl_80440D20@l
/* 802C39F8 002BF658 4B FF 95 19 */ bl LogMsg_0
lbl_802C39FC:
/* 802C39FC 002BF65C 38 60 00 02 */ li r3, 2
/* 802C3A00 002BF660 48 00 01 0C */ b lbl_802C3B0C
lbl_802C3A04:
/* 802C3A04 002BF664 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3A08 002BF668 38 80 00 00 */ li r4, 0
/* 802C3A0C 002BF66C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3A10 002BF670 38 A0 00 08 */ li r5, 8
/* 802C3A14 002BF674 38 63 06 24 */ addi r3, r3, 0x624
/* 802C3A18 002BF678 4B D4 06 ED */ bl memset
/* 802C3A1C 002BF67C 38 7F 00 08 */ addi r3, r31, 8
/* 802C3A20 002BF680 38 81 00 08 */ addi r4, r1, 8
/* 802C3A24 002BF684 48 00 56 55 */ bl BTM_ReadPowerMode
/* 802C3A28 002BF688 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C3A2C 002BF68C 41 82 00 08 */ beq lbl_802C3A34
/* 802C3A30 002BF690 48 00 00 DC */ b lbl_802C3B0C
lbl_802C3A34:
/* 802C3A34 002BF694 88 61 00 08 */ lbz r3, 8(r1)
/* 802C3A38 002BF698 38 03 00 FE */ addi r0, r3, 0xfe
/* 802C3A3C 002BF69C 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 802C3A40 002BF6A0 28 00 00 01 */ cmplwi r0, 1
/* 802C3A44 002BF6A4 41 81 00 3C */ bgt lbl_802C3A80
/* 802C3A48 002BF6A8 38 00 00 00 */ li r0, 0
/* 802C3A4C 002BF6AC 38 9F 00 08 */ addi r4, r31, 8
/* 802C3A50 002BF6B0 98 01 00 14 */ stb r0, 0x14(r1)
/* 802C3A54 002BF6B4 38 A1 00 0C */ addi r5, r1, 0xc
/* 802C3A58 002BF6B8 38 60 00 80 */ li r3, 0x80
/* 802C3A5C 002BF6BC 48 00 54 4D */ bl BTM_SetPowerMode
/* 802C3A60 002BF6C0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 802C3A64 002BF6C4 28 00 00 01 */ cmplwi r0, 1
/* 802C3A68 002BF6C8 41 82 00 0C */ beq lbl_802C3A74
/* 802C3A6C 002BF6CC 38 60 00 06 */ li r3, 6
/* 802C3A70 002BF6D0 48 00 00 9C */ b lbl_802C3B0C
lbl_802C3A74:
/* 802C3A74 002BF6D4 38 00 00 01 */ li r0, 1
/* 802C3A78 002BF6D8 98 1F 01 1B */ stb r0, 0x11b(r31)
/* 802C3A7C 002BF6DC 48 00 00 6C */ b lbl_802C3AE8
lbl_802C3A80:
/* 802C3A80 002BF6E0 7F 83 E3 78 */ mr r3, r28
/* 802C3A84 002BF6E4 48 00 1B 99 */ bl btm_find_dev
/* 802C3A88 002BF6E8 2C 03 00 00 */ cmpwi r3, 0
/* 802C3A8C 002BF6EC 41 82 00 38 */ beq lbl_802C3AC4
/* 802C3A90 002BF6F0 88 03 00 76 */ lbz r0, 0x76(r3)
/* 802C3A94 002BF6F4 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 802C3A98 002BF6F8 41 82 00 2C */ beq lbl_802C3AC4
/* 802C3A9C 002BF6FC A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C3AA0 002BF700 38 80 00 00 */ li r4, 0
/* 802C3AA4 002BF704 48 00 CD 8D */ bl btsnd_hcic_set_conn_encrypt
/* 802C3AA8 002BF708 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C3AAC 002BF70C 40 82 00 0C */ bne lbl_802C3AB8
/* 802C3AB0 002BF710 38 60 00 03 */ li r3, 3
/* 802C3AB4 002BF714 48 00 00 58 */ b lbl_802C3B0C
lbl_802C3AB8:
/* 802C3AB8 002BF718 38 00 00 02 */ li r0, 2
/* 802C3ABC 002BF71C 98 1F 01 1B */ stb r0, 0x11b(r31)
/* 802C3AC0 002BF720 48 00 00 28 */ b lbl_802C3AE8
lbl_802C3AC4:
/* 802C3AC4 002BF724 7F 83 E3 78 */ mr r3, r28
/* 802C3AC8 002BF728 7F A4 EB 78 */ mr r4, r29
/* 802C3ACC 002BF72C 48 00 D6 5D */ bl btsnd_hcic_switch_role
/* 802C3AD0 002BF730 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C3AD4 002BF734 40 82 00 0C */ bne lbl_802C3AE0
/* 802C3AD8 002BF738 38 60 00 03 */ li r3, 3
/* 802C3ADC 002BF73C 48 00 00 30 */ b lbl_802C3B0C
lbl_802C3AE0:
/* 802C3AE0 002BF740 38 00 00 05 */ li r0, 5
/* 802C3AE4 002BF744 98 1F 01 1B */ stb r0, 0x11b(r31)
lbl_802C3AE8:
/* 802C3AE8 002BF748 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C3AEC 002BF74C 7F 84 E3 78 */ mr r4, r28
/* 802C3AF0 002BF750 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C3AF4 002BF754 38 A0 00 06 */ li r5, 6
/* 802C3AF8 002BF758 38 7F 06 26 */ addi r3, r31, 0x626
/* 802C3AFC 002BF75C 4B D4 05 05 */ bl memcpy
/* 802C3B00 002BF760 9B BF 06 25 */ stb r29, 0x625(r31)
/* 802C3B04 002BF764 38 60 00 01 */ li r3, 1
/* 802C3B08 002BF768 93 DF 06 2C */ stw r30, 0x62c(r31)
lbl_802C3B0C:
/* 802C3B0C 002BF76C 39 61 00 30 */ addi r11, r1, 0x30
/* 802C3B10 002BF770 4B F0 36 65 */ bl _restgpr_27
/* 802C3B14 002BF774 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802C3B18 002BF778 7C 08 03 A6 */ mtlr r0
/* 802C3B1C 002BF77C 38 21 00 30 */ addi r1, r1, 0x30
/* 802C3B20 002BF780 4E 80 00 20 */ blr
.global btm_acl_encrypt_change
btm_acl_encrypt_change:
/* 802C3B24 002BF784 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C3B28 002BF788 7C 08 02 A6 */ mflr r0
/* 802C3B2C 002BF78C 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C3B30 002BF790 38 C0 00 00 */ li r6, 0
/* 802C3B34 002BF794 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C3B38 002BF798 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C3B3C 002BF79C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C3B40 002BF7A0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C3B44 002BF7A4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C3B48 002BF7A8 88 04 01 4D */ lbz r0, 0x14d(r4)
/* 802C3B4C 002BF7AC 2C 00 00 00 */ cmpwi r0, 0
/* 802C3B50 002BF7B0 41 82 00 10 */ beq lbl_802C3B60
/* 802C3B54 002BF7B4 A0 04 00 34 */ lhz r0, 0x34(r4)
/* 802C3B58 002BF7B8 7C 00 18 40 */ cmplw r0, r3
/* 802C3B5C 002BF7BC 41 82 00 5C */ beq lbl_802C3BB8
lbl_802C3B60:
/* 802C3B60 002BF7C0 88 04 02 69 */ lbz r0, 0x269(r4)
/* 802C3B64 002BF7C4 38 C0 00 01 */ li r6, 1
/* 802C3B68 002BF7C8 2C 00 00 00 */ cmpwi r0, 0
/* 802C3B6C 002BF7CC 41 82 00 10 */ beq lbl_802C3B7C
/* 802C3B70 002BF7D0 A0 04 01 50 */ lhz r0, 0x150(r4)
/* 802C3B74 002BF7D4 7C 00 18 40 */ cmplw r0, r3
/* 802C3B78 002BF7D8 41 82 00 40 */ beq lbl_802C3BB8
lbl_802C3B7C:
/* 802C3B7C 002BF7DC 88 04 03 85 */ lbz r0, 0x385(r4)
/* 802C3B80 002BF7E0 38 C0 00 02 */ li r6, 2
/* 802C3B84 002BF7E4 2C 00 00 00 */ cmpwi r0, 0
/* 802C3B88 002BF7E8 41 82 00 10 */ beq lbl_802C3B98
/* 802C3B8C 002BF7EC A0 04 02 6C */ lhz r0, 0x26c(r4)
/* 802C3B90 002BF7F0 7C 00 18 40 */ cmplw r0, r3
/* 802C3B94 002BF7F4 41 82 00 24 */ beq lbl_802C3BB8
lbl_802C3B98:
/* 802C3B98 002BF7F8 88 04 04 A1 */ lbz r0, 0x4a1(r4)
/* 802C3B9C 002BF7FC 38 C0 00 03 */ li r6, 3
/* 802C3BA0 002BF800 2C 00 00 00 */ cmpwi r0, 0
/* 802C3BA4 002BF804 41 82 00 10 */ beq lbl_802C3BB4
/* 802C3BA8 002BF808 A0 04 03 88 */ lhz r0, 0x388(r4)
/* 802C3BAC 002BF80C 7C 00 18 40 */ cmplw r0, r3
/* 802C3BB0 002BF810 41 82 00 08 */ beq lbl_802C3BB8
lbl_802C3BB4:
/* 802C3BB4 002BF814 38 C0 00 04 */ li r6, 4
lbl_802C3BB8:
/* 802C3BB8 002BF818 28 06 00 04 */ cmplwi r6, 4
/* 802C3BBC 002BF81C 40 80 00 BC */ bge lbl_802C3C78
/* 802C3BC0 002BF820 1C 06 01 1C */ mulli r0, r6, 0x11c
/* 802C3BC4 002BF824 3F C0 80 57 */ lis r30, lbl_80568B78@ha
/* 802C3BC8 002BF828 3B DE 8B 78 */ addi r30, r30, lbl_80568B78@l
/* 802C3BCC 002BF82C 7F BE 02 14 */ add r29, r30, r0
/* 802C3BD0 002BF830 48 00 00 08 */ b lbl_802C3BD8
/* 802C3BD4 002BF834 48 00 00 A4 */ b lbl_802C3C78
lbl_802C3BD8:
/* 802C3BD8 002BF838 88 1D 01 4F */ lbz r0, 0x14f(r29)
/* 802C3BDC 002BF83C 28 00 00 02 */ cmplwi r0, 2
/* 802C3BE0 002BF840 40 82 00 6C */ bne lbl_802C3C4C
/* 802C3BE4 002BF844 2C 05 00 00 */ cmpwi r5, 0
/* 802C3BE8 002BF848 41 82 00 10 */ beq lbl_802C3BF8
/* 802C3BEC 002BF84C 38 00 00 00 */ li r0, 0
/* 802C3BF0 002BF850 98 1D 01 4F */ stb r0, 0x14f(r29)
/* 802C3BF4 002BF854 48 00 00 0C */ b lbl_802C3C00
lbl_802C3BF8:
/* 802C3BF8 002BF858 38 00 00 03 */ li r0, 3
/* 802C3BFC 002BF85C 98 1D 01 4F */ stb r0, 0x14f(r29)
lbl_802C3C00:
/* 802C3C00 002BF860 88 1D 01 4E */ lbz r0, 0x14e(r29)
/* 802C3C04 002BF864 38 7D 00 3C */ addi r3, r29, 0x3c
/* 802C3C08 002BF868 7C 00 00 34 */ cntlzw r0, r0
/* 802C3C0C 002BF86C 54 04 DE 3E */ rlwinm r4, r0, 0x1b, 0x18, 0x1f
/* 802C3C10 002BF870 48 00 D5 19 */ bl btsnd_hcic_switch_role
/* 802C3C14 002BF874 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C3C18 002BF878 40 82 00 60 */ bne lbl_802C3C78
/* 802C3C1C 002BF87C 3B C0 00 00 */ li r30, 0
/* 802C3C20 002BF880 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C3C24 002BF884 9B DD 01 4F */ stb r30, 0x14f(r29)
/* 802C3C28 002BF888 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C3C2C 002BF88C 81 9F 06 2C */ lwz r12, 0x62c(r31)
/* 802C3C30 002BF890 2C 0C 00 00 */ cmpwi r12, 0
/* 802C3C34 002BF894 41 82 00 44 */ beq lbl_802C3C78
/* 802C3C38 002BF898 38 7F 06 24 */ addi r3, r31, 0x624
/* 802C3C3C 002BF89C 7D 89 03 A6 */ mtctr r12
/* 802C3C40 002BF8A0 4E 80 04 21 */ bctrl
/* 802C3C44 002BF8A4 93 DF 06 2C */ stw r30, 0x62c(r31)
/* 802C3C48 002BF8A8 48 00 00 30 */ b lbl_802C3C78
lbl_802C3C4C:
/* 802C3C4C 002BF8AC 28 00 00 04 */ cmplwi r0, 4
/* 802C3C50 002BF8B0 40 82 00 28 */ bne lbl_802C3C78
/* 802C3C54 002BF8B4 3B E0 00 00 */ li r31, 0
/* 802C3C58 002BF8B8 9B FD 01 4F */ stb r31, 0x14f(r29)
/* 802C3C5C 002BF8BC 81 9E 06 2C */ lwz r12, 0x62c(r30)
/* 802C3C60 002BF8C0 2C 0C 00 00 */ cmpwi r12, 0
/* 802C3C64 002BF8C4 41 82 00 14 */ beq lbl_802C3C78
/* 802C3C68 002BF8C8 38 7E 06 24 */ addi r3, r30, 0x624
/* 802C3C6C 002BF8CC 7D 89 03 A6 */ mtctr r12
/* 802C3C70 002BF8D0 4E 80 04 21 */ bctrl
/* 802C3C74 002BF8D4 93 FE 06 2C */ stw r31, 0x62c(r30)
lbl_802C3C78:
/* 802C3C78 002BF8D8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C3C7C 002BF8DC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C3C80 002BF8E0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C3C84 002BF8E4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C3C88 002BF8E8 7C 08 03 A6 */ mtlr r0
/* 802C3C8C 002BF8EC 38 21 00 20 */ addi r1, r1, 0x20
/* 802C3C90 002BF8F0 4E 80 00 20 */ blr
.global BTM_SetLinkPolicy
BTM_SetLinkPolicy:
/* 802C3C94 002BF8F4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C3C98 002BF8F8 7C 08 02 A6 */ mflr r0
/* 802C3C9C 002BF8FC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C3CA0 002BF900 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C3CA4 002BF904 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C3CA8 002BF908 3F C0 80 44 */ lis r30, lbl_80440CC0@ha
/* 802C3CAC 002BF90C 3B DE 0C C0 */ addi r30, r30, lbl_80440CC0@l
/* 802C3CB0 002BF910 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C3CB4 002BF914 7C 9D 23 78 */ mr r29, r4
/* 802C3CB8 002BF918 93 81 00 10 */ stw r28, 0x10(r1)
/* 802C3CBC 002BF91C 7C 7C 1B 78 */ mr r28, r3
/* 802C3CC0 002BF920 48 00 2C A1 */ bl BTM_ReadLocalFeatures
/* 802C3CC4 002BF924 A0 9D 00 00 */ lhz r4, 0(r29)
/* 802C3CC8 002BF928 7C 7F 1B 78 */ mr r31, r3
/* 802C3CCC 002BF92C 2C 04 00 00 */ cmpwi r4, 0
/* 802C3CD0 002BF930 41 82 01 1C */ beq lbl_802C3DEC
/* 802C3CD4 002BF934 54 80 07 FF */ clrlwi. r0, r4, 0x1f
/* 802C3CD8 002BF938 41 82 00 3C */ beq lbl_802C3D14
/* 802C3CDC 002BF93C 88 03 00 00 */ lbz r0, 0(r3)
/* 802C3CE0 002BF940 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a
/* 802C3CE4 002BF944 40 82 00 30 */ bne lbl_802C3D14
/* 802C3CE8 002BF948 54 85 04 3C */ rlwinm r5, r4, 0, 0x10, 0x1e
/* 802C3CEC 002BF94C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3CF0 002BF950 B0 BD 00 00 */ sth r5, 0(r29)
/* 802C3CF4 002BF954 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3CF8 002BF958 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C3CFC 002BF95C 28 00 00 03 */ cmplwi r0, 3
/* 802C3D00 002BF960 41 80 00 14 */ blt lbl_802C3D14
/* 802C3D04 002BF964 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C3D08 002BF968 38 9E 00 BC */ addi r4, r30, 0xbc
/* 802C3D0C 002BF96C 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C3D10 002BF970 4B FF 92 19 */ bl LogMsg_1
lbl_802C3D14:
/* 802C3D14 002BF974 A0 7D 00 00 */ lhz r3, 0(r29)
/* 802C3D18 002BF978 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 802C3D1C 002BF97C 41 82 00 40 */ beq lbl_802C3D5C
/* 802C3D20 002BF980 88 1F 00 00 */ lbz r0, 0(r31)
/* 802C3D24 002BF984 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19
/* 802C3D28 002BF988 40 82 00 34 */ bne lbl_802C3D5C
/* 802C3D2C 002BF98C 54 65 07 FA */ rlwinm r5, r3, 0, 0x1f, 0x1d
/* 802C3D30 002BF990 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3D34 002BF994 B0 BD 00 00 */ sth r5, 0(r29)
/* 802C3D38 002BF998 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3D3C 002BF99C 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C3D40 002BF9A0 28 00 00 03 */ cmplwi r0, 3
/* 802C3D44 002BF9A4 41 80 00 18 */ blt lbl_802C3D5C
/* 802C3D48 002BF9A8 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C3D4C 002BF9AC 38 9E 00 F8 */ addi r4, r30, 0xf8
/* 802C3D50 002BF9B0 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C3D54 002BF9B4 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802C3D58 002BF9B8 4B FF 91 D1 */ bl LogMsg_1
lbl_802C3D5C:
/* 802C3D5C 002BF9BC A0 7D 00 00 */ lhz r3, 0(r29)
/* 802C3D60 002BF9C0 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 802C3D64 002BF9C4 41 82 00 40 */ beq lbl_802C3DA4
/* 802C3D68 002BF9C8 88 1F 00 00 */ lbz r0, 0(r31)
/* 802C3D6C 002BF9CC 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18
/* 802C3D70 002BF9D0 40 82 00 34 */ bne lbl_802C3DA4
/* 802C3D74 002BF9D4 54 65 07 B8 */ rlwinm r5, r3, 0, 0x1e, 0x1c
/* 802C3D78 002BF9D8 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3D7C 002BF9DC B0 BD 00 00 */ sth r5, 0(r29)
/* 802C3D80 002BF9E0 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3D84 002BF9E4 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C3D88 002BF9E8 28 00 00 03 */ cmplwi r0, 3
/* 802C3D8C 002BF9EC 41 80 00 18 */ blt lbl_802C3DA4
/* 802C3D90 002BF9F0 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C3D94 002BF9F4 38 9E 01 30 */ addi r4, r30, 0x130
/* 802C3D98 002BF9F8 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C3D9C 002BF9FC 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802C3DA0 002BFA00 4B FF 91 89 */ bl LogMsg_1
lbl_802C3DA4:
/* 802C3DA4 002BFA04 A0 7D 00 00 */ lhz r3, 0(r29)
/* 802C3DA8 002BFA08 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 802C3DAC 002BFA0C 41 82 00 40 */ beq lbl_802C3DEC
/* 802C3DB0 002BFA10 88 1F 00 01 */ lbz r0, 1(r31)
/* 802C3DB4 002BFA14 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 802C3DB8 002BFA18 40 82 00 34 */ bne lbl_802C3DEC
/* 802C3DBC 002BFA1C 54 65 07 76 */ rlwinm r5, r3, 0, 0x1d, 0x1b
/* 802C3DC0 002BFA20 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3DC4 002BFA24 B0 BD 00 00 */ sth r5, 0(r29)
/* 802C3DC8 002BFA28 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3DCC 002BFA2C 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C3DD0 002BFA30 28 00 00 03 */ cmplwi r0, 3
/* 802C3DD4 002BFA34 41 80 00 18 */ blt lbl_802C3DEC
/* 802C3DD8 002BFA38 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C3DDC 002BFA3C 38 9E 01 70 */ addi r4, r30, 0x170
/* 802C3DE0 002BFA40 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C3DE4 002BFA44 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802C3DE8 002BFA48 4B FF 91 41 */ bl LogMsg_1
lbl_802C3DEC:
/* 802C3DEC 002BFA4C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C3DF0 002BFA50 3B C0 00 00 */ li r30, 0
/* 802C3DF4 002BFA54 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C3DF8 002BFA58 3B E3 00 34 */ addi r31, r3, 0x34
lbl_802C3DFC:
/* 802C3DFC 002BFA5C 88 1F 01 19 */ lbz r0, 0x119(r31)
/* 802C3E00 002BFA60 2C 00 00 00 */ cmpwi r0, 0
/* 802C3E04 002BFA64 41 82 00 20 */ beq lbl_802C3E24
/* 802C3E08 002BFA68 7F 84 E3 78 */ mr r4, r28
/* 802C3E0C 002BFA6C 38 7F 00 08 */ addi r3, r31, 8
/* 802C3E10 002BFA70 38 A0 00 06 */ li r5, 6
/* 802C3E14 002BFA74 4B F0 65 85 */ bl memcmp
/* 802C3E18 002BFA78 2C 03 00 00 */ cmpwi r3, 0
/* 802C3E1C 002BFA7C 40 82 00 08 */ bne lbl_802C3E24
/* 802C3E20 002BFA80 48 00 00 18 */ b lbl_802C3E38
lbl_802C3E24:
/* 802C3E24 002BFA84 3B DE 00 01 */ addi r30, r30, 1
/* 802C3E28 002BFA88 3B FF 01 1C */ addi r31, r31, 0x11c
/* 802C3E2C 002BFA8C 28 1E 00 04 */ cmplwi r30, 4
/* 802C3E30 002BFA90 41 80 FF CC */ blt lbl_802C3DFC
/* 802C3E34 002BFA94 3B E0 00 00 */ li r31, 0
lbl_802C3E38:
/* 802C3E38 002BFA98 2C 1F 00 00 */ cmpwi r31, 0
/* 802C3E3C 002BFA9C 41 82 00 24 */ beq lbl_802C3E60
/* 802C3E40 002BFAA0 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C3E44 002BFAA4 A0 9D 00 00 */ lhz r4, 0(r29)
/* 802C3E48 002BFAA8 48 00 D3 91 */ bl btsnd_hcic_write_policy_set
/* 802C3E4C 002BFAAC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C3E50 002BFAB0 38 60 00 03 */ li r3, 3
/* 802C3E54 002BFAB4 41 82 00 10 */ beq lbl_802C3E64
/* 802C3E58 002BFAB8 38 60 00 01 */ li r3, 1
/* 802C3E5C 002BFABC 48 00 00 08 */ b lbl_802C3E64
lbl_802C3E60:
/* 802C3E60 002BFAC0 38 60 00 07 */ li r3, 7
lbl_802C3E64:
/* 802C3E64 002BFAC4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C3E68 002BFAC8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C3E6C 002BFACC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C3E70 002BFAD0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C3E74 002BFAD4 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802C3E78 002BFAD8 7C 08 03 A6 */ mtlr r0
/* 802C3E7C 002BFADC 38 21 00 20 */ addi r1, r1, 0x20
/* 802C3E80 002BFAE0 4E 80 00 20 */ blr
.global BTM_SetDefaultLinkPolicy
BTM_SetDefaultLinkPolicy:
/* 802C3E84 002BFAE4 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C3E88 002BFAE8 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C3E8C 002BFAEC B0 64 04 C4 */ sth r3, 0x4c4(r4)
/* 802C3E90 002BFAF0 4E 80 00 20 */ blr
.global btm_read_link_policy_complete
btm_read_link_policy_complete:
/* 802C3E94 002BFAF4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802C3E98 002BFAF8 7C 08 02 A6 */ mflr r0
/* 802C3E9C 002BFAFC 90 01 00 34 */ stw r0, 0x34(r1)
/* 802C3EA0 002BFB00 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802C3EA4 002BFB04 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C3EA8 002BFB08 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C3EAC 002BFB0C 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802C3EB0 002BFB10 93 A1 00 24 */ stw r29, 0x24(r1)
/* 802C3EB4 002BFB14 3B BF 00 34 */ addi r29, r31, 0x34
/* 802C3EB8 002BFB18 93 81 00 20 */ stw r28, 0x20(r1)
/* 802C3EBC 002BFB1C 7C 7C 1B 78 */ mr r28, r3
/* 802C3EC0 002BFB20 38 7F 05 AC */ addi r3, r31, 0x5ac
/* 802C3EC4 002BFB24 83 DF 05 C4 */ lwz r30, 0x5c4(r31)
/* 802C3EC8 002BFB28 4B FF 96 85 */ bl btu_stop_timer
/* 802C3ECC 002BFB2C 38 60 00 00 */ li r3, 0
/* 802C3ED0 002BFB30 2C 1E 00 00 */ cmpwi r30, 0
/* 802C3ED4 002BFB34 90 7F 05 C4 */ stw r3, 0x5c4(r31)
/* 802C3ED8 002BFB38 41 82 00 A0 */ beq lbl_802C3F78
/* 802C3EDC 002BFB3C 88 1C 00 00 */ lbz r0, 0(r28)
/* 802C3EE0 002BFB40 2C 00 00 00 */ cmpwi r0, 0
/* 802C3EE4 002BFB44 98 01 00 09 */ stb r0, 9(r1)
/* 802C3EE8 002BFB48 40 82 00 78 */ bne lbl_802C3F60
/* 802C3EEC 002BFB4C 98 61 00 08 */ stb r3, 8(r1)
/* 802C3EF0 002BFB50 38 00 00 04 */ li r0, 4
/* 802C3EF4 002BFB54 38 E0 00 00 */ li r7, 0
/* 802C3EF8 002BFB58 88 9C 00 02 */ lbz r4, 2(r28)
/* 802C3EFC 002BFB5C 88 7C 00 04 */ lbz r3, 4(r28)
/* 802C3F00 002BFB60 54 85 40 2E */ slwi r5, r4, 8
/* 802C3F04 002BFB64 88 DC 00 01 */ lbz r6, 1(r28)
/* 802C3F08 002BFB68 88 9C 00 03 */ lbz r4, 3(r28)
/* 802C3F0C 002BFB6C 54 63 40 2E */ slwi r3, r3, 8
/* 802C3F10 002BFB70 7C A6 2A 14 */ add r5, r6, r5
/* 802C3F14 002BFB74 7C 64 1A 14 */ add r3, r4, r3
/* 802C3F18 002BFB78 B0 61 00 10 */ sth r3, 0x10(r1)
/* 802C3F1C 002BFB7C 54 A3 04 3E */ clrlwi r3, r5, 0x10
/* 802C3F20 002BFB80 7C 09 03 A6 */ mtctr r0
lbl_802C3F24:
/* 802C3F24 002BFB84 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C3F28 002BFB88 2C 00 00 00 */ cmpwi r0, 0
/* 802C3F2C 002BFB8C 41 82 00 24 */ beq lbl_802C3F50
/* 802C3F30 002BFB90 A0 1D 00 00 */ lhz r0, 0(r29)
/* 802C3F34 002BFB94 7C 03 00 40 */ cmplw r3, r0
/* 802C3F38 002BFB98 40 82 00 18 */ bne lbl_802C3F50
/* 802C3F3C 002BFB9C 38 61 00 0A */ addi r3, r1, 0xa
/* 802C3F40 002BFBA0 38 9D 00 08 */ addi r4, r29, 8
/* 802C3F44 002BFBA4 38 A0 00 06 */ li r5, 6
/* 802C3F48 002BFBA8 4B D4 00 B9 */ bl memcpy
/* 802C3F4C 002BFBAC 48 00 00 1C */ b lbl_802C3F68
lbl_802C3F50:
/* 802C3F50 002BFBB0 38 E7 00 01 */ addi r7, r7, 1
/* 802C3F54 002BFBB4 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C3F58 002BFBB8 42 00 FF CC */ bdnz lbl_802C3F24
/* 802C3F5C 002BFBBC 48 00 00 0C */ b lbl_802C3F68
lbl_802C3F60:
/* 802C3F60 002BFBC0 38 00 00 0A */ li r0, 0xa
/* 802C3F64 002BFBC4 98 01 00 08 */ stb r0, 8(r1)
lbl_802C3F68:
/* 802C3F68 002BFBC8 7F CC F3 78 */ mr r12, r30
/* 802C3F6C 002BFBCC 38 61 00 08 */ addi r3, r1, 8
/* 802C3F70 002BFBD0 7D 89 03 A6 */ mtctr r12
/* 802C3F74 002BFBD4 4E 80 04 21 */ bctrl
lbl_802C3F78:
/* 802C3F78 002BFBD8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802C3F7C 002BFBDC 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802C3F80 002BFBE0 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802C3F84 002BFBE4 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802C3F88 002BFBE8 83 81 00 20 */ lwz r28, 0x20(r1)
/* 802C3F8C 002BFBEC 7C 08 03 A6 */ mtlr r0
/* 802C3F90 002BFBF0 38 21 00 30 */ addi r1, r1, 0x30
/* 802C3F94 002BFBF4 4E 80 00 20 */ blr
.global btm_read_remote_version_complete
btm_read_remote_version_complete:
/* 802C3F98 002BFBF8 88 03 00 00 */ lbz r0, 0(r3)
/* 802C3F9C 002BFBFC 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C3FA0 002BFC00 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C3FA4 002BFC04 2C 00 00 00 */ cmpwi r0, 0
/* 802C3FA8 002BFC08 38 C4 00 34 */ addi r6, r4, 0x34
/* 802C3FAC 002BFC0C 4C 82 00 20 */ bnelr
/* 802C3FB0 002BFC10 88 83 00 02 */ lbz r4, 2(r3)
/* 802C3FB4 002BFC14 38 00 00 04 */ li r0, 4
/* 802C3FB8 002BFC18 88 A3 00 01 */ lbz r5, 1(r3)
/* 802C3FBC 002BFC1C 54 84 40 2E */ slwi r4, r4, 8
/* 802C3FC0 002BFC20 7C 85 22 14 */ add r4, r5, r4
/* 802C3FC4 002BFC24 54 84 04 3E */ clrlwi r4, r4, 0x10
/* 802C3FC8 002BFC28 7C 09 03 A6 */ mtctr r0
lbl_802C3FCC:
/* 802C3FCC 002BFC2C 88 06 01 19 */ lbz r0, 0x119(r6)
/* 802C3FD0 002BFC30 2C 00 00 00 */ cmpwi r0, 0
/* 802C3FD4 002BFC34 41 82 00 44 */ beq lbl_802C4018
/* 802C3FD8 002BFC38 A0 06 00 00 */ lhz r0, 0(r6)
/* 802C3FDC 002BFC3C 7C 00 20 40 */ cmplw r0, r4
/* 802C3FE0 002BFC40 40 82 00 38 */ bne lbl_802C4018
/* 802C3FE4 002BFC44 88 03 00 03 */ lbz r0, 3(r3)
/* 802C3FE8 002BFC48 98 06 01 18 */ stb r0, 0x118(r6)
/* 802C3FEC 002BFC4C 88 03 00 05 */ lbz r0, 5(r3)
/* 802C3FF0 002BFC50 88 83 00 04 */ lbz r4, 4(r3)
/* 802C3FF4 002BFC54 54 00 40 2E */ slwi r0, r0, 8
/* 802C3FF8 002BFC58 7C 04 02 14 */ add r0, r4, r0
/* 802C3FFC 002BFC5C B0 06 01 0A */ sth r0, 0x10a(r6)
/* 802C4000 002BFC60 88 03 00 07 */ lbz r0, 7(r3)
/* 802C4004 002BFC64 88 63 00 06 */ lbz r3, 6(r3)
/* 802C4008 002BFC68 54 00 40 2E */ slwi r0, r0, 8
/* 802C400C 002BFC6C 7C 03 02 14 */ add r0, r3, r0
/* 802C4010 002BFC70 B0 06 01 0C */ sth r0, 0x10c(r6)
/* 802C4014 002BFC74 4E 80 00 20 */ blr
lbl_802C4018:
/* 802C4018 002BFC78 38 C6 01 1C */ addi r6, r6, 0x11c
/* 802C401C 002BFC7C 42 00 FF B0 */ bdnz lbl_802C3FCC
/* 802C4020 002BFC80 4E 80 00 20 */ blr
.global btm_read_remote_features_complete
btm_read_remote_features_complete:
/* 802C4024 002BFC84 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C4028 002BFC88 7C 08 02 A6 */ mflr r0
/* 802C402C 002BFC8C 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C4030 002BFC90 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C4034 002BFC94 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C4038 002BFC98 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C403C 002BFC9C 3B E4 00 34 */ addi r31, r4, 0x34
/* 802C4040 002BFCA0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C4044 002BFCA4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C4048 002BFCA8 93 81 00 10 */ stw r28, 0x10(r1)
/* 802C404C 002BFCAC 88 03 00 00 */ lbz r0, 0(r3)
/* 802C4050 002BFCB0 2C 00 00 00 */ cmpwi r0, 0
/* 802C4054 002BFCB4 40 82 01 DC */ bne lbl_802C4230
/* 802C4058 002BFCB8 88 83 00 02 */ lbz r4, 2(r3)
/* 802C405C 002BFCBC 38 00 00 04 */ li r0, 4
/* 802C4060 002BFCC0 88 A3 00 01 */ lbz r5, 1(r3)
/* 802C4064 002BFCC4 54 84 40 2E */ slwi r4, r4, 8
/* 802C4068 002BFCC8 7C 85 22 14 */ add r4, r5, r4
/* 802C406C 002BFCCC 54 84 04 3E */ clrlwi r4, r4, 0x10
/* 802C4070 002BFCD0 7C 09 03 A6 */ mtctr r0
lbl_802C4074:
/* 802C4074 002BFCD4 88 1F 01 19 */ lbz r0, 0x119(r31)
/* 802C4078 002BFCD8 2C 00 00 00 */ cmpwi r0, 0
/* 802C407C 002BFCDC 41 82 01 AC */ beq lbl_802C4228
/* 802C4080 002BFCE0 A0 1F 00 00 */ lhz r0, 0(r31)
/* 802C4084 002BFCE4 7C 00 20 40 */ cmplw r0, r4
/* 802C4088 002BFCE8 40 82 01 A0 */ bne lbl_802C4228
/* 802C408C 002BFCEC 88 03 00 03 */ lbz r0, 3(r3)
/* 802C4090 002BFCF0 98 1F 01 10 */ stb r0, 0x110(r31)
/* 802C4094 002BFCF4 88 03 00 04 */ lbz r0, 4(r3)
/* 802C4098 002BFCF8 98 1F 01 11 */ stb r0, 0x111(r31)
/* 802C409C 002BFCFC 88 03 00 05 */ lbz r0, 5(r3)
/* 802C40A0 002BFD00 98 1F 01 12 */ stb r0, 0x112(r31)
/* 802C40A4 002BFD04 88 03 00 06 */ lbz r0, 6(r3)
/* 802C40A8 002BFD08 98 1F 01 13 */ stb r0, 0x113(r31)
/* 802C40AC 002BFD0C 88 03 00 07 */ lbz r0, 7(r3)
/* 802C40B0 002BFD10 98 1F 01 14 */ stb r0, 0x114(r31)
/* 802C40B4 002BFD14 88 03 00 08 */ lbz r0, 8(r3)
/* 802C40B8 002BFD18 98 1F 01 15 */ stb r0, 0x115(r31)
/* 802C40BC 002BFD1C 88 03 00 09 */ lbz r0, 9(r3)
/* 802C40C0 002BFD20 98 1F 01 16 */ stb r0, 0x116(r31)
/* 802C40C4 002BFD24 88 03 00 0A */ lbz r0, 0xa(r3)
/* 802C40C8 002BFD28 7C 83 23 78 */ mr r3, r4
/* 802C40CC 002BFD2C 98 1F 01 17 */ stb r0, 0x117(r31)
/* 802C40D0 002BFD30 48 00 14 95 */ bl btm_find_dev_by_handle
/* 802C40D4 002BFD34 2C 03 00 00 */ cmpwi r3, 0
/* 802C40D8 002BFD38 41 82 00 14 */ beq lbl_802C40EC
/* 802C40DC 002BFD3C 38 9F 01 10 */ addi r4, r31, 0x110
/* 802C40E0 002BFD40 38 A0 00 08 */ li r5, 8
/* 802C40E4 002BFD44 38 63 00 77 */ addi r3, r3, 0x77
/* 802C40E8 002BFD48 4B D3 FF 19 */ bl memcpy
lbl_802C40EC:
/* 802C40EC 002BFD4C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C40F0 002BFD50 38 00 CC F9 */ li r0, -13063
/* 802C40F4 002BFD54 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C40F8 002BFD58 A0 A3 06 54 */ lhz r5, 0x654(r3)
/* 802C40FC 002BFD5C 88 63 06 36 */ lbz r3, 0x636(r3)
/* 802C4100 002BFD60 70 A4 CC 18 */ andi. r4, r5, 0xcc18
/* 802C4104 002BFD64 28 03 00 03 */ cmplwi r3, 3
/* 802C4108 002BFD68 7C 9E 00 38 */ and r30, r4, r0
/* 802C410C 002BFD6C 41 80 00 10 */ blt lbl_802C411C
/* 802C4110 002BFD70 70 A0 33 06 */ andi. r0, r5, 0x3306
/* 802C4114 002BFD74 7C 80 03 78 */ or r0, r4, r0
/* 802C4118 002BFD78 54 1E 04 3E */ clrlwi r30, r0, 0x10
lbl_802C411C:
/* 802C411C 002BFD7C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4120 002BFD80 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4124 002BFD84 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C4128 002BFD88 28 00 00 04 */ cmplwi r0, 4
/* 802C412C 002BFD8C 41 80 00 1C */ blt lbl_802C4148
/* 802C4130 002BFD90 3C 60 00 0D */ lis r3, 0x000D0003@ha
/* 802C4134 002BFD94 3C 80 80 44 */ lis r4, lbl_80440D00@ha
/* 802C4138 002BFD98 38 63 00 03 */ addi r3, r3, 0x000D0003@l
/* 802C413C 002BFD9C 57 C5 04 3E */ clrlwi r5, r30, 0x10
/* 802C4140 002BFDA0 38 84 0D 00 */ addi r4, r4, lbl_80440D00@l
/* 802C4144 002BFDA4 4B FF 8D E5 */ bl LogMsg_1
lbl_802C4148:
/* 802C4148 002BFDA8 A0 7F 00 00 */ lhz r3, 0(r31)
/* 802C414C 002BFDAC 57 C4 04 3E */ clrlwi r4, r30, 0x10
/* 802C4150 002BFDB0 48 00 C5 D5 */ bl btsnd_hcic_change_conn_type
/* 802C4154 002BFDB4 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C4158 002BFDB8 41 82 00 08 */ beq lbl_802C4160
/* 802C415C 002BFDBC B3 DF 00 02 */ sth r30, 2(r31)
lbl_802C4160:
/* 802C4160 002BFDC0 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C4164 002BFDC4 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C4168 002BFDC8 A0 04 04 C4 */ lhz r0, 0x4c4(r4)
/* 802C416C 002BFDCC 2C 00 00 00 */ cmpwi r0, 0
/* 802C4170 002BFDD0 41 82 00 10 */ beq lbl_802C4180
/* 802C4174 002BFDD4 38 7F 00 08 */ addi r3, r31, 8
/* 802C4178 002BFDD8 38 84 04 C4 */ addi r4, r4, 0x4c4
/* 802C417C 002BFDDC 4B FF FB 19 */ bl BTM_SetLinkPolicy
lbl_802C4180:
/* 802C4180 002BFDE0 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4184 002BFDE4 3B C0 00 00 */ li r30, 0
/* 802C4188 002BFDE8 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C418C 002BFDEC A3 83 04 C6 */ lhz r28, 0x4c6(r3)
/* 802C4190 002BFDF0 3B A3 00 34 */ addi r29, r3, 0x34
lbl_802C4194:
/* 802C4194 002BFDF4 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C4198 002BFDF8 2C 00 00 00 */ cmpwi r0, 0
/* 802C419C 002BFDFC 41 82 00 20 */ beq lbl_802C41BC
/* 802C41A0 002BFE00 38 7D 00 08 */ addi r3, r29, 8
/* 802C41A4 002BFE04 38 9F 00 08 */ addi r4, r31, 8
/* 802C41A8 002BFE08 38 A0 00 06 */ li r5, 6
/* 802C41AC 002BFE0C 4B F0 61 ED */ bl memcmp
/* 802C41B0 002BFE10 2C 03 00 00 */ cmpwi r3, 0
/* 802C41B4 002BFE14 40 82 00 08 */ bne lbl_802C41BC
/* 802C41B8 002BFE18 48 00 00 18 */ b lbl_802C41D0
lbl_802C41BC:
/* 802C41BC 002BFE1C 3B DE 00 01 */ addi r30, r30, 1
/* 802C41C0 002BFE20 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C41C4 002BFE24 28 1E 00 04 */ cmplwi r30, 4
/* 802C41C8 002BFE28 41 80 FF CC */ blt lbl_802C4194
/* 802C41CC 002BFE2C 3B A0 00 00 */ li r29, 0
lbl_802C41D0:
/* 802C41D0 002BFE30 2C 1D 00 00 */ cmpwi r29, 0
/* 802C41D4 002BFE34 41 82 00 20 */ beq lbl_802C41F4
/* 802C41D8 002BFE38 B3 9D 01 0E */ sth r28, 0x10e(r29)
/* 802C41DC 002BFE3C 88 1D 01 1A */ lbz r0, 0x11a(r29)
/* 802C41E0 002BFE40 2C 00 00 00 */ cmpwi r0, 0
/* 802C41E4 002BFE44 40 82 00 10 */ bne lbl_802C41F4
/* 802C41E8 002BFE48 A0 7D 00 00 */ lhz r3, 0(r29)
/* 802C41EC 002BFE4C 7F 84 E3 78 */ mr r4, r28
/* 802C41F0 002BFE50 48 00 DA 35 */ bl btsnd_hcic_write_link_super_tout
lbl_802C41F4:
/* 802C41F4 002BFE54 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C41F8 002BFE58 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C41FC 002BFE5C 81 83 04 C8 */ lwz r12, 0x4c8(r3)
/* 802C4200 002BFE60 2C 0C 00 00 */ cmpwi r12, 0
/* 802C4204 002BFE64 41 82 00 2C */ beq lbl_802C4230
/* 802C4208 002BFE68 38 7F 00 08 */ addi r3, r31, 8
/* 802C420C 002BFE6C 38 9F 00 0E */ addi r4, r31, 0xe
/* 802C4210 002BFE70 38 BF 00 11 */ addi r5, r31, 0x11
/* 802C4214 002BFE74 38 DF 01 10 */ addi r6, r31, 0x110
/* 802C4218 002BFE78 38 E0 00 01 */ li r7, 1
/* 802C421C 002BFE7C 7D 89 03 A6 */ mtctr r12
/* 802C4220 002BFE80 4E 80 04 21 */ bctrl
/* 802C4224 002BFE84 48 00 00 0C */ b lbl_802C4230
lbl_802C4228:
/* 802C4228 002BFE88 3B FF 01 1C */ addi r31, r31, 0x11c
/* 802C422C 002BFE8C 42 00 FE 48 */ bdnz lbl_802C4074
lbl_802C4230:
/* 802C4230 002BFE90 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4234 002BFE94 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C4238 002BFE98 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C423C 002BFE9C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C4240 002BFEA0 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802C4244 002BFEA4 7C 08 03 A6 */ mtlr r0
/* 802C4248 002BFEA8 38 21 00 20 */ addi r1, r1, 0x20
/* 802C424C 002BFEAC 4E 80 00 20 */ blr
.global BTM_SetDefaultLinkSuperTout
BTM_SetDefaultLinkSuperTout:
/* 802C4250 002BFEB0 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C4254 002BFEB4 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C4258 002BFEB8 B0 64 04 C6 */ sth r3, 0x4c6(r4)
/* 802C425C 002BFEBC 4E 80 00 20 */ blr
.global BTM_IsAclConnectionUp
BTM_IsAclConnectionUp:
/* 802C4260 002BFEC0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C4264 002BFEC4 7C 08 02 A6 */ mflr r0
/* 802C4268 002BFEC8 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C426C 002BFECC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C4270 002BFED0 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C4274 002BFED4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C4278 002BFED8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C427C 002BFEDC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C4280 002BFEE0 7C 7D 1B 78 */ mr r29, r3
/* 802C4284 002BFEE4 88 04 27 C0 */ lbz r0, 0x27c0(r4)
/* 802C4288 002BFEE8 28 00 00 03 */ cmplwi r0, 3
/* 802C428C 002BFEEC 41 80 00 30 */ blt lbl_802C42BC
/* 802C4290 002BFEF0 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C4294 002BFEF4 3C 80 80 44 */ lis r4, lbl_80440EA0@ha
/* 802C4298 002BFEF8 88 BD 00 00 */ lbz r5, 0(r29)
/* 802C429C 002BFEFC 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C42A0 002BFF00 88 DD 00 01 */ lbz r6, 1(r29)
/* 802C42A4 002BFF04 38 84 0E A0 */ addi r4, r4, lbl_80440EA0@l
/* 802C42A8 002BFF08 88 FD 00 02 */ lbz r7, 2(r29)
/* 802C42AC 002BFF0C 89 1D 00 03 */ lbz r8, 3(r29)
/* 802C42B0 002BFF10 89 3D 00 04 */ lbz r9, 4(r29)
/* 802C42B4 002BFF14 89 5D 00 05 */ lbz r10, 5(r29)
/* 802C42B8 002BFF18 4B FF 8C E9 */ bl LogMsg_6
lbl_802C42BC:
/* 802C42BC 002BFF1C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C42C0 002BFF20 3B E0 00 00 */ li r31, 0
/* 802C42C4 002BFF24 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C42C8 002BFF28 3B C3 00 34 */ addi r30, r3, 0x34
lbl_802C42CC:
/* 802C42CC 002BFF2C 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C42D0 002BFF30 2C 00 00 00 */ cmpwi r0, 0
/* 802C42D4 002BFF34 41 82 00 20 */ beq lbl_802C42F4
/* 802C42D8 002BFF38 7F A4 EB 78 */ mr r4, r29
/* 802C42DC 002BFF3C 38 7E 00 08 */ addi r3, r30, 8
/* 802C42E0 002BFF40 38 A0 00 06 */ li r5, 6
/* 802C42E4 002BFF44 4B F0 60 B5 */ bl memcmp
/* 802C42E8 002BFF48 2C 03 00 00 */ cmpwi r3, 0
/* 802C42EC 002BFF4C 40 82 00 08 */ bne lbl_802C42F4
/* 802C42F0 002BFF50 48 00 00 18 */ b lbl_802C4308
lbl_802C42F4:
/* 802C42F4 002BFF54 3B FF 00 01 */ addi r31, r31, 1
/* 802C42F8 002BFF58 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C42FC 002BFF5C 28 1F 00 04 */ cmplwi r31, 4
/* 802C4300 002BFF60 41 80 FF CC */ blt lbl_802C42CC
/* 802C4304 002BFF64 3B C0 00 00 */ li r30, 0
lbl_802C4308:
/* 802C4308 002BFF68 2C 1E 00 00 */ cmpwi r30, 0
/* 802C430C 002BFF6C 41 82 00 0C */ beq lbl_802C4318
/* 802C4310 002BFF70 38 60 00 01 */ li r3, 1
/* 802C4314 002BFF74 48 00 00 08 */ b lbl_802C431C
lbl_802C4318:
/* 802C4318 002BFF78 38 60 00 00 */ li r3, 0
lbl_802C431C:
/* 802C431C 002BFF7C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4320 002BFF80 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C4324 002BFF84 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C4328 002BFF88 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C432C 002BFF8C 7C 08 03 A6 */ mtlr r0
/* 802C4330 002BFF90 38 21 00 20 */ addi r1, r1, 0x20
/* 802C4334 002BFF94 4E 80 00 20 */ blr
.global BTM_GetNumAclLinks
BTM_GetNumAclLinks:
/* 802C4338 002BFF98 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C433C 002BFF9C 38 60 00 00 */ li r3, 0
/* 802C4340 002BFFA0 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C4344 002BFFA4 88 04 01 4D */ lbz r0, 0x14d(r4)
/* 802C4348 002BFFA8 2C 00 00 00 */ cmpwi r0, 0
/* 802C434C 002BFFAC 41 82 00 08 */ beq lbl_802C4354
/* 802C4350 002BFFB0 38 60 00 01 */ li r3, 1
lbl_802C4354:
/* 802C4354 002BFFB4 88 04 02 69 */ lbz r0, 0x269(r4)
/* 802C4358 002BFFB8 2C 00 00 00 */ cmpwi r0, 0
/* 802C435C 002BFFBC 41 82 00 0C */ beq lbl_802C4368
/* 802C4360 002BFFC0 38 03 00 01 */ addi r0, r3, 1
/* 802C4364 002BFFC4 54 03 04 3E */ clrlwi r3, r0, 0x10
lbl_802C4368:
/* 802C4368 002BFFC8 88 04 03 85 */ lbz r0, 0x385(r4)
/* 802C436C 002BFFCC 2C 00 00 00 */ cmpwi r0, 0
/* 802C4370 002BFFD0 41 82 00 0C */ beq lbl_802C437C
/* 802C4374 002BFFD4 38 03 00 01 */ addi r0, r3, 1
/* 802C4378 002BFFD8 54 03 04 3E */ clrlwi r3, r0, 0x10
lbl_802C437C:
/* 802C437C 002BFFDC 88 04 04 A1 */ lbz r0, 0x4a1(r4)
/* 802C4380 002BFFE0 2C 00 00 00 */ cmpwi r0, 0
/* 802C4384 002BFFE4 4D 82 00 20 */ beqlr
/* 802C4388 002BFFE8 38 03 00 01 */ addi r0, r3, 1
/* 802C438C 002BFFEC 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 802C4390 002BFFF0 4E 80 00 20 */ blr
.global btm_get_acl_disc_reason_code
btm_get_acl_disc_reason_code:
/* 802C4394 002BFFF4 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4398 002BFFF8 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C439C 002BFFFC 88 63 27 BF */ lbz r3, 0x27bf(r3)
/* 802C43A0 002C0000 4E 80 00 20 */ blr
.global BTM_GetHCIConnHandle
BTM_GetHCIConnHandle:
/* 802C43A4 002C0004 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C43A8 002C0008 7C 08 02 A6 */ mflr r0
/* 802C43AC 002C000C 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C43B0 002C0010 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C43B4 002C0014 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C43B8 002C0018 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C43BC 002C001C 3B E0 00 00 */ li r31, 0
/* 802C43C0 002C0020 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C43C4 002C0024 3B C4 00 34 */ addi r30, r4, 0x34
/* 802C43C8 002C0028 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C43CC 002C002C 7C 7D 1B 78 */ mr r29, r3
lbl_802C43D0:
/* 802C43D0 002C0030 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C43D4 002C0034 2C 00 00 00 */ cmpwi r0, 0
/* 802C43D8 002C0038 41 82 00 20 */ beq lbl_802C43F8
/* 802C43DC 002C003C 7F A4 EB 78 */ mr r4, r29
/* 802C43E0 002C0040 38 7E 00 08 */ addi r3, r30, 8
/* 802C43E4 002C0044 38 A0 00 06 */ li r5, 6
/* 802C43E8 002C0048 4B F0 5F B1 */ bl memcmp
/* 802C43EC 002C004C 2C 03 00 00 */ cmpwi r3, 0
/* 802C43F0 002C0050 40 82 00 08 */ bne lbl_802C43F8
/* 802C43F4 002C0054 48 00 00 18 */ b lbl_802C440C
lbl_802C43F8:
/* 802C43F8 002C0058 3B FF 00 01 */ addi r31, r31, 1
/* 802C43FC 002C005C 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C4400 002C0060 28 1F 00 04 */ cmplwi r31, 4
/* 802C4404 002C0064 41 80 FF CC */ blt lbl_802C43D0
/* 802C4408 002C0068 3B C0 00 00 */ li r30, 0
lbl_802C440C:
/* 802C440C 002C006C 2C 1E 00 00 */ cmpwi r30, 0
/* 802C4410 002C0070 41 82 00 0C */ beq lbl_802C441C
/* 802C4414 002C0074 A0 7E 00 00 */ lhz r3, 0(r30)
/* 802C4418 002C0078 48 00 00 0C */ b lbl_802C4424
lbl_802C441C:
/* 802C441C 002C007C 3C 60 00 01 */ lis r3, 0x0000FFFF@ha
/* 802C4420 002C0080 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l
lbl_802C4424:
/* 802C4424 002C0084 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4428 002C0088 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C442C 002C008C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C4430 002C0090 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C4434 002C0094 7C 08 03 A6 */ mtlr r0
/* 802C4438 002C0098 38 21 00 20 */ addi r1, r1, 0x20
/* 802C443C 002C009C 4E 80 00 20 */ blr
.global btm_process_clk_off_comp_evt
btm_process_clk_off_comp_evt:
/* 802C4440 002C00A0 3C A0 80 57 */ lis r5, lbl_80568B78@ha
/* 802C4444 002C00A4 38 C0 00 00 */ li r6, 0
/* 802C4448 002C00A8 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l
/* 802C444C 002C00AC 88 05 01 4D */ lbz r0, 0x14d(r5)
/* 802C4450 002C00B0 2C 00 00 00 */ cmpwi r0, 0
/* 802C4454 002C00B4 41 82 00 10 */ beq lbl_802C4464
/* 802C4458 002C00B8 A0 05 00 34 */ lhz r0, 0x34(r5)
/* 802C445C 002C00BC 7C 00 18 40 */ cmplw r0, r3
/* 802C4460 002C00C0 41 82 00 5C */ beq lbl_802C44BC
lbl_802C4464:
/* 802C4464 002C00C4 88 05 02 69 */ lbz r0, 0x269(r5)
/* 802C4468 002C00C8 38 C0 00 01 */ li r6, 1
/* 802C446C 002C00CC 2C 00 00 00 */ cmpwi r0, 0
/* 802C4470 002C00D0 41 82 00 10 */ beq lbl_802C4480
/* 802C4474 002C00D4 A0 05 01 50 */ lhz r0, 0x150(r5)
/* 802C4478 002C00D8 7C 00 18 40 */ cmplw r0, r3
/* 802C447C 002C00DC 41 82 00 40 */ beq lbl_802C44BC
lbl_802C4480:
/* 802C4480 002C00E0 88 05 03 85 */ lbz r0, 0x385(r5)
/* 802C4484 002C00E4 38 C0 00 02 */ li r6, 2
/* 802C4488 002C00E8 2C 00 00 00 */ cmpwi r0, 0
/* 802C448C 002C00EC 41 82 00 10 */ beq lbl_802C449C
/* 802C4490 002C00F0 A0 05 02 6C */ lhz r0, 0x26c(r5)
/* 802C4494 002C00F4 7C 00 18 40 */ cmplw r0, r3
/* 802C4498 002C00F8 41 82 00 24 */ beq lbl_802C44BC
lbl_802C449C:
/* 802C449C 002C00FC 88 05 04 A1 */ lbz r0, 0x4a1(r5)
/* 802C44A0 002C0100 38 C0 00 03 */ li r6, 3
/* 802C44A4 002C0104 2C 00 00 00 */ cmpwi r0, 0
/* 802C44A8 002C0108 41 82 00 10 */ beq lbl_802C44B8
/* 802C44AC 002C010C A0 05 03 88 */ lhz r0, 0x388(r5)
/* 802C44B0 002C0110 7C 00 18 40 */ cmplw r0, r3
/* 802C44B4 002C0114 41 82 00 08 */ beq lbl_802C44BC
lbl_802C44B8:
/* 802C44B8 002C0118 38 C0 00 04 */ li r6, 4
lbl_802C44BC:
/* 802C44BC 002C011C 28 06 00 04 */ cmplwi r6, 4
/* 802C44C0 002C0120 4C 80 00 20 */ bgelr
/* 802C44C4 002C0124 1C 06 01 1C */ mulli r0, r6, 0x11c
/* 802C44C8 002C0128 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C44CC 002C012C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C44D0 002C0130 7C 63 02 14 */ add r3, r3, r0
/* 802C44D4 002C0134 B0 83 00 3A */ sth r4, 0x3a(r3)
/* 802C44D8 002C0138 4E 80 00 20 */ blr
.global btm_acl_role_changed
btm_acl_role_changed:
/* 802C44DC 002C013C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802C44E0 002C0140 7C 08 02 A6 */ mflr r0
/* 802C44E4 002C0144 90 01 00 34 */ stw r0, 0x34(r1)
/* 802C44E8 002C0148 39 61 00 30 */ addi r11, r1, 0x30
/* 802C44EC 002C014C 4B F0 2C 35 */ bl _savegpr_25
/* 802C44F0 002C0150 2C 04 00 00 */ cmpwi r4, 0
/* 802C44F4 002C0154 7C 79 1B 78 */ mr r25, r3
/* 802C44F8 002C0158 7C 9A 23 78 */ mr r26, r4
/* 802C44FC 002C015C 7C BC 2B 78 */ mr r28, r5
/* 802C4500 002C0160 41 82 00 0C */ beq lbl_802C450C
/* 802C4504 002C0164 7F 5B D3 78 */ mr r27, r26
/* 802C4508 002C0168 48 00 00 10 */ b lbl_802C4518
lbl_802C450C:
/* 802C450C 002C016C 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4510 002C0170 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4514 002C0174 3B 63 27 B4 */ addi r27, r3, 0x27b4
lbl_802C4518:
/* 802C4518 002C0178 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C451C 002C017C 3B C0 00 00 */ li r30, 0
/* 802C4520 002C0180 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4524 002C0184 3B A3 00 34 */ addi r29, r3, 0x34
lbl_802C4528:
/* 802C4528 002C0188 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C452C 002C018C 2C 00 00 00 */ cmpwi r0, 0
/* 802C4530 002C0190 41 82 00 20 */ beq lbl_802C4550
/* 802C4534 002C0194 7F 64 DB 78 */ mr r4, r27
/* 802C4538 002C0198 38 7D 00 08 */ addi r3, r29, 8
/* 802C453C 002C019C 38 A0 00 06 */ li r5, 6
/* 802C4540 002C01A0 4B F0 5E 59 */ bl memcmp
/* 802C4544 002C01A4 2C 03 00 00 */ cmpwi r3, 0
/* 802C4548 002C01A8 40 82 00 08 */ bne lbl_802C4550
/* 802C454C 002C01AC 48 00 00 18 */ b lbl_802C4564
lbl_802C4550:
/* 802C4550 002C01B0 3B DE 00 01 */ addi r30, r30, 1
/* 802C4554 002C01B4 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C4558 002C01B8 28 1E 00 04 */ cmplwi r30, 4
/* 802C455C 002C01BC 41 80 FF CC */ blt lbl_802C4528
/* 802C4560 002C01C0 3B A0 00 00 */ li r29, 0
lbl_802C4564:
/* 802C4564 002C01C4 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4568 002C01C8 2C 1D 00 00 */ cmpwi r29, 0
/* 802C456C 002C01CC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4570 002C01D0 3B E3 06 24 */ addi r31, r3, 0x624
/* 802C4574 002C01D4 41 82 01 44 */ beq lbl_802C46B8
/* 802C4578 002C01D8 2C 19 00 00 */ cmpwi r25, 0
/* 802C457C 002C01DC 9B 3F 00 00 */ stb r25, 0(r31)
/* 802C4580 002C01E0 40 82 00 1C */ bne lbl_802C459C
/* 802C4584 002C01E4 9B 9F 00 01 */ stb r28, 1(r31)
/* 802C4588 002C01E8 7F 64 DB 78 */ mr r4, r27
/* 802C458C 002C01EC 38 7F 00 02 */ addi r3, r31, 2
/* 802C4590 002C01F0 38 A0 00 06 */ li r5, 6
/* 802C4594 002C01F4 4B D3 FA 6D */ bl memcpy
/* 802C4598 002C01F8 9B 9D 01 1A */ stb r28, 0x11a(r29)
lbl_802C459C:
/* 802C459C 002C01FC 2C 1A 00 00 */ cmpwi r26, 0
/* 802C45A0 002C0200 41 82 00 78 */ beq lbl_802C4618
/* 802C45A4 002C0204 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C45A8 002C0208 A3 DD 01 0E */ lhz r30, 0x10e(r29)
/* 802C45AC 002C020C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C45B0 002C0210 3B 80 00 00 */ li r28, 0
/* 802C45B4 002C0214 3B 63 00 34 */ addi r27, r3, 0x34
lbl_802C45B8:
/* 802C45B8 002C0218 88 1B 01 19 */ lbz r0, 0x119(r27)
/* 802C45BC 002C021C 2C 00 00 00 */ cmpwi r0, 0
/* 802C45C0 002C0220 41 82 00 20 */ beq lbl_802C45E0
/* 802C45C4 002C0224 38 7B 00 08 */ addi r3, r27, 8
/* 802C45C8 002C0228 38 9D 00 08 */ addi r4, r29, 8
/* 802C45CC 002C022C 38 A0 00 06 */ li r5, 6
/* 802C45D0 002C0230 4B F0 5D C9 */ bl memcmp
/* 802C45D4 002C0234 2C 03 00 00 */ cmpwi r3, 0
/* 802C45D8 002C0238 40 82 00 08 */ bne lbl_802C45E0
/* 802C45DC 002C023C 48 00 00 18 */ b lbl_802C45F4
lbl_802C45E0:
/* 802C45E0 002C0240 3B 9C 00 01 */ addi r28, r28, 1
/* 802C45E4 002C0244 3B 7B 01 1C */ addi r27, r27, 0x11c
/* 802C45E8 002C0248 28 1C 00 04 */ cmplwi r28, 4
/* 802C45EC 002C024C 41 80 FF CC */ blt lbl_802C45B8
/* 802C45F0 002C0250 3B 60 00 00 */ li r27, 0
lbl_802C45F4:
/* 802C45F4 002C0254 2C 1B 00 00 */ cmpwi r27, 0
/* 802C45F8 002C0258 41 82 00 20 */ beq lbl_802C4618
/* 802C45FC 002C025C B3 DB 01 0E */ sth r30, 0x10e(r27)
/* 802C4600 002C0260 88 1B 01 1A */ lbz r0, 0x11a(r27)
/* 802C4604 002C0264 2C 00 00 00 */ cmpwi r0, 0
/* 802C4608 002C0268 40 82 00 10 */ bne lbl_802C4618
/* 802C460C 002C026C A0 7B 00 00 */ lhz r3, 0(r27)
/* 802C4610 002C0270 7F C4 F3 78 */ mr r4, r30
/* 802C4614 002C0274 48 00 D6 11 */ bl btsnd_hcic_write_link_super_tout
lbl_802C4618:
/* 802C4618 002C0278 88 1D 01 1B */ lbz r0, 0x11b(r29)
/* 802C461C 002C027C 28 00 00 03 */ cmplwi r0, 3
/* 802C4620 002C0280 40 82 00 24 */ bne lbl_802C4644
/* 802C4624 002C0284 A0 7D 00 00 */ lhz r3, 0(r29)
/* 802C4628 002C0288 38 80 00 01 */ li r4, 1
/* 802C462C 002C028C 48 00 C2 05 */ bl btsnd_hcic_set_conn_encrypt
/* 802C4630 002C0290 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C4634 002C0294 41 82 00 10 */ beq lbl_802C4644
/* 802C4638 002C0298 38 00 00 04 */ li r0, 4
/* 802C463C 002C029C 98 1D 01 1B */ stb r0, 0x11b(r29)
/* 802C4640 002C02A0 48 00 00 78 */ b lbl_802C46B8
lbl_802C4644:
/* 802C4644 002C02A4 2C 1D 00 00 */ cmpwi r29, 0
/* 802C4648 002C02A8 41 82 00 18 */ beq lbl_802C4660
/* 802C464C 002C02AC 88 1D 01 1B */ lbz r0, 0x11b(r29)
/* 802C4650 002C02B0 28 00 00 05 */ cmplwi r0, 5
/* 802C4654 002C02B4 40 82 00 0C */ bne lbl_802C4660
/* 802C4658 002C02B8 38 00 00 00 */ li r0, 0
/* 802C465C 002C02BC 98 1D 01 1B */ stb r0, 0x11b(r29)
lbl_802C4660:
/* 802C4660 002C02C0 3F C0 80 57 */ lis r30, lbl_80568B78@ha
/* 802C4664 002C02C4 3B DE 8B 78 */ addi r30, r30, lbl_80568B78@l
/* 802C4668 002C02C8 81 9E 06 2C */ lwz r12, 0x62c(r30)
/* 802C466C 002C02CC 2C 0C 00 00 */ cmpwi r12, 0
/* 802C4670 002C02D0 41 82 00 18 */ beq lbl_802C4688
/* 802C4674 002C02D4 7F E3 FB 78 */ mr r3, r31
/* 802C4678 002C02D8 7D 89 03 A6 */ mtctr r12
/* 802C467C 002C02DC 4E 80 04 21 */ bctrl
/* 802C4680 002C02E0 38 00 00 00 */ li r0, 0
/* 802C4684 002C02E4 90 1E 06 2C */ stw r0, 0x62c(r30)
lbl_802C4688:
/* 802C4688 002C02E8 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C468C 002C02EC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4690 002C02F0 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C4694 002C02F4 28 00 00 04 */ cmplwi r0, 4
/* 802C4698 002C02F8 41 80 00 20 */ blt lbl_802C46B8
/* 802C469C 002C02FC 3C 60 00 0D */ lis r3, 0x000D0003@ha
/* 802C46A0 002C0300 3C 80 80 44 */ lis r4, lbl_80440EDC@ha
/* 802C46A4 002C0304 88 BF 00 01 */ lbz r5, 1(r31)
/* 802C46A8 002C0308 38 63 00 03 */ addi r3, r3, 0x000D0003@l
/* 802C46AC 002C030C 88 DF 00 00 */ lbz r6, 0(r31)
/* 802C46B0 002C0310 38 84 0E DC */ addi r4, r4, lbl_80440EDC@l
/* 802C46B4 002C0314 4B FF 88 8D */ bl LogMsg_2
lbl_802C46B8:
/* 802C46B8 002C0318 39 61 00 30 */ addi r11, r1, 0x30
/* 802C46BC 002C031C 4B F0 2A B1 */ bl _restgpr_25
/* 802C46C0 002C0320 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802C46C4 002C0324 7C 08 03 A6 */ mtlr r0
/* 802C46C8 002C0328 38 21 00 30 */ addi r1, r1, 0x30
/* 802C46CC 002C032C 4E 80 00 20 */ blr
.global btm_acl_timeout
btm_acl_timeout:
/* 802C46D0 002C0330 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C46D4 002C0334 7C 08 02 A6 */ mflr r0
/* 802C46D8 002C0338 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C46DC 002C033C 80 03 00 10 */ lwz r0, 0x10(r3)
/* 802C46E0 002C0340 28 00 00 04 */ cmplwi r0, 4
/* 802C46E4 002C0344 40 82 00 38 */ bne lbl_802C471C
/* 802C46E8 002C0348 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C46EC 002C034C 38 60 00 0A */ li r3, 0xa
/* 802C46F0 002C0350 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C46F4 002C0354 38 00 00 00 */ li r0, 0
/* 802C46F8 002C0358 81 84 05 C4 */ lwz r12, 0x5c4(r4)
/* 802C46FC 002C035C 98 61 00 08 */ stb r3, 8(r1)
/* 802C4700 002C0360 2C 0C 00 00 */ cmpwi r12, 0
/* 802C4704 002C0364 B0 01 00 10 */ sth r0, 0x10(r1)
/* 802C4708 002C0368 90 04 05 C4 */ stw r0, 0x5c4(r4)
/* 802C470C 002C036C 41 82 00 10 */ beq lbl_802C471C
/* 802C4710 002C0370 38 61 00 08 */ addi r3, r1, 8
/* 802C4714 002C0374 7D 89 03 A6 */ mtctr r12
/* 802C4718 002C0378 4E 80 04 21 */ bctrl
lbl_802C471C:
/* 802C471C 002C037C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4720 002C0380 7C 08 03 A6 */ mtlr r0
/* 802C4724 002C0384 38 21 00 20 */ addi r1, r1, 0x20
/* 802C4728 002C0388 4E 80 00 20 */ blr
.global btm_get_max_packet_size
btm_get_max_packet_size:
/* 802C472C 002C038C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C4730 002C0390 7C 08 02 A6 */ mflr r0
/* 802C4734 002C0394 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C4738 002C0398 39 61 00 20 */ addi r11, r1, 0x20
/* 802C473C 002C039C 4B F0 29 ED */ bl _savegpr_27
/* 802C4740 002C03A0 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C4744 002C03A4 7C 7B 1B 78 */ mr r27, r3
/* 802C4748 002C03A8 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C474C 002C03AC 3B C0 00 00 */ li r30, 0
/* 802C4750 002C03B0 3B A4 00 34 */ addi r29, r4, 0x34
lbl_802C4754:
/* 802C4754 002C03B4 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C4758 002C03B8 2C 00 00 00 */ cmpwi r0, 0
/* 802C475C 002C03BC 41 82 00 20 */ beq lbl_802C477C
/* 802C4760 002C03C0 7F 64 DB 78 */ mr r4, r27
/* 802C4764 002C03C4 38 7D 00 08 */ addi r3, r29, 8
/* 802C4768 002C03C8 38 A0 00 06 */ li r5, 6
/* 802C476C 002C03CC 4B F0 5C 2D */ bl memcmp
/* 802C4770 002C03D0 2C 03 00 00 */ cmpwi r3, 0
/* 802C4774 002C03D4 40 82 00 08 */ bne lbl_802C477C
/* 802C4778 002C03D8 48 00 00 18 */ b lbl_802C4790
lbl_802C477C:
/* 802C477C 002C03DC 3B DE 00 01 */ addi r30, r30, 1
/* 802C4780 002C03E0 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C4784 002C03E4 28 1E 00 04 */ cmplwi r30, 4
/* 802C4788 002C03E8 41 80 FF CC */ blt lbl_802C4754
/* 802C478C 002C03EC 3B A0 00 00 */ li r29, 0
lbl_802C4790:
/* 802C4790 002C03F0 2C 1D 00 00 */ cmpwi r29, 0
/* 802C4794 002C03F4 3B 80 00 00 */ li r28, 0
/* 802C4798 002C03F8 3B E0 00 00 */ li r31, 0
/* 802C479C 002C03FC 41 82 00 0C */ beq lbl_802C47A8
/* 802C47A0 002C0400 A3 9D 00 02 */ lhz r28, 2(r29)
/* 802C47A4 002C0404 48 00 00 28 */ b lbl_802C47CC
lbl_802C47A8:
/* 802C47A8 002C0408 3F C0 80 57 */ lis r30, lbl_80568B78@ha
/* 802C47AC 002C040C 7F 64 DB 78 */ mr r4, r27
/* 802C47B0 002C0410 3B DE 8B 78 */ addi r30, r30, lbl_80568B78@l
/* 802C47B4 002C0414 38 A0 00 06 */ li r5, 6
/* 802C47B8 002C0418 38 7E 06 30 */ addi r3, r30, 0x630
/* 802C47BC 002C041C 4B F0 5B DD */ bl memcmp
/* 802C47C0 002C0420 2C 03 00 00 */ cmpwi r3, 0
/* 802C47C4 002C0424 40 82 00 08 */ bne lbl_802C47CC
/* 802C47C8 002C0428 A3 9E 06 54 */ lhz r28, 0x654(r30)
lbl_802C47CC:
/* 802C47CC 002C042C 2C 1C 00 00 */ cmpwi r28, 0
/* 802C47D0 002C0430 41 82 00 C0 */ beq lbl_802C4890
/* 802C47D4 002C0434 57 80 04 A5 */ rlwinm. r0, r28, 0, 0x12, 0x12
/* 802C47D8 002C0438 40 82 00 0C */ bne lbl_802C47E4
/* 802C47DC 002C043C 3B E0 03 FD */ li r31, 0x3fd
/* 802C47E0 002C0440 48 00 00 B0 */ b lbl_802C4890
lbl_802C47E4:
/* 802C47E4 002C0444 57 80 04 E7 */ rlwinm. r0, r28, 0, 0x13, 0x13
/* 802C47E8 002C0448 40 82 00 0C */ bne lbl_802C47F4
/* 802C47EC 002C044C 3B E0 02 A7 */ li r31, 0x2a7
/* 802C47F0 002C0450 48 00 00 A0 */ b lbl_802C4890
lbl_802C47F4:
/* 802C47F4 002C0454 57 80 05 AD */ rlwinm. r0, r28, 0, 0x16, 0x16
/* 802C47F8 002C0458 40 82 00 0C */ bne lbl_802C4804
/* 802C47FC 002C045C 3B E0 02 28 */ li r31, 0x228
/* 802C4800 002C0460 48 00 00 90 */ b lbl_802C4890
lbl_802C4804:
/* 802C4804 002C0464 57 80 04 21 */ rlwinm. r0, r28, 0, 0x10, 0x10
/* 802C4808 002C0468 41 82 00 0C */ beq lbl_802C4814
/* 802C480C 002C046C 3B E0 01 53 */ li r31, 0x153
/* 802C4810 002C0470 48 00 00 80 */ b lbl_802C4890
lbl_802C4814:
/* 802C4814 002C0474 57 80 05 EF */ rlwinm. r0, r28, 0, 0x17, 0x17
/* 802C4818 002C0478 40 82 00 0C */ bne lbl_802C4824
/* 802C481C 002C047C 3B E0 01 6F */ li r31, 0x16f
/* 802C4820 002C0480 48 00 00 70 */ b lbl_802C4890
lbl_802C4824:
/* 802C4824 002C0484 57 80 04 63 */ rlwinm. r0, r28, 0, 0x11, 0x11
/* 802C4828 002C0488 41 82 00 0C */ beq lbl_802C4834
/* 802C482C 002C048C 3B E0 00 E0 */ li r31, 0xe0
/* 802C4830 002C0490 48 00 00 60 */ b lbl_802C4890
lbl_802C4834:
/* 802C4834 002C0494 57 80 05 29 */ rlwinm. r0, r28, 0, 0x14, 0x14
/* 802C4838 002C0498 41 82 00 0C */ beq lbl_802C4844
/* 802C483C 002C049C 3B E0 00 B7 */ li r31, 0xb7
/* 802C4840 002C04A0 48 00 00 50 */ b lbl_802C4890
lbl_802C4844:
/* 802C4844 002C04A4 57 80 05 6B */ rlwinm. r0, r28, 0, 0x15, 0x15
/* 802C4848 002C04A8 41 82 00 0C */ beq lbl_802C4854
/* 802C484C 002C04AC 3B E0 00 79 */ li r31, 0x79
/* 802C4850 002C04B0 48 00 00 40 */ b lbl_802C4890
lbl_802C4854:
/* 802C4854 002C04B4 57 80 07 7B */ rlwinm. r0, r28, 0, 0x1d, 0x1d
/* 802C4858 002C04B8 40 82 00 0C */ bne lbl_802C4864
/* 802C485C 002C04BC 3B E0 00 53 */ li r31, 0x53
/* 802C4860 002C04C0 48 00 00 30 */ b lbl_802C4890
lbl_802C4864:
/* 802C4864 002C04C4 57 80 07 BD */ rlwinm. r0, r28, 0, 0x1e, 0x1e
/* 802C4868 002C04C8 40 82 00 0C */ bne lbl_802C4874
/* 802C486C 002C04CC 3B E0 00 36 */ li r31, 0x36
/* 802C4870 002C04D0 48 00 00 20 */ b lbl_802C4890
lbl_802C4874:
/* 802C4874 002C04D4 57 80 06 F7 */ rlwinm. r0, r28, 0, 0x1b, 0x1b
/* 802C4878 002C04D8 41 82 00 0C */ beq lbl_802C4884
/* 802C487C 002C04DC 3B E0 00 1B */ li r31, 0x1b
/* 802C4880 002C04E0 48 00 00 10 */ b lbl_802C4890
lbl_802C4884:
/* 802C4884 002C04E4 57 80 07 39 */ rlwinm. r0, r28, 0, 0x1c, 0x1c
/* 802C4888 002C04E8 41 82 00 08 */ beq lbl_802C4890
/* 802C488C 002C04EC 3B E0 00 11 */ li r31, 0x11
lbl_802C4890:
/* 802C4890 002C04F0 28 1F 03 FD */ cmplwi r31, 0x3fd
/* 802C4894 002C04F4 40 82 00 1C */ bne lbl_802C48B0
/* 802C4898 002C04F8 3C 60 80 57 */ lis r3, lbl_80568650@ha
/* 802C489C 002C04FC 38 63 86 50 */ addi r3, r3, lbl_80568650@l
/* 802C48A0 002C0500 A0 03 00 7C */ lhz r0, 0x7c(r3)
/* 802C48A4 002C0504 28 00 03 F9 */ cmplwi r0, 0x3f9
/* 802C48A8 002C0508 40 82 00 08 */ bne lbl_802C48B0
/* 802C48AC 002C050C 3B E0 03 F9 */ li r31, 0x3f9
lbl_802C48B0:
/* 802C48B0 002C0510 39 61 00 20 */ addi r11, r1, 0x20
/* 802C48B4 002C0514 7F E3 FB 78 */ mr r3, r31
/* 802C48B8 002C0518 4B F0 28 BD */ bl _restgpr_27
/* 802C48BC 002C051C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C48C0 002C0520 7C 08 03 A6 */ mtlr r0
/* 802C48C4 002C0524 38 21 00 20 */ addi r1, r1, 0x20
/* 802C48C8 002C0528 4E 80 00 20 */ blr
.global BTM_AclRegisterForChanges
BTM_AclRegisterForChanges:
/* 802C48CC 002C052C 2C 03 00 00 */ cmpwi r3, 0
/* 802C48D0 002C0530 40 82 00 18 */ bne lbl_802C48E8
/* 802C48D4 002C0534 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C48D8 002C0538 38 00 00 00 */ li r0, 0
/* 802C48DC 002C053C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C48E0 002C0540 90 03 04 C8 */ stw r0, 0x4c8(r3)
/* 802C48E4 002C0544 48 00 00 24 */ b lbl_802C4908
lbl_802C48E8:
/* 802C48E8 002C0548 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C48EC 002C054C 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C48F0 002C0550 80 04 04 C8 */ lwz r0, 0x4c8(r4)
/* 802C48F4 002C0554 2C 00 00 00 */ cmpwi r0, 0
/* 802C48F8 002C0558 41 82 00 0C */ beq lbl_802C4904
/* 802C48FC 002C055C 38 60 00 02 */ li r3, 2
/* 802C4900 002C0560 4E 80 00 20 */ blr
lbl_802C4904:
/* 802C4904 002C0564 90 64 04 C8 */ stw r3, 0x4c8(r4)
lbl_802C4908:
/* 802C4908 002C0568 38 60 00 00 */ li r3, 0
/* 802C490C 002C056C 4E 80 00 20 */ blr
.global btm_qos_setup_complete
btm_qos_setup_complete:
/* 802C4910 002C0570 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802C4914 002C0574 7C 08 02 A6 */ mflr r0
/* 802C4918 002C0578 90 01 00 44 */ stw r0, 0x44(r1)
/* 802C491C 002C057C 39 61 00 40 */ addi r11, r1, 0x40
/* 802C4920 002C0580 4B F0 28 09 */ bl _savegpr_27
/* 802C4924 002C0584 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C4928 002C0588 7C 7B 1B 78 */ mr r27, r3
/* 802C492C 002C058C 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C4930 002C0590 7C 9C 23 78 */ mr r28, r4
/* 802C4934 002C0594 83 DF 06 18 */ lwz r30, 0x618(r31)
/* 802C4938 002C0598 7C BD 2B 78 */ mr r29, r5
/* 802C493C 002C059C 38 7F 06 00 */ addi r3, r31, 0x600
/* 802C4940 002C05A0 4B FF 8C 0D */ bl btu_stop_timer
/* 802C4944 002C05A4 38 00 00 00 */ li r0, 0
/* 802C4948 002C05A8 2C 1E 00 00 */ cmpwi r30, 0
/* 802C494C 002C05AC 90 1F 06 18 */ stw r0, 0x618(r31)
/* 802C4950 002C05B0 41 82 00 80 */ beq lbl_802C49D0
/* 802C4954 002C05B4 2C 1D 00 00 */ cmpwi r29, 0
/* 802C4958 002C05B8 9B 61 00 22 */ stb r27, 0x22(r1)
/* 802C495C 002C05BC B3 81 00 20 */ sth r28, 0x20(r1)
/* 802C4960 002C05C0 41 82 00 34 */ beq lbl_802C4994
/* 802C4964 002C05C4 88 1D 00 00 */ lbz r0, 0(r29)
/* 802C4968 002C05C8 98 01 00 08 */ stb r0, 8(r1)
/* 802C496C 002C05CC 88 1D 00 01 */ lbz r0, 1(r29)
/* 802C4970 002C05D0 98 01 00 09 */ stb r0, 9(r1)
/* 802C4974 002C05D4 80 1D 00 04 */ lwz r0, 4(r29)
/* 802C4978 002C05D8 90 01 00 0C */ stw r0, 0xc(r1)
/* 802C497C 002C05DC 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 802C4980 002C05E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802C4984 002C05E4 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 802C4988 002C05E8 90 01 00 18 */ stw r0, 0x18(r1)
/* 802C498C 002C05EC 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 802C4990 002C05F0 90 01 00 1C */ stw r0, 0x1c(r1)
lbl_802C4994:
/* 802C4994 002C05F4 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4998 002C05F8 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C499C 002C05FC 88 03 27 C0 */ lbz r0, 0x27c0(r3)
/* 802C49A0 002C0600 28 00 00 05 */ cmplwi r0, 5
/* 802C49A4 002C0604 41 80 00 1C */ blt lbl_802C49C0
/* 802C49A8 002C0608 3C 60 00 0D */ lis r3, 0x000D0004@ha
/* 802C49AC 002C060C 3C 80 80 44 */ lis r4, lbl_80440F44@ha
/* 802C49B0 002C0610 80 BD 00 14 */ lwz r5, 0x14(r29)
/* 802C49B4 002C0614 38 63 00 04 */ addi r3, r3, 0x000D0004@l
/* 802C49B8 002C0618 38 84 0F 44 */ addi r4, r4, lbl_80440F44@l
/* 802C49BC 002C061C 4B FF 85 6D */ bl LogMsg_1
lbl_802C49C0:
/* 802C49C0 002C0620 7F CC F3 78 */ mr r12, r30
/* 802C49C4 002C0624 38 61 00 08 */ addi r3, r1, 8
/* 802C49C8 002C0628 7D 89 03 A6 */ mtctr r12
/* 802C49CC 002C062C 4E 80 04 21 */ bctrl
lbl_802C49D0:
/* 802C49D0 002C0630 39 61 00 40 */ addi r11, r1, 0x40
/* 802C49D4 002C0634 4B F0 27 A1 */ bl _restgpr_27
/* 802C49D8 002C0638 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802C49DC 002C063C 7C 08 03 A6 */ mtlr r0
/* 802C49E0 002C0640 38 21 00 40 */ addi r1, r1, 0x40
/* 802C49E4 002C0644 4E 80 00 20 */ blr
.global BTM_ReadRSSI
BTM_ReadRSSI:
/* 802C49E8 002C0648 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C49EC 002C064C 7C 08 02 A6 */ mflr r0
/* 802C49F0 002C0650 3C A0 80 57 */ lis r5, lbl_80568B78@ha
/* 802C49F4 002C0654 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C49F8 002C0658 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l
/* 802C49FC 002C065C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C4A00 002C0660 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C4A04 002C0664 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C4A08 002C0668 7C 9D 23 78 */ mr r29, r4
/* 802C4A0C 002C066C 93 81 00 10 */ stw r28, 0x10(r1)
/* 802C4A10 002C0670 7C 7C 1B 78 */ mr r28, r3
/* 802C4A14 002C0674 88 05 27 C0 */ lbz r0, 0x27c0(r5)
/* 802C4A18 002C0678 28 00 00 03 */ cmplwi r0, 3
/* 802C4A1C 002C067C 41 80 00 30 */ blt lbl_802C4A4C
/* 802C4A20 002C0680 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C4A24 002C0684 3C 80 80 44 */ lis r4, lbl_80440F6C@ha
/* 802C4A28 002C0688 88 BC 00 00 */ lbz r5, 0(r28)
/* 802C4A2C 002C068C 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C4A30 002C0690 88 DC 00 01 */ lbz r6, 1(r28)
/* 802C4A34 002C0694 38 84 0F 6C */ addi r4, r4, lbl_80440F6C@l
/* 802C4A38 002C0698 88 FC 00 02 */ lbz r7, 2(r28)
/* 802C4A3C 002C069C 89 1C 00 03 */ lbz r8, 3(r28)
/* 802C4A40 002C06A0 89 3C 00 04 */ lbz r9, 4(r28)
/* 802C4A44 002C06A4 89 5C 00 05 */ lbz r10, 5(r28)
/* 802C4A48 002C06A8 4B FF 85 59 */ bl LogMsg_6
lbl_802C4A4C:
/* 802C4A4C 002C06AC 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4A50 002C06B0 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4A54 002C06B4 80 03 05 E0 */ lwz r0, 0x5e0(r3)
/* 802C4A58 002C06B8 2C 00 00 00 */ cmpwi r0, 0
/* 802C4A5C 002C06BC 41 82 00 0C */ beq lbl_802C4A68
/* 802C4A60 002C06C0 38 60 00 02 */ li r3, 2
/* 802C4A64 002C06C4 48 00 00 A0 */ b lbl_802C4B04
lbl_802C4A68:
/* 802C4A68 002C06C8 3B C3 00 34 */ addi r30, r3, 0x34
/* 802C4A6C 002C06CC 3B E0 00 00 */ li r31, 0
lbl_802C4A70:
/* 802C4A70 002C06D0 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C4A74 002C06D4 2C 00 00 00 */ cmpwi r0, 0
/* 802C4A78 002C06D8 41 82 00 20 */ beq lbl_802C4A98
/* 802C4A7C 002C06DC 7F 84 E3 78 */ mr r4, r28
/* 802C4A80 002C06E0 38 7E 00 08 */ addi r3, r30, 8
/* 802C4A84 002C06E4 38 A0 00 06 */ li r5, 6
/* 802C4A88 002C06E8 4B F0 59 11 */ bl memcmp
/* 802C4A8C 002C06EC 2C 03 00 00 */ cmpwi r3, 0
/* 802C4A90 002C06F0 40 82 00 08 */ bne lbl_802C4A98
/* 802C4A94 002C06F4 48 00 00 18 */ b lbl_802C4AAC
lbl_802C4A98:
/* 802C4A98 002C06F8 3B FF 00 01 */ addi r31, r31, 1
/* 802C4A9C 002C06FC 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C4AA0 002C0700 28 1F 00 04 */ cmplwi r31, 4
/* 802C4AA4 002C0704 41 80 FF CC */ blt lbl_802C4A70
/* 802C4AA8 002C0708 3B C0 00 00 */ li r30, 0
lbl_802C4AAC:
/* 802C4AAC 002C070C 2C 1E 00 00 */ cmpwi r30, 0
/* 802C4AB0 002C0710 41 82 00 50 */ beq lbl_802C4B00
/* 802C4AB4 002C0714 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C4AB8 002C0718 38 80 00 09 */ li r4, 9
/* 802C4ABC 002C071C 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C4AC0 002C0720 38 A0 00 03 */ li r5, 3
/* 802C4AC4 002C0724 38 7F 05 C8 */ addi r3, r31, 0x5c8
/* 802C4AC8 002C0728 4B FF 8A 15 */ bl btu_start_timer
/* 802C4ACC 002C072C 93 BF 05 E0 */ stw r29, 0x5e0(r31)
/* 802C4AD0 002C0730 A0 7E 00 00 */ lhz r3, 0(r30)
/* 802C4AD4 002C0734 48 00 D4 15 */ bl btsnd_hcic_read_rssi
/* 802C4AD8 002C0738 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C4ADC 002C073C 40 82 00 1C */ bne lbl_802C4AF8
/* 802C4AE0 002C0740 38 00 00 00 */ li r0, 0
/* 802C4AE4 002C0744 38 7F 05 C8 */ addi r3, r31, 0x5c8
/* 802C4AE8 002C0748 90 1F 05 E0 */ stw r0, 0x5e0(r31)
/* 802C4AEC 002C074C 4B FF 8A 61 */ bl btu_stop_timer
/* 802C4AF0 002C0750 38 60 00 03 */ li r3, 3
/* 802C4AF4 002C0754 48 00 00 10 */ b lbl_802C4B04
lbl_802C4AF8:
/* 802C4AF8 002C0758 38 60 00 01 */ li r3, 1
/* 802C4AFC 002C075C 48 00 00 08 */ b lbl_802C4B04
lbl_802C4B00:
/* 802C4B00 002C0760 38 60 00 07 */ li r3, 7
lbl_802C4B04:
/* 802C4B04 002C0764 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4B08 002C0768 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C4B0C 002C076C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C4B10 002C0770 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C4B14 002C0774 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802C4B18 002C0778 7C 08 03 A6 */ mtlr r0
/* 802C4B1C 002C077C 38 21 00 20 */ addi r1, r1, 0x20
/* 802C4B20 002C0780 4E 80 00 20 */ blr
.global BTM_ReadLinkQuality
BTM_ReadLinkQuality:
/* 802C4B24 002C0784 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C4B28 002C0788 7C 08 02 A6 */ mflr r0
/* 802C4B2C 002C078C 3C A0 80 57 */ lis r5, lbl_80568B78@ha
/* 802C4B30 002C0790 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C4B34 002C0794 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l
/* 802C4B38 002C0798 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C4B3C 002C079C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C4B40 002C07A0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C4B44 002C07A4 7C 9D 23 78 */ mr r29, r4
/* 802C4B48 002C07A8 93 81 00 10 */ stw r28, 0x10(r1)
/* 802C4B4C 002C07AC 7C 7C 1B 78 */ mr r28, r3
/* 802C4B50 002C07B0 88 05 27 C0 */ lbz r0, 0x27c0(r5)
/* 802C4B54 002C07B4 28 00 00 03 */ cmplwi r0, 3
/* 802C4B58 002C07B8 41 80 00 30 */ blt lbl_802C4B88
/* 802C4B5C 002C07BC 3C 60 00 0D */ lis r3, 0x000D0002@ha
/* 802C4B60 002C07C0 3C 80 80 44 */ lis r4, lbl_80440FA0@ha
/* 802C4B64 002C07C4 88 BC 00 00 */ lbz r5, 0(r28)
/* 802C4B68 002C07C8 38 63 00 02 */ addi r3, r3, 0x000D0002@l
/* 802C4B6C 002C07CC 88 DC 00 01 */ lbz r6, 1(r28)
/* 802C4B70 002C07D0 38 84 0F A0 */ addi r4, r4, lbl_80440FA0@l
/* 802C4B74 002C07D4 88 FC 00 02 */ lbz r7, 2(r28)
/* 802C4B78 002C07D8 89 1C 00 03 */ lbz r8, 3(r28)
/* 802C4B7C 002C07DC 89 3C 00 04 */ lbz r9, 4(r28)
/* 802C4B80 002C07E0 89 5C 00 05 */ lbz r10, 5(r28)
/* 802C4B84 002C07E4 4B FF 84 1D */ bl LogMsg_6
lbl_802C4B88:
/* 802C4B88 002C07E8 3C 60 80 57 */ lis r3, lbl_80568B78@ha
/* 802C4B8C 002C07EC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l
/* 802C4B90 002C07F0 80 03 05 FC */ lwz r0, 0x5fc(r3)
/* 802C4B94 002C07F4 2C 00 00 00 */ cmpwi r0, 0
/* 802C4B98 002C07F8 41 82 00 0C */ beq lbl_802C4BA4
/* 802C4B9C 002C07FC 38 60 00 02 */ li r3, 2
/* 802C4BA0 002C0800 48 00 00 A0 */ b lbl_802C4C40
lbl_802C4BA4:
/* 802C4BA4 002C0804 3B C3 00 34 */ addi r30, r3, 0x34
/* 802C4BA8 002C0808 3B E0 00 00 */ li r31, 0
lbl_802C4BAC:
/* 802C4BAC 002C080C 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C4BB0 002C0810 2C 00 00 00 */ cmpwi r0, 0
/* 802C4BB4 002C0814 41 82 00 20 */ beq lbl_802C4BD4
/* 802C4BB8 002C0818 7F 84 E3 78 */ mr r4, r28
/* 802C4BBC 002C081C 38 7E 00 08 */ addi r3, r30, 8
/* 802C4BC0 002C0820 38 A0 00 06 */ li r5, 6
/* 802C4BC4 002C0824 4B F0 57 D5 */ bl memcmp
/* 802C4BC8 002C0828 2C 03 00 00 */ cmpwi r3, 0
/* 802C4BCC 002C082C 40 82 00 08 */ bne lbl_802C4BD4
/* 802C4BD0 002C0830 48 00 00 18 */ b lbl_802C4BE8
lbl_802C4BD4:
/* 802C4BD4 002C0834 3B FF 00 01 */ addi r31, r31, 1
/* 802C4BD8 002C0838 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C4BDC 002C083C 28 1F 00 04 */ cmplwi r31, 4
/* 802C4BE0 002C0840 41 80 FF CC */ blt lbl_802C4BAC
/* 802C4BE4 002C0844 3B C0 00 00 */ li r30, 0
lbl_802C4BE8:
/* 802C4BE8 002C0848 2C 1E 00 00 */ cmpwi r30, 0
/* 802C4BEC 002C084C 41 82 00 50 */ beq lbl_802C4C3C
/* 802C4BF0 002C0850 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C4BF4 002C0854 38 80 00 09 */ li r4, 9
/* 802C4BF8 002C0858 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C4BFC 002C085C 38 A0 00 03 */ li r5, 3
/* 802C4C00 002C0860 38 7F 05 E4 */ addi r3, r31, 0x5e4
/* 802C4C04 002C0864 4B FF 88 D9 */ bl btu_start_timer
/* 802C4C08 002C0868 93 BF 05 FC */ stw r29, 0x5fc(r31)
/* 802C4C0C 002C086C A0 7E 00 00 */ lhz r3, 0(r30)
/* 802C4C10 002C0870 48 00 D2 5D */ bl btsnd_hcic_get_link_quality
/* 802C4C14 002C0874 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C4C18 002C0878 40 82 00 1C */ bne lbl_802C4C34
/* 802C4C1C 002C087C 38 7F 05 E4 */ addi r3, r31, 0x5e4
/* 802C4C20 002C0880 4B FF 89 2D */ bl btu_stop_timer
/* 802C4C24 002C0884 38 00 00 00 */ li r0, 0
/* 802C4C28 002C0888 38 60 00 03 */ li r3, 3
/* 802C4C2C 002C088C 90 1F 05 FC */ stw r0, 0x5fc(r31)
/* 802C4C30 002C0890 48 00 00 10 */ b lbl_802C4C40
lbl_802C4C34:
/* 802C4C34 002C0894 38 60 00 01 */ li r3, 1
/* 802C4C38 002C0898 48 00 00 08 */ b lbl_802C4C40
lbl_802C4C3C:
/* 802C4C3C 002C089C 38 60 00 07 */ li r3, 7
lbl_802C4C40:
/* 802C4C40 002C08A0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4C44 002C08A4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C4C48 002C08A8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C4C4C 002C08AC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C4C50 002C08B0 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802C4C54 002C08B4 7C 08 03 A6 */ mtlr r0
/* 802C4C58 002C08B8 38 21 00 20 */ addi r1, r1, 0x20
/* 802C4C5C 002C08BC 4E 80 00 20 */ blr
.global btm_read_rssi_complete
btm_read_rssi_complete:
/* 802C4C60 002C08C0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802C4C64 002C08C4 7C 08 02 A6 */ mflr r0
/* 802C4C68 002C08C8 90 01 00 34 */ stw r0, 0x34(r1)
/* 802C4C6C 002C08CC 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802C4C70 002C08D0 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C4C74 002C08D4 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C4C78 002C08D8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802C4C7C 002C08DC 93 A1 00 24 */ stw r29, 0x24(r1)
/* 802C4C80 002C08E0 3B BF 00 34 */ addi r29, r31, 0x34
/* 802C4C84 002C08E4 93 81 00 20 */ stw r28, 0x20(r1)
/* 802C4C88 002C08E8 7C 7C 1B 78 */ mr r28, r3
/* 802C4C8C 002C08EC 38 7F 05 C8 */ addi r3, r31, 0x5c8
/* 802C4C90 002C08F0 83 DF 05 E0 */ lwz r30, 0x5e0(r31)
/* 802C4C94 002C08F4 4B FF 88 B9 */ bl btu_stop_timer
/* 802C4C98 002C08F8 38 00 00 00 */ li r0, 0
/* 802C4C9C 002C08FC 2C 1E 00 00 */ cmpwi r30, 0
/* 802C4CA0 002C0900 90 1F 05 E0 */ stw r0, 0x5e0(r31)
/* 802C4CA4 002C0904 41 82 00 B8 */ beq lbl_802C4D5C
/* 802C4CA8 002C0908 88 DC 00 00 */ lbz r6, 0(r28)
/* 802C4CAC 002C090C 2C 06 00 00 */ cmpwi r6, 0
/* 802C4CB0 002C0910 98 C1 00 09 */ stb r6, 9(r1)
/* 802C4CB4 002C0914 40 82 00 90 */ bne lbl_802C4D44
/* 802C4CB8 002C0918 98 01 00 08 */ stb r0, 8(r1)
/* 802C4CBC 002C091C 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C4CC0 002C0920 88 7C 00 02 */ lbz r3, 2(r28)
/* 802C4CC4 002C0924 88 9C 00 01 */ lbz r4, 1(r28)
/* 802C4CC8 002C0928 28 00 00 04 */ cmplwi r0, 4
/* 802C4CCC 002C092C 88 BC 00 03 */ lbz r5, 3(r28)
/* 802C4CD0 002C0930 54 60 40 2E */ slwi r0, r3, 8
/* 802C4CD4 002C0934 7C 04 02 14 */ add r0, r4, r0
/* 802C4CD8 002C0938 98 A1 00 0A */ stb r5, 0xa(r1)
/* 802C4CDC 002C093C 54 1F 04 3E */ clrlwi r31, r0, 0x10
/* 802C4CE0 002C0940 41 80 00 1C */ blt lbl_802C4CFC
/* 802C4CE4 002C0944 3C 60 00 0D */ lis r3, 0x000D0003@ha
/* 802C4CE8 002C0948 3C 80 80 44 */ lis r4, lbl_80440FDC@ha
/* 802C4CEC 002C094C 38 63 00 03 */ addi r3, r3, 0x000D0003@l
/* 802C4CF0 002C0950 7C A5 07 74 */ extsb r5, r5
/* 802C4CF4 002C0954 38 84 0F DC */ addi r4, r4, lbl_80440FDC@l
/* 802C4CF8 002C0958 4B FF 82 49 */ bl LogMsg_2
lbl_802C4CFC:
/* 802C4CFC 002C095C 38 00 00 04 */ li r0, 4
/* 802C4D00 002C0960 38 60 00 00 */ li r3, 0
/* 802C4D04 002C0964 7C 09 03 A6 */ mtctr r0
lbl_802C4D08:
/* 802C4D08 002C0968 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C4D0C 002C096C 2C 00 00 00 */ cmpwi r0, 0
/* 802C4D10 002C0970 41 82 00 24 */ beq lbl_802C4D34
/* 802C4D14 002C0974 A0 1D 00 00 */ lhz r0, 0(r29)
/* 802C4D18 002C0978 7C 1F 00 40 */ cmplw r31, r0
/* 802C4D1C 002C097C 40 82 00 18 */ bne lbl_802C4D34
/* 802C4D20 002C0980 38 61 00 0B */ addi r3, r1, 0xb
/* 802C4D24 002C0984 38 9D 00 08 */ addi r4, r29, 8
/* 802C4D28 002C0988 38 A0 00 06 */ li r5, 6
/* 802C4D2C 002C098C 4B D3 F2 D5 */ bl memcpy
/* 802C4D30 002C0990 48 00 00 1C */ b lbl_802C4D4C
lbl_802C4D34:
/* 802C4D34 002C0994 38 63 00 01 */ addi r3, r3, 1
/* 802C4D38 002C0998 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C4D3C 002C099C 42 00 FF CC */ bdnz lbl_802C4D08
/* 802C4D40 002C09A0 48 00 00 0C */ b lbl_802C4D4C
lbl_802C4D44:
/* 802C4D44 002C09A4 38 00 00 0A */ li r0, 0xa
/* 802C4D48 002C09A8 98 01 00 08 */ stb r0, 8(r1)
lbl_802C4D4C:
/* 802C4D4C 002C09AC 7F CC F3 78 */ mr r12, r30
/* 802C4D50 002C09B0 38 61 00 08 */ addi r3, r1, 8
/* 802C4D54 002C09B4 7D 89 03 A6 */ mtctr r12
/* 802C4D58 002C09B8 4E 80 04 21 */ bctrl
lbl_802C4D5C:
/* 802C4D5C 002C09BC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802C4D60 002C09C0 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802C4D64 002C09C4 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802C4D68 002C09C8 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802C4D6C 002C09CC 83 81 00 20 */ lwz r28, 0x20(r1)
/* 802C4D70 002C09D0 7C 08 03 A6 */ mtlr r0
/* 802C4D74 002C09D4 38 21 00 30 */ addi r1, r1, 0x30
/* 802C4D78 002C09D8 4E 80 00 20 */ blr
.global btm_read_link_quality_complete
btm_read_link_quality_complete:
/* 802C4D7C 002C09DC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802C4D80 002C09E0 7C 08 02 A6 */ mflr r0
/* 802C4D84 002C09E4 90 01 00 34 */ stw r0, 0x34(r1)
/* 802C4D88 002C09E8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 802C4D8C 002C09EC 3F E0 80 57 */ lis r31, lbl_80568B78@ha
/* 802C4D90 002C09F0 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l
/* 802C4D94 002C09F4 93 C1 00 28 */ stw r30, 0x28(r1)
/* 802C4D98 002C09F8 93 A1 00 24 */ stw r29, 0x24(r1)
/* 802C4D9C 002C09FC 3B BF 00 34 */ addi r29, r31, 0x34
/* 802C4DA0 002C0A00 93 81 00 20 */ stw r28, 0x20(r1)
/* 802C4DA4 002C0A04 7C 7C 1B 78 */ mr r28, r3
/* 802C4DA8 002C0A08 38 7F 05 C8 */ addi r3, r31, 0x5c8
/* 802C4DAC 002C0A0C 83 DF 05 FC */ lwz r30, 0x5fc(r31)
/* 802C4DB0 002C0A10 4B FF 87 9D */ bl btu_stop_timer
/* 802C4DB4 002C0A14 38 00 00 00 */ li r0, 0
/* 802C4DB8 002C0A18 2C 1E 00 00 */ cmpwi r30, 0
/* 802C4DBC 002C0A1C 90 1F 05 FC */ stw r0, 0x5fc(r31)
/* 802C4DC0 002C0A20 41 82 00 B4 */ beq lbl_802C4E74
/* 802C4DC4 002C0A24 88 DC 00 00 */ lbz r6, 0(r28)
/* 802C4DC8 002C0A28 2C 06 00 00 */ cmpwi r6, 0
/* 802C4DCC 002C0A2C 98 C1 00 09 */ stb r6, 9(r1)
/* 802C4DD0 002C0A30 40 82 00 8C */ bne lbl_802C4E5C
/* 802C4DD4 002C0A34 98 01 00 08 */ stb r0, 8(r1)
/* 802C4DD8 002C0A38 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C4DDC 002C0A3C 88 7C 00 02 */ lbz r3, 2(r28)
/* 802C4DE0 002C0A40 88 9C 00 01 */ lbz r4, 1(r28)
/* 802C4DE4 002C0A44 28 00 00 04 */ cmplwi r0, 4
/* 802C4DE8 002C0A48 88 BC 00 03 */ lbz r5, 3(r28)
/* 802C4DEC 002C0A4C 54 60 40 2E */ slwi r0, r3, 8
/* 802C4DF0 002C0A50 7C 04 02 14 */ add r0, r4, r0
/* 802C4DF4 002C0A54 98 A1 00 0A */ stb r5, 0xa(r1)
/* 802C4DF8 002C0A58 54 1F 04 3E */ clrlwi r31, r0, 0x10
/* 802C4DFC 002C0A5C 41 80 00 18 */ blt lbl_802C4E14
/* 802C4E00 002C0A60 3C 60 00 0D */ lis r3, 0x000D0003@ha
/* 802C4E04 002C0A64 3C 80 80 44 */ lis r4, lbl_8044100C@ha
/* 802C4E08 002C0A68 38 63 00 03 */ addi r3, r3, 0x000D0003@l
/* 802C4E0C 002C0A6C 38 84 10 0C */ addi r4, r4, lbl_8044100C@l
/* 802C4E10 002C0A70 4B FF 81 31 */ bl LogMsg_2
lbl_802C4E14:
/* 802C4E14 002C0A74 38 00 00 04 */ li r0, 4
/* 802C4E18 002C0A78 38 60 00 00 */ li r3, 0
/* 802C4E1C 002C0A7C 7C 09 03 A6 */ mtctr r0
lbl_802C4E20:
/* 802C4E20 002C0A80 88 1D 01 19 */ lbz r0, 0x119(r29)
/* 802C4E24 002C0A84 2C 00 00 00 */ cmpwi r0, 0
/* 802C4E28 002C0A88 41 82 00 24 */ beq lbl_802C4E4C
/* 802C4E2C 002C0A8C A0 1D 00 00 */ lhz r0, 0(r29)
/* 802C4E30 002C0A90 7C 1F 00 40 */ cmplw r31, r0
/* 802C4E34 002C0A94 40 82 00 18 */ bne lbl_802C4E4C
/* 802C4E38 002C0A98 38 61 00 0B */ addi r3, r1, 0xb
/* 802C4E3C 002C0A9C 38 9D 00 08 */ addi r4, r29, 8
/* 802C4E40 002C0AA0 38 A0 00 06 */ li r5, 6
/* 802C4E44 002C0AA4 4B D3 F1 BD */ bl memcpy
/* 802C4E48 002C0AA8 48 00 00 1C */ b lbl_802C4E64
lbl_802C4E4C:
/* 802C4E4C 002C0AAC 38 63 00 01 */ addi r3, r3, 1
/* 802C4E50 002C0AB0 3B BD 01 1C */ addi r29, r29, 0x11c
/* 802C4E54 002C0AB4 42 00 FF CC */ bdnz lbl_802C4E20
/* 802C4E58 002C0AB8 48 00 00 0C */ b lbl_802C4E64
lbl_802C4E5C:
/* 802C4E5C 002C0ABC 38 00 00 0A */ li r0, 0xa
/* 802C4E60 002C0AC0 98 01 00 08 */ stb r0, 8(r1)
lbl_802C4E64:
/* 802C4E64 002C0AC4 7F CC F3 78 */ mr r12, r30
/* 802C4E68 002C0AC8 38 61 00 08 */ addi r3, r1, 8
/* 802C4E6C 002C0ACC 7D 89 03 A6 */ mtctr r12
/* 802C4E70 002C0AD0 4E 80 04 21 */ bctrl
lbl_802C4E74:
/* 802C4E74 002C0AD4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802C4E78 002C0AD8 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 802C4E7C 002C0ADC 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 802C4E80 002C0AE0 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 802C4E84 002C0AE4 83 81 00 20 */ lwz r28, 0x20(r1)
/* 802C4E88 002C0AE8 7C 08 03 A6 */ mtlr r0
/* 802C4E8C 002C0AEC 38 21 00 30 */ addi r1, r1, 0x30
/* 802C4E90 002C0AF0 4E 80 00 20 */ blr
.global btm_remove_acl
btm_remove_acl:
/* 802C4E94 002C0AF4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C4E98 002C0AF8 7C 08 02 A6 */ mflr r0
/* 802C4E9C 002C0AFC 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C4EA0 002C0B00 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C4EA4 002C0B04 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l
/* 802C4EA8 002C0B08 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802C4EAC 002C0B0C 3B E0 00 00 */ li r31, 0
/* 802C4EB0 002C0B10 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802C4EB4 002C0B14 3B C4 00 34 */ addi r30, r4, 0x34
/* 802C4EB8 002C0B18 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802C4EBC 002C0B1C 7C 7D 1B 78 */ mr r29, r3
lbl_802C4EC0:
/* 802C4EC0 002C0B20 88 1E 01 19 */ lbz r0, 0x119(r30)
/* 802C4EC4 002C0B24 2C 00 00 00 */ cmpwi r0, 0
/* 802C4EC8 002C0B28 41 82 00 20 */ beq lbl_802C4EE8
/* 802C4ECC 002C0B2C 7F A4 EB 78 */ mr r4, r29
/* 802C4ED0 002C0B30 38 7E 00 08 */ addi r3, r30, 8
/* 802C4ED4 002C0B34 38 A0 00 06 */ li r5, 6
/* 802C4ED8 002C0B38 4B F0 54 C1 */ bl memcmp
/* 802C4EDC 002C0B3C 2C 03 00 00 */ cmpwi r3, 0
/* 802C4EE0 002C0B40 40 82 00 08 */ bne lbl_802C4EE8
/* 802C4EE4 002C0B44 48 00 00 18 */ b lbl_802C4EFC
lbl_802C4EE8:
/* 802C4EE8 002C0B48 3B FF 00 01 */ addi r31, r31, 1
/* 802C4EEC 002C0B4C 3B DE 01 1C */ addi r30, r30, 0x11c
/* 802C4EF0 002C0B50 28 1F 00 04 */ cmplwi r31, 4
/* 802C4EF4 002C0B54 41 80 FF CC */ blt lbl_802C4EC0
/* 802C4EF8 002C0B58 3B C0 00 00 */ li r30, 0
lbl_802C4EFC:
/* 802C4EFC 002C0B5C 2C 1E 00 00 */ cmpwi r30, 0
/* 802C4F00 002C0B60 41 82 00 0C */ beq lbl_802C4F0C
/* 802C4F04 002C0B64 A0 7E 00 00 */ lhz r3, 0(r30)
/* 802C4F08 002C0B68 48 00 00 0C */ b lbl_802C4F14
lbl_802C4F0C:
/* 802C4F0C 002C0B6C 3C 60 00 01 */ lis r3, 0x0000FFFF@ha
/* 802C4F10 002C0B70 38 63 FF FF */ addi r3, r3, 0x0000FFFF@l
lbl_802C4F14:
/* 802C4F14 002C0B74 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 802C4F18 002C0B78 38 80 00 13 */ li r4, 0x13
/* 802C4F1C 002C0B7C 48 00 B1 75 */ bl btsnd_hcic_disconnect
/* 802C4F20 002C0B80 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C4F24 002C0B84 40 82 00 0C */ bne lbl_802C4F30
/* 802C4F28 002C0B88 38 60 00 03 */ li r3, 3
/* 802C4F2C 002C0B8C 48 00 00 08 */ b lbl_802C4F34
lbl_802C4F30:
/* 802C4F30 002C0B90 38 60 00 00 */ li r3, 0
lbl_802C4F34:
/* 802C4F34 002C0B94 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C4F38 002C0B98 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802C4F3C 002C0B9C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802C4F40 002C0BA0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802C4F44 002C0BA4 7C 08 03 A6 */ mtlr r0
/* 802C4F48 002C0BA8 38 21 00 20 */ addi r1, r1, 0x20
/* 802C4F4C 002C0BAC 4E 80 00 20 */ blr
.global btm_chg_all_acl_pkt_types
btm_chg_all_acl_pkt_types:
/* 802C4F50 002C0BB0 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802C4F54 002C0BB4 7C 08 02 A6 */ mflr r0
/* 802C4F58 002C0BB8 90 01 00 44 */ stw r0, 0x44(r1)
/* 802C4F5C 002C0BBC 39 61 00 40 */ addi r11, r1, 0x40
/* 802C4F60 002C0BC0 4B F0 21 BD */ bl _savegpr_24
/* 802C4F64 002C0BC4 3C 80 80 57 */ lis r4, lbl_80568B78@ha
/* 802C4F68 002C0BC8 2C 03 00 00 */ cmpwi r3, 0
/* 802C4F6C 002C0BCC 3B E4 8B 78 */ addi r31, r4, lbl_80568B78@l
/* 802C4F70 002C0BD0 3F C0 80 44 */ lis r30, lbl_80440CC0@ha
/* 802C4F74 002C0BD4 3B DE 0C C0 */ addi r30, r30, lbl_80440CC0@l
/* 802C4F78 002C0BD8 3B 9F 00 34 */ addi r28, r31, 0x34
/* 802C4F7C 002C0BDC 41 82 00 C8 */ beq lbl_802C5044
/* 802C4F80 002C0BE0 3B A0 00 00 */ li r29, 0
/* 802C4F84 002C0BE4 3F 40 00 0D */ lis r26, 0xd
/* 802C4F88 002C0BE8 3B 00 CC F9 */ li r24, -13063
lbl_802C4F8C:
/* 802C4F8C 002C0BEC 88 1C 01 19 */ lbz r0, 0x119(r28)
/* 802C4F90 002C0BF0 2C 00 00 00 */ cmpwi r0, 0
/* 802C4F94 002C0BF4 41 82 00 9C */ beq lbl_802C5030
/* 802C4F98 002C0BF8 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C4F9C 002C0BFC 28 00 00 05 */ cmplwi r0, 5
/* 802C4FA0 002C0C00 41 80 00 14 */ blt lbl_802C4FB4
/* 802C4FA4 002C0C04 A0 BC 00 00 */ lhz r5, 0(r28)
/* 802C4FA8 002C0C08 38 7A 00 04 */ addi r3, r26, 4
/* 802C4FAC 002C0C0C 38 9E 03 8C */ addi r4, r30, 0x38c
/* 802C4FB0 002C0C10 4B FF 7F 79 */ bl LogMsg_1
lbl_802C4FB4:
/* 802C4FB4 002C0C14 A0 1C 00 02 */ lhz r0, 2(r28)
/* 802C4FB8 002C0C18 38 A0 00 18 */ li r5, 0x18
/* 802C4FBC 002C0C1C B0 1C 00 04 */ sth r0, 4(r28)
/* 802C4FC0 002C0C20 88 7F 06 36 */ lbz r3, 0x636(r31)
/* 802C4FC4 002C0C24 28 03 00 03 */ cmplwi r3, 3
/* 802C4FC8 002C0C28 41 80 00 0C */ blt lbl_802C4FD4
/* 802C4FCC 002C0C2C 60 A0 33 00 */ ori r0, r5, 0x3300
/* 802C4FD0 002C0C30 54 05 04 3E */ clrlwi r5, r0, 0x10
lbl_802C4FD4:
/* 802C4FD4 002C0C34 A0 9F 06 54 */ lhz r4, 0x654(r31)
/* 802C4FD8 002C0C38 28 83 00 03 */ cmplwi cr1, r3, 3
/* 802C4FDC 002C0C3C 7C A0 20 38 */ and r0, r5, r4
/* 802C4FE0 002C0C40 70 03 CC 18 */ andi. r3, r0, 0xcc18
/* 802C4FE4 002C0C44 7C 79 C0 38 */ and r25, r3, r24
/* 802C4FE8 002C0C48 41 84 00 14 */ blt cr1, lbl_802C4FFC
/* 802C4FEC 002C0C4C 7C A0 23 78 */ or r0, r5, r4
/* 802C4FF0 002C0C50 70 00 33 06 */ andi. r0, r0, 0x3306
/* 802C4FF4 002C0C54 7C 60 03 78 */ or r0, r3, r0
/* 802C4FF8 002C0C58 54 19 04 3E */ clrlwi r25, r0, 0x10
lbl_802C4FFC:
/* 802C4FFC 002C0C5C 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C5000 002C0C60 28 00 00 04 */ cmplwi r0, 4
/* 802C5004 002C0C64 41 80 00 14 */ blt lbl_802C5018
/* 802C5008 002C0C68 38 7A 00 03 */ addi r3, r26, 3
/* 802C500C 002C0C6C 38 9E 00 40 */ addi r4, r30, 0x40
/* 802C5010 002C0C70 57 25 04 3E */ clrlwi r5, r25, 0x10
/* 802C5014 002C0C74 4B FF 7F 15 */ bl LogMsg_1
lbl_802C5018:
/* 802C5018 002C0C78 A0 7C 00 00 */ lhz r3, 0(r28)
/* 802C501C 002C0C7C 57 24 04 3E */ clrlwi r4, r25, 0x10
/* 802C5020 002C0C80 48 00 B7 05 */ bl btsnd_hcic_change_conn_type
/* 802C5024 002C0C84 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C5028 002C0C88 41 82 00 08 */ beq lbl_802C5030
/* 802C502C 002C0C8C B3 3C 00 02 */ sth r25, 2(r28)
lbl_802C5030:
/* 802C5030 002C0C90 3B BD 00 01 */ addi r29, r29, 1
/* 802C5034 002C0C94 3B 9C 01 1C */ addi r28, r28, 0x11c
/* 802C5038 002C0C98 28 1D 00 04 */ cmplwi r29, 4
/* 802C503C 002C0C9C 41 80 FF 50 */ blt lbl_802C4F8C
/* 802C5040 002C0CA0 48 00 01 18 */ b lbl_802C5158
lbl_802C5044:
/* 802C5044 002C0CA4 3B A0 00 00 */ li r29, 0
/* 802C5048 002C0CA8 3F 00 00 0D */ lis r24, 0xd
/* 802C504C 002C0CAC 3B 20 00 00 */ li r25, 0
/* 802C5050 002C0CB0 3B 60 CC F9 */ li r27, -13063
lbl_802C5054:
/* 802C5054 002C0CB4 88 1C 01 19 */ lbz r0, 0x119(r28)
/* 802C5058 002C0CB8 2C 00 00 00 */ cmpwi r0, 0
/* 802C505C 002C0CBC 41 82 00 EC */ beq lbl_802C5148
/* 802C5060 002C0CC0 A0 1C 00 04 */ lhz r0, 4(r28)
/* 802C5064 002C0CC4 2C 00 00 00 */ cmpwi r0, 0
/* 802C5068 002C0CC8 41 82 00 E0 */ beq lbl_802C5148
/* 802C506C 002C0CCC 38 7C 00 08 */ addi r3, r28, 8
/* 802C5070 002C0CD0 38 81 00 08 */ addi r4, r1, 8
/* 802C5074 002C0CD4 48 00 40 05 */ bl BTM_ReadPowerMode
/* 802C5078 002C0CD8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C507C 002C0CDC 40 82 00 CC */ bne lbl_802C5148
/* 802C5080 002C0CE0 88 01 00 08 */ lbz r0, 8(r1)
/* 802C5084 002C0CE4 28 00 00 02 */ cmplwi r0, 2
/* 802C5088 002C0CE8 40 82 00 38 */ bne lbl_802C50C0
/* 802C508C 002C0CEC 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C5090 002C0CF0 28 00 00 05 */ cmplwi r0, 5
/* 802C5094 002C0CF4 41 80 00 14 */ blt lbl_802C50A8
/* 802C5098 002C0CF8 A0 BC 00 00 */ lhz r5, 0(r28)
/* 802C509C 002C0CFC 38 78 00 04 */ addi r3, r24, 4
/* 802C50A0 002C0D00 38 9E 03 BC */ addi r4, r30, 0x3bc
/* 802C50A4 002C0D04 4B FF 7E 85 */ bl LogMsg_1
lbl_802C50A8:
/* 802C50A8 002C0D08 9B 21 00 14 */ stb r25, 0x14(r1)
/* 802C50AC 002C0D0C 38 9C 00 08 */ addi r4, r28, 8
/* 802C50B0 002C0D10 38 A1 00 0C */ addi r5, r1, 0xc
/* 802C50B4 002C0D14 38 60 00 80 */ li r3, 0x80
/* 802C50B8 002C0D18 48 00 3D F1 */ bl BTM_SetPowerMode
/* 802C50BC 002C0D1C 48 00 00 8C */ b lbl_802C5148
lbl_802C50C0:
/* 802C50C0 002C0D20 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C50C4 002C0D24 28 00 00 05 */ cmplwi r0, 5
/* 802C50C8 002C0D28 41 80 00 18 */ blt lbl_802C50E0
/* 802C50CC 002C0D2C A0 BC 00 00 */ lhz r5, 0(r28)
/* 802C50D0 002C0D30 38 78 00 04 */ addi r3, r24, 4
/* 802C50D4 002C0D34 A0 DC 00 02 */ lhz r6, 2(r28)
/* 802C50D8 002C0D38 38 9E 03 EC */ addi r4, r30, 0x3ec
/* 802C50DC 002C0D3C 4B FF 7E 65 */ bl LogMsg_2
lbl_802C50E0:
/* 802C50E0 002C0D40 A0 9C 00 04 */ lhz r4, 4(r28)
/* 802C50E4 002C0D44 A0 BF 06 54 */ lhz r5, 0x654(r31)
/* 802C50E8 002C0D48 88 1F 06 36 */ lbz r0, 0x636(r31)
/* 802C50EC 002C0D4C 7C 83 28 38 */ and r3, r4, r5
/* 802C50F0 002C0D50 70 63 CC 18 */ andi. r3, r3, 0xcc18
/* 802C50F4 002C0D54 28 00 00 03 */ cmplwi r0, 3
/* 802C50F8 002C0D58 7C 7A D8 38 */ and r26, r3, r27
/* 802C50FC 002C0D5C 41 80 00 14 */ blt lbl_802C5110
/* 802C5100 002C0D60 7C 80 2B 78 */ or r0, r4, r5
/* 802C5104 002C0D64 70 00 33 06 */ andi. r0, r0, 0x3306
/* 802C5108 002C0D68 7C 60 03 78 */ or r0, r3, r0
/* 802C510C 002C0D6C 54 1A 04 3E */ clrlwi r26, r0, 0x10
lbl_802C5110:
/* 802C5110 002C0D70 88 1F 27 C0 */ lbz r0, 0x27c0(r31)
/* 802C5114 002C0D74 28 00 00 04 */ cmplwi r0, 4
/* 802C5118 002C0D78 41 80 00 14 */ blt lbl_802C512C
/* 802C511C 002C0D7C 38 78 00 03 */ addi r3, r24, 3
/* 802C5120 002C0D80 38 9E 00 40 */ addi r4, r30, 0x40
/* 802C5124 002C0D84 57 45 04 3E */ clrlwi r5, r26, 0x10
/* 802C5128 002C0D88 4B FF 7E 01 */ bl LogMsg_1
lbl_802C512C:
/* 802C512C 002C0D8C A0 7C 00 00 */ lhz r3, 0(r28)
/* 802C5130 002C0D90 57 44 04 3E */ clrlwi r4, r26, 0x10
/* 802C5134 002C0D94 48 00 B5 F1 */ bl btsnd_hcic_change_conn_type
/* 802C5138 002C0D98 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C513C 002C0D9C 41 82 00 08 */ beq lbl_802C5144
/* 802C5140 002C0DA0 B3 5C 00 02 */ sth r26, 2(r28)
lbl_802C5144:
/* 802C5144 002C0DA4 B3 3C 00 04 */ sth r25, 4(r28)
lbl_802C5148:
/* 802C5148 002C0DA8 3B BD 00 01 */ addi r29, r29, 1
/* 802C514C 002C0DAC 3B 9C 01 1C */ addi r28, r28, 0x11c
/* 802C5150 002C0DB0 28 1D 00 04 */ cmplwi r29, 4
/* 802C5154 002C0DB4 41 80 FF 00 */ blt lbl_802C5054
lbl_802C5158:
/* 802C5158 002C0DB8 39 61 00 40 */ addi r11, r1, 0x40
/* 802C515C 002C0DBC 4B F0 20 0D */ bl _restgpr_24
/* 802C5160 002C0DC0 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802C5164 002C0DC4 7C 08 03 A6 */ mtlr r0
/* 802C5168 002C0DC8 38 21 00 40 */ addi r1, r1, 0x40
/* 802C516C 002C0DCC 4E 80 00 20 */ blr
|