	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function decode_gains
LCPI0_0:
	.quad	0x3f10000000000000              ## double 6.103515625E-5
LCPI0_1:
	.quad	0x3f30000000000000              ## double 2.44140625E-4
LCPI0_2:
	.quad	0x3f40000000000000              ## double 4.8828125E-4
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_decode_gains:                          ## @decode_gains
	.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 $ecx killed $ecx def $rcx
	movq	_MODE_12k2@GOTPCREL(%rip), %rax
	cmpl	%edx, (%rax)
	je	LBB0_2
## %bb.1:
	movq	_MODE_7k95@GOTPCREL(%rip), %rax
	cmpl	%edx, (%rax)
	je	LBB0_2
## %bb.3:
	movq	_MODE_6k7@GOTPCREL(%rip), %rax
	cmpl	%edx, (%rax)
	jbe	LBB0_4
## %bb.6:
	movq	_MODE_5k15@GOTPCREL(%rip), %rax
	cmpl	%edx, (%rax)
	jbe	LBB0_7
## %bb.8:
	movq	_gains_MODE_4k75@GOTPCREL(%rip), %rdx
	movq	8(%rdi), %rax
	movl	%ecx, %esi
	andl	$2, %esi
	movl	(%rax,%rsi,4), %eax
	andl	$1, %ecx
	leal	(%rcx,%rax,2), %eax
	cltq
	shlq	$3, %rax
	addq	(%rdx), %rax
	jmp	LBB0_9
LBB0_2:
	movq	_qua_gain_pit@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	(%rsi), %rcx
	movsd	(%rax,%rcx,8), %xmm0            ## xmm0 = mem[0],zero
	mulsd	LCPI0_0(%rip), %xmm0
	movq	(%rdi), %rax
	movsd	%xmm0, 32(%rax)
	movq	_qua_gain_code@GOTPCREL(%rip), %rcx
	movq	8(%rsi), %rax
	shlq	$3, %rax
	addq	(%rcx), %rax
	movsd	LCPI0_2(%rip), %xmm0            ## xmm0 = mem[0],zero
	jmp	LBB0_10
LBB0_4:
	movq	_gains_high@GOTPCREL(%rip), %rcx
	jmp	LBB0_5
LBB0_7:
	movq	_gains_low@GOTPCREL(%rip), %rcx
LBB0_5:
	movq	(%rsi), %rax
	shlq	$3, %rax
	addq	(%rcx), %rax
LBB0_9:
	movq	(%rax), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	mulsd	LCPI0_0(%rip), %xmm0
	movq	(%rdi), %rcx
	movsd	%xmm0, 32(%rcx)
	addq	$8, %rax
	movsd	LCPI0_1(%rip), %xmm0            ## xmm0 = mem[0],zero
LBB0_10:
	mulsd	(%rax), %xmm0
	cvtsd2ss	%xmm0, %xmm0
	movss	%xmm0, (%r8)
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_MODE_12k2,4,2                  ## @MODE_12k2
	.comm	_MODE_7k95,4,2                  ## @MODE_7k95
	.comm	_qua_gain_pit,8,3               ## @qua_gain_pit
	.comm	_qua_gain_code,8,3              ## @qua_gain_code
	.comm	_MODE_6k7,4,2                   ## @MODE_6k7
	.comm	_gains_high,8,3                 ## @gains_high
	.comm	_MODE_5k15,4,2                  ## @MODE_5k15
	.comm	_gains_low,8,3                  ## @gains_low
	.comm	_gains_MODE_4k75,8,3            ## @gains_MODE_4k75
	.no_dead_strip	_decode_gains
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function decode_gains
_decode_gains:                          ; @decode_gains
	.cfi_startproc
; %bb.0:
Lloh0:
	adrp	x8, _MODE_12k2@GOTPAGE
Lloh1:
	ldr	x8, [x8, _MODE_12k2@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _MODE_7k95@GOTPAGE
Lloh4:
	ldr	x9, [x9, _MODE_7k95@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	cmp	w8, w2
	ccmp	w9, w2, #4, ne
	b.ne	LBB0_2
; %bb.1:
Lloh6:
	adrp	x8, _qua_gain_pit@GOTPAGE
Lloh7:
	ldr	x8, [x8, _qua_gain_pit@GOTPAGEOFF]
Lloh8:
	ldr	x8, [x8]
	ldp	x9, x10, [x1]
	ldr	d0, [x8, x9, lsl #3]
	mov	x8, #4544132024016830464
	fmov	d1, x8
	fmul	d0, d0, d1
	ldr	x8, [x0]
	str	d0, [x8, #32]
Lloh9:
	adrp	x8, _qua_gain_code@GOTPAGE
Lloh10:
	ldr	x8, [x8, _qua_gain_code@GOTPAGEOFF]
Lloh11:
	ldr	x8, [x8]
	add	x8, x8, x10, lsl #3
	mov	x9, #4557642822898941952
	b	LBB0_9
LBB0_2:
Lloh12:
	adrp	x8, _MODE_6k7@GOTPAGE
Lloh13:
	ldr	x8, [x8, _MODE_6k7@GOTPAGEOFF]
Lloh14:
	ldr	w8, [x8]
	cmp	w8, w2
	b.ls	LBB0_5
; %bb.3:
Lloh15:
	adrp	x8, _MODE_5k15@GOTPAGE
Lloh16:
	ldr	x8, [x8, _MODE_5k15@GOTPAGEOFF]
Lloh17:
	ldr	w8, [x8]
	cmp	w8, w2
	b.ls	LBB0_6
; %bb.4:
Lloh18:
	adrp	x8, _gains_MODE_4k75@GOTPAGE
Lloh19:
	ldr	x8, [x8, _gains_MODE_4k75@GOTPAGEOFF]
Lloh20:
	ldr	x8, [x8]
	ldr	x9, [x0, #8]
	and	w10, w3, #0x2
	ldr	w9, [x9, w10, uxtw #2]
	bfi	w3, w9, #1, #31
	add	x8, x8, w3, sxtw #3
	b	LBB0_8
LBB0_5:
Lloh21:
	adrp	x8, _gains_high@GOTPAGE
Lloh22:
	ldr	x8, [x8, _gains_high@GOTPAGEOFF]
	b	LBB0_7
LBB0_6:
Lloh23:
	adrp	x8, _gains_low@GOTPAGE
Lloh24:
	ldr	x8, [x8, _gains_low@GOTPAGEOFF]
LBB0_7:
	ldr	x8, [x8]
	ldr	x9, [x1]
	add	x8, x8, x9, lsl #3
LBB0_8:
	ldr	x8, [x8]
	ldr	d0, [x8], #8
	mov	x9, #4544132024016830464
	fmov	d1, x9
	fmul	d0, d0, d1
	ldr	x9, [x0]
	str	d0, [x9, #32]
	mov	x9, #4553139223271571456
LBB0_9:
	fmov	d0, x9
	ldr	d1, [x8]
	fmul	d0, d1, d0
	fcvt	s0, d0
	str	s0, [x4]
	ret
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGot	Lloh21, Lloh22
	.loh AdrpLdrGot	Lloh23, Lloh24
	.cfi_endproc
                                        ; -- End function
	.comm	_MODE_12k2,4,2                  ; @MODE_12k2
	.comm	_MODE_7k95,4,2                  ; @MODE_7k95
	.comm	_qua_gain_pit,8,3               ; @qua_gain_pit
	.comm	_qua_gain_code,8,3              ; @qua_gain_code
	.comm	_MODE_6k7,4,2                   ; @MODE_6k7
	.comm	_gains_high,8,3                 ; @gains_high
	.comm	_MODE_5k15,4,2                  ; @MODE_5k15
	.comm	_gains_low,8,3                  ; @gains_low
	.comm	_gains_MODE_4k75,8,3            ; @gains_MODE_4k75
	.no_dead_strip	_decode_gains
.subsections_via_symbols
