	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function __smi_handle_dr_smp_recv
___smi_handle_dr_smp_recv:              ## @__smi_handle_dr_smp_recv
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%rbx
	.cfi_offset %rbx, -24
	movq	_IB_SMP_MAX_PATH_HOPS@GOTPCREL(%rip), %rax
	cmpq	%r8, (%rax)
	jbe	LBB0_24
## %bb.1:
	movq	16(%rbp), %r10
	testq	%r8, %r8
	setne	%al
	cmpq	$0, 24(%rbp)
	movq	(%rcx), %r11
	je	LBB0_2
## %bb.12:
	leaq	1(%r8), %rbx
	cmpq	%rbx, %r11
	sete	%bl
	andb	%bl, %al
	cmpb	$1, %al
	jne	LBB0_14
## %bb.13:
	leaq	-1(%r11), %rax
	movq	%rax, (%rcx)
	movslq	%esi, %rax
	cmpq	%rax, -8(%r10,%r11,8)
	je	LBB0_21
	jmp	LBB0_24
LBB0_2:
	testq	%r11, %r11
	sete	%bl
	andb	%bl, %al
	cmpb	$1, %al
	je	LBB0_24
## %bb.3:
	testq	%r11, %r11
	je	LBB0_7
## %bb.4:
	cmpq	%r8, %r11
	jae	LBB0_7
## %bb.5:
	testl	%edi, %edi
	je	LBB0_24
## %bb.6:
	movslq	%esi, %rax
	movq	%rax, (%r10,%r11,8)
	movq	(%rcx), %rax
	movslq	%edx, %rcx
	cmpq	%rcx, 8(%r9,%rax,8)
	jbe	LBB0_21
	jmp	LBB0_24
LBB0_14:
	cmpq	$2, %r11
	jb	LBB0_18
## %bb.15:
	cmpq	%r8, %r11
	ja	LBB0_18
## %bb.16:
	testl	%edi, %edi
	je	LBB0_24
## %bb.17:
	movslq	%edx, %rax
	cmpq	%rax, -8(%r10,%r11,8)
	jbe	LBB0_21
	jmp	LBB0_24
LBB0_18:
	cmpq	$1, %r11
	jne	LBB0_23
## %bb.19:
	cmpl	$0, 40(%rbp)
	je	LBB0_22
## %bb.20:
	movq	$0, (%rcx)
	jmp	LBB0_21
LBB0_7:
	cmpq	%r8, %r11
	jne	LBB0_11
## %bb.8:
	movl	32(%rbp), %eax
	testq	%r8, %r8
	je	LBB0_10
## %bb.9:
	movslq	%esi, %rcx
	movq	%rcx, (%r10,%r8,8)
LBB0_10:
	orl	%edi, %eax
	je	LBB0_24
LBB0_21:
	movq	_IB_SMI_HANDLE@GOTPCREL(%rip), %rax
	jmp	LBB0_25
LBB0_23:
	testq	%r11, %r11
	je	LBB0_21
LBB0_24:
	movq	_IB_SMI_DISCARD@GOTPCREL(%rip), %rax
LBB0_25:
	movl	(%rax), %eax
	popq	%rbx
	popq	%rbp
	retq
LBB0_11:
	incq	%r8
	cmpq	%r8, %r11
	je	LBB0_21
	jmp	LBB0_24
LBB0_22:
	testl	%edi, %edi
	jne	LBB0_21
	jmp	LBB0_24
	.cfi_endproc
                                        ## -- End function
	.comm	_IB_SMP_MAX_PATH_HOPS,8,3       ## @IB_SMP_MAX_PATH_HOPS
	.comm	_IB_SMI_DISCARD,4,2             ## @IB_SMI_DISCARD
	.comm	_IB_SMI_HANDLE,4,2              ## @IB_SMI_HANDLE
	.no_dead_strip	___smi_handle_dr_smp_recv
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function __smi_handle_dr_smp_recv
___smi_handle_dr_smp_recv:              ; @__smi_handle_dr_smp_recv
	.cfi_startproc
; %bb.0:
                                        ; kill: def $w1 killed $w1 def $x1
Lloh0:
	adrp	x8, _IB_SMP_MAX_PATH_HOPS@GOTPAGE
Lloh1:
	ldr	x8, [x8, _IB_SMP_MAX_PATH_HOPS@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	cmp	x8, x4
	b.ls	LBB0_15
; %bb.1:
	cmp	x4, #0
	cset	w9, ne
	ldr	x8, [x3]
	cbz	x7, LBB0_5
; %bb.2:
	add	x10, x4, #1
	cmp	x8, x10
	cset	w10, eq
	and	w9, w9, w10
	cmp	w9, #1
	b.ne	LBB0_10
; %bb.3:
	sub	x8, x8, #1
	str	x8, [x3]
	ldr	x8, [x6, x8, lsl #3]
Lloh3:
	adrp	x9, _IB_SMI_HANDLE@GOTPAGE
Lloh4:
	ldr	x9, [x9, _IB_SMI_HANDLE@GOTPAGEOFF]
Lloh5:
	adrp	x10, _IB_SMI_DISCARD@GOTPAGE
Lloh6:
	ldr	x10, [x10, _IB_SMI_DISCARD@GOTPAGEOFF]
	cmp	x8, w1, sxtw
LBB0_4:
	csel	x8, x9, x10, eq
	ldr	w0, [x8]
	ret
LBB0_5:
	cmp	x8, #0
	cset	w10, eq
	and	w9, w9, w10
	cmp	w9, #1
	b.eq	LBB0_15
; %bb.6:
	cbz	x8, LBB0_19
; %bb.7:
	cmp	x8, x4
	b.hs	LBB0_19
; %bb.8:
	cbz	w0, LBB0_15
; %bb.9:
	sxtw	x9, w1
	str	x9, [x6, x8, lsl #3]
	ldr	x8, [x3]
	add	x8, x5, x8, lsl #3
Lloh7:
	adrp	x9, _IB_SMI_HANDLE@GOTPAGE
Lloh8:
	ldr	x9, [x9, _IB_SMI_HANDLE@GOTPAGEOFF]
	ldr	x8, [x8, #8]
	b	LBB0_14
LBB0_10:
	cmp	x8, #2
	b.lo	LBB0_16
; %bb.11:
	cmp	x8, x4
	b.hi	LBB0_16
; %bb.12:
	cbz	w0, LBB0_15
; %bb.13:
	add	x8, x6, x8, lsl #3
Lloh9:
	adrp	x9, _IB_SMI_HANDLE@GOTPAGE
Lloh10:
	ldr	x9, [x9, _IB_SMI_HANDLE@GOTPAGEOFF]
	ldur	x8, [x8, #-8]
LBB0_14:
Lloh11:
	adrp	x10, _IB_SMI_DISCARD@GOTPAGE
Lloh12:
	ldr	x10, [x10, _IB_SMI_DISCARD@GOTPAGEOFF]
	cmp	x8, w2, sxtw
	csel	x8, x10, x9, hi
	ldr	w0, [x8]
	ret
LBB0_15:
Lloh13:
	adrp	x8, _IB_SMI_DISCARD@GOTPAGE
Lloh14:
	ldr	x8, [x8, _IB_SMI_DISCARD@GOTPAGEOFF]
Lloh15:
	ldr	w0, [x8]
	ret
LBB0_16:
	cmp	x8, #1
	b.ne	LBB0_23
; %bb.17:
	ldr	w8, [sp, #4]
	cbz	w8, LBB0_25
; %bb.18:
	str	xzr, [x3]
Lloh16:
	adrp	x8, _IB_SMI_HANDLE@GOTPAGE
Lloh17:
	ldr	x8, [x8, _IB_SMI_HANDLE@GOTPAGEOFF]
Lloh18:
	ldr	w0, [x8]
	ret
LBB0_19:
	cmp	x8, x4
	b.ne	LBB0_24
; %bb.20:
	ldr	w8, [sp]
	cbz	x4, LBB0_22
; %bb.21:
                                        ; kill: def $w1 killed $w1 killed $x1 def $x1
	sxtw	x9, w1
	str	x9, [x6, x4, lsl #3]
LBB0_22:
Lloh19:
	adrp	x9, _IB_SMI_HANDLE@GOTPAGE
Lloh20:
	ldr	x9, [x9, _IB_SMI_HANDLE@GOTPAGEOFF]
	orr	w8, w8, w0
Lloh21:
	adrp	x10, _IB_SMI_DISCARD@GOTPAGE
Lloh22:
	ldr	x10, [x10, _IB_SMI_DISCARD@GOTPAGEOFF]
	cmp	w8, #0
	csel	x8, x10, x9, eq
	ldr	w0, [x8]
	ret
LBB0_23:
Lloh23:
	adrp	x9, _IB_SMI_HANDLE@GOTPAGE
Lloh24:
	ldr	x9, [x9, _IB_SMI_HANDLE@GOTPAGEOFF]
Lloh25:
	adrp	x10, _IB_SMI_DISCARD@GOTPAGE
Lloh26:
	ldr	x10, [x10, _IB_SMI_DISCARD@GOTPAGEOFF]
	cmp	x8, #0
	b	LBB0_4
LBB0_24:
Lloh27:
	adrp	x9, _IB_SMI_HANDLE@GOTPAGE
Lloh28:
	ldr	x9, [x9, _IB_SMI_HANDLE@GOTPAGEOFF]
	add	x10, x4, #1
Lloh29:
	adrp	x11, _IB_SMI_DISCARD@GOTPAGE
Lloh30:
	ldr	x11, [x11, _IB_SMI_DISCARD@GOTPAGEOFF]
	cmp	x8, x10
	csel	x8, x9, x11, eq
	ldr	w0, [x8]
	ret
LBB0_25:
Lloh31:
	adrp	x8, _IB_SMI_HANDLE@GOTPAGE
Lloh32:
	ldr	x8, [x8, _IB_SMI_HANDLE@GOTPAGEOFF]
Lloh33:
	adrp	x9, _IB_SMI_DISCARD@GOTPAGE
Lloh34:
	ldr	x9, [x9, _IB_SMI_DISCARD@GOTPAGEOFF]
	cmp	w0, #0
	csel	x8, x9, x8, eq
	ldr	w0, [x8]
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh7, Lloh8
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh21, Lloh22
	.loh AdrpLdrGot	Lloh19, Lloh20
	.loh AdrpLdrGot	Lloh25, Lloh26
	.loh AdrpLdrGot	Lloh23, Lloh24
	.loh AdrpLdrGot	Lloh29, Lloh30
	.loh AdrpLdrGot	Lloh27, Lloh28
	.loh AdrpLdrGot	Lloh33, Lloh34
	.loh AdrpLdrGot	Lloh31, Lloh32
	.cfi_endproc
                                        ; -- End function
	.comm	_IB_SMP_MAX_PATH_HOPS,8,3       ; @IB_SMP_MAX_PATH_HOPS
	.comm	_IB_SMI_DISCARD,4,2             ; @IB_SMI_DISCARD
	.comm	_IB_SMI_HANDLE,4,2              ; @IB_SMI_HANDLE
	.no_dead_strip	___smi_handle_dr_smp_recv
.subsections_via_symbols
