Function at 0x180014570
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 [0x180019d38]
mov qword [rsp + 0x58], rax
cmp qword [rsp + 0x58], 0
jne 0x1800146a8
mov eax, 1
jmp 0x180015128
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0xa8], rax
ja 0x1800146e1
jbe 0x1800146e1
invalid
mov rax, qword [rsp + 0xa8]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x1800146fd
mov eax, 1
jmp 0x180015128
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
jb 0x18001474b
jae 0x18001474b
neg dword [rbx]
invalid
mov rax, qword [rsp + 0xb8]
cmp dword [rax], 0x4550
je 0x180014765
mov eax, 1
jmp 0x180015128
mov r8d, 0x200
xor edx, edx
lea rcx, [rsp + 0x100]
call qword [0x180019cd8]
mov r8d, 0x1ff
lea rdx, [rsp + 0x100]
mov rcx, qword [rsp + 0x58]
call qword [0x180019d58]
test eax, eax
jne 0x1800147a2
mov eax, 1
jmp 0x180015128
xor edx, edx
lea rcx, [rsp + 0x100]
call fcn.180005a80
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
jne 0x1800147c8
mov eax, 1
jmp 0x180015128
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0xb0], rax
jne 0x180014801
test byte [rax + rsi*4], ah
add byte [rax], al
add byte [rbp + 0x2a], dh
push rdi
push rbp
nop
pop rbp
pop rdi
je 0x180014801
loope 0x18001480f
scasd eax, dword [rdi]
fsub dword [rdx - 0x28]
mov ecx, 0xf7be2ae7
mov esi, 0xf71b71e1
jno 0x1800147cf
jno 0x1800147d9
mov esi, 0x1b2c71c1
fsubr dword [rdx]
scasd eax, dword [rdi]
invalid
mov rax, qword [rsp + 0xb0]
movzx eax, word [rax]
cmp eax, 0x5a4d
add byte [rax], al
je 0x180014830
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
mov eax, 1
jmp 0x180015128
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
jl 0x18001487b
push rbx
push rcx
push rsp
pop rsp
pop rcx
pop rbx
jge 0x18001487b
sub al, 0xe7
jno 0x180014844
invalid
mov rax, qword [rsp + 0x70]
cmp dword [rax], 0x4550
je 0x1800148a5
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
mov eax, 1
jmp 0x180015128
mov dword [rsp + 0x50], 0
jmp 0x1800148b9
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 0x180014b01
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
js 0x18001491e
nop
jns 0x18001491e
sbb ebp, dword [rsi]
rcr eax, 0xd8
shl ecx, 0x2f
loope 0x18001492f
shl edi, 0xe1
invalid
mov r8d, 0x10
xor edx, edx
lea rcx, [rsp + 0xe8]
call qword [0x180019cd8]
adc eax, 0x53a4
ja 0x180014960
push rdi
pop rdi
jbe 0x180014960
out 0xf7, eax
mov esi, 0x62e1be1b
out 0xc1, eax
sub bh, byte [rsi + 0x2edf622f]
sub al, 0x2f
sub al, 0x2c
fsubr dword [rbx + rbx]
rol ecx, 0x2f
sub al, 0xc1
mov ecx, 0x62b92a2e
out 0x2a, eax
mov esi, 0x48d8b92a
mov eax, dword [rsp + 0x98]
mov rax, qword [rsp + 0x98]
mov r8d, 8
mov rdx, rax
lea rcx, [rsp + 0xe8]
call qword [0x180019d70]
jge 0x1800149ab
push rcx
push rdx
push rdi
push rcx
pop rcx
pop rdi
pop rdx
pop rcx
jl 0x1800149ab
imul dword [rdi + 0x2abeaf62]
sbb esp, edi
neg edi
mov ecx, 0xdf71d8be
out 0xd8, eax
invalid
jp 0x1800149d7
push rdi
push rdx
push rax
nop
pop rax
pop rdx
pop rdi
jnp 0x1800149d7
invalid
lea rdx, [0x180019f50]
lea rcx, [rsp + 0xe8]
call qword [0x18001a010]
test eax, eax
jne 0x180014afc
add byte [rax], al
mov dword [rsp + 0xc8], 1
jnp 0x180014a2b
jp 0x180014a2b
sub ah, cl
loope 0x1800149ee
loope 0x180014a39
out 0x2e, eax
scasd eax, dword [rdi]
out 0xe7, eax
loope 0x1800149f2
fdiv st(7)
sbb ebp, dword [rdi + 0x71af2fd8]
sub ch, byte [rdi]
sbb esi, dword [rcx - 0x47]
invalid
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x58]
and al, 0x58
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x88], rax
jae 0x180014a75
push rbp
pop rbp
jb 0x180014a75
sub ch, byte [rdi + riz*8]
jno 0x180014a03
sub al, 0x2e
invalid
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
jbe 0x180014abf
push rsi
pop rsi
ja 0x180014abf
sub al, 0x2a
sub al, 0x2a
jno 0x180014a56
sub al, 0xe1
jno 0x180014a98
sub bh, byte [rcx - 0x271ed1d4]
invalid
mov rax, qword [rsp + 0x98]
mov eax, dword [rax + 0x10]
mov dword [rsp + 0x6c], eax
jle 0x180014afa
push rbp
push rcx
push rdi
nop
pop rdi
pop rcx
pop rbp
jg 0x180014afa
mov ecx, 0xe762f7c1
sbb ebx, dword [rbx]
div edi
scasd eax, dword [rdi]
fdivr dword [rsi - 0x18273ed6]
sbb ebp, dword [rdi]
invalid
jmp 0x180014b01
jmp 0x1800148af
cmp qword [rsp + 0x88], 0
jne 0x180014b29
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
mov eax, 1
jmp 0x180015128
mov rax, qword [rsp + 0x70]
mov rax, qword [rax + 0x30]
cmp qword [rsp + 0x58], rax
je 0x180014f8a
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 0x180014f8a
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
enter 0xffffffffffff8b48, 0xffffffffffffffc1
mov ecx, dword [rsp + 0x68]
add rax, rcx
mov qword [rsp + 0x80], rax
ja 0x180014bd6
push rdi
push rcx
push rbx
pop rbx
pop rcx
pop rdi
jbe 0x180014bd6
ffreep st(1)
sub ch, byte [rsi]
mov ecx, 0x62c12f1b
loope 0x180014b97
sbb ebp, dword [rdi]
shl dword [rdx - 0x1f], 0xd8
scasd eax, dword [rdi]
idiv dword [rcx + 0x622cc1d8]
sbb ebp, dword [rdi]
mov esi, 0xc12eb9d8
shr dword [rdi], 0xd8
jno 0x180014bb9
scasd eax, dword [rdi]
invalid
mov rax, qword [rsp + 0x80]
cmp dword [rax], 0
jne 0x180014be8
jmp 0x180014f8a
jnp 0x180014c14
push rcx
nop
pop rcx
jp 0x180014c14
sub al, 0xe1
invalid
mov rax, qword [rsp + 0x80]
add byte [rax], al
mov eax, dword [rax]
mov rcx, qword [rsp + 0x58]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xe0], rax
jnp 0x180014c5d
jp 0x180014c5d
sbb ebp, dword [rdx]
jno 0x180014c1a
mov esi, 0x2ae7b9e1
loope 0x180014ca2
invalid
mov rax, qword [rsp + 0x80]
mov eax, dword [rax + 4]
sub rax, 8
xor edx, edx
mov ecx, 2
div rcx
mov dword [rsp + 0x90], eax
jnp 0x180014ca9
push rbp
push rbx
nop
pop rbx
pop rbp
jp 0x180014ca9
invalid
scasd eax, dword [rdi]
sbb esp, ecx
sub al, 0x2c
invalid
mov dword [rsp + 0x54], 0
jmp 0x180014cbd
mov eax, dword [rsp + 0x54]
inc eax
mov dword [rsp + 0x54], eax
mov eax, dword [rsp + 0x90]
cmp dword [rsp + 0x54], eax
jae 0x180014f16
mov eax, dword [rsp + 0x54]
mov rcx, qword [rsp + 0x80]
add byte [rax], al
movzx eax, word [rcx + rax*2 + 8]
mov word [rsp + 0x38], ax
jb 0x180014d10
push rbp
push rdx
push rbp
push rcx
pop rcx
pop rbp
pop rdx
pop rbp
jae 0x180014d10
sub al, 0xbe
out 0x2a, eax
sub al, 0xbe
jno 0x180014cd8
sub ch, byte [rdi + 0x1bafe1e7]
sub al, 0xe1
sub al, 0x2c
mov esi, 0xc12c2ff7
fsubr dword [rsi]
invalid
movzx eax, word [rsp + 0x38]
and eax, 0xfff
mov word [rsp + 0x40], ax
jne 0x180014d4b
push rsi
push rbx
push rdx
pop rdx
pop rbx
pop rsi
je 0x180014d4b
invalid
movzx eax, word [rsp + 0x38]
cdq
and edx, 0xfff
add eax, edx
sar eax, 0xc
mov word [rsp + 0x34], ax
jae 0x180014d8d
push rdi
nop
pop rdi
jb 0x180014d8d
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 0x180014f11
mov eax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
cmp qword [rsp + 0xc0], rax
jae 0x180014f11
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 0x180014f11
movzx eax, word [rsp + 0x34]
cmp eax, 3
jne 0x180014e78
jne 0x180014e5e
push rdi
push rsp
pop rsp
pop rdi
je 0x180014e5e
scasd eax, dword [rdi]
imul dword [rcx + rsi*2]
sub al, 0xe7
jno 0x180014e71
fsubr dword cs:[rdx]
sub al, 0x2f
out 0x71, 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 0x180014f11
movzx eax, word [rsp + 0x34]
cmp eax, 0xa
jne 0x180014ec8
jns 0x180014eae
push rdi
pop rdi
js 0x180014eae
scasd eax, dword [rdi]
invalid
mov esi, 0xf7b92e2c
scasd eax, dword [rdi]
loope 0x180014e7d
mov esi, 0xbec12ff7
sub al, 0xe7
sbb edi, dword [rsi - 0x1ed52721]
loope 0x180014e7d
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 0x180014f11
jle 0x180014ef4
push rbp
push rsp
nop
pop rsp
pop rbp
jg 0x180014ef4
mov esi, 0xbe2f2e2c
out 0xf7, eax
jno 0x180014f3e
loope 0x180014e8d
mov ecx, 0xc1afc12e
invalid
mov r8d, 0x8000
add byte [rax], al
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
mov eax, 1
jmp 0x180015128
jmp 0x180014cb3
jns 0x180014f42
push rcx
pop rcx
js 0x180014f42
out 0xe7, eax
fsubr dword [rax + rbx*8]
sub al, 0x2a
invalid
mov ecx, 0xe7b9b92a
mov esi, 0xdfb92ae7
loope 0x180014fac
fsub st(7)
loope 0x180014ef8
mov ecx, 0x482ac12e
shr dword cs:[rdx], 0x48
mov rax, qword [rsp + 0x80]
mov eax, dword [rsp + 0x80]
mov eax, dword [rax + 4]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
jg 0x180014f85
push rdi
push rsp
nop
pop rsp
pop rdi
jle 0x180014f85
sub ah, bh
scasd eax, dword [rdi]
sbb esp, dword [rdx - 0x19]
jno 0x180014fcc
mov ecx, 0x71dfd8b9
loope 0x180014f9d
rol ecx, 0x62
loope 0x180014f2f
scasd eax, dword [rdi]
sub al, 0x2c
shr dword cs:[rdi + 0x2f2e2a2a], 0xc1
sbb eax, ecx
loope 0x180014fb4
jmp 0x180014b78
mov eax, dword [rsp + 0x6c]
mov dword [rsp + 0x3c], eax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x78], rax
and al, 0x78
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xa0], rax
add byte [rax], al
add byte [rbx + 0x3c247c], al
cmp dword [rsp + 0x3c], 0
jne 0x180014fbb
jmp 0x180015113
mov dword [rsp + 0x30], 0x1000
mov eax, dword [rsp + 0x30]
cmp dword [rsp + 0x3c], eax
jae 0x180014fd5
or byte [rbx - 0x76cfdbbc], cl
and al, 0x3c
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 [0x180019d60]
test eax, eax
je 0x1800150d0
call qword [0x180019d20]
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 0x180015043
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
mov eax, 1
jmp 0x180015128
mov eax, dword [rsp + 0x30]
mov r8d, eax
mov rdx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x78]
call qword [0x180019d70]
ja 0x180015089
nop
jbe 0x180015089
fbld tbyte [rdx - 0x19]
shr dword [rcx + rdi*4], 0x1b
mul edi
rcr dword [rbx], 0x62
imul dword [rdx]
sub ch, byte [rdi]
fsubr dword [rdi]
invalid
call qword [0x180019d20]
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 0x1800150d0
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
mov eax, 1
jmp 0x180015128
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 0x180014faf
mov r8d, 0x8000
xor edx, edx
mov rcx, qword [rsp + 0x48]
call qword [0x180019d68]
xor eax, eax
add rsp, 0x308
ret