Function at 0x5afbd4
Capabilities:
Encode data using xor

Disassembly:
sbb al, 0xc9
push ss
test al, 0x43
cdq
xor ebp, esi
invalid
and ebx, edi
jno 0x5afb4f
fbstp tbyte [ecx - 0x26]
insb byte es:[edi], dx
sar dword ds:[ecx + 0x5d1125c9], 1
cmp dh, al
leave
cmp dword [edi - 0xa], edx
mov eax, 0x4e60f459
loop 0x5afbab
cli
sbb cl, byte [edi*2 - 0x38051721]
test eax, 0x392209fb
xchg esp, eax
and dword [esi + 0x6558b179], 0x7b
int3
mov dword [edi + 0x7d0ddb05], ebx
std
cld
adc eax, 0x5188810a
in eax, 0x64
cmc
mov ch, 0xd8
xor eax, ecx
pop edx
add eax, 0x2570f380
sub eax, 0x3d43f7f3
jne 0x5afc38
cwde
rcl dword [ebp + 0x6d]
mov dword [0x9833a8f4], eax
cwde
cwde
rol byte [ebp + ebx*2 - 0x47], 0xa5
sal edx, 0xdd
mov esp, 0xe3c781f6
cmpsd dword [esi], dword es:[edi]
xor edi, ecx
jp 0x5afbfc
jno 0x5afb72
loopne 0x5afb71
xchg ebp, eax
add byte [edx], cl
add eax, 0x52582c6
xchg edx, edi
and ecx, ebp
adc edx, dword [ebx - 0x2312b1c5]
movsb byte es:[edi], byte [esi]
lahf
cmc
sbb al, 0xf3
ljmp 0x6f90
fsub qword [edi + ebx*4 - 0x150ce30b]
mov ebx, 0x906c0188
outsd dx, dword [esi]
imul byte [ebp - 0x4a9ca744]
mov dl, 0xb7
xchg edi, eax
insd dword es:[edi], dx
pushfd
popfd
pushal
lds esi, [edx - 0x4ffc33df]
xchg ebp, eax
adc eax, 0xfe38bd7d
jns 0x5afc96
arpl sp, cx
leave
xor eax, 0xfd51ac58
sal dword [ecx], 1
sbb cl, al
xchg edx, eax
dec ebx
xchg esi, eax
fsubr st(1), st(0)
invalid
fdivr qword [0x4176d33f]
leave
xor dword [ebx + esi*8 + 0x5b], esi
mov cl, 0xb5
inc ecx
xor eax, 0x490da797
xor byte [ecx], bl
sub al, 0x69
adc edx, ebp
loop 0x5afc27
int1
push ebp
sbb esi, dword [ebx]
add al, 0x9b
lodsd eax, dword [esi]
mov cl, 0x81
fisttp word [ebp - 0x4e2bb90a]
mov ss, word [ecx + 0x15]
inc ecx
cdq
push ecx
mov ecx, 0x56ef1983
add byte [ecx + 0x1d], cl
mov ecx, 0x99c1e9b1
jne 0x5afbfc
adc dl, byte [ebx - 0x2a211a95]
mov cl, 0xa9
xchg ecx, eax
pop ecx
pop ds
cmp dword [ebp - 0x2c], 0x4d
or edx, esi
out 0xee, al
sti
push ebp
add dword [ebp + 0x41], eax
fabs
imul esi, ecx, 0x1b1dc1b9
int1
mov ecx, 0xf51b1dc1
sbb eax, 0x67a1f51b
mov ah, 0xca
rol ch, 1
push ecx
sbb ebp, ecx
mov esi, 0x74115ba
adc dword [ecx + 0x26], edi
cmc
mov eax, dword [0xd0cab467]
lds edx, [ecx + 0x19]
int 0xbe
mov edx, 0x11074115
jns 0x5afcd0
pop ecx
sti
cdq
add dword [esi], ebx
xchg edi, eax
jae 0x5afc98
pop ds
popal
dec ebp
outsd dx, dword [esi]
test edx, edx
cmc
mov eax, dword [0xb71fe66d]
add eax, dword [ecx + 0x39]
insd dword es:[edi], dx
test eax, 0x9a111561
ror dword [ebx], cl
sar ecx, 1
push ss
outsd dx, dword [esi]
xor byte ss:[edx - 0x6c], dl
xchg esp, eax
loope 0x5afc93
sbb ebp, 0x42
push 0x68802985
and bl, byte [edx - 0x4c]
xchg esi, eax
xor byte [ebx - 0x7f58d51f], 0xdc
lea edx, [edx + edi*8]
and dword [ecx + ebx], edx
test byte [edx - 0x3ae4db10], al
in eax, 0x8c
ffreep st(2)
push ebp
in al, 0xcb
in eax, dx
outsb dx, byte [esi]
test esp, esi
add ecx, edx
lea esp, [edx - 0x42]
xchg edx, ebx
mov ch, 0x98
xor byte [edx], bl
push esp
or ecx, dword [0x85053e5f]
stosd dword es:[edi], eax
mov byte [0xe06877d4], al
sub byte [ebx + 0x30df61d4], al
mov ebp, 0x51e58277
inc esi
and al, 0x7d
and dword [esp + 0x47], esi
jne 0x5afd4c
pop ss
mov eax, dword [0x927ed14d]
mov dh, 0xe3
test byte [ecx - 0x2c], dh
jb 0x5afd83
in al, 0xb9
xchg edi, eax
pop ds
mov cl, 0xe7
cmp byte [ebp + 0x2ff7d98d], bh
inc edi
push 0x2f
dec ebp
pop esp
enter 0x4e49, 0xffffffffffffffa7
inc ecx
or al, 0xa2
xor byte [ecx + 0x5ac0be51], bh
rcr ah, 0xa1
pop esp
jmp 0x98ab97e3
loope 0x5afd9b
push esp
int3
and al, 0x88
invalid