.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global sdp_init sdp_init: /* 802E4B94 002E07F4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E4B98 002E07F8 7C 08 02 A6 */ mflr r0 /* 802E4B9C 002E07FC 38 80 00 00 */ li r4, 0 /* 802E4BA0 002E0800 38 A0 46 34 */ li r5, 0x4634 /* 802E4BA4 002E0804 90 01 00 24 */ stw r0, 0x24(r1) /* 802E4BA8 002E0808 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E4BAC 002E080C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E4BB0 002E0810 3F C0 80 44 */ lis r30, lbl_804451A8@ha /* 802E4BB4 002E0814 3B DE 51 A8 */ addi r30, r30, lbl_804451A8@l /* 802E4BB8 002E0818 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E4BBC 002E081C 3F A0 80 57 */ lis r29, lbl_8056C840@ha /* 802E4BC0 002E0820 38 7D C8 40 */ addi r3, r29, lbl_8056C840@l /* 802E4BC4 002E0824 4B D1 F5 41 */ bl memset /* 802E4BC8 002E0828 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802E4BCC 002E082C 3B FD C8 40 */ addi r31, r29, -14272 /* 802E4BD0 002E0830 38 E0 00 01 */ li r7, 1 /* 802E4BD4 002E0834 38 A0 01 00 */ li r5, 0x100 /* 802E4BD8 002E0838 39 63 FF FF */ addi r11, r3, 0x0000FFFF@l /* 802E4BDC 002E083C 39 40 00 F0 */ li r10, 0xf0 /* 802E4BE0 002E0840 38 00 00 15 */ li r0, 0x15 /* 802E4BE4 002E0844 B0 BF 00 04 */ sth r5, 4(r31) /* 802E4BE8 002E0848 38 9E 00 00 */ addi r4, r30, 0 /* 802E4BEC 002E084C 3B A0 00 00 */ li r29, 0 /* 802E4BF0 002E0850 98 FF 00 02 */ stb r7, 2(r31) /* 802E4BF4 002E0854 38 60 00 00 */ li r3, 0 /* 802E4BF8 002E0858 38 A0 00 00 */ li r5, 0 /* 802E4BFC 002E085C 38 C0 00 00 */ li r6, 0 /* 802E4C00 002E0860 98 FF 00 20 */ stb r7, 0x20(r31) /* 802E4C04 002E0864 38 E0 00 01 */ li r7, 1 /* 802E4C08 002E0868 39 00 00 00 */ li r8, 0 /* 802E4C0C 002E086C 39 20 00 00 */ li r9, 0 /* 802E4C10 002E0870 B1 7F 00 22 */ sth r11, 0x22(r31) /* 802E4C14 002E0874 B1 5F 46 2C */ sth r10, 0x462c(r31) /* 802E4C18 002E0878 B0 1F 46 2E */ sth r0, 0x462e(r31) /* 802E4C1C 002E087C 4B FE 5E 69 */ bl BTM_SetSecurityLevel /* 802E4C20 002E0880 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E4C24 002E0884 40 82 00 20 */ bne lbl_802E4C44 /* 802E4C28 002E0888 88 1F 46 30 */ lbz r0, 0x4630(r31) /* 802E4C2C 002E088C 28 00 00 01 */ cmplwi r0, 1 /* 802E4C30 002E0890 41 80 00 E8 */ blt lbl_802E4D18 /* 802E4C34 002E0894 38 9E 00 14 */ addi r4, r30, 0x14 /* 802E4C38 002E0898 3C 60 00 0A */ lis r3, 0xa /* 802E4C3C 002E089C 4B FD 82 D5 */ bl LogMsg_0 /* 802E4C40 002E08A0 48 00 00 D8 */ b lbl_802E4D18 lbl_802E4C44: /* 802E4C44 002E08A4 38 9E 00 00 */ addi r4, r30, 0 /* 802E4C48 002E08A8 38 60 00 01 */ li r3, 1 /* 802E4C4C 002E08AC 38 A0 00 00 */ li r5, 0 /* 802E4C50 002E08B0 38 C0 00 00 */ li r6, 0 /* 802E4C54 002E08B4 38 E0 00 01 */ li r7, 1 /* 802E4C58 002E08B8 39 00 00 00 */ li r8, 0 /* 802E4C5C 002E08BC 39 20 00 00 */ li r9, 0 /* 802E4C60 002E08C0 4B FE 5E 25 */ bl BTM_SetSecurityLevel /* 802E4C64 002E08C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E4C68 002E08C8 40 82 00 20 */ bne lbl_802E4C88 /* 802E4C6C 002E08CC 88 1F 46 30 */ lbz r0, 0x4630(r31) /* 802E4C70 002E08D0 28 00 00 01 */ cmplwi r0, 1 /* 802E4C74 002E08D4 41 80 00 A4 */ blt lbl_802E4D18 /* 802E4C78 002E08D8 38 9E 00 38 */ addi r4, r30, 0x38 /* 802E4C7C 002E08DC 3C 60 00 0A */ lis r3, 0xa /* 802E4C80 002E08E0 4B FD 82 91 */ bl LogMsg_0 /* 802E4C84 002E08E4 48 00 00 94 */ b lbl_802E4D18 lbl_802E4C88: /* 802E4C88 002E08E8 3D 60 80 2E */ lis r11, sdp_connect_ind@ha /* 802E4C8C 002E08EC 3D 40 80 2E */ lis r10, sdp_connect_cfm@ha /* 802E4C90 002E08F0 3D 20 80 2E */ lis r9, sdp_config_ind@ha /* 802E4C94 002E08F4 3D 00 80 2E */ lis r8, sdp_config_cfm@ha /* 802E4C98 002E08F8 3C E0 80 2E */ lis r7, sdp_disconnect_ind@ha /* 802E4C9C 002E08FC 3C C0 80 2E */ lis r6, sdp_disconnect_cfm@ha /* 802E4CA0 002E0900 3C A0 80 2E */ lis r5, sdp_data_ind@ha /* 802E4CA4 002E0904 39 6B 4D 34 */ addi r11, r11, sdp_connect_ind@l /* 802E4CA8 002E0908 39 4A 4D F8 */ addi r10, r10, sdp_connect_cfm@l /* 802E4CAC 002E090C 39 29 4F 88 */ addi r9, r9, sdp_config_ind@l /* 802E4CB0 002E0910 39 08 50 C4 */ addi r8, r8, sdp_config_cfm@l /* 802E4CB4 002E0914 38 E7 52 40 */ addi r7, r7, sdp_disconnect_ind@l /* 802E4CB8 002E0918 38 C6 55 BC */ addi r6, r6, sdp_disconnect_cfm@l /* 802E4CBC 002E091C 38 A5 53 38 */ addi r5, r5, sdp_data_ind@l /* 802E4CC0 002E0920 9B BF 46 30 */ stb r29, 0x4630(r31) /* 802E4CC4 002E0924 38 9F 46 04 */ addi r4, r31, 0x4604 /* 802E4CC8 002E0928 38 60 00 01 */ li r3, 1 /* 802E4CCC 002E092C 91 7F 46 04 */ stw r11, 0x4604(r31) /* 802E4CD0 002E0930 91 5F 46 08 */ stw r10, 0x4608(r31) /* 802E4CD4 002E0934 93 BF 46 0C */ stw r29, 0x460c(r31) /* 802E4CD8 002E0938 91 3F 46 10 */ stw r9, 0x4610(r31) /* 802E4CDC 002E093C 91 1F 46 14 */ stw r8, 0x4614(r31) /* 802E4CE0 002E0940 90 FF 46 18 */ stw r7, 0x4618(r31) /* 802E4CE4 002E0944 90 DF 46 1C */ stw r6, 0x461c(r31) /* 802E4CE8 002E0948 93 BF 46 20 */ stw r29, 0x4620(r31) /* 802E4CEC 002E094C 90 BF 46 24 */ stw r5, 0x4624(r31) /* 802E4CF0 002E0950 93 BF 46 28 */ stw r29, 0x4628(r31) /* 802E4CF4 002E0954 4B FF 0B 3D */ bl L2CA_Register /* 802E4CF8 002E0958 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E4CFC 002E095C 40 82 00 1C */ bne lbl_802E4D18 /* 802E4D00 002E0960 88 1F 46 30 */ lbz r0, 0x4630(r31) /* 802E4D04 002E0964 28 00 00 01 */ cmplwi r0, 1 /* 802E4D08 002E0968 41 80 00 10 */ blt lbl_802E4D18 /* 802E4D0C 002E096C 38 9E 00 60 */ addi r4, r30, 0x60 /* 802E4D10 002E0970 3C 60 00 0A */ lis r3, 0xa /* 802E4D14 002E0974 4B FD 81 FD */ bl LogMsg_0 lbl_802E4D18: /* 802E4D18 002E0978 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E4D1C 002E097C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E4D20 002E0980 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E4D24 002E0984 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E4D28 002E0988 7C 08 03 A6 */ mtlr r0 /* 802E4D2C 002E098C 38 21 00 20 */ addi r1, r1, 0x20 /* 802E4D30 002E0990 4E 80 00 20 */ blr sdp_connect_ind: /* 802E4D34 002E0994 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E4D38 002E0998 7C 08 02 A6 */ mflr r0 /* 802E4D3C 002E099C 90 01 00 24 */ stw r0, 0x24(r1) /* 802E4D40 002E09A0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E4D44 002E09A4 7C DF 33 78 */ mr r31, r6 /* 802E4D48 002E09A8 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E4D4C 002E09AC 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E4D50 002E09B0 7C 9D 23 78 */ mr r29, r4 /* 802E4D54 002E09B4 93 81 00 10 */ stw r28, 0x10(r1) /* 802E4D58 002E09B8 7C 7C 1B 78 */ mr r28, r3 /* 802E4D5C 002E09BC 48 00 17 45 */ bl sdpu_allocate_ccb /* 802E4D60 002E09C0 2C 03 00 00 */ cmpwi r3, 0 /* 802E4D64 002E09C4 7C 7E 1B 78 */ mr r30, r3 /* 802E4D68 002E09C8 41 82 00 70 */ beq lbl_802E4DD8 /* 802E4D6C 002E09CC 38 00 00 02 */ li r0, 2 /* 802E4D70 002E09D0 7F 84 E3 78 */ mr r4, r28 /* 802E4D74 002E09D4 98 03 00 00 */ stb r0, 0(r3) /* 802E4D78 002E09D8 38 A0 00 06 */ li r5, 6 /* 802E4D7C 002E09DC 38 63 00 02 */ addi r3, r3, 2 /* 802E4D80 002E09E0 4B D1 F2 81 */ bl memcpy /* 802E4D84 002E09E4 B3 BE 00 22 */ sth r29, 0x22(r30) /* 802E4D88 002E09E8 7F 83 E3 78 */ mr r3, r28 /* 802E4D8C 002E09EC 7F E4 FB 78 */ mr r4, r31 /* 802E4D90 002E09F0 7F A5 EB 78 */ mr r5, r29 /* 802E4D94 002E09F4 38 C0 00 00 */ li r6, 0 /* 802E4D98 002E09F8 38 E0 00 00 */ li r7, 0 /* 802E4D9C 002E09FC 4B FF 0E F5 */ bl L2CA_ConnectRsp /* 802E4DA0 002E0A00 3F E0 80 57 */ lis r31, lbl_8056C840@ha /* 802E4DA4 002E0A04 7F A3 EB 78 */ mr r3, r29 /* 802E4DA8 002E0A08 38 9F C8 40 */ addi r4, r31, lbl_8056C840@l /* 802E4DAC 002E0A0C 4B FF 10 75 */ bl L2CA_ConfigReq /* 802E4DB0 002E0A10 38 7F C8 40 */ addi r3, r31, -14272 /* 802E4DB4 002E0A14 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E4DB8 002E0A18 28 00 00 04 */ cmplwi r0, 4 /* 802E4DBC 002E0A1C 41 80 00 1C */ blt lbl_802E4DD8 /* 802E4DC0 002E0A20 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E4DC4 002E0A24 3C 80 80 44 */ lis r4, lbl_80445220@ha /* 802E4DC8 002E0A28 A0 BE 00 22 */ lhz r5, 0x22(r30) /* 802E4DCC 002E0A2C 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E4DD0 002E0A30 38 84 52 20 */ addi r4, r4, lbl_80445220@l /* 802E4DD4 002E0A34 4B FD 81 55 */ bl LogMsg_1 lbl_802E4DD8: /* 802E4DD8 002E0A38 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E4DDC 002E0A3C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E4DE0 002E0A40 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E4DE4 002E0A44 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E4DE8 002E0A48 83 81 00 10 */ lwz r28, 0x10(r1) /* 802E4DEC 002E0A4C 7C 08 03 A6 */ mtlr r0 /* 802E4DF0 002E0A50 38 21 00 20 */ addi r1, r1, 0x20 /* 802E4DF4 002E0A54 4E 80 00 20 */ blr sdp_connect_cfm: /* 802E4DF8 002E0A58 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E4DFC 002E0A5C 7C 08 02 A6 */ mflr r0 /* 802E4E00 002E0A60 90 01 00 24 */ stw r0, 0x24(r1) /* 802E4E04 002E0A64 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E4E08 002E0A68 7C 9F 23 78 */ mr r31, r4 /* 802E4E0C 002E0A6C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E4E10 002E0A70 3F C0 80 44 */ lis r30, lbl_804451A8@ha /* 802E4E14 002E0A74 3B DE 51 A8 */ addi r30, r30, lbl_804451A8@l /* 802E4E18 002E0A78 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E4E1C 002E0A7C 93 81 00 10 */ stw r28, 0x10(r1) /* 802E4E20 002E0A80 7C 7C 1B 78 */ mr r28, r3 /* 802E4E24 002E0A84 48 00 15 ED */ bl sdpu_find_ccb_by_cid /* 802E4E28 002E0A88 2C 03 00 00 */ cmpwi r3, 0 /* 802E4E2C 002E0A8C 7C 7D 1B 78 */ mr r29, r3 /* 802E4E30 002E0A90 40 82 00 30 */ bne lbl_802E4E60 /* 802E4E34 002E0A94 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E4E38 002E0A98 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E4E3C 002E0A9C 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E4E40 002E0AA0 28 00 00 02 */ cmplwi r0, 2 /* 802E4E44 002E0AA4 41 80 01 24 */ blt lbl_802E4F68 /* 802E4E48 002E0AA8 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E4E4C 002E0AAC 7F 85 E3 78 */ mr r5, r28 /* 802E4E50 002E0AB0 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E4E54 002E0AB4 38 9E 00 B0 */ addi r4, r30, 0xb0 /* 802E4E58 002E0AB8 4B FD 80 D1 */ bl LogMsg_1 /* 802E4E5C 002E0ABC 48 00 01 0C */ b lbl_802E4F68 lbl_802E4E60: /* 802E4E60 002E0AC0 2C 1F 00 00 */ cmpwi r31, 0 /* 802E4E64 002E0AC4 40 82 00 50 */ bne lbl_802E4EB4 /* 802E4E68 002E0AC8 88 03 00 00 */ lbz r0, 0(r3) /* 802E4E6C 002E0ACC 28 00 00 01 */ cmplwi r0, 1 /* 802E4E70 002E0AD0 40 82 00 44 */ bne lbl_802E4EB4 /* 802E4E74 002E0AD4 38 00 00 02 */ li r0, 2 /* 802E4E78 002E0AD8 3F E0 80 57 */ lis r31, lbl_8056C840@ha /* 802E4E7C 002E0ADC 98 03 00 00 */ stb r0, 0(r3) /* 802E4E80 002E0AE0 7F 83 E3 78 */ mr r3, r28 /* 802E4E84 002E0AE4 38 9F C8 40 */ addi r4, r31, lbl_8056C840@l /* 802E4E88 002E0AE8 4B FF 0F 99 */ bl L2CA_ConfigReq /* 802E4E8C 002E0AEC 38 7F C8 40 */ addi r3, r31, -14272 /* 802E4E90 002E0AF0 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E4E94 002E0AF4 28 00 00 04 */ cmplwi r0, 4 /* 802E4E98 002E0AF8 41 80 00 D0 */ blt lbl_802E4F68 /* 802E4E9C 002E0AFC 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E4EA0 002E0B00 A0 BD 00 22 */ lhz r5, 0x22(r29) /* 802E4EA4 002E0B04 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E4EA8 002E0B08 38 9E 00 DC */ addi r4, r30, 0xdc /* 802E4EAC 002E0B0C 4B FD 80 7D */ bl LogMsg_1 /* 802E4EB0 002E0B10 48 00 00 B8 */ b lbl_802E4F68 lbl_802E4EB4: /* 802E4EB4 002E0B14 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E4EB8 002E0B18 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E4EBC 002E0B1C 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E4EC0 002E0B20 28 00 00 02 */ cmplwi r0, 2 /* 802E4EC4 002E0B24 41 80 00 1C */ blt lbl_802E4EE0 /* 802E4EC8 002E0B28 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E4ECC 002E0B2C A0 DD 00 22 */ lhz r6, 0x22(r29) /* 802E4ED0 002E0B30 7F E5 FB 78 */ mr r5, r31 /* 802E4ED4 002E0B34 38 9E 01 08 */ addi r4, r30, 0x108 /* 802E4ED8 002E0B38 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E4EDC 002E0B3C 4B FD 80 65 */ bl LogMsg_2 lbl_802E4EE0: /* 802E4EE0 002E0B40 81 9D 04 14 */ lwz r12, 0x414(r29) /* 802E4EE4 002E0B44 2C 0C 00 00 */ cmpwi r12, 0 /* 802E4EE8 002E0B48 41 82 00 78 */ beq lbl_802E4F60 /* 802E4EEC 002E0B4C 28 1F 00 0E */ cmplwi r31, 0xe /* 802E4EF0 002E0B50 41 82 00 24 */ beq lbl_802E4F14 /* 802E4EF4 002E0B54 28 1F 00 05 */ cmplwi r31, 5 /* 802E4EF8 002E0B58 41 82 00 1C */ beq lbl_802E4F14 /* 802E4EFC 002E0B5C 28 1F 00 18 */ cmplwi r31, 0x18 /* 802E4F00 002E0B60 41 82 00 14 */ beq lbl_802E4F14 /* 802E4F04 002E0B64 28 1F 00 29 */ cmplwi r31, 0x29 /* 802E4F08 002E0B68 41 82 00 0C */ beq lbl_802E4F14 /* 802E4F0C 002E0B6C 28 1F 00 06 */ cmplwi r31, 6 /* 802E4F10 002E0B70 40 82 00 1C */ bne lbl_802E4F2C lbl_802E4F14: /* 802E4F14 002E0B74 3C 60 00 01 */ lis r3, 0x0000FFF6@ha /* 802E4F18 002E0B78 38 03 FF F6 */ addi r0, r3, 0x0000FFF6@l /* 802E4F1C 002E0B7C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802E4F20 002E0B80 7D 89 03 A6 */ mtctr r12 /* 802E4F24 002E0B84 4E 80 04 21 */ bctrl /* 802E4F28 002E0B88 48 00 00 38 */ b lbl_802E4F60 lbl_802E4F2C: /* 802E4F2C 002E0B8C 28 1F 00 0F */ cmplwi r31, 0xf /* 802E4F30 002E0B90 40 82 00 1C */ bne lbl_802E4F4C /* 802E4F34 002E0B94 3C 60 00 01 */ lis r3, 0x0000FFF7@ha /* 802E4F38 002E0B98 38 03 FF F7 */ addi r0, r3, 0x0000FFF7@l /* 802E4F3C 002E0B9C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802E4F40 002E0BA0 7D 89 03 A6 */ mtctr r12 /* 802E4F44 002E0BA4 4E 80 04 21 */ bctrl /* 802E4F48 002E0BA8 48 00 00 18 */ b lbl_802E4F60 lbl_802E4F4C: /* 802E4F4C 002E0BAC 3C 60 00 01 */ lis r3, 0x0000FFF1@ha /* 802E4F50 002E0BB0 38 03 FF F1 */ addi r0, r3, 0x0000FFF1@l /* 802E4F54 002E0BB4 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802E4F58 002E0BB8 7D 89 03 A6 */ mtctr r12 /* 802E4F5C 002E0BBC 4E 80 04 21 */ bctrl lbl_802E4F60: /* 802E4F60 002E0BC0 7F A3 EB 78 */ mr r3, r29 /* 802E4F64 002E0BC4 48 00 15 B1 */ bl sdpu_release_ccb lbl_802E4F68: /* 802E4F68 002E0BC8 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E4F6C 002E0BCC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E4F70 002E0BD0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E4F74 002E0BD4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E4F78 002E0BD8 83 81 00 10 */ lwz r28, 0x10(r1) /* 802E4F7C 002E0BDC 7C 08 03 A6 */ mtlr r0 /* 802E4F80 002E0BE0 38 21 00 20 */ addi r1, r1, 0x20 /* 802E4F84 002E0BE4 4E 80 00 20 */ blr sdp_config_ind: /* 802E4F88 002E0BE8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E4F8C 002E0BEC 7C 08 02 A6 */ mflr r0 /* 802E4F90 002E0BF0 90 01 00 24 */ stw r0, 0x24(r1) /* 802E4F94 002E0BF4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E4F98 002E0BF8 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E4F9C 002E0BFC 7C 9E 23 78 */ mr r30, r4 /* 802E4FA0 002E0C00 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E4FA4 002E0C04 7C 7D 1B 78 */ mr r29, r3 /* 802E4FA8 002E0C08 48 00 14 69 */ bl sdpu_find_ccb_by_cid /* 802E4FAC 002E0C0C 2C 03 00 00 */ cmpwi r3, 0 /* 802E4FB0 002E0C10 7C 7F 1B 78 */ mr r31, r3 /* 802E4FB4 002E0C14 40 82 00 34 */ bne lbl_802E4FE8 /* 802E4FB8 002E0C18 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E4FBC 002E0C1C 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E4FC0 002E0C20 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E4FC4 002E0C24 28 00 00 02 */ cmplwi r0, 2 /* 802E4FC8 002E0C28 41 80 00 E0 */ blt lbl_802E50A8 /* 802E4FCC 002E0C2C 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E4FD0 002E0C30 3C 80 80 44 */ lis r4, lbl_804452E0@ha /* 802E4FD4 002E0C34 7F A5 EB 78 */ mr r5, r29 /* 802E4FD8 002E0C38 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E4FDC 002E0C3C 38 84 52 E0 */ addi r4, r4, lbl_804452E0@l /* 802E4FE0 002E0C40 4B FD 7F 49 */ bl LogMsg_1 /* 802E4FE4 002E0C44 48 00 00 C4 */ b lbl_802E50A8 lbl_802E4FE8: /* 802E4FE8 002E0C48 88 1E 00 02 */ lbz r0, 2(r30) /* 802E4FEC 002E0C4C 2C 00 00 00 */ cmpwi r0, 0 /* 802E4FF0 002E0C50 40 82 00 10 */ bne lbl_802E5000 /* 802E4FF4 002E0C54 38 00 01 00 */ li r0, 0x100 /* 802E4FF8 002E0C58 B0 03 00 20 */ sth r0, 0x20(r3) /* 802E4FFC 002E0C5C 48 00 00 20 */ b lbl_802E501C lbl_802E5000: /* 802E5000 002E0C60 A0 1E 00 04 */ lhz r0, 4(r30) /* 802E5004 002E0C64 28 00 01 00 */ cmplwi r0, 0x100 /* 802E5008 002E0C68 40 81 00 10 */ ble lbl_802E5018 /* 802E500C 002E0C6C 38 00 01 00 */ li r0, 0x100 /* 802E5010 002E0C70 B0 03 00 20 */ sth r0, 0x20(r3) /* 802E5014 002E0C74 48 00 00 08 */ b lbl_802E501C lbl_802E5018: /* 802E5018 002E0C78 B0 03 00 20 */ sth r0, 0x20(r3) lbl_802E501C: /* 802E501C 002E0C7C 38 00 00 00 */ li r0, 0 /* 802E5020 002E0C80 7F A3 EB 78 */ mr r3, r29 /* 802E5024 002E0C84 98 1E 00 20 */ stb r0, 0x20(r30) /* 802E5028 002E0C88 7F C4 F3 78 */ mr r4, r30 /* 802E502C 002E0C8C 98 1E 00 02 */ stb r0, 2(r30) /* 802E5030 002E0C90 B0 1E 00 00 */ sth r0, 0(r30) /* 802E5034 002E0C94 4B FF 0E A5 */ bl L2CA_ConfigRsp /* 802E5038 002E0C98 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E503C 002E0C9C 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E5040 002E0CA0 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E5044 002E0CA4 28 00 00 04 */ cmplwi r0, 4 /* 802E5048 002E0CA8 41 80 00 1C */ blt lbl_802E5064 /* 802E504C 002E0CAC 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E5050 002E0CB0 3C 80 80 44 */ lis r4, lbl_8044530C@ha /* 802E5054 002E0CB4 7F A5 EB 78 */ mr r5, r29 /* 802E5058 002E0CB8 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E505C 002E0CBC 38 84 53 0C */ addi r4, r4, lbl_8044530C@l /* 802E5060 002E0CC0 4B FD 7E C9 */ bl LogMsg_1 lbl_802E5064: /* 802E5064 002E0CC4 88 1F 00 01 */ lbz r0, 1(r31) /* 802E5068 002E0CC8 60 03 00 02 */ ori r3, r0, 2 /* 802E506C 002E0CCC 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d /* 802E5070 002E0CD0 98 7F 00 01 */ stb r3, 1(r31) /* 802E5074 002E0CD4 41 82 00 34 */ beq lbl_802E50A8 /* 802E5078 002E0CD8 38 00 00 03 */ li r0, 3 /* 802E507C 002E0CDC 98 1F 00 00 */ stb r0, 0(r31) /* 802E5080 002E0CE0 88 1F 00 01 */ lbz r0, 1(r31) /* 802E5084 002E0CE4 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802E5088 002E0CE8 41 82 00 10 */ beq lbl_802E5098 /* 802E508C 002E0CEC 7F E3 FB 78 */ mr r3, r31 /* 802E5090 002E0CF0 4B FF EA A9 */ bl sdp_disc_connected /* 802E5094 002E0CF4 48 00 00 14 */ b lbl_802E50A8 lbl_802E5098: /* 802E5098 002E0CF8 38 7F 00 08 */ addi r3, r31, 8 /* 802E509C 002E0CFC 38 80 00 05 */ li r4, 5 /* 802E50A0 002E0D00 38 A0 00 1E */ li r5, 0x1e /* 802E50A4 002E0D04 4B FD 84 39 */ bl btu_start_timer lbl_802E50A8: /* 802E50A8 002E0D08 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E50AC 002E0D0C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E50B0 002E0D10 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E50B4 002E0D14 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E50B8 002E0D18 7C 08 03 A6 */ mtlr r0 /* 802E50BC 002E0D1C 38 21 00 20 */ addi r1, r1, 0x20 /* 802E50C0 002E0D20 4E 80 00 20 */ blr sdp_config_cfm: /* 802E50C4 002E0D24 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E50C8 002E0D28 7C 08 02 A6 */ mflr r0 /* 802E50CC 002E0D2C 3C A0 80 57 */ lis r5, lbl_8056C840@ha /* 802E50D0 002E0D30 90 01 00 24 */ stw r0, 0x24(r1) /* 802E50D4 002E0D34 38 A5 C8 40 */ addi r5, r5, lbl_8056C840@l /* 802E50D8 002E0D38 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E50DC 002E0D3C 3F E0 80 44 */ lis r31, lbl_804451A8@ha /* 802E50E0 002E0D40 3B FF 51 A8 */ addi r31, r31, lbl_804451A8@l /* 802E50E4 002E0D44 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E50E8 002E0D48 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E50EC 002E0D4C 7C 9D 23 78 */ mr r29, r4 /* 802E50F0 002E0D50 93 81 00 10 */ stw r28, 0x10(r1) /* 802E50F4 002E0D54 7C 7C 1B 78 */ mr r28, r3 /* 802E50F8 002E0D58 88 05 46 30 */ lbz r0, 0x4630(r5) /* 802E50FC 002E0D5C 28 00 00 04 */ cmplwi r0, 4 /* 802E5100 002E0D60 41 80 00 1C */ blt lbl_802E511C /* 802E5104 002E0D64 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E5108 002E0D68 A0 DD 00 00 */ lhz r6, 0(r29) /* 802E510C 002E0D6C 7F 85 E3 78 */ mr r5, r28 /* 802E5110 002E0D70 38 9F 01 90 */ addi r4, r31, 0x190 /* 802E5114 002E0D74 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E5118 002E0D78 4B FD 7E 29 */ bl LogMsg_2 lbl_802E511C: /* 802E511C 002E0D7C 7F 83 E3 78 */ mr r3, r28 /* 802E5120 002E0D80 48 00 12 F1 */ bl sdpu_find_ccb_by_cid /* 802E5124 002E0D84 2C 03 00 00 */ cmpwi r3, 0 /* 802E5128 002E0D88 7C 7E 1B 78 */ mr r30, r3 /* 802E512C 002E0D8C 40 82 00 30 */ bne lbl_802E515C /* 802E5130 002E0D90 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E5134 002E0D94 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E5138 002E0D98 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E513C 002E0D9C 28 00 00 02 */ cmplwi r0, 2 /* 802E5140 002E0DA0 41 80 00 E0 */ blt lbl_802E5220 /* 802E5144 002E0DA4 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E5148 002E0DA8 7F 85 E3 78 */ mr r5, r28 /* 802E514C 002E0DAC 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E5150 002E0DB0 38 9F 01 38 */ addi r4, r31, 0x138 /* 802E5154 002E0DB4 4B FD 7D D5 */ bl LogMsg_1 /* 802E5158 002E0DB8 48 00 00 C8 */ b lbl_802E5220 lbl_802E515C: /* 802E515C 002E0DBC A0 1D 00 00 */ lhz r0, 0(r29) /* 802E5160 002E0DC0 2C 00 00 00 */ cmpwi r0, 0 /* 802E5164 002E0DC4 40 82 00 48 */ bne lbl_802E51AC /* 802E5168 002E0DC8 88 03 00 01 */ lbz r0, 1(r3) /* 802E516C 002E0DCC 60 04 00 04 */ ori r4, r0, 4 /* 802E5170 002E0DD0 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e /* 802E5174 002E0DD4 98 83 00 01 */ stb r4, 1(r3) /* 802E5178 002E0DD8 41 82 00 A8 */ beq lbl_802E5220 /* 802E517C 002E0DDC 38 00 00 03 */ li r0, 3 /* 802E5180 002E0DE0 98 03 00 00 */ stb r0, 0(r3) /* 802E5184 002E0DE4 88 03 00 01 */ lbz r0, 1(r3) /* 802E5188 002E0DE8 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802E518C 002E0DEC 41 82 00 0C */ beq lbl_802E5198 /* 802E5190 002E0DF0 4B FF E9 A9 */ bl sdp_disc_connected /* 802E5194 002E0DF4 48 00 00 8C */ b lbl_802E5220 lbl_802E5198: /* 802E5198 002E0DF8 38 80 00 05 */ li r4, 5 /* 802E519C 002E0DFC 38 A0 00 1E */ li r5, 0x1e /* 802E51A0 002E0E00 38 63 00 08 */ addi r3, r3, 8 /* 802E51A4 002E0E04 4B FD 83 39 */ bl btu_start_timer /* 802E51A8 002E0E08 48 00 00 78 */ b lbl_802E5220 lbl_802E51AC: /* 802E51AC 002E0E0C 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E51B0 002E0E10 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E51B4 002E0E14 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E51B8 002E0E18 28 00 00 04 */ cmplwi r0, 4 /* 802E51BC 002E0E1C 41 80 00 18 */ blt lbl_802E51D4 /* 802E51C0 002E0E20 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E51C4 002E0E24 A0 BE 00 22 */ lhz r5, 0x22(r30) /* 802E51C8 002E0E28 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E51CC 002E0E2C 38 9F 01 BC */ addi r4, r31, 0x1bc /* 802E51D0 002E0E30 4B FD 7D 59 */ bl LogMsg_1 lbl_802E51D4: /* 802E51D4 002E0E34 88 1E 00 00 */ lbz r0, 0(r30) /* 802E51D8 002E0E38 28 00 00 01 */ cmplwi r0, 1 /* 802E51DC 002E0E3C 41 82 00 1C */ beq lbl_802E51F8 /* 802E51E0 002E0E40 A0 7E 00 22 */ lhz r3, 0x22(r30) /* 802E51E4 002E0E44 4B FF 0D C5 */ bl L2CA_DisconnectReq /* 802E51E8 002E0E48 3C 60 00 01 */ lis r3, 0x0000FFF2@ha /* 802E51EC 002E0E4C 38 03 FF F2 */ addi r0, r3, 0x0000FFF2@l /* 802E51F0 002E0E50 B0 1E 04 72 */ sth r0, 0x472(r30) /* 802E51F4 002E0E54 48 00 00 2C */ b lbl_802E5220 lbl_802E51F8: /* 802E51F8 002E0E58 81 9E 04 14 */ lwz r12, 0x414(r30) /* 802E51FC 002E0E5C 2C 0C 00 00 */ cmpwi r12, 0 /* 802E5200 002E0E60 41 82 00 18 */ beq lbl_802E5218 /* 802E5204 002E0E64 3C 60 00 01 */ lis r3, 0x0000FFF2@ha /* 802E5208 002E0E68 38 03 FF F2 */ addi r0, r3, 0x0000FFF2@l /* 802E520C 002E0E6C 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802E5210 002E0E70 7D 89 03 A6 */ mtctr r12 /* 802E5214 002E0E74 4E 80 04 21 */ bctrl lbl_802E5218: /* 802E5218 002E0E78 7F C3 F3 78 */ mr r3, r30 /* 802E521C 002E0E7C 48 00 12 F9 */ bl sdpu_release_ccb lbl_802E5220: /* 802E5220 002E0E80 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E5224 002E0E84 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E5228 002E0E88 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E522C 002E0E8C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E5230 002E0E90 83 81 00 10 */ lwz r28, 0x10(r1) /* 802E5234 002E0E94 7C 08 03 A6 */ mtlr r0 /* 802E5238 002E0E98 38 21 00 20 */ addi r1, r1, 0x20 /* 802E523C 002E0E9C 4E 80 00 20 */ blr sdp_disconnect_ind: /* 802E5240 002E0EA0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E5244 002E0EA4 7C 08 02 A6 */ mflr r0 /* 802E5248 002E0EA8 90 01 00 24 */ stw r0, 0x24(r1) /* 802E524C 002E0EAC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E5250 002E0EB0 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E5254 002E0EB4 7C 9E 23 78 */ mr r30, r4 /* 802E5258 002E0EB8 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E525C 002E0EBC 7C 7D 1B 78 */ mr r29, r3 /* 802E5260 002E0EC0 48 00 11 B1 */ bl sdpu_find_ccb_by_cid /* 802E5264 002E0EC4 2C 03 00 00 */ cmpwi r3, 0 /* 802E5268 002E0EC8 7C 7F 1B 78 */ mr r31, r3 /* 802E526C 002E0ECC 40 82 00 34 */ bne lbl_802E52A0 /* 802E5270 002E0ED0 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E5274 002E0ED4 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E5278 002E0ED8 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E527C 002E0EDC 28 00 00 02 */ cmplwi r0, 2 /* 802E5280 002E0EE0 41 80 00 9C */ blt lbl_802E531C /* 802E5284 002E0EE4 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E5288 002E0EE8 3C 80 80 44 */ lis r4, lbl_80445380@ha /* 802E528C 002E0EEC 7F A5 EB 78 */ mr r5, r29 /* 802E5290 002E0EF0 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E5294 002E0EF4 38 84 53 80 */ addi r4, r4, lbl_80445380@l /* 802E5298 002E0EF8 4B FD 7C 91 */ bl LogMsg_1 /* 802E529C 002E0EFC 48 00 00 80 */ b lbl_802E531C lbl_802E52A0: /* 802E52A0 002E0F00 2C 1E 00 00 */ cmpwi r30, 0 /* 802E52A4 002E0F04 41 82 00 0C */ beq lbl_802E52B0 /* 802E52A8 002E0F08 7F A3 EB 78 */ mr r3, r29 /* 802E52AC 002E0F0C 4B FF 0D A1 */ bl L2CA_DisconnectRsp lbl_802E52B0: /* 802E52B0 002E0F10 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E52B4 002E0F14 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E52B8 002E0F18 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E52BC 002E0F1C 28 00 00 04 */ cmplwi r0, 4 /* 802E52C0 002E0F20 41 80 00 1C */ blt lbl_802E52DC /* 802E52C4 002E0F24 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E52C8 002E0F28 3C 80 80 44 */ lis r4, lbl_804453AC@ha /* 802E52CC 002E0F2C 7F A5 EB 78 */ mr r5, r29 /* 802E52D0 002E0F30 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E52D4 002E0F34 38 84 53 AC */ addi r4, r4, lbl_804453AC@l /* 802E52D8 002E0F38 4B FD 7C 51 */ bl LogMsg_1 lbl_802E52DC: /* 802E52DC 002E0F3C 81 9F 04 14 */ lwz r12, 0x414(r31) /* 802E52E0 002E0F40 2C 0C 00 00 */ cmpwi r12, 0 /* 802E52E4 002E0F44 41 82 00 30 */ beq lbl_802E5314 /* 802E52E8 002E0F48 88 BF 00 00 */ lbz r5, 0(r31) /* 802E52EC 002E0F4C 3C 60 00 01 */ lis r3, 0x0000FFF1@ha /* 802E52F0 002E0F50 38 03 FF F1 */ addi r0, r3, 0x0000FFF1@l /* 802E52F4 002E0F54 38 85 FF FD */ addi r4, r5, -3 /* 802E52F8 002E0F58 20 65 00 03 */ subfic r3, r5, 3 /* 802E52FC 002E0F5C 7C 83 18 F8 */ nor r3, r4, r3 /* 802E5300 002E0F60 7C 63 FE 70 */ srawi r3, r3, 0x1f /* 802E5304 002E0F64 7C 00 18 78 */ andc r0, r0, r3 /* 802E5308 002E0F68 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802E530C 002E0F6C 7D 89 03 A6 */ mtctr r12 /* 802E5310 002E0F70 4E 80 04 21 */ bctrl lbl_802E5314: /* 802E5314 002E0F74 7F E3 FB 78 */ mr r3, r31 /* 802E5318 002E0F78 48 00 11 FD */ bl sdpu_release_ccb lbl_802E531C: /* 802E531C 002E0F7C 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E5320 002E0F80 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E5324 002E0F84 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E5328 002E0F88 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E532C 002E0F8C 7C 08 03 A6 */ mtlr r0 /* 802E5330 002E0F90 38 21 00 20 */ addi r1, r1, 0x20 /* 802E5334 002E0F94 4E 80 00 20 */ blr sdp_data_ind: /* 802E5338 002E0F98 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802E533C 002E0F9C 7C 08 02 A6 */ mflr r0 /* 802E5340 002E0FA0 90 01 00 14 */ stw r0, 0x14(r1) /* 802E5344 002E0FA4 93 E1 00 0C */ stw r31, 0xc(r1) /* 802E5348 002E0FA8 7C 9F 23 78 */ mr r31, r4 /* 802E534C 002E0FAC 93 C1 00 08 */ stw r30, 8(r1) /* 802E5350 002E0FB0 7C 7E 1B 78 */ mr r30, r3 /* 802E5354 002E0FB4 48 00 10 BD */ bl sdpu_find_ccb_by_cid /* 802E5358 002E0FB8 2C 03 00 00 */ cmpwi r3, 0 /* 802E535C 002E0FBC 41 82 00 64 */ beq lbl_802E53C0 /* 802E5360 002E0FC0 88 A3 00 00 */ lbz r5, 0(r3) /* 802E5364 002E0FC4 28 05 00 03 */ cmplwi r5, 3 /* 802E5368 002E0FC8 40 82 00 28 */ bne lbl_802E5390 /* 802E536C 002E0FCC 88 03 00 01 */ lbz r0, 1(r3) /* 802E5370 002E0FD0 54 00 07 FF */ clrlwi. r0, r0, 0x1f /* 802E5374 002E0FD4 41 82 00 10 */ beq lbl_802E5384 /* 802E5378 002E0FD8 7F E4 FB 78 */ mr r4, r31 /* 802E537C 002E0FDC 4B FF E7 F1 */ bl sdp_disc_server_rsp /* 802E5380 002E0FE0 48 00 00 6C */ b lbl_802E53EC lbl_802E5384: /* 802E5384 002E0FE4 7F E4 FB 78 */ mr r4, r31 /* 802E5388 002E0FE8 48 00 03 79 */ bl sdp_server_handle_client_req /* 802E538C 002E0FEC 48 00 00 60 */ b lbl_802E53EC lbl_802E5390: /* 802E5390 002E0FF0 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E5394 002E0FF4 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E5398 002E0FF8 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E539C 002E0FFC 28 00 00 02 */ cmplwi r0, 2 /* 802E53A0 002E1000 41 80 00 4C */ blt lbl_802E53EC /* 802E53A4 002E1004 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E53A8 002E1008 3C 80 80 44 */ lis r4, lbl_804453D0@ha /* 802E53AC 002E100C 7F C6 F3 78 */ mr r6, r30 /* 802E53B0 002E1010 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E53B4 002E1014 38 84 53 D0 */ addi r4, r4, lbl_804453D0@l /* 802E53B8 002E1018 4B FD 7B 89 */ bl LogMsg_2 /* 802E53BC 002E101C 48 00 00 30 */ b lbl_802E53EC lbl_802E53C0: /* 802E53C0 002E1020 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E53C4 002E1024 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E53C8 002E1028 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E53CC 002E102C 28 00 00 02 */ cmplwi r0, 2 /* 802E53D0 002E1030 41 80 00 1C */ blt lbl_802E53EC /* 802E53D4 002E1034 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E53D8 002E1038 3C 80 80 44 */ lis r4, lbl_80445408@ha /* 802E53DC 002E103C 7F C5 F3 78 */ mr r5, r30 /* 802E53E0 002E1040 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E53E4 002E1044 38 84 54 08 */ addi r4, r4, lbl_80445408@l /* 802E53E8 002E1048 4B FD 7B 41 */ bl LogMsg_1 lbl_802E53EC: /* 802E53EC 002E104C 7F E3 FB 78 */ mr r3, r31 /* 802E53F0 002E1050 4B FD 49 45 */ bl GKI_freebuf /* 802E53F4 002E1054 80 01 00 14 */ lwz r0, 0x14(r1) /* 802E53F8 002E1058 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802E53FC 002E105C 83 C1 00 08 */ lwz r30, 8(r1) /* 802E5400 002E1060 7C 08 03 A6 */ mtlr r0 /* 802E5404 002E1064 38 21 00 10 */ addi r1, r1, 0x10 /* 802E5408 002E1068 4E 80 00 20 */ blr .global sdp_conn_originate sdp_conn_originate: /* 802E540C 002E106C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E5410 002E1070 7C 08 02 A6 */ mflr r0 /* 802E5414 002E1074 90 01 00 24 */ stw r0, 0x24(r1) /* 802E5418 002E1078 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E541C 002E107C 3F E0 80 44 */ lis r31, lbl_804451A8@ha /* 802E5420 002E1080 3B FF 51 A8 */ addi r31, r31, lbl_804451A8@l /* 802E5424 002E1084 93 C1 00 18 */ stw r30, 0x18(r1) /* 802E5428 002E1088 93 A1 00 14 */ stw r29, 0x14(r1) /* 802E542C 002E108C 7C 7D 1B 78 */ mr r29, r3 /* 802E5430 002E1090 48 00 10 71 */ bl sdpu_allocate_ccb /* 802E5434 002E1094 2C 03 00 00 */ cmpwi r3, 0 /* 802E5438 002E1098 7C 7E 1B 78 */ mr r30, r3 /* 802E543C 002E109C 40 82 00 30 */ bne lbl_802E546C /* 802E5440 002E10A0 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E5444 002E10A4 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E5448 002E10A8 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E544C 002E10AC 28 00 00 02 */ cmplwi r0, 2 /* 802E5450 002E10B0 41 80 00 14 */ blt lbl_802E5464 /* 802E5454 002E10B4 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E5458 002E10B8 38 9F 02 8C */ addi r4, r31, 0x28c /* 802E545C 002E10BC 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E5460 002E10C0 4B FD 7A B1 */ bl LogMsg_0 lbl_802E5464: /* 802E5464 002E10C4 38 60 00 00 */ li r3, 0 /* 802E5468 002E10C8 48 00 00 9C */ b lbl_802E5504 lbl_802E546C: /* 802E546C 002E10CC 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E5470 002E10D0 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E5474 002E10D4 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E5478 002E10D8 28 00 00 04 */ cmplwi r0, 4 /* 802E547C 002E10DC 41 80 00 14 */ blt lbl_802E5490 /* 802E5480 002E10E0 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E5484 002E10E4 38 9F 02 A8 */ addi r4, r31, 0x2a8 /* 802E5488 002E10E8 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E548C 002E10EC 4B FD 7A 85 */ bl LogMsg_0 lbl_802E5490: /* 802E5490 002E10F0 88 1E 00 01 */ lbz r0, 1(r30) /* 802E5494 002E10F4 7F A4 EB 78 */ mr r4, r29 /* 802E5498 002E10F8 38 7E 00 02 */ addi r3, r30, 2 /* 802E549C 002E10FC 38 A0 00 06 */ li r5, 6 /* 802E54A0 002E1100 60 00 00 01 */ ori r0, r0, 1 /* 802E54A4 002E1104 98 1E 00 01 */ stb r0, 1(r30) /* 802E54A8 002E1108 4B D1 EB 59 */ bl memcpy /* 802E54AC 002E110C 38 00 00 01 */ li r0, 1 /* 802E54B0 002E1110 7F A4 EB 78 */ mr r4, r29 /* 802E54B4 002E1114 98 1E 00 00 */ stb r0, 0(r30) /* 802E54B8 002E1118 38 60 00 01 */ li r3, 1 /* 802E54BC 002E111C 4B FF 05 A1 */ bl L2CA_ConnectReq /* 802E54C0 002E1120 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 802E54C4 002E1124 41 82 00 10 */ beq lbl_802E54D4 /* 802E54C8 002E1128 B0 7E 00 22 */ sth r3, 0x22(r30) /* 802E54CC 002E112C 7F C3 F3 78 */ mr r3, r30 /* 802E54D0 002E1130 48 00 00 34 */ b lbl_802E5504 lbl_802E54D4: /* 802E54D4 002E1134 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E54D8 002E1138 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E54DC 002E113C 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E54E0 002E1140 28 00 00 02 */ cmplwi r0, 2 /* 802E54E4 002E1144 41 80 00 14 */ blt lbl_802E54F8 /* 802E54E8 002E1148 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E54EC 002E114C 38 9F 02 C0 */ addi r4, r31, 0x2c0 /* 802E54F0 002E1150 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E54F4 002E1154 4B FD 7A 1D */ bl LogMsg_0 lbl_802E54F8: /* 802E54F8 002E1158 7F C3 F3 78 */ mr r3, r30 /* 802E54FC 002E115C 48 00 10 19 */ bl sdpu_release_ccb /* 802E5500 002E1160 38 60 00 00 */ li r3, 0 lbl_802E5504: /* 802E5504 002E1164 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E5508 002E1168 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E550C 002E116C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802E5510 002E1170 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802E5514 002E1174 7C 08 03 A6 */ mtlr r0 /* 802E5518 002E1178 38 21 00 20 */ addi r1, r1, 0x20 /* 802E551C 002E117C 4E 80 00 20 */ blr .global sdp_disconnect sdp_disconnect: /* 802E5520 002E1180 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802E5524 002E1184 7C 08 02 A6 */ mflr r0 /* 802E5528 002E1188 3C A0 80 57 */ lis r5, lbl_8056C840@ha /* 802E552C 002E118C 90 01 00 14 */ stw r0, 0x14(r1) /* 802E5530 002E1190 38 A5 C8 40 */ addi r5, r5, lbl_8056C840@l /* 802E5534 002E1194 93 E1 00 0C */ stw r31, 0xc(r1) /* 802E5538 002E1198 7C 9F 23 78 */ mr r31, r4 /* 802E553C 002E119C 93 C1 00 08 */ stw r30, 8(r1) /* 802E5540 002E11A0 7C 7E 1B 78 */ mr r30, r3 /* 802E5544 002E11A4 88 05 46 30 */ lbz r0, 0x4630(r5) /* 802E5548 002E11A8 28 00 00 04 */ cmplwi r0, 4 /* 802E554C 002E11AC 41 80 00 1C */ blt lbl_802E5568 /* 802E5550 002E11B0 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E5554 002E11B4 3C 80 80 44 */ lis r4, lbl_80445364@ha /* 802E5558 002E11B8 A0 BE 00 22 */ lhz r5, 0x22(r30) /* 802E555C 002E11BC 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E5560 002E11C0 38 84 53 64 */ addi r4, r4, lbl_80445364@l /* 802E5564 002E11C4 4B FD 79 C5 */ bl LogMsg_1 lbl_802E5568: /* 802E5568 002E11C8 88 1E 00 00 */ lbz r0, 0(r30) /* 802E556C 002E11CC 28 00 00 01 */ cmplwi r0, 1 /* 802E5570 002E11D0 41 82 00 14 */ beq lbl_802E5584 /* 802E5574 002E11D4 A0 7E 00 22 */ lhz r3, 0x22(r30) /* 802E5578 002E11D8 4B FF 0A 31 */ bl L2CA_DisconnectReq /* 802E557C 002E11DC B3 FE 04 72 */ sth r31, 0x472(r30) /* 802E5580 002E11E0 48 00 00 24 */ b lbl_802E55A4 lbl_802E5584: /* 802E5584 002E11E4 81 9E 04 14 */ lwz r12, 0x414(r30) /* 802E5588 002E11E8 2C 0C 00 00 */ cmpwi r12, 0 /* 802E558C 002E11EC 41 82 00 10 */ beq lbl_802E559C /* 802E5590 002E11F0 7F E3 FB 78 */ mr r3, r31 /* 802E5594 002E11F4 7D 89 03 A6 */ mtctr r12 /* 802E5598 002E11F8 4E 80 04 21 */ bctrl lbl_802E559C: /* 802E559C 002E11FC 7F C3 F3 78 */ mr r3, r30 /* 802E55A0 002E1200 48 00 0F 75 */ bl sdpu_release_ccb lbl_802E55A4: /* 802E55A4 002E1204 80 01 00 14 */ lwz r0, 0x14(r1) /* 802E55A8 002E1208 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802E55AC 002E120C 83 C1 00 08 */ lwz r30, 8(r1) /* 802E55B0 002E1210 7C 08 03 A6 */ mtlr r0 /* 802E55B4 002E1214 38 21 00 10 */ addi r1, r1, 0x10 /* 802E55B8 002E1218 4E 80 00 20 */ blr sdp_disconnect_cfm: /* 802E55BC 002E121C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802E55C0 002E1220 7C 08 02 A6 */ mflr r0 /* 802E55C4 002E1224 90 01 00 14 */ stw r0, 0x14(r1) /* 802E55C8 002E1228 93 E1 00 0C */ stw r31, 0xc(r1) /* 802E55CC 002E122C 93 C1 00 08 */ stw r30, 8(r1) /* 802E55D0 002E1230 7C 7E 1B 78 */ mr r30, r3 /* 802E55D4 002E1234 48 00 0E 3D */ bl sdpu_find_ccb_by_cid /* 802E55D8 002E1238 2C 03 00 00 */ cmpwi r3, 0 /* 802E55DC 002E123C 7C 7F 1B 78 */ mr r31, r3 /* 802E55E0 002E1240 40 82 00 34 */ bne lbl_802E5614 /* 802E55E4 002E1244 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E55E8 002E1248 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E55EC 002E124C 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E55F0 002E1250 28 00 00 02 */ cmplwi r0, 2 /* 802E55F4 002E1254 41 80 00 6C */ blt lbl_802E5660 /* 802E55F8 002E1258 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E55FC 002E125C 3C 80 80 44 */ lis r4, lbl_80445480@ha /* 802E5600 002E1260 7F C5 F3 78 */ mr r5, r30 /* 802E5604 002E1264 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E5608 002E1268 38 84 54 80 */ addi r4, r4, lbl_80445480@l /* 802E560C 002E126C 4B FD 79 1D */ bl LogMsg_1 /* 802E5610 002E1270 48 00 00 50 */ b lbl_802E5660 lbl_802E5614: /* 802E5614 002E1274 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E5618 002E1278 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E561C 002E127C 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E5620 002E1280 28 00 00 04 */ cmplwi r0, 4 /* 802E5624 002E1284 41 80 00 1C */ blt lbl_802E5640 /* 802E5628 002E1288 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E562C 002E128C 3C 80 80 44 */ lis r4, lbl_804454B0@ha /* 802E5630 002E1290 7F C5 F3 78 */ mr r5, r30 /* 802E5634 002E1294 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E5638 002E1298 38 84 54 B0 */ addi r4, r4, lbl_804454B0@l /* 802E563C 002E129C 4B FD 78 ED */ bl LogMsg_1 lbl_802E5640: /* 802E5640 002E12A0 81 9F 04 14 */ lwz r12, 0x414(r31) /* 802E5644 002E12A4 2C 0C 00 00 */ cmpwi r12, 0 /* 802E5648 002E12A8 41 82 00 10 */ beq lbl_802E5658 /* 802E564C 002E12AC A0 7F 04 72 */ lhz r3, 0x472(r31) /* 802E5650 002E12B0 7D 89 03 A6 */ mtctr r12 /* 802E5654 002E12B4 4E 80 04 21 */ bctrl lbl_802E5658: /* 802E5658 002E12B8 7F E3 FB 78 */ mr r3, r31 /* 802E565C 002E12BC 48 00 0E B9 */ bl sdpu_release_ccb lbl_802E5660: /* 802E5660 002E12C0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802E5664 002E12C4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802E5668 002E12C8 83 C1 00 08 */ lwz r30, 8(r1) /* 802E566C 002E12CC 7C 08 03 A6 */ mtlr r0 /* 802E5670 002E12D0 38 21 00 10 */ addi r1, r1, 0x10 /* 802E5674 002E12D4 4E 80 00 20 */ blr .global sdp_conn_timeout sdp_conn_timeout: /* 802E5678 002E12D8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802E567C 002E12DC 7C 08 02 A6 */ mflr r0 /* 802E5680 002E12E0 3C 80 80 57 */ lis r4, lbl_8056C840@ha /* 802E5684 002E12E4 90 01 00 14 */ stw r0, 0x14(r1) /* 802E5688 002E12E8 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l /* 802E568C 002E12EC 93 E1 00 0C */ stw r31, 0xc(r1) /* 802E5690 002E12F0 7C 7F 1B 78 */ mr r31, r3 /* 802E5694 002E12F4 88 04 46 30 */ lbz r0, 0x4630(r4) /* 802E5698 002E12F8 28 00 00 04 */ cmplwi r0, 4 /* 802E569C 002E12FC 41 80 00 20 */ blt lbl_802E56BC /* 802E56A0 002E1300 3C 60 00 0A */ lis r3, 0x000A0003@ha /* 802E56A4 002E1304 3C 80 80 44 */ lis r4, lbl_804454D8@ha /* 802E56A8 002E1308 88 BF 00 00 */ lbz r5, 0(r31) /* 802E56AC 002E130C 38 63 00 03 */ addi r3, r3, 0x000A0003@l /* 802E56B0 002E1310 A0 DF 00 22 */ lhz r6, 0x22(r31) /* 802E56B4 002E1314 38 84 54 D8 */ addi r4, r4, lbl_804454D8@l /* 802E56B8 002E1318 4B FD 78 89 */ bl LogMsg_2 lbl_802E56BC: /* 802E56BC 002E131C A0 7F 00 22 */ lhz r3, 0x22(r31) /* 802E56C0 002E1320 4B FF 08 E9 */ bl L2CA_DisconnectReq /* 802E56C4 002E1324 81 9F 04 14 */ lwz r12, 0x414(r31) /* 802E56C8 002E1328 2C 0C 00 00 */ cmpwi r12, 0 /* 802E56CC 002E132C 41 82 00 18 */ beq lbl_802E56E4 /* 802E56D0 002E1330 3C 60 00 01 */ lis r3, 0x0000FFF1@ha /* 802E56D4 002E1334 38 03 FF F1 */ addi r0, r3, 0x0000FFF1@l /* 802E56D8 002E1338 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802E56DC 002E133C 7D 89 03 A6 */ mtctr r12 /* 802E56E0 002E1340 4E 80 04 21 */ bctrl lbl_802E56E4: /* 802E56E4 002E1344 7F E3 FB 78 */ mr r3, r31 /* 802E56E8 002E1348 48 00 0E 2D */ bl sdpu_release_ccb /* 802E56EC 002E134C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802E56F0 002E1350 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802E56F4 002E1354 7C 08 03 A6 */ mtlr r0 /* 802E56F8 002E1358 38 21 00 10 */ addi r1, r1, 0x10 /* 802E56FC 002E135C 4E 80 00 20 */ blr