Function at 0x5b0e28
Capabilities:
Encode data using xor

Disassembly:
xchg ebp, eax
sub cl, byte [eax + 0x2205b858]
cmc
xchg esp, eax
cdq
dec esp
xchg ebp, eax
mov eax, 0xd855a488
div byte [ebp + 0x2043f999]
cmp byte [eax + 0x65], bl
int 0xed
or dword [ebp - 0x17ab1fd8], eax
or eax, dword [eax + edi*2]
or dword [eax + edi + 0x58], esp
mov dh, 0x55
fstp dword [eax]
leave
invalid
xor eax, 0x3c64d578
sbb dl, byte [ecx + 0x25]
fnstcw word [eax + 0x187620c9]
movsd dword es:[edi], dword [esi]
les ebx, [ecx + 0x69ad8e35]
sbb byte [ecx + 4], ch
cwde
jg 0x5b0e37
sub dl, ah
lahf
loop 0x5b0dc9
sub dword [edx + 0x55], ecx
dec ebp
add eax, 0x97444018
mov ecx, ss
xlatb
jno 0x5b0e76
jns 0x5b0e0c
jns 0x5b0e0c
fsubr st(7)
xchg edx, eax
movsd dword es:[edi], dword [esi]
invalid
push es
add bh, byte [ecx - 0x3c]
popal
les ebx, [eax + 0x38]
add eax, ebp
mov esi, 0x10746575
sub byte [ebp + 0x24], al
xor eax, 0xc944df58
and al, 0xc6
dec ebp
and byte [ebx + ebx*8 - 0x46570aac], dl
adc bh, byte [edi]
or esp, ecx
cmp byte [eax + ebp*8 - 0x4b], al
js 0x5b0f08
loope 0x5b0ed6
inc esp
call 0x8c08759
jno 0x5b0edf
or byte [ecx + 0x39], dh
dec ecx
xor al, 0xdd
push esp
out 0x28, al
xchg ecx, eax
cmp ah, al
imul esi, esp, 0xc8553594
imul edx, dword [ecx - 0x42490ad8], 0xd3f9e8f5
cmp ch, dh
inc ebp
je 0x5b0e9c
dec ecx
add dword [edi - 0x1cbb45c6], eax
or edi, 0xf9bd146c
test byte [esi - 0x75], bl
enter 0xffffffffffffd925, 0xffffffffffffffa4
adc byte gs:[ecx - 0x2c], cl
aam 0xe5
and eax, 0x79d2602c
or dword [ecx + 0x34], eax
cmp cl, dh
fldenv [ebp - 0x2b2bb6f0]
in eax, 0x25
sub al, 0x60
sar byte [ecx + 9], cl
inc ecx
xor al, 0x65
cmp cl, dh
pop ecx
cwde
or dword [ecx + esi*8 + 0x75], ebp
hlt
or byte [esp + 0xda5140d], bl
add eax, 0x55f15ec8
sbb ah, byte [eax + ebx*4 + 0x7dc4a462]
sbb byte [esp + ebx*2 + 0x15], dl
sub byte [ebp - 0x61], dh
lcall 0x4e2b, 0xab0886a4
mov eax, 0x8d8d5227
pop ss
xchg dword [esi - 0x6d], ebp
xchg ebp, eax
lea ebx, [eax - 0x5a]
xchg ebp, eax
cmp byte [edx], ch
or bh, byte [edx + 0xcf79f48]
sbb esi, dword [esi - 0x6a]
das
cmpsd dword [esi], dword es:[edi]
push ebp
xor dword [edx - 0x2e], ebx
and dword [eax + 0x2815f09e], esi
insd dword es:[edi], dx
xlatb
cwde
ror bl, 0xf0
xchg ebx, eax
loopne 0x5b0ee9
sahf
invalid
nop
nop
test dword [edx + 0x2ad3dac0], ebx
outsd dx, dword [esi]
or byte [eax + 0x3e], al
jo 0x5b0f96
inc ebp
jge 0x5b0fa3
mov byte [esi], ah
cld
or byte [eax - 0x23fb9b94], 0xfa
push edi
or al, 0xf3
mov al, byte [0xa53eff14]
enter 0xffffffffffff8d15, 0x1a
leave
je 0x5b0fbe
xor cl, byte [ecx]
sbb dword [ecx], edi
jb 0x5b0fb1
adc dword [ebx], edx
adc ch, byte [esp + ecx*2 + 0x79]
imul esp, dword fs:[edx - 0x57761009], 0x750897ea
and byte [0xc1c4bec8], 0xcc
jbe 0x5b0f5a
xchg edi, eax
or byte [ebp - 0x80], dh
and eax, 0xc1c4bec8
int3
jne 0x5b0fe9
inc ebp
xchg ecx, eax
jb 0x5b0f4a
loopne 0x5b1010
sub byte es:[edi - 0x2ef477cf], dl
invalid
inc ebx
sub ecx, 0x91206370
or cl, dl
fst dword [0x7ee57d08]
invalid
jge 0x5b0fa5
jle 0x5b1024
in eax, 0xc3
pop eax
enter 0xffffffffffffe84a, 0x3d
xchg ebp, eax
loopne 0x5b100c
mov al, 0x83
retf 0x3ab0
xchg esp, eax
scasb al, byte es:[edi]
out dx, eax
inc ecx
js 0x5b0fef
insd dword es:[edi], dx
ljmp 0xc7bb
push ds
mov cl, 0x7f
push 0x11
cdq
stc
sbb ch, cl
insd dword es:[edi], dx
adc dword [ecx + 0x6dcd18f9], ebx
xor al, 0xed
in eax, dx
mov dword [eax + 0x783af907], ecx
sub eax, 0xbe34d9a5
imul ecx, dword [eax - 0x5b], 0xa959decc
or dword [edx - 3], 0x9cc0a289
mov al, byte [0x453a89b5]
and al, 0x18
mov byte [ecx + 0x7dbab510], cl
cmp al, 0xa5
pop esp
xor dl, byte [ecx + edi*2 + 0x3c]
invalid