	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function UTF8_Encoder_ToUnicode_Func
_UTF8_Encoder_ToUnicode_Func:           ## @UTF8_Encoder_ToUnicode_Func
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	(%rdi), %rax
	movq	(%rax), %rax
	movq	(%rax), %rax
	movl	(%rax), %ecx
	cmpq	$3, %rcx
	ja	LBB0_1
## %bb.2:
	leaq	LJTI0_0(%rip), %rdx
	movslq	(%rdx,%rcx,4), %rcx
	addq	%rdx, %rcx
	jmpq	*%rcx
LBB0_7:
	movq	8(%rax), %rax
	movl	(%rax), %ecx
	jmp	LBB0_8
LBB0_1:
	movl	$32, %eax
	popq	%rbp
	retq
LBB0_5:
	movq	8(%rax), %rax
	movl	(%rax), %edx
	movl	4(%rax), %ecx
	andl	$31, %edx
	shll	$6, %edx
	jmp	LBB0_6
LBB0_4:
	movq	8(%rax), %rax
	movl	(%rax), %ecx
	movl	4(%rax), %edx
	shll	$12, %ecx
	movzwl	%cx, %ecx
	andl	$63, %edx
	shll	$6, %edx
	orl	%ecx, %edx
	movl	8(%rax), %ecx
LBB0_6:
	andl	$63, %ecx
	orl	%edx, %ecx
	jmp	LBB0_8
LBB0_3:
	movq	8(%rax), %rax
	movl	(%rax), %ecx
	movl	4(%rax), %edx
	andl	$7, %ecx
	shll	$18, %ecx
	shll	$12, %edx
	addl	%ecx, %edx
	movl	8(%rax), %esi
	andl	$63, %esi
	shll	$6, %esi
	orl	%edx, %esi
	movl	12(%rax), %ecx
	andl	$63, %ecx
	orl	%esi, %ecx
LBB0_8:
	cmpl	$65536, %ecx                    ## imm = 0x10000
	movl	$32, %eax
	cmovbl	%ecx, %eax
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_7, LBB0_7-LJTI0_0
.set L0_0_set_5, LBB0_5-LJTI0_0
.set L0_0_set_4, LBB0_4-LJTI0_0
.set L0_0_set_3, LBB0_3-LJTI0_0
LJTI0_0:
	.long	L0_0_set_7
	.long	L0_0_set_5
	.long	L0_0_set_4
	.long	L0_0_set_3
	.end_data_region
                                        ## -- End function
	.no_dead_strip	_UTF8_Encoder_ToUnicode_Func
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function UTF8_Encoder_ToUnicode_Func
_UTF8_Encoder_ToUnicode_Func:           ; @UTF8_Encoder_ToUnicode_Func
	.cfi_startproc
; %bb.0:
	ldr	x8, [x0]
	ldr	x8, [x8]
	ldr	x8, [x8]
	ldr	w9, [x8]
	cmp	w9, #3
	b.hi	LBB0_3
; %bb.1:
Lloh0:
	adrp	x10, lJTI0_0@PAGE
Lloh1:
	add	x10, x10, lJTI0_0@PAGEOFF
	adr	x11, LBB0_2
	ldrb	w12, [x10, x9]
	add	x11, x11, x12, lsl #2
	br	x11
LBB0_2:
	ldr	x8, [x8, #8]
	ldr	w8, [x8]
	b	LBB0_8
LBB0_3:
	mov	w0, #32
	ret
LBB0_4:
	ldr	x8, [x8, #8]
	ldp	w9, w8, [x8]
	and	w8, w8, #0x3f
	bfi	w8, w9, #6, #5
	b	LBB0_8
LBB0_5:
	ldr	x9, [x8, #8]
	ldp	w8, w10, [x9]
	ubfiz	w8, w8, #12, #4
	bfi	w8, w10, #6, #6
	ldr	w9, [x9, #8]
	b	LBB0_7
LBB0_6:
	ldr	x9, [x8, #8]
	ldp	w8, w10, [x9]
	ubfiz	w8, w8, #18, #3
	add	w8, w8, w10, lsl #12
	ldp	w10, w9, [x9, #8]
	bfi	w8, w10, #6, #6
LBB0_7:
	bfxil	w8, w9, #0, #6
LBB0_8:
	lsr	w9, w8, #16
	mov	w10, #32
	cmp	w9, #0
	csel	w0, w10, w8, ne
	ret
	.loh AdrpAdd	Lloh0, Lloh1
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_4-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
                                        ; -- End function
	.no_dead_strip	_UTF8_Encoder_ToUnicode_Func
.subsections_via_symbols
