	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function ar5212_decode_rxstatus
_ar5212_decode_rxstatus:                ## @ar5212_decode_rxstatus
	.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	%r13
	pushq	%r12
	pushq	%rbx
	subq	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %rbx
	leaq	12(%rdi), %rsi
	leaq	-64(%rbp), %rdi
	movl	$24, %edx
	callq	_memcpy
	movl	4(%rbx), %edi
	callq	_be32toh
	movq	%rax, %r14
	movl	(%rbx), %edi
	callq	_be32toh
	movq	%rax, %r15
	movl	8(%rbx), %edi
	callq	_be64toh
	movq	%rax, %r12
	movl	-64(%rbp), %edi
	movq	_AR_Done@GOTPCREL(%rip), %r13
	movl	(%r13), %esi
	callq	_MF
	movl	%eax, %ebx
	movl	-64(%rbp), %edi
	movq	_AR_RcvTimestamp@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MS
	leaq	L_.str(%rip), %rdi
	movl	%r14d, %esi
	movl	%r15d, %edx
	movq	%r12, %rcx
	movl	%ebx, %r8d
	movl	%eax, %r9d
	xorl	%eax, %eax
	callq	_printf
	movl	-60(%rbp), %esi
	movl	-56(%rbp), %edx
	movl	-52(%rbp), %ecx
	movl	-48(%rbp), %r8d
	leaq	L_.str.1(%rip), %rdi
	xorl	%eax, %eax
	callq	_printf
	movl	-44(%rbp), %edi
	movq	_AR_DataLen@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	andl	%edi, %ebx
	movq	_AR_More@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	movl	%eax, %r14d
	movl	-44(%rbp), %edi
	movq	_AR_DecompCRCErr@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	movl	%eax, %r15d
	movl	-44(%rbp), %edi
	movq	_AR_RcvRate@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MS
	leaq	L_.str.2(%rip), %rdi
	movl	%ebx, %esi
	movl	%r14d, %edx
	movl	%r15d, %ecx
	movl	%eax, %r8d
	xorl	%eax, %eax
	callq	_printf
	movl	-44(%rbp), %edi
	movq	_AR_RcvSigStrength@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MS
	movl	%eax, %ebx
	movl	-44(%rbp), %edi
	movq	_AR_RcvAntenna@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MS
	leaq	L_.str.3(%rip), %rdi
	movl	%ebx, %esi
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_printf
	movl	-64(%rbp), %edi
	movl	(%r13), %esi
	callq	_MF
	movl	%eax, %r14d
	movl	-64(%rbp), %edi
	movq	_AR_FrmRcvOK@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	movl	%eax, %r15d
	movl	-64(%rbp), %edi
	movq	_AR_CRCErr@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	movl	%eax, %ebx
	movl	-64(%rbp), %edi
	movq	_AR_DecryptCRCErr@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	leaq	L_.str.4(%rip), %rdi
	movl	%r14d, %esi
	movl	%r15d, %edx
	movl	%ebx, %ecx
	movl	%eax, %r8d
	xorl	%eax, %eax
	callq	_printf
	movl	-64(%rbp), %edi
	movq	_AR_PHYErr@GOTPCREL(%rip), %r15
	movl	(%r15), %esi
	callq	_MF
	movl	%eax, %r14d
	movl	-64(%rbp), %edi
	movq	_AR_MichaelErr@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	movl	%eax, %ebx
	movl	-64(%rbp), %edi
	movq	_AR_KeyIdxValid@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	leaq	L_.str.5(%rip), %rdi
	movl	%r14d, %esi
	movl	%ebx, %edx
	movl	%eax, %ecx
	xorl	%eax, %eax
	callq	_printf
	movl	-64(%rbp), %edi
	movl	(%r15), %esi
	callq	_MF
	testl	%eax, %eax
	movl	-64(%rbp), %edi
	leaq	L_.str.7(%rip), %rax
	leaq	L_.str.6(%rip), %rbx
	cmoveq	%rax, %rbx
	movq	_AR_PHYErrCode@GOTPCREL(%rip), %rax
	cmoveq	_AR_KeyIdx@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MS
	movq	%rbx, %rdi
	movl	%eax, %esi
	xorl	%eax, %eax
	callq	_printf
	movl	-64(%rbp), %edi
	movq	_AR_KeyCacheMiss@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MF
	leaq	L_.str.8(%rip), %rdi
	movl	%eax, %esi
	xorl	%eax, %eax
	callq	_printf
	movl	-64(%rbp), %edi
	movq	_AR_RcvTimestamp@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MS
	leaq	L_.str.9(%rip), %rdi
	movl	%eax, %esi
	xorl	%eax, %eax
	callq	_printf
	leaq	L_str(%rip), %rdi
	callq	_puts
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"[%u.%06u] [%llu] RXSTATUS: RxOK=%d TS=0x%08x\n"

	.comm	_AR_Done,4,2                    ## @AR_Done
	.comm	_AR_RcvTimestamp,4,2            ## @AR_RcvTimestamp
L_.str.1:                               ## @.str.1
	.asciz	"  link=0x%08x, data=0x%08x, ctl0=0x%08x, ctl2=0x%08x\n"

L_.str.2:                               ## @.str.2
	.asciz	"  DataLen=%d, ArMore=%d, DecompCrcError=%d, RcvRate=0x%02x\n"

	.comm	_AR_DataLen,4,2                 ## @AR_DataLen
	.comm	_AR_More,4,2                    ## @AR_More
	.comm	_AR_DecompCRCErr,4,2            ## @AR_DecompCRCErr
	.comm	_AR_RcvRate,4,2                 ## @AR_RcvRate
L_.str.3:                               ## @.str.3
	.asciz	"  RSSI=%d, RcvAntenna=0x%x\n"

	.comm	_AR_RcvSigStrength,4,2          ## @AR_RcvSigStrength
	.comm	_AR_RcvAntenna,4,2              ## @AR_RcvAntenna
L_.str.4:                               ## @.str.4
	.asciz	"  RxDone=%d, RxFrameOk=%d, CrcErr=%d, DecryptCrcErr=%d\n"

	.comm	_AR_FrmRcvOK,4,2                ## @AR_FrmRcvOK
	.comm	_AR_CRCErr,4,2                  ## @AR_CRCErr
	.comm	_AR_DecryptCRCErr,4,2           ## @AR_DecryptCRCErr
L_.str.5:                               ## @.str.5
	.asciz	"  PhyErr=%d, MichaelErr=%d, KeyIdxValid=%d\n"

	.comm	_AR_PHYErr,4,2                  ## @AR_PHYErr
	.comm	_AR_MichaelErr,4,2              ## @AR_MichaelErr
	.comm	_AR_KeyIdxValid,4,2             ## @AR_KeyIdxValid
L_.str.6:                               ## @.str.6
	.asciz	"  PhyErrCode=0x%02x\n"

	.comm	_AR_PHYErrCode,4,2              ## @AR_PHYErrCode
L_.str.7:                               ## @.str.7
	.asciz	"  KeyIdx=0x%02x\n"

	.comm	_AR_KeyIdx,4,2                  ## @AR_KeyIdx
L_.str.8:                               ## @.str.8
	.asciz	"  KeyMiss=%d\n"

	.comm	_AR_KeyCacheMiss,4,2            ## @AR_KeyCacheMiss
L_.str.9:                               ## @.str.9
	.asciz	"  Timetamp: 0x%05x\n"

L_str:                                  ## @str
	.asciz	"\n ------"

	.no_dead_strip	_ar5212_decode_rxstatus
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function ar5212_decode_rxstatus
_ar5212_decode_rxstatus:                ; @ar5212_decode_rxstatus
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #128
	.cfi_def_cfa_offset 128
	stp	x24, x23, [sp, #64]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #80]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #96]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #112]            ; 16-byte Folded Spill
	add	x29, sp, #112
	.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
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	mov	x19, x0
	add	x1, x0, #12
	add	x0, sp, #40
	mov	w2, #24
	bl	_memcpy
	ldr	w0, [x19, #4]
	bl	_be32toh
	mov	x20, x0
	ldr	w0, [x19]
	bl	_be32toh
	mov	x21, x0
	ldr	w0, [x19, #8]
	bl	_be64toh
	mov	x19, x0
	ldr	w0, [sp, #40]
Lloh0:
	adrp	x24, _AR_Done@GOTPAGE
Lloh1:
	ldr	x24, [x24, _AR_Done@GOTPAGEOFF]
	ldr	w1, [x24]
	bl	_MF
	mov	x22, x0
	ldr	w0, [sp, #40]
Lloh2:
	adrp	x23, _AR_RcvTimestamp@GOTPAGE
Lloh3:
	ldr	x23, [x23, _AR_RcvTimestamp@GOTPAGEOFF]
	ldr	w1, [x23]
	bl	_MS
                                        ; kill: def $w0 killed $w0 def $x0
	stp	x22, x0, [sp, #24]
	stp	x21, x19, [sp, #8]
	str	x20, [sp]
Lloh4:
	adrp	x0, l_.str@PAGE
Lloh5:
	add	x0, x0, l_.str@PAGEOFF
	bl	_printf
	ldp	w8, w9, [sp, #44]
	ldp	w10, w11, [sp, #52]
	stp	x10, x11, [sp, #16]
	stp	x8, x9, [sp]
Lloh6:
	adrp	x0, l_.str.1@PAGE
Lloh7:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_printf
Lloh8:
	adrp	x8, _AR_DataLen@GOTPAGE
Lloh9:
	ldr	x8, [x8, _AR_DataLen@GOTPAGEOFF]
	ldr	w0, [sp, #60]
Lloh10:
	ldr	w8, [x8]
	and	w21, w8, w0
Lloh11:
	adrp	x8, _AR_More@GOTPAGE
Lloh12:
	ldr	x8, [x8, _AR_More@GOTPAGEOFF]
Lloh13:
	ldr	w1, [x8]
	bl	_MF
	mov	x19, x0
	ldr	w0, [sp, #60]
Lloh14:
	adrp	x8, _AR_DecompCRCErr@GOTPAGE
Lloh15:
	ldr	x8, [x8, _AR_DecompCRCErr@GOTPAGEOFF]
Lloh16:
	ldr	w1, [x8]
	bl	_MF
	mov	x20, x0
	ldr	w0, [sp, #60]
Lloh17:
	adrp	x8, _AR_RcvRate@GOTPAGE
Lloh18:
	ldr	x8, [x8, _AR_RcvRate@GOTPAGEOFF]
Lloh19:
	ldr	w1, [x8]
	bl	_MS
                                        ; kill: def $w0 killed $w0 def $x0
	stp	x20, x0, [sp, #16]
	stp	x21, x19, [sp]
Lloh20:
	adrp	x0, l_.str.2@PAGE
Lloh21:
	add	x0, x0, l_.str.2@PAGEOFF
	bl	_printf
	ldr	w0, [sp, #60]
Lloh22:
	adrp	x8, _AR_RcvSigStrength@GOTPAGE
Lloh23:
	ldr	x8, [x8, _AR_RcvSigStrength@GOTPAGEOFF]
Lloh24:
	ldr	w1, [x8]
	bl	_MS
	mov	x19, x0
	ldr	w0, [sp, #60]
Lloh25:
	adrp	x8, _AR_RcvAntenna@GOTPAGE
Lloh26:
	ldr	x8, [x8, _AR_RcvAntenna@GOTPAGEOFF]
Lloh27:
	ldr	w1, [x8]
	bl	_MS
                                        ; kill: def $w0 killed $w0 def $x0
	stp	x19, x0, [sp]
Lloh28:
	adrp	x0, l_.str.3@PAGE
Lloh29:
	add	x0, x0, l_.str.3@PAGEOFF
	bl	_printf
	ldr	w0, [sp, #40]
	ldr	w1, [x24]
	bl	_MF
	mov	x19, x0
	ldr	w0, [sp, #40]
Lloh30:
	adrp	x8, _AR_FrmRcvOK@GOTPAGE
Lloh31:
	ldr	x8, [x8, _AR_FrmRcvOK@GOTPAGEOFF]
Lloh32:
	ldr	w1, [x8]
	bl	_MF
	mov	x20, x0
	ldr	w0, [sp, #40]
Lloh33:
	adrp	x8, _AR_CRCErr@GOTPAGE
Lloh34:
	ldr	x8, [x8, _AR_CRCErr@GOTPAGEOFF]
Lloh35:
	ldr	w1, [x8]
	bl	_MF
	mov	x21, x0
	ldr	w0, [sp, #40]
Lloh36:
	adrp	x8, _AR_DecryptCRCErr@GOTPAGE
Lloh37:
	ldr	x8, [x8, _AR_DecryptCRCErr@GOTPAGEOFF]
Lloh38:
	ldr	w1, [x8]
	bl	_MF
                                        ; kill: def $w0 killed $w0 def $x0
	stp	x21, x0, [sp, #16]
	stp	x19, x20, [sp]
Lloh39:
	adrp	x0, l_.str.4@PAGE
Lloh40:
	add	x0, x0, l_.str.4@PAGEOFF
	bl	_printf
	ldr	w0, [sp, #40]
Lloh41:
	adrp	x21, _AR_PHYErr@GOTPAGE
Lloh42:
	ldr	x21, [x21, _AR_PHYErr@GOTPAGEOFF]
	ldr	w1, [x21]
	bl	_MF
	mov	x19, x0
	ldr	w0, [sp, #40]
Lloh43:
	adrp	x8, _AR_MichaelErr@GOTPAGE
Lloh44:
	ldr	x8, [x8, _AR_MichaelErr@GOTPAGEOFF]
Lloh45:
	ldr	w1, [x8]
	bl	_MF
	mov	x20, x0
	ldr	w0, [sp, #40]
Lloh46:
	adrp	x8, _AR_KeyIdxValid@GOTPAGE
Lloh47:
	ldr	x8, [x8, _AR_KeyIdxValid@GOTPAGEOFF]
Lloh48:
	ldr	w1, [x8]
	bl	_MF
                                        ; kill: def $w0 killed $w0 def $x0
	stp	x20, x0, [sp, #8]
	str	x19, [sp]
Lloh49:
	adrp	x0, l_.str.5@PAGE
Lloh50:
	add	x0, x0, l_.str.5@PAGEOFF
	bl	_printf
	ldr	w0, [sp, #40]
	ldr	w1, [x21]
	bl	_MF
	ldr	w8, [sp, #40]
Lloh51:
	adrp	x9, l_.str.6@PAGE
Lloh52:
	add	x9, x9, l_.str.6@PAGEOFF
Lloh53:
	adrp	x10, l_.str.7@PAGE
Lloh54:
	add	x10, x10, l_.str.7@PAGEOFF
	cmp	w0, #0
	csel	x19, x10, x9, eq
Lloh55:
	adrp	x9, _AR_KeyIdx@GOTPAGE
Lloh56:
	ldr	x9, [x9, _AR_KeyIdx@GOTPAGEOFF]
Lloh57:
	adrp	x10, _AR_PHYErrCode@GOTPAGE
Lloh58:
	ldr	x10, [x10, _AR_PHYErrCode@GOTPAGEOFF]
	csel	x9, x9, x10, eq
	ldr	w1, [x9]
	mov	x0, x8
	bl	_MS
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
	mov	x0, x19
	bl	_printf
	ldr	w0, [sp, #40]
Lloh59:
	adrp	x8, _AR_KeyCacheMiss@GOTPAGE
Lloh60:
	ldr	x8, [x8, _AR_KeyCacheMiss@GOTPAGEOFF]
Lloh61:
	ldr	w1, [x8]
	bl	_MF
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
Lloh62:
	adrp	x0, l_.str.8@PAGE
Lloh63:
	add	x0, x0, l_.str.8@PAGEOFF
	bl	_printf
	ldr	w0, [sp, #40]
	ldr	w1, [x23]
	bl	_MS
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
Lloh64:
	adrp	x0, l_.str.9@PAGE
Lloh65:
	add	x0, x0, l_.str.9@PAGEOFF
	bl	_printf
Lloh66:
	adrp	x0, l_str@PAGE
Lloh67:
	add	x0, x0, l_str@PAGEOFF
	bl	_puts
	ldp	x29, x30, [sp, #112]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #96]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #80]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #64]             ; 16-byte Folded Reload
	add	sp, sp, #128
	ret
	.loh AdrpAdd	Lloh66, Lloh67
	.loh AdrpAdd	Lloh64, Lloh65
	.loh AdrpAdd	Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh59, Lloh60, Lloh61
	.loh AdrpLdrGot	Lloh57, Lloh58
	.loh AdrpLdrGot	Lloh55, Lloh56
	.loh AdrpAdd	Lloh53, Lloh54
	.loh AdrpAdd	Lloh51, Lloh52
	.loh AdrpAdd	Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpAdd	Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpAdd	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpAdd	Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpAdd	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"[%u.%06u] [%llu] RXSTATUS: RxOK=%d TS=0x%08x\n"

	.comm	_AR_Done,4,2                    ; @AR_Done
	.comm	_AR_RcvTimestamp,4,2            ; @AR_RcvTimestamp
l_.str.1:                               ; @.str.1
	.asciz	"  link=0x%08x, data=0x%08x, ctl0=0x%08x, ctl2=0x%08x\n"

l_.str.2:                               ; @.str.2
	.asciz	"  DataLen=%d, ArMore=%d, DecompCrcError=%d, RcvRate=0x%02x\n"

	.comm	_AR_DataLen,4,2                 ; @AR_DataLen
	.comm	_AR_More,4,2                    ; @AR_More
	.comm	_AR_DecompCRCErr,4,2            ; @AR_DecompCRCErr
	.comm	_AR_RcvRate,4,2                 ; @AR_RcvRate
l_.str.3:                               ; @.str.3
	.asciz	"  RSSI=%d, RcvAntenna=0x%x\n"

	.comm	_AR_RcvSigStrength,4,2          ; @AR_RcvSigStrength
	.comm	_AR_RcvAntenna,4,2              ; @AR_RcvAntenna
l_.str.4:                               ; @.str.4
	.asciz	"  RxDone=%d, RxFrameOk=%d, CrcErr=%d, DecryptCrcErr=%d\n"

	.comm	_AR_FrmRcvOK,4,2                ; @AR_FrmRcvOK
	.comm	_AR_CRCErr,4,2                  ; @AR_CRCErr
	.comm	_AR_DecryptCRCErr,4,2           ; @AR_DecryptCRCErr
l_.str.5:                               ; @.str.5
	.asciz	"  PhyErr=%d, MichaelErr=%d, KeyIdxValid=%d\n"

	.comm	_AR_PHYErr,4,2                  ; @AR_PHYErr
	.comm	_AR_MichaelErr,4,2              ; @AR_MichaelErr
	.comm	_AR_KeyIdxValid,4,2             ; @AR_KeyIdxValid
l_.str.6:                               ; @.str.6
	.asciz	"  PhyErrCode=0x%02x\n"

	.comm	_AR_PHYErrCode,4,2              ; @AR_PHYErrCode
l_.str.7:                               ; @.str.7
	.asciz	"  KeyIdx=0x%02x\n"

	.comm	_AR_KeyIdx,4,2                  ; @AR_KeyIdx
l_.str.8:                               ; @.str.8
	.asciz	"  KeyMiss=%d\n"

	.comm	_AR_KeyCacheMiss,4,2            ; @AR_KeyCacheMiss
l_.str.9:                               ; @.str.9
	.asciz	"  Timetamp: 0x%05x\n"

l_str:                                  ; @str
	.asciz	"\n ------"

	.no_dead_strip	_ar5212_decode_rxstatus
.subsections_via_symbols
