	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function hidpad_ps4_check_dpad
_hidpad_ps4_check_dpad:                 ## @hidpad_ps4_check_dpad
	.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 $esi killed $esi def $rsi
	addl	$-128, %esi
	cmpl	$3, %esi
	ja	LBB0_1
## %bb.2:
	leaq	LJTI0_0(%rip), %rax
	movslq	(%rax,%rsi,4), %rcx
	addq	%rax, %rcx
	jmpq	*%rcx
LBB0_3:
	movl	(%rdi), %eax
	movq	_DPAD_LEFT_UP@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	sete	%cl
	movq	_DPAD_UP@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	sete	%dl
	orb	%cl, %dl
	movq	_DPAD_UP_RIGHT@GOTPCREL(%rip), %rcx
	jmp	LBB0_7
LBB0_1:
	xorl	%eax, %eax
	jmp	LBB0_8
LBB0_4:
	movl	(%rdi), %eax
	movq	_DPAD_UP_RIGHT@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	sete	%cl
	movq	_DPAD_RIGHT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	sete	%dl
	orb	%cl, %dl
	movq	_DPAD_RIGHT_DOWN@GOTPCREL(%rip), %rcx
	jmp	LBB0_7
LBB0_6:
	movl	(%rdi), %eax
	movq	_DPAD_DOWN_LEFT@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	sete	%cl
	movq	_DPAD_LEFT@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	sete	%dl
	orb	%cl, %dl
	movq	_DPAD_LEFT_UP@GOTPCREL(%rip), %rcx
	jmp	LBB0_7
LBB0_5:
	movl	(%rdi), %eax
	movq	_DPAD_RIGHT_DOWN@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	sete	%cl
	movq	_DPAD_DOWN@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %eax
	sete	%dl
	orb	%cl, %dl
	movq	_DPAD_DOWN_LEFT@GOTPCREL(%rip), %rcx
LBB0_7:
	cmpl	(%rcx), %eax
	sete	%al
	orb	%dl, %al
LBB0_8:
	movzbl	%al, %eax
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_3, LBB0_3-LJTI0_0
.set L0_0_set_4, LBB0_4-LJTI0_0
.set L0_0_set_6, LBB0_6-LJTI0_0
.set L0_0_set_5, LBB0_5-LJTI0_0
LJTI0_0:
	.long	L0_0_set_3
	.long	L0_0_set_4
	.long	L0_0_set_6
	.long	L0_0_set_5
	.end_data_region
                                        ## -- End function
	.comm	_DPAD_LEFT_UP,4,2               ## @DPAD_LEFT_UP
	.comm	_DPAD_UP,4,2                    ## @DPAD_UP
	.comm	_DPAD_UP_RIGHT,4,2              ## @DPAD_UP_RIGHT
	.comm	_DPAD_RIGHT,4,2                 ## @DPAD_RIGHT
	.comm	_DPAD_RIGHT_DOWN,4,2            ## @DPAD_RIGHT_DOWN
	.comm	_DPAD_DOWN,4,2                  ## @DPAD_DOWN
	.comm	_DPAD_DOWN_LEFT,4,2             ## @DPAD_DOWN_LEFT
	.comm	_DPAD_LEFT,4,2                  ## @DPAD_LEFT
	.no_dead_strip	_hidpad_ps4_check_dpad
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function hidpad_ps4_check_dpad
_hidpad_ps4_check_dpad:                 ; @hidpad_ps4_check_dpad
	.cfi_startproc
; %bb.0:
	sub	w8, w1, #128
	cmp	w8, #3
	b.hi	LBB0_3
; %bb.1:
Lloh0:
	adrp	x9, lJTI0_0@PAGE
Lloh1:
	add	x9, x9, lJTI0_0@PAGEOFF
	adr	x10, LBB0_2
	ldrb	w11, [x9, x8]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_2:
Lloh2:
	adrp	x8, _DPAD_LEFT_UP@GOTPAGE
Lloh3:
	ldr	x8, [x8, _DPAD_LEFT_UP@GOTPAGEOFF]
	ldr	w9, [x0]
Lloh4:
	ldr	w8, [x8]
	cmp	w9, w8
Lloh5:
	adrp	x8, _DPAD_UP@GOTPAGE
Lloh6:
	ldr	x8, [x8, _DPAD_UP@GOTPAGEOFF]
Lloh7:
	ldr	w8, [x8]
	ccmp	w9, w8, #4, ne
Lloh8:
	adrp	x8, _DPAD_UP_RIGHT@GOTPAGE
Lloh9:
	ldr	x8, [x8, _DPAD_UP_RIGHT@GOTPAGEOFF]
	b	LBB0_7
LBB0_3:
	mov	w0, #0
	ret
LBB0_4:
Lloh10:
	adrp	x8, _DPAD_UP_RIGHT@GOTPAGE
Lloh11:
	ldr	x8, [x8, _DPAD_UP_RIGHT@GOTPAGEOFF]
	ldr	w9, [x0]
Lloh12:
	ldr	w8, [x8]
	cmp	w9, w8
Lloh13:
	adrp	x8, _DPAD_RIGHT@GOTPAGE
Lloh14:
	ldr	x8, [x8, _DPAD_RIGHT@GOTPAGEOFF]
Lloh15:
	ldr	w8, [x8]
	ccmp	w9, w8, #4, ne
Lloh16:
	adrp	x8, _DPAD_RIGHT_DOWN@GOTPAGE
Lloh17:
	ldr	x8, [x8, _DPAD_RIGHT_DOWN@GOTPAGEOFF]
	b	LBB0_7
LBB0_5:
Lloh18:
	adrp	x8, _DPAD_DOWN_LEFT@GOTPAGE
Lloh19:
	ldr	x8, [x8, _DPAD_DOWN_LEFT@GOTPAGEOFF]
	ldr	w9, [x0]
Lloh20:
	ldr	w8, [x8]
	cmp	w9, w8
Lloh21:
	adrp	x8, _DPAD_LEFT@GOTPAGE
Lloh22:
	ldr	x8, [x8, _DPAD_LEFT@GOTPAGEOFF]
Lloh23:
	ldr	w8, [x8]
	ccmp	w9, w8, #4, ne
Lloh24:
	adrp	x8, _DPAD_LEFT_UP@GOTPAGE
Lloh25:
	ldr	x8, [x8, _DPAD_LEFT_UP@GOTPAGEOFF]
	b	LBB0_7
LBB0_6:
Lloh26:
	adrp	x8, _DPAD_RIGHT_DOWN@GOTPAGE
Lloh27:
	ldr	x8, [x8, _DPAD_RIGHT_DOWN@GOTPAGEOFF]
	ldr	w9, [x0]
Lloh28:
	ldr	w8, [x8]
	cmp	w9, w8
Lloh29:
	adrp	x8, _DPAD_DOWN@GOTPAGE
Lloh30:
	ldr	x8, [x8, _DPAD_DOWN@GOTPAGEOFF]
Lloh31:
	ldr	w8, [x8]
	ccmp	w9, w8, #4, ne
Lloh32:
	adrp	x8, _DPAD_DOWN_LEFT@GOTPAGE
Lloh33:
	ldr	x8, [x8, _DPAD_DOWN_LEFT@GOTPAGEOFF]
LBB0_7:
	ldr	w8, [x8]
	ccmp	w9, w8, #4, ne
	cset	w0, eq
	ret
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGot	Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpLdrGot	Lloh24, Lloh25
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGot	Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh26, Lloh27, Lloh28
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_4-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
                                        ; -- End function
	.comm	_DPAD_LEFT_UP,4,2               ; @DPAD_LEFT_UP
	.comm	_DPAD_UP,4,2                    ; @DPAD_UP
	.comm	_DPAD_UP_RIGHT,4,2              ; @DPAD_UP_RIGHT
	.comm	_DPAD_RIGHT,4,2                 ; @DPAD_RIGHT
	.comm	_DPAD_RIGHT_DOWN,4,2            ; @DPAD_RIGHT_DOWN
	.comm	_DPAD_DOWN,4,2                  ; @DPAD_DOWN
	.comm	_DPAD_DOWN_LEFT,4,2             ; @DPAD_DOWN_LEFT
	.comm	_DPAD_LEFT,4,2                  ; @DPAD_LEFT
	.no_dead_strip	_hidpad_ps4_check_dpad
.subsections_via_symbols
