	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function set_gain
_set_gain:                              ## @set_gain
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	subq	$48, %rsp
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -8(%rbp)
	movl	(%rdi), %eax
	movl	%eax, -44(%rbp)
	xorps	%xmm0, %xmm0
	movups	%xmm0, -40(%rbp)
	movabsq	$124554051584, %rax             ## imm = 0x1D00000000
	movq	%rax, -24(%rbp)
	movl	4(%rdi), %eax
	addl	$-128, %eax
	cmpl	$8, %eax
	ja	LBB0_11
## %bb.1:
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_2:
	movl	$161, -48(%rbp)
	movq	_ov_gain@GOTPCREL(%rip), %rax
LBB0_9:
	movq	(%rax), %rax
	movq	8(%rdi), %rcx
	movl	(%rax,%rcx,4), %eax
	movl	%eax, -36(%rbp)
	jmp	LBB0_10
LBB0_6:
	movl	$177, -48(%rbp)
	movl	$47, -40(%rbp)
	jmp	LBB0_4
LBB0_3:
	movl	$177, -48(%rbp)
	movl	$53, -40(%rbp)
LBB0_4:
	movq	_micron1_gain@GOTPCREL(%rip), %rax
	jmp	LBB0_5
LBB0_7:
	movl	$177, -48(%rbp)
	movl	$47, -40(%rbp)
	movq	_micron2_gain@GOTPCREL(%rip), %rax
LBB0_5:
	movq	(%rax), %rax
	movq	8(%rdi), %rcx
	movl	(%rax,%rcx,4), %edx
	sarl	$8, %edx
	movl	%edx, -36(%rbp)
	movzbl	(%rax,%rcx,4), %eax
	movl	%eax, -32(%rbp)
LBB0_10:
	leaq	-48(%rbp), %rsi
	callq	_i2c_w
LBB0_11:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-8(%rbp), %rax
	jne	LBB0_13
## %bb.12:
	xorl	%eax, %eax
	addq	$48, %rsp
	popq	%rbp
	retq
LBB0_8:
	movl	$161, -48(%rbp)
	movl	$48, -40(%rbp)
	movq	_hv7131r_gain@GOTPCREL(%rip), %rax
	jmp	LBB0_9
LBB0_13:
	callq	___stack_chk_fail
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_2, LBB0_2-LJTI0_0
.set L0_0_set_6, LBB0_6-LJTI0_0
.set L0_0_set_3, LBB0_3-LJTI0_0
.set L0_0_set_7, LBB0_7-LJTI0_0
.set L0_0_set_8, LBB0_8-LJTI0_0
LJTI0_0:
	.long	L0_0_set_2
	.long	L0_0_set_2
	.long	L0_0_set_2
	.long	L0_0_set_2
	.long	L0_0_set_2
	.long	L0_0_set_6
	.long	L0_0_set_3
	.long	L0_0_set_7
	.long	L0_0_set_8
	.end_data_region
                                        ## -- End function
	.comm	_ov_gain,8,3                    ## @ov_gain
	.comm	_micron1_gain,8,3               ## @micron1_gain
	.comm	_micron2_gain,8,3               ## @micron2_gain
	.comm	_hv7131r_gain,8,3               ## @hv7131r_gain
	.no_dead_strip	_set_gain
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function set_gain
_set_gain:                              ; @set_gain
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #64
	.cfi_def_cfa_offset 64
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-8]
	ldp	w8, w9, [x0]
	str	w8, [sp, #12]
	stp	xzr, xzr, [sp, #16]
	mov	x8, #124554051584
	str	x8, [sp, #32]
	sub	w8, w9, #128
	cmp	w8, #8
	b.hi	LBB0_10
; %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:
	mov	w8, #161
Lloh5:
	adrp	x9, _ov_gain@GOTPAGE
Lloh6:
	ldr	x9, [x9, _ov_gain@GOTPAGEOFF]
	str	w8, [sp, #8]
Lloh7:
	ldr	x8, [x9]
LBB0_3:
	ldr	x9, [x0, #8]
	ldr	w8, [x8, x9, lsl #2]
	str	w8, [sp, #20]
	b	LBB0_9
LBB0_4:
	mov	w8, #177
	mov	w9, #47
	b	LBB0_6
LBB0_5:
	mov	w8, #177
	mov	w9, #53
LBB0_6:
Lloh8:
	adrp	x10, _micron1_gain@GOTPAGE
Lloh9:
	ldr	x10, [x10, _micron1_gain@GOTPAGEOFF]
	b	LBB0_8
LBB0_7:
	mov	w8, #177
	mov	w9, #47
Lloh10:
	adrp	x10, _micron2_gain@GOTPAGE
Lloh11:
	ldr	x10, [x10, _micron2_gain@GOTPAGEOFF]
LBB0_8:
	str	w8, [sp, #8]
	str	w9, [sp, #16]
	ldr	x8, [x10]
	ldr	x9, [x0, #8]
	lsl	x9, x9, #2
	ldr	w10, [x8, x9]
	asr	w10, w10, #8
	str	w10, [sp, #20]
	ldrb	w8, [x8, x9]
	str	w8, [sp, #24]
LBB0_9:
	add	x1, sp, #8
	bl	_i2c_w
LBB0_10:
	ldur	x8, [x29, #-8]
Lloh12:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh13:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh14:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_13
; %bb.11:
	mov	w0, #0
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #64
	ret
LBB0_12:
	mov	w8, #161
	mov	w9, #48
Lloh15:
	adrp	x10, _hv7131r_gain@GOTPAGE
Lloh16:
	ldr	x10, [x10, _hv7131r_gain@GOTPAGEOFF]
	str	w8, [sp, #8]
	str	w9, [sp, #16]
Lloh17:
	ldr	x8, [x10]
	b	LBB0_3
LBB0_13:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh8, Lloh9
	.loh AdrpLdrGot	Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_4-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_7-LBB0_2)>>2
	.byte	(LBB0_12-LBB0_2)>>2
                                        ; -- End function
	.comm	_ov_gain,8,3                    ; @ov_gain
	.comm	_micron1_gain,8,3               ; @micron1_gain
	.comm	_micron2_gain,8,3               ; @micron2_gain
	.comm	_hv7131r_gain,8,3               ; @hv7131r_gain
	.no_dead_strip	_set_gain
.subsections_via_symbols
