	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function update_noise_reduction
_update_noise_reduction:                ## @update_noise_reduction
	.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
	.cfi_offset %rbx, -24
	movq	(%rdi), %r10
	movq	8(%rdi), %r9
	movq	16(%rdi), %r8
	movl	(%r10), %edx
	movq	(%r9), %r11
	cmpl	$65537, %edx                    ## imm = 0x10001
	jl	LBB0_2
## %bb.1:
	movdqu	(%r11), %xmm0
	movdqu	16(%r11), %xmm1
	movdqu	32(%r11), %xmm2
	movdqu	48(%r11), %xmm3
	psrad	$1, %xmm0
	movdqu	%xmm0, (%r11)
	psrad	$1, %xmm1
	movdqu	%xmm1, 16(%r11)
	psrad	$1, %xmm2
	movdqu	%xmm2, 32(%r11)
	psrad	$1, %xmm3
	movdqu	%xmm3, 48(%r11)
	movdqu	64(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 64(%r11)
	movdqu	80(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 80(%r11)
	movdqu	96(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 96(%r11)
	movdqu	112(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 112(%r11)
	movdqu	128(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 128(%r11)
	movdqu	144(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 144(%r11)
	movdqu	160(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 160(%r11)
	movdqu	176(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 176(%r11)
	movdqu	192(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 192(%r11)
	movdqu	208(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 208(%r11)
	movdqu	224(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 224(%r11)
	movdqu	240(%r11), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 240(%r11)
	movl	(%r10), %edx
	sarl	%edx
	movl	%edx, (%r10)
LBB0_2:
	movq	(%r8), %rcx
	xorl	%esi, %esi
	.p2align	4, 0x90
LBB0_3:                                 ## =>This Inner Loop Header: Depth=1
	imull	24(%rdi), %edx
	movl	(%r11,%rsi,4), %ebx
	movl	%ebx, %eax
	shrl	$31, %eax
	addl	%ebx, %eax
	sarl	%eax
	addl	%edx, %eax
	incl	%ebx
	cltd
	idivl	%ebx
	movl	%eax, (%rcx,%rsi,4)
	cmpq	$63, %rsi
	je	LBB0_5
## %bb.4:                               ##   in Loop: Header=BB0_3 Depth=1
	movl	(%r10), %edx
	incq	%rsi
	jmp	LBB0_3
LBB0_5:
	movl	4(%r10), %edx
	movq	8(%r9), %r9
	cmpl	$65537, %edx                    ## imm = 0x10001
	jl	LBB0_7
## %bb.6:
	movdqu	(%r9), %xmm0
	movdqu	16(%r9), %xmm1
	movdqu	32(%r9), %xmm2
	movdqu	48(%r9), %xmm3
	psrad	$1, %xmm0
	movdqu	%xmm0, (%r9)
	psrad	$1, %xmm1
	movdqu	%xmm1, 16(%r9)
	psrad	$1, %xmm2
	movdqu	%xmm2, 32(%r9)
	psrad	$1, %xmm3
	movdqu	%xmm3, 48(%r9)
	movdqu	64(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 64(%r9)
	movdqu	80(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 80(%r9)
	movdqu	96(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 96(%r9)
	movdqu	112(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 112(%r9)
	movdqu	128(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 128(%r9)
	movdqu	144(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 144(%r9)
	movdqu	160(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 160(%r9)
	movdqu	176(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 176(%r9)
	movdqu	192(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 192(%r9)
	movdqu	208(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 208(%r9)
	movdqu	224(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 224(%r9)
	movdqu	240(%r9), %xmm0
	psrad	$1, %xmm0
	movdqu	%xmm0, 240(%r9)
	movl	4(%r10), %edx
	sarl	%edx
	movl	%edx, 4(%r10)
LBB0_7:
	movq	8(%r8), %rcx
	xorl	%esi, %esi
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	imull	24(%rdi), %edx
	movl	(%r9,%rsi,4), %ebx
	movl	%ebx, %eax
	shrl	$31, %eax
	addl	%ebx, %eax
	sarl	%eax
	addl	%edx, %eax
	incl	%ebx
	cltd
	idivl	%ebx
	movl	%eax, (%rcx,%rsi,4)
	cmpq	$63, %rsi
	je	LBB0_10
## %bb.9:                               ##   in Loop: Header=BB0_8 Depth=1
	movl	4(%r10), %edx
	incq	%rsi
	jmp	LBB0_8
LBB0_10:
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_update_noise_reduction
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function update_noise_reduction
_update_noise_reduction:                ; @update_noise_reduction
	.cfi_startproc
; %bb.0:
	ldp	x8, x10, [x0]
	ldr	x9, [x0, #16]
	ldr	w12, [x8]
	ldr	x11, [x10]
	cmp	w12, #16, lsl #12               ; =65536
	b.le	LBB0_2
; %bb.1:
	ldp	q0, q1, [x11]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11]
	ldp	q0, q1, [x11, #32]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #32]
	ldp	q0, q1, [x11, #64]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #64]
	ldp	q0, q1, [x11, #96]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #96]
	ldp	q0, q1, [x11, #128]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #128]
	ldp	q0, q1, [x11, #160]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #160]
	ldp	q0, q1, [x11, #192]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #192]
	ldp	q0, q1, [x11, #224]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x11, #224]
	ldr	w12, [x8]
	asr	w12, w12, #1
	str	w12, [x8]
LBB0_2:
	mov	x13, #0
	ldr	x14, [x9]
LBB0_3:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w15, [x0, #24]
	mul	w12, w12, w15
	ldr	w15, [x11, x13]
	cmp	w15, #0
	cinc	w16, w15, lt
	add	w12, w12, w16, asr #1
	add	w15, w15, #1
	sdiv	w12, w12, w15
	str	w12, [x14, x13]
	cmp	x13, #252
	b.eq	LBB0_5
; %bb.4:                                ;   in Loop: Header=BB0_3 Depth=1
	ldr	w12, [x8]
	add	x13, x13, #4
	b	LBB0_3
LBB0_5:
	ldr	w11, [x8, #4]
	ldr	x10, [x10, #8]
	cmp	w11, #16, lsl #12               ; =65536
	b.le	LBB0_7
; %bb.6:
	ldp	q0, q1, [x10]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10]
	ldp	q0, q1, [x10, #32]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #32]
	ldp	q0, q1, [x10, #64]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #64]
	ldp	q0, q1, [x10, #96]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #96]
	ldp	q0, q1, [x10, #128]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #128]
	ldp	q0, q1, [x10, #160]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #160]
	ldp	q0, q1, [x10, #192]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #192]
	ldp	q0, q1, [x10, #224]
	sshr.4s	v0, v0, #1
	sshr.4s	v1, v1, #1
	stp	q0, q1, [x10, #224]
	ldr	w11, [x8, #4]
	asr	w11, w11, #1
	str	w11, [x8, #4]
LBB0_7:
	mov	x12, #0
	ldr	x9, [x9, #8]
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x0, #24]
	mul	w11, w11, w13
	ldr	w13, [x10, x12]
	cmp	w13, #0
	cinc	w14, w13, lt
	add	w11, w11, w14, asr #1
	add	w13, w13, #1
	sdiv	w11, w11, w13
	str	w11, [x9, x12]
	cmp	x12, #252
	b.eq	LBB0_10
; %bb.9:                                ;   in Loop: Header=BB0_8 Depth=1
	ldr	w11, [x8, #4]
	add	x12, x12, #4
	b	LBB0_8
LBB0_10:
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_update_noise_reduction
.subsections_via_symbols
