Function at 0x4ea114
Capabilities:
Encode data using xor

Disassembly:
test al, 0xc2
lahf
mov byte ss:[edi - 0x7ac21549], ah
push ss
add dh, bl
mov esp, 0x4f46be0f
das
hlt
scasd eax, dword es:[edi]
inc ebp
adc edi, dword ds:[edi - 0x1b]
dec edi
jmp 0x4ea12c
cmpsd dword [esi], dword es:[edi]
aad 0xff
fisub dword [ebp - 0x231cc182]
jecxz 0x4ea0f9
aas
pop ecx
outsd dx, dword [esi]
and cl, byte [esi]
inc ebx
outsd dx, dword [esi]
add al, 0x6d
inc eax
or dword [ebx + 0x72], eax
xor ebx, dword [edx]
add ebp, ecx
xchg esp, eax
xadd ebp, edx
ja 0x4ea11b
aad 0x77
out 0xc9, eax
leave
fistp word [ecx - 0xd1f561b]
mov dword [0xdfeb9392], eax
xchg edx, eax
xchg ebx, eax
jmp 0x4ea11f
bnd jge 0x4ea0e5
insb byte es:[edi], dx
push edx
pop es
leave
inc ebp
pop edi
and ch, byte [esi]
cmp eax, 0x22d22d45
loope 0x4ea0d3
cmp bl, ah
inc edi
fist word [edx + 0x3a710d6d]
scasd eax, dword es:[edi]
scasd eax, dword es:[edi]
lodsd eax, dword [esi]
movsb byte es:[edi], byte [esi]
fsub qword [esi]
sub esp, dword [edx - 0x6e]
pop es
push es
push edx
mov bh, 0xfe
adc ah, bh
pop esp
sbb al, 0x12
popal
loop 0x4ea131
xchg edx, eax
ror dword [edx - 0x225d3176], 0x73
mov bh, 0xbd
mov cl, dh
into
mov byte [0xbdb773dd], al
pop ebx
mov al, 0x9d
sar ebx, 1
fcmovne st(0), st(6)
jae 0x4ea1cd
sub byte ds:[edx], dh
jle 0x4ea1bb
mov byte [ebx], bh
jbe 0x4ea1a0
add al, 0xe0
cmpsd dword [esi], dword es:[edi]
mov al, 0x82
dec edx
aad 0xa0
aas
mov edi, 0x81908fbf
push esi
cmpsd dword [esi], dword es:[edi]
jl 0x4ea209
push 0x4fb4d378
js 0x4ea176
mov ah, 0x4f
xchg ecx, eax
push esi
dec ebx
sub ebp, dword [esi + edi*4]
jg 0x4ea177
retf 0x64bf
mov edi, 0xeee30464
ror dword [eax - 0x6c8903be], 1
inc ebx
inc edx
in al, dx
jge 0x4ea1e5
aam 0xc5
sahf
jne 0x4ea230
aaa
mov ss, word [edx + 0x79]
or dl, byte [esi + 0x33]
fsub dword [edx + 0x28]
cmp esp, dword [esi]
ret 0xe20d
ret 0xe20d
jg 0x4ea22b
mov esi, 0xff31001
dec esi
insb byte es:[edi], dx
or al, 0xe
rol byte [edx + 0x50f0f03a], 0x22
iretd
loop 0x4ea20b
cmp eax, 0x34fe2cff
sbb byte [edx + 0x63], ch
push 0x63
pop ss
stosb byte es:[edi], al
or byte [edi - 2], bl
jle 0x4ea22b
pop edi
invalid
adc byte [esi], dh
not byte [ebx]
sbb eax, 0x3fe7fa23
jle 0x4ea200
insb byte es:[edi], dx
fnstsw word [ecx - 0x4d4073f9]
fstp dword [ebp + 0x64be2d85]
ja 0x4ea26a
jge 0x4ea1ac
adc bl, cl
pop ds
and ah, dl
ret
lds ebp, [ebx - 0x1c]
sahf
jecxz 0x4ea205
arpl word [edx], di
xchg esi, eax
jecxz 0x4ea293
sahf
and byte [ecx + 0x25cbd161], bl
inc eax
cmp dword [ebx + ebx + 0x68], eax
inc ebp
je 0x4ea1f8
pop ds
mov dword [eax], edx
insb byte es:[edi], dx
push eax
add dword [edi + 0x61ecf0aa], esi
wait
shl byte [ecx], 1
call 0x42e9e157
or eax, 0x751d8f5e
jo 0x4ea2c8
insb byte es:[edi], dx
retf 0x6bdc
and ecx, dword [ecx + 9]
xchg ecx, eax
sbb al, byte [edx + 7]
push ecx
or ch, byte [ebx - 0x1f19e2a5]
mov dword [0x9995b4af], eax
stosd dword es:[edi], eax
pop ebx
sbb eax, 0xafa3e0e6
mov ah, 0x95
cdq
sbb dword [ebx + 0x7b0dc9bb], esi
inc esi
dec eax
cmp eax, dword [edx + 0x10ffa1cf]
push es
dec edx
dec ebx
salc
pop es
add eax, 0x56d7f112
int1
xlatb
push esi
loop 0x4ea273
invalid
push 0xce52868a
sub al, 0x71
invalid
and esi, dword [eax]
and eax, 0xe1076d6e
out dx, al
and ebx, dword [edx]
popal
jl 0x4ea2fe
mov ah, 0x78
xlatb
sub byte [edx - 0x56], ch
wait
test dword [ebx], 0x7b6f6cc1
wait
ror byte [eax + 0x7f], 0xd6
int3
xchg ebp, eax
lea ebp, [ebp + 0x35]
dec ecx
das
jge 0x4ea32f
fsubr dword [ecx + 0x67]
xor eax, dword [edx + 0x36]
lds ebx, [esi]
test dword [ecx - 0x20], eax
rcr dword [esi + 0x79], 0xa3
lodsd eax, dword [esi]
xchg esp, eax
leave
xchg ebx, eax
pop edi
bound ebx, qword [ecx]
xchg edi, eax
push 0x4a7e9843
jae 0x4ea2b3
xlatb
push ecx
movsd dword es:[edi], dword [esi]
dec ecx
sub byte [0xaf962e79], dh
lodsb al, byte [esi]
jo 0x4ea34e
cdq
invalid
sbb dword [edx], ecx
mov byte [0xc2e092fa], al
insd dword es:[edi], dx
sal byte [edx], 1
dec ebp
sbb bh, bh
mov cs, word [esi + 0x31577a7e]
wait
sub eax, 0x69a43a2
inc byte [edi + 0x209b7ecf]
pop ecx
push ds
scasb al, byte es:[edi]
add dword [edx - 0x6e503523], esp
jg 0x4ea38d
scasb al, byte es:[edi]
sub al, 0xc0
mov dword [0x1396f28a], eax
test eax, 0xda7cde59
xchg dword [ebp - 0x1681ad9d], ebp
aas
fidivr word [edi + 0x3df35fff]
push ebx
invalid
jmp 0xe81d1