Function at 0x14007c14c
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb8
mov ebx, r9d
mov r14, rdx
mov rdi, rcx
mov r11, qword [rsp + 0x160]
mov r10, qword [rsp + 0x158]
mov esi, dword [rsp + 0x150]
movzx r12d, word [rsp + 0x148]
movzx ecx, word [rsp + 0x140]
mov r9, qword [rsp + 0x138]
mov ebp, dword [rsp + 0x130]
mov r13d, dword [rsp + 0x128]
mov edx, dword [rsp + 0x120]
mov r15d, ebx
lea rax, [r15 + 1]
cmp rax, rsi
mov word [rsp + 0x3e], cx
mov dword [rsp + 0x5c], edx
mov qword [rsp + 0x98], r9
jne 0x14007c258
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x50], r10
mov byte [rsp + 0x35], r8b
mov dword [rsp + 0x38], r13d
mov word [rsp + 0x36], r12w
mov r13, qword [r14 + 8]
mov r12, qword [r14 + 0x10]
lea r9, [0x14011b758]
mov rcx, r13
mov rdx, r12
mov r8, rsi
call fcn.140010f21
lea r8, [0x14011b3f8]
mov r9d, 2
mov rcx, rax
call fcn.14000f60b
test al, al
je 0x14007c38a
test esi, esi
je 0x14007c341
cmp r12, rsi
jbe 0x14007c33b
cmp byte [r13 + rsi], 0xbf
jg 0x14007c341
lea rcx, str.assertion_failed:_self.is_char_boundary_idx_
lea r8, [0x14011b000]
mov edx, 0x2c
call fcn.1400baa20
lea rax, [r15 + 3]
cmp rax, rsi
jne 0x14007c3d6
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x50], r10
mov byte [rsp + 0x35], r8b
mov dword [rsp + 0x38], r13d
mov word [rsp + 0x36], r12w
mov r13, qword [r14 + 8]
mov r12, qword [r14 + 0x10]
lea rax, [0x14011b680]
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rdx, r12
mov r8, r15
mov r9, rsi
call fcn.140078f50
lea r8, [0x14011b698]
mov r9d, 3
mov rcx, rax
call fcn.14007eddc
test al, al
je 0x14007c31c
cmp r12, rsi
jbe 0x14007c6c7
cmp byte [r13 + rsi], 0x2f
jne 0x14007c6f1
lea rax, [rsi + 1]
cmp rax, r12
jae 0x14007c2e7
cmp byte [r13 + rax], 0x2f
je 0x14007c651
test ebx, ebx
je 0x14007c4a4
cmp r12, r15
jbe 0x14007c49e
cmp byte [r13 + r15], 0xbf
jg 0x14007c4a4
lea rcx, str.assertion_failed:_self.is_char_boundary_n_
lea r8, [0x14011b048]
mov edx, 0x2a
call fcn.1400baa20
movzx r12d, word [rsp + 0x36]
mov r13d, dword [rsp + 0x38]
mov r8b, byte [rsp + 0x35]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x48]
jmp 0x14007c3d6
jne 0x14007c240
mov dword [rsp + 0x40], ebp
mov rax, qword [r14]
sub rax, r12
cmp rax, 1
jbe 0x14007c6ad
lea rbp, [rsi + r13]
add rbp, 2
add r13, rsi
mov r8, r12
sub r8, rsi
mov rcx, rbp
mov rdx, r13
call fcn.1400b9a90
mov word [rbp - 2], 0x2e2f
add r12, 2
mov qword [r14 + 0x10], r12
add esi, 2
mov r13, qword [r14 + 8]
mov ebp, dword [rsp + 0x40]
lea r9, [0x14011b770]
mov rcx, r13
mov rdx, r12
mov r8, r15
call fcn.140010f21
lea r8, [0x14011b3ad]
mov r9d, 3
mov rcx, rax
call fcn.14000f60b
test al, al
movzx r12d, word [rsp + 0x36]
mov r13d, dword [rsp + 0x38]
mov r8b, byte [rsp + 0x35]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x48]
jne 0x14007c6d9
mov qword [rsp + 0x28], r11
mov qword [rsp + 0x20], r10
lea r15, [rsp + 0x60]
mov rcx, r15
mov rdx, r14
mov r9d, ebx
call fcn.14007d38a
mov eax, dword [r15]
cmp eax, 2
jne 0x14007c42e
mov al, byte [rsp + 0x64]
mov byte [rdi + 8], al
movabs rax, 0x8000000000000000
mov qword [rdi], rax
mov rcx, qword [r14]
mov rdx, qword [r14 + 8]
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14005c95f
mov rcx, qword [rsp + 0x64]
mov edx, dword [rsp + 0x6c]
mov r8, qword [r14 + 0x10]
mov qword [rdi + 0x10], r8
movups xmm0, xmmword [r14]
movups xmmword [rdi], xmm0
mov r8, qword [rsp + 0x98]
movups xmm0, xmmword [r8]
movups xmmword [rdi + 0x40], xmm0
mov r8b, byte [r8 + 0x10]
mov byte [rdi + 0x50], r8b
mov dword [rdi + 0x18], eax
mov qword [rdi + 0x1c], rcx
mov dword [rdi + 0x24], edx
movzx eax, word [rsp + 0x3e]
mov word [rdi + 0x28], ax
mov word [rdi + 0x2a], r12w
mov dword [rdi + 0x2c], ebx
mov eax, dword [rsp + 0x5c]
mov dword [rdi + 0x30], eax
mov dword [rdi + 0x34], r13d
mov dword [rdi + 0x38], ebp
mov dword [rdi + 0x3c], esi
add rsp, 0xb8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
jne 0x14007c304
cmp ebx, esi
ja 0x14007c705
mov rax, r12
sub rax, rsi
jb 0x14007c717
mov qword [r14 + 0x10], r15
lea r12, [rsp + 0x88]
mov qword [r12 - 0x10], rsi
mov qword [r12 - 8], rax
mov qword [r12 - 0x18], r14
lea rax, [0x14011b2aa]
mov qword [r12], rax
lea rax, [0x14011b2ab]
mov qword [r12 + 8], rax
lea rax, str.called__Option::unwrap____on_a__None__valuecalled__Result::unwrap____on_an__Err__value
mov qword [r12 - 0x28], rax
mov qword [r12 - 0x20], rax
mov rcx, r14
jne 0x14007c50d
mov rdx, r12
call fcn.140077a48
jmp 0x14007c605
mov rdx, rsi
mov r8, r12
call fcn.140078300
test al, al
je 0x14007c605
mov rax, qword [rsp + 0x90]
mov rdx, rax
mov rcx, rax
sub rdx, qword [rsp + 0x88]
je 0x14007c56d
lea r13, [rsp + 0x60]
mov rcx, r13
call fcn.14007834c
mov rcx, qword [r13 + 0x10]
mov rdx, qword [r13 + 0x18]
mov r8, r12
call fcn.140078300
test al, al
je 0x14007c605
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x90]
sub rcx, rax
call fcn.14005c7f1
lea r13, [rsp + 0xa0]
mov qword [r13], rax
mov qword [r13 + 8], rdx
and qword [r13 + 0x10], 0
mov rcx, r13
mov rdx, r12
call fcn.140077a48
mov r10, qword [r13]
mov rax, r13
mov r13, qword [r13 + 8]
mov r12, qword [rax + 0x10]
test r12, r12
je 0x14007c5fa
lea rcx, [rsp + 0x60]
mov rdx, r12
mov qword [rsp + 0x40], r10
call fcn.14007834c
mov r10, qword [rsp + 0x40]
lea rcx, [rsp + 0x60]
mov rax, qword [rcx + 0x10]
mov rcx, qword [rcx + 0x18]
mov r8, qword [rax + 0x10]
mov rdx, qword [rax + 8]
add rdx, r8
sub rcx, r8
xor r8d, r8d
cmp rcx, r8
je 0x14007c5fa
cmp r12, r8
je 0x14007c5fa
mov r9b, byte [r13 + r8]
mov byte [rdx + r8], r9b
inc qword [rax + 0x10]
inc r8
jmp 0x14007c5de
mov rcx, r10
mov rdx, r13
call fcn.14005c95f
mov r12, qword [rsp + 0x80]
test r12, r12
je 0x14007c646
mov dword [rsp + 0x40], ebp
mov r13, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov rbp, qword [r13 + 0x10]
cmp rdx, rbp
je 0x14007c63b
mov rcx, qword [r13 + 8]
add rdx, rcx
add rcx, rbp
mov r8, r12
call fcn.1400b9a90
add r12, rbp
mov qword [r13 + 0x10], r12
mov ebp, dword [rsp + 0x40]
add esi, 0xfffffffe
mov r13, qword [r14 + 8]
mov r12, qword [r14 + 0x10]
lea r9, [0x14011b6c0]
mov rcx, r13
mov rdx, r12
mov r8, r15
call fcn.140010f21
lea r8, [0x14011b3ad]
mov r9d, 3
mov rcx, rax
call fcn.14000f60b
test al, al
movzx r12d, word [rsp + 0x36]
mov r13d, dword [rsp + 0x38]
mov r8b, byte [rsp + 0x35]
mov r10, qword [rsp + 0x50]
mov r11, qword [rsp + 0x48]
je 0x14007c3d6
lea rcx, str.assertion_failed:__self.serialization_scheme_end_as_usize.._.starts_with__:____
lea r8, [0x14011b728]
jmp 0x14007c6e7
mov r8d, 2
mov rcx, r14
mov rdx, r12
call fcn.1400ba6a0
mov r13, qword [r14 + 8]
jmp 0x14007c355
lea r8, [0x14011b6a0]
mov rcx, rsi
mov rdx, r12
call fcn.1400ba920
lea rcx, str.assertion_failed:__self.serialization_scheme_end_as_usize.._.starts_with__:____
lea r8, [0x14011b788]
mov edx, 0x4f
call fcn.1400baa20
add r13, rsi
lea rdx, [rsp + 0x60]
and qword [rdx], 0
mov rcx, r13
call fcn.1400bc453
lea r8, [0x14011afa0]
mov rcx, r15
mov rdx, rsi
call fcn.1400bac20
lea r8, [0x14011afa0]
mov rcx, rsi
mov rdx, r12
call fcn.1400ba9a0
int3