.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global l2c_init l2c_init: /* 802D8A64 002D46C4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802D8A68 002D46C8 7C 08 02 A6 */ mflr r0 /* 802D8A6C 002D46CC 38 80 00 00 */ li r4, 0 /* 802D8A70 002D46D0 38 A0 07 E8 */ li r5, 0x7e8 /* 802D8A74 002D46D4 90 01 00 14 */ stw r0, 0x14(r1) /* 802D8A78 002D46D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 802D8A7C 002D46DC 3F E0 80 57 */ lis r31, lbl_8056BC40@ha /* 802D8A80 002D46E0 38 7F BC 40 */ addi r3, r31, lbl_8056BC40@l /* 802D8A84 002D46E4 4B D2 B6 81 */ bl memset /* 802D8A88 002D46E8 38 80 00 01 */ li r4, 1 /* 802D8A8C 002D46EC 38 00 00 02 */ li r0, 2 /* 802D8A90 002D46F0 1C 64 00 7C */ mulli r3, r4, 0x7c /* 802D8A94 002D46F4 39 7F BC 40 */ addi r11, r31, -17344 /* 802D8A98 002D46F8 38 E0 00 03 */ li r7, 3 /* 802D8A9C 002D46FC 38 80 00 04 */ li r4, 4 /* 802D8AA0 002D4700 7D 0B 1A 14 */ add r8, r11, r3 /* 802D8AA4 002D4704 38 AB 01 78 */ addi r5, r11, 0x178 /* 802D8AA8 002D4708 1C C7 00 7C */ mulli r6, r7, 0x7c /* 802D8AAC 002D470C 38 E0 00 06 */ li r7, 6 /* 802D8AB0 002D4710 39 48 01 78 */ addi r10, r8, 0x178 /* 802D8AB4 002D4714 91 4B 01 80 */ stw r10, 0x180(r11) /* 802D8AB8 002D4718 1D 20 00 7C */ mulli r9, r0, 0x7c /* 802D8ABC 002D471C 38 00 00 05 */ li r0, 5 /* 802D8AC0 002D4720 7C CB 32 14 */ add r6, r11, r6 /* 802D8AC4 002D4724 7D 0B 4A 14 */ add r8, r11, r9 /* 802D8AC8 002D4728 38 C6 01 78 */ addi r6, r6, 0x178 /* 802D8ACC 002D472C 1C 64 00 7C */ mulli r3, r4, 0x7c /* 802D8AD0 002D4730 38 80 00 07 */ li r4, 7 /* 802D8AD4 002D4734 39 08 01 78 */ addi r8, r8, 0x178 /* 802D8AD8 002D4738 91 0B 01 FC */ stw r8, 0x1fc(r11) /* 802D8ADC 002D473C 7D 0B 1A 14 */ add r8, r11, r3 /* 802D8AE0 002D4740 1D 20 00 7C */ mulli r9, r0, 0x7c /* 802D8AE4 002D4744 90 CB 02 78 */ stw r6, 0x278(r11) /* 802D8AE8 002D4748 39 48 01 78 */ addi r10, r8, 0x178 /* 802D8AEC 002D474C 91 4B 02 F4 */ stw r10, 0x2f4(r11) /* 802D8AF0 002D4750 38 00 00 08 */ li r0, 8 /* 802D8AF4 002D4754 1C C7 00 7C */ mulli r6, r7, 0x7c /* 802D8AF8 002D4758 7D 0B 4A 14 */ add r8, r11, r9 /* 802D8AFC 002D475C 38 E0 00 09 */ li r7, 9 /* 802D8B00 002D4760 39 08 01 78 */ addi r8, r8, 0x178 /* 802D8B04 002D4764 1C 64 00 7C */ mulli r3, r4, 0x7c /* 802D8B08 002D4768 7C CB 32 14 */ add r6, r11, r6 /* 802D8B0C 002D476C 91 0B 03 70 */ stw r8, 0x370(r11) /* 802D8B10 002D4770 38 8B 05 D4 */ addi r4, r11, 0x5d4 /* 802D8B14 002D4774 38 C6 01 78 */ addi r6, r6, 0x178 /* 802D8B18 002D4778 7D 0B 1A 14 */ add r8, r11, r3 /* 802D8B1C 002D477C 1D 20 00 7C */ mulli r9, r0, 0x7c /* 802D8B20 002D4780 90 CB 03 EC */ stw r6, 0x3ec(r11) /* 802D8B24 002D4784 39 48 01 78 */ addi r10, r8, 0x178 /* 802D8B28 002D4788 91 4B 04 68 */ stw r10, 0x468(r11) /* 802D8B2C 002D478C 38 60 00 00 */ li r3, 0 /* 802D8B30 002D4790 1C C7 00 7C */ mulli r6, r7, 0x7c /* 802D8B34 002D4794 7D 0B 4A 14 */ add r8, r11, r9 /* 802D8B38 002D4798 38 00 00 02 */ li r0, 2 /* 802D8B3C 002D479C 39 08 01 78 */ addi r8, r8, 0x178 /* 802D8B40 002D47A0 7C CB 32 14 */ add r6, r11, r6 /* 802D8B44 002D47A4 91 0B 04 E4 */ stw r8, 0x4e4(r11) /* 802D8B48 002D47A8 38 C6 01 78 */ addi r6, r6, 0x178 /* 802D8B4C 002D47AC 90 CB 05 60 */ stw r6, 0x560(r11) /* 802D8B50 002D47B0 90 AB 07 B0 */ stw r5, 0x7b0(r11) /* 802D8B54 002D47B4 90 8B 07 B4 */ stw r4, 0x7b4(r11) /* 802D8B58 002D47B8 98 6B 00 01 */ stb r3, 1(r11) /* 802D8B5C 002D47BC B0 0B 07 BA */ sth r0, 0x7ba(r11) /* 802D8B60 002D47C0 98 7F BC 40 */ stb r3, -0x43c0(r31) /* 802D8B64 002D47C4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802D8B68 002D47C8 80 01 00 14 */ lwz r0, 0x14(r1) /* 802D8B6C 002D47CC 7C 08 03 A6 */ mtlr r0 /* 802D8B70 002D47D0 38 21 00 10 */ addi r1, r1, 0x10 /* 802D8B74 002D47D4 4E 80 00 20 */ blr .global l2c_rcv_acl_data l2c_rcv_acl_data: /* 802D8B78 002D47D8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802D8B7C 002D47DC 7C 08 02 A6 */ mflr r0 /* 802D8B80 002D47E0 90 01 00 34 */ stw r0, 0x34(r1) /* 802D8B84 002D47E4 39 61 00 30 */ addi r11, r1, 0x30 /* 802D8B88 002D47E8 4B EE E5 95 */ bl _savegpr_24 /* 802D8B8C 002D47EC A0 03 00 04 */ lhz r0, 4(r3) /* 802D8B90 002D47F0 3F C0 80 44 */ lis r30, lbl_80443E78@ha /* 802D8B94 002D47F4 7C 7B 1B 78 */ mr r27, r3 /* 802D8B98 002D47F8 3B 80 00 00 */ li r28, 0 /* 802D8B9C 002D47FC 7F E3 02 14 */ add r31, r3, r0 /* 802D8BA0 002D4800 3B DE 3E 78 */ addi r30, r30, lbl_80443E78@l /* 802D8BA4 002D4804 88 1F 00 09 */ lbz r0, 9(r31) /* 802D8BA8 002D4808 88 7F 00 08 */ lbz r3, 8(r31) /* 802D8BAC 002D480C 54 00 40 2E */ slwi r0, r0, 8 /* 802D8BB0 002D4810 7C 03 02 14 */ add r0, r3, r0 /* 802D8BB4 002D4814 54 05 A7 BE */ rlwinm r5, r0, 0x14, 0x1e, 0x1f /* 802D8BB8 002D4818 28 05 00 02 */ cmplwi r5, 2 /* 802D8BBC 002D481C 54 1A 05 3E */ clrlwi r26, r0, 0x14 /* 802D8BC0 002D4820 41 82 00 30 */ beq lbl_802D8BF0 /* 802D8BC4 002D4824 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8BC8 002D4828 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8BCC 002D482C 28 00 00 02 */ cmplwi r0, 2 /* 802D8BD0 002D4830 41 80 00 14 */ blt lbl_802D8BE4 /* 802D8BD4 002D4834 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D8BD8 002D4838 38 9E 00 00 */ addi r4, r30, 0 /* 802D8BDC 002D483C 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D8BE0 002D4840 4B FE 43 49 */ bl LogMsg_1 lbl_802D8BE4: /* 802D8BE4 002D4844 7F 63 DB 78 */ mr r3, r27 /* 802D8BE8 002D4848 4B FE 11 4D */ bl GKI_freebuf /* 802D8BEC 002D484C 48 00 02 A4 */ b lbl_802D8E90 lbl_802D8BF0: /* 802D8BF0 002D4850 7F 43 D3 78 */ mr r3, r26 /* 802D8BF4 002D4854 48 00 10 FD */ bl l2cu_find_lcb_by_handle /* 802D8BF8 002D4858 2C 03 00 00 */ cmpwi r3, 0 /* 802D8BFC 002D485C 7C 7D 1B 78 */ mr r29, r3 /* 802D8C00 002D4860 40 82 00 D0 */ bne lbl_802D8CD0 /* 802D8C04 002D4864 88 7F 00 0F */ lbz r3, 0xf(r31) /* 802D8C08 002D4868 A0 1B 00 06 */ lhz r0, 6(r27) /* 802D8C0C 002D486C 88 9F 00 0E */ lbz r4, 0xe(r31) /* 802D8C10 002D4870 54 63 40 2E */ slwi r3, r3, 8 /* 802D8C14 002D4874 2C 00 00 00 */ cmpwi r0, 0 /* 802D8C18 002D4878 8B 9F 00 10 */ lbz r28, 0x10(r31) /* 802D8C1C 002D487C 7C 04 1A 14 */ add r0, r4, r3 /* 802D8C20 002D4880 54 18 04 3E */ clrlwi r24, r0, 0x10 /* 802D8C24 002D4884 40 82 00 A0 */ bne lbl_802D8CC4 /* 802D8C28 002D4888 28 18 00 01 */ cmplwi r24, 1 /* 802D8C2C 002D488C 40 82 00 98 */ bne lbl_802D8CC4 /* 802D8C30 002D4890 28 1C 00 0A */ cmplwi r28, 0xa /* 802D8C34 002D4894 41 82 00 0C */ beq lbl_802D8C40 /* 802D8C38 002D4898 28 1C 00 02 */ cmplwi r28, 2 /* 802D8C3C 002D489C 40 82 00 88 */ bne lbl_802D8CC4 lbl_802D8C40: /* 802D8C40 002D48A0 7F 43 D3 78 */ mr r3, r26 /* 802D8C44 002D48A4 4B FF 38 75 */ bl btm_sec_is_bonding /* 802D8C48 002D48A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802D8C4C 002D48AC 40 82 00 78 */ bne lbl_802D8CC4 /* 802D8C50 002D48B0 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8C54 002D48B4 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8C58 002D48B8 28 00 00 02 */ cmplwi r0, 2 /* 802D8C5C 002D48BC 41 80 00 2C */ blt lbl_802D8C88 /* 802D8C60 002D48C0 38 63 BC 40 */ addi r3, r3, -17344 /* 802D8C64 002D48C4 3C 80 00 08 */ lis r4, 0x00080001@ha /* 802D8C68 002D48C8 A1 23 07 C8 */ lhz r9, 0x7c8(r3) /* 802D8C6C 002D48CC 38 64 00 01 */ addi r3, r4, 0x00080001@l /* 802D8C70 002D48D0 A0 DB 00 06 */ lhz r6, 6(r27) /* 802D8C74 002D48D4 7F 45 D3 78 */ mr r5, r26 /* 802D8C78 002D48D8 7F 07 C3 78 */ mr r7, r24 /* 802D8C7C 002D48DC 7F 88 E3 78 */ mr r8, r28 /* 802D8C80 002D48E0 38 9E 00 24 */ addi r4, r30, 0x24 /* 802D8C84 002D48E4 4B FE 43 05 */ bl LogMsg_5 lbl_802D8C88: /* 802D8C88 002D48E8 38 00 00 02 */ li r0, 2 /* 802D8C8C 002D48EC 3F 80 80 57 */ lis r28, lbl_8056BC40@ha /* 802D8C90 002D48F0 3B 9C BC 40 */ addi r28, r28, lbl_8056BC40@l /* 802D8C94 002D48F4 B0 1B 00 06 */ sth r0, 6(r27) /* 802D8C98 002D48F8 7F 64 DB 78 */ mr r4, r27 /* 802D8C9C 002D48FC 38 7C 07 C0 */ addi r3, r28, 0x7c0 /* 802D8CA0 002D4900 4B FE 14 B5 */ bl GKI_enqueue /* 802D8CA4 002D4904 A0 1C 07 C8 */ lhz r0, 0x7c8(r28) /* 802D8CA8 002D4908 28 00 00 01 */ cmplwi r0, 1 /* 802D8CAC 002D490C 40 82 01 E4 */ bne lbl_802D8E90 /* 802D8CB0 002D4910 38 7C 07 CC */ addi r3, r28, 0x7cc /* 802D8CB4 002D4914 38 80 00 04 */ li r4, 4 /* 802D8CB8 002D4918 38 A0 00 01 */ li r5, 1 /* 802D8CBC 002D491C 4B FE 48 21 */ bl btu_start_timer /* 802D8CC0 002D4920 48 00 01 D0 */ b lbl_802D8E90 lbl_802D8CC4: /* 802D8CC4 002D4924 7F 63 DB 78 */ mr r3, r27 /* 802D8CC8 002D4928 4B FE 10 6D */ bl GKI_freebuf /* 802D8CCC 002D492C 48 00 01 C4 */ b lbl_802D8E90 lbl_802D8CD0: /* 802D8CD0 002D4930 A0 9B 00 04 */ lhz r4, 4(r27) /* 802D8CD4 002D4934 88 BF 00 0B */ lbz r5, 0xb(r31) /* 802D8CD8 002D4938 38 04 00 04 */ addi r0, r4, 4 /* 802D8CDC 002D493C 88 DF 00 0A */ lbz r6, 0xa(r31) /* 802D8CE0 002D4940 54 A4 40 2E */ slwi r4, r5, 8 /* 802D8CE4 002D4944 B0 1B 00 04 */ sth r0, 4(r27) /* 802D8CE8 002D4948 7C 06 22 14 */ add r0, r6, r4 /* 802D8CEC 002D494C 54 19 04 3E */ clrlwi r25, r0, 0x10 /* 802D8CF0 002D4950 88 1F 00 0F */ lbz r0, 0xf(r31) /* 802D8CF4 002D4954 88 9F 00 0E */ lbz r4, 0xe(r31) /* 802D8CF8 002D4958 54 00 40 2E */ slwi r0, r0, 8 /* 802D8CFC 002D495C 88 BF 00 0D */ lbz r5, 0xd(r31) /* 802D8D00 002D4960 7C 04 02 14 */ add r0, r4, r0 /* 802D8D04 002D4964 88 9F 00 0C */ lbz r4, 0xc(r31) /* 802D8D08 002D4968 54 1A 04 3E */ clrlwi r26, r0, 0x10 /* 802D8D0C 002D496C 54 A0 40 2E */ slwi r0, r5, 8 /* 802D8D10 002D4970 7C 04 02 14 */ add r0, r4, r0 /* 802D8D14 002D4974 28 1A 00 02 */ cmplwi r26, 2 /* 802D8D18 002D4978 54 18 04 3E */ clrlwi r24, r0, 0x10 /* 802D8D1C 002D497C 40 81 00 48 */ ble lbl_802D8D64 /* 802D8D20 002D4980 7F 44 D3 78 */ mr r4, r26 /* 802D8D24 002D4984 48 00 24 21 */ bl l2cu_find_ccb_by_cid /* 802D8D28 002D4988 2C 03 00 00 */ cmpwi r3, 0 /* 802D8D2C 002D498C 7C 7C 1B 78 */ mr r28, r3 /* 802D8D30 002D4990 40 82 00 34 */ bne lbl_802D8D64 /* 802D8D34 002D4994 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8D38 002D4998 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8D3C 002D499C 28 00 00 02 */ cmplwi r0, 2 /* 802D8D40 002D49A0 41 80 00 18 */ blt lbl_802D8D58 /* 802D8D44 002D49A4 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D8D48 002D49A8 7F 45 D3 78 */ mr r5, r26 /* 802D8D4C 002D49AC 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D8D50 002D49B0 38 9E 00 78 */ addi r4, r30, 0x78 /* 802D8D54 002D49B4 4B FE 41 D5 */ bl LogMsg_1 lbl_802D8D58: /* 802D8D58 002D49B8 7F 63 DB 78 */ mr r3, r27 /* 802D8D5C 002D49BC 4B FE 0F D9 */ bl GKI_freebuf /* 802D8D60 002D49C0 48 00 01 30 */ b lbl_802D8E90 lbl_802D8D64: /* 802D8D64 002D49C4 28 19 00 04 */ cmplwi r25, 4 /* 802D8D68 002D49C8 41 80 00 1C */ blt lbl_802D8D84 /* 802D8D6C 002D49CC A0 7B 00 04 */ lhz r3, 4(r27) /* 802D8D70 002D49D0 38 99 FF FC */ addi r4, r25, -4 /* 802D8D74 002D49D4 B0 9B 00 02 */ sth r4, 2(r27) /* 802D8D78 002D49D8 38 03 00 04 */ addi r0, r3, 4 /* 802D8D7C 002D49DC B0 1B 00 04 */ sth r0, 4(r27) /* 802D8D80 002D49E0 48 00 00 30 */ b lbl_802D8DB0 lbl_802D8D84: /* 802D8D84 002D49E4 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8D88 002D49E8 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8D8C 002D49EC 28 00 00 02 */ cmplwi r0, 2 /* 802D8D90 002D49F0 41 80 00 14 */ blt lbl_802D8DA4 /* 802D8D94 002D49F4 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D8D98 002D49F8 38 9E 00 90 */ addi r4, r30, 0x90 /* 802D8D9C 002D49FC 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D8DA0 002D4A00 4B FE 41 71 */ bl LogMsg_0 lbl_802D8DA4: /* 802D8DA4 002D4A04 7F 63 DB 78 */ mr r3, r27 /* 802D8DA8 002D4A08 4B FE 0F 8D */ bl GKI_freebuf /* 802D8DAC 002D4A0C 48 00 00 E4 */ b lbl_802D8E90 lbl_802D8DB0: /* 802D8DB0 002D4A10 54 86 04 3E */ clrlwi r6, r4, 0x10 /* 802D8DB4 002D4A14 7C 18 30 40 */ cmplw r24, r6 /* 802D8DB8 002D4A18 41 82 00 34 */ beq lbl_802D8DEC /* 802D8DBC 002D4A1C 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8DC0 002D4A20 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8DC4 002D4A24 28 00 00 02 */ cmplwi r0, 2 /* 802D8DC8 002D4A28 41 80 00 18 */ blt lbl_802D8DE0 /* 802D8DCC 002D4A2C 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D8DD0 002D4A30 7F 05 C3 78 */ mr r5, r24 /* 802D8DD4 002D4A34 38 9E 00 B4 */ addi r4, r30, 0xb4 /* 802D8DD8 002D4A38 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D8DDC 002D4A3C 4B FE 41 65 */ bl LogMsg_2 lbl_802D8DE0: /* 802D8DE0 002D4A40 7F 63 DB 78 */ mr r3, r27 /* 802D8DE4 002D4A44 4B FE 0F 51 */ bl GKI_freebuf /* 802D8DE8 002D4A48 48 00 00 A8 */ b lbl_802D8E90 lbl_802D8DEC: /* 802D8DEC 002D4A4C 28 1A 00 01 */ cmplwi r26, 1 /* 802D8DF0 002D4A50 40 82 00 20 */ bne lbl_802D8E10 /* 802D8DF4 002D4A54 7F A3 EB 78 */ mr r3, r29 /* 802D8DF8 002D4A58 7F 05 C3 78 */ mr r5, r24 /* 802D8DFC 002D4A5C 38 9F 00 10 */ addi r4, r31, 0x10 /* 802D8E00 002D4A60 48 00 00 A9 */ bl process_l2cap_cmd /* 802D8E04 002D4A64 7F 63 DB 78 */ mr r3, r27 /* 802D8E08 002D4A68 4B FE 0F 2D */ bl GKI_freebuf /* 802D8E0C 002D4A6C 48 00 00 84 */ b lbl_802D8E90 lbl_802D8E10: /* 802D8E10 002D4A70 28 1A 00 02 */ cmplwi r26, 2 /* 802D8E14 002D4A74 40 82 00 58 */ bne lbl_802D8E6C /* 802D8E18 002D4A78 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802D8E1C 002D4A7C 88 9F 00 11 */ lbz r4, 0x11(r31) /* 802D8E20 002D4A80 88 BF 00 10 */ lbz r5, 0x10(r31) /* 802D8E24 002D4A84 38 63 00 02 */ addi r3, r3, 2 /* 802D8E28 002D4A88 38 06 FF FE */ addi r0, r6, -2 /* 802D8E2C 002D4A8C 54 84 40 2E */ slwi r4, r4, 8 /* 802D8E30 002D4A90 B0 7B 00 04 */ sth r3, 4(r27) /* 802D8E34 002D4A94 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8E38 002D4A98 7C 85 22 14 */ add r4, r5, r4 /* 802D8E3C 002D4A9C B0 1B 00 02 */ sth r0, 2(r27) /* 802D8E40 002D4AA0 54 85 04 3E */ clrlwi r5, r4, 0x10 /* 802D8E44 002D4AA4 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8E48 002D4AA8 28 00 00 05 */ cmplwi r0, 5 /* 802D8E4C 002D4AAC 41 80 00 14 */ blt lbl_802D8E60 /* 802D8E50 002D4AB0 3C 60 00 08 */ lis r3, 0x00080004@ha /* 802D8E54 002D4AB4 38 9E 00 E0 */ addi r4, r30, 0xe0 /* 802D8E58 002D4AB8 38 63 00 04 */ addi r3, r3, 0x00080004@l /* 802D8E5C 002D4ABC 4B FE 40 CD */ bl LogMsg_1 lbl_802D8E60: /* 802D8E60 002D4AC0 7F 63 DB 78 */ mr r3, r27 /* 802D8E64 002D4AC4 4B FE 0E D1 */ bl GKI_freebuf /* 802D8E68 002D4AC8 48 00 00 28 */ b lbl_802D8E90 lbl_802D8E6C: /* 802D8E6C 002D4ACC 2C 1C 00 00 */ cmpwi r28, 0 /* 802D8E70 002D4AD0 40 82 00 10 */ bne lbl_802D8E80 /* 802D8E74 002D4AD4 7F 63 DB 78 */ mr r3, r27 /* 802D8E78 002D4AD8 4B FE 0E BD */ bl GKI_freebuf /* 802D8E7C 002D4ADC 48 00 00 14 */ b lbl_802D8E90 lbl_802D8E80: /* 802D8E80 002D4AE0 7F 83 E3 78 */ mr r3, r28 /* 802D8E84 002D4AE4 7F 65 DB 78 */ mr r5, r27 /* 802D8E88 002D4AE8 38 80 00 13 */ li r4, 0x13 /* 802D8E8C 002D4AEC 4B FF D5 71 */ bl l2c_csm_execute lbl_802D8E90: /* 802D8E90 002D4AF0 39 61 00 30 */ addi r11, r1, 0x30 /* 802D8E94 002D4AF4 4B EE E2 D5 */ bl _restgpr_24 /* 802D8E98 002D4AF8 80 01 00 34 */ lwz r0, 0x34(r1) /* 802D8E9C 002D4AFC 7C 08 03 A6 */ mtlr r0 /* 802D8EA0 002D4B00 38 21 00 30 */ addi r1, r1, 0x30 /* 802D8EA4 002D4B04 4E 80 00 20 */ blr .global process_l2cap_cmd process_l2cap_cmd: /* 802D8EA8 002D4B08 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 802D8EAC 002D4B0C 7C 08 02 A6 */ mflr r0 /* 802D8EB0 002D4B10 90 01 00 A4 */ stw r0, 0xa4(r1) /* 802D8EB4 002D4B14 39 61 00 A0 */ addi r11, r1, 0xa0 /* 802D8EB8 002D4B18 4B EE E2 3D */ bl __save_gpr /* 802D8EBC 002D4B1C 7E C4 2A 14 */ add r22, r4, r5 /* 802D8EC0 002D4B20 3E E0 80 44 */ lis r23, lbl_80443E78@ha /* 802D8EC4 002D4B24 3F C0 80 57 */ lis r30, lbl_80568650@ha /* 802D8EC8 002D4B28 7C 95 23 78 */ mr r21, r4 /* 802D8ECC 002D4B2C 3B E0 00 00 */ li r31, 0 /* 802D8ED0 002D4B30 7C 6F 1B 78 */ mr r15, r3 /* 802D8ED4 002D4B34 7C AE 2B 78 */ mr r14, r5 /* 802D8ED8 002D4B38 3A F7 3E 78 */ addi r23, r23, lbl_80443E78@l /* 802D8EDC 002D4B3C 3B DE 86 50 */ addi r30, r30, lbl_80568650@l /* 802D8EE0 002D4B40 3B 16 FF FC */ addi r24, r22, -4 /* 802D8EE4 002D4B44 3B 80 00 01 */ li r28, 1 /* 802D8EE8 002D4B48 3F A0 00 08 */ lis r29, 8 /* 802D8EEC 002D4B4C 3F 60 80 57 */ lis r27, 0x8057 /* 802D8EF0 002D4B50 3F 40 80 44 */ lis r26, 0x8044 lbl_802D8EF4: /* 802D8EF4 002D4B54 7C 15 C0 40 */ cmplw r21, r24 /* 802D8EF8 002D4B58 7E B0 AB 78 */ mr r16, r21 /* 802D8EFC 002D4B5C 41 81 0A 04 */ bgt lbl_802D9900 /* 802D8F00 002D4B60 88 15 00 03 */ lbz r0, 3(r21) /* 802D8F04 002D4B64 88 75 00 02 */ lbz r3, 2(r21) /* 802D8F08 002D4B68 54 00 40 2E */ slwi r0, r0, 8 /* 802D8F0C 002D4B6C 88 F5 00 00 */ lbz r7, 0(r21) /* 802D8F10 002D4B70 7C 03 02 14 */ add r0, r3, r0 /* 802D8F14 002D4B74 8B 35 00 01 */ lbz r25, 1(r21) /* 802D8F18 002D4B78 54 11 04 3E */ clrlwi r17, r0, 0x10 /* 802D8F1C 002D4B7C 7C 75 8A 14 */ add r3, r21, r17 /* 802D8F20 002D4B80 3A A3 00 04 */ addi r21, r3, 4 /* 802D8F24 002D4B84 7C 15 B0 40 */ cmplw r21, r22 /* 802D8F28 002D4B88 40 81 00 30 */ ble lbl_802D8F58 /* 802D8F2C 002D4B8C 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D8F30 002D4B90 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D8F34 002D4B94 28 00 00 02 */ cmplwi r0, 2 /* 802D8F38 002D4B98 41 80 09 C8 */ blt lbl_802D9900 /* 802D8F3C 002D4B9C 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D8F40 002D4BA0 7D C5 73 78 */ mr r5, r14 /* 802D8F44 002D4BA4 7E 26 8B 78 */ mr r6, r17 /* 802D8F48 002D4BA8 38 97 01 00 */ addi r4, r23, 0x100 /* 802D8F4C 002D4BAC 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D8F50 002D4BB0 4B FE 40 09 */ bl LogMsg_3 /* 802D8F54 002D4BB4 48 00 09 AC */ b lbl_802D9900 lbl_802D8F58: /* 802D8F58 002D4BB8 28 07 00 0B */ cmplwi r7, 0xb /* 802D8F5C 002D4BBC 41 81 09 68 */ bgt lbl_802D98C4 /* 802D8F60 002D4BC0 38 7A 41 1C */ addi r3, r26, 0x411c /* 802D8F64 002D4BC4 54 E0 10 3A */ slwi r0, r7, 2 /* 802D8F68 002D4BC8 7C 63 00 2E */ lwzx r3, r3, r0 /* 802D8F6C 002D4BCC 7C 69 03 A6 */ mtctr r3 /* 802D8F70 002D4BD0 4E 80 04 20 */ bctr /* 802D8F74 002D4BD4 88 10 00 05 */ lbz r0, 5(r16) /* 802D8F78 002D4BD8 88 70 00 04 */ lbz r3, 4(r16) /* 802D8F7C 002D4BDC 3A 10 00 06 */ addi r16, r16, 6 /* 802D8F80 002D4BE0 54 00 40 2E */ slwi r0, r0, 8 /* 802D8F84 002D4BE4 7C 03 02 14 */ add r0, r3, r0 /* 802D8F88 002D4BE8 54 11 04 3E */ clrlwi r17, r0, 0x10 /* 802D8F8C 002D4BEC 28 11 00 01 */ cmplwi r17, 1 /* 802D8F90 002D4BF0 40 82 00 38 */ bne lbl_802D8FC8 /* 802D8F94 002D4BF4 88 70 00 01 */ lbz r3, 1(r16) /* 802D8F98 002D4BF8 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D8F9C 002D4BFC 88 90 00 00 */ lbz r4, 0(r16) /* 802D8FA0 002D4C00 54 63 40 2E */ slwi r3, r3, 8 /* 802D8FA4 002D4C04 28 00 00 02 */ cmplwi r0, 2 /* 802D8FA8 002D4C08 3A 10 00 02 */ addi r16, r16, 2 /* 802D8FAC 002D4C0C 7C 04 1A 14 */ add r0, r4, r3 /* 802D8FB0 002D4C10 54 06 04 3E */ clrlwi r6, r0, 0x10 /* 802D8FB4 002D4C14 41 80 00 14 */ blt lbl_802D8FC8 /* 802D8FB8 002D4C18 A0 AF 00 28 */ lhz r5, 0x28(r15) /* 802D8FBC 002D4C1C 38 7D 00 01 */ addi r3, r29, 1 /* 802D8FC0 002D4C20 38 97 01 34 */ addi r4, r23, 0x134 /* 802D8FC4 002D4C24 4B FE 3F 7D */ bl LogMsg_2 lbl_802D8FC8: /* 802D8FC8 002D4C28 28 11 00 02 */ cmplwi r17, 2 /* 802D8FCC 002D4C2C 40 82 FF 28 */ bne lbl_802D8EF4 /* 802D8FD0 002D4C30 88 90 00 01 */ lbz r4, 1(r16) /* 802D8FD4 002D4C34 88 70 00 03 */ lbz r3, 3(r16) /* 802D8FD8 002D4C38 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D8FDC 002D4C3C 54 85 40 2E */ slwi r5, r4, 8 /* 802D8FE0 002D4C40 88 D0 00 00 */ lbz r6, 0(r16) /* 802D8FE4 002D4C44 54 63 40 2E */ slwi r3, r3, 8 /* 802D8FE8 002D4C48 88 90 00 02 */ lbz r4, 2(r16) /* 802D8FEC 002D4C4C 28 00 00 02 */ cmplwi r0, 2 /* 802D8FF0 002D4C50 7C A6 2A 14 */ add r5, r6, r5 /* 802D8FF4 002D4C54 7C 04 1A 14 */ add r0, r4, r3 /* 802D8FF8 002D4C58 54 B1 04 3E */ clrlwi r17, r5, 0x10 /* 802D8FFC 002D4C5C 54 10 04 3E */ clrlwi r16, r0, 0x10 /* 802D9000 002D4C60 41 80 00 18 */ blt lbl_802D9018 /* 802D9004 002D4C64 7E 05 83 78 */ mr r5, r16 /* 802D9008 002D4C68 7E 26 8B 78 */ mr r6, r17 /* 802D900C 002D4C6C 38 7D 00 01 */ addi r3, r29, 1 /* 802D9010 002D4C70 38 97 01 58 */ addi r4, r23, 0x158 /* 802D9014 002D4C74 4B FE 3F 2D */ bl LogMsg_2 lbl_802D9018: /* 802D9018 002D4C78 7D E3 7B 78 */ mr r3, r15 /* 802D901C 002D4C7C 7E 04 83 78 */ mr r4, r16 /* 802D9020 002D4C80 48 00 21 25 */ bl l2cu_find_ccb_by_cid /* 802D9024 002D4C84 2C 03 00 00 */ cmpwi r3, 0 /* 802D9028 002D4C88 41 82 FE CC */ beq lbl_802D8EF4 /* 802D902C 002D4C8C A0 03 00 16 */ lhz r0, 0x16(r3) /* 802D9030 002D4C90 7C 00 88 40 */ cmplw r0, r17 /* 802D9034 002D4C94 40 82 FE C0 */ bne lbl_802D8EF4 /* 802D9038 002D4C98 38 80 00 03 */ li r4, 3 /* 802D903C 002D4C9C 38 A0 00 00 */ li r5, 0 /* 802D9040 002D4CA0 4B FF D3 BD */ bl l2c_csm_execute /* 802D9044 002D4CA4 4B FF FE B0 */ b lbl_802D8EF4 /* 802D9048 002D4CA8 88 10 00 05 */ lbz r0, 5(r16) /* 802D904C 002D4CAC 88 70 00 04 */ lbz r3, 4(r16) /* 802D9050 002D4CB0 54 00 40 2E */ slwi r0, r0, 8 /* 802D9054 002D4CB4 7C 03 02 14 */ add r0, r3, r0 /* 802D9058 002D4CB8 B0 01 00 10 */ sth r0, 0x10(r1) /* 802D905C 002D4CBC 54 03 04 3E */ clrlwi r3, r0, 0x10 /* 802D9060 002D4CC0 88 10 00 07 */ lbz r0, 7(r16) /* 802D9064 002D4CC4 88 90 00 06 */ lbz r4, 6(r16) /* 802D9068 002D4CC8 54 00 40 2E */ slwi r0, r0, 8 /* 802D906C 002D4CCC 7C 04 02 14 */ add r0, r4, r0 /* 802D9070 002D4CD0 54 11 04 3E */ clrlwi r17, r0, 0x10 /* 802D9074 002D4CD4 48 00 21 89 */ bl l2cu_find_rcb_by_psm /* 802D9078 002D4CD8 2C 03 00 00 */ cmpwi r3, 0 /* 802D907C 002D4CDC 7C 70 1B 78 */ mr r16, r3 /* 802D9080 002D4CE0 40 82 00 38 */ bne lbl_802D90B8 /* 802D9084 002D4CE4 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D9088 002D4CE8 28 00 00 02 */ cmplwi r0, 2 /* 802D908C 002D4CEC 41 80 00 14 */ blt lbl_802D90A0 /* 802D9090 002D4CF0 A0 A1 00 10 */ lhz r5, 0x10(r1) /* 802D9094 002D4CF4 38 7D 00 01 */ addi r3, r29, 1 /* 802D9098 002D4CF8 38 97 01 88 */ addi r4, r23, 0x188 /* 802D909C 002D4CFC 4B FE 3E 8D */ bl LogMsg_1 lbl_802D90A0: /* 802D90A0 002D4D00 7D E3 7B 78 */ mr r3, r15 /* 802D90A4 002D4D04 7E 24 8B 78 */ mr r4, r17 /* 802D90A8 002D4D08 7F 25 CB 78 */ mr r5, r25 /* 802D90AC 002D4D0C 38 C0 00 02 */ li r6, 2 /* 802D90B0 002D4D10 48 00 10 3D */ bl l2cu_reject_connection /* 802D90B4 002D4D14 4B FF FE 40 */ b lbl_802D8EF4 lbl_802D90B8: /* 802D90B8 002D4D18 7D E3 7B 78 */ mr r3, r15 /* 802D90BC 002D4D1C 48 00 1D D9 */ bl l2cu_allocate_ccb /* 802D90C0 002D4D20 2C 03 00 00 */ cmpwi r3, 0 /* 802D90C4 002D4D24 40 82 00 34 */ bne lbl_802D90F8 /* 802D90C8 002D4D28 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D90CC 002D4D2C 28 00 00 01 */ cmplwi r0, 1 /* 802D90D0 002D4D30 41 80 00 10 */ blt lbl_802D90E0 /* 802D90D4 002D4D34 38 97 01 B4 */ addi r4, r23, 0x1b4 /* 802D90D8 002D4D38 3C 60 00 08 */ lis r3, 8 /* 802D90DC 002D4D3C 4B FE 3E 35 */ bl LogMsg_0 lbl_802D90E0: /* 802D90E0 002D4D40 7D E3 7B 78 */ mr r3, r15 /* 802D90E4 002D4D44 7E 24 8B 78 */ mr r4, r17 /* 802D90E8 002D4D48 7F 25 CB 78 */ mr r5, r25 /* 802D90EC 002D4D4C 38 C0 00 04 */ li r6, 4 /* 802D90F0 002D4D50 48 00 0F FD */ bl l2cu_reject_connection /* 802D90F4 002D4D54 4B FF FE 00 */ b lbl_802D8EF4 lbl_802D90F8: /* 802D90F8 002D4D58 9B 23 00 36 */ stb r25, 0x36(r3) /* 802D90FC 002D4D5C 38 A1 00 08 */ addi r5, r1, 8 /* 802D9100 002D4D60 38 80 00 0A */ li r4, 0xa /* 802D9104 002D4D64 92 03 00 30 */ stw r16, 0x30(r3) /* 802D9108 002D4D68 B2 23 00 16 */ sth r17, 0x16(r3) /* 802D910C 002D4D6C 4B FF D2 F1 */ bl l2c_csm_execute /* 802D9110 002D4D70 4B FF FD E4 */ b lbl_802D8EF4 /* 802D9114 002D4D74 88 10 00 05 */ lbz r0, 5(r16) /* 802D9118 002D4D78 7D E3 7B 78 */ mr r3, r15 /* 802D911C 002D4D7C 88 90 00 04 */ lbz r4, 4(r16) /* 802D9120 002D4D80 54 00 40 2E */ slwi r0, r0, 8 /* 802D9124 002D4D84 7C 04 02 14 */ add r0, r4, r0 /* 802D9128 002D4D88 B0 01 00 16 */ sth r0, 0x16(r1) /* 802D912C 002D4D8C 88 10 00 09 */ lbz r0, 9(r16) /* 802D9130 002D4D90 88 90 00 08 */ lbz r4, 8(r16) /* 802D9134 002D4D94 54 00 40 2E */ slwi r0, r0, 8 /* 802D9138 002D4D98 88 B0 00 07 */ lbz r5, 7(r16) /* 802D913C 002D4D9C 7C 04 02 14 */ add r0, r4, r0 /* 802D9140 002D4DA0 88 D0 00 06 */ lbz r6, 6(r16) /* 802D9144 002D4DA4 54 A4 40 2E */ slwi r4, r5, 8 /* 802D9148 002D4DA8 B0 01 00 12 */ sth r0, 0x12(r1) /* 802D914C 002D4DAC 7C 06 22 14 */ add r0, r6, r4 /* 802D9150 002D4DB0 54 11 04 3E */ clrlwi r17, r0, 0x10 /* 802D9154 002D4DB4 88 10 00 0B */ lbz r0, 0xb(r16) /* 802D9158 002D4DB8 7E 24 8B 78 */ mr r4, r17 /* 802D915C 002D4DBC 88 B0 00 0A */ lbz r5, 0xa(r16) /* 802D9160 002D4DC0 54 00 40 2E */ slwi r0, r0, 8 /* 802D9164 002D4DC4 7C 05 02 14 */ add r0, r5, r0 /* 802D9168 002D4DC8 B0 01 00 14 */ sth r0, 0x14(r1) /* 802D916C 002D4DCC 48 00 1F D9 */ bl l2cu_find_ccb_by_cid /* 802D9170 002D4DD0 2C 03 00 00 */ cmpwi r3, 0 /* 802D9174 002D4DD4 40 82 00 28 */ bne lbl_802D919C /* 802D9178 002D4DD8 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D917C 002D4DDC 28 00 00 02 */ cmplwi r0, 2 /* 802D9180 002D4DE0 41 80 FD 74 */ blt lbl_802D8EF4 /* 802D9184 002D4DE4 A0 C1 00 16 */ lhz r6, 0x16(r1) /* 802D9188 002D4DE8 7E 25 8B 78 */ mr r5, r17 /* 802D918C 002D4DEC 38 7D 00 01 */ addi r3, r29, 1 /* 802D9190 002D4DF0 38 97 01 D4 */ addi r4, r23, 0x1d4 /* 802D9194 002D4DF4 4B FE 3D AD */ bl LogMsg_2 /* 802D9198 002D4DF8 4B FF FD 5C */ b lbl_802D8EF4 lbl_802D919C: /* 802D919C 002D4DFC 88 A3 00 35 */ lbz r5, 0x35(r3) /* 802D91A0 002D4E00 7C 05 C8 40 */ cmplw r5, r25 /* 802D91A4 002D4E04 41 82 00 24 */ beq lbl_802D91C8 /* 802D91A8 002D4E08 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D91AC 002D4E0C 28 00 00 02 */ cmplwi r0, 2 /* 802D91B0 002D4E10 41 80 FD 44 */ blt lbl_802D8EF4 /* 802D91B4 002D4E14 7F 26 CB 78 */ mr r6, r25 /* 802D91B8 002D4E18 38 7D 00 01 */ addi r3, r29, 1 /* 802D91BC 002D4E1C 38 97 02 04 */ addi r4, r23, 0x204 /* 802D91C0 002D4E20 4B FE 3D 81 */ bl LogMsg_2 /* 802D91C4 002D4E24 4B FF FD 30 */ b lbl_802D8EF4 lbl_802D91C8: /* 802D91C8 002D4E28 A0 01 00 12 */ lhz r0, 0x12(r1) /* 802D91CC 002D4E2C 2C 00 00 00 */ cmpwi r0, 0 /* 802D91D0 002D4E30 40 82 00 14 */ bne lbl_802D91E4 /* 802D91D4 002D4E34 38 A1 00 08 */ addi r5, r1, 8 /* 802D91D8 002D4E38 38 80 00 0B */ li r4, 0xb /* 802D91DC 002D4E3C 4B FF D2 21 */ bl l2c_csm_execute /* 802D91E0 002D4E40 4B FF FD 14 */ b lbl_802D8EF4 lbl_802D91E4: /* 802D91E4 002D4E44 28 00 00 01 */ cmplwi r0, 1 /* 802D91E8 002D4E48 40 82 00 14 */ bne lbl_802D91FC /* 802D91EC 002D4E4C 38 A1 00 08 */ addi r5, r1, 8 /* 802D91F0 002D4E50 38 80 00 0C */ li r4, 0xc /* 802D91F4 002D4E54 4B FF D2 09 */ bl l2c_csm_execute /* 802D91F8 002D4E58 4B FF FC FC */ b lbl_802D8EF4 lbl_802D91FC: /* 802D91FC 002D4E5C 38 A1 00 08 */ addi r5, r1, 8 /* 802D9200 002D4E60 38 80 00 0D */ li r4, 0xd /* 802D9204 002D4E64 4B FF D1 F9 */ bl l2c_csm_execute /* 802D9208 002D4E68 4B FF FC EC */ b lbl_802D8EF4 /* 802D920C 002D4E6C 88 10 00 07 */ lbz r0, 7(r16) /* 802D9210 002D4E70 3A 60 00 00 */ li r19, 0 /* 802D9214 002D4E74 88 90 00 05 */ lbz r4, 5(r16) /* 802D9218 002D4E78 3A 40 00 00 */ li r18, 0 /* 802D921C 002D4E7C 88 70 00 06 */ lbz r3, 6(r16) /* 802D9220 002D4E80 54 00 40 2E */ slwi r0, r0, 8 /* 802D9224 002D4E84 88 B0 00 04 */ lbz r5, 4(r16) /* 802D9228 002D4E88 54 84 40 2E */ slwi r4, r4, 8 /* 802D922C 002D4E8C 7C 03 02 14 */ add r0, r3, r0 /* 802D9230 002D4E90 3A 10 00 08 */ addi r16, r16, 8 /* 802D9234 002D4E94 7C 65 22 14 */ add r3, r5, r4 /* 802D9238 002D4E98 B0 01 00 50 */ sth r0, 0x50(r1) /* 802D923C 002D4E9C 7E 14 83 78 */ mr r20, r16 /* 802D9240 002D4EA0 9A 61 00 3C */ stb r19, 0x3c(r1) /* 802D9244 002D4EA4 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 802D9248 002D4EA8 9A 61 00 1E */ stb r19, 0x1e(r1) /* 802D924C 002D4EAC 9A 61 00 1A */ stb r19, 0x1a(r1) /* 802D9250 002D4EB0 9A 61 00 38 */ stb r19, 0x38(r1) /* 802D9254 002D4EB4 48 00 02 00 */ b lbl_802D9454 lbl_802D9258: /* 802D9258 002D4EB8 88 B0 00 00 */ lbz r5, 0(r16) /* 802D925C 002D4EBC 88 70 00 01 */ lbz r3, 1(r16) /* 802D9260 002D4EC0 3A 10 00 02 */ addi r16, r16, 2 /* 802D9264 002D4EC4 54 A0 06 7E */ clrlwi r0, r5, 0x19 /* 802D9268 002D4EC8 2C 00 00 03 */ cmpwi r0, 3 /* 802D926C 002D4ECC 41 82 00 64 */ beq lbl_802D92D0 /* 802D9270 002D4ED0 40 80 00 14 */ bge lbl_802D9284 /* 802D9274 002D4ED4 2C 00 00 01 */ cmpwi r0, 1 /* 802D9278 002D4ED8 41 82 00 18 */ beq lbl_802D9290 /* 802D927C 002D4EDC 40 80 00 34 */ bge lbl_802D92B0 /* 802D9280 002D4EE0 48 00 01 A8 */ b lbl_802D9428 lbl_802D9284: /* 802D9284 002D4EE4 2C 00 00 05 */ cmpwi r0, 5 /* 802D9288 002D4EE8 40 80 01 A0 */ bge lbl_802D9428 /* 802D928C 002D4EEC 48 00 01 3C */ b lbl_802D93C8 lbl_802D9290: /* 802D9290 002D4EF0 9B 81 00 1A */ stb r28, 0x1a(r1) /* 802D9294 002D4EF4 88 10 00 01 */ lbz r0, 1(r16) /* 802D9298 002D4EF8 88 70 00 00 */ lbz r3, 0(r16) /* 802D929C 002D4EFC 3A 10 00 02 */ addi r16, r16, 2 /* 802D92A0 002D4F00 54 00 40 2E */ slwi r0, r0, 8 /* 802D92A4 002D4F04 7C 03 02 14 */ add r0, r3, r0 /* 802D92A8 002D4F08 B0 01 00 1C */ sth r0, 0x1c(r1) /* 802D92AC 002D4F0C 48 00 01 A8 */ b lbl_802D9454 lbl_802D92B0: /* 802D92B0 002D4F10 9B 81 00 38 */ stb r28, 0x38(r1) /* 802D92B4 002D4F14 88 10 00 01 */ lbz r0, 1(r16) /* 802D92B8 002D4F18 88 70 00 00 */ lbz r3, 0(r16) /* 802D92BC 002D4F1C 3A 10 00 02 */ addi r16, r16, 2 /* 802D92C0 002D4F20 54 00 40 2E */ slwi r0, r0, 8 /* 802D92C4 002D4F24 7C 03 02 14 */ add r0, r3, r0 /* 802D92C8 002D4F28 B0 01 00 3A */ sth r0, 0x3a(r1) /* 802D92CC 002D4F2C 48 00 01 88 */ b lbl_802D9454 lbl_802D92D0: /* 802D92D0 002D4F30 9B 81 00 1E */ stb r28, 0x1e(r1) /* 802D92D4 002D4F34 88 10 00 00 */ lbz r0, 0(r16) /* 802D92D8 002D4F38 98 01 00 20 */ stb r0, 0x20(r1) /* 802D92DC 002D4F3C 88 10 00 01 */ lbz r0, 1(r16) /* 802D92E0 002D4F40 98 01 00 21 */ stb r0, 0x21(r1) /* 802D92E4 002D4F44 88 70 00 05 */ lbz r3, 5(r16) /* 802D92E8 002D4F48 88 B0 00 04 */ lbz r5, 4(r16) /* 802D92EC 002D4F4C 88 10 00 03 */ lbz r0, 3(r16) /* 802D92F0 002D4F50 54 66 C0 0E */ slwi r6, r3, 0x18 /* 802D92F4 002D4F54 88 70 00 02 */ lbz r3, 2(r16) /* 802D92F8 002D4F58 54 A5 80 1E */ slwi r5, r5, 0x10 /* 802D92FC 002D4F5C 54 00 40 2E */ slwi r0, r0, 8 /* 802D9300 002D4F60 7C 65 1A 14 */ add r3, r5, r3 /* 802D9304 002D4F64 7C 06 02 14 */ add r0, r6, r0 /* 802D9308 002D4F68 7C 03 02 14 */ add r0, r3, r0 /* 802D930C 002D4F6C 90 01 00 24 */ stw r0, 0x24(r1) /* 802D9310 002D4F70 88 70 00 09 */ lbz r3, 9(r16) /* 802D9314 002D4F74 88 B0 00 08 */ lbz r5, 8(r16) /* 802D9318 002D4F78 88 10 00 07 */ lbz r0, 7(r16) /* 802D931C 002D4F7C 54 66 C0 0E */ slwi r6, r3, 0x18 /* 802D9320 002D4F80 88 70 00 06 */ lbz r3, 6(r16) /* 802D9324 002D4F84 54 A5 80 1E */ slwi r5, r5, 0x10 /* 802D9328 002D4F88 54 00 40 2E */ slwi r0, r0, 8 /* 802D932C 002D4F8C 7C 65 1A 14 */ add r3, r5, r3 /* 802D9330 002D4F90 7C 06 02 14 */ add r0, r6, r0 /* 802D9334 002D4F94 7C 03 02 14 */ add r0, r3, r0 /* 802D9338 002D4F98 90 01 00 28 */ stw r0, 0x28(r1) /* 802D933C 002D4F9C 88 70 00 0D */ lbz r3, 0xd(r16) /* 802D9340 002D4FA0 88 B0 00 0C */ lbz r5, 0xc(r16) /* 802D9344 002D4FA4 88 10 00 0B */ lbz r0, 0xb(r16) /* 802D9348 002D4FA8 54 66 C0 0E */ slwi r6, r3, 0x18 /* 802D934C 002D4FAC 88 70 00 0A */ lbz r3, 0xa(r16) /* 802D9350 002D4FB0 54 A5 80 1E */ slwi r5, r5, 0x10 /* 802D9354 002D4FB4 54 00 40 2E */ slwi r0, r0, 8 /* 802D9358 002D4FB8 7C 65 1A 14 */ add r3, r5, r3 /* 802D935C 002D4FBC 7C 06 02 14 */ add r0, r6, r0 /* 802D9360 002D4FC0 7C 03 02 14 */ add r0, r3, r0 /* 802D9364 002D4FC4 90 01 00 2C */ stw r0, 0x2c(r1) /* 802D9368 002D4FC8 88 70 00 11 */ lbz r3, 0x11(r16) /* 802D936C 002D4FCC 88 B0 00 10 */ lbz r5, 0x10(r16) /* 802D9370 002D4FD0 88 10 00 0F */ lbz r0, 0xf(r16) /* 802D9374 002D4FD4 54 66 C0 0E */ slwi r6, r3, 0x18 /* 802D9378 002D4FD8 88 70 00 0E */ lbz r3, 0xe(r16) /* 802D937C 002D4FDC 54 A5 80 1E */ slwi r5, r5, 0x10 /* 802D9380 002D4FE0 54 00 40 2E */ slwi r0, r0, 8 /* 802D9384 002D4FE4 7C 65 1A 14 */ add r3, r5, r3 /* 802D9388 002D4FE8 7C 06 02 14 */ add r0, r6, r0 /* 802D938C 002D4FEC 7C 03 02 14 */ add r0, r3, r0 /* 802D9390 002D4FF0 90 01 00 30 */ stw r0, 0x30(r1) /* 802D9394 002D4FF4 88 70 00 15 */ lbz r3, 0x15(r16) /* 802D9398 002D4FF8 88 B0 00 14 */ lbz r5, 0x14(r16) /* 802D939C 002D4FFC 88 10 00 13 */ lbz r0, 0x13(r16) /* 802D93A0 002D5000 54 66 C0 0E */ slwi r6, r3, 0x18 /* 802D93A4 002D5004 88 70 00 12 */ lbz r3, 0x12(r16) /* 802D93A8 002D5008 54 A5 80 1E */ slwi r5, r5, 0x10 /* 802D93AC 002D500C 54 00 40 2E */ slwi r0, r0, 8 /* 802D93B0 002D5010 3A 10 00 16 */ addi r16, r16, 0x16 /* 802D93B4 002D5014 7C 65 1A 14 */ add r3, r5, r3 /* 802D93B8 002D5018 7C 06 02 14 */ add r0, r6, r0 /* 802D93BC 002D501C 7C 03 02 14 */ add r0, r3, r0 /* 802D93C0 002D5020 90 01 00 34 */ stw r0, 0x34(r1) /* 802D93C4 002D5024 48 00 00 90 */ b lbl_802D9454 lbl_802D93C8: /* 802D93C8 002D5028 9B 81 00 3C */ stb r28, 0x3c(r1) /* 802D93CC 002D502C 88 10 00 00 */ lbz r0, 0(r16) /* 802D93D0 002D5030 98 01 00 3E */ stb r0, 0x3e(r1) /* 802D93D4 002D5034 88 10 00 01 */ lbz r0, 1(r16) /* 802D93D8 002D5038 98 01 00 3F */ stb r0, 0x3f(r1) /* 802D93DC 002D503C 88 10 00 02 */ lbz r0, 2(r16) /* 802D93E0 002D5040 98 01 00 40 */ stb r0, 0x40(r1) /* 802D93E4 002D5044 88 10 00 04 */ lbz r0, 4(r16) /* 802D93E8 002D5048 88 70 00 03 */ lbz r3, 3(r16) /* 802D93EC 002D504C 54 00 40 2E */ slwi r0, r0, 8 /* 802D93F0 002D5050 7C 03 02 14 */ add r0, r3, r0 /* 802D93F4 002D5054 B0 01 00 42 */ sth r0, 0x42(r1) /* 802D93F8 002D5058 88 10 00 06 */ lbz r0, 6(r16) /* 802D93FC 002D505C 88 70 00 05 */ lbz r3, 5(r16) /* 802D9400 002D5060 54 00 40 2E */ slwi r0, r0, 8 /* 802D9404 002D5064 7C 03 02 14 */ add r0, r3, r0 /* 802D9408 002D5068 B0 01 00 44 */ sth r0, 0x44(r1) /* 802D940C 002D506C 88 10 00 08 */ lbz r0, 8(r16) /* 802D9410 002D5070 88 70 00 07 */ lbz r3, 7(r16) /* 802D9414 002D5074 3A 10 00 09 */ addi r16, r16, 9 /* 802D9418 002D5078 54 00 40 2E */ slwi r0, r0, 8 /* 802D941C 002D507C 7C 03 02 14 */ add r0, r3, r0 /* 802D9420 002D5080 B0 01 00 46 */ sth r0, 0x46(r1) /* 802D9424 002D5084 48 00 00 30 */ b lbl_802D9454 lbl_802D9428: /* 802D9428 002D5088 38 C3 00 02 */ addi r6, r3, 2 /* 802D942C 002D508C 7C 06 88 00 */ cmpw r6, r17 /* 802D9430 002D5090 41 81 00 20 */ bgt lbl_802D9450 /* 802D9434 002D5094 54 A0 06 31 */ rlwinm. r0, r5, 0, 0x18, 0x18 /* 802D9438 002D5098 7E 10 1A 14 */ add r16, r16, r3 /* 802D943C 002D509C 40 82 00 18 */ bne lbl_802D9454 /* 802D9440 002D50A0 7C 12 32 14 */ add r0, r18, r6 /* 802D9444 002D50A4 3A 60 00 01 */ li r19, 1 /* 802D9448 002D50A8 54 12 04 3E */ clrlwi r18, r0, 0x10 /* 802D944C 002D50AC 48 00 00 08 */ b lbl_802D9454 lbl_802D9450: /* 802D9450 002D50B0 7E B0 AB 78 */ mr r16, r21 lbl_802D9454: /* 802D9454 002D50B4 7C 10 A8 40 */ cmplw r16, r21 /* 802D9458 002D50B8 41 80 FE 00 */ blt lbl_802D9258 /* 802D945C 002D50BC 7D E3 7B 78 */ mr r3, r15 /* 802D9460 002D50C0 48 00 1C E5 */ bl l2cu_find_ccb_by_cid /* 802D9464 002D50C4 2C 03 00 00 */ cmpwi r3, 0 /* 802D9468 002D50C8 41 82 00 38 */ beq lbl_802D94A0 /* 802D946C 002D50CC 2C 13 00 00 */ cmpwi r19, 0 /* 802D9470 002D50D0 9B 23 00 36 */ stb r25, 0x36(r3) /* 802D9474 002D50D4 41 82 00 1C */ beq lbl_802D9490 /* 802D9478 002D50D8 38 11 FF FC */ addi r0, r17, -4 /* 802D947C 002D50DC 7E 84 A3 78 */ mr r4, r20 /* 802D9480 002D50E0 7E 46 93 78 */ mr r6, r18 /* 802D9484 002D50E4 54 05 04 3E */ clrlwi r5, r0, 0x10 /* 802D9488 002D50E8 48 00 13 15 */ bl l2cu_send_peer_config_rej /* 802D948C 002D50EC 4B FF FA 68 */ b lbl_802D8EF4 lbl_802D9490: /* 802D9490 002D50F0 38 A1 00 18 */ addi r5, r1, 0x18 /* 802D9494 002D50F4 38 80 00 0E */ li r4, 0xe /* 802D9498 002D50F8 4B FF CF 65 */ bl l2c_csm_execute /* 802D949C 002D50FC 4B FF FA 58 */ b lbl_802D8EF4 lbl_802D94A0: /* 802D94A0 002D5100 7D E3 7B 78 */ mr r3, r15 /* 802D94A4 002D5104 7F 25 CB 78 */ mr r5, r25 /* 802D94A8 002D5108 38 80 00 02 */ li r4, 2 /* 802D94AC 002D510C 38 C0 00 00 */ li r6, 0 /* 802D94B0 002D5110 38 E0 00 00 */ li r7, 0 /* 802D94B4 002D5114 48 00 09 A1 */ bl l2cu_send_peer_cmd_reject /* 802D94B8 002D5118 4B FF FA 3C */ b lbl_802D8EF4 /* 802D94BC 002D511C 88 10 00 07 */ lbz r0, 7(r16) /* 802D94C0 002D5120 88 70 00 06 */ lbz r3, 6(r16) /* 802D94C4 002D5124 54 00 40 2E */ slwi r0, r0, 8 /* 802D94C8 002D5128 88 90 00 05 */ lbz r4, 5(r16) /* 802D94CC 002D512C 7C 03 02 14 */ add r0, r3, r0 /* 802D94D0 002D5130 88 B0 00 04 */ lbz r5, 4(r16) /* 802D94D4 002D5134 54 83 40 2E */ slwi r3, r4, 8 /* 802D94D8 002D5138 B0 01 00 50 */ sth r0, 0x50(r1) /* 802D94DC 002D513C 7C 05 1A 14 */ add r0, r5, r3 /* 802D94E0 002D5140 54 11 04 3E */ clrlwi r17, r0, 0x10 /* 802D94E4 002D5144 88 10 00 09 */ lbz r0, 9(r16) /* 802D94E8 002D5148 88 70 00 08 */ lbz r3, 8(r16) /* 802D94EC 002D514C 3A 10 00 0A */ addi r16, r16, 0xa /* 802D94F0 002D5150 54 00 40 2E */ slwi r0, r0, 8 /* 802D94F4 002D5154 7C 03 02 14 */ add r0, r3, r0 /* 802D94F8 002D5158 9B E1 00 1E */ stb r31, 0x1e(r1) /* 802D94FC 002D515C B0 01 00 18 */ sth r0, 0x18(r1) /* 802D9500 002D5160 9B E1 00 1A */ stb r31, 0x1a(r1) /* 802D9504 002D5164 9B E1 00 38 */ stb r31, 0x38(r1) /* 802D9508 002D5168 9B E1 00 3C */ stb r31, 0x3c(r1) /* 802D950C 002D516C 48 00 01 CC */ b lbl_802D96D8 lbl_802D9510: /* 802D9510 002D5170 88 10 00 00 */ lbz r0, 0(r16) /* 802D9514 002D5174 3A 10 00 02 */ addi r16, r16, 2 /* 802D9518 002D5178 54 00 06 7E */ clrlwi r0, r0, 0x19 /* 802D951C 002D517C 2C 00 00 03 */ cmpwi r0, 3 /* 802D9520 002D5180 41 82 00 64 */ beq lbl_802D9584 /* 802D9524 002D5184 40 80 00 14 */ bge lbl_802D9538 /* 802D9528 002D5188 2C 00 00 01 */ cmpwi r0, 1 /* 802D952C 002D518C 41 82 00 18 */ beq lbl_802D9544 /* 802D9530 002D5190 40 80 00 34 */ bge lbl_802D9564 /* 802D9534 002D5194 48 00 01 A4 */ b lbl_802D96D8 lbl_802D9538: /* 802D9538 002D5198 2C 00 00 05 */ cmpwi r0, 5 /* 802D953C 002D519C 40 80 01 9C */ bge lbl_802D96D8 /* 802D9540 002D51A0 48 00 01 3C */ b lbl_802D967C lbl_802D9544: /* 802D9544 002D51A4 9B 81 00 1A */ stb r28, 0x1a(r1) /* 802D9548 002D51A8 88 10 00 01 */ lbz r0, 1(r16) /* 802D954C 002D51AC 88 70 00 00 */ lbz r3, 0(r16) /* 802D9550 002D51B0 3A 10 00 02 */ addi r16, r16, 2 /* 802D9554 002D51B4 54 00 40 2E */ slwi r0, r0, 8 /* 802D9558 002D51B8 7C 03 02 14 */ add r0, r3, r0 /* 802D955C 002D51BC B0 01 00 1C */ sth r0, 0x1c(r1) /* 802D9560 002D51C0 48 00 01 78 */ b lbl_802D96D8 lbl_802D9564: /* 802D9564 002D51C4 9B 81 00 38 */ stb r28, 0x38(r1) /* 802D9568 002D51C8 88 10 00 01 */ lbz r0, 1(r16) /* 802D956C 002D51CC 88 70 00 00 */ lbz r3, 0(r16) /* 802D9570 002D51D0 3A 10 00 02 */ addi r16, r16, 2 /* 802D9574 002D51D4 54 00 40 2E */ slwi r0, r0, 8 /* 802D9578 002D51D8 7C 03 02 14 */ add r0, r3, r0 /* 802D957C 002D51DC B0 01 00 3A */ sth r0, 0x3a(r1) /* 802D9580 002D51E0 48 00 01 58 */ b lbl_802D96D8 lbl_802D9584: /* 802D9584 002D51E4 9B 81 00 1E */ stb r28, 0x1e(r1) /* 802D9588 002D51E8 88 10 00 00 */ lbz r0, 0(r16) /* 802D958C 002D51EC 98 01 00 20 */ stb r0, 0x20(r1) /* 802D9590 002D51F0 88 10 00 01 */ lbz r0, 1(r16) /* 802D9594 002D51F4 98 01 00 21 */ stb r0, 0x21(r1) /* 802D9598 002D51F8 88 70 00 05 */ lbz r3, 5(r16) /* 802D959C 002D51FC 88 90 00 04 */ lbz r4, 4(r16) /* 802D95A0 002D5200 88 10 00 03 */ lbz r0, 3(r16) /* 802D95A4 002D5204 54 65 C0 0E */ slwi r5, r3, 0x18 /* 802D95A8 002D5208 88 70 00 02 */ lbz r3, 2(r16) /* 802D95AC 002D520C 54 84 80 1E */ slwi r4, r4, 0x10 /* 802D95B0 002D5210 54 00 40 2E */ slwi r0, r0, 8 /* 802D95B4 002D5214 7C 64 1A 14 */ add r3, r4, r3 /* 802D95B8 002D5218 7C 05 02 14 */ add r0, r5, r0 /* 802D95BC 002D521C 7C 03 02 14 */ add r0, r3, r0 /* 802D95C0 002D5220 90 01 00 24 */ stw r0, 0x24(r1) /* 802D95C4 002D5224 88 70 00 09 */ lbz r3, 9(r16) /* 802D95C8 002D5228 88 90 00 08 */ lbz r4, 8(r16) /* 802D95CC 002D522C 88 10 00 07 */ lbz r0, 7(r16) /* 802D95D0 002D5230 54 65 C0 0E */ slwi r5, r3, 0x18 /* 802D95D4 002D5234 88 70 00 06 */ lbz r3, 6(r16) /* 802D95D8 002D5238 54 84 80 1E */ slwi r4, r4, 0x10 /* 802D95DC 002D523C 54 00 40 2E */ slwi r0, r0, 8 /* 802D95E0 002D5240 7C 64 1A 14 */ add r3, r4, r3 /* 802D95E4 002D5244 7C 05 02 14 */ add r0, r5, r0 /* 802D95E8 002D5248 7C 03 02 14 */ add r0, r3, r0 /* 802D95EC 002D524C 90 01 00 28 */ stw r0, 0x28(r1) /* 802D95F0 002D5250 88 70 00 0D */ lbz r3, 0xd(r16) /* 802D95F4 002D5254 88 90 00 0C */ lbz r4, 0xc(r16) /* 802D95F8 002D5258 88 10 00 0B */ lbz r0, 0xb(r16) /* 802D95FC 002D525C 54 65 C0 0E */ slwi r5, r3, 0x18 /* 802D9600 002D5260 88 70 00 0A */ lbz r3, 0xa(r16) /* 802D9604 002D5264 54 84 80 1E */ slwi r4, r4, 0x10 /* 802D9608 002D5268 54 00 40 2E */ slwi r0, r0, 8 /* 802D960C 002D526C 7C 64 1A 14 */ add r3, r4, r3 /* 802D9610 002D5270 7C 05 02 14 */ add r0, r5, r0 /* 802D9614 002D5274 7C 03 02 14 */ add r0, r3, r0 /* 802D9618 002D5278 90 01 00 2C */ stw r0, 0x2c(r1) /* 802D961C 002D527C 88 70 00 11 */ lbz r3, 0x11(r16) /* 802D9620 002D5280 88 90 00 10 */ lbz r4, 0x10(r16) /* 802D9624 002D5284 88 10 00 0F */ lbz r0, 0xf(r16) /* 802D9628 002D5288 54 65 C0 0E */ slwi r5, r3, 0x18 /* 802D962C 002D528C 88 70 00 0E */ lbz r3, 0xe(r16) /* 802D9630 002D5290 54 84 80 1E */ slwi r4, r4, 0x10 /* 802D9634 002D5294 54 00 40 2E */ slwi r0, r0, 8 /* 802D9638 002D5298 7C 64 1A 14 */ add r3, r4, r3 /* 802D963C 002D529C 7C 05 02 14 */ add r0, r5, r0 /* 802D9640 002D52A0 7C 03 02 14 */ add r0, r3, r0 /* 802D9644 002D52A4 90 01 00 30 */ stw r0, 0x30(r1) /* 802D9648 002D52A8 88 70 00 15 */ lbz r3, 0x15(r16) /* 802D964C 002D52AC 88 90 00 14 */ lbz r4, 0x14(r16) /* 802D9650 002D52B0 88 10 00 13 */ lbz r0, 0x13(r16) /* 802D9654 002D52B4 54 65 C0 0E */ slwi r5, r3, 0x18 /* 802D9658 002D52B8 88 70 00 12 */ lbz r3, 0x12(r16) /* 802D965C 002D52BC 54 84 80 1E */ slwi r4, r4, 0x10 /* 802D9660 002D52C0 54 00 40 2E */ slwi r0, r0, 8 /* 802D9664 002D52C4 3A 10 00 16 */ addi r16, r16, 0x16 /* 802D9668 002D52C8 7C 64 1A 14 */ add r3, r4, r3 /* 802D966C 002D52CC 7C 05 02 14 */ add r0, r5, r0 /* 802D9670 002D52D0 7C 03 02 14 */ add r0, r3, r0 /* 802D9674 002D52D4 90 01 00 34 */ stw r0, 0x34(r1) /* 802D9678 002D52D8 48 00 00 60 */ b lbl_802D96D8 lbl_802D967C: /* 802D967C 002D52DC 9B 81 00 3C */ stb r28, 0x3c(r1) /* 802D9680 002D52E0 88 10 00 00 */ lbz r0, 0(r16) /* 802D9684 002D52E4 98 01 00 3E */ stb r0, 0x3e(r1) /* 802D9688 002D52E8 88 10 00 01 */ lbz r0, 1(r16) /* 802D968C 002D52EC 98 01 00 3F */ stb r0, 0x3f(r1) /* 802D9690 002D52F0 88 10 00 02 */ lbz r0, 2(r16) /* 802D9694 002D52F4 98 01 00 40 */ stb r0, 0x40(r1) /* 802D9698 002D52F8 88 10 00 04 */ lbz r0, 4(r16) /* 802D969C 002D52FC 88 70 00 03 */ lbz r3, 3(r16) /* 802D96A0 002D5300 54 00 40 2E */ slwi r0, r0, 8 /* 802D96A4 002D5304 7C 03 02 14 */ add r0, r3, r0 /* 802D96A8 002D5308 B0 01 00 42 */ sth r0, 0x42(r1) /* 802D96AC 002D530C 88 10 00 06 */ lbz r0, 6(r16) /* 802D96B0 002D5310 88 70 00 05 */ lbz r3, 5(r16) /* 802D96B4 002D5314 54 00 40 2E */ slwi r0, r0, 8 /* 802D96B8 002D5318 7C 03 02 14 */ add r0, r3, r0 /* 802D96BC 002D531C B0 01 00 44 */ sth r0, 0x44(r1) /* 802D96C0 002D5320 88 10 00 08 */ lbz r0, 8(r16) /* 802D96C4 002D5324 88 70 00 07 */ lbz r3, 7(r16) /* 802D96C8 002D5328 3A 10 00 09 */ addi r16, r16, 9 /* 802D96CC 002D532C 54 00 40 2E */ slwi r0, r0, 8 /* 802D96D0 002D5330 7C 03 02 14 */ add r0, r3, r0 /* 802D96D4 002D5334 B0 01 00 46 */ sth r0, 0x46(r1) lbl_802D96D8: /* 802D96D8 002D5338 7C 10 A8 40 */ cmplw r16, r21 /* 802D96DC 002D533C 41 80 FE 34 */ blt lbl_802D9510 /* 802D96E0 002D5340 7D E3 7B 78 */ mr r3, r15 /* 802D96E4 002D5344 7E 24 8B 78 */ mr r4, r17 /* 802D96E8 002D5348 48 00 1A 5D */ bl l2cu_find_ccb_by_cid /* 802D96EC 002D534C 2C 03 00 00 */ cmpwi r3, 0 /* 802D96F0 002D5350 41 82 00 5C */ beq lbl_802D974C /* 802D96F4 002D5354 88 A3 00 35 */ lbz r5, 0x35(r3) /* 802D96F8 002D5358 7C 05 C8 40 */ cmplw r5, r25 /* 802D96FC 002D535C 41 82 00 24 */ beq lbl_802D9720 /* 802D9700 002D5360 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D9704 002D5364 28 00 00 02 */ cmplwi r0, 2 /* 802D9708 002D5368 41 80 F7 EC */ blt lbl_802D8EF4 /* 802D970C 002D536C 7F 26 CB 78 */ mr r6, r25 /* 802D9710 002D5370 38 7D 00 01 */ addi r3, r29, 1 /* 802D9714 002D5374 38 97 02 30 */ addi r4, r23, 0x230 /* 802D9718 002D5378 4B FE 38 29 */ bl LogMsg_2 /* 802D971C 002D537C 4B FF F7 D8 */ b lbl_802D8EF4 lbl_802D9720: /* 802D9720 002D5380 A0 01 00 18 */ lhz r0, 0x18(r1) /* 802D9724 002D5384 2C 00 00 00 */ cmpwi r0, 0 /* 802D9728 002D5388 40 82 00 14 */ bne lbl_802D973C /* 802D972C 002D538C 38 A1 00 18 */ addi r5, r1, 0x18 /* 802D9730 002D5390 38 80 00 0F */ li r4, 0xf /* 802D9734 002D5394 4B FF CC C9 */ bl l2c_csm_execute /* 802D9738 002D5398 4B FF F7 BC */ b lbl_802D8EF4 lbl_802D973C: /* 802D973C 002D539C 38 A1 00 18 */ addi r5, r1, 0x18 /* 802D9740 002D53A0 38 80 00 10 */ li r4, 0x10 /* 802D9744 002D53A4 4B FF CC B9 */ bl l2c_csm_execute /* 802D9748 002D53A8 4B FF F7 AC */ b lbl_802D8EF4 lbl_802D974C: /* 802D974C 002D53AC 88 1B BC 40 */ lbz r0, -0x43c0(r27) /* 802D9750 002D53B0 28 00 00 02 */ cmplwi r0, 2 /* 802D9754 002D53B4 41 80 F7 A0 */ blt lbl_802D8EF4 /* 802D9758 002D53B8 7E 25 8B 78 */ mr r5, r17 /* 802D975C 002D53BC 38 7D 00 01 */ addi r3, r29, 1 /* 802D9760 002D53C0 38 97 02 5C */ addi r4, r23, 0x25c /* 802D9764 002D53C4 4B FE 37 C5 */ bl LogMsg_1 /* 802D9768 002D53C8 4B FF F7 8C */ b lbl_802D8EF4 /* 802D976C 002D53CC 88 90 00 05 */ lbz r4, 5(r16) /* 802D9770 002D53D0 7D E3 7B 78 */ mr r3, r15 /* 802D9774 002D53D4 88 10 00 07 */ lbz r0, 7(r16) /* 802D9778 002D53D8 54 85 40 2E */ slwi r5, r4, 8 /* 802D977C 002D53DC 88 D0 00 04 */ lbz r6, 4(r16) /* 802D9780 002D53E0 88 90 00 06 */ lbz r4, 6(r16) /* 802D9784 002D53E4 54 00 40 2E */ slwi r0, r0, 8 /* 802D9788 002D53E8 7C A6 2A 14 */ add r5, r6, r5 /* 802D978C 002D53EC 7C 04 02 14 */ add r0, r4, r0 /* 802D9790 002D53F0 54 B0 04 3E */ clrlwi r16, r5, 0x10 /* 802D9794 002D53F4 7E 04 83 78 */ mr r4, r16 /* 802D9798 002D53F8 54 11 04 3E */ clrlwi r17, r0, 0x10 /* 802D979C 002D53FC 48 00 19 A9 */ bl l2cu_find_ccb_by_cid /* 802D97A0 002D5400 2C 03 00 00 */ cmpwi r3, 0 /* 802D97A4 002D5404 41 82 00 24 */ beq lbl_802D97C8 /* 802D97A8 002D5408 A0 03 00 16 */ lhz r0, 0x16(r3) /* 802D97AC 002D540C 7C 00 88 40 */ cmplw r0, r17 /* 802D97B0 002D5410 40 82 F7 44 */ bne lbl_802D8EF4 /* 802D97B4 002D5414 9B 23 00 36 */ stb r25, 0x36(r3) /* 802D97B8 002D5418 38 A1 00 08 */ addi r5, r1, 8 /* 802D97BC 002D541C 38 80 00 11 */ li r4, 0x11 /* 802D97C0 002D5420 4B FF CC 3D */ bl l2c_csm_execute /* 802D97C4 002D5424 4B FF F7 30 */ b lbl_802D8EF4 lbl_802D97C8: /* 802D97C8 002D5428 7D E3 7B 78 */ mr r3, r15 /* 802D97CC 002D542C 7F 24 CB 78 */ mr r4, r25 /* 802D97D0 002D5430 7E 05 83 78 */ mr r5, r16 /* 802D97D4 002D5434 7E 26 8B 78 */ mr r6, r17 /* 802D97D8 002D5438 48 00 12 4D */ bl l2cu_send_peer_disc_rsp /* 802D97DC 002D543C 4B FF F7 18 */ b lbl_802D8EF4 /* 802D97E0 002D5440 88 90 00 05 */ lbz r4, 5(r16) /* 802D97E4 002D5444 7D E3 7B 78 */ mr r3, r15 /* 802D97E8 002D5448 88 10 00 07 */ lbz r0, 7(r16) /* 802D97EC 002D544C 54 85 40 2E */ slwi r5, r4, 8 /* 802D97F0 002D5450 88 D0 00 04 */ lbz r6, 4(r16) /* 802D97F4 002D5454 88 90 00 06 */ lbz r4, 6(r16) /* 802D97F8 002D5458 54 00 40 2E */ slwi r0, r0, 8 /* 802D97FC 002D545C 7C A6 2A 14 */ add r5, r6, r5 /* 802D9800 002D5460 7C 04 02 14 */ add r0, r4, r0 /* 802D9804 002D5464 54 B0 04 3E */ clrlwi r16, r5, 0x10 /* 802D9808 002D5468 54 04 04 3E */ clrlwi r4, r0, 0x10 /* 802D980C 002D546C 48 00 19 39 */ bl l2cu_find_ccb_by_cid /* 802D9810 002D5470 2C 03 00 00 */ cmpwi r3, 0 /* 802D9814 002D5474 41 82 F6 E0 */ beq lbl_802D8EF4 /* 802D9818 002D5478 A0 03 00 16 */ lhz r0, 0x16(r3) /* 802D981C 002D547C 7C 00 80 40 */ cmplw r0, r16 /* 802D9820 002D5480 40 82 F6 D4 */ bne lbl_802D8EF4 /* 802D9824 002D5484 88 03 00 35 */ lbz r0, 0x35(r3) /* 802D9828 002D5488 7C 00 C8 40 */ cmplw r0, r25 /* 802D982C 002D548C 40 82 F6 C8 */ bne lbl_802D8EF4 /* 802D9830 002D5490 38 A1 00 08 */ addi r5, r1, 8 /* 802D9834 002D5494 38 80 00 12 */ li r4, 0x12 /* 802D9838 002D5498 4B FF CB C5 */ bl l2c_csm_execute /* 802D983C 002D549C 4B FF F6 B8 */ b lbl_802D8EF4 /* 802D9840 002D54A0 A0 7E 00 7E */ lhz r3, 0x7e(r30) /* 802D9844 002D54A4 38 03 FF F4 */ addi r0, r3, -12 /* 802D9848 002D54A8 7C 11 00 00 */ cmpw r17, r0 /* 802D984C 002D54AC 40 80 00 1C */ bge lbl_802D9868 /* 802D9850 002D54B0 7D E3 7B 78 */ mr r3, r15 /* 802D9854 002D54B4 7F 24 CB 78 */ mr r4, r25 /* 802D9858 002D54B8 7E 26 8B 78 */ mr r6, r17 /* 802D985C 002D54BC 38 B0 00 04 */ addi r5, r16, 4 /* 802D9860 002D54C0 48 00 13 F5 */ bl l2cu_send_peer_echo_rsp /* 802D9864 002D54C4 4B FF F6 90 */ b lbl_802D8EF4 lbl_802D9868: /* 802D9868 002D54C8 7D E3 7B 78 */ mr r3, r15 /* 802D986C 002D54CC 7F 24 CB 78 */ mr r4, r25 /* 802D9870 002D54D0 38 A0 00 00 */ li r5, 0 /* 802D9874 002D54D4 38 C0 00 00 */ li r6, 0 /* 802D9878 002D54D8 48 00 13 DD */ bl l2cu_send_peer_echo_rsp /* 802D987C 002D54DC 4B FF F6 78 */ b lbl_802D8EF4 /* 802D9880 002D54E0 81 8F 00 54 */ lwz r12, 0x54(r15) /* 802D9884 002D54E4 2C 0C 00 00 */ cmpwi r12, 0 /* 802D9888 002D54E8 41 82 F6 6C */ beq lbl_802D8EF4 /* 802D988C 002D54EC 93 EF 00 54 */ stw r31, 0x54(r15) /* 802D9890 002D54F0 38 60 00 00 */ li r3, 0 /* 802D9894 002D54F4 7D 89 03 A6 */ mtctr r12 /* 802D9898 002D54F8 4E 80 04 21 */ bctrl /* 802D989C 002D54FC 4B FF F6 58 */ b lbl_802D8EF4 /* 802D98A0 002D5500 88 10 00 05 */ lbz r0, 5(r16) /* 802D98A4 002D5504 7D E3 7B 78 */ mr r3, r15 /* 802D98A8 002D5508 88 B0 00 04 */ lbz r5, 4(r16) /* 802D98AC 002D550C 7F 24 CB 78 */ mr r4, r25 /* 802D98B0 002D5510 54 00 40 2E */ slwi r0, r0, 8 /* 802D98B4 002D5514 7C 05 02 14 */ add r0, r5, r0 /* 802D98B8 002D5518 54 05 04 3E */ clrlwi r5, r0, 0x10 /* 802D98BC 002D551C 48 00 15 35 */ bl l2cu_send_peer_info_rsp /* 802D98C0 002D5520 4B FF F6 34 */ b lbl_802D8EF4 lbl_802D98C4: /* 802D98C4 002D5524 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D98C8 002D5528 88 03 BC 40 */ lbz r0, lbl_8056BC40@l(r3) /* 802D98CC 002D552C 28 00 00 02 */ cmplwi r0, 2 /* 802D98D0 002D5530 41 80 00 18 */ blt lbl_802D98E8 /* 802D98D4 002D5534 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D98D8 002D5538 7C E5 3B 78 */ mr r5, r7 /* 802D98DC 002D553C 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D98E0 002D5540 38 97 02 88 */ addi r4, r23, 0x288 /* 802D98E4 002D5544 4B FE 36 45 */ bl LogMsg_1 lbl_802D98E8: /* 802D98E8 002D5548 7D E3 7B 78 */ mr r3, r15 /* 802D98EC 002D554C 7F 25 CB 78 */ mr r5, r25 /* 802D98F0 002D5550 38 80 00 00 */ li r4, 0 /* 802D98F4 002D5554 38 C0 00 00 */ li r6, 0 /* 802D98F8 002D5558 38 E0 00 00 */ li r7, 0 /* 802D98FC 002D555C 48 00 05 59 */ bl l2cu_send_peer_cmd_reject lbl_802D9900: /* 802D9900 002D5560 39 61 00 A0 */ addi r11, r1, 0xa0 /* 802D9904 002D5564 4B EE D8 3D */ bl __restore_gpr /* 802D9908 002D5568 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 802D990C 002D556C 7C 08 03 A6 */ mtlr r0 /* 802D9910 002D5570 38 21 00 A0 */ addi r1, r1, 0xa0 /* 802D9914 002D5574 4E 80 00 20 */ blr .global l2c_process_timeout l2c_process_timeout: /* 802D9918 002D5578 A0 03 00 14 */ lhz r0, 0x14(r3) /* 802D991C 002D557C 2C 00 00 04 */ cmpwi r0, 4 /* 802D9920 002D5580 41 82 00 3C */ beq lbl_802D995C /* 802D9924 002D5584 40 80 00 14 */ bge lbl_802D9938 /* 802D9928 002D5588 2C 00 00 02 */ cmpwi r0, 2 /* 802D992C 002D558C 41 82 00 18 */ beq lbl_802D9944 /* 802D9930 002D5590 40 80 00 1C */ bge lbl_802D994C /* 802D9934 002D5594 4E 80 00 20 */ blr lbl_802D9938: /* 802D9938 002D5598 2C 00 00 49 */ cmpwi r0, 0x49 /* 802D993C 002D559C 4D 82 00 20 */ beqlr /* 802D9940 002D55A0 4E 80 00 20 */ blr lbl_802D9944: /* 802D9944 002D55A4 80 63 00 10 */ lwz r3, 0x10(r3) /* 802D9948 002D55A8 4B FF E4 FC */ b l2c_link_timeout lbl_802D994C: /* 802D994C 002D55AC 80 63 00 10 */ lwz r3, 0x10(r3) /* 802D9950 002D55B0 38 80 00 1E */ li r4, 0x1e /* 802D9954 002D55B4 38 A0 00 00 */ li r5, 0 /* 802D9958 002D55B8 4B FF CA A4 */ b l2c_csm_execute lbl_802D995C: /* 802D995C 002D55BC 38 60 00 01 */ li r3, 1 /* 802D9960 002D55C0 48 00 00 08 */ b l2c_process_held_packets /* 802D9964 002D55C4 4E 80 00 20 */ blr .global l2c_process_held_packets l2c_process_held_packets: /* 802D9968 002D55C8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802D996C 002D55CC 7C 08 02 A6 */ mflr r0 /* 802D9970 002D55D0 90 01 00 24 */ stw r0, 0x24(r1) /* 802D9974 002D55D4 39 61 00 20 */ addi r11, r1, 0x20 /* 802D9978 002D55D8 4B EE D7 B1 */ bl _savegpr_27 /* 802D997C 002D55DC 3F E0 80 57 */ lis r31, lbl_8056BC40@ha /* 802D9980 002D55E0 7C 7B 1B 78 */ mr r27, r3 /* 802D9984 002D55E4 38 9F BC 40 */ addi r4, r31, lbl_8056BC40@l /* 802D9988 002D55E8 A0 04 07 C8 */ lhz r0, 0x7c8(r4) /* 802D998C 002D55EC 3B 84 07 C0 */ addi r28, r4, 0x7c0 /* 802D9990 002D55F0 2C 00 00 00 */ cmpwi r0, 0 /* 802D9994 002D55F4 41 82 00 E8 */ beq lbl_802D9A7C /* 802D9998 002D55F8 2C 03 00 00 */ cmpwi r3, 0 /* 802D999C 002D55FC 40 82 00 30 */ bne lbl_802D99CC /* 802D99A0 002D5600 38 64 07 CC */ addi r3, r4, 0x7cc /* 802D99A4 002D5604 4B FE 3B A9 */ bl btu_stop_timer /* 802D99A8 002D5608 88 1F BC 40 */ lbz r0, -0x43c0(r31) /* 802D99AC 002D560C 28 00 00 02 */ cmplwi r0, 2 /* 802D99B0 002D5610 41 80 00 3C */ blt lbl_802D99EC /* 802D99B4 002D5614 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D99B8 002D5618 3C 80 80 44 */ lis r4, lbl_8044414C@ha /* 802D99BC 002D561C 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D99C0 002D5620 38 84 41 4C */ addi r4, r4, lbl_8044414C@l /* 802D99C4 002D5624 4B FE 35 4D */ bl LogMsg_0 /* 802D99C8 002D5628 48 00 00 24 */ b lbl_802D99EC lbl_802D99CC: /* 802D99CC 002D562C 88 1F BC 40 */ lbz r0, -0x43c0(r31) /* 802D99D0 002D5630 28 00 00 02 */ cmplwi r0, 2 /* 802D99D4 002D5634 41 80 00 18 */ blt lbl_802D99EC /* 802D99D8 002D5638 3C 60 00 08 */ lis r3, 0x00080001@ha /* 802D99DC 002D563C 3C 80 80 44 */ lis r4, lbl_80444160@ha /* 802D99E0 002D5640 38 63 00 01 */ addi r3, r3, 0x00080001@l /* 802D99E4 002D5644 38 84 41 60 */ addi r4, r4, lbl_80444160@l /* 802D99E8 002D5648 4B FE 35 29 */ bl LogMsg_0 lbl_802D99EC: /* 802D99EC 002D564C 7F 83 E3 78 */ mr r3, r28 /* 802D99F0 002D5650 4B FE 0B 45 */ bl GKI_getfirst /* 802D99F4 002D5654 3C 80 00 01 */ lis r4, 0x0000FFFF@ha /* 802D99F8 002D5658 7C 7E 1B 78 */ mr r30, r3 /* 802D99FC 002D565C 3B E4 FF FF */ addi r31, r4, 0x0000FFFF@l /* 802D9A00 002D5660 48 00 00 50 */ b lbl_802D9A50 lbl_802D9A04: /* 802D9A04 002D5664 7F C3 F3 78 */ mr r3, r30 /* 802D9A08 002D5668 4B FE 0B 35 */ bl GKI_getnext /* 802D9A0C 002D566C 2C 1B 00 00 */ cmpwi r27, 0 /* 802D9A10 002D5670 7C 7D 1B 78 */ mr r29, r3 /* 802D9A14 002D5674 41 82 00 20 */ beq lbl_802D9A34 /* 802D9A18 002D5678 A0 7E 00 06 */ lhz r3, 6(r30) /* 802D9A1C 002D567C 2C 03 00 00 */ cmpwi r3, 0 /* 802D9A20 002D5680 41 82 00 14 */ beq lbl_802D9A34 /* 802D9A24 002D5684 38 63 FF FF */ addi r3, r3, -1 /* 802D9A28 002D5688 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 802D9A2C 002D568C B0 7E 00 06 */ sth r3, 6(r30) /* 802D9A30 002D5690 40 82 00 1C */ bne lbl_802D9A4C lbl_802D9A34: /* 802D9A34 002D5694 7F 83 E3 78 */ mr r3, r28 /* 802D9A38 002D5698 7F C4 F3 78 */ mr r4, r30 /* 802D9A3C 002D569C 4B FE 0A 35 */ bl GKI_remove_from_queue /* 802D9A40 002D56A0 B3 FE 00 06 */ sth r31, 6(r30) /* 802D9A44 002D56A4 7F C3 F3 78 */ mr r3, r30 /* 802D9A48 002D56A8 4B FF F1 31 */ bl l2c_rcv_acl_data lbl_802D9A4C: /* 802D9A4C 002D56AC 7F BE EB 78 */ mr r30, r29 lbl_802D9A50: /* 802D9A50 002D56B0 2C 1E 00 00 */ cmpwi r30, 0 /* 802D9A54 002D56B4 40 82 FF B0 */ bne lbl_802D9A04 /* 802D9A58 002D56B8 A0 1C 00 08 */ lhz r0, 8(r28) /* 802D9A5C 002D56BC 2C 00 00 00 */ cmpwi r0, 0 /* 802D9A60 002D56C0 41 82 00 1C */ beq lbl_802D9A7C /* 802D9A64 002D56C4 3C 60 80 57 */ lis r3, lbl_8056BC40@ha /* 802D9A68 002D56C8 38 80 00 04 */ li r4, 4 /* 802D9A6C 002D56CC 38 63 BC 40 */ addi r3, r3, lbl_8056BC40@l /* 802D9A70 002D56D0 38 A0 00 01 */ li r5, 1 /* 802D9A74 002D56D4 38 63 07 CC */ addi r3, r3, 0x7cc /* 802D9A78 002D56D8 4B FE 3A 65 */ bl btu_start_timer lbl_802D9A7C: /* 802D9A7C 002D56DC 39 61 00 20 */ addi r11, r1, 0x20 /* 802D9A80 002D56E0 4B EE D6 F5 */ bl _restgpr_27 /* 802D9A84 002D56E4 80 01 00 24 */ lwz r0, 0x24(r1) /* 802D9A88 002D56E8 7C 08 03 A6 */ mtlr r0 /* 802D9A8C 002D56EC 38 21 00 20 */ addi r1, r1, 0x20 /* 802D9A90 002D56F0 4E 80 00 20 */ blr