Function at 0x180019d30
Capabilities:
Enumerate pe sections
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x308
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x48], 0
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0xa8], 0
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0x98], 0
mov dword [rsp + 0xc8], 0
mov qword [rsp + 0x88], 0
mov qword [rsp + 0xd8], 0
mov dword [rsp + 0x6c], 0
mov dword [rsp + 0x94], 0
mov qword [rsp + 0x80], 0
mov qword [rsp + 0xe0], 0
mov dword [rsp + 0x90], 0
xor eax, eax
mov word [rsp + 0x38], ax
xor eax, eax
mov word [rsp + 0x40], ax
xor eax, eax
mov word [rsp + 0x34], ax
mov qword [rsp + 0xd0], 0
mov dword [rsp + 0x68], 0
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0x60], 0
mov dword [rsp + 0x3c], 0
mov dword [rsp + 0x30], 0
mov qword [rsp + 0x78], 0
mov qword [rsp + 0xa0], 0
mov rcx, qword [rsp + 0x310]
call qword [0x1800200d8]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
jne 0x180019e68
mov eax, 1
jmp 0x18001a8e8
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0xa8], rax
je 0x180019ea1
push rbp
push rcx
push rdx
pop rdx
pop rcx
pop rbp
jne 0x180019ea1
scasd eax, dword [rdi]
int 0xb8
mov r8d, 0xeec6ddd7
invalid
mov rax, qword [rsp + 0xa8]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x180019ebd
mov eax, 1
jmp 0x18001a8e8
mov rax, qword [rsp + 0xa8]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0xa8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb8], rax
jl 0x180019f0b
push rdx
push rbp
push rdx
push rsi
pop rsi
pop rdx
pop rbp
pop rdx
jge 0x180019f0b
mov eax, 0xb8fac0c6
cli
out 0xb0, eax
mov eax, 0xcdcd7db0
cli
out 0x7d, eax
scasd eax, dword [rdi]
cli
idiv byte [rbp - 0x51]
mov al, 0xee
mov eax, 0xaf45e7e7
xlatb
xlatb
scasd eax, dword [rdi]
out 0x48, eax
mov eax, dword [rsp + 0xb8]
mov rax, qword [rsp + 0xb8]
cmp dword [rax], 0x4550
je 0x180019f25
mov eax, 1
jmp 0x18001a8e8
mov r8d, 0x200
xor edx, edx
lea rcx, [rsp + 0x100]
call qword [0x180020038]
mov r8d, 0x1ff
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x58]
call qword [0x1800200f8]
test eax, eax
jne 0x180019f62
mov eax, 1
jmp 0x18001a8e8
xor edx, edx
lea rcx, [rsp + 0x100]
call fcn.1800095b0
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
jne 0x180019f88
mov eax, 1
jmp 0x18001a8e8
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xb0], rax
jno 0x180019fc1
nop
jo 0x180019fc1
invalid
mov rax, qword [rsp + 0xb0]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x180019ff0
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
mov eax, 1
jmp 0x18001a8e8
mov rax, qword [rsp + 0xb0]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0xb0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x70], rax
jno 0x18001a03b
push rcx
push rax
pop rax
pop rcx
jo 0x18001a03b
scasd eax, dword [rdi]
out 0xd7, eax
invalid
mov rax, qword [rsp + 0x70]
cmp dword [rax], 0x4550
je 0x18001a065
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
mov eax, 1
jmp 0x18001a8e8
mov dword [rsp + 0x50], 0
jmp 0x18001a079
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov rax, qword [rsp + 0x70]
movzx eax, word [rax + 6]
cmp dword [rsp + 0x50], eax
jae 0x18001a2c1
mov rax, qword [rsp + 0x70]
movzx eax, word [rax + 0x14]
mov rcx, qword [rsp + 0x70]
lea rax, [rcx + rax + 0x18]
mov ecx, dword [rsp + 0x50]
imul rcx, rcx, 0x28
add rax, rcx
mov qword [rsp + 0x98], rax
jge 0x18001a0de
cwde
add byte [rax], al
add byte [rbp + 0x2a], bh
push rbp
nop
pop rbp
jl 0x18001a0de
int 0xee
int 0xe7
mov al, 0xb8
cli
rcr ch, 0xcd
out 0x7d, eax
mov r8d, 0xb0ddeecd
cli
mov r8b, 0xfa
jge 0x18001a0ae
invalid
mov r8d, 0x10
xor edx, edx
lea rcx, [rsp + 0xe8]
call qword [0x180020038]
mov word [rax + rbp*8], fs
add byte [rax], al
add bh, bh
adc eax, 0x5f44
jb 0x18001a120
push rdx
nop
pop rdx
jae 0x18001a120
and eax, 0xd7d7b8f6
jge 0x18001a0e8
idiv byte [rax - 0x18822829]
invalid
mov rax, qword [rsp + 0x98]
mov r8d, 8
mov rdx, rax
lea rcx, [rsp + 0xe8]
call qword [0x180020110]
add byte [rax - 0x75], cl
ror byte [rax - 0x73], 1
mov word [rax + rbp*8], fs
add byte [rax], al
add bh, bh
adc eax, 0x5fd1
jp 0x18001a16b
jnp 0x18001a16b
scasd eax, dword [rdi]
mov dh, 0xd7
jge 0x18001a0fa
mov al, 0xcd
shl bh, 0xb0
mov eax, 0xddd7e7fa
cli
cli
out 0xcd, eax
scasd eax, dword [rdi]
mov eax, 0xc6d77dc6
jge 0x18001a12d
invalid
jge 0x18001a197
push rbx
push rbx
nop
pop rbx
pop rbx
jl 0x18001a197
out 0x7d, eax
out 0x45, eax
test ch, 0xcd
int 0xee
cli
invalid
lea rdx, [0x180020300]
lea rcx, [rsp + 0xe8]
call qword [0x1800203c0]
test eax, eax
jne 0x18001a2bc
mov dword [rsp + 0xc8], 1
jnp 0x18001a1eb
push rdx
push rsp
push rsp
push rsp
pop rsp
pop rsp
pop rsp
pop rdx
jp 0x18001a1eb
int 0x45
invalid
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
jo 0x18001a235
push rax
push rdi
nop
pop rdi
pop rax
jno 0x18001a235
invalid
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0x14]
mov rcx, qword [rsp + 0x48]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xd8], rax
jnp 0x18001a27f
push rax
nop
pop rax
jp 0x18001a27f
out dx, al
xlatb
scasd eax, dword [rdi]
out dx, al
cli
int 0xdd
int 0xfa
out dx, al
int 0xaf
invalid
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x6c], eax
jbe 0x18001a2ba
nop
ja 0x18001a2ba
mov al, 0xee
neg ch
invalid
jmp 0x18001a2c1
jmp 0x18001a06f
cmp qword [rsp + 0x88], 0
jne 0x18001a2e9
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
mov eax, 1
jmp 0x18001a8e8
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x30]
cmp qword [rsp + 0x58], rax
je 0x18001a74a
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x30]
mov rcx, qword [rsp + 0x58]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0xd0], rax
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rsp + 0xb8]
cmp dword [rcx + rax + 0x8c], 0
je 0x18001a74a
add byte [rax], al
add byte [rbx + 0x8c01bc], al
add byte [rax], al
add byte [rdi], cl
test byte [rdx], dl
add al, 0
add byte [rax + 8], bh
mov eax, 8
imul rax, rax, 5
mov rcx, qword [rsp + 0xb8]
mov eax, dword [rcx + rax + 0x88]
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rcx
mov ecx, dword [rsp + 0x68]
add rax, rcx
mov qword [rsp + 0x80], rax
ja 0x18001a396
push rsp
push rbx
pop rbx
pop rsp
jbe 0x18001a396
fstp st(5)
int 0xcd
jge 0x18001a327
int 0xe7
mov eax, 0xfafafac6
cli
int 0xee
int 0xb8
out dx, al
out dx, al
invalid
mov rax, qword [rsp + 0x80]
cmp dword [rax], 0
jne 0x18001a3a8
jmp 0x18001a74a
jg 0x18001a3d4
jle 0x18001a3d4
out 0xdd, eax
mov al, 0xaf
mul bh
mov byte [rbp - 0x23], 0xc6
out dx, al
not bh
out 0xf6, eax
out dx, al
scasd eax, dword [rdi]
out 0xcd, eax
out 0xaf, eax
scasd eax, dword [rdi]
cli
out dx, al
int 0xc6
cli
cli
jge 0x18001a37a
cli
scasd eax, dword [rdi]
jge 0x18001a37e
mov al, 0xb8
idiv dl
cli
int 0x48
mov eax, dword [rsp + 0x80]
mov rax, qword [rsp + 0x80]
mov eax, dword [rax]
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xe0], rax
jg 0x18001a41d
push rsp
push rbx
push rdx
pop rdx
pop rbx
pop rsp
jle 0x18001a41d
out 0xaf, eax
mov eax, 0xcdcd7db0
invalid
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
sub rax, 8
xor edx, edx
mov ecx, 2
add byte [rax], 0
add byte [rbx - 0x7cb7fbc0], cl
call 0x139d3d737
add al, byte [rax]
add byte [rax], al
div rcx
mov dword [rsp + 0x90], eax
jnp 0x18001a469
nop
jp 0x18001a469
jge 0x18001a421
xlatb
mov eax, 0xf6cdafc0
xlatb
out 0xf6, eax
out dx, al
mov eax, 0xcdb8b8e7
invalid
mov dword [rsp + 0x54], 0
jmp 0x18001a47d
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x90]
cmp dword [rsp + 0x54], eax
jae 0x18001a6d6
mov eax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x80]
movzx eax, word [rcx + rax*2 + 8]
mov word [rsp + 0x38], ax
je 0x18001a4d0
push rcx
push rbp
push rdx
push rax
pop rax
pop rdx
pop rbp
pop rcx
jne 0x18001a4d0
mov al, 0xb8
mul bh
out 0xc0, eax
int 0x7d
out dx, al
out dx, al
mov al, 0xcd
mov al, 0xfa
out dx, al
jge 0x18001a53e
mov al, 0x7d
out 0x7d, eax
out 0xc6, eax
scasd eax, dword [rdi]
ffree st(0)
invalid
movzx eax, word [rsp + 0x38]
and eax, 0xfff
mov word [rsp + 0x40], ax
add byte [rsi - 0x77], ah
and al, 0x40
and al, 0x40
jnp 0x18001a50b
push rsp
push rsi
push rsp
nop
pop rsp
pop rsi
pop rsp
jp 0x18001a50b
jge 0x18001a4e6
cli
sal byte [rax - 0x1111093a], 0xe7
idiv byte [rax - 0x47053f23]
fucomp st(6)
mov al, 0x7d
jge 0x18001a4dd
xlatb
out 0xcd, eax
out dx, al
out dx, al
cli
cli
cli
out 0x7d, eax
movzx eax, word [rsp + 0x38]
cdq
and edx, 0xfff
add eax, edx
sar eax, 0xc
mov word [rsp + 0x34], ax
jge 0x18001a54d
push rsp
nop
pop rsp
jl 0x18001a54d
jge 0x18001a4d9
cli
int 0xaf
int 0xcd
out dx, al
int 0xc6
cli
mov al, 0xb0
int 0xd7
mov eax, 0xc6f6af45
int 0xc0
imul byte [rdi + 0x7df6fafa]
out dx, al
int 0xdd
imul dh
scasd eax, dword [rdi]
invalid
movzx eax, word [rsp + 0x40]
mov rcx, qword [rsp + 0xe0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x88]
cmp qword [rsp + 0xc0], rax
jb 0x18001a6d1
mov eax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
cmp qword [rsp + 0xc0], rax
jae 0x18001a6d1
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0xd8]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
movzx eax, word [rsp + 0x34]
test eax, eax
je 0x18001a6d1
movzx eax, word [rsp + 0x34]
cmp eax, 3
jne 0x18001a638
jnp 0x18001a61e
nop
jp 0x18001a61e
mov al, 0xe7
out 0xee, eax
invalid
mov rax, qword [rsp + 0x60]
mov eax, dword [rax]
add eax, dword [rsp + 0xd0]
mov rcx, qword [rsp + 0x60]
mov dword [rcx], eax
jmp 0x18001a6d1
movzx eax, word [rsp + 0x34]
cmp eax, 0xa
jne 0x18001a688
jp 0x18001a66e
push rcx
push rbx
nop
pop rbx
pop rcx
jnp 0x18001a66e
cli
invalid
mov rax, qword [rsp + 0x60]
mov rax, qword [rax]
add rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0x60]
mov qword [rcx], rax
jmp 0x18001a6d1
jbe 0x18001a6b4
push rbp
pop rbp
ja 0x18001a6b4
out dx, al
int 0xfa
int 0x7d
scasd eax, dword [rdi]
shr dh, 0xf6
invalid
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
mov eax, 1
jmp 0x18001a8e8
jmp 0x18001a473
jle 0x18001a702
push rdx
push rdi
push rcx
nop
pop rcx
pop rdi
pop rdx
jg 0x18001a702
div dh
mov al, 0x45
xlatb
invalid
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
jb 0x18001a745
jae 0x18001a745
scasd eax, dword [rdi]
cli
xlatb
int 0xfa
shr dh, 0xe7
test ch, 0xc6
scasd eax, dword [rdi]
out dx, al
cli
shr dh, 0xc0
invalid
jmp 0x18001a338
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xa0], rax
cmp dword [rsp + 0x3c], 0
jne 0x18001a77b
jmp 0x18001a8d3
mov dword [rsp + 0x30], 0x1000
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x3c], eax
jae 0x18001a795
mov eax, dword [rsp + 0x30]
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x30]
mov r8d, eax
mov rdx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x78]
call qword [0x180020100]
test eax, eax
je 0x18001a890
call qword [0x1800200a0]
lea rcx, [rsp + 0x94]
mov qword [rsp + 0x20], rcx
mov r9d, 0x40
mov r8d, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x78]
mov rcx, rax
call fcn.1800026e0
test eax, eax
je 0x18001a803
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
mov eax, 1
jmp 0x18001a8e8
mov eax, dword [rsp + 0x30]
mov r8d, eax
mov rdx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x78]
call qword [0x180020110]
jle 0x18001a849
push rdx
push rax
push rsp
pop rsp
pop rax
pop rdx
jg 0x18001a849
mov al, 0xc0
div dh
invalid
call qword [0x1800200a0]
mov qword [rsp + 0x20], 0
mov r9d, dword [rsp + 0x94]
mov r8d, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x78]
mov rcx, rax
call fcn.1800026e0
test eax, eax
je 0x18001a890
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
mov eax, 1
jmp 0x18001a8e8
mov eax, dword [rsp + 0x30]
mov ecx, dword [rsp + 0x3c]
sub ecx, eax
mov eax, ecx
mov dword [rsp + 0x3c], eax
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x78]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0xa0]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xa0], rax
jmp 0x18001a76f
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180020108]
xor eax, eax
add rsp, 0x308
ret