Function at 0x66209090
Capabilities:
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 - 0x58]
sub rsp, 0x120
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov r15, r9
mov r13, r8
mov r14, rdx
mov rsi, rcx
movzx eax, word [rdx + 0x14]
mov edx, 0x10b
cmp ax, 2
jb 0x662090e5
cmp word [r14 + 0x18], dx
jne 0x662090e5
mov r8d, dword [r14 + 0x74]
jmp 0x662090ec
mov r8d, dword [r14 + 0x84]
cmp r8d, 1
jbe 0x66209588
cmp ax, 2
jb 0x66209107
cmp word [r14 + 0x18], dx
lea rcx, [r14 + 0x78]
je 0x6620910e
lea rcx, [r14 + 0x88]
add rcx, 8
je 0x66209588
mov ebx, dword [rcx]
test ebx, ebx
je 0x66209588
cmp byte [r14 + 0x118], 0
jne 0x66209169
mov eax, dword [r14 + 0x54]
cmp ebx, eax
jb 0x66209169
lea rax, [rbp - 0x38]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, ebx
mov rdx, r14
mov rcx, rsi
call fcn.6620afa0
test eax, eax
js 0x6620958d
mov eax, dword [rbp - 0x2c]
mov edi, dword [rbp - 0x24]
sub rdi, rax
add rdi, rbx
mov edx, 0x10b
jmp 0x6620916c
mov rdi, rbx
add rdi, qword [r14 + 0x110]
mov qword [rsp + 0x58], rdi
cmp word [r14 + 0x14], 2
jb 0x6620918c
cmp word [r14 + 0x18], dx
jne 0x6620918c
mov r12b, 1
jmp 0x6620918f
xor r12b, r12b
mov byte [rbp + 0x68], r12b
cmp byte [rsi + 0x70], 0
je 0x662091ae
mov r8d, 0x14
mov rdx, rdi
lea rcx, [rsp + 0x70]
call fcn.6620ec20
jmp 0x66209228
mov qword [rsp + 0x68], 0
call fcn.66209d60
test rax, rax
je 0x662091f0
cmp byte [rax + 0x3c], 0
je 0x662091f0
lea rcx, [rsp + 0x68]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], 0x14
lea r9, [rsp + 0x70]
mov r8, rdi
mov rdx, qword [rsi + 0x58]
mov rcx, rax
call fcn.6620a230
jmp 0x66209212
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 0x14
lea r8, [rsp + 0x70]
mov rdx, rdi
mov rcx, qword [rsi + 0x58]
call qword [sym.imp.ntdll.dll_NtReadVirtualMemory]
mov ebx, eax
test eax, eax
js 0x66209584
cmp qword [rsp + 0x68], 0x14
jne 0x6620957f
cmp dword [rsp + 0x70], 0
je 0x6620957b
mov ebx, dword [rsp + 0x7c]
cmp byte [r14 + 0x118], 0
jne 0x66209286
cmp word [r14 + 0x14], 2
jb 0x6620924e
mov eax, 0x10b
mov eax, dword [r14 + 0x54]
cmp ebx, eax
jb 0x66209286
lea rax, [rbp - 8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8d, ebx
mov rdx, r14
mov rcx, rsi
call fcn.6620afa0
test eax, eax
js 0x6620958d
mov eax, dword [rbp + 4]
mov edi, dword [rbp + 0xc]
sub rdi, rax
add rdi, rbx
jmp 0x66209289
mov rdi, rbx
add rdi, qword [r14 + 0x110]
xor edx, edx
lea rcx, [rbp - 0x78]
call fcn.662081d0
nop
lea r9, [rbp - 0x50]
lea r8, [rbp - 0x78]
mov rdx, rdi
mov rcx, rsi
call fcn.6620a3b0
mov ebx, eax
test eax, eax
js 0x6620956e
mov rcx, qword [rbp - 0x78]
mov r8, rcx
mov rdx, qword [rbp - 0x50]
call fcn.66208080
test r13, r13
je 0x66209301
mov r8, qword [rbp + 0x80]
mov rdx, rdi
mov rcx, qword [rbp - 0x78]
call r13
mov ebx, eax
cmp eax, 0x4000000f
jne 0x662092f6
lea rcx, [rbp - 0x78]
call fcn.662082e0
jmp 0x6620954c
cmp eax, 0xc0000271
jne 0x6620956e
test r15, r15
jne 0x66209314
lea rcx, [rbp - 0x78]
call fcn.662082e0
jmp 0x6620954c
lea r9, [rbp - 0x58]
mov r8d, dword [rsp + 0x70]
mov rdx, r14
mov rcx, rsi
call fcn.6620b100
mov ebx, eax
test eax, eax
js 0x6620956e
lea r9, [rbp - 0x48]
mov r8d, dword [rbp - 0x80]
mov rdx, r14
mov rcx, rsi
call fcn.6620b100
mov ebx, eax
test eax, eax
js 0x6620956e
xor r15d, r15d
mov eax, 8
test r12b, r12b
mov ecx, 4
cmovne eax, ecx
mov qword [rbp - 0x40], rax
nop word [rax + rax]
mov r12, rax
imul r12, r15
mov r13, qword [rbp - 0x58]
add r13, r12
mov r9, rax
lea r8, [rsp + 0x48]
mov rdx, r13
mov rcx, rsi
call fcn.6620a170
mov ebx, eax
test eax, eax
js 0x6620956e
movzx ebx, byte [rbp + 0x68]
test bl, bl
mov eax, dword [rsp + 0x48]
jne 0x662093ac
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x66209536
xor edx, edx
lea rcx, [rbp - 0x38]
call fcn.662081d0
nop
xor edi, edi
mov rax, qword [rsp + 0x48]
test bl, bl
je 0x662093d3
mov ecx, eax
shr ecx, 0x1f
jmp 0x662093e5
movabs rcx, 0x8000000000000000
test rcx, rax
mov ecx, edi
setne cl
test ecx, ecx
je 0x662093f3
mov word [rsp + 0x40], ax
jmp 0x662094d8
lea r9, [rsp + 0x50]
mov r8d, eax
mov rdx, r14
mov rcx, rsi
call fcn.6620b100
mov ebx, eax
test eax, eax
js 0x66209564
cmp byte [rsi + 0x70], dil
je 0x66209433
mov r8d, 2
mov rdi, qword [rsp + 0x50]
mov rdx, rdi
lea rcx, [rsp + 0x40]
call fcn.6620ec20
jmp 0x662094b3
mov qword [rsp + 0x60], rdi
call fcn.66209d60
test rax, rax
je 0x66209476
cmp byte [rax + 0x3c], dil
je 0x66209476
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], 2
lea r9, [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
mov r8, rdi
mov rdx, qword [rsi + 0x58]
mov rcx, rax
call fcn.6620a230
jmp 0x6620949d
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r9d, 2
lea r8, [rsp + 0x40]
mov rdi, qword [rsp + 0x50]
mov rdx, rdi
mov rcx, qword [rsi + 0x58]
call qword [sym.imp.ntdll.dll_NtReadVirtualMemory]
mov ebx, eax
test eax, eax
js 0x66209564
cmp qword [rsp + 0x60], 2
jne 0x6620955f
add rdi, 2
xor r9d, r9d
lea r8, [rbp - 0x38]
mov rdx, rdi
mov rcx, rsi
call fcn.6620a3b0
mov ebx, eax
test eax, eax
js 0x66209564
movzx eax, word [rsp + 0x40]
mov rcx, qword [rbp - 0x48]
add rcx, r12
mov rdx, qword [rbp + 0x80]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rcx
movzx r9d, ax
mov r8, rdi
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x78]
call qword [rbp + 0x78]
mov ebx, eax
cmp eax, 0x4000000f
je 0x6620952c
cmp eax, 0xc0000271
jne 0x66209564
lea rcx, [rbp - 0x38]
call fcn.662082e0
inc r15
mov rax, qword [rbp - 0x40]
jmp 0x66209370
lea rcx, [rbp - 0x38]
call fcn.662082e0
nop
lea rcx, [rbp - 0x78]
call fcn.662082e0
movzx r12d, byte [rbp + 0x68]
mov r15, qword [rbp + 0x78]
mov r13, qword [rbp + 0x70]
mov rdi, qword [rsp + 0x58]
add rdi, 0x14
mov qword [rsp + 0x58], rdi
jmp 0x66209193
mov ebx, 0xc0000004
lea rcx, [rbp - 0x38]
call fcn.662082e0
nop
lea rcx, [rbp - 0x78]
call fcn.662082e0
mov eax, ebx
jmp 0x6620958d
xor eax, eax
jmp 0x6620958d
mov ebx, 0xc0000004
mov eax, ebx
jmp 0x6620958d
mov eax, 0xc000007a
mov rbx, qword [rsp + 0x160]
add rsp, 0x120
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret