Function at 0x488793
Capabilities:
Encode data using xor

Disassembly:
adc dword [ebx - 0x646eddc4], edi
push esi
push edi
and dh, byte [esi]
or esp, dword [ebp + eax*8 + 0x664326a3]
sbb al, 0x53
sub byte [ebx + 0x47cf5483], bl
out dx, eax
int3
inc eax
in eax, 0x70
mov ah, 0x28
push es
xor esi, dword [edi]
or esi, dword [ebx]
cmpsd dword [esi], dword es:[edi]
or al, byte [ecx + 0x1f]
mov ebx, 0xa4a27730
cmpsb byte [esi], byte es:[edi]
xor ah, 0x56
shl dword [eax + edi - 0x66fd017a], cl
push ecx
mov fs, ebx
or eax, dword [edi]
inc edi
fidiv dword [esi + 0x275ea656]
add esp, 0x8f73a657
jae 0x48860e
jae 0x488698
test eax, 0x6161c304
out 0x7b, eax
xor eax, 0x7ffbe82e
scasd eax, dword es:[edi]
dec byte [edi + 0x20]
test dword [eax], ebp
sbb dword [ebp - 0xcf8f7a5], ecx
and al, 0x7b
and al, 0x7b
xchg edx, eax
add byte [edx + edi*4 - 0x20], dl
int 0x94
fisub dword [ebp + 0x78]
push cs
pop esp
neg ecx
mov cl, 0xa1
int 0xf3
aad 0x5d
inc ebp
rep movsd dword es:[edi], dword [esi]
cmp bl, byte [edx]
dec ecx
mov esi, 0x37f53f22
ja 0x48864d
add esi, dword [ebp - 0x7b]
stc
rol dword [bx + si], 0xad
stosb byte es:[edi], al
lodsd eax, dword [esi]
ja 0x4886cc
cmpsb byte [esi], byte es:[edi]
inc esi
mov eax, dword [0xdf68d107]
pop es
shr dword [eax - 0x21], 1
push 0x1733c6df
mov edx, 0x7e66133b
jnp 0x48867d
invalid
mov dword [0x279151df], eax
unpckhps xmm1, xmm6
sub ch, byte [ecx + 0x539a893a]
aas
sub dl, al
cmc
jae 0x488679
mov dword [ebx - 0x41], 0xf4ac04db
add esp, dword [ebx]
and dword [ebp + ebx*2 + 0x6b46fa4e], ebp
salc
xchg byte [ecx - 0x68214374], dh
xor esi, dword [ebx - 0x5988bef0]
dec esi
cli
inc esi
imul edx, esi, 0xffffff86
mov cl, 0x8c
mov esp, 0xb33397de
adc byte [ecx + 0x77], al
cmpsb byte [esi], byte es:[edi]
cli
retf 0xb121
xor eax, 0xb8f33140
jno 0x4886ce
push es
mov dword [0x2bd771e], eax
ja 0x4886fb
push edi
mov word [edx], es
mov ebp, 0x28a6e320
out 0x1b, al
pop ss
pmulhuw mm6, qword [ecx + 0x53cbaf24]
push ebx
add ebx, dword [edx]
dec esp
cwde
cmc
aad 1
aaa
fiadd word [0xfe715f89]
in eax, dx
int 0x71
aam 0x98
out 0xc5, eax
in al, 0x93
mov cl, 0xe1
out dx, eax
sbb cl, ah
invalid
and bl, dh
mov bl, 0xc7
adc al, 0x93
std
add ebx, esp
add al, 0xf7
je 0x48872e
mov bl, 0xa0
inc ecx
jl 0x48874e
push ss
lodsb al, byte [esi]
stc
cmp cl, dh
sbb edx, dword [esi + 0x8e04660]
loopne 0x4887b8
wait
invalid
lodsb al, byte [esi]
add cl, cl
je 0x488834
push ebx
xchg bl, al
mov dword [0xf3d3a7b7], eax
or dword [edi + 0x30bf483], ebx
div dword [eax + ecx*8 - 3]
pop eax
out dx, al
sub cl, dh
test byte [edx + 0x7816c811], ah
imul byte [ebx + esi + 0x4b]
loop 0x488837
bound esi, qword [esi]
xor ebx, dword [ebx + 0x23]
cmc
adc esi, dword [esi]
and ebx, 0xfffffff3
int 0xf7
in al, 0xa2
or edx, ebx
cmp eax, 0x57e66f70
sub ebp, dword [eax + ecx - 0x4b699dc2]
insd dword es:[edi], dx
loop 0x4887a8
mov edx, 0x38cf2b07
shr byte [esi], 1
fnstcw word [0xd0290386]
das
sar dword [edx + 0x7229bf50], cl
add ebx, esp
adc esp, edx
mov bl, 0x9d
pop edx
dec ecx
invalid
xor ebp, dword [ebx + 0x292922e5]
or esp, ebp
adc byte [eax + 0x47], cl
and ch, byte [ecx]
sub dword [ebx], ecx
in eax, 0x10
dec eax
inc edi
imul esp, dword [ebx + 0x798d32ec], 0x1553dd9c
pushal
add bl, 0xd2
out dx, eax
invalid