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

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
push r15
sub rsp, 0x98
mov rax, qword [0x14031a320]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov rsi, qword [rsp + 0xf0]
xor eax, eax
mov r15, qword [rdx + 0x58]
mov rbp, r9
mov r12d, dword [rdx + 0x54]
mov r14, r8
mov qword [rsp + 0x50], rax
mov r13, rcx
mov rax, qword [rcx + 0x218]
mov qword [rsp + 0x40], rdx
test rax, rax
je 0x1400942b5
cmp qword [rax + 8], rdx
je 0x140094434
mov rax, qword [rax + 0x10]
test rax, rax
jne 0x1400942a2
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x88], rdi
mov rdi, qword [rdx]
test rdi, rdi
je 0x140094855
mov rbx, 0xffffffffffffffff
nop dword [rax + rax]
cmp byte [rdi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x1400942e0
lea rdx, [rbx + 1]
call fcn.1400048c0
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140094855
mov rdx, rdi
lea r8, [rbx + 1]
mov rcx, rax
mov rdi, rax
call sub.VCRUNTIME140.dll_memcpy
mov ecx, 0x30
call fcn.140004220
mov rbx, rax
test rax, rax
je 0x1400947a9
mov r8, qword [rsp + 0x40]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov ecx, 0xffff8000
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
mov qword [rax], r13
mov qword [rax + 8], r14
mov byte [rax + 0x1d], 1
mov rdx, qword [r8 + 0x70]
test rdx, rdx
je 0x140094370
mov rax, qword [r13 + 0x20]
xor ecx, ecx
add rax, 0x18
cmp qword [rax], rdx
je 0x140094370
inc ecx
lea rax, [rax + 0x20]
cmp qword [rax], rdx
jne 0x140094365
mov rax, qword [r13 + 0x20]
lea rdi, [rbx + 0x10]
movsxd rdx, ecx
mov r9, r15
mov rcx, qword [r8 + 0x58]
shl rdx, 5
mov rax, qword [rdx + rax]
mov qword [rcx + 8], rax
mov rcx, r13
mov rax, qword [r13 + 0x218]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x58]
mov qword [r13 + 0x218], rax
lea rax, [rsp + 0x50]
mov rdx, qword [r14 + 0x18]
mov qword [rsp + 0x60], r8
mov r8d, r12d
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x58], rbx
mov dword [rsp + 0x70], 0
call rbp
mov rcx, qword [rsp + 0x68]
mov ebp, eax
mov qword [r13 + 0x218], rcx
cmp eax, 7
jne 0x140094450
cmp byte [r13 + 0x63], 0
jne 0x140094458
cmp byte [r13 + 0x64], 0
jne 0x140094458
cmp dword [r13 + 0xdc], 0
mov byte [r13 + 0x63], 1
jle 0x14009440e
mov dword [r13 + 0x178], 1
inc dword [r13 + 0x180]
xor eax, eax
mov word [r13 + 0x184], ax
mov rax, qword [r13 + 0x140]
test rax, rax
je 0x140094458
mov dword [rax + 0x18], 7
jmp 0x140094458
mov r8, qword [rdx]
lea rdx, str.vtable_constructor_called_recursively:__s
call fcn.140006e80
mov qword [rsi], rax
mov eax, 6
jmp 0x14009486a
test eax, eax
je 0x14009450a
mov r8, qword [rsp + 0x50]
mov rcx, r13
test r8, r8
jne 0x14009447e
mov rdi, qword [rsp + 0x30]
lea rdx, str.vtable_constructor_failed:__s
mov r8, rdi
call fcn.140006e80
mov qword [rsi], rax
jmp 0x14009449c
lea rdx, [0x1402e0638]
call fcn.140006e80
mov rcx, qword [rsp + 0x50]
mov qword [rsi], rax
call fcn.140004410
mov rdi, qword [rsp + 0x30]
cmp qword [r13 + 0x2e0], 0
je 0x1400944b6
mov rdx, rbx
mov rcx, r13
call fcn.140004480
jmp 0x140094731
cmp rbx, qword [r13 + 0x1d0]
jae 0x1400944fd
cmp rbx, qword [r13 + 0x1c0]
jb 0x1400944de
mov rax, qword [r13 + 0x1b8]
mov qword [rbx], rax
mov qword [r13 + 0x1b8], rbx
jmp 0x140094731
cmp rbx, qword [r13 + 0x1c8]
jb 0x1400944fd
mov rax, qword [r13 + 0x1a8]
mov qword [rbx], rax
mov qword [r13 + 0x1a8], rbx
jmp 0x140094731
mov rcx, rbx
call fcn.140004410
jmp 0x140094731
mov rax, qword [rdi]
test rax, rax
je 0x14009472c
xor ecx, ecx
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], rcx
mov rcx, qword [rdi]
mov rax, qword [r14]
mov qword [rcx], rax
inc dword [r14 + 0x10]
mov dword [rbx + 0x18], 1
cmp dword [rsp + 0x70], 0
jne 0x140094569
mov r8, qword [rsp + 0x40]
lea rdx, str.vtable_constructor_did_not_declare_schema:__s
mov rcx, r13
mov r8, qword [r8]
call fcn.140006e80
mov rcx, rbx
mov qword [rsi], rax
call fcn.140093c40
mov ebp, 1
jmp 0x14009472c
mov r14, qword [rsp + 0x40]
xor r8d, r8d
movzx edx, r8w
mov dword [rsp + 0x38], edx
mov rax, qword [r14 + 0x60]
mov qword [rbx + 0x28], rax
mov qword [r14 + 0x60], rbx
mov ebx, r8d
mov dword [rsp + 0x3c], ebx
cmp r8w, word [r14 + 0x46]
jge 0x14009472c
mov r12d, r8d
nop word [rax + rax]
mov rax, qword [r14 + 8]
test byte [r12 + rax + 0x1c], 4
jne 0x1400946e4
lea rdi, [0x1402df794]
mov r11, 0xffffffffffffffff
nop
inc r11
cmp byte [rdi + r11], 0
jne 0x1400945c0
and r11d, 0x3fffffff
mov r15d, r11d
mov esi, r8d
mov r10, r8
test r11d, r11d
je 0x14009466f
lea rbx, [rdi + 6]
lea r14, [0x1402e82e0]
nop
mov r9d, esi
mov eax, 6
add r9, rdi
je 0x140094652
lea r8, str.hidden
movzx edx, byte [r8]
dec eax
test dl, dl
je 0x140094629
movzx ecx, byte [r9]
movzx ecx, byte [rcx + r14]
cmp byte [rdx + r14], cl
jne 0x140094629
inc r8
inc r9
test eax, eax
jg 0x140094604
dec eax
test eax, eax
js 0x140094643
movzx eax, byte [r9]
movzx edx, byte [rax + r14]
movzx eax, byte [r8]
movzx ecx, byte [rax + r14]
cmp ecx, edx
jne 0x140094652
test esi, esi
je 0x14009464d
cmp byte [rbx - 7], 0x20
jne 0x140094652
test byte [rbx], 0xdf
je 0x14009465f
inc esi
inc r10
inc rbx
cmp r10, r15
jl 0x1400945f0
mov r14, qword [rsp + 0x40]
xor r8d, r8d
mov edx, dword [rsp + 0x38]
mov ebx, dword [rsp + 0x3c]
cmp esi, r11d
jge 0x14009470e
cmp byte [r10 + rdi + 6], 0
lea r9, [r10 + rdi]
mov eax, r8d
setne al
add eax, 6
lea edx, [rax + rsi]
cmp edx, r11d
jg 0x1400946ba
mov r8d, eax
nop word [rax + rax]
lea rax, [r8 + r10]
inc edx
movzx ecx, byte [rax + rdi]
mov byte [r10 + rdi], cl
lea r10, [r10 + 1]
cmp edx, r11d
jle 0x1400946a0
xor r8d, r8d
cmp byte [r9], 0
jne 0x1400946c9
test esi, esi
jle 0x1400946c9
mov byte [r9 - 1], 0
mov rax, qword [r14 + 8]
mov edx, 0x400
mov dword [rsp + 0x38], edx
or word [r12 + rax + 0x1c], 2
or dword [r14 + 0x40], 2
jmp 0x140094715
mov rcx, qword [r12 + rax]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp byte [rcx + rax], 0
jne 0x1400946f0
lea rdi, [rcx + 1]
add rdi, rax
jne 0x1400945b7
mov r11d, r8d
jmp 0x1400945d1
movzx eax, dx
or dword [r14 + 0x40], eax
movsx eax, word [r14 + 0x46]
inc ebx
add r12, 0x20
mov dword [rsp + 0x3c], ebx
cmp ebx, eax
jl 0x1400945a0
mov rdi, qword [rsp + 0x30]
cmp qword [r13 + 0x2e0], 0
je 0x14009474d
mov rdx, rdi
mov rcx, r13
call fcn.140004480
mov eax, ebp
jmp 0x14009485a
mov rcx, qword [rsp + 0x30]
cmp rcx, qword [r13 + 0x1d0]
jae 0x14009479d
cmp rcx, qword [r13 + 0x1c0]
jb 0x14009477c
mov rax, qword [r13 + 0x1b8]
mov qword [rcx], rax
mov eax, ebp
mov qword [r13 + 0x1b8], rcx
jmp 0x14009485a
cmp rcx, qword [r13 + 0x1c8]
jb 0x14009479d
mov rax, qword [r13 + 0x1a8]
mov qword [rcx], rax
mov eax, ebp
mov qword [r13 + 0x1a8], rcx
jmp 0x14009485a
call fcn.140004410
mov eax, ebp
jmp 0x14009485a
cmp byte [r13 + 0x63], 0
jne 0x1400947f5
cmp byte [r13 + 0x64], 0
jne 0x1400947f5
cmp dword [r13 + 0xdc], 0
mov byte [r13 + 0x63], 1
jle 0x1400947d1
mov dword [r13 + 0x178], 1
inc dword [r13 + 0x180]
xor eax, eax
mov word [r13 + 0x184], ax
mov rax, qword [r13 + 0x140]
test rax, rax
je 0x1400947f5
mov dword [rax + 0x18], 7
cmp qword [r13 + 0x2e0], 0
je 0x14009480c
mov rdx, rdi
mov rcx, r13
call fcn.140004480
jmp 0x140094855
cmp rdi, qword [r13 + 0x1d0]
jae 0x14009484d
cmp rdi, qword [r13 + 0x1c0]
jb 0x140094831
mov rax, qword [r13 + 0x1b8]
mov qword [rdi], rax
mov qword [r13 + 0x1b8], rdi
jmp 0x140094855
cmp rdi, qword [r13 + 0x1c8]
jb 0x14009484d
mov rax, qword [r13 + 0x1a8]
mov qword [rdi], rax
mov qword [r13 + 0x1a8], rdi
jmp 0x140094855
mov rcx, rdi
call fcn.140004410
mov eax, 7
mov rbx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140252d20
add rsp, 0x98
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret