	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function hotkey_gmms_get_tablet_mode
_hotkey_gmms_get_tablet_mode:           ## @hotkey_gmms_get_tablet_mode
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
                                        ## kill: def $edi killed $edi def $rdi
	movl	%edi, %edx
	shrl	$16, %edx
	movq	_TP_ACPI_MULTI_MODE_INVALID@GOTPCREL(%rip), %rax
	movl	(%rax), %r9d
	testq	%rsi, %rsi
	je	LBB0_2
## %bb.1:
	movl	$0, (%rsi)
LBB0_2:
	movzwl	%di, %r8d
	leal	-1(%rdx), %eax
	cmpw	$4, %ax
	ja	LBB0_5
## %bb.3:
	movzwl	%ax, %eax
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_4:
	movq	_TP_ACPI_MULTI_MODE_LAPTOP@GOTPCREL(%rip), %rcx
	movq	_TP_ACPI_MULTI_MODE_FLAT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	(%rcx), %eax
	movq	_TP_ACPI_MULTI_MODE_TABLET@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_TP_ACPI_MULTI_MODE_STAND@GOTPCREL(%rip), %rcx
	orl	(%rcx), %eax
	movq	_TP_ACPI_MULTI_MODE_TENT@GOTPCREL(%rip), %rcx
	jmp	LBB0_8
LBB0_5:
	movq	_TPACPI_MAIL@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	leaq	L_.str(%rip), %rdi
	movl	%edx, %esi
	movl	%r8d, %edx
	jmp	LBB0_27
LBB0_6:
	movq	_TP_ACPI_MULTI_MODE_LAPTOP@GOTPCREL(%rip), %rcx
	movq	_TP_ACPI_MULTI_MODE_TABLET@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	(%rcx), %eax
	movq	_TP_ACPI_MULTI_MODE_STAND_TENT@GOTPCREL(%rip), %rcx
	jmp	LBB0_8
LBB0_7:
	movq	_TP_ACPI_MULTI_MODE_FLAT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_TP_ACPI_MULTI_MODE_LAPTOP@GOTPCREL(%rip), %rcx
LBB0_8:
	orl	(%rcx), %eax
	testq	%rsi, %rsi
	je	LBB0_11
## %bb.9:
	movq	_TP_ACPI_MULTI_MODE_TABLET_LIKE@GOTPCREL(%rip), %rcx
	testl	%eax, (%rcx)
	je	LBB0_11
## %bb.10:
	movl	$1, (%rsi)
LBB0_11:
	decl	%edi
	cmpw	$4, %di
	ja	LBB0_14
## %bb.12:
	movzwl	%di, %ecx
	leaq	LJTI0_1(%rip), %rsi
	movslq	(%rsi,%rcx,4), %rcx
	addq	%rsi, %rcx
	jmpq	*%rcx
LBB0_13:
	movq	_TP_ACPI_MULTI_MODE_LAPTOP@GOTPCREL(%rip), %rcx
	jmp	LBB0_23
LBB0_14:
	cmpl	$5, %edx
	jne	LBB0_24
## %bb.15:
	cmpl	$65535, %r8d                    ## imm = 0xFFFF
	jne	LBB0_24
## %bb.16:
	leaq	L_.str.1(%rip), %rdi
	callq	_pr_warn
	jmp	LBB0_28
LBB0_17:
	movq	_TP_ACPI_MULTI_MODE_FLAT@GOTPCREL(%rip), %rcx
	jmp	LBB0_23
LBB0_18:
	movq	_TP_ACPI_MULTI_MODE_TABLET@GOTPCREL(%rip), %rcx
	jmp	LBB0_23
LBB0_19:
	cmpl	$1, %edx
	jne	LBB0_22
## %bb.20:
	movq	_TP_ACPI_MULTI_MODE_STAND_TENT@GOTPCREL(%rip), %rcx
	jmp	LBB0_23
LBB0_21:
	movq	_TP_ACPI_MULTI_MODE_TENT@GOTPCREL(%rip), %rcx
	jmp	LBB0_23
LBB0_22:
	movq	_TP_ACPI_MULTI_MODE_STAND@GOTPCREL(%rip), %rcx
LBB0_23:
	movl	(%rcx), %r9d
LBB0_24:
	testl	%eax, %r9d
	je	LBB0_26
## %bb.25:
	movq	_TP_ACPI_MULTI_MODE_TABLET_LIKE@GOTPCREL(%rip), %rcx
	xorl	%eax, %eax
	testl	%r9d, (%rcx)
	setne	%al
	popq	%rbp
	retq
LBB0_26:
	movq	_TPACPI_MAIL@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	leaq	L_.str.2(%rip), %rdi
	movl	%r8d, %esi
                                        ## kill: def $edx killed $edx killed $rdx
LBB0_27:
	callq	_pr_err
LBB0_28:
	xorl	%eax, %eax
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_6, LBB0_6-LJTI0_0
.set L0_0_set_4, LBB0_4-LJTI0_0
.set L0_0_set_7, LBB0_7-LJTI0_0
LJTI0_0:
	.long	L0_0_set_6
	.long	L0_0_set_4
	.long	L0_0_set_7
	.long	L0_0_set_4
	.long	L0_0_set_4
.set L0_1_set_13, LBB0_13-LJTI0_1
.set L0_1_set_17, LBB0_17-LJTI0_1
.set L0_1_set_18, LBB0_18-LJTI0_1
.set L0_1_set_19, LBB0_19-LJTI0_1
.set L0_1_set_21, LBB0_21-LJTI0_1
LJTI0_1:
	.long	L0_1_set_13
	.long	L0_1_set_17
	.long	L0_1_set_18
	.long	L0_1_set_19
	.long	L0_1_set_21
	.end_data_region
                                        ## -- End function
	.comm	_TP_ACPI_MULTI_MODE_INVALID,4,2 ## @TP_ACPI_MULTI_MODE_INVALID
	.comm	_TP_ACPI_MULTI_MODE_LAPTOP,4,2  ## @TP_ACPI_MULTI_MODE_LAPTOP
	.comm	_TP_ACPI_MULTI_MODE_TABLET,4,2  ## @TP_ACPI_MULTI_MODE_TABLET
	.comm	_TP_ACPI_MULTI_MODE_STAND_TENT,4,2 ## @TP_ACPI_MULTI_MODE_STAND_TENT
	.comm	_TP_ACPI_MULTI_MODE_FLAT,4,2    ## @TP_ACPI_MULTI_MODE_FLAT
	.comm	_TP_ACPI_MULTI_MODE_STAND,4,2   ## @TP_ACPI_MULTI_MODE_STAND
	.comm	_TP_ACPI_MULTI_MODE_TENT,4,2    ## @TP_ACPI_MULTI_MODE_TENT
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Unknown multi mode status type %d with value 0x%04X, please report this to %s\n"

	.comm	_TPACPI_MAIL,4,2                ## @TPACPI_MAIL
	.comm	_TP_ACPI_MULTI_MODE_TABLET_LIKE,4,2 ## @TP_ACPI_MULTI_MODE_TABLET_LIKE
L_.str.1:                               ## @.str.1
	.asciz	"Multi mode status is undetected, assuming laptop\n"

L_.str.2:                               ## @.str.2
	.asciz	"Unknown/reserved multi mode value 0x%04X for type %d, please report this to %s\n"

	.no_dead_strip	_hotkey_gmms_get_tablet_mode
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function hotkey_gmms_get_tablet_mode
_hotkey_gmms_get_tablet_mode:           ; @hotkey_gmms_get_tablet_mode
	.cfi_startproc
; %bb.0:
	stp	x29, x30, [sp, #-16]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 16
	mov	x29, sp
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	lsr	w2, w0, #16
	and	w8, w0, #0xffff
Lloh0:
	adrp	x9, _TP_ACPI_MULTI_MODE_INVALID@GOTPAGE
Lloh1:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_INVALID@GOTPAGEOFF]
Lloh2:
	ldr	w9, [x9]
	cbz	x1, LBB0_2
; %bb.1:
	str	wzr, [x1]
LBB0_2:
	sub	w10, w2, #1
	cmp	w10, #4
	b.hi	LBB0_5
; %bb.3:
Lloh3:
	adrp	x11, lJTI0_0@PAGE
Lloh4:
	add	x11, x11, lJTI0_0@PAGEOFF
	adr	x12, LBB0_4
	ldrb	w13, [x11, x10]
	add	x12, x12, x13, lsl #2
	br	x12
LBB0_4:
Lloh5:
	adrp	x10, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGE
Lloh6:
	ldr	x10, [x10, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGEOFF]
Lloh7:
	ldr	w10, [x10]
Lloh8:
	adrp	x11, _TP_ACPI_MULTI_MODE_FLAT@GOTPAGE
Lloh9:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_FLAT@GOTPAGEOFF]
Lloh10:
	ldr	w11, [x11]
	orr	w10, w11, w10
Lloh11:
	adrp	x11, _TP_ACPI_MULTI_MODE_TABLET@GOTPAGE
Lloh12:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_TABLET@GOTPAGEOFF]
Lloh13:
	ldr	w11, [x11]
	orr	w10, w10, w11
Lloh14:
	adrp	x11, _TP_ACPI_MULTI_MODE_STAND@GOTPAGE
Lloh15:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_STAND@GOTPAGEOFF]
Lloh16:
	ldr	w11, [x11]
	orr	w10, w10, w11
Lloh17:
	adrp	x11, _TP_ACPI_MULTI_MODE_TENT@GOTPAGE
Lloh18:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_TENT@GOTPAGEOFF]
	b	LBB0_8
LBB0_5:
Lloh19:
	adrp	x9, _TPACPI_MAIL@GOTPAGE
Lloh20:
	ldr	x9, [x9, _TPACPI_MAIL@GOTPAGEOFF]
Lloh21:
	ldr	w3, [x9]
Lloh22:
	adrp	x0, l_.str@PAGE
Lloh23:
	add	x0, x0, l_.str@PAGEOFF
	mov	x1, x2
	mov	x2, x8
	b	LBB0_27
LBB0_6:
Lloh24:
	adrp	x10, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGE
Lloh25:
	ldr	x10, [x10, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGEOFF]
Lloh26:
	ldr	w10, [x10]
Lloh27:
	adrp	x11, _TP_ACPI_MULTI_MODE_TABLET@GOTPAGE
Lloh28:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_TABLET@GOTPAGEOFF]
Lloh29:
	ldr	w11, [x11]
	orr	w10, w11, w10
Lloh30:
	adrp	x11, _TP_ACPI_MULTI_MODE_STAND_TENT@GOTPAGE
Lloh31:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_STAND_TENT@GOTPAGEOFF]
	b	LBB0_8
LBB0_7:
Lloh32:
	adrp	x10, _TP_ACPI_MULTI_MODE_FLAT@GOTPAGE
Lloh33:
	ldr	x10, [x10, _TP_ACPI_MULTI_MODE_FLAT@GOTPAGEOFF]
Lloh34:
	ldr	w10, [x10]
Lloh35:
	adrp	x11, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGE
Lloh36:
	ldr	x11, [x11, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGEOFF]
LBB0_8:
	ldr	w11, [x11]
	orr	w11, w10, w11
Lloh37:
	adrp	x10, _TP_ACPI_MULTI_MODE_TABLET_LIKE@GOTPAGE
Lloh38:
	ldr	x10, [x10, _TP_ACPI_MULTI_MODE_TABLET_LIKE@GOTPAGEOFF]
	cbz	x1, LBB0_11
; %bb.9:
	ldr	w12, [x10]
	tst	w12, w11
	b.eq	LBB0_11
; %bb.10:
	mov	w12, #1
	str	w12, [x1]
LBB0_11:
	and	w12, w0, #0xffff
	sub	w12, w12, #1
	cmp	w12, #4
	b.hi	LBB0_14
; %bb.12:
Lloh39:
	adrp	x9, lJTI0_1@PAGE
Lloh40:
	add	x9, x9, lJTI0_1@PAGEOFF
	adr	x13, LBB0_13
	ldrb	w14, [x9, x12]
	add	x13, x13, x14, lsl #2
	br	x13
LBB0_13:
Lloh41:
	adrp	x9, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGE
Lloh42:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_LAPTOP@GOTPAGEOFF]
	b	LBB0_23
LBB0_14:
	cmp	w2, #5
	b.ne	LBB0_24
; %bb.15:
	mov	w12, #65535
	cmp	w8, w12
	b.ne	LBB0_24
; %bb.16:
Lloh43:
	adrp	x0, l_.str.1@PAGE
Lloh44:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_pr_warn
	b	LBB0_28
LBB0_17:
Lloh45:
	adrp	x9, _TP_ACPI_MULTI_MODE_FLAT@GOTPAGE
Lloh46:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_FLAT@GOTPAGEOFF]
	b	LBB0_23
LBB0_18:
Lloh47:
	adrp	x9, _TP_ACPI_MULTI_MODE_TABLET@GOTPAGE
Lloh48:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_TABLET@GOTPAGEOFF]
	b	LBB0_23
LBB0_19:
	cmp	w2, #1
	b.ne	LBB0_22
; %bb.20:
Lloh49:
	adrp	x9, _TP_ACPI_MULTI_MODE_STAND_TENT@GOTPAGE
Lloh50:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_STAND_TENT@GOTPAGEOFF]
	b	LBB0_23
LBB0_21:
Lloh51:
	adrp	x9, _TP_ACPI_MULTI_MODE_TENT@GOTPAGE
Lloh52:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_TENT@GOTPAGEOFF]
	b	LBB0_23
LBB0_22:
Lloh53:
	adrp	x9, _TP_ACPI_MULTI_MODE_STAND@GOTPAGE
Lloh54:
	ldr	x9, [x9, _TP_ACPI_MULTI_MODE_STAND@GOTPAGEOFF]
LBB0_23:
	ldr	w9, [x9]
LBB0_24:
	tst	w9, w11
	b.eq	LBB0_26
; %bb.25:
	ldr	w8, [x10]
	tst	w8, w9
	cset	w0, ne
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_26:
Lloh55:
	adrp	x9, _TPACPI_MAIL@GOTPAGE
Lloh56:
	ldr	x9, [x9, _TPACPI_MAIL@GOTPAGEOFF]
Lloh57:
	ldr	w3, [x9]
Lloh58:
	adrp	x0, l_.str.2@PAGE
Lloh59:
	add	x0, x0, l_.str.2@PAGEOFF
	mov	x1, x8
LBB0_27:
	bl	_pr_err
LBB0_28:
	mov	w0, #0
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpAdd	Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGot	Lloh35, Lloh36
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGot	Lloh37, Lloh38
	.loh AdrpAdd	Lloh39, Lloh40
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpAdd	Lloh43, Lloh44
	.loh AdrpLdrGot	Lloh45, Lloh46
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGot	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGot	Lloh53, Lloh54
	.loh AdrpAdd	Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_6-LBB0_4)>>2
	.byte	(LBB0_4-LBB0_4)>>2
	.byte	(LBB0_7-LBB0_4)>>2
	.byte	(LBB0_4-LBB0_4)>>2
	.byte	(LBB0_4-LBB0_4)>>2
lJTI0_1:
	.byte	(LBB0_13-LBB0_13)>>2
	.byte	(LBB0_17-LBB0_13)>>2
	.byte	(LBB0_18-LBB0_13)>>2
	.byte	(LBB0_19-LBB0_13)>>2
	.byte	(LBB0_21-LBB0_13)>>2
                                        ; -- End function
	.comm	_TP_ACPI_MULTI_MODE_INVALID,4,2 ; @TP_ACPI_MULTI_MODE_INVALID
	.comm	_TP_ACPI_MULTI_MODE_LAPTOP,4,2  ; @TP_ACPI_MULTI_MODE_LAPTOP
	.comm	_TP_ACPI_MULTI_MODE_TABLET,4,2  ; @TP_ACPI_MULTI_MODE_TABLET
	.comm	_TP_ACPI_MULTI_MODE_STAND_TENT,4,2 ; @TP_ACPI_MULTI_MODE_STAND_TENT
	.comm	_TP_ACPI_MULTI_MODE_FLAT,4,2    ; @TP_ACPI_MULTI_MODE_FLAT
	.comm	_TP_ACPI_MULTI_MODE_STAND,4,2   ; @TP_ACPI_MULTI_MODE_STAND
	.comm	_TP_ACPI_MULTI_MODE_TENT,4,2    ; @TP_ACPI_MULTI_MODE_TENT
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Unknown multi mode status type %d with value 0x%04X, please report this to %s\n"

	.comm	_TPACPI_MAIL,4,2                ; @TPACPI_MAIL
	.comm	_TP_ACPI_MULTI_MODE_TABLET_LIKE,4,2 ; @TP_ACPI_MULTI_MODE_TABLET_LIKE
l_.str.1:                               ; @.str.1
	.asciz	"Multi mode status is undetected, assuming laptop\n"

l_.str.2:                               ; @.str.2
	.asciz	"Unknown/reserved multi mode value 0x%04X for type %d, please report this to %s\n"

	.no_dead_strip	_hotkey_gmms_get_tablet_mode
.subsections_via_symbols
