	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ieee80211_proto_attach         ## -- Begin function ieee80211_proto_attach
	.p2align	4, 0x90
_ieee80211_proto_attach:                ## @ieee80211_proto_attach
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%rbx
	pushq	%rax
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %rbx
	movq	48(%rdi), %rax
	movq	_IEEE80211_WEP_IVLEN@GOTPCREL(%rip), %rcx
	addq	(%rcx), %rax
	movq	_IEEE80211_WEP_KIDLEN@GOTPCREL(%rip), %rcx
	addq	(%rcx), %rax
	movq	_IEEE80211_WEP_EXTIVLEN@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	leaq	(%rcx,%rax), %r14
	addq	$4, %r14
	movq	%r14, %rdi
	callq	_ALIGN
	movq	_max_linkhdr@GOTPCREL(%rip), %r15
	cmpq	(%r15), %rax
	jle	LBB0_2
## %bb.1:
	movq	%r14, %rdi
	callq	_ALIGN
	movq	%rax, (%r15)
	movq	_max_protohdr@GOTPCREL(%rip), %rcx
	addq	(%rcx), %rax
	movq	_max_hdr@GOTPCREL(%rip), %rcx
	movq	%rax, (%rcx)
	movq	_MHLEN@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	subq	%rax, %rcx
	movq	_max_datalen@GOTPCREL(%rip), %rax
	movq	%rcx, (%rax)
LBB0_2:
	movq	_IEEE80211_PROT_CTSONLY@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 40(%rbx)
	leaq	36(%rbx), %rdi
	movq	_parent_updown@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	leaq	32(%rbx), %rdi
	movq	_update_mcast@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	leaq	28(%rbx), %rdi
	movq	_update_promisc@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	leaq	24(%rbx), %rdi
	movq	_update_channel@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	leaq	20(%rbx), %rdi
	movq	_beacon_miss@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	leaq	16(%rbx), %rdi
	movq	_update_chw@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	leaq	12(%rbx), %rdi
	movq	_restart_vaps@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_TASK_INIT
	movq	_AGGRESSIVE_MODE_SWITCH_HYSTERESIS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 8(%rbx)
	movq	_ieee80211_send_mgmt@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 4(%rbx)
	movq	_null_raw_xmit@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%rbx)
	movq	%rbx, %rdi
	callq	_ieee80211_adhoc_attach
	movq	%rbx, %rdi
	callq	_ieee80211_sta_attach
	movq	%rbx, %rdi
	callq	_ieee80211_wds_attach
	movq	%rbx, %rdi
	callq	_ieee80211_hostap_attach
	movq	%rbx, %rdi
	addq	$8, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_ieee80211_monitor_attach       ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_IEEE80211_WEP_IVLEN,8,3        ## @IEEE80211_WEP_IVLEN
	.comm	_IEEE80211_WEP_KIDLEN,8,3       ## @IEEE80211_WEP_KIDLEN
	.comm	_IEEE80211_WEP_EXTIVLEN,8,3     ## @IEEE80211_WEP_EXTIVLEN
	.comm	_max_linkhdr,8,3                ## @max_linkhdr
	.comm	_max_protohdr,8,3               ## @max_protohdr
	.comm	_max_hdr,8,3                    ## @max_hdr
	.comm	_MHLEN,8,3                      ## @MHLEN
	.comm	_max_datalen,8,3                ## @max_datalen
	.comm	_IEEE80211_PROT_CTSONLY,4,2     ## @IEEE80211_PROT_CTSONLY
	.comm	_parent_updown,4,2              ## @parent_updown
	.comm	_update_mcast,4,2               ## @update_mcast
	.comm	_update_promisc,4,2             ## @update_promisc
	.comm	_update_channel,4,2             ## @update_channel
	.comm	_beacon_miss,4,2                ## @beacon_miss
	.comm	_update_chw,4,2                 ## @update_chw
	.comm	_restart_vaps,4,2               ## @restart_vaps
	.comm	_AGGRESSIVE_MODE_SWITCH_HYSTERESIS,4,2 ## @AGGRESSIVE_MODE_SWITCH_HYSTERESIS
	.comm	_ieee80211_send_mgmt,4,2        ## @ieee80211_send_mgmt
	.comm	_null_raw_xmit,4,2              ## @null_raw_xmit
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ieee80211_proto_attach         ; -- Begin function ieee80211_proto_attach
	.p2align	2
_ieee80211_proto_attach:                ; @ieee80211_proto_attach
	.cfi_startproc
; %bb.0:
	stp	x22, x21, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	mov	x19, x0
Lloh0:
	adrp	x8, _IEEE80211_WEP_IVLEN@GOTPAGE
Lloh1:
	ldr	x8, [x8, _IEEE80211_WEP_IVLEN@GOTPAGEOFF]
	ldr	x9, [x0, #48]
Lloh2:
	ldr	x8, [x8]
Lloh3:
	adrp	x10, _IEEE80211_WEP_KIDLEN@GOTPAGE
Lloh4:
	ldr	x10, [x10, _IEEE80211_WEP_KIDLEN@GOTPAGEOFF]
Lloh5:
	ldr	x10, [x10]
	add	x8, x9, x8
	add	x8, x8, x10
Lloh6:
	adrp	x9, _IEEE80211_WEP_EXTIVLEN@GOTPAGE
Lloh7:
	ldr	x9, [x9, _IEEE80211_WEP_EXTIVLEN@GOTPAGEOFF]
Lloh8:
	ldr	x9, [x9]
	add	x8, x8, x9
	add	x20, x8, #4
	mov	x0, x20
	bl	_ALIGN
Lloh9:
	adrp	x21, _max_linkhdr@GOTPAGE
Lloh10:
	ldr	x21, [x21, _max_linkhdr@GOTPAGEOFF]
	ldr	x8, [x21]
	cmp	x0, x8
	b.le	LBB0_2
; %bb.1:
	mov	x0, x20
	bl	_ALIGN
	str	x0, [x21]
Lloh11:
	adrp	x8, _max_protohdr@GOTPAGE
Lloh12:
	ldr	x8, [x8, _max_protohdr@GOTPAGEOFF]
Lloh13:
	ldr	x8, [x8]
Lloh14:
	adrp	x9, _max_hdr@GOTPAGE
Lloh15:
	ldr	x9, [x9, _max_hdr@GOTPAGEOFF]
Lloh16:
	adrp	x10, _MHLEN@GOTPAGE
Lloh17:
	ldr	x10, [x10, _MHLEN@GOTPAGEOFF]
Lloh18:
	ldr	x10, [x10]
	add	x8, x8, x0
	sub	x10, x10, x8
Lloh19:
	str	x8, [x9]
Lloh20:
	adrp	x8, _max_datalen@GOTPAGE
Lloh21:
	ldr	x8, [x8, _max_datalen@GOTPAGEOFF]
Lloh22:
	str	x10, [x8]
LBB0_2:
Lloh23:
	adrp	x8, _IEEE80211_PROT_CTSONLY@GOTPAGE
Lloh24:
	ldr	x8, [x8, _IEEE80211_PROT_CTSONLY@GOTPAGEOFF]
Lloh25:
	ldr	w8, [x8]
	str	w8, [x19, #40]
	add	x0, x19, #36
Lloh26:
	adrp	x8, _parent_updown@GOTPAGE
Lloh27:
	ldr	x8, [x8, _parent_updown@GOTPAGEOFF]
Lloh28:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
	add	x0, x19, #32
Lloh29:
	adrp	x8, _update_mcast@GOTPAGE
Lloh30:
	ldr	x8, [x8, _update_mcast@GOTPAGEOFF]
Lloh31:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
	add	x0, x19, #28
Lloh32:
	adrp	x8, _update_promisc@GOTPAGE
Lloh33:
	ldr	x8, [x8, _update_promisc@GOTPAGEOFF]
Lloh34:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
	add	x0, x19, #24
Lloh35:
	adrp	x8, _update_channel@GOTPAGE
Lloh36:
	ldr	x8, [x8, _update_channel@GOTPAGEOFF]
Lloh37:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
	add	x0, x19, #20
Lloh38:
	adrp	x8, _beacon_miss@GOTPAGE
Lloh39:
	ldr	x8, [x8, _beacon_miss@GOTPAGEOFF]
Lloh40:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
	add	x0, x19, #16
Lloh41:
	adrp	x8, _update_chw@GOTPAGE
Lloh42:
	ldr	x8, [x8, _update_chw@GOTPAGEOFF]
Lloh43:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
	add	x0, x19, #12
Lloh44:
	adrp	x8, _restart_vaps@GOTPAGE
Lloh45:
	ldr	x8, [x8, _restart_vaps@GOTPAGEOFF]
Lloh46:
	ldr	w2, [x8]
	mov	w1, #0
	mov	x3, x19
	bl	_TASK_INIT
Lloh47:
	adrp	x8, _AGGRESSIVE_MODE_SWITCH_HYSTERESIS@GOTPAGE
Lloh48:
	ldr	x8, [x8, _AGGRESSIVE_MODE_SWITCH_HYSTERESIS@GOTPAGEOFF]
Lloh49:
	ldr	w8, [x8]
	str	w8, [x19, #8]
Lloh50:
	adrp	x8, _ieee80211_send_mgmt@GOTPAGE
Lloh51:
	ldr	x8, [x8, _ieee80211_send_mgmt@GOTPAGEOFF]
Lloh52:
	ldr	w8, [x8]
Lloh53:
	adrp	x9, _null_raw_xmit@GOTPAGE
Lloh54:
	ldr	x9, [x9, _null_raw_xmit@GOTPAGEOFF]
Lloh55:
	ldr	w9, [x9]
	stp	w9, w8, [x19]
	mov	x0, x19
	bl	_ieee80211_adhoc_attach
	mov	x0, x19
	bl	_ieee80211_sta_attach
	mov	x0, x19
	bl	_ieee80211_wds_attach
	mov	x0, x19
	bl	_ieee80211_hostap_attach
	mov	x0, x19
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp], #48             ; 16-byte Folded Reload
	b	_ieee80211_monitor_attach
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotStr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpLdrGotStr	Lloh14, Lloh15, Lloh19
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh53, Lloh54, Lloh55
	.loh AdrpLdrGotLdr	Lloh50, Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh47, Lloh48, Lloh49
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh26, Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh25
	.cfi_endproc
                                        ; -- End function
	.comm	_IEEE80211_WEP_IVLEN,8,3        ; @IEEE80211_WEP_IVLEN
	.comm	_IEEE80211_WEP_KIDLEN,8,3       ; @IEEE80211_WEP_KIDLEN
	.comm	_IEEE80211_WEP_EXTIVLEN,8,3     ; @IEEE80211_WEP_EXTIVLEN
	.comm	_max_linkhdr,8,3                ; @max_linkhdr
	.comm	_max_protohdr,8,3               ; @max_protohdr
	.comm	_max_hdr,8,3                    ; @max_hdr
	.comm	_MHLEN,8,3                      ; @MHLEN
	.comm	_max_datalen,8,3                ; @max_datalen
	.comm	_IEEE80211_PROT_CTSONLY,4,2     ; @IEEE80211_PROT_CTSONLY
	.comm	_parent_updown,4,2              ; @parent_updown
	.comm	_update_mcast,4,2               ; @update_mcast
	.comm	_update_promisc,4,2             ; @update_promisc
	.comm	_update_channel,4,2             ; @update_channel
	.comm	_beacon_miss,4,2                ; @beacon_miss
	.comm	_update_chw,4,2                 ; @update_chw
	.comm	_restart_vaps,4,2               ; @restart_vaps
	.comm	_AGGRESSIVE_MODE_SWITCH_HYSTERESIS,4,2 ; @AGGRESSIVE_MODE_SWITCH_HYSTERESIS
	.comm	_ieee80211_send_mgmt,4,2        ; @ieee80211_send_mgmt
	.comm	_null_raw_xmit,4,2              ; @null_raw_xmit
.subsections_via_symbols
