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

Disassembly:
js 0x1001d733
shr eax, 0x40
jns 0x10010695
sahf
mul byte [eax - 0x5d]
sbb dword [edi], ecx
mov dword [eax - 0x74ffff30], ebx
inc esi
add al, 0xe8
mov gs, word [eax + 1]
add bl, al
scasd eax, dword es:[edi]
out 0xc0, eax
out dx, eax
inc eax
jns 0x1001d733
mov eax, dword [esi + 4]
call fcn.10026f31
ret
push 0x100f70e0
call fcn.1005a080
cmp bh, bh
xor ecx, ecx
jb 0x100302dc
mov cl, byte [edx + 0x5a520001]
push edx
pop edx
mov eax, 0x100f70e5
js 0x10035a67
jns 0x10017865
nop
cpuid
ret
jns 0x10035a67
fstp dword [0xfc24448f]
jmp 0x10017872
push ecx
push edx
pop edx
call fcn.1002c149
add esp, 8
ja 0x10029bc9
jbe 0x1001788c
imul edx, esp, 0x37860f39
and eax, dword [ecx]
add al, bl
insd dword es:[edi], dx
in eax, dx
jbe 0x10029bc9
fsubr dword [ebp - 0x13]
cmpsd dword [esi], dword es:[edi]
add al, 0x10
push ebp
aad 0
add byte [eax], bh
add byte [eax], al
add al, cl
adc dword [ebx], eax
adc byte [eax], dh
mov byte [edx], 0x10
push esi
cmc
add al, 0x10
push ebp
push ecx
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
test byte [eax - 0xefff], bh
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
enter 0x311, 0x10
jle 0x1001784e
add dl, byte [eax]
xchg ebp, eax
daa
add al, 0x10
dec esp
add byte [eax], al
add byte [ecx], al
clc
add edx, dword [eax]
adc byte [edi], 0x8d
cwde
add dword [eax], edx
cmp byte [eax], al
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
enter 0x311, 0x10
sbb cl, byte [edx + 0x2b9b1004]
add al, 0x10
outsd dx, dword [esi]
jns 0x100178f2
adc byte [esi + 0x401004], bl
add byte [eax], al
inc esp
add byte [eax], al
pushfd
add al, 0x10
inc eax
add byte [eax], al
add byte [eax + eax], al
add byte [ebp + 0x3c10014d], cl
add byte [eax], al
add byte [eax + eax], bh
add byte [eax], al
fistp dword [esp + eax]
adc byte [0x63100179], dl
salc
jb 0x100178f1
add dl, byte [eax]
ret
stc
add eax, 8
mov dword [edi], ecx
ja 0x1002010b
jbe 0x10018e4a
jbe 0x1002010b
mov esi, dword [esi + 4]
mov cx, cx
jmp dword [esi]
mov esi, esi
mov dword [ebp + 8], eax
mov ebx, dword [edi]
shr ax, 0x40
mov ecx, dword [edi + 4]
mov esi, ebx
mov edx, ebx
mov edx, edx
shr esi, 4
add ah, 0
xor edx, ecx
jb 0x1001f83a
and esi, 0x1f
jb 0x1001f842
mov ecx, 0x20
mov eax, edx
cmp bh, bh
js 0x1004dc9e
jns 0x1002014d
rcr dword [esi], cl
adc cl, byte [edi]
mov dword [ebx - 0x25], ecx
add al, byte [eax]
jns 0x1004dc9e
and eax, 0x24448f62
cld
jne 0x1002016b
je 0x10020166
inc eax
fbld tbyte [edi]
jecxz 0x10020125
mov edi, 2
push edi
push 0x100f70e0
call fcn.1005a080
test si, si
jb 0x100302c0
jne 0x10020193
je 0x1002018e
mov bh, 0x30
pop edx
not ch
push edx
mov edi, 3
jno 0x1004527c
jo 0x1002019e
pop eax
sbb dword [ebx], 0x50d8800f
add al, byte [eax]
jo 0x1004527c
xor eax, 0x34810fdc
cmpsb byte [esi], byte es:[edi]
add byte [eax], al
jo 0x100201b4
jmp 0x758b83fc
jo 0x1002a7e0
add eax, 0x7e0768c9
add dl, byte [eax]
ret
pop edi
pop esi
jne 0x1003bb68
je 0x10029bd9
shr al, 0x40
jbe 0x1003701f
shr ch, 0x40
ja 0x1002a7f4
movsd dword es:[edi], dword [esi]
mov eax, 0x80c5722a
lea esi, [esi + 8]
jmp dword [esi]
jmp dword [esi]
mov cl, 0xbc
shr al, 0x40
mov cl, bl
sar byte [edi], cl
js 0x1002dd01
jns 0x100302d6
hlt
jns 0x1002dd01
fsub st(5)
jmp 0x10034310
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
push ebx
shr dh, 0x40
jmp 0x1003431c
push esi
jmp 0x1003431f
push edi
mov edi, dword [ebp + 8]
mov ecx, dword [eax]
mov dword [ebp + 0xc], 0xc
mov edx, dword [edi + 4]
add edx, ecx
mov ecx, dword [edi]
mov dword [edi + 4], edx
mov edx, dword [eax + 4]
add ecx, edx
stc
jb 0x10034345
dec esi
into
retf 0x96ba
jb 0x10018e38
xor al, 0xc
lodsb al, byte [esi]
invalid
ja 0x10010685
jbe 0x10037029
jb 0x10037010
jbe 0x10010685
and eax, 0x2596835
add dl, byte [eax]
ret
jmp 0x1004527d
push edi
jne 0x1001783e
je 0x1004528c
out 0xe6, eax
push ds
adc eax, 0xac840fd6
and eax, 0xaa34fffd
je 0x1001783e
xor al, 0xaa
sub ecx, esi
shr eax, cl
mov ecx, esi
xchg dl, dh
xchg dh, dl
mov esi, dword [ebp + 8]
shl edx, cl
mov ecx, 0x20
add esi, 8
call fcn.1002296b
fstp dword [edx + 0x10042b9b]
cmp al, 0xdd
add al, 0x10
fistp dword [esp + eax]
adc dl, dl
fadd qword [eax + edx]
les esi, [edx - 0x22]
add dword [ecx], ebp
add dword [eax], edx
cmp byte [eax], al
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
ja 0x1004dcb2
add dword [eax], edx
or al, 0
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
xchg ebp, eax
daa
add al, 0x10
push eax
add byte [eax], al
add byte [esi + 0x401004], al
add byte [eax], al
cmp byte [eax], al
add byte [eax], al
or al, 0x47
add dword [eax], edx
add byte [ecx], al
add byte [eax], bh
add byte [eax], al
add byte [eax], al
add dword [eax], eax
add byte [eax], al
popal
add byte [eax + 0x40], al
add byte [ecx], ah
add byte [eax], al
or byte [eax], al
add byte [eax], al
cli
test eax, 0x27951002
add al, 0x10
dec esp
add byte [eax], al
add dl, bh
cli
and al, byte [edx]
adc byte [eax], ah
add byte [eax], al
add byte [eax], dl
add byte [eax], al
add eax, edi
add edx, dword [eax]
mov eax, dword [0x360fb04]
adc byte [ecx], dh
jae 0x1004dd2a
or al, 0x38
add byte [eax], al
add byte [ebp + 0x50100427], dl
add byte [eax], al
add byte [esi + 0x401004], al
add byte [eax], al
inc ebp
add byte [eax], al
add al, dl
wait
add dword [eax], edx
xchg dword [edx], ebp
add dl, byte [eax]
and edi, eax
add edx, dword [eax]
fisubr dword [ebx - 0x6e]
xchg edx, eax
lea eax, [eax]
shr cl, 0x40
mov cl, bl
call fcn.1003029b