diff options
Diffstat (limited to 'asm/SDK/BTE/gap_conn.s')
-rw-r--r-- | asm/SDK/BTE/gap_conn.s | 822 |
1 files changed, 822 insertions, 0 deletions
diff --git a/asm/SDK/BTE/gap_conn.s b/asm/SDK/BTE/gap_conn.s new file mode 100644 index 0000000..de5bc2d --- /dev/null +++ b/asm/SDK/BTE/gap_conn.s @@ -0,0 +1,822 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global gap_conn_init
+gap_conn_init:
+/* 802CEC90 002CA8F0 3D 40 80 2D */ lis r10, gap_connect_ind@ha
+/* 802CEC94 002CA8F4 3D 20 80 57 */ lis r9, lbl_8056B340@ha
+/* 802CEC98 002CA8F8 3D 00 80 2D */ lis r8, gap_connect_cfm@ha
+/* 802CEC9C 002CA8FC 3C E0 80 2D */ lis r7, gap_config_ind@ha
+/* 802CECA0 002CA900 3C C0 80 2D */ lis r6, gap_config_cfm@ha
+/* 802CECA4 002CA904 3C A0 80 2D */ lis r5, gap_disconnect_ind@ha
+/* 802CECA8 002CA908 3C 80 80 2D */ lis r4, gap_data_ind@ha
+/* 802CECAC 002CA90C 3C 60 80 2D */ lis r3, gap_congestion_ind@ha
+/* 802CECB0 002CA910 39 4A ED 00 */ addi r10, r10, gap_connect_ind@l
+/* 802CECB4 002CA914 39 29 B3 40 */ addi r9, r9, lbl_8056B340@l
+/* 802CECB8 002CA918 38 00 00 00 */ li r0, 0
+/* 802CECBC 002CA91C 39 08 EE 8C */ addi r8, r8, gap_connect_cfm@l
+/* 802CECC0 002CA920 38 E7 F0 68 */ addi r7, r7, gap_config_ind@l
+/* 802CECC4 002CA924 38 C6 F1 A4 */ addi r6, r6, gap_config_cfm@l
+/* 802CECC8 002CA928 38 A5 F3 90 */ addi r5, r5, gap_disconnect_ind@l
+/* 802CECCC 002CA92C 38 84 F5 88 */ addi r4, r4, gap_data_ind@l
+/* 802CECD0 002CA930 38 63 F6 98 */ addi r3, r3, gap_congestion_ind@l
+/* 802CECD4 002CA934 91 49 00 84 */ stw r10, 0x84(r9)
+/* 802CECD8 002CA938 91 09 00 88 */ stw r8, 0x88(r9)
+/* 802CECDC 002CA93C 90 09 00 8C */ stw r0, 0x8c(r9)
+/* 802CECE0 002CA940 90 E9 00 90 */ stw r7, 0x90(r9)
+/* 802CECE4 002CA944 90 C9 00 94 */ stw r6, 0x94(r9)
+/* 802CECE8 002CA948 90 A9 00 98 */ stw r5, 0x98(r9)
+/* 802CECEC 002CA94C 90 09 00 9C */ stw r0, 0x9c(r9)
+/* 802CECF0 002CA950 90 09 00 A0 */ stw r0, 0xa0(r9)
+/* 802CECF4 002CA954 90 89 00 A4 */ stw r4, 0xa4(r9)
+/* 802CECF8 002CA958 90 69 00 A8 */ stw r3, 0xa8(r9)
+/* 802CECFC 002CA95C 4E 80 00 20 */ blr
+
+gap_connect_ind:
+/* 802CED00 002CA960 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802CED04 002CA964 7C 08 02 A6 */ mflr r0
+/* 802CED08 002CA968 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802CED0C 002CA96C 39 61 00 20 */ addi r11, r1, 0x20
+/* 802CED10 002CA970 4B EF 84 15 */ bl _savegpr_26
+/* 802CED14 002CA974 3C E0 80 57 */ lis r7, lbl_8056B340@ha
+/* 802CED18 002CA978 7C 7A 1B 78 */ mr r26, r3
+/* 802CED1C 002CA97C 38 E7 B3 40 */ addi r7, r7, lbl_8056B340@l
+/* 802CED20 002CA980 7C 9F 23 78 */ mr r31, r4
+/* 802CED24 002CA984 7C BB 2B 78 */ mr r27, r5
+/* 802CED28 002CA988 7C DC 33 78 */ mr r28, r6
+/* 802CED2C 002CA98C 3B A7 00 AC */ addi r29, r7, 0xac
+/* 802CED30 002CA990 3B C0 00 00 */ li r30, 0
+lbl_802CED34:
+/* 802CED34 002CA994 88 1D 00 00 */ lbz r0, 0(r29)
+/* 802CED38 002CA998 28 00 00 01 */ cmplwi r0, 1
+/* 802CED3C 002CA99C 40 82 00 34 */ bne lbl_802CED70
+/* 802CED40 002CA9A0 A0 1D 00 10 */ lhz r0, 0x10(r29)
+/* 802CED44 002CA9A4 7C 00 D8 40 */ cmplw r0, r27
+/* 802CED48 002CA9A8 40 82 00 28 */ bne lbl_802CED70
+/* 802CED4C 002CA9AC 88 1D 00 08 */ lbz r0, 8(r29)
+/* 802CED50 002CA9B0 2C 00 00 00 */ cmpwi r0, 0
+/* 802CED54 002CA9B4 41 82 00 2C */ beq lbl_802CED80
+/* 802CED58 002CA9B8 7F 43 D3 78 */ mr r3, r26
+/* 802CED5C 002CA9BC 38 9D 00 09 */ addi r4, r29, 9
+/* 802CED60 002CA9C0 38 A0 00 06 */ li r5, 6
+/* 802CED64 002CA9C4 4B EF B6 35 */ bl memcmp
+/* 802CED68 002CA9C8 2C 03 00 00 */ cmpwi r3, 0
+/* 802CED6C 002CA9CC 41 82 00 14 */ beq lbl_802CED80
+lbl_802CED70:
+/* 802CED70 002CA9D0 3B DE 00 01 */ addi r30, r30, 1
+/* 802CED74 002CA9D4 3B BD 00 60 */ addi r29, r29, 0x60
+/* 802CED78 002CA9D8 28 1E 00 08 */ cmplwi r30, 8
+/* 802CED7C 002CA9DC 41 80 FF B8 */ blt lbl_802CED34
+lbl_802CED80:
+/* 802CED80 002CA9E0 57 C0 04 3E */ clrlwi r0, r30, 0x10
+/* 802CED84 002CA9E4 28 00 00 08 */ cmplwi r0, 8
+/* 802CED88 002CA9E8 40 82 00 80 */ bne lbl_802CEE08
+/* 802CED8C 002CA9EC 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CED90 002CA9F0 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CED94 002CA9F4 88 03 00 28 */ lbz r0, 0x28(r3)
+/* 802CED98 002CA9F8 28 00 00 02 */ cmplwi r0, 2
+/* 802CED9C 002CA9FC 41 80 00 14 */ blt lbl_802CEDB0
+/* 802CEDA0 002CAA00 3C 60 00 0E */ lis r3, 0x000E0001@ha
+/* 802CEDA4 002CAA04 38 8D 8A 50 */ addi r4, r13, lbl_8063DD10-_SDA_BASE_
+/* 802CEDA8 002CAA08 38 63 00 01 */ addi r3, r3, 0x000E0001@l
+/* 802CEDAC 002CAA0C 4B FE E1 65 */ bl LogMsg_0
+lbl_802CEDB0:
+/* 802CEDB0 002CAA10 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CEDB4 002CAA14 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CEDB8 002CAA18 88 03 00 28 */ lbz r0, 0x28(r3)
+/* 802CEDBC 002CAA1C 28 00 00 02 */ cmplwi r0, 2
+/* 802CEDC0 002CAA20 41 80 00 18 */ blt lbl_802CEDD8
+/* 802CEDC4 002CAA24 3C 60 00 0E */ lis r3, 0x000E0001@ha
+/* 802CEDC8 002CAA28 3C 80 80 44 */ lis r4, lbl_80442330@ha
+/* 802CEDCC 002CAA2C 38 63 00 01 */ addi r3, r3, 0x000E0001@l
+/* 802CEDD0 002CAA30 38 84 23 30 */ addi r4, r4, lbl_80442330@l
+/* 802CEDD4 002CAA34 4B FE E1 3D */ bl LogMsg_0
+lbl_802CEDD8:
+/* 802CEDD8 002CAA38 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CEDDC 002CAA3C 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CEDE0 002CAA40 88 03 00 28 */ lbz r0, 0x28(r3)
+/* 802CEDE4 002CAA44 28 00 00 02 */ cmplwi r0, 2
+/* 802CEDE8 002CAA48 41 80 00 14 */ blt lbl_802CEDFC
+/* 802CEDEC 002CAA4C 3C 60 00 0E */ lis r3, 0x000E0001@ha
+/* 802CEDF0 002CAA50 38 8D 8A 50 */ addi r4, r13, lbl_8063DD10-_SDA_BASE_
+/* 802CEDF4 002CAA54 38 63 00 01 */ addi r3, r3, 0x000E0001@l
+/* 802CEDF8 002CAA58 4B FE E1 19 */ bl LogMsg_0
+lbl_802CEDFC:
+/* 802CEDFC 002CAA5C 7F E3 FB 78 */ mr r3, r31
+/* 802CEE00 002CAA60 48 00 71 A9 */ bl func_802D5FA8
+/* 802CEE04 002CAA64 48 00 00 70 */ b lbl_802CEE74
+lbl_802CEE08:
+/* 802CEE08 002CAA68 38 00 00 03 */ li r0, 3
+/* 802CEE0C 002CAA6C 7F 44 D3 78 */ mr r4, r26
+/* 802CEE10 002CAA70 98 1D 00 00 */ stb r0, 0(r29)
+/* 802CEE14 002CAA74 38 7D 00 09 */ addi r3, r29, 9
+/* 802CEE18 002CAA78 38 A0 00 06 */ li r5, 6
+/* 802CEE1C 002CAA7C 4B D3 51 E5 */ bl memcpy
+/* 802CEE20 002CAA80 B3 FD 00 06 */ sth r31, 6(r29)
+/* 802CEE24 002CAA84 7F 43 D3 78 */ mr r3, r26
+/* 802CEE28 002CAA88 7F 84 E3 78 */ mr r4, r28
+/* 802CEE2C 002CAA8C 7F E5 FB 78 */ mr r5, r31
+/* 802CEE30 002CAA90 38 C0 00 00 */ li r6, 0
+/* 802CEE34 002CAA94 38 E0 00 00 */ li r7, 0
+/* 802CEE38 002CAA98 48 00 6E 59 */ bl func_802D5C90
+/* 802CEE3C 002CAA9C 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CEE40 002CAAA0 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CEE44 002CAAA4 88 03 00 28 */ lbz r0, 0x28(r3)
+/* 802CEE48 002CAAA8 28 00 00 04 */ cmplwi r0, 4
+/* 802CEE4C 002CAAAC 41 80 00 1C */ blt lbl_802CEE68
+/* 802CEE50 002CAAB0 3C 60 00 0E */ lis r3, 0x000E0003@ha
+/* 802CEE54 002CAAB4 3C 80 80 44 */ lis r4, lbl_80442374@ha
+/* 802CEE58 002CAAB8 A0 BD 00 06 */ lhz r5, 6(r29)
+/* 802CEE5C 002CAABC 38 63 00 03 */ addi r3, r3, 0x000E0003@l
+/* 802CEE60 002CAAC0 38 84 23 74 */ addi r4, r4, lbl_80442374@l
+/* 802CEE64 002CAAC4 4B FE E0 C5 */ bl LogMsg_1
+lbl_802CEE68:
+/* 802CEE68 002CAAC8 7F E3 FB 78 */ mr r3, r31
+/* 802CEE6C 002CAACC 38 9D 00 24 */ addi r4, r29, 0x24
+/* 802CEE70 002CAAD0 48 00 6F B1 */ bl func_802D5E20
+lbl_802CEE74:
+/* 802CEE74 002CAAD4 39 61 00 20 */ addi r11, r1, 0x20
+/* 802CEE78 002CAAD8 4B EF 82 F9 */ bl _restgpr_26
+/* 802CEE7C 002CAADC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802CEE80 002CAAE0 7C 08 03 A6 */ mtlr r0
+/* 802CEE84 002CAAE4 38 21 00 20 */ addi r1, r1, 0x20
+/* 802CEE88 002CAAE8 4E 80 00 20 */ blr
+
+gap_connect_cfm:
+/* 802CEE8C 002CAAEC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802CEE90 002CAAF0 7C 08 02 A6 */ mflr r0
+/* 802CEE94 002CAAF4 3C A0 80 57 */ lis r5, lbl_8056B340@ha
+/* 802CEE98 002CAAF8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802CEE9C 002CAAFC 38 00 00 02 */ li r0, 2
+/* 802CEEA0 002CAB00 38 A5 B3 40 */ addi r5, r5, lbl_8056B340@l
+/* 802CEEA4 002CAB04 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802CEEA8 002CAB08 3B E5 00 AC */ addi r31, r5, 0xac
+/* 802CEEAC 002CAB0C 38 A0 00 00 */ li r5, 0
+/* 802CEEB0 002CAB10 93 C1 00 08 */ stw r30, 8(r1)
+/* 802CEEB4 002CAB14 7C 09 03 A6 */ mtctr r0
+lbl_802CEEB8:
+/* 802CEEB8 002CAB18 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CEEBC 002CAB1C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEEC0 002CAB20 41 82 00 14 */ beq lbl_802CEED4
+/* 802CEEC4 002CAB24 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CEEC8 002CAB28 7C 00 18 40 */ cmplw r0, r3
+/* 802CEECC 002CAB2C 40 82 00 08 */ bne lbl_802CEED4
+/* 802CEED0 002CAB30 48 00 00 74 */ b lbl_802CEF44
+lbl_802CEED4:
+/* 802CEED4 002CAB34 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CEED8 002CAB38 38 A5 00 01 */ addi r5, r5, 1
+/* 802CEEDC 002CAB3C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEEE0 002CAB40 41 82 00 14 */ beq lbl_802CEEF4
+/* 802CEEE4 002CAB44 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CEEE8 002CAB48 7C 00 18 40 */ cmplw r0, r3
+/* 802CEEEC 002CAB4C 40 82 00 08 */ bne lbl_802CEEF4
+/* 802CEEF0 002CAB50 48 00 00 54 */ b lbl_802CEF44
+lbl_802CEEF4:
+/* 802CEEF4 002CAB54 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CEEF8 002CAB58 38 A5 00 01 */ addi r5, r5, 1
+/* 802CEEFC 002CAB5C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEF00 002CAB60 41 82 00 14 */ beq lbl_802CEF14
+/* 802CEF04 002CAB64 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CEF08 002CAB68 7C 00 18 40 */ cmplw r0, r3
+/* 802CEF0C 002CAB6C 40 82 00 08 */ bne lbl_802CEF14
+/* 802CEF10 002CAB70 48 00 00 34 */ b lbl_802CEF44
+lbl_802CEF14:
+/* 802CEF14 002CAB74 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CEF18 002CAB78 38 A5 00 01 */ addi r5, r5, 1
+/* 802CEF1C 002CAB7C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEF20 002CAB80 41 82 00 14 */ beq lbl_802CEF34
+/* 802CEF24 002CAB84 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CEF28 002CAB88 7C 00 18 40 */ cmplw r0, r3
+/* 802CEF2C 002CAB8C 40 82 00 08 */ bne lbl_802CEF34
+/* 802CEF30 002CAB90 48 00 00 14 */ b lbl_802CEF44
+lbl_802CEF34:
+/* 802CEF34 002CAB94 38 A5 00 01 */ addi r5, r5, 1
+/* 802CEF38 002CAB98 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802CEF3C 002CAB9C 42 00 FF 7C */ bdnz lbl_802CEEB8
+/* 802CEF40 002CABA0 3B E0 00 00 */ li r31, 0
+lbl_802CEF44:
+/* 802CEF44 002CABA4 2C 1F 00 00 */ cmpwi r31, 0
+/* 802CEF48 002CABA8 41 82 01 08 */ beq lbl_802CF050
+/* 802CEF4C 002CABAC 2C 04 00 00 */ cmpwi r4, 0
+/* 802CEF50 002CABB0 40 82 00 24 */ bne lbl_802CEF74
+/* 802CEF54 002CABB4 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CEF58 002CABB8 28 00 00 02 */ cmplwi r0, 2
+/* 802CEF5C 002CABBC 40 82 00 18 */ bne lbl_802CEF74
+/* 802CEF60 002CABC0 38 00 00 03 */ li r0, 3
+/* 802CEF64 002CABC4 38 9F 00 24 */ addi r4, r31, 0x24
+/* 802CEF68 002CABC8 98 1F 00 00 */ stb r0, 0(r31)
+/* 802CEF6C 002CABCC 48 00 6E B5 */ bl func_802D5E20
+/* 802CEF70 002CABD0 48 00 00 E0 */ b lbl_802CF050
+lbl_802CEF74:
+/* 802CEF74 002CABD4 81 9F 00 20 */ lwz r12, 0x20(r31)
+/* 802CEF78 002CABD8 2C 0C 00 00 */ cmpwi r12, 0
+/* 802CEF7C 002CABDC 41 82 00 14 */ beq lbl_802CEF90
+/* 802CEF80 002CABE0 A0 7F 00 04 */ lhz r3, 4(r31)
+/* 802CEF84 002CABE4 38 80 01 01 */ li r4, 0x101
+/* 802CEF88 002CABE8 7D 89 03 A6 */ mtctr r12
+/* 802CEF8C 002CABEC 4E 80 04 21 */ bctrl
+lbl_802CEF90:
+/* 802CEF90 002CABF0 A3 DF 00 10 */ lhz r30, 0x10(r31)
+/* 802CEF94 002CABF4 48 00 00 10 */ b lbl_802CEFA4
+lbl_802CEF98:
+/* 802CEF98 002CABF8 38 7F 00 14 */ addi r3, r31, 0x14
+/* 802CEF9C 002CABFC 4B FE B4 35 */ bl GKI_dequeue
+/* 802CEFA0 002CAC00 4B FE AD 95 */ bl GKI_freebuf
+lbl_802CEFA4:
+/* 802CEFA4 002CAC04 80 1F 00 14 */ lwz r0, 0x14(r31)
+/* 802CEFA8 002CAC08 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEFAC 002CAC0C 40 82 FF EC */ bne lbl_802CEF98
+/* 802CEFB0 002CAC10 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CEFB4 002CAC14 38 80 00 00 */ li r4, 0
+/* 802CEFB8 002CAC18 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CEFBC 002CAC1C 38 00 00 02 */ li r0, 2
+/* 802CEFC0 002CAC20 98 9F 00 00 */ stb r4, 0(r31)
+/* 802CEFC4 002CAC24 38 83 00 AC */ addi r4, r3, 0xac
+/* 802CEFC8 002CAC28 38 60 00 00 */ li r3, 0
+/* 802CEFCC 002CAC2C 7C 09 03 A6 */ mtctr r0
+lbl_802CEFD0:
+/* 802CEFD0 002CAC30 88 04 00 00 */ lbz r0, 0(r4)
+/* 802CEFD4 002CAC34 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEFD8 002CAC38 41 82 00 10 */ beq lbl_802CEFE8
+/* 802CEFDC 002CAC3C A0 04 00 10 */ lhz r0, 0x10(r4)
+/* 802CEFE0 002CAC40 7C 00 F0 40 */ cmplw r0, r30
+/* 802CEFE4 002CAC44 41 82 00 6C */ beq lbl_802CF050
+lbl_802CEFE8:
+/* 802CEFE8 002CAC48 88 04 00 60 */ lbz r0, 0x60(r4)
+/* 802CEFEC 002CAC4C 38 63 00 01 */ addi r3, r3, 1
+/* 802CEFF0 002CAC50 2C 00 00 00 */ cmpwi r0, 0
+/* 802CEFF4 002CAC54 41 82 00 10 */ beq lbl_802CF004
+/* 802CEFF8 002CAC58 A0 04 00 70 */ lhz r0, 0x70(r4)
+/* 802CEFFC 002CAC5C 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF000 002CAC60 41 82 00 50 */ beq lbl_802CF050
+lbl_802CF004:
+/* 802CF004 002CAC64 88 04 00 C0 */ lbz r0, 0xc0(r4)
+/* 802CF008 002CAC68 38 63 00 01 */ addi r3, r3, 1
+/* 802CF00C 002CAC6C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF010 002CAC70 41 82 00 10 */ beq lbl_802CF020
+/* 802CF014 002CAC74 A0 04 00 D0 */ lhz r0, 0xd0(r4)
+/* 802CF018 002CAC78 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF01C 002CAC7C 41 82 00 34 */ beq lbl_802CF050
+lbl_802CF020:
+/* 802CF020 002CAC80 88 04 01 20 */ lbz r0, 0x120(r4)
+/* 802CF024 002CAC84 38 63 00 01 */ addi r3, r3, 1
+/* 802CF028 002CAC88 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF02C 002CAC8C 41 82 00 10 */ beq lbl_802CF03C
+/* 802CF030 002CAC90 A0 04 01 30 */ lhz r0, 0x130(r4)
+/* 802CF034 002CAC94 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF038 002CAC98 41 82 00 18 */ beq lbl_802CF050
+lbl_802CF03C:
+/* 802CF03C 002CAC9C 38 63 00 01 */ addi r3, r3, 1
+/* 802CF040 002CACA0 38 84 01 80 */ addi r4, r4, 0x180
+/* 802CF044 002CACA4 42 00 FF 8C */ bdnz lbl_802CEFD0
+/* 802CF048 002CACA8 7F C3 F3 78 */ mr r3, r30
+/* 802CF04C 002CACAC 48 00 69 81 */ bl func_802D59CC
+lbl_802CF050:
+/* 802CF050 002CACB0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802CF054 002CACB4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802CF058 002CACB8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802CF05C 002CACBC 7C 08 03 A6 */ mtlr r0
+/* 802CF060 002CACC0 38 21 00 10 */ addi r1, r1, 0x10
+/* 802CF064 002CACC4 4E 80 00 20 */ blr
+
+gap_config_ind:
+/* 802CF068 002CACC8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802CF06C 002CACCC 7C 08 02 A6 */ mflr r0
+/* 802CF070 002CACD0 3C A0 80 57 */ lis r5, lbl_8056B340@ha
+/* 802CF074 002CACD4 38 C0 00 00 */ li r6, 0
+/* 802CF078 002CACD8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802CF07C 002CACDC 38 00 00 02 */ li r0, 2
+/* 802CF080 002CACE0 38 A5 B3 40 */ addi r5, r5, lbl_8056B340@l
+/* 802CF084 002CACE4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802CF088 002CACE8 3B E5 00 AC */ addi r31, r5, 0xac
+/* 802CF08C 002CACEC 7C 09 03 A6 */ mtctr r0
+lbl_802CF090:
+/* 802CF090 002CACF0 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CF094 002CACF4 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF098 002CACF8 41 82 00 14 */ beq lbl_802CF0AC
+/* 802CF09C 002CACFC A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF0A0 002CAD00 7C 00 18 40 */ cmplw r0, r3
+/* 802CF0A4 002CAD04 40 82 00 08 */ bne lbl_802CF0AC
+/* 802CF0A8 002CAD08 48 00 00 74 */ b lbl_802CF11C
+lbl_802CF0AC:
+/* 802CF0AC 002CAD0C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF0B0 002CAD10 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF0B4 002CAD14 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF0B8 002CAD18 41 82 00 14 */ beq lbl_802CF0CC
+/* 802CF0BC 002CAD1C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF0C0 002CAD20 7C 00 18 40 */ cmplw r0, r3
+/* 802CF0C4 002CAD24 40 82 00 08 */ bne lbl_802CF0CC
+/* 802CF0C8 002CAD28 48 00 00 54 */ b lbl_802CF11C
+lbl_802CF0CC:
+/* 802CF0CC 002CAD2C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF0D0 002CAD30 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF0D4 002CAD34 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF0D8 002CAD38 41 82 00 14 */ beq lbl_802CF0EC
+/* 802CF0DC 002CAD3C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF0E0 002CAD40 7C 00 18 40 */ cmplw r0, r3
+/* 802CF0E4 002CAD44 40 82 00 08 */ bne lbl_802CF0EC
+/* 802CF0E8 002CAD48 48 00 00 34 */ b lbl_802CF11C
+lbl_802CF0EC:
+/* 802CF0EC 002CAD4C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF0F0 002CAD50 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF0F4 002CAD54 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF0F8 002CAD58 41 82 00 14 */ beq lbl_802CF10C
+/* 802CF0FC 002CAD5C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF100 002CAD60 7C 00 18 40 */ cmplw r0, r3
+/* 802CF104 002CAD64 40 82 00 08 */ bne lbl_802CF10C
+/* 802CF108 002CAD68 48 00 00 14 */ b lbl_802CF11C
+lbl_802CF10C:
+/* 802CF10C 002CAD6C 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF110 002CAD70 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802CF114 002CAD74 42 00 FF 7C */ bdnz lbl_802CF090
+/* 802CF118 002CAD78 3B E0 00 00 */ li r31, 0
+lbl_802CF11C:
+/* 802CF11C 002CAD7C 2C 1F 00 00 */ cmpwi r31, 0
+/* 802CF120 002CAD80 41 82 00 70 */ beq lbl_802CF190
+/* 802CF124 002CAD84 88 04 00 02 */ lbz r0, 2(r4)
+/* 802CF128 002CAD88 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF12C 002CAD8C 41 82 00 10 */ beq lbl_802CF13C
+/* 802CF130 002CAD90 A0 04 00 04 */ lhz r0, 4(r4)
+/* 802CF134 002CAD94 28 00 06 9B */ cmplwi r0, 0x69b
+/* 802CF138 002CAD98 40 81 00 10 */ ble lbl_802CF148
+lbl_802CF13C:
+/* 802CF13C 002CAD9C 38 00 06 9B */ li r0, 0x69b
+/* 802CF140 002CADA0 B0 1F 00 12 */ sth r0, 0x12(r31)
+/* 802CF144 002CADA4 48 00 00 08 */ b lbl_802CF14C
+lbl_802CF148:
+/* 802CF148 002CADA8 B0 1F 00 12 */ sth r0, 0x12(r31)
+lbl_802CF14C:
+/* 802CF14C 002CADAC 38 00 00 00 */ li r0, 0
+/* 802CF150 002CADB0 98 04 00 20 */ stb r0, 0x20(r4)
+/* 802CF154 002CADB4 98 04 00 02 */ stb r0, 2(r4)
+/* 802CF158 002CADB8 B0 04 00 00 */ sth r0, 0(r4)
+/* 802CF15C 002CADBC 48 00 6D 7D */ bl func_802D5ED8
+/* 802CF160 002CADC0 88 1F 00 01 */ lbz r0, 1(r31)
+/* 802CF164 002CADC4 60 03 00 02 */ ori r3, r0, 2
+/* 802CF168 002CADC8 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d
+/* 802CF16C 002CADCC 98 7F 00 01 */ stb r3, 1(r31)
+/* 802CF170 002CADD0 41 82 00 20 */ beq lbl_802CF190
+/* 802CF174 002CADD4 38 00 00 04 */ li r0, 4
+/* 802CF178 002CADD8 38 80 01 00 */ li r4, 0x100
+/* 802CF17C 002CADDC 98 1F 00 00 */ stb r0, 0(r31)
+/* 802CF180 002CADE0 81 9F 00 20 */ lwz r12, 0x20(r31)
+/* 802CF184 002CADE4 A0 7F 00 04 */ lhz r3, 4(r31)
+/* 802CF188 002CADE8 7D 89 03 A6 */ mtctr r12
+/* 802CF18C 002CADEC 4E 80 04 21 */ bctrl
+lbl_802CF190:
+/* 802CF190 002CADF0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802CF194 002CADF4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802CF198 002CADF8 7C 08 03 A6 */ mtlr r0
+/* 802CF19C 002CADFC 38 21 00 10 */ addi r1, r1, 0x10
+/* 802CF1A0 002CAE00 4E 80 00 20 */ blr
+
+gap_config_cfm:
+/* 802CF1A4 002CAE04 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802CF1A8 002CAE08 7C 08 02 A6 */ mflr r0
+/* 802CF1AC 002CAE0C 3C A0 80 57 */ lis r5, lbl_8056B340@ha
+/* 802CF1B0 002CAE10 38 C0 00 00 */ li r6, 0
+/* 802CF1B4 002CAE14 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802CF1B8 002CAE18 38 00 00 02 */ li r0, 2
+/* 802CF1BC 002CAE1C 38 A5 B3 40 */ addi r5, r5, lbl_8056B340@l
+/* 802CF1C0 002CAE20 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802CF1C4 002CAE24 3B E5 00 AC */ addi r31, r5, 0xac
+/* 802CF1C8 002CAE28 93 C1 00 08 */ stw r30, 8(r1)
+/* 802CF1CC 002CAE2C 7C 09 03 A6 */ mtctr r0
+lbl_802CF1D0:
+/* 802CF1D0 002CAE30 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CF1D4 002CAE34 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF1D8 002CAE38 41 82 00 14 */ beq lbl_802CF1EC
+/* 802CF1DC 002CAE3C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF1E0 002CAE40 7C 00 18 40 */ cmplw r0, r3
+/* 802CF1E4 002CAE44 40 82 00 08 */ bne lbl_802CF1EC
+/* 802CF1E8 002CAE48 48 00 00 74 */ b lbl_802CF25C
+lbl_802CF1EC:
+/* 802CF1EC 002CAE4C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF1F0 002CAE50 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF1F4 002CAE54 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF1F8 002CAE58 41 82 00 14 */ beq lbl_802CF20C
+/* 802CF1FC 002CAE5C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF200 002CAE60 7C 00 18 40 */ cmplw r0, r3
+/* 802CF204 002CAE64 40 82 00 08 */ bne lbl_802CF20C
+/* 802CF208 002CAE68 48 00 00 54 */ b lbl_802CF25C
+lbl_802CF20C:
+/* 802CF20C 002CAE6C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF210 002CAE70 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF214 002CAE74 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF218 002CAE78 41 82 00 14 */ beq lbl_802CF22C
+/* 802CF21C 002CAE7C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF220 002CAE80 7C 00 18 40 */ cmplw r0, r3
+/* 802CF224 002CAE84 40 82 00 08 */ bne lbl_802CF22C
+/* 802CF228 002CAE88 48 00 00 34 */ b lbl_802CF25C
+lbl_802CF22C:
+/* 802CF22C 002CAE8C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF230 002CAE90 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF234 002CAE94 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF238 002CAE98 41 82 00 14 */ beq lbl_802CF24C
+/* 802CF23C 002CAE9C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF240 002CAEA0 7C 00 18 40 */ cmplw r0, r3
+/* 802CF244 002CAEA4 40 82 00 08 */ bne lbl_802CF24C
+/* 802CF248 002CAEA8 48 00 00 14 */ b lbl_802CF25C
+lbl_802CF24C:
+/* 802CF24C 002CAEAC 38 C6 00 01 */ addi r6, r6, 1
+/* 802CF250 002CAEB0 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802CF254 002CAEB4 42 00 FF 7C */ bdnz lbl_802CF1D0
+/* 802CF258 002CAEB8 3B E0 00 00 */ li r31, 0
+lbl_802CF25C:
+/* 802CF25C 002CAEBC 2C 1F 00 00 */ cmpwi r31, 0
+/* 802CF260 002CAEC0 41 82 01 18 */ beq lbl_802CF378
+/* 802CF264 002CAEC4 A0 04 00 00 */ lhz r0, 0(r4)
+/* 802CF268 002CAEC8 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF26C 002CAECC 40 82 00 38 */ bne lbl_802CF2A4
+/* 802CF270 002CAED0 88 1F 00 01 */ lbz r0, 1(r31)
+/* 802CF274 002CAED4 60 03 00 04 */ ori r3, r0, 4
+/* 802CF278 002CAED8 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
+/* 802CF27C 002CAEDC 98 7F 00 01 */ stb r3, 1(r31)
+/* 802CF280 002CAEE0 41 82 00 F8 */ beq lbl_802CF378
+/* 802CF284 002CAEE4 38 00 00 04 */ li r0, 4
+/* 802CF288 002CAEE8 38 80 01 00 */ li r4, 0x100
+/* 802CF28C 002CAEEC 98 1F 00 00 */ stb r0, 0(r31)
+/* 802CF290 002CAEF0 81 9F 00 20 */ lwz r12, 0x20(r31)
+/* 802CF294 002CAEF4 A0 7F 00 04 */ lhz r3, 4(r31)
+/* 802CF298 002CAEF8 7D 89 03 A6 */ mtctr r12
+/* 802CF29C 002CAEFC 4E 80 04 21 */ bctrl
+/* 802CF2A0 002CAF00 48 00 00 D8 */ b lbl_802CF378
+lbl_802CF2A4:
+/* 802CF2A4 002CAF04 81 9F 00 20 */ lwz r12, 0x20(r31)
+/* 802CF2A8 002CAF08 38 80 01 01 */ li r4, 0x101
+/* 802CF2AC 002CAF0C A0 7F 00 04 */ lhz r3, 4(r31)
+/* 802CF2B0 002CAF10 7D 89 03 A6 */ mtctr r12
+/* 802CF2B4 002CAF14 4E 80 04 21 */ bctrl
+/* 802CF2B8 002CAF18 A3 DF 00 10 */ lhz r30, 0x10(r31)
+/* 802CF2BC 002CAF1C 48 00 00 10 */ b lbl_802CF2CC
+lbl_802CF2C0:
+/* 802CF2C0 002CAF20 38 7F 00 14 */ addi r3, r31, 0x14
+/* 802CF2C4 002CAF24 4B FE B1 0D */ bl GKI_dequeue
+/* 802CF2C8 002CAF28 4B FE AA 6D */ bl GKI_freebuf
+lbl_802CF2CC:
+/* 802CF2CC 002CAF2C 80 1F 00 14 */ lwz r0, 0x14(r31)
+/* 802CF2D0 002CAF30 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF2D4 002CAF34 40 82 FF EC */ bne lbl_802CF2C0
+/* 802CF2D8 002CAF38 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CF2DC 002CAF3C 38 80 00 00 */ li r4, 0
+/* 802CF2E0 002CAF40 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CF2E4 002CAF44 38 00 00 02 */ li r0, 2
+/* 802CF2E8 002CAF48 98 9F 00 00 */ stb r4, 0(r31)
+/* 802CF2EC 002CAF4C 38 83 00 AC */ addi r4, r3, 0xac
+/* 802CF2F0 002CAF50 38 60 00 00 */ li r3, 0
+/* 802CF2F4 002CAF54 7C 09 03 A6 */ mtctr r0
+lbl_802CF2F8:
+/* 802CF2F8 002CAF58 88 04 00 00 */ lbz r0, 0(r4)
+/* 802CF2FC 002CAF5C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF300 002CAF60 41 82 00 10 */ beq lbl_802CF310
+/* 802CF304 002CAF64 A0 04 00 10 */ lhz r0, 0x10(r4)
+/* 802CF308 002CAF68 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF30C 002CAF6C 41 82 00 6C */ beq lbl_802CF378
+lbl_802CF310:
+/* 802CF310 002CAF70 88 04 00 60 */ lbz r0, 0x60(r4)
+/* 802CF314 002CAF74 38 63 00 01 */ addi r3, r3, 1
+/* 802CF318 002CAF78 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF31C 002CAF7C 41 82 00 10 */ beq lbl_802CF32C
+/* 802CF320 002CAF80 A0 04 00 70 */ lhz r0, 0x70(r4)
+/* 802CF324 002CAF84 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF328 002CAF88 41 82 00 50 */ beq lbl_802CF378
+lbl_802CF32C:
+/* 802CF32C 002CAF8C 88 04 00 C0 */ lbz r0, 0xc0(r4)
+/* 802CF330 002CAF90 38 63 00 01 */ addi r3, r3, 1
+/* 802CF334 002CAF94 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF338 002CAF98 41 82 00 10 */ beq lbl_802CF348
+/* 802CF33C 002CAF9C A0 04 00 D0 */ lhz r0, 0xd0(r4)
+/* 802CF340 002CAFA0 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF344 002CAFA4 41 82 00 34 */ beq lbl_802CF378
+lbl_802CF348:
+/* 802CF348 002CAFA8 88 04 01 20 */ lbz r0, 0x120(r4)
+/* 802CF34C 002CAFAC 38 63 00 01 */ addi r3, r3, 1
+/* 802CF350 002CAFB0 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF354 002CAFB4 41 82 00 10 */ beq lbl_802CF364
+/* 802CF358 002CAFB8 A0 04 01 30 */ lhz r0, 0x130(r4)
+/* 802CF35C 002CAFBC 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF360 002CAFC0 41 82 00 18 */ beq lbl_802CF378
+lbl_802CF364:
+/* 802CF364 002CAFC4 38 63 00 01 */ addi r3, r3, 1
+/* 802CF368 002CAFC8 38 84 01 80 */ addi r4, r4, 0x180
+/* 802CF36C 002CAFCC 42 00 FF 8C */ bdnz lbl_802CF2F8
+/* 802CF370 002CAFD0 7F C3 F3 78 */ mr r3, r30
+/* 802CF374 002CAFD4 48 00 66 59 */ bl func_802D59CC
+lbl_802CF378:
+/* 802CF378 002CAFD8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802CF37C 002CAFDC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802CF380 002CAFE0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802CF384 002CAFE4 7C 08 03 A6 */ mtlr r0
+/* 802CF388 002CAFE8 38 21 00 10 */ addi r1, r1, 0x10
+/* 802CF38C 002CAFEC 4E 80 00 20 */ blr
+
+gap_disconnect_ind:
+/* 802CF390 002CAFF0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802CF394 002CAFF4 7C 08 02 A6 */ mflr r0
+/* 802CF398 002CAFF8 3C A0 80 57 */ lis r5, lbl_8056B340@ha
+/* 802CF39C 002CAFFC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802CF3A0 002CB000 38 A5 B3 40 */ addi r5, r5, lbl_8056B340@l
+/* 802CF3A4 002CB004 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802CF3A8 002CB008 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802CF3AC 002CB00C 7C 9E 23 78 */ mr r30, r4
+/* 802CF3B0 002CB010 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802CF3B4 002CB014 7C 7D 1B 78 */ mr r29, r3
+/* 802CF3B8 002CB018 88 05 00 28 */ lbz r0, 0x28(r5)
+/* 802CF3BC 002CB01C 28 00 00 04 */ cmplwi r0, 4
+/* 802CF3C0 002CB020 41 80 00 1C */ blt lbl_802CF3DC
+/* 802CF3C4 002CB024 3C 60 00 0E */ lis r3, 0x000E0003@ha
+/* 802CF3C8 002CB028 3C 80 80 44 */ lis r4, lbl_804423A0@ha
+/* 802CF3CC 002CB02C 7F A5 EB 78 */ mr r5, r29
+/* 802CF3D0 002CB030 38 63 00 03 */ addi r3, r3, 0x000E0003@l
+/* 802CF3D4 002CB034 38 84 23 A0 */ addi r4, r4, lbl_804423A0@l
+/* 802CF3D8 002CB038 4B FE DB 51 */ bl LogMsg_1
+lbl_802CF3DC:
+/* 802CF3DC 002CB03C 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CF3E0 002CB040 38 00 00 02 */ li r0, 2
+/* 802CF3E4 002CB044 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CF3E8 002CB048 38 80 00 00 */ li r4, 0
+/* 802CF3EC 002CB04C 3B E3 00 AC */ addi r31, r3, 0xac
+/* 802CF3F0 002CB050 7C 09 03 A6 */ mtctr r0
+lbl_802CF3F4:
+/* 802CF3F4 002CB054 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CF3F8 002CB058 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF3FC 002CB05C 41 82 00 14 */ beq lbl_802CF410
+/* 802CF400 002CB060 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF404 002CB064 7C 00 E8 40 */ cmplw r0, r29
+/* 802CF408 002CB068 40 82 00 08 */ bne lbl_802CF410
+/* 802CF40C 002CB06C 48 00 00 74 */ b lbl_802CF480
+lbl_802CF410:
+/* 802CF410 002CB070 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF414 002CB074 38 84 00 01 */ addi r4, r4, 1
+/* 802CF418 002CB078 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF41C 002CB07C 41 82 00 14 */ beq lbl_802CF430
+/* 802CF420 002CB080 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF424 002CB084 7C 00 E8 40 */ cmplw r0, r29
+/* 802CF428 002CB088 40 82 00 08 */ bne lbl_802CF430
+/* 802CF42C 002CB08C 48 00 00 54 */ b lbl_802CF480
+lbl_802CF430:
+/* 802CF430 002CB090 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF434 002CB094 38 84 00 01 */ addi r4, r4, 1
+/* 802CF438 002CB098 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF43C 002CB09C 41 82 00 14 */ beq lbl_802CF450
+/* 802CF440 002CB0A0 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF444 002CB0A4 7C 00 E8 40 */ cmplw r0, r29
+/* 802CF448 002CB0A8 40 82 00 08 */ bne lbl_802CF450
+/* 802CF44C 002CB0AC 48 00 00 34 */ b lbl_802CF480
+lbl_802CF450:
+/* 802CF450 002CB0B0 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF454 002CB0B4 38 84 00 01 */ addi r4, r4, 1
+/* 802CF458 002CB0B8 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF45C 002CB0BC 41 82 00 14 */ beq lbl_802CF470
+/* 802CF460 002CB0C0 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF464 002CB0C4 7C 00 E8 40 */ cmplw r0, r29
+/* 802CF468 002CB0C8 40 82 00 08 */ bne lbl_802CF470
+/* 802CF46C 002CB0CC 48 00 00 14 */ b lbl_802CF480
+lbl_802CF470:
+/* 802CF470 002CB0D0 38 84 00 01 */ addi r4, r4, 1
+/* 802CF474 002CB0D4 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802CF478 002CB0D8 42 00 FF 7C */ bdnz lbl_802CF3F4
+/* 802CF47C 002CB0DC 3B E0 00 00 */ li r31, 0
+lbl_802CF480:
+/* 802CF480 002CB0E0 2C 1F 00 00 */ cmpwi r31, 0
+/* 802CF484 002CB0E4 41 82 00 E8 */ beq lbl_802CF56C
+/* 802CF488 002CB0E8 2C 1E 00 00 */ cmpwi r30, 0
+/* 802CF48C 002CB0EC 41 82 00 0C */ beq lbl_802CF498
+/* 802CF490 002CB0F0 7F A3 EB 78 */ mr r3, r29
+/* 802CF494 002CB0F4 48 00 6B B9 */ bl func_802D604C
+lbl_802CF498:
+/* 802CF498 002CB0F8 81 9F 00 20 */ lwz r12, 0x20(r31)
+/* 802CF49C 002CB0FC 38 80 01 01 */ li r4, 0x101
+/* 802CF4A0 002CB100 A0 7F 00 04 */ lhz r3, 4(r31)
+/* 802CF4A4 002CB104 7D 89 03 A6 */ mtctr r12
+/* 802CF4A8 002CB108 4E 80 04 21 */ bctrl
+/* 802CF4AC 002CB10C A3 DF 00 10 */ lhz r30, 0x10(r31)
+/* 802CF4B0 002CB110 48 00 00 10 */ b lbl_802CF4C0
+lbl_802CF4B4:
+/* 802CF4B4 002CB114 38 7F 00 14 */ addi r3, r31, 0x14
+/* 802CF4B8 002CB118 4B FE AF 19 */ bl GKI_dequeue
+/* 802CF4BC 002CB11C 4B FE A8 79 */ bl GKI_freebuf
+lbl_802CF4C0:
+/* 802CF4C0 002CB120 80 1F 00 14 */ lwz r0, 0x14(r31)
+/* 802CF4C4 002CB124 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF4C8 002CB128 40 82 FF EC */ bne lbl_802CF4B4
+/* 802CF4CC 002CB12C 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CF4D0 002CB130 38 80 00 00 */ li r4, 0
+/* 802CF4D4 002CB134 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CF4D8 002CB138 38 00 00 02 */ li r0, 2
+/* 802CF4DC 002CB13C 98 9F 00 00 */ stb r4, 0(r31)
+/* 802CF4E0 002CB140 38 83 00 AC */ addi r4, r3, 0xac
+/* 802CF4E4 002CB144 38 60 00 00 */ li r3, 0
+/* 802CF4E8 002CB148 7C 09 03 A6 */ mtctr r0
+lbl_802CF4EC:
+/* 802CF4EC 002CB14C 88 04 00 00 */ lbz r0, 0(r4)
+/* 802CF4F0 002CB150 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF4F4 002CB154 41 82 00 10 */ beq lbl_802CF504
+/* 802CF4F8 002CB158 A0 04 00 10 */ lhz r0, 0x10(r4)
+/* 802CF4FC 002CB15C 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF500 002CB160 41 82 00 6C */ beq lbl_802CF56C
+lbl_802CF504:
+/* 802CF504 002CB164 88 04 00 60 */ lbz r0, 0x60(r4)
+/* 802CF508 002CB168 38 63 00 01 */ addi r3, r3, 1
+/* 802CF50C 002CB16C 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF510 002CB170 41 82 00 10 */ beq lbl_802CF520
+/* 802CF514 002CB174 A0 04 00 70 */ lhz r0, 0x70(r4)
+/* 802CF518 002CB178 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF51C 002CB17C 41 82 00 50 */ beq lbl_802CF56C
+lbl_802CF520:
+/* 802CF520 002CB180 88 04 00 C0 */ lbz r0, 0xc0(r4)
+/* 802CF524 002CB184 38 63 00 01 */ addi r3, r3, 1
+/* 802CF528 002CB188 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF52C 002CB18C 41 82 00 10 */ beq lbl_802CF53C
+/* 802CF530 002CB190 A0 04 00 D0 */ lhz r0, 0xd0(r4)
+/* 802CF534 002CB194 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF538 002CB198 41 82 00 34 */ beq lbl_802CF56C
+lbl_802CF53C:
+/* 802CF53C 002CB19C 88 04 01 20 */ lbz r0, 0x120(r4)
+/* 802CF540 002CB1A0 38 63 00 01 */ addi r3, r3, 1
+/* 802CF544 002CB1A4 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF548 002CB1A8 41 82 00 10 */ beq lbl_802CF558
+/* 802CF54C 002CB1AC A0 04 01 30 */ lhz r0, 0x130(r4)
+/* 802CF550 002CB1B0 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF554 002CB1B4 41 82 00 18 */ beq lbl_802CF56C
+lbl_802CF558:
+/* 802CF558 002CB1B8 38 63 00 01 */ addi r3, r3, 1
+/* 802CF55C 002CB1BC 38 84 01 80 */ addi r4, r4, 0x180
+/* 802CF560 002CB1C0 42 00 FF 8C */ bdnz lbl_802CF4EC
+/* 802CF564 002CB1C4 7F C3 F3 78 */ mr r3, r30
+/* 802CF568 002CB1C8 48 00 64 65 */ bl func_802D59CC
+lbl_802CF56C:
+/* 802CF56C 002CB1CC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802CF570 002CB1D0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802CF574 002CB1D4 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802CF578 002CB1D8 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802CF57C 002CB1DC 7C 08 03 A6 */ mtlr r0
+/* 802CF580 002CB1E0 38 21 00 20 */ addi r1, r1, 0x20
+/* 802CF584 002CB1E4 4E 80 00 20 */ blr
+
+gap_data_ind:
+/* 802CF588 002CB1E8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802CF58C 002CB1EC 7C 08 02 A6 */ mflr r0
+/* 802CF590 002CB1F0 3C A0 80 57 */ lis r5, lbl_8056B340@ha
+/* 802CF594 002CB1F4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802CF598 002CB1F8 38 00 00 02 */ li r0, 2
+/* 802CF59C 002CB1FC 38 A5 B3 40 */ addi r5, r5, lbl_8056B340@l
+/* 802CF5A0 002CB200 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802CF5A4 002CB204 3B E5 00 AC */ addi r31, r5, 0xac
+/* 802CF5A8 002CB208 38 A0 00 00 */ li r5, 0
+/* 802CF5AC 002CB20C 7C 09 03 A6 */ mtctr r0
+lbl_802CF5B0:
+/* 802CF5B0 002CB210 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CF5B4 002CB214 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF5B8 002CB218 41 82 00 14 */ beq lbl_802CF5CC
+/* 802CF5BC 002CB21C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF5C0 002CB220 7C 00 18 40 */ cmplw r0, r3
+/* 802CF5C4 002CB224 40 82 00 08 */ bne lbl_802CF5CC
+/* 802CF5C8 002CB228 48 00 00 74 */ b lbl_802CF63C
+lbl_802CF5CC:
+/* 802CF5CC 002CB22C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF5D0 002CB230 38 A5 00 01 */ addi r5, r5, 1
+/* 802CF5D4 002CB234 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF5D8 002CB238 41 82 00 14 */ beq lbl_802CF5EC
+/* 802CF5DC 002CB23C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF5E0 002CB240 7C 00 18 40 */ cmplw r0, r3
+/* 802CF5E4 002CB244 40 82 00 08 */ bne lbl_802CF5EC
+/* 802CF5E8 002CB248 48 00 00 54 */ b lbl_802CF63C
+lbl_802CF5EC:
+/* 802CF5EC 002CB24C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF5F0 002CB250 38 A5 00 01 */ addi r5, r5, 1
+/* 802CF5F4 002CB254 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF5F8 002CB258 41 82 00 14 */ beq lbl_802CF60C
+/* 802CF5FC 002CB25C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF600 002CB260 7C 00 18 40 */ cmplw r0, r3
+/* 802CF604 002CB264 40 82 00 08 */ bne lbl_802CF60C
+/* 802CF608 002CB268 48 00 00 34 */ b lbl_802CF63C
+lbl_802CF60C:
+/* 802CF60C 002CB26C 8C 1F 00 60 */ lbzu r0, 0x60(r31)
+/* 802CF610 002CB270 38 A5 00 01 */ addi r5, r5, 1
+/* 802CF614 002CB274 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF618 002CB278 41 82 00 14 */ beq lbl_802CF62C
+/* 802CF61C 002CB27C A0 1F 00 06 */ lhz r0, 6(r31)
+/* 802CF620 002CB280 7C 00 18 40 */ cmplw r0, r3
+/* 802CF624 002CB284 40 82 00 08 */ bne lbl_802CF62C
+/* 802CF628 002CB288 48 00 00 14 */ b lbl_802CF63C
+lbl_802CF62C:
+/* 802CF62C 002CB28C 38 A5 00 01 */ addi r5, r5, 1
+/* 802CF630 002CB290 3B FF 00 60 */ addi r31, r31, 0x60
+/* 802CF634 002CB294 42 00 FF 7C */ bdnz lbl_802CF5B0
+/* 802CF638 002CB298 3B E0 00 00 */ li r31, 0
+lbl_802CF63C:
+/* 802CF63C 002CB29C 2C 1F 00 00 */ cmpwi r31, 0
+/* 802CF640 002CB2A0 40 82 00 10 */ bne lbl_802CF650
+/* 802CF644 002CB2A4 7C 83 23 78 */ mr r3, r4
+/* 802CF648 002CB2A8 4B FE A6 ED */ bl GKI_freebuf
+/* 802CF64C 002CB2AC 48 00 00 38 */ b lbl_802CF684
+lbl_802CF650:
+/* 802CF650 002CB2B0 88 1F 00 00 */ lbz r0, 0(r31)
+/* 802CF654 002CB2B4 28 00 00 04 */ cmplwi r0, 4
+/* 802CF658 002CB2B8 40 82 00 24 */ bne lbl_802CF67C
+/* 802CF65C 002CB2BC 38 7F 00 14 */ addi r3, r31, 0x14
+/* 802CF660 002CB2C0 4B FE AA F5 */ bl GKI_enqueue
+/* 802CF664 002CB2C4 81 9F 00 20 */ lwz r12, 0x20(r31)
+/* 802CF668 002CB2C8 38 80 01 02 */ li r4, 0x102
+/* 802CF66C 002CB2CC A0 7F 00 04 */ lhz r3, 4(r31)
+/* 802CF670 002CB2D0 7D 89 03 A6 */ mtctr r12
+/* 802CF674 002CB2D4 4E 80 04 21 */ bctrl
+/* 802CF678 002CB2D8 48 00 00 0C */ b lbl_802CF684
+lbl_802CF67C:
+/* 802CF67C 002CB2DC 7C 83 23 78 */ mr r3, r4
+/* 802CF680 002CB2E0 4B FE A6 B5 */ bl GKI_freebuf
+lbl_802CF684:
+/* 802CF684 002CB2E4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802CF688 002CB2E8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802CF68C 002CB2EC 7C 08 03 A6 */ mtlr r0
+/* 802CF690 002CB2F0 38 21 00 10 */ addi r1, r1, 0x10
+/* 802CF694 002CB2F4 4E 80 00 20 */ blr
+
+gap_congestion_ind:
+/* 802CF698 002CB2F8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802CF69C 002CB2FC 7C 08 02 A6 */ mflr r0
+/* 802CF6A0 002CB300 3C A0 80 57 */ lis r5, lbl_8056B340@ha
+/* 802CF6A4 002CB304 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802CF6A8 002CB308 38 A5 B3 40 */ addi r5, r5, lbl_8056B340@l
+/* 802CF6AC 002CB30C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802CF6B0 002CB310 7C 9F 23 78 */ mr r31, r4
+/* 802CF6B4 002CB314 93 C1 00 08 */ stw r30, 8(r1)
+/* 802CF6B8 002CB318 7C 7E 1B 78 */ mr r30, r3
+/* 802CF6BC 002CB31C 88 05 00 28 */ lbz r0, 0x28(r5)
+/* 802CF6C0 002CB320 28 00 00 04 */ cmplwi r0, 4
+/* 802CF6C4 002CB324 41 80 00 20 */ blt lbl_802CF6E4
+/* 802CF6C8 002CB328 3C 60 00 0E */ lis r3, 0x000E0003@ha
+/* 802CF6CC 002CB32C 3C 80 80 44 */ lis r4, lbl_804423C8@ha
+/* 802CF6D0 002CB330 7F E5 FB 78 */ mr r5, r31
+/* 802CF6D4 002CB334 7F C6 F3 78 */ mr r6, r30
+/* 802CF6D8 002CB338 38 63 00 03 */ addi r3, r3, 0x000E0003@l
+/* 802CF6DC 002CB33C 38 84 23 C8 */ addi r4, r4, lbl_804423C8@l
+/* 802CF6E0 002CB340 4B FE D8 61 */ bl LogMsg_2
+lbl_802CF6E4:
+/* 802CF6E4 002CB344 3C 60 80 57 */ lis r3, lbl_8056B340@ha
+/* 802CF6E8 002CB348 38 00 00 02 */ li r0, 2
+/* 802CF6EC 002CB34C 38 63 B3 40 */ addi r3, r3, lbl_8056B340@l
+/* 802CF6F0 002CB350 38 80 00 00 */ li r4, 0
+/* 802CF6F4 002CB354 38 63 00 AC */ addi r3, r3, 0xac
+/* 802CF6F8 002CB358 7C 09 03 A6 */ mtctr r0
+lbl_802CF6FC:
+/* 802CF6FC 002CB35C 88 03 00 00 */ lbz r0, 0(r3)
+/* 802CF700 002CB360 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF704 002CB364 41 82 00 14 */ beq lbl_802CF718
+/* 802CF708 002CB368 A0 03 00 06 */ lhz r0, 6(r3)
+/* 802CF70C 002CB36C 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF710 002CB370 40 82 00 08 */ bne lbl_802CF718
+/* 802CF714 002CB374 48 00 00 74 */ b lbl_802CF788
+lbl_802CF718:
+/* 802CF718 002CB378 8C 03 00 60 */ lbzu r0, 0x60(r3)
+/* 802CF71C 002CB37C 38 84 00 01 */ addi r4, r4, 1
+/* 802CF720 002CB380 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF724 002CB384 41 82 00 14 */ beq lbl_802CF738
+/* 802CF728 002CB388 A0 03 00 06 */ lhz r0, 6(r3)
+/* 802CF72C 002CB38C 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF730 002CB390 40 82 00 08 */ bne lbl_802CF738
+/* 802CF734 002CB394 48 00 00 54 */ b lbl_802CF788
+lbl_802CF738:
+/* 802CF738 002CB398 8C 03 00 60 */ lbzu r0, 0x60(r3)
+/* 802CF73C 002CB39C 38 84 00 01 */ addi r4, r4, 1
+/* 802CF740 002CB3A0 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF744 002CB3A4 41 82 00 14 */ beq lbl_802CF758
+/* 802CF748 002CB3A8 A0 03 00 06 */ lhz r0, 6(r3)
+/* 802CF74C 002CB3AC 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF750 002CB3B0 40 82 00 08 */ bne lbl_802CF758
+/* 802CF754 002CB3B4 48 00 00 34 */ b lbl_802CF788
+lbl_802CF758:
+/* 802CF758 002CB3B8 8C 03 00 60 */ lbzu r0, 0x60(r3)
+/* 802CF75C 002CB3BC 38 84 00 01 */ addi r4, r4, 1
+/* 802CF760 002CB3C0 2C 00 00 00 */ cmpwi r0, 0
+/* 802CF764 002CB3C4 41 82 00 14 */ beq lbl_802CF778
+/* 802CF768 002CB3C8 A0 03 00 06 */ lhz r0, 6(r3)
+/* 802CF76C 002CB3CC 7C 00 F0 40 */ cmplw r0, r30
+/* 802CF770 002CB3D0 40 82 00 08 */ bne lbl_802CF778
+/* 802CF774 002CB3D4 48 00 00 14 */ b lbl_802CF788
+lbl_802CF778:
+/* 802CF778 002CB3D8 38 84 00 01 */ addi r4, r4, 1
+/* 802CF77C 002CB3DC 38 63 00 60 */ addi r3, r3, 0x60
+/* 802CF780 002CB3E0 42 00 FF 7C */ bdnz lbl_802CF6FC
+/* 802CF784 002CB3E4 38 60 00 00 */ li r3, 0
+lbl_802CF788:
+/* 802CF788 002CB3E8 2C 03 00 00 */ cmpwi r3, 0
+/* 802CF78C 002CB3EC 41 82 00 28 */ beq lbl_802CF7B4
+/* 802CF790 002CB3F0 7C 1F 00 D0 */ neg r0, r31
+/* 802CF794 002CB3F4 81 83 00 20 */ lwz r12, 0x20(r3)
+/* 802CF798 002CB3F8 7C 00 FB 78 */ or r0, r0, r31
+/* 802CF79C 002CB3FC A0 63 00 04 */ lhz r3, 4(r3)
+/* 802CF7A0 002CB400 7C 04 FE 70 */ srawi r4, r0, 0x1f
+/* 802CF7A4 002CB404 38 04 01 04 */ addi r0, r4, 0x104
+/* 802CF7A8 002CB408 54 04 04 3E */ clrlwi r4, r0, 0x10
+/* 802CF7AC 002CB40C 7D 89 03 A6 */ mtctr r12
+/* 802CF7B0 002CB410 4E 80 04 21 */ bctrl
+lbl_802CF7B4:
+/* 802CF7B4 002CB414 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802CF7B8 002CB418 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802CF7BC 002CB41C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 802CF7C0 002CB420 7C 08 03 A6 */ mtlr r0
+/* 802CF7C4 002CB424 38 21 00 10 */ addi r1, r1, 0x10
+/* 802CF7C8 002CB428 4E 80 00 20 */ blr
|