Function at 0x8e111c
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8e1122
pop ebp
sub ebp, 6
sub ebp, 0x4e111c
jmp 0x8e1180
jmp 0x8e1189
mov eax, 0x4e111c
add eax, ebp
add eax, 0x93
mov ecx, 0x637
mov edx, 0x6d91bbf8
xor byte [eax], dl
inc eax
dec ecx
jne 0x8e11a0
jmp 0x8e11b3
outsd dx, dword [esi]
mov ebp, 0xb892626e
nop
clc
call 0xf91f0ab4
xchg edx, eax
mov eax, 0xf8e8f890
clc
nop
clc
xor al, 0xd4
clc
jns 0x8e11c9
sbb byte [ebp + 0x8790757], bh
sbb byte [ebp + 0x38cb0757], bh
test al, 7
insd dword es:[edi], dx
les ebp, [ecx + 0x73a8f8bc]
xor eax, 0xf8c47173
clc
clc
jns 0x8e1218
push edi
pop es
retf
add al, bh
clc
clc
sti
xor eax, 0xf8f8fe40
clc
inc edx
sar al, 1
clc
clc
invalid
clc
sti
cmp eax, 0xce7490a8
int1
clc
nop
ja 0x8e1226
mov esp, 0xdcd4f9f8
nop
clc
clc
clc
clc
adc ch, bh
clc
clc
clc
adc edx, edx
clc
clc
clc
lodsd eax, dword [esi]
jne 0x8e11af
xchg esp, eax
fdiv st(0), st(0)
jae 0x8e129c
invalid
clc
clc
clc
jae 0x8e12a0
call 0x3a870b28
adc edx, edi
leave
cli
jnp 0x8e1270
cld
mov cl, 0xf7
jge 0x8e1247
pop es
pop es
pop es
movsd dword es:[edi], dword [esi]
cmp dh, ah
clc
jae 0x8e12b8
fdiv st(4), st(0)
clc
clc
clc
nop
je 0x8e121a
int1
clc
nop
ja 0x8e1273
and bh, byte [eax + edi*8 - 0x56232b07]
adc ch, bh
clc
clc
mov esp, 0xdcd4f9f8
test eax, 0xf8f8fd10
clc
adc dword [ebp - 0x52070706], esi
jne 0x8e11f8
fdiv st(0), st(0)
pop es
invalid
clc
jae 0x8e12b8
invalid
xor dword [ecx + 0xa], edi
and edi, edi
mov ebx, 0x210a7915
invalid
adc eax, 0xff210a79
mov ebx, 0x7b2acb15
adc ch, bh
mov al, 0xf7
jl 0x8e1250
clc
clc
clc
div dword [eax - 0x50]
mov al, 0xf8
clc
clc
clc
sahf
jae 0x8e128a
sar dword [eax + 3], 0x10
idiv dword [edx - 8]
clc
clc
js 0x8e12b5
adc edi, esi
jl 0x8e129f
jmp 0x9f870bb2
clc
clc
clc
sahf
jns 0x8e12bf
pop es
invalid
jl 0x8e12ae
clc
clc
clc
mov ecx, 0x7073411
pop es
sal dword [ecx + eax*8 - 0x2c68407], 1
jnp 0x8e12e3
cld
adc dword [ebp + 7], eax
pop es
pop es
shr dword [ecx + eax*8 - 0x1c68406], 1
jnp 0x8e12f4
cld
jnp 0x8e12f5
std
adc dword [ebx + 7], edx
pop es
pop es
movsd dword es:[edi], dword [esi]
cmp dh, ah
clc
lodsd eax, dword [esi]
jae 0x8e1306
scasb al, byte es:[edi]
scasd eax, dword es:[edi]
lodsd eax, dword [esi]
jae 0x8e1284
hlt
jo 0x8e1307
invalid
jns 0x8e1349
stc
clc
clc
clc
inc ebx
cli
clc
clc
clc
cli
sub dh, bh
jge 0x8e1315
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e130b
mov esi, 0x7bf72aea
and byte [edi], al
pop es
pop es
cli
sub dh, bh
jge 0x8e1328
ljmp 0x707:0x207bf72a
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e131e
mov esi, 0x7bf72aea
xchg edx, eax
clc
clc
clc
retf
ljmp 0xf8f9:0xd27bf72a
jnp 0x8e131d
stc
clc
clc
cli
sub dh, bh
jge 0x8e1350
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e1346
mov esi, 0x38eb2aea
cli
sub dh, bh
jge 0x8e135f
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e1355
mov esi, 0x38eb2aea
cli
sub dh, bh
jge 0x8e136e
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e1364
mov esi, 0x38eb2aea
cli
sub dh, bh
jge 0x8e137d
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e1373
mov esi, 0x38eb2aea
idiv dword [esi + edi*8 - 8]
clc
clc
jae 0x8e13b9
daa
shl dword [eax], cl
jb 0x8e1391
jo 0x8e1397
invalid
mov edi, 0xf8f8fa43
clc
adc dword [eax + 0x40070707], ecx
pop es
pop es
pop es
inc eax
stc
clc
clc
clc
cli
sub dh, bh
jge 0x8e13aa
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e13a0
mov esi, 0x38eb2aea
cli
sub dh, bh
jge 0x8e13b9
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e13af
mov esi, 0x7af72aea
pop es
pop es
pop es
sar dword [ebx], cl
inc ebx
stc
clc
clc
clc
idiv dword [ebp - 0x34]
clc
clc
clc
inc ecx
stc
clc
clc
clc
cli
sub dh, bh
jge 0x8e13de
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e13d4
mov esi, 0x31eb2aea
cli
sub dh, bh
jge 0x8e13ed
idiv dword [ebp - 3]
clc
clc
clc
jb 0x8e13e3
mov esi, 0x7af72aea
pop es
pop es
pop es
scasb al, byte es:[edi]
jae 0x8e1410
ror dword [0x11a65c0b], cl
invalid
invalid