Function at 0x14009fa70
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 rsi, rcx
mov qword [rsp + 0x80], rcx
lea r14, [rsp + 0xa0]
mov qword [rsp + 0x88], r14
mov qword [rsp + 0x90], r14
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 r12, [rsp + 0x118]
mov qword [rsp + 0xd0], r12
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 0x14009fbb6
mov qword [rsp + 0x88], rbx
movaps xmm0, xmmword [rsi + 0x2a0]
movups xmmword [rsp + 0x90], xmm0
mov qword [rsi + 0x298], rax
mov qword [rsi + 0x2a0], rax
lea rcx, [rsi + 0x2d0]
mov qword [rsi + 0x2a8], rcx
mov rbx, rax
mov rcx, rdi
mov r14, qword [rsi + 0x240]
lea rax, [rsi + 0x258]
cmp r14, rax
je 0x14009fc3c
mov qword [rsp + 0xc0], r14
cmp rcx, rdi
je 0x14009fbda
mov qword [rsi + 0x240], rcx
mov rax, qword [rsp + 0xd0]
movups xmm0, xmmword [rsi + 0x248]
movups xmmword [rsp + 0xc8], xmm0
mov qword [rsi + 0x250], rax
mov qword [rsi + 0x248], rcx
mov rax, rcx
jmp 0x14009fc05
mov r15, qword [rsi + 0x2a0]
sub r15, rbx
je 0x14009fc0d
mov rcx, r14
mov rdx, rbx
mov r8, r15
call fcn.1400c6920
mov rcx, qword [rsp + 0xc0]
jmp 0x14009fc13
lea rcx, [rsi + 0x298]
movups xmm0, xmmword [rsi + 0x248]
movups xmmword [rsp + 0xc8], xmm0
mov qword [rsi + 0x240], rax
mov qword [rsi + 0x248], rax
mov qword [rsi + 0x250], rcx
mov rcx, rsi
jmp 0x14009fcab
xor r15d, r15d
mov rcx, rdi
add r14, r15
mov qword [rsp + 0x90], r14
mov qword [rsi + 0x2a0], rbx
mov r14, qword [rsi + 0x240]
lea rax, [rsi + 0x258]
cmp r14, rax
jne 0x14009fb78
cmp rcx, rdi
je 0x14009fc65
call fcn.1400c64c0
mov qword [rsp + 0xc0], rdi
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], r12
mov r14, qword [rsi + 0x240]
mov rbx, qword [rsi + 0x248]
sub rbx, r14
je 0x14009fc81
mov rcx, rdi
mov rdx, r14
mov r8, rbx
call fcn.1400c6920
jmp 0x14009fc83
xor ebx, ebx
add rdi, rbx
mov qword [rsp + 0xc8], rdi
mov qword [rsi + 0x248], r14
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 [rsi]
mov rcx, qword [rsi + 8]
mov rdx, rcx
sub rdx, rax
je 0x14009fd35
movzx r8d, byte [rax]
cmp r8d, 0x47
je 0x14009fe39
cmp r8d, 0x54
jne 0x14009fd35
cmp rdx, 2
jb case.0x14009fd04.66
movsx edx, byte [rax + 1]
add edx, 0xffffffbf
cmp edx, 0x22
ja case.0x14009fd04.66
lea r8, [0x1400d593c]
movsxd rdx, dword [r8 + rdx*4]
add rdx, r8
jmp rdx
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a2320
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a2b90
jmp 0x1400a04bc
mov rax, qword [rsi + 0x2d8]
sub rax, qword [rsi + 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, rsi
call fcn.1400a1c00
mov rdi, rax
mov qword [rsp + 0x78], rax
test rax, rax
je 0x1400a0501
mov r8, qword [rsp + 0x48]
mov rax, qword [rsi + 0x2d0]
mov rcx, qword [rsi + 0x2d8]
sub rcx, rax
sar rcx, 3
cmp rcx, r8
jbe 0x14009ff19
mov rdx, qword [rsi + 0x298]
cmp rdx, qword [rsi + 0x2a0]
je 0x1400a0501
mov r9, qword [rdx]
test r9, r9
je 0x1400a0501
mov r10, qword [rax + r8*8]
mov r11, qword [r10 + 0x18]
mov rbx, qword [r9]
mov r9, qword [r9 + 8]
sub r9, rbx
sar r9, 3
cmp r11, r9
jae 0x1400a0501
lea r9, [rax + r8*8]
inc r8
nop word [rax + rax]
mov r14, r8
mov r8, qword [rbx + r11*8]
mov qword [r10 + 0x20], r8
cmp rcx, r14
je 0x1400a0302
mov r8, qword [rdx]
test r8, r8
je 0x14009fe2b
mov r10, qword [rax + r14*8]
mov r11, qword [r10 + 0x18]
mov rbx, qword [r8]
mov r15, qword [r8 + 8]
sub r15, rbx
sar r15, 3
lea r8, [r14 + 1]
cmp r11, r15
jb 0x14009fdf0
cmp r14, rcx
jae 0x14009ff2a
jmp 0x1400a0501
cmp rdx, 2
jb 0x1400a0501
movsx ecx, byte [rax + 1]
cmp ecx, 0x49
je 0x1400a00f1
cmp ecx, 0x52
je 0x1400a0063
cmp ecx, 0x56
jne 0x1400a0501
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
xor edx, edx
call fcn.1400a1c00
mov rbx, rax
test rax, rax
je 0x1400a0501
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x14009fec3
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0659
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x30]
mov qword [r14 + 8], rax
mov byte [r14 + rcx + 0x18], 0x14
and byte [r14 + rcx + 0x1c], 0xc0
lea rdi, [r14 + rcx]
add rdi, 0x10
movzx eax, byte [r14 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r14 + rcx + 0x20], al
lea rax, [0x1400d1700]
mov qword [r14 + rcx + 0x10], rax
lea rax, str.guard_variable_for
mov qword [r14 + rcx + 0x28], rax
mov qword [r14 + rcx + 0x30], 0x13
mov qword [r14 + rcx + 0x38], rbx
jmp 0x1400a0503
jb 0x1400a063f
lea rax, [rax + r8*8]
mov qword [rsi + 0x2d8], rax
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov rdx, rcx
sub rdx, rax
je 0x1400a0503
movzx r8d, byte [rax]
add r8d, 0xffffffd2
cmp r8d, 0x31
ja 0x14009ff5f
movabs r9, 0x2000000800001
bt r9, r8
jb 0x1400a0503
mov qword [rsp + 0x70], 0
cmp rdx, 0xd
jb 0x14009ff92
movabs rdx, 0x6c62616e65396155
xor rdx, qword [rax]
movabs r8, 0x4966695f656c6261
xor r8, qword [rax + 5]
or r8, rdx
je 0x1400a0527
mov qword [rsp + 0x68], 0
cmp byte [rsp + 0x38], 0
jne 0x14009ffbf
cmp byte [rsp + 0x39], 0
je 0x14009ffbf
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x68], rax
test rax, rax
je 0x1400a0501
lea rcx, [rsp + 0x3c]
lea rdx, [rsp + 0x40]
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a01ca
cmp byte [rax], 0x76
jne 0x1400a01ca
inc rax
mov qword [rsi], rax
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
jmp 0x1400a02dc
inc rax
mov qword [rsi], rax
cmp rcx, rax
je 0x1400a0020
cmp byte [rax], 0x76
sete dil
mov rcx, rsi
call fcn.1400a2f50
test al, al
jne 0x1400a0501
jmp 0x1400a0032
xor edi, edi
mov rcx, rsi
call fcn.1400a2f50
test al, al
jne 0x1400a0501
mov rcx, rsi
call fcn.14009fa70
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
test dil, dil
je 0x1400a01c0
call fcn.1400a3300
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
xor edx, edx
call fcn.1400a1c00
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
mov dl, 1
cmp rcx, rax
je 0x1400a00d4
movzx r8d, byte [rax]
cmp r8b, 0x30
jl 0x1400a00d4
cmp r8b, 0x3a
jb 0x1400a00aa
add r8b, 0xbf
cmp r8b, 0x19
ja 0x1400a00d4
xor edi, edi
jmp 0x1400a00bd
inc rax
mov qword [rsi], rax
cmp rax, rcx
je 0x1400a0503
movzx edx, byte [rax]
cmp dl, 0x30
jl 0x1400a00d2
cmp dl, 0x3a
jb 0x1400a00ae
add dl, 0xbf
cmp dl, 0x19
jbe 0x1400a00ae
xor edx, edx
cmp rax, rcx
je 0x1400a030e
cmp byte [rax], 0x5f
jne 0x1400a030e
inc rax
mov qword [rsi], rax
jmp 0x1400a0316
add rax, 2
mov qword [rsi], rax
mov qword [rsp + 0x38], 0
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a3540
xor edi, edi
test al, al
jne 0x1400a0503
mov rbx, qword [rsp + 0x38]
test rbx, rbx
je 0x1400a0503
mov r14, qword [rsi + 0x1330]
mov rcx, qword [r14 + 8]
lea rax, [rcx - 0xfc0]
cmp rax, 0xfffffffffffff00f
ja 0x1400a016a
mov ecx, 0x1000
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0659
mov qword [rax], r14
mov qword [rax + 8], 0
mov qword [rsi + 0x1330], rax
xor ecx, ecx
mov r14, rax
lea rax, [rcx + 0x30]
mov qword [r14 + 8], rax
mov byte [r14 + rcx + 0x18], 0x14
and byte [r14 + rcx + 0x1c], 0xc0
lea rdi, [r14 + rcx]
add rdi, 0x10
movzx eax, byte [r14 + rcx + 0x20]
and al, 0xc0
or al, 0x15
mov byte [r14 + rcx + 0x20], al
lea rax, [0x1400d1700]
mov qword [r14 + rcx + 0x10], rax
lea rax, str.initializer_for_module
mov qword [r14 + rcx + 0x28], rax
mov qword [r14 + rcx + 0x30], 0x17
mov qword [r14 + rcx + 0x38], rbx
jmp 0x1400a0503
call fcn.1400a33c0
jmp 0x1400a04bc
mov rbx, qword [rsi + 0x18]
sub rbx, qword [rsi + 0x10]
sar rbx, 3
lea r14, [rsi + 0x28]
xor edi, edi
mov rcx, rsi
call fcn.1400a07c0
mov r15, rax
test rax, rax
je 0x1400a0503
mov r12, qword [rsi + 0x18]
cmp r12, qword [rsi + 0x20]
jne 0x1400a027f
mov rcx, qword [rsi + 0x10]
mov rbp, r12
sub rbp, rcx
lea rdx, [rbp*2]
cmp rcx, r14
je 0x1400a022b
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
jne 0x1400a0256
jmp 0x1400a0659
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0659
mov r13, rax
cmp r12, r14
je 0x1400a0252
mov rcx, r13
mov rdx, r14
mov r8, rbp
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
mov rax, rbp
sar rax, 3
sar rbp, 2
lea r12, [rax*8]
add r12, r13
mov qword [rsi + 0x18], r12
lea rax, [rbp*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [r12 + 8]
mov qword [rsi + 0x18], rax
mov qword [r12], r15
mov rax, qword [rsi]
cmp qword [rsi + 8], rax
je 0x1400a02b8
movzx eax, byte [rax]
add eax, 0xffffffd2
cmp eax, 0x31
ja 0x1400a01dc
movabs rcx, 0x2000000800001
bt rcx, rax
jae 0x1400a01dc
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rbx
call fcn.1400a2700
lea rax, [rsp + 0x40]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x3c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x68]
lea r8, [rsp + 0x78]
lea r9, [rsp + 0x50]
mov rcx, rsi
call fcn.1400a2880
jmp 0x1400a04bc
mov qword [rsi + 0x2d8], r9
jmp 0x14009ff2a
test dl, dl
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a3480
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
xor edx, edx
call fcn.1400a1c00
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a3240
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a2d10
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1400a0501
lea rcx, [rsp + 0x38]
mov rdx, rsi
mov r8b, 1
call fcn.1400a0690
cmp qword [rsp + 0x40], 0
je 0x1400a0501
mov rax, qword [rsi]
cmp rax, qword [rsi + 8]
je 0x1400a0501
cmp byte [rax], 0x5f
jne 0x1400a0501
inc rax
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
lea r8, [rsp + 0x50]
mov rcx, rsi
call fcn.1400a3190
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a2c50
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
xor edx, edx
call fcn.1400a1c00
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, str.thread_local_wrapper_routine_for
lea r8, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a0700
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a2dd0
jmp 0x1400a04bc
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a07c0
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a2e90
mov rdi, rax
jmp 0x1400a0503
add rax, 2
mov qword [rsi], rax
mov rcx, rsi
call fcn.1400a2f50
test al, al
jne 0x1400a0501
mov rcx, rsi
call fcn.1400a2f50
test al, al
jne 0x1400a0501
mov rcx, rsi
call fcn.14009fa70
mov qword [rsp + 0x38], rax
test rax, rax
je 0x1400a0501
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.1400a30d0
jmp 0x1400a04bc
xor edi, edi
lea rcx, [rsp + 0x80]
call fcn.1400a2980
mov rax, rdi
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
add rax, 0xd
mov qword [rsi], rax
mov rbx, qword [rsi + 0x18]
sub rbx, qword [rsi + 0x10]
sar rbx, 3
lea r14, [rsi + 0x28]
xor edi, edi
jmp 0x1400a0593
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
mov r13, rax
mov qword [rsi + 0x10], rax
test rax, rax
je 0x1400a0659
mov rax, r12
sar rax, 3
sar r12, 2
lea rbp, [rax*8]
add rbp, r13
mov qword [rsi + 0x18], rbp
lea rax, [r12*8]
add rax, r13
mov qword [rsi + 0x20], rax
lea rax, [rbp + 8]
mov qword [rsi + 0x18], rax
mov qword [rbp], r15
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
cmp rax, rcx
je 0x1400a059d
cmp byte [rax], 0x45
je 0x1400a05fe
mov rcx, rsi
call fcn.1400a2320
mov r15, rax
test rax, rax
je 0x1400a0503
mov rbp, qword [rsi + 0x18]
cmp rbp, qword [rsi + 0x20]
jne 0x1400a0580
mov rcx, qword [rsi + 0x10]
mov r12, rbp
sub r12, rcx
lea rdx, [r12 + r12]
cmp rcx, r14
jne 0x1400a0542
mov rcx, rdx
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
test rax, rax
je 0x1400a0659
mov r13, rax
cmp rbp, r14
je 0x1400a05f5
mov rcx, r13
mov rdx, r14
mov r8, r12
call sub.api_ms_win_crt_private_l1_1_0.dll_memcpy
mov qword [rsi + 0x10], r13
jmp 0x1400a0557
inc rax
mov qword [rsi], rax
lea rcx, [rsp + 0x50]
mov rdx, rsi
mov r8, rbx
call fcn.1400a2700
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.1400a2650
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x68], 0
cmp byte [rsp + 0x38], 0
je 0x14009ffa2
jmp 0x14009ffbf
lea rcx, str.Index___size_____dropBack___cant_expand__
lea rdx, str.C:_M_B_src_libcxxabi_src_demangle_ItaniumDemangle.h
mov r8d, 0x89
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__assert]
call fcn.140090390
jmp 0x1400a066a
mov rsi, rax
lea rcx, [rsp + 0x80]
call fcn.1400a2980
mov rcx, rsi
call fcn.14008e2d0
int3