	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function decode
LCPI0_0:
	.quad	2863311530                      ## 0xaaaaaaaa
	.quad	2863311530                      ## 0xaaaaaaaa
LCPI0_1:
	.quad	1431655765                      ## 0x55555555
	.quad	1431655765                      ## 0x55555555
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_decode:                                ## @decode
	.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	%rbx
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	sarl	$2, %edx
	movslq	%edx, %rcx
	leaq	(%rsi,%rcx,8), %r8
	leal	-1(%rcx), %r10d
	cmpl	$3, %r10d
	jb	LBB0_1
## %bb.2:
	leaq	(%rsi,%rcx,8), %rax
	movq	%rdi, %rbx
	subq	%rax, %rbx
	cmpq	$32, %rbx
	jb	LBB0_1
## %bb.3:
	movq	%rdi, %rax
	subq	%rsi, %rax
	cmpq	$32, %rax
	jb	LBB0_1
## %bb.4:
	incq	%r10
	movq	%r10, %r11
	andq	$-4, %r11
	leaq	(%rdi,%r11,8), %r14
	movl	%ecx, %r9d
	subl	%r11d, %r9d
	leaq	(%rsi,%r11,8), %r15
	leaq	(%r8,%r11,8), %r8
	leaq	(%rsi,%rcx,8), %rcx
	addq	$16, %rcx
	xorl	%ebx, %ebx
	movdqa	LCPI0_0(%rip), %xmm0            ## xmm0 = [2863311530,2863311530]
	movdqa	LCPI0_1(%rip), %xmm1            ## xmm1 = [1431655765,1431655765]
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	(%rsi,%rbx,8), %xmm2
	movdqu	16(%rsi,%rbx,8), %xmm3
	paddq	%xmm2, %xmm2
	paddq	%xmm3, %xmm3
	pand	%xmm0, %xmm2
	pand	%xmm0, %xmm3
	movdqu	-16(%rcx,%rbx,8), %xmm4
	movdqu	(%rcx,%rbx,8), %xmm5
	pand	%xmm1, %xmm4
	por	%xmm2, %xmm4
	pand	%xmm1, %xmm5
	por	%xmm3, %xmm5
	movdqu	%xmm4, (%rdi,%rbx,8)
	movdqu	%xmm5, 16(%rdi,%rbx,8)
	addq	$4, %rbx
	cmpq	%rbx, %r11
	jne	LBB0_5
## %bb.6:
	cmpq	%r11, %r10
	je	LBB0_13
## %bb.7:
	testb	$1, %r9b
	jne	LBB0_9
LBB0_8:
	movl	%r9d, %ecx
	cmpl	$1, %r9d
	jne	LBB0_11
	jmp	LBB0_13
LBB0_1:
	movq	%rdi, %r14
	movl	%edx, %r9d
	movq	%rsi, %r15
	testb	$1, %r9b
	je	LBB0_8
LBB0_9:
	movl	(%r15), %ecx
	addq	$8, %r15
	andl	$1431655765, %ecx               ## imm = 0x55555555
	movq	(%r8), %rdi
	addq	$8, %r8
	andl	$1431655765, %edi               ## imm = 0x55555555
	leaq	(%rdi,%rcx,2), %rcx
	movq	%rcx, (%r14)
	addq	$8, %r14
	leal	-1(%r9), %ecx
	cmpl	$1, %r9d
	je	LBB0_13
LBB0_11:
	movl	%ecx, %edi
	xorl	%ecx, %ecx
	.p2align	4, 0x90
LBB0_12:                                ## =>This Inner Loop Header: Depth=1
	movl	(%r15,%rcx,8), %ebx
	andl	$1431655765, %ebx               ## imm = 0x55555555
	movq	(%r8,%rcx,8), %rax
	andl	$1431655765, %eax               ## imm = 0x55555555
	leaq	(%rax,%rbx,2), %rax
	movq	%rax, (%r14,%rcx,8)
	movl	8(%r15,%rcx,8), %eax
	andl	$1431655765, %eax               ## imm = 0x55555555
	movq	8(%r8,%rcx,8), %rbx
	andl	$1431655765, %ebx               ## imm = 0x55555555
	leaq	(%rbx,%rax,2), %rax
	movq	%rax, 8(%r14,%rcx,8)
	addq	$2, %rcx
	cmpl	%ecx, %edi
	jne	LBB0_12
LBB0_13:
	addl	%edx, %edx
	movslq	%edx, %rax
	leaq	(%rsi,%rax,8), %rax
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_decode
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function decode
_decode:                                ; @decode
	.cfi_startproc
; %bb.0:
                                        ; kill: def $w2 killed $w2 def $x2
	asr	w8, w2, #2
	sbfx	x9, x2, #2, #30
	add	x10, x1, w8, sxtw #3
	sub	w11, w8, #1
	cmp	w11, #7
	b.lo	LBB0_6
; %bb.1:
	lsl	x13, x9, #3
	add	x12, x13, x1
	sub	x12, x0, x12
	cmp	x12, #64
	b.lo	LBB0_6
; %bb.2:
	sub	x12, x0, x1
	cmp	x12, #64
	b.lo	LBB0_6
; %bb.3:
	add	x14, x11, #1
	and	x15, x14, #0x1fffffff8
	lsl	x16, x15, #3
	add	x11, x0, x16
	sub	w8, w8, w15
	add	x12, x1, x16
	add	x10, x10, x16
	add	x16, x0, #32
	add	x17, x1, #32
	mov	w0, #-1431655766
	dup.2d	v0, x0
	mov	w0, #1431655765
	dup.2d	v1, x0
	mov	x0, x15
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q2, q3, [x17, #-32]
	ldp	q4, q5, [x17]
	shl.2d	v2, v2, #1
	shl.2d	v3, v3, #1
	shl.2d	v4, v4, #1
	shl.2d	v5, v5, #1
	and.16b	v2, v2, v0
	and.16b	v3, v3, v0
	and.16b	v4, v4, v0
	and.16b	v5, v5, v0
	add	x2, x17, x13
	ldp	q6, q7, [x2, #-32]
	ldp	q16, q17, [x2]
	and.16b	v6, v6, v1
	and.16b	v7, v7, v1
	and.16b	v16, v16, v1
	and.16b	v17, v17, v1
	orr.16b	v2, v2, v6
	orr.16b	v3, v3, v7
	orr.16b	v4, v4, v16
	stp	q2, q3, [x16, #-32]
	orr.16b	v2, v5, v17
	stp	q4, q2, [x16], #64
	add	x17, x17, #64
	subs	x0, x0, #8
	b.ne	LBB0_4
; %bb.5:
	cmp	x14, x15
	b.ne	LBB0_7
	b	LBB0_9
LBB0_6:
	mov	x11, x0
	mov	x12, x1
LBB0_7:
	mov	w13, #-1431655766
	mov	w14, #1431655765
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w15, [x12], #8
	lsl	w15, w15, #1
	ldr	x16, [x10], #8
	and	x15, x15, x13
	and	x16, x16, x14
	orr	x15, x15, x16
	str	x15, [x11], #8
	subs	w8, w8, #1
	b.ne	LBB0_8
LBB0_9:
	add	x0, x1, x9, lsl #4
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_decode
.subsections_via_symbols
