Function at 0x14009e210
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, 0x118
mov r13, rcx
mov qword [rsp + 0x80], rcx
lea rsi, [rsp + 0xa0]
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rsi
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x98], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
movups xmmword [rsp + 0xb0], xmm0
lea rdi, [rsp + 0xd8]
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rdi
lea rbp, [rsp + 0x118]
mov qword [rsp + 0xd0], rbp
movups xmmword [rsp + 0xd8], xmm0
movups xmmword [rsp + 0xe8], xmm0
movups xmmword [rsp + 0xf8], xmm0
movups xmmword [rsp + 0x108], xmm0
mov rbx, qword [rcx + 0x298]
lea rax, [rcx + 0x2b0]
cmp rbx, rax
je 0x14009e358
mov qword [rsp + 0x88], rbx
movaps xmm0, xmmword [r13 + 0x2a0]
movups xmmword [rsp + 0x90], xmm0
mov qword [r13 + 0x298], rax
mov qword [r13 + 0x2a0], rax
lea rcx, [r13 + 0x2d0]
mov qword [r13 + 0x2a8], rcx
mov rbx, rax
mov rcx, rdi
mov rsi, qword [r13 + 0x240]
lea rax, [r13 + 0x258]
cmp rsi, rax
je 0x14009e3df
mov qword [rsp + 0xc0], rsi
cmp rcx, rdi
je 0x14009e37c
mov qword [r13 + 0x240], rcx
mov rax, qword [rsp + 0xd0]
movups xmm0, xmmword [r13 + 0x248]
movups xmmword [rsp + 0xc8], xmm0
mov qword [r13 + 0x250], rax
mov qword [r13 + 0x248], rcx
mov rax, rcx
jmp 0x14009e3a8
mov r14, qword [r13 + 0x2a0]
sub r14, rbx
je 0x14009e3b0
mov rcx, rsi
mov rdx, rbx
mov r8, r14
call sub.msvcrt.dll_memmove
mov rcx, qword [rsp + 0xc0]
jmp 0x14009e3b6
lea rcx, [r13 + 0x298]
movups xmm0, xmmword [r13 + 0x248]
movups xmmword [rsp + 0xc8], xmm0
mov qword [r13 + 0x240], rax
mov qword [r13 + 0x248], rax
mov qword [r13 + 0x250], rcx
mov rcx, r13
jmp 0x14009e44e
xor r14d, r14d
mov rcx, rdi
add rsi, r14
mov qword [rsp + 0x90], rsi
mov qword [r13 + 0x2a0], rbx
mov rsi, qword [r13 + 0x240]
lea rax, [r13 + 0x258]
cmp rsi, rax
jne 0x14009e319
cmp rcx, rdi
je 0x14009e408
call sub.msvcrt.dll_free
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], rbp
mov rsi, qword [r13 + 0x240]
mov rbx, qword [r13 + 0x248]
sub rbx, rsi
je 0x14009e424
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call sub.msvcrt.dll_memmove
jmp 0x14009e426
xor ebx, ebx
add rdi, rbx
mov qword [rsp + 0xc8], rdi
mov qword [r13 + 0x248], rsi
mov rcx, qword [rsp + 0x80]
mov rax, qword [rcx + 0x240]
mov rbx, qword [rcx + 0x298]
mov qword [rcx + 0x2a0], rbx
mov qword [rcx + 0x248], rax
mov rax, qword [r13]
mov rcx, qword [r13 + 8]
mov rdx, rcx
sub rdx, rax
je 0x14009e4d8
movzx ebp, byte [rax]
cmp ebp, 0x47
je 0x14009e61e
cmp ebp, 0x54
jne 0x14009e4d8
cmp rdx, 2
jb case.0x14009e4a6.66
movsx edx, byte [rax + 1]
add edx, 0xffffffbf
cmp edx, 0x22
ja case.0x14009e4a6.66
lea rbp, [0x14009ee90]
movsxd rdx, dword [rbp + rdx*4]
add rdx, rbp
jmp rdx
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.1400a0e90
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a16f0
jmp 0x14009ecec
mov rax, qword [r13 + 0x2d8]
sub rax, qword [r13 + 0x2d0]
mov word [rsp + 0x38], 0
mov dword [rsp + 0x3c], 0
mov byte [rsp + 0x40], 0
sar rax, 3
mov qword [rsp + 0x48], rax
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a0730
mov r15, rax
mov qword [rsp + 0x78], rax
test rax, rax
je 0x14009ed32
mov rsi, qword [rsp + 0x48]
mov rax, qword [r13 + 0x2d0]
mov r14, qword [r13 + 0x2d8]
sub r14, rax
sar r14, 3
cmp rsi, r14
jae 0x14009e6fe
mov qword [rsp + 0x70], r15
mov bl, 1
lea r12, str._build_llvm_project_libcxxabi_src_demangle_ItaniumDemangle.h
mov r15, qword [sym.imp.msvcrt.dll__assert]
jmp 0x14009e57e
mov rax, qword [r13 + 0x2d0]
mov rcx, qword [rax + rsi*8]
mov qword [rcx + 0x20], rbx
inc rsi
cmp rsi, r14
setb bl
je 0x14009e838
mov rcx, qword [r13 + 0x2d8]
sub rcx, rax
sar rcx, 3
cmp rcx, rsi
ja 0x14009e5ab
lea rcx, str.Index___size_____Invalid_access__
mov rdx, r12
mov r8d, 0x8e
call r15
mov rax, qword [r13 + 0x2d0]
mov rcx, qword [r13 + 0x298]
cmp rcx, qword [r13 + 0x2a0]
je 0x14009e73a
mov rbp, qword [rcx]
test rbp, rbp
je 0x14009e73a
mov rcx, qword [rax + rsi*8]
mov rdx, qword [rcx + 0x18]
mov rdi, qword [rbp]
mov rbp, qword [rbp + 8]
sub rbp, rdi
sar rbp, 3
cmp rdx, rbp
jae 0x14009e73a
mov rbx, qword [rdi + rdx*8]
mov rdx, qword [r13 + 0x2d8]
sub rdx, rax
sar rdx, 3
cmp rdx, rsi
ja 0x14009e56b
lea rcx, str.Index___size_____Invalid_access__
mov rdx, r12
mov r8d, 0x8e
call r15
jmp 0x14009e560
cmp rdx, 2
jb 0x14009ed32
movsx ecx, byte [rax + 1]
cmp ecx, 0x49
je 0x14009e92f
cmp ecx, 0x52
je 0x14009e8a1
cmp ecx, 0x56
jne 0x14009ed32
add rax, 2
mov qword [r13], rax
mov rcx, r13
xor edx, edx
call fcn.1400a0730
mov rdi, rax
test rax, rax
je 0x14009ed32
mov rsi, qword [r13 + 0x1330]
mov rcx, qword [rsi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14009e6a9
mov ecx, 0x1000
call sub.msvcrt.dll_malloc
test rax, rax
je 0x14009ee63
mov qword [rax], rsi
mov qword [rax + 8], 0
mov qword [r13 + 0x1330], rax
xor ecx, ecx
mov rsi, rax
lea rax, [rcx + 0x30]
mov qword [rsi + 8], rax
mov byte [rsi + rcx + 0x18], 0x14
and byte [rsi + rcx + 0x1c], 0xc0
lea r15, [rsi + rcx]
add r15, 0x10
movzx eax, byte [rsi + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rsi + rcx + 0x20], al
lea rax, [0x1400c3ec8]
mov qword [rsi + rcx + 0x10], rax
lea rax, str.guard_variable_for
mov qword [rsi + rcx + 0x28], rax
lea rax, [0x1400c3e80]
mov qword [rsi + rcx + 0x30], rax
mov qword [rsi + rcx + 0x38], rdi
jmp 0x14009ed35
xor ebx, ebx
cmp r14, rsi
jae 0x14009e726
lea rcx, str.Index___size_____dropBack___cant_expand__
lea rdx, str._build_llvm_project_libcxxabi_src_demangle_ItaniumDemangle.h
mov r8d, 0x80
call qword [sym.imp.msvcrt.dll__assert]
mov rax, qword [r13 + 0x2d0]
lea rax, [rax + rsi*8]
mov qword [r13 + 0x2d8], rax
test bl, bl
je 0x14009e748
jmp 0x14009ed32
test bl, 1
mov r15, qword [rsp + 0x70]
jne 0x14009ed32
mov rdi, qword [r13]
mov rsi, qword [r13 + 8]
mov rax, rsi
sub rax, rdi
je 0x14009ed35
movzx ecx, byte [rdi]
add ecx, 0xffffffd2
cmp ecx, 0x31
ja 0x14009e77b
movabs rdx, 0x2000000800001
bt rdx, rcx
jb 0x14009ed35
mov qword [rsp + 0x68], 0
cmp rax, 0xd
jb 0x14009e7a7
lea rcx, str.Ua9enable_ifI
mov r8d, 0xd
mov rdx, rdi
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x14009ed59
mov qword [rsp + 0x60], 0
cmp byte [rsp + 0x38], 0
jne 0x14009e7d4
cmp byte [rsp + 0x39], 0
je 0x14009e7d4
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x60], rax
test rax, rax
je 0x14009ed32
lea rcx, [rsp + 0x3c]
lea rdx, [rsp + 0x40]
mov rax, qword [r13]
cmp rax, qword [r13 + 8]
je 0x14009ea09
cmp byte [rax], 0x76
jne 0x14009ea09
inc rax
mov qword [r13], rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
jmp 0x14009eb07
inc rax
mov qword [r13], rax
cmp rcx, rax
je 0x14009e85e
cmp byte [rax], 0x76
sete sil
mov rcx, r13
call fcn.1400a1a60
test al, al
jne 0x14009ed32
jmp 0x14009e870
mov rsi, qword [rsp + 0x48]
mov r14, qword [r13 + 0x2d8]
sub r14, rax
sar r14, 3
mov r15, qword [rsp + 0x70]
cmp r14, rsi
jb 0x14009e705
jmp 0x14009e726
xor esi, esi
mov rcx, r13
call fcn.1400a1a60
test al, al
jne 0x14009ed32
mov rcx, r13
call fcn.14009e210
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
test sil, sil
je 0x14009e9ff
call fcn.1400a1de0
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
xor edx, edx
call fcn.1400a0730
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
mov rax, qword [r13]
mov rcx, qword [r13 + 8]
mov dl, 1
cmp rcx, rax
je 0x14009e911
movzx ebx, byte [rax]
cmp bl, 0x30
jl 0x14009e911
cmp bl, 0x3a
jb 0x14009e8e5
add bl, 0xbf
cmp bl, 0x19
ja 0x14009e911
xor r15d, r15d
jmp 0x14009e8fa
inc rax
mov qword [r13], rax
cmp rax, rcx
je 0x14009ed35
movzx edx, byte [rax]
cmp dl, 0x30
jl 0x14009e90f
cmp dl, 0x3a
jb 0x14009e8ea
add dl, 0xbf
cmp dl, 0x19
jbe 0x14009e8ea
xor edx, edx
cmp rax, rcx
je 0x14009eb2d
cmp byte [rax], 0x5f
jne 0x14009eb2d
inc rax
mov qword [r13], rax
jmp 0x14009eb35
add rax, 2
mov qword [r13], rax
mov qword [rsp + 0x38], 0
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a1ff0
xor r15d, r15d
test al, al
jne 0x14009ed35
mov rsi, qword [rsp + 0x38]
test rsi, rsi
je 0x14009ed35
mov rdi, qword [r13 + 0x1330]
mov rcx, qword [rdi + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14009e9aa
mov ecx, 0x1000
call sub.msvcrt.dll_malloc
test rax, rax
je 0x14009ee63
mov qword [rax], rdi
mov qword [rax + 8], 0
mov qword [r13 + 0x1330], rax
xor ecx, ecx
mov rdi, rax
lea rax, [rcx + 0x30]
mov qword [rdi + 8], rax
mov byte [rdi + rcx + 0x18], 0x14
and byte [rdi + rcx + 0x1c], 0xc0
lea r15, [rdi + rcx]
add r15, 0x10
movzx eax, byte [rdi + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [rdi + rcx + 0x20], al
lea rax, [0x1400c3ec8]
mov qword [rdi + rcx + 0x10], rax
lea rax, str.initializer_for_module
mov qword [rdi + rcx + 0x28], rax
lea rax, [0x1400c3eb1]
mov qword [rdi + rcx + 0x30], rax
mov qword [rdi + rcx + 0x38], rsi
jmp 0x14009ed35
call fcn.1400a1e90
jmp 0x14009ecec
mov r12, qword [r13 + 0x18]
sub r12, qword [r13 + 0x10]
sar r12, 3
lea r14, [r13 + 0x28]
xor r15d, r15d
mov rcx, r13
call fcn.14009f050
mov rdi, rax
test rax, rax
je 0x14009ed35
mov rbx, qword [r13 + 0x18]
cmp rbx, qword [r13 + 0x20]
jne 0x14009eaab
mov rcx, qword [r13 + 0x10]
mov rbp, rbx
sub rbp, rcx
mov rdx, rbp
add rdx, rbp
cmp rcx, r14
je 0x14009ea65
call sub.msvcrt.dll_realloc
mov rsi, rax
mov qword [r13 + 0x10], rax
test rax, rax
jne 0x14009ea90
jmp 0x14009ee63
mov rcx, rdx
call sub.msvcrt.dll_malloc
test rax, rax
je 0x14009ee63
mov rsi, rax
cmp rbx, r14
je 0x14009ea8c
mov rcx, rsi
mov rdx, r14
mov r8, rbp
call sub.msvcrt.dll_memcpy
mov qword [r13 + 0x10], rsi
mov rax, rbp
sar rax, 3
sar rbp, 2
lea rbx, [rsi + rax*8]
mov qword [r13 + 0x18], rbx
lea rax, [rsi + rbp*8]
mov qword [r13 + 0x20], rax
lea rax, [rbx + 8]
mov qword [r13 + 0x18], rax
mov qword [rbx], rdi
mov rax, qword [r13]
cmp qword [r13 + 8], rax
je 0x14009eae3
movzx eax, byte [rax]
add eax, 0xffffffd2
cmp eax, 0x31
ja 0x14009ea1c
movabs rcx, 0x2000000800001
bt rcx, rax
jae 0x14009ea1c
lea rcx, [rsp + 0x50]
mov rdx, r13
mov r8, r12
call fcn.1400a1260
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x60]
lea r8, [rsp + 0x78]
lea r9, [rsp + 0x50]
mov rcx, r13
call fcn.1400a13e0
jmp 0x14009ecec
test dl, dl
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a1f40
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x50], rax
test rax, rax
je 0x14009ed32
lea rcx, [rsp + 0x38]
mov rdx, r13
mov r8b, 1
call fcn.14009ef20
mov rax, qword [rsp + 0x38]
cmp rax, qword [rsp + 0x40]
je 0x14009ed32
mov rax, qword [r13]
cmp rax, qword [r13 + 8]
je 0x14009ed32
cmp byte [rax], 0x5f
jne 0x14009ed32
inc rax
mov qword [r13], rax
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
lea r8, [rsp + 0x50]
mov rcx, r13
call fcn.1400a1c80
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
xor edx, edx
call fcn.1400a0730
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a1d30
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a1900
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a19b0
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a1850
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.14009f050
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a17a0
jmp 0x14009ecec
add rax, 2
mov qword [r13], rax
mov rcx, r13
xor edx, edx
call fcn.1400a0730
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, str.thread_local_wrapper_routine_for
lea r8, [rsp + 0x38]
mov rcx, r13
call fcn.14009ef90
mov r15, rax
jmp 0x14009ed35
add rax, 2
mov qword [r13], rax
mov rcx, r13
call fcn.1400a1a60
test al, al
jne 0x14009ed32
mov rcx, r13
call fcn.1400a1a60
test al, al
jne 0x14009ed32
mov rcx, r13
call fcn.14009e210
mov qword [rsp + 0x38], rax
test rax, rax
je 0x14009ed32
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.1400a1bd0
jmp 0x14009ecec
xor r15d, r15d
lea rcx, [rsp + 0x80]
call fcn.1400a14e0
mov rax, r15
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add rdi, 0xd
mov qword [r13], rdi
mov r14, qword [r13 + 0x18]
sub r14, qword [r13 + 0x10]
sar r14, 3
lea r12, [r13 + 0x28]
xor r15d, r15d
jmp 0x14009edba
call sub.msvcrt.dll_realloc
mov rsi, rax
mov qword [r13 + 0x10], rax
test rax, rax
je 0x14009ee63
mov rax, rbx
sar rax, 3
sar rbx, 2
lea rbp, [rsi + rax*8]
mov qword [r13 + 0x18], rbp
lea rax, [rsi + rbx*8]
mov qword [r13 + 0x20], rax
lea rax, [rbp + 8]
mov qword [r13 + 0x18], rax
mov qword [rbp], rdi
mov rdi, qword [r13]
mov rsi, qword [r13 + 8]
cmp rdi, rsi
je 0x14009edc4
cmp byte [rdi], 0x45
je 0x14009ee21
mov rcx, r13
call fcn.1400a0e90
mov rdi, rax
test rax, rax
je 0x14009ed35
mov rbp, qword [r13 + 0x18]
cmp rbp, qword [r13 + 0x20]
jne 0x14009eda6
mov rcx, qword [r13 + 0x10]
mov rbx, rbp
sub rbx, rcx
lea rdx, [rbx + rbx]
cmp rcx, r12
jne 0x14009ed76
mov rcx, rdx
call sub.msvcrt.dll_malloc
test rax, rax
je 0x14009ee63
mov rsi, rax
cmp rbp, r12
je 0x14009ee18
mov rcx, rsi
mov rdx, r12
mov r8, rbx
call sub.msvcrt.dll_memcpy
mov qword [r13 + 0x10], rsi
jmp 0x14009ed8b
inc rdi
mov qword [r13], rdi
lea rcx, [rsp + 0x50]
mov rdx, r13
mov r8, r14
call fcn.1400a1260
lea rdx, [rsp + 0x50]
mov rcx, r13
call fcn.1400a11b0
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], 0
cmp byte [rsp + 0x38], 0
je 0x14009e7b7
jmp 0x14009e7d4
call fcn.140096c70
jmp 0x14009ee76
mov rsi, rax
lea rcx, [rsp + 0x80]
call fcn.1400a14e0
mov rcx, rsi
call fcn.14009af50
int3