Function at 0x5adc38
Capabilities:
Encode data using xor

Disassembly:
add dword [ecx - 0x76], edi
mov edi, 0xc7335c7f
out dx, eax
sub al, 0x7d
push esi
jge 0x5adc30
cmc
fnstcw word [edi]
cmp ebx, dword [esp]
dec eax
xor byte [ebp + 0x68], 0x87
stosd dword es:[edi], eax
dec esp
jmp 0x61ed5ed7
std
shr byte [esi + ebx*8 - 0x7a67f03e], cl
adc al, 0xc6
cwde
test dword [esi + eax*8], edx
test byte [ebx + 0xdff239b], 0x55
inc ebp
pop ecx
leave
or byte [edi - 0x75], cl
xchg ecx, eax
push 0xffffffffffffff86
jbe 0x5adcb4
jle 0x5adbce
call [eax]
cdq
or dword [eax + 0x1144136], edi
adc al, 1
dec esp
jae 0x5adbd8
xor dword [eax + 0x7f6d4f0b], esp
pop esp
xor ebp, esp
lcall 0x4be1, 0x2c154255
test dword [edx + 0x1d9ca81d], ebx
lahf
mov dh, 0xe3
push es
fimul dword [esi]
lea edx, [eax - 8]
dec ebx
xor edi, ebp
push ds
cmpsb byte [esi], byte es:[edi]
fiadd word [edi + 0x5e]
in eax, 0xf2
inc edi
insb byte es:[edi], dx
mov ch, 0xb8
mov dword [ebx + eax + 0x674daee5], ebp
adc byte [ecx - 0x5aba26c0], 5
sub al, 0xcd
and al, 0xf9
imul edi, dword [edx + edi*8 - 0x2de271ed], 0xffffffda
sbb eax, 0xdd3f857f
mov al, byte [0xc069228e]
out 0x22, eax
mov gs, word [esi + 0x46853922]
mov eax, dword [0x7b3aca0e]
sbb byte [edx - 0x28], 0x60
cmp ah, byte [esi + 3]
mov al, byte [0x43c85fed]
fsub dword [eax + 0x3a]
add sp, word [eax + 0x43c85fed]
dec ebx
insb byte es:[edi], dx
popal
cld
sub byte [ecx + esi*4], ch
jge 0x5adc4f
pop edx
xchg esi, eax
insd dword es:[edi], dx
movsb byte es:[edi], byte [esi]
adc esi, 0xecb87c50
int 0x65
push ss
in al, 0xb5
mov bl, 0xf1
pop ss
fstp qword [edi]
sub edx, ecx
imul esi, eax, 0xffffffbf
mov ebx, 0x7eea93b2
sar byte [0x7ac6a785], 1
and al, 0x83
push ebx
loop 0x5add41
retf 0x1060
jecxz 0x5add95
sti
sbb dh, byte gs:[eax + 0x22]
mov edx, 0x2fea979b
sahf
scasb al, byte es:[edi]
fist word [edi - 0x33]
push ecx
inc ebp
jb 0x5addba
js 0x5add71
mov dh, 0xe6
mov dh, 0xe6
add ch, bl
or eax, 0xa0484266
sbb ebp, esi
lodsd eax, dword [esi]
push es
lodsb al, byte [esi]
mov esp, gs
jb 0x5add69
out 0x4a, al
xchg edx, eax
jbe 0x5addad
pushal
mov ecx, 0x2bd46338
aas
iretd
in al, dx
jecxz 0x5add6c
invalid
invalid
imul dh
sub byte [ebp - 0xb58a769], 0x31
int1
mov bh, 0xd5
cmp byte [ebp + 0x608d0b2], bh
sbb ah, byte [eax + ebp]
mov al, byte ds:[0xa69b8d59]
inc edx
imul eax, dword [esi + 0x5b], 0x4ff155db
ror ebx, cl
cmp dword [ecx + 0x8642935], 0x24
jne 0x5add2c
retf
push eax
mov ecx, 0x181c4564
jecxz 0x5addab
movsb byte es:[edi], byte [esi]
invalid
cwde
int1
sal eax, cl
xchg esi, eax
movsd dword es:[edi], dword [esi]
sal dword [eax], 0x93
neg dword [ecx]
fmul dword [esi]
mov byte [edi + 0x444d3360], 0xf7
pushfd
pop esp
js 0x5addd0
xchg dword [eax + 0x33], esp
dec ebp
inc esp
neg dword [esp + ebx*2 + 0x8340c78]
xor al, 8
leave
int1
retf
js 0x5ade11
inc eax
aaa
loope 0x5addcf
xor byte [edx + 0x4d], dl
pop ebx
mov ebx, 0x33b8e651
inc ebx
imul ecx, dword [esi - 0x4db43433], 0x716a9e8a
mov bh, 0x76
pop ebp
jae 0x5ade52
insd dword es:[edi], dx
adc dword [edi - 0x64327cb5], esi
cld
mov cl, 0x8a
sbb al, 0x34
mov al, byte [0xddef4d57]
pop edx
int1
cmp byte [ebx + 0x40], dl
xor eax, 0x73969827
inc edi
xor eax, edi
invalid
rcr dh, 1
test al, 5
push esp
xchg byte [ebx], bl
ror dword [ebp + 0xd], 1
cmp ah, bl
mov bl, 0x5b
fbstp tbyte [esp + ebp*8 + 0x6010ac79]
mov ebx, 0x757f6be5
dec edx
jg 0x5ade11
cmpsb byte [esi], byte es:[edi]
pop edx
in eax, dx
into
nop
out 0x90, eax
cld
jge 0x5ade6e
into
pop esi
outsb dx, byte [esi]
out 0x13, eax
lahf
jle 0x5ade1f
ja 0x5ade03
and al, bl
sub bl, byte [esi + 0x1c]
xor byte [ebx - 0x35], 0x65
jmp dword [ebx]
inc esi
test dword [esi - 0x6c3f85a0], 0xc87965d1
xchg esi, eax
ljmp 0x976c
sub al, 0x2d
clc
invalid