	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function calc_crc8
_calc_crc8:                             ## @calc_crc8
	.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	%r13
	pushq	%r12
	pushq	%rbx
	subq	$280, %rsp                      ## imm = 0x118
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	xorl	%eax, %eax
	.p2align	4, 0x90
LBB0_1:                                 ## =>This Inner Loop Header: Depth=1
	movl	%edi, %ecx
	andl	$1, %ecx
	movl	%ecx, -176(%rbp,%rax,4)
	movl	%edi, %ecx
	shrl	%ecx
	andl	$1, %ecx
	movl	%ecx, -172(%rbp,%rax,4)
	movl	%edi, %ecx
	shrl	$2, %ecx
	andl	$1, %ecx
	movl	%ecx, -168(%rbp,%rax,4)
	movl	%edi, %ecx
	shrl	$3, %ecx
	andl	$1, %ecx
	movl	%ecx, -164(%rbp,%rax,4)
	sarl	$4, %edi
	addq	$4, %rax
	cmpq	$32, %rax
	jne	LBB0_1
## %bb.2:
	movl	-52(%rbp), %edx
	movl	-56(%rbp), %r12d
	movl	-64(%rbp), %r11d
	movl	-84(%rbp), %ebx
	movl	-92(%rbp), %r10d
	movl	-100(%rbp), %ecx
	movl	-104(%rbp), %eax
	movl	%eax, -204(%rbp)                ## 4-byte Spill
	movl	-112(%rbp), %r13d
	movl	-120(%rbp), %r15d
	movl	-128(%rbp), %r9d
	movl	-144(%rbp), %eax
	movl	%eax, -284(%rbp)                ## 4-byte Spill
	movl	-148(%rbp), %eax
	movl	%eax, -212(%rbp)                ## 4-byte Spill
	movl	-152(%rbp), %eax
	movl	%eax, -208(%rbp)                ## 4-byte Spill
	movl	-176(%rbp), %eax
	movl	%eax, -180(%rbp)                ## 4-byte Spill
	movl	-172(%rbp), %eax
	movl	%eax, -288(%rbp)                ## 4-byte Spill
	movl	-60(%rbp), %eax
	movl	%eax, -228(%rbp)                ## 4-byte Spill
	movl	-80(%rbp), %eax
	movl	%eax, -196(%rbp)                ## 4-byte Spill
	movl	-88(%rbp), %eax
	movl	%eax, -224(%rbp)                ## 4-byte Spill
	movl	-96(%rbp), %r8d
	movl	-108(%rbp), %eax
	movl	%eax, -188(%rbp)                ## 4-byte Spill
	movl	-116(%rbp), %eax
	movl	%eax, -184(%rbp)                ## 4-byte Spill
	movl	-124(%rbp), %eax
	movl	%eax, -192(%rbp)                ## 4-byte Spill
	movl	-140(%rbp), %eax
	movl	%eax, -200(%rbp)                ## 4-byte Spill
	movl	-76(%rbp), %eax
	movl	%eax, -216(%rbp)                ## 4-byte Spill
	movl	-136(%rbp), %eax
	movl	%eax, -308(%rbp)                ## 4-byte Spill
	movl	-168(%rbp), %eax
	movl	%eax, -248(%rbp)                ## 4-byte Spill
	movl	-72(%rbp), %eax
	movl	%eax, -252(%rbp)                ## 4-byte Spill
	movl	-132(%rbp), %eax
	movl	%eax, -220(%rbp)                ## 4-byte Spill
	movl	-164(%rbp), %eax
	movl	%eax, -304(%rbp)                ## 4-byte Spill
	movl	-68(%rbp), %eax
	movl	%eax, -296(%rbp)                ## 4-byte Spill
	movl	-160(%rbp), %eax
	movl	%eax, -292(%rbp)                ## 4-byte Spill
	movl	-156(%rbp), %eax
	movl	%eax, -300(%rbp)                ## 4-byte Spill
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_4
## %bb.3:
	movl	%r10d, %edi
	xorl	%ecx, %edi
	movl	%r13d, %r14d
	xorl	%r15d, %r14d
	xorl	%r15d, %ecx
	movl	%r12d, %eax
	xorl	%edx, %eax
	movl	%edx, -280(%rbp)                ## 4-byte Spill
	movl	%r11d, %edx
	xorl	%ebx, %edx
	xorl	%eax, %ecx
	movl	%ecx, -268(%rbp)                ## 4-byte Spill
	xorl	%edx, %eax
	movl	-204(%rbp), %r15d               ## 4-byte Reload
	xorl	%r15d, %ebx
	xorl	%r14d, %ebx
	movl	%ebx, -264(%rbp)                ## 4-byte Spill
	movl	%r11d, -244(%rbp)               ## 4-byte Spill
	movl	%r14d, %ebx
	xorl	%edi, %r14d
	movl	%r14d, -276(%rbp)               ## 4-byte Spill
	movl	%r12d, %r14d
	xorl	%r15d, %edi
	xorl	%eax, %edi
	xorl	%r15d, %r10d
	xorl	%edx, %r10d
	xorl	%r9d, %ebx
	xorl	%ebx, %r10d
	movl	-284(%rbp), %r11d               ## 4-byte Reload
	xorl	%r11d, %ebx
	xorl	%edi, %ebx
	movl	%esi, %edx
	shrl	$4, %edx
	andl	$1, %edx
	movl	%esi, %r12d
	shrl	$6, %r12d
	andl	$1, %r12d
	movl	%r13d, -272(%rbp)               ## 4-byte Spill
	movl	-212(%rbp), %eax                ## 4-byte Reload
	movl	-208(%rbp), %ecx                ## 4-byte Reload
	xorl	%ecx, %eax
	movl	-180(%rbp), %edi                ## 4-byte Reload
	xorl	%edi, %eax
	xorl	%edx, %eax
	xorl	%r12d, %eax
	xorl	%ebx, %eax
	movl	%eax, -240(%rbp)                ## 4-byte Spill
	xorl	%ecx, %edi
	movl	%edi, %eax
	xorl	%edx, %eax
	xorl	%r12d, %eax
	xorl	%r10d, %eax
	movl	-228(%rbp), %ebx                ## 4-byte Reload
	movl	%r14d, %ecx
	xorl	%ebx, %ecx
	movl	%ebx, %r14d
	movl	%ecx, -236(%rbp)                ## 4-byte Spill
	movl	-196(%rbp), %r10d               ## 4-byte Reload
	xorl	%r10d, %ecx
	xorl	-224(%rbp), %ecx                ## 4-byte Folded Reload
	xorl	%r8d, %ecx
	xorl	%eax, %ecx
	movl	%r9d, %r13d
	movl	%r8d, -232(%rbp)                ## 4-byte Spill
	movl	%esi, %r8d
	andl	$1, %r8d
	movl	-188(%rbp), %ebx                ## 4-byte Reload
	xorl	-184(%rbp), %ebx                ## 4-byte Folded Reload
	xorl	-192(%rbp), %ebx                ## 4-byte Folded Reload
	movl	-200(%rbp), %r15d               ## 4-byte Reload
	xorl	%r15d, %ebx
	movl	-288(%rbp), %r9d                ## 4-byte Reload
	xorl	%r9d, %ebx
	xorl	%r8d, %ebx
	xorl	%ecx, %ebx
	movl	%esi, -180(%rbp)                ## 4-byte Spill
	movl	%esi, -256(%rbp)                ## 4-byte Spill
	movl	%esi, -260(%rbp)                ## 4-byte Spill
	movl	%esi, %eax
	shrl	$7, %esi
	andl	$1, %esi
	xorl	%esi, -240(%rbp)                ## 4-byte Folded Spill
	xorl	-244(%rbp), %r14d               ## 4-byte Folded Reload
	movl	%r14d, -228(%rbp)               ## 4-byte Spill
	movl	%r13d, %ecx
	xorl	%r13d, %r11d
	xorl	%r11d, %edi
	movl	%r10d, %r13d
	xorl	%esi, %r10d
	xorl	%edx, %esi
	xorl	-208(%rbp), %ecx                ## 4-byte Folded Reload
	xorl	%edx, %ecx
	movl	%ecx, -196(%rbp)                ## 4-byte Spill
	xorl	%r14d, %edx
	xorl	%edi, %edx
	xorl	-224(%rbp), %r13d               ## 4-byte Folded Reload
	xorl	-188(%rbp), %r13d               ## 4-byte Folded Reload
	xorl	-184(%rbp), %r13d               ## 4-byte Folded Reload
	xorl	%edx, %r13d
	shrl	$5, %eax
	andl	$1, %eax
	movl	-192(%rbp), %edi                ## 4-byte Reload
	xorl	%r9d, %edi
	xorl	%r8d, %edi
	xorl	%eax, %edi
	xorl	-216(%rbp), %edi                ## 4-byte Folded Reload
	xorl	%r13d, %edi
	movl	-180(%rbp), %r13d               ## 4-byte Reload
	shrl	%r13d
	andl	$1, %r13d
	movl	%r13d, -180(%rbp)               ## 4-byte Spill
	movl	-308(%rbp), %edx                ## 4-byte Reload
	movl	%edx, %r14d
	movl	-248(%rbp), %ecx                ## 4-byte Reload
	xorl	%ecx, %r14d
	xorl	%r13d, %r14d
	xorl	%edi, %r14d
	movl	-212(%rbp), %edi                ## 4-byte Reload
	xorl	%r12d, %edi
	xorl	-236(%rbp), %edi                ## 4-byte Folded Reload
	xorl	-264(%rbp), %edi                ## 4-byte Folded Reload
	xorl	-192(%rbp), %r15d               ## 4-byte Folded Reload
	xorl	%r15d, %r9d
	xorl	%eax, %r9d
	xorl	%edi, %r9d
	movl	-216(%rbp), %edi                ## 4-byte Reload
	xorl	%ecx, %edi
	xorl	%r13d, %edi
	xorl	-252(%rbp), %edi                ## 4-byte Folded Reload
	movl	-220(%rbp), %ecx                ## 4-byte Reload
	xorl	%ecx, %edi
	xorl	%r9d, %edi
	movl	-256(%rbp), %r9d                ## 4-byte Reload
	shrl	$2, %r9d
	andl	$1, %r9d
	movl	-304(%rbp), %r13d               ## 4-byte Reload
	movl	%r13d, %ecx
	xorl	%r9d, %ecx
	xorl	%edi, %ecx
	movl	%ecx, -200(%rbp)                ## 4-byte Spill
	xorl	%r12d, %r11d
	xorl	-268(%rbp), %r11d               ## 4-byte Folded Reload
	xorl	-188(%rbp), %r10d               ## 4-byte Folded Reload
	xorl	-184(%rbp), %r10d               ## 4-byte Folded Reload
	xorl	%r11d, %r10d
	xorl	%edx, %r8d
	xorl	-248(%rbp), %r8d                ## 4-byte Folded Reload
	movl	-252(%rbp), %ecx                ## 4-byte Reload
	xorl	%ecx, %r8d
	xorl	%r13d, %r8d
	xorl	%r10d, %r8d
	xorl	%ecx, %edx
	movl	-260(%rbp), %edi                ## 4-byte Reload
	shrl	$3, %edi
	andl	$1, %edi
	xorl	%r9d, %edx
	movl	%r9d, %r11d
	movl	-296(%rbp), %r10d               ## 4-byte Reload
	xorl	%r10d, %r11d
	movl	-292(%rbp), %r9d                ## 4-byte Reload
	xorl	%r9d, %r11d
	xorl	%edi, %r11d
	movl	%edi, %ecx
	xorl	%r8d, %r11d
	movl	-244(%rbp), %r8d                ## 4-byte Reload
	xorl	-280(%rbp), %r8d                ## 4-byte Folded Reload
	movl	-272(%rbp), %edi                ## 4-byte Reload
	xorl	-204(%rbp), %edi                ## 4-byte Folded Reload
	xorl	%r8d, %edi
	xorl	-232(%rbp), %esi                ## 4-byte Folded Reload
	xorl	-184(%rbp), %esi                ## 4-byte Folded Reload
	xorl	%edi, %esi
	xorl	-216(%rbp), %r15d               ## 4-byte Folded Reload
	xorl	-180(%rbp), %r15d               ## 4-byte Folded Reload
	xorl	%esi, %r15d
	xorl	-220(%rbp), %r13d               ## 4-byte Folded Reload
	xorl	%r10d, %r13d
	xorl	%r9d, %r13d
	xorl	%ecx, %r13d
	xorl	%r15d, %r13d
	movl	-196(%rbp), %edi                ## 4-byte Reload
	xorl	-276(%rbp), %edi                ## 4-byte Folded Reload
	movl	-188(%rbp), %r15d               ## 4-byte Reload
	movl	-228(%rbp), %esi                ## 4-byte Reload
	xorl	%r15d, %esi
	xorl	%eax, %esi
	xorl	%edi, %esi
	xorl	%r9d, %edx
	movl	-300(%rbp), %r8d                ## 4-byte Reload
	xorl	%r8d, %edx
	xorl	%esi, %edx
	movl	-212(%rbp), %esi                ## 4-byte Reload
	xorl	-204(%rbp), %esi                ## 4-byte Folded Reload
	xorl	-208(%rbp), %r12d               ## 4-byte Folded Reload
	xorl	%esi, %r12d
	movl	-236(%rbp), %edi                ## 4-byte Reload
	xorl	-224(%rbp), %edi                ## 4-byte Folded Reload
	xorl	%r12d, %edi
	movl	-232(%rbp), %esi                ## 4-byte Reload
	xorl	%r15d, %esi
	xorl	-184(%rbp), %esi                ## 4-byte Folded Reload
	xorl	-192(%rbp), %esi                ## 4-byte Folded Reload
	xorl	%edi, %esi
	xorl	%eax, %ebx
	xorl	-220(%rbp), %eax                ## 4-byte Folded Reload
	xorl	%r10d, %eax
	xorl	%ecx, %eax
	xorl	%r8d, %r13d
	xorl	%r8d, %eax
	xorl	%esi, %eax
	shll	$2, %r14d
	orl	-240(%rbp), %r14d               ## 4-byte Folded Reload
	addl	%ebx, %ebx
	orl	%ebx, %r14d
	movl	-200(%rbp), %ecx                ## 4-byte Reload
	shll	$3, %ecx
	shll	$4, %r11d
	orl	%ecx, %r11d
	shll	$5, %r13d
	orl	%r11d, %r13d
	orl	%r14d, %r13d
	shll	$6, %edx
	shll	$7, %eax
	orl	%edx, %eax
	orl	%r13d, %eax
	addq	$280, %rsp                      ## imm = 0x118
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_4:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_calc_crc8
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function calc_crc8
_calc_crc8:                             ; @calc_crc8
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #128
	.cfi_def_cfa_offset 128
	stp	x28, x27, [sp, #32]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #48]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #64]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #80]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #96]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #112]            ; 16-byte Folded Spill
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	and	w22, w0, #0x1
	ubfx	w26, w0, #6, #1
	ubfx	w8, w0, #7, #1
	ubfx	w7, w0, #8, #1
	ubfx	w20, w0, #9, #1
	ubfx	w16, w0, #12, #1
	ubfx	w5, w0, #13, #1
	ubfx	w17, w0, #14, #1
	ubfx	w15, w0, #15, #1
	ubfx	w2, w0, #16, #1
	ubfx	w13, w0, #17, #1
	ubfx	w14, w0, #18, #1
	ubfx	w12, w0, #19, #1
	ubfx	w9, w0, #20, #1
	str	w9, [sp, #20]                   ; 4-byte Folded Spill
	ubfx	w4, w0, #21, #1
	ubfx	w10, w0, #22, #1
	ubfx	w25, w0, #23, #1
	ubfx	w21, w0, #24, #1
	ubfx	w19, w0, #28, #1
	ubfx	w27, w0, #29, #1
	ubfx	w23, w0, #30, #1
	lsr	w9, w0, #31
	str	w9, [sp, #28]                   ; 4-byte Folded Spill
	ubfx	w6, w1, #4, #1
	eor	w3, w23, w9
	eor	w24, w3, w19
	eor	w24, w24, w25
	eor	w24, w24, w4
	eor	w24, w24, w12
	eor	w24, w24, w14
	eor	w24, w24, w2
	eor	w24, w24, w17
	eor	w24, w24, w16
	eor	w24, w24, w7
	eor	w24, w24, w8
	mov	x9, x8
	str	w8, [sp, #16]                   ; 4-byte Folded Spill
	eor	w24, w24, w26
	eor	w24, w24, w22
	eor	w28, w25, w19
	eor	w28, w28, w4
	eor	w28, w28, w14
	eor	w28, w28, w2
	eor	w28, w28, w17
	eor	w28, w28, w16
	eor	w28, w28, w26
	eor	w28, w28, w22
	eor	w30, w7, w16
	eor	w30, w30, w26
	eor	w30, w30, w22
	ubfx	w22, w1, #6, #1
	eor	w23, w27, w23
	eor	w28, w28, w6
	eor	w28, w28, w22
	eor	w28, w28, w23
	eor	w28, w28, w21
	str	w10, [sp, #24]                  ; 4-byte Folded Spill
	eor	w28, w28, w10
	ldr	w11, [sp, #20]                  ; 4-byte Folded Reload
	eor	w28, w28, w11
	eor	w28, w28, w13
	eor	w28, w28, w15
	eor	w28, w28, w5
	eor	w28, w28, w20
	ubfx	w8, w0, #1, #1
	eor	w28, w28, w8
	eor	w27, w27, w19
	eor	w30, w30, w6
	eor	w30, w30, w27
	eor	w30, w30, w21
	eor	w30, w30, w10
	eor	w30, w30, w13
	eor	w30, w30, w15
	eor	w30, w30, w5
	eor	w30, w30, w8
	eor	w25, w14, w25
	eor	w25, w25, w2
	eor	w25, w25, w17
	eor	w25, w25, w9
	eor	w25, w25, w22
	eor	w25, w25, w23
	eor	w25, w25, w5
	eor	w25, w25, w20
	eor	w10, w25, w8
	eor	w25, w12, w3
	eor	w25, w25, w17
	eor	w25, w25, w16
	eor	w7, w25, w7
	ubfx	w25, w1, #7, #1
	eor	w7, w7, w22
	eor	w7, w7, w25
	eor	w7, w7, w21
	and	w21, w1, #0x1
	eor	w8, w28, w21
	str	w8, [sp, #12]                   ; 4-byte Folded Spill
	eor	w28, w30, w21
	eor	w7, w7, w13
	eor	w7, w7, w15
	eor	w7, w7, w21
	ubfx	w21, w1, #5, #1
	eor	w28, w28, w21
	ubfx	w30, w0, #25, #1
	eor	w28, w28, w30
	ubfx	w9, w0, #10, #1
	eor	w28, w28, w9
	ubfx	w8, w0, #2, #1
	eor	w28, w28, w8
	eor	w10, w10, w21
	eor	w10, w10, w30
	eor	w10, w10, w8
	eor	w7, w7, w9
	eor	w8, w7, w8
	ldr	w3, [sp, #28]                   ; 4-byte Folded Reload
	eor	w7, w19, w3
	eor	w19, w24, w6
	eor	w19, w19, w22
	eor	w19, w19, w25
	eor	w7, w7, w14
	eor	w7, w7, w2
	eor	w7, w7, w6
	eor	w7, w7, w25
	eor	w7, w7, w11
	eor	w7, w7, w15
	eor	w7, w7, w5
	eor	w3, w7, w20
	ubfx	w7, w0, #11, #1
	eor	w3, w3, w30
	ubfx	w20, w1, #1, #1
	eor	w24, w28, w20
	eor	w10, w10, w20
	eor	w3, w3, w20
	ubfx	w20, w0, #26, #1
	eor	w10, w10, w20
	eor	w10, w10, w7
	ubfx	w25, w0, #3, #1
	eor	w10, w10, w25
	eor	w8, w8, w20
	eor	w8, w8, w25
	eor	w3, w3, w7
	eor	w3, w3, w25
	eor	w4, w12, w4
	eor	w2, w4, w2
	eor	w17, w2, w17
	eor	w16, w17, w16
	eor	w16, w16, w26
	eor	w16, w16, w6
	eor	w16, w16, w27
	eor	w16, w16, w13
	eor	w16, w16, w21
	eor	w9, w16, w9
	ubfx	w16, w0, #4, #1
	eor	w9, w9, w20
	ubfx	w17, w1, #2, #1
	eor	w10, w10, w17
	eor	w8, w8, w17
	eor	w9, w9, w17
	ubfx	w17, w0, #27, #1
	eor	w8, w8, w17
	eor	w8, w8, w16
	eor	w2, w3, w17
	eor	w2, w2, w16
	eor	w9, w9, w16
	ldr	w12, [sp, #16]                  ; 4-byte Folded Reload
	eor	w14, w12, w14
	eor	w14, w14, w26
	eor	w14, w14, w22
	eor	w14, w14, w23
	ldr	w12, [sp, #24]                  ; 4-byte Folded Reload
	eor	w14, w14, w12
	eor	w14, w14, w11
	eor	w12, w14, w13
	eor	w11, w12, w15
	eor	w11, w11, w5
	ldr	w12, [sp, #12]                  ; 4-byte Folded Reload
	eor	w12, w12, w21
	eor	w11, w11, w21
	eor	w11, w11, w7
	eor	w11, w11, w17
	ubfx	w13, w1, #3, #1
	eor	w8, w8, w13
	eor	w14, w2, w13
	eor	w11, w11, w13
	ubfx	w13, w0, #5, #1
	eor	w14, w14, w13
	eor	w9, w9, w13
	eor	w11, w11, w13
	orr	w12, w19, w12, lsl #1
	orr	w12, w12, w24, lsl #2
	orr	w10, w12, w10, lsl #3
	orr	w8, w10, w8, lsl #4
	orr	w8, w8, w14, lsl #5
	orr	w8, w8, w9, lsl #6
	orr	w0, w8, w11, lsl #7
	ldp	x29, x30, [sp, #112]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #96]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #80]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #64]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #48]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #128
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_calc_crc8
.subsections_via_symbols
