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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
cmp byte [0x140005058], 0
mov r14, rdx
mov esi, ecx
jne 0x1400017a0
mov ecx, 0xf87b6f6b
call fcn.140001000
mov qword [0x140005050], rax
mov r8, rax
test rax, rax
je 0x140001ace
movsxd rax, dword [rax + 0x3c]
cmp dword [rax + r8], 0x4550
jne 0x140001ace
mov ecx, dword [rax + r8 + 0x88]
add rcx, r8
mov edx, dword [rcx + 0x18]
mov dword [0x140005048], edx
mov r10d, dword [rcx + 0x20]
add r10, r8
mov qword [0x140005038], r10
mov r9d, dword [rcx + 0x1c]
add r9, r8
mov qword [0x140005030], r9
mov ecx, dword [rcx + 0x24]
add rcx, r8
mov qword [0x140005040], rcx
test edx, edx
je 0x140001ace
test r10, r10
je 0x140001ace
test r9, r9
je 0x140001ace
test rcx, rcx
je 0x140001ace
mov byte [0x140005058], 1
mov dword [r14 + 4], esi
test esi, esi
je 0x140001ace
xor ebp, ebp
cmp dword [0x140005048], ebp
mov edi, ebp
lea r15d, [rbp + 1]
jbe 0x140001988
mov rax, qword [0x140005038]
mov edx, edi
mov ecx, dword [rax + rdx*4]
mov rax, qword [0x140005040]
add rcx, qword [0x140005050]
movzx edx, word [rax + rdx*2]
mov rax, qword [0x140005030]
mov ebx, dword [rax + rdx*4]
add rbx, qword [0x140005050]
call fcn.1400012b0
cmp eax, esi
je 0x140001807
inc edi
cmp edi, dword [0x140005048]
jb 0x1400017c0
jmp 0x140001988
movzx eax, byte [rbx]
mov r9d, 0xff
cmp al, 0x4c
jne 0x140001853
cmp byte [rbx + 1], 0x8b
jne 0x1400018e8
cmp byte [rbx + 2], 0xd1
jne 0x1400018e8
cmp byte [rbx + 3], 0xb8
jne 0x1400018e8
cmp byte [rbx + 6], bpl
jne 0x1400018e8
cmp byte [rbx + 7], bpl
jne 0x1400018e8
movzx ecx, byte [rbx + 5]
movzx eax, byte [rbx + 4]
jmp 0x140001980
cmp al, 0xe9
jne 0x1400018e8
movzx ecx, r15w
nop
movzx r8d, cx
mov edx, r8d
shl edx, 5
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x140001890
cmp byte [rdx + 1], 0x8b
jne 0x140001890
cmp byte [rdx + 2], 0xd1
jne 0x140001890
cmp byte [rdx + 3], 0xb8
jne 0x140001890
cmp byte [rdx + 6], bpl
jne 0x140001890
cmp byte [rdx + 7], bpl
je 0x1400018cc
mov eax, r8d
neg eax
shl eax, 5
movsxd rdx, eax
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x1400018c1
cmp byte [rdx + 1], 0x8b
jne 0x1400018c1
cmp byte [rdx + 2], 0xd1
jne 0x1400018c1
cmp byte [rdx + 3], 0xb8
jne 0x1400018c1
cmp byte [rdx + 6], bpl
jne 0x1400018c1
cmp byte [rdx + 7], bpl
je 0x1400018d5
inc cx
cmp cx, r9w
jbe 0x140001860
jmp 0x1400018e8
movzx eax, byte [rdx + 4]
sub eax, r8d
jmp 0x1400018dc
movzx eax, byte [rdx + 4]
add eax, r8d
movzx ecx, byte [rdx + 5]
shl ecx, 8
or ecx, eax
mov dword [r14], ecx
cmp byte [rbx + 3], 0xe9
jne 0x140001988
movzx ecx, r15w
nop word [rax + rax]
movzx r8d, cx
mov edx, r8d
shl edx, 5
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x140001930
cmp byte [rdx + 1], 0x8b
jne 0x140001930
cmp byte [rdx + 2], 0xd1
jne 0x140001930
cmp byte [rdx + 3], 0xb8
jne 0x140001930
cmp byte [rdx + 6], bpl
jne 0x140001930
cmp byte [rdx + 7], bpl
je 0x14000196c
mov eax, r8d
neg eax
shl eax, 5
movsxd rdx, eax
add rdx, rbx
cmp byte [rdx], 0x4c
jne 0x140001961
cmp byte [rdx + 1], 0x8b
jne 0x140001961
cmp byte [rdx + 2], 0xd1
jne 0x140001961
cmp byte [rdx + 3], 0xb8
jne 0x140001961
cmp byte [rdx + 6], bpl
jne 0x140001961
cmp byte [rdx + 7], bpl
je 0x140001975
inc cx
cmp cx, r9w
jbe 0x140001900
jmp 0x140001988
movzx eax, byte [rdx + 4]
sub eax, r8d
jmp 0x14000197c
movzx eax, byte [rdx + 4]
add eax, r8d
movzx ecx, byte [rdx + 5]
shl ecx, 8
or ecx, eax
mov dword [r14], ecx
cmp dword [r14], ebp
je 0x140001ace
call fcn.140001360
mov edi, eax
mov ebx, ebp
and edi, 0xf
cmp byte [0x140005088], bl
jne 0x140001a42
mov ecx, 0xd0af56f
call fcn.140001000
mov qword [0x140005080], rax
mov rdx, rax
test rax, rax
je 0x140001aca
movsxd rax, dword [rax + 0x3c]
cmp dword [rax + rdx], 0x4550
jne 0x140001aca
mov ecx, dword [rax + rdx + 0x88]
add rcx, rdx
mov r9d, dword [rcx + 0x18]
mov dword [0x140005078], r9d
mov r8d, dword [rcx + 0x20]
add r8, rdx
mov qword [0x140005068], r8
mov r10d, dword [rcx + 0x1c]
add r10, rdx
mov qword [0x140005060], r10
mov ecx, dword [rcx + 0x24]
add rcx, rdx
mov qword [0x140005070], rcx
test r9d, r9d
je 0x140001aca
test r8, r8
je 0x140001aca
test r10, r10
je 0x140001aca
test rcx, rcx
je 0x140001aca
mov byte [0x140005088], r15b
jmp 0x140001a49
mov r9d, dword [0x140005078]
mov r8d, ebp
test r9d, r9d
je 0x140001aca
mov rax, qword [0x140005070]
mov ecx, r8d
movzx edx, word [rax + rcx*2]
mov rax, qword [0x140005060]
mov r9d, dword [rax + rdx*4]
mov edx, ebp
add r9, qword [0x140005080]
mov rax, r9
nop word [rax + rax]
movzx ecx, word [0x140005004]
xor cx, 0x5f
cmp word [rax], cx
jne 0x140001a9c
cmp byte [rax + 2], 0xc3
jne 0x140001a9c
cmp ebx, edi
je 0x140001aa8
inc ebx
inc edx
inc rax
cmp edx, 0x20
jb 0x140001a80
jmp 0x140001ab1
mov eax, edx
add rax, r9
mov qword [r14 + 8], rax
cmp qword [r14 + 8], rbp
jne 0x140001ac7
inc r8d
cmp r8d, dword [0x140005078]
jb 0x140001a51
mov eax, ebp
jmp 0x140001ad0
mov ebp, r15d
mov eax, ebp
jmp 0x140001ad0
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret