Function at 0x140064960
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x108]
sub rsp, 0x1d0
mov qword [rbp + 0x50], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov rbx, r8
mov r12, rdx
mov r15, rcx
xor eax, eax
mov qword [rsp + 0x78], rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
or rsi, 0xffffffffffffffff
mov dword [rbp - 0x70], esi
lea rcx, [rbp - 0x70]
call fcn.140061710
mov edi, eax
xor r14b, r14b
movzx r13d, byte [rbp + 0x148]
test r13b, r13b
je 0x140064b97
call fcn.1400634e0
mov rcx, rax
xor eax, eax
test rcx, rcx
setne al
test eax, eax
jne 0x1400649f1
mov ecx, 0x80004005
call fcn.140008ab0
int3
mov rax, qword [rcx]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rbp - 0x68], rax
movzx r9d, byte [rbp + 0x140]
lea r8, [rbp - 0x68]
lea rdx, [rsp + 0x78]
mov ecx, edi
call fcn.140066040
mov rbx, qword [rbp - 0x68]
test al, al
je 0x140064b13
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140064b13
lea rax, [rbp - 0x78]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
mov r9d, 2
xor r8d, r8d
mov edx, 0x2000000
call fcn.1400af690
test eax, eax
je 0x140064ac6
xor r8d, r8d
mov rdx, qword [rsp + 0x78]
lea rcx, [rbp - 0x80]
call fcn.1400aef60
test eax, eax
je 0x140064a76
mov r14b, 1
jmp 0x140064b6c
lea rcx, [rbp - 0x26]
call fcn.140036ea0
mov rdx, rax
test rax, rax
je 0x140064a99
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x140064a90
mov r8d, eax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x26]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x22]
mov ecx, 6
rep stosb byte [rdi], al
jmp 0x140064b6c
lea rcx, [rbp - 0x1c]
call fcn.140036a00
mov rdx, rax
test rax, rax
je 0x140064ae9
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x140064ae0
mov r8d, eax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x1c]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x18]
mov ecx, 6
rep stosb byte [rdi], al
jmp 0x140064b6c
lea rcx, [rbp - 0x12]
call fcn.140035f90
mov rdx, rax
test rax, rax
je 0x140064b30
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x140064b27
mov r8d, eax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x12]
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
lea rdi, [rbp - 0xe]
mov ecx, 8
rep stosb byte [rdi], al
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140064b84
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test r14b, r14b
jne 0x140064b90
xor al, al
jmp 0x14006512a
mov rbx, qword [rbp + 0x120]
mov eax, 0x5a4d
cmp word [r15], ax
jne 0x1400650a4
movsxd r15, dword [r15 + 0x3c]
add r15, qword [rbp + 0x110]
cmp dword [r15], 0x4550
jne 0x140065063
lea rdx, [rbp + 0x148]
mov rcx, r12
call fcn.1400afa60
movzx ecx, word [r15 + 4]
mov edx, 0x14c
mov eax, dword [rbp + 0x148]
cmp cx, dx
jne 0x140064be6
test eax, eax
jne 0x140064b89
mov edx, 0x8664
cmp cx, dx
jne 0x140064bf5
cmp eax, 6
jne 0x140064b89
xor eax, eax
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
xor edx, edx
lea r8d, [rax + 0x68]
lea rcx, [rbp + 0x60]
call fcn.1400ce520
mov dword [rbp + 0x60], 0x68
mov dword [rbp + 0x9c], 0x101
xor edi, edi
mov word [rbp + 0xa0], di
lea rax, [rsp + 0x60]
xor r9d, r9d
test r13b, r13b
je 0x140064c7a
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rdi
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x8000404
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rdi
mov r8, rbx
mov rdx, r12
mov rcx, qword [rbp - 0x78]
call fcn.1400af2f0
jmp 0x140064cac
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], 0x8000004
mov dword [rsp + 0x20], edi
xor r8d, r8d
mov rdx, rbx
mov rcx, r12
call fcn.1400af1e0
test eax, eax
je 0x14006501f
mov r14d, 4
mov r9d, r14d
lea edx, [r14 + 8]
xor ecx, ecx
mov r8d, 0x1000
call fcn.1400b38f0
mov r13, rax
mov dword [rax + 0x30], 0x100002
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.1400b00e0
test eax, eax
je 0x140064fdb
mov rdx, qword [r13 + 0x88]
add rdx, 0x10
mov qword [rsp + 0x20], rdi
lea r9d, [r14 + 4]
lea r8, [rbp - 0x60]
mov rcx, qword [rsp + 0x60]
call fcn.1400b2050
nop
lea rcx, [rbp + 6]
call fcn.1400481d0
mov rdx, rax
test rax, rax
jne 0x140064d25
mov eax, edi
jmp 0x140064d39
mov rax, rsi
nop dword [rax + rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x140064d30
mov r8d, eax
mov rbx, qword [rbp + 0x130]
mov rcx, rbx
call fcn.1400087f0
nop
lea rdi, [rbp + 6]
xor eax, eax
mov rcx, r14
rep stosb byte [rdi], al
lea rdi, [rbp + 0xa]
mov ecx, 8
rep stosb byte [rdi], al
lea r12, [r15 + 0x30]
mov eax, dword [rbp - 0x60]
cmp rax, qword [r12]
jne 0x140064dab
lea rcx, [rbp + 0x1e]
call fcn.1400428b0
mov rdx, rax
test rax, rax
je 0x140064d8c
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x140064d83
mov r8d, eax
mov rcx, rbx
call fcn.1400087f0
nop
lea rdi, [rbp + 0x1e]
xor eax, eax
mov ecx, 7
rep stosb byte [rdi], al
lea rdi, [rbp + 0x26]
jmp 0x140064de6
lea rcx, [rbp + 0x34]
call fcn.1400421c0
mov rdx, rax
test rax, rax
je 0x140064dc9
mov rax, rsi
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x140064dc0
mov r8d, eax
mov rcx, rbx
call fcn.1400087f0
nop
lea rdi, [rbp + 0x34]
xor eax, eax
mov ecx, 7
rep stosb byte [rdi], al
lea rdi, [rbp + 0x3c]
mov ecx, 0xe
rep stosb byte [rdi], al
mov rdx, qword [rbp - 0x60]
mov eax, edx
cmp rax, qword [r12]
jne 0x140064e8b
mov rcx, qword [rsp + 0x60]
call fcn.1400b14e0
test eax, eax
jne 0x140064e46
lea rcx, [rbp - 6]
call fcn.140047c90
mov rdx, rax
test rax, rax
je 0x140064e29
mov rax, rsi
nop
inc rax
cmp byte [rdx + rax], 0
jne 0x140064e20
mov r8d, eax
mov rcx, rbx
call fcn.1400087f0
nop
lea rdi, [rbp - 6]
xor eax, eax
mov rcx, r14
rep stosb byte [rdi], al
lea rdi, [rbp - 2]
jmp 0x140064e84
lea rcx, [rbp + 0x12]
call fcn.140040bf0
mov rdx, rax
test rax, rax
je 0x140064e69
mov rax, rsi
nop word [rax + rax]
inc rax
cmp byte [rdx + rax], 0
jne 0x140064e60
mov r8d, eax
mov rcx, rbx
call fcn.1400087f0
nop
lea rdi, [rbp + 0x12]
xor eax, eax
mov rcx, r14
rep stosb byte [rdi], al
lea rdi, [rbp + 0x16]
mov ecx, 8
rep stosb byte [rdi], al
mov eax, 0x40
cmp byte [rbp + 0x138], 0
cmovne r14d, eax
mov r8d, dword [r15 + 0x50]
mov dword [rsp + 0x20], r14d
mov r9d, 0x3000
mov rdx, qword [r12]
mov rcx, qword [rsp + 0x60]
call fcn.1400b39b0
mov r14, rax
test rax, rax
je 0x140064f84
mov r9d, dword [r15 + 0x54]
xor edi, edi
mov qword [rsp + 0x20], rdi
mov rsi, qword [rbp + 0x110]
mov r8, rsi
mov rdx, rax
mov rcx, qword [rsp + 0x60]
call fcn.1400b3fc0
movzx eax, word [r15 + 0x14]
mov ebx, edi
cmp di, word [r15 + 6]
jae 0x140064f34
lea rdi, [r15 + 0x2c]
add rdi, rax
xor r12d, r12d
nop
mov r9d, dword [rdi - 4]
mov r8d, dword [rdi]
add r8, rsi
mov edx, dword [rdi - 8]
add rdx, r14
mov qword [rsp + 0x20], r12
mov rcx, qword [rsp + 0x60]
call fcn.1400b3fc0
lea rdi, [rdi + 0x28]
inc ebx
movzx eax, word [r15 + 6]
cmp ebx, eax
jl 0x140064f00
lea r12, [r15 + 0x30]
xor edi, edi
mov rdx, qword [r13 + 0x88]
add rdx, 0x10
mov qword [rsp + 0x20], rdi
mov r9d, 8
mov r8, r12
mov rcx, qword [rsp + 0x60]
call fcn.1400b3fc0
mov eax, dword [r15 + 0x28]
add rax, r14
mov qword [r13 + 0x80], rax
mov rdx, r13
mov rcx, qword [rsp + 0x68]
call fcn.1400b32e0
mov rcx, qword [rsp + 0x68]
call fcn.1400b2990
mov dil, 1
jmp 0x1400650ed
lea rcx, [rbp - 0x3a]
call fcn.1400385a0
test rax, rax
jne 0x140064f96
xor esi, esi
jmp 0x140064f9f
inc rsi
cmp byte [rax + rsi], 0
jne 0x140064f96
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x3a]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x36]
mov ecx, 6
rep stosb byte [rdi], al
xor edx, edx
mov rcx, qword [rsp + 0x60]
call fcn.1400b3590
jmp 0x1400650ea
lea rcx, [rbp - 0x58]
call fcn.140038100
test rax, rax
jne 0x140064ff0
mov esi, edi
jmp 0x140064ff9
inc rsi
cmp byte [rax + rsi], 0
jne 0x140064ff0
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x58]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x54]
jmp 0x140064fc3
lea rcx, [rbp - 0x4e]
call fcn.140037c60
test rax, rax
jne 0x140065031
mov esi, edi
jmp 0x14006503a
inc rsi
cmp byte [rax + rsi], 0
jne 0x140065031
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x4e]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x4a]
jmp 0x1400650e3
lea rcx, [rbp - 0x44]
call fcn.1400377c0
test rax, rax
jne 0x140065075
xor esi, esi
jmp 0x14006507e
inc rsi
cmp byte [rax + rsi], 0
jne 0x140065075
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x44]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x40]
jmp 0x1400650e3
lea rcx, [rbp - 0x30]
call fcn.140037330
test rax, rax
jne 0x1400650b6
xor esi, esi
jmp 0x1400650bf
inc rsi
cmp byte [rax + rsi], 0
jne 0x1400650b6
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x128]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x30]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x2c]
mov ecx, 6
rep stosb byte [rdi], al
xor dil, dil
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x140065103
call fcn.1400af5d0
xor ebx, ebx
mov qword [rbp - 0x80], rbx
jmp 0x140065105
xor ebx, ebx
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x140065117
call fcn.1400aeaf0
mov qword [rbp - 0x78], rbx
mov rcx, qword [rsp + 0x78]
test rcx, rcx
je 0x140065126
call fcn.1400aeaf0
movzx eax, dil
mov rbx, qword [rsp + 0x218]
add rsp, 0x1d0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret