	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function flexrm_sba_sanity_check
_flexrm_sba_sanity_check:               ## @flexrm_sba_sanity_check
	.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
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	8(%rdi), %rcx
	xorl	%eax, %eax
	testq	%rcx, %rcx
	je	LBB0_17
## %bb.1:
	movq	(%rdi), %rdx
	testq	%rdx, %rdx
	je	LBB0_17
## %bb.2:
	movq	_BRCM_SBA_CMD_TYPE_B@GOTPCREL(%rip), %rsi
	movl	(%rsi), %r8d
	movq	_BRCM_SBA_CMD_HAS_OUTPUT@GOTPCREL(%rip), %rsi
	movl	(%rsi), %r15d
	movq	_SRCT_LENGTH_MASK@GOTPCREL(%rip), %rsi
	movq	(%rsi), %r11
	movq	_BRCM_SBA_CMD_TYPE_C@GOTPCREL(%rip), %rsi
	movl	(%rsi), %r9d
	movq	_BRCM_SBA_CMD_HAS_RESP@GOTPCREL(%rip), %rsi
	movl	(%rsi), %r10d
	movq	_DSTT_LENGTH_MASK@GOTPCREL(%rip), %rsi
	movq	(%rsi), %r14
	addq	$16, %rcx
	jmp	LBB0_3
	.p2align	4, 0x90
LBB0_15:                                ##   in Loop: Header=BB0_3 Depth=1
	addq	$24, %rcx
	decq	%rdx
	je	LBB0_16
LBB0_3:                                 ## =>This Inner Loop Header: Depth=1
	movl	-16(%rcx), %ebx
	testl	%ebx, %r8d
	je	LBB0_4
## %bb.6:                               ##   in Loop: Header=BB0_3 Depth=1
	testl	%ebx, %r15d
	jne	LBB0_17
## %bb.7:                               ##   in Loop: Header=BB0_3 Depth=1
	cmpq	%r11, -8(%rcx)
	jg	LBB0_17
## %bb.8:                               ##   in Loop: Header=BB0_3 Depth=1
	movl	%r9d, %esi
	andl	%ebx, %esi
	jmp	LBB0_9
	.p2align	4, 0x90
LBB0_4:                                 ##   in Loop: Header=BB0_3 Depth=1
	movl	%r9d, %esi
	andl	%ebx, %esi
	je	LBB0_9
## %bb.5:                               ##   in Loop: Header=BB0_3 Depth=1
	movl	%r15d, %edi
	andl	%ebx, %edi
	jne	LBB0_17
	.p2align	4, 0x90
LBB0_9:                                 ##   in Loop: Header=BB0_3 Depth=1
	testl	%esi, %esi
	je	LBB0_11
## %bb.10:                              ##   in Loop: Header=BB0_3 Depth=1
	cmpq	%r11, -8(%rcx)
	jg	LBB0_17
LBB0_11:                                ##   in Loop: Header=BB0_3 Depth=1
	testl	%ebx, %r10d
	je	LBB0_13
## %bb.12:                              ##   in Loop: Header=BB0_3 Depth=1
	cmpq	%r14, (%rcx)
	jg	LBB0_17
LBB0_13:                                ##   in Loop: Header=BB0_3 Depth=1
	testl	%ebx, %r15d
	je	LBB0_15
## %bb.14:                              ##   in Loop: Header=BB0_3 Depth=1
	cmpq	%r14, -8(%rcx)
	jle	LBB0_15
	jmp	LBB0_17
LBB0_16:
	movl	$1, %eax
LBB0_17:
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_BRCM_SBA_CMD_TYPE_B,4,2        ## @BRCM_SBA_CMD_TYPE_B
	.comm	_BRCM_SBA_CMD_TYPE_C,4,2        ## @BRCM_SBA_CMD_TYPE_C
	.comm	_BRCM_SBA_CMD_HAS_OUTPUT,4,2    ## @BRCM_SBA_CMD_HAS_OUTPUT
	.comm	_SRCT_LENGTH_MASK,8,3           ## @SRCT_LENGTH_MASK
	.comm	_BRCM_SBA_CMD_HAS_RESP,4,2      ## @BRCM_SBA_CMD_HAS_RESP
	.comm	_DSTT_LENGTH_MASK,8,3           ## @DSTT_LENGTH_MASK
	.no_dead_strip	_flexrm_sba_sanity_check
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function flexrm_sba_sanity_check
_flexrm_sba_sanity_check:               ; @flexrm_sba_sanity_check
	.cfi_startproc
; %bb.0:
	ldr	x15, [x0, #8]
	cbz	x15, LBB0_15
; %bb.1:
	ldr	x8, [x0]
	cbz	x8, LBB0_15
; %bb.2:
Lloh0:
	adrp	x9, _BRCM_SBA_CMD_TYPE_B@GOTPAGE
Lloh1:
	ldr	x9, [x9, _BRCM_SBA_CMD_TYPE_B@GOTPAGEOFF]
Lloh2:
	ldr	w9, [x9]
Lloh3:
	adrp	x10, _BRCM_SBA_CMD_HAS_OUTPUT@GOTPAGE
Lloh4:
	ldr	x10, [x10, _BRCM_SBA_CMD_HAS_OUTPUT@GOTPAGEOFF]
Lloh5:
	adrp	x11, _SRCT_LENGTH_MASK@GOTPAGE
Lloh6:
	ldr	x11, [x11, _SRCT_LENGTH_MASK@GOTPAGEOFF]
Lloh7:
	ldr	w10, [x10]
Lloh8:
	ldr	x11, [x11]
Lloh9:
	adrp	x12, _BRCM_SBA_CMD_TYPE_C@GOTPAGE
Lloh10:
	ldr	x12, [x12, _BRCM_SBA_CMD_TYPE_C@GOTPAGEOFF]
Lloh11:
	adrp	x13, _BRCM_SBA_CMD_HAS_RESP@GOTPAGE
Lloh12:
	ldr	x13, [x13, _BRCM_SBA_CMD_HAS_RESP@GOTPAGEOFF]
Lloh13:
	ldr	w12, [x12]
Lloh14:
	ldr	w13, [x13]
Lloh15:
	adrp	x14, _DSTT_LENGTH_MASK@GOTPAGE
Lloh16:
	ldr	x14, [x14, _DSTT_LENGTH_MASK@GOTPAGEOFF]
Lloh17:
	ldr	x14, [x14]
	add	x15, x15, #8
	b	LBB0_4
LBB0_3:                                 ;   in Loop: Header=BB0_4 Depth=1
	add	x15, x15, #24
	subs	x8, x8, #1
	b.eq	LBB0_16
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	ldur	w16, [x15, #-8]
	tst	w9, w16
	b.eq	LBB0_8
; %bb.5:                                ;   in Loop: Header=BB0_4 Depth=1
	tst	w10, w16
	b.ne	LBB0_15
; %bb.6:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x17, [x15]
	cmp	x17, x11
	b.gt	LBB0_15
; %bb.7:                                ;   in Loop: Header=BB0_4 Depth=1
	and	w17, w12, w16
	b	LBB0_9
LBB0_8:                                 ;   in Loop: Header=BB0_4 Depth=1
	and	w17, w12, w16
	and	w0, w10, w16
	cmp	w17, #0
	ccmp	w0, #0, #4, ne
	b.ne	LBB0_15
LBB0_9:                                 ;   in Loop: Header=BB0_4 Depth=1
	cbz	w17, LBB0_11
; %bb.10:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x17, [x15]
	cmp	x17, x11
	b.gt	LBB0_15
LBB0_11:                                ;   in Loop: Header=BB0_4 Depth=1
	tst	w13, w16
	b.eq	LBB0_13
; %bb.12:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x17, [x15, #8]
	cmp	x17, x14
	b.gt	LBB0_15
LBB0_13:                                ;   in Loop: Header=BB0_4 Depth=1
	tst	w10, w16
	b.eq	LBB0_3
; %bb.14:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x16, [x15]
	cmp	x16, x14
	b.le	LBB0_3
LBB0_15:
	mov	w0, #0
	ret
LBB0_16:
	mov	w0, #1
	ret
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh13
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh7
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_BRCM_SBA_CMD_TYPE_B,4,2        ; @BRCM_SBA_CMD_TYPE_B
	.comm	_BRCM_SBA_CMD_TYPE_C,4,2        ; @BRCM_SBA_CMD_TYPE_C
	.comm	_BRCM_SBA_CMD_HAS_OUTPUT,4,2    ; @BRCM_SBA_CMD_HAS_OUTPUT
	.comm	_SRCT_LENGTH_MASK,8,3           ; @SRCT_LENGTH_MASK
	.comm	_BRCM_SBA_CMD_HAS_RESP,4,2      ; @BRCM_SBA_CMD_HAS_RESP
	.comm	_DSTT_LENGTH_MASK,8,3           ; @DSTT_LENGTH_MASK
	.no_dead_strip	_flexrm_sba_sanity_check
.subsections_via_symbols
