	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function BrotliParseAsUTF8
_BrotliParseAsUTF8:                     ## @BrotliParseAsUTF8
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movl	(%rsi), %ecx
	testb	$-128, %cl
	jne	LBB0_2
## %bb.1:
	movl	%ecx, (%rdi)
	movl	$1, %eax
	testl	%ecx, %ecx
	jle	LBB0_2
LBB0_18:
	popq	%rbp
	retq
LBB0_2:
	cmpq	$2, %rdx
	jb	LBB0_17
## %bb.3:
	movl	(%rsi), %eax
	movl	%eax, %ecx
	andl	$224, %ecx
	cmpl	$192, %ecx
	jne	LBB0_6
## %bb.4:
	movl	4(%rsi), %r8d
	movl	%r8d, %ecx
	andl	$192, %ecx
	cmpl	$128, %ecx
	jne	LBB0_6
## %bb.5:
	andl	$31, %eax
	shll	$6, %eax
	andl	$63, %r8d
	orl	%eax, %r8d
	movl	%r8d, (%rdi)
	movl	$2, %eax
	cmpl	$127, %r8d
	ja	LBB0_18
LBB0_6:
	cmpq	$3, %rdx
	jb	LBB0_17
## %bb.7:
	movl	(%rsi), %ecx
	movl	%ecx, %eax
	andl	$240, %eax
	cmpl	$224, %eax
	jne	LBB0_11
## %bb.8:
	movl	4(%rsi), %r9d
	movl	%r9d, %eax
	andl	$192, %eax
	cmpl	$128, %eax
	jne	LBB0_11
## %bb.9:
	movl	8(%rsi), %r8d
	movl	%r8d, %eax
	andl	$192, %eax
	cmpl	$128, %eax
	jne	LBB0_11
## %bb.10:
	shll	$12, %ecx
	movzwl	%cx, %eax
	andl	$63, %r9d
	shll	$6, %r9d
	orl	%eax, %r9d
	andl	$63, %r8d
	orl	%r9d, %r8d
	movl	%r8d, (%rdi)
	movl	$3, %eax
	cmpl	$2047, %r8d                     ## imm = 0x7FF
	ja	LBB0_18
LBB0_11:
	cmpq	$4, %rdx
	jb	LBB0_17
## %bb.12:
	movl	(%rsi), %ecx
	movl	%ecx, %eax
	andl	$248, %eax
	cmpl	$240, %eax
	jne	LBB0_17
## %bb.13:
	movl	4(%rsi), %edx
	movl	%edx, %eax
	andl	$192, %eax
	cmpl	$128, %eax
	jne	LBB0_17
## %bb.14:
	movl	8(%rsi), %r9d
	movl	%r9d, %eax
	andl	$192, %eax
	cmpl	$128, %eax
	jne	LBB0_17
## %bb.15:
	movl	12(%rsi), %r8d
	movl	%r8d, %eax
	andl	$192, %eax
	cmpl	$128, %eax
	jne	LBB0_17
## %bb.16:
	andl	$7, %ecx
	shll	$18, %ecx
	andl	$63, %edx
	shll	$12, %edx
	orl	%ecx, %edx
	andl	$63, %r9d
	shll	$6, %r9d
	orl	%edx, %r9d
	andl	$63, %r8d
	leal	(%r9,%r8), %eax
	movl	%eax, (%rdi)
	leal	(%r8,%r9), %ecx
	addl	$-65536, %ecx                   ## imm = 0xFFFF0000
	movl	$4, %eax
	cmpl	$1048576, %ecx                  ## imm = 0x100000
	jb	LBB0_18
LBB0_17:
	movl	$1114112, %eax                  ## imm = 0x110000
	orl	(%rsi), %eax
	movl	%eax, (%rdi)
	movl	$1, %eax
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_BrotliParseAsUTF8
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function BrotliParseAsUTF8
_BrotliParseAsUTF8:                     ; @BrotliParseAsUTF8
	.cfi_startproc
; %bb.0:
	ldr	w8, [x1]
	tbnz	w8, #7, LBB0_3
; %bb.1:
	str	w8, [x0]
	cmp	w8, #0
	b.le	LBB0_3
; %bb.2:
	mov	w0, #1
	ret
LBB0_3:
	cmp	x2, #2
	b.lo	LBB0_21
; %bb.4:
	ldr	w8, [x1]
	and	w9, w8, #0xe0
	cmp	w9, #192
	b.ne	LBB0_8
; %bb.5:
	ldr	w9, [x1, #4]
	and	w10, w9, #0xc0
	cmp	w10, #128
	b.ne	LBB0_8
; %bb.6:
	and	w9, w9, #0x3f
	bfi	w9, w8, #6, #5
	str	w9, [x0]
	cmp	w9, #127
	b.ls	LBB0_8
; %bb.7:
	mov	w0, #2
	ret
LBB0_8:
	cmp	x2, #3
	b.lo	LBB0_21
; %bb.9:
	ldr	w8, [x1]
	and	w9, w8, #0xf0
	cmp	w9, #224
	b.ne	LBB0_14
; %bb.10:
	ldr	w9, [x1, #4]
	and	w10, w9, #0xc0
	cmp	w10, #128
	b.ne	LBB0_14
; %bb.11:
	ldr	w10, [x1, #8]
	and	w11, w10, #0xc0
	cmp	w11, #128
	b.ne	LBB0_14
; %bb.12:
	ubfiz	w8, w8, #12, #4
	bfi	w8, w9, #6, #6
	bfxil	w8, w10, #0, #6
	str	w8, [x0]
	cmp	w8, #2047
	b.ls	LBB0_14
; %bb.13:
	mov	w0, #3
	ret
LBB0_14:
	cmp	x2, #4
	b.lo	LBB0_21
; %bb.15:
	ldr	w8, [x1]
	and	w9, w8, #0xf8
	cmp	w9, #240
	b.ne	LBB0_21
; %bb.16:
	ldr	w9, [x1, #4]
	and	w10, w9, #0xc0
	cmp	w10, #128
	b.ne	LBB0_21
; %bb.17:
	ldr	w10, [x1, #8]
	and	w11, w10, #0xc0
	cmp	w11, #128
	b.ne	LBB0_21
; %bb.18:
	ldr	w11, [x1, #12]
	and	w12, w11, #0xc0
	cmp	w12, #128
	b.ne	LBB0_21
; %bb.19:
	ubfiz	w8, w8, #18, #3
	bfi	w8, w9, #12, #6
	bfi	w8, w10, #6, #6
	bfxil	w8, w11, #0, #6
	str	w8, [x0]
	sub	w8, w8, #16, lsl #12            ; =65536
	cmp	w8, #256, lsl #12               ; =1048576
	b.hs	LBB0_21
; %bb.20:
	mov	w0, #4
	ret
LBB0_21:
	ldr	w8, [x1]
	mov	w9, #1114112
	orr	w8, w8, w9
	str	w8, [x0]
	mov	w0, #1
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_BrotliParseAsUTF8
.subsections_via_symbols
