	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function checksum
_checksum:                              ## @checksum
	.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
	pushq	%rax
	.cfi_offset %rbx, -24
                                        ## kill: def $edx killed $edx def $rdx
	movq	%rdi, %r8
	leal	7(%rdx), %edi
	testl	%edx, %edx
	cmovnsl	%edx, %edi
	testb	$7, %dl
	jne	LBB0_15
## %bb.1:
	sarl	$3, %edi
	xorl	%ebx, %ebx
	testl	$65280, %ecx                    ## imm = 0xFF00
	sete	%bl
	shll	$7, %ebx
	orl	%ecx, %ebx
	movb	%bl, (%rsi)
	leal	1(%rdi), %r10d
	movb	%r10b, 1(%rsi)
	movb	$-1, %al
	cmpl	$8, %edx
	jl	LBB0_14
## %bb.2:
	movzbl	%bl, %eax
	andl	$-8, %edx
	cmpl	$8, %edx
	je	LBB0_13
## %bb.3:
	movl	%edi, %ecx
	leaq	-1(%rcx), %r9
	movl	$1, %edx
	cmpq	$8, %r9
	jb	LBB0_12
## %bb.4:
	movq	%r9, %rdx
	andq	$-8, %rdx
	movd	%eax, %xmm0
	leaq	-8(%rdx), %rax
	movq	%rax, %r11
	shrq	$3, %r11
	incq	%r11
	testq	%rax, %rax
	je	LBB0_5
## %bb.6:
	movq	%r11, %rbx
	andq	$-2, %rbx
	pxor	%xmm1, %xmm1
	movl	$1, %eax
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	pmovzxbd	(%rsi,%rax), %xmm2              ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm0, %xmm2
	pmovzxbd	4(%rsi,%rax), %xmm3             ## xmm3 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm1, %xmm3
	pmovzxbd	8(%rsi,%rax), %xmm0             ## xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	pmovzxbd	12(%rsi,%rax), %xmm1            ## xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm0
	paddd	%xmm3, %xmm1
	addq	$16, %rax
	addq	$-2, %rbx
	jne	LBB0_7
## %bb.8:
	testb	$1, %r11b
	je	LBB0_10
LBB0_9:
	pmovzxbd	(%rsi,%rax), %xmm2              ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm0
	pmovzxbd	4(%rsi,%rax), %xmm2             ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm1
LBB0_10:
	paddd	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	paddd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	paddd	%xmm1, %xmm0
	movd	%xmm0, %eax
	cmpq	%rdx, %r9
	je	LBB0_13
## %bb.11:
	orq	$1, %rdx
	.p2align	4, 0x90
LBB0_12:                                ## =>This Inner Loop Header: Depth=1
	movzbl	(%rsi,%rdx), %ebx
	addl	%ebx, %eax
	incq	%rdx
	cmpq	%rdx, %rcx
	jne	LBB0_12
LBB0_13:
	notb	%al
LBB0_14:
	movslq	%edi, %rcx
	movb	%al, (%rsi,%rcx)
	movq	%rsi, %rdi
	movl	%r10d, %esi
	movl	$1, %edx
	movq	%r8, %rcx
	addq	$8, %rsp
	popq	%rbx
	popq	%rbp
	jmp	_fwrite                         ## TAILCALL
LBB0_5:
	pxor	%xmm1, %xmm1
	movl	$1, %eax
	testb	$1, %r11b
	jne	LBB0_9
	jmp	LBB0_10
LBB0_15:
	xorl	%eax, %eax
	callq	_abort
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_checksum
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ; -- Begin function checksum
lCPI0_0:
	.byte	12                              ; 0xc
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	13                              ; 0xd
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	14                              ; 0xe
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	15                              ; 0xf
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_1:
	.byte	0                               ; 0x0
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	1                               ; 0x1
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	2                               ; 0x2
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	3                               ; 0x3
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_2:
	.byte	4                               ; 0x4
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	5                               ; 0x5
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	6                               ; 0x6
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	7                               ; 0x7
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_3:
	.byte	8                               ; 0x8
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	9                               ; 0x9
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	10                              ; 0xa
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	11                              ; 0xb
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_checksum:                              ; @checksum
	.cfi_startproc
; %bb.0:
	stp	x29, x30, [sp, #-16]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 16
	mov	x29, sp
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	add	w8, w2, #7
	cmp	w2, #0
	csel	w8, w8, w2, lt
	tst	w2, #0x7
	b.ne	LBB0_20
; %bb.1:
	mov	x9, x0
	asr	w10, w8, #3
	tst	w3, #0xff00
	cset	w8, eq
	orr	w11, w3, w8, lsl #7
	strb	w11, [x1]
	add	w8, w10, #1
	strb	w8, [x1, #1]
	cmp	w2, #8
	b.lt	LBB0_5
; %bb.2:
	and	w15, w11, #0xff
	and	w11, w2, #0xfffffff8
	cmp	w11, #8
	b.eq	LBB0_18
; %bb.3:
	sub	x11, x10, #1
	cmp	x11, #8
	b.hs	LBB0_6
; %bb.4:
	mov	w16, #1
	b	LBB0_16
LBB0_5:
	mov	w11, #255
	b	LBB0_19
LBB0_6:
	adrp	x12, lCPI0_1@PAGE
	adrp	x13, lCPI0_2@PAGE
	cmp	x11, #32
	b.hs	LBB0_8
; %bb.7:
	mov	x14, #0
	b	LBB0_12
LBB0_8:
	and	x14, x11, #0xffffffffffffffe0
	movi.2d	v1, #0000000000000000
	movi.2d	v0, #0000000000000000
	mov.s	v0[0], w15
	add	x15, x1, #17
Lloh0:
	adrp	x16, lCPI0_0@PAGE
Lloh1:
	ldr	q2, [x16, lCPI0_0@PAGEOFF]
	ldr	q3, [x12, lCPI0_1@PAGEOFF]
	ldr	q4, [x13, lCPI0_2@PAGEOFF]
Lloh2:
	adrp	x16, lCPI0_3@PAGE
Lloh3:
	ldr	q5, [x16, lCPI0_3@PAGEOFF]
	mov	x16, x14
	movi.2d	v6, #0000000000000000
	movi.2d	v7, #0000000000000000
	movi.2d	v16, #0000000000000000
	movi.2d	v18, #0000000000000000
	movi.2d	v17, #0000000000000000
	movi.2d	v19, #0000000000000000
LBB0_9:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q20, q24, [x15, #-16]
	tbl.16b	v21, { v20 }, v2
	tbl.16b	v22, { v20 }, v3
	tbl.16b	v23, { v20 }, v4
	tbl.16b	v20, { v20 }, v5
	tbl.16b	v25, { v24 }, v2
	tbl.16b	v26, { v24 }, v3
	tbl.16b	v27, { v24 }, v4
	tbl.16b	v24, { v24 }, v5
	add.4s	v6, v6, v20
	add.4s	v1, v1, v23
	add.4s	v0, v0, v22
	add.4s	v7, v7, v21
	add.4s	v17, v17, v24
	add.4s	v18, v18, v27
	add.4s	v16, v16, v26
	add.4s	v19, v19, v25
	add	x15, x15, #32
	subs	x16, x16, #32
	b.ne	LBB0_9
; %bb.10:
	add.4s	v1, v18, v1
	add.4s	v2, v19, v7
	add.4s	v0, v16, v0
	add.4s	v3, v17, v6
	add.4s	v0, v0, v3
	add.4s	v1, v1, v2
	add.4s	v0, v0, v1
	addv.4s	s0, v0
	fmov	w15, s0
	cmp	x11, x14
	b.eq	LBB0_18
; %bb.11:
	tst	x11, #0x18
	b.eq	LBB0_15
LBB0_12:
	and	x17, x11, #0xfffffffffffffff8
	orr	x16, x17, #0x1
	movi.2d	v0, #0000000000000000
	mov.s	v0[0], w15
	movi.2d	v1, #0000000000000000
	add	x15, x14, x1
	add	x15, x15, #1
	sub	x14, x14, x17
	ldr	q2, [x12, lCPI0_1@PAGEOFF]
	ldr	q3, [x13, lCPI0_2@PAGEOFF]
LBB0_13:                                ; =>This Inner Loop Header: Depth=1
	ldr	d4, [x15], #8
	tbl.16b	v5, { v4 }, v2
	tbl.16b	v4, { v4 }, v3
	add.4s	v1, v1, v4
	add.4s	v0, v0, v5
	adds	x14, x14, #8
	b.ne	LBB0_13
; %bb.14:
	add.4s	v0, v0, v1
	addv.4s	s0, v0
	fmov	w15, s0
	cmp	x11, x17
	b.ne	LBB0_16
	b	LBB0_18
LBB0_15:
	orr	x16, x14, #0x1
LBB0_16:
	sub	x11, x10, x16
	add	x12, x1, x16
LBB0_17:                                ; =>This Inner Loop Header: Depth=1
	ldrb	w13, [x12], #1
	add	w15, w15, w13
	subs	x11, x11, #1
	b.ne	LBB0_17
LBB0_18:
	mvn	w11, w15
LBB0_19:
	strb	w11, [x1, w10, sxtw]
	mov	x0, x1
	mov	x1, x8
	mov	w2, #1
	mov	x3, x9
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	b	_fwrite
LBB0_20:
	bl	_abort
	.loh AdrpLdr	Lloh2, Lloh3
	.loh AdrpAdrp	Lloh0, Lloh2
	.loh AdrpLdr	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_checksum
.subsections_via_symbols
