	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function init
LCPI0_0:
	.long	0x3f000000                      ## float 0.5
LCPI0_1:
	.long	0x3f800000                      ## float 1
LCPI0_2:
	.long	0xbf000000                      ## float -0.5
LCPI0_3:
	.long	0x3f910ff9                      ## float 1.13329995
LCPI0_4:
	.long	0x43340000                      ## float 180
LCPI0_5:
	.long	0x3f5db3d0                      ## float 0.866024971
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_init:                                  ## @init
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %r14
	movq	%rdi, %r15
	cvtsi2ssq	64(%rsi), %xmm0
	movq	_rgb_unit@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	movss	LCPI0_0(%rip), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	mulss	%xmm1, %xmm2
	movq	_rgb_offset@GOTPCREL(%rip), %rax
	cvtsi2ssq	(%rax), %xmm3
	mulss	%xmm2, %xmm0
	addss	%xmm3, %xmm0
	cvttss2si	%xmm0, %rax
	movq	%rax, 24(%rdi)
	xorps	%xmm0, %xmm0
	cvtsi2ssq	56(%rsi), %xmm0
	mulss	%xmm2, %xmm0
	addss	%xmm1, %xmm0
	movss	%xmm0, (%rdi)
	movq	40(%rsi), %rax
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rax, %xmm0
	testq	%rax, %rax
	jle	LBB0_1
## %bb.2:
	movq	_artifacts_mid@GOTPCREL(%rip), %rax
	xorps	%xmm1, %xmm1
	cvtsi2ssl	(%rax), %xmm1
	movq	_artifacts_max@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm2                   ## xmm2 = mem[0],zero,zero,zero
	subss	%xmm1, %xmm2
	mulss	%xmm2, %xmm0
	jmp	LBB0_3
LBB0_1:
	movq	_artifacts_mid@GOTPCREL(%rip), %rax
	xorps	%xmm1, %xmm1
	cvtsi2ssl	(%rax), %xmm1
LBB0_3:
	mulss	%xmm1, %xmm0
	addss	%xmm1, %xmm0
	movss	%xmm0, 4(%r15)
	movq	32(%r14), %rax
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rax, %xmm0
	testq	%rax, %rax
	jle	LBB0_4
## %bb.5:
	movq	_fringing_mid@GOTPCREL(%rip), %rax
	xorps	%xmm1, %xmm1
	cvtsi2ssl	(%rax), %xmm1
	movq	_fringing_max@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm2                   ## xmm2 = mem[0],zero,zero,zero
	subss	%xmm1, %xmm2
	mulss	%xmm2, %xmm0
	jmp	LBB0_6
LBB0_4:
	movq	_fringing_mid@GOTPCREL(%rip), %rax
	xorps	%xmm1, %xmm1
	cvtsi2ssl	(%rax), %xmm1
LBB0_6:
	mulss	%xmm1, %xmm0
	addss	%xmm1, %xmm0
	movss	%xmm0, 8(%r15)
	movq	%r15, %rdi
	movq	%r14, %rsi
	callq	_init_filters
	movq	_gamma_size@GOTPCREL(%rip), %r12
	movl	(%r12), %eax
	cmpl	$2, %eax
	jl	LBB0_9
## %bb.7:
	decl	%eax
	xorps	%xmm0, %xmm0
	cvtsi2ss	%eax, %xmm0
	xorps	%xmm1, %xmm1
	cvtsi2ssq	24(%r14), %xmm1
	movss	LCPI0_1(%rip), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	mulss	LCPI0_2(%rip), %xmm1
	divss	%xmm0, %xmm2
	movss	%xmm2, -44(%rbp)                ## 4-byte Spill
	addss	LCPI0_3(%rip), %xmm1
	movss	%xmm1, -52(%rbp)                ## 4-byte Spill
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	xorps	%xmm0, %xmm0
	cvtsi2ss	%ebx, %xmm0
	mulss	-44(%rbp), %xmm0                ## 4-byte Folded Reload
	cvttss2si	%xmm0, %edi
	movss	-52(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	callq	_pow
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rax, %xmm0
	xorps	%xmm1, %xmm1
	cvtsi2ssq	24(%r15), %xmm1
	mulss	(%r15), %xmm0
	addss	%xmm1, %xmm0
	cvttss2si	%xmm0, %rax
	movq	32(%r15), %rcx
	movq	%rax, (%rcx,%rbx,8)
	incq	%rbx
	movslq	(%r12), %rax
	cmpq	%rax, %rbx
	jl	LBB0_8
LBB0_9:
	xorps	%xmm0, %xmm0
	cvtsi2ssq	16(%r14), %xmm0
	movq	_PI@GOTPCREL(%rip), %r13
	movss	(%r13), %xmm2                   ## xmm2 = mem[0],zero,zero,zero
	movaps	%xmm2, %xmm1
	divss	LCPI0_4(%rip), %xmm1
	mulss	%xmm2, %xmm0
	movq	_ext_decoder_hue@GOTPCREL(%rip), %rbx
	mulss	(%rbx), %xmm1
	addss	%xmm1, %xmm0
	xorps	%xmm1, %xmm1
	cvtsi2ssq	8(%r14), %xmm1
	addss	LCPI0_1(%rip), %xmm1
	movss	%xmm1, -44(%rbp)                ## 4-byte Spill
	movq	(%r14), %r12
	testq	%r12, %r12
	jne	LBB0_13
## %bb.10:
	movss	%xmm0, -48(%rbp)                ## 4-byte Spill
	movq	_default_decoder@GOTPCREL(%rip), %rax
	movq	(%rax), %r12
	movq	%r14, %rdi
	callq	_STD_HUE_CONDITION
	testq	%rax, %rax
	je	LBB0_11
## %bb.12:
	movss	(%r13), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	divss	LCPI0_4(%rip), %xmm0
	movq	_std_decoder_hue@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	subss	(%rbx), %xmm1
	mulss	%xmm0, %xmm1
	movss	-48(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	addss	%xmm1, %xmm0
	jmp	LBB0_13
LBB0_11:
	movss	-48(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
LBB0_13:
	movss	%xmm0, -48(%rbp)                ## 4-byte Spill
	callq	_sin
	xorps	%xmm0, %xmm0
	cvtsi2ss	%rax, %xmm0
	mulss	-44(%rbp), %xmm0                ## 4-byte Folded Reload
	movss	%xmm0, -52(%rbp)                ## 4-byte Spill
	movss	-48(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	callq	_cos
	movss	-52(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	xorps	%xmm1, %xmm1
	cvtsi2ss	%rax, %xmm1
	mulss	-44(%rbp), %xmm1                ## 4-byte Folded Reload
	movq	16(%r15), %rbx
	movq	_burst_count@GOTPCREL(%rip), %r14
	movl	(%r14), %eax
	leal	-1(%rax), %r15d
	movss	%xmm1, -44(%rbp)                ## 4-byte Spill
	.p2align	4, 0x90
LBB0_14:                                ## =>This Inner Loop Header: Depth=1
	movss	(%r12), %xmm4                   ## xmm4 = mem[0],zero,zero,zero
	movss	4(%r12), %xmm5                  ## xmm5 = mem[0],zero,zero,zero
	movaps	%xmm0, %xmm2
	mulss	%xmm5, %xmm2
	movaps	%xmm4, %xmm3
	mulss	%xmm1, %xmm3
	subss	%xmm2, %xmm3
	movss	%xmm3, (%rbx)
	mulss	%xmm1, %xmm5
	mulss	%xmm0, %xmm4
	addss	%xmm5, %xmm4
	movss	%xmm4, 4(%rbx)
	movss	8(%r12), %xmm4                  ## xmm4 = mem[0],zero,zero,zero
	movss	12(%r12), %xmm5                 ## xmm5 = mem[0],zero,zero,zero
	movaps	%xmm0, %xmm2
	mulss	%xmm5, %xmm2
	movaps	%xmm4, %xmm3
	mulss	%xmm1, %xmm3
	subss	%xmm2, %xmm3
	movss	%xmm3, 8(%rbx)
	mulss	%xmm1, %xmm5
	mulss	%xmm0, %xmm4
	addss	%xmm5, %xmm4
	movss	%xmm4, 12(%rbx)
	movss	16(%r12), %xmm4                 ## xmm4 = mem[0],zero,zero,zero
	movss	20(%r12), %xmm5                 ## xmm5 = mem[0],zero,zero,zero
	movaps	%xmm0, %xmm2
	mulss	%xmm5, %xmm2
	movaps	%xmm4, %xmm3
	mulss	%xmm1, %xmm3
	subss	%xmm2, %xmm3
	movss	%xmm3, 16(%rbx)
	mulss	%xmm1, %xmm5
	mulss	%xmm0, %xmm4
	addss	%xmm5, %xmm4
	movss	%xmm4, 20(%rbx)
	cmpl	$2, %eax
	jl	LBB0_17
## %bb.15:                              ##   in Loop: Header=BB0_14 Depth=1
	movss	LCPI0_5(%rip), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	movss	LCPI0_2(%rip), %xmm3            ## xmm3 = mem[0],zero,zero,zero
	callq	_ROTATE_IQ
	movss	-44(%rbp), %xmm1                ## 4-byte Reload
                                        ## xmm1 = mem[0],zero,zero,zero
	movss	-52(%rbp), %xmm0                ## 4-byte Reload
                                        ## xmm0 = mem[0],zero,zero,zero
	subl	$1, %r15d
	jb	LBB0_17
## %bb.16:                              ##   in Loop: Header=BB0_14 Depth=1
	movl	(%r14), %eax
	addq	$24, %rbx
	jmp	LBB0_14
LBB0_17:
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_rgb_unit,4,2                   ## @rgb_unit
	.comm	_rgb_offset,8,3                 ## @rgb_offset
	.comm	_artifacts_max,4,2              ## @artifacts_max
	.comm	_artifacts_mid,4,2              ## @artifacts_mid
	.comm	_fringing_max,4,2               ## @fringing_max
	.comm	_fringing_mid,4,2               ## @fringing_mid
	.comm	_gamma_size,4,2                 ## @gamma_size
	.comm	_PI,4,2                         ## @PI
	.comm	_ext_decoder_hue,4,2            ## @ext_decoder_hue
	.comm	_default_decoder,8,3            ## @default_decoder
	.comm	_std_decoder_hue,4,2            ## @std_decoder_hue
	.comm	_burst_count,4,2                ## @burst_count
	.comm	_default_palette_contrast,4,2   ## @default_palette_contrast
	.no_dead_strip	_init
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function init
_init:                                  ; @init
	.cfi_startproc
; %bb.0:
	stp	d11, d10, [sp, #-96]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 96
	stp	d9, d8, [sp, #16]               ; 16-byte Folded Spill
	stp	x24, x23, [sp, #32]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #48]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #64]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #80]             ; 16-byte Folded Spill
	add	x29, sp, #80
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset b8, -72
	.cfi_offset b9, -80
	.cfi_offset b10, -88
	.cfi_offset b11, -96
	mov	x20, x1
	mov	x19, x0
	ldp	x9, x8, [x1, #56]
	scvtf	s0, x8
Lloh0:
	adrp	x8, _rgb_unit@GOTPAGE
Lloh1:
	ldr	x8, [x8, _rgb_unit@GOTPAGEOFF]
Lloh2:
	ldr	s1, [x8]
	fmov	s2, #0.50000000
	fmul	s2, s1, s2
Lloh3:
	adrp	x8, _rgb_offset@GOTPAGE
Lloh4:
	ldr	x8, [x8, _rgb_offset@GOTPAGEOFF]
Lloh5:
	ldr	x8, [x8]
	scvtf	s3, x8
	fmadd	s0, s0, s2, s3
	fcvtzs	x8, s0
	str	x8, [x0, #24]
	scvtf	s0, x9
	fmadd	s0, s0, s2, s1
	str	s0, [x0]
	ldr	x8, [x1, #40]
	scvtf	s0, x8
	cmp	x8, #0
	b.le	LBB0_2
; %bb.1:
Lloh6:
	adrp	x8, _artifacts_max@GOTPAGE
Lloh7:
	ldr	x8, [x8, _artifacts_max@GOTPAGEOFF]
Lloh8:
	ldr	s2, [x8]
Lloh9:
	adrp	x8, _artifacts_mid@GOTPAGE
Lloh10:
	ldr	x8, [x8, _artifacts_mid@GOTPAGEOFF]
Lloh11:
	ldr	s1, [x8]
	scvtf	s1, s1
	fsub	s2, s2, s1
	fmul	s0, s2, s0
	b	LBB0_3
LBB0_2:
Lloh12:
	adrp	x8, _artifacts_mid@GOTPAGE
Lloh13:
	ldr	x8, [x8, _artifacts_mid@GOTPAGEOFF]
Lloh14:
	ldr	s1, [x8]
	scvtf	s1, s1
LBB0_3:
	fmadd	s0, s0, s1, s1
	str	s0, [x19, #4]
	ldr	x8, [x20, #32]
	scvtf	s0, x8
	cmp	x8, #0
	b.le	LBB0_5
; %bb.4:
Lloh15:
	adrp	x8, _fringing_max@GOTPAGE
Lloh16:
	ldr	x8, [x8, _fringing_max@GOTPAGEOFF]
Lloh17:
	ldr	s2, [x8]
Lloh18:
	adrp	x8, _fringing_mid@GOTPAGE
Lloh19:
	ldr	x8, [x8, _fringing_mid@GOTPAGEOFF]
Lloh20:
	ldr	s1, [x8]
	scvtf	s1, s1
	fsub	s2, s2, s1
	fmul	s0, s2, s0
	b	LBB0_6
LBB0_5:
Lloh21:
	adrp	x8, _fringing_mid@GOTPAGE
Lloh22:
	ldr	x8, [x8, _fringing_mid@GOTPAGEOFF]
Lloh23:
	ldr	s1, [x8]
	scvtf	s1, s1
LBB0_6:
	fmadd	s0, s0, s1, s1
	str	s0, [x19, #8]
	mov	x0, x19
	mov	x1, x20
	bl	_init_filters
Lloh24:
	adrp	x21, _gamma_size@GOTPAGE
Lloh25:
	ldr	x21, [x21, _gamma_size@GOTPAGEOFF]
	ldr	w8, [x21]
	cmp	w8, #2
	b.lt	LBB0_9
; %bb.7:
	mov	x22, #0
	sub	w8, w8, #1
	scvtf	s0, w8
	fmov	s1, #1.00000000
	fdiv	s9, s1, s0
	ldr	x8, [x20, #24]
	scvtf	s0, x8
	mov	w8, #4089
	movk	w8, #16273, lsl #16
	fmov	s1, w8
	fmov	s2, #-0.50000000
	fmadd	s8, s0, s2, s1
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	scvtf	s0, w22
	fmul	s0, s9, s0
	fcvtzs	w0, s0
	fmov	s0, s8
	bl	_pow
	scvtf	s0, x0
	ldr	s1, [x19]
	ldp	x8, x9, [x19, #24]
	scvtf	s2, x8
	fmadd	s0, s0, s1, s2
	fcvtzs	x8, s0
	str	x8, [x9, x22, lsl #3]
	add	x22, x22, #1
	ldrsw	x8, [x21]
	cmp	x22, x8
	b.lt	LBB0_8
LBB0_9:
	ldr	x8, [x20, #16]
	scvtf	s0, x8
Lloh26:
	adrp	x23, _PI@GOTPAGE
Lloh27:
	ldr	x23, [x23, _PI@GOTPAGEOFF]
	ldr	s1, [x23]
	mov	w8, #1127481344
	fmov	s2, w8
	fdiv	s2, s1, s2
Lloh28:
	adrp	x22, _ext_decoder_hue@GOTPAGE
Lloh29:
	ldr	x22, [x22, _ext_decoder_hue@GOTPAGEOFF]
	ldr	s3, [x22]
	fmul	s2, s2, s3
	ldp	x21, x8, [x20]
	scvtf	s3, x8
	fmadd	s9, s0, s1, s2
	fmov	s0, #1.00000000
	fadd	s10, s3, s0
	cbnz	x21, LBB0_12
; %bb.10:
Lloh30:
	adrp	x8, _default_decoder@GOTPAGE
Lloh31:
	ldr	x8, [x8, _default_decoder@GOTPAGEOFF]
Lloh32:
	ldr	x21, [x8]
	mov	x0, x20
	bl	_STD_HUE_CONDITION
	cbz	x0, LBB0_12
; %bb.11:
	ldr	s0, [x23]
	mov	w8, #1127481344
	fmov	s1, w8
	fdiv	s0, s0, s1
Lloh33:
	adrp	x8, _std_decoder_hue@GOTPAGE
Lloh34:
	ldr	x8, [x8, _std_decoder_hue@GOTPAGEOFF]
Lloh35:
	ldr	s1, [x8]
	ldr	s2, [x22]
	fsub	s1, s1, s2
	fmadd	s9, s0, s1, s9
LBB0_12:
	fmov	s0, s9
	bl	_sin
	scvtf	s0, x0
	fmul	s8, s10, s0
	fmov	s0, s9
	bl	_cos
	scvtf	s0, x0
	fmul	s9, s10, s0
	ldr	x19, [x19, #16]
Lloh36:
	adrp	x20, _burst_count@GOTPAGE
Lloh37:
	ldr	x20, [x20, _burst_count@GOTPAGEOFF]
	ldr	w8, [x20]
	sub	w22, w8, #1
	mov	w23, #46032
	movk	w23, #16221, lsl #16
LBB0_13:                                ; =>This Inner Loop Header: Depth=1
	ldp	s0, s1, [x21]
	fneg	s2, s1
	fmul	s2, s8, s2
	fmadd	s2, s0, s9, s2
	str	s2, [x19]
	fmul	s1, s9, s1
	fmadd	s0, s0, s8, s1
	str	s0, [x19, #4]
	ldp	s0, s1, [x21, #8]
	fneg	s2, s1
	fmul	s2, s8, s2
	fmadd	s2, s0, s9, s2
	str	s2, [x19, #8]
	fmul	s1, s9, s1
	fmadd	s0, s0, s8, s1
	str	s0, [x19, #12]
	ldp	s0, s1, [x21, #16]
	fneg	s2, s1
	fmul	s2, s8, s2
	fmadd	s2, s0, s9, s2
	str	s2, [x19, #16]
	fmul	s1, s9, s1
	fmadd	s0, s0, s8, s1
	str	s0, [x19, #20]
	cmp	w8, #2
	b.lt	LBB0_16
; %bb.14:                               ;   in Loop: Header=BB0_13 Depth=1
	fmov	s2, w23
	fmov	s3, #-0.50000000
	fmov	s0, s8
	fmov	s1, s9
	bl	_ROTATE_IQ
	cbz	w22, LBB0_16
; %bb.15:                               ;   in Loop: Header=BB0_13 Depth=1
	ldr	w8, [x20]
	sub	w22, w22, #1
	add	x19, x19, #24
	b	LBB0_13
LBB0_16:
	ldp	x29, x30, [sp, #80]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #64]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #48]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #32]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #16]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp], #96             ; 16-byte Folded Reload
	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	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGot	Lloh24, Lloh25
	.loh AdrpLdrGot	Lloh28, Lloh29
	.loh AdrpLdrGot	Lloh26, Lloh27
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGot	Lloh36, Lloh37
	.cfi_endproc
                                        ; -- End function
	.comm	_rgb_unit,4,2                   ; @rgb_unit
	.comm	_rgb_offset,8,3                 ; @rgb_offset
	.comm	_artifacts_max,4,2              ; @artifacts_max
	.comm	_artifacts_mid,4,2              ; @artifacts_mid
	.comm	_fringing_max,4,2               ; @fringing_max
	.comm	_fringing_mid,4,2               ; @fringing_mid
	.comm	_gamma_size,4,2                 ; @gamma_size
	.comm	_PI,4,2                         ; @PI
	.comm	_ext_decoder_hue,4,2            ; @ext_decoder_hue
	.comm	_default_decoder,8,3            ; @default_decoder
	.comm	_std_decoder_hue,4,2            ; @std_decoder_hue
	.comm	_burst_count,4,2                ; @burst_count
	.comm	_default_palette_contrast,4,2   ; @default_palette_contrast
	.no_dead_strip	_init
.subsections_via_symbols
