	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function centaur_get_mcr
_centaur_get_mcr:                       ## @centaur_get_mcr
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	%rcx, %r8
	movq	_centaur_mcr@GOTPCREL(%rip), %rax
	movq	(%rax), %r9
	movl	%edi, %edi
	movl	(%r9,%rdi,8), %eax
	movq	_PAGE_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	sarl	%cl, %eax
	cltq
	movq	%rax, (%rsi)
	movl	$-4096, %eax                    ## imm = 0xF000
	andl	4(%r9,%rdi,8), %eax
	negl	%eax
	shrq	%cl, %rax
	movq	%rax, (%rdx)
	movq	_MTRR_TYPE_WRCOMB@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%r8)
	movq	_centaur_mcr_type@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	cmpl	$1, %edx
	jne	LBB0_5
## %bb.1:
	testb	$2, 4(%r9,%rdi,8)
	je	LBB0_3
## %bb.2:
	movq	_MTRR_TYPE_UNCACHABLE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%r8)
	movl	(%rcx), %edx
	cmpl	$1, %edx
	jne	LBB0_5
LBB0_3:
	movl	4(%r9,%rdi,8), %eax
	andl	$31, %eax
	cmpl	$25, %eax
	jne	LBB0_8
## %bb.4:
	movq	_MTRR_TYPE_WRBACK@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%r8)
	movl	(%rcx), %edx
LBB0_5:
	testl	%edx, %edx
	je	LBB0_6
LBB0_8:
	popq	%rbp
	retq
LBB0_6:
	movl	4(%r9,%rdi,8), %eax
	notl	%eax
	testb	$31, %al
	jne	LBB0_8
## %bb.7:
	movq	_MTRR_TYPE_WRBACK@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, (%r8)
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_centaur_mcr,8,3                ## @centaur_mcr
	.comm	_PAGE_SHIFT,4,2                 ## @PAGE_SHIFT
	.comm	_MTRR_TYPE_WRCOMB,4,2           ## @MTRR_TYPE_WRCOMB
	.comm	_centaur_mcr_type,4,2           ## @centaur_mcr_type
	.comm	_MTRR_TYPE_UNCACHABLE,4,2       ## @MTRR_TYPE_UNCACHABLE
	.comm	_MTRR_TYPE_WRBACK,4,2           ## @MTRR_TYPE_WRBACK
	.no_dead_strip	_centaur_get_mcr
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function centaur_get_mcr
_centaur_get_mcr:                       ; @centaur_get_mcr
	.cfi_startproc
; %bb.0:
Lloh0:
	adrp	x8, _centaur_mcr@GOTPAGE
Lloh1:
	ldr	x8, [x8, _centaur_mcr@GOTPAGEOFF]
Lloh2:
	ldr	x9, [x8]
	mov	w8, w0
	lsl	x10, x8, #3
	add	x8, x9, x10
	ldr	w9, [x9, x10]
Lloh3:
	adrp	x10, _PAGE_SHIFT@GOTPAGE
Lloh4:
	ldr	x10, [x10, _PAGE_SHIFT@GOTPAGEOFF]
Lloh5:
	ldr	w10, [x10]
	asr	w9, w9, w10
	sxtw	x9, w9
	str	x9, [x1]
	ldr	w9, [x8, #4]!
	and	w9, w9, #0xfffff000
	neg	w9, w9
	lsr	x9, x9, x10
	str	x9, [x2]
Lloh6:
	adrp	x9, _MTRR_TYPE_WRCOMB@GOTPAGE
Lloh7:
	ldr	x9, [x9, _MTRR_TYPE_WRCOMB@GOTPAGEOFF]
Lloh8:
	ldr	w9, [x9]
	str	w9, [x3]
Lloh9:
	adrp	x9, _centaur_mcr_type@GOTPAGE
Lloh10:
	ldr	x9, [x9, _centaur_mcr_type@GOTPAGEOFF]
	ldr	w10, [x9]
	cmp	w10, #1
	b.ne	LBB0_5
; %bb.1:
	ldrb	w10, [x8]
	tbz	w10, #1, LBB0_3
; %bb.2:
Lloh11:
	adrp	x10, _MTRR_TYPE_UNCACHABLE@GOTPAGE
Lloh12:
	ldr	x10, [x10, _MTRR_TYPE_UNCACHABLE@GOTPAGEOFF]
Lloh13:
	ldr	w10, [x10]
	str	w10, [x3]
	ldr	w10, [x9]
	cmp	w10, #1
	b.ne	LBB0_5
LBB0_3:
	ldr	w10, [x8]
	and	w10, w10, #0x1f
	cmp	w10, #25
	b.ne	LBB0_6
; %bb.4:
Lloh14:
	adrp	x10, _MTRR_TYPE_WRBACK@GOTPAGE
Lloh15:
	ldr	x10, [x10, _MTRR_TYPE_WRBACK@GOTPAGEOFF]
Lloh16:
	ldr	w10, [x10]
	str	w10, [x3]
	ldr	w10, [x9]
LBB0_5:
	cbz	w10, LBB0_7
LBB0_6:
	ret
LBB0_7:
	ldr	w8, [x8]
	mvn	w8, w8
	tst	w8, #0x1f
	b.ne	LBB0_6
; %bb.8:
Lloh17:
	adrp	x8, _MTRR_TYPE_WRBACK@GOTPAGE
Lloh18:
	ldr	x8, [x8, _MTRR_TYPE_WRBACK@GOTPAGEOFF]
Lloh19:
	ldr	w8, [x8]
	str	w8, [x3]
	ret
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.cfi_endproc
                                        ; -- End function
	.comm	_centaur_mcr,8,3                ; @centaur_mcr
	.comm	_PAGE_SHIFT,4,2                 ; @PAGE_SHIFT
	.comm	_MTRR_TYPE_WRCOMB,4,2           ; @MTRR_TYPE_WRCOMB
	.comm	_centaur_mcr_type,4,2           ; @centaur_mcr_type
	.comm	_MTRR_TYPE_UNCACHABLE,4,2       ; @MTRR_TYPE_UNCACHABLE
	.comm	_MTRR_TYPE_WRBACK,4,2           ; @MTRR_TYPE_WRBACK
	.no_dead_strip	_centaur_get_mcr
.subsections_via_symbols
