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

Disassembly:
sub rsp, 0x288
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
jae 0x180018f7b
push rcx
pop rcx
jb 0x180018f7b
cli
invalid
call fcn.180018550
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
jne 0x180018f97
mov eax, 1
jmp 0x18001963e
je 0x180018fc3
push rax
push rbx
push rcx
pop rcx
pop rbx
pop rax
jne 0x180018fc3
int 0xe7
int 0x7d
sar dl, 0xb8
int 0xee
shr byte [rdi - 0x323f3933], 0xc6
mov eax, 0x45b07daf
int 0xfa
ror ch, 0xb0
cli
cli
cli
fnstsw word [rax + 0x448b48b8]
and al, 0x28
mov rax, qword [rsp + 0x28]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x40]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x180018fe6
mov eax, 1
jmp 0x18001963e
jno 0x180019012
push rsi
push rsp
pop rsp
pop rsi
jo 0x180019012
out 0xee, eax
idiv byte [rax - 0x32180933]
out 0xe7, eax
mov al, 0xc0
neg ch
idiv dl
out 0xcd, eax
cli
xlatb
int 0xf6
out 0xe7, eax
invalid
mov rax, qword [rsp + 0x40]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0x48]
cmp dword [rax], 0x4550
je 0x180019042
mov eax, 1
jmp 0x18001963e
jae 0x18001906e
push rbx
nop
pop rbx
jb 0x18001906e
sar byte [rbp - 0x29], 0xfa
rol byte [rbp - 0x19], 0xdd
out 0xcd, eax
div byte [rax - 0x47110506]
out 0xb0, eax
out dx, al
mov eax, 0xcdcd7db8
cli
imul byte [rdi - 0x18182840]
xlatb
int 0xc0
xlatb
xlatb
cli
mov eax, 8
imul rax, rax, 0
mov rcx, qword [rsp + 0x48]
mov eax, dword [rcx + rax + 0x88]
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
jne 0x1800190a5
mov eax, 1
jmp 0x18001963e
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x24]
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x58], rax
jno 0x1800190e9
push rdi
push rsi
push rdi
pop rdi
pop rsi
pop rdi
jo 0x1800190e9
mov eax, 0xd7f6fab8
cli
idiv byte [rbp - 0x51]
invalid
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x20]
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
jns 0x18001912d
push rcx
push rsi
push rbx
pop rbx
pop rsi
pop rcx
js 0x18001912d
xlatb
rol byte [rbp - 0x48], 0xcd
invalid
mov al, 0xb0
sal byte [rax - 0x74b705bb], 0x44
and al, 0x30
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x1c]
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x68], rax
jo 0x180019171
push rbp
push rsi
push rsp
pop rsp
pop rsi
pop rbp
jno 0x180019171
mov dh, 0xf6
sar dl, 0xe7
xlatb
mov al, 0xd7
jge 0x180019127
mov eax, 0xfafa7dc6
ror ch, 0xd7
cli
invalid
mov r8d, 0x3000
xor edx, edx
lea rcx, [0x180020810]
call qword [0x180020038]
jle 0x1800191b2
push rdx
push rsp
nop
pop rsp
pop rdx
jg 0x1800191b2
ffree st(0)
out 0x7d, eax
mov al, 0xdd
mov al, 0xb0
out dx, al
cli
scasd eax, dword [rdi]
mov eax, 0xb8b8dd7d
mov al, 0x7d
mov al, 0x7d
cli
int 0xcd
out dx, al
mov al, 0xf6
out 0xfa, eax
int 0xaf
jge 0x1800191f5
fld qword [rbp - 0x39]
add eax, 0x7640
add byte [rax], al
add byte [rax], al
mov dword [0x1800207fc], 0
mov dword [rsp + 0x24], 0
jmp 0x1800191d0
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x14]
cmp dword [rsp + 0x24], eax
jae 0x1800195ee
mov qword [rsp + 0x38], 0
jl 0x180019217
nop
jge 0x180019217
cli
fld qword [rbp - 0x33]
cli
out 0xcd, eax
int 0xb0
out dx, al
invalid
mov dword [rsp + 0x20], 0
jmp 0x18001922b
mov eax, dword [rsp + 0x20]
inc eax
mov dword [rsp + 0x20], eax
mov rax, qword [rsp + 0x30]
mov eax, dword [rax + 0x18]
cmp dword [rsp + 0x20], eax
jae 0x1800192cb
mov es, word [rax]
add byte [rax], al
js 0x180019269
push rdi
push rbx
push rax
push rbx
pop rbx
pop rax
pop rbx
pop rdi
jns 0x180019269
imul byte [rdi - 0x9825033]
sal byte [rax - 0x393f09bb], 0xdd
mov al, 0xaf
mov eax, 0xf6facdb0
out 0xb0, eax
xlatb
jge 0x180019239
int 0xcd
cli
mov al, 0xfa
neg ch
mov eax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x58]
movzx eax, word [rcx + rax*2]
cmp eax, dword [rsp + 0x24]
jne 0x1800192c6
jle 0x1800192a8
push rdi
push rax
nop
pop rax
pop rdi
jg 0x1800192a8
xlatb
mov eax, 0xb8c6d77d
mov eax, 0xddfafac0
invalid
mov eax, dword [rsp + 0x20]
mov rcx, qword [rsp + 0x60]
mov eax, dword [rcx + rax*4]
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x38], rax
jmp 0x1800192cb
jmp 0x180019221
cmp qword [rsp + 0x38], 0
je 0x1800195e9
jbe 0x180019303
push rsp
push rdi
push rsi
nop
pop rsi
pop rdi
pop rsp
ja 0x180019303
out 0xaf, eax
int 0xaf
cli
xlatb
out 0xfa, eax
cli
xlatb
out dx, al
jge 0x180019337
scasd eax, dword [rdi]
mov eax, 0xafc0e7b0
div byte [rax - 0x28390523]
int 0xcd
int 0xc0
idiv byte [rax + 1]
mov eax, 1
imul rax, rax, 0
mov byte [rsp + rax + 0x50], 0x5a
jl 0x18001933d
push rdx
nop
pop rdx
jge 0x18001933d
out 0xee, eax
cli
out dx, al
fnstsw word [rbp - 0x3a]
div dh
test r14b, 0xaf
test dh, 0xaf
scasd eax, dword [rdi]
jge 0x180019322
mov byte [rbp - 0x48], 0xc6
int 0xfa
shr dh, 0xd7
test al, 0xb8
shr dh, 0xf6
mov eax, 0xddeefaf6
cli
mov eax, 1
imul rax, rax, 1
mov byte [rsp + rax + 0x50], 0x77
jg 0x180019377
push rsi
pop rsi
jle 0x180019377
xlatb
mov eax, 0xf6b0eecd
int 0xb8
cli
shr byte [rdi - 0x4f394729], 0xc0
xlatb
invalid
int 0xdd
cli
cli
out 0xcd, eax
invalid
mov eax, 1
imul rax, rax, 2
mov byte [rsp + rax + 0x50], 0
mov r8d, 2
mov eax, 2
lea rdx, [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
call qword [0x1800201d0]
test eax, eax
jne 0x1800195e9
jge 0x1800193cf
push rsi
pop rsi
jl 0x1800193cf
int 0xcd
idiv dl
jge 0x180019386
cli
scasd eax, dword [rdi]
cli
out dx, al
jge 0x180019365
scasd eax, dword [rdi]
invalid
cmp dword [0x1800207fc], 0x400
jb 0x1800193e5
mov eax, 1
jmp 0x18001963e
mov r8d, 0x200
xor edx, edx
lea rcx, [rsp + 0x80]
call qword [0x180020038]
mov r8d, 0x1ff
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x80]
call qword [0x1800200b8]
add byte [rax], al
add bh, bh
adc eax, 0x6ca4
jl 0x180019440
push rcx
push rsi
push rdi
nop
pop rdi
pop rsi
pop rcx
jge 0x180019440
jge 0x180019417
cli
cli
out 0xdd, eax
int 0xfa
idiv dl
mov al, 0xc6
jge 0x18001940b
mov al, 0xf6
idiv dl
cli
xlatb
int 0xe7
mov eax, 0xee45fae7
int 0x7d
int 0xb0
mov eax, 1
imul rax, rax, 0
mov byte [rsp + rax + 0x80], 0x4e
jns 0x18001947d
js 0x18001947d
invalid
mov eax, 1
imul rax, rax, 1
mov byte [rsp + rax + 0x80], 0x74
jnp 0x1800194ba
push rsi
pop rsi
jp 0x1800194ba
idiv dl
mov eax, 0xfafac07d
int 0xcd
int 0xc0
invalid
mov eax, dword [0x1800207fc]
imul rax, rax, 0xc
lea rcx, [0x180020810]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x38]
call qword [0x1800200d0]
mov rcx, qword [rsp + 0x70]
mov r8, rcx
mov edx, eax
mov rcx, qword [rsp + 0x38]
call fcn.180018620
js 0x180019521
push rsp
push rbp
pop rbp
pop rsp
jns 0x180019521
cli
out 0xf6, eax
scasd eax, dword [rdi]
int 0xfa
out 0xaf, eax
mov eax, 0xfaf6cdaf
cli
scasd eax, dword [rdi]
scasd eax, dword [rdi]
mov byte [rbp - 0x19], 0xaf
not bh
mov eax, 0xddfaddd7
out dx, al
cli
out dx, al
invalid
mov eax, dword [0x1800207fc]
imul rax, rax, 0xc
lea rcx, [0x180020810]
lea rax, [rcx + rax + 4]
mov qword [rsp + 0x78], rax
lea rcx, [rsp + 0x80]
call qword [0x1800200d0]
mov rcx, qword [rsp + 0x78]
mov r8, rcx
mov edx, eax
lea rcx, [rsp + 0x80]
call fcn.180018620
ja 0x18001958d
push rcx
push rsp
push rsp
push rbp
pop rbp
pop rsp
pop rsp
pop rcx
jbe 0x18001958d
mov al, 0xe7
invalid
mov eax, dword [rsp + 0x24]
mov ecx, dword [0x1800207fc]
imul rcx, rcx, 0xc
lea rdx, [0x180020810]
mov r8, qword [rsp + 0x68]
mov eax, dword [r8 + rax*4]
mov dword [rdx + rcx + 8], eax
jbe 0x1800195db
ja 0x1800195db
ror ch, 0xe7
scasd eax, dword [rdi]
out 0xaf, eax
cli
mov al, 0xfa
shr byte [rdi - 0x50393951], 0xd7
ror ch, 0xc0
out 0xc6, eax
sar byte [rbp - 0x33], 0xfa
out dx, al
mov dh, 0xaf
int 0xf6
invalid
mov eax, dword [0x1800207fc]
inc eax
mov dword [0x1800207fc], eax
jmp 0x1800191c6
jae 0x18001961a
push rcx
push rbp
push rdx
pop rdx
pop rbp
pop rcx
jb 0x18001961a
out 0xfa, eax
jge 0x1800195b5
rol dh, 0xee
mov eax, 0xb87dfac6
out dx, al
invalid
mov eax, dword [0x1800207fc]
lea r9, [0x180018e00]
mov r8d, 0xc
mov edx, eax
lea rcx, [0x180020810]
call qword [0x180020418]
xor eax, eax
add rsp, 0x288
ret