	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function header_checksum
_header_checksum:                       ## @header_checksum
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movl	$-1, %eax
	testq	%rdi, %rdi
	je	LBB0_12
## %bb.1:
	testq	%rsi, %rsi
	je	LBB0_12
## %bb.2:
	cmpq	$8, %rsi
	jae	LBB0_4
## %bb.3:
	xorl	%ecx, %ecx
	xorl	%eax, %eax
	jmp	LBB0_11
LBB0_4:
	movq	%rsi, %rcx
	andq	$-8, %rcx
	leaq	-8(%rcx), %rax
	movq	%rax, %r8
	shrq	$3, %r8
	incq	%r8
	testq	%rax, %rax
	je	LBB0_5
## %bb.6:
	movq	%r8, %rax
	andq	$-2, %rax
	pxor	%xmm0, %xmm0
	xorl	%edx, %edx
	pxor	%xmm1, %xmm1
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	pmovzxbd	(%rdi,%rdx), %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(%rdi,%rdx), %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(%rdi,%rdx), %xmm0             ## xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	pmovzxbd	12(%rdi,%rdx), %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, %rdx
	addq	$-2, %rax
	jne	LBB0_7
## %bb.8:
	testb	$1, %r8b
	je	LBB0_10
LBB0_9:
	pmovzxbd	(%rdi,%rdx), %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(%rdi,%rdx), %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	%rsi, %rcx
	je	LBB0_12
	.p2align	4, 0x90
LBB0_11:                                ## =>This Inner Loop Header: Depth=1
	movzbl	(%rdi,%rcx), %edx
	addl	%edx, %eax
	incq	%rcx
	cmpq	%rcx, %rsi
	jne	LBB0_11
LBB0_12:
	popq	%rbp
	retq
LBB0_5:
	pxor	%xmm0, %xmm0
	xorl	%edx, %edx
	pxor	%xmm1, %xmm1
	testb	$1, %r8b
	jne	LBB0_9
	jmp	LBB0_10
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_header_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 header_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
_header_checksum:                       ; @header_checksum
	.cfi_startproc
; %bb.0:
	mov	w8, #-1
	cbz	x0, LBB0_15
; %bb.1:
	cbz	x1, LBB0_15
; %bb.2:
	cmp	x1, #8
	b.hs	LBB0_4
; %bb.3:
	mov	x9, #0
	mov	w8, #0
	b	LBB0_13
LBB0_4:
	adrp	x10, lCPI0_1@PAGE
	adrp	x11, lCPI0_2@PAGE
	cmp	x1, #64
	b.hs	LBB0_6
; %bb.5:
	mov	w8, #0
	mov	x9, #0
	b	LBB0_10
LBB0_6:
	movi.2d	v0, #0000000000000000
	and	x9, x1, #0xffffffffffffffc0
	movi.2d	v2, #0000000000000000
	add	x8, x0, #32
	movi.2d	v1, #0000000000000000
	movi.2d	v3, #0000000000000000
Lloh0:
	adrp	x12, lCPI0_0@PAGE
Lloh1:
	ldr	q18, [x12, lCPI0_0@PAGEOFF]
	ldr	q21, [x10, lCPI0_1@PAGEOFF]
	ldr	q23, [x11, lCPI0_2@PAGEOFF]
	movi.2d	v6, #0000000000000000
	movi.2d	v22, #0000000000000000
	movi.2d	v7, #0000000000000000
	movi.2d	v24, #0000000000000000
Lloh2:
	adrp	x12, lCPI0_3@PAGE
Lloh3:
	ldr	q27, [x12, lCPI0_3@PAGEOFF]
	movi.2d	v16, #0000000000000000
	mov	x12, x9
	movi.2d	v4, #0000000000000000
	movi.2d	v25, #0000000000000000
	movi.2d	v19, #0000000000000000
	movi.2d	v5, #0000000000000000
	movi.2d	v20, #0000000000000000
	movi.2d	v17, #0000000000000000
	movi.2d	v26, #0000000000000000
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q28, q29, [x8, #-32]
	tbl.16b	v30, { v28 }, v27
	add.4s	v1, v1, v30
	tbl.16b	v30, { v28 }, v23
	add.4s	v2, v2, v30
	tbl.16b	v30, { v28 }, v18
	tbl.16b	v28, { v28 }, v21
	add.4s	v0, v0, v28
	tbl.16b	v28, { v29 }, v21
	add.4s	v3, v3, v30
	tbl.16b	v30, { v29 }, v27
	add.4s	v7, v7, v30
	tbl.16b	v30, { v29 }, v23
	add.4s	v22, v22, v30
	add.4s	v6, v6, v28
	ldp	q28, q30, [x8], #64
	tbl.16b	v29, { v29 }, v18
	add.4s	v24, v24, v29
	tbl.16b	v29, { v28 }, v27
	add.4s	v25, v25, v29
	tbl.16b	v29, { v28 }, v23
	add.4s	v4, v4, v29
	tbl.16b	v29, { v28 }, v21
	add.4s	v16, v16, v29
	tbl.16b	v28, { v28 }, v18
	add.4s	v19, v19, v28
	tbl.16b	v28, { v30 }, v27
	add.4s	v17, v17, v28
	tbl.16b	v28, { v30 }, v23
	add.4s	v20, v20, v28
	tbl.16b	v28, { v30 }, v21
	add.4s	v5, v5, v28
	tbl.16b	v28, { v30 }, v18
	add.4s	v26, v26, v28
	subs	x12, x12, #64
	b.ne	LBB0_7
; %bb.8:
	add.4s	v2, v22, v2
	add.4s	v3, v24, v3
	add.4s	v0, v6, v0
	add.4s	v1, v7, v1
	add.4s	v1, v25, v1
	add.4s	v0, v16, v0
	add.4s	v3, v19, v3
	add.4s	v2, v4, v2
	add.4s	v2, v20, v2
	add.4s	v3, v26, v3
	add.4s	v0, v5, v0
	add.4s	v1, v17, v1
	add.4s	v0, v0, v1
	add.4s	v1, v2, v3
	add.4s	v0, v0, v1
	addv.4s	s0, v0
	fmov	w8, s0
	cmp	x9, x1
	b.eq	LBB0_15
; %bb.9:
	tst	x1, #0x38
	b.eq	LBB0_13
LBB0_10:
	mov	x12, x9
	and	x9, x1, #0xfffffffffffffff8
	movi.2d	v0, #0000000000000000
	movi.2d	v1, #0000000000000000
	mov.s	v1[0], w8
	add	x8, x0, x12
	sub	x12, x12, x9
	ldr	q2, [x10, lCPI0_1@PAGEOFF]
	ldr	q3, [x11, lCPI0_2@PAGEOFF]
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	ldr	d4, [x8], #8
	tbl.16b	v5, { v4 }, v2
	tbl.16b	v4, { v4 }, v3
	add.4s	v0, v0, v4
	add.4s	v1, v1, v5
	adds	x12, x12, #8
	b.ne	LBB0_11
; %bb.12:
	add.4s	v0, v1, v0
	addv.4s	s0, v0
	fmov	w8, s0
	cmp	x9, x1
	b.eq	LBB0_15
LBB0_13:
	sub	x10, x1, x9
	add	x9, x0, x9
LBB0_14:                                ; =>This Inner Loop Header: Depth=1
	ldrb	w11, [x9], #1
	add	w8, w8, w11
	subs	x10, x10, #1
	b.ne	LBB0_14
LBB0_15:
	mov	x0, x8
	ret
	.loh AdrpLdr	Lloh2, Lloh3
	.loh AdrpAdrp	Lloh0, Lloh2
	.loh AdrpLdr	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_header_checksum
.subsections_via_symbols
