	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_process_record_user            ## -- Begin function process_record_user
	.p2align	4, 0x90
_process_record_user:                   ## @process_record_user
	.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
	pushq	%rax
	.cfi_offset %rbx, -24
                                        ## kill: def $edi killed $edi def $rdi
	addl	$-128, %edi
	cmpl	$17, %edi
	ja	LBB0_6
## %bb.1:
	leaq	LJTI0_0(%rip), %rax
	movslq	(%rax,%rdi,4), %rcx
	addq	%rax, %rcx
	jmpq	*%rcx
LBB0_2:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.3:
	movq	_MODS_SHIFT@GOTPCREL(%rip), %rax
	cmpl	$0, (%rax)
	je	LBB0_55
## %bb.4:
	movq	_MODS_CTRL@GOTPCREL(%rip), %rax
	cmpl	$0, (%rax)
	je	LBB0_55
## %bb.5:
	movq	_usb_gcr_auto@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str(%rip), %rsi
	callq	_TOGGLE_FLAG_AND_PRINT
	jmp	LBB0_55
LBB0_6:
	movl	$1, %ebx
	jmp	LBB0_55
LBB0_7:
	cmpl	$0, (%rsi)
	je	LBB0_50
## %bb.8:
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_timer_read32
	movl	%eax, _process_record_user.key_timer(%rip)
	jmp	LBB0_55
LBB0_9:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.10:
	movq	_led_animation_direction@GOTPCREL(%rip), %rax
	xorl	%ecx, %ecx
	cmpl	$0, (%rax)
	sete	%cl
	jmp	LBB0_54
LBB0_11:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.12:
	movq	_led_enabled@GOTPCREL(%rip), %rax
	xorl	%edi, %edi
	cmpl	$0, (%rax)
	sete	%dil
	movl	%edi, (%rax)
	callq	_I2C3733_Control_Set
	jmp	LBB0_55
LBB0_13:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.14:
	movq	_led_lighting_mode@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	leal	1(%rcx), %edx
	movl	%edx, (%rax)
	movq	_LED_MODE_MAX_INDEX@GOTPCREL(%rip), %rdx
	cmpl	(%rdx), %ecx
	jl	LBB0_55
## %bb.15:
	movq	_LED_MODE_NORMAL@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	jmp	LBB0_54
LBB0_16:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.17:
	movq	_led_animation_breathing@GOTPCREL(%rip), %rax
	xorl	%ecx, %ecx
	cmpl	$0, (%rax)
	sete	%cl
	movl	%ecx, (%rax)
	jne	LBB0_55
## %bb.18:
	movq	_gcr_desired@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	_gcr_breathe@GOTPCREL(%rip), %rcx
	movq	%rax, (%rcx)
	movq	_BREATHE_MIN_STEP@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_led_animation_breathe_cur@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_breathe_dir@GOTPCREL(%rip), %rax
	movl	$1, (%rax)
	jmp	LBB0_55
LBB0_19:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.20:
	movq	_led_animation_id@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	testl	%ecx, %ecx
	jne	LBB0_22
## %bb.21:
	movq	_led_setups_count@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
LBB0_22:
	decl	%ecx
	jmp	LBB0_54
LBB0_23:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.24:
	movq	_led_animation_id@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movq	_led_setups_count@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	decl	%edx
	cmpl	%edx, %ecx
	jne	LBB0_53
## %bb.25:
	movl	$0, (%rax)
	jmp	LBB0_55
LBB0_26:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.27:
	movq	_ANIMATION_SPEED_STEP@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_led_animation_speed@GOTPCREL(%rip), %rcx
	addl	%eax, (%rcx)
	jmp	LBB0_55
LBB0_28:
	cmpl	$0, (%rsi)
	je	LBB0_52
## %bb.29:
	movq	_ANIMATION_SPEED_STEP@GOTPCREL(%rip), %rax
	movq	_led_animation_speed@GOTPCREL(%rip), %rcx
	movl	(%rcx), %edx
	subl	(%rax), %edx
	xorl	%ebx, %ebx
	testl	%edx, %edx
	cmovlel	%ebx, %edx
	movl	%edx, (%rcx)
	jmp	LBB0_55
LBB0_30:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.31:
	movq	_led_enabled@GOTPCREL(%rip), %rax
	movl	$1, (%rax)
	movl	$1, %edi
	callq	_I2C3733_Control_Set
	jmp	LBB0_55
LBB0_32:
	cmpl	$0, (%rsi)
	je	LBB0_52
## %bb.33:
	movq	_led_enabled@GOTPCREL(%rip), %rax
	movl	$0, (%rax)
	xorl	%ebx, %ebx
	xorl	%edi, %edi
	callq	_I2C3733_Control_Set
	jmp	LBB0_55
LBB0_34:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.35:
	movq	_LED_GCR_STEP@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movq	_LED_GCR_MAX@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	movq	_gcr_desired@GOTPCREL(%rip), %rsi
	movq	(%rsi), %rax
	movq	%rdx, %rdi
	subq	%rax, %rdi
	addq	%rcx, %rax
	cmpq	%rdi, %rcx
	cmovgq	%rdx, %rax
	movq	%rax, (%rsi)
	jmp	LBB0_38
LBB0_36:
	cmpl	$0, (%rsi)
	je	LBB0_52
## %bb.37:
	movq	_LED_GCR_STEP@GOTPCREL(%rip), %rax
	movq	_gcr_desired@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rdx
	xorl	%ebx, %ebx
	subq	(%rax), %rdx
	movl	$0, %eax
	cmovgeq	%rdx, %rax
	movq	%rax, (%rcx)
LBB0_38:
	movq	_led_animation_breathing@GOTPCREL(%rip), %rcx
	cmpl	$0, (%rcx)
	je	LBB0_55
## %bb.39:
	movq	_gcr_breathe@GOTPCREL(%rip), %rcx
	movq	%rax, (%rcx)
	jmp	LBB0_55
LBB0_52:
	xorl	%ebx, %ebx
	jmp	LBB0_55
LBB0_40:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.41:
	movq	_debug_enable@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.1(%rip), %rsi
	callq	_TOGGLE_FLAG_AND_PRINT
	jmp	LBB0_55
LBB0_42:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.43:
	movq	_debug_matrix@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.2(%rip), %rsi
	callq	_TOGGLE_FLAG_AND_PRINT
	jmp	LBB0_55
LBB0_44:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.45:
	movq	_debug_mouse@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.4(%rip), %rsi
	callq	_TOGGLE_FLAG_AND_PRINT
	jmp	LBB0_55
LBB0_46:
	xorl	%ebx, %ebx
	cmpl	$0, (%rsi)
	je	LBB0_55
## %bb.47:
	movq	_debug_keyboard@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.3(%rip), %rsi
	callq	_TOGGLE_FLAG_AND_PRINT
	jmp	LBB0_55
LBB0_50:
	movl	_process_record_user.key_timer(%rip), %edi
	callq	_timer_elapsed32
	xorl	%ebx, %ebx
	cmpl	$500, %eax                      ## imm = 0x1F4
	jl	LBB0_55
## %bb.51:
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_reset_keyboard
	jmp	LBB0_55
LBB0_53:
	incl	%ecx
LBB0_54:
	movl	%ecx, (%rax)
LBB0_55:
	movl	%ebx, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_2, LBB0_2-LJTI0_0
.set L0_0_set_7, LBB0_7-LJTI0_0
.set L0_0_set_9, LBB0_9-LJTI0_0
.set L0_0_set_11, LBB0_11-LJTI0_0
.set L0_0_set_13, LBB0_13-LJTI0_0
.set L0_0_set_16, LBB0_16-LJTI0_0
.set L0_0_set_19, LBB0_19-LJTI0_0
.set L0_0_set_23, LBB0_23-LJTI0_0
.set L0_0_set_26, LBB0_26-LJTI0_0
.set L0_0_set_28, LBB0_28-LJTI0_0
.set L0_0_set_30, LBB0_30-LJTI0_0
.set L0_0_set_32, LBB0_32-LJTI0_0
.set L0_0_set_34, LBB0_34-LJTI0_0
.set L0_0_set_36, LBB0_36-LJTI0_0
.set L0_0_set_40, LBB0_40-LJTI0_0
.set L0_0_set_42, LBB0_42-LJTI0_0
.set L0_0_set_44, LBB0_44-LJTI0_0
.set L0_0_set_46, LBB0_46-LJTI0_0
LJTI0_0:
	.long	L0_0_set_2
	.long	L0_0_set_7
	.long	L0_0_set_9
	.long	L0_0_set_11
	.long	L0_0_set_13
	.long	L0_0_set_16
	.long	L0_0_set_19
	.long	L0_0_set_23
	.long	L0_0_set_26
	.long	L0_0_set_28
	.long	L0_0_set_30
	.long	L0_0_set_32
	.long	L0_0_set_34
	.long	L0_0_set_36
	.long	L0_0_set_40
	.long	L0_0_set_42
	.long	L0_0_set_44
	.long	L0_0_set_46
	.end_data_region
                                        ## -- End function
.zerofill __DATA,__bss,_process_record_user.key_timer,4,2 ## @process_record_user.key_timer
	.comm	_LED_GCR_STEP,8,3               ## @LED_GCR_STEP
	.comm	_LED_GCR_MAX,8,3                ## @LED_GCR_MAX
	.comm	_gcr_desired,8,3                ## @gcr_desired
	.comm	_led_animation_breathing,4,2    ## @led_animation_breathing
	.comm	_gcr_breathe,8,3                ## @gcr_breathe
	.comm	_led_animation_id,4,2           ## @led_animation_id
	.comm	_led_setups_count,4,2           ## @led_setups_count
	.comm	_ANIMATION_SPEED_STEP,4,2       ## @ANIMATION_SPEED_STEP
	.comm	_led_animation_speed,4,2        ## @led_animation_speed
	.comm	_led_lighting_mode,4,2          ## @led_lighting_mode
	.comm	_LED_MODE_MAX_INDEX,4,2         ## @LED_MODE_MAX_INDEX
	.comm	_LED_MODE_NORMAL,4,2            ## @LED_MODE_NORMAL
	.comm	_led_enabled,4,2                ## @led_enabled
	.comm	_BREATHE_MIN_STEP,4,2           ## @BREATHE_MIN_STEP
	.comm	_led_animation_breathe_cur,4,2  ## @led_animation_breathe_cur
	.comm	_breathe_dir,4,2                ## @breathe_dir
	.comm	_led_animation_direction,4,2    ## @led_animation_direction
	.comm	_MODS_SHIFT,4,2                 ## @MODS_SHIFT
	.comm	_MODS_CTRL,4,2                  ## @MODS_CTRL
	.comm	_usb_gcr_auto,4,2               ## @usb_gcr_auto
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"USB GCR auto mode"

	.comm	_debug_enable,4,2               ## @debug_enable
L_.str.1:                               ## @.str.1
	.asciz	"Debug mode"

	.comm	_debug_matrix,4,2               ## @debug_matrix
L_.str.2:                               ## @.str.2
	.asciz	"Debug matrix"

	.comm	_debug_keyboard,4,2             ## @debug_keyboard
L_.str.3:                               ## @.str.3
	.asciz	"Debug keyboard"

	.comm	_debug_mouse,4,2                ## @debug_mouse
L_.str.4:                               ## @.str.4
	.asciz	"Debug mouse"

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_process_record_user            ; -- Begin function process_record_user
	.p2align	2
_process_record_user:                   ; @process_record_user
	.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
	sub	w8, w0, #128
	cmp	w8, #17
	b.hi	LBB0_4
; %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:
	ldr	w8, [x1]
Lloh2:
	adrp	x9, _MODS_SHIFT@GOTPAGE
Lloh3:
	ldr	x9, [x9, _MODS_SHIFT@GOTPAGEOFF]
Lloh4:
	ldr	w9, [x9]
Lloh5:
	adrp	x10, _MODS_CTRL@GOTPAGE
Lloh6:
	ldr	x10, [x10, _MODS_CTRL@GOTPAGEOFF]
Lloh7:
	ldr	w10, [x10]
	cmp	w8, #0
	ccmp	w9, #0, #4, ne
	ccmp	w10, #0, #4, ne
	b.eq	LBB0_48
; %bb.3:
Lloh8:
	adrp	x8, _usb_gcr_auto@GOTPAGE
Lloh9:
	ldr	x8, [x8, _usb_gcr_auto@GOTPAGEOFF]
Lloh10:
	ldr	w0, [x8]
Lloh11:
	adrp	x1, l_.str@PAGE
Lloh12:
	add	x1, x1, l_.str@PAGEOFF
	bl	_TOGGLE_FLAG_AND_PRINT
	b	LBB0_48
LBB0_4:
	mov	w0, #1
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_5:
	ldr	w8, [x1]
	cbz	w8, LBB0_46
; %bb.6:
	bl	_timer_read32
	mov	x8, x0
	mov	w0, #0
	adrp	x9, _process_record_user.key_timer@PAGE
	str	w8, [x9, _process_record_user.key_timer@PAGEOFF]
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_7:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.8:
	mov	w0, #0
Lloh13:
	adrp	x8, _led_animation_direction@GOTPAGE
Lloh14:
	ldr	x8, [x8, _led_animation_direction@GOTPAGEOFF]
	ldr	w9, [x8]
	cmp	w9, #0
	cset	w9, eq
	b	LBB0_52
LBB0_9:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.10:
Lloh15:
	adrp	x8, _led_enabled@GOTPAGE
Lloh16:
	ldr	x8, [x8, _led_enabled@GOTPAGEOFF]
	ldr	w9, [x8]
	cmp	w9, #0
	cset	w0, eq
	str	w0, [x8]
	bl	_I2C3733_Control_Set
	b	LBB0_48
LBB0_11:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.12:
Lloh17:
	adrp	x8, _led_lighting_mode@GOTPAGE
Lloh18:
	ldr	x8, [x8, _led_lighting_mode@GOTPAGEOFF]
	ldr	w9, [x8]
	add	w10, w9, #1
	str	w10, [x8]
Lloh19:
	adrp	x10, _LED_MODE_MAX_INDEX@GOTPAGE
Lloh20:
	ldr	x10, [x10, _LED_MODE_MAX_INDEX@GOTPAGEOFF]
Lloh21:
	ldr	w10, [x10]
	cmp	w9, w10
	b.lt	LBB0_48
; %bb.13:
	mov	w0, #0
Lloh22:
	adrp	x9, _LED_MODE_NORMAL@GOTPAGE
Lloh23:
	ldr	x9, [x9, _LED_MODE_NORMAL@GOTPAGEOFF]
Lloh24:
	ldr	w9, [x9]
	b	LBB0_52
LBB0_14:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.15:
Lloh25:
	adrp	x8, _led_animation_breathing@GOTPAGE
Lloh26:
	ldr	x8, [x8, _led_animation_breathing@GOTPAGEOFF]
	ldr	w9, [x8]
	cmp	w9, #0
	cset	w10, eq
	str	w10, [x8]
	cbnz	w9, LBB0_48
; %bb.16:
	mov	w0, #0
Lloh27:
	adrp	x8, _gcr_desired@GOTPAGE
Lloh28:
	ldr	x8, [x8, _gcr_desired@GOTPAGEOFF]
Lloh29:
	adrp	x9, _gcr_breathe@GOTPAGE
Lloh30:
	ldr	x9, [x9, _gcr_breathe@GOTPAGEOFF]
Lloh31:
	ldr	x8, [x8]
Lloh32:
	str	x8, [x9]
Lloh33:
	adrp	x8, _BREATHE_MIN_STEP@GOTPAGE
Lloh34:
	ldr	x8, [x8, _BREATHE_MIN_STEP@GOTPAGEOFF]
Lloh35:
	adrp	x9, _led_animation_breathe_cur@GOTPAGE
Lloh36:
	ldr	x9, [x9, _led_animation_breathe_cur@GOTPAGEOFF]
Lloh37:
	ldr	w8, [x8]
Lloh38:
	str	w8, [x9]
Lloh39:
	adrp	x8, _breathe_dir@GOTPAGE
Lloh40:
	ldr	x8, [x8, _breathe_dir@GOTPAGEOFF]
	mov	w9, #1
	b	LBB0_52
LBB0_17:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.18:
Lloh41:
	adrp	x8, _led_animation_id@GOTPAGE
Lloh42:
	ldr	x8, [x8, _led_animation_id@GOTPAGEOFF]
	ldr	w9, [x8]
	cbz	w9, LBB0_50
; %bb.19:
	mov	w0, #0
	b	LBB0_51
LBB0_20:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.21:
Lloh43:
	adrp	x8, _led_animation_id@GOTPAGE
Lloh44:
	ldr	x8, [x8, _led_animation_id@GOTPAGEOFF]
	ldr	w9, [x8]
Lloh45:
	adrp	x10, _led_setups_count@GOTPAGE
Lloh46:
	ldr	x10, [x10, _led_setups_count@GOTPAGEOFF]
Lloh47:
	ldr	w10, [x10]
	sub	w10, w10, #1
	cmp	w9, w10
	b.ne	LBB0_49
; %bb.22:
	mov	w0, #0
	str	wzr, [x8]
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_23:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.24:
	mov	w0, #0
Lloh48:
	adrp	x8, _ANIMATION_SPEED_STEP@GOTPAGE
Lloh49:
	ldr	x8, [x8, _ANIMATION_SPEED_STEP@GOTPAGEOFF]
Lloh50:
	ldr	w8, [x8]
Lloh51:
	adrp	x9, _led_animation_speed@GOTPAGE
Lloh52:
	ldr	x9, [x9, _led_animation_speed@GOTPAGEOFF]
	ldr	w10, [x9]
	add	w8, w10, w8
	b	LBB0_27
LBB0_25:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.26:
	mov	w0, #0
Lloh53:
	adrp	x8, _ANIMATION_SPEED_STEP@GOTPAGE
Lloh54:
	ldr	x8, [x8, _ANIMATION_SPEED_STEP@GOTPAGEOFF]
Lloh55:
	adrp	x9, _led_animation_speed@GOTPAGE
Lloh56:
	ldr	x9, [x9, _led_animation_speed@GOTPAGEOFF]
Lloh57:
	ldr	w8, [x8]
	ldr	w10, [x9]
	sub	w8, w10, w8
	cmp	w8, #0
	csel	w8, w8, wzr, gt
LBB0_27:
	str	w8, [x9]
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_28:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.29:
Lloh58:
	adrp	x8, _led_enabled@GOTPAGE
Lloh59:
	ldr	x8, [x8, _led_enabled@GOTPAGEOFF]
	mov	w9, #1
Lloh60:
	str	w9, [x8]
	mov	w0, #1
	bl	_I2C3733_Control_Set
	b	LBB0_48
LBB0_30:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.31:
Lloh61:
	adrp	x8, _led_enabled@GOTPAGE
Lloh62:
	ldr	x8, [x8, _led_enabled@GOTPAGEOFF]
Lloh63:
	str	wzr, [x8]
	mov	w0, #0
	bl	_I2C3733_Control_Set
	b	LBB0_48
LBB0_32:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.33:
Lloh64:
	adrp	x8, _LED_GCR_STEP@GOTPAGE
Lloh65:
	ldr	x8, [x8, _LED_GCR_STEP@GOTPAGEOFF]
Lloh66:
	ldr	x8, [x8]
Lloh67:
	adrp	x9, _LED_GCR_MAX@GOTPAGE
Lloh68:
	ldr	x9, [x9, _LED_GCR_MAX@GOTPAGEOFF]
Lloh69:
	ldr	x9, [x9]
Lloh70:
	adrp	x10, _gcr_desired@GOTPAGE
Lloh71:
	ldr	x10, [x10, _gcr_desired@GOTPAGEOFF]
	ldr	x11, [x10]
	add	x12, x11, x8
	sub	x11, x9, x11
	cmp	x8, x11
	csel	x8, x9, x12, gt
	str	x8, [x10]
	b	LBB0_36
LBB0_34:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.35:
Lloh72:
	adrp	x8, _LED_GCR_STEP@GOTPAGE
Lloh73:
	ldr	x8, [x8, _LED_GCR_STEP@GOTPAGEOFF]
Lloh74:
	ldr	x8, [x8]
Lloh75:
	adrp	x9, _gcr_desired@GOTPAGE
Lloh76:
	ldr	x9, [x9, _gcr_desired@GOTPAGEOFF]
	ldr	x10, [x9]
	subs	x8, x10, x8
	csel	x8, xzr, x8, lt
	str	x8, [x9]
LBB0_36:
Lloh77:
	adrp	x9, _led_animation_breathing@GOTPAGE
Lloh78:
	ldr	x9, [x9, _led_animation_breathing@GOTPAGEOFF]
Lloh79:
	ldr	w9, [x9]
	cbz	w9, LBB0_48
; %bb.37:
	mov	w0, #0
Lloh80:
	adrp	x9, _gcr_breathe@GOTPAGE
Lloh81:
	ldr	x9, [x9, _gcr_breathe@GOTPAGEOFF]
Lloh82:
	str	x8, [x9]
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_38:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.39:
Lloh83:
	adrp	x8, _debug_enable@GOTPAGE
Lloh84:
	ldr	x8, [x8, _debug_enable@GOTPAGEOFF]
Lloh85:
	ldr	w0, [x8]
Lloh86:
	adrp	x1, l_.str.1@PAGE
Lloh87:
	add	x1, x1, l_.str.1@PAGEOFF
	bl	_TOGGLE_FLAG_AND_PRINT
	b	LBB0_48
LBB0_40:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.41:
Lloh88:
	adrp	x8, _debug_matrix@GOTPAGE
Lloh89:
	ldr	x8, [x8, _debug_matrix@GOTPAGEOFF]
Lloh90:
	ldr	w0, [x8]
Lloh91:
	adrp	x1, l_.str.2@PAGE
Lloh92:
	add	x1, x1, l_.str.2@PAGEOFF
	bl	_TOGGLE_FLAG_AND_PRINT
	b	LBB0_48
LBB0_42:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.43:
Lloh93:
	adrp	x8, _debug_mouse@GOTPAGE
Lloh94:
	ldr	x8, [x8, _debug_mouse@GOTPAGEOFF]
Lloh95:
	ldr	w0, [x8]
Lloh96:
	adrp	x1, l_.str.4@PAGE
Lloh97:
	add	x1, x1, l_.str.4@PAGEOFF
	bl	_TOGGLE_FLAG_AND_PRINT
	b	LBB0_48
LBB0_44:
	ldr	w8, [x1]
	cbz	w8, LBB0_48
; %bb.45:
Lloh98:
	adrp	x8, _debug_keyboard@GOTPAGE
Lloh99:
	ldr	x8, [x8, _debug_keyboard@GOTPAGEOFF]
Lloh100:
	ldr	w0, [x8]
Lloh101:
	adrp	x1, l_.str.3@PAGE
Lloh102:
	add	x1, x1, l_.str.3@PAGEOFF
	bl	_TOGGLE_FLAG_AND_PRINT
	b	LBB0_48
LBB0_46:
Lloh103:
	adrp	x8, _process_record_user.key_timer@PAGE
Lloh104:
	ldr	w0, [x8, _process_record_user.key_timer@PAGEOFF]
	bl	_timer_elapsed32
	cmp	w0, #500
	b.lt	LBB0_48
; %bb.47:
	bl	_reset_keyboard
LBB0_48:
	mov	w0, #0
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_49:
	mov	w0, #0
	add	w9, w9, #1
	b	LBB0_52
LBB0_50:
	mov	w0, #0
Lloh105:
	adrp	x9, _led_setups_count@GOTPAGE
Lloh106:
	ldr	x9, [x9, _led_setups_count@GOTPAGEOFF]
Lloh107:
	ldr	w9, [x9]
LBB0_51:
	sub	w9, w9, #1
LBB0_52:
	str	w9, [x8]
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpAdd	Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGot	Lloh25, Lloh26
	.loh AdrpLdrGot	Lloh39, Lloh40
	.loh AdrpLdrGotStr	Lloh35, Lloh36, Lloh38
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh37
	.loh AdrpLdrGotStr	Lloh29, Lloh30, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh31
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGot	Lloh43, Lloh44
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh53, Lloh54, Lloh57
	.loh AdrpLdrGotStr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotStr	Lloh61, Lloh62, Lloh63
	.loh AdrpLdrGot	Lloh70, Lloh71
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh69
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpLdrGot	Lloh75, Lloh76
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh77, Lloh78, Lloh79
	.loh AdrpLdrGotStr	Lloh80, Lloh81, Lloh82
	.loh AdrpAdd	Lloh86, Lloh87
	.loh AdrpLdrGotLdr	Lloh83, Lloh84, Lloh85
	.loh AdrpAdd	Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh88, Lloh89, Lloh90
	.loh AdrpAdd	Lloh96, Lloh97
	.loh AdrpLdrGotLdr	Lloh93, Lloh94, Lloh95
	.loh AdrpAdd	Lloh101, Lloh102
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.loh AdrpLdr	Lloh103, Lloh104
	.loh AdrpLdrGotLdr	Lloh105, Lloh106, Lloh107
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_7-LBB0_2)>>2
	.byte	(LBB0_9-LBB0_2)>>2
	.byte	(LBB0_11-LBB0_2)>>2
	.byte	(LBB0_14-LBB0_2)>>2
	.byte	(LBB0_17-LBB0_2)>>2
	.byte	(LBB0_20-LBB0_2)>>2
	.byte	(LBB0_23-LBB0_2)>>2
	.byte	(LBB0_25-LBB0_2)>>2
	.byte	(LBB0_28-LBB0_2)>>2
	.byte	(LBB0_30-LBB0_2)>>2
	.byte	(LBB0_32-LBB0_2)>>2
	.byte	(LBB0_34-LBB0_2)>>2
	.byte	(LBB0_38-LBB0_2)>>2
	.byte	(LBB0_40-LBB0_2)>>2
	.byte	(LBB0_42-LBB0_2)>>2
	.byte	(LBB0_44-LBB0_2)>>2
                                        ; -- End function
.zerofill __DATA,__bss,_process_record_user.key_timer,4,2 ; @process_record_user.key_timer
	.comm	_LED_GCR_STEP,8,3               ; @LED_GCR_STEP
	.comm	_LED_GCR_MAX,8,3                ; @LED_GCR_MAX
	.comm	_gcr_desired,8,3                ; @gcr_desired
	.comm	_led_animation_breathing,4,2    ; @led_animation_breathing
	.comm	_gcr_breathe,8,3                ; @gcr_breathe
	.comm	_led_animation_id,4,2           ; @led_animation_id
	.comm	_led_setups_count,4,2           ; @led_setups_count
	.comm	_ANIMATION_SPEED_STEP,4,2       ; @ANIMATION_SPEED_STEP
	.comm	_led_animation_speed,4,2        ; @led_animation_speed
	.comm	_led_lighting_mode,4,2          ; @led_lighting_mode
	.comm	_LED_MODE_MAX_INDEX,4,2         ; @LED_MODE_MAX_INDEX
	.comm	_LED_MODE_NORMAL,4,2            ; @LED_MODE_NORMAL
	.comm	_led_enabled,4,2                ; @led_enabled
	.comm	_BREATHE_MIN_STEP,4,2           ; @BREATHE_MIN_STEP
	.comm	_led_animation_breathe_cur,4,2  ; @led_animation_breathe_cur
	.comm	_breathe_dir,4,2                ; @breathe_dir
	.comm	_led_animation_direction,4,2    ; @led_animation_direction
	.comm	_MODS_SHIFT,4,2                 ; @MODS_SHIFT
	.comm	_MODS_CTRL,4,2                  ; @MODS_CTRL
	.comm	_usb_gcr_auto,4,2               ; @usb_gcr_auto
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"USB GCR auto mode"

	.comm	_debug_enable,4,2               ; @debug_enable
l_.str.1:                               ; @.str.1
	.asciz	"Debug mode"

	.comm	_debug_matrix,4,2               ; @debug_matrix
l_.str.2:                               ; @.str.2
	.asciz	"Debug matrix"

	.comm	_debug_keyboard,4,2             ; @debug_keyboard
l_.str.3:                               ; @.str.3
	.asciz	"Debug keyboard"

	.comm	_debug_mouse,4,2                ; @debug_mouse
l_.str.4:                               ; @.str.4
	.asciz	"Debug mouse"

.subsections_via_symbols
