	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function MC_UnCompress
LCPI0_0:
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.long	1065353216                      ## 0x3f800000
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_MC_UnCompress
	.p2align	4, 0x90
_MC_UnCompress:                         ## @MC_UnCompress
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	_MC_BITS_Y@GOTPCREL(%rip), %rax
	movb	(%rax), %cl
	decb	%cl
	movl	$-1, %edx
	movl	$-1, %r9d
	shll	%cl, %r9d
	movzwl	4(%rsi), %eax
	movq	_MC_BITS_Z@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	decb	%cl
	shll	%cl, %edx
	addl	%eax, %edx
	cvtsi2ss	%edx, %xmm0
	movq	_MC_SCALE_Z@GOTPCREL(%rip), %rax
	mulss	(%rax), %xmm0
	movss	%xmm0, 44(%rdi)
	movzwl	6(%rsi), %eax
	movq	_MC_SCALE_VECT@GOTPCREL(%rip), %r10
	movq	_MC_BITS_X@GOTPCREL(%rip), %rcx
	movq	_MC_SCALE_X@GOTPCREL(%rip), %r8
	movq	_MC_BITS_VECT@GOTPCREL(%rip), %rdx
	movd	(%rdx), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, (%rcx), %xmm0
	pcmpeqd	%xmm1, %xmm1
	paddd	%xmm0, %xmm1
	pslld	$23, %xmm1
	paddd	LCPI0_0(%rip), %xmm1
	cvttps2dq	%xmm1, %xmm0
	pxor	%xmm1, %xmm1
	psubd	%xmm0, %xmm1
	movd	%xmm1, %ecx
	addl	%ecx, %eax
	xorps	%xmm0, %xmm0
	cvtsi2ss	%eax, %xmm0
	pshufd	$16, %xmm1, %xmm2               ## xmm2 = xmm1[0,0,1,0]
	mulss	(%r10), %xmm0
	movd	8(%rsi), %xmm3                  ## xmm3 = mem[0],zero,zero,zero
	pinsrw	$2, (%rsi), %xmm3
	pinsrw	$3, 12(%rsi), %xmm3
	pmovzxwd	%xmm3, %xmm3                    ## xmm3 = xmm3[0],zero,xmm3[1],zero,xmm3[2],zero,xmm3[3],zero
	paddd	%xmm2, %xmm3
	cvtdq2ps	%xmm3, %xmm2
	movq	_MC_SCALE_Y@GOTPCREL(%rip), %rax
	movss	(%r8), %xmm3                    ## xmm3 = mem[0],zero,zero,zero
	movzwl	2(%rsi), %edx
	movss	(%rax), %xmm4                   ## xmm4 = mem[0],zero,zero,zero
	movss	%xmm0, (%rdi)
	movss	(%r10), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	movaps	%xmm0, %xmm5
	insertps	$16, %xmm3, %xmm5               ## xmm5 = xmm5[0],xmm3[0],xmm5[2,3]
	shufps	$16, %xmm5, %xmm5               ## xmm5 = xmm5[0,0,1,0]
	mulps	%xmm2, %xmm5
	movups	%xmm5, 4(%rdi)
	movd	14(%rsi), %xmm2                 ## xmm2 = mem[0],zero,zero,zero
	pinsrw	$2, %edx, %xmm2
	pinsrw	$3, 18(%rsi), %xmm2
	pmovzxwd	%xmm2, %xmm2                    ## xmm2 = xmm2[0],zero,xmm2[1],zero,xmm2[2],zero,xmm2[3],zero
	pshufd	$224, %xmm1, %xmm3              ## xmm3 = xmm1[0,0,2,3]
	pinsrd	$2, %r9d, %xmm3
	pshufd	$0, %xmm1, %xmm1                ## xmm1 = xmm1[0,0,0,0]
	pblendw	$63, %xmm3, %xmm1               ## xmm1 = xmm3[0,1,2,3,4,5],xmm1[6,7]
	paddd	%xmm2, %xmm1
	cvtdq2ps	%xmm1, %xmm1
	movaps	%xmm0, %xmm2
	insertps	$16, %xmm4, %xmm2               ## xmm2 = xmm2[0],xmm4[0],xmm2[2,3]
	shufps	$16, %xmm2, %xmm2               ## xmm2 = xmm2[0,0,1,0]
	mulps	%xmm1, %xmm2
	movups	%xmm2, 20(%rdi)
	movzwl	20(%rsi), %eax
	addl	%ecx, %eax
	xorps	%xmm1, %xmm1
	cvtsi2ss	%eax, %xmm1
	mulss	%xmm0, %xmm1
	movss	%xmm1, 36(%rdi)
	movzwl	22(%rsi), %eax
	addl	%ecx, %eax
	xorps	%xmm1, %xmm1
	cvtsi2ss	%eax, %xmm1
	mulss	%xmm0, %xmm1
	movss	%xmm1, 40(%rdi)
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_MC_BITS_X,4,2                  ## @MC_BITS_X
	.comm	_MC_SCALE_X,4,2                 ## @MC_SCALE_X
	.comm	_MC_BITS_Y,4,2                  ## @MC_BITS_Y
	.comm	_MC_SCALE_Y,4,2                 ## @MC_SCALE_Y
	.comm	_MC_BITS_Z,4,2                  ## @MC_BITS_Z
	.comm	_MC_SCALE_Z,4,2                 ## @MC_SCALE_Z
	.comm	_MC_BITS_VECT,4,2               ## @MC_BITS_VECT
	.comm	_MC_SCALE_VECT,4,2              ## @MC_SCALE_VECT
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_MC_UnCompress                  ; -- Begin function MC_UnCompress
	.p2align	2
_MC_UnCompress:                         ; @MC_UnCompress
	.cfi_startproc
; %bb.0:
	add	x8, x1, #8
	ld1.h	{ v1 }[0], [x8]
	add	x8, x1, #10
	ld1.h	{ v1 }[2], [x8]
	mov.s	w8, v1[1]
	mov.h	v1[1], w8
	mov	x8, x1
	ld1.h	{ v1 }[2], [x8], #2
	ldrh	w8, [x8]
Lloh0:
	adrp	x9, _MC_BITS_Y@GOTPAGE
Lloh1:
	ldr	x9, [x9, _MC_BITS_Y@GOTPAGEOFF]
Lloh2:
	ldr	w9, [x9]
	sub	w9, w9, #1
	mov	w10, #-1
	lsl	w9, w10, w9
	add	w8, w9, w8
	scvtf	s0, w8
Lloh3:
	adrp	x8, _MC_SCALE_Y@GOTPAGE
Lloh4:
	ldr	x8, [x8, _MC_SCALE_Y@GOTPAGEOFF]
Lloh5:
	ldr	s2, [x8]
	fmul	s0, s2, s0
	ldrh	w8, [x1, #4]
Lloh6:
	adrp	x9, _MC_BITS_Z@GOTPAGE
Lloh7:
	ldr	x9, [x9, _MC_BITS_Z@GOTPAGEOFF]
Lloh8:
	ldr	w9, [x9]
	sub	w9, w9, #1
	lsl	w9, w10, w9
	add	w8, w9, w8
	scvtf	s2, w8
Lloh9:
	adrp	x8, _MC_SCALE_Z@GOTPAGE
Lloh10:
	ldr	x8, [x8, _MC_SCALE_Z@GOTPAGEOFF]
Lloh11:
	ldr	s3, [x8]
	fmul	s2, s3, s2
	str	s2, [x0, #44]
	ldrh	w8, [x1, #6]
Lloh12:
	adrp	x9, _MC_SCALE_VECT@GOTPAGE
Lloh13:
	ldr	x9, [x9, _MC_SCALE_VECT@GOTPAGEOFF]
Lloh14:
	adrp	x10, _MC_BITS_X@GOTPAGE
Lloh15:
	ldr	x10, [x10, _MC_BITS_X@GOTPAGEOFF]
	ldr	s2, [x9]
Lloh16:
	adrp	x11, _MC_SCALE_X@GOTPAGE
Lloh17:
	ldr	x11, [x11, _MC_SCALE_X@GOTPAGEOFF]
Lloh18:
	ldr	s3, [x11]
Lloh19:
	adrp	x11, _MC_BITS_VECT@GOTPAGE
Lloh20:
	ldr	x11, [x11, _MC_BITS_VECT@GOTPAGEOFF]
	add	x12, x1, #12
Lloh21:
	ldr	s4, [x11]
	ld1.s	{ v4 }[1], [x10]
	movi.2d	v5, #0xffffffffffffffff
	add.2s	v4, v4, v5
	ushl.2s	v4, v5, v4
	dup.4s	v5, v4[0]
	zip1.4s	v5, v4, v5
	fmov	w10, s4
	add	w8, w10, w8
	scvtf	s4, w8
	fmul	s2, s2, s4
	str	s2, [x0]
	ld1.h	{ v1 }[3], [x12]
	ldr	s2, [x9]
	uaddw.4s	v1, v5, v1
	ldrh	w8, [x1, #14]
	add	w8, w10, w8
	scvtf	s4, w8
	fmul	s4, s2, s4
	ldrh	w8, [x1, #16]
	add	w8, w10, w8
	scvtf	s5, w8
	fmul	s5, s2, s5
	ldrh	w8, [x1, #18]
	add	w8, w10, w8
	scvtf	s6, w8
	fmul	s6, s2, s6
	ldrh	w8, [x1, #20]
	add	w8, w10, w8
	scvtf	s7, w8
	fmul	s7, s2, s7
	ldrh	w8, [x1, #22]
	add	w8, w10, w8
	scvtf	s16, w8
	fmul	s16, s2, s16
	mov.s	v2[1], v3[0]
	dup.4s	v3, v2[0]
	zip1.4s	v2, v2, v3
	scvtf.4s	v1, v1
	fmul.4s	v1, v2, v1
	stur	q1, [x0, #4]
	stp	s4, s5, [x0, #20]
	stp	s0, s6, [x0, #28]
	stp	s7, s16, [x0, #36]
	ret
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_MC_BITS_X,4,2                  ; @MC_BITS_X
	.comm	_MC_SCALE_X,4,2                 ; @MC_SCALE_X
	.comm	_MC_BITS_Y,4,2                  ; @MC_BITS_Y
	.comm	_MC_SCALE_Y,4,2                 ; @MC_SCALE_Y
	.comm	_MC_BITS_Z,4,2                  ; @MC_BITS_Z
	.comm	_MC_SCALE_Z,4,2                 ; @MC_SCALE_Z
	.comm	_MC_BITS_VECT,4,2               ; @MC_BITS_VECT
	.comm	_MC_SCALE_VECT,4,2              ; @MC_SCALE_VECT
.subsections_via_symbols
