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

Disassembly:
pop es
or al, 0x54
dec edi
jo 0x501506fb
outsb dx, byte [esi]
push eax
imul esp, dword [ebx + 0x74], 0x18657275
push es
jne 0x5015070f
sbb byte gs:[esi], al
adc eax, 0x1ba1b450
push eax
adc al, byte [eax]
or byte [ebp + 0x78], al
je 0x501506ee
arpl word [esi + ebp*2 + 0x73], si
lldt word [eax - 0x2a]
adc al, 0x50
fdivr qword [ecx]
adc eax, 0x50
add byte [ecx], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x44060003], al
imul esp, dword [ecx + 0x6c], 0x7c24676f
and al, 0x50
add byte fs:[eax], al
invalid
add byte [eax], 0
add byte [eax + 0x43070004], al
pop es
inc ebx
popal
jo 0x50150767
imul ebp, dword [edi + 0x6e], sym.imp.rtl120.bpl___xp_7Boolean
push 0
add bh, bh
mov ds, word fs:[esi]
push eax
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax + 1], al
add eax, 0x6e450700
add byte [eax], al
jmp dword [esi + ecx*4 + 0x1e]
add byte [edi], al
inc ebp
outsb dx, byte [esi]
popal
bound ebp, qword [ebp + 0x64]
js 0x5015069b
and al, 0x50
je 0x5015071e
add bh, bh
dec eax
add byte [eax], al
inc byte [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
push es
add byte [ebx], cl
dec eax
insb byte es:[edi], dx
jo 0x5015077b
outsd dx, dword [esi]
outsb dx, byte [esi]
je 0x501507a1
js 0x501507b2
and al, 0x7c
and al, 0x50
js 0x50150744
add bh, bh
dec esp
add byte [eax], al
inc byte [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x480b0007], al
insb byte es:[edi], dx
jo 0x501507a9
jns 0x501507d8
outsd dx, dword [esi]
jb 0x501507c8
je 0x501506e7
and al, 0x50
push eax
jo 0x5015076a
add bh, bh
cmp byte [edi + 0x1501e], cl
add byte [eax], al
add byte [eax], al
add byte [eax], al
or byte [eax], al
or byte [eax + 0x65], cl
insb byte es:[edi], dx
add byte [eax], cl
add byte [eax], cl
dec eax
insb byte es:[edi], dx
jo 0x501507d8
jns 0x501507f6
and al, 0x7c
and al, 0x50
jl 0x5015078d
add bh, bh
push eax
nop
push ds
push eax
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
or dword [eax], eax
add al, 0x48
imul ebp, dword [esi + 0x74], 0x501e5060
push eax
add byte [eax], 0
push dword [eax + 0x1501e90]
add byte [eax], al
add byte [eax], al
add byte [eax], al
cmp bh, 0xff
invalid
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 1], al
or al, byte [eax]
or cl, byte [ecx + 0x6d]
popal
dec ecx
outsb dx, byte [esi]
js 0x5015083c
and dword [eax + edx*2], 0xff000084
or al, 0x91
push ds
push eax
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax], al
or eax, dword [eax]
or byte [ebx + 0x68], dl
outsd dx, dword [esi]
jb 0x5015085f
inc ebx
jne 0x50150862
pushal
jl 0x5015080f
push eax
test al, 0x92
push ds
push eax
rcl byte [edx - 0x6cfbafe2]
push ds
push eax
add byte [eax], al
add byte [eax - 0x80000000], al
or al, 0
adc dl, byte [ebx + 0x65]
arpl word [edi + 0x6e], bp
popal
popal
jb 0x5015088b
push ebx
push 0x4374726f
jne 0x5015088e
jae 0x50150860
jl 0x50150842
push eax
xchg byte [eax], al
add bh, bh
jo 0x501507b6
push ds
push eax
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax + 1], al
or eax, 0x69560700
jae 0x501508a3
bound ebp, qword [ebp - 0x78]
jl 0x5015085e
mov byte gs:[esi + ebx + 0x50], bh
push eax
mov byte [eax], al
add bh, bh
mov byte [eax], al
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
push cs
add byte [esi], al
dec edi
add byte [eax], al
dec dword [eax + 0x1ff0000]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f06000e], al
outsb dx, byte [esi]
dec eax
imul ebp, dword [esi + 0x74], 0x5024816c
insb byte es:[edi], dx
and dword [eax + edx*2], 0xff000048
dec eax
add byte [eax], al
inc dword [ecx]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f08000f], al
and al, 0x50
dec eax
add byte [eax], al
dec dword [eax]
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
str word [eax]
dec edi
outsb dx, byte [esi]
push ebp
jo 0x501508e2
popal
je 0x501508e6
insb byte es:[edi], dx
and dword [eax + edx*2], 0xff0000a8
test al, 0
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
adc byte [eax], al
or byte [edi + 0x6e], cl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], 0
add byte [eax + 0x4f080010], al
outsb dx, byte [esi]
inc ecx
arpl word [ebx + 0x65], sp
jo 0x50150918
je 0x50150911
insb byte es:[edi], dx
and dword [eax + edx*2], 0xff0000b0
mov al, 0
add bh, bh
add dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax - 0x80000000], al
adc dword [eax], eax
or byte [edi + 0x6e], cl
inc ebx
popal
outsb dx, byte [esi]
arpl word [ebp + 0x6c], sp
nop
and byte [ecx], cl
adc eax, 0x50
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax + 0x501509], bl
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [eax], al
add byte [ecx + ecx + 0xcc5015], al
add byte [eax], al
in al, 0xa0
sbb edx, dword [eax - 0x20]
adc byte [edx], dl
push eax
call 0x80651b0d
adc dword [edx], edx
push eax
mov word [0x11405012], ds
add byte [eax], al
add byte [eax], al
add byte [eax], al
test byte [ecx], cl
adc eax, 0xcc50
add ah, ah
mov al, byte [0x10e0501b]
adc dl, byte [eax - 0x18]
adc byte [edx], dl
push eax
xor byte [ecx], dl
adc dl, byte [eax - 0x74]
sbb eax, 0x11405012
adc dl, byte [eax - 0x24]
sbb al, 0x12
push eax
push eax
adc dword [edx], edx
push eax
cmp byte [ecx], dl
adc dl, byte [eax - 0x50]
adc byte [edx], dl
push eax
adc dword [edx], edx
push eax
mov al, 0x10
adc dl, byte [eax - 0x48]
adc byte [edx], dl
push eax
mov al, byte [0x90501bd5]
nop
mov eax, 0xa0501210
aad 0x1b
push eax