.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global btm_dev_init btm_dev_init: /* 802C583C 002C149C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C5840 002C14A0 7C 08 02 A6 */ mflr r0 /* 802C5844 002C14A4 38 8D 8A 38 */ addi r4, r13, lbl_8063DCF8-_SDA_BASE_ /* 802C5848 002C14A8 38 A0 00 03 */ li r5, 3 /* 802C584C 002C14AC 90 01 00 14 */ stw r0, 0x14(r1) /* 802C5850 002C14B0 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C5854 002C14B4 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C5858 002C14B8 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C585C 002C14BC 38 7F 06 48 */ addi r3, r31, 0x648 /* 802C5860 002C14C0 4B D3 E7 A1 */ bl memcpy /* 802C5864 002C14C4 3C 60 00 01 */ lis r3, 0x0000CC18@ha /* 802C5868 002C14C8 38 E0 00 FF */ li r7, 0xff /* 802C586C 002C14CC 39 23 CC 18 */ addi r9, r3, 0x0000CC18@l /* 802C5870 002C14D0 39 80 00 01 */ li r12, 1 /* 802C5874 002C14D4 38 60 14 00 */ li r3, 0x1400 /* 802C5878 002C14D8 39 60 00 02 */ li r11, 2 /* 802C587C 002C14DC 39 40 00 04 */ li r10, 4 /* 802C5880 002C14E0 39 00 00 3F */ li r8, 0x3f /* 802C5884 002C14E4 38 C0 00 00 */ li r6, 0 /* 802C5888 002C14E8 38 00 00 05 */ li r0, 5 /* 802C588C 002C14EC B0 7F 06 4C */ sth r3, 0x64c(r31) /* 802C5890 002C14F0 38 7F 05 74 */ addi r3, r31, 0x574 /* 802C5894 002C14F4 38 80 00 01 */ li r4, 1 /* 802C5898 002C14F8 38 A0 00 04 */ li r5, 4 /* 802C589C 002C14FC 91 9F 05 84 */ stw r12, 0x584(r31) /* 802C58A0 002C1500 91 7F 05 A0 */ stw r11, 0x5a0(r31) /* 802C58A4 002C1504 91 5F 05 BC */ stw r10, 0x5bc(r31) /* 802C58A8 002C1508 B1 3F 06 54 */ sth r9, 0x654(r31) /* 802C58AC 002C150C B1 1F 06 56 */ sth r8, 0x656(r31) /* 802C58B0 002C1510 98 FF 27 BD */ stb r7, 0x27bd(r31) /* 802C58B4 002C1514 98 FF 27 BE */ stb r7, 0x27be(r31) /* 802C58B8 002C1518 98 DF 06 4E */ stb r6, 0x64e(r31) /* 802C58BC 002C151C 98 1F 06 4F */ stb r0, 0x64f(r31) /* 802C58C0 002C1520 4B FF 7C 1D */ bl btu_start_timer /* 802C58C4 002C1524 48 00 B9 A9 */ bl btsnd_hcic_reset /* 802C58C8 002C1528 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C58CC 002C152C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C58D0 002C1530 7C 08 03 A6 */ mtlr r0 /* 802C58D4 002C1534 38 21 00 10 */ addi r1, r1, 0x10 /* 802C58D8 002C1538 4E 80 00 20 */ blr .global btm_db_reset btm_db_reset: /* 802C58DC 002C153C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C58E0 002C1540 7C 08 02 A6 */ mflr r0 /* 802C58E4 002C1544 90 01 00 14 */ stw r0, 0x14(r1) /* 802C58E8 002C1548 38 00 00 0C */ li r0, 0xc /* 802C58EC 002C154C 98 01 00 08 */ stb r0, 8(r1) /* 802C58F0 002C1550 48 00 27 BD */ bl btm_inq_db_reset /* 802C58F4 002C1554 48 00 19 49 */ bl btm_discovery_db_reset /* 802C58F8 002C1558 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C58FC 002C155C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5900 002C1560 81 83 05 A8 */ lwz r12, 0x5a8(r3) /* 802C5904 002C1564 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5908 002C1568 41 82 00 1C */ beq lbl_802C5924 /* 802C590C 002C156C 38 00 00 00 */ li r0, 0 /* 802C5910 002C1570 90 03 05 A8 */ stw r0, 0x5a8(r3) /* 802C5914 002C1574 41 82 00 10 */ beq lbl_802C5924 /* 802C5918 002C1578 38 60 00 00 */ li r3, 0 /* 802C591C 002C157C 7D 89 03 A6 */ mtctr r12 /* 802C5920 002C1580 4E 80 04 21 */ bctrl lbl_802C5924: /* 802C5924 002C1584 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5928 002C1588 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C592C 002C158C 81 83 05 C4 */ lwz r12, 0x5c4(r3) /* 802C5930 002C1590 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5934 002C1594 41 82 00 1C */ beq lbl_802C5950 /* 802C5938 002C1598 38 00 00 00 */ li r0, 0 /* 802C593C 002C159C 90 03 05 C4 */ stw r0, 0x5c4(r3) /* 802C5940 002C15A0 41 82 00 10 */ beq lbl_802C5950 /* 802C5944 002C15A4 38 61 00 08 */ addi r3, r1, 8 /* 802C5948 002C15A8 7D 89 03 A6 */ mtctr r12 /* 802C594C 002C15AC 4E 80 04 21 */ bctrl lbl_802C5950: /* 802C5950 002C15B0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5954 002C15B4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5958 002C15B8 81 83 05 E0 */ lwz r12, 0x5e0(r3) /* 802C595C 002C15BC 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5960 002C15C0 41 82 00 1C */ beq lbl_802C597C /* 802C5964 002C15C4 38 00 00 00 */ li r0, 0 /* 802C5968 002C15C8 90 03 05 E0 */ stw r0, 0x5e0(r3) /* 802C596C 002C15CC 41 82 00 10 */ beq lbl_802C597C /* 802C5970 002C15D0 38 61 00 08 */ addi r3, r1, 8 /* 802C5974 002C15D4 7D 89 03 A6 */ mtctr r12 /* 802C5978 002C15D8 4E 80 04 21 */ bctrl lbl_802C597C: /* 802C597C 002C15DC 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C5980 002C15E0 7C 08 03 A6 */ mtlr r0 /* 802C5984 002C15E4 38 21 00 10 */ addi r1, r1, 0x10 /* 802C5988 002C15E8 4E 80 00 20 */ blr .global BTM_DeviceReset BTM_DeviceReset: /* 802C598C 002C15EC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C5990 002C15F0 7C 08 02 A6 */ mflr r0 /* 802C5994 002C15F4 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C5998 002C15F8 90 01 00 14 */ stw r0, 0x14(r1) /* 802C599C 002C15FC 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C59A0 002C1600 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C59A4 002C1604 93 C1 00 08 */ stw r30, 8(r1) /* 802C59A8 002C1608 7C 7E 1B 78 */ mr r30, r3 /* 802C59AC 002C160C 80 04 05 8C */ lwz r0, 0x58c(r4) /* 802C59B0 002C1610 2C 00 00 00 */ cmpwi r0, 0 /* 802C59B4 002C1614 41 82 00 0C */ beq lbl_802C59C0 /* 802C59B8 002C1618 7C 00 18 40 */ cmplw r0, r3 /* 802C59BC 002C161C 40 82 00 54 */ bne lbl_802C5A10 lbl_802C59C0: /* 802C59C0 002C1620 4B FF DE E5 */ bl btm_acl_device_down /* 802C59C4 002C1624 4B FF FF 19 */ bl btm_db_reset /* 802C59C8 002C1628 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C59CC 002C162C 38 C0 00 00 */ li r6, 0 /* 802C59D0 002C1630 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C59D4 002C1634 38 00 00 05 */ li r0, 5 /* 802C59D8 002C1638 93 DF 05 8C */ stw r30, 0x58c(r31) /* 802C59DC 002C163C 38 7F 05 74 */ addi r3, r31, 0x574 /* 802C59E0 002C1640 38 80 00 01 */ li r4, 1 /* 802C59E4 002C1644 38 A0 00 04 */ li r5, 4 /* 802C59E8 002C1648 98 DF 06 4E */ stb r6, 0x64e(r31) /* 802C59EC 002C164C 98 1F 06 4F */ stb r0, 0x64f(r31) /* 802C59F0 002C1650 4B FF 7A ED */ bl btu_start_timer /* 802C59F4 002C1654 48 00 B8 79 */ bl btsnd_hcic_reset /* 802C59F8 002C1658 81 9F 05 68 */ lwz r12, 0x568(r31) /* 802C59FC 002C165C 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5A00 002C1660 41 82 00 10 */ beq lbl_802C5A10 /* 802C5A04 002C1664 38 60 00 01 */ li r3, 1 /* 802C5A08 002C1668 7D 89 03 A6 */ mtctr r12 /* 802C5A0C 002C166C 4E 80 04 21 */ bctrl lbl_802C5A10: /* 802C5A10 002C1670 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C5A14 002C1674 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C5A18 002C1678 83 C1 00 08 */ lwz r30, 8(r1) /* 802C5A1C 002C167C 7C 08 03 A6 */ mtlr r0 /* 802C5A20 002C1680 38 21 00 10 */ addi r1, r1, 0x10 /* 802C5A24 002C1684 4E 80 00 20 */ blr .global BTM_SendHciReset BTM_SendHciReset: /* 802C5A28 002C1688 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C5A2C 002C168C 7C 08 02 A6 */ mflr r0 /* 802C5A30 002C1690 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C5A34 002C1694 90 01 00 14 */ stw r0, 0x14(r1) /* 802C5A38 002C1698 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C5A3C 002C169C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C5A40 002C16A0 93 C1 00 08 */ stw r30, 8(r1) /* 802C5A44 002C16A4 7C 7E 1B 78 */ mr r30, r3 /* 802C5A48 002C16A8 80 04 05 8C */ lwz r0, 0x58c(r4) /* 802C5A4C 002C16AC 2C 00 00 00 */ cmpwi r0, 0 /* 802C5A50 002C16B0 41 82 00 18 */ beq lbl_802C5A68 /* 802C5A54 002C16B4 7C 00 18 40 */ cmplw r0, r3 /* 802C5A58 002C16B8 41 82 00 10 */ beq lbl_802C5A68 /* 802C5A5C 002C16BC 80 04 06 20 */ lwz r0, 0x620(r4) /* 802C5A60 002C16C0 7C 00 18 40 */ cmplw r0, r3 /* 802C5A64 002C16C4 40 82 00 54 */ bne lbl_802C5AB8 lbl_802C5A68: /* 802C5A68 002C16C8 4B FF DE 3D */ bl btm_acl_device_down /* 802C5A6C 002C16CC 4B FF FE 71 */ bl btm_db_reset /* 802C5A70 002C16D0 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C5A74 002C16D4 38 C0 00 00 */ li r6, 0 /* 802C5A78 002C16D8 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C5A7C 002C16DC 38 00 00 05 */ li r0, 5 /* 802C5A80 002C16E0 93 DF 06 20 */ stw r30, 0x620(r31) /* 802C5A84 002C16E4 38 7F 05 74 */ addi r3, r31, 0x574 /* 802C5A88 002C16E8 38 80 00 01 */ li r4, 1 /* 802C5A8C 002C16EC 38 A0 00 04 */ li r5, 4 /* 802C5A90 002C16F0 98 DF 06 4E */ stb r6, 0x64e(r31) /* 802C5A94 002C16F4 98 1F 06 4F */ stb r0, 0x64f(r31) /* 802C5A98 002C16F8 4B FF 7A 45 */ bl btu_start_timer /* 802C5A9C 002C16FC 48 00 B7 D1 */ bl btsnd_hcic_reset /* 802C5AA0 002C1700 81 9F 05 68 */ lwz r12, 0x568(r31) /* 802C5AA4 002C1704 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5AA8 002C1708 41 82 00 10 */ beq lbl_802C5AB8 /* 802C5AAC 002C170C 38 60 00 01 */ li r3, 1 /* 802C5AB0 002C1710 7D 89 03 A6 */ mtctr r12 /* 802C5AB4 002C1714 4E 80 04 21 */ bctrl lbl_802C5AB8: /* 802C5AB8 002C1718 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C5ABC 002C171C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C5AC0 002C1720 83 C1 00 08 */ lwz r30, 8(r1) /* 802C5AC4 002C1724 7C 08 03 A6 */ mtlr r0 /* 802C5AC8 002C1728 38 21 00 10 */ addi r1, r1, 0x10 /* 802C5ACC 002C172C 4E 80 00 20 */ blr .global BTM_IsDeviceUp BTM_IsDeviceUp: /* 802C5AD0 002C1730 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5AD4 002C1734 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5AD8 002C1738 88 63 06 4E */ lbz r3, 0x64e(r3) /* 802C5ADC 002C173C 38 03 FF FB */ addi r0, r3, -5 /* 802C5AE0 002C1740 7C 00 00 34 */ cntlzw r0, r0 /* 802C5AE4 002C1744 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f /* 802C5AE8 002C1748 4E 80 00 20 */ blr .global BTM_SetAfhChannels BTM_SetAfhChannels: /* 802C5AEC 002C174C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C5AF0 002C1750 7C 08 02 A6 */ mflr r0 /* 802C5AF4 002C1754 3C E0 80 57 */ lis r7, lbl_80568B78@ha /* 802C5AF8 002C1758 90 01 00 14 */ stw r0, 0x14(r1) /* 802C5AFC 002C175C 38 E7 8B 78 */ addi r7, r7, lbl_80568B78@l /* 802C5B00 002C1760 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C5B04 002C1764 7C 9F 23 78 */ mr r31, r4 /* 802C5B08 002C1768 93 C1 00 08 */ stw r30, 8(r1) /* 802C5B0C 002C176C 7C 7E 1B 78 */ mr r30, r3 /* 802C5B10 002C1770 88 07 27 C0 */ lbz r0, 0x27c0(r7) /* 802C5B14 002C1774 28 00 00 03 */ cmplwi r0, 3 /* 802C5B18 002C1778 41 80 00 28 */ blt lbl_802C5B40 /* 802C5B1C 002C177C 3C 60 00 0D */ lis r3, 0x000D0002@ha /* 802C5B20 002C1780 3C 80 80 44 */ lis r4, lbl_804410E0@ha /* 802C5B24 002C1784 88 C7 27 BD */ lbz r6, 0x27bd(r7) /* 802C5B28 002C1788 7F C5 F3 78 */ mr r5, r30 /* 802C5B2C 002C178C 89 07 27 BE */ lbz r8, 0x27be(r7) /* 802C5B30 002C1790 7F E7 FB 78 */ mr r7, r31 /* 802C5B34 002C1794 38 63 00 02 */ addi r3, r3, 0x000D0002@l /* 802C5B38 002C1798 38 84 10 E0 */ addi r4, r4, lbl_804410E0@l /* 802C5B3C 002C179C 4B FF 74 35 */ bl LogMsg_4 lbl_802C5B40: /* 802C5B40 002C17A0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5B44 002C17A4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5B48 002C17A8 88 83 06 45 */ lbz r4, 0x645(r3) /* 802C5B4C 002C17AC 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c /* 802C5B50 002C17B0 40 82 00 20 */ bne lbl_802C5B70 /* 802C5B54 002C17B4 88 03 06 44 */ lbz r0, 0x644(r3) /* 802C5B58 002C17B8 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 802C5B5C 002C17BC 40 82 00 14 */ bne lbl_802C5B70 /* 802C5B60 002C17C0 54 80 06 F7 */ rlwinm. r0, r4, 0, 0x1b, 0x1b /* 802C5B64 002C17C4 40 82 00 0C */ bne lbl_802C5B70 /* 802C5B68 002C17C8 38 60 00 04 */ li r3, 4 /* 802C5B6C 002C17CC 48 00 00 58 */ b lbl_802C5BC4 lbl_802C5B70: /* 802C5B70 002C17D0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5B74 002C17D4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5B78 002C17D8 88 03 27 BD */ lbz r0, 0x27bd(r3) /* 802C5B7C 002C17DC 7C 00 F0 40 */ cmplw r0, r30 /* 802C5B80 002C17E0 40 82 00 10 */ bne lbl_802C5B90 /* 802C5B84 002C17E4 88 03 27 BE */ lbz r0, 0x27be(r3) /* 802C5B88 002C17E8 7C 00 F8 40 */ cmplw r0, r31 /* 802C5B8C 002C17EC 41 82 00 34 */ beq lbl_802C5BC0 lbl_802C5B90: /* 802C5B90 002C17F0 7F C3 F3 78 */ mr r3, r30 /* 802C5B94 002C17F4 7F E4 FB 78 */ mr r4, r31 /* 802C5B98 002C17F8 48 00 C3 C9 */ bl btsnd_hcic_set_afh_channels /* 802C5B9C 002C17FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802C5BA0 002C1800 41 82 00 18 */ beq lbl_802C5BB8 /* 802C5BA4 002C1804 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5BA8 002C1808 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5BAC 002C180C 9B C3 27 BD */ stb r30, 0x27bd(r3) /* 802C5BB0 002C1810 9B E3 27 BE */ stb r31, 0x27be(r3) /* 802C5BB4 002C1814 48 00 00 0C */ b lbl_802C5BC0 lbl_802C5BB8: /* 802C5BB8 002C1818 38 60 00 03 */ li r3, 3 /* 802C5BBC 002C181C 48 00 00 08 */ b lbl_802C5BC4 lbl_802C5BC0: /* 802C5BC0 002C1820 38 60 00 00 */ li r3, 0 lbl_802C5BC4: /* 802C5BC4 002C1824 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C5BC8 002C1828 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C5BCC 002C182C 83 C1 00 08 */ lwz r30, 8(r1) /* 802C5BD0 002C1830 7C 08 03 A6 */ mtlr r0 /* 802C5BD4 002C1834 38 21 00 10 */ addi r1, r1, 0x10 /* 802C5BD8 002C1838 4E 80 00 20 */ blr .global btm_dev_timeout btm_dev_timeout: /* 802C5BDC 002C183C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C5BE0 002C1840 7C 08 02 A6 */ mflr r0 /* 802C5BE4 002C1844 90 01 00 14 */ stw r0, 0x14(r1) /* 802C5BE8 002C1848 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C5BEC 002C184C 93 C1 00 08 */ stw r30, 8(r1) /* 802C5BF0 002C1850 80 03 00 10 */ lwz r0, 0x10(r3) /* 802C5BF4 002C1854 28 00 00 01 */ cmplwi r0, 1 /* 802C5BF8 002C1858 40 82 02 34 */ bne lbl_802C5E2C /* 802C5BFC 002C185C 3C C0 80 57 */ lis r6, lbl_80568B78@ha /* 802C5C00 002C1860 38 C6 8B 78 */ addi r6, r6, lbl_80568B78@l /* 802C5C04 002C1864 88 06 06 4E */ lbz r0, 0x64e(r6) /* 802C5C08 002C1868 2C 00 00 02 */ cmpwi r0, 2 /* 802C5C0C 002C186C 41 82 01 60 */ beq lbl_802C5D6C /* 802C5C10 002C1870 40 80 00 14 */ bge lbl_802C5C24 /* 802C5C14 002C1874 2C 00 00 00 */ cmpwi r0, 0 /* 802C5C18 002C1878 41 82 00 18 */ beq lbl_802C5C30 /* 802C5C1C 002C187C 40 80 00 3C */ bge lbl_802C5C58 /* 802C5C20 002C1880 48 00 02 3C */ b lbl_802C5E5C lbl_802C5C24: /* 802C5C24 002C1884 2C 00 00 04 */ cmpwi r0, 4 /* 802C5C28 002C1888 40 80 02 34 */ bge lbl_802C5E5C /* 802C5C2C 002C188C 48 00 01 A4 */ b lbl_802C5DD0 lbl_802C5C30: /* 802C5C30 002C1890 38 60 00 00 */ li r3, 0 /* 802C5C34 002C1894 38 00 00 05 */ li r0, 5 /* 802C5C38 002C1898 98 66 06 4E */ stb r3, 0x64e(r6) /* 802C5C3C 002C189C 38 66 05 74 */ addi r3, r6, 0x574 /* 802C5C40 002C18A0 38 80 00 01 */ li r4, 1 /* 802C5C44 002C18A4 38 A0 00 04 */ li r5, 4 /* 802C5C48 002C18A8 98 06 06 4F */ stb r0, 0x64f(r6) /* 802C5C4C 002C18AC 4B FF 78 91 */ bl btu_start_timer /* 802C5C50 002C18B0 48 00 B6 1D */ bl btsnd_hcic_reset /* 802C5C54 002C18B4 48 00 02 08 */ b lbl_802C5E5C lbl_802C5C58: /* 802C5C58 002C18B8 38 00 00 04 */ li r0, 4 /* 802C5C5C 002C18BC 38 60 00 02 */ li r3, 2 /* 802C5C60 002C18C0 98 66 06 4E */ stb r3, 0x64e(r6) /* 802C5C64 002C18C4 98 06 06 4F */ stb r0, 0x64f(r6) /* 802C5C68 002C18C8 48 00 00 18 */ b lbl_802C5C80 /* 802C5C6C 002C18CC 98 06 06 4F */ stb r0, 0x64f(r6) /* 802C5C70 002C18D0 98 06 06 4E */ stb r0, 0x64e(r6) /* 802C5C74 002C18D4 4B FF 78 69 */ bl btu_start_timer /* 802C5C78 002C18D8 48 00 B5 F5 */ bl btsnd_hcic_reset /* 802C5C7C 002C18DC 48 00 00 28 */ b lbl_802C5CA4 lbl_802C5C80: /* 802C5C80 002C18E0 38 66 05 74 */ addi r3, r6, 0x574 /* 802C5C84 002C18E4 38 80 00 01 */ li r4, 1 /* 802C5C88 002C18E8 38 A0 00 01 */ li r5, 1 /* 802C5C8C 002C18EC 4B FF 78 51 */ bl btu_start_timer /* 802C5C90 002C18F0 38 60 00 02 */ li r3, 2 /* 802C5C94 002C18F4 4B FF 3F B9 */ bl GKI_getpoolbuf /* 802C5C98 002C18F8 2C 03 00 00 */ cmpwi r3, 0 /* 802C5C9C 002C18FC 41 82 00 08 */ beq lbl_802C5CA4 /* 802C5CA0 002C1900 48 00 C1 45 */ bl btsnd_hcic_read_buffer_size lbl_802C5CA4: /* 802C5CA4 002C1904 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C5CA8 002C1908 38 A0 00 03 */ li r5, 3 /* 802C5CAC 002C190C 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C5CB0 002C1910 38 7F 06 48 */ addi r3, r31, 0x648 /* 802C5CB4 002C1914 7C 64 1B 78 */ mr r4, r3 /* 802C5CB8 002C1918 4B D3 E3 49 */ bl memcpy /* 802C5CBC 002C191C 88 1F 06 4E */ lbz r0, 0x64e(r31) /* 802C5CC0 002C1920 2C 00 00 00 */ cmpwi r0, 0 /* 802C5CC4 002C1924 41 82 00 24 */ beq lbl_802C5CE8 /* 802C5CC8 002C1928 28 00 00 01 */ cmplwi r0, 1 /* 802C5CCC 002C192C 41 82 00 1C */ beq lbl_802C5CE8 /* 802C5CD0 002C1930 38 60 00 02 */ li r3, 2 /* 802C5CD4 002C1934 4B FF 3F 79 */ bl GKI_getpoolbuf /* 802C5CD8 002C1938 2C 03 00 00 */ cmpwi r3, 0 /* 802C5CDC 002C193C 41 82 00 0C */ beq lbl_802C5CE8 /* 802C5CE0 002C1940 38 9F 06 48 */ addi r4, r31, 0x648 /* 802C5CE4 002C1944 48 00 BD FD */ bl btsnd_hcic_write_dev_class lbl_802C5CE8: /* 802C5CE8 002C1948 3C 00 80 57 */ lis r0, 0x8057 /* 802C5CEC 002C194C 37 E0 8B 78 */ addic. r31, r0, -29832 /* 802C5CF0 002C1950 41 82 00 60 */ beq lbl_802C5D50 /* 802C5CF4 002C1954 88 1F 06 4E */ lbz r0, 0x64e(r31) /* 802C5CF8 002C1958 2C 00 00 00 */ cmpwi r0, 0 /* 802C5CFC 002C195C 41 82 00 54 */ beq lbl_802C5D50 /* 802C5D00 002C1960 28 00 00 01 */ cmplwi r0, 1 /* 802C5D04 002C1964 41 82 00 4C */ beq lbl_802C5D50 /* 802C5D08 002C1968 38 60 00 02 */ li r3, 2 /* 802C5D0C 002C196C 4B FF 3F 41 */ bl GKI_getpoolbuf /* 802C5D10 002C1970 2C 03 00 00 */ cmpwi r3, 0 /* 802C5D14 002C1974 7C 7E 1B 78 */ mr r30, r3 /* 802C5D18 002C1978 41 82 00 38 */ beq lbl_802C5D50 /* 802C5D1C 002C197C 7C 1F F8 40 */ cmplw r31, r31 /* 802C5D20 002C1980 41 82 00 24 */ beq lbl_802C5D44 /* 802C5D24 002C1984 7F E3 FB 78 */ mr r3, r31 /* 802C5D28 002C1988 38 80 00 00 */ li r4, 0 /* 802C5D2C 002C198C 38 A0 00 20 */ li r5, 0x20 /* 802C5D30 002C1990 4B D3 E3 D5 */ bl memset /* 802C5D34 002C1994 7F E3 FB 78 */ mr r3, r31 /* 802C5D38 002C1998 7F E4 FB 78 */ mr r4, r31 /* 802C5D3C 002C199C 38 A0 00 1F */ li r5, 0x1f /* 802C5D40 002C19A0 4B F0 86 51 */ bl strncpy lbl_802C5D44: /* 802C5D44 002C19A4 7F C3 F3 78 */ mr r3, r30 /* 802C5D48 002C19A8 7F E4 FB 78 */ mr r4, r31 /* 802C5D4C 002C19AC 48 00 BA 7D */ bl btsnd_hcic_change_name lbl_802C5D50: /* 802C5D50 002C19B0 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C5D54 002C19B4 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C5D58 002C19B8 88 65 00 20 */ lbz r3, 0x20(r5) /* 802C5D5C 002C19BC 38 85 00 22 */ addi r4, r5, 0x22 /* 802C5D60 002C19C0 88 A5 00 21 */ lbz r5, 0x21(r5) /* 802C5D64 002C19C4 48 00 4C 71 */ bl BTM_SetPinType /* 802C5D68 002C19C8 48 00 00 F4 */ b lbl_802C5E5C lbl_802C5D6C: /* 802C5D6C 002C19CC 88 66 06 4F */ lbz r3, 0x64f(r6) /* 802C5D70 002C19D0 38 63 FF FF */ addi r3, r3, -1 /* 802C5D74 002C19D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802C5D78 002C19D8 98 66 06 4F */ stb r3, 0x64f(r6) /* 802C5D7C 002C19DC 40 82 00 2C */ bne lbl_802C5DA8 /* 802C5D80 002C19E0 38 60 00 00 */ li r3, 0 /* 802C5D84 002C19E4 38 00 00 05 */ li r0, 5 /* 802C5D88 002C19E8 98 66 06 4E */ stb r3, 0x64e(r6) /* 802C5D8C 002C19EC 38 66 05 74 */ addi r3, r6, 0x574 /* 802C5D90 002C19F0 38 80 00 01 */ li r4, 1 /* 802C5D94 002C19F4 38 A0 00 04 */ li r5, 4 /* 802C5D98 002C19F8 98 06 06 4F */ stb r0, 0x64f(r6) /* 802C5D9C 002C19FC 4B FF 77 41 */ bl btu_start_timer /* 802C5DA0 002C1A00 48 00 B4 CD */ bl btsnd_hcic_reset /* 802C5DA4 002C1A04 48 00 00 B8 */ b lbl_802C5E5C lbl_802C5DA8: /* 802C5DA8 002C1A08 38 66 05 74 */ addi r3, r6, 0x574 /* 802C5DAC 002C1A0C 38 80 00 01 */ li r4, 1 /* 802C5DB0 002C1A10 38 A0 00 01 */ li r5, 1 /* 802C5DB4 002C1A14 4B FF 77 29 */ bl btu_start_timer /* 802C5DB8 002C1A18 38 60 00 02 */ li r3, 2 /* 802C5DBC 002C1A1C 4B FF 3E 91 */ bl GKI_getpoolbuf /* 802C5DC0 002C1A20 2C 03 00 00 */ cmpwi r3, 0 /* 802C5DC4 002C1A24 41 82 00 98 */ beq lbl_802C5E5C /* 802C5DC8 002C1A28 48 00 C0 1D */ bl btsnd_hcic_read_buffer_size /* 802C5DCC 002C1A2C 48 00 00 90 */ b lbl_802C5E5C lbl_802C5DD0: /* 802C5DD0 002C1A30 88 66 06 4F */ lbz r3, 0x64f(r6) /* 802C5DD4 002C1A34 38 63 FF FF */ addi r3, r3, -1 /* 802C5DD8 002C1A38 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802C5DDC 002C1A3C 98 66 06 4F */ stb r3, 0x64f(r6) /* 802C5DE0 002C1A40 40 82 00 2C */ bne lbl_802C5E0C /* 802C5DE4 002C1A44 38 60 00 00 */ li r3, 0 /* 802C5DE8 002C1A48 38 00 00 05 */ li r0, 5 /* 802C5DEC 002C1A4C 98 66 06 4E */ stb r3, 0x64e(r6) /* 802C5DF0 002C1A50 38 66 05 74 */ addi r3, r6, 0x574 /* 802C5DF4 002C1A54 38 80 00 01 */ li r4, 1 /* 802C5DF8 002C1A58 38 A0 00 04 */ li r5, 4 /* 802C5DFC 002C1A5C 98 06 06 4F */ stb r0, 0x64f(r6) /* 802C5E00 002C1A60 4B FF 76 DD */ bl btu_start_timer /* 802C5E04 002C1A64 48 00 B4 69 */ bl btsnd_hcic_reset /* 802C5E08 002C1A68 48 00 00 54 */ b lbl_802C5E5C lbl_802C5E0C: /* 802C5E0C 002C1A6C 38 66 05 74 */ addi r3, r6, 0x574 /* 802C5E10 002C1A70 38 80 00 01 */ li r4, 1 /* 802C5E14 002C1A74 38 A0 00 01 */ li r5, 1 /* 802C5E18 002C1A78 4B FF 76 C5 */ bl btu_start_timer /* 802C5E1C 002C1A7C 48 00 BF 0D */ bl btsnd_hcic_read_local_ver /* 802C5E20 002C1A80 48 00 BF ED */ bl btsnd_hcic_read_bd_addr /* 802C5E24 002C1A84 48 00 33 0D */ bl btm_pm_reset /* 802C5E28 002C1A88 48 00 00 34 */ b lbl_802C5E5C lbl_802C5E2C: /* 802C5E2C 002C1A8C 28 00 00 02 */ cmplwi r0, 2 /* 802C5E30 002C1A90 40 82 00 2C */ bne lbl_802C5E5C /* 802C5E34 002C1A94 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5E38 002C1A98 38 00 00 00 */ li r0, 0 /* 802C5E3C 002C1A9C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5E40 002C1AA0 81 83 05 A8 */ lwz r12, 0x5a8(r3) /* 802C5E44 002C1AA4 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5E48 002C1AA8 90 03 05 A8 */ stw r0, 0x5a8(r3) /* 802C5E4C 002C1AAC 41 82 00 10 */ beq lbl_802C5E5C /* 802C5E50 002C1AB0 38 60 00 00 */ li r3, 0 /* 802C5E54 002C1AB4 7D 89 03 A6 */ mtctr r12 /* 802C5E58 002C1AB8 4E 80 04 21 */ bctrl lbl_802C5E5C: /* 802C5E5C 002C1ABC 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C5E60 002C1AC0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C5E64 002C1AC4 83 C1 00 08 */ lwz r30, 8(r1) /* 802C5E68 002C1AC8 7C 08 03 A6 */ mtlr r0 /* 802C5E6C 002C1ACC 38 21 00 10 */ addi r1, r1, 0x10 /* 802C5E70 002C1AD0 4E 80 00 20 */ blr .global btm_reset_complete btm_reset_complete: /* 802C5E74 002C1AD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C5E78 002C1AD8 7C 08 02 A6 */ mflr r0 /* 802C5E7C 002C1ADC 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C5E80 002C1AE0 90 01 00 14 */ stw r0, 0x14(r1) /* 802C5E84 002C1AE4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C5E88 002C1AE8 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C5E8C 002C1AEC 93 C1 00 08 */ stw r30, 8(r1) /* 802C5E90 002C1AF0 88 03 27 C0 */ lbz r0, 0x27c0(r3) /* 802C5E94 002C1AF4 28 00 00 04 */ cmplwi r0, 4 /* 802C5E98 002C1AF8 41 80 00 18 */ blt lbl_802C5EB0 /* 802C5E9C 002C1AFC 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C5EA0 002C1B00 3C 80 80 44 */ lis r4, lbl_80441110@ha /* 802C5EA4 002C1B04 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C5EA8 002C1B08 38 84 11 10 */ addi r4, r4, lbl_80441110@l /* 802C5EAC 002C1B0C 4B FF 70 65 */ bl LogMsg_0 lbl_802C5EB0: /* 802C5EB0 002C1B10 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C5EB4 002C1B14 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C5EB8 002C1B18 81 9F 06 20 */ lwz r12, 0x620(r31) /* 802C5EBC 002C1B1C 2C 0C 00 00 */ cmpwi r12, 0 /* 802C5EC0 002C1B20 41 82 00 1C */ beq lbl_802C5EDC /* 802C5EC4 002C1B24 38 00 00 00 */ li r0, 0 /* 802C5EC8 002C1B28 38 60 00 00 */ li r3, 0 /* 802C5ECC 002C1B2C 90 1F 06 20 */ stw r0, 0x620(r31) /* 802C5ED0 002C1B30 7D 89 03 A6 */ mtctr r12 /* 802C5ED4 002C1B34 4E 80 04 21 */ bctrl /* 802C5ED8 002C1B38 48 00 01 48 */ b lbl_802C6020 lbl_802C5EDC: /* 802C5EDC 002C1B3C 88 1F 06 4E */ lbz r0, 0x64e(r31) /* 802C5EE0 002C1B40 2C 00 00 00 */ cmpwi r0, 0 /* 802C5EE4 002C1B44 40 82 01 3C */ bne lbl_802C6020 /* 802C5EE8 002C1B48 48 01 56 A5 */ bl l2cu_device_reset /* 802C5EEC 002C1B4C 38 C0 00 12 */ li r6, 0x12 /* 802C5EF0 002C1B50 38 A0 08 00 */ li r5, 0x800 /* 802C5EF4 002C1B54 38 80 00 00 */ li r4, 0 /* 802C5EF8 002C1B58 38 00 00 04 */ li r0, 4 /* 802C5EFC 002C1B5C 38 60 00 02 */ li r3, 2 /* 802C5F00 002C1B60 B0 DF 16 A0 */ sth r6, 0x16a0(r31) /* 802C5F04 002C1B64 B0 BF 16 A2 */ sth r5, 0x16a2(r31) /* 802C5F08 002C1B68 B0 9F 16 A4 */ sth r4, 0x16a4(r31) /* 802C5F0C 002C1B6C B0 DF 16 9C */ sth r6, 0x169c(r31) /* 802C5F10 002C1B70 B0 BF 16 9E */ sth r5, 0x169e(r31) /* 802C5F14 002C1B74 B0 9F 16 A6 */ sth r4, 0x16a6(r31) /* 802C5F18 002C1B78 98 7F 06 4E */ stb r3, 0x64e(r31) /* 802C5F1C 002C1B7C 98 1F 06 4F */ stb r0, 0x64f(r31) /* 802C5F20 002C1B80 48 00 00 18 */ b lbl_802C5F38 /* 802C5F24 002C1B84 98 9F 06 4E */ stb r4, 0x64e(r31) /* 802C5F28 002C1B88 98 1F 06 4F */ stb r0, 0x64f(r31) /* 802C5F2C 002C1B8C 4B FF 75 B1 */ bl btu_start_timer /* 802C5F30 002C1B90 48 00 B3 3D */ bl btsnd_hcic_reset /* 802C5F34 002C1B94 48 00 00 28 */ b lbl_802C5F5C lbl_802C5F38: /* 802C5F38 002C1B98 38 7F 05 74 */ addi r3, r31, 0x574 /* 802C5F3C 002C1B9C 38 80 00 01 */ li r4, 1 /* 802C5F40 002C1BA0 38 A0 00 01 */ li r5, 1 /* 802C5F44 002C1BA4 4B FF 75 99 */ bl btu_start_timer /* 802C5F48 002C1BA8 38 60 00 02 */ li r3, 2 /* 802C5F4C 002C1BAC 4B FF 3D 01 */ bl GKI_getpoolbuf /* 802C5F50 002C1BB0 2C 03 00 00 */ cmpwi r3, 0 /* 802C5F54 002C1BB4 41 82 00 08 */ beq lbl_802C5F5C /* 802C5F58 002C1BB8 48 00 BE 8D */ bl btsnd_hcic_read_buffer_size lbl_802C5F5C: /* 802C5F5C 002C1BBC 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C5F60 002C1BC0 38 A0 00 03 */ li r5, 3 /* 802C5F64 002C1BC4 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C5F68 002C1BC8 38 7F 06 48 */ addi r3, r31, 0x648 /* 802C5F6C 002C1BCC 7C 64 1B 78 */ mr r4, r3 /* 802C5F70 002C1BD0 4B D3 E0 91 */ bl memcpy /* 802C5F74 002C1BD4 88 1F 06 4E */ lbz r0, 0x64e(r31) /* 802C5F78 002C1BD8 2C 00 00 00 */ cmpwi r0, 0 /* 802C5F7C 002C1BDC 41 82 00 24 */ beq lbl_802C5FA0 /* 802C5F80 002C1BE0 28 00 00 01 */ cmplwi r0, 1 /* 802C5F84 002C1BE4 41 82 00 1C */ beq lbl_802C5FA0 /* 802C5F88 002C1BE8 38 60 00 02 */ li r3, 2 /* 802C5F8C 002C1BEC 4B FF 3C C1 */ bl GKI_getpoolbuf /* 802C5F90 002C1BF0 2C 03 00 00 */ cmpwi r3, 0 /* 802C5F94 002C1BF4 41 82 00 0C */ beq lbl_802C5FA0 /* 802C5F98 002C1BF8 38 9F 06 48 */ addi r4, r31, 0x648 /* 802C5F9C 002C1BFC 48 00 BB 45 */ bl btsnd_hcic_write_dev_class lbl_802C5FA0: /* 802C5FA0 002C1C00 3C 00 80 57 */ lis r0, 0x8057 /* 802C5FA4 002C1C04 37 E0 8B 78 */ addic. r31, r0, -29832 /* 802C5FA8 002C1C08 41 82 00 60 */ beq lbl_802C6008 /* 802C5FAC 002C1C0C 88 1F 06 4E */ lbz r0, 0x64e(r31) /* 802C5FB0 002C1C10 2C 00 00 00 */ cmpwi r0, 0 /* 802C5FB4 002C1C14 41 82 00 54 */ beq lbl_802C6008 /* 802C5FB8 002C1C18 28 00 00 01 */ cmplwi r0, 1 /* 802C5FBC 002C1C1C 41 82 00 4C */ beq lbl_802C6008 /* 802C5FC0 002C1C20 38 60 00 02 */ li r3, 2 /* 802C5FC4 002C1C24 4B FF 3C 89 */ bl GKI_getpoolbuf /* 802C5FC8 002C1C28 2C 03 00 00 */ cmpwi r3, 0 /* 802C5FCC 002C1C2C 7C 7E 1B 78 */ mr r30, r3 /* 802C5FD0 002C1C30 41 82 00 38 */ beq lbl_802C6008 /* 802C5FD4 002C1C34 7C 1F F8 40 */ cmplw r31, r31 /* 802C5FD8 002C1C38 41 82 00 24 */ beq lbl_802C5FFC /* 802C5FDC 002C1C3C 7F E3 FB 78 */ mr r3, r31 /* 802C5FE0 002C1C40 38 80 00 00 */ li r4, 0 /* 802C5FE4 002C1C44 38 A0 00 20 */ li r5, 0x20 /* 802C5FE8 002C1C48 4B D3 E1 1D */ bl memset /* 802C5FEC 002C1C4C 7F E3 FB 78 */ mr r3, r31 /* 802C5FF0 002C1C50 7F E4 FB 78 */ mr r4, r31 /* 802C5FF4 002C1C54 38 A0 00 1F */ li r5, 0x1f /* 802C5FF8 002C1C58 4B F0 83 99 */ bl strncpy lbl_802C5FFC: /* 802C5FFC 002C1C5C 7F C3 F3 78 */ mr r3, r30 /* 802C6000 002C1C60 7F E4 FB 78 */ mr r4, r31 /* 802C6004 002C1C64 48 00 B7 C5 */ bl btsnd_hcic_change_name lbl_802C6008: /* 802C6008 002C1C68 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C600C 002C1C6C 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C6010 002C1C70 88 65 00 20 */ lbz r3, 0x20(r5) /* 802C6014 002C1C74 38 85 00 22 */ addi r4, r5, 0x22 /* 802C6018 002C1C78 88 A5 00 21 */ lbz r5, 0x21(r5) /* 802C601C 002C1C7C 48 00 49 B9 */ bl BTM_SetPinType lbl_802C6020: /* 802C6020 002C1C80 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C6024 002C1C84 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C6028 002C1C88 83 C1 00 08 */ lwz r30, 8(r1) /* 802C602C 002C1C8C 7C 08 03 A6 */ mtlr r0 /* 802C6030 002C1C90 38 21 00 10 */ addi r1, r1, 0x10 /* 802C6034 002C1C94 4E 80 00 20 */ blr .global btm_read_hci_buf_size_complete btm_read_hci_buf_size_complete: /* 802C6038 002C1C98 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C603C 002C1C9C 7C 08 02 A6 */ mflr r0 /* 802C6040 002C1CA0 90 01 00 14 */ stw r0, 0x14(r1) /* 802C6044 002C1CA4 88 03 00 00 */ lbz r0, 0(r3) /* 802C6048 002C1CA8 2C 00 00 00 */ cmpwi r0, 0 /* 802C604C 002C1CAC 40 82 00 58 */ bne lbl_802C60A4 /* 802C6050 002C1CB0 88 03 00 02 */ lbz r0, 2(r3) /* 802C6054 002C1CB4 3C C0 80 57 */ lis r6, lbl_80568650@ha /* 802C6058 002C1CB8 88 83 00 01 */ lbz r4, 1(r3) /* 802C605C 002C1CBC 38 C6 86 50 */ addi r6, r6, lbl_80568650@l /* 802C6060 002C1CC0 54 00 40 2E */ slwi r0, r0, 8 /* 802C6064 002C1CC4 7C 04 02 14 */ add r0, r4, r0 /* 802C6068 002C1CC8 B0 06 00 7C */ sth r0, 0x7c(r6) /* 802C606C 002C1CCC 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 802C6070 002C1CD0 38 04 00 04 */ addi r0, r4, 4 /* 802C6074 002C1CD4 88 83 00 05 */ lbz r4, 5(r3) /* 802C6078 002C1CD8 88 A3 00 04 */ lbz r5, 4(r3) /* 802C607C 002C1CDC 54 83 40 2E */ slwi r3, r4, 8 /* 802C6080 002C1CE0 7C 65 1A 14 */ add r3, r5, r3 /* 802C6084 002C1CE4 B0 06 00 7E */ sth r0, 0x7e(r6) /* 802C6088 002C1CE8 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 802C608C 002C1CEC 48 01 25 7D */ bl l2c_link_processs_num_bufs /* 802C6090 002C1CF0 38 60 06 9B */ li r3, 0x69b /* 802C6094 002C1CF4 38 80 00 1E */ li r4, 0x1e /* 802C6098 002C1CF8 38 A0 00 14 */ li r5, 0x14 /* 802C609C 002C1CFC 38 C0 00 0A */ li r6, 0xa /* 802C60A0 002C1D00 48 00 BA C9 */ bl btsnd_hcic_set_host_buf_size lbl_802C60A4: /* 802C60A4 002C1D04 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C60A8 002C1D08 38 00 00 04 */ li r0, 4 /* 802C60AC 002C1D0C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C60B0 002C1D10 38 80 00 03 */ li r4, 3 /* 802C60B4 002C1D14 98 83 06 4E */ stb r4, 0x64e(r3) /* 802C60B8 002C1D18 98 03 06 4F */ stb r0, 0x64f(r3) /* 802C60BC 002C1D1C 48 00 00 18 */ b lbl_802C60D4 /* 802C60C0 002C1D20 98 03 06 4F */ stb r0, 0x64f(r3) /* 802C60C4 002C1D24 98 03 06 4E */ stb r0, 0x64e(r3) /* 802C60C8 002C1D28 4B FF 74 15 */ bl btu_start_timer /* 802C60CC 002C1D2C 48 00 B1 A1 */ bl btsnd_hcic_reset /* 802C60D0 002C1D30 48 00 00 20 */ b lbl_802C60F0 lbl_802C60D4: /* 802C60D4 002C1D34 38 63 05 74 */ addi r3, r3, 0x574 /* 802C60D8 002C1D38 38 80 00 01 */ li r4, 1 /* 802C60DC 002C1D3C 38 A0 00 01 */ li r5, 1 /* 802C60E0 002C1D40 4B FF 73 FD */ bl btu_start_timer /* 802C60E4 002C1D44 48 00 BC 45 */ bl btsnd_hcic_read_local_ver /* 802C60E8 002C1D48 48 00 BD 25 */ bl btsnd_hcic_read_bd_addr /* 802C60EC 002C1D4C 48 00 30 45 */ bl btm_pm_reset lbl_802C60F0: /* 802C60F0 002C1D50 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C60F4 002C1D54 7C 08 03 A6 */ mtlr r0 /* 802C60F8 002C1D58 38 21 00 10 */ addi r1, r1, 0x10 /* 802C60FC 002C1D5C 4E 80 00 20 */ blr .global btm_read_local_version_complete btm_read_local_version_complete: /* 802C6100 002C1D60 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C6104 002C1D64 7C 08 02 A6 */ mflr r0 /* 802C6108 002C1D68 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C610C 002C1D6C 90 01 00 14 */ stw r0, 0x14(r1) /* 802C6110 002C1D70 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C6114 002C1D74 88 03 00 00 */ lbz r0, 0(r3) /* 802C6118 002C1D78 2C 00 00 00 */ cmpwi r0, 0 /* 802C611C 002C1D7C 40 82 00 50 */ bne lbl_802C616C /* 802C6120 002C1D80 88 03 00 01 */ lbz r0, 1(r3) /* 802C6124 002C1D84 98 05 06 36 */ stb r0, 0x636(r5) /* 802C6128 002C1D88 88 03 00 03 */ lbz r0, 3(r3) /* 802C612C 002C1D8C 88 83 00 02 */ lbz r4, 2(r3) /* 802C6130 002C1D90 54 00 40 2E */ slwi r0, r0, 8 /* 802C6134 002C1D94 7C 04 02 14 */ add r0, r4, r0 /* 802C6138 002C1D98 B0 05 06 38 */ sth r0, 0x638(r5) /* 802C613C 002C1D9C 88 03 00 04 */ lbz r0, 4(r3) /* 802C6140 002C1DA0 98 05 06 3A */ stb r0, 0x63a(r5) /* 802C6144 002C1DA4 88 03 00 06 */ lbz r0, 6(r3) /* 802C6148 002C1DA8 88 83 00 05 */ lbz r4, 5(r3) /* 802C614C 002C1DAC 54 00 40 2E */ slwi r0, r0, 8 /* 802C6150 002C1DB0 7C 04 02 14 */ add r0, r4, r0 /* 802C6154 002C1DB4 B0 05 06 3C */ sth r0, 0x63c(r5) /* 802C6158 002C1DB8 88 03 00 08 */ lbz r0, 8(r3) /* 802C615C 002C1DBC 88 63 00 07 */ lbz r3, 7(r3) /* 802C6160 002C1DC0 54 00 40 2E */ slwi r0, r0, 8 /* 802C6164 002C1DC4 7C 03 02 14 */ add r0, r3, r0 /* 802C6168 002C1DC8 B0 05 06 3E */ sth r0, 0x63e(r5) lbl_802C616C: /* 802C616C 002C1DCC 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6170 002C1DD0 38 00 00 04 */ li r0, 4 /* 802C6174 002C1DD4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6178 002C1DD8 98 03 06 4E */ stb r0, 0x64e(r3) /* 802C617C 002C1DDC 98 03 06 4F */ stb r0, 0x64f(r3) /* 802C6180 002C1DE0 48 00 00 18 */ b lbl_802C6198 /* 802C6184 002C1DE4 98 03 06 4F */ stb r0, 0x64f(r3) /* 802C6188 002C1DE8 98 03 06 4E */ stb r0, 0x64e(r3) /* 802C618C 002C1DEC 4B FF 73 51 */ bl btu_start_timer /* 802C6190 002C1DF0 48 00 B0 DD */ bl btsnd_hcic_reset /* 802C6194 002C1DF4 48 00 00 18 */ b lbl_802C61AC lbl_802C6198: /* 802C6198 002C1DF8 38 63 05 74 */ addi r3, r3, 0x574 /* 802C619C 002C1DFC 38 80 00 01 */ li r4, 1 /* 802C61A0 002C1E00 38 A0 00 01 */ li r5, 1 /* 802C61A4 002C1E04 4B FF 73 39 */ bl btu_start_timer /* 802C61A8 002C1E08 48 00 BB E1 */ bl btsnd_hcic_read_local_features lbl_802C61AC: /* 802C61AC 002C1E0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C61B0 002C1E10 7C 08 03 A6 */ mtlr r0 /* 802C61B4 002C1E14 38 21 00 10 */ addi r1, r1, 0x10 /* 802C61B8 002C1E18 4E 80 00 20 */ blr .global btm_read_local_features_complete btm_read_local_features_complete: /* 802C61BC 002C1E1C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C61C0 002C1E20 7C 08 02 A6 */ mflr r0 /* 802C61C4 002C1E24 90 01 00 24 */ stw r0, 0x24(r1) /* 802C61C8 002C1E28 39 61 00 20 */ addi r11, r1, 0x20 /* 802C61CC 002C1E2C 4B F0 0F 5D */ bl _savegpr_27 /* 802C61D0 002C1E30 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C61D4 002C1E34 3F C0 80 44 */ lis r30, lbl_804410E0@ha /* 802C61D8 002C1E38 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C61DC 002C1E3C 38 00 00 00 */ li r0, 0 /* 802C61E0 002C1E40 83 9F 05 8C */ lwz r28, 0x58c(r31) /* 802C61E4 002C1E44 3B DE 10 E0 */ addi r30, r30, lbl_804410E0@l /* 802C61E8 002C1E48 90 1F 05 8C */ stw r0, 0x58c(r31) /* 802C61EC 002C1E4C 88 03 00 00 */ lbz r0, 0(r3) /* 802C61F0 002C1E50 2C 00 00 00 */ cmpwi r0, 0 /* 802C61F4 002C1E54 40 82 04 AC */ bne lbl_802C66A0 /* 802C61F8 002C1E58 38 00 00 05 */ li r0, 5 /* 802C61FC 002C1E5C 38 80 00 18 */ li r4, 0x18 /* 802C6200 002C1E60 98 1F 06 4E */ stb r0, 0x64e(r31) /* 802C6204 002C1E64 88 03 00 01 */ lbz r0, 1(r3) /* 802C6208 002C1E68 98 1F 06 40 */ stb r0, 0x640(r31) /* 802C620C 002C1E6C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802C6210 002C1E70 88 03 00 02 */ lbz r0, 2(r3) /* 802C6214 002C1E74 98 1F 06 41 */ stb r0, 0x641(r31) /* 802C6218 002C1E78 88 03 00 03 */ lbz r0, 3(r3) /* 802C621C 002C1E7C 98 1F 06 42 */ stb r0, 0x642(r31) /* 802C6220 002C1E80 88 03 00 04 */ lbz r0, 4(r3) /* 802C6224 002C1E84 98 1F 06 43 */ stb r0, 0x643(r31) /* 802C6228 002C1E88 88 03 00 05 */ lbz r0, 5(r3) /* 802C622C 002C1E8C 98 1F 06 44 */ stb r0, 0x644(r31) /* 802C6230 002C1E90 88 03 00 06 */ lbz r0, 6(r3) /* 802C6234 002C1E94 98 1F 06 45 */ stb r0, 0x645(r31) /* 802C6238 002C1E98 88 03 00 07 */ lbz r0, 7(r3) /* 802C623C 002C1E9C 98 1F 06 46 */ stb r0, 0x646(r31) /* 802C6240 002C1EA0 88 03 00 08 */ lbz r0, 8(r3) /* 802C6244 002C1EA4 98 1F 06 47 */ stb r0, 0x647(r31) /* 802C6248 002C1EA8 B0 9F 06 54 */ sth r4, 0x654(r31) /* 802C624C 002C1EAC 41 82 00 0C */ beq lbl_802C6258 /* 802C6250 002C1EB0 60 80 0C 00 */ ori r0, r4, 0xc00 /* 802C6254 002C1EB4 B0 1F 06 54 */ sth r0, 0x654(r31) lbl_802C6258: /* 802C6258 002C1EB8 88 1F 06 40 */ lbz r0, 0x640(r31) /* 802C625C 002C1EBC 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 802C6260 002C1EC0 41 82 00 18 */ beq lbl_802C6278 /* 802C6264 002C1EC4 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6268 002C1EC8 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C626C 002C1ECC A0 03 06 54 */ lhz r0, 0x654(r3) /* 802C6270 002C1ED0 60 00 C0 00 */ ori r0, r0, 0xc000 /* 802C6274 002C1ED4 B0 03 06 54 */ sth r0, 0x654(r3) lbl_802C6278: /* 802C6278 002C1ED8 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C627C 002C1EDC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6280 002C1EE0 88 03 06 36 */ lbz r0, 0x636(r3) /* 802C6284 002C1EE4 28 00 00 03 */ cmplwi r0, 3 /* 802C6288 002C1EE8 41 80 00 90 */ blt lbl_802C6318 /* 802C628C 002C1EEC 88 1F 06 43 */ lbz r0, 0x643(r31) /* 802C6290 002C1EF0 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 802C6294 002C1EF4 40 82 00 10 */ bne lbl_802C62A4 /* 802C6298 002C1EF8 A0 03 06 54 */ lhz r0, 0x654(r3) /* 802C629C 002C1EFC 60 00 11 02 */ ori r0, r0, 0x1102 /* 802C62A0 002C1F00 B0 03 06 54 */ sth r0, 0x654(r3) lbl_802C62A4: /* 802C62A4 002C1F04 88 1F 06 43 */ lbz r0, 0x643(r31) /* 802C62A8 002C1F08 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 802C62AC 002C1F0C 40 82 00 18 */ bne lbl_802C62C4 /* 802C62B0 002C1F10 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C62B4 002C1F14 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C62B8 002C1F18 A0 03 06 54 */ lhz r0, 0x654(r3) /* 802C62BC 002C1F1C 60 00 22 04 */ ori r0, r0, 0x2204 /* 802C62C0 002C1F20 B0 03 06 54 */ sth r0, 0x654(r3) lbl_802C62C4: /* 802C62C4 002C1F24 88 7F 06 43 */ lbz r3, 0x643(r31) /* 802C62C8 002C1F28 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e /* 802C62CC 002C1F2C 40 82 00 0C */ bne lbl_802C62D8 /* 802C62D0 002C1F30 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 802C62D4 002C1F34 41 82 00 44 */ beq lbl_802C6318 lbl_802C62D8: /* 802C62D8 002C1F38 88 1F 06 44 */ lbz r0, 0x644(r31) /* 802C62DC 002C1F3C 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 802C62E0 002C1F40 40 82 00 18 */ bne lbl_802C62F8 /* 802C62E4 002C1F44 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C62E8 002C1F48 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C62EC 002C1F4C A0 03 06 54 */ lhz r0, 0x654(r3) /* 802C62F0 002C1F50 60 00 03 00 */ ori r0, r0, 0x300 /* 802C62F4 002C1F54 B0 03 06 54 */ sth r0, 0x654(r3) lbl_802C62F8: /* 802C62F8 002C1F58 88 1F 06 45 */ lbz r0, 0x645(r31) /* 802C62FC 002C1F5C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802C6300 002C1F60 40 82 00 18 */ bne lbl_802C6318 /* 802C6304 002C1F64 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6308 002C1F68 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C630C 002C1F6C A0 03 06 54 */ lhz r0, 0x654(r3) /* 802C6310 002C1F70 60 00 30 00 */ ori r0, r0, 0x3000 /* 802C6314 002C1F74 B0 03 06 54 */ sth r0, 0x654(r3) lbl_802C6318: /* 802C6318 002C1F78 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C631C 002C1F7C 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6320 002C1F80 88 04 27 C0 */ lbz r0, 0x27c0(r4) /* 802C6324 002C1F84 28 00 00 05 */ cmplwi r0, 5 /* 802C6328 002C1F88 41 80 00 18 */ blt lbl_802C6340 /* 802C632C 002C1F8C 3C 60 00 0D */ lis r3, 0x000D0004@ha /* 802C6330 002C1F90 A0 A4 06 54 */ lhz r5, 0x654(r4) /* 802C6334 002C1F94 38 63 00 04 */ addi r3, r3, 0x000D0004@l /* 802C6338 002C1F98 38 9E 00 44 */ addi r4, r30, 0x44 /* 802C633C 002C1F9C 4B FF 6B ED */ bl LogMsg_1 lbl_802C6340: /* 802C6340 002C1FA0 88 7F 06 41 */ lbz r3, 0x641(r31) /* 802C6344 002C1FA4 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6348 002C1FA8 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C634C 002C1FAC 38 A0 00 00 */ li r5, 0 /* 802C6350 002C1FB0 54 60 07 39 */ rlwinm. r0, r3, 0, 0x1c, 0x1c /* 802C6354 002C1FB4 B0 A4 06 56 */ sth r5, 0x656(r4) /* 802C6358 002C1FB8 98 A4 19 08 */ stb r5, 0x1908(r4) /* 802C635C 002C1FBC 41 82 00 3C */ beq lbl_802C6398 /* 802C6360 002C1FC0 54 60 06 F7 */ rlwinm. r0, r3, 0, 0x1b, 0x1b /* 802C6364 002C1FC4 38 00 00 01 */ li r0, 1 /* 802C6368 002C1FC8 B0 04 06 56 */ sth r0, 0x656(r4) /* 802C636C 002C1FCC 41 82 00 0C */ beq lbl_802C6378 /* 802C6370 002C1FD0 60 00 00 02 */ ori r0, r0, 2 /* 802C6374 002C1FD4 B0 04 06 56 */ sth r0, 0x656(r4) lbl_802C6378: /* 802C6378 002C1FD8 88 1F 06 41 */ lbz r0, 0x641(r31) /* 802C637C 002C1FDC 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 802C6380 002C1FE0 41 82 00 18 */ beq lbl_802C6398 /* 802C6384 002C1FE4 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6388 002C1FE8 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C638C 002C1FEC A0 03 06 56 */ lhz r0, 0x656(r3) /* 802C6390 002C1FF0 60 00 00 04 */ ori r0, r0, 4 /* 802C6394 002C1FF4 B0 03 06 56 */ sth r0, 0x656(r3) lbl_802C6398: /* 802C6398 002C1FF8 88 1F 06 43 */ lbz r0, 0x643(r31) /* 802C639C 002C1FFC 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 802C63A0 002C2000 41 82 00 18 */ beq lbl_802C63B8 /* 802C63A4 002C2004 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C63A8 002C2008 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C63AC 002C200C A0 03 06 56 */ lhz r0, 0x656(r3) /* 802C63B0 002C2010 60 00 00 08 */ ori r0, r0, 8 /* 802C63B4 002C2014 B0 03 06 56 */ sth r0, 0x656(r3) lbl_802C63B8: /* 802C63B8 002C2018 88 1F 06 44 */ lbz r0, 0x644(r31) /* 802C63BC 002C201C 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802C63C0 002C2020 41 82 00 18 */ beq lbl_802C63D8 /* 802C63C4 002C2024 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C63C8 002C2028 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C63CC 002C202C A0 03 06 56 */ lhz r0, 0x656(r3) /* 802C63D0 002C2030 60 00 00 10 */ ori r0, r0, 0x10 /* 802C63D4 002C2034 B0 03 06 56 */ sth r0, 0x656(r3) lbl_802C63D8: /* 802C63D8 002C2038 88 1F 06 44 */ lbz r0, 0x644(r31) /* 802C63DC 002C203C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e /* 802C63E0 002C2040 41 82 00 18 */ beq lbl_802C63F8 /* 802C63E4 002C2044 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C63E8 002C2048 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C63EC 002C204C A0 03 06 56 */ lhz r0, 0x656(r3) /* 802C63F0 002C2050 60 00 00 20 */ ori r0, r0, 0x20 /* 802C63F4 002C2054 B0 03 06 56 */ sth r0, 0x656(r3) lbl_802C63F8: /* 802C63F8 002C2058 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C63FC 002C205C 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6400 002C2060 A0 64 06 56 */ lhz r3, 0x656(r4) /* 802C6404 002C2064 54 60 06 B9 */ rlwinm. r0, r3, 0, 0x1a, 0x1c /* 802C6408 002C2068 41 82 00 74 */ beq lbl_802C647C /* 802C640C 002C206C 88 BF 06 45 */ lbz r5, 0x645(r31) /* 802C6410 002C2070 38 00 00 01 */ li r0, 1 /* 802C6414 002C2074 98 04 19 08 */ stb r0, 0x1908(r4) /* 802C6418 002C2078 54 A0 06 B5 */ rlwinm. r0, r5, 0, 0x1a, 0x1a /* 802C641C 002C207C 41 82 00 18 */ beq lbl_802C6434 /* 802C6420 002C2080 54 A0 06 31 */ rlwinm. r0, r5, 0, 0x18, 0x18 /* 802C6424 002C2084 40 82 00 18 */ bne lbl_802C643C /* 802C6428 002C2088 60 60 01 00 */ ori r0, r3, 0x100 /* 802C642C 002C208C B0 04 06 56 */ sth r0, 0x656(r4) /* 802C6430 002C2090 48 00 00 0C */ b lbl_802C643C lbl_802C6434: /* 802C6434 002C2094 60 60 01 40 */ ori r0, r3, 0x140 /* 802C6438 002C2098 B0 04 06 56 */ sth r0, 0x656(r4) lbl_802C643C: /* 802C643C 002C209C 88 7F 06 45 */ lbz r3, 0x645(r31) /* 802C6440 002C20A0 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19 /* 802C6444 002C20A4 41 82 00 24 */ beq lbl_802C6468 /* 802C6448 002C20A8 54 60 06 31 */ rlwinm. r0, r3, 0, 0x18, 0x18 /* 802C644C 002C20AC 40 82 00 30 */ bne lbl_802C647C /* 802C6450 002C20B0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6454 002C20B4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6458 002C20B8 A0 03 06 56 */ lhz r0, 0x656(r3) /* 802C645C 002C20BC 60 00 02 00 */ ori r0, r0, 0x200 /* 802C6460 002C20C0 B0 03 06 56 */ sth r0, 0x656(r3) /* 802C6464 002C20C4 48 00 00 18 */ b lbl_802C647C lbl_802C6468: /* 802C6468 002C20C8 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C646C 002C20CC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6470 002C20D0 A0 03 06 56 */ lhz r0, 0x656(r3) /* 802C6474 002C20D4 60 00 02 80 */ ori r0, r0, 0x280 /* 802C6478 002C20D8 B0 03 06 56 */ sth r0, 0x656(r3) lbl_802C647C: /* 802C647C 002C20DC 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6480 002C20E0 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6484 002C20E4 88 04 27 C0 */ lbz r0, 0x27c0(r4) /* 802C6488 002C20E8 28 00 00 05 */ cmplwi r0, 5 /* 802C648C 002C20EC 41 80 00 18 */ blt lbl_802C64A4 /* 802C6490 002C20F0 3C 60 00 0D */ lis r3, 0x000D0004@ha /* 802C6494 002C20F4 A0 A4 06 56 */ lhz r5, 0x656(r4) /* 802C6498 002C20F8 38 63 00 04 */ addi r3, r3, 0x000D0004@l /* 802C649C 002C20FC 38 9E 00 70 */ addi r4, r30, 0x70 /* 802C64A0 002C2100 4B FF 6A 89 */ bl LogMsg_1 lbl_802C64A4: /* 802C64A4 002C2104 88 1F 06 40 */ lbz r0, 0x640(r31) /* 802C64A8 002C2108 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 802C64AC 002C210C 41 82 00 1C */ beq lbl_802C64C8 /* 802C64B0 002C2110 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C64B4 002C2114 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C64B8 002C2118 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C64BC 002C211C 60 00 00 01 */ ori r0, r0, 1 /* 802C64C0 002C2120 B0 03 04 C4 */ sth r0, 0x4c4(r3) /* 802C64C4 002C2124 48 00 00 18 */ b lbl_802C64DC lbl_802C64C8: /* 802C64C8 002C2128 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C64CC 002C212C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C64D0 002C2130 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C64D4 002C2134 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e /* 802C64D8 002C2138 B0 03 04 C4 */ sth r0, 0x4c4(r3) lbl_802C64DC: /* 802C64DC 002C213C 88 1F 06 40 */ lbz r0, 0x640(r31) /* 802C64E0 002C2140 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 802C64E4 002C2144 41 82 00 1C */ beq lbl_802C6500 /* 802C64E8 002C2148 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C64EC 002C214C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C64F0 002C2150 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C64F4 002C2154 60 00 00 02 */ ori r0, r0, 2 /* 802C64F8 002C2158 B0 03 04 C4 */ sth r0, 0x4c4(r3) /* 802C64FC 002C215C 48 00 00 18 */ b lbl_802C6514 lbl_802C6500: /* 802C6500 002C2160 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6504 002C2164 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6508 002C2168 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C650C 002C216C 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d /* 802C6510 002C2170 B0 03 04 C4 */ sth r0, 0x4c4(r3) lbl_802C6514: /* 802C6514 002C2174 88 1F 06 40 */ lbz r0, 0x640(r31) /* 802C6518 002C2178 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 /* 802C651C 002C217C 41 82 00 1C */ beq lbl_802C6538 /* 802C6520 002C2180 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6524 002C2184 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6528 002C2188 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C652C 002C218C 60 00 00 04 */ ori r0, r0, 4 /* 802C6530 002C2190 B0 03 04 C4 */ sth r0, 0x4c4(r3) /* 802C6534 002C2194 48 00 00 18 */ b lbl_802C654C lbl_802C6538: /* 802C6538 002C2198 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C653C 002C219C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6540 002C21A0 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C6544 002C21A4 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c /* 802C6548 002C21A8 B0 03 04 C4 */ sth r0, 0x4c4(r3) lbl_802C654C: /* 802C654C 002C21AC 88 1F 06 41 */ lbz r0, 0x641(r31) /* 802C6550 002C21B0 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802C6554 002C21B4 41 82 00 1C */ beq lbl_802C6570 /* 802C6558 002C21B8 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C655C 002C21BC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6560 002C21C0 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C6564 002C21C4 60 00 00 08 */ ori r0, r0, 8 /* 802C6568 002C21C8 B0 03 04 C4 */ sth r0, 0x4c4(r3) /* 802C656C 002C21CC 48 00 00 18 */ b lbl_802C6584 lbl_802C6570: /* 802C6570 002C21D0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6574 002C21D4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6578 002C21D8 A0 03 04 C4 */ lhz r0, 0x4c4(r3) /* 802C657C 002C21DC 54 00 07 76 */ rlwinm r0, r0, 0, 0x1d, 0x1b /* 802C6580 002C21E0 B0 03 04 C4 */ sth r0, 0x4c4(r3) lbl_802C6584: /* 802C6584 002C21E4 48 00 55 DD */ bl btm_sec_dev_reset /* 802C6588 002C21E8 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C658C 002C21EC 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6590 002C21F0 8B A4 27 BE */ lbz r29, 0x27be(r4) /* 802C6594 002C21F4 28 1D 00 FF */ cmplwi r29, 0xff /* 802C6598 002C21F8 41 82 00 AC */ beq lbl_802C6644 /* 802C659C 002C21FC 88 04 27 C0 */ lbz r0, 0x27c0(r4) /* 802C65A0 002C2200 38 60 00 FF */ li r3, 0xff /* 802C65A4 002C2204 8B 64 27 BD */ lbz r27, 0x27bd(r4) /* 802C65A8 002C2208 28 00 00 03 */ cmplwi r0, 3 /* 802C65AC 002C220C 98 64 27 BE */ stb r3, 0x27be(r4) /* 802C65B0 002C2210 98 64 27 BD */ stb r3, 0x27bd(r4) /* 802C65B4 002C2214 41 80 00 24 */ blt lbl_802C65D8 /* 802C65B8 002C2218 3C 60 00 0D */ lis r3, 0x000D0002@ha /* 802C65BC 002C221C 7F 65 DB 78 */ mr r5, r27 /* 802C65C0 002C2220 7F A7 EB 78 */ mr r7, r29 /* 802C65C4 002C2224 38 9E 00 00 */ addi r4, r30, 0 /* 802C65C8 002C2228 38 63 00 02 */ addi r3, r3, 0x000D0002@l /* 802C65CC 002C222C 38 C0 00 FF */ li r6, 0xff /* 802C65D0 002C2230 39 00 00 FF */ li r8, 0xff /* 802C65D4 002C2234 4B FF 69 9D */ bl LogMsg_4 lbl_802C65D8: /* 802C65D8 002C2238 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C65DC 002C223C 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C65E0 002C2240 88 83 06 45 */ lbz r4, 0x645(r3) /* 802C65E4 002C2244 54 80 07 39 */ rlwinm. r0, r4, 0, 0x1c, 0x1c /* 802C65E8 002C2248 40 82 00 18 */ bne lbl_802C6600 /* 802C65EC 002C224C 88 03 06 44 */ lbz r0, 0x644(r3) /* 802C65F0 002C2250 54 00 06 F7 */ rlwinm. r0, r0, 0, 0x1b, 0x1b /* 802C65F4 002C2254 40 82 00 0C */ bne lbl_802C6600 /* 802C65F8 002C2258 54 80 06 F7 */ rlwinm. r0, r4, 0, 0x1b, 0x1b /* 802C65FC 002C225C 41 82 00 48 */ beq lbl_802C6644 lbl_802C6600: /* 802C6600 002C2260 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6604 002C2264 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6608 002C2268 88 03 27 BD */ lbz r0, 0x27bd(r3) /* 802C660C 002C226C 7C 00 D8 40 */ cmplw r0, r27 /* 802C6610 002C2270 40 82 00 10 */ bne lbl_802C6620 /* 802C6614 002C2274 88 03 27 BE */ lbz r0, 0x27be(r3) /* 802C6618 002C2278 7C 00 E8 40 */ cmplw r0, r29 /* 802C661C 002C227C 41 82 00 28 */ beq lbl_802C6644 lbl_802C6620: /* 802C6620 002C2280 7F 63 DB 78 */ mr r3, r27 /* 802C6624 002C2284 7F A4 EB 78 */ mr r4, r29 /* 802C6628 002C2288 48 00 B9 39 */ bl btsnd_hcic_set_afh_channels /* 802C662C 002C228C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802C6630 002C2290 41 82 00 14 */ beq lbl_802C6644 /* 802C6634 002C2294 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6638 002C2298 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C663C 002C229C 9B 63 27 BD */ stb r27, 0x27bd(r3) /* 802C6640 002C22A0 9B A3 27 BE */ stb r29, 0x27be(r3) lbl_802C6644: /* 802C6644 002C22A4 88 1F 06 43 */ lbz r0, 0x643(r31) /* 802C6648 002C22A8 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 802C664C 002C22AC 41 82 00 0C */ beq lbl_802C6658 /* 802C6650 002C22B0 38 60 00 01 */ li r3, 1 /* 802C6654 002C22B4 48 00 10 89 */ bl BTM_SetInquiryMode lbl_802C6658: /* 802C6658 002C22B8 38 60 00 01 */ li r3, 1 /* 802C665C 002C22BC 48 00 0F D1 */ bl BTM_SetPageScanType /* 802C6660 002C22C0 38 60 00 01 */ li r3, 1 /* 802C6664 002C22C4 48 00 0F 19 */ bl BTM_SetInquiryScanType /* 802C6668 002C22C8 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C666C 002C22CC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6670 002C22D0 81 83 05 68 */ lwz r12, 0x568(r3) /* 802C6674 002C22D4 2C 0C 00 00 */ cmpwi r12, 0 /* 802C6678 002C22D8 41 82 00 10 */ beq lbl_802C6688 /* 802C667C 002C22DC 38 60 00 00 */ li r3, 0 /* 802C6680 002C22E0 7D 89 03 A6 */ mtctr r12 /* 802C6684 002C22E4 4E 80 04 21 */ bctrl lbl_802C6688: /* 802C6688 002C22E8 2C 1C 00 00 */ cmpwi r28, 0 /* 802C668C 002C22EC 41 82 00 14 */ beq lbl_802C66A0 /* 802C6690 002C22F0 7F 8C E3 78 */ mr r12, r28 /* 802C6694 002C22F4 38 60 00 00 */ li r3, 0 /* 802C6698 002C22F8 7D 89 03 A6 */ mtctr r12 /* 802C669C 002C22FC 4E 80 04 21 */ bctrl lbl_802C66A0: /* 802C66A0 002C2300 39 61 00 20 */ addi r11, r1, 0x20 /* 802C66A4 002C2304 4B F0 0A D1 */ bl _restgpr_27 /* 802C66A8 002C2308 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C66AC 002C230C 7C 08 03 A6 */ mtlr r0 /* 802C66B0 002C2310 38 21 00 20 */ addi r1, r1, 0x20 /* 802C66B4 002C2314 4E 80 00 20 */ blr .global BTM_SetLocalDeviceName BTM_SetLocalDeviceName: /* 802C66B8 002C2318 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C66BC 002C231C 7C 08 02 A6 */ mflr r0 /* 802C66C0 002C2320 2C 03 00 00 */ cmpwi r3, 0 /* 802C66C4 002C2324 90 01 00 24 */ stw r0, 0x24(r1) /* 802C66C8 002C2328 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802C66CC 002C232C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802C66D0 002C2330 93 A1 00 14 */ stw r29, 0x14(r1) /* 802C66D4 002C2334 7C 7D 1B 78 */ mr r29, r3 /* 802C66D8 002C2338 40 82 00 0C */ bne lbl_802C66E4 /* 802C66DC 002C233C 38 60 00 05 */ li r3, 5 /* 802C66E0 002C2340 48 00 00 74 */ b lbl_802C6754 lbl_802C66E4: /* 802C66E4 002C2344 3F C0 80 57 */ lis r30, lbl_80568B78@ha /* 802C66E8 002C2348 3B DE 8B 78 */ addi r30, r30, lbl_80568B78@l /* 802C66EC 002C234C 88 1E 06 4E */ lbz r0, 0x64e(r30) /* 802C66F0 002C2350 28 00 00 01 */ cmplwi r0, 1 /* 802C66F4 002C2354 41 81 00 0C */ bgt lbl_802C6700 /* 802C66F8 002C2358 38 60 00 0C */ li r3, 0xc /* 802C66FC 002C235C 48 00 00 58 */ b lbl_802C6754 lbl_802C6700: /* 802C6700 002C2360 38 60 00 02 */ li r3, 2 /* 802C6704 002C2364 4B FF 35 49 */ bl GKI_getpoolbuf /* 802C6708 002C2368 2C 03 00 00 */ cmpwi r3, 0 /* 802C670C 002C236C 7C 7F 1B 78 */ mr r31, r3 /* 802C6710 002C2370 41 82 00 40 */ beq lbl_802C6750 /* 802C6714 002C2374 7C 1E E8 40 */ cmplw r30, r29 /* 802C6718 002C2378 41 82 00 24 */ beq lbl_802C673C /* 802C671C 002C237C 7F C3 F3 78 */ mr r3, r30 /* 802C6720 002C2380 38 80 00 00 */ li r4, 0 /* 802C6724 002C2384 38 A0 00 20 */ li r5, 0x20 /* 802C6728 002C2388 4B D3 D9 DD */ bl memset /* 802C672C 002C238C 7F C3 F3 78 */ mr r3, r30 /* 802C6730 002C2390 7F A4 EB 78 */ mr r4, r29 /* 802C6734 002C2394 38 A0 00 1F */ li r5, 0x1f /* 802C6738 002C2398 4B F0 7C 59 */ bl strncpy lbl_802C673C: /* 802C673C 002C239C 7F E3 FB 78 */ mr r3, r31 /* 802C6740 002C23A0 7F C4 F3 78 */ mr r4, r30 /* 802C6744 002C23A4 48 00 B0 85 */ bl btsnd_hcic_change_name /* 802C6748 002C23A8 38 60 00 01 */ li r3, 1 /* 802C674C 002C23AC 48 00 00 08 */ b lbl_802C6754 lbl_802C6750: /* 802C6750 002C23B0 38 60 00 03 */ li r3, 3 lbl_802C6754: /* 802C6754 002C23B4 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C6758 002C23B8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C675C 002C23BC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802C6760 002C23C0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802C6764 002C23C4 7C 08 03 A6 */ mtlr r0 /* 802C6768 002C23C8 38 21 00 20 */ addi r1, r1, 0x20 /* 802C676C 002C23CC 4E 80 00 20 */ blr .global btm_read_local_name_complete btm_read_local_name_complete: /* 802C6770 002C23D0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C6774 002C23D4 7C 08 02 A6 */ mflr r0 /* 802C6778 002C23D8 90 01 00 24 */ stw r0, 0x24(r1) /* 802C677C 002C23DC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802C6780 002C23E0 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C6784 002C23E4 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C6788 002C23E8 93 C1 00 18 */ stw r30, 0x18(r1) /* 802C678C 002C23EC 93 A1 00 14 */ stw r29, 0x14(r1) /* 802C6790 002C23F0 7C 7D 1B 78 */ mr r29, r3 /* 802C6794 002C23F4 38 7F 05 90 */ addi r3, r31, 0x590 /* 802C6798 002C23F8 83 DF 05 A8 */ lwz r30, 0x5a8(r31) /* 802C679C 002C23FC 4B FF 6D B1 */ bl btu_stop_timer /* 802C67A0 002C2400 38 00 00 00 */ li r0, 0 /* 802C67A4 002C2404 2C 1E 00 00 */ cmpwi r30, 0 /* 802C67A8 002C2408 90 1F 05 A8 */ stw r0, 0x5a8(r31) /* 802C67AC 002C240C 41 82 00 34 */ beq lbl_802C67E0 /* 802C67B0 002C2410 88 1D 00 00 */ lbz r0, 0(r29) /* 802C67B4 002C2414 2C 00 00 00 */ cmpwi r0, 0 /* 802C67B8 002C2418 40 82 00 18 */ bne lbl_802C67D0 /* 802C67BC 002C241C 7F CC F3 78 */ mr r12, r30 /* 802C67C0 002C2420 38 7D 00 01 */ addi r3, r29, 1 /* 802C67C4 002C2424 7D 89 03 A6 */ mtctr r12 /* 802C67C8 002C2428 4E 80 04 21 */ bctrl /* 802C67CC 002C242C 48 00 00 14 */ b lbl_802C67E0 lbl_802C67D0: /* 802C67D0 002C2430 7F CC F3 78 */ mr r12, r30 /* 802C67D4 002C2434 38 60 00 00 */ li r3, 0 /* 802C67D8 002C2438 7D 89 03 A6 */ mtctr r12 /* 802C67DC 002C243C 4E 80 04 21 */ bctrl lbl_802C67E0: /* 802C67E0 002C2440 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C67E4 002C2444 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C67E8 002C2448 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802C67EC 002C244C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802C67F0 002C2450 7C 08 03 A6 */ mtlr r0 /* 802C67F4 002C2454 38 21 00 20 */ addi r1, r1, 0x20 /* 802C67F8 002C2458 4E 80 00 20 */ blr .global BTM_ReadLocalDeviceAddr BTM_ReadLocalDeviceAddr: /* 802C67FC 002C245C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C6800 002C2460 7C 08 02 A6 */ mflr r0 /* 802C6804 002C2464 2C 03 00 00 */ cmpwi r3, 0 /* 802C6808 002C2468 90 01 00 14 */ stw r0, 0x14(r1) /* 802C680C 002C246C 41 82 00 1C */ beq lbl_802C6828 /* 802C6810 002C2470 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6814 002C2474 7C 6C 1B 78 */ mr r12, r3 /* 802C6818 002C2478 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C681C 002C247C 38 64 06 30 */ addi r3, r4, 0x630 /* 802C6820 002C2480 7D 89 03 A6 */ mtctr r12 /* 802C6824 002C2484 4E 80 04 21 */ bctrl lbl_802C6828: /* 802C6828 002C2488 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C682C 002C248C 38 60 00 00 */ li r3, 0 /* 802C6830 002C2490 7C 08 03 A6 */ mtlr r0 /* 802C6834 002C2494 38 21 00 10 */ addi r1, r1, 0x10 /* 802C6838 002C2498 4E 80 00 20 */ blr .global btm_read_local_addr_complete btm_read_local_addr_complete: /* 802C683C 002C249C 88 03 00 00 */ lbz r0, 0(r3) /* 802C6840 002C24A0 2C 00 00 00 */ cmpwi r0, 0 /* 802C6844 002C24A4 4C 82 00 20 */ bnelr /* 802C6848 002C24A8 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C684C 002C24AC 88 03 00 01 */ lbz r0, 1(r3) /* 802C6850 002C24B0 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6854 002C24B4 98 04 06 35 */ stb r0, 0x635(r4) /* 802C6858 002C24B8 88 03 00 02 */ lbz r0, 2(r3) /* 802C685C 002C24BC 98 04 06 34 */ stb r0, 0x634(r4) /* 802C6860 002C24C0 88 03 00 03 */ lbz r0, 3(r3) /* 802C6864 002C24C4 98 04 06 33 */ stb r0, 0x633(r4) /* 802C6868 002C24C8 88 03 00 04 */ lbz r0, 4(r3) /* 802C686C 002C24CC 98 04 06 32 */ stb r0, 0x632(r4) /* 802C6870 002C24D0 88 03 00 05 */ lbz r0, 5(r3) /* 802C6874 002C24D4 98 04 06 31 */ stb r0, 0x631(r4) /* 802C6878 002C24D8 88 03 00 06 */ lbz r0, 6(r3) /* 802C687C 002C24DC 98 04 06 30 */ stb r0, 0x630(r4) /* 802C6880 002C24E0 4E 80 00 20 */ blr .global BTM_ReadLocalVersion BTM_ReadLocalVersion: /* 802C6884 002C24E4 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C6888 002C24E8 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C688C 002C24EC 88 05 06 4E */ lbz r0, 0x64e(r5) /* 802C6890 002C24F0 28 00 00 04 */ cmplwi r0, 4 /* 802C6894 002C24F4 40 80 00 0C */ bge lbl_802C68A0 /* 802C6898 002C24F8 38 60 00 0C */ li r3, 0xc /* 802C689C 002C24FC 4E 80 00 20 */ blr lbl_802C68A0: /* 802C68A0 002C2500 A0 85 06 36 */ lhz r4, 0x636(r5) /* 802C68A4 002C2504 A0 05 06 38 */ lhz r0, 0x638(r5) /* 802C68A8 002C2508 B0 83 00 00 */ sth r4, 0(r3) /* 802C68AC 002C250C B0 03 00 02 */ sth r0, 2(r3) /* 802C68B0 002C2510 A0 85 06 3A */ lhz r4, 0x63a(r5) /* 802C68B4 002C2514 A0 05 06 3C */ lhz r0, 0x63c(r5) /* 802C68B8 002C2518 B0 83 00 04 */ sth r4, 4(r3) /* 802C68BC 002C251C B0 03 00 06 */ sth r0, 6(r3) /* 802C68C0 002C2520 A0 05 06 3E */ lhz r0, 0x63e(r5) /* 802C68C4 002C2524 B0 03 00 08 */ sth r0, 8(r3) /* 802C68C8 002C2528 38 60 00 00 */ li r3, 0 /* 802C68CC 002C252C 4E 80 00 20 */ blr .global BTM_SetDeviceClass BTM_SetDeviceClass: /* 802C68D0 002C2530 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C68D4 002C2534 7C 08 02 A6 */ mflr r0 /* 802C68D8 002C2538 38 A0 00 03 */ li r5, 3 /* 802C68DC 002C253C 90 01 00 14 */ stw r0, 0x14(r1) /* 802C68E0 002C2540 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C68E4 002C2544 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C68E8 002C2548 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C68EC 002C254C 93 C1 00 08 */ stw r30, 8(r1) /* 802C68F0 002C2550 7C 7E 1B 78 */ mr r30, r3 /* 802C68F4 002C2554 7F C4 F3 78 */ mr r4, r30 /* 802C68F8 002C2558 38 7F 06 48 */ addi r3, r31, 0x648 /* 802C68FC 002C255C 4B D3 D7 05 */ bl memcpy /* 802C6900 002C2560 88 1F 06 4E */ lbz r0, 0x64e(r31) /* 802C6904 002C2564 28 00 00 01 */ cmplwi r0, 1 /* 802C6908 002C2568 41 81 00 0C */ bgt lbl_802C6914 /* 802C690C 002C256C 38 60 00 0C */ li r3, 0xc /* 802C6910 002C2570 48 00 00 28 */ b lbl_802C6938 lbl_802C6914: /* 802C6914 002C2574 38 60 00 02 */ li r3, 2 /* 802C6918 002C2578 4B FF 33 35 */ bl GKI_getpoolbuf /* 802C691C 002C257C 2C 03 00 00 */ cmpwi r3, 0 /* 802C6920 002C2580 41 82 00 14 */ beq lbl_802C6934 /* 802C6924 002C2584 7F C4 F3 78 */ mr r4, r30 /* 802C6928 002C2588 48 00 B1 B9 */ bl btsnd_hcic_write_dev_class /* 802C692C 002C258C 38 60 00 00 */ li r3, 0 /* 802C6930 002C2590 48 00 00 08 */ b lbl_802C6938 lbl_802C6934: /* 802C6934 002C2594 38 60 00 03 */ li r3, 3 lbl_802C6938: /* 802C6938 002C2598 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C693C 002C259C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C6940 002C25A0 83 C1 00 08 */ lwz r30, 8(r1) /* 802C6944 002C25A4 7C 08 03 A6 */ mtlr r0 /* 802C6948 002C25A8 38 21 00 10 */ addi r1, r1, 0x10 /* 802C694C 002C25AC 4E 80 00 20 */ blr .global BTM_ReadDeviceClass BTM_ReadDeviceClass: /* 802C6950 002C25B0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6954 002C25B4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6958 002C25B8 38 63 06 48 */ addi r3, r3, 0x648 /* 802C695C 002C25BC 4E 80 00 20 */ blr .global BTM_ReadLocalFeatures BTM_ReadLocalFeatures: /* 802C6960 002C25C0 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6964 002C25C4 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6968 002C25C8 38 63 06 40 */ addi r3, r3, 0x640 /* 802C696C 002C25CC 4E 80 00 20 */ blr .global BTM_RegisterForDeviceStatusNotif BTM_RegisterForDeviceStatusNotif: /* 802C6970 002C25D0 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6974 002C25D4 7C 60 1B 78 */ mr r0, r3 /* 802C6978 002C25D8 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C697C 002C25DC 80 64 05 68 */ lwz r3, 0x568(r4) /* 802C6980 002C25E0 90 04 05 68 */ stw r0, 0x568(r4) /* 802C6984 002C25E4 4E 80 00 20 */ blr .global BTM_VendorSpecificCommand BTM_VendorSpecificCommand: /* 802C6988 002C25E8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C698C 002C25EC 7C 08 02 A6 */ mflr r0 /* 802C6990 002C25F0 90 01 00 24 */ stw r0, 0x24(r1) /* 802C6994 002C25F4 39 61 00 20 */ addi r11, r1, 0x20 /* 802C6998 002C25F8 4B F0 07 91 */ bl _savegpr_27 /* 802C699C 002C25FC 3C E0 80 57 */ lis r7, lbl_80568B78@ha /* 802C69A0 002C2600 7C 7B 1B 78 */ mr r27, r3 /* 802C69A4 002C2604 38 E7 8B 78 */ addi r7, r7, lbl_80568B78@l /* 802C69A8 002C2608 7C 9C 23 78 */ mr r28, r4 /* 802C69AC 002C260C 88 07 27 C0 */ lbz r0, 0x27c0(r7) /* 802C69B0 002C2610 7C BD 2B 78 */ mr r29, r5 /* 802C69B4 002C2614 7C DE 33 78 */ mr r30, r6 /* 802C69B8 002C2618 28 00 00 04 */ cmplwi r0, 4 /* 802C69BC 002C261C 41 80 00 20 */ blt lbl_802C69DC /* 802C69C0 002C2620 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C69C4 002C2624 3C 80 80 44 */ lis r4, lbl_8044117C@ha /* 802C69C8 002C2628 7F 65 DB 78 */ mr r5, r27 /* 802C69CC 002C262C 7F 86 E3 78 */ mr r6, r28 /* 802C69D0 002C2630 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C69D4 002C2634 38 84 11 7C */ addi r4, r4, lbl_8044117C@l /* 802C69D8 002C2638 4B FF 65 69 */ bl LogMsg_2 lbl_802C69DC: /* 802C69DC 002C263C 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C69E0 002C2640 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C69E4 002C2644 88 1F 06 50 */ lbz r0, 0x650(r31) /* 802C69E8 002C2648 2C 00 00 00 */ cmpwi r0, 0 /* 802C69EC 002C264C 41 82 00 2C */ beq lbl_802C6A18 /* 802C69F0 002C2650 88 1F 27 C0 */ lbz r0, 0x27c0(r31) /* 802C69F4 002C2654 28 00 00 04 */ cmplwi r0, 4 /* 802C69F8 002C2658 41 80 00 18 */ blt lbl_802C6A10 /* 802C69FC 002C265C 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C6A00 002C2660 3C 80 80 44 */ lis r4, lbl_804411BC@ha /* 802C6A04 002C2664 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C6A08 002C2668 38 84 11 BC */ addi r4, r4, lbl_804411BC@l /* 802C6A0C 002C266C 4B FF 65 05 */ bl LogMsg_0 lbl_802C6A10: /* 802C6A10 002C2670 38 60 00 02 */ li r3, 2 /* 802C6A14 002C2674 48 00 00 58 */ b lbl_802C6A6C lbl_802C6A18: /* 802C6A18 002C2678 38 1C 00 0B */ addi r0, r28, 0xb /* 802C6A1C 002C267C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802C6A20 002C2680 4B FF 30 8D */ bl GKI_getbuf /* 802C6A24 002C2684 2C 03 00 00 */ cmpwi r3, 0 /* 802C6A28 002C2688 41 82 00 40 */ beq lbl_802C6A68 /* 802C6A2C 002C268C 2C 1E 00 00 */ cmpwi r30, 0 /* 802C6A30 002C2690 93 DF 06 1C */ stw r30, 0x61c(r31) /* 802C6A34 002C2694 41 82 00 0C */ beq lbl_802C6A40 /* 802C6A38 002C2698 38 00 00 01 */ li r0, 1 /* 802C6A3C 002C269C 98 1F 06 50 */ stb r0, 0x650(r31) lbl_802C6A40: /* 802C6A40 002C26A0 7F 64 DB 78 */ mr r4, r27 /* 802C6A44 002C26A4 7F 85 E3 78 */ mr r5, r28 /* 802C6A48 002C26A8 7F A6 EB 78 */ mr r6, r29 /* 802C6A4C 002C26AC 48 00 B9 C5 */ bl btsnd_hcic_vendor_spec_cmd /* 802C6A50 002C26B0 2C 1E 00 00 */ cmpwi r30, 0 /* 802C6A54 002C26B4 41 82 00 0C */ beq lbl_802C6A60 /* 802C6A58 002C26B8 38 60 00 01 */ li r3, 1 /* 802C6A5C 002C26BC 48 00 00 10 */ b lbl_802C6A6C lbl_802C6A60: /* 802C6A60 002C26C0 38 60 00 00 */ li r3, 0 /* 802C6A64 002C26C4 48 00 00 08 */ b lbl_802C6A6C lbl_802C6A68: /* 802C6A68 002C26C8 38 60 00 03 */ li r3, 3 lbl_802C6A6C: /* 802C6A6C 002C26CC 39 61 00 20 */ addi r11, r1, 0x20 /* 802C6A70 002C26D0 4B F0 07 05 */ bl _restgpr_27 /* 802C6A74 002C26D4 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C6A78 002C26D8 7C 08 03 A6 */ mtlr r0 /* 802C6A7C 002C26DC 38 21 00 20 */ addi r1, r1, 0x20 /* 802C6A80 002C26E0 4E 80 00 20 */ blr .global btm_vsc_complete btm_vsc_complete: /* 802C6A84 002C26E4 94 21 FE E0 */ stwu r1, -0x120(r1) /* 802C6A88 002C26E8 7C 08 02 A6 */ mflr r0 /* 802C6A8C 002C26EC 3C C0 80 57 */ lis r6, lbl_80568B78@ha /* 802C6A90 002C26F0 7C 67 1B 78 */ mr r7, r3 /* 802C6A94 002C26F4 90 01 01 24 */ stw r0, 0x124(r1) /* 802C6A98 002C26F8 38 C6 8B 78 */ addi r6, r6, lbl_80568B78@l /* 802C6A9C 002C26FC 38 00 00 00 */ li r0, 0 /* 802C6AA0 002C2700 38 61 00 0C */ addi r3, r1, 0xc /* 802C6AA4 002C2704 93 E1 01 1C */ stw r31, 0x11c(r1) /* 802C6AA8 002C2708 83 E6 06 1C */ lwz r31, 0x61c(r6) /* 802C6AAC 002C270C 98 06 06 50 */ stb r0, 0x650(r6) /* 802C6AB0 002C2710 2C 1F 00 00 */ cmpwi r31, 0 /* 802C6AB4 002C2714 90 06 06 1C */ stw r0, 0x61c(r6) /* 802C6AB8 002C2718 41 82 00 24 */ beq lbl_802C6ADC /* 802C6ABC 002C271C B0 81 00 08 */ sth r4, 8(r1) /* 802C6AC0 002C2720 7C E4 3B 78 */ mr r4, r7 /* 802C6AC4 002C2724 B0 A1 00 0A */ sth r5, 0xa(r1) /* 802C6AC8 002C2728 4B D3 D5 39 */ bl memcpy /* 802C6ACC 002C272C 7F EC FB 78 */ mr r12, r31 /* 802C6AD0 002C2730 38 61 00 08 */ addi r3, r1, 8 /* 802C6AD4 002C2734 7D 89 03 A6 */ mtctr r12 /* 802C6AD8 002C2738 4E 80 04 21 */ bctrl lbl_802C6ADC: /* 802C6ADC 002C273C 80 01 01 24 */ lwz r0, 0x124(r1) /* 802C6AE0 002C2740 83 E1 01 1C */ lwz r31, 0x11c(r1) /* 802C6AE4 002C2744 7C 08 03 A6 */ mtlr r0 /* 802C6AE8 002C2748 38 21 01 20 */ addi r1, r1, 0x120 /* 802C6AEC 002C274C 4E 80 00 20 */ blr .global BTM_RegisterForVSEvents BTM_RegisterForVSEvents: /* 802C6AF0 002C2750 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6AF4 002C2754 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6AF8 002C2758 80 04 05 6C */ lwz r0, 0x56c(r4) /* 802C6AFC 002C275C 2C 00 00 00 */ cmpwi r0, 0 /* 802C6B00 002C2760 41 82 00 14 */ beq lbl_802C6B14 /* 802C6B04 002C2764 2C 03 00 00 */ cmpwi r3, 0 /* 802C6B08 002C2768 41 82 00 0C */ beq lbl_802C6B14 /* 802C6B0C 002C276C 38 60 00 02 */ li r3, 2 /* 802C6B10 002C2770 4E 80 00 20 */ blr lbl_802C6B14: /* 802C6B14 002C2774 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6B18 002C2778 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6B1C 002C277C 90 64 05 6C */ stw r3, 0x56c(r4) /* 802C6B20 002C2780 38 60 00 00 */ li r3, 0 /* 802C6B24 002C2784 4E 80 00 20 */ blr .global btm_vendor_specific_evt btm_vendor_specific_evt: /* 802C6B28 002C2788 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C6B2C 002C278C 7C 08 02 A6 */ mflr r0 /* 802C6B30 002C2790 90 01 00 24 */ stw r0, 0x24(r1) /* 802C6B34 002C2794 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802C6B38 002C2798 3F E0 80 57 */ lis r31, lbl_80568B78@ha /* 802C6B3C 002C279C 3B FF 8B 78 */ addi r31, r31, lbl_80568B78@l /* 802C6B40 002C27A0 93 C1 00 18 */ stw r30, 0x18(r1) /* 802C6B44 002C27A4 7C 9E 23 78 */ mr r30, r4 /* 802C6B48 002C27A8 93 A1 00 14 */ stw r29, 0x14(r1) /* 802C6B4C 002C27AC 7C 7D 1B 78 */ mr r29, r3 /* 802C6B50 002C27B0 A0 1F 06 3C */ lhz r0, 0x63c(r31) /* 802C6B54 002C27B4 28 00 00 12 */ cmplwi r0, 0x12 /* 802C6B58 002C27B8 41 82 00 24 */ beq lbl_802C6B7C /* 802C6B5C 002C27BC 88 1F 27 C0 */ lbz r0, 0x27c0(r31) /* 802C6B60 002C27C0 28 00 00 04 */ cmplwi r0, 4 /* 802C6B64 002C27C4 41 80 00 18 */ blt lbl_802C6B7C /* 802C6B68 002C27C8 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C6B6C 002C27CC 3C 80 80 44 */ lis r4, lbl_80441200@ha /* 802C6B70 002C27D0 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C6B74 002C27D4 38 84 12 00 */ addi r4, r4, lbl_80441200@l /* 802C6B78 002C27D8 4B FF 63 99 */ bl LogMsg_0 lbl_802C6B7C: /* 802C6B7C 002C27DC 81 9F 05 6C */ lwz r12, 0x56c(r31) /* 802C6B80 002C27E0 38 00 00 00 */ li r0, 0 /* 802C6B84 002C27E4 90 1F 06 1C */ stw r0, 0x61c(r31) /* 802C6B88 002C27E8 2C 0C 00 00 */ cmpwi r12, 0 /* 802C6B8C 002C27EC 98 1F 06 50 */ stb r0, 0x650(r31) /* 802C6B90 002C27F0 41 82 00 14 */ beq lbl_802C6BA4 /* 802C6B94 002C27F4 7F C3 F3 78 */ mr r3, r30 /* 802C6B98 002C27F8 7F A4 EB 78 */ mr r4, r29 /* 802C6B9C 002C27FC 7D 89 03 A6 */ mtctr r12 /* 802C6BA0 002C2800 4E 80 04 21 */ bctrl lbl_802C6BA4: /* 802C6BA4 002C2804 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C6BA8 002C2808 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C6BAC 002C280C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802C6BB0 002C2810 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802C6BB4 002C2814 7C 08 03 A6 */ mtlr r0 /* 802C6BB8 002C2818 38 21 00 20 */ addi r1, r1, 0x20 /* 802C6BBC 002C281C 4E 80 00 20 */ blr .global BTM_WritePageTimeout BTM_WritePageTimeout: /* 802C6BC0 002C2820 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C6BC4 002C2824 7C 08 02 A6 */ mflr r0 /* 802C6BC8 002C2828 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6BCC 002C282C 90 01 00 14 */ stw r0, 0x14(r1) /* 802C6BD0 002C2830 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6BD4 002C2834 93 E1 00 0C */ stw r31, 0xc(r1) /* 802C6BD8 002C2838 7C 7F 1B 78 */ mr r31, r3 /* 802C6BDC 002C283C 88 04 27 C0 */ lbz r0, 0x27c0(r4) /* 802C6BE0 002C2840 28 00 00 04 */ cmplwi r0, 4 /* 802C6BE4 002C2844 41 80 00 1C */ blt lbl_802C6C00 /* 802C6BE8 002C2848 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C6BEC 002C284C 3C 80 80 44 */ lis r4, lbl_80441240@ha /* 802C6BF0 002C2850 7F E5 FB 78 */ mr r5, r31 /* 802C6BF4 002C2854 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C6BF8 002C2858 38 84 12 40 */ addi r4, r4, lbl_80441240@l /* 802C6BFC 002C285C 4B FF 63 2D */ bl LogMsg_1 lbl_802C6C00: /* 802C6C00 002C2860 1C 1F 02 71 */ mulli r0, r31, 0x271 /* 802C6C04 002C2864 3C 60 10 62 */ lis r3, 0x10624DD3@ha /* 802C6C08 002C2868 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6C0C 002C286C 38 63 4D D3 */ addi r3, r3, 0x10624DD3@l /* 802C6C10 002C2870 7C 03 00 96 */ mulhw r0, r3, r0 /* 802C6C14 002C2874 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6C18 002C2878 38 60 00 02 */ li r3, 2 /* 802C6C1C 002C287C 7C 00 36 70 */ srawi r0, r0, 6 /* 802C6C20 002C2880 54 05 0F FE */ srwi r5, r0, 0x1f /* 802C6C24 002C2884 7C 00 2A 14 */ add r0, r0, r5 /* 802C6C28 002C2888 B0 04 06 4C */ sth r0, 0x64c(r4) /* 802C6C2C 002C288C 4B FF 30 21 */ bl GKI_getpoolbuf /* 802C6C30 002C2890 2C 03 00 00 */ cmpwi r3, 0 /* 802C6C34 002C2894 41 82 00 14 */ beq lbl_802C6C48 /* 802C6C38 002C2898 7F E4 FB 78 */ mr r4, r31 /* 802C6C3C 002C289C 48 00 AC CD */ bl btsnd_hcic_write_page_tout /* 802C6C40 002C28A0 38 60 00 00 */ li r3, 0 /* 802C6C44 002C28A4 48 00 00 08 */ b lbl_802C6C4C lbl_802C6C48: /* 802C6C48 002C28A8 38 60 00 03 */ li r3, 3 lbl_802C6C4C: /* 802C6C4C 002C28AC 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C6C50 002C28B0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802C6C54 002C28B4 7C 08 03 A6 */ mtlr r0 /* 802C6C58 002C28B8 38 21 00 10 */ addi r1, r1, 0x10 /* 802C6C5C 002C28BC 4E 80 00 20 */ blr .global BTM_ReadStoredLinkKey BTM_ReadStoredLinkKey: /* 802C6C60 002C28C0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C6C64 002C28C4 7C 08 02 A6 */ mflr r0 /* 802C6C68 002C28C8 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C6C6C 002C28CC 90 01 00 24 */ stw r0, 0x24(r1) /* 802C6C70 002C28D0 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C6C74 002C28D4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802C6C78 002C28D8 3B E0 00 00 */ li r31, 0 /* 802C6C7C 002C28DC 93 C1 00 18 */ stw r30, 0x18(r1) /* 802C6C80 002C28E0 7C 9E 23 78 */ mr r30, r4 /* 802C6C84 002C28E4 93 A1 00 14 */ stw r29, 0x14(r1) /* 802C6C88 002C28E8 7C 7D 1B 78 */ mr r29, r3 /* 802C6C8C 002C28EC 80 05 05 70 */ lwz r0, 0x570(r5) /* 802C6C90 002C28F0 2C 00 00 00 */ cmpwi r0, 0 /* 802C6C94 002C28F4 41 82 00 0C */ beq lbl_802C6CA0 /* 802C6C98 002C28F8 38 60 00 02 */ li r3, 2 /* 802C6C9C 002C28FC 48 00 00 80 */ b lbl_802C6D1C lbl_802C6CA0: /* 802C6CA0 002C2900 2C 03 00 00 */ cmpwi r3, 0 /* 802C6CA4 002C2904 40 82 00 0C */ bne lbl_802C6CB0 /* 802C6CA8 002C2908 3B E0 00 01 */ li r31, 1 /* 802C6CAC 002C290C 3B A1 00 08 */ addi r29, r1, 8 lbl_802C6CB0: /* 802C6CB0 002C2910 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6CB4 002C2914 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6CB8 002C2918 88 03 27 C0 */ lbz r0, 0x27c0(r3) /* 802C6CBC 002C291C 28 00 00 04 */ cmplwi r0, 4 /* 802C6CC0 002C2920 41 80 00 28 */ blt lbl_802C6CE8 /* 802C6CC4 002C2924 2C 1F 00 00 */ cmpwi r31, 0 /* 802C6CC8 002C2928 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C6CCC 002C292C 3C 80 80 44 */ lis r4, lbl_804412B0@ha /* 802C6CD0 002C2930 38 AD 8A 44 */ addi r5, r13, lbl_8063DD04-_SDA_BASE_ /* 802C6CD4 002C2934 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C6CD8 002C2938 38 84 12 B0 */ addi r4, r4, lbl_804412B0@l /* 802C6CDC 002C293C 41 82 00 08 */ beq lbl_802C6CE4 /* 802C6CE0 002C2940 38 AD 8A 3C */ addi r5, r13, lbl_8063DCFC-_SDA_BASE_ lbl_802C6CE4: /* 802C6CE4 002C2944 4B FF 62 45 */ bl LogMsg_1 lbl_802C6CE8: /* 802C6CE8 002C2948 38 60 00 02 */ li r3, 2 /* 802C6CEC 002C294C 4B FF 2F 61 */ bl GKI_getpoolbuf /* 802C6CF0 002C2950 2C 03 00 00 */ cmpwi r3, 0 /* 802C6CF4 002C2954 41 82 00 24 */ beq lbl_802C6D18 /* 802C6CF8 002C2958 3C C0 80 57 */ lis r6, lbl_80568B78@ha /* 802C6CFC 002C295C 7F A4 EB 78 */ mr r4, r29 /* 802C6D00 002C2960 38 C6 8B 78 */ addi r6, r6, lbl_80568B78@l /* 802C6D04 002C2964 7F E5 FB 78 */ mr r5, r31 /* 802C6D08 002C2968 93 C6 05 70 */ stw r30, 0x570(r6) /* 802C6D0C 002C296C 48 00 A7 ED */ bl btsnd_hcic_read_stored_key /* 802C6D10 002C2970 38 60 00 00 */ li r3, 0 /* 802C6D14 002C2974 48 00 00 08 */ b lbl_802C6D1C lbl_802C6D18: /* 802C6D18 002C2978 38 60 00 03 */ li r3, 3 lbl_802C6D1C: /* 802C6D1C 002C297C 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C6D20 002C2980 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C6D24 002C2984 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802C6D28 002C2988 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802C6D2C 002C298C 7C 08 03 A6 */ mtlr r0 /* 802C6D30 002C2990 38 21 00 20 */ addi r1, r1, 0x20 /* 802C6D34 002C2994 4E 80 00 20 */ blr .global BTM_WriteStoredLinkKey BTM_WriteStoredLinkKey: /* 802C6D38 002C2998 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C6D3C 002C299C 7C 08 02 A6 */ mflr r0 /* 802C6D40 002C29A0 3C E0 80 57 */ lis r7, lbl_80568B78@ha /* 802C6D44 002C29A4 90 01 00 24 */ stw r0, 0x24(r1) /* 802C6D48 002C29A8 38 E7 8B 78 */ addi r7, r7, lbl_80568B78@l /* 802C6D4C 002C29AC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802C6D50 002C29B0 7C DF 33 78 */ mr r31, r6 /* 802C6D54 002C29B4 93 C1 00 18 */ stw r30, 0x18(r1) /* 802C6D58 002C29B8 7C BE 2B 78 */ mr r30, r5 /* 802C6D5C 002C29BC 93 A1 00 14 */ stw r29, 0x14(r1) /* 802C6D60 002C29C0 7C 9D 23 78 */ mr r29, r4 /* 802C6D64 002C29C4 93 81 00 10 */ stw r28, 0x10(r1) /* 802C6D68 002C29C8 7C 7C 1B 78 */ mr r28, r3 /* 802C6D6C 002C29CC 80 07 05 70 */ lwz r0, 0x570(r7) /* 802C6D70 002C29D0 2C 00 00 00 */ cmpwi r0, 0 /* 802C6D74 002C29D4 41 82 00 0C */ beq lbl_802C6D80 /* 802C6D78 002C29D8 38 60 00 02 */ li r3, 2 /* 802C6D7C 002C29DC 48 00 00 6C */ b lbl_802C6DE8 lbl_802C6D80: /* 802C6D80 002C29E0 88 07 27 C0 */ lbz r0, 0x27c0(r7) /* 802C6D84 002C29E4 28 00 00 04 */ cmplwi r0, 4 /* 802C6D88 002C29E8 41 80 00 1C */ blt lbl_802C6DA4 /* 802C6D8C 002C29EC 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C6D90 002C29F0 3C 80 80 44 */ lis r4, lbl_804412DC@ha /* 802C6D94 002C29F4 7F 85 E3 78 */ mr r5, r28 /* 802C6D98 002C29F8 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C6D9C 002C29FC 38 84 12 DC */ addi r4, r4, lbl_804412DC@l /* 802C6DA0 002C2A00 4B FF 61 89 */ bl LogMsg_1 lbl_802C6DA4: /* 802C6DA4 002C2A04 28 1C 00 0B */ cmplwi r28, 0xb /* 802C6DA8 002C2A08 40 81 00 08 */ ble lbl_802C6DB0 /* 802C6DAC 002C2A0C 3B 80 00 0B */ li r28, 0xb lbl_802C6DB0: /* 802C6DB0 002C2A10 38 60 00 02 */ li r3, 2 /* 802C6DB4 002C2A14 4B FF 2E 99 */ bl GKI_getpoolbuf /* 802C6DB8 002C2A18 2C 03 00 00 */ cmpwi r3, 0 /* 802C6DBC 002C2A1C 41 82 00 28 */ beq lbl_802C6DE4 /* 802C6DC0 002C2A20 3C C0 80 57 */ lis r6, lbl_80568B78@ha /* 802C6DC4 002C2A24 7F 84 E3 78 */ mr r4, r28 /* 802C6DC8 002C2A28 38 C6 8B 78 */ addi r6, r6, lbl_80568B78@l /* 802C6DCC 002C2A2C 7F A5 EB 78 */ mr r5, r29 /* 802C6DD0 002C2A30 93 E6 05 70 */ stw r31, 0x570(r6) /* 802C6DD4 002C2A34 7F C6 F3 78 */ mr r6, r30 /* 802C6DD8 002C2A38 48 00 A7 81 */ bl btsnd_hcic_write_stored_key /* 802C6DDC 002C2A3C 38 60 00 00 */ li r3, 0 /* 802C6DE0 002C2A40 48 00 00 08 */ b lbl_802C6DE8 lbl_802C6DE4: /* 802C6DE4 002C2A44 38 60 00 03 */ li r3, 3 lbl_802C6DE8: /* 802C6DE8 002C2A48 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C6DEC 002C2A4C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C6DF0 002C2A50 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802C6DF4 002C2A54 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802C6DF8 002C2A58 83 81 00 10 */ lwz r28, 0x10(r1) /* 802C6DFC 002C2A5C 7C 08 03 A6 */ mtlr r0 /* 802C6E00 002C2A60 38 21 00 20 */ addi r1, r1, 0x20 /* 802C6E04 002C2A64 4E 80 00 20 */ blr .global BTM_DeleteStoredLinkKey BTM_DeleteStoredLinkKey: /* 802C6E08 002C2A68 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C6E0C 002C2A6C 7C 08 02 A6 */ mflr r0 /* 802C6E10 002C2A70 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C6E14 002C2A74 90 01 00 24 */ stw r0, 0x24(r1) /* 802C6E18 002C2A78 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C6E1C 002C2A7C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802C6E20 002C2A80 3B E0 00 00 */ li r31, 0 /* 802C6E24 002C2A84 93 C1 00 18 */ stw r30, 0x18(r1) /* 802C6E28 002C2A88 7C 9E 23 78 */ mr r30, r4 /* 802C6E2C 002C2A8C 93 A1 00 14 */ stw r29, 0x14(r1) /* 802C6E30 002C2A90 7C 7D 1B 78 */ mr r29, r3 /* 802C6E34 002C2A94 80 05 05 70 */ lwz r0, 0x570(r5) /* 802C6E38 002C2A98 2C 00 00 00 */ cmpwi r0, 0 /* 802C6E3C 002C2A9C 41 82 00 0C */ beq lbl_802C6E48 /* 802C6E40 002C2AA0 38 60 00 02 */ li r3, 2 /* 802C6E44 002C2AA4 48 00 00 78 */ b lbl_802C6EBC lbl_802C6E48: /* 802C6E48 002C2AA8 2C 03 00 00 */ cmpwi r3, 0 /* 802C6E4C 002C2AAC 40 82 00 0C */ bne lbl_802C6E58 /* 802C6E50 002C2AB0 3B E0 00 01 */ li r31, 1 /* 802C6E54 002C2AB4 3B A1 00 08 */ addi r29, r1, 8 lbl_802C6E58: /* 802C6E58 002C2AB8 3C 60 80 57 */ lis r3, lbl_80568B78@ha /* 802C6E5C 002C2ABC 38 63 8B 78 */ addi r3, r3, lbl_80568B78@l /* 802C6E60 002C2AC0 88 03 27 C0 */ lbz r0, 0x27c0(r3) /* 802C6E64 002C2AC4 28 00 00 04 */ cmplwi r0, 4 /* 802C6E68 002C2AC8 41 80 00 28 */ blt lbl_802C6E90 /* 802C6E6C 002C2ACC 2C 1F 00 00 */ cmpwi r31, 0 /* 802C6E70 002C2AD0 3C 60 00 0D */ lis r3, 0x000D0003@ha /* 802C6E74 002C2AD4 3C 80 80 44 */ lis r4, lbl_80441308@ha /* 802C6E78 002C2AD8 38 AD 8A 44 */ addi r5, r13, lbl_8063DD04-_SDA_BASE_ /* 802C6E7C 002C2ADC 38 63 00 03 */ addi r3, r3, 0x000D0003@l /* 802C6E80 002C2AE0 38 84 13 08 */ addi r4, r4, lbl_80441308@l /* 802C6E84 002C2AE4 41 82 00 08 */ beq lbl_802C6E8C /* 802C6E88 002C2AE8 38 AD 8A 3C */ addi r5, r13, lbl_8063DCFC-_SDA_BASE_ lbl_802C6E8C: /* 802C6E8C 002C2AEC 4B FF 60 9D */ bl LogMsg_1 lbl_802C6E90: /* 802C6E90 002C2AF0 3C A0 80 57 */ lis r5, lbl_80568B78@ha /* 802C6E94 002C2AF4 7F A3 EB 78 */ mr r3, r29 /* 802C6E98 002C2AF8 38 A5 8B 78 */ addi r5, r5, lbl_80568B78@l /* 802C6E9C 002C2AFC 7F E4 FB 78 */ mr r4, r31 /* 802C6EA0 002C2B00 93 C5 05 70 */ stw r30, 0x570(r5) /* 802C6EA4 002C2B04 48 00 A8 75 */ bl btsnd_hcic_delete_stored_key /* 802C6EA8 002C2B08 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802C6EAC 002C2B0C 40 82 00 0C */ bne lbl_802C6EB8 /* 802C6EB0 002C2B10 38 60 00 03 */ li r3, 3 /* 802C6EB4 002C2B14 48 00 00 08 */ b lbl_802C6EBC lbl_802C6EB8: /* 802C6EB8 002C2B18 38 60 00 00 */ li r3, 0 lbl_802C6EBC: /* 802C6EBC 002C2B1C 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C6EC0 002C2B20 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802C6EC4 002C2B24 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802C6EC8 002C2B28 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802C6ECC 002C2B2C 7C 08 03 A6 */ mtlr r0 /* 802C6ED0 002C2B30 38 21 00 20 */ addi r1, r1, 0x20 /* 802C6ED4 002C2B34 4E 80 00 20 */ blr .global btm_read_stored_link_key_complete btm_read_stored_link_key_complete: /* 802C6ED8 002C2B38 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C6EDC 002C2B3C 7C 08 02 A6 */ mflr r0 /* 802C6EE0 002C2B40 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6EE4 002C2B44 90 01 00 14 */ stw r0, 0x14(r1) /* 802C6EE8 002C2B48 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6EEC 002C2B4C 38 00 00 00 */ li r0, 0 /* 802C6EF0 002C2B50 81 84 05 70 */ lwz r12, 0x570(r4) /* 802C6EF4 002C2B54 2C 0C 00 00 */ cmpwi r12, 0 /* 802C6EF8 002C2B58 90 04 05 70 */ stw r0, 0x570(r4) /* 802C6EFC 002C2B5C 41 82 00 48 */ beq lbl_802C6F44 /* 802C6F00 002C2B60 38 00 00 02 */ li r0, 2 /* 802C6F04 002C2B64 98 01 00 08 */ stb r0, 8(r1) /* 802C6F08 002C2B68 88 03 00 00 */ lbz r0, 0(r3) /* 802C6F0C 002C2B6C 98 01 00 09 */ stb r0, 9(r1) /* 802C6F10 002C2B70 88 03 00 02 */ lbz r0, 2(r3) /* 802C6F14 002C2B74 88 83 00 01 */ lbz r4, 1(r3) /* 802C6F18 002C2B78 54 00 40 2E */ slwi r0, r0, 8 /* 802C6F1C 002C2B7C 7C 04 02 14 */ add r0, r4, r0 /* 802C6F20 002C2B80 B0 01 00 0A */ sth r0, 0xa(r1) /* 802C6F24 002C2B84 88 03 00 04 */ lbz r0, 4(r3) /* 802C6F28 002C2B88 88 83 00 03 */ lbz r4, 3(r3) /* 802C6F2C 002C2B8C 38 61 00 08 */ addi r3, r1, 8 /* 802C6F30 002C2B90 54 00 40 2E */ slwi r0, r0, 8 /* 802C6F34 002C2B94 7C 04 02 14 */ add r0, r4, r0 /* 802C6F38 002C2B98 B0 01 00 0C */ sth r0, 0xc(r1) /* 802C6F3C 002C2B9C 7D 89 03 A6 */ mtctr r12 /* 802C6F40 002C2BA0 4E 80 04 21 */ bctrl lbl_802C6F44: /* 802C6F44 002C2BA4 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C6F48 002C2BA8 7C 08 03 A6 */ mtlr r0 /* 802C6F4C 002C2BAC 38 21 00 10 */ addi r1, r1, 0x10 /* 802C6F50 002C2BB0 4E 80 00 20 */ blr .global btm_write_stored_link_key_complete btm_write_stored_link_key_complete: /* 802C6F54 002C2BB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C6F58 002C2BB8 7C 08 02 A6 */ mflr r0 /* 802C6F5C 002C2BBC 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6F60 002C2BC0 90 01 00 14 */ stw r0, 0x14(r1) /* 802C6F64 002C2BC4 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6F68 002C2BC8 38 00 00 00 */ li r0, 0 /* 802C6F6C 002C2BCC 81 84 05 70 */ lwz r12, 0x570(r4) /* 802C6F70 002C2BD0 2C 0C 00 00 */ cmpwi r12, 0 /* 802C6F74 002C2BD4 90 04 05 70 */ stw r0, 0x570(r4) /* 802C6F78 002C2BD8 41 82 00 28 */ beq lbl_802C6FA0 /* 802C6F7C 002C2BDC 38 00 00 03 */ li r0, 3 /* 802C6F80 002C2BE0 98 01 00 08 */ stb r0, 8(r1) /* 802C6F84 002C2BE4 88 03 00 00 */ lbz r0, 0(r3) /* 802C6F88 002C2BE8 98 01 00 09 */ stb r0, 9(r1) /* 802C6F8C 002C2BEC 88 03 00 01 */ lbz r0, 1(r3) /* 802C6F90 002C2BF0 38 61 00 08 */ addi r3, r1, 8 /* 802C6F94 002C2BF4 98 01 00 0A */ stb r0, 0xa(r1) /* 802C6F98 002C2BF8 7D 89 03 A6 */ mtctr r12 /* 802C6F9C 002C2BFC 4E 80 04 21 */ bctrl lbl_802C6FA0: /* 802C6FA0 002C2C00 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C6FA4 002C2C04 7C 08 03 A6 */ mtlr r0 /* 802C6FA8 002C2C08 38 21 00 10 */ addi r1, r1, 0x10 /* 802C6FAC 002C2C0C 4E 80 00 20 */ blr .global btm_delete_stored_link_key_complete btm_delete_stored_link_key_complete: /* 802C6FB0 002C2C10 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802C6FB4 002C2C14 7C 08 02 A6 */ mflr r0 /* 802C6FB8 002C2C18 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C6FBC 002C2C1C 90 01 00 14 */ stw r0, 0x14(r1) /* 802C6FC0 002C2C20 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C6FC4 002C2C24 38 00 00 00 */ li r0, 0 /* 802C6FC8 002C2C28 81 84 05 70 */ lwz r12, 0x570(r4) /* 802C6FCC 002C2C2C 2C 0C 00 00 */ cmpwi r12, 0 /* 802C6FD0 002C2C30 90 04 05 70 */ stw r0, 0x570(r4) /* 802C6FD4 002C2C34 41 82 00 34 */ beq lbl_802C7008 /* 802C6FD8 002C2C38 38 00 00 04 */ li r0, 4 /* 802C6FDC 002C2C3C 98 01 00 08 */ stb r0, 8(r1) /* 802C6FE0 002C2C40 88 03 00 00 */ lbz r0, 0(r3) /* 802C6FE4 002C2C44 98 01 00 09 */ stb r0, 9(r1) /* 802C6FE8 002C2C48 88 03 00 02 */ lbz r0, 2(r3) /* 802C6FEC 002C2C4C 88 83 00 01 */ lbz r4, 1(r3) /* 802C6FF0 002C2C50 38 61 00 08 */ addi r3, r1, 8 /* 802C6FF4 002C2C54 54 00 40 2E */ slwi r0, r0, 8 /* 802C6FF8 002C2C58 7C 04 02 14 */ add r0, r4, r0 /* 802C6FFC 002C2C5C B0 01 00 0A */ sth r0, 0xa(r1) /* 802C7000 002C2C60 7D 89 03 A6 */ mtctr r12 /* 802C7004 002C2C64 4E 80 04 21 */ bctrl lbl_802C7008: /* 802C7008 002C2C68 80 01 00 14 */ lwz r0, 0x14(r1) /* 802C700C 002C2C6C 7C 08 03 A6 */ mtlr r0 /* 802C7010 002C2C70 38 21 00 10 */ addi r1, r1, 0x10 /* 802C7014 002C2C74 4E 80 00 20 */ blr .global btm_return_link_keys_evt btm_return_link_keys_evt: /* 802C7018 002C2C78 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802C701C 002C2C7C 7C 08 02 A6 */ mflr r0 /* 802C7020 002C2C80 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C7024 002C2C84 90 01 00 24 */ stw r0, 0x24(r1) /* 802C7028 002C2C88 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C702C 002C2C8C 81 84 05 70 */ lwz r12, 0x570(r4) /* 802C7030 002C2C90 2C 0C 00 00 */ cmpwi r12, 0 /* 802C7034 002C2C94 41 82 01 60 */ beq lbl_802C7194 /* 802C7038 002C2C98 38 A3 00 02 */ addi r5, r3, 2 /* 802C703C 002C2C9C 38 80 00 00 */ li r4, 0 /* 802C7040 002C2CA0 48 00 01 3C */ b lbl_802C717C lbl_802C7044: /* 802C7044 002C2CA4 89 65 00 00 */ lbz r11, 0(r5) /* 802C7048 002C2CA8 38 84 00 01 */ addi r4, r4, 1 /* 802C704C 002C2CAC 89 45 00 01 */ lbz r10, 1(r5) /* 802C7050 002C2CB0 89 25 00 02 */ lbz r9, 2(r5) /* 802C7054 002C2CB4 89 05 00 03 */ lbz r8, 3(r5) /* 802C7058 002C2CB8 88 E5 00 04 */ lbz r7, 4(r5) /* 802C705C 002C2CBC 88 C5 00 05 */ lbz r6, 5(r5) /* 802C7060 002C2CC0 88 05 00 06 */ lbz r0, 6(r5) /* 802C7064 002C2CC4 98 01 00 17 */ stb r0, 0x17(r1) /* 802C7068 002C2CC8 88 05 00 07 */ lbz r0, 7(r5) /* 802C706C 002C2CCC 98 01 00 16 */ stb r0, 0x16(r1) /* 802C7070 002C2CD0 88 05 00 08 */ lbz r0, 8(r5) /* 802C7074 002C2CD4 98 01 00 15 */ stb r0, 0x15(r1) /* 802C7078 002C2CD8 88 05 00 09 */ lbz r0, 9(r5) /* 802C707C 002C2CDC 98 01 00 14 */ stb r0, 0x14(r1) /* 802C7080 002C2CE0 88 05 00 0A */ lbz r0, 0xa(r5) /* 802C7084 002C2CE4 98 01 00 13 */ stb r0, 0x13(r1) /* 802C7088 002C2CE8 88 05 00 0B */ lbz r0, 0xb(r5) /* 802C708C 002C2CEC 98 01 00 12 */ stb r0, 0x12(r1) /* 802C7090 002C2CF0 88 05 00 0C */ lbz r0, 0xc(r5) /* 802C7094 002C2CF4 98 01 00 11 */ stb r0, 0x11(r1) /* 802C7098 002C2CF8 88 05 00 0D */ lbz r0, 0xd(r5) /* 802C709C 002C2CFC 98 01 00 10 */ stb r0, 0x10(r1) /* 802C70A0 002C2D00 88 05 00 0E */ lbz r0, 0xe(r5) /* 802C70A4 002C2D04 98 01 00 0F */ stb r0, 0xf(r1) /* 802C70A8 002C2D08 88 05 00 0F */ lbz r0, 0xf(r5) /* 802C70AC 002C2D0C 98 01 00 0E */ stb r0, 0xe(r1) /* 802C70B0 002C2D10 88 05 00 10 */ lbz r0, 0x10(r5) /* 802C70B4 002C2D14 98 01 00 0D */ stb r0, 0xd(r1) /* 802C70B8 002C2D18 88 05 00 11 */ lbz r0, 0x11(r5) /* 802C70BC 002C2D1C 98 01 00 0C */ stb r0, 0xc(r1) /* 802C70C0 002C2D20 88 05 00 12 */ lbz r0, 0x12(r5) /* 802C70C4 002C2D24 98 01 00 0B */ stb r0, 0xb(r1) /* 802C70C8 002C2D28 88 05 00 13 */ lbz r0, 0x13(r5) /* 802C70CC 002C2D2C 98 01 00 0A */ stb r0, 0xa(r1) /* 802C70D0 002C2D30 88 05 00 14 */ lbz r0, 0x14(r5) /* 802C70D4 002C2D34 98 01 00 09 */ stb r0, 9(r1) /* 802C70D8 002C2D38 88 05 00 15 */ lbz r0, 0x15(r5) /* 802C70DC 002C2D3C 98 01 00 08 */ stb r0, 8(r1) /* 802C70E0 002C2D40 98 C5 00 00 */ stb r6, 0(r5) /* 802C70E4 002C2D44 98 E5 00 01 */ stb r7, 1(r5) /* 802C70E8 002C2D48 99 05 00 02 */ stb r8, 2(r5) /* 802C70EC 002C2D4C 99 25 00 03 */ stb r9, 3(r5) /* 802C70F0 002C2D50 99 45 00 04 */ stb r10, 4(r5) /* 802C70F4 002C2D54 99 65 00 05 */ stb r11, 5(r5) /* 802C70F8 002C2D58 88 01 00 08 */ lbz r0, 8(r1) /* 802C70FC 002C2D5C 98 05 00 06 */ stb r0, 6(r5) /* 802C7100 002C2D60 88 01 00 09 */ lbz r0, 9(r1) /* 802C7104 002C2D64 98 05 00 07 */ stb r0, 7(r5) /* 802C7108 002C2D68 88 01 00 0A */ lbz r0, 0xa(r1) /* 802C710C 002C2D6C 98 05 00 08 */ stb r0, 8(r5) /* 802C7110 002C2D70 88 01 00 0B */ lbz r0, 0xb(r1) /* 802C7114 002C2D74 98 05 00 09 */ stb r0, 9(r5) /* 802C7118 002C2D78 88 01 00 0C */ lbz r0, 0xc(r1) /* 802C711C 002C2D7C 98 05 00 0A */ stb r0, 0xa(r5) /* 802C7120 002C2D80 88 01 00 0D */ lbz r0, 0xd(r1) /* 802C7124 002C2D84 98 05 00 0B */ stb r0, 0xb(r5) /* 802C7128 002C2D88 88 01 00 0E */ lbz r0, 0xe(r1) /* 802C712C 002C2D8C 98 05 00 0C */ stb r0, 0xc(r5) /* 802C7130 002C2D90 88 01 00 0F */ lbz r0, 0xf(r1) /* 802C7134 002C2D94 98 05 00 0D */ stb r0, 0xd(r5) /* 802C7138 002C2D98 88 01 00 10 */ lbz r0, 0x10(r1) /* 802C713C 002C2D9C 98 05 00 0E */ stb r0, 0xe(r5) /* 802C7140 002C2DA0 88 01 00 11 */ lbz r0, 0x11(r1) /* 802C7144 002C2DA4 98 05 00 0F */ stb r0, 0xf(r5) /* 802C7148 002C2DA8 88 01 00 12 */ lbz r0, 0x12(r1) /* 802C714C 002C2DAC 98 05 00 10 */ stb r0, 0x10(r5) /* 802C7150 002C2DB0 88 01 00 13 */ lbz r0, 0x13(r1) /* 802C7154 002C2DB4 98 05 00 11 */ stb r0, 0x11(r5) /* 802C7158 002C2DB8 88 01 00 14 */ lbz r0, 0x14(r1) /* 802C715C 002C2DBC 98 05 00 12 */ stb r0, 0x12(r5) /* 802C7160 002C2DC0 88 01 00 15 */ lbz r0, 0x15(r1) /* 802C7164 002C2DC4 98 05 00 13 */ stb r0, 0x13(r5) /* 802C7168 002C2DC8 88 01 00 16 */ lbz r0, 0x16(r1) /* 802C716C 002C2DCC 98 05 00 14 */ stb r0, 0x14(r5) /* 802C7170 002C2DD0 88 01 00 17 */ lbz r0, 0x17(r1) /* 802C7174 002C2DD4 98 05 00 15 */ stb r0, 0x15(r5) /* 802C7178 002C2DD8 38 A5 00 16 */ addi r5, r5, 0x16 lbl_802C717C: /* 802C717C 002C2DDC 88 03 00 01 */ lbz r0, 1(r3) /* 802C7180 002C2DE0 54 86 06 3E */ clrlwi r6, r4, 0x18 /* 802C7184 002C2DE4 7C 06 00 40 */ cmplw r6, r0 /* 802C7188 002C2DE8 41 80 FE BC */ blt lbl_802C7044 /* 802C718C 002C2DEC 7D 89 03 A6 */ mtctr r12 /* 802C7190 002C2DF0 4E 80 04 21 */ bctrl lbl_802C7194: /* 802C7194 002C2DF4 80 01 00 24 */ lwz r0, 0x24(r1) /* 802C7198 002C2DF8 7C 08 03 A6 */ mtlr r0 /* 802C719C 002C2DFC 38 21 00 20 */ addi r1, r1, 0x20 /* 802C71A0 002C2E00 4E 80 00 20 */ blr .global btm_report_device_status btm_report_device_status: /* 802C71A4 002C2E04 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C71A8 002C2E08 38 84 8B 78 */ addi r4, r4, lbl_80568B78@l /* 802C71AC 002C2E0C 81 84 05 68 */ lwz r12, 0x568(r4) /* 802C71B0 002C2E10 2C 0C 00 00 */ cmpwi r12, 0 /* 802C71B4 002C2E14 4D 82 00 20 */ beqlr /* 802C71B8 002C2E18 7D 89 03 A6 */ mtctr r12 /* 802C71BC 002C2E1C 4E 80 04 20 */ bctr /* 802C71C0 002C2E20 4E 80 00 20 */ blr