Function at 0x805d5c
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x805d62
pop ebp
sub ebp, 6
sub ebp, 0x405d5c
jmp 0x805dc0
dec esp
add byte [eax], al
add byte [ebp + 0x4e], al
dec ecx
inc edi
dec ebp
inc ecx
add ah, byte [ecx]
call 0x18805e88
add byte [eax], cl
add byte [ecx], ch
or byte [eax], al
sub dword [eax], eax
sbb al, 0
add byte [eax + eax], bl
dec edi
adc byte [si], bh
pop ss
sbb bl, ch
out dx, al
add eax, 0x8f5ce296
cmc
sub dword [eax - 0x38eff73b], 1
add byte [eax], al
add byte [edx + 0x6b], dh
sub ah, byte [edx + 0x200f4e81]
fist dword [ebp + 0x6a56d85a]
mov ebx, dword [esi + 0x486ebe51]
fisub word [edx]
mov ebp, 0x77e2a302
mov byte [esi - 0x10], bh
shl dword [edi - 0x17], 1
add al, 0
add byte [eax], al
lds edx, fs:[edx]
je 0x805d82
jmp 0x805dc9
adc dh, byte [eax + edi*4 + 0x5c]
mov eax, 0x405d5c
add eax, ebp
add eax, 0x93
mov ecx, 0x62c
pop esp
pop ebp
inc eax
add byte [ebx], al
lds eax, [ecx + 0x93c0]
add byte [ecx + 0x62c], bh
mov edx, 0xd18e92e2
loop 0x805d70
mov ss, ecx
xor byte [eax], dl
inc eax
dec ecx
jne 0x805de0
jmp 0x805df3
mov byte [edx - 0x1d0d1d76], ah
loop 0x805d85
mov ah, dl
loop 0x805ddc
mov ah, dl
into
loop 0x805e2b
into
loop 0x805e63
arpl word [edx], dx
aad 0x3e
jno 0x805df5
adc dl, ch
jno 0x805df5
invalid
arpl word [edx], dx
aad 0x3e
jno 0x805dfb
shl dword [edx], 1
mov dl, 0x1d
ja 0x805df3
and dh, byte [edx + 0x33e2771d]
loop 0x805e45
xor edx, esp
loop 0x805dc7
aam 0xe2
mov dl, 0x69
das
imul ebp, dword [ebx - 0x22], 0x63e2e2e2
imul ebp, dword [edi], 0xe2de6b69
loop 0x805dfe
loop 0x805dff
loop 0x805e81
arpl word [ebx], sp
sbb ah, dl
loop 0x805e05
and ebx, dword [edx]
loop 0x805e04
loop 0x805e05
loope 0x805e54
das
pop edx
in al, 0xe2
loop 0x805e0c
pop eax
retf 0xe2e2
arpl si, bp
loop 0x805e1a
loop 0x805e1b
daa
mov dl, 0x8a
dec edi
xlatb
jmp 0x805e23
vpsrad ymm4, ymm5, xmm3
loop 0x805e2a
into
invalid
or ah, bh
loop 0x805e34
loop 0x805e5f
retf 0xe2e2
loop 0x805e10
mov bh, 0xb6
mov edi, 0xe2ea6769
mov dh, 0xbf
imul esp, dword [edi - 0x16], 0x69e2e2e2
ja 0x805e52
loop 0x805e43
imul esi, dword [edi - 0x12], 0x69e2e2e2
out dx, al
loop 0x805e48
loop 0x805ed1
outsd dx, dword [esi]
loop 0x805e4e
loop 0x805e91
or esp, eax
shl eax, cl
popal
and dh, ah
stosd dword es:[edi], eax
in eax, dx
push ss
sbb eax, 0x20bf1d1d
out dx, al
loop 0x805eea
mov edi, 0x69e2ee20
imul ebp, dword [esi - 0x3a], 0xe2e2e2e6
mov cl, byte [edi - 0x29]
jmp 0x805e6e
outsb dx, byte [esi]
invalid
jecxz 0x805e61
invalid
loop 0x805e7c
or ebx, ebp
loopne 0x805e80
loop 0x805e57
imul ecx, dword [esi], 0x1dee971d
xchg edi, eax
ljmp 0x69e2
pop edi
ljmp 0xec13
adc ebp, esp
in al, dx
outsb dx, byte [esi]
add eax, 0xec1363a6
in al, dx
outsb dx, byte [esi]
add eax, 0xd12bd1a6
xor byte [ecx + 0xa], ah
out 0xaa, eax
sal dword [eax], 1
popal
or ah, bh
stosb byte es:[edi], al
in eax, dx
lodsb al, byte [esi]
loop 0x805eae
loop 0x805ebb
push 0xffffffffffffffaa
loop 0x805eb4
loop 0x805eb5
loop 0x805e58
test byte [ecx - 2], ch
invalid
imul edi, esi, 0xa1962db
in eax, dx
invalid
bound ebx, qword [ecx]
or ch, ch
clc
loop 0x805ec1
loop 0x805f43
sbb dword [ebx], ecx
in eax, dx
loop 0x805eca
loop 0x805e6e
arpl word [ecx], bx
sbb eax, 0xf766edc7
loop 0x805ed5
loop 0x805e98
or ebp, dword [esi]
sbb eax, 0xaecb1d1d
fninit
popal
and esp, edi
popal
or ah, dh
or ebx, dword [edi + 0x1d]
sbb eax, 0xdbb6cb1d
loopne 0x805f6f
and esp, esp
popal
or dh, ah
popal
or ah, bh
or ecx, dword [ecx + 0x1d]
sbb eax, 0xee20bf1d
dec ecx
sbb eax, 0x20bf1d1d
out dx, al
loop 0x805ed7
mov bh, 0x69
push cs
mov ah, 0xb5
imul ecx, dword [esi], 0x69b7b5b4
mov ch, 0xb7
mov bh, 0x69
imul edx, dword [edi - 0x15609612], 0x6862501e
in al, 0x63
and al, 0xe3
xchg edi, eax
out dx, al
imul ebx, dword [edi + 0x62501eea], 0x2463e468
jecxz 0x805f16
bound ebp, qword [eax - 0x1c]
arpl word [ebx], sp
loop 0x805f17
loop 0x805f18
loop 0x805fa1
push 0xffffffffffffffe5
arpl word [0xe2e2e2e3], sp
in eax, 0x63
and eax, 0xe2e2e2e3
loop 0x805f1f
loop 0x805f98
pop ecx
loopne 0x805f23
loop 0x805f24
loop 0x805f25
loop 0x805f24
loopne 0x805f75
xor ch, ch
in eax, dx
out 0xe2, eax
loop 0x805f2d
push 0x30f0a4f4
in eax, dx
popal
cmp bl, byte [0x30e01d1d]
in eax, dx
out 0xe2, eax
sbb eax, 0x67ed30e0
out 0xe2, eax
loop 0x805f40
push 0x30f0a4f4
in eax, dx
popal
mov dl, ah
loop 0x805f4b
loop 0x805f3b
shl dword [edx], 1
loopne 0x805f9d
and ah, al
xor ch, ch
in eax, dx
out 0xe2, eax
out 0xe2, eax
loop 0x805f55
push 0x30f0a4f4
in eax, dx
movsb byte es:[edi], byte [esi]
invalid
xor ch, ch
popal
enter 0xffffffffffffe2e3, 0xffffffffffffffe2
loopne 0x805fb0
in eax, dx
out 0xe2, eax
loop 0x805f68
loop 0x805fef
push 0x30f0a4f4
int1
and ah, al
xor ch, ch
out 0xe2, eax
loop 0x805f77
hlt
loop 0x805ffe
push 0x30f0a4f4
int1
and ah, al
hlt
invalid
xor ch, ch
out 0xe2, eax
loop 0x805f85
loop 0x805f86
loop 0x80600d
push 0x30f0a4f4
int1
and ah, al
xor ch, ch
hlt
out 0xe2, eax
loop 0x805f95
loop 0x805f94
loop 0x80601c
push 0x30f0a4f4
hlt
int1
and ch, ch
in eax, dx
in al, 0xe2
loop 0x805fa2
imul edi, dword [0xe1683ac9], 0x59a5e56a
leave
cmp ch, byte [eax - 0x1f]
push 0xffffffffffffffe5
movsd dword es:[edi], dword [esi]
pop ecx
loopne 0x805fae
loop 0x805fb0
or edx, dword [edx + 0x5a1d1d1d]
jecxz 0x805fb8
sbb eax, 0xe35a1d1d
loop 0x805fb9
sbb eax, 0xe2e35a1d
loop 0x805fba
loop 0x805fb9
loopne 0x80600a
xor ch, ch
in eax, dx
out 0xe2, eax
loop 0x805fc2
push 0x30f0a4f4
int1
and ah, al
hlt
movsb byte es:[edi], byte [esi]
invalid
xor ch, ch
in eax, dx
out 0xe2, eax
loop 0x805fd1
loop 0x805fd0
loop 0x806058
push 0x30f0a4f4
in eax, dx
pushal
hlt
cmp al, 0x1d
sbb eax, 0x5921c91d
jecxz 0x805fe1
loop 0x805fe2
loop 0x805fe3
loop 0x805fef
in eax, dx
salc
loop 0x805fe8
loop 0x805fe9
loop 0x806063
pop ebx
jecxz 0x805fec
loop 0x805fee
loopne 0x80603e
xor ch, ch
in eax, dx
out 0xe2, eax
loop 0x805ff6
push 0x30f0a4f4
int1
sub esp, eax
xor ch, ch
out 0xe2, eax
loop 0x806005
push 0x30f0a4f4
in eax, dx
pushal
cmp al, 0x1d
sbb eax, 0x1569b41d
leave
pop ss
sbb eax, 0x69b41d1d
adc eax, 0x461117c9
mov esp, 0x1d1dea0b
sbb eax, 0xea0223aa
adc dword [esi - 0x44], eax
or ebp, edx
sbb eax, 0x23aa1d1d
add ch, dl
ljmp 0x5b0a:0x69a4e468
push 0xa69a4e4
pop ebx
jecxz 0x806029
imul ecx, dword [edx], 0xe2e2e35b
loop 0x80602a
loop 0x80602b
loopne 0x80607b
xor ch, ch
in eax, dx
out 0xe2, eax
loop 0x806033
push 0x30f0a4f4
int1
sub esp, eax
xor ch, ch
movsb byte es:[edi], byte [esi]
invalid
loopne 0x80608a
in eax, dx
out 0xe2, eax
loop 0x806042
loop 0x8060c9
push 0x30f0a4f4
in eax, dx
pushal
cmp al, 0x1d
sbb eax, 0xe21a631d
lahf
hlt
movsb byte es:[edi], byte [esi]
invalid
arpl word [edx], bx
loop 0x80600e
loop 0x806053
loop 0x8060d5
arpl word [ebx], di
sbb eax, 0x631d1d1d
cmp ebx, dword [0x631d1d1d]
arpl word [edx], bx
loop 0x806062
sbb ah, dl
out 0xe2, eax
loop 0x8060e1
loop 0x80605f
arpl word [ebx], di
sbb eax, 0x631d1d1d
cmp ebx, dword [0x631d1d1d]
sbb ah, byte [edx - 0x1e]
loop 0x80606b
arpl word [ebx], si
loop 0x80606f
xor esp, edx
loop 0x806070
loop 0x806071
loop 0x8060f3
arpl word [edx], bx
invalid
sbb ah, byte [edx - 0x1e]
loop 0x806077
arpl word [ebx], si
loop 0x80607b
loop 0x80607d
mov ah, 0x69
adc eax, 0x461112c9
leave
adc dl, byte [ecx]
inc esi
mov esp, 0x1d1c790b
sbb eax, 0xd1a4e468
sub esp, dword [edx]
or ah, bl
in eax, dx
shr dword [ebx], 1
and cl, byte [edx]
jecxz 0x80609e
clc
loop 0x806097
loop 0x80611a
xor esp, eax
loop 0x80609d
loop 0x806126
or dh, byte [ecx + ebp*2 + 0x1112c915]
inc esi
mov esp, 0xe2e2e359
loop 0x8060d7
jecxz 0x8060ab
loop 0x8060ad
or edx, dword [ecx - 0x40e2e2e4]
leave
lahf
ljmp 0x769
xchg ecx, eax
sbb al, 0x1d
sbb eax, 0xea9fc9bf
imul esp, dword [0x769bcbd], 0xe2ea20bf
mov ebp, 0xe2e60bbc
and eax, 0x769bcbd
mov edi, 0xbde2ea20
mov esp, 0xe2e2e60b
loop 0x8060c5
mov esp, 0x20bf0769
ljmp 0xe2e6:0xbbcbde2
out 0xe2, al
loop 0x8060c7
fucompi st(5)
in eax, dx
mov ss, word [eax]
pop edx
mov esi, 0xe1e2a2bf
daa
arpl word [edx], sp
push ecx
loope 0x8060d7
loop 0x806152
out dx, al
loope 0x8060dc
loop 0x806154
int1
push ebx
invalid
or esp, esi
loop 0x8060f0
loop 0x8060d7
mov ch, 0x19
sub al, 0xa7
sbb dword [edi], ebp
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
ret 0x7a31
mov eax, dword [0x30f1f1f0]
sbb bl, dh
add ebx, dword [edx - 0x52]
jp 0x8061a5
movsd dword es:[edi], dword [esi]
invalid
int1
int1
invalid
cmpsd dword [esi], dword es:[edi]
cmpsb byte [esi], byte es:[edi]
jp 0x806111
loope 0x80614a
mov edi, ebp
and ebp, 3
push ebp
scasb al, byte es:[edi]
scasd eax, dword es:[edi]
jo 0x806196
fyl2x
int1
int1
mov edx, 0xe0e2818
push cs
cdq
int1
mov cl, 0xf1
int1
cdq
int1
cmp eax, 0xea7f1dd
cmc
and bh, al
int1
jbe 0x80618f
jbe 0x806188
jp 0x80610a
int 0x76
push es
jp 0x8061d6
dec ebp
invalid
invalid
mov cl, 0xf1
jbe 0x8061a5
jp 0x806127
int1
jbe 0x8061aa
jp 0x80615f
cmc
jo 0x8061af
int1
int1
int1
int1
invalid
mov bh, 0xf1
int1
int1
daa
daa
jo 0x8061e8
stc
int1
int1
int1
jo 0x8061d0
stc
int1
int1
int1
jo 0x8061c6
int1
int1
int1
int1
invalid
push cs
push cs
xchg edi, eax
jp 0x8061c1
xor byte [ecx], bl
std
jb 0x8061e1
invalid
int1
invalid
adc dword [esi], ecx
invalid
invalid