	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function versatile_reboot
_versatile_reboot:                      ## @versatile_reboot
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	_versatile_reboot_type@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	addl	$-128, %eax
	cmpl	$6, %eax
	ja	LBB0_9
## %bb.1:
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_6:
	movq	_syscon_regmap@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	movq	_VERSATILE_SYS_LOCK_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_VERSATILE_LOCK_VAL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movq	_VERSATILE_SYS_RESETCTL_OFFSET@GOTPCREL(%rip), %rbx
	movl	(%rbx), %esi
	xorl	%edx, %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movl	(%rbx), %esi
	movl	$4, %edx
	jmp	LBB0_8
LBB0_3:
	movq	_syscon_regmap@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_VERSATILE_SYS_LOCK_OFFSET@GOTPCREL(%rip), %r14
	movl	(%r14), %esi
	movq	_VERSATILE_LOCK_VAL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%rbx), %edi
	movq	_VERSATILE_SYS_RESETCTL_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$263, %edx                      ## imm = 0x107
	movl	$261, %ecx                      ## imm = 0x105
	callq	_regmap_update_bits
	movl	(%rbx), %edi
	movl	(%r14), %esi
	xorl	%edx, %edx
	jmp	LBB0_8
LBB0_7:
	movq	_syscon_regmap@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	movq	_VERSATILE_SYS_LOCK_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_VERSATILE_LOCK_VAL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movq	_VERSATILE_SYS_RESETCTL_OFFSET@GOTPCREL(%rip), %rbx
	movl	(%rbx), %esi
	movl	$240, %edx
	callq	_regmap_write
	movl	(%r14), %edi
	movl	(%rbx), %esi
	movl	$244, %edx
	jmp	LBB0_8
LBB0_4:
	movq	_syscon_regmap@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_VERSATILE_SYS_LOCK_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_VERSATILE_LOCK_VAL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%rbx), %edi
	movq	_VERSATILE_SYS_RESETCTL_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$8, %edx
	jmp	LBB0_8
LBB0_2:
	movq	_syscon_regmap@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_INTEGRATOR_HDR_LOCK_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_VERSATILE_LOCK_VAL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%rbx), %edi
	movq	_INTEGRATOR_HDR_CTRL_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_INTEGRATOR_CM_CTRL_RESET@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movl	%ecx, %edx
	callq	_regmap_update_bits
	jmp	LBB0_9
LBB0_5:
	movq	_syscon_regmap@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_VERSATILE_SYS_LOCK_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_VERSATILE_LOCK_VAL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_regmap_write
	movl	(%rbx), %edi
	movq	_VERSATILE_SYS_RESETCTL_OFFSET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	$256, %edx                      ## imm = 0x100
LBB0_8:
	callq	_regmap_write
LBB0_9:
	xorl	%eax, %eax
	callq	_dsb
	movq	_NOTIFY_DONE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_3, LBB0_3-LJTI0_0
.set L0_0_set_7, LBB0_7-LJTI0_0
.set L0_0_set_6, LBB0_6-LJTI0_0
.set L0_0_set_5, LBB0_5-LJTI0_0
.set L0_0_set_4, LBB0_4-LJTI0_0
.set L0_0_set_2, LBB0_2-LJTI0_0
LJTI0_0:
	.long	L0_0_set_3
	.long	L0_0_set_7
	.long	L0_0_set_6
	.long	L0_0_set_6
	.long	L0_0_set_5
	.long	L0_0_set_4
	.long	L0_0_set_2
	.end_data_region
                                        ## -- End function
	.comm	_versatile_reboot_type,4,2      ## @versatile_reboot_type
	.comm	_syscon_regmap,4,2              ## @syscon_regmap
	.comm	_INTEGRATOR_HDR_LOCK_OFFSET,4,2 ## @INTEGRATOR_HDR_LOCK_OFFSET
	.comm	_VERSATILE_LOCK_VAL,4,2         ## @VERSATILE_LOCK_VAL
	.comm	_INTEGRATOR_HDR_CTRL_OFFSET,4,2 ## @INTEGRATOR_HDR_CTRL_OFFSET
	.comm	_INTEGRATOR_CM_CTRL_RESET,4,2   ## @INTEGRATOR_CM_CTRL_RESET
	.comm	_VERSATILE_SYS_LOCK_OFFSET,4,2  ## @VERSATILE_SYS_LOCK_OFFSET
	.comm	_VERSATILE_SYS_RESETCTL_OFFSET,4,2 ## @VERSATILE_SYS_RESETCTL_OFFSET
	.comm	_NOTIFY_DONE,4,2                ## @NOTIFY_DONE
	.no_dead_strip	_versatile_reboot
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function versatile_reboot
_versatile_reboot:                      ; @versatile_reboot
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
Lloh0:
	adrp	x8, _versatile_reboot_type@GOTPAGE
Lloh1:
	ldr	x8, [x8, _versatile_reboot_type@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
	sub	w8, w8, #128
	cmp	w8, #6
	b.hi	LBB0_9
; %bb.1:
Lloh3:
	adrp	x9, lJTI0_0@PAGE
Lloh4:
	add	x9, x9, lJTI0_0@PAGEOFF
	adr	x10, LBB0_2
	ldrb	w11, [x9, x8]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_2:
Lloh5:
	adrp	x19, _syscon_regmap@GOTPAGE
Lloh6:
	ldr	x19, [x19, _syscon_regmap@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh7:
	adrp	x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGE
Lloh8:
	ldr	x8, [x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGEOFF]
Lloh9:
	ldr	w1, [x8]
Lloh10:
	adrp	x8, _VERSATILE_LOCK_VAL@GOTPAGE
Lloh11:
	ldr	x8, [x8, _VERSATILE_LOCK_VAL@GOTPAGEOFF]
Lloh12:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh13:
	adrp	x20, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGE
Lloh14:
	ldr	x20, [x20, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGEOFF]
	ldr	w1, [x20]
	mov	w2, #0
	bl	_regmap_write
	ldr	w0, [x19]
	ldr	w1, [x20]
	mov	w2, #4
	b	LBB0_8
LBB0_3:
Lloh15:
	adrp	x19, _syscon_regmap@GOTPAGE
Lloh16:
	ldr	x19, [x19, _syscon_regmap@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh17:
	adrp	x20, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGE
Lloh18:
	ldr	x20, [x20, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGEOFF]
	ldr	w1, [x20]
Lloh19:
	adrp	x8, _VERSATILE_LOCK_VAL@GOTPAGE
Lloh20:
	ldr	x8, [x8, _VERSATILE_LOCK_VAL@GOTPAGEOFF]
Lloh21:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh22:
	adrp	x8, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGE
Lloh23:
	ldr	x8, [x8, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGEOFF]
Lloh24:
	ldr	w1, [x8]
	mov	w2, #263
	mov	w3, #261
	bl	_regmap_update_bits
	ldr	w0, [x19]
	ldr	w1, [x20]
	mov	w2, #0
	b	LBB0_8
LBB0_4:
Lloh25:
	adrp	x19, _syscon_regmap@GOTPAGE
Lloh26:
	ldr	x19, [x19, _syscon_regmap@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh27:
	adrp	x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGE
Lloh28:
	ldr	x8, [x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGEOFF]
Lloh29:
	ldr	w1, [x8]
Lloh30:
	adrp	x8, _VERSATILE_LOCK_VAL@GOTPAGE
Lloh31:
	ldr	x8, [x8, _VERSATILE_LOCK_VAL@GOTPAGEOFF]
Lloh32:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh33:
	adrp	x20, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGE
Lloh34:
	ldr	x20, [x20, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGEOFF]
	ldr	w1, [x20]
	mov	w2, #240
	bl	_regmap_write
	ldr	w0, [x19]
	ldr	w1, [x20]
	mov	w2, #244
	b	LBB0_8
LBB0_5:
Lloh35:
	adrp	x19, _syscon_regmap@GOTPAGE
Lloh36:
	ldr	x19, [x19, _syscon_regmap@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh37:
	adrp	x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGE
Lloh38:
	ldr	x8, [x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGEOFF]
Lloh39:
	ldr	w1, [x8]
Lloh40:
	adrp	x8, _VERSATILE_LOCK_VAL@GOTPAGE
Lloh41:
	ldr	x8, [x8, _VERSATILE_LOCK_VAL@GOTPAGEOFF]
Lloh42:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh43:
	adrp	x8, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGE
Lloh44:
	ldr	x8, [x8, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGEOFF]
Lloh45:
	ldr	w1, [x8]
	mov	w2, #8
	b	LBB0_8
LBB0_6:
Lloh46:
	adrp	x19, _syscon_regmap@GOTPAGE
Lloh47:
	ldr	x19, [x19, _syscon_regmap@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh48:
	adrp	x8, _INTEGRATOR_HDR_LOCK_OFFSET@GOTPAGE
Lloh49:
	ldr	x8, [x8, _INTEGRATOR_HDR_LOCK_OFFSET@GOTPAGEOFF]
Lloh50:
	ldr	w1, [x8]
Lloh51:
	adrp	x8, _VERSATILE_LOCK_VAL@GOTPAGE
Lloh52:
	ldr	x8, [x8, _VERSATILE_LOCK_VAL@GOTPAGEOFF]
Lloh53:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh54:
	adrp	x8, _INTEGRATOR_HDR_CTRL_OFFSET@GOTPAGE
Lloh55:
	ldr	x8, [x8, _INTEGRATOR_HDR_CTRL_OFFSET@GOTPAGEOFF]
Lloh56:
	ldr	w1, [x8]
Lloh57:
	adrp	x8, _INTEGRATOR_CM_CTRL_RESET@GOTPAGE
Lloh58:
	ldr	x8, [x8, _INTEGRATOR_CM_CTRL_RESET@GOTPAGEOFF]
Lloh59:
	ldr	w2, [x8]
	mov	x3, x2
	bl	_regmap_update_bits
	b	LBB0_9
LBB0_7:
Lloh60:
	adrp	x19, _syscon_regmap@GOTPAGE
Lloh61:
	ldr	x19, [x19, _syscon_regmap@GOTPAGEOFF]
	ldr	w0, [x19]
Lloh62:
	adrp	x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGE
Lloh63:
	ldr	x8, [x8, _VERSATILE_SYS_LOCK_OFFSET@GOTPAGEOFF]
Lloh64:
	ldr	w1, [x8]
Lloh65:
	adrp	x8, _VERSATILE_LOCK_VAL@GOTPAGE
Lloh66:
	ldr	x8, [x8, _VERSATILE_LOCK_VAL@GOTPAGEOFF]
Lloh67:
	ldr	w2, [x8]
	bl	_regmap_write
	ldr	w0, [x19]
Lloh68:
	adrp	x8, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGE
Lloh69:
	ldr	x8, [x8, _VERSATILE_SYS_RESETCTL_OFFSET@GOTPAGEOFF]
Lloh70:
	ldr	w1, [x8]
	mov	w2, #256
LBB0_8:
	bl	_regmap_write
LBB0_9:
	bl	_dsb
Lloh71:
	adrp	x8, _NOTIFY_DONE@GOTPAGE
Lloh72:
	ldr	x8, [x8, _NOTIFY_DONE@GOTPAGEOFF]
Lloh73:
	ldr	w0, [x8]
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh7, Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh5, Lloh6
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGot	Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGot	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh37, Lloh38, Lloh39
	.loh AdrpLdrGot	Lloh35, Lloh36
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh65, Lloh66, Lloh67
	.loh AdrpLdrGotLdr	Lloh62, Lloh63, Lloh64
	.loh AdrpLdrGot	Lloh60, Lloh61
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh73
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_3-LBB0_2)>>2
	.byte	(LBB0_4-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_7-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
                                        ; -- End function
	.comm	_versatile_reboot_type,4,2      ; @versatile_reboot_type
	.comm	_syscon_regmap,4,2              ; @syscon_regmap
	.comm	_INTEGRATOR_HDR_LOCK_OFFSET,4,2 ; @INTEGRATOR_HDR_LOCK_OFFSET
	.comm	_VERSATILE_LOCK_VAL,4,2         ; @VERSATILE_LOCK_VAL
	.comm	_INTEGRATOR_HDR_CTRL_OFFSET,4,2 ; @INTEGRATOR_HDR_CTRL_OFFSET
	.comm	_INTEGRATOR_CM_CTRL_RESET,4,2   ; @INTEGRATOR_CM_CTRL_RESET
	.comm	_VERSATILE_SYS_LOCK_OFFSET,4,2  ; @VERSATILE_SYS_LOCK_OFFSET
	.comm	_VERSATILE_SYS_RESETCTL_OFFSET,4,2 ; @VERSATILE_SYS_RESETCTL_OFFSET
	.comm	_NOTIFY_DONE,4,2                ; @NOTIFY_DONE
	.no_dead_strip	_versatile_reboot
.subsections_via_symbols
