Function at 0x5c1f4a
Capabilities:
Encode data using xor

Disassembly:
adc dword [ebp + 0x2e346332], esp
jbe 0x5c1f4d
pop ss
mov bh, 0xd9
xlatb
into
lgs eax, [ebp + 0x2d]
mov bh, 0xbe
mov bl, 0xc9
js 0x5c1f3c
sbb byte [ebp + 0xa], ah
cdq
sbb edi, dword [edx - 0x75514b72]
lodsd eax, dword [esi]
push esi
adc eax, 0xcc97d8a6
call 0x82431112
std
jp 0x5c1f62
and dword [ebp + 0x34c9c7f9], 0xf8e6b835
or eax, dword [ecx - 0x77a46c94]
ja 0x5c1f97
pop ebx
mov byte [edi + 0x57], dh
fisub word [ecx]
aam 0xd5
pop ss
call 0x8cb7439a
xor al, 0x32
jns 0x5c1fcd
jg 0x5c1efe
scasd eax, dword es:[edi]
inc edx
fnstsw word [ecx - 0x36]
daa
aam 0x86
clc
daa
mov ah, 0xce
mov al, 0xff
stosd dword es:[edi], eax
jne 0x5c1f9d
daa
movsd dword es:[edi], dword [esi]
repne lodsd eax, dword [esi]
lodsd eax, dword [esi]
and al, 0x5d
pop es
cmpsd dword [esi], dword es:[edi]
aad 0x16
dec ebx
add al, 0x2e
test dword [esi], edx
lds esi, [eax + 0x2d593809]
xchg ebp, eax
loope 0x5c1fdf
stc
inc edi
push es
lea ecx, [edi - 0x10]
mov bh, 0xa4
and byte [ecx - 6], dl
xchg edi, eax
salc
mov bl, 0x66
arpl word [0x9589b615], bx
int 0x3b
xor byte [edi], dh
clc
aad 0xc4
cmp ebp, 0xffffffad
test al, 0x73
jmp 0x5c1f79
jae 0x5c1f84
fisttp word [ebp + 0x28106d05]
adc byte [eax], ch
mov al, 4
adc edx, dword [ebx + 0x71]
jne 0x5c1f4d
dec esi
ja 0x5c1fde
nop
add al, 0x53
xor eax, 0xa7f6d732
inc esi
adc esi, ebp
jmp 0xb6051ae2
lcall 0x9987, 0xd9e52ae1
mov ah, byte [edi]
in eax, 0xb1
push ebp
loope 0x5c1ff9
in eax, 0xd9
xchg dword [ecx - 0x1ad8750d], ebx
mov cl, 0x55
xchg dword [eax - 0x69], ebp
mov edi, 0xcf8c2822
sub byte [edi + ecx*8 - 0x743c86f7], cl
xor edi, dword [edx + 0x48]
mov edi, cs
or dword [ecx - 0x3d], edi
mov esi, dword [ebx]
jp 0x5c2030
mov ebp, 0xa46b2471
outsb dx, byte [esi]
dec ecx
out 0x27, al
xchg edi, eax
cli
jns 0x5c2031
jne 0x5c205e
mov dword [0x286c9435], eax
loope 0x5c204c
xchg esp, eax
insb byte es:[edi], dx
sub cl, ah
dec esi
ror byte [eax], cl
cdq
salc
invalid
sbb bh, byte [edi + 0x39]
stosb byte es:[edi], al
leave
insb byte es:[edi], dx
int1
push esi
retf 0x1281
xlatb
push ss
fcmovnbe st(0), st(3)
xchg dword [edi], ecx
outsb dx, byte [esi]
xlatb
sbb eax, 0x9856d2a7
into
movsb byte es:[edi], byte [esi]
pop edi
loope 0x5c1fcc
inc ebx
mov edi, 0xda6b505e
xor byte [ecx + 0x7a], cl
xlatb
xor dword [eax], esp
mov al, 0xaf
test dword [esi + 0x6a], esp
add byte [ebp - 0x68069f4a], dl
pushal
stc
xchg edi, eax
or ch, byte [ecx + 0x7f]
xor byte [esi - 0x2f84864d], al
mov bl, 0x79
jnp 0x5c2032
inc ecx
int 0xbd
in al, 0x3b
jb 0x5c207c
je 0x5c207d
xor al, 0xcf
mov cl, 0x87
fisub dword [ebp + 0x297e67cb]
mov dword [0xa94500ce], eax
pop dword [edi + 0x447f198e]
xchg dword [esi + 0x69447f19], ecx
dec ecx
sbb al, 0x24
sbb byte [esi + 0x3995e023], dh
xchg edx, eax
xor edx, edi
sub al, 0x26
mov ds, word [ecx]
jg 0x5c20c5
imul ecx, dword [ecx + 0x1c], 0x23b61824
loopne 0x5c201f
cmp dword [edx + 0x262cd733], edx
or edx, ebx
xchg esi, eax
in al, 0xc6
sub ah, dl
pop es
cdq
mov dword [edx - 0x7a7f46b2], edi
movups xmm1, xmmword [edi - 0x2d]
push ebp
xor dl, byte [edi + 0xfa7d013]
pop edx
push ds
xchg edi, eax
adc edx, eax
cmpsd dword [esi], dword es:[edi]
cvtps2pd xmm3, qword [esi]
loopne 0x5c212d
cmc
ret
xlatb
in eax, 0x9c
adc eax, 0x4c41656d
cmpsb byte [esi], byte es:[edi]
aas
jle 0x5c20a5
xchg esp, eax
fidiv dword gs:[eax]
mov esp, eax
push esi
xor eax, 0xb42b4d89
mov bl, 0x21
cmp al, 0x81
pop ebp
aaa
push ss
popfd
jne 0x5c211f
inc eax
xor bh, al
les eax, [ebp + 0x4533443d]
and ebx, dword [ebx + 0x1f]
ljmp 0xd16f
movsd dword es:[edi], dword [esi]
and al, 0x53
invalid
invalid
jb 0x5c2128