	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function rc_direct
_rc_direct:                             ## @rc_direct
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
                                        ## kill: def $edx killed $edx def $rdx
	movq	8(%rdi), %r8
	movslq	(%rdi), %r10
	testb	$1, %dl
	jne	LBB0_2
## %bb.1:
	movl	%edx, %ecx
	cmpl	$1, %edx
	jne	LBB0_4
	jmp	LBB0_6
LBB0_2:
	movq	_RC_DIRECT_0@GOTPCREL(%rip), %rcx
	movq	(%rcx), %r9
	leal	-1(%rdx), %ecx
	btl	%ecx, %esi
	adcq	$0, %r9
	movq	%r9, (%r8,%r10,8)
	incq	%r10
	cmpl	$1, %edx
	je	LBB0_6
LBB0_4:
	decl	%ecx
	movq	_RC_DIRECT_0@GOTPCREL(%rip), %r9
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movq	(%r9), %rdx
	btl	%ecx, %esi
	adcq	$0, %rdx
	movq	%rdx, (%r8,%r10,8)
	movq	(%r9), %rdx
	leal	-1(%rcx), %eax
	btl	%eax, %esi
	adcq	$0, %rdx
	movq	%rdx, 8(%r8,%r10,8)
	addq	$2, %r10
	addl	$-2, %ecx
	cmpl	$-1, %ecx
	jne	LBB0_5
LBB0_6:
	movl	%r10d, (%rdi)
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_RC_DIRECT_0,8,3                ## @RC_DIRECT_0
	.no_dead_strip	_rc_direct
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function rc_direct
_rc_direct:                             ; @rc_direct
	.cfi_startproc
; %bb.0:
	ldr	x8, [x0, #8]
	ldrsw	x10, [x0]
	sub	w11, w2, #1
Lloh0:
	adrp	x9, _RC_DIRECT_0@GOTPAGE
Lloh1:
	ldr	x9, [x9, _RC_DIRECT_0@GOTPAGEOFF]
	cmp	w11, #7
	b.lo	LBB0_5
; %bb.1:
	add	x14, x8, x10, lsl #3
	add	x12, x10, x11
	add	x12, x8, x12, lsl #3
	add	x12, x12, #8
	add	x13, x9, #8
	cmp	x14, x13
	ccmp	x12, x9, #0, lo
	b.hi	LBB0_5
; %bb.2:
	add	x12, x11, #1
	and	x13, x12, #0x1fffffff8
	add	x10, x13, x10
	sub	w11, w2, w13
	dup.2s	v0, w2
	movi	d1, #0xffffffff00000000
	add.2s	v0, v0, v1
	dup.2s	v1, w1
	ld1r.2d	{ v2 }, [x9]
	add	x14, x14, #32
	movi.2s	v3, #1
	movi.2s	v4, #3
	movi.2s	v5, #5
	movi.2s	v6, #7
	mvni.2s	v7, #7
	mov	x15, x13
LBB0_3:                                 ; =>This Inner Loop Header: Depth=1
	ldr	d16, [x9]
	dup.2d	v16, v16[0]
	sub.2s	v17, v3, v0
	ushl.2s	v17, v1, v17
	sub.2s	v18, v4, v0
	ushl.2s	v18, v1, v18
	sub.2s	v19, v5, v0
	ushl.2s	v19, v1, v19
	sub.2s	v20, v6, v0
	ushl.2s	v20, v1, v20
	and.8b	v17, v17, v3
	and.8b	v18, v18, v3
	and.8b	v19, v19, v3
	and.8b	v20, v20, v3
	uaddw.2d	v17, v2, v17
	uaddw.2d	v18, v2, v18
	uaddw.2d	v19, v2, v19
	uaddw.2d	v16, v16, v20
	stp	q17, q18, [x14, #-32]
	stp	q19, q16, [x14], #64
	add.2s	v0, v0, v7
	subs	x15, x15, #8
	b.ne	LBB0_3
; %bb.4:
	cmp	x12, x13
	b.ne	LBB0_6
	b	LBB0_8
LBB0_5:
	mov	x11, x2
LBB0_6:
	sub	w11, w11, #1
	mov	x12, x10
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	ldr	x10, [x9]
	lsr	w13, w1, w11
	and	w13, w13, #0x1
	add	x13, x10, x13
	add	x10, x12, #1
	str	x13, [x8, x12, lsl #3]
	sub	w11, w11, #1
	mov	x12, x10
	cmn	w11, #1
	b.ne	LBB0_7
LBB0_8:
	str	w10, [x0]
	ret
	.loh AdrpLdrGot	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.comm	_RC_DIRECT_0,8,3                ; @RC_DIRECT_0
	.no_dead_strip	_rc_direct
.subsections_via_symbols
