	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function S_Update_
LCPI0_0:
	.long	0x41300000                      ## float 11
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3
LCPI0_1:
	.quad	0x3f847ae147ae147b              ## double 0.01
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_S_Update_
	.p2align	4, 0x90
_S_Update_:                             ## @S_Update_
	.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
	movq	_s_soundStarted@GOTPCREL(%rip), %rax
	cmpl	$0, (%rax)
	je	LBB0_4
## %bb.1:
	movq	_s_soundMuted@GOTPCREL(%rip), %rax
	cmpq	$0, (%rax)
	jne	LBB0_4
## %bb.2:
	xorl	%eax, %eax
	callq	_Com_Milliseconds
	movss	%xmm0, -12(%rbp)                ## 4-byte Spill
	xorl	%eax, %eax
	callq	_S_GetSoundtime
	movq	_s_soundtime@GOTPCREL(%rip), %rbx
	movl	(%rbx), %eax
	cmpl	_S_Update_.ot(%rip), %eax
	je	LBB0_4
## %bb.3:
	movl	%eax, _S_Update_.ot(%rip)
	xorl	%eax, %eax
	callq	_S_ScanChannelStarts
	movss	-12(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	subss	_S_Update_.lastTime(%rip), %xmm0
	movss	LCPI0_0(%rip), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	maxss	%xmm0, %xmm1
	movq	_s_mixahead@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movq	_dma@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	movss	(%rcx), %xmm2                   ## xmm2 = mem[0],zero,zero,zero
	mulss	%xmm0, %xmm2
	movq	_s_mixPreStep@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rcx
	movss	(%rcx), %xmm3                   ## xmm3 = mem[0],zero,zero,zero
	mulss	%xmm0, %xmm1
	xorps	%xmm0, %xmm0
	cvtss2sd	%xmm1, %xmm0
	mulsd	LCPI0_1(%rip), %xmm0
	xorps	%xmm1, %xmm1
	cvtss2sd	%xmm3, %xmm1
	addsd	%xmm1, %xmm0
	cvtsd2ss	%xmm0, %xmm0
	movl	(%rbx), %ebx
	xorps	%xmm1, %xmm1
	cvtsi2ss	%ebx, %xmm1
	minss	%xmm2, %xmm0
	addss	%xmm0, %xmm1
	cvttss2si	%xmm1, %rcx
	movl	4(%rax), %edx
	leal	(%rdx,%rcx), %esi
	decl	%esi
	movb	12(%rax), %cl
	movl	8(%rax), %eax
	decb	%cl
	sarl	%cl, %eax
	negl	%edx
	andl	%esi, %edx
	movl	%edx, %ecx
	subl	%ebx, %ecx
	addl	%eax, %ebx
	cmpl	%eax, %ecx
	cmovbel	%edx, %ebx
	xorl	%eax, %eax
	callq	_SNDDMA_BeginPainting
	movl	%ebx, %edi
	callq	_S_PaintChannels
	xorl	%eax, %eax
	callq	_SNDDMA_Submit
	movss	-12(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	movss	%xmm0, _S_Update_.lastTime(%rip)
LBB0_4:
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
.zerofill __DATA,__bss,_S_Update_.lastTime,4,2 ## @S_Update_.lastTime
	.section	__DATA,__data
	.p2align	2                               ## @S_Update_.ot
_S_Update_.ot:
	.long	4294967295                      ## 0xffffffff

	.comm	_s_soundStarted,4,2             ## @s_soundStarted
	.comm	_s_soundMuted,8,3               ## @s_soundMuted
	.comm	_s_soundtime,4,2                ## @s_soundtime
	.comm	_s_mixahead,8,3                 ## @s_mixahead
	.comm	_dma,16,2                       ## @dma
	.comm	_s_mixPreStep,8,3               ## @s_mixPreStep
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_S_Update_                      ; -- Begin function S_Update_
	.p2align	2
_S_Update_:                             ; @S_Update_
	.cfi_startproc
; %bb.0:
	stp	d9, d8, [sp, #-48]!             ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset b8, -40
	.cfi_offset b9, -48
Lloh0:
	adrp	x8, _s_soundStarted@GOTPAGE
Lloh1:
	ldr	x8, [x8, _s_soundStarted@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _s_soundMuted@GOTPAGE
Lloh4:
	ldr	x9, [x9, _s_soundMuted@GOTPAGEOFF]
Lloh5:
	ldr	x9, [x9]
	cmp	w8, #0
	ccmp	x9, #0, #0, ne
	b.ne	LBB0_3
; %bb.1:
	bl	_Com_Milliseconds
	fmov	s8, s0
	bl	_S_GetSoundtime
Lloh6:
	adrp	x19, _s_soundtime@GOTPAGE
Lloh7:
	ldr	x19, [x19, _s_soundtime@GOTPAGEOFF]
	ldr	w8, [x19]
	adrp	x9, _S_Update_.ot@PAGE
	ldr	w10, [x9, _S_Update_.ot@PAGEOFF]
	cmp	w8, w10
	b.eq	LBB0_3
; %bb.2:
	str	w8, [x9, _S_Update_.ot@PAGEOFF]
	bl	_S_ScanChannelStarts
	adrp	x20, _S_Update_.lastTime@PAGE
	ldr	s0, [x20, _S_Update_.lastTime@PAGEOFF]
	fsub	s0, s8, s0
	fmov	s1, #11.00000000
	fmax	s0, s0, s1
Lloh8:
	adrp	x8, _s_mixahead@GOTPAGE
Lloh9:
	ldr	x8, [x8, _s_mixahead@GOTPAGEOFF]
Lloh10:
	ldr	x8, [x8]
	ldr	s1, [x8]
Lloh11:
	adrp	x8, _dma@GOTPAGE
Lloh12:
	ldr	x8, [x8, _dma@GOTPAGEOFF]
	ldr	s2, [x8]
	fmul	s1, s1, s2
Lloh13:
	adrp	x9, _s_mixPreStep@GOTPAGE
Lloh14:
	ldr	x9, [x9, _s_mixPreStep@GOTPAGEOFF]
Lloh15:
	ldr	x9, [x9]
	ldr	s3, [x9]
	fcvt	d3, s3
	fmul	s0, s0, s2
	fcvt	d0, s0
	mov	x9, #5243
	movk	x9, #18350, lsl #16
	movk	x9, #31457, lsl #32
	movk	x9, #16260, lsl #48
	fmov	d2, x9
	fmadd	d0, d0, d2, d3
	fcvt	s0, d0
	fcmp	s1, s0
	fcsel	s0, s0, s1, gt
	ldr	w9, [x19]
	scvtf	s1, w9
	fadd	s0, s0, s1
	fcvtzu	w10, s0
	ldp	w11, w12, [x8, #4]
	add	w10, w11, w10
	sub	w10, w10, #1
	neg	w11, w11
	and	w10, w10, w11
	ldr	w8, [x8, #12]
	sub	w8, w8, #1
	asr	w8, w12, w8
	add	w11, w8, w9
	sub	w9, w10, w9
	cmp	w9, w8
	csel	w19, w11, w10, hi
	bl	_SNDDMA_BeginPainting
	mov	x0, x19
	bl	_S_PaintChannels
	bl	_SNDDMA_Submit
	str	s8, [x20, _S_Update_.lastTime@PAGEOFF]
LBB0_3:
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp], #48               ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh11, Lloh12
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.cfi_endproc
                                        ; -- End function
.zerofill __DATA,__bss,_S_Update_.lastTime,4,2 ; @S_Update_.lastTime
	.section	__DATA,__data
	.p2align	2                               ; @S_Update_.ot
_S_Update_.ot:
	.long	4294967295                      ; 0xffffffff

	.comm	_s_soundStarted,4,2             ; @s_soundStarted
	.comm	_s_soundMuted,8,3               ; @s_soundMuted
	.comm	_s_soundtime,4,2                ; @s_soundtime
	.comm	_s_mixahead,8,3                 ; @s_mixahead
	.comm	_dma,16,2                       ; @dma
	.comm	_s_mixPreStep,8,3               ; @s_mixPreStep
.subsections_via_symbols
